/* SENTINEL üyelik arayüzü (P6) — /uye/
   Site jetonlarına (sentinel.css / theme.css) yaslanır; kendi renklerini --u-* adıyla her iki temada AÇIKÇA tanımlar.
   Telefon öncelikli: 360 px'te yatay taşma yok, dokunma hedefleri >= 44 px, giriş yazı boyu >= 16 px (iOS yakınlaştırma yok).
   Üçüncü taraf kaynak yok. */

/* Koyu temada sayfa zemini: sitenin koyu zemini w2b-science-factory.css'te (burada yuklenmiyor); ayni renk burada verilir. */
html[data-theme="dark"] body{background:#06090A;color:#EEF1F6}
.uye-sayfa{
  --u-kart:#101622; --u-kart2:#171F2F; --u-fg:#EEF1F6; --u-mute:#B2BCCD; --u-line:rgba(255,255,255,.18); --u-line2:rgba(255,255,255,.34);
  --u-acc:#6FE3F2; --u-btn:#0E7C8C; --u-btn-h:#0A6471; --u-btn-fg:#FFFFFF; --u-or:#FF9245;
  --u-err:#FFA39B; --u-err-bg:rgba(255,120,110,.12); --u-err-line:rgba(255,140,130,.5); --u-danger:#C2362B; --u-danger-h:#A52C23;
  --u-ok:#86DDAE; --u-ok-bg:rgba(126,212,166,.12); --u-field:#0A0F18; --u-user:#0E7C8C; --u-warn-bg:rgba(255,146,69,.10);
  color:var(--u-fg);
  padding-block:clamp(28px,5vw,64px) clamp(48px,7vw,96px);
  min-height:calc(100svh - 63px);
  background:
    radial-gradient(900px 420px at 12% -8%,rgba(14,124,140,.20),transparent 70%),
    radial-gradient(700px 360px at 100% 0%,rgba(255,146,69,.08),transparent 70%);
}
html[data-theme="light"] .uye-sayfa{
  --u-kart:#FFFFFF; --u-kart2:#EEF2F7; --u-fg:#141A25; --u-mute:#4A5466; --u-line:rgba(11,14,20,.18); --u-line2:rgba(11,14,20,.38);
  --u-acc:#0B6675; --u-btn:#0E7C8C; --u-btn-h:#0A6471; --u-btn-fg:#FFFFFF; --u-or:#A84C08;
  --u-err:#B3261E; --u-err-bg:#FDECEA; --u-err-line:rgba(179,38,30,.45); --u-danger:#B3261E; --u-danger-h:#8F1E18;
  --u-ok:#1B6B43; --u-ok-bg:#E7F5EC; --u-field:#FFFFFF; --u-user:#0E7C8C; --u-warn-bg:#FFF3E8;
  background:
    radial-gradient(900px 420px at 12% -8%,rgba(14,124,140,.10),transparent 70%),
    radial-gradient(700px 360px at 100% 0%,rgba(168,76,8,.06),transparent 70%);
}
.uye-sayfa *,.uye-sayfa *::before,.uye-sayfa *::after{box-sizing:border-box}

.uye-wrap{width:min(100% - 2*var(--gutter,20px),980px);margin-inline:auto}
.uye-sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}

