.hero-icon{width:58px;height:58px;flex:0 0 auto;filter:drop-shadow(0 3px 2px #07131b66)}
.hero-create-fields{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:12px 0 18px}.hero-create-fields label{display:grid;gap:6px;color:#f0d49a;font-size:16px}.hero-create-fields input{max-width:280px;min-height:44px;padding:8px 12px;border:1px solid #8aafbc;border-radius:10px;background:#122d3f;color:#fff2d2;font-size:18px}.hero-sex-picker{display:flex;gap:8px}.hero-sex-picker button[aria-pressed=true]{background:#435747;border-color:#eed08c;color:#ffedc2}.hero-portrait{width:92px;height:112px;display:block;margin:auto;flex:0 0 auto}.hero-profession-card{text-align:center}.hero-profession-card h3{margin:8px 0;font-size:20px}.hero-profession-card p{font-size:15px;line-height:1.55;min-height:46px}.hero-profession-card .tower-btn{width:100%;min-height:44px}.hero-reveal{display:grid;grid-template-columns:125px minmax(0,1fr);gap:20px;align-items:start}.hero-reveal>.hero-portrait{position:sticky;top:12px;width:120px;height:145px}.hero-reveal .hero-skill-list article{padding:8px 0}.hero-reveal .hero-icon{width:44px;height:44px}.hero-reveal .hero-skill-list b{font-size:18px}
@media(max-height:500px){.hero-portrait{width:66px;height:80px}.hero-create-fields{gap:10px;margin:8px 0}.hero-profession-card p{min-height:0}.hero-reveal{grid-template-columns:88px minmax(0,1fr);gap:12px}.hero-reveal>.hero-portrait{width:84px;height:102px}}
@media(max-width:640px){.hero-reveal{grid-template-columns:1fr}.hero-reveal>.hero-portrait{display:none}.hero-create-fields{align-items:stretch}.hero-create-fields label,.hero-sex-picker{flex:1}.hero-create-fields input{width:100%;box-sizing:border-box}.hero-sex-picker button{flex:1}}
.hero-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 16px}.hero-tabs .tower-btn{padding:9px 13px}
 .hero-manage{display:block}.hero-page-tabs{display:flex;gap:8px;margin:10px 0}.hero-page-tabs button:disabled{opacity:1;background:#526270;color:#ffdfa1;border-color:#dbbf82}.hero-management .tower-copy{margin:8px 0}.hero-management .tower-heading{margin:5px 0;font-size:25px}.hero-management .tower-voice-controls{margin:8px 0}.hero-management .tower-voice-controls button{padding:5px 10px}.hero-management .hero-tabs{margin:8px 0}.hero-management .hero-tabs .tower-btn{padding:6px 10px}.hero-management .tower-actions{gap:8px}.hero-equipped-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.hero-equipped,.hero-catalog article{background:#21384a;border:1px solid #52687c;border-radius:15px;padding:14px;display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.hero-equipped p,.hero-bag-item small,.hero-catalog p{font-size:14px;line-height:1.55;margin:3px 0}.hero-equipped small,.hero-skill-list small{color:#d8c899}.hero-equipped .hero-icon{align-self:center;width:68px;height:68px}
.hero-skill-list article{display:flex;align-items:flex-start;gap:10px;padding:11px 0;border-bottom:1px solid #52687c}.hero-skill-list p{font-size:14px;line-height:1.55;margin:5px 0}.hero-skill-list small,.hero-bag-item small{display:block}
.hero-bag-item{display:flex;align-items:center;gap:9px;padding:9px 0;border-bottom:1px solid #52687c}.hero-bag-item>div{flex:1}.hero-bag-item .tower-btn{padding:8px 12px}.hero-catalog{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.hero-catalog h3{margin:0;font-size:19px}
#heroSkillBar{position:fixed;right:calc(88px + env(safe-area-inset-right));bottom:calc(80px + env(safe-area-inset-bottom));z-index:23;display:flex;gap:6px;pointer-events:auto}
#heroSkillBar[hidden],#heroTeamBar[hidden]{display:none!important}.hero-skill{position:relative;width:65px;height:72px;border:1px solid #91a8b6;border-radius:14px;background:#19384bec;color:#fff2ce;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:2px;font-size:11px;touch-action:manipulation}.hero-skill .hero-icon{width:38px;height:38px}.hero-skill small{position:absolute;right:4px;top:2px;color:#fff}.hero-skill:disabled{filter:grayscale(.8);opacity:.65}
#heroTeamBar{position:static;display:flex;flex-wrap:wrap;gap:5px;max-width:100%;pointer-events:auto}
#heroTargetPrompt{display:flex;align-items:center;gap:8px;max-width:330px;width:fit-content;border:1px solid #edc67a;border-radius:10px;padding:3px 8px;background:#152e3ff5;color:#fff2ce;pointer-events:auto;font-size:13px}#heroTargetPrompt[hidden]{display:none!important}#heroTargetPrompt button{min-height:44px;min-width:44px;background:#344f60;color:#fff;border:1px solid #91a8b6;border-radius:8px;touch-action:manipulation}#heroTeamBar button.hero-targetable{border:2px solid #75ece0;box-shadow:0 0 9px #52e3d34d}.hero-skill.hero-target-selected{border:2px solid #edc67a;background:#38575c}
#heroTactics[hidden]{display:none!important}
#heroTactics{position:fixed;z-index:75;width:min(278px,calc(100vw - 16px));max-height:calc(100dvh - 16px);overflow:auto;padding:10px;background:#112b3bf5;border:1px solid #cdb777;border-radius:14px;box-shadow:0 10px 30px #0008;color:#f9edcf;pointer-events:auto;touch-action:manipulation}
#heroTactics header{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:15px}
#heroTactics header button{min-width:44px;min-height:44px;border:0;border-radius:9px;color:#edf5ff;background:#274356;font-size:24px}
.hero-tactic-options{display:grid;gap:6px;margin-top:6px}
.hero-tactic-options button{min-height:48px;text-align:left;border:1px solid #718e9d;border-radius:9px;padding:7px 10px;color:#e7f5ff;background:#1c394c;display:grid;gap:3px}
.hero-tactic-options button[aria-pressed=true]{border-color:#f1c568;background:#455044}
.hero-tactic-options b{font-size:16px}.hero-tactic-options small,#heroTactics p{font-size:12px;line-height:1.4;color:#c4d6df}#heroTactics p{margin:8px 0 0}#heroTactics button:focus-visible{outline:2px solid #ffd36e;outline-offset:2px}
#heroTeamBar button{background:#152e3fe8;color:#dfecf2;border:1px solid #79909a;border-radius:10px;width:58px;padding:4px;display:grid;gap:3px;font-size:11px;touch-action:manipulation}#heroTeamBar button[aria-pressed=true]{border:2px solid #edc67a;background:#3c4c52}#heroTeamBar .party-glyph{width:26px;height:26px;margin:auto}#heroTeamBar meter{width:100%;height:5px}#heroTeamBar button:disabled{opacity:.4}
@media(max-height:500px){#heroSkillBar{bottom:calc(65px + env(safe-area-inset-bottom));right:calc(85px + env(safe-area-inset-right))}.hero-skill{width:58px;height:59px;font-size:10px}.hero-skill .hero-icon{width:31px;height:31px}#heroTeamBar button{width:48px}#heroTeamBar .party-glyph{width:20px;height:20px}.hero-catalog{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.hero-equipped-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-height:500px) and (min-width:641px){
  #towerDialog.hero-management{position:relative;padding:14px 18px}
  #towerDialog.hero-management>.tower-kicker{display:none}
  #towerDialog.hero-management>.tower-heading{font-size:22px;min-height:30px;max-width:calc(100% - 265px);margin:0}
  #towerDialog.hero-management>.tower-voice-controls{position:absolute;right:92px;top:12px;margin:0}
  #towerDialog.hero-management>.tower-copy{margin:3px 0}
  #towerDialog.hero-management>.hero-tabs{margin:5px 0}
  #towerDialog.hero-management>.hero-page-tabs{margin:5px 0}
  #towerDialog.hero-management .hero-tabs .tower-btn,#towerDialog.hero-management .hero-page-tabs .tower-btn{min-height:34px;padding:5px 10px}
  #towerDialog.hero-management .hero-equipped{padding:8px;gap:3px}
  #towerDialog.hero-management .hero-equipped .hero-icon{width:40px;height:40px}
  #towerDialog.hero-management .hero-equipped .tower-btn{min-height:32px;padding:5px 10px}
  #towerDialog.hero-management .tower-actions{padding-top:5px}
}
