@keyframes actEnter{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}@keyframes actExit{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.03)}}@keyframes textReveal{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes badgeFlyIn{0%{opacity:0;transform:scale(.3) rotate(-10deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes glitch{0%,to{text-shadow:none;transform:none}20%{text-shadow:2px 0 #ff004f,-2px 0 #00ffcc;transform:skew(-2deg)}40%{text-shadow:-2px 0 #ff004f,2px 0 #00ffcc;transform:skew(1deg)}60%{text-shadow:none;transform:none}}@keyframes rankGlow{0%,to{box-shadow:0 0 8px currentColor}50%{box-shadow:0 0 32px currentColor,0 0 64px currentColor}}@keyframes pathCardIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes portalPulse{0%,to{opacity:0;transform:scale(.85)}50%{opacity:.12;transform:scale(1.15)}}.path-card{display:flex;flex-direction:column;gap:.4rem;padding:1.1rem 1.25rem;border:1px solid var(--color-border);border-radius:var(--radius);background:#162016d9;text-decoration:none;transition:border-color .18s,background .18s;opacity:0}.path-card:hover{border-color:var(--color-border-hover);background:var(--color-card);text-decoration:none}.path-card.animate-in{animation:pathCardIn .5s var(--ease-smooth) forwards}@keyframes coldLineIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.coldopen-line{font-size:clamp(1.4rem,4vw,2.4rem);line-height:1.4;font-weight:500;color:var(--color-secondary);text-align:center;animation:coldLineIn .6s ease forwards;letter-spacing:-.01em}.coldopen-line.is-final{color:var(--color-primary);text-shadow:0 0 24px rgba(77,166,255,.35)}@keyframes cardFlipReveal{0%{opacity:0;transform:rotateY(90deg) scale(.85)}to{opacity:1;transform:rotateY(0) scale(1)}}.reveal-card-flip{animation:cardFlipReveal .75s cubic-bezier(.34,1.56,.64,1) forwards}#reveal-rank-card.rank-glow{box-shadow:0 0 16px var(--rank-color, var(--color-accent)),0 0 48px var(--rank-color, var(--color-accent))}.lore-card{width:100%;max-width:26rem;border:1px solid var(--color-border);background:#00000073;backdrop-filter:blur(4px);position:relative}.lore-card:before,.lore-card:after{content:"";position:absolute;width:10px;height:10px;border-color:var(--color-accent);border-style:solid;opacity:.5}.lore-card:before{top:-1px;left:-1px;border-width:2px 0 0 2px}.lore-card:after{bottom:-1px;right:-1px;border-width:0 2px 2px 0}.lore-card-eyebrow{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.25em;text-transform:uppercase;color:var(--color-accent);opacity:.7;padding:.6rem 1rem .5rem;border-bottom:1px solid var(--color-border)}.lore-card-body{padding:.75rem 1rem .9rem;display:flex;flex-direction:column;gap:.6rem}.lore-stat-row{display:flex;align-items:baseline;gap:.75rem;text-align:left}.lore-stat-label{font-family:var(--font-mono);font-size:.58rem;letter-spacing:.1em;color:var(--color-muted);white-space:nowrap;flex-shrink:0;min-width:6.5rem}.lore-stat-value{font-size:.78rem;line-height:1.5;color:var(--color-secondary)}.lore-stat-green{color:var(--color-accent);opacity:.85}.rank-f{color:#6b7280;font-weight:700;font-family:var(--font-mono)}.rank-sss{color:#ff4500;font-weight:700;font-family:var(--font-mono);text-shadow:0 0 8px rgba(255,69,0,.5)}.welcome-path-card{display:flex;flex-direction:column;align-items:center;gap:.35rem;padding:.85rem .5rem;border:1px solid var(--color-border);background:#0000004d;text-decoration:none;transition:border-color .15s,background .15s,transform .15s}.welcome-path-card:hover{border-color:var(--color-accent);background:#4da6ff0a;transform:translateY(-2px);text-decoration:none}.welcome-path-icon{font-size:1.3rem;line-height:1}.welcome-path-label{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.05em;text-transform:uppercase;color:var(--color-secondary);text-align:center;width:100%;word-break:break-word;overflow-wrap:break-word;line-height:1.3}.class-pick-card{display:flex;flex-direction:column;align-items:center;gap:.6rem;padding:1.5rem 1rem;border:1px solid var(--color-border);background:#0006;text-align:center;cursor:none;transition:border-color .18s,background .18s,transform .18s,box-shadow .18s;position:relative}.class-pick-card:before,.class-pick-card:after{content:"";position:absolute;width:8px;height:8px;border-color:var(--color-accent);border-style:solid;opacity:0;transition:opacity .18s}.class-pick-card:before{top:-1px;left:-1px;border-width:2px 0 0 2px}.class-pick-card:after{bottom:-1px;right:-1px;border-width:0 2px 2px 0}.class-pick-card:hover{border-color:var(--color-accent);background:#4da6ff0a;transform:translateY(-3px);box-shadow:0 8px 24px #4da6ff14}.class-pick-card:hover:before,.class-pick-card:hover:after{opacity:1}.class-pick-card.is-chosen{border-color:var(--color-accent);background:#4da6ff12;box-shadow:0 0 20px #4da6ff33}.class-pick-card.is-chosen:before,.class-pick-card.is-chosen:after{opacity:1}.class-pick-icon{font-size:2rem;line-height:1}.class-pick-name{font-size:1rem;font-weight:700;color:var(--color-primary);letter-spacing:.02em}.class-pick-tagline{font-size:.72rem;color:var(--color-muted);line-height:1.5;font-style:italic}.rank-card-scene{perspective:900px;width:260px;height:340px;overflow:visible}.rank-card-3d{width:100%;height:100%;transform-style:preserve-3d;transition:transform .08s ease-out;will-change:transform}.rank-card-face{position:absolute;inset:0;backface-visibility:hidden}.rank-card-front{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:2rem 1.5rem;background:linear-gradient(160deg,#000000b3,#00000073);border:1px solid var(--rank-color, var(--color-accent));box-shadow:0 0 0 1px #00000080,0 0 30px -6px var(--rank-color, var(--color-accent)),inset 0 0 40px -20px var(--rank-color, var(--color-accent))}.rank-card-corner{position:absolute;width:10px;height:10px;border-color:var(--rank-color, var(--color-accent));border-style:solid}.rank-card-corner.tl{top:-1px;left:-1px;border-width:2px 0 0 2px}.rank-card-corner.tr{top:-1px;right:-1px;border-width:2px 2px 0 0}.rank-card-corner.bl{bottom:-1px;left:-1px;border-width:0 0 2px 2px}.rank-card-corner.br{bottom:-1px;right:-1px;border-width:0 2px 2px 0}.rank-card-eyebrow{font-family:var(--font-mono);font-size:.55rem;letter-spacing:.35em;text-transform:uppercase;color:var(--color-muted)}.rank-card-letter{font-family:var(--font-mono);font-size:clamp(4.5rem,16vw,6rem);font-weight:900;line-height:1;letter-spacing:-.02em;color:var(--rank-color, var(--color-accent));text-shadow:0 0 20px var(--rank-color, var(--color-accent)),0 0 60px var(--rank-color, var(--color-accent));padding:.1em .2em}.rank-card-title{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--rank-color, var(--color-accent));opacity:.8}.rank-card-sub{font-family:var(--font-mono);font-size:.5rem;letter-spacing:.3em;text-transform:uppercase;color:var(--color-muted);margin-top:.5rem;opacity:.5}#particles-canvas{contain:strict}@keyframes bossShake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-5px)}80%{transform:translate(4px)}}.boss-shake{animation:bossShake .38s cubic-bezier(.36,.07,.19,.97)}#boss-reaction.is-correct{color:#4da6ff}#boss-reaction.is-wrong{color:#f44}.boss-option.is-correct-answer{border-color:#4da6ff!important;color:#4da6ff!important;background:#4da6ff14!important}.boss-option.is-wrong-pick{border-color:#f44!important;color:#f44!important;background:#ff444414!important}*,*:before,*:after{cursor:none!important}body{overflow-x:hidden}#act-welcome,#act1,#act2,#act3{overflow-y:auto;overscroll-behavior-y:contain}
