/* ============================================================
   VENTROSA — TASARIM DEĞİŞKENLERİ

   Palet: derin gece mavisi + şarap kırmızısı + şampanya altını.
   Eski sıcak-kağıt paletinin yerini aldı; amaç daha kurumsal ve
   premium bir izlenim. Tüm bileşenler bu değişkenleri kullandığı
   için renk değişimi tek noktadan yapılır.
   ============================================================ */
:root {
  /* yüzeyler — hafif soğuk, temiz */
  --paper:#F4F2F7;
  --paper-2:#EAE7F0;
  --card:#FFFFFF;
  --white:#FFFFFF;

  /* metin */
  --ink:#171425;
  --ink-soft:#5B5570;
  --ink-faint:#9A93AD;

  /* kenar çubuğu — derin gece moru */
  --nav:#171327;
  --nav-2:#211B38;
  --nav-line:rgba(233,229,245,0.10);

  /* marka renkleri */
  --ember:#8E2A4F;        /* şarap — birincil eylem */
  --ember-deep:#6E1E3C;
  --gold:#C9A227;         /* şampanya altını — vurgu */
  --olive:#3F6B5C;        /* derin yeşil — ikincil */

  /* durum */
  --good:#2E7D5B;
  --bad:#C0392B;
  --warn:#C08A18;

  /* çizgiler */
  --line:rgba(23,20,37,0.12);
  --line-2:rgba(23,20,37,0.06);

  /* tipografi */
  --f-disp:"Fraunces",Georgia,serif;
  --f-body:"Inter",system-ui,sans-serif;

  /* yükseklik — premium his için katmanlı gölge */
  --shadow:0 20px 48px rgba(23,20,37,0.16), 0 2px 6px rgba(23,20,37,0.06);
  --shadow-sm:0 2px 10px rgba(23,20,37,0.07);
  --radius:14px;
}
* { box-sizing:border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--f-body); -webkit-font-smoothing:antialiased; }
button, input, select { font-family:inherit; }
:focus-visible { outline:2px solid var(--ember); outline-offset:2px; }
::selection { background:var(--ember); color:var(--white); }

/* ============ LOGIN (iki kolon: slider + form) ============ */
.login { min-height:100vh; display:flex; background:var(--paper); }

