:root{color-scheme:dark;--gold:#ebc880;--teal:#5ddfc5;--ink:#071321;--line:#627da4;--muted:#b6cbe1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:0;overflow-x:clip;background:radial-gradient(ellipse at 18% -5%,#153955 0,transparent 44%),radial-gradient(ellipse at 91% 40%,#0d293b 0,transparent 40%),#06111f;color:#e7f0f9;font:16px/1.55 'Segoe UI',Tahoma,Arial,sans-serif}a{color:#d6b874}a:hover{color:#fff2c1}.skip{position:absolute;transform:translateY(-150%);z-index:1000}.skip:focus{transform:none}.ambient{position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:repeating-linear-gradient(0deg,transparent,transparent 5px,#4086bf06 6px,#4086bf06 7px)}.topbar{border-bottom:1px solid #6087aa88;background:#06101eea;box-shadow:0 8px 35px #020a14b0}.topinner{max-width:1340px;padding:14px 24px;margin:auto;display:flex;gap:25px;align-items:center;justify-content:space-between}.identity{display:flex;align-items:center;gap:12px;text-decoration:none;color:#f0d38c;white-space:nowrap}.identity img{width:50px;height:50px;object-fit:contain}.identity strong{display:block;font:700 28px Georgia,serif;letter-spacing:1px}.identity em{color:#74d0ed;font-style:normal}.identity small{display:block;color:#9ab6ce;font-size:9px;letter-spacing:3px}.topbar nav{display:flex;flex-wrap:wrap;gap:8px}.topbar nav a{text-decoration:none;color:#bdd4e7;font-size:13px;padding:10px 13px;border:1px solid transparent;border-radius:6px;white-space:nowrap}.topbar nav a:hover,.topbar nav a.current{border-color:#ae8c50;background:#122c47;color:var(--gold)}.shell{max-width:1330px;padding:0 23px 85px;margin:0 auto}.intro{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:34px 0 24px}.eyebrow{color:#e6c481;letter-spacing:2px;font-size:11px;font-weight:700}.intro h1{font:700 clamp(33px,4.6vw,66px)/1.08 Georgia,serif;letter-spacing:-1px;margin:10px 0}.intro h1 em{color:#6bd5ed;font-style:normal}.intro p{color:var(--muted);max-width:690px;font-size:15px;margin:0}.introtag{font:11px/1.8 Georgia,serif;letter-spacing:2px;color:#c0af8f;text-align:right;min-width:180px}.introtag strong{font-size:15px;color:var(--gold)}.ornate{border:1px solid #94794f;box-shadow:0 0 0 4px #061221,0 0 0 5px #304f71,0 15px 35px #0008;position:relative;border-radius:9px}.lookup{background:linear-gradient(150deg,#112a41,#081726);padding:25px;margin-bottom:24px}.lookup form{display:grid;grid-template-columns:1fr 1.1fr 1.35fr 1fr auto;align-items:end;gap:13px}.field{min-width:0}label{display:block;color:#e9d2a2;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.25px;margin-bottom:7px}input,select{width:100%;min-width:0;max-width:100%;border:1px solid #67829b;border-radius:6px;color:#f0f5fc;background:#071522;padding:12px 11px;height:48px;font:15px 'Segoe UI',Arial,sans-serif}input:focus,select:focus{outline:2px solid #75ceeb;outline-offset:1px}select{cursor:pointer}select:disabled{cursor:not-allowed;opacity:.6}select option{background:#0b2235;color:white}.hint{font-size:10px;color:#a7c8dc;font-weight:400;letter-spacing:0;text-transform:none}.primary{background:linear-gradient(#bc8543,#7d4c22);border:1px solid #e6bc76;box-shadow:inset 0 0 0 1px #714619,0 3px 8px #0005;border-radius:4px;color:#fff5d7;font-weight:800;font-size:12px;letter-spacing:1px;height:48px;padding:0 20px;cursor:pointer;white-space:nowrap}.primary:disabled{opacity:.53;cursor:not-allowed}.primary:not(:disabled):hover{filter:brightness(1.18)}.primary span{margin-left:9px;font-size:19px}.status{font-size:12px;min-height:1.4em;color:#a8c8df;margin:15px 0 0}.status.error{color:#ffb7a7}.stage{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(345px,.85fr);min-height:610px;overflow:hidden;background:#091624}.scene{position:relative;min-height:610px;overflow:hidden;background:radial-gradient(ellipse at center,#1c3f5e,#07131f 80%);background-image:url('/assets/armory-scenes/62/alliance.webp');background-position:center;background-size:cover;isolation:isolate}.sceneShade{position:absolute;inset:0;background:linear-gradient(180deg,#030c1be6 0%,transparent 30%,#06102022 55%,#03101cec 100%);z-index:0}.model{position:absolute;max-width:96%;width:auto;max-height:90%;height:auto;bottom:1%;left:50%;transform:translateX(-50%) scale(1.16);transform-origin:center bottom;object-fit:contain;filter:drop-shadow(0 8px 24px #020510b8);z-index:1;pointer-events:none}.sceneTop{position:absolute;z-index:2;top:22px;left:22px;right:22px;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;color:#dfc892;font-size:11px;font-weight:700;letter-spacing:2px;text-shadow:0 1px 4px #000}.sceneInfo{position:absolute;bottom:24px;left:25px;right:20px;z-index:2;text-shadow:0 2px 12px #000}.sceneInfo h2{font:700 clamp(29px,3.9vw,52px)/1.13 Georgia,serif;color:#f8e2a7;margin:9px 0}.sceneInfo p{color:#deebf7;font-size:14px;margin:0;max-width:550px}.profile{padding:24px 27px;background:linear-gradient(135deg,#0a2134,#081320)}.profile[hidden],.model[hidden],.previewbar[hidden]{display:none!important}.statline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:20px}.statline>div{border:1px solid #56759a;background:#102d47;padding:12px 11px;border-radius:5px;min-width:0}.statline small{display:block;color:#aec7dd;font-size:9px;letter-spacing:.8px;min-height:26px}.statline strong{color:#efcc82;font:700 28px Georgia,serif}.previewbar{margin:0 0 18px;border:1px solid #4e7392;background:linear-gradient(135deg,#0e263a,#0a1b2a);border-radius:6px;padding:14px 14px 12px}.previewfield{display:flex;flex-direction:column}.previewfield select{background:#0a1827}.previewhint{margin:8px 0 0;color:#a7c3d7;font-size:12px;line-height:1.55}.details{display:flex;flex-wrap:wrap;gap:9px;color:#bbd7ec;font-size:12px}.details span{border:1px solid #45637f;border-radius:4px;padding:5px 9px;background:#132b3f}.profile h3{font:700 22px Georgia,serif;color:#efcc82;margin:27px 0 10px;border-bottom:1px solid #5d4a30;padding-bottom:8px}.equipment{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.gear-item{border:1px solid #456585;background:#0b2238;padding:10px 10px 12px;text-decoration:none;display:block;border-radius:4px;min-width:0;transition:background .2s}.gear-item:hover{background:#173955;border-color:#b88a55}.gear-item small{display:block;color:#95b9d3;text-transform:uppercase;letter-spacing:.7px;font-size:9px}.gear-item strong{display:block;color:#e5eaf5;font-size:12px;overflow-wrap:anywhere;line-height:1.3;margin:4px 0}.gear-item .ilvl{font-size:11px;color:#edc77b}.gear-item.qepic strong{color:#c4a0ff}.gear-item.qrare strong{color:#72a9ff}.gear-item.qlegendary strong{color:#ffb876}.footnote{font-size:12px;color:#a7b8c6;line-height:1.7}.emptyGear{display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:center;padding:30px 45px;background:#071422;color:#aebed0;text-align:center}.emptyGear img{width:72px;height:72px;opacity:.7}.emptyGear p{max-width:300px}.help{padding-top:42px}.help h2{font:700 32px Georgia,serif;color:#e4cb91}.helpgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.helpgrid article{background:#0d2234;border:1px solid #2b5575;padding:21px;border-radius:6px}.helpgrid b{color:#ebc785}.helpgrid p{font-size:13px;color:#bdcad5;line-height:1.7}.footer{padding:25px;text-align:center;background:#050e18;border-top:1px solid #3b6588;color:#859fb0;font-size:11px;letter-spacing:1px}.footer a{margin:0 10px}.loading{animation:pulse 1.4s infinite alternate}@keyframes pulse{from{opacity:.58}to{opacity:1}}@media(max-width:1050px){.lookup form{grid-template-columns:1fr 1fr 1fr}.lookup button{grid-column:span 3}.stage{grid-template-columns:1fr 1fr}.scene{min-height:580px}}@media(max-width:740px){.topinner{padding:12px 14px;flex-direction:column;gap:8px;align-items:stretch}.topbar nav{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:thin;max-width:100%;padding-bottom:6px}.topbar nav a{padding:7px 9px}.shell{padding:0 15px 52px}.intro{margin-top:25px}.introtag{display:none}.intro h1{font-size:38px}.lookup{padding:16px 15px}.lookup form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lookup .realmfield{grid-column:1/3}.lookup button{grid-column:1/3}.stage{grid-template-columns:1fr}.scene{min-height:470px}.model{max-width:108%;max-height:95%;bottom:0;transform:translateX(-50%) scale(1.34)}.profile{padding:18px}.emptyGear{min-height:190px}.helpgrid{grid-template-columns:1fr}.help h2{font-size:28px}}@media(max-width:400px){.identity strong{font-size:23px}.identity img{width:44px;height:44px}.intro h1{font-size:32px}.lookup form{grid-template-columns:1fr}.lookup .realmfield,.lookup button{grid-column:auto}.scene{min-height:430px}.model{max-width:118%;max-height:96%;bottom:-1%;transform:translateX(-50%) scale(1.4)}.statline small{font-size:8px}.statline strong{font-size:23px}.equipment{grid-template-columns:1fr}.sceneInfo h2{font-size:31px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.loading{animation:none}}

/* v2.0.13 public Online Armory tools */
.saved-characters,.artwork-browser{margin:0 0 24px;padding:22px 25px;background:linear-gradient(150deg,#0e253a,#071622)}
.feature-top{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}.feature-top h2{font:700 clamp(23px,3vw,33px) Georgia,serif;color:#f0d293;margin:0}.feature-top .eyebrow{margin:0 0 3px}.feature-top p.footnote{margin:0}.saved-list{display:flex;flex-wrap:wrap;gap:10px}.favorite-card,.secondary{background:linear-gradient(#153651,#0b1c2e);border:1px solid #607d9a;color:#e6eef8;border-radius:6px;padding:10px 14px;font:600 13px 'Segoe UI',Arial,sans-serif;cursor:pointer;text-decoration:none}.secondary:hover,.favorite-card:hover{border-color:#ecc27a;color:#ffe3a0}.favorite-card{display:flex;align-items:center;gap:12px}.favorite-card small{display:block;color:#9dbad0;font-size:10px}.favorite-card .remove{font-size:19px;border:0;background:transparent;color:#f7b7a6;cursor:pointer;padding:0 3px}.armory-actions{display:flex;flex-wrap:wrap;gap:9px;margin:17px 0 3px}.action-status{font-size:12px;color:#d6c08a;min-height:1.3em;margin:2px 0 8px}.paperdoll[hidden],.armory-tools[hidden]{display:none!important}.paperdoll{position:absolute;inset:85px 8px 118px;z-index:3;display:flex;align-items:flex-start;justify-content:space-between;pointer-events:none}.slot-column{width:92px;display:flex;flex-direction:column;gap:8px}.doll-slot{min-width:0;display:flex;align-items:center;gap:5px;border:1px solid #bc9c5fa8;background:#061421d9;padding:3px 5px;min-height:42px;border-radius:5px;color:#e6d099;font-size:9px;text-decoration:none;pointer-events:auto;text-shadow:0 1px 4px #000;overflow:hidden}.doll-slot:hover{border-color:#f2cb81;background:#14334a}.doll-slot img,.doll-slot .slot-fallback{width:32px;height:32px;object-fit:cover;background:#172f42;border:1px solid #5d7490;flex-shrink:0;border-radius:3px}.doll-slot .slot-fallback{display:flex;justify-content:center;align-items:center;font-weight:800;font-size:12px}.doll-slot b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:50px}.doll-slot small{display:block;color:#afd5c8;font-size:9px}.armory-tools{padding:35px 0 10px}.tools-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:12px 0 16px}.tool-card{background:linear-gradient(145deg,#0c2538,#081625);border:1px solid #507293;border-radius:9px;padding:19px;min-width:0}.tool-card h3{font:700 23px Georgia,serif;color:#e7c783;margin:0 0 13px}.tool-content{font-size:13px;color:#cbdcea}.tool-content h4{color:#e4d096;font-size:14px;margin:16px 0 6px}.tool-content p{margin:7px 0}.talent-pills{display:flex;flex-wrap:wrap;gap:6px}.talent-pills span{font-size:11px;background:#17334b;border:1px solid #4f6f90;border-radius:4px;padding:4px 7px}.loot-controls,.artwork-controls{display:grid;grid-template-columns:1fr 1.4fr auto;gap:12px;align-items:end}.loot-controls select,.artwork-controls select{font-size:14px}.loot-controls button{height:48px}.loot-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;color:#b5ccdd;font-size:13px}.loot-card{background:#102b40;border:1px solid #4c708c;border-radius:5px;padding:11px;text-decoration:none;display:block;color:#e7edf7}.loot-card b{display:block;font-size:13px}.loot-card small{color:#aec3da}.artwork-controls{grid-template-columns:1fr 1fr 1fr;margin:14px 0}.artwork-image{height:390px;position:relative;background-color:#091827;background-size:cover;background-position:center;border:1px solid #9a7848;border-radius:8px;overflow:hidden}.art-caption{position:absolute;bottom:0;left:0;right:0;padding:38px 18px 15px;background:linear-gradient(transparent,#020914e8);font:700 18px Georgia,serif;color:#f1dca2;text-shadow:0 1px 8px black}
@media(max-width:760px){.saved-characters,.artwork-browser{padding:15px}.paperdoll{inset:74px 6px 117px}.slot-column{width:75px;gap:6px}.doll-slot{padding:3px;min-height:35px}.doll-slot img,.doll-slot .slot-fallback{width:26px;height:26px}.doll-slot b{max-width:38px;font-size:8px}.doll-slot small{font-size:8px}.tools-grid{grid-template-columns:1fr}.loot-controls,.artwork-controls{grid-template-columns:1fr 1fr}.loot-controls button{grid-column:1/-1}.loot-results{grid-template-columns:1fr}.artwork-image{height:290px}}
@media(max-width:420px){.paperdoll{inset:72px 5px 105px}.slot-column{width:64px;gap:4px}.doll-slot{padding:2px;gap:3px;min-height:31px}.doll-slot img,.doll-slot .slot-fallback{width:24px;height:24px}.doll-slot b{max-width:29px;font-size:8px}.doll-slot small{font-size:7px}.artwork-controls{grid-template-columns:1fr}.feature-top .footnote{font-size:11px}.artwork-image{height:250px}}

/* v2.0.17: readable mobile equipment beneath the character photo. */
.mobile-equipment[hidden]{display:none!important}
@media(max-width:740px){
  .mobile-equipment{display:block;min-width:0;background:linear-gradient(155deg,#10283d,#071625);padding:15px 14px;border-top:1px solid #927446;border-bottom:1px solid #355d7c}
 .mobile-equipment-title{display:flex;flex-wrap:wrap;gap:6px 12px;justify-content:space-between;align-items:center;margin-bottom:12px}
 .mobile-equipment-title strong{font:700 19px Georgia,serif;color:#efd493}
 .mobile-equipment-title span{font-size:11px;color:#b4c7d8}
 #mobileEquipment .paperdoll{position:static;inset:auto;z-index:auto;pointer-events:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:10px;margin:0;padding:0}
 #mobileEquipment .slot-column{width:auto;min-width:0;display:flex;gap:7px;flex-direction:column}
 #mobileEquipment .doll-slot{width:100%;min-height:49px;display:flex;align-items:center;padding:5px 6px;gap:7px;overflow:hidden}
 #mobileEquipment .doll-slot img,#mobileEquipment .doll-slot .slot-fallback{height:33px;width:33px;flex:0 0 33px}
 #mobileEquipment .doll-slot>span:last-child{min-width:0;flex:1}
 #mobileEquipment .doll-slot b{font-size:11px;max-width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}
 #mobileEquipment .doll-slot small{font-size:10px}
 .scene{min-height:580px}
 .scene .sceneInfo{bottom:23px}
}
@media(max-width:400px){
 .mobile-equipment{padding:13px 9px}
 #mobileEquipment .paperdoll{gap:7px}
 #mobileEquipment .doll-slot{padding:4px;gap:5px}
 #mobileEquipment .doll-slot img,#mobileEquipment .doll-slot .slot-fallback{height:29px;width:29px;flex-basis:29px}
 #mobileEquipment .doll-slot b{font-size:10px}
 #mobileEquipment .doll-slot small{font-size:9px}
 .scene{min-height:540px}
}
@media(min-width:741px){.mobile-equipment{display:none!important}}

/* Keep equipment below the hero at phone widths, never over the portrait. */
@media(max-width:740px){
  .scene > #paperDoll,.scene > .paperdoll{display:none!important}
  #mobileEquipment .paperdoll{display:grid!important}
  .sceneInfo{z-index:7}
  /* Full-width cards on narrow phones; no tiny truncated labels over character. */
}
@media(max-width:430px){
  #mobileEquipment .paperdoll{grid-template-columns:minmax(0,1fr)!important;gap:8px!important}
  #mobileEquipment .slot-column{width:100%!important}
  #mobileEquipment .doll-slot{min-height:46px;padding:5px 8px;gap:10px}
  #mobileEquipment .doll-slot img,#mobileEquipment .doll-slot .slot-fallback{height:34px;width:34px;flex-basis:34px}
  #mobileEquipment .doll-slot b{font-size:12px;max-width:none;white-space:normal;overflow-wrap:anywhere}
  #mobileEquipment .doll-slot small{font-size:11px}
}

/* Retired features are never shown, including on cached older markup. */
.gh3d-host,.gh3d-panel,.gh3d-controls,.mobile-viewer-controls{display:none!important}


/* v2.0.18: enlarge the Blizzard render so the character fits the hero scene more naturally on phones. */
@media(max-width:740px){
  .scene{min-height:530px}
  .model{max-width:122%;max-height:108%;bottom:-1%;transform:translateX(-50%) scale(1.58)}
  .sceneInfo{left:20px;right:20px;bottom:18px}
  .sceneInfo h2{font-size:clamp(34px,11vw,54px);margin:6px 0}
}
@media(max-width:430px){
  .scene{min-height:505px}
  .model{max-width:126%;max-height:112%;bottom:0;transform:translateX(-50%) scale(1.7)}
  .sceneTop{top:18px;left:18px;right:18px}
  .sceneInfo{left:18px;right:18px;bottom:16px}
}


/* v2.0.26 DESKTOP ONLINE ARMORY REPAIR
   Profile equipment cards can run for thousands of pixels. The grid item
   used to stretch the hero to that full height, leaving Slayer near its end.
   The already-loaded empty state also remained visible because author CSS
   display:flex overrode the browser [hidden] default.
   Mobile <=740px retains the user-approved v2.0.18 scene unchanged. */
.emptyGear[hidden]{display:none!important}
@media (min-width:741px){
  .stage{align-items:start;overflow:visible}
  .stage>.scene{
    align-self:start;
    position:sticky;
    top:12px;
    height:clamp(610px,calc(100vh - 95px),770px);
    min-height:0;
    overflow:hidden;
    border-radius:8px 0 0 8px;
  }
  .stage>.scene .model{
    height:70%;
    max-height:none;
    width:auto;
    max-width:108%;
    bottom:13%;
    transform:translateX(-50%) scale(1.20);
    transform-origin:center bottom;
  }
  .stage>.scene .sceneInfo{bottom:23px}
  /* Right column already lists every item; remove the duplicate micro-slots on the portrait. */
  .stage>.scene .paperdoll{display:none!important}
  .stage>.profile{min-width:0;align-self:start}
}
@media (min-width:741px) and (max-width:1024px){
  .stage>.scene .model{height:66%;bottom:14%;transform:translateX(-50%) scale(1.12)}
  .stage>.scene .sceneTop{gap:6px;flex-wrap:nowrap;font-size:9px;letter-spacing:1px}
  .stage>.scene .sceneInfo{left:16px;right:12px}
  .stage>.scene .sceneInfo h2{font-size:clamp(27px,3vw,38px)}
}


/* v2.0.27: DIFFERENT RESPONSIVE ARMORY VIEWS
 * >=741px: WoW-inspired desktop paper-doll. Actual Blizzard character render
 * stays centered in a bounded backdrop while clickable equipment flanks it.
 * The full item details/stats are BELOW the hero, not a stretching sidebar.
 * <=740px: preserve the user's approved v2.0.18 portrait and mobile gear list.
 * HTML and 3D behavior are unchanged; no sample model is used.
 */
@media (min-width:741px){
 .stage{
   --gh-slot-panel:clamp(150px,19vw,245px);
   display:grid;
   grid-template-columns:minmax(0,1fr);
   align-items:start;
   overflow:hidden;
   min-height:0;
   background:linear-gradient(90deg,#0a1b2c,#102d42 50%,#0a1b2c);
 }
 .stage>.scene{
   position:relative;
   top:auto;
   grid-row:1;
   grid-column:1;
   justify-self:center;
   align-self:start;
   margin:0;
   width:calc(100% - 2 * var(--gh-slot-panel));
   height:clamp(650px,58vw,790px);
   min-height:0;
   max-width:none;
   overflow:visible;
   border-radius:0;
   background-size:cover;
   background-position:center;
 }
 .stage>.scene .sceneShade{pointer-events:none}
 .stage>.scene .model{
   height:78%;width:auto;max-width:95%;max-height:none;
   left:50%;bottom:12%;
   transform:translateX(-50%) scale(1.12);
   transform-origin:center bottom;
   object-fit:contain;
 }
 .stage>.scene .sceneTop{left:16px;right:16px;top:20px;gap:10px;flex-wrap:wrap}
 .stage>.scene .sceneInfo{left:12px;right:12px;bottom:17px;text-align:center}
 .stage>.scene .sceneInfo h2{font-size:clamp(33px,3.7vw,51px);margin:5px 0}
 .stage>.scene .sceneInfo .eyebrow{font-size:10px;letter-spacing:1.7px}
 .stage>.scene .sceneInfo p{max-width:none;font-size:13px}
 .stage>.scene .paperdoll:not([hidden]){
   display:flex!important;
   position:absolute;
   left:calc(-1 * var(--gh-slot-panel));
   right:calc(-1 * var(--gh-slot-panel));
   top:72px;bottom:145px;
   inset-block:72px 145px;
   z-index:5;
   align-items:stretch;
   justify-content:space-between;
   gap:10px;
   pointer-events:none;
 }
 .stage>.scene .slot-column{
   display:flex;flex-direction:column;
   justify-content:space-between;
   gap:7px;
   width:var(--gh-slot-panel);
   min-width:0;
   padding:6px 10px;
   background:linear-gradient(90deg,#071726e6,#0a2237a6);
 }
 .stage>.scene .slot-column:last-child{
   background:linear-gradient(270deg,#071726e6,#0a2237a6);
 }
 .stage>.scene .doll-slot{
   min-height:49px;
   width:100%;
   flex:1 1 0;
   max-height:62px;
   padding:5px 7px;
   gap:9px;
   border:1px solid #927c5bcc;
   background:#071a2bdc;
   display:flex;
   pointer-events:auto;
   font-size:11px;
   transition:border-color .15s,background .15s;
 }
 .stage>.scene .doll-slot:hover,.stage>.scene .doll-slot:focus-visible{border-color:#efcf88;background:#163451}
 .stage>.scene .doll-slot img,.stage>.scene .doll-slot .slot-fallback{width:35px;height:35px;flex:0 0 35px}
 .stage>.scene .doll-slot>span:last-child{min-width:0;flex:1}
 .stage>.scene .doll-slot b{max-width:none;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .stage>.scene .doll-slot small{font-size:10px}
 .stage>.profile{
   grid-row:2;
   grid-column:1;
   padding:24px;
   background:linear-gradient(180deg,#0c2438,#071625);
   border-top:1px solid #846e4b;
   width:100%;
 }
 .stage>.profile>.statline{max-width:800px;margin:0 auto 20px}
 .stage>.profile>.previewbar{max-width:800px;margin:0 auto 16px}
 .stage>.profile>.armory-actions{justify-content:center}
 .stage>.profile>.action-status{text-align:center}
 .stage>.profile>.details{justify-content:center}
 .stage>.profile #equipment{grid-template-columns:repeat(4,minmax(0,1fr))}
 .stage>.emptyGear{grid-column:1}
 .stage #mobileEquipment{display:none!important}
}
@media (min-width:741px) and (max-width:1020px){
 .stage{--gh-slot-panel:clamp(140px,21vw,175px)}
 .stage>.scene{height:650px}
 .stage>.scene .model{height:73%;max-width:97%;bottom:15%;transform:translateX(-50%) scale(1.08)}
 .stage>.scene .sceneTop{font-size:9px;left:10px;right:10px}
 .stage>.scene .sceneInfo h2{font-size:clamp(29px,4vw,42px)}
 .stage>.scene .paperdoll:not([hidden]){top:69px;bottom:140px}
 .stage>.scene .slot-column{padding:5px 6px;gap:5px}
 .stage>.scene .doll-slot{min-height:43px;padding:3px 4px;gap:5px}
 .stage>.scene .doll-slot img,.stage>.scene .doll-slot .slot-fallback{width:29px;height:29px;flex-basis:29px}
 .stage>.scene .doll-slot b{font-size:10px}
 .stage>.scene .doll-slot small{font-size:9px}
 .stage>.profile #equipment{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:740px){
 /* Explicit mobile boundary; earlier user-approved rules remain authoritative. */
 .stage{display:grid;grid-template-columns:1fr;overflow:hidden}
}


/* v2.0.28: Desktop-only correctly sized character visual. Blizzard's PNG
   includes uneven transparent margins; armory-stage-228.js crops them without
   changing the original image or the approved mobile look. */
@media (min-width:741px){
 .stage>.scene .gh228-portrait{
  position:absolute;
  display:block;
  z-index:1;
  left:50%;
  bottom:16%;
  height:73%;
  max-width:88%;
  width:auto;
  object-fit:contain;
  transform:translateX(-50%);
  filter:drop-shadow(0 8px 24px #020510b8);
  pointer-events:none;
 }
 .stage>.scene.gh228-fit-ready > #characterRender{visibility:hidden}
 /* If the Blizzard image service is temporarily unavailable, preserve the
    last stable portrait rather than enlarging an unknown transparent canvas. */
}
@media (min-width:741px) and (max-width:1020px){
 .stage>.scene .gh228-portrait{bottom:19%;height:62%;max-width:91%}
}
@media (max-width:740px){
 .gh228-portrait{display:none!important}
 .stage>.scene > #characterRender{visibility:visible!important}
}
.gh228-portrait[hidden]{display:none!important}
