@charset "UTF-8";
:root{color-scheme:dark;--bg:#08090b;--surface:#0d0e11;--surface-raised:#131519;--text:#eeeae2;--muted:#94959b;--subtle:#73757d;--line:#2b2d33;--line-bright:#565960;--red:#d45c64;--blue:#80baff;--purple:#c69cf4;--gold:#dfbd77;--green:#b8cdb4;--user-scale:1;font-size:calc(clamp(14px,.833333vw,32px) * var(--user-scale));font-family:"Microsoft YaHei UI","Microsoft YaHei","PingFang SC",'Abyss Text','Abyss Text Full',sans-serif;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);min-width:720px}button,input,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;border:1px solid var(--line-bright);background:transparent;color:var(--text);padding:.8rem 1.15rem;cursor:pointer;font-size:.88rem;line-height:1.4;transition:background .16s,color .16s,border-color .16s}button:hover:not(:disabled){background:#202126;border-color:#a9a8a5}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.38;cursor:not-allowed}button:focus-visible,a:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:4px}a{color:inherit;text-decoration:none}select{color:var(--text);background:var(--surface-raised);border:1px solid var(--line-bright);padding:.65rem .8rem;max-width:100%}option{background:#131519}h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance}h1{font-family:'Abyss Text','Abyss Text Full',"Noto Serif CJK SC","Songti SC",SimSun,serif;letter-spacing:.05em;font-weight:600}p{line-height:1.8}svg{display:block}.icon{width:1.3rem;height:1.3rem;flex-shrink:0}small{font-size:.75rem}button.small{font-size:.78rem;padding:.5rem .85rem}button.quiet{border-color:transparent;padding:.6rem .75rem;color:var(--muted)}button.quiet:hover{color:var(--text)}button.icon-button{padding:.6rem;border-color:transparent}.primary{background:var(--text);color:#111216;border-color:var(--text);font-weight:600}.primary:hover:not(:disabled){background:#fff;border-color:#fff}.primary .icon{width:1.5rem;height:1.5rem}.muted{color:var(--muted)}.gold,.legendary{color:var(--gold)}.rare{color:var(--blue)}.epic{color:var(--purple)}.danger{color:var(--red)}.common{color:var(--text)}.improvement{color:var(--green)}::selection{background:var(--gold);color:var(--bg)}*{scrollbar-width:thin;scrollbar-color:#4b4d54 var(--bg)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-thumb{background:#4b4d54}.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.topbar{height:6.6rem;margin:0 2.3rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:.9rem}.brand>.icon{width:2.45rem;height:2.45rem;stroke-width:1.2}.brand>span{font-family:'Abyss Text','Abyss Text Full',SimSun,serif;font-weight:700;font-size:1.65rem;letter-spacing:.15em}.brand-sub{font-size:.85rem;margin-left:.75rem;letter-spacing:.15em;font-family:"Microsoft YaHei",'Abyss Text','Abyss Text Full',sans-serif;font-weight:400}.brand>small{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;letter-spacing:.23em;font-size:.6rem;color:var(--subtle);border-left:1px solid var(--line);padding-left:.9rem;margin-left:.4rem}.location{display:flex;align-items:center;gap:1rem;color:var(--muted);font-size:.85rem}.location>b{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;color:var(--text);font-size:1.6rem;font-weight:400}.location-divider{height:1rem;width:1px;background:var(--line);margin:0 .1rem}.header-actions{display:flex;align-items:center;gap:.5rem}.title-top-note{font-size:.8rem;color:var(--muted);letter-spacing:.14em}.game-layout{display:grid;grid-template-columns:18rem minmax(0,1fr) 19rem;gap:2.4rem;margin:0 2.3rem;min-height:calc(100svh - 17.1rem)}.left-rail,.right-rail{padding:2.25rem 0;min-width:0}.left-rail{display:flex;flex-direction:column}.section-label{display:flex;align-items:center;justify-content:space-between;font-size:.86rem;color:var(--text);letter-spacing:.06em}.section-label>span{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;color:var(--subtle);font-size:.6rem;letter-spacing:.12em}.route-panel>h2{font-size:1.25rem;font-weight:500;margin-top:1.75rem}.route-panel>p{font-size:.75rem;margin-top:.5rem}.route-list{list-style:none;margin:1.7rem 0 1.5rem;padding:0}.route-list li{display:flex;align-items:center;gap:1rem;position:relative;height:3.5rem;color:var(--muted);font-size:.85rem}.route-list li:not(:last-child):after{content:"";position:absolute;width:1px;height:1.05rem;background:var(--line);left:1.2rem;top:2.45rem}.route-node{width:2.4rem;height:2.4rem;border:1px solid var(--line);display:grid;place-items:center;background:var(--bg);font-family:Consolas,'Abyss Text','Abyss Text Full',monospace}.route-node .icon{width:1.1rem;height:1.1rem}.route-list em{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-size:.7rem;margin-left:auto;font-style:normal;color:var(--subtle)}.route-list small{display:block;color:var(--gold);font-size:.58rem;margin-top:.2rem}.route-list .current{color:var(--text)}.route-list .current .route-node{border-color:var(--gold);color:var(--gold)}.route-list .current em{color:var(--gold)}.route-list .done{color:#82877f}.route-list .done .route-node{border-color:#3b443b;color:var(--green)}.fate-summary{border-top:1px solid var(--line);padding-top:1rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;font-size:.78rem;color:var(--muted)}.fate-summary b{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;color:var(--text);font-weight:400;font-size:1rem}.fate-summary p{width:100%;font-size:.68rem;margin-top:.4rem}.log-panel{margin-top:2rem;padding-top:1.25rem;border-top:1px solid var(--line)}.log-panel ol{list-style:none;padding:0;margin:1rem 0 0;display:flex;flex-direction:column;gap:.7rem}.log-panel li{font-size:.72rem;line-height:1.65;color:var(--muted);padding-left:.8rem;position:relative}.log-panel li:before{content:"";position:absolute;left:0;top:.55rem;width:3px;height:3px;background:currentColor}.log-panel li.gold{color:var(--gold)}.log-panel li.rare{color:var(--blue)}.log-panel li.epic{color:var(--purple)}.log-panel li.legendary{color:var(--gold)}.log-panel li.danger{color:var(--red)}.rail-foot{margin-top:auto;padding-top:1.5rem;color:var(--subtle);font-size:.68rem;letter-spacing:.08em}.center-panel{min-width:0;border-left:1px solid var(--line);border-right:1px solid var(--line);position:relative;overflow:hidden;padding:0 2.6rem}.equipment-list{margin-top:1.8rem;display:flex;flex-direction:column;gap:.8rem}.equipped-item{width:100%;display:block;text-align:left;background:var(--surface);border-color:var(--line);padding:1.15rem}.equipped-item:hover:not(:disabled){border-color:currentColor;background:#141519}.item-meta{display:flex;justify-content:space-between;align-items:center;gap:.5rem;font-size:.67rem;color:var(--muted)}.rarity{font-size:.66rem;letter-spacing:.05em}.equipped-item h3{margin:.7rem 0 .6rem;font-size:1.05rem;font-weight:500;line-height:1.5}.equipped-item h3 small{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-size:.85rem;white-space:nowrap}.equipped-item p{color:var(--muted);font-size:.7rem;line-height:1.7}.equipped-item.rare{border-color:#293748}.equipped-item.epic{border-color:#3b3048}.equipped-item.legendary{border-color:#4c402a}.character-stats{margin-top:2.2rem;border-top:1px solid var(--line);padding-top:1.4rem}.character-stats dl{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem 1rem;margin:1.25rem 0 0}.character-stats dt{color:var(--muted);font-size:.72rem}.character-stats dd{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-size:1.55rem;margin:.3rem 0 0}.character-stats dd small{font-size:.8rem;margin-left:.2rem}.dice-growth{border-top:1px solid var(--line);margin-top:2rem;padding-top:1.4rem}.mini-dice{display:flex;gap:.55rem;margin-top:1.1rem}.mini-dice>span{display:grid;place-items:center;width:2.45rem;height:2.45rem;border:1px dashed var(--line);font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-size:.72rem;color:var(--subtle)}.mini-dice>span.unlocked{color:var(--text);border-style:solid;border-color:var(--line-bright)}.dice-growth p{font-size:.7rem;color:var(--muted);margin-top:.8rem}.combat-screen{padding-top:2.5rem}.enemy-heading{display:flex;align-items:center;justify-content:space-between;font-size:.72rem;color:var(--muted)}.enemy-type{display:flex;align-items:center;gap:.5rem;letter-spacing:.06em}.enemy-type .icon{width:1rem;height:1rem}.enemy-round{font-family:Consolas,'Abyss Text','Abyss Text Full',"Microsoft YaHei",monospace;font-size:.7rem}.combat-screen h1{text-align:center;font-size:2.3rem;margin:1.4rem 0 .5rem}.enemy-note{color:var(--muted);text-align:center;font-size:.75rem}.enemy-health{margin:1.8rem auto 0;max-width:42rem}.health-label{display:flex;justify-content:space-between;font-size:.68rem;color:var(--muted);margin-bottom:.6rem}.health-label b{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-weight:400;font-size:.88rem;color:var(--text)}.health-label small{color:var(--muted);font-size:.75rem}.health-track{height:.55rem;border:1px solid #583235;padding:1px;background:#211316}.health-track>span{display:block;width:var(--percent);height:100%;background:var(--red);transition:width .3s}.shield-line{display:flex;justify-content:flex-end;align-items:center;gap:.4rem;color:var(--blue);font-size:.65rem;margin-top:.5rem}.shield-line .icon{width:.85rem;height:.85rem}.enemy-trait{display:flex;justify-content:space-between;gap:1rem;max-width:42rem;margin:.7rem auto 0;color:var(--muted);font-size:.65rem}.enemy-trait>span{color:var(--red)}.combat-stage{position:relative;text-align:center;min-height:27rem;padding-top:3rem}.stage-line{position:absolute;left:8%;right:8%;top:14.2rem;border-top:1px solid #202126}.stage-line:before,.stage-line:after{content:"";position:absolute;top:-3px;width:5px;height:5px;background:var(--line-bright);transform:rotate(45deg)}.stage-line:before{left:0}.stage-line:after{right:0}.roll-caption{font-size:.8rem;letter-spacing:.18em;color:var(--muted);height:1.5rem;margin-bottom:.9rem}.dice-row{display:flex;justify-content:center;gap:.3rem;position:relative;align-items:center;min-height:11.5rem;perspective:700px}.die{width:7.4rem;flex:0 1 7.4rem;max-width:9rem;position:relative;transform:translateY(calc(var(--i) * -1px));color:var(--text)}.die svg{width:100%;height:auto;overflow:visible}.die-top{fill:#202227;stroke:#72757d;stroke-width:1}.die-side{fill:#111318;stroke:#72757d;stroke-width:1}.die-face{fill:#111318;stroke:#b5b5b5;stroke-width:1.15}.die-etch{stroke:#50535b;stroke-width:1;fill:none}.die text{fill:currentColor;font-family:Consolas,'Abyss Text','Abyss Text Full',"Courier New",monospace;font-weight:400;font-size:65px}.die-index{display:block;font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-size:.55rem;letter-spacing:.12em;color:var(--subtle);margin-top:.7rem;margin-right:.8rem}.die.resonant{color:var(--gold)}.die.resonant .die-face{stroke:var(--gold);fill:#19160e}.die.resonant .die-top{fill:#282114;stroke:#a88c53}.die.resonant .die-side{fill:#17130c;stroke:#a88c53}.major-resonance .die.resonant{filter:drop-shadow(0 0 .65rem #bb87273a)}.major-resonance .roll-caption{color:var(--gold)}.rolling .die{animation:roll-die .16s ease-in-out infinite alternate;animation-delay:calc(var(--i) * -.034s)}.rolling .die text{animation:roll-face .1s steps(2,end) infinite}.damage-result{height:11rem;position:relative;display:flex;align-items:center;flex-direction:column;justify-content:center;margin-top:1rem}.damage-result>strong{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-size:4.6rem;line-height:1.12;letter-spacing:-.035em;font-weight:400;font-variant-numeric:tabular-nums}.damage-result.emphatic>strong{color:var(--gold)}.trigger-line{height:1.4rem;font-size:.68rem;display:flex;gap:1rem;color:var(--gold);margin-bottom:.35rem}.damage-label{font-size:.65rem;letter-spacing:.12em;color:var(--muted);margin-top:.45rem}.damage-result p{font-size:.65rem;color:var(--muted);margin-top:.7rem}.waiting-line{width:2rem;height:1px;background:var(--line-bright);margin-bottom:1rem}.game-footer{margin:0 2.3rem;min-height:8.3rem;border-top:1px solid var(--line);display:flex;align-items:center;gap:2.8rem}.player-level{width:9rem}.player-level>span{display:block;color:var(--muted);font-size:.67rem}.player-level>b{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-weight:400;font-size:1.6rem}.player-level>b>small{font-size:.8rem;margin-right:.35rem;color:var(--muted)}.xp-track{height:2px;background:var(--line);margin-top:.4rem}.xp-track>span{display:block;background:var(--text);height:100%}.player-level>small{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-size:.55rem;color:var(--subtle)}.player-health{width:17rem}.player-health>div:first-child{display:flex;align-items:center;gap:.6rem;font-size:.72rem}.player-health .icon{color:var(--red);width:1rem;height:1rem}.player-health b{margin-left:auto;font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-size:.95rem;font-weight:400}.player-health b small{color:var(--muted);font-size:.75rem}.player-health-track{height:.33rem;background:#302025;margin-top:.8rem}.player-health-track>span{display:block;height:100%;background:var(--red);transition:width .3s}.player-gold{display:flex;gap:.75rem;align-items:center;min-width:8rem}.player-gold>.icon{color:var(--gold);width:1.5rem;height:1.5rem}.player-gold>span{color:var(--muted);font-size:.65rem}.player-gold strong{display:block;color:var(--gold);font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-weight:400;font-size:1.4rem;margin-top:.2rem}.primary-control{margin-left:auto;position:relative;min-width:16rem;text-align:center}.primary-control>.primary{width:100%;min-height:3.8rem;font-size:1.1rem;letter-spacing:.1em;gap:1rem}.primary-control>small{position:absolute;top:calc(100% + .55rem);left:0;right:0;text-align:center;color:var(--muted);font-size:.58rem;letter-spacing:.1em}.main-nav{display:flex;align-items:center;gap:.5rem;margin-left:auto}.main-nav>button{position:relative;flex-direction:column;gap:.4rem;min-width:4.5rem;padding:.6rem .9rem;border-color:transparent;color:var(--muted);font-size:.7rem}.main-nav>button.selected{color:var(--text)}.main-nav>button.selected:after{content:"";width:1rem;height:2px;background:var(--text);position:absolute;bottom:-.35rem}.main-nav>button .icon{width:1.3rem;height:1.3rem}.main-nav i{position:absolute;top:0;right:.5rem;color:var(--gold);font-size:.55rem;font-style:normal}.bottomline{height:2.2rem;margin:0 2.3rem;border-top:1px solid #1b1d22;display:flex;align-items:center;justify-content:space-between;font-size:.56rem;letter-spacing:.07em;color:var(--subtle)}.bottomline>span:first-child{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;letter-spacing:.13em}.room-screen{min-height:100%;padding:3rem 0 2rem;text-align:center;display:flex;align-items:center;flex-direction:column}.room-screen>h1{font-size:2.35rem;line-height:1.5;margin-top:1rem}.room-screen>p{font-size:.8rem;color:var(--muted);margin-top:.65rem}.room-symbol{color:var(--muted)}.room-symbol>.icon{width:1.8rem;height:1.8rem;stroke-width:1}.room-screen .room-hint{font-size:.67rem;line-height:1.8;color:var(--muted);margin-top:1.4rem;max-width:34rem}.fate-screen .dice-row{margin-top:1.8rem}.dice-row.large .die{width:9rem;flex-basis:9rem;max-width:14rem}.fate-verdict{display:flex;align-items:center;gap:1.4rem;margin-top:1.5rem}.fate-verdict>b{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-weight:400;font-size:2.3rem}.fate-verdict small{font-size:.85rem;color:var(--subtle)}.fate-verdict>span{font-size:.85rem;color:var(--gold)}.route-preview{display:flex;gap:2rem;margin-top:1.9rem;position:relative}.route-preview:before{content:"";height:1px;position:absolute;background:var(--line);top:1rem;left:1rem;right:1rem}.route-preview>span{display:flex;flex-direction:column;align-items:center;gap:.6rem;z-index:1;color:var(--muted);min-width:2.5rem}.route-preview .icon{width:2rem;height:2rem;background:var(--bg);padding:.25rem}.route-preview small{font-size:.65rem}.victory-mark{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;letter-spacing:.4em;font-size:.7rem;color:var(--gold);margin-top:1rem}.chest-screen h1{font-size:2.8rem}.chest-art{width:20rem;position:relative;margin:1.6rem 0 0;color:#b6b3a7}.chest-art svg{width:100%;height:auto;stroke:currentColor;stroke-width:1}.chest-art .chest-beams{stroke:#4c432d;stroke-dasharray:2 10}.chest-art .chest-seal{fill:var(--bg);stroke:var(--gold)}.chest-art.grand{color:var(--gold)}.chest-art.grand .chest-seal{fill:#594323}.chest-art.grand .chest-beams{stroke:#9e7b3c;stroke-dasharray:none}.chest-ground{position:absolute;bottom:0;left:0;right:0;border-top:1px solid var(--line);transform:scaleX(.8)}.chest-screen>h2{font-size:1.2rem;font-weight:400;margin-top:1rem}.boss-victory h1{color:var(--gold)}.loot-screen{padding-top:4rem}.loot-reveal{width:min(100%,34rem);margin:2.4rem auto 0}.item-card{text-align:left;border:1px solid var(--line);background:var(--surface);padding:1.3rem}.item-card.rare{border-color:#35465b}.item-card.epic{border-color:#4e3e60}.item-card.legendary{border-color:#6a5630;background:#11100d}.item-card>h3{font-size:1.2rem;font-weight:500;margin-top:.7rem;line-height:1.6}.item-card h3 small{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-size:.85rem}.item-card>p{color:var(--muted);font-size:.73rem;margin-top:.6rem}.item-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.1rem;border-top:1px solid var(--line);padding-top:.9rem;font-size:.72rem}.loot-reveal .item-card{padding:1.8rem}.loot-reveal .item-card>h3{font-family:'Abyss Text','Abyss Text Full',SimSun,serif;font-size:1.8rem;margin-top:1rem}.loot-reveal .item-card>p{font-size:.85rem}.loot-screen.legendary>h1{color:var(--gold)}.gold-reward{display:flex;align-items:center;gap:.75rem;padding:1.3rem .2rem;font-size:.8rem;color:var(--muted);border-bottom:1px solid var(--line)}.gold-reward .icon{color:var(--gold)}.gold-reward strong{margin-left:auto;font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-size:1.4rem;font-weight:400;color:var(--gold)}.merchant-screen,.forge-screen{padding-top:2.2rem}.merchant-screen>h1,.forge-screen>h1{font-size:2rem}.shop-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;width:100%;margin-top:2rem;text-align:left}.shop-item{padding:1.2rem 1rem;border:1px solid var(--line);min-width:0;display:flex;flex-direction:column;align-items:flex-start;background:var(--surface)}.shop-item.epic{border-color:#483853}.shop-item.legendary{border-color:#5d4c2c}.shop-item>h3{font-size:1.1rem;font-weight:500;line-height:1.7;min-height:3.7rem;margin-top:.8rem}.shop-item>.muted{font-size:.65rem}.shop-item>p{font-size:.7rem;color:var(--muted);min-height:3.6rem;line-height:1.8;margin-top:1rem}.shop-item>.improvement,.shop-item>span.muted:last-of-type{font-size:.65rem;margin-top:.8rem}.shop-item>button{margin-top:1.1rem;width:100%;padding:.65rem .4rem;font-size:.7rem;gap:.4rem}.shop-item>button .icon{width:.9rem;height:.9rem}.shop-item>button>span{margin-left:auto}.shop-item>small{margin-top:.4rem}.supply-row{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:1.6rem;padding:1.2rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;gap:1rem}.supply-row h3{font-size:.9rem;font-weight:500}.supply-row p{color:var(--muted);font-size:.7rem;margin-top:.35rem}.slot-tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--line);margin-top:1.6rem;align-self:stretch}.slot-tabs>button{border:0;border-bottom:2px solid transparent;color:var(--muted);padding:.65rem 1.4rem;font-size:.8rem}.slot-tabs>button.active{color:var(--text);border-bottom-color:var(--text)}.forge-target{padding:1.4rem 1rem 1rem;width:100%;border-bottom:1px solid var(--line)}.forge-target>h2{font-size:1.35rem;font-weight:500;margin-top:.5rem}.forge-target>h2 span{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;margin-left:.4rem}.forge-target>p{font-size:.72rem;color:var(--muted);margin-top:.5rem}.forge-rule{display:flex;align-items:center;justify-content:center;gap:2.5rem;font-family:Consolas,'Abyss Text','Abyss Text Full',"Microsoft YaHei",monospace;font-size:.7rem;margin:1.2rem 0;color:var(--muted)}.forge-rule b{display:block;font-size:1.2rem;color:var(--text);font-weight:400;margin-top:.3rem}.forge-target>.primary{font-size:.85rem;min-width:18rem}.forge-target>.primary>span{font-size:.68rem;font-weight:400;margin-left:1rem}.forge-target .room-hint{margin:.75rem auto 0;font-size:.65rem}.forge-result{margin:1rem 0 0;font-size:.75rem;color:var(--muted);padding:.65rem 1rem;border:1px solid #554b36;background:#15130f;width:100%}.forge-result>b{color:var(--gold);font-weight:400;margin-left:.8rem}.fusion-section{text-align:left;width:100%;padding-top:1.3rem;display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.fusion-section>div{width:100%}.fusion-section h3{font-size:.85rem;font-weight:500}.fusion-section p{font-size:.66rem;color:var(--muted);margin-top:.4rem}.fusion-section select{font-size:.72rem;flex:1;min-width:10rem}.empty-hint{padding:.5rem 0}.collection-screen{padding:2.5rem 0 1.8rem}.collection-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.collection-heading h1{font-size:2rem;line-height:1.4}.collection-heading p{font-size:.75rem;color:var(--muted);margin-top:.5rem}.collection-heading>span{font-size:.7rem;color:var(--muted);padding-top:.5rem}.inventory-note{font-size:.65rem;color:var(--muted);margin:1rem 0}.inventory-list{max-height:calc(100svh - 32rem);min-height:18rem;overflow:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:.9rem;padding-right:.5rem}.inventory-list .item-card{padding:1rem}.inventory-list .item-card>h3{font-size:1rem}.inventory-list .item-card>p{font-size:.65rem;min-height:2.4rem}.inventory-list .item-bottom{gap:.4rem;font-size:.62rem}.inventory-list .item-meta{font-size:.58rem}.talent-list{display:flex;flex-direction:column;gap:0;margin-top:1.5rem}.talent-item{display:flex;align-items:center;gap:1.2rem;border-top:1px solid var(--line);padding:1.5rem 0}.talent-node{width:3.4rem;height:3.4rem;flex-shrink:0;display:grid;place-items:center;border:1px solid var(--line-bright);transform:rotate(45deg)}.talent-node .icon{transform:rotate(-45deg);width:1.45rem;height:1.45rem}.talent-info{flex:1;min-width:0;padding-left:.3rem}.talent-title{display:flex;align-items:center;justify-content:space-between}.talent-title h2{font-size:1rem;font-weight:500}.talent-title>span{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;color:var(--muted);font-size:.8rem}.talent-info>p{font-size:.68rem;color:var(--muted);margin-top:.5rem}.talent-info>small{font-size:.6rem;color:var(--muted)}.talent-track{display:flex;gap:.35rem;margin:.7rem 0 .4rem}.talent-track>span{width:2rem;height:3px;background:var(--line)}.talent-track>span.filled{background:var(--gold)}.talent-item>.small{font-size:.65rem;padding:.5rem}.growth-road{border-top:1px solid var(--line);padding-top:1.5rem}.growth-road h2{font-size:1.1rem;font-weight:400}.growth-road>div{display:flex;justify-content:space-between;margin-top:1.4rem}.growth-road>div>span{display:flex;flex-direction:column;align-items:center;gap:.6rem;color:var(--subtle)}.growth-road>div>span.unlocked{color:var(--text)}.growth-road b{font-size:.72rem;font-weight:400}.growth-road small{font-size:.6rem;color:var(--muted)}.growth-road .icon{width:2.2rem;height:2.2rem}.gold-hoard{display:flex;flex-direction:column;align-items:center;margin:4rem 0 2rem;color:var(--gold)}.gold-hoard .icon{width:4rem;height:4rem;stroke-width:.65;margin-bottom:1.5rem}.gold-hoard strong{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-size:4.5rem;font-weight:400}.gold-hoard>span{font-size:.8rem;margin-top:.8rem;color:var(--muted)}.recovery-summary{margin:4rem 0 2rem;padding:2rem;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.recovery-summary h2{font-size:1.2rem;font-weight:400}.recovery-summary p{font-size:.8rem;line-height:2;color:var(--muted);margin-top:1rem}.death-screen>.room-symbol{color:var(--red)}.floor-number{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-size:8rem;font-weight:400;color:var(--gold);margin:2.4rem 0 1rem;line-height:1}.floor-number>span{display:block;font-family:"Microsoft YaHei",'Abyss Text','Abyss Text Full',sans-serif;font-size:.75rem;letter-spacing:.2em;margin-top:1.4rem;color:var(--muted)}.milestone-stats{display:flex;gap:1.8rem;margin:1.5rem 0 .5rem;font-size:.75rem;color:var(--muted)}.title-screen{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;min-height:calc(100svh - 11rem);gap:4rem;padding:4rem 8rem}.title-rule{width:4rem;height:1px;background:var(--gold);margin-bottom:2.4rem}.title-copy h1{font-size:3.8rem;line-height:1.5;letter-spacing:.06em}.title-copy h1 span{color:var(--gold)}.title-copy>p{margin-top:2rem;color:var(--muted);font-size:.95rem;line-height:2}.title-buttons{display:flex;align-items:center;gap:1.5rem;margin-top:3rem}.title-primary{min-width:14rem;min-height:3.8rem;font-size:1rem;justify-content:space-between;padding:1rem 1.6rem}.resume-note{color:var(--subtle);font-size:.68rem;margin-top:1.5rem}.resume-note>span{display:block;margin-top:.5rem}.title-art{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center}.title-art .dice-row{width:100%;z-index:1;padding:1.5rem 0}.title-art .die{flex-basis:22rem!important;max-width:23rem!important;transform:rotate(-8deg);color:var(--text)}.title-art .die-face{fill:#111216;stroke:#d1cbc0;stroke-width:.65}.title-art .die-top{fill:#1b1d22;stroke:#818088;stroke-width:.6}.title-art .die-side{fill:#0e0f12;stroke:#818088;stroke-width:.6}.title-art .die text{font-size:69px}.title-art .die-index{display:none}.title-orbit{position:absolute;width:26rem;height:26rem;border:1px solid #25272d;border-radius:50%;top:1rem;left:50%;transform:translateX(-50%)}.title-orbit:before{content:"";position:absolute;inset:2rem;border:1px solid #191b20;border-radius:50%}.title-orbit:after{content:"";position:absolute;width:6px;height:6px;background:var(--gold);top:5rem;right:2.5rem;transform:rotate(45deg)}.art-caption{display:flex;justify-content:space-between;width:80%;font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-size:.65rem;letter-spacing:.15em;color:var(--subtle);border-top:1px solid var(--line);padding-top:1.2rem;margin-top:2rem}.title-footer{display:flex;justify-content:space-between;align-items:center;height:4.4rem;border-top:1px solid var(--line);margin:0 2.3rem;color:var(--subtle);font-size:.65rem;letter-spacing:.06em}.title-footer>span:first-child{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;letter-spacing:.15em}.game-dialog{background:#0e1013;color:var(--text);border:1px solid var(--line-bright);padding:2rem;width:36rem;max-width:calc(100vw - 4rem);max-height:88svh;overflow:auto;box-shadow:0 1.5rem 5rem #0009}.game-dialog::backdrop{background:#000c}.dialog-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:1rem}.dialog-heading h2{font-family:'Abyss Text','Abyss Text Full',SimSun,serif;font-size:1.45rem;line-height:1.6;letter-spacing:.04em}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.25rem 0;border-bottom:1px solid var(--line)}.setting-row b{font-weight:500;font-size:.9rem}.setting-row p{font-size:.7rem;color:var(--muted);margin-top:.4rem}.setting-row select{font-size:.75rem;min-width:6.5rem}.switch{padding:3px;width:2.7rem;height:1.4rem;border-radius:2rem;background:#26282e;justify-content:flex-start}.switch>span{width:.9rem;height:.9rem;background:var(--muted);border-radius:50%}.switch[aria-checked=true]{background:var(--gold);border-color:var(--gold);justify-content:flex-end}.switch[aria-checked=true]>span{background:var(--bg)}.save-management{margin:1.5rem 0}.save-management h3{font-size:.9rem;font-weight:500}.save-management p{font-size:.7rem;color:var(--muted);margin:.5rem 0 1rem}.save-management>div{display:flex;gap:.6rem}.save-management button{font-size:.75rem;padding:.6rem .8rem}.danger-zone{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:1rem;font-size:.68rem;color:var(--muted)}.danger-zone button.danger{color:var(--red);font-size:.75rem}.confirmation-copy{font-size:.85rem;color:var(--muted);line-height:1.8;margin:1.5rem 0 2rem}.confirmation-copy p+p{margin-top:1rem}.dialog-buttons{display:flex;justify-content:flex-end;gap:.75rem}.fusion-preview>strong{color:var(--text);font-size:1.1rem;font-weight:500;display:block;margin:.4rem 0 1.2rem}.fusion-preview>p{font-size:.8rem}.error-note{color:var(--red)!important;font-size:.75rem!important}.toast{position:fixed;z-index:100;bottom:10rem;left:50%;transform:translate(-50%,.8rem);opacity:0;pointer-events:none;background:#e6e1d7;color:#16171b;border:1px solid #fff;padding:.85rem 1.3rem;font-size:.78rem;max-width:34rem;text-align:center;line-height:1.7;box-shadow:0 .5rem 2rem #0008;transition:opacity .2s,transform .2s}.toast.visible{transform:translate(-50%,0);opacity:1}.small-window-note{display:none}.reward-reveal .loot-reveal{animation:reveal .45s ease-out}.legendary-reveal .loot-screen:before{content:"";position:absolute;inset:2% 6% 38%;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 50% 48%,#ffe8a62b,transparent 70%),linear-gradient(90deg,transparent,#f3b94b0c,transparent);animation:gold-burst .55s ease-out both}.legendary-reveal .loot-reveal{animation:legendary-arrival .55s ease-out}.forge-reveal .forge-target,.fusion-reveal .forge-target{animation:forge-pulse .5s ease-out}.fusion-reveal .forge-result{color:var(--purple)}@keyframes roll-die{0%{transform:translateY(0) rotate(-7deg) rotateY(-15deg)}100%{transform:translateY(-.7rem) rotate(9deg) rotateY(25deg)}}@keyframes roll-face{0%{opacity:.25;transform:translateY(-1px)}100%{opacity:.75;transform:translateY(1px)}}@keyframes reveal{from{opacity:.4;transform:translateY(.7rem)}to{opacity:1;transform:translateY(0)}}@keyframes legendary-arrival{0%{opacity:0;transform:translateY(1rem)}100%{opacity:1;transform:none}}@keyframes gold-burst{0%,100%{opacity:0}45%{opacity:1}}@keyframes forge-pulse{0%,100%{background:transparent}40%{background:#dfbd771c}}
@media(max-width:1550px){.game-layout{grid-template-columns:15rem minmax(0,1fr) 16rem;gap:1.5rem}.center-panel{padding:0 1.8rem}.game-footer{gap:1.5rem}.player-health{width:13rem}.player-gold{min-width:6rem}.primary-control{min-width:13rem}.main-nav>button{min-width:3.5rem;padding:.6rem}.mini-dice{gap:.35rem}.mini-dice>span{width:2.2rem;height:2.2rem}.shop-grid{gap:.5rem}.shop-item{padding:1rem .7rem}.title-screen{padding:4rem 6rem;gap:2rem}.brand>small{display:none}.combat-stage{padding-top:2rem;min-height:24rem}.stage-line{top:13rem}.inventory-list{grid-template-columns:1fr}.inventory-list .item-card>p{min-height:0}}
@media(max-height:850px) and (min-width:1100px){.topbar{height:5.2rem}.game-layout{min-height:calc(100svh - 14.2rem)}.game-footer{min-height:7rem}.left-rail,.right-rail{padding-top:1.5rem;padding-bottom:1.2rem}.route-list{margin-top:1.1rem}.route-list li{height:3rem}.route-list li:not(:last-child):after{height:.55rem}.log-panel{margin-top:1.3rem}.log-panel li:nth-child(n+4){display:none}.combat-screen{padding-top:1.6rem}.combat-screen h1{margin-top:.8rem;font-size:2rem}.enemy-health{margin-top:1.1rem}.combat-stage{padding-top:1.5rem;min-height:23rem}.damage-result{height:8.5rem;margin-top:.3rem}.room-screen{padding-top:1.6rem}.fate-screen .dice-row{margin-top:1rem}.chest-art{width:17rem;margin-top:1rem}.loot-screen{padding-top:2.8rem}.equipment-list{margin-top:1.2rem}.equipped-item{padding:.9rem}.character-stats{margin-top:1.5rem;padding-top:1rem}.dice-growth{margin-top:1.4rem;padding-top:1rem}.collection-screen{padding-top:1.6rem}.talent-item{padding:1.15rem 0}.title-screen{min-height:calc(100svh - 9.6rem);padding-top:2rem;padding-bottom:2rem}}
@media(max-width:1100px){body{min-width:720px}.game-layout{grid-template-columns:12rem minmax(0,1fr);gap:1rem;margin:0 1.5rem}.right-rail{display:none}.center-panel{border-right:0;padding:0 1.5rem}.topbar{margin:0 1.5rem}.brand-sub{display:none}.game-footer{margin:0 1.5rem;gap:1rem;flex-wrap:wrap;padding:1.3rem 0 2rem}.player-level{width:6rem}.player-health{width:11rem}.player-gold{min-width:5rem}.primary-control{min-width:11rem}.main-nav{margin-left:0}.location{font-size:.72rem;gap:.6rem}.small-window-note{display:block;padding:.7rem 1.5rem;color:var(--muted);font-size:12px;background:#131519;text-align:center}.title-screen{padding:4rem 3rem;gap:1rem}.title-copy h1{font-size:2.8rem}.title-art .die{flex-basis:17rem!important;max-width:17rem!important}.title-orbit{width:20rem;height:20rem}.title-top-note{display:none}.title-footer>span:nth-child(2){display:none}.title-buttons{gap:.5rem}.title-primary{min-width:11rem}.shop-grid{grid-template-columns:1fr}.shop-item>h3,.shop-item>p{min-height:0}.shop-item>button{width:auto}.shop-item{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}.inventory-list{max-height:60svh}.bottomline>span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}html[data-effects=low] *,html[data-effects=low] *:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.05s!important}html[data-effects=low] .die{filter:none}
/* Keep the action rail inside the desktop viewport; side collections scroll independently. */
.game-layout{height:calc(100svh - 17.1rem);min-height:0}
.left-rail,.right-rail{overflow-y:auto;padding-top:1.8rem;padding-bottom:1.4rem}
.center-panel{overflow-y:auto}
.equipment-list{margin-top:1.4rem;gap:.7rem}
.equipped-item{padding:1rem}
.equipped-item h3{margin:.6rem 0 .5rem}
.character-stats{margin-top:1.5rem;padding-top:1.1rem}
.character-stats dl{gap:1rem;margin-top:1rem}
.dice-growth{margin-top:1.5rem;padding-top:1.1rem}
.log-panel{margin-top:1.4rem}
.route-list{margin-top:1.3rem}
.dice-row:has(.die:only-child) .die{width:11rem;flex-basis:11rem;max-width:12rem}
@media(max-height:850px) and (min-width:1100px){.game-layout{height:calc(100svh - 14.4rem)}.left-rail,.right-rail{padding-top:1.3rem;padding-bottom:1rem}.equipped-item{padding:.8rem}.equipped-item h3{margin:.5rem 0 .4rem}.character-stats{margin-top:1.2rem;padding-top:1rem}.dice-growth{margin-top:1.2rem;padding-top:1rem}.character-stats dl{gap:.8rem}.dice-row:has(.die:only-child) .die{width:9rem;flex-basis:9rem}}
@media(max-width:1100px){.game-layout{height:auto;min-height:40rem}.left-rail,.right-rail{overflow:visible}}
.sr-only{top:0;left:0}
.dialog-notice{color:var(--gold);border-top:1px solid var(--line);padding-top:1rem;margin-top:1rem;font-size:.75rem;line-height:1.8}
