.famempty{text-align:center;flex-direction:column;align-items:center;gap:10px;padding:8px 0 4px;display:flex}.famempty-icon{font-size:3.5rem;line-height:1}.famempty-line{margin:0;font-weight:600}.famempty-actions{flex-direction:column;gap:10px;width:100%;display:flex}.famempty-actions>button{width:100%;min-height:52px;font-size:1.05rem}.intro{z-index:60;background:radial-gradient(circle at 50% 45%, color-mix(in srgb, var(--accent) 16%, var(--bg)), var(--bg) 72%);place-items:center;animation:.25s ease-out both intro-fade-in;display:grid;position:fixed;inset:0;overflow:hidden}.intro-out{animation:.3s ease-in forwards intro-fade-out}.intro-skip{cursor:pointer;z-index:1;background:0 0;border:0;width:100%;height:100%;min-height:0;padding:0;position:absolute;inset:0}.intro-skip:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.intro .imark{animation:2s ease-in both intro-stage}.intro-legal{color:var(--muted);text-align:center;margin:0;font-size:.7rem;position:absolute;bottom:2rem;left:0;right:0}@keyframes intro-fade-in{0%{opacity:0}}@keyframes intro-fade-out{to{opacity:0}}@keyframes intro-stage{0%,85%{transform:none}to{transform:scale(1.06)}}.imark{pointer-events:none;justify-items:center;gap:18px;width:100%;max-width:480px;padding:0 20px;display:grid;position:relative}.imark-bleed{filter:blur(70px);opacity:0;pointer-events:none;border-radius:50%;width:60vmax;height:60vmax;position:absolute}.imark-bleed-a{background:#ff2bd68c;animation:1.3s ease-out 50ms both imark-bleed;top:-34vmax;left:-30vmax}.imark-bleed-b{background:#00d9ff80;animation:1.3s ease-out .15s both imark-bleed;bottom:-34vmax;right:-30vmax}@keyframes imark-bleed{0%{opacity:0;transform:scale(.6)}to{opacity:.55;transform:none}}.imark-pill{aspect-ratio:400/128;place-items:center;width:min(88vw,420px);display:grid;position:relative}.imark-ring{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.imark-ring-line,.imark-ring-glow{fill:none;stroke:url(#imark-grad);stroke-width:5px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px;animation:.7s cubic-bezier(.4,0,.2,1) .55s forwards imark-draw}.imark-ring-glow{stroke-width:14px;opacity:0;filter:blur(8px);animation:.7s cubic-bezier(.4,0,.2,1) .55s forwards imark-draw,.9s ease-out 1.1s forwards imark-bloom}@keyframes imark-draw{to{stroke-dashoffset:0}}@keyframes imark-bloom{0%{opacity:0}35%{opacity:.95}to{opacity:.5}}.imark-word{font-family:var(--font-display);letter-spacing:-.01em;color:#fff;text-shadow:0 0 22px #ffffff80, 0 0 48px color-mix(in srgb, var(--accent) 60%, transparent);gap:.02em;padding:.1em .12em;font-size:clamp(2.1rem,10.5vw,3.1rem);font-weight:800;line-height:1;display:flex;position:relative;overflow:hidden}.imark-ch{opacity:0;filter:blur(10px);animation:.55s cubic-bezier(.2,.9,.25,1.15) both imark-letter;animation-delay:calc(.1s + var(--i) * 60ms);display:inline-block}.imark-ch:nth-child(odd){transform:translate(-40px,-18px)rotate(-8deg)}.imark-ch:nth-child(2n){transform:translate(40px,18px)rotate(8deg)}@keyframes imark-letter{to{opacity:1;filter:blur();transform:none}}.imark-shine{filter:blur(6px);opacity:0;background:linear-gradient(100deg,#0000,#ffffff8c,#0000);width:22%;animation:.45s ease-in-out .95s both imark-shine;position:absolute;top:12%;bottom:36%;left:-30%;transform:skew(-18deg)}@keyframes imark-shine{0%{opacity:0;left:-30%}20%{opacity:1}to{opacity:0;left:110%}}.imark-xp{opacity:0;background:#ffffff29;border-radius:999px;height:7px;animation:.25s ease-out 1.05s both imark-fade;position:absolute;bottom:16%;left:20%;right:20%;overflow:hidden}.imark-xp i{border-radius:inherit;background:var(--logo-ring);transform-origin:0;width:100%;height:100%;box-shadow:0 0 10px color-mix(in srgb, var(--accent) 70%, transparent);animation:.5s cubic-bezier(.2,.8,.2,1) 1.1s forwards imark-fill;display:block;transform:scaleX(0)}@keyframes imark-fade{to{opacity:1}}@keyframes imark-fill{to{transform:scaleX(1)}}.imark-for{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);opacity:0;margin:0;font-size:1.05rem;font-weight:600;animation:.45s ease-out 1.15s both imark-rise}@keyframes imark-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.imark-still .imark-bleed{opacity:.45;animation:none;transform:none}.imark-still .imark-ring-line,.imark-still .imark-ring-glow{stroke-dashoffset:0;animation:none}.imark-still .imark-ring-glow{opacity:.5}.imark-still .imark-ch{opacity:1;filter:none;animation:none;transform:none}.imark-still .imark-shine{opacity:0;animation:none}.imark-still .imark-xp{opacity:1;animation:none}.imark-still .imark-xp i{animation:none;transform:none}.imark-still .imark-for{opacity:1;animation:none}.fr-logo-step{justify-content:center;overflow:hidden}.fr-logo-btn{width:100%;min-height:70vh;color:var(--text);background:0 0;border:0;flex-direction:column;align-items:center;gap:22px;display:flex}.fr-welcome{font-family:var(--font-display);color:var(--text);opacity:0;font-size:1.05rem;font-weight:600;animation:.5s ease-out 1.5s both imark-rise}.fr-tap{font-family:var(--font-body);color:var(--muted);opacity:0;font-size:.95rem;animation:.5s ease-out 1.75s both imark-rise,2.4s ease-in-out 2.4s infinite fr-pulse}.fr-still .fr-welcome,.fr-still .fr-tap{opacity:1;animation:none}@keyframes fr-pulse{0%,to{opacity:1}50%{opacity:.55}}.logo{overflow:hidden}.logo.logo-flash:before{animation:.6s ease-out logo-flash}.logo.logo-flash:after{animation:.6s ease-out logo-flash-glow}.logo.logo-flash{animation:.6s ease-out logo-flash-text}.logo.logo-flash .logo-shine{content:""}.logo .logo-shine{opacity:0;pointer-events:none;background:linear-gradient(100deg,#0000,#ffffffb3,#0000);width:30%;position:absolute;top:-20%;bottom:-20%;left:-40%;transform:skew(-18deg)}.logo.logo-flash .logo-shine{animation:.6s ease-in-out logo-shine}@keyframes logo-flash{0%{filter:brightness(2.4)}to{filter:none}}@keyframes logo-flash-glow{0%{opacity:1;filter:blur(16px)}to{opacity:.6;filter:blur(8px)}}@keyframes logo-flash-text{0%{text-shadow:0 0 22px #ffffffe6}to{text-shadow:0 0 12px #ffffff59}}@keyframes logo-shine{0%{opacity:0;left:-40%}25%{opacity:1}to{opacity:0;left:120%}}@media (prefers-reduced-motion:reduce){.intro,.intro *,.imark,.imark *,.fr-logo-step *,.logo.logo-flash,.logo.logo-flash:before,.logo.logo-flash:after,.logo.logo-flash .logo-shine{animation:none!important}.imark-ch{opacity:1;filter:none;transform:none}.imark-ring-line,.imark-ring-glow{stroke-dashoffset:0}.imark-ring-glow{opacity:.5}.imark-xp,.imark-for,.fr-welcome,.fr-tap{opacity:1}.imark-xp i{transform:none}.imark-bleed{opacity:.45;transform:none}}.artist-grid{grid-template-columns:repeat(auto-fill,minmax(min(88px,100%),1fr))}.artist-grid>li,.artist-grid .acard,.artist-grid .acard .atext{min-width:0}.artist-grid .acard .wmark{overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;max-width:100%}.artist-grid .acard .ameta,.artist-grid .acard .gtag{overflow-wrap:anywhere}.trophy-legend,.artist-filters{flex-wrap:wrap;min-width:0}.artist-filters select{min-width:0;max-width:100%}.plan-head{text-align:center;flex-direction:column;align-items:center;gap:2px;margin-bottom:12px;display:flex}.plan-head h1,.plan-head .plan-summary{text-align:center;margin:0}@media (width<=359px){.artist-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.clsfield .class-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:6px;display:grid}.class-tile{text-align:center;background:var(--surface-2);border:1.5px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;overflow-wrap:anywhere;flex-direction:column;justify-content:flex-start;align-items:center;gap:4px;min-width:0;min-height:96px;padding:10px 4px 8px;display:flex;position:relative}.class-tile input{opacity:0;pointer-events:none;width:1px;height:1px;margin:0;position:absolute}.class-tile:has(input:focus-visible){outline:2px solid var(--accent-2);outline-offset:2px}.class-tile.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), 0 0 16px -6px var(--accent)}.class-tile-check{background:var(--accent);color:var(--accent-ink);border-radius:999px;padding:1px 5px;font-size:.6875rem;font-weight:700;line-height:1.3;position:absolute;top:3px;right:4px}.class-tile-icon{font-size:1.75rem;line-height:1}.class-tile-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:100%;font-size:.8125rem;font-weight:700;line-height:1.2;display:-webkit-box;overflow:hidden}.class-tile-chips{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.class-chip{border:1px solid var(--border);background:var(--surface);border-radius:999px;justify-content:center;align-items:center;min-width:22px;padding:1px 4px;font-size:.75rem;line-height:1.3;display:inline-flex}.class-none{margin:6px 0 0}.charcard ul.train-stats{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.charcard ul.train-stats li+li{margin-top:0}.train-stat{border:1px solid var(--border);background:var(--surface-2);border-radius:999px;align-items:center;gap:5px;min-width:0;padding:5px 10px;font-size:.875rem;display:inline-flex}.train-stat.focus{border-color:var(--accent)}.train-stat-num{font-variant-numeric:tabular-nums}.charcard ul.train-habits{gap:6px;padding:0}.charcard ul.train-habits li+li{margin-top:0}.train-habits .habit{gap:10px;padding:8px 10px}.train-habits .habit .hi{width:28px;height:28px}.train-habit-label{overflow-wrap:anywhere;flex:1;min-width:0;font-size:.875rem;font-weight:700;line-height:1.25}.train-habit-stat{color:var(--muted);white-space:nowrap;flex:none;font-size:.75rem}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/manrope-latin-400-normal-PaqtzbVb.woff2)format("woff2"),url(/assets/manrope-latin-400-normal-8tf8FM3T.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/manrope-latin-500-normal-BYYD-dBL.woff2)format("woff2"),url(/assets/manrope-latin-500-normal-DMZssgOp.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/manrope-latin-600-normal-4f0koTD-.woff2)format("woff2"),url(/assets/manrope-latin-600-normal-BqgrALkZ.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/manrope-latin-700-normal-BZp_XxE4.woff2)format("woff2"),url(/assets/manrope-latin-700-normal-DGRFkw-m.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/manrope-latin-800-normal-BfWYOv1c.woff2)format("woff2"),url(/assets/manrope-latin-800-normal-uHUdIJgA.woff)format("woff")}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/unbounded-latin-600-normal-oRSANpZr.woff2)format("woff2"),url(/assets/unbounded-latin-600-normal-BPdB_PEv.woff)format("woff")}@font-face{font-family:Unbounded;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/unbounded-latin-800-normal-CN2Hxyoo.woff2)format("woff2"),url(/assets/unbounded-latin-800-normal-Cjred_zf.woff)format("woff")}@font-face{font-family:Space Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/space-mono-latin-400-normal-Rg4St2Dn.woff2)format("woff2"),url(/assets/space-mono-latin-400-normal-_3DlpgIW.woff)format("woff")}@font-face{font-family:Space Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-mono-latin-700-normal-mWgeinG7.woff2)format("woff2"),url(/assets/space-mono-latin-700-normal-D7A851RN.woff)format("woff")}:root{--bg:#150a1e;--bg-g1:#ff5fae22;--bg-g2:#ffb34722;--surface:#241333;--surface-2:#2c1740;--surface-3:#371c4f;--border:#3c2452;--text:#f4ece2;--muted:#cabcd4;--faint:#b2a5ba;--accent:#ff5fae;--accent-ink:#1a0a12;--accent-soft:#ff5fae26;--accent-2:#ffb347;--accent-2-soft:#ffb34726;--must:#2ee6a6;--maybe:#ffb020;--skip:#ff5f6d;--good:#6ee7b7;--good-soft:#6ee7b722;--warn:#ffd166;--warn-soft:#ffd16622;--danger:#ff7a7a;--danger-soft:#ff7a7a22;--tier-bronze:#cd7f32;--tier-silver:#b8c0c8;--tier-gold:#e8b04b;--tier-plat:#8fe3ff;--radius:16px;--radius-sm:10px;--font-display:"Unbounded", system-ui, -apple-system, sans-serif;--font-body:"Manrope", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:"Space Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--font-body);font-weight:500;line-height:1.45}*{box-sizing:border-box}body{background:radial-gradient(ellipse 900px 520px at 12% -8%, var(--bg-g1), transparent 62%), radial-gradient(ellipse 720px 520px at 108% 4%, var(--bg-g2), transparent 58%), var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;background-attachment:fixed;margin:0}h1{font-family:var(--font-display);letter-spacing:-.01em;text-wrap:balance;margin:0 0 6px;font-size:1.375rem;font-weight:800;line-height:1.15}h2{font-family:var(--font-display);letter-spacing:-.01em;text-wrap:balance;margin:0;font-size:1.06rem;font-weight:800}h3{font-family:var(--font-display);letter-spacing:-.01em;text-wrap:balance;margin:0;font-size:.98rem;font-weight:800}a{color:var(--accent-2);text-underline-offset:3px}a:visited{color:var(--accent-2)}button,input,select,textarea{font:inherit;color:inherit}@supports (-webkit-touch-callout:none){input,select,textarea{font-size:max(16px,1rem)!important}}button{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;min-width:44px;min-height:44px;padding:10px 16px;font-weight:600;transition:border-color .16s,background .16s,transform .1s}button:hover:not(:disabled):not([aria-disabled=true]){border-color:var(--faint)}button:active:not(:disabled):not([aria-disabled=true]){transform:scale(.97)}button:disabled,button[aria-disabled=true]{opacity:.45;cursor:not-allowed}.is-disabled{opacity:.45}.ics-why{margin:6px 0 0}.plan-summary{text-align:center;font-family:var(--font-display);margin:4px 0 10px;font-size:1.125rem}.plan-actions{grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:10px;margin:0 0 12px;display:grid}.plan-action{flex-direction:column;gap:4px;min-width:0;display:flex}.plan-action p{text-align:center;margin:0}.plan-action-row{align-items:stretch;gap:4px;display:flex}.plan-action-row .tile{flex-direction:row;flex:1;gap:8px;min-width:0;min-height:56px;font-size:1rem}button.plan-info{min-width:44px;min-height:44px;color:var(--muted);background:0 0;border-color:#0000;flex:none;padding:0;font-size:1.1rem}.plan-flags h2{font-family:var(--font-display);margin:0 0 6px;font-weight:700}.plan-flags ul{margin:0;padding-left:1.1em}.plan-flags li{font-weight:600;line-height:1.35}.est-tag{font-family:var(--font-body);color:var(--accent-2);margin-left:6px;font-size:.75rem;font-weight:700}.plan-day{font-family:var(--font-body);letter-spacing:.08em;color:var(--muted);margin:16px 0 8px;font-size:.875rem;font-weight:700}.plan-item.plan-row{grid-template-columns:4.75rem minmax(0,1fr) auto auto;align-items:center;gap:4px 10px}.plan-row .plan-time{text-align:right;color:var(--text);white-space:nowrap;font-size:.875rem}.plan-row .plan-time .est-tag{margin:0;display:block}.plan-row .plan-billing{overflow-wrap:anywhere;font-weight:700}.plan-row .plan-stage{text-overflow:ellipsis;white-space:nowrap;max-width:7.5rem;font-family:var(--font-body);text-transform:none;letter-spacing:0;grid-column:auto;font-size:.8125rem;overflow:hidden}.plan-row .tag-cancelled{margin-left:6px}.tile{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-height:64px;font-weight:700;display:flex}.tile .ti{font-size:1.4rem;line-height:1}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);box-shadow:0 0 18px -6px var(--accent-soft);font-weight:700}button.danger{border-color:var(--danger);color:var(--danger);background:0 0}button.danger:hover:not(:disabled){background:var(--danger-soft);border-color:var(--danger)}input:not([type=checkbox]),select,textarea{background-color:var(--surface-2);border:1px solid var(--faint);border-radius:var(--radius-sm);min-width:0;min-height:44px;padding:10px 12px}input::placeholder,textarea::placeholder{color:var(--faint);opacity:1}input:not([type=checkbox]):hover,select:hover,textarea:hover{border-color:var(--muted)}select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5 11 1.5' fill='none' stroke='%23b3a0c2' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:38px}select option{background:var(--surface-2);color:var(--text)}input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent)}code{font-family:var(--font-mono);font-weight:700}html{scroll-padding-bottom:calc(150px + env(safe-area-inset-bottom));scroll-padding-top:72px}.app{max-width:720px;min-height:100dvh;padding-bottom:calc(150px + env(safe-area-inset-bottom));margin:0 auto}.app:after{content:"";z-index:29;pointer-events:none;width:min(720px,100%);height:calc(158px + env(safe-area-inset-bottom));background:linear-gradient(to bottom, transparent, color-mix(in srgb, var(--bg) 92%, transparent) 28px);position:fixed;bottom:0;left:50%;transform:translate(-50%)}.app.dock-only{padding-bottom:calc(100px + env(safe-area-inset-bottom))}.site-footer{z-index:1;border-top:1px solid var(--border);background:var(--bg);max-width:720px;color:var(--muted);text-align:center;margin:0 auto;padding:16px 16px 24px;font-size:.8rem;line-height:1.5;position:relative}.site-footer p{margin:0 0 4px}:is(html[data-ios-shell] .site-footer li:has(>a[href="/legal/terms-of-sale"]),html[data-ios-shell] .site-footer li:has(>a[href="/legal/refunds"]),html[data-report-page] .site-footer li:has(>a[href="/legal/terms-of-sale"]),html[data-report-page] .site-footer li:has(>a[href="/legal/refunds"])),:is(html[data-ios-shell] .site-footer li:has(>a[href="/legal/guidelines"]),html[data-ios-shell] .site-footer li:has(>a[href="/legal/copyright"]),html[data-ios-shell] .site-footer li:has(>a[href="/legal/accessibility"]),html[data-ios-shell] .site-footer li:has(>a[href="/legal/brand"])){display:none}.site-footer ul{flex-wrap:wrap;justify-content:center;gap:0 4px;margin:0;padding:0;list-style:none;display:flex}.site-footer a,.site-footer a:visited{min-height:24px;color:var(--text);text-underline-offset:3px;padding:6px;text-decoration:underline;display:inline-block}body:has(.app){flex-direction:column;min-height:100dvh;display:flex}body:has(.app)>#root{flex:1 0 auto}body:has(.app) .app{min-height:0;padding-bottom:24px}body:has(.app)>.site-footer{width:100%;padding-bottom:calc(150px + env(safe-area-inset-bottom));flex-shrink:0}body:has(.app.dock-only)>.site-footer{padding-bottom:calc(150px + env(safe-area-inset-bottom))}.legal-gate,.report-page{z-index:1;flex-direction:column;gap:12px;max-width:560px;min-height:100dvh;margin:0 auto;padding-top:24px;padding-bottom:24px;display:flex;position:relative}.legal-gate>.logo{align-self:flex-start;margin:0}.legal-gate label.check{align-items:flex-start}.legal-gate label.check input{flex:none;margin-top:2px}.legal-gate a,.report-page a{text-decoration:underline}.beta-home a.btnlink{background:var(--accent);border:1px solid var(--accent);min-height:44px;color:var(--accent-ink);border-radius:12px;justify-content:center;align-items:center;padding:8px 16px;font-weight:700;text-decoration:none;display:flex}.beta-home a.founding-chip{background:var(--accent-2-soft);border:1px solid var(--accent-2);min-height:44px;color:var(--accent-2);border-radius:999px;align-self:flex-start;align-items:center;padding:6px 14px;font-size:.85rem;text-decoration:none;display:inline-flex}#founding-pass{scroll-margin-top:16px}.beta-home h1{margin:0;font-size:1.5rem;line-height:1.2}.beta-home h2{margin:0;font-size:1.1rem}.legal-text{overflow-wrap:break-word}.safety-notice{z-index:40;background:color-mix(in srgb, var(--bg) 96%, transparent);padding:24px 16px calc(24px + env(safe-area-inset-bottom));position:fixed;inset:0;overflow-y:auto}.safety-notice-body{flex-direction:column;gap:12px;max-width:560px;margin:0 auto;display:flex}.safety-notice-card{border-color:var(--accent-2)}.safety-banner{margin:0 0 12px}.checkin-notice,.est-line{margin:0 0 8px}.char-notice{justify-content:space-between;align-items:center;gap:12px;display:flex}.char-notice p{margin:0}.legal-text h2{margin-top:1.4em;font-size:1.05rem}.legal-text h3{font-size:.95rem}.legal-text table{border-collapse:collapse;width:100%;font-size:.85rem}.legal-text th,.legal-text td{text-align:left;vertical-align:top;border-bottom:1px solid var(--border);padding:6px}.pad{padding-left:16px;padding-right:16px}section.pad{padding-top:14px}.muted{color:var(--muted)}.small{font-size:.85rem}.error{color:var(--danger)}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row.between{justify-content:space-between}.stack{flex-direction:column;gap:8px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:12px;margin:14px 0;padding:18px;display:flex}.card.warn{border-color:var(--warn)}.card ul{margin:0;padding-left:1.2em}.card ul li::marker{color:var(--accent)}.card ul li+li{margin-top:4px}.top{z-index:5;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border);align-items:center;gap:6px;min-height:52px;padding:2px 12px;display:flex;position:sticky;top:0}.festbtn{font-family:var(--font-body);color:var(--muted);background:var(--surface-2);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;min-width:44px;padding:6px 10px;font-size:.72rem;font-weight:700;display:flex}.festbtn-name{text-overflow:ellipsis;max-width:24ch;overflow:hidden}.festbtn-chevron{flex:none;font-size:.6rem}.festlist{flex-direction:column;gap:8px;margin:0 0 12px;padding:0;list-style:none;display:flex}.festlist li{border:1px solid var(--border);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.festlist li.current{border-color:var(--accent);background:var(--accent-soft)}.festlist li>div{flex-direction:column;gap:2px;min-width:0;display:flex}.iconbtn{background:var(--surface-2);border-radius:999px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;min-height:44px;padding:0;font-size:1rem;display:flex}.search-results{flex-direction:column;gap:8px;margin:0 0 12px;padding:0;list-style:none;display:flex}.search-set{border:1px solid var(--border);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.search-set-info{flex-direction:column;gap:2px;min-width:0;display:flex}:root{--logo-ring:linear-gradient(90deg, #ff2bd6, #ff8a00, #ffe600, #00ffa3, #00d9ff, #7b5cff)}.logo{isolation:isolate;font-family:var(--font-display);letter-spacing:-.01em;text-transform:uppercase;white-space:nowrap;color:#fff;text-shadow:0 0 12px #ffffff59;border-radius:11px;padding:7px 12px;font-size:1rem;font-weight:800;line-height:1;display:inline-flex;position:relative}.logo:before,.logo:after{content:"";z-index:-1;border-radius:inherit;background:var(--logo-ring);-webkit-mask-composite:xor;padding:2px;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.logo:after{filter:blur(8px);opacity:.6}.logo .tm{text-transform:none;align-self:flex-start;margin-left:1px;font-size:.5em;font-weight:600;line-height:1}.banner{background:var(--warn-soft);border:1px solid var(--warn);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:8px;margin:10px 16px 0;padding:6px 6px 6px 14px;font-size:.9rem;display:flex}.banner.error{color:var(--danger);background:var(--danger-soft);border-color:var(--danger)}.banner.info{color:var(--accent-2);background:var(--accent-soft);border-color:var(--accent-2)}.banner button{background:0 0;border-color:#0000}.demo-banner{flex-wrap:wrap;align-items:center;gap:6px 10px;font-size:.85rem;display:flex}.demo-banner>span{flex:14rem}.demo-banner .demo-info{flex-basis:100%;margin:0}.demo-banner .chip{border-radius:999px;padding:2px 10px}.founders-nudge{margin:8px 12px}a.primary.btnlink{box-sizing:border-box;background:var(--accent);border:1px solid var(--accent);width:100%;min-height:48px;color:var(--accent-ink);box-shadow:0 0 18px -6px var(--accent-soft);border-radius:12px;justify-content:center;align-items:center;padding:8px 16px;font-weight:700;text-decoration:none;display:flex}.founders-nudge button.primary{width:100%;min-height:48px}.founders-nudge button.not-now{min-height:44px;color:var(--muted,inherit);background:0 0;border-color:#0000;align-self:center;padding:6px 16px;font-size:.85rem;text-decoration:underline}.banner button{min-width:44px;min-height:44px;padding:0 10px}.seg{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 88%, transparent);border-radius:999px;gap:3px;padding:4px;display:inline-flex}.seg.wrap{flex-wrap:wrap;display:flex}.seg button{color:var(--muted);background:0 0;border:0;border-radius:999px;min-height:44px;padding:6px 14px}.seg button:hover:not(:disabled):not(.active){color:var(--text)}.seg button.active{background:var(--accent);color:var(--accent-ink);font-weight:700}.tabs{scrollbar-width:none;background:var(--surface);border:1px solid var(--border);border-radius:999px;gap:4px;margin:12px 16px;padding:5px;display:flex;overflow-x:auto}.tabs button{white-space:nowrap;color:var(--muted);background:0 0;border:0;border-radius:999px;flex:1 0 auto}.tabs button:hover:not(.active){color:var(--text)}section.pad .tabs{margin-left:0;margin-right:0}.tabs button.active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:700}.filters{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding-bottom:6px;display:flex}.stage-name{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.08em;color:var(--accent-2);margin:20px 0 8px;font-size:.8rem;font-weight:700}.perf-list,.plan-list,.members{margin:0;padding:0;list-style:none}.perf-list{flex-direction:column;gap:8px;padding:0 16px;display:flex}.perf{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:10px;padding:11px 13px;display:flex}.perf.picked-must{border-color:color-mix(in srgb, var(--must) 55%, var(--border));background:color-mix(in srgb, var(--must) 9%, var(--surface));box-shadow:inset 3px 0 0 var(--must)}.perf.picked-maybe{border-style:dashed;border-color:color-mix(in srgb, var(--maybe) 60%, var(--border));box-shadow:inset 3px 0 0 var(--maybe)}.perf.picked-skip{background:0 0}.perf.picked-skip .perf-billing{color:var(--faint)}.perf:has(.clash-hard){border-color:var(--danger);background:color-mix(in srgb, var(--danger) 12%, var(--surface))}:is(.perf.picked-must:has(.clash-hard),.perf.picked-maybe:has(.clash-hard)){box-shadow:inset 3px 0 0 var(--danger)}.perf.cancelled .perf-billing{color:var(--muted);text-decoration:line-through}.perf.estimated,.plan-item.estimated,.gset.estimated{outline:1.5px dashed color-mix(in srgb, var(--accent-2) 70%, transparent);outline-offset:2px}.gset.estimated{outline-offset:-2px}.est-wrap{vertical-align:baseline;flex-direction:column;align-items:flex-start;display:inline-flex}.chip-est{min-height:24px;font:600 .75rem/1.4 var(--font-body);color:var(--accent-2);background:var(--accent-2-soft);border:1px dashed var(--accent-2);border-radius:999px;align-items:center;margin-left:6px;padding:1px 7px;display:inline-flex}.est-explain{max-width:32ch;color:var(--muted);margin-top:4px;font-size:.75rem;line-height:1.4;display:block}.est-note{border-style:dashed;border-color:var(--accent-2);justify-content:space-between;align-items:center;gap:12px;display:flex}.est-note p{margin:0;font-size:.875rem}.card.est-clashes{border:1px dashed var(--maybe)}.perf-main{flex:1;min-width:0}.perf-time{font-family:var(--font-mono);color:var(--muted);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:700}.perf-billing{font-family:var(--font-display);overflow-wrap:anywhere;font-size:1rem;font-weight:700}.badge{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;background:var(--accent-2-soft);color:var(--accent-2);white-space:nowrap;vertical-align:1px;border-radius:999px;margin-left:6px;padding:2px 8px;font-size:.75rem;font-weight:700}.badge.changed{color:var(--warn);background:var(--warn-soft)}.badge.cancelled{color:var(--danger);background:var(--danger-soft)}.clash{margin-top:3px;font-size:.85rem}.clash-hard{color:var(--danger)}.clash-soft{color:var(--warn)}.crew-going{color:var(--muted);align-items:center;gap:3px;margin-top:4px;font-size:.85rem;display:flex}.avatar{background:var(--surface-2);border:1px solid var(--border);border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:.8rem;font-weight:700;display:inline-grid;position:relative;overflow:hidden}.avatar.level-must{border-color:var(--must);color:var(--must)}.avatar.level-maybe{border-color:var(--maybe);color:var(--maybe)}.avatar-mini{line-height:0;position:absolute;top:0;left:50%;transform:translate(-50%)}.picks{flex:none;gap:4px;display:flex}.pick{background:0 0;min-width:56px;min-height:44px;padding:4px 10px;font-size:.9rem}.pick-must.active{background:var(--must);border-color:var(--must);color:#06140e;font-weight:700}.pick-maybe.active{background:var(--maybe);border-color:var(--maybe);color:#1a1000;font-weight:700}.pick-skip.active{background:var(--skip);border-color:var(--skip);color:#1a0508;font-weight:700}.plan-list{flex-direction:column;gap:8px;display:flex}.plan-item{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);grid-template-columns:5.75rem 1fr auto;align-items:baseline;gap:2px 10px;padding:11px 13px;display:grid}.plan-item.level-must{box-shadow:inset 3px 0 0 var(--must)}.plan-item.level-maybe{box-shadow:inset 3px 0 0 var(--maybe);border-style:dashed}.plan-time{font-family:var(--font-mono);color:var(--muted);font-variant-numeric:tabular-nums;font-size:.8rem;font-weight:700}.plan-billing{font-weight:600}.plan-stage{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;grid-column:2;font-size:.75rem;font-weight:700}.plan-item .tag{grid-area:1/3}.tag{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.06em;background:var(--surface-3);color:var(--muted);white-space:nowrap;border:0;border-radius:999px;margin-left:6px;padding:3px 9px;font-size:.75rem;font-weight:700}.tag-must{color:var(--must);background:color-mix(in srgb, var(--must) 16%, transparent)}.tag-maybe{color:var(--maybe);background:color-mix(in srgb, var(--maybe) 16%, transparent)}.invite{font-family:var(--font-mono);letter-spacing:.1em;color:var(--accent-2);overflow-wrap:anywhere;font-size:1.1rem;font-weight:700}.invitecard{text-align:center}.invitecard .invite{letter-spacing:.2em;margin:4px 0 12px;font-size:2rem;display:block}.invite-h{color:var(--muted);margin:0;font-size:.85rem;font-weight:600}.invite-more{justify-content:center;margin-top:10px}.halves{grid-template-columns:1fr 1fr;gap:10px;margin:8px 0;display:grid}.halves>button{min-width:0}.famtiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0 4px;display:grid}@media (width<=300px){.famtiles{grid-template-columns:repeat(2,minmax(0,1fr))}}.famtile{text-align:center;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-width:0;min-height:76px;padding:10px 4px;font-size:.8rem;font-weight:700;line-height:1.2;display:flex}.famtile .ti{font-size:1.3rem;line-height:1}.home-grid{margin:8px 0 4px}.home-famname{margin:8px 0 0}button.famtile[class*=tile-]{color:#fff;background:linear-gradient(135deg, var(--tile-a), var(--tile-b) 52%, var(--tile-c));border-color:#0000;box-shadow:inset 0 1px #ffffff47,inset 0 -1px #00000038,0 6px 14px -8px #000000b3}button.famtile.tile-safety{--tile-a:#0e7490;--tile-b:#155e75;--tile-c:#164e63}button.famtile.tile-map{--tile-a:#7c3aed;--tile-b:#6d28d9;--tile-c:#4c1d95}button.famtile.tile-meet{--tile-a:#d1226b;--tile-b:#be185d;--tile-c:#831843}button.famtile.tile-water{--tile-a:#2563eb;--tile-b:#1d4ed8;--tile-c:#1e3a8a}button.famtile.tile-beacon{--tile-a:#c2410c;--tile-b:#9a3412;--tile-c:#7c2d12}button.famtile.tile-buddy{--tile-a:#4d7c0f;--tile-b:#3f6212;--tile-c:#365314}button.famtile.checkin-tile-good{--tile-a:#a7f3d0;--tile-b:var(--good);--tile-c:#34d399;color:#062a1c}button.famtile.checkin-tile-lost{--tile-a:var(--warn);--tile-b:var(--maybe);--tile-c:#f59e0b;color:#2a1a00}button.famtile.checkin-tile-help{--tile-a:#ff9b9b;--tile-b:var(--danger);--tile-c:var(--skip);color:#1a0004}button.famtile.tile-buddy.on{border-color:var(--accent);box-shadow:inset 0 1px 0 #ffffff47, inset 0 -1px 0 #00000038, 0 0 0 2px var(--accent)}:root[data-festival] button.famtile[class*=tile-],:root[data-calm] button.famtile[class*=tile-],:root[data-contrast=high] button.famtile[class*=tile-]{background:var(--tile-c);box-shadow:none}:root[data-festival] button.famtile.tile-buddy.on,:root[data-calm] button.famtile.tile-buddy.on,:root[data-contrast=high] button.famtile.tile-buddy.on{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}:root[data-contrast=high] button.famtile{border-color:var(--text)}.checkin-notice-row{flex-wrap:nowrap;align-items:center;gap:4px}.checkin-notice-row .checkin-notice{flex:auto;margin:0}.meet-footer{flex-wrap:nowrap;margin:12px 0}.meet-footer p{flex:auto;margin:0}.meet-footer button{flex:none}.famtile-note{grid-column:1/-1;margin:0}.famtile-hint{margin:4px 0}button.famlight{align-items:center;padding-left:0;display:inline-flex}.mp-next{flex-wrap:nowrap;margin:4px 0 8px}.mp-next>div{flex:1 1 0;min-width:0}.mp-next>button{flex:none}.mp-all summary{font-size:.9rem}.checkins-rows li{align-items:flex-start;gap:10px;display:flex}.checkin-body{min-width:0}ul.bullets{flex-direction:column;gap:4px;margin:0;padding-left:1.2em;display:flex}button.info{min-width:44px;min-height:44px;color:var(--muted);background:0 0;border-color:#0000;border-radius:999px;flex:none;padding:0;font-size:1.1rem}.members{flex-direction:column;gap:8px;display:flex}.member{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.member .avatar{width:48px;height:48px;font-family:var(--font-display);background:var(--accent-soft);color:var(--accent);border-color:var(--accent);font-size:.9rem}.must-list{color:var(--must);margin-top:2px}form.row input{flex:1}.dockstack{left:50%;bottom:calc(12px + env(safe-area-inset-bottom));z-index:30;flex-direction:column;align-items:stretch;gap:8px;width:min(460px,100% - 24px);display:flex;position:fixed;transform:translate(-50%)}nav.bottom{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(14px);border-radius:24px;gap:4px;width:100%;padding:6px;display:flex;box-shadow:0 12px 34px -12px #0009}nav.bottom button.dim{opacity:.8}.subdock{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(14px);border-radius:22px;padding:5px;box-shadow:0 12px 34px -12px #0009}.subdock .seg{background:0 0;border:0;width:100%;padding:0}.subdock .seg button{flex:1 1 0;min-height:44px}nav.bottom button{min-width:0;min-height:56px;color:var(--muted);background:0 0;border:0;border-radius:18px;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:3px;padding:6px 2px;font-size:clamp(.75rem,3.4vw,.8rem);font-weight:600;line-height:1.1;display:flex}nav.bottom button:hover:not(:disabled):not(.active){color:var(--text)}nav.bottom .ico{font-size:1.25rem;line-height:1}nav.bottom .lbl{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}nav.bottom button.active{color:var(--accent-ink);background:var(--accent);font-weight:700}nav.bottom button.pressing{opacity:.7;transform:scale(.92)}@media (width<=480px){.perf{flex-direction:column;align-items:stretch}.picks{justify-content:flex-end}}.checkins,.points{margin:0;padding:0;list-style:none}.checkins{flex-direction:column;gap:4px;display:flex}.checkins li{border:1px solid var(--border);border-radius:var(--radius-sm);padding:6px 12px;line-height:1.35}.checkins li.alert{color:var(--danger);border-color:var(--danger);background:var(--danger-soft)}.status-good,.status-at_meeting_point{color:var(--good)}.status-need_help,.status-lost,.status-overdue{color:var(--danger);font-weight:700}button.checkin-need_help,button.checkin-lost{border-color:var(--danger);color:var(--danger);background:0 0}.buddytimer{flex-direction:column;gap:6px;display:flex}.themeday{border-top:1px solid var(--border);flex-direction:column;gap:6px;padding:10px 0;display:flex}.themeday:first-of-type{border-top:0;padding-top:0}.themevotes{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.themevotes li{text-align:center;flex-direction:column;align-items:center;gap:2px;width:64px;display:flex}.themevotes li.novote{opacity:.5}.wearlist{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.wearlist li{border-top:1px solid var(--border);align-items:flex-start;gap:10px;padding-top:10px;display:flex}.wearlist li.novote{opacity:.6}.wearbody{overflow-wrap:anywhere;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.wearnote{font-style:italic}.wearmine{align-items:flex-start;gap:10px;display:flex}.wearline{overflow-wrap:anywhere;margin-top:2px;display:block}.balances{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.balances li{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;gap:6px;padding:10px 12px;display:flex}.member{cursor:pointer}.member .member-actions{background:0 0;flex:none;align-self:center;margin-left:auto;padding:0 10px;font-size:1.2rem;line-height:1}.nudge{color:var(--accent)}.points{flex-direction:column;gap:8px;display:flex}.point{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);justify-content:space-between;align-items:flex-start;gap:8px;padding:10px 12px;display:flex}button.icon{align-self:flex-start;min-width:44px;padding:0}.grow{flex:1}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.change-set.has-failures{border-color:var(--warn)}.checks ul{margin:0;padding-left:18px}.checks>ul{padding-left:0;list-style:none}.check-ok{color:var(--good);margin:0}.check-fail,.warn-text{color:var(--warn)}table.diff{border-collapse:collapse;width:100%;font-size:.9rem}table.diff th{text-align:left;font-family:var(--font-body);color:var(--muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);padding:4px 6px;font-size:.8rem;font-weight:700}table.diff td{border-bottom:1px solid var(--border);vertical-align:top;padding:6px}.op-tag-add{color:var(--good);background:var(--good-soft)}.op-tag-update{color:var(--warn);background:var(--warn-soft)}.op-tag-remove{color:var(--danger);background:var(--danger-soft)}.reviewed{margin:8px 0 0;padding:0;list-style:none}.reviewed li{border-bottom:1px solid var(--border);padding:6px 0}details summary{cursor:pointer;font-weight:600}@media (width<=480px){table.diff thead{display:none}table.diff tr{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);grid-template-columns:auto 1fr;gap:2px 8px;margin-bottom:8px;padding:10px 12px;display:grid}table.diff td{border:0;padding:0}table.diff td:nth-child(3),table.diff td:nth-child(4){grid-column:2}table.diff td:nth-child(3):before{content:"Before: ";color:var(--muted)}table.diff td:nth-child(4):before{content:"After: ";color:var(--muted)}}:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}main:focus{outline:none}.skip-link{z-index:20;background:var(--surface-2);min-height:44px;color:var(--text);border-radius:8px;padding:12px 16px;position:absolute;top:-60px;left:8px}.skip-link:focus{top:8px}.state{padding-top:24px;padding-bottom:24px}.state-title{margin:0 0 6px;font-weight:600}.state.empty,.state.error-state{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.error-state .state-title{color:var(--danger)}.spinner{border:2px solid var(--border);border-top-color:var(--accent);vertical-align:-2px;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.card h2{font-size:1rem}.tag-cancelled{color:var(--danger);background:var(--danger-soft)}.danger-zone{border-color:color-mix(in srgb, var(--danger) 45%, var(--border));background:linear-gradient(160deg, var(--danger-soft), transparent 55%), var(--surface)}.me-account{border-top:1px solid var(--border);margin-top:28px;padding-top:6px}.me-account .danger-zone{margin-top:28px}button.danger.solid{background:var(--danger);color:#1a0004;font-weight:700}button.danger.solid:disabled{color:var(--danger);background:0 0}html[data-text-size=large]{font-size:112.5%}html[data-text-size=larger]{font-size:125%}label.check{cursor:pointer;align-items:center;gap:12px;min-height:44px;display:flex}label.check input[type=checkbox]{flex:none;width:24px;height:24px;margin:0}input[type=checkbox]{width:24px;height:24px}.legal-links a,a.tap{min-height:44px;padding:12px 4px;line-height:20px;display:inline-block}.review-actions{flex-wrap:wrap;gap:8px;display:flex}.review-actions input{flex:100%}.correction-group+.correction-group{border-top:1px solid var(--border);margin-top:16px;padding-top:12px}.correction-row{border-top:1px solid var(--border);padding:8px 0}.correction-row:first-of-type{border-top:0}.correction-row input{width:100%;margin:6px 0}.correction-row .row{gap:8px}:root[data-theme=neon]{--bg:#04060a;--bg-g1:#39ff1418;--bg-g2:#00e5ff18;--surface:#0b1016;--surface-2:#111a22;--surface-3:#16242e;--border:#1d3340;--text:#e6fff5;--muted:#b1cbc4;--faint:#9eb6b1;--accent:#39ff14;--accent-ink:#04120a;--accent-soft:#39ff1420;--accent-2:#00e5ff;--accent-2-soft:#00e5ff20;--good:#39ff14;--good-soft:#39ff1418;--warn:#ffe600;--warn-soft:#ffe60018;--danger:#ff5c9d;--danger-soft:#ff2e8820}:root[data-theme=trance]{--bg:#050a1e;--bg-g1:#4f7cff22;--bg-g2:#b98cff1f;--surface:#0c1330;--surface-2:#121b40;--surface-3:#1a2552;--border:#25335f;--text:#e9efff;--muted:#b8c4e2;--faint:#a6b1cf;--accent:#6f9bff;--accent-ink:#04081a;--accent-soft:#6f9bff22;--accent-2:#b98cff;--accent-2-soft:#b98cff22;--good:#6fe3d2;--good-soft:#6fe3d220;--warn:#ffd88c;--warn-soft:#ffd88c20;--danger:#ff8fa8;--danger-soft:#ff8fa822}:root[data-theme=desert]{--bg:#1b130d;--bg-g1:#e2703a1f;--bg-g2:#d9c39a14;--surface:#291d14;--surface-2:#33251a;--surface-3:#3f2e20;--border:#4a3726;--text:#f6ece0;--muted:#d6c4b1;--faint:#b9aa9b;--accent:#e2703a;--accent-ink:#1b0e06;--accent-soft:#e2703a24;--accent-2:#d9c39a;--accent-2-soft:#d9c39a1f;--good:#a3b565;--good-soft:#a3b56520;--warn:#e0a552;--warn-soft:#e0a55220;--danger:#d97468;--danger-soft:#d1584a22}:root[data-theme=techno]{--bg:#000;--bg-g1:#ffffff08;--bg-g2:#ffffff05;--surface:#0c0c0c;--surface-2:#141414;--surface-3:#1c1c1c;--border:#282828;--text:#fafafa;--muted:#bcbcbc;--faint:#a1a1a1;--accent:#fff;--accent-ink:#000;--accent-soft:#ffffff14;--accent-2:#8f8f8f;--accent-2-soft:#8f8f8f14;--good:#9ad17f;--good-soft:#9ad17f14;--warn:#d6c06a;--warn-soft:#d6c06a14;--danger:#ff3b30;--danger-soft:#ff3b3018}:root[data-theme=house]{--bg:#1a1209;--bg-g1:#e8b04b22;--bg-g2:#d9654a1c;--surface:#271b0f;--surface-2:#322315;--surface-3:#3f2c1b;--border:#4b3620;--text:#fbf1de;--muted:#dbcab2;--faint:#b9ab94;--accent:#e8b04b;--accent-ink:#1a1006;--accent-soft:#e8b04b26;--accent-2:#dc7057;--accent-2-soft:#d9654a22;--good:#9fb86a;--good-soft:#9fb86a20;--warn:#e8b04b;--warn-soft:#e8b04b20;--danger:#d6725f;--danger-soft:#cf5b4522}:root[data-theme=dubstep]{--bg:#080b08;--bg-g1:#9fe81f1a;--bg-g2:#7b3fe41a;--surface:#0f140f;--surface-2:#161d15;--surface-3:#1f291d;--border:#2b3828;--text:#eaf5e0;--muted:#bac6af;--faint:#9da895;--accent:#9fe81f;--accent-ink:#0a1200;--accent-soft:#9fe81f1f;--accent-2:#9a6cea;--accent-2-soft:#7b3fe424;--good:#9fe81f;--good-soft:#9fe81f18;--warn:#e8c31f;--warn-soft:#e8c31f18;--danger:#ff4d4d;--danger-soft:#ff4d4d20}:root[data-theme=trap]{--bg:#100818;--bg-g1:#c89b3c1f;--bg-g2:#8b5cf61f;--surface:#1b0f28;--surface-2:#231435;--surface-3:#2e1b45;--border:#3a2455;--text:#f3ecf8;--muted:#cabbd8;--faint:#aca0ba;--accent:#c89b3c;--accent-ink:#140a1c;--accent-soft:#c89b3c24;--accent-2:#956af7;--accent-2-soft:#8b5cf624;--good:#5ccf9e;--good-soft:#5ccf9e20;--warn:#c89b3c;--warn-soft:#c89b3c20;--danger:#f2557a;--danger-soft:#f2557a22}:root[data-theme=orlando]{--bg:#07101f;--bg-g1:#ff8a3d1f;--bg-g2:#3fd0c91a;--surface:#0f1a30;--surface-2:#16233d;--surface-3:#1e2d4b;--border:#2a3c60;--text:#eef4ff;--muted:#c3cde1;--faint:#a6b2c8;--accent:#ff8a3d;--accent-ink:#1a0b00;--accent-soft:#ff8a3d26;--accent-2:#3fd0c9;--accent-2-soft:#3fd0c924;--good:#5fe0a0;--good-soft:#5fe0a020;--warn:#ffd166;--warn-soft:#ffd16620;--danger:#ff6b81;--danger-soft:#ff6b8122}:root[data-theme=halloween]{--bg:#0d0710;--bg-g1:#ff751822;--bg-g2:#c073e81c;--surface:#170e1f;--surface-2:#211530;--surface-3:#2b1c3d;--border:#3a2650;--text:#f5e9da;--muted:#d9c2d6;--faint:#bfa6b8;--accent:#ff7518;--accent-ink:#1a0a00;--accent-soft:#ff751826;--accent-2:#c073e8;--accent-2-soft:#9c4dcc24;--good:#7ccf5a;--good-soft:#7ccf5a20;--warn:#e0c542;--warn-soft:#e0c54220;--danger:#ff5d6c;--danger-soft:#ff3b4d22}:root[data-contrast=high]{--bg:#000;--bg-g1:transparent;--bg-g2:transparent;--surface:#000;--surface-2:#1a1a1a;--surface-3:#262626;--border:#bdbdbd;--text:#fff;--muted:#f0f0f0;--faint:#e0e0e0}@media (prefers-contrast:more){:root:not([data-contrast=normal]){--bg:#000;--bg-g1:transparent;--bg-g2:transparent;--surface:#000;--surface-2:#1a1a1a;--surface-3:#262626;--border:#bdbdbd;--text:#fff;--muted:#f0f0f0;--faint:#e0e0e0}}:root[data-contrast=high] .card,:root[data-contrast=high] button,:root[data-contrast=high] input,:root[data-contrast=high] select{border-width:2px}:root[data-contrast=high] body{font-weight:500}.edition-head h1+p.muted,section>h1+p.muted,.card>h2+p.muted{font-family:var(--font-body);color:var(--muted);font-size:.8rem;font-weight:500}.state.empty{border:1px dashed var(--border);border-radius:var(--radius-sm);text-align:center;align-items:center;margin:16px;padding:24px 18px}.state.empty .state-title{font-family:var(--font-display);font-weight:600}.state.error-state>div[role=alert]{background:var(--danger-soft);border:1px solid var(--danger);border-radius:var(--radius-sm);padding:12px 14px}details summary{min-height:44px;font-family:var(--font-display);align-items:center;gap:8px;font-size:1rem;font-weight:600;list-style:none;display:flex}details summary::-webkit-details-marker{display:none}details summary:before{content:"▸";color:var(--accent-2);font-family:var(--font-body)}details[open] summary:before{content:"▾"}.edition-head{background:linear-gradient(160deg, var(--accent-soft), transparent 55%), var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:14px 16px 0;padding:18px}.edition-head h1{letter-spacing:-.02em;font-size:1.5rem;font-weight:800}.card .checkins,.card .points,.card .members,.card .reviewed{padding-left:0}.card .checkins li+li,.card .points li+li,.card .members li+li{margin-top:0}.eyebrow{font-family:var(--font-body);letter-spacing:.16em;text-transform:uppercase;color:var(--accent-2);margin:0 0 6px;font-size:.75rem;font-weight:700}.hero{background:linear-gradient(160deg, var(--accent-soft), transparent 55%), var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:0 0 14px;padding:20px 18px}.hero h1{letter-spacing:-.02em;overflow-wrap:break-word;font-size:clamp(1.1rem,9vw,1.6rem);font-weight:800}.hero .where{font-family:var(--font-body);color:var(--muted);margin:0 0 16px;font-size:.8rem;font-weight:700}.count{flex-wrap:wrap;gap:10px;display:flex}.cu{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);text-align:center;min-width:76px;padding:11px 15px}.cu b{font-family:var(--font-mono);color:var(--accent);font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700;line-height:1;display:block}.cu span{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:5px;font-size:.75rem;font-weight:700;display:block}.statline{font-family:var(--font-body);color:var(--muted);margin:0;font-size:.8rem;font-weight:700}.hero.hero-compact{flex-direction:column;align-items:flex-start;gap:4px;margin-bottom:10px;padding:12px;display:flex}.hero-compact .hero-line{letter-spacing:-.01em;overflow-wrap:break-word;min-width:0;font-size:1.25rem;font-weight:600;line-height:1.1}.hero-compact h1{font-size:inherit;font-weight:inherit;line-height:inherit;margin:0;display:inline}.hero-compact .hero-dates{color:var(--muted);font-weight:600}.hero-compact .count{gap:6px}.hero-compact .cu{align-items:baseline;gap:2px;min-width:0;padding:4px 8px;display:flex}.hero-compact .cu b{font-size:1rem;display:inline}.hero-compact .cu span{letter-spacing:.04em;text-transform:none;margin:0;display:inline}.home-affil{margin:-4px 0 10px;font-size:.75rem}.app-affil{text-align:center;margin:8px 16px 16px;font-size:.75rem}button.home-nextup{text-align:left;background:var(--surface);overflow-wrap:anywhere;flex-direction:column;align-items:flex-start;gap:2px;width:100%;min-height:48px;margin:0 0 8px;padding:10px 12px;display:flex}.home-nextup-k{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:.75rem}.home-nextup strong{font-family:var(--font-display);font-size:1rem}.home-checkins li{line-height:1.35}.home-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 12px;display:grid}@media (width<=300px){.home-tiles{grid-template-columns:minmax(0,1fr)}}button.home-tile{text-align:left;background:var(--surface);overflow-wrap:anywhere;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;min-width:0;min-height:56px;padding:10px 12px;display:flex}.home-tile-title{font-size:.9rem;font-weight:700}.home-tile-line{color:var(--muted);font-size:.8rem}.quickgrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}@media (width<=300px){.quickgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=240px){.quickgrid{grid-template-columns:minmax(0,1fr)}}button.qa{background:var(--surface);text-align:center;overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto;isolation:isolate;border-color:#0000;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-width:0;min-height:76px;padding:10px 4px;font-size:.8rem;line-height:1.2;display:flex;position:relative}button.qa:not([class*=checkin-tile-]):before,button.qa:not([class*=checkin-tile-]):after{content:"";border-radius:inherit;background:var(--logo-ring);pointer-events:none;-webkit-mask-composite:xor;padding:2px;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}button.qa:after{filter:blur(5px);opacity:.45;z-index:-1}:root[data-contrast=high] button.qa{border-color:var(--text)}:root[data-contrast=high] button.qa:before,:root[data-contrast=high] button.qa:after{display:none}button.qa span{font-size:1.3rem;line-height:1}.empty-box{border:1px dashed var(--border);border-radius:var(--radius-sm);text-align:center;flex-direction:column;align-items:center;gap:10px;padding:16px;display:flex}.empty-box p{margin:0}.card>h2+p.muted{margin:-8px 0 0}.lvtag{font-family:var(--font-body);margin-left:8px;font-size:.75rem;font-weight:700;display:inline-block}.lvtag.lv-must{color:var(--must)}.lvtag.lv-maybe{color:var(--maybe)}.lvtag.lv-skip{color:var(--faint)}.stchip{border-radius:999px;padding:1px 8px;font-weight:700;display:inline-block}.stchip.lv-must{background:var(--must);color:#06140e}.stchip.lv-maybe{background:var(--maybe);color:#1a1000}.stchip.lv-skip{color:var(--faint);border:1px solid var(--faint);background:0 0}.clash-badge{color:#fff;background:#8a0f1f;border-radius:4px;padding:0 4px;font-size:.75rem;font-weight:700;line-height:1.3;display:inline-block}.lvlegend{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px 14px;padding-top:0;padding-bottom:10px;font-size:.8rem;display:flex}.lvlegend span{align-items:center;gap:5px;display:inline-flex}.lvlegend .dot{border-radius:50%;flex:none;place-items:center;width:18px;height:18px;font-size:.65rem;font-style:normal;font-weight:800;display:inline-grid}.lvlegend .dot.lv-must{background:var(--must);color:#06140e}.lvlegend .dot.lv-maybe{background:var(--maybe);color:#1a1000}.lvlegend .dot.lv-skip{color:var(--faint);border:1px solid var(--faint);background:0 0}.lvlegend .dot.clash-key{background:var(--must);color:#8a0f1f;border:2px dashed #8a0f1f;font-size:.6rem}button.crew-going{border:1px dashed var(--border);width:100%;min-height:44px;color:var(--muted);text-align:left;background:0 0;border-radius:999px;align-items:center;gap:6px;margin-top:6px;padding:4px 8px 4px 4px;font-size:.85rem;font-weight:600;display:flex}.crew-going .tfav{white-space:nowrap;margin-left:auto;font-size:.75rem}.settotals{flex-wrap:wrap;align-items:center;gap:6px 10px;margin-top:6px;display:flex}.settotals button.crew-going{flex:auto;width:auto;margin-top:0;padding:4px 12px}.settotals .everyone{color:var(--muted);white-space:nowrap;font-size:.85rem;font-weight:600}.scrim{z-index:50;background:#0000008c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.scrim.scrim-safety{z-index:75}.sheet{overscroll-behavior:contain;width:min(560px,100%);max-height:85dvh;padding:20px 18px calc(24px + env(safe-area-inset-bottom));background:var(--surface);border:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;border-bottom:0;animation:.2s sheetin;overflow-y:auto;box-shadow:0 -12px 34px -12px #0009}@keyframes sheetin{0%{opacity:0;transform:translateY(24px)}}.scrim.kb{padding-bottom:var(--kb,0px)}.scrim.kb .sheet{max-height:min(85dvh, calc(100dvh - var(--kb,0px) - 12px));padding-bottom:0}.sheet-foot{z-index:1;padding:10px 0 calc(16px + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--border);margin-top:12px;position:sticky;bottom:0}.scrim.kb-open .sheet-foot{padding-bottom:12px}.pick-chip{border:1px solid var(--border);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:100%;margin:0;padding:6px 10px;display:block;overflow:hidden}.sheethead{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px;display:flex}.sheet h2{margin:0 0 4px;font-size:1.2rem}.ssub{font-family:var(--font-body);color:var(--muted);margin:0;font-size:.8rem;font-weight:700}.minihead{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:14px 0 8px;font-size:.75rem;font-weight:700}.wg-must .minihead{color:var(--must)}.wg-maybe .minihead{color:var(--maybe)}.whol{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.whop{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;align-items:center;gap:8px;padding:6px 12px 6px 6px;font-weight:600;display:inline-flex}.avwrap{text-align:center;align-items:center}.avstage{max-width:100%;height:auto;display:block}.avwrap .an{font-family:var(--font-display);font-size:1.1rem;font-weight:600}.avwrap .al{font-family:var(--font-body);color:var(--muted);margin-top:-8px;font-size:.75rem;font-weight:700}.xpwrap{text-align:left;width:100%}.xpwrap .xt{font-family:var(--font-mono);color:var(--muted);justify-content:space-between;margin-bottom:6px;font-size:.75rem;font-weight:700;display:flex}.bar{background:var(--surface-3);border-radius:999px;height:8px;overflow:hidden}.bar i{background:var(--accent);border-radius:999px;min-width:8px;height:100%;display:block}.pill-preview{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.06em;background:var(--warn-soft);color:var(--warn);white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:.75rem;font-weight:700}.preview-note{color:var(--muted);margin:0;font-size:.85rem}.edit-look{text-align:left;width:100%}.edit-look summary{justify-content:center}.swatches{border:0;flex-wrap:wrap;gap:6px;margin:10px 0 0;padding:0;display:flex}.swatches legend{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:6px;padding:0;font-size:.75rem;font-weight:700}.swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;place-items:center;width:44px;height:44px;display:inline-grid;position:relative}.swatch .dot{border:1px solid var(--border);border-radius:50%;width:32px;height:32px}.swatch:has(input:checked){border-color:var(--accent)}.swatch:has(input:focus-visible){outline:2px solid var(--accent-2);outline-offset:2px}.lookdot{border:1px solid var(--border);vertical-align:middle;border-radius:50%;flex:none;display:inline-block}.char-editor .tabs{margin:10px 0}.chiprow{flex-wrap:wrap;gap:6px;margin:4px 0 12px;display:flex}.chiprow button{background:var(--surface-2);border-radius:999px;padding:6px 14px;font-size:.85rem}.chiprow button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:700}.card .badge-grid,.badge-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.badge-tile{text-align:center;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;align-items:center;gap:4px;padding:14px 10px;display:flex}.badge-tile .bi{font-size:1.75rem;line-height:1}.badge-tile.locked .bi{filter:grayscale();opacity:.5}.badge-tile .bn{font-size:.9rem;font-weight:700}.badge-tile .bd{color:var(--muted);font-size:.8rem}.badge-tile .bl{font-family:var(--font-body);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:700}.kandi-amt{font-family:var(--font-mono);font-size:1rem;font-weight:700}.account-embedded{margin-top:24px}.account-embedded>h2{margin-bottom:4px;font-size:1.2rem}.card .badge-grid li+li{margin-top:0}.artist-grid{grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.agradwrap{border-radius:calc(var(--radius-sm) + 2.5px);padding:2.5px}.acard{text-align:center;background:var(--surface-2);border-radius:var(--radius-sm);border:1px solid #0000;flex-direction:column;align-items:center;gap:2px;width:100%;height:100%;padding:8px 6px;font-weight:400;display:flex}.acard.unseen{border-style:dashed}.acard{text-align:center;flex-direction:column;justify-content:flex-start;align-items:center;gap:4px;padding:8px 5px 10px}.acard .atext{flex-direction:column;align-items:center;gap:3px;width:100%;min-width:0;display:flex;container-type:inline-size}.acard .wmark{overflow-wrap:normal}.acard .ameta{line-height:1.2;display:block}.acard .ameta .gtag{display:inline}.acard .ameta .gtag+.gtag:before{content:" · "}.trophy{color:var(--faint);flex:none;display:block}.trophy-legend{flex-wrap:wrap;align-items:center;gap:4px 14px;display:flex}.trophy-legend .tl{align-items:center;gap:3px;font-weight:700;display:inline-flex}.trophy.bronze{color:var(--tier-bronze)}.trophy.silver{color:var(--tier-silver)}.trophy.gold{color:var(--tier-gold)}.trophy.plat{color:var(--tier-plat)}.emark{background:var(--surface);border:2.5px solid var(--border);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.2rem;display:flex}.emark.big{flex:none;width:56px;height:56px;font-size:1.6rem}.bronze .emark,.emark.bronze{border-color:var(--tier-bronze)}.silver .emark,.emark.silver{border-color:var(--tier-silver)}.gold .emark,.emark.gold{border-color:var(--tier-gold)}.plat .emark,.emark.plat{border-color:var(--tier-plat)}.wmark{font-family:var(--font-display);text-transform:uppercase;letter-spacing:-.01em;overflow-wrap:anywhere;max-width:100%;font-size:.85rem;font-weight:700;line-height:1.15}.artist-sheet-head .wmark{font-size:1.1rem}.acard.unseen .wmark{color:var(--faint)}.acard.bronze:not(.unseen) .wmark{color:var(--tier-bronze)}.acard.silver:not(.unseen) .wmark{color:var(--tier-silver)}.acard.gold:not(.unseen) .wmark{color:var(--tier-gold)}.acard.plat:not(.unseen) .wmark{color:var(--tier-plat)}.cc{font-family:var(--font-mono);font-size:1.1rem;font-weight:700}.bl{font-family:var(--font-body);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:700}.acard .gtag{color:var(--faint);font-size:.75rem;line-height:1.2}.acard .emark{border-width:2px;flex:none;width:34px;height:34px;font-size:1.05rem}.acard .bl{letter-spacing:.02em}.acard .arow{justify-content:center;align-items:center;gap:4px;display:flex}.acard .cc{font-size:.9rem}.acard .pickchip{font:700 .75rem/1.4 var(--font-body);padding:0 7px;font-weight:700}.acard .fplay{margin-top:0;position:absolute;top:6px;right:6px}.artist-sheet-head{align-items:center;gap:14px;margin-bottom:4px;display:flex}.artist-sheet-head .cc{margin-top:2px;font-size:1.3rem}.acard{position:relative}.acard .fests{font:700 .75rem/1.4 var(--font-body);letter-spacing:.06em;color:var(--bg);background:var(--accent-2);border-radius:999px;padding:0 6px;font-weight:700}.acard .fplay{flex-wrap:wrap;justify-content:center;gap:3px;margin-top:4px;display:flex}.acard .fdot{background:var(--accent-2);border-radius:50%;width:6px;height:6px;display:block}.artist-filters{flex-wrap:wrap;gap:8px;margin-bottom:12px}.artist-sets{flex-direction:column;gap:8px;margin:0 0 10px;padding:0;list-style:none;display:flex}.artist-sets li{background:var(--surface-2);border-radius:var(--radius-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:.875rem;display:flex}.artist-sets li.estimated{outline:1.5px dashed color-mix(in srgb, var(--accent-2) 70%, transparent);outline-offset:2px}.map-disclaimer{color:var(--warn);background:var(--warn-soft);border:1px solid var(--warn);border-radius:var(--radius-sm);margin:0 0 12px;padding:8px 12px;font-size:.85rem}.offline-status{margin:0 0 8px}.offline-status>p[role=status]{margin:4px 0 0}.offline-status>p[role=status]:empty{margin:0}.offline-line{border:1px solid var(--border);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:8px;padding:2px 4px 2px 12px;display:flex}.offline-line p{min-width:0;color:var(--good);margin:0}.offline-line.missing{border-color:var(--danger);background:var(--danger-soft)}.offline-line.missing p{color:var(--danger)}.offline-line button{flex:none}.offline-tip{flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:6px;display:flex}.offline-tip>p{flex:100%;margin:0}.offline-tip [hidden]{display:none}.maplegend-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;margin:8px 0;display:grid}.maplegend-strip button{text-align:center;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;min-height:52px;padding:4px 1px;font-size:.75rem;line-height:1.15;display:flex}@media (width<=420px){.card.festmap{padding-left:12px;padding-right:12px}}.maplegend-strip .lg-all{color:var(--accent-2);font-weight:700}.maplegend-strip button[aria-pressed=false],.maplegend-side .lg-row[aria-pressed=false]{color:var(--muted);border-style:dashed}:is(.maplegend-strip button,.maplegend-side .lg-row)[aria-pressed=false] .lg-name{text-decoration:line-through;text-decoration-thickness:2px}:is(.maplegend-strip button,.maplegend-side .lg-row)[aria-pressed=false] .lg-badge{opacity:.3}:is(.maplegend-strip button,.maplegend-side .lg-row)[data-focus=true]{box-shadow:inset 0 0 0 3px var(--accent-2);font-weight:700}.maplegend-strip .lg-hide{color:var(--danger);border-style:dashed;font-weight:700}.maplegend-side .lg-hide{color:var(--danger);border-style:dashed;padding-left:38px;font-weight:700}.lg-badge{flex:none;display:block}.festmap-body.wide{grid-template-columns:minmax(0,1fr) 280px;align-items:stretch;gap:12px;display:grid}.festmap-body.wide .festmap-canvas{height:clamp(440px,100dvh - 360px,680px)}.festmap-hint{color:#fff;text-align:center;pointer-events:none;background:#0a0614db;border-radius:10px;max-width:80%;margin:0;padding:10px 14px;font-size:.9375rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.maplegend-side{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);flex-direction:column;gap:6px;padding:10px;display:flex;overflow:hidden;container-type:size}.maplegend-side .lg-head{color:var(--muted);margin:0;font-size:.75rem;font-weight:700}.maplegend-side .lg-rows{flex-direction:column;gap:2px;display:flex}.maplegend-side .lg-row{text-align:left;background:0 0;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-height:44px;padding:3px 8px;font-size:.875rem;line-height:1.2;display:grid}.maplegend-side .lg-text{flex-direction:column;min-width:0;display:flex}.maplegend-side .lg-count{font-family:var(--font-mono);color:var(--muted);font-size:.75rem;font-weight:700}.maplegend-side .lg-kinds{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;font-weight:500;line-height:1.3;text-decoration:none;overflow:hidden}.maplegend-side .lg-all{min-height:44px;margin-top:auto}.maplegend-side .lg-note{margin:0;font-size:.75rem;line-height:1.3}@container (height<=580px){.maplegend-side .lg-kinds{display:none}}@media (width>=900px){.festmap-wide{width:min(1120px,100vw - 48px);margin-inline:calc(50% + min(1120px,100vw - 48px)/-2)}}.placesheet{flex-direction:column;gap:10px;display:flex}.placesheet-plans h3{margin:0 0 4px}.placesheet-plans ul{flex-direction:column;gap:6px;margin:0;padding-left:1.1em;display:flex}.famplans{border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;gap:6px;margin:12px 0 4px;padding:10px 12px;display:flex}.famplans :is(h2,h3,h4){margin:0;font-size:1rem}.famplans :is(h3,h4).small{color:var(--muted);margin-top:4px;font-size:.875rem}.famplans>p{margin:0}.famplan-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.famplan{align-items:center;gap:6px;display:flex}.famplan-open{text-align:left;background:0 0;flex:1;align-items:center;gap:10px;min-width:0;padding:6px 10px;display:flex}.famplan-text{overflow-wrap:anywhere;flex-direction:column;min-width:0;display:flex}.famplan-who,.famkey{min-width:32px;height:22px;color:var(--text);background:var(--bg);border:2px solid #ffc94d;border-radius:11px;flex:none;justify-content:center;align-items:center;padding:0 8px;font-size:.75rem;font-weight:800;display:inline-flex}.famplan.now .famplan-who,.famkey.now{color:#1a0a12;background:#ffc94d}.famplan.set .famplan-who,.famkey.auto{background:var(--bg);color:var(--text);border-style:dashed}.famplan-earlier summary{min-height:44px;font-size:.875rem}.famplan{flex-wrap:wrap}.going{flex-wrap:wrap;align-items:center;gap:4px 8px;margin-top:4px;display:flex}.famplan>.going{margin:0 0 4px 10px}.going-btn{min-height:44px;padding:6px 12px;font-size:.875rem}.going-btn.on{background:var(--accent-soft);border-color:var(--accent);color:var(--text)}.mp-when select{flex:1 1 0;min-width:0}.mp-when .mp-time{flex-grow:1.4}.placesheet p{margin:0}.placesheet-head{align-items:center;gap:12px}.fmap{aspect-ratio:1;border-radius:var(--radius);touch-action:none;width:100%;max-width:520px;margin:0 auto 72px;position:relative;overflow:hidden}.fmap.fullscreen{aspect-ratio:auto;max-width:none;height:100vh;margin-bottom:0}.fmapcontent{transform-origin:0 0;will-change:transform;position:absolute;inset:0}.fmapcontent>svg{width:100%;height:100%;position:absolute;inset:0}.mapicon{flex:none;display:block;position:static;overflow:visible}.fzone{min-width:44px;min-height:44px;font-family:var(--font-mono);color:var(--text);text-align:center;background:0 0;border:0;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:2px;font-size:.75rem;font-weight:700;line-height:1.1;display:flex;position:absolute;transform:translate(-50%,-50%)}.fzone>span:first-child{font-size:1.3rem}.fzn{white-space:normal;overflow-wrap:break-word;max-width:100px;font-size:.68rem;display:block}button.fzone:hover:not(:disabled){background:color-mix(in srgb, var(--text) 8%, transparent)}.fzone.off{color:var(--muted)}.fzone.pin{border:2px solid #0000;border-radius:50%;min-width:44px;min-height:44px}.fzone.pin>span:first-child{font-size:1rem}.fzone.stagepin{min-width:48px;min-height:48px}.fzone.stagepin.main{min-width:60px;min-height:60px}.fzone.stagepin>span:first-child{font-size:1.5rem}.fnow{font-family:var(--font-mono);color:var(--accent-2);background:var(--surface);white-space:nowrap;border-radius:999px;padding:1px 6px;font-size:.65rem;font-weight:700}.fzone.meetpin{background:color-mix(in srgb, var(--surface) 70%, transparent);border-color:#fff}.fzone.meetpin.fallback{border-style:dashed}.stagepulse{transform-origin:50%;animation:2s ease-out infinite stagepulse}@keyframes stagepulse{0%{opacity:.9;transform:scale(.85)}to{opacity:0;transform:scale(1.25)}}.mapnorth{font-family:var(--font-mono);color:var(--text);background:color-mix(in srgb, var(--surface) 75%, transparent);border-radius:var(--radius-sm);pointer-events:none;padding:4px 8px;font-size:.75rem;font-weight:700;position:absolute;top:10px;left:10px}.maptools-float{flex-direction:column;gap:6px;display:flex;position:absolute;bottom:10px;right:10px}.maptools-float .icon{background:color-mix(in srgb, var(--surface) 85%, transparent);border:1px solid var(--border);width:44px;height:44px}.mapkey{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.mapkey li{align-items:center;gap:10px;display:flex}.festmap-view.fullscreen{z-index:40;background:var(--bg);padding:12px;padding-top:max(12px, env(safe-area-inset-top));padding-bottom:max(12px, env(safe-area-inset-bottom));position:fixed;inset:0;overflow:auto}.festmap-view.fullscreen .festmap-extras,.festmap-view.fullscreen .maplegend-strip:not(.scroll),.festmap-view.fullscreen .festmap-top{display:none}.festmap-stage{position:relative}.festmap-north{background:color-mix(in srgb, var(--surface) 85%, transparent);border:1px solid var(--border);pointer-events:none;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:34px;height:34px;font-size:.7rem;font-weight:800;line-height:1;display:flex;position:absolute;top:8px;right:8px}.festmap-scale{pointer-events:none;position:absolute;bottom:8px;left:8px}.festmap-canvas[data-touch=active]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}button.festmap-done{z-index:2;min-height:36px;color:var(--accent-ink);background:var(--accent);border:0;border-radius:999px;padding:4px 14px;font-size:.875rem;font-weight:700;position:absolute;top:8px;right:50px}.festmap-view.map-first button.festmap-done{top:56px}.festmap-scalebar{border:2px solid var(--text);height:8px;text-shadow:0 0 3px var(--bg);white-space:nowrap;border-top:0;justify-content:center;align-items:flex-start;padding:0 2px;font-size:.65rem;font-weight:700;line-height:1;display:flex;transform:translateY(-2px)}.boot-splash{min-height:100dvh;color:var(--text);font-family:var(--font-display);flex-direction:column;justify-content:center;align-items:center;gap:8px;font-size:1.4rem;font-weight:800;display:flex}.boot-splash img{width:96px;height:96px}.boot-splash p{margin:0}.boot-splash .boot-splash-sub{font-family:var(--font-body);color:var(--muted);font-size:.9rem;font-weight:400}.placelist{flex-direction:column;gap:6px;display:flex}.placelist-rows{flex-direction:column;gap:4px;max-height:260px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.placelist-rows button{text-align:left;border:1px solid var(--border);border-radius:var(--radius-sm);background:0 0;align-items:center;gap:10px;width:100%;padding:6px 10px;display:flex}.placelist-rows button>span:last-child{text-align:right;margin-left:auto}.placelist-name{font-weight:600}.placelist-note{color:var(--accent-2)}.mapbuilder{flex-direction:column;gap:10px;display:flex}.mapbuilder-image{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);max-height:70vh;overflow:auto}.mapbuilder-canvas{cursor:crosshair;min-width:100%;position:relative}.mapbuilder-canvas img{-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.mapbuilder-canvas svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.mapbuilder-list{flex-direction:column;gap:4px;max-height:240px;margin:6px 0 0;padding:0;list-style:none;display:flex;overflow-y:auto}.mapbuilder-list li{align-items:center;gap:8px;display:flex}.mapbuilder-list li>:nth-child(2){margin-left:auto}.mapbuilder-list input{flex:1;min-width:0}.festmap-view.fullscreen .festmap-canvas{height:calc(100dvh - 110px)}.festmap-view.fullscreen button{min-width:44px}.festmap-view.map-first .festmap-canvas{height:calc(100dvh - 262px - var(--banner-h,0px) - env(safe-area-inset-bottom));min-height:200px}.festmap-view.map-first.fullscreen .festmap-canvas{height:calc(100dvh - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}.festmap-view.map-first.fullscreen .festmap-main>.row.wrap{z-index:3;left:12px;right:12px;bottom:max(12px, env(safe-area-inset-bottom));flex-wrap:wrap;justify-content:space-between;gap:5px;padding:0;position:absolute}.festmap-view.map-first.fullscreen .festmap-notice,.festmap-view.map-first.fullscreen .festmap-scale{bottom:68px}.festmap-view.map-first.fullscreen .festmap-main>.row.wrap>button{background:color-mix(in srgb, var(--surface) 92%, transparent);flex:0 auto;min-width:44px;padding-inline:9px;font-size:.8125rem}.festmap-view.map-first .festmap-top:not(:has(*)){display:none}.festmap-view.map-first{margin:0 -16px}.festmap-view.map-first .festmap-canvas{border-left:0;border-right:0;border-radius:0}.festmap-view.map-first.fullscreen{margin:0}.festmap-view.map-first .festmap-stage{margin-bottom:0}.festmap-view.map-first .festmap-main>.row.wrap{padding:4px 16px 0}.festmap-view.map-first .festmap-extras{padding:0 16px}.maplegend-strip.scroll{z-index:2;overscroll-behavior-x:contain;scrollbar-width:none;gap:6px;margin:0;padding:2px;display:flex;position:absolute;top:4px;left:4px;right:4px;overflow-x:auto}.maplegend-strip.scroll::-webkit-scrollbar{display:none}.maplegend-strip.scroll button{white-space:nowrap;background:color-mix(in srgb, var(--surface) 90%, transparent);flex-direction:row;flex:none;gap:5px;min-width:44px;min-height:44px;padding:4px 10px;font-size:.8125rem}.festmap-view.map-first .festmap-north{top:56px}.festmap-notice{z-index:1;text-align:right;max-width:58%;color:var(--text);background:color-mix(in srgb, var(--surface) 85%, transparent);border:1px solid var(--border);pointer-events:none;border-radius:8px;margin:0;padding:3px 8px;font-size:.6875rem;line-height:1.25;position:absolute;bottom:8px;right:8px}.festmap-next{z-index:2;left:8px;right:8px;bottom:var(--next-bottom,38px);border:1px solid var(--accent-2);min-height:44px;color:var(--text);background:color-mix(in srgb, var(--surface) 95%, transparent);border-radius:12px;align-items:stretch;display:flex;position:absolute}.festmap-next-go{min-width:0;min-height:44px;color:inherit;font:inherit;text-align:left;background:0 0;border:0;border-radius:12px 0 0 12px;flex:1;align-items:center;gap:8px;margin:0;padding:4px 6px 4px 10px;font-size:.75rem;line-height:1.25;display:flex}.festmap-next-tag{letter-spacing:.04em;text-transform:uppercase;color:var(--accent-2);flex:none;font-size:.625rem;font-weight:800}.festmap-next-line{-webkit-line-clamp:3;-webkit-box-orient:vertical;min-width:0;display:-webkit-box;overflow:hidden}.festmap-next-x{border:0;border-left:1px solid var(--border);width:44px;min-height:44px;color:inherit;background:0 0;border-radius:0 12px 12px 0;flex:none;margin:0;padding:0;font-size:1.25rem;line-height:1}.festmap-next-go:focus-visible,.festmap-next-x:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.festmap-head{margin-top:12px}.scrim.peek{pointer-events:none;background:0 0}.scrim.peek .sheet{pointer-events:auto;max-height:40dvh;padding-top:4px}.scrim.peek .sheet.expanded{max-height:85dvh}.sheet-grab{touch-action:none;background:0 0;border:0;width:100%;min-height:44px;margin:0 0 -8px;padding:0;display:block}.sheet-grab span{background:var(--border);border-radius:3px;width:40px;height:5px;margin:0 auto;display:block}.placesheet-short{flex-direction:column;gap:8px;display:flex}.placesheet-short p{margin:0}@media (prefers-reduced-motion:reduce){.scrim.peek .sheet{animation:none}}:root[data-contrast=high] .stagepulse{display:none}:root[data-contrast=high] .fzone.pin,:root[data-contrast=high] .fzone.stagepin{border-width:3px}:root[data-contrast=high] .fnow{color:#000;background:#fff}.legacyhero .big{font-family:var(--font-display);margin:0 0 8px;font-size:1.4rem;font-weight:800;line-height:1.15}.legacyhero .big em{color:var(--accent);font-style:normal}.legacyhero p:last-child{margin:0}.card .miles,.miles{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.card .miles li+li{margin-top:0}.mile{font-family:var(--font-body);border:1px dashed var(--border);color:var(--muted);border-radius:999px;padding:6px 12px;font-size:.8rem;font-weight:700}.mile b{color:var(--text)}.quests{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.quest{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:flex-start;gap:12px;padding:14px;display:flex}.quest .qi{font-size:1.6rem;line-height:1}.quest .qb{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.quest .qp{font-family:var(--font-body);color:var(--muted);font-size:.75rem;font-weight:700}.quest .qx{font-family:var(--font-mono);color:var(--accent-2);white-space:nowrap;font-size:.8rem;font-weight:700}.social-links{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.social-links a{border:1px solid var(--border);min-height:44px;color:var(--text);border-radius:999px;align-items:center;padding:0 16px;text-decoration:none;display:inline-flex}.social-links a:hover,.social-links a:focus-visible{border-color:var(--accent)}.gridouter{--slot-h:1rem;margin:8px 12px 0;container-type:inline-size}.gridhead{top:calc(var(--bar-h,0px) + env(safe-area-inset-top,0px));z-index:5;border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:var(--surface-2);position:sticky;overflow:hidden}.gridwrap{background:var(--surface);border-radius:0 0 var(--radius-sm) var(--radius-sm);overscroll-behavior-x:contain;scrollbar-width:none;border:0;overflow-x:auto}.gridwrap::-webkit-scrollbar{display:none}.gridhead::-webkit-scrollbar{display:none}.gridwrap .snap{scroll-snap-align:start;width:1px;height:1px}.tgrid{display:grid;position:relative}@media (width<=600px){.gridwrap{scroll-snap-type:x mandatory;scroll-padding-left:2.75rem}.tgrid[data-many]{grid-template-columns:2.75rem repeat(var(--stages), calc((100cqw - 2.75rem) / 2.4))!important}}.ghead{z-index:4;background:var(--surface-2);border-bottom:1px solid var(--border);font-family:var(--font-display);overflow-wrap:break-word;align-items:center;padding:4px 6px;font-size:.75rem;font-weight:600;line-height:1.15;display:flex;position:sticky;top:0}.ghead.corner{z-index:5;left:0}.ghead .gs,.tick{font-family:var(--font-mono);color:var(--muted);font-size:.75rem;font-weight:700}.ghead-stack{flex-direction:column;gap:1px;min-width:0;display:flex}.ghead .gg{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);overflow-wrap:break-word;font-size:.58rem;font-weight:700}.tick{z-index:3;background:var(--surface);border-top:1px solid var(--border);text-align:right;font-variant-numeric:tabular-nums;padding:2px 4px 0 0;position:sticky;left:0}.rule{border-top:1px solid var(--border);pointer-events:none}button.gset{z-index:1;text-align:left;background:var(--surface-2);border-radius:var(--radius-sm);flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:1px;min-width:0;min-height:0;margin:2px;padding:3px 5px;font-weight:400;display:flex;position:relative;overflow:hidden}button.gset>*{flex-shrink:0}.gset .nm{font-family:var(--font-display);overflow-wrap:normal;word-break:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.875rem;font-weight:700;line-height:1.15;display:-webkit-box;overflow:hidden}.gset .nm.fit-1{letter-spacing:-.01em;font-size:.8125rem}.gset .nm.fit-2{letter-spacing:-.02em;font-size:.75rem}.gset .nm.fit-wrap{overflow-wrap:anywhere}.gset .nm{align-self:stretch;min-width:0}button.gset.no-time>.tmrow>.tm{display:none}.gset .gmeta{flex-wrap:wrap;align-items:center;gap:4px;display:flex}button.gset{container-type:size}@container (height<=3.6rem){.gset .nm{-webkit-line-clamp:1}}button.gset>.tmrow{flex-wrap:wrap;flex-shrink:1;align-items:center;gap:1px 6px;min-height:0;display:flex;overflow:hidden}.gset .tm .est{font-size:.75rem}.gset .tm,.gset .gcrew{font-family:var(--font-mono);color:var(--muted);font-variant-numeric:tabular-nums;font-size:.75rem;font-weight:700}.gset .ss{font-family:var(--font-body);color:var(--accent-2);font-size:.75rem;font-weight:700}.gset .lvtag{margin-left:0}.gset.lv-must{background:var(--must);border-color:var(--must);color:#06140e}.gset.lv-maybe{background:var(--maybe);border-color:var(--maybe);color:#1a1000}.gset.lv-must .tm,.gset.lv-must .gcrew,.gset.lv-must .ss,.gset.lv-must .lvtag,.gset.lv-maybe .tm,.gset.lv-maybe .gcrew,.gset.lv-maybe .ss,.gset.lv-maybe .lvtag{color:inherit}.gset.lv-skip{border-color:var(--border);background:0 0}.gset.lv-skip .nm,.gset.lv-skip .tm,.gset.lv-skip .gcrew,.gset.lv-skip .lvtag{color:var(--faint)}.gset.clash,.gset.clash-est{box-shadow:none;border:2px dashed #8a0f1f}.gset.cancelled .nm{text-decoration:line-through}.themes{border:0;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin:0;padding:0;display:grid}.themes legend{margin-bottom:8px;padding:0;font-weight:600}.theme-opt{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);cursor:pointer;text-align:center;flex-direction:column;align-items:center;gap:6px;min-height:44px;padding:10px 6px;font-size:.85rem;font-weight:600;display:flex;position:relative}.theme-opt:has(input:checked){border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.theme-opt:has(input:focus-visible){outline:2px solid var(--accent-2);outline-offset:2px}.appear-display{width:100%;min-height:44px;margin-top:14px}.themes-locked{margin-top:14px}.theme-opt.locked{color:var(--muted)}.theme-price{font-family:var(--font-body);color:var(--accent-2);font-size:.75rem;font-weight:700}.theme-confirm{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);flex-direction:column;gap:8px;margin-top:10px;padding:12px;display:flex}.theme-opt .sw{border:1px solid var(--border);border-radius:999px;width:36px;height:20px}button.safebtn{white-space:nowrap;border-radius:999px;min-height:44px;padding:6px 8px;font-size:.85rem;font-weight:700}.topright{align-items:center;gap:6px;margin-left:auto;display:flex}@media (width<=300px){.top{position:relative}html{scroll-padding-top:0}.top .logo{font-size:min(1rem,8.4vw)}}.notice{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);align-items:flex-start;gap:10px;margin:0 0 14px;padding:12px 14px;display:flex}.notice p{margin:0;font-size:.85rem}.notice.good{background:var(--good-soft);border-color:var(--good)}.crisis{flex-direction:column;gap:8px;display:flex}a.cr{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);min-height:44px;color:var(--text);justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;text-decoration:none;display:flex}a.cr:hover{border-color:var(--good)}a.cr.urgent{border-color:var(--danger);background:var(--danger-soft)}.cr .crt{flex-direction:column;gap:2px;min-width:0;display:flex}.cr .cn2{font-size:.9rem;font-weight:700}.cr .cd2{color:var(--muted);font-size:.8rem}.cr .cnum{font-family:var(--font-mono);color:var(--good);white-space:nowrap;font-size:.95rem;font-weight:700}.cr.urgent .cnum{color:var(--danger);font-size:1.1rem}.sheet .minihead+p{margin-top:0}button.linkish{min-height:44px;padding:6px 12px;font-size:.85rem}.lost-steps{flex-direction:column;gap:16px;margin:0 0 14px;padding-left:1.4em;display:flex}.lost-steps>li::marker{color:var(--accent);font-family:var(--font-body);font-weight:700}.lost-steps h3{margin:0 0 8px;font-size:.95rem}.lost-steps p{margin:8px 0 0}.checklist{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.card .checklist li+li{margin-top:0}.checklist label.check{align-items:flex-start;padding:8px 0}.checklist .ckt{flex-direction:column;gap:2px;display:flex}.checklist .ckl{font-weight:600}.checklist input:checked+.ckt .ckl{color:var(--muted);text-decoration:line-through}.card .checklist{padding-left:0}.cksub{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:12px 0 0;font-size:.8rem}.subdock .seg button{white-space:nowrap;padding:6px 12px}:root[data-text-size] .subdock .seg button{white-space:normal;padding:6px 8px}button.cal{margin-top:6px}.edition-head{padding:12px 14px}.edition-head h1{margin-bottom:2px;font-size:1.2rem}.edition-head p{margin:2px 0 0}@media (width<=480px){.edition-head{margin-top:8px;padding:6px 12px}.filters.pad{gap:6px;padding-bottom:6px}.filters.pad select{flex:140px;min-width:0}.filters.pad .seg{padding:2px}}.card.nownext{border:2px solid var(--accent);gap:4px;margin:10px 0;padding:10px 14px}.nownext .nn1{flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-width:0;display:flex}.nownext .nnl{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);flex:none;margin:0;font-size:.75rem;font-weight:700}.nownext .nna{min-width:0;font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;flex:8em;font-size:1.1rem;font-weight:800;line-height:1.2;overflow:hidden}.nownext .pill-preview{margin-left:auto}.nownext .nns{color:var(--muted);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.85rem;display:-webkit-box;overflow:hidden}.nownext .nnm{color:var(--muted);overflow-wrap:anywhere;margin:2px 0 0;font-size:.85rem}.card .steps,.steps{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.card .steps li+li{margin-top:0}.steps li{align-items:center;gap:10px;min-height:44px;display:flex}.steps .stick{border:2px solid var(--border);border-radius:50%;flex:none;place-items:center;width:24px;height:24px;font-size:.8rem;font-weight:800;display:grid}.steps li.done .stick{border-color:var(--good);background:var(--good-soft);color:var(--good)}.steps li.done .slabel{color:var(--muted);text-decoration:line-through}.steps li{flex-wrap:wrap}.steps .slabel{overflow-wrap:break-word;flex:1 1 0;min-width:min(6em,100% - 34px)}.steps li>button{flex:none;margin-left:auto}.faq{flex-direction:column;gap:8px;margin-top:12px;display:flex}.fq{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:0 14px}.fq summary{font-family:var(--font-body);padding:10px 0;font-size:.95rem;font-weight:700}.fq[open] summary{color:var(--accent-2)}.fq p{margin:0 0 12px;font-size:.9rem}.sparkle-trail{z-index:25;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.bg-layer{z-index:-1;pointer-events:none;position:fixed;inset:0;overflow:hidden}.bg-canvas{z-index:-1;pointer-events:none;position:fixed;inset:0}.tex-noise{z-index:-1;pointer-events:none;opacity:.1;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");background-size:160px 160px;position:fixed;inset:0}.tex-fx{z-index:-1;pointer-events:none;position:fixed;inset:0}:root:not([data-theme]) .tex-fx,:root[data-theme=glitter] .tex-fx{background:linear-gradient(115deg,#0000 32%,#ffffff12 45%,#ff5fae18 50%,#ffb34718 55%,#0000 68%) 0 0/320% 100%;animation:11s linear infinite bg-sweep}:root[data-theme=neon] .tex-fx{background:repeating-linear-gradient(#39ff140c 0 1px,#0000 1px 3px);animation:3.4s steps(2,end) infinite bg-flick}:root[data-theme=neon] .tex-noise{opacity:.07}:root[data-theme=desert] .tex-fx{background:linear-gradient(#0000 60%,#e2703a1c)}:root[data-theme=desert] .tex-noise{opacity:.3;mix-blend-mode:soft-light}:root[data-theme=techno] .tex-fx{background:radial-gradient(95% 85% at 50% 45%,#0000 52%,#000000d9 100%)}:root[data-theme=techno] .tex-noise{opacity:.22}:root[data-theme=house] .tex-fx{background:radial-gradient(circle at 50% -10%,#e8b04b1f,#0000 55%),repeating-conic-gradient(at 50% -8%,#e8b04b0a 0deg 3deg,#0000 3deg 9deg)}:root[data-theme=house] .tex-noise{opacity:.16}:root[data-theme=dubstep] .tex-fx{background:radial-gradient(circle,#9fe81f14 1px,#0000 1.6px) 0 0/9px 9px,linear-gradient(#0000 70%,#7b3fe412)}:root[data-theme=dubstep] .tex-noise{opacity:.34}:root[data-theme=trap] .tex-fx{background:linear-gradient(100deg,#0000 35%,#c89b3c1c 47%,#ffffff14 50%,#8b5cf61c 53%,#0000 66%) 0 0/280% 100%;animation:14s linear infinite bg-sweep}:root[data-theme=trap] .tex-noise{opacity:.12}:root[data-theme=trance] .tex-fx{background-color:#0000;background-image:radial-gradient(60% 40% at 20% 15%,#6f9bff18,#0000 65%),radial-gradient(55% 45% at 85% 30%,#b98cff18,#0000 65%);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:200% 200%;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;animation:26s ease-in-out infinite alternate bg-drift}:root[data-theme=trance] .tex-noise{opacity:.06}:root[data-theme=halloween] .tex-fx{background:radial-gradient(circle at 50% 100%,#ff751826,#0000 55%),linear-gradient(#0000 55%,#c073e81a);animation:4.2s steps(3,end) infinite bg-flick}:root[data-theme=halloween] .tex-noise{opacity:.28}:root[data-theme=orlando] .tex-fx{background:radial-gradient(at 50% 110%,#3fd0c922,#0000 55%),linear-gradient(#0000 60%,#ff8a3d14)}@keyframes bg-sweep{0%{background-position:0 0}to{background-position:320% 0}}@keyframes bg-flick{0%,97%{opacity:1}98%{opacity:.72}to{opacity:1}}@keyframes bg-drift{0%{background-position:0 0}to{background-position:100% 60%}}@media (prefers-reduced-motion:reduce){.tex-fx{animation:none!important}}:root[data-theme=dubstep][data-flare=full] .card,:root[data-theme=dubstep][data-flare=full] .hero{position:relative;overflow:hidden}:root[data-theme=dubstep][data-flare=full] .card:after,:root[data-theme=dubstep][data-flare=full] .hero:after{content:"";background:repeating-linear-gradient(45deg,#9fe81f 0 9px,#141a13 9px 18px);height:4px;position:absolute;top:0;left:0;right:0}:root[data-theme=trap][data-flare=full] .card,:root[data-theme=trap][data-flare=full] .hero{box-shadow:inset 0 2px #c89b3c,inset 0 3px 10px -6px #fff6}:root[data-theme=neon][data-flare=full] .card,:root[data-theme=neon][data-flare=full] .hero{box-shadow:0 0 18px -6px #39ff1455,inset 0 0 0 1px #39ff1422}:root[data-theme=techno][data-flare=full] .card{position:relative}:root[data-theme=techno][data-flare=full] .card:before{content:"";border-top:2px solid #fff;border-left:2px solid #fff;width:14px;height:14px;position:absolute;top:-1px;left:-1px}:root[data-theme=trance][data-flare=full] .card,:root[data-theme=trance][data-flare=full] .hero{box-shadow:0 0 34px -14px #b98cff88}:root[data-theme=house][data-flare=full] .card{box-shadow:inset 0 1px #e8b04b55}:root[data-theme=halloween][data-flare=full] .card,:root[data-theme=halloween][data-flare=full] .hero{box-shadow:0 0 22px -6px #ff751866,inset 0 0 0 1px #c073e833}.onb{text-align:center}.onb-icon{margin-bottom:14px;font-size:44px;line-height:1}.onb p{color:var(--muted);max-width:44ch;margin:0 auto 20px;font-size:.9rem;line-height:1.55}.dots{justify-content:center;gap:6px;margin-bottom:18px;display:flex}.dots i{background:var(--surface-3);border-radius:50%;width:7px;height:7px;font-style:normal;display:block}.dots i.on{background:var(--accent);border-radius:999px;width:20px}.btnrow{flex-wrap:wrap;justify-content:center;gap:9px;display:flex}.onb-try{margin:14px auto 0;display:block}.onb-interactive{text-align:left}.onb-interactive p{max-width:none;margin-left:0;margin-right:0}.onb-interactive .onb-icon,.onb-interactive>.onb-signin{text-align:center}.onb-picks{flex-direction:column;gap:8px;margin:0 0 16px;padding:0;list-style:none;display:flex}.onb-pick-row{border:1px solid var(--border);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.lostmap{aspect-ratio:1;border-radius:var(--radius-sm);width:100%;max-width:260px;margin:0 auto 12px;position:relative;overflow:hidden}.lostmap>svg{width:100%;height:100%;position:absolute;inset:0}.lostpin{font-size:1rem;line-height:1;position:absolute;transform:translate(-50%,-50%)}.lostpin.recommended{filter:drop-shadow(0 0 4px var(--accent-2));font-size:1.4rem}.point.recommended{box-shadow:inset 3px 0 0 var(--accent-2)}.tag.recommended{color:var(--accent-ink);background:var(--accent-2)}.offlinepack summary{justify-content:space-between}.readiness{flex-direction:column;gap:6px;list-style:none;display:flex;padding-left:0!important}.readiness li{padding:2px 0}.readiness li.done{color:var(--text)}.readiness li:not(.done){color:var(--muted)}.schedslots{flex-direction:column;gap:10px;list-style:none;display:flex;padding-left:0!important}.schedslot{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);padding:10px 12px}.schedslot.together{border-color:color-mix(in srgb, var(--must) 45%, var(--border));box-shadow:inset 3px 0 0 var(--must)}.schedslot.split{border-color:color-mix(in srgb, var(--maybe) 45%, var(--border));box-shadow:inset 3px 0 0 var(--maybe)}.tag.together{color:var(--must);background:color-mix(in srgb, var(--must) 16%, transparent);margin-left:0}.tag.split{color:var(--maybe);background:color-mix(in srgb, var(--maybe) 16%, transparent);margin-left:0}.splitgroups{flex-wrap:wrap;gap:6px;margin:8px 0;display:flex}.splitgroups>div{border:1px solid var(--border);background:var(--surface-2);border-radius:14px;flex:8.5rem;min-width:0;padding:5px 10px;line-height:1.25}.splitgroups>div>strong{font-size:.85rem}.splitgroups>div>.small{font-size:.75rem}.beacon{z-index:999;cursor:pointer;background:#fff;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.beacontext{color:#fff;text-align:center;background:#0000008c;border-radius:999px;max-width:80vw;padding:10px 18px;font-weight:700}.beaconclose{color:#fff;background:#0009;border-color:#fff6;position:absolute;top:16px;right:16px}.beaconfoot{left:0;right:0;bottom:max(16px, env(safe-area-inset-bottom));flex-direction:column;align-items:center;gap:10px;padding:0 16px;display:flex;position:absolute}.beaconinfo{color:#fff;text-align:center;background:#0009;border-radius:999px;flex-wrap:wrap;justify-content:center;gap:2px 10px;max-width:90vw;margin:0;padding:8px 16px;font-size:.85rem;display:flex}.beaconnote{color:#fff;text-align:center;background:#0009;border-radius:14px;max-width:90vw;margin:0;padding:8px 14px;font-size:.75rem}.beaconkeep{color:#fff;background:#0009;border-color:#ffffff80}.famlight{margin-top:10px}.famlight-preview{align-items:center;gap:10px;margin:12px 0 4px;display:flex}.famlight-swatch{border:1px solid var(--border);background:#fff;border-radius:50%;flex:none;width:36px;height:36px}.beacondot{vertical-align:baseline;border:1px solid #ffffff80;border-radius:50%;width:10px;height:10px;margin-right:6px;display:inline-block}.plansview .pp{font-family:var(--font-display);margin:0;font-size:1.6rem;font-weight:700}.plus-promo .pp{font-size:1.05rem;line-height:1.3}.plansview h3{margin:4px 0 0;font-size:1rem}.free-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px;margin:0;padding:0;font-size:.9rem;list-style:none;display:grid}.free-grid li{overflow-wrap:anywhere;align-items:baseline;gap:6px;min-width:0;display:flex}.kofi-tip{gap:2px;margin:2px 4px 14px;display:grid}.kofi-tip p{margin:0}@media (width<=300px){.free-grid{grid-template-columns:minmax(0,1fr)}}.plus-steps{gap:6px;margin:0;padding-left:1.4em;font-size:.9rem;display:grid}.plus-steps .pill-preview{margin-left:4px}.fine-print{gap:4px;margin:14px 0 0;display:grid}.fine-print ul{margin:0;padding-left:1.2em}.fine{color:var(--muted);margin:0;font-size:.78rem}.placeholder{background:color-mix(in srgb, var(--warn) 18%, transparent);border-radius:4px;padding:0 4px}.charcard h3{margin:14px 0 6px;font-size:.875rem}.clsfield{border:0;margin:10px 0 0;padding:0}.clsfield legend{padding:0;font-weight:700}.clslist{flex-direction:column;gap:6px;margin-top:6px;display:flex}.clsopt{border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;padding:9px 11px;display:block}.clsopt.on{border-color:var(--accent)}.clsopt input{margin-right:8px}.statlist,.habits{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.habit{text-align:left;border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:inherit;background:0 0;align-items:center;gap:12px;min-height:44px;padding:11px 12px;display:flex}.habit .hi{border:1px solid;border-radius:50%;flex:none;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.habit .hb{flex-direction:column;gap:2px;min-width:0;display:flex}.habit.done{opacity:.8;border-color:currentColor}.qrbox{text-align:center;flex-direction:column;align-items:center;gap:8px;margin-top:10px;display:flex}.qrcode{border-radius:var(--radius-sm);max-width:100%;height:auto}.qrbox code{word-break:break-all}.changes{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.changes>li{border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 12px}.changes>li.yours{border-color:var(--must)}.changes ul{margin:6px 0 0;padding-left:18px}.festmap,.festmap-view{--map-bg:var(--bg);--map-ground:var(--surface-2);--map-edge:var(--border);--map-path:var(--surface-3);--map-land:var(--surface-3);--map-water:color-mix(in srgb, #56b4e9 35%, var(--surface));--text-dim:var(--muted);--pin:var(--text);--pin-ink:var(--bg)}.festmap-canvas{border-radius:var(--radius-sm);border:1px solid var(--border);touch-action:none;width:100%;height:min(62vh,520px);display:block}.festmap-canvas:focus{outline:none}.festmap-canvas[data-kb="1"]:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.chip{font-family:var(--font-body);background:var(--surface-3);color:var(--text);overflow-wrap:anywhere;border-radius:12px;max-width:100%;padding:3px 9px;font-size:.75rem;font-weight:700}.gear .gi{line-height:0;display:inline-flex}.gear .gi svg{display:block}.gnext{border-radius:var(--radius-sm);border:1.5px solid color-mix(in srgb, var(--rc) 55%, var(--border));background:var(--surface);align-items:center;gap:10px;margin-top:10px;padding:10px 12px;display:flex}.gnext>div{flex:1;min-width:0}.gnext{flex-wrap:wrap}.gnext .mini{flex:100%;min-height:44px}.gnext .gnl{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.6875rem}.gnext b{color:var(--rc);font-size:.875rem}.gnext .grr{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--rc);font-size:.6875rem;font-weight:700}.gear .meter{background:var(--surface-3);border-radius:999px;height:6px;margin:6px 0 3px;overflow:hidden}.gear .meter i{background:var(--rc,var(--accent));height:100%;display:block}.gpips{gap:2px;display:inline-flex}.gpips i{background:color-mix(in srgb, var(--rc) 22%, transparent);border-radius:50%;width:5px;height:5px}.gpips i.on{background:var(--rc)}.gpip{color:var(--rc);font-size:.6875rem}.glegend .gtn{color:var(--rc);white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.gtabs{gap:6px;margin:10px 0;padding-bottom:2px;display:flex;overflow-x:auto}.gtabs button{border-radius:999px;flex:none;min-height:44px;padding:6px 14px}.gtabs button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);font-weight:700}.card .ggrid,.ggrid{grid-template-columns:repeat(auto-fill,minmax(5.5rem,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.card .ggrid li+li{margin-top:0}.gtabs{scroll-snap-type:x proximity}.gtabs button{scroll-snap-align:start}.gtile{text-align:center;border:1.5px solid color-mix(in srgb, var(--rc) 55%, var(--border));border-radius:var(--radius-sm);background:var(--surface);width:100%;min-width:0;min-height:96px;color:var(--text);flex-direction:column;justify-content:flex-start;align-items:center;gap:3px;padding:8px 4px 7px;font-weight:400;display:flex;position:relative}.gtile .gbadge{font-size:.6875rem;font-style:normal;line-height:1;position:absolute;top:3px}.gtile .gbadge.on{background:var(--accent);color:var(--accent-ink);border-radius:999px;padding:2px 5px;font-weight:700;right:4px}.gtile .gbadge.lock{left:4px}.gtile.locked .gi{opacity:.55}.gtile.on{box-shadow:0 0 0 2px var(--rc), 0 0 18px -6px var(--rc)}.gtile.locked{opacity:.82}.gtile .gnm{color:var(--rc);overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.75rem;line-height:1.2;display:-webkit-box;overflow:hidden}.gtile.r-c .gnm{color:var(--text)}.gtile.locked .gnm{opacity:.85}.gtile .grr{font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;color:var(--rc);flex-wrap:wrap;align-items:center;gap:1px 6px;font-size:.6875rem;font-weight:700;display:flex}.gtile.r-r{border-width:2px}.gtile.r-l{box-shadow:0 0 14px -8px var(--rc);border-width:2px}.gtile.r-u{border:2px double var(--rc);box-shadow:0 0 16px -8px var(--rc)}.gtile.r-s{border-style:dashed;border-width:2px}.gtile.r-y{background:linear-gradient(var(--surface), var(--surface)) padding-box, linear-gradient(120deg, #c77dff, #00d9ff, #2ee6a6, #c77dff) border-box;background-size:100% 100%,300% 300%;border:2px solid #0000;animation:6s linear infinite mythic}@keyframes mythic{to{background-position:0 0,300% 0}}@media (prefers-reduced-motion:reduce){.gtile.r-y{animation:none}}.gear.fest .gtile.r-y{animation:none}.gtoast{min-height:1.2em;color:var(--accent-2);margin:8px 0 0;font-size:.8125rem}.subdock .seg button{min-width:0;padding-inline:4px}@media (width<=420px){.subdock .seg{gap:2px}.subdock .seg button{letter-spacing:-.01em;padding:6px 2px;font-size:.75rem}:root[data-text-size] .subdock .seg button{padding-inline:2px}}.subdock .seg{flex-wrap:wrap}.subdock .seg button{flex:auto;min-width:auto}.chud{flex-direction:column;gap:6px;margin-bottom:10px;display:flex}.chid{align-items:center;gap:12px;min-width:0;display:flex}.chname{flex:1;min-width:0}.chlv{width:46px;height:46px;font-family:var(--font-display);color:var(--text);background:radial-gradient(closest-side, var(--surface) 76%, transparent 78% 100%), conic-gradient(var(--accent) calc(var(--p) * 1%), var(--surface-3) 0);border-radius:50%;flex:none;place-items:center;font-size:1.05rem;font-weight:800;display:grid}.chn{font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:1.125rem;line-height:1.2;display:block;overflow:hidden}.chs{color:var(--muted);font-size:.8rem;display:block}.chk{font-family:var(--font-body);background:var(--surface);border:1px solid var(--border);border-radius:999px;flex:none;padding:6px 10px;font-size:.8125rem;font-weight:700}.chud .bar,.cspanel .bar{background:var(--surface-3);border-radius:999px;height:6px;overflow:hidden}.chud .bar i,.cspanel .bar i{background:var(--accent);height:100%;display:block}.chxt{font-family:var(--font-body);color:var(--muted);justify-content:space-between;font-size:.6875rem;font-weight:700;display:flex}.charwrap{grid-template-columns:minmax(0,1fr);gap:14px;display:grid}.char{container-type:inline-size}.doll{background:radial-gradient(ellipse 60% 55% at 50% 45%, var(--accent-soft), transparent 70%);border-radius:var(--radius);width:100%;max-width:400px;margin-inline:auto;position:relative}.dlines{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.dl path{fill:none;stroke:var(--rc);stroke-width:1.2px;opacity:.45;stroke-dasharray:3 3;transition:opacity .12s}.dl circle{fill:var(--rc);opacity:.6}.dl.hot path{opacity:1;stroke-width:2px;stroke-dasharray:none}.dl.hot circle{opacity:1}.dstage{pointer-events:none;position:absolute}.dstage .avstage{width:100%;max-width:none;height:auto;display:block}.dslot{aspect-ratio:1;cursor:pointer;background:var(--surface);border:2px solid color-mix(in srgb, var(--rc) 70%, var(--border));width:13.4%;min-width:44px;max-width:56px;min-height:44px;color:var(--text);box-shadow:0 0 12px -6px var(--rc);border-radius:12px;place-items:center;padding:0;display:grid;position:absolute;transform:translate(-50%,-50%)}.dslot.empty{box-shadow:none;border-style:dashed}.dslot .gi{place-items:center;width:74%;height:74%;display:grid}.dslot .gi svg{width:100%;height:100%}.dslot .dph{opacity:.45;filter:grayscale(.6);font-size:1.25rem}.dslot .dlbl{color:var(--muted);white-space:nowrap;margin-top:2px;font-size:.6875rem;line-height:1.1;position:absolute;top:100%;left:50%;transform:translate(-50%)}.dslot[data-side=R] .dlbl{left:auto;right:0;transform:none}.dslot .dpk{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;place-items:center;width:18px;height:18px;font-size:.6875rem;font-style:normal;display:grid;position:absolute;top:-6px;right:-6px}.dslot .dtier{line-height:0;position:absolute;bottom:2px;left:50%;transform:translate(-50%)}.dslot .dtier .gpips{gap:1px}.dslot .dtier .gpips i{width:3px;height:3px}.dslot .dtier .gpip{font-size:.6875rem;line-height:1}.dslot.r-u,.dslot.r-y{border-width:2.5px}.dslot:hover,.dslot:focus-visible{background:var(--surface-2)}.chbtns{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.chbtn{text-align:left;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);min-width:0;min-height:52px;color:var(--text);justify-content:flex-start;align-items:center;gap:10px;padding:8px 12px;display:flex}.chbtn.empty{border-style:dashed}.chbtn>span:first-child{font-size:1.4rem;line-height:1}.chbl{flex-direction:column;min-width:0;display:flex}.chbl b{font-size:.875rem}.chbl small{color:var(--muted);overflow-wrap:anywhere;font-size:.75rem;line-height:1.2}.chsub{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:18px;font-size:.75rem;display:flex}.chset{color:#3ddc6a;font-weight:700}.chperks{flex-wrap:wrap;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.chperks li{border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:3px 8px;font-size:.72rem}.ctabs{z-index:5;background:var(--surface);border:1px solid var(--border);border-radius:999px;gap:4px;margin-bottom:12px;padding:4px;display:flex;position:sticky;top:64px}.ctabs button{color:var(--muted);font:inherit;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;border-radius:999px;flex:auto;min-width:0;min-height:44px;padding:9px 6px;font-size:.8125rem;font-weight:700;overflow:hidden}.ctabs button[aria-selected=true]{background:var(--accent);color:var(--accent-ink)}#cpanel>.card:first-child{margin-top:0}.cstatswrap{min-width:0}.cstrip{flex-wrap:wrap;gap:4px;display:flex}.cstrip button{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);min-width:min-content;min-height:44px;color:var(--text);font:inherit;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:1px;padding:5px 3px;line-height:1.15;display:flex}.cstrip button.focus{border-color:var(--accent)}.cstrip button[aria-expanded=true]{background:var(--surface-2);border-color:var(--accent);box-shadow:inset 0 -3px 0 var(--accent)}.wstrip{margin:4px 0 12px}.wstrip>div{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:1px;min-width:min-content;min-height:44px;padding:5px 3px;line-height:1.15;display:flex}.wstrip .csv{font-size:.95rem;font-weight:700}.cstrip .csn{white-space:nowrap;font-size:.75rem;font-weight:700}.cstrip .csv{font-family:var(--font-mono);color:var(--muted);white-space:nowrap;font-size:.6875rem;font-weight:700}.cstrip .csv i{color:var(--accent);font-style:normal}.cshint{color:var(--muted);margin:4px 0 0;font-size:.6875rem}.cshint span{color:var(--accent)}.cspanel{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);flex-direction:column;gap:6px;margin-top:8px;padding:10px 12px;display:flex}.cspanel[hidden]{display:none}.cspanel p,.cspanel h3,.cspanel ul{margin:0}.cspanel p{font-size:.8125rem}.cspanel h3{margin-top:2px;font-size:.8125rem}.csph{align-items:center;gap:8px;display:flex}.csph h2{margin:0;font-size:1rem}.csph .csv{font-family:var(--font-mono);color:var(--muted);margin-left:auto;font-size:.75rem;font-weight:700}.csi{font-size:1.25rem;line-height:1}.csd{color:var(--muted);font-size:.72rem}.csgrow{flex-direction:column;gap:2px;padding:0;font-size:.8125rem;list-style:none;display:flex}.cspanel>button{align-self:flex-start;margin-top:2px}:root[data-contrast=high] .cstrip button{border-width:2px}.char button.wide{width:100%;margin-top:8px}.lookprev{justify-content:center;margin-bottom:8px;display:flex}.me-replay{text-align:left;width:100%;margin:0 0 12px;display:block}.pidcard{text-align:left;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);align-items:center;gap:12px;min-height:44px;margin-bottom:12px;padding:12px;display:flex}.pidav{aspect-ratio:200/240;background:var(--surface-2);border-radius:12px;flex:none;width:64px}.pidav .avstage{width:100%;max-width:none;height:auto}.pidt{flex-direction:column;gap:2px;min-width:0;display:flex}.pidt b{font-family:var(--font-display);font-size:1rem}.pidt span{color:var(--muted);font-size:.8rem}.pidt .pidgo{color:var(--accent);font-weight:700}details.collapse>summary{cursor:pointer;text-align:left;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;min-height:44px;list-style:none;display:flex}details.collapse>summary:before{content:none}details.collapse>summary>.small{font-family:var(--font-body);font-weight:400}details.card.collapse{gap:0;margin:8px 0;padding:8px 14px}details.card.collapse[open]{gap:10px;padding:12px 14px}details.collapse>summary::-webkit-details-marker{display:none}details.collapse>summary h2{margin:0}details.collapse>summary h2:after{content:" ▾";color:var(--muted);font-size:.8em}details.collapse[open]>summary h2:after{content:" ▴"}details.collapse[open]>summary{margin-bottom:12px}details.collapse>.card{background:0 0;border:0;margin:0;padding:0}.plansview.embedded{padding:0}.wallet{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.wallet li{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-2);flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;display:flex}.wallet b{font-family:var(--font-mono);font-size:1.1rem;font-weight:700}.wallet li span:last-child{color:var(--muted);font-size:.75rem}.kandi-more{margin-top:12px}.kandi-more h3{margin:0;font-size:1rem}.kandi-more>h3{margin:12px 0 6px}.krules{flex-direction:column;gap:6px;margin:8px 0;padding:0;list-style:none;display:flex}.krule{border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:10px;padding:9px 10px;display:flex}.krule .ki{text-align:center;flex:none;width:24px;font-size:1.1rem}.krule .kb{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.krule .kb span{color:var(--muted);font-size:.8rem}.krule .kv{font-family:var(--font-mono);flex:none;font-weight:700}.never{border-radius:var(--radius-sm);background:var(--surface-2);margin-top:8px;padding:12px;font-size:.85rem}.never ul{color:var(--muted);margin:6px 0 0;padding-left:18px}.kfeed{margin:0;padding:0;list-style:none}.kfeed li{border-top:1px solid var(--border);align-items:baseline;gap:10px;padding:8px 0;display:flex}.kfeed li:first-child{border-top:0}.kfeed time,.kfeed .kdate{width:3.6em;color:var(--muted);flex:none;font-size:.8rem}.kfeed .kwhy{overflow-wrap:anywhere;flex:1;min-width:0}.kfeed .kamt{font-family:var(--font-mono);flex:none;font-weight:700}.kfeed .kamt.spent{color:var(--muted)}.pkprev{align-items:flex-start;gap:12px;display:flex}.pkav{background:radial-gradient(circle at 50% 45%, var(--accent-soft), transparent 70%);border-radius:12px;flex:none;width:118px}.pkav .avstage{width:100%;max-width:none;height:auto}.pkinfo{flex-direction:column;gap:4px;min-width:0;padding-top:6px;display:flex}.pkn{font-family:var(--font-display);font-size:1rem;line-height:1.25}.pkr{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--rc);align-items:center;gap:6px;font-size:.6875rem;font-weight:700;display:flex}.pkd{color:var(--muted);font-size:.8rem}.pkd.lore{font-style:italic}.pkp{color:var(--accent);font-size:.75rem;font-weight:700}.pks{color:#3ddc6a;font-size:.75rem;font-weight:700}.pkf{flex-wrap:wrap;gap:6px;margin:10px 0;display:flex}.pkf button{border-radius:999px;min-height:44px;padding:6px 12px;font-size:.8125rem}.pkf button[style]{border-color:color-mix(in srgb, var(--rc) 55%, var(--border))}.pkf button[aria-pressed=true]{background:var(--accent);color:var(--accent-ink);font-weight:700}.pkgrid{grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;display:grid}.pkit{border:1.5px solid color-mix(in srgb, var(--rc) 60%, var(--border));background:var(--surface);color:var(--text);border-radius:12px;flex-direction:column;align-items:center;gap:4px;min-width:0;min-height:92px;padding:8px 4px;display:flex;position:relative}.pkit>.pkname{text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.6875rem;line-height:1.2;display:-webkit-box;overflow:hidden}.pkit.locked .gi svg{filter:grayscale(.3)brightness(.9)}.pkit.locked{opacity:.85}.pkit.next .gi,.gtile.next .gi,.pkblur .gi{opacity:.4;filter:blur(2px)}.pkit.next>.pkname,.gtile.next .gnm{color:var(--rc)}.pkit.hid,.gtile.hid{opacity:.8;border-style:dashed;justify-content:center}.pkit.hid .hidq,.gtile.hid .hidq{color:var(--rc);font-size:1.5rem;line-height:1}.pkit.hid>.pkname,.gtile.hid .gnm{color:var(--rc)}.pkit[aria-pressed=true]{box-shadow:0 0 0 2px var(--rc), 0 0 14px -4px var(--rc);background:var(--surface-2)}.pkit .pkon,.pkit .pklk{font-size:.75rem;font-style:normal;position:absolute;top:4px}.pkit .pkon{color:var(--good);font-weight:800;left:6px}.pkit .pklk{right:6px}.pkact{z-index:2;background:var(--surface);border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;padding:10px 0 4px;display:flex;position:sticky;bottom:0}.pkact>button{flex:140px;min-height:44px}.pkeq{color:var(--good);font-size:.8rem;font-weight:700}.pklock{color:var(--muted);font-size:.8rem}.pkneed{color:var(--muted);flex-direction:column;flex:1;gap:4px;font-size:.8rem;display:flex}.pkneed .meter{background:var(--surface-3);border-radius:999px;height:6px;overflow:hidden}.pkneed .meter i{height:100%;display:block}.pkstatus{min-height:1.2em;color:var(--accent-2);flex-basis:100%;margin:0;font-size:.8rem}.pkstatus:empty{display:none}.gtile .gcls,.pkc{color:var(--accent-2);font-size:.72rem;font-weight:700}fieldset.famkind{border:0;margin:0;padding:0}fieldset.famkind legend{margin-bottom:4px;font-weight:700}fieldset.famkind label.check{align-items:flex-start}fieldset.famkind label.check input{margin-top:.3em}.bracelet{flex:none;place-items:center;display:inline-grid;position:relative}.bracelet .bword{font-family:var(--font-body);letter-spacing:.08em;color:#1d1128;background:#fff;border-radius:4px;padding:1px 5px;font-size:.75rem;font-weight:700;position:absolute}.bracelet .glowbead,.kbead.glow{filter:drop-shadow(0 0 3px)}.kcraft{flex-direction:column;gap:14px;display:flex}.kprev{flex-direction:column;align-items:center;gap:4px;display:flex}.kfs{border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;gap:10px;margin:0;padding:10px 12px;display:flex}.kfs legend{padding:0 4px;font-size:.85rem;font-weight:700}.kstring,.kpalette{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.kpalette li{flex-direction:column;align-items:center;gap:2px;width:56px;display:flex}.kbname{color:var(--muted);text-align:center;font-size:.6875rem;line-height:1.1}button.kbead{background:var(--bead);width:44px;min-width:44px;height:44px;color:var(--bead);border:2px solid #1d1128;border-radius:50%;padding:0;box-shadow:inset 0 -4px #0000002e,inset 0 3px #ffffff59}button.kbead.locked{background:repeating-linear-gradient(45deg, var(--surface-3), var(--surface-3) 5px, var(--surface-2) 5px, var(--surface-2) 10px);opacity:.75;color:var(--text);font-size:.875rem}.klbl{flex-direction:column;flex:140px;gap:4px;font-size:.85rem;display:flex}.kerr{color:var(--danger)}.kgo{align-self:stretch}.kstats{color:var(--muted);flex-wrap:wrap;gap:6px 14px;margin:0;padding:0;font-size:.85rem;list-style:none;display:flex}.kstats b{color:var(--text);font-size:1rem}.klist{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.kitem{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);align-items:flex-start;gap:12px;padding:10px;display:flex}.kmeta{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.kmeta .tag{align-self:flex-start;margin-left:0}.kprov,.knote{overflow-wrap:anywhere;margin:0}.kwall{grid-template-columns:1fr;gap:14px;display:grid}.kwall h3{margin:0 0 6px}@container (width>=620px){.kwall{grid-template-columns:1fr 1fr}}.kpick{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.kpickit{border:2px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);cursor:pointer;place-items:center;min-width:64px;min-height:64px;padding:2px;display:grid;position:relative}.kpickit.on{border-color:var(--accent)}.kpickit input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.kpickit:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.kqr{flex-direction:column;align-items:center;gap:6px;display:flex}.kscan{flex-direction:column;gap:6px;display:flex}.kvideo{border-radius:var(--radius-sm);object-fit:cover;background:#000;width:100%;max-height:300px}.kmanual summary{cursor:pointer;align-items:center;min-height:44px;font-size:.85rem;display:flex}.kmanual{flex-direction:column;gap:8px;display:flex}.kcode code{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;font-size:.6875rem}.kradio{align-items:center;gap:8px;min-height:44px;display:flex}.kradio input{width:22px;height:22px}.kdemo{border-top:1px dashed var(--border);padding-top:8px}.plurwrap{z-index:60;padding:16px 16px calc(24px + env(safe-area-inset-bottom));background:#0a0410eb;justify-content:center;display:flex;position:fixed;inset:0;overflow-y:auto}.plur{flex-direction:column;gap:12px;width:min(560px,100%);margin:auto 0;display:flex}.plurstage{border:1px solid var(--border);background:radial-gradient(ellipse 60% 60% at 50% 50%, #ff5fae22, transparent 70%), var(--surface);border-radius:18px;position:relative;overflow:hidden}.plurstage svg{width:100%;height:auto;display:block}.plurword{text-align:center;font-family:var(--font-display,inherit);letter-spacing:.12em;text-shadow:0 0 18px #ff5fae;color:#f4ece2;font-size:1.6rem;font-weight:800;position:absolute;top:12px;left:0;right:0}.plurcap{text-align:center;color:#d7c7e3;padding-inline:16px;font-size:.8125rem;position:absolute;bottom:10px;left:0;right:0}.plurrail{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.plurrail li{font-family:var(--font-body);text-align:center;border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:6px 2px;font-size:.6875rem;font-weight:700}.plurrail li.on{color:#1a0a12;background:#ff5fae;border-color:#ff5fae;font-weight:700}.plurrail li.done{color:var(--text);border-color:#ff5fae}button.ghostpink{color:#ff5fae;background:0 0;border-color:#ff5fae;font-weight:700}.plurres{border:1px solid var(--border);background:var(--surface);border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex}.plurres h3{margin:0;font-size:1rem}.plurtrade{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;display:grid}.plurtrade>:only-child{grid-column:1/-1}.plurside{text-align:center;flex-direction:column;align-items:center;gap:4px;min-width:0;display:flex}.plurside b{font-size:.85rem}.plurside small{color:var(--muted);font-size:.75rem}.plurarrows{color:#ff5fae;font-size:1.25rem}.gloss{flex-direction:column;gap:10px;margin:0;display:flex}.gloss dt{font-weight:700}.gloss dd{color:var(--muted);margin:2px 0 0;font-size:.9rem}.crash{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:100vh;padding:24px;display:flex}.crash button{min-height:44px;padding:0 24px}.banner.update{isolation:isolate;color:#fff;background:var(--surface);border:0;border-radius:12px;padding:4px 6px 4px 12px;position:relative}.banner.update:before,.banner.update:after{content:"";z-index:-1;border-radius:inherit;background:var(--logo-ring);-webkit-mask-composite:xor;padding:2px;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.banner.update:after{filter:blur(8px);opacity:.6}.banner .update-banner{text-align:left;color:inherit;font-family:var(--font-display);text-shadow:0 0 12px #ffffff59;flex:1;align-items:center;gap:10px;font-weight:800;display:flex}.banner.update-float{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:60;position:fixed}.update-icon{font-size:1.15rem;line-height:1}@media (prefers-reduced-motion:no-preference){:root[data-flare=full] .banner.update:after{animation:2.4s ease-in-out infinite alternate update-glow}}@keyframes update-glow{0%{opacity:.35}to{opacity:.9}}.install-guide{justify-content:space-between;margin:0 16px 14px}.install-guide h2{margin:0;font-size:.95rem}.install-steps{gap:4px;margin:0;padding-left:20px;display:grid}.install-dismiss{background:0 0;border-color:#0000;min-width:44px;min-height:44px;padding:0 10px}.install-guide.compact{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px;margin-bottom:8px;padding:6px 6px 6px 12px;display:grid}.install-guide.compact .stack{display:contents}.install-guide.compact h2{grid-area:1/1;font-size:.85rem}.install-guide.compact .install-toggle{grid-area:1/2}.install-guide.compact .install-dismiss{grid-area:1/3}.install-guide.compact .install-body{grid-column:1/-1;margin-right:6px}.install-body{flex-direction:column;gap:8px;display:flex}.install-body[hidden]{display:none}.install-guide.compact .install-onetap{grid-area:1/2}.install-onetap .primary{min-height:44px;padding:0 12px;font-size:.8rem}.install-toggle{flex:none;min-height:44px;padding:0 12px;font-size:.8rem}.seen-btn{min-height:44px;color:var(--accent-ink);background:var(--good);border:0;border-radius:999px;margin-top:6px;padding:6px 12px;font-weight:700}.seen-done{color:var(--good);align-items:center;gap:10px;margin-top:6px;font-size:.875rem;font-weight:700;display:inline-flex}.firstrun{z-index:80;background:var(--bg);color:var(--text);padding:calc(16px + env(safe-area-inset-top)) 16px calc(16px + env(safe-area-inset-bottom));flex-direction:column;gap:12px;display:flex;position:fixed;inset:0;overflow-y:auto}.firstrun>*{width:100%;max-width:520px;margin-inline:auto}.fr-welcome{font-family:var(--font-display);font-size:1.4rem;font-weight:700}.fr-top{justify-content:space-between;align-items:center;min-height:44px;display:flex}.fr-dots{gap:6px;margin:0;padding:0;list-style:none;display:flex}.fr-dots li{background:var(--surface-3);border-radius:50%;width:8px;height:8px}.fr-dots li.on{background:var(--accent)}.fr-body{flex-direction:column;flex:1;gap:8px;animation:.2s fr-fade;display:flex}@keyframes fr-fade{0%{opacity:0}}.fr-body h1{margin:0;font-size:1.5rem}.fr-body h1:focus{outline:none}.fr-avatar{justify-content:center;display:flex}.fr-classes{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.fr-class{text-align:left;border-radius:var(--radius-sm);background:var(--surface-2);flex-direction:column;align-items:flex-start;gap:2px;min-height:44px;padding:10px 12px;display:flex}.fr-class.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.fr-class-icon{font-size:1.4rem}.fr-class-stats{font-family:var(--font-body);color:var(--accent-2);font-size:.75rem;font-weight:700}.fr-gear{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin-bottom:8px;display:grid}.fr-gear button{background:var(--surface-2);flex-direction:column;align-items:center;gap:4px;min-height:44px;padding:8px;font-size:.8rem;display:flex}.fr-gear button[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.fr-gear .gi{line-height:0;display:inline-flex}.fr-reveal-class{margin:0;font-size:1.1rem;font-weight:700}.fr-actions{background:var(--bg);flex-direction:column;gap:8px;padding-top:8px;display:flex;position:sticky;bottom:0}.fr-actions button{min-height:44px}.fr-still .fr-body{animation:none}@media (prefers-reduced-motion:reduce){.fr-anim,.fr-body{animation:none}}.outdays{flex-direction:column;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:flex}.outdays li+li{margin-top:0}.outrow{text-align:left;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);width:100%;min-height:48px;color:var(--text);align-items:center;gap:10px;padding:8px 12px;display:flex}.outrow b{white-space:nowrap;font-size:.875rem}.outsum{overflow-wrap:anywhere;flex:1;align-items:center;gap:6px;min-width:0;font-size:.8125rem;display:flex}.outcv{color:var(--muted)}.outdays .swatches{margin-top:4px}.glegend-table{border-collapse:collapse;width:100%;margin:6px 0;font-size:.78rem}.glegend-table td,.glegend-table th{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:5px 6px}.glegend-table th{color:var(--muted);font-size:.6875rem;font-weight:600}.glegend-table .gtn{color:var(--rc);white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.mapnearby{flex-direction:column;gap:8px;margin-top:12px;display:flex}.mapnearby h2,.nextmove h2{margin:0;font-size:1.05rem}.mapnearby-essentials button{align-items:center;gap:6px;min-height:44px;display:inline-flex}.mapnearby-here{flex-direction:column;gap:6px;display:flex}.mapnearby-here button{min-height:44px}.nextmove{margin-top:12px}.mymarks{flex-direction:column;gap:8px;margin-top:12px;display:flex}.mymarks h2{margin:0;font-size:1.05rem}.mymarks-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.mymarks-list button{min-height:44px}.mymarks-name{flex:12rem}.placelist-sets{max-height:180px}.mapcomfort{border:1px solid var(--border);border-radius:var(--radius-sm);margin-top:12px;padding:8px 12px}.mapcomfort summary{cursor:pointer;align-items:center;min-height:44px;font-weight:700;display:flex}.mapcomfort fieldset{border:0;margin:0;padding:0}.mapcomfort legend{margin-bottom:4px;padding:0;font-weight:700}.mapcomfort-row{align-items:center;gap:8px;min-height:44px;display:flex}.timescrub{flex-direction:column;gap:8px;margin-top:12px;display:flex}.timescrub h2{margin:0;font-size:1.05rem}.timescrub button{min-height:44px}.timescrub input[type=range]{width:100%;min-height:44px}.placesheet-stage{margin:0}.placeshare{flex-direction:column;gap:8px;margin:8px 0;display:flex}.placeshare>button,.placeshare-body button{min-height:44px}.placeshare-body{flex-direction:column;gap:6px;display:flex}.placeshare-body p{margin:0}.placeshare-link{overflow-wrap:anywhere}.placeshare-qr{flex-direction:column;align-items:center;gap:4px;display:flex}.top{gap:2px}.top .logo{border-radius:9px;flex:none;margin-right:4px;padding:5px 7px;font-size:.72rem}.top .festbtn{min-height:44px;font-family:var(--font-body);white-space:normal;text-align:left;background:0 0;border:0;flex:0 auto;padding:4px 6px;font-size:.75rem;font-weight:700;line-height:1.1}.top .festbtn-name{white-space:normal;max-width:none;overflow:visible}.festbtn-short{white-space:nowrap;display:none}@media (width<=420px){.festbtn-long{display:none}.festbtn-short{display:inline}}:root[data-text-size] .festbtn-long{display:inline}:root[data-text-size] .festbtn-short{display:none}.topright{flex:none;justify-content:flex-end;align-items:center;gap:0;min-width:0;margin-left:auto;display:flex}.topright .iconbtn{background:0 0;border:0;font-size:1.15rem}.topright button.safebtn{min-height:44px;padding:0}.topright button.safebtn span{border:1.5px solid var(--accent);border-radius:50%;place-items:center;width:32px;height:32px;font-size:1rem;display:grid}.modepill{background:0 0;border:0;min-width:40px;min-height:44px;padding:0}.modepill span{font-family:var(--font-body);background:var(--accent);color:var(--accent-ink);border-radius:6px;padding:3px 6px;font-size:.7rem;font-weight:700;line-height:1.2;display:inline-block}.modepill.live span{background:var(--good);color:#06140e}.topright .refreshbtn{color:var(--text)}.refresh-ring{isolation:isolate;border-radius:50%;place-items:center;width:32px;height:32px;display:grid;position:relative}.refreshbtn:focus-visible{outline:2px solid var(--accent-2);outline-offset:-2px}.refreshbtn.waiting .refresh-ring:before,.refreshbtn.waiting .refresh-ring:after{content:"";z-index:-1;border-radius:inherit;background:var(--logo-ring);-webkit-mask-composite:xor;padding:2px;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.refreshbtn.waiting .refresh-ring:after{filter:blur(6px);opacity:.7}.refreshbtn.checking{opacity:.55;cursor:progress}@media (prefers-reduced-motion:no-preference){:root[data-flare=full] .refreshbtn.waiting:not(.checking) .refresh-ring:after{animation:2.4s ease-in-out infinite alternate update-glow}.refreshbtn.checking svg{animation:.9s linear infinite refresh-spin}}@keyframes refresh-spin{to{transform:rotate(360deg)}}.moremenu{margin:0;padding:0;list-style:none}.moremenu li+li{border-top:1px solid var(--border)}.moremenu button{text-align:left;background:0 0;border:0;justify-content:flex-start;width:100%;min-height:52px;font-size:1rem}@media (width<=400px){.top .logo .tm{display:none}}@media (width<=420px){.top{padding-left:6px;padding-right:6px}.top .logo{margin-right:0;padding:5px}.top .festbtn{padding:4px 3px}}@media (width<=380px){.top{gap:0;padding-left:4px;padding-right:4px}}@media (width<=340px){.top{flex-wrap:wrap;position:relative}.top .festbtn{flex:100%;order:3;padding:4px 8px}html{scroll-padding-top:0}.top{padding-left:2px;padding-right:2px}.top .logo{padding:5px 3px;font-size:.6875rem}}@media (width<=300px){.top,.topright{flex-wrap:wrap}.topright{flex:auto}}:root[data-text-size] .top,:root[data-text-size] .topright{flex-wrap:wrap}@media (width<=480px){:root[data-text-size] .top{justify-content:center}:root[data-text-size] .topright{justify-content:center;margin-left:0}:root[data-text-size] .top .festbtn{text-align:center}}.app.lineup-sets .top{position:relative}html:has(.app.lineup-sets){scroll-padding-top:10rem}.lineup-caption{font-family:var(--font-body);color:var(--muted);margin:8px 16px 0;font-size:.8rem;font-weight:700;line-height:1.35}.demo-strip{border-left:2px solid var(--warn);color:var(--warn);justify-content:space-between;align-items:center;gap:4px;margin:6px 16px 0;padding-left:10px;font-size:.75rem;line-height:1.3;display:flex}.demo-strip button{min-width:44px;min-height:44px;color:inherit;background:0 0;border:0;flex:none;margin:-12px -8px -12px 0;padding:0}.lineup-bar{top:env(safe-area-inset-top,0px);z-index:6;background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border);flex-direction:column;gap:6px;margin-top:4px;padding:6px 16px 4px;display:flex;position:sticky}.daybar{background:color-mix(in srgb, var(--surface) 70%, transparent);border-radius:999px;height:36px;display:flex}.daybar button{min-width:0;height:44px;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:999px;flex:1 1 0;margin-block:-4px;padding:0 4px;font-size:.875rem}.daybar button.active{background:var(--accent);height:36px;min-height:36px;color:var(--accent-ink);margin-block:0;font-weight:700}.filterbar{align-items:center;gap:8px;height:40px;display:flex}.fchip{background:var(--surface-2);min-width:0;height:40px;color:var(--text);white-space:nowrap;border:0;border-radius:999px;align-items:center;gap:4px;padding:0 12px;font-size:.875rem;font-weight:600;display:inline-flex;position:relative}.fchip i{color:var(--muted);font-size:.7rem;font-style:normal}button.fchip{height:44px;min-height:44px;box-shadow:inset 0 0 0 1px var(--border);background:0 0;flex:none;margin-block:-2px}.stagechip{flex:0 auto;max-width:46%;padding:0}.stagechip select{appearance:none;width:100%;min-width:0;max-width:100%;height:44px;box-shadow:inset 0 0 0 1px var(--border);color:inherit;font:inherit;text-overflow:ellipsis;background:0 0;border:0;border-radius:999px;margin-block:-2px;padding:0 28px 0 12px}.stagechip i{pointer-events:none;position:absolute;right:12px}.viewtoggle{margin-left:auto;display:flex}.viewtoggle button{width:44px;min-width:44px;min-height:44px;color:var(--muted);background:0 0;border:0;border-radius:12px;place-items:center;padding:0;display:grid}.viewtoggle button.active{color:var(--accent);background:var(--accent-soft)}.pickfilter{flex-direction:column;display:flex}.pickfilter button{text-align:left;background:0 0;border:0;border-radius:0;min-height:52px;font-size:1rem}.pickfilter button+button{border-top:1px solid var(--border)}.pickfilter button.active{color:var(--accent);font-weight:700}.pickfilter button{flex-direction:column;align-items:flex-start;gap:2px;padding-top:10px;padding-bottom:10px;display:flex}.pickfilter button .small{color:var(--muted);font-weight:400}.keyhint{margin:6px 16px 0}.keyhint .lvlegend{padding:0}.lineup-sets .tick{border-top-color:color-mix(in srgb, var(--border) 60%, transparent)}.lineup-sets .ghead{box-shadow:0 1px 0 var(--border);border-bottom:0}.famtag{font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--accent-2);color:var(--accent-2);background:0 0;border-radius:999px;align-self:flex-start;padding:1px 6px;font-size:.6875rem;font-weight:700;line-height:1.3;display:inline-block}.fam-arc{animation:1.1s step-end infinite famflicker}.fam-arc.b{animation-delay:.35s}.fam-arc.c{animation-delay:.7s}.fam-drip{transform-box:fill-box;animation:2.6s ease-in infinite famdrip}@keyframes famflicker{0%,to{opacity:1}40%{opacity:.2}55%{opacity:.9}75%{opacity:.3}}@keyframes famdrip{0%{opacity:1;transform:translateY(0)}80%{opacity:1}to{opacity:0;transform:translateY(12px)}}:root[data-calm] .fam-arc,:root[data-calm] .fam-drip,:root[data-festival] .fam-arc,:root[data-festival] .fam-drip{opacity:1;animation:none}.pkit .famtag,.gtile .famtag{text-align:center;white-space:normal;letter-spacing:0;border-radius:8px;align-self:center;padding:0 4px}.gridouter[data-fam]{--slot-h:1.125rem}.famchips{grid-template-columns:repeat(4,minmax(0,1fr));gap:3px;width:100%;display:grid;container-type:inline-size}@container (width<=5.5rem){.famchips .fc i{display:none}}.gset .famchips{margin-top:auto;padding-top:2px}.fc{min-width:0;font-family:var(--font-body);color:#12100a;font-variant-numeric:tabular-nums;border:1px solid #00000059;border-radius:4px;justify-content:center;align-items:center;gap:2px;padding:0 2px;font-size:.75rem;font-weight:700;line-height:1.15;display:flex}.fc i{font-size:.6875rem;font-style:normal}.fc-must{background:var(--must)}.fc-maybe{background:var(--maybe)}.fc-clash{background:#ffd84d}.fc-skip{background:var(--skip)}.fc-zero{color:var(--faint);border-color:var(--border);background:0 0}.gset.lv-must .fc-zero,.gset.lv-maybe .fc-zero{color:#0000008c;border-color:#0000004d}.perf .famchips{max-width:14rem}.crew-going .famchips{margin-right:6px}.ftally.f-must{color:var(--must);font-weight:700}.ftally.f-maybe{color:var(--maybe);font-weight:700}.ftally.f-skip{color:var(--skip);font-weight:700}.gcrew .ftally+.ftally{margin-left:3px}.card.plus-promo{isolation:isolate;border-color:#0000;gap:8px;position:relative}.card.plus-promo:before{content:"";z-index:-1;border-radius:inherit;background:var(--logo-ring);pointer-events:none;-webkit-mask-composite:xor;padding:2px;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}:root[data-contrast=high] .card.plus-promo{border-color:var(--text)}:root[data-contrast=high] .card.plus-promo:before{display:none}.plus-promo h2,.plus-promo p{margin:0}.plus-promo h3{margin:8px 0 0}.plus-promo .plus-code-link{color:var(--accent);text-underline-offset:3px;background:0 0;border:0;align-self:flex-start;padding-left:0;padding-right:0;text-decoration:underline}.plus-promo .kofi-tip{margin:0}.plus-perks{gap:2px;margin:0;padding-left:1.2em;font-size:.9rem;display:grid}.ft-strip{justify-content:center;gap:10px;margin:0 0 8px;display:flex}.ft-strip .gi{filter:grayscale();opacity:.5;line-height:0;display:inline-flex}.ft-strip .got .gi{filter:none;opacity:1}.ft-strip svg{display:block}.training-tip{max-height:36px;color:var(--muted);scroll-margin-top:calc(72px + env(safe-area-inset-top));align-items:center;gap:8px;margin:8px 16px;padding:0 4px;font-size:.8125rem;display:flex;overflow:hidden}.training-tip>span:first-child{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;overflow:hidden}.training-tip button{flex:none;min-height:36px;padding:0 4px;font-size:.8125rem;font-weight:700}@media (width<=640px){.festival-copy{font-size:1rem;line-height:1.35}.festival-copy .fine,.festival-copy .pidt span{font-size:.8125rem}}.me-grid{margin-top:14px}.me-feedback-row{margin:10px 0 0}.me-sheet>.card{margin:0}.info-btn{border-radius:999px;min-width:44px;min-height:44px;padding:0;font-size:1.1rem;line-height:1}.quest.quest-line{align-items:center;padding:10px 12px}.quest-line .qi{text-align:center;min-width:1.6rem;font-size:1.2rem}.quest-line .qb>summary{cursor:pointer;flex-flow:wrap;align-content:center;align-items:baseline;gap:0 8px;min-height:44px;list-style:none;display:flex}.quest-line .qb>summary::-webkit-details-marker{display:none}.quest-line .qb>summary:before{content:none}.quest-line .qn b{font-family:var(--font-body);font-size:.95rem}.quest-line .qb[open]>summary{min-height:0;margin-bottom:4px}.quest-line .qb>.muted,.quest-line .qb>.qp{display:block}details.collapse>.quests{margin:0}:is(.festmap-head,.festmap-extras:has(>*)){background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px}.festmap-extras:has(>*){flex-direction:column;gap:8px;margin-top:10px;display:flex}.festmap-extras>p{margin:0}.festmap-extras>.card{box-shadow:none;background:0 0;border:0;margin:0;padding:0}.festmap-view.map-first .festmap-extras:has(>*){margin:10px 16px 0;padding:12px 14px}section.pad>:is(p,h1,h2){text-shadow:0 1px 2px var(--bg), 0 0 8px var(--bg)}[data-hint]{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.hint-what{margin:4px 0 8px;font-size:1.05rem;font-weight:600}.hint-how{margin:0 0 12px}.hint-foot{margin:0}.hint-rings{pointer-events:none}.hint-rings-page{z-index:4;width:0;height:0;position:absolute;top:0;left:0}.hint-rings-bar{z-index:1;width:0;height:0;position:absolute;top:0;left:0}.hint-rings .hint-ring{position:absolute}.hint-ring{pointer-events:none;isolation:isolate}.hint-ring:before,.hint-ring:after{content:"";border-radius:inherit;background:var(--logo-ring);-webkit-mask-composite:xor;padding:2px;position:absolute;inset:-2px;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.hint-ring:after{filter:blur(5px);opacity:.6}@media (prefers-reduced-motion:no-preference){.hint-ring:after{animation:2.4s ease-in-out infinite alternate update-glow}}:root[data-contrast=high] .hint-ring:after{display:none}.moremenu .switch-sub{color:var(--muted);margin-top:2px;font-size:.8rem;font-weight:400;display:block}.hint-coach{background:color-mix(in srgb, var(--accent) 18%, var(--surface));border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);border-radius:12px;flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 10px;padding:10px 12px;font-weight:600;display:flex}.hint-coach .ico{font-size:1.3rem}.hint-coach>span:not(.ico){overflow-wrap:anywhere;flex:8rem;min-width:0}.hint-coach button{white-space:nowrap;flex:none;min-height:36px;margin-left:auto}.moremenu .switch-row{justify-content:space-between;align-items:center;width:100%;min-height:52px;padding:0 12px;font-size:1rem;display:flex}.moremenu .switch-row input{width:22px;height:22px}.spot{z-index:70;pointer-events:none;position:fixed;inset:0}.spot-safety{min-height:44px;padding:6px 12px;font-size:.875rem}@media (width>=301px){html:has(.spot) .app .top{position:sticky}}.spot-safety-door{pointer-events:auto;min-height:0;color:var(--text);flex-direction:column;justify-content:center;align-items:center;gap:6px;margin:0;padding:0;font-weight:700;display:flex;position:fixed}.spot-safety-door-icon{background:0 0;border:0}.spot-safety-door-icon span{border:1.5px solid var(--accent);background:var(--bg);border-radius:50%;place-items:center;width:32px;height:32px;font-size:1rem;display:grid}.spot-safety-door-tile{background:var(--surface);border:1px solid var(--accent);border-radius:14px;font-size:.8rem}.spot-safety-door-tile span{font-size:1.3rem;line-height:1}.spot-panel,.spot-dim{pointer-events:auto;touch-action:none;position:fixed}.spot-dim{inset:0}.spot-blur{-webkit-backdrop-filter:blur(6px);background:#0a04108c}.spot-plain{background:#0a0410cc;transition:none}.spot-guard{pointer-events:auto;touch-action:none;position:fixed}.spot-ring{pointer-events:none;box-shadow:0 0 0 2px #00000073, 0 0 22px 2px var(--accent);border-radius:12px;position:fixed}.spot-ring:before,.spot-ring:after{content:"";border-radius:inherit;background:var(--logo-ring);pointer-events:none;-webkit-mask-composite:xor;padding:2px;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor,source-over;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0)}.spot-ring:after{filter:blur(8px);opacity:.85}.spot-card{pointer-events:auto;background:var(--surface);width:min(360px,100vw - 32px);max-height:calc(100dvh - 16px);color:var(--text);border:1px solid var(--accent);border-radius:var(--radius);flex-direction:column;gap:8px;padding:14px 16px;animation:.16s spotin;display:flex;position:fixed;left:50%;overflow-y:auto;transform:translate(-50%);box-shadow:0 12px 34px -8px #000000b3}.spot-card[data-place=center]{top:50%;transform:translate(-50%,-50%)}.spot-card:focus{outline:none}.spot-card:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.spot-card-plain{animation:none}@keyframes spotin{0%{opacity:0}}.spot-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.spot-step{font-family:var(--font-body);letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin:0;font-size:.75rem;font-weight:700}.spot-close{align-self:auto;min-width:44px;min-height:44px}.spot-title{margin:0;font-size:1.05rem}.spot-body{color:var(--text);margin:0;line-height:1.45}.spot-hint{color:var(--accent-2);margin:0;font-weight:700}.spot-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.spot-actions button{min-width:44px;min-height:44px}.spot-skip{background:0 0;margin-left:auto}@media (prefers-reduced-motion:reduce){.spot-panel,.spot-dim,.spot-ring,.spot-card{transition:none;animation:none}.spot-blur{-webkit-backdrop-filter:none;background:#0a0410cc}}:root{--css-build:2}
