
/* Torre, acessórios e arena compacta. */
.home-accordion{border:1px solid #a683584d;border-radius:14px;overflow:hidden;margin:14px 0;background:#111927}
.home-accordion>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:66px;padding:15px 18px;cursor:pointer;font-weight:700;color:#eed9b9;list-style:none}
.home-accordion>summary::-webkit-details-marker{display:none}.home-accordion[open]>summary{border-bottom:1px solid #ffffff1a}.home-accordion>summary small{display:block;font-size:9px;letter-spacing:.14em;margin-bottom:5px;color:#c1a4db}
.home-accordion .campaign-card,.home-accordion .ranked-card{margin:0;border:0;border-radius:0}
.campaign-accordion>summary{background:linear-gradient(90deg,#0e182ce8,#10162288),url('assets/eter-world-login.webp') center/cover}
.arena-accordion>summary{background:linear-gradient(90deg,#121522ee,#24142199),url('assets/locations/pvp-victory.webp') center 30%/cover}
.void-tower-card{border-color:#a471d278;background:linear-gradient(#171026b8,#0c1221f5),url('assets/locations/void-tower.webp') center/cover}
.void-tower-card>summary{min-height:90px;color:#eedcff}.tower-card-body{padding:0 18px 18px;font-size:13px;line-height:1.7}
.tower-links{display:flex;gap:10px;margin:14px 0}.tower-links>button{flex:1;min-width:0;font-size:12px}
.tower-hero{padding:30px 16px;margin:-16px -16px 18px;min-height:170px;background:linear-gradient(0deg,#0c1221,#18152a44),url('assets/locations/void-tower.webp') center/cover}
.tower-stats{display:flex;justify-content:space-around;text-align:center;color:#c5b7d5;font-size:12px}.tower-stats strong{display:block;font-size:25px;color:#e2c1ff;padding:6px}.tower-floors{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:18px 0}
.tower-floors button{min-height:42px;border:1px solid #787087;background:#1a2031;color:#eee3fa;border-radius:8px}.tower-floors .claimed{background:#173d31;border-color:#52977c}.tower-floors .tower-boss{border-color:#dda955;color:#ffcf8b}.tower-floors button:disabled{opacity:.35}
.tower-page .panel p,.forge-panel p{font-size:13px;line-height:1.65}.tower-award{padding:12px;background:#263d33;border:1px solid #72a486;border-radius:8px;font-size:13px}
.forge-scene{position:relative;height:310px;border:1px solid #ba80ee66;border-radius:15px;background:url('assets/locations/void-forge.webp') center 57%/cover;overflow:hidden}.forge-halo{position:absolute;left:25%;top:38%;width:50%;aspect-ratio:1;border-radius:50%;opacity:0;border:3px solid #da9bff;box-shadow:0 0 50px #a447ff,inset 0 0 50px #a447ff}
.is-forging .forge-halo{animation:void-forging 1.2s ease-in-out infinite}.forged-ring{position:absolute;width:140px;height:140px;object-fit:cover;left:calc(50% - 70px);top:80px;border-radius:50%;box-shadow:0 0 60px #b778ff;animation:void-reveal .7s ease-out}.forge-panel{margin-top:15px}.forge-panel progress{width:100%;height:12px;accent-color:#b87eee}.forge-reveal{text-align:center;animation:void-reveal .5s ease-out}
@keyframes void-forging{0%,100%{opacity:.35;transform:scale(.6) rotate(0)}50%{opacity:1;transform:scale(1.05) rotate(180deg)}}@keyframes void-reveal{from{opacity:0;transform:scale(.65) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}

/* Equal square slots, shared by the personal and public profile. */
.equipment-paperdoll{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));gap:8px;padding:14px;aspect-ratio:1;min-height:0;isolation:isolate}
.equipment-paperdoll .gear-slot{width:100%;height:auto;min-width:0;max-width:none;aspect-ratio:1;align-self:stretch;justify-self:stretch;transform:none;border-radius:8px;z-index:2}
.gear-slot-chest{grid-area:1/1}.gear-slot-gloves{grid-area:2/1}.gear-slot-legs{grid-area:3/1}.gear-slot-boots{grid-area:4/1}
.gear-slot-weapon{grid-area:1/2}.gear-slot-cape{grid-area:2/2}.gear-slot-ring1{grid-area:3/2}.gear-slot-ring2{grid-area:4/2}.equipment-paperdoll .gear-slot-mount{grid-area:4/3}
.equipment-paperdoll .equipment-silhouette{grid-area:1/3/5/5;position:static;width:100%;height:100%;object-fit:contain;min-height:0;z-index:0;align-self:center;justify-self:end;max-height:none;transform:none}

/* Combat occupies the available game viewport; only the log and skill sheet scroll. */
#game-view.combat-scene{container-type:size;overflow:hidden;position:relative;isolation:isolate;z-index:0}
#game-view.combat-scene>.page-pad{height:100%;display:flex;flex-direction:column;padding:6px 10px;min-height:0}
.combat-context{flex:none;font-size:10px;line-height:1.25;margin:0 0 3px}
.combat-stage{--enemy-size:clamp(40px,11cqh,76px);--hero-size:clamp(72px,20cqh,132px);display:flex;flex-direction:column;gap:3px;min-height:0;flex:1;padding:0 0 2px}
.combat-top{flex:none;gap:6px}.combat-top h3{font-size:14px}.combat-top>span{font-size:10px}.combat-clock{flex:none;padding:2px 0 3px;gap:2px;font-size:11px}.combat-clock progress{height:3px}
.combat-enemies{display:grid;width:min(100%,306px);max-width:none;grid-template-columns:repeat(6,minmax(0,1fr));gap:3px 5px;align-items:start;justify-items:center;margin:0 auto;flex:none}
.combat-enemies>.combat-unit{grid-column:span 2;max-width:var(--enemy-size);width:100%;flex:none}
.combat-enemies.count-1>.combat-unit{grid-column:3/span 2}.combat-enemies.count-2>.combat-unit:first-child{grid-column:2/span 2}.combat-enemies.count-2>.combat-unit:last-child{grid-column:4/span 2}
.combat-enemies.count-4>.combat-unit:nth-child(4){grid-column:3/span 2}.combat-enemies.count-5>.combat-unit:nth-child(5){grid-column:5/span 2}
.combat-bosses{flex:none;display:flex;justify-content:center;margin:0;gap:8px}.combat-bosses>.boss-unit{max-width:none;width:calc(var(--enemy-size) * 1.12)}
.combat-stage .combat-unit{margin:0}.combat-stage .unit-heading{height:24px;margin:0 0 2px}.combat-stage .unit-heading strong{font-size:10px;line-height:1.15}.combat-stage .unit-heading small{font-size:8px;line-height:1.15}
.combat-stage .unit-hp{font-size:8px;line-height:1.25;white-space:nowrap}.combat-stage .unit-hp-track{height:5px;margin-top:3px}
.combat-stage .combat-statuses{min-height:13px;max-height:29px;gap:2px;margin:2px 0;overflow:visible;flex-wrap:wrap}
.combat-stage .status-icon{height:16px;min-width:16px;font-size:11px}.combat-stage .status-icon b{font-size:8px;bottom:-2px}
.combat-announcement{flex:none;min-height:28px;max-height:80px;overflow:auto;margin:0;padding:2px 0;font-size:10px;line-height:1.25;gap:2px}.combat-announcement small{font-size:9px;line-height:1.2}
.combat-announcement .primary-button,.combat-announcement .text-button{padding:4px 8px;min-height:26px;width:auto;font-size:10px}
.combat-player-line{flex:1;min-height:145px;max-height:210px;gap:8px;display:grid;grid-template-columns:92px var(--hero-size) 50px;align-content:center;justify-content:center;padding:0;margin:auto 0}
.combat-stage .own-character{width:var(--hero-size);max-width:none}.combat-stage .own-character .unit-heading strong{font-size:12px}
.combat-stage .own-character .unit-hp{font-size:10px}.combat-stage .own-character .unit-hp-track{height:6px}
.combat-stage .own-character .status-icon{height:20px;min-width:20px;font-size:13px}.combat-stage .own-character .status-icon b{font-size:9px}
.combat-command-orbit{width:92px;height:140px;display:grid;grid-template-columns:repeat(2,44px);grid-template-rows:repeat(3,44px);gap:4px;align-self:center}
.combat-command-orbit .diamond-command{position:static;width:44px;height:44px;min-height:0;transform:none;border-radius:8px;padding:1px}.diamond-command>span{transform:none;font-size:19px}.diamond-command small{font-size:8px;line-height:1.1}
.skills-command{grid-area:1/2}.pass-command{grid-area:1/1}.potion-command{grid-area:2/2}.flee-command{grid-area:3/2}
/* Only the list scrolls: clipping this anchor hides its expanded, absolute panel. */
.combat-command-orbit .combat-turn-order{grid-area:3/1;position:relative;inset:auto;width:44px;max-width:none;max-height:none;overflow:visible;margin:0;border:0;background:none;z-index:45}
.combat-command-orbit .combat-turn-order>button{height:44px;min-height:44px;width:44px;padding:0;justify-content:center;border:1px solid #747c93;background:#1a2335;border-radius:8px;font-size:24px}
.combat-command-orbit .combat-turn-order>button strong,.combat-command-orbit .combat-turn-order>button b{display:none}
.combat-command-orbit .combat-turn-order ol{position:absolute;left:0;bottom:calc(100% + 5px);width:min(230px,75cqw);max-height:min(240px,45cqh);overflow:auto;overscroll-behavior:contain;background:#0e1525f7;border:1px solid #8794aa;border-radius:10px;padding:10px;box-shadow:0 0 25px #0009}
.combat-chat-button{align-self:end;justify-self:end;margin-bottom:20px;width:43px;height:39px;border:1px solid #75858b;border-radius:8px;background:#172331;color:#dfe6e9;font-size:18px}.combat-chat-button small{display:block;font-size:9px}
#home-screen:has(#game-view.combat-scene) #chat-launcher{visibility:hidden;pointer-events:none}
#home-screen:has(#chat-launcher.has-unread) .combat-chat-button{background:#183e2b;border-color:#7be6a5;box-shadow:0 0 12px #63de8670}
.combat-team-label{display:none}.combat-allies{flex:none;grid-template-columns:repeat(var(--units),minmax(0,1fr));justify-items:center;gap:5px;margin:0 auto;width:100%}
.combat-stage .ally-mini{width:100%;max-width:clamp(38px,8cqh,62px)}.combat-stage .ally-mini .unit-heading{height:21px}.combat-stage .ally-mini .unit-heading strong{font-size:8px}.combat-stage .ally-mini .unit-heading small{font-size:7px}
.combat-stage .ally-mini .unit-hp{font-size:7px}.combat-stage .ally-mini .combat-statuses{max-height:15px;flex-wrap:nowrap}.combat-stage .ally-mini .status-icon{min-width:12px;height:12px;font-size:9px}
.combat-history{flex:1;min-height:35px;max-height:105px;margin:0;padding:4px 0 0;display:flex;flex-direction:column}
.combat-history h4{font-size:10px;margin:0 0 2px}.combat-history .battle-log{flex:1;min-height:0;height:auto;font-size:10px;padding:5px;overflow:auto}
.combat-skill-picker{position:absolute;z-index:60;inset:auto 0 0;transform:none;width:auto;min-width:0;max-width:100%;box-sizing:border-box;margin:0;max-height:85%;overflow-x:hidden;overflow-y:auto;padding:10px;background:#0d1424fa;box-shadow:0 -20px 60px #000a}
.combat-skill-picker>div{top:-10px}.combat-skill-option>span:last-child{min-width:0;overflow-wrap:anywhere}
.combat-skill-option{padding:8px 6px;margin-top:5px}.combat-skill-option strong{font-size:12px}
.combat-stage .combat-float{width:max-content;min-width:90px;max-width:min(190px,calc(100cqw - 28px));padding:8px 10px;font-size:14px;line-height:1.4;white-space:normal;overflow-wrap:anywhere;border:1px solid #e0c9a966;background:#17121af5;box-shadow:0 4px 14px #000b;border-radius:8px}
.combat-stage .combat-float.crit{font-size:16px;border-color:#edaa47}.combat-stage .combat-float.heal{background:#103825f5}.combat-stage .combat-float.shield{background:#112f4cf5}.combat-stage .combat-float.miss{background:#292c36f5}
.combat-stage .combat-unit:has(.combat-float){z-index:31}
.combat-stage .status-icon[data-status-label]::after{font-size:13px;line-height:1.45;width:170px;background:#111522}
.combat-stage .combat-dice{width:34px}.combat-stage .d8-shape{width:30px;height:34px}.combat-stage .combat-dice small{font-size:8px}
.combat-stage .malrec-warning{position:absolute;left:0;right:0;top:48px;z-index:42;padding:5px 8px;pointer-events:none;background:#28112ded;max-height:75px;overflow:hidden;animation:void-notice 6s forwards}
.combat-stage .malrec-warning img{width:38px;height:38px}.combat-stage .malrec-warning p{font-size:9px;margin:2px 0}.combat-stage .malrec-warning strong{font-size:11px}
@keyframes void-notice{0%,85%{opacity:1}100%{opacity:0}}
@container (max-height:520px){.combat-stage{--enemy-size:42px;--hero-size:72px;gap:1px}.combat-player-line{min-height:114px;max-height:130px}.combat-announcement{min-height:22px;max-height:60px}.combat-history{max-height:55px}.combat-stage .ally-mini{max-width:38px}.combat-stage .unit-heading{height:20px}.combat-stage .combat-statuses{min-height:14px}.combat-stage .status-icon{height:14px;min-width:14px}.combat-stage .own-character .status-icon{height:18px;min-width:18px}.combat-stage .combat-top h3{font-size:12px}}
@media(prefers-reduced-motion:reduce){.is-forging .forge-halo,.forged-ring,.forge-reveal{animation:none}.is-forging .forge-halo{opacity:.7}}

#home-screen #game-view.combat-scene{padding-bottom:0}
.dungeon-battle-page>.dungeon-battle-shell{flex:1;min-height:0;display:flex;flex-direction:column}.dungeon-battle-underlay{flex:1;min-height:0;display:flex;flex-direction:column}
.combat-player-line>.combat-turn-order{position:absolute;bottom:140px;left:0;z-index:40}
.combat-stage .combat-history p{margin:2px 0;line-height:1.4}

.combat-stage .unit-heading strong{flex:none;min-height:11px}
.combat-stage .unit-heading small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:none}
.combat-stage .combat-statuses{position:absolute;top:24px;right:-5px;max-width:calc(100% + 10px);min-height:0;margin:0;z-index:4}
.combat-stage .combat-statuses:empty{display:none}
.combat-stage .ally-mini .combat-statuses{top:23px;right:0}
.combat-enemies .unit-heading{width:90px;max-width:calc(100vw / 3 - 10px);position:relative;left:50%;transform:translateX(-50%)}
@container(max-height:520px){
 .combat-stage{--enemy-size:36px;--hero-size:72px}
 .combat-player-line{min-height:114px;max-height:130px;grid-template-columns:92px var(--hero-size) 44px;gap:5px}
 .combat-command-orbit{height:114px;grid-template-rows:repeat(3,36px);gap:3px 4px;transform:none}
 .combat-command-orbit .diamond-command,.combat-command-orbit .combat-turn-order>button{height:36px;min-height:36px}
 .combat-stage .ally-mini{max-width:32px}
 .combat-stage .unit-heading,.combat-stage .ally-mini .unit-heading{height:18px}
 .combat-stage .unit-heading strong{font-size:9px;min-height:10px;line-height:10px}
 .combat-stage .unit-heading small{font-size:7px;line-height:8px}
 .combat-stage .combat-statuses{top:20px}
 .combat-stage .combat-clock{padding:0;line-height:12px}
 .combat-stage .combat-announcement{font-size:9px;min-height:18px}
 .combat-stage .combat-history{min-height:29px}
}

.dungeon-battle-shell .dungeon-transition{position:absolute;inset:0;overflow:auto;padding:10px 0}
.dungeon-entry-landmark{min-height:0;flex:1}
@container(max-height:520px){.combat-stage .battle-log{padding:1px 3px;font-size:9px}.combat-history h4{font-size:9px;line-height:10px;margin-bottom:1px}}
