@font-face{font-family:Chivo;src:url(/fonts/chivo-var.woff2) format("woff2");font-weight:300 900;font-style:normal;font-display:swap}@font-face{font-family:Chivo Mono;src:url(/fonts/chivo-mono-var.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap}:root{color-scheme:dark;--bg:#0b0e10;--panel:#13171b;--panel2:#1b2027;--well:#0e1215;--line:#262d35;--line2:#323b45;--ink:#e7ecf3;--dim:#8892a0;--faint:#5b6472;--accent:#33c9e0;--on-accent:#04222a;--green:#4fc079;--amber:#e8b13a;--red:#ef5d68;--late-soft:#2a1518;--mono:"Chivo Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;--sans:"Chivo",ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--ring:0 0 0 1px oklch(1 0 0 / .09);--ring-hover:0 0 0 1px oklch(1 0 0 / .15);--ease-out:cubic-bezier(.23,1,.32,1);--ease-in-out:cubic-bezier(.77,0,.175,1)}:root[data-theme=light]{color-scheme:light;--bg:#f4f6f9;--panel:#ffffff;--panel2:#eef1f5;--well:#e9edf2;--line:#e2e7ee;--line2:#cbd3dd;--ink:#17212e;--dim:#57626f;--faint:#96a0ad;--accent:#0c93b3;--on-accent:#ffffff;--green:#1f9d57;--amber:#a9720f;--red:#d83544;--late-soft:#fceaec;--ring:0 0 0 1px oklch(0 0 0 / .12);--ring-hover:0 0 0 1px oklch(0 0 0 / .22)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:13.5px/1.5 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-synthesis:none}h1,h2,h3{text-wrap:balance}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.emblem{display:inline-block;flex:none;background-color:var(--accent);-webkit-mask:url(/brand/emblem.png) center/contain no-repeat;mask:url(/brand/emblem.png) center/contain no-repeat}html.theming,html.theming *{transition:background-color .32s var(--ease-out),color .32s var(--ease-out),border-color .32s var(--ease-out),fill .32s var(--ease-out),box-shadow .32s var(--ease-out)!important}html.theming .table-wrap,html.theming .table-wrap *,html.theming .batch-table-wrap,html.theming .batch-table-wrap *{transition:none!important}@media(prefers-reduced-motion:reduce){html.theming,html.theming *{transition:none!important}}.app-header{display:flex;align-items:center;gap:13px;padding:0 20px;height:52px;background:linear-gradient(#14181d,#0f1317);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}:root[data-theme=light] .app-header{background:linear-gradient(#fff,#f3f6f9)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none}.brand .emblem{width:26px;height:26px}.wordmark{font:500 13px/1 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--dim);white-space:nowrap}.wordmark b{font-weight:800;color:var(--ink);letter-spacing:.05em}.divider{width:1px;height:18px;background:var(--line2);margin:0 3px}.appname{font-size:12.5px;font-weight:600;color:var(--dim);letter-spacing:.03em}.live{width:7px;height:7px;border-radius:50%;background:var(--accent);flex:none;box-shadow:0 0 #33c9e080;animation:pulse 2.8s ease-out infinite}@keyframes pulse{0%{box-shadow:0 0 #33c9e066}70%{box-shadow:0 0 0 7px #33c9e000}to{box-shadow:0 0 #33c9e000}}.spacer{flex:1}.hint{color:var(--dim);font-size:12px}.whoami{font-size:12px;color:var(--dim);display:flex;align-items:center;gap:7px}.whoami .role{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);padding:1px 6px;border-radius:999px}nav.navbar{display:flex;padding:11px 20px;background:var(--bg);position:sticky;top:52px;z-index:4}.navpill{display:inline-flex;gap:3px;padding:4px;border-radius:13px;background:color-mix(in srgb,var(--panel) 68%,transparent);box-shadow:var(--ring);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.navpill button{background:transparent;color:var(--dim);border:0;border-radius:10px;padding:8px 15px;font-size:12.5px;font-weight:600;cursor:pointer;font-family:var(--sans);transition:color .15s var(--ease-out),background-color .15s var(--ease-out),box-shadow .15s var(--ease-out),scale .14s var(--ease-out)}.navpill button:hover{color:var(--ink)}.navpill button:active{scale:.97}.navpill button.active{color:var(--on-accent);background:var(--accent);box-shadow:0 5px 16px -7px #33c9e0bf}.navpill button:disabled{opacity:.4;cursor:not-allowed}.btn{border:0;border-radius:10px;padding:10px 14px;font:700 13px/1 var(--sans);cursor:pointer;color:var(--ink);background:var(--panel2);box-shadow:var(--ring);transition:box-shadow .15s var(--ease-out),scale .14s var(--ease-out),filter .15s var(--ease-out),color .15s var(--ease-out)}.btn:hover{box-shadow:var(--ring-hover)}.btn:active{scale:.98}.btn:disabled{opacity:.55;cursor:default}.btn.primary{background:var(--accent);color:var(--on-accent);box-shadow:0 8px 22px -8px #33c9e099}.btn.primary:hover:not(:disabled){filter:brightness(1.06);box-shadow:0 10px 28px -8px #33c9e0c7}.ghost{background:transparent;color:var(--dim);border:0;box-shadow:var(--ring);border-radius:9px;padding:8px 13px;font:600 12.5px/1 var(--sans);cursor:pointer;transition:color .15s var(--ease-out),box-shadow .15s var(--ease-out)}.ghost:hover{color:var(--ink);box-shadow:var(--ring-hover)}.icon-btn{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;cursor:pointer;color:var(--dim);background:transparent;border:0;box-shadow:var(--ring);transition:color .15s var(--ease-out),box-shadow .15s var(--ease-out)}.icon-btn:hover{color:var(--ink);box-shadow:var(--ring-hover)}.link{background:none;border:0;color:var(--dim);font-size:12px;cursor:pointer;text-decoration:underline;padding:0}.link:hover{color:var(--ink)}label.field-label{display:block;font-size:10.5px;color:var(--dim);margin:14px 0 6px;letter-spacing:.08em;text-transform:uppercase;font-weight:600}input.field,select.field,textarea.field{width:100%;padding:11px 13px;border-radius:10px;background:var(--well);border:1px solid var(--line2);color:var(--ink);font-family:var(--sans);font-size:13px;transition:border-color .15s var(--ease-out),box-shadow .15s var(--ease-out)}input.field:focus,select.field:focus,textarea.field:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #33c9e029}input.field::placeholder{color:var(--faint)}.switch{position:relative;display:inline-block;width:38px;height:22px;cursor:pointer}.switch input{position:absolute;opacity:0;width:0;height:0}.switch .track{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;background:var(--line2);transition:background-color .18s var(--ease-out)}.switch .track:before{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .18s var(--ease-out)}.switch input:checked+.track{background:var(--accent)}.switch input:checked+.track:before{transform:translate(16px)}.card{background:color-mix(in srgb,var(--panel) 88%,transparent);box-shadow:var(--ring),0 18px 50px -28px #0000008c;border-radius:16px;padding:22px 24px}.panel{background:var(--panel);box-shadow:var(--ring);border-radius:14px}.pill{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;letter-spacing:.02em;padding:2px 9px;border-radius:999px;background:var(--panel2);color:var(--dim);box-shadow:var(--ring)}.pill.ok{color:var(--green)}.pill.warn{color:var(--amber)}.pill.bad{color:var(--red)}.pill.accent{color:var(--accent)}.table-wrap{overflow-x:auto;border-radius:14px;box-shadow:var(--ring);background:var(--panel)}table.data{width:100%;border-collapse:collapse;font-size:13px}table.data th{text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--dim);font-weight:600;padding:10px 12px;border-bottom:1px solid var(--line);white-space:nowrap}table.data th.sortable{cursor:pointer}table.data th.sortable:hover{color:var(--ink)}table.data td{padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:middle}table.data tbody tr:last-child td{border-bottom:0}table.data tbody tr:hover td{background:color-mix(in srgb,var(--ink) 4%,transparent)}:root[data-theme=light] table.data tbody tr:hover td{background:#0f1e320a}.cellinput{width:100%;background:transparent;border:0;color:var(--ink);font:inherit;padding:2px 4px;border-radius:6px}.cellinput:focus{outline:none;background:var(--well);box-shadow:0 0 0 2px #33c9e04d}.cellinput.missing{background:var(--late-soft)}.meter{position:relative;height:12px;border-radius:999px;background:var(--well);box-shadow:inset 0 1px 2px #00000059,var(--ring);overflow:hidden;display:flex}:root[data-theme=light] .meter{box-shadow:inset 0 1px 2px #0000001a,var(--ring)}.meter .seg{height:100%;transition:width .6s var(--ease-out)}.meter .seg.ok{background:var(--green)}.meter .seg.warn{background:var(--amber)}.meter .seg.bad{background:var(--red)}.meter .seg.accent{background:var(--accent)}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.tile{display:flex;flex-direction:column;gap:7px;padding:20px;border-radius:16px;text-decoration:none;position:relative;background:color-mix(in srgb,var(--panel) 80%,transparent);box-shadow:var(--ring);transition:transform .18s var(--ease-out),box-shadow .18s var(--ease-out)}.tile:hover{transform:translateY(-2px);box-shadow:var(--ring-hover),0 18px 40px -22px #0000008c}.msg{font-size:12.5px;min-height:16px}.msg.ok{color:var(--green)}.msg.bad{color:var(--red)}.save-state{font-size:11.5px;color:var(--dim)}.save-state.ok{color:var(--green)}.save-state.err{color:var(--red)}.busybar{position:fixed;top:0;left:0;right:0;height:2px;z-index:100;background:linear-gradient(90deg,transparent,var(--accent),transparent);background-size:40% 100%;animation:busy 1s linear infinite}@keyframes busy{0%{background-position:-40% 0}to{background-position:140% 0}}.loader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:radial-gradient(120% 120% at 50% 40%,#101a24 0%,var(--bg) 70%);transition:opacity .45s var(--ease-out)}:root[data-theme=light] .loader{background:radial-gradient(120% 120% at 50% 40%,#e9f0f7 0%,var(--bg) 70%)}.loader.hide{opacity:0;pointer-events:none}.loader-emblem{position:relative;width:66px;height:66px;display:grid;place-items:center}.loader-emblem .mark{width:50px;height:50px;background:var(--accent);-webkit-mask:url(/brand/emblem.png) center/contain no-repeat;mask:url(/brand/emblem.png) center/contain no-repeat}.loader-emblem .ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid rgba(51,201,224,.16);border-top-color:var(--accent);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loader-word{font:500 15px/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}.loader-word b{color:var(--ink);font-weight:800}.notice{max-width:460px;margin:90px auto;text-align:center;color:var(--dim);padding:0 24px}.notice .emblem{width:44px;height:44px;margin:0 auto 18px}.notice h2{color:var(--ink);font-size:19px;margin:0 0 8px}.emblem-spin{position:relative;display:inline-block;width:15px;height:15px;flex:none;vertical-align:-3px;margin-right:6px}.emblem-spin:before{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;background:currentColor;opacity:.85;-webkit-mask:url(/brand/emblem.png) center/contain no-repeat;mask:url(/brand/emblem.png) center/contain no-repeat}.emblem-spin:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2px solid color-mix(in srgb,currentColor 24%,transparent);border-top-color:currentColor;animation:spin .8s linear infinite}@media(prefers-reduced-motion:reduce){.emblem-spin:after{animation-duration:1.8s}}.appsw{position:relative;display:inline-flex}.appsw-menu{position:absolute;top:42px;right:0;z-index:70;min-width:214px;padding:6px;border-radius:12px;background:color-mix(in srgb,var(--panel) 94%,transparent);box-shadow:var(--ring),0 22px 54px -22px #0009;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);animation:menuin .16s var(--ease-out)}@keyframes menuin{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}.appsw-item{display:flex;align-items:center;gap:10px;padding:9px 11px;border-radius:9px;text-decoration:none;color:var(--dim);font-size:13px;font-weight:600;cursor:pointer}.appsw-item:hover{background:var(--well);color:var(--ink)}.appsw-item.on{color:var(--ink)}.appsw-item svg{width:16px;height:16px;flex:none}.appsw-dot{width:7px;height:7px;border-radius:50%;background:var(--line2);flex:none}.appsw-item:hover .appsw-dot,.appsw-item.on .appsw-dot{background:var(--accent)}.appsw-item.on .appsw-dot{box-shadow:0 0 8px -1px var(--accent)}.appsw-cur{margin-left:auto;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--faint)}.appsw-sep{height:1px;background:var(--line);margin:5px 4px}@keyframes appin{0%{opacity:0;transform:scale(1.008)}to{opacity:1;transform:none}}.app-enter{animation:appin .5s var(--ease-out)}@media(prefers-reduced-motion:reduce){.app-enter,.live,.busybar,.loader-emblem .ring{animation:none}}.ar-main{width:100%;max-width:min(96vw,3000px);margin:0 auto;padding:8px 28px 50px}.table-wrap{overflow-x:auto}.table-wrap table.data{min-width:940px}.table-wrap table.data th,.table-wrap table.data td{white-space:nowrap}.master{position:relative;margin:14px 0 24px}.master:before{content:"";position:absolute;inset:-10px -8px auto -8px;height:150px;z-index:0;pointer-events:none;border-radius:18px;background:radial-gradient(54% 130% at 6% 0%,rgba(51,201,224,.11),transparent 62%),radial-gradient(46% 120% at 95% 0%,rgba(239,93,104,.05),transparent 62%)}.master-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(230px,1fr) 1.7fr;gap:34px;align-items:center;background:color-mix(in srgb,var(--panel) 72%,transparent);box-shadow:var(--ring);border-radius:18px;padding:24px 28px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--faint)}.m-total{font-size:40px;font-weight:800;letter-spacing:-.02em;margin:4px 0 2px}.m-foot{font-size:12.5px;color:var(--dim)}.m-foot .late{color:var(--red)}.legend{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:16px}.leg{display:flex;gap:8px;align-items:flex-start}.leg .dot{width:9px;height:9px;border-radius:50%;margin-top:4px;flex:none}.leg .dot.bad{background:var(--red)}.leg .dot.warn{background:var(--amber)}.leg .dot.accent{background:var(--accent)}.leg .dot.dim{background:var(--line2)}.leg-amt{font-size:14px;font-weight:700}.leg-lab{font-size:11px;color:var(--dim)}.tabs{display:flex;align-items:center;gap:6px;margin:0 0 14px;flex-wrap:wrap}.tab{background:transparent;border:0;color:var(--dim);font:600 12.5px/1 var(--sans);padding:7px 12px;border-radius:9px;cursor:pointer;display:flex;align-items:center;gap:7px;box-shadow:var(--ring);transition:color .15s var(--ease-out),box-shadow .15s var(--ease-out)}.tab:hover{color:var(--ink)}.tab.on{color:var(--on-accent);background:var(--accent);box-shadow:0 5px 16px -7px #33c9e0bf}.tab .cnt{font-size:11px;opacity:.75}th.num,td.num{text-align:right}.typetag{font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:700;padding:1px 6px;border-radius:5px;background:var(--well);color:var(--dim);box-shadow:var(--ring)}.typetag.deposit{color:var(--accent)}.typetag.balance{color:var(--amber)}tr.r-late td:first-child{box-shadow:inset 3px 0 0 var(--red)}tr.r-soon td:first-child{box-shadow:inset 3px 0 0 var(--amber)}tr.r-up td:first-child{box-shadow:inset 3px 0 #33c9e08c}.ar-foot{margin-top:14px}.mon-table{table-layout:fixed;width:max-content}.mon-table th{position:relative}.mon-table th,.mon-table td{overflow:hidden;text-overflow:ellipsis}.mon-table th:hover .resizer:after{background:var(--accent)}.mon-table .sortind{font-size:8px;color:var(--accent)}.mon-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.mon-table td.due-cell,.mon-table td.pay-cell,.mon-table td.actions,.mon-table tr.contact-row td{overflow:visible}.mon-table .due-edit{background:var(--panel);position:relative;z-index:3;border-radius:8px;box-shadow:0 0 0 1px var(--line);padding:2px 3px;width:max-content}.mon-table .due-edit .cellinput{width:122px}.pay-cell{text-align:center;white-space:nowrap}td.actions{text-align:right;white-space:nowrap}button.iconbtn{background:transparent;border:0;padding:0;margin:0 1px;color:var(--faint);cursor:pointer;border-radius:8px;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;box-shadow:none;transition:background-color .15s var(--ease-out),color .15s var(--ease-out),scale .14s var(--ease-out)}button.iconbtn:hover{background:var(--panel2);color:var(--ink);box-shadow:none}button.iconbtn:active{scale:.94}button.iconbtn.accent{color:var(--accent)}.btn.send{background:var(--green);color:#06210f}.btn.send:hover:not(:disabled){box-shadow:0 0 0 3px #4fc07938}button.iconbtn.ok{color:var(--green)}.due-cell{white-space:nowrap}button.due-text{background:transparent;border:0;color:var(--ink);font-family:var(--mono);font-size:12.5px;cursor:pointer;padding:3px 6px;margin:-3px -6px;border-radius:6px;box-shadow:none;transition:background-color .15s var(--ease-out),color .15s var(--ease-out)}button.due-text:hover{background:var(--panel2);color:var(--accent);box-shadow:none}.due-edit{display:inline-flex;align-items:center;gap:4px}.due-edit .cellinput{width:150px;font-family:var(--mono)}.due-edit .iconbtn{width:28px;height:28px}button.expand-btn{background:transparent;border:0;color:var(--faint);cursor:pointer;font-size:11px;box-shadow:none;padding:0 6px 0 0;transition:transform .16s var(--ease-out),color .15s var(--ease-out);display:inline-block}button.expand-btn:hover{color:var(--accent);box-shadow:none}button.expand-btn.open{transform:rotate(90deg);color:var(--accent)}tr.contact-row td{background:var(--well);padding:0;border-bottom:1px solid var(--line)}.contact-panel{padding:14px 18px}.contact-billing{font-size:12.5px;margin-bottom:10px}.contact-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}.contact-card{background:var(--panel);box-shadow:var(--ring);border-radius:10px;padding:11px 13px}.cc-name{font-weight:700;font-size:13px;margin-bottom:6px}.cc-row{font-size:12.5px;margin-top:3px}.contact-panel .clab{display:inline-block;min-width:52px;color:var(--dim);font-size:10.5px;text-transform:uppercase;letter-spacing:.06em}.contact-panel a{color:var(--accent);text-decoration:none}.contact-panel a:hover{text-decoration:underline}.warnline{color:var(--amber);font-size:12.5px;margin-top:12px}pre.draft-body{background:var(--well);border:1px solid var(--line);border-radius:8px;padding:12px 14px;white-space:pre-wrap;font:12.5px/1.55 var(--sans);max-height:320px;overflow:auto;margin:4px 0 0}.modal-card .field>div:not(.lbl){font-size:13px}.single-bar{display:flex;align-items:center;gap:10px;padding-top:10px;flex-wrap:wrap}.btn.sm{padding:6px 11px;font-size:12px}.vwarn{color:var(--red);font-weight:600;font-size:12px}.cust-inline{display:inline-flex;gap:6px;flex-wrap:wrap}.live-on{color:var(--red);font-weight:700}tr.is-written td{background:color-mix(in srgb,var(--green) 7%,transparent)}tr.is-written td:first-child{box-shadow:inset 3px 0 0 var(--green)}.review{max-width:760px;margin:22px 0 0;padding:24px 26px;border-radius:16px;background:color-mix(in srgb,var(--panel) 84%,transparent);box-shadow:var(--ring),0 18px 50px -28px #00000080}.review-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.review-head h2{margin:0;font-size:19px;font-weight:800}.cust-block{padding:14px 0 4px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:16px}.cust-mapped{font-size:14px;display:flex;align-items:center;gap:8px}.cust-choose{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px 22px}.rf label{display:block;font-size:10.5px;color:var(--dim);text-transform:uppercase;letter-spacing:.08em;font-weight:600;margin-bottom:5px}.rf-v{font-size:13.5px;color:var(--ink)}.rf .field{padding:8px 11px}.push-bar{display:flex;align-items:center;gap:11px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.review.written{max-width:520px;text-align:center;padding:40px 30px}.written-banner{font-size:15px;font-weight:800;letter-spacing:.08em;color:var(--green);margin-bottom:10px}.batch-wrap{max-width:none;margin:0;padding:10px 22px 60px}.batch-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-top:8px}.batch-bar.actions{margin-top:10px}.field.days{width:72px;text-align:right;font-family:var(--mono);padding:8px 10px}.field.ignore{min-width:260px;flex:1;max-width:440px}.btn.live{background:var(--green);color:#052012;box-shadow:0 0 0 1px #4fc0798c,0 0 16px -2px #4fc0798c}.btn.live:before{content:"● ";font-size:9px;vertical-align:1px}.batch-empty{max-width:520px;margin:40px auto;text-align:center;color:var(--dim)}.batch-empty .emblem{display:inline-block;width:40px;height:40px;background-color:var(--accent);opacity:.85;-webkit-mask:url(/brand/emblem.png) center/contain no-repeat;mask:url(/brand/emblem.png) center/contain no-repeat}.batch-empty h3{margin:14px 0 6px;font-size:16px;color:var(--ink);font-weight:800}.batch-empty p{font-size:13px;line-height:1.6;margin:0}.batch-table-wrap{overflow-x:auto;margin-top:6px;border-radius:12px;box-shadow:var(--ring)}.batch-table{table-layout:fixed;width:max-content;font-size:12.5px}.batch-table th,.batch-table td{padding:8px 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.batch-table td{vertical-align:top}.batch-table .sortind{font-size:8px;color:var(--accent)}.batch-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.batch-table th{position:relative}.batch-table .custcell{min-width:0}.batch-table td .cellinput,.batch-table td select{min-width:0;max-width:100%}.batch-table td.wrap{white-space:normal;overflow:hidden;text-overflow:clip;line-height:1.4}.resizer{position:absolute;top:0;right:0;width:11px;height:100%;cursor:col-resize;-webkit-user-select:none;user-select:none;z-index:2}.resizer:after{content:"";position:absolute;top:24%;right:4px;width:2px;height:52%;background:var(--line2);border-radius:2px;transition:background-color .15s var(--ease-out)}.batch-table th:hover .resizer:after{background:var(--accent)}.colreset{color:var(--dim);font-size:11.5px;background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;font-weight:500;box-shadow:none}.colreset:hover{color:var(--ink);box-shadow:none}.cellinput{width:100%;min-width:0;max-width:100%;padding:5px 7px;font-size:12px;background:var(--well);border:1px solid var(--line);border-radius:6px;color:var(--ink);font-family:var(--sans);transition:border-color .15s var(--ease-out),box-shadow .15s var(--ease-out)}.cellinput:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #33c9e024}.cellinput.missing{border-color:var(--red);background:color-mix(in srgb,var(--red) 12%,var(--well))}input[type=date].cellinput{font-family:var(--mono)}select.cellinput.netanchor{margin-top:4px;font-size:11px;color:var(--dim)}.custcell{display:flex;flex-direction:column;gap:5px;min-width:170px}.custname{font-weight:600;white-space:normal}.custname.mapped{color:var(--green)}.custname.proposed{color:var(--amber)}.cust-actions{display:flex;gap:6px;flex-wrap:wrap}select.cand{max-width:210px}.batch-table tr.dropped td{opacity:.4;text-decoration:line-through}.batch-table tr.pushed td{background:color-mix(in srgb,var(--green) 7%,transparent);opacity:.7}.batch-table tr.pushed td:first-child{box-shadow:inset 3px 0 0 var(--green)}.batch-table tr.pushed td.nostrike{opacity:1}.pill.dim{color:var(--dim)}button.drop{background:transparent;border:0;color:var(--faint);cursor:pointer;font-size:13px;padding:4px 6px;border-radius:6px;box-shadow:none;transition:color .15s var(--ease-out),background-color .15s var(--ease-out)}button.drop:hover{color:var(--red);background:var(--panel2);box-shadow:none}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;justify-content:center;background:#06090db8;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.modal-card{background:var(--panel);box-shadow:var(--ring),0 24px 70px -24px #000000bf;border-radius:16px;padding:22px 24px;width:560px;max-width:94vw;max-height:86vh;overflow:auto;animation:modalin .2s var(--ease-out) both}@keyframes modalin{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:none}}.modal-card h3{margin:0 0 14px;font-size:16px;font-weight:800}.modal-card .field{margin-bottom:12px}.modal-card .field .lbl{color:var(--dim);font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;margin-bottom:5px}.contactrow{display:flex;gap:8px;align-items:center;padding:6px 0;font-size:13px}.toggle-row{display:flex;gap:8px;align-items:center;font-size:12.5px;color:var(--dim);cursor:pointer;margin-top:4px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}