/* ---- kart ve başlıklar ---- */
.uye-kart{
  background:var(--u-kart);color:var(--u-fg);border:1px solid var(--u-line);border-radius:var(--r-lg,22px);
  padding:clamp(20px,4vw,36px);margin-inline:auto;box-shadow:0 18px 50px -28px rgba(0,0,0,.55);
}
html[data-theme="light"] .uye-kart{box-shadow:0 18px 50px -30px rgba(20,26,37,.28)}
.uye-kart[hidden]{display:none}
.uye-sayfa [hidden]{display:none!important}
.uye-dar{max-width:520px}
.uye-genis{max-width:860px}
.uye-kart h1{margin:0 0 8px;font-family:var(--display,Sora,system-ui,sans-serif);font-weight:700;font-size:clamp(1.55rem,1.25rem + 1.6vw,2.15rem);line-height:1.2;color:var(--u-fg);padding-block:.06em}
.uye-kart h1:focus{outline:none}
.uye-h2{margin:0 0 12px;font-family:var(--display,Sora,system-ui,sans-serif);font-size:1.2rem;line-height:1.3;color:var(--u-fg)}
.uye-etiket{margin:0 0 10px;font:600 .8rem/1.3 var(--mono,ui-monospace,monospace);letter-spacing:.16em;text-transform:uppercase;color:var(--u-or)}
.uye-alt{margin:0 0 20px;color:var(--u-mute);font-size:1.02rem;line-height:1.6} .uye-guven{margin:0 0 14px;padding:10px 14px;border-radius:12px;border:1px solid var(--u-or);color:var(--u-fg);font-size:.98rem;font-weight:600;line-height:1.5;overflow-wrap:anywhere}
.uye-not{margin:14px 0 0;color:var(--u-mute);font-size:.95rem;line-height:1.6}
.uye-vurgu{padding:12px 14px;border-radius:12px;background:var(--u-warn-bg);border:1px solid var(--u-or);color:var(--u-fg)}
.uye-ipucu{margin:6px 0 0;color:var(--u-mute);font-size:.88rem;line-height:1.5}
.uye-yer-tutucu{padding:2px 6px;border-radius:6px;border:1px dashed var(--u-or);color:var(--u-or);font-size:.85rem}
p.uye-yer-tutucu{padding:8px 10px}
.uye-bos{margin:8px 0 0;padding:16px;border-radius:14px;border:1px dashed var(--u-line2);color:var(--u-mute)}
.uye-ayrac{height:1px;background:var(--u-line);margin:26px 0}
.uye-baglar{margin:20px 0 0;color:var(--u-mute);font-size:.98rem;text-align:center}
.uye-baglar a{display:inline-flex;align-items:center;min-height:44px;padding:0 6px}   /* tek basina duran baglantilar: 44 px dokunma hedefi (P6-FIX D-3) */
.uye-kart a:not(.uye-btn):not(.uye-gitkart){color:var(--u-acc);text-decoration:underline;text-underline-offset:3px}
.uye-kart a:not(.uye-btn):not(.uye-gitkart):hover{text-decoration-thickness:2px}
.uye-yukleniyor{display:flex;align-items:center;gap:12px;margin:0;color:var(--u-mute)}
.uye-nokta{width:14px;height:14px;border-radius:50%;border:2px solid var(--u-acc);border-right-color:transparent;animation:uye-don 0.9s linear infinite}
@keyframes uye-don{to{transform:rotate(360deg)}}

/* ---- hesap gezinmesi, bilgi şeridi ---- */
.uye-hesapnav{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;max-width:860px;margin:0 auto 16px}
.uye-hesapnav[hidden]{display:none}
.uye-hesapnav a,.uye-hesapnav button{
  display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--u-line2);
  background:transparent;color:var(--u-fg);font:600 .92rem/1 var(--body,system-ui,sans-serif);text-decoration:none;cursor:pointer}
.uye-hesapnav a[aria-current="page"]{background:var(--u-btn);border-color:var(--u-btn);color:var(--u-btn-fg)}
.uye-hesapnav a:hover,.uye-hesapnav button:hover{border-color:var(--u-acc)}
.uye-hesapnav button{margin-left:auto}
.uye-bilgi{max-width:860px;margin:0 auto 16px;padding:12px 16px;border-radius:14px;border:1px solid var(--u-ok);background:var(--u-ok-bg);color:var(--u-fg);font-size:.98rem;line-height:1.5}
.uye-bilgi[hidden]{display:none}
.uye-bilgi[data-tur="uyari"]{border-color:var(--u-or);background:var(--u-warn-bg)}

/* ---- uyarı / hata ---- */
.uye-uyari{margin:0 0 16px;padding:12px 14px;border-radius:12px;border:1px solid var(--u-err-line);background:var(--u-err-bg);color:var(--u-fg);font-size:.98rem;line-height:1.55}
.uye-uyari[hidden]{display:none}
.uye-uyari p{margin:0}
.uye-uyari p+p{margin-top:10px}
.uye-uyari[data-tur="bilgi"]{border-color:var(--u-or);background:var(--u-warn-bg)}
.uye-uyari .uye-iz{display:block;margin-top:6px;color:var(--u-mute);font-size:.82rem;font-family:var(--mono,ui-monospace,monospace)}
.uye-hata{margin:6px 0 0;color:var(--u-err);font-size:.92rem;line-height:1.45;font-weight:600}
.uye-hata[hidden]{display:none}
.uye-kapali{padding:14px 16px;border-radius:12px;border:1px solid var(--u-or);background:var(--u-warn-bg);margin-bottom:8px}
.uye-kapali[hidden]{display:none}
.uye-kapali p{margin:0}

