/* Painted equipment uses its own optical size; functional controls stay compact. */
.astra-icon { display:inline-block; width:24px; height:24px; flex:0 0 24px; vertical-align:middle; position:relative; margin-inline:0 3px; background:center/contain no-repeat; pointer-events:none; }
.astra-icon__legacy { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip-path:inset(50%)!important; white-space:nowrap!important; border:0!important; }
.astra-icon > img { display:block!important; width:100%!important; height:100%!important; max-width:none!important; max-height:none!important; object-fit:contain!important; filter:none!important; image-rendering:auto!important; margin:0!important; padding:0!important; border:0!important; }
.astra-icon--failed > img { display:none!important; }
.astra-icon--failed > .astra-icon__legacy { position:static!important; width:auto!important; height:auto!important; margin:0!important; clip-path:none!important; }
.astra-icon--control { width:18px; height:18px; flex-basis:18px; }
img.astra-icon-image { object-fit:contain!important; image-rendering:auto!important; filter:none!important; }
body.astra-clean #topbar img.astra-icon-image { width:34px!important; height:34px!important; }
body.astra-clean :is(.rank-tab,.q-tab) > .astra-icon { margin-inline-end:7px; }
body.astra-clean .rh-ic .astra-icon { width:36px; height:36px; margin:0; }
:is(.cp-title,.ap-title,.mm-title) .astra-icon { width:22px; height:22px; flex-basis:22px; }
:is(button,a):focus-visible .astra-icon { filter:drop-shadow(0 0 2px #f5dfa6); }
@media (prefers-reduced-motion:reduce) { .astra-icon { animation:none!important; transition:none!important; } }
body.astra-clean #astra-hud-controls :is(#astra-return-center,#astra-return-mark) { gap:3px; }
body.astra-clean #astra-hud-controls :is(#astra-return-center,#astra-return-mark) > .astra-icon { width:24px; height:24px; flex:0 0 24px; margin:0; }

/* O desenho e sua caixa precisam ter a mesma altura, inclusive após conversão de emoji. */
body.astra-clean #coords .astra-icon { width:16px; height:16px; flex:0 0 16px; margin:0; }
body.astra-clean .ahp-badge { display:inline-flex; align-items:center; justify-content:center; gap:4px; white-space:nowrap; min-height:26px; box-sizing:border-box; padding:3px 6px; }
body.astra-clean .ahp-badge .astra-icon { width:16px; height:16px; flex:0 0 16px; margin:0; }
body.astra-clean .tbm-flyout .tbm-item { width:112px; flex:0 0 112px; padding:10px 8px!important; }
body.astra-clean .tbm-flyout .tbm-label { width:100%; min-width:0; font-size:12px; overflow-wrap:anywhere; }
@media(max-width:799px), (max-width:1099px) and (max-height:1099px), (max-height:719px), (pointer:coarse) {
  body.astra-clean #topbar [data-nav-label] img.astra-icon-image { width:26px!important; height:26px!important; }
}
/* Monitor vertical de desktop: há altura para painéis independentes, sem o modo de celular. */
@media(min-width:800px) and (max-width:1099px) and (min-height:1100px) and (pointer:fine) {
  body.astra-clean #game::after, body.astra-clean #astra-sidebar-toggle { display:none!important; }
  body.astra-clean #topbar { position:fixed!important; left:12px!important; right:12px!important; top:8px!important; width:calc(100% - 24px)!important; max-width:none!important; height:76px!important; padding:8px!important; transform:none!important; display:flex; justify-content:space-evenly!important; gap:4px!important; overflow-x:auto; overflow-y:hidden; box-sizing:border-box; }
  body.astra-clean #topbar > [data-nav-label] { display:flex; flex-direction:column; align-items:center; justify-content:center; flex:0 0 auto; gap:4px; height:56px; min-width:54px; padding:4px!important; }
  body.astra-clean #topbar > [data-nav-label]::after { content:attr(data-nav-label); font:10px/12px 'Segoe UI',sans-serif; }
  body.astra-clean #topbar [data-nav-label] img.astra-icon-image { width:30px!important; height:30px!important; }
  body.astra-clean #astra-sidebar-panels { display:contents; }
  body.astra-clean #player-panel { position:fixed!important; left:12px!important; top:96px!important; right:auto!important; bottom:auto!important; width:300px!important; max-height:calc(100dvh - 760px); overflow:auto; transform:none!important; }
  body.astra-clean #minimap { display:block; position:fixed!important; left:12px!important; right:auto!important; top:var(--astra-minimap-top,370px)!important; bottom:auto!important; width:206px!important; transform:none!important; }
  body.astra-clean #chat { display:flex; position:fixed!important; left:12px!important; right:auto!important; top:auto!important; bottom:110px!important; width:360px!important; height:300px!important; max-height:300px!important; transform:none!important; }
  body.astra-clean #capture-panel { display:block; position:fixed!important; right:12px!important; left:auto!important; top:auto!important; bottom:110px!important; width:300px!important; max-height:380px!important; overflow:auto; transform:none!important; }
  body.astra-clean #mini-hunt { display:none!important; }
  body.astra-clean #auto-panel { display:none!important; }
  body.astra-clean.astra-show-utilities #auto-panel { display:block!important; position:fixed!important; right:12px!important; left:auto!important; top:96px!important; width:280px!important; z-index:80; }
  body.astra-clean.astra-hide-panels #player-panel, body.astra-clean.astra-hide-map #minimap, body.astra-clean.astra-hide-chat #chat { display:none!important; }
}
