/* ============================================================
   AGENXY analiz serisi — bölüm sayfası tasarım sistemi v4.0
   RENK KAYNAĞI: resmî AGENXY paleti (2026-08-03, Nano Banana çalışması).
   Baskın renk #0366E6 seri çapası; bölüm farkı aksan takımından çıkar.
   No. 001 aksan takımı: turkuaz #31E9C7 (pozitif) · pembe #FD6699 (negatif)
   · amber #FEBB72 (üçüncü). Yön: yüksek kontrast, glassmorphism, az metin.
   Kurallar: 04_sinyal/sinyal_tasarim_dili.md §2.5
   ============================================================ */

:root{
  /* zemin gradyan durakları */
  --b1:#0366E6;   /* ★ baskın parlak mavi (seri çapası) */
  --b2:#3370D1;   /* mavi ara ton */
  --b3:#4F187B;   /* mor derinlik */
  --b4:#E648A1;   /* magenta köşe aksanı */
  --deep:#17117F; /* derin indigo (zemin tabanı) */

  /* aksanlar — AÇIK ZEMİN rolleri (beyaz üstünde okunur tonlar) */
  --pos:#0366E6;     /* mavi — pozitif / kapasite */
  --neg:#E648A1;     /* magenta — negatif / boşluk */
  --alt:#46989D;     /* teal — üçüncü vurgu */
  /* dolgulu kutu içi aksanlar (koyu yüzeyde) */
  --pos-in:#31E9C7;  /* turkuaz */
  --neg-in:#FD6699;  /* pembe */

  --w:#17117F;       /* ana metin: derin indigo */
  --w80:rgba(23,17,127,.80);
  --w60:rgba(23,17,127,.56);
  --w40:rgba(23,17,127,.34);
  --glass:#FFFFFF;
  --glass2:rgba(3,102,230,.045);
  --edge:rgba(23,17,127,.12);
  --edge2:rgba(23,17,127,.08);
  --maxw:1080px;
}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;color:var(--w);background:#FFFFFF;
  font-family:'Inter',-apple-system,'Segoe UI',sans-serif;
  font-size:17px;line-height:1.6;font-weight:400;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
/* canlı mesh gradyan zemin */
body:before{
  content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(920px 720px at 94% -8%, rgba(3,102,230,.085) 0%, transparent 58%),
    radial-gradient(860px 680px at 2% 104%, rgba(49,233,199,.10) 0%, transparent 58%),
    #FFFFFF;
  background-attachment:fixed;
}
/* ince ışık dokusu */
body:after{content:none}
.page{position:relative;z-index:1}
img,svg{max-width:100%;display:block}
a{color:var(--pos);text-decoration:none}

.disp{font-family:'Sora','Inter',sans-serif;font-weight:800;letter-spacing:-.03em}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
.mono{font-family:'JetBrains Mono',Consolas,monospace}

/* cam yüzey — sistemin temel dokusu */
.glass{
  background:var(--glass);
  backdrop-filter:blur(26px) saturate(150%);
  -webkit-backdrop-filter:blur(26px) saturate(150%);
  border:1px solid var(--edge);
  border-radius:26px;
  box-shadow:0 24px 70px rgba(23,17,127,.32), inset 0 1px 0 rgba(255,255,255,.22);
}

/* ---------- ÜST ŞERİT ---------- */
.mast{position:sticky;top:0;z-index:50;
  background:rgba(23,17,127,.34);backdrop-filter:blur(22px) saturate(150%);
  border-bottom:1px solid var(--edge2)}
.mast-in{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 0}
.brand{display:flex;align-items:center;gap:13px;min-width:0}
.bmark{width:34px;height:34px;border-radius:50%;flex:none;display:grid;place-items:center;
  background:var(--pos);color:#17117F;font-weight:800;font-size:16px;
  box-shadow:0 0 26px rgba(49,233,199,.6)}
.bname{font-weight:600;font-size:16px;letter-spacing:.42em;text-transform:uppercase}
.mno{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--w60);font-weight:600;white-space:nowrap}

/* ---------- HERO ---------- */
.hero{padding:76px 0 26px}
.tagline{display:inline-flex;align-items:center;gap:10px;padding:9px 18px;border-radius:999px;
  border:1px solid var(--edge);background:var(--glass2);backdrop-filter:blur(12px);
  font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--w80);margin-bottom:30px}