/* ---- form ---- */
.uye-alan{margin:0 0 18px}
.uye-alan>label:not(.uye-onay),.uye-kart form>label:not(.uye-onay):not(.uye-sr){display:block;margin:0 0 6px;font-weight:700;font-size:.98rem;color:var(--u-fg)}
.uye-sayfa input[type="text"],.uye-sayfa input[type="password"],.uye-sayfa input[type="email"],.uye-sayfa input[type="tel"],.uye-sayfa textarea{
  width:100%;min-height:50px;padding:12px 14px;border-radius:14px;border:1px solid var(--u-line2);background:var(--u-field);color:var(--u-fg);
  font:inherit;font-size:16px;line-height:1.4}
.uye-sayfa textarea{min-height:96px;resize:vertical}
.uye-sayfa input::placeholder,.uye-sayfa textarea::placeholder{color:var(--u-mute);opacity:.85}
.uye-sayfa input[aria-invalid="true"]{border-color:var(--u-err);box-shadow:0 0 0 1px var(--u-err)}
.uye-sayfa :is(input,textarea,button,summary,a,[tabindex]:not([tabindex="-1"])):focus-visible{outline:3px solid var(--u-acc);outline-offset:2px}
.uye-sayfa [tabindex="-1"]:focus{outline:none}
.uye-parola{position:relative;display:flex;align-items:stretch;gap:8px}
.uye-parola input{flex:1;min-width:0}
.uye-goster{flex:none;min-width:84px;min-height:50px;padding:0 14px;border-radius:14px;border:1px solid var(--u-line2);background:transparent;color:var(--u-fg);font:600 .9rem/1 var(--body,system-ui,sans-serif);cursor:pointer}
.uye-goster:hover{border-color:var(--u-acc)}
.uye-onay{display:flex;align-items:flex-start;gap:12px;min-height:44px;padding:6px 0;cursor:pointer;color:var(--u-fg);font-size:.98rem;line-height:1.5}
.uye-onay input{flex:none;width:24px;height:24px;margin:2px 0 0;accent-color:var(--u-btn);cursor:pointer}
.uye-onay a,.uye-bos a,.uye-not a{padding:2px 0}   /* cumle ici baglanti: en az 24 px yukseklik (P6-FIX D-3) */
.uye-kutu{margin-bottom:8px}

/* ---- düğmeler ---- */
.uye-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 24px;border-radius:999px;border:1px solid var(--u-btn);
  background:var(--u-btn);color:var(--u-btn-fg);font:700 1rem/1.2 var(--body,system-ui,sans-serif);text-decoration:none;cursor:pointer;text-align:center}
