/* Home polish: slim promo banner, product tiles for Today's Special, aligned laptop layout. */
.home-screen .home-announcement{margin:2px 0 8px;font-size:13px;color:var(--muted)}
.home-screen .home-announcement p{padding:0;line-height:1.5}
.home-screen .home-announcement .announcement-toggle{flex-basis:32px;width:32px;height:32px;padding:8px;opacity:.7}
.home-screen .mode-note{display:flex;gap:6px;align-items:flex-start;margin:-6px 4px 12px;color:var(--muted);font-size:11.5px}
.home-screen .mode-note::before{content:"i";flex:none;width:14px;height:14px;margin-top:1px;border:1px solid currentColor;border-radius:50%;font-size:9.5px;font-weight:700;line-height:13px;text-align:center;font-style:normal}

/* Banner */
.home-screen .home-banners{margin:4px 0 18px}
.home-screen .banner-track{gap:12px;border-radius:18px}
.home-screen .managed-banner,.home-screen .home-banners .managed-banner{min-height:0;height:clamp(132px,38vw,172px);border-radius:18px;border-color:var(--line);cursor:pointer;align-items:flex-end}
.home-screen .managed-banner::after{background:linear-gradient(0deg,rgba(0,0,0,.86) 0%,rgba(0,0,0,.5) 42%,rgba(0,0,0,.08) 78%),linear-gradient(90deg,rgba(0,0,0,.55) 0%,rgba(0,0,0,0) 62%)}
.home-screen .managed-banner-body,.home-screen .home-banners .managed-banner-body{padding:14px 16px;width:100%;max-width:520px;display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.home-screen .managed-banner h2,.home-screen .home-banners .managed-banner h2{margin:0;font-size:18px;line-height:1.2;letter-spacing:-.1px;text-shadow:0 1px 10px rgba(0,0,0,.7);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.home-screen .managed-banner p,.home-screen .home-banners .managed-banner p{margin:0;font-size:12px;line-height:1.35;color:#e9e4dc;text-shadow:0 1px 8px rgba(0,0,0,.7);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.home-screen .managed-banner p:empty{display:none}
.home-screen .managed-banner-price,.home-screen .home-banners .managed-banner-price{margin:0;font-size:13px;color:#fff}
.home-screen .managed-banner .btn,.home-screen .home-banners .managed-banner .btn{margin-top:4px;width:auto;min-height:30px;padding:5px 14px;font-size:12px;font-weight:700;border-radius:999px;background:var(--orange);color:#111;box-shadow:none}
.home-screen .banner-dots{margin-top:8px}

/* Today's Special tiles */
.home-screen .scroll{gap:10px;padding-bottom:6px;margin-bottom:14px;scrollbar-width:none}
.home-screen .special-card{display:flex;flex-direction:column;min-width:0;width:auto;flex:0 0 calc((100% - 20px) / 2.35);padding:7px;gap:7px;border-radius:14px;cursor:default;box-shadow:none}
.special-open{display:flex;flex-direction:column;gap:7px;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:start;cursor:pointer;position:relative;min-width:0}
.home-screen .special-card img{width:100%;height:auto;aspect-ratio:4 / 3;object-fit:cover;border-radius:10px;display:block;background:#1d1a15}
.home-screen .special-card img.no-photo{object-fit:contain;padding:18%;opacity:.28;filter:grayscale(.2)}
.home-screen .special-card .badge{position:absolute;top:6px;inset-inline-start:6px;margin:0;background:rgba(17,12,4,.86);backdrop-filter:blur(4px)}
.home-screen .special-card h4{margin:0;padding:0 2px;font-size:13.5px;font-weight:600;line-height:1.28;min-height:2.56em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.special-add{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:4px;width:100%;min-height:32px;padding:3px 3px 3px 10px;border-radius:999px;border:1px solid var(--orange);background:transparent;color:var(--orange);font:inherit;font-size:12.5px;font-weight:700;white-space:nowrap;cursor:pointer}
[dir="rtl"] .special-add{padding:3px 10px 3px 3px}
.special-add span{min-width:0;overflow:hidden;text-overflow:ellipsis}
.special-add del{color:var(--muted);font-size:.82em;font-weight:500;margin-inline-end:5px}
.special-add b{flex:none;width:24px;height:24px;border-radius:50%;background:var(--orange);color:#111;display:grid;place-items:center;font-size:16px;line-height:1}
.special-add:active{background:rgba(240,138,26,.16)}
.home-screen .h-row{margin-bottom:10px}

@media (max-width:480px){.home-screen{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}}

@media (min-width:1025px){
  #app > .home-screen{max-width:1180px}
  .home-screen .home-search-wrap{width:calc(58% - 16px);max-width:none;margin-bottom:16px}
  .home-screen .home-order-toggle{width:42%;max-width:none;min-height:54px;margin-top:-70px;margin-inline-start:auto;margin-bottom:16px}
  .home-screen .mode-note{max-width:none;margin-top:0}
  .home-screen .home-announcement{margin:0 0 12px}
  .home-screen .managed-banner,.home-screen .home-banners .managed-banner{height:clamp(170px,23vh,220px);border-radius:22px}
  .home-screen .managed-banner-body,.home-screen .home-banners .managed-banner-body{padding:24px 28px;gap:6px}
  .home-screen .managed-banner h2,.home-screen .home-banners .managed-banner h2{font-size:28px}
  .home-screen .managed-banner p,.home-screen .home-banners .managed-banner p{font-size:14px}
  .home-screen .managed-banner .btn,.home-screen .home-banners .managed-banner .btn{min-height:36px;padding:7px 18px;font-size:13.5px}
  .home-screen .scroll{gap:14px}
  .home-screen .special-card{flex:0 0 calc((100% - 56px) / 5);padding:9px;border-radius:16px}
  .home-screen .special-card h4{font-size:15px}
  .special-add{font-size:13.5px;min-height:36px;padding-inline-start:12px}
  .special-add b{width:28px;height:28px}
}
body.light-theme .home-screen .special-card img{background:#efe9df}

/* Quiet price pill: the food leads, only the small + carries the brand colour. */
.special-add,.pairing-card>.btn.pairing-add{border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.055);color:var(--text);font-weight:600;box-shadow:none}
.special-add b,.pairing-add b{background:var(--orange);color:#111;font-weight:700}
.special-add:active,.pairing-card>.btn.pairing-add:active{background:rgba(255,255,255,.11);color:var(--text)}
@media (hover:hover){.special-add:hover,.pairing-card>.btn.pairing-add:hover{background:rgba(255,255,255,.09)}}
body.light-theme .special-add,body.light-theme .pairing-card>.btn.pairing-add{background:rgba(0,0,0,.045);border-color:rgba(0,0,0,.07)}

/* Home location line */
.loc-link{display:flex;align-items:center;gap:6px;max-width:100%;padding:0;border:0;background:none;color:inherit;font:inherit;font-weight:inherit;text-align:start;cursor:pointer;min-width:0}
.loc-link{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.loc-link .loc-change{flex:none;color:var(--orange);font-size:13px;font-weight:600}
.loc-link.loc-out{color:var(--muted)}
.menu-topbar h2{margin:0}

/* Batch H: ordering hours */
.ordering-strip { display: flex; align-items: center; gap: 10px; margin: 10px 0 4px; padding: 10px 14px;
  border: 1px solid rgba(255, 181, 71, .45); border-radius: 12px; background: rgba(255, 164, 28, .10);
  font-size: 13.5px; line-height: 1.45; }
.ordering-strip strong { font-weight: 700; }
.ordering-dot { flex: 0 0 8px; width: 8px; height: 8px; border-radius: 50%; background: #f2a528; }
.checkout-order-types button .type-closed { display: block; margin-top: 2px; font-size: 10.5px; font-weight: 600;
  letter-spacing: .02em; opacity: .75; }
/* Batch E: delivery switched off for the restaurant. */
.home-order-toggle button:disabled, .checkout-order-types button:disabled { opacity: .45; cursor: not-allowed; }
