.pos-page{--pos-shell:#0f172a;--pos-surface:#f8fafc;--pos-surface-2:#eef2f7;--pos-text:#0f172a;--pos-text-muted:#64748b;--pos-border:var(--border);--pos-shadow-soft:0 1px 2px #0000000d;--pos-button-separation-border:#0f172a2e;--pos-button-separation-shadow:0 0 0 1px #0f172a0f, 0 3px 8px #0000001f;--pos-radius-card:14px;--pos-radius-btn:12px;--pos-accent-blue:#2563eb;--pos-accent-blue-hover:#1d4ed8;--pos-checkout-green:#059669;--pos-checkout-green-hover:#047857;--pos-refund-orange:#ea580c;--pos-danger:#dc2626;background:var(--pos-shell)!important}body.theme-dark .pos-page{--pos-shell:#07111f;--pos-surface:#0f172a;--pos-surface-2:#131d31;--pos-text:#f8fafc;--pos-text-muted:#94a3b8;--pos-border:#2b3a55;--pos-shadow-soft:0 1px 2px #0003;--pos-button-separation-border:#ffffff14;--pos-button-separation-shadow:0 0 0 1px #ffffff0a, 0 3px 8px #0000004d}.pos-page .stat-card{background:var(--pos-surface);color:var(--pos-text);border:1px solid var(--pos-border);border-radius:var(--pos-radius-card);box-shadow:var(--pos-shadow-soft)}.pos-page .stat-card h3{color:var(--pos-text)}.pos-tab-row button{background:var(--pos-surface-2);border:1px solid var(--pos-border);color:var(--pos-text);border-radius:var(--pos-radius-btn);transition:background .15s,border-color .15s,box-shadow .15s,transform .12s}.pos-tab-row button:hover{color:var(--pos-text);background:#e2e8f0;border-color:#cbd5e1}.pos-tab-row button.active{color:#1e1b4b;box-shadow:var(--pos-shadow-soft);background:#e0e7ff;border-color:#a5b4fc}.pos-settings-save-btn{color:#f8fafc;box-shadow:var(--pos-shadow-soft);background:linear-gradient(#475569 0%,#334155 100%);border:1px solid #334155}.pos-settings-save-btn:hover:not(:disabled){filter:brightness(1.05);box-shadow:0 2px 6px #00000014}.pos-settings-save-btn:active:not(:disabled){transform:translateY(1px)}.pos-register-status-strip{border:1px solid var(--pos-border);border-radius:var(--pos-radius-btn);background:var(--pos-surface-2);color:var(--pos-text);box-shadow:var(--pos-shadow-soft)}.pos-register-status-center,.pos-register-status-right{color:var(--pos-text);font-weight:700}.pos-register-layout{gap:1.5rem}.pos-page .pos-sale-column,.pos-page .pos-center-column,.pos-page .pos-keypad-column{background:var(--pos-surface);border:1px solid var(--pos-border);border-radius:var(--pos-radius-card);box-shadow:var(--pos-shadow-soft);color:var(--pos-text);padding:1.1rem}.pos-sale-column h3,.pos-center-column h3,.pos-keypad-column h3{color:var(--pos-text)}.pos-sale-column .muted-text,.pos-center-column .muted-text,.pos-keypad-column .muted-text{color:var(--pos-text-muted)}.pos-register-top-pumps{gap:.65rem}.pos-pump-card{background:var(--surface-1);border:1px solid var(--pos-border);color:var(--text-main);box-shadow:var(--pos-shadow-soft);border-radius:var(--pos-radius-card);transition:transform .15s,box-shadow .15s,border-color .15s}.pos-pump-card:hover{transform:translateY(-2px);box-shadow:0 2px 8px #00000014}.pos-pump-card .num{color:var(--text-main)}.pos-pump-card.is-active{border-color:var(--pos-accent-blue);box-shadow:0 0 0 2px #2563eb33}.pos-pump-card.status-authorized .meta{color:#16a34a;text-shadow:none}.pos-pump-card.status-stopped .meta{color:var(--pos-danger);text-shadow:none}.pos-pump-card.status-calling .meta{color:#d97706;text-shadow:none}.pos-pump-card.status-idle .meta{color:var(--text-muted)}.pos-pump-actions{background:var(--pos-surface);border:1px solid var(--pos-border);box-shadow:var(--pos-shadow-soft)}.pos-sale-list{gap:.45rem}.pos-sale-group-header .scope-chip-kind{color:#1e3a8a;background:#dbeafe}.pos-sale-group-header .scope-chip-label{color:var(--pos-text);background:var(--pos-surface-2);border:1px solid var(--pos-border)}.pos-sale-group-unassigned{color:var(--pos-text-muted)}.pos-held-tab{background:var(--pos-surface-2);border:1px solid var(--pos-border);color:var(--pos-text-muted);border-bottom-color:#0000}.pos-held-tab:hover{color:var(--pos-text);background:#e2e8f0}.pos-held-tab.active{background:var(--surface-1);border-color:var(--pos-border);color:var(--pos-accent-blue);box-shadow:none;border-bottom-color:#fff}.pos-sale-line{background:var(--surface-1);border:1px solid var(--pos-border);color:var(--text-main);box-shadow:var(--pos-shadow-soft);border-radius:var(--pos-radius-btn);transition:background .15s,border-color .15s,box-shadow .15s,transform .12s}.pos-sale-line:hover{background:var(--pos-surface-2)}.pos-sale-line.selected{box-shadow:var(--pos-shadow-soft);background:#fef9c3bf;border-color:#fde047}.pos-sale-line .qty,.pos-sale-line .amt,.pos-sale-line .subline-label,.pos-sale-line .subline-amt{color:var(--text-muted)}.pos-sale-totals{border-top:1px solid var(--pos-border);border-bottom:1px solid var(--pos-border)}.pos-sale-totals>div span,.pos-sale-totals>div strong{color:var(--pos-text)}.pos-sale-total-main span{font-size:1.05rem;font-weight:800}.pos-sale-total-main strong{letter-spacing:-.02em;font-size:1.35rem;font-weight:800}.pos-hardware-ticket-strip{background:var(--pos-surface-2);border:1px solid var(--pos-border);color:var(--pos-text)}.pos-hardware-strip-row.muted-text{color:var(--pos-text-muted)!important}.pos-tax-exempt-chip{color:#047857;background:#10b9811f;border-color:#10b981}.pos-sale-actions{gap:.6rem}.pos-sale-actions button{background:var(--pos-surface-2);border:1px solid var(--pos-button-separation-border);color:var(--pos-text);-webkit-backdrop-filter:none;box-shadow:var(--pos-button-separation-shadow);border-radius:var(--pos-radius-btn)}.pos-sale-actions button:hover:not(:disabled){border-color:var(--pos-button-separation-border);box-shadow:var(--pos-button-separation-shadow), 0 2px 6px #0000000f;background:#e2e8f0}.pos-sale-actions button:disabled{color:#94a3b8;border-color:var(--pos-border);background:#f1f5f9}.pos-sale-actions .refund-btn{color:#9a3412;background:#fff7ed;border:1px solid #fdba74}.pos-sale-actions .refund-btn:hover:not(:disabled){background:#ffedd5;border-color:#fb923c}.pos-sale-actions .loyalty-btn{background:var(--pos-accent-blue);border-color:var(--pos-accent-blue-hover);color:#fff}.pos-sale-actions .loyalty-btn:hover:not(:disabled){background:var(--pos-accent-blue-hover)}.pos-checkout-main{border-radius:var(--pos-radius-card);background:linear-gradient(180deg, #10b981 0%, var(--pos-checkout-green) 100%);color:#fff;width:100%;min-height:58px;box-shadow:var(--pos-shadow-soft);border:1px solid #059669;font-size:1.3rem;font-weight:800}.pos-checkout-main:hover:not(:disabled){filter:brightness(1.04);transform:translateY(-1px);box-shadow:0 2px 8px #05966940}.pos-checkout-main:active:not(:disabled){transform:translateY(0)}.pos-checkout-main:disabled{color:#ecfdf5;background:#a7f3d0;border-color:#6ee7b7}.pos-register .pos-shortcuts-grid{grid-template-columns:repeat(4,minmax(92px,1fr));gap:.65rem}.pos-register .pos-center-column .shortcut-tile:not(.shortcut-tile-empty):not(.shortcut-tile-locked):not(.shortcut-tile-config){background:var(--surface-1);border:1px solid var(--pos-button-separation-border);color:var(--text-main);box-shadow:var(--pos-button-separation-shadow);border-radius:var(--pos-radius-btn);transition:transform .12s,box-shadow .15s,border-color .15s;border-color:var(--pos-button-separation-border)!important}.pos-register .pos-center-column .shortcut-tile:not(.shortcut-tile-empty):not(.shortcut-tile-locked):not(.shortcut-tile-config):hover{box-shadow:var(--pos-button-separation-shadow), 0 2px 8px #00000014;transform:translateY(-2px);border-color:var(--pos-button-separation-border)!important}.pos-register .pos-center-column .shortcut-tile:not(.shortcut-tile-empty):not(.shortcut-tile-locked):not(.shortcut-tile-config):active{box-shadow:var(--pos-button-separation-shadow);transform:translateY(0);border-color:var(--pos-button-separation-border)!important}.pos-register .shortcut-tile.shortcut-tile-empty{background:var(--pos-surface-2);color:#0000;border:1px dashed #cbd5e1}.pos-register .pos-shortcut-page-dot{background:var(--surface-1);border:1px solid var(--pos-border);color:var(--text-muted)}.pos-register .pos-shortcut-page-dot.active{color:var(--pos-accent-blue);background:#eff6ff;border-color:#93c5fd}.pos-register .pos-shortcut-add-page-btn{background:var(--pos-surface-2);border:1px solid var(--pos-border);color:var(--pos-text)}.pos-shortcuts-locked-dock{padding-top:.75rem}.pos-register .pos-shortcuts-locked-row{gap:.55rem}.pos-register .shortcut-tile.shortcut-tile-locked:not(.shortcut-tile-locked-danger){background:var(--pos-surface-2);border:1px solid var(--pos-button-separation-border);color:var(--pos-text);box-shadow:var(--pos-button-separation-shadow)}.pos-register .shortcut-tile.shortcut-tile-locked:not(.shortcut-tile-locked-danger):hover:not(:disabled){border-color:var(--pos-button-separation-border);background:#e2e8f0}.pos-register .shortcut-tile.shortcut-tile-locked.shortcut-tile-locked-open-price{background:var(--pos-surface-2);border:1px solid var(--pos-button-separation-border);color:var(--pos-text);box-shadow:var(--pos-button-separation-shadow)}.pos-register .shortcut-tile.shortcut-tile-locked.shortcut-tile-locked-danger{color:#fff;background:linear-gradient(#ef4444 0%,#dc2626 100%);border-color:#b91c1c}.pos-register .shortcut-tile.shortcut-tile-locked.shortcut-tile-locked-danger:hover:not(:disabled){filter:brightness(1.05)}.pos-register .shortcut-tile.shortcut-tile-locked.shortcut-tile-locked-placeholder{background:var(--pos-surface-2);color:#0000;border:1px dashed #cbd5e1}.pos-stop-all-pumps-btn{box-shadow:var(--pos-shadow-soft)}.pos-register .pos-center-column .table-wrap{border:1px solid var(--pos-border);border-radius:var(--pos-radius-btn);background:var(--surface-1);box-shadow:var(--pos-shadow-soft);margin-top:.65rem;overflow:auto}.pos-register .pos-center-column .data-table thead th{background:var(--pos-surface-2);color:var(--pos-text);border-color:var(--pos-border)}.pos-register .pos-center-column .data-table tbody td{color:var(--text-main);border-color:var(--pos-border)}.pos-keypad-display{border:1px solid var(--pos-border);background:var(--surface-1);color:var(--text-main);border-radius:var(--pos-radius-btn);box-shadow:var(--pos-shadow-soft);font-size:1.65rem;font-weight:800}.pos-keypad-grid{gap:.5rem}.pos-keypad-grid button{background:var(--surface-1);border:1px solid var(--pos-button-separation-border);color:var(--text-main);border-radius:var(--pos-radius-btn);box-shadow:var(--pos-button-separation-shadow)}.pos-keypad-grid button:hover{background:var(--pos-surface-2);border-color:var(--pos-button-separation-border);color:var(--pos-text);box-shadow:var(--pos-button-separation-shadow), 0 2px 6px #0000000f}.pos-keypad-grid button:active{background:#e2e8f0;transform:scale(.98)}.pos-keypad-quick-pay{background:var(--surface-1);border:1px solid var(--pos-border);box-shadow:var(--pos-shadow-soft)}.pos-keypad-quick-pay-title{color:var(--text-main);font-weight:800}.pos-keypad-quick-pay-grid button{border:1px solid var(--pos-button-separation-border);color:var(--pos-accent-blue);box-shadow:var(--pos-button-separation-shadow);background:#eff6ff}.pos-keypad-quick-pay-grid button:hover:not(:disabled){border-color:var(--pos-button-separation-border);box-shadow:var(--pos-button-separation-shadow), 0 2px 6px #0000000f;background:#dbeafe}.pos-keypad-price-actions button,.pos-keypad-tax-btn:not(:disabled),.pos-keypad-no-tax-btn:not(:disabled){background:var(--pos-surface-2);border:1px solid var(--pos-button-separation-border);color:var(--pos-text);box-shadow:var(--pos-button-separation-shadow)}.pos-keypad-tax-btn:not(:disabled):hover,.pos-keypad-no-tax-btn:not(:disabled):hover{background:#e2e8f0}.pos-keypad-function-btn{background:var(--pos-accent-blue);color:#fff;box-shadow:var(--pos-button-separation-shadow);border:1px solid #0f172a47}.pos-keypad-function-btn:hover{background:var(--pos-accent-blue-hover)}.pos-keypad-function-btn:active{transform:translateY(1px)}body.theme-dark .pos-tab-row button:hover{background:#1e293b;border-color:#334155}body.theme-dark .pos-tab-row button.active{color:#eff6ff;background:#1e3a8a;border-color:#3b82f6}body.theme-dark .pos-held-tab:hover{color:#f8fafc;background:#1e293b}body.theme-dark .pos-held-tab.active{background:var(--pos-surface);border-bottom-color:var(--pos-surface);color:#60a5fa}body.theme-dark .pos-sale-line.selected{background:#eab30826;border-color:#ca8a04}body.theme-dark .pos-sale-actions button:hover:not(:disabled){background:#1e293b}body.theme-dark .pos-sale-actions button:disabled{color:#475569;background:#0f172a;border-color:#1e293b}body.theme-dark .pos-sale-actions .refund-btn{color:#fdba74;background:#9a341226;border-color:#c2410c}body.theme-dark .pos-sale-actions .refund-btn:hover:not(:disabled){background:#9a341240;border-color:#ea580c}body.theme-dark .pos-register .shortcut-tile.shortcut-tile-empty{background:#ffffff05;border:1px dashed #ffffff1a}body.theme-dark .pos-register .pos-shortcut-page-dot.active{color:#60a5fa;background:#1e3a8a;border-color:#3b82f6}body.theme-dark .pos-register .shortcut-tile.shortcut-tile-locked:not(.shortcut-tile-locked-danger):hover:not(:disabled),body.theme-dark .pos-keypad-grid button:hover{background:#1e293b}body.theme-dark .pos-keypad-grid button:active{background:#0f172a}body.theme-dark .pos-keypad-quick-pay-grid button{color:#60a5fa;background:#2563eb1a;border-color:#2563eb4d}body.theme-dark .pos-keypad-quick-pay-grid button:hover:not(:disabled){background:#2563eb33;border-color:#2563eb80}body.theme-dark .pos-keypad-tax-btn:not(:disabled):hover,body.theme-dark .pos-keypad-no-tax-btn:not(:disabled):hover{background:#1e293b}.pos-fit-viewport{width:100%;height:calc(100dvh - max(env(safe-area-inset-bottom,0px), var(--pos-bottom-reserve,56px)));background:#0f172a;justify-content:flex-start;align-items:flex-start;display:flex;position:relative;overflow:hidden}body.theme-dark .pos-fit-viewport{background:#07111f}.pos-fit-canvas{transform-origin:0 0;flex:none}.pos-device-register .legacy-main-content-inner{height:auto;min-height:0;padding:6px 14px;display:block}.pos-device-register .pos-page{padding:0;display:block;overflow:visible}.pos-device-register .pos-page .pos-register{flex-direction:column;height:auto;display:flex;min-height:0!important}.pos-device-register .pos-page .pos-register-layout{align-items:stretch;gap:.7rem;grid-template-columns:minmax(240px,1fr) minmax(360px,2fr) minmax(240px,1fr)!important}.pos-device-register .pos-sale-column{flex-direction:column;display:flex}.pos-device-register .pos-sale-list{flex:auto;min-height:120px;max-height:none}.pos-device-register .pos-keypad-quick-pay-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media (orientation:landscape) and (max-height:860px){.app-modal-backdrop{padding:8px}.pos-page .app-modal-card,.app-modal-card{max-height:calc(100dvh - 16px)}.pos-shift-start-modal,.pos-function-modal{gap:.35rem}.pos-cash-keypad{gap:.3rem}.pos-cash-keypad button,.pos-function-action-btn{min-height:40px}}.pos-shift-start-modal{gap:.5rem}.pos-shift-start-modal .field input{text-align:center;letter-spacing:.18em;caret-color:#0000;cursor:pointer;font-size:1.3rem;font-weight:700}.pos-shift-start-modal .field input.pos-keypad-field-active{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb47}.pos-shift-start-modal .pos-cash-keypad{grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:.15rem;display:grid}.pos-shift-start-modal .pos-cash-keypad button{border-radius:12px;min-height:52px;font-size:1.2rem;font-weight:700}.pos-shift-start-modal .pos-cash-keypad button.wide{grid-column:span 2}.pos-shift-start-dialog .app-modal-actions{flex-direction:column-reverse;align-items:stretch;gap:.5rem}.pos-shift-start-dialog .app-modal-btn{width:100%;min-height:48px;font-size:1.02rem}@media (orientation:landscape) and (max-height:720px){.pos-shift-start-modal .field input{font-size:1.15rem}.pos-shift-start-modal .pos-cash-keypad{gap:.35rem}.pos-shift-start-modal .pos-cash-keypad button{min-height:42px;font-size:1.05rem}.pos-shift-start-dialog .app-modal-btn{min-height:42px}}