.uye-btn:hover{background:var(--u-btn-h);border-color:var(--u-btn-h)}
.uye-btn[disabled],.uye-btn[aria-disabled="true"]{opacity:.5;cursor:not-allowed}
.uye-btn[disabled]:hover{background:var(--u-btn);border-color:var(--u-btn)}
.uye-btn.uye-ikincil{background:transparent;color:var(--u-fg);border-color:var(--u-line2)}
.uye-btn.uye-ikincil:hover{border-color:var(--u-acc);background:transparent}
.uye-btn.uye-tehlike-btn{background:var(--u-danger);border-color:var(--u-danger);color:#fff}
.uye-btn.uye-tehlike-btn:hover{background:var(--u-danger-h);border-color:var(--u-danger-h)}
.uye-btn.uye-kucuk{min-height:44px;padding:0 18px;font-size:.95rem}
.uye-tam{width:100%}
.uye-satir{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin:14px 0}
.uye-satir-bol{gap:12px}
.uye-durum{color:var(--u-ok);font-weight:600;font-size:.95rem}
.uye-durum[data-tur="hata"]{color:var(--u-err)}
.uye-link-btn{min-height:44px;padding:0 6px;border:0;background:none;color:var(--u-acc);font:600 .95rem/1 var(--body,system-ui,sans-serif);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.uye-link-btn[hidden]{display:none}

/* ---- parolamı unuttum: kanal seçimi (iki açık seçenek) ---- */
.uye-secim{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:4px 0 18px}
.uye-secim .uye-btn{width:100%;white-space:normal;line-height:1.3;min-height:48px}
.uye-secim .uye-btn[aria-pressed="true"]{border-color:var(--u-acc);box-shadow:0 0 0 2px var(--u-acc) inset;font-weight:700}
@media (max-width:380px){ .uye-secim{grid-template-columns:1fr} }
/* parola yöneticisi için görünmez ama formda duran kullanıcı (e-posta) alanı */
.uye-gizli-alan{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;border:0!important;opacity:0}

/* ---- hesabım ---- */
.uye-grid2{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr))}
.uye-gitkart{display:flex;flex-direction:column;gap:6px;min-height:96px;padding:18px;border-radius:16px;border:1px solid var(--u-line2);background:var(--u-kart2);color:var(--u-fg);text-decoration:none}
.uye-gitkart strong{font-family:var(--display,Sora,system-ui,sans-serif);font-size:1.08rem;line-height:1.3}
.uye-gitkart span{color:var(--u-mute);font-size:.94rem;line-height:1.5}
.uye-gitkart:hover{border-color:var(--u-acc)}
.uye-ayar{margin:0 0 12px;border:1px solid var(--u-line);border-radius:14px;background:transparent}
.uye-ayar>summary{display:flex;align-items:center;min-height:52px;padding:10px 16px;cursor:pointer;font-weight:700;color:var(--u-fg);list-style:none}
.uye-ayar>summary::-webkit-details-marker{display:none}
.uye-ayar>summary::after{content:"+";margin-left:auto;font-size:1.3rem;color:var(--u-acc)}
.uye-ayar[open]>summary::after{content:"\2212"}
.uye-ayar>*:not(summary){margin-inline:16px}
.uye-ayar>*:last-child{margin-bottom:16px}
.uye-ayar>form{margin-top:4px}
.uye-tehlike>summary{color:var(--u-err)}

