/* URSY.DOMAINS — resets, type scale, focus, scrollbars, motion kill switch. */
*,*::before,*::after{ box-sizing:border-box; }
html{ background:var(--bg); -webkit-text-size-adjust:100%; }
html,body{ margin:0; overflow-x:hidden; }
@supports (overflow-x:clip){ html,body{ overflow-x:clip; } }
body{ background:transparent; color:var(--ink); font-family:var(--font-ui); font-size:14px;
  line-height:1.6; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }

h1,h2,h3,h4{ margin:0; letter-spacing:-.02em; text-wrap:balance; }
h1{ font-size:clamp(2.9rem,6.4vw,5.6rem); font-weight:700; line-height:1.02; letter-spacing:-.037em; }
h2{ font-size:clamp(1.6rem,3vw,2.4rem); font-weight:700; line-height:1.15; }
h3{ font-size:1.2rem; font-weight:700; letter-spacing:-.012em; }
p{ margin:0; text-wrap:pretty; }
a{ color:inherit; text-decoration:none; }
a:hover{ color:var(--neon); }
b,strong{ font-weight:600; }
img{ max-width:100%; height:auto; }
button,input,select,textarea{ font:inherit; color:inherit; }
button{ border:0; background:none; cursor:pointer; }
::selection{ background:var(--neon-soft); }
:focus{ outline:none; }
:focus-visible{ outline:2px solid var(--neon); outline-offset:2px; border-radius:var(--radius-s); }
input::placeholder,textarea::placeholder{ color:var(--ink3); }
summary{ list-style:none; cursor:pointer; }
summary::-webkit-details-marker{ display:none; }

/* machine speech */
.u-mono{ font-family:var(--font-mono); }
.u-num{ font-family:var(--font-mono); font-weight:800; font-variant-numeric:tabular-nums; letter-spacing:-.02em; }
.u-eyebrow{ font-family:var(--font-mono); font-size:9px; letter-spacing:.22em; color:var(--ink3); text-transform:uppercase; }
.u-meta{ font-family:var(--font-mono); font-size:10.5px; color:var(--ink3); }
.u-lede{ font-size:15px; line-height:1.6; color:var(--ink2); max-width:var(--reading); }
.u-dim{ color:var(--ink2); }
.u-dimmer{ color:var(--ink3); }
.u-page{ width:min(var(--page),100% - 44px); margin-inline:auto; }
.u-skip{ position:absolute; left:-9999px; }
.u-skip:focus{ left:12px; top:12px; z-index:60; padding:10px 14px; background:var(--sheet);
  box-shadow:inset 0 0 0 1px var(--line2); border-radius:var(--radius-s); }

::-webkit-scrollbar{ width:10px; height:10px; }
::-webkit-scrollbar-thumb{ background:var(--line2); border-radius:10px; border:3.5px solid transparent; background-clip:padding-box; }
::-webkit-scrollbar-track,::-webkit-scrollbar-corner{ background:transparent; }

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{ animation-duration:.001ms !important; animation-iteration-count:1 !important;
    transition-duration:.001ms !important; scroll-behavior:auto !important; }
}
@media (prefers-contrast:more){
  :root{ --line:rgba(18,20,24,.3); --line2:rgba(18,20,24,.5); --ink2:#3a3f45; --ink3:#4a4f55; }
  [data-theme="dark"]{ --line:rgba(255,255,255,.35); --line2:rgba(255,255,255,.55); --ink2:#d6dade; --ink3:#c2c7cc; }
}
