/* HMS consolidated runtime stylesheet.
   Generated from the verified V9.9.6 cascade without visual redesign. */

/* ===== SOURCE: app.css ===== */
:root{--navy:#101e32;--navy2:#192d47;--teal:#087f74;--mint:#e0f5ef;--orange:#d96b24;--ink:#1b2a41;--muted:#718095;--line:#e3e8ef;--bg:#f4f6fa;--white:#fff;--red:#be3646;--shadow:0 8px 25px #18304b09}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 Tahoma,Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.55}a{color:var(--teal);text-decoration:none}h1,h2,h3,p{margin-top:0}h1{font-size:27px;margin-bottom:5px;line-height:1.5}h2{font-size:20px;margin-bottom:16px}h3{font-size:17px;margin-bottom:10px}input,select,textarea{width:100%;border:1px solid #cfd7e2;border-radius:10px;background:#fff;color:var(--ink);padding:11px 12px;min-width:0}input:focus,select:focus,textarea:focus{outline:3px solid #0c9b8422;border-color:var(--teal)}input[type=checkbox]{width:auto;accent-color:var(--teal)}textarea{resize:vertical;min-height:80px}label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600}small,.small{font-size:13px}.muted{color:var(--muted)}.en{font-family:Arial,sans-serif;direction:ltr;display:inline-block}.btn{border:1px solid var(--line);background:white;border-radius:10px;padding:10px 17px;color:var(--ink);display:inline-flex;gap:7px;align-items:center;justify-content:center;font-size:14px;font-weight:700;white-space:nowrap;line-height:1.7}.btn:hover{background:#f5f8fb}.btn.primary{background:var(--teal);border-color:var(--teal);color:white}.btn.primary:hover{background:#06695f}.btn.dark{background:var(--navy);color:white;border-color:var(--navy)}.btn.danger{color:var(--red);border-color:#f1cbd1;background:#fff7f8}.btn.sm{padding:6px 10px;font-size:13px}.btn.ghost{border:0;background:transparent}.btn svg,.nav-link svg{width:20px;height:20px;flex:none}.stack{display:flex;flex-direction:column;gap:17px}.row{display:flex;gap:12px;align-items:center}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.full{grid-column:1/-1}.check{display:flex;flex-direction:row;align-items:center;gap:9px;font-weight:400}.pill{display:inline-flex;gap:7px;align-items:center;border-radius:7px;padding:4px 9px;background:#eef1f6;font-size:12px;font-weight:700;white-space:nowrap}.pill.available,.pill.served,.pill.closed,.pill.ready,.pill.completed,.pill.issued{background:var(--mint);color:#087568}.pill.occupied,.pill.preparing,.pill.seated{background:#fff0dc;color:#995307}.pill.cleaning,.pill.queued,.pill.confirmed,.pill.open{background:#e7effe;color:#355ca0}.pill.cancelled,.pill.no_show,.pill.void,.pill.disabled{background:#fce8ec;color:#ae3548}.pill.draft{background:#edf0f4;color:#66748b}.card{background:var(--white);border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);padding:22px}.empty{padding:45px 20px;text-align:center;color:var(--muted);border:1px dashed #d6dfeb;border-radius:12px;background:#fafbfd}.error{background:#fff0f2;color:#a7293b;padding:12px 16px;border-radius:10px;font-size:14px}.notice{background:#e8f5f2;color:#136557;padding:12px 16px;border-radius:10px;font-size:14px}.initial{display:grid;place-items:center;min-height:100vh;color:var(--muted)}.auth-body{background:var(--navy);min-height:100vh;display:grid;place-items:center;padding:25px}.auth-card{max-width:470px;width:100%;background:white;border-radius:22px;padding:35px}.auth-card h1{margin-top:18px}.brand-mark{width:47px;height:47px;border-radius:13px;background:#2dd4bf;color:var(--navy);font:bold 30px/47px Arial;text-align:center;flex:none}.auth-layout{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:var(--navy)}.auth-feature{color:white;padding:10vw 6vw;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.auth-feature h1{font-size:48px;max-width:450px;margin:25px 0 20px;line-height:1.6}.auth-feature p{color:#a8b8cb;max-width:420px;font-size:18px}.auth-feature .accent{color:#39d4bd}.auth-form{display:flex;align-items:center;justify-content:center;background:#f4f6fa;padding:40px}.auth-form .auth-card{border:1px solid var(--line);box-shadow:var(--shadow)}.auth-form h2{font-size:26px}.mini-floor{display:flex;gap:14px;margin-top:25px}.mini-floor span{padding:18px 25px;border:1px solid #496077;border-radius:12px;color:#9ae9db;font-family:Arial}.shell{display:grid;grid-template-columns:236px minmax(0,1fr);min-height:100vh}.sidebar{background:var(--navy);color:#d0d9e6;padding:26px 17px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;padding:0 6px 30px}.brand b{font-size:17px;color:white}.brand small{color:#8ea2bc;display:block;font-size:12px;margin-top:2px}.nav-group{font-size:12px;color:#7990ac;padding:10px 14px}.nav-link{display:flex;gap:12px;align-items:center;color:#aabbd0;padding:11px 14px;border-radius:9px;margin-bottom:5px;font-size:14px}.nav-link:hover{background:#1d314c;color:white}.nav-link.active{background:#2dd4bf;color:#102b34;font-weight:700}.sidebar-bottom{margin-top:auto;padding:20px 9px 0;font-size:13px;border-top:1px solid #2a3b52}.sidebar-bottom .avatar{height:37px;width:37px;background:#2d435e;border-radius:50%;display:grid;place-items:center;color:white;font-weight:bold}.sidebar-bottom button{color:#9aacbf}.workspace{min-width:0}.topbar{height:80px;background:white;border-bottom:1px solid var(--line);padding:0 34px;display:flex;align-items:center;justify-content:space-between;gap:15px}.topbar-title{font-size:14px;color:var(--muted)}.topbar-title b{color:var(--ink);margin-inline-end:8px}.date-label{font-size:13px;color:var(--muted)}.online{background:#e4f5ef;color:#12866c;font-size:12px;padding:5px 10px;border-radius:8px}.content{padding:30px 34px 45px;max-width:1800px;margin:auto}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}.page-head p{color:var(--muted);font-size:14px;margin-bottom:0}.eyebrow{color:var(--teal);font:700 12px Arial;letter-spacing:2px;margin-bottom:7px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:25px}.stat{background:white;border:1px solid var(--line);border-radius:13px;padding:19px 22px}.stat .label{font-size:13px;color:var(--muted)}.stat .value{font:700 32px/1.3 Arial;margin:9px 0;color:var(--ink)}.stat small{color:var(--muted)}.stat.primary{background:var(--navy);border-color:var(--navy)}.stat.primary .label,.stat.primary small{color:#b3c4d6}.stat.primary .value{color:#58dfc8}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:23px}.tabs{display:flex;gap:7px;flex-wrap:wrap}.tab{border:1px solid var(--line);border-radius:9px;background:white;padding:8px 16px;font-size:14px;color:var(--muted)}.tab.active{background:var(--navy);border-color:var(--navy);color:white}.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.legend span:before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;background:#0f9683;margin-inline-end:5px}.legend .busy:before{background:#d48a32}.legend .clean:before{background:#4f7ed3}.floor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:18px}.table-card{text-align:right;min-height:200px;border:1px solid #d8e8e3;border-radius:14px;background:white;padding:18px;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s;cursor:pointer}.table-card:hover{transform:translateY(-3px);box-shadow:0 10px 25px #182d4910}.table-card.occupied{border-color:#efd5b6;background:#fffaf4}.table-card.cleaning{border-color:#c9d9f5;background:#f8faff}.table-card.disabled{background:#f0f2f5;border-style:dashed;opacity:.7}.table-top{display:flex;justify-content:space-between;align-items:center}.table-number{font:700 20px Arial}.table-center{display:flex;align-items:center;justify-content:space-between;flex:1;padding:15px 0;gap:8px}.table-center b{font-size:15px}.table-center small{display:block;color:var(--muted);margin-top:2px}.table-bottom{border-top:1px solid #e4e8ee;padding-top:9px;display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--muted)}.seats-symbol{width:53px;height:48px;border:2px solid #91c9bd;border-radius:11px;position:relative;background:#e9f7f2;margin:8px 6px;flex:none;display:grid;place-items:center;color:#208974;font:700 18px Arial}.seats-symbol:before,.seats-symbol:after{content:'';position:absolute;background:#a7d8cb;width:20px;height:5px;left:14px;border-radius:4px}.seats-symbol:before{top:-9px}.seats-symbol:after{bottom:-9px}.occupied .seats-symbol{background:#fff1dd;border-color:#dcb77a;color:#aa7b37}.occupied .seats-symbol:before,.occupied .seats-symbol:after{background:#e5c899}.cleaning .seats-symbol{background:#eaf0fc;border-color:#a0b8df;color:#4f78b5}.cleaning .seats-symbol:before,.cleaning .seats-symbol:after{background:#bed0ed}.section-label{display:flex;justify-content:space-between;align-items:center;margin:25px 0 15px}.section-label h2{margin:0}.data-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px;background:white}.data-table{border-collapse:collapse;width:100%;font-size:14px}.data-table th{background:#f9fafc;color:var(--muted);font-weight:500;text-align:right;white-space:nowrap;padding:13px 17px;border-bottom:1px solid var(--line)}.data-table td{padding:15px 17px;border-bottom:1px solid #eef1f6}.data-table tr:last-child td{border:0}.data-table td b{display:block}.data-table .actions{display:flex;gap:6px;white-space:nowrap}.search{max-width:290px;padding:9px 13px;font-size:14px}.order-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:23px;align-items:start}.catalog{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:13px;margin-top:20px}.menu-tile{padding:16px;border:1px solid var(--line);border-radius:12px;background:white;text-align:right;position:relative;min-height:135px;display:flex;flex-direction:column;justify-content:space-between;gap:15px}.menu-tile:hover{border-color:#66b7a9;box-shadow:var(--shadow)}.menu-tile.unavailable{opacity:.45;cursor:not-allowed}.menu-tile img{width:100%;height:100px;border-radius:8px;object-fit:cover}.menu-tile h3{font-size:15px;margin-bottom:3px}.menu-tile .price{font:700 17px Arial;color:var(--teal)}.menu-tile .add-icon{background:#e7f6f1;color:var(--teal);width:27px;height:27px;border-radius:8px;text-align:center;font-size:22px;line-height:26px}.cart{background:white;border:1px solid var(--line);border-radius:15px;position:sticky;top:20px;overflow:hidden}.cart-head{background:var(--navy);color:white;padding:19px 20px}.cart-head h2{margin:0;font-size:18px}.cart-head small{color:#a9bed3}.cart-body{padding:5px 20px;max-height:420px;overflow:auto}.cart-line{padding:15px 0;border-bottom:1px solid var(--line)}.cart-line.cancelled{opacity:.55}.cart-line.cancelled strong{text-decoration:line-through}.cart-line .line-meta{font-size:12px;color:var(--muted);margin:5px 0}.cart-totals{padding:18px 20px;background:#fbfcfd}.cart-totals .row{margin-bottom:6px;font-size:14px}.cart-totals .grand{border-top:1px solid var(--line);padding-top:12px;margin-top:12px;font-size:18px;font-weight:bold}.cart-actions{padding:0 20px 20px;display:flex;flex-direction:column;gap:10px}.ticket-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.ticket-column{background:#eaf0f5;border-radius:13px;padding:15px}.ticket-column h2{font-size:16px;display:flex;justify-content:space-between}.ticket{background:white;border:1px solid var(--line);border-radius:12px;padding:17px;margin-bottom:13px}.ticket.late{border-top:3px solid var(--orange)}.ticket .ticket-name{font-size:17px;font-weight:700;margin:12px 0 5px}.ticket-notes{padding:8px 10px;background:#fff6e6;color:#976023;border-radius:7px;font-size:13px;margin:10px 0}.ticket .btn{width:100%;margin-top:12px}.dashboard-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:22px}.list-row{display:flex;justify-content:space-between;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);gap:15px}.list-row:last-child{border:0}.list-row small{display:block;color:var(--muted)}.progressbar{height:7px;background:#e9eff4;border-radius:4px;overflow:hidden;margin-top:8px}.progressbar span{height:100%;background:var(--teal);display:block}.settings-form{max-width:800px}.inline-hint{font-size:12px;color:var(--muted);font-weight:400}.divider{border:0;border-top:1px solid var(--line);margin:20px 0}.option-table .row{margin-bottom:9px}.option-table input{font-size:14px;padding:8px}.option-table .price-field{max-width:110px}.table-picker{display:flex;gap:9px;flex-wrap:wrap}.table-option{display:flex;flex-direction:row;align-items:center;gap:7px;border:1px solid var(--line);border-radius:9px;padding:8px 12px;font-weight:400;font-size:14px}.table-option:has(input:checked){border-color:var(--teal);background:var(--mint)}dialog{border:none;border-radius:19px;padding:0;width:min(640px,calc(100vw - 30px));max-height:90vh;color:var(--ink);box-shadow:0 25px 100px #10243b44}dialog::backdrop{background:#0a192a88;backdrop-filter:blur(3px)}.modal-head{padding:20px 25px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.modal-head h2{margin:0}.modal-body{padding:24px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:20px;margin-top:4px}.close-btn{background:#f0f3f7;border:0;border-radius:8px;font-size:22px;color:var(--muted);width:34px;height:34px}#toast{position:fixed;bottom:25px;left:25px;z-index:100;background:var(--navy);color:white;padding:12px 22px;border-radius:11px;box-shadow:0 10px 40px #0002;max-width:calc(100vw - 50px);transform:translateY(100px);opacity:0;transition:all .2s}#toast.show{transform:translateY(0);opacity:1}#toast.bad{background:#a53245}.refresh-error{background:#fff1db;color:#8b5b16;padding:8px 15px;border-radius:8px;font-size:13px}.mobile-menu{display:none}.public-shell{max-width:1000px;margin:auto;padding:30px}.public-head{background:var(--navy);color:white;padding:30px;border-radius:18px;margin-bottom:25px}.public-head h1{margin-top:15px}.public-head p{color:#acbdcf}.public-shell .catalog{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.mobile-date{display:none}@media(max-width:1200px){.content{padding:25px 22px}.topbar{padding:0 22px}.shell{grid-template-columns:205px minmax(0,1fr)}.order-layout{grid-template-columns:minmax(0,1fr) 320px}.stats{gap:12px}.stat{padding:17px}.floor-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}}@media(max-width:900px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;right:0;top:0;width:240px;z-index:50;transform:translateX(100%);transition:transform .2s;box-shadow:-15px 0 40px #10213a33}.sidebar.open{transform:translateX(0)}.mobile-menu{display:inline-flex}.topbar{height:68px}.date-label{display:none}.ticket-columns{gap:10px}.ticket-column{padding:10px}.auth-layout{grid-template-columns:1fr}.auth-feature{display:none}.auth-form{min-height:100vh;padding:20px}.dashboard-grid{grid-template-columns:1fr}}@media(max-width:650px){body{font-size:15px}.content{padding:20px 15px}.topbar{padding:0 15px}.topbar-title{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar .online{display:none}h1{font-size:23px}.page-head{flex-wrap:wrap;gap:15px}.page-head .row{width:100%}.stats{grid-template-columns:1fr 1fr;gap:10px}.stat .value{font-size:28px}.stat{padding:15px}.floor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.table-card{padding:13px;min-height:185px}.table-center{flex-wrap:wrap}.table-bottom{font-size:11px}.table-number{font-size:18px}.seats-symbol{width:40px;height:38px}.seats-symbol:before,.seats-symbol:after{left:8px}.legend{gap:10px}.toolbar{gap:12px}.order-layout{grid-template-columns:1fr}.cart{position:static}.catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.ticket-columns{grid-template-columns:1fr}.grid2{grid-template-columns:1fr}.modal-body{padding:20px}.modal-head{padding:16px 20px}.data-table th,.data-table td{padding:12px}.card{padding:18px}.btn{padding:9px 13px}.public-shell{padding:18px}.public-shell .catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}


/* ===== SOURCE: visual.css ===== */
/* Restaurant & Café — photographic interface update 1.1. No remote dependencies. */
:root{--muted:#64748b}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #14b8a6;outline-offset:3px}
.auth-feature{position:relative;isolation:isolate;background:linear-gradient(180deg,#101e3222,#101e32ed),linear-gradient(90deg,#101e3230,#101e3277),url('photos/restaurant.jpg') center/cover;padding:8vw 5vw;min-height:100vh}
.auth-feature h1{font-size:clamp(34px,3.8vw,60px);text-shadow:0 2px 22px #0004}
.auth-feature p{color:#f0f5f6}.auth-feature .accent{color:#67eed5}
.auth-feature .brand-mark{box-shadow:0 6px 24px #0002}.mini-floor span{background:#101e3270;backdrop-filter:blur(8px);color:#e7fff9;border-color:#c1e0d544;padding:10px 20px;font:14px Tahoma,Arial,sans-serif}
.auth-photo-credit{position:absolute;bottom:24px;color:#dbe5e5;font-size:11px;opacity:.8}
.auth-form{background:#f7f8fa}.auth-form .auth-card{box-shadow:0 20px 70px #101e320b;padding:42px}.auth-card .divider{margin-top:28px}.auth-card label{gap:9px}
.photo-heading{position:relative;isolation:isolate;overflow:hidden;min-height:145px;padding:27px 28px;border:1px solid #dfe8e6;border-radius:18px;background:#edf5f2;align-items:center;gap:22px}
.heading-copy{position:relative;z-index:1;max-width:70%}.heading-copy h1{font-size:26px}.heading-copy p{color:#526c68;max-width:500px}.heading-copy .eyebrow{font-size:10px;letter-spacing:2.4px}
.heading-photo{position:absolute;inset-block:0;left:0;height:100%;width:40%;object-fit:cover;z-index:-2}
.photo-heading:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#edf5f200 0%,#edf5f2d9 30%,#edf5f2 50%);z-index:-1}
.heading-actions{position:relative;z-index:1;justify-content:flex-end;align-self:flex-end}.heading-actions .btn:not(.primary):not(.dark){background:#fffffff2}.heading-actions .pill{background:white}
.sidebar{background:linear-gradient(180deg,#101e32,#12283a);overflow-y:auto}.sidebar .brand{padding-bottom:22px}.sidebar-bottom{margin-top:auto;flex-shrink:0}.content{max-width:1680px}.stat{box-shadow:0 4px 20px #18304b04}.table-card{transition:border-color .15s,transform .15s,box-shadow .15s}
.menu-filters{display:grid;grid-template-columns:2fr 1.2fr 1fr;gap:16px;padding:18px;background:white;border:1px solid var(--line);border-radius:14px;margin-bottom:12px}.menu-filters label{font-size:12px;color:var(--muted)}
.managed-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:20px}.managed-card{border:1px solid var(--line);border-radius:16px;overflow:hidden;background:white;box-shadow:var(--shadow)}.managed-copy{padding:17px}.managed-copy h3{font-size:18px;margin:14px 0 5px}.item-description{color:var(--muted);font-size:13px;min-height:42px;margin-bottom:15px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.managed-copy .price{font-size:18px;color:var(--teal)}.managed-actions{display:flex;gap:6px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:15px;margin-top:16px}.managed-actions .btn:first-child{flex:1}
.item-photo{position:relative;overflow:hidden;background:#e6eee9;flex:none;width:100%}.item-photo img{display:block;width:100%;height:180px;object-fit:cover;margin:0;border-radius:0}.photo-label{position:absolute;bottom:9px;inset-inline-end:9px;background:#101e32c9;color:#fff;font-size:10px;padding:3px 8px;border-radius:5px;pointer-events:none;line-height:1.5}
.menu-tile{overflow:hidden;padding:0;gap:13px;justify-content:flex-start}.menu-tile>.item-photo+div,.menu-tile>.row{margin:0 14px}.menu-tile>.row{margin-top:auto;padding-bottom:15px;flex-wrap:wrap;gap:6px}.menu-tile .item-photo img{height:145px}.menu-tile h3{margin-top:3px}.menu-tile .price{line-height:1.5}.menu-tile.unavailable{opacity:.7}.menu-tile.unavailable img{filter:grayscale(.7)}.menu-tile p{margin:5px 0 0}.menu-tile small{font-size:11px}
.public-head{background:linear-gradient(90deg,#101e3255,#101e32e8),url('photos/restaurant.jpg') center 55%/cover;min-height:265px;padding:30px 35px;display:flex;flex-direction:column;justify-content:flex-end}.public-head>.row{margin-bottom:auto}.public-head h1{font-size:34px;margin-top:40px}.public-head p{color:#d2e7e3;margin-bottom:0}.public-shell .menu-tile .item-photo img{height:185px}.public-shell .catalog{gap:20px}
.image-editor{margin-top:17px;padding:18px;border:1px solid var(--line);border-radius:12px;background:#f7faf9}.image-upload-row{display:flex;gap:18px;align-items:center}.image-upload-row>img{width:120px;height:120px;border-radius:10px;object-fit:cover;background:#e3eeeb;flex:none}.upload-label{position:relative;overflow:hidden;cursor:pointer}.upload-label input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%;padding:0}.upload-label:focus-within{outline:3px solid #14b8a6;outline-offset:3px}.image-editor details{border-top:1px solid var(--line);padding-top:12px}.image-editor summary{cursor:pointer;font-size:13px;font-weight:700;color:var(--teal)}.photo-library{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:14px}.photo-library button{padding:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:white;color:var(--ink);font-size:11px}.photo-library button:hover{border-color:var(--teal)}.photo-library img{width:100%;height:70px;object-fit:cover;display:block}.photo-library span{display:block;padding:5px}.image-editor .inline-hint{line-height:1.8}.image-editor #image-upload-status{color:var(--teal);margin:12px 0}.price small{font-size:11px}
@media(min-width:1600px){.managed-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1100px){.heading-actions{max-width:52%;flex-wrap:wrap}.heading-copy{max-width:65%}.managed-grid{grid-template-columns:repeat(auto-fill,minmax(225px,1fr))}}
@media(max-width:900px){.auth-feature{display:flex;min-height:300px;padding:30px;justify-content:flex-end;background-position:center 58%}.auth-layout{display:flex;flex-direction:column}.auth-feature h1{font-size:28px;line-height:1.45;margin:18px 0 10px}.auth-feature h1 br{display:none}.auth-feature p{font-size:14px;margin-bottom:10px;max-width:100%}.auth-feature .brand-mark{width:36px;height:36px;line-height:36px;font-size:23px}.mini-floor{display:none}.auth-photo-credit{bottom:12px;left:20px;font-size:9px}.auth-form{min-height:0;flex:1;padding:25px 20px}.auth-form .auth-card{padding:28px}.auth-form h2{font-size:24px}}
@media(max-width:650px){.photo-heading{padding:20px;min-height:140px;gap:18px}.heading-copy,.heading-actions{max-width:100%}.heading-copy h1{font-size:23px}.heading-copy p{font-size:12px}.heading-photo{width:55%;opacity:.45}.photo-heading:after{background:linear-gradient(90deg,#edf5f288,#edf5f2 82%)}.heading-actions{justify-content:flex-start}.menu-filters{grid-template-columns:1fr 1fr;padding:14px;gap:12px}.menu-filters label:first-child{grid-column:1/-1}.managed-grid{grid-template-columns:1fr;gap:16px}.managed-card .item-photo img{height:200px}.public-head{padding:23px;min-height:235px}.public-head h1{font-size:26px}.public-shell .catalog{gap:12px}.public-shell .menu-tile .item-photo img{height:135px}.menu-tile .item-photo img{height:125px}.menu-tile>.item-photo+div,.menu-tile>.row{margin-inline:11px}.menu-tile .price{font-size:15px}.public-shell .menu-tile h3{font-size:14px}.image-editor{padding:12px}.image-upload-row{align-items:flex-start;gap:12px;flex-direction:column}.image-upload-row>img{width:100%;height:160px}.image-upload-row>div{width:100%}.upload-label{width:100%}.auth-feature{min-height:250px;padding:24px}.auth-feature h1{font-size:24px}.auth-feature p{max-width:300px}.auth-form{padding:20px 15px}.auth-form .auth-card{padding:25px}.photo-label{font-size:9px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}


/* ===== SOURCE: design.css ===== */
@font-face{font-family:Plex;src:url('fonts/plex-arabic-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Plex;src:url('fonts/plex-arabic-medium.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Plex;src:url('fonts/plex-arabic-semibold.ttf') format('truetype');font-style:normal;font-weight:600;font-display:swap}
@font-face{font-family:Plex;src:url('fonts/plex-arabic-bold.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
:root{--navy:#24493d;--navy2:#17372d;--teal:#315b49;--mint:#edf4eb;--orange:#bb633c;--ink:#253c33;--muted:#737b72;--line:#e7e8df;--bg:#f6f7f2;--red:#a74240;--shadow:0 5px 24px #283d2b04;--copper:#b55e37}
body,button,input,select,textarea,.en,.stat .value,.table-number,.eyebrow,.menu-tile .price,.mini-floor span,.brand-mark{font-family:Plex,Arial,sans-serif!important}
body{font-size:14px;line-height:1.7;background:var(--bg);-webkit-font-smoothing:antialiased}
button,input,select,textarea{font-size:14px}h1,h2,h3,b,strong{font-weight:600}h1{font-size:30px;line-height:1.45;letter-spacing:-.7px}h2{font-size:20px;letter-spacing:-.4px}h3{font-size:17px}p{line-height:1.8}small,.small{font-size:12px}.en{font-variant-numeric:tabular-nums}.eyebrow{font-size:11px;letter-spacing:0;font-weight:500;color:#8a9388}.muted{color:var(--muted)}
a,button{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #bd764e;outline-offset:3px}::selection{background:#e5c7a6;color:#213b30}
.btn{border:1px solid #dde2d9;border-radius:9px;padding:10px 17px;font-size:13px;line-height:1.5;font-weight:500;min-height:40px;transition:background .16s,box-shadow .16s,transform .16s;box-shadow:0 1px 2px #233b2703;gap:8px}.btn:hover{background:#f0f3eb;border-color:#c9d4c5}.btn:active{transform:translateY(1px)}.btn.primary{background:#315b49;border-color:#315b49;color:#fff;box-shadow:0 3px 8px #315b4912}.btn.primary:hover{background:#244536}.btn.dark{background:#263e33;border-color:#263e33}.btn.sm{min-height:32px;padding:6px 12px;font-size:12px}.btn.ghost{box-shadow:none;background:transparent}.btn.danger{background:#fff8f5;border-color:#ead9d1;color:#a74537}.btn svg{width:17px;height:17px}button:disabled{opacity:.5;cursor:not-allowed}
input,select,textarea{border-color:#dee3d9;border-radius:9px;padding:11px 13px;line-height:1.6;background:#fff;color:#2d4035;box-shadow:0 1px 2px #233b2703;min-height:43px}input::placeholder,textarea::placeholder{color:#9ba095;font-weight:400}input:focus,select:focus,textarea:focus{outline:3px solid #315b4910;border-color:#7f9d87}label{font-size:13px;font-weight:500;gap:8px}input[type=checkbox]{min-height:0;accent-color:#315b49;width:17px;height:17px}textarea{min-height:95px}.grid2{gap:22px}.stack{gap:20px}.divider{border-color:var(--line);margin:26px 0}
.card,.data-wrap,.cart{border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow)}.card{padding:25px}.card h2{margin-bottom:20px}.empty{background:#fbfcf8;border:1px dashed #dce3d7;padding:44px 20px;color:#899080;font-size:13px}.error{background:#fff0eb;color:#a13a28;font-size:13px;border:1px solid #f0d6cb}.notice{background:#eef4e9;color:#365a35;border:1px solid #dce7d5}.inline-hint{font-size:11px;color:#7c8779;line-height:1.9}
.pill{border-radius:6px;font-size:10px;font-weight:500;padding:4px 9px;background:#f1f1eb;color:#707a6b;gap:5px}.pill:before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor;flex:none}.pill.available,.pill.served,.pill.closed,.pill.ready,.pill.completed,.pill.issued{background:#edf4e9;color:#4c7643}.pill.occupied,.pill.preparing,.pill.seated{background:#fff2df;color:#a46c26}.pill.cleaning,.pill.queued,.pill.confirmed,.pill.open{background:#edf0f8;color:#6576a3}.pill.cancelled,.pill.no_show,.pill.void,.pill.disabled{background:#faece7;color:#a66c58}.pill.draft{background:#f2f2ec;color:#777f70}
/* Application frame */
.shell{grid-template-columns:238px minmax(0,1fr)}.sidebar{background:#fff;color:#64715f;border-left:1px solid var(--line);padding:28px 17px 16px;gap:0;overflow-y:auto;scrollbar-width:thin}.brand{gap:11px;align-items:center;padding:0 9px 24px;min-height:70px}.brand-mark{width:40px;height:44px;border-radius:11px;background:#315b49;color:#fff;display:grid;place-items:center;line-height:1;box-shadow:none}.brand-mark svg{width:27px;height:30px}.brand b{color:#2e4435;font-size:14px;display:block;line-height:1.55;overflow-wrap:anywhere}.brand small{color:#8b9484;letter-spacing:1.2px;font:8px Plex,Arial,sans-serif;margin-top:4px}.nav-group{display:flex;justify-content:space-between;color:#97a08f;font-size:10px;padding:13px 14px 9px}.nav-group span{font-size:9px;letter-spacing:1px}.nav-group.secondary{margin-top:15px;border-top:1px solid #eff0e9;padding-top:22px}.nav-link{font-size:12px;font-weight:400;color:#73806a;padding:11px 13px;gap:12px;border-radius:8px;margin-bottom:3px;min-height:42px}.nav-link svg{width:18px;height:18px;stroke-width:1.5}.nav-link:hover{background:#f5f7f0;color:#315b49}.nav-link.active{background:#edf2e6;color:#325335;font-weight:600}.nav-dot{width:5px;height:5px;border-radius:50%;background:#648454;margin-inline-start:auto}.sidebar-venue{margin:24px 7px 20px;position:relative;min-height:95px;border-radius:11px;overflow:hidden;background:#243c31;color:white;display:flex;align-items:flex-end;padding:13px;flex-shrink:0}.sidebar-venue img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.28}.sidebar-venue span{position:relative}.sidebar-venue small{font-size:10px;color:#dce5d2;display:block}.sidebar-venue b{font-size:12px}.sidebar-bottom{border-top:1px solid var(--line);padding:16px 5px 0;color:#344932;font-size:12px;margin-top:auto}.sidebar-bottom small{font-size:10px;color:#8c9684}.sidebar-bottom .avatar,.topbar-avatar{background:#f0e8dc;color:#9b704b;border:1px solid #e9dcc9;border-radius:11px;display:grid;place-items:center;font-weight:500;flex:none}.sidebar-bottom .avatar{width:34px;height:34px}.sidebar-bottom .row{gap:10px}.logout-icon{margin-inline-start:auto;padding:6px!important;color:#919b89!important}.topbar-avatar{width:31px;height:31px;font-size:12px}.topbar{height:76px;padding:0 36px;border-color:#e7e9df;background:#fff;gap:20px}.topbar-title{display:flex;align-items:center;gap:13px;font-size:11px;color:#99a18f}.topbar-title b{font-weight:500;color:#56684d;margin:0}.topbar-title i{font-style:normal;color:#c6cebd}.topbar-tools{display:flex;gap:18px;align-items:center}.date-label{font-size:11px;color:#88927e;display:flex;gap:8px;align-items:center}.date-label svg{width:14px;height:14px}.topbar-menu{font-size:11px;color:#6d7d62;border-inline-start:1px solid var(--line);padding-inline-start:17px}.topbar .btn{padding:5px;min-height:30px}.content{padding:33px 36px 50px;max-width:1560px}.page-head{padding:0;min-height:0;margin-bottom:28px;align-items:center;background:none;border:0;border-radius:0;overflow:visible;gap:25px}.heading-copy{max-width:100%}.heading-copy h1{font-size:29px;margin:7px 0 6px}.heading-copy p{font-size:12px;color:#8a9382}.heading-copy .eyebrow{font-size:10px;letter-spacing:0;color:#9ca48f}.heading-actions{align-self:center;max-width:none;gap:8px}.heading-actions .btn:not(.primary):not(.dark){background:#fff}.nav-backdrop{display:none}
/* Stats and dining room */
.stats{gap:16px;margin-bottom:28px}.stat{position:relative;padding:19px 21px;border-radius:13px;background:#fff;box-shadow:none;min-height:145px;border-color:#e4e9de;overflow:hidden}.stat .label{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#819074;gap:10px}.stat .value{font-size:35px;line-height:1.2;letter-spacing:-1px;font-weight:500;margin:10px 0 9px;color:#314a32;font-variant-numeric:tabular-nums}.stat .value small{font-size:12px}.stat small{font-size:10px;color:#95a18b}.stat-mark{width:29px;height:29px;border-radius:8px;background:#f5f7ef;color:#9cab8d;display:grid;place-items:center}.stat-mark svg{width:15px;height:15px}.stat.primary{background:#eaf0e1;border-color:#dfe7d4}.stat.primary .label,.stat.primary small{color:#70865e}.stat.primary .value{color:#375632}.stat.primary .stat-mark{background:#dce6cf;color:#6a8557}.stat:nth-child(3) .stat-mark{background:#faf0e4;color:#bb946c}.stat:nth-child(4) .stat-mark{background:#edf0f9;color:#8b9abb}
.toolbar{gap:15px;margin-bottom:22px}.tabs{gap:5px}.tab{font-size:11px;border-radius:7px;padding:8px 14px;border-color:transparent;background:transparent;color:#8a9580;min-height:35px}.tab:hover{background:#ecefe4}.tab.active{background:#fff;color:#395632;border:1px solid #e0e6d7;box-shadow:0 2px 4px #314b2405;font-weight:500}.legend{gap:14px;font-size:10px;color:#8c9782}.legend span:before{width:6px;height:6px;background:#6e915e}.legend .busy:before{background:#c99d60}.legend .clean:before{background:#8a9bbc}.floor-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:17px;background:#eff2e9;border:1px solid #e7ecde;border-radius:17px;padding:20px}.table-card{padding:17px 18px 13px;border:1px solid #dde5d3;border-radius:13px;min-height:220px;box-shadow:0 3px 7px #2b492003}.table-card:hover{transform:translateY(-2px);box-shadow:0 9px 19px #31492b0b;border-color:#a4b696}.table-top{align-items:center}.table-number{font-weight:600;font-size:17px;color:#46583d;overflow-wrap:anywhere}.table-center{flex-direction:column-reverse;justify-content:center;gap:14px;padding:23px 0 17px}.table-center>div{display:flex;align-items:center;gap:8px}.table-center b{font-size:11px;color:#7b8b6c;font-weight:400}.table-center small{font-size:10px;color:#a0ac93;margin:0;border-inline-start:1px solid #e0e7d8;padding-inline-start:8px}.seats-symbol{width:69px;height:51px;border-radius:13px;border:1px solid #b5c9a4;background:#edf3e5;color:#829b6b;font-weight:500;font-size:18px;margin:3px 0;box-shadow:inset 0 0 0 4px #fff7}.seats-symbol:before,.seats-symbol:after{width:36px;height:6px;left:15px;background:#c6d5b6;border-radius:4px}.seats-symbol:before{top:-10px}.seats-symbol:after{bottom:-10px}.table-bottom{border-color:#edf0e7;padding-top:10px;font-size:10px;color:#a1ac93}.table-bottom span:last-child{color:#718760}.table-card.occupied{background:#fffdf8;border-color:#e9dcc4}.occupied .seats-symbol{background:#fff4df;border-color:#d9bf8c;color:#b18d4c}.occupied .seats-symbol:before,.occupied .seats-symbol:after{background:#ead6b0}.table-card.cleaning{background:#fbfcff;border-color:#dce3ef}.cleaning .seats-symbol{background:#f0f3fa;border-color:#b4c0db;color:#869ab9}.cleaning .seats-symbol:before,.cleaning .seats-symbol:after{background:#ced6e9}.table-card.disabled{opacity:.6}
/* Tables, forms, reservation lists, reports */
.data-wrap{background:white;border-radius:13px}.data-table{font-size:12px}.data-table th{font-size:11px;font-weight:500;background:#f2f5ed;color:#8d9880;padding:15px 20px;border-color:#e5eadc}.data-table td{padding:18px 20px;border-color:#eff2e8;color:#667958;vertical-align:middle;line-height:1.8}.data-table td b{font-weight:500;color:#425735}.data-table td small{font-size:10px}.data-table tr:hover td{background:#fcfdf9}.data-table .actions{gap:7px}.section-label{margin:30px 0 17px}.section-label h2{font-size:18px}.section-label small{font-size:11px}.list-row{border-color:#eef1e5;padding:17px 0;font-size:12px}.list-row small{font-size:11px;margin-top:5px}.dashboard-grid{gap:22px;grid-template-columns:1.2fr 1fr}.settings-form{max-width:940px;padding:30px}.settings-form>.btn{margin-top:24px}.settings-form .inline-hint{background:#f7f8f1;padding:15px;border-radius:8px}.settings-form .grid2{gap:25px}.settings-form a{overflow-wrap:anywhere}.settings-form h2{font-size:18px}#report-form{padding:20px;background:#fff;border:1px solid var(--line);border-radius:13px;align-items:flex-end;gap:18px}#report-form label{min-width:170px}#report-form button{min-height:43px}.welcome-strip{display:grid;grid-template-columns:1fr 42%;min-height:205px;margin-bottom:25px;background:#ebeede;border:1px solid #dfe6d3;border-radius:16px;position:relative;overflow:hidden}.welcome-strip>div{padding:27px 30px;position:relative;z-index:1}.welcome-strip .eyebrow{color:#8a9872}.welcome-strip h2{font-size:26px;margin:8px 0}.welcome-strip p{font-size:12px;color:#82906c;margin-bottom:15px}.welcome-strip>img{width:100%;height:100%;object-fit:cover;position:absolute;left:0;top:0;width:43%;mask-image:linear-gradient(90deg,#000 50%,transparent)}.welcome-strip .btn{font-size:11px;min-height:34px;padding:8px 13px}.welcome-stamp{position:absolute;left:25px;bottom:25px;color:white;border:1px solid #ffffff70;border-radius:50%;width:90px;height:90px;display:grid;place-content:center;text-align:center;font-size:10px;letter-spacing:1px;transform:rotate(-12deg);background:#273d3230}
/* Menu and ordering */
.menu-filters{grid-template-columns:2fr 1fr 1fr;border-radius:12px;padding:18px;gap:18px;box-shadow:none;margin-bottom:14px}.menu-filters label{font-size:11px;color:#89977c}.menu-filters input,.menu-filters select{background:#fcfdf9;border-color:#e3e9db;font-size:12px;min-height:40px}.managed-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:22px}.managed-card{border-radius:15px;border-color:#e4e8dc;box-shadow:0 3px 10px #314b2403;transition:box-shadow .2s,transform .2s}.managed-card:hover{box-shadow:0 9px 28px #314b2410;transform:translateY(-2px)}.managed-card .item-photo{padding:9px 9px 0;background:#fff}.managed-card .item-photo img{border-radius:10px;height:174px}.photo-label{background:#1e302c9e;backdrop-filter:blur(6px);font-size:8px;font-weight:400;bottom:10px;inset-inline-end:18px;border-radius:4px;padding:3px 7px;letter-spacing:0}.managed-copy{padding:17px 18px}.managed-copy>.row:first-child{gap:7px}.managed-copy>.row:first-child small{font-size:10px;color:#8e9a82}.managed-copy h3{font-size:18px;margin:12px 0 5px;color:#344e2e;font-weight:500}.item-description{font-size:11px;color:#9aa48e;min-height:37px;margin-bottom:14px;line-height:1.8}.managed-copy .price{font-weight:600;font-size:19px;color:#416038}.price small{font-size:10px;font-weight:400}.managed-copy>.row>small{font-size:10px}.managed-actions{margin-top:18px;padding-top:14px;border-color:#edf0e6;gap:6px}.managed-actions .btn{font-size:11px}.managed-actions .btn.primary{background:#eff4e7;color:#5e7b49;border-color:#e1e9d4;box-shadow:none}.managed-actions .btn.primary:hover{background:#e4edda}.managed-actions .danger{background:transparent;border-color:transparent;color:#b07c65}
.search{background:#fff;border-color:#e0e7d8;font-size:12px;max-width:320px;min-height:41px}.order-layout{grid-template-columns:minmax(0,1fr) 345px;gap:24px}.catalog{grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:15px;margin-top:24px}.menu-tile{border-color:#e3e8d9;border-radius:12px;gap:12px;transition:transform .15s}.menu-tile:hover{border-color:#a6b795;transform:translateY(-1px)}.menu-tile .item-photo{padding:7px 7px 0;background:white}.menu-tile .item-photo img{height:126px;border-radius:8px}.menu-tile>.item-photo+div{margin-inline:13px}.menu-tile h3{font-size:14px;font-weight:500;line-height:1.8;color:#415833}.menu-tile small{font-size:9px;color:#919e81}.menu-tile .price{font-size:16px;font-weight:600;color:#4d6d3d}.menu-tile .add-icon{width:26px;height:26px;border-radius:50%;line-height:23px;background:#edf3e4;color:#6d8c55;font-size:22px;font-weight:400}.menu-tile .photo-label{font-size:7px}.cart{position:sticky;top:20px;border-color:#dfe6d4;border-radius:15px}.cart-head{background:#edf2e5;color:#48613b;padding:20px 22px;border-bottom:1px solid #e0e9d3}.cart-head h2{font-size:17px;font-weight:500}.cart-head small{font-size:11px;color:#8d9e7c}.cart-head strong{font-size:14px;font-weight:500}.cart-body{padding:7px 22px;max-height:450px}.cart-line{padding:17px 0;border-color:#eef2e7}.cart-line strong{font-size:12px;font-weight:500;line-height:1.8}.cart-line .line-meta{font-size:10px;color:#98a38b;margin:6px 0 10px}.cart-line .row{gap:9px}.cart-totals{background:#fafcf6;padding:20px 22px}.cart-totals .row{font-size:12px;color:#8b997b;margin-bottom:10px}.cart-totals .grand{font-size:17px;color:#426035;border-color:#e1e9d5;margin-top:18px;padding-top:16px}.cart-actions{padding:5px 20px 20px;gap:10px}.cart-actions .btn{font-size:11px;white-space:normal}.cart-actions small{text-align:center;font-size:10px}.cart-body .empty{border:0;background:none;padding:35px 0}.ticket-notes{background:#fcf4e8;color:#9f8351;font-size:11px;border:1px solid #efe2ca;padding:8px 10px}
.ticket-columns{gap:20px}.ticket-column{background:#eef1e6;border:1px solid #e1e7d4;border-radius:15px;padding:17px}.ticket-column h2{font-size:15px;font-weight:500;align-items:center;margin:0 3px 20px;color:#708258}.ticket-column:nth-child(2){background:#f5f0e6;border-color:#e9dfcc}.ticket-column:nth-child(2) h2{color:#a38b5b}.ticket-column:nth-child(3){background:#ebf2e6;border-color:#dce8d1}.ticket{padding:19px;border-color:#e3e8d9;border-radius:11px;box-shadow:0 3px 8px #324a2103}.ticket .ticket-name{font-size:16px;font-weight:500;margin:16px 0 8px}.ticket>.row>b{font-size:12px;font-weight:500}.ticket small{font-size:10px}.ticket.late{border-top:3px solid #be8052}.ticket .btn{font-size:12px;margin-top:16px}.ticket-column .empty{background:transparent;border-color:#dce3d0;font-size:11px;padding:45px 15px}
/* Dialogs and image editor */
dialog{border:1px solid #e2e7da;border-radius:18px;width:min(680px,calc(100vw - 30px));box-shadow:0 25px 110px #20391f30;scrollbar-width:thin;scrollbar-color:#d3dcc7 transparent}dialog::backdrop{background:#24312165;backdrop-filter:blur(6px)}.modal-head{position:sticky;top:0;z-index:3;background:#fff;padding:21px 27px;border-color:#e9eee0}.modal-head h2{font-size:20px;font-weight:500}.close-btn{border-radius:50%;background:#f2f5eb;color:#8f9c80;width:31px;height:31px;font:24px/1 Arial!important;display:grid;place-items:center}.modal-body{padding:28px}.modal-body label{font-size:12px}.modal-body h3{font-size:15px;font-weight:500}.modal-actions{padding-top:23px;border-top:1px solid #edf1e6;margin-top:26px;position:sticky;bottom:-28px;background:#fff;z-index:2;padding-bottom:14px}.modal-actions .primary{min-width:100px}.option-table input{font-size:12px;background:#fafcf6}.option-table .row{gap:10px}.table-option{font-size:12px;border-radius:8px;border-color:#e0e8d5;background:#fbfcf8;padding:10px 13px}.table-option:has(input:checked){background:#edf4e5;border-color:#93ab7e}.image-editor{background:#f7f9f1;border:1px solid #e1e8d6;border-radius:12px;padding:18px}.image-editor h3{font-size:14px}.image-upload-row>img{border-radius:9px;border:4px solid #fff;box-shadow:0 2px 10px #2c461413}.image-upload-row .btn{font-size:11px}.image-editor summary{font-size:11px;color:#63804e}.image-editor details{border-color:#dfe7d4}.photo-library button{border-color:#dfe7d4;border-radius:8px;font-size:10px;color:#6d805c}.photo-library span{padding:6px}.image-editor #image-upload-status{font-size:11px;color:#708f58}.photo-library img{height:76px}#toast{font-size:12px;background:#31543d;border:1px solid #618065;border-radius:10px;box-shadow:0 7px 25px #233c2420;padding:12px 20px}#toast.bad{background:#9a503d;border-color:#b77660}
/* Login */
.auth-layout{display:grid;grid-template-columns:1.08fr 1fr;min-height:100vh;background:#fafbf7;padding:16px;gap:0}.auth-feature{min-height:calc(100vh - 32px);border-radius:20px;display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;padding:40px 42px;color:#fff;background:linear-gradient(180deg,#1c2b2755,#18352fd9),url('photos/restaurant.jpg') center/cover;position:relative}.auth-top{display:flex;align-items:center;gap:13px;flex-wrap:wrap}.auth-top>.brand-mark{background:#fafbf220;color:#fff;border:1px solid #ffffff45;box-shadow:none}.auth-top>span:not(.auth-tag){font-size:11px;letter-spacing:1.3px}.auth-tag{font-size:10px;color:#eee9d6;background:#ffffff12;border:1px solid #ffffff25;border-radius:20px;padding:5px 13px;margin-inline-start:auto}.auth-story{margin:110px 0 100px;max-width:480px}.story-kicker{font-size:12px;color:#d9dfce;display:flex;gap:10px;align-items:center}.story-kicker:before{content:'';width:30px;height:1px;background:#b6c1ab}.auth-feature h1{font-family:Plex!important;font-size:clamp(38px,4.2vw,65px);font-weight:500;line-height:1.45;letter-spacing:-1.6px;margin:24px 0 22px;text-shadow:none;max-width:none}.auth-feature h1 em{font-style:normal;color:#e3c592}.auth-feature p{font-size:14px;line-height:1.9;color:#d2ddce;max-width:370px}.auth-chips{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}.auth-chips span{font-size:10px;border:1px solid #c7d2b63a;border-radius:7px;padding:7px 12px;background:#ffffff08;color:#e3e9dc}.auth-bottom{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #ffffff25;padding-top:22px;font-size:10px;color:#bdcdb9}.auth-bottom small{font-size:9px;color:#b5c2b0}.auth-form{background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:30px 50px;min-height:0}.auth-form-top,.auth-form-bottom{display:flex;justify-content:space-between;width:100%;font-size:10px;color:#99a18d;gap:20px}.auth-form-top .edition{letter-spacing:1.5px;font-size:9px}.auth-form .auth-card{padding:45px 12px;width:100%;max-width:375px;border:0;box-shadow:none;background:transparent;border-radius:0}.login-emblem{width:57px;height:57px;border-radius:16px;display:grid;place-items:center;background:#edf1e5;color:#6b8457;border:1px solid #e3e9d8;margin-bottom:28px}.login-emblem svg{width:33px;height:36px}.auth-card .eyebrow{font-size:11px;color:#a3ac94;margin-bottom:9px}.auth-form h2{font-size:38px;letter-spacing:-1.2px;line-height:1.4;font-weight:500;margin-bottom:12px}.auth-form h2 span{color:#ba7b48}.auth-card>p{font-size:12px;color:#99a18e;margin-bottom:23px}.auth-card label{font-size:12px;font-weight:500;color:#536744;gap:9px}.auth-card input{background:#fff;border:1px solid #e0e6d5;border-radius:9px;padding:13px 15px;min-height:49px;font-size:13px}.auth-card input::placeholder{font-size:11px;color:#b1b8a6}.password-field{position:relative}.password-field input{padding-inline-end:65px}.password-field>button{position:absolute;inset-inline-end:8px;bottom:6px;background:none;border:0;color:#8d9f79;font-size:10px;padding:10px}.login-submit{min-height:49px;justify-content:space-between;margin-top:7px;padding:13px 19px;background:#315b49!important;font-size:12px}.login-submit span{font-size:20px;font-family:Arial}.login-menu-link{display:flex;align-items:center;justify-content:center;gap:18px;font-size:12px;color:#8b9a78;margin-top:25px;padding-top:23px;border-top:1px solid #e7ebdf}.auth-form-bottom{font-size:9px;color:#aeb6a1;max-width:100%}.auth-form-bottom span:last-child{letter-spacing:.8px}
/* Public menu */
.public-shell{max-width:1160px;padding:28px 38px 65px}.public-head{background:linear-gradient(90deg,#20362b50,#173a30db),url('photos/restaurant.jpg') center 60%/cover;min-height:330px;padding:35px 38px;border-radius:18px;position:relative;margin-bottom:30px}.public-head>.row{margin-bottom:40px}.public-head .brand-mark{background:#ffffff18;border:1px solid #ffffff40;color:#fff;width:45px;height:48px}.public-head h1{font-family:Plex!important;letter-spacing:-1px;font-size:40px;margin:0 0 12px;max-width:75%}.public-head p{font-size:13px;color:#d7ddc6}.public-head a{font-size:11px;color:#f0e8d1!important}.public-menu-caption{position:absolute;left:35px;bottom:33px;font-size:10px;letter-spacing:2px;color:#e1d1af}.public-shell>.toolbar{justify-content:flex-end}.public-shell>.tabs{border-bottom:1px solid #e0e6d6;padding-bottom:17px;gap:9px}.public-shell>.tabs .tab{font-size:12px;padding:10px 18px}.public-shell>.tabs .tab.active{background:#315b49;border-color:#315b49;color:white}.public-shell .catalog{grid-template-columns:repeat(auto-fill,minmax(225px,1fr));gap:23px;margin-top:28px}.public-shell .menu-tile .item-photo img{height:190px}.public-shell .menu-tile h3{font-size:18px;font-weight:500;margin:5px 0}.public-shell .menu-tile p{font-size:12px;line-height:1.8;color:#929f80}.public-shell .menu-tile>.row{padding-top:5px;padding-bottom:21px}.public-shell .menu-tile .price{font-size:19px}
/* Responsive layouts */
@media(min-width:1650px){.floor-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.managed-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1200px){.shell{grid-template-columns:214px minmax(0,1fr)}.sidebar{padding-inline:12px}.content{padding:28px 25px 40px}.topbar{padding-inline:25px}.topbar-tools{gap:12px}.date-label{font-size:10px}.floor-grid{grid-template-columns:repeat(auto-fill,minmax(175px,1fr));padding:16px;gap:14px}.managed-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:17px}.order-layout{grid-template-columns:minmax(0,1fr) 300px;gap:18px}.auth-feature{padding:30px}.auth-form{padding:28px 35px}.auth-tag{display:none}.stat{padding:17px}.stat .label{font-size:10px}.topbar-title{font-size:10px;gap:8px}}
@media(max-width:1000px){.topbar-menu{display:none}.date-label{display:none}.heading-actions{max-width:48%;flex-wrap:wrap}.heading-copy h1{font-size:26px}.stats{gap:12px}.stat-mark{display:none}.auth-form{padding:28px}.auth-feature h1{font-size:43px}.auth-story{margin-block:80px}.sidebar-venue{min-height:80px}.brand b{font-size:12px}}
@media(max-width:900px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;right:0;top:0;width:250px;height:100dvh;z-index:60;transform:translateX(100%);border:0;box-shadow:-15px 0 45px #27422110;padding:25px 16px 18px}.sidebar.open{transform:translateX(0)}.nav-open .nav-backdrop{display:block;position:fixed;inset:0;background:#243b2860;backdrop-filter:blur(3px);border:0;z-index:55;width:100%;height:100%;padding:0}.mobile-menu{display:inline-flex}.topbar{height:65px;position:sticky;top:0;z-index:10;background:#fffffff5;backdrop-filter:blur(12px)}.content{padding:25px}.topbar-title{max-width:none;white-space:normal}.topbar-tools{gap:12px}.auth-layout{grid-template-columns:1fr 1fr;display:grid;min-height:100vh;padding:12px}.auth-feature{min-height:calc(100vh - 24px);display:flex;padding:28px;border-radius:16px;justify-content:space-between}.auth-feature h1 br{display:block}.auth-feature h1{font-size:38px}.auth-feature p{font-size:12px}.auth-chips{gap:7px}.auth-chips span{font-size:9px;padding:5px 8px}.auth-form{padding:25px 22px}.auth-form h2{font-size:32px}.auth-form .auth-card{padding:35px 0}.auth-form-bottom span:last-child{display:none}.auth-top>span:not(.auth-tag){font-size:9px}.auth-story{margin-block:60px}.auth-bottom span{font-size:9px}.auth-bottom small{display:none}.dashboard-grid{grid-template-columns:1fr}.ticket-columns{gap:13px}.ticket-column{padding:13px}.ticket{padding:14px}.heading-actions{max-width:none}.brand b{font-size:14px}}
@media(max-width:650px){body{font-size:14px}.content{padding:22px 16px 35px}.topbar{padding:0 15px}.topbar-title>span,.topbar-title>i{display:none}.topbar-title b{font-size:12px}.topbar-tools{gap:9px}.topbar-avatar{width:29px;height:29px;font-size:10px}.topbar .row{gap:9px}.page-head{display:flex;align-items:flex-start;flex-direction:column;gap:17px;margin-bottom:22px}.heading-copy h1{font-size:27px;margin:6px 0}.heading-copy p{font-size:11px}.heading-copy .eyebrow{font-size:9px}.heading-actions{align-self:stretch;justify-content:flex-start;width:100%;gap:8px}.heading-actions .btn{font-size:11px;min-height:37px}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:23px}.stat{min-height:126px;padding:14px 16px;border-radius:11px}.stat .value{font-size:31px;margin:10px 0 8px}.stat .label{font-size:10px}.stat small{font-size:9px}.floor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px;border-radius:12px}.table-card{padding:12px 11px 10px;min-height:202px;border-radius:10px}.table-number{font-size:15px}.table-card .pill{font-size:8px;padding:3px 5px;gap:4px}.table-card .pill:before{width:4px;height:4px}.table-center{padding:23px 0 15px;gap:12px;flex-wrap:nowrap}.table-center>div{display:flex;flex-direction:column;gap:0}.table-center b{font-size:10px}.table-center small{font-size:9px;border:0;padding:0}.seats-symbol{width:58px;height:43px;font-size:16px;border-radius:10px}.seats-symbol:before,.seats-symbol:after{width:29px;left:13px;height:5px}.table-bottom{font-size:8px;gap:5px;padding-top:8px}.toolbar{gap:15px}.tab{font-size:10px;padding:7px 10px;min-height:31px}.legend{font-size:9px;gap:12px}.menu-filters{grid-template-columns:1fr 1fr;gap:13px;padding:15px;border-radius:11px}.menu-filters label{font-size:10px}.menu-filters label:first-child{grid-column:1/-1}.managed-grid{grid-template-columns:1fr;gap:20px}.managed-card .item-photo img{height:205px}.managed-card{border-radius:13px}.managed-copy{padding:18px 20px}.managed-copy h3{font-size:20px}.item-description{min-height:0;font-size:12px}.managed-actions .btn{font-size:12px;min-height:35px}.photo-label{font-size:9px}.order-layout{grid-template-columns:1fr;gap:25px}.catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cart{position:static}.cart-body{max-height:none}.cart-head h2{font-size:18px}.cart-actions .btn{font-size:13px}.menu-tile .item-photo img{height:120px}.menu-tile h3{font-size:14px}.menu-tile .price{font-size:17px}.menu-tile>.item-photo+div,.menu-tile>.row{margin-inline:12px}.ticket-columns{grid-template-columns:1fr;gap:20px}.ticket-column{padding:17px}.ticket{padding:20px}.grid2{grid-template-columns:1fr;gap:20px}.modal-head{padding:18px 20px}.modal-head h2{font-size:19px}.modal-body{padding:22px 20px}.modal-actions{bottom:-22px}.card{padding:22px}.data-table th,.data-table td{padding:14px 16px;white-space:nowrap}.data-table td small{white-space:normal}.data-wrap{border-radius:11px;max-width:100%}.settings-form{padding:22px}.settings-form .grid2{gap:21px}.welcome-strip{grid-template-columns:1fr;min-height:220px}.welcome-strip>div{padding:22px}.welcome-strip>img{width:55%;opacity:.45}.welcome-strip h2{font-size:24px}.welcome-strip p{font-size:11px;max-width:230px}.welcome-stamp{display:none}.section-label h2{font-size:17px}#report-form{padding:17px;gap:14px}#report-form label{min-width:0;width:calc(50% - 7px)}#report-form .btn{flex:1}.public-shell{padding:14px 15px 40px}.public-head{padding:24px;min-height:265px;border-radius:14px;margin-bottom:22px}.public-head h1{font-size:30px;max-width:100%;margin-bottom:9px}.public-head>.row{margin-bottom:35px}.public-head p{font-size:12px;margin-bottom:26px}.public-menu-caption{left:24px;bottom:20px;font-size:8px}.public-shell>.toolbar .search{max-width:none}.public-shell>.toolbar{margin-bottom:18px}.public-shell>.tabs{gap:6px}.public-shell>.tabs .tab{font-size:11px;padding:8px 11px}.public-shell .catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:22px}.public-shell .menu-tile .item-photo img{height:131px}.public-shell .menu-tile h3{font-size:16px}.public-shell .menu-tile p{font-size:11px}.public-shell .menu-tile .price{font-size:16px}.public-shell .menu-tile>.row{padding-bottom:16px}.image-upload-row{flex-direction:column}.image-upload-row>img{height:170px;width:100%}.image-editor{padding:14px}.image-editor .btn{font-size:12px}.auth-layout{display:flex;flex-direction:column;padding:10px;min-height:100vh;gap:0}.auth-feature{min-height:295px;border-radius:13px;padding:24px;background-position:center 55%}.auth-top>span:not(.auth-tag){font-size:9px;letter-spacing:1px}.auth-top .brand-mark{width:32px;height:35px;border-radius:9px}.auth-top .brand-mark svg{width:22px;height:25px}.auth-story{margin:30px 0 0;max-width:330px}.story-kicker{font-size:10px}.auth-feature h1{font-size:32px;letter-spacing:-.7px;margin:14px 0 10px;line-height:1.4}.auth-feature h1 br{display:none}.auth-feature p{font-size:11px;margin:0}.auth-chips,.auth-bottom{display:none}.auth-form{padding:30px 22px 16px;min-height:0;display:block}.auth-form-top{display:none}.auth-form .auth-card{padding:0;max-width:100%;background:transparent}.login-emblem{display:none}.auth-card .eyebrow{font-size:10px;margin-bottom:6px}.auth-form h2{font-size:32px;margin-bottom:8px}.auth-card>p{font-size:11px;margin-bottom:8px}.auth-card .stack{gap:17px}.auth-card label{font-size:12px}.auth-card input{min-height:47px;font-size:13px}.login-submit{min-height:47px;margin-top:4px}.login-menu-link{font-size:11px;margin-top:20px;padding-top:18px}.auth-form-bottom{font-size:9px;justify-content:center;margin-top:30px}.auth-form-bottom span:last-child{display:none}}
/* Keep operational text comfortably readable at normal browser zoom. */
.nav-link{font-size:14px;color:#63725b}.nav-group{font-size:11px;color:#7d8c73}.topbar-title{font-size:12px}.date-label,.topbar-menu{font-size:12px}.heading-copy p{font-size:14px;color:#76826b}.heading-copy .eyebrow{font-size:11px;color:#819075}.stat .label{font-size:13px;color:#6e7e61}.stat small{font-size:12px;color:#7e8e70}.table-center b{font-size:13px;color:#6c7f5a}.table-center small{font-size:12px;color:#849573}.table-bottom{font-size:11px;color:#879776}.legend,.tab{font-size:12px;color:#758667}.pill{font-size:11px}.data-table{font-size:14px}.data-table th{font-size:12px;color:#738365}.data-table td{font-size:13px}.data-table td small{font-size:11px}.menu-filters label{font-size:12px;color:#708263}.menu-filters input,.menu-filters select{font-size:13px}.managed-copy>.row:first-child small{font-size:12px;color:#7b8d6b}.item-description{font-size:13px;color:#839473}.managed-actions .btn{font-size:12px}.managed-copy>.row>small{font-size:12px}.inline-hint{font-size:12px;color:#7a886e}.auth-card label{font-size:14px;color:#536744}.auth-card>p{font-size:14px;color:#7e8e71}.auth-card input,.auth-card input::placeholder{font-size:13px}.login-submit,.login-menu-link{font-size:14px}.auth-card .eyebrow{font-size:12px;color:#8c9c7d}.password-field>button{font-size:12px}.auth-form-top{font-size:12px}.auth-form-bottom{font-size:11px}.auth-form h2{font-weight:600}.menu-tile h3{font-size:16px}.menu-tile small{font-size:11px}.modal-body label{font-size:14px}.modal-body input,.modal-body select,.modal-body textarea{font-size:14px}.modal-body h3{font-size:17px}.image-editor summary{font-size:13px}.cart-head small,.cart-line .line-meta{font-size:12px}.cart-line strong,.cart-totals .row{font-size:14px}.cart-totals .grand{font-size:18px}.cart-actions .btn{font-size:13px}.ticket small{font-size:12px}.ticket>.row>b{font-size:14px}.ticket-notes{font-size:13px}.ticket .btn{font-size:13px}.settings-form .inline-hint{font-size:12px}.list-row{font-size:14px}.list-row small{font-size:12px}
@media(max-width:650px){.nav-link{font-size:14px}.heading-copy p{font-size:13px}.stat .label{font-size:12px}.stat small{font-size:10px}.table-center b{font-size:12px}.table-center small{font-size:10px}.table-bottom{font-size:9px}.table-card .pill{font-size:9px}.tab,.legend{font-size:11px}.menu-tile h3{font-size:14px}.menu-tile .price{font-size:16px}.managed-copy h3{font-size:20px}.managed-actions .btn{font-size:12px}.auth-card>p{font-size:13px}.auth-card label{font-size:13px}.auth-feature h1 br{display:block}.auth-feature h1{font-size:30px}.auth-story{margin-top:20px}.auth-feature{min-height:295px}.auth-form-top{display:none}.auth-form-bottom{font-size:10px}.public-shell .menu-tile p{font-size:12px}.public-shell .menu-tile h3{font-size:16px}}
.muted,.heading-copy p,.item-description,.managed-copy>.row:first-child small,.managed-copy>.row>small,.table-center small,.table-bottom,.legend,.stat small,.data-table td small,.inline-hint,.menu-tile small,.cart-line .line-meta,.cart-head small,.auth-card>p,.auth-card .eyebrow,.login-menu-link,.auth-form-top,.auth-form-bottom,.nav-group,.sidebar-bottom small{color:#6b7a60}

/* Unified operations dashboard */
.ops-dashboard{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px;align-items:start}
.ops-column{display:grid;gap:16px;min-width:0;align-content:start}
.ops-panel{background:#fff;border:1px solid #e4e4de;border-radius:8px;padding:18px 20px;min-width:0}
.ops-panel.priority{border-top:3px solid #c19c35}
.ops-panel-head{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;padding-bottom:12px;border-bottom:1px solid #efefe9}
.ops-panel-head small{display:block;color:#8a887f;font-size:10px;margin-bottom:4px}
.ops-panel-head h2{font-size:17px;margin:0}
.ops-panel-head a{font-size:11px;color:#665421;white-space:nowrap}
.ops-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0;border-bottom:1px solid #f0f0eb}
.ops-row:last-child{border-bottom:0;padding-bottom:0}
.ops-row b{display:block;font-size:13px}
.ops-row small{display:block;color:#77766f;font-size:11px;margin-top:4px}
.ops-panel.summary{grid-column:1/-1}
.ops-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:14px;background:#e8e8e1;border:1px solid #e8e8e1}
.ops-summary>div{display:flex;align-items:baseline;gap:8px;background:#fff;padding:18px}
.ops-summary strong{font-size:25px}.ops-summary span{font-size:11px;color:#77766e}
.session-next{display:grid;gap:5px;margin-top:18px;padding:13px 15px;border-right:4px solid #c19c35;background:#faf8f1;border-radius:4px}
.session-next.blocked{border-color:#b4433c;background:#fff6f5}.session-next b{font-size:13px}.session-next span{font-size:11px;color:#716d64;line-height:1.7}
.session-actions{margin-top:14px}
@media(max-width:900px){.ops-dashboard{grid-template-columns:1fr}.ops-panel.summary{grid-column:auto}}
@media(max-width:650px){.ops-panel{padding:15px}.ops-panel-head{align-items:flex-start}.ops-summary{grid-template-columns:1fr}.ops-summary>div{padding:14px}.ops-row{align-items:flex-start}.ops-row .btn{min-height:38px}}
.stat .label,.tab,.menu-filters label,.data-table th,.cart-totals .row{color:#65755b}
.modal-actions{bottom:0;padding-block:14px;box-shadow:0 -12px 15px #ffffffed}
@media(max-width:900px){body:has(.shell.nav-open){overflow:hidden}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;scroll-behavior:auto!important}}


/* ===== SOURCE: hms.css ===== */
/* HMS brand layer: burger palette, hospitality flow and responsive floor controls. */
:root{--navy:#3b1f18;--navy2:#26120e;--teal:#b52320;--mint:#fff5d6;--orange:#d79b18;--ink:#2c1b16;--muted:#725f53;--line:#eadfce;--bg:#fffaf0;--red:#a92720;--shadow:0 8px 30px rgba(74,35,17,.09);--copper:#c77916;--yellow:#f2bd32;--burnt:#6b2c1e}
body{background:var(--bg)}
.btn.primary{background:#b52320;border-color:#b52320}.btn.primary:hover{background:#8f1c1a}.btn.dark{background:#3b1f18;border-color:#3b1f18}.btn.secondary{background:#f2bd32;border-color:#d49f19;color:#3b1f18}.btn.secondary:hover{background:#dca91f}.btn.danger{color:#98241e;background:#fff1e8;border-color:#f2cfc2}
.sidebar{background:#fffdf8;border-left-color:#eadfce}.sidebar .brand{color:#3b1f18}.sidebar .nav-link.active{background:#fff0d0;color:#8d211b}.sidebar .nav-link.active:before{background:#b52320}.sidebar .nav-link svg{color:#8a7162}.sidebar .nav-dot{background:#b52320}.nav-group span{color:#c77916}.topbar{background:#fffdf8;border-bottom-color:#eadfce}.topbar-menu{color:#a0231d}.topbar-avatar,.avatar{background:#b52320;color:white}.hms-monogram{display:inline-flex;align-items:center;justify-content:center;width:43px;height:43px;border-radius:12px;background:#b52320;color:#fff;font-size:14px;letter-spacing:.5px;font-weight:700;box-shadow:0 5px 12px rgba(181,35,32,.2)}.hms-monogram span{color:#f2bd32;font-size:11px;margin-inline-start:2px}.hms-brand-copy{display:flex;flex-direction:column;font-weight:700;line-height:1.3;color:#3b1f18}.hms-brand-copy small{font-size:8px;font-weight:500;letter-spacing:.5px;color:#947d6c;margin-top:3px;direction:ltr;text-align:right}.genesis-credit{display:flex;align-items:center;gap:8px;color:#947d6c}.genesis-credit small{font-size:9px}.genesis-credit img{max-width:86px;max-height:24px;object-fit:contain;filter:brightness(.45) sepia(.2)}.sidebar .genesis-credit{padding:14px 12px 6px;border-top:1px solid #f1e6d8;margin-top:auto;justify-content:space-between}.auth-layout .genesis-credit img{max-width:100px;max-height:26px}.auth-top .brand-mark,.login-emblem{background:#b52320!important;color:#fff!important}.auth-top .brand-mark b{font-size:14px}.login-emblem b{font-size:18px;letter-spacing:1px}.auth-story em,.auth-card h2 span{color:#d79b18}.auth-feature{background-color:#3b1f18}.auth-form{background:#fffaf0}.auth-form .btn.primary{background:#b52320}.welcome-strip{background:linear-gradient(110deg,#3b1f18,#5a281c)}.welcome-strip .btn.primary{background:#f2bd32;color:#3b1f18;border-color:#f2bd32}.welcome-strip .btn.primary:hover{background:#dca91f}.stat.primary{background:#3b1f18;border-color:#3b1f18}.stat.primary .value{color:#f2bd32}.stat.primary .stat-mark{color:#f2bd32}.stat{background:#fffdf8}.floor-grid{background:#f8f0e1}.floor-table .table-card{background:#fffdf8;border-color:#eadfce}.table-card.available .seats-symbol{border-color:#b52320;color:#9c211c;background:#fff1e7}.table-card.occupied .seats-symbol{border-color:#d79b18;color:#8d6113;background:#fff6d9}.table-card.cleaning .seats-symbol{border-color:#8c6b56;color:#694331;background:#f8e9de}.hall-selector{display:flex;align-items:stretch;gap:24px;background:#3b1f18;color:#fffaf0;border-radius:17px;padding:19px 22px;margin-bottom:20px;box-shadow:var(--shadow)}.hall-label{display:flex;flex-direction:column;justify-content:center;min-width:150px;border-left:1px solid #765242;padding-left:20px}.hall-label span{font-size:10px;letter-spacing:.5px;color:#f2bd32}.hall-label strong{font-size:18px;margin-top:5px}.hall-tabs{display:flex;gap:10px;overflow:auto;flex:1;align-items:center;padding-bottom:1px}.hall-tab{display:flex;align-items:center;gap:13px;min-width:125px;justify-content:center;padding:11px 16px;border:1px solid #795545;border-radius:11px;background:#4c281d;color:#fff5e1;font:inherit;cursor:pointer;white-space:nowrap;transition:.15s}.hall-tab b{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;border-radius:8px;background:#6a3827;color:#f2bd32;font-size:12px}.hall-tab:hover,.hall-tab:focus-visible{border-color:#f2bd32}.hall-tab.active{background:#f2bd32;color:#3b1f18;border-color:#f2bd32;font-weight:700}.hall-tab.active b{background:#3b1f18;color:#f2bd32}.floor-legend{display:flex;justify-content:flex-start;gap:20px;color:#876f5f;font-size:12px;margin:-8px 0 15px}.floor-legend span:first-child{color:#b52320}.floor-legend span:nth-child(2){color:#d79b18}.floor-legend span:nth-child(3){color:#8c6b56}.floor-table{display:flex;flex-direction:column;gap:0}.booking-badge{display:flex;flex-direction:column;gap:3px;margin:-3px 7px 0;padding:11px 12px;background:#fff6d8;border:1px solid #efd28a;border-radius:0 0 11px 11px;color:#66441c;font-size:11px}.booking-badge.phone{background:#fff0e7;border-color:#edc0ae;color:#8d261d}.booking-badge b{font-size:11px}.booking-badge>div{display:flex;gap:6px;margin-top:6px}.booking-badge .btn{min-height:28px;padding:4px 8px;font-size:10px}.floor-table-actions{display:flex;gap:5px;justify-content:flex-end;padding:7px 8px 0}.floor-table-actions .btn{min-height:27px;padding:4px 8px;font-size:10px}.flow-hint{padding:11px 13px;border-right:3px solid #f2bd32;background:#fff8e7;color:#6f5745;border-radius:8px;font-size:12px}.guest-summary{display:flex;align-items:stretch;gap:0;background:#fffdf8;border:1px solid #eadfce;border-radius:13px;margin-bottom:16px;overflow:hidden}.guest-summary>div{display:flex;flex-direction:column;gap:3px;padding:14px 18px;min-width:150px;border-left:1px solid #eee2d3}.guest-summary small{font-size:10px;color:#927d6d}.guest-summary strong{font-size:14px;color:#3b1f18}.booking-chip{align-self:center;margin-inline:15px;padding:6px 10px;background:#fff0e7;border:1px solid #edc0ae;color:#98241e;border-radius:7px;font-size:11px}.mobile-cart-jump{display:none}.public-hms{display:flex;justify-content:space-between;align-items:center;color:#8a7465;font-size:12px;margin-top:28px}.public-hms .genesis-credit{gap:5px}.public-hms .genesis-credit img{max-height:20px}.upgrade-card{max-width:620px;margin:10vh auto;padding:35px;background:#fffdf8}.upgrade-card h1{color:#3b1f18}.upgrade-card p{margin:14px 0}.field-error{display:block;margin-top:5px;color:#a0271f;font-size:11px}.field-error[hidden]{display:none}
@media(max-width:900px){.hall-selector{margin-inline:-3px}.guest-summary{overflow:auto}.guest-summary>div{min-width:130px}.sidebar .genesis-credit{margin-top:auto}.public-hms{font-size:10px}}
@media(max-width:650px){.hall-selector{display:block;padding:16px;margin-bottom:18px}.hall-label{border:0;padding:0 0 12px;min-width:0}.hall-label strong{font-size:17px}.hall-tabs{gap:7px;margin-inline:-3px;padding-inline:3px}.hall-tab{min-width:108px;padding:9px 10px;font-size:11px;gap:8px}.hall-tab b{min-width:21px;height:21px;font-size:10px}.floor-legend{font-size:10px;gap:12px}.booking-badge{font-size:10px}.guest-summary{border-radius:10px}.guest-summary>div{min-width:108px;padding:12px 13px}.guest-summary strong{font-size:12px}.booking-chip{font-size:10px;margin-inline:8px}.mobile-cart-jump{display:inline-flex;margin:0 0 16px}.order-layout .cart{scroll-margin-top:90px}.sidebar .genesis-credit{padding-inline:8px}.genesis-credit img{max-width:76px}}

/* Final HMS harmony pass: one calm cream canvas, one dark-brown navigation rail,
   red actions and mustard highlights.  This is intentionally last so it wins over
   the legacy visual layers above it. */
:root{--hms-red:#b62924;--hms-red-deep:#8f211d;--hms-yellow:#efb82d;--hms-brown:#3a211a;--hms-brown-2:#4c2a20;--hms-cream:#fbf3e5;--hms-surface:#fffaf2;--hms-line:#ead8c2;--hms-text:#3a211a;--hms-muted:#806958}
body,.workspace{background:var(--hms-cream);color:var(--hms-text)}
.shell{grid-template-columns:220px minmax(0,1fr)}
.sidebar{background:var(--hms-brown);color:#f9ead6;border-left:1px solid #6e4031;padding:14px 10px 10px;overflow:hidden}
.sidebar .brand{padding:0 6px 14px;min-height:54px;gap:8px}
.sidebar .brand b,.sidebar .hms-brand-copy{color:#fff8ed}
.sidebar .brand small,.sidebar .hms-brand-copy small{color:#d9b79a}
.sidebar .nav-group{padding:8px 10px 5px;color:#d7ae88;font-size:9px}
.sidebar .nav-group.secondary{margin-top:7px;padding-top:10px;border-top-color:#694032}
.sidebar .nav-link{min-height:34px;padding:6px 9px;margin-bottom:1px;gap:8px;border-radius:7px;color:#f2dcc5;font-size:11px}
.sidebar .nav-link svg{width:16px;height:16px;color:#e0b28d}
.sidebar .nav-link:hover{background:#5a3226;color:#fffaf2}
.sidebar .nav-link.active{background:var(--hms-yellow);color:var(--hms-brown);font-weight:700}
.sidebar .nav-link.active svg{color:var(--hms-brown)}
.sidebar .nav-dot{background:var(--hms-red)}
.sidebar-venue{margin:10px 4px 8px;min-height:58px;padding:9px;border-radius:9px;background:#6b3929}
.sidebar-venue b{font-size:10px}.sidebar-venue small{font-size:8px;color:#f4dcc5}
.sidebar-bottom{padding:10px 4px 0;color:#f5dfc9;font-size:11px;border-top-color:#694032}
.sidebar-bottom small{font-size:9px;color:#d7ae88}.sidebar-bottom .avatar{width:28px;height:28px;background:#efb82d;color:#3a211a;border:0}
.sidebar .genesis-credit{padding:8px 4px 3px;border-top-color:#694032}.sidebar .genesis-credit img{max-width:75px;max-height:20px}
.topbar{height:68px;background:var(--hms-surface);border-bottom-color:var(--hms-line);padding-inline:28px}
.topbar-title,.date-label{color:#927662}.topbar-title b{color:var(--hms-brown)}
.content{padding:30px 34px 42px}
.card,.data-wrap,.cart,.stat,.menu-tile,.managed-card,.table-card{background:var(--hms-surface);border-color:var(--hms-line)}
.btn{border-color:var(--hms-line);color:var(--hms-brown);background:var(--hms-surface)}
.btn:hover{background:#fff1d5;border-color:#dfbf86}.btn.primary{background:var(--hms-red);border-color:var(--hms-red);color:#fff}.btn.primary:hover{background:var(--hms-red-deep)}
.btn.dark{background:var(--hms-brown);border-color:var(--hms-brown);color:#fff8ed}.btn.secondary{background:var(--hms-yellow);border-color:#d9a51c;color:var(--hms-brown)}
.heading-copy h1,.section-label h2,.card h2{color:var(--hms-brown)}
.heading-copy p,.muted,.legend,.table-bottom,.table-center small{color:var(--hms-muted)}
.stat.primary{background:var(--hms-brown);border-color:var(--hms-brown)}.stat.primary .value{color:var(--hms-yellow)}
.stat-mark{background:#fff1d5;color:#bf7e28}.stat:nth-child(3) .stat-mark{background:#fff1d5;color:#bf7e28}.stat:nth-child(4) .stat-mark{background:#f9e3d6;color:var(--hms-red)}
.floor-grid{background:#f5ead8;border-color:#ead8c2}.floor-table .table-card{background:var(--hms-surface)}
.table-card.available .seats-symbol{border-color:var(--hms-red);color:var(--hms-red-deep);background:#fff0e8}.table-card.occupied .seats-symbol{border-color:#d89d1c;color:#936a12;background:#fff3ce}
.table-card.cleaning .seats-symbol{border-color:#9c725b;color:#6d4938;background:#f6e5d9}
.pill.available,.pill.served,.pill.closed,.pill.ready,.pill.completed,.pill.issued{background:#eaf2df;color:#557038}.pill.occupied,.pill.preparing,.pill.seated{background:#fff1cf;color:#936b12}.pill.cleaning,.pill.queued,.pill.confirmed,.pill.open{background:#f7e4d8;color:#8d4c36}
.pill.cancelled,.pill.no_show,.pill.void,.pill.disabled{background:#fae0dc;color:var(--hms-red-deep)}
.cart-head{background:var(--hms-brown);color:#fff8ed}.cart-totals{background:#fff3dc}.cart-totals .grand{color:var(--hms-red);border-color:#e5c36d}
.menu-tile .price,.managed-copy .price{color:var(--hms-red)}.menu-tile .add-icon{background:#fff1d5;color:var(--hms-red)}
.data-table th{background:#fff1d5;color:#6b4a37}.data-table td{border-color:#f0e2cf}.data-table tr:hover td{background:#fff8eb}
.ticket-column{background:#f1e5d6;border-color:#ead8c2}.ticket-column:nth-child(2){background:#f8edd9;border-color:#ead8c2}.ticket-column:nth-child(3){background:#f2e6dc;border-color:#ead8c2}
.ticket{background:var(--hms-surface);border-color:var(--hms-line)}.ticket.late{border-top-color:var(--hms-red)}
input,select,textarea{background:#fffdf9;border-color:#dfcdb7;color:var(--hms-brown)}input:focus,select:focus,textarea:focus{outline-color:#efb82d55;border-color:#c68c31}input[type=checkbox]{accent-color:var(--hms-red)}
dialog{background:var(--hms-surface);color:var(--hms-brown);border-color:var(--hms-line)}dialog::backdrop{background:#3a211a88}.modal-head{background:var(--hms-surface);border-color:var(--hms-line)}.close-btn{background:#fff1d5;color:var(--hms-brown)}
#toast{background:var(--hms-brown)}#toast.bad{background:var(--hms-red-deep)}
.public-head{background:linear-gradient(110deg,#3a211acc,#6b3929e8),url('photos/restaurant.jpg') center/cover}.public-hms{color:#806958}
.auth-form{background:var(--hms-cream)}.auth-card{background:var(--hms-surface);border-color:var(--hms-line)}
.login-submit,.auth-form .login-submit{background:var(--hms-red)!important;border-color:var(--hms-red)!important;color:#fff!important}.login-submit:hover{background:var(--hms-red-deep)!important}
.auth-feature{background-image:linear-gradient(180deg,#3a211a55,#3a211ad9),linear-gradient(90deg,#3a211a22,#3a211ab8),url('photos/restaurant.jpg')}.auth-feature h1 em{color:var(--hms-yellow)}
.upgrade-card{background:var(--hms-surface)}
@media(max-width:1200px){.shell{grid-template-columns:210px minmax(0,1fr)}.content{padding:25px 25px 38px}}
@media(max-width:900px){.shell{grid-template-columns:1fr}.sidebar{width:224px;padding:14px 10px 10px;overflow-y:auto}.sidebar .nav-link{min-height:33px}.topbar{height:64px;padding-inline:18px}}
@media(max-width:650px){.content{padding:20px 15px 32px}.sidebar{width:230px}.topbar{padding-inline:14px}}

/* Readability pass: slightly larger navigation and stronger text contrast. */
.sidebar .nav-link{font-size:12px;min-height:35px;color:#f8e5d0}
.sidebar .nav-group{font-size:10px;color:#e0b589}.sidebar .nav-group span{font-size:9px}
.sidebar-bottom{font-size:12px;color:#f8e5d0}.sidebar-bottom small{font-size:10px;color:#e3b991}
.sidebar .brand b{font-size:15px}.sidebar .hms-brand-copy{font-size:14px}.sidebar .hms-brand-copy small{font-size:8px}
.heading-copy p,.muted,.legend,.table-bottom,.table-center small{color:#6f513e}
.heading-copy .eyebrow{color:#8c5b32}.stat .label{color:#755742}.stat small{color:#765844}
.table-center b{color:#6a4c3a}.floor-legend{color:#73513c}.data-table td small,.cart-line .line-meta{color:#765844}
.menu-tile small,.inline-hint,.managed-copy>.row:first-child small,.managed-copy>.row>small{color:#765844}
.public-hms{color:#73513c}
.auth-card label{color:#614635}.auth-card>p,.auth-card .eyebrow,.login-menu-link,.auth-form-top,.auth-form-bottom{color:#765844}
@media(max-width:900px){.sidebar .nav-link{font-size:12px;min-height:35px}}

/* HMS final requested UI pass */
:root{--hms-font:"Noto Kufi Arabic","Noto Sans Arabic","Kito","Plex",Tahoma,Arial,sans-serif;--hms-coffee:#4b3026;--hms-coffee-2:#6a4535;--hms-coffee-3:#7f5642;--hms-cream-soft:#fbf5e9;--hms-surface-soft:#fffdfa;--hms-border-soft:#eadcc9;--hms-gold:#efbd38;--hms-gold-2:#d9a426;--hms-ink:#2d201a;--hms-muted-strong:#725846;--hms-green:#2f7d57;--hms-red-soft:#b8322b}
body,button,input,select,textarea,.en,.stat .value,.table-number,.eyebrow,.menu-tile .price,.mini-floor span,.brand-mark{font-family:var(--hms-font)!important}
body,.workspace{background:var(--hms-cream-soft);color:var(--hms-ink)}
.sidebar{background:linear-gradient(180deg,var(--hms-coffee),#3e271f);color:#fff4e2;border-left-color:#7c5747}
.sidebar .brand{border-bottom:1px solid #745243;padding-bottom:18px;margin-bottom:4px;gap:11px}
.hms-logo-mark{width:43px;height:43px;display:grid;place-items:center;flex:none}.hms-logo-img{width:100%;height:100%;object-fit:contain;filter:none!important;mix-blend-mode:normal!important;opacity:1!important}.hms-brand-copy{display:flex;flex-direction:column;gap:2px;color:#fff!important}.hms-brand-copy b{font-size:18px;line-height:1;color:#fff!important;letter-spacing:.2px}.hms-brand-copy small{font-size:8px;color:#f1d7bd!important;letter-spacing:.9px}.brand-mark .hms-logo-img,.auth-top .brand-mark .hms-logo-img,.public-head .brand-mark .hms-logo-img{width:28px;height:28px}.hms-login-logo{display:grid;place-items:center;width:100%;height:100%}.hms-login-logo img{width:44px;height:44px;filter:none!important}
.sidebar .nav-group{color:#f0c995}.sidebar .nav-group.secondary{border-top-color:#795545;color:#f0c995}.sidebar .nav-link{color:#fff1dd}.sidebar .nav-link svg{color:#f7d3ae}.sidebar .nav-link:hover{background:#624032;color:#fff}.sidebar .nav-link.active{background:var(--hms-gold);color:#2c2019}.sidebar .nav-link.active svg{color:#2c2019}.sidebar-venue{background:#6a4535}.sidebar-bottom{border-top-color:#795545;color:#fff1dd}.sidebar-bottom small{color:#f0c995}.topbar{background:var(--hms-surface-soft);border-bottom-color:var(--hms-border-soft)}.topbar-title,.date-label{color:var(--hms-muted-strong)}.topbar-title b{color:var(--hms-ink)}
.content{max-width:1600px}.btn{border-color:var(--hms-border-soft);color:var(--hms-ink);background:#fffefa}.btn:hover{background:#fff5df;border-color:#d8b979}.btn.primary{background:var(--hms-coffee-2);border-color:var(--hms-coffee-2);color:#fff}.btn.primary:hover{background:var(--hms-coffee)}.btn.secondary{background:var(--hms-gold);border-color:var(--hms-gold-2);color:#2d211a}.btn.danger,.btn.danger:hover{color:var(--hms-red-soft);border-color:#efb3ad;background:#fff8f6}.card,.data-wrap,.cart,.stat,.menu-tile,.managed-card,.table-card{background:var(--hms-surface-soft);border-color:var(--hms-border-soft)}input,select,textarea{background:#fffdf9;border-color:#dccab4;color:var(--hms-ink)}input::placeholder,textarea::placeholder{color:#a8917c;opacity:1}input:focus,select:focus,textarea:focus{border-color:#c99933;outline:3px solid #efbd3826}.muted,.heading-copy p,.legend,.table-bottom,.table-center small,.inline-hint{color:var(--hms-muted-strong)!important}.data-table th{background:#fff3d2;color:#4b3528;font-weight:700}.data-table td{border-color:#f0e4d4}.data-table tr:hover td{background:#fff9ed}.pill.confirmed,.pill.open,.pill.queued{background:#fff0d3;color:#8a5b14}.pill.no_show,.pill.cancelled{background:#ffe5e1;color:#a52a24}.pill.seated,.pill.completed,.pill.ready,.pill.served,.pill.issued{background:#e7f4e9;color:#2f6c45}
.hms-res-page{display:flex;flex-direction:column;gap:18px}.hms-res-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;margin-bottom:4px}.hms-res-hero h1{font-size:32px;margin:7px 0 5px;color:var(--hms-ink)}.hms-res-hero p{margin:0;color:var(--hms-muted-strong);font-size:13px}.hms-res-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.hms-res-tools label{font-size:11px;color:var(--hms-muted-strong);display:flex;align-items:center;gap:8px;background:#fffefa;border:1px solid var(--hms-border-soft);padding:8px 11px;border-radius:10px}.hms-res-tools input{min-height:34px;padding:6px 8px}.hms-res-card{padding:20px 22px;border-radius:16px;box-shadow:0 18px 45px #4b302608}.hms-res-card h2{margin:0 0 5px;color:var(--hms-ink)}.hms-duration-chip{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;background:#fff2d3;color:#7b5319;border:1px solid #edd396;font-size:11px}.hms-reservation-fields{margin-top:16px;gap:15px}.hms-reservation-fields label{font-size:12px;color:#493428;font-weight:700}.hms-reservation-fields input,.hms-reservation-fields select,.hms-reservation-fields textarea{margin-top:7px;min-height:43px;border-radius:10px}.hms-reservation-fields textarea{min-height:43px}.hms-field-label-row{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:10px}.hms-field-label-row label{margin:0}.hms-field-label-row small{color:#7b604d;font-size:11px}.hms-table-field{margin-top:3px}.hms-table-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.hms-table-option{margin:0;min-height:62px;display:grid;grid-template-columns:auto 28px 1fr;align-items:center;gap:10px;direction:ltr;text-align:right;border:1px solid #dfd2c0;background:#fffefa;border-radius:12px;padding:10px 12px;color:var(--hms-ink);font-size:12px}.hms-table-option input{width:17px;height:17px;margin:0;accent-color:var(--hms-gold-2);order:1}.hms-table-option .hms-chair{order:2;width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#edf7ef;color:var(--hms-green);font-size:13px}.hms-table-option span:last-child{order:3;direction:rtl}.hms-table-option b{display:block;font-size:13px;color:#2c211b}.hms-table-option small{display:block;font-size:10px;color:#725846;margin-top:3px}.hms-table-option:has(input:checked){background:#fff5d9;border-color:var(--hms-gold-2);box-shadow:0 0 0 3px #efbd3824}.hms-inline-actions{display:flex;justify-content:flex-start;gap:10px;margin-top:17px}.hms-list-card{background:var(--hms-surface-soft);border:1px solid var(--hms-border-soft);border-radius:16px;padding:15px 16px;box-shadow:0 15px 35px #4b302605}.hms-list-card .section-label{margin:0 0 12px}.hms-list-card .data-wrap{border-radius:12px}.hms-table-code{font-weight:700;color:#493428;background:#fff3d2;border:1px solid #ecd39a;border-radius:8px;padding:4px 8px;display:inline-block}.flow-hint{border-right-color:var(--hms-gold);background:#fff6de;color:#604733}.field-error{color:var(--hms-red-soft)!important;font-weight:700}.auth-form-bottom .genesis-credit img,.sidebar .genesis-credit img{filter:none!important}
@media(max-width:900px){.hms-res-hero{align-items:flex-start;flex-direction:column}.hms-res-tools{justify-content:flex-start}.hms-table-picker{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.hms-res-card{padding:18px}.hms-list-card{padding:13px}.hms-logo-mark{width:40px;height:40px}}
@media(max-width:650px){.hms-res-hero h1{font-size:27px}.hms-res-tools{width:100%}.hms-res-tools label,.hms-res-tools .btn{flex:1}.hms-table-picker{grid-template-columns:1fr 1fr;gap:8px}.hms-table-option{min-height:58px;padding:9px 10px;grid-template-columns:auto 24px 1fr}.hms-table-option .hms-chair{width:24px;height:24px}.hms-inline-actions{flex-direction:column}.hms-inline-actions .btn{width:100%}}

.receipt-brand img{filter:none!important}


/* HMS v5: IT Genesis branding + no subtitle under HMS */
.sidebar .brand{align-items:center}
.hms-itgenesis-mark{width:86px;height:28px;border-radius:0;background:transparent;display:flex;align-items:center;justify-content:flex-start}
.hms-itgenesis-logo{width:86px!important;height:auto!important;max-height:28px!important;object-fit:contain!important;filter:none!important;mix-blend-mode:normal!important;opacity:1!important}
.hms-brand-single{display:flex;align-items:center}
.hms-brand-single b{font-size:18px!important;line-height:1!important;color:#fff!important;letter-spacing:.3px}
.hms-brand-single small{display:none!important}
.login-emblem .hms-login-logo img{width:120px!important;height:auto!important;max-height:36px!important;object-fit:contain!important;filter:none!important}
.auth-top .brand-mark .hms-itgenesis-logo,.public-head .brand-mark .hms-itgenesis-logo{width:42px!important;max-height:22px!important}
.hms-duration-chip{display:none!important}

/* HMS v6 palette reset: only four approved colors
   #f8f9fb (soft background) | #ffffff (surface)
   #222222 (ink/dark rail)   | #c19c35 (accent) */
:root{
  --hms-page:#f8f9fb;
  --hms-surface:#ffffff;
  --hms-ink:#222222;
  --hms-accent:#c19c35;
  --hms-accent-strong:#c19c35;
  --hms-line:rgba(34,34,34,.10);
  --hms-line-strong:rgba(34,34,34,.18);
  --hms-muted:rgba(34,34,34,.68);
  --hms-soft-accent:rgba(193,156,53,.14);
  --hms-soft-accent-2:rgba(193,156,53,.22);
  --hms-soft-dark:rgba(34,34,34,.05);
  --hms-soft-dark-2:rgba(34,34,34,.10);
  --hms-shadow:0 12px 30px rgba(34,34,34,.06);
}
html,body,.workspace{background:var(--hms-page)!important;color:var(--hms-ink)!important}
body,button,input,select,textarea,.en,.stat .value,.table-number,.eyebrow,.menu-tile .price,.mini-floor span,.brand-mark{font-family:var(--hms-font)!important}

/* Global surfaces */
.card,.data-wrap,.cart,.stat,.menu-tile,.managed-card,.table-card,.hms-res-card,.hms-list-card,.guest-summary,.photo-heading,.menu-filters,.image-editor,.catalog .menu-tile,.upgrade-card,.auth-card{
  background:var(--hms-surface)!important;
  border-color:var(--hms-line)!important;
  box-shadow:var(--hms-shadow)!important;
}
input,select,textarea{
  background:var(--hms-surface)!important;
  color:var(--hms-ink)!important;
  border-color:var(--hms-line-strong)!important;
}
input::placeholder,textarea::placeholder{color:rgba(34,34,34,.45)!important;opacity:1}
input:focus,select:focus,textarea:focus{outline:3px solid rgba(193,156,53,.20)!important;border-color:var(--hms-accent)!important}
label,.muted,.heading-copy p,.legend,.table-bottom,.table-center small,.inline-hint,.topbar-title,.date-label,.stat .label,.stat small,.menu-tile small,.data-table td small,.cart-line .line-meta,.auth-card>p,.auth-card label,.auth-card .eyebrow,.login-menu-link,.auth-form-top,.auth-form-bottom,.public-hms,.guest-summary small,.booking-badge,.hms-res-hero p,.hms-res-tools label,.hms-field-label-row small,.hms-table-option small{
  color:var(--hms-muted)!important;
}
h1,h2,h3,h4,h5,h6,b,strong,.heading-copy h1,.hms-res-hero h1,.hms-res-card h2,.section-label h2,.table-center b,.table-number,.data-table td,.data-table th,.topbar-title b,.guest-summary strong,.hms-table-option b,.hms-table-code,.upgrade-card h1{
  color:var(--hms-ink)!important;
}

/* Sidebar */
.sidebar{
  background:#222222!important;
  color:#ffffff!important;
  border-left:1px solid rgba(255,255,255,.10)!important;
  box-shadow:none!important;
}
.sidebar .brand{
  border-bottom:1px solid rgba(255,255,255,.10)!important;
  padding-bottom:18px!important;
  margin-bottom:6px!important;
}
.sidebar .brand b,.sidebar .hms-brand-copy,.sidebar .hms-brand-single b,.sidebar-bottom,.sidebar-bottom .avatar,.sidebar .brand small,.sidebar .hms-brand-copy small{color:#ffffff!important}
.sidebar .nav-group,.sidebar .nav-group.secondary,.sidebar-bottom small{color:rgba(255,255,255,.68)!important;border-top-color:rgba(255,255,255,.10)!important}
.sidebar .nav-link{
  color:rgba(255,255,255,.90)!important;
  background:transparent!important;
}
.sidebar .nav-link svg{color:rgba(255,255,255,.82)!important}
.sidebar .nav-link:hover{background:rgba(255,255,255,.08)!important;color:#ffffff!important}
.sidebar .nav-link.active{
  background:#c19c35!important;
  color:#222222!important;
  font-weight:700!important;
}
.sidebar .nav-link.active svg,.sidebar .nav-dot{color:#222222!important;background:#222222!important}
.sidebar-venue{
  background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
.sidebar-venue b{color:#ffffff!important}
.sidebar-venue small{color:rgba(255,255,255,.68)!important}
.sidebar-bottom{border-top-color:rgba(255,255,255,.10)!important}
.sidebar-bottom .avatar{background:#c19c35!important;color:#222222!important}
.sidebar .genesis-credit{border-top-color:rgba(255,255,255,.10)!important}
.sidebar .genesis-credit small{color:rgba(255,255,255,.68)!important}
.sidebar .genesis-credit img,.hms-itgenesis-logo,.hms-logo-img,.receipt-brand img{filter:none!important;opacity:1!important;mix-blend-mode:normal!important}

/* Header and buttons */
.topbar{background:#ffffff!important;border-bottom-color:var(--hms-line)!important}
.topbar-menu,.topbar-avatar,.avatar,.initial .avatar{background:#222222!important;color:#ffffff!important}
.btn{background:#ffffff!important;border-color:var(--hms-line-strong)!important;color:#222222!important}
.btn:hover{background:var(--hms-soft-dark)!important;border-color:rgba(34,34,34,.22)!important}
.btn.primary,.btn.dark{
  background:#222222!important;
  border-color:#222222!important;
  color:#ffffff!important;
}
.btn.primary:hover,.btn.dark:hover{background:rgba(34,34,34,.92)!important}
.btn.secondary{
  background:#c19c35!important;
  border-color:#c19c35!important;
  color:#222222!important;
}
.btn.secondary:hover{background:rgba(193,156,53,.90)!important}
.btn.danger{
  background:rgba(34,34,34,.04)!important;
  border-color:rgba(34,34,34,.18)!important;
  color:#222222!important;
}

/* Tables/cards */
.data-table th{background:rgba(193,156,53,.12)!important;border-bottom-color:var(--hms-line)!important}
.data-table td{border-bottom-color:var(--hms-line)!important}
.data-table tr:hover td{background:rgba(193,156,53,.06)!important}
.empty{background:#ffffff!important;border-color:var(--hms-line)!important;color:var(--hms-muted)!important}
.flow-hint{background:rgba(193,156,53,.08)!important;border-right-color:#c19c35!important;color:#222222!important}
.field-error{color:#222222!important;background:rgba(193,156,53,.10)!important;padding:4px 8px;border-radius:8px}

/* Stats */
.stat{border-color:var(--hms-line)!important}
.stat.primary{
  background:#222222!important;
  border-color:#222222!important;
}
.stat.primary .label,.stat.primary small{color:rgba(255,255,255,.72)!important}
.stat.primary .value,.stat.primary .stat-mark{color:#c19c35!important}

/* Hall / tables */
.hall-selector{
  background:#222222!important;
  color:#ffffff!important;
  box-shadow:var(--hms-shadow)!important;
}
.hall-label{border-left-color:rgba(255,255,255,.12)!important}
.hall-label span{color:#c19c35!important}
.hall-label strong{color:#ffffff!important}
.hall-tab{
  background:rgba(255,255,255,.06)!important;
  color:#ffffff!important;
  border-color:rgba(255,255,255,.12)!important;
}
.hall-tab b{
  background:rgba(255,255,255,.08)!important;
  color:#c19c35!important;
}
.hall-tab:hover,.hall-tab:focus-visible{border-color:#c19c35!important}
.hall-tab.active{background:#c19c35!important;color:#222222!important;border-color:#c19c35!important}
.hall-tab.active b{background:#222222!important;color:#ffffff!important}
.floor-legend,.section-label .legend{color:var(--hms-muted)!important}
.floor-legend span:first-child,.legend .busy:before,.booking-chip{color:#222222!important}
.floor-grid,.floor-table{background:transparent!important}
.table-card,.floor-table .table-card{background:#ffffff!important;border-color:var(--hms-line)!important}
.table-card:hover{box-shadow:var(--hms-shadow)!important}
.table-card.available,.table-card.occupied,.table-card.cleaning,.table-card.disabled{background:#ffffff!important}
.table-card.available .seats-symbol,.table-card.occupied .seats-symbol,.table-card.cleaning .seats-symbol,.seats-symbol{
  background:rgba(193,156,53,.10)!important;
  border-color:#c19c35!important;
  color:#222222!important;
}
.seats-symbol:before,.seats-symbol:after,.table-card.available .seats-symbol:before,.table-card.available .seats-symbol:after,.table-card.occupied .seats-symbol:before,.table-card.occupied .seats-symbol:after,.table-card.cleaning .seats-symbol:before,.table-card.cleaning .seats-symbol:after{background:#c19c35!important}
.table-bottom{border-top-color:var(--hms-line)!important}
.booking-badge,.booking-badge.phone,.booking-chip{
  background:rgba(193,156,53,.10)!important;
  border-color:rgba(193,156,53,.38)!important;
  color:#222222!important;
}
.guest-summary{border-color:var(--hms-line)!important}
.guest-summary>div{border-left-color:var(--hms-line)!important}

/* Pills / statuses */
.pill,.pill.available,.pill.served,.pill.closed,.pill.ready,.pill.completed,.pill.issued,.pill.occupied,.pill.preparing,.pill.seated,.pill.cleaning,.pill.queued,.pill.confirmed,.pill.open,.pill.cancelled,.pill.no_show,.pill.void,.pill.disabled,.pill.draft{
  background:rgba(193,156,53,.12)!important;
  color:#222222!important;
  border:1px solid rgba(193,156,53,.24)!important;
}

/* Reservations redesign blocks */
.hms-res-card,.hms-list-card{background:#ffffff!important;border-color:var(--hms-line)!important}
.hms-res-tools label{background:#ffffff!important;border-color:var(--hms-line)!important}
.hms-duration-chip{display:none!important}
.hms-table-option{
  background:#ffffff!important;
  border-color:var(--hms-line)!important;
  color:#222222!important;
}
.hms-table-option .hms-chair{background:rgba(193,156,53,.12)!important;color:#222222!important}
.hms-table-option:has(input:checked){background:rgba(193,156,53,.08)!important;border-color:#c19c35!important;box-shadow:0 0 0 3px rgba(193,156,53,.16)!important}
.hms-table-option input{accent-color:#c19c35!important}
.hms-table-code{background:rgba(193,156,53,.10)!important;border-color:rgba(193,156,53,.30)!important}

/* Auth / login */
.auth-body,.auth-layout,.auth-feature{background:#222222!important;color:#ffffff!important}
.auth-feature p,.auth-photo-credit{color:rgba(255,255,255,.78)!important}
.auth-feature .accent,.auth-story em,.auth-card h2 span{color:#c19c35!important}
.auth-form{background:#f8f9fb!important}
.auth-top .brand-mark,.login-emblem,.brand-mark{background:#222222!important;color:#ffffff!important}
.mini-floor span{background:rgba(255,255,255,.05)!important;border-color:rgba(255,255,255,.14)!important;color:#ffffff!important}
.online,.notice{background:rgba(193,156,53,.10)!important;color:#222222!important}
.error{background:rgba(34,34,34,.06)!important;color:#222222!important}

/* Receipt / public bits shared here */
.public-head{background:linear-gradient(90deg,rgba(34,34,34,.78),rgba(34,34,34,.88)),url('photos/restaurant.jpg') center 55%/cover!important}
.public-head p{color:rgba(255,255,255,.82)!important}
.public-hms .genesis-credit small{color:var(--hms-muted)!important}
.photo-label{background:rgba(34,34,34,.82)!important;color:#ffffff!important}

@media(max-width:900px){
  .sidebar{background:#222222!important}
  .topbar{background:#ffffff!important}
}

/* HMS v7 visual correction: lighter premium UI with the same approved 4 colors.
   This pass fixes the v6 heavy black blocks while keeping: #f8f9fb, #fff, #222, #c19c35. */
:root{
  --v7-bg:#f8f9fb;
  --v7-surface:#ffffff;
  --v7-ink:#222222;
  --v7-gold:#c19c35;
  --v7-line:rgba(34,34,34,.10);
  --v7-line-2:rgba(34,34,34,.16);
  --v7-muted:rgba(34,34,34,.62);
  --v7-soft:rgba(34,34,34,.035);
  --v7-soft-2:rgba(193,156,53,.10);
  --v7-soft-3:rgba(193,156,53,.18);
  --v7-shadow:0 12px 28px rgba(34,34,34,.055);
  --v7-shadow-soft:0 8px 22px rgba(34,34,34,.04);
}
html,body,.workspace{background:var(--v7-bg)!important;color:var(--v7-ink)!important}
.shell{grid-template-columns:224px minmax(0,1fr)!important}
.content{max-width:1600px!important;padding:28px 34px 42px!important}

/* Sidebar stays dark, but cleaner and less aggressive */
.sidebar{
  background:#222222!important;
  color:#fff!important;
  border-left:0!important;
  padding:18px 12px 12px!important;
  box-shadow:none!important;
}
.sidebar .brand{
  min-height:auto!important;
  padding:0 8px 18px!important;
  margin-bottom:10px!important;
  border-bottom:1px solid rgba(255,255,255,.11)!important;
  justify-content:flex-start!important;
}
.hms-itgenesis-mark{width:90px!important;height:26px!important;justify-content:flex-start!important}.hms-itgenesis-logo{width:90px!important;max-height:26px!important;object-fit:contain!important;filter:none!important}.hms-brand-single b{font-size:18px!important;color:#fff!important;letter-spacing:.2px!important}
.sidebar .nav-group{padding:10px 10px 6px!important;color:rgba(255,255,255,.54)!important;font-size:10px!important;letter-spacing:.2px!important}
.sidebar .nav-link{
  min-height:38px!important;
  padding:8px 10px!important;
  margin-bottom:4px!important;
  border-radius:10px!important;
  color:rgba(255,255,255,.86)!important;
  font-size:12px!important;
  background:transparent!important;
  border:1px solid transparent!important;
}
.sidebar .nav-link svg{width:17px!important;height:17px!important;color:rgba(255,255,255,.72)!important}
.sidebar .nav-link:hover{background:rgba(255,255,255,.06)!important;border-color:rgba(255,255,255,.08)!important;color:#fff!important}
.sidebar .nav-link.active{
  background:#c19c35!important;
  border-color:#c19c35!important;
  color:#222222!important;
  font-weight:800!important;
}
.sidebar .nav-link.active svg{color:#222222!important}.sidebar .nav-dot{background:#222222!important}
.sidebar-venue{background:rgba(255,255,255,.055)!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:12px!important;margin:14px 6px 10px!important}
.sidebar-bottom{border-top-color:rgba(255,255,255,.11)!important;padding:13px 6px 0!important}.sidebar-bottom .avatar{background:#c19c35!important;color:#222!important}.sidebar .genesis-credit{border-top-color:rgba(255,255,255,.11)!important;padding:12px 6px 4px!important}

/* Header */
.topbar{height:66px!important;background:#fff!important;border-bottom:1px solid var(--v7-line)!important;padding-inline:28px!important}
.topbar-title,.date-label{color:var(--v7-muted)!important}.topbar-title b{color:#222!important}.topbar-avatar,.avatar{background:#222!important;color:#fff!important}.topbar-menu{background:#222!important;color:#fff!important;border-radius:3px!important;padding:4px 8px!important}

/* General components */
.card,.data-wrap,.cart,.stat,.menu-tile,.managed-card,.table-card,.hms-res-card,.hms-list-card,.guest-summary,.menu-filters,.upgrade-card,.auth-card{
  background:#ffffff!important;
  border:1px solid var(--v7-line)!important;
  box-shadow:var(--v7-shadow-soft)!important;
}
.card:hover,.stat:hover,.table-card:hover,.managed-card:hover,.menu-tile:hover{box-shadow:var(--v7-shadow)!important}
input,select,textarea{background:#fff!important;border-color:var(--v7-line-2)!important;color:#222!important;border-radius:10px!important}
input::placeholder,textarea::placeholder{color:rgba(34,34,34,.42)!important}
input:focus,select:focus,textarea:focus{border-color:#c19c35!important;outline:3px solid rgba(193,156,53,.18)!important}
label,.muted,.heading-copy p,.legend,.table-bottom,.table-center small,.inline-hint,.stat .label,.stat small,.menu-tile small,.data-table td small,.cart-line .line-meta,.auth-card>p,.auth-card label,.auth-card .eyebrow,.login-menu-link,.auth-form-top,.auth-form-bottom,.public-hms,.hms-res-hero p,.hms-field-label-row small,.hms-table-option small{color:var(--v7-muted)!important}
h1,h2,h3,h4,h5,h6,b,strong,.heading-copy h1,.hms-res-hero h1,.hms-res-card h2,.section-label h2,.table-center b,.table-number,.data-table td,.data-table th,.topbar-title b,.guest-summary strong,.hms-table-option b,.hms-table-code{color:#222!important}

/* Buttons: less black, better hierarchy */
.btn{background:#fff!important;border:1px solid var(--v7-line-2)!important;color:#222!important;border-radius:10px!important;box-shadow:none!important}
.btn:hover{background:var(--v7-soft)!important;border-color:rgba(34,34,34,.24)!important}
.btn.primary{
  background:#222!important;
  border-color:#222!important;
  color:#fff!important;
}
.btn.primary:hover{background:rgba(34,34,34,.92)!important}
.btn.dark{background:#fff!important;border-color:var(--v7-line-2)!important;color:#222!important}.btn.dark:hover{background:var(--v7-soft)!important}
.btn.secondary{
  background:#c19c35!important;
  border-color:#c19c35!important;
  color:#222!important;
  font-weight:800!important;
}
.btn.secondary:hover{background:rgba(193,156,53,.88)!important}.btn.danger{background:#fff!important;color:#222!important;border-color:var(--v7-line-2)!important}

/* Dashboard welcome strip: remove ugly brown block */
.welcome-strip{
  grid-template-columns:minmax(0,1fr) 38%!important;
  background:#fff!important;
  border:1px solid var(--v7-line)!important;
  border-radius:18px!important;
  box-shadow:var(--v7-shadow)!important;
  min-height:190px!important;
  overflow:hidden!important;
}
.welcome-strip:before{content:'';position:absolute;inset-inline-start:0;top:0;bottom:0;width:6px;background:#c19c35;z-index:2}
.welcome-strip>div{padding:30px 34px!important;position:relative;z-index:3!important;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.94) 78%,rgba(255,255,255,.70) 100%)!important}
.welcome-strip .eyebrow{color:#c19c35!important;font-weight:800!important}.welcome-strip h2{color:#222!important;font-size:28px!important}.welcome-strip p{color:var(--v7-muted)!important}.welcome-strip>img{left:0!important;width:42%!important;opacity:.82!important;filter:grayscale(.08)!important;mask-image:linear-gradient(90deg,#000 64%,transparent)!important}.welcome-stamp{border-color:rgba(255,255,255,.75)!important;background:rgba(34,34,34,.35)!important;color:#fff!important}

/* Stats: no huge black stat block */
.stats{gap:16px!important}.stat{border-radius:16px!important;min-height:132px!important;padding:20px 22px!important}.stat .value{font-size:34px!important;color:#222!important}.stat.primary{
  background:#fff!important;
  border:1px solid rgba(193,156,53,.45)!important;
  box-shadow:0 12px 30px rgba(193,156,53,.10)!important;
  position:relative!important;
  overflow:hidden!important;
}
.stat.primary:before{content:'';position:absolute;inset-inline-start:0;top:0;bottom:0;width:5px;background:#c19c35}.stat.primary .label,.stat.primary small{color:var(--v7-muted)!important}.stat.primary .value,.stat.primary .stat-mark{color:#c19c35!important}

/* Tables page hall selector: make it a premium light filter bar, not a black banner */
.hall-selector{
  background:#fff!important;
  color:#222!important;
  border:1px solid var(--v7-line)!important;
  border-radius:18px!important;
  padding:16px 18px!important;
  margin-bottom:20px!important;
  box-shadow:var(--v7-shadow-soft)!important;
  align-items:center!important;
}
.hall-label{
  border-left:1px solid var(--v7-line)!important;
  min-width:160px!important;
  padding-left:18px!important;
}
.hall-label span{color:#c19c35!important;font-weight:800!important}.hall-label strong{color:#222!important;font-size:20px!important}
.hall-tabs{gap:10px!important}.hall-tab{
  background:#fff!important;
  color:#222!important;
  border:1px solid var(--v7-line-2)!important;
  border-radius:13px!important;
  min-width:132px!important;
  min-height:48px!important;
  padding:10px 16px!important;
  box-shadow:0 6px 14px rgba(34,34,34,.03)!important;
}
.hall-tab b{background:rgba(193,156,53,.14)!important;color:#222!important;border:1px solid rgba(193,156,53,.25)!important}.hall-tab:hover{border-color:#c19c35!important;background:rgba(193,156,53,.05)!important}.hall-tab.active{background:#c19c35!important;color:#222!important;border-color:#c19c35!important;box-shadow:0 10px 22px rgba(193,156,53,.20)!important}.hall-tab.active b{background:#222!important;color:#fff!important;border-color:#222!important}

/* Floor grid and table cards */
.floor-grid{background:transparent!important;border:1px solid var(--v7-line)!important;border-radius:18px!important;padding:16px!important;gap:16px!important}.floor-table{gap:0!important}.table-card,.floor-table .table-card{background:#fff!important;border-color:var(--v7-line)!important;border-radius:14px!important;min-height:205px!important}.table-card.available,.table-card.occupied,.table-card.cleaning,.table-card.disabled{background:#fff!important}.table-card .pill{background:rgba(193,156,53,.12)!important;color:#222!important;border:1px solid rgba(193,156,53,.22)!important}.seats-symbol,.table-card.available .seats-symbol,.table-card.occupied .seats-symbol,.table-card.cleaning .seats-symbol{background:#fff!important;border-color:#c19c35!important;color:#222!important}.seats-symbol:before,.seats-symbol:after{background:#c19c35!important}.table-bottom{border-top-color:var(--v7-line)!important}.floor-table-actions{padding-top:7px!important}.booking-badge,.booking-badge.phone,.booking-chip{background:rgba(193,156,53,.08)!important;border-color:rgba(193,156,53,.28)!important;color:#222!important;border-radius:0 0 12px 12px!important}

/* Reservations page */
.hms-res-page{gap:18px!important}.hms-res-hero{margin-bottom:0!important;padding:4px 0 2px!important}.hms-res-hero h1{font-size:32px!important}.hms-res-tools label{background:#fff!important;border-color:var(--v7-line)!important;color:var(--v7-muted)!important}.hms-res-card{border-radius:18px!important;padding:22px!important}.hms-reservation-fields label{color:#222!important}.hms-field-label-row{margin-top:8px!important}.hms-table-picker{gap:11px!important}.hms-table-option{background:#fff!important;border-color:var(--v7-line)!important;border-radius:13px!important;box-shadow:0 5px 13px rgba(34,34,34,.025)!important}.hms-table-option .hms-chair{background:rgba(193,156,53,.12)!important;color:#222!important}.hms-table-option:has(input:checked){background:rgba(193,156,53,.08)!important;border-color:#c19c35!important;box-shadow:0 0 0 3px rgba(193,156,53,.16)!important}.hms-inline-actions{justify-content:flex-start!important}.hms-list-card{border-radius:18px!important;padding:16px!important}.data-table th{background:rgba(193,156,53,.10)!important;color:#222!important;font-weight:800!important;border-bottom-color:var(--v7-line)!important}.data-table td{border-bottom-color:var(--v7-line)!important}.data-table tr:hover td{background:rgba(193,156,53,.04)!important}.hms-table-code{background:rgba(193,156,53,.10)!important;border-color:rgba(193,156,53,.26)!important;color:#222!important}.empty{background:#fff!important;color:var(--v7-muted)!important;border-color:var(--v7-line)!important}

/* Status pills: consistent, calm */
.pill,.pill.available,.pill.served,.pill.closed,.pill.ready,.pill.completed,.pill.issued,.pill.occupied,.pill.preparing,.pill.seated,.pill.cleaning,.pill.queued,.pill.confirmed,.pill.open,.pill.cancelled,.pill.no_show,.pill.void,.pill.disabled,.pill.draft{background:rgba(193,156,53,.11)!important;color:#222!important;border:1px solid rgba(193,156,53,.22)!important}
.flow-hint{background:rgba(193,156,53,.08)!important;border-right-color:#c19c35!important;color:#222!important}.field-error{background:rgba(193,156,53,.10)!important;color:#222!important}

/* Remove all reservation-duration UI text/chips completely */
.hms-duration-chip{display:none!important}.hms-list-card .section-label small{font-size:11px!important;color:var(--v7-muted)!important}

/* Login/public minor consistency */
.auth-layout,.auth-body,.auth-feature{background:#222!important}.auth-form{background:#f8f9fb!important}.auth-feature p,.auth-photo-credit{color:rgba(255,255,255,.75)!important}.auth-feature .accent,.auth-story em,.auth-card h2 span{color:#c19c35!important}.online,.notice{background:rgba(193,156,53,.10)!important;color:#222!important}.error{background:rgba(34,34,34,.05)!important;color:#222!important}
.receipt-brand img,.sidebar .genesis-credit img,.hms-itgenesis-logo,.hms-logo-img{filter:none!important;mix-blend-mode:normal!important;opacity:1!important}

@media(max-width:1200px){.shell{grid-template-columns:214px minmax(0,1fr)!important}.content{padding:24px 24px 38px!important}.hall-tab{min-width:118px!important}}
@media(max-width:900px){.shell{grid-template-columns:1fr!important}.sidebar{width:230px!important;overflow-y:auto!important}.content{padding:22px 18px 34px!important}.hall-selector{align-items:flex-start!important;flex-direction:column!important}.hall-label{border-left:0!important;border-bottom:1px solid var(--v7-line)!important;padding:0 0 12px!important;width:100%!important}.welcome-strip{grid-template-columns:1fr!important}.welcome-strip>img{width:55%!important;opacity:.35!important}}
@media(max-width:650px){.content{padding:18px 14px 30px!important}.stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.floor-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:10px!important}.hall-tabs{width:100%!important}.hall-tab{min-width:108px!important}.welcome-strip h2{font-size:24px!important}.hms-res-hero h1{font-size:27px!important}}

/* HMS v8: final 4-color lock. The v6/v7 passes above covered the shell, buttons,
   cards and pills but left several older layers (app.css/visual.css/design.css and
   the early "burger"/"harmony" blocks in this file) showing their original teal,
   green, red and brown colors on links, prices, ticket columns and legends. This
   pass closes every one of those gaps so the whole app uses only:
   #f8f9fb (page) · #ffffff (surface) · #222222 (ink) · #c19c35 (gold accent). */
a{color:#c19c35!important}
a:hover{color:#222222!important}
.eyebrow{color:#c19c35!important}
.menu-tile h3,.managed-copy h3{color:#222222!important}
.menu-tile .price,.managed-copy .price,.price small{color:#c19c35!important}
.menu-tile .add-icon{background:#c19c35!important;color:#222222!important}
.managed-actions .danger{color:#222222!important}
.managed-actions .danger:hover{color:#8f211d!important}
.cart-totals .grand{color:#222222!important;border-color:rgba(193,156,53,.35)!important}
.cart-totals .grand b{color:#222222!important}
.progressbar span{background:#c19c35!important}
.refresh-error{background:rgba(193,156,53,.12)!important;color:#222222!important}
.stat-mark,.stat:nth-child(3) .stat-mark,.stat:nth-child(4) .stat-mark{background:rgba(193,156,53,.14)!important;color:#222222!important}
.legend span:before{background:#c19c35!important}
.legend .busy:before{background:#222222!important}
.legend .clean:before{background:rgba(34,34,34,.35)!important}
.floor-legend span:nth-child(2){color:#222222!important}
.floor-legend span:nth-child(3){color:rgba(34,34,34,.55)!important}
.ticket-column,.ticket-column:nth-child(2),.ticket-column:nth-child(3){background:#ffffff!important;border:1px solid rgba(34,34,34,.10)!important}
.ticket-column h2,.ticket-column:nth-child(2) h2,.ticket-column:nth-child(3) h2{color:#222222!important}
.ticket.late{border-top-color:#c19c35!important}
.ticket-notes{background:rgba(193,156,53,.12)!important;color:#222222!important;border:1px solid rgba(193,156,53,.30)!important}
.table-option:has(input:checked){border-color:#c19c35!important;background:rgba(193,156,53,.10)!important}
.table-option input[type=checkbox],input[type=checkbox]{accent-color:#c19c35!important}

/* HMS v9: brand font lock — Noto Kufi Arabic / Noto Sans Arabic everywhere,
   loaded from Google Fonts in index.php. Falls back to the local Plex files
   only if the page ever loads without that Google Fonts link. */
html,body,button,input,select,textarea,.en,.stat .value,.table-number,.eyebrow,.menu-tile .price,.mini-floor span,.brand-mark,h1,h2,h3,h4,h5,h6{
  font-family:"Noto Kufi Arabic","Noto Sans Arabic","Kito",Plex,Tahoma,Arial,sans-serif!important;
}

/* HMS v10: status badges get their meaning back, reserved/occupied tables get a
   richer look again, the active sidebar icon gets real contrast — all still built
   from only the 4 approved colors (ink #222222, gold #c19c35, white, page gray). */

/* Focus rings were still teal/copper leftovers from older layers — lock to gold */
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #c19c35!important;outline-offset:3px!important}

/* Status pills: 4 distinct, meaningful looks instead of one flat gold chip */
.pill.available,.pill.served,.pill.closed,.pill.ready,.pill.completed,.pill.issued{
  background:rgba(193,156,53,.14)!important;color:#7a5f22!important;border:1px solid rgba(193,156,53,.40)!important;
}
.pill.occupied,.pill.preparing,.pill.seated{
  background:#222222!important;color:#ffffff!important;border:1px solid #222222!important;
}
.pill.cleaning,.pill.queued,.pill.confirmed,.pill.open{
  background:rgba(34,34,34,.06)!important;color:#222222!important;border:1px solid rgba(34,34,34,.18)!important;
}
.pill.cancelled,.pill.no_show,.pill.void,.pill.disabled{
  background:rgba(34,34,34,.04)!important;color:rgba(34,34,34,.5)!important;border:1px dashed rgba(34,34,34,.22)!important;
}
.pill.draft{background:#ffffff!important;color:rgba(34,34,34,.55)!important;border:1px dashed rgba(34,34,34,.18)!important}

/* Floor cards: bring back a visible difference between available / occupied / cleaning */
.table-card,.floor-table .table-card{background:#ffffff!important;border-color:rgba(34,34,34,.10)!important}
.table-card.occupied{background:rgba(193,156,53,.06)!important;border-color:rgba(193,156,53,.38)!important}
.table-card.cleaning{background:rgba(34,34,34,.03)!important;border-color:rgba(34,34,34,.16)!important;border-style:dashed!important}
.table-card.disabled{background:rgba(34,34,34,.02)!important;border-color:rgba(34,34,34,.12)!important;border-style:dashed!important;opacity:.6!important}
.seats-symbol,.table-card.available .seats-symbol{background:rgba(193,156,53,.10)!important;border-color:#c19c35!important;color:#222222!important}
.table-card.occupied .seats-symbol{background:#222222!important;border-color:#222222!important;color:#ffffff!important}
.table-card.occupied .seats-symbol:before,.table-card.occupied .seats-symbol:after{background:#ffffff!important}
.table-card.cleaning .seats-symbol{background:rgba(34,34,34,.05)!important;border-color:rgba(34,34,34,.28)!important;color:#222222!important}

/* Reserved-table ribbon: dark card with a gold accent line instead of a flat tint */
.booking-badge{background:#222222!important;color:#ffffff!important;border:0!important;border-top:3px solid #c19c35!important}
.booking-badge b{color:#eecb7c!important}
.booking-badge span{color:rgba(255,255,255,.75)!important}
.booking-badge.phone{border-top-style:dashed!important}
.booking-badge .btn{background:#c19c35!important;border-color:#c19c35!important;color:#222222!important}
.booking-badge .btn.ghost{background:transparent!important;border-color:rgba(255,255,255,.35)!important;color:#ffffff!important}

/* Sidebar: give the active item's icon real contrast instead of a faint stroke */
.sidebar .nav-link.active{box-shadow:0 6px 16px rgba(0,0,0,.20)!important}
.sidebar .nav-link.active svg{color:#222222!important;stroke-width:2.1!important}
.sidebar .nav-link svg{stroke-width:1.7!important}

/* A touch more polish on interactive surfaces */
.btn,.nav-link,.table-card,.managed-card,.menu-tile,.hall-tab{transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .15s ease!important}

/* HMS v11: back to plain, familiar status colors for available/occupied/cleaning —
   green = available, red = occupied, amber/yellow = cleaning — instead of the
   gold/ink treatment. Cancelled/void/draft stay muted grey as before. */
.pill.available,.pill.served,.pill.closed,.pill.ready,.pill.completed,.pill.issued{
  background:rgba(31,122,77,.12)!important;color:#1f7a4d!important;border:1px solid rgba(31,122,77,.35)!important;
}
.pill.occupied,.pill.preparing,.pill.seated{
  background:rgba(179,38,30,.12)!important;color:#b3261e!important;border:1px solid rgba(179,38,30,.35)!important;
}
.pill.cleaning,.pill.queued,.pill.confirmed,.pill.open{
  background:rgba(217,119,6,.14)!important;color:#a15c00!important;border:1px solid rgba(217,119,6,.35)!important;
}

.table-card.available{background:rgba(31,122,77,.045)!important;border-color:rgba(31,122,77,.30)!important}
.table-card.occupied{background:rgba(179,38,30,.045)!important;border-color:rgba(179,38,30,.30)!important}
.table-card.cleaning{background:rgba(217,119,6,.05)!important;border-color:rgba(217,119,6,.30)!important;border-style:solid!important}

.table-card.available .seats-symbol,.seats-symbol{background:rgba(31,122,77,.10)!important;border-color:#1f7a4d!important;color:#1f7a4d!important}
.table-card.available .seats-symbol:before,.table-card.available .seats-symbol:after{background:#1f7a4d!important}
.table-card.occupied .seats-symbol{background:rgba(179,38,30,.10)!important;border-color:#b3261e!important;color:#b3261e!important}
.table-card.occupied .seats-symbol:before,.table-card.occupied .seats-symbol:after{background:#b3261e!important}
.table-card.cleaning .seats-symbol{background:rgba(217,119,6,.12)!important;border-color:#a15c00!important;color:#a15c00!important}
.table-card.cleaning .seats-symbol:before,.table-card.cleaning .seats-symbol:after{background:#a15c00!important}

/* Legend dots, both the older .legend and the current .floor-legend markup */
.legend span:before{background:#1f7a4d!important}
.legend .busy:before{background:#b3261e!important}
.legend .clean:before{background:#a15c00!important}
.floor-legend span:first-child{color:#1f7a4d!important}
.floor-legend span:nth-child(2){color:#b3261e!important}
.floor-legend span:nth-child(3){color:#c19c35!important}

/* HMS v12: sidebar icon chips (real visible backdrop instead of a thin faint
   line), a stacked logo-then-"HMS" header, and the reservation tab restored to
   the lighter "drawer" look instead of the solid dark bar. */

/* Sidebar nav icons: give every icon a soft chip so it's always clearly visible,
   not just a thin stroke against a dark background */
.sidebar .nav-link{display:flex!important;align-items:center!important;gap:10px!important}
.sidebar .nav-link svg{
  display:inline-flex!important;
  width:34px!important;height:34px!important;
  padding:8px!important;box-sizing:border-box!important;
  border-radius:9px!important;
  background:rgba(255,255,255,.08)!important;
  color:rgba(255,255,255,.92)!important;
  stroke-width:1.9!important;
  flex:none!important;
}
.sidebar .nav-link:hover svg{background:rgba(255,255,255,.16)!important;color:#ffffff!important}
.sidebar .nav-link.active svg{background:rgba(34,34,34,.14)!important;color:#222222!important;stroke-width:2.1!important}

/* Sidebar header: logo alone on top, "HMS" on the line under it */
.sidebar .brand{
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  text-align:center!important;
  padding:16px 8px 20px!important;
}
.hms-itgenesis-mark{justify-content:center!important}
.hms-brand-single{justify-content:center!important;width:100%!important}

/* Reservation "drawer" under a table card: back to a lighter tab, not a solid bar */
.booking-badge{
  background:rgba(193,156,53,.14)!important;
  border:1px solid rgba(193,156,53,.38)!important;
  border-top:0!important;
  color:#7a5f22!important;
  margin:-3px 7px 0!important;
  border-radius:0 0 12px 12px!important;
  padding:11px 12px!important;
}
.booking-badge b{color:#5c4718!important}
.booking-badge span{color:#7a5f22!important}
.booking-badge.phone{
  background:rgba(179,38,30,.10)!important;
  border-color:rgba(179,38,30,.32)!important;
  color:#8a2a22!important;
}
.booking-badge.phone b{color:#7a231c!important}
.booking-badge.phone span{color:#8a2a22!important}
.booking-badge .btn{background:#222222!important;border-color:#222222!important;color:#ffffff!important}
.booking-badge .btn.ghost{background:transparent!important;border-color:rgba(34,34,34,.30)!important;color:#222222!important}
.booking-badge-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.booking-badge-head>span{font-size:9px!important;white-space:nowrap}
.booking-badge-time{font-weight:700;color:#5d491c!important}
.booking-badge-guest{font-size:11px;overflow-wrap:anywhere;color:#222!important}
.booking-badge-notes{display:block;padding-top:5px;border-top:1px dashed rgba(34,34,34,.16);color:#6f6257!important;line-height:1.6}

/* HMS v13: self-hosted brand font (no more depending on Google Fonts — Brave
   and ad-blockers were silently blocking that request for some visitors),
   sidebar cleanup, order-page contrast fixes, public-menu tab color, the
   login screen's missing photo/cropped logo, and a black-on-black button
   hover bug. */
@font-face{
  font-family:'Noto Kufi Arabic';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url('fonts/noto-kufi-arabic.woff2') format('woff2');
  unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1;
}
@font-face{
  font-family:'Noto Kufi Arabic';
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url('fonts/noto-kufi-arabic-latin.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215;
}

/* Sidebar: remove the "browse the menu" promo card entirely */
.sidebar-venue{display:none!important}

/* Sidebar ghost buttons (logout, etc.) were forced to ink text by the generic
   .btn rule, so on a dark sidebar they were invisible — and hovering made it
   worse by darkening the background too. Give them proper light text. */
.sidebar .btn,.logout-icon{color:rgba(255,255,255,.85)!important;background:transparent!important;border-color:rgba(255,255,255,.20)!important}
.sidebar .btn:hover,.logout-icon:hover{background:rgba(255,255,255,.12)!important;color:#ffffff!important;border-color:rgba(255,255,255,.35)!important}
.sidebar .btn svg,.logout-icon svg{color:rgba(255,255,255,.85)!important}
.sidebar .btn:hover svg,.logout-icon:hover svg{color:#ffffff!important}

/* Product navigation: grouped by workflow, always scrollable on short screens. */
.sidebar{overflow-y:auto!important;overscroll-behavior:contain!important;scrollbar-width:thin!important}
.sidebar nav{display:block!important}
.sidebar .nav-section{display:block;margin:0 0 8px}
.sidebar .nav-section .nav-group{display:flex!important;align-items:flex-start!important;justify-content:flex-start!important;gap:9px!important;padding:8px 9px 5px!important}
.sidebar .nav-section .nav-group>span{order:-1;min-width:18px;color:#c19c35!important;font-size:9px!important;padding-top:2px}
.sidebar .nav-section .nav-group div{display:grid;gap:1px}
.sidebar .nav-section .nav-group b{font-size:10px;color:rgba(255,255,255,.78);font-weight:700}
.sidebar .nav-section .nav-group small{font-size:8px;color:rgba(255,255,255,.42);line-height:1.5}
.sidebar .nav-section+.nav-section{border-top:1px solid rgba(255,255,255,.08);padding-top:5px}
.sidebar .genesis-credit{margin-top:4px!important}

/* Dashboard welcome banner: drop the photo, keep the card full-width */
.welcome-strip>img,.welcome-stamp{display:none!important}
.welcome-strip{grid-template-columns:1fr!important}
.welcome-strip>div{background:#ffffff!important}

/* Order/cart panel: totals were pale-on-cream and unreadable */
.cart-head{background:#222222!important;color:#ffffff!important}
.cart-head small{color:rgba(255,255,255,.70)!important}
.cart-totals{background:#f8f9fb!important}
.cart-totals .row{color:#222222!important}
.cart-totals .row span:first-child{color:rgba(34,34,34,.65)!important}

/* Public menu page: the "All" category tab was still leftover green */
.public-shell>.tabs .tab.active{background:#222222!important;border-color:#222222!important;color:#ffffff!important}

/* Login screen: restore the actual photo (it had been flattened to solid
   black), fix the heading text (it was forced ink-on-ink by the generic
   heading rule and was basically invisible), and stop the logo from being
   rendered oversized and cropped inside its circle. */
.auth-feature{
  background:linear-gradient(180deg,rgba(34,34,34,.30),rgba(34,34,34,.90)),linear-gradient(90deg,rgba(34,34,34,.20),rgba(34,34,34,.75)),url('photos/restaurant.jpg') center/cover!important;
}
.auth-feature h1,.auth-feature h1 br{color:#ffffff!important}
.auth-feature h1 em{color:#c19c35!important}
.login-emblem{
  width:84px!important;height:84px!important;
  padding:12px!important;box-sizing:border-box!important;
  overflow:hidden!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
}
.login-emblem .hms-login-logo{width:100%!important;height:100%!important;display:flex!important;align-items:center!important;justify-content:center!important}
.login-emblem .hms-login-logo img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important}
.auth-form .auth-card{border-top:3px solid #c19c35!important}

/* Keep the complete touch navigation inside narrow RTL viewports. */
@media(max-width:900px){
  .sidebar{right:0!important;left:auto!important;transform:translateX(100%)!important;max-width:calc(100vw - 48px)!important}
  .sidebar.open{transform:translateX(0)!important}
}

/* HMS V9 — global modal, validation, table/reservation and QR UX fixes. */
#modal[open]{display:flex!important;flex-direction:column!important;overflow:hidden!important;max-height:min(90dvh,900px)!important}
#modal .modal-head{flex:0 0 auto!important;position:relative!important;top:auto!important}
#modal .modal-body{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;scrollbar-gutter:stable!important}
#modal .modal-actions{position:sticky!important;bottom:0!important;margin-bottom:-28px!important;background:#fff!important;z-index:4!important;box-shadow:0 -12px 20px rgba(255,255,255,.96)!important}
@media(max-width:650px){#modal[open]{max-height:94dvh!important;width:min(680px,calc(100vw - 18px))!important}#modal .modal-body{padding:20px 16px!important}}

/* Native checkboxes must not inherit text-input dimensions/focus boxes. */
input[type="checkbox"]{appearance:auto!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;padding:0!important;margin:0!important;border:0!important;border-radius:3px!important;box-shadow:none!important;outline:none!important}
input[type="checkbox"]:focus-visible{outline:2px solid #c19c35!important;outline-offset:3px!important;box-shadow:none!important}
.hms-table-option input[type="checkbox"]{background:transparent!important}
.hms-table-option:hover{border-color:rgba(193,156,53,.58)!important;box-shadow:0 5px 13px rgba(34,34,34,.035)!important}
.hms-table-option:has(input:checked){box-shadow:0 0 0 2px rgba(193,156,53,.18)!important}

/* Inline Arabic validation before submission. */
.required-mark{display:inline!important;margin-inline-start:4px;color:#9b2d24!important;font-weight:900!important}
.field-error{display:block!important;margin-top:5px!important;padding:5px 8px!important;border-radius:8px!important;background:#fff3ef!important;color:#8f2a22!important;font-size:11px!important;font-weight:700!important;line-height:1.5!important}
.field-error[hidden]{display:none!important}
[aria-invalid="true"]{border-color:#a8473e!important;box-shadow:0 0 0 2px rgba(168,71,62,.10)!important}
.form-help{display:block;margin-top:6px;color:rgba(34,34,34,.60);font-size:11px;font-weight:500;line-height:1.6}

/* Multi-table selection capacity is explicit and updates live. */
.hms-capacity-summary{margin:10px 0 0;padding:8px 11px;border-radius:10px;background:rgba(193,156,53,.09);border:1px solid rgba(193,156,53,.20);color:#222;font-size:11px;font-weight:700}
.booking-badge-tables{display:block;padding:4px 7px;border-radius:7px;background:rgba(255,255,255,.56);margin-top:2px}

/* Make floor filters and KPIs visually different. */
.floor-filter-block{margin:0 0 20px;padding:14px 16px;border:1px solid rgba(34,34,34,.10);border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(34,34,34,.035)}
.floor-filter-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}
.floor-filter-title>div{display:flex;align-items:baseline;gap:8px}.floor-filter-title small{font-size:10px;font-weight:800;color:#c19c35;text-transform:uppercase;letter-spacing:.5px}.floor-filter-title strong{font-size:14px;color:#222}.floor-filter-title>span{font-size:11px;color:rgba(34,34,34,.58)}
.floor-filter-block .hall-tabs{padding:0;gap:8px}.floor-filter-block .hall-tab{background:#fff!important;color:#222!important;border-color:rgba(34,34,34,.13)!important;min-width:0;padding:9px 13px}.floor-filter-block .hall-tab b{background:rgba(193,156,53,.12)!important;color:#222!important}.floor-filter-block .hall-tab.active{background:#222!important;color:#fff!important;border-color:#222!important}.floor-filter-block .hall-tab.active b{background:#c19c35!important;color:#222!important}
.floor-kpis{margin-bottom:16px}.floor-kpi-title{margin:0 0 10px!important}.floor-kpi-title h2{font-size:15px!important}.floor-kpis .stats{margin-bottom:0!important}
@media(max-width:650px){.floor-filter-title{align-items:flex-start}.floor-filter-title>span{max-width:45%;text-align:left}.floor-filter-block .hall-tabs{overflow-x:auto;flex-wrap:nowrap}.floor-filter-block .hall-tab{flex:0 0 auto}}

/* Public menu QR is generated locally inside HMS. */
.public-menu-qr-card{display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:24px;align-items:center}
.public-menu-qr-copy h2{margin-bottom:6px}.public-menu-qr{width:190px;height:190px;justify-self:end;border:1px solid rgba(34,34,34,.10);border-radius:14px;background:#fff;padding:10px;image-rendering:pixelated}.qr-url{display:block;margin:12px 0;direction:ltr;text-align:left;word-break:break-all;color:#222}.qr-actions{margin-top:12px}
@media(max-width:650px){.public-menu-qr-card{grid-template-columns:1fr}.public-menu-qr{justify-self:center;width:180px;height:180px}.qr-actions .btn{flex:1}}

/* Modifier quantities can be split into groups with independent extras. */
.modifier-distribution{padding:14px;border:1px solid rgba(34,34,34,.10);border-radius:14px;background:#fafafa}.modifier-distribution h3{margin:0 0 4px}.modifier-distribution .inline-hint{margin:0}.modifier-group{margin-top:11px;padding:12px;border:1px solid rgba(34,34,34,.10);border-radius:12px;background:#fff}.modifier-group-head{margin-bottom:9px}.modifier-group-remove[hidden]{display:none!important}.modifier-group-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px;margin-top:10px}.modifier-group-label{grid-column:1/-1;font-size:11px;font-weight:800;color:rgba(34,34,34,.62)}.modifier-group-options .check{min-height:40px;padding:8px 10px;border:1px solid rgba(34,34,34,.10);border-radius:9px;background:#fff;cursor:pointer}.modifier-group-options .check:has(input:checked){border-color:#c19c35;background:rgba(193,156,53,.08)}.modifier-balance{margin:10px 0 0;padding:7px 10px;border-radius:9px;background:#edf6eb;color:#355c31;font-size:11px;font-weight:700}.modifier-balance.bad{background:#fff1ec;color:#922d25}
.field-label-text{display:inline-flex!important;align-items:center!important;gap:2px!important;line-height:1.35!important}

/* HMS V9.1 — keep sidebar wheel/touch scrolling, hide the visual scrollbar. */
.sidebar{
  overflow-y:auto!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
.sidebar::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
}
.sidebar::-webkit-scrollbar-track,
.sidebar::-webkit-scrollbar-thumb{
  background:transparent!important;
  border:0!important;
}

/* HMS V9.2 — interactive floor KPIs, filters, insights, and clearer reservation details. */
.floor-filter-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,360px);gap:14px;align-items:center}
.floor-filter-search{display:flex;align-items:center;gap:8px;justify-content:flex-end}.floor-filter-search input{width:100%;min-height:42px;border:1px solid rgba(34,34,34,.13);border-radius:11px;background:#fff;padding:9px 13px;font:inherit;color:#222}.floor-filter-search input:focus{outline:none;border-color:#c19c35;box-shadow:0 0 0 3px rgba(193,156,53,.10)}
.floor-kpi-title{display:flex!important;align-items:end!important;justify-content:space-between!important;gap:12px!important}.floor-kpi-title>div{display:flex;flex-direction:column;gap:3px}.floor-active-filter{display:inline-flex;align-items:center;min-height:30px;padding:5px 9px;border:1px solid rgba(193,156,53,.24);border-radius:999px;background:rgba(193,156,53,.08);font-size:10px;font-weight:800;color:#765c17}
.floor-kpi{position:relative;text-align:right;font:inherit;color:inherit;cursor:pointer;appearance:none;width:100%;overflow:hidden}.floor-kpi:hover{transform:translateY(-2px);border-color:rgba(193,156,53,.42)!important;box-shadow:0 12px 28px rgba(34,34,34,.07)}.floor-kpi:focus-visible{outline:3px solid rgba(193,156,53,.25);outline-offset:2px}.floor-kpi.active{border-color:#c19c35!important;box-shadow:0 0 0 2px rgba(193,156,53,.12),0 12px 28px rgba(34,34,34,.06)}.floor-kpi.primary.active{box-shadow:0 0 0 2px rgba(193,156,53,.22),0 12px 28px rgba(34,34,34,.08)}
.floor-kpi-filter{position:absolute;top:12px;left:12px;font-size:9px;font-weight:800;color:rgba(34,34,34,.44)}.floor-kpi.primary .floor-kpi-filter{color:rgba(255,255,255,.68)}.floor-kpi.active .floor-kpi-filter{color:#8b6913}
.floor-insights{display:grid;grid-template-columns:minmax(310px,.95fr) minmax(330px,1.15fr) minmax(220px,.7fr);gap:14px;margin:0 0 20px}.floor-insight-card,.floor-quick-stats{border:1px solid rgba(34,34,34,.10);border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(34,34,34,.035)}.floor-insight-card{padding:17px 18px}.floor-insight-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.floor-insight-head small{font-size:10px;color:#9b7b28;font-weight:800}.floor-insight-head h3{margin:4px 0 0;font-size:16px;color:#222}.floor-insight-head>span{font-size:10px;color:rgba(34,34,34,.50)}
.floor-donut-wrap{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center}.floor-donut{width:142px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;position:relative}.floor-donut:after{content:"";position:absolute;inset:25px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px rgba(34,34,34,.05)}.floor-donut>div{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}.floor-donut strong{font-size:28px;line-height:1;color:#222}.floor-donut span{margin-top:4px;font-size:9px;color:rgba(34,34,34,.54)}
.floor-donut-legend{display:flex;flex-direction:column;gap:7px}.floor-donut-legend button,.floor-donut-legend>span{display:grid;grid-template-columns:9px 1fr auto;gap:7px;align-items:center;min-height:29px;padding:5px 7px;border:0;border-radius:8px;background:transparent;color:#333;font:inherit;font-size:10px;text-align:right}.floor-donut-legend button{cursor:pointer}.floor-donut-legend button:hover{background:#f7f7f4}.floor-donut-legend i{width:8px;height:8px;border-radius:50%}.floor-donut-legend i.available{background:#1f7a4d}.floor-donut-legend i.occupied{background:#b83a32}.floor-donut-legend i.cleaning{background:#c19c35}.floor-donut-legend i.disabled{background:#9a9a96}.floor-donut-legend b{font-size:11px}
.floor-area-bars{display:flex;flex-direction:column;gap:8px}.floor-area-row{display:grid;grid-template-columns:minmax(115px,1fr) minmax(90px,1.4fr) 40px;gap:9px;align-items:center;width:100%;padding:7px 8px;border:0;border-radius:9px;background:transparent;text-align:right;font:inherit;color:#222;cursor:pointer}.floor-area-row:hover{background:#f7f7f4}.floor-area-row>span:first-child{display:flex;flex-direction:column;gap:2px}.floor-area-row b{font-size:11px}.floor-area-row small{font-size:9px;color:rgba(34,34,34,.52)}.floor-area-track,.v2-report-bar-track{display:block;height:8px;border-radius:999px;background:#efefec;overflow:hidden}.floor-area-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#c19c35,#222)}.floor-area-row>strong{font-size:11px;text-align:left}
.floor-quick-stats{display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.floor-quick-stats>div{display:flex;flex-direction:column;justify-content:center;min-height:96px;padding:13px;border-bottom:1px solid rgba(34,34,34,.08);border-left:1px solid rgba(34,34,34,.08)}.floor-quick-stats>div:nth-child(2n){border-left:0}.floor-quick-stats>div:nth-last-child(-n+2){border-bottom:0}.floor-quick-stats small{font-size:9px;color:rgba(34,34,34,.53)}.floor-quick-stats strong{margin:5px 0 2px;font-size:23px;color:#222}.floor-quick-stats span{font-size:9px;color:#9b7b28}
.floor-results-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:2px 0 10px}.floor-results-head>div:first-child{display:flex;align-items:baseline;gap:8px}.floor-results-head b{font-size:15px}.floor-results-head>div:first-child span{font-size:10px;color:rgba(34,34,34,.52)}.floor-results-head .floor-legend{margin:0}
.booking-detail-card{gap:0!important;margin:-2px 7px 0!important;padding:13px!important;border-radius:0 0 13px 13px!important;background:#fff!important;color:#222!important;box-shadow:0 9px 22px rgba(34,34,34,.045)}.booking-detail-card.phone{background:linear-gradient(180deg,#fff,#fffaf8)!important}.booking-detail-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:10px!important;margin:0 0 10px!important}.booking-detail-head>div:first-child{display:flex;flex-direction:column;gap:2px}.booking-detail-head small{font-size:9px;color:#9b7b28;font-weight:800}.booking-detail-head strong{font-size:13px}.booking-detail-tags{display:flex!important;gap:5px!important;margin:0!important;flex-wrap:wrap;justify-content:flex-end}.booking-detail-tags span{padding:4px 7px;border-radius:999px;background:rgba(193,156,53,.10);font-size:9px;font-weight:800;color:#6f5719}
.booking-detail-facts{display:grid!important;grid-template-columns:1fr 1fr;gap:8px!important;margin:0 0 10px!important}.booking-detail-facts>div{display:flex;flex-direction:column;gap:2px;padding:8px 9px;border:1px solid rgba(34,34,34,.08);border-radius:9px;background:#fafafa}.booking-detail-facts small,.booking-detail-tables>small{font-size:8px;color:rgba(34,34,34,.50)}.booking-detail-facts b,.booking-contact-link{font-size:10px;font-weight:800;color:#222;text-decoration:none}.booking-contact-link:hover{text-decoration:underline}.booking-detail-tables{margin:0 0 8px}.booking-detail-tables>div{display:flex;flex-wrap:wrap;gap:5px;margin-top:5px}.booking-detail-tables span{display:inline-flex;padding:4px 7px;border-radius:7px;background:#222;color:#fff;font-size:9px;font-weight:800}.booking-detail-note{margin:7px 0!important;padding:7px 9px;border-right:2px solid #c19c35;background:#faf7ef;border-radius:7px;font-size:9px;line-height:1.55}.booking-detail-actions{display:grid!important;grid-template-columns:1fr 1fr;gap:6px!important;margin:10px 0 0!important}.booking-detail-actions .btn{width:100%}
@media(max-width:1050px){.floor-insights{grid-template-columns:1fr 1fr}.floor-quick-stats{grid-column:1/-1;grid-template-columns:repeat(4,1fr)}.floor-quick-stats>div{border-bottom:0;border-left:1px solid rgba(34,34,34,.08)!important}.floor-quick-stats>div:last-child{border-left:0!important}}
@media(max-width:760px){.floor-filter-controls{grid-template-columns:1fr}.floor-filter-search{justify-content:stretch}.floor-filter-search .btn{flex:0 0 auto}.floor-insights{grid-template-columns:1fr}.floor-quick-stats{grid-column:auto;grid-template-columns:1fr 1fr}.floor-quick-stats>div{border-bottom:1px solid rgba(34,34,34,.08)!important}.floor-quick-stats>div:nth-child(2n){border-left:0!important}.floor-quick-stats>div:nth-last-child(-n+2){border-bottom:0!important}.floor-donut-wrap{grid-template-columns:125px 1fr}.floor-donut{width:120px}.floor-donut:after{inset:21px}.floor-results-head{align-items:flex-start;flex-direction:column}.floor-kpi-filter{display:none}}
@media(max-width:480px){.floor-donut-wrap{grid-template-columns:1fr}.floor-donut{justify-self:center}.floor-kpi-title{align-items:flex-start!important}.floor-active-filter{display:none}.booking-detail-facts{grid-template-columns:1fr}.booking-detail-actions{grid-template-columns:1fr}}

/* HMS V9.2.1 — compact booking details + actionable operations KPIs. */
.ops-kpis .ops-kpi{position:relative;width:100%;appearance:none;text-align:right;font:inherit;color:inherit;cursor:pointer;overflow:hidden;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.ops-kpis .ops-kpi:hover{transform:translateY(-2px);border-color:rgba(193,156,53,.42)!important;box-shadow:0 12px 28px rgba(34,34,34,.07)}.ops-kpis .ops-kpi:focus-visible{outline:3px solid rgba(193,156,53,.24);outline-offset:2px}.ops-kpi-action{position:absolute;top:12px;left:12px;font-size:9px;font-weight:800;color:rgba(34,34,34,.42)}.ops-kpi.primary .ops-kpi-action{color:rgba(255,255,255,.68)}
.booking-compact{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px!important;margin:-2px 7px 0!important;padding:9px 10px!important;border-radius:0 0 12px 12px!important;background:#fff!important;color:#222!important;border:1px solid rgba(34,34,34,.08)!important;border-top:0!important;box-shadow:0 7px 18px rgba(34,34,34,.035)!important}.booking-compact.phone{background:linear-gradient(180deg,#fff,#fffaf8)!important}.booking-compact-main{min-width:0;display:flex;flex-direction:column;gap:5px}.booking-compact-title,.booking-compact-meta{display:flex;align-items:center;gap:6px;min-width:0;flex-wrap:wrap}.booking-compact-title>span{font-size:8px;font-weight:800;color:#9b7b28}.booking-compact-title strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:115px}.booking-compact-title em{font-style:normal;padding:2px 5px;border-radius:999px;background:rgba(193,156,53,.10);font-size:8px;font-weight:800;color:#6f5719}.booking-compact-meta>span,.booking-compact-phone{font-size:8.5px;color:rgba(34,34,34,.62);text-decoration:none;white-space:nowrap}.booking-compact-phone:hover{text-decoration:underline}.booking-compact-tables{display:inline-flex!important;gap:3px!important;align-items:center}.booking-compact-tables b{display:inline-flex;padding:2px 5px;border-radius:5px;background:#222;color:#fff;font-size:7.5px;line-height:1.3}.booking-compact-actions{display:flex!important;align-items:center;gap:5px!important;margin:0!important}.booking-compact-actions .btn{min-height:30px!important;padding:5px 8px!important;font-size:9px!important;white-space:nowrap}.floor-area-row.static{cursor:default}.floor-area-row.static:hover{background:transparent}
@media(max-width:650px){.ops-kpi-action{display:none}.booking-compact{grid-template-columns:1fr}.booking-compact-actions{justify-content:stretch}.booking-compact-actions .btn{flex:1}.booking-compact-title strong{max-width:180px}}
.kitchen-status-filter{margin:0 0 14px!important}.kitchen-status-filter .tabs{gap:7px}.kitchen-status-filter .tab{display:inline-flex;align-items:center;gap:6px}.kitchen-status-filter .tab .pill{min-width:22px;justify-content:center;padding:2px 5px}.ticket-columns.focused{grid-template-columns:minmax(0,1fr)!important}.ticket-columns.focused .ticket-column{max-width:760px;width:100%}

/* HMS V9.3 — compact booking details + readable reservation table badges. */
.booking-compact-tables b{background:#222!important;color:#fff!important;border:1px solid rgba(255,255,255,.10)!important;box-shadow:0 1px 0 rgba(0,0,0,.08)!important}
.booking-compact{grid-template-columns:minmax(0,1fr) auto!important;gap:7px!important;padding:8px 9px!important;margin:-1px 8px 0!important}
.booking-compact-main{gap:4px!important}.booking-compact-title strong{max-width:150px!important}.booking-compact-meta{gap:5px!important}.booking-compact-actions .btn{min-height:28px!important;padding:4px 7px!important}
@media(max-width:650px){.booking-compact{grid-template-columns:1fr!important}.booking-compact-title strong{max-width:210px!important}}


/* HMS V9.3.1 — reservation contrast hotfix. Compact cards are independent from legacy booking-badge colors. */
.booking-compact{background:#ffffff!important;color:#202020!important;border-color:#d9d9d5!important}
.booking-compact.phone{background:#fffdfa!important;border-color:#decf9f!important;box-shadow:0 7px 18px rgba(34,34,34,.045)!important}
.booking-compact .booking-compact-title>span{color:#7a5c0d!important}
.booking-compact .booking-compact-title strong{color:#171717!important}
.booking-compact .booking-compact-title em{background:#f6efd9!important;color:#614a0e!important;border:1px solid #ead9a8!important}
.booking-compact .booking-compact-meta>span,.booking-compact .booking-compact-phone{color:#4b4b48!important}
.booking-compact .booking-compact-phone{font-weight:700!important}
.booking-compact .booking-compact-tables b{background:#222!important;color:#fff!important;border:1px solid #222!important;box-shadow:none!important}
.booking-compact .booking-compact-actions .btn.primary{background:#222!important;border-color:#222!important;color:#fff!important}
.booking-compact .booking-compact-actions .btn.ghost{background:#fff!important;border-color:#bdbdb7!important;color:#222!important}

/* HMS V9.3.2 — premium login page refinement. */
.auth-login-v932{grid-template-columns:minmax(0,1.06fr) minmax(430px,.94fr)!important;padding:14px!important;gap:0!important;background:#f5f5f2!important;min-height:100dvh!important}
.auth-login-v932 .auth-feature{min-height:calc(100dvh - 28px)!important;border-radius:20px!important;padding:38px 42px!important;background:linear-gradient(180deg,rgba(18,18,18,.22),rgba(18,18,18,.86)),linear-gradient(90deg,rgba(18,18,18,.10),rgba(18,18,18,.64)),url('photos/restaurant.jpg') center/cover!important;box-shadow:0 22px 60px rgba(18,18,18,.12)!important;overflow:hidden!important}
.auth-login-v932 .auth-top{gap:12px!important;min-height:42px!important}
.auth-login-v932 .auth-top .brand-mark{width:44px!important;height:44px!important;border-radius:13px!important;background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.24)!important;padding:7px!important}
.auth-login-v932 .auth-top .brand-mark img{width:100%!important;height:100%!important;object-fit:contain!important}
.auth-login-v932 .auth-brand-name{font-size:12px!important;font-weight:700!important;letter-spacing:2px!important;color:#fff!important}
.auth-login-v932 .auth-tag{margin-inline-start:auto!important;color:#fff!important;background:rgba(34,34,34,.24)!important;border-color:rgba(255,255,255,.24)!important;backdrop-filter:blur(8px)!important;padding:7px 13px!important;font-size:10px!important}
.auth-login-v932 .auth-story{max-width:610px!important;margin:90px 0 86px!important}
.auth-login-v932 .story-kicker{color:#f0e8cf!important;font-size:12px!important;font-weight:600!important}
.auth-login-v932 .story-kicker:before{background:#c19c35!important;width:36px!important}
.auth-login-v932 .auth-story h1{font-size:clamp(44px,4.15vw,70px)!important;line-height:1.34!important;font-weight:600!important;letter-spacing:-1.8px!important;margin:22px 0 20px!important;color:#fff!important;max-width:680px!important}
.auth-login-v932 .auth-story h1 em{color:#d1aa38!important}
.auth-login-v932 .auth-story p{max-width:540px!important;color:rgba(255,255,255,.86)!important;font-size:15px!important;line-height:2!important;margin:0!important}
.auth-login-v932 .auth-chips{margin-top:30px!important;gap:10px!important}
.auth-login-v932 .auth-chips span{display:inline-flex!important;align-items:center!important;gap:8px!important;border:1px solid rgba(255,255,255,.25)!important;background:rgba(20,20,20,.18)!important;color:#fff!important;padding:9px 13px!important;border-radius:10px!important;font-size:10px!important;backdrop-filter:blur(6px)!important}
.auth-login-v932 .auth-chips b{display:grid!important;place-items:center!important;width:20px!important;height:20px!important;color:#d1aa38!important;font-size:13px!important}
.auth-login-v932 .auth-bottom{color:rgba(255,255,255,.76)!important;border-top-color:rgba(255,255,255,.19)!important;padding-top:18px!important;font-size:10px!important}
.auth-login-v932 .auth-bottom small{color:#d1aa38!important;letter-spacing:1.5px!important}
.auth-login-v932 .auth-form{min-height:calc(100dvh - 28px)!important;background:#f8f8f6!important;padding:30px clamp(34px,4vw,66px)!important;justify-content:space-between!important;align-items:center!important}
.auth-login-v932 .auth-form-top{width:min(100%,520px)!important;color:#77746d!important;font-size:10px!important;padding:4px 2px!important}
.auth-login-v932 .auth-form-top:after{content:'';width:28px;height:2px;background:#c19c35;display:inline-block;margin-inline-start:10px;vertical-align:middle}
.auth-login-v932 .auth-form-top .edition{margin-inline-start:auto!important;color:#9a958a!important;font-weight:700!important;letter-spacing:1.8px!important}
.auth-login-v932 .auth-card{width:min(100%,520px)!important;max-width:520px!important;background:#fff!important;border:1px solid #e4e2db!important;border-top:3px solid #c19c35!important;border-radius:22px!important;padding:34px 34px 28px!important;box-shadow:0 28px 70px rgba(34,34,34,.08)!important}
.auth-login-v932 .login-emblem{width:76px!important;height:76px!important;border-radius:18px!important;margin:0 0 22px!important;background:#222!important;border:0!important;padding:13px!important;box-shadow:0 10px 26px rgba(34,34,34,.12)!important}
.auth-login-v932 .login-emblem .hms-login-logo img{width:100%!important;height:100%!important;object-fit:contain!important}
.auth-login-v932 .auth-card .eyebrow{font-size:11px!important;color:#8e8a80!important;margin-bottom:5px!important}
.auth-login-v932 .auth-card h2{font-size:42px!important;line-height:1.3!important;font-weight:700!important;letter-spacing:-1.2px!important;color:#222!important;margin:0 0 7px!important}
.auth-login-v932 .auth-card>p{font-size:13px!important;color:#76736c!important;margin-bottom:24px!important;line-height:1.8!important}
.auth-login-v932 .login-stack{gap:16px!important}
.auth-login-v932 .login-field{display:flex!important;gap:8px!important;color:#3d3b36!important;font-size:12px!important;font-weight:700!important}
.auth-login-v932 .login-input-wrap{position:relative!important;display:block!important;width:100%!important}
.auth-login-v932 .login-input-wrap input{min-height:52px!important;border:1px solid #d9d7d0!important;border-radius:12px!important;background:#fbfbfa!important;color:#222!important;padding-inline:44px 14px!important;font-size:13px!important;box-shadow:0 1px 2px rgba(34,34,34,.02)!important}
.auth-login-v932 .login-email-field .login-input-wrap input{direction:ltr!important;text-align:left!important;padding-inline:44px 14px!important}
.auth-login-v932 .login-input-wrap input:focus{background:#fff!important;border-color:#b89534!important;outline:3px solid rgba(193,156,53,.12)!important}
.auth-login-v932 .login-input-wrap input::placeholder{color:#aaa69d!important}
.auth-login-v932 .login-field-icon{position:absolute!important;inset-inline-start:14px!important;top:50%!important;transform:translateY(-50%)!important;width:22px!important;height:22px!important;border:1px solid #d7d4cc!important;border-radius:7px!important;display:grid!important;place-items:center!important;color:#77736a!important;font:700 11px Arial,sans-serif!important;z-index:2!important;pointer-events:none!important}
.auth-login-v932 .password-field>button{position:absolute!important;inset-inline-end:9px!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;border:0!important;background:#f1f0ec!important;color:#5f5c55!important;border-radius:8px!important;padding:7px 10px!important;font-size:10px!important;font-weight:700!important;z-index:3!important}
.auth-login-v932 .login-password-label input{padding-inline-end:68px!important}
.auth-login-v932 .login-options{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:12px!important;min-height:30px!important;margin-top:-1px!important}
.auth-login-v932 .login-remember{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;font-size:11px!important;font-weight:500!important;color:#57534c!important;cursor:pointer!important}
.auth-login-v932 .login-remember input{width:17px!important;height:17px!important;min-height:17px!important;accent-color:#c19c35!important}
.auth-login-v932 .login-security-note{font-size:10px!important;color:#918d83!important}
.auth-login-v932 .login-submit{min-height:54px!important;width:100%!important;border-radius:12px!important;background:#222!important;border-color:#222!important;color:#fff!important;padding:12px 16px!important;margin-top:2px!important;font-size:13px!important;font-weight:700!important;box-shadow:0 10px 24px rgba(34,34,34,.12)!important;transition:transform .16s ease,background .16s ease,box-shadow .16s ease!important}
.auth-login-v932 .login-submit:hover{background:#171717!important;box-shadow:0 13px 28px rgba(34,34,34,.16)!important;transform:translateY(-1px)!important}
.auth-login-v932 .login-submit .login-arrow{color:#d1aa38!important;font-size:22px!important;line-height:1!important;font-family:Arial,sans-serif!important}
.auth-login-v932 .login-menu-link{margin-top:20px!important;padding-top:20px!important;border-top:1px solid #eceae4!important;color:#716d65!important;font-size:11px!important;gap:10px!important}
.auth-login-v932 .login-menu-link:hover{color:#8b6a12!important}
.auth-login-v932 .auth-form-bottom{width:min(100%,520px)!important;color:#9a968d!important;font-size:9px!important;padding:4px 2px!important}
.auth-login-v932 #login-error:empty{display:none!important}
.auth-login-v932 #login-error .error{margin:0!important;border-radius:10px!important;background:#fff2ef!important;color:#842d26!important;border:1px solid #efd5d0!important;padding:10px 12px!important}
@media(max-width:1050px){.auth-login-v932{grid-template-columns:1fr 1fr!important}.auth-login-v932 .auth-feature{padding:30px!important}.auth-login-v932 .auth-story{margin:70px 0!important}.auth-login-v932 .auth-story h1{font-size:42px!important}.auth-login-v932 .auth-card{padding:30px 28px 25px!important}.auth-login-v932 .auth-card h2{font-size:36px!important}.auth-login-v932 .auth-form{padding-inline:28px!important}}
@media(max-width:760px){.auth-login-v932{display:flex!important;flex-direction:column!important;padding:0!important;background:#f8f8f6!important}.auth-login-v932 .auth-feature{order:2!important;min-height:300px!important;border-radius:0!important;padding:28px 22px!important;box-shadow:none!important}.auth-login-v932 .auth-story{margin:38px 0 28px!important}.auth-login-v932 .auth-story h1{font-size:32px!important;margin:14px 0!important}.auth-login-v932 .auth-story p{font-size:12px!important;line-height:1.8!important}.auth-login-v932 .auth-chips{margin-top:18px!important}.auth-login-v932 .auth-chips span{padding:7px 9px!important}.auth-login-v932 .auth-bottom{display:none!important}.auth-login-v932 .auth-form{order:1!important;min-height:auto!important;padding:24px 16px 28px!important}.auth-login-v932 .auth-form-top,.auth-login-v932 .auth-form-bottom{width:min(100%,520px)!important}.auth-login-v932 .auth-card{margin:18px 0!important;padding:26px 20px 22px!important;border-radius:18px!important}.auth-login-v932 .login-emblem{width:64px!important;height:64px!important;margin-bottom:17px!important}.auth-login-v932 .auth-card h2{font-size:32px!important}.auth-login-v932 .login-options{align-items:flex-start!important;flex-direction:column!important;gap:5px!important}.auth-login-v932 .auth-form-bottom{display:none!important}}


/* ===== SOURCE: pos-v2.css ===== */
.pos-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px}.pos-back{font-size:12px;color:#686761}.pos-header h1{font-size:28px;margin:10px 0 4px}.pos-header h1 span,.pos-cart-title h2 span{font-size:16px;font-weight:500;color:#8a8880}.pos-header p{color:#686761;font-size:13px}.pos-layout{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:24px;align-items:start}.pos-search{display:flex;align-items:center;background:#fff;border:1px solid #e2e2da;border-radius:12px;padding:0 16px;gap:12px;min-height:52px}.pos-search>span:first-child{font-size:26px}.pos-search input{border:0;background:transparent;box-shadow:none;min-width:0;flex:1;outline-offset:2px}.pos-live{font-size:11px;white-space:nowrap;color:#686761}.pos-categories{display:flex;gap:8px;overflow:auto;padding:16px 0 20px}.pos-categories button{white-space:nowrap;border:1px solid #dfdfd5;background:#fff;border-radius:100px;padding:10px 18px;font:inherit;font-size:12px;cursor:pointer}.pos-categories button.active{background:#242820;color:#fff;border-color:#242820}.pos-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.pos-product{border:1px solid #e2e2da;border-radius:14px;background:white;padding:0;overflow:hidden;text-align:right;cursor:pointer;font:inherit;transition:transform .15s,border-color .15s}.pos-product:hover:not(:disabled){transform:translateY(-3px);border-color:#8c946b}.pos-product:disabled{opacity:.55;cursor:default}.pos-product .item-photo{height:128px;aspect-ratio:auto}.pos-product .photo-label{display:none}.pos-product-copy{display:grid;gap:8px;padding:14px}.pos-product-copy>strong{font-size:14px}.pos-product-copy>span{font-size:14px;color:#3e4a31;font-weight:700}.pos-product-copy>small{color:#79786f;font-size:10px;display:flex;justify-content:space-between;align-items:center}.pos-product-copy b{display:grid;place-items:center;background:#f0f2e8;color:#465436;border-radius:8px;width:26px;height:26px;font-size:20px}.pos-cart{background:#fff;border:1px solid #dfdfd5;border-radius:16px;overflow:hidden;position:sticky;top:20px;box-shadow:0 8px 28px #20271906}.pos-cart-title{display:flex;align-items:center;justify-content:space-between;padding:22px;border-bottom:1px solid #efefe7}.pos-cart-title small{color:#818174;font-size:11px}.pos-cart-title h2{font-size:20px;margin:6px 0 0}.pos-count{display:grid;place-items:center;min-width:36px;height:36px;background:#f0f2e8;border-radius:50%;color:#485a30;font-weight:700}.pos-lines{max-height:420px;overflow:auto;padding:0 20px}.pos-line{padding:18px 0;border-bottom:1px dashed #e4e4da;display:grid;gap:10px}.pos-line>small{color:#79786f;font-size:11px}.pos-line>.row>strong{font-size:13px}.pos-line>.row>b{font-size:13px}.pos-line .pill{font-size:10px;padding:4px 8px}.pos-quantity{display:flex;align-items:center;gap:10px;direction:ltr;font-size:13px}.pos-quantity .btn{min-width:28px;min-height:28px;padding:0;border-radius:7px;background:#f6f6f1}.pos-line .btn.sm{font-size:11px;padding:5px 8px}.pos-line.is-void{opacity:.5}.pos-line.is-void>.row:first-child{text-decoration:line-through}.pos-note{font-size:11px;margin:0;background:#f7f5ed;padding:6px;border-radius:6px}.pos-empty{padding:54px 10px;text-align:center;color:#77796e}.pos-empty>span{font-size:34px}.pos-empty h3{font-size:16px}.pos-empty p{font-size:12px}.pos-totals{padding:18px 22px;display:grid;gap:10px;background:#fcfcf9}.pos-totals>div{display:flex;justify-content:space-between;font-size:12px}.pos-totals b{font-weight:500}.pos-totals .pos-grand{border-top:1px solid #e4e4da;padding-top:14px;margin-top:4px;font-size:20px}.pos-grand small{font-size:10px}.pos-cart-actions{padding:0 20px;display:grid;gap:8px}.pos-cart-actions .btn{width:100%;justify-content:center;min-height:46px}.pos-cart-actions .primary{background:#56663d;color:white;border-color:#56663d}.pos-footnote{text-align:center;font-size:10px;color:#8c8d82;margin:14px}.pos-checks{margin:30px 0}.pos-checks h2{font-size:20px}.pos-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.pos-check{background:white;border:1px solid #dedfd4;border-radius:14px;padding:20px}.pos-check h3{font-size:16px;margin:0}.pos-check p{font-size:12px;color:#6b6d60}.pos-check-total{display:block;font-size:23px;margin:18px 0}.pos-split-table input{min-width:80px;max-width:150px}.pos-split-table td:first-child{min-width:160px}button:focus-visible{outline:3px solid #9cae7f;outline-offset:3px}@media(min-width:1450px){.pos-products{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1100px){.pos-layout{grid-template-columns:minmax(0,1fr) 330px;gap:16px}.pos-products{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.pos-header{align-items:flex-start}.pos-header h1{font-size:23px}.pos-header>.row{max-width:150px}.pos-layout{grid-template-columns:1fr}.pos-cart{position:static}.pos-lines{max-height:none}.pos-products{grid-template-columns:repeat(2,minmax(0,1fr))}.pos-product .item-photo{height:115px}.pos-check-grid{grid-template-columns:1fr}.pos-header .btn{font-size:11px}.pos-categories button{padding:8px 13px}.pos-product-copy{padding:12px}}

.pos-cancel-order{text-align:center;margin-top:12px}
.order-flow{display:grid;grid-template-columns:minmax(250px,.85fr) minmax(0,1.7fr);gap:22px;align-items:center;margin:-7px 0 20px;padding:16px 18px;background:#fff;border:1px solid #deddd5;border-right:4px solid #c19c35;border-radius:8px}
.order-flow-copy{display:grid;gap:3px}.order-flow-copy small{font-size:10px;color:#89867e}.order-flow-copy strong{font-size:15px}.order-flow-copy span{font-size:11px;color:#747169;line-height:1.7}
.order-flow ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;list-style:none;margin:0;padding:0;direction:rtl}
.order-flow li{display:flex;align-items:center;gap:7px;position:relative;color:#96938b;font-size:10px;min-width:0}
.order-flow li:not(:last-child):after{content:'';height:2px;background:#e2e0d8;position:absolute;right:30px;left:5px;top:14px;z-index:0}
.order-flow li i{display:grid;place-items:center;width:28px;height:28px;border:1px solid #d8d6ce;border-radius:50%;background:#fff;font-style:normal;font-size:10px;position:relative;z-index:1;flex:none}
.order-flow li.done,.order-flow li.current{color:#302b1f;font-weight:700}.order-flow li.done i{background:#222;color:#fff;border-color:#222}.order-flow li.done:not(:last-child):after{background:#c19c35}.order-flow li.current i{background:#c19c35;border-color:#c19c35;color:#222}
.order-flow.closed{border-right-color:#2f7c58}.order-flow.closed .order-flow-copy strong{color:#246446}
.pos-action-help{margin:10px 20px 0;padding:10px 12px;background:#fff7dd;border-right:3px solid #c19c35;border-radius:4px;color:#66521a;font-size:10px;line-height:1.7}
.order-complete{display:grid;gap:7px;margin:14px 20px 18px;padding:14px;background:#eff7f1;border:1px solid #c9dfcf;border-radius:7px}.order-complete b{font-size:13px;color:#225a3f}.order-complete span,.order-complete small{font-size:10px;color:#5e6d63;line-height:1.7}.order-complete .btn{margin-top:5px;justify-content:center;white-space:normal}
.customer-status small{font-size:11px;color:#777267}
.customer-display-picker{background:#fff;border:1px solid #ded9ca;border-radius:16px;padding:20px}
.customer-display-picker-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}
.customer-display-picker-head small,.customer-display-picker-head>span{color:#747064;font-size:12px}
.customer-display-picker-head h2{margin:4px 0 0}
.customer-display-order-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.customer-display-order{display:flex;flex-direction:column;gap:17px;min-height:250px;padding:18px;border:1px solid #e1ddcf;border-radius:14px;background:#fff;box-shadow:0 10px 25px rgba(32,39,25,.04)}
.customer-display-order h3{font-size:20px;margin:5px 0}
.customer-display-order p{color:#747064;font-size:12px;margin:0}
.customer-display-order>strong{font-size:24px;margin-top:auto}
.customer-display-order-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.customer-display-order-actions .btn{min-height:48px;white-space:normal}
.customer-display-picker-empty{grid-column:1/-1;padding:50px 20px;text-align:center;border:1px dashed #d8d2c2;border-radius:13px;background:#faf9f5}
.customer-display-picker-empty p{color:#747064}

.customer-display-mode .sidebar,
.customer-display-mode .topbar{display:none!important}
.customer-display-mode{overflow-x:hidden}
.customer-display-mode .shell{display:block!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;min-width:0!important;min-height:100dvh!important}
.customer-display-mode .workspace{display:block!important;grid-column:1/-1!important;width:100%!important;max-width:none!important;min-width:0!important}
.customer-display-mode .content{display:block!important;max-width:none!important;width:100%!important;min-width:0!important;min-height:100dvh!important;margin:0!important;padding:0!important;background:#f6f3ea!important}
.customer-display{width:100%;max-width:100%;min-width:0;min-height:100dvh;padding:22px;display:flex;flex-direction:column;gap:18px;overflow-x:hidden;background:linear-gradient(180deg,#fffdf7 0%,#f1eee4 100%);color:#222}
.customer-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 22px;background:#fff;border:1px solid #ded9ca;border-radius:18px;box-shadow:0 18px 45px rgba(32,39,25,.06)}
.customer-head h1{font-size:34px;margin:8px 0 4px;line-height:1.2;overflow-wrap:anywhere}
.customer-head p{margin:0;color:#706d63;font-size:14px}
.customer-status{display:grid;gap:8px;text-align:left;direction:rtl}
.customer-status span{font-size:12px;color:#6a6f59}
.customer-status strong{font-size:32px;line-height:1;color:#21251d}
.customer-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,420px);gap:18px;align-items:start;flex:1;width:100%;min-width:0;min-height:0}
.customer-menu,.customer-receipt{width:100%;min-width:0;min-height:0}
.customer-search{min-height:64px;border-radius:18px;box-shadow:0 10px 28px rgba(32,39,25,.04)}
.customer-search input{font-size:18px}
.customer-categories{padding:14px 2px 18px}
.customer-categories button{min-height:48px;font-size:14px;padding-inline:20px}
.customer-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-content:start}
.customer-product{display:grid;grid-template-columns:142px minmax(0,1fr);width:100%;min-width:0;min-height:154px;padding:0;overflow:hidden;border:1px solid #ded9ca;border-radius:18px;background:#fff;text-align:right;font:inherit;color:#222;cursor:pointer;box-shadow:0 12px 32px rgba(32,39,25,.05);transition:transform .14s,border-color .14s,box-shadow .14s}
.customer-product:hover:not(:disabled),.customer-product:focus-visible{transform:translateY(-2px);border-color:#c19c35;box-shadow:0 16px 34px rgba(99,77,22,.12)}
.customer-product:disabled{opacity:.58;cursor:default}
.customer-product .item-photo{height:100%;min-height:154px;border-radius:0}
.customer-product .item-photo img{height:100%;object-fit:cover}
.customer-product .photo-label{font-size:9px}
.customer-product-copy{display:flex;flex-direction:column;gap:7px;padding:15px;min-width:0}
.customer-product-copy small{font-size:11px;color:#8a8271}
.customer-product-copy strong{font-size:20px;line-height:1.35;color:#1f211c}
.customer-product-copy em{font-style:normal;color:#69675f;font-size:12px;line-height:1.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.customer-product-copy b{font-size:18px;color:#49563a;margin-top:auto}
.customer-product-copy>span{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;min-height:34px;padding:7px 12px;border-radius:10px;background:#262820;color:#fff;font-size:12px}
.customer-receipt{position:sticky;top:18px;background:#fff;border:1px solid #ded9ca;border-radius:20px;overflow:hidden;box-shadow:0 18px 45px rgba(32,39,25,.07);max-height:calc(100dvh - 44px);display:flex;flex-direction:column}
.customer-receipt-title{display:flex;align-items:center;justify-content:space-between;padding:22px;border-bottom:1px solid #eee7d8}
.customer-receipt-title small{color:#80796a}
.customer-receipt-title h2{font-size:23px;margin:5px 0 0}
.customer-lines{overflow:auto;padding:4px 20px;flex:1;min-height:180px}
.customer-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px 0;border-bottom:1px dashed #e3ddcf}
.customer-line strong{display:block;font-size:16px;line-height:1.5}
.customer-line small{display:block;color:#777268;font-size:11px;margin-top:3px}
.customer-line-side{display:grid;justify-items:end;gap:6px;min-width:130px}
.customer-line-side>b{font-size:15px}
.customer-line-side>span{font-size:12px;color:#706b61}
.customer-line-side .pos-quantity{gap:7px}
.customer-line-side .pos-quantity .btn{min-width:34px;min-height:34px}
.customer-actions{display:grid;gap:10px;padding:0 20px 18px}
.customer-actions .btn{min-height:52px;justify-content:center;font-size:15px}
.customer-actions .primary{background:#56663d;color:#fff;border-color:#56663d}
@media(min-width:1560px){.customer-products{grid-template-columns:repeat(4,minmax(0,1fr))}.customer-layout{grid-template-columns:minmax(0,1fr) 450px}}
@media(max-width:1220px){.customer-products{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-layout{grid-template-columns:minmax(0,1fr) 360px}.customer-product{grid-template-columns:120px minmax(0,1fr)}}
@media(max-width:860px){.customer-display{padding:12px}.customer-head{display:block}.customer-head h1{font-size:26px}.customer-status{text-align:right;margin-top:12px}.customer-status strong{font-size:26px}.customer-layout{grid-template-columns:minmax(0,1fr)}.customer-receipt{position:static;max-height:none}.customer-products{grid-template-columns:minmax(0,1fr)}.customer-product{grid-template-columns:124px minmax(0,1fr)}.order-flow{grid-template-columns:1fr}.order-flow ol{overflow-x:auto;padding-bottom:3px}.order-flow li{min-width:115px}}
@media(max-width:650px){.customer-display-picker{padding:13px}.customer-display-picker-head{display:block}.customer-display-picker-head>span{display:block;margin-top:7px}.customer-display-order-grid{grid-template-columns:1fr}.customer-display-order-actions{grid-template-columns:1fr}}

/* HMS V9 — the issue-statement CTA stays visibly a button and explains why it is locked. */
.pos-issue-btn{min-height:48px!important;border-width:1px!important}
.pos-issue-btn:disabled{opacity:1!important;cursor:not-allowed!important;background:#f5f5f3!important;border:1px dashed rgba(34,34,34,.28)!important;color:rgba(34,34,34,.48)!important;box-shadow:none!important}
.pos-action-help{margin:9px 0 0!important;padding:9px 11px!important;border-radius:10px!important;background:rgba(193,156,53,.10)!important;border:1px solid rgba(193,156,53,.22)!important;color:#222!important;font-size:11px!important;line-height:1.65!important}
.pos-action-help b{color:#222!important}


/* ===== SOURCE: backend-v2-ui.css ===== */
.v2-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:18px 0}
.v2-card{background:#fff;border:1px solid rgba(34,34,34,.10);border-radius:16px;padding:16px;box-shadow:0 14px 35px rgba(34,34,34,.04)}
.v2-card h3{margin:0 0 8px;color:#222}
.v2-card strong{font-size:28px;color:#222}
.v2-card small{display:block;margin-top:4px;color:rgba(34,34,34,.62)}
.v2-page{display:flex;flex-direction:column;gap:18px}
.v2-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.v2-toolbar .tabs{margin:0}
.v2-panel{background:#fff;border:1px solid rgba(34,34,34,.10);border-radius:18px;padding:16px;box-shadow:0 16px 40px rgba(34,34,34,.04)}
.v2-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}
.v2-panel-head h2{margin:0;color:#222}
.v2-panel-head p{margin:4px 0 0;color:rgba(34,34,34,.62);font-size:12px}
.v2-actions{display:flex;gap:7px;flex-wrap:wrap}
.v2-actions .btn{min-height:31px;padding:6px 10px;font-size:11px}
.v2-kpi-warn{border-color:rgba(179,38,30,.25);background:rgba(179,38,30,.035)}
.v2-kpi-warn strong{color:#b3261e}
.v2-low{color:#b3261e;font-weight:700}
.v2-ok{color:#1f7a4d;font-weight:700}
.v2-muted{color:rgba(34,34,34,.58);font-size:12px}
.v2-lines{display:flex;flex-direction:column;gap:10px}
.v2-line{display:grid;grid-template-columns:1.5fr 1fr 1fr auto;gap:10px;align-items:end;padding:10px;border:1px solid rgba(34,34,34,.10);border-radius:12px;background:#f8f9fb}
.v2-line label{font-size:11px}
.v2-line input,.v2-line select{margin-top:5px}
.v2-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:10px 0}
.v2-details div{padding:10px;border:1px solid rgba(34,34,34,.08);border-radius:12px;background:#f8f9fb}
.v2-permission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin-top:12px}
.v2-permission-grid label{display:flex;align-items:flex-start;gap:8px;padding:10px;border:1px solid rgba(34,34,34,.10);border-radius:12px;background:#fff;font-size:12px}
.v2-permission-grid input{margin-top:2px;min-height:auto}
.v2-role-badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:rgba(193,156,53,.12);border:1px solid rgba(193,156,53,.25);font-size:11px;color:#222}
.v2-master-detail{display:grid;grid-template-columns:minmax(230px,310px) minmax(0,1fr);gap:16px}
.v2-list{display:flex;flex-direction:column;gap:8px;max-height:70vh;overflow:auto;padding-inline-end:4px}
.v2-list button{display:flex;justify-content:space-between;gap:10px;width:100%;text-align:start;border:1px solid rgba(34,34,34,.10);background:#fff;border-radius:12px;padding:12px;cursor:pointer;color:#222}
.v2-list button.active{border-color:#c19c35;background:rgba(193,156,53,.10);box-shadow:0 0 0 3px rgba(193,156,53,.14)}
.v2-list b{display:block}.v2-list small{color:rgba(34,34,34,.58)}
.v2-recipe-stack{display:flex;flex-direction:column;gap:14px}
.v2-recipe-card{border:1px solid rgba(34,34,34,.10);border-radius:14px;padding:14px;background:#fff}
.v2-recipe-card h3{margin:0 0 5px;color:#222}
.v2-components{display:grid;gap:8px;margin-top:10px}
.v2-component-row{display:grid;grid-template-columns:minmax(150px,1fr) minmax(110px,.45fr) auto;gap:8px;align-items:end}
.v2-component-row label{font-size:11px}
.v2-component-row input,.v2-component-row select{margin-top:5px}
.v2-line-remove{align-self:center;min-width:38px}
.v2-add-row{margin-top:10px}
@media(pointer:coarse){
  .btn,.tab,.nav-link,.v2-list button,.pos-product,.pos-line button{min-height:44px}
  input,select,textarea{min-height:44px;font-size:16px}
  .v2-actions .btn{min-height:40px}
  .data-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .data-table{min-width:720px}
  .sidebar .nav-link{min-height:46px}
  .pos-products{gap:12px}
}
@media(max-width:760px){.v2-panel-head{display:block}.v2-panel-head .v2-actions{margin-top:10px}.v2-line{grid-template-columns:1fr}.v2-toolbar{align-items:stretch}.v2-toolbar .tabs{overflow:auto;width:100%}}
@media(max-width:900px){.v2-master-detail{grid-template-columns:1fr}.v2-list{max-height:320px}.v2-component-row{grid-template-columns:1fr}}

.sidebar{
  height:100dvh!important;
  max-height:100dvh!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain;
  scrollbar-gutter:auto!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
.sidebar nav,
.sidebar .nav-group{
  min-height:0!important;
}
.sidebar nav{
  flex:1 1 auto!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-inline-end:2px;
  scrollbar-gutter:auto!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
.sidebar .brand,
.sidebar .sidebar-bottom,
.sidebar .genesis-credit{
  flex:0 0 auto!important;
}
.sidebar::-webkit-scrollbar,
.sidebar nav::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
}
.sidebar::-webkit-scrollbar-thumb,
.sidebar nav::-webkit-scrollbar-thumb,
.sidebar::-webkit-scrollbar-track,
.sidebar nav::-webkit-scrollbar-track{
  background:transparent!important;
  border:0!important;
}

/* HMS V9 — clearer KPI/filter/tab hierarchy. */
.v2-kpi-grid{margin-top:0}
.v2-kpi-grid .v2-card{border-top:3px solid rgba(193,156,53,.62)}
.v2-stock-value small{max-width:300px;line-height:1.6}
.v2-section-kicker{display:block;margin-bottom:5px;color:#96741c;font-size:10px;font-weight:800;letter-spacing:.45px}
.v2-tabs-toolbar{padding:11px 13px;border:1px solid rgba(34,34,34,.10);border-radius:14px;background:#fff;box-shadow:0 8px 22px rgba(34,34,34,.03)}
.v2-tabs-nav{gap:6px!important;padding:4px;border-radius:11px;background:#f4f4f2}
.v2-tabs-nav .tab{border:1px solid transparent!important;background:transparent!important;color:rgba(34,34,34,.68)!important;font-weight:700!important;min-height:38px}
.v2-tabs-nav .tab:hover{background:#fff!important;border-color:rgba(34,34,34,.08)!important}.v2-tabs-nav .tab.active{background:#222!important;border-color:#222!important;color:#fff!important;box-shadow:0 4px 12px rgba(34,34,34,.12)}
.v2-report-filter{display:grid;grid-template-columns:minmax(220px,.6fr) minmax(0,1.4fr);gap:18px;align-items:end;padding:16px 18px;margin:0 0 18px;border:1px solid rgba(34,34,34,.10);border-radius:16px;background:#fff;box-shadow:0 10px 28px rgba(34,34,34,.035)}
.v2-report-filter-copy h2{margin:0 0 5px;font-size:18px}.v2-report-filter-copy p{margin:0;color:rgba(34,34,34,.60);font-size:11px;line-height:1.6}.v2-report-filter-form{display:flex;align-items:end;justify-content:flex-end;gap:10px;flex-wrap:wrap}.v2-report-filter-form label{min-width:155px;font-size:11px}.v2-report-filter-form input{margin-top:5px}.inventory-category-help{margin-top:-8px}
@media(max-width:760px){.v2-report-filter{grid-template-columns:1fr}.v2-report-filter-form{justify-content:stretch}.v2-report-filter-form label{flex:1;min-width:135px}.v2-report-filter-form .btn{flex:1}.v2-tabs-nav{flex-wrap:nowrap!important;overflow-x:auto}.v2-tabs-nav .tab{flex:0 0 auto}}

/* HMS V9.2 — visual report insights. */
.v2-report-insights{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 260px;gap:14px;margin:0 0 18px}.v2-report-chart,.v2-report-mini-stats{border:1px solid rgba(34,34,34,.10);border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(34,34,34,.035)}.v2-report-chart{padding:17px 18px}.v2-report-chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:15px}.v2-report-chart-head h2{margin:3px 0 0;font-size:17px}.v2-report-chart-head>small{font-size:9px;color:rgba(34,34,34,.50)}.v2-report-bars,.v2-top-bars{display:flex;flex-direction:column;gap:11px}.v2-report-bar-row>div:first-child,.v2-top-label{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:5px}.v2-report-bar-row b,.v2-top-label b{font-size:10px}.v2-report-bar-row span,.v2-top-label span{font-size:9px;color:rgba(34,34,34,.58)}.v2-report-bar-track{height:9px}.v2-report-bar-track i{display:block;height:100%;border-radius:inherit;background:#c19c35}.v2-report-bar-track i.sales{background:#222}.v2-report-bar-track i.net{background:#1f7a4d}.v2-report-bar-track i.purchases{background:#c19c35}.v2-report-bar-track i.returns{background:#b83a32}.v2-top-row{display:grid;grid-template-columns:24px 1fr;gap:8px;align-items:center}.v2-rank{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;background:rgba(193,156,53,.12);font-size:10px;font-weight:900;color:#6f5719}.v2-report-mini-stats{display:grid;grid-template-columns:1fr 1fr;overflow:hidden}.v2-report-mini-stats>div{display:flex;flex-direction:column;justify-content:center;min-height:104px;padding:12px;border-bottom:1px solid rgba(34,34,34,.08);border-left:1px solid rgba(34,34,34,.08)}.v2-report-mini-stats>div:nth-child(2n){border-left:0}.v2-report-mini-stats>div:nth-last-child(-n+2){border-bottom:0}.v2-report-mini-stats small{font-size:8px;color:rgba(34,34,34,.52)}.v2-report-mini-stats strong{margin:5px 0 2px;font-size:17px;line-height:1.2;color:#222}.v2-report-mini-stats span{font-size:8px;color:#9b7b28}
@media(max-width:1100px){.v2-report-insights{grid-template-columns:1fr 1fr}.v2-report-mini-stats{grid-column:1/-1;grid-template-columns:repeat(4,1fr)}.v2-report-mini-stats>div{border-bottom:0;border-left:1px solid rgba(34,34,34,.08)!important}.v2-report-mini-stats>div:last-child{border-left:0!important}}
@media(max-width:720px){.v2-report-insights{grid-template-columns:1fr}.v2-report-mini-stats{grid-column:auto;grid-template-columns:1fr 1fr}.v2-report-mini-stats>div{border-bottom:1px solid rgba(34,34,34,.08)!important}.v2-report-mini-stats>div:nth-child(2n){border-left:0!important}.v2-report-mini-stats>div:nth-last-child(-n+2){border-bottom:0!important}}

/* HMS V9.2.1 — floor analytics live in Reports, not the floor operation screen. */
.v2-report-floor{margin:0 0 18px}.v2-report-floor-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:0 0 10px}.v2-report-floor-head h2{margin:3px 0 0;font-size:18px}.v2-report-floor-head>small{font-size:9px;color:rgba(34,34,34,.52)}.v2-report-floor .floor-insights{margin-bottom:0}.v2-report-floor .floor-insight-card,.v2-report-floor .floor-quick-stats{box-shadow:0 8px 24px rgba(34,34,34,.03)}
@media(max-width:720px){.v2-report-floor-head{align-items:flex-start;flex-direction:column}}

/* HMS V9.3 — deeper operational analytics. */
.v2-advanced-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 16px}.v2-advanced-kpis article{min-width:0;padding:13px 14px;border:1px solid rgba(34,34,34,.09);border-radius:14px;background:#fff;box-shadow:0 7px 20px rgba(34,34,34,.025)}.v2-advanced-kpis small{display:block;font-size:8px;color:rgba(34,34,34,.52)}.v2-advanced-kpis strong{display:block;margin:5px 0 2px;font-size:20px;line-height:1.15;color:#222}.v2-advanced-kpis span{display:block;font-size:8px;line-height:1.5;color:#8a6b20}
.v2-analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0 0 18px}.v2-analytics-card{min-width:0;padding:17px 18px;border:1px solid rgba(34,34,34,.10);border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(34,34,34,.03)}
.v2-compare-list{display:flex;flex-direction:column;gap:3px}.v2-compare-row{display:grid;grid-template-columns:minmax(0,1fr) auto 64px;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid rgba(34,34,34,.07)}.v2-compare-row:last-child{border-bottom:0}.v2-compare-row b{font-size:10px}.v2-compare-row small{display:block;margin-top:2px;font-size:8px;color:rgba(34,34,34,.46)}.v2-compare-row strong{font-size:11px}.v2-compare-row>span,.v2-price-trend{justify-self:end;min-width:52px;text-align:center;padding:3px 6px;border-radius:999px;font-size:8px;font-weight:900}.v2-compare-row .up,.v2-price-trend.up{background:rgba(31,122,77,.10);color:#1f7a4d}.v2-compare-row .down,.v2-price-trend.down{background:rgba(184,58,50,.10);color:#9f302a}.v2-compare-row .flat,.v2-price-trend.flat{background:rgba(34,34,34,.07);color:rgba(34,34,34,.64)}
.v2-daily-chart{display:flex;align-items:end;gap:7px;height:180px;padding:12px 4px 0;border-bottom:1px solid rgba(34,34,34,.10);overflow-x:auto}.v2-day-col{display:grid;grid-template-rows:1fr auto;gap:6px;min-width:34px;height:100%;text-align:center}.v2-day-bars{display:flex;align-items:end;justify-content:center;gap:3px;height:100%}.v2-day-bars i{display:block;width:9px;min-height:0;border-radius:6px 6px 2px 2px}.v2-day-bars .sales{background:#222}.v2-day-bars .returns{background:#b83a32}.v2-day-col>span{font-size:7.5px;color:rgba(34,34,34,.50);direction:ltr}.v2-chart-key{display:flex;gap:12px;align-items:center;margin-top:9px;font-size:8px;color:rgba(34,34,34,.55)}.v2-chart-key i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-inline-end:4px}.v2-chart-key .sales{background:#222}.v2-chart-key .returns{background:#b83a32}
.v2-hourly-bars{display:flex;align-items:end;gap:6px;height:185px;overflow-x:auto;padding-top:8px}.v2-hour{display:grid;grid-template-rows:1fr auto auto;gap:3px;min-width:28px;height:100%;text-align:center}.v2-hour>div{height:100%;display:flex;align-items:end;justify-content:center}.v2-hour i{display:block;width:14px;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#c19c35,#222)}.v2-hour b{font-size:8px}.v2-hour small{font-size:7px;color:rgba(34,34,34,.50)}
.v2-status-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v2-status-stats>div{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;border:1px solid rgba(34,34,34,.08);border-radius:12px;background:rgba(34,34,34,.018)}.v2-status-stats strong{font-size:17px}.v2-status-stats .pill{margin:0}
.v2-cost-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.v2-cost-compare>div{padding:12px;border-radius:12px;background:rgba(193,156,53,.06);border:1px solid rgba(193,156,53,.16)}.v2-cost-compare small{display:block;font-size:8px;color:rgba(34,34,34,.52)}.v2-cost-compare strong{display:block;margin-top:5px;font-size:17px;color:#222}.v2-cost-compare strong.warn{color:#9f302a}
.v2-analytics-card .data-wrap{margin:0;box-shadow:none}.v2-analytics-card .data-table th,.v2-analytics-card .data-table td{font-size:9px}.v2-analytics-card .v2-muted{display:block;font-size:7.5px;margin-top:2px}
@media(max-width:1200px){.v2-advanced-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.v2-analytics-grid{grid-template-columns:1fr}.v2-advanced-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.v2-compare-row{grid-template-columns:minmax(0,1fr) auto 56px}}
@media(max-width:480px){.v2-advanced-kpis{grid-template-columns:1fr 1fr}.v2-cost-compare{grid-template-columns:1fr}.v2-status-stats{grid-template-columns:1fr}}

/* HMS V9.5 — recipe integrity and inventory semantics. */
.recipe-aware-option{display:grid!important;grid-template-columns:minmax(150px,1.15fr) minmax(95px,.5fr) minmax(190px,.95fr) auto;gap:8px!important;align-items:center}
.recipe-aware-option select,.recipe-aware-option input{min-height:40px;font-size:12px}
.recipe-stock-toggle{align-items:flex-start!important;padding:12px 14px;border:1px solid rgba(193,156,53,.24);border-radius:12px;background:rgba(193,156,53,.055)}
.recipe-stock-toggle input{margin-top:3px}.recipe-stock-toggle span{display:grid;gap:2px}.recipe-stock-toggle b{font-size:12px}.recipe-stock-toggle small{font-size:10px;color:rgba(34,34,34,.60);font-weight:400}
.v2-recipe-list-meta{display:flex;flex-direction:column;align-items:flex-end;gap:5px;white-space:nowrap}
.v2-recipe-status,.v2-recipe-mini{display:inline-flex;align-items:center;border-radius:999px;font-weight:800;white-space:nowrap}
.v2-recipe-status{padding:4px 8px;font-size:9px;border:1px solid transparent}
.v2-recipe-status.ready{background:#eaf6ef;color:#1f7049;border-color:#b8dfca}.v2-recipe-status.missing{background:#fff0ed;color:#9b312a;border-color:#efc1bb}.v2-recipe-status.exempt{background:#f0f1ef;color:#666b63;border-color:#d8dad5}
.v2-recipe-mini{padding:3px 7px;font-size:8px}.v2-recipe-mini.ok{background:#eaf6ef;color:#1f7049}.v2-recipe-mini.bad{background:#fff0ed;color:#9b312a}.v2-recipe-mini.neutral{background:#f1f1ee;color:#676b64}
.v2-recipe-card.is-missing{border-color:#e8bbb5;background:#fffaf9}.v2-recipe-card .row.wrap{justify-content:flex-start;gap:7px}.v2-recipe-issues{display:grid;gap:5px;margin:0 0 14px;padding:11px 13px;border:1px solid #efc5bf;border-radius:12px;background:#fff5f3;color:#8d3029;font-size:11px}.v2-recipe-issues b{margin-bottom:2px}.v2-recipe-issues span:before{content:'• ';font-weight:900}
@media(max-width:760px){.recipe-aware-option{grid-template-columns:1fr 1fr}.recipe-aware-option select{grid-column:1/-1}.recipe-aware-option .btn{justify-self:start}.v2-recipe-list-meta{align-items:flex-start}}


/* HMS V9.6 — business-friendly admin UI, compact recipes, readable reports. */
.v2-master-detail{grid-template-columns:minmax(300px,360px) minmax(0,1fr);align-items:start}
.v2-master-detail>aside{position:sticky;top:16px}
.v2-master-detail .v2-list{max-height:64vh}
.v2-recipe-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.v2-recipe-card{min-width:0;padding:13px}
.v2-recipe-card>.row.between{align-items:flex-start;gap:10px}
.v2-recipe-card .v2-components{gap:6px}
.v2-recipe-card .v2-components>.row{padding:6px 0;border-bottom:1px solid rgba(34,34,34,.06)}
.v2-recipe-card .v2-components>.row:last-child{border-bottom:0}
.v2-prep-instruction{display:grid;gap:4px;margin:11px 0 0;padding:9px 10px;border-radius:10px;background:#f7f3e8;border:1px solid rgba(193,156,53,.22)}
.v2-prep-instruction b{font-size:10px;color:#745b18}.v2-prep-instruction span{font-size:11px;line-height:1.65;color:#222}
.v2-prep-field{display:grid;gap:6px;margin-top:14px}.v2-prep-field textarea{min-height:82px}.v2-prep-field small{font-size:10px;color:rgba(34,34,34,.62);line-height:1.6}
.v2-permission-section{margin:0 0 18px}.v2-permission-section>h3{margin:0 0 8px;font-size:14px;color:#222}
.v2-permission-grid label{align-items:center;min-height:48px}.v2-permission-grid label span{display:block}.v2-permission-grid label b{font-size:12px;line-height:1.55}
.v2-po-summary{grid-template-columns:repeat(3,minmax(0,1fr));margin:4px 0 16px}.v2-po-summary div{display:flex;flex-direction:column;justify-content:center;gap:5px}.v2-po-summary .pill{align-self:flex-start}
/* Reports must remain readable at normal desktop distance. */
.v2-report-filter-copy p{font-size:12px}.v2-report-filter-form label{font-size:12px}
.v2-report-chart-head>small,.v2-report-floor-head>small{font-size:11px}.v2-report-bar-row b,.v2-top-label b{font-size:12px}.v2-report-bar-row span,.v2-top-label span{font-size:11px}
.v2-report-mini-stats small{font-size:10.5px}.v2-report-mini-stats strong{font-size:19px}.v2-report-mini-stats span{font-size:10px}
.v2-advanced-kpis small{font-size:10.5px}.v2-advanced-kpis strong{font-size:21px}.v2-advanced-kpis span{font-size:10px;line-height:1.55}
.v2-compare-row b{font-size:11.5px}.v2-compare-row small{font-size:9.5px}.v2-compare-row strong{font-size:12.5px}.v2-compare-row>span,.v2-price-trend{font-size:9.5px}
.v2-day-col>span{font-size:9px}.v2-chart-key{font-size:10px}.v2-hour b{font-size:9.5px}.v2-hour small{font-size:8.5px}.v2-cost-compare small{font-size:10px}.v2-cost-compare strong{font-size:18px}
.v2-analytics-card .data-table th,.v2-analytics-card .data-table td{font-size:10.5px}.v2-analytics-card .v2-muted{font-size:9.5px}
@media(max-width:1100px){.v2-recipe-stack{grid-template-columns:1fr}.v2-master-detail{grid-template-columns:minmax(270px,320px) minmax(0,1fr)}}
@media(max-width:900px){.v2-master-detail{grid-template-columns:1fr}.v2-master-detail>aside{position:static}.v2-master-detail .v2-list{max-height:320px}.v2-po-summary{grid-template-columns:1fr}}

/* HMS V9.8 — purchasing hierarchy + symmetric recipe editor. */
.v2-purchasing-page{gap:16px}
.v2-purchase-kpis{margin-top:14px;margin-bottom:2px}
.v2-purchase-kpi{display:flex;flex-direction:column;justify-content:center;min-height:112px;padding:16px 18px}
.v2-purchase-kpi-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;min-width:0;direction:ltr}
.v2-purchase-kpi-head h3{grid-column:2;margin:0;font-size:14px;line-height:1.5;text-align:right;direction:rtl}
.v2-purchase-kpi-head strong{grid-column:1;margin:0;font-size:30px;line-height:1;font-variant-numeric:tabular-nums;text-align:left;direction:ltr;justify-self:start}
.v2-purchase-kpi>small{margin-top:10px;line-height:1.6}
.v2-purchase-toolbar{padding:8px 10px;border:1px solid rgba(34,34,34,.08);border-radius:14px;background:#fff}
.v2-supplier-new{min-height:40px!important;padding-inline:15px!important;border-color:rgba(193,156,53,.45)!important;background:rgba(193,156,53,.10)!important;font-weight:800!important}
.v2-supplier-new:hover{background:rgba(193,156,53,.18)!important;border-color:rgba(193,156,53,.72)!important;transform:translateY(-1px)}
.v2-supplier-new:active{transform:translateY(0) scale(.985)}
.v2-supplier-panel .v2-panel-head{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid rgba(34,34,34,.07)}

.v2-recipe-modal-body{display:grid;gap:12px}
.v2-recipe-modal-body .v2-components{display:grid;gap:10px;margin-top:0}
.v2-component-row-symmetric{grid-template-columns:minmax(250px,1.45fr) minmax(160px,.62fr) 46px;gap:12px;align-items:end;padding:12px;border:1px solid rgba(34,34,34,.09);border-radius:13px;background:#fafaf8}
.v2-component-field{display:grid;grid-template-rows:20px 46px;gap:6px;margin:0;min-width:0;align-self:stretch}
.v2-component-field>span{display:flex;align-items:center;font-size:11px;font-weight:800;line-height:20px;color:#333}
.v2-component-field input,.v2-component-field select{width:100%;height:46px;min-height:46px;margin:0!important;padding-block:0;box-sizing:border-box}
.v2-component-field input[type="number"]{font-variant-numeric:tabular-nums}
.v2-component-remove{width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;padding:0!important;align-self:end!important;display:grid!important;place-items:center;font-size:20px!important;line-height:1;border-radius:11px!important}
.v2-recipe-add-row{justify-self:start;min-height:42px;margin-top:0!important;padding-inline:15px!important;font-weight:800}
.v2-recipe-modal-body>.inline-hint{margin:0;line-height:1.7}

/* Keep information blocks aligned as clear title/value units. */
.v2-details>div{display:flex;flex-direction:column;justify-content:center;gap:6px;min-height:72px}
.v2-details>div>small{display:block;margin:0;line-height:1.4}
.v2-details>div>b,.v2-details>div>strong{display:block;line-height:1.5}

@media(max-width:760px){
  .v2-purchase-kpi{min-height:100px}
  .v2-component-row-symmetric{grid-template-columns:1fr;gap:10px}
  .v2-component-field{grid-template-rows:20px 46px}
  .v2-component-remove{justify-self:start}
  .v2-recipe-add-row{width:100%;justify-content:center}
}


/* ===== SOURCE: v9-4.css ===== */
/* HMS V9.4 — final usability/polish layer */
.topbar-avatar{display:none!important}
.topbar-menu{background:#222!important;color:#fff!important;border:1px solid #222!important;border-radius:8px!important;padding:8px 13px!important;font-weight:800!important;transition:transform .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease!important}
.topbar-menu:hover,.topbar-menu:focus-visible{background:#2d2d2d!important;color:#fff!important;border-color:#c19c35!important;box-shadow:0 5px 15px rgba(34,34,34,.14)!important;transform:translateY(-1px)!important}.topbar-menu:active,.topbar-menu.is-pressed{transform:translateY(0) scale(.98)!important;background:#171717!important;color:#fff!important}
.auth-login-v932 .auth-brand-name{display:none!important}.auth-login-v932 .auth-form-bottom{justify-content:flex-end!important}

.ops-kpi{display:grid!important;align-content:center!important;gap:8px!important;min-height:142px!important}.ops-kpi .label{margin:0!important;line-height:1.65!important}.ops-kpi .value{margin:2px 0 0!important;line-height:1.05!important}.ops-kpi small{display:block!important;line-height:1.7!important;margin-top:1px!important}
.sidebar .nav-group{padding-top:13px!important;padding-bottom:9px!important}.sidebar .nav-group b{font-size:12px!important;line-height:1.55!important;color:#bbb7ad!important}.sidebar .nav-group small{font-size:10.5px!important;line-height:1.65!important;color:#8e8b83!important;margin-top:2px!important;display:block!important}

#toast{position:fixed!important;top:88px!important;left:50%!important;right:auto!important;bottom:auto!important;transform:translate(-50%,-12px)!important;z-index:99999!important;max-width:min(92vw,520px)!important;pointer-events:none!important;box-shadow:0 12px 34px rgba(34,34,34,.18)!important}#toast.show{transform:translate(-50%,0)!important}
.btn,.topbar-menu{transition:transform .12s ease,box-shadow .15s ease,background-color .15s ease,border-color .15s ease,color .15s ease!important}.btn:active,.btn.is-pressed{transform:scale(.975)!important}.btn.is-loading{cursor:wait!important;opacity:.78!important}.v94-spinner{width:14px;height:14px;border:2px solid currentColor;border-inline-start-color:transparent;border-radius:50%;display:inline-block;animation:v94spin .65s linear infinite}@keyframes v94spin{to{transform:rotate(360deg)}}

/* Tables/forms: labels, helper text, symmetry and bottom breathing room. */
.hms-field-label-row{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:5px!important;margin-bottom:10px!important}.hms-field-label-row label{display:block!important;font-weight:700!important}.hms-field-label-row small{display:block!important;color:#85827a!important;line-height:1.65!important}.required-mark{display:inline!important;margin-inline-start:4px!important;color:#a3342d!important;font-weight:900!important;vertical-align:baseline!important}
.hms-capacity-summary{margin:12px 0 0!important;padding:10px 12px!important;border-radius:8px!important;background:#faf7ed!important;color:#5c5131!important;border:1px solid rgba(193,156,53,.22)!important;font-weight:700!important}.session-core-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}.session-core-row>label{min-width:0!important}.session-core-row input,.session-core-row select{height:46px!important}.guest-stepper{display:grid!important;grid-template-columns:46px minmax(70px,1fr) 46px!important;border:1px solid #d9d7cf!important;border-radius:10px!important;overflow:hidden!important;background:#fff!important}.guest-stepper input{border:0!important;border-radius:0!important;text-align:center!important;height:46px!important;font-weight:800!important;font-size:16px!important}.guest-stepper button{border:0!important;background:#f6f3e8!important;color:#222!important;font-size:22px!important;font-weight:800!important;cursor:pointer!important}.guest-stepper button:hover{background:#eee7d1!important}.v94-session-tables{margin-top:4px!important}
#modal-form{padding-bottom:12px!important}.modal-body{padding-bottom:24px!important}.modal-actions{margin-top:22px!important;margin-bottom:0!important;padding-bottom:2px!important}.v94-reason textarea{min-height:96px!important}.v94-user-form .v94-password-field{grid-column:1/-1!important}.v94-password-wrap{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;border:1px solid #d9d7cf!important;border-radius:10px!important;overflow:hidden!important}.v94-password-wrap input{border:0!important;border-radius:0!important}.v94-eye{border:0!important;border-inline-start:1px solid #e5e2d9!important;background:#f8f7f2!important;padding:0 14px!important;color:#333!important}.v94-password-tools{display:flex!important;gap:7px!important;margin-top:6px!important}

/* Full-width operational tables and settings. */
.content[data-page="orders"],.content[data-page="kitchen"],.content[data-page="settings"]{max-width:none!important;width:100%!important}.content[data-page="orders"] .data-wrap{width:100%!important;overflow-x:auto!important}.content[data-page="orders"] .data-table{width:100%!important;min-width:980px!important;table-layout:auto!important}.content[data-page="orders"] .data-table th,.content[data-page="orders"] .data-table td{padding-block:15px!important}.content[data-page="settings"]{padding-bottom:80px!important}.content[data-page="settings"] .settings-form{margin-bottom:32px!important;padding-bottom:34px!important}.content[data-page="settings"] .settings-form>.btn[type="submit"]{margin-top:22px!important}

/* Kitchen board: 3 complete columns, constrained live list, drag state. */
.content[data-page="kitchen"] .ticket-columns{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;align-items:start!important;width:100%!important}.content[data-page="kitchen"] .ticket-column{min-width:0!important;width:100%!important;max-width:none!important;overflow:hidden!important}.ticket-column-body{max-height:min(64vh,720px)!important;overflow-y:auto!important;overscroll-behavior:contain!important;padding-inline:1px 5px!important;scrollbar-width:none!important}.ticket-column-body::-webkit-scrollbar{display:none!important}.ticket-column .ticket{cursor:default!important}.ticket[draggable="true"]{cursor:grab!important}.ticket.dragging{opacity:.45!important;transform:scale(.985)!important}.ticket-column.drag-over{outline:2px dashed #c19c35!important;outline-offset:-6px!important;background:rgba(193,156,53,.05)!important}.kitchen-more{width:100%!important;margin-top:10px!important}.v94-old-ticket{display:inline-flex!important;width:max-content!important;margin:5px 0 2px!important;padding:3px 7px!important;border-radius:6px!important;background:#fff2d8!important;color:#805912!important;font-size:10px!important;font-weight:800!important}.v94-ready-hint{margin:6px 0 0!important;color:#4b4942!important}.ticket .btn.primary{width:100%!important;min-height:42px!important;margin-top:7px!important}

/* POS header/flow and product add button. */
.pos-header{align-items:flex-start!important;margin-bottom:16px!important}.pos-header h1{margin-bottom:7px!important}.pos-header p{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important}.pos-header p .pill{padding:6px 11px!important;font-size:11px!important}.order-flow{grid-template-columns:minmax(230px,.75fr) minmax(460px,1.35fr)!important;gap:24px!important;padding:15px 18px!important;margin:0 0 18px!important}.order-flow ol{max-width:720px!important;width:100%!important;justify-self:end!important}.order-flow li{justify-content:flex-start!important;gap:6px!important}.order-flow li span{white-space:nowrap!important}.pos-product-copy>small{display:grid!important;grid-template-columns:1fr auto 1fr!important;align-items:center!important;gap:6px!important;min-height:30px!important}.pos-product-copy>small>span{grid-column:1!important}.pos-product-copy>small>b{grid-column:2!important;justify-self:center!important;margin:0!important}.pos-product-copy>small>i{grid-column:3!important}.pos-footnote{display:none!important}

/* Receipt/booking compact details readability. */
.booking-compact-tables b{background:#222!important;color:#fff!important;border:1px solid #222!important}.booking-compact-phone,.whatsapp-link{color:#146b38!important;font-weight:800!important;text-decoration:underline!important;text-underline-offset:3px!important}.booking-compact-meta{color:#34322e!important}.booking-compact-title strong{color:#222!important}

/* Modifiers */
.modifier-balance{padding:10px 12px!important;border-radius:8px!important;background:#f3f7ef!important;color:#36512e!important;font-weight:800!important}.modifier-balance.bad{background:#fff0ed!important;color:#9b3029!important}.modifier-distribution .inline-hint{max-width:620px!important}

@media(max-width:980px){.content[data-page="kitchen"] .ticket-columns{grid-template-columns:1fr!important}.ticket-column-body{max-height:520px!important}.session-core-row{grid-template-columns:1fr!important}.order-flow{grid-template-columns:1fr!important}.order-flow ol{max-width:none!important;justify-self:stretch!important;overflow-x:auto!important}}
.content[data-page="kitchen"] .ticket-columns.focused{grid-template-columns:minmax(0,1fr)!important}.content[data-page="kitchen"] .ticket-columns.focused .ticket-column{max-width:920px!important;margin-inline:auto!important}
.session-core-row>label:only-child{grid-column:1/-1!important}


/* HMS V9.6 — kitchen preparation instructions for modifiers. */
.ticket-variant{display:block;margin-top:3px}
.ticket-modifiers{display:grid;gap:6px;margin:8px 0;padding:8px 9px;border-radius:10px;background:#fff8e8;border:1px solid rgba(193,156,53,.26)}
.ticket-modifiers>div{display:grid;gap:2px}.ticket-modifiers b{font-size:11px;color:#222}.ticket-modifiers span{font-size:10px;line-height:1.55;color:#72591c;font-weight:700}


/* ===== SOURCE: v9-7.css ===== */
/* HMS V9.7 — QA polish batch */

/* Settings: use the desktop canvas instead of leaving a large empty side. */
.content[data-page="settings"] .settings-form{
  width:100%!important;
  max-width:none!important;
}
.content[data-page="settings"] #settings-form .grid2{
  grid-template-columns:repeat(2,minmax(260px,1fr))!important;
  column-gap:28px!important;
  row-gap:22px!important;
}
.content[data-page="settings"] .public-menu-qr-card{max-width:none!important;width:100%!important}
@media(min-width:1250px){
  .content[data-page="settings"] #settings-form{padding-inline:34px!important}
  .content[data-page="settings"] #settings-form .grid2{grid-template-columns:repeat(3,minmax(220px,1fr))!important}
  .content[data-page="settings"] #settings-form .grid2>.full{grid-column:1/-1!important}
}
@media(max-width:760px){.content[data-page="settings"] #settings-form .grid2{grid-template-columns:1fr!important}}

/* Public menu: the brand row has no staff/admin affordance. */
.public-head .v97-public-brand-row{justify-content:flex-start!important;margin-bottom:30px!important}
.public-head .v97-public-brand-row>a{display:none!important}

/* Reservations: notes stay with the facts and excessive capacity is unmistakable. */
.hms-reservation-fields .hms-res-notes{grid-column:auto!important;min-width:0!important}
.hms-reservation-fields .hms-res-notes textarea{min-height:46px!important;height:46px!important;max-height:110px!important;line-height:1.55!important;padding-block:10px!important}
.hms-capacity-summary.is-excess{background:#fff0ed!important;border-color:#e7b4ad!important;color:#8d3029!important}
@media(max-width:650px){.hms-reservation-fields .hms-res-notes{grid-column:1/-1!important}}

/* One modal scrollbar only; text must never be clipped by nested overflow. */
#modal[open]{display:flex!important;flex-direction:column!important;overflow:hidden!important;max-height:min(90dvh,880px)!important}
#modal .modal-head{flex:0 0 auto!important}
#modal .modal-body{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scrollbar-gutter:auto!important;
  padding-bottom:24px!important;
}
#modal .modal-body #modal-form{overflow:visible!important;min-width:0!important;padding-bottom:0!important}
#modal .modal-body .data-wrap{overflow-x:auto!important;overflow-y:visible!important;max-height:none!important}
#modal .modal-body .data-table{height:auto!important}
#modal .modal-body p,#modal .modal-body small,#modal .modal-body label,#modal .modal-body b,#modal .modal-body span{overflow-wrap:anywhere!important;word-break:normal!important}
#modal .modal-actions{
  position:static!important;
  bottom:auto!important;
  margin:22px 0 0!important;
  padding:16px 0 0!important;
  box-shadow:none!important;
}
@media(max-width:650px){#modal[open]{max-height:94dvh!important}#modal .modal-body{padding-bottom:18px!important}}

/* Sidebar: keep wheel/touch scrolling, never show a visual scrollbar or clip labels. */
.sidebar,.sidebar nav{
  overflow-x:hidden!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
  scrollbar-gutter:auto!important;
}
.sidebar nav{overflow-y:auto!important;padding-inline-end:0!important}
.sidebar::-webkit-scrollbar,.sidebar nav::-webkit-scrollbar{display:none!important;width:0!important;height:0!important;background:transparent!important}
.sidebar .nav-link{min-width:0!important}
.sidebar .nav-link span{min-width:0!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.55!important}

/* POS: restore the flow strip close to the earlier position; geometric centering for +. */
.order-flow{margin:-4px 0 18px!important}
.pos-product{position:relative!important}
.pos-product-copy>small{position:relative!important;display:block!important;min-height:31px!important;padding-inline-end:0!important;line-height:31px!important}
.pos-product-copy>small>b{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  margin:0!important;
  width:29px!important;
  height:29px!important;
  border-radius:9px!important;
  transition:transform .14s ease,background .14s ease,box-shadow .14s ease!important;
}
.pos-product:hover:not(:disabled) .pos-product-copy>small>b{background:#c19c35!important;box-shadow:0 5px 14px rgba(193,156,53,.25)!important;transform:translate(-50%,-52%) scale(1.06)!important}

/* POS add feedback: immediate pending state, then a short success acknowledgement. */
.pos-product.v97-adding:after,.pos-product.v97-added:after{
  content:attr(data-add-feedback);
  position:absolute;inset:0;display:grid;place-items:center;
  z-index:8;background:rgba(34,34,34,.82);color:#fff;
  font-size:12px;font-weight:900;letter-spacing:.1px;
  pointer-events:none;animation:v97fadein .12s ease both;
}
.pos-product.v97-adding:after{content:'جارٍ الإضافة…'}
.pos-product.v97-added:after{background:rgba(35,112,72,.91)}
.pos-product.v97-repeat-blocked{animation:v97shake .28s ease}
@keyframes v97fadein{from{opacity:0}to{opacity:1}}
@keyframes v97shake{0%,100%{transform:translateX(0)}30%{transform:translateX(3px)}70%{transform:translateX(-3px)}}

/* Buttons must visibly react before/while an action runs. */
.btn,.tab,[data-pos-add],.hms-table-option,.floor-kpi{transition:transform .12s ease,box-shadow .15s ease,background-color .15s ease,border-color .15s ease,filter .15s ease!important}
.btn:hover:not(:disabled),.tab:hover:not(:disabled){box-shadow:0 7px 18px rgba(34,34,34,.09)!important;transform:translateY(-1px)!important}
.btn.v97-pressed,.tab.v97-pressed,[data-pos-add].v97-pressed,.hms-table-option.v97-pressed,.floor-kpi.v97-pressed{transform:translateY(0) scale(.97)!important;filter:brightness(.96)!important}
.btn:focus-visible,.tab:focus-visible,[data-pos-add]:focus-visible{outline:3px solid rgba(193,156,53,.28)!important;outline-offset:2px!important}

/* Details: every label is directly above its own value, never detached sideways. */
.v2-details{align-items:stretch!important}
.v2-details>div,.v2-details>.v97-detail-block{
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;
  gap:6px!important;text-align:right!important;min-width:0!important;
}
.v2-details>div>small{display:block!important;width:100%!important;margin:0!important;font-size:10.5px!important;line-height:1.5!important;color:rgba(34,34,34,.56)!important}
.v2-details>div>b,.v2-details>div>strong,.v2-details>div>.pill{display:block!important;max-width:100%!important;margin:0!important;align-self:flex-start!important}
.v2-po-summary{align-items:stretch!important}

/* Reports: make the date navigation an obvious feature instead of hidden helper UI. */
.v97-report-filter{grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr)!important;align-items:stretch!important}
.v97-report-filter .v2-report-filter-copy{display:flex!important;flex-direction:column!important;justify-content:center!important}
.v97-date-jump{margin-top:14px;padding:12px;border:1px solid rgba(193,156,53,.28);border-radius:12px;background:#fbf8ef;display:grid;gap:10px}
.v97-date-jump-title{display:flex;align-items:center;gap:9px}.v97-date-jump-title>div{display:grid;gap:2px}.v97-date-jump-title small{font-size:9.5px;color:#8a7440}.v97-date-jump-title strong{font-size:13px;color:#222}
.v97-calendar-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#222;color:#fff;font-size:17px;flex:none}
.v97-date-jump-controls{display:grid;grid-template-columns:minmax(145px,1fr) auto;gap:8px;align-items:end}.v97-date-jump-controls input{min-height:42px;background:#fff;border-color:rgba(34,34,34,.15)}.v97-date-jump-controls .btn{min-height:42px}
.v97-report-filter .v2-report-filter-form{align-content:center!important}
.v97-report-date-field{
  position:relative!important;display:grid!important;gap:7px!important;
  padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;
  color:#3c3a35!important;font-weight:800!important;line-height:1.45!important;
}
.v97-report-date-field input{
  margin-top:0!important;min-height:42px!important;background:#fff!important;cursor:pointer!important;
  border:1px solid rgba(34,34,34,.15)!important;border-radius:10px!important;
}
@media(max-width:900px){.v97-report-filter{grid-template-columns:1fr!important}.v97-date-jump-controls{grid-template-columns:1fr auto}}
@media(max-width:560px){.v97-date-jump-controls{grid-template-columns:1fr}.v97-date-jump-controls .btn{width:100%}.v97-report-filter .v2-report-filter-form{display:grid!important;grid-template-columns:1fr!important}.v97-report-filter .v2-report-filter-form label,.v97-report-filter .v2-report-filter-form .btn{width:100%!important}}

/* HMS V9.7.2 — login branding + order-stepper clarity */
/* IT Genesis is a horizontal wordmark: give it a matching frame instead of a cramped square. */
.auth-login-v932 .auth-top .brand-mark{
  width:132px!important;
  height:44px!important;
  min-width:132px!important;
  padding:8px 11px!important;
  border-radius:12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:rgba(20,20,20,.36)!important;
  border:1px solid rgba(255,255,255,.28)!important;
}
.auth-login-v932 .auth-top .brand-mark img{
  width:100%!important;
  height:100%!important;
  max-width:110px!important;
  max-height:28px!important;
  object-fit:contain!important;
  object-position:center!important;
}
.auth-login-v932 .login-emblem{
  width:156px!important;
  height:66px!important;
  min-width:156px!important;
  padding:11px 15px!important;
  border-radius:15px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:#222!important;
  border:1px solid #222!important;
  box-shadow:0 10px 26px rgba(34,34,34,.12)!important;
}
.auth-login-v932 .login-emblem .hms-login-logo{
  width:100%!important;
  height:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.auth-login-v932 .login-emblem .hms-login-logo img{
  width:100%!important;
  height:100%!important;
  max-width:128px!important;
  max-height:38px!important;
  object-fit:contain!important;
  object-position:center!important;
}
/* Keep both page headings unmistakably visible on their own backgrounds. */
.auth-login-v932 .auth-story h1{
  display:block!important;
  position:relative!important;
  z-index:2!important;
  color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
  text-shadow:0 2px 16px rgba(0,0,0,.18)!important;
}
.auth-login-v932 .auth-card h2{
  display:block!important;
  position:relative!important;
  z-index:2!important;
  color:#222!important;
  opacity:1!important;
  visibility:visible!important;
  margin-top:2px!important;
  margin-bottom:9px!important;
  line-height:1.35!important;
}
.auth-login-v932 .auth-card .eyebrow{margin-top:2px!important}

/* Order flow: no connector may run through the step labels. */
.order-flow ol{
  gap:10px!important;
  align-items:center!important;
}
.order-flow li{
  gap:8px!important;
  min-width:0!important;
  text-decoration:none!important;
}
.order-flow li:not(:last-child):after{
  content:none!important;
  display:none!important;
}
.order-flow li span{
  position:relative!important;
  z-index:2!important;
  display:block!important;
  text-decoration:none!important;
  line-height:1.45!important;
  white-space:nowrap!important;
}
.order-flow li i{
  flex:0 0 28px!important;
}
@media(max-width:760px){
  .auth-login-v932 .auth-top .brand-mark{width:112px!important;min-width:112px!important;height:40px!important}
  .auth-login-v932 .login-emblem{width:138px!important;min-width:138px!important;height:60px!important;margin-bottom:17px!important}
  .order-flow ol{gap:8px!important}
}

/* HMS V9.7.3 — public-menu hero title + IT Genesis wordmark frame */
.public-head{
  isolation:isolate!important;
  overflow:hidden!important;
}
.public-head::after{
  content:'';
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(18,18,18,.34) 0%,rgba(18,18,18,.48) 48%,rgba(18,18,18,.70) 100%)!important;
}
.public-head>*{
  position:relative!important;
  z-index:2!important;
}
.public-head .v97-public-brand-row{
  position:relative!important;
  z-index:3!important;
  align-items:center!important;
  margin-bottom:34px!important;
}
.public-head .brand-mark{
  width:132px!important;
  height:42px!important;
  min-width:132px!important;
  flex:0 0 132px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:7px 10px!important;
  border-radius:12px!important;
  overflow:hidden!important;
  background:rgba(20,20,20,.44)!important;
  border:1px solid rgba(255,255,255,.30)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.22)!important;
  backdrop-filter:blur(5px)!important;
  -webkit-backdrop-filter:blur(5px)!important;
}
.public-head .brand-mark .hms-itgenesis-logo,
.public-head .brand-mark img{
  display:block!important;
  width:108px!important;
  height:auto!important;
  max-width:108px!important;
  max-height:27px!important;
  object-fit:contain!important;
  object-position:center!important;
  margin:0!important;
  opacity:1!important;
  filter:none!important;
  transform:none!important;
}
.public-head h1{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  position:relative!important;
  z-index:3!important;
  max-width:min(760px,82%)!important;
  margin:0 0 10px!important;
  color:#fff!important;
  font-size:clamp(34px,4.3vw,54px)!important;
  line-height:1.16!important;
  font-weight:800!important;
  letter-spacing:-.6px!important;
  text-shadow:0 3px 18px rgba(0,0,0,.55),0 1px 2px rgba(0,0,0,.35)!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:normal!important;
}
.public-head p{
  position:relative!important;
  z-index:3!important;
  margin:0!important;
  color:rgba(255,255,255,.94)!important;
  font-size:15px!important;
  line-height:1.7!important;
  font-weight:600!important;
  text-shadow:0 2px 10px rgba(0,0,0,.38)!important;
}
.public-menu-caption{
  z-index:3!important;
  color:#f2d9a4!important;
  text-shadow:0 2px 8px rgba(0,0,0,.35)!important;
}
@media(max-width:650px){
  .public-head .v97-public-brand-row{margin-bottom:26px!important}
  .public-head .brand-mark{width:116px!important;min-width:116px!important;flex-basis:116px!important;height:38px!important;padding:6px 9px!important;border-radius:11px!important}
  .public-head .brand-mark .hms-itgenesis-logo,.public-head .brand-mark img{width:96px!important;max-width:96px!important;max-height:24px!important}
  .public-head h1{max-width:100%!important;font-size:clamp(29px,8vw,38px)!important;line-height:1.22!important;margin-bottom:8px!important}
  .public-head p{font-size:13px!important}
}

/* HMS V9.7.4 — public-menu hero text stacking; prevent any caption/title overlap */
.public-head{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  min-height:330px!important;
  padding-bottom:38px!important;
}
.public-head .v97-public-brand-row{
  order:1!important;
  width:100%!important;
  flex:0 0 auto!important;
  margin:0 0 34px!important;
}
.public-head .public-menu-caption{
  order:2!important;
  position:static!important;
  inset:auto!important;
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  margin:0 0 11px!important;
  padding:0!important;
  line-height:1.45!important;
  white-space:normal!important;
  flex:0 0 auto!important;
}
.public-head h1{
  order:3!important;
  width:auto!important;
  max-width:min(780px,100%)!important;
  margin:0 0 10px!important;
  flex:0 0 auto!important;
}
.public-head p{
  order:4!important;
  width:auto!important;
  max-width:min(680px,100%)!important;
  margin:0!important;
  flex:0 0 auto!important;
}
@media(max-width:650px){
  .public-head{
    min-height:300px!important;
    padding-bottom:28px!important;
  }
  .public-head .v97-public-brand-row{margin-bottom:24px!important}
  .public-head .public-menu-caption{margin-bottom:8px!important;font-size:9px!important;letter-spacing:1.5px!important}
  .public-head h1{margin-bottom:8px!important;max-width:100%!important}
  .public-head p{max-width:100%!important;line-height:1.6!important}
}


/* ===== SOURCE: v9-8-2.css ===== */
/* HMS V9.8.2 — system-wide modal/sidebar and numeric-card alignment fixes. */

/*
 * Shared KPI layout.
 * Direction is deliberately LTR for the grid itself so column 1 is always the
 * physical LEFT side. Arabic copy is switched back to RTL inside its cells.
 * This prevents large values from ever sitting on top of labels in RTL pages.
 */
.stats > .stat{
  display:grid!important;
  grid-template-columns:max-content minmax(0,1fr)!important;
  grid-template-areas:
    "value label"
    "value hint"!important;
  align-items:center!important;
  column-gap:18px!important;
  row-gap:6px!important;
  direction:ltr!important;
  text-align:initial!important;
  min-width:0!important;
  overflow:hidden!important;
}
.stats > .stat > .label{
  grid-area:label!important;
  min-width:0!important;
  margin:0!important;
  direction:rtl!important;
  text-align:right!important;
  align-self:end!important;
  overflow-wrap:anywhere!important;
}
.stats > .stat > .value{
  grid-area:value!important;
  min-width:max-content!important;
  max-width:48%!important;
  margin:0!important;
  justify-self:left!important;
  align-self:center!important;
  direction:ltr!important;
  text-align:left!important;
  white-space:nowrap!important;
  font-variant-numeric:tabular-nums!important;
  line-height:1.05!important;
}
.stats > .stat > small{
  grid-area:hint!important;
  min-width:0!important;
  margin:0!important;
  direction:rtl!important;
  text-align:right!important;
  align-self:start!important;
  overflow-wrap:anywhere!important;
}
/* Keep the Arabic accent on the copy side after making the card grid LTR. */
.stats > .stat.primary:before{
  right:0!important;
  left:auto!important;
  inset-inline-start:auto!important;
  inset-inline-end:auto!important;
}

/* Filter/action helper text belongs with the title, not on top of the number. */
.stats > .floor-kpi,
.stats > .ops-kpi{
  padding-top:42px!important;
}
.floor-kpi-filter,
.ops-kpi-action{
  top:12px!important;
  right:20px!important;
  left:auto!important;
  direction:rtl!important;
  text-align:right!important;
}

/* Backend V2 KPI cards — reports, inventory and other summary grids. */
.v2-kpi-grid > .v2-card:not(.v2-purchase-kpi){
  display:grid!important;
  grid-template-columns:max-content minmax(0,1fr)!important;
  grid-template-areas:
    "value title"
    "value hint"!important;
  align-items:center!important;
  column-gap:18px!important;
  row-gap:6px!important;
  direction:ltr!important;
  min-width:0!important;
}
.v2-kpi-grid > .v2-card:not(.v2-purchase-kpi) > h3{
  grid-area:title!important;
  min-width:0!important;
  margin:0!important;
  direction:rtl!important;
  text-align:right!important;
  overflow-wrap:anywhere!important;
}
.v2-kpi-grid > .v2-card:not(.v2-purchase-kpi) > strong{
  grid-area:value!important;
  justify-self:left!important;
  margin:0!important;
  direction:ltr!important;
  text-align:left!important;
  white-space:nowrap!important;
  font-variant-numeric:tabular-nums!important;
  line-height:1.05!important;
}
.v2-kpi-grid > .v2-card:not(.v2-purchase-kpi) > small{
  grid-area:hint!important;
  min-width:0!important;
  margin:0!important;
  direction:rtl!important;
  text-align:right!important;
  overflow-wrap:anywhere!important;
}

/* Existing purchasing KPI structure: make the physical sides explicit. */
.v2-purchase-kpi-head{
  grid-template-columns:max-content minmax(0,1fr)!important;
  direction:ltr!important;
}
.v2-purchase-kpi-head > strong{
  grid-column:1!important;
  justify-self:left!important;
  direction:ltr!important;
  text-align:left!important;
}
.v2-purchase-kpi-head > h3{
  grid-column:2!important;
  direction:rtl!important;
  text-align:right!important;
}

/* Compact metric families use the same left-number / right-copy rule. */
.v2-advanced-kpis > article,
.v2-report-mini-stats > div,
.floor-quick-stats > div{
  display:grid!important;
  grid-template-columns:max-content minmax(0,1fr)!important;
  grid-template-areas:
    "value label"
    "value hint"!important;
  align-items:center!important;
  column-gap:12px!important;
  row-gap:3px!important;
  direction:ltr!important;
  min-width:0!important;
}
.v2-advanced-kpis > article > small,
.v2-report-mini-stats > div > small,
.floor-quick-stats > div > small{
  grid-area:label!important;
  margin:0!important;
  min-width:0!important;
  direction:rtl!important;
  text-align:right!important;
  overflow-wrap:anywhere!important;
}
.v2-advanced-kpis > article > strong,
.v2-report-mini-stats > div > strong,
.floor-quick-stats > div > strong{
  grid-area:value!important;
  margin:0!important;
  justify-self:left!important;
  direction:ltr!important;
  text-align:left!important;
  white-space:nowrap!important;
  font-variant-numeric:tabular-nums!important;
}
.v2-advanced-kpis > article > span,
.v2-report-mini-stats > div > span,
.floor-quick-stats > div > span{
  grid-area:hint!important;
  margin:0!important;
  min-width:0!important;
  direction:rtl!important;
  text-align:right!important;
  overflow-wrap:anywhere!important;
}

.ops-summary > div{
  display:grid!important;
  grid-template-columns:max-content minmax(0,1fr)!important;
  grid-template-areas:"value label"!important;
  align-items:center!important;
  column-gap:12px!important;
  direction:ltr!important;
  min-width:0!important;
}
.ops-summary > div > strong{
  grid-area:value!important;
  margin:0!important;
  justify-self:left!important;
  direction:ltr!important;
  text-align:left!important;
  white-space:nowrap!important;
  font-variant-numeric:tabular-nums!important;
}
.ops-summary > div > span{
  grid-area:label!important;
  min-width:0!important;
  direction:rtl!important;
  text-align:right!important;
  overflow-wrap:anywhere!important;
}

/* Narrow cards: keep the two sides but reduce pressure before any overlap can occur. */
@media(max-width:650px){
  .stats > .stat{
    column-gap:9px!important;
    padding-inline:13px!important;
  }
  .stats > .stat > .value{
    max-width:46%!important;
    font-size:clamp(23px,6vw,30px)!important;
  }
  .stats > .floor-kpi,
  .stats > .ops-kpi{
    padding-top:38px!important;
  }
  .floor-kpi-filter,
  .ops-kpi-action{
    top:10px!important;
    right:13px!important;
    font-size:8px!important;
  }
  .v2-kpi-grid > .v2-card:not(.v2-purchase-kpi),
  .v2-advanced-kpis > article,
  .v2-report-mini-stats > div,
  .floor-quick-stats > div{
    column-gap:9px!important;
  }
}

/* HMS V9.8.3 — sidebar must always reach the bottom edge of the viewport. */
html,body,#app,.shell{
  min-height:100vh!important;
  min-height:100dvh!important;
}
.shell{
  align-items:stretch!important;
}
.sidebar{
  height:100vh!important;
  height:100dvh!important;
  min-height:100vh!important;
  min-height:100dvh!important;
  max-height:100dvh!important;
  align-self:start!important;
  top:0!important;
  margin-bottom:0!important;
  padding-bottom:max(12px,env(safe-area-inset-bottom))!important;
  background-clip:border-box!important;
}
@media(max-width:900px){
  .sidebar{
    position:fixed!important;
    top:0!important;
    bottom:0!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
  }
}


/* ===== SOURCE: v9-9.css ===== */
/* HMS V9.9.1 runtime polish — corrective UI layer over V9.9. */

/* Keep interaction feedback fast without overriding card/frame geometry or
   custom animations owned by other screens. */
.btn,.tab,.nav-link,.pos-product,.customer-product,.floor-table .table-card{
  transition-duration:.12s!important;
}

/* Numeric inputs stay numeric but browser spinner controls are hidden. */
input[type="number"]{-moz-appearance:textfield;appearance:textfield;}
input[type="number"]::-webkit-outer-spin-button,input[type="number"]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}

/*
 * Desktop sidebar: preserve the system grid and keep the rail full-height,
 * while the navigation itself remains independently scrollable.
 * This fixes the V9.9 regression caused by converting .shell to block and
 * forcing the whole sidebar to position:fixed.
 */
@media(min-width:901px){
  .shell{
    display:grid!important;
    grid-template-columns:224px minmax(0,1fr)!important;
    align-items:start!important;
    min-height:100dvh!important;
  }
  .sidebar{
    position:sticky!important;
    top:0!important;
    right:auto!important;
    left:auto!important;
    bottom:auto!important;
    width:auto!important;
    height:100dvh!important;
    min-height:100dvh!important;
    max-height:100dvh!important;
    align-self:start!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    overscroll-behavior:contain!important;
    margin:0!important;
  }
  .sidebar nav{
    display:block!important;
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    scrollbar-width:none!important;
    -ms-overflow-style:none!important;
  }
  .sidebar nav::-webkit-scrollbar{display:none!important;width:0!important;height:0!important;}
  .workspace{
    margin:0!important;
    min-width:0!important;
    min-height:100dvh!important;
  }
}

/* Old popup discount entry points are replaced by the inline check control. */
[data-act="discount"],[data-act="pos-check-discount"]{display:none!important;}
.v99-check-tools{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;margin:0 0 12px;}
.v99-discount{margin:14px 0;padding:14px;border:1px solid rgba(34,34,34,.10);border-radius:14px;background:#fff;box-shadow:0 8px 22px rgba(34,34,34,.035);}
.v99-discount-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;}
.v99-discount-head div{display:grid;gap:2px}.v99-discount-head small{color:var(--muted,#6d6d6d)}
.v99-discount-grid{display:grid;grid-template-columns:minmax(110px,.8fr) minmax(90px,.7fr) minmax(150px,1.2fr) auto;gap:8px;align-items:end;}
.v99-discount-grid label{display:grid;gap:5px;font-size:12px}.v99-discount-grid input,.v99-discount-grid select{width:100%;min-height:42px;}
.v99-discount-current{display:block;margin-top:8px;color:var(--muted,#666)}.v99-check-print{margin-top:8px;}

/* Simplified preparation board: account/order, items, one Done action. */
.v99-prep-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;align-items:start;}
.v99-prep-card{
  position:relative;
  padding:18px;
  border:1px solid rgba(34,34,34,.10);
  border-radius:16px;
  background:#fff;
  box-shadow:0 8px 22px rgba(34,34,34,.045);
  overflow:visible;
  transition:border-color .12s ease,box-shadow .12s ease,background-color .12s ease;
}
.v99-prep-card header{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-bottom:1px solid rgba(34,34,34,.09);padding-bottom:12px;margin-bottom:12px}
.v99-prep-card header>div{display:grid}.v99-prep-card header>span{margin-inline-start:auto}.v99-prep-card ul{display:grid;gap:10px;margin:0 0 16px;padding:0;list-style:none}.v99-prep-card li{display:grid;gap:3px}.v99-prep-card li small,.v99-prep-card li em{font-size:12px;color:var(--muted,#666);font-style:normal}.v99-done{width:100%;min-height:46px}.v99-rush-badge{padding:5px 10px;border-radius:999px;background:#b52320!important;color:#fff!important;font-size:12px;font-weight:800;box-shadow:0 0 0 3px rgba(181,35,32,.12);}

/* Rush must be unmistakable: persistent tint + clearly visible breathing glow. */
@keyframes v99RushGlow{
  0%,100%{box-shadow:0 0 0 2px rgba(181,35,32,.22),0 10px 24px rgba(34,34,34,.06);background:#fff9f8;}
  50%{box-shadow:0 0 0 8px rgba(181,35,32,.16),0 0 30px rgba(181,35,32,.30),0 12px 28px rgba(34,34,34,.07);background:#fff3f1;}
}
.v99-prep-card.is-rush{
  border:2px solid #b52320!important;
  background:#fff9f8;
  animation:v99RushGlow 1.05s ease-in-out infinite!important;
}
.v99-prep-card.is-rush::before{
  content:'⚡';
  position:absolute;
  top:-11px;
  inset-inline-end:14px;
  width:28px;
  height:28px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#b52320;
  color:#fff;
  font-size:14px;
  box-shadow:0 5px 14px rgba(181,35,32,.28);
}

/* Cleaning/preparation-after-payment is no longer part of the table lifecycle. */
.floor-table.cleaning,[data-id="cleaning"][data-act="floor-status"],[data-id="cleaning"][data-act="ops-kpi"]{display:none!important;}

@media(max-width:760px){
  .v99-discount-grid{grid-template-columns:1fr 1fr}
  .v99-discount-grid label:nth-child(3),.v99-discount-grid .btn{grid-column:1/-1}
  .v99-check-tools{justify-content:stretch}.v99-check-tools .btn{flex:1}
  .v99-prep-grid{grid-template-columns:1fr}
}

/* Respect reduced-motion preferences without losing the visual Rush warning. */
@media(prefers-reduced-motion:reduce){
  .v99-prep-card.is-rush{animation:none!important;box-shadow:0 0 0 6px rgba(181,35,32,.16),0 0 24px rgba(181,35,32,.24)!important;background:#fff3f1!important;}
}


/* HMS V9.9.2 — layout balancing for dashboard, inline discount, kitchen cards, and stock KPIs. */

/* Operations dashboard: after V9.9 removes some old states, keep the top KPIs balanced
   and flatten the two nested columns into a cleaner symmetric desktop grid. */
.ops-kpis{
  grid-template-columns:repeat(2,minmax(260px,1fr))!important;
  gap:16px!important;
  align-items:stretch!important;
  max-width:760px;
}
.ops-kpis .stat{height:100%}
.ops-dashboard{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
  align-items:stretch!important;
}
.ops-dashboard>.ops-column{display:contents!important}
.ops-dashboard .ops-panel{
  height:100%;
  display:flex;
  flex-direction:column;
  min-height:0;
}
.ops-dashboard .ops-panel-head{align-items:flex-start!important}
.ops-dashboard .ops-panel-head>div{min-width:0}
.ops-dashboard .ops-row{gap:12px}
.ops-dashboard .ops-row>div{min-width:0;flex:1 1 auto}
.ops-dashboard .ops-row strong,
.ops-dashboard .ops-row .btn,
.ops-dashboard .ops-row .pill{flex:0 0 auto}
.ops-dashboard .ops-panel.summary{grid-column:1/-1!important}
.ops-summary{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:1px!important}
.ops-summary>div{min-height:84px;justify-content:center;flex-direction:column;align-items:flex-start}
.ops-summary strong{line-height:1.05}
.ops-panel .empty{flex:1;display:grid;place-items:center}

/* Order side panel discount block: keep the frame contained inside the cart and
   move fields into stable rows so labels/text never spill outside the card. */
.pos-cart .v99-discount{
  margin:14px 20px 10px;
  padding:16px;
  overflow:hidden;
}
.pos-cart .v99-discount-head{align-items:flex-start}
.pos-cart .v99-discount-head div{min-width:0}
.pos-cart .v99-discount-head strong{line-height:1.45}
.pos-cart .v99-discount-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px 12px!important;
}
.pos-cart .v99-discount-grid label,
.pos-cart .v99-discount-grid label span,
.pos-cart .v99-discount-grid input,
.pos-cart .v99-discount-grid select{min-width:0}
.pos-cart .v99-discount-grid label:nth-child(3),
.pos-cart .v99-discount-grid .btn{
  grid-column:1/-1;
}
.pos-cart .v99-discount-grid .btn{
  width:100%;
  min-height:44px;
}
.pos-cart .v99-discount-current{
  margin-top:10px;
  line-height:1.7;
  overflow-wrap:anywhere;
}

/* Preparation board: equal card widths and equal card heights inside each row,
   with the action anchored to the bottom. */
.v99-prep-grid{
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr))!important;
  gap:18px!important;
  align-items:stretch!important;
  grid-auto-rows:1fr;
}
.v99-prep-card{
  height:100%;
  display:grid;
  grid-template-rows:auto 1fr auto;
  gap:0;
}
.v99-prep-card ul{align-content:start}
.v99-prep-card .v99-done{align-self:end;margin-top:6px}

/* Inventory KPI card: stack content cleanly and keep the explanatory copy under the number. */
.v2-kpi-grid{align-items:stretch}
.v2-kpi-grid .v2-card{
  min-height:136px;
  height:100%;
  display:grid;
  align-content:start;
  gap:8px;
}
.v2-kpi-grid .v2-card strong{display:block;line-height:1.08}
.v2-stock-value{
  grid-template-rows:auto auto 1fr;
}
.v2-stock-value h3{margin-bottom:0}
.v2-stock-value strong{
  display:block;
  font-size:clamp(30px,2.2vw,44px);
  line-height:1.05;
  direction:ltr;
  text-align:right;
  white-space:normal;
  word-break:break-word;
  font-variant-numeric:tabular-nums;
}
.v2-stock-value small{
  display:block;
  margin-top:0;
  max-width:none;
  font-size:12px;
  line-height:1.75;
}

@media(max-width:1100px){
  .pos-cart .v99-discount{margin-inline:16px}
  .v99-prep-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))!important}
}
@media(max-width:900px){
  .ops-dashboard{grid-template-columns:1fr!important}
  .ops-dashboard>.ops-column{display:grid!important;gap:18px;min-width:0}
  .ops-dashboard .ops-panel.summary{grid-column:auto!important}
}
@media(max-width:760px){
  .ops-kpis{grid-template-columns:1fr!important;max-width:none}
  .pos-cart .v99-discount{margin-inline:0}
  .pos-cart .v99-discount-grid{grid-template-columns:1fr!important}
  .ops-summary{grid-template-columns:1fr!important}
  .v2-kpi-grid .v2-card{min-height:0}
}

/* HMS V9.9.3 — dashboard placement, discount reason note, faster add feedback, modal option layout. */

/* Dashboard: put hall status beside ready-for-delivery instead of leaving it at the bottom. */
.ops-dashboard .ops-panel.summary{grid-column:auto!important}
.ops-dashboard .ops-panel.summary .ops-summary{grid-template-columns:repeat(3,minmax(0,1fr))!important}

/* Stock value card: keep the number on one line on desktop and tone the size down slightly. */
.v2-stock-value strong{
  font-size:clamp(24px,1.9vw,32px)!important;
  line-height:1.08!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.v2-stock-value small{
  max-width:100%!important;
  line-height:1.65!important;
}

/* Inline discount: when selecting “other reason”, show a contained note field inside the same card. */
.pos-cart .v99-discount-other{
  grid-column:1/-1;
  display:grid;
  gap:6px;
}
.pos-cart .v99-discount-other[hidden]{display:none!important}
.pos-cart .v99-discount-other textarea{
  width:100%;
  min-height:82px;
  resize:vertical;
}

/* Modifier distribution: show option chips in clearer rows instead of narrow stacked text blocks. */
.modifier-group-options{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
.modifier-group-options .check.modifier-choice{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  min-height:48px!important;
  padding:10px 12px!important;
}
.modifier-group-options .check.modifier-choice input{
  order:3;
  margin:0!important;
  flex:none;
}
.modifier-group-options .check.modifier-choice .modifier-choice-name,
.modifier-group-options .check.modifier-choice .modifier-choice-price{
  white-space:nowrap;
}
.modifier-group-options .check.modifier-choice .modifier-choice-name{
  overflow:hidden;
  text-overflow:ellipsis;
  min-width:0;
  flex:1 1 auto;
}
.modifier-group-options .check.modifier-choice .modifier-choice-price{
  flex:none;
  font-weight:700;
}

/* POS add feedback: lighter and less intrusive; do not cover the whole card for too long. */
.pos-product.v97-adding:after,
.pos-product.v97-added:after{
  inset:auto 12px 12px 12px!important;
  min-height:36px!important;
  border-radius:12px!important;
  font-size:11px!important;
  box-shadow:0 8px 18px rgba(34,34,34,.16)!important;
  animation:none!important;
}
.pos-product.v97-adding:after{background:rgba(34,34,34,.76)!important}
.pos-product.v97-added:after{background:rgba(35,112,72,.92)!important}

@media(max-width:900px){
  .ops-dashboard .ops-panel.summary{grid-column:auto!important}
}
@media(max-width:760px){
  .modifier-group-options{grid-template-columns:1fr!important}
  .v2-stock-value strong{white-space:normal}
}

/* HMS V9.9.4 — emergency fix for inventory KPI cards. */
.v2-kpi-grid.v2-inventory-kpis{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:14px!important;
}
.v2-kpi-grid.v2-inventory-kpis>.v2-card,
.v2-kpi-grid.v2-inventory-kpis>.v2-card.v2-stock-value{
  display:block!important;
  direction:rtl!important;
  text-align:right!important;
  min-height:148px!important;
  height:auto!important;
  overflow:hidden!important;
}
.v2-kpi-grid.v2-inventory-kpis>.v2-card>h3,
.v2-kpi-grid.v2-inventory-kpis>.v2-card>strong,
.v2-kpi-grid.v2-inventory-kpis>.v2-card>small,
.v2-kpi-grid.v2-inventory-kpis>.v2-card.v2-stock-value>h3,
.v2-kpi-grid.v2-inventory-kpis>.v2-card.v2-stock-value>strong,
.v2-kpi-grid.v2-inventory-kpis>.v2-card.v2-stock-value>small{
  display:block!important;
  float:none!important;
  clear:both!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  margin:0!important;
}
.v2-kpi-grid.v2-inventory-kpis>.v2-card>h3,
.v2-kpi-grid.v2-inventory-kpis>.v2-card.v2-stock-value>h3{
  font-size:18px!important;
  line-height:1.45!important;
  margin-bottom:12px!important;
}
.v2-kpi-grid.v2-inventory-kpis>.v2-card>strong,
.v2-kpi-grid.v2-inventory-kpis>.v2-card.v2-stock-value>strong{
  font-size:clamp(20px,1.7vw,28px)!important;
  line-height:1.2!important;
  direction:ltr!important;
  text-align:left!important;
  margin-bottom:10px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.v2-kpi-grid.v2-inventory-kpis>.v2-card>small,
.v2-kpi-grid.v2-inventory-kpis>.v2-card.v2-stock-value>small{
  font-size:12px!important;
  line-height:1.7!important;
  color:rgba(34,34,34,.62)!important;
}
@media(max-width:1200px){
  .v2-kpi-grid.v2-inventory-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .v2-kpi-grid.v2-inventory-kpis{grid-template-columns:1fr!important}
  .v2-kpi-grid.v2-inventory-kpis>.v2-card>strong,
  .v2-kpi-grid.v2-inventory-kpis>.v2-card.v2-stock-value>strong{white-space:normal!important}
}

/* HMS V9.9.5 — dashboard hall-summary moved up + fixed 4-column kitchen board. */

/* Top dashboard strip: show ready/open filters plus hall summary side by side. */
.ops-kpis.v995-with-summary{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  max-width:none!important;
  align-items:stretch!important;
}
.v995-top-summary{
  background:#fff!important;
  border:1px solid #e4e4de!important;
  border-radius:16px!important;
  padding:18px 20px!important;
  min-height:132px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  gap:10px!important;
}
.v995-top-summary-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.v995-top-summary-head small{display:block;color:#8a887f;font-size:10px;margin-bottom:4px}
.v995-top-summary-head strong{display:block;font-size:17px;line-height:1.3;color:#222}
.v995-top-summary .ops-summary{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
}
.v995-top-summary .ops-summary>div{
  min-height:0!important;
  padding:10px 12px!important;
  border:1px solid rgba(34,34,34,.08)!important;
  border-radius:12px!important;
  background:#faf9f5!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
}
.v995-top-summary .ops-summary strong{font-size:26px!important;line-height:1!important}
.v995-top-summary .ops-summary span{font-size:12px!important;color:rgba(34,34,34,.7)!important}

/* Kitchen board: always reserve 4 card slots per row on wide screens. */
.v99-prep-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  align-items:stretch!important;
}
@media(max-width:1500px){
  .v99-prep-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:1180px){
  .v99-prep-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:1200px){
  .ops-kpis.v995-with-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ops-kpis.v995-with-summary .v995-top-summary{grid-column:1/-1}
}
@media(max-width:760px){
  .ops-kpis.v995-with-summary{grid-template-columns:1fr!important}
  .v995-top-summary .ops-summary{grid-template-columns:1fr!important}
  .v99-prep-grid{grid-template-columns:1fr!important}
}

/* HMS V9.9.6 — equal-height main dashboard pair. */
.ops-dashboard .v996-ready-panel,
.ops-dashboard .v996-open-panel{
  align-self:stretch!important;
  height:100%!important;
  min-height:520px!important;
}
@media(max-width:1100px){
  .ops-dashboard .v996-ready-panel,
  .ops-dashboard .v996-open-panel{min-height:420px!important}
}
@media(max-width:900px){
  .ops-dashboard .v996-ready-panel,
  .ops-dashboard .v996-open-panel{min-height:0!important}
}


/* ===== SOURCE: v9-9-setup.css ===== */
/* Optional preparation-station setup UI. */
.v99-station-setup{margin-top:20px}.v99-station-setup h2{margin:.25rem 0}.v99-station-list{display:grid;gap:10px;margin-top:16px}.v99-station-list article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;border:1px solid var(--line,#ddd);border-radius:14px}.v99-station-list article>div:first-child{display:grid;gap:3px}.v99-station-list small{color:var(--muted,#666)}.v99-station-tabs{flex-wrap:wrap}
@media(max-width:650px){.v99-station-list article{align-items:flex-start;flex-direction:column}.v99-station-list article>.row{width:100%}.v99-station-list article>.row .btn{flex:1}}



/* HMS V9.9.7 — requested UI/sync fixes. */
.v995-top-summary{
  border-color:#ded9ca!important;
  box-shadow:0 8px 24px rgba(34,34,34,.035)!important;
  background:#fff!important;
}
.v995-top-summary-head small{color:#9b7b28!important;font-weight:800!important}
.v995-top-summary-head strong{color:#222!important}
.v995-top-summary .ops-summary>div{
  background:#f8f6ee!important;
  border-color:#e7e0cc!important;
}
.v995-top-summary .ops-summary strong{color:#222!important}
.v995-top-summary .ops-summary span{color:#6f6b61!important}

.hms-res-hero{align-items:flex-end!important}
.hms-res-tools{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
.hms-res-tools>label{
  width:172px!important;
  margin:0!important;
  gap:5px!important;
}
.hms-res-tools>label>span{
  font-size:10px!important;
  color:#77756d!important;
  font-weight:700!important;
}
.hms-res-tools input,
.hms-res-tools .btn{
  min-height:44px!important;
  height:44px!important;
}
.hms-res-tools .btn{align-self:flex-end!important}

.pos-product.v97-adding:after,
.pos-product.v97-added:after{display:none!important;content:none!important}
.pos-product.v97-adding .pos-product-copy>small>b,
.pos-product.v97-added .pos-product-copy>small>b{
  width:auto!important;
  min-width:118px!important;
  height:32px!important;
  padding:0 12px!important;
  border-radius:9px!important;
  font-size:10px!important;
  line-height:32px!important;
  white-space:nowrap!important;
  transform:translate(-50%,-50%)!important;
}
.pos-product.v97-adding .pos-product-copy>small>b{background:#55534d!important;color:#fff!important}
.pos-product.v97-added .pos-product-copy>small>b{background:#237048!important;color:#fff!important}

@media(max-width:760px){
  .hms-res-hero{align-items:stretch!important}
  .hms-res-tools{width:100%!important}
  .hms-res-tools>label{width:calc(50% - 5px)!important}
  .hms-res-tools .btn{flex:1 1 calc(50% - 5px)!important}
}

/* HMS V9.9.8 — final symmetry polish: dashboard, reservation toolbar, users, settings. */
.v995-top-summary .ops-summary{
  gap:8px!important;
}
.v995-top-summary .ops-summary>div{
  background:#fff!important;
  border:1px solid #e8e5dc!important;
  box-shadow:none!important;
}
.v995-top-summary .ops-summary strong{color:#1f1f1f!important}
.v995-top-summary .ops-summary span{color:#777268!important}

/* Reservations: four equal controls, one clean baseline, compact inline date labels. */
.hms-res-tools.hms-res-tools-v998{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  align-items:stretch!important;
  width:min(720px,100%)!important;
}
.hms-res-tools.hms-res-tools-v998>.btn,
.hms-res-tools.hms-res-tools-v998>.hms-res-date-control{
  width:100%!important;
  min-width:0!important;
  height:48px!important;
  min-height:48px!important;
  margin:0!important;
  border-radius:11px!important;
  box-sizing:border-box!important;
}
.hms-res-tools.hms-res-tools-v998>.btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  padding:0 14px!important;
}
.hms-res-date-control{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:8px!important;
  padding:0 12px!important;
  background:#fff!important;
  border:1px solid #dddcd7!important;
  color:#222!important;
}
.hms-res-date-control>span{
  font-size:12px!important;
  font-weight:800!important;
  color:#777268!important;
  white-space:nowrap!important;
}
.hms-res-date-control>input{
  width:100%!important;
  height:42px!important;
  min-height:42px!important;
  padding:0 4px!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:0!important;
  font:inherit!important;
  color:#222!important;
}
@media(max-width:900px){
  .hms-res-tools.hms-res-tools-v998{grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important}
}
@media(max-width:560px){
  .hms-res-tools.hms-res-tools-v998{grid-template-columns:1fr!important}
}

/* Users: every heading sits directly above its value, centered consistently. */
.content[data-page="users"] .v2-panel .data-table th,
.content[data-page="users"] .v2-panel .data-table td{
  text-align:center!important;
  vertical-align:middle!important;
}
.content[data-page="users"] .v2-panel .data-table td>b,
.content[data-page="users"] .v2-panel .data-table td>.v2-role-badge{
  margin-inline:auto!important;
}
.content[data-page="users"] .v2-panel .data-table .v2-actions,
.content[data-page="users"] .v2-panel .data-table .actions{
  justify-content:center!important;
}

/* Settings: row 1 = name / phone / address. Row 2 = four equal operational fields. */
.content[data-page="settings"] .settings-form-v998{
  display:block!important;
}
.content[data-page="settings"] .settings-primary-row,
.content[data-page="settings"] .settings-operational-row{
  display:grid!important;
  gap:18px!important;
  align-items:end!important;
  width:100%!important;
}
.content[data-page="settings"] .settings-primary-row{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
.content[data-page="settings"] .settings-operational-row{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  margin-top:20px!important;
}
.content[data-page="settings"] .settings-primary-row>label,
.content[data-page="settings"] .settings-operational-row>label{
  min-width:0!important;
  margin:0!important;
}
.content[data-page="settings"] .settings-form-v998>.inline-hint{
  display:block!important;
  width:100%!important;
  margin:20px 0 0!important;
}
.content[data-page="settings"] .settings-form-v998>.btn[type="submit"]{
  display:block!important;
  margin:22px 0 0 auto!important;
}
@media(max-width:1100px){
  .content[data-page="settings"] .settings-primary-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .content[data-page="settings"] .settings-primary-row>label:last-child{grid-column:1/-1!important}
  .content[data-page="settings"] .settings-operational-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:650px){
  .content[data-page="settings"] .settings-primary-row,
  .content[data-page="settings"] .settings-operational-row{grid-template-columns:1fr!important}
  .content[data-page="settings"] .settings-primary-row>label:last-child{grid-column:auto!important}
}

/* HMS V9.9.9 — neutral surfaces, scalable directories, inventory tabs and report cleanup. */
/* Keep gold as an accent/action color, not as a page/table background. */
.data-table th{
  background:#f3f4f6!important;
  color:#222!important;
  border-bottom-color:rgba(34,34,34,.10)!important;
}
.data-table tr:hover td{background:#f8f9fb!important}
.hms-table-code,.v2-rank{background:#f3f4f6!important;border-color:rgba(34,34,34,.12)!important;color:#222!important}
.ops-summary>div,.v995-top-summary .ops-summary>div{background:#fff!important;border-color:rgba(34,34,34,.10)!important}

/* Customer-display launcher is intentionally a single-purpose screen. */
.customer-display-order-actions.single-action{grid-template-columns:1fr!important}
.customer-display-order-actions.single-action .btn{width:100%!important}

/* Search + pagination shared by inventory and customer directory. */
.v999-directory-toolbar,
.v999-inventory-toolbar{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
}
.v999-directory-toolbar{margin:0 0 16px}
.v999-directory-toolbar input,
.v999-inventory-search input{min-height:44px!important;background:#fff!important}
.v999-directory-toolbar input{width:min(420px,100%)}
.v999-inventory-search{width:min(360px,100%);margin:0!important}
.v999-pagination{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:14px 2px 2px;color:rgba(34,34,34,.62);font-size:12px
}
.v999-pagination>div{display:flex;gap:8px}
.v999-list-meta{padding:12px 2px 0;color:rgba(34,34,34,.55);font-size:12px}

/* Inventory setup: one focused section at a time, no uneven three-column wall. */
.v999-inventory-setup{display:flex;flex-direction:column;gap:14px}
.v999-setup-tabs{padding:10px;border:1px solid rgba(34,34,34,.10);border-radius:14px;background:#fff;align-self:flex-start}
.v999-setup-stack{display:grid;grid-template-columns:minmax(220px,.6fr) minmax(0,1.4fr);gap:16px;align-items:start}
.v999-setup-stack>.data-wrap{margin:0!important}

/* Reports: readable KPI cards and a chart that never needs an inner vertical scrollbar. */
.v2-report-insights{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.v2-report-mini-stats{
  grid-column:1/-1!important;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  overflow:visible!important;
}
.v2-report-mini-stats>div{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  direction:rtl!important;
  min-height:112px!important;
  padding:16px!important;
  border-bottom:0!important;
  border-left:1px solid rgba(34,34,34,.08)!important;
}
.v2-report-mini-stats>div:last-child{border-left:0!important}
.v2-report-mini-stats>div>small,
.v2-report-mini-stats>div>strong,
.v2-report-mini-stats>div>span{
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  writing-mode:horizontal-tb!important;
  direction:rtl!important;
  text-align:right!important;
  overflow-wrap:normal!important;
  white-space:normal!important;
}
.v2-report-mini-stats>div>strong{font-size:22px!important;line-height:1.2!important;margin:6px 0 4px!important}
.v2-hourly-bars{
  display:flex!important;
  align-items:end!important;
  justify-content:space-between!important;
  gap:4px!important;
  height:185px!important;
  overflow:hidden!important;
  padding:8px 0 0!important;
}
.v2-hour{flex:1 1 0!important;min-width:0!important;max-width:34px!important}
.v2-hour i{width:min(14px,70%)!important;margin-inline:auto!important}

@media(max-width:900px){
  .v999-inventory-toolbar{align-items:stretch!important;flex-direction:column!important}
  .v999-inventory-search{width:100%!important}
  .v999-setup-stack{grid-template-columns:1fr!important}
  .v2-report-mini-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .v2-report-mini-stats>div:nth-child(2n){border-left:0!important}
}
@media(max-width:620px){
  .v999-directory-toolbar{align-items:stretch!important;flex-direction:column!important}
  .v999-directory-toolbar input{width:100%!important}
  .v999-pagination{align-items:stretch;flex-direction:column}
  .v2-report-mini-stats{grid-template-columns:1fr!important}
  .v2-report-mini-stats>div{border-left:0!important;border-bottom:1px solid rgba(34,34,34,.08)!important}
  .v2-report-mini-stats>div:last-child{border-bottom:0!important}
}

/* V9.9.9 final neutralization: customer-facing display uses the same clean surfaces as HMS. */
.customer-display-mode .content{background:#f8f9fb!important}
.customer-display{background:#f8f9fb!important}
.customer-display-picker,
.customer-head,
.customer-display-order,
.customer-product,
.customer-receipt{border-color:#e3e5e8!important}
.customer-display-picker-empty{background:#f8f9fb!important;border-color:#d8dce1!important}
.customer-receipt-title{border-bottom-color:#e6e8eb!important}
.customer-line{border-bottom-color:#e4e7eb!important}
.customer-product-copy small,
.customer-product-copy em,
.customer-line small,
.customer-display-picker-head small,
.customer-display-picker-head>span{color:#72767d!important}

/* HMS V9.9.10 — compact directory header, progressive inventory setup and direct card/row interactions. */
/* Customer search lives in the page header instead of occupying a full row. */
.content[data-page="customers"] .page-head{align-items:center!important}
.content[data-page="customers"] .heading-actions{margin-inline-start:auto!important;flex:0 1 430px!important;min-width:280px!important}
.v9910-customer-search{display:block!important;width:100%!important;margin:0!important;font-weight:400!important}
.v9910-customer-search input{width:100%!important;min-height:44px!important;background:#fff!important}
.v9910-customer-search small{display:block;min-height:17px;margin-top:3px;color:#777b82;font-size:11px}

/* Inventory settings sub-tabs replace the search position and reveal softly from the Settings tab. */
.v9910-setup-open{overflow:visible!important}
.v9910-setup-tabs-inline{margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;align-self:auto!important;animation:v9910SetupTabsIn .2s cubic-bezier(.2,.8,.2,1) both;transform-origin:top right}
.v9910-setup-tabs-inline .tab{background:#fff!important}
.v9910-setup-tabs-inline .tab.active{background:#222!important;color:#fff!important;border-color:#222!important}
.v9910-inventory-setup-body{gap:0!important}
@keyframes v9910SetupTabsIn{from{opacity:0;transform:translateY(-7px) scale(.985)}to{opacity:1;transform:none}}

/* Orders remain a dense operational table; the whole row opens the order. */
.v9910-order-row{cursor:pointer;transition:background .14s ease,box-shadow .14s ease}
.v9910-order-row:hover td{background:#f7f8fa!important}
.v9910-order-row:focus{outline:2px solid #c99f2f;outline-offset:-2px}
.v9910-order-row td:last-child{cursor:default}
.v9910-order-row td:last-child .btn{position:relative;z-index:1}

/* Customer-display launcher cards are the action; no extra button is needed. */
.customer-display-order-clickable{cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.customer-display-order-clickable:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(34,34,34,.08)!important;border-color:#caa438!important}
.customer-display-order-clickable:focus{outline:3px solid rgba(202,164,56,.24);outline-offset:2px}
.v9910-card-hint{display:block;margin-top:2px;color:#8b6d19;font-size:12px;font-weight:800}

/* Remove the colored separator field between hall-summary mini cards: color the cards, not the gaps. */
.ops-summary,
.v995-top-summary .ops-summary{
  background:transparent!important;
  border:0!important;
  gap:8px!important;
}
.ops-summary>div,
.v995-top-summary .ops-summary>div{
  background:#f7f8fa!important;
  border:1px solid #e5e7eb!important;
  border-radius:10px!important;
}

@media(max-width:900px){
  .content[data-page="customers"] .page-head{align-items:flex-start!important}
  .content[data-page="customers"] .heading-actions{flex:1 1 100%!important;min-width:0!important;width:100%!important}
  .v9910-setup-tabs-inline{width:100%!important}
}
@media(max-width:620px){
  .v9910-customer-search{width:100%!important}
  .v9910-setup-tabs-inline{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
}


/* HMS V9.9.11 — orders card view + inline recipe search. */
.v9911-orders-toolbar{margin-bottom:14px!important}
.v9911-orders-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:stretch}
.v9911-order-card{position:relative;display:flex;flex-direction:column;gap:16px;min-width:0;min-height:238px;padding:18px;border:1px solid #e1e4e8;border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(34,34,34,.035);cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.v9911-order-card:hover{transform:translateY(-2px);border-color:#caa438;box-shadow:0 14px 30px rgba(34,34,34,.08)}
.v9911-order-card:focus{outline:3px solid rgba(202,164,56,.24);outline-offset:2px}
.v9911-order-card.is-rush{border-color:#c99f2f;box-shadow:0 0 0 2px rgba(201,159,47,.08),0 12px 28px rgba(34,34,34,.06)}
.v9911-order-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.v9911-order-card-main{display:grid;gap:6px;min-width:0}
.v9911-order-card-main small,.v9911-order-card-total small{color:#878b90;font-size:11px}
.v9911-order-card-main h3{margin:0;font-size:21px;line-height:1.25;overflow-wrap:anywhere}
.v9911-order-card-main p{margin:0;color:#777d83;font-size:12px;line-height:1.6}
.v9911-order-rush{display:inline-flex;width:max-content;padding:4px 8px;border-radius:999px;background:#fff7dd;color:#856713;border:1px solid #ead38c;font-size:10px;font-weight:800}
.v9911-order-card-total{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:auto;padding-top:12px;border-top:1px solid #eef0f2}
.v9911-order-card-total strong{font-size:22px;line-height:1.1;direction:ltr;text-align:left}
.v9911-order-card-hint{color:#8b6d19;font-size:12px;font-weight:800}
.v9911-orders-empty{grid-column:1/-1}
.v9911-recipe-search{display:flex;flex-direction:row;align-items:center;gap:8px;width:min(360px,34vw);height:46px;min-height:46px;padding:0 14px;border:1px solid #d9dde2;border-radius:12px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}
.v9911-recipe-search:focus-within{border-color:#caa438;box-shadow:0 0 0 3px rgba(202,164,56,.12)}
.v9911-recipe-search>span{flex:none;color:#6f747a;font-size:18px;line-height:1}
.v9911-recipe-search input{flex:1 1 auto;width:100%;min-width:0;height:44px;min-height:44px;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;padding:0!important;font:inherit;color:inherit}
@media(max-width:1450px){.v9911-orders-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.v9911-orders-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v9911-recipe-search{width:min(320px,42vw)}}
@media(max-width:760px){.v9911-orders-grid{grid-template-columns:1fr}.v9911-order-card{min-height:0}.page-head .heading-actions:has(.v9911-recipe-search){width:100%}.v9911-recipe-search{width:100%}}


/* Native dialog backdrop: dim the app without blurring or moving its layout. */
html{scrollbar-gutter:stable;}
#modal::backdrop{
  background:rgba(34,34,34,.30);
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
}
/* Keep popup controls aligned with the site's neutral surface and gold accent. */
#modal{background:#fff;color:#222;border:1px solid #dedbd3;}
#modal .modal-head{background:#fff;border-bottom:1px solid #e8e5dd;}
#modal .modal-body{background:#fff;}
#modal .close-btn:focus-visible,#modal .btn:focus-visible{
  outline:2px solid #c19c35;outline-offset:2px;
}

/* HMS V9.9.15 — dashboard vertical balance.
   On desktop, the open-orders panel spans both dashboard rows while
   priority + hospitality occupy the two matching rows opposite it.
   Their combined height therefore matches the open-orders column exactly. */
@media (min-width:901px){
  .ops-dashboard .v996-open-panel{
    grid-row:span 2!important;
    align-self:stretch!important;
    height:100%!important;
    min-height:0!important;
  }
  .ops-dashboard .v996-ready-panel{
    align-self:stretch!important;
    height:auto!important;
    min-height:0!important;
  }
}
@media (max-width:900px){
  .ops-dashboard .v996-open-panel,
  .ops-dashboard .v996-ready-panel{
    grid-row:auto!important;
    height:auto!important;
    min-height:0!important;
  }
}

/* Topbar date replaces the repeated page title; the navigation remains independent. */
.topbar-date{display:inline-flex;align-items:center;gap:8px;color:#77746d;font-size:13px;font-weight:700;white-space:nowrap}
.topbar-date svg{width:17px;height:17px;flex:none;color:#9b7b28}
@media(max-width:650px){.topbar-date{font-size:11px;gap:5px}.topbar-date svg{width:15px;height:15px}}

/* Login field icons are SVGs with the same size and stroke as the app icons. */
.auth-login-v932 .login-field-icon svg{width:15px;height:15px;display:block}
.auth-login-v932 .login-email-field .login-input-wrap input{padding-left:14px!important;padding-right:44px!important}

/* The three dashboard summaries share a surface, heading baseline, and spacing. */
.ops-kpis.v995-with-summary > .ops-kpi,
.ops-kpis.v995-with-summary > .v995-top-summary{
  min-height:142px!important;padding:18px 20px!important;border:1px solid #ded9ca!important;
  border-radius:16px!important;background:#fff!important;color:#222!important;
  box-shadow:0 8px 24px rgba(34,34,34,.035)!important;
}
.ops-kpis.v995-with-summary > .ops-kpi{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;
  justify-content:space-between!important;gap:7px!important;direction:rtl!important;text-align:right!important;
}
.ops-kpis.v995-with-summary > .ops-kpi.primary:before{display:none!important}
.ops-kpis.v995-with-summary > .ops-kpi > .label,
.ops-kpis.v995-with-summary .v995-top-summary-head strong{
  display:block!important;position:static!important;align-self:auto!important;
  margin:0!important;color:#222!important;font:700 17px/1.3 var(--hms-font)!important;
  text-align:right!important;direction:rtl!important;
}
.ops-kpis.v995-with-summary > .ops-kpi > .value{
  align-self:flex-start!important;max-width:none!important;margin:0!important;
  color:#222!important;font:700 30px/1.1 Arial,sans-serif!important;
}
.ops-kpis.v995-with-summary > .ops-kpi > small{align-self:auto!important;color:#777268!important;font-size:12px!important}
@media(max-width:650px){.ops-kpis.v995-with-summary > .ops-kpi,
  .ops-kpis.v995-with-summary > .v995-top-summary{padding:16px!important;min-height:130px!important}}

/* Recipe details use the available panel width when the product has one recipe. */
.content[data-page="recipes"] .v2-recipe-stack>.v2-recipe-card:last-child:nth-child(odd){grid-column:1/-1}
.content[data-page="recipes"] .v2-master-detail>section.v2-panel{min-width:0;padding:20px!important}
.content[data-page="recipes"] .v2-recipe-card{padding:18px!important}
.content[data-page="recipes"] .v2-recipe-card .v2-components{margin-top:14px}
@media(max-width:760px){.content[data-page="recipes"] .v2-master-detail>section.v2-panel{padding:16px!important}}

/* Purchase order: one clear row to start, then add rows as needed. */
#modal:has(#po-lines){width:min(880px,calc(100vw - 28px))}
#modal:has(#po-lines) .modal-body{padding:22px 26px 24px}
.po-form-intro,.po-invoice-help{margin:0 0 18px;color:#696b69;font-size:13px;line-height:1.8}
.po-invoice-help{padding:12px 14px;border:1px solid #e6ddc8;border-radius:10px;background:#fcfaf4}
.po-section-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin:24px 0 10px}
.po-section-head strong{font-size:16px}.po-section-head span{color:#7b7d7a;font-size:12px}
#po-lines{gap:10px}
#po-lines .po-line{display:grid!important;grid-template-columns:minmax(180px,2fr) minmax(100px,1fr) minmax(85px,.75fr) minmax(110px,1fr) 38px!important;grid-template-areas:"number number number number number" "item unit qty cost remove"!important;align-items:end!important;gap:10px!important;padding:16px!important;border:1px solid #e5e3dc!important;border-radius:13px!important;background:#fafaf8!important}
#po-lines .po-line-number{grid-area:number;color:#78682f;font-size:12px;font-weight:800}
#po-lines .po-line label{min-width:0;font-size:12px;gap:5px}
#po-lines .po-line label:nth-of-type(1){grid-area:item}
#po-lines .po-line label:nth-of-type(2){grid-area:unit}
#po-lines .po-line label:nth-of-type(3){grid-area:qty}
#po-lines .po-line label:nth-of-type(4){grid-area:cost}
#po-lines .po-line select,#po-lines .po-line input{min-height:44px;margin:0;padding:8px 10px}
#po-lines .v2-line-remove{grid-area:remove;align-self:end;width:38px;height:44px;min-width:38px;padding:0}
#po-lines>.po-line:only-child .v2-line-remove{visibility:hidden}
.po-form-bottom{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:16px;padding:14px 0;border-top:1px solid #ece9e1}
.po-form-bottom .v2-add-row{margin:0;flex:none}
.po-total{display:flex;align-items:center;gap:14px;color:#666861;font-size:13px}
.po-total strong{color:#222;font:700 20px/1.2 Arial,sans-serif;white-space:nowrap;direction:ltr}
@media(max-width:760px){#modal:has(#po-lines) .modal-body{padding:18px}#po-lines .po-line{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-areas:"number remove" "item item" "unit qty" "cost cost"!important}#po-lines .v2-line-remove{justify-self:end}.po-form-bottom{align-items:stretch;flex-wrap:wrap}.po-total{margin-inline-start:auto}}
@media(max-width:420px){.po-form-bottom{flex-direction:column-reverse}.po-form-bottom .v2-add-row{width:100%}.po-total{width:100%;justify-content:space-between}}

/* POS and customer display: stable geometry and static, green add feedback. */
.content[data-page="order"] .pos-header{align-items:center!important;gap:18px!important;margin-bottom:14px!important;padding-block:4px!important}
.content[data-page="order"] .pos-header h1{margin:4px 0!important}
.content[data-page="order"] .pos-header>.row{align-items:center;justify-content:flex-start;max-width:min(55%,640px)}
.content[data-page="order"] .order-flow{margin:0 0 16px!important}
.content[data-page="order"] .pos-products{align-items:stretch}
.content[data-page="order"] .pos-product{display:flex!important;flex-direction:column!important;height:100%;min-width:0}
.content[data-page="order"] .pos-product-copy{display:flex!important;flex:1;flex-direction:column;gap:8px!important;min-width:0}
.content[data-page="order"] .pos-product-copy>strong{min-height:2.8em;line-height:1.4}
.content[data-page="order"] .pos-product-copy>span{display:inline-flex;align-items:baseline;gap:4px;direction:ltr;white-space:nowrap}
.content[data-page="order"] .pos-product-copy>span small{display:inline!important;white-space:nowrap}
.content[data-page="order"] .pos-product-copy>small{margin-top:auto!important;min-height:36px!important}
.content[data-page="order"] .pos-product-copy>small>b{
  width:96px!important;height:34px!important;min-width:96px!important;
  padding:0 10px!important;border-radius:9px!important;
  background:#237048!important;color:#fff!important;
  font-size:11px!important;line-height:34px!important;box-shadow:none!important;
}
.content[data-page="order"] .pos-product.v97-adding .pos-product-copy>small>b,
.content[data-page="order"] .pos-product.v97-added .pos-product-copy>small>b{
  width:96px!important;min-width:96px!important;height:34px!important;
  background:#237048!important;color:#fff!important;font-size:10px!important;
}
.content[data-page="order"] .pos-product:hover:not(:disabled) .pos-product-copy>small>b{background:#1a603c!important;box-shadow:none!important;transform:translate(-50%,-50%)!important}
.content[data-page="order"] .pos-product,
.content[data-page="order"] .pos-product-copy>small>b,
.content[data-page="order"] .btn,
.customer-display .customer-product,
.customer-display .customer-product-copy>span{animation:none!important;transition:none!important}
.content[data-page="order"] .pos-product:hover:not(:disabled),
.customer-display .customer-product:hover:not(:disabled){transform:none!important}
.content[data-page="order"] .v97-repeat-blocked,
.customer-display .v97-repeat-blocked{animation:none!important}
.content[data-page="order"] .v94-spinner,
.customer-display .v94-spinner{animation:none!important}
.content[data-page="order"] .btn:active,
.content[data-page="order"] .btn.is-pressed,
.content[data-page="order"] [data-pos-add].v97-pressed,
.customer-display .btn:active,
.customer-display [data-pos-add].v97-pressed{transform:none!important}
#modal:has(.item-config-grid) .btn{animation:none!important;transition:none!important}
.customer-display .customer-product-copy>span{background:#237048!important;color:#fff!important;min-width:96px}
.customer-display .customer-product.v97-adding .customer-product-copy>span,
.customer-display .customer-product.v97-added .customer-product-copy>span{background:#237048!important;color:#fff!important}
.customer-display .customer-product-copy b,
.customer-display .customer-line-side>b,
.customer-display .customer-status strong,
.pos-cart .pos-line>.row>b{display:inline-flex!important;align-items:baseline;gap:4px;direction:ltr;white-space:nowrap}
.customer-display .customer-product-copy b small,
.customer-display .customer-line-side>b small,
.customer-display .customer-status strong small,
.pos-cart .pos-line>.row>b small{display:inline!important;white-space:nowrap;font-size:.72em}
.customer-display .customer-line{grid-template-columns:minmax(0,1fr) max-content;gap:10px;align-items:start}
.customer-display .customer-line-side{min-width:110px}

/* Inline discount: equal field heights, clear labels and predictable rows. */
.pos-cart .v99-discount-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important}
.pos-cart .v99-discount-grid>label:not(.v99-discount-other){display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:6px!important;min-width:0}
.pos-cart .v99-discount-grid>label>span{min-height:20px;line-height:20px}
.pos-cart .v99-discount-grid select,.pos-cart .v99-discount-grid input{height:46px!important;min-height:46px!important;margin:0!important}
.pos-cart .v99-discount-grid .btn{min-height:46px!important}

/* Modifier allocation: full-width top fields, legible option chips, compact footer. */
#modal .item-config-grid{align-items:end;gap:14px!important}
#modal .item-config-grid>label{min-width:0}
#modal .item-config-grid>label input,#modal .item-config-grid>label select{min-height:46px!important;height:46px!important}
#modal .modifier-distribution{padding:18px!important;background:#fafaf8!important;border-color:#e6e3d9!important}
#modal .modifier-distribution-head{margin-bottom:14px}
#modal .modifier-distribution-head h3{margin:0 0 3px!important;font-size:16px}
#modal .modifier-group{margin-top:10px;padding:16px!important;border-color:#e7e5de!important}
#modal .modifier-group-head{margin-bottom:12px!important}
#modal .modifier-group-options{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin-top:14px!important}
#modal .modifier-choice{display:flex!important;flex-direction:row!important;align-items:center!important;gap:9px!important;min-width:0;min-height:48px!important}
#modal .modifier-choice input{order:0!important}
#modal .modifier-choice-name{order:1;min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#modal .modifier-choice-price{order:2;direction:ltr;white-space:nowrap;flex:none}
#modal .modifier-choice-price small{display:inline!important;font-size:10px}
#modal .modifier-distribution-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:12px}
#modal .modifier-balance{margin:0!important;flex:1;min-width:150px}
#modal #modifier-group-add{flex:none;min-height:40px}
@media(max-width:760px){.content[data-page="order"] .pos-header{align-items:flex-start!important;flex-direction:column;gap:10px!important}.content[data-page="order"] .pos-header>.row{max-width:none;width:100%}#modal .modifier-group-options{grid-template-columns:1fr!important}}
@media(max-width:470px){#modal .item-config-grid{grid-template-columns:1fr!important}#modal .modifier-distribution-footer{align-items:stretch;flex-direction:column}#modal #modifier-group-add{width:100%}.customer-display .customer-line-side{min-width:0}}

/* Menu administration: search, category, availability and operating location. */
.menu-filters{grid-template-columns:minmax(220px,2fr) repeat(3,minmax(0,1fr))}
.menu-filters label{min-width:0}.menu-filters select,.menu-filters input{width:100%}
@media(max-width:1000px){.menu-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.menu-filters label:first-child{grid-column:auto}}
@media(max-width:560px){.menu-filters label:first-child,.menu-filters label:last-child{grid-column:1/-1}}
/* One menu item can be served from multiple operating locations. */
.item-prep-points{min-width:0;margin:0;padding:15px;border:1px solid var(--line,#e3e3e3);border-radius:12px}
.item-prep-points legend{padding-inline:6px;font-weight:700}
.item-prep-points .inline-hint{margin:2px 0 12px}
.item-prep-points>div{display:flex;flex-wrap:wrap;gap:9px}
.item-prep-points label.check{display:inline-flex;align-items:center;gap:7px;margin:0;padding:8px 11px;border:1px solid var(--line,#e3e3e3);border-radius:9px;background:#fff;cursor:pointer}
.item-prep-points label.check input{width:auto;min-height:0;margin:0}

/* Menu filters and cards: consistent control and card height. */
.menu-filters{align-items:end}
.menu-filters label{min-width:0;display:flex;flex-direction:column;justify-content:flex-end;gap:7px}
.menu-filters label>input,.menu-filters label>select{box-sizing:border-box!important;width:100%;height:50px!important;min-height:50px!important;max-height:50px!important;padding:0 14px!important;line-height:normal!important;margin:0!important}
.managed-grid{align-items:stretch}
.managed-card{height:100%;display:flex;flex-direction:column}
.managed-card>.managed-copy{flex:1;display:flex;flex-direction:column;min-width:0}
.managed-card .managed-actions{margin-top:auto}

/* Menu item editor: readable sections and aligned controls at every width. */
#modal:has(.menu-item-form){width:min(760px,calc(100vw - 28px));max-width:calc(100vw - 28px)}
#modal:has(.menu-item-form) .modal-body{padding:22px 26px 24px}
.menu-item-form{display:grid;gap:16px}
.menu-item-intro{margin:0;color:#6e715f;font-size:13px;line-height:1.8}
.menu-item-section{min-width:0;border:1px solid #e9e7df;border-radius:14px;padding:18px;background:#fff}
.menu-item-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:15px}
.menu-item-section-head h3{font-size:16px!important;font-weight:700!important;margin:0 0 3px!important;color:#282824}
.menu-item-section-head p{font-size:12px;line-height:1.7;color:#747669;margin:0}
.menu-item-section-head .btn{flex:none;min-height:36px}
.menu-item-fields{align-items:start;gap:14px 16px}
.menu-item-fields>label{min-width:0}
.menu-item-fields>label:not(.full) input,.menu-item-fields>label:not(.full) select{height:46px;min-height:46px}
.menu-item-fields textarea{min-height:86px}
.menu-item-form .item-prep-points{padding:12px;border-color:#e9e7df}
.menu-item-form .item-prep-points legend{font-size:12px}
.menu-item-form .item-prep-points>div{display:flex;flex-wrap:wrap;gap:8px}
.menu-item-form .item-prep-points label.check{font-size:12px}
.menu-item-form .recipe-stock-toggle{margin:0;width:100%;background:#fbfaf5}
.menu-item-form .image-editor{margin-top:12px;padding:14px;background:#fbfbf9}
.menu-item-form .image-editor h3{display:none}
.menu-item-form .image-upload-row{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:16px}
.menu-item-form .image-upload-row>img{width:96px;height:96px;grid-column:1;grid-row:1}
.menu-item-form .image-upload-row>div{min-width:0;grid-column:2;grid-row:1;display:flex;align-items:flex-start;flex-direction:column;gap:7px}
.menu-item-form .image-upload-row .inline-hint{margin:0;font-size:11px}
.menu-item-form .image-editor #image-upload-status:empty{display:none}
.menu-item-form .image-editor #image-upload-status{margin:5px 0 0}
.menu-item-form .image-editor details{margin-top:10px}
.menu-item-form .option-table{display:grid;gap:9px}
.menu-item-form .menu-item-option{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(92px,.65fr) minmax(155px,1fr) 38px;align-items:end;gap:9px;padding:12px;background:#fafaf8;border:1px solid #eceae3;border-radius:10px}
.menu-item-form .menu-item-option label{min-width:0;font-size:11px}
.menu-item-form .menu-item-option input,.menu-item-form .menu-item-option select{height:42px;min-height:42px;padding:8px 10px;font-size:12px}
.menu-item-form .menu-item-option-remove{height:42px;min-width:38px;padding:0;font-size:20px}
@media(max-width:680px){#modal:has(.menu-item-form) .modal-body{padding:16px}.menu-item-section{padding:14px}.menu-item-section-head{flex-wrap:wrap}.menu-item-form .menu-item-option{grid-template-columns:minmax(0,1fr) minmax(88px,.45fr)}.menu-item-form .menu-item-option label:nth-child(3){grid-column:1}.menu-item-form .menu-item-option-remove{grid-column:2;justify-self:end}.menu-item-form .image-upload-row{grid-template-columns:80px minmax(0,1fr)}.menu-item-form .image-upload-row>img{width:80px;height:80px}}
@media(max-width:430px){.menu-item-fields{grid-template-columns:1fr}.menu-item-form .image-upload-row{grid-template-columns:1fr}.menu-item-form .image-upload-row>img,.menu-item-form .image-upload-row>div{grid-column:1;grid-row:auto}}

/* Issued statements: date filter sits beside the page title. */
.content[data-page="statements"] .page-head{align-items:center}
.content[data-page="statements"] .heading-actions{margin-inline-start:auto}
.statement-date-filter{display:flex;align-items:flex-end;gap:9px;flex-wrap:wrap}
.statement-date-filter label{font-size:12px;color:#6b6c63;gap:5px}
.statement-date-filter input{height:44px;min-height:44px;min-width:180px;padding:7px 11px;background:#fff}
.statement-date-filter .btn{height:44px}
@media(max-width:700px){.content[data-page="statements"] .heading-actions{margin-inline-start:0;width:100%}.statement-date-filter{width:100%}.statement-date-filter label{flex:1}.statement-date-filter input{width:100%;min-width:0}}

/* Hall indicators share the dashboard cards' type and surface; only the chosen filter is accented. */
.floor-kpis .stats>.floor-kpi,.floor-kpis .stats>.floor-kpi.primary{
  background:#fff!important;color:#222!important;border:1px solid #ded9ca!important;
  box-shadow:0 8px 24px rgba(34,34,34,.035)!important;
}
.floor-kpis .stats>.floor-kpi:before{display:none!important}
.floor-kpis .stats>.floor-kpi.active{
  border-color:#c19c35!important;
  box-shadow:inset 5px 0 #c19c35,0 8px 24px rgba(34,34,34,.07)!important;
}
.floor-kpis .floor-kpi .label,.floor-kpis .floor-kpi .value{color:#222!important}
.floor-kpis .floor-kpi small{color:#777268!important}
.floor-kpis .floor-kpi .floor-kpi-filter{color:#8a887f!important}
.floor-kpis .floor-kpi.active .value,.floor-kpis .floor-kpi.active .floor-kpi-filter{color:#ab831d!important}

/* Reports: one period control, clear data provenance, and charts without nested vertical scroll. */
.content[data-page="reports"] .v2-report-filter,
.content[data-page="reports"] .v97-report-filter{
  display:grid!important;grid-template-columns:minmax(235px,.55fr) minmax(0,1.45fr)!important;
  align-items:center!important;gap:24px!important;padding:20px 22px!important;
}
.content[data-page="reports"] .v2-report-filter-copy{justify-content:center!important;min-width:0}
.content[data-page="reports"] .v2-report-filter-copy h2{font-size:18px;line-height:1.5}
.content[data-page="reports"] .v2-report-filter-copy p{max-width:430px;line-height:1.7}
.v2-report-filter-controls{min-width:0;display:grid;gap:12px}
.v2-report-presets{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.v2-report-presets .btn{min-height:36px;padding:6px 13px;font-size:11px;background:#f6f6f4}
.v2-report-presets .btn.active{background:#222!important;color:#fff!important;border-color:#222!important}
.content[data-page="reports"] .v2-report-filter-form{
  display:grid!important;grid-template-columns:repeat(2,minmax(135px,1fr)) auto auto!important;
  align-items:end!important;gap:10px!important;justify-content:stretch!important;
}
.content[data-page="reports"] .v2-report-filter-form label{min-width:0!important;width:auto!important}
.content[data-page="reports"] .v2-report-filter-form input{height:44px!important;min-height:44px!important;width:100%!important}
.content[data-page="reports"] .v2-report-filter-form .btn{height:44px;min-height:44px;align-self:end}
.v2-report-range-caption{margin:0 0 15px;color:#706c63;font-size:11px;line-height:1.7}
.v2-report-error{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;border:1px solid #eab9b3;border-radius:12px;background:#fff8f6;color:#8e3029}
.content[data-page="reports"] .v2-analytics-grid,.content[data-page="reports"] .v2-report-insights{align-items:stretch}
.content[data-page="reports"] .v2-report-chart,.content[data-page="reports"] .v2-analytics-card{min-width:0}
.content[data-page="reports"] .v2-daily-chart{
  height:190px;max-height:190px;align-items:stretch;overflow-x:auto;overflow-y:hidden;
  scrollbar-width:thin;scrollbar-color:#c9c9c4 transparent;
}
.content[data-page="reports"] .v2-day-col{flex:1 0 38px;min-width:38px;min-height:0;height:100%;grid-template-rows:minmax(0,1fr) auto}
.content[data-page="reports"] .v2-day-bars{min-height:0;max-height:100%;overflow:hidden}
.content[data-page="reports"] .v2-day-bars i{max-height:100%}
.content[data-page="reports"] .v2-day-col>span{font-size:10px;color:#6a6963}
.content[data-page="reports"] .v2-chart-key{font-size:11px}
@media(max-width:1100px){
  .content[data-page="reports"] .v2-report-filter,.content[data-page="reports"] .v97-report-filter{grid-template-columns:1fr!important;gap:13px!important}
}
@media(max-width:680px){
  .content[data-page="reports"] .v2-report-filter-form{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .content[data-page="reports"] .v2-report-filter-form .btn{width:100%}
  .content[data-page="reports"] .v2-report-filter,.content[data-page="reports"] .v97-report-filter{padding:16px!important}
  .v2-report-error{align-items:stretch;flex-direction:column}
}
@media(max-width:390px){.content[data-page="reports"] .v2-report-filter-form{grid-template-columns:1fr!important}}


/* HMS V10.22 — UI consistency + requested operational polish (2026-09-28). */
/* Consistent text direction: Arabic copy anchors right; numeric values stay LTR and visually stable. */
.content .v9911-order-card,.content .v99-prep-card,.content .managed-card,.content .v2-card,.content .data-table{direction:rtl;text-align:right}
.content .en,.content .price,.content .v9911-order-card-total strong,.content .v2-card>strong,.content .v2-purchase-kpi strong{direction:ltr;text-align:left;unicode-bidi:isolate}
.v9911-order-card-top,.v9911-order-card-main,.v99-prep-card header,.v99-prep-card li{direction:rtl;text-align:right}

/* Adjacent controls share a common rhythm and height. */
.heading-actions>.btn{min-height:42px}
.v2-actions>.btn,.managed-actions>.btn{min-height:36px}
.tabs>.tab{min-height:40px;display:inline-flex;align-items:center;justify-content:center}

/* Requested status semantics: open = green, closed = red. */
.pill.open{background:#e7f4e9!important;color:#24703f!important;border-color:#badbc3!important}
.pill.closed{background:#ffe8e5!important;color:#a62f28!important;border-color:#efb8b1!important}

/* Keep native-select arrows comfortably inset from the left edge in RTL. */
select{
  -webkit-appearance:none;appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;background-position:left 14px center!important;background-size:14px!important;
  padding-left:42px!important;
}

/* Preparation cards equalize only within their own grid row, never against the tallest card on the page. */
.v99-prep-grid{grid-auto-rows:auto!important;align-items:stretch!important}
.v99-prep-card{height:100%!important;min-height:0!important}

/* Positive progress feedback on the customer display / quick add flow. */
.customer-status>span.is-pending,.v97-adding .customer-product-copy>span,.v97-adding .pos-product-copy>small>b{color:#238448!important;font-weight:800!important}

/* Menu cards: prep/category copy on the right, price on the left with enough width for large values. */
.managed-card-meta{align-items:center!important;gap:14px!important}
.managed-card-meta .managed-prep{min-width:0;flex:1 1 auto;text-align:right}
.managed-card-meta .managed-price{flex:0 0 auto;min-width:112px;text-align:left!important;white-space:nowrap}
.managed-card-top{direction:rtl;text-align:right}

/* Menu filters can grow to five controls + reset without squeezing. */
.menu-filters{grid-template-columns:minmax(220px,1.7fr) repeat(4,minmax(140px,1fr)) auto!important}
.menu-filter-reset{height:50px;align-self:end}
@media(max-width:1250px){.menu-filters{grid-template-columns:repeat(3,minmax(0,1fr))!important}.menu-filters label:first-child{grid-column:span 2}.menu-filter-reset{width:100%}}
@media(max-width:760px){.menu-filters{grid-template-columns:repeat(2,minmax(0,1fr))!important}.menu-filters label:first-child{grid-column:1/-1}.menu-filter-reset{grid-column:1/-1}}

/* Combined preparation locations: one clear choice surface with an explicit default. */
.menu-item-form .item-prep-points>div{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px!important}
.item-prep-choice{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:9px 11px;border:1px solid #e2e2de;border-radius:10px;background:#fff}
.item-prep-choice.selected{border-color:#d7c27d;background:#fffdf4}.item-prep-choice.is-default{box-shadow:inset 3px 0 #c19c35}
.item-prep-choice>.check{padding:0!important;border:0!important;background:transparent!important;min-width:0;flex:1}
.item-prep-default{display:inline-flex!important;flex-direction:row!important;align-items:center!important;gap:5px!important;font-size:11px!important;font-weight:700!important;color:#75611d!important;white-space:nowrap}
.item-prep-default input{width:auto!important;min-height:0!important;margin:0!important;accent-color:#c19c35}
@media(max-width:620px){.menu-item-form .item-prep-points>div{grid-template-columns:1fr!important}}

/* Recipe page: searchable, category-aware and status-aware instead of one long undifferentiated list. */
.v101-recipe-filters{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:-8px 0 18px;padding:13px 15px;border:1px solid #e2e2de;border-radius:12px;background:#fff}
.v101-recipe-filters label{min-width:190px;flex:1 1 190px;font-size:12px}.v101-recipe-filters select{height:44px;min-height:44px}.v101-recipe-filters .btn{height:44px}

/* Inventory setup: creation buttons are unmistakably primary actions. */
.v999-inventory-setup .v2-panel-head>.btn.primary{min-height:38px;gap:6px}
.v999-inventory-setup .v2-panel-head>.btn.primary svg{width:16px;height:16px}

/* Purchasing KPIs replace duplicated lower tabs and act as the filters themselves. */
.v2-purchase-kpi-filter{appearance:none;width:100%;font:inherit;color:inherit;text-align:right;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.v2-purchase-kpi-filter:hover{transform:translateY(-1px);border-color:#d1b85e!important;box-shadow:0 10px 24px rgba(34,34,34,.07)!important}
.v2-purchase-kpi-filter.active{border-color:#c19c35!important;box-shadow:inset 4px 0 #c19c35,0 8px 24px rgba(34,34,34,.06)!important}
.v2-purchase-kpi-filter.active small{color:#806719!important}

/* Issued statements: proper from/to range control next to the title. */
.statement-date-filter{display:grid!important;grid-template-columns:repeat(2,minmax(155px,1fr)) auto auto;align-items:end!important;gap:9px!important}
.statement-date-filter input{min-width:0!important;width:100%!important}
.statement-date-filter .btn{min-height:44px;height:44px}
@media(max-width:850px){.statement-date-filter{grid-template-columns:repeat(2,minmax(0,1fr))!important}.statement-date-filter .btn{width:100%}}
@media(max-width:500px){.statement-date-filter{grid-template-columns:1fr!important}}

/* Settings primary save action lives opposite the page title. */
.content[data-page="settings"] .page-head{align-items:center!important}
.content[data-page="settings"] .heading-actions{margin-inline-start:auto!important}
.settings-save-top{min-width:150px}
.settings-form-v998{margin-top:0}
@media(max-width:650px){.content[data-page="settings"] .heading-actions{margin-inline-start:0!important;width:100%}.settings-save-top{width:100%}}

/* Custom-role name and base-role controls are truly symmetric. */
.role-form-grid{align-items:end!important}.role-form-grid>label:not(.check){min-width:0;height:100%;display:flex;flex-direction:column;justify-content:flex-end}
.role-form-grid>label:not(.check)>input,.role-form-grid>label:not(.check)>select{height:46px!important;min-height:46px!important;max-height:46px!important;margin:0!important}
.role-form-grid .notice.full{margin-bottom:0}
/* Top-bar and neighboring page actions use the same button height. */
.topbar-tools>.topbar-menu,.topbar-tools>.btn{height:40px!important;min-height:40px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important}
.topbar-tools>.btn{min-width:40px!important;padding-block:0!important}
.heading-actions>.btn{height:42px!important}
@media(max-width:650px){.heading-actions>.btn{height:38px!important;min-height:38px!important}}

/* HMS V10.23 — deployment-safe UI fixes + explicit RTL alignment. */
/* Hall summary: both Arabic labels and numeric values anchor to the right. */
.ops-summary>div,
.v995-top-summary .ops-summary>div{
  direction:rtl!important;
  text-align:right!important;
  align-items:flex-start!important;
  justify-items:stretch!important;
}
.ops-summary>div>strong,
.v995-top-summary .ops-summary>div>strong{
  justify-self:stretch!important;
  align-self:stretch!important;
  width:100%!important;
  direction:ltr!important;
  text-align:right!important;
}
.ops-summary>div>span,
.v995-top-summary .ops-summary>div>span{
  justify-self:stretch!important;
  align-self:stretch!important;
  width:100%!important;
  direction:rtl!important;
  text-align:right!important;
}

/* Order status colors must remain semantic even when older pill rules are loaded first. */
.pill.open,.v9911-order-card .pill.open{
  background:#e7f4e9!important;
  color:#24703f!important;
  border:1px solid #badbc3!important;
}
.pill.closed,.v9911-order-card .pill.closed{
  background:#ffe8e5!important;
  color:#a62f28!important;
  border:1px solid #efb8b1!important;
}

/* Kitchen: each grid row sizes itself to that row's tallest card only. */
.v99-prep-grid{
  grid-auto-rows:auto!important;
  align-items:stretch!important;
}
.v99-prep-grid>.v99-prep-card{
  min-height:0!important;
  height:100%!important;
  align-self:stretch!important;
}

/* HMS V10.24 — small UX polish requested after V10.23 QA. */

/* Login: remove only the large wordmark inside the sign-in card. */
.auth-login-v932 .auth-card .login-emblem{display:none!important}
.auth-login-v932 .auth-card>.eyebrow{margin-top:0!important}

/* Multiple tables: compact summary + readable chips instead of one long joined string. */
.pos-table-heading{min-width:0!important;max-width:100%}
.pos-table-heading h2{margin-bottom:4px!important;overflow-wrap:anywhere}
.pos-table-inline{display:inline!important;font-weight:700;color:#3e3e38}
.pos-table-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px;max-width:min(100%,360px)}
.pos-table-chips span{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border:1px solid #e2dccd;border-radius:999px;background:#faf8f2;color:#5d584d;font-size:10px;font-weight:700;line-height:1.3;white-space:nowrap}
.customer-display .pos-table-chips{max-width:100%}

/* Add-item feedback should feel immediate on cashier and customer screens. */
.content[data-page="order"] .pos-product,
.content[data-page="order"] .pos-product *,
.customer-display .customer-product,
.customer-display .customer-product *{transition-duration:0s!important;animation-duration:0s!important;animation-delay:0s!important}
.content[data-page="order"] .pos-product:active,
.customer-display .customer-product:active{transform:none!important}
.content[data-page="order"] .pos-live,
.customer-display .pos-live{transition:none!important}

/* Toasts created while a native <dialog> is open must live inside the top layer. */
#modal>#toast{position:absolute!important;top:68px!important;left:50%!important;right:auto!important;bottom:auto!important;transform:translate(-50%,-8px)!important;z-index:2147483647!important;max-width:calc(100% - 32px)!important;width:max-content!important;pointer-events:none!important}
#modal>#toast.show{transform:translate(-50%,0)!important}

/* Recipes: do not force both master/detail columns to look equally tall; leave breathing room at the end. */
.content[data-page="recipes"]{padding-bottom:76px!important}
.content[data-page="recipes"] .v2-master-detail{align-items:start!important}
.content[data-page="recipes"] .v2-master-detail>aside,
.content[data-page="recipes"] .v2-master-detail>section.v2-panel{height:auto!important;min-height:0!important;align-self:start!important}
.content[data-page="recipes"] .v2-master-detail>aside{position:sticky;top:16px}
.content[data-page="recipes"] .v2-master-detail .v2-list{max-height:min(58vh,540px)!important;padding-inline-end:5px!important;padding-bottom:16px!important;scroll-padding-bottom:16px}
.content[data-page="recipes"] .v2-master-detail .v2-list>button:last-child{margin-bottom:3px}
@media(max-width:900px){.content[data-page="recipes"] .v2-master-detail>aside{position:static!important}.content[data-page="recipes"] .v2-master-detail .v2-list{max-height:340px!important}}

/* Inventory: paginated lists stay compact and panels size to content instead of one long matched-height column. */
.content[data-page="inventory"]{padding-bottom:72px!important}
/* Inventory must use the full working width. Keep unequal-height setup columns without shrinking the page/panels. */
.content[data-page="inventory"] .v2-page{width:100%!important;align-items:stretch!important}
.content[data-page="inventory"] .v2-toolbar,
.content[data-page="inventory"] .v999-inventory-toolbar,
.content[data-page="inventory"] .v999-inventory-setup,
.content[data-page="inventory"] .v9910-inventory-setup-body,
.content[data-page="inventory"] .v2-panel{width:100%!important;max-width:none!important;align-self:stretch!important}
.content[data-page="inventory"] .v999-inventory-setup{align-items:stretch!important}
.content[data-page="inventory"] .v999-setup-stack{width:100%!important;align-items:start!important}
.content[data-page="inventory"] .v999-setup-stack>.data-wrap{width:100%!important;min-width:0!important;align-self:start!important}
.content[data-page="inventory"] .v2-panel,
.content[data-page="inventory"] .data-wrap{height:auto!important;min-height:0!important}
.content[data-page="inventory"] .v999-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:14px;padding:12px 14px;border:1px solid #e5e0d4;border-radius:11px;background:#faf9f5;color:#706b60;font-size:12px}
.content[data-page="inventory"] .v999-pagination>div{display:flex;gap:7px}
.content[data-page="inventory"] .v999-pagination .btn{min-height:36px!important;height:36px!important}

/* Public menu: modest premium polish without changing its identity or content hierarchy. */
.public-shell.public-v1024{width:min(100%,1220px)!important;max-width:1220px!important;padding-bottom:54px!important}
.public-v1024 .public-head{border-radius:24px!important;box-shadow:0 18px 48px rgba(34,34,34,.12)!important}
.public-v1024 .public-menu-tools{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;margin:22px 0 14px!important;padding:14px 16px!important;border:1px solid #e6e1d5!important;border-radius:16px!important;background:#fff!important;box-shadow:0 8px 24px rgba(34,34,34,.035)!important;flex-wrap:nowrap!important}
.public-v1024 .public-menu-summary{display:flex;flex-direction:column;gap:1px;min-width:max-content;text-align:right}
.public-v1024 .public-menu-summary small{font-size:10px!important;color:#8a857a!important}
.public-v1024 .public-menu-summary strong{font-size:14px!important;color:#222!important}
.public-v1024 .public-menu-tools .search{width:min(430px,100%)!important;max-width:430px!important;min-height:46px!important;margin:0!important;border-radius:12px!important;background:#fcfbf7!important}
.public-v1024 .public-category-tabs{display:flex!important;gap:8px!important;flex-wrap:nowrap!important;overflow-x:auto!important;overscroll-behavior-inline:contain;padding:4px 0 14px!important;margin-bottom:8px!important;scrollbar-width:none}
.public-v1024 .public-category-tabs::-webkit-scrollbar{display:none}
.public-v1024 .public-category-tabs .tab{flex:0 0 auto!important;border-radius:999px!important;padding:9px 15px!important;min-height:38px!important;background:#fff!important}
.public-v1024 .public-category-tabs .tab.active{background:#222!important;color:#fff!important;border-color:#222!important}
.public-v1024 .public-catalog{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(215px,1fr))!important;gap:18px!important;align-items:stretch!important}
.public-v1024 .public-catalog .menu-tile{display:flex!important;flex-direction:column!important;height:100%!important;min-height:0!important;padding:8px 8px 14px!important;border-radius:18px!important;overflow:hidden!important;box-shadow:0 8px 24px rgba(34,34,34,.04)!important}
.public-v1024 .public-catalog .menu-tile:hover{transform:translateY(-2px)!important;box-shadow:0 14px 34px rgba(34,34,34,.08)!important}
.public-v1024 .public-catalog .menu-tile .item-photo{height:190px!important;min-height:190px!important;border-radius:13px!important;overflow:hidden!important}
.public-v1024 .public-catalog .menu-tile .item-photo img{width:100%!important;height:100%!important;object-fit:cover!important}
.public-v1024 .public-catalog .menu-tile>div:nth-child(2){display:flex!important;flex-direction:column!important;flex:1!important;padding:12px 6px 0!important}
.public-v1024 .public-catalog .menu-tile h3{font-size:18px!important;line-height:1.45!important;margin:5px 0 7px!important}
.public-v1024 .public-catalog .menu-tile p{display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important;min-height:3.2em!important;margin-bottom:8px!important}
.public-v1024 .public-catalog .menu-tile>.row{margin-top:auto!important;padding:10px 6px 0!important;border-top:1px solid #eee9dd!important}
.public-v1024 .public-hms{margin-top:44px!important;padding-top:18px!important;border-top:1px solid #e7e2d6!important}
@media(max-width:700px){
  .public-shell.public-v1024{padding-inline:14px!important}
  .public-v1024 .public-menu-tools{align-items:stretch!important;flex-direction:column!important}
  .public-v1024 .public-menu-tools .search{max-width:none!important;width:100%!important}
  .public-v1024 .public-catalog{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
  .public-v1024 .public-catalog .menu-tile .item-photo{height:150px!important;min-height:150px!important}
}
@media(max-width:460px){.public-v1024 .public-catalog{grid-template-columns:1fr!important}.public-v1024 .public-catalog .menu-tile .item-photo{height:190px!important;min-height:190px!important}}

/* HMS V10.27 — touch/kiosk layout pass. */
/* The compact page header now lives in the V10.28 .app-topbar block at the end of this file. */
body:not(.customer-display-mode){font-size:15px}
.content{padding:16px 22px 30px!important;max-width:none!important}
.content>.page-head,.content>.pos-header{margin:0!important}
.content>.toolbar:first-child{margin-top:0!important}

/* Touch targets: larger controls, but tighter empty space around them. */
/* Sidebar icon size comes from the v12 icon-chip rule (34px chip, 8px padding); do not resize the svg here. */
.sidebar .nav-link{min-height:46px!important;font-size:13px!important;padding-block:8px!important}
.content .btn:not(.sm),.content button.btn:not(.sm),.app-topbar .btn,.topbar-tools>.btn,.topbar-menu{min-height:46px!important;height:46px!important;font-size:13px!important;padding-inline:15px!important}
.content .btn.sm{min-height:40px!important;font-size:12px!important}
.content .tabs>.tab,.app-topbar .tab{min-height:44px!important;height:44px!important;font-size:13px!important;padding:8px 14px!important}
.content input:not([type="checkbox"]):not([type="radio"]),.content select,.content textarea{font-size:14px!important}
.content input:not([type="checkbox"]):not([type="radio"]),.content select{min-height:46px!important}
.stats{gap:10px!important;margin-bottom:14px!important}.stat{padding:14px 16px!important}
.toolbar{margin-bottom:12px!important;gap:10px!important}
.card,.v2-panel,.ops-panel{margin-bottom:14px!important}

/* Kitchen: dense 5-column masonry on touch landscape screens. */
.content[data-page="kitchen"]{padding-top:14px!important}
.content[data-page="kitchen"] .v99-prep-grid{
  display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;
  grid-auto-rows:8px!important;grid-auto-flow:row dense!important;
  gap:12px!important;align-items:start!important;
}
.content[data-page="kitchen"] .v99-prep-grid>.v99-prep-card{
  height:auto!important;min-height:0!important;align-self:start!important;
  padding:14px!important;border-radius:14px!important;cursor:pointer!important;
  display:grid!important;grid-template-rows:auto auto auto!important;
}
.content[data-page="kitchen"] .v99-prep-card header{gap:8px!important;padding-bottom:9px!important;margin-bottom:9px!important}
.content[data-page="kitchen"] .v99-prep-card header small{font-size:13px!important;font-weight:750!important;color:#706b62!important}
.content[data-page="kitchen"] .v99-prep-card header strong{font-size:21px!important;line-height:1!important;font-weight:900!important;direction:ltr;unicode-bidi:isolate;text-align:right}
.content[data-page="kitchen"] .v99-prep-card header>span{font-size:14px!important;font-weight:800!important}
.content[data-page="kitchen"] .v99-prep-card ul{gap:7px!important;margin:0 0 10px!important}
.content[data-page="kitchen"] .v99-prep-card li b{font-size:14px!important;line-height:1.45!important}
.content[data-page="kitchen"] .v99-prep-card li>div>.pill{font-size:10px!important;padding:3px 7px!important}
.content[data-page="kitchen"] .v99-prep-card li small,.content[data-page="kitchen"] .v99-prep-card li em{display:none!important}
.content[data-page="kitchen"] .v99-prep-card .v1027-hidden-line{display:none!important}
.content[data-page="kitchen"] .v99-prep-card .v1027-more{display:block!important;padding:4px 0;color:#7b6a35;font-size:12px;font-weight:800}
.content[data-page="kitchen"] .v99-done{min-height:48px!important;font-size:13px!important;margin-top:4px!important}
/* V10.28: keep the card's single column inside its padding. An `auto` column grew to the
   nowrap Done label ("تم · المطبخ الرئيسي") and pushed the header/rush badge past the card edge. */
.content[data-page="kitchen"] .v99-prep-grid>.v99-prep-card{grid-template-columns:minmax(0,1fr)}
.content[data-page="kitchen"] .v99-prep-card header>*{min-width:0}
.content[data-page="kitchen"] .v99-prep-card header .v99-rush-badge{flex:none}
.content[data-page="kitchen"] .v99-prep-card li>.row.between{flex-wrap:wrap;row-gap:4px}
.content[data-page="kitchen"] .v99-prep-card li>.row.between>b{min-width:0}
.content[data-page="kitchen"] .v99-done{white-space:normal;line-height:1.25}
.content[data-page="kitchen"] .v99-station-tabs{gap:6px!important}
.content[data-page="kitchen"] .v99-station-tabs .tab{min-height:42px!important;height:42px!important}
.v1027-prep-card:focus-visible{outline:3px solid rgba(193,156,53,.55);outline-offset:3px}
.v1027-prep-detail{display:grid;gap:9px}.v1027-prep-detail-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:10px;border-bottom:1px solid #ece9e1}
.v1027-prep-detail-head>strong{font-size:18px}.v1027-prep-detail-line{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid #f0eee8}
.v1027-prep-detail-line>div{display:grid;gap:4px}.v1027-prep-detail-line b{font-size:15px}.v1027-prep-detail-line small{font-size:12px;color:#706c63}.v1027-prep-detail-line em{font-size:12px;color:#8b5c2b;font-style:normal;font-weight:700}.v1027-prep-detail-line>span{font-size:11px;color:#7d776b;white-space:nowrap}

/* Receipt appears immediately in a large centered modal after issuing. */
#modal:has(.v1027-receipt-modal){width:min(94vw,760px)!important;max-width:760px!important;height:min(92dvh,900px)!important;max-height:92dvh!important}
#modal:has(.v1027-receipt-modal) .modal-body{padding:0 16px 16px!important;overflow:hidden!important}
.v1027-receipt-modal{height:calc(min(92dvh,900px) - 78px);display:grid;grid-template-rows:minmax(0,1fr) auto;gap:10px}
.v1027-receipt-modal iframe{width:100%;height:100%;border:1px solid #e4e1d8;border-radius:12px;background:#fff}
.v1027-receipt-actions{display:flex;justify-content:center;gap:10px;padding-top:2px}.v1027-receipt-actions .btn{min-width:150px}

@media(max-width:1380px){
  .content[data-page="kitchen"] .v99-prep-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important}
}
@media(max-width:1180px){
  .content[data-page="kitchen"] .v99-prep-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media(max-width:900px){
  .content{padding:12px 14px 24px!important}
  .content[data-page="kitchen"] .v99-prep-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:680px){
  .content[data-page="kitchen"] .v99-prep-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-auto-rows:auto!important;grid-auto-flow:row!important}
}
@media(max-width:460px){.content[data-page="kitchen"] .v99-prep-grid{grid-template-columns:1fr!important}}

/* HMS V10.28 — global app topbar.
   Structure (built once per shell by hms-operations.js):
     header.topbar.app-topbar
       .app-topbar__primary   mobile menu + title (h1) over the current date
       .app-topbar__context   page search / key filters (optional)
       .app-topbar__actions   .app-topbar__page-actions + .topbar-tools (refresh, عرض المنيو)
   Grid areas are written in logical (start → end) order, so RTL places the title at the
   inline start without physical left/right rules. JS measures the natural single-row width
   and adds .is-stacked (context on its own row) or .is-compact (page actions join that row).
   The few !important flags below override older !important .topbar rules (height/padding
   at the v7 layer and the 40px .topbar-tools buttons). */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.topbar.app-topbar{
  display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"primary context actions";
  align-items:center;gap:8px 18px;height:auto!important;min-height:68px;padding:10px 20px!important;
  position:sticky;top:0;z-index:20;
}
.app-topbar__primary{grid-area:primary;display:flex;align-items:center;gap:12px;min-width:0}
.app-topbar__heading{display:flex;flex-direction:column;justify-content:center;gap:3px;min-width:0}
.app-topbar__title{margin:0;font-size:22px;line-height:1.25;font-weight:850;color:#222;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.app-topbar__heading .topbar-date{font-size:12.5px;font-weight:700;line-height:1.2;color:#7a766d;gap:6px}
.app-topbar__heading .topbar-date svg{width:15px;height:15px}
.app-topbar__context{grid-area:context;display:flex;align-items:center;justify-content:center;gap:10px;min-width:0}
.app-topbar__context:empty,.app-topbar__page-actions:empty{display:none}
.app-topbar__actions{grid-area:actions;display:flex;align-items:center;justify-content:flex-end;gap:12px}
.app-topbar__page-actions,.app-topbar .topbar-tools{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;white-space:nowrap}
.app-topbar__page-actions:not(:empty)+.topbar-tools{padding-inline-start:12px;border-inline-start:1px solid #ece8df}
.app-topbar .topbar-tools>.btn,.app-topbar .topbar-tools>.topbar-menu{height:46px!important;min-height:46px!important}
.app-topbar .topbar-tools>.btn{min-width:46px!important}

/* Context controls keep their natural width so the layout measurement is stable. */
.app-topbar__context>*{flex:none;margin:0}
.app-topbar__context .tabs{display:flex;flex-wrap:nowrap;gap:6px;margin:0}
.app-topbar__context label{display:inline-flex;flex-direction:row;align-items:center;gap:8px;margin:0;white-space:nowrap}
.app-topbar__context form{display:flex;align-items:center;gap:10px;margin:0}
/* Statements range form is pinned to a stacked grid by an older !important rule. */
.app-topbar__context .statement-date-filter{display:flex!important;align-items:center!important;gap:10px!important;width:auto}
.app-topbar__context .statement-date-filter label{flex:none;font-size:13px}
.app-topbar__context .statement-date-filter input{width:170px!important}
.app-topbar__context input:not([type="checkbox"]):not([type="radio"]),.app-topbar__context select{min-height:46px;font-size:14px}
.app-topbar__context input[type="date"]{width:170px}
.app-topbar__context .v9910-customer-search,.app-topbar__context .v9911-recipe-search{position:relative;width:clamp(240px,24vw,340px)!important}
.app-topbar__context .v9910-customer-search small{position:absolute;inset-inline-start:4px;top:100%;min-height:0;margin:2px 0 0}
.app-topbar__context .v9910-customer-search small:empty{display:none}

/* Second row: context (search / filters) moves under the title row. */
.topbar.app-topbar.is-stacked{grid-template-areas:"primary . actions" "context context context"}
.app-topbar.is-stacked .app-topbar__context,.app-topbar.is-compact .app-topbar__context{justify-content:flex-start;flex-wrap:wrap}
/* Compact: title + refresh/عرض المنيو on row 1, page actions on row 2, context (if any) on row 3. */
.topbar.app-topbar.is-compact{grid-template-areas:"primary . tools" "page page page"}
.topbar.app-topbar.is-compact.has-context{grid-template-areas:"primary . tools" "page page page" "context context context"}
.app-topbar.is-stacked .app-topbar__context .tabs,.app-topbar.is-compact .app-topbar__context .tabs{flex-wrap:wrap}
.app-topbar.is-compact .app-topbar__actions{display:contents}
.app-topbar.is-compact .app-topbar__page-actions{grid-area:page;flex-wrap:wrap}
.app-topbar.is-compact .topbar-tools{grid-area:tools;justify-self:end;padding-inline-start:0;border-inline-start:0}
/* Measurement pass only (never painted): lay everything out on one unconstrained row. */
.topbar.app-topbar.is-measuring{display:flex;flex-wrap:nowrap;width:max-content;max-width:none;position:absolute;visibility:hidden}
.app-topbar.is-measuring.is-measuring-bare .app-topbar__context{display:none}
/* "المزيد" menu for secondary page actions (native <details>; items keep their data-act). */
.hms-more-menu{position:relative;flex:none}
.hms-more-menu>summary{list-style:none;cursor:pointer;user-select:none;display:inline-flex;align-items:center;gap:6px}
.hms-more-menu>summary::-webkit-details-marker{display:none}
.hms-more-menu__chevron{width:7px;height:7px;margin-top:-3px;border:solid currentColor;border-width:0 2px 2px 0;transform:rotate(45deg);transition:transform .15s ease}
.hms-more-menu[open]>summary{border-color:#c19c35}
.hms-more-menu[open] .hms-more-menu__chevron{margin-top:3px;transform:rotate(-135deg)}
.hms-more-menu__list{position:absolute;top:calc(100% + 6px);inset-inline-end:0;z-index:30;min-width:230px;display:grid;gap:4px;padding:6px;background:#fff;border:1px solid #e6e1d6;border-radius:12px;box-shadow:0 14px 34px rgba(34,34,34,.16)}
.app-topbar .hms-more-menu__list .btn{width:100%;justify-content:flex-start;background:#fff;border-color:transparent;box-shadow:none}
.app-topbar .hms-more-menu__list .btn:hover,.app-topbar .hms-more-menu__list .btn:focus-visible{background:#f6f2e8;border-color:#eadfc6}
@media(max-width:900px){.app-topbar__title{font-size:20px}}
@media(max-width:560px){.topbar.app-topbar{padding:8px 12px!important;gap:8px 10px}.app-topbar__title{font-size:18px}}
