/* The four supplied concepts are the composition target. All art is live geometry. */
:root{--bg:#030405;--surface:#080a0c;--text:#edeff0;--muted:#a4a7aa;--subtle:#777e83;--line:#454a4c;--line-bright:#939899;--red:#ff354b;--blue:#31baff;--purple:#d05bff;--gold:#ffc34b;--cyan:#36e5f4;--green:#70e7bd;font-size:calc(clamp(11px,min(.92vw,1.72vh),36px) * var(--user-scale));font-family:Consolas,'Abyss Text','Abyss Text Full',"Microsoft YaHei",monospace}
body{background:#030405;min-width:900px}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(ellipse at 50% 45%,#12202c28,transparent 56%),repeating-linear-gradient(0deg,transparent 0 3px,#8eb4cb05 3px 4px)}
h1,h2,h3,.brand{font-family:'Abyss Text','Abyss Text Full',SimSun,"Noto Serif CJK SC",serif}button{border-radius:0;letter-spacing:.04em}button:hover:not(:disabled){background:#142027;border-color:var(--cyan);color:#fff}button:disabled{opacity:.45}button:focus-visible{outline-color:var(--cyan);outline-offset:3px}.icon{stroke-width:1.65}
.game-shell{height:100svh;display:grid;grid-template-rows:4.9rem minmax(0,1fr) 1.7rem;padding:0 .85rem;overflow:hidden}.topbar{height:auto;min-height:0;margin:0;gap:1rem;border:0}.brand{display:flex;flex-direction:column;gap:.15rem;align-items:flex-start;flex-shrink:0}.brand>span{font-size:2.15rem;letter-spacing:.08em;line-height:1.25}.brand .brand-sub{display:inline;font-size:inherit;margin:0;font-family:inherit;font-weight:inherit;letter-spacing:inherit}.brand>small{display:block;border:0;margin:0;padding:0 2.1rem;color:#d0d3d6;font-size:.67rem;letter-spacing:.24em}.header-motto{font-family:'Abyss Text','Abyss Text Full',SimSun,serif;font-size:.8rem;line-height:1.65;letter-spacing:.16em;color:var(--muted);margin-right:auto}.location{font-size:.85rem;gap:.6rem;margin-right:auto}.location b{font-size:1.25rem}.header-actions{align-self:flex-start;padding-top:.45rem}.header-actions button{font-size:.8rem}.header-actions .icon{width:1rem;height:1rem}
.game-layout{height:auto;min-height:0;margin:0;display:grid;grid-template-columns:minmax(0,23.5fr) minmax(0,50fr) minmax(0,23fr);grid-template-rows:minmax(0,1fr) 10rem;column-gap:.8rem;row-gap:.6rem}.left-rail{grid-column:1;grid-row:1/3}.right-rail{grid-column:3;grid-row:1/3}.center-panel{grid-column:2;grid-row:1;padding:.9rem .95rem;overflow:hidden;min-height:0}.game-footer{grid-column:2;grid-row:2}.left-rail,.right-rail{padding:0;overflow:visible;min-height:0;min-width:0}.left-rail{display:grid;grid-template-rows:minmax(0,1.13fr) minmax(0,1fr) 2.8rem;gap:.55rem}.right-rail{display:flex;flex-direction:column;padding:.65rem .7rem .8rem}
.frame{position:relative;border:1px solid #858b8d;box-shadow:inset 0 0 0 3px #030405,inset 0 0 0 4px #373e42;background:linear-gradient(125deg,#b1c0c505,transparent 15%,transparent 85%,#b1c0c508)}.frame:before,.frame:after{content:"";position:absolute;width:.55rem;height:.55rem;border:1px solid #b2b9bc;pointer-events:none;z-index:3;transform:rotate(45deg);background:#06090b}.frame:before{top:-.2rem;left:-.2rem}.frame:after{bottom:-.2rem;right:-.2rem}.section-label{padding:.38rem .35rem .48rem;border-bottom:1px solid #767b7c;box-shadow:0 3px 0 #353b3d;font-size:1.05rem;letter-spacing:.11em;font-family:'Abyss Text','Abyss Text Full',SimSun,serif;font-weight:bold;white-space:nowrap}.section-label>span{font-size:.7rem;color:#91999f;font-weight:400;letter-spacing:.14em}.route-panel{padding:.5rem .7rem;min-height:0}.route-panel>h2{font-size:1.3rem;letter-spacing:.06em;margin-top:1rem}.route-panel>h2 b{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-size:1.65rem;font-weight:400}.rail-quote{font-family:'Abyss Text','Abyss Text Full',SimSun,serif;font-size:.88rem!important;letter-spacing:.08em;color:#bbbfc2;margin:.65rem 0!important;line-height:1.65}.route-list{display:flex;justify-content:space-between;margin:1.3rem 0 1.15rem;position:relative}.route-list:before{content:"";position:absolute;left:2%;right:2%;top:1.15rem;border-top:1px solid #8d9094;transform:rotate(-2deg)}.route-list li{display:flex;flex-direction:column;gap:.35rem;height:auto;width:16%;font-size:.65rem;text-align:center}.route-list li:not(:last-child):after{display:none}.route-node{width:2.1rem;height:2.1rem;background:#06080a;border-color:#7b8284;z-index:1}.route-node .icon{width:1.15rem;height:1.15rem}.route-list em{margin:0;font-size:.8rem}.route-list .current{color:var(--red)}.route-list .current .route-node{color:var(--red);border-color:var(--red);box-shadow:0 0 1rem #ff163b45;transform:rotate(45deg)}.route-list .current .route-node svg{transform:rotate(-45deg)}.route-list .current em{color:var(--red)}.route-list .done .route-node{color:#afb6bb;border-color:#697277}.sub-label{font-size:.9rem;padding:.35rem 0;box-shadow:none;border-color:#444a4c}.exploration-stats{margin:.6rem 0;font-size:.83rem;display:grid;gap:.35rem}.exploration-stats>div{display:flex;justify-content:space-between;gap:1rem}.exploration-stats dt:before{content:"· ";color:#d9dde0}.exploration-stats dd{margin:0;font-family:Consolas,'Abyss Text','Abyss Text Full',monospace}.fate-summary{display:block;border-top:1px dotted #4b5052;margin:.55rem 0 0;padding:.45rem 0 0;font-size:.72rem;color:#a5b8c1}.log-panel{margin:0;padding:.5rem .7rem;min-height:0}.log-panel ol{margin:.8rem 0 0;gap:.5rem}.log-panel li{padding:0;font-size:.84rem;line-height:1.7}.log-panel li:before{display:none}.log-panel li:nth-child(n){display:list-item}.log-index{color:#6d787f;font-family:Consolas,'Abyss Text','Abyss Text Full',monospace}.rail-foot{margin:0;padding:.3rem .75rem;font-size:.72rem;letter-spacing:.1em;line-height:1.5}.rail-foot small{display:block;font-size:.5rem;letter-spacing:.2em}
.equipment-list{margin:.7rem 0 0;gap:.5rem;flex:1;min-height:0;display:grid;grid-template-rows:repeat(3,minmax(0,1fr))}.equipped-item{padding:.65rem .8rem;border:1px solid currentColor;position:relative;background:repeating-linear-gradient(130deg,#ffffff04 0 1px,transparent 1px 5px),linear-gradient(135deg,#ffffff05,transparent 45%);min-height:0;box-shadow:inset 0 0 0 3px #030405, inset 0 0 0 4px #ffffff12}.equipped-item:before{content:"";position:absolute;top:.3rem;left:.25rem;bottom:.3rem;border-left:2px solid currentColor;opacity:.6}.equipped-item.rare,.equipped-item.epic,.equipped-item.legendary{border-color:currentColor}.item-meta{font-size:.72rem}.rarity{font-size:.82rem;font-weight:600}.equipped-item h3{font-family:Consolas,'Abyss Text','Abyss Text Full',"Microsoft YaHei",sans-serif;font-size:1.13rem;font-weight:600;margin:.45rem 0 .5rem;line-height:1.4}.equipped-item h3 small{float:right;font-size:.83rem}.equipped-item p{color:#d3d5d9;font-size:.81rem;line-height:1.65}.equipped-item p>span{display:block}.equipment-depth{display:flex;justify-content:space-between;color:var(--muted);font-size:.67rem;margin-top:.5rem;border-top:1px dotted #ffffff2a;padding-top:.4rem}.character-stats{margin:.7rem 0 0;padding:0;border:0}.character-stats dl{margin:.6rem .35rem;gap:.45rem 1rem}.character-stats dl>div{display:flex;align-items:baseline;justify-content:space-between}.character-stats dt{font-size:.78rem}.character-stats dd{font-size:1.15rem;margin:0}.dice-growth{margin:.3rem 0 0;padding:0;border:0}.mini-dice{margin:.7rem .25rem .3rem;gap:.45rem;justify-content:space-between}.mini-dice>span{width:2.6rem;height:2.3rem}.mini-dice>span.unlocked{color:var(--cyan);border-color:#3296a0;box-shadow:inset 0 0 .7rem #00d9ff14}.dice-growth p{margin:.5rem .25rem 0;font-size:.7rem}
.combat-screen{padding:0;position:relative;height:100%;display:flex;flex-direction:column;z-index:1}.enemy-heading{font-size:.85rem;line-height:1.7}.enemy-type{font-size:.85rem;letter-spacing:.12em}.enemy-type .icon{width:1.5rem;height:1.5rem}.enemy-round{font-size:.77rem}.combat-screen h1{font-size:2.15rem;letter-spacing:.17em;margin:-1.4rem 5.5rem .3rem;line-height:1.35;text-shadow:0 0 .7rem #ffffff24}.enemy-note{font-family:'Abyss Text','Abyss Text Full',SimSun,serif;font-size:.8rem;letter-spacing:.1em;color:#b9b9bb}.boss-screen .enemy-note{color:var(--red)}.enemy-health{width:100%;max-width:none;margin:1.1rem 0 .6rem}.health-track{height:2rem;border:1px solid #bac1c5;padding:3px;background:#1d0a10;position:relative;box-shadow:0 0 0 2px #07090c,0 0 0 3px #424b51}.health-track>span{background:linear-gradient(#ff5a6b 0 15%,#fa233e 18% 70%,#bd112b 73%);box-shadow:0 0 .8rem #ff254c45}.health-label{position:absolute;inset:0;margin:0;align-items:center;padding:0 .5rem;z-index:1;font-size:.75rem;color:#fff;text-shadow:1px 2px #000}.health-label b{font-size:1.13rem;color:white;font-weight:bold}.shield-line{position:relative;display:flex;justify-content:space-between;height:1.5rem;border:1px solid #747284;margin-top:.55rem;color:#e3ceff;overflow:hidden;font-size:.77rem;padding:0 .4rem}.shield-line>span:not(.shield-fill){display:flex;gap:.4rem;align-items:center;z-index:1}.shield-line b{z-index:1;font-weight:400}.shield-fill{position:absolute;inset:2px auto 2px 2px;background:repeating-linear-gradient(90deg,#a544f9 0 .8rem,#481676 .8rem .9rem);opacity:.7;transition:width .4s}.enemy-trait{max-width:none;margin:.35rem 0 0;font-size:.78rem;gap:.6rem;align-items:center}.trait-tag,.enemy-warning{display:flex;gap:.4rem;align-items:center;border:1px solid #777e83;padding:.4rem .6rem;line-height:1.3;color:#d6dbe0}.enemy-warning{border-color:#b82035;color:#ff5161;background:linear-gradient(130deg,#500d1e40,transparent);box-shadow:inset 0 0 1rem #ff203514}.trait-tag .icon,.enemy-warning .icon{width:1rem;height:1rem}.combat-stage{padding-top:1.1rem;min-height:0;flex:1;display:flex;flex-direction:column;justify-content:center}.stage-line{left:4%;right:4%;top:49%;border-color:#37414b66}.roll-caption{font-family:'Abyss Text','Abyss Text Full',SimSun,serif;font-size:1.05rem;letter-spacing:.15em;color:#ecedf2;height:auto;margin-bottom:1.15rem;z-index:1}.dice-row{gap:0;min-height:0;width:100%;isolation:isolate}.die{color:#c2dcf2;flex:0 1 10.3rem;width:10.3rem;max-width:12.8rem;transform:rotate(calc((var(--i) - 2) * 2deg));filter:drop-shadow(0 0 .25rem #98cfff66);transition:filter .2s}.dice-row:has(.die:only-child) .die{flex-basis:14rem;width:14rem;max-width:15rem}.dice-row.large .die{flex-basis:13rem;width:13rem;max-width:15rem}.die svg{overflow:visible;filter:drop-shadow(0 0 .15rem currentColor)}.die-face{fill:#070b10;stroke:currentColor;stroke-width:2.4}.die-inner{fill:#0c1420;stroke:currentColor;stroke-width:.7;opacity:.8}.die-side{fill:#101a26;stroke:currentColor;stroke-width:1.7}.die-bottom{fill:#152331;stroke:currentColor;stroke-width:1.7}.die-pips{fill:currentColor}.die-etch{stroke:currentColor;opacity:.7;stroke-width:1;fill:none}.die text{font-family:Consolas,'Abyss Text','Abyss Text Full',"Courier New",monospace;font-size:83px;font-weight:700;fill:currentColor;paint-order:stroke;stroke:currentColor;stroke-width:.5}.die-arc{fill:none;stroke:currentColor;stroke-width:1.1;opacity:0;stroke-dasharray:12 3 6 5}.die-index{margin:.35rem 0 0;font-size:.52rem;color:#8b929a}.die.resonant{color:#ffbe38;filter:drop-shadow(0 0 .55rem #ff8c1aaa)}.die.resonant .die-face{fill:#160d03;stroke:currentColor}.die.resonant .die-inner{fill:#1b1105}.die.resonant .die-bottom{fill:#5c2d06}.die.resonant .die-side{fill:#331800;stroke:currentColor}.die.charged{color:#36bfff;filter:drop-shadow(0 0 .6rem #0066ffaa)}.die.critical-die{color:#ff4850;filter:drop-shadow(0 0 .6rem #ff243380)}.die.resonant .die-arc,.die.charged .die-arc,.die.critical-die .die-arc{opacity:.85}.major-resonance .die.resonant{filter:drop-shadow(0 0 .8rem #ff9710aa)}.rolling .die{animation:toss .65s cubic-bezier(.2,.6,.35,1) both;animation-delay:calc(var(--i) * .035s)}.rolling .die text{animation:none}.rolling .die-arc{opacity:.75}.damage-result{height:auto;min-height:8rem;margin:1.1rem 0 0;gap:.25rem;justify-content:center;flex:1}.trigger-line{height:auto;min-height:1.8rem;margin:0 0 .4rem;gap:.45rem;justify-content:center;flex-wrap:wrap;font-size:1rem;font-family:'Abyss Text','Abyss Text Full',SimSun,serif;font-weight:700}.trigger-line>span{border:1px solid currentColor;padding:.24rem .65rem;box-shadow:inset 0 0 0 2px #030405,inset 0 0 0 3px #ffffff30,0 0 .5rem #ffac0020;white-space:nowrap}.trigger-line .neutral-tag{font-size:.8rem;color:#cad6df;border-color:#435767}.critical-tag,.kill-tag{color:#ff4c55}.follow-tag{color:#38c6ff}.damage-number{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:40%}.damage-number>strong{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-size:6.4rem;font-weight:700;font-style:italic;line-height:1.02;letter-spacing:-.065em;color:#dfeaf4;text-shadow:0 0 .6rem #c4e7ff36}.emphatic .damage-number>strong{color:#fff1aa;text-shadow:0 0 .2rem #ffffbd,0 0 .6rem #ffbf00,0 .12rem 1.3rem #ff5b00,2px 3px 0 #a82900}.crit-stamp{position:absolute;left:calc(100% + .8rem);top:18%;font-size:1.9rem;font-family:'Abyss Text','Abyss Text Full',SimSun,serif;white-space:nowrap;color:#ff3444;transform:rotate(-15deg);text-shadow:0 0 1rem #ff163b70;border-bottom:3px solid currentColor}.damage-label{font-size:.7rem;margin:.15rem 0;color:#d3d6d8}.damage-result p{font-size:.75rem;margin:.2rem 0;color:#a6aeb5}.waiting-line{width:6rem;background:#45525b}.scene-fx{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}.center-panel>section{position:relative;z-index:1}
.game-footer{margin:0;min-height:0;border:0;display:grid;grid-template-rows:4.8rem 4.6rem;gap:.6rem;padding:0}.status-strip{display:grid;grid-template-columns:1.1fr 1.3fr 1fr;gap:0;padding:.4rem .6rem;min-height:0}.player-level{width:auto;display:grid;grid-template-columns:auto 1fr;gap:.05rem .6rem;align-items:center;padding-right:.6rem}.player-level>b{font-size:1.75rem;grid-column:1;grid-row:1}.player-level>b>small{font-size:1.1rem;color:#e9edf1;margin:0}.player-level>span{font-family:'Abyss Text','Abyss Text Full',SimSun,serif;color:white;font-size:.85rem;grid-column:2;grid-row:1}.xp-track{grid-column:1/3;height:.42rem;margin:0;border:1px solid #68cad5;background:#0e252d}.xp-track>span{background:#39e4f6;box-shadow:0 0 .6rem #20dfff}.player-level>small{grid-column:1/3;text-align:right;font-size:.58rem;color:#bdc7cd}.player-health{width:auto;min-width:0;border-left:1px solid #4a5055;border-right:1px solid #4a5055;padding:.2rem .7rem}.player-health>div:first-child{gap:.3rem;font-size:.72rem}.player-health b{font-size:.84rem;white-space:nowrap}.player-health-track{margin:.3rem 0;height:.38rem}.player-health-track>span{background:linear-gradient(90deg,#ff274c,#ff6271)}.player-health p{font-size:.69rem;color:var(--blue);display:flex;align-items:center;gap:.35rem}.player-health p .icon{color:var(--blue);width:.95rem;height:.95rem}.player-gold{position:relative;min-width:0;padding:.2rem .6rem;gap:.4rem;flex-wrap:wrap;align-content:center}.player-gold>span{display:flex;align-items:center;gap:.5rem;font-size:.68rem}.player-gold strong{font-size:1.08rem;margin:0}.player-gold>small{width:100%;font-size:.63rem;color:#c5c9cd}.player-gold>.icon{width:1rem;height:1rem}.control-strip{display:grid;grid-template-columns:1fr 1.12fr 1fr;gap:.7rem;align-items:stretch}.main-nav{margin:0;gap:.55rem;display:grid;grid-template-columns:1fr 1fr}.main-nav>button{border:1px solid #979da0;padding:.35rem;min-width:0;gap:.25rem;font-size:.78rem;color:#e0e4e6;background:linear-gradient(135deg,#ffffff08,transparent)}.main-nav>button .icon{width:1.5rem;height:1.5rem}.main-nav>button.selected:after{bottom:0;width:80%;background:var(--cyan);height:1px}.main-nav i{right:.35rem;font-size:.65rem;top:.2rem}.primary-control{min-width:0;margin:0;position:relative;padding:0 0 .5rem}.primary-control>.primary{height:100%;min-height:0;gap:.6rem;font-size:1.65rem;font-family:'Abyss Text','Abyss Text Full',SimSun,serif;font-weight:bold;letter-spacing:.12em;border:2px solid #35e8ff;color:#69f2ff;background:repeating-linear-gradient(0deg,#0ae0ff0b 0 1px,transparent 1px 3px),linear-gradient(110deg,#06252d,#031215 45%,#0a3742);box-shadow:inset 0 0 0 3px #05151b,inset 0 0 0 4px #3cd9ed,0 0 .7rem #12cce247;clip-path:polygon(7% 0,93% 0,100% 18%,100% 82%,93% 100%,7% 100%,0 82%,0 18%)}.primary-control>.primary:before{content:"»"}.primary-control>.primary:after{content:"«"}.primary-control .icon{width:1.85rem;height:1.85rem}.primary-control>small{top:auto;bottom:.02rem;left:18%;right:18%;background:#030405;color:var(--cyan);font-size:.65rem;letter-spacing:.12em;white-space:nowrap}.primary-control>.primary:hover:not(:disabled){background:#093d48;color:#c1ffff;filter:brightness(1.2)}.manual-control{display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:.35rem}.manual-control button{padding:.55rem .3rem;color:var(--cyan);font-size:.9rem;gap:.4rem}.manual-control small{text-align:center;font-size:.57rem;color:#969fa7}.bottomline{margin:0;height:auto;font-size:.51rem;letter-spacing:.13em;border-color:#434b4e}.bottomline span:last-child{display:block}
.room-screen{min-height:0;height:100%;padding:1rem .25rem .5rem;justify-content:flex-start}.room-screen>h1{font-size:2.3rem;margin:.5rem 0 .1rem}.room-screen>p{font-size:.85rem;margin:.35rem 0;color:#adb5bd}.room-screen .room-hint{font-size:.72rem;margin-top:auto;padding-top:.6rem}.room-symbol .icon{width:1.8rem;height:1.8rem;color:#a9d1e0}.fate-screen{justify-content:center}.fate-screen .dice-row{margin:2.5rem 0 1.2rem}.fate-verdict{margin:.7rem 0}.route-preview{margin:1.2rem 0}.fate-screen .room-hint{margin-top:1.3rem}.victory-mark{margin:0;font-size:.77rem;letter-spacing:.2em;color:#d7dce0}.chest-screen>h1,.loot-screen>h1{font-family:'Abyss Text','Abyss Text Full',SimSun,serif;font-weight:900;font-size:5.4rem;letter-spacing:.23em;padding-left:.23em;margin:.05rem 0;line-height:1.15;color:#fff6cf;text-shadow:0 0 .3rem #ffec9c,0 0 1.5rem #ffb31980}.chest-screen>p,.loot-screen>p{letter-spacing:.12em;font-family:'Abyss Text','Abyss Text Full',SimSun,serif;color:#cfd3d7}.chest-art{width:80%;max-width:36rem;position:relative;margin:2.4rem 0 .7rem;isolation:isolate;color:#c8d6e0}.chest-art svg{stroke:currentColor;stroke-width:1.1;filter:drop-shadow(0 0 .3rem #c3e9ff60)}.chest-art.grand{color:#ffe3a0}.chest-lid{transform-origin:300px 126px;transform:translateY(22px) scaleY(.58);transition:transform .6s}.chest-art.opened .chest-lid,.opening .chest-lid{transform:translateY(-8px) scaleY(1)}.chest-art .chest-beams{stroke:#ffca5b;stroke-width:1.6;stroke-dasharray:none;opacity:.2}.chest-art.opened .chest-beams,.opening .chest-beams{opacity:.85;stroke:#ffe5a3;stroke-linecap:round}.chest-body{fill:#04070cd9}.treasure-light{position:absolute;inset:-35% 12% 0;z-index:-1;opacity:.3;background:conic-gradient(from 160deg at 50% 100%,transparent 0 160deg,#ffb52c22 164deg,transparent 170deg,#fff1a488 179deg,transparent 184deg,#ffd05d33 194deg,transparent 200deg),radial-gradient(ellipse at 50% 85%,#ffb31966,transparent 65%);filter:none}.opened .treasure-light,.opening .treasure-light{opacity:1}.chest-caption{border-top:1px solid #7d693d;border-bottom:1px solid #554c39;padding:1rem 3rem;position:relative}.chest-caption>span{font-size:.67rem;color:#b8a57c;letter-spacing:.3em}.chest-caption>h2{font-size:1.75rem;color:var(--gold);margin:.4rem 0}.chest-caption>p{font-size:.8rem;color:#acb4bd}.reward-theatre{position:relative;width:100%;height:12.5rem;flex-shrink:0;display:flex;justify-content:center;align-items:flex-end}.reward-theatre .chest-art{width:78%;margin:0;position:absolute;bottom:-1rem}.treasure-title{position:relative;z-index:2;text-align:center;align-self:center;margin-top:1.6rem;text-shadow:0 0 .4rem #ffb300,0 0 2rem #ff9f00;color:#fff7dc}.treasure-title h2{font-size:2.7rem;font-family:'Abyss Text','Abyss Text Full',SimSun,serif;font-weight:900;letter-spacing:.12em}.treasure-title>span{font-size:.62rem;letter-spacing:.12em}.drop-banner{position:absolute;right:.4rem;top:4rem;border:1px solid currentColor;padding:.6rem .7rem;background:#080a0dde;box-shadow:inset 0 0 0 3px #070809,inset 0 0 0 4px #ffffff25;font-size:.95rem}.drop-banner small{display:block;font-size:.5rem;letter-spacing:.14em;margin-top:.35rem}.drop-banner .rarity{font-size:1rem;margin-right:.3rem}.loot-reveal{width:92%;margin:0;display:grid;grid-template-columns:1.65fr 1fr;gap:1rem;position:relative;z-index:2;flex:1;min-height:0}.loot-reveal .item-card{padding:1rem 1.2rem;display:flex;flex-direction:column;border:2px solid currentColor;background:repeating-linear-gradient(125deg,#ffffff05 0 1px,transparent 1px 5px),#040609;box-shadow:inset 0 0 0 4px #030405,inset 0 0 0 5px #ffffff40,0 0 1.2rem #ffffff0f;min-height:0}.loot-reveal .item-card.legendary{box-shadow:inset 0 0 0 4px #100b02,inset 0 0 0 5px #ffbb4a80,0 0 1rem #ffb62770}.loot-reveal .item-card.epic{box-shadow:inset 0 0 0 4px #0d0412,inset 0 0 0 5px #db63ff80,0 0 1rem #b126ff50}.loot-reveal .item-card.rare{box-shadow:inset 0 0 0 4px #040a13,inset 0 0 0 5px #48c2ff80,0 0 1rem #269fff50}.loot-reveal .item-card>h3{font-size:1.65rem;margin:.8rem 0 .5rem}.loot-reveal .item-card>p{font-size:.9rem;color:#e1e3e5;line-height:2;border-top:1px solid #ffffff35;padding-top:.65rem}.loot-reveal .item-bottom{margin-top:auto;font-size:.78rem}.gold-reward{padding:1rem .8rem;display:flex;flex-direction:column;gap:.35rem;justify-content:center;color:#d5e8f5;border-color:#c9dfeb;background:#050a0d}.gold-reward>.icon{width:3rem;height:3rem;color:#b2eaff;filter:drop-shadow(0 0 .6rem #27b9ff80)}.gold-reward>span{font-size:1.1rem}.gold-reward>strong{margin:0;color:#c3f2ff;font-size:2rem;text-shadow:0 0 .5rem #31baff80}.gold-reward>p{border-top:1px solid #52616c;padding-top:.6rem;margin-top:.3rem;font-size:.74rem;color:#a9bac5}.gold-reward>small{font-size:.65rem;color:#91a6b3}.loot-screen.common>h1{color:#e6edf4;text-shadow:0 0 1rem #75b8dc55}.loot-screen.common .treasure-title{color:#dbf0ff;text-shadow:0 0 .6rem #62a0c1}.reward-reveal .loot-reveal,.legendary-reveal .loot-reveal{animation:reward-rise .6s both}
.collection-screen{height:100%;min-height:0;padding:.5rem .25rem;display:flex;flex-direction:column}.collection-heading{padding:.2rem .3rem .75rem;margin:0;border-bottom:1px solid #6b777e;display:flex;align-items:center;justify-content:space-between}.collection-heading h1{font-size:1.5rem}.collection-heading h1 small{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-size:.63rem;color:#9aabb8;letter-spacing:.12em}.collection-heading p{font-size:.75rem;margin-top:.3rem}.collection-heading>span{font-size:.8rem}.collection-heading>span b{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-size:1.5rem;color:var(--red)}.destiny-web{position:relative;flex:1;min-height:24rem;margin:.4rem 0;background:radial-gradient(circle at 50% 53%,#7bdaff09 0 10%,transparent 10.3%),radial-gradient(#a6c6e029 .7px,transparent 1px);background-size:auto,1.9rem 1.9rem}.web-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.web-orbits{fill:none;stroke:#94a8bc3b;stroke-width:.8;stroke-dasharray:4 5}.web-lines>path{fill:none;stroke-width:2;filter:drop-shadow(0 0 5px currentColor)}.branch-high{--branch:#ff4658;color:var(--red)}.branch-resonance{--branch:#ffc046;color:var(--gold)}.branch-critical{--branch:#39beff;color:var(--blue)}.web-lines .branch-high{stroke:var(--red)}.web-lines .branch-resonance{stroke:var(--gold)}.web-lines .branch-critical{stroke:var(--blue)}.web-core{position:absolute;left:50%;top:54%;width:7.2rem;height:7.2rem;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.3rem;background:#07111a;border:1px solid #dfedff;outline:1px solid #7192a0;outline-offset:6px;box-shadow:0 0 0 10px #0d202c,0 0 2rem #2bb7ff40;clip-path:polygon(50% -15%,115% 50%,50% 115%,-15% 50%)}.web-core:before{content:"";position:absolute;inset:-.3rem;border:1px solid #b5d8f0;transform:rotate(45deg)}.web-core>.icon,.web-core>span .icon{color:#d7f4ff}.web-core b{font-family:'Abyss Text','Abyss Text Full',SimSun,serif;font-size:1.1rem}.web-core small{font-size:.7rem;color:#44dbff}.talent-branch{position:absolute;width:39%;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.3rem}.talent-branch.branch-high{top:1%;left:30.5%}.talent-branch.branch-resonance{left:0;bottom:1%}.talent-branch.branch-critical{right:0;bottom:1%}.talent-branch h2{font-size:1.18rem;letter-spacing:.08em}.talent-branch p{font-size:.68rem;line-height:1.6;color:#b4bfc9}.talent-nodes{display:flex;gap:.55rem;position:relative;margin:.4rem 0}.talent-nodes:before{content:"";position:absolute;top:50%;left:0;right:0;border-top:1px solid var(--branch)}.talent-point{width:1.6rem;height:1.6rem;border:1px solid #56616b;border-radius:50%;background:#080c12;color:#677783;display:grid;place-items:center;font-size:.65rem;z-index:1}.talent-point .icon{width:.85rem;height:.85rem}.talent-point.filled{color:var(--branch);border-color:var(--branch);box-shadow:0 0 .7rem color-mix(in srgb,var(--branch),transparent 45%)}.talent-point.next{border-color:var(--branch);outline:1px dotted var(--branch);outline-offset:3px}.talent-branch .talent-node{width:3.7rem;height:3.7rem;border-radius:50%;border:1px solid var(--branch);transform:none;color:var(--branch);background:#080d14;box-shadow:0 0 .8rem color-mix(in srgb,var(--branch),transparent 60%),inset 0 0 1rem color-mix(in srgb,var(--branch),transparent 85%);padding:.6rem}.talent-node .icon{transform:none;width:2.1rem;height:2.1rem}.talent-branch .talent-node:disabled{opacity:.65}.talent-branch>b{font-size:.83rem;font-weight:400}.talent-branch>small{font-size:.6rem;color:#c7cfd5}.talent-branch .branch-detail{font-size:.57rem;color:#8b9aa8;max-width:13rem}.growth-road{margin:.5rem 0 0;padding:.6rem .7rem;border-top:1px solid #6e7c85}.growth-road h2{font-size:.9rem;text-align:left}.growth-road h2 small{font-size:.6rem;color:#8797a3;margin-left:.6rem}.growth-road>div{display:flex;justify-content:space-between;margin:.6rem 0 0}.growth-road>div>span{gap:.2rem;display:flex;flex-direction:column;align-items:center;color:#63707a;font-size:.65rem}.growth-road .unlocked{color:var(--gold)}.growth-road .icon{width:1.4rem;height:1.4rem}.growth-road small{font-size:.6rem}.inventory-list{flex:1;min-height:0;max-height:none;overflow-y:auto;grid-template-columns:1fr 1fr;align-content:start;gap:.75rem;padding:.2rem .35rem .8rem}.inventory-list .item-card{border-color:currentColor;background:linear-gradient(135deg,#ffffff06,transparent);padding:.9rem}.inventory-list .item-card h3{font-size:1.05rem}.inventory-list .item-card>p{min-height:0}.inventory-note{font-size:.7rem;margin:.6rem 0}.slot-tabs{margin:1rem 0 .5rem}.shop-grid{width:100%;margin:1.5rem 0 1rem;gap:.7rem;flex:1;max-height:22rem;grid-template-columns:repeat(3,minmax(0,1fr))}.shop-item{display:flex;flex-direction:column;gap:.5rem;border-color:currentColor;padding:1.3rem .8rem;background:repeating-linear-gradient(135deg,#ffffff05 0 1px,transparent 1px 6px),#07090c}.shop-item>h3{font-family:'Abyss Text','Abyss Text Full',SimSun,serif;font-size:1.4rem;min-height:0;line-height:1.5}.shop-item>p{min-height:0;font-size:.81rem;line-height:1.9;color:#cad2d9}.shop-item>button{margin-top:auto;width:100%;font-size:.8rem}.shop-item>.muted{font-size:.7rem}.supply-row{width:100%;padding:1rem;border:1px solid #697782;background:#0b1218}.forge-screen{padding-top:.3rem}.forge-screen>.room-symbol{display:none}.forge-screen>h1{font-size:1.7rem;margin:.1rem}.forge-screen>p{font-size:.75rem}.forge-target{position:relative;width:94%;padding:1rem 1.2rem;border:1px solid currentColor;margin:.5rem 0;background:radial-gradient(ellipse at 80% 40%,#ffad2c12,transparent 50%);text-align:left}.forge-target h2{font-size:1.4rem}.forge-target>p{font-size:.8rem}.forge-rule{margin:.8rem 0;max-width:70%;font-size:.75rem;display:flex;gap:1.2rem}.forge-target>.primary{background:#0c272f;color:var(--cyan);border-color:var(--cyan);margin:.5rem 0}.forge-target .room-hint{font-size:.64rem;margin:0;padding-top:.4rem}.forge-dice{position:absolute;right:1rem;top:.7rem;width:8rem;pointer-events:none}.forge-dice .dice-row:has(.die:only-child) .die{width:7rem;flex-basis:7rem}.forge-result{font-size:.9rem;margin:.4rem 0;color:var(--gold);border-bottom:1px solid #785b25;padding:.5rem}.fusion-section{width:94%;margin:auto 0 0;padding:.8rem 1rem;border:1px solid #765a94;background:#0c0712;text-align:left}.fusion-section h3{font-size:1rem;color:var(--purple)}.fusion-section p{font-size:.7rem}.fusion-section select{font-size:.75rem;padding:.5rem;margin-top:.5rem}.fusion-section .empty-hint{font-size:.65rem;margin-top:.5rem}.gold-screen,.death-screen,.milestone-screen{justify-content:center}.gold-hoard,.floor-number{margin:2rem 0}.game-dialog{border-color:#849aa8;box-shadow:0 0 0 4px #050a0e,0 0 0 5px #455b6a,0 2rem 8rem #000;background:#080d13}.game-dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}.toast{background:#0a2931;color:#c0f9ff;border:1px solid #3ce3f5}.small-window-note{display:none}.title-screen{min-height:calc(100svh - 10rem);padding:3rem 7rem}.title-copy h1{font-size:3.8rem}.title-art .die{color:#ffe2a0;filter:drop-shadow(0 0 2rem #ffbc3c40)}.title-primary{background:#082630;color:var(--cyan);border-color:var(--cyan)}
@keyframes toss{0%{transform:translateY(0) rotate(0) scale(.85)}25%{transform:translateY(-2.5rem) rotate(-24deg) scale(1.04)}65%{transform:translateY(-.6rem) rotate(14deg) scale(1.08)}85%{transform:translateY(.5rem) rotate(-5deg)}100%{transform:translateY(0) rotate(0)}}
@keyframes reward-rise{from{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:none}}

@keyframes strike{0%{transform:scale(.85);opacity:.3}45%{transform:scale(1.08);opacity:1}100%{transform:none}}
.impact-reveal .damage-number{animation:strike .35s both}.forge-reveal .forge-result,.fusion-reveal .forge-result{animation:strike .45s both}.talent-upgrade .web-core{box-shadow:0 0 3rem #51d9ff}
@media(max-aspect-ratio:16/9) and (min-width:1100px){.game-layout{grid-template-columns:minmax(0,22fr) minmax(0,53fr) minmax(0,22fr)}.equipment-list{flex:1}.loot-reveal{max-height:19rem}.combat-stage{justify-content:center}}
@media(min-aspect-ratio:2/1){.game-shell{grid-template-rows:4.6rem minmax(0,1fr) 1.5rem}.game-layout{grid-template-rows:minmax(0,1fr) 9rem}.game-footer{grid-template-rows:4.2rem 4.2rem}.combat-stage{padding-top:.8rem}.roll-caption{margin-bottom:.5rem}.die{flex-basis:10.2rem;width:10.2rem;max-width:11rem}.damage-result{margin-top:.4rem;min-height:7rem}.damage-number>strong{font-size:5.8rem}.loot-screen>h1,.chest-screen>h1{font-size:4.5rem}.reward-theatre{height:10.7rem}.chest-art{margin-top:1.5rem}.route-panel>h2{margin-top:.7rem}.route-list{margin:1rem 0}.log-panel ol{gap:.35rem}.log-panel li{font-size:.82rem}.equipment-depth{margin-top:.3rem}.destiny-web{min-height:21rem}.talent-branch .branch-detail{display:none}}
@media(max-width:1099px){.game-shell{min-width:900px}.game-layout{grid-template-columns:19fr 54fr 23fr}.right-rail{display:flex}.brand>span{font-size:1.65rem}.header-motto{display:none}.main-nav>button{padding:.3rem}.game-footer{flex-wrap:nowrap}.loot-reveal{width:97%}.section-label{font-size:.85rem}.section-label>span{font-size:.5rem}.left-rail,.right-rail{overflow:hidden}.combat-screen h1{margin:0;font-size:1.8rem}.crit-stamp{font-size:1.3rem}.log-panel li{font-size:.7rem}.equipment-depth{font-size:.55rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.die-arc{opacity:.4!important}.scene-fx{display:none}}
html[data-effects=low] .scene-fx{display:none}html[data-effects=low] .die{filter:none}html[data-effects=low] .die svg{filter:none}html[data-effects=low] .die-arc{opacity:.3}
/* Second fidelity pass: contextual side rails and connected upgrade constellations. */
.build-rail{grid-template-rows:1fr .72fr 1.2fr 2rem}.build-profile,.build-set,.build-equipment{padding:.6rem .7rem;min-height:0}.build-profile>p,.build-set>p{font-size:.75rem;color:#9cabb6;margin:.7rem 0}.build-profile .exploration-stats{gap:.65rem;margin:1rem 0;font-size:.9rem}.build-dice,.growth-cards{display:flex;justify-content:space-between;gap:.3rem;margin:1rem 0}.build-dice>div,.growth-cards>div{display:flex;flex-direction:column;align-items:center;position:relative;gap:.4rem;color:#65717d}.build-dice .icon,.growth-cards .icon{width:2.6rem;height:2.6rem;padding:.4rem;border:1px solid #54636d;border-radius:5px}.build-dice .unlocked,.growth-cards .unlocked{color:var(--gold)}.unlocked>.icon{filter:drop-shadow(0 0 .35rem #ffaf3950);border-color:currentColor}.build-dice b,.growth-cards b{font-size:.7rem;font-weight:400}.build-dice small,.growth-cards small{font-size:.58rem}.build-equipped{display:block;width:100%;text-align:left;border:1px solid currentColor;margin:.8rem 0;padding:.8rem .6rem;background:repeating-linear-gradient(135deg,#ffffff05 0 1px,transparent 1px 5px)}.build-equipped b{font-size:.94rem;display:block}.build-equipped small{display:block;font-size:.72rem;color:#bac6ce;margin-top:.5rem;line-height:1.8}.build-details{gap:.5rem}.combo-rules{margin:.3rem .2rem}.combo-rules>div{display:flex;gap:1rem;justify-content:space-between;padding:.65rem .2rem;border-bottom:1px dotted #5b6973;font-size:.87rem}.combo-rules dt{color:var(--gold)}.combo-rules dd{margin:0}.combo-rules small{display:block;font-size:.65rem;color:#9fadb8;margin-top:.25rem}.rules-note{color:#bdcbd4;font-size:.73rem;margin:.3rem .3rem .7rem}.passive-list{flex:1;display:flex;flex-direction:column;justify-content:space-evenly;padding:0 .4rem}.passive-list b{font-size:.9rem}.passive-list p{font-size:.75rem;color:#cad5dc;margin-top:.4rem}.build-details .rail-foot{font-size:.7rem;padding:1rem .2rem .2rem}.reward-rail{gap:.8rem}.compare-item{padding:0 .25rem}.compare-item>h3{font-size:.88rem;margin:.25rem 0 .6rem;color:#d6e0e6;display:flex;justify-content:space-between}.compare-item h3 small{font-size:.65rem;color:#9aaab5}.compare-item .item-card{border-color:currentColor;padding:.8rem;background:repeating-linear-gradient(135deg,#ffffff05 0 1px,transparent 1px 6px)}.compare-item .item-card h3{font-size:1.1rem}.compare-item .item-card>p{font-size:.8rem}.compare-item .item-bottom{margin-top:.6rem;padding-top:.6rem;font-size:.72rem}.reward-rail .exploration-stats{padding:.3rem .4rem;margin:0;gap:.6rem}.build-summary{padding:.5rem .3rem;display:flex;flex-direction:column;gap:.75rem;flex:1}.build-summary>div{display:grid;grid-template-columns:1fr auto;gap:.4rem;font-size:.8rem}.build-summary b{font-weight:400}.build-summary i{grid-column:1/3;height:.4rem;background:linear-gradient(90deg,currentColor var(--progress),#29323b var(--progress));mask:repeating-linear-gradient(90deg,#000 0 7px,transparent 7px 9px)}.reward-rail>.rail-foot{font-size:.75rem;text-align:right;padding:.3rem .3rem .6rem;line-height:1.8}.shop-item.epic,.shop-item.legendary{border-color:currentColor}.shop-item{box-shadow:inset 0 0 0 3px #030405,inset 0 0 0 4px #ffffff20}.shop-item>.improvement,.shop-item>span.muted:last-of-type{font-size:.78rem}.talent-nodes{width:11.2rem;height:5.6rem;margin:.4rem 0 0}.talent-nodes:before{inset:.75rem 1.1rem .3rem;border:1px solid color-mix(in srgb,var(--branch),transparent 60%);border-radius:50%}.talent-point{position:absolute;width:1.8rem;height:1.8rem;transform:translate(-50%,-50%)}.talent-point:nth-child(1){left:5%;top:80%}.talent-point:nth-child(2){left:20%;top:28%}.talent-point:nth-child(3){left:50%;top:9%}.talent-point:nth-child(4){left:80%;top:28%}.talent-point:nth-child(5){left:95%;top:80%}.talent-branch .talent-node{margin-top:-3.6rem;position:relative;width:3.4rem;height:3.4rem}.talent-branch.branch-high{top:0}.talent-branch.branch-resonance,.talent-branch.branch-critical{bottom:.2rem}.talent-branch .branch-detail{font-size:.62rem}.web-core{clip-path:none;width:6.2rem;height:6.2rem;border:0;outline:0;background:transparent;box-shadow:none}.web-core:before{inset:-.1rem;background:#06101b;border:2px solid #d5edfc;box-shadow:0 0 0 5px #07121a,0 0 0 6px #6a8f9e,0 0 1.6rem #32baff70;z-index:-1}.web-lines .branch-high,.web-lines .branch-resonance,.web-lines .branch-critical{stroke-width:2.5}.web-orbits{stroke:#9ab2c54a}.growth-road>div>span.unlocked{color:var(--gold)}.die.resonant .die-arc,.die.charged .die-arc,.die.critical-die .die-arc{stroke-width:1.4}.die-bottom{filter:brightness(1.3)}.loot-reveal .item-card>h3{font-family:"Microsoft YaHei",'Abyss Text','Abyss Text Full',sans-serif;font-weight:700}.treasure-title h2{font-family:"Microsoft YaHei",'Abyss Text','Abyss Text Full',sans-serif;font-weight:900;letter-spacing:.08em}.chest-screen>h1,.loot-screen>h1{font-family:"Microsoft YaHei",'Abyss Text','Abyss Text Full',sans-serif;font-weight:900}.crit-stamp{color:#060608;background:#ff243d;clip-path:polygon(10% 20%,35% 12%,38% 0,50% 13%,85% 2%,79% 22%,100% 24%,88% 45%,100% 72%,75% 68%,72% 100%,53% 84%,24% 100%,25% 82%,0 92%,14% 57%,0 38%);border:0;padding:.8rem .6rem;font-weight:900;text-shadow:none}.damage-number>strong{font-size:7rem}.combat-stage .dice-row{margin-top:.25rem}.die-arc{stroke-dasharray:4 2 17 3 8 2}
@media(min-aspect-ratio:2/1){.build-profile .exploration-stats{gap:.5rem;margin:.7rem 0}.build-equipped{margin:.6rem 0;padding:.6rem}.compare-item .item-card{padding:.6rem}.reward-rail{gap:.5rem}.damage-number>strong{font-size:6.3rem}.talent-branch>small{font-size:.58rem}.destiny-web{min-height:22rem}}
/* Keep ornamental corners within their boxes; no scroll area is hidden to pass QA. */
.frame:before{top:.12rem;left:.12rem;width:.4rem;height:.4rem}.frame:after{bottom:.12rem;right:.12rem;width:.4rem;height:.4rem}
@media(min-width:1100px){.game-layout{grid-template-columns:minmax(0,23.5fr) minmax(0,50fr) minmax(0,23fr)}}
.reward-theatre{height:12.7rem}.reward-theatre .chest-art{width:76%;max-width:30rem;bottom:-.5rem}.treasure-title{margin-top:2.7rem}.drop-banner{top:5rem}.exploration-stats{font-size:.91rem}.log-panel li{font-size:.9rem}.equipped-item p{font-size:.88rem}.character-stats dt{font-size:.85rem}.equipment-depth{font-size:.72rem}.route-list li{font-size:.72rem}.trait-tag,.enemy-warning{font-size:.85rem}.loot-reveal .item-card>p{display:flex;flex-direction:column;line-height:1.8}.loot-reveal .item-card>p>span{display:block}.primary-control>.primary:disabled{font-size:1.15rem;letter-spacing:.02em}.enemy-warning{font-family:Consolas,'Abyss Text','Abyss Text Full',"Microsoft YaHei",sans-serif}.build-profile .exploration-stats{font-size:.96rem}
.left-rail:not(.build-rail){grid-template-rows:minmax(0,1.5fr) minmax(0,1fr) 2.8rem}
.left-rail:not(.build-rail) .log-panel{display:flex;flex-direction:column}
.left-rail:not(.build-rail) .log-panel>.section-label{flex-shrink:0}
.left-rail:not(.build-rail) .log-panel>ol{min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain}
.rolling .die{animation-duration:.55s;animation-delay:calc(var(--i) * .025s)}
#app>.topbar{padding:1rem 2rem 0}#app>.title-screen{min-height:calc(100svh - 10.8rem)}
.die-specular{stroke:#f0f7ff;stroke-width:2;fill:none;opacity:.9}.resonant .die-specular{stroke:#fff8ca;stroke-width:3}.die-energy{fill:none;stroke:currentColor;pointer-events:none}.energy-halo{stroke-width:3;filter:blur(2px);opacity:.8}.energy-core{stroke:#fff6d2;stroke-width:.7;stroke-dasharray:19 8 3 6;opacity:.9}.critical-die .energy-core{stroke:#ffcfdd}.charged .energy-core{stroke:#d5faff}.energy-sparks{stroke-width:1.2;opacity:.8}.die.resonant .die-face{stroke-width:3}.impact-reveal .die-energy{animation:energy-flare 1s both}.impact-reveal .die.resonant{filter:drop-shadow(0 0 .4rem #ffde4e) drop-shadow(0 0 1rem #ff780050)}
@keyframes energy-flare{0%{opacity:0;transform:scale(.75);transform-origin:center}22%{opacity:1;transform:scale(1.12)}55%{transform:scale(.97)}100%{opacity:.6;transform:scale(1)}}
html[data-effects=low] .die-energy{display:none}
:root{font-size:clamp(11px,min(calc(.92vw * var(--user-scale)),1.72vh),36px)}
.web-core{top:58%}
/* Reference composition: the stage rises above the exploration rail. */
.game-shell .location{visibility:hidden}.game-shell:not([data-scene=talents]) .center-panel{margin-top:-2.9rem}.game-shell:not([data-scene=talents]) .right-rail{margin-top:-1.65rem}.game-shell[data-scene=talents] .center-panel,.game-shell[data-scene=talents] .right-rail{margin-top:-.5rem}.loot-screen>h1,.chest-screen>h1{font-size:6.6rem}.loot-screen{padding-top:0}.reward-theatre .chest-art{max-width:32rem}.loot-reveal .item-card>h3{font-size:1.9rem}.header-actions{z-index:4}
@media(max-width:1099px){.game-shell:not([data-scene=talents]) .center-panel{margin-top:0}.game-shell:not([data-scene=talents]) .right-rail{margin-top:0}.loot-screen>h1,.chest-screen>h1{font-size:5rem}}
/* Reference-detail pass: white-hot cores, broken branches and engraved hardware. */
.die svg{overflow:visible}.die-arc{display:none}.die-energy{stroke-linecap:round;stroke-linejoin:round;opacity:.9}
.flame-aura{fill:currentColor;stroke:currentColor;stroke-width:2;filter:blur(2.5px);opacity:.65}
.flame-hot{fill:currentColor;stroke:#fff6c8;stroke-width:.55;opacity:.85}
.flame-hot path:nth-child(3n){fill:#fff8c4;stroke-width:.8}.flame-hot path:nth-child(4n){opacity:.4}
.bolt-halo{stroke:currentColor;stroke-width:3;filter:blur(1.6px);opacity:.85}.bolt-core{stroke:#effaff;stroke-width:.65;fill:none}
.energy-sparks{stroke:#fff4bc;stroke-width:1.2;filter:drop-shadow(0 0 2px currentColor);opacity:.9}
.die:not(.resonant):not(.critical-die){color:#58caff}.die:not(.resonant):not(.critical-die) .flame-hot{fill:#4aaaff;stroke:#b7efff}
.die:not(.resonant):not(.critical-die) .energy-sparks{stroke:#b4eaff}.critical-die .flame-hot{fill:#ff334c;stroke:#ffd4cf}
.die.resonant{color:#ffbe35;filter:drop-shadow(0 0 .3rem #ff9d24)}.die.resonant .die-face{fill:#1d1305;stroke:#fff2ac}
.die.resonant .die-inner{stroke:#ffb52f}.die.resonant .die-pips{fill:#fff9d9;filter:drop-shadow(0 0 3px #ffb400)}
.die .die-specular{stroke:#fff;stroke-width:2.8}.die .die-etch{stroke-width:.9;opacity:.9}.die .die-bottom{stroke-width:1.6}
.die text{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-size:68px;font-weight:900;paint-order:stroke fill;stroke:currentColor;stroke-width:1.1;filter:drop-shadow(0 0 3px currentColor)}
.impact-reveal .flame-hot,.rolling .flame-hot{animation:flame-breathe .28s steps(3,end) 5 alternate;transform-origin:80px 80px}
.impact-reveal .bolt-core{animation:arc-flicker .19s steps(2,end) 7}.die-index{opacity:.55}
@keyframes flame-breathe{from{transform:scale(.97,1);opacity:.6}to{transform:scale(1.04,1.07);opacity:1}}
@keyframes arc-flicker{from{opacity:.45}to{opacity:1}}
.frame{border-image:url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMDAiIGhlaWdodD0iMTAwIiB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgZmlsbD0ibm9uZSI+CjxwYXRoIHN0cm9rZT0iIzc4ODU4ZCIgZD0iTTEgMTZWNkw2IDFoODhsNSA1djg4bC01IDVINmwtNS01VjE2TTcgMjFWOWwyLTJoODJsMiAydjgybC0yIDJIOWwtMi0yVjIxIi8+CjxwYXRoIHN0cm9rZT0iI2Q3ZGZlMiIgZD0iTTIgMjRWMTNNMTMgMmgxMU03NiAyaDExTTk4IDEzdjExTTk4IDc2djExTTg3IDk4SDc2TTI0IDk4SDEzTTIgODdWNzZNNCAxNFY2aDEwTTg2IDRoMTB2MTBNOTYgODZ2MTBIODZNMTQgOTZINFY4NiIvPgo8cGF0aCBzdHJva2U9IiM2ODc0N2IiIGQ9Im05IDE0IDUtNW03MiAwIDUgNW0wIDcyLTUgNU0xNCA5MWwtNS01TTE4IDRoNW01NCAwaDVNNCAxOHY1bTAgNTR2NW0xNCAxNGg1bTU0IDBoNW0xNC0xNHYtNW0wLTU0di01Ii8+CjxwYXRoIHN0cm9rZT0iI2MyY2JkMCIgZmlsbD0iIzA2MDkwYSIgZD0ibTYgMiA0IDQtNCA0LTQtNFptODggMCA0IDQtNCA0LTQtNFptNCA5Mi00IDQtNC00IDQtNFpNNiA5MGw0IDQtNCA0LTQtNFoiLz4KPHBhdGggc3Ryb2tlPSIjNDA0YzU1IiBkPSJNMjcgNGg0Nk0yNyA5Nmg0Nk00IDI3djQ2TTk2IDI3djQ2Ii8+Cjwvc3ZnPgo=') 26 / 1.35rem / 0 stretch;box-shadow:inset 0 0 0 3px #030405,inset 0 0 0 4px #515b62}
.frame:before,.frame:after{width:.22rem;height:.22rem;border-color:#eef4f5;background:#83959f;transform:none;top:.5rem;left:.5rem}.frame:after{top:auto;left:auto;right:.5rem;bottom:.5rem}
.section-label{position:relative;padding-left:.65rem;background:linear-gradient(110deg,#bccbd51c,transparent 65%);border-top:1px solid #82919c44;border-bottom-color:#a1aaaf;text-shadow:1px 1px #000}
.section-label:before{content:'';position:absolute;left:0;top:24%;bottom:24%;width:3px;background:#b3c2cd;box-shadow:4px 0 #6d7a83}
.section-label:after{content:'';width:2.4rem;height:.45rem;margin-left:auto;align-self:center;background:repeating-linear-gradient(135deg,transparent 0 3px,#75838d 3px 4px);opacity:.45}
.brand>span,.combat-screen h1,.route-panel>h2{font-weight:900;text-shadow:1px 0 #d7dfe6,0 2px #242c32,0 0 .5rem #d8e7ef33}
.brand>span{letter-spacing:.07em}.section-label,.log-panel li,.equipment-list{font-family:'Abyss Text','Abyss Text Full',SimSun,'Microsoft YaHei',serif}
.damage-number>strong{font-family:Consolas,'Abyss Text','Abyss Text Full',monospace;font-weight:900;font-style:italic;letter-spacing:-.04em;paint-order:stroke fill;-webkit-text-stroke:1px #fff2c9}
.emphatic .damage-number>strong{color:#fff4b8;text-shadow:0 -2px #fff,2px 2px #ff8d00,-2px 3px #ff6b00,0 0 .28rem #fff09a,0 0 .7rem #ff9300,0 .25rem 1.3rem #f52b0090}
.combo-tag,.critical-tag,.follow-tag{box-shadow:inset 0 0 0 2px #050608,0 0 .35rem currentColor;border-width:1px!important;font-weight:700;padding:.28rem .55rem!important}
.equipped-item,.build-equipped,.compare-item .item-card,.loot-reveal .item-card{position:relative;background-image:linear-gradient(120deg,#ffffff0d,transparent 40%),repeating-linear-gradient(135deg,#ffffff04 0 1px,transparent 1px 5px);box-shadow:inset 0 0 0 3px #040608,inset 0 0 0 4px color-mix(in srgb,currentColor,transparent 60%)}
.equipped-item:before,.build-equipped:before,.compare-item .item-card:before,.loot-reveal .item-card:before{content:'';position:absolute;inset:5px;pointer-events:none;background:linear-gradient(currentColor,currentColor) left top/12px 1px no-repeat,linear-gradient(currentColor,currentColor) left top/1px 12px no-repeat,linear-gradient(currentColor,currentColor) right bottom/12px 1px no-repeat,linear-gradient(currentColor,currentColor) right bottom/1px 12px no-repeat;opacity:.8}
.equipped-item h3,.build-equipped b{font-weight:900;text-shadow:0 0 .4rem color-mix(in srgb,currentColor,transparent 55%)}
.chest-art svg{stroke-width:1.6}.chest-art.grand svg{stroke:#ffe3a4}
.reward-dust{fill:currentColor;stroke:#fff9d1;stroke-width:.5}.reward-traces{stroke:#dcebf2;stroke-width:1;opacity:.7}.chest-beams{stroke-width:2;stroke-dasharray:4 3 1 8;opacity:.8}
.loot-screen>h1,.chest-screen>h1{font-family:SimHei,'Microsoft YaHei','Abyss Text','Abyss Text Full',sans-serif;paint-order:stroke fill;-webkit-text-stroke:1px #fff3c3;color:#fff4c7;text-shadow:2px 0 #fff,0 -2px #fff,3px 3px #bd7422,-3px 2px #ca7f24,0 0 .45rem #ffce56,0 0 1.2rem #e6a33180}
.treasure-title h2{paint-order:stroke fill;-webkit-text-stroke:.5px #fff3c9;text-shadow:2px 2px #aa6217,0 0 .4rem #fff4aa,0 0 1rem #ffb52a}
.loot-reveal .item-card.legendary{border-color:#fff1aa;box-shadow:inset 0 0 0 3px #160f04,inset 0 0 0 4px #ffe391,0 0 .3rem #ffe9a3,0 0 1.3rem #ff9e2a60}
.talent-point.filled{border:2px solid #fff0bf;background:color-mix(in srgb,var(--branch),#05090c 80%);box-shadow:0 0 0 3px #0a1016,0 0 0 4px var(--branch),0 0 .7rem var(--branch)}
.talent-branch .talent-node{border-width:2px;outline:1px solid color-mix(in srgb,var(--branch),transparent 35%);outline-offset:4px;box-shadow:inset 0 0 .9rem color-mix(in srgb,var(--branch),transparent 70%),0 0 1rem color-mix(in srgb,var(--branch),transparent 40%)}
.web-lines>path{stroke-width:3;filter:drop-shadow(0 0 3px currentColor) drop-shadow(0 0 6px currentColor)}.web-orbits{stroke-dasharray:1 4 7 4;stroke:#9ab2c570}
.web-core:before{box-shadow:0 0 0 4px #07121a,0 0 0 5px #b5d9ee,0 0 0 10px #06111d,0 0 0 11px #42677e,0 0 1.6rem #32baff80}
html[data-effects=low] .die-energy{display:none}
@media(prefers-reduced-motion:reduce){.flame-hot,.bolt-core{animation:none!important}}
.flame-aura{opacity:.45;filter:blur(1.8px)}.flame-hot{fill-opacity:.35;stroke-width:.4}.flame-hot path:nth-child(3n){fill-opacity:.65}
.die:not(.resonant):not(.critical-die) .flame-aura{opacity:.2}.die:not(.resonant):not(.critical-die) .flame-hot{fill-opacity:.12;stroke-width:.3}.die:not(.resonant):not(.critical-die) .bolt-core{stroke-width:.9}
.section-label>span{margin-left:.65rem}.frame:before,.frame:after{display:none}
