/* Phase 3: static PvE hero/battle UI styles formerly injected at runtime. */

.pve-hero-editor-row,.pve-heroes{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
 .pve-battle-hero{min-width:0;border:1px solid #29465c;border-radius:17px;background:#0b1728;padding:10px;box-shadow:0 12px 28px rgba(0,0,0,.15)}
 .pve-battle-hero.inf{border-top-color:#30d67a}.pve-battle-hero.lancer{border-top-color:#4d9cff}.pve-battle-hero.marksman{border-top-color:#ff5578}
 .hero-progression{margin:0 0 8px;padding:10px 12px;border:1px solid rgba(96,165,250,.24);border-radius:14px;background:rgba(15,23,42,.32);position:relative}
 .hero-compact-grid{display:grid;grid-template-columns:92px minmax(0,1fr) 118px;gap:12px;align-items:center}
 .hero-photo-select{appearance:none;border:1px solid rgba(96,165,250,.3);background:rgba(15,23,42,.42);border-radius:14px;padding:6px;color:#e2e8f0;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;position:relative}
 .hero-photo-select.readonly{cursor:default}.hero-photo-select:hover{border-color:#38bdf8}.hero-portrait{width:70px;height:70px;border-radius:12px;object-fit:cover}
 .hero-photo-name{font-size:.72rem;font-weight:900;text-align:center;max-width:84px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hero-gen-badge{position:absolute;top:-8px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg,#d79d19,#8f6508);border:1px solid #f9dd73;color:#fff6cf;border-radius:999px;padding:3px 9px;font-size:.59rem;font-weight:950;white-space:nowrap}
 .hero-progress-main{min-width:0}.hero-progression-top{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:42px;padding-right:118px}.star-readout{font-weight:900;color:#7dd3fc}.skill-level-readout{font-weight:800;color:#c4b5fd}
 .star-controls{position:absolute;right:10px;top:10px;display:flex;gap:6px}.star-up-btn,.star-max-btn{border:1px solid rgba(96,165,250,.4);background:#17243a;color:#eaf4ff;border-radius:10px;cursor:pointer;font-weight:900;height:38px}.star-up-btn{width:38px;padding:2px}.star-up-btn img{width:100%;height:100%;object-fit:contain;border-radius:7px}.star-max-btn{padding:0 9px}
 .snowflake-row{display:flex;justify-content:center;gap:4px;margin-top:6px;min-height:42px}.snowflake{position:relative;width:42px;height:42px;flex:0 0 42px}.snowflake-leaf{position:absolute;left:50%;top:50%;width:12px;height:17px;margin:-8.5px 0 0 -6px;border:0;border-radius:60% 60% 48% 48%;background:#26364f;box-shadow:inset 0 0 0 1px rgba(148,163,184,.22);transform-origin:50% 8.5px;padding:0;cursor:pointer}.snowflake-leaf:disabled{cursor:default}.snowflake-leaf.active{background:linear-gradient(180deg,#67f8ff,#2dd4e8);box-shadow:0 0 9px rgba(34,211,238,.62),inset 0 0 0 1px rgba(6,78,96,.72)}
 .snowflake-leaf:nth-child(1){transform:rotate(0deg) translateY(-11px)}.snowflake-leaf:nth-child(2){transform:rotate(-60deg) translateY(-11px)}.snowflake-leaf:nth-child(3){transform:rotate(-120deg) translateY(-11px)}.snowflake-leaf:nth-child(4){transform:rotate(-180deg) translateY(-11px)}.snowflake-leaf:nth-child(5){transform:rotate(-240deg) translateY(-11px)}.snowflake-leaf:nth-child(6){transform:rotate(-300deg) translateY(-11px)}
 .hero-stat-strip{margin-top:6px;text-align:center;font-size:.72rem;color:#a5b4fc}.hero-stat-strip b{color:#5eead4}.hero-widget-corner{display:flex;flex-direction:column;gap:4px}.hero-widget-corner label{font-size:.62rem;color:#94a3b8;text-transform:uppercase;font-weight:850}.hero-widget-corner select,.pve-widget-readout{width:100%;background:#0f172a;border:1px solid #334155;border-radius:8px;padding:7px;color:#fff}.pve-widget-readout{text-align:center}
 .pve-skill-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:8px 0}.pve-skill-box{display:grid;grid-template-columns:47px 1fr;gap:8px;background:#07111f;border:1px solid #1c3045;border-radius:10px;padding:7px;min-height:88px}.pve-skill-box img{width:47px;height:47px;border-radius:9px;object-fit:cover}.pve-skill-box b{display:block;font-size:.72rem}.pve-skill-box small{display:block;color:#aab8c7;font-size:.61rem;line-height:1.25;margin-top:2px}.pve-skill-box em{display:block;color:#7dd3fc;font-size:.58rem;font-style:normal;margin-top:4px}.pve-skill-box.locked-skill{opacity:.36;filter:grayscale(.8)}.skill-active-value{color:#4ade80!important;font-weight:950;text-shadow:0 0 8px rgba(74,222,128,.35)}
 .widget-box-v4{position:relative;overflow:hidden;display:grid;grid-template-columns:60px 1fr;gap:10px;align-items:center;border:1px solid rgba(56,189,248,.28);border-radius:11px;background:#10243a;padding:9px}.widget-img{width:58px;height:58px;object-fit:contain;border-radius:9px;background:rgba(255,255,255,.05);padding:4px}.widget-line{display:flex;justify-content:space-between;gap:8px}.widget-line span{font-size:.67rem}.widget-current-stats{font-size:.72rem;margin-top:2px}.widget-current-stats b{color:#67e8f9}.widget-status{display:inline-flex;margin-top:5px;padding:3px 7px;border-radius:999px;font-size:.59rem;font-weight:900}.widget-status.active{background:#14532d77;color:#86efac;border:1px solid #22c55e66}.widget-status.inactive{background:#33415588;color:#a8b6c4}.small.muted{color:#94a3b8;font-size:.64rem}
 .widget-particles{position:absolute;inset:0;pointer-events:none}.widget-particle{position:absolute;left:var(--x);bottom:-8px;width:var(--s);height:calc(var(--s)*2.5);border-radius:60%;background:linear-gradient(to top,transparent,#facc15,#fff4b3);opacity:0;animation:pveGoldRise 2.9s ease-out infinite;animation-delay:var(--d);box-shadow:0 0 9px rgba(250,204,21,.5)}@keyframes pveGoldRise{0%{opacity:0;transform:translateY(8px)}18%{opacity:.75}100%{opacity:0;transform:translate(var(--dr),-75px)}}
 .pve-hero-modal,.loadout-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;padding:25px;background:rgba(2,6,23,.76);backdrop-filter:blur(7px);z-index:10020}.pve-hero-modal.open,.loadout-modal.open{display:flex}.pve-hero-dialog,.loadout-dialog{width:min(950px,96vw);max-height:86vh;overflow:auto;border-radius:18px;background:#101a2b;border:1px solid rgba(96,165,250,.38);box-shadow:0 28px 80px rgba(0,0,0,.5);padding:16px}.pve-hero-dialog-head,.loadout-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.pve-hero-dialog-head h3,.loadout-dialog-head h3{margin:0;color:#7dd3fc}.pve-hero-dialog-head button,.modal-close{width:36px;height:36px;border-radius:10px;border:1px solid #475569;background:#1e293b;color:#fff;font-size:20px;cursor:pointer}
 .pve-hero-picker-grid,.hero-picker-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:10px}.hero-picker-choice{border:1px solid rgba(100,116,139,.3);background:#162237;color:#e2e8f0;border-radius:13px;padding:8px;cursor:pointer;text-align:center}.hero-picker-choice:hover,.hero-picker-choice.selected{border-color:#38bdf8;background:#12314d;transform:translateY(-1px)}.hero-picker-choice img{width:82px;height:82px;border-radius:13px;object-fit:cover;display:block;margin:0 auto 6px}.hero-picker-choice b{display:block;font-size:.78rem}.hero-picker-choice small{color:#94a3b8;font-size:.64rem}
 /* Exact Battle Simulator dynamic loadout presentation */
 .dynamic-loadout{display:none;margin:12px 0 18px;border:1px solid rgba(56,189,248,.25);border-radius:16px;background:rgba(15,23,42,.36);overflow:hidden}.dynamic-loadout.open{display:block}.dynamic-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;padding:9px 10px;border-bottom:1px solid rgba(148,163,184,.18)}.dynamic-toolbar-actions{display:flex;gap:7px;flex-wrap:wrap}.dynamic-tool-btn{border:1px solid rgba(96,165,250,.3);background:#17243a;color:#dbeafe;border-radius:9px;padding:7px 10px;font-weight:850;cursor:pointer}.dynamic-tool-btn.max{border-color:rgba(250,204,21,.4);color:#fde68a;background:rgba(120,83,10,.22)}.dynamic-collapsed-note{padding:14px;text-align:center;color:#94a3b8}
 .dynamic-tabs{display:flex;gap:6px;overflow-x:auto;padding:9px;border-bottom:1px solid rgba(148,163,184,.18);background:rgba(15,23,42,.28)}.dynamic-tab{white-space:nowrap;border:1px solid rgba(100,116,139,.32);background:#111d30;color:#cbd5e1;border-radius:10px;padding:8px 11px;font-weight:800;cursor:pointer}.dynamic-tab.active{background:linear-gradient(135deg,#0ea5e9,#2563eb);color:white;border-color:#38bdf8}.dynamic-content{padding:13px}
 .gear-side-layout{display:grid;grid-template-columns:minmax(160px,1fr) minmax(180px,240px) minmax(160px,1fr);gap:14px;align-items:center}.gear-side-column{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:10px}.gear-slot-card{position:relative;border:1px solid rgba(100,116,139,.27);border-radius:14px;background:rgba(30,41,59,.55);padding:10px;cursor:pointer;min-height:128px;color:#e2e8f0}.gear-slot-title{font-weight:900;color:#f8fafc}.gear-slot-icon{width:72px;height:72px;border-radius:13px;display:grid;place-items:center;margin:7px auto;background:linear-gradient(145deg,#1e293b,#0f172a);overflow:hidden}.gear-slot-icon .loadout-item-photo,.gear-choice-photo .loadout-item-photo{width:100%;height:100%;object-fit:contain}.gear-tier{font-size:.78rem;text-align:center;font-weight:800;color:#93c5fd}.gear-stat{font-size:.78rem;text-align:center;color:#94a3b8;margin-top:4px}.gear-blank-plus{font-size:2rem;font-weight:900;color:#93c5fd}.gear-system-center{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;min-height:210px;padding:15px;border-radius:18px;border:1px solid rgba(45,212,191,.28);background:radial-gradient(circle at 50% 25%,rgba(45,212,191,.15),rgba(15,23,42,.68))}.gear-system-center span{color:#94a3b8;font-size:.76rem;text-transform:uppercase}.gear-system-center strong{margin-top:8px;color:#5eead4;line-height:1.5}.charm-image{width:72px;height:72px;object-fit:contain;display:block;margin:0 auto}.gear-slot-icon .charm-image{width:68px;height:68px}
 .gear-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}.gear-choice{border:1px solid rgba(100,116,139,.3);border-radius:12px;background:#162237;color:#dbeafe;padding:9px;cursor:pointer;min-height:92px}.gear-choice:hover{border-color:#38bdf8;transform:translateY(-2px)}.gear-choice.selected{outline:2px solid #2dd4bf;background:#12343b}.gear-choice-photo{width:62px;height:62px;border:2px solid #64748b;border-radius:14px;display:grid;place-items:center;margin:0 auto 7px;background:rgba(15,23,42,.65);overflow:hidden}.gear-choice b{display:block;font-size:.82rem}.gear-choice small{color:#94a3b8}.charm-triangle{display:grid;grid-template-columns:1fr 1fr;max-width:310px;margin:10px auto;gap:10px}.charm-node{border:1px solid rgba(56,189,248,.3);background:#17243a;border-radius:14px;padding:12px;color:#e2e8f0;cursor:pointer;text-align:center}.charm-node:first-child{grid-column:1/3;width:50%;justify-self:center}
 .hero-gear-board{display:grid;grid-template-columns:1fr minmax(150px,210px) 1fr;grid-template-rows:auto auto;gap:11px}.hero-gear-piece{position:relative;border:1px solid rgba(100,116,139,.25);border-radius:15px;background:rgba(30,41,59,.52);padding:10px}.hero-gear-piece img.hero-gear-art{width:78px;height:78px;float:left;margin-right:10px;object-fit:contain;border-radius:14px}.hero-gear-piece .piece-title{font-weight:950}.hero-gear-piece .piece-controls{display:grid;grid-template-columns:1fr 1fr;gap:6px;clear:both;padding-top:8px}.hero-gear-piece select{width:100%;background:#0f172a;color:#fff;border:1px solid #334155;border-radius:7px;padding:6px}.hero-gear-center{grid-column:2;grid-row:1/3;display:grid;place-items:center;text-align:center;border-radius:16px;background:radial-gradient(circle at 50% 30%,rgba(14,165,233,.16),rgba(15,23,42,.3));border:1px solid rgba(56,189,248,.2);padding:12px}.hero-gear-pos-tl{grid-column:1;grid-row:1}.hero-gear-pos-tr{grid-column:3;grid-row:1}.hero-gear-pos-bl{grid-column:1;grid-row:2}.hero-gear-pos-br{grid-column:3;grid-row:2}.piece-reset-btn{position:absolute;right:7px;top:7px;z-index:5;width:27px;height:27px;border-radius:8px;border:1px solid rgba(148,163,184,.28);background:rgba(15,23,42,.82);color:#cbd5e1;cursor:pointer}
 @media(max-width:1180px){.pve-hero-editor-row,.pve-heroes{grid-template-columns:1fr}.gear-side-layout{grid-template-columns:1fr}.gear-side-layout .gear-system-center{order:-1;min-height:120px}.hero-compact-grid{grid-template-columns:90px minmax(0,1fr) 115px}}
 @media(max-width:680px){.hero-compact-grid{grid-template-columns:76px minmax(0,1fr)}.hero-widget-corner{grid-column:1/-1;justify-self:end;width:118px}.pve-skill-grid{grid-template-columns:1fr}.hero-gear-board{grid-template-columns:1fr}.hero-gear-center,.hero-gear-pos-tl,.hero-gear-pos-tr,.hero-gear-pos-bl,.hero-gear-pos-br{grid-column:1;grid-row:auto}}

/* Runtime-loadout tier styling without inline style attributes. */
.gear-slot-icon.gear-tone-slate{box-shadow:inset 0 0 0 2px #64748b88,0 0 15px #64748b24}.gear-choice.gear-tone-slate .gear-choice-photo{border-color:#64748b}
.gear-slot-icon.gear-tone-green{box-shadow:inset 0 0 0 2px #22c55e88,0 0 15px #22c55e24}.gear-choice.gear-tone-green .gear-choice-photo{border-color:#22c55e}
.gear-slot-icon.gear-tone-blue{box-shadow:inset 0 0 0 2px #3b82f688,0 0 15px #3b82f624}.gear-choice.gear-tone-blue .gear-choice-photo{border-color:#3b82f6}
.gear-slot-icon.gear-tone-purple{box-shadow:inset 0 0 0 2px #a855f788,0 0 15px #a855f724}.gear-choice.gear-tone-purple .gear-choice-photo{border-color:#a855f7}
.gear-slot-icon.gear-tone-gold{box-shadow:inset 0 0 0 2px #eab30888,0 0 15px #eab30824}.gear-choice.gear-tone-gold .gear-choice-photo{border-color:#eab308}
.gear-slot-icon.gear-tone-red{box-shadow:inset 0 0 0 2px #ef444488,0 0 15px #ef444424}.gear-choice.gear-tone-red .gear-choice-photo{border-color:#ef4444}
.gear-slot-icon.gear-tone-deep-red{box-shadow:inset 0 0 0 2px #dc262688,0 0 15px #dc262624}.gear-choice.gear-tone-deep-red .gear-choice-photo{border-color:#dc2626}
.hero-gear-command-stat{margin-top:5px}.hero-gear-center-stats{margin-top:8px}
