.install-card{position:relative;border:2.5px solid var(--ink);border-radius:var(--radius-wobble);background:var(--hl-yellow);padding:14px 18px 16px;display:flex;flex-direction:column;gap:8px;box-shadow:var(--shadow-paper)}.install-close{position:absolute;top:4px;right:8px;background:none;border:0;font:inherit;font-size:20px;line-height:1;cursor:pointer;color:var(--ink)}.install-card h3{font-family:var(--font-display);margin:0;font-size:18px}.install-card p{margin:0;font-size:14px;color:var(--ink-soft)}.install-ios{display:flex;gap:10px;align-items:center}.my-events{display:flex;flex-direction:column;gap:8px;width:100%;max-width:480px;margin:0 auto}.my-events-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.my-event-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border:2px solid var(--ink);border-radius:16px 20px 14px/18px 14px 20px 16px;background:var(--paper);text-decoration:none;color:var(--ink);transition:transform 80ms ease}.my-event-row:active{transform:scale(.99)}.my-event-row[data-tone=pink]{background:color-mix(in srgb,var(--hl-pink) 22%,var(--paper))}.my-event-row[data-tone=yellow]{background:color-mix(in srgb,var(--hl-yellow) 18%,var(--paper))}.my-event-row[data-tone=muted]{background:transparent;color:var(--ink-soft);border-style:dashed}.my-event-row .emoji{font-size:26px;line-height:1;flex:0 0 auto}.my-event-row .grow{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.my-event-row .title{font-family:var(--font-display);font-weight:700;font-size:16px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.my-event-row .meta{display:flex;align-items:center;gap:6px;font-family:var(--font-hand);font-size:14px;color:var(--ink-soft)}.my-event-row .when{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.my-event-row .role{font-family:var(--font-display);font-size:11px;letter-spacing:.6px;color:var(--ink);text-transform:uppercase}.my-event-row .dot{opacity:.5}.my-event-row .status-badge{flex:0 0 auto;font-family:var(--font-display);font-size:11px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;padding:4px 9px;border:1.5px solid var(--ink);border-radius:999px;background:var(--paper);white-space:nowrap}.my-event-row .status-badge[data-bucket=live]{background:var(--hl-pink);color:var(--ink);animation:my-events-pulse 1.6s ease-in-out infinite}.my-event-row .status-badge[data-status=locked]{background:var(--hl-yellow);color:var(--ink)}.my-event-row .status-badge[data-bucket=ended]{background:transparent;color:var(--ink-soft);border-style:dashed}@keyframes my-events-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@media(prefers-reduced-motion:reduce){.my-event-row .status-badge[data-bucket=live]{animation:none}}.cap-root{position:fixed;inset:0;background:#000;color:#fff;z-index:50}.cap-view{position:absolute;inset:0;overflow:hidden}.cap-view video,.cap-view img{width:100%;height:100%;object-fit:cover}.cap-top{position:absolute;top:0;left:0;right:0;padding:max(12px,env(safe-area-inset-top)) 16px 0;display:flex;align-items:center;justify-content:space-between;z-index:60;pointer-events:none}.cap-top>*{pointer-events:auto}.cap-tile-pill{position:absolute;left:50%;transform:translate(-50%);background:#0006;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);color:#fff;font-size:var(--text-sm, 14px);font-weight:600;padding:4px 14px;border-radius:999px;max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:none}.cap-controls{position:absolute;bottom:0;left:0;right:0;padding:24px 24px max(24px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;z-index:60}.cap-icon-btn{width:44px;height:44px;border-radius:50%;border:none;background:#0000004d;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;touch-action:manipulation}.cap-icon-btn:active{transform:scale(.92)}.cap-icon-btn--confirm{background:var(--hl-pink, #ff8a9b);width:56px;height:56px}.shutter{width:88px;height:88px;border-radius:50%;border:6px solid #fff;background:var(--hl-pink, #ff8a9b);position:relative;touch-action:none;padding:0}.shutter[data-recording=true]{background:#f35;transform:scale(1.06)}.shutter .ring{position:absolute;width:112px;height:112px;left:50%;top:50%;transform:translate(-50%,-50%);pointer-events:none}.cap-denied{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px;text-align:center;font-family:var(--font-hand, system-ui)}.cap-denied .upload-fallback{display:inline-block;padding:12px 20px;margin-top:16px;background:var(--hl-yellow);color:var(--ink);border:2px solid var(--ink);border-radius:14px;cursor:pointer}.cap-toast{position:absolute;bottom:140px;left:0;right:0;text-align:center;color:#fff;font-size:var(--text-sm, 14px);z-index:60;pointer-events:none}@media(prefers-reduced-motion:reduce){.cap-icon-btn:active{transform:none}}.selfie-overlay{position:fixed;inset:0;z-index:80;background:#000;color:#fff;display:flex;flex-direction:column}.selfie-overlay .cap-root{position:absolute;inset:0}.selfie-controls{position:absolute;left:0;right:0;bottom:0;padding:16px 24px max(24px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;gap:16px;z-index:3;background:linear-gradient(to top,rgba(0,0,0,.55),transparent)}.selfie-topbar-btn{width:44px;height:44px;border-radius:50%;background:#ffffff1f;border:2px solid rgba(255,255,255,.75);color:#fff;font-size:20px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform 80ms ease,background .12s ease}.selfie-topbar-btn:hover{background:#ffffff2e}.selfie-topbar-btn:active{transform:scale(.94)}.selfie-hint{position:absolute;left:0;right:0;bottom:110px;margin:0;text-align:center;color:#ffffffe0;font-family:var(--font-hand);font-size:18px;letter-spacing:.2px;pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,.5)}.selfie-err{margin:auto;max-width:340px;padding:22px 24px;border-radius:22px 28px 20px 26px/24px 20px 28px 22px;background:#fff;color:var(--ink);text-align:center;display:flex;flex-direction:column;gap:12px;font-family:var(--font-hand);font-size:18px}.selfie-err-sub{margin:0;color:var(--ink-soft)}.selfie-err-row{display:flex;gap:10px;justify-content:center}.selfie-btn{font-family:var(--font-display);font-size:16px;padding:8px 16px;border:2px solid var(--ink);border-radius:10px 14px 8px 16px/12px 10px 14px 8px;cursor:pointer}.selfie-btn-ghost{background:var(--paper)}.selfie-btn-primary{background:var(--hl-pink)}.name-picker{display:flex;flex-direction:column;gap:16px;max-width:440px;margin:0 auto;width:100%;padding-bottom:88px;position:relative}.name-step-back{position:absolute;top:0;left:0;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--ink-soft);cursor:pointer;padding:0;border-radius:8px}.name-step-back:hover,.name-step-back:focus-visible{color:var(--ink);background:var(--paper-2)}.name-step[data-step=name]{align-items:stretch;justify-content:center;gap:24px;min-height:calc(100dvh - 48px);padding-top:max(14vh,56px);padding-bottom:max(88px,env(safe-area-inset-bottom))}.name-step-greeting{font-size:56px;margin:0 0 4px;line-height:1;text-align:center}.name-step-hint{margin:0;color:var(--ink-soft);font-family:var(--font-hand);font-size:18px}.name-step[data-step=name] .name-picker-name.sk-input{font-size:22px;padding:14px 18px;text-align:left;width:100%}.name-step[data-step=look]{align-items:stretch;gap:18px;padding-top:48px}.name-step-head{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;margin-bottom:2px}.name-step-head h2{font-size:24px;margin:0;line-height:1.15}.name-step-head h2 span{color:var(--hl-pink)}.name-step-head .sk-av{margin:10px 0}.name-picker-vibe{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}.name-picker-emoji{display:flex;gap:8px;flex-wrap:nowrap}.name-picker-emoji button{width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--ink);border-radius:12px 16px 10px 18px/14px 10px 16px 12px;background:var(--paper);font-size:24px;transition:transform 80ms ease,background .12s ease;padding:0}.name-picker-emoji[data-color=pink] button{background:var(--hl-pink)}.name-picker-emoji[data-color=yellow] button{background:var(--hl-yellow)}.name-picker-emoji[data-color=blue] button{background:var(--hl-blue)}.name-picker-emoji[data-color=green] button{background:var(--hl-green)}.name-picker-emoji[data-color=purple] button{background:var(--hl-purple)}.name-picker-emoji[data-color=teal] button{background:var(--hl-teal)}.name-picker-emoji[data-color=coral] button{background:var(--hl-coral)}.name-picker-emoji[data-color=sand] button{background:var(--hl-sand)}.name-picker-emoji button:active{transform:scale(.95)}.name-picker-emoji button[data-picked=true]{box-shadow:0 0 0 2px var(--paper),0 0 0 4px var(--ink);transform:rotate(-1.5deg) scale(1.06)}.name-picker-colors{display:flex;gap:8px;justify-content:center}.name-picker-colors button{width:32px;height:32px;border-radius:50%;border:2.5px solid var(--ink);background:var(--paper);transition:transform 80ms ease}.name-picker-colors button:active{transform:scale(.95)}.name-picker-colors button[data-color=pink]{background:var(--hl-pink)}.name-picker-colors button[data-color=yellow]{background:var(--hl-yellow)}.name-picker-colors button[data-color=blue]{background:var(--hl-blue)}.name-picker-colors button[data-color=green]{background:var(--hl-green)}.name-picker-colors button[data-color=purple]{background:var(--hl-purple)}.name-picker-colors button[data-color=teal]{background:var(--hl-teal)}.name-picker-colors button[data-color=coral]{background:var(--hl-coral)}.name-picker-colors button[data-color=sand]{background:var(--hl-sand)}.name-picker-colors button[data-picked=true]{box-shadow:0 0 0 3px var(--paper),0 0 0 5px var(--ink);transform:scale(1.08)}.name-picker-selfie{display:flex;flex-direction:column;gap:12px;align-items:center}.name-picker-err{margin:0;color:var(--hl-pink);font-family:var(--font-hand);font-size:18px;text-align:center}.name-picker-cta{position:sticky;bottom:0;left:0;right:0;padding:10px 0 max(10px,env(safe-area-inset-bottom));background:linear-gradient(to bottom,rgba(251,248,241,0) 0%,var(--paper) 30%);margin:0 -20px;padding-left:20px;padding-right:20px}.landing{align-items:center;gap:16px}.landing-authed{align-items:stretch;gap:16px}.landing-head-row{display:flex;align-items:center;justify-content:space-between;width:100%;padding:4px 0 0}.landing-profile{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:50%;flex:0 0 auto}.landing-title{margin:0;display:inline-flex;align-items:center;justify-content:center}.landing-wordmark{display:block;width:220px;height:auto;user-select:none}.landing-authed .landing-wordmark{width:160px}.landing-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%;max-width:480px;margin:0 auto}.landing-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:22px 14px;border:2.5px solid var(--ink);border-radius:18px 22px 16px 24px/20px 16px 24px 18px;color:var(--ink);text-decoration:none;background:var(--paper);transition:transform 80ms ease;box-shadow:3px 4px #00000014}.landing-card:active{transform:scale(.98)}.landing-card[data-tone=pink]{background:var(--hl-pink)}.landing-card[data-tone=yellow]{background:var(--hl-yellow)}.landing-card[data-tone=blue]{background:var(--hl-blue)}.landing-card-emoji{flex:0 0 auto}.landing-card-text{font-family:var(--font-display);font-weight:700;font-size:18px;line-height:1.1;text-align:center}.landing-help{align-self:center;font-family:var(--font-hand);font-size:15px;color:var(--ink-soft);text-decoration:none;padding:4px 10px}.landing-help:hover,.landing-help:focus-visible{color:var(--ink)}.landing-gate{justify-content:center;min-height:calc(100dvh - 48px);gap:22px;padding-top:0}.landing-gate .landing-wordmark{width:280px}.landing-gate-cta{display:flex;flex-direction:column;gap:10px;align-items:stretch;width:100%;max-width:340px;margin-top:6px}.landing-gate-name{width:100%;text-align:center;font-family:var(--font-display);font-weight:700;font-size:22px}.landing-gate-err{margin:0;font-family:var(--font-hand);font-size:15px;color:var(--hl-pink);text-align:center}.landing-gate-link{align-self:center;font-family:var(--font-hand);font-size:17px;color:var(--ink-soft);text-decoration:none;padding:6px 12px}.landing-gate-link:hover,.landing-gate-link:focus-visible{color:var(--ink)}.landing-picker{padding-top:12px;align-items:stretch}.landing-back{align-self:flex-start;font-family:var(--font-hand);font-size:17px;color:var(--ink-soft);padding:6px 8px;background:transparent;border:0;cursor:pointer}.landing-back:hover,.landing-back:focus-visible{color:var(--ink)}.landing-sub{font-family:var(--font-hand);font-size:18px;color:var(--ink-soft);margin:6px 0 0;text-align:center}.landing-mark-icon{width:56px;height:auto;margin-top:32px}.landing-build{margin:12px 0 0;text-align:center;font-family:var(--font-mono);font-size:11px;color:var(--ink-fade);letter-spacing:.02em}.voice-modal{position:fixed;inset:0;z-index:80;background:#00000073;display:flex;align-items:flex-end;justify-content:center}.voice-modal-card{width:100%;max-width:440px;padding:20px 22px max(22px,env(safe-area-inset-bottom));background:var(--paper);border-top:3px solid var(--ink);border-radius:24px 24px 0 0;display:flex;flex-direction:column;gap:14px;text-align:center;animation:voiceModalIn .18s ease-out}@keyframes voiceModalIn{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.voice-modal-card{animation:none}}.voice-modal-card h2{margin:0;font-family:var(--font-display);font-size:24px}.voice-modal-sub{margin:0;color:var(--ink-soft);font-family:var(--font-hand);font-size:18px}.voice-modal-wave{display:flex;justify-content:center;gap:6px;height:40px;align-items:center}.voice-modal-wave span{width:4px;height:100%;background:var(--hl-pink);border-radius:2px;animation:voiceWave .9s ease-in-out infinite}.voice-modal-wave span:nth-child(1){animation-delay:0ms}.voice-modal-wave span:nth-child(2){animation-delay:.1s}.voice-modal-wave span:nth-child(3){animation-delay:.2s}.voice-modal-wave span:nth-child(4){animation-delay:.1s}.voice-modal-wave span:nth-child(5){animation-delay:0ms}@keyframes voiceWave{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}@media(prefers-reduced-motion:reduce){.voice-modal-wave span{animation:none;transform:scaleY(.7)}}.voice-modal-timer{font-family:var(--font-mono);font-size:22px}.voice-modal-timer-max{color:var(--ink-soft);font-size:16px;margin-left:6px}.voice-modal-status{margin:0;color:var(--ink-soft);font-family:var(--font-hand);font-size:18px}.voice-modal-error{margin:0;color:var(--hl-pink);font-family:var(--font-hand);font-size:17px}.voice-modal-cancel{align-self:center;padding:4px 12px;background:transparent;border:0;color:var(--ink-soft);font-family:var(--font-hand);font-size:17px;cursor:pointer}.create-page{display:flex;flex-direction:column;gap:16px;min-height:100%}.create-back{display:inline-flex;align-items:center;gap:6px;font-size:16px;color:var(--ink-soft);text-decoration:none}.create-heading{display:flex;flex-direction:column;gap:4px}.create-heading h1{font-size:28px}.create-heading .sub{font-family:var(--font-hand);font-size:18px;color:var(--ink-soft)}.describe-textarea{font-family:var(--font-hand);font-size:20px;line-height:1.3;background:var(--paper);color:var(--ink);border:2px solid var(--ink);border-radius:14px 18px 12px/16px 12px 18px 14px;padding:14px;width:100%;min-height:140px;resize:vertical}.describe-textarea::placeholder{color:var(--ink-fade)}.describe-textarea:focus-visible{outline:none;box-shadow:0 0 0 3px var(--hl-yellow)}.describe-row-title,.describe-row-emoji{display:flex;gap:8px;align-items:stretch}.voice-wrap{display:flex;flex-direction:column;align-items:center;gap:14px;padding:24px 8px}.voice-mic{width:96px;height:96px;border-radius:50%;border:3px solid var(--ink);background:var(--hl-pink);display:inline-flex;align-items:center;justify-content:center;font-size:40px;box-shadow:0 0 0 6px #ff8a9b33,0 0 0 14px #ff8a9b1a;cursor:pointer}.voice-mic[data-recording=true]{animation:pulse 1s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.voice-elapsed{font-family:var(--font-mono);font-size:20px}.voice-hint{font-size:14px;color:var(--ink-soft);text-align:center}.generating{display:flex;flex-direction:column;align-items:center;gap:10px;padding:40px 8px;text-align:center}.generating .spinner{width:42px;height:42px;border:3px dashed var(--ink);border-radius:50%;animation:spin 1.6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.tilepool{display:flex;flex-direction:column;gap:8px}.tilepool-counter{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:var(--ink-soft)}.tilepool-counter strong{font-family:var(--font-display);color:var(--ink);font-size:18px}.tile-row{display:flex;align-items:center;gap:8px;padding:8px 10px;border:2px solid var(--ink);border-radius:10px 14px 8px 16px/12px 10px 14px 8px;background:var(--paper);min-height:44px}.tile-row[data-accepted=true]{background:var(--hl-yellow)}.tile-row .text{flex:1;min-width:0;overflow-wrap:anywhere;font-size:16px}.tile-row .by{font-size:12px;color:var(--ink-soft);display:block;margin-top:2px}.tile-row .vote{border:2px solid var(--ink);border-radius:50%;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:var(--paper);cursor:pointer}.tile-row .vote[data-voted=true]{background:var(--hl-pink)}.add-tile{display:flex;gap:6px}.mode-card{display:flex;flex-direction:column;gap:4px;padding:14px 16px;border:2.5px solid var(--ink);border-radius:18px 22px 16px 24px/20px 16px 22px 18px;background:var(--paper);cursor:pointer;text-align:left;width:100%}.mode-card[data-selected=true]{background:var(--hl-yellow)}.mode-card h3{font-size:20px}.mode-card p{margin:0;color:var(--ink-soft);font-size:14px}.pattern-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.pattern-tile{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 8px;border:2px solid var(--ink);border-radius:12px 16px 10px 18px/14px 12px 16px 10px;background:var(--paper);cursor:pointer;font-family:var(--font-display);font-size:14px;position:relative}.pattern-tile[data-selected=true]{background:var(--hl-yellow);outline:2.5px solid var(--hl-pink);outline-offset:-1px}.pattern-tile .pts{position:absolute;right:6px;top:6px;font-size:11px;padding:1px 6px;border:1.5px solid var(--ink);border-radius:8px;background:var(--hl-pink)}.datetime-field{display:flex;flex-direction:column;gap:4px}.datetime-field label{font-family:var(--font-hand);font-size:16px;color:var(--ink-soft)}.datetime-field input[type=datetime-local]{font-family:var(--font-display);font-size:18px;padding:12px 14px;border:2px solid var(--ink);border-radius:14px 18px 12px/16px 12px 18px 14px;background:var(--paper);color:var(--ink);width:100%;min-height:52px}.code-boxes{display:flex;gap:6px;justify-content:center}.code-box{font-family:var(--font-mono);font-size:26px;font-weight:700;width:40px;height:50px;border:2px solid var(--ink);border-radius:6px;display:flex;align-items:center;justify-content:center;background:var(--paper)}.code-box[data-filled=true]{background:var(--hl-yellow)}.code-status{font-size:14px;text-align:center}.code-status[data-state=available]{color:var(--hl-green-fg, #2a7a2a)}.code-status[data-state=taken]{color:var(--hl-pink)}.code-suggestions{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.code-suggestion{font-family:var(--font-mono);font-weight:700;font-size:15px;padding:4px 10px;border:2px solid var(--ink);border-radius:12px;background:var(--paper);cursor:pointer}.create-footer{position:sticky;bottom:0;padding:12px 0 max(12px,env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent,var(--paper) 30%);display:flex;gap:8px}.describe-step{display:flex;flex-direction:column;gap:14px;width:100%;margin:0 auto;flex:1}.describe-step h1,.describe-inspire-label{margin:0;font-family:var(--font-display);font-weight:700;font-size:22px;line-height:1.15;color:var(--ink)}.describe-textarea-wrap{position:relative;flex:1;display:flex}.describe-textarea-wrap .describe-textarea{flex:1;min-height:200px}.describe-mic{position:absolute;right:10px;bottom:12px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;color:var(--ink-soft);cursor:pointer;transition:color 80ms ease,transform 80ms ease}.describe-mic:hover,.describe-mic:focus-visible{color:var(--ink)}.describe-mic:active{transform:scale(.92)}.describe-inspire-wrap{display:flex;flex-direction:column;gap:8px;margin-top:4px}.describe-textarea-inspire{min-height:70px}.wizard-chrome{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:4px 0}.wizard-back{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;color:var(--ink-soft);text-decoration:none;flex:0 0 auto}.wizard-back:hover,.wizard-back:focus-visible{color:var(--ink);background:var(--paper-2)}.wizard-chrome-spacer{width:40px;height:40px;flex:0 0 auto}.wizard-rail{list-style:none;margin:0;padding:0;display:flex;align-items:center;justify-content:center;gap:10px;flex:1}.wizard-pill{display:flex}.wizard-pill-link,.wizard-pill-static{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--pencil);opacity:.45;transition:background-color .12s ease,opacity .12s ease,transform .12s ease}.wizard-pill[data-state=current] .wizard-pill-link,.wizard-pill[data-state=current] .wizard-pill-static{background:var(--hl-pink);opacity:1;transform:scale(1.25)}.wizard-pill[data-state=past] .wizard-pill-link{background:var(--ink);opacity:.65}.wizard-pill[data-state=past] .wizard-pill-link:hover,.wizard-pill[data-state=past] .wizard-pill-link:focus-visible{opacity:1}.wizard-pill[data-state=future] .wizard-pill-static{opacity:.3}.create-shell{max-width:520px;margin:0 auto;padding:14px 16px 0;padding-top:max(14px,env(safe-area-inset-top));display:flex;flex-direction:column;min-height:100%}.create-progress{display:flex;gap:3px;margin-bottom:12px}.create-progress span{flex:1;height:4px;border-radius:2px;background:var(--pencil)}.create-progress span[data-on=true]{background:var(--hl-pink)}.create-loading{display:flex;flex-direction:column;align-items:center;gap:16px;padding:40px 20px;text-align:center;font-family:var(--font-hand);font-size:20px;color:var(--ink-soft)}.create-spinner{font-size:40px;animation:createPulse 1.2s ease-in-out infinite}@keyframes createPulse{0%,to{transform:scale(1) rotate(-2deg)}50%{transform:scale(1.15) rotate(2deg)}}@media(prefers-reduced-motion:reduce){.create-spinner{animation:none}}.create-error{display:flex;flex-direction:column;gap:12px;text-align:center;padding:32px 20px}.create-error p{color:var(--hl-pink);font-family:var(--font-hand)}.suggest-card-shell{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%}.suggest-card{position:relative;width:100%;max-width:360px;aspect-ratio:5 / 3;display:flex;align-items:center;justify-content:center;padding:36px 22px 20px;background:var(--paper);border:2.5px solid var(--ink);border-radius:18px 22px 16px 24px/20px 16px 24px 18px;box-shadow:3px 4px #0000001a;cursor:grab;user-select:none;touch-action:pan-y}.suggest-card:active{cursor:grabbing}.suggest-card-peek{position:absolute;inset:0;pointer-events:none}.suggest-card-peek[data-peek-depth="1"]{transform:translateY(8px) rotate(-1.5deg) scale(.96);filter:brightness(.97);z-index:0}.suggest-card-peek[data-peek-depth="2"]{transform:translateY(16px) rotate(2deg) scale(.92);filter:brightness(.94);z-index:-1}.suggest-card-skeleton{background:repeating-linear-gradient(-45deg,var(--paper),var(--paper) 8px,var(--paper-2) 8px,var(--paper-2) 16px);cursor:default}.suggest-card-text{margin:0;text-align:center;font-family:var(--font-display);font-weight:700;font-size:24px;line-height:1.15;color:var(--ink);overflow-wrap:anywhere}.suggest-card-actions{display:flex;gap:28px;align-items:center;justify-content:center}.suggest-card-btn{width:52px;height:52px;border-radius:50%;border:2.5px solid var(--ink);background:var(--paper);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform 80ms ease,background 80ms ease;box-shadow:2px 2px #0000001f}.suggest-card-btn:active{transform:scale(.94)}.suggest-card-btn-reject{background:color-mix(in srgb,var(--hl-pink) 70%,var(--paper));color:var(--ink)}.suggest-card-btn-reject:hover,.suggest-card-btn-reject:focus-visible{background:var(--hl-pink)}.suggest-card-btn-accept{background:color-mix(in srgb,var(--hl-green) 70%,var(--paper));color:var(--ink)}.suggest-card-btn-accept:hover,.suggest-card-btn-accept:focus-visible{background:var(--hl-green)}.suggest-card-btn-ghost{background:var(--paper-2);cursor:default;box-shadow:none;border-style:dashed;opacity:.6}.suggest-card-meta{position:absolute;top:10px;left:14px;right:14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.suggest-card-meta-author{display:inline-flex;align-items:center;gap:6px;padding:4px 10px 5px;background:var(--paper);border:1.5px solid var(--ink);border-radius:999px;font-family:var(--font-hand);font-size:13px;color:var(--ink);max-width:60%;overflow:hidden}.suggest-card-meta-author[data-color=pink]{background:color-mix(in srgb,var(--hl-pink) 55%,var(--paper))}.suggest-card-meta-author[data-color=yellow]{background:color-mix(in srgb,var(--hl-yellow) 55%,var(--paper))}.suggest-card-meta-author[data-color=blue]{background:color-mix(in srgb,var(--hl-blue) 55%,var(--paper))}.suggest-card-meta-author[data-color=green]{background:color-mix(in srgb,var(--hl-green) 55%,var(--paper))}.suggest-card-meta-emoji{font-size:14px;line-height:1}.suggest-card-meta-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggest-card-meta-popularity{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:var(--paper);border:1.5px solid var(--ink);border-radius:999px;font-family:var(--font-display);font-weight:700;font-size:13px;color:var(--ink)}.suggest-stack{display:flex;flex-direction:column;align-items:center;gap:10px;padding:0}.suggest-stack-status{font-family:var(--font-hand);color:var(--ink-soft);text-align:center;margin:8px 0}.suggest-stack-error,.suggest-stack-empty{display:flex;flex-direction:column;gap:8px;align-items:center}.suggest-stack-refresh{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:2px solid var(--ink);border-radius:999px;background:var(--paper);font-family:var(--font-display);font-weight:700;font-size:14px;cursor:pointer}.suggest-stack-deck{position:relative;width:100%;max-width:360px;height:216px}.suggest-stack-actions{display:flex;gap:28px;align-items:center;justify-content:center}.suggest-stack-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.review-stack{display:flex;flex-direction:column;align-items:center;gap:12px;padding:4px 0 8px}.review-stack-head{display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center}.review-stack-title{margin:0;font-family:var(--font-display);font-weight:700;font-size:18px;color:var(--ink)}.review-stack-hint{margin:0;font-family:var(--font-hand);font-size:14px;color:var(--ink-soft)}.review-stack-deck{position:relative;width:100%;max-width:360px;padding-bottom:8px}.add-tile-modal-backdrop{position:fixed;inset:0;z-index:70;background:#00000073;display:flex;align-items:center;justify-content:center;padding:24px}.add-tile-modal{position:relative;width:100%;max-width:380px;background:var(--paper);border:2px solid var(--ink);border-radius:18px 22px 16px/20px 16px 22px 18px;padding:22px 20px;display:flex;flex-direction:column;gap:14px;box-shadow:4px 5px #0000001f}.add-tile-modal-close{position:absolute;top:8px;right:8px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:transparent;color:var(--ink-soft);cursor:pointer}.add-tile-modal-close:hover,.add-tile-modal-close:focus-visible{color:var(--ink);background:var(--paper-2)}.add-tile-modal-title{font-family:var(--font-display);font-weight:700;font-size:22px;margin:0;text-align:center}.add-tile-modal-input{width:100%;text-align:center}.add-tile-modal-counter{margin:4px 0 0;font-family:var(--font-hand);font-size:12px;color:var(--ink-soft);text-align:right}.add-tile-modal-counter[data-cap=true]{color:var(--hl-pink);font-weight:700}.add-tile-modal-err{margin:0;font-family:var(--font-hand);font-size:14px;color:var(--hl-pink);text-align:center}.add-tile-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border:2.5px solid var(--ink);border-radius:999px;background:var(--paper);cursor:pointer;font-family:var(--font-display);font-weight:700;font-size:16px;color:var(--ink);align-self:center;box-shadow:2px 3px #0000001a;transition:transform 80ms ease}.add-tile-button:active{transform:scale(.96)}.add-tile-button:hover,.add-tile-button:focus-visible{background:color-mix(in srgb,var(--hl-pink) 30%,var(--paper))}.accepted-counter{display:flex;flex-direction:column;align-items:center;gap:6px;padding:0}.accepted-counter-empty{margin:0;font-family:var(--font-hand);font-size:13px;color:var(--ink-soft);text-align:center}.accepted-counter-toggle{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:transparent;border:0;font-family:var(--font-hand);font-size:13px;color:var(--ink-soft);cursor:pointer;border-radius:6px}.accepted-counter-toggle:hover,.accepted-counter-toggle:focus-visible{color:var(--ink);background:var(--paper-2)}.accepted-counter-list{margin:4px 0 0;padding:8px 12px;list-style:none;width:100%;max-width:360px;background:var(--paper);border:1.5px solid var(--ink);border-radius:12px 14px 12px 16px/14px 12px 16px;display:flex;flex-direction:column;gap:2px;max-height:220px;overflow-y:auto}.accepted-counter-row{display:flex;align-items:baseline;gap:8px;padding:4px 2px;font-family:var(--font-hand);font-size:14px;color:var(--ink);border-bottom:1px dashed color-mix(in srgb,var(--ink) 18%,transparent)}.accepted-counter-row:last-child{border-bottom:0}.accepted-counter-row-num{flex:0 0 auto;width:22px;text-align:right;color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:12px}.accepted-counter-row-text{flex:1 1 auto;overflow-wrap:anywhere}.lock-and-deal{display:flex;flex-direction:column;align-items:stretch;gap:8px;width:100%}.lock-and-deal-hint{margin:0;text-align:center;font-family:var(--font-hand);font-size:14px;color:var(--ink-soft)}.lock-and-deal-err{margin:0;text-align:center;font-family:var(--font-hand);font-size:14px;color:var(--hl-pink)}.sheet-backdrop{position:fixed;inset:0;z-index:var(--sheet-z);background:var(--sheet-backdrop);display:flex;align-items:flex-end;justify-content:center;opacity:0;animation:sheet-backdrop-in var(--transition-sheet-duration) var(--transition-sheet-easing) forwards}@keyframes sheet-backdrop-in{to{opacity:1}}.sheet-backdrop[data-closing=true]{animation:sheet-backdrop-out var(--transition-sheet-duration) var(--transition-sheet-easing) forwards}@keyframes sheet-backdrop-out{0%{opacity:1}to{opacity:0}}.sheet-panel{width:100%;max-width:520px;max-height:85vh;background:var(--paper);border-radius:var(--sheet-radius) var(--sheet-radius) 0 0;padding:8px 0 0;display:flex;flex-direction:column;box-shadow:0 -8px 30px #0000002e;transform:translateY(100%);animation:sheet-slide-in var(--transition-sheet-duration) var(--transition-sheet-easing) forwards;will-change:transform;touch-action:none}@keyframes sheet-slide-in{to{transform:translateY(0)}}.sheet-backdrop[data-closing=true] .sheet-panel{animation:sheet-slide-out var(--transition-sheet-duration) var(--transition-sheet-easing) forwards}@keyframes sheet-slide-out{0%{transform:translateY(0)}to{transform:translateY(100%)}}.sheet-handle{align-self:center;width:var(--sheet-handle-width);height:var(--sheet-handle-height);border-radius:calc(var(--sheet-handle-height) / 2);background:var(--pencil);margin-bottom:8px;flex-shrink:0}.sheet-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 20px 8px;flex-shrink:0}.sheet-title{margin:0;font-size:var(--text-lg);font-weight:700}.sheet-close{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;flex-shrink:0}.sheet-close:hover,.sheet-close:focus-visible{background:var(--paper-2)}.sheet-body{flex:1;overflow-y:auto;overscroll-behavior:auto;padding:0 20px max(20px,env(safe-area-inset-bottom))}@media(prefers-reduced-motion:reduce){.sheet-backdrop,.sheet-panel,.sheet-backdrop[data-closing=true],.sheet-backdrop[data-closing=true] .sheet-panel{animation:none;opacity:1;transform:translateY(0)}}.settings-sheet-tabs{display:flex;gap:6px;padding:0 14px}.settings-sheet-tabs button{flex:1;padding:6px 4px;border:1.5px solid var(--ink);border-radius:10px;background:var(--paper);font-family:var(--font-display);font-size:var(--text-sm);cursor:pointer}.settings-sheet-tabs button[data-active=true]{background:var(--hl-pink);transform:rotate(-.6deg);border-width:2px}.settings-sheet-pager{flex:1;display:grid;grid-auto-flow:column;grid-auto-columns:100%;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none}.settings-sheet-pager::-webkit-scrollbar{display:none}.settings-sheet-panel{scroll-snap-align:start;overflow-y:auto;padding:4px 18px 8px}.settings-inspiration-field{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.settings-inspiration-label{font-weight:700;font-size:var(--text-sm);color:var(--ink-soft)}.settings-inspiration-textarea{resize:vertical;min-height:60px}.group-stack{display:inline-flex;align-items:center;align-self:center;padding:4px 0}.group-stack-avatar{display:inline-flex;margin-left:-10px}.group-stack-avatar:first-child{margin-left:0}.group-stack-avatar .sk-av{border-color:var(--paper);border-width:3px;box-shadow:0 0 0 2px var(--ink)}.group-stack-overflow{display:inline-flex;align-items:center;justify-content:center;margin-left:-8px;min-width:36px;height:36px;padding:0 10px;border:2px solid var(--ink);border-radius:999px;background:var(--paper);font-family:var(--font-display);font-weight:700;font-size:13px;color:var(--ink)}.group-stack-empty{align-items:center;justify-content:center;padding:8px 16px;border:2px dashed var(--pencil);border-radius:999px;background:transparent}.group-stack-empty-text{font-family:var(--font-hand);font-size:14px;color:var(--ink-soft);text-align:center}.join-toast{position:fixed;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translate(-50%);z-index:60;display:flex;align-items:center;gap:10px;padding:10px 12px 10px 10px;border:2.5px solid var(--ink);border-radius:18px 24px 16px 22px/20px 16px 22px 18px;background:var(--hl-yellow);box-shadow:var(--shadow-paper);font-family:var(--font-hand);font-size:18px;animation:joinToastIn .22s ease-out}@keyframes joinToastIn{0%{transform:translate(-50%,16px);opacity:0}to{transform:translate(-50%);opacity:1}}@media(prefers-reduced-motion:reduce){.join-toast{animation:none}}.join-toast-text strong{font-family:var(--font-display);font-weight:700}.join-toast-close{width:28px;height:28px;border:2px solid var(--ink);border-radius:50%;background:var(--paper);font-size:16px;line-height:1;cursor:pointer}.invite-sheet-code-label{margin:4px 0 0;font-family:var(--font-hand);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-soft)}.invite-sheet-code{margin:0;font-family:var(--font-mono);font-size:32px;letter-spacing:.18em;color:var(--ink)}.invite-sheet-link{font-family:var(--font-mono);font-size:var(--text-sm);padding:10px 12px;background:var(--paper-2);border:1.5px solid var(--ink);border-radius:10px 12px 10px 14px/12px 10px 14px 12px;color:var(--ink-soft);word-break:break-all}.wizard-cta-bar{position:sticky;bottom:0;margin-top:auto;padding:12px 0 max(12px,env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent,var(--paper) 30%);display:flex;flex-direction:column;gap:8px}.pregame-shell{max-width:520px;margin:0 auto;padding:12px 16px 0;padding-top:max(12px,env(safe-area-inset-top));display:flex;flex-direction:column;gap:10px;min-height:100%}.pregame-topbar{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-height:36px}.pregame-actions{display:flex;gap:6px}.pregame-action-btn{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:transparent;color:var(--ink);cursor:pointer;text-decoration:none}.pregame-action-btn:hover,.pregame-action-btn:focus-visible{background:var(--paper-2)}.pregame-hero{display:flex;flex-direction:row;align-items:center;gap:14px;text-align:left;padding:4px 0 8px}.pregame-hero-emoji{font-size:56px;line-height:1;display:inline-block;transform:rotate(-4deg);flex:0 0 auto}.pregame-hero-text{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0}.pregame-hero-title{font-family:var(--font-display);font-weight:700;font-size:22px;line-height:1.15;margin:0;overflow-wrap:anywhere}.pregame-hero-date{margin:0;font-family:var(--font-hand);font-size:14px;color:var(--ink-soft);line-height:1.2}.pregame-shell[data-mode=wizard] .pregame-hero{flex-direction:column;align-items:center;text-align:center;gap:10px}.pregame-shell[data-mode=wizard] .pregame-hero-emoji{font-size:56px}.pregame-shell[data-mode=wizard] .pregame-hero-title{font-size:24px;text-align:center}.lobby-cards{display:flex;flex-direction:column;gap:10px;margin-top:4px}.lobby-card{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--paper);border:2.5px solid var(--ink);border-radius:16px 22px 14px 24px/18px 14px 22px 16px;box-shadow:3px 4px #00000014;color:var(--ink);text-decoration:none;font:inherit;text-align:left;cursor:pointer;transition:transform 80ms ease,background 80ms ease,box-shadow 80ms ease;width:100%}.lobby-card:hover,.lobby-card:focus-visible{background:var(--paper-2)}.lobby-card:active{transform:translate(1px,1px);box-shadow:2px 2px #00000014}.lobby-card:disabled{cursor:not-allowed;opacity:.55;transform:none;box-shadow:3px 4px #00000014}.lobby-card-primary{background:var(--hl-green)}.lobby-card-primary:hover:not(:disabled),.lobby-card-primary:focus-visible:not(:disabled){background:color-mix(in srgb,var(--hl-green) 80%,var(--ink) 4%)}.lobby-card-primary:disabled{background:var(--paper-2)}.lobby-card-info{cursor:default;background:var(--paper-2)}.lobby-card-info:hover{background:var(--paper-2)}.lobby-card-icon{flex:0 0 auto;width:40px;height:40px;border-radius:12px;background:var(--paper);border:2px solid var(--ink);display:inline-flex;align-items:center;justify-content:center;color:var(--ink)}.lobby-card-primary:not(:disabled) .lobby-card-icon{background:var(--paper)}.lobby-card-body{display:flex;flex-direction:column;gap:2px;flex:1 1 auto;min-width:0}.lobby-card-title{font-family:var(--font-display);font-weight:700;font-size:17px;line-height:1.15;color:var(--ink)}.lobby-card-sub{font-family:var(--font-hand);font-size:13px;color:var(--ink-soft);line-height:1.2}.lobby-card-live{display:inline-flex;align-items:center;gap:6px}.lobby-card-chevron{flex:0 0 auto;color:var(--ink-fade)}.pregame-dead{padding:14px;text-align:center;color:var(--ink-soft)}.pregame-live-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#4caf50;margin-right:6px;vertical-align:middle;box-shadow:0 0 0 3px #4caf502e}.pregame-shell[data-mode=wizard]{min-height:100%}.code-input{position:relative;display:block;padding:8px 0;cursor:text}.code-input-hidden{position:absolute;inset:0;width:100%;height:100%;opacity:0;border:0;padding:0;font-size:16px;background:transparent;color:transparent;caret-color:transparent}.code-input-hidden:focus-visible{outline:none}.code-input-boxes{display:flex;justify-content:center;gap:6px;pointer-events:none}.code-input-box{width:40px;height:52px;border:2.5px solid var(--ink);border-radius:8px 11px 7px 10px/10px 8px 11px 7px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:28px;font-weight:700;background:var(--paper);color:var(--ink);transition:background 80ms ease}.code-input-box[data-filled=true]{background:var(--hl-yellow)}.code-input:focus-within .code-input-box:not([data-filled=true]):first-of-type,.code-input:focus-within .code-input-box[data-filled=true]+.code-input-box:not([data-filled=true]){outline:2.5px dashed var(--hl-pink);outline-offset:-4px}.bingo-sketch{display:block;margin:0 auto}.bingo-sketch-cell{fill:var(--paper);stroke:var(--ink);stroke-width:1.5}.bingo-sketch-cell[data-hi=true]{fill:var(--hl-yellow);stroke-width:2.5}.bingo-sketch[data-pulsing=true] .bingo-sketch-cell[data-hi=true]{animation:bingo-sketch-pulse 1.4s ease-in-out infinite;transform-origin:center;transform-box:fill-box}@keyframes bingo-sketch-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@media(prefers-reduced-motion:reduce){.bingo-sketch[data-pulsing=true] .bingo-sketch-cell[data-hi=true]{animation:none}}.join-page{display:flex;flex-direction:column;gap:12px;padding-top:8px}.join-topbar{display:flex;align-items:center;justify-content:space-between;width:100%}.join-back{font-family:var(--font-hand);font-size:16px;color:var(--ink-soft);text-decoration:none;padding:4px 8px}.join-help{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--ink);border-radius:50%;background:var(--paper);font-size:16px;text-decoration:none}.join-hero-title{font-size:32px;line-height:1;text-align:center;margin:4px 0 0;transform:rotate(-1deg)}.join-hero-sub{font-family:var(--font-hand);color:var(--ink-soft);font-size:16px;text-align:center;margin:0}.join-preview{min-height:56px}.join-preview .hint{text-align:center;color:var(--ink-soft);font-family:var(--font-hand);margin:8px 0}.join-card{display:flex;align-items:center;gap:10px;padding:10px 12px;border:2.5px solid var(--ink);border-radius:14px 18px 12px 20px/16px 12px 20px 14px;background:var(--hl-yellow)}.join-card[data-tone=yellow]{background:var(--hl-yellow)}.join-card-emoji{font-size:28px;line-height:1}.join-card strong{display:block;font-family:var(--font-display);font-size:20px}.join-card em{display:block;font-style:normal;color:var(--ink-soft);font-size:15px}.join-missing,.join-err{text-align:center;font-family:var(--font-display);color:var(--hl-pink);margin:0}.paste-link{align-self:center;font-size:14px;padding:6px 12px}.join-bailout{align-self:center;font-family:var(--font-hand);font-size:15px;color:var(--ink-soft);text-decoration:none;padding:4px 10px;margin-top:4px}.join-bailout:hover,.join-bailout:focus-visible{color:var(--ink)}.mini-leaderboard{display:flex;align-items:stretch;gap:10px;padding:6px 8px;border:1.5px solid var(--ink);border-radius:12px 16px 10px 18px/14px 12px 16px 10px;background:var(--paper);font-family:var(--font-display)}.mini-leaderboard-list{flex:1;display:flex;flex-direction:column;gap:2px;list-style:none;margin:0;padding:0;min-width:0}.mini-leaderboard-list li{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;font-size:13px;line-height:1.2;color:var(--ink)}.mini-leaderboard-list li[data-you]{color:var(--ink);font-weight:700}.mini-leaderboard-list li[data-gap]{border-top:1px dashed var(--ink-fade);padding-top:3px;margin-top:1px}.mini-leaderboard-list .rank{color:var(--ink-soft);font-weight:700}.mini-leaderboard-list .name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-leaderboard-list .pts{color:var(--hl-pink);font-weight:700}.mini-leaderboard-timer{flex:0 0 auto;align-self:center;font-family:var(--font-display);font-weight:700;font-size:14px;color:var(--ink);padding-left:10px;border-left:1.5px dashed var(--ink-fade)}.bingo-ticker{height:22px;overflow:hidden;border:2px dashed var(--pencil);border-radius:10px;padding:0 8px;display:flex;align-items:center;font-family:var(--font-hand);font-size:13px}.bingo-ticker[data-empty=true]{opacity:.3}.first-bingo{position:sticky;top:env(safe-area-inset-top);z-index:20;margin:0 -4px;padding:8px 10px;background:var(--hl-yellow);border:2.5px solid var(--ink);border-radius:10px 14px 8px 16px/12px 10px 14px 8px;display:flex;align-items:center;gap:8px;font-family:var(--font-display);box-shadow:2px 3px #0000001f}.first-bingo .emoji{font-size:22px}.first-bingo .ignore{margin-left:auto;font-size:12px;color:var(--ink-soft);background:transparent;border:none;cursor:pointer}.reconnect-pill{position:fixed;top:calc(env(safe-area-inset-top) + 8px);left:50%;transform:translate(-50%);z-index:30;background:var(--ink);color:var(--paper);font-family:var(--font-hand);font-size:12px;padding:4px 10px;border-radius:999px}.qs-fab{position:fixed;right:14px;bottom:calc(20px + env(safe-area-inset-bottom));z-index:15;width:60px;height:60px;border-radius:50%;border:2.5px solid var(--ink);background:var(--hl-pink);display:flex;align-items:center;justify-content:center;font-size:28px;cursor:pointer;box-shadow:2px 3px #0003}.qs-fab:active{transform:scale(.96)}.live-page{display:flex;flex-direction:column;gap:10px;padding:8px 10px 80px;padding-top:max(8px,env(safe-area-inset-top));max-width:520px;margin:0 auto;min-height:100%;position:relative}.live-page h1{font-size:20px;display:flex;align-items:center;justify-content:space-between}.live-page .you{font-family:var(--font-hand);font-size:14px;color:var(--ink-soft)}.live-page .loading{text-align:center;font-family:var(--font-hand);font-size:18px;color:var(--ink-soft);padding:40px 20px}.recap-player{display:flex;flex-direction:column;gap:12px}.recap-stage{aspect-ratio:9 / 16;max-height:72dvh;background:var(--paper-2, var(--paper));border:2.5px solid var(--ink);border-radius:var(--radius-wobble);overflow:hidden;position:relative}.recap-frame{position:absolute;inset:0;display:grid;place-items:center}.recap-moment{width:100%;height:100%;display:grid;grid-template-rows:1fr auto}.recap-moment img,.recap-moment video{width:100%;height:100%;object-fit:cover}.recap-caption{background:#fbf8f1eb;padding:10px 14px;font-family:var(--font-display);display:flex;gap:8px;align-items:center;flex-wrap:wrap}.recap-caption .player{font-weight:700}.recap-caption .tile{color:var(--ink-soft)}.recap-caption .bingo{margin-left:auto;color:var(--hl-pink);font-weight:700}.recap-controls{display:flex;align-items:center;gap:12px;justify-content:center}.recap-controls button{font:inherit;font-size:20px;border:2px solid var(--ink);background:var(--paper);border-radius:10px;padding:4px 12px;cursor:pointer}.recap-controls button:disabled{opacity:.3;cursor:default}.recap-progress{font-family:var(--font-mono, monospace);font-size:12px;color:var(--ink-soft)}.recap-intro,.recap-outro{padding:18px 22px;text-align:center;color:var(--ink)}.recap-intro h1,.recap-outro h2{font-family:var(--font-display);margin:0 0 6px}.recap-intro-meta{color:var(--ink-soft);margin:0 0 14px}.recap-intro-scores{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.recap-intro-scores li{display:flex;align-items:center;gap:8px;font-family:var(--font-hand, var(--font-display));font-size:18px}.podium{display:flex;justify-content:center;align-items:flex-end;gap:12px;margin:16px 0;padding:0;list-style:none}.podium li{display:flex;flex-direction:column;align-items:center;gap:4px;padding:8px 12px;border:2px solid var(--ink);border-radius:10px;background:var(--paper)}.podium li[data-rank="1"]{background:var(--hl-yellow);padding-top:18px}.podium li[data-rank="2"]{background:var(--hl-blue)}.podium li[data-rank="3"]{background:var(--hl-pink)}.podium .pts{font-family:var(--font-mono, monospace);font-size:14px}.recap-outro-actions{display:flex;flex-direction:column;gap:8px}.superlatives-strip{margin:16px 0;padding:0 14px}.superlatives-heading{font-family:var(--font-display);font-weight:700;font-size:18px;color:var(--ink);margin:0 0 8px}.superlatives-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.superlative-card{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1.5px solid var(--ink);border-radius:12px;background:var(--paper)}.superlative-badge{font-size:28px;flex:0 0 auto}.superlative-body{display:flex;flex-direction:column;gap:2px;min-width:0}.superlative-title{margin:0;font-family:var(--font-display);font-weight:700;font-size:14px;color:var(--ink)}.superlative-winner{margin:0;font-size:13px;color:var(--ink)}.superlative-sub{margin:0;font-size:11px;color:var(--ink-soft)}.empty{padding:40px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}.empty-glyph{font-size:48px;opacity:.85}.empty h3{font-family:var(--font-display);font-size:22px;margin:0}.empty p{color:var(--ink-soft);margin:0;max-width:260px}.stats-card-overlay{position:fixed;inset:0;background:#1a1a1aa6;display:grid;place-items:center;padding:20px;z-index:50}.stats-card-panel{background:var(--paper);border:2.5px solid var(--ink);border-radius:var(--radius-wobble);padding:14px;display:flex;flex-direction:column;gap:10px;max-width:420px;width:100%}.stats-card-canvas{width:100%;height:auto;border:2px solid var(--ink);border-radius:10px;background:var(--paper)}.stats-card-actions{display:flex;gap:8px;justify-content:flex-end}.not-found{display:flex;flex-direction:column;align-items:center;text-align:center;gap:18px;padding-top:48px}.not-found-mark{width:120px;height:120px;border:3px solid var(--ink);border-radius:50% 48% 52% 50%/52% 50% 50% 48%;display:flex;align-items:center;justify-content:center;background:var(--hl-pink);transform:rotate(-4deg)}.not-found-mark span{font-family:var(--font-display);font-size:72px;font-weight:700;color:var(--ink);transform:rotate(4deg)}.not-found h1{font-family:var(--font-display);font-size:28px;line-height:1.15;max-width:320px}.not-found p{font-family:var(--font-hand);color:var(--ink-soft);max-width:320px}.not-found-cta{width:100%;max-width:320px}.not-found-back{font-family:var(--font-hand);color:var(--ink-soft);text-decoration:none}.accepted-squares{display:flex;flex-direction:column;align-items:stretch;gap:8px}.accepted-squares-empty{margin:0;font-family:var(--font-hand);font-size:13px;color:var(--ink-soft);text-align:center}.accepted-squares-toggle{align-self:center;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:transparent;border:0;font-family:var(--font-hand);font-size:13px;color:var(--ink-soft);cursor:pointer;border-radius:6px}.accepted-squares-toggle:hover,.accepted-squares-toggle:focus-visible{color:var(--ink);background:var(--paper-2)}.accepted-squares-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.accepted-square{aspect-ratio:1;display:flex;align-items:center;justify-content:center;text-align:center;padding:4px;background:var(--paper);border:1.5px solid var(--ink);border-radius:8px 10px 7px 11px/9px 8px 10px 7px;font:inherit;cursor:pointer;transition:transform 80ms ease,background 80ms ease;overflow:hidden}.accepted-square:hover,.accepted-square:focus-visible{background:var(--paper-2)}.accepted-square:active{transform:scale(.97)}.accepted-square-text{font-family:var(--font-hand);font-size:11px;line-height:1.15;color:var(--ink);overflow-wrap:anywhere}div.accepted-square{cursor:default}div.accepted-square:hover,div.accepted-square:focus-visible{background:var(--paper)}.tile-edit-input{resize:vertical;min-height:60px}.tile-edit-counter{margin:0;font-family:var(--font-hand);font-size:var(--text-xs);color:var(--ink-soft);text-align:right}.tile-edit-counter[data-cap=true]{color:var(--hl-pink);font-weight:700}.tile-edit-err{margin:0;font-family:var(--font-hand);font-size:var(--text-sm);color:var(--hl-pink)}.tile-edit-actions,.tile-edit-confirm-actions{display:flex;align-items:center;gap:8px;justify-content:space-between}.tile-edit-delete{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:2px solid var(--ink);border-radius:12px;background:var(--paper);color:var(--ink);font-family:var(--font-display);font-weight:700;font-size:var(--text-sm);cursor:pointer}.tile-edit-delete:hover,.tile-edit-delete:focus-visible{background:color-mix(in srgb,var(--hl-pink) 30%,var(--paper))}.tile-edit-delete-confirm{background:var(--hl-pink)}.tile-edit-confirm{display:flex;flex-direction:column;gap:8px}.tile-edit-confirm-text{margin:0;font-family:var(--font-hand);font-size:var(--text-sm);color:var(--ink)}.add-tiles-shell{max-width:520px;margin:0 auto;padding:8px 16px 24px;padding-top:max(8px,env(safe-area-inset-top));display:flex;flex-direction:column;gap:8px;min-height:100%}.add-tiles-topbar{display:flex;align-items:center;justify-content:space-between;min-height:32px;margin-bottom:0}.add-tiles-back-btn{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:transparent;color:var(--ink);text-decoration:none}.add-tiles-back-btn:hover,.add-tiles-back-btn:focus-visible{background:var(--paper-2)}.add-tiles-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0}.add-tiles-title{margin:0;font-family:var(--font-display);font-weight:700;font-size:22px;line-height:1.1;color:var(--ink)}.add-tiles-pill{flex:0 0 auto;padding:4px 12px;border:1.5px solid var(--ink);border-radius:999px;background:var(--paper);font-family:var(--font-display);font-weight:700;font-size:13px;color:var(--ink);white-space:nowrap}.add-tiles-dead{text-align:center;color:var(--ink-soft);padding:24px 12px}.add-tiles-back{align-self:center;font-family:var(--font-hand);color:var(--ink-soft);text-decoration:underline}.schedule-shell{display:flex;flex-direction:column;min-height:100%;padding:max(24px,env(safe-area-inset-top)) 20px max(48px,env(safe-area-inset-bottom));max-width:520px;margin:0 auto;gap:24px}.schedule-header{text-align:center}.schedule-subtitle{margin:4px 0 0;color:var(--ink-soft);font-size:var(--text-sm)}.schedule-section{display:flex;flex-direction:column;gap:8px}.schedule-section-label{font-weight:700;font-size:var(--text-base);color:var(--ink)}.schedule-duration-row{display:flex;gap:8px;flex-wrap:wrap}.schedule-duration-btn{flex:1;min-width:60px;padding:10px 8px;border:2px solid var(--ink);border-radius:var(--radius-wobble-tight);background:var(--paper);font-weight:600;font-size:var(--text-sm);text-align:center;cursor:pointer}.schedule-duration-btn[data-active=true]{background:var(--hl-pink);border-width:2.5px}.schedule-custom-row{display:flex;gap:8px;align-items:center}.schedule-custom-input{width:70px;text-align:center}.schedule-custom-label{font-size:var(--text-sm);color:var(--ink-soft)}.schedule-start-input{width:100%}.schedule-helper{margin:0;font-size:var(--text-sm);color:var(--ink-fade)}.schedule-cta{margin-top:auto}.explainer{display:flex;flex-direction:column;gap:18px;padding:24px 20px 20px;min-height:100dvh}.explainer-stage{flex:1;display:grid;place-items:center;min-height:320px}.explainer-slide{width:100%;max-width:380px}.explainer-scene{display:flex;flex-direction:column;align-items:center;gap:14px}.explainer-scene svg{width:100%;max-width:320px;height:auto}.explainer-caption{font-family:var(--font-display);font-size:20px;text-align:center;margin:0;color:var(--ink);line-height:1.25}.explainer-chrome{display:flex;flex-direction:column;gap:14px}.explainer-chrome-top{display:flex;align-items:center;justify-content:space-between}.explainer-link{background:none;border:0;font:inherit;color:var(--ink-soft);padding:6px 10px;cursor:pointer}.explainer-link[disabled]{opacity:.3;cursor:default}.explainer-dots{display:flex;gap:8px;align-items:center}.explainer-dots span{width:8px;height:8px;border-radius:50%;background:var(--pencil);opacity:.45;transition:background-color .12s ease,opacity .12s ease}.explainer-dots span[data-on=true]{background:var(--hl-pink);opacity:1}.explainer-skip{font-family:var(--font-display);font-size:14px;letter-spacing:.4px}.profile-shell{padding-top:max(18px,env(safe-area-inset-top));gap:18px;align-items:center}.profile-back{position:absolute;top:max(14px,env(safe-area-inset-top));left:14px;width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:var(--ink-soft);cursor:pointer;padding:0;border-radius:8px}.profile-back:hover,.profile-back:focus-visible{color:var(--ink);background:var(--paper-2)}.profile-shell>*{width:100%;max-width:360px}.profile-head{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.profile-name-input{width:100%;text-align:center;font-family:var(--font-display);font-weight:700;font-size:26px}.profile-look{display:flex;flex-direction:column;align-items:stretch;gap:12px}.profile-emoji{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}.profile-emoji button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:2px solid var(--ink);border-radius:10px 14px 8px 16px/12px 10px 14px 8px;background:var(--paper);font-size:22px;transition:transform 80ms ease;padding:0}.profile-emoji button[data-picked=true]{background:var(--hl-yellow);transform:rotate(-1deg)}.profile-emoji button:focus,.profile-emoji button:focus-visible{outline:none}.profile-colors{display:flex;gap:12px;justify-content:center}.profile-colors button{width:36px;height:36px;border-radius:50%;border:2px solid var(--ink);background:var(--paper);cursor:pointer;padding:0;outline:none}.profile-colors button[data-color=pink]{background:var(--hl-pink)}.profile-colors button[data-color=yellow]{background:var(--hl-yellow)}.profile-colors button[data-color=blue]{background:var(--hl-blue)}.profile-colors button[data-color=green]{background:var(--hl-green)}.profile-colors button[data-color=purple]{background:var(--hl-purple)}.profile-colors button[data-color=teal]{background:var(--hl-teal)}.profile-colors button[data-color=coral]{background:var(--hl-coral)}.profile-colors button[data-color=sand]{background:var(--hl-sand)}.profile-colors button[data-picked=true]{box-shadow:0 0 0 3px var(--paper),0 0 0 5px var(--ink);transform:scale(1.08)}.profile-stats{font-family:var(--font-hand);font-size:16px;text-align:center;color:var(--ink-soft)}.profile-danger{display:flex;justify-content:stretch;margin-top:6px}.profile-danger .sk-btn{width:100%}.profile-debug{margin-top:10px;display:flex;justify-content:center;gap:6px;font-family:var(--font-mono);font-size:11px;color:var(--ink-fade)}.sk-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--font-hand);font-weight:600;font-size:var(--text-base);padding:12px 18px;border:2px solid var(--ink);background:var(--paper);color:var(--ink);border-radius:14px 18px 12px/16px 12px 18px 14px;min-height:52px;width:auto;transition:transform 80ms ease,background 80ms ease}.sk-btn:active{transform:scale(.98)}.sk-btn:hover:not(:disabled){background:var(--paper-2)}.sk-btn[data-kind=primary]{background:var(--hl-pink)}.sk-btn[data-kind=alt]{background:var(--hl-blue)}.sk-btn[data-kind=yellow]{background:var(--hl-yellow)}.sk-btn[data-kind=danger]{background:transparent;color:#c0392b;border-color:#c0392b}.sk-btn[data-kind=danger]:hover:not(:disabled){background:#c0392b14}.sk-btn[data-block=true]{width:100%}.sk-btn:disabled{opacity:.5;cursor:not-allowed}.sk-btn[data-icon-layout=true]{justify-content:space-between}.sk-btn-label{flex:1;text-align:center}.sk-btn[data-icon-layout=true] .sk-btn-label{text-align:left}.sk-btn-icon{display:inline-flex;flex:0 0 auto;align-items:center}.sk-input{font-family:var(--font-hand);font-size:var(--text-base);background:var(--paper);color:var(--ink);border:2px solid var(--ink);border-radius:14px 18px 12px/16px 12px 18px 14px;padding:12px 14px;width:100%;min-height:52px}.sk-input::placeholder{color:var(--ink-fade)}.sk-input:focus-visible{outline:3px solid var(--hl-yellow);outline-offset:2px}.sk-pill{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-hand);font-size:var(--text-sm);padding:3px 12px 4px;border:2px solid var(--ink);border-radius:14px;background:var(--paper)}.sk-pill[data-tone=y]{background:var(--hl-yellow)}.sk-pill[data-tone=p]{background:var(--hl-pink)}.sk-pill[data-tone=b]{background:var(--hl-blue)}.sk-pill[data-tone=g]{background:var(--hl-green)}.sk-av{width:32px;height:32px;border-radius:50%;border:2px solid var(--ink);background:var(--paper);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-hand);font-size:16px;overflow:hidden;position:relative}.sk-av[data-tone=y]{background:var(--hl-yellow)}.sk-av[data-tone=p]{background:var(--hl-pink)}.sk-av[data-tone=b]{background:var(--hl-blue)}.sk-av[data-tone=g]{background:var(--hl-green)}.sk-av[data-tone=pu]{background:var(--hl-purple)}.sk-av[data-tone=t]{background:var(--hl-teal)}.sk-av[data-tone=co]{background:var(--hl-coral)}.sk-av[data-tone=sa]{background:var(--hl-sand)}.sk-av--image img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}.sk-av--image{background:var(--paper);position:relative}.sk-av--image:before{content:"";position:absolute;inset:-5px;border-radius:inherit;border:3px solid transparent;pointer-events:none;z-index:1}.sk-av--image[data-tone=y]:before{border-color:var(--hl-yellow)}.sk-av--image[data-tone=p]:before{border-color:var(--hl-pink)}.sk-av--image[data-tone=b]:before{border-color:var(--hl-blue)}.sk-av--image[data-tone=g]:before{border-color:var(--hl-green)}.sk-av--image[data-tone=pu]:before{border-color:var(--hl-purple)}.sk-av--image[data-tone=t]:before{border-color:var(--hl-teal)}.sk-av--image[data-tone=co]:before{border-color:var(--hl-coral)}.sk-av--image[data-tone=sa]:before{border-color:var(--hl-sand)}.sk-av--lg{width:96px;height:96px;font-size:48px;border-width:3px;border-radius:50% 48% 52% 50%/50% 52% 48% 50%}.sk-av--md{width:48px;height:48px;font-size:24px;border-width:2.5px}.sk-av--xl{width:144px;height:144px;font-size:72px;border-width:3.5px;border-radius:50% 48% 52% 50%/50% 52% 48% 50%;box-shadow:4px 5px #00000014}.sk-bingo{display:grid;gap:6px}.sk-bingo .cell{aspect-ratio:1;border:1.5px solid var(--ink);border-radius:8px 10px 7px 11px/9px 8px 10px 7px;display:flex;align-items:center;justify-content:center;text-align:center;font-family:var(--font-hand);font-size:13px;line-height:1.1;padding:4px;background:var(--paper);position:relative;overflow:hidden;color:var(--ink-soft)}.sk-bingo .cell[data-marked=true]{background:var(--hl-yellow);color:var(--ink)}.sk-bingo .cell[data-marked=true]:after{content:"";position:absolute;inset:8%;border:2.5px solid var(--ink);border-radius:50%;transform:rotate(-6deg);opacity:.7;pointer-events:none}.sk-bingo .cell[data-free=true]{background:var(--hl-pink);font-weight:700}.sk-bingo .cell[data-highlight=true]{outline:2.5px solid var(--hl-pink);outline-offset:-1px}.sk-bingo .cell{padding:0}.sk-bingo .cell .cell-label{position:relative;z-index:1;padding:4px;display:inline-block}.sk-bingo .cell[data-filled=true] .cell-label{background:#0000008c;color:#fff;font-weight:700;border-radius:4px;padding:2px 6px;font-size:11px}.sk-bingo .cell .cell-thumb{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;pointer-events:none}.sk-bingo .cell[data-filled=true]:after{content:none}.live-topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;height:44px;padding:0 14px;background:var(--paper);border-bottom:1.5px solid var(--ink);padding-top:env(safe-area-inset-top)}.live-topbar-title{margin:0;font-family:var(--font-display);font-weight:700;font-size:15px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1 1 auto;min-width:0}.live-topbar-pill{flex:0 0 auto;margin-left:12px;padding:2px 10px;border-radius:999px;background:var(--hl-pink);color:var(--ink);font-family:var(--font-display);font-size:10px;font-weight:700;letter-spacing:.5px}.live-topbar-end{flex:0 0 auto;margin-left:8px;padding:4px 10px;border-radius:8px;border:1.5px solid #c0392b;background:transparent;color:#c0392b;font-family:var(--font-display);font-weight:700;font-size:11px;letter-spacing:.5px;cursor:pointer}.live-topbar-end:hover:not(:disabled){background:#c0392b14}.live-topbar-end:disabled{opacity:.5;cursor:not-allowed}.live-tabbar{position:fixed;bottom:0;left:0;right:0;z-index:20;height:calc(90px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);max-width:520px;margin:0 auto;background:transparent}.live-tabbar:before{content:"";position:absolute;left:0;right:0;bottom:env(safe-area-inset-bottom);height:64px;background:var(--paper);z-index:1}.live-tabbar-stroke{position:absolute;inset:0;width:100%;height:90px;z-index:3;pointer-events:none}.live-tabbar-cam{position:absolute;left:50%;top:17px;transform:translate(-50%);width:60px;height:60px;border-radius:50%;background:var(--hl-pink);display:flex;align-items:center;justify-content:center;color:var(--ink);text-decoration:none;z-index:2;cursor:pointer}.live-tabbar-cam[data-active=true]{outline:2px solid var(--ink);outline-offset:2px}.live-tabbar-row{position:absolute;bottom:env(safe-area-inset-bottom);left:0;right:0;height:64px;display:flex;align-items:center;justify-content:space-around;padding:0 4px;z-index:4}.live-tabbar-tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-decoration:none;color:var(--ink-fade);font-family:var(--font-display);font-size:10px;font-weight:600;height:100%}.live-tabbar-tab[data-active=true]{color:var(--ink);font-weight:700}.live-tabbar-spacer{visibility:hidden}.live-shell{display:flex;flex-direction:column;height:100%}.live-shell-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.live-shell-body[data-tabbar=shown]{padding-bottom:calc(90px + env(safe-area-inset-bottom))}:root{--paper: #fbf8f1;--paper-2: #f3ede0;--ink: #1a1a1a;--ink-soft: #4a4a4a;--ink-fade: #8a8a8a;--pencil: #b8b2a3;--hl-yellow: #ffe66d;--hl-pink: #ff8a9b;--hl-blue: #7ec4e8;--hl-green: #b8e86d;--hl-purple: #c8a2f5;--hl-teal: #7ce0d3;--hl-coral: #ffa486;--hl-sand: #e8d6a1;--font-hand: system-ui, -apple-system, sans-serif;--font-display: system-ui, -apple-system, sans-serif;--font-mono: ui-monospace, "SF Mono", monospace;--text-xs: 12px;--text-sm: 14px;--text-base: 16px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: 28px;--transition-fade-duration: .2s;--transition-slide-duration: .35s;--transition-sheet-duration: .3s;--transition-slide-easing: cubic-bezier(.4, 0, .2, 1);--transition-sheet-easing: cubic-bezier(.32, .72, 0, 1);--sheet-z: 80;--sheet-z-nested: 81;--sheet-backdrop: rgba(0, 0, 0, .45);--sheet-radius: 16px;--sheet-handle-width: 36px;--sheet-handle-height: 4px;--swipe-dismiss-threshold: .3;--topbar-height: 52px;--tabbar-height: 56px;--radius-wobble: 18px 22px 16px 24px / 20px 16px 22px 18px;--radius-wobble-tight: 10px 14px 8px 16px / 12px 10px 14px 8px;--shadow-paper: 4px 5px 0 rgba(0, 0, 0, .08)}[data-palette=fest]{--hl-pink: #e85d75;--hl-yellow: #ffb347;--hl-blue: #f4d35e;--hl-green: #d4a373}[data-palette=trail]{--hl-pink: #d4a373;--hl-yellow: #e9c46a;--hl-blue: #a3b18a;--hl-green: #6ba368}[data-palette=corp]{--hl-pink: #c8d6e5;--hl-yellow: #fddb92;--hl-blue: #4a6fa5;--hl-green: #9bb4c6}[data-palette=wed]{--hl-pink: #e8b4bc;--hl-yellow: #f4e5c3;--hl-blue: #b8c5d6;--hl-green: #d6c9a8}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[role=button]:focus-visible,[role=tab]:focus-visible,[role=radio]:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--hl-yellow);outline-offset:2px;border-radius:4px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:0s!important;animation-duration:0s!important;animation-iteration-count:1!important}.sk-box,.sk-btn,.sk-input,.name-picker,.landing-card{filter:none!important}}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;overflow:hidden}html{-webkit-tap-highlight-color:transparent}body{margin:0;background-color:var(--paper);color:var(--ink);font-family:var(--font-hand);font-size:var(--text-base);line-height:1.4;-webkit-font-smoothing:antialiased;touch-action:manipulation;overscroll-behavior:none;background-image:radial-gradient(circle at 1px 1px,rgba(26,26,26,.06) 1px,transparent 0),radial-gradient(circle at 3px 5px,rgba(26,26,26,.04) 1px,transparent 0),radial-gradient(circle at 7px 2px,rgba(26,26,26,.03) 1px,transparent 0);background-size:7px 7px,11px 11px,13px 13px}h1{font-family:var(--font-display);font-weight:800;font-size:var(--text-3xl);line-height:1.15;margin:0}h2{font-family:var(--font-display);font-weight:700;font-size:var(--text-2xl);line-height:1.2;margin:0}h3{font-family:var(--font-display);font-weight:700;font-size:var(--text-xl);line-height:1.25;margin:0}h4{font-family:var(--font-display);font-weight:700;font-size:var(--text-lg);line-height:1.3;margin:0}button,nav,[role=button],[role=tab],[role=radio],img,.sk-pill,.sk-av,.sk-bingo .cell{user-select:none;-webkit-user-select:none}p,span,label,input,textarea,select,.cell-label{user-select:text;-webkit-user-select:text}button{font:inherit;cursor:pointer;color:inherit;background:none;border:0;padding:0}input,textarea,select{font:inherit;color:inherit;background:var(--paper);border:2px solid var(--ink);border-radius:var(--radius-wobble-tight);padding:8px 12px}.shell{display:flex;flex-direction:column;min-height:100%;padding:max(24px,env(safe-area-inset-top)) 20px max(48px,env(safe-area-inset-bottom));max-width:520px;margin:0 auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.topbar-home-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;text-decoration:none;flex:0 0 auto}.topbar-home-icon img{width:100%;height:100%;display:block}.native-scroll{overscroll-behavior:auto}@media(max-width:900px)and (orientation:landscape){html,body{overflow:hidden}body:before{content:"rotate to portrait ↑";position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:var(--paper);font-family:var(--font-display);font-size:var(--text-xl);z-index:9999}}.feed{display:flex;flex-direction:column;gap:8px;padding:8px 12px;max-width:560px;margin:0 auto}.moment-card{display:flex;align-items:stretch;gap:10px;padding:8px;border:1.5px solid var(--ink);border-radius:14px 18px 12px/16px 12px 18px 14px;background:var(--paper);overflow:hidden;position:relative;min-height:0}.moment-thumb{flex:0 0 96px;width:96px;height:96px;border-radius:10px;overflow:hidden;background:#000}.moment-thumb img,.moment-thumb video{width:100%;height:100%;object-fit:cover;display:block}.moment-body{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.moment-head{display:flex;align-items:center;gap:8px}.moment-meta{display:flex;flex-direction:column;min-width:0}.moment-name{font-family:var(--font-display);font-weight:700;font-size:14px;line-height:1.1;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.moment-time{font-family:var(--font-hand);font-size:11px;color:var(--ink-soft)}.moment-tile{font-family:var(--font-hand);font-size:13px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reaction-bar{display:flex;gap:4px;flex-wrap:wrap;margin-top:auto}.reaction-bar button{font-family:var(--font-hand);background:transparent;border:1.5px solid var(--ink);border-radius:999px;padding:2px 8px;cursor:pointer;min-height:26px;font-size:12px;line-height:1}.reaction-bar button[aria-pressed=true]{background:var(--hl-yellow)}.bingo-ribbon{position:absolute;top:12px;left:-4px;background:var(--hl-pink);color:var(--ink);font-family:var(--font-display);font-size:14px;padding:2px 12px;border:2px solid var(--ink);transform:rotate(-4deg);box-shadow:2px 2px #00000026;z-index:2}.leaderboard-strip{display:flex;gap:10px;overflow-x:auto;padding:8px 12px;border-bottom:2px dashed var(--ink);scroll-snap-type:x mandatory}.leaderboard-strip .entry{scroll-snap-align:start;display:flex;align-items:center;gap:4px;font-family:var(--font-hand);font-size:14px;flex-shrink:0}.leaderboard-strip .entry[data-bingo=true]{font-weight:700}.wall{columns:2;column-gap:6px;padding:6px}@media(min-width:720px){.wall{columns:3}}.wall .tile{break-inside:avoid;margin-bottom:6px;border:2px solid var(--ink);border-radius:12px;overflow:hidden;background:#000;cursor:pointer;padding:0;display:block;width:100%}.wall .tile img,.wall .tile video{width:100%;display:block}.lightbox{position:fixed;inset:0;background:#000;z-index:80;display:flex;flex-direction:column;scroll-snap-type:y mandatory;overflow-y:auto}.lightbox article{height:100dvh;scroll-snap-align:start;position:relative}.lightbox img,.lightbox video{width:100%;height:100%;object-fit:contain}.lightbox .close{position:absolute;top:16px;right:16px;background:#00000080;color:#fff;border:none;border-radius:999px;width:44px;height:44px;font-size:20px;z-index:90}.reel{position:fixed;inset:0;background:#000;color:#fff;scroll-snap-type:y mandatory;overflow-y:auto}.reel article{position:relative;height:100dvh;scroll-snap-align:start;display:flex;align-items:center;justify-content:center}.reel article img,.reel article video{max-width:100%;max-height:100%;object-fit:contain}.reel .overlay{position:absolute;left:16px;right:16px;bottom:32px;display:flex;flex-direction:column;gap:8px}.reel .tile-label{font-family:var(--font-display);font-size:20px;text-shadow:0 2px 4px rgba(0,0,0,.8)}::view-transition-old(root),::view-transition-new(root){animation-duration:var(--transition-fade-duration);animation-timing-function:ease}::view-transition-old(slide-forward),::view-transition-new(slide-forward){animation-duration:var(--transition-slide-duration);animation-timing-function:var(--transition-slide-easing)}::view-transition-old(slide-forward){animation-name:slide-out-left}::view-transition-new(slide-forward){animation-name:slide-in-right}::view-transition-old(slide-back),::view-transition-new(slide-back){animation-duration:var(--transition-slide-duration);animation-timing-function:var(--transition-slide-easing)}::view-transition-old(slide-back){animation-name:slide-out-right}::view-transition-new(slide-back){animation-name:slide-in-left}@keyframes slide-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slide-out-left{0%{transform:translate(0)}to{transform:translate(-30%);opacity:.5}}@keyframes slide-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes slide-out-right{0%{transform:translate(0)}to{transform:translate(30%);opacity:.5}}::view-transition-old(cell-to-capture),::view-transition-new(cell-to-capture){animation-duration:var(--transition-slide-duration);animation-timing-function:var(--transition-slide-easing);overflow:hidden;border-radius:8px}@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root),::view-transition-old(slide-forward),::view-transition-new(slide-forward),::view-transition-old(slide-back),::view-transition-new(slide-back),::view-transition-old(cell-to-capture),::view-transition-new(cell-to-capture){animation:none}}
