/* KodNav — genel görünüm iyileştirmeleri (en son yüklenir): yazı, köşeler, butonlar, formlar, üst çubuk,
   tablolar, kaydırma çubuğu ve sade giriş sayfası. Renkler her zaman tema değişkenlerinden gelir. */

:root {
  --radius: 8px;
  --radius-lg: 12px;
  --font: -apple-system, BlinkMacSystemFont, "Segoe UI Variable Text", "Segoe UI", system-ui, Roboto, "Noto Sans", "Helvetica Neue", Arial, sans-serif;
  --font-display: -apple-system, BlinkMacSystemFont, "Segoe UI Variable Display", "Segoe UI", system-ui, Roboto, "Noto Sans", Arial, sans-serif;
  --btn-grad: linear-gradient(180deg, color-mix(in srgb, var(--bg-3) 100%, #fff 4%), var(--bg-3));
  --btn-edge: inset 0 1px 0 rgba(255, 255, 255, .05), 0 1px 2px rgba(1, 4, 9, .25);
  --primary-grad: linear-gradient(180deg, #2ea043, #238636);
  --primary-edge: inset 0 1px 0 rgba(255, 255, 255, .16), 0 1px 2px rgba(1, 4, 9, .3);
  --card-edge: inset 0 1px 0 rgba(255, 255, 255, .025);
  --ring: 0 0 0 3px color-mix(in srgb, var(--link) 30%, transparent);
}
:root[data-theme="light"] {
  --btn-grad: linear-gradient(180deg, #fbfcfd, #f3f5f7);
  --btn-edge: 0 1px 0 rgba(31, 35, 40, .04);
  --primary-grad: linear-gradient(180deg, #2c974b, #1f883d);
  --primary-edge: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 1px rgba(31, 35, 40, .1);
  --card-edge: 0 1px 2px rgba(31, 35, 40, .04);
}
@media (prefers-color-scheme: light) {
  :root[data-theme="auto"] {
    --btn-grad: linear-gradient(180deg, #fbfcfd, #f3f5f7);
    --btn-edge: 0 1px 0 rgba(31, 35, 40, .04);
    --primary-grad: linear-gradient(180deg, #2c974b, #1f883d);
    --primary-edge: inset 0 1px 0 rgba(255, 255, 255, .2), 0 1px 1px rgba(31, 35, 40, .1);
    --card-edge: 0 1px 2px rgba(31, 35, 40, .04);
  }
}

/* ===================== Yazı ===================== */
body { font-family: var(--font); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility; }
h1, h2, h3 { font-family: var(--font-display); letter-spacing: -.015em; text-wrap: balance; }
h1 { font-weight: 650; }
h2 { font-weight: 620; }
table, .num, .count, .big-num { font-variant-numeric: tabular-nums; }
::selection { background: color-mix(in srgb, var(--link) 35%, transparent); }

/* ===================== Kartlar ve pencereler ===================== */
.card { border-radius: var(--radius-lg); box-shadow: var(--card-edge); }
.card.flush { border-radius: var(--radius-lg); }
.window { border-radius: var(--radius-lg); }

/* ===================== Butonlar ===================== */
.btn { min-height: 32px; border-radius: var(--radius); background: var(--btn-grad); box-shadow: var(--btn-edge); font-weight: 550; }
.btn:hover { background: var(--hover); }
.btn-sm { min-height: 26px; border-radius: 7px; }
.btn-lg { min-height: 44px; padding: 10px 22px; border-radius: 10px; font-weight: 600; }
.btn-primary { background: var(--primary-grad); box-shadow: var(--primary-edge); border-color: color-mix(in srgb, var(--green) 70%, #000); }
.btn-primary:hover { background: var(--primary-grad); filter: brightness(1.08); }
.btn-danger:hover { background: var(--red); }
.btn.disabled { box-shadow: none; }

/* ===================== Formlar ===================== */
input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=file]), select, textarea {
  border-radius: var(--radius); transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}
input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=file]):hover, select:hover, textarea:hover { border-color: color-mix(in srgb, var(--muted) 55%, var(--border)); }
input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=file]):focus, select:focus, textarea:focus {
  outline: none; border-color: var(--link); box-shadow: var(--ring);
}
input[type=checkbox], input[type=radio] { accent-color: var(--green); }

/* ===================== Üst çubuk ===================== */
.topbar { border-bottom-color: color-mix(in srgb, var(--border) 70%, transparent); }
.logo { font-family: var(--font-display); letter-spacing: -.02em; font-size: 19px; }
.logo:hover { text-decoration: none; opacity: .85; }
.search input { border-radius: 999px; padding-left: 14px; }

/* ===================== Tablolar, listeler, sekmeler ===================== */
.table tbody tr, .issue-row, .event-row, .notif { transition: background-color .12s ease; }
.table tbody tr:hover { background: color-mix(in srgb, var(--text) 3%, transparent); }
.issue-row:hover, .event-row:hover { background: color-mix(in srgb, var(--text) 3.5%, transparent); text-decoration: none; }
.repo-tabs a, .tabs-nav a { transition: color .15s ease, border-color .2s ease; }
.badge, .chip, .label, .kind-badge { letter-spacing: .01em; }

/* ===================== Kaydırma çubuğu ===================== */
* { scrollbar-width: thin; scrollbar-color: color-mix(in srgb, var(--muted) 45%, transparent) transparent; }
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-thumb { background: color-mix(in srgb, var(--muted) 40%, transparent); border-radius: 10px; border: 2px solid transparent; background-clip: padding-box; }
::-webkit-scrollbar-thumb:hover { background-color: color-mix(in srgb, var(--muted) 65%, transparent); }
::-webkit-scrollbar-track { background: transparent; }

/* ===================== Sade giriş sayfası ===================== */
.hero-min {
  display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center;
  min-height: clamp(520px, calc(100vh - 150px), 920px);
  padding: 40px 16px 190px; border-radius: 20px;
}
.hero-mark { width: 104px; max-width: 32vw; margin-bottom: 18px; filter: drop-shadow(0 12px 30px rgba(56, 139, 253, .35)); }
.hero-min .hero-title {
  font-family: var(--font-display); font-size: clamp(48px, 9vw, 96px); font-weight: 800; letter-spacing: -.045em; line-height: 1;
  margin: 0 0 32px;
  background: linear-gradient(180deg, #fff 30%, color-mix(in srgb, #fff 60%, var(--link))); -webkit-background-clip: text; background-clip: text; color: transparent;
  text-shadow: 0 0 60px rgba(88, 166, 255, .15);
}
.hero-min .hero-actions { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.hero-min .hero-actions .btn { min-width: 150px; justify-content: center; border-radius: 999px; }
.btn-glass { background: color-mix(in srgb, var(--bg-2) 55%, transparent); backdrop-filter: blur(8px); border-color: color-mix(in srgb, var(--text) 18%, transparent); }
.btn-glass:hover { background: color-mix(in srgb, var(--bg-3) 75%, transparent); }
.hero-link { margin-top: 18px; font-size: 13px; color: var(--muted); }
.hero-link:hover { color: var(--text); }
/* Giriş sayfasında alt bilgi sade: dağlar zaten manzarada var */
.is-landing .footer-mountains { display: none; }
.is-landing .footer { margin-top: 16px; }
.is-landing .footer-inner { display: none; }

:root[data-theme="light"] .hero-min .hero-title { background: linear-gradient(180deg, #1f2328 35%, color-mix(in srgb, #1f2328 55%, var(--link))); -webkit-background-clip: text; background-clip: text; text-shadow: none; }
:root[data-theme="light"] .hero-mark { filter: brightness(.2) drop-shadow(0 12px 24px rgba(9, 105, 218, .25)); }
@media (prefers-color-scheme: light) {
  :root[data-theme="auto"] .hero-min .hero-title { background: linear-gradient(180deg, #1f2328 35%, color-mix(in srgb, #1f2328 55%, var(--link))); -webkit-background-clip: text; background-clip: text; text-shadow: none; }
  :root[data-theme="auto"] .hero-mark { filter: brightness(.2) drop-shadow(0 12px 24px rgba(9, 105, 218, .25)); }
}
@media (max-width: 720px) {
  .hero-min { min-height: calc(100vh - 130px); padding-bottom: 150px; border-radius: 16px; }
  .hero-min .hero-actions { flex-direction: column; width: 100%; max-width: 320px; }
  .hero-min .hero-actions .btn { width: 100%; }
  .hero-min .hero-range { height: 120px; }
}
