/* Nordmark supermarket upgrade: themes, staff register and receipt refinements */
:root,
:root[data-theme="nordic"]{--theme-top:#0b1115;--theme-body:#1c2931;--theme-primary:#128aaa;--theme-secondary:#31bedb;--theme-accent:#2bbf6a;--theme-panel:#f3f6f7;--theme-paper:#ffffff;--theme-warning:#f2c94c;--theme-danger:#ef5b57}
:root[data-theme="evergreen"]{--theme-top:#102016;--theme-body:#203528;--theme-primary:#21835e;--theme-secondary:#65c78b;--theme-accent:#8bc34a;--theme-panel:#f2f7f1;--theme-paper:#ffffff;--theme-warning:#e7b84b;--theme-danger:#db5d51}
:root[data-theme="midnight"]{--theme-top:#07101f;--theme-body:#121d30;--theme-primary:#425bd8;--theme-secondary:#74a8ff;--theme-accent:#4ecdc4;--theme-panel:#f1f4fa;--theme-paper:#ffffff;--theme-warning:#f2b84b;--theme-danger:#f05d6c}
body{background:var(--theme-body)}.app{background:#dfe6e8}.topbar,.admin-top{background:var(--theme-top)}.brand-symbol,.admin-primary,.modal-primary,.scan-form button{background:var(--theme-primary)}.terminal-strip{background:color-mix(in srgb,var(--theme-top) 86%,#ffffff 14%)}.grand-total strong,.last-item strong:nth-of-type(2),.admin-brand,.stat strong{color:var(--theme-primary)}.pill.open{color:#d9ffe4;border-color:var(--theme-accent)}.category-bar,.catalog,.keypad-drawer{display:none!important}.supermarket-register{grid-template-columns:minmax(460px,1.05fr) minmax(520px,.95fr);min-height:720px}.operation-zone{display:flex;flex-direction:column}.scan-form{border-color:var(--theme-secondary)}.quick-section{padding:13px;background:#eef3f5;border:1px solid #aebdc3;border-radius:4px}.quick-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:10px;color:#5d7078}.quick-heading strong{display:block;margin-top:4px;color:#203941;font:600 18px var(--display)}.quick-heading>span{font:500 9px var(--mono);text-align:right}.quick-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.quick-item{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr);gap:9px;min-height:68px;padding:9px;background:#fff;border:1px solid #becace;border-radius:4px;text-align:left;box-shadow:0 1px 2px #0001}.quick-item:hover{border-color:var(--theme-secondary);background:#eefbfc}.quick-icon{width:34px;height:34px;display:grid;place-items:center;color:#fff;background:var(--theme-primary);border-radius:4px;font:700 16px var(--display)}.quick-item strong,.quick-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quick-item strong{font-size:11px;color:#21373e}.quick-item small{margin-top:4px;color:#7c8f96;font:500 9px var(--mono)}.quick-item b{position:absolute;right:8px;bottom:7px;color:var(--theme-primary);font:600 11px var(--mono)}.keypad-area{display:grid;grid-template-columns:minmax(250px,1fr) 170px 185px;gap:9px;align-items:stretch;margin-top:auto}.plu-pad-card{padding:12px;background:#eef3f5;border:1px solid #aebdc3;border-radius:4px}.pad-label{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:9px}.pad-label strong{color:#203941;font:600 17px var(--display)}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.keypad button{min-height:62px;color:#18323a;background:#fff;border:1px solid #aab8be;border-radius:4px;box-shadow:0 2px 1px #0001;font:700 27px var(--display)}.keypad button:hover{background:#e7f4f7}.keypad button.clear{color:#fff;background:var(--theme-danger)}.plu-enter{width:100%;min-height:49px;margin-top:8px;color:#fff;background:var(--theme-primary);border-radius:4px;font:700 14px var(--display);letter-spacing:.03em}.action-stack{display:grid;gap:7px}.touch-key{min-height:74px;color:#fff;background:#566e78;border:2px solid #ffffff66;border-radius:4px;box-shadow:0 2px 2px #0002;font:700 13px var(--display);letter-spacing:.02em}.touch-key:hover{background:var(--theme-primary)}.price-key{background:#c57428}.pay-stack{display:grid;grid-template-rows:repeat(3,1fr);gap:7px}.pay{min-height:74px}.cart-line{display:grid;grid-template-columns:minmax(0,1fr) 58px;gap:8px;width:100%;padding:0;background:#fff;border-bottom:1px solid #e0e5e7}.line-select{display:grid;grid-template-columns:55px minmax(100px,1fr) 88px 92px;gap:6px;align-items:center;width:100%;min-width:0;padding:11px 0 11px 20px;color:#21343b;background:transparent;text-align:left}.cart-line.selected .line-select{background:#e7f5f8;box-shadow:inset 4px 0 var(--theme-secondary)}.cart-line.selected{position:relative}.cart-line.selected:after{content:'VALGT';position:absolute;right:68px;top:4px;color:var(--theme-primary);font:600 8px var(--mono)}.line-delete{align-self:stretch;margin:6px 7px 6px 0;color:#fff;background:#c94d4b;border-radius:4px;font:700 10px var(--display);letter-spacing:.04em}.line-delete:hover{background:#a93837}.line-name em{display:inline-block;margin-left:5px;padding:2px 4px;color:#fff;background:#c57428;border-radius:3px;font:600 7px var(--mono);font-style:normal}.line-price del{display:block;color:#9aa7ac;font-size:9px}.line-price b{display:block;color:#c57428;font-weight:700}.login-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:14px}.login-pad button{min-height:45px;color:#18323a;background:#e6edef;border:1px solid #a9b8bd;border-radius:3px;box-shadow:0 2px 1px #0002;font:600 20px var(--display)}.login-pad button:hover{background:#cfeaf0}.login-focus{display:flex;justify-content:center;gap:7px;margin-top:10px}.focus-choice{padding:6px 12px;color:#62757c;background:#e3eaec;border-radius:3px;font:600 10px var(--mono)}.focus-choice.active{color:#fff;background:var(--theme-primary)}.modal-pad{max-width:260px}.price-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:12px}.price-pad button{min-height:45px;color:#18323a;background:#e6edef;border:1px solid #a9b8bd;border-radius:3px;font:600 20px var(--display)}.edit-modal .modal-actions{align-items:center}.danger-button{min-height:43px;padding:0 15px;margin-right:auto;color:#fff;background:#d4524e;border-radius:3px;font:700 12px var(--display)}.receipt-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:12px}.receipt-title h2{margin:5px 0 0}.receipt-paper{border-top:4px solid var(--theme-primary)}.paper-copy{padding:5px;color:var(--theme-primary);background:#e5f5f7;text-align:center;font-size:8px;font-weight:700;letter-spacing:.08em}.paper-total{font-size:13px;font-weight:700}.receipt-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:14px}.print-button{min-height:43px;padding:0 15px;color:#fff;background:#3f7fce;border-radius:3px;font:700 12px var(--display)}.parked-list{max-height:330px;overflow:auto}.parked-row{display:grid;grid-template-columns:1fr auto auto;gap:15px;width:100%;padding:13px 8px;color:#2d474f;background:#fff;border-bottom:1px solid #dce5e7;text-align:left}.parked-row:hover{background:#e6f6f8}.parked-row span{color:#7a8c92;font:500 10px var(--mono)}.parked-row b{color:var(--theme-primary);font:600 11px var(--mono)}.modal.login-modal .form-error{min-height:22px;padding-top:5px}.login-pad button:focus,.focus-choice:focus,.modal-primary:focus,.line-delete:focus,.plu-enter:focus{outline:3px solid var(--theme-secondary);outline-offset:2px}
@media(max-width:1050px){.supermarket-register{grid-template-columns:1fr}.keypad-area{grid-template-columns:1fr 160px 160px}.quick-items{grid-template-columns:repeat(4,1fr)}}
@media(max-width:700px){.quick-items{grid-template-columns:repeat(2,1fr)}.keypad-area{grid-template-columns:1fr}.action-stack,.pay-stack{grid-template-columns:repeat(3,1fr);grid-template-rows:1fr}.line-select{grid-template-columns:42px minmax(70px,1fr) 63px 70px;padding-left:12px}.line-delete{margin-right:4px;font-size:9px}.cart-line.selected:after{display:none}.receipt-actions{flex-direction:column}.receipt-actions button{width:100%}}
