:root{--c-primary: #7c2dff;--c-secondary: #00e5d1;--c-accent: #ffe600;--c-success: #00e676;--c-warning: #ffab00;--c-error: #ff1744;--bg: #0a0a12;--surface: #14141f;--surface-2: #1e1e2e;--border: #2c2c40;--text-1: #f5f3ff;--text-2: #b8b5d6;--text-3: #6e6b92;--on-primary: #0a0a12;--on-accent: #0a0a12;--domain-meta: #a855f7;--domain-curiosity: #00e5d1;--domain-creation: #ff3d9a;--domain-collaboration: #00e676;--domain-socioemotional: #ff4d8d;--domain-ethics: #ff1744;--domain-aibasics: #2e9bff;--domain-critical: #ffd400;--fill-success: #00a152;--fill-error: #d50000;--c-success-ink: #00a152;--c-warning-ink: #b26a00;--c-error-ink: #d50000;--c-accent-ink: #b58900;--domain-meta-ink: #7e22ce;--domain-curiosity-ink: #0a9b8e;--domain-creation-ink: #c2185b;--domain-collaboration-ink: #00a152;--domain-socioemotional-ink: #c2185b;--domain-ethics-ink: #d50000;--domain-aibasics-ink: #1d6fd0;--domain-critical-ink: #b58900;--scrim-grad-brand: linear-gradient(135deg, rgba(10,10,18,.3), rgba(10,10,18,.62));--chip-on-grad: rgba(10,10,18,.32);--ring-on-color: #ffffff;--edge-glow: 0 0 0 1px color-mix(in srgb, var(--c-primary) 50%, transparent), 0 0 18px color-mix(in srgb, var(--c-primary) 35%, transparent);--tint-success: rgba(0,230,118,.16);--tint-warning: rgba(255,171,0,.16);--tint-error: rgba(255,23,68,.16);--tint-info: rgba(0,229,209,.16);--halo: 0 0 40px color-mix(in srgb, var(--dc, var(--c-primary)) 45%, transparent);--text-shadow-pop: 0 2px 0 rgba(10,10,18,.35);--bg-grad: conic-gradient(from 180deg at 30% 20%, #1a0b3a, #0a0a12 40%, #06222b 70%, #1a0b3a);--radius-cut: 14px 14px 14px 0;--radius-cut-r: 14px 14px 0 14px;--z-bg: 0;--z-shards: 1;--z-content: 2;--mascot-screen: #06060c;--r-sm: 8px;--r-md: 12px;--r-lg: 18px;--r-xl: 24px;--r-pill: 999px;--sh-sm: 0 2px 10px rgba(0,0,0,.45);--sh-md: 0 10px 30px rgba(124,45,255,.28);--sh-glow: 0 0 0 3px color-mix(in srgb, var(--c-primary) 40%, transparent), 0 0 22px color-mix(in srgb, var(--c-primary) 35%, transparent);--sh-pop: 0 16px 40px rgba(124,45,255,.45);--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--sp-8: 64px;--fs-display: clamp(40px, 11vw, 104px);--fs-h1: clamp(30px, 7vw, 56px);--fs-h2: clamp(24px, 5vw, 40px);--fs-h3: clamp(19px, 3.2vw, 26px);--fs-body: clamp(16px, 2.6vw, 19px);--fs-small: clamp(13px, 2vw, 15px);--fs-caption: clamp(11px, 1.6vw, 13px);--font-display: "Smiley Sans", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--font-display-x: "Smiley Sans", system-ui, sans-serif;--font-body: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--motion-micro: .16s;--motion-standard: .3s;--motion-emphasis: .6s;--motion-fast: .12s;--motion-slow: .9s;--motion-page: .48s;--motion-bg: 14s;--motion-hover: .24s;--motion-burst: .7s;--stagger-step: 70ms;--dur-ripple: .6s;--ease-standard: cubic-bezier(.4, 0, .2, 1);--ease-back: cubic-bezier(.34, 1.56, .64, 1);--ease-spring: cubic-bezier(.18, 1.25, .3, 1.15);--ease-elastic: cubic-bezier(.68, -.55, .27, 1.55);--ease-snap: cubic-bezier(.16, 1, .3, 1);--ease-in-out-expo: cubic-bezier(.87, 0, .13, 1);--container-max: 1200px;--tap-min: 44px;--tap-main: 48px}[data-theme=light]{--bg: #f7f7fb;--surface: #ffffff;--surface-2: #eceaf6;--border: #0a0a12;--text-1: #0a0a12;--text-2: #3a3654;--text-3: #6e6b92;--on-primary: #ffffff;--on-accent: #0a0a12;--scrim-grad-brand: linear-gradient(135deg, rgba(10,10,18,.1), rgba(10,10,18,.28));--chip-on-grad: rgba(255,255,255,.3);--bg-grad: conic-gradient(from 180deg at 30% 20%, #e9defb, #f7f7fb 40%, #d7f6f2 70%, #e9defb);--sh-sm: 0 2px 10px rgba(10,10,18,.1);--sh-md: 0 10px 30px rgba(124,45,255,.16);--c-success: var(--c-success-ink);--c-warning: var(--c-warning-ink);--c-error: var(--c-error-ink);--c-accent: var(--c-accent-ink);--domain-meta: var(--domain-meta-ink);--domain-curiosity: var(--domain-curiosity-ink);--domain-creation: var(--domain-creation-ink);--domain-collaboration: var(--domain-collaboration-ink);--domain-socioemotional: var(--domain-socioemotional-ink);--domain-ethics: var(--domain-ethics-ink);--domain-aibasics: var(--domain-aibasics-ink);--domain-critical: var(--domain-critical-ink);--c-success-ink: #007a3d}[data-contrast=high]{--text-2: var(--text-1);--text-3: var(--text-1);--border: var(--text-1);--c-success: var(--c-success-ink);--c-warning: var(--c-warning-ink);--c-error: var(--c-error-ink);--c-accent: var(--c-accent-ink);--domain-meta: var(--domain-meta-ink);--domain-curiosity: var(--domain-curiosity-ink);--domain-creation: var(--domain-creation-ink);--domain-collaboration: var(--domain-collaboration-ink);--domain-socioemotional: var(--domain-socioemotional-ink);--domain-ethics: var(--domain-ethics-ink);--domain-aibasics: var(--domain-aibasics-ink);--domain-critical: var(--domain-critical-ink)}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.muted{color:var(--text-2);font-size:var(--fs-small)}:focus-visible{outline:2px solid var(--c-primary);outline-offset:2px;border-radius:var(--r-sm)}.btn-pill:focus-visible,.iconbtn:focus-visible,.iconbtn--crisis:focus-visible,.segmented button.is-active:focus-visible,.switch[aria-checked=true]:focus-visible{outline:2px solid var(--ring-on-color);outline-offset:2px;box-shadow:none}.switch:focus-visible{outline:2px solid var(--text-1);outline-offset:2px}.btn-primary,.btn-secondary,.btn-ghost,.btn-pill{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:var(--tap-main);padding:0 var(--sp-5);font-size:var(--fs-body);font-weight:700;font-family:var(--font-body);border-radius:var(--radius-cut);cursor:pointer;border:2px solid transparent;position:relative;overflow:hidden;transition:transform var(--motion-micro) var(--ease-standard),box-shadow var(--motion-micro) var(--ease-standard),background var(--motion-micro) var(--ease-standard)}.btn-primary{background:var(--c-primary);color:#fff;box-shadow:var(--sh-md)}.btn-secondary{background:var(--surface);color:var(--c-primary);border-color:var(--c-primary)}.btn-ghost{background:transparent;color:var(--c-primary)}.btn-pill{background-image:var(--scrim-grad-brand),linear-gradient(135deg,var(--c-primary),var(--c-secondary));background-color:var(--c-primary);color:#fff;border-radius:var(--r-pill);padding:0 var(--sp-6);min-height:var(--tap-main);box-shadow:var(--sh-md)}.btn-primary:active,.btn-secondary:active,.btn-ghost:active,.btn-pill:active{transform:scale(.96)}.btn-pill:active,.btn-primary:hover,.btn-pill:hover{box-shadow:var(--sh-glow)}.btn-primary:disabled,.btn-secondary:disabled,.btn-ghost:disabled,.btn-pill:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.btn-magnetic{transition:transform var(--motion-hover) var(--ease-spring);will-change:transform}.btn-primary:before,.btn-secondary:before{content:"";position:absolute;inset:-2px;border-radius:inherit;padding:2px;background:linear-gradient(120deg,var(--c-secondary),var(--c-primary),var(--c-accent),var(--c-primary));background-size:300% 100%;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;opacity:0;transition:opacity var(--motion-hover) var(--ease-standard);pointer-events:none;animation:border-flow 3s linear infinite}.btn-primary:hover:before,.btn-secondary:hover:before{opacity:.9}@keyframes border-flow{to{background-position:300% 0}}.ripple{position:absolute;border-radius:50%;background:currentColor;opacity:.32;transform:scale(0);pointer-events:none;animation:ripple var(--dur-ripple) var(--ease-standard)}@keyframes ripple{to{transform:scale(2.6);opacity:0}}.icon{flex:none;display:inline-block;vertical-align:middle}.app-shell{position:relative;z-index:var(--z-content);display:flex;flex-direction:column;min-height:100dvh}.appbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);padding-top:calc(var(--sp-3) + env(safe-area-inset-top));background-image:var(--scrim-grad-brand),linear-gradient(135deg,var(--c-primary),var(--c-secondary));color:#fff;border-bottom:2px solid color-mix(in srgb,var(--c-secondary) 50%,transparent);box-shadow:0 6px 24px #7c2dff40}.brand{display:inline-flex;align-items:center;gap:var(--sp-2);color:#fff;text-decoration:none;font-weight:800}.brand__mark{display:inline-flex;background:var(--chip-on-grad);border-radius:var(--r-sm);padding:4px}.brand__name{font-size:var(--fs-h3);display:inline-flex;align-items:baseline;gap:6px;letter-spacing:-.01em}.brand__name small{font-size:var(--fs-small);font-weight:600;opacity:.85}.appbar__actions{display:flex;align-items:center;gap:var(--sp-2)}.iconbtn{display:inline-flex;align-items:center;gap:6px;min-height:var(--tap-min);min-width:var(--tap-min);padding:0 10px;background:var(--chip-on-grad);color:#fff;border:1px solid color-mix(in srgb,#fff 22%,transparent);border-radius:var(--r-md);cursor:pointer;font-size:var(--fs-small);font-weight:700;transition:transform var(--motion-micro) var(--ease-standard),box-shadow var(--motion-micro)}.iconbtn--crisis{background:var(--fill-error);border-color:transparent}.iconbtn:active{transform:scale(.95)}.iconbtn:hover{box-shadow:0 0 0 2px color-mix(in srgb,#fff 40%,transparent)}.app-content{flex:1;width:100%;max-width:var(--container-max);margin:0 auto;padding:var(--sp-4);padding-bottom:calc(var(--sp-8) + env(safe-area-inset-bottom))}.appnav{position:sticky;bottom:0;z-index:20;display:flex;order:3;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(10px);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom)}.appnav__item{flex:1;min-height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:var(--text-2);text-decoration:none;font-size:var(--fs-caption);font-weight:700;border-top:3px solid transparent;transition:color var(--motion-micro) var(--ease-standard),transform var(--motion-micro) var(--ease-spring)}.appnav__item.is-active{color:var(--text-1);border-top-color:var(--c-primary);text-shadow:0 0 14px color-mix(in srgb,var(--c-primary) 60%,transparent)}.appnav__item.is-active:hover{transform:translateY(-2px) scale(1.04)}@media (min-width: 769px){.app-shell{display:grid;grid-template-columns:240px 1fr;grid-template-areas:"bar bar" "nav main"}.appbar{grid-area:bar;position:static}.appnav{grid-area:nav;order:0;position:static;flex-direction:column;border-top:none;border-right:1px solid var(--border);padding:var(--sp-5) var(--sp-3);gap:var(--sp-2);backdrop-filter:none}.appnav__item{flex:none;flex-direction:row;justify-content:flex-start;gap:var(--sp-3);min-height:var(--tap-main);padding:0 var(--sp-4);border-top:none;border-left:3px solid transparent;border-radius:var(--r-md)}.appnav__item.is-active{border-left-color:var(--c-primary);border-top:none;background:var(--surface-2)}.app-content{padding:var(--sp-6)}}.screen{display:flex;flex-direction:column;gap:var(--sp-5)}.screen__head{display:flex;flex-direction:column;gap:4px}.screen__title{font-size:var(--fs-h1);margin:0;font-weight:800;letter-spacing:-.01em}.screen__sub{color:var(--text-2);margin:0;font-size:var(--fs-small)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-cut);box-shadow:var(--sh-sm);padding:var(--sp-5);position:relative;overflow:hidden;transition:transform var(--motion-micro) var(--ease-standard),box-shadow var(--motion-micro) var(--ease-standard)}.card:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1.5px;background:linear-gradient(135deg,color-mix(in srgb,var(--c-primary) 60%,transparent),transparent 55%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;opacity:.5;pointer-events:none;background-size:250% 250%;background-position:0% 0%;transition:background-position 2s linear,opacity var(--motion-hover) var(--ease-standard)}.card:hover:before{opacity:1;background-position:100% 100%}.card__title{font-size:var(--fs-h3);margin:0 0 var(--sp-3);font-weight:700}.hero{display:flex;flex-direction:column-reverse;gap:var(--sp-4);align-items:center;background-image:var(--scrim-grad-brand),linear-gradient(135deg,var(--c-primary),var(--c-secondary));color:#fff;border-radius:var(--r-xl);padding:var(--sp-6);box-shadow:var(--sh-md);position:relative;overflow:hidden}.hero:after{content:"";position:absolute;right:-10%;top:-20%;width:60%;height:140%;background:conic-gradient(from 0deg,transparent,color-mix(in srgb,var(--c-accent) 40%,transparent),transparent);filter:blur(30px);opacity:.5;pointer-events:none}.hero__kicker{font-size:var(--fs-small);font-weight:700;opacity:.92;margin:0 0 6px;letter-spacing:.06em;text-transform:uppercase}.hero__title{font-family:var(--font-display);font-size:var(--fs-display);margin:0;line-height:.95;transform:skew(-6deg);text-shadow:0 0 26px color-mix(in srgb,var(--c-secondary) 60%,transparent)}.hero__slogan{margin:var(--sp-3) 0 var(--sp-4);font-size:var(--fs-body);opacity:.96;max-width:32ch;text-shadow:var(--text-shadow-pop)}.hero__cta{display:flex;gap:var(--sp-3)}.hero__mascot{filter:drop-shadow(0 8px 24px rgba(0,0,0,.35));z-index:1}@media (min-width: 769px){.hero{flex-direction:row;justify-content:space-between;text-align:left;padding:var(--sp-7)}.hero__text{max-width:58%}.hero__mascot{transform:translateY(-12px)}}.goals__list{list-style:none;margin:0 0 var(--sp-3);padding:0;display:flex;flex-direction:column;gap:var(--sp-2)}.goal{display:flex;align-items:center;gap:var(--sp-2)}.goal__icon{color:var(--c-accent);display:inline-flex;filter:drop-shadow(0 0 6px color-mix(in srgb,var(--c-accent) 60%,transparent))}.goals__progress{margin:0;color:var(--text-2);font-size:var(--fs-small)}.home__entries{display:grid;grid-template-columns:1fr;gap:var(--sp-3)}@media (min-width: 600px){.home__entries{grid-template-columns:repeat(3,1fr)}}.entry{text-decoration:none;color:var(--text-1);display:flex;flex-direction:column;gap:4px;transition:transform var(--motion-micro) var(--ease-standard),box-shadow var(--motion-micro)}.entry:hover{transform:translateY(-3px);box-shadow:var(--sh-md)}.entry:hover .entry__icon{filter:drop-shadow(0 0 8px color-mix(in srgb,var(--c-primary) 70%,transparent))}.entry__icon{color:var(--c-primary);display:inline-flex}.entry__title{font-weight:800;font-size:var(--fs-h3)}.entry__sub{color:var(--text-2);font-size:var(--fs-small)}.stations{display:grid;grid-template-columns:1fr;gap:var(--sp-3)}@media (min-width: 600px){.stations{grid-template-columns:repeat(2,1fr)}}@media (min-width: 980px){.stations{grid-template-columns:repeat(4,1fr)}}.station{display:flex;flex-direction:column;gap:var(--sp-2);text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-cut);padding:var(--sp-4);cursor:pointer;position:relative;overflow:hidden;border-left:6px solid var(--dc, var(--c-primary));box-shadow:var(--sh-sm);transition:transform var(--motion-micro) var(--ease-standard),box-shadow var(--motion-micro)}.station:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,var(--dc, var(--c-primary)),transparent 65%);opacity:.08;pointer-events:none;transition:opacity var(--motion-hover) var(--ease-standard)}.station:after{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--dc, var(--c-primary));transform:translate(-100%);opacity:.9;box-shadow:var(--halo);transition:transform var(--motion-hover) var(--ease-snap);pointer-events:none}.station.is-available:hover{transform:translateY(-3px);box-shadow:var(--sh-md)}.station.is-available:hover:before{opacity:.18}.station.is-available:hover:after{transform:translate(0)}.station.is-lit{box-shadow:var(--sh-glow)}.station.is-locked{opacity:.6;cursor:not-allowed}.station__phase{font-size:var(--fs-caption);color:var(--text-2);font-weight:700;text-transform:uppercase;letter-spacing:.08em}.station__icon{color:var(--dc, var(--c-primary));display:inline-flex;filter:drop-shadow(0 0 8px color-mix(in srgb,var(--dc, var(--c-primary)) 55%,transparent))}.station__body{display:flex;flex-direction:column;gap:2px}.station__title{font-weight:800;font-size:var(--fs-h3)}.station__tool{font-size:var(--fs-small);color:var(--text-1);font-weight:700}.station__tag{font-size:var(--fs-small);color:var(--text-2);margin-top:4px}.station__status{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-caption);color:var(--text-2);font-weight:700;margin-top:var(--sp-2)}.station__status--done{color:var(--c-success)}@media (min-width: 980px){.station:nth-child(2),.station:nth-child(5){margin-top:18px}}.steps{list-style:none;display:flex;gap:var(--sp-2);margin:0;padding:0}.steps:before{content:""}.steps__item{display:flex;align-items:center;gap:var(--sp-2);flex:1;color:var(--text-2);font-size:var(--fs-small);font-weight:700}.steps__dot{width:30px;height:30px;flex:none;border-radius:var(--r-pill);display:inline-flex;align-items:center;justify-content:center;background:var(--surface-2);color:var(--text-2);border:2px solid var(--border);transition:background var(--motion-micro),box-shadow var(--motion-micro),color var(--motion-micro)}.steps__item.is-active .steps__dot{background:var(--c-primary);color:#fff;border-color:var(--c-primary);box-shadow:var(--halo);animation:dot-pulse 1.6s var(--ease-standard) infinite}.steps__item.is-done .steps__dot{background:var(--fill-success);color:#fff;border-color:var(--fill-success)}.steps__item.is-active .steps__label,.steps__item.is-done .steps__label{color:var(--text-1)}@keyframes dot-pulse{0%,to{box-shadow:var(--halo)}50%{box-shadow:0 0 18px color-mix(in srgb,var(--c-primary) 30%,transparent)}}.play__head{display:flex;align-items:center;gap:var(--sp-3)}.play__titlewrap{display:flex;flex-direction:column}.play__tool{color:var(--c-primary);font-weight:800;font-size:var(--fs-small);margin:0;text-shadow:0 0 12px color-mix(in srgb,var(--c-primary) 40%,transparent)}.task-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-cut);box-shadow:var(--sh-sm);padding:var(--sp-5);position:relative;overflow:hidden;border-top:4px solid var(--dc, var(--c-primary))}.task-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,var(--dc, var(--c-primary)),transparent 60%);opacity:.07;pointer-events:none}.task-card__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--sp-3)}.task-card__tool{color:var(--text-1);font-weight:800;font-size:var(--fs-h3)}.task-card__phase{font-size:var(--fs-caption);color:var(--text-2);font-weight:800;background:var(--surface-2);padding:2px 10px;border-radius:var(--r-pill);text-transform:uppercase;letter-spacing:.08em}.task-card__prompt{font-size:var(--fs-body);line-height:1.7;margin:0 0 var(--sp-4)}.guess-input,.text-input{width:100%;min-height:44px;font-family:var(--font-body);font-size:var(--fs-body);color:var(--text-1);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-3);resize:vertical}.guess-input:focus,.text-input:focus{outline:none;border-color:var(--c-primary);box-shadow:var(--sh-glow)}.chips{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-3)}.chip{background:var(--surface-2);color:var(--text-1);border:1px solid var(--border);border-radius:var(--r-pill);padding:8px var(--sp-4);min-height:40px;cursor:pointer;font-size:var(--fs-small);font-weight:700;transition:transform var(--motion-micro) var(--ease-back),border-color var(--motion-micro),box-shadow var(--motion-micro)}.chip:hover{border-color:var(--c-primary);box-shadow:var(--sh-glow);transform:translateY(-2px)}.chip:active{transform:scale(.96)}.play__actions{display:flex;gap:var(--sp-3);margin-top:var(--sp-4)}.play__hint{color:var(--text-2);font-size:var(--fs-small);margin:var(--sp-3) 0 0}.play__guess{display:flex;flex-direction:column;gap:var(--sp-4);align-items:center}.play__mascot{filter:drop-shadow(0 6px 18px rgba(0,0,0,.35))}.play__guess .task-card{width:100%}.sprite-row{display:flex;gap:var(--sp-3);align-items:flex-start}.sprite-bubble{flex:1;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-cut);border-top-left-radius:4px;padding:var(--sp-4);box-shadow:var(--sh-sm);position:relative;overflow:hidden}.sprite-bubble p{margin:0 0 var(--sp-2);line-height:1.7}.sprite-bubble.is-error{border-color:var(--c-error);box-shadow:var(--tint-error),0 0 0 2px color-mix(in srgb,var(--c-error) 40%,transparent)}.sprite-bubble__err{display:inline-block;margin-top:var(--sp-2);font-size:var(--fs-caption);font-weight:800;color:var(--c-error);background:var(--tint-error);padding:2px 10px;border-radius:var(--r-pill)}.trust{display:inline-flex;align-items:center;gap:4px;font-size:var(--fs-caption);font-weight:800;padding:2px 10px;border-radius:var(--r-pill)}.trust--verify_needed{color:var(--c-warning-ink);background:var(--tint-warning)}.trust--confirmed{color:var(--c-success-ink);background:var(--tint-success)}.trust--uncertain{color:var(--text-2);background:var(--surface-2)}.options{display:flex;flex-direction:column;gap:var(--sp-2)}.option{text-align:left;background:var(--surface-2);color:var(--text-1);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);min-height:48px;cursor:pointer;font-size:var(--fs-body);font-weight:700;font-family:var(--font-body);transition:transform var(--motion-micro) var(--ease-standard),border-color var(--motion-micro),box-shadow var(--motion-micro)}.option:hover{border-color:var(--dc, var(--c-primary));box-shadow:var(--sh-glow);transform:translate(4px)}.option:active{transform:scale(.98)}.reveal__cols{display:grid;grid-template-columns:1fr;gap:var(--sp-3)}@media (min-width: 600px){.reveal__cols{grid-template-columns:1fr 1fr}}.reveal__col{background:var(--surface-2);border-radius:var(--r-md);padding:var(--sp-3);border-left:4px solid var(--border)}.reveal__col--truth{border-left-color:var(--c-success)}.reveal__label{font-size:var(--fs-caption);font-weight:800;color:var(--text-2);text-transform:uppercase;letter-spacing:.06em}.reveal__col p{margin:var(--sp-2) 0 0;line-height:1.6}.mark__q{font-weight:700;margin:0 0 var(--sp-3)}.mark__choices{display:flex;gap:var(--sp-3);margin-bottom:var(--sp-3)}.mark__btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:var(--tap-main);background:var(--surface-2);color:var(--text-1);border:2px solid var(--border);border-radius:var(--r-md);cursor:pointer;font-weight:800;font-size:var(--fs-body);transition:transform var(--motion-micro) var(--ease-back),border-color var(--motion-micro),box-shadow var(--motion-micro)}.mark__btn:hover{transform:translateY(-2px)}.mark__btn.is-active{border-color:var(--c-primary);color:var(--c-primary);box-shadow:var(--sh-glow)}.recap-card .recap__closed,.recap-card .recap__opened{margin:var(--sp-2) 0}.recap__closed strong{color:var(--c-error-ink)}.recap__opened strong{color:var(--c-success-ink)}.recap__hint{color:var(--text-2);background:var(--surface-2);border-radius:var(--r-md);padding:var(--sp-3);margin:var(--sp-3) 0}.result{position:relative;align-items:center;text-align:center}.result__hero{display:flex;flex-direction:column;align-items:center;gap:var(--sp-2)}.result__title{font-family:var(--font-display);font-size:var(--fs-h1);margin:0;transform:skew(-5deg);text-shadow:0 0 22px color-mix(in srgb,var(--c-accent) 50%,transparent)}.result .card{width:100%;text-align:left}.result__actions{display:flex;flex-wrap:wrap;gap:var(--sp-3);justify-content:center}.confetti{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1}.confetti__p{position:absolute;top:-10%;left:calc(8% + var(--i) * 7%);width:10px;height:14px;border-radius:2px;opacity:.9;background:var(--c-accent);animation:confetti-fall 1.6s var(--ease-back) infinite;animation-delay:calc(var(--i) * .12s)}.confetti__p:nth-child(3n){background:var(--c-secondary)}.confetti__p:nth-child(3n+1){background:var(--c-primary)}@keyframes confetti-fall{0%{transform:translateY(-20px) rotate(0);opacity:0}20%{opacity:1}to{transform:translateY(120vh) rotate(320deg);opacity:0}}.journey{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-2)}.journey__node{display:flex;align-items:center;gap:var(--sp-3);background:var(--surface-2);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);border-left:4px solid var(--jc, var(--c-primary));opacity:.6;transition:opacity var(--motion-micro),box-shadow var(--motion-micro)}.journey__node.is-lit{opacity:1;box-shadow:0 0 0 2px color-mix(in srgb,var(--jc) 35%,transparent),0 0 18px color-mix(in srgb,var(--jc) 30%,transparent)}.journey__node.is-locked{opacity:.45}.journey__icon{color:var(--jc, var(--c-primary));display:inline-flex;filter:drop-shadow(0 0 6px color-mix(in srgb,var(--jc, var(--c-primary)) 50%,transparent))}.journey__text{display:flex;flex-direction:column}.journey__name{font-weight:800}.journey__tool{font-size:var(--fs-small);color:var(--text-1);font-weight:700}.badges{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--sp-2)}.badge{display:inline-flex;align-items:center;gap:6px;position:relative;background:color-mix(in srgb,var(--bc, var(--c-primary)) 14%,var(--surface));color:var(--text-1);border:1.5px solid color-mix(in srgb,var(--bc, var(--c-primary)) 50%,var(--border));border-radius:var(--radius-cut-r);padding:6px var(--sp-4);font-size:var(--fs-small);font-weight:800}.badge__icon{color:var(--bc, var(--c-primary));display:inline-flex}.badge--earned{animation:badge-pop var(--motion-emphasis) var(--ease-back)}.badge--earned:before{content:"";position:absolute;inset:-3px;border-radius:inherit;border:2px solid var(--bc, var(--c-primary));opacity:0;animation:badge-burst var(--motion-burst) var(--ease-elastic)}@keyframes badge-pop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}@keyframes badge-burst{0%{transform:scale(.7);opacity:.7}to{transform:scale(1.7);opacity:0}}.progress__actions{display:flex;flex-wrap:wrap;gap:var(--sp-3)}.prog__note{text-align:center}.setting__row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-2) 0}.setting__label{font-weight:700}.setting__desc{color:var(--text-2);font-size:var(--fs-small);margin:0 0 var(--sp-2)}.segmented{display:inline-flex;background:var(--surface-2);border-radius:var(--r-md);padding:4px;gap:4px;flex-wrap:wrap;border:1px solid var(--border)}.segmented button{display:inline-flex;align-items:center;gap:6px;border:none;background:transparent;cursor:pointer;min-height:40px;padding:0 var(--sp-4);border-radius:var(--r-sm);font-weight:700;color:var(--text-2);font-family:var(--font-body);font-size:var(--fs-small);transition:color var(--motion-micro),background var(--motion-micro),box-shadow var(--motion-micro)}.segmented button.is-active{background:var(--c-primary);color:#fff;box-shadow:var(--sh-sm)}.switch{width:52px;height:30px;border-radius:var(--r-pill);border:none;cursor:pointer;background:var(--border);position:relative;transition:background var(--motion-micro) var(--ease-standard)}.switch[aria-checked=true]{background:var(--fill-success);box-shadow:0 0 14px color-mix(in srgb,var(--c-success) 45%,transparent)}.switch__knob{position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;transition:transform var(--motion-micro) var(--ease-standard);box-shadow:var(--sh-sm)}.switch[aria-checked=true] .switch__knob{transform:translate(22px)}.parental{margin-top:var(--sp-3);padding:var(--sp-3);background:var(--surface-2);border-radius:var(--r-md);border-left:4px solid var(--c-warning)}.parental__row{display:flex;gap:var(--sp-2);margin-top:var(--sp-2)}.parental__row .text-input{flex:1}.settings__back{display:flex}.toast-root{position:fixed;left:50%;transform:translate(-50%);bottom:calc(80px + env(safe-area-inset-bottom));z-index:60;display:flex;flex-direction:column;gap:var(--sp-2);width:min(92vw,420px);pointer-events:none}.toast{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--c-primary);border-radius:var(--radius-cut);box-shadow:var(--sh-md);font-size:var(--fs-small);font-weight:700;animation:toast-in var(--motion-standard) var(--ease-snap);pointer-events:auto}.toast--success{border-left-color:var(--c-success)}.toast--success .toast__icon{color:var(--c-success)}.toast--warning{border-left-color:var(--c-warning)}.toast--warning .toast__icon{color:var(--c-warning)}.toast--error{border-left-color:var(--c-error)}.toast--error .toast__icon{color:var(--c-error)}.toast--info .toast__icon{color:var(--c-primary)}.toast--out{animation:toast-out var(--motion-standard) var(--ease-snap) forwards}.toast__icon{display:inline-flex}@keyframes toast-in{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toast-out{to{opacity:0;transform:translateY(16px) scale(.96)}}.modal-overlay{position:fixed;inset:0;z-index:80;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--bg) 55%,transparent);backdrop-filter:blur(4px);padding:var(--sp-4);padding-bottom:calc(var(--sp-4) + env(safe-area-inset-bottom))}.modal{background:var(--surface);border:1.5px solid color-mix(in srgb,var(--c-primary) 45%,var(--border));border-radius:var(--radius-cut);box-shadow:var(--sh-pop);width:min(92vw,480px);max-height:90dvh;overflow:auto;animation:modal-in var(--motion-standard) var(--ease-spring)}.modal__head{padding:var(--sp-4) var(--sp-5) 0}.modal__title{font-size:var(--fs-h2);margin:0}.modal__body{padding:var(--sp-4) var(--sp-5)}.modal__actions{display:flex;gap:var(--sp-3);padding:0 var(--sp-5) var(--sp-5);flex-wrap:wrap}.modal__actions .btn-primary,.modal__actions .btn-secondary,.modal__actions .btn-ghost{flex:1;min-width:120px}@keyframes modal-in{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.gate__lead{display:inline-flex;align-items:center;gap:6px;color:var(--c-error);font-weight:800;margin:0 0 var(--sp-3)}.gate__list{list-style:none;margin:0 0 var(--sp-3);padding:0;display:flex;flex-direction:column;gap:var(--sp-2)}.gate__check{display:flex;align-items:center;gap:var(--sp-2);background:var(--surface-2);border-radius:var(--r-md);padding:var(--sp-3);cursor:pointer;border:1px solid var(--border)}.gate__check input{width:22px;height:22px;accent-color:var(--c-primary);flex:none}.gate__ic{color:var(--c-primary);display:inline-flex}.gate__label{font-weight:700}.gate__note{color:var(--text-2);font-size:var(--fs-small);margin:0}.crisis__list{margin:var(--sp-2) 0;padding-left:var(--sp-4);line-height:1.9}.crisis__list strong{color:var(--c-error)}.mascot{display:block;overflow:visible}.mascot__halo{animation:mascot-pulse 4s var(--ease-standard) infinite;transform-origin:60px 60px}.mascot__core{transform-origin:60px 60px}.mascot[data-state=idle] .mascot__core{animation:mascot-glitch 6s var(--ease-standard) infinite}.mascot__antenna{animation:mascot-bounce 2.4s var(--ease-standard) infinite;transform-origin:60px 12px}.mascot__ring{transform-origin:60px 60px}.mascot[data-state=thinking] .mascot__ring{animation:mascot-spin 7s linear infinite}.mascot[data-state=thinking] .mascot__bar{transform-origin:center;animation:mascot-bar 1s var(--ease-standard) infinite}.mascot[data-state=thinking] .mascot__bar--2{animation-delay:.15s}.mascot[data-state=thinking] .mascot__bar--3{animation-delay:.3s}.mascot[data-state=thinking] .mascot__arc{opacity:.9;animation:mascot-arc 1.5s linear infinite}.mascot__arc{opacity:0}.mascot[data-state=guessing] .mascot__blocks rect{animation:mascot-block 1.1s var(--ease-back) infinite}.mascot[data-state=guessing] .mascot__blocks rect:nth-child(2){animation-delay:.18s}.mascot[data-state=guessing] .mascot__blocks rect:nth-child(3){animation-delay:.36s}.mascot[data-state=guessing] .mascot__caret{animation:mascot-blink 1s step-end infinite}.mascot[data-state=hint] .mascot__q{animation:mascot-bounce 2s var(--ease-standard) infinite;transform-origin:60px 60px}.mascot[data-state=happy] .mascot__star{transform-origin:76px 50px;animation:mascot-twinkle 1.2s var(--ease-standard) infinite}.mascot[data-state=happy] .mascot__core{animation:mascot-burst .9s var(--ease-elastic)}.mascot[data-state=happy] .mascot__halo{animation:mascot-pulse 2s var(--ease-standard) infinite}.mascot[data-state=caution] .mascot__stop{animation:mascot-pulse 1.4s var(--ease-standard) infinite}.mascot[data-state=caution] .mascot__core{animation:mascot-warn 1.4s var(--ease-standard) infinite}@keyframes mascot-pulse{0%,to{opacity:.35}50%{opacity:.75}}@keyframes mascot-spin{to{transform:rotate(360deg)}}@keyframes mascot-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes mascot-bar{0%,to{transform:scaleY(.6)}50%{transform:scaleY(1.1)}}@keyframes mascot-block{0%{transform:translateY(4px);opacity:.4}40%{transform:translateY(0);opacity:1}to{transform:translateY(0);opacity:1}}@keyframes mascot-blink{0%,to{opacity:1}50%{opacity:0}}@keyframes mascot-twinkle{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.3);opacity:.7}}@keyframes mascot-glitch{0%,93%,to{opacity:1;transform:translate(0)}95%{opacity:.6;transform:translate(2px,-1px) skew(-4deg)}97%{opacity:.85;transform:translate(-2px,1px)}}@keyframes mascot-arc{to{stroke-dashoffset:-44}}@keyframes mascot-burst{0%{transform:scale(.9);filter:brightness(1)}40%{transform:scale(1.04);filter:brightness(1.5)}to{transform:scale(1);filter:brightness(1)}}@keyframes mascot-warn{0%,to{filter:drop-shadow(0 0 0 transparent)}50%{filter:drop-shadow(0 0 10px var(--c-error))}}.bg-field{position:fixed;inset:0;z-index:var(--z-bg);pointer-events:none;overflow:hidden;background:var(--bg)}.bg-field:before{content:"";position:absolute;inset:-20%;background:var(--bg-grad);animation:bg-rotate var(--motion-bg) linear infinite;opacity:.9}.bg-field:after{content:"";position:absolute;inset:0;opacity:.05;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.shard{position:absolute;width:60px;height:60px;z-index:var(--z-shards);background:color-mix(in srgb,var(--c-secondary) 30%,transparent);clip-path:polygon(50% 0,100% 100%,0 100%);animation:shard-float 18s var(--ease-standard) infinite;will-change:transform}.blob{position:absolute;width:38vmax;height:38vmax;border-radius:50%;z-index:var(--z-shards);filter:blur(60px);opacity:.35;will-change:transform}.blob--1{top:-10vmax;left:-8vmax;background:radial-gradient(circle,var(--c-primary),transparent 60%);animation:blob-float 26s var(--ease-standard) infinite}.blob--2{bottom:-14vmax;right:-10vmax;background:radial-gradient(circle,var(--c-secondary),transparent 60%);animation:blob-float 32s var(--ease-standard) infinite reverse}.blob--3{top:30%;right:10%;background:radial-gradient(circle,var(--c-creation, var(--c-primary)),transparent 60%);opacity:.22;animation:blob-float 30s var(--ease-standard) infinite}@keyframes bg-rotate{to{transform:rotate(360deg)}}@keyframes shard-float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-30px) rotate(40deg)}}@keyframes blob-float{0%,to{transform:translate(0) scale(1)}50%{transform:translate(4vmax,3vmax) scale(1.08)}}@media (max-width: 768px){.shard{display:none}.blob{filter:none;opacity:.25}.bg-field:before{animation-play-state:paused}}[data-reveal]{opacity:0;transform:translateY(24px) rotate(-2deg) scale(.96);transition:opacity var(--motion-emphasis) var(--ease-spring),transform var(--motion-emphasis) var(--ease-spring);transition-delay:calc(var(--i, 0) * var(--stagger-step));will-change:opacity,transform}[data-reveal].in-view{opacity:1;transform:none}.app-content.screen-enter{animation:screen-in var(--motion-page) var(--ease-in-out-expo)}@keyframes screen-in{0%{opacity:0;transform:translateY(10px) scale(.99)}to{opacity:1;transform:none}}.screen-wipe{position:fixed;inset:0;z-index:50;pointer-events:none;opacity:.92;transform:scaleY(0);transform-origin:top;background:linear-gradient(135deg,var(--c-primary),var(--c-secondary))}.screen-wipe.is-active{animation:screen-wipe var(--motion-page) var(--ease-in-out-expo)}@keyframes screen-wipe{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}to{transform:scaleY(0);transform-origin:bottom}}.is-correct{animation:correct-pulse var(--motion-burst) var(--ease-elastic)}.is-wrong{animation:wrong-shake var(--motion-standard) var(--ease-elastic)}@keyframes correct-pulse{0%{box-shadow:var(--halo)}to{box-shadow:var(--sh-sm)}}@keyframes wrong-shake{0%,to{transform:translate(0)}25%{transform:translate(-8px)}50%{transform:translate(8px)}75%{transform:translate(-4px)}}[data-contrast=high] .card,[data-contrast=high] .task-card,[data-contrast=high] .station,[data-contrast=high] .sprite-bubble,[data-contrast=high] .modal{border-width:2px}[data-cb=on] .station__icon,[data-cb=on] .journey__icon,[data-cb=on] .trust,[data-cb=on] .toast__icon,[data-cb=on] .badge__icon,[data-cb=on] .steps__dot,[data-cb=on] .switch__knob{outline:2px solid currentColor;outline-offset:2px;border-radius:var(--r-sm)}[data-motion=off] *,[data-motion=reduced] *{animation:none!important}[data-motion=off] *{transition:none!important}[data-motion=off] .confetti,[data-motion=reduced] .confetti,[data-motion=off] .screen-wipe,[data-motion=reduced] .screen-wipe{display:none!important}@media print{.appbar,.appnav,.toast-root,.modal-overlay,.bg-field,.screen-wipe{display:none!important}.app-content{padding:0}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{background:var(--bg)}body{font-family:var(--font-body);font-size:var(--fs-body);line-height:1.6;color:var(--text-1);background:var(--bg);min-height:100dvh;-webkit-font-smoothing:antialiased;overflow-x:clip}#app{min-height:100dvh}[data-motion=off] *,[data-motion=off] *:before,[data-motion=off] *:after{animation:none!important;transition:opacity var(--motion-micro) var(--ease-standard)!important}[data-motion=reduced] *{animation-duration:1ms!important}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}}
