:root{--gold:#edd391;--green:#60efce;--muted:#9bafb6;--panel:#111f30ed;--line:#63727550}*{box-sizing:border-box}html,body{margin:0;height:100%;background:#060e1a;color:#f4f1e6;font-family:system-ui,sans-serif;overflow:hidden;touch-action:manipulation}button,input{font:inherit}button{cursor:pointer;color:inherit;border:1px solid #6c797b66;border-radius:6px;background:linear-gradient(165deg,#293c49,#101c2b);padding:12px 14px;font-weight:700;min-height:44px;transition:filter .15s,border-color .15s;touch-action:manipulation}button:active{filter:brightness(1.3)}button:disabled{opacity:.45;cursor:default}button.sel{border-color:var(--gold);background:linear-gradient(150deg,#514733,#182d35);box-shadow:inset 0 0 14px #efd49418}button.primary{color:#fff2c7;background:linear-gradient(120deg,#694321,#bc863b);border:1px solid #d6af69;text-shadow:0 2px 3px #000}button.ornate{border:0;border-radius:0;background-color:transparent;background-image:url(buttons.png);background-size:100% 200%;background-position:center bottom;box-shadow:none;min-height:65px;padding:17px 35px;font-size:13px;letter-spacing:.6px;color:#f8eacc;text-shadow:0 2px 4px #000}button.ornate.primary{background-position:center top;min-height:77px}.full{width:100%}h1,h2,h3,p{margin:0}h1,h2{font-family:Georgia,serif}h1{font-size:clamp(32px,5vw,56px);line-height:1.06;letter-spacing:-1px}h2{font-size:26px}h3{font-size:16px}.eyebrow{font-size:9px;letter-spacing:2.4px;color:var(--gold);font-weight:800;line-height:1.7}.muted{font-size:11px;color:var(--muted);line-height:1.5}.gold{color:var(--gold)}.row{display:flex;align-items:center;justify-content:space-between;gap:10px}.stack{display:grid;gap:12px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.panel{border:1px solid var(--line);background:linear-gradient(150deg,#1a2a3aea,#0b1626f5);border-radius:9px;padding:17px;box-shadow:0 12px 30px #0003,inset 0 1px #fff1}.screen{position:fixed;inset:0;overflow:auto;padding:18px 16px 96px;background:linear-gradient(#07121aed,#0a1122f8),url(citadel.png) center/cover fixed}#menu{max-width:1280px;margin:auto}.topline{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 0 18px;border-bottom:1px solid #a994622b;margin-bottom:18px}.brand{display:flex;gap:9px;align-items:center}.brand-mark{font-size:30px;color:var(--gold);text-shadow:0 0 20px #ecc78180}.brand .eyebrow{font-size:11px;letter-spacing:2px}.brand .muted{font-size:8px;letter-spacing:1px}.wallet{display:flex;gap:12px;border:1px solid #baa26850;background:#111f2f;padding:9px 12px;color:var(--gold);font-size:12px;border-radius:5px;white-space:nowrap}.wallet span+span{color:#8fecf0}.hero{height:325px;position:relative;overflow:hidden;border:1px solid #c7b78065;border-radius:9px;background:#08141d;box-shadow:0 18px 50px #0006}.castle-art{position:absolute;inset:0;background:url(citadel.png) 62% center/cover}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#07121bc9,transparent 85%),linear-gradient(0deg,#07121b,transparent 65%)}.hero-copy{position:absolute;z-index:2;bottom:73px;left:22px}.hero-copy h1{margin-top:8px;text-shadow:0 3px 15px #000}.hero-copy p{color:#c1d5d5;font-size:11px;line-height:1.7;margin-top:12px}.tag{padding:6px 10px;font-size:8px;letter-spacing:1.3px;border:1px solid #c5ac675a;background:#142229ba;color:#ebd59c;border-radius:3px;display:inline-block}.hero>.tag{position:absolute;top:16px;left:18px;z-index:2}.hero-stats{position:absolute;bottom:0;left:0;right:0;z-index:3;display:flex;justify-content:space-around;padding:16px;background:#09172699;border-top:1px solid #c5ac6733;font-size:8px;letter-spacing:1.1px;color:#abb6b5}.hero-stats b{color:var(--gold);font-size:16px;margin-right:4px}.nav{position:fixed;bottom:0;left:0;right:0;z-index:10;display:flex;justify-content:center;background:linear-gradient(#0b1927ed,#050c16);border-top:1px solid #8d795a66;padding:4px 8px max(6px,env(safe-area-inset-bottom));box-shadow:0 -8px 25px #0006;gap:7px}.nav button{display:flex;align-items:center;justify-content:center;gap:7px;flex:1;max-width:220px;background:none;border:0;border-radius:0;color:#9db0b8;font-size:11px;padding:5px 8px;min-height:58px}.nav button.sel{color:#ffe9ac;background:linear-gradient(0deg,#94773933,transparent);box-shadow:inset 0 -2px var(--gold)}.art-icon{display:inline-block;width:54px;height:54px;flex-shrink:0;background-image:url(icons.png);background-size:400% 200%;background-position:var(--ix) var(--iy);vertical-align:middle;filter:drop-shadow(0 3px 5px #0008)}.nav .art-icon{width:38px;height:38px}.section{margin:18px 0 12px}.map-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.map{height:124px;position:relative;overflow:hidden;text-align:left;border-radius:7px;padding:12px;background:#111a21}.map:before{content:'';position:absolute;inset:0;background-image:var(--map-image);background-size:var(--map-size);background-position:var(--pos) 48%;opacity:.8;transition:transform .3s}.map.sel:before{transform:scale(1.08)}.map:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#071421 5%,#06152580 58%,transparent)}.map>*{position:relative;z-index:1}.map-index{font-size:10px;letter-spacing:2px;color:#e7d19a}.map-copy{position:absolute;left:12px;right:8px;bottom:12px}.map h3{font-family:Georgia,serif;font-size:16px;color:#fff2d1;line-height:1.14}.map small{display:block;font-size:9px;color:#b4c5c9;margin-top:5px;line-height:1.35}.map-check,.map-win{position:absolute;right:9px;top:9px;color:#f3d78c}.map-win{right:27px}.diffs{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.diffs button{font-size:10px;padding:10px 2px;min-height:53px}.diffs small{display:block;font-size:8px;letter-spacing:.3px;color:#ddc992;margin-top:4px}.reward-note{font-size:11px;color:#e5d39d;text-align:center;margin:12px 0}.reward-note span{display:block;color:#879da8;font-size:9px;margin-top:4px}.view-options{border-top:1px solid #829ca52c;padding-top:10px;margin-top:12px;display:grid;gap:10px}.segmented{display:flex;gap:4px}.segmented button{padding:7px 10px;font-size:10px;min-height:33px}.zoom-row input{width:44%;padding:0;accent-color:#d4bc81;min-width:80px}.zoom-value{font-size:11px;color:var(--gold);min-width:37px}.footnote{font-size:9px;line-height:1.5;color:#849ba9;text-align:center;margin:9px 0}.roster-strip{display:flex;flex-wrap:wrap;gap:5px;background:#0b1a27;border:1px solid var(--line);margin:12px 0;border-radius:7px;padding:4px 7px}.roster-item{display:flex;align-items:center;min-width:130px;flex:1}.roster-item b{font-size:12px}.roster-item small{display:block;font-size:8px;margin-top:4px;color:var(--muted)}.mechanic-note{display:flex;align-items:center;gap:12px;padding:10px 12px;background:linear-gradient(90deg,#17333d80,transparent);border-left:2px solid #8accc8}.mechanic-note b{font-size:12px;color:#daece7}.mechanic-note p{font-size:10px;color:#95afb7;margin-top:4px}.dragon-view{width:144px;height:144px;background-image:url(dragons-animated.png);background-size:800% 400%;background-position:42.857% var(--dy);flex-shrink:0;animation:float 3s ease-in-out infinite}.mini-dragon{width:62px;height:62px}.dragon-grid{display:grid;gap:16px}.dragon-card{padding:0;overflow:hidden}.dragon-stage{height:180px;position:relative;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 75%,color-mix(in srgb,var(--glow) 20%,transparent),transparent 70%)}.dragon-stage .dragon-view{width:180px;height:180px;position:relative;z-index:2}.dragon-stage .tag{position:absolute;top:14px;right:14px}.stage-rune{position:absolute;width:130px;height:40px;bottom:14px;border:1px solid var(--glow);border-radius:50%;box-shadow:0 0 22px color-mix(in srgb,var(--glow) 35%,transparent),inset 0 0 18px #adffff33}.dragon-info{padding:17px}.gear{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:14px 0}.gear button{font-size:9px;padding:7px 2px;line-height:1.5}.gear .art-icon{width:34px;height:34px;display:block;margin:auto auto 4px}.swatches{display:flex;gap:5px;margin:12px 0}.swatches button{flex:1;padding:8px 3px;font-size:10px}.desc{font-size:12px;line-height:1.6;color:#adbec6;margin:9px 0 14px}.pill{font-size:9px;letter-spacing:.5px;padding:6px 8px;background:#193d3c;color:#abe8d6;border:1px solid #76c7b33d;border-radius:4px;white-space:nowrap}.page-heading{display:flex;justify-content:space-between;gap:14px;align-items:center;margin:24px 0}.page-heading h1{font-size:36px;margin-top:7px}input:not([type=range]){width:100%;border:1px solid #71848866;background:#0a1624;color:white;border-radius:6px;padding:12px}.citadel-view{min-height:410px;position:relative;border:1px solid #b8a77c55;border-radius:8px;overflow:hidden}.citadel-view .castle-art{background-position:63% center}.citadel-view:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#071424,transparent 60%),linear-gradient(90deg,#061321a9,transparent 60%);pointer-events:none}.citadel-title{position:absolute;top:24px;left:22px;z-index:2}.citadel-title h1{margin:10px 0 14px}.castle-nodes{display:flex;position:absolute;bottom:45px;left:12px;right:12px;z-index:3;justify-content:space-around}.castle-nodes button{background:none;border:0;padding:2px;display:grid;gap:6px;justify-items:center;min-width:65px}.castle-nodes b{font-size:10px;text-shadow:0 2px 3px #000}.castle-nodes .art-icon{width:61px;height:61px}.castle-caption{position:absolute;bottom:16px;left:0;right:0;z-index:3;text-align:center;font-size:10px;color:#b1c5cb}.build-grid{display:grid;gap:12px}.build .row{justify-content:flex-start}.building-icon{width:74px;height:74px}.build .desc{font-size:10px;margin:5px 0}.build h3{font-family:Georgia,serif;font-size:19px}.build .eyebrow{font-size:8px}.level-pips{display:flex;gap:4px;margin:12px 0 4px}.level-pips i{height:4px;flex:1;background:#364552}.level-pips i.on{background:#d6bd7d;box-shadow:0 0 5px #d6bd7d55}.settings{margin-top:14px}.settings button{font-size:10px;min-height:34px;padding:7px 12px}.spacer{height:12px}.hint{border-left:2px solid var(--gold);padding:12px;font-size:12px;color:#b6c5c4;background:#dfc46c0a}#game{position:fixed;inset:0;display:none}canvas{display:block;width:100%;height:100%;touch-action:auto}#game canvas{touch-action:none}#hud{position:absolute;top:0;left:0;right:0;padding:14px 14px 25px;background:linear-gradient(#061222f0,transparent);pointer-events:none}#hud button{pointer-events:auto;min-height:36px;padding:7px 12px}#hud .eyebrow{font-size:10px}.hud-left{width:min(390px,72%)}.hud-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.hud-actions{display:flex;gap:5px;pointer-events:auto}.bar{background:#051422e6;border:1px solid #b7af7055;border-radius:8px;height:9px;overflow:hidden}.bar>i{display:block;height:100%;background:linear-gradient(90deg,#b53632,#efb977);width:100%}.xp{height:5px;margin-top:5px}.xp>i{background:linear-gradient(90deg,#2a9689,#9affcf)}.hud-stats{display:flex;gap:12px;margin-top:8px;font-size:10px;text-shadow:0 1px 4px #000}.boss-hud{max-width:390px;margin-top:9px}.boss-hud span{font-size:8px;color:#ffaec9;letter-spacing:1px}.bottom-hud{position:absolute;bottom:max(15px,env(safe-area-inset-bottom));left:14px;right:14px;display:flex;align-items:flex-end;justify-content:space-between;pointer-events:none;gap:10px}.bottom-hud button,.bottom-hud input{pointer-events:auto}.battle-info{display:grid;gap:7px}.magnet-badge{background:#09192de0;border:1px solid #73b4c359;border-radius:7px;padding:4px 10px 4px 4px;display:flex;gap:8px;align-items:center}.magnet-badge .art-icon{width:39px;height:39px}.magnet-badge b{font-size:12px;color:#a8efe0}.magnet-badge small{font-size:8px;color:#8da7b6;display:block;margin-top:2px}.zoom-control{display:flex;gap:7px;align-items:center;background:#09192de0;border:1px solid #69839150;padding:4px 7px;border-radius:7px}.zoom-control button{min-height:28px;width:30px;padding:0;font-size:17px}.zoom-control input{width:76px;accent-color:#d7bd7e}.zoom-control span{font-size:10px;width:31px;color:#dec78e}.skill-wrap{pointer-events:auto;position:relative;width:90px;text-align:center}.skill{width:86px;height:86px;padding:0;border:0;border-radius:50%;background:none;position:relative;filter:drop-shadow(0 0 9px #f4904955)}.skill .art-icon{width:100%;height:100%}.skill-cooldown{position:absolute;inset:7px;border-radius:50%;background:conic-gradient(#05101ede var(--cool,0%),transparent 0);pointer-events:none}.skill-count{position:absolute;inset:0;display:grid;place-items:center;color:#fff3d0;font-weight:900;font-size:23px;text-shadow:0 2px 5px #000}.skill-caption{font-size:8px;letter-spacing:1px;color:#f3d19a;text-shadow:0 2px 3px #000;display:block;margin-top:2px}.skill.ready{animation:skillGlow 2s ease-in-out infinite}.skill.ready:active{transform:scale(.94)}#active-cards{position:absolute;right:14px;top:125px;display:flex;gap:4px;flex-wrap:wrap;max-width:140px;justify-content:flex-end;pointer-events:none}.active-card{position:relative}.active-card .art-icon{width:30px;height:30px}.active-card b{position:absolute;right:0;bottom:0;background:#071725;color:#edd393;font-size:9px;border-radius:3px;padding:0 2px}#overlay{position:fixed;inset:0;background:#030b18e8;backdrop-filter:blur(8px);display:none;z-index:30;overflow:auto;padding:30px 18px}.modal{max-width:660px;margin:5vh auto}.modal>h1{font-size:38px}.cards{display:grid;gap:12px;margin:22px 0}.upgrade{padding:17px;text-align:left;border-color:#776744;background:radial-gradient(ellipse at top right,#68513445,transparent 80%),linear-gradient(130deg,#1c2c3f,#0c1424);box-shadow:inset 0 1px #f6d79033;display:flex;align-items:center;gap:16px}.upgrade .art-icon{width:64px;height:64px}.upgrade p{font-weight:400;font-size:12px;line-height:1.5;color:#b2c8cf;margin-top:5px}.upgrade small{font-size:8px;letter-spacing:2px;color:#d4bd84;display:block;margin-bottom:5px}.upgrade h3{font-family:Georgia,serif;font-size:20px}.result-number{font-size:40px;font-weight:800;color:var(--gold)}#toast{position:fixed;bottom:95px;left:20px;right:20px;z-index:99;text-align:center;padding:12px;background:#dec993;color:#162534;border:1px solid #fff1c3;border-radius:6px;font-size:12px;font-weight:700;opacity:0;pointer-events:none;transition:opacity .2s}#magnet-flash{position:fixed;top:38%;left:0;right:0;z-index:8;text-align:center;pointer-events:none;opacity:0;transition:opacity .25s;color:#b9fff0;font-family:Georgia,serif;font-size:26px;text-shadow:0 0 20px #1fdaa0,0 2px 8px #000}#magnet-flash.show{opacity:1}.onboarding{display:grid;gap:18px}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes skillGlow{0%,100%{filter:drop-shadow(0 0 7px #f4904966)}50%{filter:drop-shadow(0 0 16px #f49049aa)}}
@media(min-width:700px){.expedition-layout{display:grid;grid-template-columns:minmax(280px,1fr) minmax(330px,1fr);gap:24px}.expedition-intro .hero{height:440px}.expedition-config>.section:first-child{margin-top:0}.hero-copy h1{font-size:44px}.castle-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:22px}.citadel-view{min-height:510px}.build-grid{grid-template-columns:1fr 1fr}.build{padding:11px}.building-icon{width:52px;height:52px}.build h3{font-size:16px}.build .ornate{font-size:10px;padding:15px 22px;min-height:53px}.dragon-grid{grid-template-columns:repeat(2,1fr)}.onboarding{grid-template-columns:1.1fr 1fr}.onboarding .hero{height:480px}}
@media(orientation:landscape) and (max-height:600px){.screen{padding:12px 20px 75px 90px}.nav{top:0;right:auto;width:74px;flex-direction:column;justify-content:center;padding:5px;border-top:0;border-right:1px solid #a78a5355;gap:10px}.nav button{flex:0;flex-direction:column;gap:4px;min-height:80px;font-size:9px;padding:8px 3px}.nav button.sel{box-shadow:inset 2px 0 var(--gold)}.nav .art-icon{width:41px;height:41px}.topline{padding-bottom:10px;margin-bottom:12px}.expedition-layout{gap:18px;grid-template-columns:minmax(220px,.85fr) minmax(300px,1fr)}.expedition-intro .hero{height:300px}.hero-copy{left:16px;bottom:65px}.hero-copy h1{font-size:33px}.hero-copy p{font-size:10px}.hero-stats{padding:12px 4px}.hero-stats b{font-size:14px}.hero>.tag{font-size:7px}.map{height:100px}.map h3{font-size:14px}.map small{font-size:8px}.map-copy{bottom:10px}.citadel-view{min-height:400px}.castle-layout{grid-template-columns:.85fr 1.1fr;gap:15px}.build-grid{grid-template-columns:1fr}.build .ornate{min-height:54px}.building-icon{width:62px;height:62px}.castle-nodes .art-icon{width:48px;height:48px}.castle-nodes button{min-width:45px}.citadel-title h1{font-size:38px}.onboarding .hero{height:390px}#hud{padding:10px 15px}.hud-left{width:300px}#hud .eyebrow{font-size:9px}.hud-stats{font-size:9px}.bottom-hud{bottom:10px;left:15px;right:17px}.battle-info{display:flex;align-items:flex-end;gap:9px}.magnet-badge{padding-right:10px}.zoom-control input{width:64px}.skill-wrap{width:80px}.skill{width:70px;height:70px}.skill-caption{font-size:7px}#active-cards{top:65px;right:15px;max-width:190px}.modal{margin:0 auto}.cards{grid-template-columns:repeat(3,1fr);gap:10px;margin:15px 0}.upgrade{display:block;padding:13px;text-align:center;min-height:210px}.upgrade .art-icon{width:60px;height:60px;margin-bottom:8px}.upgrade h3{font-size:18px}.upgrade p{font-size:11px}.upgrade small{font-size:7px}.modal>h2{font-size:24px}.modal>p.desc{margin:5px 0}#overlay{padding:18px}#toast{bottom:20px;left:100px}.onboarding .panel{padding:14px}.onboarding .dragon-view{width:100px;height:100px}.onboarding .ornate{min-height:64px}.dragon-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1100px){.dragon-grid{grid-template-columns:repeat(3,1fr)}}@media(prefers-reduced-motion:reduce){.dragon-view,.skill.ready{animation:none}}

.map-index{position:absolute;left:12px;top:10px}
/* Smoczy Legion: owner-specific builds, card illustrations, squad HUD. */
.dragon-portrait{display:inline-block;flex-shrink:0;width:50px;height:50px;background:url(dragons-animated.png) 100% var(--dy)/800% 400%;filter:drop-shadow(0 2px 3px #000)}.squad-hud{display:flex;gap:5px;margin-top:10px;max-width:650px;pointer-events:auto}.squad-chip{display:flex;align-items:center;gap:4px;padding:4px 6px!important;background:#09182ddd!important;border:1px solid #6f8c9744;min-height:54px!important;min-width:0;flex:1;max-width:154px;text-align:left}.squad-chip.chosen{border-color:var(--dragon-color);box-shadow:inset 0 -2px var(--dragon-color),0 0 12px #0004}.squad-chip.fallen{opacity:.35}.squad-chip .dragon-portrait{width:35px;height:40px}.chip-info{display:block;flex:1;min-width:0}.chip-info b{display:block;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:90px}.chip-info .bar{display:block;height:5px;margin:5px 0}.chip-info small{display:block;font-size:7px;color:#a8bdc6;white-space:nowrap}.active-owner{width:100%;font-size:8px;color:#d8d8c4;text-align:right;text-shadow:0 1px 3px #000}.skill-caption{font-size:7px;overflow-wrap:anywhere}.modal{max-width:890px}.draft-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.draft-heading h2{margin-top:4px;font-size:29px}.draft-heading .pill{font-size:8px}.recipient-tabs{display:flex;gap:7px;margin:16px 0}.recipient{display:flex;align-items:center;justify-content:center;gap:5px;flex:1;min-width:0;text-align:left;padding:5px 7px;min-height:61px;background:linear-gradient(130deg,#132d3c,#0b1726)}.recipient.sel{border-color:var(--dragon-color);box-shadow:inset 0 -2px var(--dragon-color),0 0 20px #68e2c318}.recipient b{display:block;font-size:11px;overflow:hidden;text-overflow:ellipsis;max-width:120px;white-space:nowrap}.recipient small{display:block;color:#98aeb9;font-size:8px;margin-top:4px;letter-spacing:1px}.recipient .dragon-portrait{width:44px;height:44px}.premium-cards{margin:14px 0;gap:12px}.collectible.upgrade{display:grid;grid-template-columns:110px minmax(0,1fr);padding:0;overflow:hidden;position:relative;background:linear-gradient(120deg,#25334c,#0b1423);border:1px solid #b5a37790;border-radius:10px;gap:0;box-shadow:inset 0 0 0 2px #0e1829,0 8px 22px #0006;min-height:174px}.collectible.ascended{border-color:#e5c171;box-shadow:0 0 20px #e5c12624,inset 0 0 0 2px #0e1829}.card-art{height:100%;min-height:174px;position:relative;background-image:url(card-art.png);background-size:400% 200%;background-position:var(--artx) var(--arty)}.card-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 50%,#132037aa)}.card-rank{position:absolute;top:9px;left:9px;z-index:2;display:grid;place-items:center;width:26px;height:30px;clip-path:polygon(0 0,100% 0,100% 80%,50% 100%,0 80%);background:linear-gradient(#f9e3a2,#947135);color:#17212a;font-size:13px;text-shadow:none}.card-kind{position:absolute;z-index:2;left:7px;right:7px;bottom:10px;color:#ffedb5;font-size:7px;letter-spacing:1.1px;padding:5px 3px;background:#081524ce;text-align:center;border:1px solid #d8c18c60}.card-body{padding:15px 14px;min-width:0}.collectible h3{font-family:Georgia,serif;font-size:20px;line-height:1.1;color:#f9ebca}.collectible p{font-size:11px;line-height:1.45;color:#bed0da;min-height:31px}.card-upgrade{font-size:8px;line-height:1.5;letter-spacing:.35px;color:#e8d29a;border-top:1px solid #bdac7950;border-bottom:1px solid #bdac7930;padding:7px 0;margin:9px 0}.card-owner{font-size:10px;color:var(--dragon-color);display:flex;gap:6px;align-items:center}.card-owner i{width:5px;height:5px;transform:rotate(45deg)}.draft-help{font-size:11px;line-height:1.5;color:#91a8b7;text-align:center}.build-roster{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:17px 0}.build-sheet{padding:14px;border:1px solid #aab1a45c;border-top:2px solid var(--dragon-color);border-radius:6px;background:linear-gradient(130deg,#193046,#0b1729)}.build-sheet h3{font-family:Georgia,serif;font-size:20px;color:var(--dragon-color)}.build-stats{font-size:9px;color:#ded3ad;margin:10px 0}.build-list{display:flex;flex-wrap:wrap;gap:6px}.build-list>span{padding:5px 8px;background:#071727a0;border:1px solid #7d9aab40;border-radius:4px;font-size:10px}.build-list b{color:var(--dragon-color);margin-left:5px}.hero{box-shadow:0 18px 50px #0008,inset 0 0 0 1px #d8c88422}.hero:before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at 75% 50%,#8bf7df18,transparent 70%);animation:citadelGlow 7s ease-in-out infinite}.panel{border-color:#81958e60}.dragon-stage{background-image:radial-gradient(ellipse at 50% 75%,color-mix(in srgb,var(--glow) 25%,transparent),transparent 70%),linear-gradient(150deg,#18263c,#081726)}@keyframes citadelGlow{50%{opacity:.25}}
@media(min-width:700px){.premium-cards{grid-template-columns:repeat(3,1fr)}.collectible.upgrade{display:flex;flex-direction:column;text-align:left}.card-art{width:100%;height:154px;min-height:154px}.card-art:after{background:linear-gradient(0deg,#152238,transparent 65%)}.card-body{width:100%;flex:1;padding:13px}.card-kind{bottom:9px;left:42px;right:42px}.collectible h3{font-size:21px}.collectible p{font-size:12px;min-height:51px}}
@media(orientation:landscape) and (max-height:600px){#overlay{padding:14px 18px}.draft-heading h2{font-size:23px}.draft-heading .eyebrow{font-size:8px}.recipient-tabs{margin:9px 0;gap:7px}.recipient{min-height:45px;padding:3px 7px}.recipient .dragon-portrait{width:36px;height:36px}.recipient b{font-size:10px}.recipient small{font-size:7px}.premium-cards{margin:9px 0;gap:11px}.collectible.upgrade{min-height:237px}.card-art{height:98px;min-height:98px}.card-body{padding:9px 12px}.collectible h3{font-size:19px}.collectible p{font-size:10px;min-height:28px;margin-top:5px}.card-upgrade{font-size:8px;padding:5px 0;margin:6px 0}.card-owner{font-size:9px}.draft-help{font-size:9px}.squad-hud{margin-top:6px;max-width:500px}.squad-chip{min-height:43px!important;padding:2px 5px!important}.squad-chip .dragon-portrait{height:32px;width:32px}.chip-info b{font-size:8px}.chip-info small{font-size:7px}.chip-info .bar{margin:3px 0}.boss-hud{margin-top:4px}#active-cards{top:115px;max-width:150px}.hud-left{width:350px}}
@media(max-width:450px){.recipient{display:block;text-align:center;padding:5px 2px}.recipient .dragon-portrait{width:43px;height:40px}.recipient b{font-size:9px;max-width:76px;margin:auto}.recipient small{font-size:7px;letter-spacing:.2px}.draft-heading{display:block}.draft-heading h2{font-size:26px}.draft-heading .pill{margin-top:9px;display:inline-block}.modal{margin:1vh auto}.squad-chip{display:block;text-align:center;padding:3px!important}.squad-chip .dragon-portrait{width:33px;height:32px}.chip-info b{font-size:8px;max-width:90px;margin:auto}.chip-info small{font-size:6px}.chip-info .bar{margin:4px 2px}.squad-hud{gap:4px}.collectible.upgrade{grid-template-columns:95px minmax(0,1fr)}.card-body{padding:11px}.collectible h3{font-size:19px}.collectible p{font-size:10px}.build-roster{grid-template-columns:1fr}#active-cards{top:200px;max-width:145px}}

.card-art{background-image:var(--card-image);background-size:cover;background-position:center}

/* Direct atlas crop: works from Android file URLs without canvas export. */
.card-art{background:none;overflow:hidden;container-type:size}.card-illustration{position:absolute;width:max(100cqw,100cqh);height:max(100cqw,100cqh);left:50%;top:50%;transform:translate(-50%,-50%);background-image:url(card-art.png);background-size:400% 200%;background-position:var(--artx) var(--arty)}
@supports not (width:1cqw){.card-illustration{width:320px;height:320px}}
.mode-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mode-grid button{background:linear-gradient(140deg,#193c46,#101a2c);padding:13px 5px;min-width:0}.mode-grid b{font:26px Georgia,serif;color:#f7d991;display:block;margin-bottom:6px}.mode-grid span{font-size:10px}.mode-grid .sel{border-color:#e6c17c;box-shadow:inset 0 -2px #e6c17c}.mode-description{font-size:12px;line-height:1.6;color:#bccfd8;min-height:58px;margin:12px 0}.diffs button:disabled{opacity:.4;cursor:not-allowed}.load-error{color:#ffc49e;font-size:12px;line-height:1.5}

/* 0.5 arcade 3D art and interactive citadel */
.dragon-view,.dragon-portrait,.resident-dragon{background-image:var(--dragon-atlas,url(dragons-arcade.png));background-size:800% 400%;background-position:100% var(--dy);animation:none}.dragon-view{animation:arcadeHover 3.4s ease-in-out infinite}.castle-art{background-image:url(citadel-hub.png)}
@keyframes arcadeHover{50%{transform:translateY(-6px) rotate(1deg)}}
.fortress-heading{display:flex;gap:16px;align-items:center;justify-content:space-between;margin:24px 0}.fortress-heading h1{font:clamp(28px,4vw,48px) Georgia,serif;margin:8px 0}.fortress-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px}.citadel-scroll{overflow:auto;border:1px solid #cbaa6255;border-radius:16px;box-shadow:0 20px 50px #0008}.citadel-diorama{position:relative;min-width:650px;aspect-ratio:2/1;overflow:hidden;background:#436478}.citadel-background{width:100%;height:100%;display:block}.citadel-shimmer{position:absolute;inset:0;background:radial-gradient(ellipse at 55% 70%,#62dbfa20,transparent 70%);pointer-events:none;animation:citadelGlow 6s infinite}.room-pin{position:absolute;transform:translate(-50%,-50%);background:transparent;border:0;padding:0;min-height:44px;min-width:44px;z-index:3;display:flex;align-items:center;flex-direction:column;filter:drop-shadow(0 3px 5px #05172a)}.pin-mark{display:grid;place-items:center;background:#112b42e8;border:1px solid #eaca87;color:#fff0c1;width:29px;height:29px;transform:rotate(45deg);font:bold 13px Georgia,serif;border-radius:8px}.pin-label{font-size:9px;letter-spacing:.3px;color:#fff5d8;background:#071727e8;border:1px solid #dcca9860;padding:5px 7px;border-radius:4px;margin-top:5px;white-space:nowrap}.room-pin.selected .pin-mark{background:#3a665e;box-shadow:0 0 20px #c5ffeeaa}.room-pin.selected .pin-label{border-color:#ffe2a0;background:#193e43}.room-pin.future .pin-mark{border-style:dashed;background:#17223599}.room-pin.future .pin-label{color:#cbd4de}.citadel-level{position:absolute;bottom:13px;left:14px;padding:6px 10px;background:#0b1c2bcc;border:1px solid #e4c87b70;font-size:10px;letter-spacing:2px;color:#ffe3a3}.resident-dragon{position:absolute;width:68px;height:68px;transform:translate(-50%,-50%);filter:drop-shadow(0 5px 3px #06132277);pointer-events:none;z-index:2;animation:residentFloat 3s ease-in-out infinite}@keyframes residentFloat{50%{margin-top:-5px}}.citadel-hint{font-size:10px;color:#93b7bd;line-height:1.5;margin:10px 2px 15px}.room-menu{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.room-menu button{display:flex;align-items:center;gap:8px;padding:11px;text-align:left;background:linear-gradient(135deg,#1c3846,#0b1c2a);min-width:0}.room-menu .art-icon{width:29px;height:29px;flex-shrink:0}.room-menu b{display:block;font-size:11px}.room-menu small{display:block;font-size:9px;margin-top:5px;color:#8eb2be}.room-menu .future{border-style:dashed;opacity:.7}.room-detail{padding:21px}.room-heading{display:flex;align-items:center;gap:12px}.room-heading h2{font:25px Georgia,serif;margin:7px 0}.room-heading .eyebrow{font-size:8px}.room-bonus{font-size:14px;color:#b1ffe2;letter-spacing:.6px;padding:12px 0 19px}.room-detail .desc{font-size:12px;line-height:1.7}.future-room{padding:17px;text-align:center;background:#0a2039;border:1px dashed #758c9e;font-size:12px;color:#e9d5a7;line-height:1.8}.future-room small{color:#a9bbc6;font-size:10px}.citadel-summary{margin-top:15px;padding:18px}.citadel-summary>div:not(.eyebrow){display:flex;align-items:center;justify-content:space-between;margin-top:15px}.citadel-summary b{font:24px Georgia,serif;color:#e6d598}.citadel-summary span{font-size:11px;color:#9bb6c1}.nest-roster{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.nest-slot{padding:7px 4px;display:flex;gap:5px;align-items:center;text-align:left;background:#0e2834;min-width:0}.nest-slot .dragon-portrait{width:39px;height:39px}.nest-slot b{font-size:9px;display:block}.nest-slot small{display:block;font-size:9px;color:#a5c0c8;margin-top:4px}.nest-slot.closed{opacity:.5;border-style:dashed}.nest-egg{font-size:29px;width:30px;text-align:center;color:#dbc37c}.fortress-settings{margin-top:22px;padding:20px}.audio-settings{display:grid;gap:12px;margin-top:16px}.audio-settings label{display:grid;grid-template-columns:85px 1fr 36px;align-items:center;gap:8px;font-size:12px}.audio-settings input{width:100%;accent-color:#e9cd85}.audio-settings .sound-toggle{max-width:210px}
@media(max-width:1000px){.fortress-layout{grid-template-columns:minmax(0,1fr)}.fortress-layout aside{display:grid;grid-template-columns:1.2fr 1fr;gap:15px}.citadel-summary{margin-top:0}}@media(max-width:600px){.fortress-heading{display:block}.fortress-heading .pill{display:inline-block;margin-top:5px}.fortress-layout aside{display:block}.citadel-summary{margin-top:15px}.room-menu{grid-template-columns:1fr 1fr}.citadel-diorama{min-width:760px}.fortress-heading h1{font-size:32px}.room-pin .pin-label{font-size:10px}.room-menu button{min-height:65px}}

.audio-settings label{grid-template-columns:140px minmax(0,1fr)}
/* 0.7 — engraved fantasy typography and expedition chronicles. */
@font-face{font-family:DragonDisplay;src:url(fonts/DragonDisplay.ttf) format('truetype');font-weight:700;font-style:normal;font-display:swap}
:root{--display:DragonDisplay,Georgia,serif;--trim:#d6b878;--ink:#0b1928}
h1,h2,.map h3,.upgrade h3,.room-heading h2,.fortress-heading h1,.dragon-info h2{font-family:var(--display);font-weight:700;letter-spacing:-.035em;text-wrap:balance}
h1{color:#ffe7b4;text-shadow:0 2px 0 #382713,0 5px 24px #0009}h2{color:#f1dfb8;line-height:1.22}h3{letter-spacing:.015em}.eyebrow{color:#dfc790;font-size:10px;letter-spacing:.19em}.desc{line-height:1.7}.muted{color:#adbec7}.brand .eyebrow{letter-spacing:.15em}.hero-copy h1{font-size:clamp(31px,4.4vw,49px)}
.panel,.build-sheet{position:relative;border:1px solid #c5ab6957;border-radius:12px;background:radial-gradient(ellipse at top left,#40617626,transparent 65%),linear-gradient(140deg,#1b2e40f5,#0b1626fa);box-shadow:0 12px 30px #0005,inset 0 0 0 3px #091827,inset 0 0 0 4px #d4b46a16}
.panel:after,.build-sheet:after{content:'';position:absolute;inset:7px;pointer-events:none;background:linear-gradient(var(--trim),var(--trim)) left top/17px 1px no-repeat,linear-gradient(var(--trim),var(--trim)) left top/1px 17px no-repeat,linear-gradient(var(--trim),var(--trim)) right bottom/17px 1px no-repeat,linear-gradient(var(--trim),var(--trim)) right bottom/1px 17px no-repeat;opacity:.55;border-radius:3px}
button:not(.room-pin){transition:border-color .18s,box-shadow .18s,filter .18s}button:focus-visible,input:focus-visible{outline:2px solid #b5ffed;outline-offset:3px}button.sel{box-shadow:inset 0 0 0 2px #edd39118,0 0 16px #d9c48913}.pill,.tag{border-color:#ccb27466;background:linear-gradient(145deg,#263b47e8,#0c1c2be8);box-shadow:inset 0 1px #fff1}.map{border-radius:10px}.map.sel{border-color:#e0be78;box-shadow:0 0 0 1px #d5ad5740,inset 0 0 18px #f3cd7420}.collectible{border-radius:12px!important;box-shadow:inset 0 0 0 3px #101c2c,0 8px 22px #0007!important}.collectible .card-body{border-top:1px solid #b99e5c5e}.collectible h3{font-size:18px}.card-rank{box-shadow:0 0 0 2px #b9985366,0 4px 12px #0008}.card-upgrade{letter-spacing:.04em}.topline{border-image:linear-gradient(90deg,#d8b66b88,transparent) 1}
#overlay{padding:20px 14px;background:radial-gradient(ellipse at 50% 0,#30495ceb,#030914f5 80%);backdrop-filter:blur(9px)}.modal{position:relative;padding:26px;max-width:880px;margin:2vh auto;border:1px solid #cab27970;border-radius:15px;background:linear-gradient(145deg,#1c2e40f5,#091424fa);box-shadow:0 30px 100px #000a,inset 0 0 0 4px #0a1625,inset 0 0 0 5px #d0af6328}.modal:before{content:'';position:absolute;top:-1px;left:15%;right:15%;height:2px;background:linear-gradient(90deg,transparent,#ffe0a2,transparent);pointer-events:none}.modal.report-modal{padding:0;max-width:780px;overflow:hidden;border-color:#d4b16a99}.modal>h2{padding-bottom:14px;border-bottom:1px solid #cbb17745}.draft-heading h2{font-size:clamp(22px,3.4vw,32px)}
.report-hero{position:relative;isolation:isolate;text-align:center;padding:26px 20px 22px;border-bottom:1px solid #bea56566;overflow:hidden;background:#122637}.report-art{position:absolute;z-index:-1;inset:0;background:linear-gradient(0deg,#102032 0%,#10203299 65%,#102032a0),url(citadel-hub.png) 50% 34%/cover;opacity:.8}.return .report-art{filter:saturate(.55)}.report-hero:after{content:'';position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse at 50% 40%,#f4bd4633,transparent 62%)}.return .report-hero:after{background:radial-gradient(ellipse at 50% 40%,#92d5f722,transparent 62%)}.report-crest{width:80px;height:80px;margin:0 auto 14px;display:grid;place-items:center;border:1px solid #e1c486;border-radius:20px;background:linear-gradient(140deg,#42566b,#142433);box-shadow:0 0 0 4px #d6b47715,0 0 0 5px #d6b47750,0 0 50px #edc17022,inset 0 1px #fff5}.report-crest .art-icon{width:64px;height:64px}.report-hero h1{font-size:clamp(28px,5vw,46px);line-height:1.15;margin:12px 0;color:#ffe9bd;letter-spacing:-.035em}.return .report-hero h1{color:#dcecff}.report-hero>p{font-size:12px;color:#c9d7df}.report-hero>p span{padding:0 8px;color:#ddc185}.rune-divider{display:flex;align-items:center;justify-content:center;gap:13px;color:#e5c580;margin:15px auto;max-width:300px;font-size:9px}.rune-divider i{height:1px;flex:1;background:linear-gradient(90deg,transparent,#d9b975)}.rune-divider i:last-child{transform:scaleX(-1)}.report-content{padding:22px 26px 26px}.report-message{text-align:center;max-width:570px;margin:0 auto 19px;line-height:1.65;font-size:13px;color:#bcd0db}.report-loot{display:grid;grid-template-columns:1fr 1fr;gap:12px}.loot-tile{display:flex;gap:15px;align-items:center;padding:19px;border:1px solid #d4b57566;border-radius:10px;background:radial-gradient(ellipse at left,#c5a3541c,transparent),#122434;box-shadow:inset 0 0 0 3px #091823,inset 0 0 0 4px #c2a36620}.loot-seal{color:#f9d28b;font-size:38px;text-shadow:0 0 20px #eabe5266}.loot-tile small,.report-stat-grid small{display:block;font-size:9px;letter-spacing:.09em;color:#bbced3}.loot-tile strong{display:block;color:#ffe0a0;font-family:var(--display);font-size:clamp(24px,4vw,36px);margin-top:6px;overflow-wrap:anywhere}.essence-loot{border-color:#76c6d76b;background:radial-gradient(ellipse at left,#5db7c822,transparent),#122434}.essence-loot strong,.essence-loot .loot-seal{color:#a7efff}.report-multiplier{text-align:center;color:#e0c284;font-size:11px;margin:13px 0 22px;letter-spacing:.1em}.report-multiplier span{display:block;color:#98aebb;letter-spacing:0;font-size:10px;margin-top:5px}.report-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #71849640;border-radius:9px;background:#0a1a29}.report-stat-grid>div{text-align:center;padding:15px 6px}.report-stat-grid>div+div{border-left:1px solid #71849630}.report-stat-grid b{display:block;font-size:22px;font-variant-numeric:tabular-nums;color:#e5eff5;margin-top:8px}.report-section-label{display:flex;gap:12px;align-items:center;margin:23px 0 10px;font-size:9px;letter-spacing:.15em;color:#d7bd87}.report-section-label i{height:1px;flex:1;background:linear-gradient(90deg,#b99c5866,transparent)}.report-dragons{display:grid;gap:7px}.report-dragon{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid #6b879631;background:#13273780;border-radius:8px}.report-dragon.champion{border-color:#d3b87870;background:linear-gradient(90deg,#8e74471f,#13273780)}.report-dragon .dragon-portrait{width:48px;height:48px;flex-shrink:0}.report-dragon b{font-size:13px;overflow-wrap:anywhere}.report-dragon small{display:block;font-size:9px;color:#9db7c5;margin-top:5px}.report-dragon.champion>div>small{color:#dec58c}.dragon-result{margin-left:auto;text-align:right;flex-shrink:0}.dragon-result strong{font-size:17px;color:#e2d4ae;font-variant-numeric:tabular-nums}.report-mode{text-align:center;font-size:10px;color:#8fa8b7;margin:19px 0 10px}.unlock-banner{display:flex;justify-content:center;align-items:center;gap:12px;padding:9px 14px;border:1px solid #8cd8c76b;border-radius:8px;background:linear-gradient(90deg,#204f4520,#327d5733,#204f4520);margin-bottom:18px}.unlock-banner .art-icon{width:40px;height:40px}.unlock-banner small{display:block;font-size:9px;letter-spacing:.1em;color:#a4dbc9}.unlock-banner strong{display:block;font-family:var(--display);font-size:20px;color:#d4ffe9;margin-top:4px}.record-ribbon{text-align:center;padding:12px;margin-bottom:17px;border-block:1px solid #a28bd64a;color:#b6a6d4;font-size:10px;letter-spacing:.1em}.record-ribbon b{color:#e3d4ff;font-size:19px;margin-left:12px}.report-continue{margin-top:4px}.battle-report{animation:reportReveal .35s ease-out}@keyframes reportReveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:480px){.modal{padding:19px 13px;margin:8px auto}.report-content{padding:19px 14px}.report-hero{padding:23px 12px 20px}.report-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-stat-grid>div:nth-child(3){border-left:0}.report-stat-grid>div:nth-child(n+3){border-top:1px solid #71849630}.loot-tile{gap:8px;padding:16px 11px}.loot-seal{font-size:28px}.loot-tile small{font-size:8px}.report-dragon{gap:6px;padding:8px}.report-dragon .dragon-portrait{width:38px;height:38px}.dragon-result strong{font-size:15px}.dragon-result small{font-size:8px}.report-hero h1{font-size:28px}.draft-heading{gap:12px;flex-wrap:wrap}}
@media(orientation:landscape) and (max-height:600px){#overlay{padding:12px 18px}.modal{margin:0 auto}.report-hero{padding:18px 20px}.report-crest{width:56px;height:56px;margin-bottom:9px}.report-crest .art-icon{width:44px;height:44px}.report-hero h1{font-size:33px;margin:8px 0}.rune-divider{margin:9px auto}.report-content{padding:18px 24px}.report-dragons{grid-template-columns:repeat(2,minmax(0,1fr))}.report-dragon{flex-wrap:wrap}.dragon-result{flex-shrink:1}}
@media(prefers-reduced-motion:reduce){.battle-report{animation:none}}
.report-dragon>div:not(.dragon-result){min-width:0;flex:1}.report-dragon b{display:block;overflow-wrap:anywhere}.dragon-result{max-width:52%}
/* 0.8 — permanent treasury and individual dragon dossiers */
.topline{position:sticky;top:0;z-index:18;background:linear-gradient(130deg,#142a3bf7,#071321fc);padding:12px 14px;margin-top:0;border:1px solid #b7985955;border-radius:9px;box-shadow:0 6px 24px #0009;backdrop-filter:blur(10px)}.wallet{gap:18px;padding:8px 13px;background:#071520;border-color:#b99b565e}.wallet span{display:flex;flex-direction:column;gap:4px}.wallet small{font-size:8px;letter-spacing:.12em;white-space:nowrap}.wallet b{font-size:16px;font-variant-numeric:tabular-nums;line-height:1.1}.wallet span+span{color:#a3edff}#home{scroll-padding-top:100px}.dragon-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.dragon-stats.compact{grid-template-columns:repeat(2,minmax(0,1fr));margin:15px 0 10px}.dragon-stat{padding:13px 11px;background:linear-gradient(135deg,#23405166,#081725);border:1px solid #7794a63d;border-radius:7px;min-width:0}.dragon-stat small{display:block;font-size:8px;letter-spacing:.07em;color:#adc2ce;line-height:1.5}.dragon-stat strong{display:block;font-size:18px;font-variant-numeric:tabular-nums;margin-top:7px;color:#f3e0ae;overflow-wrap:anywhere}.dragon-stat em{display:block;font-size:9px;font-style:normal;color:#a6bdc9;margin-top:4px}.health-stat strong{color:#a6f4c5}.attack-stat strong{color:#ffc391}.stats-open{margin-bottom:10px;border-color:#a8c4ce66;color:#dcece9;background:linear-gradient(135deg,#294855,#102538);font-size:11px;letter-spacing:.08em}.dragon-stat-sheet{padding:22px;border:1px solid #a7c3c350;border-radius:12px;background:radial-gradient(ellipse at top left,#2c5b6133,transparent 60%),#0c1e2b;margin:15px 0;box-shadow:inset 0 0 0 4px #071522,inset 0 0 0 5px #a8beac12}.stat-identity{display:flex;align-items:center;gap:16px;padding-bottom:17px;border-bottom:1px solid #839eae38}.stat-identity>div:last-child{min-width:0}.stat-identity h2{margin:6px 0;overflow-wrap:anywhere}.stat-identity p{font-size:11px;color:#a9c4cd}.stat-portrait{width:86px;height:86px;flex-shrink:0;filter:drop-shadow(0 5px 10px #0008)}.stat-vital{padding:17px 0 6px}.stat-vital>div:first-child{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:9px}.stat-vital b{font-size:15px;color:#c2f7d7;font-variant-numeric:tabular-nums}.stat-vital span{font-size:8px;letter-spacing:.09em;color:#9ab2bf}.stat-vital .bar{height:8px}.shield-readout{font-size:11px;color:#a7dfff;margin-top:9px}.stats-section-title{font-size:9px;letter-spacing:.13em;color:#e1c797;margin:20px 0 10px}.stat-performance{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:16px 0;margin-top:16px;border-block:1px solid #a3bba72b}.stat-performance span{font-size:9px;color:#a4bdc5}.stat-performance b{display:block;font-size:21px;color:#f6e0ad;margin-top:6px}.stats-explainer{font-size:11px;line-height:1.65;color:#9db6c2;margin-top:15px}.full-stat-roster{display:grid;gap:5px}.purchase-budget{border:1px solid #7492a33d;border-radius:7px;background:#081824;padding:10px;margin:13px 0 6px}.purchase-budget>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.purchase-budget>div+div{border-top:1px solid #9abfc322;margin-top:9px;padding-top:9px}.purchase-budget span{font-size:9px;line-height:1.6;color:#9cb4c2}.purchase-budget b{display:block;font-size:13px;font-variant-numeric:tabular-nums;color:#e2d4ab;overflow-wrap:anywhere}.purchase-budget .affordable b{color:#a4eec0}.purchase-budget .shortfall b{color:#ffad9e}
@media(max-width:520px){.topline{padding:9px 10px;gap:7px}.topline .brand-mark{display:none}.brand .eyebrow{font-size:9px;letter-spacing:.05em}.brand .muted{font-size:7px}.wallet{gap:11px;padding:7px 9px}.wallet b{font-size:14px}.wallet small{font-size:7px}.dragon-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dragon-stat-sheet{padding:16px 12px}.stat-portrait{width:65px;height:65px}.stat-identity{gap:9px}.stat-identity h2{font-size:23px}.stat-identity .eyebrow{font-size:8px}.dragon-stat strong{font-size:17px}}
@media(orientation:landscape) and (max-height:600px){.topline{padding:6px 12px}.wallet{padding:5px 10px}.wallet span{flex-direction:row;align-items:center;gap:8px}.wallet b{font-size:14px}}
/* 0.9: one leader and up to seven dragons */
.hero-leader{display:flex;gap:18px;padding:18px;background:linear-gradient(120deg,#122e39,#172035);border:1px solid #b89c6170;border-radius:18px;margin:16px 0;align-items:center}.hero-leader img{width:110px;height:130px;object-fit:cover;border:1px solid #bca365;border-radius:14px}.hero-leader h2{font-size:21px;margin:5px 0}.hero-leader p,.mastery-track p{font-size:13px;line-height:1.5;color:#bed1da}.mastery-track{padding:18px;background:#101e2be6;border:1px solid #527174;border-radius:14px}.mastery-track div{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.mastery-track span{border:1px solid #51606e;border-radius:7px;padding:7px;font-size:11px;color:#90a5b2}.mastery-track .earned{color:#b1ffda;border-color:#6ecc9a}.mastery-track small{color:#93a7b4;font-size:11px}.hero-health{display:flex;align-items:center;gap:9px;padding:7px 10px;background:#0b202de6;border:1px solid #73cdb84d;border-radius:9px;margin:6px 0;font-size:11px}.hero-health .bar{flex:1;height:6px}.hero-health small{color:#a7eadd}.squad-hud{display:grid!important;grid-auto-flow:column;grid-auto-columns:minmax(130px,1fr);grid-template-columns:none!important;overflow-x:auto;max-width:100%;padding-bottom:4px;pointer-events:auto}.squad-chip{min-width:130px}.mastery-banner{border:1px solid #f4d57f;background:#293b38;color:#fff0ac;padding:18px;text-align:center;font-weight:bold;border-radius:12px;margin-bottom:12px}.swatches{flex-wrap:wrap}.hero-leader+p{margin-top:8px}@media(max-width:500px){.hero-leader{padding:12px;gap:12px}.hero-leader img{width:82px;height:110px}.hero-leader h2{font-size:18px}.hero-health{gap:6px;font-size:10px}.hero-health small{display:none}}
.hero-equipment{display:grid;grid-template-columns:minmax(230px,.8fr) 1.5fr;gap:18px}.hero-paperdoll{text-align:center;align-self:start}.elf-model{height:330px;max-width:330px;margin:auto;background-image:url(hero-elf.png);background-size:400% 200%;background-position:66.6667% 100%;background-repeat:no-repeat}.equipment-slots{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gear-options,.hero-skill-options{display:grid;gap:8px}.gear-options button,.hero-skill-options button{text-align:left;padding:11px}.gear-options small,.hero-skill-options small{display:block;color:#b3c8d5;font-size:11px;margin-top:5px}.hero-skill-options{grid-template-columns:repeat(4,1fr)}.hero-xp-row{display:flex;align-items:center;gap:8px;padding:2px 8px 5px;color:#d4b7ff;font-size:10px}.hero-xp-row .bar{height:4px;flex:1}.nav{grid-template-columns:repeat(4,1fr)}@media(max-width:650px){.hero-equipment{grid-template-columns:1fr}.equipment-slots,.hero-skill-options{grid-template-columns:1fr 1fr}.elf-model{height:280px;width:280px}}
/* 0.10 RPG armory and real equipment inventory */
.rpg-armory{display:grid;grid-template-columns:minmax(340px,.9fr) minmax(380px,1.15fr);gap:20px;align-items:start}.paperdoll-scene{position:relative;min-height:590px;border:1px solid #c5a96680;border-radius:20px;overflow:hidden;background:linear-gradient(0deg,#07121bea,transparent 65%),url(armory-hall.png) center/cover;box-shadow:inset 0 0 50px #040d17,0 15px 40px #0008}.paperdoll-scene canvas{display:block;width:100%;height:510px;object-fit:contain}.paperdoll-slots{position:absolute;inset:0;pointer-events:none;z-index:2}.equip-slot{position:absolute;width:76px;height:89px;padding:3px;background:linear-gradient(145deg,#263540ef,#08131bf5);border:1px solid var(--rarity);box-shadow:0 0 12px #000b,inset 0 0 12px #c6a76c12;pointer-events:auto}.equip-slot small{display:block;font-size:9px;color:#eddfbf;white-space:nowrap}.slot-0,.slot-1,.slot-2{left:12px}.slot-3,.slot-4,.slot-5{right:12px}.slot-0,.slot-3{top:60px}.slot-1,.slot-4{top:175px}.slot-2,.slot-5{top:290px}.item-art{display:block;width:64px;height:64px;background:url(equipment-icons-v22.png) var(--item-x) var(--item-y)/800% 400% no-repeat;margin:auto}.turn-model{position:absolute;left:50%;transform:translateX(-50%);bottom:95px;background:#0a1d29da;font-size:11px}.paperdoll-caption{text-align:center;padding:0 10px 20px;color:#e4d7b9}.paperdoll-caption h2{margin:0 0 8px}.paperdoll-caption span{font-size:11px}.inventory-panel{background:linear-gradient(145deg,#132434f5,#0b1424f5);border:1px solid #b99e6166}.inventory-filters{display:flex;flex-wrap:wrap;gap:5px;margin:14px 0}.inventory-filters button,.inventory-filters select{padding:8px;font-size:11px;background:#172b3b;color:#d6e2e9;border:1px solid #44596a;border-radius:6px}.inventory-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;min-height:160px;max-height:400px;overflow:auto;padding:4px}.inventory-item{position:relative;aspect-ratio:1;padding:0;background:radial-gradient(ellipse at bottom,#263b4f,#09131f);border:1px solid var(--rarity);border-radius:9px;min-width:0}.inventory-item .item-art{width:100%;height:100%;position:absolute;inset:0}.inventory-item.selected{outline:2px solid #ffe4a6;outline-offset:2px}.inventory-item b{position:absolute;bottom:2px;right:5px;color:#fff2c5;font-size:11px;text-shadow:0 1px 3px #000}.inventory-item>span:last-child{position:absolute;top:3px;left:5px;color:#b5ffd7;font-size:12px}.inventory-pager{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:15px 0;font-size:12px}.inventory-pager button{font-size:10px;padding:9px}.item-detail{border-top:1px solid var(--rarity);padding-top:14px}.detail-title{display:flex;align-items:center;gap:12px}.detail-title .item-art{flex-shrink:0;width:85px;height:85px;margin:0}.detail-title small{color:var(--rarity);font-size:10px}.detail-title h3{font-size:19px;margin:6px 0}.detail-title span,.item-detail>small{color:#9bb1c3;font-size:11px}.item-comparison{margin:12px 0;display:grid;gap:6px;font-size:13px}.item-comparison>div{display:flex;justify-content:space-between;padding:7px;background:#08152088;border-radius:5px}.better{color:#89edb5}.worse{color:#ff9d9d}.item-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}.item-actions button{font-size:11px;padding:12px}.drop-table{overflow:auto;font-size:11px}.drop-table table{border-collapse:collapse;width:100%;margin:14px 0}.drop-table th,.drop-table td{padding:9px;border:1px solid #415568;text-align:center;white-space:nowrap}.loot-report{padding:18px;border:1px solid #b79b66;border-radius:14px;margin:15px 0;background:#0b1b2b}.loot-report>div{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.loot-report>div>span{border:1px solid var(--rarity);background:#122739;padding:6px;border-radius:8px}.loot-report small{display:block;font-size:9px;color:var(--rarity)}.topline{border-bottom:1px solid #c9a66344}.panel{box-shadow:0 12px 28px #0003}.page-heading h1{text-shadow:0 2px 14px #d9c28530}button.sel{box-shadow:inset 0 0 18px #e7c87516;border-color:#dec58b}.rpg-armory button:hover{filter:brightness(1.15)}@media(max-width:850px){.rpg-armory{grid-template-columns:1fr}.paperdoll-scene{min-height:520px}.paperdoll-scene canvas{height:440px}.paperdoll-caption{padding-bottom:18px}.inventory-grid{grid-template-columns:repeat(6,1fr)}}@media(max-width:400px){.equip-slot{width:64px;height:79px}.equip-slot .item-art{width:54px;height:54px}.inventory-grid{grid-template-columns:repeat(5,1fr)}.detail-title h3{font-size:16px}}
.castle-art{background-image:url(menu-epic.png);background-position:62% center;background-size:cover}.expedition-intro .hero{height:365px}.hero-copy{max-width:65%;text-shadow:0 2px 8px #000}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#03111ccb,transparent 80%);pointer-events:none;z-index:0}.hero-copy,.hero-stats,.hero>.tag{z-index:1}.screen[data-tab="hero"]{background:linear-gradient(#081320ed,#060e1afa),url(armory-hall.png) center/cover fixed}
/* 0.11: edge-mounted landscape HUD. Middle of battlefield stays unobstructed. */
@media(orientation:landscape){
 #hud{padding:8px max(8px,env(safe-area-inset-right)) 0 max(8px,env(safe-area-inset-left));background:none;bottom:0;pointer-events:none}
 .hud-top{height:40px;align-items:flex-start}
 .hud-left{width:min(32vw,285px);padding:4px 7px;background:#071523bc;border-radius:8px}
 #hud .hud-left .eyebrow{font-size:8px;letter-spacing:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .hud-left>.muted{font-size:8px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .hud-left>.xp{height:3px;margin-top:3px}
 .hud-stats{margin-top:3px;font-size:8px;gap:6px;white-space:nowrap}
 .hud-stats>span:first-child{display:none}
 #hud .hud-actions button{width:40px;height:40px;min-height:40px;padding:4px;background:#071523c9}
 #hud .hero-health{position:absolute;top:69px;left:max(8px,env(safe-area-inset-left));width:144px;margin:0;padding:5px 6px;display:grid;grid-template-columns:1fr auto;gap:4px;font-size:9px;background:#071523bd}
 .hero-health>b{font-size:9px}.hero-health>.bar{grid-column:1 / -1;grid-row:2;height:4px}.hero-health>small{display:none}
 #hud .hero-xp-row{position:absolute;top:111px;left:max(8px,env(safe-area-inset-left));width:144px;padding:0 4px;display:block;font-size:8px;background:#07152399;border-radius:4px}
 .hero-xp-row small{font-size:8px}.hero-xp-row .bar{display:block;height:3px;margin:3px 0}
 #hud .squad-hud{position:absolute;left:max(8px,env(safe-area-inset-left));top:140px;bottom:61px;width:144px;max-width:144px;margin:0;padding:0 2px 0 0;display:flex!important;flex-direction:column;gap:4px;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;overscroll-behavior:contain;pointer-events:auto}
 #hud .squad-chip{width:140px;max-width:140px;min-width:0;min-height:40px!important;height:40px;flex:0 0 40px;padding:2px 4px!important;display:flex;text-align:left;background:#071523b8!important}
 .squad-chip .dragon-portrait{width:30px;height:32px}.chip-info b{font-size:8px}.chip-info small{font-size:7px}.chip-info .bar{height:4px;margin:3px 0}
 #hud .boss-hud{position:absolute;top:8px;left:50%;transform:translateX(-50%);width:min(25vw,270px);max-width:270px;margin:0;padding:3px 6px;background:#20101a99;border-radius:6px;text-align:center}
 .boss-hud span{font-size:7px;letter-spacing:.5px}.boss-hud .bar{height:5px;margin-top:2px}
 #active-cards{display:none}
 .bottom-hud{bottom:max(7px,env(safe-area-inset-bottom));left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));height:44px;align-items:center}
 .battle-info{display:flex;gap:7px;align-items:center}.magnet-badge{height:38px;padding:2px 6px 2px 2px;gap:4px;background:#071523ad}.magnet-badge .art-icon{width:29px;height:29px}.magnet-badge b{font-size:10px}.magnet-badge small{font-size:6px;max-width:63px;white-space:nowrap}
 .zoom-control{height:38px;padding:2px 4px;gap:3px;background:#071523ad}.zoom-control button{width:30px;min-height:32px}.zoom-control input{width:60px}.zoom-control .zoom-value{font-size:8px;width:26px}
 .skill-wrap{width:54px}.skill{width:42px;height:42px}.skill-caption{font-size:6px;max-height:14px;overflow:hidden}.skill-count{font-size:13px}.skill-cooldown{inset:4px}
 #magnet-flash{font-size:19px;top:34%}
}
@media(orientation:landscape) and (max-height:420px){
 #hud .hero-health{top:65px}#hud .hero-xp-row{top:104px}#hud .squad-hud{top:132px;bottom:55px}.hud-left{padding-top:3px;padding-bottom:3px}
}
@media(orientation:landscape) and (max-width:700px){.hud-left{width:32vw}.hud-stats>span:last-child{display:none}.zoom-control input{width:45px}.hud-actions{gap:3px}#hud .squad-hud,#hud .hero-health,#hud .hero-xp-row{width:126px}#hud .squad-chip{width:122px}.magnet-badge small{display:none}}

/* Full polygonal 3D world beneath the transparent annotation / gesture canvas. */
#world3d{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}#canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1;background:transparent}#game #hud,#game .bottom-hud,#game #active-cards{z-index:3}.preview-3d-error{padding:180px 50px;text-align:center;color:#edc994;font-size:13px;line-height:1.7}.paperdoll-scene canvas{background:transparent}

/* 0.14: fitted armory layout and restrained materials. */
.paperdoll-scene{background:linear-gradient(0deg,#060c15f5,transparent 48%),linear-gradient(90deg,#07121c88,#10223922 50%,#07121c88),url(armory-hall.png) center/cover;border-color:#9d885655;border-radius:16px;min-height:560px}
.paperdoll-scene canvas{position:relative;z-index:1;height:470px}
.paperdoll-slots{inset:0 0 110px}
.equip-slot{width:68px;height:80px;border-radius:9px;background:linear-gradient(150deg,#16232cdd,#070e17f2);box-shadow:0 4px 15px #0007,inset 0 0 0 3px #b69b5d0d;padding:4px}
.equip-slot .item-art{width:55px;height:55px;filter:saturate(.85)}
.equip-slot small{font-size:8px;font-weight:500;white-space:normal;line-height:1.15}
.slot-0,.slot-1,.slot-2{left:10px}.slot-3,.slot-4,.slot-5{right:10px}
.slot-0,.slot-3{top:55px}.slot-1,.slot-4{top:166px}.slot-2,.slot-5{top:277px}
.turn-model{z-index:3;bottom:84px;font-size:10px;padding:10px 18px;border-color:#bba77555;border-radius:30px;background:#091722e8}
.paperdoll-caption{position:relative;z-index:2;padding:9px 12px 22px;background:linear-gradient(0deg,#07101bee,transparent)}
.paperdoll-caption h2{font-size:25px;letter-spacing:.015em;margin:0 0 10px}.paperdoll-caption span{font-size:10px;color:#bfc5cb;line-height:1.7}
@media(max-width:600px) and (orientation:portrait){
 .nav{gap:0;padding-left:4px;padding-right:4px}.nav button{min-width:0;padding:6px 2px;flex-direction:column;gap:2px;font-size:9px;min-height:62px}.nav .art-icon{width:31px;height:31px}
 .rpg-armory{gap:15px}.paperdoll-scene{min-height:520px}.paperdoll-scene canvas{height:430px}.paperdoll-caption h2{font-size:23px}
 .equip-slot{width:61px;height:74px}.equip-slot .item-art{width:49px;height:49px}.equip-slot small{font-size:8px}
 .slot-0,.slot-3{top:46px}.slot-1,.slot-4{top:145px}.slot-2,.slot-5{top:244px}
 .turn-model{bottom:89px}.page-heading h1{font-size:36px}.page-heading .eyebrow{font-size:10px;letter-spacing:1.5px}.page-heading .pill{font-size:9px}
}

/* 0.15: spacious tablet layout, including 16:10 Galaxy Tab S8 class screens. */
button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid #a7f6df;outline-offset:3px}
.inventory-panel,.expedition-config,.expedition-intro,.paperdoll-scene{min-width:0}
.audio-settings{display:grid;gap:12px}.audio-settings input{max-width:45%;accent-color:var(--gold)}
@media(min-width:960px) and (min-height:600px) and (orientation:landscape){
 .screen{padding:20px 28px 32px 130px}
 #menu{max-width:1600px}
 .nav{inset:0 auto 0 0;width:102px;flex-direction:column;justify-content:center;gap:16px;padding:20px 8px;border-top:0;border-right:1px solid #9a82524d}
 .nav button{flex:0 0 auto;flex-direction:column;min-height:94px;gap:9px;font-size:12px;max-width:100%;padding:12px 4px;border-radius:10px}
 .nav .art-icon{width:48px;height:48px}.nav button.sel{box-shadow:inset 3px 0 var(--gold);background:linear-gradient(90deg,#a18c4933,transparent)}
 .topline{top:0;padding:14px 20px;margin-bottom:20px}.brand .eyebrow{font-size:13px}.wallet{font-size:15px;gap:22px}
 .page-heading{margin:18px 0}.page-heading h1{font-size:42px}.page-heading .eyebrow{font-size:11px}
 .rpg-armory{display:grid;grid-template-columns:minmax(340px,.9fr) minmax(410px,1.15fr);gap:24px;align-items:start}
 .paperdoll-scene{position:sticky;top:86px;min-height:590px}.paperdoll-scene canvas{height:clamp(490px,65vh,680px)}
 .paperdoll-slots{inset:0 0 110px}.equip-slot{width:72px;height:90px}.equip-slot .item-art{width:62px;height:62px}.equip-slot small{font-size:9px}
 .slot-0,.slot-3{top:12%}.slot-1,.slot-4{top:42%}.slot-2,.slot-5{top:72%}.turn-model{bottom:87px;min-height:44px;font-size:12px}
 .paperdoll-caption h2{font-size:27px}.paperdoll-caption span{font-size:12px}.inventory-panel{padding:22px}.inventory-grid{max-height:460px;gap:8px}
 .inventory-filters button,.inventory-filters select{min-height:44px}.inventory-pager button{min-height:44px}.hero-skill-options{grid-template-columns:repeat(3,1fr)}
 .expedition-layout{grid-template-columns:minmax(350px,1fr) minmax(360px,1fr);gap:28px}.expedition-intro .hero{height:480px}.hero-copy h1{font-size:48px}
 .map{height:140px}.map h3{font-size:19px}.map small{font-size:11px}.diffs button{font-size:12px;min-height:58px}
 .castle-layout{gap:28px}.citadel-view{min-height:620px}.build h3{font-size:19px}.build .desc{font-size:12px}.build .ornate{font-size:11px;min-height:60px}
 #hud{padding:14px}.hud-left{width:300px;padding:8px 10px}#hud .hud-left .eyebrow{font-size:10px}.hud-stats{font-size:10px;gap:12px}
 #hud .hero-health{top:94px;left:14px;width:174px;padding:7px;font-size:11px}#hud .hero-health>b{font-size:11px}
 #hud .hero-xp-row{top:143px;left:14px;width:174px;font-size:10px}#hud .hero-xp-row small{font-size:10px}
 #hud .squad-hud{top:177px;left:14px;width:174px;max-width:174px;bottom:90px;gap:6px}
 #hud .squad-chip{width:170px;max-width:170px;height:53px;min-height:53px!important;flex-basis:53px;padding:5px!important}
 .squad-chip .dragon-portrait{width:37px;height:40px}.chip-info b{font-size:10px;max-width:110px}.chip-info small{font-size:9px}
 #hud .hud-actions button{width:48px;height:48px}.bottom-hud{height:64px;bottom:14px;left:14px;right:14px}
 .magnet-badge,.zoom-control{height:48px}.magnet-badge b{font-size:12px}.magnet-badge small{font-size:8px;max-width:none}.zoom-control input{width:108px}.zoom-control button{min-height:44px;width:38px}
 .skill-wrap{width:78px}.skill{width:64px;height:64px}.skill-count{font-size:20px}.skill-caption{font-size:8px}.boss-hud span{font-size:10px}
 #toast{left:130px;bottom:24px}.modal{max-width:1040px;margin:4vh auto}.premium-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
}
@media(min-width:700px) and (orientation:portrait){
 .screen{padding:24px 30px 110px}.rpg-armory{grid-template-columns:1fr}.paperdoll-scene{min-height:700px}.paperdoll-scene canvas{height:610px}
 .paperdoll-slots{inset:0 0 110px}.equip-slot{width:92px;height:110px}.equip-slot .item-art{width:76px;height:76px}.equip-slot small{font-size:11px}
 .slot-0,.slot-1,.slot-2{left:26px}.slot-3,.slot-4,.slot-5{right:26px}.slot-0,.slot-3{top:70px}.slot-1,.slot-4{top:245px}.slot-2,.slot-5{top:420px}
 .inventory-grid{grid-template-columns:repeat(8,minmax(0,1fr));max-height:500px}.nav button{min-height:76px;font-size:13px}.nav .art-icon{width:46px;height:46px}
 .expedition-layout{gap:18px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.castle-layout{grid-template-columns:1fr}.citadel-view{min-height:520px}
}
@media(prefers-reduced-motion:reduce){button{transition:none}}
@media(min-width:960px) and (min-height:600px) and (orientation:landscape){
 .desc{font-size:14px}.muted{font-size:12px}.room-menu button{min-height:62px}.fortress-settings{padding:24px}.room-detail .desc{font-size:13px}.citadel-summary{font-size:13px}
 .inventory-panel .muted,.item-detail>small{font-size:12px}.hero-skill-options button{min-height:84px}.hero-skill-options small{font-size:12px;line-height:1.5}
}
/* 0.16: one shared 3D renderer supplies the visible dragon canvases. */
.dragon-stage{height:270px;display:block;isolation:isolate;background:radial-gradient(ellipse at 50% 75%,color-mix(in srgb,var(--glow) 15%,transparent),transparent 70%),linear-gradient(150deg,#142434,#09121f)}
.dragon-stage .collection-dragon{position:absolute;inset:0;width:100%;height:100%;z-index:2;touch-action:pan-y}
.dragon-stage>.tag{z-index:3;pointer-events:none}.dragon-stage>.stage-rune{z-index:0;bottom:26px;left:50%;transform:translateX(-50%);width:180px;height:38px}
.dragon-turn{position:absolute;z-index:3;bottom:10px;right:12px;min-height:38px;padding:7px 12px;border-radius:20px;background:#071621bd;font-size:10px;letter-spacing:.06em}
.dragon-growth-note{display:grid;gap:5px;margin:14px 0;padding:12px;border:1px solid #b69b4a40;border-radius:8px;background:#9d87300b;line-height:1.45}
.dragon-growth-note b{font-size:12px;color:#ecd298}.dragon-growth-note span{font-size:11px;color:#a8bdc3}
.nest-slot{min-height:104px}.nest-slot .nest-dragon{display:block;width:108px;height:82px;flex:0 0 108px;pointer-events:none;background:none}
canvas.resident-dragon.resident-3d{width:106px;height:84px;background:none;animation:none;pointer-events:none;filter:drop-shadow(0 6px 5px #0006)}
@media(min-width:960px) and (min-height:600px){.dragon-stage{height:290px}.dragon-turn{min-height:44px;font-size:12px}.dragon-growth-note span{font-size:12px}}
@media(max-width:400px){.nest-slot .nest-dragon{width:80px;height:66px;flex-basis:80px}.dragon-stage{height:250px}}
.nest-roster{grid-template-columns:1fr}.nest-slot>span{min-width:0}.nest-slot small{overflow-wrap:anywhere}.nest-slot.closed{min-height:64px}

/* 0.17: compact independent music / SFX buttons, 44 px touch targets. */
.hud-actions{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:flex-end;gap:4px;max-width:96px}.battle-audio{display:flex;gap:4px}.hud-actions button{width:44px;height:44px;min-height:44px;padding:10px}.audio-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.audio-toggle{color:#a6f0dc}.audio-toggle.is-muted{color:#b3b7be;background:#17202cdd}.muted-slash{stroke:#ffad97;stroke-width:2.5}.audio-toggle:focus-visible{outline:2px solid #ffe7a7;outline-offset:2px}
@media(orientation:landscape){.hud-actions{max-width:196px;flex-wrap:nowrap}.hud-top .hud-left{max-width:calc(100% - 202px)}}
.auto-equip-panel{margin:-5px 0 18px;max-width:660px}.auto-equip-panel p{color:#a9bfc4;font-size:12px;line-height:1.45;margin-top:7px}
#hud .hud-actions button{width:44px;height:44px;min-height:44px;padding:10px;flex:0 0 44px}

/* Graphics controls fit phones, landscape and tablets without widening overlays. */
.graphics-settings{display:grid;gap:12px;min-width:0}.graphics-presets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.graphics-presets button{min-width:0;padding:12px 4px;font-size:13px}.graphics-scale{display:grid;gap:10px}.graphics-scale span{display:flex;justify-content:space-between}.graphics-scale input{width:100%;min-width:0;padding:0;accent-color:#ddc58a}.graphics-adaptive{display:flex;gap:12px;align-items:center;font-size:13px;line-height:1.5}.graphics-adaptive input{width:22px;height:22px;flex:none;accent-color:#ddc58a}.graphics-settings .footnote{margin:0}.graphics-settings .row{flex-wrap:wrap;gap:8px}
@font-face{font-family:DragonLora;src:url(fonts/Lora.ttf) format('truetype');font-style:normal;font-weight:400 700;font-display:swap}
.collectible.upgrade,.collectible .card-body{text-align:center}
.collectible .card-body{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:15px 13px}
.collectible.upgrade h3{font-family:DragonLora,Georgia,serif;font-weight:700;font-size:21px;line-height:1.2;letter-spacing:0;text-align:center;text-wrap:balance;margin:0 0 3px;width:100%;color:#fff0ca;text-shadow:0 2px 6px #0008}
.collectible.upgrade p{font-family:DragonLora,Georgia,serif;font-weight:500;font-size:14px;line-height:1.55;letter-spacing:0;color:#e0e8e8;min-height:0;margin:0;text-align:center;text-wrap:pretty;max-width:32ch}
.collectible .card-upgrade{font-family:DragonLora,Georgia,serif;font-weight:600;font-size:11px;line-height:1.45;letter-spacing:0;width:100%;text-align:center;margin:4px 0}
.collectible .card-owner{justify-content:center;text-align:center;flex-wrap:wrap;width:100%;font-size:11px;margin-top:3px}
@media(min-width:700px){.collectible .card-body{justify-content:flex-start;padding:17px}.collectible .card-owner{margin-top:auto;padding-top:8px}.collectible.upgrade p{font-size:14px}}
@media(orientation:landscape) and (max-height:600px){.collectible .card-body{padding:11px;gap:6px}.collectible.upgrade h3{font-size:19px}.collectible.upgrade p{font-size:12px;line-height:1.45}.collectible .card-upgrade{font-size:10px}}

/* Quality is visible in the frame AND the complete item background. Alpha atlas stays intact. */
.inventory-item,.equip-slot,.loot-report>div>span{
 background:radial-gradient(ellipse at 50% 15%,var(--rarity-top,#465463) 0%,var(--rarity-base,#19232e) 78%);
 border-color:var(--rarity,#b7c5ce);box-shadow:inset 0 1px 0 #ffffff28,inset 0 -12px 24px #0004,0 3px 12px #0006;
}
.inventory-item.selected{outline:2px solid #fff2c9;outline-offset:2px;box-shadow:inset 0 0 18px var(--rarity-top),0 0 13px var(--rarity-top)}
.inventory-item b,.inventory-item>span:not(.item-art){background:#08121ee8;border-radius:5px;padding:2px 5px;color:#fff4da;text-shadow:0 1px 3px #000}
.equip-slot small,.loot-report small{color:#fff5df;text-shadow:0 2px 3px #000}
.equip-slot .item-art{filter:drop-shadow(0 3px 4px #0009)}
.item-detail .detail-title{background:radial-gradient(ellipse at 10% 20%,var(--rarity-top,#465463),var(--rarity-base,#19232e) 85%);border:1px solid var(--rarity);border-radius:12px;padding:12px;margin-bottom:14px}
.item-detail .detail-title h3{color:#fff3d5}.item-detail .detail-title small{color:var(--rarity)}

.salvage-qualities{display:grid;gap:10px}.salvage-quality{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;padding:15px;background:linear-gradient(120deg,var(--rarity-top),var(--rarity-base));border-color:var(--rarity);text-align:left}.salvage-quality b{color:var(--rarity)}.salvage-quality span{color:#fff3da}.salvage-quality:disabled{opacity:.42}

/* Optional online account; inventory colours remain authoritative in all themes. */
.topline{position:sticky;top:0;flex-wrap:wrap}.account-entry{font-size:11px;padding:9px 13px;min-height:36px}.account-modal{max-width:760px!important}.account-form{display:grid;gap:12px}.account-form label{display:grid;gap:6px;color:#d8e4e9}.account-form input,.account-connection input{width:100%;box-sizing:border-box;background:#071725;color:#fff;border:1px solid #4b6475;border-radius:9px;padding:13px;font-size:16px}.account-identity{display:grid;gap:6px;padding:20px;border:1px solid #a28b50;border-radius:15px;background:linear-gradient(120deg,#22394b,#0e1d2b)}.account-identity strong{font:700 27px DragonLora,Georgia,serif}.account-identity span{overflow-wrap:anywhere;color:#b1cbd5}.account-identity b{color:#f2d590}.account-modal h3{margin-top:25px}.account-connection{margin:20px 0}.account-connection summary{cursor:pointer;color:#a6bdc9}.cloud-slots{display:grid;gap:10px}.cloud-slots>div,.shop-row{padding:14px;border:1px solid #536371;border-radius:10px;display:flex;align-items:center;flex-wrap:wrap;gap:10px;background:#122634}.cloud-slots small,.shop-row small{flex:1;min-width:130px;color:#c9dbe2}.theme-grid{display:flex;gap:10px;flex-wrap:wrap}.theme-grid [data-theme=ember]{background:linear-gradient(120deg,#713817,#231622)}.theme-grid [data-theme=celestial]{background:linear-gradient(120deg,#383a83,#102334)}.theme-grid [data-theme=royal]{background:linear-gradient(120deg,#715123,#201935)}.account-danger{border-color:#a76765;color:#ffbcb2}#account-message{color:#f6d58d;white-space:pre-line}
html[data-account-theme=ember] .topline,html[data-account-theme=ember] .panel{background:radial-gradient(ellipse at top left,#442815,#0b1725 80%);border-color:#b87842}
html[data-account-theme=celestial] .topline,html[data-account-theme=celestial] .panel{background:radial-gradient(ellipse at top right,#342a63,#0c1c32 80%);border-color:#8782be}
html[data-account-theme=royal] .topline,html[data-account-theme=royal] .panel{background:radial-gradient(ellipse at top,#463921,#142035 80%);border-color:#cab371;box-shadow:inset 0 0 24px #c5ac5714,0 4px 20px #0005}
html[data-account-theme=royal] .brand-mark{color:#fff2b3;text-shadow:0 0 14px #e7ce7b}
@media(max-width:600px){.account-entry{margin-left:auto}.account-modal{padding:18px!important}.shop-row b{width:100%}}

/* 0.22: show the complete square illustration on every card and orientation. */
.premium-cards{grid-template-columns:minmax(0,1fr)}
.collectible.upgrade{display:grid;grid-template-columns:minmax(100px,36%) minmax(0,1fr);min-height:0;align-items:center}
.collectible .card-art{width:100%;height:auto;min-height:0;container-type:normal;align-self:center;background:#0b1724;overflow:hidden}
.collectible .card-illustration{position:relative;inset:auto;transform:none;width:100%;height:auto;aspect-ratio:1;display:block;background-size:400% 200%;background-position:var(--artx) var(--arty)}
.collectible .card-art:after{display:none}
.collectible .card-kind{position:relative;inset:auto;display:block;margin:0 5px 6px;padding:5px 2px;font-size:8px;letter-spacing:.7px}
.collectible .card-rank{top:5px;left:5px;width:23px;height:27px}
.collectible .card-body{width:auto;border-top:0;padding:13px 10px}
@media(min-width:700px){
 .premium-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
 .collectible.upgrade{display:flex;flex-direction:column;align-items:stretch}
 .collectible .card-art{width:100%;max-width:260px;margin:0 auto;flex:none}
 .collectible .card-body{width:100%;flex:1;border-top:1px solid #b99e5c5e}
}
@media(orientation:landscape) and (max-height:600px){
 .collectible .card-art{max-width:150px}
 .collectible .card-body{padding:10px 9px;gap:5px}
 #overlay{overscroll-behavior:contain;padding-bottom:max(18px,env(safe-area-inset-bottom))}
}

/* A final evolution is distinct from ordinary card upgrades. */
.collectible.evolution-ready{border-color:#ffe4a0;box-shadow:inset 0 0 0 2px #c39336,0 0 24px #e3ad4355!important}
.evolution-ready .card-kind{background:linear-gradient(100deg,#5b337d,#846223);color:#fff4cb;font-weight:bold}
.evolution-ready .card-illustration{filter:hue-rotate(28deg) saturate(1.25);box-shadow:inset 0 0 28px #ffd97488}
.evolution-ready .card-rank{background:linear-gradient(#fff1aa,#d29638);width:32px;height:36px}

/* Card evolutions and the account appearance showroom. */
.evolution-origin{display:block;color:#d9c398;text-align:center;margin:-.3rem 0 .7rem}.appearance-options{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.appearance-options button{flex:1 1 130px;padding:10px;font-size:13px}.appearance-options .sel{border-color:#92ffd1;background:#30534d}.appearance-modal #appearance-preview{display:block;width:100%;height:auto;aspect-ratio:1.25;margin:12px auto;border-radius:18px;background:radial-gradient(ellipse at center,#364655,#101b28 75%)}

.active-card.evolved{border-color:#f2d49c;box-shadow:0 0 9px #e9b9ff66}.active-card.evolved b{color:#ffe5ae}

/* Bestiary: full models, shared combat numbers, five readable rank filters. */
.bestiary-filters{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0}.bestiary-filters button{flex:1 1 90px}.bestiary-layout{display:grid;grid-template-columns:minmax(200px,1fr) minmax(0,2fr);gap:18px;align-items:start}.bestiary-list{display:grid;gap:8px}.bestiary-list button{text-align:left;border-left:3px solid var(--tier)}.bestiary-list button span{display:block;font-size:11px;color:var(--tier);margin-top:6px}.bestiary-detail{border-top:3px solid var(--tier);min-width:0}.bestiary-detail h2{margin:8px 0}.bestiary-detail p{line-height:1.65;margin:12px 0}.bestiary-detail h3{margin-top:20px}.bestiary-detail canvas{width:100%;height:auto;aspect-ratio:10/7;border-radius:14px;background:radial-gradient(ellipse,#304356,#0a1624)}.bestiary-controls{display:flex;gap:10px;margin:16px 0}.bestiary-controls label{flex:1;font-size:12px}.bestiary-controls select{display:block;width:100%;padding:10px;background:#122536;color:#f4e7ca;border:1px solid #657b86;border-radius:6px;margin-top:6px}.bestiary-detail .dragon-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:650px){.bestiary-layout{grid-template-columns:1fr}.bestiary-list{grid-template-columns:repeat(2,minmax(0,1fr))}.bestiary-list button{font-size:12px;padding:10px}.nav{gap:1px}.nav button{min-width:0;padding:5px 2px;font-size:9px}.nav .art-icon{width:26px;height:26px}}

.hero-selection{margin:18px 0}.hero-class-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:10px 0}.hero-class{display:flex;align-items:center;gap:14px;text-align:left;padding:18px}.hero-class-symbol{font-size:34px;color:#e7cf97}.hero-class b,.hero-class small{display:block}.hero-class small{color:#a2cec9;margin:6px 0}.hero-class p{font-size:12px;line-height:1.5}.pressure-info{padding:12px;border:1px solid #c5956755;border-radius:8px;background:#291c1944;margin:10px 0;font-size:12px;line-height:1.6}.pressure-info p{color:#c9bcb1;margin-top:6px}.bestiary-controls{flex-wrap:wrap}.bestiary-controls label{min-width:120px}
@media(max-width:600px){.hero-class-grid{grid-template-columns:1fr}.hero-class{padding:12px}.hero-class-symbol{font-size:27px}}

.warrior-item-art{display:block;width:100%;height:100%;max-height:64px;filter:drop-shadow(0 2px 3px #0008)}

/* Menu previews must allow native vertical swipes across their entire surface. */
#home canvas,#overlay canvas{touch-action:pan-y pinch-zoom}#paperdoll{pointer-events:none}.paperdoll-scene{touch-action:pan-y pinch-zoom}.inventory-grid{overscroll-behavior-y:auto}

.equip-slot .warrior-item-art{width:58px;height:58px;margin:auto}.detail-title .warrior-item-art{flex:0 0 85px;width:85px;height:85px;max-height:85px}.inventory-item .warrior-item-art{position:absolute;inset:8%;width:84%;height:84%;max-height:none}.equip-slot small{white-space:normal;line-height:1.15}.equip-slot{height:auto;min-height:92px}

.system-settings-modal{max-width:780px!important}.system-settings h1{margin:10px 0 24px}.system-settings h2{font-size:23px}.language-choice{display:grid;gap:10px;margin-top:20px}.language-choice select{width:100%;padding:14px;background:#0d2231;color:#f8e7bc;border:1px solid #938060;border-radius:8px;font:inherit}.settings-back{position:sticky;bottom:0;box-shadow:0 -8px 15px #06101bd9}.system-entry{white-space:normal}html[dir=rtl] .row,html[dir=rtl] .topline{direction:rtl}html[dir=rtl] .desc,html[dir=rtl] .item-detail{text-align:right}html[dir=rtl] .hero-copy{left:auto;right:22px}.system-settings-modal .row{flex-wrap:wrap}.system-settings-modal .graphics-scale{flex-wrap:wrap}html[lang=hi],html[lang=ar],html[lang=zh],html[lang=ja],html[lang=ko]{font-family:system-ui,sans-serif}html[lang=hi] h1,html[lang=ar] h1,html[lang=zh] h1,html[lang=ja] h1,html[lang=ko] h1{font-family:system-ui,sans-serif}
html[dir=rtl] .eyebrow,html[dir=rtl] button{letter-spacing:0}.system-settings select{min-height:48px}.nav button span{overflow-wrap:anywhere}
/* Expedition review and an always-visible exit on the battle HUD. */
.expedition-review-modal{max-width:850px}.review-gear{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.review-gear>div{display:flex;align-items:center;gap:8px;padding:9px;border:1px solid var(--rarity);background:linear-gradient(120deg,var(--rarity-top),var(--rarity-base));border-radius:10px;min-width:0}.review-gear .item-art,.review-gear svg{width:42px;height:42px;flex:0 0 42px}.review-gear span{overflow-wrap:anywhere}.review-gear small,.review-dragons small{display:block;opacity:.75}.review-dragons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.review-dragons>div{display:flex;align-items:center;gap:8px}.review-dragons .dragon-portrait{width:52px;height:52px;flex:0 0 52px}.review-actions{position:sticky;bottom:0;background:#10212fed;padding:10px 0;display:grid;gap:8px}.hud-actions{flex-wrap:wrap;max-width:180px;justify-content:flex-end}.hud-actions .leave-map{font-size:12px;min-width:90px;width:auto;padding:7px 10px}.leave-map-modal{max-width:550px}@media(max-width:380px){.review-gear{grid-template-columns:1fr}.hud-actions{max-width:130px}.review-dragons{grid-template-columns:1fr}} 

@media(max-width:600px){.review-gear{grid-template-columns:1fr}}.expedition-review details>summary{padding:12px 0;cursor:pointer}.expedition-review h3{margin-top:14px}.review-gear>div span{font-size:14px;word-break:normal}
/* Permanent heroine training, mobile cards remain in the page scroll flow. */
.training-panel{margin-top:18px}.training-grid{display:grid;gap:16px}.training-card{border:1px solid #b9a37155;border-radius:16px;padding:20px;background:linear-gradient(135deg,#283746,#111c29)}.training-card h3{margin:0 0 10px}.training-card>strong{display:block;font-size:25px;color:#f5dfa8;margin:12px 0}.training-card p{color:#bacbd2;line-height:1.6}.training-cost{display:flex;flex-wrap:wrap;gap:10px 24px;margin:20px 0}.training-cost span{display:grid;gap:4px;font-size:12px;letter-spacing:.08em}.training-cost b{font-size:20px;color:#f0dba4}.training-wallet{display:flex;flex-wrap:wrap;gap:8px 12px;margin:16px 0 24px;color:#dbc692}.training-select{margin-top:16px}.training-panel button{min-height:48px}.training-card button:disabled{opacity:.52}

/* Offline profile and side-by-side import confirmation. */
.local-profile-modal{max-width:760px}.local-profile-panel label{display:block;margin:18px 0 10px}.local-profile-panel input{display:block;width:100%;box-sizing:border-box;margin-top:8px}.local-profile-summary,.transfer-compare section{padding:18px;border:1px solid #bba77455;border-radius:14px;background:#10252c}.local-profile-summary strong,.transfer-compare strong{display:block;font-size:1.4em;color:#f2dfaa;overflow-wrap:anywhere}.local-profile-summary small,.transfer-compare small{display:block;color:#abc2c6;margin-top:7px;overflow-wrap:anywhere}.local-profile-actions{display:grid;gap:12px}.transfer-compare{display:grid;grid-template-columns:1fr 1fr;gap:14px}.transfer-warning{padding:14px;border-left:3px solid #eab969;background:#eab96916;color:#ffdfa8}.local-profile-panel .desc{line-height:1.6}@media(max-width:560px){.transfer-compare{grid-template-columns:1fr}}

/* 0.32 challenge and reinforcement panels */
.challenge-note,.inferno-note,.item-upgrade{padding:18px;margin:16px 0;border:1px solid #647987;border-radius:14px;background:#122432}
.inferno-note{border-color:#df855c;background:linear-gradient(135deg,#482922,#201b31)}
.upgrade-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}.upgrade-preview small{overflow-wrap:anywhere}
.diffs{grid-template-columns:repeat(5,minmax(0,1fr));flex-wrap:wrap}.diffs button{min-width:0;flex:1 1 90px}.drop-table{overflow-x:auto;max-width:100%}
@keyframes ultimateShine{0%,100%{box-shadow:inset 0 0 12px #b4ffef26,0 0 7px #b4ffef44;border-color:#a5fff1}50%{box-shadow:inset 0 0 23px #d5aaff55,0 0 15px #a5fff180;border-color:#f5e2ff}}
@media(prefers-reduced-motion:reduce){[style*="ultimateShine"]{animation:none!important;box-shadow:0 0 9px #a5fff188}}
/* 0.33 — item-owned progression and readable set/affix panels. */
#auto-card-control{pointer-events:auto;margin-bottom:6px}.auto-cards-toggle{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 13px;font-size:12px;background:#101f2de8;border-color:#83979b}.auto-cards-toggle b{color:#bbc6cc}.auto-cards-toggle.sel{border-color:#98f5bd;background:#16352be8}.auto-cards-toggle.sel b{color:#afffd1}.draft-automation{display:flex;align-items:center;gap:16px;margin:0 0 18px;padding:12px;border:1px solid #708573;border-radius:10px;background:#0a1e21}.draft-automation .desc{margin:0;flex:1}.draft-automation button{flex-shrink:0}.bulk-upgrade-entry{max-width:660px;margin:0 0 20px}.bulk-upgrade-entry p,.upgrade-ownership,.upgrade-refund{font-size:12px;line-height:1.6;color:#bfd2dc}.equipped-sets{margin-bottom:24px;padding:18px;border:1px solid #81cda466;border-radius:14px;background:#0e2526}.equipped-sets>h2{font-size:24px;margin-bottom:15px}.gear-set{margin:15px 0;padding:16px;background:linear-gradient(135deg,#17302e,#101d2d);border:1px solid var(--set-color);border-radius:12px}.gear-set .row{gap:12px;flex-wrap:wrap}.gear-set h3{margin:0;color:var(--set-color);font-size:20px}.gear-set p{color:#95a5ae;line-height:1.6;margin:12px 0}.gear-set p.active{color:#b6ffd1}.gear-set p b{display:inline-block;min-width:32px;color:inherit}.set-pieces{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.set-pieces span{padding:4px 7px;border:1px solid #50616b;border-radius:5px;font-size:11px;color:#98a8b0}.set-pieces .active{color:#b6ffd1;border-color:#88caab;background:#244537}.item-affixes{margin:16px 0;padding:16px;border:1px solid #8b7799;border-radius:12px;background:#1c2030}.item-affixes h3{font-size:19px;margin-bottom:12px}.item-affixes h3 span{float:right;color:#c4a3ed;font-size:14px}.item-affixes article{margin:10px 0;padding-bottom:10px;border-bottom:1px solid #66738c44}.item-affixes article b{color:#e0bdff;font-size:14px}.item-affixes p{line-height:1.6;font-size:13px;margin:4px 0;color:#d5dfe7}.item-affixes small{display:block;font-size:11px;line-height:1.6;color:#a7b7c4}.set-badge{position:absolute;top:3px;right:4px;padding:2px 5px;border:1px solid #a2ffc6;border-radius:5px;color:#b7ffd3;background:#0a352ddd;font:bold 11px system-ui;font-style:normal;z-index:3}.detail-title,.review-gear>div,.loot-report>div>span{position:relative}.bulk-controls{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0}.bulk-controls label{display:grid;gap:8px;font-size:14px;min-width:0}.bulk-controls label:last-child{grid-column:1/-1}.bulk-controls select,.bulk-controls input{width:100%;min-width:0;min-height:46px;padding:10px;background:#102938;color:#fff0cc;border:1px solid #77866f;border-radius:8px;font:inherit}.bulk-upgrade-modal,.gear-codex-modal{max-width:780px!important}.bulk-upgrade-modal>p{line-height:1.7;margin:14px 0}.bulk-upgrade-modal>.full{margin-top:10px}.bulk-list{max-height:42vh;overflow:auto;touch-action:pan-y;margin:20px 0}.bulk-list>div{display:flex;justify-content:space-between;gap:14px;padding:12px;border-bottom:1px solid #63778566}.bulk-list span{overflow-wrap:anywhere}.bulk-list strong{white-space:nowrap;color:#baffcd}.gear-shield-hud{font-size:11px;color:#aeeaff;text-shadow:0 2px 4px #000;padding:2px 0}
@media(max-width:500px){.draft-automation{flex-direction:column;align-items:stretch;gap:8px}.draft-automation .desc{font-size:12px}.bulk-controls{grid-template-columns:1fr}.bulk-controls label:last-child{grid-column:auto}.gear-set,.item-affixes{padding:12px}.gear-set h3{font-size:18px}.bulk-list>div{font-size:12px}.gear-shield-hud{max-width:155px}.equipped-sets{padding:12px}}
@media(orientation:landscape){#auto-card-control{margin-bottom:0}.battle-info{flex-wrap:wrap}#auto-card-control .auto-cards-toggle{font-size:10px;padding:7px;min-height:40px}.gear-shield-hud{max-width:180px}}

.upgrade-badge{position:absolute;bottom:3px;left:4px;padding:2px 4px;border-radius:4px;background:#061522e8;color:#ffe2a5;font:bold 11px system-ui;font-style:normal;z-index:3}.equip-slot .upgrade-badge{bottom:auto;top:3px}.detail-title>.upgrade-badge{bottom:4px;left:4px}
.party-selection{margin:18px 0;padding:16px;background:#102331;border:1px solid #73958a;border-radius:14px}.party-selection>p{color:#becdd5;line-height:1.6}.party-roster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:15px}.party-roster article{padding:16px;border:1px solid var(--hero-color);border-radius:12px;background:linear-gradient(130deg,#263545,#101a28);min-width:0}.party-roster h3{color:var(--hero-color);font-size:24px;margin:0}.party-roster b{font-size:12px}.party-roster p{font-size:13px;line-height:1.6;color:#c8d5df}.party-roster .locked{opacity:.65}.party-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.party-actions button{flex:1;font-size:11px;min-height:44px;padding:8px}.nature-weapon-icon{width:64px;height:64px;display:block;margin:auto}.inventory-item .nature-weapon-icon{width:100%;height:100%}.party-health{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:8px 0}.party-health>div{background:#081e2ddb;border:1px solid var(--hero-color);border-radius:7px;padding:6px;min-width:0}.party-health b,.party-health small{display:block;font-size:10px}.party-health small{font-size:9px}.party-health .bar{display:block;height:5px;margin:5px 0 0}.party-health .party-xp{height:3px}.party-xp i{background:#d5a7ff}.reset-section{border-color:#bb746a!important}.reset-section button,#reset-execute{background:#662f30;color:#ffdfd2}.reset-game-modal{max-width:600px!important}.reset-game-modal input{width:100%;padding:15px;margin:16px 0;border:1px solid #d09988;border-radius:8px;background:#121d29;color:#fff;font:inherit}.reset-game-modal .full{margin:8px 0}.reset-game-modal p{line-height:1.7}
@media(max-width:500px){.party-roster{grid-template-columns:1fr}.party-selection{padding:12px}.party-roster article{padding:12px}}
@media(orientation:landscape){#hud .party-health{position:absolute;top:62px;left:8px;width:144px;display:grid;grid-template-columns:1fr;margin:0;gap:4px}#hud .party-health>div{padding:4px}#hud .party-health b,#hud .party-health small{font-size:8px}#hud .party-health .bar{margin-top:3px;height:4px}#hud .party-health .party-xp{height:2px}#hud:has(.party-health>div:nth-child(2)) .squad-hud{top:185px}#hud:has(.party-health>div:only-child) .squad-hud{top:132px}}
/* Post-evolution choices contain their own complete, uncropped artwork. */
.mastery-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.mastery-card{display:flex!important;flex-direction:column!important;overflow:hidden}.mastery-symbol{display:grid;place-items:center;width:100%;min-height:100px;font-size:64px;color:#f3dea1;background:radial-gradient(ellipse,#596a654d,transparent 70%)}.mastery-card .card-body{width:100%;box-sizing:border-box}.mastery-card .card-body>small{display:block;line-height:1.45;color:#c8d6d9}.mastery-card .card-upgrade{overflow-wrap:anywhere}@media(max-width:600px){.mastery-cards{grid-template-columns:1fr}.mastery-symbol{min-height:64px;font-size:46px}}
.shuriken-card-art{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;background:#0b1724}
