/* Temel sıfırlama ve tipografi */
*,*::before,*::after{box-sizing:border-box}
html{font-size:calc(var(--fs) * var(--fsx));-webkit-text-size-adjust:100%}
html.present{--fsx:1.22}
body{margin:0;font:400 1rem/1.62 var(--font-ui);color:var(--ink);background-color:var(--bg);
  background-image:linear-gradient(var(--grid-2) 1px,transparent 1px),linear-gradient(90deg,var(--grid-2) 1px,transparent 1px),linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);
  background-size:120px 120px,120px 120px,24px 24px,24px 24px;background-attachment:fixed;min-height:100vh}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}
button{font:inherit;color:inherit}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:1.15;letter-spacing:-.01em;margin:0 0 .5em;font-optical-sizing:auto}
h1{font-size:clamp(1.9rem,3.6vw,2.7rem)} h2{font-size:1.6rem} h3{font-size:1.25rem;margin-top:1.6em} h4{font-size:1.05rem}
p{margin:0 0 .9em}
kbd{font:500 .72rem var(--font-mono);border:1px solid var(--line-2);border-bottom-width:2px;border-radius:5px;padding:1px 5px;background:var(--paper);color:var(--ink-2)}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;z-index:999;background:var(--paper);padding:8px 12px;border-radius:8px}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
svg{overflow:visible}
