/* OnySoft ERP — base.css
   Sıfırlama, tipografi, link, mono, odak, hareket azaltma.
   Token'lar tokens.css'te; burada renk/font tanımı YOK, yalnız kullanım. */

*,*::before,*::after{box-sizing:border-box}
html,body{height:100%}
body{margin:0;font-family:var(--font-body);font-size:14px;line-height:1.6;overflow-wrap:break-word;color:var(--text-primary);background:var(--bg-canvas);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}

h1,h2,h3,h4{font-family:var(--font-display);margin:0;color:var(--text-primary)}
h1{font-size:24px;line-height:1.3;letter-spacing:-.01em;font-weight:700}
h2{font-size:18px;line-height:1.4;font-weight:600}
h3{font-size:15px;line-height:1.4;font-weight:600}
h4{font-size:13.5px;line-height:1.4;font-weight:600}
p{margin:0 0 var(--space-3)}
p:last-child{margin-bottom:0}
small,.small{font-size:13px;line-height:1.5}
strong,b{font-weight:600}
hr{border:0;border-top:1px solid var(--border-default);margin:var(--space-5) 0}
ul,ol{margin:0 0 var(--space-3);padding-left:var(--space-5)}

a{color:var(--accent);text-decoration:none}
a:hover{color:var(--accent-hover)}
a.sessiz{color:inherit}

/* Sayılar: HER ZAMAN mono + tabular */
.mono,td.num,th.num,.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}
code,kbd,pre{font-family:var(--font-mono);font-size:12.5px}
pre{margin:0;white-space:pre-wrap;word-break:break-word}
kbd{font-size:10.5px;border:1px solid var(--border-default);border-radius:var(--radius-xs);padding:1px 5px;background:var(--bg-canvas)}

img,svg{display:inline-block;vertical-align:middle;max-width:100%}
svg{stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
button{font-family:inherit;font-size:inherit;color:inherit}
label{cursor:default}
[hidden]{display:none !important}
.gizli{display:none !important}

/* Metin renk yardımcıları — yalnız durum taşır */
.sessiz,.t-tertiary{color:var(--text-tertiary)}
.t-secondary{color:var(--text-secondary)}
.t-quaternary{color:var(--text-quaternary)}
.t-ok{color:var(--success-text)}
.t-warn{color:var(--warning-text)}
.t-err,.neg{color:var(--danger-text)}
.strong{color:var(--text-primary);font-weight:500}
.sag{text-align:right}
.orta{text-align:center}
.kirp{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.grow{flex:1;min-width:0}
.satir{display:flex;align-items:center;gap:var(--space-2)}
.sutun{display:flex;flex-direction:column;gap:var(--space-2)}
.bosluk-3{margin-bottom:var(--space-3)}
.bosluk-4{margin-bottom:var(--space-4)}
.bosluk-5{margin-bottom:var(--space-5)}
.bosluk-6{margin-bottom:var(--space-6)}

/* Odak: indigo değil, siyah */
:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}
:focus:not(:focus-visible){outline:none}

::selection{background:var(--bg-inverse);color:var(--text-inverse)}

/* Kaydırma çubuğu — sade */
*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}
::-webkit-scrollbar{width:8px;height:8px}
::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:var(--radius-full)}
::-webkit-scrollbar-track{background:transparent}

/* Hareket: yalnız fade ve scale; azaltma isteyen kullanıcıda hepsi kapanır */
@keyframes fade{from{opacity:0}to{opacity:1}}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}
}

/* Erişilebilirlik: yalnız ekran okuyucu */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
