/* My orders: a single scrolling area, with a compact, fixed header. */
body.cabinet-open{overflow:hidden}
#cabinetModal>.cabinet-dialog{width:min(1120px,calc(100vw - 32px))!important;max-width:calc(100vw - 32px)!important}
body.cabinet-open .zzws-language-bar,body:has(#orderModal:not(.hidden)) .zzws-language-bar{visibility:hidden}
#cabinetModal .orders-show-all{display:block;min-height:44px;margin:8px auto 20px;padding:10px 16px;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;border-radius:8px}
#cabinetModal .cabinet-dialog{display:flex;flex-direction:column;min-height:0;max-height:90vh;max-height:90dvh;padding:0;border:1px solid #dbe3ed;border-radius:18px;overflow:hidden;color:#172033}
#cabinetModal .cabinet-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:none;padding:16px 20px 10px}
#cabinetModal .cabinet-header>div{min-width:0}
#cabinetTitle{display:flex;align-items:center;gap:8px;font-size:19px;line-height:1.4;font-weight:750;margin:0}
#cabinetUserSubtitle{font-size:12px;line-height:1.5;color:#64748b;margin:3px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#cabinetClose{flex:none;width:44px;height:44px;border:1px solid #e2e8f0;border-radius:12px;font-size:28px;line-height:1;background:#f8fafc;color:#475569}
#cabinetModal .cabinet-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 20px 10px;border-bottom:1px solid #e2e8f0;flex:none}
#cabinetModal .receipt-pending-filter{font-size:13px;min-height:44px;margin:0;min-width:0;padding-right:32px;gap:8px}
#cabinetModal .receipt-pending-filter input{flex:none;width:19px;height:19px;accent-color:#2563eb}
#cabinetModal .receipt-pending-filter>.field-help{top:50%;right:0;transform:translateY(-50%)}
#cabinetModal .cabinet-notifications-link{display:flex;align-items:center;gap:5px;padding:8px 10px;min-height:44px;font-size:13px;font-weight:600;border:1px solid #bfdbfe;border-radius:9px;background:#eff6ff;flex:none}
#cabinetNotificationCount{min-width:20px;height:20px;border-radius:50px;background:#2563eb;color:white;text-align:center;font-size:11px;line-height:20px}
#cabinetModal .cabinet-filter-short{display:none}
#cabinetModal .server-orders-scroll{max-height:none;flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:12px 20px 20px;scroll-padding:12px}
#cabinetModal .cabinet-explainer{font-size:12px;color:#64748b;margin:0 0 8px}
#cabinetModal .cabinet-explainer>summary{cursor:pointer;padding:8px 0;min-height:36px}
#cabinetModal .cabinet-explainer p{padding:10px 12px;background:#eef2ff;border:1px solid #c7d2fe;border-radius:9px;line-height:1.65;color:#3730a3}
#cabinetModal .server-order-card{margin:0 0 10px;overflow:hidden}
#cabinetModal .server-order-card>summary{display:grid;grid-template-columns:minmax(0,1fr) auto 16px;gap:10px;align-items:center;padding:14px;min-height:76px}
#cabinetModal .server-order-card>summary::after{content:'⌄';color:#64748b;font-size:20px;text-align:center;transform:translateY(-3px)}
#cabinetModal .server-order-card[open]>summary::after{transform:rotate(180deg) translateY(-2px)}
#cabinetModal .server-order-card>summary>div{min-width:0}
#cabinetModal .server-order-card>summary>div:nth-child(2){text-align:right;display:flex;flex-direction:column;align-items:end;gap:5px}
#cabinetModal .server-order-card>summary strong{font-size:14px;line-height:1.4}
#cabinetModal .server-order-card>summary>div:nth-child(2)>strong{font-size:17px;white-space:nowrap}
#cabinetModal .server-order-date{margin-top:4px;font-size:11px}
#cabinetModal .server-order-content{padding:0 14px 14px;border-top:1px solid #e2e8f0}
#cabinetModal .order-content-heading{font-size:14px;font-weight:750;margin:12px 0 4px}
#cabinetModal .order-info{font-size:12px;line-height:1.6;margin:10px 0}
#cabinetModal .order-comparison-hint{margin:0 0 8px;font-size:11px}
#cabinetModal .receipt-order-action{display:flex;align-items:center;gap:8px;margin:12px 0}
#cabinetModal .confirm-receipt-button{flex:1;min-width:0;min-height:46px;font-size:14px;line-height:1.45;margin:0;padding:11px 12px;text-align:center}
#cabinetModal .receipt-order-action>.context-help{flex:none;margin:0;width:32px;height:32px}
#cabinetModal .order-delivery-details,#cabinetModal .order-secondary-tools,#cabinetModal .order-change-history{margin-top:10px;border-top:1px solid #e2e8f0;font-size:12px}
#cabinetModal .order-delivery-details>summary,#cabinetModal .order-secondary-tools>summary,#cabinetModal .order-change-history>summary,#cabinetModal .order-secondary-tools details>summary{padding:12px 0;cursor:pointer;min-height:44px;line-height:1.6;color:#475569}
#cabinetModal .order-delivery-details dl{display:grid;grid-template-columns:minmax(90px,.65fr) minmax(0,1.35fr);gap:8px 12px;margin:0 0 12px}
#cabinetModal .order-delivery-details dt{color:#64748b}
#cabinetModal .order-delivery-details dd{margin:0;overflow-wrap:anywhere}
#cabinetModal .order-repeat-button,#cabinetModal .order-secondary-tools button[data-replace-art]{min-height:44px;padding:10px 12px;border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:8px;text-align:left;margin:6px 0;display:block;max-width:100%;overflow-wrap:anywhere}
#cabinetModal .order-notification-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;flex-wrap:wrap}
#cabinetModal .order-notification-heading>button{padding:10px;min-height:44px;border:1px solid #93c5fd;border-radius:8px}
#cabinetModal .order-notification-list>button{min-height:44px;line-height:1.6}
#cabinetModal .cabinet-clear-history{min-height:44px;padding:10px 12px;background:#fff1f2;color:#be123c;border:1px solid #fecdd3;border-radius:8px;text-align:left;font-size:12px;margin:12px 0}
#cabinetModal .legacy-order-history{margin-top:16px}
#cabinetModal .legacy-order-history>summary{min-height:44px;line-height:1.6}
.comparison-mobile-status{display:none}
.dark #cabinetModal .cabinet-dialog{color:#e2e8f0;border-color:#37465d}
.dark #cabinetUserSubtitle{color:#94a3b8}
.dark #cabinetClose{background:#1e293b;color:#e2e8f0;border-color:#475569}
.dark #cabinetModal .cabinet-toolbar,.dark #cabinetModal .server-order-content,.dark #cabinetModal .order-delivery-details,.dark #cabinetModal .order-secondary-tools,.dark #cabinetModal .order-change-history{border-color:#37465d}
.dark #cabinetModal .cabinet-notifications-link,.dark #cabinetModal .order-repeat-button,.dark #cabinetModal .order-secondary-tools button[data-replace-art]{background:#172554;color:#bfdbfe;border-color:#1e40af}
.dark #cabinetModal .cabinet-explainer p{background:#1e1b4b;color:#c7d2fe;border-color:#4338ca}
.dark #cabinetModal .order-delivery-details>summary,.dark #cabinetModal .order-secondary-tools>summary,.dark #cabinetModal .order-change-history>summary,.dark #cabinetModal .order-secondary-tools details>summary{color:#cbd5e1}
#cabinetModal button:focus-visible,#cabinetModal summary:focus-visible,#cabinetModal input:focus-visible,#cabinetModal a:focus-visible{outline:3px solid #60a5fa;outline-offset:2px}
@media(max-width:640px){
 #cabinetModal{padding:0;align-items:stretch}
 #cabinetModal>.cabinet-dialog{width:100%!important;max-width:none!important;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;border:0;border-radius:0;padding-top:env(safe-area-inset-top)}
 #cabinetModal .cabinet-header{padding:10px 12px 4px;gap:8px}
 #cabinetTitle{font-size:18px}
 #cabinetUserSubtitle{font-size:11px}
 #cabinetModal .cabinet-toolbar{padding:0 12px 8px;gap:8px}
 #cabinetModal .cabinet-filter-long{display:none}
 #cabinetModal .cabinet-filter-short{display:inline}
 #cabinetModal .receipt-pending-filter{font-size:12px;gap:6px}
 #cabinetModal .cabinet-notifications-link{font-size:12px;padding:7px 8px}
 #cabinetModal .server-orders-scroll{padding:6px 12px max(16px,env(safe-area-inset-bottom))}
 #cabinetModal .cabinet-explainer{margin-bottom:4px}
 #cabinetModal .server-order-card>summary{padding:12px 10px;gap:8px}
 #cabinetModal .server-order-card>summary strong{font-size:13px}
 #cabinetModal .server-order-card>summary>div:nth-child(2)>strong{font-size:16px}
 #cabinetModal .server-order-content{padding:0 10px 12px}
 #cabinetModal .order-comparison{overflow:visible}
 #cabinetModal .order-comparison table{display:block;min-width:0;width:100%;margin:10px 0}
 #cabinetModal .order-comparison thead{display:none}
 #cabinetModal .order-comparison tbody{display:grid;gap:8px}
 #cabinetModal .order-comparison tbody tr{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1fr) minmax(0,1.1fr);gap:10px 8px;padding:12px 10px;border:1px solid #dbe3ed;border-radius:10px;background:#f8fafc}
 #cabinetModal .order-comparison td{display:block;min-width:0;padding:0;border:0;overflow-wrap:anywhere;font-size:12px;line-height:1.55}
 #cabinetModal .order-comparison td:first-child{grid-column:1/-1;font-size:13px}
 #cabinetModal .order-comparison td:not(:first-child)::before{content:attr(data-label);display:block;font-size:10px;color:#64748b;margin-bottom:3px}
 #cabinetModal .order-comparison td small{font-size:10px;margin-top:3px}
 #cabinetModal .order-comparison del{font-size:11px;color:#64748b}
 #cabinetModal .order-comparison td:first-child del{font-size:13px}
 #cabinetModal .order-comparison td:not(:first-child) .comparison-missing{display:none}
 #cabinetModal .order-comparison .comparison-mobile-status{display:block;font-size:10px;color:#be123c;margin-top:4px}
 #cabinetModal .order-comparison tr.comparison-removed{background:#fff7f7;border-color:#fecdd3}
 #cabinetModal .order-comparison tr.comparison-added{border-color:#86efac}
 #cabinetModal .order-comparison .comparison-added-label{font-size:10px}
 #cabinetModal .receipt-proof{padding:12px;font-size:12px;overflow-wrap:anywhere}
 #cabinetModal .order-delivery-details dl{grid-template-columns:1fr;gap:3px}
 #cabinetModal .order-delivery-details dd{margin-bottom:7px}
 #cabinetModal .order-event{padding:8px;font-size:11px}
 .dark #cabinetModal .order-comparison tbody tr{background:#172033;border-color:#37465d}
 .dark #cabinetModal .order-comparison tr.comparison-removed{background:#351d29;border-color:#7f1d1d}
 .dark #cabinetModal .order-comparison del,.dark #cabinetModal .order-comparison td:not(:first-child)::before{color:#94a3b8}
 .dark #cabinetModal .order-comparison .comparison-mobile-status{color:#fda4af}
}

.orders-search-panel{margin:8px 0 12px;border:1px solid #dbe3ed;border-radius:12px;padding:10px}.orders-search-panel summary{cursor:pointer;font-weight:600}.orders-search-panel form{display:flex;gap:10px;flex-wrap:wrap;padding-top:10px}.orders-search-panel label{display:grid;gap:4px;min-width:0;flex:1 1 100%}.orders-search-panel input{width:100%;min-width:0;border:1px solid #cbd5e1;border-radius:8px;padding:10px;box-sizing:border-box}.orders-date-fields{display:flex;gap:8px;min-width:0;width:100%}.orders-search-panel button{min-height:44px;padding:8px 12px;border-radius:8px;background:#eef2ff;color:#243764}

.order-approval{padding:16px;border:2px solid #2563eb;border-radius:12px;margin:14px 0}.approval-choices{display:grid;gap:10px;margin:14px 0}.approval-choice{display:flex;gap:12px;align-items:center;min-height:48px;padding:8px;border:1px solid #cbd5e1;border-radius:8px}.approval-choice input{width:22px;height:22px;flex:0 0 auto}.approval-choice span{overflow-wrap:anywhere}.approval-actions{display:flex;gap:10px;flex-wrap:wrap}.approval-actions button{min-height:48px}.approval-reject{background:#b91c1c!important;color:white!important}@media(max-width:640px){.approval-actions button{width:100%}.order-approval{padding:12px}}

.approval-reminder-dialog{box-sizing:border-box;width:min(620px,calc(100vw - 28px));max-width:620px;max-height:90dvh;overflow:auto;margin:auto;padding:30px;border:4px solid #f59e0b;border-radius:24px;background:#fff;color:#172033;box-shadow:0 24px 90px #0008;text-align:center}.approval-reminder-dialog::backdrop{background:rgba(15,23,42,.75)}.approval-reminder-icon{display:grid;place-items:center;width:76px;height:76px;margin:0 auto 18px;border-radius:50%;background:#f59e0b;color:#172033;font-size:54px;font-weight:900}.approval-reminder-dialog h2{font-size:28px;line-height:1.25;font-weight:800;margin:0 0 18px}.approval-reminder-dialog p{font-size:18px;line-height:1.5;margin:12px 0}.approval-reminder-orders{font-weight:700}.approval-reminder-actions{display:grid;gap:12px;margin-top:24px}.approval-reminder-actions button{width:100%;min-height:56px;padding:14px;border-radius:12px;font-size:18px;font-weight:700}.approval-reminder-open{background:#1d4ed8!important;color:#fff!important}.approval-reminder-later{background:#eff6ff!important;color:#1e3a8a!important;border:1px solid #93c5fd}.dark .approval-reminder-dialog{background:#172033;color:#f8fafc}@media(max-width:640px){.approval-reminder-dialog{padding:22px 18px}.approval-reminder-dialog h2{font-size:25px}}

.approval-reminder-actions label{display:flex;justify-content:center;align-items:center;gap:12px;font-size:17px;flex-wrap:wrap}.approval-reminder-actions input{width:90px;min-height:50px;padding:8px;border:2px solid #94a3b8;border-radius:8px;background:#fff;color:#172033;font-size:22px;text-align:center}.approval-reminder-actions [role=status]{font-size:15px;color:#b91c1c}
.order-approval .approval-actions button{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;max-width:100%;padding:14px 20px;border:2px solid transparent;border-radius:10px;font-size:16px;font-weight:700;line-height:1.4;text-align:center;white-space:normal;overflow-wrap:anywhere;cursor:pointer}.order-approval .approval-actions [data-approval-accept]{background:#15803d!important;color:#fff!important;border-color:#166534;box-shadow:0 3px 0 #14532d}.order-approval .approval-actions [data-approval-accept]::before{content:'✓';font-size:20px;font-weight:900;flex-shrink:0}.order-approval .approval-actions [data-approval-accept]:hover:not(:disabled){background:#166534!important}.order-approval .approval-actions [data-approval-accept]:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px 0 #14532d}.order-approval .approval-actions button:focus-visible{outline:3px solid #1d4ed8;outline-offset:3px}.order-approval .approval-actions button:disabled{background:#e2e8f0!important;color:#64748b!important;border-color:#cbd5e1;box-shadow:none;cursor:not-allowed;opacity:1}.order-approval .approval-actions .approval-reject{border-color:#991b1b}

/* Client order exports */
#cabinetModal .cabinet-toolbar{flex-wrap:wrap}#cabinetModal .order-export-button,#cabinetModal .order-export-filtered{min-height:44px;padding:9px 13px;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;border-radius:9px;font:inherit;font-size:13px;font-weight:600;max-width:100%;overflow-wrap:anywhere}#cabinetModal .order-export-button:disabled,#cabinetModal .order-export-filtered:disabled{opacity:.55;cursor:wait}#cabinetModal .order-export-notice{padding:12px 14px;border:1px solid #bfdbfe;border-radius:10px;background:#eff6ff;color:#1e40af;font-size:13px;line-height:1.6;margin:12px 0}#cabinetModal .order-export-filtered[hidden],#cabinetModal .order-export-button[hidden],#cabinetModal .order-export-notice[hidden]{display:none}.dark #cabinetModal .order-export-button,.dark #cabinetModal .order-export-filtered,.dark #cabinetModal .order-export-notice{background:#1e3050;border-color:#395a8b;color:#bfdbfe}@media(max-width:640px){#cabinetModal .cabinet-toolbar>.order-export-button{flex-basis:100%}}

/* Prominent actionable order updates; honor hidden state and reduced motion. */
#orderNotificationNotice:not([hidden]){box-sizing:border-box;display:flex;align-items:center;gap:18px;margin:16px auto;padding:22px 26px;max-width:1200px;border:3px solid #b45309;border-radius:16px;background:#fffbeb;color:#78350f;text-align:left;box-shadow:0 6px 22px #92400e22;font-size:17px;line-height:1.5}
.order-notice-icon{display:grid;place-items:center;flex:0 0 52px;height:52px;border-radius:50%;background:#b45309;color:white;font-size:36px;font-weight:900}.order-notice-content{display:grid;gap:6px;flex:1;min-width:0}.order-notice-content strong{font-size:23px;line-height:1.3}#orderNotificationNotice button{flex-shrink:0;min-height:48px;padding:12px 22px;border:0;border-radius:10px;background:#92400e;color:white;font-size:17px;font-weight:700;cursor:pointer}.dark #orderNotificationNotice:not([hidden]){background:#382612;color:#fff2d3;border-color:#fbbf24}.dark #orderNotificationNotice button{background:#fbbf24;color:#241608}@media(max-width:640px){#orderNotificationNotice:not([hidden]){margin:12px 10px;padding:18px;gap:12px;flex-wrap:wrap}.order-notice-content strong{font-size:21px}#orderNotificationNotice button{width:100%}}

/* Receipt reminders need the same readable prominence as order update notices. */
.receipt-limit-box{--receipt-bg:#eff6ff;--receipt-ink:#153e75;--receipt-line:#60a5fa;--receipt-action:#1d4ed8;--receipt-action-ink:#fff;box-sizing:border-box;display:flex;align-items:center;justify-content:flex-start;flex-wrap:nowrap;gap:18px;padding:20px 24px;margin:16px auto;max-width:1200px;background:var(--receipt-bg);color:var(--receipt-ink);border:2px solid var(--receipt-line);border-left-width:6px;border-radius:14px;box-shadow:0 4px 16px #1e40af12;font-size:16px;line-height:1.55;text-align:left}
.receipt-limit-box[hidden]{display:none}
.receipt-notice-icon{display:grid;place-items:center;flex:0 0 48px;height:48px;border-radius:12px;background:var(--receipt-action);color:var(--receipt-action-ink)}
.receipt-notice-content{display:grid;gap:5px;flex:1;min-width:0;overflow-wrap:anywhere}.receipt-notice-content strong{font-size:21px;line-height:1.35;font-weight:750}
.receipt-limit-box button{flex-shrink:0;min-height:46px;max-width:100%;padding:11px 18px;border:0;border-radius:9px;background:var(--receipt-action);color:var(--receipt-action-ink);font-size:16px;font-weight:700;line-height:1.4;text-decoration:none;white-space:normal;cursor:pointer}
.receipt-limit-box button:hover{filter:brightness(.92)}.receipt-limit-box button:focus-visible{outline:3px solid var(--receipt-action);outline-offset:4px}
.receipt-limit-box.receipt-blocked{--receipt-bg:#fff7ed;--receipt-ink:#7c2d12;--receipt-line:#f59e0b;--receipt-action:#9a3412;background:var(--receipt-bg);border-color:var(--receipt-line);color:var(--receipt-ink)}
.dark .receipt-limit-box{--receipt-bg:#172d48;--receipt-ink:#e4efff;--receipt-line:#60a5fa;--receipt-action:#93c5fd;--receipt-action-ink:#10243d}
.dark .receipt-limit-box.receipt-blocked{--receipt-bg:#382612;--receipt-ink:#fff2d3;--receipt-line:#fbbf24;--receipt-action:#fbbf24;--receipt-action-ink:#241608}
@media(max-width:640px){.receipt-limit-box{gap:12px;flex-wrap:wrap;margin:12px 10px;padding:16px;border-left-width:5px}.receipt-notice-icon{flex-basis:38px;height:38px;border-radius:10px}.receipt-notice-content{flex-basis:calc(100% - 50px)}.receipt-notice-content strong{font-size:19px}.receipt-limit-box button{width:100%;min-height:46px}.receipt-limit-box{font-size:15px}}

/* Terminal orders have a visible state beyond the small status chip. */
#cabinetModal .server-order-card.order-closed-success{background:#f0fdf4;border-color:#86cfa6;border-inline-start:5px solid #22a06b}
#cabinetModal .server-order-card.order-closed-cancelled{background:#f1f5f9;border-color:#cbd5e1;border-inline-start:5px solid #94a3b8}
#cabinetModal .server-order-closure{display:flex;width:fit-content;align-items:center;gap:5px;margin-top:7px;padding:3px 8px;border-radius:6px;background:#dcfce7;color:#166534;font-size:11px;font-weight:700;line-height:1.5}
#cabinetModal .order-closed-cancelled .server-order-closure{background:#e2e8f0;color:#475569}
.dark #cabinetModal .server-order-card.order-closed-success{background:#102c24;border-color:#27644b;border-inline-start-color:#4ade80}
.dark #cabinetModal .server-order-card.order-closed-cancelled{background:#1e293b;border-color:#475569;border-inline-start-color:#64748b}
.dark #cabinetModal .server-order-closure{background:#164e36;color:#bbf7d0}
.dark #cabinetModal .order-closed-cancelled .server-order-closure{background:#334155;color:#cbd5e1}
