/* DÖNER DELUXE v4 — Dual Theme */
:root{
  --bg:#0a0604;--bg2:#140e08;--surface:#1a1208;--surface2:#1c1410;
  --text:#f5efe8;--text2:rgba(255,255,255,.6);--text3:rgba(255,255,255,.35);--text4:rgba(255,255,255,.2);
  --card:#141008;--card-hover:#1c1410;--card-border:rgba(255,255,255,.04);--card-border-hover:rgba(249,115,22,.25);
  --gold:#f59e0b;--gold2:#fbbf24;--fire:#ea580c;--brand:#dc2626;
  --glass-bg:rgba(20,14,8,.75);--glass-border:rgba(249,115,22,.08);
  --divider:rgba(255,255,255,.03);--shadow:rgba(0,0,0,.3);
  --ember-opacity:1;--glow-opacity:.6;
}
[data-theme="light"]{
  --bg:#FDF6EC;--bg2:#F5EBD8;--surface:#FFF8EE;--surface2:#F0E4D0;
  --text:#2D1B0E;--text2:#5C4033;--text3:#8B6F5E;--text4:#B89B85;
  --card:#FFFFFF;--card-hover:#FFF8EE;--card-border:rgba(45,27,14,.08);--card-border-hover:rgba(234,88,12,.25);
  --gold:#d97706;--gold2:#b45309;--fire:#ea580c;--brand:#dc2626;
  --glass-bg:rgba(255,248,238,.85);--glass-border:rgba(234,88,12,.12);
  --divider:rgba(45,27,14,.08);--shadow:rgba(45,27,14,.1);
  --ember-opacity:.3;--glow-opacity:.25;
}
html{scroll-behavior:smooth}
body{overflow-x:hidden;background:var(--bg);color:var(--text);transition:background .4s,color .4s}
*{box-sizing:border-box}
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{background:var(--gold);border-radius:3px}

/* FIRE */
.fire-container{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;opacity:var(--ember-opacity);transition:opacity .4s}
.ember{position:absolute;bottom:-10px;border-radius:50%;pointer-events:none;filter:blur(0.5px)}
.ember--rise{animation:emberRise linear infinite}
@keyframes emberRise{0%{transform:translateY(0) translateX(0) scale(1);opacity:.9}25%{transform:translateY(-25vh) translateX(12px) scale(.85);opacity:.7}50%{transform:translateY(-50vh) translateX(-10px) scale(.6);opacity:.4}75%{transform:translateY(-75vh) translateX(15px) scale(.3);opacity:.2}100%{transform:translateY(-105vh) translateX(-5px) scale(.1);opacity:0}}
.warm-glow{position:fixed;bottom:0;left:0;right:0;height:35vh;background:radial-gradient(ellipse 80% 50% at 50% 100%,rgba(232,137,10,.08)0%,rgba(196,30,58,.04)40%,transparent 70%);pointer-events:none;z-index:0;animation:glowPulse 4s ease-in-out infinite;opacity:var(--glow-opacity);transition:opacity .4s}
@keyframes glowPulse{0%,100%{opacity:var(--glow-opacity)}50%{opacity:1}}
section,footer{position:relative;z-index:1}

