/* Navai identity: blue menu paper, ivory lettering and champagne-gold actions. */
:root {
  color-scheme: dark;
  --ink: #f4eee3;
  --navy: #173b52;
  --cream: #234b65;
  --muted: #b6c9d4;
  --gold: #ddc18a;
  --line: #b9d0df26;
  --surface-raised: #2b5671;
  --surface-deep: #1a3d55;
  --hero-height: clamp(280px, 40svh, 340px);
  --discovery-height: 116px;
}
html, body { background: #102c40; }
body { color: var(--ink); }
.app-shell { background: var(--cream); box-shadow: 0 0 100px #061b2d70; }
/* Original compact brand row over the food photograph; new teapot retained. */
.brand img { object-fit: contain; }
.feature { height: var(--hero-height); }
.feature::after { background: linear-gradient(180deg, #071e32e6 0%, #102e4659 31%, transparent 46%, #102c4080 66%, #102c40f5 100%); }
.feature > img { object-position: center 52%; }
.feature-text { bottom: 74px; }
.feature .eyebrow { font-size: 8px; letter-spacing: 2px; }
.feature h3 { font-size: 30px; max-width: calc(100% - 44px); }
.feature-price { color: #eee1c6; margin-top: 7px; font-size: 15px; }
.feature-arrow { width: 42px; height: 42px; border-color: #ddc18a80; color: #f1e4c8; background: #ddc18a14; }
.featured-pagination { top: calc(var(--hero-height) - 60px); left: 12px; }
.featured-pagination .active i { background: var(--gold); }
.menu-surface { border-radius: 0; margin-top: 0; background: radial-gradient(ellipse 100% 500px at 50% 0, #315a7333, transparent), var(--cream); }
.discovery-bar { border-radius: 0; background: var(--cream); box-shadow: 0 1px 0 var(--line), 0 7px 14px #234b65e6; }
.search-wrap { color: #d3dfe5; background: var(--surface-deep); border-color: #a6c1d02e; }
.search-wrap { border-radius: 12px; }
.search-wrap input { color: var(--ink); }
.search-wrap input::placeholder { color: #bccdd8; }
.search-wrap:focus-within { border-color: var(--gold); box-shadow: 0 0 0 2px #ddc18a1a; }
.mobile-categories { gap: 22px; }
.mobile-categories button:not(.active) { color: #b9ceda; }
.mobile-categories button.active { color: #f4dfb6; }
.category-indicator { height: 3px; background: var(--gold); }
.category-title { color: var(--ink); gap: 12px; }
.category-title::after { content: ''; height: 1px; background: var(--line); flex: 1; margin-left: 2px; }
.category-title small { color: #b1c8d5; font-size: 12px; }
.category-section { margin-bottom: 38px; }
.dish-grid { gap: 28px 14px; }
.dish-photo-button { border-radius: 12px; background: #18394e; }
.dish-info { padding-top: 11px; }
.dish-title-button { color: #f4eee3; font-size: 15px; line-height: 21px; font-weight: 500; min-height: 57px; }
.dish-meta, .dish-title-button .dish-meta { color: #b6cbd7; font-size: 12px; }
.dish-action { display: flex; flex-direction: column; align-items: stretch; gap: 9px; padding-top: 10px; }
.dish-action .price { font-size: 18px; color: #eed5a6; }
.dish-action .price.unknown { font-size: 13px; color: #c5d4dd; min-height: 24px; max-width: none; }
.dish .dish-actions-overlay { position: relative; inset: auto; width: 100%; max-width: 100%; box-shadow: none; border-radius: 11px; }
.dish .dish-actions-overlay .add-button { width: 100%; max-width: none; font-size: 13px; font-weight: 600; border-radius: 11px; color: #17394e; background: #ddc18a; gap: 6px; }
.dish .dish-actions-overlay .add-button[data-qty] { width: 100%; font-size: 13px; }
.dish-actions-overlay .quantity-control { width: 100%; min-width: 0; max-width: none; border: 1px solid #ddc18a99; color: #f8e7c6; background: #1a3d55; border-radius: 11px; }
.dish-actions-overlay .quantity-control span { flex: 1; }
.quantity-control button { color: inherit; }
.bottom-dock { background: #123247; border: 1px solid #ddc18a40; border-radius: 20px; box-shadow: 0 8px 28px #071e3280; }
.dock-menu, .dock-waiter { color: #c5d7e1; font-size: 11px; }
.dock-menu.active, .dock-waiter.active { color: #f5dfb4; background: #ddc18a0f; }
.cart-button { background: #ddc18a; color: #17394e; border-radius: 13px; }
.cart-count { background: #17394e; color: #f6e5c5; border-color: #ddc18a; }
#toast { background: #123247; border: 1px solid #ddc18a4d; }
/* Every sheet and form follows the same palette; no leftover white panels. */
.dialog, #dish-content, .detail-body, .sheet-header { background: var(--cream); color: var(--ink); }
.dialog.dish-dialog, .dish-dialog.bridge-active #dish-content { background: transparent; }
.detail-bottom, .cart-checkout { background: var(--cream); box-shadow: 0 -8px 14px #234b65e6; }
.detail-description, .utility-copy, .secondary-button, .dish-description { color: #c4d4de; }
.detail-note, .demo-note, .footer p, .footer .photo-note { color: var(--muted); }
.detail-bottom .price, .cart-summary strong, .cart-row-bottom strong, .receipt-total { color: #eed5a6; }
.eyebrow { color: #ddc18a; }
.primary-button, .detail-controls .add-button, .no-results button { color: #17394e; background: #ddc18a; font-weight: 600; }
.primary-button:active, .detail-controls .add-button:active { background: #ead1a2; }
.close-button { background: var(--surface-deep); color: var(--ink); }
.dish-dialog .close-button { background: #173b52ed; color: #f4eee3; border: 1px solid #f4eee340; }
.detail-controls .quantity-control, .cart-row .quantity-control { background: var(--surface-deep); color: #f4e1bf; border: 1px solid #ddc18a66; }
.cart-comment textarea, .table-form input { background: var(--surface-deep); color: var(--ink); border-color: #aac5d53d; }
.cart-comment textarea::placeholder { color: #adc5d3; }
.waiter-option, .order-receipt { background: var(--surface-deep); border-color: var(--line); }
.waiter-option:has(:checked) { border-color: #ddc18a; background: #31566d; }
.waiter-option input { accent-color: #ddc18a; }
.utility-symbol, .success-icon { background: var(--surface-deep); color: var(--gold); }
.category-picker button, .category-picker small { color: #c0d1dc; }
.category-picker button.active { color: #f4dfb6; }
.footer { margin-top: 8px; padding-top: 32px; }
.footer img { width: 94px; height: 77px; object-fit: contain; margin-bottom: 12px; }
.footer > .footer-brand-label { display: block; font-family: var(--serif); color: var(--gold); letter-spacing: 3px; padding-left: 3px; font-size: 9px; }
.footer > .footer-brand-name { display: block; color: #f4eee3; font-size: 30px; letter-spacing: 5px; padding-left: 5px; }
/* One unframed emblem instead of the old, unrelated circular medallion. */
.cinema-backdrop { background: radial-gradient(ellipse at 50% 43%, #416f8a 0, #234b65 48%, #102f46 100%); }
.cinema-brand { color: #f4eee3; text-shadow: none; }
.cinema-medallion { width: 178px; height: 145px; overflow: visible; border-radius: 0; background: none; box-shadow: none; }
.medallion-rim, .cinema-emblem-relief { display: none; }
.cinema-emblem { top: 0; left: 0; width: 178px; height: 145px; filter: drop-shadow(0 5px 14px #0b273642); }
.medallion-glint { display: none; }
.cinema-label { font-family: var(--serif); font-size: 10px; letter-spacing: 3px; color: var(--gold); margin-top: 17px; }
.cinema-word { font-size: 45px; font-weight: 400; letter-spacing: 7px; }
.intro-skip { background: #153b52d9; color: #f4e3c3; }
@media (max-width: 359px) {
  .feature h3 { font-size: 28px; }
  .dish-grid { gap: 25px 12px; }
  .dish-title-button { font-size: 14px; line-height: 20px; }
  .dish-action .price { font-size: 17px; }
  .dock-menu, .dock-waiter { width: 52px; }
  .cart-label strong { font-size: 14px; }
  .cinema-medallion, .cinema-emblem { width: 160px; height: 130px; }
}
.cinema-door { background-color: #234b65; background-image: url('assets/intro/door.svg?v=7'); }