/* ---- hayal sohbeti ---- */
.uye-hayalust{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.uye-tur{flex:none;margin:6px 0 0;padding:6px 14px;border-radius:999px;border:1px solid var(--u-line2);font:700 .88rem/1 var(--mono,ui-monospace,monospace);color:var(--u-fg);white-space:nowrap}
.uye-log{display:flex;flex-direction:column;gap:12px;margin:16px 0;padding:14px;border-radius:16px;border:1px solid var(--u-line);background:var(--u-kart2);
  min-height:200px;max-height:min(52vh,460px);overflow-y:auto;scroll-behavior:smooth}
.uye-log:focus-visible{outline:3px solid var(--u-acc);outline-offset:2px}
.uye-bal{max-width:88%;padding:10px 14px;border-radius:16px;font-size:1rem;line-height:1.55;white-space:pre-line;overflow-wrap:anywhere}
.uye-bal .uye-kim{display:block;margin-bottom:4px;font:600 .78rem/1.2 var(--mono,ui-monospace,monospace);letter-spacing:.14em;text-transform:uppercase}
.uye-bal-s{align-self:flex-start;background:var(--u-kart);border:1px solid var(--u-line2);color:var(--u-fg)}
.uye-bal-s .uye-kim{color:var(--u-or)}
.uye-bal-k{align-self:flex-end;background:var(--u-user);border:1px solid var(--u-user);color:#fff}
.uye-bal-k .uye-kim{color:#fff;opacity:.9}
.uye-bal-d{color:var(--u-mute)}
.uye-bal[data-gonderilemedi="1"]{border-style:dashed;opacity:.8}
.uye-sayac{text-align:right}

/* ---- öneri kartları ---- */
.uye-oneriler{display:grid;gap:14px;margin:12px 0}
.uye-oneri{padding:18px;border-radius:16px;border:1px solid var(--u-line2);background:var(--u-kart2)}
.uye-oneri[data-durum="eklendi"]{border-color:var(--u-ok)}
.uye-oneri h3{margin:0 0 4px;font-family:var(--display,Sora,system-ui,sans-serif);font-size:1.12rem;line-height:1.3;color:var(--u-fg)}
.uye-oneri p{margin:6px 0 0;font-size:.98rem;line-height:1.55;color:var(--u-fg)}
.uye-oneri .uye-mute{color:var(--u-mute)}
.uye-oneri .uye-ust{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;margin-bottom:6px}
.uye-rozet{display:inline-flex;align-items:center;min-height:26px;padding:2px 10px;border-radius:999px;border:1px solid var(--u-or);color:var(--u-or);font:700 .8rem/1.2 var(--mono,ui-monospace,monospace);letter-spacing:.06em;text-transform:uppercase}
.uye-rozet-ok{border-color:var(--u-ok);color:var(--u-ok)}
.uye-oneri .uye-satir{margin:14px 0 0}
.uye-oneri form{margin-top:12px}
.uye-oneri .uye-alan{margin-bottom:12px}
.uye-oneri-alt{margin-top:18px}

/* ---- ekran: dar telefon ---- */
@media (max-width:640px){
  .uye-grid2{grid-template-columns:minmax(0,1fr)}
  .uye-bal{max-width:94%}
  .uye-hayalust{flex-direction:column;gap:0}
  .uye-tur{margin:0 0 4px}
  .uye-satir-bol .uye-btn{flex:1 1 100%}
  .uye-oneri .uye-satir .uye-btn{flex:1 1 100%}
  .uye-hesapnav button{margin-left:0}
}
@media (max-width:380px){
  .uye-kart{padding:18px 16px;border-radius:18px}
  .uye-goster{min-width:72px}
}
@media (prefers-reduced-motion:reduce){.uye-nokta{animation:none}.uye-log{scroll-behavior:auto}}
@media (forced-colors:active){.uye-kart,.uye-oneri,.uye-ayar{border-color:CanvasText}.uye-btn{border-color:ButtonText}}

/* ---- P9G: e-posta + telefon doğrulaması (3 adım) ---- */
.uye-adimlar{display:flex;gap:8px;list-style:none;margin:0 0 18px;padding:0}
.uye-adimlar[hidden]{display:none}
.uye-adimlar li{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;color:var(--u-mute);font-size:.84rem;line-height:1.3}
.uye-adim-no{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:50%;border:2px solid var(--u-line2);font:700 .92rem/1 var(--mono,ui-monospace,monospace);color:var(--u-fg)}
.uye-adimlar li[data-durum="su-an"]{color:var(--u-fg);font-weight:700}
.uye-adimlar li[data-durum="su-an"] .uye-adim-no{background:var(--u-btn);border-color:var(--u-btn);color:var(--u-btn-fg)}
.uye-adimlar li[data-durum="bitti"] .uye-adim-no{border-color:var(--u-ok);color:var(--u-ok)}
.uye-adim-ad{overflow-wrap:anywhere}
.uye-telsatir{display:flex;align-items:stretch;gap:8px}
.uye-telsatir input{flex:1;min-width:0}
.uye-telon{flex:none;display:inline-flex;align-items:center;min-height:50px;padding:0 14px;border-radius:14px;border:1px solid var(--u-line2);background:var(--u-kart2);color:var(--u-fg);font-weight:700;font-size:16px}
.uye-sayfa input.uye-kodalan{font-family:var(--mono,ui-monospace,Menlo,Consolas,monospace);font-size:1.4rem;font-weight:700;letter-spacing:.3em;text-align:center}
.uye-kart form[aria-busy="true"] button{pointer-events:none}
.uye-kart form .uye-h2{margin-bottom:8px}
.uye-deneme{margin:-6px 0 18px;padding:10px 14px;border-radius:12px;border:1px solid var(--u-ok);background:var(--u-ok-bg);color:var(--u-fg);font-size:.96rem;line-height:1.5}
.uye-deneme[hidden]{display:none}
@media (max-width:380px){
  .uye-adimlar{gap:4px}
  .uye-adimlar li{font-size:.78rem}
  .uye-sayfa input.uye-kodalan{letter-spacing:.2em}
}