/* PROMO */
.promo-banner{background:linear-gradient(90deg,#e8590c 0%,#C41E3A 50%,#e8590c 100%);background-size:200% 100%;animation:shimmerBg 5s ease infinite}
@keyframes shimmerBg{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}

/* GOLD TEXT */
.text-gold-gradient{background:linear-gradient(135deg,var(--gold),var(--gold2),var(--fire),var(--gold));background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:goldShift 4s ease infinite}
@keyframes goldShift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}

/* HERO */
.hero-section{position:relative;overflow:hidden;z-index:1}
.hero-section::before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(10,6,4,.6)0%,rgba(10,6,4,.15)30%,rgba(10,6,4,.9)100%)}
[data-theme="light"] .hero-section::before{background:linear-gradient(180deg,rgba(253,246,236,.4)0%,rgba(253,246,236,.05)30%,rgba(253,246,236,.92)100%)}
.hero-section::after{content:'';position:absolute;bottom:0;left:0;right:0;height:200px;z-index:1;background:linear-gradient(0deg,rgba(232,89,12,.12)0%,transparent 100%);animation:heroGlow 3s ease-in-out infinite}
@keyframes heroGlow{0%,100%{opacity:.5}50%{opacity:1}}
.hero-section>*{position:relative;z-index:2}
@keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
.anim-fade-up{animation:fadeUp .8s ease forwards;opacity:0}
.anim-delay-1{animation-delay:.15s}.anim-delay-2{animation-delay:.3s}.anim-delay-3{animation-delay:.45s}
/* Hero text on light */
[data-theme="light"] .hero-section h1{color:#2D1B0E;-webkit-text-fill-color:#2D1B0E}
[data-theme="light"] .hero-section h1 .text-gold-gradient{-webkit-text-fill-color:transparent}
[data-theme="light"] .hero-section p{color:#5C4033!important}

/* NAVBAR */
.nav-scrolled{background:rgba(10,6,4,.95)!important;backdrop-filter:blur(20px)!important;border-bottom:1px solid rgba(249,115,22,.1)}
[data-theme="light"] .nav-scrolled{background:rgba(253,246,236,.92)!important;border-bottom:1px solid rgba(234,88,12,.1)}

/* THEME TOGGLE */
.theme-toggle{width:36px;height:36px;border-radius:50%;border:1px solid var(--card-border);background:var(--card);
  display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;transition:all .3s;flex-shrink:0}
.theme-toggle:hover{border-color:var(--card-border-hover);transform:scale(1.1)}

/* LANG */
.lang-btn{padding:2px 8px;border-radius:6px;font-size:10px;font-weight:700;background:transparent;
  color:var(--text3);border:1px solid transparent;cursor:pointer;transition:all .2s;letter-spacing:.5px}
.lang-btn.active,.lang-btn:hover{color:var(--gold);border-color:rgba(249,115,22,.3);background:rgba(249,115,22,.08)}

/* REVEAL */
.reveal{opacity:0;transform:translateY(35px);transition:all .7s cubic-bezier(.25,.46,.45,.94)}
.reveal.active{opacity:1;transform:translateY(0)}
.gold-divider{height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent)}

/* TABS */
.tab-btn{position:relative;transition:all .3s ease;white-space:nowrap;color:var(--text3)!important}
.tab-btn::after{content:'';position:absolute;bottom:-4px;left:50%;width:0;height:2px;background:linear-gradient(90deg,var(--fire),var(--gold2));transition:all .3s;transform:translateX(-50%)}
.tab-btn.active::after,.tab-btn:hover::after{width:80%}
.tab-btn.active{color:var(--fire)!important;background:rgba(249,115,22,.1)!important}
.tabs-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}
.tabs-scroll::-webkit-scrollbar{display:none}

/* MENU CARD */
.menu-card{background:var(--card);border:1px solid var(--card-border);border-radius:14px;
  padding:1rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;transition:all .3s ease}