.tagline i{width:7px;height:7px;border-radius:50%;background:var(--pos);box-shadow:0 0 12px var(--pos);animation:pulse 2.4s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.3}}

h1.disp{font-size:clamp(40px,7.6vw,88px);line-height:.97;margin:0 0 28px;letter-spacing:-.035em}
h1 .hl{color:var(--pos);text-shadow:0 0 44px rgba(49,233,199,.5)}
h1 .hl-m{color:var(--neg);text-shadow:0 0 44px rgba(253,102,153,.55)}
.lede{font-size:clamp(17px,2vw,21px);line-height:1.55;color:var(--w80);max-width:660px;margin:0 0 12px}
.lede b{color:var(--w);font-weight:600}
.meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;margin-top:36px;padding-top:22px;
  border-top:1px solid var(--edge2);font-size:12.5px;color:var(--w60);letter-spacing:.04em}
.meta b{color:var(--w);font-weight:700}
.meta .d{width:4px;height:4px;border-radius:50%;background:var(--edge)}

/* ---------- ÜÇ SAYI ---------- */
.flash{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:46px 0 0}
.fcard{padding:26px;position:relative;overflow:hidden;
  background:var(--glass);backdrop-filter:blur(26px) saturate(150%);
  border:1px solid var(--edge);border-radius:22px;
  box-shadow:0 20px 54px rgba(23,17,127,.26), inset 0 1px 0 rgba(255,255,255,.2)}
.fcard:after{content:"";position:absolute;left:26px;right:26px;top:0;height:2px;border-radius:2px}
.fcard.a:after{background:var(--pos);box-shadow:0 0 18px var(--pos)}
.fcard.b:after{background:var(--neg);box-shadow:0 0 18px var(--neg)}
.fcard.c:after{background:var(--alt);box-shadow:0 0 18px var(--alt)}
.fnum{font-family:'Sora',sans-serif;font-size:44px;font-weight:800;letter-spacing:-.045em;line-height:1;margin-bottom:12px}
.fcard.a .fnum{color:var(--pos)} .fcard.b .fnum{color:var(--neg)} .fcard.c .fnum{color:var(--alt)}
.ftxt{font-size:14.5px;line-height:1.5;color:var(--w80)}
.ftxt b{color:var(--w);font-weight:600}

/* ---------- BÖLÜM ETİKETİ ---------- */
.sl{display:flex;align-items:center;gap:16px;margin:76px 0 24px;
  font-size:11px;font-weight:700;letter-spacing:.28em;text-transform:uppercase;color:var(--w60)}
.sl:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--edge),transparent)}
h2.disp{font-size:clamp(27px,4.2vw,44px);line-height:1.04;margin:0 0 16px}
h3.disp{font-size:clamp(20px,2.6vw,27px);line-height:1.16;margin:0 0 12px}
p{margin:0 0 15px;color:var(--w80)}
p b{color:var(--w);font-weight:600}
.big{font-size:clamp(19px,2.4vw,26px);line-height:1.42;color:var(--w);font-weight:400;letter-spacing:-.01em}
.big b{font-weight:700}

/* ---------- GÖRSEL KART ---------- */
.viz{padding:32px;margin:26px 0;
  background:var(--glass);backdrop-filter:blur(26px) saturate(150%);
  border:1px solid var(--edge);border-radius:26px;
  box-shadow:0 24px 70px rgba(23,17,127,.3), inset 0 1px 0 rgba(255,255,255,.22);
  position:relative;overflow:hidden}
.viz-h{font-family:'Sora',sans-serif;font-size:17px;font-weight:700;margin-bottom:5px;letter-spacing:-.01em}
.viz-s{font-size:13px;color:var(--w60);margin-bottom:28px}
.src{margin-top:26px;padding-top:15px;border-top:1px solid var(--edge2);font-size:11.5px;line-height:1.5;color:var(--w60)}
.src i{font-style:italic}

