/* Page-wide basics: reset, typography, links, section layout. */
*{box-sizing:border-box}
html{color-scheme:light;-webkit-text-size-adjust:100%}
body{margin:0}
img{max-width:100%}[hidden]{display:none!important}
body{background:var(--bg);color:var(--ink);font:16px/1.45 var(--body);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;
  padding:0 0 calc(96px + env(safe-area-inset-bottom,0px))}
.wrap{max-width:1120px;margin:0 auto;display:flex;flex-direction:column;gap:28px;
  padding:0 max(16px,env(safe-area-inset-right,0px)) 0 max(16px,env(safe-area-inset-left,0px))}
h1,h2{font-family:var(--display);font-weight:700;margin:0;text-wrap:balance}
h1{font-size:34px;line-height:1.2;letter-spacing:.01em}
h2{font-size:22px;line-height:1.25;letter-spacing:.01em}
.label{font-size:12px;letter-spacing:.03em;text-transform:uppercase;color:var(--muted);font-weight:500}
.num{font-variant-numeric:tabular-nums}
button,select,input{font:inherit;color:inherit}
button{cursor:pointer;-webkit-tap-highlight-color:transparent}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
a{color:var(--accent)}
.empty{color:var(--muted);font-size:14px}
.note{font-size:13px;color:var(--muted);max-width:68ch}
section{display:flex;flex-direction:column;gap:12px}
.sec-h{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px}
@media (min-width:900px){.wrap{padding-left:24px;padding-right:24px}}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