/* SOL: fotoğraf slider */
.login-visual { flex:1; position:relative; overflow:hidden; background:var(--nav); display:flex; }
.slides { position:absolute; inset:0; }
.slide { position:absolute; inset:0; opacity:0; transition:opacity 1s ease; display:flex; align-items:center; justify-content:center; }
.slide.active { opacity:1; }
.slide img { width:100%; height:100%; object-fit:cover; }
/* Görsel yokken gösterilecek şık placeholder (kendi fotoğrafını koyunca kaybolur) */
.slide__ph { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:40px; text-align:center; }
.slide__ph .big { font-family:var(--f-disp); font-style:italic; font-weight:500; font-size:72px; color:rgba(244,236,221,0.9); line-height:1; margin-bottom:14px; }
.slide__ph .cap { font-size:14px; color:rgba(244,236,221,0.6); max-width:280px; line-height:1.6; }
.slide-1 { background:linear-gradient(150deg,#2C241D,#3A2418 60%,#5A2410); }
.slide-2 { background:linear-gradient(150deg,#241D17,#4A3418 70%,#9A7526); }
.slide-3 { background:linear-gradient(150deg,#1E1813,#3A241D 55%,#C33A17); }
/* alttaki içerik + marka */
.login-visual__overlay { position:absolute; inset:0; z-index:2; display:flex; flex-direction:column; justify-content:space-between;
  padding:40px; background:linear-gradient(180deg, rgba(20,15,12,0.35), transparent 30%, transparent 60%, rgba(20,15,12,0.55)); pointer-events:none; }
.login-visual__brand { font-family:var(--f-disp); font-style:italic; font-weight:500; font-size:30px; color:var(--white); }
.login-visual__brand small { display:block; font-family:var(--f-body); font-style:normal; font-size:10.5px; letter-spacing:0.24em; text-transform:uppercase; color:rgba(244,236,221,0.6); margin-top:2px; }
.login-visual__tagline { max-width:400px; }
.login-visual__tagline h2 { font-family:var(--f-disp); font-weight:500; font-size:30px; color:var(--white); margin:0 0 8px; line-height:1.15; }
.login-visual__tagline p { font-size:14px; color:rgba(244,236,221,0.7); margin:0; line-height:1.6; }
/* slider noktaları */
.slide-dots { position:absolute; bottom:24px; left:50%; transform:translateX(-50%); z-index:3; display:flex; gap:8px; }
.slide-dot { width:8px; height:8px; border-radius:999px; background:rgba(244,236,221,0.35); border:none; cursor:pointer; padding:0; transition:width .3s, background .3s; }
.slide-dot.active { width:26px; background:var(--ember); }

/* SAĞ: form */
.login-form-wrap { width:min(46%, 480px); flex:none; display:flex; align-items:center; justify-content:center; padding:40px 44px; background:var(--white); }
.login-form { width:100%; max-width:340px; }
.login-form .welcome { font-family:var(--f-disp); font-weight:500; font-size:30px; margin:0 0 4px; }
.login-form .portal { font-size:13px; color:var(--ink-soft); margin:0 0 28px; }
.field { margin-bottom:15px; }
.field label { display:block; font-size:11px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; color:var(--ink-soft); margin-bottom:7px; }
.field-box { display:flex; align-items:center; border:1px solid var(--line); border-radius:12px; background:var(--paper); padding:0 14px; transition:border-color .15s; }
.field-box:focus-within { border-color:var(--ember); }
.field-box input { flex:1; padding:13px 0; border:none; background:none; color:var(--ink); font-size:14px; outline:none; }
.field-box .eye { background:none; border:none; cursor:pointer; color:var(--ink-faint); display:flex; padding:4px; }
.field-box .eye:hover { color:var(--ink); }
.forgot { display:inline-block; font-size:12.5px; color:var(--ember); font-weight:600; margin-bottom:20px; cursor:pointer; }
.forgot:hover { text-decoration:underline; }
.login-btn { width:100%; padding:14px; border:none; border-radius:12px; background:var(--ember); color:var(--white); font-size:14.5px; font-weight:700; cursor:pointer; transition:background .2s; }
.login-btn:hover { background:var(--ember-deep); }
.login-err { display:none; background:rgba(192,64,46,0.1); color:var(--bad); font-size:12.5px; padding:10px 12px; border-radius:9px; margin-bottom:16px; }
.login-err.show { display:block; }
.login-contact { margin-top:28px; padding-top:20px; border-top:1px solid var(--line-2); }
.login-contact h4 { font-size:13px; color:var(--ember); font-weight:700; margin:0 0 12px; }
.login-contact a { display:flex; align-items:center; gap:10px; font-size:13px; color:var(--ink-soft); margin-bottom:9px; }
.login-contact a:hover { color:var(--ink); }
.login-contact svg { width:16px; height:16px; color:var(--ink-faint); flex:none; }
.login-demo { margin-top:22px; padding-top:16px; border-top:1px solid var(--line-2); font-size:11.5px; color:var(--ink-faint); line-height:1.7; }
.login-demo b { color:var(--ink-soft); }
.login-demo code { background:var(--paper); padding:1px 6px; border-radius:5px; font-family:ui-monospace,monospace; font-size:11px; color:var(--ink); }

@media (max-width:840px){
  .login-visual { display:none; }
  .login-form-wrap { width:100%; }
}

/* ============ SHELL ============ */
.shell { display:none; min-height:100vh; }
.shell.show { display:flex; }

/* ============ LOGIN MODALLERİ (OTP / şifremi unuttum) ============ */
.lm-scrim { position:fixed; inset:0; z-index:100; background:rgba(36,29,23,0.55); display:flex; align-items:center; justify-content:center;
  padding:24px; opacity:0; pointer-events:none; transition:opacity .28s; }
.lm-scrim.show { opacity:1; pointer-events:auto; }
.lm { width:100%; max-width:400px; background:var(--white); border-radius:20px; padding:28px 26px; box-shadow:var(--shadow);
  transform:translateY(14px) scale(.97); transition:transform .3s cubic-bezier(.2,.9,.3,1.2); }
.lm-scrim.show .lm { transform:translateY(0) scale(1); }
.lm__icon { width:54px; height:54px; border-radius:16px; background:rgba(195,58,23,0.1); color:var(--ember);
  display:flex; align-items:center; justify-content:center; margin-bottom:16px; }
.lm__icon svg { width:26px; height:26px; }
.lm h3 { font-family:var(--f-disp); font-weight:500; font-size:21px; margin:0 0 6px; }
.lm p { font-size:13px; color:var(--ink-soft); margin:0 0 18px; line-height:1.55; }
.lm p b { color:var(--ink); }
.lm__err { display:none; background:rgba(192,64,46,0.1); color:var(--bad); font-size:12.5px; padding:9px 12px; border-radius:9px; margin-bottom:14px; }
.lm__err.show { display:block; }

/* OTP kutuları */
.otp-inputs { display:flex; gap:9px; justify-content:center; margin-bottom:16px; }
.otp-box { width:46px; height:56px; text-align:center; font-family:var(--f-disp); font-size:26px; font-weight:500;
  border:1px solid var(--line); border-radius:12px; background:var(--paper); color:var(--ink); outline:none; transition:border-color .15s; }
.otp-box:focus { border-color:var(--ember); }
.otp-box.filled { border-color:var(--ember); background:var(--white); }
.lm__timer { text-align:center; font-size:12.5px; color:var(--ink-soft); margin-bottom:18px; }
.lm__timer b { color:var(--ember); font-variant-numeric:tabular-nums; }
.lm__resend { color:var(--ember); font-weight:600; cursor:pointer; background:none; border:none; font-size:12.5px; }
.lm__resend[disabled] { color:var(--ink-faint); cursor:not-allowed; }

.lm__field { margin-bottom:16px; }
.lm__field label { display:block; font-size:11px; font-weight:600; letter-spacing:0.05em; text-transform:uppercase; color:var(--ink-soft); margin-bottom:7px; }
.lm__field input { width:100%; padding:12px 14px; border:1px solid var(--line); border-radius:11px; background:var(--paper); color:var(--ink); font-size:14px; outline:none; }
.lm__field input:focus { border-color:var(--ember); }

.lm__actions { display:flex; gap:10px; margin-top:4px; }
.lm__actions .btn { flex:1; justify-content:center; padding:13px; text-align:center; }
.lm__cancel { flex:1; padding:13px; border:1px solid var(--line); border-radius:11px; background:none; color:var(--ink-soft); font-size:13.5px; font-weight:600; cursor:pointer; }
.lm__cancel:hover { border-color:var(--ink-soft); color:var(--ink); }
.lm__submit { flex:1; padding:13px; border:none; border-radius:11px; background:var(--ember); color:var(--white); font-size:13.5px; font-weight:700; cursor:pointer; }
.lm__submit:hover { background:var(--ember-deep); }

/* SMS gönderildi bildirimi (sağ üst) */
.sms-note { position:fixed; top:22px; right:22px; z-index:110; display:flex; align-items:flex-start; gap:12px;
  background:#FBF3DC; border:1px solid rgba(184,134,43,0.4); border-radius:14px; padding:14px 16px; max-width:330px;
  box-shadow:var(--shadow); transform:translateX(120%); transition:transform .4s cubic-bezier(.2,.9,.3,1.2); }
.sms-note.show { transform:translateX(0); }
.sms-note__ic { width:34px; height:34px; border-radius:50%; background:var(--ember); color:#fff; display:flex; align-items:center; justify-content:center; flex:none; }
.sms-note__ic svg { width:18px; height:18px; }
.sms-note__b { flex:1; }
.sms-note__t { font-size:13px; font-weight:700; color:var(--warn); margin-bottom:2px; }
.sms-note__m { font-size:12.5px; color:var(--ink-soft); }
.sms-note__x { background:none; border:none; color:var(--warn); cursor:pointer; font-size:15px; padding:2px; }

.sidebar { width:244px; flex:none; background:var(--nav); color:var(--paper); min-height:100vh;
  position:sticky; top:0; align-self:flex-start; height:100vh; overflow-y:auto; padding:20px 0; display:flex; flex-direction:column; }
.sb-brand { padding:0 22px 20px; border-bottom:1px solid var(--nav-line); margin-bottom:10px; }
.sb-brand .mark { font-family:var(--f-disp); font-style:italic; font-weight:500; font-size:26px; color:var(--white); }
.sb-brand .role { font-size:10.5px; letter-spacing:0.14em; text-transform:uppercase; color:var(--gold); margin-top:2px; }
.sb-group { font-size:10px; letter-spacing:0.14em; text-transform:uppercase; color:rgba(244,236,221,0.4); padding:16px 22px 7px; font-weight:700; }
.sb-link { display:flex; align-items:center; gap:12px; width:100%; padding:11px 22px; border:none; background:none; cursor:pointer;
  color:rgba(244,236,221,0.72); font-size:13.5px; font-weight:500; text-align:left; position:relative; transition:color .15s, background .15s; }
.sb-link:hover { color:var(--white); background:rgba(255,255,255,0.03); }
.sb-link.active { color:var(--white); background:rgba(255,255,255,0.05); }
.sb-link.active::before { content:""; position:absolute; left:0; top:7px; bottom:7px; width:3px; background:var(--ember); border-radius:0 3px 3px 0; }
.sb-link svg { width:18px; height:18px; flex:none; }
.sb-foot { margin-top:auto; padding:14px 22px 0; border-top:1px solid var(--nav-line); }
.sb-user { display:flex; align-items:center; gap:10px; margin-bottom:10px; }
.sb-avatar { width:34px; height:34px; border-radius:50%; background:var(--ember); color:var(--white); display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; }
.sb-user .n { font-size:13px; font-weight:600; color:var(--white); }
.sb-user .r { font-size:11px; color:rgba(244,236,221,0.5); }
.logout { width:100%; padding:9px; border:1px solid var(--nav-line); border-radius:9px; background:none; color:rgba(244,236,221,0.7); font-size:12.5px; font-weight:600; cursor:pointer; }
.logout:hover { color:var(--white); border-color:var(--ember); }

.main { flex:1; min-width:0; }
/* Üst çubuk.
   SABİT yükseklik yerine min-height: butonlar sarınca çubuk uzar.
   Önceden height:60px idi ve mobilde butonlar başlığın üstüne biniyordu. */
.topbar { min-height:60px; display:flex; align-items:center; justify-content:space-between;
  gap:14px; padding:10px 28px; background:var(--white); border-bottom:1px solid var(--line);
  position:sticky; top:0; z-index:20; flex-wrap:wrap; }
.topbar .hamb { display:none; background:none; border:none; cursor:pointer; color:var(--ink); }
.topbar h2 { font-family:var(--f-disp); font-size:19px; font-weight:500; margin:0;
  flex:1 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.topbar .actions { display:flex; align-items:center; gap:10px; flex:0 0 auto; flex-wrap:wrap;
  justify-content:flex-end; }
.content { padding:26px 28px; max-width:1120px; }

.view { display:none; } .view.active { display:block; }
.page-sub { color:var(--ink-soft); font-size:13px; margin:-2px 0 22px; }

/* kartlar / tablo */
.stats { display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:14px; margin-bottom:24px; }
.stat { background:var(--white); border:1px solid var(--line); border-radius:14px; padding:17px; }
.stat .l { font-size:11px; text-transform:uppercase; letter-spacing:0.05em; color:var(--ink-soft); margin-bottom:8px; }
.stat .v { font-family:var(--f-disp); font-size:26px; font-weight:500; }
.stat .d { font-size:11.5px; color:var(--good); margin-top:3px; } .stat .d.down { color:var(--bad); }

.panel { background:var(--white); border:1px solid var(--line); border-radius:15px; overflow:hidden; margin-bottom:22px; }
.panel-head { display:flex; align-items:center; justify-content:space-between; padding:15px 18px; border-bottom:1px solid var(--line); flex-wrap:wrap; gap:10px; }
.panel-head h3 { font-family:var(--f-disp); font-size:16px; font-weight:500; margin:0; }
table { width:100%; border-collapse:collapse; }
th { text-align:left; font-size:10.5px; text-transform:uppercase; letter-spacing:0.05em; color:var(--ink-soft); padding:11px 18px; border-bottom:1px solid var(--line); font-weight:700; }
td { padding:12px 18px; border-bottom:1px solid var(--line-2); font-size:13.5px; vertical-align:middle; }
tr:last-child td { border-bottom:none; }
.tnum { font-variant-numeric:tabular-nums; }

.badge { display:inline-flex; align-items:center; gap:5px; font-size:11px; font-weight:600; padding:3px 9px; border-radius:999px; }
.badge::before { content:""; width:6px; height:6px; border-radius:50%; }
.badge.on { background:rgba(90,138,78,0.14); color:var(--good); } .badge.on::before { background:var(--good); }
.badge.warn { background:rgba(184,134,43,0.15); color:var(--warn); } .badge.warn::before { background:var(--warn); }
.badge.off { background:rgba(192,64,46,0.13); color:var(--bad); } .badge.off::before { background:var(--bad); }

.btn { padding:8px 14px; border-radius:9px; border:1px solid var(--line); background:var(--paper); color:var(--ink); font-size:12.5px; font-weight:600; cursor:pointer; }
.btn:hover { border-color:var(--ember); }
.btn.primary { background:var(--ember); border-color:var(--ember); color:var(--white); }
.btn.primary:hover { background:var(--ember-deep); }
.btn.ghost { background:none; }
.btn.danger { border-color:var(--bad); color:var(--bad); background:none; }

.toggle { position:relative; width:42px; height:24px; display:inline-block; flex:none; }
.toggle input { opacity:0; width:0; height:0; }
.toggle .tk { position:absolute; inset:0; background:var(--line); border-radius:999px; cursor:pointer; transition:.2s; }
.toggle .tk::before { content:""; position:absolute; width:18px; height:18px; left:3px; top:3px; background:#fff; border-radius:50%; transition:.2s; box-shadow:0 1px 3px rgba(0,0,0,.2); }
.toggle input:checked + .tk { background:var(--good); }
.toggle input:checked + .tk::before { transform:translateX(18px); }

.settings-grid { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
.fld { }
.fld label { display:block; font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:0.04em; color:var(--ink-soft); margin-bottom:6px; }
.fld input, .fld select { width:100%; padding:10px 12px; border:1px solid var(--line); border-radius:9px; background:var(--paper); color:var(--ink); font-size:13.5px; outline:none; }
.fld input:focus, .fld select:focus { border-color:var(--ember); }
.trow { display:flex; align-items:center; justify-content:space-between; padding:12px 0; border-bottom:1px solid var(--line-2); }
.trow span { font-size:13.5px; }
.sect { font-family:var(--f-disp); font-size:15px; margin:22px 0 12px; }
.save-bar { display:flex; justify-content:flex-end; gap:10px; margin-top:20px; }

.insight-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:14px; }
.insight { background:var(--white); border:1px solid var(--line); border-radius:13px; padding:16px; }
.insight .t { font-size:10px; text-transform:uppercase; letter-spacing:0.05em; color:var(--gold); font-weight:700; margin-bottom:7px; }
.insight h4 { font-family:var(--f-disp); font-size:14.5px; font-weight:500; margin:0 0 5px; }
.insight p { margin:0; font-size:12.5px; color:var(--ink-soft); line-height:1.5; }

.live { display:inline-flex; align-items:center; gap:6px; font-size:11.5px; color:var(--good); font-weight:600; }
.live .dot { width:7px; height:7px; border-radius:50%; background:var(--good); animation:blink 1.4s infinite; }
@keyframes blink { 50%{ opacity:0.3; } }

.toast {
  position: fixed; top: 20px; right: 20px; left: auto; bottom: auto;
  transform: translateX(120%);
  max-width: 380px; padding: 14px 18px 14px 16px;
  background: var(--white); color: var(--ink);
  border: 1px solid var(--line); border-left: 4px solid var(--ember);
  border-radius: 12px; box-shadow: 0 14px 38px rgba(0,0,0,.16);
  font-size: 14px; line-height: 1.5; z-index: 400;
  transition: transform .28s cubic-bezier(.2,.9,.3,1), opacity .2s;
  opacity: 0; pointer-events: none;
}
.toast.show { transform: translateX(0); opacity: 1; }

/* ============ VERİ TABLOSU (ürünler/kategoriler) ============ */
.toolbar { display:flex; gap:10px; align-items:center; margin-bottom:16px; flex-wrap:wrap; }
.toolbar__select { padding:10px 14px; border:1px solid var(--line); border-radius:10px; background:var(--white); color:var(--ink);
  font-size:13.5px; font-weight:500; cursor:pointer; outline:none; min-width:180px; }
.toolbar__select:focus { border-color:var(--ember); }
.toolbar__search { flex:1; min-width:180px; padding:10px 14px; border:1px solid var(--line); border-radius:10px;
  background:var(--white); color:var(--ink); font-size:13.5px; outline:none; }
.toolbar__search:focus { border-color:var(--ember); }

.table-wrap { overflow-x:auto; -webkit-overflow-scrolling:touch; }
.data-table { width:100%; border-collapse:collapse; min-width:620px; }
.data-table th { text-align:left; font-size:10.5px; text-transform:uppercase; letter-spacing:0.05em; color:var(--ink-soft);
  padding:13px 16px; border-bottom:1px solid var(--line); font-weight:700; white-space:nowrap; }
.data-table td { padding:12px 16px; border-bottom:1px solid var(--line-2); font-size:13.5px; vertical-align:middle; }
.data-table tr:last-child td { border-bottom:none; }
.data-table tbody tr { transition:background .12s; }
.data-table tbody tr:hover { background:var(--paper); }

.prod-thumb { display:flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:10px;
  font-family:var(--f-disp); font-style:italic; font-weight:500; font-size:20px; color:var(--ink);
  background:radial-gradient(circle at 35% 30%, rgba(195,58,23,0.16), rgba(154,117,38,0.12)); }
.prod-thumb.t-mezeler   { background:radial-gradient(circle at 35% 30%, rgba(90,97,56,0.22), rgba(154,117,38,0.12)); }
.prod-thumb.t-atesten   { background:radial-gradient(circle at 35% 30%, rgba(195,58,23,0.22), rgba(158,44,15,0.12)); }
.prod-thumb.t-pideler   { background:radial-gradient(circle at 35% 30%, rgba(154,117,38,0.24), rgba(184,134,43,0.12)); }
.prod-thumb.t-icecekler { background:radial-gradient(circle at 35% 30%, rgba(66,110,120,0.2), rgba(90,97,56,0.12)); }
.prod-thumb.t-tatlilar  { background:radial-gradient(circle at 35% 30%, rgba(184,134,43,0.24), rgba(195,58,23,0.12)); }

.mono-code { font-family:ui-monospace,"SF Mono",monospace; font-size:12px; color:var(--ink-soft); }
.cat-chip { display:inline-block; font-size:11.5px; font-weight:600; padding:4px 10px; border-radius:999px;
  background:var(--paper); color:var(--ink-soft); border:1px solid var(--line-2); }
.type-chip { display:inline-block; font-size:11px; font-weight:600; padding:3px 9px; border-radius:6px;
  background:var(--paper); color:var(--ink-soft); border:1px solid var(--line-2); }
.row-actions { text-align:right; white-space:nowrap; }
.icon-btn { width:32px; height:32px; border-radius:8px; border:1px solid var(--line); background:var(--white); color:var(--ink-soft);
  cursor:pointer; display:inline-flex; align-items:center; justify-content:center; vertical-align:middle; margin-left:5px; transition:.15s; }
.icon-btn svg { width:15px; height:15px; }
.icon-btn:hover { border-color:var(--ember); color:var(--ember); }
.icon-btn.danger:hover { border-color:var(--bad); color:var(--bad); }
.table-empty { padding:40px; text-align:center; color:var(--ink-faint); font-size:13.5px; }

/* ============ İŞLETME PROFİLİ ============ */
.profile-cover { position:relative; border-radius:18px; overflow:hidden; margin-bottom:24px; border:1px solid var(--line); }
.profile-cover__bg { height:150px; background:
    radial-gradient(circle at 20% 40%, rgba(195,58,23,0.3), transparent 55%),
    radial-gradient(circle at 80% 60%, rgba(154,117,38,0.28), transparent 55%),
    linear-gradient(135deg, var(--nav), var(--nav-2)); }
.profile-cover__row { display:flex; align-items:flex-end; gap:18px; padding:0 24px 20px; margin-top:-46px; position:relative; }
.profile-logo { position:relative; width:104px; height:104px; border-radius:24px; flex:none;
  background:var(--white); border:3px solid var(--white); box-shadow:var(--shadow);
  display:flex; align-items:center; justify-content:center; overflow:hidden;
  font-family:var(--f-disp); font-style:italic; font-weight:500; font-size:46px; color:var(--ember); }
.profile-logo img { width:100%; height:100%; object-fit:cover; }
.profile-logo__upload { position:absolute; bottom:6px; right:6px; width:30px; height:30px; border-radius:9px; border:none;
  background:var(--ember); color:#fff; cursor:pointer; display:flex; align-items:center; justify-content:center; box-shadow:0 2px 8px rgba(0,0,0,0.25); }
.profile-logo__upload:hover { background:var(--ember-deep); }
.profile-logo__upload svg { width:16px; height:16px; }
.profile-ident { padding-bottom:6px; }
.profile-ident__name { font-family:var(--f-disp); font-size:24px; font-weight:500; color:var(--ink); line-height:1.1; }
.profile-ident__id { font-size:12.5px; color:var(--ink-soft); margin-top:4px; }
.profile-ident__id b { color:var(--ember); font-variant-numeric:tabular-nums; }

.profile-grid { display:grid; grid-template-columns:1fr 1fr; gap:28px; }
.profile-col { background:var(--white); border:1px solid var(--line); border-radius:15px; padding:22px; }
.profile-sect { font-family:var(--f-disp); font-size:17px; font-weight:500; margin:0 0 18px; padding-bottom:12px; border-bottom:1px solid var(--line-2); }
.profile-col .fld { margin-bottom:14px; }
.profile-col textarea { width:100%; padding:10px 12px; border:1px solid var(--line); border-radius:9px; background:var(--paper);
  color:var(--ink); font-size:13.5px; outline:none; resize:vertical; font-family:inherit; }
.profile-col textarea:focus { border-color:var(--ember); }
.fld-hint { display:block; font-size:11px; color:var(--ink-faint); margin-top:4px; }
input.readonly, .readonly { background:var(--paper-2) !important; color:var(--ink-soft) !important; cursor:not-allowed; }
.time-row { display:flex; align-items:center; gap:10px; }
.time-row input { flex:1; }
.time-row span { color:var(--ink-soft); }
.profile-save { margin-top:22px; }

@media (max-width:820px){
  .profile-grid { grid-template-columns:1fr; gap:18px; }
  .profile-cover__row { flex-direction:column; align-items:flex-start; gap:12px; }
  .profile-ident { padding-bottom:0; }
}

@media (max-width:600px){
  .toolbar__select, .toolbar__search { min-width:100%; }
  .toolbar .btn { width:100%; }
  /* dokunma hedefleri telefonda daha büyük */
  .icon-btn { width:42px; height:42px; border-radius:10px; margin-left:7px; }
  .icon-btn svg { width:19px; height:19px; }
  .row-actions { padding-right:12px; }
  .data-table td { padding:14px 16px; }
}

/* ============ TEMA GALERİSİ ============ */
.theme-layout { display:grid; grid-template-columns:1fr 380px; gap:22px; align-items:start; }
.theme-gallery { display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:13px; }
.theme-card { position:relative; text-align:left; background:var(--white); border:1.5px solid var(--line); border-radius:14px;
  padding:0; overflow:hidden; cursor:pointer; transition:border-color .15s, transform .12s, box-shadow .15s; }
.theme-card:hover { border-color:var(--ink-soft); box-shadow:var(--shadow); transform:translateY(-2px); }
.theme-card.active { border-color:var(--ember); box-shadow:0 0 0 3px rgba(195,58,23,0.14); }
.theme-swatch { height:88px; position:relative; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.theme-swatch .sw { position:absolute; width:26px; height:26px; border-radius:50%; }
.theme-swatch .sw1 { top:12px; left:12px; }
.theme-swatch .sw2 { top:12px; left:32px; opacity:0.9; }
.theme-swatch .sw3 { top:12px; left:52px; opacity:0.8; }
.theme-mono { font-size:34px; font-weight:600; }
.theme-name { font-weight:700; font-size:13.5px; padding:10px 12px 2px; }
.theme-desc { font-size:11.5px; color:var(--ink-soft); padding:0 12px 12px; }
.theme-check { position:absolute; top:10px; right:10px; width:22px; height:22px; border-radius:50%; background:var(--ember);
  color:#fff; font-size:12px; display:none; align-items:center; justify-content:center; }
.theme-card.active .theme-check { display:flex; }

/* premium rozet + kart vurgusu */
.premium-badge { position:absolute; top:8px; left:8px; z-index:3; font-size:9.5px; font-weight:700; letter-spacing:0.03em;
  padding:3px 8px; border-radius:999px; background:linear-gradient(135deg,#C9A227,#E8Cc6E); color:#2A2000;
  box-shadow:0 2px 8px rgba(201,162,39,0.4); }
.theme-card.is-premium { border-color:rgba(201,162,39,0.45); }
.theme-card.is-premium:hover { border-color:#C9A227; }
.theme-card.is-premium.active { border-color:#C9A227; box-shadow:0 0 0 3px rgba(201,162,39,0.2); }
.layout-tag--premium { background:linear-gradient(135deg,#C9A227,#E8CC6E) !important; color:#2A2000 !important; font-weight:700; }
.layout-card.is-premium { border-color:rgba(201,162,39,0.4); }
.layout-card.is-premium.active { border-color:#C9A227; box-shadow:0 0 0 3px rgba(201,162,39,0.2); }

.theme-preview { position:sticky; top:80px; background:var(--white); border:1px solid var(--line); border-radius:16px; overflow:hidden; }
.theme-preview__bar { display:flex; align-items:center; justify-content:space-between; padding:13px 16px; border-bottom:1px solid var(--line); }
.theme-preview__title { font-family:var(--f-disp); font-size:15px; }
.theme-preview__device { font-size:11px; color:var(--ink-soft); }
.theme-preview__frame { background:#DCCFB6; padding:16px; display:flex; justify-content:center; }
.theme-preview__frame iframe { width:100%; max-width:340px; height:520px; border:none; border-radius:14px; box-shadow:var(--shadow); background:#fff; }

@media (max-width:980px){ .theme-layout { grid-template-columns:1fr; } .theme-preview { position:static; } }

/* ============ DÜZEN KARTLARI ============ */
.layout-list { display:flex; flex-direction:column; gap:12px; }
.layout-card { position:relative; display:flex; align-items:center; gap:15px; text-align:left; background:var(--white);
  border:1.5px solid var(--line); border-radius:14px; padding:16px; cursor:pointer; transition:border-color .15s, box-shadow .15s, transform .12s; }
.layout-card:hover { border-color:var(--ink-soft); box-shadow:var(--shadow); transform:translateY(-1px); }
.layout-card.active { border-color:var(--ember); box-shadow:0 0 0 3px rgba(195,58,23,0.14); }
.layout-preview-ic { width:56px; height:56px; border-radius:12px; background:var(--paper); color:var(--ember);
  display:flex; align-items:center; justify-content:center; flex:none; padding:11px; }
.layout-preview-ic svg { width:100%; height:100%; }
.layout-info { flex:1; min-width:0; }
.layout-name { font-weight:700; font-size:14.5px; display:flex; align-items:center; gap:8px; }
.layout-tag { font-size:10px; font-weight:700; letter-spacing:0.04em; text-transform:uppercase; color:var(--ember);
  background:rgba(195,58,23,0.1); padding:2px 8px; border-radius:999px; }
.layout-desc { font-size:12.5px; color:var(--ink-soft); margin-top:4px; line-height:1.5; }
.layout-more { text-align:center; font-size:12px; color:var(--ink-faint); padding:14px; border:1.5px dashed var(--line);
  border-radius:12px; margin-top:2px; }

.mob-scrim { display:none; }
@media (max-width:860px){
  .topbar .hamb { display:block; }
  .sidebar { position:fixed; z-index:60; transform:translateX(-100%); transition:transform .28s; }
  .sidebar.open { transform:translateX(0); }
  .mob-scrim.show { display:block; position:fixed; inset:0; z-index:55; background:rgba(0,0,0,0.4); }
  .content { padding:20px 16px; }
  .settings-grid { grid-template-columns:1fr; }
}

/* ============ GÖRSEL YÜKLEME ============ */
.prod-thumb { position:relative; overflow:hidden; }
.prod-thumb img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.thumb-pick { cursor:pointer; border:none; padding:0; }
.thumb-pick::after { content:""; position:absolute; inset:0; background:rgba(36,29,23,0.55);
  opacity:0; transition:opacity .18s; }
.thumb-pick:hover::after { opacity:1; }
.thumb-pick .pick-ic { position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  color:#fff; opacity:0; transition:opacity .18s; z-index:2; }
.thumb-pick:hover .pick-ic { opacity:1; }
.thumb-pick .pick-ic svg { width:17px; height:17px; }

.img-head { display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap; margin-bottom:18px; }
.img-hint { font-size:13px; color:var(--ink-soft); }
.img-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(190px,1fr)); gap:14px; }
.img-card { background:var(--white); border:1px solid var(--line); border-radius:14px; overflow:hidden; display:flex; flex-direction:column; }
.img-card__box { position:relative; aspect-ratio:4/3; background:var(--paper-2); display:flex; align-items:center;
  justify-content:center; overflow:hidden; }
.img-card__box img { width:100%; height:100%; object-fit:cover; }
.img-card__mono { font-family:var(--f-disp); font-style:italic; font-size:44px; color:var(--ink-faint); }
.img-card__b { padding:11px 13px 13px; }
.img-card__n { font-size:13.5px; font-weight:600; }
.img-card__t { font-size:11.5px; color:var(--ink-faint); margin-top:2px; }
.img-card__row { display:flex; gap:7px; padding:0 13px 13px; }
.img-card__row .btn { flex:1; padding:8px 6px; font-size:12px; justify-content:center; text-align:center; }
.img-badge { position:absolute; top:8px; left:8px; z-index:2; font-size:10px; font-weight:700; letter-spacing:0.05em;
  padding:3px 8px; border-radius:999px; background:var(--olive); color:#fff; }
.img-drop { border:2px dashed var(--line); border-radius:14px; padding:26px; text-align:center; color:var(--ink-soft);
  font-size:13.5px; margin-bottom:18px; transition:border-color .2s, background .2s; }
.img-drop.over { border-color:var(--ember); background:rgba(195,58,23,0.05); }
.img-warn { font-size:12px; color:var(--warn); margin-top:8px; }

/* ============ GENEL POPUP ============ */
.mdl-scrim { position:fixed; inset:0; z-index:120; background:rgba(20,15,12,0.55); display:flex;
  padding:24px;
  align-items:flex-start; justify-content:center; padding:40px 20px; overflow-y:auto;
  opacity:0; pointer-events:none; transition:opacity .24s; }
.mdl-scrim.show { opacity:1; pointer-events:auto; }
.mdl { width:100%; max-width:620px; background:var(--white); border-radius:18px; box-shadow:var(--shadow);
  transform:translateY(14px) scale(.98); transition:transform .28s cubic-bezier(.2,.9,.3,1.1);
  /* Uzun formlar ekrana sığmayınca popup taşıyordu; artık gövde kaydırılır,
     başlık ve alt bar sabit kalır. */
  display:flex; flex-direction:column; max-height:calc(100vh - 48px); }
.mdl__body { overflow-y:auto; -webkit-overflow-scrolling:touch; flex:1; min-height:0; }
.mdl-scrim.show .mdl { transform:none; }
.mdl--wide { max-width:860px; }
.mdl__head { display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:22px 24px 16px; border-bottom:1px solid var(--line-2); }
.mdl__title { font-family:var(--f-disp); font-size:21px; font-weight:500; margin:0; }
.mdl__close { width:34px; height:34px; border-radius:50%; border:1px solid var(--line); background:var(--paper);
  color:var(--ink-soft); cursor:pointer; display:flex; align-items:center; justify-content:center; flex:none; }
.mdl__close:hover { border-color:var(--ember); color:var(--ember); }
.mdl__close svg { width:16px; height:16px; }
.mdl__body { padding:22px 24px 24px; }

/* sekmeler */
.tabs { display:flex; gap:22px; border-bottom:1px solid var(--line); margin:-6px 0 22px; }
.tab { padding:11px 2px 13px; border:none; background:none; cursor:pointer; font-size:14px; font-weight:600;
  color:var(--ink-faint); position:relative; }
.tab.active { color:var(--ink); }
.tab.active::after { content:""; position:absolute; left:0; right:0; bottom:-1px; height:2px; background:var(--ember); }
.tabpane { display:none; } .tabpane.active { display:block; }

/* form ızgarası */
.frm { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.frm--1 { grid-template-columns:1fr; }
.frm .full { grid-column:1 / -1; }
.req { color:var(--bad); margin-left:3px; }
.swrow { display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:14px 0 4px; border-top:1px solid var(--line-2); margin-top:16px; }
.swrow__t { font-size:13.5px; font-weight:600; }
.swrow__d { font-size:12px; color:var(--ink-soft); margin-top:2px; }
.mdl__foot { display:flex; justify-content:flex-end; gap:10px; margin-top:22px; padding-top:18px; border-top:1px solid var(--line-2); }
.hint-box { background:var(--paper); border:1px solid var(--line-2); border-radius:10px; padding:12px 14px;
  font-size:12.5px; color:var(--ink-soft); margin-top:14px; line-height:1.55; }

/* durum rozetleri */
.st { display:inline-flex; align-items:center; gap:6px; font-size:11.5px; font-weight:600; padding:4px 10px; border-radius:999px; }
.st::before { content:""; width:7px; height:7px; border-radius:50%; }
.st--bos { background:rgba(90,138,78,0.14); color:var(--good); } .st--bos::before { background:var(--good); }
.st--dolu { background:rgba(192,64,46,0.13); color:var(--bad); } .st--dolu::before { background:var(--bad); }
.st--rez { background:rgba(184,134,43,0.15); color:var(--warn); } .st--rez::before { background:var(--warn); }

/* kısayol harfi (navbar) */
.sb-key { margin-left:auto; font-size:10.5px; font-weight:700; color:rgba(244,236,221,0.35);
  border:1px solid rgba(244,236,221,0.18); border-radius:5px; padding:1px 5px; }

/* ============ KUŞBAKIŞI PLAN ============ */
.plan-wrap { display:grid; grid-template-columns:1fr 268px; gap:18px; align-items:start; }
.plan-tools { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:14px; }
.plan-canvas { position:relative; background:var(--white); border:1px solid var(--line); border-radius:14px;
  height:560px; overflow:hidden;
  background-image:linear-gradient(rgba(36,29,23,0.05) 1px, transparent 1px),
                   linear-gradient(90deg, rgba(36,29,23,0.05) 1px, transparent 1px);
  background-size:28px 28px; }
.pmasa { position:absolute; border-radius:10px; background:var(--card); border:1.5px solid var(--line);
  display:flex; flex-direction:column; align-items:center; justify-content:center; cursor:grab;
  user-select:none; touch-action:none; transition:box-shadow .15s, border-color .15s; }
.pmasa:hover { border-color:var(--ink-soft); box-shadow:var(--shadow); }
.pmasa.sel { border-color:var(--ember); box-shadow:0 0 0 3px rgba(195,58,23,0.16); z-index:5; }
.pmasa.dragging { cursor:grabbing; opacity:.9; z-index:9; }
.pmasa--yuvarlak { border-radius:50%; }
.pmasa__n { font-size:12.5px; font-weight:700; line-height:1.1; }
.pmasa__s { font-size:10px; color:var(--ink-soft); margin-top:2px; }
.pmasa[data-durum="dolu"] { background:rgba(192,64,46,0.10); border-color:rgba(192,64,46,0.4); }
.pmasa[data-durum="rezerve"] { background:rgba(184,134,43,0.12); border-color:rgba(184,134,43,0.45); }
.plan-side { background:var(--white); border:1px solid var(--line); border-radius:14px; padding:18px; }
.plan-side h4 { font-family:var(--f-disp); font-size:16px; margin:0 0 14px; }
.plan-empty { font-size:13px; color:var(--ink-faint); }
.plan-legend { display:flex; gap:14px; flex-wrap:wrap; font-size:12px; color:var(--ink-soft); margin-top:12px; }
.plan-legend span { display:inline-flex; align-items:center; gap:6px; }
.plan-legend i { width:11px; height:11px; border-radius:3px; display:inline-block; }

/* ============ CARİ ============ */
.cari-head { display:grid; grid-template-columns:auto 1fr auto; gap:18px; align-items:center;
  background:var(--white); border:1px solid var(--line); border-radius:16px; padding:22px; margin-bottom:20px; }
.cari-av { width:58px; height:58px; border-radius:50%; background:var(--ember); color:#fff;
  display:flex; align-items:center; justify-content:center; font-family:var(--f-disp); font-size:24px; }
.cari-ad { font-family:var(--f-disp); font-size:22px; }
.cari-alt { font-size:13px; color:var(--ink-soft); margin-top:3px; }
.cari-bakiye { text-align:right; }
.cari-bakiye .l { font-size:11px; letter-spacing:0.06em; text-transform:uppercase; color:var(--ink-soft); }
.cari-bakiye .v { font-family:var(--f-disp); font-size:26px; font-variant-numeric:tabular-nums; }
.borc { color:var(--bad); } .alacak { color:var(--good); }
.num { text-align:right; font-variant-numeric:tabular-nums; }

@media (max-width:900px){
  .plan-wrap { grid-template-columns:1fr; }
  .frm { grid-template-columns:1fr; }
  .cari-head { grid-template-columns:auto 1fr; }
  .cari-bakiye { grid-column:1 / -1; text-align:left; }
}

/* ---------- yetki ızgarası ---------- */
.izin-grid { display:grid; grid-template-columns:1fr 1fr; gap:0 34px; }
.izin-grid--tek { grid-template-columns:1fr; }
.izin-row { display:flex; align-items:center; justify-content:space-between; gap:14px;
  padding:11px 0; border-bottom:1px solid var(--line-2); }
.izin-lbl { font-size:12.5px; font-weight:600; letter-spacing:0.02em; text-transform:uppercase; color:var(--ink-soft); }
.izin-sec { border:none; background:none; color:var(--ember); font-size:12px; font-weight:700; cursor:pointer; padding:0 0 0 4px; }
.izin-sec:hover { text-decoration:underline; }
@media (max-width:640px){ .izin-grid { grid-template-columns:1fr; gap:0; } }

/* ---------- QR üretici ---------- */
.qrgen { display:grid; grid-template-columns:1fr 380px; gap:18px; align-items:start; }
.url-row { display:flex; align-items:stretch; border:1px solid var(--line); border-radius:10px; overflow:hidden; background:var(--paper); }
.url-pre { display:flex; align-items:center; padding:0 12px; background:var(--paper-2); color:var(--ink-faint);
  font-size:13px; border-right:1px solid var(--line); font-family:ui-monospace,monospace; }
.url-row input { flex:1; border:none; background:none; padding:11px 12px; font-size:13.5px; color:var(--ink); outline:none; }
.url-row:focus-within { border-color:var(--ember); }
.qr-onizleme { padding:18px; display:flex; align-items:center; justify-content:center; background:var(--paper-2); min-height:300px; }
.qr-onizleme canvas { width:100%; max-width:260px; height:auto; background:#fff; border:1px solid var(--line); border-radius:8px; }
.qr-bos { color:var(--ink-faint); font-size:13.5px; text-align:center; }
.qr-durum { margin:14px 0 0; font-size:13px; color:var(--olive); background:rgba(90,138,78,0.1);
  border:1px solid rgba(90,138,78,0.3); border-radius:9px; padding:10px 12px; }
.qr-durum--hata { color:var(--bad); background:rgba(192,64,46,0.09); border-color:rgba(192,64,46,0.3); }
.qr-liste { display:grid; grid-template-columns:repeat(auto-fill,minmax(120px,1fr)); gap:14px; padding:18px; }
.qr-oge { text-align:center; }
.qr-oge canvas { width:100%; height:auto; border:1px solid var(--line); border-radius:8px; background:#fff; }
.qr-oge__e { font-size:11.5px; color:var(--ink-soft); margin-top:6px; font-weight:600; }
@media (max-width:900px){ .qrgen { grid-template-columns:1fr; } }

/* şeffaf PNG önizlemesi için dama deseni */
.qr-onizleme canvas, .qr-oge canvas {
  background-image:
    linear-gradient(45deg, rgba(36,29,23,0.07) 25%, transparent 25%),
    linear-gradient(-45deg, rgba(36,29,23,0.07) 25%, transparent 25%),
    linear-gradient(45deg, transparent 75%, rgba(36,29,23,0.07) 75%),
    linear-gradient(-45deg, transparent 75%, rgba(36,29,23,0.07) 75%);
  background-size:16px 16px;
  background-position:0 0, 0 8px, 8px -8px, -8px 0px;
}

/* ============================================================
   GENEL BAKIŞ (DASHBOARD)
   ============================================================ */
.dash-baslik { font-family:var(--f-disp); font-size:20px; font-weight:500; margin:30px 0 14px; }
.dash-ust { display:grid; grid-template-columns:1.45fr 1fr; gap:18px; margin-bottom:22px; }
.dash-rapor { display:grid; grid-template-columns:1fr 1fr 1.35fr; gap:18px; margin-bottom:18px; }
.dash-rapor2 { display:grid; grid-template-columns:1fr 1fr 1fr; gap:18px; margin-bottom:18px; }
.dash-rapor3 { display:grid; grid-template-columns:1.15fr 1fr; gap:18px; margin-bottom:18px; }
.dash-rapor4 { display:grid; grid-template-columns:1.3fr 1fr; gap:18px; margin-bottom:18px; }
.dash-rapor5 { display:grid; grid-template-columns:1.3fr 1fr; gap:18px; }

/* --- işletme kartı --- */
.hero-kart { position:relative; overflow:hidden; border-radius:18px; color:var(--white);
  background:linear-gradient(135deg, var(--nav) 0%, #3A2A1E 60%, #5A2A12 100%); min-height:210px; }
.hero-kart__isik { position:absolute; inset:-30% -10% auto -20%; height:170%;
  background:radial-gradient(45% 55% at 25% 35%, rgba(195,58,23,0.45), transparent 70%),
             radial-gradient(40% 50% at 80% 25%, rgba(154,117,38,0.35), transparent 70%); }
.hero-kart__ic { position:relative; display:flex; align-items:center; justify-content:space-between;
  gap:20px; padding:28px 30px; height:100%; }
.hero-kart__ad { font-family:var(--f-disp); font-size:clamp(24px,2.6vw,34px); font-weight:500; margin:0 0 6px; color:var(--white); }
.hero-kart__id { font-size:13px; color:rgba(237,227,210,0.7); margin:0 0 20px; }
.hero-kart__id b { color:#E8C07A; font-variant-numeric:tabular-nums; }
.hero-kart__btn { display:flex; gap:10px; flex-wrap:wrap; }
.btn.light { background:var(--white); color:var(--ink); border-color:var(--white); }
.btn.light:hover { background:#fff; }
.btn.light.sm { padding:6px 13px; font-size:12px; }
.btn.outline-light { background:transparent; color:var(--white); border-color:rgba(237,227,210,0.4); }
.btn.outline-light:hover { border-color:var(--white); }
.hero-kart__logo { width:118px; height:118px; border-radius:50%; flex:none;
  background:rgba(255,255,255,0.08); border:2px solid rgba(237,227,210,0.25);
  display:flex; align-items:center; justify-content:center;
  font-family:var(--f-disp); font-style:italic; font-size:52px; color:#E8C07A; }

/* --- kısayollar --- */
.kisayollar { padding:6px 0; }
.kisayol { display:flex; align-items:center; gap:12px; width:100%; padding:11px 18px;
  border:none; background:none; cursor:pointer; text-align:left; border-bottom:1px solid var(--line-2); }
.kisayol:last-child { border-bottom:none; }
.kisayol:hover { background:var(--paper); }
.kisayol__h { width:34px; height:34px; border-radius:9px; flex:none; color:#fff;
  display:flex; align-items:center; justify-content:center; font-weight:700; font-size:15px; }
.kisayol__m { flex:1; display:flex; flex-direction:column; }
.kisayol__m b { font-size:13.5px; }
.kisayol__m small { font-size:11.5px; color:var(--ink-faint); }
.kisayol__ok { color:var(--ink-faint); font-size:15px; }
.kisayol:hover .kisayol__ok { color:var(--ember); }

/* --- çek kartı --- */
.cek-kart { border-radius:16px; padding:22px; color:#fff; position:relative; overflow:hidden;
  background:linear-gradient(140deg, var(--ember) 0%, var(--ember-deep) 100%); }
.cek-kart__ust { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.cek-kart__n { font-family:var(--f-disp); font-size:44px; line-height:1; margin:0; }
.cek-kart__l { font-size:12.5px; opacity:.85; margin:4px 0 0; }
.cek-kart__liste { list-style:none; margin:22px 0 0; padding:0; display:grid; gap:9px; }
.cek-kart__liste li { display:flex; justify-content:space-between; gap:12px; font-size:13px; }
.cek-kart__liste b { font-variant-numeric:tabular-nums; }
.cek-kart__bar { margin-top:20px; }
.cek-kart__baret { display:flex; justify-content:space-between; font-size:11.5px; opacity:.85; margin-bottom:6px; }
.ilerleme { height:5px; border-radius:999px; background:rgba(255,255,255,0.28); overflow:hidden; }
.ilerleme i { display:block; height:100%; background:#fff; border-radius:999px; }

/* --- tahsilat --- */
.tahsilat-kart { padding:20px; }
.tahsilat__ust { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.tahsilat__tutar { font-family:var(--f-disp); font-size:28px; margin:0; font-variant-numeric:tabular-nums; }
.tahsilat__mini { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:16px 0 18px; }
.tahsilat__mini div { border:1px solid var(--line-2); border-radius:10px; padding:9px 12px; }
.tahsilat__mini span { display:block; font-size:11px; color:var(--ink-faint); }
.tahsilat__mini b { font-size:13.5px; font-variant-numeric:tabular-nums; }
.tahsilat__alt { display:flex; align-items:center; gap:16px; }
.grafik-donut { width:130px; height:130px; flex:none; }
.tahsilat__liste { list-style:none; margin:0; padding:0; flex:1; display:grid; gap:10px; }
.tahsilat__liste li { display:flex; align-items:center; gap:9px; font-size:12.5px; }
.tahsilat__liste i { width:9px; height:9px; border-radius:50%; flex:none; }
.tahsilat__liste b { margin-left:auto; font-variant-numeric:tabular-nums; }

/* --- satış raporu --- */
.satis-kart { display:flex; flex-direction:column; }
.satis-ozet { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; padding:16px 18px 0; }
.satis-n { font-family:var(--f-disp); font-size:20px; margin:0; font-variant-numeric:tabular-nums; }
.satis-l { font-size:11.5px; color:var(--ink-soft); margin:4px 0 0; display:flex; align-items:center; gap:6px; }
.satis-l i { width:8px; height:8px; border-radius:50%; }
.satis-grafik { padding:8px 14px 14px; }
.segbar--kucuk { display:flex; gap:0; }
.segbar--kucuk .segbar__b { flex:none; padding:7px 12px; font-size:11.5px; }

/* --- grafikler --- */
.grafik-cizgi { width:100%; height:auto; display:block; }
.grafik-spark { width:100%; height:auto; display:block; margin-top:10px; }
.grafik-eks { font-size:10px; fill:var(--ink-faint); font-family:var(--f-body); }
.gauge-deger { font-family:var(--f-disp); font-size:26px; fill:var(--ink); }
.gauge-etiket { font-size:11px; fill:var(--ink-faint); font-family:var(--f-body); }
.grafik-gauge { width:100%; max-width:240px; height:auto; margin:0 auto; display:block; }
.grafik-bar { display:grid; gap:12px; padding:18px; }
.bar-satir { display:grid; grid-template-columns:112px 1fr; align-items:center; gap:12px; }
.bar-ad { font-size:11.5px; font-weight:600; color:var(--ink-soft); text-transform:uppercase; letter-spacing:0.03em;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.bar-yol { background:var(--paper-2); border-radius:999px; height:24px; overflow:hidden; }
.bar-dolu { display:flex; align-items:center; justify-content:flex-end; height:100%; border-radius:999px;
  padding:0 10px; min-width:38px; transition:width .5s cubic-bezier(.2,.9,.3,1); }
.bar-dolu b { color:#fff; font-size:11.5px; font-variant-numeric:tabular-nums; }

/* --- net satış / istatistik / gelir --- */
.net-kart { padding:18px; }
.net-kart__t { font-family:var(--f-disp); font-size:30px; margin:0; font-variant-numeric:tabular-nums; }
.istat { list-style:none; margin:0; padding:6px 18px 14px; }
.istat li { display:flex; justify-content:space-between; gap:12px; padding:12px 0; border-bottom:1px solid var(--line-2); font-size:13.5px; }
.istat li:last-child { border-bottom:none; }
.istat b { font-variant-numeric:tabular-nums; }
.gelir-kart { padding:14px 18px 18px; }
.gelir-liste { list-style:none; margin:12px 0 0; padding:0; display:grid; gap:9px; }
.gelir-liste li { display:flex; justify-content:space-between; font-size:13px; }
.gelir-liste b { font-variant-numeric:tabular-nums; }

/* --- kanal --- */
.kanal-ozet { display:flex; gap:28px; padding:16px 18px 4px; }
.kanal-n { font-family:var(--f-disp); font-size:24px; margin:0; font-variant-numeric:tabular-nums; }
.kanal-l { font-size:12px; color:var(--ink-soft); margin:4px 0 0; display:flex; align-items:center; gap:6px; }
.kanal-l i { width:8px; height:8px; border-radius:50%; }

/* --- iptal/iade --- */
.tabs--panel { margin:0; border-bottom:none; }
.tabs--panel .tab { padding:6px 2px 8px; font-size:13.5px; }
.ii-govde { padding-bottom:6px; }
.ii-ust { display:flex; align-items:center; gap:14px; padding:16px 18px 10px; }
.ii-ust b { font-family:var(--f-disp); font-size:24px; font-variant-numeric:tabular-nums; }
.ii-bos { padding:34px 18px; text-align:center; color:var(--ink-faint); font-size:13.5px; }

/* --- kampanya şeridi --- */
.kampanya-serit { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; padding:18px; }
.kampanya { background:var(--paper); border:1px solid var(--line-2); border-radius:12px; padding:16px 14px; text-align:center; }
.kampanya__g { font-size:26px; margin-bottom:8px; }
.kampanya b { display:block; font-size:13px; }
.kampanya small { font-size:11.5px; color:var(--ink-faint); }

/* --- boş durum --- */
.bos-durum { padding:34px 24px; text-align:center; }
.bos-durum__g { width:64px; height:64px; margin:0 auto 14px; color:var(--ink-faint); opacity:.55; }
.bos-durum__g svg { width:100%; height:100%; }
.bos-durum__b { font-family:var(--f-disp); font-size:17px; margin:0 0 6px; }
.bos-durum__a { font-size:13px; color:var(--ink-soft); margin:0; max-width:34ch; margin-inline:auto; }

@media (max-width:1150px){
  .dash-ust, .dash-rapor, .dash-rapor2, .dash-rapor3, .dash-rapor4, .dash-rapor5 { grid-template-columns:1fr; }
}
@media (max-width:600px){
  .hero-kart__ic { flex-direction:column; align-items:flex-start; }
  .hero-kart__logo { width:84px; height:84px; font-size:38px; }
  .satis-ozet { grid-template-columns:1fr; }
  .kanal-ozet { flex-direction:column; gap:14px; }
  .kampanya-serit { grid-template-columns:1fr; }
  .bar-satir { grid-template-columns:88px 1fr; }
}

/* ============================================================
   MUTFAK EKRANI
   ============================================================ */
:root {
  --sip-yeni:  #C0402E;   /* kırmızı — yeni sipariş */
  --sip-hazir: #C99A2E;   /* sarı    — hazırlanıyor */
  --sip-tamam: #4E8A50;   /* yeşil   — tamamlandı  */
}
body.mutfak-modu { overflow:hidden; }

.mutfak { position:fixed; inset:0; z-index:150; background:#141110; color:#F4ECDD;
  display:none; flex-direction:column; }
.mutfak.acik { display:flex; }

.mutfak__ust { display:flex; align-items:center; gap:18px; padding:12px 18px; flex-wrap:wrap;
  background:#1C1815; border-bottom:1px solid rgba(244,236,221,0.1); }
.mutfak__marka { font-family:var(--f-disp); font-style:italic; font-size:22px; color:#E8C07A; flex:none; }
.mutfak__marka small { font-family:var(--f-body); font-style:normal; font-size:10px; letter-spacing:0.2em;
  text-transform:uppercase; color:rgba(244,236,221,0.5); margin-left:8px; }
.mutfak__sekmeler { display:flex; gap:6px; flex:1; flex-wrap:wrap; }
.msek { padding:9px 16px; border-radius:999px; border:1px solid rgba(244,236,221,0.16);
  background:transparent; color:rgba(244,236,221,0.7); font-size:13.5px; font-weight:600; cursor:pointer; }
.msek:hover { color:#F4ECDD; border-color:rgba(244,236,221,0.35); }
.msek.active { background:#F4ECDD; color:#141110; border-color:#F4ECDD; }
.mutfak__sag { display:flex; align-items:center; gap:9px; flex:none; }
.mutfak__saat { font-family:ui-monospace,monospace; font-size:17px; color:#E8C07A; font-variant-numeric:tabular-nums; }
.mutfak__btn { padding:8px 14px; border-radius:9px; border:1px solid rgba(244,236,221,0.18);
  background:transparent; color:rgba(244,236,221,0.8); font-size:12.5px; font-weight:600; cursor:pointer; }
.mutfak__btn:hover { color:#F4ECDD; border-color:rgba(244,236,221,0.4); }
.mutfak__btn--cik { border-color:rgba(192,64,46,0.5); color:#F0A08E; }
.mutfak__btn--cik:hover { background:rgba(192,64,46,0.15); }

.mutfak__govde { flex:1; overflow-y:auto; padding:20px;
  display:grid; grid-template-columns:repeat(auto-fill, minmax(300px, 1fr)); gap:18px; align-content:start; }
.mutfak__bos { grid-column:1/-1; text-align:center; padding:70px 20px; color:rgba(244,236,221,0.4); font-size:15px; }

/* --- sipariş kartı --- */
.skart { background:#FFFFFF; color:#241D17; border-radius:12px; overflow:hidden; cursor:pointer;
  display:flex; flex-direction:column; min-height:230px; border:none; text-align:left;
  box-shadow:0 10px 26px rgba(0,0,0,0.35); transition:transform .15s, box-shadow .15s; }
.skart:hover { transform:translateY(-3px); box-shadow:0 16px 34px rgba(0,0,0,0.45); }
.skart:focus-visible { outline:3px solid #E8C07A; outline-offset:3px; }
.skart__ust { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:12px 15px; color:#fff; }
.skart--yeni  .skart__ust { background:var(--sip-yeni); }
.skart--hazir .skart__ust { background:var(--sip-hazir); }
.skart--tamam .skart__ust { background:var(--sip-tamam); }
.skart__masa { font-size:19px; font-weight:800; letter-spacing:0.02em; }
.skart__sure { display:inline-flex; align-items:center; gap:6px; font-size:12.5px; font-weight:700;
  background:rgba(0,0,0,0.22); padding:4px 11px; border-radius:999px; font-variant-numeric:tabular-nums; }
.skart__sure svg { width:14px; height:14px; }
.skart__etiket { align-self:flex-start; margin:-9px 0 0 15px; position:relative; z-index:2;
  background:#FDF3E2; color:#5A4630; font-size:11.5px; font-weight:700; padding:4px 11px; border-radius:6px;
  box-shadow:0 2px 6px rgba(0,0,0,0.12); }
.skart__urunler { list-style:none; margin:14px 0 0; padding:0 15px; flex:1; }
.skart__urunler li { display:flex; align-items:baseline; gap:8px; padding:9px 0;
  border-bottom:1px solid rgba(36,29,23,0.09); font-size:14.5px; }
.skart__urunler li:last-child { border-bottom:none; }
.skart__urunler b { font-size:13px; color:#6E6355; flex:none; }
.skart__urunler small { color:#9A7526; font-size:11.5px; font-style:italic; margin-left:auto; }
.skart__alt { display:flex; align-items:center; justify-content:space-between; gap:10px;
  padding:13px 15px; background:#FDF3E2; border:none; border-top:1px solid rgba(36,29,23,0.08);
  color:#5A4630; font-size:13.5px; font-weight:600; cursor:pointer; width:100%; }
.skart__alt:hover { background:#F8E9D2; }

/* yeni siparişler dikkat çeksin */
.skart--yeni { animation:sipNabiz 2.4s ease-in-out infinite; }
@keyframes sipNabiz {
  0%,100% { box-shadow:0 10px 26px rgba(0,0,0,0.35); }
  50%     { box-shadow:0 10px 26px rgba(0,0,0,0.35), 0 0 0 4px rgba(192,64,46,0.35); }
}

.mutfak__alt { display:flex; align-items:center; justify-content:space-between; gap:14px; flex-wrap:wrap;
  padding:11px 18px; background:#1C1815; border-top:1px solid rgba(244,236,221,0.1);
  font-size:12.5px; color:rgba(244,236,221,0.6); }
.mutfak__ozet { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.nokta { width:9px; height:9px; border-radius:50%; display:inline-block; margin-left:12px; }
.mutfak__ozet .nokta:first-child { margin-left:0; }
.nokta--yeni { background:var(--sip-yeni); }
.nokta--hazir { background:var(--sip-hazir); }
.nokta--tamam { background:var(--sip-tamam); }

/* --- mutfak sipariş detayı --- */
.msip-scrim { position:fixed; inset:0; z-index:160; background:rgba(0,0,0,0.62);
  display:flex; align-items:center; justify-content:center; padding:24px;
  opacity:0; pointer-events:none; transition:opacity .2s; }
.msip-scrim.acik { opacity:1; pointer-events:auto; }
.msip { width:100%; max-width:480px; background:#fff; color:#241D17; border-radius:12px; overflow:hidden;
  display:flex; flex-direction:column; max-height:82vh; box-shadow:0 30px 70px rgba(0,0,0,0.5);
  transform:scale(.97); transition:transform .22s; }
.msip-scrim.acik .msip { transform:none; }
.msip__ust { padding:16px 20px; color:#fff; display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.msip__ust--yeni  { background:var(--sip-yeni); }
.msip__ust--hazir { background:var(--sip-hazir); }
.msip__ust--tamam { background:var(--sip-tamam); }
.msip__masa { font-size:22px; font-weight:800; }
.msip__sure { margin-left:auto; background:rgba(0,0,0,0.22); padding:4px 12px; border-radius:999px;
  font-size:13px; font-weight:700; font-variant-numeric:tabular-nums; }
.msip__tur { width:100%; background:#FDF3E2; color:#5A4630; font-size:11.5px; font-weight:700;
  padding:4px 11px; border-radius:6px; align-self:flex-start; }
.msip__govde { padding:18px 20px; overflow-y:auto; flex:1; }
.msip__satir { display:flex; align-items:baseline; gap:10px; padding:12px 0;
  border-bottom:1px solid rgba(36,29,23,0.09); font-size:16px; }
.msip__satir b { color:#6E6355; font-size:14px; }
.msip__satir em { margin-left:auto; color:#9A7526; font-size:12.5px; }
.msip__tutar { display:flex; justify-content:space-between; padding-top:14px; font-size:14px; color:#6E6355; }
.msip__tutar b { font-family:var(--f-disp); font-size:20px; color:#241D17; }
.msip__alt { display:flex; gap:10px; padding:14px 20px; border-top:1px solid rgba(36,29,23,0.1); }
.msip__b { flex:1; padding:14px; border-radius:9px; border:none; font-size:15px; font-weight:700; cursor:pointer; }
.msip__b--kapat { background:#EDE3D2; color:#6E6355; }
.msip__b--kapat:hover { background:#E2D5C0; }
.msip__b--hazir { background:var(--sip-hazir); color:#fff; }
.msip__b--tamam { background:var(--sip-tamam); color:#fff; }
.msip__b:hover { filter:brightness(1.06); }

/* --- sipariş listesi rozetleri --- */
.sip-rozet { display:inline-flex; align-items:center; gap:6px; font-size:11.5px; font-weight:700;
  padding:4px 11px; border-radius:999px; }
.sip-rozet::before { content:""; width:7px; height:7px; border-radius:50%; }
.sip-rozet--yeni  { background:rgba(192,64,46,0.13); color:var(--sip-yeni); }
.sip-rozet--yeni::before  { background:var(--sip-yeni); }
.sip-rozet--hazir { background:rgba(201,154,46,0.16); color:#9A7526; }
.sip-rozet--hazir::before { background:var(--sip-hazir); }
.sip-rozet--tamam { background:rgba(78,138,80,0.14); color:var(--sip-tamam); }
.sip-rozet--tamam::before { background:var(--sip-tamam); }

@media (max-width:640px){
  .mutfak__govde { grid-template-columns:1fr; padding:14px; gap:14px; }
  .mutfak__ust { gap:10px; padding:10px 12px; }
  .mutfak__saat { display:none; }
  .msip__alt { flex-direction:column; }
}
@media (prefers-reduced-motion:reduce){
  .skart--yeni { animation:none; }
}

/* ============================================================
   MERKEZİ YÖNETİM
   ============================================================ */
/* --- üst çubuktaki şube seçici --- */
.sube-sec { display:flex; align-items:center; gap:11px; padding:7px 12px 7px 14px; border-radius:12px;
  border:1px solid var(--line); background:var(--white); cursor:pointer; flex:none; max-width:280px; }
.sube-sec:hover { border-color:var(--ink-faint); }
.sube-sec__m { display:flex; flex-direction:column; align-items:flex-end; min-width:0; }
.sube-sec__m b { font-size:13px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:170px; }
.sube-sec__m small { font-size:11px; color:var(--ink-faint); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:170px; }
.sube-sec__rz { width:34px; height:34px; border-radius:50%; flex:none; background:var(--paper-2); color:var(--ink-soft);
  display:flex; align-items:center; justify-content:center; font-family:var(--f-disp); font-size:15px; font-weight:600; }
.sube-sec__rz.merkez { background:var(--ember); color:#fff; }
.sube-sec__ok { width:15px; height:15px; color:var(--ink-faint); flex:none; }

/* --- şube seçici paneli --- */
.sube-scrim { position:fixed; inset:0; z-index:130; background:rgba(20,15,12,0.5);
  display:flex; justify-content:flex-end; opacity:0; pointer-events:none; transition:opacity .22s; }
.sube-scrim.acik { opacity:1; pointer-events:auto; }
.sube-panel { width:min(420px, 100%); background:var(--white); height:100%; display:flex; flex-direction:column;
  transform:translateX(24px); transition:transform .26s cubic-bezier(.2,.9,.3,1); box-shadow:-20px 0 50px rgba(0,0,0,0.2); }
.sube-scrim.acik .sube-panel { transform:none; }
.sube-panel__ust { display:flex; align-items:center; justify-content:space-between; gap:14px;
  padding:20px 22px 14px; border-bottom:1px solid var(--line-2); }
.sube-panel__ust h3 { font-family:var(--f-disp); font-size:19px; font-weight:500; margin:0; }
.sube-panel__arac { display:flex; align-items:center; gap:8px; padding:14px 18px; border-bottom:1px solid var(--line-2); }
.sube-ara { flex:1; display:flex; align-items:center; gap:8px; border:1px solid var(--line);
  border-radius:10px; padding:0 11px; background:var(--paper); }
.sube-ara svg { width:15px; height:15px; color:var(--ink-faint); flex:none; }
.sube-ara input { flex:1; border:none; background:none; padding:10px 0; font-size:13.5px; outline:none; color:var(--ink); }
.sube-sirala { padding:9px 11px; border-radius:9px; border:1px solid var(--line); background:var(--white);
  color:var(--ink-soft); font-size:12px; font-weight:700; cursor:pointer; flex:none; }
.sube-sirala.active { background:var(--ink); color:var(--paper); border-color:var(--ink); }
.sube-liste { flex:1; overflow-y:auto; padding:8px 0; }
.sube-grup { padding:14px 20px 6px; font-size:11px; font-weight:700; letter-spacing:0.14em;
  text-transform:uppercase; color:var(--ink-faint); }
.sube-oge { display:flex; align-items:center; gap:12px; width:100%; padding:11px 20px;
  border:none; background:none; cursor:pointer; text-align:left; border-bottom:1px solid var(--line-2); }
.sube-oge:hover { background:var(--paper); }
.sube-oge.secili { background:rgba(195,58,23,0.07); box-shadow:inset 3px 0 0 var(--ember); }
.sube-oge__rz { width:32px; height:32px; border-radius:9px; flex:none; background:var(--paper-2); color:var(--ink-soft);
  display:flex; align-items:center; justify-content:center; font-size:13px; font-weight:700; }
.sube-oge__rz.merkez { background:var(--ember); color:#fff; }
.sube-oge__m { flex:1; display:flex; flex-direction:column; min-width:0; }
.sube-oge__m b { font-size:13.5px; }
.sube-oge__m small { font-size:11.5px; color:var(--ink-faint); }
.sube-oge__d { display:flex; flex-direction:column; align-items:flex-end; gap:3px; flex:none; }
.sube-oge__d small { font-size:11px; font-family:ui-monospace,monospace; }
.sube-oge__d small.guncel { color:var(--good); }
.sube-oge__d small.eski { color:var(--warn); }
.sube-etiket { display:inline-block; font-size:9.5px; font-weight:700; letter-spacing:0.06em; text-transform:uppercase;
  background:var(--ember); color:#fff; padding:2px 7px; border-radius:5px; font-style:normal; vertical-align:middle; }
.sube-bos { padding:40px 20px; text-align:center; color:var(--ink-faint); font-size:13.5px; }
.sr { display:inline-flex; align-items:center; gap:5px; font-size:11px; font-weight:700; padding:3px 9px; border-radius:999px; font-style:normal; }
.sr--aktif { background:rgba(90,138,78,0.14); color:var(--good); }
.sr--sezon { background:rgba(184,134,43,0.16); color:var(--warn); }
.sr--pasif { background:rgba(36,29,23,0.08); color:var(--ink-faint); }

/* --- şube tablosu --- */
.merkez-rz { background:var(--ember) !important; color:#fff !important; }
.surum-rz { font-family:ui-monospace,monospace; font-size:12px; font-weight:700; padding:3px 9px; border-radius:6px; }
.surum-rz.guncel { background:rgba(90,138,78,0.14); color:var(--good); }
.surum-rz.eski { background:rgba(184,134,43,0.16); color:var(--warn); }
.uyari-serit { display:flex; align-items:center; gap:14px; flex-wrap:wrap;
  background:rgba(184,134,43,0.1); border:1px solid rgba(184,134,43,0.32); border-radius:12px;
  padding:14px 18px; margin-bottom:18px; font-size:13.5px; }
.uyari-serit svg { width:20px; height:20px; color:var(--warn); flex:none; }
.uyari-serit span { flex:1; min-width:220px; }
.uyari-serit .btn { flex:none; }

/* --- yayın ekranı --- */
.yayin-duzen { display:grid; grid-template-columns:1.5fr 1fr; gap:18px; align-items:start; }
.yayin-liste { padding:8px 0; }
.yayin { display:grid; grid-template-columns:auto 1fr auto; gap:14px; padding:16px 20px;
  border-bottom:1px solid var(--line-2); }
.yayin:last-child { border-bottom:none; }
.yayin__tip { font-size:20px; }
.yayin__orta h4 { font-family:var(--f-disp); font-size:16px; font-weight:500; margin:0 0 4px; }
.yayin__meta { font-size:12.5px; color:var(--ink-soft); margin:0 0 8px; }
.yayin__cip { display:flex; gap:5px; flex-wrap:wrap; }
.yayin__cip span { font-size:10.5px; font-weight:600; background:var(--paper-2); color:var(--ink-soft);
  padding:3px 8px; border-radius:5px; }
.yayin__hata { font-size:11.5px; color:var(--bad); margin:8px 0 0; }
.yayin__sag { display:flex; flex-direction:column; align-items:flex-end; gap:5px; text-align:right; flex:none; }
.yayin__tarih { font-family:ui-monospace,monospace; font-size:11.5px; color:var(--ink-soft); }
.yayin__uzak { font-size:11px; color:var(--ink-faint); }
.yayin__islem { display:flex; gap:6px; margin-top:6px; flex-wrap:wrap; justify-content:flex-end; }
.btn.sm { padding:6px 11px; font-size:11.5px; }
.btn.danger { color:var(--bad); border-color:rgba(192,64,46,0.35); }
.btn.danger:hover { background:rgba(192,64,46,0.08); }
.yayin--hazir .yayin__tip { animation:yayinDon 1.2s linear infinite; display:inline-block; }
@keyframes yayinDon { to { transform:rotate(360deg); } }

.esitleme { padding:8px 0; max-height:420px; overflow-y:auto; }
.esit-satir { display:flex; align-items:center; justify-content:space-between; gap:12px;
  padding:10px 20px; border-bottom:1px solid var(--line-2); font-size:13px; }
.esit-satir:last-child { border-bottom:none; }
.esit-ad { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.esit-durum { font-size:11.5px; font-weight:700; padding:3px 10px; border-radius:999px; flex:none; }
.esit-durum.ok { background:rgba(90,138,78,0.14); color:var(--good); }
.esit-durum.gec { background:rgba(184,134,43,0.16); color:var(--warn); font-family:ui-monospace,monospace; }

/* --- yayın sihirbazı --- */
.alan-baslik { font-size:11.5px; font-weight:700; letter-spacing:0.08em; text-transform:uppercase;
  color:var(--ink-soft); margin:22px 0 10px; }
.icerik-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.icerik-oge { display:flex; align-items:center; gap:10px; padding:11px 13px; border:1px solid var(--line);
  border-radius:10px; cursor:pointer; font-size:13.5px; transition:border-color .15s, background .15s; }
.icerik-oge:hover { border-color:var(--ink-faint); }
.icerik-oge input { accent-color:var(--ember); width:16px; height:16px; }
.icerik-oge:has(input:checked) { border-color:var(--ember); background:rgba(195,58,23,0.05); }

@media (max-width:1000px){
  .yayin-duzen { grid-template-columns:1fr; }
  .sube-sec__m { display:none; }
  .sube-sec { padding:6px 8px; }
}
@media (max-width:640px){
  .yayin { grid-template-columns:auto 1fr; }
  .yayin__sag { grid-column:1/-1; align-items:flex-start; text-align:left; }
  .icerik-grid { grid-template-columns:1fr; }
}

/* ============================================================
   MENÜ ADRESİ (QR AYARLARI)
   ============================================================ */
.slug-satir { display:flex; align-items:stretch; border:1px solid var(--line);
  border-radius:10px; overflow:hidden; background:var(--white); }
.slug-satir:focus-within { border-color:var(--ember); }
.slug-onek { display:flex; align-items:center; padding:0 12px; background:var(--paper-2);
  color:var(--ink-faint); font-family:ui-monospace,monospace; font-size:13px;
  border-right:1px solid var(--line); white-space:nowrap; }
.slug-satir input { flex:1; border:none; outline:none; padding:11px 12px;
  font-family:ui-monospace,monospace; font-size:13.5px; background:none; color:var(--ink); }
.fld-not { font-size:12px; color:var(--ink-faint); margin:8px 0 0; line-height:1.55; }

.adres-kutu { margin-top:18px; border:1px solid var(--line-2); border-radius:12px;
  background:var(--paper); padding:6px 0; }
.adres-satir { display:flex; align-items:center; gap:12px; flex-wrap:wrap;
  padding:11px 16px; border-bottom:1px solid var(--line-2); }
.adres-satir:last-child { border-bottom:none; }
.adres-etiket { font-size:11.5px; font-weight:700; letter-spacing:0.04em;
  text-transform:uppercase; color:var(--ink-faint); min-width:110px; }
.adres-satir code { font-family:ui-monospace,monospace; font-size:12.5px; color:var(--ink);
  background:var(--paper-2); padding:5px 10px; border-radius:6px;
  overflow-wrap:anywhere; flex:1; min-width:180px; }

@media (max-width:600px){
  .slug-onek { font-size:11.5px; padding:0 8px; }
  .adres-etiket { min-width:auto; }
}


/* ============================================================
   AYAR ANAHTAR LİSTESİ
   ============================================================ */
.switch-list { display:grid; gap:2px; border:1px solid var(--line-2); border-radius:12px; overflow:hidden; }
.switch-row { display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:13px 16px; background:var(--white); cursor:pointer; border-bottom:1px solid var(--line-2); }
.switch-row:last-child { border-bottom:none; }
.switch-row:hover { background:var(--paper); }
.switch-row__m { display:flex; flex-direction:column; gap:3px; }
.switch-row__m b { font-size:13.5px; font-weight:600; }
.switch-row__m small { font-size:12px; color:var(--ink-faint); line-height:1.5; }

/* ============================================================
   POPUP SEKMELERİ (ürün / seçenek formları)
   ============================================================ */
.mdl-tabs { display:flex; gap:2px; border-bottom:1px solid var(--line-2); margin:-4px -4px 18px; }
.mdl-tab { padding:11px 16px; border:none; background:none; cursor:pointer;
  font-size:13.5px; font-weight:600; color:var(--ink-faint); border-bottom:2px solid transparent; }
.mdl-tab:hover { color:var(--ink-soft); }
.mdl-tab.active { color:var(--ember); border-bottom-color:var(--ember); }
.mdl-sekme { display:none; }
.mdl-sekme.active { display:block; }

/* --- ürün görseli --- */
.urun-gorsel { display:flex; gap:16px; align-items:flex-start; margin-bottom:18px; }
.urun-gorsel__kutu { width:120px; height:120px; border-radius:12px; flex:none; overflow:hidden;
  border:1px dashed var(--line); background:var(--paper); display:flex; align-items:center;
  justify-content:center; cursor:pointer; position:relative; }
.urun-gorsel__kutu:hover { border-color:var(--ember); }
.urun-gorsel__kutu img { width:100%; height:100%; object-fit:cover; }
.urun-gorsel__bos { text-align:center; font-size:11.5px; color:var(--ink-faint); padding:8px; line-height:1.5; }
.urun-gorsel__sil { position:absolute; top:6px; right:6px; width:24px; height:24px; border-radius:50%;
  border:none; background:rgba(0,0,0,.55); color:#fff; cursor:pointer; font-size:14px; line-height:1;
  display:flex; align-items:center; justify-content:center; }
.urun-gorsel__bilgi { flex:1; font-size:12.5px; color:var(--ink-soft); line-height:1.6; }

/* --- seçenek grubu düzenleyici --- */
.sec-grup { border:1px solid var(--line-2); border-radius:12px; margin-bottom:12px; overflow:hidden; }
.sec-grup__ust { display:flex; align-items:center; gap:12px; padding:12px 14px; background:var(--paper); }
.sec-grup__ust b { flex:1; font-size:13.5px; }
.sec-grup__rozet { font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.05em;
  background:var(--paper-2); color:var(--ink-soft); padding:3px 8px; border-radius:5px; }
.sec-deger-liste { padding:6px 0; }
.sec-deger { display:grid; grid-template-columns:1fr 120px 90px 36px; gap:8px; align-items:center;
  padding:7px 14px; border-bottom:1px solid var(--line-2); }
.sec-deger:last-child { border-bottom:none; }
.sec-deger input[type="text"], .sec-deger input[type="number"] {
  border:1px solid var(--line); border-radius:8px; padding:8px 10px; font-size:13px;
  background:var(--white); color:var(--ink); width:100%; }
.sec-deger input:focus { outline:none; border-color:var(--ember); }
.sec-deger__vars { display:flex; align-items:center; gap:6px; font-size:12px; color:var(--ink-soft); }
.sec-ekle { margin:8px 14px 12px; }
.sec-bos { padding:26px 16px; text-align:center; color:var(--ink-faint); font-size:13px; }

/* --- ürüne bağlı seçenek seçimi --- */
.sec-sec-liste { display:grid; gap:8px; }
.sec-sec-oge { display:flex; align-items:center; gap:11px; padding:12px 14px;
  border:1px solid var(--line); border-radius:10px; cursor:pointer; }
.sec-sec-oge:hover { border-color:var(--ink-faint); }
.sec-sec-oge:has(input:checked) { border-color:var(--ember); background:rgba(195,58,23,.05); }
.sec-sec-oge input { accent-color:var(--ember); width:16px; height:16px; flex:none; }
.sec-sec-oge__m { flex:1; }
.sec-sec-oge__m b { display:block; font-size:13.5px; }
.sec-sec-oge__m small { font-size:11.5px; color:var(--ink-faint); }

@media (max-width:600px){
  .sec-deger { grid-template-columns:1fr 90px; }
  .urun-gorsel { flex-direction:column; }
}


/* Mutfak: otomatik gizleme süresi ayarları */
.mutfak__ayar { display:flex; gap:14px; align-items:center; flex-wrap:wrap; }
.mutfak__ayar label { display:flex; align-items:center; gap:6px; font-size:11.5px;
  color:rgba(244,236,221,0.6); white-space:nowrap; }
.mutfak__ayar select { background:transparent; color:rgba(244,236,221,0.85);
  border:1px solid rgba(244,236,221,0.18); border-radius:8px; padding:5px 8px;
  font-size:12px; cursor:pointer; }
.mutfak__ayar select option { background:#1C1815; color:#F4ECDD; }
@media (max-width:900px){ .mutfak__ayar { display:none; } }


/* Sipariş durum geçmişi */
.gecmis-liste { display:grid; gap:0; padding:4px 0; }
.gecmis-satir { display:grid; grid-template-columns:20px 1fr; gap:12px; padding:12px 4px;
  border-bottom:1px solid var(--line-2); }
.gecmis-satir:last-child { border-bottom:none; }
.gecmis-nokta { width:10px; height:10px; border-radius:50%; background:var(--ink-faint);
  margin:5px auto 0; }
.gecmis-satir--geri .gecmis-nokta { background:var(--warn); }
.gecmis-icerik b { display:block; font-size:13.5px; }
.gecmis-icerik small { display:block; font-size:11.5px; color:var(--ink-faint); margin-top:3px; }
.gecmis-uyari { display:inline-block; margin-left:8px; font-size:10.5px; font-weight:700;
  text-transform:uppercase; letter-spacing:.04em; background:rgba(184,134,43,.16);
  color:var(--warn); padding:2px 8px; border-radius:5px; }


/* Kenar çubuğu bağlantıları (artık <a>, buton değil) */
a.sb-link { text-decoration:none; }
a.sb-link:visited { color:inherit; }


/* Canlı bağlantı göstergesi — bağlantı yoksa sarıya döner */
.live--kesik .dot { background: var(--warn); animation: none; }
.live--kesik { color: var(--warn); }


/* Bildirim türleri — sağ üstte, türüne göre renkli kenar */
.toast--basari { border-left-color: var(--good); }
.toast--hata   { border-left-color: var(--bad); }
.toast--uyari  { border-left-color: var(--warn); }
.toast__baslik { display:block; font-weight:700; font-size:13px; margin-bottom:2px; }
.toast--basari .toast__baslik { color: var(--good); }
.toast--hata   .toast__baslik { color: var(--bad); }
.toast--uyari  .toast__baslik { color: var(--warn); }

@media (max-width:600px){
  .toast { top:12px; right:12px; left:12px; max-width:none; transform:translateY(-140%); }
  .toast.show { transform:translateY(0); }
}


/* Genel Bakış hero logosu */
.hero-kart__logo img { width:100%; height:100%; object-fit:cover; border-radius:50%; }
.profile-logo img    { width:100%; height:100%; object-fit:cover; border-radius:inherit; }

/* ============================================================
   RESPONSIVE — panel ekranları
   ============================================================ */
@media (max-width:1100px){
  .dash-ust, .dash-rapor, .dash-rapor2, .dash-rapor3,
  .dash-rapor4, .dash-rapor5 { grid-template-columns:1fr; }
  .yayin-duzen, .qrgen { grid-template-columns:1fr; }
  .theme-layout { grid-template-columns:1fr; }
}

@media (max-width:900px){
  .stats { grid-template-columns:repeat(2,1fr); }
  .settings-grid, .frm { grid-template-columns:1fr; }
  .plan-duzen { grid-template-columns:1fr; }
  .img-grid { grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); }
}

@media (max-width:700px){
  /* Tablolar yatay kaydırılır; sütunlar sıkışıp okunmaz hâle gelmesin */
  .table-wrap { overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .data-table { min-width:620px; }

  .stats { grid-template-columns:1fr; }
  .topbar { flex-wrap:wrap; gap:10px; padding:12px 14px; }
  .topbar h2 { font-size:19px; }
  .actions { width:100%; order:3; }
  .content { padding:14px; }

  .mdl { width:calc(100% - 24px); max-height:88vh; }
  .mdl-tabs { overflow-x:auto; }
  .mdl-tab { white-space:nowrap; }

  .sec-deger { grid-template-columns:1fr; gap:6px; }
  .icerik-grid { grid-template-columns:1fr; }
  .adres-satir { flex-direction:column; align-items:flex-start; }
  .save-bar { flex-direction:column; }
  .save-bar .btn { width:100%; }
}

@media (max-width:480px){
  .sube-sec { max-width:140px; }
  .hero-kart__ic { padding:20px 18px; }
  .hero-kart__logo { width:70px; height:70px; font-size:32px; }
  .kisayol { padding:10px 14px; }
}


/* ============================================================
   POPUP — TELEFON GÖRÜNÜMÜ

   Telefonda popup tam ekran alt sayfa (bottom sheet) olur:
   yukarıdan aşağı kayarak açılır, gövde kaydırılır, alt bar
   parmağın ulaşabileceği yerde sabit durur.
   ============================================================ */
@media (max-width:640px){
  .mdl-scrim { padding:0; align-items:flex-end; }

  .mdl {
    max-width:none; width:100%;
    max-height:92vh;
    border-radius:20px 20px 0 0;
    transform:translateY(100%);
  }
  .mdl-scrim.show .mdl { transform:none; }
  .mdl--wide { max-width:none; }

  /* Sürükleme tutamağı — alt sayfa olduğunu belli eder */
  .mdl__head {
    padding:18px 18px 14px;
    position:relative;
  }
  .mdl__head::before {
    content:""; position:absolute; top:7px; left:50%; transform:translateX(-50%);
    width:38px; height:4px; border-radius:2px; background:var(--line);
  }
  .mdl__title { font-size:18px; }
  .mdl__body { padding:16px 18px calc(16px + env(safe-area-inset-bottom)); }

  /* Alt bar sabitlenir; uzun formda butonlar kaybolmaz */
  .mdl__foot {
    position:sticky; bottom:0;
    margin:18px -18px calc(-16px - env(safe-area-inset-bottom));
    padding:14px 18px calc(14px + env(safe-area-inset-bottom));
    background:var(--white); border-top:1px solid var(--line-2);
    flex-direction:column-reverse; gap:8px;
  }
  .mdl__foot .btn { width:100%; justify-content:center; padding:13px 16px; }

  /* Form alanları tek sütuna iner */
  .mdl .frm, .mdl .settings-grid { grid-template-columns:1fr; gap:12px; }

  /* Sekmeler yatay kaydırılır, taşmaz */
  .mdl-tabs {
    margin:-4px -18px 16px; padding:0 18px;
    overflow-x:auto; scrollbar-width:none;
  }
  .mdl-tabs::-webkit-scrollbar { display:none; }
  .mdl-tab { white-space:nowrap; padding:11px 14px; font-size:13px; }

  /* Görsel seçici ve seçenek satırları */
  .urun-gorsel { flex-direction:row; gap:12px; }
  .urun-gorsel__kutu { width:88px; height:88px; }
  .urun-gorsel__bilgi { font-size:11.5px; }

  .sec-deger { grid-template-columns:1fr auto; gap:8px; }
  .sec-deger label.sec-deger__vars { grid-column:1/-1; }

  .sec-sec-oge { padding:14px 12px; }
  .switch-row { padding:14px 12px; }

  /* iOS'ta 16px altındaki yazı otomatik yakınlaştırma yapar */
  .mdl input, .mdl select, .mdl textarea { font-size:16px; }
}

@media (max-width:400px){
  .mdl__body { padding-left:14px; padding-right:14px; }
  .mdl__head { padding-left:14px; padding-right:14px; }
}


/* Sayfa başlığındaki menü seçici (Ürünler / Kategoriler) */
.menu-secici { display:flex; align-items:center; gap:8px; margin-right:10px; }
.menu-secici > span { font-size:11.5px; font-weight:700; letter-spacing:.05em;
  text-transform:uppercase; color:var(--ink-faint); white-space:nowrap; }
.menu-secici select { border:1px solid var(--line); border-radius:9px; padding:8px 30px 8px 11px;
  font-size:13px; background:var(--white); color:var(--ink); cursor:pointer;
  max-width:190px; text-overflow:ellipsis; }
.menu-secici select:focus { outline:none; border-color:var(--ember); }
@media (max-width:700px){
  .menu-secici { width:100%; margin:0 0 8px; }
  .menu-secici select { flex:1; max-width:none; }
}


/* ============================================================
   YÜKLENİYOR — İSKELET (SKELETON)

   Veri gelmeden "sonuç bulunamadı" göstermek yerine içeriğin
   şeklini taklit eden gri bloklar gösterilir. Göz sıçraması olmaz.
   ============================================================ */
.yukleniyor { padding:4px 0 24px; }
.yukleniyor__cubuklar { display:grid; gap:14px; }
.yukleniyor__yazi { margin:20px 0 0; text-align:center; font-size:13px; color:var(--ink-faint); }

.isk {
  display:block; border-radius:10px;
  background:linear-gradient(90deg,
    var(--paper-2) 0%, rgba(255,255,255,.65) 50%, var(--paper-2) 100%);
  background-size:200% 100%;
  animation:isk-akis 1.25s ease-in-out infinite;
}
.isk--baslik { height:26px; width:210px; border-radius:8px; }
.isk--kart   { height:88px; border-radius:14px; }
.isk--blok   { height:58px; border-radius:12px; }
.isk--kisa   { width:62%; }

.isk-satir { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
@media (max-width:900px){ .isk-satir { grid-template-columns:repeat(2,1fr); } }
@media (max-width:600px){ .isk-satir { grid-template-columns:1fr; } }

@keyframes isk-akis {
  0%   { background-position:200% 0; }
  100% { background-position:-200% 0; }
}

/* Arka plan isteği sürerken üstte ince ilerleme çizgisi */
body.istek-var .topbar::after {
  content:""; position:absolute; left:0; right:0; bottom:-1px; height:2px;
  background:linear-gradient(90deg, transparent, var(--ember), transparent);
  background-size:40% 100%; background-repeat:no-repeat;
  animation:cizgi-akis 1s linear infinite;
}
.topbar { position:relative; }

@keyframes cizgi-akis {
  0%   { background-position:-40% 0; }
  100% { background-position:140% 0; }
}

/* Hareket azaltma tercihi olan kullanıcılar için */
@media (prefers-reduced-motion: reduce){
  .isk { animation:none; background:var(--paper-2); }
  body.istek-var .topbar::after { animation:none; background:var(--ember); }
}


/* ============================================================
   TASARIM SEÇİCİ (karşılama ekranı çeşitleri)
   Her kart, o tasarımın minik bir taslağını gösterir.
   ============================================================ */
.tasarim-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(148px,1fr)); gap:12px; }

.tasarim-kart { position:relative; cursor:pointer; border:1px solid var(--line);
  border-radius:13px; overflow:hidden; background:var(--white); transition:border-color .16s, box-shadow .16s; }
.tasarim-kart:hover { border-color:var(--ink-faint); }
.tasarim-kart.secili, .tasarim-kart:has(input:checked) {
  border-color:var(--ember); box-shadow:0 0 0 2px rgba(195,58,23,.16); }
.tasarim-kart input { position:absolute; opacity:0; pointer-events:none; }

/* Minik önizleme */
.tasarim-kart__on { display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:6px; height:92px; background:#241d19; position:relative; overflow:hidden; }
.tk-logo { width:22px; height:22px; border-radius:50%; background:rgba(244,236,221,.28); }
.tk-ad   { width:56px; height:7px; border-radius:3px; background:rgba(244,236,221,.65); }
.tk-btn  { width:44px; height:11px; border-radius:6px; background:var(--ember); }

.tk-minimal  .tk-logo { display:none; }
.tk-minimal  .tk-ad { width:70px; height:9px; }
.tk-zarif    .tk-logo { background:none; border:1px solid rgba(244,236,221,.5); }
.tk-zarif    .tk-btn { border-radius:0; }
.tk-kart     .tk-logo, .tk-kart .tk-ad, .tk-kart .tk-btn { position:relative; z-index:1; }
.tk-kart::before { content:""; position:absolute; inset:14px 22px; background:rgba(244,236,221,.1);
  border-radius:10px; }
.tk-gorsel::before { content:""; position:absolute; inset:0;
  background:linear-gradient(135deg,#5a4232,#2a201a); opacity:.85; }
.tk-gorsel .tk-logo, .tk-gorsel .tk-ad, .tk-gorsel .tk-btn { position:relative; z-index:1; }
.tk-alt { justify-content:flex-end; padding-bottom:12px; }
.tk-alt .tk-btn { width:64px; }
.tk-bolunmus { justify-content:space-between; padding:14px 0; }
.tk-rozet .tk-logo { border:2px solid rgba(244,236,221,.55); background:none; outline:1px solid rgba(244,236,221,.3);
  outline-offset:3px; }
.tk-degrade::before { content:""; position:absolute; inset:0;
  background:radial-gradient(circle at 30% 25%, rgba(195,58,23,.55), transparent 60%),
             radial-gradient(circle at 75% 80%, rgba(184,134,43,.45), transparent 55%); }
.tk-degrade .tk-logo, .tk-degrade .tk-ad, .tk-degrade .tk-btn { position:relative; z-index:1; }
.tk-seritli::before, .tk-seritli::after { content:""; position:absolute; left:16px; right:16px;
  height:2px; background:linear-gradient(90deg,transparent,rgba(244,236,221,.5),transparent); }
.tk-seritli::before { top:14px; } .tk-seritli::after { bottom:14px; }

.tasarim-kart__m { display:block; padding:10px 12px 12px; }
.tasarim-kart__m b { display:block; font-size:13px; font-weight:600; }
.tasarim-kart__m small { display:block; font-size:11px; color:var(--ink-faint); line-height:1.45; margin-top:2px; }

@media (max-width:600px){
  .tasarim-grid { grid-template-columns:repeat(2,1fr); }
}


/* ============================================================
   MENÜ YÜKLEME (EXCEL)
   ============================================================ */
.yukleme-duzen { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); gap:18px; align-items:start; }
@media (max-width:1100px){ .yukleme-duzen { grid-template-columns:1fr; } }

.yukleme-alan { border:2px dashed var(--line); border-radius:14px; padding:34px 22px;
  text-align:center; cursor:pointer; transition:border-color .16s, background .16s; }
.yukleme-alan:hover, .yukleme-alan.uzerinde { border-color:var(--ember); background:rgba(195,58,23,.04); }
.yukleme-alan__ikon { width:40px; height:40px; color:var(--ink-faint); margin-bottom:10px; }
.yukleme-alan strong { display:block; font-size:14.5px; margin-bottom:4px; }
.yukleme-alan span { display:block; font-size:12px; color:var(--ink-faint); }

.yukleme-secili { display:flex; align-items:center; gap:10px; padding:14px 16px;
  border:1px solid var(--line); border-radius:12px; background:var(--paper); }
.yukleme-secili__ad { flex:1; font-size:13.5px; font-weight:600; overflow-wrap:anywhere; }

.yukleme-ilerleme { margin-top:14px; }
.yukleme-ilerleme__cubuk { height:6px; border-radius:3px; background:var(--paper-2); overflow:hidden; }
.yukleme-ilerleme__cubuk i { display:block; height:100%; width:40%; border-radius:3px;
  background:var(--ember); animation:yukleme-akis 1.1s ease-in-out infinite; }
.yukleme-ilerleme span { display:block; margin-top:8px; font-size:12.5px; color:var(--ink-faint); }
@keyframes yukleme-akis { 0%{margin-left:-40%;} 100%{margin-left:100%;} }

.yukleme-sonuc { margin-top:16px; padding:16px; border-radius:12px; border:1px solid var(--line-2); }
.yukleme-sonuc.basarili { border-left:4px solid var(--good); background:rgba(90,97,56,.05); }
.yukleme-sonuc.kismi    { border-left:4px solid var(--warn); background:rgba(184,134,43,.06); }
.yukleme-sonuc > strong { display:block; font-size:14.5px; margin-bottom:12px; }
.yukleme-sayilar { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
@media (max-width:700px){ .yukleme-sayilar { grid-template-columns:repeat(2,1fr); } }

.hata-liste { display:grid; gap:6px; max-height:320px; overflow-y:auto; }
.hata-satir { display:flex; gap:12px; padding:9px 12px; border-radius:8px;
  background:var(--paper); font-size:12.5px; }
.hata-satir b { flex:none; color:var(--bad); font-family:ui-monospace,monospace; }
.hata-satir span { color:var(--ink-soft); }


/* ============================================================
   RESPONSIVE — ÜST ÇUBUK VE EYLEM DÜĞMELERİ

   Sorun: başlık, şube seçici ve eylem düğmeleri tek satıra
   sığmayınca üst üste biniyordu. Çözüm: dar ekranda düğmeler
   kendi satırına iner ve tam genişlik alır.
   ============================================================ */
@media (max-width:900px){
  .topbar { padding:10px 16px; row-gap:10px; }
  .topbar h2 { font-size:17px; order:1; flex:1 1 auto; }
  .topbar .hamb { order:0; }
  .sube-sec { order:2; }
  .topbar .actions { order:3; flex:1 1 100%; justify-content:flex-start; }
}

@media (max-width:640px){
  .topbar .actions { gap:8px; }
  .topbar .actions .btn { flex:1 1 auto; justify-content:center; min-width:0; }
  .topbar .actions .btn.primary { flex:1 1 100%; }

  /* Menü seçici kendi satırını alır */
  .menu-secici { flex:1 1 100%; margin:0; }
  .menu-secici select { flex:1; max-width:none; }

  /* Canlı göstergesi düğmelerle aynı hizada kalsın */
  .topbar .live { flex:0 0 auto; }
}

/* ============================================================
   MUTFAK EKRANI — DAR EKRAN
   Filtre düğmeleri, saat ve süre ayarları tek satıra sığmıyordu.
   ============================================================ */
@media (max-width:1100px){
  .mutfak__ust { flex-wrap:wrap; row-gap:10px; padding:10px 14px; }
  .mutfak__marka { flex:0 0 auto; }
  .mutfak__filtreler { flex:1 1 100%; order:3; overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .mutfak__filtreler::-webkit-scrollbar { display:none; }
  .mutfak__sag { flex:0 0 auto; margin-left:auto; }
}

@media (max-width:700px){
  .mutfak__govde { grid-template-columns:1fr; padding:12px; gap:12px; }
  .mutfak__marka small { display:none; }
  .mutfak__btn { padding:8px 12px; font-size:12.5px; }
  .msip { width:calc(100% - 20px); max-height:88vh; }
}

/* ============================================================
   İÇERİK ALANI — DAR EKRAN
   ============================================================ */
@media (max-width:640px){
  .content { padding:16px 14px; }
  .page-sub { margin-bottom:16px; }
  .panel-head { flex-wrap:wrap; row-gap:6px; }
  .panel-head h3 { flex:1 1 auto; }
  .toolbar { flex-wrap:wrap; gap:8px; }
  .toolbar__search { flex:1 1 100%; }
  .row-actions { flex-wrap:nowrap; }
}


/* ============================================================
   PREMIUM DOKUNUŞLAR
   ============================================================ */

/* Kenar çubuğunda ince degrade — düz siyah yerine derinlik */
.sidebar {
  background:linear-gradient(180deg, var(--nav) 0%, var(--nav-2) 100%);
}

/* Marka bloğu: altın ince çizgi */
.sb-brand { position:relative; }
.sb-brand::after {
  content:""; position:absolute; left:20px; right:20px; bottom:0; height:1px;
  background:linear-gradient(90deg, transparent, var(--gold), transparent);
  opacity:.45;
}
.sb-brand .mark { letter-spacing:.02em; }

/* Aktif menü öğesi: soldan altın şerit */
.sb-link.active { position:relative; background:rgba(233,229,245,0.07); }
.sb-link.active::before {
  content:""; position:absolute; left:0; top:8px; bottom:8px; width:3px;
  border-radius:0 3px 3px 0; background:var(--gold);
}

/* Kartlar: yumuşak kenar + hafif yükseklik */
.panel, .stat, .kisayol, .hero-kart {
  border-radius:var(--radius);
  box-shadow:var(--shadow-sm);
  border:1px solid var(--line-2);
}

/* Birincil düğme: degrade ve derinlik */
.btn.primary {
  background:linear-gradient(180deg, var(--ember) 0%, var(--ember-deep) 100%);
  border:none; color:#fff;
  box-shadow:0 4px 14px rgba(142,42,79,.28);
}
.btn.primary:hover { filter:brightness(1.07); box-shadow:0 6px 18px rgba(142,42,79,.34); }
.btn.primary:active { transform:translateY(1px); }

/* Tablo başlığı: ince büyük harf */
.data-table thead th {
  font-size:11px; letter-spacing:.07em; text-transform:uppercase;
  color:var(--ink-faint); font-weight:700;
}
.data-table tbody tr { transition:background .14s; }
.data-table tbody tr:hover { background:var(--paper); }

/* Sayı vurgusu */
.stat__v, .tnum { font-variant-numeric:tabular-nums; letter-spacing:-.01em; }

/* Rozetler: yumuşak zemin */
.sr--aktif, .badge.on { background:rgba(46,125,91,.12); color:var(--good); }
.sr--pasif, .badge.off { background:rgba(192,57,43,.10); color:var(--bad); }


/* GÜN SONU */
.gunsonu-duzen { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:18px; align-items:start; }
@media (max-width:1100px){ .gunsonu-duzen { grid-template-columns:1fr; } }
.uyari-kutu { border:1px solid var(--warn); border-left-width:4px; border-radius:12px;
  padding:14px 16px; background:rgba(192,138,24,.07); }
.uyari-kutu strong { display:block; margin-bottom:6px; color:var(--warn); }
.uyari-kutu ul { margin:0; padding-left:18px; font-size:13px; color:var(--ink-soft); line-height:1.7; }


/* ============================================================
   TEMSİL BANDI
   Platform yöneticisi müşteri hesabına geçtiğinde her ekranın
   üstünde durur. Kimin adına işlem yapıldığı unutulmasın diye
   dikkat çekici ama işi engellemeyen bir renk kullanılır.
   ============================================================ */
.temsil-bant { position:sticky; top:0; z-index:60;
  display:flex; align-items:center; justify-content:space-between; gap:14px;
  padding:10px 20px; background:var(--warn); color:#fff; font-size:13px; }
.temsil-bant strong { font-weight:700; }
.temsil-bant small { opacity:.85; }
.temsil-bant form { margin:0; }
.temsil-bant__cik { border:1px solid rgba(255,255,255,.5); background:rgba(255,255,255,.14);
  color:#fff; padding:7px 14px; border-radius:8px; font-size:12.5px; font-weight:600; cursor:pointer; }
.temsil-bant__cik:hover { background:rgba(255,255,255,.24); }
@media (max-width:600px){
  .temsil-bant { flex-direction:column; align-items:flex-start; gap:8px; padding:10px 14px; }
  .temsil-bant__cik { width:100%; }
}
