/* Torre Infinita V0.4 — arte original e sistemas de guilda */
:root{--ink:#f6f0e8;--acc:#e6bd73;--line:#494059;--panel:#17182b}
body{background:radial-gradient(ellipse at 50% -25%,#49315a,#111427 55%,#090b14)}
.hero-banner{background-image:linear-gradient(90deg,rgba(12,13,26,.98),rgba(14,13,26,.90) 36%,rgba(20,15,30,.15) 80%),url('./assets/guild-heroes.webp');background-size:cover;background-position:center 38%;border-color:#9b78a6;min-height:330px}
.hero-banner .tower-art{display:none}.hero-banner .hero-copy{max-width:55%}.hero-banner .hero-copy p{color:#f0e5d9;text-shadow:0 1px 5px #090b14}
.hero-banner h2{text-shadow:0 2px 8px #060610}.hero-banner .eyebrow{color:#efd199}
.hc{background:linear-gradient(160deg,#292039,#101326);padding:0;border:2px solid #685477;box-shadow:0 8px 22px #05061070}
.hc .hcs{aspect-ratio:3/4.55;position:relative;overflow:hidden;display:block;background:#17172b}
.hero-art{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;filter:saturate(.95) contrast(1.05)}
.hc .hcs:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0c0c1adb 96%);pointer-events:none}
.hero-rarity{position:absolute;left:8px;bottom:10px;z-index:2;color:#f9d38c;font-size:16px;letter-spacing:2px;text-shadow:0 2px 4px black}
.hero-mini{width:60px;height:78px;object-fit:cover;object-position:center top;border-radius:10px;border:1px solid #9a7898;display:block;margin:0 auto;box-shadow:0 4px 15px #070614}
.arena .u .hero-mini{width:68px;height:95px}.arena .u{width:80px}
.train-unit .hero-mini{width:48px;height:62px}
.character-portrait{height:260px;overflow:hidden;position:relative;border-radius:12px;background:#151525;border:1px solid #79648a}
.character-portrait img{width:100%;height:100%;object-fit:contain;object-position:center top}
.persona-tag,.position-tag{display:inline-flex;gap:4px;align-items:center;padding:4px 9px;border-radius:20px;border:1px solid #8c729a;background:#40304a9c;font-size:11px;font-weight:700;color:#f5dba8}
.trait-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}
.trait{background:#242139;border:1px solid #4c4565;padding:10px 12px;border-radius:12px}
.trait b{display:block;font-size:12px}.trait span{font-size:13px;color:#cbb8de}
.trait meter{width:100%;height:10px}
.roster-v4 .roster-item{min-width:0;background:linear-gradient(#262039,#18182b);border:1px solid #463f59;padding:9px;border-radius:15px}
.roster-v4 .roster-item select{width:100%;border:1px solid #655877;border-radius:8px;background:#181b2e;color:#f5efe9;padding:9px 8px;margin-top:8px}
.roster-v4 .roster-item .position-tag{margin-top:7px;width:fit-content}
.guild-buildings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:14px 0}
.building-card{border:1px solid #615173;border-radius:16px;background:radial-gradient(circle at 80% 0%,#3f325b,#1c1d33 60%);padding:17px;min-width:0}
.building-icon{font-size:29px;display:block;margin-bottom:8px}.building-card h3{font-size:19px;margin:2px 0}
.building-card p{color:#aaa9bd;font-size:13px;min-height:56px}
.building-card button{width:100%}.guild-rank{letter-spacing:4px;color:#d8ab61;font-size:13px;margin:7px 0}
.tactics-panel{border:1px solid #675579;background:linear-gradient(140deg,#281e37,#17192b);border-radius:17px;padding:15px;margin:16px 0}
.tactics-panel h3{margin:0 0 5px}.tactics-options{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}
.tactics-options button{min-height:44px;padding:8px;font-size:12px}
.tactics-options button[aria-pressed=true]{background:#604574;border-color:#c39a7a;color:#fff0d6}
.bond-strip{display:flex;gap:8px;flex-wrap:wrap;margin:9px 0}.bond-pill{border:1px solid #5d577b;background:#30243b;border-radius:20px;padding:5px 9px;font-size:11px;color:#f0d7e5}
.story-log{border-left:3px solid var(--acc);padding:8px 11px;background:#2e2336;border-radius:5px;font-size:13px;color:#e9d8e4}
@media (max-width:650px){.hero-banner{min-height:330px;background-position:60% center}.hero-banner .hero-copy{max-width:70%}.hero-banner .hero-copy h2{font-size:31px}.guild-buildings{grid-template-columns:1fr}.trait-grid{gap:6px}.tactics-options{grid-template-columns:1fr}.hero-banner .hero-copy p{font-size:12px}}
@media (prefers-reduced-motion:reduce){.hc:hover{transform:none}}