@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.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:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.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{--bg:#000d01;--surface:#111;--surface-raised:#1b1b1b;--surface-inset:#0c120d;--border:#2b2b2b;--border-strong:#666;--accent:#53db78;--accent-soft:#53db7826;--text:#eee;--text-2:#ccc;--muted:#aaa;--error:#ff5050;--error-soft:#ff505026;--radius:8px;--radius-small:6px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text);background:var(--bg);font-family:DM Sans Variable,DM Sans,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}*{box-sizing:border-box}body{min-height:100vh;margin:0}button{cursor:pointer;font:inherit;border-radius:var(--radius-small);border:1px solid var(--border);background:var(--surface-raised);color:inherit;padding:.5rem .9rem}button:hover{border-color:var(--border-strong)}button.link{color:var(--accent);background:0 0;border:none;padding:.25rem 0;text-decoration:underline}input,textarea{font:inherit;border-radius:var(--radius-small);border:1px solid var(--border);background:var(--surface);color:inherit;width:100%;padding:.5rem .7rem}textarea{resize:vertical}input:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.muted{color:var(--muted)}.error{color:var(--error);font-size:.9rem}.centered-screen{place-items:center;min-height:100vh;padding:1.5rem;display:grid}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:360px;padding:1.5rem}.auth-card h1{margin:0 0 .25rem}.signin-form{gap:.75rem;margin-top:1rem;display:grid}.signin-form label{color:var(--text-2);gap:.25rem;font-size:.85rem;display:grid}.app-shell{grid-template-rows:auto 1fr;min-height:100vh;display:grid}.app-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:.9rem 1.5rem;display:flex}.brand{letter-spacing:.04em;font-weight:700}.who{align-items:center;gap:.75rem;font-size:.9rem;display:flex}.role-badge{background:var(--surface-raised);border:1px solid var(--border);text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:.15rem .5rem;font-size:.75rem}.app-main{align-content:start;gap:1rem;width:100%;max-width:960px;margin:0 auto;padding:1.5rem;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem 1.5rem}.card h2{margin:0 0 .5rem}.org-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.org-list li{border:1px solid var(--border);border-radius:var(--radius-small);align-items:center;gap:.5rem;padding:.6rem .8rem;display:flex}.badge{background:var(--accent-soft);color:var(--accent);border-radius:999px;margin-left:auto;padding:.15rem .5rem;font-size:.7rem}.app-main{max-width:1200px}.org-row-button{text-align:left;width:100%;color:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;padding:0;display:flex}.org-row-button:hover{color:var(--accent)}.card-row{justify-content:space-between;align-items:center;display:flex}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-top:.75rem;display:grid}.form-grid .full{grid-column:1/-1}.form-grid label{color:var(--text-2);gap:.25rem;font-size:.85rem;display:grid}.form-grid label.checkbox{flex-direction:row;align-items:center;gap:.5rem;display:flex}.form-grid label.checkbox input{width:auto}select{font:inherit;border-radius:var(--radius-small);border:1px solid var(--border);background:var(--surface);color:inherit;width:100%;padding:.5rem .7rem}.portal{gap:1rem;display:grid}.portal-header{align-items:baseline;gap:.75rem;display:flex}.portal-header h2{margin:0}.tabs{border-bottom:1px solid var(--border);gap:.25rem;display:flex}.tab{color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:.6rem 1rem}.tab:hover{color:var(--text)}.tab.active{color:var(--text);border-bottom-color:var(--accent)}.shipments-board{gap:1rem;display:grid}.board-toolbar{justify-content:space-between;align-items:center;gap:1rem;display:flex}.counts{flex-wrap:wrap;gap:.4rem;display:flex}.toolbar-right{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.shipments-board .board-toolbar{flex-direction:column;align-items:stretch;gap:.75rem}.shipments-board .toolbar-right{width:100%}.shipments-board .search-input{flex:220px}.toolbar-actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-left:auto;display:flex}.history-head h3{margin:0}.history-head .status-tabs{margin-top:33px}.contact-cell{flex-direction:column;gap:.1rem;display:flex}.contact-cell a{white-space:nowrap}.status-pill.intake-won{color:#9eff9e;text-transform:capitalize;background:#1f3520;border-color:#3a5a3a}.status-pill.intake-lost{color:#ff9e9e;text-transform:capitalize;background:#3a1f1f;border-color:#5a3a3a}.state-rows{gap:.4rem;display:grid}.state-row{align-items:center;gap:.4rem;display:flex}.state-row .state-input{text-transform:uppercase;width:4rem}.capacity-grid th.cap-day{text-align:center}.capacity-grid .cap-cell{text-align:center;padding:.3rem}.cap-btn{border-radius:var(--radius-small);text-align:center;border:1px solid var(--border);background:var(--surface-raised);min-width:2rem;padding:.25rem .4rem;display:inline-block}button.cap-btn{cursor:pointer}.cap-yes{color:#9eff9e;background:#1f3520;border-color:#3a5a3a}.cap-no{color:#ff9e9e;background:#3a1f1f;border-color:#5a3a3a}.cap-unset{color:var(--muted)}.dashboard{gap:1rem;display:grid}.stat-cards{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;display:grid}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem}.stat-value{font-size:1.6rem;font-weight:700}.stat-delta{margin-top:.35rem;font-size:.8rem;font-weight:600}.stat-delta.up{color:var(--accent)}.stat-delta.down{color:var(--error)}.period-tabs,.status-tabs{gap:.4rem;display:flex}button.ghost{border:1px solid var(--border);color:var(--muted);background:0 0}.trend-chart svg{width:100%;height:auto;display:block}.trend-rev{fill:#3b82f6}.trend-margin{fill:var(--accent)}.trend-label{fill:var(--muted);text-anchor:middle;font-size:11px}.trend-grid{stroke:var(--border);stroke-width:1px}.trend-axis{fill:var(--muted);font-size:10px}.trend-axis.left{text-anchor:end}.trend-axis.right{text-anchor:start;fill:var(--accent)}.trend-line{fill:none;stroke:var(--accent);stroke-width:2px}.trend-dot{fill:var(--accent)}.trend-pct{fill:var(--accent);text-anchor:middle;font-size:10px}.trend-legend{align-items:center;gap:.4rem;margin-top:.5rem;display:flex}.trend-key{border-radius:2px;width:10px;height:10px;margin-left:.6rem;display:inline-block}.trend-key.trend-rev{background:#3b82f6}.trend-key.trend-margin{background:var(--accent)}.doc-list{gap:.4rem;margin:0 0 .5rem;padding:0;list-style:none;display:grid}.doc-row{align-items:center;gap:.5rem;display:flex}.doc-row .badge{margin-left:0}.doc-row a{color:var(--accent)}.doc-upload{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.invoice-print{gap:1rem;display:grid}.invoice-head{justify-content:space-between;align-items:flex-start;display:flex}.invoice-head h2{margin:0}.invoice-meta{text-align:right}.invoice-title{letter-spacing:.05em;color:var(--accent);font-size:1.8rem;font-weight:800}.invoice-pastdue{color:var(--error);font-weight:700}.invoice-charges{max-width:360px;margin-left:auto}.invoice-charges td:last-child,.invoice-charges th:last-child{text-align:right}.invoice-foot{border-top:1px solid var(--border);padding-top:.5rem}.invoice-totals-preview{text-align:right;gap:.2rem;max-width:320px;margin-top:.75rem;margin-left:auto;display:grid}.invoice-total-line{border-top:1px solid var(--border);padding-top:.3rem;font-size:1.1rem}.org-chips{flex-wrap:wrap;gap:.3rem;display:flex}.access-legend{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-inset);gap:.25rem;margin-bottom:.75rem;padding:.6rem .8rem;display:grid}.org-memberships{gap:.35rem;display:grid}.org-membership{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.pill-toggle{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;padding:.15rem .55rem;font-size:.75rem}.pill-toggle.on{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.count-chip.access-edit{color:#9effc0;border-color:#2f5a3a}.count-chip.access-readonly{color:#ffe49e;border-color:#5a4f2f}.count-chip.access-none{color:#ff9e9e;border-color:#5a2f2f}.contact-billing{border-top:1px dashed var(--border);gap:.3rem;margin-top:.4rem;padding-top:.4rem;display:grid}.contact-billing input{width:100%}.track-page{min-height:100vh}.track-header{border-bottom:1px solid var(--border);padding:.9rem 1.5rem}.track-main{gap:1rem;width:100%;max-width:760px;margin:0 auto;padding:1.5rem;display:grid}@media print{body *{visibility:hidden}.invoice-print,.invoice-print *{visibility:visible}.invoice-print{color:#000;width:100%;position:absolute;top:0;left:0}.invoice-print .muted{color:#444}.invoice-print table{border-collapse:collapse;width:100%}.invoice-print th,.invoice-print td{color:#000;border:1px solid #999;padding:4px 8px}.invoice-print .invoice-title{color:#000}}.search-input{width:220px}.filter-select{width:auto}.count-chip{background:var(--surface-raised);border:1px solid var(--border);text-transform:capitalize;border-radius:999px;padding:.2rem .6rem;font-size:.8rem}.columns{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.column{background:var(--surface-inset);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem}.column-header{text-transform:uppercase;letter-spacing:.05em;color:var(--text-2);margin:0 0 .5rem;font-size:.85rem}.column-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.shipment-card{background:var(--surface-raised);gap:.25rem;padding:.7rem .8rem;font-size:.9rem;display:grid}.shipment-card .ref{color:var(--text-2);font-family:ui-monospace,Consolas,monospace;font-size:.75rem}.shipment-card .route{font-weight:600}.risk-badge{text-transform:uppercase;letter-spacing:.05em;vertical-align:middle;border-radius:999px;margin-left:.5rem;padding:.1rem .45rem;font-size:.65rem;font-weight:700}.risk-badge.late{color:#ff9e9e;background:#3a1f1f;border:1px solid #8a3a3a}.risk-badge.due{color:#f0d97a;background:#2a2415;border:1px solid #5a4f25}.unassigned{color:#ff9e9e;font-weight:600}.aging-row{flex-wrap:wrap;gap:.5rem;display:flex}.aging-chip{background:var(--surface-raised);border:1px solid var(--border);border-radius:999px;padding:.25rem .65rem;font-size:.8rem}.aging-chip.pastdue{color:#f0d97a;background:#2a2415;border-color:#5a4f25}.aging-chip.severe{color:#ff9e9e;background:#3a1f1f;border-color:#8a3a3a}.small{padding:.25rem .5rem;font-size:.8rem}.danger{color:var(--error);border-color:#ff505059}.danger:hover{background:var(--error-soft);border-color:#ff505099}.row-actions{justify-content:flex-end;gap:.35rem;display:flex}.data-table tr.editing td{background:var(--surface-raised)}.data-table tr.editing input{padding:.3rem .5rem;font-size:.85rem}.card-actions{flex-wrap:wrap;gap:.35rem;margin-top:.35rem;display:flex}.clickable{cursor:pointer;transition:border-color .15s}.clickable:hover{border-color:var(--border-strong)}.modal-backdrop{z-index:100;background:#0009;place-items:center;padding:1.5rem;display:grid;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;width:100%;max-width:720px;max-height:calc(100vh - 3rem);display:flex;overflow:hidden}.modal-header{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;padding:1rem 1.5rem;display:flex}.modal-header h2{margin:0;font-size:1.1rem}.modal-close{background:0 0;border:none;margin-left:auto;padding:.1rem .5rem;font-size:1.4rem;line-height:1}.modal-body{gap:1rem;padding:1rem 1.5rem;display:grid;overflow-y:auto}.fieldset-plain{border:none;gap:1rem;min-width:0;margin:0;padding:0;display:grid}.fieldset-plain:disabled{opacity:.7}.modal-section h3{text-transform:uppercase;letter-spacing:.05em;color:var(--text-2);margin:0 0 .5rem;font-size:.85rem}.modal-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:.5rem;padding:1rem 1.5rem;display:flex}.status-pill{background:var(--surface-raised);border:1px solid var(--border);text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:.2rem .6rem;font-size:.75rem}.status-quoted{color:#f0d97a;background:#2a2415;border-color:#5a4f25}.status-booked{color:#9ed7ff;background:#1f2a35;border-color:#3a4a5a}.status-dispatched{color:#b6d4ff;background:#25303a;border-color:#4a5a6a}.status-in_transit{color:#b0b0ff;background:#2a2a45;border-color:#4a4a7a}.status-delivered{color:#9eff9e;background:#1f3520;border-color:#3a5a3a}.status-invoiced{color:#9efff0;background:#1f3030;border-color:#3a5a5a}.status-cancelled{color:#ff9e9e;background:#3a1f1f;border-color:#5a3a3a}.identity-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin-top:.75rem;display:grid}.assignment-list{gap:.5rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.assignment-row{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius);gap:.3rem;padding:.7rem .9rem;display:grid}.modal-footer-inline{justify-content:flex-end;gap:.5rem;display:flex}.empty{text-align:center;color:var(--muted)}.card.empty{padding:.9rem 1.5rem}.card.empty p{margin:0}.data-table{border-collapse:collapse;width:100%;margin-top:1rem;font-size:.9rem}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border);padding:.5rem .7rem}.data-table th{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.75rem;font-weight:500}@supports (height:100dvh){body,.app-shell,.centered-screen,.track-page{min-height:100dvh}.modal{max-height:calc(100dvh - 3rem)}}.tabs{scrollbar-width:thin;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto}.tab{white-space:nowrap;flex-shrink:0}.period-tabs,.status-tabs{flex-wrap:wrap}@media (width<=991px){.app-main,.track-main{padding:1.25rem 1rem}}@media (width<=767px){.app-header{flex-wrap:wrap;gap:.5rem;padding:.75rem 1rem}.who{flex-wrap:wrap;row-gap:.4rem}.who>span:first-child{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.app-main,.track-main{gap:.75rem;padding:1rem .75rem}.card{padding:1rem}.portal-header{flex-wrap:wrap}.data-table,.capacity-grid{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}.data-table th,.data-table td{white-space:nowrap}.search-input{flex:100%;width:100%}.toolbar-actions{width:100%;margin-left:0}.invoice-head{flex-wrap:wrap;gap:.75rem}.modal-backdrop{align-items:end;padding:.75rem}.modal{max-height:calc(100dvh - 1.5rem)}.modal-header,.modal-body,.modal-footer{padding-left:1rem;padding-right:1rem}}@media (width<=600px){.form-grid{grid-template-columns:1fr}}@media (width<=479px){.app-header{padding:.6rem .75rem}.app-main,.track-main{padding:.75rem .6rem}.card{padding:.85rem .75rem}.board-toolbar,.toolbar-right,.toolbar-actions{flex-direction:column;align-items:stretch}.toolbar-right>*,.toolbar-actions>*,.filter-select{width:100%}.row-actions,.modal-footer,.modal-footer-inline{flex-wrap:wrap}.modal-footer button,.modal-footer-inline button{flex:auto}.invoice-charges,.invoice-totals-preview{max-width:100%}}@media (pointer:coarse){button{min-height:40px}.tab{padding:.7rem 1rem}button.link,.pill-toggle,.cap-btn{min-height:0}}
