:root{--paper:#efeae0;--paper-shadow:#dcd5c7;--ink-pink:#ff48b0;--ink-blue:#0078bf;--ink-yellow:#ffe800;--ink-text:#2b2a28;--face-display:"Anton", "Haettenschweiler", "Arial Narrow", sans-serif;--face-utility:"Space Mono", ui-monospace, "SFMono-Regular", "Menlo", monospace;--size-wordmark:1.75rem;--size-invite:.9375rem;--size-label:.6875rem;--size-value:.8125rem;--track-wordmark:-.02em;--track-label:.14em;--s1:.25rem;--s2:.5rem;--s3:.75rem;--s4:1rem;--s6:1.5rem;--s8:2rem;--register-duration:.52s;--register-stagger:90ms;--ease-out:cubic-bezier(.16, 1, .3, 1)}@media (prefers-reduced-motion:reduce){:root{--register-duration:0s;--register-stagger:0s}}*{box-sizing:border-box}html,body{background:var(--paper);height:100%;color:var(--ink-text);font-family:var(--face-utility);margin:0;padding:0;overflow:hidden}#stage{z-index:0;touch-action:none;display:block;position:fixed;inset:0}header,.invite,.specimen,dialog{z-index:1}header{top:var(--s4);left:var(--s4);right:var(--s4);align-items:baseline;gap:var(--s3);pointer-events:none;display:flex;position:fixed}header>*{pointer-events:auto}h1{font-family:var(--face-display);font-size:var(--size-wordmark);letter-spacing:var(--track-wordmark);text-transform:uppercase;margin:0;line-height:.9}.tagline{font-family:var(--face-display);font-size:var(--size-invite);color:var(--ink-text);opacity:.75;margin:0}nav{margin-left:auto}nav a{font-family:var(--face-utility);font-size:var(--size-value);color:var(--ink-text);border-bottom:1px solid;text-decoration:none}.invite{text-align:center;font-family:var(--face-display);font-size:var(--size-invite);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-text);pointer-events:none;transition:opacity .4s var(--ease-out);margin:0;line-height:1.5;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.invite[data-dismissed]{opacity:0}.specimen{left:var(--s4);bottom:var(--s4);gap:var(--s2);padding:var(--s3) var(--s4);background:var(--paper);border:1px solid var(--paper-shadow);box-shadow:2px 2px 0 var(--paper-shadow);flex-direction:column;display:flex;position:fixed}.specimen .row{align-items:center;gap:var(--s3);display:flex}.row-label{font-size:var(--size-label);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--ink-text);min-width:3.5rem}#mood-input{font-family:var(--face-utility);font-size:var(--size-value);padding:var(--s1) var(--s3);background:var(--paper);color:var(--ink-text);border:1px solid var(--ink-text);appearance:none;cursor:pointer;border-radius:0}#mood-input:focus-visible{outline:2px solid var(--ink-blue);outline-offset:2px}input[type=range]{width:8rem;accent-color:var(--ink-pink)}details.conditions{margin-top:var(--s2);padding-top:var(--s2);border:none;border-top:1px solid var(--paper-shadow);border-radius:0}details.conditions>summary{font-family:var(--face-utility);font-size:var(--size-label);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--ink-text);cursor:pointer;list-style:none}details.conditions>summary::-webkit-details-marker{display:none}details.conditions>summary::marker{content:""}details.conditions[open]>summary{margin-bottom:var(--s2)}details.conditions .row{margin-top:var(--s1)}.clear-btn{font-family:var(--face-utility);font-size:var(--size-value);letter-spacing:.06em;background:var(--ink-text);color:var(--paper);border:1px solid var(--ink-text);padding:var(--s1) var(--s3);cursor:pointer;align-self:flex-start}:focus-visible{outline:2px solid var(--ink-blue);outline-offset:2px}dialog{font-family:var(--face-utility);color:var(--ink-text);background:var(--paper);border:1px solid var(--ink-text);box-shadow:3px 3px 0 var(--paper-shadow);max-width:32rem;padding:var(--s6)}dialog::backdrop{background:#2b2a2866}dialog h2{font-family:var(--face-utility);font-size:var(--size-label);letter-spacing:var(--track-label);text-transform:uppercase;margin:0 0 var(--s3)}dialog p{font-size:var(--size-value);line-height:1.6}dialog button{font-family:var(--face-utility);font-size:var(--size-value);background:var(--ink-text);color:var(--paper);border:1px solid var(--ink-text);padding:var(--s1) var(--s3);cursor:pointer;margin-top:var(--s3)}
