:root{--void-black: #04000d;--deep-purple: #0d0020;--dark-purple: #150030;--mid-purple: #2a0055;--accent-purple: #6f00ff;--bright-purple: #aa44ff;--glow-purple: #cc77ff;--pink-accent: #ff00dd;--text-primary: #e8d5ff;--text-secondary: #9977bb;--text-muted: #553366;--card-bg: rgba(20, 0, 40, .85);--card-border: rgba(111, 0, 255, .25);--card-hover-border: rgba(170, 68, 255, .6);--scrollbar-track: rgba(20, 0, 40, .8);--font-display: "Cinzel Decorative", serif;--font-heading: "Cinzel", serif;--font-body: "Inter", sans-serif;--transition-fast: .15s ease;--transition-mid: .3s ease;--transition-slow: .6s ease;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--glow-sm: 0 0 10px rgba(111, 0, 255, .4);--glow-md: 0 0 20px rgba(111, 0, 255, .5), 0 0 40px rgba(111, 0, 255, .2);--glow-lg: 0 0 30px rgba(170, 68, 255, .6), 0 0 60px rgba(111, 0, 255, .4)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--void-black);color:var(--text-primary);overflow-x:hidden;min-height:100vh}#root{min-height:100vh}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--accent-purple),var(--pink-accent));border-radius:3px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--bright-purple),var(--pink-accent))}.glow-text{background:linear-gradient(135deg,var(--glow-purple),var(--pink-accent));-webkit-background-clip:text;background-clip:text;color:transparent}.section-heading{font-family:var(--font-heading);font-size:clamp(1.6rem,4vw,2.6rem);text-align:center;letter-spacing:.12em;text-transform:uppercase;background:linear-gradient(135deg,var(--glow-purple) 0%,var(--pink-accent) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;position:relative;padding-bottom:1.2rem;margin-bottom:2.5rem}.section-heading:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:120px;height:1px;background:linear-gradient(90deg,transparent,var(--accent-purple),transparent);box-shadow:var(--glow-sm)}.btn-primary{font-family:var(--font-heading);font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;padding:.6rem 1.4rem;background:linear-gradient(135deg,#6f00ff33,#aa44ff26);border:1px solid var(--card-hover-border);color:var(--glow-purple);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-mid);position:relative;overflow:hidden}.btn-primary:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#6f00ff59,#f0d3);opacity:0;transition:opacity var(--transition-mid)}.btn-primary:hover:before{opacity:1}.btn-primary:hover{box-shadow:var(--glow-sm);border-color:var(--glow-purple);color:#fff}#particleCanvas{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulseGlow{0%,to{box-shadow:var(--glow-sm)}50%{box-shadow:var(--glow-md)}}@keyframes glowText{0%,to{text-shadow:0 0 12px rgba(170,68,255,.4)}50%{text-shadow:0 0 24px rgba(170,68,255,.8),0 0 48px rgba(111,0,255,.4)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.page-section{position:relative;z-index:1;padding:6rem 2rem 4rem;max-width:1400px;margin:0 auto}.loading-screen{position:fixed;inset:0;z-index:99999;background:radial-gradient(ellipse at center,#0a001f,#000);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;overflow:hidden;transition:opacity .7s ease,transform .7s ease}.loading-screen.fade-out{opacity:0;transform:scale(1.05);pointer-events:none}.ls-bg-radial{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 40%,#220044aa 0%,transparent 65%);pointer-events:none}.ls-glyphs{position:absolute;inset:0;pointer-events:none;z-index:2}.ls-glyph{position:absolute;transform:translate(-50%,-50%);font-family:Segoe UI,sans-serif;font-size:22px;background:linear-gradient(120deg,#ff7be5,#9d8dff,#00ffe0);background-clip:text;-webkit-background-clip:text;color:transparent;animation:glyphPulse 3s ease-in-out infinite;animation-delay:var(--glyph-delay, 0s);pointer-events:none;-webkit-user-select:none;user-select:none;will-change:left,top;transition:text-shadow .15s ease}.ls-glyph.flash{background:none!important;background-clip:unset!important;-webkit-background-clip:unset!important;color:#fff!important;text-shadow:0 0 8px #ffffff,0 0 20px #cc99ff,0 0 40px #aa55ff,0 0 70px #8833ff!important;animation-play-state:paused;transform:translate(-50%,-50%) scale(1.25)!important;transition:transform .1s ease,color .1s ease,text-shadow .1s ease}@keyframes glyphPulse{0%,to{opacity:.55}50%{opacity:.9}}.ls-orb-wrap{position:relative;z-index:3}.ls-orb{width:200px;height:200px;border-radius:50%;background:#ffffff0a;box-shadow:0 0 60px #b17aff,inset 0 0 30px #8e44ff,0 0 120px #8c00ff4d;overflow:hidden;position:relative;flex-shrink:0;animation:orbPulse 4s ease-in-out infinite}@keyframes orbPulse{0%,to{box-shadow:0 0 50px #b17aff,inset 0 0 25px #8e44ff}50%{box-shadow:0 0 80px #c8f,inset 0 0 40px #a4f,0 0 120px #a4f6}}.ls-swirl{position:absolute;width:500px;height:500px;background:conic-gradient(#f0f,#50f,#0df,#f0f);border-radius:50%;top:-150px;left:-150px;opacity:.16;animation:swirlSpin 10s linear infinite}.ls-swirl--2{background:conic-gradient(#0df,#f0f,#50f,#0df);opacity:.1;animation:swirlSpin 16s linear infinite reverse;top:-120px;left:-120px}@keyframes swirlSpin{to{transform:rotate(360deg)}}.ls-orb-ring{position:absolute;border-radius:50%;border:1px solid rgba(170,100,255,.25);top:50%;left:50%}.ls-orb-ring--1{width:130px;height:130px;margin:-65px 0 0 -65px;animation:ringOrbit 6s linear infinite}.ls-orb-ring--2{width:170px;height:170px;margin:-85px 0 0 -85px;border-color:#ff64dc26;animation:ringOrbit 10s linear infinite reverse}@keyframes ringOrbit{to{transform:rotate(360deg) scaleX(.35)}}.ls-star{position:absolute;background:#fff;border-radius:50%;animation:twinkle 2s infinite alternate}@keyframes twinkle{0%{opacity:.2;transform:scale(.8)}to{opacity:1;transform:scale(1.6)}}.ls-glow-symbol{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:28px;color:#fcf;text-shadow:0 0 20px #ff99ff,0 0 40px #cc66ff;animation:symbolPulse 3s infinite;-webkit-user-select:none;user-select:none;z-index:2}@keyframes symbolPulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.85}50%{transform:translate(-50%,-50%) scale(1.2);opacity:1}}.ls-phrase{position:relative;z-index:3;font-family:Cinzel,serif;font-size:.95rem;letter-spacing:.12em;color:#bbf;text-shadow:0 0 12px #5500aa;animation:phraseBreath 2.2s ease-in-out infinite;min-height:1.5rem;text-align:center}.ls-arrow{color:#84f;margin-right:.3rem}@keyframes phraseBreath{0%,to{opacity:.65}50%{opacity:1}}.ls-progress-wrap{position:relative;z-index:3;width:280px;height:8px;background:#ffffff12;border-radius:4px;overflow:visible;box-shadow:0 0 10px #50f6}.ls-progress-bar{height:100%;background:linear-gradient(90deg,#9f5eff,#f0d,#9f5eff);background-size:200% 100%;border-radius:4px;box-shadow:0 0 10px #a6f,0 0 20px #a4f6;animation:barShimmer 2s linear infinite;transition:width .3s ease;position:relative;overflow:hidden}@keyframes barShimmer{0%{background-position:0% center}to{background-position:200% center}}.ls-progress-spark{position:absolute;top:50%;transform:translate(-50%,-50%);width:6px;height:14px;border-radius:3px;background:#fff;box-shadow:0 0 8px #fff,0 0 16px #c9f;pointer-events:none;transition:left .3s ease}.ls-progress-label{position:relative;z-index:3;font-size:.7rem;color:#aa64ff99;letter-spacing:.1em;font-family:Cinzel,serif;margin-top:-.5rem}.main-nav{position:fixed;top:0;left:0;right:0;z-index:4000;background:#04000dbf;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(111,0,255,.12);transition:background .3s ease,border-color .3s ease,box-shadow .3s ease}.main-nav.scrolled{background:#04000df2;border-bottom-color:#6f00ff38;box-shadow:0 4px 32px #0006}.nav-inner{max-width:1400px;margin:0 auto;padding:0 2rem;height:62px;display:flex;align-items:center;justify-content:space-between;gap:1rem}.nav-logo{display:flex;align-items:center;gap:.65rem;min-width:170px;-webkit-user-select:none;user-select:none}.nav-logo-symbol{font-size:1.25rem;color:var(--accent-purple);filter:drop-shadow(0 0 7px var(--accent-purple));animation:symbolSpin 10s linear infinite;display:inline-block}@keyframes symbolSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.nav-logo-text-wrap{display:flex;flex-direction:column;gap:.05rem}.nav-logo-text{font-family:var(--font-heading);font-size:.98rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-primary);line-height:1}.nav-logo-sub{font-size:.58rem;letter-spacing:.12em;color:var(--text-muted);text-transform:uppercase;line-height:1}.nav-tabs{display:flex;align-items:center;gap:.1rem}.nav-tab{position:relative;display:flex;align-items:center;gap:.4rem;padding:.45rem 1rem;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;font-family:var(--font-heading);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;transition:color var(--transition-fast),background var(--transition-fast);overflow:hidden}.nav-tab svg{opacity:.6;transition:opacity var(--transition-fast)}.nav-tab:hover{color:var(--text-primary);background:#6f00ff14}.nav-tab:hover svg{opacity:1}.nav-tab.active{color:var(--glow-purple)}.nav-tab.active svg{opacity:1;color:var(--glow-purple)}.nav-tab-indicator{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:60%;height:2px;background:linear-gradient(90deg,transparent,var(--glow-purple),transparent);border-radius:1px;animation:indicatorIn .25s ease}@keyframes indicatorIn{0%{width:0;opacity:0}to{width:60%;opacity:1}}.nav-back-btn{display:flex;align-items:center;gap:.5rem;padding:.45rem 1.1rem;background:#6f00ff1a;border:1px solid rgba(111,0,255,.28);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-family:var(--font-heading);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;transition:all var(--transition-fast)}.nav-back-btn:hover{background:#6f00ff38;border-color:var(--accent-purple);color:var(--text-primary)}.nav-hamburger{display:none;flex-direction:column;gap:5px;background:none;border:1px solid rgba(111,0,255,.25);border-radius:var(--radius-sm);padding:8px 10px;cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.nav-hamburger:hover{background:#6f00ff1a;border-color:var(--accent-purple)}.nav-hamburger span{display:block;width:20px;height:2px;background:var(--text-secondary);border-radius:1px;transition:all .25s ease;transform-origin:center}.nav-hamburger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-hamburger.open span:nth-child(2){opacity:0;transform:scaleX(0)}.nav-hamburger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-mobile-menu{display:none;flex-direction:column;padding:.5rem 1.5rem 1rem;gap:.2rem;border-top:1px solid rgba(111,0,255,.1);background:#04000dfa;overflow:hidden;max-height:0;opacity:0;transition:max-height .35s ease,opacity .25s ease,padding .25s ease}.nav-mobile-menu.open{max-height:400px;opacity:1}.nav-mobile-tab{display:flex;align-items:center;gap:.7rem;padding:.75rem 1rem;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-family:var(--font-heading);font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;text-align:left;transition:all var(--transition-fast)}.nav-mobile-tab:hover{background:#6f00ff1a;color:var(--text-primary)}.nav-mobile-tab.active{color:var(--glow-purple);background:#6f00ff14}@media(max-width:700px){.nav-tabs{display:none}.nav-hamburger,.nav-mobile-menu{display:flex}.nav-logo{min-width:0}}.hero-section{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:6rem 2rem 4rem}.hero-glow-1{position:absolute;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle,rgba(111,0,255,.12) 0%,transparent 70%);top:50%;left:50%;transform:translate(-50%,-55%);pointer-events:none;animation:glowBreathe 6s ease-in-out infinite}.hero-glow-2{position:absolute;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(255,0,221,.07) 0%,transparent 70%);top:50%;left:50%;transform:translate(-30%,-40%);pointer-events:none;animation:glowBreathe 8s ease-in-out infinite reverse}@keyframes glowBreathe{0%,to{transform:translate(-50%,-55%) scale(1);opacity:.6}50%{transform:translate(-50%,-55%) scale(1.12);opacity:1}}.hero-content{position:relative;z-index:2;text-align:center;max-width:800px;animation:fadeInUp .8s ease both}.hero-tag{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-purple);font-family:var(--font-body);margin-bottom:1.2rem;animation:fadeInUp .6s ease .1s both}.hero-title{font-family:var(--font-display);font-size:clamp(2.2rem,8vw,5rem);line-height:1.1;margin-bottom:1.5rem;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.5rem;animation:fadeInUp .6s ease .2s both}.hero-title-enigma{background:linear-gradient(135deg,#ffffff 0%,var(--glow-purple) 50%,var(--pink-accent) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 20px rgba(170,68,255,.5))}.hero-title-divider{color:#6f00ff66;font-weight:100}.hero-title-sub{background:linear-gradient(135deg,var(--glow-purple),var(--text-secondary));-webkit-background-clip:text;background-clip:text;color:transparent;font-size:clamp(1.4rem,4vw,2.8rem)}.hero-desc{font-size:clamp(.88rem,2vw,1rem);color:var(--text-secondary);line-height:1.8;margin-bottom:2rem;animation:fadeInUp .6s ease .3s both}.hero-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:3rem;animation:fadeInUp .6s ease .4s both}.hero-btn-primary{display:flex;align-items:center;gap:.6rem;padding:.85rem 2rem;background:linear-gradient(135deg,#6f00ff4d,#a4f3);border:1px solid rgba(111,0,255,.6);color:var(--glow-purple);border-radius:var(--radius-md);cursor:pointer;font-family:var(--font-heading);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;transition:all .3s ease;position:relative;overflow:hidden}.hero-btn-primary:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#6f00ff80,#ff00dd40);opacity:0;transition:opacity .3s ease}.hero-btn-primary:hover{border-color:var(--glow-purple);color:#fff;box-shadow:var(--glow-md);transform:translateY(-2px)}.hero-btn-primary:hover:before{opacity:1}.hero-btn-primary svg{position:relative;transition:transform .3s ease}.hero-btn-primary:hover svg{transform:translate(4px)}.hero-stats{display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap;animation:fadeInUp .6s ease .5s both}.hero-stat{display:flex;flex-direction:column;align-items:center;padding:0 1rem}.hero-stat-value{font-family:var(--font-heading);font-size:1.4rem;background:linear-gradient(135deg,var(--glow-purple),var(--pink-accent));-webkit-background-clip:text;background-clip:text;color:transparent}.hero-stat-label{font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.hero-stat-sep{width:1px;height:28px;background:#6f00ff40}.hero-scroll-hint{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;animation:fadeIn 1s ease 1.2s both}.scroll-line{width:1px;height:40px;background:linear-gradient(to bottom,var(--accent-purple),transparent);animation:scrollPulse 2s ease-in-out infinite}@keyframes scrollPulse{0%{transform:scaleY(0);transform-origin:top;opacity:0}50%{transform:scaleY(1);opacity:1}to{transform:scaleY(1);opacity:0;transform-origin:top}}.hero-scroll-hint span{font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted)}.home-section{padding-top:7rem}.news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:1.5rem}@media(max-width:600px){.news-grid{grid-template-columns:1fr}}.news-card{background:var(--card-bg);border:1px solid var(--card-border-accent, var(--card-border));border-radius:var(--radius-lg);padding:1.6rem;position:relative;overflow:hidden;animation:fadeInUp .5s ease both;transition:transform var(--transition-mid),box-shadow var(--transition-mid),border-color var(--transition-mid)}.news-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000004d,0 0 0 1px var(--card-border-accent, rgba(111,0,255,.2))}.news-card.pinned{border-color:#aa44ff73}.news-card-bar{position:absolute;top:0;left:0;right:0;height:2px;pointer-events:none}.news-card-orb{position:absolute;top:-60px;right:-60px;width:180px;height:180px;border-radius:50%;filter:blur(50px);pointer-events:none;opacity:.6;transition:opacity var(--transition-mid)}.news-card:hover .news-card-orb{opacity:1}.news-pin-badge{display:inline-flex;align-items:center;gap:.3rem;font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.9rem}.news-card-header{display:flex;align-items:center;gap:.6rem;margin-bottom:.85rem}.news-type-icon{font-size:1rem;flex-shrink:0}.news-type-badge{font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;font-family:var(--font-body);padding:.18rem .65rem;border:1px solid;border-radius:100px}.news-date{font-size:.65rem;color:var(--text-muted);letter-spacing:.04em;margin-left:auto}.news-title{font-family:var(--font-heading);font-size:1.05rem;letter-spacing:.06em;color:var(--text-primary);margin-bottom:.8rem;line-height:1.4}.news-content{font-size:.85rem;color:var(--text-secondary);line-height:1.8;white-space:pre-line;margin-bottom:.4rem}.news-expand-btn{background:none;border:none;cursor:pointer;font-size:.72rem;letter-spacing:.06em;margin-top:.5rem;padding:0;transition:opacity var(--transition-fast);opacity:.8}.news-expand-btn:hover{opacity:1}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.chapters-section{padding-top:4rem}.chapters-road-subtitle{text-align:center;color:var(--text-secondary);font-size:.88rem;letter-spacing:.05em;margin-top:-1.5rem;margin-bottom:2rem}.chapters-progress-bar-wrap{position:relative;max-width:400px;margin:0 auto 3rem;height:6px;background:#6f00ff1f;border-radius:3px;overflow:visible}.chapters-progress-bar-inner{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--accent-purple),var(--pink-accent));box-shadow:0 0 10px var(--accent-purple),0 0 20px #6f00ff4d;transition:width .8s ease}.chapters-progress-label{position:absolute;top:10px;left:50%;transform:translate(-50%);font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.road-container{position:relative;max-width:860px;margin:0 auto;padding:0 0 4rem}.road-spine{position:absolute;left:50%;top:0;bottom:0;width:3px;transform:translate(-50%);background:linear-gradient(180deg,var(--accent-purple) 0%,var(--bright-purple) 40%,rgba(111,0,255,.15) 100%);border-radius:2px;overflow:visible}.beacon-stream{position:absolute;top:0;left:-3px;width:9px;height:60px;background:linear-gradient(180deg,transparent,#cc77ff,#ffffff,#cc77ff,transparent);border-radius:6px;filter:blur(2px);animation:beaconFlow 2.5s linear infinite}@keyframes beaconFlow{0%{top:-60px;opacity:0}10%{opacity:1}90%{opacity:1}to{top:100%;opacity:0}}.spine-orb{position:absolute;top:var(--sp-offset, 10%);left:50%;transform:translate(-50%,-50%);width:5px;height:5px;border-radius:50%;background:var(--bright-purple);box-shadow:0 0 8px var(--bright-purple);animation:spineOrbPulse 2.5s ease-in-out infinite;animation-delay:var(--sp-delay, 0s)}@keyframes spineOrbPulse{0%,to{opacity:.3;transform:translate(-50%,-50%) scale(.7)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.4)}}.road-stop{position:relative;display:flex;align-items:center;margin-bottom:3.5rem;animation:fadeInUp .5s ease both}.road-stop--left{flex-direction:row;justify-content:flex-start;padding-right:calc(50% + 20px)}.road-stop--right{flex-direction:row-reverse;justify-content:flex-start;padding-left:calc(50% + 20px)}.road-arm{flex:0 0 40px;height:2px;background:linear-gradient(90deg,var(--ch-color, var(--accent-purple)),rgba(111,0,255,.3));opacity:.6}.road-stop--right .road-arm{background:linear-gradient(270deg,var(--ch-color, var(--accent-purple)),rgba(111,0,255,.3))}.road-node{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:14px;height:14px;border-radius:50%;background:var(--ch-color, var(--accent-purple));box-shadow:0 0 10px var(--ch-color, var(--accent-purple)),0 0 20px var(--ch-color, var(--accent-purple));z-index:2}.road-node.locked{background:var(--mid-purple);box-shadow:none;border:2px solid rgba(111,0,255,.3)}.road-node-pulse{position:absolute;inset:-4px;border-radius:50%;border:1.5px solid var(--ch-color, var(--accent-purple));animation:nodePulse 2.2s ease-out infinite}.road-node-pulse--slow{animation-delay:1.1s}@keyframes nodePulse{0%{transform:scale(1);opacity:.8}to{transform:scale(3);opacity:0}}.road-card{position:relative;flex:1;border-radius:var(--radius-lg);overflow:hidden;border:1px solid rgba(111,0,255,.2);background:var(--card-bg);transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease;cursor:default}.road-card.unlocked{cursor:pointer}.road-card.unlocked:hover{transform:translateY(-5px) scale(1.015);border-color:var(--ch-color, var(--accent-purple));box-shadow:0 16px 48px #0000008c,0 0 40px color-mix(in srgb,var(--ch-color) 22%,transparent)}.road-card.unlocked:hover .road-card-glow{opacity:1}.road-card.locked{opacity:.5}.road-card-glow{position:absolute;inset:0;background:radial-gradient(ellipse at top left,color-mix(in srgb,var(--ch-color) 15%,transparent) 0%,transparent 60%);opacity:0;transition:opacity .35s ease;pointer-events:none;z-index:1}.road-card-image{position:relative;width:100%;aspect-ratio:16/7;overflow:hidden;background:var(--deep-purple)}.road-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease,filter .5s ease;filter:saturate(.75) brightness(.8)}.road-card.unlocked:hover .road-card-image img{transform:scale(1.06);filter:saturate(1) brightness(1)}.road-card-tint{position:absolute;inset:0;opacity:.55;mix-blend-mode:color;pointer-events:none}.road-card-image-cta{position:absolute;inset:0;background:linear-gradient(to top,color-mix(in srgb,var(--ch-color) 55%,black) 0%,transparent 55%);display:flex;align-items:flex-end;justify-content:center;padding-bottom:.7rem;gap:.35rem;font-family:var(--font-heading);font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;color:#ffffffeb;opacity:0;transition:opacity .3s ease}.road-card.unlocked:hover .road-card-image-cta{opacity:1}.road-card-veil{position:absolute;inset:0;background:#04000da6;display:flex;align-items:center;justify-content:center}.road-card-veil-icon{font-size:1.8rem;opacity:.5}.road-card-body{padding:1rem 1.2rem .8rem;position:relative;z-index:2}.road-card-number{display:block;font-size:.58rem;letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.25rem}.road-card-title{font-family:var(--font-heading);font-size:1rem;letter-spacing:.08em;color:var(--text-primary);margin-bottom:.45rem}.road-card-desc{font-size:.77rem;color:var(--text-secondary);line-height:1.55;margin-bottom:.7rem}.road-card-footer{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.road-card-meta{display:flex;gap:.4rem;flex-wrap:wrap}.road-card-meta-pill{display:inline-flex;align-items:center;gap:.25rem;font-size:.6rem;letter-spacing:.06em;padding:.2rem .5rem;border-radius:999px;background:color-mix(in srgb,var(--pill-color) 12%,transparent);border:1px solid color-mix(in srgb,var(--pill-color) 30%,transparent);color:color-mix(in srgb,var(--pill-color) 90%,white)}.road-card-cta{display:flex;align-items:center;gap:.3rem;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;font-family:var(--font-heading);opacity:0;transform:translate(-6px);transition:opacity .3s ease,transform .3s ease;flex-shrink:0}.road-card.unlocked:hover .road-card-cta{opacity:1;transform:translate(0)}.road-card-coming{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.road-card-bottom-bar{height:2px;width:0%;transition:width .4s ease}.road-card.unlocked:hover .road-card-bottom-bar{width:100%}.road-card-badge{position:absolute;top:.8rem;right:.8rem;width:30px;height:30px;border-radius:50%;border:1.5px solid;display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-size:.62rem;z-index:3;background:#04000da6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.void-ending{position:relative;margin:0 auto;max-width:340px;text-align:center;padding:2.5rem 2rem;border-radius:var(--radius-lg);border:1px solid rgba(111,0,255,.2);background:#0a0019e6;animation:fadeInUp .7s ease .6s both;overflow:hidden}.void-ending.ignited{border-color:#c7f9;box-shadow:0 0 60px #6f00ff66,0 0 120px #6f00ff33;animation:fadeInUp .7s ease .6s both,voidPulse 3s ease-in-out infinite}@keyframes voidPulse{0%,to{box-shadow:0 0 60px #6f00ff66,0 0 120px #6f00ff33}50%{box-shadow:0 0 80px #a4f9,0 0 160px #6f00ff4d}}.void-ending-glow{position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(111,0,255,.08) 0%,transparent 70%);pointer-events:none}.void-ending-particles{position:absolute;inset:0;pointer-events:none}.ve-particle{position:absolute;top:50%;left:50%;width:4px;height:4px;border-radius:50%;background:var(--bright-purple);box-shadow:0 0 6px var(--bright-purple);transform-origin:0 0;animation:veOrbit 6s linear infinite;animation-delay:var(--ve-delay, 0s)}@keyframes veOrbit{0%{transform:rotate(var(--ve-angle, 0deg)) translate(80px) scale(.5);opacity:.5}50%{opacity:1;transform:rotate(calc(var(--ve-angle, 0deg) + 180deg)) translate(80px) scale(1.2)}to{transform:rotate(calc(var(--ve-angle, 0deg) + 360deg)) translate(80px) scale(.5);opacity:.5}}.void-ending-icon{font-size:2.8rem;margin-bottom:.8rem;display:block;position:relative;z-index:1}.void-ending-title{font-family:var(--font-heading);font-size:1.3rem;letter-spacing:.15em;text-transform:uppercase;background:linear-gradient(135deg,var(--glow-purple),var(--pink-accent));-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:.6rem;position:relative;z-index:1}.void-ending-desc{font-size:.8rem;color:var(--text-secondary);line-height:1.6;position:relative;z-index:1}.void-ignite-ring{position:absolute;inset:-4px;border-radius:calc(var(--radius-lg) + 4px);border:2px solid transparent;background:linear-gradient(var(--void-black),var(--void-black)) padding-box,linear-gradient(135deg,var(--accent-purple),var(--pink-accent),var(--bright-purple)) border-box;animation:ringRotate 4s linear infinite}@keyframes ringRotate{to{filter:hue-rotate(360deg)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.chapter-popup-overlay{position:fixed;inset:0;z-index:10000;background:#000008d1;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;padding:1rem;animation:overlayIn .22s ease both}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}.chapter-popup{position:relative;width:100%;max-width:460px;border-radius:18px;overflow:hidden;background:#060012f7;border:1px solid color-mix(in srgb,var(--ch-color) 35%,transparent);box-shadow:0 0 0 1px #ffffff0a,0 0 60px color-mix(in srgb,var(--ch-color) 18%,transparent),0 30px 80px #000000b3;animation:popupIn .38s cubic-bezier(.34,1.56,.64,1) both}@keyframes popupIn{0%{opacity:0;transform:scale(.86) translateY(16px)}to{opacity:1;transform:scale(1) translateY(0)}}.chapter-popup-border-glow{position:absolute;inset:-1px;border-radius:19px;background:conic-gradient(from 0deg,var(--ch-color),var(--ch-accent),transparent 40%,transparent 60%,var(--ch-color));z-index:-1;opacity:.4;animation:borderSpin 5s linear infinite}@keyframes borderSpin{to{transform:rotate(360deg)}}.chapter-popup-hero{position:relative;width:100%;aspect-ratio:16/7;overflow:hidden}.chapter-popup-hero img{width:100%;height:100%;object-fit:cover;filter:saturate(.8) brightness(.65)}.chapter-popup-hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#0000001a,color-mix(in srgb,var(--ch-color) 18%,transparent) 55%,#060012eb)}.chapter-popup-hero-scan{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.06) 2px,rgba(0,0,0,.06) 4px);pointer-events:none}.chapter-popup-hero-text{position:absolute;bottom:1rem;left:1.2rem}.chapter-popup-subtitle{display:block;font-size:.6rem;letter-spacing:.22em;text-transform:uppercase;color:color-mix(in srgb,var(--ch-color) 85%,white);margin-bottom:.2rem;opacity:.9}.chapter-popup-title{font-family:var(--font-heading);font-size:1.5rem;letter-spacing:.09em;color:#fff;text-shadow:0 0 20px color-mix(in srgb,var(--ch-color) 70%,transparent),0 2px 4px rgba(0,0,0,.6)}.chapter-popup-close{position:absolute;top:.65rem;right:.65rem;width:26px;height:26px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:#0000008c;color:#ffffffa6;font-size:.7rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.chapter-popup-close:hover{background:#ffffff1f;color:#fff;border-color:#ffffff59}.chapter-popup-roman{position:absolute;top:.65rem;left:.65rem;width:34px;height:34px;border-radius:50%;border:2px solid var(--ch-color);background:#0009;color:var(--ch-color);font-family:var(--font-heading);font-size:.72rem;display:flex;align-items:center;justify-content:center;text-shadow:0 0 8px var(--ch-color);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);box-shadow:0 0 12px color-mix(in srgb,var(--ch-color) 35%,transparent)}.chapter-popup-body{padding:1.2rem 1.4rem 1.6rem}.chapter-popup-desc{font-size:.81rem;color:var(--text-secondary);line-height:1.65;margin-bottom:1.2rem}.chapter-popup-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem;margin-bottom:1.1rem;padding:.8rem .7rem;background:#ffffff06;border:1px solid rgba(255,255,255,.055);border-radius:12px}.chapter-popup-stat{display:flex;flex-direction:column;align-items:center;gap:.15rem}.stat-icon{font-size:1rem;margin-bottom:.1rem}.stat-value{font-family:var(--font-heading);font-size:1.1rem;color:var(--ch-color);text-shadow:0 0 10px color-mix(in srgb,var(--ch-color) 55%,transparent);line-height:1}.stat-label{font-size:.55rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);text-align:center;line-height:1.2}.chapter-popup-lore{display:flex;gap:.7rem;align-items:flex-start;margin-bottom:1.2rem;padding:.7rem .9rem;background:#ffffff05;border-radius:10px;border:1px solid rgba(255,255,255,.04)}.chapter-popup-lore-bar{flex-shrink:0;width:2px;align-self:stretch;border-radius:1px;background:linear-gradient(180deg,var(--ch-color),var(--ch-accent));opacity:.7}.chapter-popup-lore-text{font-size:.75rem;color:var(--text-secondary);line-height:1.6;font-style:italic;opacity:.8}.chapter-popup-enter-btn{width:100%;padding:.85rem 1.4rem;border-radius:10px;border:1px solid color-mix(in srgb,var(--ch-color) 60%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--ch-color) 18%,transparent),color-mix(in srgb,var(--ch-accent) 10%,transparent));color:#fff;font-family:var(--font-heading);font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:.6rem;transition:transform .22s ease,box-shadow .22s ease,background .22s ease;position:relative;overflow:hidden;box-shadow:0 0 18px color-mix(in srgb,var(--ch-color) 12%,transparent)}.chapter-popup-enter-btn:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,color-mix(in srgb,var(--ch-color) 35%,transparent),color-mix(in srgb,var(--ch-accent) 22%,transparent));opacity:0;transition:opacity .22s ease}.chapter-popup-enter-btn:hover:before{opacity:1}.chapter-popup-enter-btn:hover{transform:translateY(-2px);box-shadow:0 0 32px color-mix(in srgb,var(--ch-color) 28%,transparent),0 10px 22px #00000059;border-color:var(--ch-color)}.cta-text{position:relative;z-index:1}.cta-arrow{position:relative;z-index:1;display:flex;align-items:center;color:var(--ch-color);transition:transform .22s ease}.chapter-popup-enter-btn:hover .cta-arrow{transform:translate(4px)}@media(max-width:640px){.road-stop--left{padding-right:calc(50% + 10px)}.road-stop--right{padding-left:calc(50% + 10px)}.road-arm{flex:0 0 20px}.road-card-title{font-size:.9rem}.chapter-popup-stats{grid-template-columns:repeat(2,1fr)}.chapter-popup-title{font-size:1.25rem}}.credits-section{padding-top:4rem}.credits-subtitle{text-align:center;color:var(--text-muted);font-size:.85rem;letter-spacing:.06em;margin-top:-1.5rem;margin-bottom:2.5rem}.credits-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.credit-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:1.8rem 1.5rem;display:flex;flex-direction:column;align-items:center;text-align:center;gap:.6rem;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;animation:fadeInUp .5s ease both;position:relative;overflow:hidden}.credit-card:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:60%;height:1px;background:linear-gradient(90deg,transparent,var(--role-color, var(--accent-purple)),transparent);opacity:.5}.credit-card:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--role-color) 40%,transparent);box-shadow:0 12px 30px #00000059,0 0 20px color-mix(in srgb,var(--role-color) 15%,transparent)}.credit-avatar-wrap{position:relative;width:80px;height:80px;margin-bottom:.4rem}.credit-avatar{width:80px;height:80px;border-radius:50%;object-fit:cover;image-rendering:pixelated;border:2px solid rgba(111,0,255,.3)}.credit-avatar-placeholder{width:80px;height:80px;border-radius:50%;background:#6f00ff33;border:2px solid var(--card-border);display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-size:1.8rem;color:var(--glow-purple)}.credit-avatar-ring{position:absolute;inset:-4px;border-radius:50%;border:1px solid var(--role-color, var(--accent-purple));opacity:.4;transition:opacity .3s ease,transform .3s ease}.credit-card:hover .credit-avatar-ring{opacity:.9;transform:scale(1.05)}.credit-info{display:flex;flex-direction:column;align-items:center;gap:.3rem}.credit-name{font-family:var(--font-heading);font-size:1rem;letter-spacing:.08em;color:var(--text-primary)}.credit-role{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;font-family:var(--font-body);font-weight:500}.credit-desc{font-size:.78rem;color:var(--text-secondary);line-height:1.55;margin-top:.3rem}.credit-socials{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;margin-top:.4rem}.credit-social-tag{display:flex;align-items:center;gap:.35rem;padding:.2rem .6rem;background:#6f00ff1a;border:1px solid var(--card-border);border-radius:100px;font-size:.65rem;color:var(--text-muted);letter-spacing:.06em}.credits-footnote{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:4rem;padding-top:2rem;border-top:1px solid var(--card-border)}.credits-footnote span{color:var(--accent-purple);font-size:.9rem;opacity:.5}.credits-footnote p{font-family:var(--font-heading);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.settings-section{padding-top:4rem}.settings-subtitle{text-align:center;color:var(--text-muted);font-size:.85rem;letter-spacing:.08em;margin-top:-1.5rem;margin-bottom:2.8rem}.settings-layout{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:1.2rem}.settings-panel{border:1px solid rgba(111,0,255,.2);border-radius:var(--radius-lg);background:var(--card-bg);overflow:hidden;animation:fadeInUp .5s ease both;transition:border-color .3s ease,box-shadow .3s ease;position:relative}.settings-panel:before{content:"";position:absolute;inset:0;border-radius:var(--radius-lg);background:linear-gradient(135deg,rgba(111,0,255,.03) 0%,transparent 60%);pointer-events:none}.settings-panel:hover{border-color:#aa44ff59;box-shadow:0 4px 24px #6f00ff14}.settings-panel:nth-child(1){animation-delay:.05s}.settings-panel:nth-child(2){animation-delay:.12s}.settings-panel:nth-child(3){animation-delay:.19s}.settings-panel:nth-child(4){animation-delay:.26s}.settings-panel-header{display:flex;align-items:center;gap:1rem;padding:1.1rem 1.5rem;border-bottom:1px solid rgba(111,0,255,.1);background:linear-gradient(90deg,rgba(111,0,255,.07),transparent)}.settings-panel-icon{font-size:1rem;width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:#6f00ff24;border:1px solid rgba(111,0,255,.28);flex:0 0 38px;box-shadow:inset 0 1px #ffffff0d}.settings-panel-title{font-family:var(--font-heading);font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-primary);margin-bottom:.15rem}.settings-panel-desc{font-size:.72rem;color:var(--text-muted)}.settings-panel-body{padding:.3rem 0}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.5rem;cursor:pointer;transition:background var(--transition-fast);border-bottom:1px solid rgba(111,0,255,.06);-webkit-user-select:none;user-select:none}.setting-row:last-child{border-bottom:none}.setting-row:hover{background:#6f00ff0f}.setting-row--on{background:#6f00ff0d}.setting-row--on:hover{background:#6f00ff17}.setting-row-left{display:flex;align-items:center;gap:.9rem}.setting-icon{font-size:1rem;width:30px;text-align:center;flex:0 0 30px}.setting-label-wrap{display:flex;flex-direction:column;gap:.18rem}.setting-label{font-size:.88rem;color:var(--text-primary)}.setting-desc{font-size:.7rem;color:var(--text-muted)}.toggle{width:44px;height:24px;border-radius:12px;position:relative;cursor:pointer;transition:background .3s ease,box-shadow .3s ease;flex:0 0 44px}.toggle.on{background:var(--accent-purple);box-shadow:0 0 12px #6f00ff8c}.toggle.off{background:#ffffff14;border:1px solid rgba(255,255,255,.1)}.toggle-thumb{position:absolute;top:4px;width:16px;height:16px;border-radius:50%;background:#fff;transition:left .3s cubic-bezier(.34,1.56,.64,1);box-shadow:0 1px 4px #0006}.toggle.on .toggle-thumb{left:24px}.toggle.off .toggle-thumb{left:4px}.theme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;padding:1.2rem 1.5rem 1.5rem}@media(max-width:700px){.theme-grid{grid-template-columns:repeat(2,1fr)}}.theme-card{display:flex;flex-direction:column;gap:.55rem;background:#ffffff05;border:1px solid rgba(111,0,255,.15);border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:all .25s ease;padding:0;overflow:hidden}.theme-card:hover{border-color:#a4f6;transform:translateY(-2px);box-shadow:0 6px 20px #0000004d}.theme-card.active{border-color:var(--glow-purple);box-shadow:0 0 0 1px var(--glow-purple),0 6px 20px #6f00ff40}.theme-card-swatch{height:52px;position:relative;overflow:hidden;flex-shrink:0}.theme-card-glow{position:absolute;bottom:6px;left:50%;transform:translate(-50%);width:22px;height:22px;border-radius:50%;opacity:.85;box-shadow:0 0 12px currentColor;filter:blur(1px)}.theme-card-check{position:absolute;top:6px;right:6px;width:20px;height:20px;border-radius:50%;background:#fff3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;color:#fff}.theme-card-info{display:flex;flex-direction:column;gap:.1rem;padding:0 .7rem .7rem}.theme-card-name{font-size:.78rem;color:var(--text-primary);font-family:var(--font-heading);letter-spacing:.05em}.theme-card-sub{font-size:.62rem;color:var(--text-muted);line-height:1.3}.settings-info-rows{padding:.3rem 0}.info-row{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;border-bottom:1px solid rgba(111,0,255,.06)}.info-row:last-child{border-bottom:none}.info-row-label{font-size:.8rem;color:var(--text-muted)}.info-row-value{font-size:.8rem;color:var(--text-secondary);font-family:var(--font-body)}.info-row-value.accent{color:var(--glow-purple);font-weight:600}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.qa-section{padding-top:4rem}.qa-subtitle{text-align:center;color:var(--text-muted);font-size:.85rem;letter-spacing:.06em;margin-top:-1.5rem;margin-bottom:2rem}.qa-search-wrap{position:relative;max-width:520px;margin:0 auto 1.8rem}.qa-search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.qa-search{width:100%;padding:.75rem 2.8rem .75rem 2.6rem;background:#6f00ff0f;border:1px solid rgba(111,0,255,.2);border-radius:var(--radius-lg);color:var(--text-primary);font-family:var(--font-body);font-size:.88rem;transition:border-color .2s,box-shadow .2s;outline:none}.qa-search::placeholder{color:var(--text-muted)}.qa-search:focus{border-color:#6f00ff73;box-shadow:0 0 0 3px #6f00ff1a}.qa-search-clear{position:absolute;right:.8rem;top:50%;transform:translateY(-50%);background:#6f00ff26;border:none;border-radius:50%;width:22px;height:22px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:.7rem;cursor:pointer;transition:all var(--transition-fast)}.qa-search-clear:hover{background:#6f00ff4d;color:#fff}.qa-filters{display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap;margin-bottom:2rem}.qa-filter-btn{display:flex;align-items:center;gap:.4rem;padding:.35rem .9rem;border-radius:999px;border:1px solid rgba(111,0,255,.25);background:transparent;color:var(--text-muted);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;font-family:var(--font-body);cursor:pointer;transition:all var(--transition-fast)}.qa-filter-btn:hover{border-color:#6f00ff80;color:var(--text-primary);background:#6f00ff14}.qa-filter-count{background:#ffffff14;border-radius:999px;padding:.05rem .4rem;font-size:.65rem;color:var(--text-muted)}.qa-list{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:.5rem}.qa-empty{text-align:center;padding:3rem 1rem;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;gap:.6rem;font-size:.9rem}.qa-empty span{font-size:2rem;opacity:.4}.qa-empty strong{color:var(--text-secondary)}.qa-item{background:var(--card-bg);border:1px solid rgba(111,0,255,.14);border-radius:var(--radius-md);overflow:hidden;transition:border-color .25s ease,box-shadow .25s ease;animation:fadeInUp .4s ease both}.qa-item:hover{border-color:#6f00ff47}.qa-item.open{border-color:var(--qa-border, rgba(111,0,255,.4));box-shadow:0 4px 20px #6f00ff14}.qa-item.open:before{content:"";position:absolute}.qa-item{position:relative}.qa-item.open{border-left:2px solid var(--qa-color, var(--glow-purple))}.qa-question{width:100%;display:flex;align-items:center;gap:.75rem;padding:1rem 1.3rem;background:none;border:none;cursor:pointer;text-align:left;transition:background var(--transition-fast)}.qa-question:hover{background:#6f00ff0a}.qa-category-pill{flex-shrink:0;font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;padding:.18rem .55rem;border-radius:999px;border:1px solid;display:none}@media(min-width:600px){.qa-category-pill{display:inline-flex}}.qa-question-text{flex:1;font-size:.88rem;color:var(--text-primary);font-family:var(--font-body);line-height:1.4}.qa-chevron{flex-shrink:0;color:var(--text-muted);transition:transform .3s cubic-bezier(.34,1.4,.64,1)}.qa-item.open .qa-chevron{transform:rotate(180deg);color:var(--qa-color, var(--glow-purple))}.qa-answer-wrap{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4,0,.2,1)}.qa-item.open .qa-answer-wrap{max-height:500px}.qa-answer{padding:1rem 1.3rem 1.2rem;border-top:1px solid rgba(111,0,255,.08)}.qa-answer p{color:var(--text-secondary);font-size:.87rem;line-height:1.7}.qa-highlight{background:#cc77ff40;color:var(--glow-purple);border-radius:2px;padding:0 2px}.qa-discord-cta{max-width:760px;margin:2rem auto 0;display:flex;align-items:center;justify-content:center;gap:.6rem;padding:1rem 1.5rem;background:#5865f214;border:1px solid rgba(88,101,242,.2);border-radius:var(--radius-md);color:var(--text-muted);font-size:.83rem;flex-wrap:wrap}.qa-discord-cta svg{color:#5865f2;flex-shrink:0}.qa-discord-link{color:#7289da;text-decoration:none;font-weight:600;transition:color var(--transition-fast)}.qa-discord-link:hover{color:#aab4ff}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.chapter-view{position:fixed;inset:0;z-index:5000;display:flex;flex-direction:column;background:var(--void-black);animation:fadeIn .4s ease;overflow:hidden}.cv-header{display:flex;align-items:center;gap:1rem;padding:1rem 2rem;background:#0d0020f2;border-bottom:1px solid var(--card-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;z-index:10;flex-shrink:0}.cv-back-btn{display:flex;align-items:center;gap:.5rem;background:#6f00ff26;border:1px solid var(--card-border);color:var(--text-secondary);padding:.5rem 1rem;border-radius:var(--radius-sm);cursor:pointer;font-family:var(--font-heading);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;transition:all var(--transition-mid)}.cv-back-btn:hover{background:#6f00ff4d;border-color:var(--accent-purple);color:var(--text-primary)}.cv-back-btn svg{width:14px;height:14px}.cv-header-title{flex:1;text-align:center}.cv-header-title h2{font-family:var(--font-heading);font-size:clamp(.9rem,2vw,1.3rem);letter-spacing:.15em;text-transform:uppercase;background:linear-gradient(135deg,var(--glow-purple),var(--pink-accent));-webkit-background-clip:text;background-clip:text;color:transparent}.cv-header-title span{font-size:.7rem;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-family:var(--font-body)}.cv-body{display:flex;flex:1;overflow:hidden}.cv-sidebar{width:200px;flex-shrink:0;background:#0d0020e6;border-right:1px solid var(--card-border);display:flex;flex-direction:column;gap:.25rem;padding:1.5rem .75rem;overflow-y:auto}.cv-tab-btn{display:flex;align-items:center;gap:.6rem;padding:.75rem 1rem;background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-family:var(--font-body);font-size:.78rem;letter-spacing:.05em;text-align:left;transition:all var(--transition-fast);white-space:nowrap}.cv-tab-btn svg{width:16px;height:16px;flex-shrink:0;opacity:.7}.cv-tab-btn:hover{background:#6f00ff1f;border-color:var(--card-border);color:var(--text-primary)}.cv-tab-btn.active{background:#6f00ff33;border-color:var(--accent-purple);color:var(--glow-purple)}.cv-tab-btn.active svg{opacity:1}.cv-content{flex:1;overflow-y:auto;padding:2.5rem;position:relative}.ci-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}@media(max-width:900px){.ci-grid{grid-template-columns:1fr}}.ci-image-wrap{border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--card-border);box-shadow:var(--glow-sm);aspect-ratio:16/9;background:var(--dark-purple)}.ci-image-wrap img{width:100%;height:100%;object-fit:cover}.ci-info h3{font-family:var(--font-heading);font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.5rem}.ci-info h2{font-family:var(--font-heading);font-size:clamp(1.4rem,3vw,2rem);background:linear-gradient(135deg,#fff,var(--glow-purple));-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:1rem}.ci-info p{color:var(--text-secondary);line-height:1.7;font-size:.9rem;margin-bottom:1rem}.ci-tags{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:1rem}.ci-tag{padding:.3rem .75rem;background:#6f00ff26;border:1px solid var(--card-border);border-radius:100px;font-size:.7rem;letter-spacing:.08em;color:var(--glow-purple);font-family:var(--font-body)}.ss-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.ss-item{border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--card-border);cursor:pointer;transition:all var(--transition-mid);aspect-ratio:16/9;background:var(--dark-purple)}.ss-item:hover{border-color:var(--card-hover-border);box-shadow:var(--glow-sm);transform:scale(1.02)}.ss-item img{width:100%;height:100%;object-fit:cover}.ss-lightbox{position:fixed;inset:0;z-index:9999;background:#04000df2;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease}.ss-lightbox img{max-width:90vw;max-height:90vh;border-radius:var(--radius-md);border:1px solid var(--card-border)}.ss-lightbox-close{position:absolute;top:1.5rem;right:1.5rem;background:#6f00ff33;border:1px solid var(--card-border);color:var(--text-primary);width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.ss-lightbox-close:hover{background:#6f00ff66}.armor-layout{display:grid;grid-template-columns:260px 1fr;gap:2.5rem;align-items:start}@media(max-width:900px){.armor-layout{grid-template-columns:1fr}}.armor-mannequin-wrap{display:flex;flex-direction:column;align-items:center;gap:0}.armor-set-header{text-align:center;margin-bottom:1rem;width:100%}.armor-set-header h3{font-family:var(--font-heading);font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.3rem}.armor-set-name{font-family:var(--font-heading);font-size:1rem;letter-spacing:.1em;background:linear-gradient(135deg,var(--glow-purple),var(--pink-accent));-webkit-background-clip:text;background-clip:text;color:transparent}.armor-mannequin-stage{position:relative;width:160px;display:flex;align-items:center;justify-content:center;padding:1.5rem 1rem .5rem;background:radial-gradient(ellipse at 50% 30%,rgba(111,0,255,.12) 0%,transparent 70%);border-radius:var(--radius-lg)}.armor-mannequin-shadow{position:absolute;bottom:10px;left:50%;transform:translate(-50%);width:90px;height:14px;background:radial-gradient(ellipse,rgba(0,0,0,.6) 0%,transparent 80%);pointer-events:none}.armor-piece-card{margin-top:1.2rem;width:100%;background:#6f00ff0f;border:1px solid var(--piece-color, rgba(111,0,255,.3));border-radius:var(--radius-md);padding:1rem 1.1rem;box-shadow:0 0 16px #6f00ff1a;transition:border-color .3s,box-shadow .3s}.armor-piece-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:.4rem}.armor-piece-slot-label{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.armor-piece-name{font-family:var(--font-heading);font-size:.92rem;color:var(--text-primary);margin-bottom:.3rem;letter-spacing:.04em}.armor-piece-desc{font-size:.75rem;color:var(--text-secondary);line-height:1.4}.armor-slots{display:flex;flex-direction:column;gap:.6rem}.armor-slot{display:flex;align-items:center;gap:.9rem;padding:.8rem 1rem;background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-md);transition:all var(--transition-mid);cursor:pointer}.armor-slot:hover{border-color:var(--card-hover-border);background:#6f00ff1f;transform:translate(2px)}.active-slot{transform:translate(4px)}.armor-slot-icon{width:46px;height:46px;background:#6f00ff26;border:1px solid;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:1.4rem;flex-shrink:0;transition:box-shadow .3s}.active-slot .armor-slot-icon{box-shadow:0 0 12px currentColor}.armor-slot-info{flex:1}.armor-slot-info h4{font-family:var(--font-heading);font-size:.82rem;letter-spacing:.05em;color:var(--text-primary);margin-bottom:.15rem}.armor-slot-info span{font-size:.68rem;color:var(--text-muted);letter-spacing:.05em}.armor-slot-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.armor-set-bonus{margin-top:.5rem;padding:1rem 1.1rem;background:#6f00ff12;border:1px dashed rgba(111,0,255,.3);border-radius:var(--radius-md)}.armor-set-bonus-label{font-family:var(--font-heading);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--glow-purple);margin-bottom:.4rem}.armor-set-bonus-desc{font-size:.75rem;color:var(--text-secondary);line-height:1.5}.armor-set-bonus-desc em{color:var(--glow-purple);font-style:normal}.rarity-badge{padding:.18rem .55rem;border-radius:100px;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;font-family:var(--font-body);flex-shrink:0}.rarity-common{background:#9696962e;color:#aaa;border:1px solid #555}.rarity-uncommon{background:#00c8001f;color:#5dff5d;border:1px solid #2a7a2a}.rarity-rare{background:#0070ff26;color:#7ab4ff;border:1px solid #1a4a8a}.rarity-epic{background:#8c00ff33;color:#c8f;border:1px solid #5500aa}.rarity-legendary{background:#ffa0002e;color:#fc5;border:1px solid #885500}.mob-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.2rem}.mob-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-md);padding:0;cursor:pointer;transition:all var(--transition-mid);position:relative;overflow:hidden;display:flex;flex-direction:column}.mob-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.35) 100%);opacity:0;transition:opacity var(--transition-mid);pointer-events:none;z-index:1}.mob-card:hover{border-color:var(--mob-color, var(--card-hover-border));transform:translateY(-4px);box-shadow:0 0 18px color-mix(in srgb,var(--mob-color, #6f00ff) 40%,transparent),0 8px 30px #00000080}.mob-card:hover:before{opacity:1}.mob-card-preview{position:relative;height:118px;display:flex;align-items:flex-end;justify-content:center;background:linear-gradient(180deg,#00000059,#00000014);overflow:hidden;flex-shrink:0;padding-bottom:4px}.mob-card-preview-glow{position:absolute;inset:0;pointer-events:none}.mob-card-preview svg{position:relative;z-index:1;filter:drop-shadow(0 2px 8px rgba(0,0,0,.6));transition:transform var(--transition-mid)}.mob-card:hover .mob-card-preview svg{transform:translateY(-4px) scale(1.04)}.mob-card-type{font-size:.62rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-family:var(--font-body);padding:.7rem 1rem .2rem}.mob-card-name{font-family:var(--font-heading);font-size:.92rem;letter-spacing:.08em;color:var(--text-primary);padding:0 1rem;margin-bottom:.5rem}.mob-card-footer{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem .9rem;gap:.5rem;margin-top:auto}.mob-card-stats{display:flex;gap:.6rem;flex-wrap:wrap}.mob-stat{font-size:.68rem;color:var(--text-secondary)}.mob-stat strong{color:var(--glow-purple);font-family:var(--font-body);font-weight:600}.mob-card-diff-pill{font-size:.58rem;letter-spacing:.08em;text-transform:uppercase;padding:.18rem .5rem;border-radius:100px;border:1px solid;white-space:nowrap;font-family:var(--font-body)}.mob-difficulty{position:absolute;top:.75rem;right:.75rem;width:8px;height:8px;border-radius:50%;z-index:2}.diff-easy{background:#5dff5d;box-shadow:0 0 6px #5dff5d}.diff-medium{background:#fc5;box-shadow:0 0 6px #fc5}.diff-hard{background:#f84;box-shadow:0 0 6px #f84}.diff-legendary{background:#c8f;box-shadow:0 0 6px #c8f}.mob-popup-overlay{position:fixed;inset:0;z-index:9999;background:#04000dd1;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease;padding:2rem}.mob-popup{background:linear-gradient(160deg,#100224f7,#080014fc);border:1px solid color-mix(in srgb,var(--mob-color, #6f00ff) 55%,transparent);border-radius:24px;width:100%;max-width:860px;max-height:calc(100vh - 4rem);overflow-y:auto;box-shadow:0 0 0 1px color-mix(in srgb,var(--mob-color, #6f00ff) 20%,transparent),0 0 40px color-mix(in srgb,var(--mob-color, #6f00ff) 30%,transparent),0 0 80px color-mix(in srgb,var(--mob-color, #6f00ff) 12%,transparent),0 40px 80px #000000bf;animation:floatIn .35s cubic-bezier(.22,1.4,.5,1);position:relative}@keyframes floatIn{0%{opacity:0;transform:scale(.88) translateY(24px)}to{opacity:1;transform:scale(1) translateY(0)}}.mob-popup-close{position:absolute;top:1.1rem;right:1.1rem;z-index:10;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:var(--text-secondary);width:34px;height:34px;border-radius:50%;cursor:pointer;font-size:.85rem;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.mob-popup-close:hover{background:color-mix(in srgb,var(--mob-color, #6f00ff) 40%,transparent);border-color:color-mix(in srgb,var(--mob-color, #6f00ff) 60%,transparent);color:#fff;transform:rotate(90deg) scale(1.1)}.mob-popup-body{display:grid;grid-template-columns:280px 1fr;min-height:460px}@media(max-width:700px){.mob-popup-body{grid-template-columns:1fr}.mob-popup-left{border-right:none;border-bottom:1px solid rgba(111,0,255,.12)}}.mob-popup-left{display:flex;flex-direction:column;align-items:center;padding:1.6rem 1.4rem 1.4rem;border-right:1px solid rgba(111,0,255,.1);gap:.8rem;background:linear-gradient(180deg,color-mix(in srgb,var(--mob-color, #6f00ff) 6%,transparent) 0%,transparent 60%);border-radius:24px 0 0 24px}.mob-3d-viewport{width:100%;aspect-ratio:1;border-radius:16px;overflow:hidden;border:1px solid color-mix(in srgb,var(--mob-color, #6f00ff) 30%,transparent);background:radial-gradient(ellipse at 50% 65%,color-mix(in srgb,var(--mob-color, #6f00ff) 14%,transparent),#080014f2 75%);box-shadow:inset 0 0 30px color-mix(in srgb,var(--mob-color, #6f00ff) 10%,transparent)}.mob-3d-viewport canvas{display:block;width:100%!important;height:100%!important}.mob-3d-hint{font-size:.62rem;color:var(--text-muted);letter-spacing:.12em;text-align:center;font-family:var(--font-heading)}.mob-popup-identity{width:100%;display:flex;flex-direction:column;gap:.4rem;padding:.8rem;background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:12px}.mob-popup-type-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.mob-popup-type-badge{font-size:.6rem;letter-spacing:.13em;text-transform:uppercase;color:var(--text-muted);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);padding:.15rem .55rem;border-radius:100px}.mob-popup-diff-badge{font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;padding:.15rem .55rem;border-radius:100px;border:1px solid;display:flex;align-items:center;gap:4px}.mob-popup-title{font-family:var(--font-heading);font-size:1.15rem;letter-spacing:.1em;background:linear-gradient(135deg,#fff 0%,var(--mob-color, var(--glow-purple)) 120%);-webkit-background-clip:text;background-clip:text;color:transparent;line-height:1.2}.mob-popup-info{padding:1.8rem 1.6rem 1.6rem;display:flex;flex-direction:column;gap:1.4rem;overflow-y:auto}.mob-info-section-label{font-family:var(--font-heading);font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.6rem;padding-bottom:.4rem;border-bottom:1px solid rgba(111,0,255,.12)}.mob-description{color:var(--text-secondary);font-size:.86rem;line-height:1.75}.mob-stat-bars{display:flex;flex-direction:column;gap:.6rem}.mob-stat-bar-meta{display:flex;align-items:center;gap:.4rem;margin-bottom:.28rem}.mob-stat-bar-icon{font-size:.78rem;width:1.1em;text-align:center}.mob-stat-bar-name{font-size:.72rem;color:var(--text-secondary);flex:1}.mob-stat-bar-val{font-family:var(--font-heading);font-size:.74rem;color:var(--text-primary);margin-right:.3rem}.mob-stat-bar-pct{font-size:.62rem;color:var(--text-muted);width:2.6em;text-align:right}.mob-stat-bar-track{height:6px;background:#ffffff0d;border-radius:4px;overflow:hidden}.mob-stat-bar-fill{height:100%;border-radius:4px;transition:width 1s cubic-bezier(.22,1,.36,1)}.bar--health{background:linear-gradient(90deg,#1a6a1a,#5dff5d);box-shadow:0 0 6px #5dff5d66}.bar--damage{background:linear-gradient(90deg,#8a1a00,#f52);box-shadow:0 0 6px #f526}.bar--defense{background:linear-gradient(90deg,#1a4488,#4af);box-shadow:0 0 6px #4af6}.bar--speed{background:linear-gradient(90deg,#860,#fd2);box-shadow:0 0 6px #fd26}.bar--magic{background:linear-gradient(90deg,#508,#c4f);box-shadow:0 0 6px #c4f6}.bar--threat{background:linear-gradient(90deg,#611,#f24);box-shadow:0 0 6px #f246}.mob-abilities{display:flex;flex-wrap:wrap;gap:.45rem}.mob-ability{padding:.3rem .8rem;background:#aa44ff1a;border:1px solid rgba(170,68,255,.28);border-radius:100px;font-size:.72rem;color:var(--glow-purple);letter-spacing:.04em;animation:fadeInUp .35s ease both;transition:all var(--transition-fast)}.mob-ability:hover{transform:translateY(-2px);box-shadow:0 0 10px currentColor}.lore-layout{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.2rem}.lore-card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-md);padding:1.4rem;cursor:pointer;transition:all var(--transition-mid);position:relative;overflow:hidden}.lore-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent-purple),transparent);transform:scaleX(0);transition:transform var(--transition-mid)}.lore-card:hover:before{transform:scaleX(1)}.lore-card:hover{border-color:var(--card-hover-border);transform:translateY(-3px);box-shadow:var(--glow-sm)}.lore-card.locked{opacity:.5;cursor:not-allowed}.lore-card.locked:hover{transform:none;box-shadow:none;border-color:var(--card-border)}.lore-card-cat{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.4rem}.lore-card h3{font-family:var(--font-heading);font-size:.9rem;letter-spacing:.06em;color:var(--text-primary);margin-bottom:.8rem;line-height:1.3}.lore-card p{font-size:.78rem;color:var(--text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.lore-lock-icon{position:absolute;top:1rem;right:1rem;font-size:1rem;opacity:.4}.lore-open-indicator{display:flex;align-items:center;gap:.4rem;font-size:.68rem;color:var(--accent-purple);margin-top:.8rem;letter-spacing:.06em}.lore-open-indicator svg{width:12px;height:12px}.lore-reader-overlay{position:fixed;inset:0;z-index:9999;background:#04000de6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease;padding:2rem}.lore-reader{background:#0d0020fa;border:1px solid var(--card-hover-border);border-radius:var(--radius-lg);width:100%;max-width:640px;max-height:80vh;overflow-y:auto;box-shadow:var(--glow-md);animation:fadeInUp .3s ease}.lore-reader-header{padding:1.5rem 2rem 1rem;border-bottom:1px solid var(--card-border);display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.lore-reader-header-left span{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.lore-reader-header-left h2{font-family:var(--font-heading);font-size:1.1rem;letter-spacing:.08em;background:linear-gradient(135deg,#fff,var(--glow-purple));-webkit-background-clip:text;background-clip:text;color:transparent;margin-top:.3rem}.lore-reader-close{background:#6f00ff26;border:1px solid var(--card-border);color:var(--text-secondary);width:36px;height:36px;border-radius:50%;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);flex-shrink:0}.lore-reader-close:hover{background:#6f00ff59;color:#fff}.lore-reader-body{padding:1.5rem 2rem 2rem}.lore-reader-body p{color:var(--text-secondary);font-size:.9rem;line-height:1.85;font-style:italic;white-space:pre-line}.trailer-wrap{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.trailer-embed{width:100%;max-width:900px;aspect-ratio:16/9;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--card-border);box-shadow:var(--glow-md)}.trailer-embed iframe{width:100%;height:100%;border:none}.trailer-placeholder{width:100%;max-width:900px;aspect-ratio:16/9;border-radius:var(--radius-md);border:1px dashed var(--card-border);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;background:#0d002080;color:var(--text-muted);font-family:var(--font-heading);letter-spacing:.1em;font-size:.85rem}.trailer-placeholder span{font-size:2rem;opacity:.4}.carousel-wrap{display:flex;flex-direction:column;gap:1rem}.carousel-stage{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--radius-md);overflow:hidden;background:var(--deep-purple);border:1px solid var(--card-border)}.carousel-img{width:100%;height:100%;object-fit:cover;animation:carouselFade .35s ease}@keyframes carouselFade{0%{opacity:0;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}.carousel-btn{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.15);background:#04000da6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,border-color .2s ease;z-index:2}.carousel-btn:hover{background:#6f00ff66;border-color:var(--accent-purple)}.carousel-btn--prev{left:.8rem}.carousel-btn--next{right:.8rem}.carousel-counter{position:absolute;bottom:.75rem;right:.9rem;font-size:.65rem;letter-spacing:.08em;color:#ffffff8c;background:#04000d99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:.2rem .55rem;border-radius:999px;border:1px solid rgba(255,255,255,.1)}.carousel-thumbs{display:flex;gap:.5rem;flex-wrap:wrap}.carousel-thumb{width:72px;height:44px;border-radius:var(--radius-sm);overflow:hidden;border:2px solid transparent;cursor:pointer;transition:border-color .2s ease,opacity .2s ease;opacity:.55;background:var(--deep-purple);padding:0}.carousel-thumb img{width:100%;height:100%;object-fit:cover}.carousel-thumb.active{border-color:var(--bright-purple);opacity:1;box-shadow:0 0 10px #a4f6}.carousel-thumb:hover{opacity:.85}.bookshelf-hint{font-size:.82rem;color:var(--text-muted);text-align:center;margin-bottom:1.6rem;letter-spacing:.06em;font-style:italic}.library{position:relative;border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 20px 60px #000c,inset 0 0 80px #0006}.library-wall{position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 38px,rgba(0,0,0,.25) 38px,rgba(0,0,0,.25) 40px),repeating-linear-gradient(90deg,transparent,transparent 78px,rgba(0,0,0,.12) 78px,rgba(0,0,0,.12) 80px),linear-gradient(180deg,#1a1008,#0e0a05 60%,#0a0603);background-color:#120d06}.library-wall:before{content:"";position:absolute;top:0;left:0;right:0;height:80px;background:radial-gradient(ellipse at center top,rgba(200,120,20,.15) 0%,transparent 70%);pointer-events:none}.library-wall:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.5) 0%,transparent 12%,transparent 88%,rgba(0,0,0,.5) 100%);pointer-events:none}.library-torch{position:absolute;top:0;width:28px;z-index:3;display:flex;flex-direction:column;align-items:center;pointer-events:none}.library-torch--left{left:14px}.library-torch--right{right:14px}.library-torch-flame{font-size:1.1rem;animation:torchFlicker 2.2s ease-in-out infinite;line-height:1;margin-top:8px}.library-torch--right .library-torch-flame{animation-delay:.7s}@keyframes torchFlicker{0%,to{transform:scale(1) translateY(0);opacity:.9}25%{transform:scale(.9) translateY(1px);opacity:.7}50%{transform:scale(1.05) translateY(-1px);opacity:1}75%{transform:scale(.95) translateY(0);opacity:.8}}.library-torch-glow{width:40px;height:40px;border-radius:50%;background:radial-gradient(circle,rgba(255,160,30,.35) 0%,transparent 70%);margin-top:-8px;animation:torchFlicker 2.2s ease-in-out infinite}.library-torch--right .library-torch-glow{animation-delay:.7s}.library-torch-bracket{width:6px;height:22px;background:linear-gradient(180deg,#5a3d10,#2e1f08);border-radius:2px;box-shadow:0 2px 6px #0009}.bookcase{position:relative;z-index:2;margin:0 44px;padding:0}.bookcase-crown{height:16px;background:linear-gradient(180deg,#6b4a1c,#4a3010,#3a2208);border-radius:4px 4px 0 0;box-shadow:0 -2px 6px #0006,inset 0 2px 4px #ffc86414,inset 0 -1px 2px #00000080;position:relative}.bookcase-crown:before{content:"";position:absolute;top:3px;left:8px;right:8px;height:2px;background:linear-gradient(90deg,transparent,rgba(255,200,100,.15),transparent);border-radius:1px}.bookcase-base{height:14px;background:linear-gradient(180deg,#3a2208,#4a3010,#2a1a06);border-radius:0 0 4px 4px;box-shadow:0 4px 12px #000000b3,inset 0 1px #ffc8640d}.bookcase-shelf{position:relative}.bookcase-shelf:before,.bookcase-shelf:after{content:"";position:absolute;top:0;bottom:0;width:10px;background:linear-gradient(90deg,#5a3d10,#3a2208);z-index:3}.bookcase-shelf:before{left:0;box-shadow:inset 2px 0 4px #ffc8640f}.bookcase-shelf:after{right:0;box-shadow:inset -2px 0 4px #ffc8640f}.shelf-plank{position:relative;z-index:3;height:12px;background:linear-gradient(180deg,#6b4a1c,#5a3d10 40%,#3a2208);box-shadow:0 4px 12px #000000b3,0 1px #ffc8640f,inset 0 1px 2px #ffdc781a}.shelf-plank:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent,transparent 40px,rgba(0,0,0,.08) 40px,rgba(0,0,0,.08) 41px)}.shelf-row{display:flex;align-items:flex-end;gap:3px;padding:10px 14px 0;background:linear-gradient(180deg,#0a0602e6,#060301f2);min-height:152px;position:relative;overflow:hidden}.shelf-row:after{content:"";position:absolute;bottom:0;left:0;right:0;height:4px;background:#0006}.book{position:relative;display:flex;flex-shrink:0;cursor:pointer;animation:bookRise .4s ease both;transition:transform .22s cubic-bezier(.34,1.56,.64,1),filter .2s ease}.book--available:hover{transform:translateY(-14px);filter:brightness(1.15);z-index:10}.book--locked{opacity:.3;cursor:not-allowed;filter:grayscale(.6)}.book--locked:hover{transform:none;filter:grayscale(.6)}.book--filler{cursor:default;pointer-events:none}@keyframes bookRise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.book-spine{width:var(--book-width, 26px);height:var(--book-height, 118px);background:linear-gradient(90deg,rgba(255,255,255,.06) 0%,transparent 20%,transparent 80%,rgba(0,0,0,.3) 100%),linear-gradient(180deg,var(--book-color) 0%,var(--book-color-dark) 100%);border-radius:2px 0 0 2px;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:7px 0;box-shadow:inset 1px 0 3px #ffffff1a,inset -2px 0 5px #00000073;overflow:hidden;position:relative}.book-spine:before{content:"";position:absolute;inset:16px 3px;border:1px solid rgba(255,255,255,.07);border-radius:1px;pointer-events:none}.book--available:hover .book-spine{box-shadow:inset 1px 0 3px #ffffff2e,inset -2px 0 5px #0000004d,0 0 18px color-mix(in srgb,var(--book-color) 55%,transparent),0 0 35px color-mix(in srgb,var(--book-color) 25%,transparent)}.book-spine-title{writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);font-size:.48rem;letter-spacing:.07em;color:#fffc;font-family:var(--font-heading);text-align:center;flex:1;overflow:hidden;white-space:nowrap;padding:2px 0;text-shadow:0 1px 2px rgba(0,0,0,.6)}.book-enchant{font-size:.48rem;color:#ffffff59;line-height:1;flex:0 0 auto}.book--available:hover .book-enchant{color:#ffffffe6;animation:enchantGlow 1.4s ease-in-out infinite}@keyframes enchantGlow{0%,to{text-shadow:none;opacity:.7}50%{text-shadow:0 0 6px rgba(180,120,255,.9);opacity:1}}.book-lock{font-size:.65rem}.book-pages-edge{width:5px;height:var(--book-height, 118px);background:linear-gradient(180deg,#e8e0c8,#d4c9a8,#c8bc98 60%,#b8ac88);border-radius:0 1px 1px 0;box-shadow:inset -2px 0 4px #00000059;position:relative;overflow:hidden}.book-pages-edge:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(180deg,transparent,transparent 2px,rgba(0,0,0,.07) 2px,rgba(0,0,0,.07) 3px)}.book-tooltip{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);background:#0a0414f2;border:1px solid rgba(111,0,255,.4);border-radius:6px;padding:.4rem .7rem;white-space:nowrap;font-size:.65rem;color:var(--text-primary);pointer-events:none;opacity:0;transition:opacity .2s ease;z-index:20;letter-spacing:.05em;box-shadow:0 4px 16px #0009}.book-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#6f00ff66}.book--available:hover .book-tooltip{opacity:1}.shelf-deco{display:flex;align-items:flex-end;flex-shrink:0;padding-bottom:2px}.shelf-deco-item{font-size:1rem;line-height:1;filter:drop-shadow(0 2px 4px rgba(0,0,0,.6));animation:decoFloat 4s ease-in-out infinite}@keyframes decoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.book-reader-overlay{position:fixed;inset:0;background:#020008eb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.5rem;animation:overlayFadeIn .3s ease}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.open-book-wrap{perspective:1400px;display:flex;align-items:center;justify-content:center;width:100%;max-width:860px}.open-book{display:flex;width:100%;max-height:82vh;border-radius:4px;box-shadow:0 30px 80px #000000e6,0 0 60px #5000a033,0 0 0 1px #3c1e0a99;animation:bookSpread .55s cubic-bezier(.22,1,.36,1);transform-origin:center center}@keyframes bookSpread{0%{opacity:0;transform:perspective(1400px) rotateY(-18deg) scale(.82) translateY(20px)}60%{opacity:1}to{opacity:1;transform:perspective(1400px) rotateY(0) scale(1) translateY(0)}}.book-page-left{flex:1;min-height:460px;background:linear-gradient(160deg,#2a1a0e,#1e1008,#180d06);border-radius:3px 0 0 3px;position:relative;overflow:hidden;display:flex;flex-direction:column;padding:2rem 1.8rem 1.5rem;box-shadow:inset -10px 0 20px #00000080}.book-page-left:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(142deg,transparent,transparent 12px,rgba(255,255,255,.012) 12px,rgba(255,255,255,.012) 13px);pointer-events:none}.book-page-left:after{content:"✦";position:absolute;bottom:1.2rem;right:1.4rem;font-size:.7rem;color:#b4823c4d}.book-binding{flex:0 0 20px;background:linear-gradient(90deg,#1a0e06,#2e1c0a,#3d2610,#2e1c0a,#1a0e06);position:relative;box-shadow:-6px 0 16px #0009,6px 0 16px #0009;z-index:2}.book-binding:before{content:"";position:absolute;top:20px;bottom:20px;left:50%;transform:translate(-50%);width:2px;background:repeating-linear-gradient(180deg,rgba(255,200,80,.2) 0px,rgba(255,200,80,.2) 8px,transparent 8px,transparent 14px)}.book-page-right{flex:1.1;background:linear-gradient(170deg,#f2e8d0,#ede0c0 30%,#e6d8b8 70%,#ddd0a8);border-radius:0 3px 3px 0;display:flex;flex-direction:column;overflow:hidden;position:relative;box-shadow:inset 10px 0 20px #00000026,inset -4px 0 8px #00000014}.book-page-right:before{content:"";position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");opacity:.5;pointer-events:none;mix-blend-mode:multiply}.left-page-ornament{text-align:center;margin-bottom:1rem}.left-page-ornament-line{display:flex;align-items:center;gap:.5rem;justify-content:center;margin-bottom:.4rem}.left-page-ornament-line:before,.left-page-ornament-line:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(180,130,60,.5),transparent)}.left-page-ornament-symbol{font-size:.9rem;color:#b4823cb3}.left-page-chapter-label{font-size:.55rem;letter-spacing:.18em;text-transform:uppercase;color:#b4823c99;font-family:var(--font-heading);margin-bottom:.5rem;text-align:center}.left-page-category{display:inline-block;font-size:.55rem;letter-spacing:.12em;text-transform:uppercase;color:#b4823ccc;border:1px solid rgba(180,130,60,.3);padding:.15rem .6rem;border-radius:999px;margin-bottom:1.2rem}.left-page-title{font-family:var(--font-heading);font-size:clamp(.9rem,2.5vw,1.2rem);letter-spacing:.1em;color:#c8a060;line-height:1.4;text-align:center;margin-bottom:1.4rem;text-shadow:0 1px 3px rgba(0,0,0,.5)}.left-page-divider{display:flex;align-items:center;gap:.6rem;margin-bottom:1.2rem}.left-page-divider:before,.left-page-divider:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(160,110,40,.4),transparent)}.left-page-divider-symbol{font-size:.7rem;color:#a06e2880}.left-page-flavour{font-family:Georgia,serif;font-style:italic;font-size:.72rem;color:#b4965aa6;line-height:1.8;text-align:center;flex:1}.left-page-footer{text-align:center;margin-top:auto;padding-top:1rem;border-top:1px solid rgba(160,110,40,.2)}.left-page-footer span{font-size:.55rem;letter-spacing:.1em;color:#a06e2866;font-family:var(--font-heading);text-transform:uppercase}.right-page-inner{flex:1;display:flex;flex-direction:column;padding:1.8rem 1.6rem 1rem 1.4rem;overflow:hidden}.right-page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1rem}.right-page-running-title{font-size:.55rem;letter-spacing:.12em;text-transform:uppercase;color:#64461e8c;font-family:var(--font-heading)}.book-close-btn{background:transparent;border:1px solid rgba(100,70,30,.3);color:#64461e99;width:26px;height:26px;border-radius:50%;cursor:pointer;font-size:.72rem;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex:0 0 26px}.book-close-btn:hover{background:#64461e1f;color:#64461ee6;border-color:#64461e80}.right-page-drop-cap:first-letter{font-family:var(--font-heading);font-size:3.2em;float:left;line-height:.78;padding-right:.12em;padding-top:.08em;color:#643c14bf}.right-page-content{flex:1;overflow-y:auto;padding-right:.3rem;scrollbar-width:thin;scrollbar-color:rgba(150,100,40,.3) transparent}.right-page-content p{font-family:Georgia,serif;font-size:.84rem;color:#4a3220;line-height:1.9;white-space:pre-line}.right-page-divider-line{display:flex;align-items:center;gap:.5rem;margin:.8rem 0 .5rem}.right-page-divider-line:before,.right-page-divider-line:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(100,70,30,.25),transparent)}.right-page-divider-line span{font-size:.6rem;color:#64461e4d}.right-page-footer{display:flex;align-items:center;justify-content:space-between;padding-top:.8rem;border-top:1px solid rgba(100,70,30,.15);margin-top:.8rem}.right-page-footer span{font-size:.6rem;color:#64461e66;font-family:Georgia,serif;font-style:italic}.right-page-page-num{font-family:var(--font-heading);font-size:.55rem;color:#64461e59;letter-spacing:.1em}@media(max-width:600px){.book-page-left,.book-binding{display:none}.book-page-right{border-radius:3px}.right-page-inner{padding:1.4rem 1.2rem}.open-book{max-height:88vh}}.cv-content>*{animation:fadeInUp .35s ease both}@media(max-width:680px){.cv-body{flex-direction:column}.cv-sidebar{width:100%;flex-direction:row;overflow-x:auto;padding:.5rem;gap:.25rem;border-right:none;border-bottom:1px solid var(--card-border)}.cv-tab-btn{flex-shrink:0;white-space:nowrap;font-size:.7rem;padding:.5rem .75rem}.cv-tab-btn svg{display:none}.cv-content{padding:1.5rem 1rem}}.armor-slot.active-slot{background:#6f00ff2e}
