/* Minimal resets + material helper classes. Components carry their own styles inline via tokens. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{margin:0;font-family:var(--font-ui);font-size:var(--text-14);line-height:var(--line-14);color:var(--text-primary);background:var(--surface-page);font-feature-settings:var(--num-features)}
a{color:var(--text-link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:var(--grey-300)}
a:hover{text-decoration-color:var(--ink)}
:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-offset)}
.dka-steel :focus-visible{outline:var(--focus-ring-dark)}
button,input,select,textarea{font:inherit;color:inherit}
/* Steel material — three densities */
.dka-steel{position:relative;isolation:isolate;background-color:var(--ink);color:var(--text-on-ink);overflow:hidden}
.dka-steel::before{content:"";position:absolute;inset:0;z-index:-2;background-position:center;background-size:cover;background-repeat:no-repeat}
.dka-steel::after{content:"";position:absolute;inset:0;z-index:-1;background:var(--steel-vignette)}
.dka-steel>.dka-grain{position:absolute;inset:0;z-index:-1;background:var(--steel-grain) repeat;background-size:256px 256px;opacity:var(--steel-grain-opacity);pointer-events:none;mix-blend-mode:screen}
.dka-steel--hero::before{background-image:var(--steel-hero);background-position:right center}
.dka-steel--hero-alt::before{background-image:var(--steel-hero-alt);background-position:right center}
.dka-steel--hero-mobile::before{background-image:var(--steel-hero-mobile);background-position:70% center}
.dka-steel--login::before{background-image:var(--steel-login);background-position:right center}
.dka-steel--header::before{background-image:var(--steel-header);background-position:right center;opacity:.55}
.dka-steel--strip::before{background-image:var(--steel-strip);background-position:right center;opacity:.7}
.dka-steel--underlay>.dka-underlay{position:absolute;inset:0;z-index:-1;background:var(--steel-text-underlay);pointer-events:none}
.dka-steel--drift::before{animation:dka-hero-drift var(--dur-hero-drift) linear infinite;will-change:transform}
.dka-steel--paused::before{animation-play-state:paused}
/* Text idioms */
.dka-eyebrow{font-size:var(--eyebrow-size);line-height:var(--line-12);font-weight:var(--eyebrow-weight);letter-spacing:var(--eyebrow-track);text-transform:uppercase;color:var(--text-tertiary)}
.dka-mono{font-family:var(--font-mono);font-weight:var(--mono-weight);letter-spacing:0}
.dka-num{font-feature-settings:var(--num-features);font-variant-numeric:tabular-nums lining-nums}