/* ---------- WAFFLE ---------- */
.waffles{display:grid;grid-template-columns:1fr auto 1fr;gap:28px;align-items:center}
.wbox{min-width:0}
.wgrid{display:grid;grid-template-columns:repeat(10,1fr);gap:5px;margin-bottom:18px}
.wcell{aspect-ratio:1;border-radius:50%;background:rgba(23,17,127,.42);box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
.wcell.on{background:var(--pos);box-shadow:0 0 12px rgba(49,233,199,.75)}
.wcell.on2{background:var(--neg);box-shadow:0 0 12px rgba(253,102,153,.8)}
.wlab{font-size:13px;line-height:1.45;color:var(--w60)}
.wlab b{display:block;font-family:'Sora',sans-serif;font-size:38px;font-weight:800;letter-spacing:-.04em;margin-bottom:6px}
.wlab.l b{color:var(--pos);text-shadow:0 0 30px rgba(49,233,199,.45)}
.wlab.m b{color:var(--neg);text-shadow:0 0 30px rgba(253,102,153,.5)}
.wvs{font-size:10px;font-weight:700;letter-spacing:.24em;color:var(--w40);text-transform:uppercase;
  writing-mode:vertical-rl;white-space:nowrap}

/* ---------- LOLLIPOP ---------- */
.lolli{display:flex;flex-direction:column;gap:14px}
.lrow{display:grid;grid-template-columns:minmax(0,150px) 1fr 44px;gap:14px;align-items:center}
.lname{font-size:13px;color:var(--w80);min-width:0}
.ltrack{position:relative;height:2px;background:rgba(255,255,255,.14);border-radius:2px}
.lline{position:absolute;left:0;top:0;height:2px;background:linear-gradient(90deg,rgba(254,187,114,.2),var(--alt));border-radius:2px}
.ldot{position:absolute;top:50%;width:14px;height:14px;border-radius:50%;transform:translate(-50%,-50%);
  background:var(--alt);box-shadow:0 0 16px rgba(254,187,114,.9)}
.lrow.hot .lline{background:linear-gradient(90deg,rgba(253,102,153,.2),var(--neg))}
.lrow.hot .ldot{background:var(--neg);box-shadow:0 0 20px rgba(253,102,153,1);width:16px;height:16px}
.lval{font-family:'Sora',sans-serif;font-size:14px;font-weight:800;text-align:right;color:var(--w)}
.lrow.hot .lval{color:var(--neg)}

/* ---------- ÜÇTE BİR ---------- */
.thirds{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.tcirc{width:108px;height:108px;border-radius:50%;display:grid;place-items:center;flex:none;
  border:1.5px solid rgba(49,233,199,.5);background:rgba(49,233,199,.09);
  font-family:'Sora',sans-serif;font-weight:700;font-size:14px;color:var(--pos);letter-spacing:.02em}
.tcirc.fail{border-color:var(--neg);background:rgba(253,102,153,.16);color:var(--neg);
  box-shadow:0 0 44px rgba(253,102,153,.5)}
.tcap{font-size:15.5px;line-height:1.5;color:var(--w80);min-width:210px;flex:1}
.tcap b{color:var(--w)}

/* ---------- SPARK ---------- */
.spark{width:100%;height:215px}

/* ---------- QUADRANT ---------- */
.quad{position:relative;aspect-ratio:1.55;border:1px solid var(--edge2);border-radius:18px;overflow:hidden;
  background:
    linear-gradient(90deg,transparent 49.8%,rgba(255,255,255,.14) 49.8%,rgba(255,255,255,.14) 50.2%,transparent 50.2%),
    linear-gradient(0deg,transparent 49.8%,rgba(255,255,255,.14) 49.8%,rgba(255,255,255,.14) 50.2%,transparent 50.2%),
    rgba(255,255,255,.04)}
.qlab{position:absolute;font-size:10px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--w40)}
.qdot{position:absolute;width:17px;height:17px;border-radius:50%;background:var(--pos);
  box-shadow:0 0 0 7px rgba(49,233,199,.16),0 0 34px rgba(49,233,199,.95);transform:translate(-50%,-50%)}
.qdot.pale{background:rgba(255,255,255,.55);box-shadow:0 0 0 6px rgba(255,255,255,.08)}
.qtag{position:absolute;transform:translate(-50%,-50%);font-family:'Sora',sans-serif;font-size:12.5px;font-weight:800;white-space:nowrap}

/* ---------- SAYI KARTLARI ---------- */
.hitrow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}
.hit{padding:26px;border-radius:22px;background:var(--glass2);border:1px solid var(--edge2);
  backdrop-filter:blur(18px)}
.hit .n{font-family:'Sora',sans-serif;font-size:clamp(40px,6.4vw,62px);font-weight:800;letter-spacing:-.05em;line-height:1}
.hit.l .n{color:var(--pos);text-shadow:0 0 36px rgba(49,233,199,.4)}
.hit.m .n{color:var(--neg);text-shadow:0 0 36px rgba(253,102,153,.45)}
.hit .t{font-size:14px;line-height:1.5;color:var(--w80);margin-top:14px}
.hit .t b{color:var(--w);font-weight:600}

