/* 0.37: illustrated rooms, direct equipment actions, native vertical scrolling. */
.hero-chambers{--hero-color:#bfa6ff;margin-top:8px}.chambers-title{display:flex;justify-content:space-between;align-items:end;margin:18px 0}.chambers-title h1{font-size:clamp(27px,4vw,40px)}.chamber-roster{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 14px}.chamber-portrait{position:relative;height:162px;overflow:hidden;border-radius:14px;padding:0;border-color:#7a735755;background:#0c1726}.hero-face{display:block;background-image:url(hero-portraits-v37.png);background-size:400% auto;background-position:var(--portrait-x) 25%}.chamber-portrait>.hero-face{position:absolute;inset:0;background-size:400% auto}.chamber-portrait:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#050d18 2%,#08122188 28%,transparent 65%);pointer-events:none}.chamber-portrait.sel{border:2px solid var(--hero-color);box-shadow:0 0 20px color-mix(in srgb,var(--hero-color) 18%,transparent)}.portrait-caption{position:absolute;left:12px;right:10px;bottom:10px;z-index:1;text-align:left}.portrait-caption b{display:block;font-family:Georgia,serif;font-size:24px;color:#fff0cc}.portrait-caption small{font-size:11px;color:var(--hero-color);min-height:14px;display:block}.chamber-portrait.is-locked .hero-face{filter:saturate(.2) brightness(.55)}.chamber-party{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid #68707a55;background:#0b1826;border-radius:12px;margin:12px 0}.chamber-party>span:first-child{font-size:10px;color:#cfbb8c;letter-spacing:1px}.chamber-party small{display:block;color:#a7b9c3;font-size:10px;letter-spacing:0;margin-top:3px}.chamber-party>button{display:flex;align-items:center;gap:8px;padding:0;border:0;background:none;text-align:left;font-size:13px}.chamber-party .hero-face{width:38px;height:50px;border:1px solid var(--hero-color);border-radius:7px;flex-shrink:0}.party-empty{font-size:20px;color:#a5b5c4}.party-empty span{font-size:11px}.chamber-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:16px 0;border-bottom:1px solid #88795466;padding-bottom:9px}.chamber-tabs button{background:transparent;border:0;border-radius:5px;font-size:13px;min-height:46px;padding:8px}.chamber-tabs .sel{color:#ffe9b3;background:linear-gradient(#9b763922,#9b763933);box-shadow:inset 0 -2px var(--gold)}.chamber-stage{position:relative;min-width:0;height:510px;overflow:hidden;border:1px solid #aa926a88;border-radius:18px;background:linear-gradient(90deg,#080f1bd9,transparent 58%),linear-gradient(0deg,#060e1bf2,transparent 42%),var(--chamber-image) center/cover;isolation:isolate}.chamber-heading{position:absolute;left:32px;top:32px;z-index:2;pointer-events:none;text-shadow:0 2px 10px #000}.chamber-heading h1{font-size:clamp(38px,6vw,65px);color:#fff0c6;line-height:1.2}.chamber-heading h2{font-size:clamp(18px,2.4vw,26px);font-weight:400;margin:4px 0 12px}.chamber-heading>span{font-size:12px;color:var(--hero-color)}.chamber-stage #paperdoll{position:absolute;right:0;bottom:65px;width:66%;height:430px;pointer-events:none;touch-action:pan-y}.chamber-turn{position:absolute;right:24px;bottom:92px;border-radius:50%;width:46px;height:46px;padding:0;background:#081420cc;font-size:25px;z-index:3}.chamber-stage-bottom{position:absolute;bottom:0;left:0;right:0;z-index:2;display:flex;gap:20px;justify-content:space-between;align-items:center;background:linear-gradient(0deg,#08131bf5,#08131bdd);padding:18px 25px;border-top:1px solid #ac976846}.chamber-stage-bottom>button{min-width:190px}.chamber-stats{display:flex;gap:32px}.chamber-stats span{display:block;text-align:center}.chamber-stats b{font-size:22px;color:#fff2cb;font-family:Georgia,serif;display:block}.chamber-stats small{display:block;font-size:9px;letter-spacing:1px;color:#adbfca;margin-top:5px}.chamber-description{color:#b8c9d4;font-size:14px;line-height:1.7;max-width:800px;margin:18px 2px}.chamber-doors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.chamber-doors button{min-height:125px;position:relative;text-align:left;overflow:hidden;padding:22px;border-radius:12px;background:linear-gradient(90deg,#071320ef,#101b2ba0),var(--chamber-image) center/cover;border-color:#9a825655}.chamber-doors small,.chamber-doors b{display:block}.chamber-doors small{font-size:8px;letter-spacing:1.6px;color:#d1bf93;margin-bottom:10px}.chamber-doors b{font-family:Georgia,serif;font-size:23px;margin-right:18px}.chamber-doors button>span{position:absolute;right:15px;bottom:20px;color:#e3c786}.chamber-armory{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);gap:20px;align-items:start}.chamber-armory .chamber-stage{height:630px;position:sticky;top:95px;background-image:linear-gradient(0deg,#06101ae8,transparent 70%),var(--chamber-image)}.chamber-armory .chamber-heading{top:22px;left:24px}.chamber-armory .chamber-heading h1{font-size:36px}.chamber-armory .chamber-heading h2{font-size:18px}.chamber-armory .chamber-stage #paperdoll{right:5%;width:90%;height:435px;bottom:76px}.chamber-gear{position:absolute;left:14px;right:14px;top:155px;display:grid;grid-template-columns:85px 1fr 85px;grid-template-rows:repeat(3,100px);gap:12px;z-index:3;pointer-events:none}.chamber-gear button{grid-column:1;position:relative;min-width:0;pointer-events:auto;background:linear-gradient(135deg,var(--rarity-top),var(--rarity-base));border-color:var(--rarity);padding:5px;box-shadow:0 5px 18px #0008;border-radius:9px}.chamber-gear button:nth-child(1){grid-row:1}.chamber-gear button:nth-child(2){grid-row:2}.chamber-gear button:nth-child(3){grid-row:3}.chamber-gear button:nth-child(4){grid-row:1;grid-column:3}.chamber-gear button:nth-child(5){grid-row:2;grid-column:3}.chamber-gear button:nth-child(6){grid-row:3;grid-column:3}.chamber-gear small{display:block;line-height:1.15;font-size:9px;font-weight:500}.painted-item{display:block;flex-shrink:0;width:100%;aspect-ratio:1;background-image:var(--atlas);background-size:var(--atlas-size);background-position:var(--atlas-x) var(--atlas-y);border-radius:6px}.chamber-gear .painted-item{width:62px;height:62px;margin:auto}.chamber-armory .chamber-stage-bottom{justify-content:center;padding:14px}.chamber-bag{min-width:0;padding:22px;background:#0d1a2beb;border:1px solid #77838d44;border-radius:16px}.chamber-bag h2{font-size:27px}.chamber-bag-actions,.bag-scope,.chamber-secondary{display:flex;gap:8px;margin:16px 0;flex-wrap:wrap}.chamber-bag-actions>button{flex:1;font-size:11px;padding:12px 9px}.bag-scope{gap:0;padding:3px;border:1px solid #a1b0bc33;background:#071320;border-radius:8px}.bag-scope button{flex:1;border:0;font-size:11px;padding:8px;background:transparent}.bag-scope button.sel{background:#344039}.chamber-bag .inventory-filters{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.chamber-bag select{width:100%;min-width:0;padding:10px;background:#101f30;color:#e8dfca;border:1px solid #7c7e7455;border-radius:6px;min-height:44px;font:inherit;font-size:12px}.chamber-loot-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}.chamber-loot{position:relative;min-width:0;padding:4px;border-radius:8px;background:linear-gradient(135deg,var(--rarity-top),var(--rarity-base));border-color:var(--rarity);overflow:hidden}.chamber-loot>.painted-item{width:100%}.chamber-loot>b{position:absolute;left:6px;top:3px;font-size:10px;color:#fff9df;text-shadow:0 1px 3px #000}.chamber-loot>small{display:block;min-height:12px;font-size:9px;text-align:center;color:#dceccf}.chamber-loot.incompatible{opacity:.55}.chamber-secondary button{font-size:10px;padding:8px;flex:1}.chamber-loot-grid>p{grid-column:1/-1;padding:25px 0;font-size:13px;color:#b6c7cf}.chamber-skills{padding:25px;background:#0c1c2bbd;border:1px solid #8a8b7455;border-radius:16px}.chamber-skill-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0}.chamber-skill-grid button{display:flex;align-items:center;gap:12px;padding:18px;text-align:left;min-width:0;min-height:125px;background:radial-gradient(ellipse at 10% 10%,#71614830,transparent),#0e1e2e}.chamber-skill-grid button.sel{border-color:var(--hero-color);background:linear-gradient(135deg,#3b3a493d,#12312b66)}.chamber-skill-grid b{display:block;font-family:Georgia,serif;font-size:20px;color:#f6e7bb}.chamber-skill-grid small{display:block;line-height:1.6;font-size:12px;color:#bdcdd7;margin-top:8px}.chamber-skill-grid em{margin-left:auto;color:var(--hero-color);font-style:normal;font-size:24px}.skill-seal .art-icon{width:54px;height:54px}.chamber-content .training-panel{border-radius:16px;background:linear-gradient(115deg,#0a1626ed,#142035ed),var(--chamber-image);padding:25px}.chamber-content .training-card{border-radius:13px;background:radial-gradient(ellipse at top,#63503566,transparent 80%),#0b1929;border-color:#99825d66;padding:22px}.chamber-content .training-card strong{font-family:Georgia,serif;font-size:34px}.chamber-locked{position:absolute;right:5%;bottom:35px;width:50%;text-align:center;padding:25px;border-radius:15px;background:#07111dcc;border:1px solid #899cb644}.chamber-locked .hero-face{width:100px;height:145px;margin:0 auto 20px;border-radius:12px;filter:saturate(.3)}.chamber-locked p{line-height:1.6;margin:15px 0;font-size:13px}.castle-chamber-card{min-height:340px;border:1px solid #ba9c6988;border-radius:14px;padding:35px;display:flex;align-items:end;background:linear-gradient(90deg,#071421e8,#10213333),var(--chamber-image) center/cover}.castle-chamber-card p{margin:10px 0 20px}.expedition-party-art{margin-top:18px}.expedition-party-art .chamber-party{flex-wrap:wrap}.chamber-item-modal{max-width:720px!important}.chamber-detail{border:0;padding:0;background:transparent;box-shadow:none}.chamber-detail .detail-title{display:flex;align-items:center;gap:18px}.chamber-detail .detail-title>.painted-item{width:110px;height:110px;border:1px solid var(--rarity)}.chamber-detail .detail-title h3{font-size:25px;line-height:1.2}.chamber-detail .detail-title small,.chamber-detail .detail-title span{display:block;font-size:12px;line-height:1.7}.chamber-equip-action{position:sticky;top:-24px;z-index:5;background:#0c1b2bf5;padding:14px 0;border-bottom:1px solid #c3a46b44;margin:12px 0}.chamber-equip-action p{font-size:12px;color:#c5d0d9;line-height:1.5;margin:10px 0 0}.chamber-detail-fold{border:1px solid #7a8a9844;border-radius:9px;padding:12px;margin-top:16px}.chamber-detail-fold summary{cursor:pointer;min-height:34px;font-weight:700;font-size:14px;color:#e5d19f}.chamber-detail-fold .item-affixes{margin:5px 0;padding:8px;border:0;background:transparent}.chamber-detail .item-actions{margin:16px 0}.chamber-item-modal>.full{margin-top:12px}.chamber-swap-modal p{padding:20px 0;line-height:1.6}.chamber-swap-modal button{margin-top:12px}.review-gear .painted-item,.loot-report .painted-item{width:56px;height:56px}.chamber-gear button,.chamber-loot,.chamber-tabs button,.chamber-portrait,.hero-chambers{touch-action:pan-y pinch-zoom}.hero-chambers button:focus-visible{outline:2px solid #fff0ba;outline-offset:3px}
@media(min-width:1200px){.chamber-roster{max-width:800px}.chamber-portrait{height:185px}.chamber-loot-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:959px){.chamber-armory{grid-template-columns:1fr}.chamber-armory .chamber-stage{position:relative;top:auto;height:580px}.chamber-armory .chamber-stage #paperdoll{height:430px;bottom:60px}.chamber-gear{grid-template-columns:90px 1fr 90px;max-width:550px;left:0;right:0;margin:auto}.chamber-roster{gap:8px}.chamber-portrait{height:145px}.chamber-stats{gap:22px}.chamber-bag{padding:18px}.chamber-stage{height:485px}.chamber-stage #paperdoll{height:395px;bottom:90px;width:75%}.chamber-heading{left:24px;top:24px}.chamber-heading h1{font-size:42px}.chamber-heading h2{font-size:20px}.chamber-stage-bottom{padding:16px;gap:12px}.chamber-stage-bottom>button{min-width:140px;font-size:11px}.chamber-doors button{padding:16px}.chamber-doors b{font-size:19px}}
@media(max-width:540px){.chambers-title h1{font-size:27px}.chamber-portrait{height:120px;border-radius:9px}.portrait-caption{left:6px;right:4px;bottom:7px}.portrait-caption b{font-size:18px}.portrait-caption small{font-size:8px}.chamber-party{gap:8px;padding:9px}.chamber-party>span:first-child{font-size:8px}.chamber-party>button{gap:5px;font-size:11px}.chamber-party .hero-face{width:27px;height:40px}.chamber-party small{font-size:8px}.party-empty span{font-size:9px}.chamber-tabs{gap:0}.chamber-tabs button{font-size:11px;padding:7px 3px}.chamber-stage{height:510px;background-position:52% center}.chamber-heading{left:19px;top:22px}.chamber-heading h1{font-size:39px}.chamber-heading h2{font-size:18px}.chamber-stage #paperdoll{right:1%;bottom:133px;width:98%;height:315px}.chamber-stage-bottom{display:flex;flex-direction:column;gap:13px;padding:15px}.chamber-stage-bottom>button{width:100%;min-height:44px}.chamber-stats{gap:30px}.chamber-stats b{font-size:20px}.chamber-turn{bottom:145px;right:15px}.chamber-description{font-size:13px}.chamber-doors{grid-template-columns:1fr;gap:9px}.chamber-doors button{min-height:85px;padding:16px 20px}.chamber-doors small{margin-bottom:4px}.chamber-doors b{font-size:22px}.chamber-armory .chamber-stage{height:570px}.chamber-armory .chamber-stage #paperdoll{height:375px;bottom:68px;width:100%;right:0}.chamber-armory .chamber-turn{bottom:84px;right:15px}.chamber-gear{left:9px;right:9px;top:145px;grid-template-columns:73px 1fr 73px;grid-template-rows:repeat(3,94px);gap:11px}.chamber-gear .painted-item{width:58px;height:58px}.chamber-gear small{font-size:8px}.chamber-bag{padding:14px}.chamber-loot-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.chamber-skill-grid{grid-template-columns:1fr}.chamber-skills{padding:17px}.chamber-skill-grid button{padding:15px;min-height:105px}.chamber-skill-grid b{font-size:19px}.chamber-locked{right:5%;width:90%;bottom:25px;padding:20px}.chamber-locked .hero-face{width:75px;height:110px;margin-bottom:10px}.chamber-detail .detail-title>.painted-item{width:85px;height:85px}.chamber-detail .detail-title h3{font-size:22px}.chamber-detail .detail-title{gap:12px}.chamber-content .training-panel{padding:17px}.chamber-content .training-grid{grid-template-columns:1fr}.chamber-content .training-card{padding:20px}}
@media(prefers-reduced-motion:reduce){.hero-chambers *{transition:none!important}}
