@font-face{font-family:OCH;src:url('./assets/font-display.ttf') format('truetype');font-display:block}@font-face{font-family:Pixel;src:url('./assets/font-pixel.ttf') format('truetype');font-display:block}
:root{--night:#07141b;--night-2:#0b2029;--ink:#101a1d;--paper:#eee4c7;--paper-2:#e4d7b6;--teal:#178d91;--teal-bright:#43c5bd;--lime:#bddf19;--pink:#eb55a5;--gold:#f0b942;--ice:#dbf4ef;--muted:#839b9c;--line:rgba(198,236,228,.18);--pixel:Pixel,monospace;--body:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",sans-serif;--display:OCH,"PingFang SC","Microsoft YaHei",Impact,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--night);color:var(--ice);font-family:var(--body);font-size:16px;overflow-x:hidden;-webkit-font-smoothing:antialiased}button,a{font:inherit}button{color:inherit}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.pixel{image-rendering:pixelated}.shell{width:min(1240px,calc(100% - 56px));margin:auto}.grain{position:fixed;z-index:80;inset:0;pointer-events:none;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.28'/%3E%3C/svg%3E");mix-blend-mode:soft-light}.cursor-glow{position:fixed;z-index:1;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(67,197,189,.11),transparent 67%);transform:translate(-50%,-50%);pointer-events:none;transition:opacity .3s}.page-progress{position:fixed;z-index:120;left:0;right:0;top:0;height:3px;background:rgba(255,255,255,.04)}.page-progress i{display:block;height:100%;width:100%;background:var(--lime);transform-origin:left;transform:scaleX(0)}
.back-to-top{position:fixed;z-index:130;right:38px;bottom:40px;width:54px;height:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:1px solid rgba(189,223,25,.52);border-radius:14px;background:rgba(7,20,27,.9);color:var(--lime);box-shadow:0 14px 36px rgba(0,0,0,.35);backdrop-filter:blur(12px);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(12px);transition:opacity .22s,transform .22s,visibility .22s,background .22s,color .22s}
.back-to-top.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:none}.back-to-top:hover{background:var(--lime);color:var(--ink);transform:translateY(-3px)}.back-to-top b{font:18px/1 var(--pixel)}.back-to-top span{font:6px/1 var(--pixel);letter-spacing:.08em}
@media(max-width:680px){.back-to-top{right:20px;bottom:calc(28px + env(safe-area-inset-bottom,0px));width:44px;height:44px;border-radius:12px}.back-to-top b{font-size:15px}.back-to-top span{font-size:5px}}
.ticker{height:28px;overflow:hidden;background:var(--pink);color:#fff;position:relative;z-index:30;border-bottom:1px solid #ffaad4;font:9px/28px var(--pixel);letter-spacing:.04em;white-space:nowrap}.ticker-track{display:inline-block;min-width:200%;animation:ticker 26s linear infinite}.ticker span{margin:0 34px}.ticker b{color:var(--gold)}@keyframes ticker{to{transform:translateX(-50%)}}
.nav{height:74px;position:absolute;z-index:40;top:28px;left:0;right:0;margin-inline:auto;width:min(1240px,calc(100% - 56px));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(214,245,239,.18)}.brand{display:flex;align-items:center;gap:15px}.brand img{width:122px;height:auto}.brand>span{display:flex;flex-direction:column;gap:4px;padding-left:15px;border-left:1px solid rgba(255,255,255,.2);font:9px/1 var(--pixel);letter-spacing:.06em}.brand small{font:10px/1 var(--body);color:#7d989a;letter-spacing:0}.nav-links{display:flex;gap:34px;font-size:13px;color:#b4c9c7}.nav-links a{position:relative}.nav-links a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--lime);transition:right .3s}.nav-links a:hover:after{right:0}.nav-play{height:38px;padding:0 15px;display:flex;align-items:center;gap:13px;border:1px solid rgba(223,246,241,.28);background:rgba(6,17,23,.55);font-size:12px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.35);transition:.25s}.nav-play:hover{background:var(--lime);border-color:#e7ff56;color:var(--ink)}
.hero{min-height:850px;position:relative;display:flex;align-items:center;overflow:hidden}.hero-map,.hero-wash,.hero-grid{position:absolute;inset:0}.hero-map{background:url('./assets/banner-yf.png') center/cover no-repeat;image-rendering:pixelated;opacity:.68;transform:scale(1.04)}.hero-wash{background:linear-gradient(90deg,rgba(7,20,27,.99) 2%,rgba(7,20,27,.88) 42%,rgba(7,20,27,.23) 72%,rgba(7,20,27,.8)),linear-gradient(0deg,var(--night),transparent 40%)}.hero-grid{opacity:.14;background-image:linear-gradient(rgba(193,244,235,.19) 1px,transparent 1px),linear-gradient(90deg,rgba(193,244,235,.19) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(90deg,#000,transparent 72%)}.hero-inner{position:relative;z-index:3;padding-top:120px;display:grid;grid-template-columns:.92fr 1.08fr;align-items:center;gap:60px}.overline,.kicker{font:9px/1 var(--pixel);letter-spacing:.06em}.overline{display:flex;align-items:center;gap:12px;color:#8fabaa}.overline span{display:grid;place-items:center;width:28px;height:22px;background:var(--pink);color:white}.hero h1{margin:23px 0 24px;font:900 clamp(56px,7.2vw,108px)/1.08 var(--display);letter-spacing:.015em;color:#f4f0df;text-transform:uppercase;text-shadow:0 7px 0 rgba(0,0,0,.22)}.hero h1 em{display:inline-block;color:var(--lime);font-style:normal}.hero-copy>p{max-width:520px;color:#a8bebc;font-size:17px;line-height:1.75;margin:0}.hero-actions,.finish-actions{display:flex;gap:11px;margin-top:31px}.btn{min-height:48px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:18px;border:1px solid rgba(211,241,235,.24);background:none;cursor:pointer;font-size:13px;transition:transform .2s,background .2s,color .2s,border .2s}.btn:hover{transform:translateY(-3px)}.btn-lime{background:var(--lime);color:#142009;border-color:#e5ff4d;box-shadow:inset 0 -4px 0 #77950a,0 15px 35px rgba(189,223,25,.13);font-weight:700}.btn-ghost{background:rgba(5,17,23,.66);color:#d7ebe7}.hero-proof{display:flex;align-items:center;gap:11px;margin-top:34px;color:#749392}.proof-dot{width:8px;height:8px;border-radius:50%;background:var(--teal-bright);box-shadow:0 0 0 5px rgba(67,197,189,.11),0 0 18px var(--teal-bright);animation:pulse 2s infinite}.hero-proof b{display:block;font:8px var(--pixel);letter-spacing:.05em;color:#a9c7c3}.hero-proof small{display:block;margin-top:4px;font-size:11px}.hero-object{position:relative;height:540px;perspective:1000px;transform-style:preserve-3d}.event-card{position:absolute;left:8%;right:3%;top:7%;bottom:4%;background:rgba(7,21,28,.92);border:1px solid rgba(219,248,241,.35);box-shadow:0 44px 90px rgba(0,0,0,.5),inset 0 0 0 8px rgba(255,255,255,.025);overflow:hidden;transform:rotate(2.2deg);transition:transform .2s ease-out}.event-card:after{content:"";position:absolute;inset:9px;border:1px solid rgba(255,255,255,.07);pointer-events:none}.event-card-head,.event-card-foot{height:56px;padding:0 20px;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:2;background:#0b1a22}.event-card-head span{font:9px var(--pixel);color:#8cafac}.event-card-head b{font:17px var(--pixel);color:var(--lime)}.event-card-map{position:absolute;inset:56px 0 74px;background:url('./assets/banner-yf.png') center/cover;image-rendering:pixelated}.event-card-map:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,20,27,.75),transparent 44%)}.yf-logo{position:absolute;z-index:3;left:28px;top:75px;width:58%;filter:drop-shadow(0 8px 15px rgba(0,0,0,.48))}.event-card-foot{height:74px;position:absolute;bottom:0;left:0;right:0;justify-content:flex-start;gap:55px}.event-card-foot div{display:flex;flex-direction:column;gap:6px}.event-card-foot small{font:7px var(--pixel);color:#587677}.event-card-foot b{font:12px var(--pixel);color:#e6f4ec}.float-sprite{position:absolute;z-index:5;filter:drop-shadow(0 13px 5px rgba(0,0,0,.5));animation:float 3.8s ease-in-out infinite}.hero-knight{width:118px;right:-5px;bottom:8%}.hero-corn{width:52px;left:1%;top:16%;animation-delay:-1.1s}.map-pin{position:absolute;z-index:6;color:#fff;font:7px var(--pixel);display:flex;align-items:center;gap:7px}.map-pin i{width:11px;height:11px;background:var(--pink);box-shadow:0 0 0 5px rgba(235,85,165,.18)}.pin-a{right:18%;top:35%}.pin-b{right:35%;top:58%}.pin-b i{background:var(--lime);box-shadow:0 0 0 5px rgba(189,223,25,.14)}@keyframes float{50%{translate:0 -12px;rotate:2deg}}@keyframes pulse{50%{opacity:.35}}.scroll-hint{position:absolute;z-index:5;left:50%;bottom:26px;transform:translateX(-50%);display:flex;align-items:center;gap:14px;font:7px var(--pixel);color:#70908f}.scroll-hint i{display:block;width:64px;height:1px;background:#557373;position:relative}.scroll-hint i:after{content:"";position:absolute;right:0;top:-2px;width:5px;height:5px;background:var(--lime)}
.section-head{display:grid;grid-template-columns:1fr .56fr;align-items:end;gap:70px;margin-bottom:58px}.section-head h2{font:900 clamp(40px,5.2vw,72px)/1.1 var(--display);letter-spacing:.015em;text-transform:uppercase;margin:18px 0 0}.section-head p{color:#8da7a4;font-size:15px;line-height:1.8;margin:0}.section-head.ink{color:var(--ink)}.section-head.ink p{color:#475b59}.kicker{color:var(--pink)}
.event-section{position:relative;background:var(--paper);color:var(--ink);padding:128px 0 132px;clip-path:polygon(0 0,100% 0,100% calc(100% - 34px),73% 100%,0 calc(100% - 12px))}.event-section:before{content:"";position:absolute;inset:0;opacity:.19;background-image:linear-gradient(rgba(24,38,39,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(24,38,39,.14) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,#000,transparent 65%)}.event-section>.shell{position:relative}.number-ribbon{min-height:150px;background:var(--ink);color:white;display:grid;grid-template-columns:1fr 1px 1fr 1px 1fr;align-items:center;position:relative;padding:28px 70px;margin-bottom:24px;overflow:hidden}.number-ribbon>div{display:flex;align-items:baseline;justify-content:center;gap:17px}.number-ribbon b{font:64px/1 var(--display);color:var(--lime)}.number-ribbon span{font-size:12px;color:#aac0bd}.number-ribbon>i{height:58px;background:#38504f}.ribbon-corn{position:absolute;width:80px;right:-18px;bottom:-18px;transform:rotate(15deg);opacity:.75}.route-board{position:relative;display:grid;grid-template-columns:repeat(4,1fr);padding:58px 30px 48px;border:1px solid #b3a887;background:rgba(248,242,221,.58)}.route-line{position:absolute;left:14%;right:14%;top:97px;height:1px;border-top:2px dotted #9e9477}.route-step{position:relative;text-align:center;padding:0 25px}.step-no{position:absolute;left:18px;top:-40px;font:8px var(--pixel);color:#8f856d}.step-icon{position:relative;z-index:2;width:78px;height:78px;margin:0 auto 27px;background:var(--paper);border:1px solid #978d71;display:grid;place-items:center;box-shadow:0 0 0 9px var(--paper)}.step-icon img{width:42px;max-height:46px}.route-step h3{font:800 22px/1.2 var(--display);margin:0 0 10px}.route-step p{font-size:12px;line-height:1.65;color:#52625e;margin:0}.route-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}.choice-card{position:relative;min-height:420px;padding:34px 38px;overflow:hidden}.choice-card:after{content:"";position:absolute;width:240px;height:240px;right:-115px;bottom:-125px;border:34px solid rgba(255,255,255,.055);transform:rotate(25deg)}.choice-card.silo{background:#173c3e;color:#e7f4e9}.choice-card.raffle{background:#26192a;color:#f6e5ef}.choice-top{display:flex;align-items:center;justify-content:space-between}.choice-top span{font:8px var(--pixel);color:#85aaa6}.choice-top img{width:42px;image-rendering:pixelated}.choice-card h3{font:900 60px/1 var(--display);margin:44px 0 8px}.choice-card p{font-size:13px;color:#95aca8}.choice-card dl{position:absolute;left:38px;right:38px;bottom:30px;margin:0}.choice-card dl div{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.18);padding:13px 0}.choice-card dt{font-size:12px}.choice-card dd{margin:0;font:9px var(--pixel);color:var(--gold)}.choice-total{position:absolute;right:30px;top:115px;font:48px var(--display);color:var(--lime)}.raffle .choice-total{color:var(--pink)}.choice-total span{display:block;text-align:right;font:7px var(--pixel)}.wallet-note{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:17px;padding:20px 24px;margin-top:24px;border:1px solid #b86987;background:#ead6d5}.wallet-note>b{display:grid;place-items:center;width:38px;height:38px;background:var(--pink);color:white;font:18px var(--pixel)}.wallet-note strong{display:block;font-size:14px}.wallet-note p{font-size:12px;color:#665557;margin:5px 0 0}.wallet-note>span{font:7px var(--pixel);color:#9d3b63}
.play-section{position:relative;padding:150px 0 132px;overflow:hidden;background:var(--night)}.play-section:before{content:"PLAY";position:absolute;top:30px;left:-30px;font:260px/.8 var(--display);color:transparent;-webkit-text-stroke:1px rgba(190,232,224,.05)}.play-orbit{position:absolute;border:1px solid rgba(67,197,189,.13);border-radius:48%;transform:rotate(24deg)}.orbit-a{width:680px;height:680px;right:-280px;top:120px}.orbit-b{width:510px;height:510px;right:-210px;top:205px}.lesson-player{min-height:660px;display:grid;grid-template-columns:300px 1fr;background:#091118;border:1px solid rgba(189,230,222,.22);box-shadow:0 45px 100px rgba(0,0,0,.35)}.lesson-nav{border-right:1px solid rgba(189,230,222,.15);padding:24px 17px}.lesson-index{height:46px;padding:0 11px;display:flex;justify-content:space-between;align-items:center;font:8px var(--pixel);color:#607d7c;border-bottom:1px solid rgba(189,230,222,.12)}.lesson-index span{color:var(--pink)}.lesson-tab{width:100%;display:grid;grid-template-columns:30px 1fr auto;gap:10px;align-items:start;padding:19px 11px;border:1px solid transparent;border-bottom-color:rgba(189,230,222,.09);background:transparent;text-align:left;cursor:pointer;color:#7f9896;transition:.25s}.lesson-tab:hover{color:#d5e8e4}.lesson-tab.active{background:linear-gradient(90deg,rgba(31,122,123,.37),rgba(17,42,49,.28));border-color:rgba(67,197,189,.3);color:white}.lesson-tab>span{font:8px var(--pixel);color:#4d6c6c;margin-top:3px}.lesson-tab.active>span{color:var(--lime)}.lesson-tab b{display:block;font-size:13px;font-weight:500}.lesson-tab small{display:block;font-size:10px;color:#627e7c;margin-top:6px}.lesson-tab>i{font:6px var(--pixel);font-style:normal;color:#435e5d;margin-top:4px}.media-console{padding:22px}.console-bar{height:42px;display:flex;align-items:center;justify-content:space-between;color:#6a8583;font:7px var(--pixel)}.console-bar>div{display:flex;gap:5px}.console-bar>div i{width:7px;height:7px;background:#2d4445}.console-bar>div i:first-child{background:var(--pink)}.console-bar b{color:var(--teal-bright)}.media-stage{position:relative;height:455px;overflow:hidden;background:#020608;border:1px solid rgba(204,239,232,.18)}.media-stage video,.media-stage>img{width:100%;height:100%;object-fit:cover}.media-stage>img{display:none}.media-vignette{position:absolute;inset:0;box-shadow:inset 0 0 80px rgba(0,0,0,.4);pointer-events:none}.tutorial-arrow{position:absolute;left:47%;top:45%;width:84px;height:6px;background:repeating-linear-gradient(90deg,var(--gold) 0 9px,transparent 9px 16px);filter:drop-shadow(0 0 4px #000);animation:arrowPulse 1.5s steps(2) infinite}.tutorial-arrow:after{content:"";position:absolute;right:-12px;top:-6px;border:9px solid transparent;border-left-color:var(--gold)}@keyframes arrowPulse{50%{opacity:.35;transform:translateX(7px)}}.tutorial-note{position:absolute;left:18px;bottom:18px;max-width:480px;display:flex;gap:13px;align-items:center;padding:13px 15px;background:rgba(5,15,20,.88);border:1px solid rgba(218,242,237,.25);backdrop-filter:blur(10px)}.tutorial-note b{display:grid;place-items:center;min-width:30px;height:30px;background:var(--pink);font:8px var(--pixel)}.tutorial-note span{font-size:12px;line-height:1.55}.media-status{position:absolute;right:17px;top:16px;display:flex;gap:15px;padding:9px 11px;background:rgba(2,7,9,.75);font:6px var(--pixel)}.media-status span{color:#8bb4af}.media-status span i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--pink);margin-right:6px}.media-status b{color:var(--lime)}.console-caption{height:96px;display:grid;grid-template-columns:90px 1fr auto;gap:18px;align-items:center;padding:0 6px}.console-caption>span{font:7px var(--pixel);color:var(--pink)}.console-caption p{font-size:13px;line-height:1.55;color:#a5bcba}.chapter-dots{display:flex;gap:5px}.chapter-dots i{width:21px;height:3px;background:#294143}.chapter-dots i.active{background:var(--lime)}.quick-rules{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid rgba(189,230,222,.16);border-top:0}.quick-rules article{padding:28px;border-right:1px solid rgba(189,230,222,.13)}.quick-rules article:last-child{border:0}.quick-rules span{font:7px var(--pixel);color:var(--pink)}.quick-rules b{display:block;margin:14px 0 8px;font-size:16px}.quick-rules p{font-size:11px;line-height:1.65;color:#6f8987;margin:0}
.talent-section{background:var(--paper);color:var(--ink);padding:140px 0;position:relative}.talent-section:before{content:"";position:absolute;right:0;top:0;width:38%;height:100%;background:var(--paper-2);clip-path:polygon(28% 0,100% 0,100% 100%,0 100%)}.talent-section>.shell{position:relative}.talent-stage{display:grid;grid-template-columns:1fr 365px;gap:24px}.talent-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.talent-card{position:relative;min-height:410px;padding:28px 20px 24px;background:#172429;color:white;border:1px solid #344a49;cursor:pointer;overflow:hidden;transition:.3s;text-align:left}.talent-card:after{content:"";position:absolute;width:150px;height:150px;right:-82px;top:-82px;border:24px solid rgba(255,255,255,.035);transform:rotate(45deg)}.talent-card:hover{transform:translateY(-7px)}.talent-card.active{background:#102f32;border-color:#23aaa7;box-shadow:inset 0 -5px 0 var(--lime),0 25px 50px rgba(39,77,71,.2)}.talent-card>img{width:120px;height:120px;object-fit:contain;margin:65px auto 45px;filter:drop-shadow(0 13px 15px rgba(0,0,0,.35))}.rarity{position:absolute;left:15px;top:15px;padding:6px 8px;font:6px var(--pixel);border:1px solid}.rarity.rare{color:#62d0ff;border-color:#337f9e}.rarity.epic{color:#f18cff;border-color:#9450a0}.talent-card small{font:7px var(--pixel);color:#6c918f}.talent-card h3{font:31px/1 var(--display);margin:11px 0 7px}.talent-card p{font-size:13px;color:#a7c0bc;margin:0}.talent-advice{min-height:410px;background:#f8efd5;border:1px solid #ad9f7c;padding:28px;display:flex;flex-direction:column}.advice-label{font:7px var(--pixel);color:#a5687f}.advice-icon{width:78px;height:78px;display:grid;place-items:center;border:1px solid #af9f78;background:var(--paper);margin-top:32px}.advice-icon img{width:62px;height:62px}.talent-advice h3{font:800 24px/1.3 var(--display);margin:25px 0 12px}.talent-advice>p{font-size:13px;line-height:1.65;color:#52605b}.advice-rule{margin-top:auto;border-top:1px solid #c4b795;padding-top:16px}.advice-rule span{font-size:10px;color:#8e8062}.advice-rule b{display:block;margin-top:6px;font-size:13px}.text-button{margin-top:20px;padding:0;border:0;background:none;text-align:left;color:#b12869;cursor:pointer;font-size:12px}.text-button span{float:right}
.shop-section{padding:135px 0;background:#0d252c;position:relative}.shop-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:72px;align-items:center}.shop-copy h2{font:clamp(45px,5vw,72px)/.94 var(--display);text-transform:uppercase;margin:18px 0 24px}.shop-copy>p{font-size:14px;line-height:1.75;color:#87a4a1}.shop-copy ol{list-style:none;margin:38px 0 0;padding:0}.shop-copy li{display:grid;grid-template-columns:32px 1fr;gap:14px;padding:15px 0;border-top:1px solid rgba(193,232,224,.16)}.shop-copy li>span{font:7px var(--pixel);color:var(--lime);margin-top:4px}.shop-copy li b{display:block;font-size:14px}.shop-copy li small{display:block;color:#698784;font-size:11px;margin-top:5px}.shop-frame{margin:0;position:relative;padding:10px;background:#061116;border:1px solid rgba(203,239,231,.2);box-shadow:22px 22px 0 #14383f}.shop-frame img{width:100%;aspect-ratio:1.85;object-fit:cover}.shop-frame figcaption{height:42px;display:flex;align-items:center;justify-content:space-between;padding:0 8px;font:6px var(--pixel);color:#6b8b88}.shop-frame figcaption b{color:var(--teal-bright)}.callout{position:absolute;display:flex;align-items:center;gap:8px;background:var(--paper);color:var(--ink);padding:8px 10px;box-shadow:0 8px 18px rgba(0,0,0,.22);font-size:10px}.callout b{display:grid;place-items:center;width:22px;height:22px;background:var(--pink);color:white;font:6px var(--pixel)}.callout:after{content:"";position:absolute;width:65px;border-top:1px dashed var(--paper)}.callout-a{left:33%;top:16%}.callout-a:after{right:100%;top:50%}.callout-b{right:8%;bottom:19%}.callout-b:after{left:100%;top:50%}
.finish-section{padding:140px 0;position:relative;overflow:hidden;background:#060a0d}.finish-bg{position:absolute;inset:0;background:url('./assets/summary-bg.jpg') center/cover;opacity:.14;filter:saturate(.7)}.finish-section:after{content:"VICTORY";position:absolute;left:-15px;bottom:-45px;color:transparent;-webkit-text-stroke:1px rgba(235,85,165,.11);font:250px/.8 var(--display)}.finish-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.08fr .92fr;gap:74px;align-items:center}.finish-media{position:relative;padding:10px;background:#101b20;border:1px solid rgba(231,247,243,.24);box-shadow:0 40px 90px rgba(0,0,0,.45)}.finish-media img{width:100%;image-rendering:auto}.finish-media>span{position:absolute;left:20px;top:20px;background:var(--pink);padding:7px 9px;font:6px var(--pixel)}.finish-copy h2{font:900 clamp(44px,5.4vw,78px)/1.1 var(--display);text-transform:uppercase;margin:18px 0 24px}.finish-copy h2 em{font-style:normal;color:var(--lime)}.finish-copy>p{font-size:14px;line-height:1.75;color:#829d9a}.result-row{display:flex;gap:50px;margin-top:35px}.result-row div{display:flex;flex-direction:column}.result-row b{font:42px var(--display);color:var(--gold)}.result-row span{font:6px var(--pixel);color:#6d8986;margin-top:5px}
footer{position:relative;overflow:hidden;background:#05090b;border-top:1px solid rgba(199,234,228,.12);padding:0 0 28px;color:#57706f}.footer-cast-stage{position:relative;min-height:0;padding:48px 0 0;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;border-bottom:1px solid rgba(199,234,228,.1);background:radial-gradient(ellipse at 50% 100%,rgba(31,113,111,.2),transparent 56%),linear-gradient(180deg,#060a0d,#071116 62%,#05090b)}.footer-cast-stage:before{content:"";position:absolute;inset:0;opacity:.1;background-image:linear-gradient(rgba(193,244,235,.18) 1px,transparent 1px),linear-gradient(90deg,rgba(193,244,235,.18) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(0deg,#000,transparent 82%)}.footer-cast{position:relative;z-index:1;display:block;width:min(600px,calc(100% - 48px));margin-inline:auto;flex:0 1 auto;transition:transform .35s cubic-bezier(.16,1,.3,1),filter .35s}.footer-cast:hover{transform:translateY(-6px);filter:drop-shadow(0 16px 24px rgba(67,197,189,.12))}.footer-cast span{position:absolute;z-index:2;left:50%;top:-25px;transform:translateX(-50%);white-space:nowrap;color:#668380;font:6px var(--pixel);letter-spacing:.08em}.footer-cast img{width:100%;filter:drop-shadow(0 18px 20px rgba(0,0,0,.42))}footer>.shell{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:42px;padding-top:28px}.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand img{width:95px}.footer-brand span,footer a{font:6px var(--pixel)}footer p{font-size:10px}
.talent-dialog{width:min(980px,calc(100% - 32px));max-height:84vh;padding:0;border:1px solid #6f817a;background:var(--paper);color:var(--ink);box-shadow:0 30px 100px rgba(0,0,0,.68)}.talent-dialog::backdrop{background:rgba(2,7,9,.82);backdrop-filter:blur(8px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;padding:25px 28px;border-bottom:1px solid #c0b28d}.dialog-head span{font:6px var(--pixel);color:var(--pink)}.dialog-head h2{font:38px var(--display);margin:6px 0 0}.dialog-head button{border:1px solid #a89b79;background:transparent;width:38px;height:38px;font-size:26px;cursor:pointer}.dialog-tools{display:flex;justify-content:space-between;gap:16px;padding:18px 28px}.dialog-tools input{min-width:280px;background:#f7eed6;border:1px solid #a99d7f;padding:10px 12px;font:12px var(--body);outline:none}.filter{padding:9px 12px;border:1px solid #a99d7f;background:transparent;font-size:11px;cursor:pointer}.filter.active{background:var(--ink);color:white}.talent-list{padding:0 28px 30px;display:grid;grid-template-columns:repeat(3,1fr);gap:9px;overflow:auto;max-height:56vh}.talent-row{padding:15px;background:#f8efd9;border:1px solid #c4b898}.talent-row header{display:flex;align-items:center;gap:12px}.talent-row header .talent-icon{flex:none;width:44px;height:44px;padding:5px;object-fit:contain;background:#172429;border:1px solid #344a49}.talent-row span{font:6px var(--pixel);color:#a16279}.talent-row h3{font:19px var(--display);margin:5px 0 0}.talent-row>p{font-size:11px;line-height:1.55;color:#56605a;margin:12px 0 0}.talent-row>b{display:block;margin-top:10px;font-size:11px;color:#13716e}
.hero-inner>*,.section-head>*,.finish-grid>*,.boss-grid>*,.talent-stage>*,.route-choice>*{min-width:0}
.reveal{opacity:0;transform:translateY(38px);transition:opacity .8s ease,transform 1s cubic-bezier(.16,1,.3,1)}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){.nav-links{display:none}.hero{min-height:920px}.hero-inner{grid-template-columns:1fr;padding-top:150px}.hero-object{height:400px}.hero h1{font-size:80px}.section-head{grid-template-columns:1fr}.route-board{grid-template-columns:1fr 1fr;gap:52px 0}.route-line{display:none}.route-choice{grid-template-columns:1fr}.choice-or{height:54px}.choice-or:before{left:0;right:0;top:50%;height:1px;width:auto}.lesson-player{grid-template-columns:1fr}.lesson-nav{display:grid;grid-template-columns:repeat(4,1fr);border-right:0;border-bottom:1px solid var(--line)}.lesson-index{display:none}.lesson-tab{grid-template-columns:22px 1fr}.lesson-tab>i{display:none}.talent-stage,.shop-grid,.finish-grid{grid-template-columns:1fr}.talent-section:before{display:none}.talent-advice{min-height:330px}.shop-frame{order:-1}.number-ribbon{padding:24px}.number-ribbon b{font-size:44px}}
@media(max-width:680px){.shell,.nav{width:min(100% - 28px,1240px)}.ticker{height:24px;line-height:24px}.nav{top:24px;height:64px}.brand img{width:96px}.brand>span,.nav-play{display:none}.hero{min-height:830px;align-items:flex-start}.hero-inner{padding-top:150px;gap:30px}.hero h1{font-size:58px}.hero-copy>p{font-size:14px}.hero-actions{flex-direction:column;align-items:stretch}.hero-object{height:300px}.event-card{left:0;right:0}.event-card-foot{gap:25px}.hero-knight{width:82px}.hero-corn{width:37px}.map-pin{display:none}.event-section,.play-section,.talent-section,.shop-section,.finish-section{padding:94px 0}.section-head{gap:24px;margin-bottom:36px}.section-head h2{font-size:45px}.number-ribbon{grid-template-columns:1fr;gap:18px;text-align:center}.number-ribbon>i{display:none}.number-ribbon>div{justify-content:space-between}.route-board{grid-template-columns:1fr;padding:42px 20px}.route-step{padding:0 15px 32px;text-align:left;display:grid;grid-template-columns:66px 1fr;gap:0 15px}.step-no{left:auto;right:5px;top:4px}.step-icon{width:60px;height:60px;margin:0;grid-row:1/3}.step-icon img{width:34px}.route-step h3{align-self:end}.route-step p{grid-column:2}.choice-card{min-height:380px;padding:28px}.choice-card dl{left:28px;right:28px}.choice-total{right:25px}.wallet-note{grid-template-columns:38px 1fr}.wallet-note>span{display:none}.lesson-nav{grid-template-columns:1fr 1fr;padding:8px}.lesson-tab{padding:12px 8px}.lesson-tab small{display:none}.media-console{padding:8px}.media-stage{height:380px}.tutorial-note{right:12px;left:12px}.tutorial-arrow{display:none}.console-caption{grid-template-columns:1fr;height:auto;padding:18px 6px}.console-caption>span,.chapter-dots{display:none}.quick-rules{grid-template-columns:1fr}.quick-rules article{border-right:0;border-bottom:1px solid var(--line)}.talent-stage{display:block}.talent-cards{overflow-x:auto;grid-template-columns:repeat(3,225px);padding-bottom:12px}.talent-card{min-height:350px}.talent-card>img{width:92px;height:92px;margin:58px auto 36px}.talent-advice{margin-top:10px}.shop-grid{gap:42px}.callout{display:none}.finish-grid{gap:42px}.result-row{gap:28px}.finish-actions{flex-direction:column}.finish-section:after{font-size:110px}.talent-list{grid-template-columns:1fr}.dialog-tools{flex-direction:column}.dialog-tools input{min-width:0;width:100%}.footer-cast-stage{min-height:0;padding-top:42px}.footer-cast{width:calc(100% - 48px);max-width:600px;flex:0 1 auto}.footer-cast img{max-width:100%}.footer-cast span{top:-19px}footer>.shell{grid-template-columns:1fr;gap:18px}.cursor-glow{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker-track,.float-sprite,.proof-dot,.tutorial-arrow{animation:none}.reveal{opacity:1;transform:none;transition:none}}

/* ===== v2 新增：活动规则补充 ===== */
.inline-link{color:#b12869;border-bottom:1px solid currentColor}
.hero-copy>p{font-size:16px}
.countdown{position:absolute;z-index:3;left:24px;right:24px;bottom:88px;padding:14px 16px;background:rgba(5,15,20,.86);border:1px solid rgba(189,223,25,.35)}
.countdown small{display:block;font-size:11px;color:#9ab7b3;margin-bottom:6px}
.countdown div{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}
.countdown b{font:34px/1 var(--pixel);color:var(--lime)}
.countdown span{font-size:12px;color:#c9dcd8;margin-right:8px}
.event-card-foot{gap:40px}.event-card-foot small{font:11px var(--body)}.event-card-foot b{font:14px var(--pixel)}
.wallet-note{margin:0 0 24px}
.choice-rules{list-style:none;margin:18px 0 0;padding:0;font-size:13px;line-height:1.6}
.choice-rules li{position:relative;padding-left:16px;margin-bottom:6px;color:inherit;opacity:.9}
.choice-rules li:before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;background:var(--gold)}
.choice-card{min-height:470px}
.rank-details{margin-top:24px;border:1px solid #b3a887;background:rgba(248,242,221,.7)}
.rank-details summary{cursor:pointer;padding:18px 22px;font-size:14px;font-weight:600;list-style:none;display:flex;align-items:center;gap:12px}
.rank-details summary::-webkit-details-marker{display:none}
.rank-details summary span{font:9px var(--pixel);padding:6px 8px;background:var(--ink);color:var(--lime)}
.rank-details[open] summary span{background:var(--pink);color:#fff}
.rank-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding:0 22px 22px}
.rank-grid table{width:100%;border-collapse:collapse;font-size:13px;background:#f8efd9;border:1px solid #c4b898}
.rank-grid caption{text-align:left;font-weight:700;padding:0 0 8px;font-size:13px}
.rank-grid th,.rank-grid td{padding:8px 10px;border-bottom:1px solid #d8ccab;text-align:left}
.rank-grid th{font-size:11px;color:#6d6552;font-weight:600}
.rank-grid td:last-child,.rank-grid th:last-child{text-align:right}
.free-keys{display:grid;grid-template-columns:52px 1fr;gap:18px;align-items:center;margin-top:24px;padding:20px 24px;background:#173c3e;color:#e7f4e9}
.free-keys img{width:44px;image-rendering:pixelated}
.free-keys strong{font-size:15px}.free-keys p{margin:6px 0 0;font-size:13px;line-height:1.7;color:#b8d0cb}
.resource-guide{margin-top:24px;padding:30px;border:1px solid rgba(189,223,25,.24);border-radius:24px;background:linear-gradient(135deg,rgba(18,43,46,.96),rgba(13,27,35,.96));color:#e7f4e9;box-shadow:0 24px 60px rgba(0,0,0,.16)}
.resource-guide>header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}
.resource-guide>header span{font:8px var(--pixel);letter-spacing:.04em;color:var(--lime)}
.resource-guide>header h3{margin:0;font:800 30px/1.15 var(--display)}
.resource-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.resource-grid article{display:grid;grid-template-columns:64px 1fr;gap:18px;padding:22px;border:1px solid rgba(202,238,232,.14);border-radius:18px;background:rgba(5,17,23,.55)}
.resource-grid article>img{width:58px;max-height:62px;object-fit:contain;filter:drop-shadow(0 10px 12px rgba(0,0,0,.36))}
.resource-grid article span{font:7px var(--pixel);color:#759592}.resource-grid h4{margin:8px 0 10px;font:800 23px/1.1 var(--display)}
.resource-grid p{margin:0 0 8px;color:#a9c2be;font-size:13px;line-height:1.7}.resource-grid p:last-child{margin-bottom:0}.resource-grid p b{color:#e7f4e9}
.resource-flow{padding:10px 12px;border-left:2px solid var(--pink);background:rgba(235,85,165,.08);color:#dce9e6!important}
.choice-card{display:flex;flex-direction:column}
.choice-card dl{position:relative;left:auto;right:auto;bottom:auto;margin-top:auto;padding-top:18px}
.route-step p b{color:var(--ink);background:rgba(189,223,25,.45);padding:0 3px}

/* ===== 上手 6 条 ===== */
.basics-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(189,230,222,.16);border:1px solid rgba(189,230,222,.16);margin-bottom:40px}
.basics-grid article{background:var(--night);padding:26px 24px}
.basics-grid span{font:9px var(--pixel);color:var(--pink)}
.basics-grid b{display:block;margin:12px 0 8px;font-size:18px;color:#f1f7f4}
.basics-grid p{margin:0;font-size:14px;line-height:1.75;color:#9db5b2}
.lesson-player{min-height:0}

/* ===== 怪物图鉴 ===== */
.bestiary-section{background:var(--paper);color:var(--ink);padding:128px 0;position:relative}
.bestiary-section:before{content:"";position:absolute;inset:0;opacity:.15;background-image:linear-gradient(rgba(24,38,39,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(24,38,39,.14) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(270deg,#000,transparent 60%)}
.bestiary-section>.shell{position:relative}
.key{display:inline-block;width:12px;height:12px;vertical-align:-1px;margin:0 3px;border:1px solid rgba(0,0,0,.25)}
.key-foe{background:#26394a}.key-hit{background:#e5484d}.key-safe{background:var(--lime)}.key-boss{background:#7b3fa0}
.bestiary-callout{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:center;padding:18px 22px;margin-bottom:22px;background:var(--ink);color:#e8f2ef}
.bestiary-callout b{font:900 22px var(--display);color:var(--pink)}
.bestiary-callout p{margin:0;font-size:14px;line-height:1.7;color:#b7ccc8}.bestiary-callout strong{color:var(--lime)}
.bestiary-filter{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.chip{padding:9px 16px;border:1px solid #a99d7f;background:transparent;font-size:13px;cursor:pointer;color:var(--ink)}
.chip.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.bestiary-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}
.foe-card{position:relative;padding:18px;background:#f8f1dc;border:1px solid #c4b898;display:flex;flex-direction:column;gap:14px}
.foe-card[hidden]{display:none}
.foe-card header{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.foe-card h3{margin:0;font:800 19px/1.2 var(--display)}
.foe-card header small{display:block;margin-top:3px;font-size:11px;color:#7a7160}
.foe-tag{flex:none;font-size:11px;padding:3px 8px;border:1px solid}
.foe-tag.danger{color:#c2253a;border-color:#e3a3aa;background:#fbe4e4}
.foe-tag.common{color:#1c6e6b;border-color:#9fcdc6;background:#e3f3ef}
.foe-tag.special{color:#7b3fa0;border-color:#c9a8dc;background:#f2e6f8}
.foe-body{display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center}
.foe-visual{display:flex;flex-direction:column;align-items:center;gap:6px}
.foe-visual em{font-style:normal;font-size:11px;color:#c2253a;text-align:center}
.attack-grid{position:relative;display:grid;grid-template-columns:repeat(5,18px);grid-auto-rows:18px;gap:2px;padding:6px;background:#1a2a30}
.attack-grid i{background:#2c4148}
.attack-grid i.foe{background:#dbe7e3;box-shadow:inset 0 0 0 3px #26394a}
.attack-grid i.hit{background:#e5484d}
.attack-grid.unknown i:not(.foe){background:repeating-linear-gradient(45deg,#2c4148 0 3px,#35505a 3px 6px)}
.attack-grid .grid-arrow{position:absolute;right:-16px;top:50%;transform:translateY(-50%);font-size:14px;color:#c2253a}
.foe-card dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 12px}
.foe-card dl div{display:flex;flex-direction:column}
.foe-card dt{font-size:11px;color:#7a7160}
.foe-card dd{margin:2px 0 0;font:700 15px var(--body)}
.foe-card>p{margin:0;font-size:13px;line-height:1.7;color:#3f4b48;border-top:1px dashed #cdbf9d;padding-top:12px}
.foe-sprite{position:absolute;right:14px;top:44px;width:34px}

/* ===== Boss ===== */
.boss-section{position:relative;padding:130px 0;background:#150f1d;overflow:hidden}
.boss-section:before{content:"BOSS";position:absolute;right:-20px;top:40px;font:260px/.8 var(--display);color:transparent;-webkit-text-stroke:1px rgba(235,85,165,.1)}
.boss-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.boss-copy h2{font:900 clamp(40px,5vw,68px)/1.1 var(--display);margin:16px 0 24px;color:#f6e9f1}
.boss-stats{display:flex;gap:36px;margin-bottom:26px}
.boss-stats b{display:block;font:36px/1 var(--pixel);color:var(--pink)}
.boss-stats span{font-size:12px;color:#b59bab}
.boss-rules{list-style:none;margin:0;padding:0}
.boss-rules li{display:grid;grid-template-columns:32px 1fr;gap:12px;padding:14px 0;border-top:1px solid rgba(246,233,241,.12)}
.boss-rules li>span{font:9px var(--pixel);color:var(--lime);margin-top:5px}
.boss-rules b{display:block;font-size:16px;color:#f6e9f1}
.boss-rules small{display:block;margin-top:5px;font-size:13px;line-height:1.65;color:#b9a7b3}
.boss-entry{margin-top:26px;padding:18px;background:rgba(255,255,255,.04);border:1px solid rgba(246,233,241,.14)}
.boss-entry>b{font-size:14px;color:#f6e9f1}
.boss-entry>small{display:block;margin-top:10px;font-size:12px;line-height:1.6;color:#a996a3}
.entry-row{display:grid;grid-template-columns:52px 1fr 40px 96px;gap:10px;align-items:center;margin-top:10px;font-size:12px;color:#cdbdc7}
.entry-row i{height:10px;background:linear-gradient(90deg,var(--lime) var(--w),rgba(255,255,255,.08) var(--w))}
.entry-row.low i{background:linear-gradient(90deg,#e5484d var(--w),rgba(255,255,255,.08) var(--w))}
.entry-row b{font:14px var(--pixel);color:#fff;text-align:right}
.entry-row small{color:#9c8a96}
.boss-diagram{margin:0;padding:18px;background:#0c0912;border:1px solid rgba(246,233,241,.16)}
.boss-board{position:relative;display:grid;grid-template-columns:repeat(9,1fr);gap:4px;aspect-ratio:9/7}
.boss-board i{background:#241d2e}
.boss-board i.boss{background:#7b3fa0;box-shadow:inset 0 0 0 3px #b77ad6}
.boss-board i.hit{background:#e5484d}
.boss-board i.safe{background:var(--lime)}
.boss-board .boss-arrow{position:absolute;left:44.4%;top:27%;transform:translateX(-50%);color:#fff;font-size:26px;text-shadow:0 2px 6px #000}
.boss-diagram figcaption{display:flex;gap:18px;flex-wrap:wrap;margin-top:14px;font-size:12px;color:#cdbdc7}

/* ===== 能量账本 ===== */
.energy-section{background:var(--paper);color:var(--ink);padding:128px 0}
.ledger{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.ledger article{padding:24px 22px;background:var(--ink);color:#e8f2ef}
.ledger b{font:40px/1 var(--pixel);color:var(--lime)}
.ledger span{margin-left:6px;font-size:13px;color:#a9c0bc}
.ledger p{margin:14px 0 0;font-size:13px;line-height:1.7;color:#b7ccc8}
.checklist{margin-top:24px;padding:26px 28px;border:2px solid var(--ink);background:#f8efd9}
.checklist h3{margin:0 0 14px;font:800 20px var(--display)}
.checklist ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 28px}
.checklist li{position:relative;padding-left:26px;font-size:14px;line-height:1.7}
.checklist li:before{content:"";position:absolute;left:0;top:.4em;width:14px;height:14px;border:2px solid var(--ink);background:var(--lime)}
.checklist li b{margin-right:4px}

/* ===== 结尾视频 ===== */
.finish-media video{display:block;width:100%}

/* ===== 响应式 ===== */
@media(max-width:980px){.rank-grid{grid-template-columns:1fr}.basics-grid{grid-template-columns:1fr 1fr}.boss-grid{grid-template-columns:1fr}.ledger{grid-template-columns:1fr 1fr}.checklist ul{grid-template-columns:1fr}.lesson-nav{grid-template-columns:repeat(3,1fr)}}
@media(max-width:680px){
  .hero h1{font-size:48px}
  .hero-object{height:340px}
  .countdown{left:14px;right:14px;bottom:80px}.countdown b{font-size:26px}
  .event-card-foot{gap:22px;padding:0 14px}
  .yf-logo{width:62%;left:18px;top:70px}
  .section-head h2{font-size:36px}
  .choice-card{min-height:0;padding:26px 22px 24px}.choice-card dl{position:static;margin-top:18px}.choice-total{top:24px;right:22px;font-size:40px}.choice-card h3{font-size:44px;margin-top:30px}
  .basics-grid{grid-template-columns:1fr}
  .bestiary-section,.boss-section,.energy-section{padding:90px 0}
  .bestiary-callout{grid-template-columns:1fr;gap:8px}
  .bestiary-grid{grid-template-columns:1fr}
  .boss-stats{gap:24px}
  .entry-row{grid-template-columns:44px 1fr 32px;}.entry-row small{grid-column:2/4}
  .ledger{grid-template-columns:1fr}
  .free-keys{grid-template-columns:40px 1fr;padding:18px}
  .lesson-nav{grid-template-columns:1fr 1fr 1fr}
  .wallet-note>span{display:none}
  .number-ribbon b{font-size:40px}
}

/* 中文标题统一用中文字体，避免中英混排时英文数字跳成像素字体 */
.hero h1,.section-head h2,.route-step h3,.choice-card h3,.talent-advice h3,.finish-copy h2,.boss-copy h2,.foe-card h3,.checklist h3{font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",sans-serif}
@media(max-width:680px){.choice-top img{display:none}.choice-total{top:22px}}

/* 首屏：英文像素主标题 + 中文副标题 + 数字标签 */
.hero h1.hero-title{font-family:var(--display);font-weight:400;font-size:clamp(48px,4.6vw,72px);line-height:1;letter-spacing:.02em;margin:22px 0 22px}
.hero-title small{display:block;margin-bottom:14px;font:clamp(12px,1.1vw,15px)/1 var(--pixel);letter-spacing:.2em;color:#8fabaa}
.hero-guide-title{display:inline-flex;align-items:baseline;gap:.14em;white-space:nowrap}
html[data-lang="zh"] .hero-guide-title{font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC",sans-serif;font-weight:900;letter-spacing:-.04em}
html[data-lang="en"] .hero h1.hero-title{font-size:clamp(46px,4.8vw,74px)}
html[data-lang="en"] .hero-guide-title{display:block}
html[data-lang="en"] .hero-guide-title>span,html[data-lang="en"] .hero-guide-title>em{display:block}
.hero-copy>p.hero-sub{font-size:18px;line-height:1.7;color:#c4d6d3;max-width:600px}
.hero-tags{list-style:none;display:flex;gap:10px;flex-wrap:wrap;margin:26px 0 0;padding:0}
.hero-tags li{display:flex;align-items:baseline;gap:8px;padding:10px 14px;border:1px solid rgba(214,245,239,.22);background:rgba(6,17,23,.55)}
.hero-tags b{font:18px/1 var(--pixel);color:var(--lime)}
.hero-tags span{font-size:13px;color:#b4c9c7}
.hero-copy>p.hero-chance{display:flex;align-items:center;gap:10px;margin-top:18px;color:#dce9e6;font-size:13px;line-height:1.5}
.hero-chance:before{content:"";flex:0 0 8px;width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 5px rgba(189,223,25,.1),0 0 18px rgba(189,223,25,.55);animation:pulse 2s infinite}
.hero-copy .hero-actions{margin-top:20px}
@media(max-width:680px){.hero h1.hero-title{font-size:44px}.hero-copy>p.hero-sub{font-size:16px}.hero-tags li{padding:8px 11px}.hero-tags b{font-size:15px}html[data-lang="en"] .hero h1.hero-title{font-size:44px}}

/* ---------- 动效层：游戏素材弹出漂浮、标题逐字落下、数字滚动、像素字幕带 ---------- */
:root{--spring:cubic-bezier(.34,1.56,.64,1)}
main>section{position:relative}
.grain{mix-blend-mode:normal;opacity:.05}
.cursor-glow{left:0;top:0;will-change:transform}
.float-sprite{filter:none;opacity:0;scale:.3;transition:opacity .35s ease,scale .8s var(--spring);will-change:transform}
.float-sprite.in{opacity:1;scale:1}
.sec-sprite{position:absolute;z-index:4;pointer-events:none}
.spr-event{width:72px;right:5%;top:60px;rotate:14deg}
.spr-basics{width:96px;right:6%;top:70px}
.spr-bestiary{width:88px;right:6%;top:60px}
.spr-boss{width:92px;right:5%;top:50px}
.spr-energy{width:80px;right:6%;top:64px}
.spr-finish{width:110px;right:6%;top:50px}
.hero-title .split{display:block;white-space:nowrap}
.hero-title .ch{display:inline-block}
.hero-title .ch.drop{animation:chDrop .9s var(--spring) both}
.hero-title .ch.wob{animation:chWob .45s steps(4)}
@keyframes chDrop{0%{opacity:0;transform:translateY(-90px) rotate(-10deg)}100%{opacity:1;transform:none}}
@keyframes chWob{0%,100%{transform:none}25%{transform:translateY(-8px)}75%{transform:translateY(3px)}}
.reveal{transform:translateY(46px) scale(.97);transition:opacity .6s ease,transform .9s var(--spring)}
.pixel-band{position:relative;z-index:6;overflow:hidden;margin:-22px -20px;padding:14px 0;background:var(--lime);color:var(--ink);border-block:3px solid var(--ink);rotate:-1.6deg;box-shadow:0 10px 0 rgba(0,0,0,.25)}
.pixel-band-track{display:flex;width:max-content;animation:ticker 28s linear infinite;font:900 26px/1 var(--body);white-space:nowrap}
.pixel-band-group{display:flex;flex:none;align-items:center;justify-content:space-around;gap:30px;width:max(100vw,1100px);padding:0 22px}
.pixel-band-track b{color:var(--pink);font-size:18px;align-self:center}
@media(max-width:680px){
  .sec-sprite{width:54px;top:40px;right:4%}
  .pixel-band-track{font-size:18px}
}
@media(prefers-reduced-motion:reduce){
  .float-sprite{opacity:1;scale:1;transition:none}
  .hero-title .ch{animation:none!important}
  .pixel-band-track{animation:none}
}
html,body{overflow-x:clip}

/* ---------- 原版游戏素材 ---------- */
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.62;transform:scale(1.04)}
.hero-wash{background:linear-gradient(90deg,rgba(7,20,27,.97) 4%,rgba(7,20,27,.82) 40%,rgba(7,20,27,.2) 72%,rgba(7,20,27,.7)),linear-gradient(0deg,var(--night),transparent 38%)}
.basics-grid article{position:relative}
.rule-prop{position:absolute;right:18px;top:18px;width:56px;height:56px;object-fit:contain}
.boss-sprite{width:150px;margin:-6px 0 18px;filter:drop-shadow(0 16px 0 rgba(0,0,0,.35))}
.with-props img{display:inline-block;width:30px;height:30px;margin:0 6px 6px 0;vertical-align:middle}
.talent-card>img.pixel{image-rendering:pixelated}
.foe-stage{display:grid;grid-template-columns:1fr auto;align-items:center;gap:12px;min-height:118px;padding:10px 12px;background:#12262d;border:1px solid #2c4a4c}
.foe-sprite{position:static;width:auto;height:96px;max-width:120px;object-fit:contain;justify-self:center}
.foe-stage .foe-visual{transform:scale(.82);transform-origin:right center}
.foe-stage .foe-visual em{color:#f07fa9}
.foe-card:hover .foe-sprite{animation:chWob .45s steps(4)}

/* 全部天赋墙 */
.talent-wall{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
.tw-col{background:#f8efd5;border:1px solid #ad9f7c;padding:18px}
.tw-col h3{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 10px;font:800 20px var(--body)}
.tw-col h3 small{font:9px var(--pixel);color:#8e8062}
.tw-damage h3{color:#b12869}.tw-survival h3{color:#13716e}.tw-utility h3{color:#6b5a14}
.tw-row{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center;padding:8px 0;border-top:1px dashed #cdbf9d}
.tw-row img,.tw-row>i{width:32px;height:32px;display:grid;place-items:center;background:#172429;border:1px solid #344a49}
.tw-row img{padding:2px;object-fit:contain}
.tw-row>i{font:11px var(--pixel);font-style:normal;color:#6c918f}
.tw-row b{display:block;font-size:13px}
.tw-row p{margin:2px 0 0;font-size:11px;line-height:1.5;color:#56605a}
.tw-row>span:not(.talent-icon-shell){font:7px var(--pixel);color:#13716e;white-space:nowrap}

/* 排行榜 */
.lb-section{position:relative;padding:130px 0;background:#0d252c}
.spr-lb{width:84px;right:6%;top:60px}
.lb-section .section-head p b{color:var(--lime);font-weight:700}
.lb-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.lb-board{background:#08161c;border:1px solid rgba(203,239,231,.2);padding:26px;box-shadow:14px 14px 0 #14383f}
.lb-head{display:flex;align-items:center;gap:14px;margin-bottom:20px}
.lb-head img{width:52px;height:52px;object-fit:contain}
.lb-head h3{margin:0;font:900 28px/1.1 var(--body);color:#f1f7f4}
.lb-head small{font-size:12px;color:#7f9896}
.lb-label{font:8px var(--pixel);color:var(--pink);margin:18px 0 8px}
.lb-board ol{list-style:none;margin:0;padding:0}
.lb-board li{display:grid;grid-template-columns:1.2fr 1fr 1.1fr;gap:10px;align-items:center;padding:9px 0;border-top:1px solid rgba(189,230,222,.1);font-size:13px}
.lb-board li span{color:#9db5b2}
.lb-board li b{font-weight:600;color:#e6f4ec;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lb-board li em{font:11px var(--pixel);font-style:normal;color:var(--lime);text-align:right}
.lb-top li{grid-template-columns:34px 1fr auto}
.lb-top li span{font:9px var(--pixel);color:var(--gold)}
.lb-top li:nth-child(-n+3) b{color:var(--gold)}
@media(max-width:980px){.talent-wall,.lb-grid{grid-template-columns:1fr}}
@media(max-width:680px){
  .lb-section{padding:90px 0}.lb-board{padding:18px;box-shadow:8px 8px 0 #14383f}
  .lb-board li{grid-template-columns:1fr 1fr;row-gap:2px}.lb-board li em{grid-column:1/-1;text-align:left}
  .lb-top li{grid-template-columns:30px 1fr auto}.lb-top li em{grid-column:auto;text-align:right}
  .rule-prop{width:44px;height:44px}
  .boss-sprite{width:110px}
  .foe-sprite{height:80px}
}
@media(max-width:680px){.scroll-hint{display:none}}
/* 排行榜全榜：可滚动 + 搜索 */
.lb-search{width:100%;margin:0 0 8px;padding:10px 12px;background:#0f2229;border:1px solid rgba(189,230,222,.2);color:#e6f4ec;font:13px var(--body);outline:none}
.lb-search:focus{border-color:var(--lime)}
.lb-top{max-height:520px;overflow-y:auto;overscroll-behavior:contain;padding-right:6px}
.lb-top li{grid-template-columns:40px 1fr auto auto}
.lb-top li i{font:11px var(--body);font-style:normal;color:#6c918f;white-space:nowrap}
.lb-top li[hidden]{display:none}
.lb-top li.podium b{color:var(--gold)}
.lb-top::-webkit-scrollbar{width:6px}.lb-top::-webkit-scrollbar-thumb{background:#2c4a4c}
@media(max-width:680px){.lb-top{max-height:420px}.lb-top li{grid-template-columns:32px 1fr auto}.lb-top li i{display:none}}

/* ---------- 闪避教学 ---------- */
.dodge-section{position:relative;padding:130px 0;background:#0a1c22;overflow:hidden}
.dodge-rules{list-style:none;margin:0 0 30px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px;counter-reset:dr}
.dodge-rules li{counter-increment:dr;position:relative;padding:20px 20px 20px 64px;background:#0f262d;border:1px solid rgba(189,230,222,.16)}
.dodge-rules li:before{content:counter(dr);position:absolute;left:18px;top:18px;width:32px;height:32px;display:grid;place-items:center;background:var(--lime);color:var(--ink);font:14px var(--pixel)}
.dodge-rules b{display:block;font-size:17px;color:#f1f7f4}
.dodge-rules span{display:block;margin-top:6px;font-size:13px;line-height:1.65;color:#9db5b2}
.dodge-player{display:grid;grid-template-columns:190px 1fr;background:#07141a;border:1px solid rgba(189,230,222,.2);box-shadow:18px 18px 0 #14383f}
.dodge-tabs{display:flex;flex-direction:column;gap:6px;padding:16px;border-right:1px solid rgba(189,230,222,.12)}
.dodge-tabs button{padding:13px 14px;border:1px solid rgba(189,230,222,.14);background:transparent;color:#9db5b2;text-align:left;font-size:14px;cursor:pointer;transition:.2s}
.dodge-tabs button:hover{color:#fff;border-color:rgba(189,230,222,.35)}
.dodge-tabs button.active{background:var(--lime);border-color:var(--lime);color:var(--ink);font-weight:700}
.dodge-tabs button.bad.active{background:#e5484d;border-color:#e5484d;color:#fff}
.dodge-stage{padding:22px 26px 20px;display:flex;flex-direction:column;align-items:center}
.dodge-hud{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;font-size:13px;color:#8fabaa}
.dodge-hud b{font:18px var(--pixel);color:#f1f7f4;margin-left:6px}
.dg-phase{padding:7px 12px;font-size:13px;font-weight:700;background:#1c3339;color:#cfe3df}
.dg-phase[data-ph="aim"]{background:#5a1920;color:#ff8b8f}
.dg-phase[data-ph="charge"]{background:#e5484d;color:#fff;animation:blink 1s steps(2) infinite}
.dg-phase[data-ph="attack"]{background:#ff9f1c;color:var(--ink)}
.dg-phase[data-ph="rest"]{background:var(--lime);color:var(--ink)}
.dg-phase[data-ph="dead"]{background:var(--gold);color:var(--ink)}
.dodge-board{--t:66px;position:relative;display:grid;grid-template-columns:repeat(var(--w),var(--t));grid-auto-rows:var(--t);border:3px solid #041014;box-shadow:0 0 0 1px rgba(189,230,222,.2);background:#1b6b6a}
.dodge-board>i{background:#227877;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12)}
.dodge-board>i.alt{background:#1e706f}
.dodge-board.is-bad{box-shadow:0 0 0 1px #e5484d}
.dg-layer{position:absolute;inset:0;pointer-events:none}
.dg-layer b,.dg-layer em,.dg-unit{position:absolute;left:0;top:0;width:var(--t);height:var(--t);transform:translate(calc(var(--x) * var(--t)),calc(var(--y) * var(--t)))}
.dg-layer b{background:rgba(229,72,77,.55);box-shadow:inset 0 0 0 2px #ff6b70;animation:redPulse 1s ease-in-out infinite}
.dg-layer b.soft{background:rgba(229,72,77,.28);box-shadow:inset 0 0 0 2px rgba(255,107,112,.6)}
.dg-layer b.dash{animation:dashHit .5s calc(var(--k) * 70ms) ease-out both}
.dg-layer b.spin{animation:dashHit .5s calc(var(--k) * 40ms) ease-out both}
.dg-layer b.strike{animation:dashHit .5s ease-out both}
@keyframes redPulse{50%{background:rgba(229,72,77,.3)}}
@keyframes dashHit{0%{background:rgba(255,236,200,.95)}100%{background:rgba(229,72,77,.6)}}
.dg-unit{z-index:3;display:grid;place-items:center;transition:transform .2s cubic-bezier(.3,.7,.4,1)}
.dg-unit img{width:92%;height:92%;object-fit:contain}
.dg-cue{position:absolute;z-index:8;left:50%;top:-27px;display:none;min-width:24px;transform:translateX(-50%);text-align:center;text-shadow:0 2px 0 #041014;pointer-events:none}
.dg-cue.aim{display:block;color:#ff4f58;font:22px/1 var(--pixel);animation:cueBounce .65s steps(2) infinite}
.dg-cue.alert{display:block;color:#ffe53d;font:24px/1 var(--pixel);animation:blink .65s steps(2) infinite}
@keyframes cueBounce{50%{translate:0 -4px}}
.dg-player{z-index:4}
.dg-foe.is-boss{width:calc(var(--t) * 2);height:calc(var(--t) * 2.2);margin-top:calc(var(--t) * -1.2)}
.dg-foe.is-boss img{width:100%;height:100%}
.dg-foe.is-dead{opacity:0;transition:transform .45s,opacity .6s .35s}
.dg-hp{position:absolute;left:12%;right:12%;top:-4px;height:5px;background:#041014;border:1px solid #041014}
.dg-hp i{display:block;height:100%;width:100%;background:#e5484d;transition:width .4s}
.dg-foe.is-boss .dg-hp{top:4px}
.lunge-down{animation:lungeD .45s ease-out}.lunge-up{animation:lungeU .45s ease-out}
.slash-right{animation:slashR .35s ease-out}.slash-left{animation:slashL .35s ease-out}.slash-up{animation:slashU .35s ease-out}.slash-down{animation:slashD .35s ease-out}
.dg-player.hurt img{animation:hurt .5s steps(2) 2}
@keyframes lungeD{40%{translate:0 45%}}@keyframes lungeU{40%{translate:0 -45%}}
@keyframes slashR{40%{translate:40% 0}}@keyframes slashL{40%{translate:-40% 0}}@keyframes slashU{40%{translate:0 -40%}}@keyframes slashD{40%{translate:0 40%}}
@keyframes hurt{50%{opacity:.2}}
.dg-layer em{z-index:6;display:grid;place-items:center;font:15px var(--pixel);font-style:normal;color:#fff;text-shadow:2px 2px 0 #041014;animation:fxUp 1.4s ease-out both}
.dg-layer em.miss{color:var(--lime)}.dg-layer em.hurt{color:#ff6b70;font-size:20px}.dg-layer em.hit{color:var(--gold)}
@keyframes fxUp{0%{opacity:0;translate:0 10px}15%{opacity:1;translate:0 -6px}100%{opacity:0;translate:0 -30px}}
.dodge-say{width:100%;min-height:56px;margin:18px 0 12px;padding:14px 16px;background:#0f262d;border-left:4px solid var(--lime);font-size:15px;line-height:1.65;color:#e6f4ec}
.dodge-say.bad{border-left-color:#e5484d;background:#2a1418}
.dodge-controls{width:100%;display:flex;align-items:center;gap:8px}
.dodge-controls button{padding:9px 14px;border:1px solid rgba(189,230,222,.25);background:transparent;color:#cfe3df;font-size:13px;cursor:pointer}
.dodge-controls button:hover{background:#15323a}
.dg-dots{display:flex;gap:5px;margin-left:auto}
.dg-dots i{width:18px;height:6px;background:#244046;cursor:pointer}
.dg-dots i.on{background:var(--lime)}
@media(max-width:980px){.dodge-rules{grid-template-columns:1fr}.dodge-player{grid-template-columns:1fr}.dodge-tabs{flex-direction:row;flex-wrap:wrap;border-right:0;border-bottom:1px solid rgba(189,230,222,.12)}.dodge-tabs button{flex:1 1 auto;text-align:center}}
@media(max-width:680px){
  .dodge-section{padding:90px 0}
  .dodge-player{box-shadow:8px 8px 0 #14383f}
  .dodge-stage{padding:14px 10px}
  .dodge-board{--t:min(46px,calc((100vw - 56px) / var(--w)))}
  .dodge-tabs{padding:10px;gap:5px}.dodge-tabs button{padding:9px 8px;font-size:12px}
  .dodge-say{font-size:14px}
  .dg-dots{display:none}.dodge-controls button{flex:1}
}
@media(prefers-reduced-motion:reduce){.dg-unit{transition:none}.dg-layer b,.dg-layer em,.dg-phase{animation:none!important}}

/* ---------- 攻略收录 ---------- */
.guides-section{position:relative;padding:130px 0;background:var(--paper);color:var(--ink)}
.spr-guides{width:64px;right:6%;top:64px}
.guide-filters{display:flex;flex-direction:column;gap:10px;margin-bottom:22px}
.chip-row{display:flex;flex-wrap:wrap;gap:8px}
.chip-row button{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border:1px solid #a99d7f;background:transparent;font-size:13px;cursor:pointer;color:var(--ink)}
.chip-row button small{font:8px var(--pixel);color:#8e8062}
.chip-row button.active{background:var(--ink);border-color:var(--ink);color:#fff}
.chip-row button.active small{color:var(--lime)}
.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.guide-card{position:relative;display:flex;flex-direction:column;gap:10px;padding:20px;background:#f8efd5;border:1px solid #ad9f7c;transition:transform .25s var(--spring),box-shadow .25s}
.guide-card:hover{transform:translate(-3px,-3px);box-shadow:6px 6px 0 var(--ink)}
.guide-top{display:flex;justify-content:space-between;align-items:center}
.guide-type{font-size:12px;font-weight:700;padding:4px 8px;background:var(--ink);color:var(--lime)}
.guide-lang{font:8px var(--pixel);color:#a16279}
.guide-card h3{margin:0;font:800 17px/1.35 var(--body)}
.guide-card p{margin:0;font-size:13px;line-height:1.7;color:#52605b;flex:1}
.guide-foot{display:flex;align-items:center;gap:10px;padding-top:10px;border-top:1px dashed #cdbf9d;font-size:12px}
.guide-foot b{color:#13716e}
.guide-foot span{color:#8e8062}
.guide-foot i{margin-left:auto;font-style:normal;font-size:16px;color:#b12869}
.guide-empty{grid-column:1/-1;color:#8e8062}
.guide-submit{margin:26px 0 0;font-size:14px;color:#52605b}
.guide-submit span{color:var(--ink);font-weight:700}
@media(max-width:980px){.guide-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.guides-section{padding:90px 0}.guide-grid{grid-template-columns:1fr}}

.guide-submit-panel{display:grid;grid-template-columns:.72fr 1.28fr;margin-top:68px;border:1px solid #9d9277;background:#f8efd5;box-shadow:14px 14px 0 #173c3e}
.guide-submit-copy{position:relative;overflow:hidden;padding:38px 36px;background:var(--ink);color:#eaf3ef}
.guide-submit-copy:after{content:"SUBMIT";position:absolute;left:-8px;bottom:-22px;font:92px/.8 var(--display);color:transparent;-webkit-text-stroke:1px rgba(189,223,25,.12)}
.guide-submit-copy h2{position:relative;z-index:2;margin:20px 0;font:800 38px/1.15 var(--body)}
.guide-submit-copy p{position:relative;z-index:2;margin:0;max-width:330px;font-size:13px;line-height:1.8;color:#9eb4b0}
.guide-submit-copy img{position:absolute;z-index:2;right:28px;bottom:28px;width:54px;rotate:12deg}
.guide-form{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:34px 36px}
.guide-form>label{display:flex;flex-direction:column;gap:8px;min-width:0}
.guide-form label>span,.form-topics legend{font-size:12px;font-weight:700;color:#4f5c57}
.guide-form input,.guide-form select,.guide-form textarea{width:100%;border:1px solid #aa9e80;border-radius:0;background:#fffaf0;color:var(--ink);padding:12px 13px;outline:none;font:13px var(--body)}
.guide-form textarea{resize:vertical;line-height:1.6}
.guide-form input:focus,.guide-form select:focus,.guide-form textarea:focus{border-color:#13716e;box-shadow:0 0 0 2px rgba(19,113,110,.12)}
.guide-form input::placeholder,.guide-form textarea::placeholder{color:#a29882}
.form-wide,.form-topics{grid-column:1/-1}
.form-topics{margin:0;padding:0;border:0}.form-topics legend{margin-bottom:9px}
.form-topics>div{display:flex;flex-wrap:wrap;gap:8px}
.form-topics label{cursor:pointer}.form-topics input{position:absolute;opacity:0;width:1px;height:1px}
.form-topics label span{display:block;padding:8px 12px;border:1px solid #aa9e80;background:transparent;font-size:12px;font-weight:500;color:#52605b;transition:.2s}
.form-topics input:checked+span{background:var(--ink);border-color:var(--ink);color:var(--lime)}
.form-trap{position:absolute!important;left:-9999px!important}
.form-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:4px}
.form-actions p{margin:0;color:#7c7463;font-size:11px;line-height:1.5}
.form-actions p.is-error{color:#b12869}.form-actions p.is-success{color:#13716e;font-weight:700}
.form-actions button{flex:none;min-width:148px;padding:13px 16px;border:1px solid var(--ink);background:var(--ink);color:#fff;font-size:13px;font-weight:700;cursor:pointer;transition:transform .2s,background .2s,color .2s}
.form-actions button:hover{transform:translateY(-2px);background:var(--lime);color:var(--ink)}
.form-actions button:disabled{cursor:wait;opacity:.55;transform:none}
@media(max-width:980px){.guide-submit-panel{grid-template-columns:1fr}.guide-submit-copy{min-height:270px}.guide-submit-copy p{max-width:520px}}
@media(max-width:680px){.guide-submit-panel{margin-top:48px;box-shadow:7px 7px 0 #173c3e}.guide-submit-copy{min-height:245px;padding:28px 24px}.guide-submit-copy h2{font-size:32px}.guide-submit-copy img{width:45px}.guide-form{grid-template-columns:1fr;padding:27px 22px}.guide-form>*{grid-column:1}.form-actions{align-items:stretch;flex-direction:column}.form-actions button{width:100%}}

/* ---------- 入场：地牢开门 ---------- */
html.entry-pending,html.entry-pending body{overflow:hidden}
.skip-entry .entry-loader{display:none}
.entry-loader{position:fixed;z-index:500;inset:0;display:grid;place-items:center;overflow:hidden;background:#061219;color:#e9f5ee;opacity:1;visibility:visible;transition:opacity .7s ease,visibility .7s,filter .7s ease}
.entry-loader.is-leaving{opacity:0;visibility:hidden;filter:blur(7px)}
.entry-ambient{position:absolute;inset:-8%;background:linear-gradient(90deg,rgba(5,16,22,.96),rgba(5,16,22,.58),rgba(5,16,22,.94)),url('./assets/dungeon.jpg') center/cover;image-rendering:pixelated;filter:saturate(.72) brightness(.52);transform:scale(1.08);animation:entryBreathe 3.2s ease-in-out infinite alternate}
.entry-ambient:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(34,153,150,.18),transparent 42%),linear-gradient(0deg,#061219 0,transparent 42%,rgba(6,18,25,.48))}
.entry-world{--entry-copy-width:min(520px,calc(100vw - 40px));position:relative;width:min(720px,calc(100% - 40px));display:grid;justify-items:center;gap:32px;transform:translateY(-2vh);transition:transform .8s cubic-bezier(.2,.8,.2,1),opacity .55s}
.entry-loader.is-leaving .entry-world{transform:translateY(-4vh);opacity:0}
.entry-brand{display:grid;justify-items:center;gap:12px;color:#819e9a;font:7px var(--pixel);letter-spacing:.12em;text-align:center}
.entry-brand img{width:210px;filter:drop-shadow(0 12px 22px rgba(0,0,0,.46))}
.entry-brand span{padding:0}
.entry-scene{--tile:74px;position:relative;width:calc(var(--tile) * 6);height:var(--tile);filter:drop-shadow(0 26px 24px rgba(0,0,0,.46))}
.entry-grid{position:absolute;inset:0;display:grid;grid-template-columns:repeat(6,var(--tile))}
.entry-grid i{position:relative;background:#1d6263;border:1px solid rgba(2,16,20,.4);box-shadow:inset 0 0 0 1px rgba(123,220,208,.07)}
.entry-grid i:nth-child(even){background:#205a5d}
.entry-grid i:after{content:"";position:absolute;left:50%;top:50%;width:8px;height:8px;background:rgba(189,223,25,.16);transform:translate(-50%,-50%) rotate(45deg)}
.entry-runner{position:absolute;z-index:3;left:-2px;bottom:4px;width:72px;height:82px;object-fit:contain;filter:drop-shadow(0 8px 5px rgba(0,0,0,.55));animation:entryWalk 1.45s steps(5,end) .12s both}
.entry-reward{position:absolute;z-index:4;right:13px;top:24px;width:46px;filter:drop-shadow(0 7px 5px rgba(0,0,0,.55)) drop-shadow(0 0 10px rgba(189,223,25,.28));transition:transform .4s ease,filter .4s ease}
.entry-door{position:absolute;z-index:2;right:-1px;bottom:0;width:var(--tile);height:calc(var(--tile) + 35px);display:grid;grid-template-columns:1fr 1fr;align-items:end;border:3px solid #07141b;border-bottom:0;background:#10272d;box-shadow:inset 0 0 0 2px rgba(189,223,25,.18)}
.entry-door i{height:var(--tile);background:repeating-linear-gradient(90deg,#172f35 0 11px,#0c2027 11px 16px);border:1px solid #07141b;transform-origin:left;transition:transform .55s cubic-bezier(.22,.8,.22,1)}
.entry-door i:last-child{transform-origin:right}
.entry-door b{position:absolute;left:50%;top:10px;transform:translateX(-50%);font:8px var(--pixel);color:var(--lime)}
.entry-loader.is-ready .entry-door i:first-child{transform:perspective(90px) rotateY(-78deg)}
.entry-loader.is-ready .entry-door i:last-child{transform:perspective(90px) rotateY(78deg)}
.entry-loader.is-ready .entry-reward{transform:translateY(-3px) scale(1.08);filter:drop-shadow(0 8px 5px rgba(0,0,0,.5)) drop-shadow(0 0 14px rgba(189,223,25,.62))}
.entry-copy{width:var(--entry-copy-width)}
.entry-copy>div:first-child{display:flex;align-items:center;justify-content:space-between;margin-bottom:11px;font:8px var(--pixel);letter-spacing:.08em;color:#b6cbc7}
.entry-copy>div:first-child b{color:var(--lime);font-size:12px}
.entry-meter{height:5px;background:rgba(218,244,237,.13);overflow:hidden}
.entry-meter i{display:block;width:100%;height:100%;background:var(--lime);transform:scaleX(0);transform-origin:left;transition:transform .12s linear;box-shadow:0 0 16px rgba(189,223,25,.55)}
.entry-copy small{display:block;margin-top:11px;font:6px var(--pixel);letter-spacing:.08em;color:#668583}
@keyframes entryWalk{0%{transform:translateX(0)}100%{transform:translateX(calc(var(--tile) * 4.65))}}
@keyframes entryBreathe{to{transform:scale(1.12) translate3d(0,-1.2%,0)}}
@media(max-width:680px){
  .entry-world{--entry-copy-width:min(348px,calc(100vw - 42px));gap:28px;transform:translateY(-4vh)}
  .entry-brand{gap:10px;font-size:6px}.entry-brand img{width:164px}
  .entry-scene{--tile:min(58px,calc((100vw - 42px) / 6))}
  .entry-runner{width:calc(var(--tile) * .95);height:calc(var(--tile) * 1.12)}
  .entry-reward{right:8px;top:19px;width:36px}
  .entry-copy{width:var(--entry-copy-width)}
}
@media(prefers-reduced-motion:reduce){
  .entry-ambient,.entry-runner{animation:none!important}
  .entry-runner{transform:translateX(calc(var(--tile) * 4.65))}
}

/* ---------- 同级页面切换：攻略 / 排行榜 / 数据 / 社区创作 ---------- */
body[data-view="manual"] #leaderboard,
body[data-view="manual"] #data,
body[data-view="manual"] #guides{display:none}
body[data-view="leaderboard"] main>:not(#leaderboard),
body[data-view="data"] main>:not(#data),
body[data-view="guides"] main>:not(#guides){display:none}

.nav-links{gap:22px;align-items:center}
.nav-links .view-link{padding:8px 10px;border:1px solid rgba(214,245,239,.15);background:rgba(6,17,23,.32)}
.nav-links .view-link:after{display:none}
.nav-links .view-link:hover,.nav-links .view-link.active{color:var(--ink);background:var(--lime);border-color:var(--lime)}
.lang-toggle{min-height:34px;padding:0 9px;border:1px solid rgba(214,245,239,.24);background:transparent;color:#d7ebe7;font:8px var(--pixel);cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.lang-toggle:hover{background:var(--ice);border-color:var(--ice);color:var(--ink)}
.nav-resources{position:relative}
.nav-resources summary{display:flex;align-items:center;gap:7px;padding:8px 10px;border:1px solid rgba(240,185,66,.35);color:var(--gold);cursor:pointer;list-style:none;white-space:nowrap}
.nav-resources summary::-webkit-details-marker{display:none}
.nav-resources summary b{font-size:15px;font-weight:400;transition:transform .2s}
.nav-resources[open] summary b{transform:rotate(45deg)}
.resource-short{display:none}
.nav-resources>div{position:absolute;z-index:20;top:calc(100% + 12px);right:0;width:230px;padding:7px;background:#09171d;border:1px solid rgba(214,245,239,.24);box-shadow:0 18px 45px rgba(0,0,0,.42)}
.nav-resources>div a{display:flex;align-items:center;justify-content:space-between;padding:13px 12px;border-bottom:1px solid rgba(214,245,239,.1);color:#dbe9e5}
.nav-resources>div a:last-child{border-bottom:0}.nav-resources>div a:after{display:none}
.nav-resources>div a:hover{background:#12282e}
.nav-resources>div a span{display:flex;flex-direction:column;gap:5px}.nav-resources>div a b{font-size:13px}.nav-resources>div a small{font:6px var(--pixel);color:#668380}.nav-resources>div a i{font-style:normal;color:var(--lime)}
body[data-view="guides"] .nav{border-bottom-color:rgba(16,26,29,.18)}
body[data-view="guides"] .brand>span{color:var(--ink);border-left-color:rgba(16,26,29,.2)}
body[data-view="guides"] .brand small{color:#66746d}
body[data-view="guides"] .nav-links{color:#40514d}
body[data-view="guides"] .nav-links .view-link{border-color:rgba(16,26,29,.16);background:rgba(238,228,199,.7)}
body[data-view="guides"] .nav-links .view-link:hover,
body[data-view="guides"] .nav-links .view-link.active{background:var(--ink);border-color:var(--ink);color:var(--lime)}
body[data-view="guides"] .lang-toggle{border-color:rgba(16,26,29,.25);color:var(--ink)}
body[data-view="guides"] .nav-resources summary{color:#8f5a16;border-color:rgba(143,90,22,.35)}
body[data-view="guides"] .nav-play{background:var(--ink);color:#fff;border-color:var(--ink)}

.view-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:68px;padding-bottom:16px;border-bottom:1px solid rgba(214,245,239,.16);font:7px var(--pixel);letter-spacing:.06em;color:#708d8a}
.view-topbar>a{display:flex;align-items:center;gap:10px;color:#c4d8d4;transition:color .2s,transform .2s}
.view-topbar>a span{color:var(--lime);font:18px var(--body)}
.view-topbar>a:hover{color:#fff;transform:translateX(-3px)}
.view-topbar-ink{border-bottom-color:rgba(16,26,29,.18);color:#8a8068}
.view-topbar-ink>a{color:#3d4b47}.view-topbar-ink>a span{color:#b12869}.view-topbar-ink>a:hover{color:var(--ink)}
body[data-view="guides"] .guides-section{min-height:calc(100vh - 260px);padding-top:154px}
body[data-view="leaderboard"] .lb-section{min-height:100vh;padding-top:154px}

/* 通行证钥匙提示 */
.pass-keys{background:#173c3e;border:1px solid rgba(189,223,25,.32)}
.pass-keys strong{color:var(--lime)}

/* ---------- 活动数据面板 ---------- */
.data-section{position:relative;min-height:100vh;padding:154px 0 126px;overflow:hidden;background:#07141b;color:#e6f4ec}
.data-grid-bg{position:absolute;inset:0;opacity:.18;background-image:linear-gradient(rgba(136,210,200,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(136,210,200,.12) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(135deg,#000 15%,transparent 72%)}
.data-section>.shell{position:relative;z-index:2}
.data-head{display:grid;grid-template-columns:1fr 360px;gap:90px;align-items:end;margin-bottom:52px}
.data-head h1{margin:18px 0 22px;font:800 clamp(54px,7vw,96px)/.98 var(--body);letter-spacing:-.055em;color:#f3f0df}
.data-head h1 em{font-style:normal;color:var(--lime)}
.data-head>div:first-child>p{max-width:650px;margin:0;color:#8da7a4;font-size:15px;line-height:1.8}
.data-source{padding:24px;border-left:1px solid rgba(198,236,228,.18)}
.data-live{display:flex;align-items:center;gap:10px;color:#b2c8c4;font-size:13px}
.data-live i{width:8px;height:8px;border-radius:50%;background:#f0b942;box-shadow:0 0 0 5px rgba(240,185,66,.1)}
.data-live.is-live i{background:var(--lime);box-shadow:0 0 0 5px rgba(189,223,25,.1);animation:pulse 1.7s infinite}
.data-live.is-fallback i{background:var(--pink);box-shadow:0 0 0 5px rgba(235,85,165,.1)}
.data-source small{display:block;margin:10px 0 22px;color:#617d7a;font-size:11px}
.data-source>a{display:flex;justify-content:space-between;gap:20px;padding-top:15px;border-top:1px solid rgba(198,236,228,.13);font-size:12px;color:#c8d9d5}
.data-source>a span{color:var(--lime)}
.data-board{display:grid;grid-template-columns:1.12fr .88fr;border:1px solid rgba(198,236,228,.2);background:#091b22;box-shadow:22px 22px 0 #0c2a31}
.data-lead{position:relative;min-height:310px;padding:38px 42px;overflow:hidden;border-right:1px solid rgba(198,236,228,.14);background:radial-gradient(circle at 78% 40%,rgba(48,158,151,.25),transparent 42%)}
.data-lead>span,.resource-panel header span,.mode-panel header span{font:7px var(--pixel);letter-spacing:.08em;color:var(--pink)}
.data-lead strong{display:block;margin-top:42px;font:clamp(62px,8vw,112px)/.85 var(--display);color:var(--lime);font-variant-numeric:tabular-nums}
.data-lead p{margin:22px 0 0;color:#8ca8a4;font-size:13px}
.data-lead img{position:absolute;right:6%;bottom:-3px;width:126px;filter:drop-shadow(0 15px 8px rgba(0,0,0,.45))}
.data-kpis{display:grid;grid-template-rows:repeat(3,1fr)}
.data-kpis article{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 30px;border-bottom:1px solid rgba(198,236,228,.12)}
.data-kpis article:last-child{border-bottom:0}
.data-kpis span{font-size:12px;color:#78918f}
.data-kpis strong{font-size:22px;color:#eef6f2;font-variant-numeric:tabular-nums}
.data-kpis strong b{font:24px var(--pixel);color:var(--gold)}

.data-resource-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:76px}
.resource-panel{position:relative;padding:34px 36px;background:var(--paper);color:var(--ink);border:1px solid #a99d7f;box-shadow:10px 10px 0 #14383f}
.resource-panel:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--gold)}
.eve-panel:before{background:var(--pink)}
.resource-panel header{display:flex;align-items:flex-start;justify-content:space-between}
.resource-panel header h2{margin:9px 0 0;font:800 30px var(--body)}
.resource-panel header img{width:58px;height:58px;object-fit:contain}
.resource-total{display:flex;align-items:baseline;gap:14px;margin:43px 0 28px}
.resource-total b{font:clamp(36px,4vw,58px)/1 var(--display);font-variant-numeric:tabular-nums}
.resource-total span{font-size:12px;color:#6d756c}
.resource-panel dl{margin:0;border-top:1px solid #c7ba98}
.resource-panel dl div{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid #d5c8a8}
.resource-panel dt{font-size:13px;color:#64706b}
.resource-panel dd{margin:0;font-weight:800;font-variant-numeric:tabular-nums}
.resource-meter{margin-top:25px}
.resource-meter>div{display:flex;justify-content:space-between;margin-bottom:9px;font-size:12px;color:#66706b}.resource-meter>div b{color:#b12869}.resource-meter>div i{font-style:normal}
.resource-meter>span{display:block;height:8px;background:#d8ccad}.resource-meter>span i{display:block;width:0;height:100%;background:var(--pink);transition:width 1s cubic-bezier(.16,1,.3,1)}
.resource-note{margin:25px 0 0;padding:17px 18px;background:#1b3034;color:#b9cfca;font-size:13px}.resource-note b{color:var(--lime);font:18px var(--pixel)}

.mode-panel{margin-top:18px;padding:34px 36px;border:1px solid rgba(198,236,228,.18);background:#0b2028}
.mode-panel header{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:34px}
.mode-panel h2{margin:9px 0 0;font:800 28px var(--body)}
.mode-panel header p{margin:0;color:#78918f;font-size:12px}
.mode-row{display:grid;grid-template-columns:130px 1fr 120px;align-items:center;gap:22px;margin-top:15px}
.mode-row>span{font:8px var(--pixel);color:#b3cbc7}
.mode-row>i{display:block;height:14px;background:#102f37;overflow:hidden}
.mode-row>i b{display:block;width:0;height:100%;background:var(--lime);transition:width 1.1s cubic-bezier(.16,1,.3,1)}
.mode-row.expedition>i b{background:var(--pink)}
.mode-row>strong{text-align:right;font:13px var(--pixel);font-variant-numeric:tabular-nums;color:#e9f4ef}
html:not([data-lang="en"]) .mode-panel header span{font:700 11px var(--body);letter-spacing:.08em}
html:not([data-lang="en"]) .mode-row>span{font:500 11px var(--body)}

@media(max-width:980px){
  .nav-links{display:flex;gap:6px;margin-left:auto;margin-right:14px}
  .nav-links .chapter-link{display:none}
  .nav-links .view-link{padding:7px 9px;font-size:12px}
  .nav-resources summary{padding:7px 8px;font-size:12px}
  .data-head{grid-template-columns:1fr;gap:34px}.data-source{border-left:0;border-top:1px solid rgba(198,236,228,.18);padding:22px 0 0}
  .data-board{grid-template-columns:1fr}.data-lead{border-right:0;border-bottom:1px solid rgba(198,236,228,.14)}
}
@media(max-width:680px){
  .nav-links{margin-right:0}.nav-links .view-link{font-size:11px;padding:7px 8px}
  .nav-resources summary{font-size:11px;padding:7px}.resource-full{display:none}.resource-short{display:inline}
  body[data-view="leaderboard"] .brand,body[data-view="data"] .brand,body[data-view="guides"] .brand{max-width:90px}
  body[data-view="leaderboard"] .brand img,body[data-view="data"] .brand img,body[data-view="guides"] .brand img{width:86px}
  .data-section{padding:122px 0 86px}.view-topbar{margin-bottom:48px}.view-topbar>span{display:none}
  body[data-view="guides"] .guides-section{padding-top:122px}
  .data-head{margin-bottom:34px}.data-head h1{font-size:48px}.data-head>div:first-child>p{font-size:14px}
  .data-board{box-shadow:8px 8px 0 #0c2a31}.data-lead{min-height:260px;padding:27px 24px}.data-lead strong{margin-top:34px;font-size:64px}.data-lead img{width:90px}
  .data-kpis article{padding:21px 22px}.data-kpis strong{font-size:16px}.data-kpis strong b{font-size:18px}
  .data-resource-grid{grid-template-columns:1fr;margin-top:58px}.resource-panel{padding:27px 23px;box-shadow:7px 7px 0 #14383f}.resource-total{margin-top:34px}.resource-total b{font-size:38px}
  .mode-panel{padding:27px 22px}.mode-panel header{display:block}.mode-panel header p{margin-top:10px}.mode-row{grid-template-columns:90px 1fr;gap:12px}.mode-row>strong{grid-column:2;text-align:left;margin-top:-7px}
}

.footer-links{display:flex;align-items:center;justify-content:flex-end;gap:22px}
.footer-links a:first-child{color:var(--gold)}
@media(max-width:680px){.footer-links{justify-content:flex-start;flex-wrap:wrap}}

/* ---------- 教学录屏速度与手机端整站收紧 ---------- */
.media-speed{position:absolute;z-index:3;left:16px;top:15px;display:flex;padding:3px;background:rgba(2,7,9,.78);border:1px solid rgba(218,242,237,.22);backdrop-filter:blur(8px)}
.media-speed button,.media-toggle{border:0;background:transparent;color:#9bb3af;cursor:pointer;font-size:11px}
.media-speed button{min-height:32px;padding:0 10px}
.media-speed button.active{background:var(--lime);color:var(--ink);font-weight:800}
.media-toggle{position:absolute;z-index:3;right:16px;bottom:16px;min-width:64px;min-height:38px;padding:0 13px;border:1px solid rgba(218,242,237,.32);background:rgba(2,7,9,.82);color:#fff}
.media-toggle:hover{background:var(--lime);color:var(--ink)}

@media(max-width:680px){
  .shell,.nav{width:calc(100% - 24px)}
  .nav{height:60px}
  .brand img{width:74px}
  .nav-links{gap:3px}
  .nav-links .view-link,.nav-resources summary,.lang-toggle{display:flex;align-items:center;justify-content:center;min-height:40px;padding:6px;font-size:10px}

  .hero{min-height:760px}
  .hero-inner{padding-top:116px;gap:18px}
  .hero h1.hero-title{font-size:52px;margin:16px 0 18px}
  .hero-title small{margin-bottom:10px;font-size:10px}
  .hero-copy>p.hero-sub{font-size:14px;line-height:1.65}
  .hero-tags{gap:6px;margin-top:18px}
  .hero-tags li{gap:5px;padding:7px 8px}
  .hero-tags span{font-size:11px}
  .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}
  .btn{min-height:44px;padding:0 10px;gap:8px;font-size:12px}
  .hero-object{height:250px}
  .event-card-head,.event-card-foot{height:45px}
  .countdown{bottom:62px}
  .yf-logo{top:56px}

  .event-section,.play-section,.talent-section,.shop-section,.finish-section,
  .dodge-section,.bestiary-section,.boss-section,.energy-section,.guides-section{padding:66px 0}
  .section-head{gap:14px;margin-bottom:26px}
  .section-head h2{font-size:34px}
  .section-head p{font-size:13px;line-height:1.7}
  .sec-sprite{width:44px;top:28px}

  .wallet-note{grid-template-columns:34px 1fr;gap:12px;padding:15px;margin-top:16px}
  .wallet-note>b{width:32px;height:32px}
  .wallet-note p{line-height:1.55}
  .number-ribbon{grid-template-columns:1fr 1px 1fr 1px 1fr;gap:0;min-height:92px;padding:14px 8px;margin-bottom:20px}
  .number-ribbon>div{flex-direction:column;align-items:center;justify-content:center;gap:7px}
  .number-ribbon>i{display:block;height:42px}
  .number-ribbon b{font-size:30px}
  .number-ribbon span{font-size:10px;text-align:center}
  .ribbon-corn{width:50px;right:-14px;bottom:-13px}

  .route-board,.route-choice,.basics-grid,.quick-rules,.dodge-rules,.bestiary-grid,.lb-grid,.ledger,.guide-grid,.data-resource-grid{
    display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:12px;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none
  }
  .route-board::-webkit-scrollbar,.route-choice::-webkit-scrollbar,.basics-grid::-webkit-scrollbar,.quick-rules::-webkit-scrollbar,.dodge-rules::-webkit-scrollbar,.bestiary-grid::-webkit-scrollbar,.lb-grid::-webkit-scrollbar,.ledger::-webkit-scrollbar,.guide-grid::-webkit-scrollbar,.data-resource-grid::-webkit-scrollbar{display:none}

  .route-board{gap:10px;margin-inline:-12px;padding:2px 12px 14px;border:0;background:transparent}
  .route-step{flex:0 0 82vw;scroll-snap-align:start;display:grid;grid-template-columns:54px 1fr;gap:0 14px;min-height:190px;padding:18px;text-align:left;background:#f8efd5;border:1px solid #b3a887}
  .step-no{left:auto;right:16px;top:16px}
  .step-icon{grid-row:1/3;width:50px;height:50px;margin:0;box-shadow:none}
  .step-icon img{width:30px}
  .route-step h3{align-self:center;margin:0;padding-right:28px;font-size:21px}
  .route-step p{grid-column:1/-1;margin-top:18px;font-size:13px;line-height:1.65}

  .route-choice{gap:10px;margin:8px -12px 0;padding:0 12px 14px}
  .choice-or{display:none}
  .choice-card{flex:0 0 calc(100% - 28px);scroll-snap-align:start;min-height:350px;padding:24px 22px}
  .choice-card h3{margin-top:24px;font-size:40px}
  .choice-card p{max-width:82%;line-height:1.65}
  .choice-rules{margin-top:20px}
  .choice-card dl{margin-top:18px}
  .choice-total{top:20px;right:20px;font-size:34px}

  .basics-grid{gap:10px;margin:0 -12px 28px;padding:0 12px 12px;border:0;background:transparent}
  .basics-grid article{flex:0 0 80vw;scroll-snap-align:start;min-height:190px;padding:24px 22px;border:1px solid rgba(189,230,222,.16)}
  .basics-grid b{font-size:18px}.basics-grid p{font-size:13px}

  .lesson-player{min-height:0}
  .lesson-nav{grid-template-columns:repeat(3,1fr);padding:6px}
  .lesson-tab{display:block;min-height:62px;padding:10px 7px;text-align:center}
  .lesson-tab>span{display:block;margin:0 0 5px}.lesson-tab small{display:none}
  .media-console{padding:7px}
  .console-bar{height:36px}.console-bar>b{display:none}
  .media-stage{height:min(72vw,280px)}
  .media-speed{left:9px;top:9px}.media-speed button{min-height:30px;padding:0 8px;font-size:10px}
  .media-status{right:9px;top:9px}.media-status>span{display:none}
  .media-toggle{right:9px;bottom:9px;min-height:36px}
  .tutorial-note{left:9px;right:82px;bottom:9px;padding:9px 10px}
  .tutorial-note b{display:none}.tutorial-note span{font-size:11px;line-height:1.45}
  .quick-rules{gap:8px;border:0;margin:0 -12px;padding:10px 12px}
  .quick-rules article{flex:0 0 76vw;scroll-snap-align:start;min-height:150px;padding:22px;border:1px solid rgba(189,230,222,.15)}

  .dodge-rules{gap:9px;margin:0 -12px 24px;padding:0 12px 10px}
  .dodge-rules li{flex:0 0 78vw;scroll-snap-align:start;min-height:130px}
  .dodge-tabs{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start}
  .dodge-tabs button{flex:0 0 auto;min-height:40px;white-space:nowrap}
  .dodge-board{--t:min(42px,calc((100vw - 48px) / var(--w)))}

  .talent-cards{grid-template-columns:repeat(3,72vw);gap:10px}
  .talent-card{min-height:286px;padding:18px}
  .talent-card>img{width:78px;height:78px;margin:34px auto 24px}
  .talent-advice{min-height:0;padding:26px 22px}
  #openTalents{display:flex;align-items:center;justify-content:space-between;min-height:46px;width:100%;margin-top:20px;padding:0 14px;border:1px solid rgba(189,223,25,.45)}

  .bestiary-callout{padding:16px}
  .bestiary-grid{gap:10px;margin-inline:-12px;padding:0 12px 12px}
  .foe-card{flex:0 0 84vw;scroll-snap-align:start}
  .lb-grid{gap:10px;margin-inline:-12px;padding:0 12px 14px}
  .lb-board{flex:0 0 88vw;scroll-snap-align:start}
  .lb-top{max-height:300px}

  .boss-grid{gap:34px}.boss-copy h2{font-size:40px}.boss-stats{margin-bottom:18px}
  .ledger{gap:9px;margin-inline:-12px;padding:0 12px 12px}
  .ledger article{flex:0 0 76vw;scroll-snap-align:start}
  .checklist{padding:22px 20px}

  .guide-filters{margin-bottom:18px}
  .chip-row{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.chip-row::-webkit-scrollbar{display:none}
  .chip-row button{flex:0 0 auto;min-height:40px}
  .guide-grid{gap:10px;margin-inline:-12px;padding:0 12px 12px}
  .guide-card{flex:0 0 82vw;scroll-snap-align:start;min-height:230px}
  .guide-submit-panel{margin-top:34px}
  .guide-submit-copy{min-height:210px}

  .data-resource-grid{gap:10px;margin:42px -12px 0;padding:0 12px 14px}
  .resource-panel{flex:0 0 86vw;scroll-snap-align:start}
  .mode-panel{margin-top:10px}

  .footer-cast-stage{padding-top:30px}.footer-cast{width:calc(100% - 24px)}
}

/* ---------- OCH 深色像素视觉系统 ---------- */
:root{--och-bg:#080c12;--och-panel:#101720;--och-panel-2:#12242a;--och-panel-3:#171421;--och-border:rgba(196,232,225,.16);--och-radius:18px;--och-radius-sm:12px}
body{background:var(--och-bg)}
html.skip-entry .entry-loader{display:none!important}
.nav{padding:0 16px;border:1px solid rgba(211,240,234,.14);border-radius:16px;background:rgba(8,13,19,.88);box-shadow:0 16px 42px rgba(0,0,0,.28);backdrop-filter:blur(14px)}
.nav-links .view-link,.nav-resources summary,.lang-toggle,.nav-play{border-radius:9px}

.event-section{background:#0a1118;color:#e7f1ee;clip-path:none}
.event-section:before,.bestiary-section:before{opacity:.12;background-image:linear-gradient(rgba(125,203,193,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(125,203,193,.13) 1px,transparent 1px)}
.play-section{background:#09171d}
.dodge-section{background:#0d141d}
.boss-section{background:#17101b}
.energy-section{background:#0c191d;color:#e7f1ee}
.talent-section{background:#0d1118;color:#e7f1ee}
.talent-section:before{display:none}
.bestiary-section{background:#0a151b;color:#e7f1ee}
.lb-section{background:#0c2027}
.guides-section{background:#0b1118;color:#e7f1ee}
.data-section{background:#080e15}

.section-head.ink h2{color:#eef6f3}
.section-head.ink .kicker{color:var(--pink)}
.section-head.ink p,.event-section .section-head p,.talent-section .section-head p,.bestiary-section .section-head p,.energy-section .section-head p,.guides-section .section-head p{color:#91a9a6}
.inline-link{color:var(--lime);border-bottom-color:rgba(189,223,25,.45)}
html[data-lang="en"] .section-head h2,html[data-lang="en"] .data-head h1,html[data-lang="en"] .finish-copy h2,html[data-lang="en"] .boss-copy h2,html[data-lang="en"] .talent-advice h3,html[data-lang="en"] .guide-submit-copy h2,html[data-lang="en"] .guide-card h3,html[data-lang="en"] .foe-card h3,html[data-lang="en"] .lb-head h3,html[data-lang="en"] .resource-panel h2,html[data-lang="en"] .mode-panel h2,html[data-lang="en"] .checklist h3{font-family:var(--pixel),var(--body);font-weight:400;letter-spacing:-.025em}
html[data-lang="en"] .section-head>div,html[data-lang="en"] .lesson-head>div{width:100%;text-align:left}
html[data-lang="en"] .section-head h2,html[data-lang="en"] .lesson-head h3{text-align:left}

.wallet-note,.number-ribbon,.route-board,.route-step,.choice-card,.rank-details,.free-keys,
.basics-grid,.basics-grid article,.lesson-player,.media-stage,.quick-rules article,.dodge-rules li,.dodge-player,.dodge-board,
.boss-diagram,.ledger article,.checklist,.talent-card,.talent-advice,.tw-col,.bestiary-callout,.foe-card,.foe-stage,
.lb-board,.guide-card,.guide-submit-panel,.guide-submit-copy,.guide-form,.data-board,.data-lead,.resource-panel,.mode-panel,.finish-media{border-radius:var(--och-radius)}
.step-icon,.advice-icon,.guide-type,.foe-tag,.chip-row button,.filter,.text-button,.form-topics label span,.guide-form input,.guide-form select,.guide-form textarea,.form-actions button,.lb-search,.dodge-controls button{border-radius:var(--och-radius-sm)}

.wallet-note{border-color:rgba(235,85,165,.48);background:#241724}
.wallet-note p{color:#bba7b4}.wallet-note strong{color:#fff}
.number-ribbon{background:#111b22;border:1px solid var(--och-border)}
.route-board{border-color:var(--och-border);background:#0f1b22}
.route-step{border-color:rgba(196,232,225,.14);background:#111d24}
.step-icon{background:#18262c;border-color:#3c5657;box-shadow:0 0 0 9px #0f1b22}
.route-step h3{color:#eef6f3}.route-step p{color:#98afab}.step-no{color:#718b88}
.choice-card.silo{background:linear-gradient(145deg,#173c3e,#10272d)}.choice-card.raffle{background:linear-gradient(145deg,#2a192b,#19131f)}
.rank-details{border-color:var(--och-border);background:#0f1b22;color:#dce9e6}
.rank-details summary{color:#dce9e6}.rank-grid table{background:#111d24;color:#dce9e6;border-color:var(--och-border)}
.rank-grid th,.rank-grid td{border-color:rgba(196,232,225,.12)}
.free-keys{border:1px solid rgba(189,223,25,.22);background:#122b2e}

.basics-grid{gap:12px;border:0;background:transparent}
.basics-grid article{background:#101b23;border:1px solid var(--och-border)}
.lesson-player{overflow:hidden;background:#0a1118}.media-stage{border-color:rgba(204,239,232,.2)}
.quick-rules{gap:10px;border:0;background:transparent}.quick-rules article{background:#0f2027;border:1px solid var(--och-border)}
.dodge-rules li{background:#10252c}.dodge-player{overflow:hidden;box-shadow:14px 14px 0 #132e34}
.boss-diagram{overflow:hidden}.ledger{gap:12px}.ledger article{background:#101b22;border:1px solid var(--och-border)}
.checklist{border:1px solid rgba(189,223,25,.28);background:#111f24}.checklist li:before{border-color:#40575a;border-radius:4px}

.talent-card{border-color:var(--och-border);background:#121c24}.talent-card.active{background:#103036}
.talent-advice{border-color:var(--och-border);background:#121b23;color:#e8f2ef}.talent-advice>p{color:#95aaa7}.advice-icon{background:#17262c;border-color:#365052}.advice-rule{border-top-color:var(--och-border)}
.tw-col{border-color:var(--och-border);background:#111b22}.tw-row{border-top-color:rgba(196,232,225,.13)}.tw-row p{color:#8fa6a2}.tw-row>span:not(.talent-icon-shell){color:var(--lime)}
.talent-dialog{border:1px solid var(--och-border);border-radius:22px;background:#0c151c;color:#e8f2ef}

.bestiary-callout{border:1px solid var(--och-border);background:#111b22}
.foe-card{border-color:var(--och-border);background:#101a22}.foe-card h3{color:#f0f6f3}.foe-card header small,.foe-card dt{color:#819895}.foe-card dd{color:#e5efec}.foe-card>p{color:#9db3af;border-top-color:rgba(196,232,225,.13)}
.foe-stage{background:#13272e;border-color:#29464a}.bestiary-filter button{border-radius:10px}
.bestiary-filter .chip{border-color:#526a6c;background:rgba(12,28,35,.72);color:#c9ddda}
.bestiary-filter .chip:hover{border-color:#83aaa8;background:#142a32;color:#fff}
.bestiary-filter .chip.active{border-color:var(--lime);background:var(--lime);color:var(--ink);box-shadow:0 8px 22px rgba(189,223,25,.14)}
.bestiary-filter .chip:focus-visible{outline:2px solid var(--pink);outline-offset:3px}
.lb-board{overflow:hidden;box-shadow:10px 10px 0 #112d33}

body[data-view="guides"] .nav{border-color:rgba(211,240,234,.14)}
body[data-view="guides"] .brand>span,body[data-view="guides"] .nav-links,body[data-view="guides"] .lang-toggle{color:#d7e6e2}
body[data-view="guides"] .nav-links .view-link{border-color:rgba(214,245,239,.15);background:rgba(6,17,23,.32)}
body[data-view="guides"] .nav-links .view-link:hover,body[data-view="guides"] .nav-links .view-link.active{background:var(--lime);border-color:var(--lime);color:var(--ink)}
.view-topbar-ink{border-bottom-color:rgba(214,245,239,.15);color:#708d8a}.view-topbar-ink>a{color:#c4d8d4}
.chip-row button{border-color:#3a5051;color:#c7d7d3}.chip-row button small{color:#748c89}.chip-row button.active{background:var(--lime);border-color:var(--lime);color:var(--ink)}.chip-row button.active small{color:#34410c}
.guide-card{border-color:var(--och-border);background:#111b23}.guide-card h3{color:#edf5f2}.guide-card p{color:#94aaa6}.guide-foot{border-top-color:rgba(196,232,225,.13)}.guide-foot b{color:var(--teal-bright)}.guide-foot span{color:#718986}
.guide-submit-panel{overflow:hidden;border-color:var(--och-border);background:#101820;box-shadow:10px 10px 0 #112d33}.guide-form{background:#101820}
.guide-form label>span,.form-topics legend{color:#a7bbb7}.guide-form input,.guide-form select,.guide-form textarea{border-color:#34494b;background:#0a1319;color:#e8f2ef}.guide-form input::placeholder,.guide-form textarea::placeholder{color:#617875}.form-topics label span{border-color:#34494b;color:#a7bbb7}.form-actions p{color:#7f9692}.form-actions button{border-color:var(--lime);background:var(--lime);color:var(--ink)}

.data-board,.resource-panel,.mode-panel{overflow:hidden}.data-board{box-shadow:12px 12px 0 #0c252b}.resource-panel{border-color:var(--och-border);background:#111b23;color:#e8f2ef;box-shadow:8px 8px 0 #102a30}.resource-panel dt,.resource-total span{color:#829895}.resource-panel dl,.resource-panel dl div{border-color:rgba(196,232,225,.13)}.resource-meter>span{background:#28383d}.resource-note{background:#0b141a}
.mode-panel{background:#0f2028}.finish-media{overflow:hidden}

@media(max-width:680px){
  .nav{padding:0 8px;border-radius:13px}
  .brand img{width:66px}
  .nav-links .view-link,.nav-resources summary,.lang-toggle{padding:5px;font-size:9px}
  .section-head h2{font-size:30px;line-height:1.25}
  .route-step,.choice-card,.basics-grid article,.quick-rules article,.dodge-rules li,.talent-card,.foe-card,.lb-board,.guide-card,.resource-panel{border-radius:16px}
  .step-icon{box-shadow:none}
}

/* ---------- Axie-inspired gameplay showcase ---------- */
.lesson-head{display:grid;grid-template-columns:1fr .72fr;align-items:end;gap:48px;margin:74px 0 26px}
.lesson-head span{font:8px/1 var(--pixel);letter-spacing:.12em;color:var(--pink)}
.lesson-head h3{margin:15px 0 0;font:800 clamp(40px,5.2vw,72px)/1.1 var(--body);letter-spacing:-.035em;color:#edf6f3}
html[data-lang="en"] .lesson-head h3{font-family:var(--pixel);font-weight:400}
.lesson-head p{margin:0;color:#8fa8a4;font-size:14px;line-height:1.75}
.lesson-player{grid-template-columns:minmax(260px,33%) minmax(0,67%);gap:18px;padding:18px;border:1px solid rgba(132,214,255,.34);background:linear-gradient(145deg,#0d2631,#0a151d 54%,#10141d);box-shadow:0 34px 90px rgba(0,0,0,.3)}
.lesson-nav{display:flex;flex-direction:column;gap:12px;padding:0;border:0}
.lesson-index{height:34px;padding:0 5px;border:0;color:#799592}
.lesson-tab{position:relative;flex:1;grid-template-columns:24px 48px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:122px;padding:20px;border:1px solid rgba(132,214,255,.32);border-radius:14px;background:rgba(17,38,52,.7);color:#b7d8e5;overflow:visible}
.lesson-tab:hover{transform:translateX(3px);border-color:rgba(132,214,255,.72);background:#122f3d}
.lesson-tab.active{border-color:#84d6ff;background:linear-gradient(135deg,#173b4b,#122a39);box-shadow:inset 0 0 0 1px rgba(132,214,255,.16),0 12px 30px rgba(0,0,0,.2)}
.lesson-tab.active:after{content:"";position:absolute;z-index:3;right:-11px;top:50%;translate:0 -50%;border-top:10px solid transparent;border-bottom:10px solid transparent;border-left:11px solid #84d6ff}
.lesson-tab>span{margin:0;color:#60838d}
.lesson-tab.active>span{color:var(--lime)}
.lesson-tab>img{width:44px;height:44px;object-fit:contain;filter:drop-shadow(0 7px 3px rgba(0,0,0,.35))}
.lesson-tab b{font:700 14px/1.45 var(--body);color:#dff3f7}
html[data-lang="en"] .lesson-tab b{font-family:var(--pixel);font-size:12px;font-weight:400}
.lesson-tab small{font-size:11px;color:#78999f}
.lesson-tab>i{align-self:start;margin-top:3px;color:#6e9299}
.media-console{min-width:0;padding:0;border-radius:14px;background:#071016;overflow:hidden}
.console-bar{height:54px;padding:0 18px;border-bottom:1px solid rgba(132,214,255,.16)}
.media-stage{height:500px;border:0;border-radius:0 0 12px 12px}
.media-stage:before,.media-stage:after{content:"";position:absolute;z-index:2;width:16px;height:16px;pointer-events:none}
.media-stage:before{left:10px;top:10px;border-left:2px solid #84d6ff;border-top:2px solid #84d6ff}
.media-stage:after{right:10px;bottom:10px;border-right:2px solid #84d6ff;border-bottom:2px solid #84d6ff}

@media(max-width:980px){
  .lesson-head{grid-template-columns:1fr;gap:12px;margin-top:58px}
  .lesson-player{grid-template-columns:220px minmax(0,1fr)}
  .lesson-nav{display:flex;grid-template-columns:none;border:0}
  .lesson-tab{grid-template-columns:20px 38px minmax(0,1fr);min-height:112px;padding:15px}
  .lesson-tab>img{width:36px;height:36px}.lesson-tab>i{display:none}
}

@media(max-width:680px){
  .lesson-head{margin:42px 0 18px}.lesson-head h3{font-size:27px;line-height:1.3}.lesson-head p{font-size:12px}
  .lesson-player{grid-template-columns:88px minmax(0,1fr);gap:7px;margin-inline:-8px;padding:7px;border-radius:16px}
  .lesson-nav{display:flex;gap:7px;padding:0;border:0}
  .lesson-index{height:24px;padding:0;justify-content:center;font-size:6px}.lesson-index span{display:none}
  .lesson-tab{display:flex;flex-direction:column;justify-content:center;gap:6px;min-height:96px;padding:8px 5px;text-align:center;border-radius:11px}
  .lesson-tab.active:after{right:-7px;border-top-width:7px;border-bottom-width:7px;border-left-width:7px}
  .lesson-tab>span{position:absolute;left:6px;top:6px;margin:0;font-size:6px}
  .lesson-tab>img{width:34px;height:34px}
  .lesson-tab b{display:block;font-size:10px;line-height:1.45}.lesson-tab small,.lesson-tab>i{display:none}
  html[data-lang="en"] .lesson-tab b{font-size:8px}
  .media-console{padding:0;border-radius:11px}
  .console-bar{height:38px;padding:0 9px}.console-bar>div,.console-bar>b{display:none}.console-bar>span{font-size:6px}
  .media-stage{height:226px;border-radius:0 0 10px 10px}
  .media-stage video{object-fit:cover}
  .media-speed{left:7px;top:7px;padding:2px}.media-speed button{min-height:27px;padding:0 6px;font-size:8px}
  .media-status{display:none}
  .media-toggle{right:7px;bottom:7px;min-width:46px;min-height:30px;padding:0 8px;font-size:9px}
  .tutorial-note{left:7px;right:58px;bottom:7px;padding:7px 8px}.tutorial-note span{font-size:9px;line-height:1.4}
}

/* ---------- Hero event image with floating information ---------- */
.hero-object{height:530px;perspective:none}
.event-card{left:3%;right:0;top:3%;bottom:3%;border:1px solid rgba(183,225,222,.3);border-radius:24px;background:#07131a;box-shadow:0 38px 90px rgba(0,0,0,.48);transform:none!important;overflow:hidden}
.event-card:after{content:"";z-index:1;inset:0;border:0;background:linear-gradient(180deg,rgba(3,12,17,.56) 0,transparent 32%,transparent 50%,rgba(3,10,15,.54) 72%,rgba(3,10,15,.82) 100%)}
.event-card-map{z-index:0;inset:0;background-position:center;background-size:cover;transform:scale(1.02)}
.event-card-map:after{background:linear-gradient(90deg,rgba(5,18,24,.22),transparent 48%,rgba(5,18,24,.08))}
.event-card-head{position:absolute;z-index:3;left:18px;right:18px;top:18px;height:auto;padding:0;background:transparent}
.event-card-head span,.event-card-head b{display:inline-flex;align-items:center;min-height:38px;padding:0 13px;border:1px solid rgba(202,238,232,.22);border-radius:11px;background:rgba(5,17,23,.74);backdrop-filter:blur(10px)}
.event-card-head span{color:#d2e6e2}.event-card-head b{font-size:15px;border-color:rgba(189,223,25,.34);color:var(--lime)}
.yf-logo{left:28px;top:82px;width:58%;filter:drop-shadow(0 9px 14px rgba(0,0,0,.56))}
.countdown{z-index:3;left:22px;right:22px;bottom:88px;padding:14px 16px;border:1px solid rgba(189,223,25,.38);border-radius:16px;background:rgba(5,15,20,.76);box-shadow:0 14px 32px rgba(0,0,0,.25);backdrop-filter:blur(10px)}
.event-card-foot{z-index:3;left:22px;right:22px;bottom:18px;height:auto;padding:0;gap:9px;background:transparent}
.event-card-foot div{min-width:0;flex:1;gap:4px;padding:9px 12px;border:1px solid rgba(202,238,232,.18);border-radius:11px;background:rgba(5,17,23,.72);backdrop-filter:blur(10px)}
.event-card-foot small{color:#789794}.event-card-foot b{font-size:11px;color:#e6f4ec}

@media(max-width:980px){
  .hero-object{height:440px}
  .event-card{left:0;right:0;top:0;bottom:0}
}

@media(max-width:680px){
  .hero-object{height:330px}
  .event-card{border-radius:18px}
  .event-card-head{left:10px;right:10px;top:10px}
  .event-card-head span,.event-card-head b{min-height:30px;padding:0 9px;border-radius:8px;font-size:8px}
  .event-card-head b{font-size:11px}
  .yf-logo{left:16px;top:53px;width:60%}
  .countdown{left:10px;right:10px;bottom:58px;padding:9px 10px;border-radius:10px}
  .countdown small{margin-bottom:4px;font-size:8px}.countdown b{font-size:22px}.countdown span{margin-right:3px;font-size:9px}
  .event-card-foot{left:10px;right:10px;bottom:9px;gap:6px;padding:0}
  .event-card-foot div{padding:6px 8px;border-radius:8px}.event-card-foot small{font-size:8px}.event-card-foot b{font-size:8px}
  .hero-knight{right:-4px;bottom:-2%;width:72px}.hero-corn{left:-4px;top:17%;width:34px}
}

/* ---------- Footer cast as a decorative image ---------- */
footer .footer-cast-stage{padding:64px 0 48px;align-items:center}
footer .footer-cast{transition:none}
footer .footer-cast:hover{transform:none;filter:none}
footer .footer-cast span{display:none}
@media(max-width:680px){footer .footer-cast-stage{padding:40px 0 32px}}

/* ---------- Navigation: quiet links, one clear active state ---------- */
.nav-links .view-link,
body[data-view="guides"] .nav-links .view-link{
  min-height:38px;padding:0 10px;border:0;background:transparent;border-radius:9px;
  display:inline-flex;align-items:center;color:inherit;transition:color .2s,background .2s,transform .2s
}
.nav-links .view-link:hover,
body[data-view="guides"] .nav-links .view-link:hover{border:0;background:transparent;color:var(--lime);transform:translateY(-1px)}
.nav-links .view-link.active,
body[data-view="guides"] .nav-links .view-link.active{border:0;background:var(--lime);color:var(--ink);padding-inline:14px}
.lang-toggle,
body[data-view="guides"] .lang-toggle{min-width:42px;min-height:38px;padding:0;border:0;border-left:1px solid rgba(205,236,230,.2);border-radius:0;background:transparent;color:#d7ebe7}
.lang-toggle:hover,
body[data-view="guides"] .lang-toggle:hover{border-color:rgba(205,236,230,.2);background:transparent;color:var(--lime)}
.nav-resources summary,
body[data-view="guides"] .nav-resources summary{min-height:38px;padding:0 4px 0 8px;border:0;border-radius:0;background:transparent;color:var(--gold)}
.nav-resources summary:hover{color:#ffd16e}

/* ---------- Talent cards: mirror the in-game skill tiles ---------- */
.talent-card[data-rarity="uncommon"],.talent-icon-shell[data-rarity="uncommon"]{--skill:#63c982;--skill-dark:#2f7848;--skill-hi:#b6efc2}
.talent-card[data-rarity="rare"],.talent-icon-shell[data-rarity="rare"]{--skill:#548fdd;--skill-dark:#2d579f;--skill-hi:#9dcaff}
.talent-card[data-rarity="epic"],.talent-icon-shell[data-rarity="epic"]{--skill:#8b4dce;--skill-dark:#58258e;--skill-hi:#c68cf1}
.talent-card[data-rarity="legendary"],.talent-icon-shell[data-rarity="legendary"]{--skill:#ec8c3f;--skill-dark:#a65021;--skill-hi:#ffd080}
.talent-card{min-height:360px;border-radius:18px;background:linear-gradient(180deg,#15232c,#0c171e);border:1px solid rgba(201,235,229,.2);box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 14px 28px rgba(0,0,0,.16)}
.talent-card>img,.talent-card>img.pixel{width:112px;height:112px;margin:48px auto 34px;padding:19px;object-fit:contain;border:3px solid var(--skill-dark);border-radius:18px;background:linear-gradient(180deg,var(--skill-hi),var(--skill));box-shadow:inset 0 4px 0 rgba(255,255,255,.3),inset 0 -5px 0 var(--skill-dark),0 9px 0 rgba(2,8,12,.45),0 16px 28px rgba(0,0,0,.3);filter:none}
.talent-card.active{border-color:var(--lime);background:linear-gradient(180deg,#173039,#0d1d23);box-shadow:inset 0 -4px 0 var(--lime),0 20px 42px rgba(0,0,0,.26)}
.talent-card.active>img{transform:translateY(-3px)}
.rarity{border:0;border-radius:7px;background:rgba(3,12,18,.72)}

.tw-damage,.talent-row.damage{--category:#bd4e81}
.tw-survival,.talent-row.survival{--category:#4a9db0}
.tw-utility,.talent-row.utility{--category:#d6a43e}
.talent-wall{gap:14px}
.tw-col{padding:14px;border-radius:18px}
.tw-col h3{padding:4px 4px 9px;color:#edf5f2}
.tw-col h3 small{color:#758d89}
.tw-row{grid-template-columns:58px minmax(0,1fr) auto;gap:11px;margin-top:8px;padding:10px;border:1px solid rgba(204,235,229,.14);border-radius:12px;background:#0b151c;transition:transform .2s,border-color .2s,background .2s}
.tw-row:hover{transform:translateY(-2px);border-color:var(--category);background:#101e26}
.talent-icon-shell{position:relative;display:grid;place-items:center;width:54px;height:54px;padding:8px;border:2px solid var(--skill-dark);border-radius:11px;background:linear-gradient(180deg,var(--skill-hi),var(--skill));box-shadow:inset 0 3px 0 rgba(255,255,255,.28),inset 0 -4px 0 var(--skill-dark),0 4px 0 rgba(0,0,0,.38)}
.talent-icon-shell .talent-icon,.tw-row .talent-icon-shell .talent-icon,.talent-row header .talent-icon-shell .talent-icon{width:34px;height:34px;padding:0;border:0;background:transparent;object-fit:contain;filter:drop-shadow(0 2px 0 rgba(0,0,0,.25))}
.tw-row b{color:#edf4f1}.tw-row>span:not(.talent-icon-shell){max-width:90px;white-space:normal;text-align:right;line-height:1.5}

.talent-row{position:relative;overflow:hidden;border-radius:14px;background:linear-gradient(180deg,#111e27,#0b151c);border:1px solid rgba(204,235,229,.16);color:#eaf3f0;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)}
.talent-row:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--category)}
.talent-row header{gap:14px}.talent-row h3{color:#f2f7f5}.talent-row>p{color:#94aaa6}.talent-row>b{color:var(--lime)}

/* ---------- Items: compact in-game inventory guide ---------- */
.items-section{position:relative;overflow:hidden;scroll-margin-top:92px;padding:120px 0;background:radial-gradient(circle at 82% 12%,rgba(34,119,126,.16),transparent 34%),#101820;color:#e7f1ee;border-block:1px solid rgba(202,236,229,.08)}
.items-section:before{content:"";position:absolute;inset:0;opacity:.16;background-image:linear-gradient(rgba(174,220,214,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(174,220,214,.08) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,black,transparent 70%)}
.items-section>.shell{position:relative}.spr-items{right:5%;top:74px;width:80px;filter:drop-shadow(0 12px 18px rgba(0,0,0,.42))}
.item-priority{display:grid;grid-template-columns:300px 1fr;gap:32px;align-items:center;margin-bottom:18px;padding:24px 30px;border:1px solid rgba(189,223,25,.3);border-radius:18px;background:linear-gradient(120deg,rgba(18,49,53,.92),rgba(13,24,32,.92));box-shadow:0 14px 34px rgba(0,0,0,.16)}
.item-priority-icons{display:flex;align-items:center;justify-content:center;padding-right:28px;border-right:1px solid rgba(206,237,231,.14)}
.item-priority-icons .item-icon{width:68px;height:68px;margin-right:-12px;box-shadow:inset 0 3px 0 rgba(255,255,255,.16),inset 0 -4px 0 #132d36,0 8px 16px rgba(0,0,0,.25)}
.item-priority-icons .item-icon:last-child{margin-right:0}.item-priority>div:last-child>span{font:7px var(--pixel);color:var(--lime)}
.item-priority h3{margin:8px 0 6px;font:800 24px/1.25 var(--body);color:#f1f7f4}.item-priority p{margin:0;color:#9eb3af;font-size:13px;line-height:1.7}
.item-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.item-card{display:grid;grid-template-columns:62px minmax(0,1fr);gap:13px;align-items:center;min-height:108px;padding:13px;border:1px solid rgba(204,235,229,.14);border-radius:15px;background:rgba(11,22,29,.88);box-shadow:inset 0 1px 0 rgba(255,255,255,.025);transition:transform .2s,border-color .2s,background .2s}
.item-card:hover{transform:translateY(-2px);border-color:#4f7778;background:#0e1d25}
.item-icon{display:grid;place-items:center;width:58px;height:58px;padding:9px;border:2px solid #31545d;border-radius:12px;background:linear-gradient(180deg,#3e6b75,#254751);box-shadow:inset 0 3px 0 rgba(255,255,255,.14),inset 0 -4px 0 #18333c,0 4px 0 rgba(0,0,0,.32)}
.item-icon img{width:38px;height:38px;object-fit:contain;image-rendering:pixelated;filter:drop-shadow(0 2px 0 rgba(0,0,0,.28))}
.item-card header{display:flex;align-items:center;justify-content:space-between;gap:10px}.item-card h3{margin:0;font:10px/1.3 var(--pixel);color:#f0f6f3}
.item-card header span{flex:none;padding:4px 6px;border-radius:6px;font:6px var(--pixel);color:#9ec2c0;background:#162c33}
.item-card[data-item-type="damage"] header span{color:#ff9e94;background:#321d21}.item-card[data-item-type="control"] header span{color:#d6a3ef;background:#291d33}
.item-card[data-item-type="movement"] header span{color:#8dc8f5;background:#172b3b}.item-card[data-item-type="loot"] header span{color:#a8dc9b;background:#1b3026}
.item-card p{margin:7px 0 0;color:#91a8a5;font-size:12px;line-height:1.55}

@media(max-width:980px){
  .talent-wall{grid-template-columns:1fr}
  .tw-col{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .tw-col>h3{grid-column:1/-1}
  .tw-row{margin-top:0}
  .item-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
  .nav-links .view-link,body[data-view="guides"] .nav-links .view-link{min-height:36px;padding-inline:6px}
  .nav-links .view-link.active,body[data-view="guides"] .nav-links .view-link.active{padding-inline:9px}
  .lang-toggle,body[data-view="guides"] .lang-toggle{min-width:34px;min-height:36px}
  .nav-resources summary,body[data-view="guides"] .nav-resources summary{min-height:36px;padding-inline:4px}
  .talent-card{min-height:286px}
  .talent-card>img,.talent-card>img.pixel{width:82px;height:82px;margin:31px auto 27px;padding:13px;border-radius:14px}
  .tw-col{grid-template-columns:1fr;padding:10px}
  .tw-row{grid-template-columns:54px minmax(0,1fr);padding:9px}
  .tw-row>span:not(.talent-icon-shell){grid-column:2;text-align:left;max-width:none;margin-top:-3px}
  .talent-list{padding-inline:14px}.dialog-tools,.dialog-head{padding-inline:18px}
  .items-section{padding:88px 0}.spr-items{display:none}
  .item-priority{grid-template-columns:1fr;gap:18px;padding:20px}
  .item-priority-icons{justify-content:flex-start;padding:0 0 18px;border-right:0;border-bottom:1px solid rgba(206,237,231,.14)}
  .item-priority-icons .item-icon{width:60px;height:60px}.item-priority h3{font-size:20px}
  .item-grid{grid-template-columns:1fr;gap:8px}.item-card{min-height:94px;padding:11px}.item-card p{font-size:11px}
}

/* ---------- Compact mobile navigation ---------- */
.nav-menu-toggle{display:none}
@media(max-width:680px){
  .nav{justify-content:space-between;padding-inline:12px}
  .nav-menu-toggle{display:flex;align-items:center;gap:11px;min-height:38px;padding:0 11px;border:1px solid rgba(205,236,230,.18);border-radius:9px;background:rgba(16,31,39,.86);color:#dceae7;cursor:pointer}
  .nav-menu-toggle>span{font-size:12px}
  .nav-menu-toggle>b{display:grid;gap:4px;width:15px}
  .nav-menu-toggle i{display:block;height:1px;background:var(--lime);transition:transform .2s}
  .nav.is-menu-open .nav-menu-toggle i:first-child{transform:translateY(2.5px) rotate(45deg)}
  .nav.is-menu-open .nav-menu-toggle i:last-child{transform:translateY(-2.5px) rotate(-45deg)}
  .nav .nav-links{display:none;position:absolute;left:0;right:0;top:calc(100% + 8px);margin:0;padding:10px;flex-direction:column;align-items:stretch;gap:5px;border:1px solid rgba(205,236,230,.18);border-radius:13px;background:rgba(7,17,23,.97);box-shadow:0 22px 50px rgba(0,0,0,.48);backdrop-filter:blur(16px)}
  .nav.is-menu-open .nav-links{display:flex}
  .nav .nav-links .view-link,.nav .lang-toggle,.nav .nav-resources summary{width:100%;min-height:42px;justify-content:space-between;padding:0 12px;border:0;border-radius:8px;font-size:12px}
  .nav .nav-links .view-link.active{padding-inline:12px}
  .nav .lang-toggle{border-top:1px solid rgba(205,236,230,.12);color:#dceae7}
  .nav .nav-resources{width:100%}
  .nav .nav-resources summary{color:var(--gold)}
  .nav .nav-resources>div{position:static;width:100%;margin-top:4px;border-radius:8px;box-shadow:none}
  .nav .resource-full{display:inline}.nav .resource-short{display:none}
  body[data-view="guides"] .nav-menu-toggle{color:#dceae7}
}

/* ---------- Leaderboards / raffle pools ---------- */
.lb-switcher{display:flex;gap:8px;margin:-28px 0 24px;padding:5px;width:max-content;border:1px solid rgba(205,236,230,.16);border-radius:13px;background:#09171d}
.lb-switcher button{min-height:42px;padding:0 18px;border:0;border-radius:9px;background:transparent;color:#91aaa7;cursor:pointer}
.lb-switcher button.active{background:var(--lime);color:var(--ink);font-weight:800}
.lb-panel{display:none}.lb-panel.active{display:block}
.raffle-explainer{display:grid;grid-template-columns:220px 1fr;gap:30px;align-items:center;margin-bottom:16px;padding:22px 26px;border:1px solid rgba(235,85,165,.25);border-radius:16px;background:#181421}
.raffle-explainer b{font-size:22px;color:#f2e8ee}.raffle-explainer p{margin:0;color:#a99ca7;font-size:13px;line-height:1.7}
.raffle-pools{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.raffle-pool{padding:26px;border:1px solid rgba(205,236,230,.18);border-radius:18px;background:#0a171d;box-shadow:10px 10px 0 #112d33}
.raffle-pool header{display:grid;grid-template-columns:58px 1fr auto;gap:14px;align-items:center}
.raffle-pool header img{width:54px;height:54px;object-fit:contain}.raffle-pool header small{font:6px var(--pixel);color:#7f9996}.raffle-pool h3{margin:6px 0 0;font-size:23px}.raffle-pool header strong{font:22px var(--pixel);color:var(--pink);text-align:right}.raffle-pool header strong span{display:block;margin-top:5px;font:10px var(--body);color:#9bb0ad}
.raffle-total{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-top:30px;padding-top:22px;border-top:1px solid rgba(205,236,230,.12)}
.raffle-total span{color:#879e9a;font-size:12px;white-space:nowrap}.raffle-total b{font:32px var(--pixel);color:var(--lime)}.raffle-pool>p{margin:13px 0 0;color:#879e9a;font-size:12px}.raffle-pool>p b{color:#fff}
.raffle-refresh{display:block;margin-top:18px;color:#6e8885}
html[data-lang="en"] .choice-card h3{max-width:calc(100% - 145px);font-size:clamp(42px,3.7vw,56px);letter-spacing:-.045em;white-space:nowrap}
@media(max-width:680px){
  .lb-switcher{width:100%;margin-top:-16px}.lb-switcher button{flex:1;padding-inline:10px}
  .raffle-explainer{grid-template-columns:1fr;gap:8px;padding:18px}.raffle-explainer b{font-size:18px}
  .raffle-pools{grid-template-columns:1fr;gap:10px}.raffle-pool{padding:18px;box-shadow:7px 7px 0 #112d33}.raffle-pool header{grid-template-columns:48px 1fr auto;gap:10px}.raffle-pool header img{width:44px;height:44px}.raffle-pool h3{font-size:18px}.raffle-pool header strong{font-size:17px}.raffle-total{gap:10px;margin-top:22px}.raffle-total b{font-size:24px}
  html[data-lang="en"] .choice-card h3{max-width:calc(100% - 95px);font-size:34px;white-space:normal}
}

/* ---------- Seamless top ticker ---------- */
.ticker-track{display:flex;width:max-content;min-width:0;animation:tickerLoop 28s linear infinite;will-change:transform}
.ticker-group{display:flex;flex:none;align-items:center}
@keyframes tickerLoop{to{transform:translateX(-50%)}}
@media(max-width:680px){.ticker-track{animation-duration:34s}}

/* ---------- Event overview refinements ---------- */
.play-section{padding-top:96px}
@media(max-width:980px){
  .resource-grid{grid-template-columns:1fr}
}
@media(max-width:680px){
  .resource-guide{padding:20px 16px;border-radius:18px}
  .resource-guide>header{align-items:flex-start;flex-direction:column-reverse;gap:9px;margin-bottom:16px}
  .resource-guide>header h3{font-size:24px}
  .resource-grid{gap:10px}
  .resource-grid article{grid-template-columns:48px 1fr;gap:13px;padding:16px 14px;border-radius:14px}
  .resource-grid article>img{width:44px;max-height:48px}
  .resource-grid h4{font-size:20px}.resource-grid p{font-size:12px}
  .play-section{padding-top:66px}
}

/* ---------- 30 second core gameplay ---------- */
.core-head{margin-top:0}
.core-run-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}
.core-run-facts>div{display:flex;flex-direction:column;gap:10px;padding:16px 18px;border:1px solid rgba(132,214,255,.2);border-radius:13px;background:rgba(10,25,33,.76)}
.core-run-facts b{font:22px/1 var(--pixel);color:var(--lime)}.core-run-facts span{font-size:11px;color:#86a4a1}
.core-player{min-height:630px;grid-template-columns:minmax(250px,29%) minmax(0,71%)}
.core-player .lesson-tab{min-height:112px}
.core-panel-stack{min-width:0;border-radius:14px;background:#071016;overflow:hidden}
.core-panel{display:none;min-height:592px}.core-panel.active{display:block}
.core-console{min-height:592px;background:#071016}
.core-panel .media-console{height:100%}.core-panel .media-stage{height:478px}
.core-panel-note{margin:0;padding:15px 20px;color:#94aaa7;font-size:12px;line-height:1.65}
.core-finish{margin:22px 0 0;text-align:center;color:#b7ceca;font-size:14px}.core-finish:before,.core-finish:after{content:"◆";margin:0 12px;color:var(--pink);font-size:8px}

.energy-demo{padding:22px}
.energy-track{position:relative;height:180px;overflow:hidden;border:1px solid rgba(132,214,255,.18);border-radius:14px;background:linear-gradient(rgba(9,23,30,.28),rgba(3,10,14,.72)),url('./assets/dungeon.jpg') center/cover;image-rendering:pixelated}
.energy-track:after{content:"ENERGY 100  →  99  →  98  →  97";position:absolute;left:16px;bottom:13px;padding:8px 10px;background:rgba(3,9,13,.78);color:var(--lime);font:7px var(--pixel)}
.energy-track img{position:absolute;left:9%;bottom:49px;width:56px;filter:drop-shadow(0 8px 4px rgba(0,0,0,.5));animation:coreWalk 6s steps(6) infinite}
.energy-track i{position:relative;display:inline-block;width:13%;height:58px;margin:83px 1.5% 0;border:1px solid rgba(101,182,187,.22);background:rgba(30,104,106,.28)}
@keyframes coreWalk{50%{left:78%}}
.energy-rule-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}
.energy-rule-grid article{padding:15px 12px;border:1px solid rgba(204,239,232,.14);border-radius:11px;background:#0d1b22;text-align:center}
.energy-rule-grid b{display:block;font:17px var(--pixel);color:var(--lime)}.energy-rule-grid span{display:block;margin-top:7px;color:#9cb3b0;font-size:11px}
.energy-demo>p{margin:16px 2px 0;color:#9cb3b0;font-size:13px;line-height:1.7}

.core-tier-scroll{max-width:100%;padding:12px;overflow:auto;scrollbar-color:#3c5e60 #0b151c}
.core-tier-list{display:grid;min-width:720px;border:1px solid rgba(216,235,232,.15);border-radius:13px;overflow:hidden;background:#202129}
.tier-row{display:grid;grid-template-columns:76px 1fr;min-height:88px;border-bottom:1px solid rgba(255,255,255,.09)}.tier-row:last-child{border-bottom:0}
.tier-grade{display:grid;place-items:center;align-content:center;gap:5px;color:#12141a}.tier-grade b{font:24px var(--pixel)}.tier-grade span{font-size:10px;font-weight:800}
html[data-lang="zh"] .tier-grade b{display:none}
html[data-lang="zh"] .tier-grade span{font-size:15px}
html[data-lang="en"] .tier-grade span{display:none}
.tier-s{--tier:#ed8182}.tier-a{--tier:#f2bb7e}.tier-b{--tier:#f4d882}.tier-c{--tier:#eef083}.tier-d{--tier:#b9ed78}.tier-grade{background:var(--tier)}
.tier-skills{display:flex;flex-wrap:wrap;align-items:center;gap:7px;padding:9px;background:#1d1e25}
.tier-skill{display:flex;align-items:center;gap:8px;min-height:54px;padding:4px 11px 4px 5px;border-radius:8px;background:#f1f0ed;color:#16171b;box-shadow:inset 0 -2px 0 rgba(0,0,0,.12)}
.tier-skill>.talent-icon-shell{width:44px;height:44px;padding:6px;border-radius:9px;box-shadow:inset 0 2px 0 rgba(255,255,255,.28),inset 0 -3px 0 var(--skill-dark),0 3px 0 rgba(0,0,0,.28)}
.tier-skill>.talent-icon-shell .talent-icon{width:28px;height:28px}.tier-skill>b{font-size:12px;white-space:nowrap}

.environment-demo{padding:22px}
.weather-scene{position:relative;height:214px;overflow:hidden;border:1px solid rgba(132,214,255,.2);border-radius:14px;background:linear-gradient(rgba(4,15,20,.18),rgba(3,11,15,.6)),url('./assets/dungeon.jpg') center/cover;image-rendering:pixelated}
.weather-scene:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(93,167,211,.19),transparent 30%,rgba(123,198,78,.1) 55%,rgba(255,100,49,.16));mix-blend-mode:screen}
.weather-hero{position:absolute;z-index:3;left:46%;bottom:37px;width:64px;animation:weatherHero 2.8s steps(2) infinite}
.weather-scene .snow{position:absolute;z-index:2;color:#d9f6ff;font-style:normal;font-size:20px;animation:snowFall 3.2s linear infinite}.weather-scene .s1{left:18%;top:-10px}.weather-scene .s2{left:38%;top:15px;animation-delay:-1.3s}.weather-scene .s3{left:67%;top:-5px;animation-delay:-2.2s}
.weather-scene .wind{position:absolute;z-index:2;left:-25%;width:42%;height:2px;background:linear-gradient(90deg,transparent,#b8ebef,transparent);animation:windSweep 2.6s linear infinite}.weather-scene .w1{top:35%}.weather-scene .w2{top:60%;animation-delay:-1.2s}
.weather-scene .bolt{position:absolute;z-index:4;right:18%;top:16px;color:#f7e95d;font:54px/1 var(--pixel);font-style:normal;animation:lightning 3.6s steps(1) infinite}
@keyframes snowFall{to{transform:translate(35px,235px) rotate(180deg)}}@keyframes windSweep{to{left:110%}}@keyframes lightning{0%,86%,100%{opacity:0}87%,91%{opacity:1;filter:drop-shadow(0 0 15px #fff)}}@keyframes weatherHero{50%{transform:translateY(-5px)}}
.weather-types{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:10px}.weather-types span{padding:8px 4px;border:1px solid rgba(204,239,232,.13);border-radius:8px;background:#0c1a21;color:#9eb5b2;font-size:11px;text-align:center}
.environment-demo ul{display:grid;gap:8px;margin:14px 0 0;padding:0;list-style:none}.environment-demo li{position:relative;padding:10px 12px 10px 31px;border-radius:9px;background:#0d1b22;color:#a5bbb8;font-size:12px;line-height:1.55}.environment-demo li:before{content:"◆";position:absolute;left:12px;top:12px;color:var(--lime);font-size:8px}

@media(max-width:980px){
  .core-run-facts{grid-template-columns:1fr 1fr}
  .core-player{grid-template-columns:190px minmax(0,1fr)}
  .core-player .lesson-tab{min-height:104px}
}
@media(max-width:680px){
  .core-head{margin-top:0}.core-head p{font-size:11px}
  .core-run-facts{gap:6px;margin-bottom:12px}.core-run-facts>div{padding:11px 10px}.core-run-facts b{font-size:14px}.core-run-facts span{font-size:9px}
  .core-player{grid-template-columns:82px minmax(0,1fr);min-height:0}
  .core-player .lesson-index{font-size:5px}.core-player .lesson-tab{min-height:94px}
  .core-panel,.core-console{min-height:520px}.core-panel .media-stage{height:382px}
  .core-panel-note{padding:11px 12px;font-size:10px}
  .energy-demo,.environment-demo{padding:9px}
  .energy-track{height:140px}.energy-track img{width:43px;bottom:43px}.energy-track i{height:45px;margin-top:70px}.energy-track:after{left:7px;bottom:7px;font-size:5px}
  .energy-rule-grid{grid-template-columns:1fr 1fr;gap:6px}.energy-rule-grid article{padding:11px 5px}.energy-rule-grid b{font-size:13px}.energy-demo>p{font-size:10px}
  .core-tier-scroll{height:auto;padding:6px;overflow:visible}.core-tier-list{min-width:0;width:100%}.tier-row{grid-template-columns:40px minmax(0,1fr);min-height:0}.tier-grade{padding:5px}.tier-grade b{font-size:16px}.tier-grade span{font-size:10px!important;line-height:1.15;text-align:center}.tier-skills{display:grid;grid-template-columns:repeat(6,30px);align-content:center;justify-content:start;gap:5px;padding:6px}.tier-skill{display:block;min-width:0;min-height:0;padding:0;background:transparent;box-shadow:none}.tier-skill>.talent-icon-shell{width:30px;height:30px;padding:4px;border-width:1px;border-radius:7px}.tier-skill>.talent-icon-shell .talent-icon{width:20px;height:20px}.tier-skill>b{display:none}
  .weather-scene{height:155px}.weather-hero{width:48px;bottom:29px}.weather-types{grid-template-columns:repeat(3,1fr)}.weather-types span{font-size:9px}.environment-demo li{padding:8px 9px 8px 26px;font-size:10px}.environment-demo li:before{left:9px;top:10px}
  .core-finish{font-size:12px}
}

/* ---------- Mobile dense grids ---------- */
@media(max-width:680px){
  .ledger{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;overflow:visible;scroll-snap-type:none}
  .ledger article{min-width:0;padding:16px 13px}
  .ledger b{font-size:22px}.ledger span{margin-left:3px;font-size:10px}.ledger p{margin-top:10px;font-size:11px;line-height:1.55}

  .talent-wall{display:grid;grid-template-columns:1fr;gap:10px}

  .item-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .item-card{grid-template-columns:42px minmax(0,1fr);gap:8px;min-height:92px;padding:9px}
  .item-icon{width:42px;height:42px;padding:6px;border-radius:9px}.item-icon img{width:28px;height:28px}
  .item-card header{display:block}.item-card h3{font-size:7px;overflow-wrap:anywhere}.item-card header span{display:inline-block;margin-top:5px;font-size:5px}
  .item-card p{margin-top:6px;font-size:10px;line-height:1.45}

  .bestiary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;overflow:visible;scroll-snap-type:none}
  .foe-card{min-width:0;padding:11px;gap:9px}
  .foe-card header{gap:5px}.foe-card h3{font-size:16px}.foe-card header small{font-size:9px}.foe-tag{padding:3px 5px;font-size:9px}
  .foe-stage{grid-template-columns:1fr;gap:0;min-height:174px;padding:7px}
  .foe-sprite{height:62px;max-width:82px}.foe-stage .foe-visual{justify-self:center;transform:scale(.68);transform-origin:center center;margin:-8px 0}
  .foe-card dl{gap:5px 8px}.foe-card dt{font-size:9px}.foe-card dd{font-size:13px}
  .foe-card>p{padding-top:9px;font-size:10px;line-height:1.5}
}

/* ---------- Mobile focused selectors ---------- */
.choice-switcher,.talent-mobile-tabs,.tw-more{display:none}
@keyframes mobilePanelIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:680px){
  .choice-switcher{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:8px 0 10px;padding:5px;border:1px solid rgba(205,236,230,.16);border-radius:14px;background:#09171d}
  .choice-switcher button{display:flex;align-items:center;justify-content:space-between;min-height:46px;padding:0 14px;border:0;border-radius:10px;background:transparent;color:#9eb4b1;cursor:pointer}
  .choice-switcher button span{font-size:13px}.choice-switcher button b{font:13px var(--pixel);color:inherit}
  .choice-switcher button.active{background:var(--lime);color:var(--ink)}
  .choice-switcher button:last-child.active{background:var(--pink);color:#fff}
  .route-choice{display:block;margin:0;padding:0;overflow:visible}
  .route-choice .choice-card{display:none;width:100%;min-height:0}
  .route-choice .choice-card.active{display:flex;animation:mobilePanelIn .28s ease both}

  .talent-mobile-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:-10px 0 10px;padding:5px;border:1px solid rgba(205,236,230,.16);border-radius:14px;background:#09171d}
  .talent-mobile-tabs button{min-height:42px;padding:0 6px;border:0;border-radius:9px;background:transparent;color:#8fa6a2;font-size:12px;cursor:pointer}
  .talent-mobile-tabs button.active{background:#bd4e81;color:#fff;font-weight:800}
  .talent-mobile-tabs button[data-talent-category="survival"].active{background:#3f91a5}
  .talent-mobile-tabs button[data-talent-category="utility"].active{background:#bd8b31;color:#111a20}
  .talent-wall{margin-top:0}
  .talent-wall .tw-col{display:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px}
  .talent-wall .tw-col.active{display:grid;animation:mobilePanelIn .28s ease both}
  .talent-wall .tw-col>h3{grid-column:1/-1;margin-bottom:0}
  .talent-wall .tw-row{grid-template-columns:42px minmax(0,1fr);align-content:start;gap:7px;min-height:116px;padding:8px}
  .talent-wall .talent-icon-shell{width:42px;height:42px;padding:6px;border-radius:9px}
  .talent-wall .talent-icon-shell .talent-icon{width:27px;height:27px}
  .talent-wall .tw-row b{font-size:11px;line-height:1.25}
  .talent-wall .tw-row p{display:-webkit-box;margin-top:4px;overflow:hidden;font-size:9px;line-height:1.45;-webkit-line-clamp:2;-webkit-box-orient:vertical}
  .talent-wall .tw-row>span:not(.talent-icon-shell){grid-column:2;margin-top:0;font-size:6px}
  .talent-wall .tw-row:not(.is-preview){display:none}
  .talent-wall .tw-col.show-all .tw-row{display:grid}
  .tw-more{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;min-height:42px;padding:0 13px;border:1px solid rgba(205,236,230,.17);border-radius:9px;background:#0a171d;color:#b8cbc7;cursor:pointer}
  .tw-more span{font-size:11px}.tw-more b{font:8px var(--pixel);color:var(--lime)}
}

/* ---------- Game-material core demos ---------- */
.core-run-facts .fact-top{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.core-run-facts .has-reward-icon .fact-top{display:grid;grid-template-columns:38px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;justify-content:initial;gap:2px 10px}
.core-run-facts .fact-note{margin:0;padding-top:9px;border-top:1px solid rgba(132,214,255,.12);font-size:12px;line-height:1.6;color:#a9c0bd}
.core-run-facts .has-reward-icon .fact-top img{grid-row:1/3;width:36px;height:36px;object-fit:contain;filter:drop-shadow(0 5px 5px rgba(0,0,0,.38))}
.core-run-facts .has-reward-icon b,.core-run-facts .has-reward-icon span{margin:0}

.core-combat-demo{padding:16px 20px 12px;background:radial-gradient(circle at 50% 50%,rgba(29,104,105,.16),transparent 62%),#071016}
.core-combat-hud{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;color:#9bb3af}
.core-combat-hud span{font-size:12px}.core-combat-hud b{font:7px var(--pixel);color:var(--lime)}
.core-combat-board{position:relative;display:grid;grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(5,1fr);width:min(100%,510px);aspect-ratio:6/4.35;margin:auto;border:3px solid #041014;background:#1b6b6a;box-shadow:0 0 0 1px rgba(189,230,222,.2);overflow:hidden}
.core-combat-board>i{background:#227877;box-shadow:inset 0 0 0 1px rgba(0,0,0,.13)}.core-combat-board>i.alt{background:#1e706f}
.core-danger,.core-foe,.core-hero{position:absolute;width:calc(100% / 6);height:calc(100% / 5)}
.core-danger{z-index:1;left:calc(2 * 100% / 6);top:40%;opacity:0;background:rgba(229,72,77,.58);box-shadow:inset 0 0 0 2px #ff6b70}.core-danger.active{opacity:1;animation:redPulse 1s ease-in-out infinite}
.core-foe{z-index:3;left:calc(2 * 100% / 6);top:20%;display:grid;place-items:center}.core-foe img,.core-hero img{width:86%;height:86%;object-fit:contain}
.core-foe em{position:absolute;z-index:5;left:50%;top:-21px;transform:translateX(-50%);font-style:normal;text-shadow:0 2px 0 #041014}.core-foe em[data-kind="aim"]{color:#ff525a;font:21px/1 var(--pixel);animation:cueBounce .65s steps(2) infinite}.core-foe em[data-kind="alert"]{color:#ffe53d;font:23px/1 var(--pixel);animation:blink .65s steps(2) infinite}
.core-hero{z-index:4;left:0;top:0;display:grid;place-items:center;transform:translate(calc(var(--x) * 100%),calc(var(--y) * 100%));transition:transform .2s cubic-bezier(.3,.7,.4,1)}
.core-fx{position:absolute;z-index:7;left:calc(2.5 * 100% / 6);top:calc(2.5 * 100% / 5);translate:-50% -50%;font:10px var(--pixel);color:#fff;text-shadow:0 2px 0 #041014}.core-fx.miss{color:#d8f4ef}.core-fx.hit{top:calc(1.1 * 100% / 5);color:#ffe53d;animation:fxPop .5s ease both}
.core-combat-caption{display:flex;align-items:center;gap:10px;min-height:43px;margin-top:10px;padding:9px 12px;border-radius:9px;background:#0d1b22}.core-combat-caption i{flex:none;width:7px;height:7px;background:var(--lime);transform:rotate(45deg)}.core-combat-caption p{margin:0;color:#9fb5b2;font-size:11px;line-height:1.5}
.core-combat-progress{display:flex;justify-content:center;gap:5px;margin-top:9px}.core-combat-progress i{width:19px;height:3px;background:#294247}.core-combat-progress i.active{background:var(--lime)}
@keyframes fxPop{0%{opacity:0;transform:scale(.4)}60%{opacity:1;transform:scale(1.2)}100%{transform:scale(1)}}

.energy-game{padding:15px;border:1px solid rgba(132,214,255,.18);border-radius:14px;background:#09171d}
.energy-meter{display:flex;align-items:center;justify-content:space-between}.energy-meter>div{display:flex;align-items:center;gap:8px;color:#9fb5b2;font-size:11px}.energy-meter img{width:22px;height:22px;object-fit:contain}.energy-meter>b{font:17px var(--pixel);color:var(--lime)}
.energy-bar{height:12px;margin-top:9px;padding:2px;border:1px solid #345256;background:#061015}.energy-bar i{display:block;height:100%;background:linear-gradient(90deg,#6d9b12,var(--lime));box-shadow:0 0 12px rgba(189,223,25,.3);transition:width .5s ease}
.energy-scene{position:relative;height:184px;margin-top:12px;overflow:hidden;border-radius:10px;background:linear-gradient(rgba(4,15,20,.18),rgba(3,11,15,.58)),url('./assets/dungeon.jpg') center/cover;image-rendering:pixelated}
.energy-hero{position:absolute;z-index:3;left:18%;bottom:40px;width:54px;transition:left .6s steps(4);filter:drop-shadow(0 8px 4px rgba(0,0,0,.48))}.energy-pickup{position:absolute;z-index:2;right:20%;bottom:51px;width:25px;height:22px;object-fit:contain;opacity:0;transform:scale(2);filter:drop-shadow(0 0 7px #ff426a)}
.energy-scene em{position:absolute;z-index:5;left:50%;top:32%;font:17px var(--pixel);font-style:normal;color:var(--lime);opacity:0;text-shadow:0 2px 0 #031015}
.energy-scene.animate em{animation:energyFx .75s ease both}.energy-scene.is-heal .energy-pickup{opacity:1;animation:pickupPulse .7s steps(2) both}.energy-scene.is-level:after{content:"LEVEL UP";position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(circle,rgba(189,223,25,.28),transparent 45%);color:#e9ff6e;font:10px var(--pixel);animation:levelFlash .8s ease both}.energy-scene.is-attack .energy-hero{animation:attackNudge .55s steps(2)}
.energy-game>p{min-height:20px;margin:10px 0 0;color:#9fb5b2;font-size:11px;text-align:center}
.energy-rule-grid button{display:grid;grid-template-columns:28px 1fr;grid-template-rows:auto auto;align-items:center;gap:2px 8px;min-height:68px;padding:8px;border:1px solid rgba(204,239,232,.14);border-radius:11px;background:#0d1b22;color:#9cb3b0;text-align:left;cursor:pointer}.energy-rule-grid button.active{border-color:var(--lime);background:#12242a}.energy-rule-grid button img{grid-row:1/3;width:28px;height:28px;object-fit:contain}.energy-rule-grid button b{font:13px var(--pixel);color:var(--lime)}.energy-rule-grid button span{font-size:9px}
@keyframes energyFx{0%{opacity:0;transform:translateY(12px)}35%{opacity:1}100%{opacity:0;transform:translateY(-22px)}}@keyframes pickupPulse{50%{transform:scale(2.5)}}@keyframes levelFlash{0%,100%{opacity:0}30%,70%{opacity:1}}@keyframes attackNudge{50%{transform:translateX(15px)}}

.weather-scene .snow,.weather-scene .wind,.weather-scene .bolt,.weather-scene .poison,.weather-scene .heat{opacity:0}
.weather-scene strong{position:absolute;z-index:6;left:12px;top:12px;padding:7px 9px;border-radius:7px;background:rgba(3,12,17,.72);color:#e8f4f1;font:7px var(--pixel)}
.weather-scene.weather-snow .snow{opacity:1}.weather-scene.weather-wind .wind{opacity:1}.weather-scene.weather-lightning .bolt{opacity:1}.weather-scene.weather-wind .weather-hero{animation:windHero 1.1s steps(3) infinite}.weather-scene.weather-poison:after{background:rgba(77,169,75,.23);mix-blend-mode:screen}.weather-scene.weather-heat:after{background:linear-gradient(rgba(255,126,42,.1),rgba(255,61,35,.34));mix-blend-mode:screen}.weather-scene.weather-lightning:after{animation:weatherFlash 1.4s steps(1) infinite}
.weather-scene .poison{position:absolute;z-index:4;width:28px;height:28px;border-radius:50%;background:rgba(108,216,82,.32);border:2px solid rgba(155,255,112,.4);animation:poisonFloat 2.2s ease-in-out infinite}.weather-scene .p1{left:18%;bottom:18px}.weather-scene .p2{left:61%;bottom:38px;animation-delay:-.8s}.weather-scene .p3{right:12%;bottom:13px;animation-delay:-1.5s}.weather-scene.weather-poison .poison{opacity:1}
.weather-scene .heat{position:absolute;z-index:4;bottom:-20px;width:3px;height:120px;background:linear-gradient(transparent,rgba(255,206,92,.7),transparent);filter:blur(1px);animation:heatRise 1.6s ease-in infinite}.weather-scene .h1{left:26%}.weather-scene .h2{left:52%;animation-delay:-.5s}.weather-scene .h3{left:78%;animation-delay:-1s}.weather-scene.weather-heat .heat{opacity:1}
.weather-types button{padding:8px 4px;border:1px solid rgba(204,239,232,.13);border-radius:8px;background:#0c1a21;color:#9eb5b2;font-size:11px;cursor:pointer}.weather-types button.active{border-color:var(--lime);background:var(--lime);color:#10191f;font-weight:800}.weather-copy{min-height:19px;margin:10px 0 0;color:#9cb3b0;font-size:11px;text-align:center}
@keyframes windHero{50%{transform:translateX(12px) rotate(4deg)}}@keyframes poisonFloat{50%{transform:translateY(-28px) scale(.7);opacity:.45}}@keyframes heatRise{to{transform:translateY(-180px) skewX(8deg);opacity:0}}@keyframes weatherFlash{0%,70%,100%{background:transparent}71%,78%{background:rgba(225,249,255,.55)}}

@media(max-width:680px){
  .lesson-head h3{font-size:30px;line-height:1.25}
  .core-run-facts .has-reward-icon .fact-top{grid-template-columns:29px minmax(0,1fr);gap:1px 6px}.core-run-facts .has-reward-icon .fact-top img{width:28px;height:28px}.core-run-facts .fact-note{font-size:10px;padding-top:7px}
  .core-combat-demo{padding:9px}.core-combat-board{width:100%;aspect-ratio:6/5}.core-combat-hud span{font-size:10px}.core-combat-caption{min-height:54px;padding:8px}.core-combat-caption p{font-size:9px}
  .energy-game{padding:9px}.energy-scene{height:152px}.energy-hero{width:44px;bottom:31px}.energy-rule-grid button{grid-template-columns:23px 1fr;min-height:62px;padding:6px}.energy-rule-grid button img{width:23px;height:23px}.energy-rule-grid button b{font-size:10px}.energy-rule-grid button span{font-size:8px}
  .weather-copy{font-size:9px}.weather-types button{font-size:9px}
}

/* ---------- Community mobile grid ---------- */
@media(max-width:680px){
  .guides-section .chip-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;overflow:visible;padding:0}
  .guides-section .chip-row button{justify-content:space-between;width:100%;min-width:0;min-height:42px;padding:8px 11px}
  .guides-section .guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-inline:0;padding:0;overflow:visible;scroll-snap-type:none}
  .guides-section .guide-card{min-width:0;min-height:218px;padding:12px;gap:8px;scroll-snap-align:none}
  .guides-section .guide-type{padding:4px 6px;font-size:9px}
  .guides-section .guide-lang{font-size:6px}
  .guides-section .guide-card h3{display:-webkit-box;overflow:hidden;font-size:12px;line-height:1.45;-webkit-line-clamp:3;-webkit-box-orient:vertical}
  .guides-section .guide-card p{display:-webkit-box;overflow:hidden;font-size:10px;line-height:1.55;-webkit-line-clamp:4;-webkit-box-orient:vertical}
  .guides-section .guide-foot{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 6px;padding-top:8px;font-size:9px}
  .guides-section .guide-foot b,.guides-section .guide-foot span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .guides-section .guide-foot span{grid-column:1}.guides-section .guide-foot i{grid-column:2;grid-row:1/3;margin-left:0;align-self:center}
}

/* ---------- 攻击预警：黄色感叹号 + 红色方向小三角，蓄力期间同时显示 ---------- */
.cue-alert{position:absolute;z-index:8;left:50%;top:-24px;display:none;transform:translateX(-50%);font:22px/1 var(--pixel);color:#ffe53d;text-shadow:0 2px 0 #041014;animation:blink .65s steps(2) infinite;pointer-events:none}
.is-alert .cue-alert{display:block}
.cue-arrow{position:absolute;z-index:8;display:none;width:0;height:0;pointer-events:none;filter:drop-shadow(0 1px 0 #041014)}
.is-warning .cue-arrow[data-dir="down"]{display:block;left:50%;bottom:-4px;transform:translateX(-50%);border-left:7px solid transparent;border-right:7px solid transparent;border-top:10px solid #ff4f58;animation:nudgeDown .7s ease-in-out infinite}
.is-warning .cue-arrow[data-dir="up"]{display:block;left:50%;top:-4px;transform:translateX(-50%);border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:10px solid #ff4f58;animation:nudgeUp .7s ease-in-out infinite}
.is-warning .cue-arrow[data-dir="left"]{display:block;left:-4px;top:50%;transform:translateY(-50%);border-top:7px solid transparent;border-bottom:7px solid transparent;border-right:10px solid #ff4f58;animation:nudgeLeft .7s ease-in-out infinite}
.is-warning .cue-arrow[data-dir="right"]{display:block;right:-4px;top:50%;transform:translateY(-50%);border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:10px solid #ff4f58;animation:nudgeRight .7s ease-in-out infinite}
@keyframes nudgeDown{50%{translate:0 3px}}@keyframes nudgeUp{50%{translate:0 -3px}}@keyframes nudgeLeft{50%{translate:-3px 0}}@keyframes nudgeRight{50%{translate:3px 0}}
.dg-foe.is-boss .cue-alert{top:-6px}
@media(prefers-reduced-motion:reduce){.cue-alert,.cue-arrow{animation:none!important}}

/* ---------- 闪避和攻击：怪物场景播放器嵌在核心玩法面板里 ---------- */
.dodge-player.is-embedded{grid-template-columns:1fr;border:0;box-shadow:none;background:transparent}
.dodge-player.is-embedded .dodge-tabs{flex-direction:row;flex-wrap:wrap;gap:6px;padding:14px 20px 12px;border-right:0;border-bottom:1px solid rgba(189,230,222,.12)}
.dodge-player.is-embedded .dodge-tabs button{flex:1 1 auto;padding:9px 10px;text-align:center;font-size:13px}
.dodge-player.is-embedded .dodge-stage{padding:14px 20px 16px}
.dodge-player.is-embedded .dodge-board{--t:56px}
.dodge-player.is-embedded .dodge-say{margin:14px 0 10px;min-height:48px;font-size:14px}
@media(max-width:680px){
  .dodge-player.is-embedded .dodge-tabs{padding:8px;gap:4px}
  .dodge-player.is-embedded .dodge-tabs button{padding:7px 6px;font-size:11px}
  .dodge-player.is-embedded .dodge-stage{padding:8px}
  .dodge-player.is-embedded .dodge-board{--t:min(40px,calc((100vw - 140px) / var(--w)))}
  .dodge-player.is-embedded .dodge-hud{font-size:11px;margin-bottom:10px}
  .dodge-player.is-embedded .dodge-say{font-size:12px;padding:10px}
  .dodge-player.is-embedded .dodge-controls button{padding:7px 4px;font-size:11px}
}
/* 整圈攻击：四个方向的红三角 */
.cue-ring i{position:absolute;z-index:8;display:none;width:0;height:0;pointer-events:none;filter:drop-shadow(0 1px 0 #041014)}
.is-warning[data-aim="ring"] .cue-ring i{display:block}
.cue-ring i[data-dir="down"]{left:50%;bottom:-4px;transform:translateX(-50%);border-left:7px solid transparent;border-right:7px solid transparent;border-top:10px solid #ff4f58;animation:nudgeDown .7s ease-in-out infinite}
.cue-ring i[data-dir="up"]{left:50%;top:-4px;transform:translateX(-50%);border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:10px solid #ff4f58;animation:nudgeUp .7s ease-in-out infinite}
.cue-ring i[data-dir="left"]{left:-4px;top:50%;transform:translateY(-50%);border-top:7px solid transparent;border-bottom:7px solid transparent;border-right:10px solid #ff4f58;animation:nudgeLeft .7s ease-in-out infinite}
.cue-ring i[data-dir="right"]{right:-4px;top:50%;transform:translateY(-50%);border-top:7px solid transparent;border-bottom:7px solid transparent;border-left:10px solid #ff4f58;animation:nudgeRight .7s ease-in-out infinite}
.dg-foe.is-alert[data-aim="ring"] .cue-alert{top:-30px}
@media(prefers-reduced-motion:reduce){.cue-ring i{animation:none!important}}
/* Boss：出手前最后一回合，攻击范围每一格都有感叹号 */
.dg-layer b .tile-alert{display:grid;place-items:center;width:100%;height:100%;font:20px/1 var(--pixel);color:#ffe53d;text-shadow:0 2px 0 #041014;animation:blink .65s steps(2) infinite}
.dg-foe.tile-alert-mode .cue-alert{display:none!important}
@media(prefers-reduced-motion:reduce){.dg-layer b .tile-alert{animation:none}}

/* 装饰层一律不拦截点击：圆环、网格、背景图、大字水印都是透明大块，叠在内容上会挡住按钮 */
.play-orbit,.play-section:before,.hero-map,.hero-wash,.hero-grid,.hero-video,.finish-bg,.finish-section:after,
.event-section:before,.bestiary-section:before,.talent-section:before,.data-grid-bg,.grain,.cursor-glow,.sec-sprite{pointer-events:none}

/* ---------- 手机端统一左右 15px 间距（放在最后，覆盖前面分散的 12px、14px 和往外撑的写法） ---------- */
@media(max-width:680px){
  .shell,.nav{width:calc(100% - 30px)}
  .footer-cast{width:calc(100% - 30px)}
  .route-board,.route-choice,.bestiary-grid,.lb-grid,.ledger,.guide-grid,.basics-grid,.quick-rules,.dodge-rules,.data-resource-grid{margin-left:-15px;margin-right:-15px;padding-left:15px;padding-right:15px;scroll-padding-inline:15px}
  .lesson-player{margin-inline:0}
}

/* ---------- 天赋分级表：可点击 + 介绍卡 ---------- */
button.tier-skill{border:0;font:inherit;cursor:pointer;text-align:left;transition:transform .15s ease,box-shadow .15s ease}
button.tier-skill:hover{transform:translateY(-2px)}
button.tier-skill.active{box-shadow:0 0 0 3px var(--lime),inset 0 -2px 0 rgba(0,0,0,.12)}
button.tier-skill:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
.tier-detail{display:grid;grid-template-columns:auto minmax(0,1fr);gap:16px;align-items:center;margin-top:12px;padding:16px 18px;border:1px solid rgba(189,223,25,.35);border-radius:13px;background:#0d1b22}
.tier-detail>.talent-icon-shell{width:64px;height:64px;padding:9px;border-radius:13px;box-shadow:inset 0 2px 0 rgba(255,255,255,.28),inset 0 -4px 0 var(--skill-dark),0 3px 0 rgba(0,0,0,.28)}
.tier-detail>.talent-icon-shell .talent-icon{width:44px;height:44px}
.tier-detail-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.tier-detail-head b{font-size:18px;color:#f1f7f4}
.tier-detail-rank{flex:none;font-size:12px;font-weight:700;color:var(--lime)}
.tier-detail-tags{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.tier-detail-tags span{padding:3px 8px;border-radius:6px;background:#1c3339;color:#cfe3df;font-size:12px}
.tier-detail-tags span[data-rarity]{background:var(--skill);color:#fff}
.tier-detail-tags .tier-detail-value{background:transparent;border:1px solid rgba(189,230,222,.25);font:10px var(--pixel);color:var(--lime)}
.tier-detail p{margin:0;font-size:14px;line-height:1.65;color:#a9c0bd}
.tier-detail-tags span[data-rarity="uncommon"]{--skill:#3f9a5c}.tier-detail-tags span[data-rarity="rare"]{--skill:#3d74c2}.tier-detail-tags span[data-rarity="epic"]{--skill:#7a3fc0}.tier-detail-tags span[data-rarity="legendary"]{--skill:#d0742c}

@media(max-width:680px){
  .core-tier-scroll{padding:8px}
  .tier-row{grid-template-columns:40px minmax(0,1fr)}
  /* 每行固定 4 个，图标随剩余宽度伸缩：宽屏手机不留空位，每档最多两行 */
  .tier-skills{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:8px 6px}
  .tier-skill>.talent-icon-shell{width:100%;height:auto;aspect-ratio:1;padding:16%;border-radius:10px}
  .tier-skill>.talent-icon-shell .talent-icon{width:100%;height:100%}
  button.tier-skill.active{box-shadow:none}
  button.tier-skill.active>.talent-icon-shell{box-shadow:0 0 0 3px var(--lime)}
  .tier-detail{grid-template-columns:52px minmax(0,1fr);gap:12px;padding:12px}
  .tier-detail>.talent-icon-shell{width:52px;height:52px;padding:7px}
  .tier-detail>.talent-icon-shell .talent-icon{width:36px;height:36px}
  .tier-detail-head{flex-direction:column;gap:2px}
  .tier-detail-head b{font-size:15px}
  .tier-detail p{font-size:12px}
}

/* 超出部分用 clip 裁掉而不是 hidden 隐藏：hidden 的区块仍可被浏览器横向滚动（点击、聚焦、跳锚点时），
   手机上会把整块内容推出屏幕。clip 没有可滚动区域，不会发生这种偏移 */
.ticker,.hero,.event-card,.number-ribbon,.choice-card,.pixel-band,.play-section,.boss-section,.finish-section{overflow:clip}
@media(max-width:680px){.play-orbit{display:none}}

/* ---------- 能量演示：格子地图 ---------- */
.energy-board{--t:56px;position:relative;display:grid;grid-template-columns:repeat(6,var(--t));grid-auto-rows:var(--t);width:max-content;margin:12px auto 0;border:3px solid #041014;background:#1b6b6a}
.energy-board>i{background:#227877;box-shadow:inset 0 0 0 1px rgba(0,0,0,.12)}.energy-board>i.alt{background:#1e706f}
.eb-unit{position:absolute;left:0;top:0;width:var(--t);height:var(--t);display:grid;place-items:center;transform:translate(calc(var(--x) * var(--t)),calc(var(--y) * var(--t)));transition:transform .22s cubic-bezier(.3,.7,.4,1),opacity .25s}
.eb-unit img{width:90%;height:90%;object-fit:contain}
.eb-hero{--x:1;--y:1;z-index:4}
.eb-slime,.eb-orb{--x:2;--y:1;z-index:3;opacity:0}
.eb-orb img{width:62%;height:62%}
.eb-fountain{--x:2;--y:0;height:calc(var(--t) * 2);z-index:3;opacity:0}
.eb-fountain img{width:100%;height:100%}
.energy-board.is-attack .eb-slime,.energy-board.is-heal .eb-orb,.energy-board.is-fountain .eb-fountain{opacity:1}
.energy-board.is-heal.picked .eb-orb{opacity:0;transition-delay:.12s}
.energy-board.is-level:after{content:"LEVEL UP";position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(circle,rgba(189,223,25,.3),transparent 55%);color:#e9ff6e;font:12px var(--pixel);text-shadow:0 2px 0 #041014;animation:blink .5s steps(2) 3}
.energy-board>em{position:absolute;z-index:6;left:0;top:calc(var(--t) * .35);width:var(--t);text-align:center;transform:translateX(calc(var(--x, 1) * var(--t)));font:15px var(--pixel);font-style:normal;color:var(--lime);text-shadow:0 2px 0 #041014;opacity:0}
.energy-board>em.show{animation:fxUp 1.2s ease-out both}
.energy-rule-grid{grid-template-columns:repeat(5,1fr)}
@media(max-width:680px){
  .energy-board{--t:min(34px,calc((100vw - 180px) / 6))}
  .energy-rule-grid{grid-template-columns:repeat(3,1fr)}
}
