/* ==========================================================================
   TRHelpMail — Theme System (Indigo Kurumsal)
   Tek dosya, framework yok. Marka rengini değiştirmek --ac değişkenini
   değiştirmekle olur; tüm componentler bu değişkenleri kullanır.
   ========================================================================== */

:root{
  /* Zemin */
  --bg:#ffffff; --bg-soft:#f7f8fa; --bg-elev:#ffffff; --bg-elev-2:#f2f3f6;
  /* Border */
  --b1:#e9eaee; --b2:#d8dae1; --b3:#b7bac4;
  /* Metin */
  --tx:#0f1222; --mt:#5b5f72; --mt2:#7a7e8f; --mt3:#9a9dab;
  /* Vurgu (Indigo) */
  --ac:#4338ca; --ac-hover:#4f46e5; --ac-soft:rgba(67,56,202,.08); --ac-border:rgba(67,56,202,.25);
  /* Durum */
  --green:#16a34a; --green-soft:rgba(22,163,74,.08);
  --red:#dc2626;   --red-soft:rgba(220,38,38,.08);
  --yellow:#d97706; --yellow-soft:rgba(217,119,6,.1);
  /* Tipografi */
  --font:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --fs-xs:12px; --fs-sm:13px; --fs-base:14px; --fs-md:15px; --fs-lg:17px; --fs-xl:20px; --fs-2xl:24px; --fs-3xl:32px;
  /* Radius / motion */
  --r-sm:6px; --r:8px; --r-md:10px; --r-lg:12px; --r-xl:16px; --r-2xl:20px; --r-full:9999px;
  --ease:cubic-bezier(.4,0,.2,1); --dur:150ms;
  /* Layout */
  --nav-h:64px; --max-w:1200px; --gutter:48px;
  /* Gölge */
  --shadow-sm:0 1px 2px rgba(15,18,34,.05);
  --shadow-md:0 6px 20px rgba(15,18,34,.07);
  --shadow-lg:0 16px 48px rgba(15,18,34,.12);
  /* Nav arka planı (saydam cam efekti) */
  --nav-glass:rgba(255,255,255,.82);
}

/* ---------- Siyah tema ----------
   theme-system.js <html data-theme="dark"> attribute'unu ekleyip
   localStorage'da tutuyor; tetikleyici herhangi bir .theme-toggle. */
:root[data-theme="dark"]{
  --bg:#0a0a0f; --bg-soft:#0d0d13; --bg-elev:#131319; --bg-elev-2:#191921;
  --b1:#1e1e28; --b2:#2b2b37; --b3:#40404f;
  --tx:#f5f5f7; --mt:#a1a1b0; --mt2:#7c7c8c; --mt3:#5a5a68;
  --ac:#6366f1; --ac-hover:#818cf8; --ac-soft:rgba(99,102,241,.14); --ac-border:rgba(99,102,241,.32);
  --green:#22c55e; --green-soft:rgba(34,197,94,.14);
  --red:#f87171;   --red-soft:rgba(248,113,113,.14);
  --yellow:#fbbf24; --yellow-soft:rgba(251,191,36,.14);
  --shadow-sm:0 1px 2px rgba(0,0,0,.35);
  --shadow-md:0 6px 24px rgba(0,0,0,.4);
  --shadow-lg:0 20px 56px rgba(0,0,0,.5);
  --nav-glass:rgba(10,10,15,.78);
}

/* ---------- Reset / temel ---------- */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;background:var(--bg);color:var(--tx);
  font-family:var(--font);font-size:var(--fs-base);line-height:1.5;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  transition:background var(--dur) var(--ease),color var(--dur) var(--ease);
}
a{color:inherit}
img,svg{display:block;max-width:100%}
button{font-family:var(--font)}
[hidden]{display:none!important}

::selection{background:var(--ac-soft);color:var(--ac)}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:var(--bg-soft)}
::-webkit-scrollbar-thumb{background:var(--b2);border-radius:var(--r-full)}
::-webkit-scrollbar-thumb:hover{background:var(--b3)}

.container{max-width:var(--max-w);margin:0 auto;padding:0 var(--gutter)}

/* ==========================================================================
   NAV
   ========================================================================== */