.menu-card:hover{border-color:var(--card-border-hover);background:var(--card-hover);transform:translateY(-2px);box-shadow:0 8px 25px var(--shadow)}
.menu-card .item-name{font-weight:600;font-size:.9rem;color:var(--text)}
.menu-card .item-desc{font-size:.75rem;color:var(--text3);margin-top:2px}
.menu-card .item-badge{font-size:.55rem;font-weight:700;padding:2px 6px;border-radius:99px;display:inline-block;margin-left:6px;vertical-align:middle}
.menu-card .item-price{font-weight:700;font-size:1rem;white-space:nowrap;background:linear-gradient(135deg,var(--fire),var(--gold2));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
@media(max-width:640px){.menu-card{padding:.8rem .9rem;gap:.5rem}.menu-card .item-name{font-size:.8rem}.menu-card .item-price{font-size:.88rem}}

/* ADD BTN */
.add-btn{width:36px;height:36px;border-radius:10px;border:none;background:linear-gradient(135deg,#ea580c,#dc2626);
  color:#fff;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .25s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.add-btn:hover{transform:scale(1.1);box-shadow:0 4px 15px rgba(234,88,12,.5)}

/* QTY */
.qty-controls{display:flex;align-items:center;border-radius:10px;overflow:hidden;border:1px solid rgba(249,115,22,.3);flex-shrink:0}
.qty-controls button{width:32px;height:32px;border:none;cursor:pointer;font-size:.9rem;font-weight:700;display:flex;align-items:center;justify-content:center;transition:background .2s;background:var(--surface);color:var(--fire)}
.qty-controls .qty-minus:hover{background:#dc2626;color:#fff}
.qty-controls .qty-val{width:28px;height:32px;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:var(--gold);background:var(--bg)}
.qty-controls .qty-plus:hover{background:#22c55e;color:#fff}

/* CART FAB */
.cart-fab{position:fixed;bottom:24px;right:24px;z-index:50;width:60px;height:60px;border-radius:50%;border:none;
  background:linear-gradient(135deg,#ea580c,#dc2626);color:#fff;font-size:1.5rem;cursor:pointer;
  box-shadow:0 8px 30px rgba(234,88,12,.5);display:flex;align-items:center;justify-content:center;transition:all .3s ease;animation:fabGlow 2s ease-in-out infinite}
@keyframes fabGlow{0%,100%{box-shadow:0 8px 30px rgba(234,88,12,.5),0 0 20px rgba(234,88,12,.2)}50%{box-shadow:0 8px 40px rgba(234,88,12,.7),0 0 35px rgba(234,88,12,.3)}}
.cart-fab:hover{transform:scale(1.1)}
.cart-fab .cart-badge{position:absolute;top:-4px;right:-4px;width:22px;height:22px;border-radius:50%;background:var(--gold2);color:#000;font-size:.7rem;font-weight:800;display:flex;align-items:center;justify-content:center}
.cart-fab.empty{opacity:0;pointer-events:none;transform:scale(.5)}
@media(max-width:640px){.cart-fab{bottom:16px;right:16px;width:52px;height:52px;font-size:1.2rem}}

/* CART DRAWER */
.cart-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);backdrop-filter:blur(4px);z-index:60;opacity:0;pointer-events:none;transition:opacity .3s}
.cart-overlay.open{opacity:1;pointer-events:auto}
.cart-drawer{position:fixed;top:0;right:0;bottom:0;width:380px;max-width:92vw;background:var(--bg);
  border-left:1px solid var(--glass-border);z-index:61;transform:translateX(100%);transition:transform .35s cubic-bezier(.25,.46,.45,.94);display:flex;flex-direction:column}
.cart-drawer.open{transform:translateX(0)}
.cart-drawer-header{padding:1rem 1.25rem;border-bottom:1px solid var(--divider);display:flex;align-items:center;justify-content:space-between;color:var(--text)}
.cart-drawer-body{flex:1;overflow-y:auto;padding:.75rem 1.25rem}
.cart-drawer-footer{padding:1rem 1.25rem;border-top:1px solid var(--divider);background:var(--surface)}
.cart-item{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--divider);gap:.5rem}
.cart-item:last-child{border-bottom:none}
.cart-item-name{font-size:.82rem;font-weight:500;color:var(--text)}
.cart-item-price{font-size:.72rem;color:var(--text3);margin-top:2px}

/* OFFER */
.offer-glow{position:relative;overflow:hidden;border-radius:20px}
.offer-glow::before{content:'';position:absolute;inset:0;border-radius:20px;padding:1.5px;background:linear-gradient(135deg,var(--gold),var(--brand),var(--gold));-webkit-mask:linear-gradient(#fff 0 0)content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0)content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude}

/* GLASS */
.glass{background:var(--glass-bg);backdrop-filter:blur(16px);border:1px solid var(--glass-border);transition:all .35s ease}
.glass:hover{border-color:var(--card-border-hover)}

.pulse-dot{animation:pulse 2s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.5)}}
.btn-shimmer{position:relative;overflow:hidden}
.btn-shimmer::after{content:'';position:absolute;top:-50%;left:-60%;width:40%;height:200%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transform:skewX(-20deg);animation:shimmerBtn 3.5s ease-in-out infinite}
@keyframes shimmerBtn{0%{left:-60%}100%{left:120%}}
.mobile-menu{transform:translateX(100%);transition:transform .35s cubic-bezier(.25,.46,.45,.94)}
.mobile-menu.open{transform:translateX(0)}
.map-wrap{border-radius:16px;overflow:hidden;border:1px solid var(--glass-border)}
@keyframes fadeIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
.panel-animate{animation:fadeIn .35s ease forwards}

/* Theme-specific text helpers */
.t-text{color:var(--text)}.t-text2{color:var(--text2)}.t-text3{color:var(--text3)}.t-text4{color:var(--text4)}
.t-bg{background:var(--bg)}.t-bg2{background:var(--bg2)}.t-surface{background:var(--surface)}
