/* Vegapunk Desk — temel: sıfırlama, yazı, odak, seçim, azaltılmış hareket. */

*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; padding: 0; }

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-tap-highlight-color: transparent;
}

body {
  font: var(--fs-14) / var(--lh-14) var(--font);
  color: var(--text);
  background: var(--ground);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: "kern" 1;
}

h1, h2, h3, h4 { font-weight: 600; text-wrap: balance; }
p { text-wrap: pretty; }
img, svg { display: block; }
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; text-underline-offset: 2px; }

button, input, select, textarea { font: inherit; color: inherit; }
button {
  background: none; border: 0; cursor: pointer; text-align: inherit;
  touch-action: manipulation;
}
button:disabled, [aria-disabled="true"] { cursor: not-allowed; }
input, select, textarea { min-width: 0; }

table { border-collapse: collapse; width: 100%; }
th { font-weight: 400; text-align: left; }

code, kbd, pre, samp, .mono { font-family: var(--mono); }
.mono { font-size: var(--fs-13); }
.num, td.num, th.num { font-variant-numeric: tabular-nums; }
td.num, th.num { text-align: right; }

/* Odak: yalnızca klavyeyle gelince görünür halka */
:focus { outline: none; }
:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
  border-radius: var(--r-chip);
}

::selection { background: var(--accent-soft); color: var(--text); }

/* İkon: sprite'tan <use> ile */
.i {
  width: 16px; height: 16px; flex: none;
  fill: none; stroke: currentColor; stroke-width: 1.75;
  stroke-linecap: round; stroke-linejoin: round;
}
.i-sm { width: 14px; height: 14px; }
.i-lg { width: 18px; height: 18px; }
.i-xl { width: 20px; height: 20px; }

/* Ekran okuyucuya özel metin */
.sr-only {
  position: absolute !important; width: 1px; height: 1px; overflow: hidden;
  clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap;
}

/* Çok satırı kesme yardımcıları */
.truncate { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.muted { color: var(--muted); }
.faint { color: var(--faint); }
.small { font-size: var(--fs-12); line-height: var(--lh-12); }

[hidden] { display: none !important; }

/* Azaltılmış hareket: geçişler ve animasyonlar anında */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 1ms !important;
    scroll-behavior: auto !important;
  }
}