.nav{
  position:sticky;top:0;z-index:50;height:var(--nav-h);
  display:flex;align-items:center;
  background:var(--nav-glass);backdrop-filter:blur(10px) saturate(1.4);
  border-bottom:1px solid var(--b1);
  transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease);
}
.nav-inner{
  width:100%;max-width:var(--max-w);margin:0 auto;padding:0 var(--gutter);
  display:flex;align-items:center;justify-content:space-between;gap:24px;
}
.nav-logo{
  display:inline-flex;align-items:center;gap:9px;
  font-weight:800;font-size:var(--fs-lg);letter-spacing:-.01em;
  color:var(--tx);text-decoration:none;
}
.nav-logo-dot{
  position:relative;width:8px;height:8px;border-radius:50%;background:var(--ac);flex:none;
}
.nav-logo-dot::after{
  content:'';position:absolute;inset:0;border-radius:50%;background:var(--ac);
  animation:navPulse 2.2s var(--ease) infinite;
}
@keyframes navPulse{0%{transform:scale(1);opacity:.55}100%{transform:scale(2.6);opacity:0}}

.nav-links{display:flex;align-items:center;gap:30px}
.nav-link{
  font-size:var(--fs-sm);font-weight:500;color:var(--mt);text-decoration:none;
  transition:color var(--dur) var(--ease);
}
.nav-link:hover{color:var(--tx)}
.nav-link.active{color:var(--ac);font-weight:600}

.nav-right{display:flex;align-items:center;gap:14px}
.nav-cta{height:38px;padding:0 18px}
.demo-badge{
  display:inline-flex;align-items:center;gap:6px;
  padding:5px 10px;border-radius:var(--r-full);
  background:var(--yellow-soft);color:var(--yellow);
  font-size:var(--fs-xs);font-weight:700;
}
.nav-user{display:inline-flex;align-items:center;gap:9px;text-decoration:none;color:var(--tx)}
.nav-avatar{
  width:32px;height:32px;border-radius:50%;flex:none;
  background:var(--ac-soft);color:var(--ac);
  display:flex;align-items:center;justify-content:center;
  font-size:var(--fs-xs);font-weight:700;
}

/* ==========================================================================
   THEME TOGGLE (siyah / açık tema anahtarı)
   ========================================================================== */
.theme-toggle{
  flex:none;width:38px;height:38px;border-radius:var(--r);
  border:1px solid var(--b2);background:var(--bg-elev);color:var(--mt);
  display:inline-flex;align-items:center;justify-content:center;cursor:pointer;
  transition:border-color var(--dur) var(--ease),color var(--dur) var(--ease),background var(--dur) var(--ease);
}
.theme-toggle:hover{color:var(--tx);border-color:var(--b3)}
.theme-toggle svg{width:17px;height:17px}
.theme-toggle .icon-sun{display:none}
:root[data-theme="dark"] .theme-toggle .icon-sun{display:block}
:root[data-theme="dark"] .theme-toggle .icon-moon{display:none}

/* ==========================================================================
   BUTTON
   ========================================================================== */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  height:44px;padding:0 20px;border:1px solid transparent;border-radius:var(--r);
  font-family:var(--font);font-size:var(--fs-sm);font-weight:600;line-height:1;
  cursor:pointer;text-decoration:none;white-space:nowrap;user-select:none;
  transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease),
             box-shadow var(--dur) var(--ease),transform var(--dur) var(--ease),color var(--dur) var(--ease);
}
.btn:active{transform:translateY(1px)}
.btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}

