/* Solar Icons — camada global via Iconify */
iconify-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1em;
    height: 1em;
    flex: 0 0 auto;
    color: currentColor;
    font-size: 1.15em;
    line-height: 1;
    vertical-align: -.12em;
}
.solar-icon { pointer-events: none; }
button iconify-icon, a iconify-icon { pointer-events: none; }

/* A navegação volta aos glyphs Solar e abandona PNGs/SVGs duplicados. */
html body .bottom-nav {
    position: fixed !important;
    bottom: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 100% !important;
    max-width: 480px !important;
    height: 64px !important;
    padding: 0 8px calc(env(safe-area-inset-bottom, 0px) + 2px) !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: #0c0d12 !important;
    border-top: 1px solid rgba(212,175,55,.25) !important;
    box-shadow: 0 -8px 24px rgba(0,0,0,.4) !important;
    z-index: 9999 !important;
    border-radius: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}
html body .bottom-nav .nav-item {
    flex: 1 1 0 !important;
    height: 50px !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 2px !important;
    color: rgba(255,255,255,.72) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    background: transparent !important;
    border: none !important;
    padding: 4px 2px !important;
    transition: all .2s ease !important;
    border-radius: 14px !important;
    transform: none !important;
    box-sizing: border-box !important;
    text-decoration: none !important;
}
html body .bottom-nav .nav-item::before {
    display: none !important;
    content: none !important;
    width: 0 !important;
    height: 0 !important;
}
html body .bottom-nav .nav-ico,
html body .bottom-nav .nav-network-icon {
    display: none !important;
}
html body .bottom-nav .solar-nav-icon {
    width: 22px !important;
    height: 22px !important;
    font-size: 22px !important;
    color: rgba(255,255,255,.75) !important;
    fill: currentColor !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
    margin: 0 !important;
}
html body .bottom-nav .solar-nav-icon svg {
    width: 22px !important;
    height: 22px !important;
    display: block !important;
}
html body .bottom-nav .nav-item span {
    color: rgba(255,255,255,.75) !important;
    font-size: 10.5px !important;
    line-height: 1 !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
}
html body .bottom-nav .nav-item.active {
    flex: 0 0 auto !important;
    min-width: 68px !important;
    height: 46px !important;
    background: linear-gradient(135deg,#fae28e 0%,#d89f33 100%) !important;
    border-radius: 999px !important;
    padding: 4px 12px !important;
    box-shadow: 0 4px 14px rgba(216,159,51,.38) !important;
    color: #0c0d12 !important;
}
html body .bottom-nav .nav-item.active .solar-nav-icon,
html body .bottom-nav .nav-item.active .solar-nav-icon svg {
    color: #0c0d12 !important;
    fill: #0c0d12 !important;
}
html body .bottom-nav .nav-item.active span {
    color: #0c0d12 !important;
    font-weight: 800 !important;
}

/* Escalas ópticas por componente */
.home-quick-ico iconify-icon,.dash-action-ico iconify-icon { width: 29px; height: 29px; font-size: 29px; }
.dash-item-ico iconify-icon,.dash-gift-ico iconify-icon { width: 25px; height: 25px; font-size: 25px; }
.wl-tier-diamond iconify-icon,.ext-sum-ico iconify-icon,.aff-comm-ico iconify-icon,
.aff-promo-ico iconify-icon,.aff-how-ico iconify-icon { width: 24px; height: 24px; font-size: 24px; }
.ci-balance-ico iconify-icon { width: 31px; height: 31px; font-size: 31px; }
.ci-task-icon iconify-icon,.voucher-success-icon iconify-icon { width: 33px; height: 33px; font-size: 33px; }
.ss2-stat > iconify-icon,.ss2-summary-ico iconify-icon,.wl-trust-item > iconify-icon,
.rl-rules iconify-icon,.voucher-tips iconify-icon,.cr-rules iconify-icon { width: 21px; height: 21px; font-size: 21px; }
.perfil-copy-btn iconify-icon,.voucher-paste iconify-icon,.carteira-extrato-refresh iconify-icon { width: 19px; height: 19px; font-size: 19px; }
.rl-win-ico { width: 60px; height: 60px; font-size: 60px; }
.cr-hero-art iconify-icon { width: 104px; height: 104px; font-size: 104px; opacity: .88; }

/* Componentes das páginas redesenhadas */
.page-network .network-level iconify-icon,.page-network .network-rules iconify-icon { width: 20px; height: 20px; font-size: 20px; }
.page-network .network-cta iconify-icon { width: 18px; height: 18px; font-size: 18px; }
.page-network .network-withdraw iconify-icon { width: 17px; height: 17px; font-size: 17px; color: #fff; }
.page-network .network-stat-icon iconify-icon { width: 20px; height: 20px; font-size: 20px; }
.page-network .network-rate-icon iconify-icon { width: 23px; height: 23px; font-size: 23px; }
.page-network .network-referral-icon iconify-icon { width: 22px; height: 22px; font-size: 22px; }
.page-network .comm-modal-close iconify-icon { width: 19px; height: 19px; font-size: 19px; }
.page-wallet .wallet-topbar-badge iconify-icon { width: 18px; height: 18px; font-size: 18px; }
.page-wallet .wl-tier-diamond iconify-icon { width: 25px; height: 25px; font-size: 25px; }
.page-wallet .wallet-tier-help iconify-icon { width: 19px; height: 19px; font-size: 19px; }
.page-wallet .wallet-actions .wl-tab iconify-icon { width: 27px; height: 27px; font-size: 27px; margin-bottom: 3px; }
.page-wallet .wallet-panel-icon iconify-icon { width: 27px; height: 27px; font-size: 27px; }
.page-wallet .wl-secure-hint iconify-icon { width: 18px; height: 18px; font-size: 18px; }
.page-wallet .carteira-btn iconify-icon { width: 19px; height: 19px; font-size: 19px; color: currentColor; }
.page-wallet .wallet-assurances iconify-icon { width: 22px; height: 22px; font-size: 22px; }
.page-wallet .wl-sum-ico { width: 22px; height: 22px; font-size: 22px; }
.page-wallet .wl-ext-date iconify-icon { width: 22px; height: 22px; font-size: 22px; }
.page-wallet .wl-ext-val iconify-icon { width: 16px; height: 16px; font-size: 16px; }
.page-mercados .purchase-drawer iconify-icon { color: currentColor; }

/* Solar usa currentColor; filtros criados para PNG não devem alterar os glyphs. */
html body iconify-icon { filter: none; background-image: none; }
html body button:is(.network-cta--ghost,.network-withdraw,.carteira-btn,.subscribe-btn,.ss2-confirm) iconify-icon,
html body .category-tab.active iconify-icon { color: currentColor; filter: none !important; }
@media (max-width: 360px) {
    html body .bottom-nav .solar-nav-icon { width: 23px !important; height: 23px !important; flex-basis: 23px !important; font-size: 23px !important; }
}

.page-wallet .wallet-hero-visual iconify-icon {
    position: relative; z-index: 2; width: 96px; height: 96px; font-size: 96px;
    color: #fff; filter: drop-shadow(0 15px 22px rgba(0,0,0,.35)) !important;
}

/* O custom element é apenas um host local; o SVG interno não usa rede nem runtime. */
iconify-icon > svg {
    display: block;
    width: 100%;
    height: 100%;
    overflow: visible;
}

/* Estruturas geradas dinamicamente em Mercados. */
.page-mercados .model-option-data > iconify-icon {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    color: var(--market-deep,#d97706);
    background: #fef3c7;
    font-size: 18px;
}
.page-mercados .model-option-action > iconify-icon {
    width: 18px;
    height: 18px;
    display: grid;
    place-items: center;
    color: #fff;
    font-size: 14px;
}
.page-mercados .ss2-plan-check iconify-icon { width: 15px; height: 15px; color: #fff; font-size: 15px; }
@media (max-width: 420px) {
    .page-wallet .wallet-hero-visual iconify-icon { width: 78px; height: 78px; font-size: 78px; }
}
@media (max-width: 380px) {
    .page-mercados .model-option-data > iconify-icon { width: 30px; height: 30px; flex-basis: 30px; font-size: 16px; }
}

/* Correção óptica da home e neutralização completa do botão central legado. */
html body .perrier-home .home-quick-row--main {
    display: flex !important;
    align-items: stretch !important;
    justify-content: space-between !important;
    gap: 10px !important;
}
html body .perrier-home .home-quick-item {
    width: calc(50% - 5px) !important;
    min-width: calc(50% - 5px) !important;
    max-width: calc(50% - 5px) !important;
    flex: 0 0 calc(50% - 5px) !important;
    height: 86px !important;
    min-height: 86px !important;
    box-sizing: border-box !important;
    align-items: center !important;
}
html body .perrier-home .home-quick-ico {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
    flex: 0 0 48px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 14px !important;
    box-sizing: border-box !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.72),0 7px 16px rgba(0,0,0,.08) !important;
}
html body .perrier-home .home-quick-item:nth-child(1) .home-quick-ico { color: #d97706 !important; background: #fef3c7 !important; }
html body .perrier-home .home-quick-item:nth-child(2) .home-quick-ico { color: #9d463e !important; background: #f9deda !important; }
html body .perrier-home .home-quick-ico iconify-icon { width: 27px !important; height: 27px !important; font-size: 27px !important; }

@media (max-width: 360px) {
    html body .perrier-home .home-quick-item { height: 80px !important; min-height: 80px !important; padding-inline: 10px !important; }
    html body .perrier-home .home-quick-ico { width: 44px !important; height: 44px !important; min-width: 44px !important; min-height: 44px !important; flex-basis: 44px !important; }
}