*{box-sizing:border-box}body{margin:0;background:#f3f5f4;color:#172c26;font:16px Arial,sans-serif}header{display:flex;align-items:center;padding:10px 12px;background:#211914;color:#ffcd45}header img{width:45px;height:45px;margin-right:10px}header strong{flex:1}small{display:block;font-size:12px;line-height:1.4}button{font:inherit;font-weight:bold;min-height:48px;padding:10px;border:1px solid #cad6ce;border-radius:10px;background:#fff;color:#172c26;cursor:pointer}button:disabled{opacity:.5}header button{font-size:13px;background:#ffcd45}#connection{margin:0;padding:8px 12px;background:#e5f1e9;font-size:12px}#connection.offline{background:#ffe2d7;color:#7b230d}nav{display:flex;position:sticky;top:0;background:#edf0ee;padding:5px;z-index:400}nav button{flex:1;padding:6px 2px;font-size:11px;margin:2px}nav button strong{display:block;font-size:21px}nav button.selected,.primary{background:#087f5b;color:white;border-color:#087f5b}main{padding:8px 10px 20px;max-width:760px;margin:auto}.card{background:white;border:1px solid #dce5df;border-left:5px solid #cf9c20;border-radius:12px;padding:12px;margin:8px 0}.card h2{font-size:20px;margin:8px 0}.address{background:#e7f0ff;color:#244771;padding:10px;border-radius:8px;font-size:20px;font-weight:bold}.items{line-height:1.4;border-top:1px solid #ddd;margin-top:10px}.item{padding:8px 0;border-bottom:1px solid #eee}.actions{display:flex;flex-wrap:wrap;margin-top:10px}.actions button{width:100%;margin:4px 0}.note{background:#fff4d6;padding:10px;white-space:pre-wrap}.muted{color:#52675e;font-size:13px}a{color:#087f5b}#editor{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.65);z-index:1000;overflow:auto;padding:12px}#editor[hidden]{display:none}#editor section{background:white;border-radius:14px;padding:15px;max-width:550px;margin:auto}#close{float:right;font-size:12px;min-height:36px}#form h2{margin:5px 0 20px}#form .actions button{width:31%;margin:1%;min-height:58px}#message{position:fixed;bottom:0;left:0;right:0;margin:0;background:#ffcd45;color:#271e0b;padding:0;z-index:1200}#message:not(:empty){padding:12px}#map{height:62vh;border-radius:12px}#map-status{font-size:14px}input{min-height:44px;font:inherit}#form input[type=checkbox]{width:24px;vertical-align:middle}#form label{display:block;margin:15px 0}

.venue-tools{display:flex;padding:5px}.venue-tools button{flex:1;font-size:13px;margin:2px}.menu-edit-button{display:block;width:100%;text-align:left;margin:6px 0}#form label{font-size:14px;clear:both}#form input:not([type=checkbox]),#form textarea{display:block;width:100%;padding:10px;border:1px solid #aaa;border-radius:7px}#form textarea{min-height:110px}.hours-row{display:flex;align-items:center}.hours-row strong{width:35%;font-size:13px}.hours-row label{width:31%;margin:5px!important;padding:4px}#form>button{margin:5px 0}

/* Compact order-first header and left management drawer. */
#venue-menu{font-size:25px;min-width:44px;margin:0 9px 0 0;padding:6px;background:#483321;color:#ffda65;border:1px solid #806036}header img{width:34px;height:38px}header strong{font-size:16px}header #refresh{display:none}#venue-shade{position:fixed;top:0;bottom:0;left:0;right:0;background:rgba(0,0,0,.6);z-index:800}#venue-drawer{position:fixed;top:0;bottom:0;left:0;width:85%;max-width:330px;box-sizing:border-box;padding:18px;background:#211a15;color:#fff4df;z-index:810;overflow:auto;box-shadow:10px 0 40px rgba(0,0,0,.3)}#venue-drawer button{display:block;width:100%;text-align:left;padding:16px 12px;margin:10px 0;background:#382b21;color:#fff4df;border:1px solid #675039;border-radius:10px;font-size:16px}#venue-drawer button:nth-of-type(2){background:#a3182b;border-color:#dc4254}#venue-drawer p{color:#cab89d}#venue-drawer[hidden],#venue-shade[hidden],.phone-product[hidden]{display:none!important}.phone-product{display:flex!important;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #ded7c9;gap:10px}.phone-product input{width:65px!important;flex-shrink:0}#form select{display:block;padding:12px;width:100%;box-sizing:border-box;margin:8px 0 16px}

.phone-products{max-height:300px;overflow:auto;border:1px solid #dce5df;border-radius:10px;padding:0 10px;margin-bottom:16px}

/* Food-first compact queue; customer and secondary actions open on demand. */
.order-compact{padding:10px;margin:7px 0;border-left-width:4px}.order-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px;gap:6px}.order-heading small{font-size:11px;color:#52675e}.order-heading>strong{font-size:14px;white-space:nowrap}.order-compact .items{border:0;margin:0}.order-compact .item{padding:5px 0;border-bottom:1px solid #edf0ed}.order-compact .item>strong{display:block;font-size:18px;line-height:1.2}.order-compact .item small{font-size:12px;line-height:1.3;margin-top:3px}.order-compact .note{font-size:12px;padding:7px;margin:6px 0;line-height:1.3}.compact-actions{display:flex;margin-top:8px;gap:6px}.compact-actions button{min-height:44px;padding:8px 6px;font-size:12px;flex:1}.compact-actions .primary{flex:1.3;font-size:16px}.compact-actions .secondary{background:#f2f5f3;color:#355148}.order-options button{display:block;width:100%;margin:10px 0;text-align:left}.order-options .danger{color:#ad2534;background:#fff0f1;border-color:#edc5cc}

/* Fulfillment stays recognizable by both whole-card color and explicit text. */
.order-compact.order-delivery{background:#e0efff;border-color:#aecce9;border-left-color:#2469ad}.order-compact.order-pickup{background:#fff0cc;border-color:#e4c777;border-left-color:#b27b12}.order-delivery .order-heading small{color:#224f7c;font-weight:bold}.order-pickup .order-heading small{color:#755009;font-weight:bold}.order-compact .item{border-bottom-color:rgba(30,55,65,.12)}.customer-inline{margin-top:9px;padding:10px;border-top:1px solid rgba(30,55,65,.2);background:rgba(255,255,255,.55);border-radius:8px;font-size:14px}.customer-inline[hidden]{display:none}.customer-inline h3{font-size:15px;margin:0 0 6px}.customer-inline p{margin:6px 0}.customer-inline .address{background:transparent;padding:0;font-size:15px}.customer-inline a{display:inline-block;padding:6px 0;font-weight:bold}.compact-actions{gap:0}.compact-actions button+button{margin-left:5px}

.order-scheduled{font-size:13px;font-weight:bold;margin:5px 0;padding:6px;background:#fff;border:1px solid #b88636;border-radius:6px;color:#694408}
/* Keep navigation accessible while the queue scrolls. */
body>header{position:sticky;top:0;z-index:110}#zone-editor label,#form fieldset label{display:block;margin:8px 0}#form fieldset{border:1px solid #b9cbbf;border-radius:10px;padding:12px;margin:12px 0}#form fieldset input{box-sizing:border-box;width:100%;padding:10px}
body>header{height:68px;z-index:500}#tabs{top:68px;z-index:400}.receipt-preview{white-space:pre-wrap;overflow-wrap:anywhere;font:15px monospace}
@media print{body>*{display:none!important}#editor{display:block!important;position:static;background:white;padding:0}#editor section{max-width:none}#close,#form>button{display:none!important}}
.dispatch-admin-back{color:#ffda65;text-decoration:none;font-weight:bold;white-space:nowrap;padding:10px;font-size:14px}.web-dispatch header>button:last-child:not(#venue-menu){font-size:12px;min-height:40px}#venue-drawer[aria-label="Menu administrácie"] button:nth-of-type(2){background:#382b21;border-color:#675039}
@media(max-width:440px){.web-dispatch header strong{font-size:13px}.web-dispatch header img{display:none}.dispatch-admin-back{padding:6px;font-size:12px}.web-dispatch header>button:last-child:not(#venue-menu){padding:6px;font-size:11px}}
.phone-products[hidden],#form label[hidden]{display:none!important}
/* Source colors persist through every order state; labels also identify the source. */
.order-compact.source-phone{background:#fff0dc;border-color:#e5bd82;border-left-color:#b36b12}
.order-compact.source-bistro{background:#f0e5ff;border-color:#cbb1ed;border-left-color:#7945ae}
.order-compact.source-bolt{background:#dff5e7;border-color:#a5d8b7;border-left-color:#18834b}
.order-compact.source-phone .order-heading small,.order-compact.source-bistro .order-heading small,.order-compact.source-bolt .order-heading small{color:#27352d}

.order-age{font-weight:700;color:#473219;background:rgba(255,255,255,.65);padding:7px 10px;border-radius:8px;display:inline-block;margin:8px 0}