.btn-primary{background:var(--ac);color:#fff;box-shadow:var(--shadow-sm)}
.btn-primary:hover:not(:disabled){background:var(--ac-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}

.btn-sec{background:var(--bg-elev);color:var(--tx);border-color:var(--b2);box-shadow:var(--shadow-sm)}
.btn-sec:hover:not(:disabled){border-color:var(--b3);background:var(--bg-soft)}

.btn-ghost{background:transparent;color:var(--mt)}
.btn-ghost:hover:not(:disabled){color:var(--tx);background:var(--bg-soft)}

.btn-danger{background:var(--red);color:#fff}
.btn-danger:hover:not(:disabled){background:#b91c1c}

.btn-sm{height:36px;padding:0 14px;font-size:var(--fs-xs)}
.btn-lg{height:50px;padding:0 26px;font-size:var(--fs-md)}
.btn-block{width:100%}

/* ==========================================================================
   CARD
   ========================================================================== */
.card{
  background:var(--bg-elev);border:1px solid var(--b1);border-radius:var(--r-lg);
  padding:24px;transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);
}
.card:hover{border-color:var(--b2);box-shadow:var(--shadow-sm)}
.card-flat{background:var(--bg-soft);border:1px solid var(--b1);border-radius:var(--r-lg);padding:24px}
.card-title{margin:0 0 6px;font-size:var(--fs-lg);font-weight:700;color:var(--tx)}
.card-desc{margin:0;font-size:var(--fs-sm);color:var(--mt);line-height:1.65}

/* ==========================================================================
   INPUT
   ========================================================================== */
.input-group{display:flex;flex-direction:column;gap:7px}
.input-label{font-size:var(--fs-xs);font-weight:600;color:var(--tx)}
.input-label .opt{color:var(--mt3);font-weight:500}

.input{
  width:100%;height:44px;padding:0 14px;border-radius:var(--r);
  border:1px solid var(--b2);background:var(--bg-elev);color:var(--tx);
  font-family:var(--font);font-size:var(--fs-base);
  transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);
}
.input::placeholder{color:var(--mt3)}
.input:hover{border-color:var(--b3)}
.input:focus{outline:none;border-color:var(--ac);box-shadow:0 0 0 3px var(--ac-soft)}
.input-lg{height:52px;font-size:var(--fs-md)}

.input-error{border-color:var(--red)}
.input-error:focus{box-shadow:0 0 0 3px var(--red-soft)}
.input-success{border-color:var(--green)}
.input-success:focus{box-shadow:0 0 0 3px var(--green-soft)}

.input-hint{font-size:var(--fs-xs);color:var(--mt2)}
.input-hint.error{color:var(--red)}
.input-hint.success{color:var(--green)}

.input-wrap{position:relative}
.input-wrap .input{padding-right:44px}
.input-adorn{
  position:absolute;top:50%;right:4px;transform:translateY(-50%);
  width:36px;height:36px;border:0;background:transparent;border-radius:var(--r-sm);
  display:flex;align-items:center;justify-content:center;color:var(--mt2);cursor:pointer;
  transition:color var(--dur) var(--ease),background var(--dur) var(--ease);
}
.input-adorn:hover{color:var(--tx);background:var(--bg-soft)}

.check-row{display:flex;align-items:flex-start;gap:10px}
.check-row input[type="checkbox"]{
  appearance:none;-webkit-appearance:none;flex:none;
  width:18px;height:18px;margin-top:1px;border-radius:5px;
  border:1.5px solid var(--b3);background:var(--bg-elev);cursor:pointer;position:relative;
  transition:background var(--dur) var(--ease),border-color var(--dur) var(--ease);
}
.check-row input[type="checkbox"]:hover{border-color:var(--ac)}
.check-row input[type="checkbox"]:checked{background:var(--ac);border-color:var(--ac)}
.check-row input[type="checkbox"]:checked::after{
  content:'';position:absolute;left:5px;top:1px;width:5px;height:9px;
  border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg);
}
.check-row input[type="checkbox"]:focus-visible{box-shadow:0 0 0 3px var(--ac-soft)}
.check-row label{font-size:var(--fs-sm);color:var(--mt);line-height:1.55;cursor:pointer}
.check-row a{color:var(--ac);font-weight:600;text-decoration:none}
.check-row a:hover{text-decoration:underline}

/* ==========================================================================
   BADGE
   ========================================================================== */
.badge{
  display:inline-flex;align-items:center;gap:6px;padding:4px 10px;
  border-radius:var(--r-full);font-size:var(--fs-xs);font-weight:700;line-height:1.4;
}
.badge-blue{background:var(--ac-soft);color:var(--ac)}
.badge-green{background:var(--green-soft);color:var(--green)}
.badge-red{background:var(--red-soft);color:var(--red)}
.badge-solid-blue{background:var(--ac);color:#fff}

/* ---------- CHIP (etiket / label rozeti) ---------- */
.chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 8px;border-radius:var(--r-full);font-size:11px;font-weight:700;line-height:1.4}
.chip-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}

/* ==========================================================================
   SECTION
   ========================================================================== */
.section{padding:96px 0}
.section-bg{background:var(--bg-soft);border-top:1px solid var(--b1);border-bottom:1px solid var(--b1)}
.s-title{margin:0 0 16px;font-size:var(--fs-3xl);font-weight:800;letter-spacing:-.02em;color:var(--tx);text-align:center}
.s-sub{margin:0 auto;max-width:600px;font-size:var(--fs-md);color:var(--mt);line-height:1.65;text-align:center}
.eyebrow{
  display:inline-flex;align-items:center;gap:7px;margin-bottom:14px;
  font-size:var(--fs-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ac);
}
.dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}
.dot-blue{color:var(--ac)}
.dot-red{color:var(--red)}

/* ==========================================================================
   SCROLL REVEAL (theme-system.js ile birlikte çalışır)
   ========================================================================== */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .reveal{transition:none;opacity:1;transform:none}
  .nav-logo-dot::after{animation:none}
}

/* ==========================================================================
   RESPONSIVE
   ========================================================================== */
@media (max-width:980px){
  :root{--gutter:28px}
  .nav-links{display:none}
  .s-title{font-size:var(--fs-2xl)}
}
@media (max-width:640px){
  :root{--gutter:20px}
  .section{padding:64px 0}
}
