/* ==========================================================================
   GYS KAMPÜS — SİTE PAKETİ STİL DOSYASI (site\assets\site.css)
   Tasarım dönüşümü (örnek: gys_kamp_s.html) — tüm işlevsellik korunur.
   Font: Inter (Google Fonts) + sistem yedeği.
   Palet: --gys-navy #0f3a63 · --gys-navy-light #164d82 · --gys-gold #f59e0b
          --gys-gold-hover #d97706 · açık zemin #f8fafc · koyu zemin #0f172a
          koyu yüzey #1e293b · 300ms yumuşak geçişler.
   Tema: localStorage "cte.gys.tema" (auto|dark|light) → body.dark
   (güneş/ay SVG ikonları, class tabanlı).
   ========================================================================== */

:root{
  color-scheme: light;
  --gys-navy:#0f3a63; --gys-navy-light:#164d82;
  --gys-gold:#f59e0b; --gys-gold-hover:#d97706;
  --bg:#f8fafc; --card:#ffffff; --text:#0f172a; --muted:#475569; --line:#e2e8f0;
  --egik:#f8fafc;                       /* hero eğik kenarının oturduğu zemin */
  --ok:#15803d; --okbg:#ecfdf5; --bad:#b91c1c; --badbg:#fef2f2;
  --warn:#b45309; --warnbg:#fffbeb; --info:#164d82; --infobg:#eff6ff;
  --font:'Inter',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --radius:16px;
  --shadow:0 1px 2px rgba(15,23,42,.05), 0 4px 12px rgba(15,23,42,.06);
  --shadow-xl:0 12px 32px rgba(15,23,42,.12);
  --transition:background-color .3s cubic-bezier(.4,0,.2,1), border-color .3s cubic-bezier(.4,0,.2,1), color .3s cubic-bezier(.4,0,.2,1), fill .3s, stroke .3s;
}

body.dark{
  color-scheme: dark;
  --bg:#0f172a; --card:#1e293b; --text:#f1f5f9; --muted:#94a3b8; --line:#334155;
  --egik:#0f172a;
  --ok:#4ade80; --okbg:#052e16; --bad:#fca5a5; --badbg:#450a0a;
  --warn:#fbbf24; --warnbg:#451a03; --info:#93c5fd; --infobg:#172554;
  --shadow:0 1px 2px rgba(0,0,0,.4), 0 4px 12px rgba(0,0,0,.3);
  --shadow-xl:0 12px 32px rgba(0,0,0,.5);
}

