/* KENDİN YAP — ortak motor stili (Bayoğlu Dijital, 22 Ekim 2026)
   Her işletme kendi renklerini index.html içindeki :root değişkenleriyle verir. */
:root{
  --zemin:#141210; --zemin2:#1d1a17; --kart:#262220; --cizgi:rgba(255,255,255,.08);
  --yazi:#f6f1ea; --yazi2:rgba(246,241,234,.62); --vurgu:#f5a524; --vurgu-yazi:#1a1206;
  --font:'Manrope',system-ui,sans-serif; --font-baslik:var(--font);
  --radius:18px; --ust:env(safe-area-inset-top,0px); --alt:env(safe-area-inset-bottom,0px);
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
[hidden]{display:none!important}
html,body{margin:0;height:100%;background:var(--zemin);color:var(--yazi);font-family:var(--font);overflow:hidden;overscroll-behavior:none;-webkit-user-select:none;user-select:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
button:focus-visible,a:focus-visible{outline:2px solid var(--vurgu);outline-offset:3px}
img{display:block;-webkit-user-drag:none}
.uyg{position:fixed;inset:0;display:flex;flex-direction:column;max-width:480px;margin:0 auto;padding-top:var(--ust);
  background:
    radial-gradient(120% 70% at 50% 30%, var(--zemin2) 0%, var(--zemin) 70%);
}
/* üst çubuk */
.ust{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 4px;min-height:56px}
.marka{display:flex;flex-direction:column;line-height:1.12}
.marka b{font-family:var(--font-baslik);font-weight:700;font-size:22px;letter-spacing:.01em}
.marka span{font-size:12.5px;color:var(--yazi2);margin-top:2px}
.ust-btn{display:flex;gap:8px}
.ikon-btn{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--kart);border:1px solid var(--cizgi);color:var(--yazi);transition:transform .15s,opacity .2s,background .2s}
.ikon-btn:active{transform:scale(.92)}
.ikon-btn[disabled]{opacity:.35;pointer-events:none}
.ikon-btn svg{width:22px;height:22px}
.ikon-btn.kapali svg .dalga{opacity:0}
/* seçenek satırı (boy / ekmek / taban) */
.secim{display:flex;gap:8px;padding:6px 16px 2px;overflow-x:auto;scrollbar-width:none;flex:none}
.secim::-webkit-scrollbar{display:none}
.secim-grup{display:flex;gap:6px;padding:4px;background:var(--kart);border:1px solid var(--cizgi);border-radius:14px;flex:none}
.secim-grup button{height:36px;padding:0 14px;border-radius:10px;font-size:13.5px;font-weight:600;color:var(--yazi2);white-space:nowrap;transition:background .2s,color .2s,transform .15s}
.secim-grup button:active{transform:scale(.95)}
.secim-grup button[aria-pressed=true]{background:var(--vurgu);color:var(--vurgu-yazi)}
.secim-grup small{display:block;font-weight:500;font-size:11px;opacity:.8;line-height:1.1}
/* sahne */
.sahne-kap{flex:1;display:flex;align-items:center;justify-content:center;min-height:0;padding:0 8px;position:relative}
.sahne{position:relative;width:min(100%,430px);aspect-ratio:1/1;max-height:100%;contain:layout style;perspective:1200px}
.sahne .zemin-halka{position:absolute;left:50%;top:62%;width:72%;aspect-ratio:1/.42;transform:translate(-50%,-50%);border-radius:50%;
  background:radial-gradient(closest-side, rgba(0,0,0,.55), rgba(0,0,0,0) 80%);pointer-events:none}
.katman{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;will-change:transform;transform-origin:50% 50%}
.katman img{position:absolute;width:100%;height:100%;object-fit:contain}
.golge{position:absolute;left:0;top:0;border-radius:50%;background:radial-gradient(closest-side, rgba(0,0,0,.55), rgba(0,0,0,0) 85%);pointer-events:none;will-change:transform,opacity;transform-origin:50% 50%}
.sos-cizgi{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.sos-cizgi path{fill:none;stroke-linecap:round;stroke-linejoin:round}
/* sahne üstü eylem düğmesi (patatesi aç / dür) */
.eylem{position:absolute;left:50%;bottom:6%;transform:translateX(-50%);height:48px;padding:0 20px 0 16px;border-radius:999px;display:flex;align-items:center;gap:8px;
  background:var(--vurgu);color:var(--vurgu-yazi);font-weight:700;font-size:15px;box-shadow:0 10px 30px rgba(0,0,0,.45);z-index:50;white-space:nowrap}
.eylem svg{width:20px;height:20px}
.eylem:active{transform:translateX(-50%) scale(.96)}
.ipucu{position:absolute;left:50%;top:4%;transform:translateX(-50%);font-size:13px;color:var(--yazi2);background:rgba(0,0,0,.35);padding:6px 12px;border-radius:999px;backdrop-filter:blur(6px);white-space:nowrap;z-index:40;pointer-events:none}
/* malzeme rayı */
.ray-baslik{display:flex;justify-content:space-between;align-items:baseline;padding:4px 18px 0;font-size:12.5px;color:var(--yazi2)}
.ray{display:flex;gap:10px;padding:8px 16px 10px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;flex:none}
.ray::-webkit-scrollbar{display:none}
.malz{flex:none;width:76px;display:flex;flex-direction:column;align-items:center;gap:5px;scroll-snap-align:start;position:relative;transition:opacity .2s}
.malz[disabled]{opacity:.38}
.malz .yuvarlak{width:66px;height:66px;border-radius:50%;background:var(--kart);border:1.5px solid var(--cizgi);display:grid;place-items:center;position:relative;transition:transform .18s cubic-bezier(.2,1.4,.4,1),border-color .2s,box-shadow .2s}
.malz .yuvarlak img{width:52px;height:52px;object-fit:contain;filter:drop-shadow(0 4px 6px rgba(0,0,0,.45))}
.malz:active .yuvarlak{transform:scale(.9)}
.malz.secili .yuvarlak{border-color:var(--vurgu);box-shadow:0 0 0 3px color-mix(in srgb,var(--vurgu) 28%,transparent)}
.malz .ad{font-size:12px;font-weight:600;line-height:1.15;text-align:center;max-width:78px;white-space:nowrap}
.malz .fiyat{font-size:11.5px;color:var(--yazi2);margin-top:-2px}
.malz .rozet{position:absolute;top:-4px;right:-2px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--vurgu);color:var(--vurgu-yazi);font-size:12px;font-weight:800;display:grid;place-items:center;transform:scale(0);transition:transform .2s cubic-bezier(.2,1.6,.4,1)}
.malz.secili .rozet{transform:scale(1)}
/* sipariş çubuğu */
.cubuk{display:flex;align-items:center;gap:12px;padding:10px 16px calc(12px + var(--alt));flex:none}
.toplam{display:flex;flex-direction:column;line-height:1.05;min-width:96px}
.toplam small{font-size:11.5px;color:var(--yazi2)}
.toplam b{font-size:26px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.siparis{flex:1;height:54px;border-radius:16px;background:var(--vurgu);color:var(--vurgu-yazi);font-weight:800;font-size:16.5px;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 10px 28px color-mix(in srgb,var(--vurgu) 35%,transparent);transition:transform .15s}
.siparis:active{transform:scale(.97)}
.siparis svg{width:20px;height:20px}
/* özet sayfası */
.perde{position:fixed;inset:0;background:rgba(0,0,0,.55);opacity:0;pointer-events:none;transition:opacity .25s;z-index:90}
.perde.acik{opacity:1;pointer-events:auto}
.ozet{position:fixed;left:50%;bottom:0;width:min(100%,480px);transform:translate(-50%,105%);background:var(--zemin2);border-radius:26px 26px 0 0;padding:14px 18px calc(18px + var(--alt));z-index:95;transition:transform .42s cubic-bezier(.2,.9,.25,1);max-height:88vh;display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:none;box-shadow:0 -20px 60px rgba(0,0,0,.5)}
.ozet.acik{transform:translate(-50%,0)}
.ozet .tutamac{width:40px;height:4px;border-radius:2px;background:var(--cizgi);margin:0 auto 10px}
.ozet h2{margin:0 0 2px;font-family:var(--font-baslik);font-size:22px;flex:none}
.ozet .alt-yazi,.ozet .tutamac{flex:none}
.ozet .alt-yazi{color:var(--yazi2);font-size:13px;margin:0 0 12px}
.ozet-gorsel{width:120px;height:120px;position:absolute;right:16px;top:14px;pointer-events:none}
.ozet ul{list-style:none;margin:0;padding:0;flex:none;max-height:22vh;overflow:auto;scrollbar-width:none;border-top:1px solid var(--cizgi)}
.ozet .gonder,.ozet .kapat,.ozet .teslim,.ozet .alan,.ozet .not,.ozet .satir-toplam{flex:none}
.ozet li{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--cizgi);font-size:14.5px}
.ozet li span:last-child{color:var(--yazi2);font-variant-numeric:tabular-nums}
.ozet .not{margin:12px 0 4px}
.ozet textarea{width:100%;min-height:54px;background:var(--kart);border:1px solid var(--cizgi);border-radius:12px;color:var(--yazi);padding:10px 12px;font:inherit;font-size:14px;resize:none}
.ozet .satir-toplam{display:flex;justify-content:space-between;align-items:baseline;padding:12px 0 10px;font-size:15px}
.ozet .satir-toplam b{font-size:24px}
.teslim{display:flex;gap:6px;padding:4px;background:var(--kart);border:1px solid var(--cizgi);border-radius:14px;margin:12px 0 10px}
.teslim button{flex:1;height:42px;border-radius:10px;font-weight:700;font-size:14px;color:var(--yazi2);display:flex;align-items:center;justify-content:center;gap:8px;transition:background .2s,color .2s}
.teslim button svg{width:18px;height:18px}
.teslim button[aria-pressed=true]{background:var(--vurgu);color:var(--vurgu-yazi)}
.alan{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}
.alan label{font-size:12.5px;color:var(--yazi2);padding-left:2px}
.alan input{height:46px;background:var(--kart);border:1px solid var(--cizgi);border-radius:12px;color:var(--yazi);padding:0 12px;font:inherit;font-size:16px}
.alan input:focus,.ozet textarea:focus{outline:2px solid var(--vurgu);outline-offset:0;border-color:transparent}
.gonder{height:54px;border-radius:16px;background:var(--vurgu);color:var(--vurgu-yazi);font-weight:800;font-size:16px;display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 10px 28px color-mix(in srgb,var(--vurgu) 35%,transparent);transition:transform .15s}
.gonder:active{transform:scale(.97)}
.gonder svg{width:20px;height:20px}
.ozet .kapat{margin-top:10px;height:44px;color:var(--yazi2);font-weight:600;font-size:14px}
.ozet .not{margin:4px 0 4px}
/* takip ekranı (sipariş mutfağa gitti) */
.takip{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:16px;background:radial-gradient(120% 70% at 50% 30%, var(--zemin2) 0%, var(--zemin) 70%);opacity:0;pointer-events:none;transition:opacity .3s}
.takip.acik{opacity:1;pointer-events:auto}
.takip-kart{position:relative;width:min(100%,420px);background:var(--kart);border:1px solid var(--cizgi);border-radius:26px;padding:22px 20px 18px;box-shadow:0 30px 80px rgba(0,0,0,.5);transform-origin:50% 50%}
.takip-ust{display:flex;justify-content:space-between;font-size:14px;color:var(--yazi2);font-weight:700;padding-right:44px}
.takip-ust span:first-child{color:var(--vurgu);font-size:16px}
.takip h2{margin:14px 0 4px;font-family:var(--font-baslik);font-size:30px;line-height:1.1}
.takip p{margin:0 0 18px;color:var(--yazi2);font-size:14.5px;min-height:20px}
.adimlar{list-style:none;margin:0 0 18px;padding:0;display:flex;position:relative}
.adimlar::before{content:'';position:absolute;left:10%;right:10%;top:11px;height:2px;background:var(--cizgi)}
.adim{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;font-size:12.5px;color:var(--yazi2);position:relative}
.adim i{width:24px;height:24px;border-radius:50%;background:var(--zemin2);border:2px solid var(--cizgi);display:block;transition:background .3s,border-color .3s,transform .3s}
.adim.oldu i{background:var(--vurgu);border-color:var(--vurgu)}
.adim.oldu i::after{content:'';position:absolute;left:9px;top:5px;width:5px;height:9px;border:solid var(--vurgu-yazi);border-width:0 2px 2px 0;transform:rotate(45deg)}
.adim.simdi i{border-color:var(--vurgu);transform:scale(1.15);animation:nabiz 1.4s infinite}
.adim.simdi,.adim.oldu{color:var(--yazi)}
@keyframes nabiz{0%,100%{box-shadow:0 0 0 0 color-mix(in srgb,var(--vurgu) 50%,transparent)}70%{box-shadow:0 0 0 10px transparent}}
.takip ul{list-style:none;margin:0;padding:10px 0;border-top:1px solid var(--cizgi);border-bottom:1px solid var(--cizgi);font-size:14px;color:var(--yazi2);display:flex;flex-wrap:wrap;gap:4px 12px}
.takip ul li:first-child{color:var(--yazi);font-weight:700;width:100%}
.takip-toplam{display:flex;justify-content:space-between;align-items:baseline;padding:12px 0 14px;font-size:13.5px;color:var(--yazi2)}
.takip-toplam b{font-size:22px;color:var(--yazi)}
.takip-yeni{width:100%;height:48px;border-radius:14px;background:var(--zemin2);border:1px solid var(--cizgi);font-weight:700;font-size:15px}
.takip-kapat{position:absolute;right:12px;top:12px;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:var(--yazi2)}
.takip-kapat svg{width:18px;height:18px}
.takip[data-durum=hazir] h2{color:var(--vurgu)}
/* sos katmanı */
.katman.sos img{filter:drop-shadow(0 2px 2px rgba(0,0,0,.35))}
/* masaüstü: telefon çerçevesi hissi */
@media (min-width:900px){body{background:radial-gradient(80% 60% at 50% 40%, var(--zemin2), var(--zemin))}.uyg{max-width:430px;border-radius:0}}
/* uyarı */
.toast{position:fixed;left:50%;bottom:calc(150px + var(--alt));transform:translate(-50%,10px);background:var(--kart);border:1px solid var(--cizgi);padding:10px 16px;border-radius:999px;font-size:13.5px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:80;white-space:nowrap}
.toast.acik{opacity:1;transform:translate(-50%,0)}
/* dokunuş halkası (kayıt için) */
.dokunus{position:fixed;width:44px;height:44px;border-radius:50%;border:3px solid rgba(255,255,255,.9);background:rgba(255,255,255,.25);pointer-events:none;z-index:200;transform:translate(-50%,-50%) scale(.4);opacity:0}
@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important}}
@media (min-width:481px){.uyg{box-shadow:0 0 0 1px var(--cizgi)}}
@media (max-height:700px){.marka b{font-size:19px}.malz .yuvarlak{width:58px;height:58px}.malz .yuvarlak img{width:46px;height:46px}.siparis{height:50px}}