/* ---------- SİNYAL ---------- */
.sig{margin:58px 0 0}
.sig-top{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.sig-n{font-family:'Sora',sans-serif;font-size:11px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;
  padding:8px 16px;border-radius:999px;flex:none;background:var(--glass2);backdrop-filter:blur(10px)}
.sig-n.a{color:var(--pos);border:1px solid rgba(49,233,199,.5)}
.sig-n.b{color:var(--neg);border:1px solid rgba(253,102,153,.5)}
.sig-n.c{color:var(--alt);border:1px solid rgba(254,187,114,.5)}
.act{display:flex;gap:14px;align-items:flex-start;margin-top:22px;padding:20px 22px;border-radius:18px;
  border:1px solid var(--edge2);background:var(--glass2);backdrop-filter:blur(14px)}
.act .k{font-size:10px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--pos);flex:none;padding-top:4px}
.act p{margin:0;font-size:15.5px;line-height:1.55;color:var(--w)}

/* ---------- TEŞHİS ---------- */
.diag{margin:78px 0 0;padding:44px 36px;border-radius:32px;
  border:1px solid rgba(49,233,199,.34);
  background:radial-gradient(720px 420px at 12% 0%,rgba(49,233,199,.16),transparent 62%),rgba(255,255,255,.09);
  backdrop-filter:blur(26px) saturate(150%);
  box-shadow:0 28px 80px rgba(23,17,127,.34), inset 0 1px 0 rgba(255,255,255,.24)}
.qgrid{display:grid;gap:2px;margin-top:26px}
.qrow{display:grid;grid-template-columns:46px 1fr;gap:16px;padding:18px 0;border-top:1px solid var(--edge2);align-items:baseline}
.qrow:first-child{border-top:0}
.qi{font-family:'Sora',sans-serif;font-size:15px;font-weight:800;color:var(--pos)}
.qt{font-size:16.5px;line-height:1.5;color:var(--w);margin:0}
.qout{margin-top:28px;padding:22px 24px;border-radius:18px;background:rgba(253,102,153,.16);
  border:1px solid rgba(253,102,153,.44);font-size:15.5px;line-height:1.55;color:var(--w)}
.qout b{color:var(--neg)}

/* ---------- PODCAST ---------- */
.pod{margin:34px 0 0;padding:28px;border-radius:24px;border:1px solid var(--edge2);
  background:linear-gradient(100deg,rgba(254,187,114,.14),rgba(253,102,153,.1));backdrop-filter:blur(20px);
  display:flex;gap:20px;align-items:center;flex-wrap:wrap}
.pod-ic{width:56px;height:56px;border-radius:50%;flex:none;display:grid;place-items:center;font-size:23px;
  background:rgba(255,255,255,.14);border:1px solid var(--edge)}
.pod-b{flex:1;min-width:220px}
.pod-k{font-size:10px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--alt);margin-bottom:7px}
.pod-t{font-family:'Sora',sans-serif;font-size:19px;font-weight:800;margin:0 0 4px}
.pod-d{font-size:13.5px;color:var(--w60);margin:0}
.pod-s{font-size:11.5px;color:var(--w60);border:1px dashed var(--edge);border-radius:12px;padding:12px 16px;letter-spacing:.04em}
audio.player{width:100%;margin-top:8px}

/* ---------- CTA ---------- */
.cta{margin:36px 0 0;padding:38px;border-radius:28px;border:1px solid var(--edge);
  background:linear-gradient(120deg,rgba(49,233,199,.14),rgba(253,102,153,.12));backdrop-filter:blur(22px)}
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--pos);color:#17117F;
  padding:16px 30px;border-radius:999px;font-weight:800;font-size:15px;letter-spacing:.01em;
  box-shadow:0 0 40px rgba(49,233,199,.45)}
