.portal-orders-filters { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0; }
.portal-orders-filters .is-active { background:#00dd39; color:#001b08; box-shadow:inset 0 2px 5px #004917; }
.portal-orders-filters button:focus-visible { outline:3px solid #126b38; outline-offset:3px; }
.portal-orders-scroll { overflow:auto; max-height:65vh; border:1px solid #b8c2b0; background:white; }
.portal-orders-table { min-width:1300px; width:100%; border-collapse:separate; border-spacing:0; }
.portal-orders-table th { position:sticky; top:0; z-index:1; background:#e3eadf; white-space:normal; }
.portal-orders-table td { white-space:pre-line; vertical-align:top; overflow-wrap:anywhere; max-width:320px; }
.portal-orders-page { min-width:0; max-width:100%; }
@media(max-width:700px) { .portal-orders-filters button { flex:1 1 135px; } .portal-orders-scroll { max-height:60vh; } }
.portal-orders-badge { display:inline-flex; align-items:center; justify-content:center; min-width:24px; height:24px; padding:0 5px; margin-left:8px; border-radius:50%; background:#d71920; color:#fff; font:700 14px Arial,sans-serif; }
.portal-orders-badge[hidden] { display:none; }
.portal-orders-file-menu { position:fixed; z-index:2500; background:#020d04; border:1px solid #00db38; min-width:170px; box-shadow:0 5px 18px #0008; }
.portal-orders-file-menu button { display:block; width:100%; padding:12px 18px; text-align:left; color:#00e83c; background:transparent; border:0; cursor:pointer; }
.portal-orders-file-menu button:hover { background:#073b16; }
.portal-orders-export-overlay { position:fixed; inset:0; z-index:2400; display:grid; place-items:center; padding:16px; background:#000b; }
.portal-orders-export-card { position:relative; box-sizing:border-box; width:min(520px,100%); max-height:90vh; overflow:auto; padding:28px; background:#020d04; color:#00df37; border:2px solid #00df37; }
.portal-orders-export-card label { display:grid; gap:8px; margin:18px 0; }
.portal-orders-export-card input,.portal-orders-export-card select { box-sizing:border-box; width:100%; padding:12px; background:#101410; color:#00df37; border:1px solid #00b930; }
.portal-orders-export-close { position:absolute; top:5px; right:10px; color:#00df37; background:none; border:0; font-size:30px; cursor:pointer; }
.portal-orders-tools { display:flex; gap:12px; margin:14px 0; }
.portal-orders-tools button { border:1px solid #ffffff50; border-radius:14px; padding:11px 22px; font:600 15px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; box-shadow:0 3px 8px #0003; cursor:pointer; transition:background .2s,transform .2s; }
.portal-express { background:#e32636; color:white; display:flex; align-items:center; gap:10px; }
.portal-express[data-mode="1"] { background:linear-gradient(to right,#171717 33.333%,#e32636 33.333%); }
.portal-express[data-mode="2"] { background:linear-gradient(to right,#171717 66.667%,#e32636 66.667%); }
.portal-express-count { display:inline-flex; align-items:center; justify-content:center; border-radius:50%; min-width:26px; height:26px; padding:0 4px; background:white; color:#d71920; }
.portal-unlock { background:linear-gradient(#fff,#dedede); color:#242424; }
.portal-unlock.is-active { background:#ffd8b6; }
.portal-orders-table tr.is-unlock td { background:#ffe4cc; color:#362418; }
.portal-orders-table tr.is-express td { background:#d82232; color:white; }
.portal-orders-table td:nth-child(3),.portal-orders-table td:nth-child(5) { white-space:nowrap; }
.portal-orders-table th:nth-child(5) { width:58px; min-width:58px; }
.portal-order-detail { width:min(1100px,96vw); background:#f5efdf; color:#183322; }
.portal-order-detail table { width:100%; table-layout:fixed; }
.portal-order-detail th,.portal-order-detail td { overflow-wrap:anywhere; white-space:pre-wrap; vertical-align:top; }
/* Compact orders workspace: only the table scrolls; totals stay below it. */
.portal-workspace:has(> .portal-orders-page) { padding:8px 14px 10px; display:flex; flex-direction:column; overflow:hidden; }
.portal-orders-page { flex:1; min-height:0; width:100%; display:flex; flex-direction:column; gap:8px; }
.portal-orders-top { display:flex; align-items:center; gap:16px; flex-wrap:wrap; flex:none; }
.portal-orders-top h1 { margin:0; line-height:1.15; }
.portal-orders-top .portal-orders-tools { margin:0; gap:8px; }
.portal-orders-top .portal-orders-tools button { padding:8px 16px; }
.portal-orders-actual { margin:0 0 0 auto; text-align:right; font-size:.85rem; }
.portal-orders-page .portal-orders-filters { margin:0; gap:6px; flex:none; }
.portal-orders-page .portal-orders-filters button { padding:8px 12px; }
.portal-orders-filters .portal-orders-archive { background:#d1d1d6; color:#000; border-color:#999; }
.portal-orders-filters .portal-orders-archive.is-active { background:#a9a9ae; color:#000; box-shadow:inset 0 2px 5px #5556; }
.portal-orders-page .portal-save-state { margin:0; flex:none; }
.portal-orders-page .portal-save-state:empty { display:none; }
.portal-orders-page .portal-orders-scroll { flex:1; min-height:100px; max-height:none; }
.portal-orders-table td:nth-child(2) { white-space:nowrap; overflow-wrap:normal; word-break:normal; }
.portal-orders-footer { display:flex; align-items:center; gap:10px; flex-wrap:wrap; flex:none; }
.portal-orders-summary { display:flex; flex-wrap:wrap; gap:10px; flex:1; }
.portal-orders-metric { display:flex; align-items:center; gap:8px; padding:10px 14px; background:linear-gradient(#fff,#f4f4f6); border:1px solid #c5c5cb; border-radius:14px; color:#242426; box-shadow:0 2px 5px #00000012; font:14px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; }
.portal-orders-metric-icon { font-size:20px; color:#52605b; }
.portal-orders-metric strong { font-variant-numeric:tabular-nums; white-space:nowrap; }
@media(max-width:700px) { .portal-orders-top { gap:8px; } .portal-orders-actual { width:100%; } .portal-orders-page .portal-orders-filters button { flex:0 1 auto; font-size:12px; padding:6px 8px; } .portal-orders-metric { padding:7px 9px; font-size:12px; } .portal-orders-summary { gap:5px; } }
@media(max-height:480px) { .portal-workspace:has(> .portal-orders-page) { overflow:auto; } .portal-orders-page .portal-orders-scroll { flex:none; height:200px; } }

.portal-orders-table tr.is-packed td { background:#c8f2eb; color:#153e38; }

.portal-orders-filters .portal-orders-filter-count { color:#ffe500; font-weight:700; font-variant-numeric:tabular-nums; text-shadow:0 1px 2px #304000; }
.portal-orders-filter-count[hidden] { display:none; }
