:root{--bg:#f3f3f3;--ink:#303944;--muted:#697582;--line:#c5c7ca;--green:#305e91}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--bg);color:var(--ink);font:13px Arial,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit;color:inherit;border:1px solid #abadb2;border-radius:0;min-height:28px}button{background:linear-gradient(#fafafa,#e5e5e5);padding:4px 14px;cursor:pointer}button:hover{border-color:#7393b8;background:#e5edf7}button:disabled{color:#95999e;cursor:not-allowed;background:#eee}input,select,textarea{background:white;padding:4px 7px;min-width:0;max-width:100%}input:focus,select:focus,textarea:focus,button:focus-visible{outline:2px solid #6c96c6;outline-offset:1px}textarea{resize:vertical}input[type=checkbox]{min-height:0}h1{font-size:26px;font-weight:400;margin:0}h2{font-size:17px;margin:5px 0}h3{font-size:14px}p{line-height:1.45}.rail{position:fixed;left:0;top:35px;bottom:0;width:215px;background:#e1e1e1;border:1px solid var(--line);padding:0 0 14px;display:flex;flex-direction:column}.navigation-title{padding:18px 16px;font-size:17px;background:#f7f7f7;border-bottom:1px solid var(--line)}.navigation-group{padding:16px;background:#ececec;border-bottom:1px solid #d6d6d6;font-size:15px}.rail-button{text-align:left;padding:11px 16px 11px 30px;border:0;background:#fafafa;font-size:13px}.rail-button.active{background:#c8d6e9;font-weight:bold;color:#183c6b}.navigation-caption{margin-top:auto;padding:16px;color:#727982;line-height:1.6}.workspace{margin-left:215px;min-width:0}header{position:relative;margin-left:-215px;height:35px;padding:0 12px;background:#eee;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-size:14px}.header-right{display:flex;gap:16px;align-items:center}.header-right button{border:0;background:transparent;min-height:24px}.avatar{display:none}.mode{font-size:11px}.mode i{display:inline-block;width:8px;height:8px;margin-right:5px;background:#74a254}.notice{display:flex;justify-content:space-between;gap:10px;padding:6px 12px;background:#f5f1e7;font-size:11px;color:#756648}main{padding:8px;min-width:0}.page-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:8px 3px 12px}.branch-label{display:flex;align-items:center;gap:8px}.branch-label select{min-width:200px}.metrics{display:none}.tabs{display:flex;align-items:center;border-bottom:1px solid var(--line);gap:2px;margin-bottom:8px}.tab{padding:7px 17px;border-color:var(--line);background:#e8e8e8;border-bottom:0}.tab.active{font-weight:bold;background:#fafafa;box-shadow:0 2px #fafafa}.tabs-note{margin-left:auto;font-size:11px;color:var(--muted)}.sync-bar{display:flex;align-items:center;gap:12px;margin-bottom:8px;font-size:11px;color:var(--muted)}#sync-status{flex:1}.demo-switch{display:flex;align-items:center;gap:4px}.section-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.search{display:flex;align-items:center;background:white;border:1px solid #abadb2;padding-left:6px;flex:1;min-width:120px}.search input{border:0;width:100%;background:transparent}.toolbar-label{font-size:12px}.order-layout{display:block;border:1px solid var(--line);background:white;min-height:calc(100vh - 255px);position:relative;padding-bottom:35px}.order-list{overflow-x:auto}.registry-group{background:#e9e9e9;padding:10px;font-weight:bold;min-width:1080px;border-bottom:1px solid var(--line)}.table-head,.order-row{display:grid;grid-template-columns:55px 120px 100px 95px 105px 120px minmax(150px,1fr) 85px minmax(200px,1fr);min-width:1030px;width:100%;padding:0;gap:0;text-align:left}.table-head{background:#f5f5f5}.table-head>span,.order-row>span{padding:7px 6px;border-right:1px solid #d1d1d1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.order-row{border:0;border-bottom:1px solid #d8d8d8;background:white;font-size:12px;min-height:31px}.order-row.selected{background:#b7c7df;color:#132c4b}.order-number{color:#143bd0}.numeric{text-align:right;white-space:nowrap}.registry-total{position:absolute;bottom:0;left:0;right:0;padding:9px 12px;background:#eee;border-top:1px solid var(--line);text-align:right}.delivery-editor,.detail{padding:4px;border:1px solid var(--line);background:#f5f5f5}.cart-title{display:flex;align-items:center;padding:3px 6px 7px}.cart-title>div{display:flex;align-items:center;gap:20px}.cart-title h2{font-size:13px;font-weight:400}.eyebrow{font-size:11px;color:var(--muted)}fieldset{border:1px solid var(--line);padding:10px;min-width:0;margin:0;background:#f7f7f7}legend{padding:0 6px;font-size:13px}.editor-top{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.field{display:flex;align-items:center;gap:8px;margin:6px 0;font-size:12px;flex-wrap:wrap}.field input,.field textarea,.field select{flex:1;min-width:100px}.field small{flex-basis:100%;color:var(--muted);font-size:10px;margin-left:0}.client-fields>.field{display:grid;grid-template-columns:100px minmax(0,1fr)}.segmented{display:inline-flex;margin-left:8px;gap:2px}.segmented .active,.category.active{background:#c3d3e8;color:#183a65;border-color:#819bbd}.address-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 8px}.address-grid .field{display:block}.address-grid input{width:100%;margin-top:4px}.editor-bottom{display:grid;grid-template-columns:minmax(340px,1.5fr) minmax(235px,1fr) minmax(235px,.85fr);gap:8px;min-height:400px}.order-items{display:flex;flex-direction:column}.cart-table-head,.cart-line{display:grid;grid-template-columns:minmax(110px,1fr) 100px 75px 80px 28px;font-size:12px;align-items:center}.cart-table-head{background:#eee;border:1px solid var(--line)}.cart-table-head>span{padding:6px 4px;border-right:1px solid var(--line)}#cart-lines{background:white;flex:1;border:1px solid var(--line);border-top:0}.cart-line{padding:5px 3px;border-bottom:1px solid #ddd;color:#153bc7;gap:2px}.cart-line-name{padding:4px;line-height:1.4}.stepper{display:flex;align-items:center;justify-content:space-around;gap:3px}.stepper button{padding:0;width:22px;min-height:24px}.cart-line>[data-remove]{padding:0;border:0;background:transparent}.item-tools{margin-top:6px}.item-tools button{width:100%}.catalog .section-toolbar{gap:5px}.catalog .search{flex-basis:100%}.categories{display:flex;flex-wrap:wrap;gap:3px;max-height:86px;overflow:auto;margin-bottom:8px}.category{font-size:11px;padding:3px 7px;min-height:25px}.products{max-height:330px;overflow:auto;background:white;border:1px solid var(--line)}.product{display:grid;grid-template-columns:minmax(0,1fr) auto;width:100%;text-align:left;border:0;border-bottom:1px solid #ddd;background:white;padding:8px;gap:5px}.product strong{font-size:12px;font-weight:400;color:#153bc7}.category-name{display:none}.product-bottom{display:flex;gap:5px;font-size:12px}.add-icon{font-weight:bold;color:#4c753c}.subtotal,.quote-total,.detail-total{display:flex;justify-content:space-between;gap:8px;font-weight:bold;padding:7px 0}.subtotal strong,.quote-total{font-size:16px}.cart-note,.muted{font-size:11px;color:var(--muted);line-height:1.45}.payment-panel .field{display:block}.payment-panel .field input{display:block;width:100%;margin-top:5px}.payment-details{font-size:11px;border-top:1px solid var(--line);padding:10px 0}.payment-row{display:grid;grid-template-columns:minmax(0,1fr) 75px;gap:4px;margin:4px 0}.payment-row input,.payment-row select{width:100%;font-size:12px}.primary{font-weight:bold}.payment-panel>.primary{width:100%}.editor-actions{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:8px;padding:10px 3px 4px}.editor-actions button{font-size:12px}#send-order:enabled{background:#c7d8ed;border-color:#789ac4}.editor-state{font-size:11px;padding:0 6px;color:#365878}.editor-state p:empty{display:none}.warning{background:#fff1d9;color:#855820;padding:8px;font-size:11px;margin:7px 0}.error-text{color:#a22b24!important}.empty{padding:36px 12px;text-align:center;font-size:12px;color:var(--muted);line-height:1.7}.empty-symbol{display:block;font-size:24px}.client-panel{margin-top:8px;padding:8px;border:1px solid var(--line);background:#fff}.client-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.client-heading h2{font-size:15px}.client-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-height:360px;overflow:auto}.client-address{display:block;width:100%;text-align:left;margin:4px 0;font-size:11px}.client-history{display:flex;justify-content:space-between;gap:8px;font-size:11px;padding:5px 0}.incoming{display:flex;align-items:center;justify-content:space-between;padding:10px;background:#e0eddf;border:1px solid #95b393;margin-bottom:8px}.incoming p{margin:4px 0}.call-ended{opacity:.65}.detail-top{display:flex;justify-content:space-between;gap:10px;padding:10px 4px 16px}.detail-bottom{display:grid;grid-template-columns:2.5fr 1fr;gap:8px;min-height:400px}dl{display:grid;grid-template-columns:110px 1fr;gap:8px}dt{font-size:12px}dd{margin:0;background:white;border:1px solid #ccc;padding:4px;overflow-wrap:anywhere}.detail-table{border-collapse:collapse;width:100%;font-size:12px;background:white}.detail-table th,.detail-table td{border:1px solid var(--line);padding:7px;text-align:left}.detail-table th{background:#eee;font-weight:400}.detail-table td{color:#163abd}.detail-table small{display:block}.detail-table td:not(:first-child){text-align:right}footer{display:flex;justify-content:space-between;gap:8px;font-size:11px;background:#303238;color:#f1f1f1;padding:8px 12px}dialog{width:550px;max-width:94vw;max-height:90vh;overflow:auto;border:1px solid #999;background:#f4f4f4;padding:20px;color:var(--ink)}dialog::backdrop{background:#17202d66}.dialog-header{display:flex;justify-content:space-between;align-items:center}.close{font-size:23px;padding:0 8px}.modifier-group{border-top:1px solid var(--line);margin:10px 0}.modifier-choice{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0}.modifier-choice small{display:block}.modifier-choice input{width:65px}.divider{border-top:1px solid var(--line);margin:14px 0}#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:#283c55;color:white;padding:12px 20px;z-index:10;max-width:90vw}#submission-status{overflow-wrap:anywhere}.receipt-lines{line-height:1.7}#modifier-error{color:#a22b24}
@media(max-width:1250px){.rail{width:175px}.workspace{margin-left:175px}header{margin-left:-175px}.editor-bottom{grid-template-columns:minmax(330px,1.4fr) minmax(210px,1fr)}.payment-panel{grid-column:1/-1}.payment-panel .payment-details{max-width:450px}.address-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tabs-note{display:none}}
@media(max-width:760px){.rail{position:static;width:auto;flex-direction:row;flex-wrap:wrap;padding:0}.navigation-title,.navigation-group,.navigation-caption{display:none}.rail-button{padding:7px;font-size:11px;flex:1}.workspace{margin-left:0}header{margin-left:0;height:auto;min-height:35px;flex-wrap:wrap;gap:4px;padding:6px}.brand{font-size:12px}.mode{display:none}.notice{flex-direction:column}.page-heading{align-items:flex-start;flex-direction:column}.branch-label{width:100%}.branch-label select{flex:1;min-width:0}.tabs{gap:0;flex-wrap:wrap}.tab{font-size:12px;padding:7px 10px}.sync-bar{flex-wrap:wrap}#sync-status{flex-basis:100%}.section-toolbar .search{flex-basis:100%}.editor-top,.editor-bottom,.detail-bottom{grid-template-columns:minmax(0,1fr)}.payment-panel{grid-column:auto}.cart-table-head,.cart-line{grid-template-columns:minmax(75px,1fr) 82px 53px 59px 20px;font-size:10px}.stepper{gap:1px}.cart-line{gap:0}.stepper button{width:20px;padding:0}.client-columns{grid-template-columns:1fr}.client-heading,.incoming,.detail-top{flex-direction:column;align-items:flex-start}.editor-actions{justify-content:stretch}.editor-actions button{flex:1}.order-layout{min-height:480px}.detail-table th,.detail-table td{padding:5px}.detail-table{font-size:11px}.products{max-height:280px}.client-fields>.field{grid-template-columns:80px minmax(0,1fr)}footer{font-size:10px}#orders-date{max-width:145px}}

.login-screen{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr);place-items:center;padding:24px}.login-card{width:100%;max-width:390px;min-width:0;border:1px solid var(--line);background:#fafafa;padding:28px;box-shadow:0 4px 20px #0000000c}.login-card h1{font-size:23px;margin:16px 0}.login-card .field{align-items:stretch;display:flex;flex-direction:column;gap:7px;margin:18px 0}.login-card input{width:100%;min-height:36px}.login-card button{width:100%;min-height:36px}.login-card .eyebrow{font-size:11px;letter-spacing:1px;color:var(--muted)}#login-error:empty{display:none}#operator-identity{font-weight:bold}

.voice-panel {display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:12px 20px;background:#edf5f0;border-bottom:1px solid #ccd9d0}.voice-panel span {flex:1;min-width:220px}.voice-panel button {padding:7px 12px}

.dish-comment{display:block;width:100%;margin-top:6px;font:inherit;padding:5px;box-sizing:border-box}#ready-asap{margin-top:4px;align-self:flex-start}#ready-asap.active{background:#d8e6f5;border-color:#779cc7;color:#234f7a}

.phone-entry{display:flex;align-items:center;min-width:0;width:100%;background:white;border:1px solid #a7abb1}.phone-prefix{padding:0 8px;color:#202b3a;flex-shrink:0}.phone-entry #phone{border:0;min-width:0;width:100%;flex:1}.phone-entry:focus-within{outline:2px solid #779cc7;outline-offset:1px}

.bonus-balance{margin:12px 0;padding:12px;background:#edf5e9;border:1px solid #bed3b4;color:#253d27}.bonus-wallet{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:8px 0}.bonus-wallet b{font-size:22px;white-space:nowrap}.bonus-balance small{display:block;color:#52634f}

.routing-status{padding:8px;background:#eaf0f8;border:1px solid #b6c7dd;font-size:12px;line-height:1.5}.routing-status.error-text{background:#fff1d9;border-color:#dfbf92}.order-branch{display:block;font-size:10px;font-weight:400;color:#586579;margin-top:3px;white-space:normal}#orders-branch{max-width:180px}#point-mode{flex-basis:100%}

.street-field{position:relative}#street-suggestions{position:absolute;top:46px;left:0;min-width:240px;width:max-content;max-width:340px;max-height:240px;overflow:auto;background:#fff;border:1px solid #aeb8c3;box-shadow:0 4px 14px #0002;z-index:20}#street-suggestions [role=option]{display:block;padding:9px 12px;cursor:pointer}#street-suggestions [role=option]:hover,#street-suggestions [aria-selected=true]{background:#e4eefb}#street-suggestions small{display:block;color:#596778}#street-hint{font-size:11px;color:#596778}

/* Keep the order workspace within a laptop viewport; long lists scroll locally. */
@media (min-width:1100px) and (min-height:600px){
 body:has(#menu-view:not([hidden])) .rail{width:155px}
 body:has(#menu-view:not([hidden])) .workspace{margin-left:155px;height:100dvh;display:flex;flex-direction:column}
 body:has(#menu-view:not([hidden])) header{margin-left:-155px;flex-shrink:0}
 body:has(#menu-view:not([hidden])) .voice-panel{padding:4px 8px;gap:6px;flex-shrink:0;font-size:11px}
 body:has(#menu-view:not([hidden])) .voice-panel button{padding:3px 7px}
 body:has(#menu-view:not([hidden])) .voice-panel span{min-width:120px}
 body:has(#menu-view:not([hidden])) .notice{padding:3px 8px;flex-shrink:0}
 body:has(#menu-view:not([hidden])) main{flex:1;min-height:0;display:flex;flex-direction:column;padding:4px 6px}
 body:has(#menu-view:not([hidden])) .page-heading{display:none}
 body:has(#menu-view:not([hidden])) .tabs{margin-bottom:3px;flex-shrink:0}
 body:has(#menu-view:not([hidden])) .tab{padding:4px 12px}
 body:has(#menu-view:not([hidden])) .sync-bar{margin-bottom:3px;flex-shrink:0}
 body:has(#menu-view:not([hidden])) footer{padding:3px 8px;flex-shrink:0}
 #menu-view{flex:1;min-height:0;display:flex}
 .delivery-editor{width:100%;min-height:0;display:flex;flex-direction:column}
 .cart-title{padding:0 4px;flex-shrink:0}.cart-title h2{margin:2px 0}
 .editor-top{grid-template-columns:minmax(240px,1fr) minmax(0,2fr);gap:6px;margin-bottom:4px;flex-shrink:0}
 .delivery-editor fieldset{padding:5px 7px}
 .delivery-editor .field{margin:3px 0;gap:5px}
 .delivery-editor .client-fields>.field{grid-template-columns:75px minmax(0,1fr)}
 .delivery-editor .routing-status{padding:3px 6px;margin:3px 0;font-size:11px}
 .delivery-editor #point-mode{flex-basis:auto;font-size:11px}
 .delivery-editor #ready-asap{margin-top:0}
 .delivery-editor .address-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
 .delivery-editor .address-grid .field:has(#address-city),.delivery-editor .address-grid .field:has(#address-street){grid-column:span 2}
 .delivery-editor .address-grid input{min-width:0;margin-top:2px}
 .delivery-editor .client-panel{max-height:clamp(110px,calc(100vh - 600px),360px);overflow:auto;margin-top:4px;padding:4px}
 .editor-bottom{grid-template-columns:minmax(330px,1.4fr) minmax(230px,1fr) minmax(220px,.85fr);gap:6px;min-height:0;flex:1}
 .editor-bottom>fieldset{min-height:0}.payment-panel{grid-column:auto;overflow:auto}
 .order-items{min-height:0}.cart-table-head,.cart-line{grid-template-columns:minmax(95px,1fr) 75px 58px 65px 22px;font-size:11px}
 #cart-lines{min-height:0;overflow:auto}.cart-table-head{flex-shrink:0}
 .catalog{display:flex;flex-direction:column;gap:5px;align-content:start}
 .editor-bottom{grid-template-columns:minmax(360px,1.7fr) minmax(210px,.9fr) minmax(230px,.95fr)}
 .product{padding:5px}.payment-details{padding:5px 0}.cart-note{margin:3px 0}
 .editor-actions{margin-top:4px;padding:4px 2px;gap:4px;flex-shrink:0}.editor-actions button{padding:3px 7px;font-size:11px}
 .editor-state{flex-shrink:0;max-height:38px;overflow:auto}.editor-state p{margin:2px 0}
 .delivery-editor .empty{padding:12px 6px}
 .delivery-editor #street-suggestions{top:100%;max-height:180px}
}
@media (min-width:1100px) and (min-height:600px){
 .delivery-editor .editor-top input,.delivery-editor .editor-top select,.delivery-editor .editor-top button{min-height:24px;padding-top:2px;padding-bottom:2px}
 .delivery-editor .editor-top .field{margin:2px 0}
 .delivery-editor #address-field{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:6px;align-items:start}
 .delivery-editor #resolve-delivery{grid-column:2;grid-row:1;margin-top:2px;font-size:11px}
 .delivery-editor #address-field>.field:has(#delivery-zone){grid-column:1;grid-row:1}
 .delivery-editor #address-field>.field:has(#delivery-zone) small{display:none}
 .delivery-editor #address-field>.street-field,.delivery-editor #address-field>.address-grid{grid-column:1/-1}
 .delivery-editor .routing-status{line-height:1.25;margin:2px 0}
 .delivery-editor .catalog .section-toolbar{position:relative}
 .delivery-editor #product-count{display:none}
 .delivery-editor .categories{max-height:28px}
}
@media (min-width:1100px) and (min-height:600px){
 .payment-panel>#calculate{position:sticky;bottom:0;z-index:1;box-shadow:0 -4px 0 #f7f7f7}
}
@media (min-width:1100px) and (min-height:600px){
 .delivery-editor .address-grid:has(label:not([hidden])>#address-city){grid-template-columns:repeat(9,minmax(0,1fr))}
}
.payment-row small{grid-column:1/-1;color:#596778;font-size:10px}.payment-row small:empty{display:none}
.edit-modifiers{display:block;margin-top:3px;padding:2px 5px;min-height:22px;font-size:11px;color:#234f7a}
#payment-remainder{margin:5px 0}
.cart-product-name{border:0;background:transparent;padding:0;min-height:0;text-align:left;color:#153bc7;font:inherit;cursor:pointer}
.menu-product{display:flex;align-items:center;border-bottom:1px solid #ddd;background:white}.menu-product>.product{flex:1;min-width:0;border-bottom:0}.composition-button{font-size:10px;padding:2px 5px;margin-right:4px;min-height:24px}
#composition-text{white-space:pre-wrap;line-height:1.6}#order-payment-note{overflow-wrap:anywhere;max-height:54px;overflow:auto;margin:4px 0}
/* Operational status and controls live in the navigation column. */
@media(min-width:761px){
 .rail,body:has(#menu-view:not([hidden])) .rail{width:240px;overflow-y:auto;padding-bottom:6px}
 .workspace,body:has(#menu-view:not([hidden])) .workspace{margin-left:240px}
 header,body:has(#menu-view:not([hidden])) header{margin-left:-240px}
 .rail .navigation-title{padding:8px 12px;font-size:14px}
 .rail .navigation-group{padding:7px 12px;font-size:13px}
 .rail .rail-button{padding:7px 12px}
 .rail .tabs{display:flex;flex-direction:column;align-items:stretch;gap:0;margin:0;border:0;flex-shrink:0}
 .rail .tab{padding:7px 12px;text-align:left;border:0;box-shadow:none;font-size:12px;white-space:normal}
 .rail .tab.active{background:#c8d6e9;color:#183c6b}
 .rail .tabs-note{display:none}
 .rail .voice-panel,body:has(#menu-view:not([hidden])) .rail .voice-panel{display:grid;grid-template-columns:1fr 1fr;padding:8px;gap:5px;font-size:11px;flex-shrink:0}
 .rail .voice-panel strong,.rail .voice-panel span{grid-column:1/-1;min-width:0;line-height:1.4}
 .rail .voice-panel button{font-size:11px;min-width:0;padding:4px;white-space:normal}
 .rail .sync-bar{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:8px;margin:0;border-bottom:1px solid var(--line);flex-shrink:0}
 .rail #sync-status,.rail .demo-switch{grid-column:1/-1;line-height:1.5}
 .rail .sync-bar button{font-size:11px;padding:4px}
 .rail .notice{display:flex;flex-direction:column;padding:8px;gap:5px;line-height:1.4;flex-shrink:0}
 .rail .navigation-caption{padding:8px;font-size:10px;line-height:1.4}
 .order-layout{min-height:calc(100vh - 150px)}
 .editor-bottom{grid-template-columns:minmax(310px,1.3fr) minmax(210px,1fr) minmax(205px,.85fr)}
}
@media(max-width:760px){
 .rail .tabs{flex:1;display:flex;margin:0;flex-wrap:wrap}
 .rail .voice-panel,.rail .sync-bar,.rail .notice{width:100%;margin:0}
 .rail .tabs-note{display:none}
}

.registry-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 8px}
.registry-controls label{display:flex;align-items:center;gap:5px}
.registry-controls input{width:108px}.registry-controls .muted{font-size:11px}
.registry-section{min-width:1080px;border-bottom:1px solid var(--line)}
.registry-section>summary{cursor:pointer;display:list-item;padding:9px 12px;background:#e4e9ef;color:#243e5c}
.registry-section>summary>span{margin-left:18px;font-size:12px}
.registry-section>summary .registry-group-sum{float:right;margin-right:12px}
.registry-level-1>summary{padding-left:28px;background:#f0f2f5;color:var(--ink)}
.registry-section .order-row{border-left:3px solid #d6dfe9}
.registry-section summary:focus-visible{outline:2px solid #6c96c6;outline-offset:-2px}
@media(max-width:760px){.registry-controls{gap:6px}.registry-controls>label:first-child{width:100%}}

.order-countdown{font-variant-numeric:tabular-nums}.order-row small:has(.order-countdown){display:block;margin-top:4px;font-size:11px}#draft-countdown{grid-column:1/-1;color:var(--muted)}
.order-note-badge{display:inline-block;font-size:11px;margin-left:4px;vertical-align:middle;cursor:help}
.cancel-cause{color:#962a16!important;font-weight:600;word-break:break-word}
.dish-comment-note{display:block;color:#854d0e;font-size:11px;margin-top:2px;font-style:italic}

.order-history{padding:10px 12px;margin-bottom:8px;border:1px solid var(--line);background:#f3f5f8}.order-history h3{margin:0 0 8px}.order-history dl{display:grid;grid-template-columns:repeat(3,max-content minmax(130px,1fr));gap:6px 12px;margin:0 0 8px}.order-history dt{color:var(--muted)}.order-history dd{margin:0;font-variant-numeric:tabular-nums}@media(max-width:1100px){.order-history dl{grid-template-columns:max-content 1fr}}

.workspace-tabs{display:flex;gap:4px;align-items:end;padding:6px 8px 0;background:#dce2ea;border-bottom:1px solid var(--line);overflow-x:auto;min-height:38px}
.workspace-tab{display:flex;flex-shrink:0;align-items:center;background:#e7ebf0;border:1px solid #bbc3ce;border-bottom:0;border-radius:8px 8px 0 0;max-width:260px}
.workspace-tab.active{background:#f3f3f3;box-shadow:0 1px #f3f3f3}
.workspace-tab button{border:0;background:transparent;min-height:30px;padding:5px 10px}
.workspace-tab [role=tab]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;max-width:220px}
.workspace-tab.active [role=tab]{font-weight:bold;color:#183c6b}
.workspace-tab [data-close-view]{padding:2px 7px;margin-right:4px;min-height:24px;font-size:18px;border-radius:4px}
.workspace-tab [data-close-view]:hover{background:#ccd3dd}
 .workspace-tabs{flex-shrink:0}

.bonus-block{margin:6px 0 8px;padding:8px;background:#edf5e9;border:1px solid #bed3b4;color:#253d27}.bonus-line{margin:0 0 6px;font-size:11px;line-height:1.5}.bonus-block button{width:100%}

/* Compact catalog: dropdowns instead of chips and a scrolling list. */
.catalog .search{flex:none;width:100%}.catalog select{width:100%;font-size:12px}.catalog-tools{display:flex;align-items:center;gap:8px}.catalog-tools button{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cart-title .eyebrow{display:none}.bonus-balance{margin:6px 0;padding:6px 8px}.bonus-wallet{margin:2px 0}.bonus-wallet b{font-size:15px}
#draft-countdown:empty,#street-hint:empty,#order-payment-note:empty{display:none}
.delivery-editor .client-panel h3{margin:4px 0;font-size:12px}.delivery-editor .client-panel .client-history{padding:2px 0}
.payment-details summary{font-size:12px;cursor:pointer}.editor-actions .text-button{font-size:11px}

/* Tighter client card and payment panel so the order screen fits a laptop without scrolling. */
@media (min-width:1100px) and (min-height:600px){
 .delivery-editor .client-panel{max-height:clamp(100px,calc(100vh - 610px),340px);padding:3px 6px}
 .delivery-editor .client-heading h2{font-size:13px;margin:2px 0}.delivery-editor .client-heading .muted{margin:0}
 .delivery-editor .bonus-balance{margin:3px 0;padding:3px 6px}.delivery-editor .bonus-wallet b{font-size:13px}.delivery-editor .bonus-balance strong{display:none}
 .delivery-editor .client-columns{max-height:none}
 .bonus-block{margin:3px 0 5px;padding:4px 6px}.bonus-line{margin:0 0 3px}.bonus-block button{min-height:24px;padding:2px 6px}
 .payment-panel .subtotal{padding:3px 0}.payment-panel .field{margin:2px 0}#payment-remainder{margin:2px 0}
 .payment-panel .payment-row{margin:2px 0}.payment-row small{font-size:9px}
 #order-payment-note{max-height:30px;margin:2px 0}
}

.menu-search-field{position:relative}#menu-suggestions{position:absolute;top:100%;left:0;right:0;max-height:240px;overflow:auto;background:#fff;border:1px solid #aeb8c3;box-shadow:0 4px 14px #0002;z-index:20}
#menu-suggestions [role=option]{display:flex;justify-content:space-between;gap:8px;width:100%;text-align:left;border:0;border-bottom:1px solid #eee;background:#fff;padding:6px 10px;font-size:12px;cursor:pointer}
#menu-suggestions [role=option]:hover,#menu-suggestions [aria-selected=true]{background:#e4eefb}#menu-suggestions [role=option]:disabled{color:#95999e;cursor:not-allowed}#menu-suggestions b{white-space:nowrap;color:#153bc7;font-weight:400}
.menu-search-field .search{width:100%;display:flex}

.call-actions{display:flex;gap:6px;flex-wrap:wrap}.courier-field{grid-column:1/-1}
.coupon-entry{display:flex;align-items:center;gap:6px;width:100%;margin-top:5px}
.coupon-entry input{flex:1;min-width:0;margin-top:0!important}
.coupon-entry button{white-space:nowrap;flex-shrink:0;min-height:28px;padding:4px 12px;background:#305e91;color:white;border:1px solid #234770;border-radius:0}
.coupon-entry button:hover{background:#254a73;border-color:#1c395a}
.coupon-entry button:disabled{background:#d5dae0;color:#88919b;border-color:#bdc3cb;cursor:not-allowed}

.contact-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:6px;font-size:11px}.contact-result{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.contact-result button{min-height:24px;padding:2px 8px}

/* Operator presence: online only while the SIP line is registered. */
.voice-online,.line-state{display:inline-block;padding:1px 8px;border-radius:10px;font-size:11px;font-weight:bold;line-height:1.6;vertical-align:middle}
.voice-online.online,.line-state.online{background:#d8efd6;color:#1d5a24}.voice-online.offline,.line-state.offline{background:#f6d9d5;color:#8a2a20}.voice-online.pending,.line-state.pending{background:#fbe9c6;color:#7a5410}
.line-state::before{content:'';display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px;background:currentColor}

.pay-amount{display:inline-flex;align-items:center;gap:6px;font-size:11px}.pay-amount input{width:110px;min-height:24px;font-size:12px}

/* Phone workspace: document scrolling, touch controls and a card registry. */
#mobile-navigation{display:none}
@media(max-width:760px){
 body{font-size:14px}
 button,input,select,textarea{font-size:16px;min-height:44px}
 button{touch-action:manipulation}
 input[type=checkbox]{min-height:24px;width:24px}
 .rail{display:none}
 body.mobile-navigation-open .rail{display:flex;position:fixed;inset:105px 0 0;z-index:30;overflow-y:auto;align-content:flex-start;background:#f3f3f3;padding-bottom:env(safe-area-inset-bottom)}
 .rail-button{flex:1 1 45%;font-size:14px;min-height:48px}
 .rail .voice-panel{padding:12px;gap:8px;display:grid;grid-template-columns:1fr 1fr}
 .rail .voice-panel strong,.rail .voice-panel #voice-status{grid-column:1/-1;min-width:0}
 .rail .voice-panel span{min-width:0}
 .rail .sync-bar{padding:12px}.rail .notice{padding:12px}
 header{position:sticky;top:0;z-index:31;min-height:105px;align-content:center;gap:4px 8px}
 #mobile-navigation{display:block;font-size:14px;min-height:44px}
 .brand{flex:1;font-size:12px}
 .header-right{width:100%;gap:8px;justify-content:space-between;min-width:0}
 .header-right button{min-height:44px;font-size:13px;padding:4px;overflow-wrap:anywhere}
 .header-right .line-state{display:inline-block;white-space:nowrap}
 .workspace-tab button,.workspace-tab [data-close-view]{min-height:44px}
 .workspace-tabs{padding-top:4px}
 main{padding:8px}
 .section-toolbar>button{flex:1 1 auto}
 .section-toolbar>label:not(.search){width:100%}
 .section-toolbar .search{min-width:0}
 .registry-controls>label{flex-wrap:wrap;max-width:100%}
 .registry-controls>label:first-child select{flex:1;min-width:0}
 .order-layout{min-height:0;padding-bottom:0;background:transparent;border:0}
 .order-list{overflow:visible}
 .registry-group,.registry-section{min-width:0}
 .registry-section>summary{padding:12px 8px;min-height:44px;overflow-wrap:anywhere}
 .registry-section>summary>span{margin-left:6px}
 .registry-section>summary .registry-group-sum{float:none;display:block;margin:6px 0 0}
 .table-head{display:none}
 .order-row{min-width:0;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px;margin:8px 0;border:1px solid var(--line);border-radius:8px;font-size:14px}
 .order-row>span{padding:0;border:0;white-space:normal;overflow-wrap:anywhere;overflow:visible;text-align:left}
 .order-row>span::before{display:block;color:#596778;font-size:11px;margin-bottom:3px;font-weight:normal}
 .order-row>span:nth-child(1)::before{content:'Заказ'}
 .order-row>span:nth-child(2)::before{content:'Ко времени'}
 .order-row>span:nth-child(3)::before{content:'Тип заказа'}
 .order-row>span:nth-child(4)::before{content:'К оплате'}
 .order-row>span:nth-child(5)::before{content:'Клиент'}
 .order-row>span:nth-child(6)::before{content:'Телефон'}
 .order-row>span:nth-child(7){grid-column:1/-1}
 .order-row>span:nth-child(7)::before{content:'Адрес'}
 .order-row>span:nth-child(8){grid-column:1/-1;font-weight:bold}
 .registry-total{position:static;text-align:left;line-height:1.5}
 .editor-top,.editor-bottom{grid-template-columns:minmax(0,1fr);min-height:0}
 .client-fields>.field{display:flex;flex-direction:column;align-items:stretch}
 .field{font-size:14px}.field input,.field textarea,.field select{min-width:0}
 .address-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .address-grid .field:has(#address-city),.address-grid .field:has(#address-street){grid-column:1/-1}
 .segmented{display:flex;margin:8px 0}.segmented button{flex:1}
 .cart-table-head{display:none}
 #cart-lines{border-top:1px solid var(--line)}
 .cart-line{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 44px;gap:8px;padding:10px;font-size:14px}
 .cart-line-name{grid-column:1/-1;padding:0}
 .cart-line .stepper{grid-column:1/3;grid-row:3;justify-content:flex-start;gap:16px}
 .stepper button{width:44px;min-height:44px}
 .cart-line>[data-remove]{grid-column:3;grid-row:3;min-height:44px;font-size:24px}
 .cart-line>span.numeric{text-align:left}.cart-line>span.numeric::before{content:'Цена: ';font-size:12px;color:var(--muted)}
 .cart-line>strong.numeric{text-align:right}
 .cart-product-name,.edit-modifiers{min-height:44px;font-size:14px}
 .catalog{display:flex;flex-direction:column;gap:8px}
 .catalog select,.payment-row input,.payment-row select{font-size:16px}
 .payment-row{grid-template-columns:minmax(0,1fr) 100px}
 .payment-details summary{font-size:14px;min-height:44px;padding:12px 0}
 .editor-actions{display:grid;grid-template-columns:1fr;padding:12px 0;gap:8px}
 .editor-actions button{font-size:14px;min-height:48px}
 .client-columns{max-height:none}.client-address{font-size:14px}
 .detail-top,.client-heading{gap:8px}
 .detail-bottom{min-height:0}.detail-bottom>fieldset{overflow-x:auto}
 dl,.order-history dl{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}
 .detail-table{font-size:13px}
 .incoming{overflow-wrap:anywhere}.incoming button{min-height:44px}
 dialog{max-width:calc(100vw - 16px);max-height:calc(100dvh - 24px);padding:14px}
 .dialog-header{gap:8px}.dialog-header h2{overflow-wrap:anywhere;min-width:0}
 #street-suggestions{min-width:0;max-width:100%;width:100%;top:100%}
 #street-suggestions [role=option],#menu-suggestions [role=option]{min-height:44px;font-size:16px}
 .login-screen{padding:16px}.login-card{padding:20px}.login-card input,.login-card button{min-height:48px}
 footer{flex-wrap:wrap;padding-bottom:max(8px,env(safe-area-inset-bottom))}
}

/* 10.09.2026: menu back to a scrollable list (operators' request) */
.menu-product{display:flex;align-items:center;border-bottom:1px solid #ddd;background:white}.menu-product>.product{flex:1;min-width:0;border-bottom:0}.composition-button{font-size:10px;padding:2px 5px;margin-right:4px;min-height:24px}.categories{max-height:54px;flex-shrink:0;margin-bottom:4px}.products{max-height:420px}

#customer-risk-dialog{width:min(760px,94vw);max-height:90vh;overflow:auto}.customer-risk-badge{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:8px 0;padding:8px;border:1px solid #bec9d5}.risk-warning{background:#fff0e9;color:#962a16;font-weight:700}.customer-risk-badge span{white-space:pre-wrap;overflow-wrap:anywhere;flex:1}#customer-risk-dialog [data-options]{display:flex;gap:8px;margin:10px 0}#customer-risk-dialog [data-options] select{min-width:0;flex:1}

.order-processing{display:inline-block;margin-top:4px;padding:2px 8px;border-radius:4px;font-weight:700;white-space:normal;line-height:1.3;font-size:12px}
.order-processing.processing-mine{background:#dcfce7;color:#15803d;border:1px solid #86efac}
.order-processing.processing-foreign{background:#fef3c7;color:#b45309;border:1px solid #fcd34d;font-size:12px;box-shadow:0 1px 2px rgba(0,0,0,0.05)}
.order-row.foreign-processing{background:#fffbeb!important;border-left:4px solid #f59e0b!important}
.order-row.foreign-processing:hover{background:#fef3c7!important}
.order-row.my-processing{background:#f0fdf4!important;border-left:4px solid #22c55e!important}
.order-row.my-processing:hover{background:#dcfce7!important}
.order-claim-warning{background:#fef2f2;border:1px solid #f87171;color:#991b1b;padding:8px 12px;border-radius:6px;font-weight:600;margin:6px 0;line-height:1.4}
.cancellation-details{margin:0 0 10px}.cancel-comment-full{white-space:pre-wrap}
@media(min-width:761px){.order-row>.cancel-comment{white-space:pre-wrap;overflow-wrap:anywhere}}
@media(max-width:760px){.order-row>.cancel-comment{grid-column:1/-1}.order-row>.cancel-comment::before{content:'Комментарий к отмене'}}

.line-hint{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0 0;padding:8px 12px;border:1px solid #d9a441;border-radius:6px;background:#fff6dc;color:#4a3a00}.line-hint strong{white-space:nowrap}.line-hint span{flex:1 1 260px;min-width:0}.line-hint button{padding:4px 10px}#line-hint-close{margin-left:auto}
#line-help-dialog{width:min(560px,94vw)}#line-help-dialog .line-help-steps{padding-left:20px;line-height:1.45}#line-help-dialog .line-help-steps li{margin:6px 0}#line-help-dialog .dialog-actions{margin:12px 0 0}#line-state.offline{cursor:pointer}
#discount-dialog{width:min(900px,94vw);max-height:90vh;overflow:auto}.discount-columns{display:grid;grid-template-columns:minmax(180px,1fr) minmax(280px,2fr);gap:24px}.discount-option{padding:14px 0;border-bottom:1px solid #dce0e5}.discount-option>label:first-child{display:flex;gap:10px;align-items:center}.discount-option input[type=checkbox]{width:18px;height:18px;flex:none}.discount-option small{display:block;color:#53606e;margin:8px 0 0 28px}.discount-option .field{margin:12px 0 0 28px}.discount-added-row{display:flex;gap:8px;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #dce0e5}#choose-discounts{width:100%;white-space:normal;text-align:left;margin-bottom:8px}#discount-summary{margin:4px 0 12px;font-weight:600}@media(max-width:650px){.discount-columns{grid-template-columns:1fr}}
.client-favorites{max-height:190px;overflow:auto;border:1px solid var(--line);background:white;padding:2px 6px}.client-fav{display:grid;grid-template-columns:minmax(0,1fr) auto 28px;gap:6px;align-items:center;font-size:11px;padding:3px 0;border-bottom:1px solid #eee}.client-fav button{padding:0;min-height:22px}.client-order{border:1px solid var(--line);background:white;margin:3px 0;font-size:11px}.client-order summary{display:flex;justify-content:space-between;gap:8px;padding:5px 6px;cursor:pointer;list-style:none}.client-order summary::-webkit-details-marker{display:none}.client-order-body{padding:4px 6px 8px;border-top:1px solid #eee}.client-order-body .detail-table td,.client-order-body .detail-table th{padding:3px 4px}.client-order-body p{margin:6px 0}
.client-block{margin:4px 0}.client-block>summary{font-weight:bold;font-size:12px;cursor:pointer;padding:4px 0}

/* Existing orders in the regular card. */
#existing-order-details{grid-column:1/-1}#menu-view[data-existing-order] .delivery-editor{overflow:auto}#menu-view[data-existing-order] .editor-bottom{min-height:230px}#existing-order-extra{grid-column:1/-1}#existing-order-extra:not([hidden]){display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 16px}#existing-order-extra legend{grid-column:1/-1}#menu-view[data-existing-order] .cart-title{display:flex;gap:8px 20px;align-items:center;flex-wrap:wrap;padding:6px 4px}#menu-view[data-existing-order] .cart-title h2{font-size:14px;font-weight:600}#existing-order-status{margin:0;flex-basis:100%;color:#536371}#existing-order-number{font-size:20px}@media(max-width:800px){#existing-order-extra:not([hidden]){grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Индикация «идёт проверка/пересчёт»: бегущие точки, чтобы оператор видел, что нажатие сработало. */
.working::after{content:'';display:inline-block;width:1.2em;text-align:left;animation:sushibox-dots 1.2s steps(4,end) infinite}
@keyframes sushibox-dots{0%{content:''}25%{content:'.'}50%{content:'..'}75%{content:'...'}}
#coupon-apply:disabled.busy,#calculate:disabled.busy{color:#365878;background:#dfe8f3;border-color:#9fb6d2;cursor:progress}
.archive-row{display:flex;gap:6px;align-items:stretch;margin:4px 0}.archive-row .client-address{flex:1;margin:0}.archive-delete{font-size:11px;padding:2px 8px;min-height:0}
