*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Segoe UI",Tahoma,Arial,sans-serif;background:#eef3f8;color:#102033;direction:rtl}button,input,select{font:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:290px 1fr}.sidebar{background:linear-gradient(180deg,#081827,#102c45);color:white;padding:24px 22px;display:flex;flex-direction:column;gap:18px;position:sticky;top:0;height:100vh;overflow-y:auto}.brand{display:flex;align-items:center;gap:14px}.brand-mark{width:48px;height:48px;border-radius:18px;background:#22dcc5;color:#06202a;display:grid;place-items:center;font-weight:900;font-size:26px;box-shadow:0 16px 40px rgba(34,220,197,.35)}.brand strong{display:block;font-size:20px}.brand span{display:block;color:#9fb4c6;font-size:12px;margin-top:5px}.nav{width:100%;text-align:right;border:0;background:transparent;color:#cfe2f3;padding:13px 14px;border-radius:15px;font-weight:800;cursor:pointer}.nav:hover,.nav.active{background:rgba(255,255,255,.13);color:white}.ghost{border:1px solid rgba(255,255,255,.25);background:transparent;color:white;border-radius:15px;padding:12px;cursor:pointer}.ai-card{margin-top:auto;background:rgba(34,220,197,.13);border:1px solid rgba(34,220,197,.35);border-radius:22px;padding:18px}.ai-card small{color:#22dcc5;font-weight:900}.ai-card p{line-height:1.8;margin:10px 0 0;color:#e7fbff}.content{padding:30px;min-width:0}.topbar{background:white;border-radius:30px;padding:28px 32px;display:flex;justify-content:space-between;align-items:center;gap:20px;box-shadow:0 18px 50px rgba(25,45,70,.08)}h1{margin:0 0 10px;font-size:30px;color:#071d2d}h2{margin:0 0 18px;font-size:22px}h3{margin:20px 0 12px}p{margin:8px 0;color:#60758a;line-height:1.8}.primary{border:0;background:#0f766e;color:white;border-radius:16px;padding:14px 20px;font-weight:900;font-size:15px;box-shadow:0 14px 28px rgba(15,118,110,.25);cursor:pointer}.primary:hover{background:#0b5f59}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:22px 0}.stats article,.panel{background:white;border-radius:24px;padding:22px;box-shadow:0 14px 40px rgba(20,40,60,.07);border:1px solid #e6edf3}.stats span{display:block;color:#6b7f91;font-size:13px}.stats strong{display:block;font-size:22px;margin:12px 0;color:#0b2438}.stats em{font-style:normal;color:#0f9f7a;font-weight:800;font-size:13px}.workspace{display:grid;grid-template-columns:.85fr 1.25fr;gap:20px;align-items:start}.wide{grid-column:span 1}.section-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px}.badge{background:#e6fffb;color:#087064;border:1px solid #a7f3d0;border-radius:999px;padding:7px 12px;font-weight:900;font-size:12px}.auth-page{min-height:100vh;display:grid;place-items:center;padding:30px;background:radial-gradient(circle at top right,#ccfbf1,transparent 35%),#eef3f8}.auth-card{width:min(1100px,100%)}.auth-card>div:first-child{text-align:center;margin-bottom:24px}.auth-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}form{display:grid;gap:13px}label{display:grid;gap:7px;color:#52687e;font-weight:800}input,select{width:100%;border:1px solid #d8e3ec;border-radius:14px;padding:12px 13px;background:#fbfdff;color:#102033}small{color:#71869a}.flow{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.flow div{background:#f6fbfb;border:1px solid #cfece6;border-radius:18px;padding:18px;font-weight:900;text-align:center}.public-menu{display:grid;gap:12px}.food-card{background:#f8fafc;color:#102033;border:1px solid #e3edf4;border-radius:20px;padding:16px;display:flex;justify-content:space-between;align-items:center;gap:10px}.food-card span{display:grid;gap:4px}.food-card strong{color:#0f766e}.order-row,.recipe-row,.stock-row,.ledger div{border-bottom:1px solid #edf2f7;padding:14px 0;display:flex;justify-content:space-between;gap:14px;align-items:center}.order-row b,.recipe-row b,.stock-row b,.ledger b{color:#102033}.order-row span,.recipe-row span{color:#60758a}.order-row em,.stock-row em{font-style:normal;color:#71869a;font-size:12px}.stock-row.danger b{color:#dc2626}.ledger .total{background:#ecfdf5;border-radius:16px;border:0;padding:16px;margin-top:10px;font-weight:900}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.cards div{background:linear-gradient(135deg,#f8fafc,#eef9f7);border:1px solid #dce9ef;border-radius:18px;padding:16px}.cards b{display:block;margin-bottom:8px;color:#082438}code{display:inline-block;direction:ltr;background:#0b1f31;color:#c9fff6;border-radius:12px;padding:12px 16px;margin-top:10px}@media(max-width:1050px){.app-shell,.auth-grid{grid-template-columns:1fr}.sidebar{height:auto;position:relative}.grid,.workspace,.flow,.cards{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}}.secondary{border:1px solid #0f766e;background:#ecfdf5;color:#0f766e;border-radius:16px;padding:12px 16px;font-weight:900;cursor:pointer}.danger-button{border:1px solid #fecaca;background:#fff1f2;color:#be123c;border-radius:14px;padding:10px 12px;font-weight:900;cursor:pointer;align-self:end}.ingredient-row{display:grid;grid-template-columns:1fr 150px auto;gap:10px;align-items:end;background:#f8fafc;border:1px solid #e3edf4;border-radius:18px;padding:12px;margin-bottom:10px}.public-link{display:inline-block;color:#0f766e;font-weight:900;text-decoration:none;margin:8px 0}.public-page{min-height:100vh;padding:28px;background:linear-gradient(135deg,#06202a,#0f766e 55%,#eefcf8);display:grid;grid-template-columns:minmax(260px,420px) minmax(320px,760px);gap:22px;align-items:start}.public-hero,.public-panel{background:rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.55);border-radius:30px;padding:28px;box-shadow:0 20px 60px rgba(3,31,39,.18)}.public-hero{position:sticky;top:24px}.public-category{margin:18px 0}.public-food{display:grid;grid-template-columns:1fr auto 88px;gap:12px;align-items:center;border:1px solid #e3edf4;border-radius:20px;padding:14px;margin-bottom:10px;background:#f8fafc}.public-food small{display:block;color:#60758a;margin-top:6px}.public-food input{width:100%;border:1px solid #d9e6ef;border-radius:14px;padding:10px}.success-message{background:#ecfdf5;color:#0f766e;border:1px solid #a7f3d0;border-radius:16px;padding:12px 14px;font-weight:900}.edit-row{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr)) auto auto;gap:10px;align-items:end;border:1px solid #e3edf4;border-radius:20px;padding:14px;margin-bottom:12px;background:#f8fafc}.edit-row.danger{border-color:#fecaca;background:#fff7f7}.edit-row label{margin:0}.edit-row .check{display:flex;align-items:center;gap:8px;font-weight:800}.secondary{border:1px solid #b7c9d9;background:#fff;color:#102033;border-radius:14px;padding:12px 16px;font-weight:900;cursor:pointer}.danger-button{border:0;background:#fee2e2;color:#991b1b;border-radius:14px;padding:12px 16px;font-weight:900;cursor:pointer}@media(max-width:800px){.ingredient-row,.edit-row{grid-template-columns:1fr}.public-page{grid-template-columns:1fr;padding:14px}.public-hero{position:static}.public-food{grid-template-columns:1fr}}
 .cost-preview{margin:16px 0;padding:14px 16px;border-radius:18px;background:#ecfdf5;border:1px solid #99f6e4;color:#0f3f3a;display:grid;gap:8px;line-height:1.8;text-align:right}.cost-preview b{color:#0f766e;text-align:right}.cost-preview span{color:#416052;font-size:13px;text-align:right}.danger{background:#fff1f2!important;border-color:#fecdd3!important}.danger small,.danger p{color:#9f1239!important}

.recipe-new-action{display:flex;justify-content:center;margin-bottom:18px}textarea{width:100%;border:1px solid #d8e3ec;border-radius:16px;padding:12px 14px;resize:vertical;min-height:120px;background:white;color:#102033}.recipe-row p{margin:8px 0;color:#496174}

.recipe-workspace{display:flex;flex-direction:row;align-items:flex-start;gap:20px}.recipe-form-panel{flex:1 1 50%;order:1}.recipe-list-panel{flex:1 1 50%;order:2}.ingredient-number{font-weight:900;font-size:22px;color:#0f766e;align-self:center;text-align:center}.recipe-actions{display:flex;gap:10px;flex-wrap:wrap}.recipe-row{display:grid;grid-template-columns:minmax(90px,1fr) minmax(170px,1.4fr) 70px 70px 70px;gap:12px;align-items:center;justify-content:stretch}.recipe-row em{display:block;color:#60758a;font-style:normal;margin-top:4px}.recipe-row strong{display:block;color:#0f766e;margin-top:6px}@media(max-width:900px){.recipe-workspace{flex-direction:column}.recipe-form-panel,.recipe-list-panel{width:100%}}

.recipe-list-panel h2{text-align:center}.recipe-row strong{text-align:right;justify-self:stretch;white-space:nowrap;font-size:13px}.recipe-row b{white-space:nowrap;text-align:right}.recipe-row .secondary,.recipe-row .danger-button{padding:9px 12px;min-width:70px;text-align:center}

.print-modal-overlay{position:fixed;inset:0;background:rgba(6,18,31,.55);z-index:50;display:flex;align-items:flex-start;justify-content:center;padding:28px;overflow:auto}.print-modal{background:#fff;border-radius:22px;box-shadow:0 24px 70px rgba(6,18,31,.28);width:min(820px,96vw);padding:18px}.print-actions{display:flex;gap:10px;justify-content:flex-end;margin-bottom:12px}.recipe-print-sheet{direction:rtl;background:white;color:#102033;padding:28px 34px;font-size:15px;line-height:2}.recipe-print-header{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid #edf1f5;padding-bottom:18px;margin-bottom:18px}.recipe-print-header h1{font-size:20px;margin:0}.recipe-print-header strong{font-size:15px}.recipe-print-box{border:1px solid #dfe7ee;border-radius:16px;padding:18px 22px;margin:14px 0;min-height:92px}.recipe-print-box h2{font-size:20px;margin:0 0 14px;text-align:right}.recipe-print-ingredients{display:grid;gap:8px;text-align:right}.recipe-print-steps{min-height:230px}.recipe-print-steps p{white-space:pre-wrap;text-align:right}@media print{@page{margin:0}body>*:not(#printModalRoot):not(#dailyClosingModalRoot):not(#kitchenTicketModalRoot):not(#kitchenStationQueueModalRoot):not(#inventoryPrintModalRoot):not(#purchaseInvoiceDetailsModalRoot):not(#chequeListModalRoot):not(#printableMenuModalRoot):not(#personnelPrintRoot){display:none!important}.print-modal-overlay{position:static;background:#fff;padding:0}.print-modal{box-shadow:none;width:100%;padding:0}.print-actions{display:none}.recipe-print-sheet{padding:20px}}

.recipe-list-panel{background:#ecfdf5!important;border-color:#99f6e4}.recipe-list-panel .recipe-row{background:#fff;border:1px solid #d9f4ea;border-radius:16px;padding:12px 14px;margin-bottom:10px}.recipe-print-ingredient-line{display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:start}.recipe-print-number{width:26px;height:26px;border-radius:999px;background:#ecfdf5;color:#0f766e;display:inline-grid;place-items:center;font-weight:900}.daily-closing-panel{background:#f8fafc}.daily-closing-header{display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid #edf1f5;padding-bottom:16px;margin-bottom:18px}.daily-closing-header h1{font-size:22px;margin:0}.daily-closing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}.button-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.daily-closing-grid div,.daily-closing-entry{border:1px solid #dfe7ee;border-radius:14px;padding:12px;background:#fff}.daily-closing-grid span,.daily-closing-entry span{display:block;color:#60758a}.daily-closing-grid b,.daily-closing-entry b{display:block;color:#0f766e;margin-top:6px}.daily-closing-entry{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;margin-bottom:8px}.daily-closing-entry small{color:#60758a}.security-events-panel{background:#f8fafc}.filter-form{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin:14px 0 18px}.filter-form label{min-width:180px;flex:1}.filter-form button{align-self:end}.security-event-row{display:grid;grid-template-columns:1.1fr 1.6fr auto;gap:12px;align-items:center;border:1px solid #dfe7ee;border-radius:14px;padding:12px 14px;margin-bottom:10px;background:#fff}.security-event-row b{color:#0f3f3a}.security-event-row span{color:#496174}.security-event-row em{font-style:normal;color:#60758a;white-space:nowrap}@media(max-width:700px){.daily-closing-grid{grid-template-columns:1fr}.daily-closing-entry,.security-event-row{grid-template-columns:1fr}}

.onboarding-panel{background:#f0fdfa!important;border-color:#99f6e4}.onboarding-progress{height:12px;border-radius:999px;background:#d7f7ef;overflow:hidden;margin:14px 0 18px}.onboarding-progress span{display:block;height:100%;background:#0f766e;border-radius:999px}.onboarding-list{display:grid;gap:10px}.onboarding-item{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border:1px solid #d9f4ea;border-radius:16px;padding:14px;background:#fff}.onboarding-item b{display:block;color:#0f3f3a;margin-bottom:6px}.onboarding-item span{display:block;color:#496174;line-height:1.7}.onboarding-item.done{border-color:#99f6e4;background:#f8fffc}.onboarding-item.missing{border-color:#fed7aa;background:#fffaf4}.onboarding-item.missing b{color:#9a3412}.dashboard-readiness-panel{background:#f0fdfa!important;border-color:#99f6e4}.dashboard-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dashboard-shortcut{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border:1px solid #d9f4ea;border-radius:16px;padding:14px;background:#fff}.dashboard-shortcut b{display:block;color:#0f3f3a;margin-bottom:6px}.dashboard-shortcut span{display:block;color:#496174;line-height:1.7}@media(max-width:700px){.onboarding-item,.dashboard-shortcut{grid-template-columns:1fr}.onboarding-item button,.dashboard-shortcut button{width:100%}.dashboard-shortcuts{grid-template-columns:1fr}}

.menu-publish-panel{background:#f8fafc}.menu-publish-row{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border:1px solid #dfe7ee;border-radius:16px;padding:14px;background:#fff;margin-bottom:10px}.menu-publish-row b{display:block;color:#0f3f3a;margin-bottom:6px}.menu-publish-row span{display:block;color:#496174;line-height:1.7}@media(max-width:700px){.menu-publish-row{grid-template-columns:1fr}.menu-publish-row button{width:100%}}

.order-status-panel{background:#f8fafc}.order-status-row{grid-template-columns:minmax(180px,.32fr) 1fr auto minmax(96px,.22fr);gap:12px;align-items:center}.order-status-row>b{justify-self:center;text-align:center;min-width:160px;margin-inline-start:32px}.order-status-row label{margin:0}.order-status-row strong{color:#0f766e}.order-tracking-card{display:grid;gap:6px;border:1px solid #99f6e4;border-radius:16px;padding:14px;background:#ecfdf5}.public-tracking-lookup{border-color:#99f6e4!important;background:linear-gradient(135deg,rgba(236,253,245,.92),rgba(255,255,255,.88))!important}.public-tracking-lookup p{margin-top:0}.public-guest-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}.public-guest-fields label{margin:0}.order-tracking-card b{color:#0f3f3a}.order-tracking-card span,.order-tracking-card small{color:#416052}@media(max-width:700px){.order-status-row{grid-template-columns:1fr}.order-status-row>b{justify-self:stretch;text-align:center;margin-inline-start:0}.order-status-row label{width:100%}.public-guest-fields{grid-template-columns:1fr}}

.kitchen-queue-panel{background:#f8fafc}.kitchen-queue-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.kitchen-queue-column{border:1px solid #dfe7ee;border-radius:18px;padding:12px;background:rgba(255,255,255,.72);min-height:170px}.kitchen-queue-column h3{margin:0 0 10px;color:#0f766e;text-align:center}.kitchen-delay-summary{border:1px solid #fecaca;border-radius:16px;padding:12px;margin:10px 0;background:linear-gradient(135deg,#fff1f2,#fff7ed);color:#9f1239;font-weight:950}.kitchen-ticket{display:grid;gap:8px;border:1px solid #d9f4ea;border-radius:15px;padding:12px;margin-bottom:10px;background:#fff;box-shadow:0 10px 22px rgba(25,45,70,.08)}.kitchen-ticket-delayed{border-color:#fb7185!important;background:linear-gradient(135deg,#fff1f2,#fff)!important}.delay-badge{display:inline-flex;justify-content:center;border-radius:999px;padding:6px 10px;background:#be123c;color:#fff;font-size:12px}.kitchen-ticket b{color:#0f3f3a}.kitchen-ticket span,.kitchen-ticket small{color:#496174}.kitchen-ticket select,.kitchen-advance-button,.kitchen-complete-button{width:100%}.kitchen-advance-button,.kitchen-complete-button{padding:11px 12px;border-radius:14px;box-shadow:0 14px 28px rgba(15,118,110,.22)}.kitchen-complete-button{background:linear-gradient(135deg,#16a34a,#0f766e)}.order-completion-summary{background:#ecfdf5!important;border-color:#99f6e4!important}.order-completion-summary p{font-weight:900;color:#0f3f3a}.kitchen-filter-form{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:14px 0}.kitchen-filter-form label{min-width:220px;flex:1}.kitchen-filter-form span{font-weight:900;color:#0f766e}.kitchen-filter-memory{width:100%;display:block;color:#60758a}@keyframes kitchenAlertPulse{0%,100%{transform:translateY(0);box-shadow:0 16px 34px rgba(190,18,60,.18)}50%{transform:translateY(-2px);box-shadow:0 24px 46px rgba(190,18,60,.30)}}.kitchen-alert-panel{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #fecaca;border-radius:20px;padding:14px 16px;margin:12px 0;background:linear-gradient(135deg,#fff1f2,#fff7ed);animation:kitchenAlertPulse 1.8s ease-in-out infinite}.kitchen-alert-panel div{display:grid;gap:4px}.kitchen-alert-panel b{color:#9f1239}.kitchen-alert-panel span{color:#7f1d1d;font-weight:900}.kitchen-alert-button{white-space:nowrap;background:linear-gradient(135deg,#e11d48,#f97316)!important}.kitchen-filter-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.station-queue-print-button{border:1px solid #99f6e4!important}.station-queue-ticket{background:#f8fffc}.order-prep-notes{display:grid;gap:4px;border:1px dashed var(--border,#99f6e4);border-radius:12px;padding:8px;margin:7px 0;background:color-mix(in srgb,var(--primary-2,#2dd4bf) 10%,transparent)}.order-prep-notes b{font-size:12px;color:var(--primary,#0f766e)}.order-prep-notes small{display:block}.station-ticket-line small{grid-column:2/5;color:#496174}.station-queue-ticket-delayed{border-color:#fb7185!important;background:#fff1f2!important}.station-ticket-button{width:100%;border:1px solid #99f6e4!important}.station-ticket-lines{display:grid;gap:10px}.station-ticket-station{background:#f8fffc}.station-ticket-line{display:grid;grid-template-columns:32px 1fr auto;gap:10px;align-items:center;border:1px solid #dfe7ee;border-radius:14px;padding:10px}.station-ticket-line b{color:#0f3f3a}.station-ticket-line strong{font-size:22px;color:#0f766e}.station-ticket-sheet .recipe-print-header h1{font-size:28px}@media(max-width:1000px){.kitchen-queue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.kitchen-queue-grid,.kitchen-filter-results{grid-template-columns:1fr}}


/* Modern visual polish and selectable Persian themes */
:root{--font-ui:"Vazirmatn","Segoe UI",Tahoma,Arial,sans-serif;--ease:cubic-bezier(.2,.8,.2,1)}
body{font-family:var(--font-ui);background:radial-gradient(circle at 12% 8%,rgba(34,211,238,.18),transparent 30%),radial-gradient(circle at 86% 12%,rgba(168,85,247,.16),transparent 28%),linear-gradient(135deg,#eef7ff 0%,#f8fbff 45%,#fff7ed 100%);color:var(--text,#102033)}
.app-shell{--bg:#f6fbff;--surface:rgba(255,255,255,.82);--surface-strong:#fff;--text:#102033;--muted:#60758a;--primary:#0f766e;--primary-2:#22dcc5;--accent:#533afd;--accent-2:#f96bee;--sidebar-1:#071d2d;--sidebar-2:#123c5c;--border:rgba(114,139,166,.24);--shadow:0 24px 70px rgba(25,45,70,.14);--soft-shadow:0 14px 34px rgba(25,45,70,.10);background:linear-gradient(135deg,var(--bg),rgba(255,255,255,.62));color:var(--text)}
.app-shell.theme-emerald{--bg:#eafff8;--surface:rgba(255,255,255,.84);--text:#0f2f35;--muted:#4f6f78;--primary:#0f766e;--primary-2:#2dd4bf;--accent:#2563eb;--accent-2:#38bdf8;--sidebar-1:#062327;--sidebar-2:#0f766e;--border:rgba(45,212,191,.28);--shadow:0 24px 70px rgba(15,118,110,.18)}
.app-shell.theme-berry{--bg:#fff1f7;--surface:rgba(255,255,255,.86);--text:#351225;--muted:#7a5065;--primary:#be185d;--primary-2:#fb7185;--accent:#7c3aed;--accent-2:#f472b6;--sidebar-1:#2a0b1f;--sidebar-2:#7f1d48;--border:rgba(244,114,182,.30);--shadow:0 24px 70px rgba(190,24,93,.20)}
.app-shell.theme-midnight{--bg:#070b17;--surface:rgba(18,24,38,.86);--surface-strong:#151b2d;--text:#f7f8ff;--muted:#a8b3c7;--primary:#7170ff;--primary-2:#38bdf8;--accent:#a78bfa;--accent-2:#22d3ee;--sidebar-1:#030712;--sidebar-2:#111827;--border:rgba(255,255,255,.12);--shadow:0 28px 80px rgba(0,0,0,.34);--soft-shadow:0 14px 34px rgba(0,0,0,.22)}
.app-shell.theme-sunrise{--bg:#fff7ed;--surface:rgba(255,255,255,.86);--text:#3a1f0d;--muted:#7a5b43;--primary:#ea580c;--primary-2:#f59e0b;--accent:#dc2626;--accent-2:#f97316;--sidebar-1:#35130a;--sidebar-2:#9a3412;--border:rgba(249,115,22,.26);--shadow:0 24px 70px rgba(234,88,12,.18)}
.sidebar{background:linear-gradient(165deg,var(--sidebar-1),var(--sidebar-2));box-shadow:20px 0 60px rgba(0,0,0,.12);border-left:1px solid rgba(255,255,255,.08)}
.brand-mark{background:linear-gradient(135deg,var(--primary-2),#fff);box-shadow:0 20px 44px color-mix(in srgb,var(--primary) 42%,transparent),inset 0 1px 0 rgba(255,255,255,.65);transform:rotate(-3deg)}
.brand strong{letter-spacing:-.4px}.brand span,.ai-card p{color:rgba(255,255,255,.72)}
.theme-picker{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.08);backdrop-filter:blur(16px);border-radius:24px;padding:14px;display:grid;gap:12px;box-shadow:inset 0 1px 0 rgba(255,255,255,.14)}
.theme-picker>span{font-size:12px;color:rgba(255,255,255,.74);font-weight:900}.theme-picker>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.theme-chip{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:white;border-radius:16px;padding:10px 9px;text-align:right;cursor:pointer;transition:transform .22s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease}.theme-chip b{display:block;font-size:13px}.theme-chip small{display:block;color:rgba(255,255,255,.58);font-size:10px;margin-top:3px}.theme-chip:hover,.theme-chip.active{transform:translateY(-2px);background:linear-gradient(135deg,var(--primary),var(--accent));border-color:rgba(255,255,255,.38);box-shadow:0 18px 34px color-mix(in srgb,var(--primary) 36%,transparent)}
.nav{position:relative;overflow:hidden;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);transition:transform .22s ease,background .22s ease,box-shadow .22s ease}.nav:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.22),transparent);opacity:0;transition:.22s}.nav:hover,.nav.active{transform:translateY(-2px);background:linear-gradient(135deg,var(--primary),var(--accent));box-shadow:0 18px 34px color-mix(in srgb,var(--primary) 32%,transparent)}.nav:hover:before,.nav.active:before{opacity:1}
.content{background:radial-gradient(circle at 70px 90px,color-mix(in srgb,var(--primary-2) 18%,transparent),transparent 34%),radial-gradient(circle at 88% 12%,color-mix(in srgb,var(--accent-2) 18%,transparent),transparent 30%)}
.topbar,.panel,.card,.cards>div,.order-row,.menu-publish-row,.dashboard-shortcut,.onboarding-item,.daily-closing-grid div,.daily-closing-entry,.security-event-row,.recipe-row,.order-tracking-card,.kitchen-queue-column,.kitchen-ticket,.order-completion-summary{background:var(--surface)!important;color:var(--text);border:1px solid var(--border)!important;box-shadow:var(--soft-shadow);backdrop-filter:blur(18px)}
.topbar{border-radius:32px;box-shadow:var(--shadow);position:relative;overflow:hidden}.topbar:after{content:"";position:absolute;inset:auto -10% -70% 40%;height:160px;background:linear-gradient(135deg,var(--primary-2),var(--accent-2));filter:blur(48px);opacity:.22;pointer-events:none}h1,h2,h3,.panel b,.cards b{color:var(--text)}p,small,.cards span,.order-row span,.security-event-row span{color:var(--muted)}
.primary,.secondary,.danger-button,.ghost{border:0;border-radius:17px;padding:13px 18px;font-weight:950;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease,background .22s ease}.primary{background:linear-gradient(135deg,var(--primary),var(--accent));color:white;box-shadow:0 18px 34px color-mix(in srgb,var(--primary) 36%,transparent),inset 0 1px 0 rgba(255,255,255,.22)}.secondary{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 12%,white),color-mix(in srgb,var(--accent) 10%,white));color:var(--primary);border:1px solid var(--border);box-shadow:0 12px 24px rgba(25,45,70,.08)}.danger-button{background:linear-gradient(135deg,#ef4444,#f97316);color:white;box-shadow:0 18px 34px rgba(239,68,68,.25)}.primary:hover,.secondary:hover,.danger-button:hover,.ghost:hover{transform:translateY(-2px);filter:saturate(1.08) brightness(1.03)}
input,select,textarea{background:color-mix(in srgb,var(--surface-strong,#fff) 88%,transparent);border:1px solid var(--border);color:var(--text);box-shadow:inset 0 1px 0 rgba(255,255,255,.35);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 18%,transparent);transform:translateY(-1px)}
.stats article{background:linear-gradient(135deg,var(--surface),color-mix(in srgb,var(--primary-2) 10%,var(--surface)))!important;border:1px solid var(--border);box-shadow:var(--soft-shadow)}.stats article strong{color:var(--primary)}.cost-preview,.recipe-list-panel,.onboarding-panel,.dashboard-readiness-panel{background:color-mix(in srgb,var(--primary-2) 14%,var(--surface))!important;border-color:color-mix(in srgb,var(--primary) 26%,transparent)!important}.print-modal,.recipe-print-sheet{color:#102033}
@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.theme-picker>div{grid-template-columns:repeat(4,1fr)}}@media(max-width:560px){.theme-picker>div{grid-template-columns:1fr 1fr}.topbar{align-items:stretch;flex-direction:column}.content{padding:18px}}
.customer-segment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}.customer-segment-card{border:1px solid var(--border);border-radius:18px;background:var(--surface-strong,#fff);padding:14px;text-align:right;color:var(--text);cursor:pointer;box-shadow:var(--soft-shadow)}.customer-segment-card.active{background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff}.customer-segment-card b{display:block;font-size:24px}.customer-bank-search{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:12px;align-items:end}.customer-bank-row{display:grid;grid-template-columns:minmax(180px,1.4fr) minmax(150px,.9fr) minmax(160px,.9fr);gap:14px;align-items:center;border:1px solid var(--border);border-radius:18px;padding:14px;margin:10px 0;background:color-mix(in srgb,var(--surface-strong,#fff) 88%,transparent);box-shadow:var(--soft-shadow)}.customer-bank-row small,.customer-campaign-card small{display:block;color:var(--muted);line-height:1.8}.customer-campaign-card{border:1px solid var(--border);border-radius:18px;padding:14px;margin:10px 0;background:linear-gradient(135deg,color-mix(in srgb,var(--primary-2) 12%,var(--surface)),var(--surface))}@media(max-width:760px){.customer-bank-search,.customer-bank-row{grid-template-columns:1fr}.customer-bank-search button{width:100%}}
.business-date-line{position:fixed;top:14px;left:14px;z-index:140;min-width:285px;border:1px solid rgba(255,255,255,.20);border-radius:999px;background:linear-gradient(135deg,rgba(8,24,39,.94),rgba(15,118,110,.88));color:#fff;padding:10px 16px;text-align:center;font-weight:950;box-shadow:0 16px 40px rgba(6,18,31,.24);backdrop-filter:blur(14px);direction:rtl;pointer-events:none}.content{padding-top:64px}@media(max-width:900px){.business-date-line{top:10px;left:10px;right:10px;width:auto;min-width:0}.content{padding-top:72px}}

.dashboard-shortcut{grid-template-columns:1fr!important;align-items:stretch}.dashboard-shortcut button{width:100%;justify-self:stretch;white-space:normal}
.purchase-invoice-panel{background:linear-gradient(135deg,color-mix(in srgb,var(--primary-2) 12%,var(--surface)),var(--surface))!important}.invoice-item-row{display:grid;grid-template-columns:42px minmax(170px,1.4fr) minmax(110px,.7fr) minmax(140px,.8fr) minmax(150px,.9fr) auto;gap:12px;align-items:end;border:1px solid var(--border);border-radius:18px;padding:14px;margin:12px 0;background:color-mix(in srgb,var(--surface-strong,#fff) 86%,transparent);box-shadow:var(--soft-shadow)}.invoice-row-number{width:34px;height:34px;border-radius:999px;background:linear-gradient(135deg,var(--primary),var(--accent));color:white;display:grid;place-items:center;font-weight:950;align-self:center}.invoice-item-row label{margin:0}.purchase-invoice-panel datalist{display:none}@media(max-width:900px){.invoice-item-row{grid-template-columns:1fr}.invoice-row-number{justify-self:start}.invoice-item-row button{width:100%}}


/* Inventory page responsive contract: no page-level horizontal scroll */
html,body{max-width:100%;overflow-x:hidden}.app-shell,.content,.topbar,.workspace,.panel{min-width:0}.content{max-width:100vw}.inventory-workspace{grid-template-columns:minmax(260px,420px) minmax(260px,420px);justify-content:center;align-items:start}.inventory-create-panel,.inventory-import-panel{width:100%;height:100%;min-height:520px}.inventory-import-panel textarea{min-height:150px}.inventory-edit-panel,.inventory-purchases-panel{grid-column:1/-1;width:min(1180px,100%);justify-self:center}.inventory-edit-panel{padding-inline:18px}.inventory-edit-scroll{max-height:68vh;overflow:auto;overscroll-behavior:contain;padding-inline:2px}.inventory-edit-form{grid-template-columns:minmax(240px,2.2fr) minmax(105px,.75fr) minmax(90px,.55fr) minmax(120px,.8fr) minmax(85px,.5fr) auto auto;gap:9px;min-width:900px;align-items:end}.inventory-edit-form .inventory-name-field input{min-width:0}.inventory-edit-form .inventory-stock-field input,.inventory-edit-form .inventory-min-field input{text-align:center}.inventory-edit-form .secondary,.inventory-edit-form .danger-button{white-space:nowrap;padding-inline:14px}.accounting-workspace .purchase-invoice-panel{grid-column:1/-1}.inventory-print-table{width:100%;border-collapse:collapse;direction:rtl;font-size:12px}.inventory-print-table th,.inventory-print-table td{border:1px solid #dfe7ee;padding:5px 7px;text-align:right}.inventory-print-table th{background:#ecfdf5;color:#0f3f3a;font-weight:950}.inventory-print-table thead{display:table-header-group}.inventory-print-sheet{padding:18px 22px}.inventory-print-sheet .recipe-print-header{margin-bottom:10px;padding-bottom:10px}.inventory-print-modal{width:min(900px,96vw)}@media(max-width:1050px){.inventory-workspace{grid-template-columns:1fr}.inventory-create-panel,.inventory-import-panel{min-height:auto}.inventory-edit-panel,.inventory-purchases-panel{width:100%}.inventory-edit-form{min-width:860px}}@media(max-width:700px){.content{padding:14px}.inventory-edit-panel{padding-inline:12px}.inventory-edit-scroll{max-height:70vh}.topbar{max-width:100%}}@media print{@page{size:A4;margin:8mm}#inventoryPrintModalRoot{display:block!important}.inventory-print-modal{width:100%;padding:0}.inventory-print-sheet{padding:0;font-size:11px}.inventory-print-table{font-size:10.5px}.inventory-print-table th,.inventory-print-table td{padding:3px 5px}.inventory-print-table tr{break-inside:avoid;page-break-inside:avoid}.inventory-print-sheet .recipe-print-header{display:flex}}

/* Inventory stock list refinements from screenshot correction */
body,input,select,textarea,button{font-family:Tahoma,"Segoe UI",Arial,sans-serif!important;letter-spacing:0!important;font-variant-ligatures:common-ligatures;text-rendering:optimizeLegibility}.inventory-edit-panel{width:100%!important;max-width:100%!important}.inventory-edit-scroll{overflow-y:auto!important;overflow-x:hidden!important;padding-inline:0}.inventory-edit-form{min-width:0!important;grid-template-columns:minmax(260px,2.4fr) minmax(100px,.65fr) minmax(78px,.45fr) minmax(105px,.6fr) minmax(72px,.4fr) 76px 68px!important;gap:8px!important}.inventory-edit-form input,.inventory-edit-form select{text-align:center;text-align-last:center}.inventory-edit-form .inventory-name-field input{text-align:right;text-align-last:right;direction:rtl}.inventory-edit-form [disabled]{opacity:1;cursor:not-allowed;background:color-mix(in srgb,var(--surface-strong,#fff) 72%,var(--primary) 10%)}.inventory-edit-form [data-edit-inventory-row]{color:var(--primary)}@media(max-width:900px){.inventory-edit-form{grid-template-columns:1fr 110px 90px 110px 80px 76px 68px!important}.inventory-edit-scroll{overflow-x:auto!important}}@media(max-width:620px){.inventory-edit-form{grid-template-columns:1fr!important}.inventory-edit-form .secondary,.inventory-edit-form .danger-button{width:100%}}

/* Kitchen delayed-alert acknowledgement */
.kitchen-snooze-button{border-color:#f59e0b!important;color:#92400e!important;background:linear-gradient(135deg,#fff7ed,#fffbeb)!important;box-shadow:0 8px 18px rgba(245,158,11,.18)!important}.kitchen-snooze-note{display:block;border:1px solid #fde68a;border-radius:12px;padding:6px 8px;background:#fffbeb;color:#92400e;font-weight:800}.kitchen-ticket-snoozed{border-color:#fde68a!important;background:linear-gradient(135deg,rgba(255,251,235,.9),rgba(255,255,255,.78))!important}.kitchen-ticket-snoozed .delay-badge{background:#fef3c7;color:#92400e}

/* Kitchen priority escalation for very late tickets */
.kitchen-ticket-critical{border-color:#dc2626!important;background:linear-gradient(135deg,#7f1d1d,#fff1f2 36%,#fff)!important;box-shadow:0 20px 42px rgba(220,38,38,.24)!important}.critical-delay-badge{background:linear-gradient(135deg,#7f1d1d,#dc2626)!important;color:#fff!important;box-shadow:0 10px 22px rgba(220,38,38,.28)}.delay-over-note{display:inline-flex;justify-content:center;border:1px solid #fecaca;border-radius:999px;padding:5px 9px;background:#fff1f2;color:#991b1b!important;font-weight:900}.kitchen-alert-critical{border-color:#dc2626!important;background:linear-gradient(135deg,#fff1f2,#fff7ed)!important;box-shadow:0 20px 46px rgba(220,38,38,.22)!important}

/* Inventory row fit + readable Persian letters correction */
body,input,select,textarea,button{font-family:"Segoe UI",Tahoma,Arial,sans-serif!important;font-kerning:normal;font-feature-settings:"calt" 1,"rlig" 1,"kern" 1;letter-spacing:normal!important}.content{padding-inline:22px}.inventory-edit-panel{width:100%!important;max-width:none!important;padding-inline:22px!important}.inventory-edit-scroll{overflow-x:hidden!important}.inventory-edit-form{grid-template-columns:minmax(300px,2.8fr) minmax(105px,.65fr) minmax(86px,.45fr) minmax(150px,.85fr) minmax(86px,.45fr) 84px 76px!important;column-gap:8px!important}.inventory-edit-form label{text-align:center}.inventory-edit-form input,.inventory-edit-form select{width:100%;min-width:0;text-align:center!important;text-align-last:center!important;direction:rtl}.inventory-edit-form .inventory-name-field input{text-align:right!important;text-align-last:right!important}.inventory-edit-form .secondary,.inventory-edit-form .primary,.inventory-edit-form .danger-button{width:100%;min-width:0;padding-inline:8px!important;text-align:center}.inventory-edit-form .inventory-price-field input{font-size:15px;font-weight:900}@media(max-width:1120px){.inventory-edit-form{grid-template-columns:minmax(260px,2.3fr) minmax(98px,.6fr) minmax(78px,.4fr) minmax(132px,.75fr) minmax(78px,.4fr) 78px 70px!important}.content{padding-inline:16px}}@media(max-width:930px){.inventory-edit-scroll{overflow-x:auto!important}.inventory-edit-form{min-width:860px!important}}

/* Final inventory fit pass: price wider, action buttons kept inside row */
.inventory-edit-panel{padding-inline:10px!important}.inventory-edit-form{grid-template-columns:minmax(240px,2.8fr) minmax(90px,.55fr) minmax(68px,.35fr) minmax(145px,.8fr) minmax(68px,.35fr) 70px 62px!important;gap:6px!important}.inventory-edit-form .danger-button,.inventory-edit-form .secondary,.inventory-edit-form .primary{font-size:14px;padding-inline:6px!important}.inventory-edit-form .inventory-price-field input{min-width:0!important}@media(max-width:930px){.inventory-edit-form{min-width:790px!important}}

/* Inventory final width and empty-create correction */
.inventory-edit-panel{width:calc(100% + 44px)!important;margin-inline:-22px!important;padding-inline:18px!important}.inventory-edit-scroll{padding:10px 12px!important;scrollbar-gutter:stable both-edges}.inventory-edit-form{grid-template-columns:minmax(230px,2.7fr) minmax(88px,.55fr) minmax(66px,.35fr) minmax(142px,.8fr) minmax(66px,.35fr) 70px 62px!important}@media(max-width:930px){.inventory-edit-panel{width:100%!important;margin-inline:0!important}.inventory-edit-scroll{padding:8px!important}}

/* Inventory A4 print affordance + unit column fit */
.inventory-print-actions{position:sticky;top:0;z-index:3;background:linear-gradient(180deg,#fff,rgba(255,255,255,.92));padding:10px 0 12px;margin-bottom:8px;border-bottom:1px solid #e5eef5}.inventory-a4-print-button{min-width:150px;font-size:16px}.inventory-edit-form{grid-template-columns:minmax(220px,2.5fr) minmax(124px,.8fr) minmax(64px,.34fr) minmax(136px,.74fr) minmax(64px,.34fr) 70px 62px!important}.inventory-edit-form .inventory-unit-field select{padding-inline:8px 20px!important;font-size:14px;white-space:nowrap}@media(max-width:930px){.inventory-edit-form{min-width:850px!important}}

/* Force A4 print action visible in modal */
.inventory-a4-print-button{background:linear-gradient(135deg,#0f766e,#2563eb)!important;color:#fff!important;border:0!important;box-shadow:0 14px 28px rgba(15,118,110,.28)!important}.inventory-a4-print-button:hover{filter:brightness(1.05)!important}.inventory-print-actions{justify-content:flex-start!important;direction:rtl}

/* Project-wide Persian font upgrade: rounded, connected, modern like the reference */
@font-face{font-family:RestaurantPersian;src:url('./vendor/fonts/Vazirmatn-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:RestaurantPersian;src:url('./vendor/fonts/Vazirmatn-Bold.woff2') format('woff2');font-weight:700 950;font-style:normal;font-display:swap}
:root{--font-ui:RestaurantPersian,Vazirmatn,"IRANSans","Yekan",Tahoma,Arial,sans-serif!important}
html,body,#app,.app-shell,.public-page,.print-modal,.recipe-print-sheet,.inventory-print-sheet,
button,input,select,textarea,label,p,span,strong,b,small,em,h1,h2,h3,h4,a,code{font-family:var(--font-ui)!important;font-kerning:normal;font-feature-settings:"calt" 1,"rlig" 1,"kern" 1;letter-spacing:normal!important;text-rendering:optimizeLegibility}
h1,h2,h3,.brand strong,.nav,.primary,.secondary,.danger-button,.theme-chip b,.panel b,.stats strong{font-weight:900}
p,small,label,input,select,textarea{font-weight:500}.topbar p,.panel p{font-weight:600}.recipe-print-sheet,.inventory-print-sheet{font-family:RestaurantPersian,Vazirmatn,Tahoma,Arial,sans-serif!important}

/* Inventory read-only display uses normal text, not disabled inputs, so Persian letters join correctly */
.inventory-readonly-value{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;border:1px solid var(--border);border-radius:14px;padding:11px 13px;background:color-mix(in srgb,var(--surface-strong,#fff) 72%,var(--primary) 10%);color:var(--text);font-family:var(--font-ui)!important;font-feature-settings:"calt" 1,"rlig" 1,"kern" 1;letter-spacing:normal!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;unicode-bidi:plaintext;direction:rtl}.inventory-name-readonly{justify-content:flex-end;text-align:right;font-weight:700}.inventory-number-readonly,.inventory-unit-readonly{text-align:center;font-weight:700}.inventory-edit-form [hidden]{display:none!important}


/* Final fix for Persian shaping/alignment in inventory names: RTL text starts from the right */
.inventory-readonly-value{display:grid!important;place-items:center!important;line-height:1.7!important;unicode-bidi:isolate!important;direction:rtl!important}
.inventory-readonly-text{display:block!important;width:100%!important;font-family:var(--font-ui)!important;font-feature-settings:"calt" 1,"rlig" 1,"kern" 1!important;letter-spacing:normal!important;unicode-bidi:isolate!important;direction:rtl!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.inventory-name-readonly{place-items:center stretch!important;justify-content:stretch!important;text-align:right!important;padding-right:18px!important;padding-left:12px!important}
.inventory-name-readonly .inventory-readonly-text{text-align:right!important;font-weight:900!important}
.inventory-unit-readonly .inventory-readonly-text,.inventory-number-readonly .inventory-readonly-text{text-align:center!important;font-weight:800!important}


/* Preserve inventory scroll context after editing an item */
.inventory-row-restored{animation:inventoryRowRestored 1.8s ease both!important;border-color:color-mix(in srgb,var(--primary) 58%,#ffffff)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 16%,transparent),var(--soft-shadow)!important}
@keyframes inventoryRowRestored{0%{transform:translateY(-2px);background:color-mix(in srgb,var(--primary-2) 18%,var(--surface))}100%{transform:none}}


/* Recipe ingredient rows: one clean RTL line, number at far right, material wide, qty/unit compact, delete aligned */
.recipe-form-panel #ingredientRows{display:grid;gap:12px}.recipe-form-panel .ingredient-row{direction:rtl;display:grid!important;grid-template-columns:34px minmax(220px,2fr) minmax(80px,.5fr) minmax(76px,.33fr) 86px!important;gap:10px!important;align-items:end!important;padding:12px 14px!important}.recipe-form-panel .ingredient-number{grid-column:1!important;justify-self:center!important;align-self:center!important;text-align:center!important}.recipe-form-panel .ingredient-material-field{grid-column:2!important}.recipe-form-panel .ingredient-qty-field{grid-column:3!important}.recipe-form-panel .ingredient-unit-field{grid-column:4!important}.recipe-form-panel .ingredient-remove-button{grid-column:5!important;align-self:end!important;width:100%!important;margin:0!important}.recipe-form-panel .ingredient-row label{min-width:0!important;margin:0!important}.recipe-form-panel .ingredient-row select,.recipe-form-panel .ingredient-row input{width:100%!important;min-width:0!important;height:52px!important}.recipe-form-panel .ingredient-qty-field input{text-align:center!important}.recipe-form-panel .ingredient-unit-field select{text-align:center!important;text-align-last:center!important}@media(max-width:760px){.recipe-form-panel .ingredient-row{grid-template-columns:34px minmax(150px,2fr) minmax(68px,.5fr) minmax(64px,.33fr) 74px!important;gap:7px!important;padding:10px!important}.recipe-form-panel .ingredient-row select,.recipe-form-panel .ingredient-row input{height:48px!important}.recipe-form-panel .ingredient-remove-button{padding-inline:8px!important}}

/* Match user's row-2 reference sizing for recipe ingredient fields */
.recipe-form-panel .ingredient-row{grid-template-columns:34px minmax(210px,1.65fr) 72px 92px 76px!important;gap:10px!important;padding:12px 14px!important}
.recipe-form-panel .ingredient-qty-field input{padding-inline:8px!important}
.recipe-form-panel .ingredient-unit-field select{padding-inline:8px!important}
.recipe-form-panel .ingredient-remove-button{padding-inline:10px!important}
@media(max-width:760px){.recipe-form-panel .ingredient-row{grid-template-columns:30px minmax(150px,1.6fr) 64px 82px 68px!important}}

/* Final row-2 sizing tweak: keep amount/unit labels on one line */
.recipe-form-panel .ingredient-row{grid-template-columns:34px minmax(196px,1.5fr) 88px 92px 76px!important}
.recipe-form-panel .ingredient-row label{white-space:nowrap!important}
@media(max-width:760px){.recipe-form-panel .ingredient-row{grid-template-columns:30px minmax(140px,1.45fr) 78px 82px 68px!important}}


/* Ingredient row number: larger and aligned with the material label line */
.recipe-form-panel .ingredient-number{font-size:28px!important;line-height:1!important;align-self:start!important;justify-self:center!important;padding-top:2px!important;color:var(--primary)!important}


/* Registered recipes: dynamic category tabs and icon/decal actions */
.recipe-category-tabs{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:0 0 16px}.recipe-category-tab{border:1px solid color-mix(in srgb,var(--primary) 30%,var(--border));background:color-mix(in srgb,var(--surface-strong) 88%,var(--primary) 8%);color:var(--text);border-radius:999px;padding:9px 16px;font-weight:950;cursor:pointer;box-shadow:0 8px 20px rgba(15,118,110,.08)}.recipe-category-tab.active{background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;border-color:transparent;box-shadow:0 14px 28px rgba(15,118,110,.24)}.recipe-category-content{display:grid;gap:10px}.recipe-list-panel .recipe-row{grid-template-columns:minmax(82px,.86fr) minmax(136px,1fr) max-content!important}.recipe-row-actions{display:flex;gap:8px;align-items:center;justify-content:flex-start;min-width:max-content}.recipe-decal-button{position:relative;width:40px;height:40px;border:1px solid color-mix(in srgb,var(--primary) 16%,#ffffff)!important;border-radius:15px;background:linear-gradient(135deg,#f7f8ff,#ffffff);color:var(--primary);font-size:20px;font-weight:950;display:inline-grid;place-items:center;cursor:pointer;box-shadow:0 10px 24px rgba(18,31,45,.12);transition:transform .16s ease,box-shadow .16s ease;color-scheme:light}.recipe-decal-button.recipe-decal-danger{background:linear-gradient(135deg,#ef4444,#dc2626)!important;color:#fff!important;border-color:rgba(255,255,255,.34)!important;box-shadow:0 12px 26px rgba(220,38,38,.26)}.recipe-decal-icon{width:24px;height:24px;display:block;fill:none;stroke:currentColor;stroke-width:2.15;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.recipe-decal-button[data-tooltip="پرینت"] .recipe-decal-icon{width:26px;height:26px;stroke-width:2.05}.recipe-decal-button[data-tooltip="حذف"] .recipe-decal-icon{width:25px;height:25px;stroke-width:2.25}.recipe-row strong{font-size:12px!important}.recipe-decal-button:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(18,31,45,.18)}.recipe-decal-button::after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%) translateY(4px);opacity:0;pointer-events:none;background:#102033;color:#fff;border-radius:10px;padding:5px 9px;font-size:12px;white-space:nowrap;box-shadow:0 8px 20px rgba(0,0,0,.18);transition:opacity .14s ease,transform .14s ease;z-index:4}.recipe-decal-button:hover::after,.recipe-decal-button:focus-visible::after{opacity:1;transform:translateX(-50%) translateY(0)}
@media(max-width:760px){.recipe-list-panel .recipe-row{grid-template-columns:1fr!important}.recipe-row-actions{justify-content:flex-end}}


/* Recipe fixed-height panels: registered list matches create form and scrolls internally */
.recipe-form-panel,.recipe-list-panel{height:840px!important;max-height:840px!important;display:flex!important;flex-direction:column!important}.recipe-form-panel{overflow-y:auto!important;overflow-x:hidden!important;scrollbar-width:thin}.recipe-list-panel{overflow:hidden!important}
.recipe-list-panel h2{flex:0 0 auto}.recipe-list-scroll{min-height:0;overflow-y:auto;overflow-x:hidden;padding-inline-end:6px;scrollbar-width:thin}.recipe-list-scroll .recipe-category-tabs{position:sticky;top:0;z-index:2;background:color-mix(in srgb,var(--primary-2) 14%,var(--surface));padding-block:2px 12px}
@media(max-width:900px){.recipe-form-panel,.recipe-list-panel{height:auto!important;max-height:none!important}.recipe-list-scroll{max-height:70vh}}

/* Global delete/edit/print decal buttons used across all pages */
.row-action-buttons{display:flex;gap:8px;align-items:center;justify-content:flex-start;min-width:max-content}.action-decal-button{flex:0 0 40px!important;width:40px!important;height:40px!important;padding:0!important;min-width:40px!important}.action-decal-button.action-decal-danger{background:linear-gradient(135deg,#ef4444,#dc2626)!important;color:#fff!important;border-color:rgba(255,255,255,.34)!important;box-shadow:0 12px 26px rgba(220,38,38,.26)!important}.action-decal-button.action-decal-save{background:linear-gradient(135deg,var(--primary),var(--accent))!important;color:#fff!important}.inventory-row-actions{grid-column:6/8;justify-self:end;justify-content:flex-start;gap:10px;direction:rtl}.inventory-edit-form .action-decal-button{width:40px!important;min-width:40px!important;padding:0!important}.menu-row-actions{justify-content:flex-end}.station-ticket-button,.station-queue-print-button,.inventory-print-decal,.daily-closing-print-decal,.modal-print-decal{display:inline-grid!important}.print-actions .action-decal-button{margin-inline-start:4px}.sale-line-remove-button,.invoice-line-remove-button{justify-self:center}.action-decal-button svg{pointer-events:none}

/* Accounting sub-menu and editable financial accounts */
.accounting-subnav{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:flex-start;grid-column:1/-1}.accounting-subnav .secondary.active{background:linear-gradient(135deg,var(--primary),var(--accent))!important;color:#fff!important;box-shadow:0 18px 34px color-mix(in srgb,var(--primary) 32%,transparent)!important}.financial-account-panel{grid-column:1/-1}.financial-account-create{display:grid;grid-template-columns:minmax(180px,1fr) minmax(160px,.7fr) minmax(150px,.7fr) auto;gap:12px;align-items:end;margin:16px 0 18px}.account-list-table{display:grid;gap:10px}.account-list-head,.account-edit-form{display:grid;grid-template-columns:minmax(150px,1.2fr) minmax(130px,.8fr) minmax(130px,.8fr) minmax(110px,.7fr) minmax(110px,.7fr) minmax(130px,.8fr) auto;gap:10px;align-items:end}.account-list-head{padding:10px 14px;border-radius:14px;background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary);font-weight:950}.account-edit-form{border:1px solid var(--border);border-radius:18px;padding:12px 14px;background:color-mix(in srgb,var(--surface-strong,#fff) 86%,transparent);box-shadow:var(--soft-shadow)}.account-edit-form label{margin:0}.account-current-balance{min-height:52px;border:1px solid var(--border);border-radius:14px;padding:7px 10px;background:color-mix(in srgb,var(--surface-strong,#fff) 82%,var(--primary) 6%);display:grid;align-content:center;text-align:center}.account-current-balance span{font-size:12px;color:var(--muted)}.account-current-balance b{color:var(--primary);font-size:13px}.account-current-balance.total{background:color-mix(in srgb,var(--primary-2) 15%,var(--surface-strong,#fff))}.account-edit-form [data-save-financial-account]{white-space:nowrap}@media(max-width:1100px){.account-list-head{display:none}.financial-account-create,.account-edit-form{grid-template-columns:1fr 1fr}.account-edit-form [data-save-financial-account]{grid-column:1/-1}}@media(max-width:650px){.financial-account-create,.account-edit-form{grid-template-columns:1fr}.accounting-subnav .secondary{flex:1 1 44%}}

/* Menu management: right stack (new/publish), compact item form, wide preview, fixed-height internal scroll */
.menu-layout-grid{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr) minmax(0,1.25fr);grid-template-areas:"create item preview" "publish item preview";gap:18px;align-items:stretch;min-width:0;overflow:hidden}.menu-create-panel{grid-area:create}.item-create-panel{grid-area:item}.menu-publish-panel{grid-area:publish}.menu-preview-panel{grid-area:preview}.menu-fixed-panel{height:360px;min-width:0;overflow:hidden;display:flex!important;flex-direction:column}.item-create-panel,.menu-preview-panel{height:738px}.menu-edit-panel{grid-column:1/-1;width:100%;height:430px!important;max-height:430px!important;overflow:hidden!important;display:flex!important;flex-direction:column!important}.menu-edit-panel h2{flex:0 0 auto}.menu-edit-panel>.menu-panel-scroll{min-height:0;flex:1 1 auto;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}.menu-panel-scroll{min-height:0;overflow-y:auto;overflow-x:hidden;padding-inline-end:4px;scrollbar-width:thin}.menu-publish-scroll{height:100%;padding-inline-end:6px}.menu-create-panel,.item-create-panel,.menu-publish-panel,.menu-preview-panel{max-width:none!important;justify-self:stretch;width:100%}.item-create-panel textarea{min-height:88px}.menu-item-details{display:block!important;font-size:12px!important;line-height:1.65!important;color:var(--muted)!important;margin-top:4px}.menu-publish-row .row-action-buttons{justify-content:flex-start;flex-wrap:wrap}.menu-preview-categories,.menu-edit-categories{display:grid;gap:14px}.menu-preview-categories .menu-category-tabs,.menu-edit-categories .menu-category-tabs{position:sticky;top:0;z-index:2;background:color-mix(in srgb,var(--primary-2) 14%,var(--surface));padding-block:2px 12px;margin-bottom:8px}.menu-category-content{display:grid;gap:10px}.menu-preview-category-group,.menu-edit-category-group{border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border));border-radius:18px;padding:12px;background:color-mix(in srgb,var(--surface-strong,#fff) 90%,var(--primary) 5%);display:grid;gap:10px}.menu-preview-category-group h3,.menu-edit-category-group h3{margin:0;text-align:center;font-size:16px;font-weight:950;color:var(--primary);background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px;padding:8px 12px}.menu-edit-form{display:grid!important;grid-template-columns:minmax(150px,1fr) minmax(140px,.85fr) minmax(190px,1.2fr) minmax(120px,.65fr) max-content!important;gap:10px!important;align-items:end;min-width:0!important}.menu-edit-form label{min-width:0!important}.menu-edit-form input,.menu-edit-form select{width:100%;min-width:0}.menu-edit-form .row-action-buttons{min-width:0;justify-content:center}.printable-menu-modal{width:min(760px,96vw)}.printable-menu-category{border:1px solid #dfe7ee;border-radius:16px;padding:14px 18px;margin:14px 0}.printable-menu-category h2{font-size:18px;margin:0 0 10px}.printable-menu-item{display:flex;justify-content:space-between;gap:18px;border-bottom:1px dashed #dfe7ee;padding:9px 0}.printable-menu-item:last-child{border-bottom:0}.printable-menu-item b{display:block}.printable-menu-item small{display:block;font-size:11px!important;line-height:1.7;color:#60758a;margin-top:3px}.printable-menu-item strong{white-space:nowrap}@media(max-width:1050px){.menu-layout-grid{grid-template-columns:1fr;grid-template-areas:"create" "item" "preview" "publish"}.menu-fixed-panel,.item-create-panel,.menu-preview-panel,.menu-edit-panel{height:auto;max-height:560px}.menu-panel-scroll{max-height:420px}}@media(max-width:700px){.printable-menu-item{align-items:flex-start}}

/* Menu preview/edit corrections: readable item names in dark theme, no category in preview, compact edit actions */
.menu-preview-panel .food-card b{color:#172033!important;font-weight:950!important;opacity:1!important;text-shadow:none!important}
.app-shell.theme-midnight .menu-preview-panel .food-card b{color:#172033!important;text-shadow:none!important}
.menu-preview-panel .food-card small{color:var(--muted)!important}.menu-edit-form .row-action-buttons{justify-content:flex-start!important;gap:8px!important}

.menu-edit-form.is-locked input{background:color-mix(in srgb,var(--surface) 78%,#dbe7f2)!important;color:var(--text)!important;cursor:not-allowed}.menu-edit-form.is-editing input{background:#fff!important;color:#172033!important;-webkit-text-fill-color:#172033!important;border-color:#cbd5e1!important}.menu-row-restored{outline:2px solid var(--accent,#16a34a);outline-offset:3px;transition:outline-color .25s}

.menu-edit-form.is-editing label{color:#52616f!important}.app-shell.theme-midnight .menu-edit-form.is-editing input{background:#fff!important;color:#172033!important;-webkit-text-fill-color:#172033!important}.app-shell.theme-midnight .menu-edit-form.is-editing label{color:#52616f!important}

/* Inventory reference layout: import left, stock center, new material right; no registered purchases box */
.inventory-workspace{display:grid!important;grid-template-columns:minmax(230px,.82fr) minmax(520px,2.35fr) minmax(230px,.82fr)!important;grid-template-areas:"import stock create"!important;gap:14px!important;align-items:stretch!important;justify-content:center!important}.inventory-create-panel{grid-area:create!important;min-height:610px!important;height:610px!important;overflow-y:auto!important}.inventory-import-panel{grid-area:import!important;min-height:610px!important;height:610px!important;overflow-y:auto!important}.inventory-edit-panel{grid-area:stock!important;width:100%!important;max-width:none!important;margin-inline:0!important;height:610px!important;max-height:610px!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;padding:18px!important}.inventory-edit-scroll{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important}.inventory-purchases-panel{display:none!important}@media(max-width:1100px){.inventory-workspace{grid-template-columns:1fr!important;grid-template-areas:"create" "stock" "import"!important}.inventory-create-panel,.inventory-import-panel,.inventory-edit-panel{height:auto!important;min-height:auto!important}.inventory-edit-panel{max-height:70vh!important}.inventory-edit-scroll{overflow-x:auto!important}}

/* Inventory RTL visual order correction */
.inventory-workspace{grid-template-columns:minmax(210px,.78fr) minmax(500px,2.35fr) minmax(210px,.78fr)!important;grid-template-areas:"create stock import"!important;gap:10px!important;width:100%!important;max-width:100%!important;overflow-x:hidden!important}

/* Inventory stock row fit inside the centered reference panel */
.inventory-workspace{grid-template-columns:minmax(190px,.72fr) minmax(540px,2.8fr) minmax(190px,.72fr)!important}.inventory-edit-form{grid-template-columns:minmax(140px,2fr) minmax(76px,.75fr) minmax(48px,.42fr) minmax(84px,.9fr) minmax(48px,.42fr) 40px 40px!important;gap:6px!important;padding:10px!important}.inventory-row-actions{gap:4px!important;min-width:84px!important}.inventory-edit-form .action-decal-button{width:40px!important;min-width:40px!important}

/* Accounting accounts layout: create account beside summary, registered accounts scroll internally */
.accounting-top-grid{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:stretch}.accounting-summary-panel,.financial-account-create-panel{height:480px!important;min-height:480px!important;overflow:hidden!important}.financial-account-create-panel{display:grid!important;align-content:start}.financial-account-panel{grid-column:1/-1;height:520px!important;max-height:520px!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}.financial-account-panel .section-title{flex:0 0 auto}.financial-account-scroll{min-height:0;flex:1 1 auto;overflow-y:auto;overflow-x:hidden;display:grid;gap:10px;padding-inline-end:4px}.account-list-table{min-height:0;display:flex!important;flex-direction:column!important}.account-edit-form{grid-template-columns:minmax(145px,1fr) minmax(120px,.78fr) minmax(120px,.72fr) minmax(100px,.62fr) minmax(100px,.62fr) minmax(110px,.72fr) max-content!important}.account-row-actions{gap:6px!important;justify-content:center}.account-row-decal{width:40px!important;min-width:40px!important;height:40px!important}.account-edit-form.is-locked input,.account-edit-form.is-locked select{cursor:not-allowed;background:color-mix(in srgb,var(--surface-strong,#fff) 72%,var(--primary) 10%)!important;color:var(--text)!important;opacity:1}.account-edit-form.is-editing input,.account-edit-form.is-editing select{background:#fff!important;color:#172033!important;-webkit-text-fill-color:#172033!important}.account-row-restored{outline:2px solid var(--accent,#16a34a);outline-offset:3px}@media(max-width:1000px){.accounting-top-grid{grid-template-columns:1fr}.accounting-summary-panel,.financial-account-create-panel{height:auto!important;min-height:auto!important}.account-edit-form{grid-template-columns:1fr 1fr!important}.account-row-actions{grid-column:1/-1}}

/* Remove page hero topbar and let the right sidebar scroll with the whole page instead of inside itself */
.topbar{display:none!important}.sidebar{position:relative!important;top:auto!important;height:auto!important;min-height:100vh!important;overflow:visible!important;align-self:stretch}.app-shell{align-items:stretch}.content{padding-top:22px!important}@media(max-width:900px){.sidebar{min-height:auto!important}}

/* Accounting expense tab: fixed expense form beside same-height scrollable purchase invoice */
.accounting-top-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}.accounting-summary-panel,.financial-account-create-panel{width:100%!important;justify-self:stretch!important}.expense-entry-grid{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:stretch}.expense-fixed-panel,.expense-entry-grid .purchase-invoice-panel{height:760px!important;min-height:760px!important;max-height:760px!important}.expense-fixed-panel{overflow:hidden!important;display:grid!important;align-content:start}.expense-entry-grid .purchase-invoice-panel{overflow-y:auto!important;overflow-x:hidden!important}.expense-document-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.expense-description{height:72px!important;min-height:72px!important;max-height:72px!important;overflow-y:auto!important;resize:none!important}.expense-entry-grid .payment-meta-grid{grid-template-columns:1fr 1fr!important}@media(max-width:1000px){.expense-entry-grid{grid-template-columns:1fr}.expense-fixed-panel,.expense-entry-grid .purchase-invoice-panel{height:auto!important;max-height:none!important}.expense-fixed-panel{overflow:visible!important}}

/* Expense tab final side-by-side fit */
.expense-entry-grid>.expense-panel,.expense-entry-grid>.purchase-invoice-panel{grid-column:auto!important;width:100%!important;max-width:none!important;justify-self:stretch!important}.expense-fixed-panel,.expense-entry-grid .purchase-invoice-panel{height:1060px!important;min-height:1060px!important;max-height:1060px!important}

/* Jalali date picker controls */
.jalali-date-field{position:relative;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.jalali-calendar-button{height:44px;min-width:48px;padding:8px 10px!important}.jalali-calendar-popover{position:fixed;z-index:220;width:280px;max-width:min(280px,92vw);background:var(--surface-strong,#fff);border:1px solid var(--border);border-radius:16px;padding:10px;box-shadow:var(--shadow);display:grid;gap:8px}.jalali-calendar-controls{display:grid;grid-template-columns:1fr 1fr;gap:8px}.jalali-calendar-controls label{gap:4px!important;font-size:12px}.jalali-calendar-controls select{height:36px!important;padding:6px 8px!important}.jalali-calendar-weekdays,.jalali-calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;direction:rtl}.jalali-weekday{text-align:center;color:var(--muted);font-size:11px;font-weight:800}.jalali-day-button{min-width:0!important;height:30px!important;padding:0!important;border-radius:9px!important;font-size:12px!important}.jalali-day-button.active{background:var(--primary)!important;color:#fff!important}.purchase-invoice-empty{border:1px dashed var(--border);border-radius:16px;padding:14px;text-align:center;color:var(--muted)}.invoice-name-field{position:relative}.invoice-autocomplete{position:absolute;z-index:25;top:calc(100% + 4px);right:0;left:0;background:var(--surface-strong,#fff);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:6px;display:grid;gap:4px}.invoice-autocomplete[hidden]{display:none!important}.invoice-autocomplete button{display:flex!important;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px!important;text-align:right!important}.invoice-autocomplete small{color:var(--muted);font-size:11px}


/* Inventory search dropdown inside stock box */
.inventory-search-field{position:relative;margin:4px 0 12px;z-index:6}.inventory-search-field label{margin:0}.inventory-search-field input{width:100%;background:#fff!important;color:#172033!important;-webkit-text-fill-color:#172033!important}.inventory-search-menu{position:absolute;inset-inline:0;top:calc(100% + 6px);background:var(--surface-strong,#fff);border:1px solid var(--border);border-radius:16px;box-shadow:0 18px 42px rgba(15,23,42,.18);padding:6px;display:grid;gap:4px;max-height:260px;overflow-y:auto;z-index:20}.inventory-search-menu[hidden]{display:none!important}.inventory-search-menu button{display:grid;text-align:right;background:transparent!important;color:var(--text)!important;border:0!important;border-radius:12px;padding:9px 12px!important;box-shadow:none!important}.inventory-search-menu button:hover,.inventory-search-menu button:focus{background:color-mix(in srgb,var(--primary) 12%,var(--surface-strong,#fff))!important}.inventory-search-menu small{color:var(--muted);font-size:12px}.inventory-edit-form[hidden]{display:none!important}


/* Centered digital calculator popup */
.calculator-launch-button{border:1px solid rgba(255,255,255,.18);background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;border-radius:17px;padding:13px 14px;font-weight:950;cursor:pointer;box-shadow:0 18px 34px color-mix(in srgb,var(--primary) 32%,transparent)}.calculator-overlay{position:fixed;inset:0;z-index:120;display:grid;place-items:center;background:rgba(6,18,31,.48);backdrop-filter:blur(8px);padding:18px}.calculator-popup{width:min(360px,94vw);background:var(--surface-strong,#fff);color:var(--text);border:1px solid var(--border);border-radius:28px;padding:18px;box-shadow:0 34px 90px rgba(6,18,31,.34);direction:rtl}.calculator-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.calculator-header h2{margin:0;font-size:20px}.calculator-close{width:40px;height:40px;border-radius:14px;border:0;background:color-mix(in srgb,var(--primary) 12%,var(--surface-strong,#fff));color:var(--text);font-size:24px;cursor:pointer}.calculator-display{display:block;min-height:72px;border-radius:20px;background:linear-gradient(135deg,#0f172a,#1f2937);color:#ecfeff;text-align:left;direction:ltr;padding:18px;font-size:30px;font-weight:950;overflow-x:auto;margin-bottom:14px}.calculator-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.calculator-grid button{min-height:54px;border-radius:17px;border:1px solid var(--border);background:color-mix(in srgb,var(--primary) 8%,var(--surface-strong,#fff));color:var(--text);font-weight:950;font-size:18px;cursor:pointer}.calculator-grid button:hover{background:color-mix(in srgb,var(--primary) 18%,var(--surface-strong,#fff))}.calculator-clear{grid-column:span 2;background:linear-gradient(135deg,#fee2e2,#fff7ed)!important;color:#991b1b!important}.calculator-equals{background:linear-gradient(135deg,var(--primary),var(--accent))!important;color:#fff!important}

.purchase-invoice-status-title{margin-top:18px;margin-bottom:10px}.purchase-invoice-unpaid-row{border-color:color-mix(in srgb,#f59e0b 30%,var(--border))!important}.purchase-invoice-unpaid-row em{color:#92400e;font-weight:950}.purchase-invoice-paid-row em{color:#0f766e;font-weight:950}

.ingredient-material-field{position:relative}.ingredient-autocomplete{position:absolute;z-index:28;top:calc(100% + 4px);right:0;left:0;background:var(--surface-strong,#fff);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow);padding:6px;display:grid;gap:4px}.ingredient-autocomplete[hidden]{display:none!important}.ingredient-autocomplete button{display:flex!important;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px!important;text-align:right!important}.ingredient-autocomplete small{color:var(--muted);font-size:11px}.ingredient-material-field input[data-ingredient-material-name]{width:100%;background:#fff!important;color:#172033!important;-webkit-text-fill-color:#172033!important}


/* Accounting expense tab reference: narrow operational-expense box, wider purchase-invoice box, invoice items in one line */
.expense-entry-grid{grid-template-columns:minmax(280px,.75fr) minmax(0,1.55fr)!important;direction:rtl!important;align-items:start!important}
.expense-entry-grid>.expense-fixed-panel{grid-column:1!important;width:100%!important;max-width:none!important}
.expense-entry-grid>.purchase-invoice-panel{grid-column:2!important;width:100%!important;max-width:none!important;justify-self:stretch!important}
.purchase-invoice-row{direction:rtl;display:grid!important;grid-template-columns:26px minmax(145px,1.1fr) 88px 86px 124px 42px!important;gap:6px!important;align-items:end!important;border:1px solid var(--border);border-radius:16px;padding:8px 10px;margin:10px 0;background:color-mix(in srgb,var(--surface-strong,#fff) 86%,transparent);box-shadow:var(--soft-shadow)}
.purchase-invoice-row .ingredient-number{grid-column:1!important;align-self:center!important;justify-self:center!important;font-size:22px!important;line-height:1!important;color:var(--primary)!important}
.purchase-invoice-row .invoice-name-field{grid-column:2!important;position:relative!important}.purchase-invoice-row .invoice-qty-field{grid-column:3!important}.purchase-invoice-row .invoice-unit-field{grid-column:4!important}.purchase-invoice-row .invoice-price-field{grid-column:5!important}.purchase-invoice-row .invoice-line-remove-button{grid-column:6!important;width:40px!important;min-width:40px!important;height:40px!important;align-self:end!important;margin:0!important}
.purchase-invoice-row label{min-width:0!important;margin:0!important;white-space:nowrap!important}.purchase-invoice-row input,.purchase-invoice-row select{width:100%!important;min-width:0!important;height:42px!important;padding-inline:7px!important}.purchase-invoice-row .invoice-qty-field input,.purchase-invoice-row .invoice-unit-field select,.purchase-invoice-row .invoice-price-field input{text-align:center!important;text-align-last:center!important}
@media(max-width:1100px){.expense-entry-grid{grid-template-columns:1fr!important}.expense-entry-grid>.expense-fixed-panel,.expense-entry-grid>.purchase-invoice-panel{grid-column:1!important}.purchase-invoice-row{grid-template-columns:26px minmax(135px,1fr) 82px 82px 112px 42px!important;overflow-x:auto!important}}
@media(max-width:760px){.purchase-invoice-row{grid-template-columns:1fr!important}.purchase-invoice-row>*{grid-column:1!important}.purchase-invoice-row .invoice-line-remove-button{width:100%!important}}


/* Purchase invoice field placement: match reference two-column order */
.purchase-invoice-field-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:10px 16px!important;direction:rtl!important;align-items:end!important;margin-bottom:12px!important}
.purchase-invoice-field-grid label,.purchase-invoice-field-grid .jalali-date-field{margin:0!important;min-width:0!important}.purchase-invoice-field-grid input,.purchase-invoice-field-grid select{height:44px!important;width:100%!important;min-width:0!important}.purchase-invoice-field-grid .jalali-date-field{grid-template-columns:1fr 44px!important;gap:8px!important}.purchase-invoice-field-grid .invoice-field-date,.purchase-invoice-field-grid .invoice-field-document-number,.purchase-invoice-field-grid .invoice-field-title,.purchase-invoice-field-grid .invoice-field-supplier,.purchase-invoice-field-grid .invoice-field-amount,.purchase-invoice-field-grid .invoice-field-status,.purchase-invoice-field-grid .invoice-field-payment-method,.purchase-invoice-field-grid .invoice-field-account,.purchase-invoice-field-grid .invoice-field-cheque-number,.purchase-invoice-field-grid .invoice-field-cheque-date{min-width:0!important}
@media(max-width:760px){.purchase-invoice-field-grid{grid-template-columns:1fr!important}}


/* Purchase invoice control vertical centering + corrected item-column proportions */
.purchase-invoice-panel input,.purchase-invoice-panel select{display:block!important;line-height:44px!important;padding-top:0!important;padding-bottom:0!important;vertical-align:middle!important}
.purchase-invoice-panel select{line-height:42px!important;background-position:left 12px center!important}
.purchase-invoice-field-grid input,.purchase-invoice-field-grid select{height:46px!important;line-height:46px!important;padding-block:0!important;display:block!important}
.purchase-invoice-field-grid .jalali-date-field input{height:46px!important;line-height:46px!important;padding-block:0!important}.purchase-invoice-field-grid .jalali-calendar-button{height:46px!important;display:grid!important;place-items:center!important;padding:0!important}
.purchase-invoice-row input,.purchase-invoice-row select{height:44px!important;line-height:44px!important;padding-top:0!important;padding-bottom:0!important;display:block!important}.purchase-invoice-row select{line-height:42px!important}.purchase-invoice-row .invoice-name-field input{text-align:right!important}.purchase-invoice-row .invoice-qty-field input,.purchase-invoice-row .invoice-unit-field select,.purchase-invoice-row .invoice-price-field input{font-size:15px!important;font-weight:800!important}


/* Registered purchase invoices: wider compact list with document details decal */
.expense-entry-grid>.purchase-invoice-list{grid-column:1/-1!important;width:100%!important;max-width:none!important;justify-self:stretch!important}
.purchase-invoice-list{overflow:visible!important}.purchase-invoice-compact-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:12px!important;align-items:center!important;border:1px solid var(--border);border-radius:18px;padding:10px 12px;margin:10px 0;background:color-mix(in srgb,var(--surface-strong,#fff) 88%,transparent);box-shadow:var(--soft-shadow)}
.purchase-invoice-compact-meta{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;align-items:center;min-width:0}.purchase-invoice-compact-meta span{display:grid;gap:3px;min-width:0}.purchase-invoice-compact-meta b{color:var(--muted);font-size:11px}.purchase-invoice-compact-meta span:not(:last-child){border-left:1px solid var(--border);padding-left:10px}.purchase-invoice-compact-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:nowrap}.purchase-invoice-pay-button{height:40px!important;white-space:nowrap!important;padding-inline:12px!important}.purchase-invoice-details{position:relative;display:block}.purchase-invoice-details summary{list-style:none}.purchase-invoice-details summary::-webkit-details-marker{display:none}.purchase-invoice-details-body{position:absolute;top:calc(100% + 8px);left:0;z-index:35;width:min(420px,86vw);background:var(--surface-strong,#fff);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);padding:12px;display:grid;gap:6px;text-align:right}.purchase-invoice-details-body p{margin:0;color:var(--text)}
@media(max-width:760px){.purchase-invoice-compact-row{grid-template-columns:1fr!important}.purchase-invoice-compact-meta{grid-template-columns:1fr!important}.purchase-invoice-compact-meta span:not(:last-child){border-left:0;padding-left:0;border-bottom:1px solid var(--border);padding-bottom:6px}.purchase-invoice-compact-actions{justify-content:flex-start;flex-wrap:wrap}}


/* Registered purchase invoice split view: unpaid right, paid left, like reference */
.purchase-invoice-list>h2{text-align:center!important;margin-bottom:10px!important}.purchase-invoice-split{display:grid;grid-template-columns:1fr 1fr;gap:0;direction:rtl;border-top:4px solid #101010;margin:4px -12px 0;min-height:180px}.purchase-invoice-status-column{min-width:0;padding:18px 20px 20px}.purchase-invoice-unpaid-column{border-left:4px solid #101010}.purchase-invoice-status-title{align-items:center!important;margin:0 0 14px!important}.purchase-invoice-status-title h3{margin:0;font-size:16px}.purchase-invoice-status-title .badge{background:#dbfff8!important;color:#047867!important;border:1px solid #b8f4e8!important}.purchase-invoice-column-body{display:grid;gap:10px}.purchase-invoice-split .purchase-invoice-compact-row{margin:0!important}.purchase-invoice-split .purchase-invoice-compact-meta{grid-template-columns:1fr .72fr 1fr}.purchase-invoice-split .purchase-invoice-compact-actions{order:-1}.purchase-invoice-split .purchase-invoice-pay-button{background:#fff1e8!important;color:#c85f29!important;border-color:#ffd8c2!important;font-weight:950!important}
@media(max-width:900px){.purchase-invoice-split{grid-template-columns:1fr;border-top:3px solid #101010}.purchase-invoice-unpaid-column{border-left:0;border-bottom:3px solid #101010}.purchase-invoice-status-column{padding:16px 12px}.purchase-invoice-split .purchase-invoice-compact-row{grid-template-columns:1fr!important}}


/* Purchase invoice row action order inside split rows: details/delete/edit/pay from left to right */
.purchase-invoice-split .purchase-invoice-compact-actions{direction:ltr!important;justify-content:flex-start!important;align-self:center!important;min-width:max-content!important}.purchase-invoice-split [data-view-purchase-invoice]{order:1}.purchase-invoice-split [data-delete-purchase-invoice]{order:2}.purchase-invoice-split [data-edit-purchase-invoice]{order:3}.purchase-invoice-split .purchase-invoice-pay-button{order:4}.purchase-invoice-split .purchase-invoice-compact-row{grid-template-columns:minmax(0,1fr) max-content!important;overflow:visible!important}.purchase-invoice-split .purchase-invoice-details-body{direction:rtl!important}


/* Compact fit inside each half-width registered-invoice column */
.purchase-invoice-split .purchase-invoice-compact-row{gap:8px!important;padding:8px 10px!important;grid-template-columns:minmax(205px,1fr) max-content!important}.purchase-invoice-split .purchase-invoice-compact-meta{grid-template-columns:minmax(92px,1fr) 52px minmax(100px,1fr)!important;gap:6px!important}.purchase-invoice-split .purchase-invoice-compact-meta b{font-size:10px!important;line-height:1.2!important}.purchase-invoice-split .purchase-invoice-compact-meta span{font-size:12px!important;line-height:1.35!important}.purchase-invoice-split .purchase-invoice-compact-meta span:not(:last-child){padding-left:6px!important}.purchase-invoice-split .purchase-invoice-compact-actions{gap:5px!important}.purchase-invoice-split .purchase-invoice-row-decal{width:36px!important;min-width:36px!important;height:36px!important}.purchase-invoice-split .purchase-invoice-pay-button{height:36px!important;min-width:86px!important;padding-inline:8px!important;font-size:12px!important;line-height:1!important}


/* Latest invoice split correction: meta block on right, actions on left, larger controls, scroll after 2 rows */
.purchase-invoice-split .purchase-invoice-compact-row{direction:rtl!important;grid-template-columns:minmax(260px,1fr) max-content!important;align-items:center!important;gap:12px!important;padding:10px 12px!important}
.purchase-invoice-split .purchase-invoice-compact-meta{grid-column:1!important;justify-self:stretch!important;grid-template-columns:minmax(110px,1fr) 64px minmax(120px,1fr)!important;gap:8px!important;text-align:right!important}
.purchase-invoice-split .purchase-invoice-compact-actions{grid-column:2!important;justify-self:start!important;direction:ltr!important;justify-content:flex-start!important;gap:7px!important}
.purchase-invoice-split .purchase-invoice-compact-meta b{font-size:11px!important;line-height:1.25!important}.purchase-invoice-split .purchase-invoice-compact-meta span{font-size:13px!important;line-height:1.4!important;font-weight:850!important}.purchase-invoice-split .purchase-invoice-row-decal{width:40px!important;min-width:40px!important;height:40px!important}.purchase-invoice-split .purchase-invoice-pay-button{height:40px!important;min-width:98px!important;padding-inline:12px!important;font-size:13px!important;line-height:1!important}
.purchase-invoice-split .purchase-invoice-column-body{max-height:148px!important;overflow-y:auto!important;overflow-x:hidden!important;padding-inline-end:4px!important;scrollbar-width:thin}.purchase-invoice-split .purchase-invoice-column-body::-webkit-scrollbar{width:7px}.purchase-invoice-split .purchase-invoice-column-body::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--primary) 32%,transparent);border-radius:10px}


/* Latest invoice row baseline alignment and larger meta text */

.purchase-invoice-split .purchase-invoice-compact-meta,.purchase-invoice-split .purchase-invoice-compact-actions{grid-row:1!important}
.purchase-invoice-split .purchase-invoice-compact-row{min-height:82px!important;align-items:center!important;grid-template-columns:minmax(270px,1fr) max-content!important;padding:10px 10px!important;gap:8px!important}
.purchase-invoice-split .purchase-invoice-compact-meta{height:58px!important;align-self:center!important;align-items:center!important;grid-template-columns:minmax(0,1fr) 58px minmax(0,1fr)!important;gap:8px!important;min-width:0!important}
.purchase-invoice-split .purchase-invoice-compact-meta span{height:58px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;font-size:15px!important;line-height:1.25!important;font-weight:900!important;white-space:nowrap!important;min-width:0!important}
.purchase-invoice-split .purchase-invoice-compact-meta span:first-child{align-items:center!important;text-align:center!important}.purchase-invoice-split .purchase-invoice-compact-meta span:last-child{align-items:center!important;text-align:center!important}
.purchase-invoice-split .purchase-invoice-compact-meta b{display:block!important;margin-bottom:6px!important;font-size:12px!important;line-height:1.1!important;font-weight:850!important;opacity:.78!important}
.purchase-invoice-split .purchase-invoice-compact-actions{height:58px!important;align-self:center!important;align-items:center!important;display:flex!important;transform:translateX(6px)!important}.purchase-invoice-split .purchase-invoice-row-decal{width:42px!important;min-width:42px!important;height:42px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}.purchase-invoice-split .purchase-invoice-row-decal svg{width:22px!important;height:22px!important}.purchase-invoice-split .purchase-invoice-pay-button{height:42px!important;min-width:96px!important;padding-inline:12px!important;font-size:13px!important;font-weight:900!important;display:inline-flex!important;align-items:center!important;justify-content:center!important}


/* Printable purchase-invoice details popup */
.purchase-invoice-details-modal{width:min(900px,96vw)!important}.purchase-invoice-print-sheet h2{text-align:center;margin:0 0 18px}.purchase-invoice-print-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px 14px;margin-bottom:18px}.purchase-invoice-print-summary p{border:1px solid #d7e2ea;border-radius:14px;padding:10px 12px;margin:0;display:grid;gap:4px;min-height:66px;align-content:center}.purchase-invoice-print-summary b{color:#607080;font-size:12px}.purchase-invoice-print-summary span{font-size:16px;font-weight:900}.purchase-invoice-print-table{width:100%;border-collapse:collapse;text-align:center}.purchase-invoice-print-table th,.purchase-invoice-print-table td{border:1px solid #d7e2ea;padding:8px 10px}.purchase-invoice-print-table th{background:#edf7f6;font-weight:900}@media print{body:has(#purchaseInvoiceDetailsModalRoot) .app-shell{display:none!important}body:has(#purchaseInvoiceDetailsModalRoot) #purchaseInvoiceDetailsModalRoot{position:static!important;inset:auto!important;background:white!important;padding:0!important;display:block!important}body:has(#purchaseInvoiceDetailsModalRoot) .print-modal{box-shadow:none!important;width:100%!important;border-radius:0!important}body:has(#purchaseInvoiceDetailsModalRoot) .print-actions{display:none!important}}


/* Keep invoice row decal tooltips fully visible inside the scrollable invoice columns */
.purchase-invoice-split .purchase-invoice-row-decal::after{top:calc(100% + 8px)!important;bottom:auto!important;left:0!important;right:auto!important;transform:translateX(0) translateY(-4px)!important;z-index:60!important;direction:rtl!important;text-align:center!important;max-width:190px!important;white-space:nowrap!important}
.purchase-invoice-split .purchase-invoice-row-decal:hover::after,.purchase-invoice-split .purchase-invoice-row-decal:focus-visible::after{transform:translateX(0) translateY(0)!important}
.purchase-invoice-split .purchase-invoice-column-body{padding-top:2px!important;padding-bottom:34px!important}


/* Body-level tooltip for clipped invoice row decals */
.purchase-invoice-split .purchase-invoice-row-decal::after{content:none!important}.floating-action-tooltip{position:fixed;z-index:9999;background:#102033;color:#fff;border-radius:10px;padding:7px 11px;font-size:12px;font-weight:850;line-height:1.35;white-space:nowrap;box-shadow:0 12px 30px rgba(0,0,0,.24);pointer-events:none;direction:rtl;text-align:center}


/* Registered operational expenses box under registered purchase invoices */
.expense-entry-grid>.operational-expense-list{grid-column:1/-1!important;width:100%!important;max-width:none!important;justify-self:stretch!important}.operational-expense-list-title{align-items:center!important;margin-bottom:10px!important}.operational-expense-list-body{display:grid;gap:10px;max-height:240px;overflow-y:auto;overflow-x:hidden;padding:2px 4px 4px;scrollbar-width:thin}.operational-expense-row{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(0,1.45fr);gap:14px;align-items:center;border:1px solid var(--border);border-radius:18px;padding:12px 14px;background:color-mix(in srgb,var(--surface-strong,#fff) 88%,transparent);box-shadow:var(--soft-shadow)}.operational-expense-doc{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;align-items:center;text-align:center}.operational-expense-doc span{height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0}.operational-expense-doc span:not(:last-child){border-left:1px solid var(--border);padding-left:10px}.operational-expense-doc b{font-size:11px;color:var(--muted)}.operational-expense-info{display:grid;gap:5px;min-width:0}.operational-expense-info strong{font-size:15px;color:var(--text)}.operational-expense-info small{color:var(--muted);line-height:1.7}.operational-expense-info p{margin:0;color:var(--muted);font-size:12px;line-height:1.7}@media(max-width:900px){.operational-expense-row{grid-template-columns:1fr}.operational-expense-doc{grid-template-columns:1fr}.operational-expense-doc span:not(:last-child){border-left:0;border-bottom:1px solid var(--border);padding-left:0;padding-bottom:6px}}


/* Dark theme: registered invoice/expense row borders must match */
.app-shell.theme-midnight .purchase-invoice-split .purchase-invoice-compact-row,.app-shell.theme-midnight .operational-expense-row{border-color:rgba(255,255,255,.12)!important;background:rgba(21,27,45,.78)!important;box-shadow:var(--soft-shadow)!important}
.app-shell.theme-midnight .purchase-invoice-split .purchase-invoice-compact-meta span:not(:last-child),.app-shell.theme-midnight .operational-expense-doc span:not(:last-child){border-left-color:rgba(255,255,255,.12)!important}


/* Unified box headers and cheque board */
.panel>h2,.panel .section-title h2{text-align:center;width:100%;margin-left:auto;margin-right:auto}.section-title{align-items:center}.section-title .badge{justify-self:end}.cheque-board-panel{display:grid;gap:16px}.cheque-warning-summary{border:1px solid var(--border);border-radius:18px;padding:14px;background:color-mix(in srgb,var(--surface-strong,#fff) 88%,var(--primary) 12%);display:grid;gap:10px}.cheque-warning-summary h2{text-align:center;margin:0}.cheque-warning-summary.danger{background:#fff7ed!important;border-color:#fdba74!important}.cheque-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.cheque-status-box{border:1px solid var(--border);border-radius:20px;background:var(--surface-strong,#fff);padding:14px;display:grid;gap:12px;min-height:370px;max-height:370px;overflow:hidden}.cheque-status-list{display:grid;gap:10px;max-height:288px;overflow-y:auto;padding-inline-end:4px}.cheque-list-row,.cheque-warning-row{border:1px solid var(--border);border-radius:16px;padding:10px 12px;display:grid;grid-template-columns:1fr auto;gap:6px 12px;align-items:center;background:color-mix(in srgb,var(--surface-strong,#fff) 94%,var(--primary) 6%)}.cheque-list-row b,.cheque-warning-row b{text-align:right}.cheque-list-row span,.cheque-warning-row span{color:var(--muted);font-size:13px;grid-column:1/-1}.cheque-list-row em,.cheque-warning-row em{font-style:normal;font-weight:900;color:var(--primary)}.cheque-near-warning{border-color:#fb923c!important;background:#fff7ed!important}.theme-midnight .cheque-near-warning{background:rgba(251,146,60,.14)!important;border-color:rgba(251,146,60,.55)!important}@media(max-width:900px){.cheque-status-grid{grid-template-columns:1fr}.cheque-status-box{max-height:370px}}

.accounting-workspace>.cheque-board-panel{grid-column:1/-1;width:100%}


/* Correct full-box title centering and readable compact cheque warning card */
.purchase-invoice-list>.section-title,.operational-expense-list-title{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;width:100%!important}.purchase-invoice-list>.section-title h2,.operational-expense-list-title h2{position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;width:max-content!important;max-width:70%!important;text-align:center!important;margin:0!important}.purchase-invoice-list>.section-title .badge,.operational-expense-list-title .badge{margin-inline-start:auto!important;position:relative!important;z-index:1!important}
.cheque-warning-summary{width:min(560px,52%)!important;justify-self:center!important;margin-inline:auto!important;background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 92%,var(--primary) 8%),color-mix(in srgb,var(--surface-strong,#fff) 88%,var(--accent) 12%))!important;border-color:color-mix(in srgb,var(--primary) 28%,var(--border))!important;box-shadow:var(--soft-shadow)!important}.cheque-warning-summary.danger{background:linear-gradient(135deg,#fff7ed,#fff)!important;border-color:#fdba74!important;color:#3a1f0d!important}.cheque-warning-summary h2{color:var(--text)!important}.cheque-warning-list{display:grid;gap:8px}.cheque-warning-summary .cheque-warning-row,.cheque-warning-summary .cheque-list-row{background:#fff!important;color:#102033!important;border-color:#fed7aa!important;box-shadow:0 10px 24px rgba(154,52,18,.10)!important}.cheque-warning-summary .cheque-warning-row b,.cheque-warning-summary .cheque-list-row b{color:#7c2d12!important}.cheque-warning-summary .cheque-warning-row span,.cheque-warning-summary .cheque-list-row span{color:#4b5563!important;font-weight:800!important}.cheque-warning-summary .cheque-warning-row em,.cheque-warning-summary .cheque-list-row em{color:#4f46e5!important}.theme-midnight .cheque-warning-summary{background:linear-gradient(135deg,rgba(21,27,45,.96),rgba(30,41,59,.96))!important;border-color:rgba(56,189,248,.38)!important}.theme-midnight .cheque-warning-summary h2{color:#f8fafc!important}.theme-midnight .cheque-warning-summary .cheque-warning-row,.theme-midnight .cheque-warning-summary .cheque-list-row{background:rgba(15,23,42,.94)!important;color:#f8fafc!important;border-color:rgba(251,146,60,.50)!important}.theme-midnight .cheque-warning-summary .cheque-warning-row b,.theme-midnight .cheque-warning-summary .cheque-list-row b{color:#fff7ed!important}.theme-midnight .cheque-warning-summary .cheque-warning-row span,.theme-midnight .cheque-warning-summary .cheque-list-row span{color:#dbeafe!important}.theme-midnight .cheque-warning-summary .cheque-warning-row em,.theme-midnight .cheque-warning-summary .cheque-list-row em{color:#a5b4fc!important}


/* Cheque board corrected per marked reference */
.cheque-board-panel>.section-title{display:none!important}.cheque-warning-summary{padding:10px!important;gap:8px!important}.cheque-warning-title{position:relative!important;display:grid!important;grid-template-columns:auto 1fr auto!important;align-items:center!important;gap:8px!important;min-height:42px!important}.cheque-warning-title h2{grid-column:2!important;text-align:center!important;margin:0!important;width:auto!important}.cheque-warning-title .badge{grid-column:3!important;justify-self:end!important;font-size:10px!important;line-height:1.35!important;padding:7px 10px!important}.cheque-view-decal{width:42px!important;min-width:42px!important;height:42px!important;justify-self:start!important}.cheque-warning-list,.cheque-status-list{display:grid!important;gap:8px!important;max-height:158px!important;overflow-y:auto!important;overflow-x:hidden!important;padding-inline-end:4px!important;scrollbar-width:thin!important}.cheque-status-box{min-height:260px!important;max-height:260px!important}.cheque-status-box>.section-title{grid-template-columns:auto 1fr!important;display:grid!important;position:relative!important}.cheque-status-box>.section-title h2{grid-column:2!important;text-align:center!important;margin:0!important;width:auto!important}.cheque-status-box>.section-title .badge{display:none!important}.cheque-list-row{min-height:70px!important}.cheque-list-modal{width:min(980px,96vw)!important}.cheque-list-print-header{display:grid!important;grid-template-columns:1fr auto!important}.cheque-list-print-header strong{justify-self:start!important;background:#ecfdf5;border:1px solid #99f6e4;border-radius:999px;padding:8px 14px;color:#0f766e}.cheque-list-print-table th,.cheque-list-print-table td{text-align:center!important}@media print{body:has(#chequeListModalRoot) .app-shell{display:none!important}body:has(#chequeListModalRoot) #chequeListModalRoot{position:static!important;inset:auto!important;background:white!important;padding:0!important;display:block!important}body:has(#chequeListModalRoot) .print-modal{box-shadow:none!important;width:100%!important;border-radius:0!important}body:has(#chequeListModalRoot) .print-actions{display:none!important}}


/* Cheque row fit: amount stays inside, view decal stays left, pass action on pending rows */
.cheque-warning-title,.cheque-status-box>.section-title{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;min-height:46px!important;padding-inline:54px!important}.cheque-warning-title h2,.cheque-status-box>.section-title h2{position:static!important;grid-column:auto!important;width:auto!important;max-width:100%!important;text-align:center!important;margin:0!important}.cheque-warning-title .badge{position:absolute!important;right:0!important;top:50%!important;transform:translateY(-50%)!important}.cheque-warning-title .cheque-view-decal,.cheque-status-box>.section-title .cheque-view-decal{position:absolute!important;left:0!important;top:50%!important;transform:translateY(-50%)!important;margin:0!important}.cheque-list-row{display:grid!important;grid-template-columns:minmax(0,1fr) max-content max-content!important;gap:6px 8px!important;align-items:center!important;min-height:62px!important;overflow:hidden!important}.cheque-row-main{min-width:0!important;display:grid!important;gap:4px!important}.cheque-row-main b,.cheque-row-main span{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.cheque-list-row>span{display:none!important}.cheque-list-row em{grid-column:auto!important;white-space:nowrap!important;align-self:center!important;justify-self:end!important;font-size:12px!important}.cheque-pass-button{height:34px!important;min-width:72px!important;padding:7px 10px!important;font-size:12px!important;box-shadow:none!important;white-space:nowrap!important}.cheque-warning-summary .cheque-list-row{grid-template-columns:minmax(0,1fr) max-content!important}.cheque-warning-summary .cheque-pass-button{display:none!important}@media(max-width:760px){.cheque-list-row{grid-template-columns:minmax(0,1fr)!important}.cheque-list-row em,.cheque-pass-button{justify-self:start!important}}


/* Printable modal fixes: no visible close text, cheque amounts larger, and all accounting print roots remain printable */
.modal-close-icon{width:40px!important;height:40px!important;min-width:40px!important;border:1px solid var(--border,#d7e2ea)!important;border-radius:14px!important;background:linear-gradient(135deg,#fff,#eef5fb)!important;color:#102033!important;font-size:25px!important;line-height:1!important;font-weight:950!important;display:inline-grid!important;place-items:center!important;cursor:pointer!important;box-shadow:0 10px 22px rgba(25,45,70,.10)!important}.modal-close-icon:hover{filter:brightness(.98)!important;transform:translateY(-1px)!important}.cheque-list-row em{font-size:16px!important;font-weight:950!important;color:var(--primary)!important;line-height:1.25!important}.cheque-warning-summary .cheque-list-row em{font-size:16px!important;color:#4f46e5!important}.cheque-list-print-table td:nth-child(3),.cheque-list-print-table th:nth-child(3){font-size:17px!important;font-weight:950!important}@media print{#purchaseInvoiceDetailsModalRoot,#chequeListModalRoot,#printableMenuModalRoot{position:static!important;inset:auto!important;background:white!important;padding:0!important;display:block!important}#purchaseInvoiceDetailsModalRoot .print-modal,#chequeListModalRoot .print-modal,#printableMenuModalRoot .print-modal{box-shadow:none!important;width:100%!important;border-radius:0!important;padding:0!important}#purchaseInvoiceDetailsModalRoot .recipe-print-sheet,#chequeListModalRoot .recipe-print-sheet,#printableMenuModalRoot .recipe-print-sheet{display:block!important;background:#fff!important;color:#102033!important}}


/* Purchase invoice automatic total */
.invoice-field-amount input.invoice-auto-amount{background:color-mix(in srgb,var(--surface-strong,#fff) 78%,var(--primary) 14%)!important;border-color:color-mix(in srgb,var(--primary) 34%,var(--border))!important;font-weight:950!important;color:var(--text)!important;cursor:not-allowed!important}.invoice-field-amount::after{content:"با آیتم‌ها خودکار محاسبه می‌شود";display:block;margin-top:4px;font-size:11px;font-weight:800;color:var(--muted)}


/* Pending cheque row actions: keep pass and delete visible inside the row */
.cheque-list-row{grid-template-columns:minmax(0,1fr) max-content max-content!important;overflow:visible!important}.cheque-row-actions{display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;gap:6px!important;min-width:max-content!important;justify-self:start!important}.cheque-row-actions .cheque-delete-decal{width:34px!important;min-width:34px!important;height:34px!important;border-radius:12px!important;padding:0!important}.cheque-row-actions .cheque-pass-button{margin:0!important}.cheque-status-list{padding-left:8px!important}@media(max-width:760px){.cheque-row-actions{justify-self:start!important}}


/* Passed cheque rows mirror pending row layout without visible actions */
.cheque-row-passed{grid-template-columns:minmax(0,1fr) max-content max-content!important}.cheque-row-passed .cheque-row-actions-placeholder{visibility:hidden!important;width:112px!important;min-width:112px!important;height:34px!important;display:inline-flex!important}.cheque-status-box .cheque-row-passed{border-color:color-mix(in srgb,var(--primary) 24%,var(--border))!important;background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 82%,var(--primary) 7%),color-mix(in srgb,var(--surface) 90%,var(--primary) 4%))!important}.cheque-row-passed [data-pass-cheque],.cheque-row-passed [data-delete-cheque]{display:none!important}


/* Passed cheque rows should visually match pending rows, minus the pass/delete controls */
.cheque-status-box .cheque-row-passed{border-color:#fb923c!important;background:linear-gradient(135deg,#fff7ed,#fff)!important;box-shadow:0 10px 22px rgba(251,146,60,.10)!important}.theme-night .cheque-status-box .cheque-row-passed{border-color:#fb923c!important;background:linear-gradient(135deg,rgba(251,146,60,.18),rgba(251,146,60,.08))!important}.cheque-row-passed .cheque-row-main b{color:inherit!important}.cheque-row-passed em{color:var(--primary)!important}


/* Dark theme: passed cheque rows must not turn white; mirror pending dark card */
.app-shell.theme-midnight .cheque-status-box .cheque-row-passed{border-color:#fb923c!important;background:rgba(55,37,39,.72)!important;box-shadow:0 10px 22px rgba(251,146,60,.10)!important;color:var(--text)!important}.app-shell.theme-midnight .cheque-row-passed .cheque-row-main b,.app-shell.theme-midnight .cheque-row-passed .cheque-row-main span{color:var(--text)!important;-webkit-text-fill-color:var(--text)!important}.app-shell.theme-midnight .cheque-row-passed em{color:#a78bfa!important;-webkit-text-fill-color:#a78bfa!important}


/* Final cheque passed-row correction: no white cards; same dark readable card style as pending */
.cheque-status-box .cheque-row-passed{border-color:#fb923c!important;background:rgba(55,37,39,.78)!important;background-image:none!important;color:#f7f8ff!important;box-shadow:0 10px 22px rgba(251,146,60,.10)!important}.cheque-status-box .cheque-row-passed .cheque-row-main b,.cheque-status-box .cheque-row-passed .cheque-row-main span{color:#f7f8ff!important;-webkit-text-fill-color:#f7f8ff!important}.cheque-status-box .cheque-row-passed em{color:#a78bfa!important;-webkit-text-fill-color:#a78bfa!important}


/* Inventory panel height-only correction: taller aligned boxes, no scroll in new-material form */
.inventory-workspace{align-items:stretch!important}.inventory-create-panel,.inventory-import-panel,.inventory-edit-panel{height:800px!important;min-height:800px!important;max-height:800px!important}.inventory-create-panel{overflow:visible!important}.inventory-import-panel{overflow-y:auto!important}.inventory-edit-panel{overflow:hidden!important}.inventory-create-panel label,.inventory-create-panel input,.inventory-create-panel select,.inventory-create-panel button{flex-shrink:0!important}@media(max-width:1100px){.inventory-create-panel,.inventory-import-panel,.inventory-edit-panel{height:auto!important;min-height:auto!important;max-height:none!important}.inventory-create-panel{overflow:visible!important}}


/* POS hall sales: table map, split bill, partial payments */
.pos-channel-tabs{display:flex;gap:10px;flex-wrap:wrap}.pos-channel-tabs button{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:16px;padding:12px 18px;font-weight:950;cursor:pointer}.pos-channel-tabs button.active{background:linear-gradient(135deg,var(--primary),var(--primary-2));color:#fff;box-shadow:var(--soft-shadow)}.pos-hall-workspace{display:grid;grid-template-columns:1fr;gap:14px;align-items:start}.pos-hall-workspace>.hall-payment-panel{grid-column:auto}.hall-table-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.hall-table-card{border:1px solid var(--border);border-radius:18px;padding:14px;background:color-mix(in srgb,var(--surface) 88%,var(--primary) 8%);color:var(--text);display:grid;gap:6px;text-align:center;cursor:pointer}.hall-table-card.active{outline:3px solid color-mix(in srgb,var(--primary) 50%,transparent)}.hall-table-card.free{border-color:#99f6e4}.hall-table-card.open-order{border-color:#fbbf24;background:color-mix(in srgb,#fbbf24 18%,var(--surface))}.hall-table-card.waiting-payment{border-color:#fb7185;background:color-mix(in srgb,#fb7185 16%,var(--surface))}.hall-sale-line{display:grid;grid-template-columns:32px minmax(0,1fr) 84px;gap:8px;align-items:end;border:1px solid var(--border);border-radius:18px;padding:10px;margin-bottom:10px;background:color-mix(in srgb,var(--surface) 92%,var(--primary) 5%)}.hall-sale-line>strong{align-self:center;text-align:center;font-size:22px;color:var(--primary)}.hall-product-tools{display:grid;grid-template-columns:1fr;gap:10px}.hall-payment-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0}.hall-payment-summary div{border:1px solid var(--border);border-radius:14px;padding:10px;text-align:center;background:color-mix(in srgb,var(--surface) 88%,var(--primary) 6%)}.hall-payment-summary span{display:block;color:var(--muted);font-size:12px}.hall-remaining-list{display:grid;gap:8px}.hall-select-all{display:grid!important;grid-template-columns:auto minmax(0,1fr) 86px;gap:10px;align-items:center;direction:rtl;width:100%;max-width:100%;margin:0;border:1px solid color-mix(in srgb,var(--border) 82%,var(--primary) 18%);border-radius:14px;padding:8px 10px;background:color-mix(in srgb,var(--surface) 92%,var(--primary) 5%)}.hall-select-all input{grid-column:1}.hall-select-all span{grid-column:2;font-weight:900}.hall-select-all i{grid-column:3}.hall-pay-item{display:grid;grid-template-columns:auto minmax(0,1fr) 86px;gap:10px;align-items:center;border:1px solid var(--border);border-radius:16px;padding:10px;background:var(--surface)}.hall-pay-item-copy{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:8px;row-gap:3px;min-width:0}.hall-pay-item-title{font-weight:950;white-space:nowrap}.hall-pay-item-remaining{color:var(--muted);font-size:12px;line-height:1.7}.hall-payment-preview{border:1px solid #99f6e4;background:#ecfdf5;color:#0f766e;border-radius:16px;padding:12px;font-weight:900;margin:10px 0}.hall-payment-history{display:grid;gap:8px;margin-top:12px}.hall-payment-row{display:grid;gap:4px;border:1px solid var(--border);border-radius:14px;padding:10px;background:color-mix(in srgb,var(--surface) 92%,var(--primary) 5%)}@media(max-width:1200px){.hall-sale-line{grid-template-columns:1fr}.hall-product-tools,.hall-payment-summary{grid-template-columns:1fr}}

.hall-order-panel .hall-sale-line,.hall-order-panel .hall-product-tools,.hall-order-panel .section-title,.hall-order-panel label,.hall-order-panel textarea,.hall-order-panel button{max-width:100%;box-sizing:border-box}.hall-order-panel{overflow:hidden}.hall-sale-line label{min-width:0}.hall-sale-line .sale-line-remove-button{justify-self:start}
.hall-ticket-draft-total{margin-top:10px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--primary) 34%,var(--border));border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 88%,var(--primary) 10%),color-mix(in srgb,var(--surface-strong,#fff) 86%,var(--accent) 12%));display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:950;box-shadow:var(--soft-shadow)}.hall-ticket-draft-total span{color:var(--muted);font-size:12px}.hall-ticket-draft-total b{color:var(--text);font-size:17px;white-space:nowrap}


/* POS hall table setup + compact picker */
.hall-table-config-form{position:relative;overflow:visible}.hall-table-config-grid{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:12px}.hall-corner-picker{position:absolute;top:14px;left:14px;z-index:4}.hall-table-trigger{min-width:150px;border:1px solid rgba(20,40,70,.2);border-radius:18px;padding:8px 12px;background:linear-gradient(135deg,#fff,#ecfeff);box-shadow:0 12px 30px rgba(15,23,42,.16);display:grid;gap:2px;text-align:right;cursor:pointer}.hall-table-trigger span,.hall-table-trigger small{font-size:.72rem;color:var(--muted)}.hall-table-trigger b{font-size:1rem;color:var(--text)}.hall-table-picker-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.28);display:grid;place-items:center;z-index:1000}.hall-table-picker-popup{width:min(720px,92vw);max-height:82vh;overflow:auto}.hall-table-picker-popup .section-title{display:flex;align-items:center;justify-content:space-between}.hall-table-picker-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}.hall-order-category-panel{position:relative;overflow:visible}.hall-order-builder{display:grid;grid-template-columns:210px minmax(0,1fr);gap:14px;align-items:stretch}.hall-category-side{border:1px solid rgba(20,40,70,.12);border-radius:20px;padding:12px;background:rgba(255,255,255,.72);min-height:360px}.hall-category-tabs{display:grid;gap:8px;max-height:300px;overflow-y:auto;padding-left:3px}.hall-category-tabs button{border:1px solid rgba(20,40,70,.14);border-radius:14px;padding:10px 12px;background:#fff;cursor:pointer;text-align:right}.hall-category-tabs button.active{background:linear-gradient(135deg,#0f766e,#14b8a6);color:white;border-color:transparent;box-shadow:0 10px 24px rgba(20,184,166,.25)}.hall-food-list{min-width:0;border:1px solid rgba(20,40,70,.12);border-radius:20px;padding:12px;background:rgba(255,255,255,.55)}.hall-menu-scroll{max-height:520px;overflow-y:auto;display:grid;gap:12px;padding-left:4px}.hall-menu-item-card{display:grid;grid-template-columns:minmax(180px,1fr) 120px 95px minmax(170px,1fr) minmax(150px,1fr);gap:10px;align-items:start;border:1px solid rgba(15,23,42,.12);border-radius:18px;padding:12px;background:linear-gradient(135deg,#fff,#f8fafc)}.hall-menu-item-card h3{margin:0 0 4px}.hall-menu-item-card small{color:var(--muted);line-height:1.8}.hall-menu-item-card b{align-self:center;text-align:center;color:#0f766e}.hall-menu-item-card textarea{min-height:58px;resize:vertical}.hall-empty-products{border:1px dashed rgba(15,23,42,.25);border-radius:18px;padding:18px;text-align:center;background:rgba(255,255,255,.72)}
@media(max-width:980px){.hall-order-builder{grid-template-columns:1fr}.hall-category-tabs{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));max-height:160px}.hall-menu-item-card{grid-template-columns:1fr}.hall-corner-picker{position:static;margin-bottom:12px}.hall-table-config-grid{grid-template-columns:1fr}}


/* Hall sales correction from screenshot: settings moved out, no default table, fixed no-horizontal product rows */
.pos-hall-workspace{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;min-width:0!important;overflow-x:hidden!important}.pos-hall-shell,.hall-order-category-panel,.hall-food-list,.hall-menu-scroll{min-width:0!important;max-width:100%!important;overflow-x:hidden!important}.hall-order-category-panel{position:relative!important;padding-top:72px!important}.hall-corner-picker{position:absolute!important;top:18px!important;left:auto!important;right:18px!important;z-index:4!important}.hall-table-trigger{width:190px!important;min-width:0!important;max-width:calc(100vw - 80px)!important;text-align:right!important}.hall-order-builder{display:grid!important;grid-template-columns:190px minmax(0,1fr)!important;gap:12px!important;align-items:start!important;direction:rtl!important;overflow:hidden!important}.hall-category-side{grid-column:1!important;min-height:0!important;height:540px!important;overflow:hidden!important}.hall-category-tabs{max-height:460px!important;overflow-y:auto!important;overflow-x:hidden!important}.hall-food-list{grid-column:2!important;height:540px!important;overflow:hidden!important;padding:12px!important}.hall-menu-scroll{height:470px!important;max-height:470px!important;overflow-y:auto!important;overflow-x:hidden!important;display:grid!important;gap:10px!important;padding:2px 2px 8px!important;scrollbar-gutter:stable!important}.hall-menu-item-card{direction:rtl!important;display:grid!important;grid-template-columns:minmax(0,1.05fr) 74px 116px minmax(0,1.05fr)!important;gap:10px!important;align-items:center!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important;padding:10px 12px!important}.hall-menu-item-card>*{min-width:0!important}.hall-item-name{grid-column:1!important;text-align:right!important}.hall-item-name h3{margin:0!important;font-size:15px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.hall-item-qty{grid-column:2!important;margin:0!important}.hall-item-price{grid-column:3!important;text-align:center!important;white-space:nowrap!important;color:var(--primary)!important}.hall-item-note{grid-column:4!important;margin:0!important}.hall-item-note textarea{height:54px!important;min-height:54px!important;max-height:54px!important;resize:none!important;overflow-y:auto!important}.hall-menu-item-card input{height:44px!important;text-align:center!important}.hall-table-config-form{grid-column:1/-1!important}.hall-table-config-form .section-title h2{text-align:center!important}@media(max-width:980px){.hall-order-category-panel{padding-top:0!important}.hall-corner-picker{position:static!important;margin-bottom:12px!important}.hall-order-builder{grid-template-columns:1fr!important}.hall-category-side,.hall-food-list{grid-column:1!important;height:auto!important}.hall-category-tabs{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))!important;max-height:180px!important}.hall-menu-scroll{height:auto!important;max-height:60vh!important}.hall-menu-item-card{grid-template-columns:1fr!important}.hall-item-name,.hall-item-qty,.hall-item-price,.hall-item-note{grid-column:1!important}}

.hall-menu-item-card label{min-width:0!important;width:100%!important;display:grid!important;gap:4px!important}.hall-menu-item-card input,.hall-menu-item-card textarea{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important}.hall-item-price{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;font-size:13px!important}

.pos-workspace>.wide,.pos-workspace>.pos-hall-shell{grid-column:1/-1!important;width:100%!important;max-width:100%!important}.pos-workspace{grid-template-columns:1fr!important;overflow-x:hidden!important}

.hall-menu-scroll{align-content:start!important;grid-auto-rows:max-content!important}.hall-menu-item-card{align-self:start!important;min-height:0!important;height:auto!important}


/* Hall sales compact cashier box: half-width, readable item name, plus/minus quantity */
.pos-hall-workspace{grid-template-columns:minmax(520px,560px) minmax(0,1fr)!important;align-items:start!important;justify-content:start!important;overflow-x:hidden!important}.hall-order-category-panel{grid-column:1!important;width:100%!important;max-width:560px!important;justify-self:start!important}.pos-hall-workspace>.hall-payment-panel{grid-column:1!important;width:100%!important;max-width:560px!important;justify-self:start!important}.hall-order-category-panel{padding-top:62px!important}.hall-order-builder{grid-template-columns:100px minmax(0,1fr)!important;gap:10px!important}.hall-category-side{height:430px!important;padding:10px!important}.hall-category-tabs{max-height:354px!important}.hall-food-list{height:430px!important;padding:10px!important}.hall-menu-scroll{height:356px!important;max-height:356px!important}.hall-menu-item-card{grid-template-columns:minmax(110px,1.4fr) 86px 72px minmax(48px,.75fr)!important;gap:5px!important;padding:8px 8px!important}.hall-item-name h3{font-size:16px!important;color:var(--text)!important;font-weight:950!important;white-space:normal!important;line-height:1.55!important;overflow:visible!important;text-overflow:clip!important}.hall-item-qty>span{font-size:12px!important;font-weight:850!important;text-align:center!important}.hall-qty-stepper{display:grid!important;grid-template-columns:26px minmax(32px,1fr) 26px!important;gap:4px!important;align-items:center!important}.hall-qty-stepper button{width:26px!important;height:32px!important;min-width:26px!important;padding:0!important;border:0!important;border-radius:11px!important;background:linear-gradient(135deg,var(--primary),var(--accent))!important;color:#fff!important;font-size:20px!important;font-weight:950!important;line-height:1!important;display:grid!important;place-items:center!important;box-shadow:0 8px 16px rgba(15,118,110,.22)!important}.hall-qty-stepper input{height:32px!important;min-height:32px!important;padding:0 4px!important;text-align:center!important;font-weight:950!important}.hall-item-price{font-size:11px!important;text-align:center!important;white-space:normal!important;line-height:1.45!important}.hall-item-note textarea{height:42px!important;min-height:42px!important;max-height:42px!important;padding:7px 8px!important}.hall-table-trigger{width:170px!important}.hall-order-category-panel .section-title{padding-inline-start:180px!important}@media(max-width:1100px){.pos-hall-workspace{grid-template-columns:1fr!important}.hall-order-category-panel,.pos-hall-workspace>.hall-payment-panel{max-width:100%!important}.hall-order-builder{grid-template-columns:1fr!important}.hall-category-side,.hall-food-list{height:auto!important}.hall-menu-scroll{height:auto!important;max-height:60vh!important}.hall-menu-item-card{grid-template-columns:1fr!important}.hall-order-category-panel .section-title{padding-inline-start:0!important}}


/* Corrected red-line interpretation: cashier occupies exactly the right half, from page edge to midpoint */
.pos-hall-workspace{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,50%)!important;direction:ltr!important;align-items:start!important;justify-content:stretch!important;gap:14px!important;width:100%!important;max-width:100%!important;overflow-x:hidden!important}.hall-order-category-panel{grid-column:2!important;width:100%!important;max-width:none!important;justify-self:stretch!important;direction:rtl!important}.pos-hall-workspace>.hall-payment-panel{grid-column:2!important;width:100%!important;max-width:none!important;justify-self:stretch!important;direction:rtl!important}.hall-order-builder{grid-template-columns:92px minmax(0,1fr)!important;gap:8px!important}.hall-category-side{padding:8px!important}.hall-category-side h3,.hall-food-list h3{font-size:14px!important;margin-bottom:8px!important}.hall-category-tabs button{padding:8px 8px!important;font-size:12px!important}.hall-menu-item-card{grid-template-columns:minmax(98px,1.35fr) 82px 68px minmax(52px,.72fr)!important;gap:5px!important}.hall-table-trigger{width:150px!important}.hall-order-category-panel .section-title{padding-inline-start:158px!important}@media(max-width:1100px){.pos-hall-workspace{grid-template-columns:1fr!important}.hall-order-category-panel,.pos-hall-workspace>.hall-payment-panel{grid-column:1!important;width:100%!important}.hall-order-category-panel .section-title{padding-inline-start:0!important}}


/* Red-line final fit: exact right half plus compact no-overflow item row inside that half */
.pos-workspace>.pos-hall-shell,.pos-workspace>.wide{grid-column:1/-1!important;width:100%!important;max-width:100%!important}.pos-hall-shell{width:100%!important;max-width:100%!important}.pos-hall-workspace{width:100%!important;max-width:100%!important;grid-template-columns:minmax(0,1fr) minmax(0,50%)!important;gap:0!important}.hall-order-category-panel{width:100%!important;max-width:100%!important;box-sizing:border-box!important}.hall-order-builder{grid-template-columns:78px minmax(0,1fr)!important;gap:6px!important}.hall-category-side{padding:7px!important}.hall-category-side h3{font-size:12px!important}.hall-category-tabs button{font-size:11px!important;padding:7px 5px!important}.hall-food-list{padding:8px!important;min-width:0!important;overflow-x:hidden!important}.hall-menu-scroll{min-width:0!important;overflow-x:hidden!important}.hall-menu-item-card{grid-template-columns:minmax(72px,1.35fr) 74px 56px minmax(34px,.7fr)!important;gap:4px!important;padding:7px 7px!important;overflow-x:hidden!important}.hall-item-name h3{font-size:13px!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}.hall-item-price{font-size:11px!important;white-space:normal!important;line-height:1.45!important}.hall-qty-stepper{grid-template-columns:24px minmax(26px,1fr) 24px!important;gap:3px!important}.hall-qty-stepper button{width:24px!important;min-width:24px!important;height:30px!important}.hall-qty-stepper input{height:30px!important;min-height:30px!important;font-size:11px!important;padding:4px!important}.hall-item-note textarea{min-width:0!important;height:38px!important;min-height:38px!important;max-height:38px!important;padding:6px!important;font-size:10px!important}.hall-table-trigger{width:138px!important}.hall-order-category-panel .section-title{padding-inline-start:144px!important}


/* Stretch hall workspace through the shell padding so the cashier really spans from screen/content midpoint to the right edge, matching the red line reference. */
.pos-hall-workspace{margin-inline:-45px!important;width:calc(100% + 90px)!important;max-width:calc(100% + 90px)!important}.hall-order-category-panel{border-radius:24px!important}
@media(max-width:1100px){.pos-hall-workspace{margin-inline:0!important;width:100%!important;max-width:100%!important}}


/* User-corrected cashier details: visible table decal, one-line categories, and readable item-name column. */
.hall-order-category-panel .section-title{padding-inline-start:168px!important}.hall-corner-picker{top:14px!important;left:14px!important;right:auto!important}.hall-table-trigger{width:158px!important;min-height:62px!important;border-radius:18px!important;display:grid!important;grid-template-columns:34px 1fr!important;grid-template-areas:"icon label" "icon name" "icon status"!important;align-items:center!important;text-align:right!important;gap:0 8px!important;padding:8px 10px!important;background:linear-gradient(135deg,#e9fffb,#c9fff2)!important;color:#10233a!important;border:1px solid rgba(45,212,191,.55)!important;box-shadow:0 14px 30px rgba(20,184,166,.22)!important}.hall-table-trigger .hall-table-icon{grid-area:icon!important;width:34px!important;height:34px!important;border-radius:12px!important;display:grid!important;place-items:center!important;background:#14b8a6!important;color:white!important;font-size:22px!important;font-weight:950!important}.hall-table-trigger>span:not(.hall-table-icon){grid-area:label!important;font-size:12px!important;font-weight:950!important;color:#0f766e!important}.hall-table-trigger b{grid-area:name!important;font-size:15px!important;color:#111827!important;line-height:1.2!important}.hall-table-trigger small{grid-area:status!important;font-size:11px!important;color:#334155!important}.hall-order-builder{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}.hall-category-side{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important;gap:8px!important;padding:8px!important;border-radius:16px!important}.hall-category-side h3{font-size:13px!important;margin:0!important;white-space:nowrap!important}.hall-category-tabs{display:flex!important;flex-wrap:nowrap!important;gap:8px!important;overflow-x:hidden!important;max-height:none!important}.hall-category-tabs button{white-space:nowrap!important;min-width:max-content!important;font-size:12px!important;line-height:1!important;padding:9px 12px!important;border-radius:13px!important}.hall-food-list{padding:8px!important}.hall-menu-item-card{grid-template-columns:minmax(112px,1.25fr) 78px 60px minmax(54px,.72fr)!important;gap:5px!important;align-items:center!important;background:#f8fafc!important}.hall-item-name{min-width:0!important;text-align:right!important;align-self:stretch!important;display:flex!important;flex-direction:column!important;justify-content:center!important;padding:6px 8px!important;border-radius:14px!important;background:#eef2ff!important;border:1px solid #c7d2fe!important;color:#111827!important}.hall-item-name span{display:block!important;font-size:10px!important;color:#4f46e5!important;font-weight:950!important;line-height:1.1!important;white-space:nowrap!important}.hall-item-name h3{display:block!important;visibility:visible!important;opacity:1!important;color:#111827!important;font-size:15px!important;line-height:1.25!important;margin:2px 0 0!important;font-weight:950!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.hall-item-qty span{font-size:11px!important;white-space:nowrap!important}.hall-item-price{font-size:11px!important;color:#4f46e5!important}.hall-item-note{font-size:11px!important}.hall-item-note textarea{height:34px!important;min-height:34px!important;max-height:34px!important}

/* Keep the larger table decal from covering the cashier title. */
.hall-order-category-panel{padding-top:104px!important}


/* User reference image: vertical food-category rail, not horizontal tabs. */
.hall-order-builder{display:grid!important;grid-template-columns:148px minmax(0,1fr)!important;gap:10px!important;align-items:stretch!important}.hall-category-side{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;min-height:390px!important;padding:18px 10px!important;border-radius:0 0 26px 0!important;background:#bfc5c8!important;border:1px solid rgba(15,23,42,.16)!important;box-shadow:inset 0 -1px 0 rgba(255,255,255,.25)!important;overflow:hidden!important}.hall-category-side h3{font-size:13px!important;line-height:1!important;margin:0 0 4px!important;color:white!important;text-align:center!important;white-space:nowrap!important;text-shadow:0 1px 2px rgba(15,23,42,.18)!important}.hall-category-tabs{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:12px!important;width:100%!important;overflow:visible!important;max-height:none!important}.hall-category-tabs button{display:block!important;width:112px!important;max-width:112px!important;min-width:112px!important;white-space:nowrap!important;text-align:center!important;font-size:12px!important;line-height:1!important;padding:11px 8px!important;border-radius:13px!important;box-shadow:0 10px 18px rgba(15,23,42,.12)!important}.hall-category-tabs button.active{background:#14b8a6!important;color:white!important;border-color:#0f766e!important}.hall-food-list{min-width:0!important;padding:8px!important;overflow-x:hidden!important}.hall-menu-scroll{min-width:0!important;overflow-x:hidden!important}.hall-menu-item-card{grid-template-columns:minmax(88px,1.35fr) 72px 54px minmax(40px,.75fr)!important;gap:4px!important;padding:7px 6px!important}.hall-item-name{padding:6px!important}.hall-item-name h3{font-size:14px!important}.hall-item-price{font-size:10px!important}.hall-item-note textarea{font-size:10px!important;padding:5px!important}.hall-qty-stepper{grid-template-columns:23px minmax(24px,1fr) 23px!important}.hall-qty-stepper button{width:23px!important;min-width:23px!important}.hall-order-category-panel{padding-top:104px!important}


/* Fit product rows beside the vertical category rail without any horizontal overflow. */
.hall-menu-item-card{grid-template-columns:minmax(80px,1.2fr) 60px 45px minmax(30px,.6fr)!important;gap:3px!important;padding:6px 5px!important}.hall-item-name h3{font-size:13px!important}.hall-item-name span{font-size:9px!important}.hall-qty-stepper{grid-template-columns:19px minmax(20px,1fr) 19px!important;gap:2px!important}.hall-qty-stepper button{width:19px!important;min-width:19px!important;height:28px!important}.hall-qty-stepper input{height:28px!important;min-height:28px!important;font-size:10px!important}.hall-item-price{font-size:9px!important}.hall-item-note textarea{height:30px!important;min-height:30px!important;max-height:30px!important;font-size:9px!important;padding:4px!important}

/* remove final 3px card overflow in half-width cashier */
.hall-menu-item-card{grid-template-columns:minmax(80px,1.2fr) 58px 43px minmax(28px,.55fr)!important;gap:2px!important}


/* User arrow correction: remove the redundant item-name label; give less width to name and more readable size to qty/price/note. */
.hall-menu-item-card{grid-template-columns:minmax(54px,.72fr) 70px 56px minmax(44px,.62fr)!important;gap:2px!important;padding:5px 4px!important;align-items:center!important}.hall-item-name{padding:5px 6px!important}.hall-item-name span{display:none!important}.hall-item-name h3{font-size:13px!important;line-height:1.25!important;margin:0!important;white-space:nowrap!important}.hall-item-qty>span{font-size:13px!important;line-height:1.1!important;margin-bottom:3px!important}.hall-qty-stepper{grid-template-columns:21px minmax(24px,1fr) 21px!important;gap:2px!important}.hall-qty-stepper button{width:21px!important;min-width:21px!important;height:31px!important;font-size:18px!important;border-radius:10px!important}.hall-qty-stepper input{height:31px!important;min-height:31px!important;font-size:12px!important}.hall-item-price{font-size:11px!important;line-height:1.35!important;font-weight:950!important}.hall-item-note{font-size:12px!important;line-height:1.15!important}.hall-item-note textarea{height:36px!important;min-height:36px!important;max-height:36px!important;font-size:11px!important;padding:5px 6px!important}

/* shave one pixel overflow while keeping qty/price/note enlarged */
.hall-menu-item-card{grid-template-columns:minmax(54px,.72fr) 70px 55px minmax(43px,.62fr)!important}


/* Rebalance row like the user's arrow: category rail stays vertical, product controls get real width. */
.hall-order-builder{grid-template-columns:112px minmax(0,1fr)!important}.hall-category-side{min-height:390px!important;padding:16px 8px!important}.hall-category-tabs button{width:92px!important;max-width:92px!important;min-width:92px!important;font-size:11.5px!important}.hall-menu-item-card{grid-template-columns:minmax(76px,.88fr) 78px 64px minmax(56px,.7fr)!important;gap:3px!important;padding:6px 5px!important}.hall-item-name h3{font-size:13px!important}.hall-item-qty>span{font-size:13px!important}.hall-qty-stepper{grid-template-columns:22px minmax(28px,1fr) 22px!important;gap:3px!important}.hall-qty-stepper button{width:22px!important;min-width:22px!important;height:33px!important;font-size:19px!important}.hall-qty-stepper input{height:33px!important;min-height:33px!important;font-size:13px!important}.hall-item-price{font-size:12px!important;line-height:1.35!important}.hall-item-note{font-size:12.5px!important}.hall-item-note textarea{height:38px!important;min-height:38px!important;max-height:38px!important;font-size:11.5px!important;padding:5px 6px!important}


/* Final fitted proportions: name smaller than before; qty/price/note larger, zero card overflow. */
.hall-menu-item-card{grid-template-columns:minmax(60px,.78fr) 74px 58px minmax(48px,.62fr)!important;gap:2px!important;padding:5px 4px!important}.hall-qty-stepper{grid-template-columns:21px minmax(26px,1fr) 21px!important;gap:2px!important}.hall-qty-stepper button{width:21px!important;min-width:21px!important;height:32px!important;font-size:18px!important}.hall-qty-stepper input{height:32px!important;min-height:32px!important;font-size:12.5px!important}.hall-item-price{font-size:12px!important}.hall-item-note textarea{height:36px!important;min-height:36px!important;max-height:36px!important;font-size:11.5px!important}


/* Red-line item allocation: keep item column only up to the marked boundary; enlarge qty and price without changing cashier/category layout. */
.hall-menu-item-card{grid-template-columns:68px 78px 62px minmax(46px,1fr)!important;gap:2px!important;padding:5px 4px!important}.hall-item-name{padding:5px!important}.hall-item-name h3{font-size:13px!important;line-height:1.25!important}.hall-item-qty>span{font-size:14px!important;font-weight:950!important}.hall-qty-stepper{grid-template-columns:22px minmax(28px,1fr) 22px!important;gap:3px!important}.hall-qty-stepper button{width:22px!important;min-width:22px!important;height:34px!important;font-size:20px!important}.hall-qty-stepper input{height:34px!important;min-height:34px!important;font-size:14px!important;font-weight:950!important}.hall-item-price{font-size:13.5px!important;font-weight:950!important;line-height:1.28!important}.hall-item-note{font-size:12.5px!important}.hall-item-note textarea{height:38px!important;min-height:38px!important;max-height:38px!important;font-size:11.5px!important}


/* Micro-adjust per red-line screenshot: item stays bounded; only qty and price get slightly bigger with breathing room between them. */
.hall-menu-item-card{grid-template-columns:64px 82px 66px minmax(45px,1fr)!important;gap:3px!important;padding:5px 4px!important}.hall-item-name{padding:5px!important}.hall-item-qty{padding-inline:1px!important}.hall-item-price{padding-inline:3px!important;font-size:14.5px!important;font-weight:950!important;line-height:1.25!important}.hall-item-qty>span{font-size:15px!important;font-weight:950!important}.hall-qty-stepper{grid-template-columns:23px minmax(28px,1fr) 23px!important;gap:3px!important}.hall-qty-stepper button{width:23px!important;min-width:23px!important;height:35px!important;font-size:21px!important}.hall-qty-stepper input{height:35px!important;min-height:35px!important;font-size:15px!important;font-weight:950!important}.hall-item-note textarea{height:38px!important;min-height:38px!important;max-height:38px!important}


/* Fix 1px overflow and preserve note size: take space from item column only. */
.hall-menu-item-card{grid-template-columns:58px 82px 66px minmax(51px,1fr)!important;gap:3px!important;padding:5px 4px!important}.hall-item-name{padding:5px 4px!important}.hall-item-price{font-size:14.5px!important}.hall-item-qty>span{font-size:15px!important}.hall-qty-stepper input{font-size:15px!important}.hall-item-note textarea{height:38px!important;min-height:38px!important;max-height:38px!important}

/* Remove final 1px overflow by taking it only from item column. */
.hall-menu-item-card{grid-template-columns:57px 82px 66px minmax(51px,1fr)!important}


/* User correction: item column is doubled; description is halved; remaining width is split between qty and price with a sensible gap. */
.hall-menu-item-card{grid-template-columns:114px 62px 54px 26px!important;gap:3px!important;padding:5px 4px!important}.hall-item-name{padding:5px 6px!important}.hall-item-name h3{font-size:13px!important;white-space:nowrap!important}.hall-item-qty{padding-inline:1px!important}.hall-qty-stepper{grid-template-columns:18px minmax(22px,1fr) 18px!important;gap:2px!important}.hall-qty-stepper button{width:18px!important;min-width:18px!important;height:34px!important;font-size:18px!important}.hall-qty-stepper input{height:34px!important;min-height:34px!important;font-size:14px!important;font-weight:950!important}.hall-item-price{font-size:13.5px!important;font-weight:950!important;line-height:1.25!important;padding-inline:2px!important}.hall-item-note textarea{height:38px!important;min-height:38px!important;max-height:38px!important;padding:5px 4px!important}


/* Keep exact requested columns; eliminate internal overflow from the tiny note column and qty control only. */
.hall-item-qty,.hall-item-price,.hall-item-note,.hall-qty-stepper,.hall-qty-stepper input,.hall-item-note textarea{box-sizing:border-box!important;min-width:0!important;max-width:100%!important;overflow:hidden!important}.hall-qty-stepper{grid-template-columns:17px minmax(20px,1fr) 17px!important;gap:2px!important}.hall-qty-stepper button{width:17px!important;min-width:17px!important}.hall-item-note{font-size:0!important}.hall-item-note textarea{width:100%!important;font-size:11.5px!important;padding:4px 3px!important}


/* Match the user's reference screenshot: category rail on the right, a wider product list on the left, large note/description block, item name bounded on the far right, qty/price in the middle. */
.hall-food-list{grid-template-columns:minmax(0,1fr) 102px!important;gap:8px!important;padding:8px!important}.hall-category-side{width:102px!important;min-width:102px!important;max-width:102px!important}.hall-menu-scroll{padding:6px!important;width:100%!important;max-width:none!important}.hall-menu-item-card{width:100%!important;grid-template-columns:96px 62px 62px minmax(105px,1fr)!important;gap:4px!important;padding:6px!important;box-sizing:border-box!important}.hall-item-name{padding:7px 8px!important}.hall-item-name h3{font-size:13.5px!important;white-space:nowrap!important}.hall-item-qty{padding-inline:1px!important}.hall-qty-stepper{grid-template-columns:18px minmax(22px,1fr) 18px!important;gap:2px!important}.hall-qty-stepper button{width:18px!important;min-width:18px!important;height:34px!important;font-size:18px!important}.hall-qty-stepper input{height:34px!important;min-height:34px!important;font-size:14px!important}.hall-item-price{font-size:13.5px!important;font-weight:950!important;line-height:1.3!important}.hall-item-note{font-size:12.5px!important}.hall-item-note textarea{width:100%!important;height:42px!important;min-height:42px!important;max-height:42px!important;font-size:11.5px!important;padding:6px 8px!important;box-sizing:border-box!important}


/* Fit the reference-like row inside the actual half-width cashier: note remains visibly large, item bounded, qty/price centered, zero overflow. */
.hall-menu-item-card{grid-template-columns:82px 54px 54px minmax(65px,1fr)!important;gap:4px!important;padding:6px!important}.hall-item-name h3{font-size:13px!important}.hall-qty-stepper{grid-template-columns:16px minmax(20px,1fr) 16px!important;gap:2px!important}.hall-qty-stepper button{width:16px!important;min-width:16px!important;height:32px!important;font-size:17px!important}.hall-qty-stepper input{height:32px!important;min-height:32px!important;font-size:13.5px!important}.hall-item-price{font-size:13px!important}.hall-item-note textarea{height:42px!important;min-height:42px!important;max-height:42px!important}


/* Exact fit after accounting for card padding/gaps: keep screenshot-like proportions with zero overflow. */
.hall-menu-item-card{grid-template-columns:78px 50px 50px minmax(73px,1fr)!important;gap:2px!important;padding:4px!important}.hall-item-name{padding:6px!important}.hall-item-qty,.hall-item-price,.hall-item-note{padding-inline:1px!important}.hall-qty-stepper{grid-template-columns:15px minmax(18px,1fr) 15px!important;gap:2px!important}.hall-qty-stepper button{width:15px!important;min-width:15px!important;height:31px!important}.hall-qty-stepper input{height:31px!important;min-height:31px!important;font-size:13px!important}.hall-item-price{font-size:12.8px!important}.hall-category-side{overflow:hidden!important}


/* Match reference screenshot exactly within current half-width cashier:
   right: item name box; middle: qty then price with breathing room; left: wide description box. */
.hall-menu-scroll{padding:0!important;width:100%!important;max-width:none!important;overflow-x:hidden!important}.hall-menu-item-card{width:100%!important;grid-template-columns:70px 50px 50px minmax(95px,1fr)!important;gap:2px!important;padding:4px!important;box-sizing:border-box!important}.hall-item-name{padding:6px!important}.hall-item-name h3{font-size:13px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.hall-item-qty,.hall-item-price,.hall-item-note{box-sizing:border-box!important;min-width:0!important;max-width:100%!important;overflow:hidden!important}.hall-qty-stepper{grid-template-columns:14px minmax(18px,1fr) 14px!important;gap:1px!important;box-sizing:border-box!important;overflow:hidden!important}.hall-qty-stepper button{width:14px!important;min-width:14px!important;height:31px!important;font-size:16px!important;padding:0!important}.hall-qty-stepper input{height:31px!important;min-height:31px!important;font-size:13px!important;padding:0!important}.hall-item-price{font-size:13px!important;font-weight:950!important;padding-inline:2px!important}.hall-item-note textarea{width:100%!important;height:42px!important;min-height:42px!important;max-height:42px!important;font-size:11.5px!important;padding:6px 8px!important;box-sizing:border-box!important;overflow:hidden!important}

/* Remove final 2px internal card overflow while preserving screenshot proportions. */
.hall-menu-item-card{grid-template-columns:70px 50px 50px minmax(93px,1fr)!important}


/* Match the red-box reference, not the rejected yellow output:
   - keep the vertical category rail, but make it compact so the row has enough width
   - row RTL order: item name (right, larger) | qty | price | note (left, wide but not dominant)
   - keep clear gaps and zero horizontal overflow. */
.hall-order-builder{grid-template-columns:92px minmax(0,1fr)!important;gap:8px!important}.hall-category-side{width:92px!important;min-width:92px!important;max-width:92px!important;padding:14px 6px!important;overflow:hidden!important}.hall-category-tabs button{width:80px!important;min-width:80px!important;max-width:80px!important;font-size:10.8px!important;padding:10px 4px!important}.hall-food-list{padding:4px!important}.hall-menu-scroll{padding:0!important;scrollbar-gutter:auto!important;width:100%!important;max-width:100%!important}.hall-menu-item-card{width:100%!important;grid-template-columns:86px 54px 54px minmax(104px,1fr)!important;gap:5px!important;padding:4px!important;box-sizing:border-box!important;align-items:center!important;overflow:hidden!important}.hall-item-name{padding:7px 8px!important;border-radius:16px!important}.hall-item-name h3{font-size:13.5px!important;font-weight:950!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;text-align:right!important}.hall-item-qty{padding-inline:1px!important}.hall-item-qty>span{font-size:14px!important;font-weight:950!important;line-height:1!important}.hall-qty-stepper{grid-template-columns:15px minmax(18px,1fr) 15px!important;gap:2px!important;overflow:hidden!important}.hall-qty-stepper button{width:15px!important;min-width:15px!important;height:31px!important;font-size:17px!important;padding:0!important}.hall-qty-stepper input{height:31px!important;min-height:31px!important;font-size:13.5px!important;padding:0!important}.hall-item-price{font-size:13.5px!important;font-weight:950!important;line-height:1.25!important;padding-inline:2px!important;min-width:0!important;overflow:hidden!important}.hall-item-note{padding-inline:1px!important;min-width:0!important;overflow:hidden!important}.hall-item-note textarea{width:100%!important;height:42px!important;min-height:42px!important;max-height:42px!important;font-size:11.5px!important;padding:6px 8px!important;box-sizing:border-box!important;overflow:hidden!important}


/* Remove the last category-rail internal overflow without changing the product-row proportions. */
.hall-category-side h3{font-size:11px!important;max-width:78px!important;overflow:hidden!important;text-overflow:ellipsis!important}.hall-category-tabs button{width:76px!important;min-width:76px!important;max-width:76px!important;font-size:10.4px!important;padding-inline:3px!important}


/* Hall cashier color matches unpaid/pending cheque warning box. */
.hall-order-category-panel{background:linear-gradient(135deg,#fff7ed,#ffffff)!important;border-color:#fdba74!important;box-shadow:0 14px 34px rgba(251,146,60,.14)!important}.hall-order-category-panel>.section-title,.hall-order-category-panel .hall-food-list,.hall-order-category-panel .hall-category-side{border-color:#fdba74!important}.hall-order-category-panel .hall-food-list{background:rgba(255,247,237,.72)!important}.hall-order-category-panel .hall-menu-item-card{border-color:#fed7aa!important;background:linear-gradient(135deg,#fff7ed,#ffffff)!important}.hall-order-category-panel .hall-table-trigger{border-color:#fdba74!important;background:linear-gradient(135deg,#fff7ed,#ffedd5)!important;box-shadow:0 14px 30px rgba(251,146,60,.18)!important}.hall-order-category-panel .hall-table-trigger .hall-table-icon{background:#fb923c!important}.hall-order-category-panel .hall-category-tabs button.active{background:linear-gradient(135deg,#fb923c,#f97316)!important;border-color:#fdba74!important}.hall-order-category-panel .hall-item-price{color:#92400e!important}


/* Center the whole hall cashier box horizontally without changing its size or internal behavior. */
.pos-hall-workspace{grid-template-columns:minmax(0,1fr) minmax(0,50%) minmax(0,1fr)!important;gap:0!important;justify-content:stretch!important}.hall-order-category-panel,.pos-hall-workspace>.hall-payment-panel{grid-column:2!important;width:100%!important;max-width:100%!important;justify-self:stretch!important}


/* Shrink only the hall item note field from its right side: keep the note block anchored to the left edge and do not change the row grid, cashier size, item, qty, or price. */
.hall-menu-item-card .hall-item-note{width:102px!important;max-width:102px!important;justify-self:start!important;box-sizing:border-box!important}.hall-menu-item-card .hall-item-note textarea{width:100%!important;box-sizing:border-box!important}


/* Correct the anchor: keep the note field's left edge fixed, shrink its right edge. */
.hall-menu-item-card .hall-item-note{justify-self:end!important}


/* Make the visible note textarea itself 102px wide; previous change only made the wrapper 102px. */
.hall-menu-item-card .hall-item-note{width:104px!important;max-width:104px!important;justify-self:end!important;box-sizing:border-box!important}.hall-menu-item-card .hall-item-note textarea{width:102px!important;max-width:102px!important;box-sizing:border-box!important}


/* Use the wasted cashier row space: make the product list wider, keep the category rail usable but slimmer, and distribute row width across item/qty/price/note instead of tiny glued columns. */
.hall-food-list{grid-template-columns:minmax(0,1fr) 76px!important;gap:6px!important;padding:4px!important}.hall-category-side{width:76px!important;min-width:76px!important;max-width:76px!important;padding:12px 5px!important}.hall-category-tab{padding:9px 6px!important;font-size:10.8px!important;white-space:nowrap!important}.hall-menu-scroll{width:100%!important;max-width:100%!important}.hall-menu-item-card{width:100%!important;grid-template-columns:124px 68px 70px 96px!important;gap:8px!important;padding:6px!important;box-sizing:border-box!important;align-items:center!important}.hall-menu-item-card .hall-item-name{width:auto!important;min-width:0!important}.hall-menu-item-card .hall-item-qty{width:auto!important;min-width:0!important}.hall-menu-item-card .hall-item-price{width:auto!important;min-width:0!important;font-size:15px!important}.hall-menu-item-card .hall-item-note{width:124px!important;max-width:124px!important;justify-self:start!important;padding-inline:1px!important}.hall-menu-item-card .hall-item-note textarea{width:122px!important;max-width:122px!important;min-width:0!important}


/* Fit the widened controls exactly inside the current product-row width: larger than the tiny glued version, but no internal overflow. */
.hall-menu-item-card{grid-template-columns:94px 58px 60px 98px!important;gap:4px!important;padding:2px!important;overflow:hidden!important}.hall-menu-item-card .hall-item-name{width:auto!important}.hall-menu-item-card .hall-item-qty{width:auto!important}.hall-menu-item-card .hall-item-price{width:auto!important;font-size:14.5px!important}.hall-menu-item-card .hall-item-note{width:98px!important;max-width:98px!important;justify-self:start!important}.hall-menu-item-card .hall-item-note textarea{width:96px!important;max-width:96px!important}


/* Final usable-width fix: keep the cashier box the same size, but reduce wasted inner padding/rail width so product rows can breathe. */
#hallSaleForm{padding-left:12px!important;padding-right:12px!important}.hall-category-side{width:68px!important;min-width:68px!important;max-width:68px!important;padding:10px 4px!important}.hall-category-tab{font-size:10.2px!important;padding:8px 4px!important}.hall-menu-item-card{grid-template-columns:96px 62px 64px 116px!important;gap:6px!important;padding:4px!important;overflow:hidden!important}.hall-menu-item-card .hall-item-name{width:auto!important}.hall-menu-item-card .hall-item-qty{width:auto!important}.hall-menu-item-card .hall-item-price{width:auto!important;font-size:14.8px!important}.hall-menu-item-card .hall-item-note{width:116px!important;max-width:116px!important;justify-self:start!important}.hall-menu-item-card .hall-item-note textarea{width:114px!important;max-width:114px!important}


/* Exact fit after widening the usable product list: no glued tiny controls, no row overflow. */
.hall-menu-item-card{grid-template-columns:92px 60px 62px 108px!important;gap:4px!important;padding:4px!important;overflow:hidden!important}.hall-menu-item-card .hall-item-note{width:108px!important;max-width:108px!important;justify-self:start!important}.hall-menu-item-card .hall-item-note textarea{width:106px!important;max-width:106px!important}.hall-category-side{overflow:hidden!important}.hall-category-tab{overflow:hidden!important;text-overflow:ellipsis!important}


/* Fix wasted horizontal space on wider cashier rows: use responsive/fractional columns, not fixed px columns that stay glued to the right. */
.hall-menu-item-card{grid-template-columns:minmax(96px,1.05fr) minmax(60px,.55fr) minmax(72px,.7fr) minmax(128px,1.55fr)!important;gap:8px!important;padding:6px!important;align-items:center!important;overflow:hidden!important}.hall-menu-item-card .hall-item-name,.hall-menu-item-card .hall-item-qty,.hall-menu-item-card .hall-item-price,.hall-menu-item-card .hall-item-note{width:auto!important;max-width:none!important;min-width:0!important;justify-self:stretch!important}.hall-menu-item-card .hall-item-note{padding-inline:1px!important}.hall-menu-item-card .hall-item-note textarea{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}.hall-menu-item-card .hall-item-price{font-size:15px!important;white-space:nowrap!important;text-align:center!important}.hall-menu-item-card .hall-item-qty{justify-items:center!important}.hall-menu-item-card .hall-item-name h3{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}


/* Correct fluid row fit: flexible on wide screens, exact no-overflow on narrow cashier width. */
.hall-menu-item-card{grid-template-columns:minmax(82px,1fr) 56px 82px minmax(86px,1.4fr)!important;gap:4px!important;padding:4px!important;overflow:hidden!important;align-items:center!important}.hall-menu-item-card .hall-item-name,.hall-menu-item-card .hall-item-note{width:auto!important;max-width:none!important;min-width:0!important;justify-self:stretch!important}.hall-menu-item-card .hall-item-qty{width:56px!important;max-width:56px!important;min-width:0!important}.hall-menu-item-card .hall-item-price{width:82px!important;max-width:82px!important;min-width:0!important;font-size:13.8px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:clip!important;text-align:center!important}.hall-menu-item-card .hall-item-note textarea{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}


/* Tiny item-column reduction only: give the freed 6px to qty/price; keep note column unchanged. */
.hall-menu-item-card{grid-template-columns:176px 109px 85px minmax(101px,1fr)!important}.hall-menu-item-card .hall-item-qty{width:79px!important;max-width:79px!important}.hall-menu-item-card .hall-item-price{width:85px!important;max-width:85px!important}


/* Lock note visuals to the pre-change size; only item/qty/price change. */
.hall-menu-item-card .hall-item-note{width:351px!important;max-width:351px!important;justify-self:end!important}.hall-menu-item-card .hall-item-note textarea{width:349px!important;max-width:349px!important}

/* Attach category rail to cashier box without changing cashier item layout. */
.hall-order-builder{grid-template-columns:100px minmax(0,1fr)!important;gap:0!important}.hall-category-side{width:100px!important;min-width:100px!important;max-width:100px!important}

/* Match category rail radius and readable category buttons. */
.hall-category-side{border-radius:24px!important;padding-left:0!important;padding-right:-2!important}.hall-category-tabs{gap:5px!important;width:100%!important;align-items:stretch!important}.hall-category-tabs button{width:100%!important;min-width:100%!important;max-width:100%!important;min-height:48px!important;font-size:15px!important;font-weight:950!important;line-height:1.15!important;padding:0 2px!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;white-space:normal!important}.hall-category-side h3{display:none!important}

/* Selected table title inside cashier food list. */
.hall-food-list>h3{display:none!important}.hall-sale-table-title{display:flex!important;align-items:center!important;justify-content:center!important;width:max-content!important;min-width:180px!important;max-width:70%!important;margin:0 auto 12px!important;padding:7px 18px!important;border:0px solid #e11d48!important;border-radius:0!important;color:#e11d48!important;background:#fff7ed!important;font-size:20px!important;font-weight:950!important;line-height:1.2!important;text-align:center!important}
.hall-order-actions{display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;flex-wrap:wrap!important}.hall-order-actions>button{width:auto!important;min-width:180px!important}.hall-release-draft-table-btn{background:#f59e0b!important;background-image:linear-gradient(180deg,#fde68a 0%,#f59e0b 52%,#b45309 100%)!important;border-color:#fbbf24!important;color:#451a03!important;-webkit-text-fill-color:#451a03!important;font-weight:950!important;box-shadow:0 10px 18px rgba(245,158,11,.22)!important}

/* Hall sale receipt print preview. */
#hallReceiptModalRoot .hall-receipt-sheet{max-width:560px!important}#hallReceiptModalRoot .hall-receipt-total{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important}#hallReceiptModalRoot .hall-receipt-total strong{font-size:22px!important;color:#92400e!important}
.receipt-choice-overlay{position:fixed;inset:0;z-index:360;display:grid;place-items:center;background:rgba(15,23,42,.34);padding:24px}.receipt-choice-modal{width:min(340px,92vw);direction:rtl;background:var(--surface,#fff);color:var(--text,#102033);border:1px solid var(--border,#d7e2ea);border-radius:20px;box-shadow:0 22px 60px rgba(15,23,42,.26);padding:18px;text-align:center;display:grid;gap:12px}.receipt-choice-modal h2{margin:0;font-size:20px}.receipt-choice-modal p{margin:0;color:var(--muted,#64748b);font-weight:800}.receipt-choice-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.receipt-choice-actions button{min-height:46px;opacity:1!important;visibility:visible!important}.receipt-choice-actions .primary{background:#0f766e!important;color:#fff!important;border:1px solid #0d9488!important;box-shadow:0 10px 24px rgba(15,118,110,.24)!important}.receipt-choice-actions .secondary{background:#f8fafc!important;color:#102033!important;border:1px solid #d7e2ea!important}

/* Cross-device/touch stability: keep the same visual proportions on laptop/tablet instead of hard-coded desktop pixels breaking the POS. */
:root{--restaurant-sidebar-width:clamp(210px,20vw,290px);--restaurant-content-pad:clamp(14px,1.65vw,30px);--restaurant-panel-pad:clamp(14px,1.4vw,24px)}
.app-shell{grid-template-columns:var(--restaurant-sidebar-width) minmax(0,1fr)!important}.content{padding-inline:var(--restaurant-content-pad)!important}.panel{padding:var(--restaurant-panel-pad)!important}.sidebar{padding-inline:clamp(12px,1.5vw,22px)!important}.nav{font-size:clamp(12px,1.05vw,15px)!important;padding:clamp(9px,1vw,13px) clamp(8px,1vw,14px)!important}
.pos-workspace,.pos-hall-shell,.pos-hall-workspace,.hall-order-category-panel,.hall-order-builder,.hall-food-list,.hall-menu-scroll{min-width:0!important;max-width:100%!important;overflow-x:hidden!important}.pos-hall-workspace{grid-template-columns:minmax(0,1fr) minmax(0,50%) minmax(0,1fr)!important}.hall-order-category-panel,.pos-hall-workspace>.hall-payment-panel{grid-column:2!important}.hall-order-builder{grid-template-columns:clamp(76px,8vw,100px) minmax(0,1fr)!important}.hall-category-side{width:auto!important;min-width:0!important;max-width:none!important}.hall-menu-item-card{grid-template-columns:minmax(78px,1fr) minmax(58px,.58fr) minmax(66px,.66fr) minmax(92px,1.35fr)!important;gap:clamp(3px,.5vw,8px)!important;padding:clamp(4px,.55vw,6px)!important}.hall-menu-item-card .hall-item-name,.hall-menu-item-card .hall-item-qty,.hall-menu-item-card .hall-item-price,.hall-menu-item-card .hall-item-note{width:auto!important;max-width:none!important;min-width:0!important;justify-self:stretch!important}.hall-menu-item-card .hall-item-note textarea{width:100%!important;max-width:100%!important;min-width:0!important}.hall-menu-item-card .hall-item-price{white-space:normal!important;overflow-wrap:anywhere!important}
@media(max-width:1180px),(pointer:coarse){.app-shell{grid-template-columns:clamp(172px,22vw,230px) minmax(0,1fr)!important}.content{padding-inline:12px!important}.sidebar{padding:16px 10px!important}.brand{gap:8px!important}.brand-mark{width:40px!important;height:40px!important;border-radius:14px!important;font-size:21px!important}.brand strong{font-size:16px!important}.brand span,.theme-chip small,.ai-card{font-size:10px!important}.theme-picker{padding:10px!important}.theme-picker>div{grid-template-columns:1fr!important}.pos-hall-workspace{grid-template-columns:minmax(0,1fr) minmax(0,50%) minmax(0,1fr)!important}.hall-order-builder{grid-template-columns:clamp(62px,8.5vw,80px) minmax(0,1fr)!important}.hall-category-side{padding:10px 4px!important}.hall-category-tabs button{min-height:42px!important;font-size:clamp(10px,1.1vw,12px)!important;padding-inline:2px!important}.hall-menu-item-card{grid-template-columns:minmax(62px,1fr) minmax(50px,.62fr) minmax(58px,.72fr) minmax(68px,1.18fr)!important;gap:3px!important;padding:4px!important}.hall-item-name h3{font-size:clamp(11px,1.15vw,13px)!important}.hall-item-price{font-size:clamp(11px,1.15vw,13px)!important}.hall-qty-stepper{grid-template-columns:15px minmax(18px,1fr) 15px!important;gap:1px!important}.hall-qty-stepper button{width:15px!important;min-width:15px!important;height:30px!important;font-size:16px!important}.hall-qty-stepper input{height:30px!important;min-height:30px!important;font-size:12px!important}.hall-item-note textarea{height:38px!important;min-height:38px!important;max-height:38px!important;font-size:10.5px!important;padding:5px!important}}
@media(max-width:820px){.app-shell{grid-template-columns:1fr!important}.sidebar{min-height:auto!important}.theme-picker>div{grid-template-columns:repeat(4,1fr)!important}.pos-hall-workspace{grid-template-columns:1fr!important}.hall-order-category-panel,.pos-hall-workspace>.hall-payment-panel{grid-column:1!important}.hall-order-category-panel .section-title{padding-inline-start:0!important}.hall-menu-item-card{grid-template-columns:minmax(80px,1fr) 58px 70px minmax(92px,1fr)!important}}

/* Touch/tablet POS correction: table selector must not sit on the first product row, and its popup must stay half-width/inside the cashier context. */
.hall-order-category-panel{padding-top:var(--restaurant-panel-pad)!important}.hall-corner-picker{position:static!important;display:flex!important;justify-content:flex-start!important;margin:0 0 12px auto!important;z-index:4!important}.hall-table-trigger{width:min(190px,100%)!important;min-height:58px!important}.hall-table-picker-backdrop{display:flex!important;align-items:flex-start!important;justify-content:center!important;padding-top:clamp(90px,15vh,150px)!important;overflow:auto!important}.hall-table-picker-popup{width:min(520px,46vw)!important;max-width:calc(100vw - 32px)!important;max-height:min(72vh,680px)!important;overflow:auto!important}.hall-table-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.hall-table-picker-grid .hall-table-card{min-height:86px!important}
@media(max-width:1100px),(pointer:coarse){.hall-table-picker-popup{width:min(520px,48vw)!important}.hall-table-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.hall-table-trigger{width:178px!important}}
@media(max-width:820px){.hall-table-picker-popup{width:min(520px,92vw)!important}.hall-table-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* Cashier width expansion requested from screenshot: widen the whole صندوق box to both red-arrow sides, keep the blue category rail fixed, and give the yellow product area the extra width. Product columns grow in the same current ratio (78:58:66:92), so item name, +/- quantity, price, and notes all expand proportionally. */
.pos-hall-workspace{grid-template-columns:minmax(0,1fr) minmax(0,60%) minmax(0,1fr)!important}.hall-order-category-panel,.pos-hall-workspace>.hall-payment-panel{grid-column:2!important}.hall-order-builder{grid-template-columns:100px minmax(0,1fr)!important;gap:0!important}.hall-category-side{width:100px!important;min-width:100px!important;max-width:100px!important}.hall-menu-item-card{grid-template-columns:minmax(78px,78fr) minmax(58px,58fr) minmax(66px,66fr) minmax(92px,92fr)!important;gap:clamp(4px,.55vw,8px)!important}.hall-menu-item-card .hall-item-name,.hall-menu-item-card .hall-item-qty,.hall-menu-item-card .hall-item-price,.hall-menu-item-card .hall-item-note{width:auto!important;max-width:none!important;min-width:0!important;justify-self:stretch!important}.hall-menu-item-card .hall-item-note textarea{width:100%!important;max-width:100%!important;min-width:0!important}
@media(max-width:1180px),(pointer:coarse){.pos-hall-workspace{grid-template-columns:minmax(0,1fr) minmax(0,60%) minmax(0,1fr)!important}.hall-order-builder{grid-template-columns:100px minmax(0,1fr)!important}.hall-category-side{width:100px!important;min-width:100px!important;max-width:100px!important}.hall-menu-item-card{grid-template-columns:minmax(78px,78fr) minmax(58px,58fr) minmax(66px,66fr) minmax(92px,92fr)!important}}
@media(max-width:820px){.pos-hall-workspace{grid-template-columns:1fr!important}.hall-order-category-panel,.pos-hall-workspace>.hall-payment-panel{grid-column:1!important}.hall-order-builder{grid-template-columns:100px minmax(0,1fr)!important}.hall-menu-item-card{grid-template-columns:minmax(78px,78fr) minmax(58px,58fr) minmax(66px,66fr) minmax(92px,92fr)!important}}

/* Align cashier side spacing to the red top spacing in the user's marked image: both left and right gaps are the same controlled gap, while the category rail and internal row ratios stay unchanged. */
:root{--cashier-side-red-gap:clamp(5px,14.75vw,5px)}.pos-hall-workspace{margin-inline:0!important;width:100%!important;max-width:100%!important;grid-template-columns:minmax(0,var(--cashier-side-red-gap)) minmax(0,calc(100% - var(--cashier-side-red-gap) - var(--cashier-side-red-gap))) minmax(0,var(--cashier-side-red-gap))!important}.hall-order-category-panel,.pos-hall-workspace>.hall-payment-panel{grid-column:2!important}
@media(max-width:820px){.pos-hall-workspace{grid-template-columns:1fr!important}.hall-order-category-panel,.pos-hall-workspace>.hall-payment-panel{grid-column:1!important}}

/* Move cashier categories from the right vertical rail to a horizontal top bar; keep the cashier box width/gaps and proportional item columns unchanged. */
.hall-order-builder{display:flex!important;flex-direction:column!important;gap:10px!important;align-items:stretch!important;overflow:hidden!important}.hall-category-side{order:0!important;width:100%!important;min-width:0!important;max-width:100%!important;min-height:0!important;height:auto!important;padding:8px!important;border-radius:18px!important}.hall-category-tabs{display:flex!important;flex-direction:row!important;gap:8px!important;width:100%!important;max-height:none!important;overflow-x:auto!important;overflow-y:hidden!important;padding:0 0 2px!important;align-items:center!important}.hall-category-tabs button,.hall-category-tab{width:auto!important;min-width:112px!important;max-width:none!important;min-height:44px!important;white-space:nowrap!important;padding:8px 14px!important}.hall-food-list{order:1!important;width:100%!important;max-width:100%!important}.hall-menu-scroll{width:100%!important;max-width:100%!important}

/* Larger readable cashier typography only: increase text inside صندوق without changing the accepted box width, side gaps, horizontal category bar, or proportional columns. */
#hallSaleForm{font-size:18px!important;font-weight:900!important}.hall-table-trigger b{font-size:18px!important;font-weight:950!important}.hall-table-trigger span,.hall-table-trigger small{font-size:18px!important;font-weight:900!important}.hall-category-tabs button,.hall-category-tab{font-size:18px!important;font-weight:950!important;min-height:50px!important}.hall-menu-item-card{min-height:68px!important;font-size:18px!important;font-weight:900!important}.hall-item-name h3{font-size:18px!important;font-weight:950!important;line-height:1.25!important}#hallSaleForm .hall-item-price{font-size:22px!important;font-weight:950!important;line-height:1.15!important}.hall-qty-stepper{grid-template-columns:26px minmax(36px,1fr) 26px!important;gap:5px!important}.hall-qty-stepper button{width:26px!important;min-width:26px!important;height:40px!important;font-size:26px!important;font-weight:950!important;line-height:1!important}.hall-qty-stepper input{height:40px!important;min-height:40px!important;font-size:22px!important;font-weight:950!important}.hall-item-note textarea{height:54px!important;min-height:54px!important;max-height:54px!important;font-size:16px!important;font-weight:400!important;line-height:20px!important;padding-top:6px!important;padding-bottom:6px!important;overflow-y:auto!important;resize:none!important}.hall-item-note textarea::placeholder{font-size:16px!important;font-weight:400!important;line-height:20px!important}

/* Larger sales channel tabs and simplified table picker label. */
.pos-channel-tabs button{font-size:20px!important;font-weight:950!important;padding:14px 22px!important}.hall-table-trigger{display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important}.hall-table-trigger b{font-size:18px!important;font-weight:950!important;line-height:1.2!important}.hall-table-trigger span,.hall-table-trigger small,.hall-table-trigger .hall-table-icon{display:none!important}

/* Package staff management: edit/delete/password controls for registered staff users. */
.staff-users-panel{grid-column:1/-1!important}.staff-user-list{display:grid;gap:12px;min-width:0;overflow:hidden}.staff-user-edit-form.order-row{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;align-items:stretch!important;justify-content:stretch!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important;padding:14px!important;border-radius:18px!important}.staff-user-edit-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-width:0}.staff-user-edit-grid label{margin:0;min-width:0}.staff-user-edit-grid input,.staff-user-edit-grid select{min-width:0;width:100%;height:48px}.staff-user-status{font-weight:900;color:#475569;white-space:nowrap;justify-self:start}.staff-user-actions{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:8px!important;direction:rtl;min-width:0!important;max-width:100%!important;flex-wrap:wrap!important}.staff-user-actions .secondary{height:42px;padding:8px 14px!important;white-space:nowrap!important}.staff-user-decal{width:42px!important;min-width:42px!important;height:42px!important}.app-shell.theme-midnight .staff-user-status{color:#cbd5e1}.app-shell.theme-midnight .staff-user-edit-form.order-row{background:#111827!important;border-color:rgba(255,255,255,.12)!important}.app-shell.theme-midnight .staff-user-edit-grid input,.app-shell.theme-midnight .staff-user-edit-grid select{background:#fff!important;color:#0f172a!important;-webkit-text-fill-color:#0f172a!important}
@media(max-width:1180px),(pointer:coarse){.staff-user-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.staff-user-edit-grid{grid-template-columns:1fr}.staff-user-actions .secondary{width:100%}.staff-user-decal{width:48px!important;min-width:48px!important}}

/* Calculator reference layout: dark basic calculator without crossed memory/scientific strip */
.calculator-popup.calculator-reference-layout{width:min(360px,94vw)!important;background:linear-gradient(180deg,#171b25 0%,#202632 100%)!important;color:#f8fafc!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:0!important;padding:0 0 18px!important;box-shadow:0 34px 90px rgba(6,18,31,.46)!important;direction:rtl;overflow:hidden;position:relative}.calculator-reference-layout .calculator-close{position:absolute;top:10px;left:10px;z-index:2;width:34px;height:34px;border-radius:10px;background:rgba(255,255,255,.06)!important;color:#cbd5e1!important}.calculator-screen{min-height:166px;background:linear-gradient(180deg,#171b25,#1b202c);padding:28px 24px 20px;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-end;border-bottom:8px solid rgba(9,12,18,.36);box-shadow:inset 0 -16px 30px rgba(0,0,0,.18)}.calculator-screen small{min-height:24px;color:#9ca3af;font-weight:850;font-size:18px;letter-spacing:.5px;direction:ltr;text-align:right;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calculator-reference-layout .calculator-display{display:block;min-height:auto;background:transparent!important;color:#f8fafc!important;text-align:right!important;direction:rtl!important;padding:0!important;font-size:48px!important;line-height:1.2;font-weight:950;overflow:hidden;margin:8px 0 0!important;border-radius:0!important;box-shadow:none!important}.calculator-reference-layout .calculator-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:0!important;padding:16px 20px 0!important;background:#202632!important;direction:ltr!important}.calculator-reference-layout .calculator-grid button{min-height:62px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#f8fafc!important;font-size:31px!important;font-weight:950!important;cursor:pointer;text-shadow:0 2px 8px rgba(0,0,0,.35)}.calculator-reference-layout .calculator-grid button:hover,.calculator-reference-layout .calculator-grid button:focus{background:rgba(255,255,255,.06)!important;outline:0}.calculator-reference-layout .calculator-key-accent{color:#2dd4bf!important;font-size:28px!important}.calculator-reference-layout .calculator-key-percent,.calculator-reference-layout .calculator-key-operator,.calculator-reference-layout .calculator-equals{color:#d17b43!important}.calculator-reference-layout .calculator-key-backspace{font-size:26px!important}.calculator-reference-layout .calculator-equals{background:transparent!important;color:#d17b43!important}.calculator-reference-layout .calculator-key-number{color:#f9fafb!important}.calculator-reference-layout .calculator-clear{grid-column:auto!important}

/* Calculator reference visual correction: key order is left-to-right like the user image, with orange operators and teal CE/backspace. */
.calculator-reference-layout .calculator-grid .calculator-key-accent{color:#2dd4bf!important}.calculator-reference-layout .calculator-grid .calculator-key-percent,.calculator-reference-layout .calculator-grid .calculator-key-operator,.calculator-reference-layout .calculator-grid .calculator-equals{color:#d17b43!important}.calculator-reference-layout .calculator-grid .calculator-key-number{color:#f9fafb!important}
/* User requested a 3D table image beside the انتخاب میز label; keep only that label plus the decorative SVG table. */
.hall-table-trigger{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex-direction:row!important;gap:7px!important;width:auto!important;min-width:168px!important;min-height:58px!important;padding:7px 12px!important;text-align:center!important;white-space:nowrap!important}.hall-table-trigger .hall-table-3d-icon{display:inline-grid!important;place-items:center!important;width:34px!important;height:30px!important;flex:0 0 34px!important}.hall-table-trigger .hall-table-3d-icon svg{display:block!important;width:34px!important;height:30px!important;overflow:visible!important}.hall-table-trigger b{display:inline-block!important;white-space:nowrap!important}.hall-table-trigger span:not(.hall-table-3d-icon),.hall-table-trigger small,.hall-table-trigger .hall-table-icon{display:none!important}
/* Hall table picker popup: no title/badge, close button locked exactly at the popup top-right. */
.hall-table-picker-popup{position:relative!important;max-height:min(78vh,680px)!important;overflow:hidden!important;padding:64px 18px 18px!important}.hall-table-picker-popup>.section-title{display:none!important}.hall-table-picker-close{position:absolute!important;top:22px!important;right:22px!important;left:auto!important;z-index:30!important;margin:0!important;display:grid!important}.hall-table-picker-grid{max-height:calc(min(78vh,680px) - 82px)!important;overflow-y:auto!important;overflow-x:hidden!important;padding-top:4px!important}


/* Hall cashier two-pane picker: right side is clickable item+price buttons; left side is the draft receipt with +/- controls. Keep category tabs above and the order note below unchanged. */
.hall-two-pane-picker{display:grid!important;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr)!important;gap:10px!important;align-items:stretch!important;min-height:330px!important;max-height:430px!important;overflow:hidden!important;padding:6px!important;background:rgba(255,255,255,.42)!important;border:1px solid #fed7aa!important;border-radius:22px!important}
.hall-clickable-items-pane,.hall-ticket-draft-pane{min-width:0!important;max-width:100%!important;overflow-y:auto!important;overflow-x:hidden!important;display:grid!important;align-content:start!important;gap:8px!important;padding:8px!important;border-radius:18px!important;background:rgba(255,247,237,.78)!important;border:1px solid #fed7aa!important}
.hall-clickable-items-pane{direction:rtl!important}.hall-ticket-draft-pane{direction:rtl!important;background:linear-gradient(135deg,#fff,#fff7ed)!important}
.hall-menu-add-button{display:grid!important;grid-template-columns:minmax(0,1fr) max-content!important;gap:8px!important;align-items:center!important;width:100%!important;min-height:62px!important;padding:10px 12px!important;border:1px solid #fdba74!important;border-radius:18px!important;background:linear-gradient(135deg,#fff7ed,#ffffff)!important;color:#7c2d12!important;cursor:pointer!important;text-align:right!important;box-shadow:0 10px 22px rgba(251,146,60,.12)!important}
.hall-menu-add-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 28px rgba(251,146,60,.18)!important}.hall-menu-add-button:disabled{opacity:.58!important;cursor:not-allowed!important}.hall-menu-add-button .hall-item-name{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}.hall-menu-add-button .hall-item-name h3{font-size:18px!important;font-weight:950!important;line-height:1.25!important;margin:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.hall-menu-add-button .hall-item-price{font-size:17px!important;font-weight:950!important;color:#92400e!important;white-space:nowrap!important;overflow:visible!important;width:auto!important;max-width:none!important;text-align:left!important}
.hall-ticket-item-row{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(104px,.55fr)!important;gap:8px!important;align-items:center!important;min-height:62px!important;padding:9px 10px!important;border:1px solid #fdba74!important;border-radius:18px!important;background:linear-gradient(135deg,#ffffff,#fff7ed)!important;box-shadow:0 8px 18px rgba(251,146,60,.10)!important;overflow:hidden!important}
.hall-ticket-item-info{min-width:0!important;display:grid!important;gap:2px!important;text-align:right!important}.hall-ticket-item-info h3{margin:0!important;font-size:17px!important;font-weight:950!important;line-height:1.25!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.hall-ticket-item-info b{font-size:14px!important;color:#92400e!important;white-space:nowrap!important}.hall-ticket-item-qty{margin:0!important;min-width:0!important}.hall-ticket-item-qty .hall-qty-stepper{grid-template-columns:28px minmax(34px,1fr) 28px!important;gap:4px!important}.hall-ticket-item-qty .hall-qty-stepper button{width:28px!important;min-width:28px!important;height:38px!important;font-size:24px!important}.hall-ticket-item-qty .hall-qty-stepper input{height:38px!important;min-height:38px!important;font-size:20px!important;font-weight:950!important}.hall-ticket-empty{margin:0!important;padding:18px!important;text-align:center!important;border:1px dashed #fdba74!important;border-radius:18px!important;color:#92400e!important;font-weight:900!important;background:#fff7ed!important}
@media(max-width:820px){.hall-two-pane-picker{grid-template-columns:1fr!important;max-height:none!important}.hall-clickable-items-pane,.hall-ticket-draft-pane{max-height:320px!important}}


/* Two-pane cashier refinement: smaller left receipt, guaranteed independent scroll panes, receipt only shows item name + qty +/- + delete decal. */
.hall-two-pane-picker{grid-template-columns:minmax(0,1.18fr) minmax(0,.82fr)!important;overflow:hidden!important}
.hall-clickable-items-pane,.hall-ticket-draft-pane{height:100%!important;max-height:406px!important;overflow-y:auto!important;overflow-x:hidden!important}
.hall-ticket-item-row{grid-template-columns:minmax(0,1fr) minmax(98px,.55fr) 42px!important;gap:6px!important;min-height:58px!important;padding:8px!important}
.hall-ticket-item-info b{display:none!important}.hall-ticket-item-info h3{font-size:16px!important}.hall-ticket-delete-button{width:38px!important;min-width:38px!important;height:38px!important;align-self:center!important;justify-self:center!important}.hall-ticket-item-qty .hall-qty-stepper{grid-template-columns:25px minmax(30px,1fr) 25px!important;gap:3px!important}.hall-ticket-item-qty .hall-qty-stepper button{width:25px!important;min-width:25px!important;height:36px!important}.hall-ticket-item-qty .hall-qty-stepper input{height:36px!important;min-height:36px!important;font-size:18px!important}


/* Two-pane cashier scroll fix: do not let .hall-menu-scroll align-content shrink the panes to their content; the panes fill the picker and scroll to the final row. */
.hall-two-pane-picker{height:clamp(330px,42vh,430px)!important;min-height:330px!important;max-height:430px!important;grid-template-rows:minmax(0,1fr)!important;align-content:stretch!important;align-items:stretch!important;box-sizing:border-box!important;overflow:hidden!important}
.hall-two-pane-picker>.hall-clickable-items-pane,.hall-two-pane-picker>.hall-ticket-draft-pane{height:auto!important;min-height:0!important;max-height:none!important;align-self:stretch!important;box-sizing:border-box!important;overflow-y:auto!important;overflow-x:hidden!important;padding-bottom:22px!important;scroll-padding-bottom:22px!important}


/* User arrow reference: POS item add buttons are fixed-size chips: side-by-side, wrapping only between buttons, with a single-line centered item name and centered price. */
.hall-clickable-items-pane{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-content:flex-start!important;align-items:flex-start!important;justify-content:flex-start!important;gap:8px!important}
.hall-menu-add-button{display:grid!important;grid-template-columns:1fr!important;grid-template-rows:auto auto!important;width:124px!important;min-width:124px!important;max-width:124px!important;height:72px!important;min-height:72px!important;max-height:72px!important;flex:0 0 124px!important;justify-self:auto!important;place-items:center!important;place-content:center!important;text-align:center!important;padding:8px 10px!important;gap:4px!important;border-radius:12px!important;overflow:hidden!important}
.hall-menu-add-button .hall-item-name{grid-row:1!important;grid-column:1!important;justify-self:stretch!important;align-self:center!important;text-align:center!important;max-width:100%!important;width:100%!important;min-width:0!important;overflow:hidden!important}
.hall-menu-add-button .hall-item-name h3{font-size:18px!important;font-weight:950!important;line-height:1.15!important;text-align:center!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;overflow-wrap:normal!important;margin:0!important;max-width:100%!important}
#hallSaleForm .hall-menu-add-button .hall-item-price{grid-row:2!important;grid-column:1!important;justify-self:stretch!important;align-self:center!important;text-align:center!important;width:100%!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;font-size:15px!important;font-weight:950!important;line-height:1.15!important;white-space:nowrap!important}

/* Theme-aware cashier item boxes: environment mood must recolor both panes, and ticket item names must remain readable in night mode. */
.hall-two-pane-picker{background:color-mix(in srgb,var(--surface-strong,#fff) 68%,var(--primary) 10%)!important;border-color:color-mix(in srgb,var(--primary) 36%,var(--border,#fed7aa))!important;box-shadow:var(--soft-shadow)!important}
.hall-clickable-items-pane,.hall-ticket-draft-pane{background:color-mix(in srgb,var(--surface-strong,#fff) 88%,var(--primary) 8%)!important;border-color:color-mix(in srgb,var(--primary) 34%,var(--border,#fed7aa))!important}
.hall-menu-add-button,.hall-ticket-item-row{background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 94%,var(--primary) 6%),color-mix(in srgb,var(--surface-strong,#fff) 88%,var(--accent) 7%))!important;border-color:color-mix(in srgb,var(--primary) 42%,var(--border,#fdba74))!important;color:var(--text)!important;box-shadow:var(--soft-shadow)!important}
.hall-menu-add-button .hall-item-name h3,.hall-ticket-item-info h3{color:var(--text)!important;-webkit-text-fill-color:var(--text)!important;text-shadow:none!important}
#hallSaleForm .hall-menu-add-button .hall-item-price{color:var(--primary)!important;-webkit-text-fill-color:var(--primary)!important}
.hall-ticket-delete-button{border-color:color-mix(in srgb,#ef4444 58%,var(--border,#fecaca))!important;background:color-mix(in srgb,var(--surface-strong,#fff) 84%,#ef4444 14%)!important;color:#ef4444!important}
.app-shell.theme-midnight .hall-two-pane-picker{background:linear-gradient(135deg,rgba(15,23,42,.92),rgba(17,24,39,.86))!important;border-color:rgba(113,112,255,.45)!important}
.app-shell.theme-midnight .hall-clickable-items-pane,.app-shell.theme-midnight .hall-ticket-draft-pane{background:rgba(15,23,42,.78)!important;border-color:rgba(56,189,248,.26)!important}
.app-shell.theme-midnight .hall-menu-add-button,.app-shell.theme-midnight .hall-ticket-item-row{background:linear-gradient(135deg,rgba(30,41,59,.96),rgba(17,24,39,.98))!important;border-color:rgba(113,112,255,.42)!important;color:#f8fafc!important;box-shadow:0 12px 28px rgba(0,0,0,.24)!important}
.app-shell.theme-midnight .hall-menu-add-button .hall-item-name h3,.app-shell.theme-midnight .hall-ticket-item-info h3{color:#f8fafc!important;-webkit-text-fill-color:#f8fafc!important}
.app-shell.theme-midnight #hallSaleForm .hall-menu-add-button .hall-item-price{color:#38bdf8!important;-webkit-text-fill-color:#38bdf8!important}

/* Compact authenticated top header: left logout + restaurant name, center Iran date/time, right temporary logo */
.app-shell{grid-template-rows:auto 1fr}.app-header{grid-column:1/-1;position:sticky;top:0;z-index:160;min-height:74px;display:grid;grid-template-columns:minmax(230px,1fr) auto minmax(230px,1fr);align-items:center;gap:18px;padding:12px 22px;background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 88%,transparent),color-mix(in srgb,var(--primary-2) 10%,var(--surface)));border-bottom:1px solid var(--border);box-shadow:0 16px 42px rgba(6,18,31,.12);backdrop-filter:blur(18px);direction:ltr}.header-actions{justify-self:start;display:flex;align-items:center;gap:12px;direction:ltr}.header-logout{color:var(--primary)!important;border:1px solid var(--border)!important;background:color-mix(in srgb,var(--surface-strong,#fff) 86%,transparent)!important;box-shadow:var(--soft-shadow);padding:10px 18px}.header-restaurant-name{max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:17px;font-weight:950;direction:rtl}.app-logo{justify-self:end;width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:conic-gradient(from 210deg,var(--primary),var(--accent),var(--primary-2),var(--primary));box-shadow:0 18px 38px color-mix(in srgb,var(--primary) 34%,transparent),inset 0 1px 0 rgba(255,255,255,.48);position:relative;overflow:hidden}.app-logo:before{content:"";position:absolute;inset:9px;border-radius:14px;background:rgba(255,255,255,.88)}.app-logo span{position:relative;z-index:1;color:var(--primary);font-weight:1000;font-size:24px;line-height:1}.business-date-line{position:static!important;top:auto!important;left:auto!important;right:auto!important;z-index:auto!important;justify-self:center;min-width:310px;border:1px solid rgba(255,255,255,.20);border-radius:999px;background:linear-gradient(135deg,rgba(8,24,39,.94),rgba(15,118,110,.88));color:#fff;padding:10px 18px;text-align:center;font-weight:950;box-shadow:0 16px 40px rgba(6,18,31,.20);backdrop-filter:blur(14px);direction:rtl;pointer-events:none}.sidebar{grid-column:1;grid-row:2}.content{grid-column:2;grid-row:2;padding-top:30px}.brand,.ai-card{display:none!important}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.app-header{grid-template-columns:1fr;gap:10px;justify-items:stretch;position:sticky}.header-actions,.business-date-line,.app-logo{justify-self:center}.app-logo{order:-1}.sidebar,.content{grid-column:1;grid-row:auto}.content{padding-top:18px}.business-date-line{width:100%;min-width:0}.header-restaurant-name{max-width:55vw}}


/* Header left order: physical left خروج button */
/* Authenticated header image logo from the user-provided system mark: cropped asset, no visible frame/card, no clipping. */
.app-logo.restaurant-graphic-logo{width:142px!important;height:82px!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;display:grid!important;place-items:center!important;padding:0!important;border:0!important}
.app-logo.restaurant-graphic-logo:before,.app-logo.restaurant-graphic-logo span{display:none!important;content:none!important}
.app-logo.restaurant-graphic-logo img{width:142px!important;height:82px!important;display:block!important;object-fit:contain!important;object-position:center!important;border-radius:0!important;background:transparent!important;filter:drop-shadow(0 10px 18px color-mix(in srgb,var(--primary) 18%,transparent));box-shadow:none!important;transform:none!important;transform-origin:center!important}
/* Authenticated header must remain visible while page content scrolls */
.app-shell{padding-top:74px!important}.app-header{position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%!important;grid-column:auto!important}
.sidebar,.content{grid-row:1!important}.content{padding-top:30px!important}
@media(max-width:900px){.app-shell{padding-top:156px!important}.content{padding-top:18px!important}}


/* Full-section backup/import controls for inventory and recipes */
.section-title.recipe-list-title,.section-title.inventory-stock-title{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;flex:0 0 auto!important;min-height:48px!important;padding-inline:116px!important;flex-direction:row!important;flex-wrap:nowrap!important}
.recipe-list-title h2,.inventory-stock-title h2{margin:0!important;text-align:center!important;white-space:nowrap!important;width:auto!important;max-width:100%!important;line-height:1.35!important}
.inventory-title-actions,.section-backup-actions{display:flex!important;align-items:center!important;gap:6px!important;flex-wrap:nowrap!important;direction:rtl!important;min-width:max-content!important}
.inventory-title-actions{position:absolute!important;right:0!important;top:50%!important;transform:translateY(-50%)!important;justify-content:flex-start!important;z-index:3!important}
.recipe-list-panel .recipe-list-title .section-backup-actions{position:absolute!important;right:0!important;top:50%!important;transform:translateY(-50%)!important;justify-content:flex-start!important;z-index:3!important}
.section-backup-button{border:1px solid color-mix(in srgb,var(--primary) 28%,var(--border))!important;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 14%,var(--surface-strong,#fff)),color-mix(in srgb,var(--accent) 10%,var(--surface-strong,#fff)))!important;color:var(--primary)!important;border-radius:13px!important;padding:8px 10px!important;font-size:12px!important;font-weight:950!important;box-shadow:0 8px 18px rgba(15,23,42,.09)!important;min-height:36px!important;cursor:pointer}
.section-backup-button:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(15,23,42,.14)!important}
@media(max-width:760px){.section-title.recipe-list-title,.section-title.inventory-stock-title{justify-content:flex-start!important;align-items:center!important;padding-inline:0!important}.inventory-title-actions,.recipe-list-panel .recipe-list-title .section-backup-actions{position:static!important;transform:none!important}.recipe-list-title h2,.inventory-stock-title h2{text-align:right!important}}


/* Final inline section headers: keep inventory title, inventory print decal, and recipe controls on one physical row */
.recipe-list-panel .recipe-list-title,.inventory-edit-panel .inventory-stock-title{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;min-height:48px!important;gap:10px!important;flex-wrap:nowrap!important}
.recipe-list-panel .recipe-list-title .section-backup-actions,.inventory-edit-panel .inventory-stock-title .inventory-title-actions{grid-column:auto!important;grid-row:auto!important}
.recipe-list-panel .recipe-list-title h2,.inventory-edit-panel .inventory-stock-title h2{grid-column:auto!important;grid-row:auto!important;justify-self:center!important;text-align:center!important;margin:0!important}


/* Section backup controls are icon decals with tooltip text, not text buttons */
.section-backup-button{display:none!important}
.section-backup-decal{position:relative;width:40px!important;height:40px!important;min-width:40px!important;padding:0!important;border:1px solid color-mix(in srgb,var(--primary) 22%,#ffffff)!important;border-radius:15px!important;background:linear-gradient(135deg,#f7f8ff,#ffffff)!important;color:var(--primary)!important;display:inline-grid!important;place-items:center!important;cursor:pointer!important;box-shadow:0 10px 24px rgba(18,31,45,.12)!important;transition:transform .16s ease,box-shadow .16s ease!important;color-scheme:light!important}
.section-backup-import-decal{color:var(--accent)!important}
.section-backup-decal:hover,.section-backup-decal:focus-visible{transform:translateY(-2px);box-shadow:0 16px 30px rgba(18,31,45,.18)!important;outline:none!important}
.section-backup-icon{width:24px;height:24px;display:block;fill:none;stroke:currentColor;stroke-width:2.15;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.section-backup-decal::after{content:attr(data-tooltip);position:absolute;right:50%;top:calc(100% + 8px);transform:translateX(50%) translateY(-3px);opacity:0;pointer-events:none;z-index:80;background:#0f172a;color:#fff;border-radius:10px;padding:7px 10px;font-size:12px;font-weight:850;line-height:1.3;white-space:nowrap;box-shadow:0 12px 28px rgba(15,23,42,.22);transition:opacity .14s ease,transform .14s ease}
.section-backup-decal:hover::after,.section-backup-decal:focus-visible::after{opacity:1;transform:translateX(50%) translateY(0)}


/* Header decal tooltips: show below each decal and keep text fully visible */
.inventory-stock-title .section-backup-decal::after,
.recipe-list-title .section-backup-decal::after,
.inventory-stock-title .action-decal-button::after,
.recipe-list-title .action-decal-button::after{
  top:calc(100% + 10px)!important;
  bottom:auto!important;
  left:auto!important;
  right:50%!important;
  transform:translateX(50%) translateY(-4px)!important;
  z-index:999!important;
  max-width:min(260px,calc(100vw - 24px))!important;
  overflow:visible!important;
}
.inventory-stock-title .section-backup-decal:hover::after,
.inventory-stock-title .section-backup-decal:focus-visible::after,
.recipe-list-title .section-backup-decal:hover::after,
.recipe-list-title .section-backup-decal:focus-visible::after,
.inventory-stock-title .action-decal-button:hover::after,
.inventory-stock-title .action-decal-button:focus-visible::after,
.recipe-list-title .action-decal-button:hover::after,
.recipe-list-title .action-decal-button:focus-visible::after{
  opacity:1!important;
  transform:translateX(50%) translateY(0)!important;
}
.inventory-stock-title .section-backup-export-decal::after,
.recipe-list-title .section-backup-export-decal::after{
  right:0!important;
  transform:translateY(-4px)!important;
}
.inventory-stock-title .section-backup-export-decal:hover::after,
.inventory-stock-title .section-backup-export-decal:focus-visible::after,
.recipe-list-title .section-backup-export-decal:hover::after,
.recipe-list-title .section-backup-export-decal:focus-visible::after{
  transform:translateY(0)!important;
}
.inventory-stock-title,
.recipe-list-title,
.inventory-title-actions,
.section-backup-actions{
  overflow:visible!important;
}


/* Print/detail modal placement: keep popup below the fixed date chip and fully visible */
.print-modal-overlay{
  z-index:320!important;
  align-items:flex-start!important;
  padding:clamp(96px,13vh,132px) 28px 40px!important;
  overflow:auto!important;
}
.print-modal{
  max-height:calc(100vh - clamp(136px,18vh,172px))!important;
  overflow:auto!important;
}
.inventory-print-modal,
.purchase-invoice-details-modal,
.cheque-list-modal{
  max-height:calc(100vh - clamp(136px,18vh,172px))!important;
  overflow:auto!important;
}
@media(max-width:760px){
  .print-modal-overlay{padding:88px 14px 28px!important}
  .print-modal,.inventory-print-modal,.purchase-invoice-details-modal,.cheque-list-modal{max-height:calc(100vh - 116px)!important}
}
@media print{
  .print-modal-overlay{z-index:auto!important;padding:0!important;overflow:visible!important}
  .print-modal,.inventory-print-modal,.purchase-invoice-details-modal,.cheque-list-modal{max-height:none!important;overflow:visible!important}
}


/* Inventory layout correction: remove the old standalone file-import box and share its width between stock and new-material panels. */
.inventory-workspace{grid-template-columns:minmax(280px,1.12fr) minmax(0,2.9fr)!important;grid-template-areas:"create stock"!important;gap:16px!important;align-items:stretch!important}
.inventory-import-panel{display:none!important}
.inventory-create-panel{grid-area:create!important;width:100%!important;height:800px!important;min-height:800px!important;max-height:800px!important;overflow:visible!important}
.inventory-edit-panel{grid-area:stock!important;width:100%!important;max-width:none!important;margin-inline:0!important;height:800px!important;min-height:800px!important;max-height:800px!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}
.inventory-edit-scroll{flex:1 1 auto!important;min-height:0!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important}
@media(max-width:1100px){.inventory-workspace{grid-template-columns:1fr!important;grid-template-areas:"create" "stock"!important}.inventory-create-panel,.inventory-edit-panel{height:auto!important;min-height:auto!important;max-height:none!important}.inventory-edit-panel{max-height:70vh!important}.inventory-edit-scroll{overflow-x:auto!important}}


/* Hall table layout moved from customer/package into the cashier box popup. */
.hall-table-toolbar{position:static!important;display:flex!important;align-items:center!important;justify-content:space-between!important;direction:rtl!important;gap:12px!important;width:100%!important;margin:0 0 12px!important;z-index:4!important}
.hall-table-toolbar .hall-table-trigger{margin:0!important;flex:0 0 auto!important}
.hall-occupied-tables-box{flex:1 1 auto!important;min-width:0!important;max-width:none!important;max-height:64px!important;border:0!important;border-radius:0!important;padding:0!important;background:transparent!important;box-shadow:none!important;display:block!important;overflow:hidden!important}.hall-occupied-tables-scroll{min-height:0!important;max-height:62px!important;overflow-y:auto!important;overflow-x:hidden!important;display:flex!important;flex-wrap:wrap!important;align-content:flex-start!important;gap:8px!important;padding:0 2px!important}.hall-occupied-table-chip{flex:0 0 auto!important;min-width:0!important;width:auto!important;max-width:none!important;min-height:58px!important;padding:7px 18px!important;border-radius:18px!important;border:1px solid #fecaca!important;background:linear-gradient(180deg,#fecaca 0%,#ef4444 44%,#991b1b 100%)!important;color:#fff7ed!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;font-size:18px!important;font-weight:950!important;box-shadow:inset 0 2px 5px rgba(255,255,255,.55),inset 0 -5px 8px rgba(127,29,29,.34),0 8px 16px rgba(185,28,28,.22)!important}.hall-occupied-table-chip.active,.hall-occupied-table-chip.open-order,.hall-occupied-table-chip.waiting-payment{background:linear-gradient(180deg,#fecaca 0%,#ef4444 44%,#991b1b 100%)!important}.hall-occupied-table-chip b,.hall-occupied-table-chip small{color:#fff7ed!important;-webkit-text-fill-color:#fff7ed!important;white-space:nowrap!important}.hall-occupied-table-chip b{font-size:18px!important}.hall-occupied-table-chip small{font-size:18px!important}.hall-occupied-empty{font-size:12px!important;color:var(--muted)!important;text-align:center!important;align-self:center!important;margin:auto!important}.hall-table-picker-empty{grid-column:1/-1;text-align:center;font-weight:900;color:var(--muted)}
.app-shell.theme-emerald .hall-occupied-table-chip{background:linear-gradient(180deg,#e0f2fe 0%,#2563eb 42%,#1e3a8a 100%)!important;border-color:#60a5fa!important;box-shadow:inset 0 2px 5px rgba(255,255,255,.58),inset 0 -6px 9px rgba(30,58,138,.38),0 10px 18px rgba(37,99,235,.22)!important}.app-shell.theme-berry .hall-occupied-table-chip{background:linear-gradient(180deg,#fef3c7 0%,#f59e0b 42%,#92400e 100%)!important;border-color:#fbbf24!important;box-shadow:inset 0 2px 5px rgba(255,255,255,.60),inset 0 -6px 9px rgba(146,64,14,.36),0 10px 18px rgba(245,158,11,.24)!important}.app-shell.theme-midnight .hall-occupied-table-chip{background:linear-gradient(180deg,#cffafe 0%,#0891b2 42%,#164e63 100%)!important;border-color:#22d3ee!important;box-shadow:inset 0 2px 5px rgba(255,255,255,.50),inset 0 -6px 9px rgba(8,47,73,.44),0 10px 18px rgba(34,211,238,.18)!important}.app-shell.theme-sunrise .hall-occupied-table-chip{background:linear-gradient(180deg,#dcfce7 0%,#16a34a 42%,#166534 100%)!important;border-color:#86efac!important;box-shadow:inset 0 2px 5px rgba(255,255,255,.58),inset 0 -6px 9px rgba(22,101,52,.36),0 10px 18px rgba(22,163,74,.22)!important}
.hall-table-layout-trigger{background:linear-gradient(135deg,#fff7ed,#ffedd5)!important;border-color:#fdba74!important;box-shadow:0 14px 30px rgba(251,146,60,.18)!important}
.hall-table-layout-trigger .hall-table-3d-icon svg{filter:saturate(1.08)}
.hall-table-config-backdrop{position:fixed;inset:0;background:rgba(15,23,42,.34);display:flex!important;align-items:flex-start!important;justify-content:center!important;padding-top:clamp(92px,15vh,150px)!important;overflow:auto!important;z-index:1000}
.hall-table-config-popup{position:relative!important;width:min(680px,92vw)!important;max-height:min(78vh,720px)!important;overflow:auto!important;padding-top:54px!important}
.hall-table-config-popup .hall-table-config-form{width:100%!important;margin:0!important}
.hall-table-config-close{position:absolute!important;top:18px!important;right:18px!important;left:auto!important;z-index:30!important;display:grid!important}
@media(max-width:820px){.hall-table-toolbar{flex-wrap:wrap!important}.hall-table-toolbar .hall-table-trigger{min-width:150px!important}.hall-occupied-tables-box{order:3;flex:1 1 100%!important;max-width:100%!important;max-height:64px!important}.hall-table-config-popup{width:min(680px,94vw)!important}}

/* Glossy pill controls for the Sales/Cashier section: same existing sizes/colors-by-theme, with the rounded shiny form from the reference image. */
.content[data-current-tab="sales"] button:not(.modal-close-icon):not(.calculator-close){
  border-style:solid!important;
  border-color:color-mix(in srgb,var(--primary) 40%,var(--border,#fdba74))!important;
  border-radius:999px!important;
  background-image:
    linear-gradient(180deg,rgba(255,255,255,.82) 0%,rgba(255,255,255,.42) 18%,rgba(255,255,255,0) 34%),
    linear-gradient(180deg,color-mix(in srgb,var(--primary) 34%,#ffffff) 0%,var(--primary) 48%,color-mix(in srgb,var(--primary) 78%,#0f172a) 100%)!important;
  box-shadow:
    inset 0 3px 5px rgba(255,255,255,.66),
    inset 0 -7px 10px rgba(15,23,42,.24),
    0 3px 0 color-mix(in srgb,var(--primary) 58%,#0f172a),
    0 8px 14px rgba(15,23,42,.22)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 1px 2px rgba(15,23,42,.52)!important;
  transform:none!important;
  transition:filter .13s ease,box-shadow .13s ease,transform .13s ease!important;
}
.content[data-current-tab="sales"] button:not(.modal-close-icon):not(.calculator-close) *,
.content[data-current-tab="sales"] button:not(.modal-close-icon):not(.calculator-close) h3,
.content[data-current-tab="sales"] button:not(.modal-close-icon):not(.calculator-close) b,
.content[data-current-tab="sales"] button:not(.modal-close-icon):not(.calculator-close) span,
.content[data-current-tab="sales"] button:not(.modal-close-icon):not(.calculator-close) small{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 1px 2px rgba(15,23,42,.55)!important;
}
.content[data-current-tab="sales"] .hall-menu-add-button .hall-item-price,
.content[data-current-tab="sales"] #hallSaleForm .hall-menu-add-button .hall-item-price{
  color:rgba(255,255,255,.92)!important;
  -webkit-text-fill-color:rgba(255,255,255,.92)!important;
}
/* Preserve state cues after the glossy treatment: active channel/category/selected table and open-order tables must not look like normal buttons. */
.content[data-current-tab="sales"] .pos-channel-tabs button.active,
.content[data-current-tab="sales"] .hall-category-tabs button.active,
.content[data-current-tab="sales"] .hall-table-card.active{
  background-image:
    linear-gradient(180deg,rgba(255,255,255,.88) 0%,rgba(255,255,255,.46) 18%,rgba(255,255,255,0) 34%),
    linear-gradient(180deg,color-mix(in srgb,var(--accent) 52%,#ffffff) 0%,var(--accent) 46%,color-mix(in srgb,var(--accent) 70%,var(--primary-2)) 100%)!important;
  border-color:color-mix(in srgb,var(--accent) 70%,#ffffff)!important;
  outline:3px solid color-mix(in srgb,var(--accent) 34%,transparent)!important;
  outline-offset:2px!important;
  box-shadow:
    inset 0 4px 6px rgba(255,255,255,.76),
    inset 0 -8px 12px rgba(15,23,42,.26),
    0 3px 0 color-mix(in srgb,var(--accent) 62%,#0f172a),
    0 0 0 4px color-mix(in srgb,var(--accent) 18%,transparent),
    0 12px 22px color-mix(in srgb,var(--accent) 30%,rgba(15,23,42,.20))!important;
}
.content[data-current-tab="sales"] button.hall-table-card.open-order{
  background-image:
    linear-gradient(180deg,rgba(255,255,255,.84) 0%,rgba(255,255,255,.42) 18%,rgba(255,255,255,0) 34%),
    linear-gradient(180deg,#fbbf24 0%,#f97316 50%,#c2410c 100%)!important;
  border-color:#fdba74!important;
  outline:2px solid rgba(251,146,60,.34)!important;
  outline-offset:1px!important;
  box-shadow:inset 0 3px 6px rgba(255,255,255,.70),inset 0 -8px 12px rgba(124,45,18,.28),0 3px 0 #9a3412,0 10px 20px rgba(249,115,22,.26)!important;
}
.content[data-current-tab="sales"] button.hall-table-card.waiting-payment{
  background-image:
    linear-gradient(180deg,rgba(255,255,255,.84) 0%,rgba(255,255,255,.42) 18%,rgba(255,255,255,0) 34%),
    linear-gradient(180deg,#fb7185 0%,#e11d48 50%,#9f1239 100%)!important;
  border-color:#fda4af!important;
  outline:2px solid rgba(225,29,72,.34)!important;
  outline-offset:1px!important;
  box-shadow:inset 0 3px 6px rgba(255,255,255,.62),inset 0 -8px 12px rgba(127,29,29,.30),0 3px 0 #881337,0 10px 20px rgba(225,29,72,.25)!important;
}
.content[data-current-tab="sales"] .hall-table-card.active.open-order,
.content[data-current-tab="sales"] .hall-table-card.active.waiting-payment{
  outline-width:4px!important;
  outline-color:rgba(255,255,255,.72)!important;
  filter:saturate(1.12) brightness(1.04)!important;
}
.content[data-current-tab="sales"] button:not(.modal-close-icon):not(.calculator-close):hover:not(:disabled),
.content[data-current-tab="sales"] button:not(.modal-close-icon):not(.calculator-close):focus-visible:not(:disabled){
  filter:saturate(1.08) brightness(1.04)!important;
  box-shadow:
    inset 0 4px 6px rgba(255,255,255,.72),
    inset 0 -8px 11px rgba(15,23,42,.25),
    0 4px 0 color-mix(in srgb,var(--primary) 62%,#0f172a),
    0 10px 18px rgba(15,23,42,.25)!important;
}
.content[data-current-tab="sales"] button:not(.modal-close-icon):not(.calculator-close):active:not(:disabled){
  transform:translateY(2px)!important;
  box-shadow:
    inset 0 2px 4px rgba(255,255,255,.45),
    inset 0 -4px 8px rgba(15,23,42,.24),
    0 1px 0 color-mix(in srgb,var(--primary) 55%,#0f172a),
    0 4px 8px rgba(15,23,42,.20)!important;
}
.content[data-current-tab="sales"] button:disabled{
  filter:saturate(.72) opacity(.72)!important;
  transform:none!important;
  box-shadow:
    inset 0 2px 4px rgba(255,255,255,.48),
    inset 0 -5px 8px rgba(15,23,42,.18),
    0 2px 0 rgba(15,23,42,.16),
    0 5px 10px rgba(15,23,42,.12)!important;
}
.content[data-current-tab="sales"] .danger-button,
.content[data-current-tab="sales"] .hall-ticket-delete-button,
.content[data-current-tab="sales"] .action-decal-button.danger,
.content[data-current-tab="sales"] button[data-delete-sale]{
  border-color:color-mix(in srgb,#ef4444 46%,var(--border,#fecaca))!important;
  background-image:
    linear-gradient(180deg,rgba(255,255,255,.78) 0%,rgba(255,255,255,.36) 18%,rgba(255,255,255,0) 34%),
    linear-gradient(180deg,color-mix(in srgb,#ef4444 28%,#ffffff) 0%,#ef4444 48%,#991b1b 100%)!important;
  color:#fff!important;
  box-shadow:inset 0 3px 5px rgba(255,255,255,.55),inset 0 -7px 10px rgba(127,29,29,.28),0 3px 0 #7f1d1d,0 8px 14px rgba(127,29,29,.20)!important;
}
.app-shell.theme-midnight .content[data-current-tab="sales"] button:not(.modal-close-icon):not(.calculator-close){
  text-shadow:0 1px 1px rgba(0,0,0,.42)!important;
  box-shadow:
    inset 0 3px 5px rgba(255,255,255,.18),
    inset 0 -7px 10px rgba(0,0,0,.34),
    0 3px 0 rgba(56,189,248,.34),
    0 8px 16px rgba(0,0,0,.38)!important;
}

/* Theme harmony fix: POS/table chooser, open-table cards, cashier panes, and channel/category/table buttons must follow the selected workspace mood instead of fixed teal/orange/purple palettes. */
.app-shell{--hall-free-bg:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 86%,var(--primary) 14%),color-mix(in srgb,var(--surface-strong,#fff) 90%,var(--primary-2) 10%));--hall-open-bg:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 78%,var(--accent-2) 22%),color-mix(in srgb,var(--surface-strong,#fff) 86%,var(--accent) 14%));--hall-waiting-bg:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 78%,var(--accent) 22%),color-mix(in srgb,var(--surface-strong,#fff) 88%,var(--primary) 12%));--hall-theme-border:color-mix(in srgb,var(--primary) 34%,var(--border));--hall-open-border:color-mix(in srgb,var(--accent-2) 52%,var(--border));--hall-waiting-border:color-mix(in srgb,var(--accent) 52%,var(--border));--hall-theme-shadow:0 14px 34px color-mix(in srgb,var(--primary) 18%,transparent)}
.app-shell.theme-midnight{--hall-free-bg:linear-gradient(135deg,rgba(17,24,39,.96),rgba(30,41,59,.94));--hall-open-bg:linear-gradient(135deg,rgba(88,86,214,.40),rgba(17,24,39,.96));--hall-waiting-bg:linear-gradient(135deg,rgba(167,139,250,.34),rgba(15,23,42,.96));--hall-theme-border:rgba(56,189,248,.28);--hall-open-border:rgba(167,139,250,.58);--hall-waiting-border:rgba(56,189,248,.48);--hall-theme-shadow:0 14px 34px rgba(0,0,0,.26)}
.hall-order-category-panel{background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 86%,var(--primary) 7%),color-mix(in srgb,var(--surface-strong,#fff) 92%,var(--accent) 8%))!important;border-color:var(--hall-theme-border)!important;box-shadow:var(--hall-theme-shadow)!important;color:var(--text)!important}
.hall-order-category-panel>.section-title,.hall-order-category-panel .hall-food-list,.hall-order-category-panel .hall-category-side,.hall-two-pane-picker,.hall-clickable-items-pane,.hall-ticket-draft-pane{border-color:var(--hall-theme-border)!important}
.hall-order-category-panel .hall-food-list,.hall-two-pane-picker{background:color-mix(in srgb,var(--surface-strong,#fff) 72%,var(--primary) 10%)!important}.hall-clickable-items-pane,.hall-ticket-draft-pane{background:color-mix(in srgb,var(--surface-strong,#fff) 86%,var(--primary) 8%)!important}
.hall-order-category-panel .hall-category-side{background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 76%,var(--primary) 18%),color-mix(in srgb,var(--surface-strong,#fff) 88%,var(--accent) 10%))!important;color:var(--text)!important}
.hall-category-tabs button,.hall-category-tab,.pos-channel-tabs button{background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 88%,var(--primary) 10%),color-mix(in srgb,var(--surface-strong,#fff) 92%,var(--accent) 8%))!important;border-color:var(--hall-theme-border)!important;color:var(--text)!important;box-shadow:var(--soft-shadow)!important}.hall-category-tabs button.active,.hall-category-tab.active,.pos-channel-tabs button.active{background:linear-gradient(135deg,var(--primary),var(--accent))!important;border-color:color-mix(in srgb,var(--primary) 50%,var(--border))!important;color:#fff!important;box-shadow:0 18px 34px color-mix(in srgb,var(--primary) 32%,transparent)!important}
.hall-table-trigger,.hall-table-layout-trigger{background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 80%,var(--primary) 14%),color-mix(in srgb,var(--surface-strong,#fff) 88%,var(--accent) 10%))!important;border-color:var(--hall-theme-border)!important;color:var(--text)!important;box-shadow:var(--hall-theme-shadow)!important}.hall-table-trigger b{color:var(--text)!important;-webkit-text-fill-color:var(--text)!important}.hall-table-trigger .hall-table-3d-icon svg{filter:drop-shadow(0 10px 16px color-mix(in srgb,var(--primary) 28%,transparent)) saturate(1.05)!important}
.hall-table-card{background:var(--hall-free-bg)!important;border-color:var(--hall-theme-border)!important;color:var(--text)!important;box-shadow:var(--soft-shadow)!important}.hall-table-card.free{background:var(--hall-free-bg)!important;border-color:color-mix(in srgb,var(--primary) 44%,var(--border))!important}.hall-table-card.open-order{background:var(--hall-open-bg)!important;border-color:var(--hall-open-border)!important}.hall-table-card.waiting-payment{background:var(--hall-waiting-bg)!important;border-color:var(--hall-waiting-border)!important}.hall-table-card.active{outline:3px solid color-mix(in srgb,var(--primary) 54%,transparent)!important}
.hall-menu-add-button,.hall-ticket-item-row,.hall-ticket-empty{background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 92%,var(--primary) 7%),color-mix(in srgb,var(--surface-strong,#fff) 88%,var(--accent) 8%))!important;border-color:var(--hall-theme-border)!important;color:var(--text)!important;box-shadow:var(--soft-shadow)!important}.hall-ticket-empty{color:var(--muted)!important}.hall-menu-add-button .hall-item-name h3,.hall-ticket-item-info h3{color:var(--text)!important;-webkit-text-fill-color:var(--text)!important}#hallSaleForm .hall-menu-add-button .hall-item-price,.hall-order-category-panel .hall-item-price,.hall-ticket-item-info b{color:var(--primary)!important;-webkit-text-fill-color:var(--primary)!important}
.app-shell.theme-midnight .hall-order-category-panel,.app-shell.theme-midnight .hall-order-category-panel .hall-food-list,.app-shell.theme-midnight .hall-category-side,.app-shell.theme-midnight .hall-two-pane-picker,.app-shell.theme-midnight .hall-clickable-items-pane,.app-shell.theme-midnight .hall-ticket-draft-pane{background:linear-gradient(135deg,rgba(15,23,42,.90),rgba(17,24,39,.96))!important;border-color:var(--hall-theme-border)!important}.app-shell.theme-midnight .hall-category-tabs button,.app-shell.theme-midnight .hall-category-tab,.app-shell.theme-midnight .pos-channel-tabs button,.app-shell.theme-midnight .hall-table-trigger,.app-shell.theme-midnight .hall-table-layout-trigger{background:linear-gradient(135deg,rgba(30,41,59,.96),rgba(17,24,39,.98))!important;color:#f8fafc!important;border-color:var(--hall-theme-border)!important}.app-shell.theme-midnight .hall-menu-add-button,.app-shell.theme-midnight .hall-ticket-item-row{background:linear-gradient(135deg,rgba(30,41,59,.96),rgba(17,24,39,.98))!important;border-color:var(--hall-open-border)!important;color:#f8fafc!important}.app-shell.theme-midnight .hall-menu-add-button .hall-item-name h3,.app-shell.theme-midnight .hall-ticket-item-info h3,.app-shell.theme-midnight .hall-table-trigger b{color:#f8fafc!important;-webkit-text-fill-color:#f8fafc!important}.app-shell.theme-midnight #hallSaleForm .hall-menu-add-button .hall-item-price,.app-shell.theme-midnight .hall-order-category-panel .hall-item-price{color:#38bdf8!important;-webkit-text-fill-color:#38bdf8!important}


/* POS lower category bar final fit: نوشیدنی سرد and دسر must be wide, centered, and never clipped vertically. */
.app-shell .hall-order-category-panel .hall-category-side{min-height:78px!important;height:auto!important;padding:10px 12px!important;overflow:visible!important;align-items:center!important;justify-content:center!important}
.app-shell .hall-order-category-panel .hall-category-tabs{min-height:58px!important;overflow-x:auto!important;overflow-y:visible!important;padding:4px 4px 8px!important;scrollbar-gutter:stable!important;align-items:center!important}
.app-shell .hall-order-category-panel .hall-category-tabs button,.app-shell .hall-order-category-panel .hall-category-tab{flex:0 0 clamp(150px,18vw,190px)!important;width:clamp(150px,18vw,190px)!important;min-width:150px!important;max-width:190px!important;min-height:54px!important;height:54px!important;line-height:1.1!important;padding:0 18px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;white-space:nowrap!important;overflow:visible!important}
@media(max-width:820px){.app-shell .hall-order-category-panel .hall-category-tabs button,.app-shell .hall-order-category-panel .hall-category-tab{flex-basis:132px!important;width:132px!important;min-width:132px!important;max-width:132px!important;font-size:16px!important}}

/* Theme harmony high-specificity overrides: beat older screenshot-specific orange rules inside the hall cashier panel. */
.app-shell .hall-order-category-panel .hall-category-tabs button.active,.app-shell .hall-order-category-panel .hall-category-tab.active,.app-shell .pos-channel-tabs button.active{background:linear-gradient(135deg,var(--primary),var(--accent))!important;border-color:color-mix(in srgb,var(--primary) 50%,var(--border))!important;color:#fff!important;box-shadow:0 18px 34px color-mix(in srgb,var(--primary) 32%,transparent)!important}
.app-shell .hall-order-category-panel .hall-category-tabs button:not(.active),.app-shell .hall-order-category-panel .hall-category-tab:not(.active),.app-shell .pos-channel-tabs button:not(.active){background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 88%,var(--primary) 10%),color-mix(in srgb,var(--surface-strong,#fff) 92%,var(--accent) 8%))!important;border-color:var(--hall-theme-border)!important;color:var(--text)!important}
.app-shell .hall-order-category-panel .hall-table-trigger,.app-shell .hall-order-category-panel .hall-table-layout-trigger{background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 80%,var(--primary) 14%),color-mix(in srgb,var(--surface-strong,#fff) 88%,var(--accent) 10%))!important;border-color:var(--hall-theme-border)!important;color:var(--text)!important;box-shadow:var(--hall-theme-shadow)!important}.app-shell .hall-order-category-panel .hall-table-trigger .hall-table-icon{background:var(--primary)!important}.app-shell .hall-order-category-panel .hall-table-trigger b{color:var(--text)!important;-webkit-text-fill-color:var(--text)!important}
.app-shell .hall-order-category-panel .hall-menu-add-button,.app-shell .hall-order-category-panel .hall-ticket-item-row,.app-shell .hall-order-category-panel .hall-ticket-empty{background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 92%,var(--primary) 7%),color-mix(in srgb,var(--surface-strong,#fff) 88%,var(--accent) 8%))!important;border-color:var(--hall-theme-border)!important;color:var(--text)!important;box-shadow:var(--soft-shadow)!important}.app-shell .hall-order-category-panel #hallSaleForm .hall-menu-add-button .hall-item-price,.app-shell .hall-order-category-panel .hall-item-price{color:var(--primary)!important;-webkit-text-fill-color:var(--primary)!important}
.app-shell.theme-midnight .hall-order-category-panel .hall-category-tabs button,.app-shell.theme-midnight .hall-order-category-panel .hall-category-tab,.app-shell.theme-midnight .pos-channel-tabs button,.app-shell.theme-midnight .hall-order-category-panel .hall-table-trigger,.app-shell.theme-midnight .hall-order-category-panel .hall-table-layout-trigger{background:linear-gradient(135deg,rgba(30,41,59,.96),rgba(17,24,39,.98))!important;color:#f8fafc!important;border-color:var(--hall-theme-border)!important}.app-shell.theme-midnight .hall-order-category-panel .hall-category-tabs button.active,.app-shell.theme-midnight .hall-order-category-panel .hall-category-tab.active,.app-shell.theme-midnight .pos-channel-tabs button.active{background:linear-gradient(135deg,var(--primary),var(--accent))!important;color:#fff!important}.app-shell.theme-midnight .hall-order-category-panel .hall-table-trigger b{color:#f8fafc!important;-webkit-text-fill-color:#f8fafc!important}

/* POS category/channel glossy red-orange parity: the lower food-category line must match فروش سالن/دلیوری/اسنپ‌فود. */
.app-shell .pos-channel-tabs button,
.app-shell .hall-order-category-panel .hall-category-tabs button,
.app-shell .hall-order-category-panel .hall-category-tab{
  border-radius:999px!important;
  border:1px solid rgba(154,52,18,.72)!important;
  background:linear-gradient(180deg,#fff3eb 0%,#fb8a42 42%,#c94812 100%)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-weight:950!important;
  text-shadow:0 2px 4px rgba(83,27,8,.42)!important;
  box-shadow:inset 0 3px 8px rgba(255,255,255,.66),inset 0 -9px 12px rgba(93,29,9,.38),0 12px 22px rgba(124,45,18,.28)!important;
  transform:translateY(-1px)!important;
}
.app-shell .pos-channel-tabs button.active,
.app-shell .hall-order-category-panel .hall-category-tabs button.active,
.app-shell .hall-order-category-panel .hall-category-tab.active{
  border-color:rgba(248,113,113,.82)!important;
  background:linear-gradient(180deg,#fff0ef 0%,#f04438 38%,#c5122f 100%)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:inset 0 3px 9px rgba(255,255,255,.72),inset 0 -10px 14px rgba(127,18,36,.42),0 0 0 4px rgba(244,63,94,.20),0 14px 26px rgba(190,18,60,.34)!important;
}
.app-shell .hall-order-category-panel .hall-category-tabs{justify-content:flex-start!important;overflow-x:auto!important;overflow-y:visible!important;padding:8px 8px 10px!important;gap:10px!important}
.app-shell .hall-order-category-panel .hall-category-tabs button,
.app-shell .hall-order-category-panel .hall-category-tab{height:58px!important;min-height:58px!important;flex:0 0 clamp(170px,18vw,210px)!important;width:clamp(170px,18vw,210px)!important;min-width:170px!important;max-width:210px!important;font-size:18px!important;line-height:1!important;padding:0 22px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;white-space:nowrap!important;overflow:visible!important;opacity:1!important}
/* POS category line theme-aware final override: only sunrise keeps the warm fixed rail; other moods must not show the آفتابی cream line. */
.app-shell .hall-order-category-panel .hall-category-side{min-height:92px!important;height:auto!important;overflow:visible!important;padding:12px 14px!important;background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 78%,var(--primary) 18%),color-mix(in srgb,var(--surface-strong,#fff) 86%,var(--accent) 12%))!important;border-color:var(--hall-theme-border)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.58),0 10px 26px color-mix(in srgb,var(--primary) 16%,transparent)!important}
.app-shell.theme-sunrise .hall-order-category-panel .hall-category-side{background:linear-gradient(135deg,#fff3ed,#ffe7dd)!important;border-color:#fdba74!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 10px 26px rgba(251,146,60,.10)!important}
.app-shell.theme-midnight .hall-order-category-panel .hall-category-side{background:linear-gradient(135deg,rgba(30,41,59,.96),rgba(17,24,39,.98))!important;border-color:var(--hall-theme-border)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 10px 26px rgba(0,0,0,.28)!important}
@media(max-width:820px){.app-shell .hall-order-category-panel .hall-category-tabs button,.app-shell .hall-order-category-panel .hall-category-tab{flex-basis:150px!important;width:150px!important;min-width:150px!important;font-size:16px!important}}

/* POS inactive channel/category final override: beat older :not(.active) theme rule so inactive pills are orange like the reference. */
.app-shell .pos-channel-tabs button:not(.active),
.app-shell .hall-order-category-panel .hall-category-tabs button:not(.active),
.app-shell .hall-order-category-panel .hall-category-tab:not(.active){
  background:linear-gradient(180deg,#fff3eb 0%,#fb8a42 42%,#c94812 100%)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border-color:rgba(154,52,18,.72)!important;
}

/* POS category strip absolute final: Kaveh screenshot fix.
   The category strip behind نوشیدنی گرم/سرد/دسر must NOT stay the آفتابی cream line in non-sunrise moods. */
html body .app-shell:not(.theme-sunrise) .content[data-current-tab="sales"] #hallSaleForm .hall-category-side,
html body .app-shell:not(.theme-sunrise) .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs{
  background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 70%,var(--primary) 22%),color-mix(in srgb,var(--surface-strong,#fff) 82%,var(--accent) 16%))!important;
  border-color:var(--hall-theme-border)!important;
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--surface-strong,#fff) 45%,transparent),0 10px 26px color-mix(in srgb,var(--primary) 18%,transparent)!important;
}
html body .app-shell.theme-midnight .content[data-current-tab="sales"] #hallSaleForm .hall-category-side,
html body .app-shell.theme-midnight .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs{
  background:linear-gradient(135deg,#111827 0%,#172033 52%,#0f172a 100%)!important;
  border-color:rgba(56,189,248,.32)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 10px 26px rgba(0,0,0,.34)!important;
}
html body .app-shell.theme-sunrise .content[data-current-tab="sales"] #hallSaleForm .hall-category-side,
html body .app-shell.theme-sunrise .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs{
  background:linear-gradient(135deg,#fff3ed,#ffe7dd)!important;
  border-color:#fdba74!important;
}

/* POS category strip real-local fallback: the local/shared build may render .content without data-current-tab. */
html body .app-shell:not(.theme-sunrise) #hallSaleForm .hall-category-side,
html body .app-shell:not(.theme-sunrise) #hallSaleForm .hall-category-tabs{
  background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 70%,var(--primary) 22%),color-mix(in srgb,var(--surface-strong,#fff) 82%,var(--accent) 16%))!important;
  border-color:var(--hall-theme-border)!important;
  box-shadow:inset 0 1px 0 color-mix(in srgb,var(--surface-strong,#fff) 45%,transparent),0 10px 26px color-mix(in srgb,var(--primary) 18%,transparent)!important;
}
html body .app-shell.theme-midnight #hallSaleForm .hall-category-side,
html body .app-shell.theme-midnight #hallSaleForm .hall-category-tabs{
  background:linear-gradient(135deg,#111827 0%,#172033 52%,#0f172a 100%)!important;
  border-color:rgba(56,189,248,.32)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 10px 26px rgba(0,0,0,.34)!important;
}
html body .app-shell.theme-sunrise #hallSaleForm .hall-category-side,
html body .app-shell.theme-sunrise #hallSaleForm .hall-category-tabs{
  background:linear-gradient(135deg,#fff3ed,#ffe7dd)!important;
  border-color:#fdba74!important;
}

/* POS channel/category active pill final restore: active must stay glossy red, never theme-purple. */
html body .app-shell .pos-channel-tabs button.active,
html body .app-shell #hallSaleForm .hall-category-tabs button.active,
html body .app-shell #hallSaleForm .hall-category-tab.active,
html body .app-shell.theme-midnight .pos-channel-tabs button.active,
html body .app-shell.theme-midnight #hallSaleForm .hall-category-tabs button.active,
html body .app-shell.theme-midnight #hallSaleForm .hall-category-tab.active{
  border-color:rgba(248,113,113,.82)!important;
  background:linear-gradient(180deg,#fff0ef 0%,#f04438 38%,#c5122f 100%)!important;
  background-image:linear-gradient(180deg,#fff0ef 0%,#f04438 38%,#c5122f 100%)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 2px 4px rgba(83,27,8,.42)!important;
  box-shadow:inset 0 3px 9px rgba(255,255,255,.72),inset 0 -10px 14px rgba(127,18,36,.42),0 0 0 4px rgba(244,63,94,.20),0 14px 26px rgba(190,18,60,.34)!important;
}
html body .app-shell .pos-channel-tabs button:not(.active),
html body .app-shell #hallSaleForm .hall-category-tabs button:not(.active),
html body .app-shell #hallSaleForm .hall-category-tab:not(.active){
  background:linear-gradient(180deg,#fff3eb 0%,#fb8a42 42%,#c94812 100%)!important;
  background-image:linear-gradient(180deg,#fff3eb 0%,#fb8a42 42%,#c94812 100%)!important;
  border-color:rgba(154,52,18,.72)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* POS fixed dual-line style: sales-channel row and food-category row DO NOT change with workspace theme.
   Both rows share the exact same fixed visual language: active red, inactive orange, white readable text. */
html body .app-shell .pos-channel-tabs button,
html body .app-shell #hallSaleForm .hall-category-tabs button,
html body .app-shell #hallSaleForm .hall-category-tab,
html body .app-shell.theme-midnight .pos-channel-tabs button,
html body .app-shell.theme-midnight #hallSaleForm .hall-category-tabs button,
html body .app-shell.theme-midnight #hallSaleForm .hall-category-tab,
html body .app-shell.theme-emerald .pos-channel-tabs button,
html body .app-shell.theme-emerald #hallSaleForm .hall-category-tabs button,
html body .app-shell.theme-emerald #hallSaleForm .hall-category-tab,
html body .app-shell.theme-berry .pos-channel-tabs button,
html body .app-shell.theme-berry #hallSaleForm .hall-category-tabs button,
html body .app-shell.theme-berry #hallSaleForm .hall-category-tab,
html body .app-shell.theme-sunrise .pos-channel-tabs button,
html body .app-shell.theme-sunrise #hallSaleForm .hall-category-tabs button,
html body .app-shell.theme-sunrise #hallSaleForm .hall-category-tab{
  border-radius:999px!important;
  border:1px solid rgba(154,52,18,.72)!important;
  background:linear-gradient(180deg,#fff3eb 0%,#fb8a42 42%,#c94812 100%)!important;
  background-image:linear-gradient(180deg,#fff3eb 0%,#fb8a42 42%,#c94812 100%)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-weight:950!important;
  text-shadow:0 2px 4px rgba(83,27,8,.42)!important;
  box-shadow:inset 0 3px 8px rgba(255,255,255,.66),inset 0 -9px 12px rgba(93,29,9,.38),0 12px 22px rgba(124,45,18,.28)!important;
  transform:translateY(-1px)!important;
}
html body .app-shell .pos-channel-tabs button.active,
html body .app-shell #hallSaleForm .hall-category-tabs button.active,
html body .app-shell #hallSaleForm .hall-category-tab.active,
html body .app-shell.theme-midnight .pos-channel-tabs button.active,
html body .app-shell.theme-midnight #hallSaleForm .hall-category-tabs button.active,
html body .app-shell.theme-midnight #hallSaleForm .hall-category-tab.active,
html body .app-shell.theme-emerald .pos-channel-tabs button.active,
html body .app-shell.theme-emerald #hallSaleForm .hall-category-tabs button.active,
html body .app-shell.theme-emerald #hallSaleForm .hall-category-tab.active,
html body .app-shell.theme-berry .pos-channel-tabs button.active,
html body .app-shell.theme-berry #hallSaleForm .hall-category-tabs button.active,
html body .app-shell.theme-berry #hallSaleForm .hall-category-tab.active,
html body .app-shell.theme-sunrise .pos-channel-tabs button.active,
html body .app-shell.theme-sunrise #hallSaleForm .hall-category-tabs button.active,
html body .app-shell.theme-sunrise #hallSaleForm .hall-category-tab.active{
  border-color:rgba(248,113,113,.82)!important;
  background:linear-gradient(180deg,#fff0ef 0%,#f04438 38%,#c5122f 100%)!important;
  background-image:linear-gradient(180deg,#fff0ef 0%,#f04438 38%,#c5122f 100%)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:inset 0 3px 9px rgba(255,255,255,.72),inset 0 -10px 14px rgba(127,18,36,.42),0 0 0 4px rgba(244,63,94,.20),0 14px 26px rgba(190,18,60,.34)!important;
}
html body .app-shell #hallSaleForm .hall-category-side,
html body .app-shell #hallSaleForm .hall-category-tabs,
html body .app-shell.theme-midnight #hallSaleForm .hall-category-side,
html body .app-shell.theme-midnight #hallSaleForm .hall-category-tabs,
html body .app-shell.theme-emerald #hallSaleForm .hall-category-side,
html body .app-shell.theme-emerald #hallSaleForm .hall-category-tabs,
html body .app-shell.theme-berry #hallSaleForm .hall-category-side,
html body .app-shell.theme-berry #hallSaleForm .hall-category-tabs,
html body .app-shell.theme-sunrise #hallSaleForm .hall-category-side,
html body .app-shell.theme-sunrise #hallSaleForm .hall-category-tabs{
  background:linear-gradient(135deg,#fff3ed,#ffe7dd)!important;
  border-color:#fdba74!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 10px 26px rgba(251,146,60,.10)!important;
}

/* POS fixed dual-line online scoped override: beat .content[data-current-tab="sales"] button 3D theme rules too. */
html body .app-shell .content[data-current-tab="sales"] .pos-channel-tabs button,
html body .app-shell .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs button,
html body .app-shell .content[data-current-tab="sales"] #hallSaleForm .hall-category-tab,
html body .app-shell.theme-midnight .content[data-current-tab="sales"] .pos-channel-tabs button,
html body .app-shell.theme-midnight .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs button,
html body .app-shell.theme-midnight .content[data-current-tab="sales"] #hallSaleForm .hall-category-tab,
html body .app-shell.theme-emerald .content[data-current-tab="sales"] .pos-channel-tabs button,
html body .app-shell.theme-emerald .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs button,
html body .app-shell.theme-emerald .content[data-current-tab="sales"] #hallSaleForm .hall-category-tab,
html body .app-shell.theme-berry .content[data-current-tab="sales"] .pos-channel-tabs button,
html body .app-shell.theme-berry .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs button,
html body .app-shell.theme-berry .content[data-current-tab="sales"] #hallSaleForm .hall-category-tab,
html body .app-shell.theme-sunrise .content[data-current-tab="sales"] .pos-channel-tabs button,
html body .app-shell.theme-sunrise .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs button,
html body .app-shell.theme-sunrise .content[data-current-tab="sales"] #hallSaleForm .hall-category-tab{
  border-radius:999px!important;
  border:1px solid rgba(154,52,18,.72)!important;
  background:linear-gradient(180deg,#fff3eb 0%,#fb8a42 42%,#c94812 100%)!important;
  background-image:linear-gradient(180deg,#fff3eb 0%,#fb8a42 42%,#c94812 100%)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-weight:950!important;
  text-shadow:0 2px 4px rgba(83,27,8,.42)!important;
  box-shadow:inset 0 3px 8px rgba(255,255,255,.66),inset 0 -9px 12px rgba(93,29,9,.38),0 12px 22px rgba(124,45,18,.28)!important;
  transform:translateY(-1px)!important;
}
html body .app-shell .content[data-current-tab="sales"] .pos-channel-tabs button.active,
html body .app-shell .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs button.active,
html body .app-shell .content[data-current-tab="sales"] #hallSaleForm .hall-category-tab.active,
html body .app-shell.theme-midnight .content[data-current-tab="sales"] .pos-channel-tabs button.active,
html body .app-shell.theme-midnight .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs button.active,
html body .app-shell.theme-midnight .content[data-current-tab="sales"] #hallSaleForm .hall-category-tab.active,
html body .app-shell.theme-emerald .content[data-current-tab="sales"] .pos-channel-tabs button.active,
html body .app-shell.theme-emerald .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs button.active,
html body .app-shell.theme-emerald .content[data-current-tab="sales"] #hallSaleForm .hall-category-tab.active,
html body .app-shell.theme-berry .content[data-current-tab="sales"] .pos-channel-tabs button.active,
html body .app-shell.theme-berry .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs button.active,
html body .app-shell.theme-berry .content[data-current-tab="sales"] #hallSaleForm .hall-category-tab.active,
html body .app-shell.theme-sunrise .content[data-current-tab="sales"] .pos-channel-tabs button.active,
html body .app-shell.theme-sunrise .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs button.active,
html body .app-shell.theme-sunrise .content[data-current-tab="sales"] #hallSaleForm .hall-category-tab.active{
  border-color:rgba(248,113,113,.82)!important;
  background:linear-gradient(180deg,#fff0ef 0%,#f04438 38%,#c5122f 100%)!important;
  background-image:linear-gradient(180deg,#fff0ef 0%,#f04438 38%,#c5122f 100%)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:inset 0 3px 9px rgba(255,255,255,.72),inset 0 -10px 14px rgba(127,18,36,.42),0 0 0 4px rgba(244,63,94,.20),0 14px 26px rgba(190,18,60,.34)!important;
}
html body .app-shell .content[data-current-tab="sales"] #hallSaleForm .hall-category-side,
html body .app-shell .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs,
html body .app-shell.theme-midnight .content[data-current-tab="sales"] #hallSaleForm .hall-category-side,
html body .app-shell.theme-midnight .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs,
html body .app-shell.theme-emerald .content[data-current-tab="sales"] #hallSaleForm .hall-category-side,
html body .app-shell.theme-emerald .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs,
html body .app-shell.theme-berry .content[data-current-tab="sales"] #hallSaleForm .hall-category-side,
html body .app-shell.theme-berry .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs,
html body .app-shell.theme-sunrise .content[data-current-tab="sales"] #hallSaleForm .hall-category-side,
html body .app-shell.theme-sunrise .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs{
  background:linear-gradient(135deg,#fff3ed,#ffe7dd)!important;
  border-color:#fdba74!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 10px 26px rgba(251,146,60,.10)!important;
}


/* POS table picker fixed status colors: table cards must not change with workspace theme.
   Free tables use the same glossy orange as inactive category pills; open-order tables use the same glossy red as active category pills. */
html body .app-shell .hall-table-picker-grid button.hall-table-card,
html body .app-shell.theme-midnight .hall-table-picker-grid button.hall-table-card,
html body .app-shell.theme-emerald .hall-table-picker-grid button.hall-table-card,
html body .app-shell.theme-berry .hall-table-picker-grid button.hall-table-card,
html body .app-shell.theme-sunrise .hall-table-picker-grid button.hall-table-card{
  border-radius:18px!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-weight:950!important;
  text-shadow:0 2px 4px rgba(83,27,8,.42)!important;
  box-shadow:inset 0 3px 8px rgba(255,255,255,.66),inset 0 -9px 12px rgba(93,29,9,.38),0 12px 22px rgba(124,45,18,.28)!important;
}
html body .app-shell .hall-table-picker-grid button.hall-table-card.free,
html body .app-shell.theme-midnight .hall-table-picker-grid button.hall-table-card.free,
html body .app-shell.theme-emerald .hall-table-picker-grid button.hall-table-card.free,
html body .app-shell.theme-berry .hall-table-picker-grid button.hall-table-card.free,
html body .app-shell.theme-sunrise .hall-table-picker-grid button.hall-table-card.free{
  border-color:rgba(154,52,18,.72)!important;
  background:linear-gradient(180deg,#fff3eb 0%,#fb8a42 42%,#c94812 100%)!important;
  background-image:linear-gradient(180deg,#fff3eb 0%,#fb8a42 42%,#c94812 100%)!important;
}
html body .app-shell .hall-table-picker-grid button.hall-table-card.open-order,
html body .app-shell.theme-midnight .hall-table-picker-grid button.hall-table-card.open-order,
html body .app-shell.theme-emerald .hall-table-picker-grid button.hall-table-card.open-order,
html body .app-shell.theme-berry .hall-table-picker-grid button.hall-table-card.open-order,
html body .app-shell.theme-sunrise .hall-table-picker-grid button.hall-table-card.open-order{
  border-color:rgba(248,113,113,.82)!important;
  background:linear-gradient(180deg,#fff0ef 0%,#f04438 38%,#c5122f 100%)!important;
  background-image:linear-gradient(180deg,#fff0ef 0%,#f04438 38%,#c5122f 100%)!important;
  box-shadow:inset 0 3px 9px rgba(255,255,255,.72),inset 0 -10px 14px rgba(127,18,36,.42),0 0 0 4px rgba(244,63,94,.20),0 14px 26px rgba(190,18,60,.34)!important;
}
html body .app-shell .hall-table-picker-grid button.hall-table-card.waiting-payment,
html body .app-shell.theme-midnight .hall-table-picker-grid button.hall-table-card.waiting-payment,
html body .app-shell.theme-emerald .hall-table-picker-grid button.hall-table-card.waiting-payment,
html body .app-shell.theme-berry .hall-table-picker-grid button.hall-table-card.waiting-payment,
html body .app-shell.theme-sunrise .hall-table-picker-grid button.hall-table-card.waiting-payment{
  border-color:rgba(248,113,113,.82)!important;
  background:linear-gradient(180deg,#fff0ef 0%,#f04438 38%,#c5122f 100%)!important;
  background-image:linear-gradient(180deg,#fff0ef 0%,#f04438 38%,#c5122f 100%)!important;
}
html body .app-shell .hall-table-picker-grid button.hall-table-card b,
html body .app-shell .hall-table-picker-grid button.hall-table-card span,
html body .app-shell .hall-table-picker-grid button.hall-table-card small{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
html body .app-shell .hall-table-picker-grid button.hall-table-card.active{
  outline:3px solid rgba(255,255,255,.92)!important;
  outline-offset:2px!important;
}


/* Dashboard reference layout: readiness panel on the physical right; status/stock cards on the left top; public link below them. */
.dashboard-reference-layout{display:grid!important;grid-template-columns:minmax(0,1.58fr) minmax(320px,.92fr)!important;grid-template-areas:"left readiness"!important;gap:16px!important;align-items:start!important;direction:ltr!important}
.dashboard-reference-layout>.dashboard-readiness-panel{grid-area:readiness!important;align-self:start!important;height:348px!important;min-height:348px!important;max-height:348px!important;overflow-y:auto!important;background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 78%,var(--primary-2) 12%),color-mix(in srgb,#fff1f2 72%,var(--accent) 8%))!important;border-color:color-mix(in srgb,var(--primary) 22%,#f9a8d4)!important;box-shadow:0 18px 44px color-mix(in srgb,var(--primary) 14%,transparent)!important;direction:rtl!important}
.dashboard-left-stack{grid-area:left!important;display:grid!important;grid-template-rows:auto auto!important;gap:16px!important;min-width:0!important;direction:rtl!important;align-self:start!important;align-content:start!important}
.dashboard-top-cards{display:grid!important;grid-template-columns:minmax(0,1.75fr) minmax(180px,.95fr)!important;gap:16px!important;align-items:start!important;direction:ltr!important}.dashboard-top-cards>.panel{direction:rtl!important}
.dashboard-low-stock-panel,.dashboard-status-panel{height:150px!important;min-height:150px!important;max-height:150px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important}
.dashboard-status-panel p{margin:4px 0!important;font-weight:800!important}.dashboard-status-panel b{color:var(--text)!important;font-weight:950!important}
.dashboard-public-link-panel{height:160px!important;min-height:126px!important;max-height:160px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important;overflow:hidden!important}
.dashboard-public-link-panel code{display:inline-block!important;max-width:min(100%,520px)!important;direction:ltr!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;margin-top:4px!important;line-height:1.7!important;background:#06283a!important;color:#e0f2fe!important;border-radius:12px!important;padding:8px 14px!important}
.dashboard-reference-layout .dashboard-readiness-panel .section-title{align-items:center!important}.dashboard-reference-layout .dashboard-readiness-panel .badge{order:-1!important;margin-left:auto!important}
@media(max-width:980px){.dashboard-reference-layout{grid-template-columns:1fr!important;grid-template-areas:"readiness" "left"!important;direction:rtl!important}.dashboard-top-cards{grid-template-columns:1fr!important}.dashboard-reference-layout>.dashboard-readiness-panel,.dashboard-low-stock-panel,.dashboard-status-panel,.dashboard-public-link-panel{min-height:auto!important}}

/* Dashboard reference polish: keep compact card headings fully inside their cards. */
.dashboard-low-stock-panel h2,.dashboard-status-panel h2,.dashboard-public-link-panel h2{margin:0 0 10px!important;line-height:1.45!important}
.dashboard-low-stock-panel p,.dashboard-status-panel p,.dashboard-public-link-panel p{margin:4px 0 8px!important;line-height:1.8!important}
.dashboard-public-link-panel{height:230px!important;max-height:230px!important;justify-content:flex-start!important;padding-top:24px!important}

/* Dashboard status card containment: headings must stay visibly inside compact cards. */
.dashboard-low-stock-panel,.dashboard-status-panel{height:170px!important;min-height:170px!important;max-height:170px!important;box-sizing:border-box!important;overflow:hidden!important;justify-content:flex-start!important;padding-top:26px!important}
.dashboard-low-stock-panel h2,.dashboard-status-panel h2{position:static!important;transform:none!important;margin:0 0 12px!important;font-size:clamp(18px,1.25vw,22px)!important;line-height:1.35!important}
.dashboard-status-panel p{margin:2px 0!important;line-height:1.55!important;font-size:14px!important}


/* Customer-facing dashboard: no internal launch checklist or migration/debug panels. */
.dashboard-customer-layout{display:block!important;direction:rtl!important;max-width:980px!important;margin-inline:auto!important}
.dashboard-customer-layout .dashboard-left-stack{width:100%!important}


/* Personnel module: staff is a real personnel profile first, system access second. */
.personnel-workspace{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.personnel-hero{grid-column:1/-1!important;background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 84%,var(--primary) 10%),color-mix(in srgb,var(--surface-strong,#fff) 78%,var(--primary-2) 14%))!important}
.personnel-model-cards{grid-template-columns:repeat(3,minmax(0,1fr))!important}.personnel-model-cards div{border:1px solid var(--border);border-radius:18px;padding:14px;background:color-mix(in srgb,var(--surface-strong,#fff) 88%,var(--primary-2) 8%)}
.settings-workspace{grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr)!important}
@media(max-width:900px){.personnel-workspace,.settings-workspace{grid-template-columns:1fr!important}.personnel-model-cards{grid-template-columns:1fr!important}}


/* HR/personnel module: real personnel file, access, attendance, schedules and payroll. */
.staff-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.staff-create-modal,.personnel-modal-card.staff-create-modal{width:min(820px,94vw)!important;max-width:min(820px,94vw)!important}.staff-profile-grid .wide-field{grid-column:1/-1}.attendance-row.pending-approval{border-color:#f59e0b!important;background:color-mix(in srgb,#fff 82%,#f59e0b 12%)!important}.personnel-workspace .panel h2{line-height:1.35}.personnel-workspace .badge{white-space:nowrap}
@media(max-width:900px){.staff-profile-grid{grid-template-columns:1fr}}


/* Optional field micro-labels should be visible but secondary. */
.field-optional{display:inline!important;font-size:.78em;font-weight:700;color:var(--muted);margin-inline-start:4px;white-space:nowrap;}

.field-label-inline{display:inline-flex;align-items:baseline;gap:4px;white-space:nowrap;width:max-content;}

.field-label-inline .field-optional{display:inline-block!important;font-size:.78em;font-weight:700;color:var(--muted);margin-inline-start:4px;white-space:nowrap;line-height:1;vertical-align:baseline;}


/* Personnel weekly schedule grid: restaurant-style weekly roster, Jalali dates, Saturday starts on the right. */
.staff-schedule-weekly-panel{grid-column:1/-1!important;overflow:hidden!important}.weekly-schedule-board{display:grid;gap:12px;min-width:0}.weekly-schedule-toolbar{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;margin:8px 0 12px}.weekly-schedule-toolbar strong{text-align:center;font-size:18px}.weekly-schedule-scroll{overflow:auto;max-height:640px;border:1px solid var(--border);border-radius:18px;background:color-mix(in srgb,var(--surface-strong,#fff) 88%,transparent);scrollbar-gutter:stable}.weekly-schedule-table{width:100%;min-width:980px;border-collapse:separate;border-spacing:0;direction:rtl}.weekly-schedule-table th,.weekly-schedule-table td{border-bottom:1px solid color-mix(in srgb,var(--border) 76%,transparent);border-left:1px solid color-mix(in srgb,var(--border) 50%,transparent);padding:10px;vertical-align:middle;background:rgba(255,255,255,.42)}.weekly-schedule-table thead th{position:sticky;top:0;z-index:2;background:color-mix(in srgb,var(--primary-2) 12%,var(--surface-strong,#fff));text-align:center}.weekly-schedule-table thead th b{display:block}.weekly-schedule-table thead th span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.weekly-schedule-table .weekend-day b,.weekly-schedule-table .weekend-day span{color:#e11d48!important}.staff-schedule-name{position:sticky;right:0;z-index:3;min-width:170px;text-align:right!important;background:color-mix(in srgb,var(--surface-strong,#fff) 94%,var(--primary) 4%)!important}.staff-schedule-name b,.staff-schedule-name span,.staff-schedule-name em{display:block}.staff-schedule-name span{color:var(--muted);font-size:12px}.staff-schedule-name em{font-style:normal;margin-top:6px;width:max-content;border:1px solid var(--border);border-radius:10px;padding:3px 7px;background:#fff;color:var(--primary);font-weight:900}.weekly-schedule-cell-form{display:grid;grid-template-columns:1fr 1fr;gap:6px;align-items:end;min-width:110px}.weekly-schedule-cell-form label{margin:0!important;font-size:11px;color:var(--muted);gap:3px!important}.weekly-schedule-cell-form input{height:34px!important;min-height:34px!important;padding:5px 6px!important;text-align:center!important;direction:ltr!important;font-size:12px!important}.schedule-save-button{grid-column:1/-1;border:0;border-radius:10px;background:linear-gradient(135deg,#0ea5e9,#2563eb);color:#fff;font-size:12px;font-weight:950;padding:6px 8px;cursor:pointer}.weekly-schedule-note,.weekly-schedule-empty{display:block;color:var(--muted);line-height:1.8}.weekly-schedule-empty{border:1px dashed var(--border);border-radius:16px;padding:16px;text-align:center;background:color-mix(in srgb,var(--surface-strong,#fff) 84%,transparent)}@media(max-width:900px){.weekly-schedule-toolbar{grid-template-columns:1fr}.weekly-schedule-toolbar strong{order:-1}.weekly-schedule-toolbar button{width:100%}.weekly-schedule-scroll{max-height:70vh}.weekly-schedule-table{min-width:900px}}


/* Weekly schedule autosave cells: no submit button, start/end on one line, --:-- placeholders, note uses placeholder only. */
.weekly-schedule-cell-form{grid-template-columns:minmax(66px,1fr) minmax(66px,1fr) 30px!important;grid-template-areas:"start end clear" "note note note";gap:5px!important;align-items:end!important;position:relative;min-width:170px!important}.weekly-schedule-cell-form label{font-size:10px!important}.weekly-schedule-cell-form .shift-start-field{grid-area:start}.weekly-schedule-cell-form .shift-end-field{grid-area:end}.weekly-schedule-cell-form .shift-note-field{grid-area:note}.weekly-schedule-cell-form [data-shift-time]{height:30px!important;min-height:30px!important;width:100%!important;max-width:none!important;font-size:12px!important;padding:3px 5px!important;text-align:center!important;direction:ltr!important;appearance:textfield!important;-webkit-appearance:none!important}.weekly-schedule-cell-form [data-shift-time]::-webkit-calendar-picker-indicator{display:none!important;-webkit-appearance:none!important;opacity:0!important}.weekly-schedule-cell-form [name="note"]{height:30px!important;min-height:30px!important;font-size:11px!important;padding:4px 7px!important}.schedule-save-button{display:none!important}.schedule-clear-decal{grid-area:clear;align-self:end;justify-self:center;width:26px!important;height:30px!important;min-width:26px!important;border:0!important;border-radius:9px!important;padding:0!important;background:linear-gradient(135deg,#ef4444,#dc2626)!important;color:#fff!important;font-size:18px!important;font-weight:950!important;line-height:1!important;box-shadow:0 8px 16px rgba(220,38,38,.22)!important;cursor:pointer}.weekly-schedule-cell-form.schedule-cell-saved{outline:2px solid color-mix(in srgb,var(--primary) 48%,transparent);outline-offset:2px;border-radius:12px;background:color-mix(in srgb,var(--primary-2) 11%,transparent)}


/* Personnel modal workflow: add/list buttons open printable/editable popups. */
.personnel-actions-panel{align-self:start!important}.personnel-action-buttons{display:grid;gap:10px}.personnel-action-buttons button{width:100%}.personnel-modal-overlay{position:fixed;inset:0;z-index:360;display:grid;place-items:center;padding:clamp(92px,12vh,128px) 24px 36px;background:rgba(15,23,42,.44);backdrop-filter:blur(7px)}.personnel-modal-card{width:min(900px,96vw)!important;max-height:calc(100vh - clamp(132px,18vh,172px))!important;overflow:auto!important;position:relative!important}.staff-list-modal{width:min(680px,94vw)!important;max-width:min(680px,94vw)!important}.staff-edit-modal-overlay{place-items:center!important}.staff-user-edit-modal,.staff-user-edit-form.staff-user-edit-modal{width:min(780px,94vw)!important;max-width:min(780px,94vw)!important;justify-self:center!important}.staff-create-modal .modal-close-icon,.staff-list-modal .modal-close-icon{position:absolute!important;top:14px!important;right:14px!important}.staff-list-modal .print-actions{position:sticky;top:0;z-index:4;display:flex;justify-content:flex-start;gap:8px;background:color-mix(in srgb,var(--surface-strong,#fff) 92%,transparent);padding:6px;border-radius:14px}.staff-list-modal .staff-user-list{display:grid;gap:10px}.weekly-schedule-actions{display:flex;align-items:center;gap:8px;justify-content:flex-end}.weekly-schedule-print-decal{width:40px!important;height:40px!important;min-width:40px!important}
@media print{@page weeklyScheduleLandscape{size:A4 landscape;margin:7mm}body.personnel-printing #app{display:none!important}#personnelPrintRoot{display:block!important;direction:rtl;background:#fff;color:#102033;padding:0!important}#personnelPrintRoot[data-personnel-print-target="weekly-schedule"]{page:weeklyScheduleLandscape}body.personnel-printing .app-shell{display:block!important;min-height:auto!important}body.personnel-printing .app-shell>*:not(.content),body.personnel-printing .content>*:not(.personnel-workspace),body.personnel-printing .personnel-workspace>*{display:none!important}body.personnel-printing .content,body.personnel-printing .personnel-workspace{display:block!important;padding:0!important;background:#fff!important;max-width:none!important}body[data-personnel-print-target="staff-list"] .personnel-workspace>.personnel-modal-overlay,body[data-personnel-print-target="staff-list"] .staff-list-modal,body[data-personnel-print-target="weekly-schedule"] .personnel-workspace>.staff-schedule-weekly-panel{display:block!important}#personnelPrintRoot .staff-list-modal,#personnelPrintRoot .staff-schedule-weekly-panel{display:block!important;width:100%!important;box-shadow:none!important;border:0!important;overflow:visible!important;background:#fff!important}.personnel-modal-overlay{position:static!important;display:block!important;padding:0!important;background:#fff!important;backdrop-filter:none!important}.personnel-modal-card{width:100%!important;max-height:none!important;box-shadow:none!important;border:0!important;overflow:visible!important}.personnel-modal-card .print-actions,.personnel-modal-card .modal-close-icon,.staff-user-actions,.personnel-action-buttons,.weekly-schedule-toolbar button{display:none!important}.staff-list-modal .staff-user-edit-form{break-inside:avoid}.staff-schedule-weekly-panel{box-shadow:none!important;border:0!important}.weekly-schedule-scroll{overflow:visible!important;max-height:none!important}.weekly-schedule-table{min-width:0!important;font-size:10px!important}.weekly-schedule-table th,.weekly-schedule-table td{padding:5px!important}.weekly-schedule-cell-form{grid-template-columns:minmax(56px,1fr) minmax(56px,1fr)!important;grid-template-areas:"start end" "note note"!important;min-width:118px!important}.weekly-schedule-cell-form .shift-note-field{display:block!important}.weekly-schedule-cell-form .weekly-print-note{display:block!important;margin-top:4px;font-size:9px!important;line-height:1.45!important;color:#102033!important}.weekly-schedule-cell-form input::placeholder{color:transparent!important}.weekly-schedule-table input{border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important;height:auto!important;min-height:0!important}.weekly-schedule-table th,.weekly-schedule-table td{vertical-align:top!important}#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .staff-schedule-weekly-panel>p,#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-schedule-note,#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .schedule-clear-decal{display:none!important}}

/* Personnel attendance popup: temporary personnel-code flow until fingerprint scanner is connected. */
.staff-attendance-launch{border-color:color-mix(in srgb,var(--accent) 42%,var(--border))!important}
.staff-attendance-modal{max-width:min(560px,calc(100vw - 28px))!important}.staff-attendance-modal-form{display:grid;gap:16px}.attendance-schedule-preview{display:grid;gap:7px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border));border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 10%,var(--surface-strong,#fff)),color-mix(in srgb,var(--accent) 7%,var(--surface,#fff)));color:var(--text)}.attendance-schedule-preview b{font-size:18px;font-weight:950}.attendance-schedule-preview span{font-weight:900;color:var(--primary)}.attendance-schedule-preview small{color:var(--muted);font-weight:750}.attendance-modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.staff-attendance-kiosk-panel{display:grid;align-content:start;gap:12px}

/* Header attendance icon button beside date/time. */
.header-center-group{justify-self:center;display:flex;align-items:center;justify-content:center;gap:12px;direction:rtl;min-width:0}
.header-attendance-button{width:64px!important;height:58px!important;min-width:64px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;display:grid!important;place-items:center!important;cursor:pointer!important;overflow:visible!important;transition:transform .16s ease,filter .16s ease!important}
.header-attendance-button:hover,.header-attendance-button:focus-visible{transform:translateY(-1px) scale(1.04)!important;outline:none!important;filter:drop-shadow(0 12px 18px rgba(15,118,110,.20))}
.header-attendance-button img{width:64px!important;height:58px!important;object-fit:contain!important;display:block!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;transform:none!important}
@media(max-width:760px){.header-center-group{gap:8px}.header-attendance-button{width:54px!important;height:50px!important;min-width:54px!important}.header-attendance-button img{width:54px!important;height:50px!important}.business-date-line{min-width:230px!important;font-size:12px!important}}

/* Header attendance icon corrected: physical left order is خروج، نام رستوران/کافه، then icon. */
.header-actions{direction:ltr!important;justify-self:start!important;display:flex!important;align-items:center!important;gap:12px!important}
.header-actions .header-attendance-button{width:78px!important;height:70px!important;min-width:78px!important;margin-inline-start:2px!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;display:grid!important;place-items:center!important;overflow:visible!important}
.header-actions .header-attendance-button img{width:78px!important;height:70px!important;object-fit:contain!important;display:block!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;transform:none!important}
.header-center-group{justify-self:center!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:0!important;direction:rtl!important;min-width:0!important}
/* Clear readable attendance modal: no dark transparent card over a dark blurred page. */
.attendance-modal-overlay.personnel-modal-overlay{background:rgba(15,23,42,.22)!important;backdrop-filter:blur(3px)!important}
.staff-attendance-modal{max-width:min(620px,calc(100vw - 28px))!important;background:linear-gradient(135deg,#ffffff,#eefdfa)!important;color:#102033!important;border:1px solid rgba(20,184,166,.32)!important;box-shadow:0 28px 70px rgba(15,23,42,.26)!important;opacity:1!important}
.staff-attendance-modal h2,.staff-attendance-modal p,.staff-attendance-modal label,.staff-attendance-modal small{color:#102033!important;-webkit-text-fill-color:#102033!important;text-shadow:none!important}
.staff-attendance-modal h2{font-size:25px!important;font-weight:1000!important;text-align:center!important;margin-top:4px!important}
.staff-attendance-modal p{font-size:15px!important;line-height:1.9!important;text-align:center!important;font-weight:800!important}
.staff-attendance-modal label{font-weight:950!important;font-size:15px!important}
.staff-attendance-modal input{background:#ffffff!important;color:#102033!important;-webkit-text-fill-color:#102033!important;border:1px solid rgba(20,184,166,.38)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 8px 18px rgba(15,23,42,.08)!important;height:48px!important;font-size:17px!important;font-weight:900!important}
.staff-attendance-modal input::placeholder{color:#64748b!important;-webkit-text-fill-color:#64748b!important;opacity:1!important}
.staff-attendance-modal .modal-close-icon{background:#ffffff!important;color:#102033!important;border:1px solid rgba(15,23,42,.12)!important;box-shadow:0 10px 22px rgba(15,23,42,.16)!important}
.staff-attendance-modal .attendance-schedule-preview{background:#e6fffb!important;border-color:rgba(20,184,166,.42)!important;color:#102033!important;box-shadow:0 10px 24px rgba(15,118,110,.10)!important}
.staff-attendance-modal .attendance-schedule-preview b{color:#0f766e!important;-webkit-text-fill-color:#0f766e!important}
.staff-attendance-modal .attendance-schedule-preview span{color:#0f766e!important;-webkit-text-fill-color:#0f766e!important}
.staff-attendance-modal .attendance-schedule-preview small{color:#334155!important;-webkit-text-fill-color:#334155!important}
.staff-attendance-modal .attendance-modal-actions button{min-height:50px!important;font-size:17px!important;font-weight:1000!important}
@media(max-width:760px){.header-actions .header-attendance-button{width:64px!important;height:58px!important;min-width:64px!important}.header-actions .header-attendance-button img{width:64px!important;height:58px!important}}

/* Attendance modal action buttons must stay high-contrast and readable in every theme. */
.staff-attendance-modal .attendance-modal-actions .primary{background:linear-gradient(135deg,#0f766e,#14b8a6)!important;color:#ffffff!important;-webkit-text-fill-color:#ffffff!important;border:0!important;box-shadow:0 14px 28px rgba(15,118,110,.26)!important;opacity:1!important}
.staff-attendance-modal .attendance-modal-actions .secondary{background:linear-gradient(135deg,#f97316,#f59e0b)!important;color:#ffffff!important;-webkit-text-fill-color:#ffffff!important;border:0!important;box-shadow:0 14px 28px rgba(249,115,22,.24)!important;opacity:1!important}
.staff-attendance-modal .attendance-modal-actions .primary:hover,.staff-attendance-modal .attendance-modal-actions .secondary:hover{filter:brightness(1.03)!important;transform:translateY(-1px)!important}

/* Attendance management table: manager can correct clock-in/out before approval. */
.attendance-management-panel{grid-column:1/-1!important;overflow:hidden!important}.attendance-management-scroll{overflow:auto;border:1px solid var(--border);border-radius:18px;background:color-mix(in srgb,var(--surface-strong,#fff) 92%,transparent)}.attendance-management-table{width:100%;min-width:1040px;border-collapse:separate;border-spacing:0;direction:rtl}.attendance-management-table th,.attendance-management-table td{padding:10px;border-bottom:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-left:1px solid color-mix(in srgb,var(--border) 48%,transparent);vertical-align:middle;text-align:center}.attendance-management-table thead th{position:sticky;top:0;z-index:2;background:color-mix(in srgb,var(--primary-2) 14%,var(--surface-strong,#fff));font-weight:950}.attendance-management-table td:first-child{text-align:right;min-width:150px}.attendance-management-table td:first-child b,.attendance-management-table td:first-child small{display:block}.attendance-management-table input{width:86px!important;height:36px!important;min-height:36px!important;text-align:center!important;direction:ltr!important;font-weight:900!important}.attendance-management-table td small{display:block;margin-top:5px;color:var(--muted);font-weight:750}.attendance-management-table .staff-attendance-row-actions{display:flex;gap:6px;justify-content:center;align-items:center}.attendance-management-table .staff-attendance-row-actions button{min-width:72px!important;min-height:36px!important;padding:6px 10px!important}.attendance-management-table .attendance-note-lines{min-width:230px;max-width:360px;margin-inline:auto;line-height:1.9;font-weight:900;color:#0f172a!important;-webkit-text-fill-color:#0f172a!important;white-space:normal}.attendance-management-table .attendance-row.pending-approval>td{background:#f4ff00!important;background-image:none!important}.attendance-management-table .attendance-row.approved-approval>td{background:#39ff14!important;background-image:none!important}.attendance-management-table .attendance-row.schedule-deviation-no-approval>td{background:#ff8c00!important;background-image:none!important}.attendance-management-table .attendance-row.rejected-approval>td{background:#ff4d4d!important;background-image:none!important}.attendance-management-table .attendance-row.pending-approval .badge{background:#ecfe00!important;color:#111827!important;-webkit-text-fill-color:#111827!important}.attendance-management-table .attendance-row.approved-approval .badge{background:#20ff00!important;color:#064e3b!important;-webkit-text-fill-color:#064e3b!important}.attendance-management-table .attendance-row.schedule-deviation-no-approval .badge{background:#fb923c!important;color:#111827!important;-webkit-text-fill-color:#111827!important}

/* Attendance early/late choice panel: keep the original action row hidden after showing the two explicit options. */
.staff-attendance-modal .attendance-modal-actions[hidden],.staff-attendance-modal [data-attendance-clock-in][hidden],.staff-attendance-modal [data-attendance-clock-out][hidden]{display:none!important}
.attendance-exception-choice{display:grid;gap:12px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--warning,#f59e0b) 35%,var(--border));border-radius:18px;background:linear-gradient(135deg,#fff7ed,#ffffff);color:#102033!important;box-shadow:0 14px 32px rgba(245,158,11,.16)}
.attendance-exception-choice[hidden]{display:none!important}
.attendance-exception-choice b{font-size:17px;font-weight:1000;color:#9a3412!important}
.attendance-exception-choice p{margin:0;color:#334155!important;font-weight:800;line-height:1.9}
.attendance-exception-buttons{display:grid;grid-template-columns:1fr;gap:10px}.attendance-exception-buttons label{margin:0}.attendance-exception-buttons textarea{background:#fff!important;color:#172033!important;-webkit-text-fill-color:#172033!important;min-height:68px!important}
.attendance-exception-buttons button{min-height:48px!important;font-size:16px!important;font-weight:1000!important}
/* Attendance exception submit button must be visible without hover/touch cursor. */
.staff-attendance-modal .attendance-exception-buttons .primary{background:linear-gradient(135deg,#0f766e 0%,#0b7f75 48%,#0f766e 100%)!important;color:#ffffff!important;-webkit-text-fill-color:#ffffff!important;border:0!important;box-shadow:0 14px 28px rgba(15,118,110,.30)!important;opacity:1!important;filter:none!important;text-shadow:none!important}
.staff-attendance-modal .attendance-exception-buttons .primary:hover,.staff-attendance-modal .attendance-exception-buttons .primary:focus-visible{filter:brightness(1.03)!important;transform:translateY(-1px)!important}

/* Weekly schedule print center alignment: labels, times, notes, staff fields */
@media print{#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-schedule-table,#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-schedule-table th,#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-schedule-table td,#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-schedule-cell-form,#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-schedule-cell-form label,#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-schedule-cell-form input,#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-print-note,#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .staff-schedule-name,#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .staff-schedule-name b,#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .staff-schedule-name span,#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .staff-schedule-name em{text-align:center!important;justify-items:center!important;align-items:center!important;justify-content:center!important;align-content:center!important}#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-schedule-cell-form label{display:grid!important;place-items:center!important;width:100%!important;margin-inline:auto!important}#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-schedule-cell-form input{direction:rtl!important;margin-inline:auto!important;width:100%!important}#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .staff-schedule-name em{width:auto!important;margin-inline:auto!important}}

/* Weekly schedule print table contract: standard grid, Persian digits, no form-looking Latin fields. */
@media print{#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .staff-schedule-weekly-panel>h2{text-align:center!important;font-size:16px!important;margin:0 0 12px!important;color:#102033!important}#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-schedule-toolbar{display:block!important;text-align:center!important;margin:0 0 16px!important}#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-schedule-toolbar strong{display:block!important;text-align:center!important;font-size:13px!important;font-weight:950!important;color:#102033!important}#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-schedule-table{width:100%!important;table-layout:fixed!important;border-collapse:collapse!important;border-spacing:0!important;direction:rtl!important;font-size:9.2px!important;color:#102033!important;border:1.35px solid #111827!important}#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-schedule-table th,#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-schedule-table td{border:1.05px solid #111827!important;background:#fff!important;padding:4px 3px!important;vertical-align:middle!important;text-align:center!important;height:58px!important;color:#102033!important}#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-schedule-table thead th{position:static!important;height:34px!important;font-weight:950!important}#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .staff-schedule-name{position:static!important;min-width:0!important;width:88px!important;background:#fff!important;text-align:center!important}#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .staff-schedule-name b,#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .staff-schedule-name span,#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .staff-schedule-name em{display:block!important;text-align:center!important;margin-inline:auto!important;color:#102033!important}#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .staff-schedule-name em{border:0!important;background:transparent!important;padding:0!important;margin-top:4px!important;font-weight:850!important;width:auto!important}#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-schedule-cell-form{display:grid!important;grid-template-columns:1fr 1fr!important;grid-template-areas:"start end" "note note"!important;gap:3px 6px!important;min-width:0!important;place-items:center!important}#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-schedule-cell-form label{display:grid!important;place-items:center!important;width:100%!important;margin:0!important;text-align:center!important;color:#102033!important;font-size:8.5px!important;font-weight:850!important}#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-schedule-cell-form input{display:block!important;width:100%!important;border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;margin:1px auto 0!important;height:auto!important;min-height:0!important;direction:rtl!important;text-align:center!important;color:#102033!important;-webkit-text-fill-color:#102033!important;font-size:9px!important;font-weight:900!important}#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] .weekly-print-note{display:block!important;text-align:center!important;margin-top:3px!important;font-size:8.5px!important;line-height:1.45!important;color:#102033!important}#personnelPrintRoot[data-personnel-print-target="weekly-schedule"] input::placeholder{color:transparent!important;-webkit-text-fill-color:transparent!important}}

/* Staff list print table contract: A4 landscape, centered cells, no explanatory owner sentence. */
@media print{@page staffListLandscape{size:A4 landscape;margin:7mm}#personnelPrintRoot[data-personnel-print-target="staff-list"]{page:staffListLandscape}#personnelPrintRoot[data-personnel-print-target="staff-list"] .staff-list-modal>p{display:none!important}#personnelPrintRoot[data-personnel-print-target="staff-list"] .staff-list-modal>h2{text-align:center!important;font-size:16px!important;margin:0 0 14px!important;color:#102033!important}#personnelPrintRoot[data-personnel-print-target="staff-list"] .printable-staff-list{display:block!important}#personnelPrintRoot[data-personnel-print-target="staff-list"] .staff-list-print-table{width:100%!important;table-layout:fixed!important;border-collapse:collapse!important;border-spacing:0!important;direction:rtl!important;font-size:9.4px!important;color:#102033!important;border:1.35px solid #111827!important}#personnelPrintRoot[data-personnel-print-target="staff-list"] .staff-list-print-table th,#personnelPrintRoot[data-personnel-print-target="staff-list"] .staff-list-print-table td{border:1.05px solid #111827!important;background:#fff!important;padding:5px 4px!important;vertical-align:middle!important;text-align:center!important;height:34px!important;color:#102033!important;font-weight:850!important}#personnelPrintRoot[data-personnel-print-target="staff-list"] .staff-list-print-table thead th{font-weight:950!important;height:30px!important}#personnelPrintRoot[data-personnel-print-target="staff-list"] .staff-user-edit-form{display:none!important}}


/* Attendance approval visibility + black fixed identity/schedule fields */
.attendance-management-table .attendance-row:not(.pending-approval) [data-save-attendance-row]{display:none!important}
.attendance-management-table th:nth-child(-n+4),
.attendance-management-table td:nth-child(-n+4),
.attendance-management-table td:nth-child(-n+4) b,
.attendance-management-table td:nth-child(-n+4) small{color:#000!important;-webkit-text-fill-color:#000!important;text-shadow:none!important}
.attendance-management-table .attendance-row.pending-approval [data-save-attendance-row]{display:inline-flex!important;align-items:center;justify-content:center}


/* Attendance status icon + night header readability */
.attendance-management-table .attendance-status-icon{min-width:38px!important;height:30px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;font-size:18px!important;font-weight:1000!important;line-height:1!important}
.app-shell.theme-midnight .attendance-management-table thead th:nth-child(-n+4){color:#fff!important;-webkit-text-fill-color:#fff!important;text-shadow:none!important}


/* Owner profile settings page */
.owner-profile-panel,.owner-password-panel{grid-column:1/-1!important}
.owner-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:end}
.owner-profile-grid label{margin:0}
.owner-profile-grid input[readonly]{background:color-mix(in srgb,var(--surface-strong,#fff) 78%,var(--primary) 8%)!important;color:var(--muted)!important;-webkit-text-fill-color:var(--muted)!important;cursor:not-allowed}
.owner-password-panel{max-width:760px;justify-self:stretch}
@media(max-width:760px){.owner-profile-grid{grid-template-columns:1fr}}


/* Staff list modal: searchable internal scroll + per-staff invite action */
.staff-list-modal{width:min(1180px,96vw)!important;max-height:90vh!important;display:grid!important;grid-template-rows:auto auto minmax(0,1fr) auto!important;overflow:hidden!important}
.staff-list-search{margin:0 0 12px!important;display:grid!important;gap:8px!important}
.staff-list-search input{width:100%!important}
.staff-user-list{max-height:62vh!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;padding-inline:4px 8px!important;scrollbar-gutter:stable both-edges!important}
.staff-user-edit-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))!important}
.staff-user-edit-form[hidden]{display:none!important}
.staff-user-actions{align-items:center!important}
.staff-list-empty{margin:8px 0 0!important;text-align:center!important;font-weight:900!important;color:var(--muted)!important}
@media(max-width:760px){.staff-list-modal{width:96vw!important}.staff-user-list{max-height:68vh!important}.staff-user-actions button{width:100%!important}}


/* Mobile staff list modal fix: full-width, safe viewport, visible search, one-column cards. */
@media(max-width:760px),(pointer:coarse){
  .personnel-modal-overlay{place-items:stretch!important;align-items:start!important;justify-items:stretch!important;padding:max(10px,env(safe-area-inset-top)) 8px max(86px,calc(env(safe-area-inset-bottom) + 78px))!important;overflow:hidden!important}
  .staff-list-modal{width:100%!important;max-width:100%!important;height:calc(100dvh - max(96px,calc(env(safe-area-inset-bottom) + 96px)))!important;max-height:calc(100dvh - max(96px,calc(env(safe-area-inset-bottom) + 96px)))!important;border-radius:22px!important;padding:14px 10px 12px!important;display:grid!important;grid-template-rows:auto auto minmax(0,1fr) auto!important;overflow:hidden!important}
  .staff-list-modal .print-actions{position:static!important;min-height:46px!important;margin:0 0 6px!important;padding:0 4px!important;background:transparent!important;justify-content:flex-start!important;align-items:center!important}
  .staff-list-modal .modal-close-icon{position:static!important;order:2!important;margin-inline-start:auto!important;width:42px!important;height:42px!important;min-width:42px!important}
  .staff-list-modal .modal-print-decal{order:1!important;width:42px!important;height:42px!important;min-width:42px!important}
  .staff-list-modal h2{margin:2px 0 10px!important;text-align:center!important;font-size:24px!important;line-height:1.35!important}
  .staff-list-search{display:grid!important;width:100%!important;margin:0 0 10px!important;gap:6px!important;font-size:14px!important;color:var(--muted)!important;min-width:0!important}
  .staff-list-search input{display:block!important;width:100%!important;min-width:0!important;height:46px!important;padding:10px 13px!important;border-radius:15px!important;background:#fff!important;color:#102033!important;-webkit-text-fill-color:#102033!important;opacity:1!important}
  .staff-user-list{height:auto!important;max-height:none!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding:2px 2px 16px!important;scrollbar-gutter:auto!important;-webkit-overflow-scrolling:touch!important}
  .staff-user-edit-form.order-row{padding:12px 10px!important;margin:0 0 10px!important;border-radius:18px!important;overflow:visible!important;width:100%!important;max-width:100%!important}
  .staff-user-edit-grid{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;width:100%!important;min-width:0!important}
  .staff-user-edit-grid label{width:100%!important;min-width:0!important;font-size:14px!important;text-align:right!important}
  .staff-user-edit-grid input,.staff-user-edit-grid select{width:100%!important;max-width:100%!important;min-width:0!important;height:44px!important;font-size:15px!important;padding:9px 11px!important;border-radius:14px!important}
  .staff-user-status{white-space:normal!important;line-height:1.8!important;text-align:right!important;font-size:13px!important;justify-self:stretch!important}
  .staff-user-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;width:100%!important;max-width:100%!important}
  .staff-user-actions button,.staff-user-actions .secondary,.staff-user-actions .danger-button{width:100%!important;min-width:0!important;height:46px!important;min-height:46px!important;padding:10px 12px!important;font-size:15px!important;text-align:center!important;justify-content:center!important}
  .staff-user-decal{width:100%!important;min-width:0!important;height:46px!important;border-radius:15px!important}
  .staff-user-edit-form small{display:block!important;line-height:1.7!important;font-size:12px!important;text-align:right!important;overflow-wrap:anywhere!important}
}


/* Mobile staff list modal hard override: keep tools/search inside card, never clipped. */
@media(max-width:760px),(pointer:coarse){
  .personnel-modal-overlay:has(.staff-list-modal){display:block!important;padding:12px 8px 92px!important;overflow:hidden!important;place-items:initial!important;align-items:initial!important;justify-items:initial!important}
  .personnel-modal-overlay:has(.staff-list-modal) .staff-list-modal{position:relative!important;inset:auto!important;display:grid!important;grid-template-rows:56px auto auto minmax(0,1fr) auto!important;width:100%!important;max-width:100%!important;height:calc(100dvh - 112px)!important;max-height:calc(100dvh - 112px)!important;margin:0!important;padding:10px 10px 12px!important;overflow:hidden!important;border-radius:24px!important;box-sizing:border-box!important}
  .personnel-modal-overlay:has(.staff-list-modal) .staff-list-modal .print-actions{grid-row:1!important;position:relative!important;top:auto!important;right:auto!important;left:auto!important;z-index:20!important;display:flex!important;align-items:center!important;justify-content:space-between!important;width:100%!important;height:52px!important;min-height:52px!important;margin:0!important;padding:4px 2px!important;overflow:visible!important;background:transparent!important;border-radius:0!important;box-sizing:border-box!important}
  .personnel-modal-overlay:has(.staff-list-modal) .staff-list-modal .modal-close-icon,
  .personnel-modal-overlay:has(.staff-list-modal) .staff-list-modal .modal-print-decal,
  .personnel-modal-overlay:has(.staff-list-modal) .staff-list-modal .print-actions .action-decal-button{position:relative!important;top:auto!important;right:auto!important;left:auto!important;bottom:auto!important;transform:none!important;margin:0!important;display:inline-grid!important;place-items:center!important;width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important;max-height:44px!important;overflow:visible!important;flex:0 0 44px!important;border-radius:15px!important;opacity:1!important;visibility:visible!important}
  .personnel-modal-overlay:has(.staff-list-modal) .staff-list-modal h2{grid-row:2!important;margin:2px 0 12px!important;text-align:center!important;font-size:24px!important;line-height:1.35!important;position:relative!important;z-index:5!important}
  .personnel-modal-overlay:has(.staff-list-modal) .staff-list-search{grid-row:3!important;position:relative!important;z-index:10!important;display:grid!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0 0 12px!important;padding:8px!important;border:1px solid rgba(249,115,22,.18)!important;border-radius:18px!important;background:#fff!important;box-shadow:0 10px 24px rgba(15,23,42,.08)!important;color:#334155!important;box-sizing:border-box!important}
  .personnel-modal-overlay:has(.staff-list-modal) .staff-list-search input{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;height:46px!important;margin:0!important;padding:10px 13px!important;border-radius:15px!important;background:#fff!important;color:#102033!important;-webkit-text-fill-color:#102033!important;box-sizing:border-box!important}
  .personnel-modal-overlay:has(.staff-list-modal) .staff-user-list{grid-row:4!important;min-height:0!important;height:100%!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;padding:2px 2px 18px!important;box-sizing:border-box!important;-webkit-overflow-scrolling:touch!important}
}


/* Staff list master/detail: alphabetical names first, detail form opens after selecting one. */
.staff-list-master-detail{display:grid;grid-template-columns:minmax(240px,.42fr) minmax(0,.58fr);gap:14px;min-height:0;overflow:hidden}.staff-list-option{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;width:100%;border:1px solid var(--border);border-radius:16px;background:color-mix(in srgb,var(--surface-strong,#fff) 92%,transparent);padding:12px 14px;text-align:right;cursor:pointer;box-shadow:var(--soft-shadow);color:var(--text)}.staff-list-option b,.staff-list-option small{display:block}.staff-list-option small{color:var(--muted);font-size:12px;margin-top:4px}.staff-list-option em{font-style:normal;border-radius:999px;background:#ecfdf5;color:#0f766e;padding:6px 10px;font-weight:950}.staff-list-option.active{border-color:color-mix(in srgb,var(--primary) 54%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--primary-2) 18%,var(--surface)),var(--surface));box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 14%,transparent),var(--soft-shadow)}.staff-detail-panel{min-width:0;overflow-y:auto;overflow-x:hidden;padding-inline-end:4px}.staff-detail-placeholder{display:grid;place-items:center;text-align:center;gap:8px;min-height:260px;border:1px dashed color-mix(in srgb,var(--primary) 36%,var(--border));border-radius:20px;background:color-mix(in srgb,var(--primary-2) 8%,var(--surface));padding:20px}.staff-detail-placeholder b{font-size:20px}.staff-detail-placeholder span{color:var(--muted);line-height:1.9}.staff-list-option[hidden]{display:none!important}
@media(max-width:760px),(pointer:coarse){.personnel-modal-overlay:has(.staff-list-modal) .staff-list-modal{grid-template-rows:56px auto auto minmax(0,1fr) auto!important}.staff-list-master-detail{grid-row:4!important;grid-template-columns:1fr!important;grid-template-rows:minmax(150px,.42fr) minmax(0,.58fr)!important;gap:10px!important;min-height:0!important;overflow:hidden!important}.personnel-modal-overlay:has(.staff-list-modal) .staff-user-list{grid-row:auto!important;height:100%!important;min-height:0!important;overflow-y:auto!important}.staff-detail-panel{height:100%!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding:0 2px 12px!important}.staff-list-option{min-height:58px!important;padding:10px 12px!important}.staff-list-option b{font-size:15px!important}.staff-list-option small{font-size:11px!important}.staff-detail-placeholder{min-height:160px!important;padding:16px!important}.staff-detail-placeholder b{font-size:17px!important}.staff-detail-placeholder span{font-size:13px!important}}

/* Owner/manager inline restaurant switcher: restaurant name is the dropdown, never owner/manager name. */
.header-tenant-switcher{display:flex;align-items:center;gap:6px;direction:rtl;font-weight:900;color:var(--text);font-size:12px;white-space:nowrap;border:1px solid color-mix(in srgb,var(--primary) 34%,var(--border));border-radius:999px;padding:5px 8px;background:color-mix(in srgb,var(--surface-strong,#fff) 88%,transparent);box-shadow:var(--soft-shadow)}
.header-tenant-switcher select{min-width:150px;max-width:240px;border:1px solid var(--border);border-radius:999px;background:color-mix(in srgb,var(--surface-strong,#fff) 96%,transparent);color:var(--text);padding:8px 12px;font:inherit;font-weight:950;outline:none;text-align:center;text-align-last:center}
.header-tenant-switcher select:disabled{opacity:.96;cursor:not-allowed;border-style:solid}
.header-tenant-switcher select:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 20%,transparent)}
@media(max-width:760px){.header-tenant-switcher{max-width:min(76vw,310px);justify-content:center}.header-tenant-switcher select{min-width:0;width:min(58vw,220px)}}

/* Plain restaurant name: when only one restaurant is available, no dropdown frame/caption is rendered. */
.header-actions>.header-restaurant-name{display:inline-flex;align-items:center;max-width:280px;min-height:40px;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}


/* Personnel popup final compact override: Kaveh requested the personnel list/edit popups not be wide and fields may wrap into 2-3 lines. Keep this after older staff-list overrides. */
html body .personnel-modal-card.staff-list-modal{width:min(680px,94vw)!important;max-width:min(680px,94vw)!important}
html body .staff-edit-modal-overlay{place-items:center!important}
html body .personnel-modal-card.staff-user-edit-modal,
html body .staff-user-edit-form.staff-user-edit-modal{width:min(780px,94vw)!important;max-width:min(780px,94vw)!important;justify-self:center!important}
html body .personnel-modal-card.staff-create-modal{width:min(820px,94vw)!important;max-width:min(820px,94vw)!important}
html body .staff-user-edit-modal .staff-user-edit-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media(max-width:900px){html body .staff-user-edit-modal .staff-user-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:720px){html body .staff-user-edit-modal .staff-user-edit-grid{grid-template-columns:1fr!important}}

/* Personnel popup scroll + invitation containment fix: keep actions reachable and links inside cards. */
html body .personnel-modal-overlay{padding:16px!important;align-items:center!important;overflow:hidden!important}
html body .personnel-modal-card,
html body .personnel-modal-card.staff-user-edit-modal,
html body .staff-user-edit-form.staff-user-edit-modal{max-height:calc(100dvh - 32px)!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;scrollbar-gutter:stable both-edges!important}
html body .staff-user-edit-modal .staff-user-actions{position:sticky!important;bottom:-14px!important;z-index:5!important;margin:10px -14px -14px!important;padding:12px 14px!important;background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 86%,transparent),var(--surface))!important;border-top:1px solid var(--border)!important;border-radius:0 0 18px 18px!important;display:flex!important;flex-wrap:wrap!important;gap:10px!important}
html body .staff-create-modal>button.primary{position:sticky!important;bottom:0!important;z-index:5!important;width:100%!important;margin-top:10px!important}
.staff-invitations-panel{overflow:hidden!important}
.invitation-row{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;align-items:stretch!important;overflow:hidden!important;min-width:0!important}
.invitation-person,.invitation-controls{display:grid!important;gap:6px!important;min-width:0!important;max-width:100%!important}
.invitation-link{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-all!important;direction:ltr!important;text-align:left!important;padding:10px 12px!important;border-radius:12px!important;background:rgba(8,47,73,.82)!important;color:#dff9ff!important}
.invitation-buttons{display:flex!important;flex-wrap:wrap!important;gap:8px!important;justify-content:flex-start!important;min-width:0!important}
.invitation-buttons button{min-width:min(170px,100%)!important;max-width:100%!important}
@media(max-width:720px){html body .personnel-modal-overlay{padding:10px!important}html body .personnel-modal-card{max-height:calc(100dvh - 20px)!important}html body .staff-user-edit-modal .staff-user-actions{bottom:-14px!important}.invitation-buttons{display:grid!important;grid-template-columns:1fr!important}}

/* Cross-device online responsive hardening pass 78: inventory names must not ellipsis on laptop; negative stock keeps minus on physical left. */
:root{--responsive-page-gap:clamp(10px,1.15vw,18px);--responsive-panel-pad:clamp(12px,1.25vw,20px);--responsive-field-h:clamp(42px,3.7vw,52px)}
html,body,#app{width:100%;max-width:100%;overflow-x:hidden!important}.app-shell{width:100%;max-width:100vw;grid-template-columns:minmax(156px,clamp(156px,14vw,230px)) minmax(0,1fr)!important;overflow-x:hidden!important}.content{min-width:0!important;width:100%!important;max-width:100%!important;padding-inline:clamp(10px,1.55vw,22px)!important}.workspace,.panel,.wide,.menu-layout-grid,.accounting-top-grid,.expense-entry-grid,.pos-workspace,.recipe-workspace{min-width:0!important;max-width:100%!important}.panel{padding:var(--responsive-panel-pad)!important}input,select,textarea,button{max-width:100%!important}label{min-width:0!important}.section-title{min-width:0!important;gap:8px!important}.section-title h2{min-width:0!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.45!important}.badge{white-space:normal!important;line-height:1.5!important}
.panel b,.panel strong,.panel span,.panel small,.panel p,.order-row b,.order-row span,.customer-bank-row b,.customer-bank-row small,.menu-item-details,.operational-expense-info strong,.operational-expense-info small,.cheque-row-main b,.cheque-row-main span{min-width:0!important;overflow-wrap:anywhere!important;word-break:normal!important}.panel input,.panel select,.panel textarea{min-width:0!important;height:auto;min-height:var(--responsive-field-h);line-height:1.45!important;white-space:normal!important}.panel textarea{min-height:84px!important}.row-action-buttons{min-width:0!important;flex-wrap:wrap!important;gap:6px!important}.action-decal-button{flex:0 0 38px!important;width:38px!important;min-width:38px!important;height:38px!important}
.inventory-workspace{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(260px,340px)!important;grid-template-areas:"stock create" "stock import"!important;gap:var(--responsive-page-gap)!important;align-items:start!important;overflow:visible!important}.inventory-edit-panel{grid-area:stock!important;width:100%!important;max-width:100%!important;margin:0!important;height:min(800px,calc(100vh - 104px))!important;min-height:560px!important;padding:var(--responsive-panel-pad)!important}.inventory-create-panel{grid-area:create!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important}.inventory-import-panel{grid-area:import!important;width:100%!important;height:auto!important;min-height:0!important;max-height:360px!important}.inventory-edit-scroll{overflow-y:auto!important;overflow-x:hidden!important;max-width:100%!important;padding:8px!important}.inventory-edit-form{width:100%!important;min-width:0!important;max-width:100%!important;grid-template-columns:minmax(185px,2.3fr) minmax(92px,.72fr) minmax(76px,.55fr) minmax(118px,.86fr) minmax(76px,.55fr) max-content!important;grid-template-areas:"name unit stock price min actions"!important;gap:7px!important;align-items:end!important;padding:10px!important}.inventory-name-field{grid-area:name!important}.inventory-unit-field{grid-area:unit!important}.inventory-stock-field{grid-area:stock!important}.inventory-price-field{grid-area:price!important}.inventory-min-field{grid-area:min!important}.inventory-row-actions{grid-area:actions!important;grid-column:auto!important;min-width:84px!important;justify-self:start!important;align-self:end!important;flex-wrap:nowrap!important}.inventory-readonly-value{min-width:0!important;min-height:42px!important;padding:9px 10px!important;overflow:visible!important;text-overflow:clip!important;white-space:normal!important}.inventory-readonly-text{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.55!important}.inventory-name-readonly .inventory-readonly-text{text-align:right!important}.inventory-number-readonly .inventory-readonly-text{direction:ltr!important;unicode-bidi:isolate!important;text-align:center!important;white-space:nowrap!important}.inventory-price-field .inventory-readonly-text,.inventory-stock-field .inventory-readonly-text,.inventory-min-field .inventory-readonly-text{font-variant-numeric:tabular-nums}.inventory-search-field input{min-height:46px!important}
@media(max-width:1400px){.inventory-workspace{grid-template-columns:1fr!important;grid-template-areas:"stock" "create" "import"!important}.inventory-edit-panel{height:auto!important;max-height:none!important;min-height:0!important}.inventory-edit-scroll{max-height:none!important;overflow-x:hidden!important}.inventory-create-panel,.inventory-import-panel{max-width:760px!important;justify-self:center!important}}
@media(max-width:820px){.app-shell{grid-template-columns:1fr!important}.sidebar{min-height:0!important}.nav{padding:10px 12px!important}.content{padding-inline:10px!important}.inventory-edit-form{grid-template-columns:1fr 1fr!important;grid-template-areas:"name name" "unit stock" "price min" "actions actions"!important}.inventory-row-actions{justify-self:stretch!important;justify-content:flex-start!important}.inventory-row-actions .action-decal-button{flex:1 1 44px!important}.inventory-create-panel,.inventory-import-panel{max-width:100%!important}}
@media(max-width:520px){.inventory-edit-form{grid-template-columns:1fr!important;grid-template-areas:"name" "unit" "stock" "price" "min" "actions"!important}.inventory-readonly-value{justify-content:stretch!important}.inventory-row-actions{flex-wrap:wrap!important}.action-decal-button{flex:1 1 46px!important}}
.menu-layout-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1fr) minmax(0,1.25fr)!important;gap:var(--responsive-page-gap)!important}.menu-edit-form,.account-edit-form,.order-status-row,.customer-bank-row,.operational-expense-row,.purchase-invoice-compact-row,.cheque-list-row,.security-event-row{min-width:0!important;overflow:visible!important}.menu-edit-form input,.account-edit-form input,.account-edit-form select{min-width:0!important}.recipe-row strong,.recipe-row b,.cheque-row-main b,.cheque-row-main span{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}.financial-account-scroll,.menu-panel-scroll,.recipe-list-scroll,.cheque-status-list,.operational-expense-list-body,.purchase-invoice-column-body{overflow-x:hidden!important}.weekly-schedule-scroll,.attendance-table-scroll{max-width:100%;overflow-x:auto!important}.weekly-schedule-table,.attendance-management-table{min-width:760px}
@media(max-width:1250px){.menu-layout-grid{grid-template-columns:1fr 1fr!important;grid-template-areas:"create item" "publish preview"!important}.menu-preview-panel{grid-area:preview}.menu-create-panel{grid-area:create}.item-create-panel{grid-area:item}.menu-publish-panel{grid-area:publish}.expense-entry-grid,.accounting-top-grid,.cheque-status-grid{grid-template-columns:1fr!important}.purchase-invoice-split{grid-template-columns:1fr!important}.recipe-workspace{display:grid!important;grid-template-columns:1fr!important}.pos-hall-main,.hall-order-builder{grid-template-columns:1fr!important}.customer-bank-search,.customer-bank-row{grid-template-columns:1fr!important}}
@media(max-width:760px){.menu-layout-grid{grid-template-columns:1fr!important;grid-template-areas:"create" "item" "publish" "preview"!important}.menu-fixed-panel,.item-create-panel,.menu-preview-panel,.menu-edit-panel,.recipe-form-panel,.recipe-list-panel,.expense-fixed-panel,.purchase-invoice-panel,.financial-account-panel{height:auto!important;max-height:none!important;min-height:0!important}.purchase-invoice-row,.invoice-item-row,.sale-line,.hall-sale-line,.account-edit-form,.operational-expense-doc,.purchase-invoice-compact-meta,.payment-meta-grid,.expense-document-row,.owner-profile-grid,.staff-profile-grid{grid-template-columns:1fr!important}.public-guest-fields,.hall-payment-summary,.stats,.cards,.grid{grid-template-columns:1fr!important}.purchase-invoice-compact-row,.operational-expense-row,.cheque-list-row,.order-row{grid-template-columns:1fr!important}.purchase-invoice-compact-actions,.cheque-row-actions,.row-action-buttons{justify-content:stretch!important}.purchase-invoice-compact-actions>*{flex:1 1 auto!important}.filter-form label,.filter-form button{width:100%!important}}
@media(max-height:760px){.inventory-edit-panel,.inventory-create-panel,.inventory-import-panel,.menu-fixed-panel,.financial-account-panel,.expense-fixed-panel,.purchase-invoice-panel{height:auto!important;max-height:none!important;min-height:0!important}.inventory-edit-scroll,.menu-panel-scroll,.financial-account-scroll{max-height:none!important}}
.cheque-status-box{overflow:visible!important;min-width:0!important}.cheque-status-list{min-width:0!important;overflow-y:auto!important;overflow-x:hidden!important}.cheque-list-row,.cheque-row-main{min-width:0!important;max-width:100%!important}

/* Inventory internal scroll parity pass 79: laptop and desktop must both keep the stock list as an internal scroller. */
.inventory-workspace{align-items:stretch!important;min-height:0!important;max-height:calc(100dvh - 92px)!important;overflow:hidden!important}
.inventory-edit-panel{display:flex!important;flex-direction:column!important;height:calc(100dvh - 116px)!important;max-height:calc(100dvh - 116px)!important;min-height:0!important;overflow:hidden!important}
.inventory-edit-panel>.section-title{flex:0 0 auto!important}.inventory-search-field{flex:0 0 auto!important}.inventory-edit-scroll{flex:1 1 auto!important;min-height:0!important;height:auto!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-gutter:stable!important;overscroll-behavior:contain!important;padding-inline-start:8px!important}
.inventory-create-panel,.inventory-import-panel{max-height:calc(100dvh - 116px)!important;overflow-y:auto!important;min-height:0!important}
@media(max-width:1400px){.inventory-workspace{max-height:calc(100dvh - 92px)!important;overflow:hidden!important}.inventory-edit-panel{height:calc(100dvh - 116px)!important;max-height:calc(100dvh - 116px)!important;min-height:0!important}.inventory-edit-scroll{max-height:none!important;overflow-y:auto!important;min-height:0!important}.inventory-create-panel,.inventory-import-panel{max-height:calc(100dvh - 116px)!important;overflow-y:auto!important}}
@media(max-width:820px){.inventory-workspace{max-height:none!important;overflow:visible!important}.inventory-edit-panel{height:min(72dvh,680px)!important;max-height:min(72dvh,680px)!important}.inventory-create-panel,.inventory-import-panel{max-height:none!important;overflow:visible!important}}
@media(max-height:760px){.inventory-workspace{max-height:calc(100dvh - 82px)!important}.inventory-edit-panel{height:calc(100dvh - 104px)!important;max-height:calc(100dvh - 104px)!important}.inventory-edit-scroll{overflow-y:auto!important;max-height:none!important}}

/* Inventory visible internal scrollbar pass 80: make the stock-list scrollbar obvious on Windows laptop/browser combinations. */
.inventory-edit-scroll{scrollbar-width:auto!important;scrollbar-color:#7c3aed rgba(15,23,42,.16)!important;border-inline-start:1px solid rgba(124,58,237,.22)!important}
.inventory-edit-scroll::-webkit-scrollbar{width:14px!important;height:14px!important}
.inventory-edit-scroll::-webkit-scrollbar-track{background:rgba(15,23,42,.14)!important;border-radius:999px!important;margin-block:6px!important}
.inventory-edit-scroll::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#8b5cf6,#2563eb)!important;border:3px solid rgba(255,255,255,.72)!important;border-radius:999px!important;min-height:48px!important}
.inventory-edit-scroll::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#7c3aed,#1d4ed8)!important}
.app-shell.theme-midnight .inventory-edit-scroll{scrollbar-color:#8b5cf6 rgba(255,255,255,.22)!important;border-inline-start-color:rgba(139,92,246,.4)!important}.app-shell.theme-midnight .inventory-edit-scroll::-webkit-scrollbar-track{background:rgba(255,255,255,.18)!important}.app-shell.theme-midnight .inventory-edit-scroll::-webkit-scrollbar-thumb{border-color:rgba(15,23,42,.88)!important}

/* Selected hall tables final solid red override: fixed in every theme, no white top shine, compact to text width. */
html body .app-shell .content[data-current-tab="sales"] button.hall-occupied-table-chip{flex:0 0 auto!important;min-width:0!important;width:auto!important;max-width:none!important;min-height:58px!important;padding:7px 18px!important;border-radius:18px!important;font-size:22px!important;font-weight:1000!important;line-height:1.15!important;gap:8px!important;background:#dc2626!important;background-image:linear-gradient(180deg,#ef4444 0%,#dc2626 48%,#991b1b 100%)!important;border-color:#fca5a5!important;color:#fff7ed!important;-webkit-text-fill-color:#fff7ed!important;box-shadow:inset 0 -7px 11px rgba(127,29,29,.34),0 3px 0 #7f1d1d,0 10px 18px rgba(185,28,28,.22)!important}
html body .app-shell .content[data-current-tab="sales"] button.hall-occupied-table-chip b{font-size:22px!important;font-weight:1000!important;line-height:1.15!important;letter-spacing:-.2px!important}

/* Draft-selected tables are yellow until the order is submitted, and can be released on the selecting device. */
html body .app-shell .content[data-current-tab="sales"] button.hall-occupied-table-chip.draft-locked{background:#f59e0b!important;background-image:linear-gradient(180deg,#fde68a 0%,#f59e0b 48%,#92400e 100%)!important;border-color:#fbbf24!important;color:#451a03!important;-webkit-text-fill-color:#451a03!important;box-shadow:0 12px 22px rgba(245,158,11,.26)!important}
html body .app-shell .content[data-current-tab="sales"] button.hall-occupied-table-chip.draft-locked b{color:#451a03!important;-webkit-text-fill-color:#451a03!important}

/* Paid hall tables that stay occupied after payment are green and one-click releasable. */
html body .app-shell .content[data-current-tab="sales"] button.hall-occupied-table-chip.paid-held{background:#16a34a!important;background-image:linear-gradient(180deg,#34d399 0%,#16a34a 48%,#065f46 100%)!important;border-color:#86efac!important;color:#fff!important;-webkit-text-fill-color:#fff!important;box-shadow:0 12px 22px rgba(22,163,74,.26)!important}
html body .app-shell .content[data-current-tab="sales"] button.hall-occupied-table-chip.paid-held b,html body .app-shell .content[data-current-tab="sales"] button.hall-occupied-table-chip.paid-held small{color:#fff!important;-webkit-text-fill-color:#fff!important}.hall-occupied-table-chip.paid-held small{font-size:11px!important;font-weight:900!important;line-height:1!important;margin-inline-start:4px!important}.hall-payment-release-choice-modal{width:min(360px,92vw)!important}.hall-payment-release-choice-actions .primary{background:#16a34a!important;border-color:#22c55e!important;color:#fff!important}.hall-payment-release-choice-actions .secondary{background:#dc2626!important;border-color:#f87171!important;color:#fff!important}.hall-paid-held-panel{border-color:#86efac!important;background:linear-gradient(135deg,#f0fdf4,#fff)!important}

/* Hall table picker compact solid text-sized buttons: names like VIP/رضا should not stretch to a grid column. */
html body .app-shell .hall-table-picker-grid{display:flex!important;flex-wrap:wrap!important;align-items:flex-start!important;justify-content:center!important;gap:10px!important;grid-template-columns:none!important}
html body .app-shell .hall-table-picker-grid button.hall-table-card{flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:none!important;min-height:62px!important;padding:10px 22px!important;font-size:28px!important;line-height:1.12!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;vertical-align:middle!important;background:#ea580c!important;background-image:linear-gradient(180deg,#fb923c 0%,#ea580c 50%,#c2410c 100%)!important;box-shadow:inset 0 -8px 12px rgba(124,45,18,.34),0 3px 0 #9a3412,0 10px 18px rgba(124,45,18,.24)!important}
html body .app-shell .hall-table-picker-grid button.hall-table-card b{font-size:28px!important;font-weight:1000!important;line-height:1.12!important;display:block!important;margin:auto!important;text-align:center!important}
html body .app-shell .hall-table-picker-grid button.hall-table-card.free{background:#ea580c!important;background-image:linear-gradient(180deg,#fb923c 0%,#ea580c 50%,#c2410c 100%)!important;box-shadow:inset 0 -8px 12px rgba(124,45,18,.34),0 3px 0 #9a3412,0 10px 18px rgba(124,45,18,.24)!important}



/* POS manager-only VAT/service charge settings */
.pos-channel-settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.pos-channel-actions{margin-inline-start:auto;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pos-charge-settings{margin-inline-start:auto;display:flex;align-items:center;gap:8px;flex-wrap:wrap;border:1px solid var(--border,#dfe7ee);border-radius:18px;padding:8px 10px;background:color-mix(in srgb,var(--surface-strong,#fff) 92%,var(--primary) 6%)}
.pos-charge-toggle{display:inline-flex!important;align-items:center!important;gap:6px!important;margin:0!important;font-weight:900;white-space:nowrap}.pos-charge-toggle input{width:auto!important}
.pos-charge-percent{display:inline-flex!important;align-items:center!important;gap:4px!important;margin:0!important}.pos-charge-percent input{width:54px!important;min-width:54px!important;height:36px!important;text-align:center!important;padding:6px!important}.pos-charge-percent b{font-weight:950;color:var(--text,#102033)}
.pos-cashier-toggle{min-height:46px!important;border-radius:16px!important;padding:9px 18px!important;font-weight:950!important}.pos-cashier-toggle.open{background:#16a34a!important;color:white!important}.pos-cashier-toggle.close{background:#dc2626!important;color:white!important}.cashier-close-choice-overlay{position:fixed;inset:0;z-index:370;display:grid;place-items:center;background:rgba(15,23,42,.38);padding:24px}.cashier-close-choice-modal{width:min(360px,92vw);direction:rtl;background:var(--surface,#fff);color:var(--text,#102033);border:1px solid var(--border,#d7e2ea);border-radius:20px;box-shadow:0 22px 60px rgba(15,23,42,.28);padding:18px;text-align:center;display:grid;gap:12px}.cashier-close-choice-modal h2{margin:0;font-size:20px}.cashier-close-choice-modal p{margin:0;color:var(--muted,#64748b);font-weight:850}.cashier-close-choice-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cashier-close-choice-actions button{min-height:46px}
.hall-receipt-charge-lines{display:grid;gap:4px;margin:6px 0}.hall-receipt-charge-lines small{display:block;color:#496174;font-weight:850}


/* Hall payment-panel service charge controls for cashier */
.hall-service-charge-box{border:1px solid var(--border,#dfe7ee);border-radius:16px;padding:12px;margin:12px 0;background:color-mix(in srgb,var(--surface-strong,#fff) 88%,var(--accent) 7%)}
.hall-service-charge-box h3{margin:0 0 8px;font-size:16px;font-weight:950}.hall-service-charge-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.hall-service-charge-controls label{display:inline-flex!important;align-items:center!important;gap:6px!important;margin:0!important;font-weight:900}.hall-service-charge-controls input[type=radio]{width:auto!important}.hall-service-charge-controls input[name=servicePercent]{width:58px!important;text-align:center!important}.hall-service-charge-controls input[name=serviceAmount]{width:110px!important;text-align:center!important}.hall-service-charge-box small{display:block;margin-top:8px;color:var(--muted,#64748b);font-weight:800}


/* Hall table QR test cards */
.hall-table-qr-section{margin-top:18px;border-top:1px dashed var(--border,#d7e2ea);padding-top:14px}.hall-table-qr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.hall-table-qr-card{display:grid;grid-template-columns:92px minmax(0,1fr);gap:10px;align-items:center;border:1px solid var(--border,#d7e2ea);border-radius:16px;padding:10px;background:var(--surface-strong,#fff)}.hall-table-qr-card img{width:92px;height:92px;border-radius:10px;background:white;padding:4px}.hall-table-qr-card b{display:block;margin-bottom:6px}.hall-table-qr-card input{width:100%;direction:ltr;text-align:left;font-size:11px;padding:7px}.hall-table-qr-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.hall-table-qr-actions .secondary{padding:7px 10px;border-radius:10px;font-size:12px;text-decoration:none}.public-table-notice{margin-top:12px;border:1px solid rgba(255,255,255,.32);border-radius:16px;padding:10px 12px;background:rgba(255,255,255,.12);display:grid;gap:4px}.public-table-notice b{font-size:17px}.public-table-badge{background:#10b981!important;color:white!important}

.hall-table-qr-card.missing-tenant{border-color:#f59e0b!important;background:#fffbeb!important}.hall-table-qr-warning{display:block;margin-top:6px;color:#92400e;font-weight:900;line-height:1.7}
.public-table-notice.blocked,.public-qr-lock{border-color:#fecaca!important;background:#fff1f2!important;color:#9f1239!important}.public-table-notice.blocked b,.public-qr-lock b{color:#9f1239!important}.public-table-notice.blocked span,.public-qr-lock span{color:#9f1239!important}
.public-qr-receipt{display:grid;gap:12px;border:1px solid #99f6e4;border-radius:18px;padding:14px;background:#f0fdfa;color:#0f3f3a}.public-receipt-head{display:grid;gap:6px;border-bottom:1px dashed #5eead4;padding-bottom:10px}.public-receipt-head>b{font-size:20px;color:#0f766e}.public-receipt-lines{display:grid;gap:8px}.public-receipt-line{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;border-bottom:1px dashed rgba(15,118,110,.22);padding-bottom:8px}.public-receipt-line span{font-weight:950}.public-receipt-line small{white-space:nowrap}.public-receipt-line b{color:#92400e;white-space:nowrap}.public-receipt-totals{display:grid;gap:6px}.public-receipt-totals span,.public-receipt-totals strong{display:flex;justify-content:space-between;gap:12px}.public-receipt-totals strong{border-top:1px solid #5eead4;padding-top:8px;font-size:18px;color:#0f766e}@media(max-width:520px){.public-receipt-line{grid-template-columns:1fr;gap:3px}.public-receipt-line b{justify-self:end}}

/* Order status / paid panels stay compact: about five rows then scroll. */
.order-status-panel,.paid-orders-panel{overflow:hidden!important}.order-panel-scroll{display:grid;gap:10px;max-height:390px;overflow-y:auto;overflow-x:hidden;padding:2px 6px 4px;scrollbar-width:thin}.order-panel-scroll::-webkit-scrollbar{width:7px}.order-panel-scroll::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--primary) 32%,transparent);border-radius:10px}

/* Workday closing report: category sales and final tax/total summary. */
.daily-closing-category-preview{margin-top:14px;display:grid;gap:10px}.daily-closing-category-table{width:100%;border-collapse:collapse}.daily-closing-category-table th,.daily-closing-category-table td{text-align:center;padding:8px 10px;border:1px solid var(--border,#dfe7ee)}.daily-closing-category-table th{background:color-mix(in srgb,var(--primary) 12%,var(--surface));font-weight:950}.daily-closing-sheet .daily-closing-category-table th,.daily-closing-sheet .daily-closing-category-table td{border-color:#d7dee8;color:#102033}

/* Cashier-facing workday closing panel inside POS. */
.pos-workday-closing-panel{background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 9%,var(--surface)),var(--surface))!important}.pos-workday-start-form{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto;gap:12px;align-items:end}.pos-workday-closing-panel .button-row{justify-content:flex-start;gap:10px;flex-wrap:wrap}@media(max-width:760px){.pos-workday-start-form{grid-template-columns:1fr}.pos-workday-closing-panel .button-row button{width:100%}}

/* POS workday closing moved below order panels and collapsed by default. */
.compact-pos-workday-closing{padding:0!important;overflow:hidden!important}.compact-pos-workday-closing summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 18px}.compact-pos-workday-closing summary::-webkit-details-marker{display:none}.compact-pos-workday-closing[open]{padding:0 18px 18px!important}.compact-pos-workday-closing[open] summary{margin:0 -18px 12px}.compact-workday-ledger{grid-template-columns:repeat(4,minmax(120px,1fr))!important}


/* Hall table QR printable labels and sizes */
.hall-table-qr-card{grid-template-columns:112px minmax(0,1fr)!important}.hall-table-qr-visual{display:grid;gap:6px;justify-items:center;align-items:center}.hall-table-qr-visual img{width:104px!important;height:104px!important}.hall-table-qr-label{display:block!important;text-align:center!important;font-size:18px!important;font-weight:950!important;color:#102033!important;margin:0!important;line-height:1.25}.table-qr-print-modal{width:min(520px,96vw)!important}.table-qr-print-sheet{direction:rtl;background:#fff;color:#102033;display:grid;place-items:center;gap:14px;padding:28px}.table-qr-print-card{width:calc(var(--qr-print-size) + 44px);min-height:calc(var(--qr-print-size) + 96px);display:grid;place-items:center;gap:10px;border:2px solid #102033;border-radius:18px;padding:18px;background:#fff;text-align:center;break-inside:avoid}.table-qr-print-card img{width:var(--qr-print-size);height:var(--qr-print-size);display:block}.table-qr-print-card strong{font-size:calc(var(--qr-print-size) / 7);font-weight:950;line-height:1.2;color:#000}.table-qr-print-card small{font-size:13px;color:#475569;font-weight:800}.table-qr-print-size-note{margin:0;color:#64748b;font-weight:800}@media print{body:has(#tableQrPrintModalRoot) *{visibility:hidden!important}#tableQrPrintModalRoot,#tableQrPrintModalRoot *{visibility:visible!important}#tableQrPrintModalRoot{position:fixed!important;inset:0!important;background:#fff!important;padding:0!important;display:grid!important;place-items:start center!important}#tableQrPrintModalRoot .print-actions,#tableQrPrintModalRoot .table-qr-print-size-note{display:none!important}#tableQrPrintModalRoot .print-modal{box-shadow:none!important;border:0!important;width:auto!important;padding:0!important}#tableQrPrintModalRoot .table-qr-print-sheet{padding:8mm!important}}

/* Center the three current-register turnover cards in the main content area */
.register-turnover-stats{width:min(1220px,100%);margin-inline:auto!important;justify-content:center!important;grid-template-columns:repeat(3,minmax(260px,1fr))!important;align-items:stretch}.register-turnover-stats article{min-height:148px}@media(max-width:980px){.register-turnover-stats{grid-template-columns:1fr!important;width:100%}}

/* Cashier close modal: make the print action unmistakably visible */
.cashier-close-choice-actions [data-close-cashier-register-print]{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:148px!important;min-height:54px!important;background:linear-gradient(135deg,#0f766e,#2563eb)!important;color:#fff!important;border:0!important;opacity:1!important;visibility:visible!important;box-shadow:0 14px 30px rgba(15,118,110,.32)!important;text-shadow:none!important}.cashier-close-choice-actions [data-close-cashier-register-print]:hover{filter:brightness(1.06)!important;transform:translateY(-1px)}.cashier-close-choice-actions [data-close-cashier-register]{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:128px!important;min-height:54px!important;color:var(--text,#102033)!important;opacity:1!important;visibility:visible!important}


/* Cashier orders popup: order boxes moved out of page into RTL responsive modals */
.pos-orders-launch{border:0;border-radius:17px;padding:13px 18px;font-weight:950;cursor:pointer;background:linear-gradient(135deg,#2563eb,#0f766e);color:#fff;box-shadow:0 16px 32px rgba(37,99,235,.22)}
.cashier-orders-backdrop{position:fixed!important;inset:0!important;z-index:170!important;display:flex!important;align-items:flex-start!important;justify-content:center!important;padding:clamp(14px,3vw,30px)!important;background:rgba(6,18,31,.52)!important;backdrop-filter:blur(8px)!important;overflow-y:auto!important;direction:rtl!important}
.cashier-orders-popup{position:relative!important;width:min(620px,94vw)!important;max-height:min(78vh,680px)!important;overflow:hidden!important;background:var(--surface-strong,#fff)!important;color:var(--text)!important;border:1px solid var(--border)!important;border-radius:26px!important;padding:20px!important;box-shadow:var(--shadow)!important;direction:rtl!important;text-align:right!important}.cashier-orders-close{position:absolute!important;top:14px!important;right:14px!important;z-index:2!important}.cashier-orders-popup .section-title{padding-inline-start:44px!important;align-items:center!important}.cashier-orders-choice-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;margin-top:14px!important}.cashier-orders-choice-actions button{min-height:58px!important;font-size:18px!important}.cashier-orders-popup-list{max-height:390px!important;overflow-y:auto!important;overflow-x:hidden!important;padding-inline-end:4px!important;scrollbar-width:thin!important;display:grid!important;gap:10px!important}.cashier-popup-order-row{direction:rtl!important;text-align:right!important;grid-template-columns:minmax(130px,.34fr) minmax(0,1fr) auto max-content!important}.hall-order-edit-popup{position:relative!important;width:min(760px,94vw)!important;max-height:min(84vh,720px)!important;overflow:hidden!important;background:var(--surface-strong,#fff)!important;color:var(--text)!important;border:1px solid var(--border)!important;border-radius:26px!important;padding:20px!important;box-shadow:0 34px 90px rgba(6,18,31,.34)!important;direction:rtl!important;text-align:right!important;margin-inline-start:14px!important;display:flex!important;flex-direction:column!important}.hall-order-edit-scroll{min-height:0!important;max-height:390px!important;overflow-y:auto!important;overflow-x:hidden!important;display:grid!important;gap:12px!important;padding-inline-end:4px!important}.hall-order-edit-category{border:1px solid var(--border)!important;border-radius:18px!important;padding:12px!important;background:color-mix(in srgb,var(--surface) 88%,var(--primary) 5%)!important}.hall-order-edit-category h3{margin:0 0 10px!important}.hall-order-edit-item{display:grid!important;grid-template-columns:minmax(0,1fr) 128px!important;gap:12px!important;align-items:center!important;margin:8px 0!important}.hall-order-edit-item span{display:grid!important;gap:3px!important}.hall-order-edit-item small{color:var(--muted)!important}.hall-order-edit-actions{display:flex!important;gap:10px!important;flex-wrap:wrap!important;justify-content:flex-start!important;margin-top:12px!important}@media(max-width:860px){.cashier-orders-backdrop{align-items:flex-start!important;display:grid!important;justify-items:center!important;gap:12px!important}.cashier-orders-popup,.hall-order-edit-popup{width:94vw!important;margin:0!important}.cashier-popup-order-row{grid-template-columns:1fr!important}.cashier-popup-order-row .row-action-buttons{justify-content:flex-start!important}.hall-order-edit-item{grid-template-columns:1fr!important}.cashier-orders-choice-actions{grid-template-columns:1fr!important}}

/* Cashier order popup totals/colors: amount matches receipt/table text */
.cashier-popup-order-row>b,.cashier-popup-order-row strong{color:#0f766e!important}


/* Cashier popup tooltip/header actions: keep decals above overlay and put submit/free beside selected table title */
.cashier-orders-popup,.cashier-popup-order-row,.cashier-popup-order-row .row-action-buttons{overflow:visible!important}.cashier-popup-order-row .action-decal-button{position:relative!important;z-index:8!important}.cashier-popup-order-row .action-decal-button::after{top:calc(100% + 7px)!important;bottom:auto!important;left:50%!important;right:auto!important;transform:translateX(-50%) translateY(-4px)!important;z-index:9999!important}.cashier-popup-order-row .action-decal-button:hover::after,.cashier-popup-order-row .action-decal-button:focus-visible::after{transform:translateX(-50%) translateY(0)!important}.hall-sale-table-title{display:flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;flex-wrap:wrap!important;width:fit-content!important;max-width:96%!important;margin:0 auto 12px!important;padding:7px 14px!important}.hall-sale-table-title>span{color:#e11d48!important;font-size:20px!important;font-weight:950!important}.hall-sale-table-title .hall-order-title-actions{margin:0!important;display:inline-flex!important;gap:10px!important;align-items:center!important;justify-content:center!important}.hall-sale-table-title .hall-order-title-actions>button{min-width:128px!important;min-height:42px!important;padding:8px 16px!important}@media(max-width:760px){.hall-sale-table-title{width:100%!important}.hall-sale-table-title .hall-order-title-actions{width:100%!important}.hall-sale-table-title .hall-order-title-actions>button{flex:1 1 128px!important}}


/* Hall order note popup: note moves from bottom of cashier form into the selected-table action line */
.hall-order-note-btn{background:linear-gradient(135deg,#0f766e,#2563eb)!important;color:#fff!important}.hall-order-note-backdrop{position:fixed!important;inset:0!important;z-index:190!important;display:flex!important;align-items:flex-start!important;justify-content:center!important;padding:clamp(90px,14vh,150px) 16px 24px!important;background:rgba(6,18,31,.42)!important;backdrop-filter:blur(7px)!important;direction:rtl!important}.hall-order-note-popup{position:relative!important;width:min(520px,94vw)!important;background:var(--surface-strong,#fff)!important;color:var(--text)!important;border:1px solid var(--border)!important;border-radius:24px!important;padding:20px!important;box-shadow:0 30px 80px rgba(6,18,31,.34)!important;text-align:right!important}.hall-order-note-popup textarea{width:100%!important;min-height:150px!important;resize:vertical!important;margin:8px 0 12px!important}


/* Cashier same-line button sizing only: keep existing colors, equal height/padding, auto width by text */
.app-shell .content[data-current-tab="sales"] .pos-channel-tabs button,
.app-shell .content[data-current-tab="sales"] .pos-channel-actions>.pos-cashier-toggle,
.app-shell .content[data-current-tab="sales"] .pos-channel-actions>.pos-orders-launch,
.app-shell .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs button,
.app-shell .content[data-current-tab="sales"] #hallSaleForm .hall-category-tab,
.app-shell .content[data-current-tab="sales"] #hallSaleForm .hall-sale-table-title .hall-order-title-actions>button{
  height:46px!important;
  min-height:46px!important;
  width:max-content!important;
  min-width:max-content!important;
  max-width:none!important;
  flex:0 0 auto!important;
  padding:9px 18px!important;
  font-size:15px!important;
  font-weight:950!important;
  line-height:1!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:nowrap!important;
  overflow:visible!important;
  box-sizing:border-box!important;
}
.app-shell .content[data-current-tab="sales"] .pos-channel-tabs,
.app-shell .content[data-current-tab="sales"] #hallSaleForm .hall-category-tabs,
.app-shell .content[data-current-tab="sales"] #hallSaleForm .hall-sale-table-title .hall-order-title-actions{
  align-items:center!important;
  gap:10px!important;
}
.app-shell .content[data-current-tab="sales"] #hallSaleForm .hall-sale-table-title .hall-order-title-actions{
  display:inline-flex!important;
  flex-wrap:wrap!important;
  grid-auto-flow:unset!important;
  grid-auto-columns:unset!important;
}
@media(max-width:760px){.app-shell .content[data-current-tab="sales"] #hallSaleForm .hall-sale-table-title .hall-order-title-actions>button{width:max-content!important;min-width:max-content!important;max-width:100%!important}}

/* Cashier button frame parity: match the close-register frame without changing existing button backgrounds */
.app-shell .content[data-current-tab="sales"] .pos-channel-actions>.pos-cashier-toggle,
.app-shell .content[data-current-tab="sales"] .pos-channel-actions>.pos-orders-launch,
.app-shell .content[data-current-tab="sales"] #hallSaleForm .hall-sale-table-title .hall-order-title-actions>button{
  border-radius:999px!important;
  border:1px solid rgba(154,52,18,.72)!important;
  box-shadow:inset 0 3px 8px rgba(255,255,255,.66),inset 0 -9px 12px rgba(93,29,9,.38),0 12px 22px rgba(124,45,18,.28)!important;
}
.app-shell .content[data-current-tab="sales"] #hallSaleForm .hall-sale-table-title .hall-order-title-actions>button:disabled{
  opacity:.58!important;
  filter:saturate(.75)!important;
}

/* Top register metric cards: larger centered text, no open-register turnover captions */
.register-turnover-stats article{
  display:grid!important;
  place-items:center!important;
  text-align:center!important;
  align-content:center!important;
  gap:8px!important;
}
.register-turnover-stats article span{
  font-size:18px!important;
  line-height:1.35!important;
  font-weight:950!important;
  text-align:center!important;
}
.register-turnover-stats article strong{
  font-size:28px!important;
  line-height:1.25!important;
  font-weight:950!important;
  text-align:center!important;
}
.register-turnover-stats article em{
  font-size:15px!important;
  line-height:1.4!important;
  font-weight:900!important;
  text-align:center!important;
}

/* Hall payment popup: move split bill/payment/held-table release out of the page and into a scrollable modal. */
.hall-payment-placeholder{opacity:.92!important}.hall-payment-popup-backdrop{position:fixed!important;inset:0!important;z-index:1200!important;display:flex!important;align-items:flex-start!important;justify-content:center!important;padding:clamp(10px,3vh,24px) clamp(14px,3vw,30px)!important;background:rgba(6,18,31,.52)!important;backdrop-filter:blur(8px)!important;overflow:hidden!important;direction:rtl!important}.hall-payment-popup{position:relative!important;width:min(920px,96vw)!important;max-height:min(86vh,760px)!important;overflow:hidden!important;background:var(--surface-strong,#fff)!important;color:var(--text)!important;border:1px solid var(--border)!important;border-radius:26px!important;padding:18px!important;box-shadow:var(--shadow)!important;direction:rtl!important;text-align:right!important}.hall-payment-popup-close{position:absolute!important;top:14px!important;right:14px!important;left:auto!important;z-index:5!important}.hall-payment-popup-scroll{max-height:calc(min(86vh,760px) - 36px)!important;overflow-y:auto!important;overflow-x:hidden!important;padding:44px 4px 4px!important}.hall-payment-popup .hall-payment-panel{width:100%!important;max-width:100%!important;margin:0!important;box-shadow:none!important}.hall-payment-popup .hall-service-charge-box,.hall-payment-popup .hall-remaining-list{max-width:100%!important}
.hall-payment-popup .hall-service-charge-controls{grid-template-columns:repeat(3,minmax(180px,1fr))!important;align-items:end!important}.hall-payment-popup .hall-service-charge-controls button{align-self:end!important;white-space:nowrap!important}
@media(max-width:760px){.hall-payment-popup .hall-service-charge-controls{grid-template-columns:1fr!important}}
.hall-payment-popup-title{display:flex!important;align-items:center!important;gap:12px!important;direction:rtl!important;margin:0 0 10px!important;padding-inline:2px 48px!important}.hall-payment-popup-title .hall-payment-popup-close{position:static!important;flex:0 0 auto!important}.hall-payment-popup-meta{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:nowrap!important;min-width:0!important;white-space:nowrap!important}.hall-payment-popup-meta span{display:inline-flex!important;align-items:center!important;gap:5px!important;border:1px solid color-mix(in srgb,var(--primary) 18%,var(--border))!important;border-radius:14px!important;padding:9px 12px!important;background:color-mix(in srgb,var(--surface-strong,#fff) 88%,var(--primary) 6%)!important;font-weight:850!important}.hall-payment-popup-meta button{flex:0 0 auto!important;white-space:nowrap!important}.hall-payment-popup .hall-payment-panel>.section-title,.hall-payment-popup .hall-payment-panel>.hall-payment-summary{display:none!important}.hall-payment-popup .hall-payment-panel>button.primary{display:none!important}
@media(max-width:920px){.hall-payment-popup-meta{flex-wrap:wrap!important}.hall-payment-popup-title{align-items:flex-start!important}}
/* Hall payment popup header compact stats and button parity. */
.hall-payment-popup-meta .hall-payment-popup-stat{display:grid!important;grid-template-rows:auto auto!important;gap:2px!important;line-height:1.2!important;min-width:max-content!important}.hall-payment-popup-meta .hall-payment-popup-stat small{font-size:11px!important;color:var(--muted)!important;font-weight:800!important}.hall-payment-popup-meta .hall-payment-popup-stat b{font-size:14px!important;color:var(--text)!important}.hall-payment-popup-meta>button,.hall-payment-popup .hall-service-charge-controls button{min-height:0!important;height:auto!important;padding:9px 14px!important;border:0!important;border-radius:17px!important;line-height:1.2!important;font-size:14px!important;font-weight:950!important;box-shadow:0 12px 24px color-mix(in srgb,var(--primary) 24%,transparent)!important}.hall-payment-popup-meta>button.secondary,.hall-payment-popup .hall-service-charge-controls button.secondary{background:linear-gradient(135deg,var(--primary),var(--accent))!important;color:#fff!important}
/* Hall payment popup centered variable-width stats and service label compaction. */
.hall-payment-popup-meta .hall-payment-popup-stat{justify-items:center!important;text-align:center!important;width:max-content!important;max-width:none!important;padding-inline:14px!important}.hall-payment-popup-meta .hall-payment-popup-stat b{white-space:nowrap!important}.hall-payment-popup .hall-service-charge-controls label:first-child span{white-space:nowrap!important}
/* Hall payment popup service spacing final tune. */
.hall-payment-popup-title{margin-bottom:4px!important}.hall-payment-popup-scroll{padding-top:8px!important}.hall-payment-popup .hall-payment-panel{padding-top:0!important}.hall-payment-popup .hall-service-charge-box{margin-top:0!important}.hall-payment-popup .hall-service-charge-controls{align-items:center!important}.hall-payment-popup .hall-service-charge-controls button{align-self:center!important}.hall-payment-popup .hall-service-charge-controls label:first-child strong{font-weight:1000!important;color:var(--text)!important}
/* Hall payment popup header two-size font bump. */
.hall-payment-popup-meta .hall-payment-popup-stat small{font-size:13px!important}.hall-payment-popup-meta .hall-payment-popup-stat b{font-size:16px!important}.hall-payment-popup-meta>button{font-size:16px!important}
/* Hall payment service/discount identical row lock. */
.hall-payment-popup .hall-service-charge-box{padding:14px 16px!important}.hall-payment-popup .hall-service-charge-controls,.hall-payment-popup .hall-discount-controls{display:grid!important;grid-template-columns:minmax(330px,1fr) minmax(240px,.8fr) max-content!important;gap:10px!important;align-items:center!important}.hall-payment-popup .hall-service-charge-controls>label,.hall-payment-popup .hall-discount-controls>label{display:grid!important;grid-template-columns:max-content auto minmax(76px,112px) max-content!important;align-items:center!important;gap:8px!important;min-height:50px!important;margin:0!important;white-space:nowrap!important}.hall-payment-popup .hall-service-charge-controls>label span,.hall-payment-popup .hall-discount-controls>label span{white-space:nowrap!important}.hall-payment-popup .hall-service-charge-controls>label input[data-number],.hall-payment-popup .hall-discount-controls>label input[data-number]{width:100%!important;min-width:76px!important;text-align:center!important}.hall-payment-popup .hall-service-charge-controls>label b,.hall-payment-popup .hall-discount-controls>label b{white-space:nowrap!important}.hall-payment-popup .hall-service-charge-controls>button,.hall-payment-popup .hall-discount-controls>button{align-self:center!important;justify-self:start!important;width:max-content!important}
@media(max-width:760px){.hall-payment-popup .hall-service-charge-controls,.hall-payment-popup .hall-discount-controls{grid-template-columns:1fr!important}.hall-payment-popup .hall-service-charge-controls>button,.hall-payment-popup .hall-discount-controls>button{justify-self:stretch!important;width:auto!important}}
/* Hall payment radio size restore after discount row alignment. */
.hall-payment-popup .hall-service-charge-controls>label input[type="radio"],.hall-payment-popup .hall-discount-controls>label input[type="radio"]{width:16px!important;height:16px!important;min-width:16px!important;max-width:16px!important;inline-size:16px!important;block-size:16px!important;flex:0 0 16px!important;margin:0!important;padding:0!important;justify-self:center!important;align-self:center!important;accent-color:var(--primary)!important}.hall-payment-popup .hall-service-charge-controls>label input[type="radio"]+input[data-number],.hall-payment-popup .hall-discount-controls>label input[type="radio"]+input[data-number]{justify-self:stretch!important}
/* Hall payment remaining items dropdown. */
.hall-payment-popup .hall-remaining-dropdown{padding:0!important;overflow:hidden!important}.hall-payment-popup .hall-remaining-dropdown>summary{list-style:none!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:13px 16px!important}.hall-payment-popup .hall-remaining-dropdown>summary::-webkit-details-marker{display:none!important}.hall-payment-popup .hall-remaining-dropdown .hall-select-all label{display:inline-flex!important;align-items:center!important;gap:9px!important;margin:0!important}.hall-payment-popup .hall-remaining-dropdown [data-hall-items-subtotal]{margin-inline-start:auto!important;white-space:nowrap!important;font-size:16px!important}.hall-payment-popup .hall-remaining-dropdown-body{display:grid!important;gap:10px!important;padding:0 12px 12px!important}.hall-payment-popup .hall-remaining-dropdown:not([open]) .hall-remaining-dropdown-body{display:none!important}
/* Hall payment native small check/radio controls and sticky dropdown state. */
.hall-payment-popup .hall-service-charge-controls>label input[type="radio"],.hall-payment-popup .hall-discount-controls>label input[type="radio"],.hall-payment-popup .hall-remaining-dropdown input[type="checkbox"]{width:16px!important;height:16px!important;min-width:16px!important;max-width:16px!important;min-height:16px!important;max-height:16px!important;inline-size:16px!important;block-size:16px!important;flex:0 0 16px!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;background:transparent!important;background-image:none!important;outline:0!important;transform:none!important;appearance:auto!important;-webkit-appearance:auto!important;accent-color:var(--primary)!important}.hall-payment-popup .hall-remaining-dropdown>summary input[type="checkbox"]{width:16px!important;height:16px!important;min-width:16px!important;max-width:16px!important;min-height:16px!important;max-height:16px!important}.hall-payment-popup .hall-service-charge-controls>label input[type="radio"]::before,.hall-payment-popup .hall-discount-controls>label input[type="radio"]::before,.hall-payment-popup .hall-remaining-dropdown input[type="checkbox"]::before{content:none!important}
/* Hall payment popup third slight lower in-frame app-shell front layer over channel tabs and scroll retention. */
.hall-payment-popup-backdrop{z-index:1200!important;align-items:flex-start!important;overflow:hidden!important;padding-block:clamp(10px,3vh,24px)!important}.hall-payment-popup{z-index:1201!important;max-height:calc(100vh - 78px)!important;margin-top:calc(-1 * clamp(4px,1vh,8px))!important}.hall-payment-popup-scroll{max-height:calc(100vh - 158px)!important;overscroll-behavior:contain!important;scrollbar-width:thin!important}

/* Hall payment order note only when present; replaces selected amount preview/payment method UI. */
.hall-payment-popup .hall-payment-order-note{display:block!important;margin-top:12px!important;padding:13px 16px!important;border:1px solid color-mix(in srgb,var(--primary) 22%,var(--border))!important;border-radius:16px!important;background:linear-gradient(135deg,color-mix(in srgb,var(--surface-strong,#fff) 94%,var(--primary) 6%),color-mix(in srgb,var(--surface-strong,#fff) 94%,var(--accent) 6%))!important;color:var(--text)!important;font-size:15px!important;font-weight:850!important;line-height:1.8!important;white-space:pre-wrap!important;text-align:right!important;direction:rtl!important}


/* Hall payment cash method choice before table release choice. */
.hall-payment-method-choice-modal{width:min(430px,92vw)!important;text-align:center!important}.hall-payment-method-choice-modal h2{margin:0 0 8px!important}.hall-payment-method-choice-modal p{margin:0 0 16px!important;color:var(--muted)!important;line-height:1.8!important}.hall-payment-method-choice-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}.hall-payment-method-choice-actions button{min-height:48px!important;border-radius:16px!important;font-weight:900!important}.hall-payment-method-choice-actions button:disabled{opacity:.46!important;cursor:not-allowed!important;filter:grayscale(.25)!important}


/* Hall payment method/release choices must sit above the payment popup. */
.hall-payment-method-choice-overlay,.hall-payment-release-choice-overlay{z-index:1400!important;background:rgba(15,23,42,.48)!important;backdrop-filter:blur(8px)!important}.hall-payment-method-choice-modal,.hall-payment-release-choice-modal{position:relative!important;z-index:1401!important}


/* Hall split payment qty steppers: clamp cashier selection to remaining quantity. */
.hall-payment-popup .hall-pay-qty-stepper{display:grid!important;grid-template-columns:38px minmax(58px,76px) 38px!important;gap:6px!important;align-items:center!important;justify-content:end!important;direction:ltr!important}.hall-payment-popup .hall-pay-qty-stepper button{width:38px!important;height:38px!important;min-width:38px!important;padding:0!important;border-radius:12px!important;font-size:20px!important;font-weight:1000!important;line-height:1!important;display:grid!important;place-items:center!important}.hall-payment-popup .hall-pay-qty-stepper input{text-align:center!important;min-width:58px!important;height:38px!important;padding:6px!important}.hall-payment-popup .hall-pay-item{grid-template-columns:auto minmax(0,1fr) max-content!important;align-items:center!important}


/* Cashier orders popup preview decal and printable details modal. */
.cashier-popup-order-row .sale-order-actions{direction:ltr!important;display:flex!important;flex-wrap:nowrap!important;gap:8px!important;justify-content:flex-start!important;align-items:center!important;min-width:134px!important;overflow:visible!important;position:relative!important;z-index:4!important}
.cashier-popup-order-row .sale-delete-decal{order:1!important}
.cashier-popup-order-row .order-preview-decal{order:2!important;background:linear-gradient(135deg,var(--accent),var(--primary))!important;color:#fff!important}
.cashier-popup-order-row .sale-edit-decal{order:3!important}
.order-details-modal{width:min(860px,96vw)!important;max-height:calc(100vh - 116px)!important;overflow-y:auto!important;overflow-x:hidden!important}
.order-details-sheet{display:grid!important;gap:14px!important}
.order-details-summary{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
.order-details-summary p{min-width:0!important}
.order-details-table th,.order-details-table td{vertical-align:top!important}
.order-details-total .hall-payment-summary{margin:0!important;grid-template-columns:repeat(auto-fit,minmax(126px,1fr))!important}
@media(max-width:720px){.order-details-summary{grid-template-columns:1fr!important}.order-details-modal{width:min(96vw,680px)!important}.order-details-table,.order-details-payment-table{font-size:12px!important}.cashier-popup-order-row .sale-order-actions{min-width:0!important}}
@media print{#orderDetailsModalRoot.print-modal-overlay{position:static!important;display:block!important;padding:0!important;background:#fff!important}#orderDetailsModalRoot .order-details-modal{width:100%!important;max-width:none!important;max-height:none!important;box-shadow:none!important;border:0!important;overflow:visible!important}#orderDetailsModalRoot .print-actions{display:none!important}#orderDetailsModalRoot .order-details-sheet{box-shadow:none!important;border:0!important}}
