/* ============================================================
   theme.css - Görsel iyileştirme katmanı
   Yalnızca renk, gölge, köşe, yazı tipi ve geçiş efektlerini düzenler.
   Boyut/yerleşim (padding, grid, genişlik) değiştirilmez; sayfa mantığı etkilenmez.
   Yükleme sırası: style.css -> theme.css -> pages.css
   ============================================================ */

:root {
    --st-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    --st-bg: #f1f5f9;
    --st-radius: 12px;
    --st-shadow-card: 0 1px 2px rgba(15,23,42,.05), 0 6px 20px rgba(15,23,42,.06);
    --st-shadow-hover: 0 2px 4px rgba(15,23,42,.06), 0 10px 28px rgba(15,23,42,.10);
    --st-nav-bg: linear-gradient(180deg, #0f172a 0%, #111c33 100%);
}

* { font-family: var(--st-font); }

body {
    background: var(--st-bg);
    background-image: radial-gradient(1200px 400px at 50% -120px, rgba(37,99,235,.08), transparent 70%);
    background-repeat: no-repeat;
    color: var(--st-text, #0f172a);
}

::selection { background: rgba(37,99,235,.2); }

/* Sayfa açılış efekti (yalnızca saydamlık; yerleşimi etkilemez) */
@keyframes st-fade-in { from { opacity: 0; } to { opacity: 1; } }
.main-container { animation: st-fade-in .28s ease-out both; }

/* ---------- Üst menü ---------- */
.navbar {
    background: var(--st-nav-bg);
    border-bottom: 1px solid rgba(148,163,184,.14);
    box-shadow: 0 6px 24px rgba(2,6,23,.22);
}
.brand { letter-spacing: .04em; }
.brand i { filter: drop-shadow(0 0 8px rgba(37,99,235,.55)); }

.nav-links { gap: 4px; }
.nav-links a {
    padding: 7px 11px;
    border-bottom: 0;
    border-radius: 8px;
}
.nav-links a:hover { background: rgba(148,163,184,.12); }
.nav-links a.active {
    background: rgba(37,99,235,.18);
    color: #fff;
    box-shadow: inset 0 0 0 1px rgba(96,165,250,.28);
}

.btn-user, .btn-login-box, .btn-logout, .btn-register, .nav-credit {
    border-radius: 8px;
}
.btn-register { box-shadow: 0 2px 10px rgba(37,99,235,.35); }
.btn-logout   { box-shadow: 0 2px 10px rgba(239,68,68,.25); }

@media (max-width: 992px) {
    .nav-menu { box-shadow: 0 18px 30px rgba(2,6,23,.35); }
    .nav-links a { width: 100%; padding: 9px 10px; }
}

/* ---------- Kartlar ve başlık bandı ---------- */
.card {
    border: 1px solid var(--st-border, #e2e8f0);
    border-radius: var(--st-radius);
    box-shadow: var(--st-shadow-card);
}
.page-hero-card {
    border-radius: var(--st-radius);
    box-shadow: 0 8px 24px rgba(15,23,42,.14);
}

/* ---------- Form elemanları ---------- */
input, select, textarea { border-radius: 8px; }
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):focus,
select:focus,
textarea:focus {
    border-color: var(--st-primary, #2563eb) !important;
    box-shadow: var(--st-focus, 0 0 0 3px rgba(37,99,235,.15));
}
input::placeholder, textarea::placeholder { color: #94a3b8; }

/* ---------- Düğmeler ---------- */
button, .btn, input[type="submit"], input[type="button"] { cursor: pointer; }
button:not(:disabled):hover,
input[type="submit"]:hover,
input[type="button"]:hover { filter: brightness(1.07); }
button:not(:disabled):active { filter: brightness(.96); }
button:disabled,
.btn-disabled { cursor: not-allowed; }

a[href]:not(.nav-links a) { text-underline-offset: 2px; }

/* ---------- Tablolar ---------- */
table tbody tr:hover { background-color: rgba(37,99,235,.035); }
th { letter-spacing: .01em; }

/* ---------- Kaydırma çubukları ---------- */
* { scrollbar-width: thin; scrollbar-color: #cbd5e1 transparent; }
::-webkit-scrollbar { width: 9px; height: 9px; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 8px; border: 2px solid transparent; background-clip: content-box; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; background-clip: content-box; border: 2px solid transparent; }
.gizli-scroll { scrollbar-width: none; }

/* ---------- Alt bilgi ---------- */
.site-footer {
    background: #ffffff;
    border-top: 1px solid var(--st-border, #e2e8f0);
    margin-top: 32px;
    padding: 20px 15px;
}

@media print {
    body { background: #fff !important; }
    .main-container { animation: none; }
}

