@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-ext-wght-normal-DCwSJGxG.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-wght-normal-D_ZTVpCC.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-ext-wght-normal-X_5orZeX.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-wght-normal-DiZS0aHC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-symbols2-wght-normal-CO5SzqOn.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-vietnamese-wght-normal-DadHysG0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-ext-wght-normal-Bwz-egvJ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-wght-normal-XN7g48iV.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f7f6f2;--surface:#fff;--border:#e9e7e1;--border-soft:#d9d6cf;--divider:#f0eee9;--pill:#f1efea;--text:#1d1c1a;--text-soft:#5f5c56;--muted:#6f6c65;--faint:#a29f97;--green:#3e5c3a;--green-press:#2f4a2c;--green-soft:#eaf0e5;--green-border:#c9d8c1;--rust:#b4572f;--rust-soft:#fbede6;--rust-row:#fdf4ef;--rust-border:#f0cdbd;--rust-text:#a44e28;--font:"Figtree Variable", "Figtree", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"Geist Mono Variable", "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--ease:cubic-bezier(.2, .9, .3, 1)}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;margin:0;font-size:14px}button,input,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:default}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--green-border);outline-offset:1px}svg{display:block}.ic{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}[hidden]{display:none!important}.view{animation:viewin .35s var(--ease);flex-direction:column;gap:14px;display:flex}@keyframes viewin{0%{opacity:0;transform:translateY(6px)}}.row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.row .sp{flex:1}.monthpick{border:1px solid var(--border);background:var(--surface);border-radius:10px;align-items:center;height:40px;display:inline-flex}.monthpick button{width:36px;height:100%;color:var(--muted);border-radius:10px;place-items:center;transition:background-color .15s;display:grid}.monthpick button:hover:not(:disabled){background:var(--pill);color:var(--text)}.monthpick button:disabled{opacity:.3}.monthpick .m{justify-content:center;align-items:center;gap:6px;min-width:150px;font-size:15px;font-weight:700;display:inline-flex}.monthpick .m .ic{width:15px;height:15px;color:var(--muted)}.iconbtn{background:var(--surface);border:1px solid var(--border);width:40px;height:40px;color:var(--text-soft);transition:background-color .15s, transform .2s var(--ease);border-radius:10px;place-items:center;display:grid}.iconbtn:hover{background:var(--pill)}.iconbtn:hover .ic{transform:rotate(45deg)}.iconbtn .ic{transition:transform .35s var(--ease)}.search{border:1px solid var(--border-soft);background:var(--surface);border-radius:10px;align-items:center;gap:8px;width:240px;height:38px;padding:0 12px;transition:border-color .15s,box-shadow .15s;display:flex}.search:focus-within{border-color:var(--green);box-shadow:0 0 0 3px var(--green-soft)}.search input{background:0 0;border:0;outline:0;width:100%}.search .ic{color:var(--faint);width:16px;height:16px}.select{border:1px solid var(--border-soft);background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236F6C65' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 10px center / 14px no-repeat;appearance:none;cursor:pointer;border-radius:10px;height:38px;padding:0 32px 0 12px;font-weight:600}.switch{height:38px;color:var(--text-soft);align-items:center;gap:10px;padding:0 4px;font-weight:600;display:inline-flex}.toggle{background:var(--border-soft);border-radius:12px;flex:none;width:42px;height:24px;transition:background-color .25s;position:relative}.toggle:after{content:"";width:18px;height:18px;transition:transform .3s var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #1d1c1a40}[aria-checked=true]>.toggle,.toggle[aria-checked=true]{background:var(--green)}[aria-checked=true]>.toggle:after,.toggle[aria-checked=true]:after{transform:translate(18px)}.btn{white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:8px;height:40px;padding:0 18px;font-weight:700;transition:background-color .2s,transform .1s,opacity .2s,color .2s;display:inline-flex}.btn:active:not(:disabled){transform:scale(.97)}.btn.dark{background:var(--text);color:#fff}.btn.dark:hover:not(:disabled){background:#000}.btn.primary{background:var(--green);color:#fff}.btn.primary:hover:not(:disabled){background:var(--green-press)}.btn.danger{background:var(--rust);color:#fff}.ask{color:var(--rust-text);font-weight:700}.btn.ghost{background:var(--surface);border:1px solid var(--border-soft);color:var(--text-soft)}.btn.ghost:hover:not(:disabled){background:var(--pill)}.btn:disabled{opacity:.45}.btn.small{border-radius:8px;height:32px;padding:0 12px;font-size:13px}.btn .ic{width:17px;height:17px}.spin{border:2.5px solid #ffffff59;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes draw{to{stroke-dashoffset:0}}.tablecard{background:var(--surface);border:1px solid var(--border);border-radius:14px;flex-direction:column;flex:1;min-height:300px;display:flex;overflow:hidden}.tablecard .tablewrap{flex:1;min-height:0;overflow:auto}.rtable th{z-index:1;position:sticky;top:0}.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%}.rtable{min-width:820px}th{text-align:left;color:var(--muted);letter-spacing:.02em;border-bottom:1px solid var(--border);white-space:nowrap;background:#fbfaf7;padding:11px 14px;font-size:12px;font-weight:700}th.r,td.r{text-align:right}td{border-bottom:1px solid var(--divider);white-space:nowrap;height:50px;padding:0 14px}.rtable tbody tr{cursor:pointer;transition:background-color .25s}.rtable tbody tr:hover{background:var(--bg)}.rtable tbody tr.issue{background:var(--rust-row)}.rtable tbody tr.issue:hover{background:var(--rust-soft)}.rtable tbody tr.sel{background:var(--green-soft)}tbody.fade{animation:rowsin .3s var(--ease)}@keyframes rowsin{0%{opacity:0;transform:translateY(4px)}}td.unit{font-size:14.5px;font-weight:700}td.mono{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:13.5px}td.muted,.muted{color:var(--faint)}.cb{border:1.5px solid var(--border-soft);background:var(--surface);color:#fff;width:20px;height:20px;transition:background-color .15s, border-color .15s, transform .15s var(--ease);border-radius:6px;place-items:center;display:grid}.cb .ic{stroke-width:3px;opacity:0;width:13px;height:13px;transition:opacity .15s, transform .25s var(--ease);transform:scale(.4)}.cb[aria-checked=true],.cb[aria-checked=mixed]{background:var(--green);border-color:var(--green)}.cb[aria-checked=true] .ic{opacity:1;transform:none}.cb[aria-checked=mixed]:after{content:"";background:#fff;border-radius:1px;width:9px;height:2px;position:absolute}.cb{position:relative}.cb:disabled{opacity:.35}.pill{background:var(--pill);height:26px;color:var(--text-soft);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:0 10px;font-size:12.5px;font-weight:600;display:inline-flex}.pill .ic{stroke-width:2.6px;width:13px;height:13px}.pill.rust{background:var(--rust-soft);color:var(--rust-text)}.pill.green{background:var(--green-soft);color:var(--green)}.pill.empty{box-shadow:inset 0 0 0 1px var(--border-soft);color:var(--muted);background:0 0}.acts{align-items:center;gap:6px;display:flex}.act{border:1px solid var(--border-soft);background:var(--surface);height:30px;color:var(--text-soft);border-radius:8px;align-items:center;gap:5px;padding:0 11px;font-size:13px;font-weight:600;transition:background-color .15s,color .15s,border-color .15s,transform .1s;display:inline-flex}.act:active{transform:scale(.95)}.act .ic{width:14px;height:14px}.act.ok:hover{background:var(--green);border-color:var(--green);color:#fff}.act.ed{width:30px;color:var(--muted);justify-content:center;padding:0}.act.ed:hover{background:var(--pill);color:var(--text)}.cellin{border:1px solid var(--green);width:120px;height:32px;box-shadow:0 0 0 3px var(--green-soft);font-family:var(--mono);text-align:right;background:var(--surface);border-radius:8px;outline:0;padding:0 10px;font-size:14px}.act.re:hover{background:var(--rust);border-color:var(--rust);color:#fff}.decided{align-items:center;gap:6px;font-size:13px;font-weight:600;display:inline-flex}.decided.pop{animation:pop .35s var(--ease)}.decided.ok{color:var(--green)}.decided.re{color:var(--rust-text)}.decided .ic{width:15px;height:15px}.decided .undo{color:var(--faint);opacity:0;border-radius:6px;padding:4px;transition:opacity .15s}tr:hover .decided .undo{opacity:1}.decided .undo:hover{color:var(--text);background:var(--pill)}@keyframes pop{0%{opacity:0;transform:scale(.85)}}.empty-row td{text-align:center;height:160px;color:var(--muted);cursor:default}.empty-row:hover{background:0 0!important}.foot{border-top:1px solid var(--border);background:#fbfaf7;align-items:center;gap:12px;padding:12px 14px;display:flex}.foot .sp{flex:1}.foot .info{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px}.pager{gap:4px;display:flex}.pager button{width:32px;height:32px;color:var(--text-soft);border:1px solid var(--border-soft);background:var(--surface);border-radius:8px;place-items:center;display:grid}.pager button:disabled{opacity:.35}.pager .ic{width:16px;height:16px}.bulk{animation:pop .25s var(--ease);align-items:center;gap:8px;display:inline-flex}.bulk .n{color:var(--green);padding:0 4px;font-size:13px;font-weight:700}.scrim{opacity:0;pointer-events:none;z-index:10;background:#1d1c1a4d;transition:opacity .25s;position:absolute;inset:0}.scrim.on{opacity:1;pointer-events:auto}.panel{z-index:11;background:var(--surface);width:min(540px,100%);transition:transform .35s var(--ease);flex-direction:column;display:flex;position:absolute;top:0;bottom:0;right:0;transform:translate(104%);box-shadow:-20px 0 50px -20px #1d1c1a59}.panel.on{transform:none}.phead{padding:20px 22px 14px;padding-top:max(20px, env(safe-area-inset-top,0px));border-bottom:1px solid var(--border);align-items:flex-start;gap:12px;display:flex}.phead h2{letter-spacing:-.02em;margin:0;font-size:24px;font-weight:800}.phead .meta{color:var(--muted);flex-wrap:wrap;gap:6px;margin-top:4px;font-size:13px;display:flex}.phead .meta span+span:before{content:"·";margin-right:6px}.phead .sp{flex:1}.xbtn{width:36px;height:36px;color:var(--muted);border:1px solid var(--border);transition:background-color .15s, transform .2s var(--ease);border-radius:50%;place-items:center;display:grid}.xbtn:hover{background:var(--pill);transform:rotate(90deg)}.pbody{flex-direction:column;flex:1;gap:18px;padding:18px 22px 28px;display:flex;overflow-y:auto}.ptitle{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin:0 0 8px;font-size:13px;font-weight:700;display:flex}.ptitle span{font-weight:500}.current{grid-template-columns:200px 1fr;gap:16px;display:grid}.kv{grid-template-columns:auto 1fr;align-content:start;gap:6px 14px;margin:0;font-size:13.5px;display:grid}.kv dt{color:var(--muted)}.kv dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.pactions{gap:8px;margin-top:12px;display:flex}.chart{height:128px;position:relative}.chart svg{width:100%;height:100%;overflow:visible}.chart text{font-family:var(--font);fill:var(--muted);font-size:10.5px}.pbody>section.hsec{flex-direction:column;flex:1 0 220px;gap:10px;min-height:220px;display:flex}.hwrap{border:1px solid var(--border);border-radius:12px;flex:1;min-height:0;overflow:auto}.htable{min-width:480px}.htable td{height:40px;padding:0 12px;font-size:13px}.htable tr:last-child td{border-bottom:0}.htable th{z-index:1;padding:8px 12px;font-size:11.5px;position:sticky;top:0}.htable tr.sel{background:var(--green-soft)}.who{color:var(--text-soft)}.when{color:var(--muted)}td.mono,.htable .mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.settings{flex:1;grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:stretch;gap:14px;min-height:0;display:grid}.settings>*{min-height:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:14px}.sform{flex-direction:column;display:flex;overflow-y:auto}.sform .sfoot{border-top:1px solid var(--divider);margin-top:auto}.shead{border-bottom:1px solid var(--border);padding:13px 22px}.shead h2{margin:0;font-size:16px;font-weight:700}.srow{border-bottom:1px solid var(--divider);align-items:center;gap:16px;min-height:54px;padding:8px 22px;display:flex}.srow .q{flex:1;font-size:14.5px;font-weight:600}.field{border:1px solid var(--border-soft);background:var(--surface);border-radius:10px;align-items:center;height:38px;transition:border-color .15s,box-shadow .15s;display:inline-flex;overflow:hidden}.field input{text-align:right;font-variant-numeric:tabular-nums;-moz-appearance:textfield;border:0;outline:0;width:64px;height:100%;padding:0 8px;font-weight:600}.field input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.field input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.field .unit{color:var(--muted);white-space:nowrap;padding:0 12px 0 4px;font-weight:600}.field:focus-within{border-color:var(--green);box-shadow:0 0 0 3px var(--green-soft)}.step{border-left:1px solid var(--divider);flex-direction:column;height:100%;display:flex}.step button{width:24px;color:var(--muted);flex:1;place-items:center;transition:background-color .1s;display:grid}.step button:hover{background:var(--pill);color:var(--text)}.step button .ic{stroke-width:2.6px;width:12px;height:12px}.sfoot{background:#fbfaf7;align-items:center;gap:10px;padding:11px 22px;display:flex}.sfoot .sp{flex:1}.note{color:var(--muted);font-size:13px}.note.err{color:var(--rust-text);font-weight:600}.preview{flex-direction:column;flex:none;gap:8px;padding:16px 22px;display:flex}.range .mk.l{transform:none}.range{height:46px;position:relative}.range .seg2{height:14px;transition:left .35s var(--ease), width .35s var(--ease);position:absolute;top:0}.range .lo,.range .hi{background:#f2c9b8}.range .lo{border-radius:7px 0 0 7px}.range .hi{border-radius:0 7px 7px 0}.range .ok{border-left:2px solid var(--green);border-right:2px solid var(--green);background:#c9dfc0}.range .mk{font-variant-numeric:tabular-nums;white-space:nowrap;transition:left .35s var(--ease);font-size:14px;font-weight:700;position:absolute;top:22px;transform:translate(-50%)}.flagged{font-variant-numeric:tabular-nums;align-items:baseline;gap:8px;display:flex}.flagged b{letter-spacing:-.02em;color:var(--rust-text);font-size:26px;font-weight:700}.flagged span{color:var(--text-soft);font-weight:500}.flagged small{color:var(--muted);margin-left:auto;font-size:13px}.back{border-radius:10px;align-items:center;gap:4px;height:40px;padding:0 10px 0 4px;font-size:16px;font-weight:600;transition:background-color .15s;display:inline-flex}.back:hover{background:var(--pill)}.back .ic{width:20px;height:20px;transition:transform .2s var(--ease)}.back:hover .ic{transform:translate(-3px)}.modal{z-index:21;opacity:0;pointer-events:none;width:min(860px,100% - 32px);max-height:calc(100% - 40px);transition:opacity .2s, transform .3s var(--ease);background:var(--surface);border-radius:16px;flex-direction:column;display:flex;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-47%)scale(.98);box-shadow:0 30px 70px -20px #1d1c1a73}.modal.on{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)}.mhead{flex-wrap:wrap;align-items:flex-end;gap:14px;padding:20px 22px 14px;display:flex}.mhead .sp{flex:1}.lab{color:var(--muted);flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.inp{border:1px solid var(--border-soft);background:var(--surface);border-radius:10px;width:220px;height:38px;padding:0 12px;font-weight:600}.inp.short{width:120px}.inp:focus{border-color:var(--green);box-shadow:0 0 0 3px var(--green-soft);outline:0}.drop{border:2px dashed var(--border-soft);color:var(--text-soft);border-radius:14px;flex-direction:column;align-items:center;gap:14px;margin:6px 22px 22px;padding:44px 20px;transition:border-color .2s,background-color .2s;display:flex}.drop.over{border-color:var(--green);background:var(--green-soft)}.drop .big{background:var(--pill);width:44px;height:44px;color:var(--text-soft);border-radius:12px;place-items:center;display:grid}.drop .big .ic{width:22px;height:22px}.drop b{color:var(--text);font-size:16px}.drop .row{justify-content:center}.counts{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:12px;padding:0 22px 10px;font-weight:600;display:flex}.counts .sp{flex:1}.ichips{gap:6px;display:inline-flex}.ichips .pill{font-weight:600}.seg{background:var(--pill);border-radius:9px;padding:3px;display:inline-flex}.seg button{height:28px;color:var(--muted);border-radius:7px;padding:0 12px;font-size:13px;font-weight:600;transition:background-color .15s,color .15s}.seg button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #1d1c1a1f}.ipreview{border:1px solid var(--border);border-radius:12px;flex:1;min-height:160px;max-height:420px;margin:0 22px;overflow:auto}.ipreview table{min-width:560px}.ipreview th{z-index:1;position:sticky;top:0}.ipreview td{height:40px}.ipreview tr.err td{color:#7a3418;background:#f7d9cc}.ipreview tr.err td.why{color:var(--rust-text);font-weight:600}.ipreview td.why{color:var(--muted);font-size:12.5px}.ipreview td.hi{color:var(--rust-text);font-weight:700}.ipreview td.why.flag{color:var(--rust-text);font-weight:600}.ipreview td.bad{-webkit-text-decoration:underline wavy var(--rust);text-decoration:underline wavy var(--rust);text-underline-offset:4px}.mfoot{align-items:center;gap:12px;padding:16px 22px;display:flex}.mfoot .sp{flex:1}.mfoot .errmsg{color:var(--rust-text);font-weight:700}.mfoot .okmsg{color:var(--green);font-weight:700}.linkbtn{color:var(--muted);text-underline-offset:3px;font-weight:600;text-decoration:underline}.toast{left:50%;bottom:max(24px, env(safe-area-inset-bottom,0px));opacity:0;transition:opacity .2s, transform .3s var(--ease);background:var(--text);color:#fff;z-index:40;border-radius:10px;align-items:center;gap:8px;padding:10px 16px;font-weight:600;display:flex;position:fixed;transform:translate(-50%,20px)}.toast.on{opacity:1;transform:translate(-50%)}.toast .ic{color:#9fd08f}.side{flex-direction:column;gap:14px;min-width:0;display:flex}.blay{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.blay .shead{align-items:center;gap:10px;display:flex}.blay .shead .sp{flex:1}.blay .total{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:600}.blist{border-top:1px solid var(--border);flex:1;min-height:0;overflow-y:auto}.blay .shead{border-bottom:0}.brow{border-bottom:1px solid var(--divider);font-variant-numeric:tabular-nums;grid-template-columns:1fr auto auto;align-items:center;gap:16px;padding:11px 22px;display:grid}.brow b{font-weight:600}.brow .fl{color:var(--muted);font-size:13px}.brow .n{text-align:right;min-width:74px;font-weight:600}.blay .sfoot{border-top:0}.ipreview td.letter{font-family:var(--mono);color:var(--muted)}.dd{display:inline-flex;position:relative}.dd select{display:none}.dd-btn{border:1px solid var(--border-soft);background:var(--surface);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;min-width:150px;height:38px;padding:0 12px 0 14px;font-weight:600;transition:border-color .15s,box-shadow .15s,background-color .15s;display:inline-flex}.dd-btn:hover{background:#fbfaf7}.dd-btn .ic{width:15px;height:15px;color:var(--muted);transition:transform .25s var(--ease)}.dd.open .dd-btn{border-color:var(--green);box-shadow:0 0 0 3px var(--green-soft)}.dd.open .dd-btn .ic{transform:rotate(180deg)}.dd-menu{z-index:30;background:var(--surface);border:1px solid var(--border);opacity:0;transform-origin:100% 0;pointer-events:none;min-width:100%;max-height:300px;transition:opacity .15s, transform .2s var(--ease);border-radius:12px;flex-direction:column;gap:2px;padding:5px;display:flex;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto;transform:translateY(-4px)scale(.98);box-shadow:0 16px 40px -14px #1d1c1a4d}.dd.open .dd-menu{opacity:1;pointer-events:auto;transform:none}.dd-opt{white-space:nowrap;text-align:left;height:36px;color:var(--text-soft);border-radius:8px;flex:none;justify-content:space-between;align-items:center;gap:16px;padding:0 10px;font-weight:500;display:flex}.dd-opt:hover,.dd-opt.hl{background:var(--pill);color:var(--text)}.dd-opt[aria-selected=true]{color:var(--text);font-weight:700}.dd-opt .ic{width:15px;height:15px;color:var(--green);stroke-width:2.6px;opacity:0}.dd-opt[aria-selected=true] .ic{opacity:1}.start{color:var(--muted);flex-direction:column;align-items:center;gap:12px;display:flex}.start>.ic{width:34px;height:34px;color:var(--faint)}.start b{color:var(--text);font-size:16px}.empty-row td{height:260px}.bempty{color:var(--muted);padding:22px}.inp.need{border-color:var(--rust);box-shadow:0 0 0 3px var(--rust-soft)}td.mono .ic{vertical-align:-2px;width:14px;height:14px;color:var(--rust);display:inline}@media (width<=900px){.settings{flex:none;grid-template-rows:none;grid-template-columns:1fr}.blist{flex:none;max-height:320px}.current{grid-template-columns:1fr}.search{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important}}#root,html,body{height:100%}.main{height:100%;position:relative}.body{padding:20px 24px;padding-left:max(24px, env(safe-area-inset-left,0px));padding-right:max(24px, env(safe-area-inset-right,0px));flex-direction:column;display:flex;position:absolute;inset:0;overflow:auto}.body>.view{flex:1;min-height:0}.view.settingsview{overflow:hidden}.side>.sform{flex:1}.current .photo{border:1px solid var(--border);cursor:zoom-in;background:#222;border-radius:10px;width:200px;height:130px;padding:0;overflow:hidden}.current .photo img{object-fit:cover;width:100%;height:100%;transition:transform .3s var(--ease)}.current .photo:hover img{transform:scale(1.04)}.current .photo.none{background:var(--pill);color:var(--muted);cursor:default;border-style:dashed;place-items:center;font-size:13px;display:grid}.thumb{border:1px solid var(--border);cursor:zoom-in;background:#222;border-radius:6px;width:38px;height:26px;padding:0;overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%;display:block}.lightbox{z-index:30;opacity:0;pointer-events:none;background:#141312d1;place-items:center;transition:opacity .2s;display:grid;position:fixed;inset:0}.lightbox.on{opacity:1;pointer-events:auto;cursor:zoom-out}.lightbox figure{transition:transform .3s var(--ease);flex-direction:column;align-items:center;gap:10px;margin:0;display:flex;transform:scale(.96)}.lightbox.on figure{transform:none}.lightbox img{border-radius:12px;max-width:min(720px,90vw);max-height:80vh}.lightbox figcaption{color:#edebe6;font-size:14px;font-weight:500}.signin p{color:var(--muted);margin:4px 0 0;font-weight:600}.export{min-width:120px}.lockpill{background:var(--pill);height:40px;color:var(--text-soft);border-radius:10px;align-items:center;gap:6px;padding:0 14px;font-weight:700;display:inline-flex}.lockpill .ic{width:16px;height:16px}.err{color:var(--rust-text);font-weight:600}.sent{border-bottom:1px solid var(--divider);grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:10px 12px;font-size:13.5px;display:grid}.sent:last-child{border-bottom:0}.sent b{font-family:var(--mono);font-variant-numeric:tabular-nums}.sent .when{font-size:12.5px}.sentlist{border:1px solid var(--rust-border);background:var(--rust-row);border-radius:12px}.ready{color:var(--muted);align-items:center;gap:14px;font-size:13.5px;font-weight:600;display:inline-flex}.ready .w{color:var(--rust-text)}.ready span{align-items:center;gap:5px;display:inline-flex}.ready .ic{width:14px;height:14px}.qrbox{place-items:center;padding:4px 22px 0;display:grid}.qrbox svg{aspect-ratio:1;border:1px solid var(--border);border-radius:12px;width:100%;max-width:300px}.qrwait{aspect-ratio:1;background:var(--pill);border-radius:12px;place-items:center;width:100%;max-width:300px;display:grid}.spin.dark{border-color:#1d1c1a26;border-top-color:var(--text)}.qrfoot{text-align:center;flex-direction:column;align-items:center;gap:4px;padding:14px 22px 22px;font-weight:600;display:flex}.qrfoot .note{font-family:var(--mono);font-size:12.5px}.rotate{background:var(--pill);border-radius:2px;width:min(300px,100%);height:4px;margin:4px 0 2px;overflow:hidden}.rotate i{background:var(--green);height:100%;transition:width .25s linear;display:block}.phones{border-top:1px solid var(--border);max-height:220px;overflow-y:auto}.prow{border-bottom:1px solid var(--divider);justify-content:space-between;align-items:center;gap:12px;padding:10px 22px;display:flex}.prow:last-child{border-bottom:0}.prow>span:first-child{flex-direction:column;gap:2px;min-width:0;display:flex}.prow b{font-weight:600}.signin{place-items:center;min-height:100%;padding:24px;display:grid}.signin form{flex-direction:column;gap:14px;width:min(380px,100%);display:flex}.signin h1{letter-spacing:-.02em;margin:0 0 4px;font-size:26px;font-weight:800}.signin p{color:var(--muted);margin:0}.signin .inp{width:100%;height:48px;font-size:16px}.signin .btn{height:48px;font-size:16px}.opts{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:18px 28px;padding:4px 22px 16px;display:flex}.opt{flex-direction:column;gap:7px;display:flex}.opt>span{color:var(--muted);font-size:12.5px;font-weight:700}.seg.big{height:38px}.seg.big button{align-items:center;gap:6px;height:32px;display:inline-flex}.seg input{border:1px solid var(--border-soft);text-align:right;width:46px;height:24px;font:600 13px var(--font);-moz-appearance:textfield;border-radius:6px;padding:0 6px}.seg input::-webkit-inner-spin-button{-webkit-appearance:none}.swatch{background:red;border-radius:3px;width:12px;height:12px}.book{background:#fff;border:1px solid #d4d4d4;border-radius:10px;flex-direction:column;flex:1;min-height:0;margin:14px 22px 0;display:flex;overflow:hidden}.xgrid{flex:1;min-height:200px;max-height:380px;overflow:auto}.xgrid table{border-collapse:separate;border-spacing:0;color:#000;font-variant-numeric:tabular-nums;width:auto;font:13px/1 Calibri,Carlito,Segoe UI,Arial,sans-serif}.xgrid th,.xgrid td{white-space:nowrap;color:#000;letter-spacing:0;background:#fff;border-bottom:1px solid #d4d4d4;border-right:1px solid #d4d4d4;height:24px;padding:0 8px;font-size:13px}.xgrid th{z-index:2;text-align:right;font-weight:700;position:sticky;top:0}.xgrid .l{text-align:left}.xgrid td{text-align:right;min-width:64px}.xgrid .rh{z-index:1;text-align:center;color:#6f6c65;background:#f3f3f3;width:40px;min-width:40px;font-size:11.5px;position:sticky;left:0}.xgrid thead .rh{z-index:4}.xgrid .c1{z-index:1;text-align:left;min-width:92px;position:sticky;left:40px}.xgrid .c2{z-index:1;border-right:2px solid #9e9e9e;min-width:118px;position:sticky;left:132px}.xgrid thead .c1,.xgrid thead .c2{z-index:3}.xgrid td.red{background:red}.xgrid tr.more td{color:#6f6c65;text-align:left;font-style:italic}.xtabs{background:#f3f3f3;border-top:1px solid #d4d4d4;height:30px;display:flex;overflow-x:auto}.xtabs button{color:var(--muted);white-space:nowrap;border-right:1px solid #d4d4d4;padding:0 16px;font:13px Calibri,Carlito,Segoe UI,Arial,sans-serif}.xtabs button[aria-selected=true]{color:var(--green);box-shadow:inset 0 -2px 0 var(--green);background:#fff;font-weight:700}.sum{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:18px;font-weight:600;display:flex}.sum b{color:var(--text)}.sum .red b{color:var(--rust-text)}
