:root{--bg: #ecedef;--panel: #ffffff;--panel-2: #f6f6f8;--line: #d6d9de;--line-strong: #b7bcc4;--ink: #23272e;--ink-2: #4a505b;--ink-3: #737a86;--accent: #393f4a;--brand: #393f4a;--accent-ink: #ffffff;--accent-soft: #e3e6eb;--travertine: #b88a4a;--trav-soft: #f4ebdd;--bad: #a8402f;--bad-soft: #f6e1dc;--good: #33704a;--good-soft: #dfeee3;--warn: #9a6a12;--warn-soft: #f7ecd2;--radius: 6px;--side: 212px;--font: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--font-cond: "IBM Plex Sans Condensed", "IBM Plex Sans", system-ui, sans-serif;color-scheme:light}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);font:14px/1.45 var(--font);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{margin:0;font-weight:600;letter-spacing:-.01em}h1{font-size:22px}h2{font-size:16px}h3{font-size:14px}p{margin:0 0 8px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.shell{display:grid;grid-template-columns:var(--side) minmax(0,1fr);min-height:100vh}.shell>div{min-width:0}.side{background:#2a2f37;color:#d3d7de;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;padding:18px 12px;gap:2px;overflow-y:auto}.brand{display:block;padding:2px 8px 16px;border-bottom:1px solid #3a404a;margin-bottom:4px}.brand img{display:block;width:100%;max-width:156px;height:auto;margin:0 auto}.brand small{display:block;text-align:center;color:#9aa1ad;font-size:11px;margin-top:8px;letter-spacing:.04em}.nav-group{margin:14px 8px 4px;font-size:12px;color:#9aa1ad}.side a{color:#d3d7de;padding:7px 10px;border-radius:5px;display:flex;justify-content:space-between;align-items:center;font-size:14px}.side a:hover{background:#343a44;text-decoration:none}.side a.active{background:#444b57;color:#fff}.side a .count{font-size:12px;color:#a7adb8}.side .foot{margin-top:auto;padding:12px 8px 0;font-size:12px;color:#9aa1ad}.side .foot button{color:#d3d7de}.main{min-width:0;padding:22px 28px 60px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px;flex-wrap:wrap}.page-head .sub{color:var(--ink-3);font-size:13px;margin-top:4px}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.topbar-mobile{display:none}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius)}.panel+.panel,.grid+.panel,.panel+.grid{margin-top:16px}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--line)}.panel-body{padding:16px}.panel-body.tight{padding:0}.grid{display:grid;gap:16px}.grid.two{grid-template-columns:1fr 1fr}.grid.three{grid-template-columns:repeat(3,1fr)}.grid.side-r{grid-template-columns:minmax(0,1fr) 340px;align-items:start}button,.btn{font:inherit;font-size:14px;cursor:pointer;border-radius:5px;padding:7px 12px;border:1px solid var(--line-strong);background:var(--panel);color:var(--ink);display:inline-flex;align-items:center;gap:6px;white-space:nowrap;line-height:1.2}button:hover,.btn:hover{border-color:var(--ink-3);text-decoration:none}button.primary,.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}button.primary:hover{background:#264c5a}button.danger{color:var(--bad);border-color:#d9b0a8}button.primary.danger{background:var(--bad);border-color:var(--bad);color:#fff}button.primary.danger:hover:not(:disabled){filter:brightness(1.08)}button.ghost{border-color:transparent;background:transparent}button.ghost:hover{background:var(--panel-2)}button.sm{padding:4px 8px;font-size:13px}button:disabled{opacity:.5;cursor:default}button.link{border:0;background:none;padding:0;color:var(--accent)}input,select,textarea{font:inherit;font-size:14px;color:var(--ink);background:#fff;border:1px solid var(--line-strong);border-radius:5px;padding:6px 8px;min-width:0}input[type=number]{text-align:right}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}textarea{width:100%;min-height:70px;resize:vertical}input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent)}.field{display:flex;flex-direction:column;gap:4px}.field>span{font-size:12px;color:var(--ink-2)}.field input,.field select,.field textarea{width:100%}.form{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px 14px}.form .wide{grid-column:1 / -1}.check{display:inline-flex;gap:8px;align-items:center;font-size:14px}.search{width:260px}.table-wrap{overflow:auto;max-width:100%}.table-wrap.tall{max-height:calc(100vh - 220px)}table.t{width:100%;border-collapse:separate;border-spacing:0;font-size:13.5px}.t th{position:sticky;top:0;z-index:2;background:var(--panel-2);text-align:left;font:600 12.5px/1.25 var(--font-cond);color:var(--ink-2);padding:8px 10px;border-bottom:1px solid var(--line-strong);white-space:nowrap}.t th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.t th.sortable:hover{color:var(--ink)}.t td{padding:6px 10px;border-bottom:1px solid var(--line);vertical-align:middle}.t tr:hover td{background:#f8fafa}.t tr.click{cursor:pointer}.t .num{text-align:right;white-space:nowrap}.t .muted{color:var(--ink-3)}.t tfoot td{font-weight:600;background:var(--panel-2);border-top:1px solid var(--line-strong);position:sticky;bottom:0}.t tr.group td{background:var(--panel-2);font-weight:600;font-size:13px;padding-top:10px}.t input{padding:3px 6px;font-size:13.5px}.t input.qty{width:70px}.t input.money{width:90px}.t tr.dim td{color:var(--ink-3)}.t tr.has-qty td{background:#f3f8f9}.set{color:#7c5a27;font-weight:600}.guide{color:var(--ink-3)}.below{color:var(--bad)!important;font-weight:600}.cell-warn{background:var(--bad-soft)!important}.badge{display:inline-block;font-size:12px;padding:2px 8px;border-radius:99px;background:var(--panel-2);color:var(--ink-2);border:1px solid var(--line);white-space:nowrap}.badge.s-draft{background:#eef0f1}.badge.s-sent,.badge.s-confirmed,.badge.s-in_production,.badge.s-ready_to_ship,.badge.s-forwarder_allocated{background:var(--accent-soft);color:var(--accent);border-color:#c6cbd3}.badge.s-shipped{background:#e3e6f6;color:#3d4b8f;border-color:#c7cdea}.badge.s-arrived{background:var(--warn-soft);color:var(--warn);border-color:#e7d3a2}.badge.s-received{background:var(--good-soft);color:var(--good);border-color:#bcd9c4}.badge.s-closed{background:#fff;color:var(--ink-3)}.badge.s-cancelled{background:var(--bad-soft);color:var(--bad)}.badge.bad{background:var(--bad-soft);color:var(--bad);border-color:#e5bdb4}.badge.good{background:var(--good-soft);color:var(--good);border-color:#bcd9c4}.badge.warn{background:var(--warn-soft);color:var(--warn);border-color:#e7d3a2}.journey{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:0;margin:4px 0 2px}.journey .step{position:relative;padding:22px 3px 0;font-size:12px;line-height:1.25;color:var(--ink-3);text-align:center}.journey .step:before{content:"";position:absolute;top:7px;left:0;right:0;height:3px;background:var(--line)}.journey .step:first-child:before{left:50%}.journey .step:last-child:before{right:50%}.journey .step:after{content:"";position:absolute;top:2px;left:calc(50% - 7px);width:14px;height:14px;border-radius:50%;background:var(--panel);border:3px solid var(--line-strong)}.journey .step.done:before{background:var(--accent)}.journey .step.done:after{background:var(--accent);border-color:var(--accent)}.journey .step.now{color:var(--ink);font-weight:600}.journey .step.now:after{background:#fff;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.journey .step small{display:block;font-weight:400;color:var(--ink-3)}.figs{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}.fig{padding:12px 16px;border-right:1px solid var(--line)}.fig:last-child{border-right:0}.fig span{display:block;font-size:12.5px;color:var(--ink-3)}.fig b{font-size:20px;font-weight:600}.fig small{color:var(--ink-3);font-size:12px}.fig.link{cursor:pointer}.fig.link:hover{background:var(--panel-2)}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin-bottom:16px;flex-wrap:wrap}.tabs button{border:0;border-bottom:2px solid transparent;border-radius:0;background:none;padding:8px 12px;color:var(--ink-2)}.tabs button.on{border-bottom-color:var(--accent);color:var(--ink);font-weight:600}.filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line)}.empty{padding:32px;text-align:center;color:var(--ink-3)}.note{font-size:13px;color:var(--ink-3)}.kv{display:grid;grid-template-columns:max-content 1fr;gap:6px 16px;font-size:14px}.kv dt{color:var(--ink-3)}.kv dd{margin:0}.spacer{flex:1}.right{text-align:right}.nowrap{white-space:nowrap}.mt{margin-top:16px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.err{color:var(--bad)}.callout{padding:10px 14px;border-radius:var(--radius);background:var(--warn-soft);border:1px solid #e7d3a2;font-size:13.5px}.callout.info{background:var(--accent-soft);border-color:#c6cbd3}.callout.bad{background:var(--bad-soft);border-color:#e5bdb4}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:var(--ink);color:#fff;padding:10px 16px;border-radius:6px;z-index:100;font-size:14px;max-width:90vw}.toast.bad{background:var(--bad)}.modal-back{position:fixed;inset:0;background:#22272b73;z-index:50;display:grid;place-items:center;padding:16px}.modal{background:var(--panel);border-radius:8px;width:min(720px,100%);max-height:calc(100vh - 32px);display:flex;flex-direction:column}.modal.wide{width:min(1100px,100%)}.modal-head{padding:14px 18px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.modal-body{padding:18px;overflow:auto}.modal-foot{padding:12px 18px;border-top:1px solid var(--line);display:flex;justify-content:flex-end;gap:8px}.login{min-height:100vh;display:grid;place-items:center;padding:16px}.login .panel{width:min(380px,100%);padding:28px}.login .brand{padding:0 0 18px;border-bottom:0}.login .brand img{max-width:210px}.login .brand small{color:var(--ink-3)}.count-list .item{display:grid;grid-template-columns:1fr 110px;gap:10px;align-items:center;padding:10px 14px;border-bottom:1px solid var(--line)}.count-list .item input{font-size:18px;padding:8px;width:100%;text-align:right}.count-list .item.done{background:var(--good-soft)}.count-list .meta{font-size:12.5px;color:var(--ink-3)}@media(max-width:1100px){.grid.side-r{grid-template-columns:1fr}.grid.three{grid-template-columns:1fr 1fr}}@media(max-width:820px){.shell{grid-template-columns:1fr}.side{position:fixed;left:0;top:0;z-index:40;width:250px;transform:translate(-100%);transition:transform .2s}.side.open{transform:none}.topbar-mobile{display:flex;align-items:center;gap:10px;padding:10px 16px;background:#2a2f37;color:#fff;position:sticky;top:0;z-index:30}.topbar-mobile button{background:none;color:#fff;border-color:#4a505b}.main{padding:16px}.grid.two,.grid.three{grid-template-columns:1fr}.search{width:100%}.journey{grid-auto-flow:row;grid-template-columns:repeat(3,1fr);row-gap:14px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}.print-only{display:none}@media print{@page{size:A4;margin:12mm}body{background:#fff;font-size:11px}.side,.topbar-mobile,.no-print,.filters,.page-head .actions{display:none!important}.shell{display:block}.main{padding:0}.panel{border:0}.print-only{display:block}.table-wrap,.table-wrap.tall{max-height:none;overflow:visible}.t th{position:static}.t td,.t th{padding:3px 6px}.page-break{break-before:page}.avoid-break{break-inside:avoid}}.portal{max-width:860px;margin:0 auto;padding:24px 16px 48px}.portal-head{display:flex;gap:20px;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--line)}.portal-head img{width:120px;height:auto;flex:none}@media(max-width:560px){.portal-head{flex-direction:column;align-items:flex-start}}.portal-head h1{font-size:22px;margin:0 0 2px}.portal-kv{grid-template-columns:max-content 1fr}.badge.ok{background:#e2efe4;color:#2f6b3a;border-color:#bcd9c1}.badge.muted{color:var(--ink-3)}.reqs{display:grid;gap:14px}.req-cat{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);margin-bottom:4px}.req{padding:6px 8px;border-radius:6px}.req.on{background:var(--accent-soft)}.req-body{margin:4px 0 2px 24px}.req-body textarea{width:100%;min-height:44px;font-size:13px}.pdf-frame{width:100%;height:75vh;border:1px solid var(--line);border-radius:6px}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin:8px 0}.photo-grid figure{margin:0}.photo-grid img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:6px;border:1px solid var(--line);display:block;background:var(--panel-2)}.photo-grid figcaption{margin-top:3px;font-size:11.5px}.comments{list-style:none;padding:0;margin:6px 0 10px}.comments li{padding:8px 10px;border:1px solid var(--line);border-radius:6px;margin-bottom:6px;background:var(--panel-2)}tr.warn-row td{background:var(--warn-soft)}.email-preview{white-space:pre-wrap;font:13px/1.5 var(--font);background:var(--panel-2);border:1px solid var(--line);border-radius:6px;padding:10px 12px;margin:6px 0 0;max-height:380px;overflow:auto}.ok-text{color:var(--good);font-weight:700}.checklist td{vertical-align:top}tr.group .row{flex-wrap:wrap;row-gap:6px}tr.fob-row td{background:var(--panel-2)}.bad-text{color:var(--bad)}.t th.group-head{text-align:center;border-bottom:1px solid var(--line)}.t .web-cell{color:var(--ink-2);background:#f7f7f9}.legend-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.legend-grid>div{border-left:3px solid var(--line);padding-left:10px}.badge.go-nuway{background:#e8eef7;color:#2f4f7e;border-color:#c9d6ea}.badge.go-website{background:#e7f2ee;color:#2f6b55;border-color:#c4e0d4}.badge.go-both{background:#f3ecf7;color:#6a3f7e;border-color:#ddcbe7}.panel.review{margin-top:12px}.panel.review.muted .table-wrap{opacity:.45}.review-t td,.review-t th{white-space:nowrap}.review-t tr.cost-row td{background:#f7f7f9}.review-t tr.web-row td{color:var(--ink-2);border-top:1px dashed var(--line)}.money-in{width:96px;text-align:right}.money-in.below-in{border-color:var(--bad);color:var(--bad);background:var(--bad-soft)}.sticky-save{position:sticky;bottom:0;z-index:5;display:flex;gap:14px;align-items:center;flex-wrap:wrap;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:10px 16px;margin-top:16px;box-shadow:0 -4px 14px #0000000f}.sticky-save .primary{margin-left:auto}.guide-new{display:inline-block;background:#eef2fa;color:#2f4f7e;border:1px solid #c9d6ea;border-radius:4px;padding:0 5px;font-weight:600}.below .guide-new{background:var(--bad-soft);color:var(--bad);border-color:#e5bdb4}.inv-list{display:flex;flex-direction:column;gap:14px}.inv-card{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--panel);overflow:hidden}.inv-card.unpaid{border-left:4px solid var(--warn)}.inv-card.paid{border-left:4px solid var(--good)}.inv-title{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;background:var(--panel-2);border-bottom:1px solid var(--line)}.inv-title>div:first-child{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:15px}.inv-amt{font-size:17px;font-weight:700;white-space:nowrap}.inv-fields{display:grid;grid-template-columns:1fr 1fr;gap:0;border-bottom:1px solid var(--line)}.inv-fields fieldset{border:0;margin:0;padding:10px 14px;display:grid;grid-template-columns:95px 1fr;grid-auto-rows:min-content;gap:6px 10px;align-items:center;align-content:start}.inv-charges td.num input{text-align:right}.inv-fields fieldset+fieldset{border-left:1px solid var(--line)}.inv-fields legend{float:left;grid-column:1 / -1;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);padding:0;margin-bottom:2px}.inv-fields label,.inv-fields .lbl{display:contents}.inv-fields label>span,.inv-fields .lbl>span:first-child{font-size:13px;color:var(--ink-2)}.inv-fields input{width:100%;max-width:220px}.inv-notes{display:grid;grid-template-columns:95px 1fr;gap:10px;align-items:center;padding:8px 14px;border-bottom:1px solid var(--line)}.inv-notes>span{font-size:13px;color:var(--ink-2)}.inv-notes input{width:100%}.inv-charges{table-layout:fixed;width:100%;min-width:760px}.inv-charges td,.inv-charges th{overflow:hidden}.inv-charges .money,.inv-charges .qty{width:100%}.inv-charges tfoot td{position:static;background:transparent;font-weight:400;border-top:0}.inv-total{display:flex;justify-content:space-between;padding:10px 14px;background:var(--panel-2);border:1px solid var(--line-strong);border-radius:var(--radius);font-weight:600}.file-chip{display:inline-flex;align-items:center;gap:4px;max-width:100%}.file-chip .x{border:0;background:transparent;color:var(--ink-3);padding:0 4px;cursor:pointer;font-size:13px;line-height:1}.file-chip .x:hover{color:var(--bad)}@media(max-width:900px){.inv-fields{grid-template-columns:1fr}.inv-fields fieldset+fieldset{border-left:0;border-top:1px solid var(--line)}}.letterhead{display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;padding:18px 20px 14px;border-bottom:3px solid var(--ink-2, #393f4a)}.letterhead img{width:110px;height:auto;display:block}.lh-co{font-size:12.5px;line-height:1.55;color:var(--ink-2)}.lh-name{font-size:15px;font-weight:700;color:var(--ink);letter-spacing:.01em}.lh-contact{display:flex;flex-wrap:wrap;gap:4px 14px}.lh-contact b{color:var(--ink-3);font-weight:600;margin-right:2px}.lh-doc{text-align:right;font-size:12px;line-height:1.55;color:var(--ink-2)}.lh-title{font-size:20px;font-weight:700;color:var(--ink);text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px}.pl-cat{padding:12px 16px 6px}.pl-cat h2{margin:0;font-size:17px}@media screen and (max-width:760px){.letterhead{grid-template-columns:1fr}.lh-doc{text-align:left}}@media print{.letterhead{padding:0 0 8px;gap:16px}.letterhead.print-only{display:grid}.letterhead img{width:85px}.lh-title{font-size:16px}.pl-cat{padding:8px 0 4px}.pl-section .t thead{display:table-header-group}}.arr-cards{display:flex;flex-direction:column;gap:12px;padding:12px;background:var(--panel-2)}.arr-card{background:var(--panel);border:1px solid var(--line-strong);border-radius:10px;overflow:hidden}.arr-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:12px 14px 6px}.arr-po{font-size:17px;font-weight:700}.arr-sup{font-size:13px;color:var(--ink-2);margin-top:1px}.arr-meta{padding:0 14px 10px;display:flex;flex-direction:column;gap:6px}.arr-eta{display:flex;align-items:center;gap:8px}.arr-eta>span:first-child{font-size:12px;color:var(--ink-3);font-weight:600}.arr-eta input{flex:1;max-width:180px}.arr-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 14px;border-top:1px solid var(--line)}.arr-actions button{min-height:44px;font-size:13.5px;white-space:normal;line-height:1.2}.arr-lines-toggle{display:flex;width:100%;justify-content:space-between;align-items:center;gap:8px;padding:12px 14px;border:0;border-top:1px solid var(--line);border-radius:0;background:var(--panel-2);font-size:14px;font-weight:600;min-height:46px}.arr-line{padding:12px 14px;border-top:1px solid var(--line)}.arr-line.dim{opacity:.6}.arr-line-head{display:flex;justify-content:space-between;gap:10px;font-size:14px}.arr-qty{text-align:right;white-space:nowrap}.arr-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;margin-top:10px}.arr-fields label{display:flex;flex-direction:column;gap:3px;min-width:0}.arr-fields label>span{font-size:11.5px;color:var(--ink-3);font-weight:600}.arr-fields input{width:100%;min-height:40px;font-size:16px}.arr-pos{display:flex;align-items:center;gap:10px;margin-top:10px;font-size:14px;min-height:40px}.arr-pos input{width:22px;height:22px}@media(max-width:640px){.modal-back{padding:0;place-items:stretch}.modal,.modal.wide{width:100%;max-height:none;height:100dvh;border-radius:0}.modal-head{padding:10px 14px;position:sticky;top:0;background:var(--panel);z-index:1}.modal-head h2{font-size:16px}.modal-head button{min-width:44px;min-height:44px}.modal-body{padding:14px;flex:1;-webkit-overflow-scrolling:touch}.modal-foot{flex-wrap:wrap;padding:10px 14px calc(10px + env(safe-area-inset-bottom))}.modal-foot .foot-grow{flex:1 1 100%!important}.modal-foot button{flex:1;min-height:44px}.modal input,.modal select,.modal textarea{font-size:16px}.photo-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px}.comment-add{flex-wrap:wrap}.comment-add textarea{flex:1 1 100%!important}.comment-add button{flex:1;min-height:44px}.t.stack-sm thead{display:none}.t.stack-sm tr{display:grid;grid-template-columns:repeat(3,1fr);gap:2px 8px;padding:8px 0;border-bottom:1px solid var(--line)}.t.stack-sm td{border:0;padding:2px 4px;text-align:left!important}.t.stack-sm td:first-child{grid-column:1 / -1;font-weight:600}.t.stack-sm td[data-l]:before{content:attr(data-l);display:block;font-size:10.5px;color:var(--ink-3);text-transform:uppercase;letter-spacing:.04em}.t.stack-sm td.note:last-child{grid-column:1 / -1}}.arr-actions>:last-child:nth-child(odd){grid-column:1 / -1}.issues{border:1px solid #e5bdb4;background:var(--bad-soft);border-left:4px solid var(--bad);border-radius:var(--radius);padding:12px 16px;margin-bottom:16px}.issues.quiet{background:var(--panel);border-color:var(--line);border-left-color:var(--line-strong)}.issues-head{display:flex;flex-direction:column;gap:2px;margin-bottom:6px}.issues-head b{color:var(--bad);font-size:14.5px}.issues ul{list-style:none;margin:0;padding:0}.issues li{padding:8px 0;border-top:1px solid rgba(0,0,0,.07)}.issues li:first-child{border-top:0}.issue-body{white-space:pre-wrap;font-size:14px}.issues-done{margin-top:6px}.issue-flag{display:flex!important;align-items:flex-start;gap:10px;margin-top:10px;padding:10px 12px;border:1px dashed var(--line-strong);border-radius:8px;cursor:pointer}.issue-flag input{width:20px;height:20px;margin-top:1px;flex:none}.issue-flag.on{border-style:solid;border-color:var(--bad);background:var(--bad-soft)}.comments li.flagged{border-left:3px solid var(--bad);padding-left:8px}.portal.portal-wide{max-width:1100px}.sp-items{display:flex;flex-direction:column;gap:10px}.sp-item{border:1px solid var(--line-strong);border-radius:8px;padding:12px;display:grid;grid-template-columns:minmax(220px,1fr) 2fr;gap:14px}.sp-item.off{background:var(--panel-2)}.sp-item.off .sp-spec{opacity:.6}.sp-spec{display:flex;gap:10px;font-size:14px;line-height:1.45}.sp-num{flex:none;width:24px;height:24px;border-radius:50%;background:var(--panel-2);border:1px solid var(--line);display:grid;place-items:center;font-size:12px;font-weight:600}.sp-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 10px;align-items:end}.sp-fields label:not(.check){display:flex;flex-direction:column;gap:3px;min-width:0}.sp-fields label>span{font-size:11.5px;color:var(--ink-3);font-weight:600}.sp-fields input:not([type=checkbox]){width:100%}.sp-fob input{font-weight:700;font-size:15px;border-color:var(--ink-3)}.sp-notes{grid-column:span 2}.sp-cant{align-self:center}.sp-submit{position:sticky;bottom:0;display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:12px 16px;background:var(--panel);border-top:1px solid var(--line);border-radius:0 0 var(--radius) var(--radius)}@media(max-width:760px){.sp-item{grid-template-columns:1fr}.sp-fields{grid-template-columns:1fr 1fr}.sp-fields input{font-size:16px;min-height:40px}.sp-fob,.sp-notes{grid-column:1 / -1}.sp-submit{flex-wrap:wrap}.sp-submit button{flex:1;min-height:46px}}.t.compare td{vertical-align:top}.t.compare td.best{background:var(--good-soft)}.t.compare td.chosen{box-shadow:inset 0 0 0 2px var(--good)}.t.compare tfoot td{vertical-align:top;position:static}.t tr.sel td{background:var(--accent-soft, #eef1f6)}.sp-terms{border:1px solid var(--line-strong);border-radius:8px;padding:12px 14px;background:var(--panel-2)}.sp-terms h3{margin:0 0 8px;font-size:15px}.sp-terms textarea{font-size:15px}.comment-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:2px}.flag-btn{border-color:#e5bdb4;color:var(--bad)}.flag-btn:hover{background:var(--bad-soft)}.mk{font-size:11px;color:var(--ink-3);line-height:1.2;margin-top:1px;white-space:nowrap}.col-picker{padding-top:6px;padding-bottom:6px;background:var(--panel-2)}.t th.tier-head{text-align:center;border-left:2px solid var(--line-strong);border-bottom:1px solid var(--line)}.t thead tr.sub-head th{top:31px;font-size:10.5px;padding-top:3px;padding-bottom:4px}.t .tier-start{border-left:2px solid var(--line-strong)}.t td.guide-col,.t th.guide-col{background:var(--panel-2)}.t thead th.guide-col{color:var(--ink-3)}.update-bar{position:fixed;top:0;left:0;right:0;z-index:90;display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 14px;background:var(--warn-soft);border-bottom:1px solid #e7d3a2;font-size:14px;flex-wrap:wrap}.toast-x{margin-left:10px;background:transparent;border:0;color:inherit;cursor:pointer;font-size:14px;padding:0 2px}.status-chips{display:flex;flex-wrap:wrap;gap:6px;padding:8px 16px 10px;border-bottom:1px solid var(--line)}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;border:1px solid var(--line-strong);background:var(--panel);font-size:13px;color:var(--ink-2);cursor:pointer}.chip b{font-weight:600;color:var(--ink)}.chip:hover{background:var(--panel-2)}.chip.on{background:var(--ink);border-color:var(--ink);color:#fff}.chip.on b{color:#fff}.su-drop-in{display:flex;gap:16px;align-items:center;justify-content:space-between}.su-files{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.su-card{border:1px solid var(--line);border-radius:8px;padding:10px 12px;margin-bottom:10px}.su-card:last-child{margin-bottom:0}.su-head{display:flex;gap:12px;justify-content:space-between;align-items:flex-start}.su-pick{max-width:280px}.su-changes{margin-top:8px;border-collapse:collapse;width:100%;font-size:14px}.su-changes td{padding:4px 8px 4px 0;vertical-align:top}.su-changes td:first-child{width:220px}.su-old{color:var(--ink-3);text-decoration:line-through}@media(max-width:700px){.su-drop-in,.su-head{flex-direction:column;align-items:stretch}.su-pick{max-width:none;width:100%}.su-changes td:first-child{width:auto}}.su-cands{margin-top:8px;display:grid;gap:6px}.su-cand{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:6px 8px;background:var(--panel-2);border-radius:6px}.su-cand .note{flex:1;min-width:200px}span.warn,div.warn{color:var(--warn)}.row-current td{background:var(--panel-2)}.row-paid td{background:var(--good-soft)}@media(max-width:1024px){.grid>*{min-width:0}}@media(pointer:coarse){button,.chip,select{min-height:38px}button.sm{min-height:34px}input[type=checkbox],input[type=radio]{width:18px;height:18px}.tabs button{padding:10px 12px}.t tr:hover td{background:inherit}}@media(max-width:900px){.main .panel>table.t,.main .pl-section>table.t{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.table-wrap.tall:has(>.dt-cards){max-height:none}.t.dt-cards,.t.dt-cards tbody{display:block;width:100%}.t.dt-cards thead{display:none}.t.dt-cards tr{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px 14px;padding:10px 12px;border-bottom:1px solid var(--line)}.t.dt-cards td{display:block;border:0;padding:0;text-align:left!important;white-space:normal;min-width:0;overflow-wrap:anywhere}.t.dt-cards td:first-child{grid-column:1 / -1;font-weight:600;font-size:15px}.t.dt-cards td[data-l]:not(:first-child):before{content:attr(data-l);display:block;font:600 10.5px/1.3 var(--font-cond);color:var(--ink-3);text-transform:uppercase;letter-spacing:.03em}.t.dt-cards td:empty{display:none}.t.dt-cards td.empty{grid-column:1 / -1}.t.dt-cards tfoot,.t.dt-cards tfoot tr{display:block}.table-wrap>.t:not(.dt-cards)>tbody>tr>td:first-child,.table-wrap>.t:not(.dt-cards)>thead>tr>th:first-child{position:sticky;left:0;background:var(--panel);box-shadow:1px 0 0 var(--line);min-width:120px;max-width:46vw;white-space:normal}.table-wrap>.t:not(.dt-cards)>tbody>tr>td:first-child{z-index:1}.table-wrap>.t:not(.dt-cards)>thead>tr>th:first-child{z-index:3;background:var(--panel-2)}.table-wrap>.t:not(.dt-cards)>tbody>tr>td[colspan]:first-child{position:static;max-width:none}}@media(max-width:640px){.t.dt-cards tr{grid-template-columns:1fr 1fr;gap:4px 14px}.main{padding:12px}h1{font-size:20px}.page-head{margin-bottom:12px;gap:10px}.page-head .actions{width:100%}.filters{padding:10px}.filters>select,.filters>input:not([type=checkbox]):not([type=radio]),.filters .search{flex:1 1 100%;width:100%;max-width:none}.main input:not([type=checkbox]):not([type=radio]),.main select,.main textarea{font-size:16px}.panel-head{flex-wrap:wrap;gap:8px}.tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tabs button{white-space:nowrap;flex:none}.journey-row{flex-wrap:wrap}.journey-row>.row{width:100%}.journey-row>.row select{flex:1}.journey{grid-auto-flow:column!important;grid-template-columns:none!important;grid-auto-columns:84px!important;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}}@media screen{.letterhead.print-only{display:none}}.pl-compact .t td:first-child{min-width:180px}
