/* ============================================================================
   DENADA LOUNGE — LOGO BRAND THEME
   Professional light identity based on the official red + gold logo.
   This file intentionally loads after the legacy stylesheets so that every
   public, customer and admin screen shares one coherent visual system.
   ============================================================================ */

:root{
  --brand-red:#d71920;
  --brand-red-deep:#a80f15;
  --brand-red-soft:#fbe9e7;
  --brand-gold:#f2c230;
  --brand-gold-deep:#c99714;
  --brand-gold-soft:#fff4cf;
  --brand-cream:#fff8e7;
  --brand-cream-2:#f7ecd4;
  --brand-paper:#fffdf8;
  --brand-white:#ffffff;
  --brand-text:#2f2020;
  --brand-muted:#776968;
  --brand-line:#eadbc3;
  --brand-shadow:0 18px 55px rgba(124,35,27,.10);

  /* Keep legacy variable names mapped to the official identity. */
  --red:var(--brand-red);
  --red-dark:var(--brand-red-deep);
  --orange:var(--brand-red);
  --gold:var(--brand-gold-deep);
  --gold-2:var(--brand-gold);
  --ink:var(--brand-text);
  --ink-2:#5a3031;
  --cream:var(--brand-cream);
  --cream-2:var(--brand-cream-2);
  --paper:var(--brand-paper);
  --text:var(--brand-text);
  --muted:var(--brand-muted);
  --line:var(--brand-line);
  --border:rgba(169,128,31,.18);
  --shadow:var(--brand-shadow);
}

html{background:var(--brand-cream)}
body{background:var(--brand-cream);color:var(--brand-text)}
::selection{background:var(--brand-gold);color:var(--brand-red-deep)}

/* ---------- Logo treatment ---------- */
.brand-logo-img,
.dash-brand img,
.auth-copy img,
.auth-brand-mobile{
  border-radius:50%;
  border:2px solid var(--brand-gold);
  background:var(--brand-red);
  box-shadow:0 10px 28px rgba(160,16,22,.16);
}
.brand-logo-img{object-fit:cover}

/* ============================================================================
   PUBLIC WEBSITE
   ============================================================================ */