*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:var(--font);background:var(--bg);color:var(--text);font-size:16px;line-height:1.6;transition:var(--transition);}
body,header,section,footer,div,a,button{transition:var(--transition);}
h1,h2,h3{margin:0 0 .5em;line-height:1.25;font-weight:800;letter-spacing:-.2px;color:var(--text);}
p{margin:.4em 0 .8em;}
a{color:var(--gys-navy-light);text-decoration:none;transition:var(--transition);}
body.dark a{color:var(--gys-gold);}
a:hover{text-decoration:none;color:var(--gys-gold);}
small,.kucuk{color:var(--muted);font-size:13px;}
::selection{background:var(--gys-gold);color:#fff;}

.kapsayici{max-width:1200px;margin:0 auto;padding:0 16px;}
.kapsayici.dar{max-width:720px;}

/* ===================== AD ALANI (AdSense ince şerit) ===================== */
.ad-top{max-width:1200px;margin:8px auto 0;padding:0 16px;min-height:54px;}

/* ===================== SİTE BAŞLIĞI (sticky 80px) ===================== */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line);box-shadow:0 1px 2px rgba(15,23,42,.05);}
body.dark .site-header{background:rgba(30,41,59,.9);}
.baslik-ici{display:flex;align-items:center;justify-content:space-between;gap:12px;height:80px;flex-wrap:nowrap;}
.marka{display:flex;align-items:center;gap:10px;flex-shrink:0;cursor:pointer;}
.marka-ikon{font-size:30px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.15));}
.marka strong{font-size:24px;font-weight:800;letter-spacing:-.5px;color:var(--gys-navy);white-space:nowrap;}
body.dark .marka strong{color:#fff;}
.marka strong .altin{color:var(--gys-gold);}
.marka small{display:block;color:var(--muted);font-size:11.5px;line-height:1.2;}
.ust-linkler{display:flex;align-items:center;gap:22px;flex-wrap:nowrap;}
.ust-linkler a{color:var(--muted);font-size:15px;font-weight:500;}
.ust-linkler a:hover{color:var(--gys-gold);}
.cikis-form{display:inline;margin:0;}
.link-buton{background:none;border:none;padding:0;font-family:var(--font);font-size:15px;font-weight:500;color:var(--muted);cursor:pointer;}
.link-buton:hover{color:var(--gys-gold);}
.link-buton.tehlikeli{color:#dc2626;}
body.dark .link-buton.tehlikeli{color:#fca5a5;}

/* Tema düğmesi: yuvarlak, güneş/ay SVG */
.tema-btn{width:42px;height:42px;border-radius:9999px;border:none;background:#f1f5f9;color:var(--muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;}
body.dark .tema-btn{background:#334155;color:#cbd5e1;}
.tema-btn:hover{background:#e2e8f0;}
body.dark .tema-btn:hover{background:#475569;}
.tema-btn:focus{outline:none;box-shadow:0 0 0 3px rgba(245,158,11,.4);}
.tema-btn svg{width:20px;height:20px;}
.ikon-ay{display:block;}          /* aydınlık modda ay görünür */
.ikon-gunes{display:none;}
body.dark .ikon-ay{display:none;}
body.dark .ikon-gunes{display:block;}

/* ===================== HERO ===================== */
.hero{position:relative;background:var(--gys-navy);color:#fff;overflow:hidden;text-align:center;}
.hero-pattern{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.1) 1px,transparent 1px);background-size:20px 20px;}
.hero-ic{position:relative;max-width:1200px;margin:0 auto;padding:96px 16px 140px;display:flex;flex-direction:column;align-items:center;}
.hero::before{content:"";position:absolute;top:-96px;right:-96px;width:380px;height:380px;border-radius:9999px;background:var(--gys-navy-light);mix-blend-mode:screen;filter:blur(60px);opacity:.6;}
.hero::after{content:"";position:absolute;top:45%;left:-96px;width:280px;height:280px;border-radius:9999px;background:var(--gys-gold);mix-blend-mode:screen;filter:blur(70px);opacity:.25;}
.hero-rozet{display:inline-block;padding:6px 14px;border-radius:9999px;background:rgba(245,158,11,.2);color:var(--gys-gold);border:1px solid rgba(245,158,11,.35);font-size:13px;font-weight:600;letter-spacing:1.5px;margin-bottom:24px;}
.hero h1{color:#fff;font-size:clamp(30px,5vw,58px);font-weight:800;letter-spacing:-1.2px;line-height:1.1;max-width:900px;margin-bottom:24px;text-shadow:0 4px 24px rgba(0,0,0,.35);}
.hero-vurgu{background:linear-gradient(90deg,var(--gys-gold),#fde68a);-webkit-background-clip:text;background-clip:text;color:transparent;}
.hero-alt{color:#cbd5e1;font-size:clamp(16px,2.2vw,20px);font-weight:300;max-width:640px;margin:0 auto 40px;}
.hero-butonlar{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;}
.btn-altin{display:inline-flex;align-items:center;justify-content:center;padding:16px 32px;border-radius:12px;background:var(--gys-gold);color:#fff;font-weight:700;font-size:17px;box-shadow:0 10px 24px rgba(245,158,11,.35);transform:translateY(0);}
.btn-altin:hover{background:var(--gys-gold-hover);color:#fff;transform:translateY(-3px);box-shadow:0 14px 30px rgba(245,158,11,.5);}
.btn-cam{display:inline-flex;align-items:center;justify-content:center;padding:16px 32px;border-radius:12px;background:rgba(255,255,255,.1);color:#fff;font-weight:600;font-size:17px;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(6px);}
.btn-cam:hover{background:rgba(255,255,255,.2);color:#fff;}
.hero-egik{position:absolute;bottom:0;left:0;width:100%;overflow:hidden;line-height:0;}
.hero-egik svg{display:block;width:100%;height:48px;color:var(--egik);}
@media (min-width:768px){.hero-egik svg{height:80px;}}

/* ===================== ÖZELLİKLER ===================== */
.ozellikler{padding:80px 0 40px;background:var(--bg);}
.bolum-baslik{text-align:center;margin-bottom:56px;}
.bolum-baslik h2{font-size:clamp(26px,4vw,36px);font-weight:800;color:var(--gys-navy);margin-bottom:16px;}
body.dark .bolum-baslik h2{color:#fff;}
.altin-cizgi{width:96px;height:4px;background:var(--gys-gold);border-radius:9999px;margin:0 auto;}
.ozellik-izgara{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px;margin:0 auto;max-width:1200px;}
.ozellik{background:var(--card);border-radius:16px;padding:32px;box-shadow:var(--shadow);border-bottom:4px solid transparent;transform:translateY(0);cursor:default;}
.ozellik:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl);border-bottom-color:var(--gys-gold);}
.o-ikon{width:64px;height:64px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:32px;margin-bottom:24px;transform:scale(1);}
.ozellik:hover .o-ikon{transform:scale(1.1);}
.ik-mavi{background:#eff6ff;} body.dark .ik-mavi{background:rgba(30,64,175,.3);}
.ik-kirmizi{background:#fef2f2;} body.dark .ik-kirmizi{background:rgba(153,27,27,.3);}
.ik-sari{background:#fffbeb;} body.dark .ik-sari{background:rgba(133,77,14,.3);}
.ik-yesil{background:#ecfdf5;} body.dark .ik-yesil{background:rgba(6,78,59,.3);}
.ozellik h3{font-size:19px;font-weight:700;color:var(--text);margin-bottom:12px;}
.ozellik p{color:var(--muted);font-size:15px;line-height:1.7;margin:0;}
.ozellik p strong{color:var(--gys-navy);}
body.dark .ozellik p strong{color:var(--gys-gold);}

/* ===================== HAKKIMIZDA / İLETİŞİM ===================== */
.hakkimizda{padding:56px 0;background:var(--bg);}
.hakkimizda-ic{max-width:760px;margin:0 auto;text-align:center;color:var(--muted);font-size:16.5px;line-height:1.9;}
.hakkimizda-ic h2{color:var(--gys-navy);}
body.dark .hakkimizda-ic h2{color:#fff;}
.iletisim{padding:0 0 56px;background:var(--bg);}
.iletisim-kart{max-width:760px;margin:0 auto;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:32px;text-align:center;box-shadow:var(--shadow);}
.iletisim-kart h2{color:var(--gys-navy);}
body.dark .iletisim-kart h2{color:#fff;}
.iletisim-kart a{color:var(--gys-navy-light);font-weight:600;}
body.dark .iletisim-kart a{color:var(--gys-gold);}

/* ===================== FORMLAR ===================== */
.formlar{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:28px;max-width:1080px;margin:64px auto;align-items:start;}
.form-kart{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:32px;margin:0;}
.form-kart h2{color:var(--gys-navy);font-size:22px;margin-bottom:24px;}
body.dark .form-kart h2{color:#fff;}
.form-kart h3{font-size:16px;color:var(--gys-navy-light);margin-top:20px;}
body.dark .form-kart h3{color:var(--gys-gold);}
label{display:block;margin-bottom:16px;font-weight:600;font-size:14px;}
input[type="text"],input[type="email"],input[type="password"],select,textarea{
  width:100%;min-height:48px;margin-top:6px;padding:10px 14px;font-size:15px;
  font-family:var(--font);color:var(--text);background:var(--bg);
  border:1px solid var(--line);border-radius:12px;transition:var(--transition);
}
body.dark input,body.dark select,body.dark textarea{background:#0f172a;color:var(--text);}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--gys-gold);box-shadow:0 0 0 3px rgba(245,158,11,.25);}
textarea{resize:vertical;}
.onay-satiri{display:flex;align-items:flex-start;gap:10px;font-weight:400;font-size:14px;cursor:pointer;}
.onay-satiri input[type="checkbox"]{min-width:18px;min-height:18px;margin-top:3px;}
.onay-satiri em{color:var(--muted);}

/* ===================== BUTONLAR ===================== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 22px;border-radius:12px;border:1px solid transparent;font-family:var(--font);font-size:15px;font-weight:700;cursor:pointer;text-align:center;text-decoration:none;letter-spacing:.1px;}
.btn:hover{text-decoration:none;transform:translateY(-1px);}
.btn:active{transform:scale(.98);}
.btn-primary{background:var(--gys-gold);color:#fff;box-shadow:0 6px 16px rgba(245,158,11,.3);}
.btn-primary:hover{background:var(--gys-gold-hover);color:#fff;}
.btn-gold{background:var(--gys-gold);color:#fff;box-shadow:0 6px 16px rgba(245,158,11,.3);}
.btn-gold:hover{background:var(--gys-gold-hover);color:#fff;}
/* Koyu mod: global "body.dark a{color:altın}" kuralı altın butonların
   metnini altın yapıp görünmez kılıyordu — açık beyaz zorunlu kılınır.
   Arka plan HER İKİ modda da gys-gold kalır. */
body.dark .btn-gold,body.dark .btn-primary,body.dark .btn-altin{background:var(--gys-gold);color:#fff;}
body.dark .btn-gold:hover,body.dark .btn-primary:hover,body.dark .btn-altin:hover{background:var(--gys-gold-hover);color:#fff;}
body.dark .btn-cam{color:#fff;}
body.dark .btn-cam:hover{color:#fff;}
.btn-ghost{background:var(--card);border-color:var(--line);color:var(--text);}
.btn-ghost:hover{border-color:var(--gys-gold);color:var(--gys-navy-light);}
.btn-sm{min-height:38px;padding:6px 14px;font-size:14px;border-radius:10px;}

/* ===================== UYARILAR ===================== */
.uyari{padding:12px 16px;border-radius:12px;margin:14px 0;font-size:14.5px;border:1px solid;}
.uyari-hata{background:var(--badbg);color:var(--bad);border-color:var(--bad);}
.uyari-bilgi{background:var(--infobg);color:var(--info);border-color:var(--info);}
.uyari-uyari{background:var(--warnbg);color:var(--warn);border-color:var(--warn);}

/* ===================== TABLOLAR (panel/admin) ===================== */
.profil-tablo{width:100%;border-collapse:collapse;font-size:14.5px;}
.profil-tablo th{text-align:left;color:var(--muted);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--line);width:40%;}
.profil-tablo td{padding:8px 10px;border-bottom:1px solid var(--line);}
.rozet{display:inline-block;font-size:12px;font-weight:700;padding:3px 10px;border-radius:9999px;}
.rozet.ye{background:var(--okbg);color:var(--ok);}
.rozet.kirmizi{background:var(--badbg);color:var(--bad);}

.tablo-kapsar{overflow-x:auto;margin:12px 0;}
.yonetim-tablo{width:100%;border-collapse:collapse;font-size:13.5px;min-width:760px;}
.yonetim-tablo th{background:var(--gys-navy);color:#fff;padding:9px 8px;text-align:left;font-size:12.5px;white-space:nowrap;font-weight:600;}
.yonetim-tablo td{padding:8px;border-bottom:1px solid var(--line);vertical-align:middle;}
body.dark .yonetim-tablo tr:nth-child(even) td{background:#243244;}
.satir-form{display:inline;margin:0;}
.satir-form select{width:auto;min-height:34px;padding:4px 8px;font-size:13px;margin:0;background:var(--bg);color:var(--text);}
.arama-satiri{display:flex;gap:10px;margin:10px 0 4px;flex-wrap:wrap;}
.arama-satiri input{flex:1;min-width:220px;margin:0;}

.sayfalama{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0;}
.sayfa{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 8px;border-radius:10px;background:var(--card);border:1px solid var(--line);font-size:14px;font-weight:600;color:var(--text);}
.sayfa.aktif{background:var(--gys-gold);color:#fff;border-color:var(--gys-gold);}
.sayfa:hover{border-color:var(--gys-gold);color:var(--gys-gold-hover);}

/* ===================== YÖNETİM SEKMELERİ + CMS ===================== */
.sekme-cubugu{display:flex;gap:8px;margin:16px 0 4px;flex-wrap:wrap;}
.sekme{display:inline-flex;align-items:center;min-height:40px;padding:8px 18px;border-radius:9999px;background:var(--card);border:1px solid var(--line);font-weight:600;font-size:14px;color:var(--text);text-decoration:none;}
.sekme.aktif{background:var(--gys-gold);color:#fff;border-color:var(--gys-gold);}
.sekme:hover{text-decoration:none;border-color:var(--gys-gold);}
.cms-satir{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:12px 0;}
.cms-satir input,.cms-satir select{width:auto;min-width:150px;margin:0;}
.cms-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;}
.cms-grid label{margin-bottom:0;}
.cms-grid input,.cms-grid select{width:100%;margin-top:4px;}

/* ===================== KVKK METNİ ===================== */
.kvkk-metin h1{font-size:22px;color:var(--gys-navy);}
body.dark .kvkk-metin h1{color:#fff;}
.kvkk-metin h2{font-size:16px;color:var(--gys-navy-light);margin-top:1.2em;border-bottom:2px solid var(--gys-gold);display:inline-block;padding-bottom:3px;}
body.dark .kvkk-metin h2{color:var(--gys-gold);}
.kvkk-metin li{margin:.3em 0;}

/* ===================== ALT BİLGİ ===================== */
.site-footer{margin-top:auto;background:var(--card);border-top:1px solid var(--line);padding:28px 0;}
.footer-ic{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;}
.footer-marka{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:14px;}
.footer-marka .terazi{font-size:20px;filter:grayscale(1);opacity:.7;}
.footer-linkler{display:flex;gap:24px;font-size:14px;flex-wrap:wrap;}
.footer-linkler a{color:var(--muted);}
.footer-linkler a:hover{color:var(--gys-gold);}
.footer-not{max-width:1200px;margin:16px auto 0;padding:0 16px;color:var(--muted);font-size:12.5px;text-align:center;}

/* ===================== MOBİL ===================== */
@media (max-width:768px){
  .ust-linkler{gap:12px;}
  .ust-linkler a{font-size:14px;}
  .hero-ic{padding:64px 16px 110px;}
  .formlar{grid-template-columns:1fr;margin:40px 16px;}
  .ozellikler{padding:56px 0 24px;}
  .baslik-ici{height:72px;}
}
