:root{--bg:#0d0e10;--surface:#141619;--surface-2:#1b1e23;--surface-3:#23272e;--line:#2a2f37;--line-soft:#21252b;--text:#e9eaed;--text-dim:#9aa1ac;--text-faint:#646b76;--accent:#c8a45c;--accent-hi:#e2c074;--accent-dim:#7a6536;--accent-fill:#c8a45c;--accent-fill-hi:#e2c074;--st-draft:#7a828f;--st-sent:#c8a45c;--st-confirmed:#5b8dd1;--st-paid:#5fae7e;--t-est:#8a93a0;--t-so:#5b8dd1;--t-po:#c8a45c;--t-inv:#5fae7e;--mono:"JetBrains Mono",ui-monospace,monospace;--body:"Barlow",system-ui,sans-serif;--display:"Bebas Neue",sans-serif;--r:3px}[data-theme=light]{--bg:#f3f1ec;--surface:#fff;--surface-2:#f6f4ef;--surface-3:#ece9e2;--line:#dcd7cd;--line-soft:#e7e3da;--text:#1b1d21;--text-dim:#54595f;--text-faint:#8c9099;--accent:#8a6a1f;--accent-hi:#6c5215;--accent-dim:#cbb888;--accent-fill:#c8a45c;--accent-fill-hi:#d8b569;--st-draft:#6b727c;--st-sent:#8a6a1f;--st-confirmed:#3f6fae;--st-paid:#3f8a5e}[data-theme=light] body:before{opacity:.42}[data-theme=light] aside{background:linear-gradient(180deg,#efece5,#e9e6de)}[data-theme=light] .topbar{background:hsla(0,0%,100%,.7)}[data-theme=light] .drawer{box-shadow:-24px 0 50px rgba(60,50,20,.16)}[data-theme=light] .b-EST{color:#5b626c;border-color:#d2d6db;background:#eef0f2}[data-theme=light] .b-SO{color:#3f6fae;border-color:#bcd2ea;background:#e9f0f9}[data-theme=light] .b-PO{color:#8a6a1f;border-color:#e0cfa0;background:#f6efdd}[data-theme=light] .b-INV{color:#3f8a5e;border-color:#bcdfca;background:#e6f3ec}[data-theme=light] .p-draft{color:#5b626c;background:#edeef0}[data-theme=light] .p-sent{color:#8a6a1f;background:#f6efdd}[data-theme=light] .p-confirmed{color:#3f6fae;background:#e9f0f9}[data-theme=light] .p-paid{color:#3f8a5e;background:#e6f3ec}[data-theme=light] .note-tag{color:#8a6a1f;border-color:#e0cfa0;background:#f6efdd}[data-theme=light] .nij{color:#8a6a1f;border-color:#cbb888}[data-theme=light] .lc.cur{color:#6c5215;border-color:#cbb888;background:#f6efdd}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--body);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;overflow:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background-image:linear-gradient(var(--line-soft) 1px,transparent 1px),linear-gradient(90deg,var(--line-soft) 1px,transparent 1px);background-size:48px 48px;opacity:.2;-webkit-mask-image:radial-gradient(ellipse 90% 70% at 50% 0,#000 0,transparent 75%);mask-image:radial-gradient(ellipse 90% 70% at 50% 0,#000 0,transparent 75%)}.app{position:relative;z-index:1;display:grid;grid-template-columns:236px 1fr;height:100vh}aside{background:linear-gradient(180deg,#101216,#0d0e10);border-right:1px solid var(--line);display:flex;flex-direction:column}.brand{padding:20px 20px 18px;border-bottom:1px solid var(--line-soft)}.brand .mark{display:flex;align-items:center;gap:10px}.brand .glyph{width:30px;height:30px;border:1.5px solid var(--accent);border-radius:2px;display:grid;place-items:center;color:var(--accent);font-family:var(--display);font-size:20px;line-height:1;flex:none;box-shadow:inset 0 0 12px rgba(200,164,92,.18)}.brand .word{font-family:var(--display);font-size:23px;letter-spacing:.06em;line-height:.95}.brand .word b{color:var(--accent);font-weight:400}.brand .sub{margin-top:9px;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-faint)}nav{padding:14px 12px;flex:1 1;overflow:auto}.nav-label{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--text-faint);padding:14px 10px 7px}.nav-item{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:var(--r);color:var(--text-dim);cursor:pointer;font-weight:500;letter-spacing:.01em;border-left:2px solid transparent;transition:.15s;-webkit-user-select:none;-moz-user-select:none;user-select:none;margin-bottom:2px}.nav-item svg{width:17px;height:17px;flex:none;stroke:currentColor;fill:none;stroke-width:1.8}.nav-item:hover{background:var(--surface-2);color:var(--text)}.nav-item.active{background:var(--surface-2);color:var(--accent-hi);border-left-color:var(--accent)}.nav-item .count{margin-left:auto;font-family:var(--mono);font-size:11px;color:var(--text-faint)}.nav-item.active .count{color:var(--accent)}.tenant{border-top:1px solid var(--line-soft);padding:14px 18px;display:flex;align-items:center;gap:11px}.tenant .av{width:30px;height:30px;border-radius:2px;background:var(--surface-3);display:grid;place-items:center;color:var(--accent);font-family:var(--display);font-size:16px;flex:none}.tenant .who{font-size:12.5px;font-weight:600;line-height:1.2}.tenant .role{font-size:10.5px;color:var(--text-faint);letter-spacing:.04em}main{display:flex;flex-direction:column;min-width:0;overflow:hidden}.topbar{height:60px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:18px;padding:0 26px;background:rgba(20,22,25,.6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);flex:none}.topbar h1{font-family:var(--display);font-size:26px;letter-spacing:.04em;font-weight:400}.search{margin-left:6px;flex:1 1;max-width:360px;display:flex;align-items:center;gap:9px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:8px 12px;color:var(--text-faint)}.search svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.8}.search input{background:none;border:none;outline:none;color:var(--text);font-family:var(--body);font-size:13px;width:100%}.search input::placeholder{color:var(--text-faint)}.btn{font-family:var(--body);font-weight:600;font-size:13px;letter-spacing:.02em;border-radius:var(--r);padding:9px 15px;cursor:pointer;border:1px solid var(--line);background:var(--surface-2);color:var(--text);transition:.15s;display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.btn:hover{border-color:var(--accent-dim);color:var(--accent-hi)}.btn.primary{background:var(--accent-fill);color:#1a1408;border-color:var(--accent-fill)}.btn.primary:hover{background:var(--accent-fill-hi);color:#1a1408;border-color:var(--accent-fill-hi)}.btn svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2}.btn.sm{padding:6px 11px;font-size:12px}.btn.xs{padding:3px 8px;font-size:11px;font-weight:600}.content{flex:1 1;overflow:auto;padding:26px}.view{display:none;animation:fade .35s ease both}.view.active{display:block}@keyframes fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.tabs{display:flex;gap:4px;margin-bottom:18px;border-bottom:1px solid var(--line);padding-bottom:0}.tab{padding:8px 15px;cursor:pointer;color:var(--text-dim);font-weight:600;font-size:13px;letter-spacing:.03em;border-bottom:2px solid transparent;margin-bottom:-1px;transition:.15s}.tab:hover{color:var(--text)}.tab.active{color:var(--accent-hi);border-bottom-color:var(--accent)}.tab .n{font-family:var(--mono);font-size:11px;color:var(--text-faint);margin-left:6px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}table{width:100%;border-collapse:collapse}thead th{text-align:left;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);font-weight:600;padding:11px 16px;border-bottom:1px solid var(--line);background:var(--surface-2);white-space:nowrap}tbody td{padding:13px 16px;border-bottom:1px solid var(--line-soft);font-size:13.5px;vertical-align:middle}tbody tr:last-child td{border-bottom:none}tbody tr{cursor:pointer;transition:.12s;border-left:2px solid transparent}tbody tr:hover{background:var(--surface-2);border-left-color:var(--accent)}.num{font-family:var(--mono);font-weight:500;letter-spacing:-.02em}.money,.right{text-align:right}.money{font-family:var(--mono);font-weight:500;white-space:nowrap}.dim{color:var(--text-dim)}.faint{color:var(--text-faint)}.badge{font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.06em;padding:3px 7px;border-radius:2px;border:1px solid;white-space:nowrap}.b-EST{color:var(--t-est);border-color:#3a414b;background:#23272e}.b-SO{color:var(--t-so);border-color:#2f4860;background:#16202b}.b-PO{color:var(--t-po);border-color:#5a4c2c;background:#231d10}.b-INV{color:var(--t-inv);border-color:#2d4a39;background:#13211a}.pill{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;letter-spacing:.02em;padding:3px 9px 3px 7px;border-radius:20px;text-transform:capitalize}.pill .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.p-draft{color:var(--st-draft);background:#22262c}.p-sent{color:var(--st-sent);background:#231d10}.p-confirmed{color:var(--st-confirmed);background:#16202b}.p-paid{color:var(--st-paid);background:#13211a}.nij{font-family:var(--mono);font-size:10.5px;font-weight:600;color:var(--accent);border:1px solid var(--accent-dim);padding:1px 6px;border-radius:2px}.scrim{position:fixed;inset:0;background:rgba(0,0,0,.55);opacity:0;pointer-events:none;transition:.25s;z-index:40}.scrim.open{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;right:0;height:100vh;width:560px;max-width:94vw;z-index:50;background:var(--surface);border-left:1px solid var(--line);transform:translateX(100%);transition:transform .28s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;box-shadow:-30px 0 60px rgba(0,0,0,.5)}.drawer.open{transform:none}.dh{padding:22px 26px 18px;border-bottom:1px solid var(--line)}.dh-top{display:flex;align-items:center;gap:12px}.dh-top .dnum{font-family:var(--mono);font-size:20px;font-weight:600;letter-spacing:-.01em}.dh-close{margin-left:auto;background:none;border:1px solid var(--line);color:var(--text-dim);width:30px;height:30px;border-radius:var(--r);cursor:pointer;font-size:16px;line-height:1;transition:.15s}.dh-close:hover{border-color:var(--accent-dim);color:var(--accent-hi)}.dh-meta{display:flex;gap:26px;margin-top:16px}.dh-meta .lbl{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--text-faint);margin-bottom:3px}.dh-meta .val{font-size:14px;font-weight:600}.dh-meta .val small{display:block;font-weight:400;color:var(--text-dim);font-size:12px}.lifecycle{display:flex;align-items:center;gap:0;padding:14px 26px;background:var(--surface-2);border-bottom:1px solid var(--line)}.lc{font-family:var(--mono);font-size:11.5px;font-weight:500;color:var(--text-faint);padding:4px 9px;border:1px solid var(--line);border-radius:2px;cursor:pointer;transition:.15s;background:var(--surface)}.lc:hover{color:var(--text);border-color:var(--accent-dim)}.lc.cur{color:var(--accent-hi);border-color:var(--accent);background:#231d10}.lc-arrow{color:var(--text-faint);padding:0 8px;font-size:13px}.lc-branch{display:flex;flex-direction:column;gap:6px}.dbody{flex:1 1;overflow:auto;padding:22px 26px}.sec-label{font-family:var(--display);font-size:16px;letter-spacing:.06em;color:var(--text-dim);margin-bottom:10px}.lines{width:100%;border-collapse:collapse;margin-bottom:6px}.lines th{text-align:left;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);font-weight:600;padding:0 0 9px}.lines td.r,.lines th.r{text-align:right}.lines td{padding:11px 0;border-top:1px solid var(--line-soft);vertical-align:top;font-size:13px}.lines tr:first-child td{border-top:1px solid var(--line)}.ld-sku{font-family:var(--mono);font-size:11px;color:var(--text-faint);letter-spacing:-.01em}.ld-name{font-weight:600;margin-top:1px}.note-tag{display:inline-block;margin-top:5px;font-size:10.5px;font-weight:600;letter-spacing:.04em;color:var(--accent);border:1px solid var(--accent-dim);background:#231d10;padding:1px 7px;border-radius:2px}.retail-aside{display:block;font-size:11px;color:var(--text-faint);margin-top:2px}.qty,.retail-aside{font-family:var(--mono)}.qty{color:var(--text-dim)}.lines tfoot td{border-top:1px solid var(--line);padding-top:13px;font-weight:700;font-size:14px}.lines tfoot .money{font-size:15px;color:var(--accent-hi)}.totnote{font-size:11px;color:var(--text-faint);margin-top:8px;font-style:italic}.dfoot{padding:16px 26px;border-top:1px solid var(--line);display:flex;gap:10px;background:var(--surface-2)}.grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:20px}.card h3{font-family:var(--display);font-size:18px;letter-spacing:.05em;font-weight:400;margin-bottom:4px}.card p.hint{color:var(--text-faint);font-size:12.5px;margin-bottom:16px}.seqrow{display:grid;grid-template-columns:128px 1fr 54px 52px 124px;grid-gap:12px;gap:12px;align-items:center;padding:11px 0;border-top:1px solid var(--line-soft)}.seqrow.head{color:var(--text-faint);font-size:10px;letter-spacing:.12em;text-transform:uppercase;border-top:none}.seqrow:first-of-type{border-top:1px solid var(--line)}.seqrow.head:first-of-type{border-top:none}.seqrow .field{background:var(--surface-2);border:1px solid var(--line);border-radius:2px;padding:6px 10px;color:var(--text);width:100%}.seqrow .field,.seqrow .preview{font-family:var(--mono);font-size:13px}.seqrow .preview{color:var(--accent);text-align:right;white-space:nowrap}.yr{display:inline-flex;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.yr .track{width:32px;height:18px;border-radius:10px;background:var(--surface-3);border:1px solid var(--line);position:relative;transition:.15s}.yr .knob{position:absolute;top:1px;left:1px;width:14px;height:14px;border-radius:50%;background:var(--text-faint);transition:.15s}.yr.on .track{background:var(--accent-fill);border-color:var(--accent-fill)}.yr.on .knob{left:16px;background:#1a1408}.agcard{display:flex;flex-direction:column;gap:4px}.ag-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:16px;gap:16px}.ag-grid .card{cursor:pointer;transition:.15s}.ag-grid .card:hover{border-color:var(--accent-dim)}.ag-name{font-weight:700;font-size:15px}.ag-loc{color:var(--text-dim);font-size:12.5px}.ag-meta{margin-top:10px;display:flex;gap:18px;font-size:12px}.ag-meta b{font-family:var(--mono);color:var(--accent)}.attn{margin-top:10px;padding-top:10px;border-top:1px solid var(--line-soft);font-size:12.5px}.attn .lbl{font-size:9.5px;letter-spacing:.16em;text-transform:uppercase}.attn .lbl,.proto-tag{color:var(--text-faint)}.proto-tag{position:fixed;bottom:14px;left:18px;z-index:60;font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;background:var(--surface);border:1px solid var(--line);padding:5px 10px;border-radius:20px}.proto-tag b{color:var(--accent)}.form-section{padding:18px 20px;border-bottom:1px solid var(--line-soft)}.form-section:last-child{border-bottom:none}.form-label{display:block;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);margin-bottom:8px}.form-row{display:flex;gap:16px;flex-wrap:wrap}.fld{display:flex;flex-direction:column;gap:0}.input{background:var(--surface-2);border:1px solid var(--line);border-radius:2px;padding:8px 11px;font-family:var(--body);font-size:13px;color:var(--text);width:100%}.input:focus{outline:none;border-color:var(--accent-dim)}.input:disabled{opacity:.5;cursor:not-allowed}.input.mono{font-family:var(--mono)}.input.r{text-align:right}textarea.input{resize:vertical;min-height:38px}.seg{display:inline-flex;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}.seg button{background:var(--surface-2);border:none;border-right:1px solid var(--line);color:var(--text-dim);padding:8px 18px;cursor:pointer;font-family:var(--body);font-weight:600;font-size:13px;letter-spacing:.02em;transition:.12s}.seg button:last-child{border-right:none}.seg button:hover{color:var(--text)}.seg button.on{background:var(--accent-fill);color:#1a1408}.le-head,.le-row{display:grid;grid-template-columns:26px 1.25fr 104px 1.5fr 58px 92px 78px 100px 28px;grid-gap:8px;gap:8px;align-items:center}.le-head{padding:0 0 8px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint)}.le-head .r{text-align:right}.le-row{padding:5px 0;transition:opacity .12s}.le-row.dragging{opacity:.35}.le-drag{display:grid;place-items:center;cursor:-webkit-grab;cursor:grab;height:30px}.le-drag:active{cursor:-webkit-grabbing;cursor:grabbing}.le-drag svg{fill:var(--text-faint);transition:.12s}.le-drag:hover svg{fill:var(--accent)}.le-del{background:none;border:1px solid var(--line);color:var(--text-faint);width:28px;height:28px;border-radius:2px;cursor:pointer;font-size:15px;line-height:1;transition:.12s}.le-del:hover{border-color:#7a3a3a;color:#d98a8a}.role-chip{border:1px solid var(--accent-dim);color:var(--accent-hi);font-size:10.5px;letter-spacing:.04em}.resp-flag,.role-chip{display:inline-block;padding:2px 8px;border-radius:2px;white-space:nowrap}.resp-flag{font-size:10px;letter-spacing:.07em;text-transform:uppercase}.resp-flag.poc{background:var(--accent-fill);color:#1a1408;border:1px solid var(--accent-fill)}.resp-flag.rcv{background:transparent;color:#9fc4d4;border:1px solid #3f5e6c}[data-theme=light] .resp-flag.rcv{color:#3a6173;border-color:#9fc0cd}.role-pick{padding:6px 12px;border:1px solid var(--line);background:transparent;color:var(--dim);border-radius:2px;font-family:var(--body);font-size:12px;cursor:pointer;transition:.12s}.role-pick:hover{border-color:var(--accent-dim);color:var(--accent-hi)}.role-pick.on{background:var(--accent-fill);color:#1a1408;border-color:var(--accent-fill);font-weight:600}.agcard-link{text-decoration:none;color:inherit;display:block;cursor:pointer}.agcard-link:hover{border-color:var(--accent-dim)}.dept-card{border:1px solid var(--line);border-radius:3px;padding:10px 12px;min-width:190px;background:var(--surface-1)}.link{color:var(--accent-hi);text-decoration:none}.link:hover{text-decoration:underline}.edit-tab{position:absolute;left:-34px;top:120px;writing-mode:vertical-rl;background:var(--accent-fill);color:#1a1408;padding:14px 8px;border-radius:5px 0 0 5px;font-size:11px;letter-spacing:.18em;font-weight:700;cursor:pointer;z-index:51;-webkit-user-select:none;-moz-user-select:none;user-select:none;box-shadow:-3px 2px 8px rgba(0,0,0,.35);transition:left .15s,background .15s}.edit-tab:hover{background:var(--accent-fill-hi);left:-40px}.drawer.editing{width:100vw;max-width:100vw}.dt-toolbar{display:flex;justify-content:flex-end;margin-bottom:10px}.dt-cols{position:relative}.dt-menu-scrim{position:fixed;inset:0;z-index:30}.dt-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:31;min-width:220px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:0 12px 32px rgba(0,0,0,.4);padding:6px}.dt-menu-head{display:flex;justify-content:space-between;align-items:center;padding:6px 8px 8px;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);border-bottom:1px solid var(--line-soft);margin-bottom:4px}.dt-reset{background:none;border:none;color:var(--accent-hi);font-size:11px;cursor:pointer;letter-spacing:.04em}.dt-reset:hover{text-decoration:underline}.dt-menu-item{display:flex;align-items:center;gap:6px;padding:4px 6px;border-radius:3px;transition:background .12s}.dt-menu-item:hover{background:var(--surface-2)}.dt-menu-item.dragging{opacity:.4}.dt-menu-item label{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer;flex:1 1;color:var(--text)}.dt-grip{display:grid;place-items:center;cursor:-webkit-grab;cursor:grab;padding:2px}.dt-grip:active{cursor:-webkit-grabbing;cursor:grabbing}.dt-grip svg{fill:var(--text-faint)}.dt-grip:hover svg{fill:var(--accent)}.dt-selbar{display:flex;align-items:center;gap:12px;margin-bottom:10px;padding:8px 12px;border:1px solid var(--accent-dim);background:var(--surface-2);border-radius:var(--r)}.dt-selcount{font-size:12.5px;font-weight:600;color:var(--accent-hi);letter-spacing:.02em}.dt-selactions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dt-checkcell{width:34px;text-align:center;padding-left:10px;padding-right:0}.dt-checkcell input{cursor:pointer;accent-color:var(--accent-fill)}tbody tr.dt-row-selected{background:var(--surface-2);border-left-color:var(--accent-hi)}.num-edit{margin-left:10px;background:none;border:1px solid var(--line);color:var(--text-faint);font-size:10px;letter-spacing:.08em;text-transform:uppercase;padding:3px 7px;border-radius:3px;cursor:pointer;vertical-align:middle;transition:.12s}.num-edit:hover{border-color:var(--accent-dim);color:var(--accent-hi)}