@font-face{font-family:Manrope;src:url('/fonts/manrope-latin.woff2') format('woff2');font-style:normal;font-weight:400 800;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Manrope;src:url('/fonts/manrope-latin-ext.woff2') format('woff2');font-style:normal;font-weight:400 800;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0300-0303,U+0305-0307,U+0309-0328,U+032A-036F,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
body:not(.display-mode){font-family:Manrope,'Segoe UI',Arial,sans-serif}
html[lang=ar] body:not(.display-mode){font-family:'Segoe UI',Tahoma,Arial,sans-serif}
body:not(.display-mode) :is(button,.button-link,a.quiet,select,summary){min-height:44px;min-width:44px}
body:not(.display-mode) :is(button,a,summary,input,select):focus-visible{outline:3px solid #2E7457;outline-offset:3px}
body:not(.display-mode) :is(button,a,summary){overflow-wrap:anywhere}
.cashier-mode header{min-height:72px;padding-block:10px}
.cashier-mode main{max-width:1440px;margin:20px auto;padding-inline:24px}
.cashier-mode .intro{margin-bottom:10px;gap:12px}
.cashier-mode .intro h1{font-size:30px;margin:2px 0;letter-spacing:-.6px}
.cashier-mode .intro .date{font-size:12px}
.cashier-mode .cashier-tools{gap:8px;margin:0 0 14px;flex-wrap:wrap}
.cashier-mode .cashier-tools :is(a,button){font-size:13px;padding:8px 12px;display:inline-flex;align-items:center;gap:8px}
.cashier-mode .stats{gap:10px;margin:12px 0 18px}
.cashier-mode .stat{padding:12px 16px;border-radius:12px;display:flex;align-items:center;gap:12px}
.cashier-mode .stat strong{font-size:26px}
.cashier-mode .stat span{font-size:12px;display:inline-flex;gap:6px;align-items:center}
.cashier-mode .workspace{grid-template-columns:270px minmax(0,1fr);gap:18px}
.cashier-mode .create{padding:18px;top:16px}
.cashier-mode .create h2{font-size:20px;margin-bottom:12px}
.cashier-mode .create .notice{font-size:12px;padding:10px;margin-top:12px}
.cashier-mode .create .hint{margin-block:10px;font-size:12px}
.cashier-mode .tabs{gap:6px;margin-bottom:10px}
.cashier-mode .tab{font-size:13px;padding:8px 12px}
.cashier-mode .orders{gap:10px}
.cashier-mode .order{padding:14px 16px;gap:16px;align-items:flex-start}
.cashier-mode .order-summary{min-width:145px;flex:0 1 180px}
.cashier-mode .order-number{font-size:26px;line-height:1.3;margin-bottom:5px}
.cashier-mode .order-meta{margin-top:6px;line-height:1.5}
.cashier-mode .order-actions{flex:1;display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:0}
.cashier-mode .order-primary{font-size:14px;padding:10px 16px;max-width:100%;text-align:start}
.cashier-mode .order-secondary{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;align-items:start}
.cashier-mode .order-secondary button{font-size:12px;padding:8px 10px;background:transparent;color:#123F46}
.cashier-mode .order-more{position:relative;min-width:66px}
.cashier-mode .order-more summary{cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px;border:1px solid #c7d8d4;border-radius:12px;padding:8px 12px;font-size:12px;color:#123F46;list-style:none}
.cashier-mode .order-more summary::-webkit-details-marker{display:none}
.cashier-mode .order-more summary::after{content:'⌄';font-size:16px}
.cashier-mode .order-more[open]>button{position:absolute;inset-inline-end:0;top:48px;z-index:4;min-width:120px;background:#fffef8;box-shadow:0 5px 18px #182c3026}
.cashier-mode .connection{margin:12px 0}
.cashier-mode footer{padding:16px}
.login-mode main{margin:24px auto;min-height:0}
.login-mode .admin-auth{max-width:820px;margin:28px auto;gap:36px;align-items:center}
.login-mode .admin-intro h1,.login-mode .venue-auth h1{font-size:30px;margin:8px 0}
.login-mode .admin-intro>p,.login-mode .venue-auth>p{margin:8px 0 20px}
.login-mode .admin-lock{display:none}
.login-mode .admin-auth .panel{padding:26px}
.login-mode .admin-auth .hint{font-size:12px;margin-bottom:0}
.login-mode .venue-auth{margin:20px auto;padding:24px}
.login-mode .venue-auth .venue-logo{max-height:72px}
.guest-mode .customer>.panel{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:24px}
.guest-mode .customer .status-icon{width:44px;height:44px;margin:0 auto}
.guest-mode .customer .big-number{font-size:clamp(48px,12vw,76px);margin:0;line-height:1.15}
.guest-mode .customer h1{font-size:clamp(23px,5vw,30px);margin:0;line-height:1.3}
.guest-mode .customer .badge{align-self:center}
.guest-mode .customer .sound-box{order:5;margin:2px 0;padding:14px;background:#F7F5EF;border:1px solid #c7d8d4}
.guest-mode .customer .sound-box.sound-enabled{background:transparent;padding:8px 12px;border-color:#c7d8d4}
.guest-mode .customer .sound-box p{margin:0 0 6px;font-size:13px;color:#182C30}
.guest-mode .customer .sound-box.sound-enabled p{color:#2E7457}
.guest-mode .customer .sound-box button{margin:4px 0}
.guest-mode .customer .sound-box.sound-enabled #sound{width:auto;font-size:13px}
.guest-mode .customer #stop-sound{background:#123F46;color:white;width:100%;font-weight:800}
.guest-mode .customer>.panel>div:has(>#ack){order:4}
.guest-mode .customer #ack{width:100%;margin:4px 0;font-size:16px}
.guest-mode .customer .guest-brief{order:6;margin:0;font-size:12px}
.guest-mode .customer .connection{order:7;margin:0;font-size:11px}
.guest-mode .customer .guest-review{order:8}
.guest-mode .customer .guest-more{order:9;margin:4px 0 0;font-size:13px}
.guest-mode .customer .guest-review h2{font-size:20px}
@media(max-width:800px){
 .cashier-mode header{padding-inline:16px;flex-wrap:wrap}.cashier-mode .header-actions{gap:8px;flex-wrap:wrap}
 .cashier-mode main{padding-inline:16px;margin:16px auto}
 .cashier-mode .intro h1{font-size:28px}.cashier-mode .cashier-tools{gap:6px}
 .cashier-mode .cashier-tools :is(a,button){font-size:12px}
 .cashier-mode .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .cashier-mode .stat{padding:9px 12px;gap:8px}.cashier-mode .stat strong{font-size:23px}.cashier-mode .stat span{font-size:11px;flex-wrap:wrap}
 .cashier-mode .workspace{grid-template-columns:minmax(0,1fr);gap:16px}
 .cashier-mode .create{position:static}.cashier-mode .create .hint,.cashier-mode .create .notice{display:none}
 .cashier-mode .create form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
 .cashier-mode .create label{grid-column:1/-1}.cashier-mode .create input{margin:0}.cashier-mode .create button{width:auto;font-size:13px;padding:12px}
 .cashier-mode .order{flex-direction:column;gap:12px}.cashier-mode .order-summary{flex:auto;min-width:0;width:100%}
 .cashier-mode .order-actions{width:100%;align-items:stretch}.cashier-mode .order-primary{width:100%;justify-content:center;text-align:center}
 .cashier-mode .order-secondary{justify-content:flex-start}.cashier-mode .order-more[open]>button{inset-inline-start:0;inset-inline-end:auto}
 .login-mode .admin-auth{display:block;margin:12px auto}.login-mode .admin-intro{margin-bottom:18px}.login-mode .admin-auth .panel{padding:20px}
 .guest-mode .customer>.panel{padding:20px 16px}
}
@media(max-width:420px){.cashier-mode .create form{grid-template-columns:minmax(0,1fr)}.cashier-mode .create button{width:100%}}
.cashier-mode .order-more summary::after{content:none}
.cashier-mode .venue-tools>summary{display:none}
.cashier-mode .venue-tools-links{display:flex;gap:8px;flex-wrap:wrap}
.cashier-mode .venue-tools:not([open])>.venue-tools-links{display:flex}
@media(max-width:800px){
 .cashier-mode .venue-tools>summary{display:flex;gap:8px;align-items:center;cursor:pointer;list-style:none;color:#123F46;font-size:13px;border:1px solid #c7d8d4;border-radius:12px;padding:8px 12px}
 .cashier-mode .venue-tools:not([open])>.venue-tools-links{display:none}
 .cashier-mode .venue-tools-links{margin-top:8px}
 .cashier-mode .stat span .ui-icon{display:none}
 .cashier-mode .stat{align-items:center;min-height:62px}
 .cashier-mode .create{padding:14px}.cashier-mode .create h2{margin-bottom:8px}
}
.cashier-mode .venue-tools>summary{display:flex;gap:8px;align-items:center;cursor:pointer;list-style:none;color:#123F46;font-size:13px;border:1px solid #c7d8d4;border-radius:12px;padding:8px 12px;width:fit-content}
.cashier-mode .venue-tools:not([open])>.venue-tools-links{display:none}
.cashier-mode .venue-tools-links{margin-top:8px}
.cashier-mode .stat span{min-width:0;overflow-wrap:anywhere}
.cashier-mode .order-more[open]>button{position:static;display:block;margin-top:6px;box-shadow:none;min-width:100px}
body:not(.display-mode) .tenant-name{overflow-wrap:anywhere;min-width:0}
@media(max-width:420px){.cashier-mode .create form{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}.cashier-mode .create button{width:100%;white-space:normal}.cashier-mode .stat{min-height:52px}.cashier-mode .stat span{line-height:1.4}}
@media(max-width:800px){.cashier-mode header{flex-wrap:nowrap;gap:10px;min-height:64px}.cashier-mode header .tenant-brand{max-width:calc(100% - 182px);gap:8px}.cashier-mode header .tenant-name{font-size:15px;line-height:1.3}.cashier-mode header .venue-logo{width:58px;height:44px;padding:6px}.cashier-mode .header-actions{gap:6px;flex-wrap:nowrap}.cashier-mode .icon-language>.ui-icon{display:none}.cashier-mode #language{width:90px;font-size:13px}.cashier-mode #logout{font-size:12px;padding:8px}.cashier-mode .header-actions .icon-language{gap:0}}
/* Cashier number pad: native details supports keyboard and small-screen toggling. */
.cashier-mode .order-keypad{width:100%;grid-column:1/-1;margin:8px 0 12px}
.cashier-mode .order-keypad summary{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid #c7d8d4;border-radius:12px;color:#123F46;cursor:pointer;font-size:13px;list-style:none}
.cashier-mode .order-keypad summary::-webkit-details-marker{display:none}
.cashier-mode .order-keypad[open] summary{background:#e8eeeb;margin-bottom:8px}
.cashier-mode .keypad-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.cashier-mode .keypad-grid button{width:100%;min-width:44px;min-height:52px;margin:0;font-size:22px;padding:8px;background:#fff;color:#123F46;font-variant-numeric:tabular-nums}
.cashier-mode .keypad-grid .keypad-edit{font-size:12px;line-height:1.4;background:#F7F5EF;white-space:normal}
.cashier-mode .create form>[type=submit]{grid-column:1/-1;width:100%}
.keypad-announcement{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:800px){.cashier-mode .create form{grid-template-columns:minmax(0,1fr)}.cashier-mode .order-keypad{margin:0}.cashier-mode .keypad-grid button{min-height:56px}.cashier-mode .create input{width:100%}}
/* Pingora cashier — touch-friendly order cards, 2026-10-22 */
.cashier-mode #orders{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:14px;align-items:stretch}
.cashier-mode #orders .empty{grid-column:1/-1}
.cashier-mode .order.order-card{display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;text-align:center;gap:16px;padding:20px 16px 14px;border-radius:17px;border:1px solid #d4dfd6;background:#fffef9;position:relative;min-width:0;min-height:268px}
.cashier-mode .order-card .order-summary{flex:none;min-width:0;width:100%;display:flex;flex-direction:column;align-items:center}
.cashier-mode .order-caption{font-size:11px;color:#536b65;line-height:1.4}
.cashier-mode .order-card .order-number{font-size:clamp(36px,3.5vw,54px);font-weight:800;letter-spacing:-1.6px;line-height:1.15;margin:8px 0 11px;color:#123F46;max-width:100%;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.cashier-mode .order-card .badge{font-size:11px;padding:4px 10px;max-width:100%;line-height:1.4}
.cashier-mode .order-card .order-meta{font-size:10px;line-height:1.6;min-height:18px;margin-top:9px;color:#60776c}
.cashier-mode .order-response{display:block;max-width:210px;font-size:9px;margin-top:3px}
.cashier-mode .order-card .order-actions{display:flex;flex-direction:row;align-items:stretch;justify-content:stretch;gap:7px;width:100%;margin-top:auto}
.cashier-mode .order-card .order-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;min-width:0;max-width:none;flex:1;width:auto;font-size:13px;padding:10px 9px;border-radius:10px;white-space:normal;line-height:1.35}
.cashier-mode .order-card .order-secondary{display:block;flex:0 0 auto;align-self:stretch}
.cashier-mode .order-card .order-more{min-width:0;height:100%}
.cashier-mode .order-card .order-more summary{height:100%;min-height:48px;width:46px;padding:10px;gap:0;border-radius:10px;font-size:0}
.cashier-mode .order-card .order-more summary .ui-icon{width:21px;height:21px}
.cashier-mode .order-card .order-more summary::after{content:none}
.cashier-mode .order-card .order-menu{display:none}
.cashier-mode .order-card:has(.order-more[open]){z-index:5}
.cashier-mode .order-card .order-more[open] .order-menu{position:absolute;inset-inline-end:0;top:calc(100% + 6px);width:220px;max-width:calc(100vw - 48px);display:flex;flex-direction:column;gap:4px;padding:7px;border:1px solid #bbcec0;border-radius:12px;background:#fffef9;box-shadow:0 8px 20px #123f4614;z-index:10;text-align:start}
.cashier-mode .order-card .order-menu button{position:static;min-height:44px;width:100%;max-width:100%;margin:0;display:flex;justify-content:flex-start;text-align:start;border:0;border-radius:7px;background:transparent;padding:10px 12px;font-size:12px;box-shadow:none}
.cashier-mode .order-card .order-menu button:hover{background:#e8f0e8}.cashier-mode .order-card .order-menu .order-cancel{color:#963e2d;border-top:1px solid #e1e7df;border-radius:0}
.cashier-mode .order-card.status-ready{border-color:#6c9c7b;background:#edf5ec}.cashier-mode .order-card.status-ready .order-primary{background:#2E7457}
.cashier-mode .order-card.status-collected{background:#f0f3ed}.cashier-mode .order-card.status-cancelled{background:#f8f2ee}.cashier-mode .order-card.status-cancelled .order-number{color:#7e6d62}
.cashier-mode .order-card.status-collected .order-actions,.cashier-mode .order-card.status-cancelled .order-actions{justify-content:flex-end}
@media(min-width:1600px){.cashier-mode #orders{grid-template-columns:repeat(auto-fill,minmax(235px,1fr))}}
@media(max-width:800px){.cashier-mode #orders{grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:12px}.cashier-mode .order.order-card{padding:18px 14px 13px;min-height:255px}.cashier-mode .order-card .order-number{font-size:49px}.cashier-mode .order-card .order-actions{flex-direction:row;gap:7px}.cashier-mode .order-card .order-primary{width:auto;flex:1;font-size:13px}.cashier-mode .order-card .order-more[open] .order-menu{inset-inline-start:auto;inset-inline-end:0}}
@media(max-width:480px){.cashier-mode #orders{grid-template-columns:minmax(0,1fr)}.cashier-mode .order.order-card{min-height:240px;padding:18px}.cashier-mode .order-card .order-number{font-size:54px}.cashier-mode .order-card .order-primary{min-height:50px;font-size:15px}}