.btn:hover{background:var(--w);color:#17117F}

/* ---------- KÜNYE ---------- */
details.colo{margin:62px 0 0;border-top:1px solid var(--edge2);padding-top:24px}
details.colo summary{cursor:pointer;list-style:none;font-size:11px;font-weight:700;letter-spacing:.24em;
  text-transform:uppercase;color:var(--w60)}
details.colo summary::-webkit-details-marker{display:none}
details.colo summary:before{content:"+ ";color:var(--pos)}
details.colo[open] summary:before{content:"− "}
.colo-b{margin-top:20px;font-size:13px;line-height:1.65;color:var(--w60)}
.colo-b h4{font-size:10.5px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--w80);margin:20px 0 7px}
.colo-b h4:first-child{margin-top:0}
.colo-b p{font-size:13px;color:var(--w60);margin:0 0 11px}
.colo-b b{color:var(--w80)}
.foot{margin-top:36px;padding:24px 0 56px;border-top:1px solid var(--edge2);
  display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:space-between;font-size:12.5px;color:var(--w60)}
.foot b{color:var(--w)}

/* ---------- REVEAL ---------- */
.rv{opacity:0;transform:translateY(24px);transition:opacity .75s cubic-bezier(.2,.7,.3,1),transform .75s cubic-bezier(.2,.7,.3,1)}
.rv.in{opacity:1;transform:none}

/* ---------- RESPONSIVE ---------- */
@media(max-width:900px){
  .flash{grid-template-columns:1fr}
  .waffles{grid-template-columns:1fr;gap:24px}
  .wvs{writing-mode:horizontal-tb;letter-spacing:.26em;text-align:center}
  .hitrow{grid-template-columns:1fr}
}
@media(max-width:640px){
  body{font-size:16px}
  .wrap{padding:0 18px}
  .hero{padding:50px 0 18px}
  .viz{padding:24px 20px}
  .diag{padding:32px 22px}
  .lrow{grid-template-columns:minmax(0,112px) 1fr 40px;gap:10px}
  .lname{font-size:12px}
  .tcirc{width:86px;height:86px;font-size:12.5px}
  .sl{margin:56px 0 20px}
  .sig{margin:46px 0 0}
  .bname{letter-spacing:.3em;font-size:15px}
}
@media(prefers-reduced-motion:reduce){
  .rv{opacity:1;transform:none;transition:none}
  .tagline i{animation:none}
}


/* ============================================================
   AÇIK TEMA — BEYAZ TAŞIYICI + RENKLİ BLOKLAR
   Çağdaş (2026-08-04): "beyaz rahatlatıcı ama çok beyaz olmuş —
   grafik kutularının fonları bizim renklerden biri olsun, kutularda
   renk çeşitliliği olsun, içindeki rakamlar beyaz veya okunur renk."
   Kural: beyaz sayfa taşır, renk bloklarda yaşar. Blok başına farklı
   palet rengi; aynı renk üst üste iki blokta kullanılmaz.
   ============================================================ */

