/*
 * Acente Mail Güvenliği Araştırması 2026 - görünüm kuralları (2026-10-01).
 *
 * SAB kurumsal kimliğine bağlı: renk, yazı tipi ve ölçüler sab.org.tr sitesindeki sab-tokens.css ile BİREBİR aynı
 * (C:\SAB Dernek Sitesi\sab-app\resources\css\sab-tokens.css). Değer oradan değişirse burada da değişir.
 * Kurallar: ara ton üretilmez; sarı (#FFF44C) beyaz zeminde yazı rengi olamaz, yalnız dolgu; gölge yok, ayrım 1px
 * kenarlıkla; birincil düğme sarı zemin + siyah yazı; odak halkası kaldırılmaz.
 * Yazı tipleri kendi sunucumuzdan verilir (KVKK): dışarıya istek gitmez.
 */

@font-face { font-family:'Archivo Narrow'; font-weight:600; font-style:normal; font-display:swap; src:url('fonts/archivo-narrow-600.woff2') format('woff2'); }
@font-face { font-family:'Archivo Narrow'; font-weight:700; font-style:normal; font-display:swap; src:url('fonts/archivo-narrow-700.woff2') format('woff2'); }
@font-face { font-family:'Poppins'; font-weight:600; font-style:normal; font-display:swap; src:url('fonts/poppins-600.woff2') format('woff2'); }
@font-face { font-family:'Poppins'; font-weight:700; font-style:normal; font-display:swap; src:url('fonts/poppins-700.woff2') format('woff2'); }
@font-face { font-family:'Inter'; font-weight:400; font-style:normal; font-display:swap; src:url('fonts/inter-400.woff2') format('woff2'); }
@font-face { font-family:'Inter'; font-weight:500; font-style:normal; font-display:swap; src:url('fonts/inter-500.woff2') format('woff2'); }
@font-face { font-family:'Inter'; font-weight:700; font-style:normal; font-display:swap; src:url('fonts/inter-700.woff2') format('woff2'); }

:root {
  --font-heading:'Archivo Narrow', ui-sans-serif, system-ui, sans-serif;
  --font-ui:'Poppins', ui-sans-serif, system-ui, sans-serif;
  --font-body:'Inter', ui-sans-serif, system-ui, sans-serif;

  --sab-yellow:#FFF44C;
  --sab-yellow-hover:#EAD400;
  --sab-black:#1A1A1A;
  --sab-bg:#FFFFFF;
  --sab-bg-alt:#F7F6F2;
  --sab-text:#1A1A1A;
  --sab-text-muted:#55554F;
  --sab-border:#E5E4DE;
  --sab-error:#B3261E;
  --sab-error-bg:#FBEAE9;
  --sab-error-border:#E5B4B0;
  --sab-error-text:#7A1C16;
  --sab-dark-body:#D9D8D2;
  --sab-dark-micro:#C9C8C2;
  --sab-dark-divider:#3A3A36;

  --sab-radius:10px;
  --sab-radius-check:4px;
  --sab-radius-panel:16px;
  --sab-container:1080px;
  --sab-container-wide:1280px;
  --sab-section-y:56px;
}
@media (min-width:960px) { :root { --sab-section-y:80px; } }

