/* Astra expedition layout. HUD positions are independent of world coordinates. */
body.astra-clean { --hud-surface:#111b28; --hud-border:#2b3b4d; --hud-muted:#9bacbd; }
body.astra-clean :is(.panel,#c2,#mini-hunt) { background:rgba(15,25,37,.97)!important; border:1px solid var(--hud-border)!important; border-radius:10px; box-shadow:0 4px 16px #0003!important; }
body.astra-clean #player-panel { border-top:1px solid var(--hud-border)!important; }
body.astra-clean #topbar { border-top:1px solid var(--hud-border)!important; border-radius:12px; }
body.astra-clean :is(.ap-title,.cp-title,.mm-title) { color:#cad6e3; font-size:12px; }
body.astra-clean .pp-cash { gap:12px; padding:10px 0 2px; border-top:1px solid #2b3b4d; }
body.astra-clean #player-panel #btn-bonus { background:#1b2b3e; border:1px solid #304258; color:#c7d7e8; box-shadow:none; }
body.astra-clean #ahp-launch { padding:12px; border:1px solid #31465d; background:#192a3e; border-radius:9px; }
body.astra-clean #ahp-launch > div:first-child { display:none; }
body.astra-clean #ahp-launch .d { line-height:1.5; color:#acbccd; }
body.astra-clean #ahp-launch .sw { font-size:10px; text-decoration:none; }
.astra-hunt-options { border-top:1px solid #314154; padding-top:10px; margin-top:12px; }
.astra-hunt-options summary { cursor:pointer; color:#d8e3ef; padding:8px 0; }
.astra-hunt-options :is(#ah-lock,#ah-faixa) { line-height:1.6; font-size:11px; }
#astra-close-utilities { width:100%; background:transparent; color:#aebed1; border:0; text-align:right; padding:8px; cursor:pointer; }
#astra-expedition-brand { display:none; }
#astra-hud-controls { position:fixed; bottom:30px; left:50%; transform:translateX(-50%); display:flex; padding:5px; gap:3px; border:1px solid #3b4d60; background:#111e2cf5; border-radius:12px; z-index:72; box-shadow:0 4px 20px #0004; }
#astra-hud-controls button { cursor:pointer; min-height:40px; min-width:58px; padding:8px 12px; background:transparent; border:0; border-radius:8px; color:#bdcddd; font:600 12px 'Segoe UI',sans-serif; }
#astra-hud-controls button:first-child { background:#d5b571; color:#172332; }
#astra-hud-controls button:hover { background:#2b3d51; color:#fff; }
#astra-hud-controls button.collapsed { color:#eacb8b; background:#343021; }
.astra-utilities-link { display:block; width:100%; margin-top:15px; padding:14px; text-align:left; color:#b9cbe0; border:1px solid #34455e; background:#152238; border-radius:10px; cursor:pointer; }
body.astra-hide-panels :is(#player-panel,#auto-panel,#mini-hunt,#boost-bar,#astra-expedition-brand) { display:none!important; }
body.astra-hide-chat #c2 { display:none!important; }
body.astra-hide-map #minimap { display:none!important; }
@media(min-width:1100px) and (min-height:720px) {
 body.astra-clean #game::after { content:''; position:fixed; left:0; top:0; bottom:0; width:278px; background:#0c1622f7; border-right:1px solid #344255; z-index:19; pointer-events:none; }
 body.astra-clean #astra-expedition-brand { position:fixed; display:flex; gap:12px; align-items:center; top:18px; left:20px; z-index:40; color:#e4c98e; font:800 13px 'Segoe UI',sans-serif; letter-spacing:1px; }
 #astra-expedition-brand > span { font-size:33px; }
 #astra-expedition-brand small { display:block; margin-top:5px; font-size:8px; font-weight:500; letter-spacing:1.8px; color:#8c9db2; }
 body.astra-clean #player-panel { position:fixed!important; left:16px!important; top:78px!important; width:246px!important; padding:12px!important; z-index:30; box-sizing:border-box; }
 body.astra-clean #mini-hunt { position:fixed!important; left:16px!important; top:302px!important; bottom:auto!important; width:246px!important; max-width:246px; box-sizing:border-box; z-index:30; }
 body.astra-clean #minimap { position:fixed!important; top:344px!important; left:16px!important; right:auto!important; width:246px!important; z-index:30; box-sizing:border-box; }
 body.astra-clean #minimap canvas { max-width:100%; max-height:154px; object-fit:contain; }
 body.astra-clean #c2 { position:fixed!important; left:16px!important; bottom:34px!important; top:auto!important; width:246px!important; height:calc(100vh - 550px)!important; max-height:300px!important; min-height:160px; box-sizing:border-box; z-index:30; }
 body.astra-clean #topbar { position:fixed!important; top:16px!important; left:calc(50% + 139px)!important; right:auto!important; width:min(1080px,calc(100vw - 314px))!important; max-width:none!important; height:66px; transform:translateX(-50%)!important; padding:7px 12px; gap:5px; justify-content:space-evenly; box-sizing:border-box; }
 body.astra-clean #topbar .tb { padding:6px 9px; border-radius:9px; }
 body.astra-clean #topbar .tb img { max-width:32px; max-height:32px; }
 body.astra-clean #auto-panel { display:none; }
 body.astra-show-utilities #auto-panel { display:block!important; position:fixed!important; right:18px!important; left:auto!important; top:98px!important; width:258px!important; max-height:calc(100vh - 180px); z-index:80; }
 body.astra-clean #capture-panel { width:246px!important; right:18px!important; bottom:34px!important; padding:12px!important; box-sizing:border-box; }
 body.astra-clean #boost-bar { left:calc(50% + 139px)!important; right:auto!important; top:94px!important; transform:translateX(-50%)!important; justify-content:center; width:max-content; max-width:min(1080px,calc(100vw - 314px)); margin:0!important; gap:5px; }
 body.astra-clean #astra-hud-controls { left:calc(50% + 139px); bottom:34px; }
 body.astra-hide-panels #game::after { display:none; }
 body.astra-hide-panels #minimap { display:none!important; }
}
@media(max-width:1099px), (max-height:719px) {
 #astra-hud-controls { bottom:30px; max-width:calc(100vw - 24px); }
 #astra-hud-controls button { min-width:0; padding:9px 11px; }
 body.astra-show-utilities #auto-panel { display:block!important; top:80px!important; right:12px!important; z-index:85; max-height:calc(100vh - 160px); }
}
@media(prefers-reduced-motion:reduce) { .astra-auto-helper *, #astra-hud-controls * { transition:none!important; } }

@media(min-width:1100px) and (min-height:720px) {
 body.astra-clean #chat { position:fixed!important; left:16px!important; bottom:34px!important; top:auto!important; width:246px!important; height:calc(100vh - 550px)!important; max-height:300px!important; min-height:160px; z-index:32!important; padding:0!important; box-sizing:border-box; }
 body.astra-clean #chat #c2 { position:relative!important; left:auto!important; bottom:auto!important; top:auto!important; width:100%!important; height:100%!important; min-height:0; border:0!important; }
 body.astra-clean #minimap canvas { display:block; margin:auto; }
 body.astra-clean #topbar button[data-nav-label] { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:4px; min-width:58px; }
 body.astra-clean #topbar button[data-nav-label]::after { content:attr(data-nav-label); display:block; font:500 10px 'Segoe UI',sans-serif; color:#afbed0; }
 body.astra-clean #topbar { gap:8px; }
}
body.astra-hide-chat #chat { display:none!important; }

@media(min-width:1100px) and (max-width:1250px) and (min-height:720px) {
 body.astra-clean #topbar { gap:3px; padding:7px; }
 body.astra-clean #topbar button[data-nav-label] { min-width:48px; padding:5px; }
}

/* A aba permanece fora da faixa para permitir reabri-la sem outro menu. */
#astra-sidebar-toggle { display:none; }
@media(min-width:1100px) and (min-height:720px) {
 #astra-sidebar-toggle { display:block; position:fixed; left:278px; top:50%; transform:translateY(-50%); z-index:90; width:28px; height:64px; padding:0; border:1px solid #52647a; border-left:0; border-radius:0 10px 10px 0; background:#122133; color:#f0d493; font:32px 'Segoe UI',sans-serif; cursor:pointer; transition:left .22s ease; }
 body.astra-clean #game::after, body.astra-clean :is(#player-panel,#mini-hunt,#minimap,#chat,#astra-expedition-brand) { transition:transform .22s ease; }
 body.astra-sidebar-collapsed #game::after { transform:translateX(-100%); }
 body.astra-sidebar-collapsed :is(#player-panel,#mini-hunt,#minimap,#chat,#astra-expedition-brand) { transform:translateX(-300px)!important; pointer-events:none; }
 body.astra-sidebar-collapsed #astra-sidebar-toggle { left:0; }
 body.astra-sidebar-collapsed #topbar { left:50%!important; width:min(1080px,calc(100vw - 48px))!important; }
 body.astra-sidebar-collapsed #boost-bar { left:50%!important; max-width:min(1080px,calc(100vw - 48px)); }
 body.astra-sidebar-collapsed #astra-hud-controls { left:50%; }
}
@media(prefers-reduced-motion:reduce) {
 #astra-sidebar-toggle, body.astra-clean #game::after, body.astra-clean :is(#player-panel,#mini-hunt,#minimap,#chat,#astra-expedition-brand) { transition:none!important; }
}

@media(min-width:1100px) and (min-height:720px) {
 body.astra-clean #topbar > button { flex:1 1 0; max-width:90px; min-width:0; }
 body.astra-clean #topbar > button[data-nav-label] { min-width:0; }
 body.astra-clean #topbar > button:hover { background:#25364b; }
}

/* Identidade Electabuzz: amarelo reservado para marca e ação principal. */
body.astra-clean { --hud-surface:#171C23; --hud-border:#353D47; --hud-muted:#ACB3BD; }
body.astra-clean :is(.panel,#c2,#mini-hunt) { background:rgba(20,26,33,.96)!important; border-color:#353d47!important; }
body.astra-clean #topbar { background:#171c23f5!important; border-color:#40454c!important; }
body.astra-clean #topbar::before { background-image:url('astra/electabuzz-mark-v3.svg'); background-size:36px 36px; flex-basis:40px; height:48px; color:#f4c542; padding-top:36px; }
#astra-hud-controls { background:#171c23f5; border-color:#414953; }
#astra-hud-controls button:first-child { background:#f4c542; color:#151a21; }
#astra-hud-controls button.collapsed { background:#403820; color:#ffe79c; }
#astra-sidebar-toggle { background:#171c23; color:#f4c542; border-color:#555041; }
#astra-expedition-brand img { width:240px; height:60px; object-fit:contain; }
@media(min-width:1100px) and (min-height:720px) {
 body.astra-clean #game::after { background:#12171ff7; border-color:#353d47; }
 body.astra-clean #astra-expedition-brand { top:7px; left:16px; }
}

/* A transformação ocupa sua própria linha para caber com nomes e níveis longos. */
body.astra-clean #player-panel .pp-poke-info .row { flex-wrap:wrap; }
body.astra-clean #player-panel #pp-poke-name { min-width:0; overflow-wrap:anywhere; }
body.astra-clean #player-panel #btn-morph { flex:0 0 100%; width:100%; min-width:0; max-width:100%; box-sizing:border-box; white-space:normal; }

body.astra-clean #topbar::before { box-sizing:border-box; height:48px; padding-top:36px; line-height:12px; background-position:center top; align-self:center; }

body.astra-clean #topbar .tb img[src*="nav-"] { width:30px; height:30px; object-fit:contain; filter:none; }

/* Mantém os destinos visíveis inclusive com a barra lateral recolhida. */
#astra-hud-controls { flex-wrap:wrap; justify-content:center; width:max-content; max-width:calc(100vw - 24px); box-sizing:border-box; }
#astra-hud-controls .astra-travel-shortcut { color:#ffe393; background:#302a1c; border:1px solid #746039; }
#astra-hud-controls .astra-travel-shortcut:hover { background:#514224; color:#fff3cb; }
#astra-hud-controls button:focus-visible { outline:2px solid #ffe393; outline-offset:2px; }
#astra-hud-controls button:disabled { opacity:.55; cursor:wait; }
@media(max-width:480px) { #astra-hud-controls button { padding:8px; font-size:11px; } }

/* Session information is kept out of the map and sidebar. */
#mini-hunt { display:none !important; }
#astra-session-panel { position:fixed; bottom:82px; left:50%; transform:translateX(-50%); width:min(360px,calc(100vw - 24px)); max-height:calc(100dvh - 180px); overflow:auto; z-index:120; box-sizing:border-box; padding:16px; border:1px solid #536078; border-top:2px solid #edc34e; border-radius:14px; background:rgba(15,23,35,.98); color:#d8e3f0; box-shadow:0 12px 40px #0008; }
#astra-session-panel[hidden] { display:none !important; }
#astra-session-panel header { display:flex; justify-content:space-between; align-items:center; color:#ffd45b; }
#astra-session-panel button { cursor:pointer; color:#dce8f5; background:#202e40; border:1px solid #425470; border-radius:8px; padding:7px 10px; }
#astra-session-panel .session-stats { display:flex; flex-wrap:wrap; gap:10px; padding:14px 0; font-size:13px; }
#astra-session-panel .session-analyzer { width:100%; }
#astra-session-panel h4 { margin:16px 0 8px; font-size:12px; color:#a6b6c9; }
#astra-session-panel #gain-feed { position:static !important; inset:auto !important; transform:none !important; width:100% !important; display:flex !important; flex-direction:column; gap:5px; pointer-events:auto; }
#astra-session-panel #gain-feed .gain { position:static; width:auto; animation:none; margin:0; }
#astra-session-panel .session-empty { font-size:12px; color:#94a6bb; }
#astra-session-panel #gain-feed:not(:empty) + .session-empty { display:none; }