/* ---- yüzeyler: cam yok, düz beyaz + ince gölge ---- */
.glass,.viz,.fcard,.diag,.pod,.cta,.hit,.act{backdrop-filter:none;-webkit-backdrop-filter:none}
.viz{background:#fff;border:1px solid var(--edge);box-shadow:0 14px 40px rgba(23,17,127,.07)}
.mast{background:rgba(255,255,255,.88);border-bottom:1px solid var(--edge2)}
.bmark{background:#0366E6;color:#fff;box-shadow:none}
h1 .hl,h1 .hl-m,.wlab.l b,.wlab.m b,.hit .n,.fnum,.qtag{text-shadow:none}
.tagline{background:#fff;border-color:var(--edge)}
.tagline i{background:#0366E6;box-shadow:none}
.act{background:rgba(3,102,230,.05);border:1px solid var(--edge)}
.act .k{color:#0366E6}

/* ---- ÜÇ SAYI KUTUSU: her biri farklı dolgu, rakam beyaz/turkuaz ---- */
.fcard{border:0;box-shadow:0 16px 44px rgba(23,17,127,.14)}
.fcard:after{display:none}
.fcard .ftxt{color:rgba(255,255,255,.78)}
.fcard .ftxt b{color:#fff}
.fcard.a{background:#0366E6} .fcard.a .fnum{color:#fff}
.fcard.b{background:#E648A1} .fcard.b .fnum{color:#fff}
.fcard.c{background:#17117F} .fcard.c .fnum{color:var(--pos-in)}

/* ---- DOLGULU GRAFİK KUTULARI ----
   .viz.f-* : kutunun fonu palet rengi olur, içindeki her şey koyu yüzey
   mantığına döner (metin beyaz, veri turkuaz/pembe). */
.viz.f-ink{background:#17117F;border-color:transparent}
.viz.f-blue{background:#0366E6;border-color:transparent}
.viz.f-violet{background:#4F187B;border-color:transparent}
.viz.f-teal{background:#46989D;border-color:transparent}
/* .viz.f-bordo{background:#66184C} — 001de denendi, ekranda çamurlu kaldı; sonraki bölümde tekrar bakılır */
.viz[class*="f-"]{box-shadow:0 20px 56px rgba(23,17,127,.20)}
.viz[class*="f-"],.viz[class*="f-"] .viz-h{color:#fff}
.viz[class*="f-"] .viz-s{color:rgba(255,255,255,.66)}
.viz[class*="f-"] .src{color:rgba(255,255,255,.55);border-top-color:rgba(255,255,255,.20)}
.viz[class*="f-"] .wcell{background:rgba(255,255,255,.16);box-shadow:none}
.viz[class*="f-"] .wcell.on{background:var(--pos-in)}
.viz[class*="f-"] .wcell.on2{background:var(--neg-in)}
.viz[class*="f-"] .wlab{color:rgba(255,255,255,.68)}
.viz[class*="f-"] .wlab.l b{color:var(--pos-in)}
.viz[class*="f-"] .wlab.m b{color:var(--neg-in)}
.viz[class*="f-"] .wvs{color:rgba(255,255,255,.45)}
.viz[class*="f-"] .lname{color:rgba(255,255,255,.80)}
.viz[class*="f-"] .ltrack{background:rgba(255,255,255,.22)}
.viz[class*="f-"] .lline{background:linear-gradient(90deg,rgba(49,233,199,.25),var(--pos-in))}
.viz[class*="f-"] .ldot{background:var(--pos-in);box-shadow:none}
.viz[class*="f-"] .lrow.hot .lline{background:linear-gradient(90deg,rgba(253,102,153,.25),var(--neg-in))}
.viz[class*="f-"] .lrow.hot .ldot{background:var(--neg-in);box-shadow:none}
.viz[class*="f-"] .lval{color:#fff}
.viz[class*="f-"] .lrow.hot .lval{color:var(--neg-in)}
.viz[class*="f-"] .tcirc{border-color:rgba(49,233,199,.55);background:rgba(49,233,199,.12);color:var(--pos-in)}
.viz[class*="f-"] .tcirc.fail{border-color:var(--neg-in);background:rgba(253,102,153,.18);color:var(--neg-in);box-shadow:none}
.viz[class*="f-"] .tcap{color:rgba(255,255,255,.78)} .viz[class*="f-"] .tcap b{color:#fff}
.viz[class*="f-"] .quad{border-color:rgba(255,255,255,.20);background:
  linear-gradient(90deg,transparent 49.8%,rgba(255,255,255,.18) 49.8%,rgba(255,255,255,.18) 50.2%,transparent 50.2%),
  linear-gradient(0deg,transparent 49.8%,rgba(255,255,255,.18) 49.8%,rgba(255,255,255,.18) 50.2%,transparent 50.2%),
  rgba(255,255,255,.06)}
.viz[class*="f-"] .qlab{color:rgba(255,255,255,.50)}
.viz[class*="f-"] .qdot{background:var(--pos-in);box-shadow:0 0 0 7px rgba(49,233,199,.18)}
.viz[class*="f-"] .qdot.pale{background:rgba(255,255,255,.55);box-shadow:0 0 0 6px rgba(255,255,255,.10)}
.viz[class*="f-"] .hit{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.20)}
.viz[class*="f-"] .hit .t{color:rgba(255,255,255,.76)} .viz[class*="f-"] .hit .t b{color:#fff}
.viz[class*="f-"] .hit.l .n{color:var(--pos-in)} .viz[class*="f-"] .hit.m .n{color:var(--neg-in)}
.viz[class*="f-"] p{color:rgba(255,255,255,.80)} .viz[class*="f-"] p b{color:#fff}

/* ---- beyaz kalan kutularda veri renkleri ---- */
.viz:not([class*="f-"]) .wcell{background:rgba(23,17,127,.09)}
.viz:not([class*="f-"]) .wcell.on{background:#0366E6;box-shadow:none}
.viz:not([class*="f-"]) .wcell.on2{background:var(--neg);box-shadow:none}
.viz:not([class*="f-"]) .tcirc{border-color:rgba(3,102,230,.42);background:rgba(3,102,230,.07);color:#0366E6}
.viz:not([class*="f-"]) .tcirc.fail{border-color:var(--neg);background:rgba(230,72,161,.10);color:var(--neg);box-shadow:none}
.viz:not([class*="f-"]) .ldot,.viz:not([class*="f-"]) .lrow.hot .ldot{box-shadow:none}
.hitrow>.hit{border:0;box-shadow:0 16px 44px rgba(23,17,127,.14)}
.hitrow>.hit.l{background:#0366E6} .hitrow>.hit.l .n{color:#fff}
.hitrow>.hit.m{background:#E648A1} .hitrow>.hit.m .n{color:#fff}
.hitrow>.hit .t{color:rgba(255,255,255,.80)} .hitrow>.hit .t b{color:#fff}

/* ---- TEŞHİS: dolu bordo blok, sorular beyaz ---- */
.diag{background:#17117F;border:0;box-shadow:0 24px 64px rgba(23,17,127,.26)}
.diag h2.disp,.diag .qt{color:#fff}
.diag .qi{color:var(--pos-in)}
.diag .qrow{border-top-color:rgba(255,255,255,.16)}
.diag .lede,.diag p{color:rgba(255,255,255,.74)}
.qout{background:rgba(253,102,153,.18);border:1px solid rgba(253,102,153,.42);color:#fff}
.qout b{color:var(--neg-in)}

/* ---- PODCAST + CTA ---- */
.pod{background:rgba(3,102,230,.06);border:1px solid var(--edge)}
.pod-ic{background:#fff;border:1px solid var(--edge)}
.pod-k{color:#0366E6}
.pod-s{border-color:var(--edge);color:var(--w60)}
.cta{background:#0366E6;border:0;box-shadow:0 22px 60px rgba(3,102,230,.28)}
.cta h2.disp{color:#fff} .cta p{color:rgba(255,255,255,.82)} .cta p b{color:#fff}
.btn{background:#fff;color:#0366E6;box-shadow:none}
.btn:hover{background:#17117F;color:#fff}

/* ---- sinyal etiketleri ---- */
.sig-n{background:#fff}
.sig-n.a{color:#0366E6;border-color:rgba(3,102,230,.40)}
.sig-n.b{color:var(--neg);border-color:rgba(230,72,161,.40)}
.sig-n.c{color:var(--alt);border-color:rgba(70,152,157,.40)}

/* teal dolguda vurgu noktası: turkuaz okunmuyor -> pembe (geride kalan taraf) */
.viz.f-teal .qdot{background:var(--neg-in);box-shadow:0 0 0 7px rgba(253,102,153,.20)}
.viz.f-teal .qdot.pale{background:rgba(255,255,255,.62);box-shadow:0 0 0 6px rgba(255,255,255,.12)}

/* ---- DOLGULU YÜZEYLERDE KALIN YAZI ----
   İskelette `p b{color:var(--w)}` var; açık temada --w derin indigo olduğu için
   koyu dolgu içindeki <b> zemine karışıp KAYBOLUYORDU. Dolgulu her yüzeyde beyaz. */
.viz[class*="f-"] b,.diag b,.cta b,.fcard b,.hitrow>.hit b{color:#fff}
.diag .qt b{color:#fff}
.qout b{color:var(--neg-in)}          /* istisna: uyarı bloğunda pembe vurgu */
.diag .qi{color:var(--pos-in)}        /* istisna: soru numaraları turkuaz */


/* ---- İNCELENEN KAYNAK ŞERİDİ (raporun orijinal kapağı) ---- */
.kaynak{display:flex;gap:22px;align-items:center;margin:34px 0 0;padding:20px 24px;
  border:1px solid var(--edge);border-radius:20px;background:#fff;
  box-shadow:0 12px 34px rgba(23,17,127,.06)}
.kaynak img{width:78px;height:auto;flex:none;border-radius:5px;box-shadow:0 6px 20px rgba(23,17,127,.20)}
.kaynak-b{min-width:0}
.kaynak-k{font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.2em;text-transform:uppercase;
  color:#0366E6;margin-bottom:8px}
.kaynak-t{font-family:'Sora',sans-serif;font-weight:700;font-size:16.5px;letter-spacing:-.01em;margin:0 0 5px;color:var(--w)}
.kaynak-d{font-size:13px;line-height:1.55;color:var(--w60);margin:0}
@media(max-width:640px){
  .kaynak{gap:16px;padding:16px 18px}
  .kaynak img{width:62px}
  .kaynak-t{font-size:15px}
}
