/* deneyim.css — /deneyim/ sayfası: türbinin içine sinematik yolculuk.
 * Palet: grafit, çelik, mat siyah, soğuk beyaz, ince camgöbeği. Sitenin limon
 * vurgusu yalnız marka ve eylem düğmelerinde. */
.dny{--d-bg:#07090b;--d-ink:#eef2f5;--d-muted:#a3adb5;--d-faint:#76818a;--d-line:rgba(238,242,245,.14);
  --d-cyan:#6fdcec;--d-accent:#c7ff32;--d-gut:clamp(1rem,4vw,2.25rem);
  background:var(--d-bg);color:var(--d-ink);color-scheme:dark}
.dny .gizli{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.dny :focus-visible{outline:2px solid var(--d-cyan);outline-offset:3px}

/* ---- sahne ---- */
.dny-bolum{position:relative;height:100svh;background:var(--d-bg)}
.dny-bolum.uc-boyut{height:1500vh}
.dny-sahne{position:sticky;top:0;height:100svh;max-height:100vh;overflow:hidden;isolation:isolate}
.dny-sahne canvas{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:-3;opacity:0;transition:opacity 1.6s ease}
.dny-sahne canvas.hazir{opacity:1}
.dny-poster{position:absolute;inset:0;z-index:-4;background:#0b0e10 url(/assets/saha/ege-levha.webp) center/cover no-repeat;filter:saturate(.7) brightness(.55)}
.dny-bolum.dny-akis .dny-poster{transition:opacity 1.6s ease}
.dny-bolum.hazir .dny-poster{opacity:0}
/* sinema vinyeti + alt/üst gölge: metin okunur kalsın */
.dny-sahne::after{content:"";position:absolute;inset:0;z-index:-2;pointer-events:none;
  background:radial-gradient(120% 85% at 50% 45%,transparent 55%,rgba(3,4,5,.55) 100%),
    linear-gradient(180deg,rgba(5,7,8,.55) 0,transparent 18%,transparent 62%,rgba(5,7,8,.78) 100%)}
.dny-kararti{position:absolute;inset:0;z-index:-1;background:#000;opacity:0;pointer-events:none}

/* ---- açılış ---- */
.dny-acilis{position:absolute;left:var(--d-gut);right:var(--d-gut);bottom:clamp(2rem,9vh,5rem);max-width:40rem;transition:opacity .6s ease,transform .6s ease}
.dny-acilis .ust{margin:0;font-family:var(--mono);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--d-muted)}
.dny-acilis h1{margin:.8rem 0 0;font-family:Fraunces,Georgia,serif;font-weight:350;font-variation-settings:"opsz" 144;font-size:clamp(2.4rem,6.5vw,4.75rem);line-height:1;letter-spacing:-.03em;color:var(--d-ink)}
.dny-acilis p.alt{margin:1rem 0 0;max-width:34rem;font-size:1rem;line-height:1.65;color:var(--d-muted)}
.dny-kaydir{display:inline-flex;align-items:center;gap:.7rem;margin-top:1.6rem;font-family:var(--mono);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--d-ink)}
.dny-kaydir i{display:block;width:1px;height:2.4rem;background:linear-gradient(var(--d-cyan),transparent);animation:dnyInis 2.4s ease-in-out infinite}
@keyframes dnyInis{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
.dny-bolum.gecti .dny-acilis{opacity:0;transform:translateY(-1rem);pointer-events:none}

/* ---- üst şerit: bölüm adı ve kot ---- */
.dny-serit{position:absolute;top:calc(4.4rem + env(safe-area-inset-top));left:var(--d-gut);right:var(--d-gut);display:flex;justify-content:space-between;gap:1rem;
  font-family:var(--mono);font-size:.6875rem;letter-spacing:.2em;text-transform:uppercase;color:var(--d-muted);opacity:0;transition:opacity .6s ease;pointer-events:none}
.dny-bolum.gecti .dny-serit{opacity:1}
.dny-serit b{font-weight:500;color:var(--d-ink)}
.dny-serit .dny-kot b{font-variant-numeric:tabular-nums}
.dny-serit .dny-kot .dny-ic{color:var(--d-cyan)}

/* ---- parça etiketi (HUD): yavaşça belirir, yavaşça söner ---- */
.dny-hud{position:absolute;left:var(--d-gut);bottom:clamp(2rem,10vh,5.5rem);max-width:30rem;pointer-events:none;
  opacity:0;transform:translateY(.6rem);transition:opacity .7s ease,transform .9s cubic-bezier(.2,.7,.2,1)}
.dny-hud.gor{opacity:1;transform:none}
.dny-hud .no{margin:0;display:flex;align-items:center;gap:.8rem;font-family:var(--mono);font-size:.6875rem;letter-spacing:.22em;text-transform:uppercase;color:var(--d-cyan)}
.dny-hud .no::after{content:"";display:block;width:3.5rem;height:1px;background:linear-gradient(90deg,var(--d-cyan),transparent)}
.dny-hud h2{margin:.7rem 0 0;font-family:var(--sans);font-weight:500;font-size:clamp(2rem,4.6vw,3.4rem);line-height:1;letter-spacing:-.045em;color:var(--d-ink);text-shadow:0 2px 24px rgba(0,0,0,.5)}
.dny-hud .bilgi{margin:.8rem 0 0;font-family:var(--mono);font-size:.8125rem;letter-spacing:.04em;line-height:1.6;color:var(--d-muted);text-shadow:0 1px 12px rgba(0,0,0,.6)}
/* dış bölüm altyazısı */
.dny-alt{position:absolute;left:var(--d-gut);bottom:clamp(2rem,10vh,5.5rem);max-width:28rem;margin:0;font-size:1rem;line-height:1.6;color:var(--d-muted);
  opacity:0;transition:opacity .8s ease;pointer-events:none;text-shadow:0 1px 14px rgba(0,0,0,.65)}
.dny-alt.gor{opacity:1}
.dny-alt b{display:block;margin-bottom:.35rem;font-family:var(--mono);font-size:.6875rem;font-weight:400;letter-spacing:.22em;text-transform:uppercase;color:var(--d-ink)}

/* ---- bölüm rayı: sağ kenar ---- */
.dny-ray{position:absolute;right:var(--d-gut);top:50%;transform:translateY(-50%);list-style:none;margin:0;padding:0;display:grid;gap:.15rem;
  opacity:0;transition:opacity .6s ease}
.dny-bolum.gecti .dny-ray{opacity:1}
.dny-ray button{all:unset;cursor:pointer;display:flex;align-items:center;justify-content:flex-end;gap:.7rem;min-height:1.6rem;padding:0 .1rem;
  font-family:var(--mono);font-size:.625rem;letter-spacing:.18em;text-transform:uppercase;color:transparent;transition:color .3s}
.dny-ray button::after{content:"";display:block;width:.9rem;height:1px;background:rgba(238,242,245,.35);transition:width .35s ease,background .3s}
.dny-ray button:hover,.dny-ray button:focus-visible{color:var(--d-muted)}
.dny-ray li.gecildi button::after{background:rgba(111,220,236,.55)}
.dny-ray li.etkin button{color:var(--d-ink)}
.dny-ray li.etkin button::after{width:2rem;background:var(--d-cyan)}
.dny-ray li.dis button::after{background:rgba(238,242,245,.22)}

/* ---- ilerleme çizgisi ---- */
.dny-ilerleme{position:absolute;left:0;right:0;bottom:0;height:2px;background:rgba(238,242,245,.08)}
.dny-ilerleme i{display:block;height:100%;width:100%;transform-origin:left;transform:scaleX(var(--p,0));background:linear-gradient(90deg,rgba(111,220,236,.2),var(--d-cyan))}

/* ---- kapanış: kahraman kadrajı + imza ---- */
.dny-son{position:absolute;inset:auto var(--d-gut) clamp(2rem,9vh,5rem);max-width:42rem;opacity:0;transform:translateY(1rem);pointer-events:none;
  transition:opacity .9s ease,transform 1.1s cubic-bezier(.2,.7,.2,1)}
.dny-son.gor{opacity:1;transform:none;pointer-events:auto}
.dny-son .ust{margin:0;font-family:var(--mono);font-size:.6875rem;letter-spacing:.22em;text-transform:uppercase;color:var(--d-cyan)}
.dny-son h2,.dny-son .dny-imza{margin:.8rem 0 0;font-family:var(--sans);font-weight:600;font-size:clamp(2.6rem,7vw,5.25rem);line-height:.95;letter-spacing:-.055em;color:var(--d-ink)}
.dny-son p.alt{margin:1rem 0 0;max-width:34rem;font-size:1.0625rem;line-height:1.6;color:var(--d-muted)}
.dny-dg{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.6rem}
.dny-dg a,.dny-dg button{display:inline-flex;align-items:center;min-height:2.75rem;padding:0 1.15rem;border:1px solid rgba(238,242,245,.28);background:rgba(7,9,11,.45);backdrop-filter:blur(6px);
  font:500 .8125rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--d-ink);cursor:pointer;transition:border-color .2s,color .2s,background .2s}
.dny-dg a:hover,.dny-dg button:hover{border-color:var(--d-ink)}
.dny-dg .birincil{background:var(--d-accent);border-color:var(--d-accent);color:#0b0e10}
.dny-dg .birincil:hover{background:#d8ff6a;border-color:#d8ff6a}

/* ---- yükleniyor ---- */
.dny-yuk{position:absolute;right:var(--d-gut);bottom:1.4rem;margin:0;font-family:var(--mono);font-size:.6875rem;letter-spacing:.2em;text-transform:uppercase;color:var(--d-faint);transition:opacity .6s}
.dny-bolum.hazir .dny-yuk,.dny-bolum.statik .dny-yuk{opacity:0}

/* ---- WebGL yok / hareket azaltılmış: durağan kapak ---- */
.dny-bolum.statik .dny-serit,.dny-bolum.statik .dny-ray,.dny-bolum.statik .dny-hud,.dny-bolum.statik .dny-alt,.dny-bolum.statik .dny-son,.dny-bolum.statik .dny-ilerleme,.dny-bolum.statik .dny-kaydir{display:none}

/* ---- parça listesi: her durumda okunur metin ---- */
.dny-liste{border-top:1px solid var(--d-line);padding:clamp(4rem,9vw,7rem) var(--d-gut)}
.dny-liste .ic{max-width:76rem;margin:0 auto}
.dny-liste .etiket{margin:0;font-family:var(--mono);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--d-cyan)}
.dny-liste h2{margin:.9rem 0 0;font-family:var(--sans);font-size:clamp(2rem,4.2vw,3.1rem);line-height:1.05;letter-spacing:-.04em;font-weight:600;max-width:22ch}
.dny-liste .giris{margin:1.2rem 0 0;max-width:62ch;font-size:1.0625rem;line-height:1.7;color:var(--d-muted)}
.dny-liste ol{list-style:none;margin:3rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));gap:1px;background:var(--d-line);border:1px solid var(--d-line)}
.dny-liste li{background:var(--d-bg);padding:1.5rem 1.4rem 1.6rem}
.dny-liste li .n{font-family:var(--mono);font-size:.6875rem;letter-spacing:.2em;color:var(--d-cyan)}
.dny-liste li h3{margin:.6rem 0 0;font-size:1.1875rem;font-weight:600;letter-spacing:-.02em}
.dny-liste li h3 span{margin-left:.5rem;font-family:var(--mono);font-size:.625rem;font-weight:400;letter-spacing:.18em;color:var(--d-faint)}
.dny-liste li p{margin:.55rem 0 0;font-size:.9375rem;line-height:1.6;color:var(--d-muted)}
.dny-liste .not{margin:1.5rem 0 0;font-family:var(--mono);font-size:.75rem;line-height:1.6;letter-spacing:.03em;color:var(--d-faint);max-width:80ch}
.dny-liste .dny-dg{margin-top:2.5rem}
.dny-liste a{color:var(--d-ink)}