* { box-sizing:border-box; }
html { -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
body { margin:0; background:var(--sab-bg); color:var(--sab-text); font:400 16px/1.65 var(--font-body); }
img { max-width:100%; height:auto; }
a { color:inherit; }
:focus-visible { outline:3px solid var(--sab-black); outline-offset:2px; }
[hidden] { display:none !important; }

.kap { max-width:var(--sab-container); margin:0 auto; padding:0 20px; }
.kap--genis { max-width:var(--sab-container-wide); }
.kap--dar { max-width:720px; }
.bolum { padding:var(--sab-section-y) 0; }
.bolum--alt { background:var(--sab-bg-alt); border-top:1px solid var(--sab-border); border-bottom:1px solid var(--sab-border); }

/* ---- Yazı ölçeği (sab-tokens.css ile aynı) ---- */
.sab-display { font:700 36px/1.1 var(--font-heading); margin:0; }
@media (min-width:960px) { .sab-display { font-size:48px; } }
.sab-headline-lg { font:700 28px/1.25 var(--font-heading); margin:0; }
@media (min-width:960px) { .sab-headline-lg { font-size:36px; } }
.sab-headline-md { font:600 24px/1.25 var(--font-heading); margin:0; }
.sab-body-lg { font:400 18px/1.65 var(--font-body); }
.sab-meta { font:500 14px/1.4 var(--font-body); color:var(--sab-text-muted); }

/* ---- Altı marka imzası ---- */
.sab-marka-serit { height:4px; background:var(--sab-yellow); }
.sab-bolum-baslik::after { content:""; display:block; width:56px; height:5px; margin-top:10px; background:var(--sab-yellow); border-radius:3px; }
.sab-kart { background:var(--sab-bg); border:1px solid var(--sab-border); border-radius:var(--sab-radius); padding:24px; }
.sab-kart--bilgi { border-top:4px solid var(--sab-yellow); }
.sab-kart--belge { border-left:4px solid var(--sab-yellow); }
.sab-hap { display:inline-block; font:600 13.6px/1.3 var(--font-ui); letter-spacing:.04em; text-transform:uppercase; background:var(--sab-yellow); color:var(--sab-black); padding:6px 14px; border-radius:9999px; }
.sab-rozet { display:inline-flex; align-items:center; justify-content:center; flex:none; width:32px; height:32px; border-radius:9999px; background:var(--sab-yellow); color:var(--sab-black); font:700 16px/1 var(--font-ui); }
.sab-btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; font:600 16px/1.2 var(--font-ui); padding:14px 28px; border-radius:var(--sab-radius); border:2px solid transparent; min-height:48px; cursor:pointer; text-decoration:none; text-align:center; }
.sab-btn--birincil { background:var(--sab-yellow); border-color:var(--sab-yellow); color:var(--sab-black); }
.sab-btn--birincil:hover { background:var(--sab-yellow-hover); border-color:var(--sab-yellow-hover); }
.sab-btn--ikincil { background:var(--sab-black); border-color:var(--sab-black); color:#FFFFFF; }
.sab-btn--ikincil:hover { background:#000000; border-color:#000000; }
.sab-btn--ghost { background:transparent; border-color:var(--sab-black); color:var(--sab-black); }
.sab-btn--ghost:hover { background:var(--sab-bg-alt); }
.sab-btn--tam { display:flex; width:100%; }
.sab-btn:disabled { opacity:.6; cursor:default; }
.sab-mesaj--hata { background:var(--sab-error-bg); border:1px solid var(--sab-error-border); color:var(--sab-error-text); padding:16px; border-radius:var(--sab-radius); }

/* ---- Üst bant ---- */
.ust-serit { background:var(--sab-black); color:var(--sab-dark-micro); font:500 13px/1.4 var(--font-body); }
.ust-serit .kap { display:flex; justify-content:space-between; gap:16px; padding-top:8px; padding-bottom:8px; }
.ust-serit a { text-decoration:none; }
.ust-serit a:hover { text-decoration:underline; }
.ust-serit a:focus-visible { outline-color:var(--sab-yellow); }
.ust { background:var(--sab-bg); border-bottom:1px solid var(--sab-border); }
.ust .kap { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-top:12px; padding-bottom:12px; }
.ust__logo { display:flex; align-items:center; gap:16px; text-decoration:none; min-width:0; }
.ust__logo img { display:block; width:93px; height:60px; flex:none; }
.ust__ad { font:600 14px/1.35 var(--font-ui); color:var(--sab-text-muted); }
.ust__ad b { display:block; font-weight:700; color:var(--sab-text); }
@media (max-width:640px) { .ust__ad { display:none; } .ust .sab-btn { padding:12px 18px; font-size:15px; } .ust-serit span + a { display:none; } }

/* ---- Giriş (hero) ---- */
/* Giriş ve anket yan yana: anket ilk ekranda görünmeli (kullanıcı isteği, 2026-10-01).
   Geniş ekranda solda tanıtım (kaydırırken yerinde kalır), sağda anket. Telefonda kısa tanıtım, hemen altında anket;
   üç maddelik özet telefonda gizlenir, yoksa anketi bir ekran aşağı itiyor. */
.giris { padding:28px 0 var(--sab-section-y); }
.giris__izgara { display:grid; gap:24px; align-items:start; }
.giris h1 { margin:14px 0 12px; }
.giris__yazi { color:var(--sab-text-muted); margin:0; max-width:60ch; }
.giris .ozet { display:none; margin-top:28px; padding-top:8px; border-top:1px solid var(--sab-border); }
.anket-panel { background:var(--sab-bg-alt); border:1px solid var(--sab-border); border-radius:var(--sab-radius-panel); padding:20px 16px; scroll-margin-top:16px; }
.anket__ust { margin:0 0 20px; }
.anket__ust p { color:var(--sab-text-muted); margin:14px 0 0; }
@media (max-width:959px) { .giris .sab-display { font-size:30px; } .giris .sab-body-lg { font-size:16px; } }
@media (min-width:960px) {
  .giris { padding-top:48px; }
  .giris__izgara { grid-template-columns:minmax(0, 1fr) minmax(0, 1.25fr); gap:56px; }
  .giris__sol { position:sticky; top:32px; }
  .giris .ozet { display:block; }
  .anket-panel { padding:28px; }
}
.ozet { list-style:none; margin:16px 0 0; padding:0; }
.ozet li { display:flex; gap:12px; align-items:flex-start; padding:12px 0; border-top:1px solid var(--sab-border); }
.ozet li:first-child { border-top:0; padding-top:0; }
.ozet svg { width:24px; height:24px; flex:none; margin-top:1px; }
.ozet b { display:block; font:600 16px/1.35 var(--font-ui); }
.ozet span { color:var(--sab-text-muted); font-size:15px; line-height:1.5; }

/* ---- Bölüm içerikleri ---- */
.bolum__ust { margin:0 0 32px; }
.bolum__ust p { color:var(--sab-text-muted); margin:16px 0 0; max-width:65ch; }
.bolum__son { margin:32px 0 0; text-align:center; }
.uclu { display:grid; gap:20px; }
@media (min-width:800px) { .uclu { grid-template-columns:repeat(3, minmax(0, 1fr)); } }
.sab-kart h3 { font:600 22px/1.25 var(--font-heading); margin:0 0 8px; }
.sab-kart p { margin:0; color:var(--sab-text-muted); }
.sab-kart .sab-meta { display:block; margin:0 0 6px; text-transform:uppercase; letter-spacing:.05em; font:700 12px/1.3 var(--font-ui); }
.adim { display:flex; gap:16px; align-items:flex-start; }
.adim h3 { margin-top:2px; }

/* ---- Anket formu ---- */
form { counter-reset:soru; }
.soru { background:var(--sab-bg); border:1px solid var(--sab-border); border-radius:var(--sab-radius); padding:24px; margin:0 0 16px; min-width:0; }
.soru--sayili { counter-increment:soru; }
.soru--sayili > .soru__baslik::before { content:counter(soru); display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px; margin-right:10px; border-radius:9999px; background:var(--sab-yellow); font:700 16px/1 var(--font-ui); vertical-align:3px; }
.soru__baslik { font:600 22px/1.3 var(--font-heading); padding:0; margin:0 0 8px; display:block; }
/* legend normalde çerçeve çizgisinin üstüne oturur; kutunun içinde dursun diye akıştan çıkarılıp altı temizlenir */
legend.soru__baslik { float:left; width:100%; }
legend.soru__baslik + * { clear:both; }
.soru__not { color:var(--sab-text-muted); font-size:15px; line-height:1.55; margin:0 0 12px; clear:both; }
.secenek { display:flex; align-items:center; gap:12px; padding:13px 16px; margin-top:10px; min-height:48px; border:2px solid var(--sab-border); border-radius:var(--sab-radius); cursor:pointer; background:var(--sab-bg); line-height:1.4; }
.secenek:hover { border-color:var(--sab-text-muted); }
.secenek input { width:22px; height:22px; margin:0; flex:none; accent-color:var(--sab-black); }
.secenek:has(input:checked) { border-color:var(--sab-black); background:var(--sab-yellow); }
.secenek:has(input:focus-visible) { outline:3px solid var(--sab-black); outline-offset:2px; }
.secenek small { display:block; color:var(--sab-text-muted); font-size:14px; }
.secenek:has(input:checked) small { color:var(--sab-black); }
.yazi-alan { display:block; width:100%; padding:13px 14px; min-height:48px; font:inherit; color:inherit; background:var(--sab-bg); border:2px solid var(--sab-border); border-radius:var(--sab-radius); }
.yazi-alan:focus { outline:none; border-color:var(--sab-black); }
.adres { margin-top:16px; padding-top:16px; border-top:1px dashed var(--sab-border); }
.adres:first-of-type { margin-top:0; padding-top:0; border-top:0; }
.adres__ust { display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin-bottom:6px; }
.adres__ad { font:600 15px/1.4 var(--font-ui); }
.adres__kaldir { background:none; border:0; padding:0; font:inherit; font-size:15px; color:var(--sab-text-muted); text-decoration:underline; cursor:pointer; }
.adres__tur { border:0; padding:0; margin:14px 0 0; min-width:0; }
.adres__tur legend { font:600 15px/1.4 var(--font-ui); padding:0; margin:0 0 2px; float:left; width:100%; }
.adres__tur legend + * { clear:both; }
.ekle { display:inline-flex; align-items:center; gap:8px; margin-top:16px; padding:12px 16px; min-height:48px; font:600 15px/1.2 var(--font-ui); color:var(--sab-text); background:var(--sab-bg); border:2px dashed var(--sab-border); border-radius:var(--sab-radius); cursor:pointer; }
.ekle:hover { border-color:var(--sab-black); }
.soru__hata { color:var(--sab-error); font-weight:700; font-size:15px; margin:10px 0 0; clear:both; }
.soru--hatali { border-color:var(--sab-error); }
.onaylar { margin:24px 0; }
.onay { display:flex; gap:12px; align-items:flex-start; margin:14px 0 6px; cursor:pointer; }
.onay input { width:22px; height:22px; margin:2px 0 0; flex:none; accent-color:var(--sab-black); }
.onay small { display:block; color:var(--sab-text-muted); font-size:14px; }
details.bilgi { font-size:15px; line-height:1.55; color:var(--sab-text-muted); margin:8px 0 0 34px; background:var(--sab-bg); border:1px solid var(--sab-border); border-radius:var(--sab-radius); padding:12px 16px; }
details.bilgi summary { cursor:pointer; color:var(--sab-text); font-weight:500; text-decoration:underline; }
details.bilgi p { margin:8px 0; }
.genel-hata { margin:12px 0 0; }
.tesekkur { background:var(--sab-bg); border:1px solid var(--sab-border); border-top:4px solid var(--sab-yellow); border-radius:var(--sab-radius); padding:40px 24px; text-align:center; }
.tesekkur svg { width:56px; height:56px; }
.tesekkur h2 { margin:12px 0; }
.tesekkur p { color:var(--sab-text-muted); margin:0 auto 12px; max-width:48ch; }
.tesekkur .sab-btn { margin-top:12px; }
.tuzak { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
@media (max-width:480px) { .soru { padding:18px 16px; } details.bilgi { margin-left:0; } }

/* ---- Alt bant: SAB'ın diğer alt siteleriyle aynı (etkinlik/yayin/index.php içindeki .etk-footer kuralları) ---- */
.alt { background:var(--sab-black); color:var(--sab-dark-body); }
.alt a:focus-visible { outline-color:var(--sab-yellow); }
.alt__ust { display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:32px 48px; padding-top:44px; padding-bottom:36px; }
.alt__marka { display:flex; gap:18px; align-items:center; }
.alt__marka img { width:112px; height:72px; display:block; flex:none; }
.alt__marka b { display:block; color:#FFFFFF; font:700 20px/1.3 var(--font-ui); }
.alt__marka span { display:block; color:var(--sab-yellow); font:600 13px/1.4 var(--font-ui); letter-spacing:.1em; text-transform:uppercase; margin-top:6px; }
.alt__sutun { display:flex; flex-direction:column; gap:6px; font-size:16px; line-height:1.5; }
.alt__sutun strong { font:600 13.6px/1 var(--font-ui); letter-spacing:.06em; text-transform:uppercase; color:#FFFFFF; margin-bottom:8px; }
.alt__sutun a { color:#FFFFFF; font-weight:600; text-decoration:none; }
.alt__sutun a:hover { text-decoration:underline; text-decoration-color:var(--sab-yellow); }
.alt__not { border-top:1px solid var(--sab-dark-divider); padding-top:18px; padding-bottom:22px; font-size:14.5px; color:var(--sab-dark-micro); }
@media (max-width:960px) { .alt__ust { grid-template-columns:1fr 1fr; } .alt__marka { grid-column:1 / -1; } }
@media (max-width:640px) { .alt__ust { grid-template-columns:1fr; } }
