:root{color-scheme:light;--bg:#f2f3f5;--panel:#fff;--text:#313338;--muted:#5c5e66;--line:#d5d7dc;--accent:#4752c4;--button:#5865f2;--soft:#e9ebff;--warning:#805512;--warnbg:#fff1d6;--error:#b52e34;--shadow:0 12px 35px #1e1f2214;font:14px/1.5 system-ui,sans-serif}html[data-theme=dark]{color-scheme:dark;--bg:#232428;--panel:#313338;--text:#f2f3f5;--muted:#b5bac1;--line:#4e5058;--accent:#a5adff;--button:#5865f2;--soft:#3b3d5c;--warning:#f0c777;--warnbg:#493c24;--error:#ff969b;--shadow:0 12px 35px #0003}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}a{color:var(--accent);text-decoration:none}header{background:var(--panel);border-bottom:1px solid var(--line);padding:18px max(24px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;gap:12px;align-items:center;color:var(--text);font-size:18px;font-weight:700}.brand small{display:block;font-size:10px;letter-spacing:2px;color:var(--muted)}.mark{display:grid;place-items:center;background:var(--button);color:#fff;width:38px;height:38px;font-size:29px;border-radius:8px}nav{display:flex;gap:20px;align-items:center}nav a{color:var(--muted)}nav a[aria-current=page]{color:var(--accent);font-weight:700}main{max-width:1180px;margin:40px auto;padding:0 24px;min-height:65vh}h1{font-size:28px;letter-spacing:-.7px;margin:6px 0}h2{font-size:19px;margin:0 0 14px}h3{font-size:16px;margin:0}.eyebrow{color:var(--accent);font-size:11px;font-weight:700;letter-spacing:1.8px}.muted,small{color:var(--muted)}.intro{margin-bottom:28px}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.spread{justify-content:space-between}.card,.panel{background:var(--panel);border:1px solid var(--line);padding:24px;box-shadow:var(--shadow);border-radius:10px}.tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.card{display:block;color:var(--text);max-width:380px;transition:transform .15s}.card:hover{border-color:var(--accent);transform:translateY(-2px)}.tool-icon{background:var(--soft);color:var(--accent);width:44px;height:44px;display:grid;place-items:center;font-size:22px;border-radius:8px;margin-bottom:28px}.card p{color:var(--muted);margin-bottom:26px}.card strong{color:var(--accent);font-size:13px}button,input,select,textarea{font:inherit}button,.button{border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--text);padding:8px 13px;cursor:pointer;display:inline-block}button:hover,.button:hover{border-color:var(--accent)}button:disabled{opacity:.5;cursor:wait}.primary{background:var(--button);color:#fff;border-color:var(--button);font-weight:650}input,select,textarea{border:1px solid var(--line);border-radius:5px;background:var(--panel);color:var(--text);padding:9px;width:100%}input[type=checkbox]{width:auto;accent-color:var(--accent)}textarea{resize:vertical;min-height:85px}label{font-size:12px;font-weight:650;display:block}label input,label select,label textarea{display:block;margin-top:5px}label.check{display:flex;align-items:center;gap:8px;font-weight:400;font-size:14px}.tabs{display:flex;border-bottom:1px solid var(--line);gap:8px;margin:26px 0 18px}.tabs button{border:0;border-radius:0;padding:11px 18px;background:transparent;color:var(--muted)}.tabs button.selected{color:var(--accent);border-bottom:2px solid var(--accent);font-weight:700}.filters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:12px;margin-bottom:16px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--panel)}table{width:100%;border-collapse:collapse;text-align:left}th{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);font-weight:650;background:var(--bg)}th,td{padding:13px 16px;border-bottom:1px solid var(--line)}td{font-size:13px;vertical-align:top}td small{display:block;max-width:270px}tr:last-child td{border-bottom:0}.overdue{border-left:3px solid var(--warning)}.pill{display:inline-block;background:var(--soft);color:var(--accent);font-size:11px;border-radius:20px;padding:4px 9px;white-space:nowrap}.warning{background:var(--warnbg);color:var(--warning)}.pager{margin-top:16px}.empty{padding:55px;text-align:center;color:var(--muted)}footer{max-width:1180px;margin:30px auto;padding:20px 24px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}dialog{background:var(--panel);color:var(--text);border:1px solid var(--line);padding:26px;width:min(760px,calc(100vw - 24px));max-height:90vh;border-radius:0;box-shadow:var(--shadow)}dialog::backdrop{background:#1e1f2299}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.full{grid-column:1/-1}.products{margin:22px 0}.product{display:grid;grid-template-columns:3fr 1fr 85px auto;gap:9px;align-items:end;margin:12px 0}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.error{color:var(--error);min-height:20px}.audit{border-top:1px solid var(--line);margin-top:24px;padding-top:18px}.audit details{padding:8px 0;border-bottom:1px solid var(--line)}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px}#notice{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);background:var(--text);color:var(--panel);padding:10px 18px;border-radius:6px}#notice:empty{display:none}.staff-row{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.staff-row span{flex:1}.note{background:var(--soft);padding:12px 16px;border-radius:6px;font-size:12px;margin:18px 0}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}[hidden]{display:none!important}@media(max-width:700px){header{align-items:flex-start;padding:16px;flex-direction:column;gap:14px}nav{gap:14px;flex-wrap:wrap;font-size:12px}main{margin:24px auto;padding:0 16px}h1{font-size:24px}.filters{grid-template-columns:1fr 1fr}.filters label:first-child{grid-column:1/-1}.form-grid{grid-template-columns:1fr}.product{grid-template-columns:1fr 1fr}.product label:first-child{grid-column:1/-1}.full{grid-column:auto}.card{max-width:none}.panel{padding:18px}dialog{padding:18px}.empty{padding:30px}}
.product{display:block;min-width:0;border:1px solid var(--line);border-radius:6px;padding:16px;margin:16px 0}.product legend{padding:0 6px;font-size:12px;color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}.product-description{grid-column:1/-1}.product-notes{grid-column:1/-1}.product-notes textarea{min-height:55px}.history-entry{padding:12px 0;border-bottom:1px solid var(--line)}.history-entry ul{margin:5px 0;padding-left:18px;font-size:12px}.card h2{margin-bottom:0}.panel+ .panel{margin-top:20px}dialog{width:min(850px,calc(100vw - 24px))}.pill{margin:2px}.tools .card{min-height:140px}@media(max-width:600px){.product-grid{grid-template-columns:1fr 1fr}.product-grid label:first-child{grid-column:1/-1}.product-notes{grid-column:1/-1}.product{padding:12px}}
.order-row{cursor:pointer}.order-row:hover{background:var(--soft)}.order-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.quick-cell{min-width:170px}.quick-cell select{cursor:pointer;font-size:12px;min-width:150px}.quick-status summary{cursor:pointer;list-style:none;border:1px solid var(--line);border-radius:6px;background:var(--panel);padding:8px 12px;white-space:nowrap}.quick-status summary::-webkit-details-marker{display:none}.quick-status summary::after{content:' ▾';color:var(--muted);float:right;margin-left:16px}.quick-status[open] summary::after{content:' ▴'}.quick-products{display:grid;gap:12px;min-width:220px;max-width:300px;padding:12px 0}.quick-products label{overflow-wrap:anywhere}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.product-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.product-grid label{grid-column:span 2}.product-grid .product-description{grid-column:span 5}.product-grid .product-quantity{grid-column:span 1}.product-grid .product-notes,.product-grid .supplier-other{grid-column:1/-1}@media(max-width:600px){.product-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.product-grid label:first-child,.product-grid .product-description{grid-column:span 4}.product-grid .product-quantity{grid-column:span 2}.product-grid label{grid-column:span 2}.product-grid .product-notes,.product-grid .supplier-other{grid-column:1/-1}.product-grid input,.product-grid select{padding:7px;font-size:12px}}

/* Scroll fields and history above a footer that remains visible. */
dialog{padding:0;overflow:hidden;max-height:90dvh}#order-form{display:flex;flex-direction:column;max-height:90dvh;min-height:0}.editor-content{overflow:auto;min-height:0;padding:24px}.actions{flex:none;background:var(--panel);padding:12px 24px;margin:0;border-top:1px solid var(--line);z-index:2}.actions #duplicate{margin-right:auto}.audit{margin-top:20px}.product-notes textarea{max-height:280px}input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}#notice{z-index:5;max-width:calc(100vw - 24px)}#notice button{margin-left:8px}@media(max-width:600px){.editor-content{padding:16px}.actions{padding:12px 16px;gap:6px}.actions button{padding:8px}}

.save-staff{min-width:150px;margin-left:auto}.actions{align-items:flex-end;flex-wrap:wrap}.actions #duplicate{margin-right:0}.staff-picker{width:min(360px,calc(100vw - 24px));padding:20px}.staff-picker .actions{padding:16px 0 0;border:0;margin-top:16px}@media(max-width:600px){.save-staff{flex:1;min-width:130px}.actions #duplicate{order:4;margin-right:auto}}

.login-panel{max-width:400px;margin:12vh auto;padding:28px}.login-panel h1{font-size:24px;margin-bottom:24px}#staff-password-result{overflow-wrap:anywhere;user-select:all}

.primary:hover{background:#4752c4;border-color:#4752c4}::selection{background:#5865f2;color:#fff}