.topbar{
  background:linear-gradient(90deg,var(--brand-red-deep),var(--brand-red));
  border-bottom:1px solid rgba(242,194,48,.42);
  color:#fff;
}
.topbar a,.topbar span{color:#fff}
.topbar i{color:var(--brand-gold)}
.topbar a:hover{color:var(--brand-gold)}

.site-header .navbar{
  background:linear-gradient(180deg,rgba(168,15,21,.94),rgba(215,25,32,.82));
  border-bottom:1px solid rgba(242,194,48,.24);
  backdrop-filter:blur(8px);
}
.site-header.scrolled{
  background:rgba(255,253,248,.97);
  border-bottom:1px solid var(--brand-line);
  box-shadow:0 10px 34px rgba(121,36,28,.10);
}
.site-header.scrolled .navbar{background:transparent;border-bottom:0}
.site-header.scrolled .nav-main .nav-link{color:#5b4545}
.site-header.scrolled .nav-main .nav-link:hover,
.site-header.scrolled .nav-main .nav-link.active{color:var(--brand-red)}
.site-header.scrolled .nav-main .nav-link:after{background:var(--brand-gold-deep)}
.site-header.scrolled .icon-btn{
  color:var(--brand-red);
  border-color:#e4d3ba;
  background:#fff;
}
.site-header.scrolled .icon-btn:hover{
  background:var(--brand-red);
  border-color:var(--brand-red);
  color:#fff;
}
.nav-main .nav-link:after{background:var(--brand-gold)}
.nav-main .nav-link:hover,.nav-main .nav-link.active{color:#fff}
.icon-btn,.circle-btn{border-color:rgba(242,194,48,.50);background:rgba(255,255,255,.10)}
.icon-btn:hover,.circle-btn:hover{background:var(--brand-gold);border-color:var(--brand-gold);color:var(--brand-red-deep)}
.cart-badge{background:var(--brand-gold);color:var(--brand-red-deep)}

.btn-denada{
  background:linear-gradient(135deg,var(--brand-red),var(--brand-red-deep));
  border-color:var(--brand-red);
  color:#fff;
  box-shadow:0 12px 28px rgba(215,25,32,.18);
}
.btn-denada:hover{background:var(--brand-gold);border-color:var(--brand-gold);color:var(--brand-red-deep)}
.btn-dark-denada{background:var(--brand-red-deep);border-color:var(--brand-red-deep);color:#fff}
.btn-dark-denada:hover{background:var(--brand-gold);border-color:var(--brand-gold);color:var(--brand-red-deep)}

/* Mobile navigation is no longer a black drawer. */
.offcanvas,
.offcanvas.text-bg-dark{background:var(--brand-paper)!important;color:var(--brand-text)!important}
.offcanvas .offcanvas-header{border-color:var(--brand-line)!important}
.offcanvas .btn-close-white{filter:none}
.mobile-nav-list a{color:var(--brand-text);border-bottom-color:var(--brand-line)}
.mobile-nav-list a:hover{color:var(--brand-red)}
.offcanvas .btn-outline-light{border-color:var(--brand-red);color:var(--brand-red)}
.offcanvas .btn-outline-light:hover{background:var(--brand-red);color:#fff}

/* Hero imagery stays dramatic but is tinted in Denada red instead of black. */
.hero{background:var(--brand-red-deep)}
.hero-slide:after{background:linear-gradient(180deg,rgba(40,2,5,.42) 0%,rgba(40,2,5,.46) 58%,rgba(20,1,3,.88) 100%)}
.hero h1,.hero p,.hero-proof{color:#fff}
.hero h1 span{-webkit-text-stroke-color:var(--brand-gold)}
.hero .eyebrow,.hero-proof i{color:var(--brand-gold)}
.hero-dot:before{background:var(--brand-gold)}

/* Quick actions become light brand cards. */
.quick-grid{box-shadow:0 18px 50px rgba(113,31,25,.12)}
.quick-card{
  background:var(--brand-paper);
  color:var(--brand-text);
  border-right:1px solid var(--brand-line);
}
.quick-card:hover{background:var(--brand-gold-soft);transform:translateY(-4px)}
.quick-icon{border-color:#e2c46d;color:var(--brand-red);background:#fff}
.quick-card small{color:var(--brand-muted)}
.quick-arrow{color:var(--brand-red)}

.section-cream,.gallery,.reviews,.contact{background:var(--brand-cream);color:var(--brand-text)}
.section-title{color:var(--brand-text)}
.section-title em,.section-title.dark em{color:var(--brand-red)}
.section-kicker,.eyebrow{color:var(--brand-red)}
/* On dark/red-background sections, a red kicker is invisible against the red fill — switch to gold. */
.page-hero .section-kicker,.page-hero .eyebrow,
.reservation .section-kicker,.reservation .eyebrow,
.editorial-split .section-kicker,.editorial-split .eyebrow,
.support-banner .section-kicker,.support-banner .eyebrow,
.event-side-card .section-kicker,.event-side-card .eyebrow,
.social-cta .section-kicker,.social-cta .eyebrow,
.checkout-summary .section-kicker,.checkout-summary .eyebrow,
.sticky-order-summary .section-kicker,.sticky-order-summary .eyebrow,
.identity-panel .section-kicker,.identity-panel .eyebrow,
.delivery-help-card .section-kicker,.delivery-help-card .eyebrow,
.tracking-result .section-kicker,.tracking-result .eyebrow,
.combo-banner .section-kicker,.combo-banner .eyebrow{color:var(--brand-gold)}
/* Headings/copy that land on the same dark/red sections need light text, not the default dark body color. */
.reservation .section-title,.social-cta h2{color:#fff}
.reservation .section-title em,.social-cta h2 em{color:var(--brand-gold)}
.identity-panel small{color:#f2d9d7}
.event-side-card dt{color:#f2d9d7}
.event-side-card .btn-outline-dark,.checkout-summary .btn-outline-dark,.sticky-order-summary .btn-outline-dark{color:#fff;border-color:#fff}
.event-side-card .btn-outline-dark:hover,.checkout-summary .btn-outline-dark:hover,.sticky-order-summary .btn-outline-dark:hover{background:#fff;color:var(--brand-red)}
.social-cta p{color:#f2d9d7}
.filter-chip.active{color:#fff}
.review-card.featured .review-stars{color:var(--brand-gold)}
.link-arrow{color:var(--brand-red);border-color:rgba(215,25,32,.22)}
.link-arrow:hover{color:var(--brand-gold-deep)}
.dark-link{color:var(--brand-red);border-color:rgba(215,25,32,.2)}

.about-floating-card{background:var(--brand-red);color:#fff;border:1px solid var(--brand-gold)}
.about-floating-card small{color:#ffeec1}
.about-badge-icon{background:var(--brand-gold);color:var(--brand-red-deep)}
.about-stamp{background:var(--brand-gold);color:var(--brand-red-deep)}

/* Image-led category and experience cards retain contrast through red overlays. */
.categories,.experience{background:var(--brand-cream)}
.categories .section-title,.experience .section-title{color:var(--brand-text)}
.category-card,.experience-card{box-shadow:0 14px 38px rgba(112,31,24,.10)}
.category-overlay,.experience-overlay{background:linear-gradient(180deg,rgba(30,1,4,.42),rgba(20,1,3,.90))}
.category-card:hover .category-overlay{background:linear-gradient(180deg,rgba(30,1,4,.50),rgba(20,1,3,.94))}
.category-card:after,.experience-card:after{border-radius:0}
.category-content h3,.category-content a,.experience-copy h3{color:#fff}
.category-content p,.experience-copy p{color:#f7e6e2}
.category-content>span,.experience-copy span{color:var(--brand-gold)}

/* Menu section: premium white cards rather than a dark-mode catalogue. */
.featured-menu{background:#fffaf0;color:var(--brand-text)}
.featured-menu .section-title{color:var(--brand-text)}
.section-intro p{color:var(--brand-muted)}
.menu-tab{border-color:#e3d2b7;background:#fff;color:#715d5b}
.menu-tab.active,.menu-tab:hover{background:var(--brand-red);border-color:var(--brand-red);color:#fff}
.dish-card{background:#fff;border-color:var(--brand-line);color:var(--brand-text);box-shadow:0 10px 30px rgba(111,32,24,.05)}
.dish-card:hover{border-color:#d8b64d;box-shadow:0 22px 48px rgba(111,32,24,.10)}
.dish-meta{color:#8b7774}.dish-meta i{color:var(--brand-gold-deep)}
.dish-body p{color:var(--brand-muted)}
.add-btn{border-top-color:var(--brand-line);color:#fff}
.add-btn i{color:#fff}
.dish-badge{color:#fff}
.dark-badge{background:var(--brand-red-deep)}
.dish-heart{background:rgba(255,255,255,.92);border-color:#eadac4;color:var(--brand-red)}
.dish-heart.saved{background:var(--brand-red);color:#fff}

/* Promotions lead with the two actual logo colours. */
.deal-banner{background:linear-gradient(120deg,var(--brand-red),var(--brand-red-deep));color:#fff}
.deal-label{background:var(--brand-gold);color:var(--brand-red-deep)}
.deal-copy h2 span{color:var(--brand-gold)}
.deal-copy p{color:#fff6e1}
.deal-art:before{border-color:rgba(242,194,48,.32)}
.deal-art:after{background:var(--brand-gold)}
.deal-circle{background:#fff;color:var(--brand-red-deep);border:4px solid var(--brand-gold)}

/* Drinks area becomes a cream/red editorial section. */
.drinks{background:var(--brand-paper);color:var(--brand-text)}
.drinks .section-title{color:var(--brand-text)}
.drink-tags span{border-color:#dfcfb5;color:#735f5c;background:#fff}
.drink-price-list{border-top-color:var(--brand-line)}
.drink-price-list>div{border-bottom-color:var(--brand-line)}
.drink-price-list small{color:var(--brand-muted)}
.drink-price-list b{color:var(--brand-red)}
.drink-menu-card{border-color:var(--brand-gold);box-shadow:0 24px 55px rgba(123,32,27,.14)}
.drink-note{background:var(--brand-red);color:#fff;border:1px solid var(--brand-gold)}

/* Reservations: red brand overlay, not black. */
.reservation{background:var(--brand-red-deep)}
.reservation-bg{background:linear-gradient(90deg,rgba(126,4,14,.94),rgba(176,8,20,.60)),url('assets/photos/denada-lounge-interior.webp') center/cover;filter:saturate(.95)}
.reservation p{color:#fff1e7}
.reservation-box{background:var(--brand-paper);color:var(--brand-text);border-top:4px solid var(--brand-gold)}
.reservation-box input,.reservation-box select{background:#fff;border-color:#dfcfb4;color:var(--brand-text)}

.review-card{background:#fff;border-color:var(--brand-line);color:var(--brand-text)}
.review-card.featured{background:var(--brand-red);color:#fff;border-color:var(--brand-gold);box-shadow:0 18px 45px rgba(151,16,24,.15)}
.review-card.featured .review-person small{color:#ffe7c3}

.delivery-cta{background:var(--brand-cream-2)}
.delivery-inner{background:#fff;border:1px solid var(--brand-line);box-shadow:var(--brand-shadow)}
.delivery-visual:after{background:linear-gradient(90deg,rgba(255,255,255,0),#fff)}
.delivery-copy{color:var(--brand-text)}
.delivery-copy h2 em{color:var(--brand-red)}
.delivery-copy p{color:var(--brand-muted)}
.delivery-badge{background:var(--brand-gold);color:var(--brand-red-deep)}

.contact-list a{color:var(--brand-text)}
.contact-list a>span{background:var(--brand-red);color:var(--brand-gold)}
.map-pin{color:var(--brand-red)}
.map-pin span{background:var(--brand-red);color:#fff}

.newsletter{background:linear-gradient(90deg,var(--brand-gold),#ffd85e);color:var(--brand-red-deep)}
.newsletter .section-kicker{color:var(--brand-red-deep)}
.newsletter-form input{background:#fff;color:var(--brand-text)}
.newsletter-form .btn{background:var(--brand-red);border-color:var(--brand-red);color:#fff}
.newsletter-form .btn:hover{background:var(--brand-red-deep);color:var(--brand-gold)}

.footer{background:linear-gradient(145deg,var(--brand-red-deep),#7f0a10);color:#fff}
.footer h4{color:var(--brand-gold)}
.footer .col-lg-2>a,.footer-about,.footer-contact{color:#f2d9d7}
.footer .col-lg-2>a:hover{color:var(--brand-gold)}
.footer .col-lg-4>a:not(.btn):not(.footer-phone){display:block;color:#f2d9d7;font-size:11px;margin:11px 0}

/* Professional readable type scale — public website and customer journeys. */
body{font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
p{line-height:1.75}
.btn,.btn-denada,.btn-outline-denada,.btn-light-denada,.btn-ink{font-size:12px;line-height:1.25}
.nav-link,.mobile-nav a,.footer a{font-size:13px}
.eyebrow,.section-kicker{font-size:12px;line-height:1.4}
.quick-card strong,.action-strip-grid strong,.category-content span,.dish-meta,.product-category,.filter-chip,.category-jump a,.deal-label{font-size:12px}
.quick-card small,.action-strip-grid small,.dish-body p,.product-body p,.drink-row p,.offer-copy p,.rule-grid p{font-size:13px;line-height:1.65}
.dish-body h3{font-size:19px}.dish-body p{min-height:0}
.product-title-row strong,.drink-row>strong{font-size:14px}
.menu-tab,.text-action,.add-btn,.segmented button,.order-stepper span{font-size:12px}
.reservation-box label span,.form-grid label,.stack-form label,.detail-note,.occasion-chips span{font-size:12px;line-height:1.4}
.reservation-box input,.reservation-box select,.form-grid input,.form-grid select,.form-grid textarea,.stack-form input,.detail-note textarea,.contact-form input,.contact-form select,.contact-form textarea{font-size:14px;line-height:1.5}
.inline-cart-item strong,.cart-line strong,.upsell-grid strong,.payment-options strong,.track-step strong{font-size:13px}
.inline-cart-item small,.summary-note p,.cart-page-line small,.upsell-grid small,.payment-options small,.track-step p,.confirmation-grid small{font-size:11px;line-height:1.55}
.price-summary-line,.confirmation-grid strong,.track-header span,.form-footnote,.form-status{font-size:12px}
.footer-about,.footer-contact,.footer .col-lg-2>a,.footer .col-lg-4>a:not(.btn):not(.footer-phone),.newsletter p{font-size:13px}
.footer h4{font-size:12px}.footer-bottom{font-size:11px}
.cart-header small,.cart-line small,.cart-empty p,.cart-summary{font-size:12px}
.mobile-bottom-nav a{font-size:10px}

/* Dashboard and portal typography remains compact, but never microscopic. */
.dash-app{font-size:14px;line-height:1.55}
.dash-brand-copy small,.nav-caption,.page-title-mini small{font-size:10px}
.dash-nav a{font-size:13px;line-height:1.35}
.sidebar-user strong,.top-profile strong{font-size:12px}
.sidebar-user small,.top-profile small{font-size:11px}
.page-title-mini strong{font-size:15px}
.dash-content .eyebrow{font-size:11px}
.page-head p{font-size:14px;line-height:1.65}
.dash-app .btn-denada,.dash-app .btn-outline-denada,.dash-app .btn-light-denada,.dash-app .btn-ink{font-size:11px}
.stat-trend,.stat-card p,.panel-head p,.link-small{font-size:11px;line-height:1.45}
.panel-head h2{font-size:15px}
.data-table th{font-size:10px;line-height:1.35}
.data-table td{font-size:13px;line-height:1.45}
.table-user strong{font-size:13px}.table-user small{font-size:11px}
.status{font-size:10px;line-height:1.2}
.search-box input,.select-control,.field input,.field select,.field textarea{font-size:13px;line-height:1.45}
.field label,.form-help,.form-section-title small{font-size:11px;line-height:1.4}
.form-section-title h3{font-size:15px}
.tab-btn{font-size:12px}
.info-row,.timeline-copy strong,.product-row strong,.quick-list strong,.notification-item strong,.audit-row,.audit-row strong{font-size:12px;line-height:1.45}
.timeline-copy p,.product-row small,.quick-list small,.notification-item p,.notification-item time,.address-card p,.support-card p{font-size:11px;line-height:1.55}
.empty-state p,.role-card p,.permission-list label,.message-list-item p,.message-list-item time{font-size:11px;line-height:1.5}
.role-card h3,.address-card h3,.support-card h3,.message-list-item strong{font-size:13px}
.auth-card>p,.auth-options,.auth-foot,.back-public{font-size:12px;line-height:1.6}
.dash-toast{font-size:12px}

@media(max-width:767.98px){
 body{font-size:15px}
 .page-head p{font-size:13px}
 .data-table td{font-size:12px}
 .dash-content{padding-left:18px;padding-right:18px}
}

/* Unified alerts and toast notifications. */
.app-alert{position:relative;z-index:2200;width:min(680px,calc(100% - 32px));margin:16px auto -4px;display:grid;grid-template-columns:42px 1fr 34px;align-items:center;gap:13px;padding:14px 15px;border:1px solid;border-radius:13px;background:#fff;box-shadow:0 16px 45px rgba(47,32,32,.14);color:var(--brand-text);animation:notice-in .28s ease both}
.app-alert__icon,.app-toast__icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-size:18px;font-weight:900}
.app-alert__icon:before,.app-toast__icon:before{line-height:1}
.app-alert__content{display:flex;flex-direction:column;gap:2px;min-width:0}
.app-alert__content strong{font-size:13px;line-height:1.3}
.app-alert__content>span{font-size:13px;line-height:1.5;color:#66595a}
.app-alert__close,.app-toast__close{width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:inherit;font-size:22px;line-height:1;cursor:pointer;opacity:.65;transition:.2s}
.app-alert__close:hover,.app-toast__close:hover{background:rgba(0,0,0,.07);opacity:1}
.app-alert--success{border-color:#a9d8bd;background:#f2fbf5}.app-alert--success .app-alert__icon{background:#d9f2e2;color:#167443}.app-alert--success .app-alert__icon:before{content:'✓'}
.app-alert--error{border-color:#efb7b9;background:#fff4f4}.app-alert--error .app-alert__icon{background:#fbdcdd;color:#b3141b}.app-alert--error .app-alert__icon:before{content:'!'}
.app-alert--warning{border-color:#efd28e;background:#fff9eb}.app-alert--warning .app-alert__icon{background:#f8e7b5;color:#8a5b00}.app-alert--warning .app-alert__icon:before{content:'!'}
.app-alert--info{border-color:#b9d2eb;background:#f3f8fd}.app-alert--info .app-alert__icon{background:#dcebf8;color:#285f91}.app-alert--info .app-alert__icon:before{content:'i'}
.toast-wrap{position:fixed;right:22px;bottom:22px;z-index:3000;width:min(390px,calc(100vw - 32px));display:grid;gap:10px;pointer-events:none}
.dash-toast.app-toast{position:relative;display:grid;grid-template-columns:38px 1fr 30px;align-items:center;gap:12px;width:100%;padding:13px 12px;border:1px solid #eadbc3;border-left:4px solid var(--brand-gold);border-radius:13px;background:#fff;color:var(--brand-text);box-shadow:0 20px 55px rgba(47,32,32,.19);font-size:13px;line-height:1.45;pointer-events:auto;animation:toast-in .3s ease both}
.app-toast__message{font-weight:650}
.app-toast--success{border-left-color:#198754}.app-toast--success .app-toast__icon{background:#e0f3e7;color:#167443}.app-toast--success .app-toast__icon:before{content:'✓'}
.app-toast--warning{border-left-color:#d98e04}.app-toast--warning .app-toast__icon{background:#fff0c8;color:#8a5b00}.app-toast--warning .app-toast__icon:before{content:'!'}
.app-toast--error{border-left-color:#d71920}.app-toast--error .app-toast__icon{background:#fbdcdd;color:#b3141b}.app-toast--error .app-toast__icon:before{content:'!'}
.app-toast--info{border-left-color:#397eb8}.app-toast--info .app-toast__icon{background:#dcebf8;color:#285f91}.app-toast--info .app-toast__icon:before{content:'i'}
.app-toast.is-leaving{animation:toast-out .22s ease both}
.toast-note{display:grid;grid-template-columns:36px 1fr;align-items:center;gap:12px;left:auto;right:22px;bottom:22px;width:min(390px,calc(100vw - 32px));padding:14px 16px;border:1px solid #a9d8bd;border-left:4px solid #198754;border-radius:13px;background:#f7fff9;color:#23402e;font-size:13px;line-height:1.45;box-shadow:0 20px 55px rgba(34,61,43,.2);transform:translateY(24px);pointer-events:none}
.toast-note i{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#d9f2e2;color:#167443;font-size:16px}
.toast-note--warning{border-color:#efd28e;border-left-color:#d98e04;background:#fff9eb;color:#624600}.toast-note--warning i{background:#f8e7b5;color:#8a5b00}.toast-note--warning i:before{content:'\f071'}
.toast-note--error{border-color:#efb7b9;border-left-color:#d71920;background:#fff4f4;color:#721c24}.toast-note--error i{background:#fbdcdd;color:#b3141b}.toast-note--error i:before{content:'\f06a'}
.toast-note--info{border-color:#b9d2eb;border-left-color:#397eb8;background:#f3f8fd;color:#244e72}.toast-note--info i{background:#dcebf8;color:#285f91}.toast-note--info i:before{content:'\f05a'}
.toast-note.show{opacity:1;transform:translateY(0)}
@keyframes notice-in{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
@keyframes toast-in{from{opacity:0;transform:translateX(22px) scale(.98)}to{opacity:1;transform:none}}
@keyframes toast-out{to{opacity:0;transform:translateX(25px) scale(.98)}}
@media(max-width:767.98px){.app-alert{width:calc(100% - 24px);margin-top:12px;grid-template-columns:36px 1fr 30px;padding:12px;gap:10px}.toast-wrap{left:12px;right:12px;bottom:82px;width:auto}.toast-note{left:12px;right:12px;bottom:82px;width:auto}.app-alert__content>span,.dash-toast.app-toast,.toast-note{font-size:12px}}
@media(prefers-reduced-motion:reduce){.app-alert,.dash-toast.app-toast,.toast-note{animation:none;transition:none}}
.footer .col-lg-4>a:not(.btn):not(.footer-phone):hover{color:var(--brand-gold)}
.footer-phone{color:var(--brand-gold)}
.footer-bottom{border-color:rgba(242,194,48,.22);color:#e6c2bf}
.footer-bottom strong{color:#fff}
.social-links a{border-color:rgba(242,194,48,.35);color:#fff}
.social-links a:hover{background:var(--brand-gold);border-color:var(--brand-gold);color:var(--brand-red-deep)}

.mobile-bottom-nav{background:rgba(255,253,248,.98);border-top-color:var(--brand-line);box-shadow:0 -8px 28px rgba(122,35,29,.08)}
.mobile-bottom-nav a{color:#6e5b59}
.mobile-bottom-nav a:hover{color:var(--brand-red)}
.mobile-bottom-nav .primary{color:var(--brand-red)}
.primary-circle{background:var(--brand-red);border-color:var(--brand-paper);color:#fff}

/* Cart drawer / overlays follow the light brand system. */
.cart-backdrop{background:rgba(112,8,15,.48)}
.cart-panel{background:var(--brand-paper);color:var(--brand-text)}
.cart-header{background:var(--brand-red);color:#fff;border-bottom-color:var(--brand-gold)}
.cart-header small{color:var(--brand-gold)}
.cart-header button{color:#fff}
.cart-line{border-bottom-color:var(--brand-line)}
.cart-line small{color:var(--brand-muted)}
.cart-empty{color:var(--brand-muted)}
.cart-empty h4{color:var(--brand-text)}
.cart-footer{border-top-color:var(--brand-line);background:#fffaf0}
.lightbox{background:rgba(99,4,13,.94)}
.toast-note{border-left:4px solid var(--brand-gold)}

/* ============================================================================
   INNER PUBLIC PAGES
   ============================================================================ */
.inner-page .navbar{background:linear-gradient(180deg,rgba(168,15,21,.94),rgba(215,25,32,.84))}
.page-hero{background-color:var(--brand-red-deep)}
.page-hero-shade{
  background:linear-gradient(90deg,rgba(30,1,4,.95),rgba(70,3,9,.82) 54%,rgba(70,3,9,.48)),linear-gradient(0deg,rgba(20,1,3,.80),transparent 58%);
}
.page-hero h1,.page-hero p{color:#fff}
.page-hero h1 em{-webkit-text-stroke-color:var(--brand-gold)}
.page-hero p{color:#fff1e8}
.breadcrumb-lite{color:#f6d9d3}.breadcrumb-lite a{color:#fff}.breadcrumb-lite i{color:var(--brand-gold)}

.action-strip-grid{background:var(--brand-paper);border:1px solid var(--brand-line);box-shadow:var(--brand-shadow)}
.action-strip-grid a{color:var(--brand-text);border-color:var(--brand-line)}
.action-strip-grid a:hover{background:var(--brand-gold-soft);color:var(--brand-red)}
.action-strip-grid i{color:var(--brand-red)}

.product-category,.drinks-page,.values-section{background:var(--brand-paper);color:var(--brand-text)}
.product-category .section-title,.drinks-page .section-title,.values-section .section-title{color:var(--brand-text)}
.editorial-split{background:var(--brand-red);color:#fff}
.editorial-split p{color:#ffe9df}
.combo-banner{background:linear-gradient(110deg,var(--brand-red),var(--brand-red-deep));color:#fff;border-color:rgba(242,194,48,.30)}
.combo-banner h2 em{color:var(--brand-gold)}
.drink-row{background:#fff;border-color:var(--brand-line);color:var(--brand-text)}
.drink-row:hover{border-color:var(--brand-gold-deep);box-shadow:0 14px 34px rgba(112,31,25,.08)}
.drink-art-card span,.wide-photo-label{background:var(--brand-red);color:#fff}
.work-hour{background:var(--brand-gold-soft)}
.work-hour-card{background:#fff;color:var(--brand-text);border:1px solid var(--brand-line);box-shadow:var(--brand-shadow)}
.work-hour-card>span{color:var(--brand-red)}
.work-hour-card>p{background:var(--brand-gold-soft);color:var(--brand-red-deep)}

.order-stepper .active{background:var(--brand-red);color:#fff}
.sticky-order-summary,.checkout-summary,.tracking-result,.support-banner,.event-side-card,.identity-panel,.delivery-help-card{
  background:var(--brand-red);color:#fff;border-color:var(--brand-gold);
}
.sticky-order-summary p,.checkout-summary p,.tracking-result p,.support-banner p,.event-side-card p,.identity-panel p,.delivery-help-card p{color:#ffe9df}
.event-number{background:var(--brand-gold);color:var(--brand-red-deep)}
.gallery-page-item{background:var(--brand-red-soft)}
.value-grid article{border-color:rgba(215,25,32,.15)}
.value-grid article i{color:var(--brand-red)}
.group-photo>div{background:rgba(165,10,20,.90)}
.map-placeholder-section{background:var(--brand-cream-2);color:var(--brand-text)}
.map-stage{background:#f2e6d0}
.map-stage .map-grid{background-image:linear-gradient(rgba(180,134,48,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(180,134,48,.15) 1px,transparent 1px)}
.map-stage .map-route{border-color:rgba(215,25,32,.22)}
.map-stage .map-pin{color:var(--brand-red)}
.map-stage .map-pin span{background:var(--brand-red);color:#fff}
.map-copy p{color:var(--brand-muted)}

/* Shared form / content surfaces. */
.menu-card,.offer-card,.event-list-card,.contact-channel-grid a,.hours-card,.contact-form,.feedback-form,
.delivery-steps article,.delivery-info-table,.faq-search,.faq-item,.choice-chips label,.check-options label,
.cart-page-line,.fulfilment-card,.checkout-form-card,.confirmation-card,.reservation-form-card{
  border-color:var(--brand-line)!important;
}
.contact-channel-grid i,.delivery-steps i,.faq-search i,.faq-question i,.faq-question small,
.delivery-info-table strong,.legal-grid article a,.legal-grid aside>span{color:var(--brand-red)}
.legal-note{background:var(--brand-gold-soft);border-left-color:var(--brand-red)}
.choice-chips label:has(input:checked){border-color:var(--brand-red);box-shadow:inset 3px 0 var(--brand-red)}

/* ============================================================================
   CUSTOMER + ADMIN DASHBOARDS
   ============================================================================ */
.dash-app,body:has(.dash-app){background:var(--brand-cream)}
.dash-sidebar{
  background:linear-gradient(180deg,#fffdf8 0%,#fff8e7 56%,#f7ecd4 100%);
  color:var(--brand-text);
  border-right:1px solid var(--brand-line);
  box-shadow:12px 0 36px rgba(112,31,25,.06);
}
.dash-brand{border-bottom-color:var(--brand-line)}
.dash-brand-copy strong{color:var(--brand-red)}
.dash-brand-copy small{color:var(--brand-gold-deep)}
.nav-caption{color:#9c731b}
.dash-nav a{color:#5f5050}
.dash-nav a i{color:var(--brand-red)}
.dash-nav a:hover{background:var(--brand-gold-soft);color:var(--brand-red-deep)}
.dash-nav a.active{
  background:linear-gradient(90deg,var(--brand-red),var(--brand-red-deep));
  color:#fff;
  box-shadow:0 8px 20px rgba(215,25,32,.14);
}
.dash-nav a.active i{color:var(--brand-gold)}
.nav-badge{background:var(--brand-gold);color:var(--brand-red-deep)}
.sidebar-user{border-top-color:var(--brand-line)}
.sidebar-user strong{color:var(--brand-text)}
.sidebar-user small{color:var(--brand-muted)}
.dash-sidebar .btn-outline-denada{border-color:#d9b85a;color:var(--brand-red);background:rgba(255,255,255,.72)}
.dash-sidebar .btn-outline-denada:hover{background:var(--brand-red);color:#fff;border-color:var(--brand-red)}

.dash-main{background:var(--brand-cream)}
.dash-topbar{background:rgba(255,253,248,.97);border-bottom-color:var(--brand-line);box-shadow:0 5px 22px rgba(112,31,25,.04)}
.page-title-mini small,.eyebrow,.link-small{color:var(--brand-red)}
.page-head h1{color:var(--brand-text)}
.btn-denada{background:linear-gradient(135deg,var(--brand-red),var(--brand-red-deep));color:#fff}
.btn-outline-denada{border:1px solid #dfc978;background:#fff;color:var(--brand-red)}
.btn-outline-denada:hover{background:var(--brand-gold-soft);border-color:var(--brand-gold-deep)}
.btn-ink{background:var(--brand-red-deep);color:#fff}

.stat-card,.panel,.role-card,.settings-menu,.print-card,.pos-card,.calendar-cell,.dash-modal{
  background:var(--brand-paper);border-color:var(--brand-line);box-shadow:0 12px 34px rgba(112,31,25,.045);
}
.stat-card:after{background:rgba(242,194,48,.16)}
.stat-icon{background:var(--brand-gold-soft);color:var(--brand-red)}
.data-table th{background:#fff6e5;color:#826e69}
.data-table td{border-bottom-color:#f0e1cc}
.data-table tr:hover td{background:#fff8e9}
.mini-avatar{background:var(--brand-gold-soft);color:var(--brand-red)}
.icon-action{border-color:var(--brand-line);background:#fff;color:var(--brand-red)}
.icon-action:hover{background:var(--brand-red);color:#fff;border-color:var(--brand-red)}
.top-profile .avatar,.avatar{background:linear-gradient(135deg,var(--brand-red),var(--brand-gold-deep));color:#fff}
.tabs{background:#f4e8d3}.tab-btn.active{color:var(--brand-red)}
.search-box input,.select-control,.field input,.field select,.field textarea{border-color:#dfcfb5;background:#fff;color:var(--brand-text)}
.search-box input:focus,.select-control:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand-red);box-shadow:0 0 0 3px rgba(215,25,32,.07)}
.quick-list a:hover{background:var(--brand-gold-soft)}
.quick-list i,.notification-icon{background:var(--brand-gold-soft);color:var(--brand-red)}
.settings-menu button.active{background:var(--brand-gold-soft);color:var(--brand-red)}
.message-list-item.active{background:var(--brand-gold-soft);border-left-color:var(--brand-red)}
.content-preview{background:linear-gradient(135deg,var(--brand-red),var(--brand-red-deep));color:#fff}
.content-preview p{color:#ffe9dd}
.pagination button.active{background:var(--brand-red);color:#fff;border-color:var(--brand-red)}
.dash-toast{background:var(--brand-red-deep);border-left-color:var(--brand-gold);color:#fff}
.modal-backdrop-custom{background:rgba(125,5,14,.46)}
.mobile-overlay.open{background:rgba(125,5,14,.36)}
.bar{background:linear-gradient(180deg,var(--brand-red),var(--brand-red-deep))}
.donut{background:conic-gradient(var(--brand-red) 0 44%,var(--brand-gold) 44% 72%,#eadfcf 72% 100%)}

/* Login/register/reset pages: cream + red/gold, no dark panel. */
.auth-page{background:var(--brand-cream)}
.auth-visual{background-color:var(--brand-red-deep)}
.auth-visual:after{background:linear-gradient(180deg,rgba(40,2,5,.38),rgba(20,1,3,.86))}
.auth-copy h1,.auth-copy p{color:#fff}
.auth-copy h1 span{color:var(--brand-gold)}
.auth-copy p{color:#fff0e6}
.auth-panel{background:linear-gradient(145deg,#fffdf8,#fff7e4)}
.auth-card{background:#fff;padding:34px;border:1px solid var(--brand-line);border-top:4px solid var(--brand-red);box-shadow:0 22px 70px rgba(112,31,25,.10)}
.auth-card h2{color:var(--brand-text)}
.auth-options a,.auth-foot a{color:var(--brand-red)}
.divider:before,.divider:after{background:var(--brand-line)}

/* Installer / standalone cards that inherit generic Bootstrap. */
.card{border-color:var(--brand-line)}
.alert-warning{background:var(--brand-gold-soft);border-color:#e8c452;color:#654713}

@media(max-width:991.98px){
  .site-header .navbar{background:linear-gradient(180deg,var(--brand-red-deep),var(--brand-red))}
  .delivery-visual:after{background:linear-gradient(180deg,rgba(255,255,255,0),#fff)}
  .dash-sidebar{box-shadow:20px 0 60px rgba(117,31,25,.12)}
}
@media(max-width:767.98px){
  .page-hero-shade{background:linear-gradient(0deg,rgba(20,1,3,.92),rgba(50,2,7,.65))}
  .auth-card{padding:28px 22px}
}

/* Final dark-surface cleanup */
@media(max-width:767.98px){
  .hero-slide:before{background:linear-gradient(180deg,rgba(40,2,5,.35),rgba(20,1,3,.80))}
}
.profile-hero{
  background:linear-gradient(120deg,var(--brand-red),var(--brand-red-deep));
  color:#fff;
  border:1px solid var(--brand-gold);
}
.profile-hero p{color:#ffe9df}
.media-card{background:var(--brand-red-soft)}

/* Readable typography across public, customer, admin and form interfaces. */
html,
body,
button,
input,
select,
textarea,
optgroup,
table,
.btn,
.navbar,
.dash-sidebar,
.dash-main,
.auth-page {
  font-family:"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif !important;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4,h5,h6,
.display-title,
.section-title,
.page-title,
.hero-title,
.auth-copy h1,
.auth-card h2 {
  font-family:"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif !important;
  font-weight:750;
  line-height:1.15;
  letter-spacing:-.025em;
}
p,li,label,input,select,textarea,button,td,th {
  line-height:1.55;
}

/* Keep notification variants above legacy theme declarations. */
.toast-note.toast-note--success{border-left-color:#198754;background:#f7fff9;color:#23402e}
.toast-note.toast-note--warning{border-left-color:#d98e04;background:#fff9eb;color:#624600}
.toast-note.toast-note--error{border-left-color:#d71920;background:#fff4f4;color:#721c24}
.toast-note.toast-note--info{border-left-color:#397eb8;background:#f3f8fd;color:#244e72}
