.tutorial-backdrop{z-index:200;padding:var(--space-4);background:var(--scrim);place-items:center;display:grid;position:fixed;inset:0}.tutorial-backdrop.is-standalone{background:var(--bg)}.tutorial-dialog{gap:var(--space-3);width:min(100%,360px);padding:var(--space-4);border:2px solid var(--ink);background:var(--surface);box-shadow:inset 2px 2px 0 #fff6, inset -2px -2px 0 #1e1b2626, 0 4px 0 var(--ink);border-radius:0;display:grid}.tutorial-top{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.tutorial-count{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--muted);letter-spacing:.04em}.tutorial-skip{min-height:32px;padding:0 var(--space-3);border:2px solid var(--ink);background:var(--surface-raised);color:var(--ink);font:inherit;font-size:var(--fs-sm);cursor:pointer;border-radius:0;font-weight:700}.tutorial-track{touch-action:pan-y;-webkit-user-select:none;user-select:none;min-height:248px}.tutorial-card{gap:var(--space-3);padding:var(--space-4);border:2px solid var(--ink);background:var(--surface-raised);box-shadow:inset 2px 2px 0 #fff6, 0 3px 0 var(--ink);border-radius:0;animation:.18s steps(3,end) tutorial-slide;display:grid}.tutorial-eyebrow{padding:2px var(--space-2);border:2px solid var(--ink);background:var(--px-cta);font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--ink);border-radius:0;justify-self:start}.tutorial-card h2{font-family:var(--font-display);font-size:var(--fs-2xl);color:var(--ink);margin:0;font-weight:800;line-height:1.25}.tutorial-card p{font-size:var(--fs-lg);color:var(--ink-2);word-break:keep-all;margin:0;line-height:1.6}.tutorial-dots{justify-content:center;gap:var(--space-2);display:flex}.tutorial-dot{border:2px solid var(--ink);background:repeating-linear-gradient(45deg, var(--surface-sunken) 0 2px, var(--surface) 2px 4px);cursor:pointer;border-radius:0;width:12px;height:12px;padding:0}.tutorial-dot.is-current{background:var(--ink)}.tutorial-actions{gap:var(--space-2);grid-template-columns:1fr 1.4fr;display:grid}.tutorial-nav{border:2px solid var(--ink);min-height:48px;box-shadow:0 3px 0 var(--ink);background:var(--surface-raised);color:var(--ink);font:inherit;font-size:var(--fs-xl);cursor:pointer;border-radius:0;font-weight:800}.tutorial-nav.is-primary{background:var(--px-cta)}.tutorial-nav:active:not(:disabled){box-shadow:0 1px 0 var(--ink);transform:translateY(2px)}.tutorial-nav:disabled{color:var(--muted);cursor:default;box-shadow:0 1px 0 var(--ink);background:repeating-linear-gradient(45deg, var(--surface-sunken) 0 2px, var(--surface) 2px 4px)}@keyframes tutorial-slide{0%{opacity:.4;transform:translate(12px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.tutorial-card{animation:none}.tutorial-nav:active:not(:disabled){transform:none}}.game-hud{z-index:3;border:2px solid var(--px-edge);background:var(--surface-raised);box-shadow:var(--px-shadow);border-radius:0;flex:none;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:4px 10px;margin:0 15px 6px;padding:8px 10px;display:grid;position:relative}.hud-main{gap:4px;min-width:0;display:grid}.hud-identity{min-width:0;display:grid}.hud-identity b{color:var(--ink);font-family:var(--font-display);font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.hud-identity small{color:var(--muted);font-size:var(--fs-xs);white-space:nowrap}.hud-identity em{color:var(--ink);font-style:normal;font-weight:800}.hud-side{justify-items:end;gap:2px;display:grid}.hud-balance{justify-items:end;display:grid}.hud-balance small,.hud-fame small,.hud-condition small{color:var(--muted);font-size:var(--fs-xs);white-space:nowrap}.hud-balance b{color:var(--reward);font-family:var(--font-mono);font-size:var(--fs-lg);font-weight:800}.hud-fame{justify-items:end;display:grid}.hud-fame b{color:var(--ink);font-family:var(--font-display);font-weight:800}.hud-calendar{grid-column:1/-1;grid-template-columns:repeat(12,1fr);gap:2px;margin:2px 0 0;padding:0;list-style:none;display:grid}.hud-calendar li{border:2px solid var(--px-edge);height:14px;color:var(--muted);background:var(--surface);font-family:var(--font-display);border-radius:0;place-items:center;font-size:9px;font-weight:800;line-height:1;display:grid}.hud-calendar li.is-done{color:var(--on-teal);background:repeating-linear-gradient(90deg, var(--teal) 0 4px, var(--teal-ink) 4px 6px)}.hud-calendar li.is-current{color:var(--on-resource);background:var(--reward)}.hud-condition{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto auto 1fr;align-items:center;gap:6px;min-width:0;min-height:28px;padding:0;display:grid}.hud-condition b{color:var(--ink);font-family:var(--font-mono);font-size:var(--fs-md);justify-self:end;font-weight:800}.hud-condition.is-low small{color:var(--px-cta);font-weight:800}.hud-condition.is-low b{color:var(--px-cta)}.level-badge{grid-template-columns:auto 1fr;align-items:baseline;gap:0 3px;min-width:62px;display:grid}.level-badge-label{color:var(--muted);font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:800}.level-badge-num{color:var(--teal);font-family:var(--font-mono);text-align:left;font-size:32px;font-weight:800;line-height:1}.level-badge-bar{border:2px solid var(--px-edge);background:var(--surface);grid-column:1/-1;height:8px;margin-top:4px;display:block;position:relative}.level-badge-bar:after{width:var(--fill,0%);background:var(--reward);content:"";transition:width .5s steps(8,end);position:absolute;inset:0}.level-badge.is-lg{min-width:120px}.level-badge.is-lg .level-badge-label{font-size:var(--fs-md)}.level-badge.is-lg .level-badge-num{font-size:52px}.level-badge.is-lg .level-badge-bar{height:12px}.energy-cells{gap:2px;display:inline-flex}.energy-cells i{border:2px solid var(--px-edge);background:var(--surface);width:14px;height:12px;display:block}.energy-cells i.is-lit{background:var(--teal)}.energy-cells.is-low i.is-lit{background:var(--px-cta)}.month-banner{z-index:6;border:2px solid var(--px-edge);min-width:200px;color:var(--ink);background:var(--px-cta);box-shadow:var(--px-shadow);pointer-events:none;border-radius:0;justify-items:center;gap:4px;padding:10px 16px;animation:.3s steps(3,end) month-banner-in,.4s steps(3,end) 2.2s forwards month-banner-out;display:grid;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.month-banner b{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:800}.month-banner span{font-size:var(--fs-sm);font-weight:700}@keyframes month-banner-in{0%{opacity:0;transform:translate(-50%,-30%)}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes month-banner-out{to{opacity:0;transform:translate(-50%,-60%)}}.condition-sheet{color:var(--ink-2);font-size:var(--fs-sm);gap:12px;display:grid}.condition-sheet ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.condition-sheet li{border:2px solid var(--px-edge);background:var(--surface);border-radius:0;gap:2px;padding:9px 11px;display:grid}.condition-sheet li span{color:var(--muted)}.condition-sheet-note{color:var(--muted);font-size:var(--fs-xs)}@media (prefers-reduced-motion:reduce){.month-banner{animation:none}.level-badge-bar:after{transition:none}}.celebrate{z-index:8;pointer-events:none;display:grid;position:absolute;inset:0}.celebrate-flash{background:var(--reward);opacity:0;animation:.5s steps(5,end) celebrate-flash;position:absolute;inset:0}.celebrate.is-goal,.celebrate.is-all,.celebrate.is-trick{align-content:start;justify-items:center;padding-top:206px}.celebrate-card{border:2px solid var(--teal);min-width:240px;color:var(--ink);background:var(--surface-raised);align-items:center;gap:10px;padding:10px 16px 10px 10px;animation:.3s steps(4,end) celebrate-drop,.3s steps(3,end) 1.3s forwards celebrate-out;display:flex;position:relative;box-shadow:0 4px #06121c}.celebrate-card b{font-family:var(--font-display);font-size:var(--fs-lg);font-weight:800;display:block}.celebrate-card small{color:var(--muted);font-size:var(--fs-xs)}.celebrate-check{color:#06121c;background:var(--teal);border:2px solid #06121c;place-items:center;width:32px;height:32px;font-size:18px;font-weight:800;animation:.4s steps(4,end) celebrate-pop;display:grid}.celebrate.is-all .celebrate-card{border-color:var(--reward);animation:.3s steps(4,end) celebrate-drop,.3s steps(3,end) 1.9s forwards celebrate-out}.celebrate.is-all .celebrate-check{background:var(--reward)}.celebrate.is-all .celebrate-flash{animation-duration:.7s}.celebrate-level{z-index:1;place-self:center;justify-items:center;gap:6px;animation:.45s steps(5,end) celebrate-pop,.3s steps(3,end) 1.9s forwards celebrate-out;display:grid;position:relative}.celebrate-title{color:var(--reward);font-family:var(--font-display);letter-spacing:.04em;text-shadow:3px 3px #06121c;font-size:30px;font-weight:800}.celebrate-lv{border:2px solid var(--teal);color:var(--teal);font-family:var(--font-mono);background:#06121ce6;align-items:baseline;gap:6px;padding:6px 18px;font-size:56px;font-weight:800;line-height:1.1;display:inline-flex;box-shadow:0 4px #06121c}.celebrate-lv small{color:var(--muted);font-size:var(--fs-lg)}@keyframes celebrate-flash{0%{opacity:.55}to{opacity:0}}@keyframes celebrate-drop{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:none}}@keyframes celebrate-out{to{opacity:0;transform:translateY(-8px)}}@keyframes celebrate-pop{0%{transform:scale(.6)}60%{transform:scale(1.12)}to{transform:scale(1)}}.quest-row.is-fresh{animation:.8s steps(4,end) quest-fresh}.quest-row.is-fresh .quest-bar i{animation:.5s steps(6,end) quest-fill}@keyframes quest-fresh{0%,50%{background:#62e5c355}to{background:#06121cc4}}@keyframes quest-fill{0%{width:0}}@media (prefers-reduced-motion:reduce){.celebrate-flash{display:none}.celebrate-card,.celebrate-check,.celebrate-level,.quest-row.is-fresh,.quest-row.is-fresh .quest-bar i{animation:none}.celebrate-card,.celebrate-level{animation:10ms linear 1.6s forwards celebrate-out}}.celebrate-card.is-trick{border-color:var(--reward)}.celebrate-card.is-trick .celebrate-check{background:var(--reward)}.character-wizard{gap:16px;padding-left:16px;padding-right:16px;display:grid}.character-wizard h1{margin:0}.character-wizard h2{font-size:var(--fs-lg);letter-spacing:-.02em;margin:0 0 4px}.character-wizard .creator-legacy{border:2px solid var(--ink);box-shadow:0 3px 0 var(--ink);border-radius:0}.wizard-steps{grid-template-columns:repeat(3,1fr);gap:8px;margin:0;padding:0;list-style:none;display:grid}.wizard-steps li{color:var(--muted);font-size:var(--fs-xs);justify-items:center;gap:4px;font-weight:700;display:grid}.wizard-dot{border:2px solid var(--ink);width:28px;height:28px;font-family:var(--font-display);background:repeating-linear-gradient(45deg, var(--surface) 0 4px, var(--line) 4px 8px);border-radius:0;place-items:center;font-weight:800;display:grid}.wizard-steps li.done .wizard-dot{color:#fff;background:var(--teal-ink)}.wizard-steps li.current .wizard-dot{color:var(--ink);background:var(--px-cta);box-shadow:0 3px 0 var(--ink)}.wizard-steps li.current{color:var(--ink)}.wizard-form{gap:16px;display:grid}.wizard-panel{border:2px solid var(--ink);background:var(--surface);box-shadow:0 3px 0 var(--ink);border-radius:0;gap:12px;padding:16px;display:grid}.wizard-copy{color:var(--ink-2);font-size:var(--fs-sm);margin:0;line-height:1.5}.wizard-hint{color:var(--muted);font-size:var(--fs-xs)}.character-wizard .creator-field input,.character-wizard .creator-field select{border:2px solid var(--ink);border-radius:0}.wizard-quick{border:2px dashed var(--ink);width:100%;color:var(--ink);background:repeating-linear-gradient(-45deg, var(--surface) 0 6px, var(--paper) 6px 12px);font:inherit;text-align:left;cursor:pointer;border-radius:0;gap:4px;padding:12px 14px;display:grid}.wizard-quick b{font-family:var(--font-display);font-size:var(--fs-md)}.wizard-quick small{color:var(--ink-2);font-size:var(--fs-xs)}.wizard-quick:disabled{color:var(--muted);cursor:default}.wizard-styles{gap:12px;display:grid}.wizard-style{border:2px solid var(--ink);color:var(--ink);background:var(--surface);box-shadow:0 3px 0 var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:0;gap:8px;padding:12px;transition:transform 80ms,box-shadow 80ms;display:grid}.wizard-style:active{box-shadow:0 1px 0 var(--ink);transform:translateY(2px)}.wizard-style.selected{background:var(--px-cta-tint)}.wizard-style-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.wizard-style-head b{font-family:var(--font-display);font-size:var(--fs-md)}.wizard-style-head small{border:2px solid var(--ink);background:var(--surface-raised);font-size:var(--fs-xs);border-radius:0;padding:2px 6px;font-weight:700}.wizard-style.selected .wizard-style-head small{background:var(--px-cta)}.wizard-style-desc{color:var(--ink-2);font-size:var(--fs-sm);line-height:1.45}.wizard-style-skills{grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.wizard-style-skills span{border:2px solid var(--ink);background:var(--surface-raised);border-radius:0;justify-items:center;gap:2px;padding:4px 0;display:grid}.wizard-style-skills small{color:var(--muted);font-size:10px}.wizard-style-skills strong{font-family:var(--font-display);font-size:var(--fs-md)}.wizard-style-label{color:var(--ink);font-size:var(--fs-xs);font-weight:800}.wizard-style-passive{color:var(--muted);font-size:var(--fs-xs)}.wizard-chips{flex-wrap:wrap;gap:4px;display:flex}.wizard-chips i{border:2px solid var(--ink);color:var(--ink);background:var(--teal-tint);font-style:normal;font-size:var(--fs-xs);border-radius:0;padding:2px 6px;font-weight:700}.wizard-chips i.more{color:var(--ink-2);background:repeating-linear-gradient(45deg, var(--surface) 0 4px, var(--line) 4px 8px)}.character-wizard .wizard-group{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.character-wizard .wizard-group legend{color:var(--ink-2);font-size:var(--fs-sm);margin-bottom:6px;padding:0;font-weight:800}.wizard-options{grid-template-columns:1fr 1fr;gap:8px;display:grid}.wizard-options button{border:2px solid var(--ink);color:var(--ink);background:var(--surface);font:inherit;text-align:left;cursor:pointer;border-radius:0;gap:4px;padding:10px;display:grid}.wizard-options button b{font-family:var(--font-display)}.wizard-options button small{color:var(--muted);font-size:var(--fs-xs);line-height:1.4}.wizard-options button.selected{background:var(--px-cta-tint);box-shadow:inset 0 0 0 2px var(--ink)}.wizard-summary{border:2px solid var(--ink);background:var(--paper);box-shadow:0 3px 0 var(--ink);border-radius:0;gap:8px;padding:12px;display:grid}.wizard-summary b{font-family:var(--font-display);font-size:var(--fs-md)}.wizard-summary p{color:var(--ink-2);font-size:var(--fs-sm);margin:0}.wizard-summary small{color:var(--muted);font-size:var(--fs-xs);line-height:1.45}.wizard-nav{grid-template-columns:96px 1fr;gap:8px;display:grid}.wizard-back{border:2px solid var(--ink);min-height:50px;color:var(--ink);background:var(--surface-raised);font:inherit;cursor:pointer;box-shadow:0 3px 0 var(--ink);border-radius:0;font-weight:700}.wizard-back:disabled{color:var(--muted);background:repeating-linear-gradient(45deg, var(--surface) 0 4px, var(--line) 4px 8px);box-shadow:none;cursor:default}.character-wizard .wizard-next{border:2px solid var(--ink);border-radius:0}@media (prefers-reduced-motion:reduce){.wizard-style{transition:none}}.wizard-skip{width:100%;color:var(--ink-2);font:inherit;font-size:var(--fs-xs);text-align:center;cursor:pointer;background:0 0;border:0;margin-top:4px;padding:8px 0;text-decoration:underline;display:block}.wizard-skip small{color:var(--muted);text-decoration:none;display:block}.wizard-skip:disabled{color:var(--muted);cursor:default;text-decoration:none}.fx-post{border-bottom:1px solid var(--line);background:var(--surface-raised);padding-bottom:14px}.fx-suggested{color:var(--muted);font-size:var(--fs-xs);margin:0;padding:8px 13px 0}.fx-head{align-items:center;gap:9px;min-height:54px;padding:7px 13px;display:flex}.fx-avatar{background:hsl(var(--hue) 55% 58%);border-radius:50%;flex:0 0 36px;place-items:center;width:36px;height:36px;display:grid}.fx-avatar i{border:2px solid var(--surface-raised);color:#fff;background:hsl(var(--hue) 42% 34%);width:32px;height:32px;font-size:var(--fs-md);border-radius:50%;place-items:center;font-style:normal;font-weight:700;display:grid}.fx-who{flex:1;gap:1px;min-width:0;display:grid}.fx-who b{color:var(--ink);font-size:var(--fs-md)}.fx-who small{color:var(--muted);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fx-verified{color:#fff;background:var(--teal-ink);vertical-align:1px;border-radius:50%;place-items:center;width:14px;height:14px;margin-left:4px;font-size:9px;font-style:normal;display:inline-grid}.fx-media{aspect-ratio:4/5;background:var(--surface-sunken);width:100%;position:relative;overflow:hidden}.fx-track{scroll-snap-type:x mandatory;scrollbar-width:none;width:100%;height:100%;display:flex;overflow-x:auto}.fx-track::-webkit-scrollbar{display:none}.fx-slide{scroll-snap-align:center;flex:0 0 100%;height:100%;position:relative;overflow:hidden}.fx-slide>img{object-fit:cover;width:100%;height:100%;display:block}.fx-product{background:var(--surface-sunken);place-items:center;display:grid;position:absolute;inset:0}.fx-product img{width:56%;height:auto;image-rendering:pixelated;filter:drop-shadow(0 10px #0000001f)}.fx-counter,.fx-duration{color:#fff;font-size:var(--fs-xs);font-variant-numeric:tabular-nums;background:#14121aa3;border-radius:12px;padding:4px 9px;font-weight:700;position:absolute}.fx-counter{top:10px;right:10px}.fx-duration{bottom:10px;left:10px}.fx-reel{color:#fff;filter:drop-shadow(0 1px 3px #0000008c);place-items:center;width:28px;height:28px;display:grid;position:absolute;top:9px;right:9px}.fx-reel svg{fill:currentColor;width:24px;height:24px}.fx-dots{pointer-events:none;justify-content:center;gap:5px;display:flex;position:absolute;bottom:10px;left:0;right:0}.fx-dots i{background:#ffffff80;border-radius:50%;width:6px;height:6px}.fx-dots i.is-active{background:#fff}.fx-copy{gap:4px;padding:2px 13px 0;display:grid}.fx-likes{color:var(--ink);font-size:var(--fs-md)}.fx-caption,.fx-preview{color:var(--ink);font-size:var(--fs-md);margin:0;line-height:1.5}.fx-caption b,.fx-preview b{font-weight:700}.fx-tag{color:var(--teal-ink);white-space:nowrap}.fx-more{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;margin-left:4px;padding:0}.fx-preview{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fx-copy time{color:var(--muted);font-size:var(--fs-xs);margin-top:2px}.fx-first-clip{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);background:var(--surface-sunken);text-align:left;cursor:pointer;gap:2px;padding:14px 13px;display:grid}.fx-first-clip span{color:var(--teal-ink)}.fx-first-clip b{font-size:var(--fs-md)}.fx-first-clip small{color:var(--muted);font-size:var(--fs-sm)}.fx-sentinel{height:1px}.fx-end{color:var(--muted);font-size:var(--fs-sm);text-align:center;margin:0;padding:22px 13px}.fx-clip-chip{color:#f2e7db;font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:.06em;background:#06121ccc;border:2px solid #06121c;align-items:center;gap:6px;padding:3px 8px;font-weight:800;display:inline-flex;position:absolute;top:10px;left:10px}.fx-clip-chip i{background:#f2e7db;width:8px;height:8px}.fx-q{color:var(--reward);font-family:var(--font-mono);background:#06121ce6;border:2px solid #06121c;align-items:baseline;gap:4px;padding:4px 10px;font-size:28px;font-weight:800;line-height:1.1;display:inline-flex;position:absolute;bottom:10px;right:10px;box-shadow:0 3px #06121c}.fx-q small{color:var(--muted);font-size:var(--fs-sm)}.fx-q.grade-highlight{color:#62e5c3}.fx-q.grade-legend{color:#f2b33d}.fx-stats{background:var(--px-edge);border-block:2px solid var(--px-edge);grid-template-columns:repeat(3,1fr);gap:1px;margin:0;display:grid}.fx-stats>div{background:var(--surface-raised);gap:2px;padding:8px 10px;display:grid}.fx-stats dt{color:var(--muted);font-size:var(--fs-xs)}.fx-stats dd{color:var(--ink);font-family:var(--font-mono);font-size:var(--fs-2xl);margin:0;font-weight:800}.fx-stats .is-gain dd{color:#62e5c3}.fx-mine .fx-likes{display:none}.fx-first-clip{border-style:dashed;grid-template-columns:56px minmax(0,1fr);align-items:center;gap:4px 12px}.fx-first-art{border:2px dashed var(--line-strong);width:56px;height:56px;color:var(--muted);background:var(--surface);font-family:var(--font-mono);grid-row:1/span 2;place-items:center;display:grid;position:relative}.fx-first-art i{font-size:var(--fs-xs);font-style:normal;position:absolute;top:2px;left:4px}.fx-first-art b{font-size:22px}.fx-first-copy{gap:2px;display:grid}.fx-first-copy em{color:var(--reward);font-size:var(--fs-xs);font-style:normal;font-weight:800}.fx-first-go{color:#06121c;background:var(--px-cta);font-size:var(--fs-sm);border:2px solid #06121c;grid-column:1/-1;justify-self:end;padding:6px 10px;font-weight:800}.fx-mine .fx-media{aspect-ratio:1}.home-stage-screen{gap:12px;display:grid}.home-stage-scene{border:2px solid var(--px-edge);background:var(--ink);height:clamp(280px,44dvh,400px);box-shadow:var(--px-shadow);position:relative;overflow:hidden}.home-stage-scene .skate-scene{object-fit:cover;object-position:60% 85%;width:100%;height:100%;display:block}.home-stage-shade{pointer-events:none;background:linear-gradient(#06121c99 0,#06121c00 42% 58%,#06121ce6 100%);position:absolute;inset:0}.home-quests{gap:4px;display:grid;position:absolute;top:8px;left:8px;right:8px}.home-quests-head{color:#f2e7db;font-family:var(--font-display);font-size:var(--fs-sm);text-shadow:0 1px #06121c;align-items:baseline;gap:8px;padding:0 2px;font-weight:800;display:flex}.home-quests-head b{color:#62e5c3;font-family:var(--font-mono)}.home-quests-head em{color:var(--reward);font-size:var(--fs-xs);margin-left:auto;font-style:normal}.quest-row{color:#f2e7db;min-height:32px;font:inherit;text-align:left;cursor:pointer;background:#06121cc4;border:2px solid #06121c;border-left-width:4px;border-radius:0;grid-template-columns:20px minmax(0,1fr) 72px 38px;align-items:center;gap:8px;padding:4px 8px;display:grid}.quest-mark{color:#8ca3a8;place-items:center;width:20px;height:20px;display:grid}.quest-name{font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.quest-bar{background:#0c1a28;border:2px solid #2a4558;height:8px;display:block;position:relative}.quest-bar i{width:var(--fill,0%);background:#8ca3a8;position:absolute;inset:0}.quest-percent{color:#8ca3a8;font-family:var(--font-mono);font-size:var(--fs-xs);text-align:right;font-weight:800}.quest-row.is-active{border-left-color:var(--reward)}.quest-row.is-active .quest-bar i{background:var(--reward)}.quest-row.is-active .quest-percent{color:var(--reward)}.quest-row.is-done{border-left-color:#62e5c3}.quest-row.is-done .quest-mark,.quest-row.is-done .quest-percent{color:#62e5c3}.quest-row.is-done .quest-bar i{background:#62e5c3}.quest-row:active{transform:translateY(2px)}.home-stage-plate{justify-content:space-between;align-items:flex-end;gap:8px;display:flex;position:absolute;bottom:8px;left:8px;right:8px}.home-stage-id{gap:4px;min-width:0;display:grid}.home-stage-rank{color:#06121c;min-height:20px;font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.04em;background:#62e5c3;border:2px solid #06121c;justify-self:start;padding:2px 6px;font-weight:800}.home-stage-plate h1{color:#f2e7db;font-family:var(--font-display);font-size:var(--fs-2xl);letter-spacing:-.02em;text-shadow:0 2px #06121c;white-space:nowrap;align-items:baseline;gap:8px;margin:0;font-weight:800;line-height:1.1;display:flex;overflow:hidden}.home-stage-plate h1 small{color:#cfe3da;font-size:var(--fs-xs);font-weight:700}.home-stage-profile{color:#62e5c3;min-height:36px;font:inherit;font-size:var(--fs-xs);white-space:nowrap;cursor:pointer;background:#06121ccc;border:2px solid #62e5c3;border-radius:0;align-items:center;gap:4px;padding:0 10px;font-weight:800;display:inline-flex;box-shadow:0 2px #06121c}.home-stage-profile:active{box-shadow:none;transform:translateY(2px)}.home-command{border:2px solid var(--px-edge);background:var(--surface-raised);box-shadow:var(--px-shadow);border-radius:0;gap:8px;padding:12px 14px;display:grid}.home-command-head{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.home-command-tag{border:2px solid var(--px-edge);min-height:20px;color:var(--on-teal);background:var(--teal);font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.08em;border-radius:0;flex:none;padding:2px 6px;font-weight:800}.home-command-goal{color:var(--reward);font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.home-command h2{color:var(--ink);font-family:var(--font-display);font-size:var(--fs-xl);letter-spacing:-.01em;margin:0;font-weight:800}.home-command p{color:var(--ink-2);font-size:var(--fs-sm);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;line-height:1.45;display:-webkit-box;overflow:hidden}.home-command-cta{border:2px solid var(--px-edge);width:100%;min-height:56px;color:var(--ink);background:var(--px-cta);font:inherit;font-family:var(--font-display);font-size:var(--fs-xl);text-align:left;cursor:pointer;border-radius:0;justify-content:space-between;align-items:center;gap:8px;padding:0 14px;font-weight:800;transition:transform 80ms,box-shadow 80ms;display:flex;box-shadow:0 4px #06121c}.home-command-cta:active{transform:translateY(3px);box-shadow:0 1px #06121c}.home-command-secondary{border:2px solid var(--line);color:var(--ink);background:var(--surface);font:inherit;text-align:left;cursor:pointer;border-radius:0;grid-template-columns:1fr auto;gap:2px 8px;padding:8px 10px;display:grid}.home-command-secondary span{font-family:var(--font-display);font-size:var(--fs-sm);font-weight:700}.home-command-secondary small{color:var(--muted);font-size:var(--fs-xs);grid-column:1}.home-command-secondary b{grid-area:1/2/span 2;align-self:center}.home-claims{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.home-claims-title{color:var(--muted);font-size:var(--fs-xs);font-weight:700}.home-claim{border:2px solid var(--reward);min-height:36px;color:var(--ink);background:var(--surface);font:inherit;font-size:var(--fs-xs);cursor:pointer;border-radius:0;align-items:center;gap:6px;padding:0 10px;font-weight:700;display:inline-flex}.home-claim b{color:var(--reward);font-family:var(--font-mono)}.home-claim:active{transform:translateY(2px)}@media (prefers-reduced-motion:reduce){.home-command-cta{transition:none}}.weekly-plan{border:2px solid var(--px-edge);background:var(--surface-raised);box-shadow:var(--px-shadow);border-radius:0;gap:8px;padding:12px 14px;display:grid}.weekly-plan-head{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.weekly-plan-tag{border:2px solid var(--px-edge);min-height:20px;color:var(--on-teal);background:var(--teal);font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.08em;flex:none;padding:2px 6px;font-weight:800}.weekly-plan-when{color:var(--ink-2);font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.weekly-plan-title{color:var(--ink);font-family:var(--font-display);font-size:var(--fs-lg);margin:0;font-weight:800}.weekly-plan-note{color:var(--ink-2);font-size:var(--fs-xs);margin:0;line-height:1.4}.weekly-plan-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:0;padding:0;list-style:none;display:grid}.weekly-plan-day{border:2px solid var(--line);width:100%;min-width:0;color:var(--ink);background:var(--surface);font:inherit;cursor:pointer;border-radius:0;justify-items:center;gap:2px;padding:6px 0;display:grid}.weekly-plan-day small{color:var(--muted);font-size:var(--fs-2xs);font-weight:800}.weekly-plan-day b{max-width:100%;font-size:var(--fs-2xs);text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.weekly-plan-day.is-today{border-color:var(--px-edge);background:var(--px-cta-tint)}.weekly-plan-day:disabled{cursor:default;opacity:.55}.weekly-plan-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.weekly-plan-actions button{border:2px solid var(--px-edge);min-height:40px;color:var(--ink);background:var(--surface);box-shadow:var(--px-shadow);font:inherit;font-family:var(--font-display);font-size:var(--fs-sm);cursor:pointer;border-radius:0;padding:0 8px;font-weight:800}.weekly-plan-actions button:active{box-shadow:var(--px-shadow-press);transform:translateY(2px)}.weekly-plan-actions button:disabled{cursor:default;opacity:.5}.weekly-plan-actions .weekly-plan-rest{background:var(--teal-tint)}.weekly-plan-result{border-left:3px solid var(--reward);color:var(--ink);font-size:var(--fs-xs);background:var(--surface);margin:0;padding:6px 8px;line-height:1.45}.day-rest-button{border:2px solid var(--px-edge);width:100%;color:var(--ink);background:var(--teal-tint);box-shadow:var(--px-shadow);font:inherit;text-align:left;cursor:pointer;border-radius:0;gap:2px;margin:8px 0;padding:10px 12px;display:grid}.day-rest-button span{font-family:var(--font-display);font-size:var(--fs-md);font-weight:800}.day-rest-button small{color:var(--ink-2);font-size:var(--fs-xs);line-height:1.4}.day-rest-button:active{box-shadow:var(--px-shadow-press);transform:translateY(2px)}.life-event{border:2px solid var(--px-edge);background:var(--surface-raised);box-shadow:var(--px-shadow);border-radius:0;gap:8px;padding:12px 14px;display:grid}.life-event.is-done{gap:4px}.life-event-head{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.life-event-tag{border:2px solid var(--px-edge);min-height:20px;color:var(--on-teal);background:var(--teal);font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.08em;flex:none;padding:2px 6px;font-weight:800}.life-event-mood{border:2px solid var(--px-edge);color:var(--ink);background:var(--surface);font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap;padding:2px 6px;overflow:hidden}.life-event-mood.is-gloomy{background:var(--teal-tint)}.life-event-title{color:var(--ink);font-family:var(--font-display);font-size:var(--fs-lg);margin:0;font-weight:800}.life-event-desc{color:var(--ink-2);font-size:var(--fs-xs);margin:0;line-height:1.5}.life-event.is-done small{color:var(--ink-2);font-size:var(--fs-xs);line-height:1.4}.life-event-choices{gap:6px;display:grid}.life-event-choices button{border:2px solid var(--px-edge);width:100%;color:var(--ink);background:var(--surface);box-shadow:var(--px-shadow);font:inherit;text-align:left;cursor:pointer;border-radius:0;gap:2px;padding:8px 10px;display:grid}.life-event-choices button span{font-family:var(--font-display);font-size:var(--fs-sm);font-weight:800}.life-event-choices button small{color:var(--ink-2);font-size:var(--fs-xs);line-height:1.4}.life-event-choices button:active{box-shadow:var(--px-shadow-press);transform:translateY(2px)}.life-event-choices button:disabled{cursor:default;opacity:.5}.consumables{border:2px solid var(--px-edge);background:var(--surface-raised);box-shadow:var(--px-shadow);border-radius:0;gap:8px;padding:12px 14px;display:grid}.consumables-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.consumables-title{color:var(--ink);font-family:var(--font-display);font-size:var(--fs-md);margin:0;font-weight:800}.consumables-head b{color:var(--ink);font-size:var(--fs-sm)}.consumables-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.consumables-list li{border:2px solid var(--px-edge);background:var(--surface);justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.consumables-list li.is-hospital{background:var(--teal-tint)}.consumables-copy{gap:2px;min-width:0;display:grid}.consumables-copy b{color:var(--ink);font-size:var(--fs-sm)}.consumables-copy em{color:var(--ink-2);font-style:normal}.consumables-copy small{color:var(--ink-2);font-size:var(--fs-xs);line-height:1.4}.consumables-actions{flex:none;gap:4px;display:flex}.consumables-actions button{border:2px solid var(--px-edge);min-height:34px;color:var(--ink);background:var(--surface-raised);box-shadow:var(--px-shadow);font:inherit;font-family:var(--font-display);font-size:var(--fs-xs);white-space:nowrap;cursor:pointer;border-radius:0;padding:0 8px;font-weight:800}.consumables-actions button:active{box-shadow:var(--px-shadow-press);transform:translateY(2px)}.consumables-actions button:disabled{cursor:default;opacity:.5}.weekly-plan-mode{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.weekly-plan-mode button{border:2px solid var(--px-edge);min-height:36px;color:var(--ink);background:var(--surface);font:inherit;font-family:var(--font-display);font-size:var(--fs-xs);cursor:pointer;border-radius:0;padding:0 8px;font-weight:800}.weekly-plan-mode button[aria-checked=true]{color:var(--on-teal);background:var(--teal);box-shadow:var(--px-shadow)}.weekly-plan-mode button:disabled{cursor:default;opacity:.5}.day-open-banner{border:2px solid var(--px-edge);background:var(--surface-raised);box-shadow:var(--px-shadow);justify-content:space-between;align-items:center;gap:8px;margin:8px 0;padding:8px 10px;display:flex}.day-open-banner span{min-width:0;color:var(--ink);font-size:var(--fs-xs);gap:2px;line-height:1.4;display:grid}.day-open-banner small{color:var(--ink-2);font-size:var(--fs-xs)}.day-open-banner button{border:2px solid var(--px-edge);min-height:36px;color:var(--on-teal);background:var(--teal);box-shadow:var(--px-shadow);font:inherit;font-family:var(--font-display);font-size:var(--fs-xs);cursor:pointer;border-radius:0;flex:none;padding:0 10px;font-weight:800}.day-open-banner button:active{box-shadow:var(--px-shadow-press);transform:translateY(2px)}.practice-session-button{border:2px solid var(--px-edge);width:100%;color:var(--ink);background:var(--teal-tint);box-shadow:var(--px-shadow);font:inherit;text-align:left;cursor:pointer;border-radius:0;gap:2px;margin:8px 0;padding:10px 12px;display:grid}.practice-session-button span{font-family:var(--font-display);font-size:var(--fs-md);font-weight:800}.practice-session-button small{color:var(--ink-2);font-size:var(--fs-xs);line-height:1.4}.practice-session-button:active{box-shadow:var(--px-shadow-press);transform:translateY(2px)}.practice-session-button:disabled{cursor:default;opacity:.5}.session-result{border:2px solid var(--px-edge);background:var(--surface);gap:6px;padding:10px 12px;display:grid}.session-result-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.session-result-head b{color:var(--ink);font-family:var(--font-display);font-size:var(--fs-sm);font-weight:800}.session-result-head small{color:var(--ink-2);font-size:var(--fs-xs)}.session-result ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.session-result li{color:var(--ink);font-size:var(--fs-xs);justify-content:space-between;gap:8px;display:flex}.session-result li em{color:var(--ink-2);flex:none;font-style:normal}.life-event-choices button em{font-style:normal;font-size:var(--fs-xs);line-height:1.4}.life-event-choices button .life-event-lock{color:var(--ink-2)}.life-event-choices button .life-event-cost{color:var(--teal);font-weight:800}.home-more{border:2px solid var(--px-edge);background:var(--surface-raised);box-shadow:var(--px-shadow);border-radius:0}.home-more>summary{min-height:44px;color:var(--ink);font-family:var(--font-display);font-size:var(--fs-sm);cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;font-weight:800;list-style:none;display:flex}.home-more>summary::-webkit-details-marker{display:none}.home-more>summary small{min-width:0;color:var(--ink-2);font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.home-more>summary:after{content:"▾";color:var(--ink-2);flex:none}.home-more[open]>summary:after{content:"▴"}.home-more>:not(summary){margin:0;padding:0 8px 8px}.home-more>:not(summary) .weekly-plan,.home-more>:not(summary) .consumables{box-shadow:none;border:0}.skater-hero{border:2px solid var(--px-edge);background:var(--surface-raised);box-shadow:var(--px-shadow);margin-bottom:12px;display:grid}.skater-hero-scene{background:var(--ink);height:clamp(220px,34dvh,320px);position:relative;overflow:hidden}.skater-hero-scene .skate-scene{object-fit:cover;object-position:60% 85%;width:100%;height:100%;display:block}.skater-hero-shade{pointer-events:none;background:linear-gradient(#06121c80 0,#06121c00 40%,#06121ce6 100%);position:absolute;inset:0}.skater-hero-level{border:2px solid var(--px-edge);background:#06121ccc;padding:6px 10px 8px;position:absolute;top:10px;left:10px}.skater-hero-level .level-badge-label{color:#8ca3a8}.skater-hero-id{gap:4px;display:grid;position:absolute;bottom:8px;left:10px;right:10px}.skater-hero-rank{color:#06121c;min-height:20px;font-family:var(--font-display);font-size:var(--fs-2xs);background:#62e5c3;border:2px solid #06121c;justify-self:start;padding:2px 6px;font-weight:800}.skater-hero-id h1{color:#f2e7db;font-family:var(--font-display);text-shadow:0 2px #06121c;align-items:baseline;gap:8px;margin:0;font-size:26px;font-weight:800;line-height:1.1;display:flex}.skater-hero-id h1 small{color:#cfe3da;font-size:var(--fs-xs);font-weight:700}.skater-hero-skills{border-top:2px solid var(--px-edge);background:var(--px-edge);grid-template-columns:repeat(4,1fr);gap:1px;margin:0;padding:0;list-style:none;display:grid}.skater-hero-skills li{background:var(--surface-raised);gap:2px;padding:8px 8px 10px;display:grid}.skater-hero-skills small{color:var(--muted);font-size:var(--fs-2xs);white-space:nowrap}.skater-hero-skills b{color:var(--ink);font-family:var(--font-mono);font-size:var(--fs-xl);font-weight:800}.skater-hero-skills i{border:2px solid var(--px-edge);background:var(--surface);box-sizing:content-box;height:6px;display:block;position:relative}.skater-hero-skills i:after{width:var(--fill,0%);background:var(--reward);content:"";position:absolute;inset:0}.trick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.trick-grid.is-three{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.dex-card{border:2px solid var(--teal);min-height:76px;color:var(--ink);background:var(--surface-raised);font:inherit;text-align:left;cursor:pointer;border-radius:0;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:4px 8px;padding:8px;display:grid;position:relative;box-shadow:0 3px #06121c}.dex-card:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px #06121c}.trick-grid.is-three .dex-card{grid-template-columns:1fr;justify-items:start;min-height:88px}.dex-card-icon{width:32px;height:32px;color:var(--teal);background:var(--surface);border:2px solid;place-items:center;font-size:18px;line-height:1;display:grid}.dex-card-name{color:var(--ink);font-family:var(--font-display);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:800;line-height:1.2;overflow:hidden}.dex-card-bar{border:2px solid var(--line);background:var(--surface);grid-column:1/-1;height:8px;display:block;position:relative}.dex-card-bar:after{width:var(--fill,0%);background:var(--teal);content:"";position:absolute;inset:0}.dex-card-foot{grid-column:1/-1;justify-content:space-between;align-items:baseline;gap:6px;min-width:0;display:flex}.dex-card-level{color:var(--ink);font-family:var(--font-mono);font-size:var(--fs-xs);white-space:nowrap;font-weight:800}.dex-card-note{color:var(--muted);font-size:var(--fs-2xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dex-card-badge{color:#06121c;background:var(--reward);border:2px solid #06121c;padding:0 5px;font-size:10px;font-style:normal;font-weight:800;position:absolute;top:-2px;right:-2px}.dex-card.is-focus{border-color:var(--reward);background:var(--teal-tint)}.dex-card.is-focus .dex-card-icon{color:var(--reward)}.dex-card.is-focus .dex-card-bar:after,.dex-card.is-learning .dex-card-bar:after{background:var(--reward)}.dex-card.is-learning{border-color:var(--reward)}.dex-card.is-learning .dex-card-icon{color:var(--reward)}.dex-card.is-mastered{border-color:var(--gold,#f2b33d);box-shadow:0 3px #06121c,inset 0 0 0 2px #f2b33d55}.dex-card.is-mastered .dex-card-icon{color:#06121c;background:var(--gold,#f2b33d);border-color:#06121c}.dex-card.is-mastered .dex-card-bar:after{background:var(--gold,#f2b33d)}.dex-card.is-locked{border-color:var(--line);color:var(--muted);background:repeating-linear-gradient(135deg, var(--surface) 0 6px, var(--surface-sunken) 6px 8px);box-shadow:none;cursor:default;border-style:dashed}.dex-card.is-locked .dex-card-icon,.dex-card.is-locked .dex-card-name{color:var(--muted)}.dex-card.is-locked .dex-card-note{white-space:normal}.dex-card:disabled:not(.is-locked){opacity:.55;cursor:not-allowed}.trick-collection{gap:8px;margin-top:4px;display:grid}.trick-collection-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.trick-collection-head h2{color:var(--ink);font-family:var(--font-display);font-size:var(--fs-lg);margin:0;font-weight:800}.trick-collection-head h2 small{color:var(--reward);font-family:var(--font-mono);font-size:var(--fs-xs);margin-left:6px}.trick-collection-head button{border:2px solid var(--teal);min-height:32px;color:var(--teal);font:inherit;font-size:var(--fs-xs);cursor:pointer;background:0 0;border-radius:0;padding:0 8px;font-weight:800}.practice-slots .practice-slot.is-mastered{border-color:var(--gold,#f2b33d)}.practice-slots .practice-slot.is-learned,.practice-slots .practice-slot.is-training{border-color:var(--reward)}.practice-slots .practice-slot.is-learnable{border-color:var(--teal)}.stage-frame{border:2px solid var(--ink);background:var(--ink);border-radius:0;height:clamp(200px,28vh,232px);position:relative;overflow:hidden}.stage-frame .skate-scene{object-fit:cover;object-position:center 65%;transform-origin:50% 80%;width:100%;height:100%;position:absolute;inset:0}.content.training-content{flex-direction:column;padding-bottom:12px;display:flex;overflow:hidden}.training-screen{flex-direction:column;flex:auto;gap:8px;min-height:0;display:flex}.training-screen>.stage-frame{flex:1 1 0;height:auto;min-height:160px}.training-screen>.cmd-groups{flex:none}.training-dock{flex:none;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:6px;display:grid}.training-dock button{border:2px solid var(--ink);background:var(--surface-raised);min-width:0;color:var(--ink);text-align:center;cursor:pointer;border-radius:0;gap:2px;padding:8px 4px;display:grid}.training-dock b{font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.training-dock small{color:var(--muted);font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-shell:has(.training-content) .game-hud .hud-calendar{display:none}.training-screen .spot-bar{gap:3px;margin:0}.training-screen .spot-bar-main{min-height:0;padding:4px 8px}.training-screen .cmd-title{display:none}.training-screen .cmd-groups{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.training-screen .cmd-group,.training-screen .cmd-group .trick-grid{display:contents}.training-screen .practice-bonus{margin:0;padding:3px 8px}.training-screen .dex-card{grid-template-columns:24px minmax(0,1fr);gap:3px 6px;min-height:0;padding:6px}.training-screen .dex-card-icon{width:24px;height:24px;font-size:14px}.training-screen .cmd-groups .dex-card{min-height:56px}.stage-energy{border:2px solid var(--ink);background:var(--surface-raised);border-radius:0;align-items:center;gap:6px;padding:5px 8px;display:flex;position:absolute;bottom:8px;right:8px}.stage-energy span{color:var(--muted);font-size:var(--fs-xs)}.stage-energy b{color:var(--teal-ink);font-family:var(--font-display);font-size:var(--fs-md)}.stage-energy small{color:var(--muted);font-size:var(--fs-xs)}.stage-run-tag{border:2px solid var(--ink);background:var(--surface-raised);border-radius:0;align-items:center;gap:6px;padding:5px 8px;display:flex;position:absolute;bottom:8px;left:8px}.stage-run-tag b{color:var(--ink);font-size:var(--fs-sm)}.stage-frame .fx-xp-gauge{border:2px solid var(--ink);background:var(--surface-sunken);border-radius:0;height:12px;position:absolute;top:8px;left:8px;right:8px;overflow:hidden}.fx-xp-gauge i{height:100%;width:var(--to);display:block}.fx-xp-gauge i span{background:repeating-linear-gradient(90deg, var(--teal) 0 8px, transparent 8px 10px);height:100%;display:block}.stage-frame .fx-xp-float{color:var(--teal-ink);font-family:var(--font-display);font-size:var(--fs-lg);text-shadow:2px 2px 0 var(--surface-raised);white-space:nowrap;display:none;position:absolute;top:44%;left:50%;transform:translate(-50%)}.stage-frame .fx-levelup{text-align:center;place-content:center;justify-items:center;gap:4px;display:none;position:absolute;inset:0}.stage-frame .fx-levelup b{color:var(--px-cta);font-family:var(--font-display);text-shadow:3px 3px 0 var(--ink);font-size:26px}.stage-frame .fx-levelup span{border:2px solid var(--ink);background:var(--surface-raised);color:var(--ink);font-size:var(--fs-sm);padding:3px 8px;font-weight:700}.stage-frame .fx-burst{width:0;height:0;display:none;position:absolute;top:50%;left:50%}.fx-burst b{white-space:nowrap;font-family:var(--font-display);text-shadow:2px 2px 0 var(--ink);font-size:22px;position:absolute;top:0;left:50%;transform:translate(-50%,-50%)}.fx-burst.is-perfect b{color:var(--px-cta)}.fx-burst.is-miss b{color:var(--brand)}.fx-burst-ring{border:3px solid;border-radius:0;width:72px;height:72px;position:absolute;top:-36px;left:-36px}.fx-burst.is-perfect .fx-burst-ring{color:var(--px-cta)}.fx-burst.is-miss .fx-burst-ring{color:var(--brand)}@media (prefers-reduced-motion:no-preference){.fx-xp-gauge i{animation:.9s ease-out both stage-gauge-fill}@keyframes stage-gauge-fill{0%{width:var(--from)}to{width:var(--to)}}.stage-frame .fx-xp-float{animation:1.4s ease-out both stage-xp-float;display:block}@keyframes stage-xp-float{0%{opacity:0;transform:translate(-50%,12px)}15%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-40px)}}.stage-frame .fx-levelup{animation:1.3s ease-out both stage-level-flash;display:grid}@keyframes stage-level-flash{0%{background:#ffe28ae6}to{background:#ffe28a00}}.stage-frame .fx-levelup b,.stage-frame .fx-levelup span{animation:.5s steps(4,end) both stage-pop}@keyframes stage-pop{0%{transform:scale(.4)}to{transform:scale(1)}}.stage-frame .fx-burst{animation:1s ease-out both stage-burst;display:block}.fx-burst b{animation:.4s steps(3,end) both stage-pop}.fx-burst-ring{animation:.8s ease-out both stage-ring}@keyframes stage-ring{0%{opacity:1;transform:scale(.3)}to{opacity:0;transform:scale(2.4)}}@keyframes stage-burst{0%,70%{opacity:1}to{opacity:0}}.skate-scene.is-react-ride{animation:1.6s ease-in-out infinite stage-roll}@keyframes stage-roll{0%,to{transform:translate(0)}50%{transform:translate(-8px)}}.skate-scene.is-react-line{animation:1.4s ease-in-out infinite stage-slide}@keyframes stage-slide{0%,to{transform:translate(4px)}50%{transform:translate(-4px)}}.skate-scene.is-react-film{animation:1.2s ease-in-out infinite stage-zoom}@keyframes stage-zoom{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.skate-scene.is-react-gym{animation:.3s steps(2,end) infinite stage-shake}@keyframes stage-shake{0%{transform:translate(-2px)}to{transform:translate(2px)}}.skate-scene.is-react-skateBattle{animation:.8s ease-out infinite stage-bounce}@keyframes stage-bounce{0%{transform:translateY(0)}40%{transform:translateY(-6px)}to{transform:translateY(0)}}.skate-scene.is-react-ollie,.skate-scene.is-react-shuvit,.skate-scene.is-react-kickflip,.skate-scene.is-react-manual,.skate-scene.is-react-grind,.skate-scene.is-react-fakie{animation:.9s ease-out infinite stage-hop}@keyframes stage-hop{0%{transform:translateY(0)scale(1)}40%{transform:translateY(-10px)scale(1.02)}to{transform:translateY(0)scale(1)}}}.stage-screen .train-result{border:2px solid var(--ink);background:var(--surface-raised);border-radius:0;flex-wrap:wrap;align-items:center;gap:4px 8px;min-height:28px;padding:4px 8px;display:flex}.stage-screen .train-result>b{color:var(--ink);font-size:var(--fs-sm)}.stage-screen .train-result>span{color:var(--muted);font-size:var(--fs-xs)}.stage-screen .train-result em{font-size:var(--fs-xs);padding:0 6px;font-style:normal;font-weight:800}.stage-screen .practice-bonus{align-items:center;gap:6px;min-width:0;padding:4px 8px;display:flex}.stage-screen .practice-bonus>span:last-child{white-space:nowrap;gap:6px;min-width:0;display:flex;overflow:hidden}.stage-screen .practice-bonus b,.stage-screen .practice-bonus small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cmd-groups{gap:8px;display:grid}.cmd-group{gap:6px;display:grid}.cmd-title{color:var(--muted);font-size:var(--fs-sm);margin:2px 2px 0;font-weight:700}.cmd-row{display:block}.skater-stage{position:absolute;inset:0;overflow:hidden}.skater-stage canvas{image-rendering:pixelated;position:absolute;top:0;left:50%;transform:translate(-50%)}.skater-stage canvas.sprite-layer{image-rendering:auto;pointer-events:none}.ride-stage{background:var(--ink);height:200px;position:relative;overflow:hidden}.pad-burst{text-align:center;white-space:nowrap;pointer-events:none;position:absolute;top:30%;left:50%}.pad-burst b{font-family:var(--font-display);text-shadow:3px 3px 0 var(--ink);color:var(--px-cta);font-size:26px;display:block}.pad-burst small{color:var(--teal-ink);font-family:var(--font-display);font-size:var(--fs-sm);text-shadow:2px 2px 0 var(--ink);margin-top:2px;display:block}@media (prefers-reduced-motion:no-preference){.pad-burst{animation:1.6s ease-out both pad-burst}@keyframes pad-burst{0%{opacity:0;transform:translate(-50%,-30%)scale(.6)}15%{opacity:1;transform:translate(-50%,-50%)scale(1.08)}70%{opacity:1;transform:translate(-50%,-50%)}to{opacity:0;transform:translate(-50%,-70%)}}}.pad-face{text-align:center;justify-items:center;gap:1px;min-width:0;display:grid}.pad-face b{max-width:100%;color:var(--ink);font-family:var(--font-display);font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pad-face b.is-challenge{color:var(--reward)}.pad-face b.is-safe{color:var(--teal-ink)}.pad-face small{max-width:100%;color:var(--muted);font-size:var(--fs-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.training-dock button{position:relative}.dock-dot{border:2px solid var(--ink);background:var(--danger);width:10px;height:10px;position:absolute;top:-5px;right:-5px}.stage-frame>.session-result{z-index:3;max-height:55%;position:absolute;top:8px;left:8px;right:8px;overflow:auto}.stage-frame>.day-open-banner{z-index:3;max-width:62%;margin:0;position:absolute;top:8px;left:auto;right:8px}.app-shell:has(.training-content) .game-hud{display:none}.training-content{overscroll-behavior:none}.practice-cta{background:var(--teal);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;cursor:pointer;border:2px solid #06121c;align-content:center;gap:2px;min-height:68px;padding:10px 16px 14px;display:grid;position:relative;box-shadow:0 5px #2f8c78}.practice-cta:active:not(.is-off){transform:translateY(3px);box-shadow:0 2px #2f8c78}.practice-cta.is-charging{background:#8cf2d4}.practice-cta.is-off{opacity:.55;cursor:default}.practice-cta .pad-face{text-align:left;justify-items:start}.practice-cta .pad-face b{color:#06121c;font-size:20px}.practice-cta .pad-face b.is-challenge,.practice-cta .pad-face b.is-safe{color:#06121c}.practice-cta .pad-face small{color:#0e3b30}.pad-track{background:#06121c40;border:2px solid #06121c;height:8px;position:absolute;bottom:6px;left:12px;right:12px;overflow:hidden}.pad-sweet{background:#ffffff80;position:absolute;top:0;bottom:0}.pad-fill{background:#06121c;position:absolute;top:0;bottom:0;left:0}.practice-cta .pad-burst{top:auto;bottom:calc(100% + 10px)}.sheet-commands{gap:8px;margin-bottom:12px;display:grid}.pad-guide{z-index:2;pointer-events:none;justify-items:center;gap:6px;transition:opacity .15s;display:grid;position:absolute;top:8px;left:50%;transform:translate(-50%)}.training-screen:has(.practice-cta.is-charging) .pad-guide{opacity:0}.pad-guide-badges{gap:8px;display:flex}.pad-guide-badge{color:#fff;background:#000000db;align-content:center;justify-items:center;gap:3px;width:60px;height:60px;display:grid;box-shadow:0 2px #00000059}#root .pad-guide-badge{border-radius:50%!important}.pad-guide-badge small{text-align:center;word-break:keep-all;max-width:54px;font-size:9px;font-weight:700;line-height:1.15}.pad-guide-name{color:#fff;max-width:min(92%,320px);font-family:var(--font-display);font-size:var(--fs-md);text-align:center;white-space:nowrap;text-overflow:ellipsis;background:#000000c7;border-radius:6px;padding:4px 14px;overflow:hidden}.pad-guide-next{color:#ffffff80;font-family:var(--font-display);font-size:var(--fs-sm);text-shadow:1px 1px #0009;white-space:nowrap}.pad-ring{z-index:4;pointer-events:none;width:0;height:0;position:absolute}.pad-node{border:2px solid var(--ink);background:var(--surface-raised);min-width:64px;max-width:104px;color:var(--ink);text-align:center;text-overflow:ellipsis;white-space:nowrap;padding:4px 6px;font-size:12px;font-weight:700;position:absolute;top:0;left:0;overflow:hidden}.pad-node.is-on{border-color:var(--reward);background:var(--reward);color:#06121c}.pad-node.is-off{opacity:.4}.stage-frame>.train-result{z-index:4;pointer-events:none;background:var(--surface-raised);max-width:calc(100% - 24px);margin:0;position:absolute;top:10px;left:50%;transform:translate(-50%);box-shadow:3px 3px #06121c}@media (prefers-reduced-motion:no-preference){.stage-frame>.train-result{animation:2.6s ease-out both train-result-pop}@keyframes train-result-pop{0%{opacity:0;transform:translate(-50%,-6px)}8%{opacity:1;transform:translate(-50%)}75%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-4px)}}}.sheet-section{gap:8px;margin-bottom:12px;display:grid}.sheet-label{color:var(--muted);font-size:var(--fs-sm);margin:0;font-weight:700}:root{--font-body:"Noto Sans KR", "Apple SD Gothic Neo", "Malgun Gothic", system-ui, sans-serif;--font-display:"Archivo", "Noto Sans KR", "Apple SD Gothic Neo", system-ui, sans-serif;--font-mono:"Silkscreen", "Archivo", ui-monospace, monospace;--fs-2xs:11px;--fs-xs:11px;--fs-sm:12px;--fs-md:13px;--fs-lg:14px;--fs-xl:15px;--fs-2xl:20px;--fs-3xl:28px;--bg:#e2dbce;--surface:#eee9df;--surface-raised:#f6f2ea;--surface-sunken:#cdc5b4;--line:#bcb3a1;--line-strong:#6b6575;--ink:#1d1a23;--ink-2:#3b3745;--muted:#686372;--brand:#e0692d;--on-brand:#1d1a23;--brand-ink:#8a3a14;--brand-tint:#efd5bf;--teal:#2f6e69;--on-teal:#fff;--teal-ink:#205652;--teal-tint:#caddd6;--danger:#a8382a;--on-danger:#fff;--danger-ink:#8f2d20;--danger-tint:#ebcfc7;--coin:#d9a03a;--fans:#d9829a;--fame:#9d8fd6;--energy:#8dbb62;--on-resource:#1d1a23;--gold:#f2b33d;--silver:#bdb8c6;--bronze:#c98550;--scrim:#1e1b26b8;--subtle:var(--muted);--paper:var(--bg);--cream:var(--surface-raised);--surface-2:var(--surface-sunken);--brand-deep:var(--ink);--accent:var(--brand);--accent-ink:var(--brand-ink);--accent-tint:var(--brand-tint);--mint:var(--teal-tint);--orange:var(--brand);--green:var(--teal);--like:var(--danger);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-12:48px;--r-xs:6px;--r-sm:10px;--r-md:14px;--r-lg:20px;--r-sheet:28px;--r-pill:999px;--shadow-1:0 1px 0 #1e1b2614, 0 6px 20px #1e1b2612;--shadow-2:0 1px 0 #1e1b2614, 0 10px 28px #1e1b2620;--shadow-sheet:0 -12px 40px #1e1b2630;--shadow-cta:0 4px 0 #1e1b26;--shadow-cta-teal:0 4px 0 #1e1b26;--focus:0 0 0 3px var(--bg), 0 0 0 6px var(--ink);--tap:44px;--ease:cubic-bezier(.2, .8, .2, 1);font-family:var(--font-body);color:var(--ink);background:var(--teal-tint);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--safe-bottom:env(safe-area-inset-bottom,0px);--safe-top:env(safe-area-inset-top,0px);font-size:14px}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;height:100%;margin:0}body{overscroll-behavior:none}button{color:inherit;font:inherit}button:focus-visible{outline:3px solid var(--line);outline-offset:3px}.app-shell{background:var(--paper);flex-direction:column;width:min(100%,430px);height:100dvh;min-height:560px;margin:0 auto;display:flex;position:relative;overflow:hidden;box-shadow:0 0 50px #1e1b2619}.topbar{z-index:3;min-height:59px;padding:calc(7px + var(--safe-top)) 19px 7px;background:var(--paper);flex:none;justify-content:space-between;align-items:center;display:flex}.brand-mark{color:var(--ink);font-family:var(--font-display);font-size:var(--fs-sm);letter-spacing:.7px;align-items:center;gap:7px;font-weight:800;line-height:.9;display:flex}.brand-star{color:#fff;background:var(--teal);width:28px;height:28px;font-size:var(--fs-2xl);border-radius:8px;place-items:center;display:grid}.topbar-right{align-items:center;gap:9px;display:flex}.save-state{color:var(--muted);font-size:var(--fs-sm);align-items:center;gap:5px;display:flex}.save-state i{background:var(--teal-ink);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #78b48320}.help-button,.close-button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.help-button{color:var(--teal);font-family:var(--font-display);font-size:var(--fs-xl);font-weight:700}.close-button{color:var(--muted);font-family:var(--font-body);font-size:var(--fs-3xl);font-weight:300}.status-strip{z-index:2;border:1px solid var(--line);background:var(--surface);border-radius:15px;flex:none;grid-template-columns:repeat(4,1fr);min-height:56px;margin:0 15px 6px;padding:7px 4px;display:grid}.status-strip>div{border-right:1px solid var(--line);grid-template-rows:19px 14px;grid-template-columns:19px auto;place-content:center;column-gap:4px;min-width:0;display:grid}.status-strip>div:last-child{border:0}.resource-icon{width:18px;height:18px;font-size:var(--fs-md);border-radius:6px;place-items:center;font-weight:700;display:grid}.coin-icon{color:var(--brand-ink);background:var(--brand-tint)}.fan-icon{color:var(--line);background:var(--brand-tint)}.rep-icon{color:var(--teal-ink);background:var(--surface-sunken)}.energy-icon{color:var(--teal-ink);background:var(--teal-tint)}.status-strip b{color:var(--ink);font-family:var(--font-display);font-size:var(--fs-lg);text-overflow:ellipsis;align-self:center;font-weight:700;overflow:hidden}.status-strip small{color:var(--muted);font-size:var(--fs-xs);grid-column:2;line-height:1}.status-strip>.money-resource b{letter-spacing:-.045em;font-size:clamp(12px,4vw,16px)}.content{overscroll-behavior:contain;scrollbar-width:none;flex:auto;padding:11px 19px 26px;animation:.23s ease-out appear;overflow:auto}.content::-webkit-scrollbar{display:none}.home-heading{justify-content:space-between;align-items:flex-end;gap:10px;margin:2px 0 14px;display:flex}.eyebrow{color:var(--muted);font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:1.35px;font-weight:700;display:block}h1,h2,h3,p{margin-top:0}.home-heading h1{color:var(--ink);font-size:var(--fs-3xl);letter-spacing:-.8px;margin:4px 0 0;font-weight:700;line-height:1.3}.rank-chip{border:1px solid var(--line);text-align:left;background:var(--surface);cursor:pointer;border-radius:12px;gap:3px;min-width:102px;padding:8px 23px 8px 10px;display:grid;position:relative}.rank-chip>span{color:var(--muted);font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:1px;font-weight:700}.rank-chip i{color:var(--muted);font-size:var(--fs-lg);font-style:normal;position:absolute;top:12px;right:10px}.scene-card{border:1px solid var(--line);background:var(--line);height:auto;box-shadow:0 5px 0 var(--teal-tint);border-radius:18px;position:relative;overflow:hidden}.skate-scene{width:100%;height:auto;image-rendering:pixelated;display:block}.scene-card .skate-scene{object-fit:cover;height:228px}.scene-sticker{border:1px solid var(--brand-tint);color:var(--ink-2);background:var(--surface-raised);font-size:var(--fs-xs);border-radius:8px;padding:7px 9px;line-height:1.35;position:absolute;top:13px;left:12px;transform:rotate(-2deg)}.scene-sticker b{color:var(--teal-ink);font-size:var(--fs-sm)}.offline-reward{border:1px solid var(--line);background:var(--brand-tint);border-radius:12px;justify-content:space-between;align-items:center;gap:9px;margin-top:10px;padding:11px 12px;display:flex}.offline-reward>div{gap:4px;min-width:0;display:grid}.offline-reward>div>b{color:var(--brand-ink);font-size:var(--fs-sm)}.offline-reward>div>small{color:var(--muted);font-size:var(--fs-2xs);line-height:1.4}.offline-reward>button{border:1px solid var(--line);min-height:36px;color:var(--brand-ink);background:var(--surface);font-size:var(--fs-xs);cursor:pointer;border-radius:9px;flex:none;padding:6px 9px;font-weight:700}.home-actions{gap:8px;margin-top:17px;display:grid}.home-action-hint{color:var(--muted);font-size:var(--fs-xs);margin:-2px 2px 2px;line-height:1.45}.primary-button{color:#fff;background:var(--teal-ink);width:100%;min-height:50px;box-shadow:0 4px 0 var(--ink);cursor:pointer;font-size:var(--fs-lg);border:0;border-radius:13px;justify-content:space-between;align-items:center;padding:0 16px 0 19px;font-weight:700;transition:transform .13s,box-shadow .13s;display:flex}.primary-button b{width:28px;height:28px;color:var(--ink);background:var(--surface-raised);font-family:var(--font-display);border-radius:9px;place-items:center;font-size:18px;display:grid}.primary-button:active{box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.secondary-button{border:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;border-radius:13px;align-items:center;gap:10px;min-height:60px;padding:8px 13px;display:flex}.event-icon{width:35px;height:35px;color:var(--brand-ink);background:var(--brand-tint);font-size:var(--fs-xl);border-radius:11px;flex:0 0 35px;place-items:center;display:grid}.secondary-button>span:nth-child(2){flex:1;gap:4px;display:grid}.secondary-button b{font-size:var(--fs-md)}.secondary-button small{color:var(--muted);font-size:var(--fs-sm)}.secondary-button>i{color:var(--muted);font-size:var(--fs-2xl);font-style:normal}.goal-card{border:1px solid var(--line);background:var(--brand-tint);border-radius:12px;align-items:center;gap:9px;margin:11px 0 15px;padding:10px 12px;display:flex}.goal-icon{border:1px solid var(--line);height:29px;color:var(--muted);background:var(--teal-tint);font-size:var(--fs-xl);border-radius:50%;flex:0 0 29px;place-items:center;display:grid}.goal-copy{flex:1;gap:3px;display:grid}.goal-copy small{color:var(--muted);font-size:var(--fs-xs)}.goal-copy b{font-size:var(--fs-md)}.goal-card>button{width:30px;height:30px;color:var(--muted);font-size:var(--fs-2xl);cursor:pointer;background:0 0;border:0;border-radius:9px}.daily-card,.sponsor-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;margin-top:11px;padding:12px}.career-economy-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;gap:10px;margin:11px 0;padding:13px;display:grid}.career-economy-card .section-title{margin:0}.career-economy-card .section-title h2{font-size:var(--fs-lg);margin:3px 0 0}.career-economy-card .section-title>b{color:var(--brand-ink);font-size:var(--fs-sm);white-space:nowrap}.economy-income-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.economy-income-grid>div{background:var(--surface-raised);border-radius:10px;gap:3px;min-width:0;padding:9px;display:grid}.economy-income-grid small,.economy-work-row small,.economy-collaboration small{color:var(--muted);font-size:var(--fs-2xs);line-height:1.45}.economy-income-grid b{color:var(--ink);font-size:var(--fs-sm)}.economy-note,.economy-disclaimer{color:var(--muted);font-size:var(--fs-2xs);margin:0;line-height:1.5}.economy-work-row,.economy-collaboration{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding-top:9px;display:flex}.economy-work-row>div,.economy-collaboration>div:first-child{gap:3px;min-width:0;display:grid}.economy-work-row>div>b,.economy-collaboration>div:first-child>b{color:var(--ink);font-size:var(--fs-sm)}.economy-work-row>button,.economy-product-actions>button{border:1px solid var(--brand);min-height:38px;color:var(--brand-ink);background:var(--brand-tint);font-size:var(--fs-xs);cursor:pointer;border-radius:9px;flex:none;padding:7px 10px;font-weight:700}.economy-work-row>button:disabled,.economy-product-actions>button:disabled{opacity:.45;cursor:not-allowed}.economy-collaboration{flex-wrap:wrap;align-items:flex-start}.economy-product-actions{gap:7px;width:100%;display:flex}.economy-product-actions>button{text-align:left;flex:1 1 0;gap:2px;display:grid}.economy-product-actions>button small{color:inherit;opacity:.8}.economy-product-list{width:100%}.daily-card .section-title{margin:0 0 10px}.daily-card .section-title h2{font-size:var(--fs-lg);margin:3px 0 0}.daily-card .section-title>b{color:var(--teal-ink);font-family:var(--font-display);font-size:var(--fs-lg)}.daily-goals{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.daily-goals span{border:1px solid var(--line);color:var(--muted);background:var(--brand-tint);font-size:var(--fs-2xs);text-align:center;border-radius:8px;padding:8px 4px}.daily-goals .is-done{border-color:var(--line);color:var(--teal-ink);background:var(--teal-tint)}.daily-reward-row{justify-content:space-between;align-items:center;gap:8px;margin-top:9px;display:flex}.daily-reward-row small{color:var(--muted);font-size:var(--fs-2xs)}.daily-reward-row button,.sponsor-next button{border:1px solid var(--line);min-height:34px;color:var(--teal-ink);background:var(--teal-tint);font-size:var(--fs-xs);cursor:pointer;border-radius:9px;padding:6px 10px;font-weight:700}.daily-reward-row button:disabled,.sponsor-next button:disabled{border-color:var(--line);color:var(--muted);background:var(--surface);cursor:not-allowed}.career-loop-card{border:1px solid var(--brand-tint);background:var(--brand-tint);border-radius:13px;justify-content:space-between;align-items:center;gap:10px;margin-top:9px;padding:11px 12px;display:flex}.career-loop-card>div{gap:4px;min-width:0;display:grid}.career-loop-card>div b{color:var(--ink-2);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.career-loop-card>div small{color:var(--muted);font-size:var(--fs-2xs)}.career-loop-card>button{border:1px solid var(--line);min-height:34px;color:var(--brand-ink);background:var(--surface);font-size:var(--fs-xs);cursor:pointer;border-radius:9px;flex:none;padding:6px 10px}.career-loop-card>button:disabled{opacity:.6;cursor:default}.sponsor-card{border-color:var(--line);background:var(--teal-tint);gap:11px;display:grid}.sponsor-card>div:first-child,.sponsor-next{gap:4px;display:grid}.sponsor-card>div:first-child>b{color:var(--ink);font-size:var(--fs-md)}.sponsor-card>div:first-child>small,.sponsor-next>small{color:var(--muted);font-size:var(--fs-2xs);line-height:1.5}.sponsor-next{border-top:1px solid var(--line);padding-top:9px}.sponsor-next>span{color:var(--ink-2);font-size:var(--fs-xs);font-weight:700}.sponsor-next button{justify-self:start;margin-top:3px}.mini-footer{color:var(--muted);font-size:var(--fs-sm);justify-content:space-between;align-items:center;margin:0 1px 10px;display:flex}.mini-footer button{color:var(--ink-2);font-size:var(--fs-sm);cursor:pointer;background:0 0;border:0}.home-skill-card{border:1px solid var(--line);background:var(--surface);border-radius:15px;margin:0 -3px;padding:13px 13px 15px}.section-title{justify-content:space-between;align-items:flex-end;margin-bottom:12px;display:flex}.section-title h2{font-size:var(--fs-xl);margin:3px 0 0}.section-title button{color:var(--teal-ink);font-size:var(--fs-sm);cursor:pointer;background:0 0;border:0}.skill-grid{grid-template-columns:1fr 1fr;gap:10px 13px;display:grid}.skill-row{min-width:0}.skill-top{color:var(--ink-2);font-size:var(--fs-xs);justify-content:space-between;margin-bottom:5px;display:flex}.skill-top b{color:var(--ink);font-family:var(--font-display);font-size:var(--fs-sm)}.skill-track{background:var(--teal-tint);border-radius:4px;height:5px;overflow:hidden}.skill-track span{border-radius:inherit;background:linear-gradient(90deg, var(--teal-ink), var(--teal-ink));height:100%;transition:width .35s;display:block}.skill-hint{color:var(--ink-2);font-size:var(--fs-xs);word-break:keep-all;margin:5px 0 0;line-height:1.4}.skill-hint span{color:var(--ink);margin-right:4px;font-weight:600}.session-reward{border:1px solid var(--line);background:var(--brand-tint);text-align:left;cursor:pointer;border-radius:12px;gap:4px;width:100%;margin:11px 0 3px;padding:11px 38px 11px 13px;display:grid;position:relative}.session-reward span{color:var(--brand-ink);font-size:var(--fs-sm)}.session-reward b{color:var(--ink);font-size:var(--fs-md)}.session-reward i{color:var(--brand-ink);font-size:var(--fs-2xl);font-style:normal;position:absolute;top:16px;right:13px}.bottom-nav{z-index:5;padding:7px 11px calc(8px + var(--safe-bottom));border-top:1px solid var(--line);background:color-mix(in srgb, var(--surface) 95%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex:none;grid-template-columns:repeat(5,1fr);gap:3px;display:grid}.nav-item{min-height:47px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:11px;align-content:center;justify-items:center;gap:1px;display:grid;position:relative}.nav-item>span:last-of-type{font-size:var(--fs-xs)}.icon-glyph{font-family:var(--font-display);font-size:var(--fs-2xl);line-height:22px}.nav-dot{background:var(--line);border:1px solid #fff;border-radius:50%;width:6px;height:6px;position:absolute;top:4px;right:calc(50% - 18px)}.screen-heading{margin:9px 0 17px}.screen-heading h1{font-size:var(--fs-2xl);letter-spacing:-.7px;margin:5px 0 4px;line-height:1.35}.screen-heading p{color:var(--muted);font-size:var(--fs-md);margin:0;line-height:1.55}.training-scene{border:1px solid var(--line);background:var(--line);border-radius:16px;height:150px;position:relative;overflow:hidden}.training-scene .skate-scene{object-fit:cover;object-position:center 65%;width:100%;height:100%}.training-scene>div{background:var(--surface-raised);border:1px solid #fff7;border-radius:9px;align-items:center;gap:7px;padding:6px 9px;display:flex;position:absolute;bottom:9px;right:9px}.training-scene>div span{color:var(--muted);font-size:var(--fs-xs)}.training-scene>div b{color:var(--teal-ink);font-family:var(--font-display);font-size:var(--fs-md)}.training-scene>div small{color:var(--muted);font-size:var(--fs-xs)}.practice-bonus{border:1px solid var(--brand-tint);background:var(--brand-tint);border-radius:12px;align-items:center;gap:9px;margin:12px 0;padding:10px 12px;display:flex}.sparkle{width:29px;height:29px;color:var(--brand-ink);background:var(--brand-tint);border-radius:9px;place-items:center;display:grid}.practice-bonus>span:last-child{gap:3px;display:grid}.practice-bonus b{color:var(--brand-ink);font-size:var(--fs-md)}.practice-bonus small{color:var(--brand-ink);font-size:var(--fs-xs)}.training-list{gap:8px;display:grid}.training-section-title{color:var(--muted);font-size:var(--fs-sm);margin:10px 2px 0;font-weight:700}.training-unlock-note{border:1px dashed var(--line-strong);background:var(--surface);border-radius:12px;align-items:flex-start;gap:9px;margin:10px 0 4px;padding:11px 12px;display:flex}.training-unlock-note>span{color:var(--brand-ink);font-size:var(--fs-lg)}.training-unlock-note>div{gap:3px;display:grid}.training-unlock-note b{color:var(--ink);font-size:var(--fs-sm)}.training-unlock-note small{color:var(--muted);font-size:var(--fs-xs);line-height:1.5}.training-card{border:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;border-radius:13px;align-items:center;gap:9px;min-height:69px;padding:9px 10px;transition:transform .12s,opacity .12s;display:flex}.training-card:active{transform:scale(.99)}.training-card:disabled{opacity:.48;cursor:not-allowed}.training-icon{width:41px;height:41px;font-family:var(--font-display);font-size:var(--fs-2xl);border-radius:12px;flex:0 0 41px;place-items:center;font-weight:700;display:grid}.training-ride{color:var(--teal-ink);background:var(--teal-tint)}.training-ollie{color:var(--brand-ink);background:var(--brand-tint)}.training-film{color:var(--teal-ink);background:var(--surface-sunken)}.training-line,.training-manual,.training-fakie{color:var(--teal-ink);background:var(--teal-tint)}.training-shuvit,.training-kickflip{color:var(--brand-ink);background:var(--brand-tint)}.training-grind,.training-skateBattle{color:var(--ink);background:var(--surface-sunken)}.training-copy{flex:1;gap:4px;display:grid}.training-copy b{font-size:var(--fs-md)}.training-copy small{color:var(--muted);font-size:var(--fs-xs)}.training-level{color:var(--teal-ink);font-family:var(--font-display);font-size:var(--fs-sm);text-align:center;gap:3px;font-weight:700;display:grid}.training-level small{color:var(--muted);font-family:var(--font-body);font-size:var(--fs-2xs);font-weight:400}.card-arrow{color:var(--muted);font-size:var(--fs-2xl)}.soft-note{color:var(--muted);font-size:var(--fs-xs);align-items:flex-start;gap:6px;margin:12px 1px 5px;line-height:1.55;display:flex}.soft-note>span{color:var(--muted);flex:none;font-weight:700}.contest-poster{border:1px solid var(--line);height:185px;color:var(--brand-tint);background:var(--ink);border-radius:15px;padding:14px 15px;position:relative;overflow:hidden}.contest-poster:before{border:20px solid var(--brand-ink);content:"";opacity:.9;border-radius:50%;width:235px;height:235px;position:absolute;bottom:-90px;right:-20px}.contest-poster:after{border:2px solid var(--brand-tint);content:"";opacity:.45;border-radius:50%;width:155px;height:155px;position:absolute;bottom:-48px;right:33px}.poster-top,.poster-bottom{z-index:1;color:var(--line);font-size:var(--fs-xs);justify-content:space-between;display:flex;position:relative}.poster-top span:last-child{font-family:var(--font-mono);letter-spacing:1px}.poster-title{z-index:1;width:max-content;color:var(--brand-tint);font-family:var(--font-display);letter-spacing:-2px;margin-top:11px;font-size:37px;font-weight:800;line-height:.77;position:relative;transform:rotate(-5deg)}.poster-title em{color:var(--line);font-size:45px;font-style:normal}.poster-bottom{gap:4px;display:grid;position:absolute;bottom:13px;left:15px;right:14px}.poster-bottom b{font-size:var(--fs-lg)}.poster-bottom span{color:var(--muted);font-size:var(--fs-xs)}.poster-sticker{z-index:2;border:1px solid var(--line);width:50px;height:50px;color:var(--line);font-family:var(--font-display);font-size:var(--fs-xs);text-align:center;border-radius:50%;place-items:center;font-weight:700;display:grid;position:absolute;top:66px;right:24px;transform:rotate(11deg)}.contest-details{border:1px solid var(--line);background:var(--surface);border-radius:12px;grid-template-columns:repeat(3,1fr);margin:11px 0 17px;padding:11px 5px;display:grid}.contest-details>div{border-right:1px solid var(--line);justify-items:center;gap:5px;display:grid}.contest-details>div:last-child{border:0}.contest-details span{color:var(--muted);font-size:var(--fs-xs)}.contest-details b{color:var(--ink);font-size:var(--fs-sm)}.route-tabs{scrollbar-width:none;gap:6px;margin:0 -2px 10px;padding:2px 2px 5px;display:flex;overflow-x:auto}.route-tabs::-webkit-scrollbar{display:none}.route-tabs button{border:1px solid var(--line);min-width:61px;color:var(--muted);background:var(--surface);font-size:var(--fs-xs);cursor:pointer;border-radius:10px;flex:none;justify-items:center;gap:3px;padding:7px 9px;display:grid}.route-tabs button small{color:var(--muted);font-family:var(--font-display);font-size:var(--fs-2xs)}.contest-format-note{border:1px solid var(--line);background:var(--surface);border-radius:12px;gap:4px;margin:0 0 10px;padding:11px 12px;display:grid}.contest-format-note b{color:var(--ink);font-size:var(--fs-sm)}.contest-format-note span,.contest-format-note small{color:var(--muted);font-size:var(--fs-xs);line-height:1.5}.ranking-points,.career-ranking-points{border:1px solid var(--line);color:var(--ink-2);background:var(--teal-tint);font-size:var(--fs-2xs);border-radius:10px;justify-content:space-between;align-items:center;gap:7px;margin:0 0 10px;padding:9px 10px;display:flex}.ranking-points b,.career-ranking-points b{color:var(--teal-ink);font-family:var(--font-display);font-size:var(--fs-xs)}.competition-list{gap:7px;margin-bottom:12px;display:grid}.competition-option{border:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:9px;width:100%;min-height:62px;padding:8px 10px;display:flex}.competition-option.selected{border-color:var(--teal-ink);box-shadow:0 0 0 2px var(--teal-tint)}.competition-option.locked{color:var(--muted);background:var(--surface);cursor:not-allowed}.competition-step{width:31px;height:31px;color:var(--teal-ink);background:var(--teal-tint);font-family:var(--font-display);font-size:var(--fs-sm);border-radius:10px;flex:0 0 31px;place-items:center;font-weight:700;display:grid}.competition-option.locked .competition-step{color:var(--muted);background:var(--brand-tint)}.competition-copy{flex:1;gap:2px;min-width:0;display:grid}.competition-copy small{color:var(--muted);font-size:var(--fs-2xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.competition-copy b{color:var(--ink);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.competition-option>strong{color:var(--teal-ink);font-family:var(--font-display);font-size:var(--fs-2xs)}.competition-option.locked>strong{color:var(--muted)}.contest-detail-card{border:1px solid var(--line);background:var(--surface);border-radius:14px;padding:12px}.contest-detail-head{gap:4px;display:grid}.contest-detail-head>b{color:var(--ink);font-size:var(--fs-xl)}.contest-detail-head>small{color:var(--muted);font-size:var(--fs-xs)}.contest-detail-card .contest-details{margin:10px 0 13px;padding:10px 3px}.contest-detail-card .contest-details b{font-size:var(--fs-2xs)}.contest-ranking-note{color:var(--ink-2);font-size:var(--fs-2xs);margin:-4px 1px 11px;line-height:1.5}.contest-lock-note{color:var(--ink-2);background:var(--brand-tint);border-radius:10px;gap:5px;padding:10px;display:grid}.contest-lock-note b{font-size:var(--fs-sm)}.contest-lock-note span,.contest-focus-note{color:var(--muted);font-size:var(--fs-xs);line-height:1.5}.contest-lock-note button{border:1px solid var(--line);min-height:40px;color:var(--teal-ink);background:var(--surface);font-size:var(--fs-xs);cursor:pointer;border-radius:9px;justify-self:start;margin-top:3px;padding:6px 11px;font-weight:700}.contest-focus-note{color:var(--teal-ink);margin-top:8px;display:block}.strategy-heading{gap:4px;margin:0 0 9px 1px;display:grid}.strategy-heading b{font-size:var(--fs-lg)}.strategy-heading small{color:var(--muted);font-size:var(--fs-xs)}.strategy-card{border:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;border-radius:13px;align-items:center;gap:8px;width:100%;min-height:69px;margin-bottom:8px;padding:9px 10px;display:flex}.strategy-card:disabled{opacity:.5;cursor:not-allowed}.strategy-card.safe{border-color:var(--line)}.strategy-card.bold{border-color:var(--brand-tint)}.strategy-mark{width:31px;height:31px;color:var(--teal-ink);background:var(--teal-tint);border-radius:10px;flex:0 0 31px;place-items:center;font-weight:700;display:grid}.bold .strategy-mark{color:var(--brand-ink);background:var(--brand-tint)}.strategy-card>span:nth-child(2){flex:1;gap:4px;display:grid}.strategy-card>span:nth-child(2) b{font-size:var(--fs-md)}.strategy-card>span:nth-child(2) small{color:var(--muted);font-size:var(--fs-2xs)}.strategy-card strong{color:var(--teal-ink);font-family:var(--font-display);font-size:var(--fs-xl);text-align:center;display:grid}.strategy-card strong small{color:var(--muted);font-family:var(--font-body);font-size:var(--fs-2xs);font-weight:400}.strategy-card>i{color:var(--muted);font-size:var(--fs-2xl);font-style:normal}.feed-content{background:var(--surface-raised);padding:0 0 12px}.feed-screen{min-height:100%;color:var(--ink);background:var(--surface-raised)}.feed-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:51px;padding:0 14px;display:flex}.feed-header h1{color:var(--ink);font-family:Apple Chancery,Brush Script MT,cursive;font-size:var(--fs-3xl);letter-spacing:-.8px;margin:0;font-weight:600}.feed-header>div,.feed-action-group{align-items:center;gap:16px;display:flex}.feed-header button,.feed-actions button{width:29px;height:32px;color:var(--ink);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.feed-header .feed-exit{border:1px solid var(--line);width:26px;height:26px;color:var(--ink-2);font-family:var(--font-body);font-size:var(--fs-2xl);border-radius:50%;font-weight:300}.feed-header svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:25px;height:25px}.feed-demo-note{color:var(--muted);font-size:var(--fs-sm);align-items:center;gap:6px;padding:7px 14px 2px;display:flex}.feed-demo-note span{color:var(--teal-ink);font-size:var(--fs-md)}.feed-demo-note i{background:var(--line);border-radius:50%;width:3px;height:3px;margin:0 1px}.feed-new-wrap{z-index:6;justify-content:center;height:0;display:flex;position:sticky;top:10px;overflow:visible}.feed-new-pill{height:34px;color:var(--surface-raised);background:var(--ink);font-family:var(--font-body);font-size:var(--fs-sm);cursor:pointer;border:0;border-radius:17px;padding:0 16px;font-weight:700;box-shadow:0 4px 14px #00000038}.feed-stories{border-bottom:1px solid var(--line);scrollbar-width:none;gap:13px;padding:10px 13px 12px;display:flex;overflow-x:auto}.feed-stories::-webkit-scrollbar{display:none}.feed-story{cursor:pointer;background:0 0;border:0;flex:0 0 58px;justify-items:center;gap:5px;padding:0;display:grid}.story-ring{background:var(--line-strong);border-radius:50%;place-items:center;width:57px;height:57px;display:grid;position:relative}.story-ring i{width:50px;height:50px;color:var(--ink-2);background:linear-gradient(145deg,var(--teal-tint),var(--brand-tint));font-size:var(--fs-lg);border:2px solid #fff;border-radius:50%;place-items:center;font-style:normal;font-weight:800;display:grid}.story-ring-2 i{color:#fff;background:linear-gradient(140deg,var(--ink),var(--brand-ink))}.story-ring-3 i{color:#fff;background:linear-gradient(140deg,var(--brand-ink),var(--line))}.story-ring-4 i{color:#fff;background:linear-gradient(140deg,var(--teal-ink),var(--line))}.own-story .story-ring{background:var(--surface-sunken)}.own-story .story-ring i{color:var(--muted);background:var(--surface);font-size:var(--fs-2xl);font-weight:400}.story-ring b{color:#fff;background:var(--teal-ink);width:19px;height:19px;font-family:var(--font-body);font-size:var(--fs-lg);border:2px solid #fff;border-radius:50%;place-items:center;line-height:1;display:grid;position:absolute;bottom:0;right:-1px}.feed-story small{width:58px;color:var(--ink);font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.feed-list{display:grid}.feed-post{border-bottom:1px solid var(--line);background:var(--surface-raised);padding-bottom:12px;overflow:hidden}.feed-user-row{align-items:center;gap:9px;min-height:54px;padding:7px 13px;display:flex}.post-avatar-ring{background:var(--line-strong);border-radius:50%;flex:0 0 35px;place-items:center;width:35px;height:35px;display:grid}.post-avatar-ring i{color:#fff;background:var(--teal-ink);width:30px;height:30px;font-size:var(--fs-lg);border:2px solid #fff;border-radius:50%;place-items:center;font-style:normal;display:grid}.post-avatar-h i{background:var(--brand-ink)}.post-avatar-m i{background:var(--teal-ink)}.post-avatar-s i{background:var(--ink-2)}.post-avatar-n i{background:var(--ink)}.post-user-meta{flex:1;gap:2px;min-width:0;display:grid}.post-user-meta b{color:var(--ink);font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.post-user-meta b i{color:#fff;background:var(--teal-ink);width:11px;height:11px;font-size:var(--fs-2xs);border-radius:50%;place-items:center;font-style:normal;display:inline-grid}.post-user-meta small{color:var(--ink-2);font-size:var(--fs-xs)}.feed-more{width:28px;height:32px;color:var(--ink);background:0 0;border:0;place-items:center;padding:0;display:grid}.feed-more svg{fill:currentColor;width:20px;height:20px}.feed-media{aspect-ratio:4/5;background:var(--line);width:100%;position:relative;overflow:hidden}.feed-media>.skate-scene{object-fit:cover;object-position:50% 56%;width:100%;height:100%;image-rendering:pixelated}.feed-post-community.feed-post-clip .feed-media>.skate-scene{filter:brightness(.66)hue-rotate(22deg)saturate(.82);object-position:64% 50%}.feed-media-gear,.feed-media-session,.feed-media-contest{aspect-ratio:4/3}.feed-media-tag,.feed-media-count{z-index:2;color:#fff;font-size:var(--fs-xs);background:#1e1b26a8;border-radius:20px;padding:6px 8px;position:absolute;top:10px}.feed-media-tag{left:10px}.feed-media-count{font-family:var(--font-display);right:10px}.feed-art-label{color:var(--brand-tint);font-family:var(--font-display);font-size:var(--fs-xl);letter-spacing:.4px;text-align:right;text-shadow:1px 2px 0 var(--ink);font-weight:800;line-height:.88;position:absolute;bottom:12px;right:12px;transform:rotate(-4deg)}.feed-video-mark{color:#fff;width:44px;height:44px;font-size:var(--fs-xl);background:#1e1b2663;border:1px solid #ffffffad;border-radius:50%;place-items:center;padding-left:3px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.feed-art-kicker{color:var(--brand-tint);font-family:var(--font-display);font-size:var(--fs-xs);letter-spacing:1.4px;font-weight:700}.feed-contest-art{color:var(--brand-tint);background:var(--ink);flex-direction:column;justify-content:center;padding:22px;display:flex;position:absolute;inset:0;overflow:hidden}.feed-contest-art>.skate-scene{object-fit:cover;object-position:50% 55%;filter:saturate(.7);width:100%;height:100%;image-rendering:pixelated;position:absolute;inset:0}.feed-contest-shade{background:linear-gradient(115deg,#1e1b26e8 0%,#1e1b26a8 54%,#1e1b2636 100%);position:absolute;inset:0}.feed-contest-art .feed-art-kicker,.feed-contest-art strong,.feed-contest-art small{z-index:1;position:relative}.feed-contest-art strong{max-width:75%;font-family:var(--font-display);letter-spacing:-1px;text-transform:uppercase;margin:10px 0 7px;font-size:clamp(25px,8vw,42px);font-weight:800;line-height:.95}.feed-contest-art small{color:var(--brand-tint);font-size:var(--fs-md)}.feed-contest-stamp{border:1px solid var(--line);width:58px;height:58px;color:var(--line);font-family:var(--font-display);font-size:var(--fs-xs);border-radius:50%;place-items:center;font-weight:800;display:grid;position:absolute;bottom:20px;right:18px;transform:rotate(12deg)}.feed-gear-art{background:radial-gradient(circle at 73% 47%,var(--line) 0 21%,transparent 21.5%),linear-gradient(135deg,var(--teal-tint),var(--brand-tint) 52%,var(--line));position:absolute;inset:0;overflow:hidden}.feed-gear-art:before{content:"";background-image:radial-gradient(#1e1b2622 1px,#0000 1px);background-size:9px 9px;position:absolute;inset:0}.feed-gear-art .feed-art-kicker{color:var(--ink);position:absolute;top:18px;left:18px}.feed-deck-art{filter:drop-shadow(7px 10px #1e1b2630);width:34%;height:82%;position:absolute;top:50%;left:50%;transform:translate(-50%,-48%)rotate(22deg)}.feed-gear-copy{color:var(--ink);gap:3px;display:grid;position:absolute;bottom:18px;left:15px;right:15px}.feed-gear-copy b{font-family:var(--font-display);font-size:var(--fs-xl);letter-spacing:1px}.feed-gear-copy small{color:var(--ink-2);font-size:var(--fs-sm)}.feed-gear-sticker{border:1px solid var(--brand-tint);width:45px;height:45px;color:var(--brand-tint);background:var(--brand-ink);font-family:var(--font-display);font-size:var(--fs-2xs);text-align:center;border-radius:50%;place-items:center;font-weight:800;line-height:1.1;display:grid;position:absolute;top:23px;right:18px;transform:rotate(10deg)}.feed-session-art{color:var(--brand-tint);background:var(--brand-ink);flex-direction:column;justify-content:center;padding:24px;display:flex;position:absolute;inset:0;overflow:hidden}.feed-session-art:before{content:"";background-image:linear-gradient(#f4d9a422 1px,#0000 1px),linear-gradient(90deg,#f4d9a422 1px,#0000 1px);background-size:18px 18px;position:absolute;inset:0}.feed-session-sun{aspect-ratio:1;background:var(--line);border-radius:50%;width:64%;position:absolute;top:-36%;right:-9%}.feed-session-art .feed-art-kicker,.feed-session-art strong,.feed-session-art small,.feed-session-date{z-index:1;position:relative}.feed-session-art .feed-art-kicker{color:var(--brand-tint)}.feed-session-art strong{font-family:var(--font-display);letter-spacing:-2px;margin:15px 0;font-size:clamp(34px,10vw,54px);line-height:.8}.feed-session-art strong em{color:var(--ink);font-style:normal}.feed-session-date{border:1px solid var(--brand-tint);font-family:var(--font-display);font-size:var(--fs-md);border-radius:999px;align-self:flex-start;padding:7px 10px;font-weight:700}.feed-session-art small{color:var(--brand-tint);font-size:var(--fs-xs);letter-spacing:1px;margin-top:8px}.feed-session-board{font-size:28px;position:absolute;bottom:18px;right:16px;transform:rotate(-20deg)}.feed-actions{justify-content:space-between;align-items:center;padding:6px 12px 0;display:flex}.feed-actions button svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:25px;height:25px}.feed-actions button .is-filled{fill:currentColor}.feed-actions button.liked{color:var(--line)}.feed-actions button.saved{color:var(--ink)}.feed-post-copy{gap:5px;padding:1px 13px 0;display:grid}.feed-like-count{color:var(--ink);font-size:var(--fs-md)}.feed-caption{color:var(--ink);font-size:var(--fs-md);margin:0;line-height:1.55}.feed-caption b,.feed-comments b,.feed-comment-panel>p b{font-weight:700}.feed-caption span{color:var(--teal-ink)}.feed-comments-toggle{color:var(--muted);font-size:var(--fs-sm);cursor:pointer;background:0 0;border:0;justify-self:start;padding:0}.feed-post-copy time{color:var(--muted);font-size:var(--fs-xs)}.feed-comment-panel{gap:7px;padding:10px 13px 0;display:grid}.feed-comment-panel>p{color:var(--ink);font-size:var(--fs-sm);margin:0}.feed-comment-panel form{align-items:center;gap:8px;margin-top:2px;display:flex}.feed-comment-panel input{border:0;border-top:1px solid var(--surface);min-width:0;min-height:34px;color:var(--ink);background:var(--surface-raised);font:inherit;font-size:var(--fs-md);outline:0;flex:1;padding:0 2px}.feed-comment-panel form button{color:var(--teal-ink);font-size:var(--fs-xs);cursor:pointer;background:0 0;border:0;font-weight:700}.feed-comment-panel form button:disabled{opacity:.45;cursor:default}.empty-feed{border:1px solid var(--line);background:var(--surface-raised);text-align:center;border-radius:4px;justify-items:center;margin:22px 14px;padding:26px 16px;display:grid}.empty-icon{border:1px solid var(--line);width:50px;height:50px;color:var(--teal-ink);background:var(--teal-tint);font-size:var(--fs-2xl);border-radius:16px;place-items:center;margin-bottom:13px;display:grid}.empty-feed h3{font-size:var(--fs-lg);margin:0 0 7px}.empty-feed p{color:var(--muted);font-size:var(--fs-sm);margin:0;line-height:1.6}.empty-feed>button{color:#fff;background:var(--teal-ink);font-size:var(--fs-sm);cursor:pointer;border:0;border-radius:8px;align-items:center;gap:9px;margin-top:15px;padding:9px 12px;font-weight:700;display:flex}.feed-footer-note{color:var(--muted);font-size:var(--fs-2xs);text-align:center;padding:16px 13px 10px}.feed-story-backdrop{z-index:12;align-items:center;padding:18px}.feed-story-viewer{color:#fff;background:var(--ink);width:min(100%,370px);height:min(78dvh,650px);box-shadow:0 14px 50px #1E1B266;border-radius:12px;flex-direction:column;justify-content:space-between;padding:12px;display:flex;position:relative;overflow:hidden}.feed-story-viewer>.skate-scene{object-fit:cover;width:100%;height:100%;image-rendering:pixelated;position:absolute;inset:0}.story-viewer-shade{background:linear-gradient(#1E1B268,transparent 24%,transparent 58%,#1E1B269);position:absolute;inset:0}.story-viewer-top{z-index:1;align-items:center;gap:7px;display:flex;position:relative}.story-viewer-avatar{background:var(--teal-ink);width:27px;height:27px;font-size:var(--fs-sm);border:1px solid #ffffffb8;border-radius:50%;place-items:center;display:grid}.story-viewer-top b{font-size:var(--fs-xs)}.story-viewer-top small{color:#ffffffb0;font-size:var(--fs-2xs)}.story-viewer-top button{color:#fff;font-size:var(--fs-3xl);cursor:pointer;background:0 0;border:0;margin-left:auto}.feed-story-viewer>p{z-index:1;background:#1E1B265;font-size:var(--fs-lg);text-align:center;border-radius:8px;margin:auto 8px;padding:10px 12px;font-weight:700;line-height:1.4;position:relative}.story-viewer-reply{z-index:1;color:#ffffffd9;font-size:var(--fs-2xs);border:1px solid #ffffffa8;border-radius:22px;padding:10px 12px;position:relative}.feed-notification{align-items:center;gap:9px;padding:8px 0;display:flex}.feed-notification p{color:var(--ink-2);font-size:var(--fs-xs);flex:1;gap:3px;margin:0;display:grid}.feed-notification p small{color:var(--muted);font-size:var(--fs-2xs)}.feed-notification>.skate-scene{object-fit:cover;border-radius:4px;width:42px;height:42px}.feed-empty-notice{color:var(--muted);font-size:var(--fs-sm);margin:0;padding:8px 0}.shop-wallet{border:1px solid var(--line);background:var(--surface);border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:11px;padding:11px 13px;display:flex}.shop-wallet>span{color:var(--muted);font-size:var(--fs-sm)}.shop-wallet b{color:var(--brand-ink);font-family:var(--font-display);font-size:var(--fs-xl)}.shop-wallet small{color:var(--muted);font-family:var(--font-body);font-size:var(--fs-xs);font-weight:400}.shop-list{gap:9px;display:grid}.shop-item{border:1px solid var(--line);background:var(--surface);border-radius:13px;gap:10px;padding:9px;display:flex}.shop-item.equipped{border-color:var(--line);box-shadow:0 0 0 2px var(--teal-tint)}.shop-item.locked{background:var(--surface)}.item-art{width:70px;height:82px;color:var(--brand-ink);background:var(--brand-tint);border-radius:10px;flex:0 0 70px;place-items:center;display:grid;overflow:hidden}.item-art>img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;padding:3px;display:block}.item-art-1{color:var(--teal-ink);background:var(--teal-tint)}.item-art-2{color:var(--teal-ink);background:var(--surface-sunken)}.item-art-3{color:var(--teal-ink);background:var(--teal-tint)}.item-info{flex:1;align-content:start;gap:3px;min-width:0;display:grid}.item-info>small{color:var(--muted);font-size:var(--fs-2xs)}.item-info>b{font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.item-info>span{color:var(--muted);font-size:var(--fs-2xs)}.item-buy-row{justify-content:space-between;align-items:center;gap:5px;margin-top:5px;display:flex}.item-buy-row strong{color:var(--brand-ink);font-family:var(--font-display);font-size:var(--fs-sm)}.item-buy-row em{color:var(--teal-ink);font-size:var(--fs-xs);font-style:normal}.item-buy-row button{border:1px solid var(--line);min-width:49px;min-height:28px;color:var(--teal-ink);background:var(--teal-tint);font-size:var(--fs-xs);cursor:pointer;border-radius:8px;padding:3px 9px}.item-buy-row button:disabled{border-color:var(--line);color:var(--muted);background:var(--surface);cursor:not-allowed}.toast{z-index:8;right:18px;bottom:calc(78px + var(--safe-bottom));border:1px solid var(--line);color:var(--teal-tint);background:var(--ink);font-size:var(--fs-md);text-align:center;border-radius:12px;padding:12px 15px;animation:.2s ease-out toast-in;position:absolute;left:18px;box-shadow:0 5px 18px #1e1b262e}.modal-backdrop{z-index:10;padding-bottom:var(--safe-bottom);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1e1b26b5;justify-content:center;align-items:flex-end;animation:.15s ease-out appear;display:flex;position:absolute;inset:0}.bottom-sheet,.confirm-sheet,.result-sheet{width:100%;max-height:calc(90dvh - var(--safe-bottom));padding:24px 20px calc(22px + var(--safe-bottom));border:1px solid var(--line);background:var(--surface);border-bottom:0;border-radius:23px 23px 0 0;position:relative;overflow:auto;box-shadow:0 -15px 60px #1e1b262b}.sheet-handle{background:var(--teal-tint);border-radius:4px;width:39px;height:4px;margin:-12px auto 18px}.sheet-close{border:1px solid var(--line);width:33px;height:33px;color:var(--muted);background:var(--surface);font-family:var(--font-body);font-size:var(--fs-2xl);cursor:pointer;border-radius:50%;place-items:center;display:grid;position:absolute;top:15px;right:18px}.bottom-sheet h2{font-size:var(--fs-2xl);margin:4px 0 18px}.career-identity{border:1px solid var(--line);background:var(--brand-tint);border-radius:14px;align-items:center;gap:11px;margin-bottom:17px;padding:12px;display:flex}.career-avatar{border:1px solid var(--line);width:49px;height:49px;color:var(--teal-ink);background:var(--teal-tint);font-size:var(--fs-3xl);border-radius:15px;place-items:center;display:grid}.career-identity>div:last-child{gap:3px;display:grid}.career-identity span{color:var(--muted);font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:1px}.career-identity b{font-size:var(--fs-lg)}.career-identity small{color:var(--muted);font-size:var(--fs-xs)}.career-season-status{border:1px solid var(--line);background:var(--brand-tint);border-radius:12px;grid-template-columns:repeat(3,1fr);margin:-7px 0 14px;padding:10px 5px;display:grid}.career-season-status>div{border-right:1px solid var(--line);justify-items:center;gap:4px;display:grid}.career-season-status>div:last-child{border:0}.career-season-status small{color:var(--muted);font-size:var(--fs-2xs)}.career-season-status b{color:var(--ink-2);font-family:var(--font-display);font-size:var(--fs-sm)}.season-history{border:1px solid var(--line);background:var(--brand-tint);border-radius:12px;margin-top:15px;padding:11px}.season-history .trophy-heading{margin-bottom:5px}.season-history>small{color:var(--muted);font-size:var(--fs-xs);line-height:1.5;display:block}.season-history-row{border-top:1px solid var(--line);font-size:var(--fs-xs);justify-content:space-between;gap:8px;padding:8px 0;display:flex}.season-history-row b{color:var(--ink-2)}.season-history-row span{color:var(--muted)}.season-history-button{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0}.season-history-button:focus-visible{outline:2px solid var(--teal-ink);outline-offset:2px}.season-review-section{gap:4px;margin:16px 0;display:grid}.season-review-section h3{color:var(--ink);font-size:var(--fs-sm);justify-content:space-between;margin:0 0 3px;display:flex}.season-review-section h3 small{color:var(--muted);font-weight:500}.season-review-row{border-top:1px solid var(--line);min-height:34px;color:var(--muted);font-size:var(--fs-xs);justify-content:space-between;align-items:center;gap:8px;padding:6px 0;display:flex}.season-review-row b{color:var(--ink-2);text-align:right}.season-review-row i{min-width:55px;color:var(--teal-ink);text-align:right;font-style:normal}.season-review-pair{background:var(--surface-2);color:var(--muted);font-size:var(--fs-xs);border-radius:12px;grid-template-columns:1fr 1fr;gap:7px 12px;padding:11px;display:grid}.season-cycle-card{border:1px solid var(--line);background:var(--teal-tint);border-radius:14px;gap:9px;margin:10px 0 2px;padding:11px 12px;display:grid}.season-cycle-heading{justify-content:space-between;align-items:center;display:flex}.season-cycle-heading>div{gap:3px;display:grid}.season-cycle-heading>div small{color:var(--muted);font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:.8px;font-weight:700}.season-cycle-heading>div b{color:var(--ink);font-size:var(--fs-md)}.season-morale{border:1px solid var(--line);color:var(--muted);background:var(--surface);border-radius:9px;align-items:center;gap:5px;padding:5px 8px;display:flex}.season-morale small{font-size:var(--fs-2xs)}.season-morale b{color:var(--teal-ink);font-family:var(--font-display);font-size:var(--fs-md)}.season-progress{gap:5px;display:grid}.season-progress>div{color:var(--muted);font-size:var(--fs-xs);justify-content:space-between;display:flex}.season-progress>div b{color:var(--ink-2);font-family:var(--font-display)}.season-progress>i{background:var(--teal-tint);border-radius:5px;height:5px;display:block;overflow:hidden}.season-progress>i>span{border-radius:inherit;background:linear-gradient(90deg, var(--line), var(--teal-ink));height:100%;transition:width .25s;display:block}.season-cycle-footer{justify-content:space-between;align-items:center;gap:8px;display:flex}.season-cycle-footer>small{color:var(--muted);font-size:var(--fs-xs);line-height:1.4}.season-cycle-footer>button{border:1px solid var(--line);min-height:32px;color:var(--teal-ink);background:var(--surface);font-size:var(--fs-xs);cursor:pointer;border-radius:9px;flex:none;padding:5px 9px;font-weight:700}.season-cycle-footer>button:disabled{border-color:var(--line);color:var(--muted);background:var(--surface);cursor:default}.character-shell{background:radial-gradient(ellipse at 85% 18%, var(--teal-tint) 0, transparent 36%), var(--paper)}.creator-brand{padding:calc(13px + var(--safe-top)) 20px 10px;color:var(--ink);font-family:var(--font-display);font-size:var(--fs-sm);letter-spacing:.8px;flex:none;align-items:center;gap:8px;display:flex}.creator-brand>span{color:#fff;background:var(--teal);width:29px;height:29px;font-size:var(--fs-2xl);border-radius:9px;place-items:center;display:grid}.creator-brand small{color:var(--muted);font-family:var(--font-mono);font-size:var(--fs-2xs);letter-spacing:1.2px;margin-left:auto}.character-creator{padding:21px 20px calc(25px + var(--safe-bottom));scrollbar-width:none;flex:auto;overflow:auto}.character-creator::-webkit-scrollbar{display:none}.character-creator h1{color:var(--ink);font-size:var(--fs-3xl);letter-spacing:-1px;margin:7px 0;line-height:1.25}.creator-intro{color:var(--muted);font-size:var(--fs-md);margin:0 0 23px}.character-creator form{gap:17px;display:grid}.creator-field{color:var(--ink-2);font-size:var(--fs-sm);gap:7px;font-weight:700;display:grid;position:relative}.creator-field input,.creator-field select{border:1px solid var(--line);width:100%;height:47px;color:var(--ink);background:var(--surface);font:inherit;font-size:var(--fs-md);border-radius:11px;outline:none;padding:0 12px}.creator-field input::placeholder{color:var(--muted);font-weight:400}.creator-field>small{color:var(--muted);font-family:var(--font-display);font-size:var(--fs-xs);font-weight:400;position:absolute;bottom:15px;right:11px}.creator-group{border:0;min-width:0;margin:0;padding:0}.creator-group legend{color:var(--ink-2);font-size:var(--fs-sm);margin-bottom:8px;font-weight:700}.creator-age-options{grid-template-columns:1fr 1fr;gap:7px;display:grid}.creator-age-options button{border:1px solid var(--line);color:var(--ink);background:var(--surface);text-align:left;cursor:pointer;border-radius:11px;gap:4px;padding:9px;display:grid}.creator-age-options button.selected{border-color:var(--teal-ink);background:var(--teal-tint);box-shadow:0 0 0 2px var(--teal-tint)}.creator-age-options button b{color:var(--ink);font-family:var(--font-display);font-size:var(--fs-md)}.creator-age-options button small{color:var(--muted);font-size:var(--fs-xs);font-weight:400;line-height:1.4}.creator-options{grid-template-columns:1fr 1fr;gap:8px;display:grid}.creator-options button,.stance-options button{border:1px solid var(--line);color:var(--ink);background:var(--surface);text-align:left;cursor:pointer;border-radius:12px;justify-items:start;gap:5px;padding:11px 10px;display:grid}.creator-options button.selected,.stance-options button.selected{border-color:var(--teal-ink);background:var(--teal-tint);box-shadow:0 0 0 2px var(--teal-tint)}.creator-options button>span{width:27px;height:27px;color:var(--brand-ink);background:var(--brand-tint);font-size:var(--fs-xl);border-radius:8px;place-items:center;display:grid}.creator-options button:nth-child(2)>span{color:var(--teal-ink);background:var(--teal-tint)}.creator-options button b,.stance-options button b{font-size:var(--fs-md)}.creator-options button small,.stance-options button small{color:var(--muted);font-size:var(--fs-2xs);font-weight:400;line-height:1.45}.creator-bonus{color:var(--muted);font-size:var(--fs-2xs);margin-top:7px;line-height:1.45;display:block}.stance-options{grid-template-columns:1fr 1fr;gap:8px;display:grid}.stance-options button{grid-template-columns:1fr auto;align-items:center;padding:11px 12px}.stance-options button small{grid-column:1/-1}.creator-submit{margin-top:1px}.creator-submit:disabled{opacity:.48;cursor:not-allowed}.contest-risk-note{color:var(--brand-ink);font-size:var(--fs-2xs);margin:-3px 1px 8px;line-height:1.45}.career-goal{border:1px solid var(--brand-tint);background:var(--brand-tint);border-radius:12px;gap:5px;margin:16px 0 12px;padding:12px;display:grid}.career-goal small{color:var(--brand-ink);font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:1px;font-weight:700}.career-goal b{font-size:var(--fs-md)}.career-goal span{color:var(--muted);font-size:var(--fs-xs)}.career-stats{border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(3,1fr);padding:12px 5px;display:grid}.career-stats>div{border-right:1px solid var(--line);justify-items:center;gap:5px;display:grid}.career-stats>div:last-child{border:0}.career-stats b{font-family:var(--font-display);font-size:var(--fs-xl)}.career-stats small{color:var(--muted);font-size:var(--fs-2xs)}.trophy-section{margin-top:16px}.trophy-heading{justify-content:space-between;align-items:baseline;margin-bottom:8px;display:flex}.trophy-heading b{color:var(--ink);font-size:var(--fs-md)}.trophy-heading span{color:var(--muted);font-size:var(--fs-xs)}.trophy-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.trophy-card{border:1px solid var(--line);background:var(--surface);border-radius:10px;align-items:center;gap:7px;min-width:0;padding:8px 7px;display:flex}.trophy-card.place-1{border-color:var(--line);background:var(--brand-tint)}.trophy-card.place-2{border-color:var(--line);background:var(--surface)}.trophy-card.place-3{border-color:var(--brand-tint);background:var(--brand-tint)}.trophy-card.is-locked{opacity:.68}.trophy-art{background:var(--brand-tint);width:31px;height:34px;font-size:var(--fs-xl);border-radius:9px;flex:0 0 31px;place-items:center;display:grid}.place-1 .trophy-art{background:var(--brand-tint)}.place-2 .trophy-art{background:var(--surface-sunken)}.place-3 .trophy-art{background:var(--brand-tint)}.trophy-copy{gap:2px;min-width:0;display:grid}.trophy-copy small{color:var(--muted);font-size:var(--fs-2xs)}.trophy-copy b{color:var(--ink-2);font-size:var(--fs-2xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trophy-copy>span{color:var(--brand-ink);font-size:var(--fs-2xs)}.career-ranking-points{margin-top:10px}.career-sponsor{border:1px solid var(--line);background:var(--teal-tint);border-radius:12px;gap:5px;margin-top:12px;padding:12px;display:grid}.career-sponsor small{color:var(--muted);font-family:var(--font-display);font-size:var(--fs-2xs);letter-spacing:1px;font-weight:700}.event-description{color:var(--muted);font-size:var(--fs-sm);margin:0 0 13px;line-height:1.6}.event-choice-list{gap:8px;display:grid}.event-choice{border:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:62px;padding:10px;display:flex}.event-choice>span{gap:5px;display:grid}.event-choice b{color:var(--ink);font-size:var(--fs-sm)}.event-choice small{color:var(--muted);font-size:var(--fs-2xs);line-height:1.5}.event-choice i{color:var(--teal-ink);font-size:var(--fs-2xs);flex:none;font-style:normal}.event-choice:disabled{opacity:.5;cursor:not-allowed}.mock-disclaimer{color:var(--muted);font-size:var(--fs-xs);margin:13px 0 0;line-height:1.6}.help-list{gap:10px;display:grid}.help-list>div{border:1px solid var(--line);background:var(--brand-tint);border-radius:12px;align-items:flex-start;gap:10px;padding:11px;display:flex}.help-list>div>span{height:27px;color:var(--teal-ink);background:var(--teal-tint);font-family:var(--font-display);font-size:var(--fs-xs);border-radius:8px;flex:0 0 27px;place-items:center;font-weight:700;display:grid}.help-list p{gap:4px;margin:0;display:grid}.help-list p b{font-size:var(--fs-sm)}.help-list p small{color:var(--muted);font-size:var(--fs-xs);line-height:1.5}.confirm-sheet{text-align:center;padding-top:13px}.exit-icon{width:48px;height:48px;color:var(--brand-ink);background:var(--brand-tint);font-family:var(--font-display);font-size:var(--fs-2xl);border-radius:15px;place-items:center;margin:1px auto 12px;display:grid}.confirm-sheet h2{font-size:var(--fs-2xl);margin:0 0 7px}.confirm-sheet p{color:var(--muted);font-size:var(--fs-sm);margin-bottom:17px;line-height:1.6}.confirm-sheet .primary-button{margin-top:10px}.text-button{min-height:43px;color:var(--muted);font-size:var(--fs-md);cursor:pointer;background:0 0;border:0;margin-top:5px}.result-sheet{text-align:center;padding-top:31px}.result-sheet .sheet-close{top:13px}.result-badge{border:1px solid var(--line);width:58px;height:58px;color:var(--teal-ink);background:var(--teal-tint);font-size:var(--fs-3xl);border-radius:19px;place-items:center;margin:0 auto 13px;display:grid}.result-badge.is-miss{border-color:var(--brand-tint);color:var(--brand-ink);background:var(--brand-tint)}.result-sheet h2{font-size:var(--fs-2xl);margin:5px 0 6px}.result-sheet>p{color:var(--muted);font-size:var(--fs-sm);margin-bottom:15px}.result-score{border:1px solid var(--line);background:var(--brand-tint);border-radius:12px;grid-template-columns:repeat(3,1fr);margin-bottom:10px;padding:11px 4px;display:grid}.result-score>div{border-right:1px solid var(--line);gap:5px;display:grid}.result-score>div:last-child{border:0}.result-score small{color:var(--muted);font-size:var(--fs-2xs)}.result-score b{font-size:var(--fs-sm)}.reward-line{border:1px solid var(--brand-tint);background:var(--brand-tint);border-radius:10px;justify-content:space-between;align-items:center;margin:8px 0 13px;padding:10px 11px;display:flex}.reward-line>span{color:var(--ink-2);font-size:var(--fs-xs)}.reward-line b{color:var(--brand-ink);font-family:var(--font-display);font-size:var(--fs-md)}.reward-line small{color:var(--brand-ink);font-family:var(--font-body);font-size:var(--fs-2xs);font-weight:400}.result-sheet .primary-button{margin-top:4px}.result-note{color:var(--muted);font-size:var(--fs-2xs);margin-top:9px}@keyframes appear{0%{opacity:.5;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@media (width>=600px){body{place-items:center;min-height:100dvh;padding:18px;display:grid}.app-shell{border:1px solid var(--line);border-radius:24px;height:min(900px,100dvh - 36px);min-height:560px}.topbar{border-radius:24px 24px 0 0}.modal-backdrop{border-radius:24px}.bottom-nav{padding-bottom:12px}}@media (height<=670px){.status-strip{min-height:50px;margin-bottom:1px}.content{padding-top:7px}.home-heading{margin-bottom:9px}.home-heading h1{font-size:var(--fs-2xl)}.scene-card .skate-scene{height:193px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}body{letter-spacing:-.01em;word-break:keep-all;line-height:1.5}h1,h2,h3{letter-spacing:-.03em;text-wrap:balance;font-weight:800}p,small{text-wrap:pretty}button{-webkit-tap-highlight-color:transparent}b,strong{font-weight:700}.status-strip b,.skill-top b,.season-cycle-heading b,.career-stats b,.shop-wallet b,.item-buy-row strong,.reward-line b{font-variant-numeric:tabular-nums}button:focus-visible,input:focus-visible,select:focus-visible{box-shadow:var(--focus);outline:0}.help-button,.close-button,.goal-card>button{width:40px;height:40px}.daily-reward-row button,.sponsor-next button,.career-loop-card>button,.offline-reward>button,.season-cycle-footer>button,.item-buy-row button{border-radius:var(--r-sm);min-height:40px;padding-inline:14px}.item-buy-row button{min-width:64px}.feed-header button,.feed-actions button{width:40px;height:40px}.feed-comments-toggle,.feed-comment-panel form button{min-height:36px}.sheet-close{width:40px;height:40px}.route-tabs button{min-width:68px;min-height:52px}.status-strip,.daily-card,.sponsor-card,.home-skill-card,.training-card,.competition-option,.strategy-card,.shop-item,.shop-wallet,.contest-detail-card,.contest-details,.career-stats,.event-choice,.secondary-button{border-radius:var(--r-md);box-shadow:var(--shadow-1)}.competition-option,.strategy-card,.training-card,.event-choice,.secondary-button{transition:transform .14s var(--ease), box-shadow .14s var(--ease), border-color .14s var(--ease)}.competition-option:active:not(:disabled),.strategy-card:active:not(:disabled),.training-card:active:not(:disabled),.event-choice:active:not(:disabled),.secondary-button:active{box-shadow:none;transform:scale(.985)}@media (hover:hover){.competition-option:hover:not(.locked),.strategy-card:hover:not(:disabled),.training-card:hover:not(:disabled),.event-choice:hover:not(:disabled),.secondary-button:hover{border-color:var(--line-strong);box-shadow:var(--shadow-2)}.nav-item:not(.active):hover{color:var(--ink-2);background:var(--surface-2)}}.topbar{min-height:64px;padding-inline:20px}.brand-star{background:linear-gradient(145deg, var(--brand), var(--brand-deep));border-radius:9px;width:30px;height:30px;box-shadow:0 2px #1e1b2680}.brand-mark{font-size:var(--fs-xs);letter-spacing:.08em}.save-state{color:var(--muted)}.status-strip{margin-inline:16px;padding:9px 4px}.status-strip>div{grid-template-rows:20px 14px;grid-template-columns:22px auto;column-gap:5px}.resource-icon{width:22px;height:22px;font-size:var(--fs-xs);border-radius:7px}.status-strip b{font-size:var(--fs-xl)}.status-strip small{color:var(--muted);font-size:var(--fs-2xs)}.eyebrow{color:var(--brand-ink);font-size:var(--fs-2xs);letter-spacing:.14em}.home-heading h1{font-size:26px;line-height:1.25}.screen-heading h1{font-size:24px}.screen-heading p{font-size:var(--fs-md)}.section-title h2{font-size:var(--fs-xl)}.primary-button{border-radius:var(--r-md);background:var(--teal-ink);min-height:54px;box-shadow:0 4px 0 var(--ink);font-size:var(--fs-xl);letter-spacing:-.02em}.primary-button b{border-radius:10px}.primary-button:disabled{box-shadow:none;filter:grayscale(.4)}.text-button{min-height:var(--tap)}.scene-card{border-radius:var(--r-lg);box-shadow:0 5px 0 var(--teal-tint), var(--shadow-2);border-color:#1e1b2612}.scene-sticker{border-radius:var(--r-xs);font-size:var(--fs-xs);box-shadow:var(--shadow-1);padding:8px 11px}.scene-sticker b{font-size:var(--fs-sm)}.rank-chip{border-radius:var(--r-sm)}.rank-chip b{font-size:var(--fs-md)}.bottom-nav{border-top-color:var(--line);background:color-mix(in srgb, var(--surface) 95%, transparent);padding-top:6px}.nav-item{border-radius:var(--r-sm);min-height:52px;color:var(--muted);transition:color .15s var(--ease), background .15s var(--ease);gap:2px}.nav-item>span:last-of-type{font-size:var(--fs-xs);font-weight:600}.nav-item.active{color:var(--brand-ink);background:var(--brand-tint)}.nav-item.active>span:last-of-type{font-weight:800}.nav-item.active:before{background:var(--brand);content:"";border-radius:0 0 3px 3px;width:20px;height:3px;position:absolute;top:0;left:50%;transform:translate(-50%)}.nav-dot{background:var(--accent)}.skill-track,.season-progress>i{height:7px}.competition-option.selected,.shop-item.equipped,.creator-age-options button.selected,.creator-options button.selected,.stance-options button.selected{border-color:var(--brand);background:var(--teal-tint);box-shadow:0 0 0 3px #1e1b261f}.route-tabs button.active{border-color:var(--brand);color:var(--brand-ink);background:var(--brand-tint);box-shadow:none}.route-tabs button{border-radius:var(--r-sm);font-size:var(--fs-sm);font-weight:600}.offline-reward,.career-loop-card,.session-reward,.practice-bonus,.career-goal,.contest-lock-note,.reward-line{border-radius:var(--r-md);border-color:var(--line);background:var(--accent-tint)}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1e1b26cc}.bottom-sheet,.confirm-sheet,.result-sheet{border-radius:var(--r-sheet) var(--r-sheet) 0 0;box-shadow:var(--shadow-sheet);background:var(--cream)}.sheet-handle{background:var(--line-strong);width:44px;height:5px}.bottom-sheet h2,.result-sheet h2,.confirm-sheet h2{font-size:22px}.toast{border-radius:var(--r-md);background:var(--ink);font-size:var(--fs-lg);border:0;padding:14px 16px;font-weight:600;line-height:1.4;box-shadow:0 10px 30px #1e1b2640}.creator-field input,.creator-field select{border-radius:var(--r-sm);height:52px;font-size:var(--fs-xl)}.creator-field input:focus,.creator-field select:focus{border-color:var(--brand);box-shadow:0 0 0 4px #1e1b261f}.creator-field,.creator-group legend{color:var(--ink-2);font-size:var(--fs-sm)}.character-creator h1{font-size:30px}.creator-intro{font-size:var(--fs-lg)}@media (width>=600px){body{background:radial-gradient(circle at 20% 10%, var(--teal-tint), transparent 45%), radial-gradient(circle at 85% 90%, var(--brand-tint), transparent 40%), var(--teal-tint)}.app-shell{border:0;border-radius:28px}.topbar{border-radius:28px 28px 0 0}.modal-backdrop{border-radius:28px}}@media (prefers-reduced-motion:reduce){.competition-option,.strategy-card,.training-card,.event-choice,.secondary-button,.nav-item{transition:none}}.legacy-badge{border:1px solid var(--brand-tint);background:var(--brand-tint);border-radius:12px;justify-content:space-between;align-items:center;gap:8px;margin:0 0 10px;padding:8px 12px;display:flex}.legacy-badge b{font-size:var(--fs-md)}.legacy-badge span{color:var(--muted);font-size:var(--fs-xs)}.early-retire{border:1px dashed var(--line-strong);border-radius:var(--r-sm);width:100%;min-height:40px;color:var(--ink-2);font-size:var(--fs-xs);cursor:pointer;background:0 0;margin-top:8px;font-weight:700}.retire-summary{grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0;display:grid}.retire-summary>div{border:1px solid var(--line);background:var(--surface-2);text-align:center;border-radius:12px;gap:3px;padding:10px;display:grid}.retire-summary small{color:var(--muted);font-size:var(--fs-2xs)}.retire-summary b{font-size:var(--fs-md)}.retire-bonus{border:1px solid var(--brand-tint);background:var(--brand-tint);border-radius:12px;gap:5px;margin-bottom:12px;padding:12px;display:grid}.retire-bonus b{font-size:var(--fs-md)}.retire-bonus span{color:var(--muted);font-size:var(--fs-xs);line-height:1.5}.creator-legacy{border:1px solid var(--brand-tint);background:var(--brand-tint);border-radius:12px;gap:4px;margin:0 0 14px;padding:12px;display:grid}.creator-legacy b{font-size:var(--fs-md)}.creator-legacy span{color:var(--muted);font-size:var(--fs-xs);line-height:1.5}.status-banner{background:var(--brand-tint);color:var(--ink-2);font-size:var(--fs-xs);justify-content:space-between;align-items:center;gap:8px;padding:8px 14px;display:flex}.status-banner.error{background:var(--brand-tint);color:var(--brand-ink)}.status-banner button{min-height:44px;color:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:10px;padding:0 12px;font-weight:700}.settings-group{gap:8px;margin:14px 0;display:grid}.settings-group h3{font-size:var(--fs-lg);margin:0}.settings-toggle{border:1px solid var(--line);background:var(--surface);border-radius:12px;grid-template-columns:1fr auto auto;align-items:center;gap:10px;min-height:52px;padding:8px 12px;display:grid}.settings-toggle span{gap:2px;display:grid}.settings-toggle small{color:var(--muted);font-size:var(--fs-xs)}.settings-toggle input{width:44px;height:28px;accent-color:var(--brand)}.settings-toggle i{min-width:28px;font-style:normal;font-size:var(--fs-xs);color:var(--brand-ink);font-weight:700}.settings-formula{color:var(--ink-2);font-size:var(--fs-xs);margin:0;line-height:1.6}.settings-values{font-size:var(--fs-xs);color:var(--ink-2);gap:4px;margin:0;padding:0;list-style:none;display:grid}.settings-values li{background:var(--surface-2);border-radius:8px;padding:6px 10px}.settings-link,.settings-danger{border:1px solid var(--line-strong);background:var(--surface);min-height:44px;color:var(--ink-2);cursor:pointer;border-radius:12px;padding:0 14px;font-weight:700}.settings-link:disabled{color:var(--subtle);cursor:default}.settings-danger{border-color:var(--line);color:var(--brand-ink)}.settings-confirm{border:1px solid var(--line);background:var(--brand-tint);border-radius:12px;gap:8px;padding:12px;display:grid}.settings-confirm small{color:var(--muted);font-size:var(--fs-xs)}.settings-version{color:var(--subtle);font-size:var(--fs-xs);text-align:center;margin:0}.training-scene{position:relative}.training-anim{color:#fff;background:#0f282a73;place-content:center;justify-items:center;gap:6px;display:grid;position:absolute;inset:0}.training-anim span{font-size:38px;animation:.4s ease-in-out infinite alternate train-bounce}.training-anim.anim-ollie span{animation-name:train-pop}.training-anim.anim-film span{animation-name:train-flash}@keyframes train-bounce{to{transform:translate(14px)}}@keyframes train-pop{to{transform:translateY(-16px)}}@keyframes train-flash{to{opacity:.35;transform:scale(1.2)}}.train-result{border:1px solid var(--line);background:var(--teal-tint);border-radius:12px;gap:8px;margin:10px 0;padding:12px;display:grid}.train-result>div:first-child{gap:2px;display:grid}.train-result span{color:var(--ink-2);font-size:var(--fs-xs)}.train-xp{gap:4px;display:grid}.train-xp small{font-size:var(--fs-xs);color:var(--muted)}.train-xp i{background:var(--teal-tint);border-radius:6px;height:8px;display:block;overflow:hidden}.train-xp i span{background:var(--brand);height:100%;transition:width .4s;display:block}.level-up-badge{background:var(--line);color:var(--ink);font-style:normal;font-size:var(--fs-xs);border-radius:999px;justify-self:start;padding:4px 10px;font-weight:800;animation:.5s ease-in-out 3 alternate train-flash}.evolve-badge{border:2px solid var(--ink);background:var(--gold);color:var(--ink);font-style:normal;font-size:var(--fs-sm);border-radius:999px;justify-self:start;padding:5px 11px;font-weight:800;animation:.5s ease-in-out 3 alternate train-flash}.attempt-chips{flex-wrap:wrap;gap:6px;display:flex}.attempt-chip{background:var(--surface-raised);color:var(--ink-2);font-size:var(--fs-xs);border-radius:999px;padding:3px 9px;font-weight:700}.attempt-chip.is-perfect,.attempt-chip.is-success{background:var(--gold);color:var(--ink)}.attempt-chip.is-miss,.attempt-chip.is-fail{background:var(--danger-tint);color:var(--danger-ink)}.ollie-track{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-raised);gap:6px;margin:10px 0 2px;padding:11px 12px;display:grid}.ollie-track>div{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.ollie-track b{font-size:var(--fs-lg)}.ollie-track small{color:var(--muted);font-size:var(--fs-xs)}.ollie-track i{background:var(--teal-tint);border-radius:6px;height:8px;display:block;overflow:hidden}.ollie-track i span{background:var(--teal);height:100%;transition:width .4s;display:block}.attempt-choices{gap:10px;display:grid}.attempt-choices .training-card{min-height:78px}.attempt-choices .training-card.is-challenge{border-color:var(--brand);background:var(--brand-tint)}.clip-vault{gap:8px;margin:10px 0 4px;display:grid}.clip-vault h2{font-size:var(--fs-xl);justify-content:space-between;align-items:baseline;margin:6px 0 0;display:flex}.clip-vault h2 small{color:var(--muted);font-size:var(--fs-xs);font-weight:600}.clip-card{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-1);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.clip-score{border:2px solid var(--ink);border-radius:var(--r-sm);background:var(--surface-raised);width:48px;height:48px;font-family:var(--font-display);font-size:var(--fs-2xl);place-items:center;font-weight:800;line-height:1;display:grid}.clip-card.grade-good .clip-score{background:var(--teal-tint)}.clip-card.grade-highlight .clip-score{background:var(--brand-tint)}.clip-card.grade-legend{border-color:var(--gold)}.clip-card.grade-legend .clip-score{background:var(--gold)}.clip-copy{gap:2px;min-width:0;display:grid}.clip-copy b{font-size:var(--fs-lg)}.clip-copy small{color:var(--muted);font-size:var(--fs-xs)}.clip-actions{gap:4px;display:grid}.clip-actions button{border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface-raised);min-height:34px;font-size:var(--fs-sm);cursor:pointer;padding:0 12px;font-weight:700}.clip-actions button.is-upload{border-color:var(--ink);background:var(--brand);color:var(--on-brand)}.clip-actions button.is-discard{border-color:var(--line);color:var(--muted);background:0 0;font-weight:600}.ride-overlay{z-index:60}.ride-skip{background:var(--surface);width:min(92vw,420px);color:var(--ink);text-align:center;cursor:pointer;border:0;border-radius:16px;gap:6px;padding:0 0 14px;display:grid;position:relative;overflow:hidden}.ride-skip b{font-size:var(--fs-xl)}.ride-skip small{color:var(--muted);font-size:var(--fs-xs)}.ride-track{background:var(--teal-tint);border-radius:6px;height:6px;margin:0 14px;display:block;overflow:hidden}.ride-track i{background:var(--brand);transform-origin:0;width:100%;height:100%;animation:1.5s linear forwards ride-run;display:block}@keyframes ride-run{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.result-actions{grid-template-columns:1fr 2fr;gap:8px;display:grid}.secondary-action{border:1px solid var(--line-strong);background:var(--surface);min-height:48px;color:var(--ink-2);cursor:pointer;border-radius:14px;font-weight:700}.ending-sheet p{margin:8px 0 16px;line-height:1.6}.shop-compare{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin:10px 0;display:grid}.shop-compare>div{border:1px solid var(--line);background:var(--surface-2);border-radius:12px;gap:3px;padding:10px;display:grid}.shop-compare>div.next{border-color:var(--brand);background:var(--brand-tint)}.shop-compare small,.shop-compare span{color:var(--muted);font-size:var(--fs-xs)}.shop-compare-price{font-size:var(--fs-md);justify-content:space-between;align-items:center;margin:10px 0 14px;display:flex}.retirement{padding:0 16px 28px}.retire-heading{font-size:var(--fs-xl);margin:18px 0 8px}.retire-total{color:var(--muted);font-size:var(--fs-xs)}.lp-tiers{gap:6px;margin:0;padding:0;list-style:none;display:grid}.lp-tiers li{border:1px solid var(--line);background:var(--surface);font-size:var(--fs-xs);color:var(--subtle);border-radius:10px;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;padding:8px 10px;display:grid}.lp-tiers li.reached{border-color:var(--line);background:var(--teal-tint);color:var(--ink)}.lp-tiers i{font-style:normal;font-weight:700}.retire-bonus span{display:block}.hall-of-fame{gap:8px;margin-top:18px;display:grid}.hall-effects{flex-wrap:wrap;gap:6px;display:flex}.hall-effects span,.hall-trophies span{background:var(--surface-2);font-size:var(--fs-xs);border-radius:8px;padding:4px 8px}.hall-list,.hall-trophies{gap:6px;display:grid}.hall-row{border:1px solid var(--line);border-radius:10px;gap:2px;padding:8px 10px;display:grid}.hall-row span{color:var(--muted);font-size:var(--fs-xs)}.achievement-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.achievement-list li{border:1px solid var(--line);font-size:var(--fs-xs);color:var(--subtle);border-radius:10px;gap:2px;padding:8px 10px;display:grid}.achievement-list li.done{border-color:var(--line);background:var(--teal-tint);color:var(--ink)}.achievement-list small{color:var(--muted)}.help-button,.close-button,.sheet-close,.nav-item,.text-button{min-width:44px;min-height:44px}.mini-footer button,.section-title button,.goal-card button{min-height:44px}.creator-style-hint{color:var(--muted);font-size:var(--fs-xs);margin:-4px 0 8px;line-height:1.45}.play-style-options{gap:9px;display:grid}.play-style-card{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);text-align:left;cursor:pointer;border-radius:14px;gap:8px;padding:11px;display:grid}.play-style-card.selected{border:2px solid var(--brand);background:#f0f8f2;padding:10px;box-shadow:0 0 0 2px #12857f14}.play-style-top{align-items:center;gap:7px;display:flex}.play-style-top>i{background:var(--surface-2);width:28px;height:28px;color:var(--brand-ink);border-radius:9px;place-items:center;font-size:17px;font-style:normal;display:grid}.play-style-top>b{font-size:var(--fs-md);flex:1}.play-style-top>small{color:var(--brand-ink);font-size:var(--fs-2xs);font-weight:700}.play-style-desc{color:var(--ink-2);font-size:var(--fs-xs);line-height:1.4}.play-style-tags{flex-wrap:wrap;gap:5px;display:flex}.play-style-tags i{background:var(--brand-tint);color:var(--brand-ink);font-size:var(--fs-2xs);border-radius:999px;padding:3px 7px;font-style:normal;font-weight:700}.play-style-stats{grid-template-columns:1fr 1fr;gap:5px 12px;display:grid}.play-style-stat{grid-template-columns:1fr 24px;align-items:center;gap:4px 7px;display:grid}.play-style-stat small{color:var(--muted);font-size:var(--fs-2xs)}.play-style-stat strong{text-align:right;font-family:var(--font-mono);font-size:var(--fs-xs);grid-area:1/2/span 2}.play-style-stat>i{background:#e7e7dc;border-radius:5px;height:5px;overflow:hidden}.play-style-stat>i b{border-radius:inherit;background:var(--brand);height:100%;display:block}.play-style-passive{background:var(--brand-tint);color:var(--brand-ink);font-size:var(--fs-xs);border-radius:8px;padding:6px 8px;font-weight:700}.play-style-select{border:1px solid var(--line-strong);min-height:40px;color:var(--ink-2);font-size:var(--fs-xs);border-radius:9px;place-items:center;font-weight:700;display:grid}.play-style-card.selected .play-style-select{border-color:var(--brand);background:var(--brand);color:#fff}body{background:var(--bg)}@media (width>=600px){body{background:var(--surface-sunken)}}.app-shell{background:var(--bg);box-shadow:0 0 0 1px var(--line), var(--shadow-2)}.topbar{background:var(--bg)}.brand-star,.creator-brand>span{color:var(--on-brand);background:var(--brand);box-shadow:none}.primary-button{background:var(--brand);color:var(--on-brand);box-shadow:var(--shadow-cta)}.primary-button b{color:var(--on-brand);background:var(--surface-raised)}.primary-button:active{box-shadow:0 1px 0 var(--ink)}.primary-button:disabled{opacity:.45;filter:none;box-shadow:none;cursor:not-allowed}.empty-feed>button{color:var(--on-brand);background:var(--brand)}.resource-icon{color:var(--on-resource)}.coin-icon{background:var(--coin)}.fan-icon{background:var(--fans)}.rep-icon{background:var(--fame)}.energy-icon{background:var(--energy)}.skill-track,.season-progress>i{background:var(--surface-sunken)}.skill-track span,.season-progress>i>span,.train-xp i span,.ride-track i{background:var(--teal)}.ride-track.bold i{background:var(--brand)}.competition-option.selected,.shop-item.equipped,.creator-age-options button.selected,.creator-options button.selected,.stance-options button.selected{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink);background:var(--brand-tint)}.shop-item.equipped{border-color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal);background:var(--surface)}.route-tabs button.active{border-color:var(--ink);color:var(--ink);background:var(--brand-tint)}.strategy-card{border-width:2px;border-color:var(--line-strong)}.strategy-card strong{color:var(--teal-ink);font-family:var(--font-display);font-size:24px;font-weight:800}.strategy-card.bold strong{color:var(--brand-ink)}.strategy-card.safe .strategy-mark{color:var(--teal-ink);background:var(--teal-tint)}.strategy-card.bold .strategy-mark{color:var(--brand-ink);background:var(--brand-tint)}.result-badge{color:var(--teal-ink);background:var(--teal-tint);border-color:#0000}.result-badge.is-miss{color:var(--danger-ink);background:var(--danger-tint);border-color:#0000}.result-sheet h2{font-family:var(--font-display);font-size:28px}.reward-line b{color:var(--ink)}.modal-backdrop{background:var(--scrim)}.bottom-sheet,.confirm-sheet,.result-sheet{background:var(--surface-raised)}.toast{background:var(--ink);color:var(--bg)}button:focus-visible,input:focus-visible,select:focus-visible{box-shadow:var(--focus)}.primary-button:focus-visible{box-shadow:var(--shadow-cta), var(--focus)}.training-card:disabled,.strategy-card:disabled,.event-choice:disabled{opacity:.45}.strategy-card.safe,.strategy-card.bold{border-color:var(--line-strong)}.retirement-shell{color:#f4f3f8;box-shadow:none;background:#1d1c22}.retirement-story-header{z-index:2;padding:calc(13px + var(--safe-top)) 20px 0;background:#1d1c22;flex:none}.retirement-progress{grid-template-columns:repeat(6,1fr);gap:6px;display:grid}.retirement-progress span{background:#39383f;border-radius:5px;height:4px}.retirement-progress span.is-filled{background:#f4f3f8}.retirement-story-meta{color:#9998a3;justify-content:space-between;align-items:center;min-height:47px;display:flex}.retirement-story-meta small{letter-spacing:.02em;font-size:12px;font-weight:650}.retirement-story-meta button{color:#aaa9b2;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:40px;height:40px;font-size:27px;font-weight:300;display:grid}.retirement-story-body{overscroll-behavior:contain;scrollbar-width:none;flex:auto;min-height:0;overflow:auto}.retirement-story-body::-webkit-scrollbar{display:none}.retirement-page{flex-direction:column;min-height:100%;padding:24px 22px 26px;animation:.2s ease-out retirement-enter;display:flex}@keyframes retirement-enter{0%{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.retirement-page .eyebrow{color:#9a99a5;letter-spacing:1.2px;font-size:11px}.retirement-cover-period{color:#aaa9b3;margin:32px 0 14px;font-size:clamp(16px,4vw,20px);font-weight:650}.retirement-cover-period i{color:#797883;padding:0 5px;font-style:normal}.retirement-page h1{color:#f5f4f8}.retirement-cover h1{letter-spacing:-.055em;margin:0;font-size:clamp(34px,9vw,42px);font-weight:850;line-height:1.2}.retirement-lede{color:#b1b0ba;margin:16px 0 0;font-size:13px;line-height:1.55}.retirement-cover-art{flex:1 0 160px;place-items:center;min-height:160px;margin:8px 0 16px;display:grid;position:relative;overflow:hidden}.cover-orbit{border:1px solid #4b4a54;border-radius:50%;width:180px;height:180px;display:block;position:absolute;transform:rotate(-20deg)scaleY(.35)}.orbit-one{border-color:#34333b;width:250px;height:250px;transform:rotate(27deg)scaleY(.3)}.orbit-two{border-color:#55545e;width:180px;height:180px;transform:rotate(-20deg)scaleY(.3)}.cover-board{background:#397bf1;border:3px solid #f0eff4;border-radius:15px 10px;width:176px;height:22px;position:absolute;top:47%;left:calc(50% - 88px);transform:rotate(-16deg);box-shadow:0 21px 0 -8px #a7a6b1,0 25px 0 -8px #4b4a54}.cover-board:before,.cover-board:after{content:"";background:#f4f3f8;border-radius:50%;width:8px;height:8px;position:absolute;top:14px}.cover-board:before{left:26px}.cover-board:after{right:26px}.retirement-cover-art>b{color:#4a4953;font-family:var(--font-display);letter-spacing:-.08em;text-align:right;font-size:clamp(42px,11vw,60px);font-weight:900;line-height:.78;position:absolute;bottom:3px;right:7px}.retirement-news-headline{background:#242329;border:1px solid #323139;border-radius:17px;gap:8px;padding:15px 16px;display:grid}.retirement-news-headline small{color:#9b9aa5;font-size:12px}.retirement-news-headline strong{color:#f3f2f7;font-size:15px;line-height:1.45}.retirement-page-title{letter-spacing:-.055em;margin:26px 0 0;font-size:clamp(31px,8vw,38px);font-weight:850;line-height:1.24}.retirement-page-title em{color:#468bff;font-style:normal}.retirement-stat-list{gap:0;margin-top:35px;display:grid}.retirement-stat-list>div{border-bottom:1px solid #34333b;justify-content:space-between;align-items:center;gap:12px;min-height:58px;display:flex}.retirement-stat-list>div span{color:#a1a0aa;font-size:14px}.retirement-stat-list>div b{color:#f0eff5;text-align:right;font-size:16px}.retirement-footnote{color:#aaa9b4;margin:16px 0 0;font-size:12px;line-height:1.55}.retirement-page-intro{color:#a5a4af;margin:10px 0 17px;font-size:13px;line-height:1.5}.retirement-trophies{gap:8px;margin-top:8px;display:grid}.retirement-trophy{background:#25242b;border:1px solid #34333b;border-radius:14px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px;display:grid}.trophy-medal{background:#36333a;border-radius:12px;place-items:center;width:38px;height:38px;font-size:20px;display:grid}.retirement-trophy>div{gap:3px;min-width:0;display:grid}.retirement-trophy>div b{color:#f0eff4;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.retirement-trophy>div small{color:#a09faa;font-size:11px}.retirement-trophy>strong{color:#d3d2da;white-space:nowrap;font-size:13px}.retirement-empty-trophy{background:#25242b;border:1px dashed #494851;border-radius:16px;justify-items:start;gap:8px;padding:20px;display:grid}.retirement-empty-trophy>span{font-size:26px}.retirement-empty-trophy b{font-size:15px}.retirement-empty-trophy small{color:#aaa9b3;font-size:12px;line-height:1.55}.retirement-article-card{background:#28272e;border-radius:18px;gap:11px;margin:22px 0 20px;padding:16px;display:grid}.retirement-article-card>small{color:#aaa9b3;align-items:center;gap:7px;font-size:12px;display:flex}.retirement-article-card>small span{color:#c8c7d0;background:#393840;border-radius:7px;place-items:center;width:24px;height:24px;font-size:13px;font-weight:800;display:grid}.retirement-article-card>b{color:#f1f0f5;font-size:15px;line-height:1.5}.retirement-reactions-label{justify-content:space-between;align-items:center;margin-bottom:5px;display:flex}.retirement-reactions-label>b{font-size:15px}.retirement-reactions-label>span{color:#83b2ff;background:#20324f;border-radius:8px;padding:4px 8px;font-size:10px;font-weight:750}.retirement-reaction-list{display:grid}.retirement-reaction{border-bottom:1px solid #34333b;grid-template-columns:38px minmax(0,1fr);gap:10px;padding:14px 0;display:grid}.reaction-avatar{color:#d3dcff;background:#35425e;border-radius:50%;place-items:center;width:38px;height:38px;font-size:16px;font-weight:800;display:grid}.tone-skater{color:#96ebc2;background:#19453a}.tone-crew{color:#ff9aa7;background:#4b2933}.reaction-copy{min-width:0}.reaction-author{align-items:center;gap:7px;display:flex}.reaction-author b{color:#f0eff5;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.reaction-author small{color:#4e95ff;font-size:10px;font-weight:700}.reaction-copy p{color:#e1e0e7;margin:7px 0 10px;font-size:13px;line-height:1.5}.reaction-foot{color:#898894;justify-content:space-between;gap:8px;font-size:11px;display:flex}.reaction-foot b{white-space:nowrap;font-size:12px;font-weight:500}.retirement-disclaimer{color:#888791;margin:13px 0 0;font-size:10px;line-height:1.5}.skater-match-card{background:#25242b;border:1px solid #3a3941;border-radius:19px;gap:10px;margin-top:23px;padding:19px;display:grid}.skater-match-card>small{color:#aaa9b3;font-size:12px}.skater-match-card h2{color:#f6f5fa;letter-spacing:-.045em;margin:0;font-size:32px;font-weight:850}.skater-match-score{color:#ff6373;align-items:baseline;gap:8px;font-size:17px;display:flex}.skater-match-score small{color:#a6a5b0;font-size:12px}.skater-match-focus{color:#d5d4dd;margin:5px 0 -4px;font-size:15px;font-weight:750}.skater-match-card p:not(.skater-match-focus){color:#aaa9b4;margin:0;font-size:13px;line-height:1.6}.skater-match-tags{flex-wrap:wrap;gap:6px;display:flex}.skater-match-tags span{color:#81b1ff;background:#20324f;border-radius:9px;padding:6px 9px;font-size:11px;font-weight:700}.skater-match-sources{flex-wrap:wrap;gap:7px 12px;display:flex}.skater-match-sources a,.skater-runner-ups a{color:#8db9ff;text-underline-offset:3px;font-size:12px}.skater-runner-ups{gap:0;margin-top:18px;display:grid}.skater-runner-ups>b{color:#aaa9b4;margin-bottom:5px;font-size:12px}.skater-runner-ups>div{border-bottom:1px solid #34333b;justify-content:space-between;gap:8px;padding:10px 0;font-size:12px;display:flex}.skater-runner-ups>div a{color:#e1e0e7}.skater-runner-ups small{color:#a2a1ab}.retirement-final-stats{gap:0;margin-top:20px;display:grid}.retirement-final-stats>div{border-bottom:1px solid #34333b;grid-template-columns:1fr auto;align-items:center;gap:12px;min-height:55px;display:grid}.retirement-final-stats small{color:#aaa9b4;font-size:12px}.retirement-final-stats b{color:#efedf5;text-align:right;font-size:13px}.retirement-lp-block{gap:7px;margin-top:14px;display:grid}.retirement-lp-block>b{color:#d7d6de;font-size:12px}.retirement-lp-tiers{gap:5px;margin:0;padding:0;list-style:none;display:grid}.retirement-lp-tiers li{color:#a5a4ae;background:#25242b;border:1px solid #38373f;border-radius:9px;grid-template-columns:27px 1fr auto;align-items:center;gap:7px;min-height:34px;padding:5px 9px;font-size:11px;display:grid}.retirement-lp-tiers li.reached{color:#e2e8f3;background:#233147;border-color:#3c5d8c}.retirement-lp-tiers li>span{color:#9695a0;font-family:var(--font-display);font-size:10px}.retirement-lp-tiers li>i{color:#9ebfff;white-space:nowrap;font-size:10px;font-style:normal;font-weight:700}.retirement-legacy-note,.retirement-achievements{background:#202c40;border:1px solid #344c72;border-radius:13px;gap:7px;margin-top:14px;padding:13px 14px;display:grid}.retirement-legacy-note b,.retirement-achievements b{color:#93bbff;font-size:13px}.retirement-legacy-note span,.retirement-achievements span{color:#c5cad5;font-size:11px;line-height:1.55}.retirement-final-note{color:#9b9aa5;margin:14px 0 0;font-size:12px}.retirement-story-footer{z-index:2;padding:10px 20px calc(14px + var(--safe-bottom));background:linear-gradient(#1d1c2200,#1d1c22 24%);flex:none;align-items:center;gap:10px;display:flex}.retirement-back{color:#d0cfd8;cursor:pointer;background:#29282f;border:1px solid #4b4a53;border-radius:13px;flex:none;min-width:58px;min-height:50px;font-size:13px;font-weight:700}.retirement-next{color:#fff;background:var(--teal-ink);min-height:58px;box-shadow:none;border-radius:16px;justify-content:center;padding:0 18px;font-size:16px;position:relative}.retirement-next b{color:#fff;background:0 0;position:absolute;right:17px}.retirement-next:active{box-shadow:none;transform:scale(.99)}@media (width>=600px){.retirement-shell{border:1px solid #34333b;border-radius:25px;height:min(100dvh,980px)}}.practice-slots{gap:8px;margin:10px 0 4px;display:grid}.practice-slots>h2{margin:6px 0 0}.practice-slot-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.practice-slot{border:1px solid var(--line);background:var(--surface);border-radius:13px;gap:6px;padding:10px;display:grid}.practice-slot.is-empty{min-height:92px;color:var(--ink-muted,inherit);cursor:pointer;background:0 0;border-style:dashed;place-items:center}.practice-slot-copy{gap:2px;display:grid}.practice-slot-copy small,.trick-copy small,.trick-progress small,.trick-hint,.trick-lock{color:var(--ink-muted,var(--ink))}.practice-slot-actions{gap:6px;display:flex}.practice-slot-actions button,.trickbook-open,.trick-assign button,.trick-back{border:1px solid var(--brand);background:var(--brand);color:#fff;cursor:pointer;border-radius:10px;min-height:34px;padding:0 10px;font-weight:700}.practice-slot-actions button.is-ghost{border-color:var(--line);background:var(--surface);color:var(--ink)}.practice-slot-actions button:disabled{opacity:.45;cursor:not-allowed}.trickbook-open{background:var(--surface);color:var(--brand-ink);justify-self:stretch}.practice-slot i,.trick-progress i{background:var(--surface-sunken);border-radius:3px;height:6px;display:block;overflow:hidden}.practice-slot i span,.trick-progress i span{background:var(--brand);height:100%;transition:width .3s;display:block}.trick-path,.trick-tabs,.trick-status-chips,.trick-stances>div{flex-wrap:wrap;gap:6px;display:flex}.trick-tabs{flex-wrap:nowrap;padding-bottom:4px;overflow-x:auto}.trick-path button,.trick-tabs button,.trick-status-chips button,.trick-stance{border:1px solid var(--line);background:var(--surface);white-space:nowrap;cursor:pointer;border-radius:999px;min-height:30px;padding:0 10px}.trick-path button.is-on,.trick-tabs button.is-on,.trick-status-chips button.is-on,.trick-stance.is-on{border-color:var(--brand);background:var(--brand-tint);color:var(--brand-ink)}.trick-stance.is-locked{opacity:.45}.trick-chip.is-rusty{color:var(--warn,#b4690e)}.trick-rust-note{font-size:var(--fs-sm,12px);color:var(--muted,inherit);margin:8px 0 0}.trick-rust-note button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:999px;min-height:24px;margin-left:6px;padding:0 10px}.trick-list{gap:6px;max-height:52vh;margin-top:6px;display:grid;overflow-y:auto}.trick-card{border:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;border-radius:12px;align-items:center;gap:8px;width:100%;padding:9px 10px;display:flex}.trick-card.status-locked{opacity:.6}.trick-card.is-dimmed{opacity:.55}.trick-copy{flex:1;gap:2px;min-width:0;display:grid}.trick-tier{background:var(--surface-sunken);border-radius:9px;flex:0 0 30px;place-items:center;width:30px;height:30px;font-weight:700;display:grid}.trick-tier.tier-5,.trick-tier.tier-6{background:var(--brand-tint)}.trick-tier.tier-7,.trick-tier.tier-8,.trick-tier.tier-9,.trick-tier.tier-10{background:var(--brand);color:#fff}.trick-chip{font-size:var(--fs-sm,12px);white-space:nowrap;flex:none}.trick-detail-meta{flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0;display:flex}.trick-progress{gap:6px;margin:10px 0;display:grid}.trick-stances{gap:6px;margin:8px 0;display:grid}.trick-assign{gap:6px;margin-top:10px;display:grid}.trick-assign button{background:var(--surface);color:var(--brand-ink)}.trick-result.is-first-landing{border-color:var(--brand);background:var(--brand-tint)}.trick-result em{font-style:normal}.trick-back{background:var(--surface);color:var(--brand-ink);margin-bottom:6px}.trick-hint{font-size:var(--fs-sm,13px);margin:6px 0}.gear-status{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);gap:7px;margin-bottom:11px;padding:11px 13px;display:grid}.gear-status h3{font-size:var(--fs-md);margin:0}.gear-row{font-size:var(--fs-sm);grid-template-columns:34px 1fr;align-items:center;gap:8px;display:grid}.gear-row>span{color:var(--muted)}.gear-note{color:var(--muted);font-size:var(--fs-xs);margin:2px 0 0;line-height:1.5}.gear-condition{gap:3px;min-width:0;display:grid}.gear-condition>i{background:var(--surface-sunken);border-radius:6px;height:6px;display:block;overflow:hidden}.gear-condition>i>span{border-radius:inherit;background:var(--teal);height:100%;display:block}.gear-condition.warn>i>span{background:var(--coin)}.gear-condition.bad>i>span,.gear-condition.broken>i>span{background:var(--danger)}.gear-condition>small{color:var(--ink-2);font-size:var(--fs-xs)}.gear-instance{border-top:1px dashed var(--line);font-size:var(--fs-xs);grid-template-columns:auto 1fr auto auto;align-items:center;gap:7px;margin-top:5px;padding-top:6px;display:grid}.gear-instance em{color:var(--teal-ink);font-style:normal}.gear-instance button{border:1px solid var(--line);min-height:32px;color:var(--teal-ink);background:var(--teal-tint);font-size:var(--fs-xs);cursor:pointer;border-radius:8px;padding:3px 9px}.gear-instance button:disabled{color:var(--muted);background:var(--surface);cursor:not-allowed}.gear-incident p{margin:8px 0 14px;line-height:1.6}.spot-bar{gap:6px;margin:10px 0;display:grid}.spot-bar-main{border:1px solid var(--line);border-radius:var(--r-md);width:100%;min-height:48px;color:var(--ink-2);background:var(--surface);text-align:left;cursor:pointer;align-items:center;gap:10px;padding:8px 12px;display:flex}.spot-weather{font-size:var(--fs-sm);white-space:nowrap;font-weight:700}.spot-name{flex:1;gap:2px;min-width:0;display:grid}.spot-name small,.spot-forecast{color:var(--muted);font-size:var(--fs-xs)}.spot-name b{font-size:var(--fs-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.spot-forecast{white-space:nowrap}.spot-note{color:var(--muted);font-size:var(--fs-xs);padding:0 4px;line-height:1.5}.spot-note.is-kick{color:var(--ink-2)}.spot-suggest{border:1px solid var(--brand-tint);border-radius:var(--r-md);min-height:40px;color:var(--brand-ink);background:var(--brand-tint);font-size:var(--fs-xs);text-align:left;cursor:pointer;padding:8px 12px;font-weight:700}.spot-list{gap:8px;max-height:52vh;margin:10px 0;display:grid;overflow-y:auto}.spot-row{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);gap:6px;padding:10px 12px;display:grid}.spot-row.is-here{border-color:var(--brand-tint);background:var(--brand-tint)}.spot-row.is-locked{opacity:.6}.spot-row-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.spot-row-head small,.spot-row-note,.spot-row-meta{color:var(--muted);font-size:var(--fs-xs);line-height:1.5}.spot-chips{flex-wrap:wrap;gap:4px;display:flex}.spot-chips span{border:1px solid var(--line);color:var(--ink-2);font-size:var(--fs-xs);border-radius:999px;padding:2px 7px}.spot-chips .is-size{color:var(--brand-ink);background:var(--brand-tint)}.spot-row>button{border:1px solid var(--line);min-height:40px;color:var(--teal-ink);background:var(--surface);font-size:var(--fs-xs);cursor:pointer;border-radius:9px;justify-self:end;padding:6px 14px;font-weight:700}.spot-row>button:disabled{color:var(--muted);cursor:default}.phase-card{border:1px solid var(--line);background:var(--surface-sunken);color:var(--muted);font-size:var(--fs-2xs);border-radius:12px;gap:3px;margin:8px 0;padding:9px 11px;line-height:1.5;display:grid}.phase-card b{color:var(--teal-ink);font-size:var(--fs-xs)}.phase-card small{color:var(--brand-ink)}.phase-card button{color:var(--ink-2);font-size:var(--fs-2xs);background:0 0;border:0;justify-self:start;padding:4px 0 0;font-weight:700}.rival-field{border:1px solid var(--line);background:var(--surface-sunken);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin:8px 0;padding:9px 11px;display:flex}.rival-field div{gap:2px;min-width:0;display:grid}.rival-field b{font-size:var(--fs-xs)}.rival-field small{color:var(--muted);font-size:var(--fs-2xs);line-height:1.5}.rival-field button{color:var(--ink-2);font-size:var(--fs-2xs);background:0 0;border:0;flex:none;font-weight:700}.rival-row{border-top:1px solid var(--line);align-items:center;gap:10px;padding:8px 0;display:flex}.rival-row.is-retired{opacity:.6}.rival-avatar{background:var(--surface-sunken);border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-size:16px;display:grid}.rival-copy{flex:1;gap:2px;min-width:0;display:grid}.rival-copy b{font-size:var(--fs-xs)}.rival-copy small,.rival-record small{color:var(--muted);font-size:var(--fs-2xs)}.rival-record{text-align:right;gap:2px;display:grid}.rival-record b{color:var(--ink-2);font-size:var(--fs-xs)}.duel-list{gap:4px;margin:10px 0;display:grid}.duel-row{border:1px solid var(--line);font-size:var(--fs-xs);border-radius:10px;grid-template-columns:1fr auto;gap:2px 8px;padding:7px 10px;display:grid}.duel-row small{color:var(--muted);font-size:var(--fs-2xs);grid-column:1/-1}.duel-row.is-win span{color:var(--teal-ink);font-weight:700}.duel-row.is-loss span{color:var(--brand-ink);font-weight:700}.duel-line{color:var(--teal-ink);font-size:var(--fs-2xs);margin-top:2px;display:block}.line-tools{gap:6px;margin:6px 0;display:flex}.line-tools button,.line-queue,.line-stance,.line-clear{border:1px solid var(--line);background:var(--surface);min-height:32px;color:var(--ink);cursor:pointer;border-radius:999px;padding:0 10px;font-weight:700}.line-tools button.is-on,.line-option button.is-on{border-color:var(--brand);background:var(--brand-tint);color:var(--brand-ink)}.line-sections{gap:6px;max-height:46vh;display:grid;overflow-y:auto}.line-section{border:1px solid var(--line);background:var(--surface);border-radius:12px}.line-section-head{text-align:left;cursor:pointer;background:0 0;border:0;flex-wrap:wrap;align-items:center;gap:8px;width:100%;padding:9px 10px;display:flex}.line-step{background:var(--ink);width:22px;height:22px;color:var(--surface);font-size:var(--fs-xs);border-radius:50%;place-items:center;font-weight:800;display:grid}.line-obstacle,.line-pick{gap:1px;min-width:0;display:grid}.line-obstacle{min-width:78px}.line-pick{flex:1}.line-obstacle small,.line-pick small{color:var(--muted);font-size:var(--fs-xs)}.line-warn{background:var(--danger-tint);color:var(--danger-ink);font-size:var(--fs-xs);border-radius:999px;padding:2px 7px;font-style:normal;font-weight:700}.line-queue{border-color:var(--brand);min-height:28px;color:var(--brand-ink);margin:0 10px 8px}.line-picker{gap:4px;padding:0 10px 10px;display:grid}.line-option{flex-wrap:wrap;gap:4px;display:flex}.line-option>button:first-child{border:1px solid var(--line);background:var(--surface-raised);text-align:left;cursor:pointer;border-radius:10px;flex:1;gap:1px;min-width:140px;padding:6px 10px;display:grid}.line-option small{color:var(--muted);font-size:var(--fs-xs)}.line-stance.is-on{border-color:var(--teal);background:var(--teal-tint);color:var(--teal-ink)}.line-best{gap:4px;margin:8px 0;font-weight:700;display:grid}.line-best select{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--ink);border-radius:10px}.line-summary{grid-template-columns:repeat(4,1fr);gap:6px;margin:10px 0 4px;display:grid}.line-summary div{background:var(--surface-sunken);text-align:center;border-radius:10px;gap:2px;padding:8px;display:grid}.line-summary span{color:var(--muted);font-size:var(--fs-xs)}.line-timeline{text-align:left;gap:8px;margin:10px 0;display:grid}.line-track{gap:4px;margin:0;padding:0;list-style:none;display:grid}.line-track li{border:1px solid var(--line);background:var(--surface);border-radius:10px;grid-template-columns:26px 1fr;column-gap:8px;padding:6px 8px;display:grid}.line-track li .line-mark{text-align:center;grid-row:span 2;align-self:center;font-weight:800}.line-track li small{color:var(--muted);font-size:var(--fs-xs)}.line-track li.is-perfect{border-color:var(--gold)}.line-track li.is-clean{border-color:var(--teal)}.line-track li.is-fail,.line-track li.is-break{border-color:var(--danger);background:var(--danger-tint)}.line-track li.is-skipped{opacity:.55}.line-chip{background:var(--brand-tint);color:var(--brand-ink);font-size:var(--fs-sm);border-radius:10px;padding:6px 10px;font-weight:700}.line-criteria{flex-wrap:wrap;gap:6px;display:flex}.line-criteria div{background:var(--surface-sunken);font-size:var(--fs-sm);border-radius:999px;gap:6px;padding:4px 9px;display:flex}.line-criteria .is-minus{color:var(--danger-ink)}.line-judges,.line-attempts{font-size:var(--fs-sm);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.line-judges b,.line-attempts b{background:var(--surface-sunken);text-align:center;border-radius:8px;min-width:28px;padding:3px 6px}.line-attempts b.is-hit{background:var(--teal-tint);color:var(--teal-ink)}.line-attempts b.is-miss{background:var(--danger-tint);color:var(--danger-ink)}.home-skater-summary{border:1px solid var(--line);background:var(--ink);min-height:154px;margin:1px 0 12px;position:relative;overflow:hidden}.home-skater-summary>.skate-scene{object-fit:cover;object-position:center 58%;width:100%;height:100%;position:absolute;inset:0}.home-skater-shade{background:linear-gradient(90deg,#17151dd9 0%,#17151d9c 48%,#17151d21 100%),linear-gradient(#0000 28%,#17151d73);position:absolute;inset:0}.home-skater-copy{color:#fff;align-content:end;justify-items:start;gap:5px;min-height:154px;padding:11px 13px;display:grid;position:relative}.home-skater-copy .eyebrow{color:#fff;text-shadow:0 1px 4px #000}.home-skater-copy h1{color:#fff;overflow-wrap:anywhere;text-shadow:0 1px 4px #000;flex-wrap:wrap;align-items:baseline;gap:7px;margin:0;font-size:clamp(21px,6vw,28px);line-height:1.2;display:flex}.home-skater-copy h1 small{color:#fff;font-size:var(--fs-sm);font-weight:600}.home-skater-meta{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.home-skater-meta span{color:#fff;font-size:var(--fs-xs);background:#17151d9c;border:1px solid #fff8;padding:3px 6px}.home-skater-meta .home-status-warning{color:#fff;background:#713c1d;border-color:#ffdc91}.home-skater-copy>button{color:#fff;min-height:44px;font-size:var(--fs-sm);text-shadow:0 1px 4px #000;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;margin:0 -8px -7px;padding:0 8px;font-weight:700;display:flex}.home-next-action{border:1px solid var(--line);background:var(--surface);gap:7px;margin:0 0 11px;padding:12px;display:grid}.home-next-action .eyebrow{color:var(--brand-ink)}.home-next-action h2{font-size:var(--fs-xl);overflow-wrap:anywhere;margin:0;line-height:1.4}.home-next-action p{color:var(--muted);font-size:var(--fs-sm);overflow-wrap:anywhere;margin:0 0 2px;line-height:1.5}.home-next-action .primary-button{min-height:50px}.home-secondary-link{min-height:44px;color:var(--teal-ink);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 8px;padding:5px 2px;display:grid}.home-secondary-link>span{font-size:var(--fs-sm);font-weight:700}.home-secondary-link small{color:var(--muted);font-size:var(--fs-xs);grid-column:1;line-height:1.4}.home-secondary-link b{font-size:var(--fs-xl);grid-area:1/2/span 2}.home-notifications,.home-today{border:1px solid var(--line);background:var(--surface);gap:7px;margin:11px 0;padding:11px 12px;display:grid}.home-notifications>.eyebrow{margin-bottom:1px}.home-notice-row{border:0;border-top:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:7px;min-width:0;min-height:44px;padding:5px 1px;display:flex}.home-notice-row span{min-width:0;color:var(--ink-2);font-size:var(--fs-sm);overflow-wrap:anywhere}.home-notice-row b{color:var(--teal-ink);font-size:var(--fs-xs);text-align:right}.home-notice-row i{color:var(--muted);font-size:var(--fs-lg);font-style:normal}.home-today .section-title{margin:0}.home-today .section-title h2{font-size:var(--fs-lg);margin:3px 0 0}.home-today .section-title>b{color:var(--teal-ink);font-family:var(--font-display);font-size:var(--fs-lg)}.home-today-note{color:var(--muted);font-size:var(--fs-xs);margin:-2px 0 0;line-height:1.4}.home-daily-goals{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.home-daily-goals button{border:1px solid var(--line);min-width:0;min-height:44px;color:var(--muted);background:var(--surface-raised);font-size:var(--fs-xs);cursor:pointer;justify-content:center;align-items:center;gap:4px;padding:4px 2px;display:flex}.home-daily-goals button.is-done{color:var(--teal-ink);background:var(--teal-tint)}.home-daily-claimed{color:var(--teal-ink);font-size:var(--fs-xs);line-height:1.4}.home-event-row{border:1px solid var(--line);background:var(--brand-tint);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:8px;min-height:58px;padding:7px 8px;display:flex}.home-event-row>span{gap:3px;min-width:0;display:grid}.home-event-row small{color:var(--muted);font-size:var(--fs-2xs)}.home-event-row b{font-size:var(--fs-sm);overflow-wrap:anywhere}.home-event-row strong{color:var(--brand-ink);font-size:var(--fs-xs);flex:none}.home-event-row i{font-size:var(--fs-lg);font-style:normal}.home-event-done{border-top:1px solid var(--line);min-height:44px;font-size:var(--fs-sm);justify-content:space-between;align-items:center;gap:8px;padding:5px 2px;display:flex}.home-event-done b{color:var(--teal-ink);font-size:var(--fs-xs)}.skater-tabs{z-index:2;border-bottom:1px solid var(--line);background:var(--paper);grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:0 -2px 12px;padding:5px 2px;display:grid;position:sticky;top:-11px}.skater-tabs button{border:1px solid var(--line);min-width:0;min-height:44px;color:var(--muted);background:var(--surface);font-size:var(--fs-sm);cursor:pointer;padding:4px;font-weight:700}.skater-tabs button.is-selected{border-color:var(--brand-ink);color:var(--ink);background:var(--brand-tint)}.skater-tabs button:focus-visible,.home-daily-goals button:focus-visible,.home-notice-row:focus-visible,.home-secondary-link:focus-visible{outline:3px solid var(--teal);outline-offset:2px}.skater-panel{gap:11px;min-width:0;display:grid}.skater-panel>*{min-width:0;scroll-margin-top:12px}.skater-profile-card,.skater-data-card,.skater-purchases{border:1px solid var(--line);background:var(--surface);padding:12px}.skater-profile-card{gap:10px;display:grid}.skater-profile-card .eyebrow{color:var(--brand-ink)}.skater-profile-card h2{font-size:var(--fs-xl);overflow-wrap:anywhere;margin:3px 0}.skater-profile-card>div:first-child>b{color:var(--teal-ink);font-size:var(--fs-sm)}.skater-profile-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.skater-profile-facts span{background:var(--surface-raised);min-width:0;color:var(--muted);font-size:var(--fs-xs);justify-content:space-between;gap:4px;padding:6px 7px;display:flex}.skater-profile-facts b{color:var(--ink);text-align:right;overflow-wrap:anywhere}.skater-data-card{gap:10px;display:grid}.skater-data-card>.section-title{margin:0}.skater-data-card>.section-title h2,.skater-purchases h2{font-size:var(--fs-lg);margin:3px 0 0}.skater-data-card>.section-title>b{max-width:52%;color:var(--teal-ink);font-size:var(--fs-xs);text-align:right;overflow-wrap:anywhere}.skater-fact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.skater-fact-grid>div{background:var(--surface-raised);gap:3px;min-width:0;padding:8px;display:grid}.skater-fact-grid small,.skater-note{color:var(--muted);font-size:var(--fs-xs);line-height:1.5}.skater-fact-grid b{font-size:var(--fs-sm);overflow-wrap:anywhere}.skater-note{margin:0}.skater-disclosure{border:1px solid var(--line);background:var(--surface-raised)}.skater-disclosure>summary,.skater-purchases>summary{min-height:48px;color:var(--ink);font-size:var(--fs-sm);cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:7px 9px;font-weight:700;list-style-position:inside;display:flex}.skater-disclosure[open]{padding:0 9px 9px}.skater-disclosure[open]>summary{border-bottom:1px solid var(--line);margin:0 -9px 8px}.skater-link{min-height:44px;color:var(--teal-ink);text-align:left;padding:7px 4px}.skater-retire{border-top:1px solid var(--line);gap:5px;padding-top:9px;display:grid}.skater-retire p{color:var(--muted);font-size:var(--fs-xs);margin:0;line-height:1.5}.skater-retire .secondary-button{min-height:44px;color:var(--danger-ink);justify-content:center}.skater-panel .shop-wallet{margin:0}.skater-purchase-entry{min-height:48px}.skater-gear-status h2,.skater-inventory h2{font-size:var(--fs-lg);margin:0}.skater-equipped-row{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;gap:5px 9px;min-width:0;padding:9px 0;scroll-margin-top:12px;display:grid}.skater-equipped-row>div:first-child{gap:2px;min-width:0;display:grid}.skater-equipped-row>div:first-child small,.skater-inventory-item>div:first-child small{color:var(--muted);font-size:var(--fs-xs)}.skater-equipped-row>div:first-child b,.skater-inventory-item>div:first-child b{overflow-wrap:anywhere;font-size:var(--fs-sm)}.skater-equipped-row .gear-condition{grid-column:1}.gear-state{color:var(--teal-ink);font-size:var(--fs-xs);align-self:center;font-weight:700}.gear-state.is-broken{color:var(--danger-ink)}.gear-bonus-label{color:var(--muted);font-size:var(--fs-xs);align-self:center}.skater-equipped-row>button{border:1px solid var(--line);background:var(--surface-raised);min-width:78px;min-height:44px;font-size:var(--fs-xs);cursor:pointer;grid-area:1/2/span 3;padding:4px 8px}.skater-equipped-row.is-broken{background:var(--danger-tint)}.skater-inventory{gap:8px}.skater-inventory .section-title{margin:0}.skater-inventory-item{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 8px;padding:9px 0;display:grid}.skater-inventory-item>div:first-child{gap:2px;min-width:0;display:grid}.skater-inventory-item .gear-condition{grid-column:1}.skater-inventory-item .gear-state{grid-area:1/2}.skater-gear-actions{flex-wrap:wrap;grid-area:2/2/span 2;justify-content:flex-end;gap:5px;display:flex}.skater-gear-actions button{border:1px solid var(--line);min-height:40px;color:var(--teal-ink);background:var(--teal-tint);font-size:var(--fs-xs);cursor:pointer;padding:5px 8px}.skater-gear-actions button:disabled{color:var(--muted);background:var(--surface-raised);cursor:not-allowed}.skater-empty{justify-items:start;gap:8px;padding:13px 4px;display:grid}.skater-purchases{padding:0}.skater-purchases>summary span:first-child{gap:3px;display:grid}.skater-purchases>summary small{color:var(--muted);font-size:var(--fs-xs);font-weight:400}.skater-purchases[open]{padding:0 10px 10px}.skater-purchases[open]>summary{border-bottom:1px solid var(--line);margin:0 -10px 8px}.skater-purchases .mock-disclaimer{margin:8px 0}.income-summary .section-title>b{color:var(--brand-ink);font-family:var(--font-display);font-size:var(--fs-sm)}.skater-data-card .economy-income-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.skater-data-card .economy-income-grid>div{min-width:0}.skater-data-card .economy-income-grid b{overflow-wrap:anywhere}.skater-data-card .primary-button{min-height:48px}.skater-data-card .sponsor-next{border-top:1px solid var(--line);padding-top:10px}.sponsor-requirements{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin:5px 0;display:grid}.sponsor-requirements>span{background:var(--surface-raised);gap:2px;min-width:0;padding:6px 7px;display:grid}.sponsor-requirements>span b{color:var(--muted);font-size:var(--fs-xs)}.sponsor-requirements>span small{color:var(--muted);font-size:var(--fs-2xs);overflow-wrap:anywhere}.skater-data-card .sponsor-next button{white-space:normal;max-width:100%;min-height:44px}.skater-data-card .economy-product-actions{gap:7px}.skater-data-card .economy-product-actions>button{overflow-wrap:anywhere;min-width:0;min-height:52px}.skater-panel :is(h2,h3):focus{outline:3px solid var(--teal);outline-offset:3px}@media (width<=360px){.home-skater-summary,.home-skater-copy{min-height:164px}.home-daily-goals{grid-template-columns:1fr}.skater-tabs{gap:3px}.skater-tabs button{font-size:var(--fs-xs);padding-inline:2px}.skater-equipped-row{gap:5px}.skater-equipped-row>button{min-width:68px}.skater-data-card .economy-product-actions{flex-wrap:wrap}.skater-data-card .economy-product-actions>button{flex-basis:100%}}:root{--px-edge:var(--ink);--px-border:2px solid var(--px-edge);--px-bevel:inset 2px 2px 0 #fff6, inset -2px -2px 0 #1e1b2626;--px-shadow:var(--px-bevel), 0 3px 0 var(--px-edge);--px-shadow-press:var(--px-bevel), 0 1px 0 var(--px-edge);--px-cta:#ffc93c;--px-cta-tint:#ffe58a;--reward:#ffc93c;--px-step:4px}.px-panel{gap:var(--space-3);padding:var(--space-4);border:var(--px-border);background:var(--surface);box-shadow:var(--px-shadow);border-radius:0;display:grid}.px-panel-feature{background:var(--brand-tint)}.px-panel-reward{background:var(--px-cta-tint)}.px-button{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;min-height:54px;padding:0 var(--space-4) 0 var(--space-5);border:var(--px-border);font:inherit;font-size:var(--fs-xl);letter-spacing:-.02em;text-align:left;cursor:pointer;box-shadow:var(--px-shadow);border-radius:0;font-weight:800;transition:transform 80ms,box-shadow 80ms;display:flex;position:relative}.px-button:active:not(:disabled){box-shadow:var(--px-shadow-press);transform:translateY(3px)}.px-button:disabled{color:var(--muted);background:var(--line);box-shadow:var(--px-shadow-press);cursor:default}.px-button-primary{color:var(--px-edge);background:var(--px-cta)}.px-button-quiet{color:var(--ink);background:var(--surface-raised)}.px-button-icon{border:2px solid var(--px-edge);background:var(--surface-raised);width:28px;height:28px;font-family:var(--font-display);font-size:var(--fs-xl);flex:none;place-items:center;font-weight:800;display:grid}.px-chip-icon{border:2px solid var(--px-edge);width:22px;height:22px;color:var(--px-edge);font-size:var(--fs-xs);border-radius:0;place-items:center;font-weight:800;display:grid}.px-chip-coin .px-chip-icon{background:var(--coin)}.px-chip-fans .px-chip-icon{background:var(--fans)}.px-chip-fame .px-chip-icon{background:var(--fame)}.px-chip-energy .px-chip-icon{background:var(--energy)}:root{--teal-tint:#a9dcce;--brand-tint:#ffc59a;--px-cta:#ffc93c;--px-cta-tint:#ffe27a}.px-frame,.scene-card,.season-cycle-card,.career-economy-card,.daily-card,.sponsor-card,.career-loop-card,.home-skill-card,.goal-card,.secondary-button,.rank-chip,.legacy-badge,.session-reward,.status-strip,.px-next-reward{border:var(--px-border);box-shadow:var(--px-shadow);border-radius:0}.status-strip,.rank-chip{box-shadow:var(--px-shadow)}.app-shell{background-color:var(--paper);background-image:radial-gradient(#1d1a2316 1px,#0000 1px);background-size:6px 6px}.home-heading h1,.section-title h2,.career-economy-card .section-title h2,.daily-card .section-title h2,.home-skill-card h2{font-family:var(--font-display);letter-spacing:-.01em;font-weight:800}.eyebrow{letter-spacing:.1em;text-transform:uppercase}.season-cycle-card b,.career-economy-card b,.daily-card b,.sponsor-card b{font-variant-numeric:tabular-nums}.px-tiers{gap:var(--space-2);display:grid}.px-tier-steps{grid-template-columns:repeat(4,1fr);margin:0;padding:0;list-style:none;display:grid}.px-tier-steps li{justify-items:center;gap:var(--space-1);color:var(--ink-2);display:grid}.px-tier-steps li small{font-size:var(--fs-xs);font-weight:700}.px-tier-badge{border:2px solid var(--px-edge);background-color:var(--surface-raised);width:30px;height:30px;box-shadow:0 2px 0 var(--px-edge);color:var(--ink-2);background-image:radial-gradient(#1e1b2633 1px,#0000 1px);background-size:4px 4px;place-items:center;display:grid}.px-tier-steps li.is-reached .px-tier-badge{background:var(--teal);color:#fff}.px-tier-steps li.is-current{color:var(--ink)}.px-tier-steps li.is-current .px-tier-badge{background:var(--px-cta);color:var(--px-edge)}.px-tier-bar{border:2px solid var(--px-edge);background:var(--surface-raised);height:14px;box-shadow:var(--px-bevel)}.px-tier-bar>i{background:repeating-linear-gradient(90deg, var(--px-cta) 0 8px, transparent 8px 10px);height:100%;display:block}.px-tier-caption{color:var(--muted);font-size:var(--fs-xs);font-variant-numeric:tabular-nums}.px-next-reward{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:2px solid var(--px-edge);background:var(--surface-raised);display:flex}.px-next-reward small{color:var(--muted);font-size:var(--fs-xs)}.px-next-reward b{color:var(--ink);font-size:var(--fs-md)}.home-trio{gap:var(--space-2);grid-template-columns:minmax(0,1fr);display:grid}.home-trio>*{margin:0!important}.scene-sticker{border:var(--px-border);background:var(--surface-raised);box-shadow:var(--px-shadow);border-radius:0}.status-strip>.money-resource b{font-size:var(--fs-lg)}.status-strip{grid-template-columns:1.3fr 1fr 1fr 1fr}.status-strip small{white-space:nowrap}.season-progress>i{border:2px solid var(--px-edge);background:var(--surface-raised);border-radius:0;height:14px}.season-progress>i>span{background:repeating-linear-gradient(90deg, var(--teal-ink) 0 8px, transparent 8px 10px);border-radius:0}.daily-goals span{border:2px solid var(--px-edge);color:var(--ink-2);background:var(--surface-raised);border-radius:0}.daily-goals .is-done{color:var(--ink);background:var(--teal-tint)}.px-nav{border-top:2px solid var(--px-edge)}.px-nav-item{border:2px solid #0000;border-radius:0}.px-nav-item.active{color:var(--px-edge);background:var(--px-cta);border-color:var(--px-edge)}.px-nav-item.active:before{display:none}.px-nav-item.active>span:last-of-type{font-weight:800}.px-nav .nav-dot{border-color:var(--px-edge);background:var(--brand);border-radius:0}.daily-reward-row button,.sponsor-next button,.career-loop-card>button,.season-cycle-footer>button,.early-retire,.event-icon,.season-morale,.session-reward,.mini-footer button,.section-title button{border-radius:0}.daily-reward-row button,.sponsor-next button,.career-loop-card>button,.season-cycle-footer>button{border:2px solid var(--px-edge);box-shadow:var(--px-shadow);color:var(--ink);background:var(--surface-raised)}.daily-reward-row button,.sponsor-next button,.season-cycle-footer>button{color:var(--teal-ink);background:var(--teal-tint)}.daily-reward-row button:active:not(:disabled),.sponsor-next button:active:not(:disabled),.career-loop-card>button:active:not(:disabled),.season-cycle-footer>button:active:not(:disabled){box-shadow:var(--px-shadow-press);transform:translateY(2px)}.daily-reward-row button:disabled,.sponsor-next button:disabled,.season-cycle-footer>button:disabled,.career-loop-card>button:disabled{border-color:var(--px-edge);color:var(--muted);background:var(--line);box-shadow:var(--px-shadow-press);opacity:1}.early-retire{border:2px dashed var(--px-edge)}.help-button,.close-button{border:2px solid var(--px-edge);box-shadow:var(--px-shadow);border-radius:0}.goal-card button{border:2px solid var(--px-edge);background:var(--surface-raised);box-shadow:var(--px-shadow);border-radius:0}.goal-card button:active{box-shadow:var(--px-shadow-press);transform:translateY(2px)}.event-icon,.season-morale{border:2px solid var(--px-edge);box-shadow:var(--px-bevel)}.session-reward{border:2px solid var(--px-edge);box-shadow:var(--px-shadow)}.contest-rules{border:2px solid var(--px-edge);background:var(--surface-raised);box-shadow:var(--px-shadow);border-radius:0;margin:0 0 10px;padding:9px 12px}.contest-rules>summary{color:var(--ink);font-size:var(--fs-sm);cursor:pointer;font-weight:800}.contest-rules>span{color:var(--ink-2);font-size:var(--fs-xs);margin-top:6px;line-height:1.5;display:block}.training-scene,.practice-bonus,.training-card,.training-unlock-note,.practice-slot,.ollie-track,.train-result,.clip-card,.contest-poster,.contest-format-note,.contest-details,.contest-detail-card,.competition-option,.ranking-points,.contest-lock-note,.strategy-card,.shop-wallet,.gear-status,.shop-item,.shop-compare>div,.spot-bar-main,.spot-suggest,.spot-row,.phase-card,.rival-field,.trick-card,.line-section,.line-track li,.duel-row{border:var(--px-border);box-shadow:var(--px-shadow);border-radius:0}.training-list,.competition-list,.shop-list,.trick-list,.spot-list,.line-sections{gap:var(--space-3)}.screen-heading h1,.bottom-sheet h2,.gear-status h3{font-family:var(--font-display);letter-spacing:-.02em;font-weight:800}.practice-bonus{background:var(--brand-tint)}.practice-slot.is-empty{color:var(--ink);background:var(--surface-raised);border-style:dashed}.training-card.recommended,.competition-option.selected,.spot-row.is-here{border-color:var(--px-edge);background:var(--brand-tint);box-shadow:var(--px-shadow)}.shop-item.equipped{border-color:var(--px-edge);background:var(--teal-tint);box-shadow:var(--px-shadow)}.shop-compare>div.next{border-color:var(--px-edge)}.trick-card.status-locked,.trick-card.is-dimmed,.spot-row.is-locked{opacity:1;color:var(--muted);background:var(--surface-sunken)}.training-card:active:not(:disabled),.competition-option:active,.practice-slot.is-empty:active{box-shadow:var(--px-shadow-press);transform:translateY(2px)}.training-icon,.sparkle,.competition-step,.strategy-mark,.item-art,.clip-score,.trick-tier,.line-step,.rival-avatar,.training-scene>div:not(.training-anim),.attempt-chip,.level-up-badge,.evolve-badge,.spot-chips span,.line-warn,.line-chip,.line-criteria div,.line-judges b,.line-attempts b,.line-summary div{border:var(--px-border);box-shadow:var(--px-bevel);border-radius:0}.training-scene>.training-anim{box-shadow:none;border:0;border-radius:0}.training-icon,.competition-step,.trick-tier,.training-level,.item-buy-row strong{font-variant-numeric:tabular-nums}.primary-button:not(.retirement-next),.trickbook-open,.route-tabs button,.item-buy-row button,.gear-instance button,.practice-slot-actions button,.clip-actions button,.trick-assign button,.trick-back,.trick-path button,.trick-tabs button,.trick-status-chips button,.trick-stance,.trick-rust-note button,.spot-row>button,.contest-lock-note button,.line-tools button,.line-queue,.line-stance,.line-clear,.line-option>button,.line-best select,.secondary-action,.sheet-close{min-height:var(--tap);border:var(--px-border);color:var(--ink);background:var(--surface-raised);box-shadow:var(--px-shadow);border-radius:0;font-weight:700}.primary-button:not(.retirement-next),.trickbook-open,.clip-actions .is-upload{color:var(--ink);background:var(--px-cta)}.primary-button:not(.retirement-next) b{border:var(--px-border);border-radius:0}.item-buy-row button,.gear-instance button,.practice-slot-actions button:not(.is-ghost),.trick-assign button{background:var(--teal-tint)}.route-tabs button.active,.trick-path button.is-on,.trick-tabs button.is-on,.trick-status-chips button.is-on,.trick-stance.is-on,.line-tools button.is-on,.line-option button.is-on,.line-stance.is-on{border-color:var(--px-edge);color:var(--ink);background:var(--px-cta);box-shadow:var(--px-shadow)}.route-tabs,.trick-tabs{padding-bottom:6px}.trick-path,.trick-tabs,.trick-status-chips{margin-bottom:var(--space-2)}.trick-list,.spot-list,.line-sections{padding-bottom:var(--space-1)}.primary-button:not(.retirement-next):active:not(:disabled),.trickbook-open:active,.item-buy-row button:active:not(:disabled),.practice-slot-actions button:active:not(:disabled),.trick-assign button:active:not(:disabled),.sheet-close:active{box-shadow:var(--px-shadow-press);transform:translateY(2px)}.training-card:disabled,.strategy-card:disabled,.practice-slot-actions button:disabled,.primary-button:not(.retirement-next):disabled,.item-buy-row button:disabled,.gear-instance button:disabled,.trick-assign button:disabled,.trick-stance:disabled,.spot-row>button:disabled{opacity:1;color:var(--muted);background:var(--surface-sunken);box-shadow:var(--px-shadow-press);cursor:not-allowed}.ollie-track i,.train-xp i,.practice-slot i,.trick-progress i,.gear-condition>i{border:var(--px-border);background:var(--surface-raised);border-radius:0;height:12px}.ollie-track i span,.train-xp i span,.practice-slot i span,.trick-progress i span{background:repeating-linear-gradient(90deg, var(--teal) 0 8px, transparent 8px 10px);border-radius:0}.gear-condition{--px-meter:var(--teal)}.gear-condition.warn{--px-meter:var(--coin)}.gear-condition.bad,.gear-condition.broken{--px-meter:var(--danger)}.gear-condition:is(.ok,.warn,.bad,.broken)>i>span{background:repeating-linear-gradient(90deg, var(--px-meter) 0 8px, transparent 8px 10px);border-radius:0}.bottom-sheet,.confirm-sheet,.result-sheet{border:var(--px-border);box-shadow:0 -4px 0 var(--px-edge);border-bottom:0;border-radius:0}.sheet-handle{background:var(--px-edge);border-radius:0}.sheet-close{min-width:var(--tap)}.gear-instance{border-top:2px dashed var(--line-strong)}.feed-content,.feed-screen{background:0 0}.feed-header{border-bottom:var(--px-border);background:var(--surface)}.feed-header h1{font-family:var(--font-display);letter-spacing:-.03em;text-transform:uppercase;font-size:24px;font-weight:800}.feed-list{gap:var(--space-3);padding:var(--space-3);display:grid}.fx-post,.fx-first-clip{border:var(--px-border);background:var(--surface);box-shadow:var(--px-shadow);border-radius:0}.fx-media{border-block:var(--px-border)}.feed-stories{border-bottom:var(--px-border)}.story-ring,.story-ring i,.story-ring b,.fx-avatar,.fx-avatar i,.fx-verified,.fx-counter,.fx-duration,.fx-dots i,.feed-new-pill,.feed-story-viewer,.story-viewer-reply{border-radius:0}.story-ring,.fx-avatar{border:var(--px-border);box-shadow:var(--px-shadow)}.feed-header .feed-exit{border:var(--px-border);border-radius:0}.feed-new-pill{border:var(--px-border);color:var(--ink);background:var(--px-cta);box-shadow:var(--px-shadow)}.feed-header button,.feed-actions button{min-width:var(--tap);min-height:var(--tap)}.feed-header>div,.feed-action-group{gap:var(--space-2)}.character-shell .creator-brand>span{border:var(--px-border);width:40px;height:40px;color:var(--ink);background:var(--brand);box-shadow:var(--px-shadow);border-radius:0}.character-shell .creator-brand b{font-family:var(--font-display);letter-spacing:.04em;font-weight:800}.character-creator .eyebrow{color:var(--brand-ink)}.character-creator h1{font-family:var(--font-display);letter-spacing:-.03em;font-weight:800}.character-shell .creator-legacy{border:var(--px-border);background:var(--brand-tint);box-shadow:var(--px-shadow);border-radius:0}.character-shell .creator-field input,.character-shell .creator-field select{border:var(--px-border);background:var(--surface-raised);min-height:52px;box-shadow:var(--px-bevel);border-radius:0}.character-shell .creator-field input:focus,.character-shell .creator-field select:focus{border-color:var(--px-edge);outline:3px solid var(--teal);outline-offset:2px;box-shadow:var(--px-shadow)}.character-shell .creator-group legend{color:var(--ink);font-family:var(--font-display);font-weight:800}.character-shell .play-style-card,.character-shell .creator-options button,.character-shell .stance-options button,.character-shell .creator-age-options button{min-height:var(--tap);border:var(--px-border);color:var(--ink);background:var(--surface);box-shadow:var(--px-shadow);border-radius:0;transition:transform 80ms,box-shadow 80ms}.character-shell .play-style-card.selected,.character-shell .creator-options button.selected,.character-shell .stance-options button.selected,.character-shell .creator-age-options button.selected{border-color:var(--px-edge);background:var(--px-cta);box-shadow:var(--px-shadow)}.character-shell .play-style-card:active,.character-shell .creator-options button:active,.character-shell .stance-options button:active,.character-shell .creator-age-options button:active{box-shadow:var(--px-shadow-press);transform:translateY(2px)}.character-shell :is(.play-style-card,.creator-options button,.stance-options button,.creator-age-options button):focus-visible{outline:3px solid var(--teal);outline-offset:3px}.character-shell .play-style-top>i,.character-shell .creator-options button>span{border:var(--px-border);box-shadow:var(--px-bevel);border-radius:0}.character-shell .play-style-tags i{border:var(--px-border);background:var(--brand-tint);box-shadow:var(--px-bevel);border-radius:0;padding:3px 7px}.character-shell .play-style-stat>i{border:var(--px-border);background:var(--surface-raised);height:12px;box-shadow:var(--px-bevel);border-radius:0}.character-shell .play-style-stat>i b{background:repeating-linear-gradient(90deg, var(--teal) 0 8px, transparent 8px 10px);border-radius:0}.character-shell .play-style-passive{border:var(--px-border);background:var(--brand-tint);box-shadow:var(--px-bevel);border-radius:0}.character-shell .play-style-select{min-height:var(--tap);border:var(--px-border);background:var(--surface-raised);box-shadow:var(--px-shadow);border-radius:0}.character-shell .play-style-card.selected .play-style-select{border-color:var(--px-edge);color:var(--ink);background:var(--px-cta)}.home-skater-summary,.home-next-action,.home-notifications,.home-today,.home-event-row,.skater-profile-card,.skater-data-card,.skater-disclosure,.skater-purchases,.skater-equipped-row,.skater-inventory-item,.home-daily-goals button,.skater-tabs button,.skater-equipped-row>button,.skater-gear-actions button,.skater-retire .secondary-button{border:var(--px-border);box-shadow:var(--px-shadow);border-radius:0}.home-next-action .primary-button,.skater-purchase-entry{border:var(--px-border);box-shadow:var(--px-shadow-press);border-radius:0}.home-skater-summary{box-shadow:var(--px-shadow)}.home-skater-copy>button{border-radius:0}.home-daily-goals button.is-done,.skater-tabs button.is-selected{border-color:var(--px-edge);box-shadow:var(--px-shadow)}.skater-inventory-item,.skater-equipped-row{box-shadow:none;border-bottom:0;border-left:0;border-right:0}.skater-disclosure>summary,.skater-purchases>summary{list-style-type:square}.character-shell .creator-submit:disabled{opacity:1}.bottom-sheet{border:2px solid var(--px-edge);box-shadow:var(--px-shadow);border-bottom:0;border-radius:0}.settings-toggle{border:2px solid var(--px-edge);box-shadow:var(--px-shadow);border-radius:0}.settings-toggle input{appearance:none;border:2px solid var(--px-edge);background-color:var(--surface-raised);width:28px;height:28px;box-shadow:var(--px-bevel);cursor:pointer;border-radius:0;margin:0}.settings-toggle input:checked{background-color:var(--px-cta);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8' shape-rendering='crispEdges'%3E%3Cpath d='M7 1h1v1h-1zM6 2h1v1h-1zM7 2h1v1h-1zM0 3h1v1h-1zM5 3h1v1h-1zM6 3h1v1h-1zM0 4h1v1h-1zM1 4h1v1h-1zM4 4h1v1h-1zM5 4h1v1h-1zM1 5h1v1h-1zM2 5h1v1h-1zM3 5h1v1h-1zM4 5h1v1h-1zM2 6h1v1h-1zM3 6h1v1h-1z' fill='%231E1B26'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:20px 20px}.settings-toggle i{border:2px solid var(--px-edge);background:var(--surface-raised);color:var(--ink);font-family:var(--font-display);padding:2px 6px;font-weight:800}.settings-toggle small,.help-list p small{color:var(--ink-2)}.help-list>div{border:2px solid var(--px-edge);background:var(--px-cta-tint);box-shadow:var(--px-shadow);border-radius:0}.help-list>div>span{border:2px solid var(--px-edge);color:var(--px-edge);background:var(--teal-tint);border-radius:0}.settings-values li{border:2px solid var(--px-edge);background:var(--surface-raised);color:var(--ink);border-radius:0}.settings-link,.settings-danger{border:2px solid var(--px-edge);box-shadow:var(--px-shadow);border-radius:0}.settings-link:disabled{color:var(--ink-2);background:var(--surface-raised);box-shadow:var(--px-shadow-press)}.settings-confirm{border:2px solid var(--px-edge);border-radius:0}.settings-version{color:var(--ink-2)}.career-sponsor{border:2px solid var(--px-edge);background:var(--teal-tint);box-shadow:var(--px-bevel);border-radius:0;gap:4px;padding:10px;display:grid}.career-sponsor small{color:var(--ink-2);font-size:var(--fs-xs)}.career-sponsor b{color:var(--ink);font-size:var(--fs-md)}.career-sponsor span{color:var(--ink-2);font-size:var(--fs-xs)}.sponsor-requirements>span{border:2px solid var(--px-edge);box-shadow:var(--px-bevel);border-radius:0}.sponsor-requirements>span b,.sponsor-requirements>span small{color:var(--ink-2)}.sponsor-requirements>span.is-met{background:var(--teal-tint)}.sponsor-requirements>span.is-met b{color:var(--ink)}.sponsor-next button,.skater-data-card .sponsor-next button{border:2px solid var(--px-edge);box-shadow:var(--px-shadow);border-radius:0}.sponsor-next button:disabled,.skater-data-card .sponsor-next button:disabled{color:var(--ink);background-color:var(--surface-raised);box-shadow:var(--px-shadow-press);background-image:radial-gradient(#1e1b2633 1px,#0000 1px);background-size:4px 4px}#root *,#root :before,#root :after{border-radius:0!important}#root :disabled{cursor:default;opacity:1!important}#root button:disabled,#root .primary-button:disabled,#root .strategy-card:disabled,#root .training-card:disabled,#root .event-choice:disabled{color:var(--ink-2)!important;background-color:var(--surface-raised)!important;box-shadow:var(--px-shadow-press)!important;filter:none!important;background-image:radial-gradient(#1e1b2633 1px,#0000 1px)!important;background-size:4px 4px!important}#root :is(.is-locked,.is-dimmed,.status-locked,.is-retired,.is-skipped,.locked){opacity:1!important}#root :is(.is-locked,.status-locked,.locked,.competition-option.locked){background-color:var(--surface-raised)!important;color:var(--ink-2)!important;background-image:radial-gradient(#1e1b2633 1px,#0000 1px)!important;background-size:4px 4px!important}#root .px-nav-item:not(.active),#root .px-nav-item:not(.active) svg{color:var(--ink-2)}:root[data-theme=night]{--font-body:"Galmuri11", "Noto Sans KR", "Apple SD Gothic Neo", system-ui, sans-serif;--font-display:"Galmuri11", "Archivo", "Noto Sans KR", system-ui, sans-serif;--font-mono:"Galmuri9", "Silkscreen", ui-monospace, monospace;--bg:#06121c;--surface:#0c1a28;--surface-raised:#1b2e40;--surface-sunken:#040d15;--line:#1e3547;--line-strong:#62e5c3;--ink:#f2e7db;--ink-2:#cfe3da;--muted:#8ca3a8;--brand:#fa6362;--on-brand:#06121c;--brand-ink:#ff8e8e;--brand-tint:#3a1e2a;--teal:#62e5c3;--on-teal:#06121c;--teal-ink:#62e5c3;--teal-tint:#123a3a;--danger:#fa6362;--on-danger:#06121c;--danger-ink:#ff8e8e;--danger-tint:#3a1e2a;--coin:#ffd35c;--fans:#ff8fb1;--fame:#a99bff;--energy:#62e5c3;--on-resource:#06121c;--scrim:#020a10c8;--px-edge:#62e5c3;--px-bevel:inset 2px 2px 0 #ffffff12, inset -2px -2px 0 #0006;--px-cta:#fa6362;--px-cta-tint:#3d3a1f;--reward:#ffd35c;--shadow-1:0 1px 0 #0006, 0 6px 20px #00000040;--shadow-2:0 1px 0 #0006, 0 10px 28px #0005;--shadow-sheet:0 -12px 40px #00000080;--shadow-cta:0 4px 0 #a83a46;--shadow-cta-teal:0 4px 0 #2a8f7a;--focus:0 0 0 3px var(--bg), 0 0 0 6px var(--teal);background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=night] .app-shell{background-color:var(--bg);background-image:none;box-shadow:0 0 50px #000a}:root[data-theme=night] .topbar{background:var(--bg)}:root[data-theme=night] .px-panel,:root[data-theme=night] .px-frame,:root[data-theme=night] .scene-card,:root[data-theme=night] .status-strip{background:var(--surface)}:root[data-theme=night] .px-button-primary,:root[data-theme=night] .px-button-primary b{color:#06121c}:root[data-theme=night] .px-button-quiet{color:var(--ink);background:var(--surface-raised);border-color:#2a4558}:root[data-theme=night] .px-button:disabled{color:var(--muted);background:var(--surface-sunken)}:root[data-theme=night] .px-panel-reward,:root[data-theme=night] .home-heading h1,:root[data-theme=night] .section-title h2,:root[data-theme=night] .character-creator h1{color:var(--ink)}:root[data-theme=night] .eyebrow{color:var(--teal)}:root[data-theme=night] .secondary-button,:root[data-theme=night] .settings-link,:root[data-theme=night] .settings-toggle,:root[data-theme=night] .wizard-back{background:var(--surface-raised);color:var(--ink);border-color:#2a4558}:root[data-theme=night] .wizard-options button{background:var(--surface-raised);border-color:#2a4558}:root[data-theme=night] .wizard-options button.selected,:root[data-theme=night] .wizard-style.selected{background:var(--teal-tint);box-shadow:inset 0 0 0 2px var(--teal);border-color:var(--teal)}:root[data-theme=night] .attempt-choices .training-card.is-challenge{background:var(--brand-tint);border-color:var(--brand)}:root[data-theme=night] .bottom-nav{background:var(--surface);border-color:#1e3547}:root[data-theme=night] .nav-item{color:var(--teal-ink)}:root[data-theme=night] .nav-item.active,:root[data-theme=night] .nav-item[aria-current=page]{color:var(--teal);border-color:var(--teal);background:var(--surface-raised)}:root[data-theme=night] input,:root[data-theme=night] select,:root[data-theme=night] textarea{color:var(--ink);background:var(--surface-sunken);border-color:#2a4558}:root[data-theme=night] ::placeholder{color:var(--muted)}.theme-picker{grid-template-columns:1fr 1fr;gap:8px;display:grid}.theme-picker button{border:2px solid var(--line-strong);color:var(--ink);background:var(--surface);font:inherit;text-align:left;cursor:pointer;border-radius:0;gap:6px;padding:10px;display:grid}.theme-picker button b{font-family:var(--font-display);font-size:var(--fs-lg)}.theme-picker button small{color:var(--muted);font-size:var(--fs-xs);line-height:1.4}.theme-picker button.selected{box-shadow:inset 0 0 0 2px var(--teal);border-color:var(--teal)}.theme-swatches{display:flex}.theme-swatches i{border:1px solid #00000040;flex:1;height:18px}:root[data-theme=night] .help-list>div{background:var(--surface-raised)}:root[data-theme=night] .theme-picker button{background:var(--surface-raised);border-color:#2a4558}:root[data-theme=night] .theme-picker button.selected{border-color:var(--teal);background:var(--teal-tint)}:root[data-theme=night] .wizard-steps li.current .wizard-dot,:root[data-theme=night] .hud-calendar li.is-current,:root[data-theme=night] .px-tier-steps li.is-current .px-tier-badge,:root[data-theme=night] .primary-button:not(.retirement-next),:root[data-theme=night] .trickbook-open,:root[data-theme=night] .clip-actions .is-upload,:root[data-theme=night] .line-option button.is-on,:root[data-theme=night] .line-stance.is-on,:root[data-theme=night] .feed-new-pill,:root[data-theme=night] .character-shell .play-style-card.selected .play-style-select,:root[data-theme=night] .tutorial-nav.is-primary,:root[data-theme=night] .route-tabs button.active,:root[data-theme=night] .route-tabs button.active span,:root[data-theme=night] .route-tabs button.active small,:root[data-theme=night] .home-command-cta,:root[data-theme=night] .home-command-cta *{color:#06121c}:root[data-theme=night] .skater-tabs button.is-selected{border-color:var(--teal);color:var(--teal);background:var(--teal-tint)}:root[data-theme=night] .brand-mark span:last-child{line-height:1.3}:root[data-theme=night] .clip-actions .is-upload{background:var(--teal)}