@media (max-width:820px){
  .dny-bolum.uc-boyut{height:1300vh}
  .dny-ray{right:.35rem}
  .dny-ray button{font-size:0;gap:0}
  .dny-ray button::after{width:.6rem}
  .dny-ray li.etkin button::after{width:1.2rem}
  .dny-hud,.dny-alt{right:2.6rem;bottom:clamp(1.5rem,7vh,3rem)}
  .dny-hud h2{font-size:2.1rem}
  .dny-serit{font-size:.625rem;letter-spacing:.16em}
  .dny-serit .bolum-ad{max-width:55vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}
@media (prefers-reduced-motion:reduce){
  .dny-kaydir i{animation:none}
  .dny-hud,.dny-son,.dny-acilis{transition:opacity .2s linear}
}

/* ---- koyu kabuk: üst menü ve altbilgi (ana sayfayla aynı değişkenler) ---- */
body.dny-body,:root[data-vardiya] body.dny-body{background:#07090b}
body.dny-body header{--ink:#e9edf0;--muted:#aab3ba;--line:#262e35;--surface:#141a1f;--raise:#1b2328;--ground:#0b0e10;
  background:rgba(7,9,11,.55);border-bottom-color:rgba(238,242,245,.08);backdrop-filter:blur(12px)}
:root[data-vardiya] body.dny-body header,:root body.dny-body header{background:rgba(7,9,11,.55);backdrop-filter:blur(12px)}
body.dny-body header .plate{background:#c7ff32;border-color:#c7ff32;color:#0b0e10}
body.dny-body header .plate:hover{background:#d8ff6a}
body.dny-body footer{background:#050607;border-top:1px solid #1b2127;color:#9aa3ab}
body.dny-body footer .mono,body.dny-body footer .mono a{color:#9aa3ab}
body.dny-body footer a:hover{color:#e9edf0}
.dny *,.dny *::before,.dny *::after{box-sizing:border-box}
.dny-dg[hidden]{display:none}
html:has(body.dny-body){background:#07090b}
.dny-liste h2,.dny-liste li h3{color:var(--d-ink)}

/* ---- ana sayfa kapağı olarak ---- */
.ana .dny-bolum{padding:0;border-top:0}
.dny-ana.uc-boyut{height:1200vh}
.dny-kapak-alt{transition:opacity .6s ease,transform .6s ease}
.dny-kapak-alt .rakam{margin-top:clamp(1.5rem,4vh,2.5rem)}
.dny-basla{display:contents}
.dny-basla[hidden]{display:none}
.dny-basla .dg{font-family:var(--sans);background:transparent;cursor:pointer}
.dny-bolum.gecti .dny-kapak-alt{opacity:0;transform:translateY(-1rem);pointer-events:none}
.dny-ana .hud{transition:opacity .5s ease}
.dny-bolum.gecti .hud{opacity:0;pointer-events:none}
.dny-bolum.statik .kaydir{display:none}
.dny-atla{position:absolute;right:var(--d-gut);top:calc(4.4rem + env(safe-area-inset-top) + 1.6rem);font-family:var(--mono);font-size:.6875rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--d-muted);border-bottom:1px solid rgba(238,242,245,.25);padding:.35rem 0;opacity:0;pointer-events:none;transition:opacity .5s ease,color .2s}
.dny-atla:hover,.dny-atla:focus-visible{color:var(--d-ink);opacity:1}
.dny-bolum.uc-boyut:not(.sonda) .dny-atla{opacity:1;pointer-events:auto}
.dny-bolum.statik .dny-atla{display:none}
@media (max-width:820px){.dny-ana.uc-boyut{height:1050vh}}
@media (max-width:820px){.dny-ana:not(.gecti) .dny-atla{top:auto;bottom:clamp(1.3rem,4vh,2.6rem)}}
/* alçak ekranlar (dizüstü, tarayıcı çubukları açık): canlı rüzgâr kutusu tek satır, düğmelerle çakışmasın */
@media (min-width:821px) and (max-height:780px){
  .dny-ana .hud{width:auto;max-width:36rem;padding:.6rem .8rem .55rem}
  .dny-ana .hud .egri{display:none!important}
  .dny-ana .hud dl{grid-template-columns:repeat(4,auto);gap:.2rem 1.2rem;margin-top:.45rem}
  .dny-ana .hud dd b{font-size:1.05rem}
  .dny-ana .hud-alt{margin-top:.4rem}
  .dny-ana .dny-kapak-alt .rakam{margin-top:1rem}
}

/* ===================== teknik işaret noktaları ve irtifa cetveli ===================== */
.v-noktalar{position:absolute;inset:0;pointer-events:none;z-index:2}
.v-nokta{all:unset;position:absolute;left:0;top:0;display:flex;align-items:center;gap:.55rem;margin:-.6rem 0 0 -.6rem;padding:.2rem;cursor:pointer;pointer-events:auto;
  opacity:0;visibility:hidden;transition:opacity .35s ease,visibility 0s linear .35s;will-change:transform}
.v-nokta.gor{opacity:1;visibility:visible;transition:opacity .35s ease}
.v-nokta i{position:relative;display:block;width:.8rem;height:.8rem;border-radius:50%;border:1px solid rgba(238,242,245,.85);background:rgba(7,9,11,.35);box-shadow:0 0 0 3px rgba(7,9,11,.25)}
.v-nokta i::after{content:"";position:absolute;inset:3px;border-radius:50%;background:#6fdcec}
.v-nokta i::before{content:"";position:absolute;inset:-6px;border-radius:50%;border:1px solid rgba(111,220,236,.45);animation:vNabiz 2.4s ease-out infinite}
@keyframes vNabiz{0%{transform:scale(.6);opacity:.9}100%{transform:scale(1.6);opacity:0}}
.v-nokta span{font-family:var(--mono);font-size:.625rem;letter-spacing:.16em;text-transform:uppercase;color:#eef2f5;text-shadow:0 1px 8px rgba(0,0,0,.8);
  opacity:.75;transition:opacity .2s}
.v-nokta:hover span,.v-nokta:focus-visible span{opacity:1}
.v-nokta:focus-visible i{outline:2px solid #6fdcec;outline-offset:3px}
.v-nokta-bilgi{position:absolute;left:0;top:0;z-index:3;width:min(17.5rem,calc(100vw - 2rem));padding:.9rem 1rem 1rem;pointer-events:auto;
  background:rgba(9,12,14,.9);border:1px solid rgba(238,242,245,.14);border-top:1px solid #6fdcec;backdrop-filter:blur(8px);
  opacity:0;visibility:hidden;transition:opacity .2s ease,visibility 0s linear .2s}
.v-nokta-bilgi.gor{opacity:1;visibility:visible;transition:opacity .2s ease}
.v-nb-no{margin:0;font-family:var(--mono);font-size:.625rem;letter-spacing:.2em;color:#6fdcec}
.v-nb-ad{margin:.35rem 0 0;font-family:var(--sans);font-size:1.0625rem;font-weight:600;letter-spacing:-.02em;color:#eef2f5}
.v-nb-t{margin:.4rem 0 0;font-size:.8125rem;line-height:1.55;color:#a3adb5}
.v-nb-git{display:inline-block;margin-top:.6rem;font-family:var(--mono);font-size:.625rem;letter-spacing:.16em;text-transform:uppercase;color:#eef2f5;border-bottom:1px solid rgba(238,242,245,.3)}
.v-nb-git::after{content:" →"}
.v-nb-git:hover{color:#6fdcec;border-color:#6fdcec}
.v-irtifa{position:absolute;left:var(--d-gut,1.5rem);top:26%;height:36%;width:3.4rem;pointer-events:none;opacity:0;transition:opacity .6s ease}
.v-irtifa.gor{opacity:1}
.v-ir-cetvel{position:relative;height:100%;border-left:1px solid rgba(238,242,245,.3);
  background:repeating-linear-gradient(to top,rgba(238,242,245,.22) 0 1px,transparent 1px 12.5%) left/5px 100% no-repeat}
.v-ir-cetvel i{position:absolute;left:0;bottom:calc(var(--y)*100%);transform:translateY(50%);font-style:normal;display:flex;align-items:center;gap:.4rem}
.v-ir-cetvel i::before{content:"";width:.6rem;height:1px;background:rgba(238,242,245,.6)}
.v-ir-cetvel b{font-family:var(--mono);font-size:.625rem;font-weight:400;color:#a3adb5;font-variant-numeric:tabular-nums}
.v-ir-ok{position:absolute;left:-4px;bottom:calc(var(--y,0)*100%);width:7px;height:7px;transform:translateY(50%) rotate(45deg);background:#6fdcec;box-shadow:0 0 10px rgba(111,220,236,.6)}
.v-ir-b{position:absolute;left:0;bottom:-1.8rem;margin:0;font-family:var(--mono);font-size:.5625rem;letter-spacing:.2em;color:#76818a;white-space:nowrap}
.dny-bolum.statik .v-noktalar,.dny-bolum.statik .v-irtifa,.dny-bolum.statik .v-nokta-bilgi{display:none}
@media (max-width:820px){ .v-irtifa{display:none} .v-nokta span{display:none} }
@media (prefers-reduced-motion:reduce){ .v-nokta i::before{animation:none;opacity:0} }
