.welcomeScene{--welcome-ease:cubic-bezier(.22, 1, .36, 1);isolation:isolate;background:var(--canvas);min-height:100svh;position:relative;overflow:clip}.welcomeScene:before{z-index:-1;content:"";background:linear-gradient(180deg, color-mix(in srgb, var(--canvas) 84%, transparent), var(--canvas)), var(--theme-arena-backdrop) center top / cover;pointer-events:none;position:absolute;inset:0}.welcomeHeader{width:min(100% - 64px,1240px);padding:max(24px, env(safe-area-inset-top)) 0 20px;justify-content:space-between;align-items:center;gap:16px;margin:auto;display:flex}.welcomeBrand{color:var(--text-primary);font:700 20px var(--font-display);letter-spacing:-.04em;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.welcomeBrandMark{background:var(--theme-logo-mark) center / contain no-repeat;width:32px;height:32px;display:block}.welcomeHeaderActions,.welcomeLanguage{align-items:center;gap:16px;display:flex}.welcomeLanguage{gap:2px}.welcomeLanguage button{min-width:38px;min-height:44px;color:var(--text-muted);font:600 12px var(--font-ui);cursor:pointer;background:0 0;border:0}.welcomeLanguage button[aria-pressed=true]{color:var(--text-primary);text-underline-offset:6px;text-decoration:none}.welcomeExit{color:var(--text-secondary);text-underline-offset:4px;font-size:13px}.welcomeProgress{justify-content:center;gap:28px;max-width:calc(100% - 32px);margin:14px auto 0;display:flex}.welcomeProgress>span{color:var(--text-muted);align-items:center;gap:8px;font-size:12px;display:flex}.welcomeProgress i{background:var(--border-strong);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);width:7px;height:8px}.welcomeProgress .isReached{color:var(--text-primary)}.welcomeProgress .isReached i{background:var(--prestige)}.welcomeMain{width:min(100% - 64px,1100px);padding-bottom:max(40px, env(safe-area-inset-bottom));margin:26px auto 0}.welcomeBack{min-height:44px;color:var(--text-secondary);font:500 13px var(--font-ui);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:inline-flex}.welcomeBack svg{width:16px;height:16px;transform:rotate(90deg)}.welcomeStage{animation:welcomeStageEnter .5s var(--welcome-ease) both}.welcomeHeading{text-align:center;max-width:780px;margin:18px auto 28px}.welcomeEyebrow{color:var(--text-secondary);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:600}.welcomeHeading h1,.welcomeIntroCopy h1{font-family:var(--font-display);letter-spacing:-.045em;text-wrap:balance;margin:12px 0 16px;font-size:clamp(28px,3.6vw,44px);line-height:1.15}.welcomeHeading>p:last-child{max-width:600px;color:var(--text-secondary);text-wrap:balance;margin:0 auto;font-size:15px;line-height:1.65}.welcomeStage h1:focus{outline:none}.welcomeMainIntro{width:min(100% - 64px,1240px);margin-top:0}.welcomeMainIntro .welcomeStage{grid-template-columns:1fr 1fr;align-items:center;column-gap:18px;min-height:calc(100svh - 105px);display:grid}.welcomeIntroCopy{z-index:1;padding-block:36px;position:relative}.welcomeIntroCopy h1{white-space:pre-line;font-size:clamp(38px,4.8vw,66px)}.welcomeLead{max-width:480px;color:var(--text-secondary);margin:22px 0 30px;font-size:16px;line-height:1.8}.welcomePrimary{justify-content:center;align-items:center;gap:32px;min-height:52px;padding-inline:26px;font-size:15px;text-decoration:none;display:inline-flex}.welcomePrimary>span{font-size:20px}.welcomeConstellation{aspect-ratio:1;width:100%;max-width:590px;margin:auto;position:relative}.welcomeOrbit{border:1px solid color-mix(in srgb, var(--prestige) 25%, transparent);border-radius:50%;position:absolute;inset:10%;transform:rotateX(25deg)rotate(-20deg)}.welcomeOrbitInner{opacity:.7;border-style:dashed;inset:27%}.welcomeConstellationCore{place-items:center;display:grid;position:absolute;inset:40%}.welcomeConstellationCore .welcomeBrandMark{opacity:.65;width:66%;height:66%}.welcomeSatellite{width:29%;animation:welcomeSatelliteEnter .9s var(--welcome-ease) both;animation-delay:calc(.12s + var(--order) * 85ms);justify-items:center;display:grid;position:absolute}.welcomeSatellite .gameArt{aspect-ratio:1;width:100%;height:auto;transition:transform .45s var(--welcome-ease);display:block}.welcomeSatellite:hover .gameArt{transform:translateY(-7px)rotate(-3deg)}.welcomeSatellite>span:last-child{font:600 12px var(--font-display);color:var(--text-secondary);margin-top:-3%}.welcomeSatellite0{top:2%;left:12%}.welcomeSatellite1{top:9%;right:8%}.welcomeSatellite2{top:41%;right:-1%}.welcomeSatellite3{bottom:0;right:21%}.welcomeSatellite4{bottom:9%;left:4%}.welcomeSatellite5{top:31%;left:-7%}.welcomePillars{border-top:1px solid var(--border-subtle);grid-column:1/-1;grid-template-columns:repeat(3,1fr);gap:32px;width:100%;padding:24px 0 30px;display:grid}.welcomePillars>div{gap:14px;display:flex}.welcomePillarNumber{color:var(--theme-accent);font:500 11px var(--font-mono);padding-top:3px}.welcomePillars h2{font:700 15px var(--font-display);margin:0 0 8px}.welcomePillars p{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.6}.welcomeIntentGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:36px 0;display:grid}.welcomeChoice{border:1px solid var(--border-subtle);background:color-mix(in srgb, var(--surface-2) 88%, transparent);min-width:0;color:var(--text-primary);font:inherit;text-align:center;cursor:pointer;animation:welcomeCardEnter .62s var(--welcome-ease) both;animation-delay:calc(var(--order) * 45ms);transition:background .2s, border-color .2s, box-shadow .24s, transform .32s var(--welcome-ease);border-radius:16px;position:relative}.welcomeChoice:hover:not(:disabled){border-color:var(--border-strong);transform:translateY(-5px)}.welcomeChoice:active:not(:disabled){transform:translateY(1px)scale(.98)}.welcomeChoice[aria-pressed=true]{border-color:var(--prestige);background:color-mix(in srgb, var(--prestige) 8%, var(--surface-2));box-shadow:inset 0 0 0 1px var(--prestige), 0 8px 24px color-mix(in srgb, var(--theme-shadow) 7%, transparent)}.welcomeChoice:disabled{opacity:.42;cursor:default}.welcomeIntent{flex-direction:column;align-items:center;padding:24px 16px 28px;display:flex}.welcomeChoiceArt{aspect-ratio:1;width:100%;display:block}.welcomeChoiceArt .gameArt{width:100%;height:100%;display:block}.welcomeIntent .welcomeChoiceArt{max-width:160px}.welcomeChoiceCopy{flex-direction:column;gap:12px;display:flex}.welcomeChoice strong{font-family:var(--font-display);font-size:15px;line-height:1.4}.welcomeChoice small{color:var(--text-secondary);font-size:12px;line-height:1.6}.welcomeCheck{isolation:isolate;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);background:var(--border-strong);width:22px;height:25px;transition:background .18s, transform .3s var(--welcome-ease);place-items:center;display:grid;position:absolute;top:10px;right:10px}.welcomeCheck:before{content:"";z-index:-1;clip-path:inherit;background:var(--surface-2);transition:background .18s;position:absolute;inset:1.2px}.welcomeChoice[aria-pressed=true] .welcomeCheck:before{background:var(--text-primary)}.welcomeCheck svg{opacity:0;width:14px;height:14px;transition:opacity .18s, transform .3s var(--welcome-ease);transform:scale(.4)}.welcomeChoice[aria-pressed=true] .welcomeCheck{background:var(--text-primary);color:var(--text-inverse);transform:scale(1.08)}.welcomeChoice[aria-pressed=true] .welcomeCheck svg{opacity:1;transform:none}.welcomeActions{flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;margin-top:28px;display:flex}.welcomeTextButton{min-height:44px;color:var(--text-secondary);font:500 13px var(--font-ui);border:0;border:1px solid var(--border-subtle);padding:6px 8px;cursor:pointer;background:0 0;border-radius:999px;padding-inline:16px;text-decoration:none}.welcomeTextButton:disabled{opacity:.4;cursor:default}.welcomeFacultyGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:780px;margin:32px auto;display:grid}.welcomeFaculty{align-content:start;justify-items:center;gap:12px;padding:18px 12px;display:grid}.welcomeFaculty img{object-fit:contain;width:100px;height:100px}.welcomeSelectionCount{text-align:center;color:var(--text-secondary);font-size:13px}.welcomeSession{flex-wrap:wrap;justify-content:center;gap:24px;max-width:760px;margin:48px auto 36px;padding:0;list-style:none;display:flex}.welcomeSessionCard{border:1px solid var(--border-subtle);background:color-mix(in srgb, var(--surface-2) 88%, transparent);width:min(300px,50% - 12px);animation:welcomeSessionEnter .9s var(--welcome-ease) both;animation-delay:calc(.14s + var(--order) * .3s);border-radius:16px;align-content:start;justify-items:center;padding:20px 24px 30px;display:grid}.welcomeSessionIndex{color:var(--text-secondary);font-size:11px}.welcomeSessionCard>.gameArt{aspect-ratio:1;width:100%;max-width:220px;height:auto;margin:10px auto}.welcomeSessionCard>strong{font:700 22px var(--font-display)}.welcomeSessionCard>small{color:var(--text-secondary);text-align:center;margin-top:8px;font-size:12px}.welcomeSessionDone{color:var(--success);align-items:center;gap:6px;margin-top:12px;font-size:12px;display:flex}.welcomeSessionDone svg{width:16px;height:16px}.welcomeSaving{text-align:center;align-content:center;justify-items:center;gap:24px;min-height:55svh;display:grid}.welcomeSaving>.welcomeBrandMark{width:80px;height:80px;animation:welcomeStageEnter .8s var(--welcome-ease) both}.welcomeSaving h1{font:700 24px var(--font-display)}.welcomeError{color:var(--danger);text-align:center;padding:16px}.welcomeError p{margin-bottom:18px}.welcomeAccount{width:min(100% - 32px,1100px);margin:24px auto}.welcomeAccountLead{max-width:520px;color:var(--text-secondary);text-align:center;margin:0 auto;line-height:1.6}.welcomeAccount .authShell{min-height:auto}.welcomeScene :is(button,a):focus-visible{outline:2px solid var(--prestige);outline-offset:4px}@keyframes welcomeStageEnter{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes welcomeCardEnter{0%{opacity:0;translate:0 28px;scale:.94}to{opacity:1;translate:0;scale:1}}@keyframes welcomeSatelliteEnter{0%{opacity:0;transform:translateY(35px)scale(.75)rotate(-8deg)}to{opacity:1;transform:none}}@keyframes welcomeSessionEnter{0%{opacity:0;transform:translateY(-28px)scale(.85)}to{opacity:1;transform:none}}@media (min-width:1600px){.welcomeMainIntro .welcomeStage{min-height:min(900px,100svh - 105px)}}@media (max-width:800px){.welcomeHeader,.welcomeMain{width:calc(100% - 32px)}.welcomeMainIntro .welcomeStage{column-gap:0}.welcomeIntroCopy h1{font-size:clamp(32px,5.3vw,44px)}.welcomeLead{font-size:14px}.welcomeIntentGrid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:600px;margin-inline:auto}.welcomeIntent{flex-direction:row;padding:18px 20px 18px 8px}.welcomeIntent .welcomeChoiceArt{flex:none;width:88px}.welcomeChoiceCopy{text-align:left;gap:8px}.welcomeChoiceCopy strong{font-size:13px}.welcomeChoiceCopy small{font-size:11px}.welcomePillars{gap:16px}}@media (max-width:580px){.welcomeHeader{padding-top:max(16px, env(safe-area-inset-top));gap:8px}.welcomeBrand{gap:7px;font-size:17px}.welcomeBrandMark{width:26px;height:26px}.welcomeHeaderActions{gap:8px}.welcomeExit{white-space:nowrap;font-size:12px}.welcomeLanguage button{min-width:28px;font-size:11px}.welcomeMain{margin-top:12px}.welcomeMainIntro{margin-top:0}.welcomeMainIntro .welcomeStage{grid-template-columns:1fr;min-height:auto}.welcomeIntroCopy{text-align:center;padding:22px 4px 0}.welcomeIntroCopy h1{font-size:clamp(30px,8vw,42px)}.welcomeIntroCopy .welcomeEyebrow{font-size:10px}.welcomeLead{max-width:380px;margin:18px auto 22px;line-height:1.7}.welcomeConstellation{width:92%;max-width:360px;margin-block:16px 8px}.welcomeSatellite>span:last-child{font-size:10px}.welcomePillars{grid-template-columns:1fr;gap:20px;margin-top:12px;padding:24px 8px}.welcomePillars h2{margin-bottom:4px}.welcomeProgress{gap:12px;margin-top:6px}.welcomeProgress>span{gap:5px;font-size:10px}.welcomeProgress i{width:5px;height:6px}.welcomeHeading{margin-top:12px;margin-bottom:24px}.welcomeHeading h1{font-size:clamp(25px,7vw,34px)}.welcomeHeading>p:last-child{font-size:13px}.welcomeIntentGrid{gap:12px;margin-block:24px}.welcomeIntent{flex-direction:column;padding:14px 12px 18px}.welcomeIntent .welcomeChoiceArt{width:min(100%,120px)}.welcomeChoiceCopy{text-align:center}.welcomeCheck{width:20px;height:20px;top:8px;right:8px}.welcomeFacultyGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-block:24px}.welcomeFaculty{gap:8px;padding:16px 10px}.welcomeFaculty img{width:86px;height:86px}.welcomeFaculty strong{font-size:12px}.welcomeActions{flex-direction:column;gap:8px;margin-top:22px}.welcomeActions>.welcomePrimary{width:min(100%,340px)}.welcomeSession{gap:12px;margin-block:32px 24px}.welcomeSessionCard{width:calc(50% - 6px);padding:16px 10px 22px}.welcomeSessionCard>strong{font-size:18px}.welcomeSessionCard>small{font-size:10px}}@media (prefers-reduced-motion:reduce){.welcomeScene *,.welcomeScene :before,.welcomeScene :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.welcomeChoice:hover:not(:disabled),.welcomeChoice:active:not(:disabled),.welcomeSatellite:hover .gameArt{transform:none}}.welcomeScene a{text-decoration:none}.welcomeExit{border:1px solid var(--border-subtle);border-radius:999px;padding:8px 12px}.welcomeLanguage button[aria-pressed=true]{background:var(--surface-2);border-radius:999px}.welcomeTextButton:hover,.welcomeExit:hover{background:var(--surface-2);color:var(--text-primary)}.welcomeTextButton[aria-pressed=true]{border-color:var(--prestige);color:var(--text-primary)}.welcomeAffinityArt{flex:none;width:min(100%,160px);height:156px;margin-bottom:12px;display:block;position:relative}.welcomeAffinityArt img{object-fit:contain;width:100%;height:100%;transition:transform .44s var(--welcome-ease)}.welcomeAffinityArt[data-paired=true] img{width:72%;height:72%;position:absolute}.welcomeAffinityArt[data-paired=true] img:first-child{top:0;left:0}.welcomeAffinityArt[data-paired=true] img:last-child{bottom:0;right:0}.welcomeAffinity[aria-pressed=true] .welcomeAffinityArt img:first-child{transform:translateY(-4px)rotate(-4deg)}.welcomeAffinity[aria-pressed=true] .welcomeAffinityArt img:last-child{transform:translateY(-4px)rotate(4deg)}.welcomeFaculty small{max-width:220px;font-size:11px}@media (min-width:581px) and (max-width:800px){.welcomeAffinityArt{width:88px;height:110px;margin:0 8px 0 0}}@media (max-width:580px){.welcomeAffinityArt{width:120px;height:124px}}@media (prefers-reduced-motion:reduce){.welcomeAffinity[aria-pressed=true] .welcomeAffinityArt img{transform:none}}.welcomeQuietActions{flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 18px;display:inline-flex}.welcomeActions:has(.welcomeQuietActions){flex-direction:column;align-items:center;gap:10px}.welcomeQuietActions .welcomeTextButton{border:0;align-items:center;padding-inline:6px;font-weight:600;display:inline-flex}.welcomeQuietActions .welcomeTextButton:hover{color:var(--text-primary)}
