:root{--bg:#e9ebef;--panel:#fff;--ink:#1d232b;--muted:#6b7380;--line:#d9dde3;--accent:#1f6feb;--accent-soft:#e6efff;--danger:#c62828;--bar:#1b2129;--bar-ink:#e7ebf0;--toolbar-w:64px;--side-w:300px;--title-h:40px;--ribbon-h:74px;--top-h:calc(var(--title-h) + var(--ribbon-h));--status-h:26px;--tabs-h:0px;color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:13px}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;margin:0;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer}input,select,textarea{font:inherit;color:inherit}[hidden]{display:none!important}.topbar{height:var(--top-h);z-index:20;flex-direction:column;display:flex;position:fixed;inset:0 0 auto}.titlebar{height:var(--title-h);background:var(--bar);color:var(--bar-ink);flex:none;align-items:center;gap:6px;padding:0 10px;display:flex}.brand{letter-spacing:.2px;white-space:nowrap;margin-right:8px;font-weight:650}.brand .logo{color:#ff6b5f}.titlebar .group{align-items:center;display:flex;position:relative}.titlebar button{white-space:nowrap;color:var(--bar-ink);background:0 0;border:1px solid #0000;border-radius:6px;padding:5px 9px}.titlebar button:hover:not(:disabled){background:#2b3440}.titlebar button:disabled{opacity:.35;cursor:default}.titlebar button.primary{background:var(--accent);color:#fff}.titlebar button.primary:hover{background:#1a5fcc}.rtabs{scrollbar-width:none;flex:0 auto;align-self:stretch;align-items:flex-end;gap:2px;min-width:0;display:flex;overflow-x:auto}.rtabs::-webkit-scrollbar{display:none}.titlebar .rtabs button{color:#b9c2cd;border:0;border-radius:7px 7px 0 0;padding:8px 13px 9px;font-weight:550}.titlebar .rtabs button.active{background:var(--panel);color:var(--ink)}.tb-right{flex:none;align-items:center;gap:4px;margin-left:auto;display:flex}.ribbon{height:var(--ribbon-h);background:var(--panel);border-bottom:1px solid var(--line);scrollbar-width:thin;flex:none;overflow:auto hidden}.rpanel{width:max-content;height:100%;padding:0 4px;display:flex}.rgroup{border-right:1px solid var(--line);flex-direction:column;flex:none;padding:4px 6px 3px;display:flex}.rbody{flex:1;align-items:center;gap:2px;display:flex}.rbody>span[data-tools]{display:contents}.rtitle{color:var(--muted);text-align:center;white-space:nowrap;font-size:10px}.ribbon button{color:#3a424d;background:0 0;border:0;border-radius:7px}.ribbon :is(.rbtn,[data-tool]){flex-direction:column;align-items:center;gap:1px;min-width:52px;padding:4px 5px 2px;display:flex}.ribbon :is(.rbtn,[data-tool]) span{white-space:nowrap;color:var(--muted);font-size:10.5px}.ribbon button:hover:not(:disabled){background:#f1f3f6}.ribbon button:disabled{opacity:.4;cursor:default}.ribbon :is([data-tool].active,button[aria-pressed=true],.viewmode button.active){background:var(--accent-soft);color:var(--accent)}.ribbon :is([data-tool].active,button[aria-pressed=true]) span{color:var(--accent)}.ribbon .rsm{padding:6px 9px;font-size:16px;line-height:1}.zoom span{text-align:center;font-variant-numeric:tabular-nums;min-width:46px}.ribbon :is(.pagenav input,.scale select,.rfield select){background:var(--panel);border:1px solid var(--line);border-radius:6px;padding:4px 6px}.pagenav input{text-align:center;width:72px}.scale,.rfield{white-space:nowrap;color:var(--muted);align-items:center;gap:6px;padding:0 4px;display:flex}.qmenu{z-index:60;background:var(--panel);min-width:200px;color:var(--ink);border:1px solid var(--line);border-radius:8px;flex-direction:column;padding:5px;display:flex;position:fixed;box-shadow:0 8px 28px #0000002e}.qmenu button{text-align:left;background:0 0;border:0;border-radius:5px;padding:6px 9px}.qmenu button:hover{background:var(--accent-soft)}.qmenu .menu-quiet{color:var(--muted);font-size:12px}.toolbar .qicon{display:flex}.toolbar [data-chest]>span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:54px;overflow:hidden}.menu{top:calc(var(--title-h) - 2px);background:var(--panel);min-width:230px;color:var(--ink);border:1px solid var(--line);z-index:40;border-radius:8px;flex-direction:column;padding:6px;display:flex;position:fixed;right:8px;box-shadow:0 8px 28px #0000002e}.menu button{text-align:left;color:var(--ink)!important}.menu button:hover{background:var(--accent-soft)!important}.menu-recent{border-top:1px solid var(--line);flex-direction:column;margin-top:4px;padding-top:4px;display:flex}.menu-recent button{text-overflow:ellipsis;white-space:nowrap;max-width:320px;overflow:hidden}.menu-head{color:var(--muted,#6b7280);text-transform:uppercase;letter-spacing:.04em;padding:4px 9px 2px;font-size:11px}.menu .menu-quiet{font-size:12px;color:var(--muted,#6b7280)!important}.menu-field{border-top:1px solid var(--line);align-items:center;gap:8px;margin-top:4px;padding:6px 9px;display:flex}.menu-field input{border:1px solid var(--line);border-radius:6px;flex:1;padding:4px 6px}.toolbar{top:var(--top-h);bottom:var(--status-h);width:var(--toolbar-w);background:var(--panel);border-right:1px solid var(--line);z-index:10;scrollbar-width:thin;padding:6px 0;position:fixed;left:0;overflow-y:auto}.tgroup{border-bottom:1px solid var(--line);flex-direction:column;align-items:center;gap:2px;padding:4px 0;display:flex}.tgroup:last-child{border-bottom:0}.toolbar button{color:#3a424d;background:0 0;border:0;border-radius:8px;flex-direction:column;align-items:center;gap:1px;width:54px;padding:5px 0 3px;display:flex}.toolbar button span{color:var(--muted);font-size:9.5px}.toolbar button:hover{background:#f1f3f6}.toolbar :is(button.active,button[aria-pressed=true]){background:var(--accent-soft);color:var(--accent)}.toolbar :is(button.active,button[aria-pressed=true]) span{color:var(--accent)}body.has-tabs{--tabs-h:32px}.doctabs{top:var(--top-h);height:var(--tabs-h);left:var(--toolbar-w);z-index:11;background:var(--bg);border-bottom:1px solid var(--line);scrollbar-width:thin;align-items:flex-end;gap:2px;padding:0 6px;display:flex;position:fixed;right:0;overflow:auto hidden}body.side-open .doctabs{right:var(--side-w)}body.left-open .doctabs{left:calc(var(--toolbar-w) + var(--left-w))}.doctab{border:1px solid var(--line);max-width:240px;height:27px;color:var(--muted);cursor:pointer;-webkit-user-select:none;user-select:none;background:#f4f5f7;border-bottom:0;border-radius:6px 6px 0 0;flex:none;align-items:center;gap:4px;padding:0 3px 0 10px;display:flex}.doctab:hover{color:var(--ink)}.doctab{position:relative}.doctab.dragging{opacity:.55}.doctab.drop-before:before,.doctab.drop-after:after{content:"";background:var(--accent);border-radius:2px;width:3px;position:absolute;top:3px;bottom:3px}.doctab.drop-before:before{left:-3px}.doctab.drop-after:after{right:-3px}.doctab.active{background:var(--panel);height:29px;color:var(--ink);box-shadow:inset 0 2px 0 var(--accent);margin-bottom:-1px}.doctab .name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.doctab .dot{color:var(--accent);font-size:10px}.doctab .x{width:20px;height:20px;color:var(--muted);background:0 0;border:0;border-radius:4px;padding:0;font-size:15px;line-height:1}.doctab .x:hover{background:var(--line);color:var(--ink)}.viewport{top:calc(var(--top-h) + var(--tabs-h));bottom:var(--status-h);left:var(--toolbar-w);touch-action:none;overscroll-behavior:contain;-webkit-user-select:none;user-select:none;position:fixed;right:0;overflow:auto}body.side-open .viewport{right:var(--side-w)}.pages{flex-direction:column;align-items:center;gap:18px;min-width:min-content;padding:24px;display:flex}.page{background:#fff;flex:none;position:relative;box-shadow:0 1px 3px #0000002e,0 6px 24px #00000014}.page canvas{pointer-events:none;position:absolute;top:0;left:0}.page canvas.base{width:100%;height:100%}.page canvas.detail{display:none}.page svg.overlay{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.viewport[data-tool=select] .page{cursor:default}.viewport[data-tool=pan],.viewport.panning,.viewport.panning .page{cursor:grab}.viewport.panning{cursor:grabbing}.viewport:not([data-tool=select]):not([data-tool=pan]):not([data-tool=textselect]) .page{cursor:crosshair}.viewport[data-tool=textselect] .page{cursor:text}.viewport.over-link .page{cursor:pointer}.overlay .text-sel{fill:#1f6feb47;pointer-events:none}.overlay .search-hit{fill:#ffc40073;pointer-events:none;mix-blend-mode:multiply}.overlay .search-hit.current{fill:#ff6e0099}.textbar,.searchbar{z-index:40;background:var(--panel);border:1px solid var(--line);border-radius:8px;align-items:center;gap:2px;padding:3px;display:flex;position:fixed;box-shadow:0 6px 18px #0000002e}.textbar button,.searchbar button{background:0 0;border:0;border-radius:6px;padding:5px 9px}.textbar button:hover,.searchbar button:hover{background:var(--accent-soft)}.searchbar{top:calc(var(--top-h) + var(--tabs-h) + 8px);right:calc(var(--side-w) + 16px)}.searchbar input{border:1px solid var(--line);border-radius:6px;width:200px;padding:5px 8px}#search-count{color:var(--muted);text-align:center;min-width:64px;font-size:12px}.peek{z-index:45;background:var(--panel);border:1px solid var(--line);resize:both;border-radius:10px;flex-direction:column;width:min(680px,92vw);min-width:280px;height:min(56vh,520px);min-height:180px;display:flex;position:fixed;overflow:hidden;box-shadow:0 14px 40px #00000047}.peek-head{border-bottom:1px solid var(--line);cursor:move;-webkit-user-select:none;user-select:none;touch-action:none;align-items:center;gap:4px;padding:4px 6px;display:flex}.peek-head button{cursor:pointer}.peek-links{z-index:58;pointer-events:none;width:100vw;height:100vh;position:fixed;inset:0;overflow:visible}.peek-links line{stroke:var(--accent);stroke-width:2px}.peek-links circle,.peek-links polygon{fill:var(--accent)}.peek-head button{background:0 0;border:0;border-radius:6px;padding:4px 9px}.peek-head button:hover{background:var(--accent-soft)}.peek-title{padding:0 4px;font-weight:600}.peek-spacer{flex:1}.peek-body{background:var(--bg);flex-direction:column;flex:1;gap:8px;display:flex;overflow:auto}.peek-sheet{background:#fff;flex:none;position:relative;box-shadow:0 1px 3px #00000026}.peek-range{color:var(--muted);font-size:12px}.peek-sheet canvas{width:100%;height:100%;display:block}.peek-sheet svg.overlay{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.peek-body.over-link{cursor:pointer}.peek-mark{background:var(--accent);opacity:0;pointer-events:none;height:3px;position:absolute;left:0;right:0}.peek-mark.flash{animation:1.6s ease-out peek-flash}@keyframes peek-flash{0%{opacity:.9}to{opacity:0}}.pdf-text-editor{z-index:30;border:2px solid var(--accent);color:#000;background:#fff;border-radius:4px;outline:none;padding:2px 4px;font-family:Helvetica,Arial,sans-serif;position:fixed;box-shadow:0 4px 14px #0000002e}.pdf-text-target{z-index:29;border:2px dashed var(--accent);pointer-events:none;background:#2563eb14;border-radius:2px;position:fixed}.dialog .wide{border:1px solid var(--line);width:100%;font:inherit;border-radius:6px;margin:4px 0 10px;padding:6px 8px}.dialog .table-grid{gap:2px;max-width:min(80vw,900px);max-height:50vh;margin-top:6px;display:grid;overflow:auto}.dialog .table-grid input{border:1px solid var(--line);width:100%;min-width:0;font:inherit;text-align:left;border-radius:3px;padding:3px 5px}.dialog .table-grid input.hdr{background:var(--accent-soft);font-weight:600}.empty{text-align:center;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;inset:0}.empty h2{color:var(--ink);font-weight:600}.link{color:var(--accent);background:0 0;border:0;padding:0;text-decoration:underline}.muted{color:var(--muted);font-size:12px}.markup .hit{fill:#0000;stroke:#0000;pointer-events:none}.markup *{pointer-events:none}.viewport[data-tool=select] .markup .hit{pointer-events:all;cursor:move}.viewport[data-tool=select] .markup polyline.hit{pointer-events:stroke}.markup.selected{filter:drop-shadow(0 0 1.5px #1f6febe6)}.selbox{fill:none;stroke:var(--accent);pointer-events:none}.marquee{fill:#1f6feb14;stroke:var(--accent);pointer-events:none}.marquee.crossing{fill:#12a15014;stroke:#12a150}.handle{fill:#fff;stroke:var(--accent);cursor:pointer}.preview{opacity:.75;pointer-events:none}.mtext{white-space:pre-wrap;word-break:break-word;box-sizing:border-box;width:100%;height:100%;padding:2px 3px;font-family:Helvetica,Arial,sans-serif;line-height:1.15;overflow:hidden}.side{top:var(--top-h);bottom:var(--status-h);width:var(--side-w);background:var(--panel);border-left:1px solid var(--line);z-index:15;flex-direction:column;display:none;position:fixed;right:0}body.side-open .side{display:flex}.tabs{border-bottom:1px solid var(--line);display:flex}.tabs button{white-space:nowrap;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;flex:auto;padding:10px 6px;font-size:13px;font-weight:550}.tabs button.active{color:var(--ink);border-bottom-color:var(--accent)}#count-badge{background:#eef0f3;border-radius:10px;margin-left:2px;padding:1px 6px;font-size:11px}.tab{flex-direction:column;flex:1;gap:10px;padding:12px 14px;display:flex;overflow-y:auto}.props-title{border-bottom:1px solid var(--line);padding-bottom:4px;font-weight:600}.tab label{color:var(--muted);grid-template-columns:88px 1fr auto;align-items:center;gap:8px;display:grid}.tab label output{text-align:right;min-width:38px;color:var(--ink);font-size:11px}.tab input[type=color]{border:1px solid var(--line);background:#fff;border-radius:6px;width:44px;height:26px;padding:1px}.tab input[type=number],.tab input:not([type]),.tab textarea{border:1px solid var(--line);border-radius:6px;width:100%;padding:5px 7px}.tab textarea{resize:vertical;grid-column:2/4}.tab .row{align-items:center;gap:8px;display:flex}#props-markup{border-top:1px solid var(--line);flex-direction:column;gap:10px;padding-top:10px;display:flex}.meta{color:var(--muted);font-size:12px}.meta b{color:var(--ink);font-size:14px}.danger{color:var(--danger);background:#fff;border:1px solid #f1c4c4;border-radius:6px;padding:6px}.danger:hover{background:#fdf0f0}.secondary{border:1px solid var(--line);background:#fff;border-radius:6px;flex:1;padding:6px}.secondary:hover:not(:disabled){background:#f4f6f9}.secondary:disabled{opacity:.45;cursor:default}#list-filter{border:1px solid var(--line);border-radius:6px;padding:6px 8px}.list{flex-direction:column;gap:2px;display:flex}.list .item{text-align:left;background:0 0;border:1px solid #0000;border-radius:6px;align-items:flex-start;gap:8px;padding:6px;display:flex}.list .item:hover{background:#f5f6f8}.list .item.sel{background:var(--accent-soft);border-color:#c9dbff}.list .swatch{flex:none;margin-top:1px}.list .body{flex-direction:column;min-width:0;display:flex}.list .t{font-weight:550}.list .t b{color:var(--accent);margin-left:4px;font-weight:600}.list .s{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.list .c{white-space:pre-wrap;overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:2px;font-size:12px;display:-webkit-box;overflow:hidden}.list .c.q{color:var(--muted);font-style:italic}.replies{flex-direction:column;gap:6px;display:flex}.replies-head{font-size:12.5px;font-weight:600}#reply-count{color:var(--muted);font-weight:400}.reply{border-left:3px solid var(--line);padding:2px 0 2px 8px;font-size:12.5px}.reply .by{color:var(--muted);align-items:center;gap:6px;font-size:11.5px;display:flex}.reply .by button{color:var(--muted);background:0 0;border:0;border-radius:4px;margin-left:auto;padding:0 4px}.reply .by button:hover{background:var(--accent-soft);color:var(--danger)}.reply .txt{white-space:pre-wrap;overflow-wrap:anywhere}.replies textarea{border:1px solid var(--line);resize:vertical;font:inherit;border-radius:6px;padding:5px 7px}.chest .item,#chest-list .item{align-items:center}#chest-list .item.active{background:var(--accent-soft);border-color:#c9dbff}#chest-list .item .del,.layer .del{color:var(--muted);background:0 0;border:0;border-radius:4px;margin-left:auto;padding:2px 6px}#chest-list .item .del:hover,.layer .del:hover{color:var(--danger);background:#fdf0f0}.layers{flex-direction:column;gap:2px;display:flex}.layer{border:1px solid #0000;border-radius:6px;align-items:center;gap:4px;padding:4px;display:flex}.layer.current{background:var(--accent-soft);border-color:#c9dbff}.layer .name{text-overflow:ellipsis;white-space:nowrap;text-align:left;min-width:0;color:var(--ink);background:0 0;border:0;flex:1;padding:3px 4px;overflow:hidden}.layer .n{color:var(--muted);font-size:11.5px}.layer .tog{border:1px solid var(--line);width:26px;height:24px;color:var(--ink);background:0 0;border-radius:5px;padding:0}.layer .tog[aria-pressed=false]{opacity:.35}.layer .tog:disabled{visibility:hidden}#layer-name{flex:1}#p-layer{grid-column:2/4;width:100%;min-width:0}#btn-chest-add{flex:none}.list .s .lyr{color:var(--accent)}.status{height:var(--status-h);background:var(--panel);border-top:1px solid var(--line);color:var(--muted);z-index:20;white-space:nowrap;align-items:center;gap:10px;padding:0 10px;font-size:11.5px;display:flex;position:fixed;bottom:0;left:0;right:0;overflow:hidden}#status-hint{text-overflow:ellipsis;overflow:hidden}.status .spacer{flex:1}#status-coords{font-variant-numeric:tabular-nums}.snap-toggle{font:inherit;border:1px solid var(--line);color:var(--muted);cursor:pointer;background:0 0;border-radius:10px;padding:1px 8px;font-size:11px}.snap-toggle[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.snap-mark{fill:none;stroke:#f59e0b;pointer-events:none}.text-editor{z-index:50;border:1.5px solid var(--accent);resize:both;background:#fffffff5;border-radius:2px;outline:none;padding:2px 3px;font-family:Helvetica,Arial,sans-serif;line-height:1.15;position:fixed}.modal{z-index:60;background:#0f141c59;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog{background:var(--panel);border-radius:10px;width:min(360px,92vw);padding:18px 20px;box-shadow:0 20px 60px #0000004d}.dialog h3{margin:0 0 8px}.dialog .row{gap:8px;margin:10px 0;display:flex}.dialog input[type=number]{border:1px solid var(--line);border-radius:6px;flex:1;padding:6px 8px}.dialog select{border:1px solid var(--line);border-radius:6px;padding:6px}.dialog .check{align-items:center;gap:6px;display:flex}.dialog .actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.dialog .actions button{border:1px solid var(--line);background:#fff;border-radius:6px;padding:6px 14px}.dialog .actions button.primary{background:var(--accent);border-color:var(--accent);color:#fff}.toast{left:50%;bottom:calc(var(--status-h) + 14px);z-index:70;color:#fff;background:#1d232b;border-radius:8px;max-width:90vw;padding:8px 14px;position:fixed;transform:translate(-50%);box-shadow:0 6px 20px #00000040}.toast.error{background:var(--danger)}.dropzone{border:3px dashed var(--accent);color:var(--accent);z-index:80;pointer-events:none;background:#1f6feb14;border-radius:16px;justify-content:center;align-items:center;font-size:22px;font-weight:600;display:flex;position:fixed;inset:12px}.finish-btn{right:16px;bottom:calc(var(--status-h) + 16px);z-index:30;background:var(--accent);color:#fff;border:0;border-radius:22px;padding:10px 18px;font-weight:600;position:fixed;box-shadow:0 6px 18px #1f6feb66}body.side-open .finish-btn{right:calc(var(--side-w) + 16px)}@media (max-width:800px){:root{--toolbar-w:0px;--side-w:100vw}.brand{display:none}.titlebar{gap:2px;padding:0 6px}.titlebar .rtabs button{padding:8px 9px 9px}.titlebar button{padding:5px 7px}.toolbar{top:auto;bottom:var(--status-h);border-right:0;border-top:1px solid var(--line);width:auto;height:58px;padding:0 4px;display:flex;left:0;right:0;overflow:auto hidden}.tgroup{border-bottom:0;border-right:1px solid var(--line);flex-direction:row;padding:0 4px}.viewport{bottom:calc(var(--status-h) + 58px)}body.side-open .viewport,body.side-open .doctabs{right:0}.side{bottom:calc(var(--status-h) + 58px);border-left:0;border-top:1px solid var(--line);height:55vh;top:auto;box-shadow:0 -8px 30px #00000026}.finish-btn,body.side-open .finish-btn{right:16px;bottom:calc(var(--status-h) + 72px)}#status-coords{display:none}}.compare{z-index:65;background:var(--bg);flex-direction:column;display:flex;position:fixed;inset:0}.compare-head{background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding:8px 12px;display:flex}.compare-head .spacer{flex:1}.compare-head button{flex:none;padding:6px 12px}.compare-head .primary{background:var(--accent);color:#fff;border:0;border-radius:6px}.compare-head .primary:disabled{opacity:.45}.legend{color:var(--muted);align-items:center;gap:6px;display:flex}.legend i{border-radius:3px;width:12px;height:12px;margin-left:6px;display:inline-block}.lg-removed{background:#dc2626}.lg-added{background:#16a34a}.lg-same{background:#969696}.compare-body{flex:1;padding:16px;overflow:auto}.compare-body canvas{background:#fff;margin:0 auto;display:block;box-shadow:0 1px 4px #0003}.compare-body.fit canvas{max-width:100%;max-height:100%}#ocr-progress{align-items:center;gap:6px;margin-left:10px;display:inline-flex}#ocr-progress[hidden]{display:none}#ocr-bar{width:120px;height:8px}#ocr-cancel{padding:1px 8px}.hf-grid{grid-template-columns:auto 1fr 1fr 1fr;align-items:center;gap:4px 6px;margin:6px 0;display:grid}.hf-grid .h{color:var(--muted);font-size:11px}.hf-grid input{text-align:left;width:100%;min-width:0}.hf-insert{flex-wrap:wrap;align-items:center;gap:4px}.hf-insert button{padding:2px 8px}.dialog:has(.hf-grid){width:min(640px,94vw)}#dialog input[name=every]{width:72px}.dialog:has(.hf-grid) input.inline{width:72px}#dialog input[name=ranges]{width:190px}svg text.hf{pointer-events:none;white-space:pre;font-family:Helvetica,Arial,sans-serif}.cmb-list{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;max-height:min(460px,60vh);margin:6px 0;padding:2px;display:grid;overflow-y:auto}.cmb-item{border:1px solid var(--line);cursor:grab;border-radius:8px;flex-direction:column;align-items:center;gap:3px;min-width:0;padding:8px 6px 4px;display:flex}.cmb-list{border-radius:8px;min-height:120px}.cmb-list.files-over{outline:2px dashed var(--accent);outline-offset:2px;background:var(--accent-soft)}.cmb-empty{text-align:center;grid-column:1/-1;align-self:center}.cmb-item.dragging{opacity:.4}.cmb-item.drop{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.cmb-thumb{text-align:center;width:140px;height:180px;color:var(--muted);justify-content:center;align-items:center;font-size:11px;display:flex}.cmb-thumb img{background:#fff;max-width:100%;max-height:100%;box-shadow:0 1px 4px #00000040}.cmb-thumb.wait,.cmb-thumb.err{border:1px dashed var(--line);border-radius:4px;padding:8px}.cmb-thumb.err{color:var(--danger);overflow:hidden}.cmb-item .n{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;overflow:hidden}.cmb-item .k{color:var(--muted);font-size:11px}.cmb-btns{gap:2px;display:flex}.cmb-item button{color:var(--muted);background:0 0;border:0;border-radius:4px;padding:2px 6px}.cmb-item button:hover:not(:disabled){background:var(--accent-soft);color:var(--ink)}.cmb-item button:disabled{opacity:.3}.dialog:has(.cmb-list){width:min(720px,94vw)}.sig-list{flex-direction:column;gap:4px;max-height:210px;margin-bottom:8px;display:flex;overflow-y:auto}.sig-item{border:1px solid var(--line);border-radius:6px;align-items:center;gap:8px;padding:4px 6px;display:flex}.sig-item img{object-fit:contain;background:#fff;max-width:160px;height:36px}.sig-item .n{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.sig-item .del{color:var(--muted);background:0 0;border:0}.sig-pad{border:1px dashed var(--line);touch-action:none;cursor:crosshair;background:#fff;border-radius:6px;width:100%;height:110px}.seq-row input[type=checkbox]{flex:none}#p-seq-fmt{flex:1;min-width:0}#p-seq-next{flex:none;width:64px}.seq-tag{pointer-events:none}.cp-btn{border:1px solid var(--line);cursor:pointer;background:#fff linear-gradient(var(--swatch,#000), var(--swatch,#000)) content-box;border-radius:5px;width:44px;height:24px;padding:2px}.cp-btn:disabled{opacity:.4;cursor:default}.cp-btn[aria-expanded=true]{outline:2px solid var(--accent);outline-offset:1px}.cp-pop{z-index:70;background:var(--panel,#fff);border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:8px;width:236px;padding:10px;font-size:12px;display:flex;position:fixed;box-shadow:0 8px 24px #0f141c2e}.cp-pop[hidden]{display:none}.cp-grid{grid-template-columns:repeat(8,1fr);gap:5px;display:grid}.cp-sw{aspect-ratio:1;cursor:pointer;border:1px solid #0000002e;border-radius:4px;padding:0}.cp-sw:hover{transform:scale(1.12)}.cp-sw.on{outline:2px solid var(--accent);outline-offset:1px}.cp-label{color:var(--muted)}.cp-none{color:var(--muted);grid-column:1/-1;font-style:italic}.cp-more{flex:none}.cp-custom{border-top:1px solid var(--line);flex-direction:column;gap:6px;padding-top:8px;display:flex}.cp-custom[hidden]{display:none}.cp-preview{border:1px solid #0000002e;border-radius:5px;height:26px}.cp-ch{color:var(--muted);grid-template-columns:30px 1fr 54px;align-items:center;gap:6px;display:grid}.cp-ch input[type=range]{width:100%;min-width:0;margin:0}.cp-ch input[type=text]{grid-column:2/4;font-family:ui-monospace,Consolas,monospace}.cp-ch input[type=number],.cp-ch input[type=text]{border:1px solid var(--line);border-radius:4px;min-width:0;padding:3px 5px}.cp-actions{gap:6px;display:flex}.cp-actions button{border:1px solid var(--line);cursor:pointer;border-radius:6px;flex:1;padding:6px}.cp-actions .primary{background:var(--accent);border-color:var(--accent);color:#fff}.spread{justify-content:center;align-items:flex-start;gap:18px;display:flex}.pages[data-mode=single],.pages[data-mode=facing]{min-height:100%}.viewmode button{padding:6px 8px!important}.viewmode svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linejoin:round;stroke-linecap:round;width:18px;height:18px;display:block}.titlebar button[aria-pressed=true]{color:#fff;box-shadow:inset 0 -2px 0 var(--accent);background:#2b3440}:root{--left-w:200px}.leftpanel{top:var(--top-h);bottom:var(--status-h);left:var(--toolbar-w);width:var(--left-w);background:var(--panel);border-right:1px solid var(--line);z-index:12;flex-direction:column;display:none;position:fixed}body.left-open .leftpanel{display:flex}body.left-open .viewport{left:calc(var(--toolbar-w) + var(--left-w))}.ltabs{border-bottom:1px solid var(--line);display:flex}.ltabs button{color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;flex:1;padding:9px 4px;font-weight:550}.ltabs button.active{color:var(--ink);border-bottom-color:var(--accent)}.ltab{flex-direction:column;flex:1;min-height:0;display:flex}.lbar{border-bottom:1px solid var(--line);gap:2px;padding:5px;display:flex}.lbar button{border:1px solid var(--line);background:#fff;border-radius:5px;padding:3px 7px;font-size:12px}.lbar button:hover{background:#f1f3f6}.thumbs{outline:none;flex-direction:column;flex:1;align-items:center;gap:10px;padding:10px 0;display:flex;overflow-y:auto}.thumb{cursor:pointer;border:2px solid #0000;border-radius:6px;flex-direction:column;align-items:center;gap:3px;padding:5px;display:flex;position:relative}.thumb:hover{background:#f4f6f9}.thumb.current .tnum{color:var(--accent);font-weight:650}.thumb.sel{border-color:var(--accent);background:var(--accent-soft)}.thumb.drop-before:before,.thumb.drop-after:after{content:"";background:var(--accent);border-radius:2px;height:3px;position:absolute;left:4px;right:4px}.thumb.drop-before:before{top:-7px}.thumb.drop-after:after{bottom:-7px}.tpage{background:#fff;position:relative;box-shadow:0 1px 3px #00000040}.tpage canvas{width:100%;height:100%;display:block}.tpage svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.tnum{color:var(--muted);font-size:11px}.tcap{cursor:text;justify-content:center;align-items:baseline;gap:6px;max-width:132px;display:flex}.tlabel{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.tlabel+.tnum{font-size:10px}.thumb.current .tlabel{color:var(--accent)}.lbl-list{grid-template-columns:auto 1fr;align-items:center;gap:4px 8px;max-height:min(420px,55vh);margin:6px 0;padding-right:4px;display:grid;overflow-y:auto}.lbl-list input{text-align:left}.region-pick{z-index:40;cursor:crosshair;position:fixed}.region-pick .box{border:2px dashed var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);pointer-events:none;position:absolute}.pmenu{z-index:45;background:var(--panel);border:1px solid var(--line);border-radius:8px;flex-direction:column;min-width:210px;padding:5px;display:flex;position:fixed;box-shadow:0 8px 28px #0000002e}.pmenu[hidden]{display:none}.pmenu button{text-align:left;background:0 0;border:0;border-radius:5px;padding:6px 9px}.pmenu button:hover{background:var(--accent-soft)}.pmenu hr{border:0;border-top:1px solid var(--line);margin:4px 0}.bmtree{outline:none;flex:1;padding:6px 0;overflow-y:auto}.bmtree .muted{padding:8px 10px}.bm{cursor:pointer;border:1px solid #0000;align-items:center;gap:4px;padding:4px 8px 4px 6px;display:flex}.bm:hover{background:#f4f6f9}.bm.sel{background:var(--accent-soft)}.bm.gone .bt{color:var(--muted);text-decoration:line-through}.bm .caret{width:12px;color:var(--muted);flex:none;font-size:11px}.bm .bt{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.bm .bp{color:var(--muted);font-size:11px}.bm.drop-before{border-top-color:var(--accent)}.bm.drop-after{border-bottom-color:var(--accent)}.bm.drop-inside{background:var(--accent-soft);outline:1px dashed var(--accent)}.bm-edit{border:1px solid var(--accent);min-width:0;font:inherit;border-radius:4px;flex:1;padding:2px 4px}@media (max-width:800px){.leftpanel{z-index:30;box-shadow:4px 0 18px #00000026}body.left-open .viewport,body.left-open .doctabs{left:var(--toolbar-w)}}.tab select{border:1px solid var(--line);background:#fff;border-radius:6px;padding:4px 6px}.dyninput{z-index:55;pointer-events:auto;border:1px solid var(--accent);color:var(--muted);background:#fffffff5;border-radius:6px;gap:8px;padding:5px 7px;font-size:12px;display:flex;position:fixed;box-shadow:0 3px 12px #0000002e}.dyninput label{align-items:center;gap:3px;display:flex}.dyninput input{border:1px solid var(--line);width:64px;font:inherit;color:var(--ink);font-variant-numeric:tabular-nums;border-radius:4px;padding:2px 4px}.dyninput input:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.dyninput input::placeholder{color:#8a93a0}.seg{gap:2px!important}.seg-btn{border:1px solid var(--line);background:var(--panel);border-radius:5px;justify-content:center;align-items:center;min-width:28px;height:26px;padding:0 6px;display:inline-flex}.seg-btn svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;width:14px;height:14px}.seg-btn[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.seg-btn:disabled{opacity:.4;cursor:default}.list .review{vertical-align:1px;border-radius:8px;margin-left:4px;padding:0 6px;font-size:10.5px;font-weight:600}.st-accepted{color:#15803d;background:#dcfce7}.st-rejected{color:#b91c1c;background:#fee2e2}.st-cancelled{color:#4b5563;background:#e5e7eb}.st-completed{color:#1d4ed8;background:#dbeafe}.list-show summary{cursor:pointer;color:var(--muted);font-size:12px}.chips{flex-direction:column;gap:6px;padding-top:6px;display:flex}.chip-row{flex-wrap:wrap;gap:4px;display:flex}.chip{border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:10px;padding:2px 8px;font-size:11.5px;text-decoration:line-through}.chip[aria-pressed=true]{border-color:var(--accent);color:var(--accent);text-decoration:none}.dialog .inline{border:1px solid var(--line);border-radius:6px;width:110px;margin-left:4px;padding:3px 6px}.print-area{display:none}@media print{@page{margin:0}html,body{background:#fff;height:auto;overflow:visible}body>:not(.print-area){display:none!important}.print-area{display:block}.print-area img{object-fit:contain;break-after:page;width:100%;height:auto;max-height:100vh;display:block}.print-area img:last-child{break-after:auto}.print-area .report{color:#000;padding:14mm;font:10pt Helvetica,Arial,sans-serif}.report h1{margin:0 0 2mm;font-size:15pt}.report .sub{color:#555;margin-bottom:6mm}.report h2{break-after:avoid;margin:6mm 0 2mm;font-size:11.5pt}.report table{border-collapse:collapse;width:100%}.report th,.report td{text-align:left;vertical-align:top;border-bottom:.5pt solid #bbb;padding:1.2mm 1.5mm}.report th{border-bottom:1pt solid #000}.report td.num,.report th.num{text-align:right;white-space:nowrap}.report tr{break-inside:avoid}.report .tot td{border-bottom:0;font-weight:700}}:root[data-theme=dark]{--bg:#15191f;--panel:#1f242c;--ink:#e3e7ed;--muted:#98a1ad;--line:#343b46;--accent:#4c8dff;--accent-soft:#233552;--danger:#f07171;--bar:#0f1318;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#15191f;--panel:#1f242c;--ink:#e3e7ed;--muted:#98a1ad;--line:#343b46;--accent:#4c8dff;--accent-soft:#233552;--danger:#f07171;--bar:#0f1318;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark] :is(.toolbar button,.ribbon button,.seg-btn){color:#c7ced8}:root[data-theme=dark] :is(.toolbar button:hover,.ribbon button:hover:not(:disabled),.list .item:hover,.thumb:hover,.bm:hover,.lbar button:hover,.secondary:hover:not(:disabled)){background:#2a313b}:root[data-theme=dark] :is(.secondary,.danger,.lbar button,.dialog .actions button,.tab select,.tab input[type=color]){background:var(--panel)}:root[data-theme=dark] :is(.tab input,.tab textarea,.tab select,.ribbon input,.ribbon select,.dialog input,.dialog select,.menu-field input,.menu-field select,#list-filter,.searchbar input,.dyninput input){background:#171b21}:root[data-theme=dark] #count-badge{background:#2a313b}:root[data-theme=dark] :is(.list .item.sel,#chest-list .item.active,.layer.current){border-color:#3a5a8c}:root[data-theme=dark] .dyninput{background:#1f242cf5}:root[data-theme=dark] .toast{background:#2a313b}:root[data-theme=dark] .st-accepted{color:#bbf7d0;background:#14532d}:root[data-theme=dark] .st-rejected{color:#fecaca;background:#7f1d1d}:root[data-theme=dark] .st-cancelled{color:#d1d5db;background:#374151}:root[data-theme=dark] .st-completed{color:#bfdbfe;background:#1e3a8a}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) :is(.toolbar button,.ribbon button,.seg-btn){color:#c7ced8}:root:not([data-theme=light]) :is(.toolbar button:hover,.ribbon button:hover:not(:disabled),.list .item:hover,.thumb:hover,.bm:hover,.lbar button:hover,.secondary:hover:not(:disabled)){background:#2a313b}:root:not([data-theme=light]) :is(.secondary,.danger,.lbar button,.dialog .actions button,.tab select,.tab input[type=color]){background:var(--panel)}:root:not([data-theme=light]) :is(.tab input,.tab textarea,.tab select,.ribbon input,.ribbon select,.dialog input,.dialog select,.menu-field input,.menu-field select,#list-filter,.searchbar input,.dyninput input){background:#171b21}:root:not([data-theme=light]) #count-badge{background:#2a313b}:root:not([data-theme=light]) :is(.list .item.sel,#chest-list .item.active,.layer.current){border-color:#3a5a8c}:root:not([data-theme=light]) .dyninput{background:#1f242cf5}:root:not([data-theme=light]) .toast{background:#2a313b}:root:not([data-theme=light]) .st-accepted{color:#bbf7d0;background:#14532d}:root:not([data-theme=light]) .st-rejected{color:#fecaca;background:#7f1d1d}:root:not([data-theme=light]) .st-cancelled{color:#d1d5db;background:#374151}:root:not([data-theme=light]) .st-completed{color:#bfdbfe;background:#1e3a8a}}
