.category-row>div:first-child{display:grid;gap:4px}.category-actions{display:flex;gap:8px;align-items:center}.cover-controls{display:flex;gap:9px;margin-top:9px}.photo-preview.hidden{display:none}.category-actions .button{white-space:nowrap}.photo-trigger{border:0;padding:0;position:relative;overflow:hidden;min-height:150px;background:#ecebe4;cursor:zoom-in}.photo-trigger img{display:block;width:100%;height:100%;min-height:150px;max-height:205px;object-fit:cover;transition:transform .25s}.photo-trigger:hover img{transform:scale(1.035)}.zoom-mark{position:absolute;right:10px;bottom:10px;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#fffef0e8;color:var(--green-dark);font-weight:700}.image-lightbox{position:fixed;inset:0;z-index:100;background:#111d18d9;display:grid;place-items:center;padding:clamp(12px,4vw,45px);backdrop-filter:blur(5px)}.lightbox-card{position:relative;width:min(1100px,100%);max-height:100%;display:grid;grid-template-rows:minmax(0,1fr) auto;background:#f8f6f0;border-radius:18px;overflow:hidden;box-shadow:0 24px 90px #0007}.lightbox-image{width:100%;height:min(76vh,820px);object-fit:contain;background:#171916}.lightbox-caption{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:17px 23px}.lightbox-caption h2{font:600 clamp(21px,3vw,30px) var(--serif);margin:0}.lightbox-caption span{font-size:18px;font-weight:700;color:var(--green)}.lightbox-close{position:absolute;top:12px;right:12px;z-index:1;width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:#20231f;font-size:28px;box-shadow:0 2px 10px #0003}.lightbox-open{overflow:hidden}
@media(max-width:650px){.category-row{align-items:flex-start;gap:12px}.category-actions{flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}.category-actions .button{padding:8px 9px}.lightbox-card{width:100%;border-radius:13px}.lightbox-image{height:min(70vh,650px)}.lightbox-caption{padding:14px 16px}.lightbox-close{top:9px;right:9px}}

.ordering-panel{margin:28px clamp(20px,7vw,100px) 60px;padding:clamp(18px,3vw,30px)}
.ordering-panel .section-head{align-items:center}.add-to-cart{margin-left:10px;white-space:nowrap}
.quantity-control{display:inline-flex;align-items:center;gap:10px}.quantity-control button{width:30px;height:30px;border:1px solid var(--line);border-radius:50%;background:white;color:var(--green);font-size:18px;cursor:pointer}
.order-total{display:flex;justify-content:space-between;align-items:center;padding:17px 0;margin:12px 0;border-top:1px solid var(--line);font-size:17px}.order-total b,.bill-total b{font-size:23px;color:var(--green)}
.empty-cart{padding:22px 0}.checkout-summary{display:grid;gap:12px}.checkout-line{display:flex;justify-content:space-between;gap:15px}.checkout-line small{display:block;color:var(--muted);margin-top:3px}.tracking-list{border-top:1px solid var(--line);margin-top:25px;padding-top:20px}.tracking-list h3{font:600 21px var(--serif)}.tracking-row{padding:12px 0;border-bottom:1px solid var(--line)}.tracking-status{display:flex;align-items:center;gap:10px;margin-top:6px}.tracking-status .field-hint{margin:0}
.ordering-panel .customer-order-list{display:grid;gap:13px}.ordering-panel .customer-order-card{padding:16px 17px;border:1px solid #dfe8e3;border-radius:14px;background:#fff;box-shadow:0 5px 18px #12352b08}.ordering-panel .customer-order-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px;color:var(--ink)}.ordering-panel .customer-order-heading>span{color:var(--muted);font-size:12px}.ordering-panel .customer-order-progress{--customer-green:#07845a;position:relative;padding:2px 0 14px}.ordering-panel .customer-progress-steps{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.ordering-panel .customer-progress-steps:before,.ordering-panel .customer-progress-steps:after{content:"";position:absolute;z-index:0;top:16px;left:10%;right:10%;height:3px;border-radius:99px}.ordering-panel .customer-progress-steps:before{background:#e3eae6}.ordering-panel .customer-progress-steps:after{right:auto;width:var(--customer-progress);background:var(--customer-green);transition:width .55s ease}.ordering-panel .customer-progress-step{position:relative;z-index:1;display:grid;justify-items:center;align-content:start;gap:6px;text-align:center;color:#85918b;font-size:11px}.ordering-panel .customer-progress-icon{display:grid;place-items:center;width:34px;height:34px;border:2px solid #dce5e0;border-radius:50%;background:#fff;color:#84918b;font-size:14px;font-weight:700;transition:background .3s,border-color .3s,color .3s,box-shadow .3s,transform .3s}.ordering-panel .customer-progress-step.complete{color:#08754f}.ordering-panel .customer-progress-step.complete .customer-progress-icon{border-color:#0b9464;background:#0b9464;color:#fff}.ordering-panel .customer-progress-step.current{color:#075f43;font-weight:750}.ordering-panel .customer-progress-step.current .customer-progress-icon{width:38px;height:38px;margin-top:-2px;border-color:#07845a;background:#e5f5ed;color:#08734f;box-shadow:0 0 0 4px #07845a18;font-size:16px}.ordering-panel .customer-order-progress.is-changing .customer-progress-step.current .customer-progress-icon{animation:customer-stage-arrive .65s ease-out}.ordering-panel .customer-progress-current{margin-top:12px;padding:12px 14px;border:1px solid #dceee4;border-left:3px solid var(--customer-green);border-radius:10px;background:#f5faf7}.ordering-panel .customer-progress-current strong{display:block;color:#075f43;font-size:15px}.ordering-panel .customer-progress-current p,.ordering-panel .customer-order-progress.cancelled p{margin:4px 0 0;color:var(--muted);font-size:13px;line-height:1.45}.ordering-panel .customer-order-progress.cancelled{padding:13px 14px;border:1px solid #f0d7d3;border-left:3px solid #b95045;border-radius:10px;background:#fff8f7}.ordering-panel .customer-order-progress.cancelled strong{color:#9d3e34}.ordering-panel .customer-order-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-top:1px solid #edf0ed;padding-top:10px}.ordering-panel .customer-order-meta .field-hint{margin:0}.ordering-panel .customer-order-meta .badge{white-space:nowrap}
@keyframes customer-stage-arrive{0%{transform:scale(.9);box-shadow:0 0 0 0 #07845a35}65%{transform:scale(1.06);box-shadow:0 0 0 7px #07845a00}100%{transform:scale(1);box-shadow:0 0 0 4px #07845a18}}
@media(max-width:650px){.ordering-panel .customer-order-card{padding:14px 12px}.ordering-panel .customer-progress-steps{gap:0}.ordering-panel .customer-progress-steps:before,.ordering-panel .customer-progress-steps:after{left:10%;right:10%;top:14px;height:2px}.ordering-panel .customer-progress-icon{width:29px;height:29px;font-size:12px}.ordering-panel .customer-progress-step.current .customer-progress-icon{width:33px;height:33px}.ordering-panel .customer-progress-step{font-size:9px;line-height:1.2;overflow-wrap:anywhere}.ordering-panel .customer-order-heading{align-items:flex-start;flex-direction:column;gap:4px}.ordering-panel .customer-order-meta{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){.ordering-panel .customer-progress-steps:after,.ordering-panel .customer-progress-icon{transition:none}.ordering-panel .customer-order-progress.is-changing .customer-progress-step.current .customer-progress-icon{animation:none}}
.checkout-line.needs-attention{border-left:3px solid var(--orange);padding-left:12px}.checkout-line>div:first-child{display:grid;gap:3px}.checkout-quantity{display:flex;align-items:center;gap:8px}.checkout-line [data-qty]:disabled{opacity:.45;cursor:not-allowed}.menu-content [data-add-to-cart]:disabled,.menu-content [data-qty]:disabled{opacity:.5;cursor:not-allowed}
.payment-choice{display:flex;gap:18px;flex-wrap:wrap;border:1px solid var(--line);border-radius:12px;padding:14px 16px;margin:12px 0}.payment-choice legend{font-weight:700;padding:0 6px}.payment-choice label{display:flex;align-items:center;gap:8px}.upi-payment-box{border:1px solid var(--line);border-radius:14px;padding:18px;margin-top:12px;background:#fff}.upi-payment-box .button-row{display:flex;gap:9px;flex-wrap:wrap}.upi-payment-box .qr-box{margin:14px auto}.order-payment-confirmation{margin-bottom:14px}.order-card-head>div:last-child{display:grid;justify-items:start;gap:6px}.order-card-foot .button-row{flex-wrap:wrap}
.active-bills{display:grid;gap:12px}.active-bill{display:flex;justify-content:space-between;align-items:center;gap:18px}.active-bill h3,.order-card h3{font:600 21px var(--serif);margin:6px 0}.bill-total{display:grid;justify-items:end;gap:7px}.order-rounds-head{margin-top:32px}.order-round-list{display:grid;gap:13px}.order-card-head,.order-card-foot{display:flex;justify-content:space-between;align-items:center;gap:16px}.order-card-head .field-hint{margin:6px 0 0}.order-item-list{list-style:none;padding:10px 0;margin:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;gap:9px}.order-item-list li{display:flex;justify-content:space-between;gap:12px}.order-item-list li span{color:var(--muted);font-size:13px}.order-card-foot>span{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.order-card-foot .button-row{display:flex;gap:8px}.active-bill .button:disabled{opacity:.55;cursor:not-allowed}
.table-qr-list{display:grid;gap:14px;margin-top:20px}.table-qr-card{display:grid;gap:14px}.table-qr-info{display:flex;align-items:center;justify-content:space-between;gap:18px}.table-qr-info h3{font:600 21px var(--serif);margin:6px 0}.table-qr-info .qr-box{margin:0;min-width:180px}.table-qr-card .inline-form{margin:0}.table-qr-card .button-row{display:flex;gap:9px;flex-wrap:wrap}
#table-qr-result{margin-top:20px}.ordering-panel .notice{margin:12px 0}.order-card .badge{white-space:nowrap}
@media(max-width:650px){.ordering-panel{margin:18px 14px 40px;padding:16px}.add-to-cart{margin:10px 0 0;width:100%}.dish-meta{align-items:flex-start;flex-direction:column}.active-bill,.order-card-head,.order-card-foot,.table-qr-info{align-items:flex-start;flex-direction:column}.bill-total{justify-items:start}.order-card-foot .button-row,.table-qr-card .button-row{width:100%;flex-wrap:wrap}.tracking-status{align-items:flex-start;flex-direction:column}.ordering-panel .table-wrap{overflow-x:auto}.table-qr-info .qr-box{align-self:center}}

/* Public product landing page */
.marketing-home{background:#fbfaf7;color:#17253b}
.marketing-nav{display:flex;align-items:center;justify-content:center;gap:clamp(16px,3vw,38px);font-size:14px;font-weight:600}
.marketing-nav a{color:#445166;text-decoration:none}.marketing-nav a:hover{color:#198558}
.topbar:has(.marketing-nav){border-bottom:1px solid #e8e9e6;background:#fbfaf7;position:relative;z-index:2}
.marketing-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:clamp(35px,7vw,90px);align-items:center;padding:clamp(54px,8vw,105px) clamp(24px,7vw,105px) clamp(65px,8vw,105px);max-width:1500px;margin:auto}
.marketing-copy{max-width:580px}.marketing-copy .eyebrow,.marketing-section-intro .eyebrow,.marketing-how .eyebrow,.marketing-cta .eyebrow{color:#18865c;letter-spacing:.13em}
.marketing-copy h1{font:600 clamp(42px,6.2vw,78px)/1.02 var(--serif);letter-spacing:-.045em;color:#17253b;margin:20px 0 22px;max-width:650px}
.marketing-copy>p{font-size:clamp(16px,1.4vw,19px);line-height:1.75;color:#5d6671;max-width:570px}
.marketing-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:30px}.marketing-actions .button,.marketing-cta .button{background:#148255;color:#fff;box-shadow:0 8px 20px #14825520}
.marketing-text-link{font-weight:650;color:#34445a;text-decoration:none}.marketing-proof{display:flex;gap:24px;flex-wrap:wrap;color:#6c7681;font-size:13px;margin-top:38px}.marketing-proof span:before{content:'✓';color:#18865c;font-weight:800;margin-right:8px}
.marketing-visual{position:relative;min-height:390px;height:clamp(390px,43vw,570px);border-radius:22px;overflow:hidden;background:#e6e6df;box-shadow:0 24px 65px #17253b18}.marketing-visual:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#101a28a8)}.marketing-visual>img{width:100%;height:100%;object-fit:cover}.marketing-caption{position:absolute;z-index:1;left:24px;right:24px;bottom:22px;display:flex;align-items:center;gap:13px;color:white}.marketing-caption-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:#148255;font:700 24px var(--serif)}.marketing-caption div{display:grid;gap:4px}.marketing-caption small{color:#ffffffc9}
.marketing-features{padding:clamp(58px,8vw,100px) clamp(24px,7vw,105px);background:#f1f2ef}.marketing-section-intro{max-width:720px;margin:0 auto 38px;text-align:center}.marketing-section-intro h2,.marketing-how h2,.marketing-cta h2{font:600 clamp(30px,4.1vw,50px)/1.1 var(--serif);letter-spacing:-.025em;color:#17253b;margin:12px 0}.marketing-section-intro p,.marketing-cta p{color:#69727d;line-height:1.7}.marketing-feature-grid{max-width:1240px;margin:auto;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.marketing-feature{padding:23px 20px;background:#fff;border:1px solid #e7e9e5;border-radius:14px;box-shadow:0 7px 23px #17253b08}.feature-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#e9f5ee;color:#148255;font-size:21px}.marketing-feature h3{font:600 19px var(--serif);margin:18px 0 9px;color:#17253b}.marketing-feature p{font-size:14px;line-height:1.65;color:#6a7380;margin:0}
.marketing-how{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start;padding:clamp(62px,8vw,105px) clamp(24px,10vw,150px);max-width:1400px;margin:auto}.marketing-steps{display:grid;gap:0}.marketing-steps>div{display:flex;gap:20px;align-items:center;padding:18px 0;border-bottom:1px solid #e5e8e4;color:#485568;line-height:1.5}.marketing-steps b{color:#168257;font-size:13px;letter-spacing:.08em}
.marketing-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:clamp(30px,5vw,58px) clamp(24px,7vw,105px);margin:0 clamp(18px,5vw,70px) 55px;border-radius:18px;background:#edf4ef}.marketing-cta h2{margin:10px 0}.marketing-cta p{margin:0}.marketing-cta .button{flex-shrink:0}
.upi-readonly{display:flex;align-items:center;gap:clamp(22px,5vw,55px);flex-wrap:wrap;padding:14px 0}.upi-readonly>div{display:grid;gap:5px}.upi-readonly strong{font-size:17px;color:var(--ink)}.bill-details,.bill-round{margin-top:12px}.bill-details>summary,.bill-round>summary{cursor:pointer;font-weight:650;color:var(--green-dark);padding:9px 0}.bill-round-list{display:grid;gap:10px}.bill-round .order-card{box-shadow:none;margin:0}.closed-history{margin-top:30px}.kitchen-queue{margin-top:16px}

/* Owner operations: compact active bills with the approved navy and emerald palette. */
.dashboard-shell .sidebar{background:#10263a;border-color:#19364d;color:#e8f0f4}
.dashboard-shell .sidebar .side-label,.dashboard-shell .sidebar .sidebar-bottom{color:#b8c9d4}
.dashboard-shell .sidebar .nav-link{color:#c5d2dc}
.dashboard-shell .sidebar .nav-link:hover,.dashboard-shell .sidebar .nav-link.active{background:#17445a;color:#6ee7b7}
.dashboard-shell .main .button:not(.secondary):not(.danger){background:#059669;border-color:#059669;color:#fff}
.active-bills{gap:13px}.active-bill{border-color:#dce8e3;box-shadow:0 5px 18px #12352b0a}.active-bill-amount{display:block;margin-top:14px;font-size:clamp(24px,3vw,31px);color:#047857}.active-bill-payment-status{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-top:9px}.active-bill-payment{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.active-bill .bill-total{min-width:205px}.active-bill .bill-total .button{white-space:nowrap}.owner-orders-refresh-error{margin-bottom:14px}
.active-bill{align-items:flex-start;padding:16px 18px;gap:18px}.active-bill-info{min-width:0;flex:1}.active-bill-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.active-bill-heading .eyebrow{display:block}.active-bill-heading .field-hint{margin:5px 0 0}.active-bill-items-wrap{margin-top:10px}.active-bill-item-list{list-style:none;padding:0;margin:0;display:grid;gap:5px}.active-bill-item-list li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:3px 0;color:var(--ink);font-size:13px}.active-bill-item-name{min-width:0;overflow-wrap:anywhere}.active-bill-item-name small{color:var(--muted);font-size:12px}.active-bill-item-price{display:flex;align-items:baseline;gap:11px;flex-shrink:0;color:var(--muted);font-size:12px}.active-bill-item-price b{color:var(--ink);font-size:13px}.active-bill-items summary{display:inline-block;margin-top:6px;color:var(--green-dark);font-size:12px;font-weight:700;cursor:pointer}.active-bill-items[open] .active-bill-item-list{margin-top:6px;padding-top:6px;border-top:1px solid var(--line)}.active-bill-items-note{margin:6px 0 0}.active-bill-info .active-bill-amount{margin-top:10px;font-size:25px}.active-bill-info>.field-hint{display:block;margin:0}.active-bill-info .active-bill-payment-status{margin-top:8px}
.owner-orders-tabs{display:flex;gap:7px;border-bottom:1px solid #dce4e8;margin-bottom:22px;padding-bottom:9px}.orders-tab{border:1px solid transparent;border-radius:9px;background:transparent;color:#536574;padding:10px 15px;font:inherit;font-weight:700;cursor:pointer}.orders-tab:hover{background:#edf4f2;color:#047857}.orders-tab.active{border-color:#b7e4d1;background:#e8f7ef;color:#047857}.past-bills{display:grid;gap:12px}.past-bill{padding:0;overflow:hidden}.past-bill details>summary{display:flex;justify-content:space-between;align-items:center;gap:16px;cursor:pointer;padding:17px 20px;list-style:none}.past-bill details>summary::-webkit-details-marker{display:none}.past-bill details>summary>span{display:grid;gap:5px}.past-bill details>summary>span:last-child{text-align:right}.past-bill details>summary small{color:var(--muted);font-size:12px}.past-bill-meta{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;padding:0 20px 12px;color:var(--muted);font-size:12px}.past-bill-orders{padding:0 20px 18px;display:grid;gap:10px}.past-bill-round{border-top:1px solid var(--line);padding-top:10px}.past-bill-round>summary{cursor:pointer;color:#047857;font-weight:650;padding:5px 0 10px}.past-bill-round .order-card{box-shadow:none;margin:0;padding:14px}
@media(max-width:650px){.active-bill-payment,.active-bill-payment-status{align-items:flex-start;flex-direction:column}.active-bill{padding:14px;gap:12px}.active-bill-heading{align-items:flex-start;flex-direction:column;gap:7px}.active-bill-item-list li{align-items:flex-start}.active-bill-item-price{gap:6px;flex-wrap:wrap;justify-content:flex-end}.active-bill .bill-total{min-width:0;width:100%}.active-bill .bill-total .button{width:100%}}
@media(max-width:650px){.owner-orders-tabs{overflow-x:auto}.orders-tab{white-space:nowrap;flex:1}.past-bill details>summary{align-items:flex-start;flex-direction:column}.past-bill details>summary>span:last-child{text-align:left}.past-bill-meta{flex-direction:column;gap:6px}.past-bill-orders{padding-left:14px;padding-right:14px}}
.notice.success{background:#e8f6ee;color:#176343}.restaurant-profile-form{max-width:820px}.restaurant-profile-form .field.full{grid-column:1/-1}.restaurant-profile-form textarea{width:100%;resize:vertical}.restaurant-profile-form .button-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}.profile-form-error:not(:empty){margin-top:12px;padding:10px 12px;border-radius:9px;background:#fff0ea;color:#914c32;font-size:13px}.restaurant-profile-readonly{max-width:820px}.restaurant-profile-readonly dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin:0 0 20px}.restaurant-profile-readonly dl>div{padding:15px 0;border-bottom:1px solid var(--line);min-width:0}.restaurant-profile-readonly dt{font-size:12px;color:var(--muted);margin-bottom:5px}.restaurant-profile-readonly dd{margin:0;font-weight:600;overflow-wrap:anywhere;white-space:pre-line}
@media(max-width:650px){.restaurant-profile-readonly dl{grid-template-columns:1fr}.restaurant-profile-form .button-row .button{flex:1}}
@media(max-width:950px){.marketing-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.marketing-hero{gap:35px}.marketing-how{gap:32px}}
@media(max-width:650px){.marketing-nav{display:none}.marketing-hero{grid-template-columns:1fr;padding-top:42px}.marketing-copy h1{font-size:clamp(40px,12vw,57px)}.marketing-visual{height:360px;min-height:320px}.marketing-proof{gap:12px}.marketing-feature-grid{grid-template-columns:1fr}.marketing-features{padding-left:18px;padding-right:18px}.marketing-section-intro{text-align:left}.marketing-how{grid-template-columns:1fr;gap:12px;padding-left:22px;padding-right:22px}.marketing-cta{align-items:flex-start;flex-direction:column;margin:0 14px 35px}.marketing-cta .button{width:100%;justify-content:center}.upi-readonly{align-items:flex-start;flex-direction:column}.marketing-home .site-footer{padding-left:18px;padding-right:18px}}
.gst-rate-row{display:flex;align-items:center;gap:8px;margin-top:6px;flex-wrap:wrap}.gst-rate-row input{width:86px}

/* Consolidated customer dining bill (guest-bill Edge Function panel). */
.guest-bill{margin-top:22px}
.guest-bill .guest-bill-line{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:7px 0;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)}
.guest-bill .guest-bill-line b{color:var(--ink);white-space:nowrap}
.guest-bill-total{margin-top:6px}
.guest-bill-total .order-total{margin:0;padding:10px 0;font-size:15px}
.guest-bill-total .order-total b{font-size:16px;color:var(--ink)}
.guest-bill-total .order-total-grand{border-top:2px solid #0b855d}
.guest-bill-total .order-total-grand span,.guest-bill-total .order-total-grand b{font-weight:800;color:var(--green-dark)}
.guest-bill-actions .button{flex:1}
@media(max-width:650px){.guest-bill-actions .button{width:100%}}
.link-like{background:none;border:0;padding:0;color:#047857;font-weight:700;cursor:pointer;font-size:13px}
.link-like:hover{text-decoration:underline}
/* Consolidated owner active-bill totals (subtotal / CGST / SGST rows). */
.active-bill-totals-row{margin-top:10px;border-top:1px solid var(--line);padding-top:6px}
.active-bill-line{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:4px 0;font-size:13px;color:var(--muted)}
.active-bill-line b{color:var(--ink);font-size:14px;white-space:nowrap}
@media(max-width:650px){.active-bill-totals-row{width:100%}}

/* Dishes without an uploaded photo: blank reserved image area (no stock or
   placeholder food image, no broken-image icon, no alt text). Mirrors the
   .dish-card img box so card layout is unchanged; the owner dish table reuses
   .thumb for the same blank box. */
.dish-card .dish-media-empty{display:block;width:100%;height:100%;min-height:150px;max-height:205px;background:#ecebe4}
@media(max-width:650px){.dish-card .dish-media-empty{min-height:140px}}

/* ── Mobile responsiveness fixes (from the mobile audit) ─────────────────
   All viewport rules sit inside max-width:650px so desktop and tablet
   layouts are untouched. No markup or business-logic changes. */

@media(max-width:650px){
  /* Checkout rows become a 2-row grid: name+price, then quantity+Remove.
     The old single flex row had a 338px min-content width against a ~255px
     panel (38px page overflow). Nothing is hidden — name, quantity, Remove
     and price all stay visible. */
  .checkout-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:10px;row-gap:9px}
  .checkout-line>div:first-child{grid-column:1;grid-row:1;min-width:0}
  .checkout-line>b{grid-column:2;grid-row:1}
  .checkout-quantity{grid-column:1/-1;grid-row:2;flex-wrap:wrap}
  /* 16px form controls stop iOS Safari from auto-zooming the page on focus. */
  input,textarea,select{font-size:16px}
  /* Touch targets toward 44×44 where the extra size cannot cause overflow. */
  .quantity-control button{width:40px;height:40px;flex:0 0 auto}
  .button.small{padding:12px 14px}
  .guest-bill-actions .button{padding:12px}
  .menu-nav a{padding:12px 15px}
  .sidebar .nav-link{padding:13px 11px}
  .orders-tab{padding:12px 15px}
}

/* Safe-area insets for notched phones. No-op today (viewport meta does not
   use viewport-fit=cover, so iOS already letterboxes the page); these make
   the sticky bars cover-ready and activate automatically if cover is ever
   enabled. max() keeps the current paddings on non-notched devices. */
@supports(padding:max(0px)){
  @media(max-width:650px){
    .topbar{padding-left:max(17px,env(safe-area-inset-left));padding-right:max(17px,env(safe-area-inset-right))}
    .menu-nav{padding-left:max(15px,env(safe-area-inset-left));padding-right:max(15px,env(safe-area-inset-right))}
    .sidebar{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}
    .toast{right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom))}
  }
}
