/* =========================================================
   Esen · Altın Fiyat Platformu — premium tasarım sistemi
   ========================================================= */
:root{
  --bg:#FAF7F2; --card:#FFFFFF; --border:#E8E3DB; --border-strong:#DAD2C6;
  --surface:#FBF9F5; --surface-2:#F1ECE2;   /* alt yüzeyler: input/chip/alt-kart (koyuda kararır) */
  --text:#211F1B; --muted:#726B60; --muted-2:#9C948A;
  --gold:#C8A24D; --gold-deep:#A6812F; --bronze:#B88B4A; --success:#16A34A; --danger:#DC2626;
  --up:#15803D; --down:#DC2626;  /* yükseliş/düşüş metin rengi (koyu temada aydınlanır) */
  --gold-ink:#3a2c08;            /* birincil renk üzerindeki metin (kontrast) */
  --accent:#7A1E3A; --accent-soft:rgba(122,30,58,.12); --accent-glow:rgba(200,162,77,.16);
  --gold-soft:rgba(200,162,77,.13); --gold-line:rgba(200,162,77,.30);
  --success-soft:rgba(22,163,74,.10); --danger-soft:rgba(220,38,38,.09);
  --info-soft:rgba(88,80,64,.10); --info:#5B5344; --warn:#B45309; --warn-soft:rgba(202,138,4,.12);
  --ink-soft:rgba(120,90,48,.06);
  --r-xs:8px; --r-sm:11px; --r:14px; --r-lg:20px; --r-xl:24px; --r-2xl:28px;
  --sh-xs:0 1px 2px rgba(82,66,42,.06);
  --sh-sm:0 1px 2px rgba(82,66,42,.05), 0 2px 6px rgba(82,66,42,.05);
  --sh-md:0 6px 18px rgba(82,66,42,.07), 0 2px 6px rgba(82,66,42,.05);
  --sh-lg:0 18px 44px rgba(72,56,34,.13), 0 6px 14px rgba(72,56,34,.06);
  --sh-soft:0 2px 10px rgba(82,66,42,.045), 0 18px 44px rgba(72,56,34,.06);
  --sidebar-w:clamp(248px,15vw,288px); --sidebar-rail:76px;
  --ease:cubic-bezier(.22,.61,.36,1);
  --font:'Inter',-apple-system,BlinkMacSystemFont,'SF Pro Display','Segoe UI',Roboto,sans-serif;
  --serif:'Fraunces',Georgia,serif;
}
/* ===== KOYU TEMA (premium sıcak koyu · token-tabanlı) — admin geneli; TV showroom hariç ===== */
:root[data-theme="dark"]{
  --bg:#17130E; --card:#221C15; --border:#342D22; --border-strong:#453B2C;
  --text:#F3ECE0; --muted:#B6AB97; --muted-2:#8C8173;
  --gold:#D7B463; --gold-deep:#E7C982; --bronze:#C79A57; --success:#3AD07E; --danger:#F26D6D;
  --up:#3ED888; --down:#F26D6D;
  --surface:#1E1912; --surface-2:#2A2219;
  --gold-ink:#241a06;
  --accent:#CE7791; --accent-soft:rgba(206,119,145,.16); --accent-glow:rgba(215,180,99,.16);
  --gold-soft:rgba(215,180,99,.12); --gold-line:rgba(215,180,99,.26);
  --success-soft:rgba(58,208,126,.14); --danger-soft:rgba(242,109,109,.14);
  --info-soft:rgba(182,171,151,.12); --info:#C9BEA8; --warn:#E4A83E; --warn-soft:rgba(228,168,62,.16);
  --ink-soft:rgba(215,180,99,.07);
  --sh-xs:0 1px 2px rgba(0,0,0,.45);
  --sh-sm:0 1px 2px rgba(0,0,0,.4), 0 2px 6px rgba(0,0,0,.32);
  --sh-md:0 6px 18px rgba(0,0,0,.42), 0 2px 6px rgba(0,0,0,.3);
  --sh-lg:0 18px 44px rgba(0,0,0,.6), 0 6px 14px rgba(0,0,0,.38);
  --sh-soft:0 2px 10px rgba(0,0,0,.32), 0 18px 44px rgba(0,0,0,.42);
}
:root[data-theme="dark"] body{background:linear-gradient(168deg,#1C1710 0%,#17130E 42%,#130F09 100%) fixed;background-color:var(--bg)}
:root[data-theme="dark"] *{scrollbar-color:#3A3227 transparent}
:root[data-theme="dark"] *::-webkit-scrollbar-thumb{background:#3A3227;background-clip:content-box}
/* TV showroom + Ayarlar mini-TV önizlemesi KOYU TEMADAN MUAF — her zaman kendi açık premium paletini kullanır (WYSIWYG) */
#tvScreen,.tvmini-tv{
  --bg:#FAF7F2; --card:#FFFFFF; --border:#E8E3DB; --border-strong:#DAD2C6;
  --surface:#FBF9F5; --surface-2:#F1ECE2;
  --text:#211F1B; --muted:#726B60; --muted-2:#9C948A;
  --gold:#C8A24D; --gold-deep:#A6812F; --success:#16A34A; --danger:#DC2626;
  --up:#15803D; --down:#DC2626;
  --gold-soft:rgba(200,162,77,.13); --gold-line:rgba(200,162,77,.30);
  --success-soft:rgba(22,163,74,.10); --danger-soft:rgba(220,38,38,.09);
}
/* --- Koyu tema: hardcoded açık yüzeyleri karart (token'a bağlı olmayanlar) --- */
:root[data-theme="dark"] .sidebar{background:linear-gradient(180deg,#231D16,#191510);border-right-color:var(--border)}
:root[data-theme="dark"] .topbar{background:rgba(25,21,15,.82);border-bottom-color:var(--border)}
:root[data-theme="dark"] input,:root[data-theme="dark"] select,:root[data-theme="dark"] textarea{background:#1C1811;color:var(--text);border-color:var(--border)}
:root[data-theme="dark"] .seg,:root[data-theme="dark"] .theme-opt,:root[data-theme="dark"] .btn-ghost{background:#221C15}
*{box-sizing:border-box}
[hidden]{display:none!important}
html,body{height:100%}
html{overflow-x:clip}   /* yatay kaydırma çubuğu ASLA çıkmaz (sticky'yi bozmaz) */
body{margin:0;font-family:var(--font);background:linear-gradient(168deg,#FCFBF8 0%,#FAF7F2 32%,#F7F3ED 68%,#F3ECE1 100%) fixed;background-color:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;letter-spacing:-.011em}
h1,h2,h3,h4,p{margin:0}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}
input,select,textarea{font-family:inherit}
svg{display:block}
::selection{background:var(--gold-soft)}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:6px}
*{scrollbar-width:thin;scrollbar-color:#DED7CB transparent}
*::-webkit-scrollbar{width:10px;height:10px}
*::-webkit-scrollbar-thumb{background:#DED7CB;border-radius:20px;border:3px solid transparent;background-clip:content-box}
*::-webkit-scrollbar-thumb:hover{background:#CFC6B8;background-clip:content-box}

/* =========================================================
   SPLASH
   ========================================================= */
.splash{position:fixed;inset:0;z-index:300;display:grid;place-items:center;overflow:hidden;perspective:1100px;
  background:radial-gradient(900px 560px at 50% 22%,#FDFCF9,#F5EFE6 70%);
  transition:opacity .6s var(--ease),visibility .6s}
.splash.done{opacity:0;visibility:hidden}
/* ---- splash 3D dekor (abartısız): derinlikli altın küreler + logonun arkasında 3D yörünge halkaları ---- */
.splash-deco{position:absolute;inset:0;pointer-events:none;transform-style:preserve-3d}
.sp-orb{position:absolute;border-radius:50%;background:radial-gradient(circle at 32% 30%,rgba(255,246,220,.95),rgba(200,162,77,.32) 55%,rgba(200,162,77,0) 74%)}
.sp-orb.o1{width:230px;height:230px;left:11%;top:15%;filter:blur(26px);opacity:.42;animation:spFloat 26s ease-in-out infinite alternate}
.sp-orb.o2{width:160px;height:160px;right:13%;top:60%;filter:blur(18px);opacity:.36;animation:spFloat 34s ease-in-out infinite alternate-reverse}
.sp-orb.o3{width:92px;height:92px;right:24%;top:19%;filter:blur(9px);opacity:.30;animation:spFloat 21s ease-in-out infinite alternate}
@keyframes spFloat{from{transform:translate3d(0,0,0) scale(1)}to{transform:translate3d(26px,-32px,70px) scale(1.05)}}
.sp-ring{position:absolute;left:50%;top:42%;border-radius:50%;border:1px solid rgba(200,162,77,.30)}
.sp-ring::before{content:"";position:absolute;top:-3.5px;left:50%;width:7px;height:7px;margin-left:-3.5px;border-radius:50%;
  background:radial-gradient(circle at 35% 32%,#FFF3D6,var(--gold,#C8A24D));box-shadow:0 0 10px rgba(200,162,77,.75)}   /* halkada süzülen ışık boncuğu */
.sp-ring.r1{width:520px;height:520px;margin:-260px 0 0 -260px;animation:spOrbit 30s linear infinite}
.sp-ring.r2{width:740px;height:740px;margin:-370px 0 0 -370px;border-color:rgba(200,162,77,.16);animation:spOrbit 48s linear infinite reverse}
@keyframes spOrbit{from{transform:rotateX(72deg) rotateZ(0deg)}to{transform:rotateX(72deg) rotateZ(360deg)}}
@media (prefers-reduced-motion:reduce){ .sp-orb,.sp-ring{animation:none} .sp-ring{transform:rotateX(72deg)} }
.splash-inner{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center;animation:splashUp .7s var(--ease)}
.splash-tag{font-size:12.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-deep);margin-top:6px}
.splash-bar{width:220px;height:4px;border-radius:99px;background:#EBE4D8;overflow:hidden;margin-top:30px}
.splash-bar span{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,var(--gold),var(--gold-deep));transition:width .25s var(--ease)}
.splash-status{font-size:12.5px;color:var(--muted);margin-top:14px;font-variant-numeric:tabular-nums}
.splash-foot{position:absolute;bottom:26px;font-size:11.5px;color:var(--muted-2);letter-spacing:.02em}

/* ==================== BİSMİLLAH KARŞILAMA (giriş sonrası · ~1 sn) ==================== */
.bism{position:fixed;inset:0;z-index:400;display:grid;place-items:center;overflow:hidden;
  background:radial-gradient(1100px 760px at 50% 32%,#FEFCF8 0%,#F6EFE3 58%,#EFE3CE 100%);
  opacity:0;filter:blur(8px);transition:opacity .5s var(--ease),filter .6s var(--ease);will-change:opacity,filter}
.bism.show{opacity:1;filter:blur(0)}
.bism.leave{opacity:0;filter:blur(12px);transition:opacity .55s var(--ease),filter .55s var(--ease)}
.bism::before,.bism::after{content:"";position:absolute;border-radius:50%;pointer-events:none;filter:blur(64px)}
.bism::before{width:48vw;height:48vw;top:-12%;left:-8%;background:radial-gradient(circle,rgba(201,169,110,.30),transparent 70%)}
.bism::after{width:42vw;height:42vw;bottom:-14%;right:-6%;background:radial-gradient(circle,rgba(122,30,58,.10),transparent 70%)}
.bism-inner{position:relative;z-index:1;text-align:center;padding:24px;max-width:92vw}
.bism-besmele{font-family:'Amiri','Traditional Arabic','Segoe UI',serif;font-weight:400;direction:rtl;text-align:center;
  font-size:clamp(32px,7vw,78px);line-height:1.35;color:var(--gold-deep);max-width:94vw;margin:0 auto 6px;
  text-shadow:0 8px 40px rgba(201,169,110,.28);opacity:0;transform:translateY(-26px);animation:bismDown .5s var(--ease) .08s forwards}
.bism-translit{font-family:var(--serif);font-size:clamp(20px,3.4vw,34px);font-weight:600;letter-spacing:.005em;color:var(--ink);
  margin-top:14px;opacity:0;animation:bismFade .45s var(--ease) .26s forwards}
.bism-meal{font-size:clamp(13px,1.9vw,16.5px);color:var(--muted);margin-top:9px;
  opacity:0;transform:translateY(16px);animation:bismUp .45s var(--ease) .38s forwards}
.bism-brand{position:absolute;z-index:1;bottom:clamp(28px,6vh,64px);left:0;right:0;
  display:flex;flex-direction:column;align-items:center;gap:9px;opacity:0;animation:bismFade .42s var(--ease) .52s forwards}
.bism-logo{width:42px;height:42px;border-radius:12px;overflow:hidden;box-shadow:var(--sh-sm)}
.bism-logo img{width:100%;height:100%;object-fit:cover}
.bism-logo svg{width:100%;height:100%}
.bism-brand-tx{text-align:center;line-height:1.35}
.bism-brand-tx b{font-family:var(--serif);font-size:14px;font-weight:600;color:var(--ink);display:block}
.bism-brand-tx span{font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted-2)}
@keyframes bismDown{from{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}
@keyframes bismUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes bismFade{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion:reduce){ .bism-besmele,.bism-translit,.bism-meal,.bism-brand{animation-duration:.01ms;animation-delay:0ms;opacity:1} }
@keyframes splashUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* =========================================================
   LAYOUT
   ========================================================= */
.app{display:flex;min-height:100vh;position:relative;z-index:1}
.sidebar{width:var(--sidebar-w);flex:0 0 var(--sidebar-w);background:linear-gradient(180deg,#FFFFFF,#FCFBF8);
  border-right:1px solid var(--border);display:flex;flex-direction:column;padding:22px 16px 16px;
  position:sticky;top:0;height:100vh;z-index:40;transition:width .32s var(--ease),transform .3s var(--ease)}
.brand{display:flex;align-items:center;gap:12px;padding:6px 8px 20px;overflow:hidden}
.brand-mark{width:40px;height:40px;border-radius:12px;background:linear-gradient(145deg,#241f1a,#2A231C);color:var(--gold);
  display:grid;place-items:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),var(--sh-sm);flex:0 0 40px}
.brand-mark svg{width:22px;height:22px}
.brand-text{display:flex;flex-direction:column;line-height:1.05;white-space:nowrap;transition:opacity .2s}
.brand-name{font-weight:700;font-size:18px;letter-spacing:-.02em}
.brand-sub{font-size:11px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-weight:600;margin-top:3px}

.nav{display:flex;flex-direction:column;gap:2px;flex:1;overflow-y:auto;overflow-x:hidden;padding-right:2px}
.nav-label{font-size:10.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted-2);padding:16px 10px 8px;white-space:nowrap;transition:opacity .2s}
.nav-label:first-child{padding-top:4px}
.nav-item{display:flex;align-items:center;gap:12px;padding:9px 11px;border-radius:11px;color:var(--text);font-weight:500;font-size:14px;position:relative;transition:background .18s var(--ease),color .18s var(--ease);white-space:nowrap}
.nav-item:hover{background:var(--ink-soft)}
.nav-ic{width:20px;height:20px;color:var(--muted);flex:0 0 20px;transition:color .18s}
.nav-ic svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.nav-tx{transition:opacity .18s}
.nav-item.is-active{background:var(--gold-soft);color:var(--text);font-weight:600}
.nav-item.is-active .nav-ic{color:var(--gold-deep)}
.nav-item.is-active::before{content:"";position:absolute;left:-16px;top:50%;transform:translateY(-50%);width:3px;height:20px;border-radius:0 3px 3px 0;background:var(--gold)}
.nav-dot{width:6px;height:6px;border-radius:50%;background:var(--success);margin-left:auto;box-shadow:0 0 0 3px var(--success-soft);animation:pulse 2s infinite;flex:0 0 auto}

.sidebar-foot{padding-top:12px;border-top:1px solid var(--border);margin-top:8px}
.store-chip{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:12px;transition:background .18s;overflow:hidden}
.store-chip:hover{background:var(--ink-soft)}
.store-online{width:9px;height:9px;border-radius:50%;background:var(--success);box-shadow:0 0 0 3px var(--success-soft);flex:0 0 auto}
.store-status{font-weight:600;font-size:13px;letter-spacing:.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* collapsed rail */
.app.sidebar-collapsed .sidebar{width:var(--sidebar-rail);flex-basis:var(--sidebar-rail);padding-left:12px;padding-right:12px}
.app.sidebar-collapsed .brand{justify-content:center;padding-left:0;padding-right:0}
.app.sidebar-collapsed .brand-text,
.app.sidebar-collapsed .nav-tx,
.app.sidebar-collapsed .nav-label,
.app.sidebar-collapsed .store-status{opacity:0;width:0;pointer-events:none;position:absolute}
.app.sidebar-collapsed .nav-item{justify-content:center;padding-left:0;padding-right:0}
.app.sidebar-collapsed .nav-item.is-active::before{left:-12px}
.app.sidebar-collapsed .nav-dot{position:absolute;top:7px;right:14px;margin:0}
.app.sidebar-collapsed .store-chip{justify-content:center;padding-left:0;padding-right:0}
.app.sidebar-collapsed .nav-item:hover::after{content:attr(data-tip);position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);
  background:#2A231C;color:#fff;font-size:12px;font-weight:500;padding:6px 10px;border-radius:8px;white-space:nowrap;box-shadow:var(--sh-md);z-index:60;pointer-events:none;animation:tipIn .16s var(--ease)}
@keyframes tipIn{from{opacity:0;transform:translateY(-50%) translateX(-4px)}to{opacity:1;transform:translateY(-50%)}}

.main{flex:1;min-width:0;display:flex;flex-direction:column}

/* =========================================================
   TOPBAR
   ========================================================= */
.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:16px;min-height:82px;padding:14px 30px;
  background:rgba(250,247,242,.82);backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid var(--border)}
.topbar-title{min-width:0}
.topbar-title h1{font-size:20px;font-weight:700;letter-spacing:-.02em;white-space:nowrap}
.topbar-title p{font-size:12.5px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:12px}

.icon-btn{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;border:1px solid var(--border);background:var(--card);color:var(--muted);transition:.18s var(--ease);box-shadow:var(--sh-xs);position:relative}
.icon-btn svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.icon-btn:hover{color:var(--text);border-color:var(--border-strong);transform:translateY(-1px);box-shadow:var(--sh-sm)}
.icon-btn:active{transform:translateY(0)}
.icon-btn.spinning svg{animation:spin .7s linear infinite}

.topbar-search{position:relative;flex:0 1 300px}
.search.topbar-search input{width:100%;padding:10px 62px 10px 38px;text-overflow:ellipsis}
.search-kbd{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-size:10.5px;font-weight:600;color:var(--muted-2);background:var(--card);border:1px solid var(--border);border-radius:6px;padding:2px 6px;letter-spacing:.02em;pointer-events:none}
.search-results{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--card);border:1px solid var(--border);border-radius:14px;box-shadow:var(--sh-lg);padding:6px;z-index:50;max-height:340px;overflow:auto;animation:ddIn .18s var(--ease)}
.sr-item{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:10px;cursor:pointer;transition:background .14s}
.sr-item:hover,.sr-item.hl{background:var(--ink-soft)}
.sr-name{font-weight:600;font-size:13.5px}
.sr-sub{font-size:11.5px;color:var(--muted)}
.sr-val{margin-left:auto;font-weight:700;font-size:13px;font-variant-numeric:tabular-nums}
.sr-empty{padding:22px;text-align:center;color:var(--muted);font-size:13px}

.status-pills{display:flex;gap:7px}
.spill{display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid var(--border);background:var(--card);color:var(--muted);box-shadow:var(--sh-xs)}
.spill i{width:7px;height:7px;border-radius:50%;background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}
.spill.ok{color:var(--up)}

.clock{display:flex;flex-direction:column;align-items:flex-end;line-height:1.02;padding:0 2px}
.clock-time{font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.01em;color:var(--text)}
.clock-time b{font-size:23px}
.clock-time i{font-size:13px;font-style:normal;font-weight:700;color:var(--muted);margin-left:1px}
.clock-date{display:flex;flex-direction:column;align-items:flex-end;margin-top:4px;line-height:1.25}
.clock-date b{font-size:12px;font-weight:600;color:var(--text);white-space:nowrap;font-variant-numeric:tabular-nums}
.clock-date span{font-size:11px;color:var(--muted);white-space:nowrap}
/* canlı gösterge (kullanıcı bilgisi yerine) */
.tb-live{display:inline-flex;align-items:center;gap:9px;padding:8px 15px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.07em;color:var(--up);background:var(--success-soft);border:1px solid rgba(22,163,74,.22)}
.tb-live-dot{width:8px;height:8px;border-radius:50%;background:var(--success);position:relative;flex:0 0 auto}
.tb-live-dot::after{content:"";position:absolute;inset:-4px;border-radius:50%;background:var(--success);opacity:.35;animation:tbLivePulse 2s ease-out infinite}
@keyframes tbLivePulse{0%{transform:scale(1);opacity:.35}70%,100%{transform:scale(2.4);opacity:0}}
@media (prefers-reduced-motion:reduce){ .tb-live-dot::after{animation:none} }

.tb-item{position:relative}
.notif-badge{position:absolute;top:-4px;right:-4px;min-width:17px;height:17px;padding:0 4px;border-radius:99px;background:var(--danger);color:#fff;font-size:10.5px;font-weight:700;display:grid;place-items:center;box-shadow:0 0 0 2px var(--bg)}
.profile-btn{display:flex;align-items:center;gap:6px;padding:4px 8px 4px 4px;border-radius:12px;border:1px solid var(--border);background:var(--card);box-shadow:var(--sh-xs);transition:.18s var(--ease)}
.profile-btn:hover{border-color:var(--border-strong);box-shadow:var(--sh-sm)}
.profile-av{width:30px;height:30px;border-radius:8px;background:linear-gradient(145deg,#E9DEC2,#C8A24D);color:var(--gold-deep);display:grid;place-items:center;font-weight:700;font-size:12px}
.profile-chev{width:16px;height:16px;fill:none;stroke:var(--muted);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.profile-btn.open .profile-chev{transform:rotate(180deg)}

/* dropdowns */
.dropdown{position:absolute;top:calc(100% + 10px);right:0;background:var(--card);border:1px solid var(--border);border-radius:16px;box-shadow:var(--sh-lg);z-index:50;animation:ddIn .2s var(--ease);overflow:hidden}
@keyframes ddIn{from{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:none}}
.notif-dd{width:340px}
.dd-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border);font-weight:700;font-size:14px}
.dd-link{font-size:12px;font-weight:600;color:var(--gold-deep)}
.dd-link:hover{text-decoration:underline}
.notif-list{max-height:320px;overflow:auto;padding:6px}
.notif-item{display:flex;gap:11px;padding:11px 12px;border-radius:11px;transition:background .14s;cursor:default}
.notif-item:hover{background:var(--ink-soft)}
.notif-item.unread{background:var(--gold-soft)}
.notif-item.unread:hover{background:rgba(200,162,77,.16)}
.ni-ic{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;flex:0 0 32px}
.ni-ic svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.ni-ic.up{background:var(--success-soft);color:var(--success)}
.ni-ic.down{background:var(--danger-soft);color:var(--danger)}
.ni-ic.system{background:var(--info-soft);color:var(--info)}
.ni-ic.info{background:var(--gold-soft);color:var(--gold-deep)}
.ni-tx{font-size:13px;line-height:1.4;color:var(--text)}
.ni-when{font-size:11.5px;color:var(--muted-2);margin-top:3px}
.dd-foot{padding:11px 16px;border-top:1px solid var(--border);text-align:center}

.profile-dd{width:260px}
.pf-head{display:flex;align-items:center;gap:12px;padding:16px}
.pf-av{width:42px;height:42px;border-radius:11px;background:linear-gradient(145deg,#E9DEC2,#C8A24D);color:var(--gold-deep);display:grid;place-items:center;font-weight:700;font-size:15px}
.pf-name{font-weight:600;font-size:14px}
.pf-mail{font-size:12px;color:var(--muted)}
.pf-menu{padding:6px;border-top:1px solid var(--border)}
.pf-foot{padding:6px;border-top:1px solid var(--border)}
.pf-mi{display:flex;align-items:center;gap:11px;width:100%;padding:9px 11px;border-radius:10px;font-size:13.5px;font-weight:500;color:var(--text);transition:background .14s}
.pf-mi svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;color:var(--muted)}
.pf-mi:hover{background:var(--ink-soft)}
.pf-mi.danger{color:var(--danger)}
.pf-mi.danger svg{color:var(--danger)}

.content{padding:28px;max-width:1360px;width:100%;flex:1}
.view{display:none;animation:viewIn .42s var(--ease)}
.view.is-active{display:block}
@keyframes viewIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

.app-foot{display:flex;align-items:center;gap:8px;padding:16px 28px;border-top:1px solid var(--border);color:var(--muted);font-size:12px}
.foot-dot{color:var(--muted-2)}
.foot-right{margin-left:auto;font-weight:600}

/* =========================================================
   SECTION HEAD
   ========================================================= */
.section-head{display:flex;align-items:baseline;gap:12px;margin:28px 0 16px}
.section-head.tight{margin:0 0 16px}
.section-head h2{font-size:16px;font-weight:700;letter-spacing:-.01em}
.section-note{font-size:12.5px;color:var(--muted)}
.section-head .section-note{margin-left:auto}

/* =========================================================
   STATUS ROW
   ========================================================= */
.status-row{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.status-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:15px 16px;display:flex;align-items:center;gap:12px;box-shadow:var(--sh-sm);transition:.2s var(--ease)}
.status-card:hover{box-shadow:var(--sh-md);transform:translateY(-2px)}
.status-ic{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;flex:0 0 38px}
.status-ic svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.status-ic.ok{background:var(--success-soft);color:var(--success)}
.status-ic.gold{background:var(--gold-soft);color:var(--gold-deep)}
.status-ic.muted{background:var(--ink-soft);color:var(--muted)}
.status-ic .ping{width:10px;height:10px;border-radius:50%;background:var(--success);position:relative}
.status-ic .ping::after{content:"";position:absolute;inset:-5px;border-radius:50%;background:var(--success);opacity:.3;animation:ping 2s var(--ease) infinite}
.status-k{font-size:11.5px;color:var(--muted);font-weight:500;margin-bottom:2px}
.status-v{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}

/* =========================================================
   GOLD CARDS
   ========================================================= */
/* 🔴 13 ürün 4'lü gridde son sırada 3 boş hücre bırakıyordu (13 asal) → flex: son sıradaki kart(lar) kalan genişliği paylaşır */
.gold-grid{display:flex;flex-wrap:wrap;gap:16px}
.gold-grid > .gold-card,.gold-grid > .skel-card{flex:1 1 300px;min-width:0;max-width:100%}
.gold-card{position:relative;overflow:hidden;background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);padding:18px 18px 14px;box-shadow:var(--sh-sm);transition:.24s var(--ease);animation:cardIn .5s var(--ease) backwards}
/* 3D interaktif kart eğimi (Genel Bakış · imlece göre, JS: init3dTilt) */
.gold-card,.dstat{transform-style:preserve-3d;backface-visibility:hidden}
.gold-card.tilt-on{z-index:3;box-shadow:0 30px 70px rgba(122,30,58,.16),0 10px 26px rgba(0,0,0,.08)}
.dstat.tilt-on{z-index:3;box-shadow:0 18px 42px rgba(0,0,0,.12)}
.gold-card::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,transparent,var(--gold-line),transparent);opacity:0;transition:opacity .28s}
.gold-card:hover{transform:translateY(-3px);box-shadow:var(--sh-lg);border-color:var(--gold-line)}
.gold-card:hover::before{opacity:1}
@keyframes cardIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.gc-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.gc-name{display:flex;align-items:center;gap:10px}
.gc-title{font-size:14.5px;font-weight:600;letter-spacing:-.01em}
.gc-sub{font-size:11px;color:var(--muted-2);margin-top:1px}
.trend{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;padding:4px 8px;border-radius:8px;font-variant-numeric:tabular-nums}
.trend svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.trend.up{color:var(--success);background:var(--success-soft)}
.trend.down{color:var(--danger);background:var(--danger-soft)}
.gc-prices{display:flex;gap:8px;margin-bottom:14px}
.gc-pcol{flex:1;padding:11px 12px;border-radius:12px;background:var(--surface);border:1px solid var(--border)}
.gc-pcol.sell{background:linear-gradient(180deg,#FCFAF4,#FBF9F5);border-color:var(--gold-line)}
.gc-plabel{font-size:10.5px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px}
.gc-pval{font-size:17px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em;white-space:nowrap}
.gc-pval .cur{font-size:12px;font-weight:600;color:var(--muted);margin-left:3px}
.spark{width:100%;height:34px;display:block}
.gc-foot{display:flex;align-items:center;justify-content:space-between;margin-top:8px}
.gc-updated{font-size:11px;color:var(--muted-2)}

.flash-up{animation:flashUp .9s var(--ease)}
.flash-down{animation:flashDown .9s var(--ease)}
@keyframes flashUp{0%{background:var(--success-soft)}100%{background:transparent}}
@keyframes flashDown{0%{background:var(--danger-soft)}100%{background:transparent}}

/* skeleton */
.skel-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);padding:18px;box-shadow:var(--sh-sm);height:186px}
.skel{background:linear-gradient(100deg,#F1ECE2 30%,#F6F7F9 50%,#F1ECE2 70%);background-size:200% 100%;animation:shimmer 1.3s linear infinite;border-radius:8px}
@keyframes shimmer{from{background-position:200% 0}to{background-position:-200% 0}}

/* =========================================================
   TOOLBAR / SEARCH / SEGMENTED
   ========================================================= */
.toolbar{display:flex;align-items:center;gap:14px;margin-bottom:18px;flex-wrap:wrap}
.search{position:relative;flex:1;min-width:200px;max-width:360px}
.search svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);width:17px;height:17px;fill:none;stroke:var(--muted-2);stroke-width:1.9;stroke-linecap:round}
.search input{width:100%;padding:11px 14px 11px 38px;border-radius:12px;border:1px solid var(--border);background:var(--card);font-size:13.5px;color:var(--text);box-shadow:var(--sh-xs);transition:.18s var(--ease)}
.search input::placeholder{color:var(--muted-2)}
.search input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}
.segmented{display:inline-flex;background:var(--surface-2);border-radius:11px;padding:3px;gap:2px;border:1px solid var(--border)}
.segmented.wide{width:100%;margin:6px 0 0}
.segmented.wide .seg{flex:1}
.seg{padding:7px 14px;border-radius:8px;font-size:13px;font-weight:600;color:var(--muted);transition:.16s var(--ease);white-space:nowrap}
.seg:hover{color:var(--text)}
.seg.is-active{background:var(--card);color:var(--text);box-shadow:var(--sh-xs)}
.toolbar-right{margin-left:auto;display:flex;align-items:center;gap:12px}
.count-tag{font-size:13px;color:var(--muted)}
.count-tag b{color:var(--text);font-weight:600}

/* =========================================================
   CARDS / TABLES
   ========================================================= */
.card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--sh-sm)}
.table-card{overflow:hidden}
.table-scroll{overflow-x:auto;max-height:560px;overflow-y:auto}
.table{width:100%;border-collapse:collapse;min-width:820px}
.table thead th{text-align:left;font-size:11.5px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;padding:14px 18px;border-bottom:1px solid var(--border);background:var(--card);white-space:nowrap;position:sticky;top:0;z-index:2}
.table th.num,.table td.num{text-align:right;font-variant-numeric:tabular-nums}
.table th.sortable{cursor:pointer;user-select:none;transition:color .15s}
.table th.sortable:hover{color:var(--text)}
.sort-ic{display:inline-block;width:12px;margin-left:3px;vertical-align:middle;color:var(--muted-2)}
.table th.num .sort-ic{margin-left:0;margin-right:0}
.table th.sort-asc .sort-ic::after{content:"▲";font-size:8px}
.table th.sort-desc .sort-ic::after{content:"▼";font-size:8px}
.table th.sort-asc,.table th.sort-desc{color:var(--gold-deep)}
/* Canlı Fiyatlar: masaüstünde YATAY KAYDIRMA YOK — tablo genişliğe otomatik oturur, Ürün en geniş sütun */
#priceTable{min-width:0;table-layout:auto;width:100%}
#priceTable thead th,#priceTable tbody td{padding-left:10px;padding-right:10px}
#priceTable thead th{white-space:normal;line-height:1.18;vertical-align:bottom}
#priceTable td.num{font-size:13px}
#priceTable .col-product{width:22%}
#priceTable td .price-prod,#priceTable .col-product{min-width:0}
@media (min-width:860px){ #view-prices .table-scroll{overflow-x:clip} }
.table tbody td{padding:14px 18px;border-bottom:1px solid #F0EBE1;font-size:13.5px;white-space:nowrap}
.table tbody tr{transition:background .15s;animation:rowIn .35s var(--ease) both}
@keyframes rowIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.table tbody tr:last-child td{border-bottom:none}
.table tbody tr:hover{background:var(--card)}
.prod-cell{display:flex;align-items:center;gap:11px}
.prod-name{font-weight:600}
.prod-tag{font-size:11px;color:var(--muted-2)}
.td-store{font-weight:700;color:var(--gold-deep)}
.spread-chip{display:inline-block;padding:3px 9px;border-radius:7px;background:var(--ink-soft);font-weight:600;font-size:12.5px;font-variant-numeric:tabular-nums}
.td-updated{color:var(--muted);font-size:12.5px}
.dot-live{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--success);margin-right:6px;vertical-align:middle;box-shadow:0 0 0 3px var(--success-soft)}
.st-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600}
.st-badge.up{background:var(--success-soft);color:var(--up)}
.st-badge.down{background:var(--danger-soft);color:var(--danger)}
.st-badge.flat{background:var(--ink-soft);color:var(--muted)}
.st-badge i{width:6px;height:6px;border-radius:50%;background:currentColor}
.empty{padding:44px;text-align:center;color:var(--muted);font-size:13.5px}

/* pagination */
.pager{display:flex;align-items:center;justify-content:space-between;padding:13px 18px;border-top:1px solid var(--border)}
.pager-info{font-size:12.5px;color:var(--muted)}
.pager-ctrl{display:flex;align-items:center;gap:10px}
.pager-pages{font-size:13px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums;min-width:52px;text-align:center}
.pg-btn{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;border:1px solid var(--border);background:var(--card);color:var(--muted);transition:.16s var(--ease)}
.pg-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.pg-btn:hover:not(:disabled){border-color:var(--border-strong);color:var(--text)}
.pg-btn:disabled{opacity:.4;cursor:not-allowed}

/* =========================================================
   PROFIT — editable cards
   ========================================================= */
.profit-note{display:flex;gap:14px;padding:18px 20px;margin-bottom:18px;align-items:flex-start}
.pn-ic{width:42px;height:42px;border-radius:12px;background:var(--gold-soft);color:var(--gold-deep);display:grid;place-items:center;flex:0 0 42px}
.pn-ic svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.profit-note h3{font-size:15px;font-weight:700;margin-bottom:4px}
.profit-note p{font-size:13px;color:var(--muted);line-height:1.5}

.profit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px}
.profit-card{background:var(--card);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px;box-shadow:var(--sh-sm);transition:.22s var(--ease);animation:cardIn .5s var(--ease) both}
.profit-card:hover{box-shadow:var(--sh-md);border-color:var(--gold-line)}
.pc-head{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.pc-title{flex:1;min-width:0}
.pc-title h3{font-size:15px;font-weight:700}
.pc-title p{font-size:11.5px;color:var(--muted)}
.pc-mode{display:inline-flex;background:var(--surface-2);border-radius:9px;padding:2px;border:1px solid var(--border)}
.pc-mode .seg{padding:5px 10px;font-size:11.5px}
.pc-inputs{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}
.pc-field label{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:var(--muted);margin-bottom:7px}
.pc-field label .dotc{width:7px;height:7px;border-radius:50%}
.pc-field.buy label .dotc{background:var(--danger)}
.pc-field.sell label .dotc{background:var(--success)}
.input-unit{display:flex;align-items:center;border:1px solid var(--border);border-radius:11px;background:var(--card);overflow:hidden;transition:.18s var(--ease)}
.input-unit:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}
.input-unit input{flex:1;border:none;padding:10px 12px;font-size:14px;font-weight:600;color:var(--text);background:transparent;outline:none;font-variant-numeric:tabular-nums;min-width:0;width:100%}
.input-unit .unit{padding:0 12px;color:var(--muted);font-weight:600;font-size:12.5px;border-left:1px solid var(--border);align-self:stretch;display:grid;place-items:center;background:var(--surface)}
.pc-preview{border:1px solid var(--gold-line);border-radius:14px;padding:15px;background:linear-gradient(180deg,#FCFAF4,#FFFFFF)}
.pc-prev-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.pc-prev-head span{font-size:11.5px;font-weight:700;color:var(--gold-deep);letter-spacing:.02em}
.pc-prev-live{font-size:10.5px;color:var(--gold-deep);font-weight:600;display:inline-flex;gap:5px;align-items:center}
.pc-prev-rows{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pc-prev-col .k{font-size:10.5px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}
.pc-prev-col .v{font-size:18px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin-top:4px}
.pc-prev-foot{display:flex;align-items:center;justify-content:space-between;margin-top:12px;padding-top:11px;border-top:1px dashed var(--gold-line)}
.pc-prev-foot .k{font-size:12px;color:var(--muted)}
.pc-prev-foot .v{font-size:14px;font-weight:700;color:var(--gold-deep);font-variant-numeric:tabular-nums}

/* =========================================================
   BUTTONS / SWITCH
   ========================================================= */
.btn{display:inline-flex;align-items:center;gap:8px;justify-content:center;padding:10px 18px;border-radius:12px;font-size:13.5px;font-weight:600;transition:.18s var(--ease);white-space:nowrap}
.btn-ic{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.btn-primary{background:linear-gradient(180deg,var(--gold),var(--gold-deep));color:var(--gold-ink);box-shadow:var(--sh-sm),inset 0 1px 0 rgba(255,255,255,.25)}
.btn-primary:hover{filter:brightness(1.05);transform:translateY(-1px);box-shadow:var(--sh-md),inset 0 1px 0 rgba(255,255,255,.25)}
.btn-primary:active{transform:translateY(0)}
.btn-ghost{background:var(--card);border:1px solid var(--border);color:var(--text)}
.btn-ghost:hover{border-color:var(--border-strong);background:var(--surface)}
.btn-ghost.sm,.btn.sm{padding:8px 14px;font-size:12.5px}
.switch{width:44px;height:26px;border-radius:99px;background:#DED7CB;position:relative;transition:background .2s var(--ease);flex:0 0 44px}
.switch span{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:var(--sh-sm);transition:transform .2s var(--ease)}
.switch.is-on{background:var(--success)}
.switch.is-on span{transform:translateX(18px)}
.switch-field{display:flex;flex-direction:column}
.switch-field label{margin-bottom:8px}

/* =========================================================
   API MANAGEMENT
   ========================================================= */
.api-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
.api-grid.two{grid-template-columns:1.1fr .9fr}
.api-source{padding:22px}
.api-source.primary{position:relative;overflow:hidden}
.api-source.primary::after{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-line),transparent)}
.api-source-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:20px}
.api-source-head h3{font-size:16px;font-weight:700;margin:8px 0 4px}
.mono{font-family:ui-monospace,'SF Mono',Menlo,Consolas,monospace;font-size:12px;color:var(--muted)}
.tag{display:inline-block;padding:3px 10px;border-radius:7px;font-size:11px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;background:var(--ink-soft);color:var(--muted)}
.tag-gold{background:var(--gold-soft);color:var(--gold-deep)}
.health{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;padding:6px 12px;border-radius:999px;white-space:nowrap}
.health.ok{background:var(--success-soft);color:var(--up)}
.health.idle{background:var(--ink-soft);color:var(--muted)}
.health.idle span{width:7px;height:7px;border-radius:50%;background:var(--muted-2)}
.health .ping{width:8px;height:8px;border-radius:50%;background:var(--success);position:relative}
.health .ping::after{content:"";position:absolute;inset:-4px;border-radius:50%;background:var(--success);opacity:.3;animation:ping 2s var(--ease) infinite}
.api-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.api-metrics>div{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:12px 13px}
.mk{font-size:11px;color:var(--muted);font-weight:600;margin-bottom:5px}
.mv{font-size:15px;font-weight:700;font-variant-numeric:tabular-nums}
.api-control{padding:22px}
.api-control h3{font-size:16px;font-weight:700;margin-bottom:4px}
.cache-meter{margin:16px 0 20px}
.cache-bar{height:8px;border-radius:999px;background:var(--surface-2);overflow:hidden;margin-bottom:9px}
.cache-bar span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--gold),var(--gold-deep));width:40%;transition:width .5s linear}
.status-lines{display:flex;flex-direction:column;gap:2px;margin-top:6px}
.sl{display:flex;align-items:center;justify-content:space-between;padding:13px 2px;border-bottom:1px solid #F0EBE1;font-size:13.5px}
.sl:last-child{border-bottom:none}
.sl span:first-child{color:var(--muted)}
.sl b{font-weight:600;font-variant-numeric:tabular-nums}
.sl .good{color:var(--success)}
.err-list{display:flex;flex-direction:column}
.err-row{display:grid;grid-template-columns:auto 1fr auto auto;gap:14px;align-items:center;padding:14px 2px;border-bottom:1px solid #F0EBE1;font-size:13px}
.err-row:last-child{border-bottom:none}
.err-badge{padding:3px 9px;border-radius:7px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.err-badge.warn{background:var(--warn-soft);color:var(--warn)}
.err-badge.ok{background:var(--success-soft);color:var(--up)}
.err-msg{color:var(--text)}
.err-when{color:var(--muted-2);font-variant-numeric:tabular-nums}
.err-state{font-size:12px;font-weight:600;color:var(--muted)}
.err-state.resolved{color:var(--success)}
.ok-row .err-msg{color:var(--muted)}

/* =========================================================
   LOGS
   ========================================================= */
.logs-table td .who{display:flex;align-items:center;gap:10px}
.who-av{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:var(--ink-soft);color:var(--text);font-weight:600;font-size:11px;flex:0 0 28px}
.who-name{font-weight:600}
.who-role{font-size:11px;color:var(--muted-2)}
.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600}
.badge.success{background:var(--success-soft);color:var(--up)}
.badge.info{background:var(--info-soft);color:var(--info)}
.badge.warn{background:var(--warn-soft);color:var(--warn)}
.log-action{color:var(--text);white-space:normal;width:34%}
.la-act{font-size:clamp(16px,1.35vw,20px);font-weight:700;line-height:1.32;color:var(--text)}
.la-act b{font-weight:800}
.la-meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:5px;font-size:13.5px;color:var(--muted)}
.la-who{font-weight:600;color:var(--muted-2)}
.la-dot{color:var(--muted-2)}
.la-when{font-variant-numeric:tabular-nums}
.acol-mod{white-space:nowrap;vertical-align:middle}
.acol-actions{display:flex;gap:4px;justify-content:flex-end}
@media (hover:hover){ .log-row .acol-actions{opacity:0;transition:opacity .15s var(--ease)} .log-row:hover .acol-actions,.log-row:focus-within .acol-actions{opacity:1} }
.mod-chip{display:inline-block;padding:3px 10px;border-radius:7px;background:var(--ink-soft);color:var(--muted);font-size:12px;font-weight:600}
.mono-ip{font-family:ui-monospace,'SF Mono',Menlo,Consolas,monospace;font-size:12.5px;color:var(--muted)}

/* =========================================================
   SETTINGS
   ========================================================= */
.settings-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
.set-col{display:flex;flex-direction:column;gap:18px}
.set-card{padding:24px}
.logo-drop{display:flex;align-items:center;gap:16px;padding:16px;border:1px dashed var(--border-strong);border-radius:14px;background:var(--card);margin-bottom:20px}
.logo-preview{width:52px;height:52px;border-radius:13px;background:linear-gradient(145deg,#E9DEC2,#C8A24D);color:var(--gold-deep);display:grid;place-items:center;font-weight:700;font-size:16px;box-shadow:var(--sh-xs)}
.ld-title{font-weight:600;font-size:14px;margin-bottom:2px}
.logo-drop .btn{margin-left:auto}
.field{margin-bottom:18px}
.field:last-child{margin-bottom:0}
.field label{display:block;font-size:12.5px;font-weight:600;color:var(--text);margin-bottom:8px}
.field input,.field textarea,.select-wrap select{width:100%;padding:11px 14px;border-radius:12px;border:1px solid var(--border);background:var(--card);font-size:13.5px;color:var(--text);box-shadow:var(--sh-xs);transition:.18s var(--ease);resize:vertical}
.field input:focus,.field textarea:focus,.select-wrap select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.select-wrap{position:relative}
.select-wrap select{appearance:none;-webkit-appearance:none;padding-right:38px;cursor:pointer}
.select-wrap svg{position:absolute;right:13px;top:50%;transform:translateY(-50%);width:17px;height:17px;fill:none;stroke:var(--muted);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
.select-wrap.sm select{padding:9px 34px 9px 12px;font-size:13px}
.theme-picker{display:flex;gap:10px}
.theme-opt{display:flex;align-items:center;gap:9px;padding:10px 14px;border:1px solid var(--border);border-radius:12px;font-size:13px;font-weight:600;color:var(--text);transition:.16s;background:var(--card)}
.theme-opt:not(:disabled):hover{border-color:var(--border-strong)}
.theme-opt.is-active{border-color:var(--gold);background:var(--gold-soft);color:var(--text)}
.theme-opt:disabled{opacity:.55;cursor:not-allowed}
.theme-opt em{font-style:normal;font-size:10px;background:var(--ink-soft);padding:2px 6px;border-radius:6px;color:var(--muted)}
.tp-swatch{width:18px;height:18px;border-radius:6px;border:1px solid var(--border)}
.tp-swatch.light{background:#fff}
.tp-swatch.soft{background:var(--surface-2)}
.swatches{display:flex;gap:10px}
.swatch{width:34px;height:34px;border-radius:10px;background:var(--sw);border:2px solid transparent;box-shadow:var(--sh-xs);transition:.16s}
.swatch:hover{transform:scale(1.06)}
.swatch.is-active{border-color:#fff;box-shadow:0 0 0 2px var(--sw)}
.settings-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}

/* =========================================================
   404
   ========================================================= */
.notfound{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:70px 20px;min-height:52vh}
.nf-code{font-family:var(--serif);font-size:96px;font-weight:600;line-height:1;background:linear-gradient(180deg,var(--gold),var(--gold-deep));-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:-.02em}
.notfound h2{font-size:22px;font-weight:700;margin:18px 0 10px}
.notfound p{font-size:14px;color:var(--muted);line-height:1.6;margin-bottom:24px}

/* =========================================================
   TV
   ========================================================= */
.tv{position:fixed;inset:0;z-index:100;background:radial-gradient(760px 460px at 82% -6%,var(--accent-glow),transparent 62%),radial-gradient(1200px 700px at 70% -10%,#1c2230,#0B0E15 60%);color:#fff;display:flex;flex-direction:column;animation:viewIn .5s var(--ease)}
.tv-inner{flex:1;display:flex;flex-direction:column;padding:clamp(24px,4vw,54px);max-width:1600px;margin:0 auto;width:100%}
.tv-head{display:flex;align-items:center;justify-content:flex-end;margin-bottom:clamp(20px,3vw,40px)}
.tv-clock{text-align:right;line-height:1.1}
.tv-clock #tvTime{display:block;font-size:clamp(30px,3.6vw,52px);font-weight:700;font-variant-numeric:tabular-nums}
.tv-clock #tvDate{color:#9CA6B8;font-size:clamp(12px,1.1vw,16px)}
.tv-grid{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:clamp(12px,1.3vw,20px);align-content:center}
.tv-foot{display:flex;align-items:center;justify-content:space-between;margin-top:clamp(20px,3vw,40px);color:#9CA6B8;font-size:clamp(13px,1.2vw,17px)}
.tv-live{display:inline-flex;align-items:center;gap:9px;font-weight:600;color:#CBD3E0}
.tv-contact{font-weight:600;color:#CBD3E0}
.tv-controls{position:fixed;top:22px;right:26px;display:flex;gap:10px;z-index:101}
.tv-btn{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:#fff;transition:.18s var(--ease)}
.tv-btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.tv-btn:hover{background:rgba(255,255,255,.15);transform:translateY(-1px)}
.live-dot{width:7px;height:7px;border-radius:50%;background:var(--success);position:relative;display:inline-block}
.live-dot::after{content:"";position:absolute;inset:-4px;border-radius:50%;background:var(--success);opacity:.35;animation:ping 1.8s var(--ease) infinite}

/* =========================================================
   TOAST / SCRIM
   ========================================================= */
.toast{position:fixed;bottom:26px;left:50%;transform:translateX(-50%) translateY(20px);background:#2A231C;color:#fff;padding:13px 20px;border-radius:13px;font-size:13.5px;font-weight:500;box-shadow:var(--sh-lg);z-index:200;opacity:0;transition:.32s var(--ease);display:flex;align-items:center;gap:10px}
.toast::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--success)}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
.scrim{position:fixed;inset:0;background:rgba(42,35,28,.38);z-index:35;animation:fadeIn .2s}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}

/* =========================================================
   ANIMATIONS
   ========================================================= */
@keyframes pulse{0%,100%{box-shadow:0 0 0 3px var(--success-soft)}50%{box-shadow:0 0 0 5px rgba(22,163,74,.06)}}
@keyframes ping{0%{transform:scale(.6);opacity:.5}80%,100%{transform:scale(1.7);opacity:0}}
@keyframes spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width:1280px){
  .status-pills{display:none}
}
@media (max-width:1160px){
  .gold-grid{grid-template-columns:repeat(2,1fr)}
  .status-row{grid-template-columns:repeat(3,1fr)}
  .api-grid,.api-grid.two,.settings-layout{grid-template-columns:1fr}
  .topbar-search{flex-basis:220px}
}
@media (max-width:980px){
  .topbar-search{display:none}
}
@media (max-width:900px){
  .sidebar{position:fixed;left:0;top:0;transform:translateX(-100%);box-shadow:var(--sh-lg);z-index:120}
  .app.nav-open .sidebar{transform:none}
  .app.sidebar-collapsed .sidebar{width:var(--sidebar-w);flex-basis:var(--sidebar-w);padding:22px 16px 16px}
  .app.sidebar-collapsed .brand-text,.app.sidebar-collapsed .nav-tx,.app.sidebar-collapsed .nav-label,.app.sidebar-collapsed .store-meta,.app.sidebar-collapsed .store-online{opacity:1;width:auto;position:static}
  .app.sidebar-collapsed .nav-item{justify-content:flex-start}
  .content{padding:20px}
  .topbar{padding:12px 18px}
  .clock{display:none}
  .app-foot{flex-wrap:wrap}
}
@media (max-width:640px){
  .status-row{grid-template-columns:repeat(2,1fr)}
  .gold-grid{grid-template-columns:1fr}
  .profit-grid{grid-template-columns:1fr}
  .pc-inputs,.pc-prev-rows,.field-row{grid-template-columns:1fr}
  .tv-grid{grid-template-columns:1fr}
  .topbar-title p{display:none}
  .notif-dd{width:min(340px,calc(100vw - 32px))}
  /* mobil taşma sertleştirmesi (final QA) */
  .settings-layout{grid-template-columns:minmax(0,1fr)}
  .set-col,.set-card{min-width:0}
  .hc-meta{flex-wrap:wrap}
  .hc-meta .select-wrap.sm,.hc-meta #heroProduct{width:100%}
  .ec-tools{width:100%}
  .ec-tools .search{max-width:none;flex:1 1 100%}
  .ec-tools .segmented{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .ec-tools .segmented .seg{flex:0 0 auto}
  /* 320–412px sertleştirme: segmented filtreler kaydırılabilir, kartlar/araç çubukları küçülür */
  .segmented:not(.wide){max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .segmented:not(.wide) .seg{flex:0 0 auto}
  .toolbar-right{margin-left:0;width:100%;flex-wrap:wrap}
  .toolbar-right .search{flex:1 1 100%;max-width:none}
  .hc-head,.hc-title{flex-wrap:wrap;min-width:0}
  .hc-name,.hc-price{min-width:0}
}

/* =========================================================
   4K / büyük TV — orantılı ölçek (px-tabanlı arayüzü büyütür,
   uzaktan okunur; 2560 masaüstü monitörü native kalır)
   ========================================================= */
@media (min-width:3000px){ :root{zoom:1.2} .tv{zoom:.8333} }   /* .tv (fixed tam-ekran board) kendi ölçeğini korur */
@media (min-width:3600px){ :root{zoom:1.4} .tv{zoom:.7143} }

/* =========================================================
   BEYAZ ETİKET · logo taşıyıcıları
   ========================================================= */
.js-logo{overflow:hidden}
.js-logo>svg{width:100%;height:100%;display:block;object-fit:cover}
.js-logo>img{width:100%;height:100%;display:block;object-fit:contain}  /* logo ASLA kırpılmaz/gerilmez */

/* topbar marka (yalnız mobil — masaüstünde sidebar gösterir) */
.topbar-brand{display:none;align-items:center;gap:10px;min-width:0}
.tbb-logo{width:32px;height:32px;border-radius:9px;flex:0 0 32px;box-shadow:var(--sh-xs)}
.tbb-name{font-weight:700;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* profil menüsü mağaza satırı */
.pf-store{display:flex;align-items:center;gap:9px;padding:11px 16px;border-top:1px solid var(--border);font-size:12.5px;font-weight:600;color:var(--text)}
.pf-store-logo{width:24px;height:24px;border-radius:7px;flex:0 0 24px;box-shadow:var(--sh-xs)}

/* TV alt bilgi */
.tv-info{display:flex;align-items:center;gap:10px;font-weight:600;color:#CBD3E0}
.tv-sep{color:#5b6472}

/* =========================================================
   GİRİŞ (LOGIN)
   ========================================================= */
.login{position:fixed;inset:0;z-index:250;display:grid;grid-template-columns:1.04fr .96fr;background:var(--card);animation:viewIn .5s var(--ease)}
.login.done{opacity:0;visibility:hidden;transition:opacity .5s var(--ease),visibility .5s}
.login-art{position:relative;overflow:hidden;background:linear-gradient(150deg,#151019,#1b1320);color:#fff;padding:clamp(32px,4vw,64px);display:flex;flex-direction:column;justify-content:center}
.la-blob{position:absolute;border-radius:50%;filter:blur(64px)}
.la-blob.b1{width:440px;height:440px;background:var(--accent);opacity:.5;top:-140px;right:-90px}
.la-blob.b2{width:380px;height:380px;background:var(--gold);opacity:.34;bottom:-150px;left:-110px}
.la-inner{position:relative;z-index:2;max-width:470px}
.la-badge{width:62px;height:62px;border-radius:17px;margin-bottom:30px;box-shadow:var(--sh-lg)}
.la-title{font-family:var(--serif);font-size:clamp(30px,3.4vw,46px);font-weight:600;line-height:1.08;letter-spacing:-.02em}
.la-sub{color:#C7CAD6;font-size:15px;margin-top:18px;line-height:1.6;max-width:410px}
.la-feats{list-style:none;padding:0;margin:30px 0 0;display:flex;flex-direction:column;gap:13px}
.la-feats li{display:flex;align-items:center;gap:12px;font-size:14.5px;color:#E3E5EC}
.lf-ic{width:25px;height:25px;border-radius:50%;background:rgba(255,255,255,.1);display:grid;place-items:center;flex:0 0 25px}
.lf-ic svg{width:14px;height:14px;fill:none;stroke:var(--gold);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.la-foot{position:absolute;bottom:clamp(20px,3vw,40px);left:clamp(32px,4vw,64px);color:#8A8FA0;font-size:13px;z-index:2}
.login-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px;position:relative}
.lp-card{width:100%;max-width:380px;animation:splashUp .6s var(--ease)}
.lp-logo{width:56px;height:56px;border-radius:15px;box-shadow:var(--sh-md);margin-bottom:20px}
.lp-store{font-size:13px;font-weight:600;color:var(--gold-deep);letter-spacing:.02em}
.lp-title{font-family:var(--serif);font-size:30px;font-weight:600;margin:6px 0 6px;letter-spacing:-.01em}
.lp-sub{font-size:14px;color:var(--muted);margin-bottom:26px}
.lp-form .field{margin-bottom:16px}
.pw-wrap{position:relative}
.pw-wrap input{padding-right:44px}
.pw-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:32px;height:32px;display:grid;place-items:center;color:var(--muted-2);border-radius:8px}
.pw-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pw-toggle:hover{color:var(--text)}
.lp-row{display:flex;align-items:center;justify-content:space-between;margin:4px 0 22px}
.chk{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text);cursor:pointer;user-select:none}
.chk input{position:absolute;opacity:0;width:0;height:0}
.chk span{width:18px;height:18px;border-radius:6px;border:1px solid var(--border-strong);display:grid;place-items:center;transition:.15s;background:var(--card)}
.chk input:checked+span{background:var(--gold);border-color:var(--gold)}
.chk input:checked+span::after{content:"";width:9px;height:5px;border-left:2px solid var(--gold-ink);border-bottom:2px solid var(--gold-ink);transform:rotate(-45deg) translateY(-1px)}
.lp-link{font-size:13px;color:var(--gold-deep);font-weight:600}
.lp-link:hover{text-decoration:underline}
.lp-btn{width:100%;padding:12px;font-size:14px;margin-top:4px}
.lp-note{text-align:center;font-size:12px;color:var(--muted-2);margin-top:18px}
.lp-err{text-align:center;font-size:13px;font-weight:600;color:var(--danger);margin:2px 0 0}
.lp-card.shake{animation:lpShake .4s}
@keyframes lpShake{0%,100%{transform:translateX(0)}20%,60%{transform:translateX(-7px)}40%,80%{transform:translateX(7px)}}
.lp-brandline{position:absolute;bottom:24px;font-size:12px;color:var(--muted-2)}

/* ============ 🔐 PREMIUM GİRİŞ EKRANI (v170) ============ */
/* SOL VİTRİN: altın dokusu + ışık süzülmesi + canlı fiyat şeridi + saat */
.login-art{display:flex;flex-direction:column;justify-content:space-between;gap:clamp(16px,2.4vh,34px);
  padding:clamp(24px,3.2vw,54px);overflow:hidden}   /* 🔴 dikey taşma yok: boşluklar ekran yüksekliğine göre */
.la-grain{position:absolute;inset:0;z-index:1;opacity:.5;pointer-events:none;
  background-image:radial-gradient(rgba(200,162,77,.16) 1px,transparent 1px);background-size:22px 22px}
.la-shine{position:absolute;top:-40%;left:-30%;width:60%;height:180%;z-index:1;pointer-events:none;
  background:linear-gradient(105deg,transparent,rgba(255,255,255,.55),transparent);transform:rotate(8deg);
  animation:laShine 9s var(--ease) infinite}
@keyframes laShine{0%{left:-40%;opacity:0}12%{opacity:.9}50%{left:110%;opacity:0}100%{left:110%;opacity:0}}
.la-top{position:relative;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.la-clock{text-align:right;line-height:1.25}
.la-clock b{display:block;font-family:var(--serif);font-size:clamp(28px,2.6vw,38px);font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}
.la-clock span{font-size:12px;color:var(--muted-2)}
.la-inner{position:relative;z-index:2;max-width:560px}
.la-kicker{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  color:var(--gold-deep);background:rgba(255,255,255,.62);border:1px solid var(--gold-line);border-radius:999px;padding:7px 15px;margin-bottom:clamp(12px,2vh,22px);backdrop-filter:blur(6px)}
.la-title{font-size:clamp(26px,3vw,44px)}
.la-title em{font-style:normal;color:var(--gold-deep)}
/* canlı fiyat kartları */
.la-prices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:clamp(16px,3vh,34px);max-width:520px}
.la-price{background:rgba(255,255,255,.66);border:1px solid rgba(200,162,77,.28);border-radius:16px;padding:14px 16px;
  backdrop-filter:blur(10px);box-shadow:0 8px 26px rgba(120,90,30,.09);animation:cardIn .6s var(--ease) backwards}
.la-price:nth-child(2){animation-delay:.08s} .la-price:nth-child(3){animation-delay:.16s}
.lap-n{display:block;font-size:10.5px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--muted-2)}
.lap-v{display:block;font-size:clamp(17px,1.5vw,21px);font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;margin-top:5px}
.lap-v i{font-style:normal;font-size:12px;color:var(--muted-2);margin-left:2px}
.lap-t{display:inline-block;margin-top:6px;font-size:10.5px;font-weight:800;border-radius:999px;padding:2px 8px}
.lap-t.up{color:#15803D;background:#F0FDF4} .lap-t.down{color:#B91C1C;background:#FEF2F2}
.lap-t.flat{color:var(--muted-2);background:var(--bg)}
.la-foot{position:relative;bottom:auto;left:auto;display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.la-foot-sep{opacity:.5}

/* SAĞ FORM: rozet, ikonlu girişler, caps lock, güvenli oturum, yükleniyor */
.lp-badge{display:inline-flex;align-items:center;gap:7px;font-size:10.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;
  color:var(--gold-deep);background:var(--gold-soft);border:1px solid var(--gold-line);border-radius:999px;padding:6px 13px;margin-bottom:14px}
.lp-badge svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2}
.lp-input{position:relative;display:flex;align-items:center}
.lp-input .lp-ic{position:absolute;left:14px;display:flex;pointer-events:none}
.lp-input .lp-ic svg{width:16px;height:16px;fill:none;stroke:var(--muted-2);stroke-width:1.7}
.lp-input input{width:100%;padding:13px 16px 13px 42px;border:1px solid var(--border);border-radius:13px;background:var(--card);font-size:14.5px;transition:.16s var(--ease)}
.lp-input input:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft);outline:none}
.lp-input .pw-toggle{position:absolute;right:8px;background:transparent;border:none;cursor:pointer;padding:7px;border-radius:9px;color:var(--muted-2)}
.lp-input .pw-toggle:hover{color:var(--text);background:var(--bg)}
.lp-input .pw-toggle svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7}
.lp-caps{margin:8px 2px 0;font-size:11.5px;font-weight:700;color:#7a5200;background:#FFF6E3;border:1px solid #EFD9A6;border-radius:9px;padding:6px 11px;display:inline-block}
.lp-secure{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;color:var(--muted-2)}
.lp-secure svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.8}
.lp-btn{position:relative;padding:14px;font-size:14.5px;font-weight:700;letter-spacing:.02em;border-radius:13px}
.lp-btn .lp-spin{display:none;width:15px;height:15px;border-radius:50%;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;animation:devspin .8s linear infinite;margin-left:9px;vertical-align:-2px}
.lp-btn.is-loading .lp-spin{display:inline-block}
.lp-btn.is-loading{opacity:.9;cursor:progress}
.lp-btn:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 10px 26px rgba(200,162,77,.32)}

@media (max-width:1100px){ .la-prices{gap:9px} .la-price{padding:11px 12px} }
/* Kısa ekranlarda (dizüstü / küçük pencere) fiyat kartları taşmasın → gizle */
@media (max-height:700px){ .la-prices{display:none} .la-clock b{font-size:26px} }
@media (max-height:600px){ .la-kicker{display:none} }
@media (max-width:860px){.login{grid-template-columns:1fr}.login-art{display:none}}
@media (prefers-reduced-motion:reduce){ .la-shine{animation:none;opacity:0} }

/* =========================================================
   AYARLAR · marka kontrolleri
   ========================================================= */
.logo-drop .ld-body{flex:1;min-width:0}
.ld-actions{margin-left:auto;display:flex;gap:8px}
.ld-actions .btn{margin-left:0}
.color-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.color-chip{position:relative;width:38px;height:38px;border-radius:11px;overflow:hidden;border:1px solid var(--border);cursor:pointer;box-shadow:var(--sh-xs);flex:0 0 38px}
.color-chip input[type=color]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;border:none;padding:0}
.color-chip span{position:absolute;inset:0;border-radius:inherit;pointer-events:none}
.cpreset{width:26px;height:26px;border-radius:8px;background:var(--c);border:2px solid transparent;box-shadow:var(--sh-xs);transition:.14s var(--ease)}
.cpreset:hover{transform:scale(1.08)}
.cpreset.is-active{border-color:#fff;box-shadow:0 0 0 2px var(--c)}
.color-hex{margin-left:auto;font-family:ui-monospace,'SF Mono',Menlo,Consolas,monospace;font-size:12.5px;color:var(--muted);letter-spacing:.02em}
.favicon-row{display:flex;align-items:center;gap:14px}
.favicon-prev{width:40px;height:40px;border-radius:10px;flex:0 0 40px;box-shadow:var(--sh-xs);border:1px solid var(--border)}

@media (max-width:900px){
  .topbar-brand{display:flex}
  .topbar-title{display:none}
}
@media (max-width:520px){
  .tbb-name{display:none}
}

/* =========================================================
   2026 PREMIUM PARLATMA KATMANI
   ========================================================= */

/* editoryal kimlik — isimler serif, sayılar tabular sans */
.gc-title,.hc-name,.hs-head h3{font-family:var(--serif);letter-spacing:-.01em}

/* ---- Panel kahraman bandı (chart + piyasa nabzı) ---- */
.hero{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(0,1fr);gap:18px;margin-bottom:18px}
.hero>*{min-width:0}
.hero-chart{padding:22px 24px 18px;box-shadow:var(--sh-soft)}
.hc-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap}
.hc-title{display:flex;align-items:center;gap:14px}
.hc-name{font-size:19px;font-weight:600}
.hc-name small{font-family:var(--font);font-size:12px;color:var(--muted-2);font-weight:500;margin-left:6px;letter-spacing:0}
.hc-price{display:flex;align-items:baseline;gap:12px;margin-top:7px}
.hc-price .big{font-size:29px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.hc-price .big .cur{font-size:15px;color:var(--muted);font-weight:600;margin-left:3px}
.hc-meta{display:flex;align-items:flex-start;gap:22px}
.hc-hl{font-size:11.5px;color:var(--muted);white-space:nowrap}
.hc-hl b{display:block;font-size:14px;color:var(--text);font-weight:600;font-variant-numeric:tabular-nums;margin-top:4px}
#chFill .s0{stop-color:var(--gold);stop-opacity:.20}
#chFill .s1{stop-color:var(--gold);stop-opacity:0}
.hc-sub-tf{display:flex;justify-content:flex-end;margin-top:10px}
.segmented.sm{padding:2px}
.segmented.sm .seg{padding:5px 12px;font-size:12px}
.hero-prod{min-width:150px}
.hc-plot-wrap{position:relative;margin-top:14px}
.hc-plot{width:100%;height:auto;display:block;overflow:visible;touch-action:none}
.ch-grid{stroke:#F1ECE2;stroke-width:1}
.ch-glabel,.ch-xlabel{fill:var(--muted-2);font-size:11px;font-family:var(--font)}
.ch-line{fill:none;stroke:var(--gold);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;animation:chDraw 1.15s var(--ease) forwards}
@keyframes chDraw{to{stroke-dashoffset:0}}
.ch-dot-halo{fill:var(--gold);opacity:.16;animation:chHalo 2.4s var(--ease) infinite}
@keyframes chHalo{0%,100%{opacity:.16;r:7}50%{opacity:.05;r:10}}
.ch-dot{fill:var(--gold);stroke:var(--card);stroke-width:2}
.ch-cross{stroke:var(--gold-line);stroke-width:1;stroke-dasharray:3 4}
.ch-hoverdot{fill:var(--card);stroke:var(--gold);stroke-width:2.5}
.hc-tooltip{position:absolute;transform:translate(-50%,-115%);background:#2A231C;color:#fff;padding:7px 11px;border-radius:10px;font-size:12.5px;font-weight:600;font-variant-numeric:tabular-nums;pointer-events:none;white-space:nowrap;box-shadow:var(--sh-md);opacity:0;transition:opacity .12s;z-index:4}
.hc-tooltip .tt-t{display:block;color:#B8B0A2;font-weight:500;font-size:10.5px;margin-top:1px}

.hero-side{padding:22px;display:flex;flex-direction:column;box-shadow:var(--sh-soft)}
.hs-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.hs-head h3{font-size:17px;font-weight:600}
.hs-badge{font-size:11px;font-weight:600;color:var(--gold-deep);background:var(--gold-soft);padding:4px 10px;border-radius:999px}
.pulse-list{display:flex;flex-direction:column;flex:1}
.pulse-item{display:flex;align-items:center;gap:12px;padding:13px 2px;border-bottom:1px solid #F0EBE1}
.pulse-item:last-child{border-bottom:none}
.pi-ic{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;flex:0 0 34px}
.pi-ic svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.pi-ic.up{background:var(--success-soft);color:var(--success)}
.pi-ic.down{background:var(--danger-soft);color:var(--danger)}
.pi-ic.gold{background:var(--gold-soft);color:var(--gold-deep)}
.pi-ic.info{background:var(--ink-soft);color:var(--muted)}
.pi-body{min-width:0}
.pi-k{font-size:12px;color:var(--muted)}
.pi-v{font-size:13.5px;font-weight:600;margin-top:2px}
.pi-badge{margin-left:auto;font-weight:700;font-size:14px;font-variant-numeric:tabular-nums;white-space:nowrap}
.pi-badge.up{color:var(--success)} .pi-badge.down{color:var(--danger)} .pi-badge.gold{color:var(--gold-deep)}
.hs-foot{margin-top:14px;padding-top:14px;border-top:1px solid var(--border);font-size:12px;color:var(--muted-2);display:flex;align-items:center;gap:8px}

/* ---- Sistem durum çubuğu (5 kart yerine tek zarif şerit) ---- */
.sys-bar{display:flex;align-items:stretch;flex-wrap:wrap;background:var(--card);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--sh-sm);padding:2px 4px;margin-bottom:28px}
.sys-seg{display:flex;align-items:center;gap:10px;padding:12px 20px;position:relative}
.sys-seg:not(:last-child)::after{content:"";position:absolute;right:0;top:50%;transform:translateY(-50%);height:24px;width:1px;background:var(--border)}
.sys-dot{width:8px;height:8px;border-radius:50%;flex:0 0 8px}
.sys-dot.ok{background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}
.sys-dot.gold{background:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}
.sys-dot.muted{background:var(--muted-2);box-shadow:0 0 0 3px var(--ink-soft)}
.sys-k{font-size:12px;color:var(--muted)}
.sys-v{font-size:13px;font-weight:600;font-variant-numeric:tabular-nums}
.sys-live{margin-left:auto;display:flex;align-items:center;gap:7px;padding:0 18px;font-size:12px;font-weight:600;color:var(--up)}

/* ---- kart & tablo rafinesi ---- */
.gold-card{padding:19px 19px 15px}
.gc-title{font-size:15px}
.section-head{margin:30px 0 18px}
.table thead th{padding:15px 20px}
.table tbody td{padding:16px 20px}
.table tbody tr:hover{background:linear-gradient(90deg,var(--gold-soft),transparent 60%)}
.td-store{letter-spacing:-.01em}

/* ---- zarif boş durumlar ---- */
.empty{padding:56px 44px}
.empty-ic{width:54px;height:54px;border-radius:15px;background:var(--ink-soft);color:var(--muted-2);display:grid;place-items:center;margin:0 auto 16px}
.empty-ic svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.empty h4{font-size:15px;font-weight:600;color:var(--text);margin-bottom:6px}
.empty p{font-size:13px;color:var(--muted)}

@keyframes tvUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

@media (max-width:1160px){ .hero{grid-template-columns:1fr} }
@media (max-width:640px){ .hc-meta{gap:14px} .sys-seg{padding:10px 14px} }

/* =========================================================
   SUNUM DENEYİMİ (premium sales demo)
   ========================================================= */

/* ---- ortam arka planı (altın parçacıklar + yumuşak ışık) ---- */
#ambient{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
#ambient::before{content:"";position:absolute;top:-18%;right:-8%;width:52vw;height:52vw;border-radius:50%;background:radial-gradient(circle,rgba(200,162,77,.10),transparent 62%);filter:blur(20px)}
#ambient::after{content:"";position:absolute;bottom:-22%;left:-12%;width:46vw;height:46vw;border-radius:50%;background:radial-gradient(circle,rgba(122,30,58,.05),transparent 62%);filter:blur(24px)}
#ambientCanvas{position:absolute;inset:0;width:100%;height:100%}

/* ---- canlı olay bildirimleri (sağ üst) ---- */
.live-feed{position:fixed;top:76px;right:24px;z-index:210;display:flex;flex-direction:column;gap:10px;pointer-events:none;width:308px;max-width:calc(100vw - 32px)}
.live-toast{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.96);border:1px solid var(--border);border-radius:14px;box-shadow:var(--sh-lg);padding:12px 14px;transform:translateX(120%);opacity:0;transition:transform .45s var(--ease),opacity .45s var(--ease)}
.live-toast.show{transform:none;opacity:1}
.lt-ic{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;flex:0 0 34px}
.lt-ic svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.lt-ic.up{background:var(--success-soft);color:var(--success)}
.lt-ic.system{background:var(--info-soft);color:var(--info)}
.lt-ic.info,.lt-ic.gold{background:var(--gold-soft);color:var(--gold-deep)}
.lt-tx{font-size:13px;font-weight:500;color:var(--text);line-height:1.35}
.lt-when{font-size:11px;color:var(--muted-2);margin-top:2px}

@media (max-width:560px){
  .live-feed{top:70px;right:14px}
}

/* =========================================================
   SICAK IVORY RAFİNE (final) — ferahlık + açık TV + giriş görseli
   ========================================================= */
.content{padding:clamp(22px,2vw,40px);max-width:3200px;margin-inline:auto}
.section-head{margin:34px 0 18px}
.gold-grid{gap:18px}
.hero{gap:20px}
@media (max-width:900px){ .content{padding:20px} }

/* ---- TV EKRANI · sıcak açık lüks tema (koyu KALDIRILDI) ---- */
.tv{background:radial-gradient(920px 540px at 82% -8%,rgba(200,162,77,.13),transparent 60%),linear-gradient(168deg,#FDFCF9 0%,#F7F1E7 54%,#F2E8DA 100%);color:var(--text)}
.tv-clock #tvTime{color:var(--text)}
.tv-clock #tvDate{color:var(--muted)}
.tv-trend.up{color:var(--success)}
.tv-trend.down{color:var(--danger)}
.tv-foot{color:var(--muted)}
.tv-live{color:var(--text)}
.tv-info,.tv-contact{color:var(--text)}
.tv-sep{color:var(--muted-2)}
.tv-controls .tv-btn{background:var(--card);border:1px solid var(--border);color:var(--muted);box-shadow:var(--sh-sm)}
.tv-controls .tv-btn:hover{color:var(--text);border-color:var(--border-strong);background:var(--surface)}

/* ---- GİRİŞ görseli · sıcak açık panel ---- */
.login-art{background:linear-gradient(158deg,#FBF6EE 0%,#F5EAD9 55%,#EFE1CC 100%);color:var(--text)}
.la-blob.b1{background:var(--gold);opacity:.18}
.la-blob.b2{background:var(--accent);opacity:.10}
.la-title{color:var(--text)}
.la-sub{color:var(--muted)}
.la-feats li{color:var(--muted)}
.lf-ic{background:var(--gold-soft)}
.lf-ic svg{stroke:var(--gold-deep)}
.la-foot{color:var(--muted-2)}

/* =========================================================
   RESMİ LOGO — premium taşıyıcılar (contain · asla kırpılmaz)
   ========================================================= */
/* sidebar markası = görsel çıpa */
.brand{display:flex;flex-direction:column;align-items:center;gap:9px;padding:6px 6px 20px;overflow:hidden}
.brand-plate{width:100%;max-width:172px;aspect-ratio:363/200;background:none;border:none;box-shadow:none;padding:0}   /* çerçevesiz — sadece logo */
.brand-tag{font-size:10px;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--gold-deep);white-space:nowrap}
.app.sidebar-collapsed .brand-plate{max-width:52px;padding:0}
.app.sidebar-collapsed .brand-tag{display:none}

/* splash / yükleme ekranı — sidebar .brand-plate dili: ÇERÇEVESİZ, sadece büyük wordmark */
.splash-logo{width:min(264px,64vw);aspect-ratio:363/200;background:none;border:none;box-shadow:none;padding:0;margin:0 auto;position:relative}

/* giriş (login) */
.la-badge{width:188px;height:auto;aspect-ratio:363/200;border-radius:16px;background:linear-gradient(180deg,#FFFFFF,#FBF3E6);border:1px solid rgba(200,162,77,.26);box-shadow:var(--sh-md);padding:16px 24px;margin-bottom:30px}
.lp-logo{width:196px;height:auto;aspect-ratio:363/200;border-radius:16px;background:linear-gradient(180deg,#FFFFFF,#FBF6EC);border:1px solid var(--border);box-shadow:var(--sh-sm);padding:16px 24px;margin-bottom:22px}

/* hata sayfaları — 404 & beklenmeyen */
.nf-logo{width:196px;aspect-ratio:363/200;margin:0 auto 10px;padding:6px 14px}
.fatal-logo{width:196px;aspect-ratio:363/200;margin:0 auto 26px;padding:12px 20px;border-radius:16px;background:linear-gradient(180deg,#FFFFFF,#FBF6EC);border:1px solid var(--border);box-shadow:var(--sh-sm)}
.fatal-logo img{width:100%;height:100%;object-fit:contain;display:block}

/* =========================================================
   TV EKRANI · yeniden tasarım (dijital showroom) + duyuru şeridi
   ========================================================= */
.tv{display:flex;flex-direction:column;background:radial-gradient(1100px 640px at 78% -8%,rgba(200,162,77,.10),transparent 60%),linear-gradient(168deg,#FDFCF9 0%,#F8F2E9 55%,#F4ECDF 100%)}
.tv::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background-image:repeating-linear-gradient(45deg,var(--gold) 0 1px,transparent 1px 32px),repeating-linear-gradient(-45deg,var(--gold) 0 1px,transparent 1px 32px);opacity:.018}
/* 🔴 max-width 2200 → 2900: 4K vitrin TV'sinde iki yanda 720'şer px boş kalıyordu (fiyatlar da küçük duruyordu) */
.tv-inner{position:relative;z-index:1;flex:1;min-height:0;display:flex;flex-direction:column;padding:clamp(24px,3vw,48px) clamp(24px,3.4vw,60px) clamp(14px,1.6vw,26px);max-width:2900px;margin-inline:auto;width:100%}

/* ---- hafif 3D lüks dekor (altın küreler + ince halkalar) ---- */
.tv-deco{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.tv-orb{position:absolute;border-radius:50%;background:radial-gradient(circle at 34% 30%,#fff7e2 0%,#e7c86f 44%,#c8a24d 74%,rgba(200,162,77,0) 100%);filter:blur(2px);will-change:transform}
.tv-orb.o1{width:clamp(96px,9vw,176px);aspect-ratio:1;top:-3%;right:6%;opacity:.55;animation:orbFloat 26s ease-in-out infinite}
.tv-orb.o2{width:clamp(56px,5vw,104px);aspect-ratio:1;top:9%;right:1.5%;opacity:.4;animation:orbFloat 33s ease-in-out infinite reverse}
.tv-orb.o3{width:clamp(38px,3.4vw,66px);aspect-ratio:1;top:1%;right:17%;opacity:.32;animation:orbFloat 30s ease-in-out infinite}
.tv-orb.o4{width:clamp(120px,12vw,230px);aspect-ratio:1;bottom:-6%;left:-3%;opacity:.22;filter:blur(4px);animation:orbFloat 40s ease-in-out infinite}
.tv-orb.o5{width:clamp(30px,2.6vw,52px);aspect-ratio:1;bottom:12%;right:22%;opacity:.2;animation:orbFloat 24s ease-in-out infinite reverse}
.tv-ring{position:absolute;opacity:.07}
.tv-ring circle{fill:none;stroke:var(--gold);stroke-width:.8}
.tv-ring.r1{width:clamp(260px,26vw,460px);aspect-ratio:1;top:-12%;right:4%;animation:spin 100s linear infinite}
.tv-ring.r2{width:clamp(200px,20vw,360px);aspect-ratio:1;bottom:-8%;left:6%;opacity:.05;animation:spin 140s linear infinite reverse}
@keyframes orbFloat{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-16px,0)}}

/* ---- canlı fiyat bildirimleri (cam efekti, sağ üst) ---- */
.tv-notify{position:absolute;top:clamp(74px,8vh,104px);right:clamp(20px,2.4vw,44px);z-index:3;display:flex;flex-direction:column;gap:10px;align-items:flex-end;pointer-events:none;width:min(320px,40vw)}
.tvn{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.68);backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);border:1px solid rgba(255,255,255,.7);border-radius:15px;box-shadow:0 12px 34px rgba(72,56,34,.14);padding:11px 15px;transform:translateY(-10px);opacity:0;transition:transform .4s var(--ease),opacity .4s var(--ease)}
.tvn.show{transform:none;opacity:1}
.tvn-nm{font-size:14px;font-weight:600;letter-spacing:-.01em}
.tvn-ch{font-size:14px;font-weight:700;font-variant-numeric:tabular-nums;margin-top:1px}
.tvn.up .tvn-ch{color:var(--success)}
.tvn.down .tvn-ch{color:var(--danger)}

@media (prefers-reduced-motion:reduce){ .tv-orb,.tv-ring{animation:none} }
.tv-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:clamp(18px,2.4vw,36px)}
.tv-hright{display:flex;align-items:center;gap:clamp(16px,2vw,32px)}
.tv-clock{text-align:right;line-height:1.05}
.tv-clock #tvTime{display:block;font-size:clamp(30px,3.4vw,50px);font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.01em;color:var(--text)}
.tv-clock #tvDate{color:var(--muted);font-size:clamp(12px,1.1vw,16px)}

/* TV board: 4×2 ızgara ekranı BÜTÜN olarak doldurur (yükseklik+genişlik sınırlı) */
/* TV board: 4 sütun HER ekrana sığar; rakam kart genişliğine göre ölçeklenir (cqw) → asla taşmaz/kırpılmaz */
.tv .tv-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(12px,1.4vw,22px);flex:1;min-height:0;align-content:center}
.tv-foot{position:relative;z-index:1}
@keyframes tvFade{from{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:none}}

/* TV boş katalog durumu (asla bomboş ekran) */
.tv-empty{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:clamp(10px,1.6vh,20px);padding:clamp(24px,4vw,60px)}
.tv-empty-ic{width:clamp(64px,7vw,110px);height:clamp(64px,7vw,110px);border-radius:50%;display:grid;place-items:center;background:var(--gold-soft);border:1px solid var(--gold-line)}
.tv-empty-ic svg{width:52%;height:52%;fill:var(--gold-deep)}
.tv-empty h2{font-family:var(--serif);font-size:clamp(30px,4vw,58px);font-weight:600;line-height:1.05;letter-spacing:-.02em;margin:0}
.tv-empty p{font-size:clamp(15px,1.4vw,22px);color:var(--muted);max-width:34ch;margin:0;line-height:1.5}
.tv-empty-cta{display:inline-flex;align-items:center;gap:10px;font-size:clamp(15px,1.4vw,22px);font-weight:700;color:var(--gold-deep);background:var(--gold-soft);border:1px solid var(--gold-line);border-radius:14px;padding:clamp(10px,1.2vw,16px) clamp(16px,1.8vw,26px)}
.tv-empty-cta svg{width:clamp(20px,1.8vw,28px);height:auto;fill:none;stroke:var(--gold-deep);stroke-width:1.7;stroke-linejoin:round}
/* Kart hover (yalnız admin/masaüstü önizleme; TV parmak-dokunmaz) */
/* TV Ayarları admin */
.af-sub-label{display:block;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin:18px 0 10px}   /* bölüm etiketleri VURGU rengine bağlı (admin Renk & Favicon → Vurgu Rengi) */
.tv-mod-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-bottom:4px}
.tv-qr-up{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
/* TV şerit hızı — büyük slider + presetler */
.tk-speed-val{float:right;font-size:13px;color:var(--muted);font-weight:600}
.tk-speed-val b{color:var(--gold-deep);font-variant-numeric:tabular-nums;font-size:15px}
.tk-range{width:100%;margin:12px 0 2px}
.tk-presets{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.tk-preset{padding:8px 14px;border-radius:10px;border:1px solid var(--border);background:var(--card);font-size:12.5px;font-weight:600;color:var(--muted);cursor:pointer;transition:.15s var(--ease);box-shadow:var(--sh-xs);white-space:nowrap}
.tk-preset:hover{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}
.tk-preset.is-active{background:var(--gold-soft);border-color:var(--gold);color:var(--gold-deep)}

/* ---- duyuru şeridi (marquee) ---- */
.tv-ticker{flex:0 0 auto;position:relative;z-index:2;display:flex;align-items:center;gap:14px;min-height:clamp(48px,5.4vh,60px);background:var(--tk-bg,#F5EFE6);border-top:1px solid rgba(200,162,77,.22);border-radius:20px 20px 0 0;box-shadow:0 -6px 26px rgba(72,56,34,.07);padding:0 clamp(18px,2vw,36px);overflow:hidden;color:var(--tk-fg,#3D382F);font-weight:var(--tk-fw,600)}   /* min-height: büyük yazı boyutunda (26-30px) metin dikey kırpılmasın */
.tk-icon{font-size:clamp(18px,1.5vw,24px);line-height:1;flex:0 0 auto}
.tk-time{flex:0 0 auto;font-variant-numeric:tabular-nums;font-weight:700;padding-right:14px;border-right:1px solid rgba(0,0,0,.1)}
.tk-viewport{flex:1;min-width:0;overflow:hidden}   /* kenar fade → .tk-fade toggle (Kenar Yumuşatma) */
.tk-track{display:inline-flex;align-items:center;white-space:nowrap;will-change:transform;transform:translateZ(0)}
@keyframes tkScroll{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
.tv-ticker.pausehover:hover .tk-track,.tk-preview.pausehover:hover .tk-track{animation-play-state:paused}
.tk-msg{font-size:var(--tk-fs,18px);padding:0 2px}
.tk-sep{opacity:.45;padding:0 clamp(16px,1.5vw,30px);font-size:var(--tk-fs,18px)}

/* ---- Ayarlar: duyuru şeridi paneli ---- */
.tk-preview{position:relative;height:46px;border-radius:12px;border:1px solid var(--border);overflow:hidden;display:flex;align-items:center;gap:12px;padding:0 14px;background:var(--tk-bg,#F5EFE6);color:var(--tk-fg,#3D382F);font-weight:var(--tk-fw,600)}
/* 📌 Duyuru şeridi canlı önizlemesi — ayarlar aşağı kaydırılırken ÜSTTE sabit kalır (sticky topbar'ın 82px altına yapışır).
   Opak zemin + alt hairline + yumuşak gölge: altından kayan form alanları görünmez, "yüzen bant" hissi verir. */
.tk-sticky{position:sticky;top:88px;z-index:12;background:var(--card);
  padding:10px 2px 13px;margin:2px -2px 12px;border-bottom:1px solid var(--border);
  box-shadow:0 14px 18px -16px rgba(72,56,34,.30)}
.tk-sticky .tvmini-label{margin-bottom:8px}
/* ---- Profil sekmeleri (duyuru şeridi + bilgi bandı ortak: aktif rozeti + pasif işareti) ---- */
.tk-profiles{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.tk-prof-tab{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:13px;font-weight:600;cursor:pointer;transition:.16s var(--ease);box-shadow:var(--sh-xs)}
.tk-prof-tab:hover{border-color:var(--gold);transform:translateY(-1px)}
.tk-prof-tab.is-editing{border-color:var(--accent,var(--gold));box-shadow:0 0 0 3px var(--gold-soft);background:var(--surface)}
.tk-prof-tab.is-off{opacity:.5}
.tk-prof-tab.is-off .tk-prof-name{text-decoration:line-through}
.tk-prof-badge{font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#fff;background:var(--success);border-radius:99px;padding:2.5px 8px}
.tk-prof-ic{font-size:12px;line-height:1}
.tk-prof-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.tk-prof-bar .btn[disabled]{opacity:.45;pointer-events:none}
.tk-prof-hint{font-size:12px;color:var(--muted)}
.tk-prof-meta{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap;margin-bottom:16px;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}
.tk-prof-meta .field{flex:1;min-width:180px;margin:0}
.tk-prof-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.tk-prof-en{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--muted)}
.tk-prof-del{color:var(--danger)}
.tk-prof-del[disabled]{opacity:.45;pointer-events:none}
/* (Zamanlama kaldırıldı — profil seçimi manuel) */
.tk-msgs{display:flex;flex-direction:column;gap:8px}
.tk-msg-row{display:flex;gap:8px;align-items:center}
.tk-msg-row input{flex:1;padding:9px 12px;border-radius:10px;border:1px solid var(--border);background:var(--card);font-size:13.5px;color:var(--text);box-shadow:var(--sh-xs)}
.tk-msg-row input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}
.range{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:99px;background:var(--surface-2);outline:none;margin-top:6px}
.range::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:var(--gold);border:2px solid #fff;box-shadow:var(--sh-sm);cursor:pointer}
.range::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--gold);border:2px solid #fff;box-shadow:var(--sh-sm);cursor:pointer}
.tk-speed{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.tk-custom{display:flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:10px;padding:6px 12px;background:var(--card)}
.tk-custom input{width:60px;border:none;background:none;font-weight:600;font-size:13.5px;text-align:right;color:var(--text);outline:none;font-variant-numeric:tabular-nums}
.tk-custom span{font-size:12px;color:var(--muted)}
.tk-toggles{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}

@media (max-width:1100px){ .tv .tv-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto;align-content:start} .tv-inner{overflow-y:auto} }
@media (max-width:560px){ .tv .tv-grid{grid-template-columns:1fr;grid-template-rows:auto} }

/* ---- denetim rafineleri (review board) ---- */
/* giriş: iki açık panel arasına ince ayraç */
@media (min-width:861px){ .login-panel{border-left:1px solid var(--border)} }
/* ikon-buton hover: daha zarif, ölçülü yükselme */
.icon-btn:hover{transform:translateY(-1px)}
/* kartlarda tutarlı, yumuşak giriş ritmi */
.gold-card,.profit-card{will-change:transform}

/* =========================================================
   v1.0 ÜRETİM SERTLEŞTİRME — erişilebilirlik & hata durumları
   ========================================================= */
/* klavye kullanıcıları için "içeriğe geç" */
.skip-link{position:fixed;top:-60px;left:16px;z-index:400;background:var(--card);color:var(--text);border:1px solid var(--border);border-radius:10px;padding:10px 16px;font-size:13px;font-weight:600;box-shadow:var(--sh-md);transition:top .2s var(--ease)}
.skip-link:focus{top:16px;outline:2px solid var(--gold);outline-offset:2px}

/* internet bağlantısı uyarı çubuğu */
.offline-bar{position:fixed;top:0;left:50%;transform:translateX(-50%);z-index:230;display:flex;align-items:center;gap:9px;background:#3D382F;color:#fff;font-size:13px;font-weight:500;padding:9px 18px;border-radius:0 0 14px 14px;box-shadow:var(--sh-lg);animation:offlineIn .35s var(--ease)}
.offline-bar svg{width:17px;height:17px;fill:none;stroke:#F5B94A;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
@keyframes offlineIn{from{transform:translateX(-50%) translateY(-100%)}to{transform:translateX(-50%) translateY(0)}}

/* beklenmeyen hata (500 / boot) — teknik mesaj sızdırmadan zarif ekran */
.fatal{position:fixed;inset:0;z-index:500;display:grid;place-items:center;text-align:center;padding:24px;background:radial-gradient(1000px 620px at 50% 24%,#FDFCF9,#F3ECE1 74%)}
.fatal-in{max-width:440px;animation:splashUp .6s var(--ease)}
.fatal-ic{width:64px;height:64px;border-radius:18px;margin:0 auto 22px;display:grid;place-items:center;background:var(--danger-soft);color:var(--danger);font-size:30px;font-weight:700}
.fatal h1{font-family:var(--serif);font-size:26px;font-weight:600;margin-bottom:10px}
.fatal p{font-size:14px;color:var(--muted);line-height:1.6;margin-bottom:24px}

/* =========================================================
   LİSANS & ABONELİK
   ========================================================= */
.license-card{padding:22px 24px;margin-bottom:18px;position:relative;overflow:hidden;box-shadow:var(--sh-soft)}
.license-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),transparent 72%)}
.lic-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.lic-plan{display:flex;align-items:center;gap:14px}
.lic-plan-ic{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;background:var(--gold-soft);color:var(--gold-deep);box-shadow:inset 0 0 0 1px var(--gold-line);flex:0 0 46px}
.lic-plan-ic svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.lic-plan-name{font-family:var(--serif);font-size:18px;font-weight:600;letter-spacing:-.01em}
.lic-plan-sub{font-size:12.5px;color:var(--muted);margin-top:2px}
.lic-status{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:600;padding:6px 13px;border-radius:999px;white-space:nowrap}
.lic-status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.lic-status.active{color:var(--up);background:var(--success-soft)}
.lic-status.trial{color:var(--warn);background:var(--warn-soft)}
.lic-status.expired,.lic-status.suspended{color:var(--danger);background:var(--danger-soft)}
.lic-meter{margin-bottom:18px}
.lic-meter-bar{height:8px;border-radius:999px;background:var(--surface-2);overflow:hidden;margin-bottom:8px}
.lic-meter-bar span{display:block;height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,var(--gold),var(--gold-deep));transition:width .8s var(--ease)}
.lic-meter-labels{display:flex;justify-content:space-between;gap:10px;font-size:11.5px;color:var(--muted-2)}
.lic-meter-labels b{color:var(--gold-deep);font-weight:700}
.lic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px}
.lic-item{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px 14px}
.lic-item .lk{display:block;font-size:11px;color:var(--muted);font-weight:600;margin-bottom:6px}
.lic-item .lv{font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text)}
.lic-item .lv.mono{font-family:ui-monospace,'SF Mono',Menlo,Consolas,monospace;font-size:13px;letter-spacing:.02em}
.lic-actions{display:flex;justify-content:flex-end;gap:10px}
.btn.is-loading .btn-ic{animation:spin .7s linear infinite}
@media (max-width:720px){ .lic-grid{grid-template-columns:1fr 1fr} }
@media (max-width:480px){ .lic-grid{grid-template-columns:1fr} .lic-head{flex-wrap:wrap} }

/* =========================================================
   GENEL MODAL
   ========================================================= */
.modal{position:fixed;inset:0;z-index:240;display:grid;place-items:center;padding:20px}
.modal-backdrop{position:absolute;inset:0;background:rgba(42,35,28,.34);animation:fadeIn .2s}
.modal-card{position:relative;width:min(460px,calc(100vw - 32px));background:var(--card);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--sh-lg);animation:modalIn .28s var(--ease);max-height:calc(100vh - 40px);display:flex;flex-direction:column;overflow:hidden}
@keyframes modalIn{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 22px 14px}
.modal-head h3{font-family:var(--serif);font-size:18px;font-weight:600;letter-spacing:-.01em}
.modal-x{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;color:var(--muted);transition:.15s var(--ease);flex:0 0 32px}
.modal-x svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.modal-x:hover{background:var(--ink-soft);color:var(--text)}
.modal-body{padding:0 22px;overflow-y:auto}
.modal-foot{display:flex;justify-content:flex-end;gap:10px;padding:18px 22px 20px}
.modal-msg{font-size:14px;color:var(--muted);line-height:1.6;padding:4px 0 8px}
.modal-msg b{color:var(--text);font-weight:600}
.modal-form .field:first-child{margin-top:2px}

/* =========================================================
   ÜRÜN YÖNETİMİ
   ========================================================= */
.prod-table{min-width:1040px}
.prod-table td{vertical-align:middle}
.cat-chip{display:inline-block;font-size:12px;font-weight:600;color:var(--muted);background:var(--ink-soft);padding:5px 11px;border-radius:999px;white-space:nowrap}
.api-map{display:flex;flex-direction:column;gap:2px}
.api-src{font-size:12.5px;font-weight:600}
.api-fld{font-size:11.5px;color:var(--muted)}
.rule-chip{display:inline-block;padding:4px 10px;border-radius:8px;font-size:12.5px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.rule-chip.buy{background:var(--danger-soft);color:var(--danger)}
.rule-chip.sell{background:var(--success-soft);color:var(--up)}
.prod-table tr.is-passive{opacity:.5}
.prod-table tr.is-passive .prod-name{color:var(--muted)}
.pcol-chk{width:44px}
.pcol-act{width:1%;white-space:nowrap}
/* İşlemler sütunu daima görünür: sağa yapışık (yatay kaydırmada bile butonlar erişilir) */
.prod-table td.pcol-act{position:sticky;right:0;z-index:1;background:var(--card);box-shadow:-10px 0 12px -10px rgba(82,66,42,.10)}
.prod-table thead th.pcol-act{position:sticky;right:0;top:0;z-index:3;background:var(--card);box-shadow:-10px 0 12px -10px rgba(82,66,42,.10)}
.row-actions{display:flex;gap:4px}
/* satır işlem butonu (ör. duyuru mesajı kaldır ×) — temel stil eksikti, buton görünmüyordu */
.ti-btn{display:grid;place-items:center;background:var(--surface-2);border:1px solid var(--border);color:var(--muted);cursor:pointer;transition:.15s var(--ease);flex:0 0 auto}
.ti-btn svg{fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
.ti-btn:hover{color:var(--text);border-color:var(--gold-line)}
.ti-btn.danger{color:var(--danger);border-color:rgba(220,60,50,.28)}
.ti-btn.danger:hover{background:var(--danger);color:#fff;border-color:var(--danger)}
.ti-btn.xs{width:30px;height:30px;border-radius:8px}
.ti-btn.xs svg{width:15px;height:15px}
.switch.sm{width:38px;height:22px;flex:0 0 38px}
.switch.sm span{width:16px;height:16px}
.switch.sm.is-on span{transform:translateX(16px)}
.chk.sm span{width:17px;height:17px}
.prod-bulk{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;background:var(--gold-soft);border:1px solid var(--gold-line);border-radius:14px;padding:12px 18px;margin-bottom:16px;animation:rowIn .3s var(--ease)}
.pb-count{font-size:13.5px;font-weight:600}
.pb-count b{color:var(--gold-deep)}
.pb-actions{display:flex;gap:8px;flex-wrap:wrap}
.btn-ghost.danger{color:var(--danger)}
.btn-ghost.danger:hover{border-color:var(--danger);background:var(--danger-soft)}
.btn-danger{background:linear-gradient(180deg,#E4574C,#DC2626);color:#fff;box-shadow:var(--sh-sm)}
.btn-danger:hover{filter:brightness(1.05);transform:translateY(-1px)}

/* ürün ekle/düzenle modalı (geniş) */
.modal-card.modal-wide{width:min(780px,calc(100vw - 32px))}
.prod-form{display:grid;grid-template-columns:1.12fr .88fr;gap:24px}
.pf-side{border-left:1px solid var(--border);padding-left:22px}
.pf-sec{font-size:12px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}
.pf-sec2{margin-top:6px}
.cat-field{display:flex;gap:8px}
.cat-field .select-wrap{flex:1}
.cat-new{display:flex;gap:8px;margin-top:8px}
.cat-new input{flex:1;padding:9px 12px;border-radius:10px;border:1px solid var(--border);font-size:13px;background:var(--card)}
.vis-row{display:flex;flex-wrap:wrap;gap:8px}
.vis-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--border);border-radius:10px;font-size:12.5px;font-weight:600;color:var(--text);cursor:pointer;transition:.15s var(--ease)}
.vis-chip input{position:absolute;opacity:0;width:0;height:0}
.vis-chip span{width:16px;height:16px;border-radius:5px;border:1px solid var(--border-strong);display:grid;place-items:center;transition:.15s;flex:0 0 16px}
.vis-chip input:checked+span{background:var(--gold);border-color:var(--gold)}
.vis-chip input:checked+span::after{content:"";width:8px;height:4.5px;border-left:2px solid var(--gold-ink);border-bottom:2px solid var(--gold-ink);transform:rotate(-45deg) translateY(-1px)}
.vis-chip:has(input:checked){border-color:var(--gold-line);background:var(--gold-soft)}

/* ikon seçici */

/* canlı önizleme */
.pf-preview{display:flex;flex-direction:column;gap:12px}
.pfp-label{font-size:11px;color:var(--muted);font-weight:600;display:block;margin-bottom:6px}
.mini-gc{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:12px;box-shadow:var(--sh-xs)}
.mini-head{display:flex;align-items:center;gap:10px;margin-bottom:10px}
.mini-nm{font-weight:600;font-size:13px}
.mini-sub{font-size:10.5px;color:var(--muted-2)}
.mini-prices{display:flex;gap:8px}
.mini-prices>div{flex:1;background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:7px 9px}
.mini-prices span{font-size:9.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;display:block;margin-bottom:2px}
.mini-prices b{font-size:13px;font-variant-numeric:tabular-nums}
.mini-prices .s{background:linear-gradient(180deg,#FCFAF4,#FBF9F5);border-color:var(--gold-line)}
.mini-prices .s b{color:var(--gold-deep)}
.mini-tv{display:flex;align-items:center;gap:11px;background:linear-gradient(180deg,#FDFCF9,#F7F1E7);border:1px solid var(--border);border-radius:12px;padding:11px 13px}
.mini-tv-nm{font-weight:600;font-size:13px;flex:1;min-width:0}
.mini-tv-cols{display:flex;gap:16px}
.mini-tv-cols>div{text-align:right}
.mini-tv-cols span{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;display:block}
.mini-tv-cols b{font-size:15px;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.mini-tv-cols .g{color:var(--gold-deep)}
.mini-row{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:9px 11px}
.mini-row-nm{flex:1;font-weight:600;font-size:12.5px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mini-row-p{font-size:12px;font-variant-numeric:tabular-nums;color:var(--muted)}
.mini-row-p.g{color:var(--gold-deep);font-weight:600}
@media (max-width:680px){ .prod-form{grid-template-columns:1fr} .pf-side{border-left:none;padding-left:0;border-top:1px solid var(--border);padding-top:18px} }

/* =========================================================
   AYARLAR bölüm başlığı — .team-head TV Ekranı / Duyuru Şeridi kartlarında paylaşılır
   ========================================================= */
.team-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}
.team-head h2{font-size:16px;font-weight:700;letter-spacing:-.01em;margin-bottom:4px}

/* =========================================================
   GENEL BAKIŞ 2.0 — kurumsal gösterge paneli
   ========================================================= */

/* 1 · Yönetici Durum Şeridi */
.exec-bar{display:flex;align-items:stretch;flex-wrap:wrap;gap:2px;background:var(--card);border:1px solid var(--border);
  border-radius:var(--r);box-shadow:var(--sh-sm);padding:6px;margin-bottom:20px;animation:cardIn .5s var(--ease) both}
.xb-live{display:inline-flex;align-items:center;gap:7px;font-size:11.5px;font-weight:700;letter-spacing:.09em;
  color:var(--up);background:var(--success-soft);border-radius:9px;padding:0 14px;margin-right:4px}
.xb-seg{display:flex;align-items:center;gap:8px;padding:6px 12px;border-radius:9px;position:relative;flex:1 1 auto;transition:background .16s var(--ease)}
.xb-seg+.xb-seg::before,.xb-live+.xb-seg::before{content:"";position:absolute;left:-1px;top:50%;transform:translateY(-50%);width:1px;height:22px;background:var(--border)}
.xb-seg:hover{background:var(--ink-soft)}
.xb-dot{width:8px;height:8px;border-radius:50%;flex:0 0 8px;background:var(--muted-2)}
.xb-dot.ok{background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}
.xb-dot.gold{background:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}
.xb-dot.warn{background:var(--warn);box-shadow:0 0 0 3px var(--warn-soft)}
.xb-dot.down{background:var(--danger);box-shadow:0 0 0 3px var(--danger-soft)}
.xb-dot.muted{background:var(--muted-2)}
.xb-tx{display:flex;flex-direction:column;line-height:1.25;min-width:0}
.xb-k{font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted-2);white-space:nowrap}
.xb-v{font-size:13px;font-weight:700;color:var(--text);letter-spacing:-.01em;white-space:nowrap;font-variant-numeric:tabular-nums}

/* 2 · Kahraman kart — zenginleştirmeler */
.hero-chart .hc-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}
.hc-head-right{display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.hc-src{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--muted);
  background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:5px 12px;white-space:nowrap;font-variant-numeric:tabular-nums}
.hc-stats{display:flex;gap:10px;margin:16px 0 4px;flex-wrap:wrap}
.hcs{flex:1 1 0;min-width:120px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);padding:10px 13px;
  display:flex;flex-direction:column;gap:3px}
.hcs-k{font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted-2)}
.hcs-v{font-size:15px;font-weight:700;color:var(--text);letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.hcs-v.up{color:var(--success)} .hcs-v.down{color:var(--danger)}
.hc-empty{padding:60px 24px;text-align:center;color:var(--muted);font-size:14px}
.hc-sub-tf{margin-top:14px}
.hc-sub-tf .segmented{flex-wrap:wrap}
.hc-sub-tf .seg{padding:5px 11px;font-size:12px}

/* 3 · Piyasa Özeti (hero-side) */
.ms-list{display:flex;flex-direction:column;gap:8px;flex:1;margin-top:16px}
.ms-item{display:flex;align-items:center;gap:12px;padding:9px 11px;border-radius:var(--r-sm);border:1px solid var(--border);
  background:var(--surface);transition:.18s var(--ease)}
.ms-item:hover{border-color:var(--gold-line);background:#fff;transform:translateX(2px)}
.ms-ic{width:34px;height:34px;flex:0 0 34px;border-radius:10px;display:grid;place-items:center;background:var(--ink-soft);color:var(--muted)}
.ms-ic svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.ms-ic.up{background:var(--success-soft);color:var(--success)}
.ms-ic.down{background:var(--danger-soft);color:var(--danger)}
.ms-ic.gold{background:var(--gold-soft);color:var(--gold-deep)}
.ms-ic.info{background:var(--info-soft);color:var(--info)}
.ms-body{flex:1;min-width:0}
.ms-k{font-size:11px;font-weight:600;color:var(--muted-2);letter-spacing:.01em}
.ms-v{font-size:13.5px;font-weight:700;color:var(--text);letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ms-badge{font-size:12px;font-weight:700;padding:4px 9px;border-radius:8px;white-space:nowrap;font-variant-numeric:tabular-nums;flex:0 0 auto}
.ms-badge.up{color:var(--up);background:var(--success-soft)}
.ms-badge.down{color:var(--danger);background:var(--danger-soft)}
.ms-badge.gold{color:var(--gold-deep);background:var(--gold-soft)}
.ms-badge.info{color:var(--info);background:var(--info-soft)}
/* ✨ AI Piyasa Yorumu kartı (dashboard) */
.ms-ai{margin-top:14px;padding:14px 16px;border-radius:16px;background:linear-gradient(135deg,var(--accent-soft),var(--gold-soft));border:1px solid var(--gold-line)}
.ms-ai-top{display:flex;align-items:center;margin-bottom:7px}
.ms-ai-badge{font-size:11.5px;font-weight:800;letter-spacing:.04em;color:var(--gold-deep);text-transform:uppercase}
.ms-ai-txt{font-size:13px;line-height:1.55;color:var(--text)}
.tk-msg-btns{display:flex;gap:8px;flex-wrap:wrap;margin-top:2px}

/* ── Vurgu Rengi (Accent) · GÖRÜNÜR ikincil vurgular — marka accent'i admin genelinde uygulanır ── */
.range::-webkit-slider-thumb{background:var(--accent)}
.range::-moz-range-thumb{background:var(--accent)}
.field input:focus,.field textarea:focus,.pw-wrap input:focus,.lp-form input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}
.notif-item.unread{border-left:3px solid var(--accent)}
::selection{background:var(--accent);color:#fff}

/* 4 · Hızlı İstatistikler */
/* 🔴 6 istatistik · 4'lü ızgarada 2 boş hücre bırakıyordu → 3'lü (2 tam sıra) */
.dash-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:22px 0 4px}
.dstat{display:flex;align-items:center;gap:13px;background:var(--card);border:1px solid var(--border);border-radius:var(--r);
  padding:15px 16px;box-shadow:var(--sh-sm);transition:.2s var(--ease);animation:cardIn .5s var(--ease) backwards}
.dstat:hover{transform:translateY(-2px);box-shadow:var(--sh-md);border-color:var(--gold-line)}
.dstat-ic{width:40px;height:40px;flex:0 0 40px;border-radius:12px;display:grid;place-items:center;background:var(--ink-soft);color:var(--muted)}
.dstat-ic svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.dstat-ic.gold{background:var(--gold-soft);color:var(--gold-deep)}
.dstat-ic.ok{background:var(--success-soft);color:var(--success)}
.dstat-b{display:flex;flex-direction:column;gap:1px;min-width:0}
.dstat-k{font-size:11.5px;font-weight:600;color:var(--muted)}
.dstat-v{font-size:19px;font-weight:700;color:var(--text);letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.1}
.dstat-s{font-size:11px;color:var(--muted-2)}

/* 6 · Son Etkinlik  ·  7 · Hızlı İşlemler */
/* 🔴 Hızlı İşlemler tek kart kaldı (Son Etkinlik kaldırılmıştı) → 2 sütun gridde sağı 521px boş bırakıyordu */
.dash-bottom{display:block;margin-top:8px}
.dash-bottom .qa-grid{grid-template-columns:repeat(3,minmax(0,1fr))}   /* 6 buton = 2 tam sıra (auto-fit 5+1 bırakıyordu) */
@media (max-width:900px){ .dash-bottom .qa-grid{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:560px){ .dash-bottom .qa-grid{grid-template-columns:1fr} }
.dash-panel{padding:20px 22px;box-shadow:var(--sh-soft)}
.dash-panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.dash-panel-head h3{font-family:var(--serif);font-size:17px;font-weight:600;letter-spacing:-.01em}
.dash-lnk{font-size:12.5px;font-weight:600;color:var(--gold-deep);padding:4px 8px;border-radius:8px;transition:.15s var(--ease)}
.dash-lnk:hover{background:var(--gold-soft)}

/* (Ürün log sistemi / Son Etkinlik paneli kaldırıldı) */

.qa-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}
.qa-card{display:flex;align-items:center;gap:12px;text-align:left;background:var(--surface);border:1px solid var(--border);
  border-radius:var(--r-sm);padding:13px 14px;transition:.18s var(--ease)}
.qa-card:hover{background:#fff;border-color:var(--gold-line);transform:translateY(-2px);box-shadow:var(--sh-md)}
.qa-ic{width:36px;height:36px;flex:0 0 36px;border-radius:10px;display:grid;place-items:center;background:var(--ink-soft);color:var(--muted);transition:.18s var(--ease)}
.qa-ic svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.qa-ic.gold{background:var(--gold-soft);color:var(--gold-deep)}
.qa-card:hover .qa-ic{background:var(--gold-soft);color:var(--gold-deep)}
.qa-tx{display:flex;flex-direction:column;gap:1px;min-width:0}
.qa-k{font-size:13.5px;font-weight:600;color:var(--text)}
.qa-s{font-size:11.5px;color:var(--muted-2)}

/* 5 · Ürün kartı altbilgisi (makas + durum) */
.gc-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}
.gc-spread{font-size:11.5px;font-weight:600;color:var(--gold-deep);background:var(--gold-soft);border-radius:7px;padding:3px 8px;
  white-space:nowrap;font-variant-numeric:tabular-nums}
.dot-live.up{background:var(--success)}
.dot-live.down{background:var(--danger)}
.dot-live.flat{background:var(--muted-2)}

/* Genel Bakış — duyarlı */
@media (max-width:1160px){
  .dash-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:900px){
  .dash-bottom{grid-template-columns:1fr}
  .dash-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .exec-bar{gap:0}
  .xb-seg{padding:7px 11px}
  .hc-head-right{align-items:flex-start;width:100%}
  .qa-grid{grid-template-columns:1fr}
}
@media (max-width:460px){
  .dash-stats{grid-template-columns:1fr}
}

/* =========================================================
   TV SHOWROOM 3.0 — lüks dijital signage (yetkili katman)
   esen.png ipek arka plan + canlı altın katmanları · Cartier/Bvlgari tonu
   Bu blok önceki 3 TV kuşağını (dark/featured/ivory) tamamen ezer.
   ========================================================= */
.tv{
  position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;overflow:hidden;color:var(--text);
  background:
    radial-gradient(125% 92% at 50% 40%, rgba(255,252,244,.46) 0%, rgba(255,251,242,.10) 42%, rgba(244,235,220,.04) 70%),
    linear-gradient(180deg, rgba(250,244,233,.24), rgba(242,232,216,.16)),
    #F2E8D6 url("../../esen.png") center center / cover no-repeat;
  animation:viewIn .55s var(--ease);
  -webkit-font-smoothing:antialiased;
}
/* 🎨 Özel TV arka planı — admin 2 renk seçer, aralarındaki tonlarla yumuşak geçiş (varsayılan dokuyu ezer) */
.tv.custom-bg{background:linear-gradient(160deg,var(--tv-bg-a,#FDFCF9) 0%,var(--tv-bg-b,#F2E8D6) 100%)}
.tvmini-tv.custom-bg{background:linear-gradient(160deg,var(--tv-bg-a,#FDFCF9) 0%,var(--tv-bg-b,#F2E8D6) 100%)}
/* WYSIWYG: gradient açıkken altın radial + vinyet overlay'leri kapat — seçilen renkler gerçek TV'de de SAF görünsün (mini ile birebir) */
.tv.custom-bg::before,.tv.custom-bg::after{content:none}
/* Koyu gradient seçiminde (JS custom-bg-dark) üst bar/footer/tablo-başlığı metinleri açık tona döner — okunabilirlik koruması */
.custom-bg-dark .tv-time,.custom-bg-dark .tv-date,.custom-bg-dark .tvtbl-head span,.custom-bg-dark .tv-live,.custom-bg-dark .tv-foot,.custom-bg-dark .tv-empty h3{color:#F3ECE0}
.tv::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(1200px 340px at 50% -8%, rgba(200,162,77,.16), transparent 60%)}
.tv::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:radial-gradient(140% 120% at 50% 46%, transparent 52%, rgba(90,66,28,.10) 100%)}

/* ---- canlı arka plan katmanları (GPU) ---- */
.tv-deco{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.tv-shimmer{position:absolute;inset:-24% -34%;pointer-events:none;will-change:transform;
  background:linear-gradient(107deg,transparent 41%,rgba(255,255,255,.13) 47%,rgba(255,247,224,.24) 50%,rgba(255,255,255,.13) 53%,transparent 59%);
  animation:tvShimmer 17s ease-in-out infinite alternate}
.tv-particle{position:absolute;border-radius:50%;pointer-events:none;will-change:transform,opacity;
  background:radial-gradient(circle at 34% 30%,#fff7e0,#e7c86f 68%,rgba(200,162,77,0));
  box-shadow:0 0 8px 1px rgba(224,190,110,.45);animation:tvFloat linear infinite}
.tv-pearl{position:absolute;border-radius:50%;pointer-events:none;will-change:transform;opacity:.82;
  background:radial-gradient(circle at 36% 30%,#ffffff,#f4e8d0 56%,#dcc59a);
  box-shadow:0 2px 9px rgba(120,90,40,.18),inset 0 -2px 4px rgba(150,120,70,.25),inset 0 2px 3px rgba(255,255,255,.85);
  animation:tvDrift ease-in-out infinite}
.tv-sparkle{position:absolute;pointer-events:none;will-change:transform,opacity;animation:tvTwinkle ease-in-out infinite}
.tv-sparkle::before,.tv-sparkle::after{content:"";position:absolute;inset:0;margin:auto;background:linear-gradient(#ffffff,rgba(233,200,111,.35));border-radius:2px}
.tv-sparkle::before{width:100%;height:1.6px;box-shadow:0 0 7px 1px rgba(255,250,235,.9)}
.tv-sparkle::after{width:1.6px;height:100%;box-shadow:0 0 7px 1px rgba(255,250,235,.9)}
@keyframes tvShimmer{0%{transform:translate3d(-38%,0,0)}100%{transform:translate3d(38%,0,0)}}
@keyframes tvFloat{0%{transform:translate3d(0,0,0);opacity:0}14%{opacity:.9}86%{opacity:.65}100%{transform:translate3d(7px,-48px,0);opacity:0}}
@keyframes tvDrift{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(-11px,15px,0)}}
@keyframes tvTwinkle{0%,100%{opacity:0;transform:scale(.55)}50%{opacity:.92;transform:scale(1)}}

/* ---- iç sarmalayıcı ---- */
.tv-inner{position:relative;z-index:2;flex:1;min-height:0;display:flex;flex-direction:column;
  padding:clamp(12px,1.5vw,26px) clamp(26px,3.6vw,64px) clamp(10px,1.2vw,18px);   /* üst boşluk azaltıldı → tablo satırlarına yükseklik (10m okunabilirlik) */
  max-width:2900px;margin-inline:auto;width:100%}   /* 🔴 2400 → 2900: 4K vitrin TV'sinde iki yanda 720'şer px boş kalıyordu */

/* ---- başlık: SOL logo/marka (admin --logo-scale %50–170) · SAĞ saat/tarih ----
   Üst bar yüksekliği İÇERİKTEN gelir → logo küçülünce başlık kısalır, .tv-stage (flex:1)
   boşalan alanı alır ve satırlar/cqh-fontlar OTOMATİK büyür (kullanıcının istediği davranış). */
.tv-head{display:flex;align-items:center;justify-content:space-between;gap:20px;
  margin-bottom:clamp(6px,.7vw,10px);padding-bottom:clamp(5px,.6vw,9px);border-bottom:1.5px solid var(--gold-line)}
.tv-brand{display:flex;align-items:center;gap:clamp(10px,1.1vw,18px);min-width:0}
/* Sidebar .brand-plate dili: ÇERÇEVESİZ, sadece wordmark; genişlik = taban × --logo-scale */
.tv-logo{width:calc(clamp(92px,7.2vw,138px) * var(--logo-scale,1));height:auto;aspect-ratio:363/200;flex:0 0 auto;
  background:none;border:none;box-shadow:none;padding:0;display:grid;place-items:center}
.tv-logo img{width:100%;height:100%;object-fit:contain}
.tv-hright{display:flex;align-items:center;gap:clamp(14px,1.8vw,30px);margin-left:auto}   /* logo gizliyken de saat SAĞDA kalır */
.tv-clock{text-align:right;line-height:1.02}
.tv-clock #tvTime{display:block;font-size:clamp(26px,2.6vw,44px);font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--text)}
.tv-clock #tvDate{display:block;color:var(--muted);font-size:clamp(12px,1.15vw,19px);font-weight:600;margin-top:2px}

/* ---- sahne / ızgara alanı ---- */
.tv-stage{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}
.tv-stage>.tv-grid{flex:1;min-height:0;transition:opacity .5s var(--ease),filter .5s var(--ease)}
.tv-stage.scened>#tvGrid{opacity:.12;filter:blur(3px);pointer-events:none}
/* grid-auto-rows:1fr → satırlar KESİN yükseklikli; container-type:size kartlar
   içerikten değil track'ten yükseklik alır (aksi halde 0'a çöker). */
.tv .tv-grid{display:grid;grid-template-columns:repeat(var(--tv-cols,4),minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:clamp(12px,1.3vw,22px);align-content:stretch;height:100%}

/* ---- SADE FİYAT TABLOSU (Harem tarzı · grafik YOK · müşteri direkt okur) ---- */
.tv-inner .tv-grid.as-table{display:flex;flex-direction:column;flex:1 1 0;min-height:0}
.tvtbl{display:flex;flex-direction:column;flex:1 1 0;min-height:0;gap:clamp(4px,.6vh,9px)}   /* dar aralık → satır başına daha çok yükseklik = daha büyük rakam */
.tvtbl-head{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1.2fr) minmax(0,1.2fr) minmax(0,1.05fr) minmax(0,.62fr);gap:clamp(12px,1.8vw,34px);   /* sıra: Ürün · Alış · Satış · K.Kartı · Değişim */
  padding:0 clamp(20px,2.3vw,42px) clamp(4px,.7vh,10px);align-items:end;flex:0 0 auto}
.tvtbl-head span{font-size:clamp(12px,calc(1.25vw*var(--tv-fs,1)),27px);font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--text)}
.tvtbl-head span:not(:first-child){text-align:center}
.tvrow{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1.2fr) minmax(0,1.2fr) minmax(0,1.05fr) minmax(0,.62fr);gap:clamp(12px,1.8vw,34px);
  align-items:center;padding:0 clamp(18px,2.2vw,38px);border-radius:clamp(13px,1.3vw,20px);flex:1 1 0;min-height:0;container-type:size;overflow:hidden;
  background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(253,249,241,.95));border:1px solid var(--gold-line);
  box-shadow:0 3px 12px rgba(82,66,42,.06),0 16px 40px rgba(72,56,34,.08);transition:background .35s var(--ease),border-color .35s var(--ease),filter .3s var(--ease)}
.tvrow.up{background:linear-gradient(90deg,rgba(20,175,100,.26),rgba(235,250,242,.93) 58%);border-color:rgba(18,163,90,.50)}
.tvrow.down{background:linear-gradient(90deg,rgba(233,68,56,.24),rgba(252,241,240,.93) 58%);border-color:rgba(220,60,50,.48)}
.tvrow.tv-bump{filter:brightness(1.04)}
/* İkon kutusu KALDIRILDI (kullanıcı isteği) — ad sütununun TAMAMI yazıya ait; yazı büyüyünce bu alanı da kullanır */
.tvr-name{display:flex;align-items:center;min-width:0}
.tvr-tx{min-width:0;flex:1 1 auto}
/* Ürün adı SANS (Inter) — serif ince çizgileri mesafeden erir; sans + 800 net okunur.
   TÜM tablo fontları: tercih edilen boyut --tv-fs (admin Yazı Boyutu %80–135) ile çarpılır;
   min() içindeki cqh/cqw tavanları SABİT → hangi ayarda olursa olsun yazı satır alanından TAŞAMAZ. */
.tvr-tx b{display:block;font-size:clamp(13px,min(calc(54cqh*var(--tv-fs,1)),66cqh),92px);font-weight:800;letter-spacing:-.015em;line-height:1.06;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tvr-tx i{font-style:normal;font-size:clamp(9px,min(calc(20cqh*var(--tv-fs,1)),25cqh),28px);font-weight:600;color:var(--muted);letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.tvr-buy,.tvr-sell,.tvr-cc{text-align:center;white-space:nowrap;font-variant-numeric:tabular-nums;display:flex;align-items:baseline;justify-content:center;gap:.14em}
.tvr-buy b,.tvr-sell b{font-size:clamp(12px,min(calc(92cqh*var(--tv-fs,1)),98cqh,3.2cqw),176px);font-weight:900;letter-spacing:-.02em;line-height:1}   /* 10m okunabilirlik: satırın %92'si × yazı boyutu; 98cqh dikey + 3.2cqw yatay tavan (10 haneli fiyat "200.461,70" sütuna sığar — ölçümle kalibre) */
.tvr-buy b{color:var(--text)}
.tvr-sell b{color:var(--gold-deep)}
/* K.Kartı sütunu — kredi kartı fiyatı (satış + komisyon %): satıştan bir tık küçük, nötr mürekkep tonu */
.tvr-cc b{font-size:clamp(11px,min(calc(80cqh*var(--tv-fs,1)),88cqh,2.75cqw),152px);font-weight:900;letter-spacing:-.02em;line-height:1;color:var(--text);opacity:.88}
.tvr-buy i,.tvr-sell i,.tvr-cc i{font-style:normal;font-size:.44em;color:var(--muted-2);font-weight:700}
.tvr-chg{white-space:nowrap;font-weight:900;font-size:clamp(10px,min(calc(54cqh*var(--tv-fs,1)),64cqh,2.3cqw),80px);font-variant-numeric:tabular-nums;display:inline-flex;align-items:center;justify-content:center;gap:6px}
.tvr-chg.up{color:var(--up)}
.tvr-chg.down{color:var(--danger)}
@media (max-width:820px){
  /* .tv kapsamı: mini-TV önizleme (sabit 1280px canvas) dar admin penceresinden ETKİLENMEZ — WYSIWYG korunur */
  .tv .tvtbl-head,.tv .tvrow{grid-template-columns:minmax(0,1.9fr) minmax(0,1.15fr) minmax(0,1.15fr);gap:14px}
  .tv .tvtbl-head span:nth-child(4),.tv .tvtbl-head span:nth-child(5),.tv .tvr-chg,.tv .tvr-cc{display:none}
}

/* ===== FİYAT-ODAKLI SPLIT: sol DEV fiyat tablosu (tam yükseklik) · sağ ince marka/QR rayı ===== */
.tv-split .tv-stage{display:flex;flex-direction:row;align-items:stretch;gap:clamp(14px,1.4vw,26px);min-height:0}
.tv-split .tv-grid{flex:1 1 0;min-width:0;min-height:0}
/* QR yan paneli KAPALI → tablo tam ekran (müşteri isteği: özelleştirilebilir) */
.tv-inner.no-rail .tv-rail{display:none}
.tv-inner.no-rail .tv-stage{gap:0}
.tv-rail{flex:0 0 clamp(268px,25vw,430px);min-width:0;display:flex;flex-direction:column;gap:clamp(12px,1.2vw,20px);
  background:linear-gradient(180deg,rgba(255,255,255,.62),rgba(252,246,235,.5));border:1px solid var(--gold-line);border-radius:20px;
  padding:clamp(14px,1.4vw,26px);box-shadow:0 3px 12px rgba(82,66,42,.06),inset 0 1px 0 rgba(255,255,255,.6)}
/* QR/IBAN hücreleri → rayda DİKEY yığın (her biri mini kart) */
.tv-rail .tvibox{flex:1 1 auto;flex-direction:column;justify-content:space-between;gap:clamp(10px,1vw,16px);
  margin-top:0;background:none;border:none;box-shadow:none;padding:0;border-radius:0}
.tv-rail .tvi-sep{display:none}
.tv-rail .tvi-cell{flex:1 1 0;min-height:0;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:clamp(6px,.7vw,12px);
  padding:clamp(9px,1vw,16px);background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(252,246,235,.92));
  border:1px solid var(--gold-line);border-radius:15px;box-shadow:inset 0 1px 0 rgba(255,255,255,.6);container-type:size;overflow:hidden}
/* QR = hücre yüksekliğine göre ölçeklenir (yer varsa 160px'e kadar BÜYÜK, kısa ekranda küçülür) → TAŞMA YOK */
.tv-rail .tvi-cell-qr{width:min(clamp(84px,7.4vw,164px),52cqh);height:min(clamp(84px,7.4vw,164px),52cqh)}
/* 🔴 IBAN hücresi 3 metin bloğu taşır (banka + IBAN + hesap sahibi) → eşit payda alttan KIRPILIYORDU
   ("…LTD. ŞTİ." alt harfleri kesiliyordu). Çözüm: bu hücreye biraz daha pay + QR'ı küçült + metni sıkılaştır. */
.tv-rail .tvi-cell.bank{flex:1.3 1 0}
.tv-rail .tvi-cell.bank .tvi-cell-qr{width:min(clamp(70px,5.6vw,124px),34cqh);height:min(clamp(70px,5.6vw,124px),34cqh)}
.tv-rail .tvi-cell.bank .tvi-cell-tx{gap:clamp(2px,.3vw,5px)}
.tv-rail .tvi-cell.bank .tvi-cell-owner{gap:0;line-height:1.2}
.tv-rail .tvi-cell.bank .tvi-cell-owner b{font-size:min(clamp(11px,.9vw,16px),9cqh);line-height:1.25}
.tv-rail .tvi-cell.bank .tvi-cell-iban{font-size:min(clamp(11px,.9vw,16px),9.5cqh)}
/* Çok kısa ekranda (dizüstü/pencere): IBAN QR'ı gizlenir, diğer QR'lar küçülür, açıklamalar
   tek satıra iner → hiçbir hücrede alt kırpılma olmaz (vitrin TV'si 1080p'de tam boyut kalır). */
@media (max-height:760px){
  .tv-rail .tvi-cell.bank .tvi-cell-qr{display:none}
  .tv-rail .tvi-cell-qr{width:min(clamp(64px,5.4vw,120px),40cqh);height:min(clamp(64px,5.4vw,120px),40cqh)}
  .tv-rail .tvi-cell .tvi-cell-main{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}   /* specificity: .tv-rail .tvi-cell-main (white-space:normal) kuralını ez */
  .tv-rail .tvi-cell{padding:clamp(7px,.8vw,12px)}
}
.tv-rail .tvi-cell-tx{align-items:center;text-align:center;width:100%}
.tv-rail .tvi-cell-head{justify-content:center}
.tv-rail .tvi-cell-main{white-space:normal;text-align:center}
.tv-rail .tvi-cell-iban{white-space:normal;word-break:break-word;line-height:1.22;text-align:center;font-size:clamp(11px,.9vw,16px);max-width:100%}
.tv-rail .tvi-cell-owner{align-items:center;text-align:center}
/* ---- DAR EKRAN (tablet/telefon): split DİKEY yığılır, kaydırılır, YATAY TAŞMA YOK ----
   Fiyat fontu min(cqh,cqw) olduğundan sütun genişliğine göre kendini küçültür → hiçbir
   ekranda rakamlar çakışmaz/taşmaz. Rakam-güvenli responsive tabanı. */
@media (max-width:920px){
  .tv-split .tv-stage{flex-direction:column;overflow-y:auto;overflow-x:hidden}
  .tv-split #tvGrid{flex:0 0 auto;min-height:0}
  .tvtbl{flex:0 0 auto}
  .tvrow{flex:0 0 auto;min-height:clamp(52px,8.5vw,86px)}
  .tv-rail{flex:0 0 auto}
  .tv-rail .tvibox{flex-direction:row;gap:clamp(8px,1.4vw,16px)}
  .tv-rail .tvi-cell{flex:1 1 0}
}
@media (max-width:600px){
  .tv-inner{padding:clamp(10px,3vw,18px) clamp(10px,3vw,16px) 8px}
  .tv-split .tv-stage{gap:12px}
  .tv .tvrow{min-height:50px;border-radius:12px;padding:0 12px}
  .tv .tvtbl-head,.tv .tvrow{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:clamp(9px,3vw,16px)}
  .tv .tvtbl-head{padding:0 12px 4px}
  .tv .tvr-name{gap:9px}
  .tv .tvr-tx i{display:none}             /* alt açıklama gizle → ada+fiyata yer aç (yalnız gerçek TV; mini WYSIWYG etkilenmez) */
  .tv-rail{padding:12px;gap:10px}
  .tv-rail .tvi-cell{padding:9px}
  .tv-rail .tvi-cell-qr{width:clamp(52px,15vw,76px);height:clamp(52px,15vw,76px)}
  .tv-rail .tvi-cell-head{font-size:11px}
  .tv-foot{font-size:11px}
}
@keyframes tvGlow{0%{box-shadow:0 0 0 0 rgba(200,162,77,.5)}100%{box-shadow:0 0 0 14px rgba(200,162,77,0)}}
/* fiyat değişince hücrede altın nabız — tvRoll .tv-glow ekler (eski kural ölü .tvc-price'a bağlıydı, satır hücrelerine taşındı) */
.tvr-buy.tv-glow,.tvr-sell.tv-glow,.tvr-cc.tv-glow{animation:tvGlow .8s ease-out;border-radius:12px}

/* ---- Alt bilgi bandı: 3 EŞİT bölüm (Web · WhatsApp · Banka) — aynı boyut QR, showroom ---- */
.tvibox{flex:0 0 auto;display:flex;align-items:stretch;gap:0;margin-top:clamp(8px,.8vw,13px);
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(252,246,235,.93));border:1px solid var(--gold-line);border-radius:16px;
  box-shadow:0 3px 12px rgba(82,66,42,.07),0 16px 40px rgba(72,56,34,.09),inset 0 1px 0 rgba(255,255,255,.7);
  padding:clamp(8px,.8vw,14px) clamp(8px,.8vw,16px)}
.tvi-cell{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center;gap:clamp(11px,1.1vw,18px);padding:0 clamp(8px,1vw,18px)}
.tvibox.one .tvi-cell{justify-content:center}
/* QR — üç bölümde AYNI boyut, etrafında eşit boşluk */
.tvi-cell-qr{width:clamp(66px,5vw,92px);height:clamp(66px,5vw,92px);background:#fff;border:1px solid var(--border);border-radius:12px;padding:6px;flex:0 0 auto}
.tvi-cell-qr svg,.tvi-cell-qr img{width:100%;height:100%;display:block;object-fit:contain}
.tvi-cell-tx{display:flex;flex-direction:column;justify-content:center;gap:clamp(3px,.4vw,7px);min-width:0}
.tvi-cell-head{display:inline-flex;align-items:center;gap:6px;font-size:clamp(11px,.95vw,16px);font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--gold-deep);white-space:nowrap}
.tvi-cell.wa .tvi-cell-head{color:#12855b}
.tvi-cell-head svg{width:clamp(15px,1.15vw,19px);height:clamp(15px,1.15vw,19px);fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.tvi-cell-main{font-size:clamp(13px,1.1vw,19px);font-weight:600;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.tvi-cell-iban{font-size:clamp(13px,1.05vw,29px);font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.01em;color:var(--gold-deep);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.tvi-cell-owner{display:flex;flex-direction:column;gap:1px;min-width:0}
.tvi-cell-owner span{font-size:clamp(9px,.7vw,11px);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2)}
.tvi-cell-owner b{font-size:clamp(12px,1vw,17px);font-weight:700;text-transform:uppercase;letter-spacing:.01em;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
/* Dikey ayırıcı — çok ince altın/champagne çizgi (uçları solar) */
.tvi-sep{width:1px;background:linear-gradient(180deg,transparent,var(--gold-line) 16%,var(--gold) 50%,var(--gold-line) 84%,transparent);opacity:.55;align-self:stretch;flex:0 0 auto;margin:clamp(4px,.5vw,10px) 0}
@media (max-width:900px){ .tvibox{flex-direction:column;align-items:stretch} .tvi-sep{display:none} .tvi-cell{justify-content:flex-start} }


/* ---- footer ---- */
.tv-foot{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:18px;
  margin-top:clamp(14px,1.8vw,26px);color:var(--muted);font-size:clamp(12px,1.05vw,16px)}
.tv-live{display:inline-flex;align-items:center;gap:9px;font-weight:600;color:var(--text)}
.tv-live .live-dot{background:var(--success)}

/* ---- alt duyuru şeridi (premium ribbon) ---- */
.tv-ticker{position:relative;z-index:3;--tk-bg:#F7F1E7;--tk-fg:#3D382F;--tk-fs:20px;--tk-fw:600;
  display:flex;align-items:center;gap:14px;padding:clamp(9px,1vw,15px) clamp(18px,2vw,30px);
  background:linear-gradient(180deg,rgba(255,252,246,.92),var(--tk-bg));border-top:1px solid var(--gold-line);
  box-shadow:0 -8px 26px rgba(72,56,34,.06);backdrop-filter:blur(8px)}
.tv-ticker .tk-icon{font-size:calc(var(--tk-fs) * 1.05);flex:0 0 auto;filter:drop-shadow(0 1px 1px rgba(120,90,40,.2))}
.tv-ticker .tk-viewport{flex:1;overflow:hidden}   /* kenar fade → .tk-fade toggle (Kenar Yumuşatma) */
.tv-ticker .tk-track{display:inline-flex;white-space:nowrap;will-change:transform}
.tv-ticker .tk-msg{color:var(--tk-fg);font-size:var(--tk-fs);font-weight:var(--tk-fw);letter-spacing:.01em;padding:0 6px}
.tv-ticker .tk-sep{color:var(--gold-deep);padding:0 clamp(12px,1.4vw,22px);opacity:.7}
.tv-ticker.pausehover:hover .tk-track{animation-play-state:paused}
/* ✨ Işıltı Efekti (Apple tarzı) — metni ASLA maskelemeyen glint OVERLAY: yazı daima tam --tk-fg renginde,
   parıltı ayrı katman olarak üstünden süzülür (yenileniyormuş hissi); admin profil başına aç/kapatır */
.tk-shine .tk-viewport{position:relative}
.tk-shine .tk-viewport::after{content:"";position:absolute;top:0;bottom:0;left:0;width:34%;pointer-events:none;z-index:2;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.4) 50%,transparent);   /* color-mix desteklemeyen TV/kiosk fallback */
  /* 🔴 color-mix satırında var() KULLANMA: var'lı bildirim parse'da atılamaz → desteklemeyen tarayıcıda background:none olur, üstteki fallback devreye giremez */
  background:linear-gradient(100deg,transparent 0%,color-mix(in srgb,#C8A24D 26%,transparent) 38%,rgba(255,255,255,.35) 50%,color-mix(in srgb,#C8A24D 26%,transparent) 62%,transparent 100%);
  transform:translateX(-140%);animation:tkGlint 4.2s cubic-bezier(.4,0,.2,1) infinite}
@keyframes tkGlint{0%{transform:translateX(-140%)}55%{transform:translateX(340%)}100%{transform:translateX(340%)}}
/* 🌫️ Kenar Yumuşatma (toggle) — mesajlar kenarlarda eriyerek girer/çıkar; kapalıyken keskin kenar */
.tk-fade .tk-viewport{-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}
/* ✨ Ayraç Parlaması (toggle) — ayraç ikonlarında altın hâle */
.tk-glow-sep .tk-sep{color:var(--gold-deep,#A6812F);opacity:1;text-shadow:0 0 10px var(--gold,#C8A24D),0 0 2px var(--gold,#C8A24D)}
/* ⏸️ Şeridi Dondur (toggle) — kayma + glint durur (fare gerektirmez, kalıcı; !important: shine shorthand'inin play-state resetine karşı) */
.tk-frozen .tk-track,.tk-frozen .tk-viewport::after{animation-play-state:paused!important}

/* ---- canlı bildirim (cam, sağ üst) ---- */
.tv-notify{position:absolute;top:clamp(84px,9vh,120px);right:clamp(22px,2.4vw,46px);z-index:5;display:flex;flex-direction:column;gap:10px;align-items:flex-end;pointer-events:none;width:min(340px,42vw)}

/* ---- kontroller (hover'da belirir — saatin köşesini örtmesin, TV'de temiz) ---- */
.tv-controls{position:absolute;top:clamp(16px,1.6vw,26px);right:clamp(16px,1.6vw,26px);z-index:6;display:flex;gap:8px;opacity:0;pointer-events:none;transform:translateY(-6px);transition:opacity .25s var(--ease),transform .25s var(--ease)}
.tv:hover .tv-controls,.tv-controls:focus-within{opacity:1;pointer-events:auto;transform:none}
.tv-btn{width:clamp(38px,2.8vw,46px);height:clamp(38px,2.8vw,46px);border-radius:12px;display:grid;place-items:center;
  background:rgba(255,255,255,.72);border:1px solid var(--gold-line);color:var(--gold-deep);backdrop-filter:blur(8px);transition:.16s var(--ease)}
.tv-btn svg{width:46%;height:46%;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tv-btn:hover{background:#fff;transform:translateY(-1px);box-shadow:var(--sh-md)}

/* ---- boş durum ---- */
.tv-empty{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:16px;padding:clamp(30px,5vw,80px);
  background:rgba(255,255,255,.86);backdrop-filter:blur(14px);border:1px solid var(--gold-line);border-radius:28px;box-shadow:0 30px 80px rgba(72,56,34,.14)}

@keyframes tvUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes tvFade{from{opacity:.3}to{opacity:1}}

/* ---- duyarlı: portre TV + küçük ekran (yetkili katman) ---- */
@media (orientation:portrait){
  .tv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tv-head{flex-wrap:wrap;gap:16px}
}
@media (max-width:1100px){ .tv-grid{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:720px){
  .tv-grid{grid-template-columns:1fr}
  .tv-head{flex-direction:column;align-items:flex-start;gap:14px}
  .tv-hright{width:100%;justify-content:space-between}
}
@media (prefers-reduced-motion:reduce){
  .tv-shimmer,.tv-particle,.tv-pearl,.tv-sparkle{animation:none!important}
  .tk-shine .tk-viewport::after{animation:none!important;display:none}
  .tk-preview .tk-track{animation-play-state:paused}   /* admin önizleme marquee'si durur; TV vitrin marquee'si bilinçli MUAF (dükkan ekranı, kullanıcı tercihi değil) */
  .tv-scene{transition:opacity .2s linear}
}

/* =========================================================
   CANLI FİYATLAR 2.0 — Bloomberg/TradingView tonu fiyat masası
   ========================================================= */
.lp-head{display:flex;align-items:center;gap:clamp(14px,1.8vw,26px);background:var(--card);border:1px solid var(--border);
  border-radius:var(--r);box-shadow:var(--sh-sm);padding:12px 18px;margin-bottom:16px;flex-wrap:wrap;animation:cardIn .5s var(--ease) both}
.lp-live{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.09em;color:var(--up);background:var(--success-soft);border-radius:9px;padding:7px 14px}
.lp-hmeta{display:flex;align-items:center;gap:clamp(14px,1.6vw,28px);flex-wrap:wrap}
.lp-hi{display:flex;flex-direction:column;line-height:1.25;position:relative;padding-left:clamp(14px,1.6vw,28px)}
.lp-hi::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:1px;height:24px;background:var(--border)}
.lp-hi:first-child{padding-left:0}.lp-hi:first-child::before{display:none}
.lp-hi span{font-size:10.5px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted-2);white-space:nowrap}
.lp-hi b{font-size:13.5px;font-weight:700;color:var(--text);white-space:nowrap;font-variant-numeric:tabular-nums}
.lp-head .btn{margin-left:auto}

.lp-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}
.lp-stat{background:var(--card);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--sh-sm);padding:13px 15px;
  display:flex;flex-direction:column;gap:2px;position:relative;overflow:hidden;transition:.2s var(--ease);animation:cardIn .5s var(--ease) both}
.lp-stat:hover{transform:translateY(-2px);box-shadow:var(--sh-md);border-color:var(--gold-line)}
.lp-stat::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--muted-2)}
.lp-stat.up::before{background:var(--success)}.lp-stat.down::before{background:var(--danger)}
.lp-stat.gold::before{background:var(--gold)}.lp-stat.ok::before{background:var(--success)}
.lp-stat-k{font-size:11px;font-weight:600;color:var(--muted)}
.lp-stat-v{font-size:18px;font-weight:700;letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums;line-height:1.15}
.lp-stat.up .lp-stat-v{color:var(--up)}.lp-stat.down .lp-stat-v{color:var(--danger)}
.lp-stat-s{font-size:10.5px;color:var(--muted-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.lp-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.lp-search{flex:1 1 260px;max-width:400px}
.lp-tf{display:inline-flex;align-items:center;gap:8px}
.lp-tf-lbl{font-size:11.5px;font-weight:600;color:var(--muted)}
.lp-toolbar .toolbar-right{margin-left:auto}

.lp-table-card{overflow:hidden}
.lp-scroll{overflow-x:auto;overflow-y:auto;max-height:none}
/* 🔴 13→9 sütun (API sütunları kaldırıldı, Fark+% birleşti, Son Güncelleme çıktı) → masaüstünde kırpılma yok */
.lp-table{width:100%;min-width:880px;border-collapse:collapse;table-layout:auto}
/* Dar masaüstünde (≤1450px) Kategori sütunu gizlenir — filtre zaten üstte var → yatay kaydırma gerekmez */
@media (max-width:1450px){ .lp-table .lp-cat{display:none}
  .lp-table thead th,.lp-table tbody td{padding-left:8px;padding-right:8px} }
/* Günlük hücresi: fark (₺) üstte, yüzde altta — tek sütunda iki bilgi */
.lp-daily{white-space:nowrap;line-height:1.35}
.lp-daily .lp-diff{display:block;font-weight:700}
.lp-daily .lp-pct{display:block;font-size:11.5px;opacity:.82}
.lp-daily.up{color:var(--up,#16A34A)} .lp-daily.down{color:var(--danger,#DC2626)}
.lp-table thead th{position:sticky;top:0;z-index:2;background:var(--card);text-align:left;font-size:11px;font-weight:700;color:var(--muted);
  text-transform:uppercase;letter-spacing:.04em;padding:12px 10px;border-bottom:1px solid var(--border);white-space:nowrap;user-select:none}
.lp-table thead th.num{text-align:right}
.lp-table thead th.sortable{cursor:pointer;transition:color .15s}
.lp-table thead th.sortable:hover{color:var(--text)}
.lp-table thead th.sort-asc .sort-ic::after{content:"▲";font-size:8px;margin-left:3px}
.lp-table thead th.sort-desc .sort-ic::after{content:"▼";font-size:8px;margin-left:3px}
.lp-table tbody td{padding:11px 10px;border-bottom:1px solid #F2EEE6;font-size:13px;vertical-align:middle;font-variant-numeric:tabular-nums}
.lp-table tbody td.num{text-align:right;white-space:nowrap}
.lp-table tbody tr{animation:rowIn .4s var(--ease) both;transition:background .15s var(--ease)}
.lp-table tbody tr:hover{background:linear-gradient(90deg,var(--gold-soft),transparent 70%)}
.lp-table tbody tr:hover .lp-actions{opacity:1;pointer-events:auto}
@keyframes rowIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
.lp-prod{min-width:190px}
.lp-prod{display:flex;align-items:center;gap:10px}
.lp-prodtx{min-width:0}
.lp-prod .prod-name{font-weight:600;font-size:13.5px;white-space:nowrap}
.lp-prod .prod-tag{font-size:11px;color:var(--muted);white-space:nowrap}
.lp-catchip{display:inline-block;padding:3px 9px;border-radius:7px;background:var(--ink-soft);color:var(--muted);font-size:11.5px;font-weight:600;white-space:nowrap}
.lp-table .td-store{font-weight:700;color:var(--gold-deep)}
.lp-table .td-store.sell{color:var(--gold-deep)}
.lp-diff.up,.lp-pct.up{color:var(--up);font-weight:700}
.lp-diff.down,.lp-pct.down{color:var(--danger);font-weight:700}
.lp-trend{width:130px}
.lp-spark{width:118px;height:30px;display:block}
.lp-spark-area{opacity:.16}
.lp-spark.up .lp-spark-area{fill:var(--success)}
.lp-spark.down .lp-spark-area{fill:var(--danger)}
.td-updated{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);white-space:nowrap}
.dot-live.up{background:var(--success)}.dot-live.down{background:var(--danger)}.dot-live.flat{background:var(--muted-2)}
.lp-act{width:1%}
.lp-actions{display:flex;gap:4px;justify-content:flex-end;opacity:0;pointer-events:none;transition:opacity .15s var(--ease)}
.lp-abtn{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;border:1px solid var(--border);background:var(--card);color:var(--muted);transition:.14s var(--ease);flex:0 0 auto}
.lp-abtn svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lp-abtn:hover{color:var(--gold-deep);border-color:var(--gold-line);background:var(--gold-soft);transform:translateY(-1px)}

.lp-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:56px 24px}
.lp-state-ic{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;background:var(--ink-soft);color:var(--muted-2)}
.lp-state-ic svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.lp-state h4{font-size:16px;font-weight:700}
.lp-state p{font-size:13px;color:var(--muted);max-width:420px}
.lp-state.warn .lp-state-ic{background:var(--warn-soft);color:var(--warn)}

/* Fiyat geçmişi modalı */
.lp-modal{position:fixed;inset:0;z-index:240;display:grid;place-items:center;padding:24px;background:rgba(42,35,28,.42);backdrop-filter:blur(3px);opacity:0;transition:opacity .3s var(--ease)}
.lp-modal.show{opacity:1}
.lp-modal-card{width:min(860px,96vw);max-height:92vh;overflow:auto;background:var(--card);border:1px solid var(--border);border-radius:var(--r-xl);box-shadow:var(--sh-lg);padding:clamp(20px,2.4vw,32px);transform:translateY(12px) scale(.98);transition:transform .3s var(--ease)}
.lp-modal.show .lp-modal-card{transform:none}
.lp-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:8px}
.lp-modal-title{display:flex;align-items:center;gap:14px}
.ph-name{font-family:var(--serif);font-size:22px;font-weight:600;letter-spacing:-.01em}
.ph-sub{font-size:12.5px;color:var(--muted);margin-top:2px}
.lp-modal-legend{display:flex;gap:16px;margin:4px 0 12px}
.ph-lg{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--muted)}
.ph-lg i{width:14px;height:3px;border-radius:2px;display:inline-block}
.ph-lg i.s{background:var(--gold-deep)}.ph-lg i.b{background:var(--muted-2)}
.lp-modal-chart{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:12px;margin-bottom:16px}
.phc{width:100%;height:auto;display:block}
.phc-grid{stroke:#F1ECE2;stroke-width:1}
.phc-yl{fill:var(--muted-2);font-size:10px;text-anchor:end;font-family:var(--font)}
.lp-modal-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ph-col{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);padding:13px 15px}
.ph-col h5{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--gold-deep);margin-bottom:8px}
.ph-stat{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 0;font-size:12.5px}
.ph-stat span{color:var(--muted)}.ph-stat b{font-weight:700;font-variant-numeric:tabular-nums}

/* Canlı Fiyatlar — duyarlı */
@media (max-width:1160px){ .lp-stats{grid-template-columns:repeat(2,minmax(0,1fr))} .lp-modal-stats{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (max-width:760px){
  .lp-head{gap:12px}.lp-hmeta{gap:12px}
  .lp-search{max-width:none;flex-basis:100%}
  .lp-modal-stats{grid-template-columns:1fr}
}
@media (max-width:520px){ .lp-stats{grid-template-columns:1fr} }

/* =========================================================
   ÜRÜN YÖNETİMİ 3.0 — kurumsal ürün masası (EsenProducts · products.js)
   Bloomberg/Shopify/Stripe kalitesinde: 14 kolon · satır-içi düzenleme ·
   sanal kaydırma (virtual scroll) · yapışkan başlık · yatay kaydırma.
   Renk kodu: API=gri · Mağaza=altın · Marj=yeşil · Hata=kırmızı · API Yok=turuncu.
   ========================================================= */
.pmx{display:flex;flex-direction:column;min-width:0}
/* --- Üst araç çubuğu --- */
.pmx-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.pmx-search{flex:1 1 260px;max-width:420px}
.pmx-tspacer{flex:1 1 auto}
.pmx-toolbar .btn-ic{width:15px;height:15px}

/* --- Tablo kabı + tek kaydırıcı (dikey+yatay) --- */
.pmx-tablecard{padding:0;overflow:hidden}
.pmx-viewport{position:relative;overflow:auto;max-height:calc(100vh - 220px);scrollbar-width:thin}
.pmx-viewport:focus{outline:none}
.pmx-grid{min-width:1100px}
.pmx-cols{display:grid;grid-template-columns:minmax(200px,1.7fr) minmax(146px,1fr) 92px 122px 122px 66px 70px 108px 166px;align-items:stretch}   /* İkon kolonu kaldırıldı → 48px ürün adına eklendi */

/* --- Yapışkan başlık satırı --- */
.pmx-headrow{position:sticky;top:0;z-index:3;background:linear-gradient(180deg,#FBF7F0,#F6F1E9);border-bottom:1px solid var(--border)}
.pmx-h{padding:11px 12px;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);white-space:nowrap;display:flex;align-items:center}
.pmx-h.c-num{justify-content:flex-end}
.pmx-h.c-marg.buy{color:var(--danger)}
.pmx-h.c-marg.sell{color:var(--up)}
.pmx-h.c-tv,.pmx-h.c-web,.pmx-h.c-mtype{justify-content:center}
.pmx-h.c-apip{gap:7px}
.pmx-hlive{display:inline-flex;align-items:center;gap:4px;font-size:9.5px;font-weight:700;color:var(--up);text-transform:none;letter-spacing:.02em}
.pmx-hlive i{width:6px;height:6px;border-radius:50%;background:#16A34A;box-shadow:0 0 0 3px rgba(22,163,74,.16)}

/* --- Sanal pencere + satırlar --- */
.pmx-sizer{position:relative}
.pmx-win{position:absolute;top:0;left:0;right:0;will-change:transform}
.pmx-row{border-bottom:1px solid var(--border);background:var(--card);transition:background .14s var(--ease)}
.pmx-row:hover{background:linear-gradient(90deg,var(--gold-soft),transparent 68%)}
.pmx-row.st-pasif{opacity:.6}
.pmx-row.st-apiyok{background:linear-gradient(90deg,var(--warn-soft),transparent 60%)}
.pmx-row.pmx-bump{animation:pmxBump .5s var(--ease)}
@keyframes pmxBump{0%{background:var(--gold-soft)}100%{background:var(--card)}}

.pmx-c{display:flex;flex-direction:column;justify-content:center;gap:2px;padding:0 12px;min-width:0;height:100%}
.pmx-c.c-mtype,.pmx-c.c-marg,.pmx-c.c-st,.pmx-c.c-tv,.pmx-c.c-web,.pmx-c.c-act{flex-direction:row;align-items:center}
.pmx-c.c-apip{gap:3px;justify-content:center}
.pmx-c.c-mtype,.pmx-c.c-tv,.pmx-c.c-web{justify-content:center}
.pmx-c.c-st{gap:8px}

/* İkon */

/* Ürün adı (satır-içi düzenlenebilir) */
.pmx-nm{font-weight:600;font-size:13.5px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;border-radius:5px;padding:1px 3px;margin:-1px -3px;cursor:text}
.pmx-nm:hover{background:var(--gold-soft)}
.pmx-nm:focus-visible{outline:2px solid var(--gold-line);outline-offset:1px}
.pmx-sub{font-size:11px;color:var(--muted-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.pmx-nameedit{width:100%;border:1px solid var(--gold-line);border-radius:6px;padding:3px 6px;font-size:13px;font-weight:600;color:var(--text);outline:none;box-shadow:0 0 0 3px var(--gold-soft)}

/* API Fiyatı — tek kolon (canlı): Alış + Satış satırları */
.pmx-apip{display:flex;align-items:baseline;justify-content:space-between;gap:10px;line-height:1.2}
.pmx-apip i{font-style:normal;font-size:9.5px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--muted-2)}
.pmx-apip b{font-size:12.5px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}
.pmx-apip.sell b{color:var(--gold-deep)}
.pmx-c.c-apip.miss .pmx-apip b{color:var(--warn)}

/* Marj Tipi — ₺/% segment (ürün geneli, iki tarafı birden) */
.pmx-seg{display:inline-flex;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:2px;gap:1px;flex:0 0 auto}
.pmx-seg-b{width:26px;height:24px;border:none;background:transparent;border-radius:6px;font-size:12px;font-weight:700;color:var(--muted);cursor:pointer;transition:.14s var(--ease);display:flex;align-items:center;justify-content:center;padding:0}
.pmx-seg-b:hover{color:var(--text)}
.pmx-seg-b.on{background:var(--card);color:var(--gold-deep);box-shadow:var(--sh-xs)}

/* Marj tutarı — alış kırmızı (−) · satış yeşil (+) */
.pmx-medwrap{display:inline-flex;align-items:center;gap:2px;border-radius:8px;padding:3px 8px;transition:.14s var(--ease);min-width:0}
.pmx-medwrap.sell{background:#F4FAF5;border:1px solid #CFE9D6}
.pmx-medwrap.buy{background:#FDF3F3;border:1px solid #F1CFCF}
.pmx-medwrap.sell:focus-within{border-color:var(--up);background:#fff;box-shadow:0 0 0 3px rgba(21,128,61,.14)}
.pmx-medwrap.buy:focus-within{border-color:var(--danger);background:#fff;box-shadow:0 0 0 3px rgba(220,38,38,.12)}
.pmx-msign{font-size:11px;font-weight:700}
.pmx-medwrap.sell .pmx-msign{color:var(--up)}
.pmx-medwrap.buy .pmx-msign{color:var(--danger)}
.pmx-medit{width:52px;border:none;background:transparent;text-align:right;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;outline:none;-moz-appearance:textfield}
.pmx-medwrap.sell .pmx-medit{color:var(--up)}
.pmx-medwrap.buy .pmx-medit{color:var(--danger)}
.pmx-medit::-webkit-outer-spin-button,.pmx-medit::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.pmx-munit{font-size:11px;color:var(--muted);font-weight:600}

/* Durum (aktif/pasif switch) etiketi */
.pmx-stlbl{font-size:11.5px;font-weight:600;color:var(--muted);white-space:nowrap}
.pmx-row:not(.st-pasif) .pmx-stlbl{color:var(--up)}

/* İşlemler */
.pmx-acts{display:flex;align-items:center;gap:2px}
.pmx-act{width:26px;height:26px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:.14s var(--ease);flex:0 0 auto}
.pmx-act svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pmx-act:hover{background:var(--gold-soft);color:var(--gold-deep);border-color:var(--gold-line)}
.pmx-act.danger:hover{background:var(--danger-soft);color:var(--danger);border-color:transparent}

/* Boş durum */
.pmx-empty{padding:56px 20px;text-align:center;color:var(--muted)}
.pmx-empty-ic{width:56px;height:56px;margin:0 auto 14px;border-radius:14px;background:var(--ink-soft);display:flex;align-items:center;justify-content:center}
.pmx-empty-ic svg{width:26px;height:26px;fill:none;stroke:var(--muted-2);stroke-width:1.6}
.pmx-empty h4{font-family:var(--serif);font-size:18px;color:var(--text);margin-bottom:4px}
.pmx-empty p{font-size:13px}

/* Paylaşılan mini-kontroller (Kâr Yönetimi yuvarlama seçicisi de kullanır) */
.select-wrap.xs{position:relative;display:inline-flex}
.select-wrap.xs select{appearance:none;-webkit-appearance:none;background:var(--surface);border:1px solid var(--border);border-radius:9px;padding:5px 26px 5px 10px;font-size:12px;font-weight:600;color:var(--text);cursor:pointer;transition:.15s var(--ease);max-width:100%}
.select-wrap.xs select:hover{border-color:var(--gold-line)}
.select-wrap.xs svg{position:absolute;right:7px;top:50%;transform:translateY(-50%);width:13px;height:13px;pointer-events:none;fill:none;stroke:var(--muted);stroke-width:2}
.switch.xs{display:inline-block;width:34px;height:19px;border-radius:999px;background:var(--border-strong);position:relative;transition:.2s var(--ease);flex:0 0 auto;cursor:pointer;border:none;padding:0}
.switch.xs span{position:absolute;top:2px;left:2px;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:var(--sh-xs);transition:.2s var(--ease)}
.switch.xs.is-on{background:linear-gradient(180deg,var(--gold),var(--gold-deep))}
.switch.xs.is-on span{transform:translateX(15px)}

@media (max-width:760px){ .pmx-search{max-width:none;flex-basis:100%} .pmx-tspacer{display:none;width:100%;flex-basis:100%} }
@media (prefers-reduced-motion:reduce){ .pmx-row,.pmx-row.pmx-bump{animation:none;transition:none} .pmx-win{will-change:auto} }

/* =========================================================
   KÂR YÖNETİMİ 2.0 — görsel fiyatlandırma motoru
   ========================================================= */
.pf-head-band{margin-bottom:16px}
.pf-head-tx h2{font-family:var(--serif);font-size:23px;font-weight:600;letter-spacing:-.01em}
.pf-head-tx p{font-size:13px;color:var(--muted);margin-top:3px;max-width:560px}
.pf-stats{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:11px;margin-bottom:8px}
.pf-stat{background:var(--card);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--sh-sm);padding:12px 14px;display:flex;flex-direction:column;gap:3px;position:relative;overflow:hidden;transition:.2s var(--ease);animation:cardIn .5s var(--ease) both}
.pf-stat:hover{transform:translateY(-2px);box-shadow:var(--sh-md);border-color:var(--gold-line)}
.pf-stat::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--muted-2)}
.pf-stat.gold::before{background:var(--gold)}.pf-stat.ok::before{background:var(--success)}
.pf-stat-k{font-size:10.5px;font-weight:600;color:var(--muted);line-height:1.25}
.pf-stat-v{font-size:18px;font-weight:700;letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums;line-height:1.1}

.pf-profiles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:20px}
.pf-profile{text-align:left;background:var(--card);border:1px solid var(--border);border-radius:var(--r);padding:12px 14px;display:flex;flex-direction:column;gap:3px;transition:.18s var(--ease);position:relative;overflow:hidden}
.pf-profile:hover{transform:translateY(-2px);box-shadow:var(--sh-md);border-color:var(--gold-line)}
.pf-profile.is-active{border-color:var(--gold);background:linear-gradient(180deg,#FCF6EB,#FBF3E6);box-shadow:var(--sh-sm)}
.pf-profile.is-active::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold-deep))}
.pf-profile-nm{font-weight:700;font-size:14px;color:var(--text)}
.pf-profile.is-active .pf-profile-nm{color:var(--gold-deep)}
.pf-profile-note{font-size:11px;color:var(--muted-2);line-height:1.3}

.pf-two{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(0,1fr);gap:18px;margin-bottom:20px}
.pf-panel{padding:20px 22px;box-shadow:var(--sh-soft)}
.pf-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}
.pf-panel-head h3{font-family:var(--serif);font-size:17px;font-weight:600}
.pf-hint{font-size:12px;color:var(--muted)}
.pf-bsel{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pf-modeswitch{display:inline-flex;background:var(--surface-2);border-radius:11px;padding:3px;gap:2px;border:1px solid var(--border)}
.pf-modeswitch .seg{padding:6px 12px;border-radius:8px;font-size:12.5px;font-weight:600;color:var(--muted);transition:.16s var(--ease)}
.pf-modeswitch .seg.is-active{background:var(--card);color:var(--text);box-shadow:var(--sh-xs)}

.pf-warn{display:flex;align-items:center;gap:9px;font-size:12.5px;font-weight:600;border-radius:11px;padding:9px 13px;margin-bottom:14px}
.pf-warn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.pf-warn.warn{background:var(--warn-soft);color:var(--warn)}
.pf-warn.down{background:var(--danger-soft);color:var(--danger)}

.fx-flow{display:flex;flex-direction:column;gap:13px;margin:6px 0 16px}
.fx-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.fx-chip{display:flex;flex-direction:column;gap:3px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:9px 13px;min-width:92px}
.fx-chip.base{background:#fff}
.fx-chip.result{background:linear-gradient(180deg,#FCF6EB,#FBF3E6);border-color:var(--gold-line)}
.fx-chip.edit{background:#fff;border-style:dashed;gap:4px}
.fx-k{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted-2)}
.fx-v{font-size:16px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text)}
.fx-chip.result.gold .fx-v b{color:var(--gold-deep)}
.fx-op{font-size:17px;font-weight:700;color:var(--gold-deep);flex:0 0 auto}

.pf-preview{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#FBF6EC;border:1px solid var(--gold-line);border-radius:14px;padding:13px 18px}
.pf-prev{display:flex;flex-direction:column;gap:2px}
.pf-prev span{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700}
.pf-prev b{font-size:17px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text)}
.pf-prev.gold b{color:var(--gold-deep)}
.pf-arw{color:var(--gold-deep);font-weight:700;opacity:.7}
.pf-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}

.pf-sim-in{margin-bottom:14px}
.pf-sim-in label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:6px}
.pf-sim-in .input-unit{display:flex;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:11px;padding:8px 14px;transition:.15s var(--ease)}
.pf-sim-in .input-unit:focus-within{border-color:var(--gold-line);background:#fff;box-shadow:0 0 0 3px var(--gold-soft)}
.pf-sim-in input{flex:1;border:none;background:transparent;outline:none;font-size:18px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text);width:100%}
.pf-sim-in .unit{font-size:14px;color:var(--muted);font-weight:600}
.pf-sim-out{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.pf-so{display:flex;flex-direction:column;gap:2px;background:var(--surface);border:1px solid var(--border);border-radius:11px;padding:10px 13px}
.pf-so span{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted-2)}
.pf-so b{font-size:16px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text)}
.pf-so b.up{color:var(--up)}
.pf-so.gold{background:linear-gradient(180deg,#FCF6EB,#FBF3E6);border-color:var(--gold-line)}
.pf-so.gold b{color:var(--gold-deep)}

.pf-charts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:8px}
.pf-chart{background:var(--card);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--sh-sm);padding:16px 18px}
.pf-chart.wide{grid-column:span 1}
.pf-chart-h{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.pf-chart-h span{font-size:12.5px;font-weight:700;color:var(--muted)}
.pf-chart-h b{font-size:22px;font-weight:700;letter-spacing:-.02em;color:var(--gold-deep);font-variant-numeric:tabular-nums}
.pf-chart-sub{font-size:11.5px;color:var(--muted-2);margin-top:3px}
.pf-bars{display:flex;flex-direction:column;gap:9px;margin-top:12px}
.pf-bar-row{display:flex;align-items:center;gap:10px}
.pf-bar-k{width:64px;flex:0 0 64px;font-size:11.5px;font-weight:600;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pf-bar-track{flex:1;height:8px;border-radius:999px;background:var(--surface-2);overflow:hidden}
.pf-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--gold),var(--gold-deep));transition:width .4s var(--ease)}
.pf-bar-v{width:74px;flex:0 0 74px;text-align:right;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text)}

@media (max-width:1160px){ .pf-stats{grid-template-columns:repeat(4,minmax(0,1fr))} .pf-profiles{grid-template-columns:repeat(3,minmax(0,1fr))} .pf-two{grid-template-columns:1fr} }
@media (max-width:760px){ .pf-stats{grid-template-columns:repeat(2,minmax(0,1fr))} .pf-profiles{grid-template-columns:repeat(2,minmax(0,1fr))} .pf-charts{grid-template-columns:1fr} .pf-sim-out{grid-template-columns:1fr} }
@media (max-width:460px){ .pf-stats{grid-template-columns:1fr} .pf-profiles{grid-template-columns:1fr} }

/* =========================================================
   API BAĞLANTI MERKEZİ 3.0 — tek kaynak monitoring dashboard
   ========================================================= */
.ac-status{display:flex;align-items:stretch;flex-wrap:wrap;gap:2px;background:var(--card);border:1px solid var(--border);border-radius:var(--r);box-shadow:var(--sh-sm);padding:6px;margin-bottom:18px;animation:cardIn .5s var(--ease) both}
.ac-seg{display:flex;align-items:center;gap:9px;padding:8px 14px;border-radius:9px;position:relative;flex:1 1 auto}
.ac-seg+.ac-seg::before{content:"";position:absolute;left:-1px;top:50%;transform:translateY(-50%);width:1px;height:24px;background:var(--border)}
.ac-dot{width:9px;height:9px;border-radius:50%;flex:0 0 9px;background:var(--muted-2)}
.ac-dot.ok{background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}
.ac-dot.gold{background:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}
.ac-dot.down{background:var(--danger);box-shadow:0 0 0 3px var(--danger-soft)}
.ac-seg-tx{display:flex;flex-direction:column;line-height:1.25;min-width:0}
.ac-seg-k{font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted-2);white-space:nowrap}
.ac-seg-v{font-size:13.5px;font-weight:700;color:var(--text);white-space:nowrap;font-variant-numeric:tabular-nums}

.ac-panel{padding:20px 22px;box-shadow:var(--sh-soft)}
.ac-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.ac-panel-head h3{font-family:var(--serif);font-size:17px;font-weight:600}
.ac-hint{font-size:12px;color:var(--muted)}
.ac-datasrc{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;border-radius:14px;background:var(--surface);border:1px solid var(--border);margin-bottom:4px}
.ac-ds-tx b{display:block;font-size:14px;font-weight:700;color:var(--text)}
.ac-ds-tx i{display:block;font-style:normal;font-size:12px;color:var(--muted);margin-top:2px;max-width:46ch}
.ac-badge{font-size:11.5px;font-weight:700;padding:4px 11px;border-radius:999px}
.ac-badge.ok{background:var(--success-soft);color:var(--up)}
.ac-badge.down{background:var(--danger-soft);color:var(--danger)}

/* ---- Çalışma Saatleri & API Durumu kartı ---- */
.ac-hours{margin-bottom:18px}
.ah-state{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:16px 18px;border-radius:14px;border:1px solid var(--border);background:var(--surface)}
.ah-state.open{border-color:#CFE9D6;background:linear-gradient(90deg,var(--success-soft),transparent 70%)}
.ah-state.closed{border-color:#F1CFCF;background:linear-gradient(90deg,var(--danger-soft),transparent 70%)}
.ah-state-main{display:flex;align-items:center;gap:14px;flex-wrap:wrap;min-width:0}
.ah-badge{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:800;letter-spacing:.04em;padding:8px 14px;border-radius:999px;white-space:nowrap}
.ah-badge.open{background:var(--success-soft);color:var(--up)}
.ah-badge.closed{background:var(--danger-soft);color:var(--danger)}
.ah-badge-dot{width:9px;height:9px;border-radius:50%;background:currentColor;flex:0 0 auto}
.ah-badge.open .ah-badge-dot{box-shadow:0 0 0 4px rgba(22,163,74,.18);animation:acPulse 2.4s ease-out infinite}
.ah-reason{font-size:13px;color:var(--muted);font-weight:600}
.ah-state-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ah-btn-stop{background:linear-gradient(180deg,#E4574C,#DC2626)!important;border-color:transparent!important;color:#fff!important;box-shadow:var(--sh-sm)}
.ah-sched{margin-top:16px;border-top:1px solid var(--border);padding-top:16px}
.ah-sched-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.ah-sched-t{font-size:14px;font-weight:700;color:var(--text)}
.ah-sched-s{font-size:12px;color:var(--muted);margin-top:2px}
.ah-sched-body{margin-top:14px;transition:.2s var(--ease)}
.ah-sched-body.is-off{opacity:.45;pointer-events:none;filter:grayscale(.3)}
.ah-days{display:flex;gap:7px;flex-wrap:wrap}
.ah-day{min-width:44px;padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:var(--card);color:var(--muted);font-size:12.5px;font-weight:700;cursor:pointer;transition:.14s var(--ease)}
.ah-day:hover{border-color:var(--gold-line);color:var(--text)}
.ah-day.on{background:linear-gradient(180deg,var(--gold),var(--gold-deep));color:var(--gold-ink);border-color:transparent}

/* Sade 2 kart düzeni (API Sağlığı · Bağlantı İşlemleri) */
.ac-two{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:18px;align-items:start}
.ac-two .af-sub-label{margin:16px 0 9px}
.ac-two .af-sub-label:first-of-type{margin-top:4px}
.ac-health-body{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.ac-ring-wrap{position:relative;width:132px;height:132px;flex:0 0 132px}
.ac-ring{width:100%;height:100%;transform:rotate(-90deg)}
.ac-ring-bg{fill:none;stroke:#F1ECE2;stroke-width:9}
.ac-ring-fg{fill:none;stroke:var(--gold-deep);stroke-width:9;stroke-linecap:round;transition:stroke-dasharray .7s var(--ease)}
.ac-ring-num{position:absolute;inset:0;display:grid;place-content:center;text-align:center;gap:1px}
.ac-ring-num b{font-size:23px;font-weight:800;color:var(--gold-deep);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.ac-ring-num span{font-size:10px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.ac-health-grid{flex:1;min-width:220px;display:grid;grid-template-columns:1fr 1fr;gap:2px 22px}
.ac-hrow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid #F2EEE6;font-size:12.5px;color:var(--muted)}
.ac-hrow b{font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}
.ac-mini{font-size:11.5px;font-weight:700;padding:2px 8px;border-radius:7px}
.ac-mini.ok{background:var(--success-soft);color:var(--up)}
.ac-mini.down{background:var(--danger-soft);color:var(--danger)}
.ac-up{color:var(--up)}.ac-down{color:var(--danger)}.ac-muted{color:var(--muted-2)}

/* acPulse — CANLI: .ah-badge-dot (API AÇIK) ve .tv-offline-dot kullanır */
@keyframes acPulse{0%{transform:scale(.55);opacity:.55}100%{transform:scale(1.55);opacity:0}}

.ac-controls{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:18px;margin-bottom:8px}
.ac-intervals{display:grid;grid-template-columns:repeat(auto-fit,minmax(52px,1fr));gap:8px}
.ac-int{display:flex;flex-direction:column;align-items:center;gap:1px;padding:12px 4px;border-radius:12px;border:1px solid var(--border);background:var(--surface);font-size:17px;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;transition:.16s var(--ease)}
.ac-int span{font-size:10px;font-weight:700;color:var(--muted-2);text-transform:uppercase}
.ac-int:hover{border-color:var(--gold-line);transform:translateY(-2px)}
.ac-int.is-active{background:linear-gradient(180deg,var(--gold),var(--gold-deep));color:var(--gold-ink);border-color:transparent}
.ac-int.is-active span{color:rgba(58,44,8,.7)}
.ac-btns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.ac-btn{display:flex;align-items:center;gap:10px;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:11px;padding:11px 13px;font-size:12.5px;font-weight:600;color:var(--text);transition:.16s var(--ease)}
.ac-btn:hover{background:#fff;border-color:var(--gold-line);transform:translateY(-1px);box-shadow:var(--sh-sm)}
.ac-btn.is-loading{opacity:.6;pointer-events:none}
.ac-btn-ic{width:32px;height:32px;flex:0 0 32px;border-radius:9px;display:grid;place-items:center;background:var(--gold-soft);color:var(--gold-deep)}
.ac-btn-ic svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.ac-btn.is-loading .ac-btn-ic svg{animation:spin .7s linear infinite}

@media (max-width:1160px){
  .ac-two{grid-template-columns:1fr}.ac-controls{grid-template-columns:1fr}
}
@media (max-width:640px){
  .ac-intervals{grid-template-columns:repeat(4,minmax(0,1fr))}.ac-btns{grid-template-columns:1fr}
  .ac-health-grid{grid-template-columns:1fr}
}

/* =========================================================
   KÂR YÖNETİMİ · fiyat düzenleme paneli (operasyon ekranı)
   ========================================================= */
/* 🔴 max-width 1240 geniş ekranda sütunları daraltıp sağ-altta 148px boşluk bırakıyordu → 1560 + daha dengeli oran */
.pe-wrap{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(0,1fr);gap:28px;max-width:1560px;margin:0 auto;align-items:start}
.pe-main{display:flex;flex-direction:column;gap:22px;animation:cardIn .5s var(--ease) both}
.pe-select label{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.select-wrap.lg{position:relative;display:block}
.select-wrap.lg select{width:100%;appearance:none;-webkit-appearance:none;background:var(--card);border:1px solid var(--border);border-radius:16px;padding:16px 46px 16px 20px;font-size:16px;font-weight:600;color:var(--text);cursor:pointer;box-shadow:var(--sh-sm);transition:.16s var(--ease)}
.select-wrap.lg select:hover{border-color:var(--gold-line)}
.select-wrap.lg select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft)}
.select-wrap.lg svg{position:absolute;right:18px;top:50%;transform:translateY(-50%);width:20px;height:20px;pointer-events:none;fill:none;stroke:var(--muted);stroke-width:2}

/* HAS bazlı fiyat modu paneli (Kâr Yönetimi) */
.pe-has{padding:18px 22px;border-radius:20px;box-shadow:var(--sh-soft);background:linear-gradient(180deg,#fff,#FDFBF6)}
.pe-has.on{border:1px solid var(--gold-line);background:linear-gradient(180deg,#FFFDF9,#FBF3E4)}
.pe-has-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.pe-has-t{font-size:15px;font-weight:700;letter-spacing:-.01em}
.pe-has-s{font-size:12.5px;color:var(--muted);margin-top:3px;max-width:52ch}
.pe-has-body{margin-top:16px;display:flex;flex-direction:column;gap:14px}
.pe-has-opts{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.pe-has-opts .field.xs{max-width:130px;margin-bottom:0}
.pe-has-opts .field.xs .pe-input{padding:9px 14px}
/* HAS FORMÜLÜ satırları — [ALIŞ] HAS × [katsayı] + [ekleme][₺|%] = canlı sonuç (admin formülü kendisi yazar) */
.pe-haslive{font-size:12.5px;color:var(--muted);background:rgba(255,255,255,.72);border:1px solid var(--gold-line);border-radius:12px;padding:9px 14px}
.pe-haslive b{color:var(--gold-deep);font-variant-numeric:tabular-nums}
.pe-haslive-note{color:var(--muted-2);font-size:11.5px}
.pe-frow{display:flex;align-items:center;gap:9px;flex-wrap:wrap;background:rgba(255,255,255,.6);border:1px solid var(--border);border-radius:14px;padding:10px 12px}
.pe-frow-tag{font-size:10.5px;font-weight:800;letter-spacing:.07em;padding:5px 10px;border-radius:8px;flex:0 0 auto}
.pe-frow-tag.buy{background:var(--danger-soft);color:var(--danger)}
.pe-frow-tag.sell{background:var(--success-soft);color:var(--up)}
.pe-fop{font-size:13px;font-weight:700;color:var(--muted);flex:0 0 auto}
.pe-input.pe-fin{padding:8px 12px;flex:0 1 128px;min-width:88px}
.pe-input.pe-fin.sm{flex:0 1 96px;min-width:68px}
.pe-fin input{width:100%;min-width:0;border:none;background:transparent;outline:none;font-size:15px;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}
.pe-mtoggle.xs{align-self:center}
.pe-mtoggle.xs .seg{padding:6px 11px;font-size:12px}
.pe-fres{margin-left:auto;font-size:12px;color:var(--muted-2);white-space:nowrap;flex:0 0 auto}
.pe-fres b{font-size:15.5px;font-weight:800;color:var(--gold-deep);font-variant-numeric:tabular-nums}
/* katsayıya HAS fiyatı yazılmış (1000+) → sarı uyarı kartı */
.pe-fwarn{font-size:12.5px;line-height:1.5;color:#7a5200;background:#FFF6E3;border:1px solid #EFD9A6;border-radius:12px;padding:10px 14px}
.pe-fwarn b{color:#5e3f00}
/* Kilitli HAS rozeti — API'den gelir, düzenlenemez (input DEĞİL, salt-okunur çip) */
.pe-flock{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--muted-2);background:var(--bg);border:1px dashed var(--border);border-radius:10px;padding:7px 11px;white-space:nowrap;flex:0 0 auto}
.pe-flock b{font-size:14px;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums}
/* ============ SADE KÂR PANELİ (pro görünüm — açıklamalar ⓘ altında) ============ */
.pe-has-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.pe-src-chip{display:inline-flex;align-items:center;font-size:10.5px;font-weight:800;letter-spacing:.04em;color:var(--gold-deep);background:var(--gold-soft);border:1px solid var(--gold-line);border-radius:999px;padding:3px 10px;margin-left:8px;vertical-align:2px}
.pe-help-btn{flex:0 0 auto;font:inherit;font-size:11.5px;font-weight:700;color:var(--muted-2);background:transparent;border:1px solid var(--border);border-radius:999px;padding:6px 13px;cursor:pointer;transition:.15s;line-height:1}
.pe-help-btn:hover{color:var(--text);border-color:var(--gold-line);background:var(--gold-soft)}
.pe-help-btn.is-open{color:var(--gold-deep);border-color:var(--gold-line);background:var(--gold-soft)}
/* başlık içindeki küçük ⓘ (Cihazlar, Şifre, TV bandı, şerit) */
h2 > .pe-help-btn{padding:3px 9px;font-size:11px;margin-left:8px;vertical-align:2px}
.section-head.tight{display:flex;align-items:center;justify-content:space-between;gap:12px}
.sh-right{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.team-head .pe-help{margin-top:8px;max-width:640px}
.pe-help{margin-top:12px;padding:13px 16px;background:var(--bg);border:1px solid var(--border);border-radius:12px}
.pe-help p{margin:0 0 8px;font-size:12.5px;line-height:1.6;color:var(--muted-2)}
.pe-help p:last-child{margin-bottom:0}
.pe-help b{color:var(--text);font-weight:700}
.pe-ccnote{margin-top:8px;font-size:12px;font-weight:700;color:var(--text)}
.pe-ccnote b{color:var(--gold-deep);font-variant-numeric:tabular-nums}
.pe-ccnote span{font-weight:600;color:var(--muted-2)}
.pe-fmakas b{margin-left:6px}

/* Değişim yokken nötr rozet (yeşil "+%0,00" yanıltıcıydı) */
.trend.flat{color:var(--muted-2);background:var(--bg);border:1px solid var(--border)}
.ms-badge.info{color:var(--muted-2);background:var(--bg)}

/* 🔴 Ters makas uyarıları (alış ≥ satış) */
.pe-fmakas.bad{color:#B91C1C;background:#FEF2F2;border-color:#FECACA}
.pe-fwarn.danger{color:#7F1D1D;background:#FEF2F2;border-color:#FECACA}
.pe-fwarn.danger b{color:#991B1B}
.pmx-warn{margin-left:6px;font-size:12px;color:#B91C1C;cursor:help}

/* ============ ⏰ DUYURU ŞERİDİ ZAMANLAMASI ============ */
.tk-sched{border:1px solid var(--border);border-radius:14px;padding:14px 16px;background:rgba(255,255,255,.55);margin-bottom:14px}
.tk-sched-head{display:flex;align-items:center;justify-content:space-between;gap:14px}
.tk-sched-t{font-size:13.5px;font-weight:800}
.tk-sched-s{font-size:11.5px;color:var(--muted-2);line-height:1.5;margin-top:2px}
.tk-sched-body{margin-top:14px;padding-top:14px;border-top:1px dashed var(--border)}
.tk-sched-live{margin-top:12px;font-size:12px;font-weight:700}
.tk-sl{display:inline-flex;align-items:center;gap:6px;color:var(--muted-2);background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:6px 13px}
.tk-sl.on{color:#15803D;background:#F0FDF4;border-color:#BBF7D0}
.tk-prof-ic{margin-left:4px}

/* ============ MOBİL FİYAT EKRANI (TV'nin telefon hali — sadece fiyat) ============ */
/* 🔴 Telefon kartı tek başına ortadaydı → iki yanda 806px boşluk; yanına QR + bilgi paneli eklendi */
/* 🔴 1920'de sabit 470+360 sütun ortalanıp 693px boş bırakıyordu → sağ panel kalan genişliği DOLDURUR */
.mtv-wrap{display:grid;grid-template-columns:minmax(0,470px) minmax(0,1fr);gap:22px;align-items:start}
.mtv-side{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;align-content:start;position:sticky;top:20px}
.mtv-info{padding:20px 22px}
.mtv-info-h{font-size:13.5px;font-weight:800;margin-bottom:12px}
.mtv-info-p{font-size:12px;color:var(--muted-2);line-height:1.6;margin:12px 0 8px}
.mtv-qr{width:150px;height:150px;display:grid;place-items:center;background:#fff;border:1px solid var(--border);border-radius:14px;padding:10px;margin:0 auto}
.mtv-qr svg{width:100%;height:100%}
.mtv-url{display:block;font-size:11.5px;font-family:ui-monospace,monospace;color:var(--gold-deep);background:var(--bg);border:1px solid var(--border);border-radius:9px;padding:8px 11px;word-break:break-all}
.mtv-list{margin:0;padding-left:18px;font-size:12.5px;line-height:1.85;color:var(--muted-2)}
.mtv-list b{color:var(--text)}
@media (max-width:1000px){ .mtv-wrap{grid-template-columns:minmax(0,470px);justify-content:center} .mtv-side{position:static;grid-template-columns:1fr} }
.mtv-phone{width:100%;max-width:470px;padding:0;overflow:hidden;container-type:inline-size}   /* cqw font ölçeği için (dar kolonda büyük fiyat sığar) */
.mtv-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(255,255,255,.65),transparent)}
.mtv-brand{display:flex;align-items:center;gap:8px;font-size:14.5px}
.mtv-brand b{font-weight:800}
.mtv-upd{font-size:11px;color:var(--muted-2);white-space:nowrap}
.mtv-upd b{color:var(--text)}
.mtv-cols{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(0,1.08fr);gap:8px;padding:8px 16px;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2);border-bottom:1px solid var(--border)}
.mtv-cols span:nth-child(2),.mtv-cols span:nth-child(3){text-align:right}
.mtv-row{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(0,1.08fr);gap:8px;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border);border-left:3px solid transparent}
.mtv-row.up{border-left-color:var(--up,#16A34A)}
.mtv-row.down{border-left-color:var(--danger,#DC2626)}
.mtv-row:last-child{border-bottom:none}
.mtv-name{min-width:0}
.mtv-name b{display:block;font-size:14.5px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mtv-name i{display:block;font-style:normal;font-size:10.5px;color:var(--muted-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mtv-p{text-align:right;min-width:0}
.mtv-p b{font-size:clamp(11.5px,4.3cqw,16.5px);font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}   /* kart genişliğiyle ölçeklenir — 142.027,00 bile kırpılmaz */
.mtv-p i{font-style:normal;font-size:10.5px;color:var(--muted-2);margin-left:2px}
.mtv-p.buy b{color:var(--text)}
.mtv-p.sell b{color:var(--gold-deep)}
.mtv-cc{display:block;font-size:9.5px;color:var(--muted-2);white-space:nowrap}
.mtv-note{padding:11px 16px;font-size:11px;color:var(--muted-2);background:var(--bg);border-top:1px solid var(--border);text-align:center}
.mtv-empty{padding:32px 16px;text-align:center;font-size:13px;color:var(--muted-2)}
@media (max-width:640px){ .mtv-phone{max-width:none;border-radius:14px} }

/* ============ CİHAZ LİMİTİ (7 cihaz · 8. engellenir) ============ */
.dev-count{font-size:12px;font-weight:800;color:var(--gold-deep);background:var(--gold-soft);border:1px solid var(--gold-line);border-radius:999px;padding:4px 12px}
.dev-count.full{color:#B91C1C;background:#FEF2F2;border-color:#FECACA}
.dev-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.dev-row{display:flex;align-items:center;gap:11px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.55)}
.dev-row.me{border-color:var(--gold-line);background:var(--gold-soft)}
.dev-ic{flex:0 0 34px;height:34px;display:flex;align-items:center;justify-content:center;border-radius:9px;background:var(--bg);border:1px solid var(--border)}
.dev-ic svg{width:17px;height:17px;fill:none;stroke:var(--muted-2);stroke-width:1.7}
.dev-tx{flex:1;min-width:0}
.dev-tx b{display:block;font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dev-tx i{display:block;font-style:normal;font-size:11px;color:var(--muted-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dev-me{font-size:9.5px;font-weight:800;letter-spacing:.05em;color:var(--gold-deep);background:#fff;border:1px solid var(--gold-line);border-radius:999px;padding:2px 8px;margin-left:6px;vertical-align:1px}
.dev-rm{flex:0 0 auto}
/* aynı anda aktiflik rozetleri: 🟢 Aktif (yer işgal ediyor) · gri Çevrimdışı (sayılmaz) */
.dev-st{flex:0 0 auto;font-size:10px;font-weight:800;letter-spacing:.04em;color:var(--muted-2);background:var(--bg);border:1px solid var(--border);border-radius:999px;padding:4px 10px;white-space:nowrap}
.dev-st.on{color:#15803D;background:#F0FDF4;border-color:#BBF7D0}
.dev-row.off{opacity:.62}

/* Engel ekranı — 8. cihaz: uygulama kurulmaz, yalnız bu görünür */
.devblock{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(1200px 600px at 50% -10%,#F5EDDE,#EFE7D8);padding:24px;z-index:9999}
.devblock-in{max-width:520px;text-align:center;background:rgba(255,255,255,.82);border:1px solid #E5DCC8;border-radius:22px;padding:38px 34px;box-shadow:0 24px 70px rgba(61,56,47,.16)}
.devblock-logo img{height:64px;object-fit:contain}
.devblock-ic{width:58px;height:58px;margin:18px auto 6px;display:flex;align-items:center;justify-content:center;border-radius:16px;background:#FEF2F2;border:1px solid #FECACA}
.devblock-ic svg{width:26px;height:26px;fill:none;stroke:#B91C1C;stroke-width:1.8;stroke-linecap:round}
.devblock h1{font-family:'Fraunces',serif;font-size:26px;margin:8px 0 10px;color:#3D382F}
.devblock p{font-size:14px;line-height:1.65;color:#6B6455;margin:0 0 10px}
.devblock-sub{font-size:12.5px !important;color:#8A8272 !important}
/* bekleme şeridi — yer açılınca sayfa kendiliğinden girer */
.devblock-wait{display:inline-flex;align-items:center;gap:9px;margin-top:14px;font-size:12.5px;font-weight:700;color:#7a5200;background:#FFF6E3;border:1px solid #EFD9A6;border-radius:999px;padding:9px 18px}
.devblock-spin{width:13px;height:13px;border-radius:50%;border:2px solid #EFD9A6;border-top-color:#B8860B;animation:devspin 1s linear infinite}
@keyframes devspin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){ .devblock-spin{animation:none} }

/* Hero grafik "veri toplanıyor" durumu — geçmiş boş başlar, gerçek tiklerle dolunca otomatik grafiğe döner */
/* 🔴 250px yerine 130px — ilk 10 sn'de dev boş kutu görünmesin (grafik gelince zaten büyür) */
.hc-wait{min-height:130px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:13px;font-weight:600;color:var(--muted-2);background:linear-gradient(180deg,rgba(255,255,255,.5),transparent);border:1px dashed var(--border);border-radius:14px;text-align:center;padding:18px}
/* 🔴 API Yönetimi: iki kart farklı yükseklikteydi (solda ~180px boşluk) → eşitlendi */
.ac-two{align-items:stretch}
.ac-two > .ac-panel{display:flex;flex-direction:column}
.ac-two > .ac-panel > .ac-health-body{flex:1}
/* MAKAS şeridi — Satış − Alış = alım-satım kârı (katsayı yazarken canlı) */
.pe-fmakas{display:flex;align-items:center;gap:7px;flex-wrap:wrap;font-size:11.5px;font-weight:800;letter-spacing:.05em;color:var(--gold-deep);background:var(--gold-soft);border:1px solid var(--gold-line);border-radius:12px;padding:9px 14px}
.pe-fmakas b{font-size:15px;font-variant-numeric:tabular-nums}
.pe-fmakas span{font-weight:600;letter-spacing:0;color:var(--muted-2)}
/* Ürün tablosu: formül/kilit rozeti (marj hücresi düzenlenemez durumda) */
.pmx-flabel{font-size:11px;font-weight:700;letter-spacing:.03em;color:var(--muted-2);background:var(--bg);border:1px dashed var(--border);border-radius:8px;padding:4px 9px;white-space:nowrap}
@media (max-width:560px){ .pe-fres{margin-left:0;width:100%} }
.pe-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
/* 🔴 ALTIN üründe ALIŞ kartı gizli (tek katman) → kalan K.Kartı kartı yarım kalıp sağda boşluk bırakıyordu.
   :has ile "gizli kart varsa tek sütun" — kart tam genişlik kaplar, boşluk kalmaz. */
.pe-cards:has(> .pe-card[hidden]){grid-template-columns:minmax(0,1fr)}
.pe-card{min-width:0;padding:24px;border-radius:24px;box-shadow:var(--sh-soft);display:flex;flex-direction:column;gap:16px;background:linear-gradient(180deg,#fff,#FDFBF6)}
.pe-card-h{font-size:12px;font-weight:800;letter-spacing:.1em;color:var(--muted);display:flex;align-items:center;gap:10px}
.pe-dot{width:10px;height:10px;border-radius:50%;flex:0 0 10px}
.pe-dot.buy{background:var(--danger);box-shadow:0 0 0 3px var(--danger-soft)}
.pe-dot.sell{background:var(--success);box-shadow:0 0 0 3px var(--success-soft)}
.pe-mtoggle{display:inline-flex;background:var(--surface-2);border-radius:12px;padding:3px;gap:3px;border:1px solid var(--border);align-self:flex-start}
.pe-mtoggle .seg{padding:8px 22px;border-radius:9px;font-size:14px;font-weight:700;color:var(--muted);transition:.16s var(--ease)}
.pe-mtoggle .seg.is-active{background:var(--card);color:var(--gold-deep);box-shadow:var(--sh-xs)}
.pe-input{display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:14px 20px;transition:.16s var(--ease)}
.pe-input:focus-within{border-color:var(--gold);background:#fff;box-shadow:0 0 0 3px var(--gold-soft)}
.pe-medit{flex:1;min-width:0;border:none;background:transparent;outline:none;font-size:34px;font-weight:800;letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums}
.pe-unit{font-size:24px;color:var(--muted);font-weight:700;flex:0 0 auto}

.pe-preview-card{padding:24px 26px;border-radius:24px;box-shadow:var(--sh-soft)}
.pe-prev-title{font-size:12px;font-weight:800;letter-spacing:.1em;color:var(--gold-deep);display:flex;align-items:center;gap:9px;margin-bottom:20px}
.pe-prev-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.pe-prev-flow{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:18px 14px}
.pe-prev-row{display:flex;flex-direction:column;gap:2px}
.pe-prev-row span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted-2)}
.pe-prev-row b{font-size:17px;font-weight:700;color:var(--muted);font-variant-numeric:tabular-nums}
.pe-prev-arw{font-size:11.5px;font-weight:600;color:var(--gold-deep)}
.pe-prev-res{display:flex;flex-direction:column;gap:2px;width:100%;padding-top:12px;border-top:1px dashed var(--border)}
.pe-prev-res span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.pe-prev-res b{font-size:28px;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.pe-prev-res.buy b{color:var(--danger)}
.pe-prev-res.sell b{color:var(--up)}
/* KPI şeridi: 5 kart (Makas/Alış/Satış/K.Kartı/Kaynak) — dar panelde SIKIŞMAK yerine 2 satıra sarar; değer tek satırda kalır */
.pe-prev-foot{display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:10px;margin-top:18px}
.pe-kpi{display:flex;flex-direction:column;align-items:center;gap:3px;background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:13px 10px;min-width:0}
.pe-kpi span{font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--muted);white-space:nowrap}
.pe-kpi b{font-size:clamp(15px,1.4vw,21px);font-weight:800;letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}
.pe-kpi.gold{background:linear-gradient(180deg,#FCF6EB,#FBF3E6);border-color:var(--gold-line)}
.pe-kpi.gold b{color:var(--gold-deep)}

.pe-save{width:100%;padding:19px;border-radius:18px;border:none;background:linear-gradient(180deg,var(--gold),var(--gold-deep));color:var(--gold-ink);font-size:15px;font-weight:800;letter-spacing:.05em;box-shadow:var(--sh-md),inset 0 1px 0 rgba(255,255,255,.25);cursor:pointer;transition:.18s var(--ease)}
.pe-save:hover{filter:brightness(1.05);transform:translateY(-2px);box-shadow:var(--sh-lg),inset 0 1px 0 rgba(255,255,255,.25)}
.pe-save:active{transform:translateY(0)}
.pe-save.is-dirty{animation:peDirty 1.6s ease-in-out infinite}
@keyframes peDirty{0%,100%{box-shadow:var(--sh-md),0 0 0 0 rgba(200,162,77,.4)}50%{box-shadow:var(--sh-md),0 0 0 8px rgba(200,162,77,0)}}

.pe-side{position:sticky;top:20px;display:flex;flex-direction:column;gap:18px}   /* TV önizleme + canlı akış alt alta (sağ sütun boş kalmaz) */
.pe-tv{background:var(--card);border:1px solid var(--border);border-radius:24px;box-shadow:var(--sh-soft);padding:18px;animation:cardIn .55s var(--ease) both}
.pe-tv-head{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.pe-tv-screen{border-radius:20px;overflow:hidden;padding:clamp(20px,3vw,34px);background:linear-gradient(160deg,rgba(255,252,244,.34),rgba(244,236,222,.2)),#F2E8D6 url("../../esen.png") center/cover no-repeat;box-shadow:inset 0 0 0 1px rgba(200,162,77,.14)}
.pe-tvgrid{display:block}
/* TV artık satır-tabanlı tablo → önizlemede tek satır; container-type:size için KESİN yükseklik şart (yoksa 0'a çöker).
   Dar yan panel 5 tam fiyat sütununu FİZİKSEL olarak taşımaz → TV'nin dar-ekran davranışı gibi K.Kartı +
   Değişim burada gizli (değerleri hemen alttaki KPI kartlarında); kalan 3 kolon cqw sınırıyla asla çakışmaz. */
.pe-tvgrid .tvrow{height:clamp(60px,7vw,88px);min-height:0;flex:none;border-radius:14px;animation:none;
  grid-template-columns:minmax(0,1.8fr) minmax(0,1fr) minmax(0,1fr);gap:clamp(7px,1.2vw,14px)}   /* 3 kolon: Ürün·Alış·Satış (ad ellipsis'li → payını fiyatlara bırakır) */
.pe-tvgrid .tvr-cc,.pe-tvgrid .tvr-chg{display:none}
.pe-tvgrid .tvr-tx b{font-size:clamp(11px,min(24cqh,4.4cqw),17px)}
.pe-tvgrid .tvr-tx i{font-size:clamp(8px,14cqh,12px)}
.pe-tvgrid .tvr-buy b,.pe-tvgrid .tvr-sell b{font-size:clamp(10px,min(32cqh,3.6cqw),24px)}   /* taban 10px: 284px'lik en dar panelde bile 10 haneli fiyat sütuna sığar (ölçümle kalibre) */

/* 📺 Mini-TV CANLI ÖNİZLEME (Ayarlar → TV Ekranı) — gerçek TV'nin 1280×720 sabit canvas'ta class-kopyası + transform:scale (WYSIWYG) */
/* TV Ekranı ayarları: SOL yapışkan mini-TV önizleme · SAĞ ayar kontrolleri (yan yana) */
.tvshow-split{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.1fr);gap:clamp(18px,2vw,34px);align-items:start;margin-top:8px}
.tvshow-preview{position:sticky;top:90px}
.tvshow-config>.af-sub-label:first-child{margin-top:0}
@media(max-width:1024px){ .tvshow-split{grid-template-columns:1fr;gap:14px} .tvshow-preview{position:static} }
.tvmini-wrap{margin:0 0 4px}
/* 🔴 mini-TV kısa, sağdaki ayar sütunu uzun → 1199px boşluk kalıyordu; yapışkan yapıldı (kaydırırken yanda kalır) */
@media (min-width:1000px){ .tvshow-preview{position:sticky;top:20px;align-self:start} }
.tvmini-label{display:flex;align-items:center;gap:7px;font-size:11.5px;font-weight:700;letter-spacing:.03em;color:var(--muted);margin-bottom:9px}
.tvmini-label .live-dot{background:var(--up)}
.tvmini-frame{position:relative;width:100%;max-width:760px;aspect-ratio:16/9;border-radius:18px;overflow:hidden;border:1px solid var(--gold-line);box-shadow:var(--sh-md);background:#F2E8D6}
.tvmini-canvas{position:absolute;top:0;left:0;width:1280px;height:720px;transform:scale(var(--mini-k,.42));transform-origin:top left;pointer-events:none;user-select:none}
.tvmini-tv{position:relative;width:1280px;height:720px;display:flex;flex-direction:column;overflow:hidden;color:var(--text);background:radial-gradient(1100px 640px at 78% -8%,rgba(200,162,77,.10),transparent 60%),linear-gradient(180deg,rgba(250,244,233,.24),rgba(242,232,216,.16)),#F2E8D6 url("../../esen.png") center/cover no-repeat}
.tvmini-tv .tv-inner{max-width:none;margin:0}
/* perf: mini'de giriş animasyonları + dekor + kontroller kapalı */
.tvmini .tvrow{animation:none!important}
.tvmini .tv-controls,.tvmini .tv-deco,.tvmini .tv-notify{display:none!important}
.pe-tv-note{font-size:11.5px;color:var(--muted-2);text-align:center;margin-top:14px;line-height:1.4}

.pe-round{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:4px;border-top:1px solid #F2EEE6;margin-top:2px}
.pe-round-lbl{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted-2)}
.pe-round .select-wrap.xs select{padding:7px 28px 7px 12px;font-size:12.5px}
@media (max-width:980px){ .pe-wrap{grid-template-columns:1fr}.pe-side{position:static} }
@media (max-width:520px){ .pe-cards{grid-template-columns:1fr}.pe-prev-grid{grid-template-columns:1fr} }

/* ---- TV offline / "Sinyal Bekleniyor" rozeti (tv-engine.js) ---- */
.tv-offline{position:absolute;top:clamp(16px,2.2vh,28px);left:50%;transform:translateX(-50%);z-index:7;display:inline-flex;align-items:center;gap:10px;
  font-size:clamp(12px,1.1vw,15px);font-weight:700;letter-spacing:.01em;color:#B45309;background:rgba(255,251,235,.94);border:1px solid rgba(180,83,9,.30);
  padding:9px 18px;border-radius:999px;box-shadow:var(--sh-md);backdrop-filter:blur(8px);animation:tvOffIn .4s var(--ease)}
.tv-offline-dot{width:9px;height:9px;border-radius:50%;background:#B45309;position:relative}
.tv-offline-dot::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #B45309;animation:acPulse 1.8s ease-out infinite}
@keyframes tvOffIn{from{opacity:0;transform:translateX(-50%) translateY(-8px)}to{opacity:1;transform:translateX(-50%)}}
.tv-is-offline .tvrow{filter:saturate(.9)}

/* ---- Fiyatı ayarlanmamış ürün rozeti (TV/web'e çıkmaz) ---- */
.pmx-c.c-mtype.warn{color:var(--warn);background:var(--warn-soft);border-radius:var(--r-xs);font-weight:800}

/* ---- TV altbilgisi: SİMÜLASYON modu açıkça belli olsun (vitrinde uydurma fiyat "canlı" diye sunulmasın) ---- */
.tv-live.is-sim{color:#B45309;font-weight:800;letter-spacing:.02em}
.tv-live.is-sim .live-dot{background:#B45309;box-shadow:0 0 0 3px rgba(180,83,9,.20)}
.tv-live.is-sim .live-dot::after{border-color:#B45309}

/* ---- ürün modalı: bilgi notu · kategori uyarısı · API ipucu ---- */
.pf-note{margin:0 0 15px;padding:11px 14px;border-radius:var(--r-sm);background:var(--gold-soft);border:1px solid var(--gold-line);
  font:600 12px/1.55 var(--font);color:var(--gold-deep)}
.pf-note b{font-weight:800}
.pf-warn{margin:9px 0 0;padding:10px 13px;border-radius:var(--r-sm);background:var(--warn-soft);border:1px solid rgba(180,83,9,.30);
  font:600 11.5px/1.55 var(--font);color:var(--warn)}
.pf-warn b{font-weight:800}
.pf-hint{margin:-4px 0 15px;font:600 11px/1.5 var(--font);color:var(--muted-2)}
.pf-hint b{color:var(--muted);font-weight:700}

/* ===== TOPLU HESAP (tezgah aracı) — ürün + adet → canlı toplam ===== */
/* align-items:stretch → sağ sütun sol sütun boyuna uzar, HAS kartı (flex:1) boşluğu yer: alt boşluk 0 */
.blk-wrap{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px;align-items:stretch;max-width:1560px}
.blk-pick,.blk-qty{padding:20px 22px}
.blk-h{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.blk-step-n{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font:800 12px/1 var(--font);
  color:var(--gold-ink);background:linear-gradient(160deg,var(--gold),var(--gold-deep))}
.blk-h-t{font:800 14.5px/1.2 var(--font);letter-spacing:.01em;color:var(--text)}
.blk-live{margin-left:auto;display:inline-flex;align-items:center;gap:7px;font:700 11px/1 var(--font);
  letter-spacing:.05em;text-transform:uppercase;color:var(--muted);white-space:nowrap}

/* --- ürün seçim ızgarası (dokunmatik: büyük hedef) ---
   flex + grow: ürün sayısı sütuna tam bölünmese de SON SIRA boş hücre bırakmaz (13 ürün → son kart genişler) */
.blk-grid{display:flex;flex-wrap:wrap;gap:10px}
.blk-p{flex:1 1 178px;min-width:0;display:flex;flex-direction:column;gap:3px;text-align:left;padding:13px 14px;cursor:pointer;
  background:var(--surface);border:1.5px solid var(--border);border-radius:var(--r);transition:all .18s var(--ease)}
.blk-p:hover{border-color:var(--gold-line);background:var(--card);transform:translateY(-1px);box-shadow:var(--sh-sm)}
.blk-p b{font:800 13.5px/1.3 var(--font);color:var(--text)}
.blk-p i{font:600 11px/1.3 var(--font);font-style:normal;color:var(--muted-2)}
.blk-p span{margin-top:4px;font:700 11.5px/1 var(--font);color:var(--muted);font-variant-numeric:tabular-nums}
.blk-p em{font-style:normal;color:var(--text)}
.blk-p.is-on{border-color:var(--gold);background:var(--gold-soft);box-shadow:0 0 0 3px var(--accent-glow)}
.blk-p.is-on b{color:var(--gold-deep)}
.blk-empty{padding:26px 18px;text-align:center;font:600 13px/1.6 var(--font);color:var(--muted);
  background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--r)}

/* --- sağ sütun: adet + kaynak kur (boşluk bırakmasın diye dikey yığın) --- */
.blk-side{display:flex;flex-direction:column;gap:18px;min-width:0}
.blk-src{padding:16px 20px;flex:1;display:flex;flex-direction:column;justify-content:center}
.blk-src-h{font:800 10.5px/1 var(--font);letter-spacing:.09em;color:var(--gold-deep)}
.blk-src-h i{font-style:normal;font-weight:700;color:var(--muted-2);letter-spacing:.02em}
.blk-src-n{margin:7px 0 10px;font:800 14px/1.25 var(--font);color:var(--text)}
.blk-src-r{display:flex;align-items:baseline;gap:8px;padding:7px 0;border-bottom:1px dashed var(--border)}
.blk-src-r span{font:800 10.5px/1 var(--font);letter-spacing:.07em;min-width:38px}
.blk-src-r.buy span{color:var(--down)} .blk-src-r.sell span{color:var(--up)}
.blk-src-r em{font:700 12px/1 var(--font);font-style:normal;color:var(--muted);font-variant-numeric:tabular-nums}
.blk-src-r b{margin-left:auto;font:800 18px/1 var(--font);color:var(--text);font-variant-numeric:tabular-nums}
.blk-src-r i{font:700 12px/1 var(--font);font-style:normal;color:var(--muted-2)}
.blk-src-p{margin:10px 0 0;font:600 11px/1.5 var(--font);color:var(--muted-2)}
.blk-src-p b{color:var(--muted);font-weight:800}
.blk-src-b{margin-top:11px;padding:9px 12px;width:100%;border:1.5px solid var(--gold-line);background:var(--gold-soft);
  border-radius:var(--r-sm);font:800 11.5px/1 var(--font);color:var(--gold-deep);cursor:pointer;transition:all .16s var(--ease)}
.blk-src-b:hover{border-color:var(--gold);background:var(--card);transform:translateY(-1px)}

/* --- adet --- */
.blk-sel{padding:9px 13px;margin-bottom:14px;border-radius:var(--r-sm);background:var(--gold-soft);
  border:1px solid var(--gold-line);font:700 12.5px/1.3 var(--font);color:var(--gold-deep)}
.blk-qrow{display:flex;align-items:stretch;gap:10px}
.blk-stp{flex:none;width:52px;border:1.5px solid var(--border);background:var(--surface);border-radius:var(--r);
  font:700 26px/1 var(--font);color:var(--text);cursor:pointer;transition:all .16s var(--ease)}
.blk-stp:hover{border-color:var(--gold);background:var(--gold-soft);color:var(--gold-deep)}
.blk-stp:active{transform:scale(.94)}
.blk-input{flex:1;min-width:0;text-align:center;padding:12px 8px;border:1.5px solid var(--border-strong);border-radius:var(--r);
  background:var(--card);color:var(--text);font:800 30px/1.1 var(--font);font-variant-numeric:tabular-nums;transition:all .16s var(--ease)}
.blk-input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px var(--accent-glow)}
.blk-chips{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin-top:11px}
.blk-chips button{padding:9px 4px;border:1.5px solid var(--border);background:var(--surface);border-radius:var(--r-sm);
  font:700 13px/1 var(--font);color:var(--muted);cursor:pointer;transition:all .16s var(--ease)}
.blk-chips button:hover{border-color:var(--gold);color:var(--gold-deep);background:var(--gold-soft)}
.blk-hint{margin:11px 0 0;font:600 11.5px/1.5 var(--font);color:var(--muted-2)}
.blk-hint b{color:var(--muted)}

/* --- sonuç kartları --- */
.blk-res{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.blk-c{padding:22px 24px;position:relative;overflow:hidden}
.blk-c::before{content:"";position:absolute;inset:0 auto 0 0;width:4px}
.blk-c.buy::before{background:linear-gradient(180deg,var(--down),transparent)}
.blk-c.sell::before{background:linear-gradient(180deg,var(--up),transparent)}
.blk-c-h{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap}
.blk-c-h span{font:800 12px/1 var(--font);letter-spacing:.08em;text-transform:uppercase}
.blk-c.buy .blk-c-h span{color:var(--down)} .blk-c.sell .blk-c-h span{color:var(--up)}
.blk-c-h i{font:600 11.5px/1 var(--font);font-style:normal;color:var(--muted-2)}
.blk-c-v{display:flex;align-items:baseline;gap:7px;margin:12px 0 6px}
.blk-c-v b{font:800 clamp(30px,3.4vw,46px)/1 var(--font);letter-spacing:-.02em;color:var(--text);font-variant-numeric:tabular-nums}
.blk-c-v span{font:800 19px/1 var(--font);color:var(--muted-2)}
.blk-c-x{font:600 12.5px/1.4 var(--font);color:var(--muted);font-variant-numeric:tabular-nums}
.blk-c-x b{font-weight:800;color:var(--text)}
.blk-c-cc{margin-top:12px;padding:10px 13px;border-radius:var(--r-sm);background:var(--gold-soft);border:1px solid var(--gold-line);
  display:flex;align-items:baseline;gap:7px;flex-wrap:wrap;font-variant-numeric:tabular-nums}
.blk-c-cc span{font:800 10px/1 var(--font);letter-spacing:.08em;color:var(--gold-deep)}
.blk-c-cc b{margin-left:auto;font:800 19px/1 var(--font);color:var(--gold-deep)}
.blk-c-cc em{font:800 12px/1 var(--font);font-style:normal;color:var(--gold-deep);opacity:.75}
.blk-c-cc i{flex:1 0 100%;font:600 11px/1 var(--font);font-style:normal;color:var(--muted-2)}
/* ürün kartındaki K.Kartı satırı (TV'nin 3. sütunu) */
.blk-p small{font:700 10.5px/1 var(--font);color:var(--muted-2);font-variant-numeric:tabular-nums}
.blk-p.is-on small{color:var(--gold-deep)}
/* liste satırındaki K.Kartı alt satırı */
.blk-ct-v span.cc{color:var(--gold-deep);font-weight:700}
/* fiyat kaynağı kartındaki K.Kartı satırı */
.blk-src-r.cc{border-bottom:0} .blk-src-r.cc span{color:var(--gold-deep)}
.blk-src-r.cc b{font-size:16px;color:var(--gold-deep)}
.blk-mk{grid-column:1/-1;display:flex;align-items:center;gap:10px;padding:14px 22px;border-radius:var(--r);
  background:var(--gold-soft);border:1px solid var(--gold-line)}
.blk-mk span{font:700 12.5px/1 var(--font);color:var(--gold-deep);letter-spacing:.02em}
.blk-mk b{margin-left:auto;font:800 21px/1 var(--font);color:var(--gold-deep);font-variant-numeric:tabular-nums}
.blk-mk i{font:800 14px/1 var(--font);font-style:normal;color:var(--gold-deep);opacity:.7}

/* --- liste (karışık alışveriş) --- */
.blk-add{width:100%;margin-top:13px;justify-content:center;font-size:14px;padding:12px 16px}
.blk-cart{grid-column:1/-1;padding:20px 22px}
.blk-ct-cnt{font:700 11.5px/1 var(--font);color:var(--muted);letter-spacing:.03em}
.blk-clear{margin-left:auto;padding:7px 13px;border:1px solid var(--border);background:var(--surface);border-radius:999px;
  font:700 11.5px/1 var(--font);color:var(--muted);cursor:pointer;transition:all .16s var(--ease)}
.blk-clear:hover{border-color:var(--danger);color:var(--danger);background:var(--danger-soft)}
.blk-ct-hd,.blk-ct-r{display:grid;grid-template-columns:minmax(0,1.7fr) 128px minmax(0,1fr) minmax(0,1fr) 32px;gap:14px;align-items:center}
.blk-ct-hd{padding:0 4px 9px;border-bottom:1px solid var(--border)}
.blk-ct-hd span{font:800 10.5px/1 var(--font);letter-spacing:.09em;text-transform:uppercase;color:var(--muted-2)}
.blk-ct-hd span:nth-child(2),.blk-ct-hd span:nth-child(3),.blk-ct-hd span:nth-child(4){text-align:right}
.blk-ct-r{padding:11px 4px;border-bottom:1px dashed var(--border)}
.blk-ct-r:last-child{border-bottom:0}
.blk-ct-nm{display:flex;flex-direction:column;gap:2px;min-width:0}
.blk-ct-nm b{font:800 13.5px/1.3 var(--font);color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.blk-ct-nm i{font:600 11px/1.3 var(--font);font-style:normal;color:var(--muted-2)}
.blk-ct-q{display:flex;align-items:center;justify-content:flex-end;gap:6px}
.blk-ct-q button{width:30px;height:30px;flex:none;border:1.5px solid var(--border);background:var(--surface);border-radius:9px;
  font:700 17px/1 var(--font);color:var(--text);cursor:pointer;transition:all .15s var(--ease)}
.blk-ct-q button:hover{border-color:var(--gold);background:var(--gold-soft);color:var(--gold-deep)}
.blk-ct-q b{min-width:38px;text-align:center;font:800 15px/1 var(--font);font-variant-numeric:tabular-nums;color:var(--text)}
.blk-ct-v{display:flex;flex-direction:column;align-items:flex-end;gap:2px}
.blk-ct-v b{font:800 15.5px/1 var(--font);font-variant-numeric:tabular-nums;color:var(--text)}
.blk-ct-v i{display:none}
.blk-ct-v span{font:600 10.5px/1 var(--font);color:var(--muted-2);font-variant-numeric:tabular-nums}
.blk-ct-v.buy b{color:var(--down)} .blk-ct-v.sell b{color:var(--up)}
.blk-ct-x{width:28px;height:28px;border:0;background:transparent;border-radius:8px;font:400 20px/1 var(--font);
  color:var(--muted-2);cursor:pointer;transition:all .15s var(--ease)}
.blk-ct-x:hover{background:var(--danger-soft);color:var(--danger)}
.blk-ct-sum{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px;padding-top:16px;border-top:2px solid var(--border-strong)}
.blk-ct-s{display:flex;flex-direction:column;gap:5px;padding:13px 16px;border-radius:var(--r);background:var(--surface);border:1px solid var(--border)}
.blk-ct-s span{font:800 10.5px/1 var(--font);letter-spacing:.08em;color:var(--muted)}
.blk-ct-s b{font:800 clamp(21px,2vw,27px)/1 var(--font);font-variant-numeric:tabular-nums;color:var(--text)}
.blk-ct-s i{display:none}
.blk-ct-s em{font:600 11px/1 var(--font);font-style:normal;color:var(--muted-2);font-variant-numeric:tabular-nums}
.blk-ct-s em b{font-size:12px;color:var(--muted)}
.blk-ct-s.buy{border-color:rgba(220,38,38,.24)} .blk-ct-s.buy b,.blk-ct-s.buy span{color:var(--down)}
.blk-ct-s.sell{border-color:rgba(22,163,74,.24)} .blk-ct-s.sell b,.blk-ct-s.sell span{color:var(--up)}
.blk-ct-s.mk{background:var(--gold-soft);border-color:var(--gold-line)} .blk-ct-s.mk b,.blk-ct-s.mk span{color:var(--gold-deep)}

@media (max-width:1180px){ .blk-wrap{grid-template-columns:1fr} }
@media (max-width:820px){
  .blk-ct-hd{display:none}
  .blk-ct-nm b{white-space:normal;overflow:visible;line-height:1.25}   /* dar ekranda ürün adı kırpılmasın, alt satıra sarsın */
  .blk-ct-r{grid-template-columns:minmax(0,1fr) 118px 30px;gap:9px 12px}
  .blk-ct-nm{grid-column:1} .blk-ct-q{grid-column:2} .blk-ct-x{grid-column:3;grid-row:1}
  .blk-ct-v{grid-column:1/3;flex-direction:row;align-items:baseline;justify-content:flex-start;gap:7px}
  .blk-ct-v::before{content:attr(data-lb);font:800 10px/1 var(--font);letter-spacing:.08em;color:var(--muted-2)}
  .blk-ct-v.buy::before{content:"ALIŞ"} .blk-ct-v.sell::before{content:"SATIŞ"}
  .blk-ct-v i{display:inline;font:700 12px/1 var(--font);font-style:normal;color:var(--muted-2)}
  .blk-ct-sum{grid-template-columns:1fr}
}
@media (max-width:640px){
  .blk-res{grid-template-columns:1fr}
  .blk-p{flex-basis:128px}          /* telefonda 2 kart yan yana (flex ızgara → basis ile ayarlanır) */
  .blk-chips{grid-template-columns:repeat(3,1fr)}
  .blk-pick,.blk-qty{padding:16px 15px} .blk-c{padding:18px 17px}
}
