@font-face{font-family:Barlow Condensed;font-weight:500;font-display:swap;src:url(/fonts/barlow-condensed-latin-500-normal.woff2) format("woff2")}@font-face{font-family:Barlow Condensed;font-weight:600;font-display:swap;src:url(/fonts/barlow-condensed-latin-600-normal.woff2) format("woff2")}@font-face{font-family:Barlow Condensed;font-weight:700;font-display:swap;src:url(/fonts/barlow-condensed-latin-700-normal.woff2) format("woff2")}@font-face{font-family:Barlow Condensed;font-weight:800;font-display:swap;src:url(/fonts/barlow-condensed-latin-800-normal.woff2) format("woff2")}@font-face{font-family:Barlow;font-weight:400;font-display:swap;src:url(/fonts/barlow-latin-400-normal.woff2) format("woff2")}@font-face{font-family:Barlow;font-weight:500;font-display:swap;src:url(/fonts/barlow-latin-500-normal.woff2) format("woff2")}@font-face{font-family:Barlow;font-weight:600;font-display:swap;src:url(/fonts/barlow-latin-600-normal.woff2) format("woff2")}@font-face{font-family:Barlow;font-weight:700;font-display:swap;src:url(/fonts/barlow-latin-700-normal.woff2) format("woff2")}@font-face{font-family:Permanent Marker;font-weight:400;font-display:swap;src:url(/fonts/permanent-marker-latin-400-normal.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-weight:500;font-display:swap;src:url(/fonts/jetbrains-mono-latin-500-normal.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-weight:700;font-display:swap;src:url(/fonts/jetbrains-mono-latin-700-normal.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-weight:800;font-display:swap;src:url(/fonts/jetbrains-mono-latin-800-normal.woff2) format("woff2")}:root{--ink: #1c1c1c;--slab: #232323;--edge: #403e3e;--nrc-red: #a34847;--text: #cdcdcd;--title: #e8e8e8;--go: #6fa86f;--stop: #ba6868;--neutral: #806e5f;--chalk: #f1ece2;--tape: #d8c48e;--ink-deep: #151515;--slab-hi: #2c2b2a;--edge-soft: #333131;--red-text: #e0817c;--red-deep: #7d3534;--go-text: #86c086;--go-deep: #4f7f4f;--stop-deep: #8f4a4a;--muted: #9a9590;--tape-0: #e6e0d2;--tape-1: #d4a24c;--tape-2: #d98a52;--tape-3: #dd8a7c;--tape-4: #d993ad;--tape-5: #b49ad0;--tape-6: #8fb2d8;--tape-7: #6fb5ae;--tape-8: #9cba78;--tape-9: #b5c4a0;--tape-10: #c9a98a;--tape-11: #a9b4bf;--font-display: "Barlow Condensed", "Arial Narrow", sans-serif-condensed, sans-serif;--font-body: "Barlow", system-ui, -apple-system, "Segoe UI", sans-serif;--font-marker: "Permanent Marker", "Comic Sans MS", cursive;--font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 48px;--s-8: 64px;--radius: 3px;--radius-lg: 6px;--tap: 48px;--chalk-grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .95 0 0 0 0 .93 0 0 0 0 .89 0 0 0 .55 -.28'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");--topo: url(/img/topo.svg);--ease-out: cubic-bezier(.2, .8, .2, 1);--ease-snap: cubic-bezier(.3, 1.4, .5, 1)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body,h1,h2,h3,h4,p,ul,ol,figure{margin:0}ul,ol{padding:0;list-style:none}img,svg{display:block;max-width:100%}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}[hidden]{display:none!important}body{min-height:100dvh;background-color:var(--ink);color:var(--text);font-family:var(--font-body);font-size:1rem;line-height:1.45;-webkit-font-smoothing:antialiased;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;color:var(--title);line-height:1.05;letter-spacing:.01em;text-transform:uppercase}a{color:var(--red-text);text-underline-offset:3px}a:hover{color:var(--chalk)}::selection{background:var(--nrc-red);color:var(--chalk)}:focus{outline:none}:focus-visible{outline:3px solid var(--chalk);outline-offset:2px;box-shadow:0 0 0 2px var(--ink)}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.mono,.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums slashed-zero;font-feature-settings:"tnum" 1,"zero" 1}.has-topo{background-image:var(--topo);background-size:1600px auto;background-position:center top;background-attachment:fixed}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}.topbar{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-2) var(--s-4);background:var(--ink);border-bottom:1px solid var(--edge);min-height:56px}.topbar__logo{width:36px;height:36px;flex:none}.topbar__title{display:flex;flex-direction:column;min-width:0}.topbar__title b{font-family:var(--font-display);font-weight:800;font-size:1.25rem;line-height:1;color:var(--title);text-transform:uppercase;letter-spacing:.02em}.topbar__title span{font-size:.8rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar__end{margin-left:auto;display:flex;align-items:center;gap:var(--s-3)}.conn{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-display);font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.conn:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--go);box-shadow:0 0 0 3px #6fa86f2e}.conn[data-state=reconnecting]{color:var(--tape)}.conn[data-state=reconnecting]:before{background:var(--tape);box-shadow:0 0 0 3px #d8c48e33;animation:blink 1s steps(2) infinite}.conn[data-state=offline]{color:var(--red-text)}.conn[data-state=offline]:before{background:var(--stop);box-shadow:none}@keyframes blink{50%{opacity:.25}}.conn-banner{display:flex;align-items:center;justify-content:center;gap:var(--s-2);padding:6px var(--s-4);background:repeating-linear-gradient(-45deg,var(--tape) 0 14px,#c9b47c 14px 28px);color:var(--ink);font-weight:600;font-size:.9rem;text-align:center}.label-tape{--tilt: -1.2deg;display:inline-flex;align-items:center;gap:var(--s-2);padding:3px 14px 2px;background:var(--tape);background-image:linear-gradient(90deg,rgb(255 255 255 / .12),transparent 30%,rgb(0 0 0 / .05) 70%,rgb(255 255 255 / .08));color:var(--ink);font-family:var(--font-display);font-weight:700;font-size:1rem;text-transform:uppercase;letter-spacing:.08em;line-height:1.3;transform:rotate(var(--tilt));clip-path:polygon(0 8%,3% 0,6% 10%,10% 2%,90% 0,94% 9%,97% 1%,100% 10%,99% 50%,100% 92%,96% 100%,93% 90%,89% 99%,8% 100%,4% 91%,1% 100%,0 55%)}.label-tape .count{font-family:var(--font-mono);font-weight:700;font-size:.8em;background:var(--ink);color:var(--tape);padding:0 6px;border-radius:2px;letter-spacing:0}.section-head{display:flex;align-items:center;gap:var(--s-3);margin-bottom:var(--s-4)}.section-head .hint{color:var(--muted);font-size:.9rem}.route-divider{height:18px;margin:var(--s-5) 0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='18'%3E%3Cpath d='M0 9 Q45 2 90 9 T180 9' fill='none' stroke='%235a5656' stroke-width='1.5' stroke-dasharray='5 5'/%3E%3Ccircle cx='45' cy='5.6' r='3' fill='%231c1c1c' stroke='%23807a74' stroke-width='1.5'/%3E%3Ccircle cx='135' cy='12.4' r='3' fill='%231c1c1c' stroke='%23807a74' stroke-width='1.5'/%3E%3C/svg%3E") repeat-x center}.slab{background-color:var(--slab);background-image:var(--chalk-grain);background-size:220px;border:1px solid var(--edge);border-radius:var(--radius-lg)}.tape{--tape-c: var(--tape-0);--tilt: -1.5deg;position:relative;display:inline-block;max-width:100%;padding:.12em .7em .08em;background-color:var(--tape-c);background-image:linear-gradient(90deg,rgb(255 255 255 / .16),transparent 25%,rgb(0 0 0 / .06) 60%,rgb(255 255 255 / .1)),repeating-linear-gradient(90deg,transparent 0 3px,rgb(0 0 0 / .025) 3px 4px);color:var(--ink);font-family:var(--font-marker);font-weight:400;font-size:1.35rem;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transform:rotate(var(--tilt));clip-path:polygon(0 6%,2% 0,4% 8%,6% 1%,94% 0,96% 7%,98% 0,100% 9%,99% 48%,100% 93%,97% 100%,95% 92%,93% 100%,5% 100%,3% 91%,1% 100%,0 52%);filter:drop-shadow(0 1px 0 rgb(0 0 0 / .4))}.tape--sm{font-size:1rem}.tape--lg{font-size:2rem}[data-tape="0"]{--tape-c: var(--tape-0)}[data-tape="1"]{--tape-c: var(--tape-1)}[data-tape="2"]{--tape-c: var(--tape-2)}[data-tape="3"]{--tape-c: var(--tape-3)}[data-tape="4"]{--tape-c: var(--tape-4)}[data-tape="5"]{--tape-c: var(--tape-5)}[data-tape="6"]{--tape-c: var(--tape-6)}[data-tape="7"]{--tape-c: var(--tape-7)}[data-tape="8"]{--tape-c: var(--tape-8)}[data-tape="9"]{--tape-c: var(--tape-9)}[data-tape="10"]{--tape-c: var(--tape-10)}[data-tape="11"]{--tape-c: var(--tape-11)}[data-tilt="0"]{--tilt: -2deg}[data-tilt="1"]{--tilt: -1deg}[data-tilt="2"]{--tilt: .8deg}[data-tilt="3"]{--tilt: 1.6deg}[data-tilt="4"]{--tilt: -.4deg}.tag{--tape-c: var(--tape-0);position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name name" "crew grade";gap:var(--s-2) var(--s-4);padding:var(--s-4) var(--s-4) var(--s-4) var(--s-5);background-color:var(--slab);background-image:var(--chalk-grain);background-size:220px;border:1px solid var(--edge);border-left:6px solid var(--tape-c);border-radius:var(--radius);min-width:0}.tag:before{content:"";position:absolute;top:10px;right:10px;width:9px;height:9px;border-radius:50%;background:var(--ink);box-shadow:inset 0 1px 2px #000c,0 0 0 1px var(--edge)}.tag__name{grid-area:name;min-width:0;margin-left:-4px;padding-right:var(--s-5)}.tag__crew{grid-area:crew;font-size:.9rem;color:var(--muted);min-width:0}.tag__crew b{font-family:var(--font-display);font-weight:600;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;color:var(--muted);margin-right:6px}.tag__crew span{color:var(--text)}.tag__grade{grid-area:grade;align-self:end;text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:2px}.tag__no{font-family:var(--font-display);font-weight:700;font-size:.78rem;letter-spacing:.1em;color:var(--muted);text-transform:uppercase}.tag--mine{outline:2px solid var(--tape);outline-offset:3px}.tag--mine .tag__no:after{content:" · YOU";color:var(--tape)}.tag--live{border-color:var(--go);border-left-color:var(--tape-c);box-shadow:inset 0 0 0 1px #6fa86f40}.timer{font-family:var(--font-mono);font-weight:700;font-variant-numeric:tabular-nums slashed-zero;font-feature-settings:"tnum" 1,"zero" 1;color:var(--title);letter-spacing:-.02em;line-height:1;white-space:nowrap}.timer--live{color:var(--red-text)}.timer--idle{color:var(--muted);font-weight:500}.timer .frac{opacity:.72;font-size:.78em}.timer-plate{display:inline-block;padding:.14em .3em .1em;background:var(--ink-deep);border:1px solid var(--edge);border-radius:var(--radius)}.chip{display:inline-flex;align-items:center;gap:5px;height:22px;padding:0 7px;font-family:var(--font-display);font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;border:1px solid var(--edge);border-radius:2px;color:var(--muted);white-space:nowrap;flex:none}.chip--live{color:var(--ink);background:var(--go);border-color:var(--go)}.chip--live:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ink);animation:blink 1.2s steps(2) infinite}.chip--sent{color:var(--ink);background:var(--chalk);border-color:var(--chalk)}.chip--dnf,.chip--dq{color:var(--red-text);border-color:var(--stop-deep)}.chip--hidden,.chip--locked{color:var(--tape);border-color:#6b6247}.tick{display:inline-block;width:1.1em;height:1.1em;flex:none;background:var(--chalk);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3.5 13.2c2 .9 3.8 3 4.9 5.6.3.7 1.2.7 1.5 0C12.3 12.6 16.4 7.5 21 3.6' fill='none' stroke='%23000' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3.5 13.2c2 .9 3.8 3 4.9 5.6.3.7 1.2.7 1.5 0C12.3 12.6 16.4 7.5 21 3.6' fill='none' stroke='%23000' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}.lb{display:flex;flex-direction:column}.lb-row{--tape-c: var(--tape-0);display:grid;align-items:center;grid-template-columns:2.6ch 6px minmax(0,1fr) auto;gap:var(--s-3);padding:var(--s-2) var(--s-2);border-bottom:1px dashed var(--edge)}.lb-row__rank{font-family:var(--font-display);font-weight:800;font-size:1.5rem;color:var(--muted);text-align:right;line-height:1}.lb-row__swatch{width:6px;align-self:stretch;background:var(--tape-c);border-radius:1px}.lb-row__who{min-width:0}.lb-row__name{display:block;font-family:var(--font-display);font-weight:700;font-size:1.2rem;text-transform:uppercase;letter-spacing:.02em;color:var(--title);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lb-row__crew{display:block;font-size:.82rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lb-row__time{display:flex;align-items:center;gap:var(--s-2);font-size:1.15rem}.lb-row--mine{background:#d8c48e14;box-shadow:inset 3px 0 0 var(--tape)}.lb-row--fresh{animation:row-in .6s var(--ease-out) both}@keyframes row-in{0%{transform:translate(-24px);opacity:0;background:#f1ece22e}}.podium{display:grid;gap:var(--s-3);margin-bottom:var(--s-4)}.podium__step{--tape-c: var(--tape-0);position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--s-4);padding:var(--s-3) var(--s-4);background-color:var(--slab);background-image:var(--chalk-grain);background-size:220px;border:1px solid var(--edge);border-radius:var(--radius)}.podium__step--1{border-color:#6b3b3a;box-shadow:inset 0 0 0 1px #a3484766;background-color:#2a2221}.podium__place{font-family:var(--font-display);font-weight:800;line-height:.85;color:var(--chalk);font-size:3rem;min-width:1.4ch;text-align:center}.podium__place sup{font-size:.38em;vertical-align:top;position:relative;top:.3em;margin-left:1px;color:var(--muted)}.podium__step--1 .podium__place{color:var(--chalk);text-shadow:0 0 0 transparent}.podium__step--1 .podium__place:after{content:"";position:absolute;left:6px;top:50%;width:64px;height:56px;translate:0 -50%;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 56'%3E%3Cpath d='M34 5C16 3 5 14 6 28s14 23 30 22 23-12 22-25C57 13 46 4 28 6' fill='none' stroke='%23e0817c' stroke-width='2.4' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat;pointer-events:none}.podium__who{min-width:0;display:flex;flex-direction:column;gap:6px;align-items:flex-start}.podium__crew{font-size:.9rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.podium__time{font-size:1.6rem}.btn{--btn-bg: var(--slab-hi);--btn-fg: var(--title);--btn-edge: var(--edge);--btn-press: var(--slab);display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);min-height:var(--tap);padding:0 var(--s-5);background:var(--btn-bg);color:var(--btn-fg);border:1px solid var(--btn-edge);border-radius:var(--radius);font-family:var(--font-display);font-weight:700;font-size:1.1rem;text-transform:uppercase;letter-spacing:.06em;text-decoration:none;box-shadow:0 3px 0 var(--btn-press);transition:transform .06s,box-shadow .06s,background-color .15s;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.btn:hover{filter:brightness(1.08);color:var(--btn-fg)}.btn:active{transform:translateY(3px);box-shadow:0 0 0 var(--btn-press)}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.btn--primary{--btn-bg: var(--nrc-red);--btn-fg: var(--chalk);--btn-edge: var(--nrc-red);--btn-press: var(--red-deep)}.btn--go{--btn-bg: var(--go);--btn-fg: var(--ink);--btn-edge: var(--go);--btn-press: var(--go-deep)}.btn--stop{--btn-bg: var(--stop);--btn-fg: var(--ink);--btn-edge: var(--stop);--btn-press: var(--stop-deep)}.btn--neutral{--btn-bg: var(--neutral);--btn-fg: var(--chalk);--btn-edge: var(--neutral);--btn-press: #5e5146}.btn--ghost{--btn-bg: transparent;--btn-fg: var(--text);--btn-press: transparent;box-shadow:none}.btn--tape{--btn-bg: var(--tape);--btn-fg: var(--ink);--btn-edge: var(--tape);--btn-press: #a8955f}.btn--block{width:100%}.btn--lg{min-height:60px;font-size:1.35rem}.btn--xl{min-height:84px;font-size:2rem;letter-spacing:.1em;font-weight:800}.btn--icon{padding:0;width:var(--tap)}.field{display:flex;flex-direction:column;gap:6px}.field__label{font-family:var(--font-display);font-weight:600;font-size:.95rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text);display:flex;justify-content:space-between}.field__label small{font-family:var(--font-mono);font-size:.75rem;color:var(--muted);letter-spacing:0;text-transform:none}.input{min-height:52px;width:100%;padding:0 var(--s-4);background:var(--ink-deep);color:var(--title);border:1px solid var(--edge);border-bottom:2px solid #5a5656;border-radius:var(--radius);font-size:1.1rem}.input::placeholder{color:#77726d}.input:focus-visible{border-color:var(--tape);outline-offset:0;outline:2px solid var(--tape);box-shadow:none}.field__error{color:var(--red-text);font-size:.9rem}.field__help{color:var(--muted);font-size:.85rem}.input[aria-invalid=true]{border-color:var(--stop)}.code-boxes{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s-2);max-width:300px}.code-boxes .input{height:68px;padding:0;text-align:center;text-transform:uppercase;font-family:var(--font-mono);font-weight:800;font-size:2rem;letter-spacing:0}.empty{display:flex;flex-direction:column;align-items:center;gap:var(--s-2);padding:var(--s-6) var(--s-4);text-align:center;border:1px dashed var(--edge);border-radius:var(--radius-lg);color:var(--muted)}.empty strong{font-family:var(--font-display);font-size:1.4rem;text-transform:uppercase;color:var(--text);letter-spacing:.03em}.skeleton{border-radius:var(--radius);background:linear-gradient(90deg,var(--slab) 30%,var(--slab-hi) 50%,var(--slab) 70%) 0 0/300% 100%;animation:shimmer 1.4s linear infinite}@keyframes shimmer{to{background-position:-100% 0}}.toast{position:fixed;left:50%;bottom:calc(var(--toast-offset, var(--s-5)) + env(safe-area-inset-bottom));width:max-content;translate:-50% 0;display:flex;align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);max-width:min(92vw,480px);background:var(--chalk);color:var(--ink);border-radius:var(--radius);font-weight:600;box-shadow:0 8px 24px #00000080;z-index:50}.toast .btn{min-height:36px;padding:0 var(--s-3);font-size:.95rem;--btn-bg: var(--ink);--btn-fg: var(--chalk);--btn-edge: var(--ink);box-shadow:none}.qr{position:relative;background:var(--chalk);padding:12px;border-radius:var(--radius);aspect-ratio:1;width:100%}.qr svg,.qr img{width:100%;height:100%;image-rendering:pixelated}.join-code{font-family:var(--font-mono);font-weight:800;color:var(--chalk);letter-spacing:.12em;line-height:1}.chat{display:flex;flex-direction:column;gap:var(--s-3)}.msg{display:grid;grid-template-columns:6px 1fr;gap:var(--s-3)}.msg__bar{background:var(--tape-c, var(--edge));border-radius:1px}.msg__meta{display:flex;gap:var(--s-2);align-items:baseline;font-size:.8rem;color:var(--muted)}.msg__who{font-family:var(--font-display);font-weight:700;font-size:.95rem;color:var(--title);text-transform:uppercase;letter-spacing:.03em}.msg__team{color:var(--muted)}.msg__text{color:var(--text);overflow-wrap:anywhere}.msg--mod{opacity:.55;font-style:italic}.msg--sys .msg__text{color:var(--tape);font-family:var(--font-display);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.composer{display:flex;gap:var(--s-2);align-items:center}.composer .input{min-height:var(--tap)}.reacts{display:flex;gap:6px;flex-wrap:wrap}.react{display:inline-flex;align-items:center;gap:6px;min-height:var(--tap);padding:0 12px;background:var(--slab-hi);border:1px solid var(--edge);border-radius:var(--radius);font-family:var(--font-display);font-weight:600;font-size:.95rem;color:var(--text);text-transform:uppercase;letter-spacing:.04em;transition:transform .08s}.react .emo{font-size:1.3rem;line-height:1;font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif}.react:active{transform:scale(.94)}.react-count{font-family:var(--font-mono);font-weight:700;font-size:.85rem;color:var(--chalk);background:var(--ink);border:1px solid var(--edge);border-radius:2px;padding:1px 5px}.drawer{position:fixed;inset:auto 0 0 0;z-index:30;background:var(--slab);border-top:1px solid var(--edge);border-radius:10px 10px 0 0;padding:var(--s-2) var(--s-4) calc(var(--s-4) + env(safe-area-inset-bottom));box-shadow:0 -10px 30px #00000073}.drawer__grip{width:44px;height:4px;border-radius:2px;background:var(--edge);margin:4px auto var(--s-3)}.stamp{display:inline-block;padding:.05em .35em;font-family:var(--font-display);font-weight:800;font-size:3rem;line-height:1;color:var(--chalk);letter-spacing:.06em;text-transform:uppercase;border:4px solid var(--chalk);border-radius:4px;transform:rotate(-8deg);-webkit-mask:var(--chalk-grain-mask, none);opacity:.95}.stamp--in{animation:stamp-in .45s var(--ease-snap) both}@keyframes stamp-in{0%{transform:rotate(-8deg) scale(2.2);opacity:0}60%{opacity:1}}.qr__logo{position:absolute;left:50%;top:50%;translate:-50% -50%;width:22%;aspect-ratio:1;padding:3%;background:var(--nrc-red);border:3px solid var(--chalk);border-radius:4px}.qr__logo img{width:100%;height:100%;object-fit:contain}.dlg{width:min(92vw,440px);padding:0;border:1px solid var(--edge);border-radius:var(--radius-lg);background:var(--slab);color:var(--text);box-shadow:0 20px 60px #0009}.dlg::backdrop{background:#0009}.dlg__form{display:grid;gap:var(--s-4);padding:var(--s-5)}.dlg__title{font-size:1.6rem}.dlg__body{color:var(--text)}.dlg__actions{display:flex;gap:var(--s-2);justify-content:flex-end;flex-wrap:wrap;margin-top:var(--s-2)}.dlg__qr{max-width:260px;margin:0 auto}.dlg .team-code{text-align:center;font-family:var(--font-mono);font-weight:800;font-size:2.4rem;letter-spacing:.2em;color:var(--chalk)}.btn-row{display:flex;gap:var(--s-2);flex-wrap:wrap}.empty--sm{padding:var(--s-4)}.loading-block{display:grid;gap:var(--s-3);margin-top:var(--s-5)}.skel-tag{height:120px}.skel-row{height:56px}.react--pop{animation:pop .25s var(--ease-snap)}@keyframes pop{50%{transform:scale(1.12)}}.btn[aria-busy=true]{opacity:.7}.invite{display:grid;grid-template-columns:116px 1fr;gap:var(--s-4);align-items:center;padding:var(--s-4)}.invite .qr{padding:6px}.invite .team-code{font-family:var(--font-mono);font-weight:800;font-size:2.2rem;letter-spacing:.18em;color:var(--chalk);line-height:1}.invite p{color:var(--muted);font-size:.9rem}.invite .btn{min-height:40px;font-size:.95rem;padding:0 var(--s-3);margin-top:var(--s-2)}
