:root {
    --bg-0: #030202;
    --bg-1: #090505;
    --bg-2: #120807;
    --panel: rgba(10, 6, 5, 0.88);
    --panel-2: rgba(15, 8, 6, 0.95);
    --line: rgba(255, 134, 36, 0.28);
    --line-strong: rgba(255, 154, 59, 0.56);
    --gold-1: #ffe5b3;
    --gold-2: #ffcb73;
    --gold-3: #ff9b32;
    --orange-1: #ff7d21;
    --orange-2: #ce5217;
    --orange-3: #7c2f12;
    --blue-1: #83d6ff;
    --blue-2: #2e9cf4;
    --blue-3: #0e3b87;
    --text: #f4ece2;
    --muted: #c9b7a3;
    --muted-2: #9d8975;
    --shadow: 0 16px 40px rgba(0,0,0,0.28);
    --radius: 16px;
}

html {
    scroll-behavior: smooth;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

body.alastar-site {
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    color: var(--text);
    background-color: var(--bg-0);
    background-image:
        linear-gradient(180deg, rgba(2,2,2,0.38) 0%, rgba(4,3,3,0.68) 45%, rgba(4,2,2,0.92) 100%),
        radial-gradient(circle at 50% 14%, rgba(255, 136, 39, 0.10), transparent 24%),
        radial-gradient(circle at 75% 12%, rgba(69, 154, 255, 0.12), transparent 18%),
        url('../images/alastar-armia-bg.webp');
    background-attachment: fixed;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center top;
    overflow-x: hidden;
}

body.alastar-site::before {
    content: '';
    position: fixed;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(0,0,0,0.40), transparent 18%, transparent 82%, rgba(0,0,0,0.40));
    z-index: -1;
}

img {
    max-width: 100%;
    height: auto;
    image-rendering: auto;
}

.cinzel,
.hero-subtitle,
.hero-description,
.main-nav .nav-link,
.site-brand-title,
.site-brand-version,
.section-title h2,
.panel-title,
.panel-subtitle,
.news-title,
.page-header h1,
.rank-table thead th,
.auth-tabs .nav-link {
    font-family: 'Cinzel', serif;
}

.text-muted {
    color: var(--muted) !important;
}

main {
    position: relative;
    z-index: 1;
}

/* Navbar */
.main-nav {
    background: linear-gradient(180deg, rgba(7,5,4,0.98), rgba(5,3,3,0.97));
    border-bottom: 1px solid rgba(255, 136, 39, 0.24);
    box-shadow: 0 8px 24px rgba(0,0,0,0.32);
    padding: 12px 0;
}

.nav-shell {
    max-width: 1320px;
}

.main-nav.scrolled {
    padding: 8px 0;
    background: linear-gradient(180deg, rgba(7,5,4,0.99), rgba(5,3,3,0.985));
}

.site-brand {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
}

.site-brand-mark {
    width: 56px;
    height: 56px;
    object-fit: contain;
    filter: drop-shadow(0 0 12px rgba(30, 145, 255, 0.16)) drop-shadow(0 0 10px rgba(255, 126, 32, 0.14));
}

.site-brand-copy {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    line-height: 1;
}

.site-brand-title {
    font-size: 1.65rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    line-height: 1;
    color: var(--gold-2);
}

.site-brand-version {
    margin-top: 2px;
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.22em;
    color: var(--blue-1);
}

.brand-toggler {
    border-color: rgba(255, 155, 50, 0.24);
}

.site-menu {
    gap: 6px;
}

.main-nav .nav-link {
    font-size: 0.82rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #f1e6d7 !important;
    border: 1px solid transparent;
    padding: 12px 16px !important;
    border-radius: 10px;
    transition: 0.2s ease;
}

.main-nav .nav-link:hover,
.main-nav .nav-link.active {
    color: var(--gold-1) !important;
    background: linear-gradient(180deg, rgba(133, 56, 16, 0.32), rgba(18, 10, 8, 0.38));
    border-color: rgba(255, 155, 50, 0.30);
}

.nav-auth {
    margin-left: 18px;
}

/* Buttons */
.al-btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    padding: 12px 24px;
    border-radius: 12px;
    border: 1px solid var(--line-strong);
    font-family: 'Cinzel', serif;
    font-size: 0.92rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    text-decoration: none;
    color: var(--gold-1) !important;
    background: linear-gradient(180deg, #6f290f 0%, #3f160b 50%, #1f0b06 100%);
    box-shadow: inset 0 1px 0 rgba(255, 222, 169, 0.18), inset 0 0 0 1px rgba(255,255,255,0.02), 0 8px 18px rgba(0,0,0,0.24);
    transition: 0.22s ease;
}

.al-btn::before {
    content: '';
    position: absolute;
    inset: 1px;
    border-radius: 11px;
    border: 1px solid rgba(255, 196, 113, 0.07);
    pointer-events: none;
}

.al-btn:hover {
    transform: translateY(-1px);
    border-color: rgba(255, 174, 92, 0.62);
    box-shadow: inset 0 1px 0 rgba(255, 229, 178, 0.20), 0 0 0 1px rgba(79, 173, 255, 0.06), 0 12px 24px rgba(0,0,0,0.28);
}

.al-btn-primary {
    background: linear-gradient(180deg, #a43c14 0%, #6d260d 48%, #2b0f07 100%);
}

.al-btn-outline {
    background: linear-gradient(180deg, rgba(15, 10, 8, 0.90), rgba(10, 7, 6, 0.94));
}

/* Hero */
.hero-section {
    min-height: 78vh;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 128px 0 64px;
}

.hero-content {
    max-width: 1080px;
}

.hero-logo {
    width: min(620px, 88vw);
    display: block;
    margin: 0 auto 10px;
    filter: drop-shadow(0 10px 24px rgba(0,0,0,0.38));
}

.hero-subtitle {
    font-size: clamp(1.25rem, 2.4vw, 1.95rem);
    font-weight: 700;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    color: var(--gold-2);
    margin-bottom: 10px;
}

.hero-description {
    max-width: 760px;
    font-size: 1.05rem;
    line-height: 1.8;
    color: #e7dbce;
}

.hero-btns {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 14px;
}

/* Sections */
.content-section,
.stats-section,
.news-section {
    position: relative;
}

.section-title h2,
.page-header h1 {
    margin: 0;
    font-size: clamp(2rem, 4vw, 2.8rem);
    font-weight: 700;
    color: var(--gold-2);
    letter-spacing: 0.05em;
}

.title-divider {
    width: 108px;
    height: 3px;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(255,155,50,0), rgba(255,155,50,1) 50%, rgba(79,170,255,0.88) 100%);
    margin-top: 16px;
}

.content-panel,
.stat-card,
.news-card,
.rank-table,
.community-card,
.info-card {
    background: linear-gradient(180deg, rgba(14, 9, 7, 0.92), rgba(9, 6, 5, 0.96));
    border: 1px solid var(--line);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
}

.content-panel {
    padding: 32px;
}

.panel-title {
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--gold-2);
    margin-bottom: 24px;
}

.panel-subtitle {
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--gold-2);
    margin: 0 0 20px;
}

.panel-text,
.content-panel p,
.community-card p,
.news-excerpt,
.warning-box,
.step p,
.page-header .lead,
.news-date,
.empty-state,
.empty-state-title {
    color: var(--muted);
}

/* Stats */
.stat-card {
    min-height: 160px;
    padding: 28px 16px;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.stat-value {
    display: block;
    font-size: clamp(2rem, 4vw, 2.7rem);
    font-weight: 800;
    color: var(--gold-2);
    line-height: 1;
    margin-bottom: 10px;
}

.stat-label {
    font-size: 0.92rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.09em;
    color: #dbc8b4;
}

/* News */
.news-card {
    overflow: hidden;
    height: 100%;
}

.news-img {
    display: block;
    height: 250px;
    width: 100%;
    object-fit: cover;
    border-bottom: 1px solid rgba(255, 155, 50, 0.20);
}

.news-body {
    min-height: 240px;
}

.news-date {
    font-size: 0.80rem;
    font-weight: 700;
    letter-spacing: 0.06em;
}

.news-title {
    font-size: 1.28rem;
    font-weight: 700;
    color: var(--gold-1);
    line-height: 1.3;
}

.news-excerpt {
    font-size: 0.96rem;
    line-height: 1.75;
}

/* Page Header */
.page-header {
    padding: 170px 0 84px;
    text-align: center;
    background: linear-gradient(180deg, rgba(3,2,2,0.24) 0%, rgba(5,4,3,0.54) 65%, rgba(5,3,2,0.82) 100%);
}

.page-header .lead {
    margin: 14px auto 0;
    max-width: 760px;
    font-size: 1.05rem;
    line-height: 1.8;
}

/* Ranking */
.rank-table {
    overflow: hidden;
}

.rank-table .table {
    color: var(--text);
    margin-bottom: 0;
}

.rank-table thead th {
    background: rgba(255, 144, 45, 0.08);
    color: var(--gold-2);
    font-size: 0.86rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-bottom: 1px solid rgba(255, 155, 50, 0.18);
    padding: 16px 14px;
}

.rank-table tbody td {
    background: transparent;
    color: #efe7dc;
    padding: 14px;
    border-color: rgba(255,255,255,0.06);
    font-size: 0.95rem;
}

.rank-number {
    font-weight: 800;
    color: var(--gold-2);
}

.level-number {
    font-weight: 800;
    color: var(--blue-1);
}

/* Download */
.requirements-table .table {
    color: var(--text);
}

.requirements-table thead th {
    background: rgba(255, 144, 45, 0.08);
    color: var(--gold-2);
    border-bottom-color: rgba(255, 155, 50, 0.18);
}

.requirements-table td,
.requirements-table th {
    padding: 14px 12px;
    border-color: rgba(255,255,255,0.06);
}

.warning-box {
    border: 1px solid rgba(255, 155, 50, 0.22);
    background: rgba(18, 10, 7, 0.72);
    border-radius: 14px;
    padding: 16px 18px;
}

.tutorial-steps {
    display: grid;
    gap: 18px;
}

.step {
    display: flex;
    gap: 16px;
    align-items: flex-start;
    padding: 16px 18px;
    border-radius: 14px;
    background: rgba(255,255,255,0.02);
    border: 1px solid rgba(255,255,255,0.05);
}

.step-badge {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px;
    background: linear-gradient(180deg, #b44518, #64240e);
    border: 1px solid rgba(255, 178, 106, 0.30);
    color: var(--gold-1);
    font-weight: 700;
}

.step h5 {
    margin: 0 0 6px;
    font-size: 1rem;
    color: var(--gold-1);
}

.step p {
    margin: 0;
    line-height: 1.65;
}

/* Community / store */
.community-card {
    padding: 34px 28px;
}

.community-icon,
.page-icon {
    display: block;
    font-size: 3.6rem;
    margin-bottom: 20px;
    color: var(--gold-2);
}

.community-icon.discord { color: #81bfff; }
.community-icon.whatsapp { color: #5ad88a; }
.community-icon.facebook { color: #78b1ff; }

.community-card h3,
.info-card h4 {
    color: var(--gold-2);
    margin-bottom: 14px;
}

.community-card p,
.info-card p {
    line-height: 1.75;
}

.info-card {
    padding: 28px;
}

/* Footer */
.site-footer {
    padding: 20px 0 50px;
}

.footer-shell {
    border: 1px solid var(--line);
    border-radius: 20px;
    background: linear-gradient(180deg, rgba(12, 8, 6, 0.94), rgba(8, 5, 4, 0.98));
    padding: 34px 24px;
    text-align: center;
    box-shadow: var(--shadow);
}

.footer-logo {
    width: min(180px, 46vw);
    display: block;
    margin: 0 auto 10px;
}

.footer-copy {
    font-family: 'Cinzel', serif;
    font-size: 1.25rem;
    color: var(--gold-2);
    letter-spacing: 0.08em;
    margin-bottom: 18px;
}

.footer-links {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 14px 22px;
    margin-bottom: 22px;
}

.footer-links a,
.social-link {
    text-decoration: none;
    transition: 0.2s ease;
}

.footer-links a {
    color: #ded1c2;
    font-weight: 500;
}

.footer-links a:hover,
.social-link:hover {
    color: var(--gold-2);
}

.footer-socials {
    display: flex;
    justify-content: center;
    gap: 16px;
    margin-bottom: 18px;
}

.social-link {
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid rgba(255, 155, 50, 0.18);
    color: #dbc9b5;
    background: rgba(255,255,255,0.02);
}

.copyright {
    color: var(--muted-2);
    font-size: 0.92rem;
}

/* Modal */
.al-modal-content {
    background: linear-gradient(180deg, rgba(13, 9, 7, 0.98), rgba(8, 5, 4, 0.98));
    color: var(--text);
    border: 1px solid var(--line-strong);
    border-radius: 20px;
    box-shadow: 0 20px 50px rgba(0,0,0,0.34);
}

.modal-brand-wrap {
    display: flex;
    align-items: center;
    gap: 14px;
}

.modal-brand-mark {
    width: 58px;
    height: 58px;
    object-fit: contain;
}

.modal-kicker {
    display: block;
    font-size: 0.76rem;
    letter-spacing: 0.18em;
    color: var(--blue-1);
    font-family: 'Cinzel', serif;
    text-transform: uppercase;
    margin-bottom: 2px;
}

.modal-title {
    color: var(--gold-2);
    font-size: 1.28rem;
}

.auth-tabs {
    border-bottom: 1px solid rgba(255,255,255,0.08);
}

.auth-tabs .nav-link {
    border: 0;
    color: #d8c8b6;
    font-size: 0.92rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    border-bottom: 2px solid transparent;
}

.auth-tabs .nav-link.active {
    background: transparent;
    color: var(--gold-2);
    border-bottom-color: var(--orange-1);
}

.form-label {
    font-size: 0.92rem;
    font-weight: 600;
    color: #e8dece;
}

.al-input-group .input-group-text,
.al-input-group .form-control {
    min-height: 48px;
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.08);
    color: var(--text);
}

.al-input-group .input-group-text {
    color: var(--gold-2);
}

.al-input-group .form-control:focus {
    background: rgba(255,255,255,0.04);
    color: var(--text);
    border-color: rgba(255, 155, 50, 0.32);
    box-shadow: 0 0 0 0.2rem rgba(255, 125, 33, 0.10);
}

/* Empty */
.empty-state,
.empty-state-title {
    font-size: 1rem;
}

.empty-state-title {
    color: var(--gold-1);
}

/* Responsive */
@media (max-width: 1199px) {
    .nav-auth {
        margin: 14px 0 0;
    }

    .site-menu {
        padding: 12px 0 6px;
    }
}

@media (max-width: 991px) {
    .hero-section {
        padding-top: 130px;
        min-height: auto;
    }

    .content-panel,
    .community-card,
    .info-card {
        padding: 26px;
    }

    .news-img {
        height: 220px;
    }
}

@media (max-width: 767px) {
    .site-brand-title {
        font-size: 1.4rem;
    }

    .site-brand-mark {
        width: 48px;
        height: 48px;
    }

    .hero-logo {
        width: min(440px, 92vw);
    }

    .hero-subtitle {
        font-size: 1.05rem;
        letter-spacing: 0.07em;
    }

    .hero-description,
    .page-header .lead,
    .news-excerpt,
    .step p,
    .community-card p,
    .content-panel p {
        font-size: 0.95rem;
    }

    .section-title h2,
    .page-header h1 {
        font-size: 1.75rem;
    }

    .content-panel,
    .community-card,
    .info-card,
    .footer-shell {
        padding: 22px 18px;
    }

    .footer-links {
        gap: 10px 16px;
    }
}

/* ============================================================
   ALASTAR 2.0 — V6 CRISP UI
   Prioridade: nitidez, legibilidade e cenário Armia visível.
   ============================================================ */

:root {
    --panel: rgba(9, 6, 5, 0.84);
    --panel-2: rgba(12, 7, 6, 0.92);
    --line: rgba(255, 137, 42, 0.32);
    --line-strong: rgba(255, 164, 70, 0.62);
    --text: #fff8ef;
    --muted: #dccdbd;
    --muted-2: #b4a08b;
}

html,
body {
    font-size: 16px;
}

html {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: geometricPrecision;
    font-synthesis: none;
}

body.alastar-site {
    font-family: 'Inter', 'Segoe UI', Arial, sans-serif;
    font-weight: 500;
    letter-spacing: 0;
    background-image:
        linear-gradient(180deg, rgba(2,2,2,0.20) 0%, rgba(4,3,3,0.40) 44%, rgba(4,2,2,0.76) 100%),
        radial-gradient(circle at 49% 11%, rgba(255, 148, 52, 0.06), transparent 24%),
        radial-gradient(circle at 76% 14%, rgba(72, 163, 255, 0.08), transparent 18%),
        url('../images/alastar-armia-bg.webp');
    background-position: center top;
    background-size: cover;
}

body.alastar-site::before {
    background: linear-gradient(90deg, rgba(0,0,0,0.24), transparent 16%, transparent 84%, rgba(0,0,0,0.24));
}

/* Evita rasterização suave causada por transforms/filtros em textos e controles */
.main-nav,
.main-nav *,
.al-btn,
.al-btn *,
.content-panel,
.stat-card,
.news-card,
.rank-table,
.community-card,
.info-card,
.page-header *,
.section-title * {
    transform: none !important;
    text-shadow: none !important;
}

.cinzel,
.hero-subtitle,
.main-nav .nav-link,
.site-brand-title,
.site-brand-version,
.section-title h2,
.panel-title,
.panel-subtitle,
.news-title,
.page-header h1,
.rank-table thead th,
.auth-tabs .nav-link {
    font-family: 'Cinzel', Georgia, serif;
    font-optical-sizing: auto;
    font-kerning: normal;
    font-feature-settings: 'kern' 1, 'liga' 1;
}

/* Navbar mais limpa e legível */
.main-nav {
    padding: 10px 0;
    background: rgba(7, 4, 3, 0.985);
    border-bottom-color: rgba(255, 144, 47, 0.30);
    box-shadow: 0 6px 18px rgba(0,0,0,0.28);
}

.main-nav.scrolled {
    padding: 8px 0;
}

.nav-shell {
    max-width: 1380px;
}

.site-brand-mark {
    width: 58px;
    height: 58px;
    filter: none;
}

.site-brand-title {
    font-size: 1.62rem;
    font-weight: 800;
    color: #ffd082;
}

.site-brand-version {
    color: #75c8ff;
    font-size: 0.80rem;
}

.main-nav .nav-link {
    font-size: 0.86rem;
    font-weight: 700;
    color: #f7ede1 !important;
    padding: 11px 15px !important;
    border-radius: 8px;
}

.main-nav .nav-link:hover,
.main-nav .nav-link.active {
    color: #ffe0a5 !important;
    background: rgba(123, 48, 14, 0.26);
    border-color: rgba(255, 155, 59, 0.32);
}

/* Botões sem movimento: bordas permanecem pixel-sharp */
.al-btn {
    min-height: 48px;
    border-radius: 9px;
    font-size: 0.90rem;
    font-weight: 700;
    line-height: 1.2;
    box-shadow: inset 0 1px 0 rgba(255, 229, 187, 0.13), 0 5px 14px rgba(0,0,0,0.22);
}

.al-btn:hover {
    transform: none !important;
    border-color: #ffa750;
    box-shadow: inset 0 1px 0 rgba(255, 235, 200, 0.16), 0 0 0 1px rgba(89, 182, 255, 0.08), 0 7px 16px rgba(0,0,0,0.24);
}

/* Hero: cenário de Armia continua visível e a logo não domina a tela */
.hero-section {
    min-height: 72vh;
    padding: 126px 0 54px;
    background: linear-gradient(180deg, rgba(0,0,0,0.05), rgba(3,2,2,0.20) 68%, rgba(4,2,2,0.54));
}

.hero-content {
    max-width: 980px;
}

.hero-logo {
    width: min(500px, 78vw);
    margin: 0 auto 12px;
    filter: none;
}

.hero-subtitle {
    color: #ffe0a0;
    font-size: clamp(1.18rem, 2.1vw, 1.62rem);
    font-weight: 700;
    line-height: 1.35;
    letter-spacing: 0.08em;
}

.hero-btns {
    gap: 12px;
}

/* Títulos e textos: maior contraste e tamanho útil */
.section-title h2,
.page-header h1 {
    color: #ffd487;
    font-weight: 800;
    letter-spacing: 0.035em;
}

.page-header {
    padding: 154px 0 72px;
    background: linear-gradient(180deg, rgba(3,2,2,0.10), rgba(5,3,2,0.42) 68%, rgba(5,3,2,0.66) 100%);
}

.page-header .lead {
    color: #f0e4d8;
    font-size: 1.02rem;
    font-weight: 500;
}

.content-panel,
.stat-card,
.news-card,
.rank-table,
.community-card,
.info-card {
    background: linear-gradient(180deg, rgba(12, 8, 7, 0.88), rgba(7, 5, 4, 0.93));
    border-color: rgba(255, 143, 45, 0.34);
    box-shadow: 0 10px 26px rgba(0,0,0,0.23);
}

.panel-text,
.content-panel p,
.community-card p,
.news-excerpt,
.warning-box,
.step p,
.news-date,
.empty-state,
.empty-state-title {
    color: #dfd1c2;
    font-weight: 500;
}

.stat-card {
    min-height: 142px;
}

.stat-value {
    color: #ffd487;
    font-size: clamp(2rem, 3.6vw, 2.55rem);
}

.stat-label {
    color: #f0e2d2;
    font-size: 0.92rem;
    font-weight: 600;
}

.news-img {
    height: 245px;
    object-fit: cover;
    image-rendering: auto;
}

.news-title {
    color: #ffe0a5;
    font-size: 1.30rem;
    font-weight: 700;
}

.news-date {
    color: #86cdff;
    font-weight: 700;
}

.news-excerpt {
    font-size: 0.97rem;
    line-height: 1.72;
}

.rank-table thead th {
    color: #ffd487;
    background: rgba(114, 42, 12, 0.20);
    font-size: 0.87rem;
}

.rank-table tbody td {
    color: #f7eee4;
    font-size: 0.96rem;
    font-weight: 500;
}

.rank-number {
    color: #ffbd67;
}

.level-number {
    color: #8fd7ff;
}

/* Footer menor e direto */
.site-footer {
    padding-bottom: 38px;
}

.footer-shell {
    padding: 26px 22px;
}

.footer-logo {
    width: min(145px, 38vw);
    filter: none;
}

.footer-copy {
    font-size: 1.10rem;
}

/* Mantém elementos sem animação mesmo se atributos antigos existirem */
[data-aos] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
}

@media (max-width: 767px) {
    .hero-section {
        min-height: auto;
        padding: 114px 0 46px;
    }

    .hero-logo {
        width: min(400px, 86vw);
    }

    .main-nav .nav-link {
        font-size: 0.84rem;
    }
}


/* ============================================================
   ALASTAR 2.0 — V6.1 BRAND / BUTTON POLISH
   Logo como marca d'água, favicon A e botões mais vivos.
   ============================================================ */
.hero-section {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}

.hero-section::before {
    content: '';
    position: absolute;
    z-index: 0;
    left: 50%;
    top: 50%;
    width: min(660px, 78vw);
    aspect-ratio: 1 / 1;
    translate: -50% -48%;
    background: url('../images/alastar-logo-full.webp') center / contain no-repeat;
    opacity: 0.16;
    filter: saturate(1.12) brightness(0.80);
    pointer-events: none;
}

.hero-section::after {
    content: '';
    position: absolute;
    z-index: 0;
    inset: 0;
    background: radial-gradient(circle at 50% 48%, rgba(0,0,0,0.02) 0%, rgba(0,0,0,0.12) 44%, rgba(0,0,0,0.28) 100%);
    pointer-events: none;
}

.hero-content {
    position: relative;
    z-index: 1;
    min-height: 470px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.hero-logo {
    display: none !important;
}

.hero-subtitle {
    position: relative;
    z-index: 2;
    color: #fff0bd;
    font-size: clamp(1.24rem, 2.15vw, 1.72rem);
    font-weight: 800;
    text-shadow: 0 2px 10px rgba(0,0,0,0.60) !important;
}

.hero-btns {
    position: relative;
    z-index: 2;
}

/* Primário: laranja vivo, mantendo texto nítido */
.al-btn-primary {
    color: #fff7df !important;
    border-color: #ff8b27 !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.10), transparent 28%),
        linear-gradient(180deg, #ff7a18 0%, #e9500d 48%, #8f2707 100%) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,246,218,0.34),
        inset 0 -1px 0 rgba(79,14,2,0.55),
        0 0 0 1px rgba(255,99,10,0.16),
        0 6px 16px rgba(0,0,0,0.28) !important;
}

.al-btn-primary:hover,
.al-btn-primary:focus-visible {
    color: #ffffff !important;
    border-color: #ffc067 !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,0.16), transparent 30%),
        linear-gradient(180deg, #ff942d 0%, #ff6111 48%, #a83208 100%) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,0.40),
        0 0 16px rgba(255,103,14,0.30),
        0 7px 18px rgba(0,0,0,0.28) !important;
}

/* Secundário: azul elétrico para contraste com o laranja */
.al-btn-outline {
    color: #eef9ff !important;
    border-color: #278fe7 !important;
    background:
        linear-gradient(180deg, rgba(112,207,255,0.10), transparent 28%),
        linear-gradient(180deg, #125caf 0%, #0a3f86 50%, #061f49 100%) !important;
    box-shadow:
        inset 0 1px 0 rgba(194,238,255,0.24),
        inset 0 -1px 0 rgba(1,13,39,0.60),
        0 0 0 1px rgba(26,134,232,0.12),
        0 6px 16px rgba(0,0,0,0.25) !important;
}

.al-btn-outline:hover,
.al-btn-outline:focus-visible {
    color: #ffffff !important;
    border-color: #6bc8ff !important;
    background:
        linear-gradient(180deg, rgba(198,241,255,0.15), transparent 28%),
        linear-gradient(180deg, #1881df 0%, #0d5bb7 50%, #07336f 100%) !important;
    box-shadow:
        inset 0 1px 0 rgba(223,249,255,0.32),
        0 0 16px rgba(39,156,255,0.25),
        0 7px 18px rgba(0,0,0,0.26) !important;
}

.al-btn:focus-visible {
    outline: 2px solid #ffe0a3;
    outline-offset: 3px;
}

@media (max-width: 767px) {
    .hero-section::before {
        width: min(520px, 92vw);
        opacity: 0.14;
    }

    .hero-content {
        min-height: 400px;
    }
}

/* ============================================================
   ALASTAR 2.0 — V7 PORTAL DATA PANELS
   Status + Cidades + Kill/Level/Power + Rates Easy
   ============================================================ */

body.alastar-site,
body.alastar-site button,
body.alastar-site input,
body.alastar-site select,
body.alastar-site textarea {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: geometricPrecision;
}

body.alastar-site {
    font-size: 16px;
}

.portal-wide-container {
    max-width: 1460px;
}

.portal-info-section {
    position: relative;
    background: linear-gradient(180deg, rgba(4,3,3,.74), rgba(4,2,2,.91));
    border-top: 1px solid rgba(255, 139, 39, .16);
    border-bottom: 1px solid rgba(64, 159, 255, .12);
}

.portal-dashboard-grid {
    display: grid;
    grid-template-columns: minmax(250px, 290px) minmax(560px, 1fr) minmax(245px, 285px);
    gap: 18px;
    align-items: start;
}

.portal-side-stack {
    display: grid;
    gap: 18px;
    min-width: 0;
}

.portal-panel {
    position: relative;
    overflow: hidden;
    background:
        linear-gradient(180deg, rgba(15, 9, 8, .96), rgba(6, 5, 5, .98));
    border: 1px solid rgba(255, 138, 34, .34);
    border-radius: 14px;
    box-shadow:
        inset 0 0 0 1px rgba(67, 160, 255, .045),
        0 12px 28px rgba(0,0,0,.26);
}

.portal-panel::after {
    content: '';
    position: absolute;
    inset: 4px;
    border: 1px solid rgba(255, 199, 117, .045);
    border-radius: 10px;
    pointer-events: none;
}

.portal-panel-title {
    position: relative;
    z-index: 1;
    min-height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 11px 15px;
    color: #ffe2a5;
    font-family: 'Cinzel', serif;
    font-size: .88rem;
    line-height: 1.25;
    font-weight: 800;
    letter-spacing: .055em;
    text-align: center;
    text-transform: uppercase;
    background:
        linear-gradient(90deg, rgba(18, 55, 105, .14), rgba(125, 44, 10, .22) 50%, rgba(18, 55, 105, .14));
    border-bottom: 1px solid rgba(255, 139, 36, .24);
}

.portal-panel-title i {
    color: #50b6ff;
    font-size: .92rem;
}

.server-state {
    margin: 16px;
    min-height: 62px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    border-radius: 10px;
    border: 1px solid rgba(255,255,255,.08);
    font-family: 'Cinzel', serif;
    font-size: 1.22rem;
    letter-spacing: .06em;
}

.server-state.is-online {
    color: #b9ffca;
    background: linear-gradient(180deg, rgba(11, 114, 43, .30), rgba(4, 48, 22, .36));
    border-color: rgba(45, 224, 99, .24);
}

.server-state.is-offline {
    color: #ffc0b8;
    background: linear-gradient(180deg, rgba(121, 25, 15, .30), rgba(50, 8, 6, .38));
    border-color: rgba(255, 82, 60, .24);
}

.server-state-dot {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: currentColor;
    box-shadow: 0 0 12px currentColor;
}

.server-metric {
    min-height: 48px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin: 0 16px;
    padding: 11px 2px;
    border-bottom: 1px solid rgba(255,255,255,.055);
}

.server-metric:last-child {
    margin-bottom: 12px;
    border-bottom: 0;
}

.server-metric span {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #e8ddd0;
    font-size: .86rem;
    font-weight: 600;
}

.server-metric i {
    width: 18px;
    color: #55baff;
    text-align: center;
}

.server-metric b {
    color: #ffce79;
    font-size: .98rem;
    font-weight: 800;
}

.city-grid,
.ranking-city-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 14px;
}

.city-card {
    position: relative;
    min-height: 142px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    overflow: hidden;
    padding: 10px 8px 11px;
    border-radius: 10px;
    border: 1px solid rgba(255, 148, 47, .22);
    background:
        radial-gradient(circle at 50% 50%, rgba(48, 131, 214, .13), transparent 54%),
        linear-gradient(180deg, rgba(43, 17, 8, .44), rgba(8, 6, 6, .82));
}

.city-card::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .26;
}

.city-armia::before { background: radial-gradient(circle at 50% 20%, rgba(255, 149, 56, .36), transparent 58%); }
.city-arzan::before { background: radial-gradient(circle at 50% 20%, rgba(255, 77, 35, .30), transparent 58%); }
.city-erion::before { background: radial-gradient(circle at 50% 20%, rgba(64, 153, 255, .34), transparent 58%); }
.city-gelo::before { background: radial-gradient(circle at 50% 20%, rgba(104, 212, 255, .36), transparent 58%); }

.city-name,
.city-guild-name,
.city-mark-wrap {
    position: relative;
    z-index: 1;
}

.city-name {
    width: 100%;
    padding-bottom: 7px;
    color: #ffd994;
    font-family: 'Cinzel', serif;
    font-size: .78rem;
    line-height: 1.1;
    font-weight: 800;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: .045em;
    border-bottom: 1px solid rgba(255, 151, 50, .16);
}

.city-mark-wrap {
    width: 72px;
    height: 58px;
    display: grid;
    place-items: center;
    margin: 8px 0 5px;
}

.city-guild-mark {
    display: block;
    max-width: 68px;
    max-height: 54px;
    object-fit: contain;
    image-rendering: pixelated;
    filter: drop-shadow(0 3px 8px rgba(0,0,0,.46));
}

.city-guild-name {
    max-width: 100%;
    overflow: hidden;
    color: #f2e8dd;
    font-size: .72rem;
    line-height: 1.25;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ranking-home-panel {
    min-height: 100%;
}

.ranking-main-title {
    color: #ffe29d;
}

.ranking-three-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    padding: 14px;
}

.ranking-column {
    overflow: hidden;
    border-radius: 10px;
    border: 1px solid rgba(255,255,255,.075);
    background: rgba(4, 5, 8, .48);
}

.ranking-column h3 {
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin: 0;
    color: #f8eee3;
    font-family: 'Cinzel', serif;
    font-size: .88rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .04em;
    border-bottom: 1px solid rgba(255,255,255,.07);
}

.ranking-kill h3 { color: #ffab89; background: linear-gradient(180deg, rgba(145, 28, 12, .34), rgba(39, 8, 6, .28)); }
.ranking-level h3 { color: #ffe092; background: linear-gradient(180deg, rgba(136, 77, 9, .34), rgba(43, 23, 5, .28)); }
.ranking-power h3 { color: #9edcff; background: linear-gradient(180deg, rgba(9, 69, 143, .36), rgba(5, 25, 66, .28)); }

.mini-rank-head,
.mini-rank-row,
.full-rank-head,
.full-rank-row {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) 72px;
    align-items: center;
    gap: 6px;
}

.mini-rank-head,
.full-rank-head {
    min-height: 34px;
    padding: 6px 9px;
    color: #a99582;
    font-size: .66rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .045em;
    border-bottom: 1px solid rgba(255,255,255,.045);
}

.mini-rank-head span:last-child,
.full-rank-head span:last-child {
    text-align: right;
}

.mini-rank-row,
.full-rank-row {
    min-height: 42px;
    padding: 7px 9px;
    border-bottom: 1px solid rgba(255,255,255,.045);
}

.mini-rank-row:last-child,
.full-rank-row:last-child {
    border-bottom: 0;
}

.mini-rank-pos {
    width: 24px;
    height: 24px;
    display: inline-grid;
    place-items: center;
    justify-self: center;
    border-radius: 50%;
    color: #d8c9ba;
    font-size: .72rem;
    font-weight: 800;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.08);
}

.rank-pos-1 { color: #241603; background: linear-gradient(180deg, #ffe189, #c98421); border-color: #ffd773; }
.rank-pos-2 { color: #1d1d1d; background: linear-gradient(180deg, #f1f3f5, #8f9aa5); border-color: #dbe0e4; }
.rank-pos-3 { color: #281208; background: linear-gradient(180deg, #e79a63, #8b4527); border-color: #d88353; }

.mini-rank-name {
    min-width: 0;
    overflow: hidden;
    color: #f2e9df;
    font-size: .78rem;
    font-weight: 650;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mini-rank-row b,
.full-rank-row b {
    color: #ffd378;
    font-size: .78rem;
    text-align: right;
}

.ranking-power .mini-rank-row b,
.ranking-power .full-rank-row b {
    color: #82d2ff;
}

.mini-rank-empty {
    padding: 28px 10px;
    color: #998878;
    font-size: .78rem;
    text-align: center;
}

.rates-list {
    display: grid;
    gap: 12px;
    padding: 16px;
}

.rate-block {
    min-height: 62px;
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 12px;
    padding: 13px 14px;
    border-radius: 10px;
    border: 1px solid rgba(255,255,255,.08);
}

.rate-block span {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #f4e9dd;
    font-family: 'Cinzel', serif;
    font-size: .80rem;
    font-weight: 800;
    text-transform: uppercase;
}

.rate-block i {
    width: 18px;
    text-align: center;
}

.rate-block b {
    font-family: 'Cinzel', serif;
    font-size: .95rem;
    letter-spacing: .04em;
}

.rate-xp { background: linear-gradient(180deg, rgba(9, 105, 48, .30), rgba(4, 42, 20, .30)); border-color: rgba(47, 221, 107, .23); }
.rate-xp i, .rate-xp b { color: #70ff9e; }
.rate-drop { background: linear-gradient(180deg, rgba(91, 16, 117, .32), rgba(40, 6, 60, .30)); border-color: rgba(214, 75, 255, .24); }
.rate-drop i, .rate-drop b { color: #e279ff; }
.rate-mix { background: linear-gradient(180deg, rgba(136, 52, 9, .32), rgba(55, 18, 5, .30)); border-color: rgba(255, 130, 26, .25); }
.rate-mix i, .rate-mix b { color: #ffae50; }

.full-ranking-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.full-rank-card {
    min-width: 0;
}

.full-rank-head,
.full-rank-row {
    grid-template-columns: 38px minmax(0, 1fr) 92px;
    padding-left: 14px;
    padding-right: 14px;
}

.full-rank-row {
    min-height: 48px;
    color: #f3e9df;
    font-size: .86rem;
    font-weight: 600;
}

.full-rank-row > span:nth-child(2) {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ranking-cities-panel .ranking-city-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    padding: 18px;
}

.ranking-cities-panel .city-card {
    min-height: 170px;
}

.ranking-cities-panel .city-mark-wrap {
    width: 92px;
    height: 78px;
}

.ranking-cities-panel .city-guild-mark {
    max-width: 86px;
    max-height: 72px;
}

/* Texto geral mais legível sem sombras borradas */
.portal-panel,
.portal-panel * {
    text-shadow: none !important;
}

.main-nav .nav-link,
.hero-subtitle,
.section-title h2,
.news-title,
.page-header h1,
.portal-panel-title,
.ranking-column h3,
.city-name,
.rate-block span,
.rate-block b {
    font-synthesis: none;
}

@media (max-width: 1199px) {
    .portal-dashboard-grid {
        grid-template-columns: 260px minmax(0, 1fr);
    }

    .portal-dashboard-grid > .portal-side-stack:last-child {
        grid-column: 1 / -1;
    }

    .portal-dashboard-grid > .portal-side-stack:last-child .rates-panel {
        max-width: none;
    }

    .rates-list {
        grid-template-columns: repeat(3, 1fr);
    }

    .rate-block {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .rate-block span {
        justify-content: center;
    }

    .full-ranking-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .portal-dashboard-grid {
        grid-template-columns: 1fr;
    }

    .ranking-three-grid {
        grid-template-columns: 1fr;
    }

    .portal-dashboard-grid > .portal-side-stack:last-child {
        grid-column: auto;
    }

    .rates-list {
        grid-template-columns: 1fr;
    }

    .rate-block {
        grid-template-columns: 1fr auto;
        text-align: left;
    }

    .rate-block span {
        justify-content: flex-start;
    }

    .ranking-cities-panel .ranking-city-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 520px) {
    .city-grid,
    .ranking-city-grid,
    .ranking-cities-panel .ranking-city-grid {
        grid-template-columns: 1fr 1fr;
        gap: 8px;
        padding: 10px;
    }

    .city-card {
        min-height: 132px;
    }

    .portal-panel-title {
        font-size: .78rem;
    }

    .mini-rank-head,
    .mini-rank-row,
    .full-rank-head,
    .full-rank-row {
        grid-template-columns: 30px minmax(0, 1fr) 68px;
    }
}

/* ============================================================
   V8 - HOME PORTAL: 3 NEWS + RATES / RANKINGS / CITIES
   Crisp typography, database-driven information panels
   ============================================================ */
body.alastar-site {
    font-size: 16px;
    font-weight: 500;
}

body.alastar-site,
body.alastar-site button,
body.alastar-site input,
body.alastar-site select,
body.alastar-site textarea {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: geometricPrecision;
}

.home-main-container {
    max-width: 1280px;
}

.home-news-section,
.home-data-section {
    position: relative;
    z-index: 2;
}

.home-news-section {
    padding-top: 54px !important;
    background: linear-gradient(180deg, rgba(5, 4, 3, .18), rgba(3, 2, 2, .58));
}

.home-news-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    align-items: stretch;
}

.home-news-card {
    min-width: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    background: linear-gradient(180deg, rgba(14, 9, 7, .94), rgba(7, 5, 4, .98));
    border: 1px solid rgba(255, 139, 42, .34);
    border-radius: 14px;
    box-shadow: 0 14px 32px rgba(0, 0, 0, .30), inset 0 0 0 1px rgba(255,255,255,.018);
}

.home-news-image-wrap {
    height: 176px;
    overflow: hidden;
    background: #080504;
    border-bottom: 1px solid rgba(255, 139, 42, .20);
}

.home-news-image {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    filter: none !important;
    transform: none !important;
}

.home-news-content {
    min-height: 238px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.home-news-content time {
    margin-bottom: 7px;
    font-family: 'Inter', sans-serif;
    font-size: .78rem;
    font-weight: 700;
    color: #70c4ff;
    letter-spacing: .03em;
}

.home-news-content h3 {
    margin: 0 0 9px;
    font-family: 'Cinzel', serif;
    font-size: 1.16rem;
    line-height: 1.35;
    font-weight: 800;
    color: #ffe0a0;
    letter-spacing: .02em;
    text-shadow: none;
}

.home-news-content p {
    flex: 1;
    margin: 0 0 16px;
    font-family: 'Inter', sans-serif;
    font-size: .92rem;
    line-height: 1.68;
    font-weight: 500;
    color: #ddcdbd;
}

.home-news-btn {
    min-height: 40px;
    padding: 9px 17px;
    font-size: .76rem;
}

.home-empty-wide {
    grid-column: 1 / -1;
    text-align: center;
}

.home-data-section {
    padding-top: 18px;
    background: linear-gradient(180deg, rgba(3,2,2,.58), rgba(3,2,2,.83));
}

.home-dashboard-layout {
    display: grid;
    grid-template-columns: 260px minmax(0, 1fr) 260px;
    gap: 18px;
    align-items: start;
}

.home-side-panel,
.home-ranking-area {
    min-width: 0;
    background: linear-gradient(180deg, rgba(12, 8, 7, .96), rgba(6, 4, 4, .985));
    border: 1px solid rgba(255, 139, 42, .32);
    border-radius: 14px;
    box-shadow: 0 16px 34px rgba(0,0,0,.28), inset 0 0 0 1px rgba(78,169,255,.035);
}

.home-side-panel {
    padding-bottom: 16px;
}

.home-ranking-area {
    padding: 0 16px 20px;
}

.home-panel-title {
    min-height: 48px;
    padding: 12px 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    text-align: center;
    font-family: 'Cinzel', serif;
    font-size: .82rem;
    line-height: 1.2;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .065em;
    color: #ffd894;
    background: linear-gradient(180deg, rgba(117, 40, 12, .22), rgba(10, 7, 6, .10));
    border-bottom: 1px solid rgba(255, 139, 42, .26);
}

.home-panel-title i {
    color: #4db6ff;
    font-size: .9rem;
}

.home-ranking-title {
    margin: 0 -16px 16px;
}

.home-server-status-row {
    margin: 14px 14px 10px;
    padding: 11px 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    border-radius: 10px;
    background: rgba(255,255,255,.022);
    border: 1px solid rgba(255,255,255,.06);
    font-family: 'Inter', sans-serif;
    font-size: .84rem;
    color: #e8ded1;
}

.home-status-dot {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #c93b31;
    box-shadow: 0 0 8px rgba(201,59,49,.45);
}

.home-server-status-row.is-online .home-status-dot {
    background: #38d878;
    box-shadow: 0 0 9px rgba(56,216,120,.50);
}

.home-server-status-row.is-online strong {
    color: #7bf0a7;
}

.home-server-status-row.is-offline strong {
    color: #ff8b80;
}

.home-server-small-stats {
    margin: 0 14px 14px;
    display: grid;
    gap: 8px;
}

.home-server-small-stats > div {
    min-height: 38px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 8px 10px;
    border-radius: 9px;
    background: rgba(255,255,255,.018);
    border: 1px solid rgba(255,255,255,.05);
}

.home-server-small-stats span {
    font-size: .76rem;
    font-weight: 600;
    color: #cdbbaa;
}

.home-server-small-stats b {
    font-size: .90rem;
    font-weight: 800;
    color: #ffd58d;
}

.home-rate-group,
.home-composition-box {
    margin: 10px 14px 0;
    border-radius: 10px;
    border: 1px solid rgba(255,255,255,.06);
    background: rgba(255,255,255,.018);
}

.home-rate-group {
    min-height: 54px;
    padding: 10px 11px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.home-rate-heading {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    font-family: 'Inter', sans-serif;
    font-size: .78rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .035em;
    color: #e6d8c7;
}

.home-rate-heading i {
    width: 18px;
    text-align: center;
}

.home-rate-exp .home-rate-heading i { color: #66df91; }
.home-rate-drop .home-rate-heading i { color: #c58aff; }
.home-composition-box .home-rate-heading i { color: #ff9f3d; }

.home-rate-group > strong {
    flex: 0 0 auto;
    font-size: 1.12rem;
    font-weight: 900;
    color: #ffd58b;
}

.home-composition-box {
    padding: 11px;
}

.home-composition-box > .home-rate-heading {
    margin-bottom: 10px;
}

.home-composition-list {
    display: grid;
    gap: 6px;
}

.home-composition-row {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 8px;
    align-items: center;
    padding: 7px 8px;
    border-radius: 7px;
    background: rgba(0,0,0,.20);
    border: 1px solid rgba(255,255,255,.035);
}

.home-composition-row span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: .70rem;
    font-weight: 600;
    color: #cdb9a2;
}

.home-composition-row b {
    font-size: .74rem;
    color: #ffbe71;
}

.home-rate-empty,
.home-rank-empty {
    padding: 10px;
    text-align: center;
    font-size: .76rem;
    color: #a89582;
}

.home-ranking-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.home-rank-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.065);
    border-radius: 11px;
    background: linear-gradient(180deg, rgba(13, 9, 8, .95), rgba(7, 5, 5, .98));
}

.home-rank-card > header {
    min-height: 47px;
    padding: 10px 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border-bottom: 1px solid rgba(255,255,255,.06);
}

.home-rank-card > header i {
    font-size: .9rem;
}

.home-rank-card > header h3 {
    margin: 0;
    font-family: 'Cinzel', serif;
    font-size: .76rem;
    line-height: 1.2;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .045em;
    color: #f3e7d7;
}

.home-rank-level > header i { color: #ffc759; }
.home-rank-kill > header i { color: #ff6855; }
.home-rank-equipment > header i { color: #5ebeff; }

.home-rank-head,
.home-rank-row {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr) 62px;
    gap: 6px;
    align-items: center;
}

.home-rank-head {
    min-height: 31px;
    padding: 6px 8px;
    background: rgba(255,255,255,.018);
    border-bottom: 1px solid rgba(255,255,255,.045);
    font-size: .62rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .035em;
    color: #998776;
}

.home-rank-head span:last-child {
    text-align: right;
}

.home-rank-row {
    min-height: 58px;
    padding: 8px;
    border-bottom: 1px solid rgba(255,255,255,.045);
}

.home-rank-row:last-child {
    border-bottom: 0;
}

.home-medal {
    position: relative;
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    justify-self: center;
}

.home-medal i {
    font-size: 1.45rem;
}

.home-medal b {
    position: absolute;
    top: 10px;
    font-family: 'Inter', sans-serif;
    font-size: .56rem;
    line-height: 1;
    color: #20140d;
}

.home-medal-gold i {
    color: #ffd24d;
    filter: drop-shadow(0 0 5px rgba(255,195,54,.28));
}

.home-medal-silver i {
    color: #dce5ee;
    filter: drop-shadow(0 0 5px rgba(210,225,240,.18));
}

.home-medal-bronze i {
    color: #c77b42;
    filter: drop-shadow(0 0 5px rgba(199,123,66,.18));
}

.home-rank-player {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: .76rem;
    font-weight: 700;
    color: #f0e6da;
}

.home-rank-row > strong {
    text-align: right;
    font-size: .79rem;
    font-weight: 900;
    color: #ffd58b;
}

.home-rank-equipment .home-rank-row > strong {
    color: #78c9ff;
}

.home-city-list {
    display: grid;
    gap: 9px;
    padding: 14px;
}

.home-city-row {
    position: relative;
    overflow: hidden;
    min-height: 78px;
    display: grid;
    grid-template-columns: 58px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
    padding: 10px;
    border-radius: 10px;
    background: rgba(255,255,255,.018);
    border: 1px solid rgba(255,255,255,.055);
}

.home-city-row::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    opacity: .30;
}

.home-city-armia::before { background: linear-gradient(90deg, rgba(255,135,37,.26), transparent 64%); }
.home-city-arzan::before { background: linear-gradient(90deg, rgba(255,76,49,.24), transparent 64%); }
.home-city-erion::before { background: linear-gradient(90deg, rgba(76,161,255,.24), transparent 64%); }
.home-city-gelo::before { background: linear-gradient(90deg, rgba(96,211,255,.28), transparent 64%); }

.home-city-mark,
.home-city-copy {
    position: relative;
    z-index: 1;
}

.home-city-mark {
    width: 54px;
    height: 54px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    background: rgba(0,0,0,.28);
    border: 1px solid rgba(255,255,255,.07);
}

.home-city-mark img {
    display: block;
    max-width: 46px;
    max-height: 46px;
    object-fit: contain;
    filter: none !important;
    transform: none !important;
}

.home-city-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.home-city-copy span {
    font-family: 'Cinzel', serif;
    font-size: .72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .055em;
    color: #ffd48b;
}

.home-city-copy strong {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: .79rem;
    font-weight: 700;
    color: #e7ddd0;
}

/* Better small-text clarity across the home page */
.home-news-card *,
.home-side-panel *,
.home-ranking-area * {
    text-shadow: none !important;
    -webkit-font-smoothing: antialiased;
    backface-visibility: visible;
}

@media (max-width: 1199px) {
    .home-dashboard-layout {
        grid-template-columns: 235px minmax(0, 1fr) 235px;
        gap: 12px;
    }

    .home-ranking-grid {
        gap: 8px;
    }

    .home-rank-head,
    .home-rank-row {
        grid-template-columns: 38px minmax(0, 1fr) 54px;
    }
}

@media (max-width: 991px) {
    .home-news-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .home-news-card:last-child:nth-child(odd) {
        grid-column: 1 / -1;
    }

    .home-dashboard-layout {
        grid-template-columns: 1fr 1fr;
    }

    .home-ranking-area {
        grid-column: 1 / -1;
        grid-row: 1;
    }

    .home-rates-panel {
        grid-column: 1;
        grid-row: 2;
    }

    .home-cities-panel {
        grid-column: 2;
        grid-row: 2;
    }
}

@media (max-width: 767px) {
    .home-news-grid,
    .home-dashboard-layout,
    .home-ranking-grid {
        grid-template-columns: 1fr;
    }

    .home-news-card:last-child:nth-child(odd),
    .home-ranking-area,
    .home-rates-panel,
    .home-cities-panel {
        grid-column: auto;
        grid-row: auto;
    }

    .home-news-image-wrap {
        height: 195px;
    }

    .home-ranking-area {
        padding: 0 12px 16px;
    }

    .home-ranking-title {
        margin: 0 -12px 14px;
    }

    .home-rank-head,
    .home-rank-row {
        grid-template-columns: 48px minmax(0,1fr) 70px;
    }
}

/* ============================================================
   V9 - HOME REORGANIZADA / INFO VISÍVEL NO PRIMEIRO ACESSO
   ============================================================ */
.home-main-container {
    max-width: 1320px;
}

/* Navbar: logo completa do Alastar no canto superior direito */
.main-nav-v9 {
    min-height: 78px;
    padding: 7px 0;
}

.nav-shell-v9 {
    max-width: 1420px;
    display: flex;
    align-items: center;
    gap: 18px;
}

.nav-collapse-v9 {
    min-width: 0;
}

.site-menu-v9 {
    gap: 5px;
}

.nav-auth-v9 {
    margin-left: 16px;
    flex: 0 0 auto;
}

.top-right-alastar-logo {
    flex: 0 0 auto;
    width: 150px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    text-decoration: none;
}

.top-right-alastar-logo img {
    display: block;
    width: 146px;
    height: 62px;
    object-fit: contain;
    object-position: right center;
    filter: none !important;
    transform: none !important;
}

/* Hero reduzido para que os dados do servidor apareçam imediatamente */
.home-hero-v9 {
    min-height: auto !important;
    padding: 112px 0 34px !important;
    display: block;
    background: linear-gradient(180deg, rgba(0,0,0,.05), rgba(3,2,2,.24) 72%, rgba(4,2,2,.54));
}

.home-hero-v9 .hero-content {
    max-width: 900px;
    padding-top: 26px;
    margin-bottom: 28px;
}

.home-hero-v9 .hero-subtitle {
    font-size: clamp(1.20rem, 2vw, 1.68rem);
    color: #ffe1a4;
}

/* Painel principal de informações - primeiro viewport */
.home-server-overview {
    width: min(1180px, 100%);
    margin: 0 auto;
    overflow: hidden;
    background: linear-gradient(180deg, rgba(12,8,7,.95), rgba(6,4,4,.975));
    border: 1px solid rgba(255,145,46,.42);
    border-radius: 16px;
    box-shadow: 0 18px 38px rgba(0,0,0,.30), inset 0 0 0 1px rgba(91,183,255,.04);
}

.home-overview-heading {
    min-height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 10px 18px;
    font-family: 'Cinzel', serif;
    font-size: .90rem;
    font-weight: 800;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: #ffdc98;
    background: linear-gradient(90deg, rgba(22,53,88,.12), rgba(125,43,11,.28), rgba(22,53,88,.12));
    border-bottom: 1px solid rgba(255,145,46,.24);
}

.home-overview-heading i {
    color: #59bcff;
}

.home-overview-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0;
}

.home-overview-card {
    min-width: 0;
    min-height: 92px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    padding: 14px 12px;
    border-right: 1px solid rgba(255,255,255,.055);
    background: rgba(255,255,255,.012);
}

.home-overview-card:last-child {
    border-right: 0;
}

.overview-icon {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: rgba(13,36,66,.30);
    border: 1px solid rgba(82,180,255,.18);
    color: #65c2ff;
}

.home-overview-card > div {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.home-overview-card small {
    font-family: 'Inter', sans-serif;
    font-size: .69rem;
    line-height: 1.2;
    font-weight: 700;
    color: #cbb9a7;
    letter-spacing: .025em;
    text-transform: uppercase;
}

.home-overview-card strong {
    font-family: 'Inter', sans-serif;
    font-size: 1.05rem;
    line-height: 1.2;
    font-weight: 800;
    color: #ffd58b;
}

.home-overview-status.is-online strong { color: #77eda3; }
.home-overview-status.is-offline strong { color: #ff8379; }
.home-overview-exp .overview-icon { color: #67e097; background: rgba(21,87,52,.20); border-color: rgba(80,220,130,.18); }
.home-overview-drop .overview-icon { color: #c793ff; background: rgba(75,35,116,.20); border-color: rgba(193,129,255,.18); }
.home-overview-compositions .overview-icon { color: #ff9c3c; background: rgba(100,44,11,.22); border-color: rgba(255,139,44,.18); }

.home-overview-compositions {
    grid-column: span 1;
}

.overview-composition-copy {
    width: 100%;
}

.overview-composition-mini {
    width: 100%;
    display: grid;
    gap: 2px;
}

.overview-composition-mini span {
    min-width: 0;
    display: flex;
    justify-content: space-between;
    gap: 5px;
    font-size: .62rem;
    line-height: 1.22;
    color: #d5c3b1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.overview-composition-mini b {
    flex: 0 0 auto;
    color: #ffb767;
}

/* Notícias centralizadas */
.home-news-v9 {
    padding-top: 58px !important;
    background: linear-gradient(180deg, rgba(4,3,3,.48), rgba(3,2,2,.72));
}

.home-news-v9 .home-news-grid {
    width: min(1120px, 100%);
    margin-inline: auto;
    gap: 22px;
}

.home-news-v9 .home-news-card {
    min-height: 430px;
}

.home-news-v9 .home-news-image-wrap {
    height: 205px;
}

.home-news-v9 .home-news-content {
    min-height: 220px;
}

/* Ranking fica abaixo das notícias, centralizado e largo */
.home-ranking-section-v9 {
    background: linear-gradient(180deg, rgba(3,2,2,.72), rgba(3,2,2,.86));
}

.home-ranking-grid-v9 {
    width: min(1120px, 100%);
    margin-inline: auto;
    gap: 20px;
}

.home-ranking-grid-v9 .home-rank-card {
    border-color: rgba(255,145,46,.27);
    box-shadow: 0 12px 28px rgba(0,0,0,.24);
}

.home-ranking-grid-v9 .home-rank-card > header {
    min-height: 56px;
}

.home-ranking-grid-v9 .home-rank-card > header h3 {
    font-size: .88rem;
}

.home-ranking-grid-v9 .home-rank-head {
    font-size: .68rem;
}

.home-ranking-grid-v9 .home-rank-row {
    min-height: 64px;
}

.home-ranking-grid-v9 .home-rank-player,
.home-ranking-grid-v9 .home-rank-row > strong {
    font-size: .84rem;
}

/* Cidades em quatro cards iguais e centralizados */
.home-cities-section-v9 {
    background: rgba(3,2,2,.86);
}

.home-cities-grid-v9 {
    width: min(1120px, 100%);
    margin-inline: auto;
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: 16px;
}

.home-city-card-v9 {
    min-height: 104px;
    grid-template-columns: 68px minmax(0,1fr);
    padding: 14px;
    background: linear-gradient(180deg, rgba(13,9,8,.94), rgba(7,5,5,.98));
    border-color: rgba(255,145,46,.26);
    box-shadow: 0 12px 26px rgba(0,0,0,.22);
}

.home-city-card-v9 .home-city-mark {
    width: 62px;
    height: 62px;
}

.home-city-card-v9 .home-city-mark img {
    max-width: 54px;
    max-height: 54px;
}

.home-city-card-v9 .home-city-copy span {
    font-size: .82rem;
}

.home-city-card-v9 .home-city-copy strong {
    font-size: .88rem;
}

/* Tipografia: máxima leitura sem blur */
.home-server-overview *,
.home-news-v9 *,
.home-ranking-section-v9 *,
.home-cities-section-v9 *,
.top-right-alastar-logo * {
    text-shadow: none !important;
    transform: none !important;
    filter: none !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

@media (max-width: 1199px) {
    .top-right-alastar-logo {
        width: 128px;
    }

    .top-right-alastar-logo img {
        width: 124px;
    }

    .home-overview-grid {
        grid-template-columns: repeat(3, minmax(0,1fr));
    }

    .home-overview-card:nth-child(3) {
        border-right: 0;
    }

    .home-overview-card:nth-child(-n+3) {
        border-bottom: 1px solid rgba(255,255,255,.055);
    }
}

@media (max-width: 991px) {
    .main-nav-v9 {
        min-height: 70px;
    }

    .nav-shell-v9 {
        flex-wrap: wrap;
    }

    .top-right-alastar-logo {
        margin-left: auto;
        order: 2;
    }

    .brand-toggler {
        order: 1;
    }

    .nav-collapse-v9 {
        order: 3;
        flex-basis: 100%;
    }

    .nav-auth-v9 {
        margin: 12px 0 4px;
    }

    .home-hero-v9 {
        padding-top: 94px !important;
    }

    .home-news-v9 .home-news-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }

    .home-news-v9 .home-news-card:last-child:nth-child(odd) {
        grid-column: 1 / -1;
        width: min(548px,100%);
        justify-self: center;
    }

    .home-cities-grid-v9 {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width: 767px) {
    .top-right-alastar-logo {
        width: 108px;
        height: 54px;
    }

    .top-right-alastar-logo img {
        width: 104px;
        height: 50px;
    }

    .home-hero-v9 {
        padding-top: 86px !important;
    }

    .home-hero-v9 .hero-content {
        padding-top: 18px;
        margin-bottom: 22px;
    }

    .home-overview-grid,
    .home-news-v9 .home-news-grid,
    .home-ranking-grid-v9,
    .home-cities-grid-v9 {
        grid-template-columns: 1fr;
    }

    .home-overview-card,
    .home-overview-card:nth-child(3) {
        border-right: 0;
        border-bottom: 1px solid rgba(255,255,255,.055);
    }

    .home-overview-card:last-child {
        border-bottom: 0;
    }

    .home-news-v9 .home-news-card:last-child:nth-child(odd) {
        grid-column: auto;
        width: 100%;
    }

    .home-news-v9 .home-news-image-wrap {
        height: 190px;
    }
}

/* ============================================================
   V10 - ESCALA DE LEITURA / PAINÉIS MAIORES
   Objetivo: fontes, labels, botões e painéis mais visíveis
   ============================================================ */
body.alastar-site {
    font-size: 17px;
    line-height: 1.65;
}

.home-main-container,
.nav-shell-v9 {
    max-width: 1480px;
}

/* Menu superior maior */
.main-nav-v9 {
    min-height: 94px;
    padding: 12px 0;
}

.main-nav-v9.scrolled {
    padding: 10px 0;
}

.site-menu-v9 {
    gap: 10px;
}

.main-nav .nav-link {
    font-size: .96rem;
    padding: 14px 20px !important;
    min-height: 52px;
    display: flex;
    align-items: center;
}

.nav-auth-v9 {
    margin-left: 22px;
}

.top-right-alastar-logo {
    width: 190px;
    height: 76px;
}

.top-right-alastar-logo img {
    width: 184px;
    height: 72px;
}

/* Botões maiores e mais fáceis de clicar */
.al-btn {
    min-height: 56px;
    padding: 15px 30px;
    border-radius: 13px;
    font-size: 1rem;
    letter-spacing: .065em;
}

.hero-btns {
    gap: 18px;
}

/* Hero */
.home-hero-v9 {
    padding: 132px 0 44px !important;
}

.home-hero-v9 .hero-content {
    max-width: 1040px;
    margin-bottom: 34px;
}

.home-hero-v9 .hero-subtitle {
    font-size: clamp(1.45rem, 2.35vw, 2rem);
    line-height: 1.45;
}

/* Títulos gerais maiores */
.section-title h2,
.page-header h1,
.home-ranking-title {
    font-size: clamp(2.25rem, 3.6vw, 3.15rem);
    line-height: 1.2;
}

.title-divider {
    width: 140px;
    height: 4px;
    margin-top: 19px;
}

/* Informações do servidor: maior e destacado no primeiro viewport */
.home-server-overview {
    width: min(1360px, 100%);
    border-radius: 20px;
    border-width: 2px;
}

.home-overview-heading {
    min-height: 62px;
    padding: 15px 24px;
    gap: 12px;
    font-size: 1.12rem;
    letter-spacing: .085em;
}

.home-overview-heading i {
    font-size: 1.15rem;
}

.home-overview-card {
    min-height: 126px;
    gap: 15px;
    padding: 20px 18px;
}

.overview-icon {
    width: 46px;
    height: 46px;
    flex-basis: 46px;
    border-radius: 12px;
    font-size: 1.12rem;
}

.home-overview-card > div {
    gap: 6px;
}

.home-overview-card small {
    font-size: .82rem;
    line-height: 1.3;
    letter-spacing: .045em;
}

.home-overview-card strong {
    font-size: 1.32rem;
    line-height: 1.25;
}

.overview-composition-mini {
    gap: 5px;
}

.overview-composition-mini span {
    gap: 8px;
    font-size: .76rem;
    line-height: 1.35;
}

.overview-composition-mini b {
    font-size: .79rem;
}

/* Notícias */
.home-news-v9 {
    padding-top: 72px !important;
}

.home-news-v9 .home-news-grid {
    width: min(1320px, 100%);
    gap: 28px;
}

.home-news-v9 .home-news-card {
    min-height: 500px;
    border-radius: 18px;
}

.home-news-v9 .home-news-image-wrap {
    height: 245px;
}

.home-news-v9 .home-news-content {
    min-height: 250px;
    padding: 26px !important;
}

.home-news-v9 .news-date,
.home-news-v9 .home-news-date {
    font-size: .9rem;
}

.home-news-v9 .news-title,
.home-news-v9 .home-news-title {
    font-size: 1.42rem;
    line-height: 1.35;
}

.home-news-v9 .news-excerpt,
.home-news-v9 .home-news-excerpt {
    font-size: 1rem;
    line-height: 1.75;
}

/* Ranking mais abaixo e maior */
.home-ranking-section-v9 {
    padding-top: 72px !important;
    padding-bottom: 72px !important;
}

.home-ranking-grid-v9 {
    width: min(1320px, 100%);
    gap: 26px;
}

.home-ranking-grid-v9 .home-rank-card {
    border-radius: 18px;
    border-width: 2px;
    overflow: hidden;
}

.home-ranking-grid-v9 .home-rank-card > header {
    min-height: 72px;
    padding: 16px 20px;
}

.home-ranking-grid-v9 .home-rank-card > header i {
    font-size: 1.22rem;
}

.home-ranking-grid-v9 .home-rank-card > header h3 {
    font-size: 1.08rem;
    letter-spacing: .075em;
}

.home-ranking-grid-v9 .home-rank-head {
    min-height: 48px;
    padding: 10px 16px;
    font-size: .82rem;
    letter-spacing: .06em;
}

.home-ranking-grid-v9 .home-rank-row {
    min-height: 82px;
    padding: 14px 16px;
}

.home-ranking-grid-v9 .home-rank-player,
.home-ranking-grid-v9 .home-rank-row > strong {
    font-size: 1.02rem;
}

.home-ranking-grid-v9 .home-rank-row > strong {
    font-size: 1.08rem;
}

.home-ranking-grid-v9 .medal,
.home-ranking-grid-v9 .rank-medal,
.home-ranking-grid-v9 .home-rank-medal {
    font-size: 1.42rem;
}

/* Cidades */
.home-cities-section-v9 {
    padding-top: 68px !important;
    padding-bottom: 76px !important;
}

.home-cities-grid-v9 {
    width: min(1320px, 100%);
    gap: 22px;
}

.home-city-card-v9 {
    min-height: 146px;
    grid-template-columns: 92px minmax(0,1fr);
    gap: 18px;
    padding: 22px;
    border-radius: 18px;
    border-width: 2px;
}

.home-city-card-v9 .home-city-mark {
    width: 84px;
    height: 84px;
    border-radius: 14px;
}

.home-city-card-v9 .home-city-mark img {
    max-width: 74px;
    max-height: 74px;
}

.home-city-card-v9 .home-city-copy {
    gap: 7px;
}

.home-city-card-v9 .home-city-copy span {
    font-size: 1rem;
    letter-spacing: .08em;
}

.home-city-card-v9 .home-city-copy strong {
    font-size: 1.08rem;
    line-height: 1.35;
}

/* Demais páginas também recebem melhor escala */
.content-panel {
    padding: 38px;
}

.panel-title {
    font-size: 1.9rem;
}

.panel-subtitle {
    font-size: 1.4rem;
}

.panel-text,
.content-panel p,
.community-card p,
.news-excerpt,
.warning-box,
.step p,
.page-header .lead {
    font-size: 1.02rem;
}

.stat-card {
    min-height: 190px;
    padding: 34px 20px;
}

.stat-value {
    font-size: clamp(2.5rem, 4.5vw, 3.35rem);
}

.stat-label {
    font-size: 1.02rem;
}

.rank-table thead th {
    font-size: 1rem;
    padding: 19px 17px;
}

.rank-table tbody td {
    font-size: 1.04rem;
    padding: 18px 17px;
}

.form-label {
    font-size: 1rem;
}

.al-input-group .input-group-text,
.al-input-group .form-control {
    min-height: 56px;
    font-size: 1rem;
}

.auth-tabs .nav-link {
    font-size: 1rem;
    padding-top: 14px;
    padding-bottom: 14px;
}

.modal-title {
    font-size: 1.5rem;
}

.footer-links a,
.copyright {
    font-size: 1rem;
}

.social-link {
    width: 50px;
    height: 50px;
    font-size: 1.08rem;
}

/* Tablet */
@media (max-width: 1199px) {
    body.alastar-site { font-size: 16.5px; }

    .home-overview-grid {
        grid-template-columns: repeat(3, minmax(0,1fr));
    }

    .home-overview-card {
        min-height: 116px;
    }

    .home-ranking-grid-v9 {
        gap: 18px;
    }

    .home-ranking-grid-v9 .home-rank-player,
    .home-ranking-grid-v9 .home-rank-row > strong {
        font-size: .94rem;
    }
}

@media (max-width: 991px) {
    .main-nav-v9 { min-height: 82px; }

    .main-nav .nav-link {
        font-size: .94rem;
        min-height: 50px;
    }

    .top-right-alastar-logo {
        width: 154px;
        height: 66px;
    }

    .top-right-alastar-logo img {
        width: 150px;
        height: 62px;
    }

    .home-news-v9 .home-news-image-wrap { height: 230px; }

    .home-city-card-v9 {
        min-height: 136px;
    }
}

/* Mobile: ainda legível sem estourar a tela */
@media (max-width: 767px) {
    body.alastar-site { font-size: 16px; }

    .home-hero-v9 { padding-top: 104px !important; }

    .home-hero-v9 .hero-subtitle {
        font-size: 1.28rem;
    }

    .al-btn {
        min-height: 54px;
        padding: 14px 22px;
        font-size: .92rem;
    }

    .home-overview-heading {
        min-height: 58px;
        font-size: 1rem;
    }

    .home-overview-card {
        min-height: 104px;
        padding: 18px;
        justify-content: flex-start;
    }

    .home-overview-card small { font-size: .78rem; }
    .home-overview-card strong { font-size: 1.18rem; }

    .home-news-v9 .home-news-card { min-height: 450px; }
    .home-news-v9 .home-news-image-wrap { height: 220px; }
    .home-news-v9 .home-news-content { min-height: 220px; padding: 22px !important; }

    .home-ranking-grid-v9 .home-rank-card > header { min-height: 66px; }
    .home-ranking-grid-v9 .home-rank-row { min-height: 74px; }
    .home-ranking-grid-v9 .home-rank-player,
    .home-ranking-grid-v9 .home-rank-row > strong { font-size: .96rem; }

    .home-city-card-v9 {
        min-height: 126px;
        grid-template-columns: 78px minmax(0,1fr);
        padding: 18px;
    }

    .home-city-card-v9 .home-city-mark {
        width: 70px;
        height: 70px;
    }

    .home-city-card-v9 .home-city-mark img {
        max-width: 62px;
        max-height: 62px;
    }

    .home-city-card-v9 .home-city-copy span { font-size: .92rem; }
    .home-city-card-v9 .home-city-copy strong { font-size: 1rem; }

    .content-panel { padding: 26px 22px; }
    .panel-title { font-size: 1.55rem; }
    .panel-subtitle { font-size: 1.25rem; }
}

/* ============================================================
   V11 — RANKING COM CLASSE + EVOLUÇÃO
   FM / BM / TK / HT + Mortal / Arch / Celestial / Subcelestial
   ============================================================ */

/* Retrato representativo da classe */
.rank-class-avatar {
    position: relative;
    width: 70px;
    height: 70px;
    flex: 0 0 70px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    overflow: hidden;
    background: linear-gradient(180deg, rgba(15,18,31,.94), rgba(8,7,10,.98));
    border: 1px solid rgba(255,173,76,.30);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.035), 0 7px 16px rgba(0,0,0,.24);
}

.rank-class-avatar::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    border-radius: inherit;
    box-shadow: inset 0 0 18px rgba(58,153,255,.08);
}

.rank-class-avatar img {
    width: 68px;
    height: 68px;
    display: block;
    object-fit: contain;
    object-position: center;
}

.rank-class-fm { border-color: rgba(78,172,255,.48); }
.rank-class-bm { border-color: rgba(255,116,54,.48); }
.rank-class-tk { border-color: rgba(255,190,82,.52); }
.rank-class-ht { border-color: rgba(255,137,47,.48); }

.rank-player-info {
    min-width: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 7px;
}

.rank-player-name {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #fff1d7;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 1.02rem;
    font-weight: 800;
    line-height: 1.2;
}

.rank-player-tags {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 7px;
    flex-wrap: wrap;
}

.rank-class-tag,
.rank-evolution-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 26px;
    border-radius: 8px;
    border: 1px solid rgba(255,255,255,.10);
    font-family: 'Inter', system-ui, sans-serif;
    font-size: .75rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .045em;
}

.rank-class-tag {
    min-width: 38px;
    padding: 6px 8px;
    color: #fff0d4;
    background: rgba(82,38,14,.66);
}

.rank-class-tag-fm { color: #bce3ff; background: rgba(17,70,132,.56); border-color: rgba(77,174,255,.30); }
.rank-class-tag-bm { color: #ffd5bd; background: rgba(119,40,18,.58); border-color: rgba(255,111,52,.30); }
.rank-class-tag-tk { color: #ffe2a3; background: rgba(117,68,12,.58); border-color: rgba(255,190,75,.32); }
.rank-class-tag-ht { color: #ffdab9; background: rgba(115,48,13,.58); border-color: rgba(255,139,45,.30); }

.rank-evolution-tag {
    max-width: 150px;
    justify-content: flex-start;
    gap: 5px;
    padding: 3px 8px 3px 4px;
    color: #d9eaff;
    background: rgba(12,31,63,.64);
}

.rank-evolution-tag img {
    width: 23px;
    height: 23px;
    flex: 0 0 23px;
    display: block;
    object-fit: contain;
}

.rank-evolution-tag span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.rank-evolution-mortal { color: #ffd099; border-color: rgba(255,124,31,.32); background: rgba(86,32,10,.58); }
.rank-evolution-arch { color: #baddff; border-color: rgba(73,169,255,.34); background: rgba(12,51,104,.60); }
.rank-evolution-celestial { color: #fff0ad; border-color: rgba(255,200,78,.34); background: rgba(82,57,11,.60); }
.rank-evolution-subcelestial { color: #cfe7ff; border-color: rgba(75,174,255,.42); background: rgba(22,45,111,.66); }

/* HOME — Top 3 */
.home-ranking-grid-v9 .home-rank-head,
.home-ranking-grid-v9 .home-rank-row-rich {
    grid-template-columns: 60px minmax(0, 1fr) 88px;
}

.home-ranking-grid-v9 .home-rank-row-rich {
    min-height: 110px;
    padding: 14px 15px;
    align-items: center;
}

.home-rank-player-rich {
    min-width: 0;
    display: flex !important;
    align-items: center;
    gap: 12px;
}

.home-ranking-grid-v9 .rank-class-avatar {
    width: 66px;
    height: 66px;
    flex-basis: 66px;
}

.home-ranking-grid-v9 .rank-class-avatar img {
    width: 64px;
    height: 64px;
}

.home-ranking-grid-v9 .rank-player-name {
    font-size: 1rem;
}

.home-ranking-grid-v9 .rank-player-tags {
    gap: 5px;
}

.home-ranking-grid-v9 .rank-class-tag,
.home-ranking-grid-v9 .rank-evolution-tag {
    font-size: .70rem;
}

.home-ranking-grid-v9 .rank-evolution-tag {
    max-width: 122px;
}

.home-ranking-grid-v9 .rank-evolution-tag img {
    width: 21px;
    height: 21px;
    flex-basis: 21px;
}

.home-ranking-grid-v9 .home-rank-value {
    color: #ffe19d;
    font-size: 1.08rem;
    font-weight: 900;
    text-align: right;
    white-space: nowrap;
}

.home-ranking-grid-v9 .home-rank-equipment .home-rank-value {
    color: #9edcff;
}

/* RANKING COMPLETO — uma seção larga por ranking para leitura real */
.full-ranking-grid-rich {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 28px !important;
    width: min(1320px, 100%);
    margin-inline: auto;
}

.full-ranking-grid-rich .full-rank-card {
    width: 100%;
    overflow: hidden;
}

.full-rank-head-rich,
.full-rank-row-rich {
    display: grid !important;
    grid-template-columns: 70px minmax(320px, 1fr) 210px 120px !important;
    gap: 16px;
    align-items: center;
}

.full-rank-head-rich {
    min-height: 56px;
    padding: 12px 20px !important;
    background: rgba(255,147,47,.065);
    border-bottom: 1px solid rgba(255,161,69,.16);
    color: #d9c4ab;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: .87rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .07em;
}

.full-rank-row-rich {
    min-height: 102px;
    padding: 14px 20px !important;
    border-bottom: 1px solid rgba(255,255,255,.055);
}

.full-rank-row-rich:last-child {
    border-bottom: 0;
}

.full-rank-player-rich {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 15px;
}

.rank-class-avatar-large {
    width: 76px;
    height: 76px;
    flex-basis: 76px;
}

.rank-class-avatar-large img {
    width: 74px;
    height: 74px;
}

.full-rank-player-rich .rank-player-name {
    font-size: 1.08rem;
}

.full-rank-player-rich .rank-class-tag {
    width: fit-content;
    max-width: 170px;
    padding-inline: 10px;
}

.full-rank-evolution {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 10px;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: .92rem;
    font-weight: 800;
}

.full-rank-evolution img {
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    object-fit: contain;
    display: block;
    filter: drop-shadow(0 4px 8px rgba(0,0,0,.20));
}

.full-rank-evolution span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.full-rank-value {
    color: #ffe19a;
    font-size: 1.18rem;
    font-weight: 900;
    text-align: right;
    white-space: nowrap;
}

.ranking-power .full-rank-value {
    color: #98d8ff;
}

/* Medalhas/posições maiores no ranking completo */
.full-rank-row-rich .mini-rank-pos {
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    justify-self: center;
    border-radius: 50%;
    font-size: 1rem;
    font-weight: 900;
}

/* Desktop intermediário */
@media (max-width: 1199px) {
    .home-ranking-grid-v9 .home-rank-head,
    .home-ranking-grid-v9 .home-rank-row-rich {
        grid-template-columns: 54px minmax(0, 1fr) 78px;
    }

    .home-ranking-grid-v9 .rank-class-avatar {
        width: 58px;
        height: 58px;
        flex-basis: 58px;
    }

    .home-ranking-grid-v9 .rank-class-avatar img {
        width: 56px;
        height: 56px;
    }

    .home-ranking-grid-v9 .rank-evolution-tag span {
        display: none;
    }

    .home-ranking-grid-v9 .rank-evolution-tag {
        width: 29px;
        padding: 3px;
    }

    .full-rank-head-rich,
    .full-rank-row-rich {
        grid-template-columns: 60px minmax(260px, 1fr) 180px 100px !important;
        gap: 12px;
    }
}

@media (max-width: 991px) {
    .home-ranking-grid-v9 {
        grid-template-columns: 1fr !important;
    }

    .home-ranking-grid-v9 .home-rank-head,
    .home-ranking-grid-v9 .home-rank-row-rich {
        grid-template-columns: 62px minmax(0, 1fr) 100px;
    }

    .home-ranking-grid-v9 .rank-evolution-tag {
        width: auto;
        max-width: 145px;
        padding: 3px 8px 3px 4px;
    }

    .home-ranking-grid-v9 .rank-evolution-tag span {
        display: inline;
    }

    .full-rank-head-rich,
    .full-rank-row-rich {
        grid-template-columns: 54px minmax(220px, 1fr) 150px 92px !important;
        gap: 10px;
        padding-left: 14px !important;
        padding-right: 14px !important;
    }

    .rank-class-avatar-large {
        width: 66px;
        height: 66px;
        flex-basis: 66px;
    }

    .rank-class-avatar-large img {
        width: 64px;
        height: 64px;
    }

    .full-rank-evolution img {
        width: 42px;
        height: 42px;
        flex-basis: 42px;
    }
}

@media (max-width: 767px) {
    .home-ranking-grid-v9 .home-rank-row-rich {
        min-height: 104px;
    }

    .home-ranking-grid-v9 .home-rank-head,
    .home-ranking-grid-v9 .home-rank-row-rich {
        grid-template-columns: 50px minmax(0, 1fr) 78px;
    }

    .home-ranking-grid-v9 .home-rank-player-rich {
        gap: 9px;
    }

    .home-ranking-grid-v9 .rank-class-avatar {
        width: 54px;
        height: 54px;
        flex-basis: 54px;
        border-radius: 12px;
    }

    .home-ranking-grid-v9 .rank-class-avatar img {
        width: 52px;
        height: 52px;
    }

    .home-ranking-grid-v9 .rank-player-name {
        font-size: .94rem;
    }

    .home-ranking-grid-v9 .rank-evolution-tag span {
        display: none;
    }

    .home-ranking-grid-v9 .rank-evolution-tag {
        width: 29px;
        padding: 3px;
    }

    .full-rank-head-rich {
        grid-template-columns: 42px minmax(0, 1fr) 78px !important;
    }

    .full-rank-head-rich span:nth-child(3) {
        display: none;
    }

    .full-rank-row-rich {
        grid-template-columns: 42px minmax(0, 1fr) 78px !important;
        min-height: 94px;
    }

    .full-rank-evolution {
        position: absolute;
        margin-left: 92px;
        margin-top: 58px;
        pointer-events: none;
    }

    .full-rank-row-rich {
        position: relative;
        padding-top: 12px !important;
        padding-bottom: 26px !important;
    }

    .full-rank-evolution img {
        width: 25px;
        height: 25px;
        flex-basis: 25px;
    }

    .full-rank-evolution span {
        font-size: .72rem;
    }

    .rank-class-avatar-large {
        width: 56px;
        height: 56px;
        flex-basis: 56px;
        border-radius: 12px;
    }

    .rank-class-avatar-large img {
        width: 54px;
        height: 54px;
    }

    .full-rank-player-rich {
        gap: 9px;
    }

    .full-rank-player-rich .rank-player-name {
        font-size: .92rem;
    }

    .full-rank-player-rich .rank-class-tag {
        font-size: .68rem;
        max-width: 105px;
        padding-inline: 7px;
    }

    .full-rank-value {
        font-size: .94rem;
    }
}

/* ============================================================
   V12 - RANKING DE CIDADES NO ESTILO DOS JOGADORES
   ============================================================ */

/* Home: 4 rankings lado a lado, incluindo cidades */
.home-ranking-grid-v12 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: start;
}

.home-rank-cities-v12 > header i {
    color: #7ec9ff;
}

.home-rank-head-city {
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.35fr);
    gap: 12px;
}

.home-rank-head-city span:last-child {
    text-align: left;
}

.home-city-rank-row {
    position: relative;
    min-height: 82px;
    display: grid;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.35fr);
    gap: 12px;
    align-items: center;
    padding: 14px 16px;
    border-bottom: 1px solid rgba(255,255,255,.055);
}

.home-city-rank-row:last-child {
    border-bottom: 0;
}

.home-city-rank-row::before {
    content: '';
    position: absolute;
    inset: 0;
    opacity: .22;
    pointer-events: none;
}

.home-city-rank-row-armia::before { background: linear-gradient(90deg, rgba(255, 145, 46, .26), transparent 62%); }
.home-city-rank-row-arzan::before { background: linear-gradient(90deg, rgba(255, 92, 58, .22), transparent 62%); }
.home-city-rank-row-erion::before { background: linear-gradient(90deg, rgba(82, 156, 255, .22), transparent 62%); }
.home-city-rank-row-gelo::before  { background: linear-gradient(90deg, rgba(89, 220, 255, .22), transparent 62%); }

.home-city-rank-meta,
.home-city-rank-owner {
    position: relative;
    z-index: 1;
    min-width: 0;
}

.home-city-rank-meta {
    display: flex;
    align-items: center;
    gap: 12px;
}

.home-city-rank-emblem {
    width: 54px;
    height: 54px;
    flex: 0 0 54px;
    border-radius: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, rgba(34, 18, 12, .92), rgba(16, 9, 7, .98));
    border: 1px solid rgba(255, 191, 109, .18);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}

.home-city-rank-emblem i {
    font-size: 1.26rem;
}

.city-emblem-armia i { color: #ffcb72; }
.city-emblem-arzan i { color: #ff9378; }
.city-emblem-erion i { color: #8ec9ff; }
.city-emblem-gelo i  { color: #8ee8ff; }

.home-city-rank-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.home-city-rank-copy strong {
    font-size: 1rem;
    line-height: 1.2;
    color: #f7e9d4;
}

.home-city-rank-copy span {
    font-size: .80rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: #cfb89c;
}

.home-city-rank-owner {
    display: grid;
    grid-template-columns: 54px 36px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
}

.home-city-rank-mark {
    width: 54px;
    height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: rgba(0, 0, 0, .28);
    border: 1px solid rgba(255,255,255,.08);
}

.home-city-rank-mark img {
    max-width: 46px;
    max-height: 46px;
    object-fit: contain;
}

.home-city-rank-cape {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(17, 11, 8, .92);
    border: 1px solid rgba(255, 178, 93, .16);
    color: #ffc873;
    font-size: .95rem;
}

.home-city-rank-guild {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: .96rem;
    line-height: 1.25;
    color: #efe4d5;
}

/* Ranking page: lado esquerdo jogadores, lado direito cidades */
.ranking-page-layout-v12 {
    display: grid;
    grid-template-columns: minmax(0, 2.4fr) minmax(310px, 0.95fr);
    gap: 26px;
    align-items: start;
}

.ranking-main-column-v12,
.ranking-side-column-v12 {
    min-width: 0;
}

.ranking-side-column-v12 {
    position: sticky;
    top: 106px;
}

.city-ranking-panel-v12 {
    overflow: hidden;
}

.city-ranking-head-v12 {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.2fr);
    gap: 14px;
    align-items: center;
    min-height: 56px;
    padding: 12px 18px;
    background: rgba(255, 147, 47, .065);
    border-bottom: 1px solid rgba(255, 161, 69, .16);
    color: #d9c4ab;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: .84rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .07em;
}

.city-ranking-list-v12 {
    display: grid;
}

.city-ranking-row-v12 {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.2fr);
    gap: 14px;
    align-items: center;
    min-height: 108px;
    padding: 16px 18px;
    border-bottom: 1px solid rgba(255,255,255,.055);
}

.city-ranking-row-v12:last-child {
    border-bottom: 0;
}

.city-ranking-row-v12::before {
    content: '';
    position: absolute;
    inset: 0;
    opacity: .24;
    pointer-events: none;
}

.city-ranking-row-armia::before { background: linear-gradient(90deg, rgba(255,145,46,.28), transparent 68%); }
.city-ranking-row-arzan::before { background: linear-gradient(90deg, rgba(255,92,58,.22), transparent 68%); }
.city-ranking-row-erion::before { background: linear-gradient(90deg, rgba(76,161,255,.22), transparent 68%); }
.city-ranking-row-gelo::before  { background: linear-gradient(90deg, rgba(91,224,255,.22), transparent 68%); }

.city-ranking-meta-v12,
.city-ranking-owner-v12 {
    position: relative;
    z-index: 1;
    min-width: 0;
}

.city-ranking-meta-v12 {
    display: flex;
    align-items: center;
    gap: 14px;
}

.city-ranking-icon-v12 {
    width: 58px;
    height: 58px;
    flex: 0 0 58px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(34, 18, 12, .94), rgba(16, 9, 7, .98));
    border: 1px solid rgba(255, 191, 109, .18);
}

.city-ranking-icon-v12 i {
    font-size: 1.38rem;
}

.city-ranking-icon-armia i { color: #ffcb72; }
.city-ranking-icon-arzan i { color: #ff9378; }
.city-ranking-icon-erion i { color: #8ec9ff; }
.city-ranking-icon-gelo i  { color: #8ee8ff; }

.city-ranking-copy-v12 {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.city-ranking-copy-v12 strong {
    font-size: 1.06rem;
    line-height: 1.25;
    color: #f7e9d4;
}

.city-ranking-copy-v12 span {
    font-size: .82rem;
    font-weight: 700;
    color: #ceb89d;
    text-transform: uppercase;
    letter-spacing: .075em;
}

.city-ranking-owner-v12 {
    display: grid;
    grid-template-columns: 60px 38px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
}

.city-ranking-mark-v12 {
    width: 60px;
    height: 60px;
    border-radius: 16px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(0,0,0,.28);
    border: 1px solid rgba(255,255,255,.08);
}

.city-ranking-mark-v12 img {
    max-width: 50px;
    max-height: 50px;
    object-fit: contain;
}

.city-ranking-cape-v12 {
    width: 36px;
    height: 36px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(17, 11, 8, .92);
    border: 1px solid rgba(255, 178, 93, .16);
    color: #ffc873;
    font-size: 1rem;
}

.city-ranking-owner-copy-v12 {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.city-ranking-owner-copy-v12 strong {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 1rem;
    color: #efe4d5;
}

.city-ranking-owner-copy-v12 small {
    font-size: .78rem;
    font-weight: 700;
    color: #c8b49a;
    text-transform: uppercase;
    letter-spacing: .065em;
}

@media (max-width: 1399px) {
    .home-ranking-grid-v12 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 1199px) {
    .ranking-page-layout-v12 {
        grid-template-columns: 1fr;
    }

    .ranking-side-column-v12 {
        position: static;
        top: auto;
    }
}

@media (max-width: 991px) {
    .home-city-rank-row,
    .home-rank-head-city {
        grid-template-columns: 1fr;
    }

    .home-city-rank-owner {
        grid-template-columns: 54px 34px minmax(0, 1fr);
    }

    .city-ranking-head-v12,
    .city-ranking-row-v12 {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .home-ranking-grid-v12 {
        grid-template-columns: 1fr;
    }

    .home-city-rank-row {
        padding: 14px;
    }

    .home-city-rank-meta,
    .home-city-rank-owner {
        gap: 10px;
    }

    .city-ranking-row-v12 {
        min-height: auto;
        padding: 14px;
    }

    .city-ranking-meta-v12,
    .city-ranking-owner-v12 {
        gap: 10px;
    }
}

/* ============================================================
   V13 - REORGANIZAÇÃO DA HOME NO ESTILO REFERÊNCIA
   ============================================================ */

.home-hero-v13 {
    padding-bottom: 30px !important;
}

.home-server-overview-v13 {
    margin-top: 26px;
}

.home-quick-links-v13 {
    width: min(1360px, 100%);
    margin: 22px auto 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.home-quick-card-v13 {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    gap: 16px;
    align-items: center;
    min-height: 120px;
    padding: 22px 24px;
    text-decoration: none;
    color: var(--text);
    background: linear-gradient(180deg, rgba(16, 10, 8, 0.95), rgba(9, 6, 5, 0.98));
    border: 1px solid rgba(255, 149, 48, 0.22);
    border-radius: 18px;
    box-shadow: 0 14px 30px rgba(0,0,0,.25);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.home-quick-card-v13:hover {
    transform: translateY(-2px);
    border-color: rgba(255, 179, 96, 0.42);
    box-shadow: 0 18px 34px rgba(0,0,0,.30);
}

.home-quick-icon-v13 {
    width: 62px;
    height: 62px;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, rgba(108, 43, 16, .92), rgba(33, 13, 8, .98));
    border: 1px solid rgba(255, 184, 101, .22);
    color: #ffd28f;
    font-size: 1.35rem;
}

.home-quick-card-v13 strong {
    display: block;
    font-family: 'Cinzel', serif;
    font-size: 1.14rem;
    color: var(--gold-2);
    margin-bottom: 4px;
}

.home-quick-card-v13 span {
    display: block;
    font-size: .97rem;
    line-height: 1.55;
    color: #ddcfbf;
}

/* Notícias: layout inspirado na referência, com destaque + lista */
.home-news-section-v13 {
    background: linear-gradient(180deg, rgba(5, 3, 3, .70), rgba(5, 3, 3, .84));
}

.home-news-layout-v13 {
    width: min(1360px, 100%);
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 1.04fr) minmax(380px, 0.96fr);
    gap: 28px;
    align-items: stretch;
}

.home-news-featured-v13,
.home-news-side-v13 {
    background: linear-gradient(180deg, rgba(13, 9, 8, .94), rgba(8, 5, 5, .98));
    border: 1px solid rgba(255, 149, 48, .22);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 14px 32px rgba(0,0,0,.24);
}

.home-news-featured-v13 {
    display: grid;
    grid-template-columns: minmax(280px, 0.92fr) minmax(0, 1.08fr);
    min-height: 430px;
}

.home-news-featured-image-v13 {
    min-height: 100%;
    background: rgba(0,0,0,.28);
}

.home-news-featured-image-v13 img {
    width: 100%;
    height: 100%;
    min-height: 430px;
    object-fit: cover;
    display: block;
}

.home-news-featured-body-v13 {
    padding: 30px 30px 28px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.home-news-featured-body-v13 time,
.home-news-side-item-v13 time {
    font-size: .88rem;
    font-weight: 700;
    letter-spacing: .04em;
    color: #cdb89e;
}

.home-news-featured-body-v13 h3 {
    margin: 8px 0 12px;
    font-family: 'Cinzel', serif;
    font-size: 1.9rem;
    line-height: 1.25;
    color: #ffda9d;
}

.home-news-featured-body-v13 p {
    margin-bottom: 22px;
    font-size: 1rem;
    line-height: 1.75;
    color: #ebdfd2;
}

.home-news-side-v13 {
    display: flex;
    flex-direction: column;
}

.home-news-side-head-v13 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 22px 24px;
    border-bottom: 1px solid rgba(255,255,255,.06);
}

.home-news-side-head-v13 span {
    font-family: 'Cinzel', serif;
    font-size: 1.15rem;
    color: #ffd28c;
}

.home-news-side-head-v13 a,
.home-news-side-item-v13 a {
    color: #7dc5ff;
    text-decoration: none;
    font-weight: 700;
}

.home-news-side-list-v13 {
    display: grid;
    gap: 0;
}

.home-news-side-item-v13 {
    padding: 22px 24px;
    border-bottom: 1px solid rgba(255,255,255,.06);
}

.home-news-side-item-v13:last-child {
    border-bottom: 0;
}

.home-news-side-item-v13 h3 {
    margin: 7px 0 8px;
    font-family: 'Cinzel', serif;
    font-size: 1.22rem;
    line-height: 1.32;
    color: #f6e7d5;
}

.home-news-side-item-v13 p {
    margin: 0 0 10px;
    font-size: .96rem;
    line-height: 1.68;
    color: #d9cabc;
}

/* Ranking hub: jogadores + cidades grandes lado a lado */
.home-ranking-hub-v13 {
    background: linear-gradient(180deg, rgba(4, 2, 2, .74), rgba(4, 2, 2, .90));
}

.home-ranking-hub-grid-v13 {
    width: min(1360px, 100%);
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(420px, 1fr);
    gap: 28px;
    align-items: start;
}

.home-ranking-panel-v13 {
    overflow: hidden;
}

.home-ranking-grid-v13a {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.home-ranking-panel-v13 .portal-panel-title {
    padding-inline: 24px;
}

.home-ranking-panel-v13.home-ranking-panel-players-v13 {
    padding: 18px;
}

.home-ranking-panel-v13.home-ranking-panel-cities-v13 {
    padding: 18px;
}

.home-panel-footer-v13 {
    padding: 18px 8px 4px;
    text-align: center;
}

.home-ranking-grid-v13a .home-rank-card {
    min-height: 100%;
}

/* Cidades maiores e mais respiráveis na Home */
.home-city-ranking-list-v13 {
    display: grid;
    gap: 16px;
}

.home-city-ranking-row-v13 {
    position: relative;
    min-height: 116px;
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr);
    gap: 18px;
    align-items: center;
    padding: 18px 20px;
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(17, 11, 9, .96), rgba(9, 6, 6, .99));
    border: 1px solid rgba(255,255,255,.07);
}

.home-city-ranking-row-v13::before {
    content: '';
    position: absolute;
    inset: 0;
    border-radius: 18px;
    opacity: .22;
    pointer-events: none;
}

.home-city-ranking-row-armia::before { background: linear-gradient(90deg, rgba(255,145,46,.28), transparent 72%); }
.home-city-ranking-row-arzan::before { background: linear-gradient(90deg, rgba(255,92,58,.22), transparent 72%); }
.home-city-ranking-row-erion::before { background: linear-gradient(90deg, rgba(76,161,255,.24), transparent 72%); }
.home-city-ranking-row-gelo::before  { background: linear-gradient(90deg, rgba(91,224,255,.24), transparent 72%); }

.home-city-ranking-city-v13,
.home-city-ranking-owner-v13 {
    position: relative;
    z-index: 1;
    min-width: 0;
}

.home-city-ranking-city-v13 {
    display: flex;
    align-items: center;
    gap: 14px;
}

.home-city-ranking-icon-v13 {
    width: 64px;
    height: 64px;
    flex: 0 0 64px;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, rgba(111, 42, 15, .92), rgba(30, 12, 8, .98));
    border: 1px solid rgba(255, 194, 113, .22);
}

.home-city-ranking-icon-v13 i {
    font-size: 1.48rem;
}

.home-city-ranking-copy-v13 {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.home-city-ranking-copy-v13 strong {
    font-family: 'Cinzel', serif;
    font-size: 1.26rem;
    color: #ffe0a6;
}

.home-city-ranking-copy-v13 span {
    font-size: .86rem;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: #cdb89e;
}

.home-city-ranking-owner-v13 {
    display: grid;
    grid-template-columns: 64px 42px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
}

.home-city-ranking-mark-v13 {
    width: 64px;
    height: 64px;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(0,0,0,.28);
    border: 1px solid rgba(255,255,255,.08);
}

.home-city-ranking-mark-v13 img {
    max-width: 54px;
    max-height: 54px;
    object-fit: contain;
}

.home-city-ranking-cape-v13 {
    width: 40px;
    height: 40px;
    border-radius: 13px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(17, 11, 8, .92);
    border: 1px solid rgba(255, 178, 93, .18);
    color: #ffca79;
    font-size: 1rem;
}

.home-city-ranking-owner-copy-v13 {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.home-city-ranking-owner-copy-v13 strong {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 1.02rem;
    color: #efe3d2;
}

.home-city-ranking-owner-copy-v13 small {
    font-size: .79rem;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: #c3af95;
}

/* Ranking page: aumentar painel de cidades */
.ranking-page-layout-v12 {
    grid-template-columns: minmax(0, 1.72fr) minmax(420px, 1.08fr);
    gap: 30px;
}

.city-ranking-panel-v12 {
    box-shadow: 0 16px 36px rgba(0,0,0,.28);
}

.city-ranking-head-v12 {
    min-height: 62px;
    padding: 14px 20px;
    font-size: .88rem;
}

.city-ranking-row-v12 {
    min-height: 124px;
    padding: 18px 20px;
}

.city-ranking-copy-v12 strong,
.city-ranking-owner-copy-v12 strong {
    font-size: 1.08rem;
}

.city-ranking-mark-v12 {
    width: 66px;
    height: 66px;
}

.city-ranking-mark-v12 img {
    max-width: 56px;
    max-height: 56px;
}

@media (max-width: 1399px) {
    .home-news-layout-v13,
    .home-ranking-hub-grid-v13 {
        width: min(1280px, 100%);
    }

    .home-ranking-hub-grid-v13 {
        grid-template-columns: minmax(0, 1fr);
    }

    .home-ranking-panel-v13.home-ranking-panel-cities-v13 {
        max-width: 100%;
    }
}

@media (max-width: 1199px) {
    .home-quick-links-v13 {
        grid-template-columns: 1fr;
    }

    .home-news-layout-v13 {
        grid-template-columns: 1fr;
    }

    .home-news-featured-v13 {
        grid-template-columns: minmax(0, 1fr);
    }

    .home-news-featured-image-v13 img {
        min-height: 280px;
    }

    .home-ranking-grid-v13a {
        grid-template-columns: 1fr;
    }

    .ranking-page-layout-v12 {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .home-quick-card-v13 {
        grid-template-columns: 54px minmax(0, 1fr);
        min-height: 108px;
        padding: 18px;
    }

    .home-quick-icon-v13 {
        width: 52px;
        height: 52px;
        border-radius: 14px;
        font-size: 1.1rem;
    }

    .home-news-featured-body-v13,
    .home-news-side-head-v13,
    .home-news-side-item-v13,
    .home-ranking-panel-v13.home-ranking-panel-players-v13,
    .home-ranking-panel-v13.home-ranking-panel-cities-v13 {
        padding-left: 16px;
        padding-right: 16px;
    }

    .home-city-ranking-row-v13 {
        grid-template-columns: 1fr;
        gap: 14px;
        padding: 16px;
    }

    .home-city-ranking-owner-v13 {
        grid-template-columns: 54px 38px minmax(0, 1fr);
    }
}

/* ============================================================
   V14 - HOME EM FORMATO PORTAL / LIVRO DE 3 COLUNAS
   Referência: composição medieval escura com laterais e miolo central
   ============================================================ */
.home-v14 {
    --portal-bg: rgba(9, 6, 5, .965);
    --portal-bg-soft: rgba(14, 9, 7, .94);
    --portal-line: rgba(218, 160, 88, .24);
    --portal-line-strong: rgba(241, 184, 109, .42);
    --portal-gold: #efc47e;
    --portal-text: #eee3d6;
    --portal-muted: #c9b7a4;
}

.home-hero-v14 {
    min-height: 610px;
    padding: 136px 0 118px !important;
    display: flex;
    align-items: center;
    background:
        linear-gradient(180deg, rgba(3,2,2,.18) 0%, rgba(4,3,2,.30) 50%, rgba(4,3,2,.83) 100%);
}

.home-hero-content-v14 {
    max-width: 920px;
}

.home-hero-v14 .hero-subtitle {
    font-size: clamp(1.55rem, 2.8vw, 2.3rem);
    color: #f6d29a;
    letter-spacing: .11em;
}

.portal-stage-v14 {
    position: relative;
    z-index: 3;
    margin-top: -82px;
    padding: 0 22px 76px;
}

.portal-frame-v14 {
    position: relative;
    max-width: 1580px;
    margin: 0 auto;
    padding: 48px 34px 38px;
    background:
        linear-gradient(90deg, rgba(42, 24, 13, .18), transparent 7%, transparent 93%, rgba(42, 24, 13, .18)),
        linear-gradient(180deg, rgba(13,8,6,.98), rgba(6,4,4,.99));
    border: 1px solid var(--portal-line-strong);
    border-radius: 26px 26px 18px 18px;
    box-shadow:
        0 30px 70px rgba(0,0,0,.48),
        inset 0 1px 0 rgba(255,230,183,.05),
        inset 28px 0 60px rgba(85,45,19,.06),
        inset -28px 0 60px rgba(85,45,19,.06);
}

.portal-frame-v14::before,
.portal-frame-v14::after {
    content: '';
    position: absolute;
    top: 36px;
    bottom: 34px;
    width: 1px;
    background: linear-gradient(180deg, transparent, rgba(238,180,103,.34) 8%, rgba(238,180,103,.15) 50%, rgba(238,180,103,.34) 92%, transparent);
    pointer-events: none;
}

.portal-frame-v14::before { left: 17px; }
.portal-frame-v14::after { right: 17px; }

.portal-ornament-v14 {
    position: absolute;
    top: -22px;
    left: 50%;
    transform: translateX(-50%);
    width: min(620px, 72%);
    height: 44px;
    display: grid;
    grid-template-columns: 1fr 52px 1fr;
    align-items: center;
    gap: 12px;
    color: #f4bf72;
}

.portal-ornament-v14 span {
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(234,177,98,.78));
}

.portal-ornament-v14 span:last-child {
    background: linear-gradient(90deg, rgba(234,177,98,.78), transparent);
}

.portal-ornament-v14 i {
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: linear-gradient(180deg, #4f2712, #170b07);
    border: 1px solid rgba(241,184,109,.45);
    box-shadow: 0 0 18px rgba(224,132,47,.16);
}

.portal-grid-v14 {
    display: grid;
    grid-template-columns: 300px minmax(0, 1fr) 360px;
    gap: 26px;
    align-items: start;
}

.portal-sidebar-v14,
.portal-main-v14 {
    min-width: 0;
    display: grid;
    gap: 24px;
}

.portal-sidebar-v14 {
    position: sticky;
    top: 110px;
}

.portal-box-v14 {
    position: relative;
    overflow: hidden;
    background:
        linear-gradient(180deg, rgba(17,11,8,.975), rgba(8,5,4,.99));
    border: 1px solid var(--portal-line);
    border-radius: 15px;
    box-shadow:
        0 14px 34px rgba(0,0,0,.28),
        inset 0 1px 0 rgba(255,255,255,.025);
}

.portal-box-v14::before {
    content: '';
    position: absolute;
    inset: 5px;
    border: 1px solid rgba(255,215,155,.045);
    border-radius: 11px;
    pointer-events: none;
}

.portal-box-title-v14 {
    position: relative;
    z-index: 1;
    min-height: 60px;
    padding: 14px 18px;
    display: flex;
    align-items: center;
    gap: 10px;
    font-family: 'Cinzel', serif;
    font-size: 1.02rem;
    font-weight: 800;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--portal-gold);
    border-bottom: 1px solid rgba(224,164,86,.17);
    background: linear-gradient(180deg, rgba(86,42,17,.15), rgba(10,6,5,.12));
}

.portal-box-title-v14 i {
    color: #f3a449;
}

.portal-box-title-center-v14 {
    justify-content: center;
}

.title-line-v14 {
    flex: 1 1 auto;
    max-width: 180px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(229,171,92,.65));
}

.title-line-v14:last-child {
    background: linear-gradient(90deg, rgba(229,171,92,.65), transparent);
}

/* Lado esquerdo: status */
.server-status-main-v14 {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 20px 18px;
    border-bottom: 1px solid rgba(255,255,255,.045);
}

.status-orb-v14 {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    border-radius: 50%;
    background: #d43a2d;
    box-shadow: 0 0 12px rgba(212,58,45,.38);
}

.server-status-main-v14.is-online .status-orb-v14 {
    background: #48e780;
    box-shadow: 0 0 14px rgba(72,231,128,.40);
}

.server-status-main-v14 small,
.rate-feature-v14 small {
    display: block;
    font-size: .78rem;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #bda993;
}

.server-status-main-v14 strong,
.rate-feature-v14 strong {
    display: block;
    margin-top: 2px;
    font-size: 1.28rem;
    color: #f6e3ca;
}

.server-status-main-v14.is-online strong { color: #83eea7; }
.server-status-main-v14.is-offline strong { color: #ff8b7f; }

.server-stat-list-v14 {
    position: relative;
    z-index: 1;
    padding: 8px 14px 14px;
}

.server-stat-row-v14 {
    min-height: 50px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 8px;
    border-bottom: 1px solid rgba(255,255,255,.045);
}

.server-stat-row-v14:last-child { border-bottom: 0; }
.server-stat-row-v14 span {
    font-size: .90rem;
    font-weight: 650;
    color: #d8c9b8;
}
.server-stat-row-v14 span i {
    width: 20px;
    color: #eaa056;
}
.server-stat-row-v14 strong {
    font-size: 1.05rem;
    color: #ffd18a;
}

/* Rates */
.rate-feature-v14 {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    min-height: 78px;
    padding: 12px 16px;
    border-bottom: 1px solid rgba(255,255,255,.045);
}

.rate-icon-v14 {
    width: 50px;
    height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: rgba(69,31,13,.58);
    border: 1px solid rgba(240,169,82,.17);
    font-size: 1.08rem;
}
.rate-icon-exp-v14 { color: #78e89c; }
.rate-icon-drop-v14 { color: #c88cff; }

.composition-list-v14 {
    position: relative;
    z-index: 1;
    padding: 14px 16px 16px;
}

.composition-title-v14 {
    margin-bottom: 9px;
    font-size: .84rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: #e2c5a1;
}
.composition-title-v14 i { color: #f4a14b; }

.composition-row-v14 {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: center;
    min-height: 38px;
    padding: 7px 9px;
    border-radius: 8px;
    background: rgba(0,0,0,.16);
    margin-top: 6px;
}
.composition-row-v14 span {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    font-size: .82rem;
    color: #cbb8a3;
}
.composition-row-v14 b {
    font-size: .88rem;
    color: #ffbd6d;
}

/* Quick nav */
.portal-quick-nav-v14 {
    position: relative;
    z-index: 1;
    display: grid;
    padding: 10px 14px 14px;
}
.portal-quick-nav-v14 a {
    min-height: 50px;
    display: grid;
    grid-template-columns: 28px minmax(0,1fr) 20px;
    gap: 8px;
    align-items: center;
    color: #dacbbc;
    text-decoration: none;
    border-bottom: 1px solid rgba(255,255,255,.045);
}
.portal-quick-nav-v14 a:last-child { border-bottom: 0; }
.portal-quick-nav-v14 a > i:first-child { color: #e9a150; text-align: center; }
.portal-quick-nav-v14 a > i:last-child { color: #937b66; text-align: center; }
.portal-quick-nav-v14 a:hover { color: #ffe0ac; }

/* Centro: news */
.featured-news-v14 {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(300px, .9fr) minmax(0, 1.1fr);
    gap: 0;
    min-height: 360px;
    margin: 18px;
    overflow: hidden;
    border: 1px solid rgba(230,170,91,.16);
    border-radius: 13px;
    background: rgba(5,4,3,.36);
}
.featured-news-image-v14 {
    min-height: 360px;
    background: #090605;
}
.featured-news-image-v14 img {
    width: 100%;
    height: 100%;
    min-height: 360px;
    object-fit: cover;
    display: block;
}
.featured-news-copy-v14 {
    padding: 28px 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.featured-news-copy-v14 time {
    font-size: .85rem;
    font-weight: 700;
    letter-spacing: .06em;
    color: #c4ab90;
}
.featured-news-copy-v14 h2 {
    margin: 8px 0 12px;
    font-family: 'Cinzel', serif;
    font-size: clamp(1.65rem, 2.6vw, 2.2rem);
    color: #f5d299;
}
.featured-news-copy-v14 p {
    font-size: 1rem;
    line-height: 1.72;
    color: #dfd2c4;
}

.news-list-v14 {
    position: relative;
    z-index: 1;
    margin: 0 18px 18px;
    border-top: 1px solid rgba(255,255,255,.055);
}
.news-list-row-v14 {
    min-height: 68px;
    display: grid;
    grid-template-columns: 42px minmax(0,1fr) auto;
    gap: 12px;
    align-items: center;
    padding: 10px 8px;
    border-bottom: 1px solid rgba(255,255,255,.05);
}
.news-list-icon-v14 {
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: rgba(83,40,17,.42);
    color: #eaa050;
}
.news-list-copy-v14 { min-width: 0; }
.news-list-copy-v14 time {
    display: block;
    font-size: .74rem;
    color: #a99078;
}
.news-list-copy-v14 strong {
    display: block;
    margin-top: 2px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #e8ddd0;
}
.news-list-row-v14 > a {
    color: #72bfff;
    text-decoration: none;
    font-size: .82rem;
    font-weight: 750;
}
.portal-center-action-v14 {
    position: relative;
    z-index: 1;
    text-align: center;
    padding: 0 18px 22px;
}
.portal-empty-v14 {
    position: relative;
    z-index: 1;
    padding: 28px 20px;
    text-align: center;
    color: #bba995;
}

/* Player rankings central */
.portal-player-ranking-grid-v14 {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 14px;
    padding: 18px;
}
.player-rank-card-v14 {
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 12px;
    background: rgba(5,4,3,.32);
}
.player-rank-card-v14 > header {
    min-height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px;
    border-bottom: 1px solid rgba(255,255,255,.055);
    font-family: 'Cinzel', serif;
    font-size: .92rem;
    font-weight: 800;
    color: #f0d4a5;
}
.player-rank-level > header i { color: #ffd55e; }
.player-rank-kill > header i { color: #ff7565; }
.player-rank-equipment > header i { color: #72c2ff; }

.player-rank-list-v14 { display: grid; }
.player-rank-row-v14 {
    min-height: 80px;
    display: grid;
    grid-template-columns: 38px 52px minmax(0,1fr) auto;
    gap: 8px;
    align-items: center;
    padding: 10px 10px;
    border-bottom: 1px solid rgba(255,255,255,.045);
}
.player-rank-row-v14:last-child { border-bottom: 0; }
.player-rank-row-v14 .home-medal { transform: scale(.9); }
.player-rank-avatar-v14 {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.07);
    background: rgba(0,0,0,.24);
}
.player-rank-avatar-v14 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.player-rank-copy-v14 { min-width: 0; }
.player-rank-copy-v14 strong {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: .88rem;
    color: #efe4d6;
}
.player-rank-copy-v14 span {
    display: block;
    margin-top: 3px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: .70rem;
    color: #bfa98e;
}
.player-rank-row-v14 > b {
    font-size: .88rem;
    color: #ffd68f;
    text-align: right;
}

/* Direita: ranking de cidades grande */
.city-ranking-list-v14 {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 12px;
    padding: 16px;
}
.city-ranking-entry-v14 {
    position: relative;
    overflow: hidden;
    min-height: 138px;
    padding: 15px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,.06);
    background: rgba(7,5,4,.48);
}
.city-ranking-entry-v14::before {
    content: '';
    position: absolute;
    inset: 0;
    opacity: .24;
    pointer-events: none;
}
.city-ranking-entry-armia::before { background: linear-gradient(90deg, rgba(255,145,45,.28), transparent 75%); }
.city-ranking-entry-arzan::before { background: linear-gradient(90deg, rgba(255,88,58,.22), transparent 75%); }
.city-ranking-entry-erion::before { background: linear-gradient(90deg, rgba(80,159,255,.23), transparent 75%); }
.city-ranking-entry-gelo::before { background: linear-gradient(90deg, rgba(87,218,255,.24), transparent 75%); }

.city-ranking-city-v14,
.city-ranking-guild-v14 {
    position: relative;
    z-index: 1;
    min-width: 0;
}
.city-ranking-city-v14 {
    display: grid;
    grid-template-columns: 58px minmax(0,1fr);
    gap: 12px;
    align-items: center;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(255,255,255,.05);
}
.city-ranking-emblem-v14 {
    width: 56px;
    height: 56px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 15px;
    background: linear-gradient(180deg, rgba(76,33,14,.76), rgba(22,10,7,.98));
    border: 1px solid rgba(243,180,97,.20);
}
.city-ranking-emblem-v14 i { font-size: 1.28rem; }
.city-ranking-city-v14 strong {
    display: block;
    font-family: 'Cinzel', serif;
    font-size: 1.15rem;
    color: #f5d49c;
}
.city-ranking-city-v14 small {
    display: block;
    margin-top: 2px;
    color: #bea88f;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.city-ranking-guild-v14 {
    display: grid;
    grid-template-columns: 58px 38px minmax(0,1fr);
    gap: 10px;
    align-items: center;
    padding-top: 12px;
}
.city-guild-mark-v14 {
    width: 56px;
    height: 56px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    background: rgba(0,0,0,.30);
    border: 1px solid rgba(255,255,255,.08);
}
.city-guild-mark-v14 img {
    max-width: 48px;
    max-height: 48px;
    object-fit: contain;
}
.city-guild-cape-v14 {
    width: 36px;
    height: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    background: rgba(18,11,7,.94);
    border: 1px solid rgba(244,175,89,.17);
    color: #f1b35e;
}
.city-ranking-guild-v14 strong {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: .96rem;
    color: #eee2d3;
}
.city-ranking-guild-v14 small {
    display: block;
    margin-top: 2px;
    font-size: .72rem;
    color: #b9a48d;
    text-transform: uppercase;
    letter-spacing: .055em;
}

.portal-login-body-v14 {
    position: relative;
    z-index: 1;
    padding: 18px;
}
.portal-login-body-v14 p {
    color: #c9b8a5;
    line-height: 1.65;
}

@media (max-width: 1360px) {
    .portal-grid-v14 {
        grid-template-columns: 270px minmax(0,1fr) 320px;
        gap: 20px;
    }
    .portal-player-ranking-grid-v14 {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 1120px) {
    .portal-stage-v14 { margin-top: -48px; }
    .portal-grid-v14 {
        grid-template-columns: 1fr 1fr;
    }
    .portal-main-v14 {
        grid-column: 1 / -1;
        grid-row: 1;
    }
    .portal-sidebar-left-v14 {
        grid-column: 1;
        grid-row: 2;
    }
    .portal-sidebar-right-v14 {
        grid-column: 2;
        grid-row: 2;
    }
    .portal-sidebar-v14 { position: static; }
}

@media (max-width: 820px) {
    .portal-stage-v14 { padding-inline: 10px; }
    .portal-frame-v14 { padding: 40px 14px 24px; }
    .portal-grid-v14 { grid-template-columns: 1fr; }
    .portal-main-v14,
    .portal-sidebar-left-v14,
    .portal-sidebar-right-v14 {
        grid-column: 1;
        grid-row: auto;
    }
    .featured-news-v14 {
        grid-template-columns: 1fr;
    }
    .featured-news-image-v14,
    .featured-news-image-v14 img {
        min-height: 240px;
    }
}

@media (max-width: 560px) {
    .home-hero-v14 {
        min-height: 500px;
        padding-top: 116px !important;
    }
    .portal-stage-v14 { margin-top: -28px; }
    .news-list-row-v14 {
        grid-template-columns: 36px minmax(0,1fr);
    }
    .news-list-row-v14 > a { grid-column: 2; }
    .city-ranking-entry-v14 { min-height: auto; }
    .city-ranking-guild-v14 {
        grid-template-columns: 52px 34px minmax(0,1fr);
    }
}

/* ============================================================
   V15 - NAV CENTRALIZADA + LOGO À ESQUERDA + CONTA SOBRE CIDADES
   ============================================================ */
.main-nav-v15 {
    min-height: 94px;
    padding: 10px 0;
}

.nav-shell-v15 {
    position: relative;
    max-width: 1540px;
    min-height: 74px;
    display: flex;
    align-items: center;
    width: 100%;
}

.top-left-alastar-logo-v15 {
    position: relative;
    z-index: 5;
    flex: 0 0 180px;
    width: 180px;
    height: 74px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-decoration: none;
    margin-right: auto;
}

.top-left-alastar-logo-v15 img {
    width: 164px;
    height: 72px;
    display: block;
    object-fit: contain;
    object-position: left center;
    filter: none !important;
    transform: none !important;
}

.nav-collapse-v15 {
    flex: 1 1 auto;
    min-width: 0;
    align-items: center;
    justify-content: flex-end;
}

.site-menu-v15 {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) !important;
    margin: 0 !important;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    white-space: nowrap;
}

.site-menu-v15 .nav-link {
    min-height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-inline: 17px !important;
}

.nav-auth-v15 {
    position: relative;
    z-index: 5;
    margin-left: auto !important;
    padding-left: 22px;
    flex: 0 0 auto;
}

.nav-auth-v15 .al-btn {
    min-width: 196px;
    min-height: 54px;
    padding-inline: 22px;
}

.brand-toggler-v15 {
    position: relative;
    z-index: 6;
    margin-left: auto;
}

/* O bloco Conta fica imediatamente acima do ranking de cidades */
.portal-sidebar-right-v14 {
    align-content: start;
}

.portal-login-top-v15 {
    order: -1;
    border-color: rgba(243, 181, 101, .30);
}

.portal-login-top-v15 .portal-login-body-v14 {
    padding: 20px;
}

.portal-login-top-v15 .portal-login-body-v14 p {
    margin-bottom: 16px;
    font-size: .96rem;
    line-height: 1.6;
    text-align: center;
}

.portal-login-top-v15 .al-btn {
    min-height: 54px;
}

@media (min-width: 1200px) {
    .nav-collapse-v15 {
        display: flex !important;
    }
}

@media (max-width: 1399px) and (min-width: 1200px) {
    .top-left-alastar-logo-v15 {
        flex-basis: 154px;
        width: 154px;
    }

    .top-left-alastar-logo-v15 img {
        width: 148px;
    }

    .site-menu-v15 {
        gap: 4px;
    }

    .site-menu-v15 .nav-link {
        padding-inline: 12px !important;
        font-size: .88rem;
    }

    .nav-auth-v15 .al-btn {
        min-width: 174px;
        padding-inline: 17px;
        font-size: .91rem;
    }
}

@media (max-width: 1199px) {
    .main-nav-v15 {
        min-height: 82px;
    }

    .nav-shell-v15 {
        min-height: 62px;
        flex-wrap: wrap;
    }

    .top-left-alastar-logo-v15 {
        order: 1;
        flex: 0 0 145px;
        width: 145px;
        height: 62px;
        margin-right: 0;
    }

    .top-left-alastar-logo-v15 img {
        width: 140px;
        height: 60px;
    }

    .brand-toggler-v15 {
        order: 2;
        margin-left: auto;
    }

    .nav-collapse-v15 {
        order: 3;
        flex-basis: 100%;
        width: 100%;
        padding: 14px 0 12px;
        background: rgba(6, 4, 3, .98);
    }

    .site-menu-v15 {
        position: static;
        transform: none !important;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 4px;
        width: 100%;
    }

    .site-menu-v15 .nav-link {
        justify-content: flex-start;
        padding-inline: 18px !important;
    }

    .nav-auth-v15 {
        margin: 12px 0 0 !important;
        padding: 0;
        width: 100%;
    }

    .nav-auth-v15 .al-btn {
        width: 100%;
        min-width: 0;
    }
}

@media (max-width: 560px) {
    .top-left-alastar-logo-v15 {
        flex-basis: 126px;
        width: 126px;
    }

    .top-left-alastar-logo-v15 img {
        width: 122px;
    }
}

/* ============================================================
   V16 - SINCRONIZAÇÃO PREMIUM DA UI COM A LOGO ALASTAR
   ============================================================ */

:root {
    --al-night-0: #050406;
    --al-night-1: #0a090d;
    --al-night-2: #111016;
    --al-panel-top: rgba(20, 14, 12, 0.96);
    --al-panel-bottom: rgba(9, 8, 10, 0.98);
    --al-gold-soft: #f8d28e;
    --al-gold: #ffbf67;
    --al-orange: #ff7e2f;
    --al-orange-deep: #a93d15;
    --al-blue-soft: #8ad8ff;
    --al-blue: #3498ff;
    --al-blue-deep: #163c8f;
    --al-text-main: #f5ede3;
    --al-text-soft: #d8c7b4;
    --al-text-muted: #a89684;
    --al-line-soft: rgba(255, 158, 69, 0.20);
    --al-line-strong: rgba(255, 181, 92, 0.40);
    --al-line-blue: rgba(82, 170, 255, 0.24);
    --al-glow-orange: 0 0 0 1px rgba(255, 149, 48, 0.08), 0 14px 34px rgba(0,0,0,0.30), 0 0 32px rgba(255, 128, 41, 0.08);
    --al-glow-blue: 0 0 0 1px rgba(63, 154, 255, 0.08), 0 14px 34px rgba(0,0,0,0.30), 0 0 32px rgba(66, 164, 255, 0.09);
    --al-radius-lg: 22px;
    --al-radius-md: 18px;
    --al-radius-sm: 14px;
}

body.alastar-site {
    color: var(--al-text-main) !important;
    background-color: var(--al-night-0);
    background-image:
        linear-gradient(180deg, rgba(5,4,6,0.36) 0%, rgba(5,4,6,0.74) 48%, rgba(4,3,5,0.96) 100%),
        radial-gradient(circle at 18% 18%, rgba(255, 130, 39, 0.12), transparent 20%),
        radial-gradient(circle at 82% 16%, rgba(54, 149, 255, 0.10), transparent 18%),
        url('../images/alastar-armia-bg.webp') !important;
}

body.alastar-site::before {
    background:
        linear-gradient(90deg, rgba(0,0,0,0.46), transparent 16%, transparent 84%, rgba(0,0,0,0.46)),
        linear-gradient(180deg, rgba(255,140,39,0.03), transparent 18%, transparent 82%, rgba(68,152,255,0.03));
}

.main-nav,
.main-nav-v15,
.main-nav-v9 {
    background:
        linear-gradient(180deg, rgba(11,9,12,0.985) 0%, rgba(8,7,10,0.985) 100%),
        linear-gradient(90deg, rgba(255,127,39,0.06), transparent 18%, transparent 82%, rgba(58,152,255,0.06)) !important;
    border-bottom: 1px solid rgba(255, 155, 62, 0.22) !important;
    box-shadow: 0 10px 28px rgba(0,0,0,0.34), inset 0 -1px 0 rgba(58, 152, 255, 0.06);
    backdrop-filter: blur(10px);
}

.site-brand-mark {
    filter: drop-shadow(0 0 14px rgba(255, 126, 42, 0.22)) drop-shadow(0 0 18px rgba(50, 143, 255, 0.18));
}

.site-brand-title {
    color: var(--al-gold) !important;
    text-shadow: 0 0 14px rgba(255, 141, 43, 0.16);
}

.site-brand-version {
    color: var(--al-blue-soft) !important;
}

.main-nav .nav-link {
    color: #f4eadd !important;
    border-radius: 14px !important;
    border: 1px solid transparent !important;
}

.main-nav .nav-link:hover,
.main-nav .nav-link.active {
    color: #fff1d2 !important;
    background:
        linear-gradient(180deg, rgba(113,43,16,0.44), rgba(24,16,18,0.50)) !important;
    border-color: rgba(255, 170, 84, 0.24) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04), 0 0 0 1px rgba(63, 154, 255, 0.05);
}

.al-btn,
.nav-auth-v15 .al-btn,
.portal-login-top-v15 .al-btn {
    min-height: 58px !important;
    border-radius: 16px !important;
    border: 1px solid rgba(255, 181, 92, 0.34) !important;
    color: #fff1d2 !important;
    font-weight: 800 !important;
    letter-spacing: 0.065em !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 12px 24px rgba(0,0,0,0.28), 0 0 0 1px rgba(61, 153, 255, 0.04);
}

.al-btn-primary {
    background:
        linear-gradient(180deg, #d26020 0%, #963512 48%, #41170a 100%) !important;
}

.al-btn-primary:hover,
.al-btn-primary:focus-visible {
    background:
        linear-gradient(180deg, #e17126 0%, #aa3d14 48%, #4c1c0b 100%) !important;
    border-color: rgba(255, 200, 125, 0.46) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.10), 0 14px 26px rgba(0,0,0,0.30), 0 0 18px rgba(255, 129, 41, 0.16);
}

.al-btn-outline {
    background:
        linear-gradient(180deg, rgba(29, 59, 122, 0.94) 0%, rgba(20, 36, 86, 0.96) 48%, rgba(10, 16, 41, 0.98) 100%) !important;
    border-color: rgba(107, 184, 255, 0.34) !important;
}

.al-btn-outline:hover,
.al-btn-outline:focus-visible {
    background:
        linear-gradient(180deg, rgba(42, 84, 166, 0.96) 0%, rgba(24, 50, 117, 0.98) 48%, rgba(12, 23, 59, 1) 100%) !important;
    border-color: rgba(149, 211, 255, 0.52) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.10), 0 14px 26px rgba(0,0,0,0.30), 0 0 18px rgba(84, 166, 255, 0.16);
}

.title-divider {
    height: 4px !important;
    background: linear-gradient(90deg, rgba(255,155,50,0), rgba(255,155,50,1) 35%, rgba(76,164,255,.92) 100%) !important;
    box-shadow: 0 0 10px rgba(255, 138, 39, 0.12);
}

.portal-panel,
.content-panel,
.stat-card,
.news-card,
.rank-table,
.community-card,
.info-card,
.home-overview-card,
.home-rank-card,
.home-quick-card-v13,
.home-news-featured-v13,
.home-news-side-v13,
.home-city-ranking-row-v13,
.footer-shell,
.city-ranking-panel-v12,
.home-rank-cities-v12,
.home-rank-cities,
.home-news-card,
.home-news-side-item-v13,
.home-news-featured-v13,
.home-quick-card-v13 {
    background:
        linear-gradient(180deg, rgba(21, 15, 13, 0.95) 0%, rgba(10, 8, 10, 0.985) 100%) !important;
    border: 1px solid rgba(255, 157, 69, 0.18) !important;
    border-radius: 20px !important;
    box-shadow: var(--al-glow-orange);
    position: relative;
    overflow: hidden;
}

.portal-panel::before,
.content-panel::before,
.home-rank-card::before,
.home-overview-card::before,
.home-quick-card-v13::before,
.home-news-featured-v13::before,
.home-news-side-v13::before,
.city-ranking-panel-v12::before,
.footer-shell::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(255, 128, 43, 0.06), transparent 30%, transparent 68%, rgba(73, 156, 255, 0.06));
    pointer-events: none;
}

.portal-panel::after,
.content-panel::after,
.home-rank-card::after,
.home-overview-card::after,
.home-quick-card-v13::after,
.home-news-featured-v13::after,
.home-news-side-v13::after,
.city-ranking-panel-v12::after,
.footer-shell::after {
    content: '';
    position: absolute;
    left: 16px;
    right: 16px;
    top: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 219, 169, 0.32), rgba(91, 180, 255, 0.18), transparent);
    pointer-events: none;
}

.portal-panel-title,
.section-title h2,
.page-header h1,
.panel-title,
.panel-subtitle,
.home-news-featured-body-v13 h3,
.home-news-side-item-v13 h3,
.home-quick-card-v13 strong,
.home-city-ranking-copy-v13 strong,
.city-ranking-copy-v12 strong,
.news-title,
.home-rank-card > header h3,
.footer-copy {
    color: var(--al-gold-soft) !important;
    text-shadow: 0 0 12px rgba(255, 142, 42, 0.10);
}

.portal-panel-title i,
.home-rank-card > header i,
.home-overview-heading i,
.home-quick-icon-v13,
.home-city-ranking-cape-v13,
.city-ranking-cape-v12,
.social-link:hover {
    color: var(--al-gold) !important;
}

.portal-panel-title,
.home-overview-heading,
.home-news-side-head-v13 span {
    letter-spacing: 0.08em;
}

p,
.panel-text,
.content-panel p,
.community-card p,
.news-excerpt,
.warning-box,
.step p,
.page-header .lead,
.news-date,
.empty-state,
.empty-state-title,
.home-news-featured-body-v13 p,
.home-news-side-item-v13 p,
.home-quick-card-v13 span,
.home-city-ranking-copy-v13 span,
.home-city-ranking-owner-copy-v13 small,
.city-ranking-copy-v12 span,
.city-ranking-owner-copy-v12 small,
.copyright,
.footer-links a {
    color: var(--al-text-soft) !important;
}

.home-overview-card,
.home-quick-card-v13,
.home-city-ranking-row-v13,
.city-ranking-row-v12,
.home-rank-row,
.full-rank-row,
.home-news-side-item-v13 {
    border-radius: 18px !important;
}

.home-overview-card {
    background: linear-gradient(180deg, rgba(24, 17, 14, .96), rgba(12, 10, 11, .99)) !important;
    border: 1px solid rgba(255, 164, 79, 0.18) !important;
}

.home-overview-status.is-online {
    border-color: rgba(77, 195, 114, 0.32) !important;
    box-shadow: 0 12px 30px rgba(0,0,0,.28), 0 0 0 1px rgba(77, 195, 114, 0.08), 0 0 24px rgba(77, 195, 114, 0.08) !important;
}

.home-overview-status.is-offline {
    border-color: rgba(210, 73, 73, 0.30) !important;
}

.overview-icon,
.home-city-ranking-icon-v13,
.city-ranking-icon-v12,
.home-city-rank-emblem,
.home-city-rank-mark,
.home-city-ranking-mark-v13,
.city-ranking-mark-v12,
.rank-class-avatar,
.rank-class-avatar-large,
.social-link {
    background:
        linear-gradient(180deg, rgba(48, 28, 19, 0.94) 0%, rgba(15, 11, 13, 0.98) 100%) !important;
    border: 1px solid rgba(255, 180, 92, 0.18) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04), 0 6px 16px rgba(0,0,0,0.20);
}

.overview-icon i,
.home-city-ranking-icon-v13 i,
.city-ranking-icon-v12 i,
.home-city-rank-emblem i,
.home-city-ranking-cape-v13 i,
.city-ranking-cape-v12 i,
.home-city-rank-cape i {
    filter: drop-shadow(0 0 6px rgba(255, 151, 48, 0.12));
}

.home-rank-card > header,
.home-rank-head,
.full-rank-head,
.city-ranking-head-v12,
.home-news-side-head-v13 {
    background: linear-gradient(180deg, rgba(255, 146, 43, 0.06), rgba(34, 53, 114, 0.06)) !important;
}

.home-rank-head,
.full-rank-head,
.city-ranking-head-v12,
.home-rank-head-city {
    color: #d9c4aa !important;
    border-bottom: 1px solid rgba(255, 176, 88, 0.12) !important;
}

.home-rank-row,
.full-rank-row,
.home-city-ranking-row-v13,
.city-ranking-row-v12,
.home-city-rank-row,
.home-news-side-item-v13 {
    border-color: rgba(255,255,255,0.05) !important;
}

.home-rank-row:hover,
.full-rank-row:hover,
.home-city-ranking-row-v13:hover,
.city-ranking-row-v12:hover,
.home-news-side-item-v13:hover,
.home-quick-card-v13:hover {
    transform: translateY(-1px);
    border-color: rgba(255, 184, 103, 0.24) !important;
    box-shadow: 0 16px 34px rgba(0,0,0,.28), 0 0 22px rgba(66, 158, 255, 0.07);
}

.home-medal,
.mini-rank-pos {
    border-radius: 14px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.06), 0 8px 18px rgba(0,0,0,0.22);
}

.home-medal-gold,
.rank-pos-1 {
    background: linear-gradient(180deg, #ffcf73 0%, #c98a2d 50%, #734515 100%) !important;
    color: #fff7e5 !important;
}

.home-medal-silver,
.rank-pos-2 {
    background: linear-gradient(180deg, #dce9f7 0%, #9fb0c6 50%, #536174 100%) !important;
    color: #f7fbff !important;
}

.home-medal-bronze,
.rank-pos-3 {
    background: linear-gradient(180deg, #f3b88f 0%, #b1683c 50%, #68361b 100%) !important;
    color: #fff6ed !important;
}

.rank-class-tag,
.rank-evolution-tag,
.full-rank-evolution {
    border-radius: 999px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

.rank-evolution-tag,
.full-rank-evolution {
    background: rgba(17, 15, 18, 0.82) !important;
    border: 1px solid rgba(255, 180, 92, 0.12) !important;
}

.rank-class-tag-fm { color: #d4eeff !important; background: rgba(20, 68, 120, .58) !important; border-color: rgba(98, 186, 255, .30) !important; }
.rank-class-tag-bm { color: #ffe2cf !important; background: rgba(119, 43, 20, .58) !important; border-color: rgba(255, 129, 62, .30) !important; }
.rank-class-tag-tk { color: #ffecbe !important; background: rgba(111, 74, 18, .56) !important; border-color: rgba(255, 203, 103, .32) !important; }
.rank-class-tag-ht { color: #ffe1cb !important; background: rgba(124, 52, 15, .58) !important; border-color: rgba(255, 144, 51, .30) !important; }

.home-rank-value,
.full-rank-value,
.stat-value,
.overview-composition-mini b,
.home-overview-card strong,
.level-number,
.rank-number {
    color: #fff0ce !important;
}

.home-rank-value,
.full-rank-value,
.stat-value {
    text-shadow: 0 0 10px rgba(255, 148, 50, 0.08);
}

.home-city-ranking-row-v13,
.city-ranking-row-v12,
.home-city-rank-row {
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.02), 0 12px 26px rgba(0,0,0,.18);
}

.home-city-ranking-row-v13::before,
.city-ranking-row-v12::before,
.home-city-rank-row::before {
    opacity: .28 !important;
}

.home-news-featured-image-v13,
.home-news-image-wrap,
.news-img,
.home-news-image {
    background: rgba(0,0,0,.22);
}

.home-news-featured-image-v13 img,
.home-news-image,
.news-img {
    filter: saturate(1.02) contrast(1.04);
}

input,
select,
textarea,
.form-control,
.input-group-text,
.al-input-group .input-group-text,
.al-input-group .form-control {
    background: rgba(255,255,255,0.035) !important;
    border: 1px solid rgba(255, 174, 87, 0.14) !important;
    color: var(--al-text-main) !important;
    border-radius: 14px !important;
}

.form-control:focus,
.al-input-group .form-control:focus {
    border-color: rgba(112, 188, 255, 0.32) !important;
    box-shadow: 0 0 0 0.22rem rgba(55, 149, 255, 0.10) !important;
}

.site-footer {
    padding-top: 36px !important;
}

.footer-shell {
    background: linear-gradient(180deg, rgba(17, 12, 11, .96), rgba(8, 7, 10, .99)) !important;
    border-radius: 22px !important;
}

.footer-links a:hover,
.social-link:hover {
    color: #fff1cf !important;
}

@media (max-width: 991px) {
    .portal-panel,
    .content-panel,
    .stat-card,
    .news-card,
    .rank-table,
    .community-card,
    .info-card,
    .home-overview-card,
    .home-rank-card,
    .home-quick-card-v13,
    .home-news-featured-v13,
    .home-news-side-v13,
    .home-city-ranking-row-v13,
    .footer-shell,
    .city-ranking-panel-v12 {
        border-radius: 18px !important;
    }
}

/* ============================================================
   V17 - ACABAMENTO PREMIUM / PORTAL ALASTAR
   Topo, Home e Rankings refinados mantendo toda a lógica atual.
   ============================================================ */

/* ---------- topo / navegação ---------- */
.main-nav-v15 {
    min-height: 102px !important;
    padding: 12px 0 !important;
    border-bottom-color: rgba(255, 163, 65, .30) !important;
    box-shadow:
        0 14px 34px rgba(0,0,0,.38),
        inset 0 -1px 0 rgba(83, 174, 255, .10),
        inset 0 1px 0 rgba(255, 219, 163, .035) !important;
}

.main-nav-v15::before {
    content: '';
    position: absolute;
    left: 8%;
    right: 8%;
    bottom: -1px;
    height: 2px;
    background: linear-gradient(90deg,
        transparent,
        rgba(255, 135, 38, .42) 22%,
        rgba(255, 191, 103, .80) 45%,
        rgba(72, 164, 255, .62) 58%,
        rgba(72, 164, 255, .22) 78%,
        transparent);
    pointer-events: none;
}

.nav-shell-v15 {
    max-width: 1680px !important;
    min-height: 78px !important;
}

.top-left-alastar-logo-v15 {
    flex-basis: 214px !important;
    width: 214px !important;
    height: 78px !important;
}

.top-left-alastar-logo-v15 img {
    width: 194px !important;
    height: 76px !important;
    filter:
        drop-shadow(0 0 12px rgba(255, 124, 35, .18))
        drop-shadow(0 0 16px rgba(66, 155, 255, .14)) !important;
}

.site-menu-v15 {
    gap: 10px !important;
}

.site-menu-v15 .nav-link {
    min-height: 54px !important;
    padding-inline: 19px !important;
    font-size: .96rem !important;
    font-weight: 800 !important;
    letter-spacing: .075em !important;
    position: relative;
}

.site-menu-v15 .nav-link::after {
    content: '';
    position: absolute;
    left: 24%;
    right: 24%;
    bottom: 7px;
    height: 1px;
    opacity: 0;
    transform: scaleX(.55);
    transition: .2s ease;
    background: linear-gradient(90deg, transparent, #ffad54, #5fb7ff, transparent);
}

.site-menu-v15 .nav-link:hover::after,
.site-menu-v15 .nav-link.active::after {
    opacity: 1;
    transform: scaleX(1);
}

.nav-auth-v15 {
    padding-left: 28px !important;
}

.nav-auth-v15 .al-btn {
    min-width: 222px !important;
    min-height: 58px !important;
    font-size: .96rem !important;
}

/* ---------- hero ---------- */
.home-hero-v14 {
    min-height: 650px !important;
    padding: 150px 0 126px !important;
    background:
        radial-gradient(circle at 50% 36%, rgba(255, 139, 42, .08), transparent 24%),
        radial-gradient(circle at 60% 29%, rgba(68, 156, 255, .07), transparent 18%),
        linear-gradient(180deg, rgba(3,2,3,.14) 0%, rgba(4,3,4,.28) 54%, rgba(5,4,5,.88) 100%) !important;
}

.home-hero-content-v14 {
    max-width: 980px !important;
}

.home-hero-v14 .hero-subtitle {
    font-size: clamp(1.7rem, 2.7vw, 2.45rem) !important;
    font-weight: 800 !important;
    letter-spacing: .13em !important;
    color: #ffe0a9 !important;
    text-shadow: 0 3px 16px rgba(0,0,0,.48), 0 0 18px rgba(255, 142, 45, .10) !important;
}

.home-hero-v14 .hero-btns {
    margin-top: 20px;
    gap: 20px !important;
}

.home-hero-v14 .hero-btns .al-btn {
    min-width: 190px;
}

/* ---------- moldura principal do portal ---------- */
.portal-stage-v14 {
    margin-top: -98px !important;
    padding-inline: 26px !important;
    padding-bottom: 92px !important;
}

.portal-frame-v14 {
    max-width: 1720px !important;
    padding: 58px 42px 46px !important;
    border: 1px solid rgba(255, 181, 95, .34) !important;
    border-radius: 30px 30px 22px 22px !important;
    background:
        radial-gradient(circle at 50% -6%, rgba(255, 134, 41, .075), transparent 30%),
        linear-gradient(90deg, rgba(53, 28, 18, .20), transparent 7%, transparent 93%, rgba(25, 45, 88, .16)),
        linear-gradient(180deg, rgba(17, 12, 12, .985), rgba(7, 7, 10, .995)) !important;
    box-shadow:
        0 38px 90px rgba(0,0,0,.54),
        inset 0 1px 0 rgba(255, 226, 177, .055),
        inset 34px 0 82px rgba(132, 58, 20, .055),
        inset -34px 0 82px rgba(28, 72, 142, .055),
        0 0 0 1px rgba(59, 145, 255, .04) !important;
}

.portal-frame-v14::before,
.portal-frame-v14::after {
    width: 2px !important;
    background: linear-gradient(180deg,
        transparent,
        rgba(255, 177, 86, .40) 8%,
        rgba(67, 159, 255, .12) 50%,
        rgba(255, 177, 86, .40) 92%,
        transparent) !important;
}

.portal-ornament-v14 {
    top: -25px !important;
    width: min(720px, 76%) !important;
    grid-template-columns: 1fr 60px 1fr !important;
    color: #ffbd67 !important;
}

.portal-ornament-v14 i {
    width: 50px !important;
    height: 50px !important;
    font-size: 1.15rem;
    background: linear-gradient(180deg, #633016, #160d0d 72%, #0e1735) !important;
    border-color: rgba(255, 189, 104, .54) !important;
    box-shadow: 0 0 22px rgba(255, 125, 38, .14), 0 0 20px rgba(58, 154, 255, .08) !important;
}

.portal-grid-v14 {
    grid-template-columns: 330px minmax(0, 1fr) 410px !important;
    gap: 30px !important;
}

.portal-sidebar-v14,
.portal-main-v14 {
    gap: 28px !important;
}

/* ---------- caixas do portal ---------- */
.portal-box-v14 {
    border: 1px solid rgba(255, 168, 77, .20) !important;
    border-radius: 20px !important;
    background:
        linear-gradient(135deg, rgba(255, 125, 39, .035), transparent 32%, transparent 68%, rgba(62, 151, 255, .035)),
        linear-gradient(180deg, rgba(21, 15, 13, .975), rgba(9, 8, 11, .995)) !important;
    box-shadow:
        0 18px 42px rgba(0,0,0,.30),
        inset 0 1px 0 rgba(255,255,255,.03),
        0 0 0 1px rgba(72, 159, 255, .025) !important;
}

.portal-box-v14::before {
    inset: 7px !important;
    border-radius: 15px !important;
    border-color: rgba(255, 220, 163, .055) !important;
}

.portal-box-v14::after {
    content: '';
    position: absolute;
    left: 22px;
    right: 22px;
    top: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 205, 135, .34), rgba(77, 169, 255, .16), transparent);
    pointer-events: none;
}

.portal-box-title-v14 {
    min-height: 68px !important;
    padding: 16px 21px !important;
    font-size: 1.08rem !important;
    color: #ffd69a !important;
    border-bottom-color: rgba(255, 168, 73, .18) !important;
    background:
        linear-gradient(90deg, rgba(113, 43, 15, .10), transparent 48%, rgba(37, 82, 159, .08)),
        linear-gradient(180deg, rgba(94, 43, 17, .12), rgba(10, 8, 10, .10)) !important;
}

.portal-box-title-v14 i {
    color: #ffab50 !important;
    filter: drop-shadow(0 0 6px rgba(255, 139, 43, .12));
}

.title-line-v14 {
    max-width: 220px !important;
    background: linear-gradient(90deg, transparent, rgba(255, 180, 87, .62), rgba(75, 165, 255, .24)) !important;
}

.title-line-v14:last-child {
    background: linear-gradient(90deg, rgba(75, 165, 255, .24), rgba(255, 180, 87, .62), transparent) !important;
}

/* ---------- painel esquerdo ---------- */
.server-status-main-v14 {
    padding: 23px 21px !important;
}

.status-orb-v14 {
    width: 21px !important;
    height: 21px !important;
    flex-basis: 21px !important;
}

.server-status-main-v14 strong,
.rate-feature-v14 strong {
    font-size: 1.38rem !important;
}

.server-stat-list-v14 {
    padding: 10px 17px 17px !important;
}

.server-stat-row-v14 {
    min-height: 58px !important;
    padding: 12px 10px !important;
}

.server-stat-row-v14 span {
    font-size: .96rem !important;
}

.server-stat-row-v14 strong {
    font-size: 1.12rem !important;
}

.rate-feature-v14 {
    grid-template-columns: 62px minmax(0,1fr) !important;
    min-height: 90px !important;
    padding: 15px 18px !important;
}

.rate-icon-v14 {
    width: 58px !important;
    height: 58px !important;
    border-radius: 16px !important;
    background: linear-gradient(180deg, rgba(92, 38, 15, .68), rgba(14, 14, 22, .94)) !important;
    border-color: rgba(255, 170, 82, .18) !important;
}

.composition-list-v14 {
    padding: 16px 18px 19px !important;
}

.composition-row-v14 {
    min-height: 44px !important;
    border-radius: 11px !important;
    background: rgba(255,255,255,.022) !important;
    border: 1px solid rgba(255,255,255,.035);
}

.portal-quick-nav-v14 {
    padding: 12px 17px 17px !important;
}

.portal-quick-nav-v14 a {
    min-height: 58px !important;
    border-radius: 11px;
    padding-inline: 7px;
    transition: background .18s ease, color .18s ease, padding .18s ease;
}

.portal-quick-nav-v14 a:hover {
    padding-left: 11px;
    background: linear-gradient(90deg, rgba(255, 126, 39, .06), rgba(67, 156, 255, .025));
}

/* ---------- notícias ---------- */
.featured-news-v14 {
    min-height: 390px !important;
    margin: 21px !important;
    border-radius: 17px !important;
    border-color: rgba(255, 175, 84, .16) !important;
    box-shadow: 0 14px 30px rgba(0,0,0,.20);
}

.featured-news-image-v14,
.featured-news-image-v14 img {
    min-height: 390px !important;
}

.featured-news-image-v14 img {
    filter: saturate(1.04) contrast(1.035) !important;
}

.featured-news-copy-v14 {
    padding: 32px 34px !important;
}

.featured-news-copy-v14 h2 {
    font-size: clamp(1.85rem, 2.45vw, 2.45rem) !important;
    color: #ffe0a7 !important;
}

.featured-news-copy-v14 p {
    font-size: 1.03rem !important;
    line-height: 1.78 !important;
}

.news-list-v14 {
    margin: 0 21px 21px !important;
}

.news-list-row-v14 {
    min-height: 76px !important;
    padding: 12px 10px !important;
    border-radius: 12px;
}

.news-list-row-v14:hover {
    background: linear-gradient(90deg, rgba(255, 126, 39, .045), rgba(65, 154, 255, .03));
}

.news-list-icon-v14 {
    width: 42px !important;
    height: 42px !important;
    border-radius: 12px !important;
    background: linear-gradient(180deg, rgba(91, 39, 15, .56), rgba(17, 20, 38, .72)) !important;
}

/* ---------- rankings da Home ---------- */
.portal-player-ranking-grid-v14 {
    gap: 18px !important;
    padding: 21px !important;
}

.player-rank-card-v14 {
    border-radius: 17px !important;
    border: 1px solid rgba(255, 169, 77, .14) !important;
    background:
        linear-gradient(180deg, rgba(22, 16, 14, .94), rgba(10, 9, 12, .99)) !important;
    box-shadow: 0 12px 27px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.025);
}

.player-rank-card-v14 > header {
    min-height: 62px !important;
    font-size: 1rem !important;
    background: linear-gradient(180deg, rgba(255, 137, 37, .055), rgba(51, 112, 209, .035));
    border-bottom-color: rgba(255, 170, 81, .12) !important;
}

.player-rank-row-v14 {
    min-height: 96px !important;
    grid-template-columns: 44px 66px minmax(0,1fr) auto !important;
    gap: 11px !important;
    padding: 13px 12px !important;
    transition: background .18s ease, transform .18s ease;
}

.player-rank-row-v14:hover {
    background: linear-gradient(90deg, rgba(255, 131, 38, .055), rgba(62, 154, 255, .035));
    transform: translateY(-1px);
}

.player-rank-avatar-v14 {
    width: 62px !important;
    height: 62px !important;
    border-radius: 16px !important;
    border-color: rgba(255, 181, 94, .15) !important;
    box-shadow: 0 7px 16px rgba(0,0,0,.22), 0 0 0 1px rgba(74, 162, 255, .035);
}

.player-rank-copy-v14 strong {
    font-size: .98rem !important;
    color: #fff0dc !important;
}

.player-rank-copy-v14 span {
    margin-top: 5px !important;
    font-size: .76rem !important;
    color: #cbb49a !important;
}

.player-rank-row-v14 > b {
    font-size: 1rem !important;
    color: #ffe0a6 !important;
}

.player-rank-row-v14 .home-medal {
    transform: scale(1) !important;
}

/* ---------- conta + ranking de cidades ---------- */
.portal-login-top-v15 {
    border-color: rgba(255, 175, 82, .24) !important;
    box-shadow: 0 16px 34px rgba(0,0,0,.27), 0 0 22px rgba(255, 126, 39, .055) !important;
}

.portal-login-top-v15 .portal-login-body-v14 {
    padding: 23px !important;
}

.portal-login-top-v15 .portal-login-body-v14 p {
    font-size: 1rem !important;
    color: #dfd0bf !important;
}

.city-ranking-list-v14 {
    gap: 16px !important;
    padding: 19px !important;
}

.city-ranking-entry-v14 {
    min-height: 160px !important;
    padding: 18px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(255, 177, 88, .14) !important;
    background: linear-gradient(180deg, rgba(19, 14, 13, .94), rgba(9, 8, 11, .99)) !important;
    box-shadow: 0 12px 26px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.025);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.city-ranking-entry-v14:hover {
    transform: translateY(-2px);
    border-color: rgba(255, 190, 109, .26) !important;
    box-shadow: 0 17px 32px rgba(0,0,0,.25), 0 0 20px rgba(72, 161, 255, .055);
}

.city-ranking-city-v14 {
    grid-template-columns: 70px minmax(0,1fr) !important;
    gap: 15px !important;
    padding-bottom: 15px !important;
}

.city-ranking-emblem-v14 {
    width: 68px !important;
    height: 68px !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, rgba(102, 43, 16, .78), rgba(14, 16, 29, .98)) !important;
    border-color: rgba(255, 185, 100, .20) !important;
}

.city-ranking-emblem-v14 i {
    font-size: 1.52rem !important;
}

.city-ranking-city-v14 strong {
    font-size: 1.28rem !important;
    color: #ffe0a5 !important;
}

.city-ranking-city-v14 small {
    font-size: .80rem !important;
}

.city-ranking-guild-v14 {
    grid-template-columns: 70px 44px minmax(0,1fr) !important;
    gap: 12px !important;
    padding-top: 15px !important;
}

.city-guild-mark-v14 {
    width: 68px !important;
    height: 68px !important;
    border-radius: 18px !important;
    border-color: rgba(255, 190, 109, .14) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.035), 0 7px 15px rgba(0,0,0,.18);
}

.city-guild-mark-v14 img {
    max-width: 58px !important;
    max-height: 58px !important;
}

.city-guild-cape-v14 {
    width: 42px !important;
    height: 42px !important;
    border-radius: 13px !important;
    color: #ffca75 !important;
}

.city-ranking-guild-v14 strong {
    font-size: 1.04rem !important;
    color: #f8ecdc !important;
}

.city-ranking-guild-v14 small {
    font-size: .77rem !important;
}

/* ---------- página Ranking completa ---------- */
.ranking-page-layout-v12 {
    max-width: 1660px !important;
    grid-template-columns: minmax(0, 1.78fr) minmax(440px, 1fr) !important;
    gap: 32px !important;
}

.full-ranking-grid-rich {
    gap: 30px !important;
}

.full-ranking-grid-rich .full-rank-card,
.city-ranking-panel-v12 {
    border-radius: 22px !important;
    border-color: rgba(255, 168, 78, .18) !important;
    box-shadow: 0 18px 42px rgba(0,0,0,.29), 0 0 0 1px rgba(71, 159, 255, .03) !important;
}

.full-rank-head-rich {
    min-height: 62px !important;
    padding: 14px 22px !important;
    font-size: .90rem !important;
}

.full-rank-row-rich {
    min-height: 112px !important;
    padding: 16px 22px !important;
    transition: background .18s ease, transform .18s ease;
}

.full-rank-row-rich:hover {
    background: linear-gradient(90deg, rgba(255, 133, 39, .045), rgba(66, 156, 255, .035));
    transform: translateY(-1px);
}

.rank-class-avatar-large {
    width: 82px !important;
    height: 82px !important;
    flex-basis: 82px !important;
    border-radius: 18px !important;
}

.rank-class-avatar-large img {
    width: 80px !important;
    height: 80px !important;
}

.full-rank-player-rich .rank-player-name {
    font-size: 1.14rem !important;
}

.full-rank-evolution img {
    width: 54px !important;
    height: 54px !important;
    flex-basis: 54px !important;
}

.full-rank-value {
    font-size: 1.26rem !important;
}

.city-ranking-panel-v12 .portal-panel-title {
    min-height: 68px !important;
}

.city-ranking-head-v12 {
    min-height: 64px !important;
}

.city-ranking-row-v12 {
    min-height: 132px !important;
    padding: 20px 21px !important;
    border-radius: 18px !important;
}

.city-ranking-icon-v12 {
    width: 66px !important;
    height: 66px !important;
    flex-basis: 66px !important;
    border-radius: 18px !important;
}

.city-ranking-mark-v12 {
    width: 72px !important;
    height: 72px !important;
    border-radius: 18px !important;
}

.city-ranking-mark-v12 img {
    max-width: 62px !important;
    max-height: 62px !important;
}

.city-ranking-cape-v12 {
    width: 42px !important;
    height: 42px !important;
}

.city-ranking-copy-v12 strong,
.city-ranking-owner-copy-v12 strong {
    font-size: 1.12rem !important;
}

/* ---------- qualidade tipográfica ---------- */
.home-v14 *,
.ranking-page-layout-v12 *,
.main-nav-v15 * {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

.portal-box-title-v14,
.player-rank-card-v14 > header,
.city-ranking-city-v14 strong,
.featured-news-copy-v14 h2,
.site-menu-v15 .nav-link,
.full-rank-player-rich .rank-player-name,
.city-ranking-copy-v12 strong,
.city-ranking-owner-copy-v12 strong {
    font-kerning: normal;
}

/* ---------- responsividade ---------- */
@media (max-width: 1500px) {
    .portal-grid-v14 {
        grid-template-columns: 300px minmax(0,1fr) 360px !important;
        gap: 24px !important;
    }

    .top-left-alastar-logo-v15 {
        flex-basis: 180px !important;
        width: 180px !important;
    }

    .top-left-alastar-logo-v15 img {
        width: 168px !important;
    }

    .site-menu-v15 .nav-link {
        padding-inline: 15px !important;
        font-size: .90rem !important;
    }

    .nav-auth-v15 .al-btn {
        min-width: 192px !important;
    }
}

@media (max-width: 1360px) {
    .portal-player-ranking-grid-v14 {
        grid-template-columns: 1fr !important;
    }

    .player-rank-row-v14 {
        grid-template-columns: 44px 66px minmax(0,1fr) 90px !important;
    }
}

@media (max-width: 1199px) {
    .main-nav-v15 {
        min-height: 86px !important;
    }

    .nav-shell-v15 {
        min-height: 64px !important;
    }

    .top-left-alastar-logo-v15 {
        flex-basis: 150px !important;
        width: 150px !important;
        height: 62px !important;
    }

    .top-left-alastar-logo-v15 img {
        width: 144px !important;
        height: 60px !important;
    }

    .portal-stage-v14 {
        margin-top: -54px !important;
    }

    .portal-frame-v14 {
        padding-inline: 26px !important;
    }

    .ranking-page-layout-v12 {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 820px) {
    .portal-frame-v14 {
        padding: 44px 15px 26px !important;
        border-radius: 22px !important;
    }

    .portal-box-v14,
    .player-rank-card-v14,
    .city-ranking-entry-v14,
    .full-ranking-grid-rich .full-rank-card,
    .city-ranking-panel-v12 {
        border-radius: 17px !important;
    }
}

/* ============================================================
   V18 - PORTAL MAIS LARGO / MELHOR ÁREA ÚTIL INTERNA
   ============================================================ */

/* Mais distância das bordas da tela sem sacrificar o miolo */
.portal-stage-v14 {
    padding-left: clamp(34px, 3.2vw, 64px) !important;
    padding-right: clamp(34px, 3.2vw, 64px) !important;
}

/* A moldura pode crescer mais em telas grandes */
.portal-frame-v14 {
    max-width: 1840px !important;
    padding-left: clamp(46px, 3.4vw, 68px) !important;
    padding-right: clamp(46px, 3.4vw, 68px) !important;
}

/* Laterais um pouco menores; centro ganha bastante espaço */
.portal-grid-v14 {
    grid-template-columns: minmax(255px, 285px) minmax(0, 1fr) minmax(320px, 355px) !important;
    gap: clamp(26px, 2vw, 36px) !important;
}

.portal-main-v14 {
    min-width: 0;
    width: 100%;
}

.portal-sidebar-left-v14,
.portal-sidebar-right-v14 {
    min-width: 0;
}

/* Mais área útil dentro das caixas */
.portal-box-v14 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.portal-box-title-v14 {
    padding-left: 22px !important;
    padding-right: 22px !important;
}

/* Status / rates: texto nunca espremido */
.server-status-main-v14,
.rate-feature-v14,
.server-stat-row-v14,
.composition-row-v14,
.portal-quick-nav-v14 a,
.player-rank-row-v14,
.city-ranking-city-v14,
.city-ranking-guild-v14,
.news-list-row-v14,
.featured-news-copy-v14 {
    min-width: 0;
}

.server-status-main-v14 > div,
.rate-feature-v14 > div,
.city-ranking-city-v14 > div,
.city-ranking-guild-v14 > div,
.player-rank-copy-v14,
.news-list-copy-v14,
.featured-news-copy-v14 {
    min-width: 0;
}

.server-stat-row-v14 span,
.rate-feature-v14 small,
.composition-row-v14 span,
.portal-quick-nav-v14 a span,
.city-ranking-city-v14 strong,
.city-ranking-city-v14 small,
.city-ranking-guild-v14 strong,
.city-ranking-guild-v14 small,
.player-rank-copy-v14 strong,
.player-rank-copy-v14 span,
.news-list-copy-v14 strong,
.featured-news-copy-v14 h2,
.featured-news-copy-v14 p {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: anywhere;
    word-break: normal;
}

/* Melhor proporção do destaque de notícia no centro */
.featured-news-v14 {
    grid-template-columns: minmax(280px, .82fr) minmax(360px, 1.18fr) !important;
    margin: 24px !important;
}

.featured-news-copy-v14 {
    padding: 36px 40px !important;
}

.featured-news-copy-v14 h2 {
    max-width: 100%;
    line-height: 1.24 !important;
}

.featured-news-copy-v14 p {
    max-width: 720px;
}

.news-list-v14 {
    margin-left: 24px !important;
    margin-right: 24px !important;
}

/* Ranking central: cards aproveitam toda a largura */
.portal-player-ranking-grid-v14 {
    width: 100%;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 20px !important;
    padding: 24px !important;
}

.player-rank-card-v14 {
    min-width: 0;
}

.player-rank-row-v14 {
    grid-template-columns: 46px 68px minmax(125px, 1fr) minmax(62px, auto) !important;
    gap: 13px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
}

.player-rank-copy-v14 strong {
    line-height: 1.25 !important;
}

.player-rank-copy-v14 span {
    line-height: 1.35 !important;
}

/* Cidades: painel lateral com mais espaço interno para nome da guild */
.city-ranking-list-v14 {
    padding: 22px !important;
    gap: 18px !important;
}

.city-ranking-entry-v14 {
    padding: 20px !important;
}

.city-ranking-city-v14 {
    grid-template-columns: 72px minmax(0, 1fr) !important;
    gap: 16px !important;
}

.city-ranking-guild-v14 {
    grid-template-columns: 72px 46px minmax(0, 1fr) !important;
    gap: 14px !important;
}

.city-ranking-guild-v14 strong {
    display: block;
    max-width: 100%;
    line-height: 1.25 !important;
}

.city-ranking-guild-v14 small {
    display: block;
    margin-top: 3px;
    line-height: 1.25 !important;
}

/* Conta mais confortável */
.portal-login-top-v15 .portal-login-body-v14 {
    padding: 26px !important;
}

.portal-login-top-v15 .portal-login-body-v14 p {
    line-height: 1.65 !important;
}

/* Ações centrais respiram mais */
.portal-center-action-v14 {
    padding-left: 24px !important;
    padding-right: 24px !important;
    padding-bottom: 28px !important;
}

/* Em telas grandes, mantém as laterais visualmente afastadas */
@media (min-width: 1680px) {
    .portal-frame-v14 {
        padding-left: 72px !important;
        padding-right: 72px !important;
    }

    .portal-grid-v14 {
        grid-template-columns: 285px minmax(0, 1fr) 360px !important;
        gap: 38px !important;
    }
}

/* Desktop médio: ainda prioriza o centro */
@media (max-width: 1500px) and (min-width: 1200px) {
    .portal-stage-v14 {
        padding-left: 38px !important;
        padding-right: 38px !important;
    }

    .portal-frame-v14 {
        padding-left: 46px !important;
        padding-right: 46px !important;
    }

    .portal-grid-v14 {
        grid-template-columns: minmax(235px, 255px) minmax(0, 1fr) minmax(285px, 315px) !important;
        gap: 24px !important;
    }

    .featured-news-v14 {
        grid-template-columns: minmax(240px, .78fr) minmax(300px, 1.22fr) !important;
    }

    .portal-player-ranking-grid-v14 {
        grid-template-columns: 1fr !important;
    }

    .player-rank-row-v14 {
        grid-template-columns: 46px 70px minmax(0, 1fr) 96px !important;
    }
}

/* Tablet: tudo ganha largura total, sem caixas espremidas */
@media (max-width: 1199px) {
    .portal-stage-v14 {
        padding-left: 24px !important;
        padding-right: 24px !important;
    }

    .portal-frame-v14 {
        padding-left: 30px !important;
        padding-right: 30px !important;
    }

    .portal-grid-v14 {
        grid-template-columns: 1fr !important;
        gap: 28px !important;
    }

    .portal-sidebar-v14 {
        position: static !important;
        top: auto !important;
    }

    .featured-news-v14 {
        grid-template-columns: 1fr !important;
    }

    .featured-news-image-v14,
    .featured-news-image-v14 img {
        min-height: 300px !important;
    }

    .portal-player-ranking-grid-v14 {
        grid-template-columns: 1fr !important;
    }
}

@media (max-width: 767px) {
    .portal-stage-v14 {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .portal-frame-v14 {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .featured-news-v14,
    .news-list-v14 {
        margin-left: 14px !important;
        margin-right: 14px !important;
    }

    .featured-news-copy-v14 {
        padding: 24px 22px !important;
    }

    .portal-player-ranking-grid-v14,
    .city-ranking-list-v14 {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }
}

/* ============================================================
   V19 - CHAT INTERNO DA COMUNIDADE
   ============================================================ */
.portal-chat-v19 {
    margin-top: 24px;
    overflow: hidden;
}

.portal-chat-title-v19 i {
    color: #79caff;
}

.portal-chat-status-v19 {
    min-height: 48px;
    padding: 11px 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    border-bottom: 1px solid rgba(255,255,255,.055);
    background: linear-gradient(90deg, rgba(31,20,16,.72), rgba(16,20,34,.72));
}

.portal-chat-live-v19,
.portal-chat-identity-v19 {
    font-family: 'Inter', system-ui, sans-serif;
    font-size: .86rem;
    font-weight: 700;
    color: #d8c8b5;
}

.portal-chat-live-v19 {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.portal-chat-live-v19 i {
    font-size: .58rem;
    color: #52e280;
    filter: drop-shadow(0 0 6px rgba(82,226,128,.32));
}

.portal-chat-identity-v19 {
    color: #9fd9ff;
}

.portal-chat-messages-v19 {
    height: 360px;
    overflow-y: auto;
    padding: 16px 18px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    background:
        linear-gradient(180deg, rgba(7,6,8,.84), rgba(10,7,7,.94)),
        radial-gradient(circle at 85% 10%, rgba(62,151,255,.06), transparent 28%),
        radial-gradient(circle at 10% 80%, rgba(255,129,39,.05), transparent 26%);
    scrollbar-width: thin;
    scrollbar-color: rgba(255,151,55,.32) rgba(255,255,255,.035);
}

.portal-chat-messages-v19::-webkit-scrollbar {
    width: 9px;
}

.portal-chat-messages-v19::-webkit-scrollbar-track {
    background: rgba(255,255,255,.025);
}

.portal-chat-messages-v19::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(255,143,45,.48), rgba(57,138,236,.42));
    border: 2px solid rgba(7,6,8,.8);
}

.portal-chat-message-v19 {
    position: relative;
    padding: 12px 14px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,.055);
    background: linear-gradient(180deg, rgba(24,17,14,.80), rgba(14,11,14,.88));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.025);
}

.portal-chat-message-v19::before {
    content: '';
    position: absolute;
    left: 0;
    top: 11px;
    bottom: 11px;
    width: 2px;
    border-radius: 0 2px 2px 0;
    background: linear-gradient(180deg, #ff9140, #419fff);
    opacity: .74;
}

.portal-chat-message-head-v19 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 5px;
}

.portal-chat-message-head-v19 strong {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #ffd59c;
    font-size: .92rem;
    font-weight: 800;
}

.portal-chat-message-head-v19 time {
    flex: 0 0 auto;
    color: #8fa6bd;
    font-size: .75rem;
    font-weight: 700;
}

.portal-chat-message-v19 p {
    margin: 0;
    color: #eee3d6 !important;
    font-size: .96rem;
    line-height: 1.55;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

.portal-chat-loading-v19,
.portal-chat-error-v19,
.portal-chat-empty-v19 {
    min-height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    color: #bca992;
}

.portal-chat-loading-v19 {
    gap: 9px;
    font-size: .92rem;
}

.portal-chat-error-v19 {
    gap: 9px;
    color: #e9a093;
}

.portal-chat-empty-v19 {
    flex-direction: column;
    gap: 7px;
}

.portal-chat-empty-v19 i {
    font-size: 2rem;
    color: #69bbf7;
    margin-bottom: 3px;
}

.portal-chat-empty-v19 strong {
    color: #e7d4bc;
    font-size: 1rem;
}

.portal-chat-empty-v19 span {
    font-size: .88rem;
}

.portal-chat-composer-v19 {
    padding: 15px 18px 17px;
    background: linear-gradient(180deg, rgba(17,12,12,.96), rgba(9,8,10,.99));
    border-top: 1px solid rgba(255,151,57,.10);
}

.portal-chat-input-v19 {
    width: 100%;
    min-height: 78px;
    max-height: 130px;
    resize: vertical;
    padding: 13px 15px;
    border-radius: 14px;
    border: 1px solid rgba(255,171,81,.16);
    outline: 0;
    color: #f4eadf;
    background: rgba(255,255,255,.035);
    font-family: 'Inter', system-ui, sans-serif;
    font-size: 1rem;
    line-height: 1.5;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.portal-chat-input-v19::placeholder {
    color: #897c70;
}

.portal-chat-input-v19:focus {
    border-color: rgba(91,177,255,.36);
    background: rgba(255,255,255,.045);
    box-shadow: 0 0 0 .2rem rgba(61,152,255,.08), 0 0 20px rgba(255,130,40,.04);
}

.portal-chat-actions-v19 {
    min-height: 54px;
    padding-top: 11px;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
}

.portal-chat-counter-v19 {
    font-size: .78rem;
    font-weight: 700;
    color: #9f9181;
}

.portal-chat-counter-v19.is-near-limit {
    color: #ffad61;
}

.portal-chat-feedback-v19 {
    min-width: 0;
    font-size: .82rem;
    font-weight: 700;
    color: #a99a89;
}

.portal-chat-feedback-v19.is-success { color: #65dd8b; }
.portal-chat-feedback-v19.is-error { color: #f09382; }
.portal-chat-feedback-v19.is-pending { color: #80c8ff; }

.portal-chat-send-v19 {
    min-width: 136px;
}

.portal-chat-send-v19:disabled {
    opacity: .58;
    cursor: wait;
}

.portal-chat-locked-v19 {
    min-height: 116px;
    padding: 18px;
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr) auto;
    gap: 15px;
    align-items: center;
    border-top: 1px solid rgba(255,151,57,.08);
    background: linear-gradient(90deg, rgba(45,22,12,.42), rgba(15,13,20,.72), rgba(22,39,78,.30));
}

.portal-chat-lock-icon-v19 {
    width: 50px;
    height: 50px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 15px;
    color: #ffbf75;
    background: linear-gradient(180deg, rgba(91,39,15,.76), rgba(26,13,10,.94));
    border: 1px solid rgba(255,177,91,.17);
}

.portal-chat-locked-v19 strong {
    display: block;
    color: #ffe0ad;
    font-family: 'Cinzel', serif;
    font-size: 1rem;
    margin-bottom: 4px;
}

.portal-chat-locked-v19 p {
    margin: 0;
    color: #cbb9a6 !important;
    font-size: .9rem;
    line-height: 1.5;
}

.portal-chat-login-v19 {
    min-width: 128px;
}

@media (max-width: 767px) {
    .portal-chat-status-v19 {
        align-items: flex-start;
        flex-direction: column;
        gap: 5px;
    }

    .portal-chat-messages-v19 {
        height: 320px;
        padding: 13px;
    }

    .portal-chat-composer-v19 {
        padding: 13px;
    }

    .portal-chat-actions-v19 {
        grid-template-columns: 1fr auto;
    }

    .portal-chat-feedback-v19 {
        grid-column: 1 / -1;
        grid-row: 2;
    }

    .portal-chat-locked-v19 {
        grid-template-columns: 48px minmax(0, 1fr);
    }

    .portal-chat-login-v19 {
        grid-column: 1 / -1;
        width: 100%;
    }
}

/* ============================================================
   V27 - ACESSO AO PAINEL DE USUÁRIO NO MENU PRINCIPAL
   ============================================================ */
.nav-user-panel-item-v27 {
    display: flex;
    align-items: center;
}

.main-nav .nav-user-panel-link-v27 {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 52px;
    padding-inline: 18px !important;
    color: #ffe2a7 !important;
    background: linear-gradient(180deg, rgba(124, 50, 18, .46), rgba(23, 19, 28, .58)) !important;
    border: 1px solid rgba(255, 170, 82, .28) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 0 0 1px rgba(62, 151, 255, .05);
}

.main-nav .nav-user-panel-link-v27 i {
    color: #ffad59;
    font-size: .95rem;
}

.main-nav .nav-user-panel-link-v27:hover,
.main-nav .nav-user-panel-link-v27:focus-visible {
    color: #fff5df !important;
    border-color: rgba(255, 196, 120, .48) !important;
    background: linear-gradient(180deg, rgba(159, 61, 19, .60), rgba(27, 35, 68, .68)) !important;
    box-shadow: 0 0 18px rgba(255, 128, 36, .10), 0 0 22px rgba(58, 150, 255, .08);
}

.nav-auth-v27 .nav-logout-v27 {
    min-width: 104px;
    padding-inline: 18px !important;
}

@media (max-width: 1199px) {
    .nav-user-panel-item-v27 {
        width: 100%;
    }

    .main-nav .nav-user-panel-link-v27 {
        width: 100%;
        justify-content: flex-start;
    }
}

/* ============================================================
   V28 - HEADER SEM SOBREPOSIÇÃO
   Logo | Menu | Acesso sempre ocupam áreas independentes.
   ============================================================ */

@media (min-width: 1200px) {
    .nav-shell-v15 {
        display: flex !important;
        align-items: center !important;
        gap: 16px !important;
    }

    .top-left-alastar-logo-v15 {
        margin-right: 0 !important;
        flex: 0 0 180px !important;
        width: 180px !important;
    }

    .nav-collapse-v15 {
        position: relative !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: center !important;
        column-gap: 18px !important;
        justify-content: initial !important;
    }

    .site-menu-v15 {
        position: static !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;
        min-width: 0 !important;
        width: auto !important;
        margin: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex-wrap: nowrap !important;
        gap: 7px !important;
        white-space: nowrap !important;
    }

    .site-menu-v15 .nav-item {
        flex: 0 0 auto !important;
        min-width: 0 !important;
    }

    .site-menu-v15 .nav-link {
        min-width: 0 !important;
        padding-inline: 13px !important;
    }

    .main-nav .nav-user-panel-link-v27 {
        width: auto !important;
        min-width: 0 !important;
        padding-inline: 15px !important;
    }

    .nav-auth-v15,
    .nav-auth-v27 {
        position: static !important;
        z-index: auto !important;
        flex: 0 0 auto !important;
        width: auto !important;
        margin: 0 !important;
        padding-left: 0 !important;
    }

    .nav-auth-v15 .al-btn,
    .nav-auth-v27 .al-btn {
        width: auto !important;
        min-width: 190px !important;
        padding-inline: 20px !important;
        white-space: nowrap !important;
    }
}

/* Desktop intermediário: compacta sem permitir colisão. */
@media (min-width: 1200px) and (max-width: 1499px) {
    .nav-shell-v15 {
        gap: 10px !important;
        padding-inline: 10px !important;
    }

    .top-left-alastar-logo-v15 {
        flex-basis: 158px !important;
        width: 158px !important;
    }

    .top-left-alastar-logo-v15 img {
        width: 150px !important;
    }

    .nav-collapse-v15 {
        column-gap: 12px !important;
    }

    .site-menu-v15 {
        gap: 3px !important;
    }

    .site-menu-v15 .nav-link {
        padding-inline: 9px !important;
        font-size: .82rem !important;
        letter-spacing: .035em !important;
    }

    .main-nav .nav-user-panel-link-v27 {
        gap: 6px !important;
        padding-inline: 11px !important;
    }

    .main-nav .nav-user-panel-link-v27 i {
        font-size: .86rem !important;
    }

    .nav-auth-v15 .al-btn,
    .nav-auth-v27 .al-btn {
        min-width: 170px !important;
        min-height: 52px !important;
        padding-inline: 14px !important;
        font-size: .84rem !important;
        letter-spacing: .035em !important;
    }
}

/* Faixa mais apertada antes do menu mobile. */
@media (min-width: 1200px) and (max-width: 1280px) {
    .top-left-alastar-logo-v15 {
        flex-basis: 142px !important;
        width: 142px !important;
    }

    .top-left-alastar-logo-v15 img {
        width: 136px !important;
    }

    .site-menu-v15 .nav-link {
        padding-inline: 7px !important;
        font-size: .78rem !important;
    }

    .main-nav .nav-user-panel-link-v27 span {
        font-size: .76rem !important;
    }

    .nav-auth-v15 .al-btn,
    .nav-auth-v27 .al-btn {
        min-width: 158px !important;
        padding-inline: 11px !important;
        font-size: .79rem !important;
    }
}

/* ============================================================
   V29 - HEADER CROSS-BROWSER + RESPONSIVO
   Chrome / Edge / tablets / celulares
   ============================================================ */

.main-nav-v15,
.main-nav-v15 *,
.nav-shell-v15,
.nav-shell-v15 * {
    box-sizing: border-box;
}

.nav-shell-v15,
.nav-collapse-v15,
.site-menu-v15,
.nav-auth-v15,
.nav-auth-v27,
.site-menu-v15 .nav-item,
.site-menu-v15 .nav-link {
    min-width: 0;
}

/* Abaixo de 1400px o header usa menu recolhível para impedir colisões. */
@media (max-width: 1399.98px) {
    .main-nav-v15 {
        min-height: 82px !important;
        padding: 8px 0 !important;
    }

    .nav-shell-v15 {
        width: 100% !important;
        min-height: 64px !important;
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        gap: 0 !important;
        padding-inline: 16px !important;
    }

    .top-left-alastar-logo-v15 {
        order: 1 !important;
        flex: 0 1 158px !important;
        width: auto !important;
        max-width: 158px !important;
        height: 62px !important;
        margin: 0 !important;
    }

    .top-left-alastar-logo-v15 img {
        width: 150px !important;
        max-width: 100% !important;
        height: 60px !important;
        object-fit: contain !important;
    }

    .brand-toggler-v15 {
        order: 2 !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 48px !important;
        height: 46px !important;
        margin-left: auto !important;
        padding: 8px !important;
        border-radius: 12px !important;
        border: 1px solid rgba(255, 169, 79, .26) !important;
        background: rgba(24, 14, 10, .82) !important;
    }

    .nav-collapse-v15 {
        order: 3 !important;
        position: static !important;
        flex: 0 0 100% !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 14px 0 12px !important;
        background: rgba(6, 5, 7, .985) !important;
        border-top: 1px solid rgba(255, 160, 70, .12) !important;
        grid-template-columns: none !important;
        column-gap: 0 !important;
    }

    .nav-collapse-v15:not(.show) {
        display: none !important;
    }

    .nav-collapse-v15.show,
    .nav-collapse-v15.collapsing {
        display: block !important;
    }

    .site-menu-v15 {
        position: static !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;
        width: 100% !important;
        margin: 0 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        flex-wrap: nowrap !important;
        gap: 5px !important;
        white-space: normal !important;
    }

    .site-menu-v15 .nav-item,
    .nav-user-panel-item-v27 {
        width: 100% !important;
        flex: 0 0 auto !important;
    }

    .site-menu-v15 .nav-link,
    .main-nav .nav-user-panel-link-v27 {
        width: 100% !important;
        min-height: 48px !important;
        padding: 11px 16px !important;
        justify-content: flex-start !important;
        font-size: .92rem !important;
        line-height: 1.25 !important;
        white-space: normal !important;
    }

    .nav-auth-v15,
    .nav-auth-v27 {
        position: static !important;
        width: 100% !important;
        margin: 12px 0 0 !important;
        padding: 0 !important;
        display: block !important;
    }

    .nav-auth-v15 .al-btn,
    .nav-auth-v27 .al-btn {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 52px !important;
        padding: 12px 16px !important;
        font-size: .90rem !important;
        white-space: normal !important;
    }
}

/* Desktop real: três áreas fixas, sem posicionamento absoluto. */
@media (min-width: 1400px) {
    .main-nav-v15 {
        min-height: 94px !important;
        padding: 10px 0 !important;
    }

    .nav-shell-v15 {
        width: 100% !important;
        display: grid !important;
        grid-template-columns: 164px minmax(0, 1fr) !important;
        align-items: center !important;
        column-gap: 14px !important;
        max-width: 1540px !important;
        padding-inline: 14px !important;
    }

    .top-left-alastar-logo-v15 {
        grid-column: 1 !important;
        width: 164px !important;
        max-width: 164px !important;
        flex: none !important;
        margin: 0 !important;
    }

    .top-left-alastar-logo-v15 img {
        width: 158px !important;
        max-width: 100% !important;
    }

    .brand-toggler-v15 {
        display: none !important;
    }

    .nav-collapse-v15 {
        grid-column: 2 !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: center !important;
        column-gap: 14px !important;
        width: 100% !important;
        min-width: 0 !important;
        position: static !important;
    }

    .site-menu-v15 {
        position: static !important;
        left: auto !important;
        top: auto !important;
        transform: none !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex-wrap: nowrap !important;
        gap: 3px !important;
        white-space: nowrap !important;
    }

    .site-menu-v15 .nav-item {
        flex: 0 1 auto !important;
    }

    .site-menu-v15 .nav-link {
        min-height: 50px !important;
        padding: 12px 9px !important;
        font-size: clamp(.76rem, .72rem + .10vw, .88rem) !important;
        letter-spacing: .025em !important;
        white-space: nowrap !important;
    }

    .main-nav .nav-user-panel-link-v27 {
        gap: 6px !important;
        padding-inline: 11px !important;
    }

    .nav-auth-v15,
    .nav-auth-v27 {
        position: static !important;
        width: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        flex: none !important;
    }

    .nav-auth-v15 .al-btn,
    .nav-auth-v27 .al-btn {
        width: auto !important;
        min-width: 176px !important;
        min-height: 52px !important;
        padding-inline: 16px !important;
        font-size: .84rem !important;
        letter-spacing: .035em !important;
        white-space: nowrap !important;
    }
}

@media (min-width: 1600px) {
    .nav-shell-v15 {
        grid-template-columns: 180px minmax(0, 1fr) !important;
        column-gap: 20px !important;
    }

    .top-left-alastar-logo-v15 {
        width: 180px !important;
        max-width: 180px !important;
    }

    .top-left-alastar-logo-v15 img {
        width: 168px !important;
    }

    .site-menu-v15 {
        gap: 6px !important;
    }

    .site-menu-v15 .nav-link {
        padding-inline: 13px !important;
        font-size: .90rem !important;
    }

    .nav-auth-v15 .al-btn,
    .nav-auth-v27 .al-btn {
        min-width: 194px !important;
        padding-inline: 20px !important;
        font-size: .90rem !important;
    }
}

@media (max-width: 575.98px) {
    .nav-shell-v15 {
        padding-inline: 10px !important;
    }

    .top-left-alastar-logo-v15 {
        flex-basis: 132px !important;
        max-width: 132px !important;
        height: 56px !important;
    }

    .top-left-alastar-logo-v15 img {
        width: 126px !important;
        height: 54px !important;
    }

    .brand-toggler-v15 {
        width: 44px !important;
        height: 42px !important;
    }

    .site-menu-v15 .nav-link,
    .main-nav .nav-user-panel-link-v27 {
        font-size: .88rem !important;
        padding-inline: 14px !important;
    }
}

/* ============================================================
   V31 - CHAT / TICKET TABS + EMOJI PICKER
   ============================================================ */
.portal-community-v31 {
    overflow: visible !important;
}

.portal-community-tabs-v31 {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 12px 16px;
    background: linear-gradient(180deg, rgba(12, 10, 12, .98), rgba(8, 7, 9, .98));
    border-bottom: 1px solid rgba(255, 159, 70, .14);
}

.portal-community-tab-v31 {
    min-height: 62px;
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    grid-template-rows: auto auto;
    column-gap: 10px;
    align-items: center;
    padding: 10px 15px;
    border-radius: 15px;
    border: 1px solid rgba(255,255,255,.065);
    outline: 0;
    cursor: pointer;
    color: #cbb9a5;
    background: linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.018));
    text-align: left;
    transition: border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease;
}

.portal-community-tab-v31 > i {
    grid-row: 1 / 3;
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    color: #93cdfa;
    background: rgba(43, 108, 169, .14);
    border: 1px solid rgba(91, 177, 255, .14);
}

.portal-community-tab-v31 > span {
    font-family: 'Cinzel', serif;
    font-size: .98rem;
    font-weight: 800;
    line-height: 1.1;
    color: #e6d5bf;
}

.portal-community-tab-v31 > small {
    font-size: .72rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: #8f8174;
}

.portal-community-tab-v31:hover {
    border-color: rgba(255, 165, 79, .20);
    background: linear-gradient(180deg, rgba(99, 47, 19, .16), rgba(31, 43, 75, .10));
}

.portal-community-tab-v31.is-active {
    border-color: rgba(255, 172, 84, .30);
    background: linear-gradient(135deg, rgba(111, 43, 16, .34), rgba(21, 35, 66, .38));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 8px 18px rgba(0,0,0,.18), 0 0 18px rgba(78, 159, 255, .05);
}

.portal-community-tab-v31.is-active > i {
    color: #ffd08c;
    background: linear-gradient(180deg, rgba(124, 48, 16, .50), rgba(37, 24, 28, .72));
    border-color: rgba(255, 175, 84, .22);
}

.portal-community-tab-v31.is-active > span {
    color: #ffe0aa;
}

.portal-community-tab-v31:focus-visible {
    border-color: rgba(117, 191, 255, .52);
    box-shadow: 0 0 0 .2rem rgba(66, 157, 255, .11);
}

.portal-community-panel-v31[hidden] {
    display: none !important;
}

.portal-community-panel-v31.is-active {
    display: block;
}

.portal-chat-input-wrap-v31 {
    position: relative;
}

.portal-chat-input-v31 {
    padding-right: 58px !important;
}

.portal-emoji-toggle-v31 {
    position: absolute;
    right: 10px;
    top: 10px;
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    border: 1px solid rgba(255, 174, 81, .15);
    background: linear-gradient(180deg, rgba(69, 36, 22, .88), rgba(20, 17, 22, .96));
    color: #ffc36f;
    font-size: 1.16rem;
    cursor: pointer;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
    transition: border-color .18s ease, background .18s ease, color .18s ease, transform .18s ease;
}

.portal-emoji-toggle-v31:hover,
.portal-emoji-toggle-v31.is-active {
    color: #ffe2a9;
    border-color: rgba(255, 190, 111, .32);
    background: linear-gradient(180deg, rgba(108, 48, 18, .94), rgba(27, 25, 39, .96));
}

.portal-emoji-toggle-v31:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(69, 157, 255, .11);
}

.portal-emoji-picker-v31 {
    position: absolute;
    z-index: 40;
    right: 0;
    bottom: calc(100% + 8px);
    width: min(390px, calc(100vw - 44px));
    padding: 12px;
    border-radius: 18px;
    border: 1px solid rgba(255, 169, 78, .22);
    background:
        linear-gradient(180deg, rgba(21, 15, 14, .985), rgba(9, 8, 11, .995)),
        radial-gradient(circle at 85% 8%, rgba(65, 157, 255, .08), transparent 30%);
    box-shadow: 0 20px 46px rgba(0,0,0,.48), 0 0 0 1px rgba(75, 158, 255, .05);
    backdrop-filter: blur(12px);
}

.portal-emoji-picker-v31[hidden] {
    display: none !important;
}

.portal-emoji-picker-head-v31 {
    min-height: 38px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 4px 9px;
    border-bottom: 1px solid rgba(255,255,255,.055);
}

.portal-emoji-picker-head-v31 strong {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #ffd59a;
    font-size: .88rem;
}

.portal-emoji-picker-head-v31 span {
    color: #958677;
    font-size: .73rem;
    font-weight: 700;
}

.portal-emoji-grid-v31 {
    max-height: 230px;
    overflow-y: auto;
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: 5px;
    padding-top: 10px;
    scrollbar-width: thin;
    scrollbar-color: rgba(255,151,55,.30) rgba(255,255,255,.025);
}

.portal-emoji-item-v31 {
    aspect-ratio: 1;
    min-width: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    border: 1px solid transparent;
    background: rgba(255,255,255,.025);
    font-size: 1.35rem;
    line-height: 1;
    cursor: pointer;
    transition: transform .14s ease, background .14s ease, border-color .14s ease;
}

.portal-emoji-item-v31:hover,
.portal-emoji-item-v31:focus-visible {
    transform: translateY(-1px) scale(1.06);
    outline: 0;
    background: rgba(255, 137, 41, .11);
    border-color: rgba(255, 180, 91, .20);
}

.portal-ticket-placeholder-v31 {
    min-height: 310px;
    display: grid;
    grid-template-columns: 72px minmax(0, 1fr) auto;
    gap: 22px;
    align-items: center;
    padding: 38px 34px;
    background:
        linear-gradient(135deg, rgba(48, 25, 16, .62), rgba(12, 12, 18, .88) 54%, rgba(23, 48, 86, .46)),
        radial-gradient(circle at 82% 18%, rgba(78, 164, 255, .09), transparent 28%);
}

.portal-ticket-icon-v31 {
    width: 72px;
    height: 72px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
    color: #ffca78;
    font-size: 1.7rem;
    background: linear-gradient(180deg, rgba(106, 44, 17, .78), rgba(23, 15, 17, .94));
    border: 1px solid rgba(255, 179, 89, .20);
    box-shadow: 0 12px 28px rgba(0,0,0,.22);
}

.portal-ticket-placeholder-v31 small {
    display: block;
    margin-bottom: 6px;
    color: #80c8ff;
    font-size: .77rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.portal-ticket-placeholder-v31 h3 {
    margin: 0 0 9px;
    color: #ffe0aa;
    font-family: 'Cinzel', serif;
    font-size: 1.4rem;
}

.portal-ticket-placeholder-v31 p {
    max-width: 720px;
    margin: 0;
    color: #d2c2af !important;
    font-size: .94rem;
    line-height: 1.7;
}

.portal-ticket-badge-v31 {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 14px;
    border-radius: 999px;
    color: #a6d9ff;
    font-size: .78rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
    background: rgba(32, 83, 139, .18);
    border: 1px solid rgba(92, 175, 255, .18);
    white-space: nowrap;
}

@media (max-width: 767px) {
    .portal-community-tabs-v31 {
        padding: 10px;
        gap: 8px;
    }

    .portal-community-tab-v31 {
        min-height: 56px;
        grid-template-columns: 30px minmax(0, 1fr);
        column-gap: 8px;
        padding: 8px 10px;
    }

    .portal-community-tab-v31 > i {
        width: 30px;
        height: 30px;
    }

    .portal-community-tab-v31 > span {
        font-size: .88rem;
    }

    .portal-community-tab-v31 > small {
        font-size: .64rem;
    }

    .portal-emoji-picker-v31 {
        position: fixed;
        left: 12px;
        right: 12px;
        bottom: 16px;
        width: auto;
        max-width: none;
        z-index: 1100;
    }

    .portal-emoji-grid-v31 {
        grid-template-columns: repeat(7, minmax(0, 1fr));
        max-height: 270px;
    }

    .portal-emoji-item-v31 {
        font-size: 1.3rem;
    }

    .portal-ticket-placeholder-v31 {
        min-height: 300px;
        grid-template-columns: 58px minmax(0, 1fr);
        gap: 15px;
        padding: 26px 18px;
    }

    .portal-ticket-icon-v31 {
        width: 58px;
        height: 58px;
        border-radius: 17px;
        font-size: 1.4rem;
    }

    .portal-ticket-badge-v31 {
        grid-column: 1 / -1;
        justify-self: start;
    }
}


/* ============================================================
   V32 - CHAT COM MAIOR CAPACIDADE VISÍVEL
   ============================================================ */

/* Mais área útil para a conversa: comporta pelo menos 6 mensagens
   curtas/padrão antes da rolagem começar. */
.portal-chat-messages-v19 {
    height: 480px !important;
    min-height: 480px !important;
    padding: 14px 16px !important;
    gap: 7px !important;
}

/* Compactação leve sem perder legibilidade. */
.portal-chat-message-v19 {
    padding: 9px 12px !important;
    border-radius: 12px !important;
}

.portal-chat-message-v19::before {
    top: 9px !important;
    bottom: 9px !important;
}

.portal-chat-message-head-v19 {
    margin-bottom: 3px !important;
    gap: 10px !important;
}

.portal-chat-message-head-v19 strong {
    font-size: .88rem !important;
    line-height: 1.2 !important;
}

.portal-chat-message-head-v19 time {
    font-size: .71rem !important;
}

.portal-chat-message-v19 p {
    font-size: .92rem !important;
    line-height: 1.38 !important;
}

/* Recupera mais espaço vertical no rodapé do chat. */
.portal-chat-composer-v19 {
    padding-top: 12px !important;
    padding-bottom: 13px !important;
}

.portal-chat-input-v19 {
    min-height: 66px !important;
    max-height: 112px !important;
}

.portal-chat-actions-v19 {
    min-height: 48px !important;
    padding-top: 8px !important;
}

@media (max-width: 767px) {
    .portal-chat-messages-v19 {
        height: 430px !important;
        min-height: 430px !important;
        padding: 11px !important;
        gap: 6px !important;
    }

    .portal-chat-message-v19 {
        padding: 9px 10px !important;
    }

    .portal-chat-message-head-v19 strong {
        font-size: .86rem !important;
    }

    .portal-chat-message-v19 p {
        font-size: .90rem !important;
        line-height: 1.36 !important;
    }

    .portal-chat-input-v19 {
        min-height: 62px !important;
    }
}

@media (max-width: 420px) {
    .portal-chat-messages-v19 {
        height: 410px !important;
        min-height: 410px !important;
    }
}

/* ============================================================
   V33 - SALAS TEMPORÁRIAS NO CHAT DA COMUNIDADE
   ============================================================ */

.portal-community-v31 {
    position: relative;
}

.portal-chat-roombar-v33 {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 46px;
    gap: 10px;
    align-items: center;
    padding: 10px 12px;
    background: linear-gradient(180deg, rgba(16, 12, 13, .96), rgba(8, 7, 9, .98));
    border-bottom: 1px solid rgba(255, 154, 60, .12);
}

.portal-chat-room-list-v33 {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: thin;
    scrollbar-color: rgba(255, 145, 48, .40) rgba(255,255,255,.03);
    padding: 2px 2px 5px;
}

.portal-chat-room-list-v33::-webkit-scrollbar {
    height: 5px;
}

.portal-chat-room-list-v33::-webkit-scrollbar-track {
    background: rgba(255,255,255,.03);
    border-radius: 999px;
}

.portal-chat-room-list-v33::-webkit-scrollbar-thumb {
    background: linear-gradient(90deg, rgba(255, 126, 37, .58), rgba(72, 155, 255, .42));
    border-radius: 999px;
}

.portal-chat-room-entry-v33 {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    position: relative;
}

.portal-chat-room-pill-v33 {
    min-height: 38px;
    max-width: 190px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 12px;
    border: 1px solid rgba(255, 170, 78, .12);
    background: linear-gradient(180deg, rgba(32, 22, 18, .84), rgba(13, 11, 14, .94));
    color: #d8c8b5;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: .80rem;
    font-weight: 800;
    line-height: 1;
    cursor: pointer;
    white-space: nowrap;
    transition: border-color .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease;
}

.portal-chat-room-pill-v33 span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

.portal-chat-room-pill-v33 i {
    color: #ffb25e;
    font-size: .76rem;
}

.portal-chat-room-pill-v33.is-locked i {
    color: #77bfff;
}

.portal-chat-room-pill-v33 em {
    padding: 3px 5px;
    border-radius: 999px;
    background: rgba(255, 134, 38, .12);
    color: #ffc67e;
    font-size: .59rem;
    font-style: normal;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.portal-chat-room-pill-v33:hover {
    color: #fff0d1;
    border-color: rgba(255, 177, 91, .28);
}

.portal-chat-room-pill-v33.is-active {
    color: #fff2d6;
    background: linear-gradient(180deg, rgba(112, 46, 18, .82), rgba(26, 20, 25, .96));
    border-color: rgba(255, 166, 73, .42);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 0 16px rgba(255, 112, 24, .08), 0 0 0 1px rgba(68, 158, 255, .04);
}

.portal-chat-room-close-v33 {
    width: 22px;
    height: 22px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: -6px;
    margin-right: 2px;
    border: 1px solid rgba(255, 118, 76, .22);
    border-radius: 999px;
    background: #171014;
    color: #db897e;
    font-size: .62rem;
    cursor: pointer;
    position: relative;
    z-index: 2;
}

.portal-chat-room-close-v33:hover {
    color: #fff0eb;
    background: #6a261e;
    border-color: rgba(255, 143, 113, .48);
}

.portal-chat-room-create-v33 {
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 13px;
    border: 1px solid rgba(255, 173, 82, .30);
    background: linear-gradient(180deg, rgba(124, 49, 16, .94), rgba(47, 20, 13, .98));
    color: #ffd18c;
    font-size: 1rem;
    cursor: pointer;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 8px 18px rgba(0,0,0,.20);
}

.portal-chat-room-create-v33:hover {
    border-color: rgba(255, 203, 132, .52);
    background: linear-gradient(180deg, rgba(157, 61, 18, .96), rgba(59, 24, 12, .99));
}

.portal-chat-status-v33 {
    min-height: 42px;
}

.portal-chat-room-owner-v33 {
    color: #ad9a85;
    font-size: .69rem;
    font-weight: 600;
    letter-spacing: 0;
    text-transform: none;
}

.portal-chat-room-locked-v33 {
    min-height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 9px;
    text-align: center;
    padding: 28px 18px;
    color: #d8c8b7;
}

.portal-chat-room-locked-v33 > i {
    width: 54px;
    height: 54px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    background: linear-gradient(180deg, rgba(21, 62, 114, .78), rgba(13, 23, 55, .94));
    border: 1px solid rgba(105, 183, 255, .24);
    color: #8fceff;
    font-size: 1.25rem;
}

.portal-chat-room-locked-v33 strong {
    color: #f8d59a;
    font-family: 'Cinzel', serif;
    font-size: 1.05rem;
}

.portal-chat-room-locked-v33 span {
    max-width: 410px;
    color: #c7b6a3;
    font-size: .88rem;
}

.portal-chat-room-locked-v33 .al-btn {
    min-height: 44px !important;
    margin-top: 5px;
}

.portal-room-dialog-v33 {
    position: absolute;
    inset: 0;
    z-index: 90;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px;
    background: rgba(2, 2, 4, .76);
    backdrop-filter: blur(7px);
}

.portal-room-dialog-v33[hidden] {
    display: none !important;
}

.portal-room-dialog-card-v33 {
    width: min(440px, 100%);
    position: relative;
    padding: 26px;
    border-radius: 20px;
    background:
        linear-gradient(180deg, rgba(25, 17, 15, .985), rgba(9, 8, 11, .995));
    border: 1px solid rgba(255, 167, 77, .28);
    box-shadow: 0 24px 60px rgba(0,0,0,.48), 0 0 30px rgba(255, 121, 35, .08), 0 0 0 1px rgba(67, 158, 255, .05);
}

.portal-room-dialog-card-v33::before {
    content: '';
    position: absolute;
    left: 18px;
    right: 18px;
    top: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 210, 148, .46), rgba(79, 166, 255, .18), transparent);
}

.portal-room-dialog-close-v33 {
    position: absolute;
    top: 14px;
    right: 14px;
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 11px;
    border: 1px solid rgba(255,255,255,.08);
    background: rgba(255,255,255,.035);
    color: #bba995;
    cursor: pointer;
}

.portal-room-dialog-close-v33:hover {
    color: #fff0dc;
    border-color: rgba(255, 167, 77, .24);
}

.portal-room-dialog-icon-v33 {
    width: 48px;
    height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
    border-radius: 15px;
    background: linear-gradient(180deg, rgba(125, 48, 15, .92), rgba(44, 18, 11, .98));
    border: 1px solid rgba(255, 183, 95, .22);
    color: #ffc77b;
    font-size: 1.1rem;
}

.portal-room-dialog-icon-lock-v33 {
    background: linear-gradient(180deg, rgba(25, 67, 128, .88), rgba(12, 25, 61, .98));
    border-color: rgba(100, 179, 255, .22);
    color: #91d0ff;
}

.portal-room-dialog-card-v33 > small {
    display: block;
    color: #83caff;
    font-size: .70rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .09em;
}

.portal-room-dialog-card-v33 h3 {
    margin: 5px 0 8px;
    font-family: 'Cinzel', serif;
    color: #ffd693;
    font-size: 1.35rem;
}

.portal-room-dialog-card-v33 > p {
    margin: 0 0 18px;
    color: #c8b7a5;
    font-size: .88rem;
    line-height: 1.65;
}

.portal-room-dialog-card-v33 form {
    display: grid;
    gap: 9px;
}

.portal-room-dialog-card-v33 label {
    color: #eadac6;
    font-size: .80rem;
    font-weight: 800;
}

.portal-room-dialog-card-v33 label span {
    color: #9f8e7b;
    font-weight: 600;
}

.portal-room-dialog-card-v33 input {
    width: 100%;
    min-height: 46px;
    padding: 10px 13px;
    border-radius: 13px;
    border: 1px solid rgba(255, 169, 80, .16);
    outline: none;
    background: rgba(255,255,255,.035);
    color: #f5eadb;
    font-family: 'Inter', system-ui, sans-serif;
    font-size: .88rem;
}

.portal-room-dialog-card-v33 input:focus {
    border-color: rgba(103, 185, 255, .34);
    box-shadow: 0 0 0 3px rgba(65, 155, 255, .08);
}

.portal-room-password-wrap-v33 {
    position: relative;
}

.portal-room-password-wrap-v33 > i {
    position: absolute;
    left: 13px;
    top: 50%;
    transform: translateY(-50%);
    color: #b79875;
    font-size: .76rem;
    pointer-events: none;
}

.portal-room-password-wrap-v33 input {
    padding-left: 36px;
}

.portal-room-dialog-feedback-v33 {
    min-height: 18px;
    color: #bba995;
    font-size: .76rem;
}

.portal-room-dialog-feedback-v33.is-error { color: #f49a89; }
.portal-room-dialog-feedback-v33.is-success { color: #73db92; }
.portal-room-dialog-feedback-v33.is-pending { color: #85caff; }

.portal-room-timeout-note-v33 {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-top: 14px;
    padding: 10px 11px;
    border-radius: 12px;
    background: rgba(54, 99, 156, .08);
    border: 1px solid rgba(88, 168, 255, .10);
    color: #aebfd0;
    font-size: .72rem;
    line-height: 1.45;
}

.portal-room-timeout-note-v33 i {
    margin-top: 2px;
    color: #78c2ff;
}

@media (max-width: 767px) {
    .portal-chat-roombar-v33 {
        grid-template-columns: minmax(0, 1fr) 42px;
        gap: 7px;
        padding: 8px 9px;
    }

    .portal-chat-room-pill-v33 {
        min-height: 36px;
        max-width: 150px;
        padding: 7px 10px;
        font-size: .76rem;
    }

    .portal-chat-room-create-v33 {
        width: 40px;
        height: 40px;
        border-radius: 12px;
    }

    .portal-chat-room-owner-v33 {
        display: none;
    }

    .portal-room-dialog-v33 {
        position: fixed;
        z-index: 1055;
        padding: 12px;
    }

    .portal-room-dialog-card-v33 {
        width: 100%;
        max-height: calc(100vh - 24px);
        overflow-y: auto;
        padding: 22px 18px;
        border-radius: 18px;
    }
}

/* ============================================================
   V34 - CHAT DE VOZ EXCLUSIVO PARA SALAS CRIADAS
   ============================================================ */

.portal-chat-room-voice-v34 {
    margin-left: 4px;
    font-size: .72rem;
    color: #74d6ff;
    filter: drop-shadow(0 0 5px rgba(74, 181, 255, .20));
}

.portal-room-voice-option-v34 {
    margin: 16px 0 4px;
    padding: 14px 15px;
    display: grid;
    grid-template-columns: 20px 44px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    border-radius: 14px;
    background: linear-gradient(180deg, rgba(27, 39, 60, .54), rgba(12, 14, 20, .72));
    border: 1px solid rgba(86, 178, 255, .18);
    cursor: pointer;
}

.portal-room-voice-option-v34 input {
    width: 18px;
    height: 18px;
    min-height: 0 !important;
    margin: 0;
    accent-color: #ff8b32;
}

.portal-room-voice-check-v34 {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #8bdcff;
    background: rgba(42, 105, 165, .18);
    border: 1px solid rgba(101, 190, 255, .16);
}

.portal-room-voice-option-v34 > span:last-child {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.portal-room-voice-option-v34 strong {
    color: #f4e5cf;
    font-size: .90rem;
}

.portal-room-voice-option-v34 small {
    color: #aeb9c8;
    font-size: .76rem;
    line-height: 1.4;
}

.portal-voice-panel-v34 {
    margin: 10px 12px 0;
    padding: 13px 14px;
    border-radius: 16px;
    background:
        linear-gradient(135deg, rgba(40, 78, 116, .16), transparent 40%),
        linear-gradient(180deg, rgba(15, 18, 23, .96), rgba(8, 9, 12, .98));
    border: 1px solid rgba(79, 171, 255, .18);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.03), 0 8px 24px rgba(0,0,0,.20);
}

.portal-voice-panel-v34[hidden] {
    display: none !important;
}

.portal-voice-head-v34,
.portal-voice-head-v34 > div:first-child,
.portal-voice-controls-v34 {
    display: flex;
    align-items: center;
}

.portal-voice-head-v34 {
    justify-content: space-between;
    gap: 12px;
}

.portal-voice-head-v34 > div:first-child {
    gap: 10px;
    min-width: 0;
}

.portal-voice-head-v34 > div:first-child > div {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.portal-voice-head-v34 strong {
    font-family: 'Cinzel', serif;
    font-size: .90rem;
    color: #f6d79e;
}

.portal-voice-head-v34 small {
    font-size: .74rem;
    color: #9fb0c2;
}

.portal-voice-icon-v34 {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    border-radius: 11px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #87d8ff;
    background: rgba(49, 111, 171, .18);
    border: 1px solid rgba(94, 181, 255, .18);
}

.portal-voice-count-v34 {
    flex: 0 0 auto;
    min-width: 48px;
    min-height: 30px;
    padding: 5px 9px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border-radius: 999px;
    font-size: .74rem;
    font-weight: 800;
    color: #bfe8ff;
    background: rgba(44, 104, 164, .13);
    border: 1px solid rgba(85, 172, 255, .14);
}

.portal-voice-participants-v34 {
    min-height: 38px;
    margin: 11px 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 7px;
}

.portal-voice-empty-v34 {
    font-size: .77rem;
    color: #938c87;
}

.portal-voice-user-v34 {
    min-height: 31px;
    padding: 5px 9px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: 999px;
    background: rgba(255,255,255,.035);
    border: 1px solid rgba(255,255,255,.06);
    color: #ded5ca;
    font-size: .76rem;
    transition: border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.portal-voice-user-v34 > i {
    font-size: .48rem;
    color: #6c7883;
}

.portal-voice-user-v34 strong {
    font-weight: 700;
}

.portal-voice-user-v34 small {
    color: #8cbfe1;
    font-size: .65rem;
}

.portal-voice-user-v34.is-speaking {
    color: #fff4db;
    background: rgba(55, 143, 84, .16);
    border-color: rgba(91, 221, 126, .34);
    box-shadow: 0 0 14px rgba(80, 214, 118, .10);
}

.portal-voice-user-v34.is-speaking > i {
    color: #58dc7e;
}

.portal-voice-controls-v34 {
    flex-wrap: wrap;
    gap: 8px;
}

.portal-voice-join-v34 {
    min-height: 40px !important;
    padding: 9px 15px !important;
    font-size: .76rem !important;
}

.portal-voice-control-v34 {
    min-height: 40px;
    padding: 8px 12px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border-radius: 12px;
    color: #d7dfe8;
    background: rgba(255,255,255,.04);
    border: 1px solid rgba(255,255,255,.08);
    font-size: .74rem;
    font-weight: 800;
    cursor: pointer;
}

.portal-voice-control-v34:hover:not(:disabled) {
    color: #fff1d5;
    border-color: rgba(255, 164, 75, .22);
    background: rgba(255, 134, 43, .08);
}

.portal-voice-control-v34.is-active {
    color: #ffcf97;
    background: rgba(138, 57, 21, .20);
    border-color: rgba(255, 130, 48, .24);
}

.portal-voice-leave-v34 {
    color: #ffb5ab;
}

.portal-voice-feedback-v34 {
    min-height: 17px;
    margin-top: 8px;
    font-size: .72rem;
    color: #9fa9b3;
}

.portal-voice-feedback-v34.is-success { color: #80d89b; }
.portal-voice-feedback-v34.is-error { color: #ff9d91; }
.portal-voice-feedback-v34.is-pending { color: #9cd9ff; }

.portal-voice-audio-mount-v34 {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
}

@media (max-width: 767px) {
    .portal-room-voice-option-v34 {
        grid-template-columns: 20px 38px minmax(0, 1fr);
        padding: 12px;
    }

    .portal-room-voice-check-v34 {
        width: 36px;
        height: 36px;
        border-radius: 10px;
    }

    .portal-voice-panel-v34 {
        margin: 8px 8px 0;
        padding: 12px;
    }

    .portal-voice-controls-v34 {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .portal-voice-join-v34 {
        grid-column: 1 / -1;
        width: 100%;
    }

    .portal-voice-control-v34 {
        padding-inline: 8px;
    }

    .portal-voice-control-v34 span {
        font-size: .68rem;
    }
}


/* ============================================================
   V45 - TAGS ACUMULATIVAS DA COMUNIDADE ALASTAR
   ============================================================ */
.portal-chat-message-head-v19 {
    align-items: flex-start;
}

.portal-chat-player-identity-v45 {
    min-width: 0;
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px 7px;
}

.portal-chat-tags-v45 {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 4px;
    min-width: 0;
}

.portal-chat-tag-v45 {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 18px;
    padding: 2px 6px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 5px;
    color: #f7f7f7;
    background: rgba(255,255,255,.07);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 2px 7px rgba(0,0,0,.22);
    font-family: 'Inter', system-ui, sans-serif;
    font-size: .56rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: .065em;
    white-space: nowrap;
    text-transform: uppercase;
    user-select: none;
}

.portal-chat-player-name-v45 {
    display: inline-block;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #ffd59c !important;
}

/* STAFF — preto/vermelho com detalhe dourado */
.portal-chat-tag-staff {
    color: #fff0d4;
    border-color: rgba(255,105,64,.52);
    background: linear-gradient(180deg, #7c241b 0%, #2b0d0b 100%);
    box-shadow: inset 0 1px 0 rgba(255,222,163,.22), 0 0 9px rgba(255,76,32,.18);
}

/* Ranking — ouro, prata e bronze */
.portal-chat-tag-ranking-gold {
    color: #2a1700;
    border-color: #ffd76b;
    background: linear-gradient(180deg, #fff0a4 0%, #df9e25 58%, #9b5f08 100%);
    text-shadow: 0 1px 0 rgba(255,255,255,.35);
    box-shadow: inset 0 1px 0 #fff9cf, 0 0 10px rgba(255,190,51,.24);
}

.portal-chat-tag-ranking-silver {
    color: #24292e;
    border-color: #e2e8ef;
    background: linear-gradient(180deg, #f5f8fb 0%, #bdc8d2 58%, #7f8d9b 100%);
    text-shadow: 0 1px 0 rgba(255,255,255,.45);
}

.portal-chat-tag-ranking-bronze {
    color: #2b1307;
    border-color: #db9360;
    background: linear-gradient(180deg, #efbb8d 0%, #b86c3f 58%, #754025 100%);
    text-shadow: 0 1px 0 rgba(255,255,255,.24);
}

/* Liderança de Guild */
.portal-chat-tag-guild-leader {
    color: #ffe8ad;
    border-color: rgba(255,185,70,.52);
    background: linear-gradient(180deg, #672919 0%, #2d1110 100%);
    box-shadow: inset 0 1px 0 rgba(255,211,128,.16), 0 0 8px rgba(255,117,45,.14);
}

.portal-chat-tag-guild-subleader {
    color: #d7f8ff;
    border-color: rgba(85,190,218,.48);
    background: linear-gradient(180deg, #174d5c 0%, #0b252d 100%);
}

/* Contribuidor */
.portal-chat-tag-contributor {
    color: #f7e4ff;
    border-color: rgba(205,120,255,.46);
    background: linear-gradient(180deg, #5b2e74 0%, #24142f 100%);
    box-shadow: inset 0 1px 0 rgba(255,225,255,.13), 0 0 8px rgba(180,82,255,.13);
}

/* Player */
.portal-chat-tag-player {
    color: #d9efff;
    border-color: rgba(80,164,238,.42);
    background: linear-gradient(180deg, #22527d 0%, #10283f 100%);
}

@media (max-width: 767px) {
    .portal-chat-player-identity-v45 {
        gap: 4px 6px;
    }

    .portal-chat-tag-v45 {
        min-height: 17px;
        padding: 2px 5px;
        font-size: .52rem;
        letter-spacing: .045em;
    }

    .portal-chat-message-head-v19 time {
        padding-top: 2px;
    }
}


/* ============================================================
   V46 - TAG PRINCIPAL EXCLUSIVA + SÍMBOLOS ACUMULATIVOS
   ============================================================ */
.portal-chat-primary-tag-wrap-v46 {
    flex: 0 0 auto;
}

.portal-chat-symbols-v46 {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    gap: 4px;
    margin-left: 1px;
    white-space: nowrap;
}

.portal-chat-symbol-v46 {
    width: 19px;
    height: 19px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,.16);
    background: rgba(255,255,255,.06);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.13), 0 2px 7px rgba(0,0,0,.25);
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
    cursor: help;
    user-select: none;
    vertical-align: middle;
}

/* ♦ Contribuidor */
.portal-chat-symbol-contributor {
    color: #f0c7ff;
    border-color: rgba(207,126,255,.58);
    background: radial-gradient(circle at 35% 28%, #754397 0%, #321942 68%, #1a0c24 100%);
    text-shadow: 0 0 7px rgba(218,129,255,.72);
    box-shadow: inset 0 1px 0 rgba(255,235,255,.18), 0 0 8px rgba(190,87,255,.18);
}

/* ♛ Top 1 */
.portal-chat-symbol-ranking-gold {
    color: #3c2100;
    border-color: #ffe17d;
    background: radial-gradient(circle at 35% 25%, #fff3a8 0%, #e6ad31 55%, #915708 100%);
    text-shadow: 0 1px 0 rgba(255,255,255,.50);
    box-shadow: inset 0 1px 0 #fffbd5, 0 0 9px rgba(255,192,55,.25);
}

/* ★ Top 2 */
.portal-chat-symbol-ranking-silver {
    color: #263039;
    border-color: #edf3f8;
    background: radial-gradient(circle at 35% 25%, #ffffff 0%, #cbd4dc 55%, #758492 100%);
    text-shadow: 0 1px 0 rgba(255,255,255,.65);
}

/* ★ Top 3 */
.portal-chat-symbol-ranking-bronze {
    color: #32170a;
    border-color: #e3a16d;
    background: radial-gradient(circle at 35% 25%, #f3c39c 0%, #bd7447 55%, #6e3922 100%);
    text-shadow: 0 1px 0 rgba(255,255,255,.32);
}

@media (max-width: 767px) {
    .portal-chat-symbols-v46 {
        gap: 3px;
    }

    .portal-chat-symbol-v46 {
        width: 18px;
        height: 18px;
        font-size: 11px;
    }
}


/* ============================================================
   V47 - ÍCONES PERSONALIZADOS PARA CONTRIBUIDOR E TOP RANKING
   ============================================================ */
.portal-chat-symbols-v46 {
    gap: 6px;
    margin-left: 4px;
}

.portal-chat-symbol-v47 {
    width: 28px;
    height: 28px;
    padding: 2px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,.10);
    background: radial-gradient(circle at 30% 25%, rgba(255,255,255,.12), rgba(12,10,16,.88) 72%);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 4px 12px rgba(0,0,0,.30);
    overflow: hidden;
}

.portal-chat-symbol-image-v47 {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    pointer-events: none;
    filter: drop-shadow(0 1px 2px rgba(0,0,0,.28));
}

.portal-chat-symbol-fallback-v47 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    font-size: 12px;
    font-weight: 900;
    line-height: 1;
}

.portal-chat-symbol-contributor.portal-chat-symbol-v47 {
    box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 0 14px rgba(188, 84, 255, .22), 0 4px 12px rgba(0,0,0,.30);
}

.portal-chat-symbol-ranking-gold.portal-chat-symbol-v47 {
    box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 0 15px rgba(255, 196, 76, .25), 0 4px 12px rgba(0,0,0,.30);
}

.portal-chat-symbol-ranking-silver.portal-chat-symbol-v47 {
    box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 0 14px rgba(214, 231, 246, .20), 0 4px 12px rgba(0,0,0,.30);
}

.portal-chat-symbol-ranking-bronze.portal-chat-symbol-v47 {
    box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 0 14px rgba(214, 129, 79, .22), 0 4px 12px rgba(0,0,0,.30);
}

@media (max-width: 767px) {
    .portal-chat-symbols-v46 {
        gap: 5px;
        margin-left: 2px;
    }

    .portal-chat-symbol-v47 {
        width: 24px;
        height: 24px;
        padding: 1px;
    }
}

/* ============================================================
   V48 - MODERAÇÃO STAFF + PERMISSÕES + SALA ABERTA
   ============================================================ */
.portal-chat-announcement-v48 {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin: 10px 12px 0;
    padding: 12px 14px;
    border: 1px solid rgba(255, 183, 74, .32);
    border-radius: 14px;
    background:
        linear-gradient(90deg, rgba(137, 47, 15, .26), rgba(15, 11, 15, .96) 44%, rgba(22, 26, 38, .96));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 8px 20px rgba(0,0,0,.22);
}

.portal-chat-announcement-v48[hidden] {
    display: none !important;
}

.portal-chat-announcement-icon-v48 {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    color: #ffd47e;
    border: 1px solid rgba(255, 184, 76, .25);
    background: linear-gradient(180deg, rgba(132, 49, 15, .86), rgba(37, 19, 16, .96));
    box-shadow: 0 0 14px rgba(255, 135, 36, .10);
}

.portal-chat-announcement-copy-v48 {
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.portal-chat-announcement-copy-v48 small {
    color: #ffb552;
    font-size: .59rem;
    font-weight: 900;
    letter-spacing: .09em;
}

.portal-chat-announcement-copy-v48 strong {
    color: #fff0d1;
    font-size: .86rem;
    line-height: 1.35;
    word-break: break-word;
}

.portal-chat-announcement-copy-v48 span {
    color: #8da9c8;
    font-size: .64rem;
}

.portal-chat-command-menu-v48 {
    position: absolute;
    left: 8px;
    right: 58px;
    bottom: calc(100% + 8px);
    z-index: 30;
    max-height: 310px;
    overflow-y: auto;
    padding: 6px;
    border: 1px solid rgba(255, 163, 67, .24);
    border-radius: 13px;
    background: rgba(10, 8, 11, .985);
    box-shadow: 0 18px 38px rgba(0,0,0,.50), inset 0 1px 0 rgba(255,255,255,.035);
    backdrop-filter: blur(12px);
}

.portal-chat-command-menu-v48[hidden] {
    display: none !important;
}

.portal-chat-command-item-v48 {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(105px, 135px) 1fr;
    gap: 10px;
    align-items: center;
    padding: 9px 10px;
    border: 0;
    border-radius: 9px;
    color: #e9ded0;
    background: transparent;
    text-align: left;
    cursor: pointer;
}

.portal-chat-command-item-v48:hover {
    background: linear-gradient(90deg, rgba(120, 47, 16, .40), rgba(34, 24, 30, .68));
}

.portal-chat-command-item-v48 strong {
    color: #ffc36f;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: .76rem;
}

.portal-chat-command-item-v48 span {
    color: #a99a8a;
    font-size: .69rem;
    line-height: 1.25;
}

.portal-chat-room-create-v33.is-disabled-v48,
.portal-chat-room-create-v33:disabled {
    opacity: .42;
    cursor: not-allowed;
    filter: grayscale(.35);
    box-shadow: none;
}

.portal-room-open-option-v48 {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 4px 0 12px;
    padding: 10px 11px;
    border: 1px solid rgba(84, 184, 255, .16);
    border-radius: 12px;
    background: rgba(48, 108, 160, .07);
    cursor: pointer;
}

.portal-room-open-option-v48 input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.portal-room-open-check-v48 {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    color: #8b9bab;
    border: 1px solid rgba(255,255,255,.10);
    background: rgba(255,255,255,.035);
    transition: .18s ease;
}

.portal-room-open-option-v48 input:checked + .portal-room-open-check-v48 {
    color: #9ee8ff;
    border-color: rgba(76, 187, 255, .32);
    background: linear-gradient(180deg, rgba(24, 102, 150, .62), rgba(14, 48, 76, .88));
    box-shadow: 0 0 13px rgba(72, 176, 255, .12);
}

.portal-room-open-option-v48 > span:last-child {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.portal-room-open-option-v48 strong {
    color: #e7f4ff;
    font-size: .80rem;
}

.portal-room-open-option-v48 small {
    color: #97aabd;
    font-size: .68rem;
}

.portal-room-password-wrap-v33.is-disabled-v48 {
    opacity: .48;
}

.portal-room-password-wrap-v33.is-disabled-v48 input {
    cursor: not-allowed;
}

.portal-chat-input-v19:disabled,
.portal-chat-input-v31:disabled {
    opacity: .55;
    cursor: not-allowed;
    background: rgba(40, 15, 15, .12) !important;
}

.portal-chat-staff-custom-tags-v48 {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    flex: 0 0 auto;
}

.portal-chat-staff-custom-tag-v48 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 18px;
    padding: 2px 6px;
    border-radius: 5px;
    border: 1px solid rgba(255,255,255,.14);
    font-size: .52rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: .06em;
    text-transform: uppercase;
    user-select: none;
}

.portal-chat-tag-staff-extra-1 {
    color: #e7f6ff;
    border-color: rgba(70, 177, 255, .42);
    background: linear-gradient(180deg, #174f78, #0b243b);
}

.portal-chat-tag-staff-extra-2 {
    color: #fff0c6;
    border-color: rgba(255, 191, 78, .42);
    background: linear-gradient(180deg, #72501c, #2c1e0c);
}

.portal-chat-tag-staff-extra-3 {
    color: #f1dcff;
    border-color: rgba(194, 101, 255, .42);
    background: linear-gradient(180deg, #5b2e76, #281330);
}

.portal-chat-tag-staff-extra-4 {
    color: #dafbea;
    border-color: rgba(76, 218, 143, .40);
    background: linear-gradient(180deg, #236143, #102f22);
}

@media (max-width: 767px) {
    .portal-chat-announcement-v48 {
        margin: 8px 8px 0;
        padding: 10px;
    }

    .portal-chat-command-menu-v48 {
        left: 4px;
        right: 4px;
        max-height: 260px;
    }

    .portal-chat-command-item-v48 {
        grid-template-columns: 105px 1fr;
        gap: 7px;
        padding: 8px;
    }

    .portal-chat-staff-custom-tag-v48 {
        min-height: 17px;
        padding: 2px 5px;
        font-size: .49rem;
    }
}


/* V49 - nomes personalizados nas quatro posições de tag Staff */
.portal-chat-staff-custom-tag-v48 {
    max-width: 128px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 767px) {
    .portal-chat-staff-custom-tag-v48 { max-width: 94px; }
}

/* ============================================================
   V51 PARTE 1 - CHAT PERSISTENTE / SALAS / QUALIDADE VISUAL
   ============================================================ */
.portal-community-v31,
.portal-community-v31 * {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

.portal-chat-status-v51 {
    position: relative;
    gap: 12px;
}

.portal-chat-status-tools-v51 {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 7px;
    min-width: 0;
}

.portal-chat-tool-v51 {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 169, 75, .34);
    border-radius: 9px;
    color: #ffd394;
    background: linear-gradient(180deg, rgba(79, 35, 17, .92), rgba(24, 13, 11, .96));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.07), 0 3px 10px rgba(0,0,0,.22);
    cursor: pointer;
    transition: transform .16s ease, border-color .16s ease, color .16s ease;
}
.portal-chat-tool-v51:hover,
.portal-chat-tool-v51:focus-visible {
    color: #fff1ca;
    border-color: rgba(255, 188, 100, .68);
    transform: translateY(-1px);
    outline: none;
}

.portal-chat-nick-menu-v51 {
    position: absolute;
    z-index: 80;
    top: calc(100% + 8px);
    right: 40px;
    width: min(280px, 78vw);
    padding: 12px;
    border: 1px solid rgba(255, 164, 63, .35);
    border-radius: 12px;
    background: rgba(12, 8, 9, .985);
    box-shadow: 0 18px 40px rgba(0,0,0,.52);
}
.portal-chat-nick-menu-v51 label {
    display: block;
    margin-bottom: 7px;
    color: #f8d79d;
    font: 800 .74rem/1.2 'Cinzel', serif;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.portal-chat-nick-menu-v51 select,
.portal-room-fixed-controls-v51 input,
.portal-room-manage-section-v51 input,
.portal-room-manage-section-v51 select {
    width: 100%;
    min-height: 42px;
    border: 1px solid rgba(255, 169, 74, .27);
    border-radius: 9px;
    padding: 9px 11px;
    color: #fff1da;
    background: #120b0b;
    font-size: .9rem;
    outline: none;
}
.portal-chat-nick-menu-v51 select:focus,
.portal-room-fixed-controls-v51 input:focus,
.portal-room-manage-section-v51 input:focus {
    border-color: rgba(255, 182, 87, .72);
    box-shadow: 0 0 0 3px rgba(255, 130, 36, .09);
}

.portal-chat-identity-v19 {
    font-size: .79rem !important;
    font-weight: 800 !important;
    color: #f7d9aa !important;
    white-space: nowrap;
}

.portal-chat-message-v19 {
    padding: 10px 12px !important;
    border-radius: 10px !important;
}
.portal-chat-message-head-v19 {
    gap: 10px !important;
}
.portal-chat-player-name-v45 {
    font-size: .9rem !important;
    font-weight: 850 !important;
    letter-spacing: .01em;
}
.portal-chat-message-v19 p {
    margin-top: 6px !important;
    font-size: .91rem !important;
    line-height: 1.45 !important;
    color: #f3e9de !important;
}
.portal-chat-message-head-v19 time {
    font-size: .68rem !important;
    color: #cdbda9 !important;
}
.portal-chat-tag-v45,
.portal-chat-staff-custom-tag-v48 {
    min-height: 20px !important;
    padding: 3px 7px !important;
    font-size: .58rem !important;
}
.portal-chat-symbol-v47 {
    width: 30px !important;
    height: 30px !important;
}

/* Lista de membros da sala: independe de entrar no canal LiveKit. */
.portal-voice-panel-v34 {
    margin-top: 10px;
}
.portal-voice-count-v34 {
    min-width: 84px;
    font-size: .75rem !important;
    white-space: nowrap;
}
.portal-voice-participants-v34 {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    max-height: 120px;
    overflow: auto;
}
.portal-room-member-v51 {
    min-height: 32px;
    padding: 6px 9px !important;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 9px;
    background: rgba(255,255,255,.035);
}
.portal-room-member-v51 > i {
    color: #8d9aaa;
    font-size: .55rem;
}
.portal-room-member-v51.is-in-voice > i {
    color: #70d9ff;
    font-size: .75rem;
}
.portal-room-member-v51.is-speaking {
    border-color: rgba(77, 224, 135, .62);
    box-shadow: 0 0 12px rgba(64, 218, 128, .13);
}
.portal-room-member-v51.is-room-muted {
    opacity: .67;
}
.portal-room-member-v51 strong {
    font-size: .76rem;
}
.portal-room-member-v51 small {
    font-size: .58rem;
    color: #a99b8d;
}

.portal-chat-room-manage-v51 {
    color: #86d6ff !important;
}
.portal-chat-room-pill-v33 .fa-thumbtack {
    color: #ffd176;
}

.portal-room-fixed-controls-v51 {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid rgba(255, 170, 75, .16);
}
.portal-room-fixed-controls-v51 > label:not(.portal-room-open-option-v48),
.portal-room-manage-section-v51 > label:not(.portal-room-open-option-v48) {
    display: block;
    margin: 10px 0 6px;
    color: #dfc6a5;
    font-size: .76rem;
    font-weight: 700;
}

.portal-room-manage-card-v51 {
    width: min(620px, calc(100vw - 24px)) !important;
    max-height: min(88dvh, 860px);
    overflow: auto;
}
.portal-room-manage-section-v51 {
    margin-top: 14px;
    padding: 13px;
    border: 1px solid rgba(255, 154, 55, .16);
    border-radius: 12px;
    background: rgba(255,255,255,.025);
}
.portal-room-manage-section-v51 h4 {
    margin: 0 0 10px;
    color: #ffd28d;
    font: 800 .8rem/1.3 'Cinzel', serif;
    letter-spacing: .04em;
}
.portal-room-manage-members-v51 {
    display: grid;
    gap: 7px;
    max-height: 220px;
    overflow: auto;
}
.portal-room-manage-member-v51 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 42px;
    padding: 7px 9px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 9px;
    background: rgba(6,5,7,.54);
}
.portal-room-manage-member-v51 strong {
    color: #f7e6ce;
    font-size: .82rem;
}
.portal-room-manage-member-actions-v51 {
    display: inline-flex;
    gap: 5px;
}
.portal-room-member-action-v51 {
    width: 34px;
    height: 32px;
    border: 1px solid rgba(91, 195, 239, .35);
    border-radius: 8px;
    color: #a9e5ff;
    background: rgba(24, 69, 88, .24);
    cursor: pointer;
}
.portal-room-member-action-v51.is-danger,
.portal-room-danger-v51 {
    color: #ffd9d4 !important;
    border-color: rgba(255, 92, 74, .42) !important;
    background: linear-gradient(180deg, rgba(126, 38, 30, .75), rgba(51, 17, 15, .90)) !important;
}
.portal-room-owner-change-v51 {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 8px;
}

/* Chat expandido ocupa o viewport inteiro e retorna sem recarregar. */
html.chat-fullscreen-open-v51,
html.chat-fullscreen-open-v51 body {
    overflow: hidden !important;
}
#alastar-site-chat.is-fullscreen-v51 {
    position: fixed !important;
    z-index: 20000 !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100dvh !important;
    max-width: none !important;
    margin: 0 !important;
    padding: clamp(10px, 2vw, 24px) !important;
    border-radius: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    background:
        linear-gradient(180deg, rgba(5,4,5,.985), rgba(12,6,5,.985)),
        url('../images/alastar-armia-bg.webp') center/cover no-repeat !important;
    box-shadow: none !important;
}
#alastar-site-chat.is-fullscreen-v51 .portal-community-tabs-v31 { flex: 0 0 auto; }
#alastar-site-chat.is-fullscreen-v51 #alastar-panel-chat {
    display: flex !important;
    flex: 1 1 auto;
    min-height: 0;
    flex-direction: column;
}
#alastar-site-chat.is-fullscreen-v51 .portal-chat-messages-v19 {
    flex: 1 1 auto !important;
    height: auto !important;
    min-height: 180px !important;
    max-height: none !important;
}
#alastar-site-chat.is-fullscreen-v51 .portal-voice-participants-v34 {
    max-height: 150px;
}

/* Captcha visual compacto sem remover a validação do servidor. */
.alastar-captcha-simple-v51 {
    min-height: 78px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 8px auto;
}

@media (max-width: 767px) {
    .portal-chat-status-v51 {
        align-items: flex-start !important;
        flex-direction: column;
    }
    .portal-chat-status-tools-v51 {
        width: 100%;
        justify-content: flex-start;
    }
    .portal-chat-identity-v19 {
        flex: 1 1 auto;
        overflow: hidden;
        text-overflow: ellipsis;
    }
    .portal-chat-message-v19 { padding: 9px 10px !important; }
    .portal-chat-player-name-v45 { font-size: .84rem !important; }
    .portal-chat-message-v19 p { font-size: .86rem !important; }
    .portal-chat-symbol-v47 { width: 27px !important; height: 27px !important; }
    .portal-room-owner-change-v51 { grid-template-columns: 1fr; }
    #alastar-site-chat.is-fullscreen-v51 { padding: 8px !important; }
    #alastar-site-chat.is-fullscreen-v51 .portal-box-title-v14 { margin-bottom: 5px !important; }
    #alastar-site-chat.is-fullscreen-v51 .portal-voice-panel-v34 { max-height: 190px; overflow: auto; }
    .portal-chat-nick-menu-v51 { left: 0; right: auto; }
}

@supports not (height: 100dvh) {
    #alastar-site-chat.is-fullscreen-v51 { height: 100vh !important; }
}

/* ============================================================
   V52 PARTE 2 - PRESENTES E POPULARIDADE
   ============================================================ */
.portal-chat-input-v31 {
    padding-right: 108px !important;
}
.portal-gift-toggle-v52 {
    right: 58px !important;
    color: #ffd778;
    border-color: rgba(255, 205, 91, .25);
}
.portal-gift-toggle-v52:hover,
.portal-gift-toggle-v52:focus-visible {
    color: #fff2b7;
    border-color: rgba(255, 218, 113, .56);
}

.portal-chat-popularity-v52 {
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: -5px 2px -5px 1px;
    position: relative;
    z-index: 2;
    filter: drop-shadow(0 2px 5px rgba(0,0,0,.48));
}
.portal-chat-popularity-v52 img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    image-rendering: auto;
}
.portal-chat-popularity-famous,
.portal-chat-popularity-super_famous,
.portal-chat-popularity-popular_king,
.portal-chat-popularity-server_king {
    filter: drop-shadow(0 0 5px rgba(255,199,67,.24)) drop-shadow(0 2px 5px rgba(0,0,0,.5));
}
.portal-chat-popularity-server_king {
    width: 40px;
    height: 40px;
    flex-basis: 40px;
    margin-top: -7px;
    margin-bottom: -7px;
}

.portal-gift-dialog-v52[hidden] { display: none !important; }
.portal-gift-card-v52 {
    width: min(720px, calc(100vw - 24px)) !important;
    max-height: min(90dvh, 900px);
    overflow: auto;
}
.portal-gift-dialog-icon-v52 {
    color: #ffe08a !important;
    border-color: rgba(255,202,72,.4) !important;
    box-shadow: 0 0 24px rgba(255,168,45,.14);
}
.portal-gift-label-v52 {
    display: block;
    margin: 14px 0 7px;
    color: #f4d5a4;
    font: 800 .75rem/1.2 'Cinzel', serif;
    letter-spacing: .05em;
    text-transform: uppercase;
}
.portal-gift-recipient-v52 {
    width: 100%;
    min-height: 46px;
    padding: 9px 12px;
    border: 1px solid rgba(255,169,74,.3);
    border-radius: 10px;
    color: #fff1da;
    background: #120b0b;
    font-size: .92rem;
    outline: none;
}
.portal-gift-recipient-v52:focus {
    border-color: rgba(255,193,92,.72);
    box-shadow: 0 0 0 3px rgba(255,135,35,.1);
}
.portal-gift-grid-v52 {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 13px;
}
.portal-gift-option-v52 {
    min-height: 106px;
    display: grid;
    grid-template-columns: 82px minmax(0,1fr);
    align-items: center;
    gap: 11px;
    padding: 10px;
    border: 1px solid rgba(255,161,64,.16);
    border-radius: 13px;
    color: #f8ead7;
    background: linear-gradient(180deg, rgba(42,23,16,.86), rgba(13,10,12,.96));
    text-align: left;
    cursor: pointer;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
    transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
.portal-gift-option-v52:hover,
.portal-gift-option-v52:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(255,193,90,.48);
    outline: none;
}
.portal-gift-option-v52.is-selected {
    border-color: rgba(255,213,111,.78);
    background: linear-gradient(180deg, rgba(89,47,18,.94), rgba(24,14,12,.98));
    box-shadow: 0 0 0 2px rgba(255,173,48,.1), 0 8px 24px rgba(0,0,0,.25);
}
.portal-gift-option-v52 img {
    width: 78px;
    height: 78px;
    display: block;
    object-fit: contain;
    image-rendering: auto;
    filter: drop-shadow(0 4px 8px rgba(0,0,0,.45));
}
.portal-gift-option-v52 > span {
    min-width: 0;
    display: grid;
    gap: 4px;
}
.portal-gift-option-v52 strong {
    color: #ffe0a1;
    font: 800 .87rem/1.2 'Cinzel', serif;
}
.portal-gift-option-v52 small {
    color: #cdbda9;
    font-size: .72rem;
    line-height: 1.35;
}
.portal-gift-option-v52 b {
    color: #ffc85a;
    font-size: .76rem;
}
.portal-gift-summary-v52 {
    display: grid;
    gap: 3px;
    margin: 12px 0 6px;
    padding: 10px 12px;
    border: 1px solid rgba(255,202,87,.14);
    border-radius: 10px;
    background: rgba(255,190,69,.04);
}
.portal-gift-summary-v52 span:first-child {
    color: #ffe0a4;
    font-weight: 800;
    font-size: .8rem;
}
.portal-gift-summary-v52 span:last-child {
    color: #bfae9c;
    font-size: .68rem;
}

.portal-chat-message-v19.is-gift-message-v52 {
    border-color: rgba(255,192,70,.28) !important;
    background: linear-gradient(180deg, rgba(79,39,15,.18), rgba(18,12,12,.86)) !important;
    overflow: hidden;
}
.portal-chat-gift-event-v52 {
    position: relative;
    display: grid;
    grid-template-columns: 88px minmax(0,1fr);
    align-items: center;
    gap: 12px;
    min-height: 92px;
    margin-top: 7px;
    padding: 8px 10px 8px 6px;
    border: 1px solid rgba(255,189,73,.15);
    border-radius: 12px;
    background: radial-gradient(circle at 10% 50%, rgba(255,163,49,.12), transparent 40%), rgba(0,0,0,.13);
    animation: alastarGiftEntryV52 .68s cubic-bezier(.18,.8,.2,1) both;
}
.portal-chat-gift-art-v52 {
    width: 84px;
    height: 84px;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.portal-chat-gift-art-v52 img {
    width: 80px;
    height: 80px;
    display: block;
    object-fit: contain;
    image-rendering: auto;
    filter: drop-shadow(0 5px 10px rgba(0,0,0,.5));
    animation: alastarGiftArtV52 .85s cubic-bezier(.2,.9,.2,1) both;
}
.portal-chat-gift-copy-v52 {
    min-width: 0;
    display: grid;
    gap: 4px;
}
.portal-chat-gift-copy-v52 strong {
    color: #ffe19a;
    font: 900 .9rem/1.2 'Cinzel', serif;
    letter-spacing: .025em;
}
.portal-chat-gift-copy-v52 > span {
    color: #f4e8db;
    font-size: .82rem;
    line-height: 1.4;
}
.portal-chat-gift-copy-v52 b {
    width: fit-content;
    padding: 3px 7px;
    border: 1px solid rgba(255,204,87,.24);
    border-radius: 999px;
    color: #ffd66d;
    background: rgba(255,183,54,.08);
    font-size: .69rem;
}
.portal-chat-gift-spark-v52 {
    position: absolute;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #ffe790;
    box-shadow: 0 0 9px rgba(255,213,89,.9);
    opacity: 0;
    animation: alastarGiftSparkV52 .9s ease-out .1s both;
}
.portal-chat-gift-spark-v52.spark-1 { left: 5px; top: 18px; --tx: -8px; --ty: -14px; }
.portal-chat-gift-spark-v52.spark-2 { right: 4px; top: 11px; --tx: 10px; --ty: -17px; animation-delay: .18s; }
.portal-chat-gift-spark-v52.spark-3 { right: 8px; bottom: 10px; --tx: 12px; --ty: 13px; animation-delay: .25s; }
.portal-chat-gift-spark-v52.spark-4 { left: 12px; bottom: 8px; --tx: -9px; --ty: 15px; animation-delay: .32s; }
@keyframes alastarGiftEntryV52 {
    0% { opacity: 0; transform: translateY(12px) scale(.97); box-shadow: 0 0 0 rgba(255,180,53,0); }
    55% { box-shadow: 0 0 30px rgba(255,180,53,.14); }
    100% { opacity: 1; transform: translateY(0) scale(1); box-shadow: 0 0 0 rgba(255,180,53,0); }
}
@keyframes alastarGiftArtV52 {
    0% { opacity: 0; transform: scale(.55) rotate(-8deg); }
    65% { opacity: 1; transform: scale(1.08) rotate(2deg); }
    100% { opacity: 1; transform: scale(1) rotate(0); }
}
@keyframes alastarGiftSparkV52 {
    0% { opacity: 0; transform: translate(0,0) scale(.4); }
    35% { opacity: 1; }
    100% { opacity: 0; transform: translate(var(--tx),var(--ty)) scale(1.25); }
}

@media (max-width: 767px) {
    .portal-chat-input-v31 { padding-right: 100px !important; }
    .portal-emoji-toggle-v31 { width: 36px; height: 36px; right: 8px; top: 8px; }
    .portal-gift-toggle-v52 { right: 50px !important; }
    .portal-chat-popularity-v52 { width: 32px; height: 32px; flex-basis: 32px; }
    .portal-chat-popularity-server_king { width: 35px; height: 35px; flex-basis: 35px; }
    .portal-gift-grid-v52 { grid-template-columns: 1fr; }
    .portal-gift-option-v52 { grid-template-columns: 68px 1fr; min-height: 88px; }
    .portal-gift-option-v52 img { width: 64px; height: 64px; }
    .portal-chat-gift-event-v52 { grid-template-columns: 70px 1fr; gap: 8px; }
    .portal-chat-gift-art-v52 { width: 68px; height: 68px; }
    .portal-chat-gift-art-v52 img { width: 66px; height: 66px; }
    .portal-chat-gift-copy-v52 > span { font-size: .76rem; }
}

@media (prefers-reduced-motion: reduce) {
    .portal-chat-gift-event-v52,
    .portal-chat-gift-art-v52 img,
    .portal-chat-gift-spark-v52 { animation: none !important; }
}

/* ============================================================
   V53 - UPGRADE VISUAL DO CHAT (REFERÊNCIA ALASTAR)
   Mantém a paleta original e reorganiza salas, conversa e
   controles em uma interface mais nítida e responsiva.
   ============================================================ */
#alastar-site-chat.portal-community-v31 {
    --chat-v53-bg: #06101d;
    --chat-v53-bg-deep: #030914;
    --chat-v53-panel: rgba(8, 20, 36, .96);
    --chat-v53-panel-2: rgba(10, 27, 48, .94);
    --chat-v53-line: rgba(47, 153, 255, .46);
    --chat-v53-line-soft: rgba(73, 157, 245, .18);
    --chat-v53-blue: #38a9ff;
    --chat-v53-blue-soft: #8bd7ff;
    --chat-v53-gold: #f6c95a;
    --chat-v53-gold-2: #ff9b3d;
    --chat-v53-text: #f4f8ff;
    --chat-v53-muted: #93a8c1;
    --chat-v53-green: #37e487;
    --chat-v53-red: #ff5f56;
    overflow: visible !important;
    border-color: rgba(54, 158, 255, .58) !important;
    background:
        radial-gradient(circle at 50% -18%, rgba(39, 123, 214, .18), transparent 38%),
        linear-gradient(180deg, rgba(5, 13, 25, .99), rgba(3, 8, 16, .995)) !important;
    box-shadow:
        0 0 0 1px rgba(40, 129, 225, .16),
        0 18px 48px rgba(0, 0, 0, .40),
        0 0 34px rgba(29, 132, 236, .12),
        inset 0 1px 0 rgba(255,255,255,.045) !important;
    text-rendering: geometricPrecision;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

#alastar-site-chat.portal-community-v31::before {
    border-color: rgba(95, 181, 255, .10) !important;
}

#alastar-site-chat .portal-chat-title-v19 {
    min-height: 58px;
    padding-top: 15px !important;
    padding-bottom: 14px !important;
    background:
        linear-gradient(90deg, transparent, rgba(47, 141, 232, .10), transparent),
        linear-gradient(180deg, rgba(8, 22, 39, .96), rgba(5, 12, 23, .96));
    border-bottom: 1px solid rgba(54, 159, 255, .20);
}

#alastar-site-chat .portal-chat-title-v19 > i {
    color: var(--chat-v53-gold) !important;
    filter: drop-shadow(0 0 8px rgba(246, 201, 90, .22));
}

#alastar-site-chat .portal-chat-title-v19 > span:not(.title-line-v14) {
    color: #f7d780;
    letter-spacing: .055em;
    text-shadow: 0 1px 0 #000, 0 0 12px rgba(239, 189, 74, .10);
}

#alastar-site-chat .portal-community-tabs-v31 {
    padding: 9px 12px !important;
    gap: 8px !important;
    background: rgba(2, 8, 16, .96) !important;
    border-bottom-color: rgba(55, 155, 255, .16) !important;
}

#alastar-site-chat .portal-community-tab-v31 {
    min-height: 46px !important;
    border-radius: 10px !important;
    padding: 7px 12px !important;
    border-color: rgba(74, 158, 242, .12) !important;
    background: linear-gradient(180deg, rgba(13, 31, 52, .66), rgba(5, 13, 24, .76)) !important;
}

#alastar-site-chat .portal-community-tab-v31 > i {
    width: 29px !important;
    height: 29px !important;
    border-radius: 8px !important;
    color: #91dcff !important;
    background: rgba(43, 133, 218, .11) !important;
}

#alastar-site-chat .portal-community-tab-v31 > span {
    font-size: .84rem !important;
}

#alastar-site-chat .portal-community-tab-v31 > small {
    font-size: .60rem !important;
}

#alastar-site-chat .portal-community-tab-v31.is-active {
    border-color: rgba(62, 168, 255, .38) !important;
    background: linear-gradient(180deg, rgba(18, 60, 100, .54), rgba(7, 23, 43, .88)) !important;
    box-shadow: inset 0 -2px 0 rgba(246, 201, 90, .88), 0 0 18px rgba(38, 141, 235, .08) !important;
}

.portal-chat-panel-v53 {
    min-width: 0;
}

.portal-chat-workspace-v53 {
    min-height: 590px;
    display: grid;
    grid-template-columns: 218px minmax(0, 1fr) 178px;
    align-items: stretch;
    gap: 1px;
    position: relative;
    background: rgba(47, 148, 240, .17);
    border-top: 1px solid rgba(62, 166, 255, .08);
}

.portal-chat-sidebar-v53,
.portal-chat-main-v53,
.portal-chat-control-sidebar-v53 {
    min-width: 0;
    background: linear-gradient(180deg, rgba(6, 18, 33, .985), rgba(3, 10, 20, .995));
}

.portal-chat-sidebar-v53 {
    display: flex;
    flex-direction: column;
    min-height: 0;
    border-right: 1px solid rgba(68, 162, 249, .20);
}

.portal-chat-section-head-v53 {
    min-height: 58px;
    padding: 10px 12px 9px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    border-bottom: 1px solid rgba(76, 162, 247, .18);
    background: linear-gradient(180deg, rgba(12, 33, 57, .90), rgba(6, 19, 35, .92));
}

.portal-chat-section-head-v53 > div {
    min-width: 0;
    display: grid;
    gap: 1px;
}

.portal-chat-section-head-v53 small {
    color: #7f9bb9;
    font-size: .56rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.portal-chat-section-head-v53 strong {
    color: #f5e7c7;
    font: 900 .83rem/1.1 'Cinzel', serif;
    letter-spacing: .055em;
    text-transform: uppercase;
}

.portal-chat-section-icon-v53 {
    width: 31px;
    height: 31px;
    flex: 0 0 31px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(61, 157, 245, .30);
    border-radius: 9px;
    color: #8ddcff;
    background: rgba(28, 103, 169, .15);
}

.portal-chat-roombar-v53 {
    min-height: 0 !important;
    flex: 0 1 auto;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    padding: 9px !important;
    background: linear-gradient(180deg, rgba(5, 16, 30, .96), rgba(4, 13, 25, .98)) !important;
    border-bottom: 1px solid rgba(69, 160, 245, .18) !important;
}

.portal-chat-room-list-v53 {
    width: 100%;
    min-width: 0 !important;
    max-height: 260px;
    display: grid !important;
    grid-auto-flow: row !important;
    grid-template-columns: 1fr !important;
    gap: 6px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    padding: 0 2px 0 0 !important;
    scrollbar-width: thin;
}

.portal-chat-room-list-v53 .portal-chat-room-entry-v33 {
    width: 100%;
    min-width: 0;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 3px;
    align-items: center;
}

.portal-chat-room-list-v53 .portal-chat-room-pill-v33 {
    width: 100%;
    min-width: 0 !important;
    min-height: 39px !important;
    padding: 7px 9px !important;
    display: grid !important;
    grid-template-columns: 22px minmax(0, 1fr) auto auto !important;
    gap: 7px !important;
    align-items: center !important;
    border-radius: 8px !important;
    border: 1px solid rgba(82, 157, 229, .17) !important;
    color: #d9e8f6 !important;
    background: linear-gradient(180deg, rgba(13, 33, 56, .82), rgba(6, 18, 33, .93)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.025) !important;
    text-align: left !important;
}

.portal-chat-room-list-v53 .portal-chat-room-pill-v33 > i:first-child {
    width: 22px;
    text-align: center;
    color: #84d7ff !important;
    font-size: .78rem !important;
}

.portal-chat-room-list-v53 .portal-chat-room-pill-v33 > span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: .74rem !important;
    font-weight: 800;
}

.portal-chat-room-list-v53 .portal-chat-room-pill-v33:hover {
    border-color: rgba(71, 171, 255, .42) !important;
    background: linear-gradient(180deg, rgba(19, 54, 88, .95), rgba(8, 29, 52, .98)) !important;
}

.portal-chat-room-list-v53 .portal-chat-room-pill-v33.is-active {
    color: #fff !important;
    border-color: rgba(68, 176, 255, .72) !important;
    background: linear-gradient(90deg, rgba(18, 104, 181, .96), rgba(11, 54, 97, .96)) !important;
    box-shadow:
        inset 3px 0 0 var(--chat-v53-gold),
        0 0 16px rgba(40, 149, 240, .13) !important;
}

.portal-chat-room-count-v53 {
    min-width: 24px;
    height: 22px;
    padding: 0 5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    color: #eef8ff;
    background: rgba(3, 12, 24, .72);
    border: 1px solid rgba(118, 192, 255, .18);
    font-size: .60rem;
    font-weight: 900;
    line-height: 1;
}

.portal-chat-room-list-v53 .portal-chat-room-pill-v33 em {
    min-width: 22px !important;
    min-height: 18px !important;
    padding: 2px 5px !important;
    font-size: .48rem !important;
    border-radius: 999px !important;
    color: #291c02 !important;
    background: linear-gradient(180deg, #ffd86a, #eaa82f) !important;
}

.portal-chat-room-list-v53 .portal-chat-room-voice-v34 {
    margin-left: 0 !important;
    color: #65e68d !important;
    font-size: .64rem !important;
}

.portal-chat-room-list-v53 .portal-chat-room-close-v33 {
    width: 28px;
    height: 28px;
    min-width: 28px;
    padding: 0 !important;
    border-radius: 7px !important;
    border-color: rgba(87, 165, 237, .25) !important;
    background: rgba(10, 30, 49, .94) !important;
    color: #8edaff !important;
}

.portal-chat-room-list-v53 .portal-chat-room-close-v33:hover {
    border-color: rgba(255, 101, 88, .42) !important;
    background: rgba(89, 27, 29, .92) !important;
    color: #ffd6d3 !important;
}

.portal-chat-room-create-v53 {
    width: 100% !important;
    height: 38px !important;
    min-height: 38px !important;
    display: inline-flex !important;
    gap: 7px;
    border-radius: 8px !important;
    border-color: rgba(57, 168, 255, .42) !important;
    color: #95e2ff !important;
    background: linear-gradient(180deg, rgba(12, 69, 115, .70), rgba(7, 36, 68, .91)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.045) !important;
    font-size: .70rem !important;
    font-weight: 900;
    letter-spacing: .02em;
}

.portal-chat-room-create-v53:hover {
    border-color: rgba(91, 199, 255, .70) !important;
    background: linear-gradient(180deg, rgba(17, 95, 157, .88), rgba(7, 45, 84, .98)) !important;
}

.portal-chat-room-create-v53.is-disabled-v48 {
    opacity: .46;
}

.portal-chat-members-panel-v53 {
    min-height: 0;
    margin: 0 !important;
    padding: 0 !important;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    border: 0 !important;
    border-radius: 0 !important;
    background: linear-gradient(180deg, rgba(6, 18, 32, .98), rgba(3, 11, 22, .995)) !important;
    box-shadow: none !important;
}

.portal-chat-members-head-v53 {
    min-height: 52px;
    padding: 8px 10px;
    border-bottom: 1px solid rgba(68, 158, 241, .15);
}

.portal-chat-members-head-v53 .portal-voice-icon-v34 {
    width: 31px !important;
    height: 31px !important;
    flex-basis: 31px !important;
    border-radius: 8px !important;
    color: #7fd7ff !important;
}

.portal-chat-members-head-v53 strong {
    color: #f2e5c8 !important;
    font-size: .70rem !important;
    letter-spacing: .055em;
    text-transform: uppercase;
}

.portal-chat-members-head-v53 small {
    color: #7993ad !important;
    font-size: .58rem !important;
}

.portal-chat-members-head-v53 .portal-voice-count-v34 {
    min-width: 38px !important;
    min-height: 25px !important;
    padding: 3px 7px !important;
    border-radius: 8px !important;
    color: #c9edff !important;
    background: rgba(20, 76, 121, .18) !important;
}

.portal-chat-members-list-v53 {
    min-height: 100px !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 8px !important;
    flex: 1 1 auto;
    align-content: flex-start;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 5px !important;
    overflow-y: auto !important;
}

.portal-chat-members-list-v53 .portal-room-member-v51 {
    min-width: 0;
    width: 100%;
    min-height: 31px !important;
    padding: 5px 7px !important;
    display: grid !important;
    grid-template-columns: 14px minmax(0,1fr) auto;
    gap: 6px !important;
    border-color: rgba(70, 151, 224, .11) !important;
    border-radius: 7px !important;
    background: rgba(8, 25, 43, .66) !important;
}

.portal-chat-members-list-v53 .portal-room-member-v51 > i {
    width: 14px;
    text-align: center;
    color: #4ddc87 !important;
    font-size: .55rem !important;
}

.portal-chat-members-list-v53 .portal-room-member-v51.is-in-voice > i {
    color: #79d8ff !important;
    font-size: .68rem !important;
}

.portal-chat-members-list-v53 .portal-room-member-v51 strong {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #e8f1fb !important;
    font-size: .66rem !important;
}

.portal-chat-members-list-v53 .portal-room-member-v51 small {
    color: #8198af !important;
    font-size: .50rem !important;
    white-space: nowrap;
}

.portal-chat-call-controls-v53 {
    flex: 0 0 auto;
    padding: 8px;
    gap: 5px !important;
    border-top: 1px solid rgba(66, 156, 240, .13);
    background: rgba(3, 10, 20, .78);
}

.portal-chat-call-controls-v53 .portal-voice-join-v53 {
    width: 100%;
    min-height: 36px;
    border-radius: 8px;
    font-size: .66rem;
}

.portal-chat-call-controls-v53 .portal-voice-control-v34 {
    min-width: 0 !important;
    flex: 1 1 0;
    height: 34px !important;
    border-radius: 8px !important;
    font-size: .58rem !important;
}

.portal-chat-members-panel-v53 .portal-voice-feedback-v34 {
    padding: 0 8px 7px !important;
    font-size: .57rem !important;
}

.portal-chat-main-v53 {
    min-height: 0;
    display: flex;
    flex-direction: column;
    position: relative;
    isolation: isolate;
    background:
        linear-gradient(180deg, rgba(4, 12, 23, .74), rgba(3, 9, 18, .93)),
        radial-gradient(circle at 80% 45%, rgba(255, 112, 40, .09), transparent 32%),
        url('../images/alastar-armia-bg.webp') center/cover no-repeat;
}

.portal-chat-main-v53::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: -1;
    pointer-events: none;
    background:
        linear-gradient(90deg, rgba(2, 8, 16, .90), rgba(3, 11, 22, .54) 35%, rgba(3, 11, 22, .66) 68%, rgba(2, 8, 16, .91)),
        linear-gradient(180deg, rgba(3, 10, 19, .62), rgba(3, 10, 18, .82));
}

.portal-chat-room-head-v53 {
    min-height: 65px !important;
    padding: 8px 10px 8px 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    flex-wrap: nowrap !important;
    border-bottom: 1px solid rgba(70, 164, 250, .24) !important;
    background: linear-gradient(180deg, rgba(9, 31, 54, .93), rgba(5, 17, 31, .92)) !important;
    box-shadow: 0 5px 18px rgba(0,0,0,.14);
}

.portal-chat-room-title-v53 {
    min-width: 0;
    flex: 1 1 auto;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

.portal-chat-room-title-icon-v53 {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(238, 180, 75, .45);
    border-radius: 9px;
    color: #f3c55e;
    background: linear-gradient(180deg, rgba(79, 49, 17, .58), rgba(24, 22, 25, .72));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 0 13px rgba(240, 179, 56, .07);
}

.portal-chat-room-title-copy-v53 {
    min-width: 92px;
    display: grid;
    gap: 2px;
}

.portal-chat-room-title-copy-v53 strong {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #f6f0e4;
    font: 900 .91rem/1.1 'Cinzel', serif;
    text-transform: none;
}

.portal-chat-room-title-copy-v53 small {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #8ca3bb;
    font-size: .57rem;
    font-weight: 700;
}

.portal-chat-room-badges-v53 {
    display: inline-flex;
    gap: 5px;
    flex-wrap: wrap;
    align-items: center;
}

.portal-chat-room-badge-v53 {
    min-height: 22px;
    padding: 3px 7px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    border-radius: 999px;
    border: 1px solid rgba(87, 171, 247, .26);
    color: #bfe9ff;
    background: rgba(25, 76, 120, .18);
    font-style: normal;
    font-size: .48rem;
    font-weight: 900;
    letter-spacing: .035em;
    white-space: nowrap;
}

.portal-chat-room-badge-v53.is-fixed {
    color: #ffe4a0;
    border-color: rgba(247, 196, 77, .36);
    background: rgba(125, 87, 15, .18);
}

.portal-chat-room-badge-v53.is-locked {
    color: #ffb9b2;
    border-color: rgba(255, 100, 83, .31);
    background: rgba(122, 34, 31, .18);
}

.portal-chat-room-badge-v53.is-voice {
    color: #b8f4cb;
    border-color: rgba(59, 226, 132, .27);
    background: rgba(26, 116, 65, .16);
}

.portal-chat-room-members-v53 {
    min-height: 28px;
    padding: 4px 8px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    border-radius: 8px;
    color: #bfe7ff;
    background: rgba(22, 78, 125, .16);
    border: 1px solid rgba(79, 170, 251, .20);
    font-size: .55rem;
    font-weight: 900;
    white-space: nowrap;
}

.portal-chat-head-tools-v53 {
    flex: 0 0 auto;
    gap: 6px !important;
}

.portal-chat-head-action-v53 {
    width: 34px !important;
    height: 34px !important;
    border-radius: 8px !important;
    color: #b8e8ff !important;
    border-color: rgba(79, 171, 252, .26) !important;
    background: rgba(12, 46, 76, .48) !important;
}

.portal-chat-head-action-v53:hover {
    color: #fff4cc !important;
    border-color: rgba(247, 199, 89, .42) !important;
    background: rgba(91, 61, 22, .42) !important;
}

#alastar-site-chat .portal-chat-announcement-v48 {
    margin: 7px 8px 0 !important;
    border-radius: 9px !important;
    border-color: rgba(246, 195, 75, .30) !important;
    background: linear-gradient(90deg, rgba(83, 57, 15, .24), rgba(9, 28, 48, .74)) !important;
}

.portal-chat-messages-v53 {
    height: auto !important;
    min-height: 335px !important;
    flex: 1 1 auto;
    padding: 9px 10px 11px !important;
    gap: 6px !important;
    background: transparent !important;
    scrollbar-color: rgba(82, 172, 250, .40) rgba(255,255,255,.02) !important;
}

.portal-chat-messages-v53::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, rgba(58, 165, 255, .62), rgba(238, 164, 62, .42)) !important;
}

#alastar-site-chat .portal-chat-message-v19 {
    padding: 8px 9px 8px 10px !important;
    border-radius: 8px !important;
    border-color: rgba(89, 164, 233, .10) !important;
    background: linear-gradient(90deg, rgba(4, 15, 28, .74), rgba(9, 21, 35, .48)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.018) !important;
}

#alastar-site-chat .portal-chat-message-v19::before {
    top: 7px !important;
    bottom: 7px !important;
    width: 2px !important;
    background: linear-gradient(180deg, #3eafff, #efb546) !important;
    opacity: .75 !important;
}

#alastar-site-chat .portal-chat-message-head-v19 {
    margin-bottom: 3px !important;
}

#alastar-site-chat .portal-chat-player-identity-v45 {
    gap: 4px !important;
}

#alastar-site-chat .portal-chat-player-name-v45 {
    color: #b9e3ff !important;
    font-size: .74rem !important;
    font-weight: 900 !important;
    text-shadow: 0 1px 0 rgba(0,0,0,.72);
}

#alastar-site-chat .portal-chat-message-head-v19 time {
    color: #8297ad !important;
    font-size: .55rem !important;
}

#alastar-site-chat .portal-chat-message-v19 p {
    margin-top: 3px !important;
    color: #f2f5f9 !important;
    font-size: .73rem !important;
    line-height: 1.43 !important;
}

#alastar-site-chat .portal-chat-tag-v45,
#alastar-site-chat .portal-chat-staff-custom-tag-v48 {
    min-height: 17px !important;
    padding: 2px 5px !important;
    border-radius: 4px !important;
    font-size: .46rem !important;
    letter-spacing: .025em !important;
}

#alastar-site-chat .portal-chat-popularity-v52 {
    width: 29px !important;
    height: 29px !important;
    flex: 0 0 29px !important;
    margin: -6px 1px -6px 0 !important;
    filter: drop-shadow(0 0 5px rgba(244, 190, 63, .22)) drop-shadow(0 2px 3px rgba(0,0,0,.56)) !important;
}

#alastar-site-chat .portal-chat-popularity-server_king {
    width: 32px !important;
    height: 32px !important;
    flex-basis: 32px !important;
}

#alastar-site-chat .portal-chat-symbol-v47 {
    width: 24px !important;
    height: 24px !important;
    margin: -4px 0 !important;
}

#alastar-site-chat .portal-chat-gift-event-v52 {
    min-height: 76px !important;
    grid-template-columns: 66px minmax(0,1fr) !important;
    gap: 8px !important;
    padding: 6px 8px !important;
    border-radius: 8px !important;
    background: linear-gradient(90deg, rgba(83, 50, 13, .25), rgba(7, 22, 38, .60)) !important;
}

#alastar-site-chat .portal-chat-gift-art-v52,
#alastar-site-chat .portal-chat-gift-art-v52 img {
    width: 62px !important;
    height: 62px !important;
}

#alastar-site-chat .portal-chat-gift-copy-v52 strong {
    color: #ffe39b !important;
    font-size: .73rem !important;
}

#alastar-site-chat .portal-chat-gift-copy-v52 > span {
    color: #eef5fb !important;
    font-size: .68rem !important;
}

.portal-chat-composer-v53 {
    flex: 0 0 auto;
    padding: 8px 10px 9px !important;
    border-top: 1px solid rgba(71, 164, 248, .24) !important;
    background: linear-gradient(180deg, rgba(5, 17, 31, .94), rgba(3, 10, 20, .99)) !important;
}

.portal-chat-composer-row-v53 {
    min-width: 0;
    display: grid;
    grid-template-columns: auto 112px minmax(0, 1fr) auto;
    gap: 7px;
    align-items: stretch;
}

.portal-chat-composer-buttons-v53 {
    display: inline-grid;
    grid-template-columns: repeat(3, 34px);
    gap: 5px;
    align-items: center;
}

#alastar-site-chat .portal-chat-action-button-v53 {
    position: static !important;
    inset: auto !important;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px;
    align-self: center;
    border-radius: 8px !important;
    border-color: rgba(80, 171, 251, .22) !important;
    background: linear-gradient(180deg, rgba(14, 51, 82, .78), rgba(6, 26, 47, .92)) !important;
    color: #8edcff !important;
    font-size: .88rem !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.035) !important;
}

#alastar-site-chat .portal-chat-action-button-v53:hover,
#alastar-site-chat .portal-chat-action-button-v53.is-active {
    color: #ffe28a !important;
    border-color: rgba(244, 193, 75, .42) !important;
    background: linear-gradient(180deg, rgba(83, 58, 18, .76), rgba(29, 31, 39, .94)) !important;
}

#alastar-site-chat .portal-gift-toggle-v52 {
    right: auto !important;
}

.portal-chat-nick-inline-v53 {
    min-width: 0;
    position: relative;
    padding: 5px 8px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    border: 1px solid rgba(77, 163, 241, .19);
    border-radius: 8px;
    background: rgba(7, 25, 43, .78);
}

.portal-chat-nick-inline-v53 > small {
    color: #7e96af;
    font-size: .45rem;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.portal-chat-nick-inline-v53 .portal-chat-identity-v19 {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #c7ebff !important;
    font-size: .62rem !important;
    font-weight: 900 !important;
    text-transform: none;
}

.portal-chat-nick-menu-v53 {
    left: 0 !important;
    right: auto !important;
    top: auto !important;
    bottom: calc(100% + 8px) !important;
    width: 220px !important;
    z-index: 100 !important;
    border-color: rgba(68, 167, 255, .42) !important;
    background: linear-gradient(180deg, rgba(7, 25, 46, .99), rgba(3, 11, 23, .995)) !important;
    box-shadow: 0 18px 40px rgba(0,0,0,.46), 0 0 18px rgba(37, 145, 243, .11) !important;
}

.portal-chat-input-wrap-v53 {
    min-width: 0;
    position: relative;
}

#alastar-site-chat .portal-chat-input-v53 {
    min-height: 48px !important;
    height: 48px !important;
    max-height: 82px !important;
    resize: none !important;
    padding: 12px 13px !important;
    border-radius: 8px !important;
    border-color: rgba(82, 169, 248, .29) !important;
    color: #f4f8fb !important;
    background: rgba(4, 14, 27, .86) !important;
    font-size: .74rem !important;
    line-height: 1.45 !important;
    box-shadow: inset 0 1px 5px rgba(0,0,0,.22) !important;
}

#alastar-site-chat .portal-chat-input-v53:focus {
    border-color: rgba(67, 176, 255, .67) !important;
    box-shadow: 0 0 0 2px rgba(57, 161, 248, .08), inset 0 1px 5px rgba(0,0,0,.20) !important;
}

#alastar-site-chat .portal-chat-input-v53::placeholder {
    color: #6f8499 !important;
}

.portal-emoji-picker-v53 {
    left: 0 !important;
    right: auto !important;
    width: min(360px, calc(100vw - 36px)) !important;
    border-color: rgba(67, 168, 255, .37) !important;
    background: linear-gradient(180deg, rgba(8, 28, 50, .99), rgba(4, 13, 25, .995)) !important;
}

.portal-chat-send-v53 {
    min-width: 78px !important;
    height: 48px;
    padding: 0 13px !important;
    align-self: center;
    border-radius: 8px !important;
    border: 1px solid rgba(71, 183, 255, .62) !important;
    background: linear-gradient(180deg, #1678c4, #0d4a88) !important;
    color: #f5fbff !important;
    font-size: .70rem !important;
    font-weight: 900 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 0 15px rgba(39, 148, 239, .11) !important;
}

.portal-chat-send-v53:hover {
    background: linear-gradient(180deg, #1d8add, #0e579d) !important;
    border-color: rgba(112, 205, 255, .88) !important;
}

.portal-chat-actions-v53 {
    min-height: 19px !important;
    padding-top: 4px !important;
    grid-template-columns: auto minmax(0, 1fr) !important;
    gap: 8px !important;
}

.portal-chat-actions-v53 .portal-chat-counter-v19 {
    font-size: .52rem !important;
}

.portal-chat-actions-v53 .portal-chat-feedback-v19 {
    font-size: .56rem !important;
}

.portal-chat-locked-v53 {
    flex: 0 0 auto;
    border-top-color: rgba(64, 164, 250, .20) !important;
    background: rgba(4, 14, 27, .92) !important;
}

.portal-chat-control-sidebar-v53 {
    min-width: 0;
    padding: 8px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    border-left: 1px solid rgba(68, 162, 249, .20);
}

.portal-chat-control-card-v53 {
    min-width: 0;
    padding: 8px;
    display: grid;
    gap: 6px;
    border: 1px solid rgba(67, 160, 247, .22);
    border-radius: 9px;
    background: linear-gradient(180deg, rgba(9, 29, 50, .94), rgba(4, 15, 28, .97));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.025);
}

.portal-chat-control-card-v53[hidden] {
    display: none !important;
}

.portal-chat-control-card-v53 > header {
    min-height: 25px;
    display: flex;
    align-items: center;
    gap: 6px;
    color: #f3cf70;
    font: 900 .56rem/1.1 'Cinzel', serif;
    letter-spacing: .035em;
    text-transform: uppercase;
    border-bottom: 1px solid rgba(70, 159, 241, .13);
    padding-bottom: 6px;
}

.portal-chat-control-card-v53 > header i {
    color: #f5c756;
}

.portal-chat-control-button-v53 {
    min-width: 0;
    min-height: 37px;
    padding: 7px 8px;
    display: flex;
    align-items: center;
    gap: 7px;
    border: 1px solid rgba(70, 164, 247, .29);
    border-radius: 7px;
    outline: 0;
    color: #d9efff;
    background: linear-gradient(180deg, rgba(16, 64, 104, .76), rgba(7, 33, 59, .92));
    cursor: pointer;
    font-size: .58rem;
    font-weight: 850;
    text-align: left;
    transition: transform .15s ease, border-color .15s ease, filter .15s ease;
}

.portal-chat-control-button-v53:hover:not(:disabled) {
    transform: translateY(-1px);
    border-color: rgba(94, 196, 255, .65);
    filter: brightness(1.08);
}

.portal-chat-control-button-v53 i {
    width: 18px;
    text-align: center;
    font-size: .66rem;
}

.portal-chat-control-button-v53.is-danger {
    color: #ffe1dc;
    border-color: rgba(255, 84, 75, .38);
    background: linear-gradient(180deg, rgba(164, 34, 36, .88), rgba(80, 17, 23, .95));
}

.portal-chat-control-button-v53.is-success {
    color: #dfffea;
    border-color: rgba(55, 222, 129, .39);
    background: linear-gradient(180deg, rgba(19, 120, 64, .82), rgba(8, 61, 39, .95));
}

.portal-chat-control-button-v53:disabled {
    opacity: .34;
    cursor: not-allowed;
}

.portal-chat-control-info-v53 {
    margin-top: auto;
}

.portal-chat-control-info-v53 > header {
    color: #a7ddff;
}

.portal-chat-control-info-v53 > header i {
    color: #72d1ff;
}

.portal-chat-control-info-v53 p {
    margin: 0;
    color: #8298ae !important;
    font-size: .56rem !important;
    line-height: 1.48 !important;
}

/* O modal de presentes acompanha a estética mais nítida do mockup. */
#alastar-site-chat .portal-gift-card-v52,
#alastar-site-chat .portal-room-dialog-card-v33 {
    border-color: rgba(62, 163, 252, .38) !important;
    background:
        radial-gradient(circle at 50% -10%, rgba(40, 132, 217, .12), transparent 32%),
        linear-gradient(180deg, rgba(7, 24, 43, .995), rgba(3, 10, 20, .998)) !important;
    box-shadow: 0 24px 70px rgba(0,0,0,.62), 0 0 28px rgba(31, 136, 230, .11), inset 0 1px 0 rgba(255,255,255,.035) !important;
}

#alastar-site-chat .portal-gift-option-v52 {
    border-color: rgba(68, 160, 244, .16) !important;
    background: linear-gradient(180deg, rgba(9, 29, 50, .92), rgba(4, 15, 28, .97)) !important;
}

#alastar-site-chat .portal-gift-option-v52:hover,
#alastar-site-chat .portal-gift-option-v52:focus-visible {
    border-color: rgba(79, 184, 255, .47) !important;
}

#alastar-site-chat .portal-gift-option-v52.is-selected {
    border-color: rgba(244, 196, 78, .76) !important;
    background: linear-gradient(180deg, rgba(68, 52, 18, .91), rgba(8, 27, 48, .97)) !important;
    box-shadow: 0 0 0 2px rgba(245, 198, 79, .08), 0 0 24px rgba(46, 148, 235, .10) !important;
}

#alastar-site-chat .portal-gift-recipient-v52 {
    border-color: rgba(69, 163, 248, .28) !important;
    background: rgba(3, 13, 25, .96) !important;
    color: #eef8ff !important;
}

/* Fullscreen V53: usa a mesma composição da referência e preserva toda a UI. */
#alastar-site-chat.is-fullscreen-v51 {
    padding: 10px !important;
    background:
        radial-gradient(circle at 50% -14%, rgba(36, 122, 209, .20), transparent 38%),
        linear-gradient(180deg, rgba(3, 10, 19, .992), rgba(2, 7, 14, .997)),
        url('../images/alastar-armia-bg.webp') center/cover no-repeat !important;
}

#alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53 {
    flex: 1 1 auto;
    min-height: 0;
    height: 100%;
    grid-template-columns: minmax(205px, 238px) minmax(0, 1fr) minmax(165px, 205px);
}

#alastar-site-chat.is-fullscreen-v51 #alastar-panel-chat {
    min-height: 0;
}

#alastar-site-chat.is-fullscreen-v51 .portal-chat-panel-v53,
#alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53,
#alastar-site-chat.is-fullscreen-v51 .portal-chat-main-v53,
#alastar-site-chat.is-fullscreen-v51 .portal-chat-sidebar-v53,
#alastar-site-chat.is-fullscreen-v51 .portal-chat-control-sidebar-v53 {
    min-height: 0;
}

#alastar-site-chat.is-fullscreen-v51 .portal-chat-messages-v53 {
    min-height: 0 !important;
}

/* Notebooks: controles passam para uma barra horizontal e o centro ganha espaço. */
@media (max-width: 1540px) {
    .portal-chat-workspace-v53 {
        grid-template-columns: 205px minmax(0, 1fr);
    }
    .portal-chat-control-sidebar-v53 {
        grid-column: 1 / -1;
        padding: 7px;
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 7px;
        border-left: 0;
        border-top: 1px solid rgba(68, 162, 249, .20);
    }
    .portal-chat-control-card-v53 {
        height: 100%;
    }
    .portal-chat-control-info-v53 {
        margin-top: 0;
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53 {
        grid-template-columns: minmax(205px, 230px) minmax(0, 1fr) minmax(170px, 195px);
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-control-sidebar-v53 {
        grid-column: auto;
        display: flex;
        border-left: 1px solid rgba(68, 162, 249, .20);
        border-top: 0;
    }
}

@media (max-width: 1180px) {
    .portal-chat-workspace-v53 {
        grid-template-columns: 1fr;
        min-height: 0;
    }
    .portal-chat-sidebar-v53 {
        border-right: 0;
        border-bottom: 1px solid rgba(68, 162, 249, .20);
    }
    .portal-chat-section-head-v53 {
        min-height: 43px;
        padding: 6px 9px;
    }
    .portal-chat-roombar-v53 {
        flex-direction: row !important;
        align-items: center;
    }
    .portal-chat-room-list-v53 {
        max-height: none;
        grid-auto-flow: column !important;
        grid-template-columns: none !important;
        grid-auto-columns: minmax(126px, 170px) !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }
    .portal-chat-room-list-v53 .portal-chat-room-entry-v33 {
        min-width: 0;
    }
    .portal-chat-room-create-v53 {
        width: 42px !important;
        min-width: 42px !important;
    }
    .portal-chat-room-create-v53 span {
        display: none;
    }
    .portal-chat-members-panel-v53 {
        max-height: 174px;
        border-top: 1px solid rgba(69, 159, 244, .11) !important;
    }
    .portal-chat-members-list-v53 {
        min-height: 55px !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
    .portal-chat-control-sidebar-v53 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .portal-chat-control-info-v53 {
        display: none;
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53 {
        grid-template-columns: 190px minmax(0, 1fr);
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-sidebar-v53 {
        border-right: 1px solid rgba(68, 162, 249, .20);
        border-bottom: 0;
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-section-head-v53 {
        min-height: 52px;
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-roombar-v53 {
        flex-direction: column !important;
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-room-list-v53 {
        max-height: 240px;
        grid-auto-flow: row !important;
        grid-template-columns: 1fr !important;
        grid-auto-columns: unset !important;
        overflow-x: hidden !important;
        overflow-y: auto !important;
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-room-create-v53 {
        width: 100% !important;
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-room-create-v53 span {
        display: inline;
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-members-panel-v53 {
        max-height: none;
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-members-list-v53 {
        grid-template-columns: 1fr !important;
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-control-sidebar-v53 {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        border-left: 0;
        border-top: 1px solid rgba(68, 162, 249, .20);
        max-height: 132px;
        overflow: auto;
    }
}

@media (max-width: 767px) {
    #alastar-site-chat.portal-community-v31 {
        border-radius: 10px !important;
    }
    #alastar-site-chat .portal-chat-title-v19 {
        min-height: 48px;
    }
    #alastar-site-chat .portal-community-tabs-v31 {
        padding: 7px !important;
    }
    #alastar-site-chat .portal-community-tab-v31 {
        min-height: 42px !important;
        grid-template-columns: 28px minmax(0, 1fr) !important;
        padding: 5px 8px !important;
    }
    #alastar-site-chat .portal-community-tab-v31 > i {
        width: 27px !important;
        height: 27px !important;
    }
    .portal-chat-section-head-v53 {
        display: none;
    }
    .portal-chat-roombar-v53 {
        padding: 7px !important;
    }
    .portal-chat-room-list-v53 {
        grid-auto-columns: minmax(112px, 145px) !important;
    }
    .portal-chat-room-list-v53 .portal-chat-room-pill-v33 {
        min-height: 36px !important;
        grid-template-columns: 18px minmax(0, 1fr) auto auto !important;
        padding: 6px 7px !important;
    }
    .portal-chat-room-list-v53 .portal-chat-room-pill-v33 > span {
        font-size: .66rem !important;
    }
    .portal-chat-room-count-v53 {
        min-width: 20px;
        height: 19px;
        font-size: .52rem;
    }
    .portal-chat-members-panel-v53 {
        max-height: 145px;
    }
    .portal-chat-members-head-v53 {
        min-height: 43px;
        padding: 6px 8px;
    }
    .portal-chat-members-list-v53 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        padding: 6px !important;
    }
    .portal-chat-members-list-v53 .portal-room-member-v51 {
        min-height: 28px !important;
    }
    .portal-chat-room-head-v53 {
        min-height: 54px !important;
        padding: 6px 7px !important;
    }
    .portal-chat-room-title-icon-v53 {
        width: 32px;
        height: 32px;
        flex-basis: 32px;
    }
    .portal-chat-room-title-copy-v53 strong {
        font-size: .77rem;
    }
    .portal-chat-room-title-copy-v53 small {
        display: none;
    }
    .portal-chat-room-badges-v53 {
        display: none;
    }
    .portal-chat-room-members-v53 {
        padding: 3px 6px;
        font-size: .50rem;
    }
    .portal-chat-head-action-v53 {
        width: 30px !important;
        height: 30px !important;
    }
    .portal-chat-messages-v53 {
        min-height: 300px !important;
        padding: 7px !important;
    }
    #alastar-site-chat .portal-chat-message-v19 {
        padding: 7px 7px 7px 9px !important;
    }
    #alastar-site-chat .portal-chat-player-name-v45 {
        font-size: .69rem !important;
    }
    #alastar-site-chat .portal-chat-message-v19 p {
        font-size: .70rem !important;
    }
    #alastar-site-chat .portal-chat-popularity-v52 {
        width: 27px !important;
        height: 27px !important;
        flex-basis: 27px !important;
    }
    .portal-chat-composer-v53 {
        padding: 7px !important;
    }
    .portal-chat-composer-row-v53 {
        grid-template-columns: auto minmax(0, 1fr) auto;
        grid-template-areas:
            "tools nick send"
            "input input input";
        gap: 6px;
    }
    .portal-chat-composer-buttons-v53 {
        grid-area: tools;
        grid-template-columns: repeat(3, 31px);
    }
    #alastar-site-chat .portal-chat-action-button-v53 {
        width: 31px !important;
        height: 31px !important;
        min-width: 31px !important;
    }
    .portal-chat-nick-inline-v53 {
        grid-area: nick;
        min-width: 0;
        padding: 3px 7px;
    }
    .portal-chat-input-wrap-v53 {
        grid-area: input;
    }
    .portal-chat-send-v53 {
        grid-area: send;
        width: 40px;
        min-width: 40px !important;
        height: 38px;
        padding: 0 !important;
    }
    .portal-chat-send-v53 span {
        display: none;
    }
    #alastar-site-chat .portal-chat-input-v53 {
        height: 46px !important;
        min-height: 46px !important;
        font-size: .72rem !important;
    }
    .portal-chat-control-sidebar-v53 {
        grid-template-columns: 1fr;
        padding: 6px;
    }
    .portal-chat-control-card-v53 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 5px;
        padding: 6px;
    }
    .portal-chat-control-card-v53 > header {
        grid-column: 1 / -1;
    }
    .portal-chat-control-button-v53 {
        min-height: 34px;
        font-size: .54rem;
    }
    #alastar-site-chat.is-fullscreen-v51 {
        padding: 4px !important;
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53 {
        grid-template-columns: 1fr;
        overflow-y: auto;
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-sidebar-v53 {
        border-right: 0;
        border-bottom: 1px solid rgba(68, 162, 249, .20);
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-roombar-v53 {
        flex-direction: row !important;
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-room-list-v53 {
        max-height: none;
        grid-auto-flow: column !important;
        grid-template-columns: none !important;
        grid-auto-columns: minmax(112px, 145px) !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-room-create-v53 {
        width: 42px !important;
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-room-create-v53 span {
        display: none;
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-members-panel-v53 {
        max-height: 145px;
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-members-list-v53 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-control-sidebar-v53 {
        max-height: none;
        grid-template-columns: 1fr;
    }
}

@media (max-width: 430px) {
    .portal-chat-members-list-v53 {
        grid-template-columns: 1fr !important;
    }
    .portal-chat-control-card-v53 {
        grid-template-columns: 1fr;
    }
    .portal-chat-composer-row-v53 {
        grid-template-columns: auto minmax(0, 1fr) 38px;
    }
    .portal-chat-composer-buttons-v53 {
        grid-template-columns: repeat(3, 29px);
        gap: 3px;
    }
    #alastar-site-chat .portal-chat-action-button-v53 {
        width: 29px !important;
        height: 29px !important;
        min-width: 29px !important;
        font-size: .76rem !important;
    }
    .portal-chat-nick-inline-v53 > small {
        display: none;
    }
    .portal-chat-room-members-v53 {
        max-width: 72px;
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

@media (prefers-reduced-motion: reduce) {
    #alastar-site-chat *,
    #alastar-site-chat *::before,
    #alastar-site-chat *::after {
        scroll-behavior: auto !important;
    }
}
/* ============================================================
   V54 - LARGURA TOTAL + FULLSCREEN PROPORCIONAL + COMPOSER LIVRE
   ============================================================ */

/* 1) PORTAL MAIS ESTICADO: elimina as sobras laterais e aproveita o monitor. */
@media (min-width: 1200px) {
    .portal-stage-v14 {
        width: 100% !important;
        max-width: none !important;
        padding-left: clamp(6px, .7vw, 14px) !important;
        padding-right: clamp(6px, .7vw, 14px) !important;
    }

    .portal-frame-v14 {
        width: 100% !important;
        max-width: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: clamp(12px, 1.15vw, 22px) !important;
        padding-right: clamp(12px, 1.15vw, 22px) !important;
    }

    .portal-grid-v14 {
        width: 100% !important;
        max-width: none !important;
        grid-template-columns:
            clamp(260px, 21vw, 340px)
            minmax(0, 1fr)
            clamp(290px, 23vw, 380px) !important;
        gap: clamp(14px, 1.2vw, 22px) !important;
    }

    .portal-sidebar-v14,
    .portal-main-v14,
    .portal-box-v14 {
        min-width: 0 !important;
    }
}

/* Escala de leitura levemente maior, sem mudar a identidade visual. */
.portal-box-title-v14 {
    min-height: 54px !important;
    font-size: clamp(.84rem, .80rem + .12vw, .98rem) !important;
}

.server-stat-row-v14,
.rate-feature-v14,
.composition-row-v14,
.portal-quick-nav-v14 a,
.city-ranking-city-v14,
.city-ranking-guild-v14 {
    line-height: 1.4 !important;
}

.server-stat-row-v14 span,
.server-stat-row-v14 strong,
.rate-feature-v14 small,
.composition-row-v14 span,
.portal-quick-nav-v14 a span,
.city-ranking-city-v14 strong,
.city-ranking-guild-v14 strong {
    font-size: max(.78rem, 12px) !important;
}

/* O chat normal ganha mais presença vertical e colunas menos apertadas. */
.portal-chat-workspace-v53 {
    min-height: 660px;
    grid-template-columns: minmax(235px, 25%) minmax(0, 1fr) minmax(205px, 22%) !important;
}

.portal-chat-section-head-v53 strong,
.portal-chat-room-title-copy-v53 strong {
    font-size: .92rem !important;
}

.portal-chat-room-list-v53 .portal-chat-room-pill-v33 > span,
.portal-chat-members-list-v53 .portal-room-member-v51 strong,
#alastar-site-chat .portal-chat-player-name-v45,
#alastar-site-chat .portal-chat-message-v19 p {
    font-size: .76rem !important;
}

/* 2) IDENTIDADE/NICK NA LATERAL: libera completamente a área de digitação. */
.portal-chat-identity-sidebar-v54 {
    position: relative;
    flex: 0 0 auto;
    min-width: 0;
    min-height: 56px;
    margin: 0;
    padding: 8px 9px 8px 11px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 38px;
    align-items: center;
    gap: 8px;
    border-bottom: 1px solid rgba(68, 158, 241, .16);
    background:
        linear-gradient(90deg, rgba(102, 68, 18, .12), transparent 42%),
        linear-gradient(180deg, rgba(8, 28, 48, .96), rgba(4, 16, 29, .98));
}

.portal-chat-identity-copy-v54 {
    min-width: 0;
    display: grid;
    gap: 3px;
}

.portal-chat-identity-copy-v54 > small {
    color: #8ba4bd;
    font-size: .56rem;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.portal-chat-identity-copy-v54 .portal-chat-identity-v19 {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #f6d477 !important;
    font-size: .78rem !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
}

.portal-chat-nick-side-button-v54 {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(244, 193, 75, .34);
    border-radius: 9px;
    outline: 0;
    color: #ffe18b;
    background: linear-gradient(180deg, rgba(86, 59, 18, .72), rgba(30, 30, 35, .92));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
    cursor: pointer;
    transition: border-color .15s ease, transform .15s ease, filter .15s ease;
}

.portal-chat-nick-side-button-v54:hover,
.portal-chat-nick-side-button-v54:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(255, 218, 117, .66);
    filter: brightness(1.08);
}

#alastar-site-chat .portal-chat-nick-menu-side-v54 {
    left: calc(100% + 8px) !important;
    right: auto !important;
    top: 0 !important;
    bottom: auto !important;
    width: min(260px, calc(100vw - 32px)) !important;
    z-index: 250 !important;
}

/* Composer: somente Emoji + Presente + Mensagem + Enviar. */
.portal-chat-composer-v53 {
    padding: 10px 12px 11px !important;
}

.portal-chat-composer-row-v53 {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    grid-template-areas: "tools input send" !important;
    gap: 9px !important;
    align-items: center !important;
}

.portal-chat-composer-buttons-v53 {
    grid-area: tools !important;
    display: grid !important;
    grid-template-columns: repeat(2, 40px) !important;
    gap: 6px !important;
}

#alastar-site-chat .portal-chat-action-button-v53 {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    font-size: 1rem !important;
}

.portal-chat-input-wrap-v53 {
    grid-area: input !important;
    min-width: 0 !important;
    width: 100% !important;
}

#alastar-site-chat .portal-chat-input-v53 {
    width: 100% !important;
    min-height: 54px !important;
    height: 54px !important;
    max-height: 110px !important;
    padding: 14px 15px !important;
    font-size: .82rem !important;
    line-height: 1.45 !important;
}

.portal-chat-send-v53 {
    grid-area: send !important;
    min-width: 104px !important;
    height: 54px !important;
    padding: 0 17px !important;
    font-size: .76rem !important;
}

.portal-chat-actions-v53 {
    padding-top: 6px !important;
}

/* 3) FULLSCREEN REAL E PROPORCIONAL: 24% / 52% / 24%, altura sem estouro. */
#alastar-site-chat.is-fullscreen-v51 {
    width: 100vw !important;
    max-width: 100vw !important;
    height: var(--alastar-chat-fullscreen-height, 100dvh) !important;
    max-height: var(--alastar-chat-fullscreen-height, 100dvh) !important;
    padding: clamp(8px, .8vw, 14px) !important;
    overflow: hidden !important;
}

#alastar-site-chat.is-fullscreen-v51 > .portal-box-title-v14 {
    flex: 0 0 auto !important;
    min-height: 46px !important;
}

#alastar-site-chat.is-fullscreen-v51 .portal-community-tabs-v31 {
    flex: 0 0 auto !important;
    min-height: 54px !important;
}

#alastar-site-chat.is-fullscreen-v51 #alastar-panel-chat,
#alastar-site-chat.is-fullscreen-v51 .portal-chat-panel-v53 {
    flex: 1 1 0 !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: hidden !important;
}

#alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53 {
    flex: 1 1 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
    grid-template-columns: minmax(250px, 24%) minmax(0, 52%) minmax(235px, 24%) !important;
    grid-template-rows: minmax(0, 1fr) !important;
    gap: 1px !important;
    overflow: hidden !important;
}

#alastar-site-chat.is-fullscreen-v51 .portal-chat-sidebar-v53,
#alastar-site-chat.is-fullscreen-v51 .portal-chat-main-v53,
#alastar-site-chat.is-fullscreen-v51 .portal-chat-control-sidebar-v53 {
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
    overflow: hidden !important;
}

#alastar-site-chat.is-fullscreen-v51 .portal-chat-main-v53 {
    display: flex !important;
    flex-direction: column !important;
}

#alastar-site-chat.is-fullscreen-v51 .portal-chat-messages-v53 {
    flex: 1 1 0 !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    overflow-y: auto !important;
}

#alastar-site-chat.is-fullscreen-v51 .portal-chat-roombar-v53 {
    flex: 0 0 auto !important;
}

#alastar-site-chat.is-fullscreen-v51 .portal-chat-room-list-v53 {
    max-height: clamp(180px, 27vh, 285px) !important;
}

#alastar-site-chat.is-fullscreen-v51 .portal-chat-members-panel-v53 {
    flex: 1 1 0 !important;
    min-height: 0 !important;
    max-height: none !important;
}

#alastar-site-chat.is-fullscreen-v51 .portal-chat-members-list-v53 {
    flex: 1 1 0 !important;
    min-height: 0 !important;
    overflow-y: auto !important;
}

#alastar-site-chat.is-fullscreen-v51 .portal-chat-control-sidebar-v53 {
    display: flex !important;
    flex-direction: column !important;
    grid-column: auto !important;
    padding: 10px !important;
    overflow-y: auto !important;
}

#alastar-site-chat.is-fullscreen-v51 .portal-chat-control-card-v53 {
    flex: 0 0 auto !important;
}

#alastar-site-chat.is-fullscreen-v51 .portal-chat-composer-v53 {
    flex: 0 0 auto !important;
}

/* Desktop intermediário: mantém proporção sem jogar controles para baixo. */
@media (max-width: 1540px) and (min-width: 1101px) {
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53 {
        grid-template-columns: 24% minmax(0, 52%) 24% !important;
    }

    #alastar-site-chat.is-fullscreen-v51 .portal-chat-control-sidebar-v53 {
        grid-column: auto !important;
        display: flex !important;
        border-left: 1px solid rgba(68, 162, 249, .20) !important;
        border-top: 0 !important;
        max-height: 100% !important;
    }
}

/* Tablet/notebook estreito: duas áreas, controles abaixo, sem esmagar o compositor. */
@media (max-width: 1100px) and (min-width: 768px) {
    .portal-chat-workspace-v53 {
        grid-template-columns: minmax(220px, 30%) minmax(0, 1fr) !important;
    }

    .portal-chat-control-sidebar-v53 {
        grid-column: 1 / -1 !important;
    }

    #alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53 {
        grid-template-columns: minmax(220px, 30%) minmax(0, 1fr) !important;
        overflow-y: auto !important;
    }

    #alastar-site-chat.is-fullscreen-v51 .portal-chat-control-sidebar-v53 {
        grid-column: 1 / -1 !important;
        height: auto !important;
        max-height: 170px !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        border-left: 0 !important;
        border-top: 1px solid rgba(68, 162, 249, .20) !important;
    }
}

@media (max-width: 767px) {
    .portal-stage-v14 {
        padding-left: 5px !important;
        padding-right: 5px !important;
    }

    .portal-frame-v14 {
        width: 100% !important;
        padding-left: 7px !important;
        padding-right: 7px !important;
    }

    .portal-chat-workspace-v53 {
        min-height: 0 !important;
        grid-template-columns: 1fr !important;
    }

    .portal-chat-identity-sidebar-v54 {
        min-height: 50px;
        padding: 7px 8px 7px 10px;
        grid-template-columns: minmax(0, 1fr) 36px;
    }

    .portal-chat-nick-side-button-v54 {
        width: 36px;
        height: 36px;
    }

    #alastar-site-chat .portal-chat-nick-menu-side-v54 {
        left: 8px !important;
        right: 8px !important;
        top: calc(100% + 6px) !important;
        width: auto !important;
    }

    .portal-chat-composer-v53 {
        padding: 7px !important;
    }

    .portal-chat-composer-row-v53 {
        grid-template-columns: auto minmax(0, 1fr) 44px !important;
        grid-template-areas: "tools input send" !important;
        gap: 6px !important;
    }

    .portal-chat-composer-buttons-v53 {
        grid-template-columns: repeat(2, 34px) !important;
        gap: 4px !important;
    }

    #alastar-site-chat .portal-chat-action-button-v53 {
        width: 34px !important;
        height: 34px !important;
        min-width: 34px !important;
        font-size: .84rem !important;
    }

    #alastar-site-chat .portal-chat-input-v53 {
        min-height: 46px !important;
        height: 46px !important;
        padding: 11px 10px !important;
        font-size: .75rem !important;
    }

    .portal-chat-send-v53 {
        width: 44px !important;
        min-width: 44px !important;
        height: 46px !important;
        padding: 0 !important;
    }

    .portal-chat-send-v53 span {
        display: none !important;
    }

    #alastar-site-chat.is-fullscreen-v51 {
        padding: 4px !important;
    }

    #alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53 {
        height: 100% !important;
        grid-template-columns: 1fr !important;
        grid-template-rows: auto minmax(420px, 1fr) auto !important;
        overflow-y: auto !important;
    }

    #alastar-site-chat.is-fullscreen-v51 .portal-chat-sidebar-v53,
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-main-v53,
    #alastar-site-chat.is-fullscreen-v51 .portal-chat-control-sidebar-v53 {
        height: auto !important;
        max-height: none !important;
    }
}

@media (max-width: 430px) {
    .portal-chat-composer-row-v53 {
        grid-template-columns: auto minmax(0, 1fr) 40px !important;
    }

    .portal-chat-composer-buttons-v53 {
        grid-template-columns: repeat(2, 31px) !important;
        gap: 3px !important;
    }

    #alastar-site-chat .portal-chat-action-button-v53 {
        width: 31px !important;
        height: 31px !important;
        min-width: 31px !important;
    }

    .portal-chat-send-v53 {
        width: 40px !important;
        min-width: 40px !important;
    }
}


/* V54 ajuste final: no site normal, prioriza a largura da conversa em desktops médios. */
@media (max-width: 1540px) and (min-width: 1101px) {
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53 {
        grid-template-columns: minmax(205px, 26%) minmax(0, 1fr) !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-control-sidebar-v53 {
        grid-column: 1 / -1 !important;
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 8px !important;
        border-left: 0 !important;
        border-top: 1px solid rgba(68, 162, 249, .20) !important;
    }
}


/* =========================================================
   V58 - Modal de criação de sala mais compacto e explícito
   ========================================================= */
#alastar-room-create-dialog .portal-room-dialog-card-v33 {
    width: min(460px, calc(100vw - 24px));
    padding: 20px 22px;
}

#alastar-room-create-dialog .portal-room-dialog-icon-v33 {
    width: 40px;
    height: 40px;
    margin-bottom: 8px;
    border-radius: 12px;
}

#alastar-room-create-dialog .portal-room-dialog-card-v33 > p {
    margin-bottom: 13px;
    font-size: .80rem;
    line-height: 1.48;
}

/* O aviso de voz possui apenas duas colunas. O V34 reservava uma
   terceira coluna para checkbox e fazia o texto ficar estreito/vertical. */
#alastar-room-create-dialog .portal-room-voice-note-v51 {
    margin: 4px 0 2px;
    padding: 8px 10px;
    min-height: 52px;
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 9px;
    align-items: center;
    border-radius: 10px;
    cursor: default;
}

#alastar-room-create-dialog .portal-room-voice-note-v51 .portal-room-voice-check-v34 {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    font-size: .76rem;
}

#alastar-room-create-dialog .portal-room-voice-note-v51 > span:last-child {
    min-width: 0;
    display: grid;
    gap: 1px;
}

#alastar-room-create-dialog .portal-room-voice-note-v51 strong {
    font-size: .78rem;
    line-height: 1.2;
    white-space: normal;
}

#alastar-room-create-dialog .portal-room-voice-note-v51 small {
    font-size: .68rem;
    line-height: 1.28;
    white-space: normal;
}

/* A opção informa imediatamente o tipo de sala que será criado. */
#alastar-room-create-dialog #alastar-room-open-option {
    padding: 9px 11px;
    min-height: 54px;
}

#alastar-room-create-dialog #alastar-room-open-option strong {
    font-size: .80rem;
}

#alastar-room-create-dialog #alastar-room-open-option small {
    font-size: .69rem;
    line-height: 1.28;
}

/* Controles de sala fixa ficam restritos ao fluxo Staff acionado pelo
   botão administrativo. O jogador comum não recebe esse bloco visual. */
#alastar-room-create-dialog .portal-room-fixed-controls-v51 {
    margin-top: 5px;
    padding-top: 5px;
}

#alastar-room-create-dialog .portal-room-timeout-note-v33 {
    margin-top: 9px;
    padding: 8px 9px;
    font-size: .68rem;
}

@media (max-width: 575px) {
    #alastar-room-create-dialog {
        padding: 10px;
    }
    #alastar-room-create-dialog .portal-room-dialog-card-v33 {
        width: 100%;
        padding: 17px 16px;
        border-radius: 15px;
        max-height: calc(100dvh - 20px);
        overflow-y: auto;
    }
    #alastar-room-create-dialog .portal-room-voice-note-v51 {
        grid-template-columns: 30px minmax(0, 1fr);
        padding: 7px 9px;
        min-height: 48px;
    }
}

/* =========================================================
   V58 - COMPACTAÇÃO DAS SALAS + LEGIBILIDADE GLOBAL
   Objetivo: usar menos altura na lista de salas e aproximar
   a nitidez/tamanho dos textos ao padrão dos painéis do portal.
   ========================================================= */

/* Renderização tipográfica consistente entre Chromium/Edge/Safari/iOS. */
html {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

body,
button,
input,
select,
textarea {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    font-kerning: normal;
}

.home-v14,
.portal-frame-v14,
#alastar-site-chat {
    font-synthesis: none;
}

/* Textos auxiliares do portal não devem ficar microscópicos. */
.portal-frame-v14 small,
.portal-frame-v14 .text-muted,
.portal-frame-v14 [class*="-meta"],
.portal-frame-v14 [class*="-subtitle"] {
    opacity: 1;
}

.server-status-main-v14 small,
.rate-feature-v14 small,
.composition-title-v14,
.city-ranking-city-v14 small,
.city-ranking-guild-v14 small,
.news-list-copy-v14 time,
.featured-news-copy-v14 time,
.player-rank-copy-v14 span {
    color: #c7b9a8 !important;
    font-size: max(.74rem, 11.5px) !important;
    line-height: 1.35 !important;
}

.portal-quick-nav-v14 a,
.server-stat-row-v14,
.composition-row-v14,
.news-list-row-v14,
.portal-login-body-v14,
.city-ranking-entry-v14 {
    font-weight: 600;
}

/* ---------- lista de salas: menos altura e melhor leitura ---------- */
#alastar-site-chat .portal-chat-roombar-v53 {
    gap: 5px !important;
    padding: 6px 7px 7px !important;
}

#alastar-site-chat .portal-chat-room-list-v53 {
    max-height: 168px !important;
    gap: 4px !important;
    padding-right: 3px !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-entry-v33 {
    gap: 3px !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 {
    min-height: 35px !important;
    height: 35px !important;
    padding: 4px 7px !important;
    grid-template-columns: 19px minmax(0, 1fr) auto auto auto !important;
    gap: 5px !important;
    border-radius: 7px !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 > i:first-child {
    width: 19px !important;
    font-size: .76rem !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 > span {
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    font-size: max(.76rem, 12px) !important;
    font-weight: 750 !important;
    letter-spacing: .005em;
}

#alastar-site-chat .portal-chat-room-count-v53 {
    min-width: 21px !important;
    height: 19px !important;
    padding-inline: 4px !important;
    font-size: max(.60rem, 10px) !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 em {
    min-width: 20px !important;
    min-height: 17px !important;
    padding: 1px 4px !important;
    font-size: max(.52rem, 9px) !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-voice-v34 {
    font-size: .68rem !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-close-v33 {
    width: 25px !important;
    height: 25px !important;
    min-width: 25px !important;
    font-size: .66rem !important;
    border-radius: 6px !important;
}

#alastar-site-chat .portal-chat-room-create-v53 {
    height: 34px !important;
    min-height: 34px !important;
    font-size: max(.72rem, 11.5px) !important;
}

/* ---------- chat: contraste e escala equivalentes aos painéis laterais ---------- */
#alastar-site-chat .portal-chat-section-head-v53 {
    min-height: 52px !important;
    padding: 8px 10px !important;
}

#alastar-site-chat .portal-chat-section-head-v53 small {
    color: #a9bdd2 !important;
    font-size: max(.64rem, 10.5px) !important;
    line-height: 1.25 !important;
}

#alastar-site-chat .portal-chat-section-head-v53 strong {
    color: #fff0cf !important;
    font-size: max(.83rem, 13px) !important;
    line-height: 1.2 !important;
}

#alastar-site-chat .portal-chat-members-head-v53 strong {
    color: #f8ecd6 !important;
    font-size: max(.75rem, 12px) !important;
}

#alastar-site-chat .portal-chat-members-head-v53 small,
#alastar-site-chat .portal-chat-members-panel-v53 .portal-voice-feedback-v34 {
    color: #a8bed3 !important;
    font-size: max(.64rem, 10.5px) !important;
    line-height: 1.35 !important;
}

#alastar-site-chat .portal-chat-members-list-v53 .portal-room-member-v51 {
    min-height: 34px !important;
    padding: 6px 7px !important;
}

#alastar-site-chat .portal-chat-members-list-v53 .portal-room-member-v51 strong {
    color: #f1f7fd !important;
    font-size: max(.75rem, 12px) !important;
    font-weight: 700 !important;
}

#alastar-site-chat .portal-chat-members-list-v53 .portal-room-member-v51 small {
    color: #a5b8ca !important;
    font-size: max(.62rem, 10px) !important;
}

#alastar-site-chat .portal-chat-room-title-copy-v53 strong {
    color: #fff5e8 !important;
    font-size: max(.92rem, 14px) !important;
}

#alastar-site-chat .portal-chat-room-title-copy-v53 small,
#alastar-site-chat .portal-chat-room-members-v53 {
    color: #b9d1e6 !important;
    font-size: max(.64rem, 10.5px) !important;
}

#alastar-site-chat .portal-chat-room-badge-v53 {
    font-size: max(.56rem, 9.5px) !important;
    line-height: 1 !important;
}

#alastar-site-chat .portal-chat-announcement-copy-v48 small,
#alastar-site-chat .portal-chat-announcement-copy-v48 span {
    color: #d5c59f !important;
    font-size: max(.64rem, 10.5px) !important;
}

#alastar-site-chat .portal-chat-announcement-copy-v48 strong {
    color: #fff0b9 !important;
    font-size: max(.78rem, 12.5px) !important;
    line-height: 1.35 !important;
}

#alastar-site-chat .portal-chat-message-v19 {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

#alastar-site-chat .portal-chat-player-name-v45 {
    color: #d8efff !important;
    font-size: max(.79rem, 12.5px) !important;
    font-weight: 800 !important;
}

#alastar-site-chat .portal-chat-message-head-v19 time {
    color: #a4b5c6 !important;
    font-size: max(.64rem, 10.5px) !important;
}

#alastar-site-chat .portal-chat-message-v19 p {
    color: #f7f9fc !important;
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    font-size: max(.86rem, 13.5px) !important;
    font-weight: 500 !important;
    line-height: 1.55 !important;
    letter-spacing: .002em;
}

#alastar-site-chat .portal-chat-tag-v45,
#alastar-site-chat .portal-chat-staff-custom-tag-v48 {
    font-size: max(.55rem, 9px) !important;
    line-height: 1 !important;
}

#alastar-site-chat .portal-chat-gift-copy-v52 strong {
    font-size: max(.80rem, 12.5px) !important;
}

#alastar-site-chat .portal-chat-gift-copy-v52 > span {
    color: #f1f6fb !important;
    font-size: max(.76rem, 12px) !important;
    line-height: 1.45 !important;
}

#alastar-site-chat .portal-chat-control-card-v53 > header,
#alastar-site-chat .portal-chat-control-info-v53 > header {
    font-size: max(.72rem, 11.5px) !important;
    line-height: 1.25 !important;
}

#alastar-site-chat .portal-chat-control-button-v53 {
    min-height: 38px !important;
    color: #e9f5ff !important;
    font-size: max(.70rem, 11.5px) !important;
    font-weight: 700 !important;
}

#alastar-site-chat .portal-chat-control-info-v53 p {
    color: #b1c3d4 !important;
    font-size: max(.68rem, 11px) !important;
    line-height: 1.48 !important;
}

#alastar-site-chat .portal-chat-identity-copy-v54 > small {
    color: #a9bdd0 !important;
    font-size: max(.63rem, 10.5px) !important;
}

#alastar-site-chat .portal-chat-identity-copy-v54 .portal-chat-identity-v19 {
    color: #ffe18a !important;
    font-size: max(.80rem, 12.5px) !important;
}

#alastar-site-chat .portal-chat-input-v53 {
    color: #ffffff !important;
    font-size: max(.86rem, 13.5px) !important;
    font-weight: 500 !important;
}

#alastar-site-chat .portal-chat-input-v53::placeholder {
    color: #a4b3c2 !important;
    opacity: 1 !important;
}

#alastar-site-chat .portal-chat-send-v53 {
    font-size: max(.75rem, 12px) !important;
    font-weight: 800 !important;
}

#alastar-site-chat .portal-chat-actions-v53 .portal-chat-counter-v19,
#alastar-site-chat .portal-chat-actions-v53 .portal-chat-feedback-v19 {
    color: #aebfd0 !important;
    font-size: max(.63rem, 10.5px) !important;
    line-height: 1.3 !important;
}

/* Modal: campos e informações legíveis sem voltar a ocupar muita altura. */
#alastar-site-chat .portal-room-dialog-card-v33 label,
#alastar-site-chat .portal-room-dialog-card-v33 input,
#alastar-site-chat .portal-room-dialog-card-v33 select,
#alastar-site-chat .portal-room-dialog-card-v33 button {
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

#alastar-room-create-dialog .portal-room-dialog-card-v33 > p {
    color: #b7c7d6 !important;
    font-size: max(.76rem, 12px) !important;
}

#alastar-room-create-dialog .portal-room-dialog-card-v33 label:not(.portal-room-open-option-v48) {
    color: #e8d2a9 !important;
    font-size: max(.73rem, 11.5px) !important;
    font-weight: 700 !important;
}

#alastar-room-create-dialog .portal-room-voice-note-v51 strong,
#alastar-room-create-dialog #alastar-room-open-option strong {
    color: #f8f4eb !important;
    font-size: max(.76rem, 12px) !important;
}

#alastar-room-create-dialog .portal-room-voice-note-v51 small,
#alastar-room-create-dialog #alastar-room-open-option small,
#alastar-room-create-dialog .portal-room-timeout-note-v33 {
    color: #afc0d0 !important;
    font-size: max(.66rem, 10.5px) !important;
    line-height: 1.35 !important;
}

#alastar-room-create-dialog input[type="text"],
#alastar-room-create-dialog input[type="password"] {
    min-height: 42px !important;
    color: #fff !important;
    font-size: max(.80rem, 13px) !important;
}

/* Mobile: legível, sem zoom automático no Safari e com alvos de toque corretos. */
@media (max-width: 767px) {
    .portal-stage-v14,
    .portal-frame-v14 {
        font-size: 16px;
    }

    #alastar-site-chat .portal-chat-room-list-v53 {
        max-height: 145px !important;
    }

    #alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 {
        min-height: 39px !important;
        height: 39px !important;
        padding: 5px 8px !important;
    }

    #alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-close-v33 {
        width: 30px !important;
        height: 30px !important;
        min-width: 30px !important;
    }

    #alastar-site-chat .portal-chat-input-v53,
    #alastar-room-create-dialog input[type="text"],
    #alastar-room-create-dialog input[type="password"],
    #alastar-room-create-dialog select {
        font-size: 16px !important;
    }

    #alastar-site-chat .portal-chat-message-v19 p {
        font-size: 14px !important;
    }

    #alastar-site-chat .portal-chat-player-name-v45,
    #alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 > span,
    #alastar-site-chat .portal-chat-members-list-v53 .portal-room-member-v51 strong {
        font-size: 12.5px !important;
    }
}


/* ============================================================
   V59 - PERFIL, FULLSCREEN ESTÁVEL, SALA PRIVADA E LEGIBILIDADE AUTH
   ============================================================ */
.alastar-brand-popularity-v59{display:flex;align-items:center;gap:8px;min-width:0}
.nav-popularity-v59{display:inline-flex;align-items:center;gap:6px;min-width:0;padding:3px 7px 3px 3px;border:1px solid rgba(245,195,77,.28);border-radius:10px;background:linear-gradient(180deg,rgba(18,27,41,.86),rgba(5,12,22,.94));box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 5px 18px rgba(0,0,0,.24)}
.nav-popularity-v59>img{width:36px;height:36px;object-fit:contain;filter:drop-shadow(0 0 7px rgba(255,196,61,.28))}
.nav-popularity-v59>span{display:grid;line-height:1.08}.nav-popularity-v59 b{color:#ffe29a;font:800 10px/1.1 'Inter',sans-serif;white-space:nowrap}.nav-popularity-v59 small{color:#9db2c5;font:700 9px/1.1 'Inter',sans-serif}

.portal-chat-character-profile-v59{flex:0 0 auto;padding:7px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;border-bottom:1px solid rgba(58,151,235,.17);background:linear-gradient(180deg,rgba(7,25,42,.97),rgba(3,14,25,.98))}
.portal-chat-character-profile-v59[hidden]{display:none!important}
.portal-chat-profile-chip-v59{min-width:0;min-height:39px;display:flex;align-items:center;gap:6px;padding:4px 6px;border:1px solid rgba(68,158,241,.18);border-radius:7px;background:rgba(8,25,41,.78)}
.portal-chat-profile-chip-v59>img,.portal-chat-cape-icon-v59{flex:0 0 28px;width:28px;height:28px;object-fit:contain;border-radius:6px;background:rgba(2,10,18,.72);border:1px solid rgba(255,204,99,.18)}
.portal-chat-cape-icon-v59{display:grid;place-items:center}.portal-chat-cape-icon-v59 svg{width:21px;height:25px;overflow:visible}.portal-chat-cape-icon-v59 svg path:first-child{fill:var(--cape-color,#b8c1cc);stroke:rgba(255,255,255,.7);stroke-width:1}.portal-chat-cape-icon-v59 svg path:last-child{fill:#d8b35d}
.portal-chat-profile-chip-v59>span{min-width:0;display:grid}.portal-chat-profile-chip-v59 small,.portal-chat-profile-level-v59 small{color:#8fa9bf;font:800 8.5px/1.05 'Inter',sans-serif;text-transform:uppercase;letter-spacing:.05em}.portal-chat-profile-chip-v59 strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f4f8fc;font:750 10.5px/1.2 'Inter',sans-serif}
.portal-chat-profile-level-v59{grid-column:1/-1;min-height:27px;display:flex;align-items:center;justify-content:space-between;padding:4px 8px;border:1px solid rgba(241,176,62,.20);border-radius:7px;background:linear-gradient(90deg,rgba(91,57,11,.2),rgba(6,20,35,.75))}.portal-chat-profile-level-v59 strong{color:#ffd56d;font:900 13px/1 'Inter',sans-serif}

/* Modo normal: a sala privada nunca aumenta o painel além da área útil. */
@media (min-width:1101px){
 #alastar-site-chat.is-private-room-v59:not(.is-fullscreen-v51) .portal-chat-workspace-v53{height:clamp(510px,calc(100dvh - 250px),635px)!important;min-height:0!important;max-height:635px!important;overflow:hidden!important}
 #alastar-site-chat.is-private-room-v59:not(.is-fullscreen-v51) .portal-chat-sidebar-v53,#alastar-site-chat.is-private-room-v59:not(.is-fullscreen-v51) .portal-chat-main-v53,#alastar-site-chat.is-private-room-v59:not(.is-fullscreen-v51) .portal-chat-control-sidebar-v53{min-height:0!important;height:100%!important;max-height:100%!important;overflow:hidden!important}
 #alastar-site-chat.is-private-room-v59:not(.is-fullscreen-v51) .portal-chat-main-v53{display:flex!important;flex-direction:column!important}
 #alastar-site-chat.is-private-room-v59:not(.is-fullscreen-v51) .portal-chat-messages-v53{flex:1 1 0!important;min-height:0!important;height:auto!important;overflow-y:auto!important}
 #alastar-site-chat.is-private-room-v59:not(.is-fullscreen-v51) .portal-chat-control-sidebar-v53{overflow-y:auto!important;align-content:start!important}
 #alastar-site-chat.is-private-room-v59:not(.is-fullscreen-v51) .portal-chat-members-panel-v53{flex:1 1 0!important;min-height:0!important;overflow:hidden!important}
 #alastar-site-chat.is-private-room-v59:not(.is-fullscreen-v51) .portal-chat-members-list-v53{min-height:0!important;overflow-y:auto!important}
 #alastar-site-chat.has-private-controls-v59:not(.is-fullscreen-v51) .portal-chat-control-card-v53{flex:0 0 auto!important}
}

/* Fullscreen: root é movido para body pelo JS; nada fica atrás do navbar. */
html.chat-fullscreen-open-v51,html.chat-fullscreen-open-v51 body,body.chat-fullscreen-open-v51{overflow:hidden!important;overscroll-behavior:none!important}
body>#alastar-site-chat.is-fullscreen-v51{position:fixed!important;z-index:2147483000!important;left:0!important;right:0!important;top:var(--alastar-chat-fullscreen-top,0px)!important;bottom:auto!important;width:100vw!important;height:var(--alastar-chat-fullscreen-height,100dvh)!important;max-width:none!important;max-height:none!important;margin:0!important;padding:8px!important;border-radius:0!important;display:flex!important;flex-direction:column!important;box-sizing:border-box!important;overflow:hidden!important}
body>#alastar-site-chat.is-fullscreen-v51>.portal-box-title-v14{display:flex!important;visibility:visible!important;flex:0 0 44px!important;min-height:44px!important;margin:0 0 5px!important}
body>#alastar-site-chat.is-fullscreen-v51 .portal-community-tabs-v31{display:flex!important;flex:0 0 50px!important;min-height:50px!important;margin:0!important}
body>#alastar-site-chat.is-fullscreen-v51 #alastar-panel-chat{display:flex!important;flex:1 1 0!important;min-height:0!important;height:0!important;overflow:hidden!important}
body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-panel-v53{min-height:0!important;overflow:hidden!important}
body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53{display:grid!important;grid-template-columns:minmax(230px,23%) minmax(0,54%) minmax(220px,23%)!important;grid-template-rows:minmax(0,1fr)!important;flex:1 1 0!important;min-height:0!important;height:100%!important;max-height:100%!important;overflow:hidden!important;align-items:stretch!important}
body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-sidebar-v53,body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-main-v53,body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-control-sidebar-v53{min-width:0!important;min-height:0!important;height:100%!important;max-height:100%!important;overflow:hidden!important;box-sizing:border-box!important}
body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-main-v53{display:flex!important;flex-direction:column!important}
body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-messages-v53{display:flex!important;flex-direction:column!important;flex:1 1 0!important;min-width:0!important;min-height:0!important;height:auto!important;max-height:none!important;overflow-y:auto!important;overflow-x:hidden!important;scrollbar-gutter:stable!important}
body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-message-v19,body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-gift-card-v52{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-composer-v53,body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-status-v51,body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-announcement-v48{flex:0 0 auto!important;min-width:0!important}
body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-sidebar-v53{display:flex!important;flex-direction:column!important}
body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-roombar-v53{flex:0 0 auto!important}.portal-chat-character-profile-v59{max-height:132px;overflow:auto}
body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-members-panel-v53{flex:1 1 0!important;min-height:0!important;overflow:hidden!important}
body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-members-list-v53{flex:1 1 0!important;min-height:0!important;overflow-y:auto!important}
body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-control-sidebar-v53{display:flex!important;flex-direction:column!important;gap:7px!important;overflow-y:auto!important;align-content:flex-start!important}

/* Login/cadastro modal na Home: mesma paleta do Alastar e leitura forte. */
#loginModal .al-auth-modal{color:#f6f9fd!important;background:linear-gradient(155deg,#071524 0%,#08111c 56%,#201109 100%)!important;border:1px solid rgba(255,151,51,.72)!important;box-shadow:0 26px 80px rgba(0,0,0,.72),0 0 0 1px rgba(42,145,238,.18)!important}
#loginModal .modal-header{background:linear-gradient(90deg,rgba(23,67,108,.28),rgba(63,30,7,.30))!important;border-bottom:1px solid rgba(244,177,62,.30)!important}
#loginModal .al-kicker,#loginModal .modal-title,#loginModal .form-label{color:#ffd98a!important;opacity:1!important;text-shadow:0 1px 0 #000}
#loginModal .al-auth-tabs .nav-link{color:#c5d8e9!important;background:#08182a!important;border-color:rgba(67,153,234,.28)!important;font-weight:750!important}#loginModal .al-auth-tabs .nav-link.active{color:#fff0bd!important;background:linear-gradient(180deg,#12385c,#0b2238)!important;border-bottom-color:#f3b441!important}
#loginModal .al-input-group{border-radius:10px!important;overflow:hidden!important;box-shadow:0 0 0 1px rgba(47,141,224,.22)!important}
#loginModal .al-input-group .input-group-text{color:#ffbd58!important;background:#0c2035!important;border-color:#2c75aa!important}
#loginModal .al-input-group .form-control{min-height:50px!important;color:#fff!important;-webkit-text-fill-color:#fff!important;caret-color:#ffc55b!important;background:#071422!important;border-color:#2c75aa!important;font:600 16px/1.3 'Inter',sans-serif!important;opacity:1!important}
#loginModal .al-input-group .form-control::placeholder{color:#91a9bf!important;-webkit-text-fill-color:#91a9bf!important;opacity:1!important}#loginModal .al-input-group .form-control:focus{background:#0a1b2d!important;border-color:#f59b3b!important;box-shadow:inset 0 0 0 1px rgba(255,170,69,.32)!important}

@media(max-width:1199px){.nav-popularity-v59>span{display:none}.nav-popularity-v59{padding:2px}.nav-popularity-v59>img{width:32px;height:32px}}
@media(max-width:1100px) and (min-width:768px){body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53{grid-template-columns:minmax(210px,30%) minmax(0,70%)!important}.portal-chat-control-sidebar-v53{grid-column:1/-1!important;max-height:155px!important}}
@media(max-width:767px){
 .alastar-brand-popularity-v59{gap:3px}.nav-popularity-v59>img{width:29px;height:29px}
 .portal-chat-character-profile-v59{grid-template-columns:1fr 1fr;padding:6px;max-height:none}.portal-chat-profile-chip-v59 strong{font-size:11px}.portal-chat-profile-level-v59 strong{font-size:13px}
 body>#alastar-site-chat.is-fullscreen-v51{padding:4px!important}
 body>#alastar-site-chat.is-fullscreen-v51>.portal-box-title-v14{flex-basis:40px!important;min-height:40px!important}
 body>#alastar-site-chat.is-fullscreen-v51 .portal-community-tabs-v31{flex-basis:46px!important;min-height:46px!important}
 body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53{display:flex!important;flex-direction:column!important;overflow-y:auto!important;overflow-x:hidden!important}
 body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-sidebar-v53,body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-main-v53,body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-control-sidebar-v53{height:auto!important;max-height:none!important;flex:0 0 auto!important;overflow:visible!important}
 body>#alastar-site-chat.is-fullscreen-v51 .portal-chat-main-v53{min-height:58dvh!important}.portal-chat-messages-v53{min-height:320px!important}
 #loginModal .modal-body{padding:18px!important}#loginModal .al-input-group .form-control{font-size:16px!important}
}

/* ============================================================
   V60 - EMBLEMA DE POPULARIDADE + TOOLTIP
   ============================================================ */
.alastar-brand-popularity-v59{
    display:flex;
    align-items:center;
    gap:10px;
    min-width:0;
}
.nav-popularity-v60{
    position:relative;
    z-index:7;
    display:inline-grid;
    place-items:center;
    flex:0 0 44px;
    width:44px;
    height:44px;
    padding:3px;
    border:1px solid rgba(245,195,77,.42);
    border-radius:11px;
    background:linear-gradient(180deg,rgba(18,27,41,.92),rgba(5,12,22,.98));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 5px 18px rgba(0,0,0,.30);
    cursor:help;
    outline:none;
}
.nav-popularity-v60>img{
    display:block;
    width:36px;
    height:36px;
    max-width:100%;
    max-height:100%;
    object-fit:contain;
    image-rendering:auto;
    filter:drop-shadow(0 0 7px rgba(255,196,61,.36));
}
.nav-popularity-v60:focus-visible{
    border-color:#ffd76b;
    box-shadow:0 0 0 3px rgba(255,192,58,.18),0 5px 18px rgba(0,0,0,.30);
}
.nav-popularity-tooltip-v60{
    position:absolute;
    top:calc(100% + 10px);
    left:50%;
    z-index:9999;
    width:max-content;
    min-width:220px;
    max-width:290px;
    transform:translate(-50%,-5px);
    padding:10px 12px;
    border:1px solid rgba(255,198,69,.48);
    border-radius:10px;
    background:linear-gradient(180deg,rgba(12,24,39,.985),rgba(4,10,18,.995));
    box-shadow:0 12px 34px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.05);
    color:#dbe9f5;
    font-family:'Inter',sans-serif;
    line-height:1.32;
    text-align:left;
    pointer-events:none;
    opacity:0;
    visibility:hidden;
    transition:opacity .14s ease,transform .14s ease,visibility .14s ease;
}
.nav-popularity-tooltip-v60::before{
    content:'';
    position:absolute;
    left:50%;
    bottom:100%;
    transform:translateX(-50%);
    border:6px solid transparent;
    border-bottom-color:rgba(255,198,69,.48);
}
.nav-popularity-tooltip-v60 strong{
    display:block;
    margin-bottom:3px;
    color:#ffe39a;
    font:800 13px/1.25 'Inter',sans-serif;
}
.nav-popularity-tooltip-v60>span{
    display:block;
    color:#fff;
    font:700 12px/1.3 'Inter',sans-serif;
}
.nav-popularity-tooltip-v60 small{
    display:block;
    margin-top:2px;
    color:#8fd0ff;
    font:700 11px/1.3 'Inter',sans-serif;
}
.nav-popularity-tooltip-v60 em{
    display:block;
    margin-top:5px;
    color:#b8c9d8;
    font:500 11px/1.35 'Inter',sans-serif;
    font-style:normal;
    white-space:normal;
}
.nav-popularity-v60:hover .nav-popularity-tooltip-v60,
.nav-popularity-v60:focus .nav-popularity-tooltip-v60,
.nav-popularity-v60:focus-within .nav-popularity-tooltip-v60{
    opacity:1;
    visibility:visible;
    transform:translate(-50%,0);
}
@media(max-width:1399.98px){
    .nav-popularity-v60{width:40px;height:40px;flex-basis:40px}
    .nav-popularity-v60>img{width:33px;height:33px}
}
@media(max-width:767.98px){
    .alastar-brand-popularity-v59{gap:5px}
    .nav-popularity-v60{width:36px;height:36px;flex-basis:36px;border-radius:9px;padding:2px}
    .nav-popularity-v60>img{width:31px;height:31px}
    .nav-popularity-tooltip-v60{
        left:0;
        min-width:205px;
        max-width:min(260px,calc(100vw - 24px));
        transform:translate(0,-5px);
    }
    .nav-popularity-tooltip-v60::before{left:18px;transform:none}
    .nav-popularity-v60:hover .nav-popularity-tooltip-v60,
    .nav-popularity-v60:focus .nav-popularity-tooltip-v60,
    .nav-popularity-v60:focus-within .nav-popularity-tooltip-v60{transform:translate(0,0)}
}

/* =========================================================
   V61 — HISTÓRICO DO CHAT: CARDS INTEIROS DURANTE A ROLAGEM
   ========================================================= */
#alastar-site-chat .portal-chat-messages-v53 {
    padding: 14px 14px 18px !important;
    scroll-padding-top: 14px !important;
    scroll-padding-bottom: 18px !important;
    overscroll-behavior: contain;
    align-content: flex-start !important;
}

#alastar-site-chat .portal-chat-messages-v53 > .portal-chat-message-v19 {
    flex: 0 0 auto !important;
    width: calc(100% - 2px) !important;
    max-width: calc(100% - 2px) !important;
    margin-left: 1px !important;
    margin-right: 1px !important;
    box-sizing: border-box !important;
    transform: none !important;
}

#alastar-site-chat .portal-chat-messages-v53 > .portal-chat-message-v19:first-child {
    margin-top: 2px !important;
}

#alastar-site-chat .portal-chat-messages-v53 > .portal-chat-message-v19:last-child {
    margin-bottom: 2px !important;
}

/* O badge de popularidade usa margem negativa para ficar maior que a tag.
   Reservamos espaço no cabeçalho para ele não cortar a borda do card. */
#alastar-site-chat .portal-chat-message-head-v19 {
    min-height: 30px !important;
    padding-top: 2px !important;
    padding-bottom: 2px !important;
    overflow: visible !important;
}

/* Fullscreen e sala privada usam o mesmo espaçamento, evitando que o primeiro
   card fique escondido ao redimensionar/recalcular o painel. */
body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-messages-v53,
#alastar-site-chat.is-private-room-v59:not(.is-fullscreen-v51) .portal-chat-messages-v53 {
    padding-top: 14px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    padding-bottom: 18px !important;
    scroll-padding-block: 14px 18px !important;
}

@media (max-width: 767.98px) {
    #alastar-site-chat .portal-chat-messages-v53 {
        padding: 11px 10px 15px !important;
        scroll-padding-block: 11px 15px !important;
    }
    #alastar-site-chat .portal-chat-messages-v53 > .portal-chat-message-v19 {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

/* =========================================================
   V62 — SALAS MAIS VISÍVEIS SEM AUMENTAR O PAINEL
   ========================================================= */
#alastar-site-chat .portal-chat-room-list-v53 {
    max-height: 168px !important;
    gap: 5px !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    align-content: start !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-entry-v33 {
    min-height: 46px !important;
    gap: 4px !important;
    align-items: stretch !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 {
    min-height: 46px !important;
    height: 46px !important;
    padding: 5px 8px !important;
    grid-template-columns: 20px minmax(0, 1fr) auto auto auto !important;
    gap: 6px !important;
    align-items: center !important;
}

#alastar-site-chat .portal-chat-room-copy-v62 {
    min-width: 0 !important;
    display: grid !important;
    gap: 2px !important;
    align-content: center !important;
    line-height: 1.05 !important;
}

#alastar-site-chat .portal-chat-room-copy-v62 > strong {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    color: #f5f8fb !important;
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    font-size: max(.76rem, 12px) !important;
    font-weight: 800 !important;
    line-height: 1.08 !important;
}

#alastar-site-chat .portal-chat-room-copy-v62 > small {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    color: #9fb9cf !important;
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    font-size: max(.59rem, 9.5px) !important;
    font-weight: 650 !important;
    line-height: 1.12 !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33.is-active .portal-chat-room-copy-v62 > strong {
    color: #fff4cd !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33.is-active .portal-chat-room-copy-v62 > small {
    color: #cbe8ff !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-close-v33 {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    align-self: center !important;
}

@media (max-width: 767.98px) {
    #alastar-site-chat .portal-chat-room-list-v53 {
        max-height: 190px !important;
    }
    #alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-entry-v33,
    #alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 {
        min-height: 48px !important;
        height: 48px !important;
    }
    #alastar-site-chat .portal-chat-room-copy-v62 > strong {
        font-size: 12.5px !important;
    }
    #alastar-site-chat .portal-chat-room-copy-v62 > small {
        font-size: 10px !important;
    }
}

/* ========================================================================== */
/* V63 - correção dos controles flutuantes no modo tela cheia                */
/* ========================================================================== */

/* O seletor de personagem antes abria para fora da coluna esquerda (V54),
   mas no fullscreen a coluna usa overflow:hidden para preservar o layout.
   Em V63 ele passa a abrir dentro da própria lateral, acima da lista de
   membros, sem ser recortado. */
#alastar-site-chat .portal-chat-nick-side-button-v54.is-active {
    color: #fff3bd !important;
    border-color: rgba(255, 218, 117, .82) !important;
    background: linear-gradient(180deg, rgba(120, 82, 20, .90), rgba(31, 36, 44, .96)) !important;
    box-shadow: 0 0 0 2px rgba(244, 193, 75, .08), inset 0 1px 0 rgba(255,255,255,.08) !important;
}

#alastar-site-chat .portal-chat-identity-sidebar-v54 {
    z-index: 60 !important;
    overflow: visible !important;
}

/* Abre dentro da coluna lateral em todos os modos. Isso também evita o mesmo
   recorte em salas privadas no modo normal, onde a sidebar é limitada. */
#alastar-site-chat #alastar-chat-nick-menu.portal-chat-nick-menu-side-v54 {
    left: 8px !important;
    right: 8px !important;
    top: calc(100% + 6px) !important;
    bottom: auto !important;
    width: auto !important;
    max-width: none !important;
    max-height: min(230px, 34dvh) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    z-index: 2147483200 !important;
    box-sizing: border-box !important;
}

#alastar-site-chat #alastar-chat-nick-menu.portal-chat-nick-menu-side-v54 label {
    font-size: 11px !important;
    line-height: 1.3 !important;
}

#alastar-site-chat #alastar-chat-nick-menu.portal-chat-nick-menu-side-v54 select {
    min-height: 42px !important;
    font-size: 13px !important;
}

/* Mantém os demais controles do chat acessíveis no fullscreen sem permitir
   que um popover seja encoberto pelo rodapé/composer. */
body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-composer-v53,
body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-identity-sidebar-v54 {
    position: relative !important;
}

body > #alastar-site-chat.is-fullscreen-v51 .portal-emoji-picker-v31,
body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-command-menu-v48 {
    z-index: 500 !important;
}

@media (max-width: 767px) {
    #alastar-site-chat #alastar-chat-nick-menu.portal-chat-nick-menu-side-v54 {
        left: 6px !important;
        right: 6px !important;
        top: calc(100% + 5px) !important;
        max-height: 210px !important;
    }

    #alastar-site-chat #alastar-chat-nick-menu.portal-chat-nick-menu-side-v54 select {
        font-size: 16px !important;
    }
}

/* ========================================================================== */
/* V65 - LAYOUT LATERAL ESTÁVEL / ALTURA ORIGINAL                            */
/* ========================================================================== */

/* Membro comum e dono usam a MESMA composição lateral:
   Salas -> Criar sala -> Falando como -> Na sala/membros. */
#alastar-site-chat .portal-chat-sidebar-v53 {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

#alastar-site-chat .portal-chat-sidebar-v53 > .portal-chat-section-head-v53 {
    order: initial !important;
    margin-top: 0 !important;
}

#alastar-site-chat .portal-chat-sidebar-v53 > .portal-chat-roombar-v53,
#alastar-site-chat .portal-chat-sidebar-v53 > .portal-chat-identity-sidebar-v54,
#alastar-site-chat .portal-chat-sidebar-v53 > .portal-chat-character-profile-v59,
#alastar-site-chat .portal-chat-sidebar-v53 > .portal-chat-members-panel-v53 {
    order: initial !important;
}

/* Volta à medida estável anterior. Os cards ficam visíveis sem obrigar o
   painel principal a crescer verticalmente. */
#alastar-site-chat .portal-chat-room-list-v53 {
    max-height: 190px !important;
    gap: 5px !important;
    padding-right: 3px !important;
    overflow-y: auto !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-entry-v33 {
    min-height: 46px !important;
    height: 46px !important;
    gap: 4px !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 {
    min-height: 46px !important;
    height: 46px !important;
    padding: 5px 8px !important;
    grid-template-columns: 20px minmax(0, 1fr) auto auto auto !important;
    gap: 6px !important;
    border-radius: 8px !important;
}

#alastar-site-chat .portal-chat-room-copy-v62 > strong {
    font-size: max(.76rem, 12px) !important;
    line-height: 1.08 !important;
}

#alastar-site-chat .portal-chat-room-copy-v62 > small {
    font-size: max(.59rem, 9.5px) !important;
    line-height: 1.12 !important;
}

#alastar-site-chat .portal-chat-room-count-v53 {
    min-width: 22px !important;
    height: 20px !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-close-v33 {
    width: 28px !important;
    min-width: 28px !important;
    height: 28px !important;
}

#alastar-site-chat .portal-chat-room-create-v53 {
    min-height: 36px !important;
    height: 36px !important;
}

/* Garante que o V64 não deixe a coluna direita ou o roombar forçando altura. */
#alastar-site-chat .portal-chat-workspace-v53 {
    min-height: 0 !important;
}

#alastar-site-chat .portal-chat-roombar-v53 {
    flex: 0 0 auto !important;
    min-height: 0 !important;
    max-height: none !important;
}

#alastar-site-chat .portal-chat-control-sidebar-v53 {
    min-height: 0 !important;
    max-height: 100% !important;
}

@media (max-width: 767.98px) {
    #alastar-site-chat .portal-chat-room-list-v53 {
        max-height: 180px !important;
    }
    #alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-entry-v33,
    #alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 {
        min-height: 46px !important;
        height: 46px !important;
    }
}

/* ========================================================================== */
/* V66 - DUAS SALAS VISÍVEIS + FALANDO COMO NO TOPO + ALTURA AJUSTADA       */
/* ========================================================================== */

/* A lista nunca consome mais que dois cards. A 3ª sala em diante fica no
   mesmo box e é acessada pela rolagem interna, para todos os perfis. */
#alastar-site-chat .portal-chat-room-list-v53,
body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-room-list-v53 {
    max-height: 97px !important; /* 46 + 5 gap + 46 */
    height: auto !important;
    min-height: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    scrollbar-gutter: stable !important;
    overscroll-behavior: contain !important;
    padding-right: 4px !important;
}

#alastar-site-chat .portal-chat-room-list-v53::-webkit-scrollbar {
    width: 6px !important;
}

#alastar-site-chat .portal-chat-room-list-v53::-webkit-scrollbar-thumb {
    border-radius: 999px !important;
    background: linear-gradient(180deg, rgba(62,175,255,.72), rgba(239,181,70,.58)) !important;
}

#alastar-site-chat .portal-chat-room-list-v53::-webkit-scrollbar-track {
    background: rgba(255,255,255,.025) !important;
}

/* Em desktop o seletor de personagem aproveita o espaço livre do cabeçalho,
   exatamente entre o resumo da sala/jogadores e os botões de gerenciamento. */
@media (min-width: 900px) {
    #alastar-site-chat .portal-chat-room-head-v53 {
        overflow: visible !important;
        position: relative !important;
        z-index: 80 !important;
    }

    #alastar-site-chat .portal-chat-identity-sidebar-v54.is-head-v66 {
        position: relative !important;
        z-index: 120 !important;
        flex: 0 1 clamp(160px, 19vw, 230px) !important;
        width: clamp(160px, 19vw, 230px) !important;
        min-width: 145px !important;
        min-height: 42px !important;
        height: 42px !important;
        margin: 0 2px 0 auto !important;
        padding: 4px 5px 4px 9px !important;
        grid-template-columns: minmax(0, 1fr) 32px !important;
        gap: 5px !important;
        border: 1px solid rgba(235, 178, 67, .28) !important;
        border-radius: 8px !important;
        background: linear-gradient(180deg, rgba(12, 34, 55, .97), rgba(6, 20, 34, .98)) !important;
        box-shadow: inset 0 1px 0 rgba(255,255,255,.035) !important;
        overflow: visible !important;
    }

    #alastar-site-chat .portal-chat-identity-sidebar-v54.is-head-v66 .portal-chat-identity-copy-v54 {
        gap: 1px !important;
    }

    #alastar-site-chat .portal-chat-identity-sidebar-v54.is-head-v66 .portal-chat-identity-copy-v54 > small {
        font-size: 8.5px !important;
        line-height: 1 !important;
        letter-spacing: .055em !important;
    }

    #alastar-site-chat .portal-chat-identity-sidebar-v54.is-head-v66 .portal-chat-identity-v19 {
        font-size: 11.5px !important;
        line-height: 1.1 !important;
    }

    #alastar-site-chat .portal-chat-identity-sidebar-v54.is-head-v66 .portal-chat-nick-side-button-v54 {
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        border-radius: 7px !important;
    }

    #alastar-site-chat .portal-chat-identity-sidebar-v54.is-head-v66 #alastar-chat-nick-menu {
        left: auto !important;
        right: 0 !important;
        top: calc(100% + 6px) !important;
        width: min(260px, 34vw) !important;
        min-width: 210px !important;
        max-height: 240px !important;
        z-index: 2147483200 !important;
    }

    /* Aumenta somente até o limite útil da janela. O valor é calculado pelo JS,
       então o painel termina próximo ao rodapé visível e não cria scroll da página. */
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53,
    #alastar-site-chat.is-private-room-v59:not(.is-fullscreen-v51) .portal-chat-workspace-v53 {
        height: var(--alastar-chat-normal-height-v66, 660px) !important;
        min-height: 0 !important;
        max-height: var(--alastar-chat-normal-height-v66, 660px) !important;
        overflow: hidden !important;
        align-items: stretch !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-sidebar-v53,
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-main-v53,
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-control-sidebar-v53 {
        min-height: 0 !important;
        height: 100% !important;
        max-height: 100% !important;
        box-sizing: border-box !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-main-v53 {
        display: flex !important;
        flex-direction: column !important;
        overflow: hidden !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-messages-v53 {
        flex: 1 1 0 !important;
        min-height: 0 !important;
        height: auto !important;
        overflow-y: auto !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-members-panel-v53 {
        flex: 1 1 0 !important;
        min-height: 0 !important;
        overflow: hidden !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-members-list-v53 {
        flex: 1 1 0 !important;
        min-height: 0 !important;
        overflow-y: auto !important;
    }
}

/* Em tablet/celular o "Falando como" volta ao bloco lateral tradicional para
   não comprimir o cabeçalho da sala. A regra de duas salas permanece. */
@media (max-width: 899.98px) {
    #alastar-site-chat .portal-chat-room-list-v53,
    body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-room-list-v53 {
        max-height: 97px !important;
    }
}


/* =========================================================
   V67 — PERFIL DO PERSONAGEM DEPOIS DAS TAGS NAS MENSAGENS
   ========================================================= */
#alastar-site-chat .portal-chat-character-meta-v67 {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    flex: 0 0 auto;
    min-width: 0;
    white-space: nowrap;
}

#alastar-site-chat .portal-chat-character-cape-v67,
#alastar-site-chat .portal-chat-character-guild-v67,
#alastar-site-chat .portal-chat-character-class-v67,
#alastar-site-chat .portal-chat-character-evolution-v67 {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 24px;
    min-height: 24px;
    border-radius: 6px;
    border: 1px solid rgba(112, 183, 241, .28);
    background: linear-gradient(180deg, rgba(18, 44, 69, .96), rgba(6, 20, 34, .96));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 2px 6px rgba(0,0,0,.24);
    box-sizing: border-box;
    overflow: hidden;
}

#alastar-site-chat .portal-chat-character-cape-v67 {
    width: 24px;
    flex: 0 0 24px;
    color: var(--character-cape-color, #b8c1cc);
    border-color: color-mix(in srgb, var(--character-cape-color, #b8c1cc) 64%, transparent);
    text-shadow: 0 0 6px color-mix(in srgb, var(--character-cape-color, #b8c1cc) 55%, transparent);
}
#alastar-site-chat .portal-chat-character-cape-v67 > i { font-size: 13px; line-height: 1; }

#alastar-site-chat .portal-chat-character-guild-v67 { width: 25px; flex: 0 0 25px; padding: 2px; }
#alastar-site-chat .portal-chat-character-guild-v67 > img {
    display: block;
    width: 19px;
    height: 19px;
    object-fit: contain;
    image-rendering: auto;
}

#alastar-site-chat .portal-chat-character-class-v67 {
    min-width: 41px;
    padding: 2px 5px 2px 2px;
    gap: 3px;
    border-color: rgba(74, 174, 255, .42);
}
#alastar-site-chat .portal-chat-character-class-v67 > img,
#alastar-site-chat .portal-chat-character-evolution-v67 > img {
    display: block;
    width: 20px;
    height: 20px;
    object-fit: contain;
    image-rendering: auto;
}
#alastar-site-chat .portal-chat-character-class-v67 > b {
    color: #d7efff;
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 9px;
    font-weight: 900;
    line-height: 1;
    letter-spacing: .02em;
}

#alastar-site-chat .portal-chat-character-evolution-v67 {
    width: 25px;
    flex: 0 0 25px;
    padding: 2px;
    border-color: rgba(240, 183, 68, .42);
}

#alastar-site-chat .portal-chat-character-level-v67 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 22px;
    padding: 2px 6px;
    border: 1px solid rgba(242, 184, 69, .44);
    border-radius: 6px;
    color: #ffe39b;
    background: linear-gradient(180deg, rgba(92, 59, 12, .68), rgba(31, 22, 8, .88));
    box-shadow: inset 0 1px 0 rgba(255,232,167,.12);
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    font-size: 10px;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap;
}

/* O cabeçalho pode quebrar em duas linhas se a conta tiver muitas tags, sem cortar dados. */
#alastar-site-chat .portal-chat-player-identity-v45 {
    flex-wrap: wrap !important;
    row-gap: 4px !important;
    overflow: visible !important;
}
#alastar-site-chat .portal-chat-message-head-v19 { overflow: visible !important; }

@media (max-width: 767.98px) {
    #alastar-site-chat .portal-chat-character-meta-v67 { gap: 3px; }
    #alastar-site-chat .portal-chat-character-cape-v67,
    #alastar-site-chat .portal-chat-character-guild-v67,
    #alastar-site-chat .portal-chat-character-evolution-v67 {
        width: 23px;
        height: 23px;
        min-height: 23px;
        flex-basis: 23px;
    }
    #alastar-site-chat .portal-chat-character-class-v67 {
        min-width: 38px;
        height: 23px;
        min-height: 23px;
    }
    #alastar-site-chat .portal-chat-character-guild-v67 > img,
    #alastar-site-chat .portal-chat-character-class-v67 > img,
    #alastar-site-chat .portal-chat-character-evolution-v67 > img { width: 18px; height: 18px; }
    #alastar-site-chat .portal-chat-character-level-v67 { min-height: 21px; padding-inline: 5px; font-size: 9.5px; }
}

/* ========================================================================== */
/* V68 - RESPONSIVIDADE ESTÁVEL EM ZOOM / NAVEGADORES / MOBILE               */
/* ========================================================================== */

/* Corrige a grade do composer: após mover "Falando como" para o cabeçalho,
   não existe mais a antiga coluna intermediária. Em alguns níveis de zoom o
   grid implícito estreitava o campo de texto e bagunçava toda a barra. */
#alastar-site-chat .portal-chat-composer-row-v53 {
    grid-template-columns: auto minmax(0, 1fr) auto !important;
}

/* Em desktop normal o layout precisa se adaptar melhor ao zoom do navegador.
   Abaixo de ~1500 px úteis, os controles passam para a linha inferior e o
   cabeçalho da sala passa a aceitar quebra controlada. */
@media (max-width: 1499.98px) {
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53 {
        grid-template-columns: 192px minmax(0, 1fr) !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-control-sidebar-v53 {
        grid-column: 1 / -1 !important;
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
        padding: 8px !important;
        border-left: 0 !important;
        border-top: 1px solid rgba(68, 162, 249, .20) !important;
        max-height: 156px !important;
        overflow: auto !important;
        align-content: start !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-control-card-v53 {
        min-height: 0 !important;
        height: 100% !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-head-v53 {
        min-height: auto !important;
        padding: 8px 9px !important;
        gap: 8px !important;
        align-items: flex-start !important;
        flex-wrap: wrap !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-title-v53 {
        flex: 1 1 260px !important;
        min-width: 0 !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-title-icon-v53 {
        width: 34px !important;
        height: 34px !important;
        flex-basis: 34px !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-title-copy-v53 strong {
        font-size: .84rem !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-title-copy-v53 small {
        font-size: .54rem !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-badges-v53 {
        gap: 4px !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-badge-v53,
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-members-v53 {
        min-height: 20px !important;
        padding: 3px 6px !important;
        font-size: .45rem !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-identity-sidebar-v54.is-head-v66 {
        order: 2 !important;
        flex: 1 1 176px !important;
        width: min(100%, 220px) !important;
        min-width: 150px !important;
        margin: 0 !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-head-tools-v53 {
        order: 3 !important;
        margin-left: auto !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-messages-v53 {
        min-height: 245px !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-composer-v53 {
        padding: 8px 8px 9px !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-composer-buttons-v53 {
        grid-template-columns: repeat(2, 34px) !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-send-v53 {
        min-width: 102px !important;
        padding-inline: 12px !important;
    }
}

/* Em larguras intermediárias, o cabeçalho precisa empilhar melhor os blocos
   para não comprimir a área central nem cortar o seletor de nick. */
@media (min-width: 900px) and (max-width: 1299.98px) {
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-head-v53 {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: start !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-title-v53 {
        grid-column: 1 / -1 !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-identity-sidebar-v54.is-head-v66 {
        grid-column: 1 / 2 !important;
        width: min(100%, 220px) !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-head-tools-v53 {
        grid-column: 2 / 3 !important;
        grid-row: 2 !important;
        align-self: start !important;
    }
}

/* Tablet grande / notebook com zoom alto: evita colunas esmagadas. */
@media (max-width: 1180px) and (min-width: 768px) {
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53 {
        grid-template-columns: 1fr !important;
        min-height: 0 !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-sidebar-v53 {
        border-right: 0 !important;
        border-bottom: 1px solid rgba(68, 162, 249, .20) !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-control-sidebar-v53 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        max-height: 142px !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-members-panel-v53 {
        max-height: 182px !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-members-list-v53 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-composer-row-v53 {
        grid-template-columns: auto minmax(0, 1fr) auto !important;
    }
}

/* Mobile: mantém legibilidade, evita estouro horizontal e respeita Safari /
   Chrome Android / Edge Mobile. */
@media (max-width: 767.98px) {
    #alastar-site-chat {
        overflow: hidden !important;
    }

    #alastar-site-chat .portal-chat-room-head-v53 {
        min-height: auto !important;
        padding: 8px !important;
        gap: 7px !important;
        flex-wrap: wrap !important;
        align-items: flex-start !important;
    }

    #alastar-site-chat .portal-chat-room-title-v53 {
        width: 100% !important;
        flex: 1 1 100% !important;
    }

    #alastar-site-chat .portal-chat-identity-sidebar-v54.is-head-v66 {
        width: calc(100% - 44px) !important;
        min-width: 0 !important;
        flex: 1 1 auto !important;
        margin: 0 !important;
    }

    #alastar-site-chat .portal-chat-head-tools-v53 {
        margin-left: auto !important;
    }

    #alastar-site-chat .portal-chat-messages-v53 {
        min-height: 220px !important;
        padding: 8px !important;
    }

    #alastar-site-chat .portal-chat-composer-v53 {
        padding: 8px !important;
    }

    #alastar-site-chat .portal-chat-composer-row-v53 {
        grid-template-columns: auto minmax(0, 1fr) auto !important;
        gap: 6px !important;
    }

    #alastar-site-chat .portal-chat-composer-buttons-v53 {
        grid-template-columns: repeat(2, 34px) !important;
    }

    #alastar-site-chat .portal-chat-send-v53 {
        min-width: 88px !important;
        height: 46px !important;
        padding-inline: 10px !important;
    }

    #alastar-site-chat .portal-chat-input-v53 {
        min-height: 46px !important;
        height: 46px !important;
        font-size: 16px !important;
    }

    #alastar-site-chat .portal-chat-control-sidebar-v53 {
        grid-template-columns: 1fr !important;
        max-height: none !important;
    }
}

/* ========================================================================== */
/* V69 - SALAS MAIS PREENCHIDAS + ÍCONES DE PERSONAGEM COMPACTOS             */
/* ========================================================================== */

/* A lista de salas continua com no máximo 2 salas visíveis, porém o box e os
   cards passam a preencher melhor o espaço disponível mesmo quando o zoom do
   navegador muda. */
#alastar-site-chat .portal-chat-roombar-v53 {
    gap: 9px !important;
}

#alastar-site-chat .portal-chat-room-list-v53,
body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-room-list-v53 {
    min-height: 110px !important;
    max-height: 110px !important;
    height: 110px !important;
    gap: 6px !important;
    padding-right: 4px !important;
    align-content: start !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-entry-v33 {
    min-height: 52px !important;
    height: 52px !important;
    gap: 5px !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 {
    min-height: 52px !important;
    height: 52px !important;
    padding: 6px 9px !important;
    grid-template-columns: 18px minmax(0, 1fr) auto auto auto !important;
    gap: 6px !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 > i:first-child {
    width: 18px !important;
    font-size: .72rem !important;
}

#alastar-site-chat .portal-chat-room-copy-v62 {
    min-width: 0 !important;
    display: grid !important;
    align-content: center !important;
    gap: 1px !important;
}

#alastar-site-chat .portal-chat-room-copy-v62 > strong {
    font-size: clamp(11px, .72rem, 12px) !important;
    line-height: 1.08 !important;
}

#alastar-site-chat .portal-chat-room-copy-v62 > small {
    font-size: clamp(9px, .58rem, 10px) !important;
    line-height: 1.12 !important;
    opacity: .95 !important;
}

#alastar-site-chat .portal-chat-room-count-v53 {
    min-width: 24px !important;
    height: 20px !important;
    font-size: .58rem !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 em {
    min-width: 24px !important;
    min-height: 18px !important;
    padding: 2px 5px !important;
    font-size: .46rem !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-voice-v34 {
    font-size: .62rem !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-close-v33 {
    width: 30px !important;
    min-width: 30px !important;
    height: 30px !important;
}

/* Corrige os metadados do personagem para que os ícones fiquem pequenos,
   alinhados e nunca apareçam gigantes ao lado do nome. */
#alastar-site-chat .portal-chat-character-meta-v67 {
    display: inline-flex !important;
    align-items: center !important;
    gap: 2px !important;
    flex: 0 0 auto !important;
    vertical-align: middle !important;
    white-space: nowrap !important;
}

#alastar-site-chat .portal-chat-character-meta-v67 img {
    display: block !important;
    width: 14px !important;
    height: 14px !important;
    min-width: 14px !important;
    min-height: 14px !important;
    max-width: 14px !important;
    max-height: 14px !important;
    object-fit: contain !important;
    image-rendering: auto !important;
    flex: 0 0 14px !important;
}

#alastar-site-chat .portal-chat-character-cape-v67,
#alastar-site-chat .portal-chat-character-guild-v67,
#alastar-site-chat .portal-chat-character-class-v67,
#alastar-site-chat .portal-chat-character-evolution-v67 {
    height: 16px !important;
    min-height: 16px !important;
    border-radius: 4px !important;
    padding: 1px 3px !important;
    box-shadow: none !important;
    overflow: hidden !important;
    flex: 0 0 auto !important;
}

#alastar-site-chat .portal-chat-character-cape-v67 {
    width: 16px !important;
    padding: 0 !important;
}

#alastar-site-chat .portal-chat-character-cape-v67 > i {
    font-size: 9px !important;
}

#alastar-site-chat .portal-chat-character-guild-v67,
#alastar-site-chat .portal-chat-character-evolution-v67 {
    width: 16px !important;
    padding: 1px !important;
}

#alastar-site-chat .portal-chat-character-class-v67 {
    min-width: 31px !important;
    gap: 2px !important;
    padding: 1px 3px 1px 1px !important;
}

#alastar-site-chat .portal-chat-character-class-v67 > b {
    font-size: 7.5px !important;
    line-height: 1 !important;
}

#alastar-site-chat .portal-chat-character-level-v67 {
    min-height: 16px !important;
    height: 16px !important;
    padding: 0 4px !important;
    border-radius: 4px !important;
    font-size: 8px !important;
    line-height: 1 !important;
}

#alastar-site-chat .portal-chat-player-identity-v45 {
    align-items: center !important;
    gap: 3px !important;
}

#alastar-site-chat .portal-chat-player-name-v45 {
    display: inline-flex !important;
    align-items: center !important;
    line-height: 1.1 !important;
}

/* Em zoom alto / larguras menores, as salas continuam preenchendo o box. */
@media (max-width: 1499.98px) {
    #alastar-site-chat .portal-chat-room-list-v53,
    body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-room-list-v53 {
        min-height: 108px !important;
        max-height: 108px !important;
        height: 108px !important;
    }

    #alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-entry-v33,
    #alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 {
        min-height: 51px !important;
        height: 51px !important;
    }
}

@media (max-width: 767.98px) {
    #alastar-site-chat .portal-chat-room-list-v53,
    body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-room-list-v53 {
        min-height: 104px !important;
        max-height: 104px !important;
        height: 104px !important;
    }

    #alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-entry-v33,
    #alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 {
        min-height: 49px !important;
        height: 49px !important;
    }

    #alastar-site-chat .portal-chat-character-meta-v67 img {
        width: 13px !important;
        height: 13px !important;
        min-width: 13px !important;
        min-height: 13px !important;
        max-width: 13px !important;
        max-height: 13px !important;
        flex-basis: 13px !important;
    }

    #alastar-site-chat .portal-chat-character-cape-v67,
    #alastar-site-chat .portal-chat-character-guild-v67,
    #alastar-site-chat .portal-chat-character-evolution-v67 {
        width: 15px !important;
        height: 15px !important;
        min-height: 15px !important;
    }

    #alastar-site-chat .portal-chat-character-class-v67 {
        min-width: 29px !important;
        height: 15px !important;
        min-height: 15px !important;
    }

    #alastar-site-chat .portal-chat-character-level-v67 {
        min-height: 15px !important;
        height: 15px !important;
        font-size: 7.5px !important;
    }
}

/* ========================================================================== */
/* V70 - NOME COMPLETO DA SALA / CARDS MAIS LARGOS / SEM META ABAIXO         */
/* ========================================================================== */

/* O entry passa a usar grid para que o botão principal da sala ocupe todo o
   espaço restante e os botões de gerenciar/fechar usem apenas a faixa da direita. */
#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-entry-v33 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto auto !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 4px !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 54px !important;
    height: 54px !important;
    padding: 6px 8px !important;
    grid-template-columns: 16px minmax(0, 1fr) 22px auto auto !important;
    gap: 5px !important;
    align-items: center !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 > i:first-child {
    width: 16px !important;
    min-width: 16px !important;
    font-size: .68rem !important;
}

#alastar-site-chat .portal-chat-room-copy-v62 {
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    overflow: hidden !important;
}

#alastar-site-chat .portal-chat-room-copy-v62 > strong {
    display: block !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: clamp(11.5px, .75rem, 12.5px) !important;
    line-height: 1.08 !important;
}

/* remove a descrição sob o nome da sala para sobrar espaço horizontal */
#alastar-site-chat .portal-chat-room-copy-v62 > small {
    display: none !important;
}

#alastar-site-chat .portal-chat-room-count-v53 {
    min-width: 22px !important;
    width: 22px !important;
    height: 18px !important;
    padding: 0 !important;
    font-size: .54rem !important;
    line-height: 18px !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-voice-v34 {
    font-size: .57rem !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 em {
    min-width: 22px !important;
    min-height: 17px !important;
    padding: 1px 4px !important;
    font-size: .43rem !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-close-v33 {
    width: 27px !important;
    min-width: 27px !important;
    height: 27px !important;
    margin: 0 !important;
    border-radius: 8px !important;
}

@media (max-width: 767.98px) {
    #alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 {
        min-height: 52px !important;
        height: 52px !important;
        grid-template-columns: 15px minmax(0, 1fr) 20px auto auto !important;
        gap: 4px !important;
    }

    #alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 > i:first-child {
        width: 15px !important;
        min-width: 15px !important;
    }

    #alastar-site-chat .portal-chat-room-copy-v62 > strong {
        font-size: 11px !important;
    }

    #alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-close-v33 {
        width: 25px !important;
        min-width: 25px !important;
        height: 25px !important;
    }
}

/* ========================================================================== */
/* V71 - METADADOS DO PERSONAGEM NÍTIDOS + CAPA AZUL                         */
/* ========================================================================== */

/* Ordem mantida: tags -> popularidade -> capa -> guild -> classe -> evolução
   -> level -> nome. O tamanho agora é compacto, mas legível. */
#alastar-site-chat .portal-chat-character-meta-v67 {
    display: inline-flex !important;
    align-items: center !important;
    gap: 3px !important;
    flex: 0 0 auto !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    vertical-align: middle !important;
}

#alastar-site-chat .portal-chat-character-cape-v67,
#alastar-site-chat .portal-chat-character-guild-v67,
#alastar-site-chat .portal-chat-character-evolution-v67 {
    width: 20px !important;
    min-width: 20px !important;
    max-width: 20px !important;
    height: 20px !important;
    min-height: 20px !important;
    max-height: 20px !important;
    padding: 2px !important;
    border-radius: 5px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    background: linear-gradient(180deg, rgba(19,48,76,.96), rgba(6,19,33,.98)) !important;
    border: 1px solid rgba(104,181,241,.38) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 1px 3px rgba(0,0,0,.30) !important;
}

#alastar-site-chat .portal-chat-character-meta-v67 img {
    display: block !important;
    width: 16px !important;
    min-width: 16px !important;
    max-width: 16px !important;
    height: 16px !important;
    min-height: 16px !important;
    max-height: 16px !important;
    object-fit: contain !important;
    image-rendering: auto !important;
    flex: 0 0 16px !important;
}

/* Capa: símbolo simples e forte, usando a cor real do personagem. */
#alastar-site-chat .portal-chat-character-cape-v67 {
    padding: 0 !important;
    color: var(--character-cape-color, #b8c1cc) !important;
    border-color: var(--character-cape-color, #b8c1cc) !important;
    background: rgba(5,18,32,.96) !important;
    box-shadow: 0 0 5px color-mix(in srgb, var(--character-cape-color, #b8c1cc) 42%, transparent), inset 0 1px 0 rgba(255,255,255,.07) !important;
}

#alastar-site-chat .portal-chat-character-cape-v67 > i {
    font-size: 11px !important;
    line-height: 1 !important;
    color: currentColor !important;
    filter: drop-shadow(0 0 2px currentColor) !important;
}

#alastar-site-chat .portal-chat-character-cape-v67.is-blue {
    --character-cape-color: #3f9cff !important;
}

#alastar-site-chat .portal-chat-character-cape-v67.is-red {
    --character-cape-color: #ff5757 !important;
}

/* GuildMark recebe um pouco mais de contraste sem ficar grande. */
#alastar-site-chat .portal-chat-character-guild-v67 {
    border-color: rgba(239,187,75,.48) !important;
    background: linear-gradient(180deg, rgba(59,43,16,.72), rgba(8,20,31,.96)) !important;
}

/* Classe: ícone + sigla curta (TK/FM/BM/HT). */
#alastar-site-chat .portal-chat-character-class-v67 {
    min-width: 38px !important;
    height: 20px !important;
    min-height: 20px !important;
    max-height: 20px !important;
    padding: 2px 4px 2px 2px !important;
    gap: 3px !important;
    border-radius: 5px !important;
    border: 1px solid rgba(67,169,255,.48) !important;
    background: linear-gradient(180deg, rgba(14,47,76,.96), rgba(5,19,33,.98)) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

#alastar-site-chat .portal-chat-character-class-v67 > b {
    color: #dff3ff !important;
    font-size: 8.5px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    letter-spacing: .02em !important;
}

#alastar-site-chat .portal-chat-character-evolution-v67 {
    border-color: rgba(244,190,72,.52) !important;
}

#alastar-site-chat .portal-chat-character-level-v67 {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 20px !important;
    min-height: 20px !important;
    padding: 0 5px !important;
    border-radius: 5px !important;
    border: 1px solid rgba(244,190,72,.48) !important;
    color: #ffe7a3 !important;
    background: linear-gradient(180deg, rgba(76,53,15,.72), rgba(20,18,13,.92)) !important;
    font-size: 9px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    box-shadow: inset 0 1px 0 rgba(255,238,175,.10) !important;
}

/* Evita que o bloco fique esmagado ou sobreposto pelo nome. */
#alastar-site-chat .portal-chat-player-identity-v45 {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    column-gap: 4px !important;
    row-gap: 4px !important;
    min-width: 0 !important;
    overflow: visible !important;
}

#alastar-site-chat .portal-chat-player-name-v45 {
    margin-left: 1px !important;
    color: #d3edff !important;
    font-size: max(.72rem, 11.5px) !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
}

@media (max-width: 767.98px) {
    #alastar-site-chat .portal-chat-character-meta-v67 {
        gap: 2px !important;
    }

    #alastar-site-chat .portal-chat-character-cape-v67,
    #alastar-site-chat .portal-chat-character-guild-v67,
    #alastar-site-chat .portal-chat-character-evolution-v67 {
        width: 19px !important;
        min-width: 19px !important;
        max-width: 19px !important;
        height: 19px !important;
        min-height: 19px !important;
        max-height: 19px !important;
    }

    #alastar-site-chat .portal-chat-character-meta-v67 img {
        width: 15px !important;
        min-width: 15px !important;
        max-width: 15px !important;
        height: 15px !important;
        min-height: 15px !important;
        max-height: 15px !important;
        flex-basis: 15px !important;
    }

    #alastar-site-chat .portal-chat-character-class-v67 {
        min-width: 36px !important;
        height: 19px !important;
        min-height: 19px !important;
        max-height: 19px !important;
    }

    #alastar-site-chat .portal-chat-character-level-v67 {
        height: 19px !important;
        min-height: 19px !important;
        font-size: 8.5px !important;
    }
}

/* ========================================================================== */
/* V72 - META DO PERSONAGEM TIPO TAG + EVOLUÇÃO CORRETA + ZOOM ESTÁVEL       */
/* ========================================================================== */

/* A capa deixa de ser exibida na linha da mensagem. A GuildMark passa a ser
   o primeiro dado visual do personagem após tags/popularidade. */
#alastar-site-chat .portal-chat-character-cape-v67 {
    display: none !important;
}

/* Linha-base única: nenhum item usa margem negativa, portanto ao alterar o
   zoom os elementos não se sobrepõem. */
#alastar-site-chat .portal-chat-message-head-v19 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: start !important;
    column-gap: 8px !important;
    overflow: visible !important;
}

#alastar-site-chat .portal-chat-player-identity-v45 {
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    align-content: center !important;
    flex-wrap: wrap !important;
    column-gap: 4px !important;
    row-gap: 4px !important;
    line-height: 1 !important;
    overflow: visible !important;
}

#alastar-site-chat .portal-chat-primary-tag-wrap-v46,
#alastar-site-chat .portal-chat-staff-custom-tags-v48,
#alastar-site-chat .portal-chat-symbols-v46,
#alastar-site-chat .portal-chat-character-meta-v67 {
    display: inline-flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 3px !important;
    margin: 0 !important;
    min-width: 0 !important;
    vertical-align: middle !important;
}

/* Popularidade deixa de flutuar acima/abaixo da linha. */
#alastar-site-chat .portal-chat-popularity-v52,
#alastar-site-chat .portal-chat-popularity-server_king {
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    min-height: 22px !important;
    flex: 0 0 22px !important;
    margin: 0 !important;
    padding: 0 !important;
    align-self: center !important;
}

#alastar-site-chat .portal-chat-popularity-v52 img {
    width: 22px !important;
    height: 22px !important;
    max-width: 22px !important;
    max-height: 22px !important;
    object-fit: contain !important;
}

/* Os metadados seguem a mesma linguagem visual das tags: quadrados nítidos,
   borda definida, fundo sólido/gradiente e tamanho constante. */
#alastar-site-chat .portal-chat-character-meta-v67 {
    gap: 3px !important;
    flex: 0 0 auto !important;
    white-space: nowrap !important;
}

#alastar-site-chat .portal-chat-character-guild-v67,
#alastar-site-chat .portal-chat-character-class-v67,
#alastar-site-chat .portal-chat-character-evolution-v67,
#alastar-site-chat .portal-chat-character-level-v67 {
    box-sizing: border-box !important;
    height: 20px !important;
    min-height: 20px !important;
    margin: 0 !important;
    border-radius: 4px !important;
    border: 1px solid rgba(102, 174, 235, .46) !important;
    background: linear-gradient(180deg, rgba(19, 57, 88, .98), rgba(6, 25, 44, .99)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 1px 3px rgba(0,0,0,.30) !important;
    overflow: hidden !important;
    vertical-align: middle !important;
}

/* GuildMark ocupa exatamente a posição onde a capa aparecia. */
#alastar-site-chat .portal-chat-character-guild-v67 {
    width: 20px !important;
    min-width: 20px !important;
    flex: 0 0 20px !important;
    padding: 1px !important;
    border-color: rgba(74, 166, 255, .62) !important;
}

#alastar-site-chat .portal-chat-character-guild-v67 > img,
#alastar-site-chat .portal-chat-character-class-v67 > img,
#alastar-site-chat .portal-chat-character-evolution-v67 > img {
    display: block !important;
    width: 16px !important;
    height: 16px !important;
    min-width: 16px !important;
    min-height: 16px !important;
    max-width: 16px !important;
    max-height: 16px !important;
    object-fit: contain !important;
    image-rendering: auto !important;
    filter: none !important;
}

#alastar-site-chat .portal-chat-character-class-v67 {
    min-width: 37px !important;
    width: auto !important;
    padding: 1px 4px 1px 1px !important;
    gap: 3px !important;
    flex: 0 0 auto !important;
    border-color: rgba(70, 169, 255, .60) !important;
}

#alastar-site-chat .portal-chat-character-class-v67 > b {
    color: #dff3ff !important;
    font-size: 8px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    letter-spacing: .01em !important;
}

#alastar-site-chat .portal-chat-character-evolution-v67 {
    width: 20px !important;
    min-width: 20px !important;
    flex: 0 0 20px !important;
    padding: 1px !important;
    border-color: rgba(234, 181, 69, .58) !important;
    background: linear-gradient(180deg, rgba(89, 60, 13, .96), rgba(35, 25, 8, .99)) !important;
}

#alastar-site-chat .portal-chat-character-level-v67 {
    min-width: 36px !important;
    width: auto !important;
    padding: 0 5px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    color: #ffe5a0 !important;
    border-color: rgba(232, 179, 66, .56) !important;
    background: linear-gradient(180deg, rgba(92, 61, 14, .96), rgba(38, 26, 8, .99)) !important;
    font-size: 8px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

#alastar-site-chat .portal-chat-player-name-v45 {
    min-height: 20px !important;
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 1px !important;
    line-height: 20px !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
}

/* Ícones acumulativos também seguem a mesma linha-base. */
#alastar-site-chat .portal-chat-symbol-v46,
#alastar-site-chat .portal-chat-symbol-v47 {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    min-height: 20px !important;
    flex: 0 0 20px !important;
    margin: 0 !important;
    padding: 1px !important;
    border-radius: 4px !important;
    box-sizing: border-box !important;
}

#alastar-site-chat .portal-chat-symbol-image-v47 {
    width: 16px !important;
    height: 16px !important;
    max-width: 16px !important;
    max-height: 16px !important;
    object-fit: contain !important;
    filter: none !important;
}

#alastar-site-chat .portal-chat-message-head-v19 time {
    align-self: start !important;
    min-width: max-content !important;
    margin: 0 !important;
    padding-top: 4px !important;
}

/* Conforme o zoom aumenta e a largura útil cai, a identidade quebra em linhas
   completas. Como não há margens negativas, uma linha nunca cobre a outra. */
@media (max-width: 1180px) {
    #alastar-site-chat .portal-chat-player-identity-v45 {
        column-gap: 3px !important;
        row-gap: 5px !important;
    }

    #alastar-site-chat .portal-chat-message-head-v19 {
        column-gap: 6px !important;
    }
}

@media (max-width: 767.98px) {
    #alastar-site-chat .portal-chat-message-head-v19 {
        grid-template-columns: minmax(0, 1fr) !important;
        row-gap: 3px !important;
    }

    #alastar-site-chat .portal-chat-message-head-v19 time {
        justify-self: end !important;
        padding-top: 0 !important;
    }

    #alastar-site-chat .portal-chat-player-identity-v45 {
        width: 100% !important;
        row-gap: 4px !important;
    }
}

/* ========================================================================== */
/* V73 - BADGE DE CLASSE COM TEXTO BM/FM/TM/HT                               */
/* ========================================================================== */
#alastar-site-chat .portal-chat-character-class-v67 {
    width: 30px !important;
    min-width: 30px !important;
    max-width: 30px !important;
    flex: 0 0 30px !important;
    justify-content: center !important;
    padding: 0 !important;
    gap: 0 !important;
    border-radius: 4px !important;
    border: 1px solid rgba(92, 180, 255, .68) !important;
    background: linear-gradient(180deg, rgba(17, 71, 116, .98), rgba(6, 28, 49, .99)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.12), 0 1px 3px rgba(0,0,0,.28) !important;
}

#alastar-site-chat .portal-chat-character-class-v67 > img {
    display: none !important;
}

#alastar-site-chat .portal-chat-character-class-v67 > b {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 100% !important;
    height: 100% !important;
    color: #eef8ff !important;
    font-family: 'Cinzel', 'Inter', system-ui, sans-serif !important;
    font-size: 9px !important;
    font-weight: 900 !important;
    letter-spacing: .02em !important;
    text-shadow: 0 1px 0 rgba(0,0,0,.55), 0 0 5px rgba(97, 200, 255, .25) !important;
}

#alastar-site-chat .portal-chat-character-guild-v67,
#alastar-site-chat .portal-chat-character-evolution-v67,
#alastar-site-chat .portal-chat-character-level-v67,
#alastar-site-chat .portal-chat-symbol-v46,
#alastar-site-chat .portal-chat-symbol-v47,
#alastar-site-chat .portal-chat-popularity-v52 {
    align-self: center !important;
}

#alastar-site-chat .portal-chat-player-identity-v45 {
    align-items: center !important;
}

@media (max-width: 767.98px) {
    #alastar-site-chat .portal-chat-character-class-v67 {
        width: 28px !important;
        min-width: 28px !important;
        max-width: 28px !important;
        flex-basis: 28px !important;
        height: 19px !important;
        min-height: 19px !important;
    }

    #alastar-site-chat .portal-chat-character-class-v67 > b {
        font-size: 8px !important;
    }
}

/* ========================================================================== */
/* V75 - FALANDO COMO RESPONSIVO NO CABEÇALHO                                 */
/* ========================================================================== */

/* O bloco "Falando como" deve encolher conforme o zoom/largura útil, para não
   encostar nem sobrepor o contador de jogadores da sala. */
@media (min-width: 900px) {
    #alastar-site-chat .portal-chat-room-head-v53 {
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        row-gap: 6px !important;
    }

    #alastar-site-chat .portal-chat-room-title-v53 {
        min-width: 0 !important;
        flex: 1 1 240px !important;
    }

    #alastar-site-chat .portal-chat-identity-sidebar-v54.is-head-v66 {
        flex: 0 1 clamp(112px, 13vw, 180px) !important;
        width: clamp(112px, 13vw, 180px) !important;
        min-width: 112px !important;
        max-width: 180px !important;
        margin-left: 0 !important;
        padding: 3px 4px 3px 8px !important;
        grid-template-columns: minmax(0, 1fr) 29px !important;
        gap: 4px !important;
    }

    #alastar-site-chat .portal-chat-identity-sidebar-v54.is-head-v66 .portal-chat-identity-copy-v54 > small {
        font-size: 7.5px !important;
        letter-spacing: .045em !important;
    }

    #alastar-site-chat .portal-chat-identity-sidebar-v54.is-head-v66 .portal-chat-identity-v19 {
        font-size: 10.25px !important;
        line-height: 1.05 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    #alastar-site-chat .portal-chat-identity-sidebar-v54.is-head-v66 .portal-chat-nick-side-button-v54 {
        width: 29px !important;
        height: 29px !important;
        min-width: 29px !important;
    }

    #alastar-site-chat .portal-chat-head-tools-v53 {
        flex: 0 0 auto !important;
        margin-left: auto !important;
    }
}

/* Faixa intermediária: o bloco continua visível, porém mais compacto, e os
   botões do cabeçalho não ficam por cima dele. */
@media (min-width: 900px) and (max-width: 1420px) {
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-head-v53 {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: start !important;
        column-gap: 6px !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-title-v53 {
        grid-column: 1 / -1 !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-identity-sidebar-v54.is-head-v66 {
        grid-column: 1 / 2 !important;
        justify-self: start !important;
        width: clamp(108px, 16vw, 168px) !important;
        min-width: 108px !important;
        max-width: 168px !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-head-tools-v53 {
        grid-column: 2 / 3 !important;
        grid-row: 2 !important;
        align-self: start !important;
    }
}

/* Em zoom muito alto/larguras menores o bloco fica ainda menor, sem encobrir
   o badge de jogadores na sala. */
@media (min-width: 900px) and (max-width: 1180px) {
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-identity-sidebar-v54.is-head-v66 {
        width: 124px !important;
        min-width: 124px !important;
        max-width: 124px !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-identity-sidebar-v54.is-head-v66 .portal-chat-identity-copy-v54 > small {
        font-size: 7px !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-identity-sidebar-v54.is-head-v66 .portal-chat-identity-v19 {
        font-size: 9.5px !important;
    }
}

/* ========================================================================== */
/* V77 - ANIMAÇÃO DO PRESENTE CORAÇÃO                                         */
/* Base visual restaurada para o comportamento do V75 do "Falando como".     */
/* ========================================================================== */

#alastar-site-chat {
    position: relative !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77 {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2147482500 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    pointer-events: none !important;
    overflow: hidden !important;
    opacity: 0;
    visibility: hidden !important;
    background: radial-gradient(circle at center, rgba(255, 32, 91, .075), transparent 36%) !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 {
    visibility: visible !important;
    animation: alastar-heart-overlay-v77 1.65s ease-out both !important;
}

#alastar-site-chat .portal-chat-gift-screen-stage-v77 {
    position: relative !important;
    width: clamp(150px, 23vw, 250px) !important;
    height: clamp(150px, 23vw, 250px) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#alastar-site-chat .portal-chat-heart-main-v77 {
    position: relative !important;
    z-index: 2 !important;
    display: block !important;
    width: 82% !important;
    height: 82% !important;
    max-width: 220px !important;
    max-height: 220px !important;
    object-fit: contain !important;
    image-rendering: auto !important;
    filter:
        drop-shadow(0 0 12px rgba(255, 36, 87, .82))
        drop-shadow(0 0 30px rgba(255, 35, 90, .48))
        drop-shadow(0 9px 14px rgba(0,0,0,.45)) !important;
    transform-origin: center !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-main-v77 {
    animation: alastar-heart-beat-v77 1.45s cubic-bezier(.22,.7,.3,1) both !important;
}

#alastar-site-chat .portal-chat-heart-glow-v77 {
    position: absolute !important;
    inset: 18% !important;
    z-index: 1 !important;
    border-radius: 50% !important;
    background: radial-gradient(circle, rgba(255, 73, 122, .58) 0%, rgba(255, 28, 78, .22) 38%, transparent 72%) !important;
    filter: blur(8px) !important;
    opacity: 0;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-glow-v77 {
    animation: alastar-heart-glow-v77 1.5s ease-out both !important;
}

@keyframes alastar-heart-overlay-v77 {
    0%   { opacity: 0; }
    10%  { opacity: 1; }
    78%  { opacity: 1; }
    100% { opacity: 0; }
}

@keyframes alastar-heart-beat-v77 {
    0%   { opacity: 0; transform: scale(.28); }
    14%  { opacity: 1; transform: scale(1.03); }
    25%  { transform: scale(.82); }
    36%  { transform: scale(1.12); }
    49%  { transform: scale(.91); }
    61%  { transform: scale(1.08); }
    74%  { transform: scale(.97); }
    86%  { opacity: 1; transform: scale(1.02); }
    100% { opacity: 0; transform: scale(.82); }
}

@keyframes alastar-heart-glow-v77 {
    0%   { opacity: 0; transform: scale(.45); }
    20%  { opacity: .85; transform: scale(1.04); }
    55%  { opacity: .62; transform: scale(1.26); }
    100% { opacity: 0; transform: scale(1.65); }
}

/* Fullscreen: a animação continua centralizada no painel inteiro. */
body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-gift-screen-v77 {
    position: absolute !important;
    inset: 0 !important;
}

@media (max-width: 767.98px) {
    #alastar-site-chat .portal-chat-gift-screen-stage-v77 {
        width: clamp(130px, 46vw, 190px) !important;
        height: clamp(130px, 46vw, 190px) !important;
    }

    #alastar-site-chat .portal-chat-heart-main-v77 {
        max-width: 170px !important;
        max-height: 170px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    #alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77,
    #alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-main-v77,
    #alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-glow-v77 {
        animation-duration: .65s !important;
    }
}

/* ========================================================================== */
/* V78 - CORAÇÃO MAIS VISÍVEL / MODAL FECHA ANTES DA ANIMAÇÃO                */
/* ========================================================================== */
#alastar-site-chat .portal-chat-gift-screen-v77 {
    z-index: 2147483600 !important;
    background:
        radial-gradient(circle at center, rgba(255, 43, 103, .18) 0%, rgba(255, 25, 83, .08) 24%, transparent 48%) !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 {
    visibility: visible !important;
    animation: alastar-heart-overlay-v78 2.8s ease-out both !important;
}

#alastar-site-chat .portal-chat-gift-screen-stage-v77 {
    width: clamp(220px, 34vw, 390px) !important;
    height: clamp(220px, 34vw, 390px) !important;
}

#alastar-site-chat .portal-chat-heart-main-v77 {
    width: 88% !important;
    height: 88% !important;
    max-width: 340px !important;
    max-height: 340px !important;
    filter:
        drop-shadow(0 0 16px rgba(255, 63, 108, .95))
        drop-shadow(0 0 42px rgba(255, 27, 85, .70))
        drop-shadow(0 14px 20px rgba(0,0,0,.55)) !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-main-v77 {
    animation: alastar-heart-beat-v78 2.65s cubic-bezier(.2,.72,.28,1) both !important;
}

#alastar-site-chat .portal-chat-heart-glow-v77 {
    inset: 10% !important;
    background: radial-gradient(circle, rgba(255, 95, 139, .76) 0%, rgba(255, 31, 88, .38) 38%, transparent 72%) !important;
    filter: blur(11px) !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-glow-v77 {
    animation: alastar-heart-glow-v78 2.75s ease-out both !important;
}

@keyframes alastar-heart-overlay-v78 {
    0%   { opacity: 0; }
    5%   { opacity: 1; }
    82%  { opacity: 1; }
    100% { opacity: 0; }
}

@keyframes alastar-heart-beat-v78 {
    0%   { opacity: 0; transform: scale(.18); }
    7%   { opacity: 1; transform: scale(.82); }
    14%  { transform: scale(1.14); }
    22%  { transform: scale(.91); }
    30%  { transform: scale(1.18); }
    39%  { transform: scale(.94); }
    48%  { transform: scale(1.13); }
    58%  { transform: scale(.96); }
    68%  { transform: scale(1.09); }
    78%  { transform: scale(.98); }
    87%  { opacity: 1; transform: scale(1.04); }
    100% { opacity: 0; transform: scale(.72); }
}

@keyframes alastar-heart-glow-v78 {
    0%   { opacity: 0; transform: scale(.30); }
    12%  { opacity: .95; transform: scale(.88); }
    35%  { opacity: .82; transform: scale(1.10); }
    64%  { opacity: .62; transform: scale(1.28); }
    100% { opacity: 0; transform: scale(1.72); }
}

@media (max-width: 767.98px) {
    #alastar-site-chat .portal-chat-gift-screen-stage-v77 {
        width: clamp(190px, 68vw, 290px) !important;
        height: clamp(190px, 68vw, 290px) !important;
    }

    #alastar-site-chat .portal-chat-heart-main-v77 {
        max-width: 260px !important;
        max-height: 260px !important;
    }
}

/* Mesmo com preferência de movimento reduzido, mantém o presente claramente
   visível sem batidas agressivas. */
@media (prefers-reduced-motion: reduce) {
    #alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 {
        animation: alastar-heart-overlay-v78 2.2s ease-out both !important;
    }
    #alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-main-v77 {
        animation: none !important;
        opacity: 1 !important;
        transform: scale(1) !important;
    }
    #alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-glow-v77 {
        animation: alastar-heart-glow-v78 2.2s ease-out both !important;
    }
}

/* ========================================================================== */
/* V79 - FULLSCREEN NO CABEÇALHO SUPERIOR / FAIXA DA SALA LIMPA              */
/* ========================================================================== */

/* O botão de gerenciamento da faixa principal deixa de existir visualmente.
   O gerenciamento permanece disponível no botão da própria sala na lista. */
#alastar-site-chat #alastar-chat-manage-quick {
    display: none !important;
}

/* Reserva espaço no título para o fullscreen sem deslocar o texto central. */
#alastar-site-chat .portal-chat-title-v19 {
    position: relative !important;
    padding-left: 54px !important;
    padding-right: 54px !important;
}

#alastar-site-chat .portal-chat-fullscreen-top-v79 {
    position: absolute !important;
    top: 50% !important;
    right: 12px !important;
    left: auto !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 20 !important;
    border-radius: 8px !important;
    border: 1px solid rgba(77, 174, 255, .38) !important;
    color: #bceaff !important;
    background: linear-gradient(180deg, rgba(16, 60, 96, .92), rgba(6, 28, 50, .98)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.07), 0 0 12px rgba(35,146,238,.09) !important;
}

#alastar-site-chat .portal-chat-fullscreen-top-v79:hover {
    color: #fff0b3 !important;
    border-color: rgba(244, 194, 75, .62) !important;
    background: linear-gradient(180deg, rgba(91, 62, 19, .92), rgba(30, 31, 38, .98)) !important;
}

/* A faixa da sala fica dedicada apenas às informações da sala, jogadores e
   \"Falando como\". Nenhum controle duplicado ocupa a parte de baixo/direita. */
#alastar-site-chat .portal-chat-room-head-v53 .portal-chat-head-tools-v53:empty {
    display: none !important;
}

@media (max-width: 767.98px) {
    #alastar-site-chat .portal-chat-title-v19 {
        padding-left: 44px !important;
        padding-right: 44px !important;
    }

    #alastar-site-chat .portal-chat-fullscreen-top-v79 {
        right: 8px !important;
        width: 31px !important;
        height: 31px !important;
        min-width: 31px !important;
        min-height: 31px !important;
    }
}

/* ========================================================================== */
/* V80 - PRESENTE CORAÇÃO 3D NO CENTRO DO CHAT                               */
/* ========================================================================== */
#alastar-site-chat .portal-chat-gift-screen-v77 {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background:
        radial-gradient(circle at center, rgba(255, 84, 131, .16) 0%, rgba(255, 44, 92, .09) 18%, rgba(9, 17, 30, .08) 40%, transparent 66%) !important;
    backdrop-filter: saturate(120%) blur(1px) !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 {
    visibility: visible !important;
    animation: alastar-heart-overlay-v80 4.65s ease-out both !important;
}

#alastar-site-chat .portal-chat-gift-screen-stage-v77 {
    width: clamp(300px, 44vw, 560px) !important;
    height: clamp(300px, 44vw, 560px) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: visible !important;
}

#alastar-site-chat .portal-chat-heart-scene-v80 {
    position: relative !important;
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    perspective: 1400px !important;
    transform-style: preserve-3d !important;
    overflow: visible !important;
}

#alastar-site-chat .portal-chat-heart-shadow-v80 {
    position: absolute !important;
    left: 50% !important;
    top: 58% !important;
    width: 46% !important;
    height: 14% !important;
    border-radius: 999px !important;
    transform: translateX(-50%) translateY(58px);
    background: radial-gradient(ellipse at center, rgba(0,0,0,.52) 0%, rgba(0,0,0,.26) 48%, transparent 76%) !important;
    filter: blur(18px) !important;
    opacity: 0;
}

#alastar-site-chat .portal-chat-heart-glow-v80 {
    inset: 8% !important;
    background:
        radial-gradient(circle at center, rgba(255, 115, 155, .92) 0%, rgba(255, 63, 120, .46) 28%, rgba(255, 42, 97, .18) 52%, transparent 74%) !important;
    filter: blur(18px) saturate(118%) !important;
    opacity: 0;
}

#alastar-site-chat .portal-chat-heart-3d-v80 {
    position: relative !important;
    width: 70% !important;
    height: 70% !important;
    transform-style: preserve-3d !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 0;
}

#alastar-site-chat .portal-chat-heart-3d-v80 img.portal-chat-heart-main-v77 {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    transform-origin: center center !important;
    object-fit: contain !important;
    image-rendering: auto !important;
    backface-visibility: hidden !important;
}

#alastar-site-chat .portal-chat-heart-back-v80 {
    opacity: .30;
    filter: hue-rotate(-8deg) brightness(.82) blur(1.2px) drop-shadow(0 0 24px rgba(255, 47, 104, .48)) !important;
    transform: translate(-50%, -50%) translateZ(-34px) scale(1.12);
}

#alastar-site-chat .portal-chat-heart-mid-v80 {
    opacity: .70;
    filter: brightness(.98) saturate(1.08) drop-shadow(0 0 22px rgba(255, 78, 129, .68)) drop-shadow(0 12px 22px rgba(0,0,0,.26)) !important;
    transform: translate(-50%, -50%) translateZ(0) scale(1.01);
}

#alastar-site-chat .portal-chat-heart-front-v80 {
    opacity: 1;
    filter: drop-shadow(0 0 30px rgba(255, 80, 132, .95)) drop-shadow(0 0 60px rgba(255, 25, 96, .62)) drop-shadow(0 18px 24px rgba(0,0,0,.28)) !important;
    transform: translate(-50%, -50%) translateZ(34px) scale(.94);
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-shadow-v80 {
    animation: alastar-heart-shadow-v80 4.45s ease-out both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-glow-v80 {
    animation: alastar-heart-glow-v80 4.55s ease-out both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-3d-v80 {
    animation: alastar-heart-scene-v80 4.45s cubic-bezier(.16,.8,.2,1) both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-back-v80 {
    animation: alastar-heart-layer-back-v80 4.45s cubic-bezier(.16,.8,.2,1) both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-mid-v80 {
    animation: alastar-heart-layer-mid-v80 4.45s cubic-bezier(.16,.8,.2,1) both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-front-v80 {
    animation: alastar-heart-layer-front-v80 4.45s cubic-bezier(.16,.8,.2,1) both !important;
}

@keyframes alastar-heart-overlay-v80 {
    0%   { opacity: 0; }
    6%   { opacity: 1; }
    88%  { opacity: 1; }
    100% { opacity: 0; }
}

@keyframes alastar-heart-scene-v80 {
    0%   { opacity: 0; transform: translateY(28px) rotateX(-18deg) rotateY(-18deg) scale(.34); }
    10%  { opacity: 1; transform: translateY(0) rotateX(8deg) rotateY(12deg) scale(.84); }
    18%  { transform: translateY(-3px) rotateX(-8deg) rotateY(-12deg) scale(1.08); }
    26%  { transform: translateY(0) rotateX(7deg) rotateY(10deg) scale(.94); }
    34%  { transform: translateY(-2px) rotateX(-7deg) rotateY(-10deg) scale(1.13); }
    43%  { transform: translateY(0) rotateX(5deg) rotateY(8deg) scale(.97); }
    54%  { transform: translateY(-1px) rotateX(-4deg) rotateY(-6deg) scale(1.10); }
    66%  { transform: translateY(0) rotateX(3deg) rotateY(5deg) scale(1.02); }
    78%  { transform: translateY(0) rotateX(-2deg) rotateY(-3deg) scale(1.06); }
    88%  { opacity: 1; transform: translateY(0) rotateX(0deg) rotateY(0deg) scale(1.02); }
    100% { opacity: 0; transform: translateY(-4px) rotateX(0deg) rotateY(0deg) scale(.82); }
}

@keyframes alastar-heart-layer-front-v80 {
    0%   { transform: translate(-50%, -50%) translateZ(56px) scale(.26); }
    10%  { transform: translate(-50%, -50%) translateZ(38px) scale(.90); }
    18%  { transform: translate(-50%, -50%) translateZ(42px) scale(1.16); }
    26%  { transform: translate(-50%, -50%) translateZ(36px) scale(.96); }
    34%  { transform: translate(-50%, -50%) translateZ(40px) scale(1.21); }
    43%  { transform: translate(-50%, -50%) translateZ(34px) scale(1.01); }
    54%  { transform: translate(-50%, -50%) translateZ(36px) scale(1.14); }
    66%  { transform: translate(-50%, -50%) translateZ(30px) scale(1.04); }
    78%  { transform: translate(-50%, -50%) translateZ(24px) scale(1.10); }
    100% { transform: translate(-50%, -50%) translateZ(0px) scale(.82); }
}

@keyframes alastar-heart-layer-mid-v80 {
    0%   { transform: translate(-50%, -50%) translateZ(0px) scale(.28); }
    10%  { transform: translate(-50%, -50%) translateZ(0px) scale(.88); }
    18%  { transform: translate(-50%, -50%) translateZ(0px) scale(1.10); }
    26%  { transform: translate(-50%, -50%) translateZ(0px) scale(.95); }
    34%  { transform: translate(-50%, -50%) translateZ(0px) scale(1.16); }
    43%  { transform: translate(-50%, -50%) translateZ(0px) scale(1.00); }
    54%  { transform: translate(-50%, -50%) translateZ(0px) scale(1.10); }
    66%  { transform: translate(-50%, -50%) translateZ(0px) scale(1.02); }
    78%  { transform: translate(-50%, -50%) translateZ(0px) scale(1.07); }
    100% { transform: translate(-50%, -50%) translateZ(0px) scale(.84); }
}

@keyframes alastar-heart-layer-back-v80 {
    0%   { transform: translate(-50%, -50%) translateZ(-52px) scale(.38); }
    10%  { transform: translate(-50%, -50%) translateZ(-36px) scale(.96); }
    18%  { transform: translate(-50%, -50%) translateZ(-40px) scale(1.18); }
    26%  { transform: translate(-50%, -50%) translateZ(-34px) scale(1.02); }
    34%  { transform: translate(-50%, -50%) translateZ(-38px) scale(1.22); }
    43%  { transform: translate(-50%, -50%) translateZ(-32px) scale(1.06); }
    54%  { transform: translate(-50%, -50%) translateZ(-34px) scale(1.14); }
    66%  { transform: translate(-50%, -50%) translateZ(-28px) scale(1.06); }
    78%  { transform: translate(-50%, -50%) translateZ(-22px) scale(1.10); }
    100% { transform: translate(-50%, -50%) translateZ(0px) scale(.88); }
}

@keyframes alastar-heart-shadow-v80 {
    0%   { opacity: 0; transform: translateX(-50%) translateY(70px) scale(.40); }
    10%  { opacity: .55; transform: translateX(-50%) translateY(58px) scale(.92); }
    34%  { opacity: .45; transform: translateX(-50%) translateY(60px) scale(1.06); }
    66%  { opacity: .32; transform: translateX(-50%) translateY(62px) scale(1.14); }
    100% { opacity: 0; transform: translateX(-50%) translateY(68px) scale(.72); }
}

@keyframes alastar-heart-glow-v80 {
    0%   { opacity: 0; transform: scale(.36); }
    12%  { opacity: .95; transform: scale(.86); }
    34%  { opacity: .86; transform: scale(1.08); }
    56%  { opacity: .74; transform: scale(1.20); }
    78%  { opacity: .48; transform: scale(1.34); }
    100% { opacity: 0; transform: scale(1.54); }
}

@media (max-width: 767.98px) {
    #alastar-site-chat .portal-chat-gift-screen-stage-v77 {
        width: clamp(230px, 80vw, 340px) !important;
        height: clamp(230px, 80vw, 340px) !important;
    }

    #alastar-site-chat .portal-chat-heart-shadow-v80 {
        transform: translateX(-50%) translateY(40px) !important;
        filter: blur(12px) !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    #alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 {
        animation-duration: 3.8s !important;
    }

    #alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-3d-v80,
    #alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-back-v80,
    #alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-mid-v80,
    #alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-front-v80 {
        animation: none !important;
        opacity: 1 !important;
        transform: none !important;
    }

    #alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-glow-v80 {
        animation-duration: 3.8s !important;
    }
}

/* ========================================================================== */
/* V81 - ESTILO WEPLAY/FALA: PRESENTE GRANDE NA TELA                          */
/* ========================================================================== */
#alastar-site-chat .portal-chat-gift-screen-v77 {
    background:
        radial-gradient(circle at center, rgba(255, 109, 158, .22) 0%, rgba(255, 62, 116, .12) 18%, rgba(8, 18, 35, .18) 42%, rgba(5, 10, 18, .06) 56%, transparent 76%) !important;
    backdrop-filter: blur(2px) saturate(122%) !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 {
    animation: alastar-heart-overlay-v81 5.55s ease-out both !important;
}

#alastar-site-chat .portal-chat-gift-screen-stage-v77 {
    width: clamp(360px, 54vw, 720px) !important;
    height: clamp(360px, 54vw, 720px) !important;
}

#alastar-site-chat .portal-chat-heart-scene-v80 {
    perspective: 1800px !important;
}

#alastar-site-chat .portal-chat-gift-burst-v81 {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    pointer-events: none !important;
    opacity: 0;
}

#alastar-site-chat .portal-chat-gift-burst-ray-v81 {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: 7px !important;
    height: 36% !important;
    border-radius: 999px !important;
    transform-origin: 50% 100% !important;
    background: linear-gradient(180deg, rgba(255,255,255,.0), rgba(255, 213, 120, .98) 46%, rgba(255, 109, 162, .82) 100%) !important;
    filter: drop-shadow(0 0 10px rgba(255, 196, 82, .60)) !important;
}

#alastar-site-chat .portal-chat-gift-burst-ray-v81.ray-1 { transform: translate(-50%, -88%) rotate(0deg); }
#alastar-site-chat .portal-chat-gift-burst-ray-v81.ray-2 { transform: translate(-50%, -88%) rotate(36deg); }
#alastar-site-chat .portal-chat-gift-burst-ray-v81.ray-3 { transform: translate(-50%, -88%) rotate(72deg); }
#alastar-site-chat .portal-chat-gift-burst-ray-v81.ray-4 { transform: translate(-50%, -88%) rotate(108deg); }
#alastar-site-chat .portal-chat-gift-burst-ray-v81.ray-5 { transform: translate(-50%, -88%) rotate(144deg); }
#alastar-site-chat .portal-chat-gift-burst-ray-v81.ray-6 { transform: translate(-50%, -88%) rotate(180deg); }
#alastar-site-chat .portal-chat-gift-burst-ray-v81.ray-7 { transform: translate(-50%, -88%) rotate(216deg); }
#alastar-site-chat .portal-chat-gift-burst-ray-v81.ray-8 { transform: translate(-50%, -88%) rotate(252deg); }
#alastar-site-chat .portal-chat-gift-burst-ray-v81.ray-9 { transform: translate(-50%, -88%) rotate(288deg); }
#alastar-site-chat .portal-chat-gift-burst-ray-v81.ray-10 { transform: translate(-50%, -88%) rotate(324deg); }

#alastar-site-chat .portal-chat-heart-glow-v80 {
    inset: 11% !important;
    filter: blur(24px) saturate(120%) !important;
}

#alastar-site-chat .portal-chat-heart-3d-v80 {
    width: 60% !important;
    height: 60% !important;
}

#alastar-site-chat .portal-chat-heart-back-v80 {
    transform: translate(-50%, -50%) translateZ(-42px) scale(1.10);
}

#alastar-site-chat .portal-chat-heart-front-v80 {
    transform: translate(-50%, -50%) translateZ(40px) scale(.94);
}

#alastar-site-chat .portal-chat-gift-caption-v81 {
    position: absolute !important;
    left: 50% !important;
    bottom: 8% !important;
    transform: translateX(-50%);
    width: min(86%, 520px) !important;
    padding: 14px 18px 16px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(255, 210, 121, .52) !important;
    background: linear-gradient(180deg, rgba(21, 31, 58, .92), rgba(7, 13, 27, .96)) !important;
    box-shadow: 0 18px 42px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.08), 0 0 26px rgba(255, 112, 153, .12) !important;
    text-align: center !important;
    opacity: 0;
}

#alastar-site-chat .portal-chat-gift-label-v81 {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 22px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, rgba(255, 194, 75, .98), rgba(182, 111, 19, .98)) !important;
    color: #251507 !important;
    font-family: 'Cinzel', 'Inter', system-ui, sans-serif !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: .08em !important;
    text-shadow: 0 1px 0 rgba(255,255,255,.32) !important;
}

#alastar-site-chat .portal-chat-gift-title-v81 {
    margin-top: 8px !important;
    color: #fff3c0 !important;
    font-family: 'Cinzel', 'Inter', system-ui, sans-serif !important;
    font-size: clamp(28px, 3vw, 38px) !important;
    font-weight: 900 !important;
    letter-spacing: .03em !important;
    text-shadow: 0 2px 0 rgba(0,0,0,.45), 0 0 18px rgba(255, 195, 105, .16) !important;
}

#alastar-site-chat .portal-chat-gift-copy-v81 {
    margin-top: 6px !important;
    color: #f7fbff !important;
    font-size: clamp(13px, 1.2vw, 16px) !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    text-shadow: 0 1px 0 rgba(0,0,0,.44) !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-gift-burst-v81 {
    animation: alastar-gift-burst-v81 5.1s ease-out both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-shadow-v80 {
    animation-duration: 5s !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-glow-v80 {
    animation: alastar-heart-glow-v81 5.2s ease-out both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-3d-v80 {
    animation: alastar-heart-scene-v81 5.15s cubic-bezier(.14,.82,.18,1) both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-back-v80 {
    animation: alastar-heart-layer-back-v81 5.15s cubic-bezier(.14,.82,.18,1) both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-mid-v80 {
    animation: alastar-heart-layer-mid-v81 5.15s cubic-bezier(.14,.82,.18,1) both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-front-v80 {
    animation: alastar-heart-layer-front-v81 5.15s cubic-bezier(.14,.82,.18,1) both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-gift-caption-v81 {
    animation: alastar-gift-caption-v81 5.15s ease-out both !important;
}

@keyframes alastar-heart-overlay-v81 {
    0% { opacity: 0; }
    4% { opacity: 1; }
    92% { opacity: 1; }
    100% { opacity: 0; }
}

@keyframes alastar-gift-burst-v81 {
    0% { opacity: 0; transform: scale(.2) rotate(0deg); }
    8% { opacity: 1; transform: scale(1) rotate(4deg); }
    18% { opacity: .96; transform: scale(1.08) rotate(-3deg); }
    42% { opacity: .85; transform: scale(1.14) rotate(0deg); }
    72% { opacity: .42; transform: scale(1.24) rotate(0deg); }
    100% { opacity: 0; transform: scale(1.36) rotate(0deg); }
}

@keyframes alastar-heart-scene-v81 {
    0%   { opacity: 0; transform: translateY(34px) rotateX(-22deg) rotateY(-22deg) scale(.24); }
    8%   { opacity: 1; transform: translateY(2px) rotateX(12deg) rotateY(14deg) scale(.88); }
    16%  { transform: translateY(-2px) rotateX(-11deg) rotateY(-14deg) scale(1.14); }
    25%  { transform: translateY(0) rotateX(10deg) rotateY(12deg) scale(.96); }
    34%  { transform: translateY(-1px) rotateX(-9deg) rotateY(-12deg) scale(1.18); }
    44%  { transform: translateY(0) rotateX(8deg) rotateY(10deg) scale(1.00); }
    56%  { transform: translateY(0) rotateX(-6deg) rotateY(-8deg) scale(1.13); }
    68%  { transform: translateY(0) rotateX(4deg) rotateY(5deg) scale(1.04); }
    80%  { transform: translateY(0) rotateX(-2deg) rotateY(-3deg) scale(1.08); }
    92%  { opacity: 1; transform: translateY(0) rotateX(0) rotateY(0) scale(1.02); }
    100% { opacity: 0; transform: translateY(-4px) rotateX(0) rotateY(0) scale(.84); }
}

@keyframes alastar-heart-layer-front-v81 {
    0%   { transform: translate(-50%, -50%) translateZ(68px) scale(.20); }
    8%   { transform: translate(-50%, -50%) translateZ(44px) scale(.92); }
    16%  { transform: translate(-50%, -50%) translateZ(52px) scale(1.24); }
    25%  { transform: translate(-50%, -50%) translateZ(40px) scale(.98); }
    34%  { transform: translate(-50%, -50%) translateZ(48px) scale(1.30); }
    44%  { transform: translate(-50%, -50%) translateZ(38px) scale(1.02); }
    56%  { transform: translate(-50%, -50%) translateZ(42px) scale(1.16); }
    68%  { transform: translate(-50%, -50%) translateZ(30px) scale(1.05); }
    80%  { transform: translate(-50%, -50%) translateZ(20px) scale(1.10); }
    100% { transform: translate(-50%, -50%) translateZ(0px) scale(.82); }
}

@keyframes alastar-heart-layer-mid-v81 {
    0%   { transform: translate(-50%, -50%) translateZ(0px) scale(.24); }
    8%   { transform: translate(-50%, -50%) translateZ(0px) scale(.90); }
    16%  { transform: translate(-50%, -50%) translateZ(0px) scale(1.17); }
    25%  { transform: translate(-50%, -50%) translateZ(0px) scale(.96); }
    34%  { transform: translate(-50%, -50%) translateZ(0px) scale(1.22); }
    44%  { transform: translate(-50%, -50%) translateZ(0px) scale(1.01); }
    56%  { transform: translate(-50%, -50%) translateZ(0px) scale(1.13); }
    68%  { transform: translate(-50%, -50%) translateZ(0px) scale(1.04); }
    80%  { transform: translate(-50%, -50%) translateZ(0px) scale(1.08); }
    100% { transform: translate(-50%, -50%) translateZ(0px) scale(.84); }
}

@keyframes alastar-heart-layer-back-v81 {
    0%   { transform: translate(-50%, -50%) translateZ(-66px) scale(.28); }
    8%   { transform: translate(-50%, -50%) translateZ(-44px) scale(.94); }
    16%  { transform: translate(-50%, -50%) translateZ(-50px) scale(1.22); }
    25%  { transform: translate(-50%, -50%) translateZ(-38px) scale(1.00); }
    34%  { transform: translate(-50%, -50%) translateZ(-46px) scale(1.28); }
    44%  { transform: translate(-50%, -50%) translateZ(-36px) scale(1.04); }
    56%  { transform: translate(-50%, -50%) translateZ(-40px) scale(1.16); }
    68%  { transform: translate(-50%, -50%) translateZ(-28px) scale(1.06); }
    80%  { transform: translate(-50%, -50%) translateZ(-18px) scale(1.11); }
    100% { transform: translate(-50%, -50%) translateZ(0px) scale(.88); }
}

@keyframes alastar-heart-glow-v81 {
    0%   { opacity: 0; transform: scale(.24); }
    10%  { opacity: .96; transform: scale(.84); }
    26%  { opacity: .88; transform: scale(1.06); }
    46%  { opacity: .78; transform: scale(1.20); }
    68%  { opacity: .56; transform: scale(1.34); }
    100% { opacity: 0; transform: scale(1.60); }
}

@keyframes alastar-gift-caption-v81 {
    0%   { opacity: 0; transform: translateX(-50%) translateY(16px) scale(.94); }
    14%  { opacity: 1; transform: translateX(-50%) translateY(0) scale(1); }
    84%  { opacity: 1; transform: translateX(-50%) translateY(0) scale(1); }
    100% { opacity: 0; transform: translateX(-50%) translateY(-4px) scale(.98); }
}

@media (max-width: 767.98px) {
    #alastar-site-chat .portal-chat-gift-screen-stage-v77 {
        width: clamp(250px, 88vw, 360px) !important;
        height: clamp(250px, 88vw, 360px) !important;
    }

    #alastar-site-chat .portal-chat-gift-caption-v81 {
        width: min(92%, 340px) !important;
        bottom: 7% !important;
        padding: 10px 12px 12px !important;
        border-radius: 14px !important;
    }

    #alastar-site-chat .portal-chat-gift-label-v81 {
        min-height: 20px !important;
        font-size: 9px !important;
    }

    #alastar-site-chat .portal-chat-gift-title-v81 {
        font-size: clamp(22px, 7vw, 30px) !important;
    }

    #alastar-site-chat .portal-chat-gift-copy-v81 {
        font-size: 12px !important;
    }
}

/* ========================================================================== */
/* V82 - CORREÇÃO REAL DO OVERLAY + CARD DE MENSAGEM ESTÁTICO                 */
/* ========================================================================== */

/* O problema do V80/V81 era o opacity:0 !important herdado do V77. CSS
   animations não conseguem vencer declarações !important. O V82 removeu
   esses !important diretamente dos elementos animados e garante o estado
   inicial/final correto aqui. */
#alastar-site-chat .portal-chat-gift-screen-v77 {
    opacity: 0;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 {
    visibility: visible !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-3d-v80,
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-gift-burst-v81,
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-gift-caption-v81,
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-glow-v80,
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-shadow-v80 {
    will-change: opacity, transform;
}

/* A listbox de mensagens mostra apenas o REGISTRO do presente. A animação
   grande ocorre exclusivamente no overlay central do chat. */
#alastar-site-chat .portal-chat-gift-event-v52,
#alastar-site-chat .portal-chat-gift-art-v52 img,
#alastar-site-chat .portal-chat-gift-spark-v52 {
    animation: none !important;
}

#alastar-site-chat .portal-chat-gift-spark-v52 {
    display: none !important;
}

/* A animação central recebe prioridade máxima dentro do painel. */
#alastar-site-chat .portal-chat-gift-screen-v77 {
    z-index: 2147483640 !important;
}

body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-gift-screen-v77 {
    z-index: 2147483640 !important;
}

/* ========================================================================== */
/* V83 - DURAÇÃO DO PRESENTE REDUZIDA PARA ~2 SEGUNDOS                        */
/* ========================================================================== */
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 {
    animation-duration: 2s !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-gift-burst-v81 {
    animation-duration: 1.85s !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-shadow-v80 {
    animation-duration: 1.85s !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-glow-v80 {
    animation-duration: 1.9s !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-3d-v80,
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-back-v80,
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-mid-v80,
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-front-v80,
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-gift-caption-v81 {
    animation-duration: 1.9s !important;
}

@media (prefers-reduced-motion: reduce) {
    #alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77,
    #alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77 .portal-chat-heart-glow-v80 {
        animation-duration: 2s !important;
    }
}

/* ========================================================================== */
/* V84 - TIGRE DE FOGO: SALTO + RUGIDO                                        */
/* ========================================================================== */
#alastar-site-chat .portal-chat-heart-scene-v80,
#alastar-site-chat .portal-chat-tiger-scene-v84 {
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 0 !important;
    pointer-events: none !important;
    overflow: visible !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-gift-heart-v84 .portal-chat-heart-scene-v80 {
    opacity: 1 !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-gift-fire-tiger-v84 .portal-chat-tiger-scene-v84 {
    opacity: 1 !important;
}

#alastar-site-chat .portal-chat-tiger-scene-v84 {
    perspective: 1800px !important;
    transform-style: preserve-3d !important;
}

#alastar-site-chat .portal-chat-tiger-main-v84,
#alastar-site-chat .portal-chat-tiger-echo-v84 {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: clamp(220px, 30vw, 460px) !important;
    height: auto !important;
    object-fit: contain !important;
    transform-origin: center center !important;
    backface-visibility: hidden !important;
    image-rendering: auto !important;
}

#alastar-site-chat .portal-chat-tiger-main-v84 {
    z-index: 3 !important;
    filter: drop-shadow(0 10px 18px rgba(0,0,0,.30)) drop-shadow(0 0 28px rgba(255, 103, 0, .55)) drop-shadow(0 0 56px rgba(255, 56, 0, .35)) !important;
}

#alastar-site-chat .portal-chat-tiger-echo-v84 {
    z-index: 2 !important;
    opacity: .30 !important;
    filter: blur(1.6px) saturate(1.25) drop-shadow(0 0 22px rgba(255, 154, 54, .52)) !important;
}

#alastar-site-chat .portal-chat-tiger-glow-v84 {
    position: absolute !important;
    inset: 12% !important;
    border-radius: 50% !important;
    background: radial-gradient(circle at center, rgba(255, 179, 84, .92) 0%, rgba(255, 112, 26, .50) 28%, rgba(255, 58, 0, .22) 52%, transparent 74%) !important;
    filter: blur(28px) saturate(125%) !important;
    opacity: 0 !important;
}

#alastar-site-chat .portal-chat-tiger-shadow-v84 {
    position: absolute !important;
    left: 50% !important;
    top: 62% !important;
    width: 42% !important;
    height: 12% !important;
    border-radius: 999px !important;
    background: radial-gradient(ellipse at center, rgba(0,0,0,.52) 0%, rgba(0,0,0,.22) 52%, transparent 78%) !important;
    filter: blur(15px) !important;
    transform: translate(-50%, 46px) !important;
    opacity: 0 !important;
}

#alastar-site-chat .portal-chat-tiger-flames-v84 {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: 55% !important;
    height: 55% !important;
    transform: translate(-50%, -50%) !important;
    border-radius: 50% !important;
    background:
        radial-gradient(circle at 50% 65%, rgba(255, 230, 139, .92) 0%, rgba(255, 169, 44, .75) 16%, rgba(255, 87, 0, .48) 36%, transparent 58%),
        conic-gradient(from 0deg, rgba(255,113,0,0) 0deg, rgba(255,178,50,.68) 26deg, rgba(255,74,0,.14) 48deg, rgba(255,113,0,0) 72deg, rgba(255,178,50,.60) 110deg, rgba(255,74,0,.14) 132deg, rgba(255,113,0,0) 160deg, rgba(255,178,50,.60) 205deg, rgba(255,74,0,.14) 232deg, rgba(255,113,0,0) 260deg, rgba(255,178,50,.64) 304deg, rgba(255,74,0,.16) 330deg, rgba(255,113,0,0) 360deg) !important;
    filter: blur(10px) saturate(136%) !important;
    opacity: 0 !important;
}

#alastar-site-chat .portal-chat-tiger-roar-v84 {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: 44% !important;
    height: 26% !important;
    transform: translate(-4%, -46%) !important;
    z-index: 4 !important;
    pointer-events: none !important;
}

#alastar-site-chat .portal-chat-tiger-roar-v84 > i {
    position: absolute !important;
    right: 0 !important;
    top: 44% !important;
    width: 18% !important;
    height: 36% !important;
    border: 3px solid rgba(255, 205, 111, .92) !important;
    border-left: 0 !important;
    border-radius: 0 999px 999px 0 !important;
    box-shadow: 0 0 18px rgba(255, 126, 26, .34) !important;
    opacity: 0 !important;
}

#alastar-site-chat .portal-chat-tiger-roar-v84 > i:nth-child(1) { right: -1%; }
#alastar-site-chat .portal-chat-tiger-roar-v84 > i:nth-child(2) { right: -10%; width: 28%; }
#alastar-site-chat .portal-chat-tiger-roar-v84 > i:nth-child(3) { right: -21%; width: 38%; }

#alastar-site-chat .portal-chat-gift-screen-v77.is-gift-fire-tiger-v84 {
    background: radial-gradient(circle at center, rgba(255, 146, 59, .24) 0%, rgba(255, 86, 0, .15) 24%, rgba(14, 18, 35, .18) 45%, rgba(4, 8, 16, .08) 62%, transparent 78%) !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-fire-tiger-v84 {
    animation: alastar-fire-tiger-overlay-v84 3s ease-out both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-fire-tiger-v84 .portal-chat-tiger-glow-v84 {
    opacity: 1 !important;
    animation: alastar-fire-tiger-glow-v84 3s ease-out both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-fire-tiger-v84 .portal-chat-tiger-shadow-v84 {
    opacity: 1 !important;
    animation: alastar-fire-tiger-shadow-v84 3s ease-out both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-fire-tiger-v84 .portal-chat-tiger-burst-v84 {
    opacity: 1 !important;
    animation: alastar-fire-tiger-burst-v84 3s ease-out both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-fire-tiger-v84 .portal-chat-tiger-flames-v84 {
    opacity: 1 !important;
    animation: alastar-fire-tiger-flames-v84 3s ease-out both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-fire-tiger-v84 .portal-chat-tiger-main-v84 {
    opacity: 1 !important;
    animation: alastar-fire-tiger-jump-v84 3s cubic-bezier(.16,.82,.18,1) both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-fire-tiger-v84 .portal-chat-tiger-echo-v84 {
    opacity: .32 !important;
    animation: alastar-fire-tiger-echo-v84 3s cubic-bezier(.16,.82,.18,1) both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-fire-tiger-v84 .portal-chat-tiger-roar-v84 > i:nth-child(1) {
    animation: alastar-fire-tiger-roar-v84 1.4s ease-out .72s both !important;
}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-fire-tiger-v84 .portal-chat-tiger-roar-v84 > i:nth-child(2) {
    animation: alastar-fire-tiger-roar-v84 1.4s ease-out .80s both !important;
}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-fire-tiger-v84 .portal-chat-tiger-roar-v84 > i:nth-child(3) {
    animation: alastar-fire-tiger-roar-v84 1.4s ease-out .88s both !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-fire-tiger-v84 .portal-chat-gift-caption-v81 {
    animation: alastar-fire-tiger-caption-v84 3s ease-out both !important;
}

@keyframes alastar-fire-tiger-overlay-v84 {
    0% { opacity: 0; }
    7% { opacity: 1; }
    90% { opacity: 1; }
    100% { opacity: 0; }
}

@keyframes alastar-fire-tiger-burst-v84 {
    0% { opacity: 0; transform: scale(.25) rotate(-12deg); }
    14% { opacity: .94; transform: scale(1) rotate(4deg); }
    40% { opacity: .92; transform: scale(1.12) rotate(0); }
    76% { opacity: .38; transform: scale(1.28) rotate(0); }
    100% { opacity: 0; transform: scale(1.42) rotate(0); }
}

@keyframes alastar-fire-tiger-glow-v84 {
    0% { opacity: 0; transform: scale(.3); }
    16% { opacity: .96; transform: scale(.94); }
    44% { opacity: .80; transform: scale(1.16); }
    78% { opacity: .44; transform: scale(1.38); }
    100% { opacity: 0; transform: scale(1.52); }
}

@keyframes alastar-fire-tiger-flames-v84 {
    0% { opacity: 0; transform: translate(-50%, -50%) scale(.38) rotate(-12deg); }
    16% { opacity: .90; transform: translate(-50%, -50%) scale(.92) rotate(6deg); }
    34% { opacity: .78; transform: translate(-50%, -50%) scale(1.04) rotate(-4deg); }
    68% { opacity: .48; transform: translate(-50%, -50%) scale(1.16) rotate(2deg); }
    100% { opacity: 0; transform: translate(-50%, -50%) scale(1.28) rotate(0); }
}

@keyframes alastar-fire-tiger-shadow-v84 {
    0% { opacity: 0; transform: translate(-50%, 74px) scale(.42); }
    18% { opacity: .44; transform: translate(-50%, 56px) scale(.86); }
    34% { opacity: .32; transform: translate(-50%, 34px) scale(.62); }
    56% { opacity: .44; transform: translate(-50%, 50px) scale(1.02); }
    86% { opacity: .34; transform: translate(-50%, 54px) scale(1.08); }
    100% { opacity: 0; transform: translate(-50%, 66px) scale(.72); }
}

@keyframes alastar-fire-tiger-jump-v84 {
    0%   { opacity: 0; transform: translate(-118%, 34%) rotate(-18deg) scale(.36); }
    14%  { opacity: 1; transform: translate(-84%, 8%) rotate(-8deg) scale(.92); }
    30%  { transform: translate(-56%, -26%) rotate(2deg) scale(1.04); }
    46%  { transform: translate(-50%, -10%) rotate(0deg) scale(1.12); }
    60%  { transform: translate(-50%, -2%) rotate(0deg) scale(1.02); }
    74%  { transform: translate(-50%, -4%) rotate(0deg) scale(1.06); }
    88%  { opacity: 1; transform: translate(-50%, -2%) rotate(0deg) scale(1.03); }
    100% { opacity: 0; transform: translate(-50%, 0%) rotate(0deg) scale(.90); }
}

@keyframes alastar-fire-tiger-echo-v84 {
    0%   { opacity: 0; transform: translate(-122%, 38%) rotate(-18deg) scale(.34); }
    14%  { opacity: .24; transform: translate(-90%, 12%) rotate(-8deg) scale(.88); }
    30%  { opacity: .30; transform: translate(-60%, -22%) rotate(2deg) scale(1.00); }
    46%  { opacity: .22; transform: translate(-52%, -8%) rotate(0deg) scale(1.10); }
    70%  { opacity: .14; transform: translate(-50%, -4%) rotate(0deg) scale(1.04); }
    100% { opacity: 0; transform: translate(-50%, 0%) rotate(0deg) scale(.92); }
}

@keyframes alastar-fire-tiger-roar-v84 {
    0% { opacity: 0; transform: scale(.36) translateX(0); }
    22% { opacity: .96; transform: scale(.86) translateX(6px); }
    64% { opacity: .52; transform: scale(1.18) translateX(12px); }
    100% { opacity: 0; transform: scale(1.42) translateX(18px); }
}

@keyframes alastar-fire-tiger-caption-v84 {
    0% { opacity: 0; transform: translateX(-50%) translateY(18px) scale(.94); }
    20% { opacity: 1; transform: translateX(-50%) translateY(0) scale(1); }
    84% { opacity: 1; transform: translateX(-50%) translateY(0) scale(1); }
    100% { opacity: 0; transform: translateX(-50%) translateY(-4px) scale(.98); }
}

@media (max-width: 767.98px) {
    #alastar-site-chat .portal-chat-tiger-main-v84,
    #alastar-site-chat .portal-chat-tiger-echo-v84 {
        width: clamp(180px, 54vw, 280px) !important;
    }

    #alastar-site-chat .portal-chat-tiger-roar-v84 {
        width: 56% !important;
        height: 28% !important;
        transform: translate(-2%, -42%) !important;
    }
}

/* ========================================================================== */
/* V85 - ANIMAÇÕES PERSONALIZADAS: GUERREIRO / DRAGÃO / TESOURO              */
/* ========================================================================== */
#alastar-site-chat .portal-chat-warrior-scene-v85,
#alastar-site-chat .portal-chat-dragon-scene-v85,
#alastar-site-chat .portal-chat-treasure-scene-v85 {
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 0 !important;
    pointer-events: none !important;
    overflow: visible !important;
    perspective: 1800px !important;
    transform-style: preserve-3d !important;
}

#alastar-site-chat .portal-chat-gift-screen-v77.is-gift-warrior-v85 .portal-chat-warrior-scene-v85,
#alastar-site-chat .portal-chat-gift-screen-v77.is-gift-red-dragon-v85 .portal-chat-dragon-scene-v85,
#alastar-site-chat .portal-chat-gift-screen-v77.is-gift-kersef-treasure-v85 .portal-chat-treasure-scene-v85 {
    opacity: 1 !important;
}

/* --- Guerreiro: entrada heroica + golpes de espada --- */
#alastar-site-chat .portal-chat-warrior-main-v85,
#alastar-site-chat .portal-chat-warrior-echo-v85 {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: clamp(210px, 29vw, 430px) !important;
    height: auto !important;
    object-fit: contain !important;
    transform-origin: center bottom !important;
    backface-visibility: hidden !important;
}

#alastar-site-chat .portal-chat-warrior-main-v85 {
    z-index: 4 !important;
    filter: drop-shadow(0 18px 24px rgba(0,0,0,.42)) drop-shadow(0 0 28px rgba(86, 174, 255, .42)) drop-shadow(0 0 42px rgba(255, 196, 73, .22)) !important;
}

#alastar-site-chat .portal-chat-warrior-echo-v85 {
    z-index: 2 !important;
    opacity: .24 !important;
    filter: blur(2px) brightness(1.16) saturate(1.1) drop-shadow(0 0 24px rgba(78,175,255,.44)) !important;
}

#alastar-site-chat .portal-chat-warrior-glow-v85,
#alastar-site-chat .portal-chat-warrior-aura-v85 {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    border-radius: 50% !important;
    transform: translate(-50%, -50%) !important;
    opacity: 0 !important;
}

#alastar-site-chat .portal-chat-warrior-glow-v85 {
    width: 62% !important;
    height: 62% !important;
    background: radial-gradient(circle, rgba(128,206,255,.72) 0%, rgba(55,135,226,.32) 35%, rgba(255,190,68,.18) 55%, transparent 74%) !important;
    filter: blur(25px) !important;
}

#alastar-site-chat .portal-chat-warrior-aura-v85 {
    width: 50% !important;
    height: 50% !important;
    border: 3px solid rgba(255,215,113,.56) !important;
    box-shadow: 0 0 22px rgba(255,200,77,.34), inset 0 0 28px rgba(85,177,255,.22) !important;
}

#alastar-site-chat .portal-chat-warrior-shadow-v85 {
    position: absolute !important;
    left: 50% !important;
    top: 65% !important;
    width: 38% !important;
    height: 10% !important;
    transform: translate(-50%, 38px) !important;
    border-radius: 999px !important;
    background: radial-gradient(ellipse, rgba(0,0,0,.50), rgba(0,0,0,.20) 52%, transparent 78%) !important;
    filter: blur(13px) !important;
    opacity: 0 !important;
}

#alastar-site-chat .portal-chat-warrior-slash-v85 {
    position: absolute !important;
    inset: 0 !important;
    z-index: 5 !important;
    pointer-events: none !important;
}

#alastar-site-chat .portal-chat-warrior-slash-v85 > i {
    position: absolute !important;
    left: 50% !important;
    top: 48% !important;
    width: 52% !important;
    height: 5px !important;
    border-radius: 999px !important;
    background: linear-gradient(90deg, transparent 0%, rgba(151,222,255,.96) 34%, #fff7cb 56%, rgba(255,185,56,.92) 75%, transparent 100%) !important;
    box-shadow: 0 0 14px rgba(111,201,255,.72), 0 0 22px rgba(255,196,71,.38) !important;
    opacity: 0 !important;
}
#alastar-site-chat .portal-chat-warrior-slash-v85 > i:nth-child(1) { transform: translate(-50%,-50%) rotate(-34deg); }
#alastar-site-chat .portal-chat-warrior-slash-v85 > i:nth-child(2) { transform: translate(-50%,-50%) rotate(26deg); }
#alastar-site-chat .portal-chat-warrior-slash-v85 > i:nth-child(3) { transform: translate(-50%,-50%) rotate(-3deg); width: 42% !important; }

#alastar-site-chat .portal-chat-gift-screen-v77.is-gift-warrior-v85 {
    background: radial-gradient(circle at center, rgba(79,166,255,.22), rgba(255,189,65,.11) 27%, rgba(6,13,25,.14) 52%, transparent 76%) !important;
}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-warrior-v85 { animation: alastar-warrior-overlay-v85 2.7s ease-out both !important; }
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-warrior-v85 .portal-chat-warrior-main-v85 { opacity:1 !important; animation: alastar-warrior-enter-v85 2.68s cubic-bezier(.16,.82,.18,1) both !important; }
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-warrior-v85 .portal-chat-warrior-echo-v85 { opacity:.25 !important; animation: alastar-warrior-echo-v85 2.68s cubic-bezier(.16,.82,.18,1) both !important; }
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-warrior-v85 .portal-chat-warrior-glow-v85 { opacity:1 !important; animation: alastar-warrior-glow-v85 2.7s ease-out both !important; }
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-warrior-v85 .portal-chat-warrior-aura-v85 { opacity:1 !important; animation: alastar-warrior-aura-v85 2.7s ease-out both !important; }
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-warrior-v85 .portal-chat-warrior-shadow-v85 { opacity:1 !important; animation: alastar-warrior-shadow-v85 2.7s ease-out both !important; }
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-warrior-v85 .portal-chat-warrior-burst-v85 { opacity:1 !important; animation: alastar-warrior-burst-v85 2.7s ease-out both !important; }
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-warrior-v85 .portal-chat-warrior-slash-v85 > i:nth-child(1) { animation: alastar-warrior-slash-v85 .52s ease-out .48s both !important; }
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-warrior-v85 .portal-chat-warrior-slash-v85 > i:nth-child(2) { animation: alastar-warrior-slash-v85 .52s ease-out .68s both !important; }
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-warrior-v85 .portal-chat-warrior-slash-v85 > i:nth-child(3) { animation: alastar-warrior-slash-v85 .48s ease-out .90s both !important; }
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-warrior-v85 .portal-chat-gift-caption-v81 { animation: alastar-gift-caption-warrior-v85 2.7s ease-out both !important; }

@keyframes alastar-warrior-overlay-v85 {0%{opacity:0}6%{opacity:1}90%{opacity:1}100%{opacity:0}}
@keyframes alastar-warrior-enter-v85 {0%{opacity:0;transform:translate(-50%,24%) scale(.34) rotateX(24deg)}16%{opacity:1;transform:translate(-50%,-18%) scale(.88) rotateX(-8deg)}31%{transform:translate(-50%,-50%) scale(1.12) rotateX(4deg)}48%{transform:translate(-50%,-48%) scale(1.02)}72%{transform:translate(-50%,-50%) scale(1.06)}90%{opacity:1;transform:translate(-50%,-50%) scale(1.03)}100%{opacity:0;transform:translate(-50%,-54%) scale(.90)}}
@keyframes alastar-warrior-echo-v85 {0%{opacity:0;transform:translate(-50%,30%) scale(.32)}20%{opacity:.28;transform:translate(-50%,-12%) scale(.91)}42%{opacity:.20;transform:translate(-50%,-47%) scale(1.16)}100%{opacity:0;transform:translate(-50%,-56%) scale(.96)}}
@keyframes alastar-warrior-glow-v85 {0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}18%{opacity:.9;transform:translate(-50%,-50%) scale(.86)}50%{opacity:.68;transform:translate(-50%,-50%) scale(1.12)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.4)}}
@keyframes alastar-warrior-aura-v85 {0%{opacity:0;transform:translate(-50%,-50%) scale(.42) rotate(0)}28%{opacity:.74;transform:translate(-50%,-50%) scale(.98) rotate(72deg)}72%{opacity:.38;transform:translate(-50%,-50%) scale(1.12) rotate(170deg)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.28) rotate(220deg)}}
@keyframes alastar-warrior-shadow-v85 {0%{opacity:0;transform:translate(-50%,70px) scale(.4)}30%{opacity:.43;transform:translate(-50%,38px) scale(.92)}72%{opacity:.34;transform:translate(-50%,42px) scale(1.08)}100%{opacity:0;transform:translate(-50%,52px) scale(.78)}}
@keyframes alastar-warrior-burst-v85 {0%{opacity:0;transform:scale(.2)}20%{opacity:.8;transform:scale(.92)}52%{opacity:.54;transform:scale(1.12)}100%{opacity:0;transform:scale(1.4)}}
@keyframes alastar-warrior-slash-v85 {0%{opacity:0;clip-path:inset(0 100% 0 0);filter:blur(2px)}28%{opacity:1;clip-path:inset(0 0 0 0);filter:blur(0)}100%{opacity:0;clip-path:inset(0 0 0 0);filter:blur(4px)}}
@keyframes alastar-gift-caption-warrior-v85 {0%{opacity:0;transform:translateX(-50%) translateY(16px) scale(.95)}20%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}82%{opacity:1}100%{opacity:0;transform:translateX(-50%) translateY(-4px) scale(.98)}}

/* --- Dragão Vermelho: voo, pouso e sopro de fogo --- */
#alastar-site-chat .portal-chat-dragon-main-v85,
#alastar-site-chat .portal-chat-dragon-echo-v85 {
    position:absolute !important; left:50% !important; top:50% !important;
    width:clamp(235px,34vw,520px) !important; height:auto !important; object-fit:contain !important;
    transform-origin:center center !important; backface-visibility:hidden !important;
}
#alastar-site-chat .portal-chat-dragon-main-v85 {z-index:4 !important;filter:drop-shadow(0 16px 24px rgba(0,0,0,.44)) drop-shadow(0 0 28px rgba(255,56,37,.60)) drop-shadow(0 0 55px rgba(255,112,0,.28)) !important;}
#alastar-site-chat .portal-chat-dragon-echo-v85 {z-index:2 !important;opacity:.24 !important;filter:blur(2.3px) saturate(1.25) drop-shadow(0 0 32px rgba(255,60,24,.44)) !important;}
#alastar-site-chat .portal-chat-dragon-glow-v85 {position:absolute !important;inset:8% !important;border-radius:50% !important;background:radial-gradient(circle,rgba(255,105,55,.90),rgba(255,41,17,.42) 34%,rgba(139,0,0,.22) 55%,transparent 75%) !important;filter:blur(30px) !important;opacity:0 !important;}
#alastar-site-chat .portal-chat-dragon-shadow-v85 {position:absolute !important;left:50% !important;top:65% !important;width:44% !important;height:12% !important;transform:translate(-50%,48px) !important;border-radius:999px !important;background:radial-gradient(ellipse,rgba(0,0,0,.54),rgba(0,0,0,.22) 55%,transparent 78%) !important;filter:blur(16px) !important;opacity:0 !important;}
#alastar-site-chat .portal-chat-dragon-flames-v85 {position:absolute !important;left:50% !important;top:50% !important;width:58% !important;height:58% !important;transform:translate(-50%,-50%) !important;border-radius:50% !important;background:radial-gradient(circle,rgba(255,235,152,.84),rgba(255,121,18,.60) 24%,rgba(229,32,0,.32) 48%,transparent 70%) !important;filter:blur(14px) saturate(140%) !important;opacity:0 !important;}
#alastar-site-chat .portal-chat-dragon-breath-v85 {position:absolute !important;left:50% !important;top:46% !important;width:62% !important;height:30% !important;z-index:5 !important;pointer-events:none !important;}
#alastar-site-chat .portal-chat-dragon-breath-v85>i {position:absolute !important;left:53% !important;top:48% !important;width:22% !important;height:12% !important;border-radius:999px 70% 70% 999px !important;background:linear-gradient(90deg,#fff2a5 0%,#ffbe35 30%,#ff5a00 68%,rgba(197,14,0,0) 100%) !important;filter:blur(3px) drop-shadow(0 0 10px rgba(255,76,0,.8)) !important;opacity:0 !important;transform-origin:left center !important;}
#alastar-site-chat .portal-chat-dragon-breath-v85>i:nth-child(2){top:40% !important;height:9% !important;transform:rotate(-7deg)}
#alastar-site-chat .portal-chat-dragon-breath-v85>i:nth-child(3){top:56% !important;height:9% !important;transform:rotate(7deg)}
#alastar-site-chat .portal-chat-dragon-breath-v85>i:nth-child(4){top:47% !important;height:5% !important;filter:blur(1px) drop-shadow(0 0 8px #fff1a0) !important;}

#alastar-site-chat .portal-chat-gift-screen-v77.is-gift-red-dragon-v85 {background:radial-gradient(circle,rgba(255,72,32,.27),rgba(127,0,0,.16) 28%,rgba(8,10,20,.16) 52%,transparent 76%) !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-red-dragon-v85 {animation:alastar-dragon-overlay-v85 3.3s ease-out both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-red-dragon-v85 .portal-chat-dragon-main-v85{opacity:1 !important;animation:alastar-dragon-flight-v85 3.28s cubic-bezier(.14,.82,.18,1) both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-red-dragon-v85 .portal-chat-dragon-echo-v85{opacity:.28 !important;animation:alastar-dragon-echo-v85 3.28s cubic-bezier(.14,.82,.18,1) both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-red-dragon-v85 .portal-chat-dragon-glow-v85{opacity:1 !important;animation:alastar-dragon-glow-v85 3.3s ease-out both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-red-dragon-v85 .portal-chat-dragon-shadow-v85{opacity:1 !important;animation:alastar-dragon-shadow-v85 3.3s ease-out both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-red-dragon-v85 .portal-chat-dragon-flames-v85{opacity:1 !important;animation:alastar-dragon-flames-v85 3.3s ease-out both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-red-dragon-v85 .portal-chat-dragon-burst-v85{opacity:1 !important;animation:alastar-dragon-burst-v85 3.3s ease-out both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-red-dragon-v85 .portal-chat-dragon-breath-v85>i:nth-child(1){animation:alastar-dragon-breath-v85 .95s ease-out 1.12s both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-red-dragon-v85 .portal-chat-dragon-breath-v85>i:nth-child(2){animation:alastar-dragon-breath-v85 .9s ease-out 1.18s both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-red-dragon-v85 .portal-chat-dragon-breath-v85>i:nth-child(3){animation:alastar-dragon-breath-v85 .9s ease-out 1.22s both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-red-dragon-v85 .portal-chat-dragon-breath-v85>i:nth-child(4){animation:alastar-dragon-breath-v85 .75s ease-out 1.08s both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-red-dragon-v85 .portal-chat-gift-caption-v81{animation:alastar-gift-caption-dragon-v85 3.3s ease-out both !important;}

@keyframes alastar-dragon-overlay-v85{0%{opacity:0}5%{opacity:1}92%{opacity:1}100%{opacity:0}}
@keyframes alastar-dragon-flight-v85{0%{opacity:0;transform:translate(32%,-104%) rotate(24deg) scale(.35)}16%{opacity:1;transform:translate(-18%,-72%) rotate(10deg) scale(.78)}34%{transform:translate(-53%,-46%) rotate(-4deg) scale(1.12)}50%{transform:translate(-50%,-50%) rotate(2deg) scale(1.04)}72%{transform:translate(-50%,-48%) rotate(-1deg) scale(1.08)}90%{opacity:1;transform:translate(-50%,-50%) scale(1.04)}100%{opacity:0;transform:translate(-58%,-64%) scale(.88)}}
@keyframes alastar-dragon-echo-v85{0%{opacity:0;transform:translate(40%,-110%) rotate(24deg) scale(.32)}20%{opacity:.25;transform:translate(-5%,-76%) rotate(10deg) scale(.74)}40%{opacity:.22;transform:translate(-48%,-45%) scale(1.10)}100%{opacity:0;transform:translate(-64%,-68%) scale(.92)}}
@keyframes alastar-dragon-glow-v85{0%{opacity:0;transform:scale(.3)}22%{opacity:.9;transform:scale(.88)}56%{opacity:.72;transform:scale(1.16)}100%{opacity:0;transform:scale(1.48)}}
@keyframes alastar-dragon-shadow-v85{0%{opacity:0;transform:translate(-50%,80px) scale(.32)}34%{opacity:.35;transform:translate(-50%,54px) scale(.85)}58%{opacity:.48;transform:translate(-50%,46px) scale(1.05)}100%{opacity:0;transform:translate(-50%,58px) scale(.74)}}
@keyframes alastar-dragon-flames-v85{0%{opacity:0;transform:translate(-50%,-50%) scale(.28)}35%{opacity:.7;transform:translate(-50%,-50%) scale(.85)}62%{opacity:.84;transform:translate(-50%,-50%) scale(1.12)}100%{opacity:0;transform:translate(-50%,-50%) scale(1.36)}}
@keyframes alastar-dragon-burst-v85{0%{opacity:0;transform:scale(.2) rotate(-8deg)}25%{opacity:.78;transform:scale(.9) rotate(4deg)}60%{opacity:.55;transform:scale(1.12) rotate(0)}100%{opacity:0;transform:scale(1.42)}}
@keyframes alastar-dragon-breath-v85{0%{opacity:0;transform:scaleX(.1)}18%{opacity:1;transform:scaleX(.85)}58%{opacity:.96;transform:scaleX(1.34)}100%{opacity:0;transform:scaleX(1.62)}}
@keyframes alastar-gift-caption-dragon-v85{0%{opacity:0;transform:translateX(-50%) translateY(16px) scale(.95)}22%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}84%{opacity:1}100%{opacity:0;transform:translateX(-50%) translateY(-4px) scale(.98)}}

/* --- Tesouro de Kersef: baú surge, explode em ouro e moedas --- */
#alastar-site-chat .portal-chat-treasure-main-v85,
#alastar-site-chat .portal-chat-treasure-echo-v85 {position:absolute !important;left:50% !important;top:50% !important;width:clamp(210px,28vw,420px) !important;height:auto !important;object-fit:contain !important;transform-origin:center bottom !important;backface-visibility:hidden !important;}
#alastar-site-chat .portal-chat-treasure-main-v85{z-index:4 !important;filter:drop-shadow(0 18px 22px rgba(0,0,0,.42)) drop-shadow(0 0 26px rgba(255,201,63,.64)) drop-shadow(0 0 52px rgba(255,137,0,.30)) !important;}
#alastar-site-chat .portal-chat-treasure-echo-v85{z-index:2 !important;opacity:.26 !important;filter:blur(2px) brightness(1.16) drop-shadow(0 0 28px rgba(255,201,68,.46)) !important;}
#alastar-site-chat .portal-chat-treasure-glow-v85{position:absolute !important;inset:10% !important;border-radius:50% !important;background:radial-gradient(circle,rgba(255,249,187,.94),rgba(255,207,63,.54) 30%,rgba(255,132,0,.22) 55%,transparent 74%) !important;filter:blur(28px) !important;opacity:0 !important;}
#alastar-site-chat .portal-chat-treasure-shadow-v85{position:absolute !important;left:50% !important;top:66% !important;width:36% !important;height:10% !important;transform:translate(-50%,38px) !important;border-radius:999px !important;background:radial-gradient(ellipse,rgba(0,0,0,.54),rgba(0,0,0,.22) 54%,transparent 78%) !important;filter:blur(13px) !important;opacity:0 !important;}
#alastar-site-chat .portal-chat-treasure-coins-v85{position:absolute !important;inset:0 !important;z-index:5 !important;pointer-events:none !important;}
#alastar-site-chat .portal-chat-treasure-coins-v85>i{--angle:calc(var(--coin-i) * 30deg);position:absolute !important;left:50% !important;top:48% !important;width:14px !important;height:14px !important;border-radius:50% !important;border:2px solid #fff0a0 !important;background:linear-gradient(135deg,#fff5a7,#ffc629 52%,#c97805) !important;box-shadow:0 0 9px rgba(255,197,54,.76) !important;opacity:0 !important;}
#alastar-site-chat .portal-chat-treasure-sparkles-v85{position:absolute !important;inset:0 !important;z-index:6 !important;pointer-events:none !important;}
#alastar-site-chat .portal-chat-treasure-sparkles-v85>i{position:absolute !important;width:9px !important;height:9px !important;background:#fff9bc !important;clip-path:polygon(50% 0,60% 38%,100% 50%,60% 62%,50% 100%,40% 62%,0 50%,40% 38%) !important;filter:drop-shadow(0 0 7px #ffd34a) !important;opacity:0 !important;}
#alastar-site-chat .portal-chat-treasure-sparkles-v85>i:nth-child(1){left:30% !important;top:28% !important}.portal-chat-treasure-sparkles-v85>i:nth-child(2){left:66% !important;top:25% !important}.portal-chat-treasure-sparkles-v85>i:nth-child(3){left:76% !important;top:47% !important}.portal-chat-treasure-sparkles-v85>i:nth-child(4){left:23% !important;top:52% !important}.portal-chat-treasure-sparkles-v85>i:nth-child(5){left:59% !important;top:67% !important}.portal-chat-treasure-sparkles-v85>i:nth-child(6){left:39% !important;top:70% !important}

#alastar-site-chat .portal-chat-gift-screen-v77.is-gift-kersef-treasure-v85{background:radial-gradient(circle,rgba(255,225,100,.28),rgba(255,151,13,.13) 28%,rgba(9,13,22,.14) 54%,transparent 76%) !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-kersef-treasure-v85{animation:alastar-treasure-overlay-v85 3s ease-out both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-kersef-treasure-v85 .portal-chat-treasure-main-v85{opacity:1 !important;animation:alastar-treasure-pop-v85 2.98s cubic-bezier(.16,.82,.18,1) both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-kersef-treasure-v85 .portal-chat-treasure-echo-v85{opacity:.28 !important;animation:alastar-treasure-echo-v85 2.98s cubic-bezier(.16,.82,.18,1) both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-kersef-treasure-v85 .portal-chat-treasure-glow-v85{opacity:1 !important;animation:alastar-treasure-glow-v85 3s ease-out both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-kersef-treasure-v85 .portal-chat-treasure-shadow-v85{opacity:1 !important;animation:alastar-treasure-shadow-v85 3s ease-out both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-kersef-treasure-v85 .portal-chat-treasure-burst-v85{opacity:1 !important;animation:alastar-treasure-burst-v85 3s ease-out both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-kersef-treasure-v85 .portal-chat-treasure-coins-v85>i{animation:alastar-treasure-coin-v85 1.5s cubic-bezier(.15,.75,.18,1) calc(.42s + var(--coin-i)*.025s) both !important;transform:rotate(var(--angle)) translateY(0);}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-kersef-treasure-v85 .portal-chat-treasure-sparkles-v85>i:nth-child(odd){animation:alastar-treasure-sparkle-v85 1.45s ease-out .58s both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-kersef-treasure-v85 .portal-chat-treasure-sparkles-v85>i:nth-child(even){animation:alastar-treasure-sparkle-v85 1.35s ease-out .72s both !important;}
#alastar-site-chat .portal-chat-gift-screen-v77.is-playing-v77.is-gift-kersef-treasure-v85 .portal-chat-gift-caption-v81{animation:alastar-gift-caption-treasure-v85 3s ease-out both !important;}

@keyframes alastar-treasure-overlay-v85{0%{opacity:0}5%{opacity:1}91%{opacity:1}100%{opacity:0}}
@keyframes alastar-treasure-pop-v85{0%{opacity:0;transform:translate(-50%,30%) scale(.28) rotateX(28deg)}16%{opacity:1;transform:translate(-50%,-18%) scale(.88) rotateX(-9deg)}32%{transform:translate(-50%,-50%) scale(1.18) rotateX(4deg)}45%{transform:translate(-50%,-47%) scale(.96)}58%{transform:translate(-50%,-50%) scale(1.12)}78%{transform:translate(-50%,-50%) scale(1.04)}91%{opacity:1}100%{opacity:0;transform:translate(-50%,-54%) scale(.88)}}
@keyframes alastar-treasure-echo-v85{0%{opacity:0;transform:translate(-50%,35%) scale(.26)}22%{opacity:.26;transform:translate(-50%,-12%) scale(.9)}42%{opacity:.2;transform:translate(-50%,-46%) scale(1.18)}100%{opacity:0;transform:translate(-50%,-58%) scale(.92)}}
@keyframes alastar-treasure-glow-v85{0%{opacity:0;transform:scale(.28)}22%{opacity:.95;transform:scale(.9)}48%{opacity:.82;transform:scale(1.18)}78%{opacity:.48;transform:scale(1.38)}100%{opacity:0;transform:scale(1.58)}}
@keyframes alastar-treasure-shadow-v85{0%{opacity:0;transform:translate(-50%,70px) scale(.42)}30%{opacity:.44;transform:translate(-50%,40px) scale(.9)}68%{opacity:.35;transform:translate(-50%,44px) scale(1.08)}100%{opacity:0;transform:translate(-50%,54px) scale(.76)}}
@keyframes alastar-treasure-burst-v85{0%{opacity:0;transform:scale(.2)}20%{opacity:.94;transform:scale(.88)}52%{opacity:.76;transform:scale(1.12)}100%{opacity:0;transform:scale(1.48)}}
@keyframes alastar-treasure-coin-v85{0%{opacity:0;transform:rotate(var(--angle)) translateY(0) scale(.4)}18%{opacity:1}70%{opacity:.95;transform:rotate(var(--angle)) translateY(-150px) scale(1) rotate(260deg)}100%{opacity:0;transform:rotate(var(--angle)) translateY(-190px) scale(.7) rotate(420deg)}}
@keyframes alastar-treasure-sparkle-v85{0%{opacity:0;transform:scale(.2) rotate(0)}30%{opacity:1;transform:scale(1.35) rotate(90deg)}70%{opacity:.85;transform:scale(.9) rotate(180deg)}100%{opacity:0;transform:scale(.3) rotate(270deg)}}
@keyframes alastar-gift-caption-treasure-v85{0%{opacity:0;transform:translateX(-50%) translateY(16px) scale(.95)}22%{opacity:1;transform:translateX(-50%) translateY(0) scale(1)}84%{opacity:1}100%{opacity:0;transform:translateX(-50%) translateY(-4px) scale(.98)}}

@media (max-width:767.98px){
#alastar-site-chat .portal-chat-warrior-main-v85,#alastar-site-chat .portal-chat-warrior-echo-v85{width:clamp(175px,52vw,270px) !important}
#alastar-site-chat .portal-chat-dragon-main-v85,#alastar-site-chat .portal-chat-dragon-echo-v85{width:clamp(190px,58vw,300px) !important}
#alastar-site-chat .portal-chat-treasure-main-v85,#alastar-site-chat .portal-chat-treasure-echo-v85{width:clamp(175px,52vw,270px) !important}
#alastar-site-chat .portal-chat-treasure-coins-v85>i{width:10px !important;height:10px !important}
}

/* ========================================================================== */
/* V86 - CENTRAL DE TICKETS                                                   */
/* ========================================================================== */
#alastar-site-chat .portal-ticket-panel-v86 {
    position: relative;
    min-width: 0;
    background: #06111f;
    overflow: hidden;
}

#alastar-site-chat .portal-ticket-app-v86 {
    position: relative;
    min-width: 0;
    min-height: 560px;
    height: var(--alastar-chat-normal-height-v66, 660px);
    max-height: var(--alastar-chat-normal-height-v66, 660px);
    display: grid;
    grid-template-rows: auto auto minmax(0, 1fr);
    background:
        radial-gradient(circle at 50% 0%, rgba(38, 111, 175, .08), transparent 34%),
        linear-gradient(180deg, #071727 0%, #04101c 100%);
    color: #eef7ff;
}

#alastar-site-chat .portal-ticket-header-v86 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-width: 0;
    padding: 13px 16px;
    border-bottom: 1px solid rgba(86, 169, 235, .22);
    background: linear-gradient(180deg, rgba(12, 39, 63, .96), rgba(6, 24, 41, .96));
}

#alastar-site-chat .portal-ticket-heading-v86 {
    display: flex;
    align-items: center;
    gap: 11px;
    min-width: 0;
}

#alastar-site-chat .portal-ticket-heading-icon-v86 {
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(244, 185, 70, .42);
    border-radius: 10px;
    color: #f8c657;
    background: linear-gradient(180deg, rgba(104, 65, 16, .78), rgba(40, 28, 10, .86));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}

#alastar-site-chat .portal-ticket-heading-v86 > div { min-width: 0; }
#alastar-site-chat .portal-ticket-heading-v86 small {
    display: block;
    margin-bottom: 2px;
    color: #77c6f5;
    font: 800 8px/1.1 'Inter', system-ui, sans-serif;
    letter-spacing: .11em;
}
#alastar-site-chat .portal-ticket-heading-v86 h3 {
    margin: 0;
    color: #ffe2a0;
    font: 800 16px/1.15 'Cinzel', serif;
}
#alastar-site-chat .portal-ticket-heading-v86 p {
    margin: 3px 0 0;
    color: #a9c1d4;
    font: 600 10px/1.35 'Inter', system-ui, sans-serif;
}

#alastar-site-chat .portal-ticket-new-v86,
#alastar-site-chat .portal-ticket-submit-v86,
#alastar-site-chat .portal-ticket-status-action-v86,
#alastar-site-chat .portal-ticket-reply-v86 button,
#alastar-site-chat .portal-ticket-list-empty-v86 button {
    border: 1px solid rgba(244, 187, 74, .52);
    border-radius: 8px;
    color: #fff0c4;
    background: linear-gradient(180deg, #9a4b1e, #6f260f);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 3px 10px rgba(0,0,0,.18);
    font: 800 10px/1 'Cinzel', serif;
    cursor: pointer;
}
#alastar-site-chat .portal-ticket-new-v86 {
    min-height: 40px;
    padding: 0 14px;
    white-space: nowrap;
}
#alastar-site-chat .portal-ticket-new-v86:hover,
#alastar-site-chat .portal-ticket-submit-v86:hover,
#alastar-site-chat .portal-ticket-reply-v86 button:hover {
    filter: brightness(1.08);
}
#alastar-site-chat .portal-ticket-new-v86:disabled,
#alastar-site-chat .portal-ticket-submit-v86:disabled,
#alastar-site-chat .portal-ticket-reply-v86 button:disabled {
    opacity: .55;
    cursor: wait;
}

#alastar-site-chat .portal-ticket-feedback-v86 {
    min-height: 0;
    padding: 0 16px;
    color: #b9cfdf;
    font: 700 10px/1.3 'Inter', system-ui, sans-serif;
    overflow: hidden;
}
#alastar-site-chat .portal-ticket-feedback-v86:not(:empty) { padding-top: 7px; padding-bottom: 7px; border-bottom: 1px solid rgba(86,169,235,.12); }
#alastar-site-chat .portal-ticket-feedback-v86.is-error { color: #ff9b9b; }
#alastar-site-chat .portal-ticket-feedback-v86.is-success { color: #83e9aa; }
#alastar-site-chat .portal-ticket-feedback-v86.is-pending { color: #f6d277; }

#alastar-site-chat .portal-ticket-workspace-v86 {
    min-width: 0;
    min-height: 0;
    display: grid;
    grid-template-columns: minmax(210px, 31%) minmax(0, 1fr);
    overflow: hidden;
}

#alastar-site-chat .portal-ticket-list-panel-v86 {
    min-width: 0;
    min-height: 0;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    border-right: 1px solid rgba(86, 169, 235, .22);
    background: rgba(4, 17, 30, .88);
}

#alastar-site-chat .portal-ticket-list-head-v86 {
    min-height: 54px;
    padding: 9px 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    border-bottom: 1px solid rgba(86,169,235,.15);
}
#alastar-site-chat .portal-ticket-list-head-v86 small {
    display: block;
    color: #6fbbe9;
    font: 800 7px/1 'Inter', system-ui, sans-serif;
    letter-spacing: .09em;
}
#alastar-site-chat .portal-ticket-list-head-v86 strong {
    display: block;
    margin-top: 4px;
    color: #fff0c7;
    font: 800 11px/1.1 'Cinzel', serif;
}
#alastar-site-chat .portal-ticket-list-head-v86 button {
    width: 31px;
    height: 31px;
    flex: 0 0 31px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(81,170,239,.32);
    border-radius: 7px;
    color: #9edaff;
    background: #0b2942;
    cursor: pointer;
}
#alastar-site-chat .portal-ticket-list-head-v86 button.is-loading i { animation: fa-spin 1s linear infinite; }

#alastar-site-chat .portal-ticket-list-v86 {
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: rgba(66, 161, 231, .62) transparent;
    padding: 7px;
}

#alastar-site-chat .portal-ticket-row-v86 {
    width: 100%;
    min-width: 0;
    display: grid;
    gap: 5px;
    margin: 0 0 6px;
    padding: 9px 10px;
    text-align: left;
    border: 1px solid rgba(82, 162, 224, .20);
    border-radius: 8px;
    color: #dcecf7;
    background: linear-gradient(180deg, rgba(10, 36, 58, .84), rgba(5, 24, 41, .92));
    cursor: pointer;
}
#alastar-site-chat .portal-ticket-row-v86:hover { border-color: rgba(91,183,248,.46); background: #0b3150; }
#alastar-site-chat .portal-ticket-row-v86.is-active {
    border-color: rgba(245, 188, 70, .64);
    background: linear-gradient(180deg, rgba(79, 56, 16, .66), rgba(11, 38, 58, .96));
    box-shadow: inset 3px 0 0 #f0b845;
}
#alastar-site-chat .portal-ticket-row-top-v86 { display: flex; align-items: center; justify-content: space-between; gap: 6px; min-width: 0; }
#alastar-site-chat .portal-ticket-row-top-v86 > b { color: #7bc8f7; font: 800 8px/1 'Inter', system-ui, sans-serif; }
#alastar-site-chat .portal-ticket-row-subject-v86 {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #fff4d0;
    font: 800 10.5px/1.2 'Inter', system-ui, sans-serif;
}
#alastar-site-chat .portal-ticket-row-meta-v86 {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: #8faabd;
    font: 600 8px/1.2 'Inter', system-ui, sans-serif;
}

#alastar-site-chat .portal-ticket-status-v86 {
    min-height: 19px;
    padding: 0 7px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    border: 1px solid rgba(76, 181, 238, .30);
    color: #bfe8ff;
    background: rgba(18, 94, 134, .30);
    font: 800 7px/1 'Inter', system-ui, sans-serif;
    white-space: nowrap;
}
#alastar-site-chat .portal-ticket-status-v86.is-open { border-color: rgba(48,216,123,.38); color: #85efad; background: rgba(12,112,58,.30); }
#alastar-site-chat .portal-ticket-status-v86.is-answered { border-color: rgba(242,184,65,.42); color: #ffe18b; background: rgba(111,77,9,.34); }
#alastar-site-chat .portal-ticket-status-v86.is-closed { border-color: rgba(159,174,186,.30); color: #aab9c5; background: rgba(70,83,94,.26); }

#alastar-site-chat .portal-ticket-loading-v86,
#alastar-site-chat .portal-ticket-list-empty-v86,
#alastar-site-chat .portal-ticket-empty-v86 {
    min-height: 150px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    text-align: center;
    color: #8faabd;
    font: 600 9px/1.4 'Inter', system-ui, sans-serif;
}
#alastar-site-chat .portal-ticket-loading-v86 > i,
#alastar-site-chat .portal-ticket-list-empty-v86 > i,
#alastar-site-chat .portal-ticket-empty-v86 > i { color: #55bdf3; font-size: 24px; }
#alastar-site-chat .portal-ticket-list-empty-v86 strong,
#alastar-site-chat .portal-ticket-empty-v86 strong { color: #f8e5b5; font: 800 12px/1.2 'Cinzel', serif; }
#alastar-site-chat .portal-ticket-list-empty-v86 button { min-height: 34px; margin-top: 4px; padding: 0 12px; }

#alastar-site-chat .portal-ticket-detail-v86 {
    min-width: 0;
    min-height: 0;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr) auto;
    background: linear-gradient(180deg, rgba(4, 17, 29, .78), rgba(2, 12, 22, .94));
    overflow: hidden;
}

#alastar-site-chat .portal-ticket-detail-head-v86 {
    min-width: 0;
    padding: 11px 13px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    border-bottom: 1px solid rgba(86,169,235,.18);
    background: rgba(7, 28, 47, .76);
}
#alastar-site-chat .portal-ticket-detail-head-v86 > div:first-child { min-width: 0; }
#alastar-site-chat .portal-ticket-detail-head-v86 small { display:block; color:#72bfe9; font:800 8px/1.1 'Inter',system-ui,sans-serif; letter-spacing:.04em; }
#alastar-site-chat .portal-ticket-detail-head-v86 h4 { margin:4px 0 3px; color:#fff0be; font:800 14px/1.2 'Cinzel',serif; overflow-wrap:anywhere; }
#alastar-site-chat .portal-ticket-detail-head-v86 > div:first-child > span { color:#8faabd; font:600 8px/1.2 'Inter',system-ui,sans-serif; }
#alastar-site-chat .portal-ticket-detail-actions-v86 { display:flex; align-items:center; gap:6px; flex:0 0 auto; }
#alastar-site-chat .portal-ticket-status-action-v86 { min-height:28px; padding:0 8px; font-size:8px; }

#alastar-site-chat .portal-ticket-thread-v86 {
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 11px 12px 20px;
    scrollbar-width: thin;
    scrollbar-color: rgba(66,161,231,.62) transparent;
}
#alastar-site-chat .portal-ticket-message-v86 {
    width: min(84%, 620px);
    margin: 0 auto 8px 0;
    padding: 9px 10px;
    border: 1px solid rgba(79,157,217,.24);
    border-radius: 9px;
    background: linear-gradient(180deg, rgba(10,36,58,.92), rgba(5,23,40,.96));
    box-shadow: 0 3px 10px rgba(0,0,0,.12);
}
#alastar-site-chat .portal-ticket-message-v86.is-staff { border-color: rgba(242,184,65,.32); background: linear-gradient(180deg, rgba(54,42,15,.82), rgba(19,28,39,.96)); }
#alastar-site-chat .portal-ticket-message-v86.is-mine { margin-left: auto; margin-right: 0; }
#alastar-site-chat .portal-ticket-message-v86 header { display:flex; align-items:center; gap:6px; min-width:0; }
#alastar-site-chat .portal-ticket-message-v86 header strong { color:#f4fbff; font:800 9px/1 'Inter',system-ui,sans-serif; }
#alastar-site-chat .portal-ticket-message-v86 header time { margin-left:auto; color:#7893a7; font:600 7.5px/1 'Inter',system-ui,sans-serif; }
#alastar-site-chat .portal-ticket-message-role-v86 { padding:2px 5px; border-radius:4px; color:#aaddff; background:#113d5e; font:900 6.5px/1 'Inter',system-ui,sans-serif; }
#alastar-site-chat .portal-ticket-message-role-v86.is-staff { color:#fff0a9; background:#704210; }
#alastar-site-chat .portal-ticket-message-v86 p { margin:7px 0 0; color:#d8e6ef; font:600 10px/1.45 'Inter',system-ui,sans-serif; white-space:pre-wrap; overflow-wrap:anywhere; }

#alastar-site-chat .portal-ticket-reply-v86 {
    padding: 9px 10px;
    border-top: 1px solid rgba(86,169,235,.18);
    background: #061725;
}
#alastar-site-chat .portal-ticket-reply-v86 textarea,
#alastar-site-chat .portal-ticket-compose-v86 textarea,
#alastar-site-chat .portal-ticket-compose-v86 input,
#alastar-site-chat .portal-ticket-compose-v86 select {
    width: 100%;
    min-width: 0;
    border: 1px solid rgba(83,165,226,.32);
    border-radius: 8px;
    outline: none;
    color: #f2f8fc;
    background: #071c2d;
    font: 600 11px/1.4 'Inter', system-ui, sans-serif;
    box-shadow: inset 0 1px 3px rgba(0,0,0,.22);
}
#alastar-site-chat .portal-ticket-reply-v86 textarea { min-height: 64px; max-height: 140px; resize: vertical; padding: 9px 10px; }
#alastar-site-chat .portal-ticket-reply-v86 textarea:focus,
#alastar-site-chat .portal-ticket-compose-v86 textarea:focus,
#alastar-site-chat .portal-ticket-compose-v86 input:focus,
#alastar-site-chat .portal-ticket-compose-v86 select:focus { border-color: rgba(244,187,74,.70); box-shadow: 0 0 0 2px rgba(244,187,74,.10); }
#alastar-site-chat .portal-ticket-reply-v86 > div { margin-top:7px; display:flex; align-items:center; justify-content:space-between; gap:8px; }
#alastar-site-chat .portal-ticket-reply-v86 > div > span { color:#809daf; font:600 8px/1.3 'Inter',system-ui,sans-serif; }
#alastar-site-chat .portal-ticket-reply-v86 button { min-height:34px; padding:0 11px; }
#alastar-site-chat .portal-ticket-closed-v86 { padding:12px; text-align:center; border-top:1px solid rgba(86,169,235,.15); color:#99aab6; font:700 9px/1.3 'Inter',system-ui,sans-serif; background:#071520; }

#alastar-site-chat .portal-ticket-compose-overlay-v86 {
    position: absolute;
    inset: 0;
    z-index: 2147483500;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    background: rgba(1, 7, 13, .76);
    backdrop-filter: blur(5px);
}
#alastar-site-chat .portal-ticket-compose-overlay-v86[hidden] { display: none !important; }
#alastar-site-chat .portal-ticket-compose-v86 {
    width: min(560px, 100%);
    max-height: 92%;
    overflow-y: auto;
    padding: 13px;
    border: 1px solid rgba(87,174,239,.34);
    border-radius: 12px;
    background: linear-gradient(180deg, #0a2236, #061421);
    box-shadow: 0 20px 60px rgba(0,0,0,.44), inset 0 1px 0 rgba(255,255,255,.04);
}
#alastar-site-chat .portal-ticket-compose-v86 > header { display:flex; align-items:center; justify-content:space-between; gap:10px; padding-bottom:10px; margin-bottom:9px; border-bottom:1px solid rgba(86,169,235,.18); }
#alastar-site-chat .portal-ticket-compose-v86 > header small { display:block; color:#6fc4f1; font:800 7px/1 'Inter',system-ui,sans-serif; letter-spacing:.1em; }
#alastar-site-chat .portal-ticket-compose-v86 > header strong { display:block; margin-top:4px; color:#ffe3a2; font:800 15px/1.1 'Cinzel',serif; }
#alastar-site-chat .portal-ticket-compose-v86 > header button { width:32px; height:32px; border:1px solid rgba(92,166,220,.28); border-radius:7px; color:#b9d8eb; background:#0b2940; cursor:pointer; }
#alastar-site-chat .portal-ticket-compose-v86 label { display:grid; gap:5px; margin-bottom:9px; }
#alastar-site-chat .portal-ticket-compose-v86 label > span { color:#c5d8e5; font:700 9px/1.2 'Inter',system-ui,sans-serif; }
#alastar-site-chat .portal-ticket-compose-v86 input,
#alastar-site-chat .portal-ticket-compose-v86 select { height:40px; padding:0 10px; }
#alastar-site-chat .portal-ticket-compose-v86 textarea { min-height:130px; resize:vertical; padding:9px 10px; }
#alastar-site-chat .portal-ticket-form-feedback-v86 { min-height:18px; margin:2px 0 7px; color:#9fb8ca; font:700 9px/1.3 'Inter',system-ui,sans-serif; }
#alastar-site-chat .portal-ticket-form-feedback-v86.is-error { color:#ff9b9b; }
#alastar-site-chat .portal-ticket-form-feedback-v86.is-success { color:#82e6a7; }
#alastar-site-chat .portal-ticket-form-feedback-v86.is-pending { color:#f4d177; }
#alastar-site-chat .portal-ticket-submit-v86 { width:100%; min-height:42px; }

body > #alastar-site-chat.is-fullscreen-v51 .portal-ticket-app-v86 {
    height: calc(100% - 0px);
    max-height: none;
    min-height: 0;
}

@media (max-width: 900px) {
    #alastar-site-chat .portal-ticket-app-v86 { height:auto; max-height:none; min-height:0; }
    #alastar-site-chat .portal-ticket-header-v86 { align-items:flex-start; flex-wrap:wrap; }
    #alastar-site-chat .portal-ticket-new-v86 { margin-left:auto; }
    #alastar-site-chat .portal-ticket-workspace-v86 { grid-template-columns:1fr; overflow:visible; }
    #alastar-site-chat .portal-ticket-list-panel-v86 { border-right:0; border-bottom:1px solid rgba(86,169,235,.20); }
    #alastar-site-chat .portal-ticket-list-v86 { max-height:240px; }
    #alastar-site-chat .portal-ticket-detail-v86 { min-height:420px; }
}

@media (max-width: 575.98px) {
    #alastar-site-chat .portal-ticket-header-v86 { padding:10px; gap:9px; }
    #alastar-site-chat .portal-ticket-heading-icon-v86 { width:36px; height:36px; flex-basis:36px; }
    #alastar-site-chat .portal-ticket-heading-v86 h3 { font-size:13px; }
    #alastar-site-chat .portal-ticket-heading-v86 p { font-size:9px; }
    #alastar-site-chat .portal-ticket-new-v86 { width:100%; min-height:42px; }
    #alastar-site-chat .portal-ticket-detail-head-v86 { flex-direction:column; }
    #alastar-site-chat .portal-ticket-detail-actions-v86 { width:100%; justify-content:space-between; }
    #alastar-site-chat .portal-ticket-message-v86 { width:94%; }
    #alastar-site-chat .portal-ticket-reply-v86 > div { align-items:stretch; flex-direction:column; }
    #alastar-site-chat .portal-ticket-reply-v86 button { min-height:42px; }
    #alastar-site-chat .portal-ticket-compose-overlay-v86 { padding:8px; }
    #alastar-site-chat .portal-ticket-compose-v86 { max-height:96%; padding:10px; }
    #alastar-site-chat .portal-ticket-compose-v86 input,
    #alastar-site-chat .portal-ticket-compose-v86 select,
    #alastar-site-chat .portal-ticket-compose-v86 textarea { font-size:16px; }
}

/* ========================================================================== */
/* V87 - TICKETS RESPONSIVOS + LEGIBILIDADE + EXCLUSÃO PERMANENTE             */
/* ========================================================================== */

#alastar-site-chat .portal-ticket-app-v86,
#alastar-site-chat .portal-ticket-app-v86 button,
#alastar-site-chat .portal-ticket-app-v86 input,
#alastar-site-chat .portal-ticket-app-v86 select,
#alastar-site-chat .portal-ticket-app-v86 textarea {
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
    text-rendering: optimizeLegibility !important;
}

/* Modo normal: ocupa exatamente a mesma área útil do painel de chat, sem
   estourar para fora nem depender do zoom do navegador. */
#alastar-site-chat:not(.is-fullscreen-v51) .portal-ticket-panel-v86 {
    min-width: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

#alastar-site-chat:not(.is-fullscreen-v51) .portal-ticket-app-v86 {
    min-height: 560px !important;
    height: var(--alastar-chat-normal-height-v66, 660px) !important;
    max-height: var(--alastar-chat-normal-height-v66, 660px) !important;
    overflow: hidden !important;
}

#alastar-site-chat .portal-ticket-workspace-v86 {
    grid-template-columns: minmax(260px, 34%) minmax(0, 1fr) !important;
    min-height: 0 !important;
    height: 100% !important;
    overflow: hidden !important;
}

#alastar-site-chat .portal-ticket-list-panel-v86,
#alastar-site-chat .portal-ticket-detail-v86 {
    min-width: 0 !important;
    min-height: 0 !important;
    height: 100% !important;
    max-height: 100% !important;
    box-sizing: border-box !important;
}

/* Cabeçalho mais forte, sem ficar borrado/pequeno. */
#alastar-site-chat .portal-ticket-header-v86 {
    min-height: 76px !important;
    padding: 13px 16px !important;
    gap: 14px !important;
}

#alastar-site-chat .portal-ticket-heading-icon-v86 {
    width: 44px !important;
    height: 44px !important;
    flex-basis: 44px !important;
    font-size: 17px !important;
}

#alastar-site-chat .portal-ticket-heading-v86 small {
    font-size: 9px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
}

#alastar-site-chat .portal-ticket-heading-v86 h3 {
    font-size: 18px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
    text-shadow: 0 1px 0 rgba(0,0,0,.68) !important;
}

#alastar-site-chat .portal-ticket-heading-v86 p {
    max-width: 720px !important;
    font-size: 11.5px !important;
    line-height: 1.35 !important;
    font-weight: 650 !important;
    color: #c0d4e3 !important;
}

#alastar-site-chat .portal-ticket-new-v86 {
    min-height: 42px !important;
    padding: 0 15px !important;
    font-size: 11px !important;
}

#alastar-site-chat .portal-ticket-feedback-v86 {
    font-size: 11px !important;
    line-height: 1.35 !important;
}

/* Lista de tickets: texto maior e cards mais claros. */
#alastar-site-chat .portal-ticket-list-head-v86 {
    min-height: 62px !important;
    padding: 10px 11px !important;
}

#alastar-site-chat .portal-ticket-list-head-v86 small {
    font-size: 8.5px !important;
    line-height: 1.1 !important;
    font-weight: 900 !important;
}

#alastar-site-chat .portal-ticket-list-head-v86 strong {
    margin-top: 5px !important;
    font-size: 13px !important;
    line-height: 1.12 !important;
    font-weight: 900 !important;
}

#alastar-site-chat .portal-ticket-list-head-v86 button {
    width: 34px !important;
    height: 34px !important;
    flex-basis: 34px !important;
    font-size: 12px !important;
}

#alastar-site-chat .portal-ticket-list-v86 {
    min-height: 0 !important;
    height: 100% !important;
    overflow-y: auto !important;
    padding: 8px !important;
    scrollbar-gutter: stable !important;
}

#alastar-site-chat .portal-ticket-row-v86 {
    gap: 6px !important;
    margin-bottom: 7px !important;
    padding: 11px 11px !important;
    border-radius: 9px !important;
}

#alastar-site-chat .portal-ticket-row-top-v86 > b {
    font-size: 10px !important;
    line-height: 1 !important;
    font-weight: 900 !important;
}

#alastar-site-chat .portal-ticket-row-subject-v86 {
    font-size: 13px !important;
    line-height: 1.25 !important;
    font-weight: 850 !important;
}

#alastar-site-chat .portal-ticket-row-meta-v86 {
    font-size: 10px !important;
    line-height: 1.25 !important;
    font-weight: 650 !important;
    color: #a8c0d1 !important;
}

#alastar-site-chat .portal-ticket-status-v86 {
    min-height: 22px !important;
    padding: 0 8px !important;
    font-size: 8.5px !important;
    font-weight: 900 !important;
}

#alastar-site-chat .portal-ticket-loading-v86,
#alastar-site-chat .portal-ticket-list-empty-v86,
#alastar-site-chat .portal-ticket-empty-v86 {
    font-size: 11px !important;
    line-height: 1.45 !important;
    color: #abc0d0 !important;
}

#alastar-site-chat .portal-ticket-list-empty-v86 strong,
#alastar-site-chat .portal-ticket-empty-v86 strong {
    font-size: 14px !important;
    line-height: 1.2 !important;
}

/* Detalhes / conversa. */
#alastar-site-chat .portal-ticket-detail-head-v86 {
    min-height: 76px !important;
    padding: 12px 14px !important;
    gap: 10px !important;
}

#alastar-site-chat .portal-ticket-detail-head-v86 small {
    font-size: 9.5px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
}

#alastar-site-chat .portal-ticket-detail-head-v86 h4 {
    margin: 5px 0 4px !important;
    font-size: 17px !important;
    line-height: 1.2 !important;
    font-weight: 900 !important;
}

#alastar-site-chat .portal-ticket-detail-head-v86 > div:first-child > span {
    font-size: 10.5px !important;
    line-height: 1.25 !important;
    font-weight: 650 !important;
    color: #a9c0d1 !important;
}

#alastar-site-chat .portal-ticket-detail-actions-v86 {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 6px !important;
    min-width: 0 !important;
}

#alastar-site-chat .portal-ticket-status-action-v86,
#alastar-site-chat .portal-ticket-delete-v87 {
    min-height: 32px !important;
    padding: 0 9px !important;
    border-radius: 7px !important;
    font: 850 9px/1 'Cinzel', serif !important;
    white-space: nowrap !important;
    cursor: pointer !important;
}

#alastar-site-chat .portal-ticket-delete-v87 {
    border: 1px solid rgba(255, 92, 82, .55) !important;
    color: #ffd2ce !important;
    background: linear-gradient(180deg, rgba(151, 43, 35, .96), rgba(86, 23, 20, .98)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 3px 10px rgba(0,0,0,.16) !important;
}

#alastar-site-chat .portal-ticket-delete-v87:hover {
    border-color: rgba(255, 124, 112, .82) !important;
    filter: brightness(1.10) !important;
}

#alastar-site-chat .portal-ticket-thread-v86 {
    min-height: 0 !important;
    height: 100% !important;
    overflow-y: auto !important;
    padding: 13px 14px 24px !important;
    scrollbar-gutter: stable !important;
}

#alastar-site-chat .portal-ticket-message-v86 {
    width: min(88%, 760px) !important;
    margin-bottom: 10px !important;
    padding: 11px 12px !important;
    border-radius: 10px !important;
}

#alastar-site-chat .portal-ticket-message-v86 header {
    gap: 7px !important;
    flex-wrap: wrap !important;
}

#alastar-site-chat .portal-ticket-message-v86 header strong {
    font-size: 11px !important;
    line-height: 1.1 !important;
    font-weight: 900 !important;
}

#alastar-site-chat .portal-ticket-message-v86 header time {
    font-size: 9px !important;
    line-height: 1 !important;
    font-weight: 650 !important;
}

#alastar-site-chat .portal-ticket-message-role-v86 {
    padding: 3px 6px !important;
    font-size: 8px !important;
    line-height: 1 !important;
}

#alastar-site-chat .portal-ticket-message-v86 p {
    margin-top: 8px !important;
    color: #e7f0f6 !important;
    font-size: 12.5px !important;
    line-height: 1.55 !important;
    font-weight: 550 !important;
}

#alastar-site-chat .portal-ticket-reply-v86 {
    padding: 10px 12px 11px !important;
}

#alastar-site-chat .portal-ticket-reply-v86 textarea,
#alastar-site-chat .portal-ticket-compose-v86 textarea,
#alastar-site-chat .portal-ticket-compose-v86 input,
#alastar-site-chat .portal-ticket-compose-v86 select {
    color: #f6fbff !important;
    background: #071c2d !important;
    border-color: rgba(83, 170, 235, .44) !important;
    font-family: 'Inter', system-ui, sans-serif !important;
    font-size: 12.5px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
}

#alastar-site-chat .portal-ticket-reply-v86 textarea {
    min-height: 78px !important;
    padding: 10px 11px !important;
}

#alastar-site-chat .portal-ticket-reply-v86 > div > span {
    font-size: 10px !important;
    line-height: 1.35 !important;
    color: #9fb8c9 !important;
}

#alastar-site-chat .portal-ticket-reply-v86 button {
    min-height: 36px !important;
    font-size: 10px !important;
}

#alastar-site-chat .portal-ticket-closed-v86 {
    font-size: 10.5px !important;
    line-height: 1.35 !important;
}

/* Modal de criação com a mesma legibilidade. */
#alastar-site-chat .portal-ticket-compose-v86 {
    width: min(600px, calc(100% - 24px)) !important;
}

#alastar-site-chat .portal-ticket-compose-v86 > header small {
    font-size: 8.5px !important;
}

#alastar-site-chat .portal-ticket-compose-v86 > header strong {
    font-size: 17px !important;
}

#alastar-site-chat .portal-ticket-compose-v86 label > span {
    font-size: 11px !important;
    font-weight: 800 !important;
}

#alastar-site-chat .portal-ticket-compose-v86 input,
#alastar-site-chat .portal-ticket-compose-v86 select {
    height: 44px !important;
}

#alastar-site-chat .portal-ticket-compose-v86 textarea {
    min-height: 145px !important;
}

#alastar-site-chat .portal-ticket-form-feedback-v86 {
    font-size: 10.5px !important;
}

#alastar-site-chat .portal-ticket-submit-v86 {
    min-height: 44px !important;
    font-size: 11px !important;
}

/* Fullscreen: a aba Ticket passa a preencher de verdade todo o espaço livre
   entre título/tabs e o fim do viewport, igual ao Chat. */
body > #alastar-site-chat.is-fullscreen-v51 #alastar-panel-ticket:not([hidden]) {
    display: flex !important;
    flex: 1 1 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
}

body > #alastar-site-chat.is-fullscreen-v51 #alastar-panel-ticket .portal-ticket-app-v86 {
    flex: 1 1 0 !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: 100% !important;
    max-height: 100% !important;
    overflow: hidden !important;
}

body > #alastar-site-chat.is-fullscreen-v51 #alastar-panel-ticket .portal-ticket-workspace-v86 {
    grid-template-columns: minmax(300px, 28%) minmax(0, 1fr) !important;
    min-height: 0 !important;
    height: 100% !important;
}

/* Zoom maior / notebook: reduz a largura lateral sem esmagar o detalhe. */
@media (min-width: 901px) and (max-width: 1250px) {
    #alastar-site-chat .portal-ticket-workspace-v86 {
        grid-template-columns: minmax(235px, 36%) minmax(0, 1fr) !important;
    }

    #alastar-site-chat .portal-ticket-heading-v86 p {
        font-size: 10.5px !important;
    }

    #alastar-site-chat .portal-ticket-detail-head-v86 {
        flex-wrap: wrap !important;
    }

    #alastar-site-chat .portal-ticket-detail-actions-v86 {
        max-width: 100% !important;
    }
}

/* Tablet/mobile: empilha sem sobreposição. As rolagens ficam dentro das áreas
   de tickets, não na largura da página. */
@media (max-width: 900px) {
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-ticket-app-v86 {
        height: auto !important;
        max-height: none !important;
        min-height: 0 !important;
        overflow: visible !important;
    }

    #alastar-site-chat .portal-ticket-workspace-v86 {
        grid-template-columns: 1fr !important;
        grid-template-rows: auto minmax(460px, auto) !important;
        height: auto !important;
        overflow: visible !important;
    }

    #alastar-site-chat .portal-ticket-list-panel-v86 {
        height: auto !important;
        max-height: 300px !important;
        border-right: 0 !important;
        border-bottom: 1px solid rgba(86,169,235,.20) !important;
    }

    #alastar-site-chat .portal-ticket-list-v86 {
        max-height: 230px !important;
    }

    #alastar-site-chat .portal-ticket-detail-v86 {
        height: auto !important;
        min-height: 460px !important;
        max-height: none !important;
    }

    #alastar-site-chat .portal-ticket-detail-head-v86 {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    #alastar-site-chat .portal-ticket-detail-actions-v86 {
        width: 100% !important;
        justify-content: flex-start !important;
    }

    #alastar-site-chat .portal-ticket-message-v86 {
        width: 94% !important;
    }

    body > #alastar-site-chat.is-fullscreen-v51 #alastar-panel-ticket:not([hidden]) {
        overflow-y: auto !important;
        overflow-x: hidden !important;
    }

    body > #alastar-site-chat.is-fullscreen-v51 #alastar-panel-ticket .portal-ticket-app-v86 {
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }
}

@media (max-width: 575.98px) {
    #alastar-site-chat .portal-ticket-header-v86 {
        min-height: 0 !important;
        padding: 11px !important;
        align-items: flex-start !important;
        flex-wrap: wrap !important;
    }

    #alastar-site-chat .portal-ticket-heading-v86 {
        width: 100% !important;
    }

    #alastar-site-chat .portal-ticket-heading-v86 h3 {
        font-size: 16px !important;
    }

    #alastar-site-chat .portal-ticket-heading-v86 p {
        font-size: 11px !important;
    }

    #alastar-site-chat .portal-ticket-new-v86 {
        width: 100% !important;
        min-height: 44px !important;
    }

    #alastar-site-chat .portal-ticket-row-subject-v86 {
        font-size: 12px !important;
    }

    #alastar-site-chat .portal-ticket-detail-head-v86 h4 {
        font-size: 15px !important;
    }

    #alastar-site-chat .portal-ticket-detail-actions-v86 > * {
        flex: 1 1 auto !important;
    }

    #alastar-site-chat .portal-ticket-message-v86 p {
        font-size: 12px !important;
    }

    #alastar-site-chat .portal-ticket-reply-v86 > div {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    #alastar-site-chat .portal-ticket-reply-v86 button {
        min-height: 44px !important;
    }

    #alastar-site-chat .portal-ticket-compose-v86 input,
    #alastar-site-chat .portal-ticket-compose-v86 select,
    #alastar-site-chat .portal-ticket-compose-v86 textarea,
    #alastar-site-chat .portal-ticket-reply-v86 textarea {
        font-size: 16px !important;
    }
}

/* ========================================================================== */
/* V88 - RESPONSIVIDADE GLOBAL / CHROME EDGE FIREFOX SAFARI / ANDROID / IOS  */
/* ========================================================================== */

/* Base previsível em motores Chromium, Gecko e WebKit. */
html {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

body.alastar-site {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-x: hidden;
}

.home-v14,
.home-v14 *,
.main-nav-v15,
.main-nav-v15 *,
#alastar-site-chat,
#alastar-site-chat * {
    box-sizing: border-box;
}

.home-v14 img,
.portal-frame-v14 img,
#alastar-site-chat img {
    max-width: 100%;
}

.portal-stage-v14,
.portal-frame-v14,
.portal-grid-v14,
.portal-main-v14,
.portal-sidebar-v14,
.portal-box-v14,
.portal-player-ranking-grid-v14,
.player-rank-card-v14,
.city-ranking-list-v14,
.city-ranking-entry-v14,
.featured-news-v14,
.news-list-v14,
#alastar-site-chat,
#alastar-site-chat .portal-community-panel-v31,
#alastar-site-chat .portal-chat-workspace-v53,
#alastar-site-chat .portal-ticket-app-v86,
#alastar-site-chat .portal-ticket-workspace-v86 {
    min-width: 0 !important;
    max-width: 100%;
}

/* Evita estouro por nomes, guildas, assuntos e mensagens longas. */
.portal-frame-v14 strong,
.portal-frame-v14 span,
.portal-frame-v14 p,
.portal-frame-v14 a,
#alastar-site-chat strong,
#alastar-site-chat span,
#alastar-site-chat p,
#alastar-site-chat a,
#alastar-site-chat button {
    overflow-wrap: anywhere;
}

/* Inputs nunca ultrapassam o painel. */
#alastar-site-chat input,
#alastar-site-chat select,
#alastar-site-chat textarea,
.portal-frame-v14 input,
.portal-frame-v14 select,
.portal-frame-v14 textarea {
    min-width: 0;
    max-width: 100%;
}

/* Header com suporte às áreas seguras de iPhone/iPad em modo cover/PWA. */
.main-nav-v15 {
    padding-left: env(safe-area-inset-left) !important;
    padding-right: env(safe-area-inset-right) !important;
}

.nav-shell-v15 {
    width: 100% !important;
    min-width: 0 !important;
}

/* Menu recolhido pode rolar em celulares pequenos ou modo paisagem. */
@media (max-width: 1399.98px) {
    .nav-collapse-v15.show,
    .nav-collapse-v15.collapsing {
        max-height: calc(100dvh - 82px - env(safe-area-inset-top));
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch;
    }
}

/* Portal principal: nenhuma coluna força largura além da viewport. */
.portal-stage-v14 {
    width: 100% !important;
    max-width: 100% !important;
}

.portal-frame-v14 {
    width: min(100%, 1840px) !important;
    box-sizing: border-box !important;
}

.portal-grid-v14 > * {
    min-width: 0 !important;
    width: 100%;
}

/* Fullscreen usa largura visual real, sem o excesso causado por 100vw + scrollbar. */
body > #alastar-site-chat.is-fullscreen-v51 {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-left: calc(8px + env(safe-area-inset-left)) !important;
    padding-right: calc(8px + env(safe-area-inset-right)) !important;
    padding-bottom: calc(8px + env(safe-area-inset-bottom)) !important;
}

/* Scroll suave e independente no WebKit/iOS. */
#alastar-site-chat .portal-chat-messages-v53,
#alastar-site-chat .portal-chat-room-list-v53,
#alastar-site-chat .portal-chat-members-list-v53,
#alastar-site-chat .portal-ticket-list-v86,
#alastar-site-chat .portal-ticket-thread-v86,
#alastar-site-chat .portal-ticket-detail-v86,
#alastar-site-chat .portal-room-dialog-card-v33,
#alastar-site-chat .portal-ticket-compose-v86 {
    -webkit-overflow-scrolling: touch;
}

/* Tablets e notebooks estreitos: uma coluna real, sem largura residual. */
@media (max-width: 1199.98px) {
    .portal-stage-v14 {
        padding-left: clamp(14px, 2.2vw, 24px) !important;
        padding-right: clamp(14px, 2.2vw, 24px) !important;
    }

    .portal-frame-v14 {
        width: 100% !important;
        padding-left: clamp(18px, 2.6vw, 30px) !important;
        padding-right: clamp(18px, 2.6vw, 30px) !important;
    }

    .portal-grid-v14 {
        width: 100% !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: clamp(18px, 2.4vw, 28px) !important;
    }

    .portal-sidebar-left-v14,
    .portal-sidebar-right-v14,
    .portal-main-v14 {
        position: static !important;
        inset: auto !important;
    }

    .featured-news-v14,
    .portal-player-ranking-grid-v14 {
        width: 100% !important;
    }
}

/* Tablet: reduz excessos sem achatar textos ou controles. */
@media (max-width: 991.98px) {
    .portal-frame-v14 {
        padding-top: 44px !important;
        border-radius: 20px !important;
    }

    .portal-box-v14 {
        width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    .featured-news-v14 {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    .featured-news-copy-v14,
    .featured-news-image-v14 {
        min-width: 0 !important;
    }

    #alastar-site-chat .portal-community-tabs-v31 {
        width: 100%;
    }

    #alastar-site-chat .portal-community-tab-v31 {
        min-width: 0;
    }
}

/* Celulares Android/iOS. */
@media (max-width: 767.98px) {
    .main-nav-v15 {
        min-height: 74px !important;
        padding-top: calc(6px + env(safe-area-inset-top)) !important;
        padding-bottom: 6px !important;
    }

    .nav-shell-v15 {
        min-height: 58px !important;
        padding-left: calc(10px + env(safe-area-inset-left)) !important;
        padding-right: calc(10px + env(safe-area-inset-right)) !important;
    }

    .nav-collapse-v15 {
        padding-left: calc(4px + env(safe-area-inset-left)) !important;
        padding-right: calc(4px + env(safe-area-inset-right)) !important;
        padding-bottom: calc(12px + env(safe-area-inset-bottom)) !important;
    }

    .home-hero-v14 {
        min-height: 470px !important;
        padding-top: calc(116px + env(safe-area-inset-top)) !important;
        padding-bottom: 86px !important;
    }

    .home-hero-v14 .hero-subtitle {
        padding-inline: 12px;
        font-size: clamp(1.30rem, 6vw, 1.85rem) !important;
        line-height: 1.28 !important;
        letter-spacing: .075em !important;
    }

    .home-hero-v14 .hero-btns {
        width: min(100%, 340px);
        margin-inline: auto;
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        padding-inline: 14px;
    }

    .home-hero-v14 .hero-btns .al-btn {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 46px !important;
    }

    .portal-stage-v14 {
        margin-top: -34px !important;
        padding-left: 8px !important;
        padding-right: 8px !important;
        padding-bottom: 48px !important;
    }

    .portal-frame-v14 {
        width: 100% !important;
        padding: 38px 9px 20px !important;
        border-radius: 16px !important;
    }

    .portal-ornament-v14 {
        max-width: calc(100% - 28px) !important;
    }

    .portal-grid-v14 {
        gap: 16px !important;
    }

    .portal-box-v14 {
        border-radius: 13px !important;
    }

    .portal-box-title-v14 {
        min-width: 0 !important;
        padding-left: 13px !important;
        padding-right: 13px !important;
    }

    .featured-news-v14,
    .news-list-v14 {
        width: auto !important;
        margin-left: 9px !important;
        margin-right: 9px !important;
    }

    .featured-news-image-v14,
    .featured-news-image-v14 img {
        min-height: 210px !important;
    }

    .featured-news-copy-v14 {
        padding: 20px 16px !important;
    }

    .portal-player-ranking-grid-v14,
    .city-ranking-list-v14 {
        padding-left: 9px !important;
        padding-right: 9px !important;
    }

    /* Abas sempre iguais em largura. */
    #alastar-site-chat .portal-community-tabs-v31 {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 6px !important;
    }

    #alastar-site-chat .portal-community-tab-v31 {
        width: 100% !important;
        min-width: 0 !important;
    }

    /* Chat normal empilha seus blocos sem gerar rolagem horizontal. */
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53 {
        width: 100% !important;
        grid-template-columns: minmax(0, 1fr) !important;
        overflow-x: hidden !important;
    }

    #alastar-site-chat .portal-chat-main-v53,
    #alastar-site-chat .portal-chat-sidebar-v53,
    #alastar-site-chat .portal-chat-control-sidebar-v53 {
        width: 100% !important;
        min-width: 0 !important;
    }

    #alastar-site-chat .portal-chat-composer-v53,
    #alastar-site-chat .portal-ticket-reply-v86 {
        padding-bottom: calc(8px + env(safe-area-inset-bottom)) !important;
    }

    /* Evita zoom automático do Safari ao focar campos. */
    #alastar-site-chat input,
    #alastar-site-chat select,
    #alastar-site-chat textarea,
    #alastar-site-chat .portal-chat-input-v53 {
        font-size: 16px !important;
    }

    /* Modais respeitam notch, barra inferior e teclado virtual. */
    #alastar-site-chat .portal-room-dialog-v33,
    #alastar-site-chat .portal-ticket-compose-overlay-v86 {
        padding-top: calc(8px + env(safe-area-inset-top)) !important;
        padding-right: calc(8px + env(safe-area-inset-right)) !important;
        padding-bottom: calc(8px + env(safe-area-inset-bottom)) !important;
        padding-left: calc(8px + env(safe-area-inset-left)) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
    }

    #alastar-site-chat .portal-room-dialog-card-v33,
    #alastar-site-chat .portal-ticket-compose-v86 {
        width: 100% !important;
        max-width: 100% !important;
        max-height: calc(100dvh - 16px - env(safe-area-inset-top) - env(safe-area-inset-bottom)) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
    }

    /* Ticket normal: lista e detalhe ocupam a mesma largura. */
    #alastar-site-chat .portal-ticket-workspace-v86 {
        width: 100% !important;
        grid-template-columns: minmax(0, 1fr) !important;
        overflow-x: hidden !important;
    }

    #alastar-site-chat .portal-ticket-list-panel-v86,
    #alastar-site-chat .portal-ticket-detail-v86,
    #alastar-site-chat .portal-ticket-list-v86,
    #alastar-site-chat .portal-ticket-thread-v86 {
        width: 100% !important;
        min-width: 0 !important;
    }

    /* Fullscreen usa a área visível calculada pelo JS + safe areas. */
    body > #alastar-site-chat.is-fullscreen-v51 {
        width: 100% !important;
        max-width: 100% !important;
        padding-top: calc(4px + env(safe-area-inset-top)) !important;
        padding-left: calc(4px + env(safe-area-inset-left)) !important;
        padding-right: calc(4px + env(safe-area-inset-right)) !important;
        padding-bottom: calc(4px + env(safe-area-inset-bottom)) !important;
    }
}

/* Telefones estreitos (320–430 px). */
@media (max-width: 430px) {
    .top-left-alastar-logo-v15 {
        flex-basis: 118px !important;
        width: 118px !important;
        max-width: 118px !important;
    }

    .top-left-alastar-logo-v15 img {
        width: 114px !important;
        height: auto !important;
    }

    .brand-toggler-v15 {
        width: 42px !important;
        min-width: 42px !important;
        height: 40px !important;
    }

    .portal-frame-v14 {
        padding-left: 7px !important;
        padding-right: 7px !important;
    }

    .server-stat-row-v14,
    .composition-row-v14 {
        gap: 8px;
    }

    .player-rank-row-v14 {
        grid-template-columns: 38px 48px minmax(0, 1fr) auto !important;
        gap: 7px !important;
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    .city-ranking-entry-v14 {
        padding: 12px !important;
    }

    .city-ranking-city-v14 {
        grid-template-columns: 50px minmax(0, 1fr) !important;
        gap: 9px !important;
    }

    .city-ranking-guild-v14 {
        grid-template-columns: 48px 34px minmax(0, 1fr) !important;
        gap: 8px !important;
    }

    #alastar-site-chat .portal-chat-title-v19 {
        padding-left: 42px !important;
        padding-right: 42px !important;
    }

    #alastar-site-chat .portal-community-tab-v31 {
        padding-left: 6px !important;
        padding-right: 6px !important;
    }

    #alastar-site-chat .portal-community-tab-v31 > span {
        font-size: 12px !important;
    }

    #alastar-site-chat .portal-community-tab-v31 > small {
        font-size: 9px !important;
    }

    #alastar-site-chat .portal-ticket-header-v86,
    #alastar-site-chat .portal-ticket-detail-head-v86,
    #alastar-site-chat .portal-ticket-reply-v86 {
        padding-left: 9px !important;
        padding-right: 9px !important;
    }

    #alastar-site-chat .portal-ticket-message-v86 {
        width: 100% !important;
        max-width: 100% !important;
    }

    #alastar-site-chat .portal-ticket-detail-actions-v86 {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 6px !important;
    }

    #alastar-site-chat .portal-ticket-detail-actions-v86 > * {
        width: 100% !important;
        min-width: 0 !important;
    }
}

/* iOS/WebKit: evita background fixed instável e mantém toque/scroll suaves. */
@supports (-webkit-touch-callout: none) {
    body.alastar-site,
    .home-v14,
    .home-hero-v14,
    #alastar-site-chat.is-fullscreen-v51 {
        background-attachment: scroll !important;
    }

    #alastar-site-chat input,
    #alastar-site-chat textarea,
    #alastar-site-chat select {
        -webkit-appearance: none;
    }

    #alastar-site-chat select {
        appearance: auto;
        -webkit-appearance: menulist;
    }
}

/* Fallback para navegadores que ainda não reconhecem dvh. */
@supports not (height: 100dvh) {
    body > #alastar-site-chat.is-fullscreen-v51 {
        height: var(--alastar-chat-fullscreen-height, 100vh) !important;
    }

    #alastar-site-chat .portal-room-dialog-card-v33,
    #alastar-site-chat .portal-ticket-compose-v86 {
        max-height: calc(100vh - 20px) !important;
    }
}

/* ========================================================================== */
/* V92 - CAPTCHA SIMPLES / INVISIVEL (POPUP DO SITE)                          */
/* ========================================================================== */
#loginModal .alastar-captcha-invisible-host-v92 {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

#loginModal .alastar-human-check-wrap-v92 {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    margin: 8px 0 12px !important;
}

#loginModal .alastar-human-check-v92 {
    width: min(100%, 260px) !important;
    min-height: 48px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 11px !important;
    padding: 8px 14px !important;
    border: 1px solid rgba(255, 174, 64, .35) !important;
    border-radius: 10px !important;
    background: linear-gradient(180deg, rgba(12, 23, 40, .98), rgba(5, 13, 24, .98)) !important;
    color: #f2f7ff !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04) !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
}

#loginModal .alastar-human-check-box-v92 {
    position: relative !important;
    flex: 0 0 24px !important;
    width: 24px !important;
    height: 24px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 2px solid rgba(235, 242, 249, .88) !important;
    border-radius: 5px !important;
    background: #f4f7f3 !important;
    color: #08331c !important;
}

#loginModal .alastar-human-check-box-v92 > i {
    opacity: 0 !important;
    transform: scale(.65) !important;
}

#loginModal .alastar-human-spinner-v92 {
    position: absolute !important;
    inset: 3px !important;
    border: 2px solid rgba(25, 75, 125, .20) !important;
    border-top-color: #3b92ff !important;
    border-radius: 50% !important;
    opacity: 0 !important;
}

#loginModal .alastar-human-check-v92.is-loading-v92 .alastar-human-spinner-v92 {
    opacity: 1 !important;
    animation: alastarHumanSpinSiteV92 .7s linear infinite !important;
}

#loginModal .alastar-human-check-v92.is-verified-v92 {
    border-color: rgba(75, 210, 123, .64) !important;
    background: linear-gradient(180deg, rgba(10, 54, 35, .96), rgba(5, 30, 23, .98)) !important;
    color: #e0ffef !important;
}

#loginModal .alastar-human-check-v92.is-verified-v92 .alastar-human-check-box-v92 {
    border-color: #59dc8b !important;
    background: #dff8e9 !important;
}

#loginModal .alastar-human-check-v92.is-verified-v92 .alastar-human-check-box-v92 > i {
    opacity: 1 !important;
    transform: scale(1) !important;
}

#loginModal .alastar-human-check-v92.is-error-v92 {
    border-color: rgba(255, 85, 94, .65) !important;
    background: linear-gradient(180deg, rgba(56, 17, 24, .96), rgba(32, 8, 14, .98)) !important;
    color: #ffd9dd !important;
}

@keyframes alastarHumanSpinSiteV92 { to { transform: rotate(360deg); } }

/* ========================================================================== */
/* V93 - TICKET: NOVA RESPOSTA / CONTADOR / SINO                             */
/* ========================================================================== */
#alastar-site-chat #alastar-tab-ticket {
    position: relative !important;
}

#alastar-site-chat .portal-ticket-unread-v93 {
    position: absolute !important;
    top: 6px !important;
    right: 8px !important;
    min-width: 20px !important;
    height: 20px !important;
    padding: 0 6px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255, 221, 133, .72) !important;
    background: linear-gradient(180deg, #ffbd42 0%, #d87913 100%) !important;
    color: #271503 !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    box-shadow: 0 4px 12px rgba(0,0,0,.28), 0 0 14px rgba(255,167,41,.28) !important;
    z-index: 5 !important;
}

#alastar-site-chat .portal-ticket-unread-v93[hidden] {
    display: none !important;
}

#alastar-site-chat #alastar-tab-ticket.has-ticket-unread-v93 {
    border-color: rgba(255, 187, 64, .72) !important;
    box-shadow: inset 0 -2px 0 rgba(255, 187, 64, .88), 0 0 18px rgba(255, 151, 37, .10) !important;
}

#alastar-site-chat #alastar-tab-ticket.is-ticket-ringing-v93 > i {
    transform-origin: 50% 12% !important;
    animation: alastar-ticket-bell-v93 .42s ease-in-out 4 !important;
    color: #ffd36f !important;
}

#alastar-site-chat .portal-ticket-row-v86.has-unread-v93 {
    border-color: rgba(255, 184, 62, .55) !important;
    background: linear-gradient(180deg, rgba(28, 47, 76, .96), rgba(11, 30, 54, .98)) !important;
    box-shadow: inset 3px 0 0 #f4a62a, 0 0 14px rgba(255, 166, 34, .08) !important;
}

#alastar-site-chat .portal-ticket-row-unread-v93 {
    width: fit-content !important;
    max-width: 100% !important;
    min-height: 21px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    margin-top: 5px !important;
    padding: 2px 7px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255, 199, 81, .36) !important;
    background: rgba(161, 93, 16, .22) !important;
    color: #ffe39f !important;
    font-size: 9.5px !important;
    font-weight: 800 !important;
    letter-spacing: .01em !important;
}

#alastar-site-chat .portal-ticket-row-unread-v93 i {
    font-size: 9px !important;
}

@keyframes alastar-ticket-bell-v93 {
    0%, 100% { transform: rotate(0deg); }
    24% { transform: rotate(15deg); }
    50% { transform: rotate(-13deg); }
    76% { transform: rotate(9deg); }
}

@media (max-width: 767.98px) {
    #alastar-site-chat .portal-ticket-unread-v93 {
        top: 5px !important;
        right: 6px !important;
        min-width: 19px !important;
        height: 19px !important;
        font-size: 9px !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    #alastar-site-chat #alastar-tab-ticket.is-ticket-ringing-v93 > i {
        animation: none !important;
    }
}

/* ========================================================================== */
/* V95 - UPGRADE VISUAL EXPERIMENTAL ALASTAR: ORANGE x ELECTRIC BLUE         */
/* Mantem estrutura/tamanhos. Foco: nitidez, cor, icones, medalhas e motion.  */
/* ========================================================================== */
:root {
    --v95-orange: #ff7417;
    --v95-orange-hot: #ff922e;
    --v95-orange-soft: #ffc06a;
    --v95-blue: #219dff;
    --v95-blue-hot: #55c8ff;
    --v95-blue-deep: #0b56c7;
    --v95-gold: #ffd16d;
    --v95-panel: rgba(10, 13, 22, .985);
    --v95-panel-warm: rgba(27, 15, 10, .965);
    --v95-text: #fff8ee;
    --v95-muted: #d6c9bc;
    --v95-orange-glow: 0 0 24px rgba(255, 116, 23, .15);
    --v95-blue-glow: 0 0 24px rgba(33, 157, 255, .14);
}

html,
body.alastar-site,
body.alastar-site button,
body.alastar-site input,
body.alastar-site select,
body.alastar-site textarea {
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
    text-rendering: optimizeLegibility !important;
    font-kerning: normal !important;
    font-feature-settings: "kern" 1, "liga" 1, "calt" 1 !important;
}

body.alastar-site {
    color: var(--v95-text) !important;
    background-image:
        linear-gradient(180deg, rgba(4, 6, 12, .28) 0%, rgba(4, 7, 14, .73) 48%, rgba(3, 5, 10, .96) 100%),
        radial-gradient(circle at 20% 16%, rgba(255, 116, 23, .16), transparent 24%),
        radial-gradient(circle at 80% 15%, rgba(33, 157, 255, .15), transparent 23%),
        url('../images/alastar-armia-bg.webp') !important;
}

/* ---------- Header / marca ---------- */
.main-nav,
.main-nav-v15,
.main-nav-v9 {
    border-bottom-color: rgba(255, 126, 38, .34) !important;
    box-shadow:
        0 10px 30px rgba(0,0,0,.38),
        inset 0 -1px 0 rgba(40, 166, 255, .12),
        0 0 30px rgba(255, 116, 23, .035) !important;
}

.site-brand-mark {
    image-rendering: auto !important;
    filter:
        drop-shadow(0 0 10px rgba(255, 116, 23, .34))
        drop-shadow(0 0 16px rgba(33, 157, 255, .26)) !important;
    animation: alastar-v95-logo-breathe 4.6s ease-in-out infinite;
    transform: translateZ(0);
}

.site-brand-title {
    color: #ffd37b !important;
    text-shadow: 0 1px 0 rgba(0,0,0,.65), 0 0 14px rgba(255, 116, 23, .22) !important;
}

.site-brand-version {
    color: var(--v95-blue-hot) !important;
    text-shadow: 0 0 12px rgba(33,157,255,.25) !important;
}

.main-nav .nav-link {
    font-weight: 800 !important;
    text-shadow: 0 1px 0 rgba(0,0,0,.55) !important;
    transition: color .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease !important;
}

.main-nav .nav-link:hover,
.main-nav .nav-link.active {
    transform: translateY(-1px);
    background:
        linear-gradient(180deg, rgba(255, 116, 23, .20), rgba(10, 28, 54, .32)) !important;
    border-color: rgba(255, 145, 55, .40) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.055), 0 0 18px rgba(33,157,255,.08), 0 0 16px rgba(255,116,23,.07) !important;
}

/* ---------- Botoes com brilho sincronizado ---------- */
.al-btn,
.nav-auth-v15 .al-btn,
.portal-login-top-v15 .al-btn {
    overflow: hidden !important;
    isolation: isolate;
    text-shadow: 0 1px 0 rgba(0,0,0,.62) !important;
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, filter .18s ease !important;
}

.al-btn::after,
.nav-auth-v15 .al-btn::after,
.portal-login-top-v15 .al-btn::after {
    content: '';
    position: absolute;
    z-index: -1;
    top: -80%;
    left: -38%;
    width: 30%;
    height: 260%;
    transform: rotate(18deg) translateX(-220%);
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.22), transparent);
    transition: transform .52s ease;
    pointer-events: none;
}

.al-btn:hover::after,
.nav-auth-v15 .al-btn:hover::after,
.portal-login-top-v15 .al-btn:hover::after {
    transform: rotate(18deg) translateX(560%);
}

.al-btn-primary {
    background: linear-gradient(180deg, #ff8125 0%, #d84b0d 49%, #6d2107 100%) !important;
    border-color: rgba(255, 177, 84, .56) !important;
    box-shadow: inset 0 1px 0 rgba(255,236,202,.20), 0 10px 25px rgba(0,0,0,.30), 0 0 20px rgba(255,116,23,.13) !important;
}

.al-btn-primary:hover,
.al-btn-primary:focus-visible {
    filter: saturate(1.08) brightness(1.05);
    box-shadow: inset 0 1px 0 rgba(255,244,220,.22), 0 13px 28px rgba(0,0,0,.34), 0 0 25px rgba(255,116,23,.22), 0 0 16px rgba(33,157,255,.08) !important;
}

.al-btn-outline {
    background: linear-gradient(180deg, #1976d9 0%, #124a9e 52%, #0a2559 100%) !important;
    border-color: rgba(91, 198, 255, .48) !important;
    box-shadow: inset 0 1px 0 rgba(219,244,255,.15), 0 10px 24px rgba(0,0,0,.29), 0 0 18px rgba(33,157,255,.12) !important;
}

/* ---------- Moldura / paineis: marrom vira orange-night + blue ---------- */
.home-v14 {
    --portal-bg: rgba(8, 11, 19, .975) !important;
    --portal-bg-soft: rgba(13, 15, 25, .96) !important;
    --portal-line: rgba(255, 126, 38, .27) !important;
    --portal-line-strong: rgba(255, 151, 57, .48) !important;
    --portal-gold: #ffd176 !important;
    --portal-text: #fff7ed !important;
    --portal-muted: #d2c3b4 !important;
}

.portal-frame-v14 {
    background:
        radial-gradient(circle at 50% -7%, rgba(255, 116, 23, .11), transparent 31%),
        linear-gradient(90deg, rgba(255, 116, 23, .055), transparent 14%, transparent 86%, rgba(33, 157, 255, .065)),
        linear-gradient(180deg, rgba(15, 14, 20, .99), rgba(5, 8, 16, .997)) !important;
    border-color: rgba(255, 147, 53, .42) !important;
    box-shadow:
        0 38px 90px rgba(0,0,0,.56),
        inset 0 1px 0 rgba(255,232,192,.075),
        inset 34px 0 84px rgba(255, 105, 15, .055),
        inset -34px 0 84px rgba(21, 121, 255, .07),
        0 0 34px rgba(33,157,255,.035) !important;
}

.portal-box-v14,
.player-rank-card-v14,
.city-ranking-entry-v14,
.portal-login-top-v15,
.portal-panel,
.content-panel,
.stat-card,
.community-card,
.info-card,
.home-overview-card,
.home-rank-card {
    background:
        linear-gradient(135deg, rgba(255,116,23,.052), transparent 28%, transparent 69%, rgba(33,157,255,.050)),
        linear-gradient(180deg, rgba(20, 16, 17, .975), rgba(6, 10, 19, .995)) !important;
    border-color: rgba(255, 137, 44, .24) !important;
    box-shadow: 0 17px 38px rgba(0,0,0,.31), inset 0 1px 0 rgba(255,255,255,.038), 0 0 0 1px rgba(33,157,255,.035) !important;
    transition: transform .20s ease, border-color .20s ease, box-shadow .20s ease, filter .20s ease !important;
}

.portal-box-v14:hover,
.player-rank-card-v14:hover,
.city-ranking-entry-v14:hover,
.home-overview-card:hover,
.home-rank-card:hover {
    border-color: rgba(255, 158, 62, .38) !important;
    box-shadow: 0 20px 44px rgba(0,0,0,.35), 0 0 22px rgba(255,116,23,.07), 0 0 20px rgba(33,157,255,.055), inset 0 1px 0 rgba(255,255,255,.05) !important;
}

.portal-box-title-v14,
.player-rank-card-v14 > header,
.home-rank-card > header,
.home-rank-head,
.full-rank-head,
.city-ranking-head-v12,
.home-news-side-head-v13 {
    background:
        linear-gradient(90deg, rgba(255, 116, 23, .105), rgba(255, 116, 23, .025) 44%, rgba(33, 157, 255, .065) 100%),
        linear-gradient(180deg, rgba(22, 18, 21, .85), rgba(8, 13, 24, .92)) !important;
}

.portal-box-title-v14,
.player-rank-card-v14 > header,
.section-title h2,
.panel-title,
.panel-subtitle {
    color: #ffda91 !important;
    text-shadow: 0 1px 0 rgba(0,0,0,.70), 0 0 13px rgba(255,116,23,.14) !important;
}

/* ---------- Icones: vetor mais limpo + aura dual tone ---------- */
body.alastar-site .fa-solid,
body.alastar-site .fa-regular,
body.alastar-site .fa-brands {
    -webkit-font-smoothing: antialiased !important;
    transform: translateZ(0);
}

.portal-box-title-v14 i,
.player-rank-card-v14 > header i,
.rate-icon-v14 i,
.news-list-icon-v14 i,
.portal-quick-nav-v14 a > i:first-child,
.city-ranking-emblem-v14 i,
.home-overview-heading i,
.home-quick-icon-v13 i,
.portal-chat-section-icon-v53 i,
.portal-ticket-heading-icon-v86 i {
    filter: drop-shadow(0 0 6px rgba(255, 116, 23, .28)) drop-shadow(0 0 8px rgba(33,157,255,.12)) !important;
    transition: transform .20s ease, filter .20s ease, color .20s ease !important;
}

.portal-box-v14:hover .portal-box-title-v14 i,
.player-rank-card-v14:hover > header i,
.rate-feature-v14:hover .rate-icon-v14 i,
.news-list-row-v14:hover .news-list-icon-v14 i,
.portal-quick-nav-v14 a:hover > i:first-child,
.city-ranking-entry-v14:hover .city-ranking-emblem-v14 i {
    transform: translateY(-1px) scale(1.07);
    filter: drop-shadow(0 0 8px rgba(255, 133, 34, .42)) drop-shadow(0 0 10px rgba(33,157,255,.18)) !important;
}

.rate-icon-v14,
.news-list-icon-v14,
.city-ranking-emblem-v14,
.overview-icon,
.home-quick-icon-v13 {
    background: linear-gradient(145deg, rgba(115,43,13,.76), rgba(14,23,44,.96)) !important;
    border-color: rgba(255, 139, 45, .27) !important;
    box-shadow: inset 0 1px 0 rgba(255,231,194,.075), 0 7px 18px rgba(0,0,0,.23), 0 0 14px rgba(33,157,255,.055) !important;
}

/* ---------- Medalhas: acabamento metalico + brilho suave ---------- */
.home-medal {
    isolation: isolate;
    overflow: visible !important;
    transform: translateZ(0);
    transition: transform .20s ease, filter .20s ease !important;
}

.home-medal::before {
    content: '';
    position: absolute;
    inset: 2px;
    z-index: -1;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,.18);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.20), inset 0 -6px 12px rgba(0,0,0,.22);
    pointer-events: none;
}

.home-medal::after {
    content: '';
    position: absolute;
    width: 40%;
    height: 40%;
    left: 18%;
    top: 12%;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255,255,255,.70), rgba(255,255,255,0) 68%);
    opacity: .42;
    pointer-events: none;
}

.home-medal i {
    position: relative;
    z-index: 1;
    font-size: 1.55rem !important;
}

.home-medal b {
    z-index: 2;
    font-weight: 900 !important;
    text-shadow: 0 1px 0 rgba(255,255,255,.30) !important;
}

.home-medal-gold {
    background: radial-gradient(circle at 34% 23%, #fff5bd 0%, #ffd04c 24%, #e59215 60%, #774108 100%) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.42), 0 7px 17px rgba(0,0,0,.26), 0 0 15px rgba(255,190,42,.22) !important;
    animation: alastar-v95-medal-gold 3.8s ease-in-out infinite;
}
.home-medal-gold i { color: #fff1a4 !important; filter: drop-shadow(0 1px 1px #6a3700) drop-shadow(0 0 5px rgba(255,204,70,.55)) !important; }

.home-medal-silver {
    background: radial-gradient(circle at 34% 23%, #ffffff 0%, #dbeaff 27%, #93a9c1 62%, #47586b 100%) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.46), 0 7px 17px rgba(0,0,0,.26), 0 0 13px rgba(147,202,255,.16) !important;
    animation: alastar-v95-medal-silver 4.2s ease-in-out .35s infinite;
}
.home-medal-silver i { color: #f4f9ff !important; filter: drop-shadow(0 1px 1px #445467) drop-shadow(0 0 5px rgba(177,218,255,.38)) !important; }

.home-medal-bronze {
    background: radial-gradient(circle at 34% 23%, #ffd8b0 0%, #e9914c 28%, #a55526 62%, #572910 100%) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.34), 0 7px 17px rgba(0,0,0,.26), 0 0 12px rgba(230,111,45,.14) !important;
    animation: alastar-v95-medal-bronze 4.5s ease-in-out .65s infinite;
}
.home-medal-bronze i { color: #ffd0a7 !important; filter: drop-shadow(0 1px 1px #6c2e12) drop-shadow(0 0 5px rgba(235,129,66,.28)) !important; }

.player-rank-row-v14:hover .home-medal,
.home-rank-row:hover .home-medal {
    transform: translateY(-2px) scale(1.08) !important;
}

/* ---------- Textos / ranking / noticias mais nitidos ---------- */
.player-rank-copy-v14 strong,
.news-list-copy-v14 strong,
.city-ranking-city-v14 strong,
.city-ranking-guild-v14 strong,
.server-stat-row-v14 strong,
.rate-feature-v14 strong {
    color: #fff5e9 !important;
    text-shadow: 0 1px 0 rgba(0,0,0,.62) !important;
}

.player-rank-copy-v14 span,
.news-list-copy-v14 time,
.city-ranking-city-v14 small,
.city-ranking-guild-v14 small,
.composition-row-v14 span {
    color: #d5c7b9 !important;
}

.player-rank-row-v14,
.news-list-row-v14,
.city-ranking-entry-v14,
.portal-quick-nav-v14 a,
.composition-row-v14,
.server-stat-row-v14 {
    transition: background .18s ease, transform .18s ease, border-color .18s ease, box-shadow .18s ease !important;
}

.player-rank-row-v14:hover,
.news-list-row-v14:hover,
.composition-row-v14:hover,
.server-stat-row-v14:hover {
    background: linear-gradient(90deg, rgba(255,116,23,.075), rgba(33,157,255,.045)) !important;
}

/* ---------- Chat / Ticket: apenas acabamento, sem mudar dimensoes ---------- */
#alastar-site-chat .portal-chat-tabs-v19,
#alastar-site-chat .portal-chat-shell-v19,
#alastar-site-chat .portal-ticket-shell-v86,
#alastar-site-chat .portal-ticket-layout-v86 {
    border-color: rgba(50, 168, 255, .24) !important;
}

#alastar-site-chat .portal-chat-tab-v19.is-active,
#alastar-site-chat .portal-ticket-tab-v86.is-active {
    box-shadow: inset 0 -2px 0 var(--v95-orange-hot), 0 0 14px rgba(33,157,255,.07) !important;
}

/* ---------- Keyframes ---------- */
@keyframes alastar-v95-logo-breathe {
    0%, 100% { transform: translateZ(0) scale(1); filter: drop-shadow(0 0 10px rgba(255,116,23,.28)) drop-shadow(0 0 14px rgba(33,157,255,.20)); }
    50% { transform: translateZ(0) scale(1.025); filter: drop-shadow(0 0 14px rgba(255,116,23,.40)) drop-shadow(0 0 20px rgba(33,157,255,.29)); }
}

@keyframes alastar-v95-medal-gold {
    0%, 100% { filter: brightness(1) saturate(1); }
    50% { filter: brightness(1.10) saturate(1.08); }
}
@keyframes alastar-v95-medal-silver {
    0%, 100% { filter: brightness(1); }
    50% { filter: brightness(1.07); }
}
@keyframes alastar-v95-medal-bronze {
    0%, 100% { filter: brightness(1); }
    50% { filter: brightness(1.06) saturate(1.05); }
}

@media (hover: hover) and (pointer: fine) {
    .portal-quick-nav-v14 a:hover,
    .news-list-row-v14:hover,
    .player-rank-row-v14:hover {
        transform: translateX(2px) !important;
    }
}

@media (max-width: 767.98px) {
    /* mantem efeitos leves no mobile sem alterar medidas/layout */
    .portal-box-v14,
    .player-rank-card-v14,
    .city-ranking-entry-v14 {
        box-shadow: 0 12px 28px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.03) !important;
    }

    .site-brand-mark {
        animation-duration: 5.4s;
    }
}

@media (prefers-reduced-motion: reduce) {
    .site-brand-mark,
    .home-medal-gold,
    .home-medal-silver,
    .home-medal-bronze {
        animation: none !important;
    }

    .al-btn::after,
    .nav-auth-v15 .al-btn::after,
    .portal-login-top-v15 .al-btn::after {
        display: none !important;
    }

    .portal-box-v14,
    .player-rank-card-v14,
    .city-ranking-entry-v14,
    .player-rank-row-v14,
    .news-list-row-v14,
    .portal-quick-nav-v14 a {
        transition-duration: .01ms !important;
    }
}

/* ========================================================================== */
/* V96 - UPGRADE VISUAL REAL: COMPONENTES PREMIUM / MEDALHAS / ICONES / UI    */
/* Mantem estrutura. Troca acabamento flat por metal, vidro e placas 3D.       */
/* ========================================================================== */
:root {
    --v96-orange-1: #ffad45;
    --v96-orange-2: #ff711c;
    --v96-orange-3: #9e3107;
    --v96-blue-1: #63d4ff;
    --v96-blue-2: #168dff;
    --v96-blue-3: #0a3d9d;
    --v96-gold-1: #fff0a9;
    --v96-gold-2: #ffbd3f;
    --v96-ink: #060b14;
    --v96-panel: #0a1220;
}

/* ---------- TITULOS / SIMBOLOS: agora parecem emblemas reais ---------- */
.portal-box-title-v14 > i,
.player-rank-card-v14 > header > i,
.home-overview-heading > i,
.portal-chat-title-v19 > i,
.portal-ticket-heading-icon-v86 > i {
    width: 31px !important;
    height: 31px !important;
    min-width: 31px !important;
    display: inline-grid !important;
    place-items: center !important;
    border-radius: 9px !important;
    color: #fff2c2 !important;
    background:
        linear-gradient(145deg, rgba(255,174,67,.30), rgba(255,102,18,.12) 44%, rgba(17,98,210,.24) 100%),
        linear-gradient(180deg, #19253b, #0a1020) !important;
    border: 1px solid rgba(255,165,61,.48) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.20),
        inset 0 -5px 10px rgba(0,0,0,.28),
        0 3px 0 rgba(91,31,3,.55),
        0 7px 16px rgba(0,0,0,.30),
        0 0 12px rgba(36,156,255,.11) !important;
    text-shadow: 0 1px 0 #713000 !important;
    transform: translateZ(0);
    position: relative;
    overflow: hidden;
}

.portal-box-title-v14 > i::after,
.player-rank-card-v14 > header > i::after,
.home-overview-heading > i::after,
.portal-chat-title-v19 > i::after,
.portal-ticket-heading-icon-v86 > i::after {
    content: '';
    position: absolute;
    inset: -35% auto -35% -55%;
    width: 38%;
    transform: rotate(18deg);
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.48), transparent);
    opacity: 0;
    pointer-events: none;
}

.portal-box-v14:hover .portal-box-title-v14 > i::after,
.player-rank-card-v14:hover > header > i::after {
    animation: alastar-v96-icon-sheen .72s ease-out;
}

/* ---------- ICONES DE CONTEUDO: placa premium octogonal ---------- */
.rate-icon-v14,
.news-list-icon-v14,
.city-ranking-emblem-v14,
.overview-icon,
.home-quick-icon-v13,
.portal-chat-section-icon-v53 {
    position: relative !important;
    overflow: hidden !important;
    isolation: isolate !important;
    border-radius: 13px !important;
    clip-path: polygon(14% 0,86% 0,100% 14%,100% 86%,86% 100%,14% 100%,0 86%,0 14%) !important;
    background:
        radial-gradient(circle at 32% 20%, rgba(255,213,133,.26), transparent 26%),
        linear-gradient(145deg, #5b220c 0%, #22130e 42%, #0d2349 100%) !important;
    border: 1px solid rgba(255,154,49,.60) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.18),
        inset 0 -7px 13px rgba(0,0,0,.30),
        0 5px 0 rgba(70,26,5,.48),
        0 10px 20px rgba(0,0,0,.28),
        0 0 17px rgba(30,148,255,.10) !important;
}

.rate-icon-v14::before,
.news-list-icon-v14::before,
.city-ranking-emblem-v14::before,
.overview-icon::before,
.home-quick-icon-v13::before {
    content: '';
    position: absolute;
    inset: 3px;
    z-index: -1;
    clip-path: inherit;
    background: linear-gradient(145deg, rgba(255,255,255,.10), transparent 35%, rgba(48,170,255,.06));
    border: 1px solid rgba(255,255,255,.055);
    pointer-events: none;
}

.rate-icon-v14::after,
.news-list-icon-v14::after,
.city-ranking-emblem-v14::after,
.overview-icon::after,
.home-quick-icon-v13::after {
    content: '';
    position: absolute;
    top: -60%;
    left: -75%;
    width: 45%;
    height: 220%;
    transform: rotate(20deg);
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.38), transparent);
    opacity: 0;
}

.rate-feature-v14:hover .rate-icon-v14::after,
.news-list-row-v14:hover .news-list-icon-v14::after,
.city-ranking-entry-v14:hover .city-ranking-emblem-v14::after {
    animation: alastar-v96-icon-sheen .78s ease-out;
}

.rate-icon-v14 i,
.news-list-icon-v14 i,
.city-ranking-emblem-v14 i,
.overview-icon i,
.home-quick-icon-v13 i {
    color: #ffe4a3 !important;
    font-size: 1.18em !important;
    text-shadow: 0 2px 0 rgba(81,28,0,.72) !important;
    filter: drop-shadow(0 0 7px rgba(255,130,28,.46)) drop-shadow(0 0 8px rgba(42,163,255,.20)) !important;
}

/* ---------- RANKING: medalhas redesenhadas com aro + fita ---------- */
.home-medal {
    --medal-light: #fff2ad;
    --medal-mid: #f6b52e;
    --medal-dark: #9b5106;
    width: 42px !important;
    height: 49px !important;
    overflow: visible !important;
    position: relative !important;
    background: transparent !important;
    filter: none !important;
    animation: none !important;
    transform-origin: center !important;
}

.home-medal::before {
    content: '' !important;
    position: absolute !important;
    left: 2px !important;
    top: 1px !important;
    width: 38px !important;
    height: 38px !important;
    inset: auto !important;
    z-index: 1 !important;
    border-radius: 50% !important;
    background:
        radial-gradient(circle at 32% 22%, rgba(255,255,255,.96) 0 4%, rgba(255,255,255,.36) 5% 16%, transparent 17%),
        radial-gradient(circle at 36% 28%, var(--medal-light) 0%, var(--medal-mid) 42%, var(--medal-dark) 78%, #3c1b03 100%) !important;
    border: 2px solid var(--medal-light) !important;
    box-shadow:
        inset 0 0 0 2px rgba(74,27,0,.38),
        inset 0 1px 5px rgba(255,255,255,.48),
        inset 0 -8px 12px rgba(0,0,0,.22),
        0 3px 0 rgba(65,27,2,.58),
        0 7px 14px rgba(0,0,0,.30),
        0 0 16px color-mix(in srgb, var(--medal-mid) 35%, transparent) !important;
}

.home-medal::after {
    content: '' !important;
    position: absolute !important;
    left: 8px !important;
    top: 30px !important;
    width: 26px !important;
    height: 18px !important;
    z-index: 0 !important;
    border-radius: 0 !important;
    background:
        linear-gradient(90deg, var(--medal-dark) 0 42%, transparent 42% 58%, var(--medal-mid) 58% 100%) !important;
    clip-path: polygon(0 0,100% 0,84% 100%,52% 70%,18% 100%) !important;
    opacity: 1 !important;
    filter: drop-shadow(0 3px 2px rgba(0,0,0,.30)) !important;
}

.home-medal i {
    position: absolute !important;
    z-index: 2 !important;
    left: 9px !important;
    top: 8px !important;
    width: 24px !important;
    height: 24px !important;
    display: grid !important;
    place-items: center !important;
    font-size: 1.05rem !important;
    opacity: .34 !important;
    color: #fff !important;
    filter: drop-shadow(0 1px 0 rgba(0,0,0,.45)) !important;
}

.home-medal b {
    position: absolute !important;
    z-index: 3 !important;
    left: 0 !important;
    top: 10px !important;
    width: 42px !important;
    text-align: center !important;
    font-family: 'Cinzel', serif !important;
    font-size: .83rem !important;
    line-height: 1 !important;
    font-weight: 900 !important;
    color: #2f1402 !important;
    text-shadow: 0 1px 0 rgba(255,255,255,.62), 0 -1px 0 rgba(74,29,0,.20) !important;
}

.home-medal-gold {
    --medal-light: #fff6b8;
    --medal-mid: #ffc83f;
    --medal-dark: #b35b04;
}
.home-medal-silver {
    --medal-light: #f8fdff;
    --medal-mid: #b8d2e8;
    --medal-dark: #526b84;
}
.home-medal-bronze {
    --medal-light: #ffd6a8;
    --medal-mid: #dc8242;
    --medal-dark: #7a3516;
}

.player-rank-row-v14 .home-medal {
    transform: translateY(1px) scale(.96) !important;
}

.player-rank-row-v14:hover .home-medal {
    transform: translateY(-2px) scale(1.05) rotate(-2deg) !important;
    filter: drop-shadow(0 0 9px rgba(255,173,64,.18)) !important;
}

/* avatar do ranking vira moldura premium */
.player-rank-avatar-v14 {
    padding: 2px !important;
    border: 0 !important;
    background: conic-gradient(from 210deg, #ff8c24, #ffc05a, #1a7eea, #55cfff, #ff8c24) !important;
    box-shadow: 0 7px 17px rgba(0,0,0,.32), 0 0 0 1px rgba(255,177,76,.20), 0 0 16px rgba(28,145,255,.09) !important;
}

.player-rank-avatar-v14 img {
    border-radius: 13px !important;
    background: #08111f !important;
    box-shadow: inset 0 0 0 1px rgba(0,0,0,.55) !important;
}

.player-rank-card-v14 > header {
    position: relative !important;
    overflow: hidden !important;
}
.player-rank-card-v14 > header::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 42%;
    height: 2px;
    background: linear-gradient(90deg, var(--v96-orange-2), var(--v96-gold-2), transparent);
    box-shadow: 0 0 10px rgba(255,124,23,.26);
}
.player-rank-kill > header::after { background: linear-gradient(90deg, #ff4e31, #ff9a48, transparent); }
.player-rank-equipment > header::after { background: linear-gradient(90deg, #168dff, #65d8ff, transparent); }

/* ---------- LABELS / BADGES / TAGS: capsulas com volume ---------- */
.rank-evolution-tag,
.portal-chat-tag-v45,
.portal-chat-popularity-v60,
.portal-ticket-status-v86,
.portal-ticket-row-status-v86,
.portal-chat-role-v33,
.portal-voice-count-v34,
.badge,
.label,
.status-badge,
.category-badge,
.composition-row-v14 b {
    border: 1px solid rgba(255,170,65,.36) !important;
    background:
        linear-gradient(180deg, rgba(255,151,44,.16), rgba(255,98,14,.06) 50%, rgba(17,68,145,.18) 100%),
        #0b1729 !important;
    color: #fff0c4 !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.18),
        inset 0 -3px 6px rgba(0,0,0,.20),
        0 3px 8px rgba(0,0,0,.20),
        0 0 9px rgba(39,155,255,.06) !important;
    text-shadow: 0 1px 0 rgba(0,0,0,.62) !important;
    font-weight: 800 !important;
}

.portal-chat-popularity-v60,
.portal-voice-count-v34 {
    color: #dff5ff !important;
    border-color: rgba(76,187,255,.42) !important;
    background: linear-gradient(180deg, rgba(37,158,255,.22), rgba(12,53,112,.30)), #071528 !important;
}

/* ---------- QUICK NAV: icone como botao fisico ---------- */
.portal-quick-nav-v14 a {
    padding-left: 8px !important;
    padding-right: 10px !important;
    border-radius: 11px !important;
}

.portal-quick-nav-v14 a > i:first-child {
    width: 31px !important;
    height: 31px !important;
    min-width: 31px !important;
    display: inline-grid !important;
    place-items: center !important;
    border-radius: 9px !important;
    color: #ffe5ad !important;
    background: linear-gradient(145deg, #7b2d0c, #2e170f 48%, #0e326b) !important;
    border: 1px solid rgba(255,154,53,.42) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 3px 0 #471804, 0 7px 14px rgba(0,0,0,.24) !important;
    filter: none !important;
}

.portal-quick-nav-v14 a > i:last-child {
    color: var(--v96-blue-1) !important;
    filter: drop-shadow(0 0 5px rgba(41,167,255,.32)) !important;
}

/* ---------- BOTOES: mais metal/vidro, borda dupla e resposta fisica ---------- */
.al-btn,
.nav-auth-v15 .al-btn,
.portal-login-top-v15 .al-btn,
#alastar-site-chat button:not(.portal-chat-community-tab-v31) {
    border-width: 1px !important;
    border-style: solid !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.25),
        inset 0 -5px 9px rgba(0,0,0,.20),
        0 3px 0 rgba(72,25,4,.75),
        0 8px 18px rgba(0,0,0,.30) !important;
}

.al-btn::before,
.nav-auth-v15 .al-btn::before,
.portal-login-top-v15 .al-btn::before {
    inset: 2px !important;
    border: 1px solid rgba(255,238,207,.14) !important;
    box-shadow: inset 0 0 0 1px rgba(14,73,151,.10) !important;
}

.al-btn-primary {
    background:
        linear-gradient(180deg, rgba(255,255,255,.18), transparent 26%),
        linear-gradient(180deg, #ff9a34 0%, #ed6318 48%, #912b08 100%) !important;
    border-color: #ffb359 !important;
    color: #fff6df !important;
}

.al-btn-outline {
    background:
        linear-gradient(180deg, rgba(255,255,255,.15), transparent 26%),
        linear-gradient(180deg, #35baff 0%, #1479e4 48%, #0b377e 100%) !important;
    border-color: #70d4ff !important;
    color: #effaff !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.25),
        inset 0 -5px 9px rgba(0,0,0,.20),
        0 3px 0 #082a65,
        0 8px 18px rgba(0,0,0,.30),
        0 0 14px rgba(29,151,255,.12) !important;
}

.al-btn:hover,
.nav-auth-v15 .al-btn:hover,
.portal-login-top-v15 .al-btn:hover {
    transform: translateY(-2px) !important;
    filter: brightness(1.08) saturate(1.08) !important;
}
.al-btn:active,
.nav-auth-v15 .al-btn:active,
.portal-login-top-v15 .al-btn:active {
    transform: translateY(1px) !important;
    box-shadow: inset 0 2px 7px rgba(0,0,0,.22), 0 1px 0 rgba(0,0,0,.40), 0 4px 9px rgba(0,0,0,.22) !important;
}

/* ---------- CIDADE / GUILD: simbolos mais nobres ---------- */
.city-guild-mark-v14 {
    padding: 2px !important;
    border-radius: 10px !important;
    background: conic-gradient(from 210deg, #ff9b32, #ffd278, #238dff, #5bd5ff, #ff9b32) !important;
    box-shadow: 0 5px 12px rgba(0,0,0,.28), 0 0 12px rgba(255,122,20,.08) !important;
}
.city-guild-mark-v14 img {
    border-radius: 7px !important;
    background: #07111f !important;
}
.city-guild-cape-v14 {
    border: 1px solid rgba(86,194,255,.40) !important;
    background: linear-gradient(180deg, rgba(48,171,255,.24), rgba(9,49,105,.45)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 4px 10px rgba(0,0,0,.22) !important;
    color: #a9e7ff !important;
}

/* ---------- STATUS: orb com duas camadas e pulso ---------- */
.status-orb-v14 {
    box-shadow: 0 0 0 4px rgba(38,205,111,.08), 0 0 13px rgba(38,205,111,.48), inset 0 1px 0 rgba(255,255,255,.34) !important;
}
.server-status-main-v14.is-online .status-orb-v14 {
    animation: alastar-v96-status-pulse 2.4s ease-in-out infinite !important;
}

/* ---------- TITULOS e tipografia: acabamento premium ---------- */
.portal-box-title-v14 span,
.player-rank-card-v14 > header span,
.site-brand-title,
.hero-subtitle {
    font-family: 'Cinzel', serif !important;
    letter-spacing: .045em !important;
}
.player-rank-copy-v14 strong,
.news-list-copy-v14 strong,
.city-ranking-city-v14 strong,
.city-ranking-guild-v14 strong {
    letter-spacing: .012em !important;
}

/* ---------- ANIMACOES ---------- */
@keyframes alastar-v96-icon-sheen {
    0% { left: -75%; opacity: 0; }
    18% { opacity: .85; }
    100% { left: 135%; opacity: 0; }
}
@keyframes alastar-v96-status-pulse {
    0%,100% { transform: scale(1); box-shadow: 0 0 0 4px rgba(38,205,111,.07), 0 0 12px rgba(38,205,111,.40), inset 0 1px 0 rgba(255,255,255,.34); }
    50% { transform: scale(1.08); box-shadow: 0 0 0 7px rgba(38,205,111,.035), 0 0 20px rgba(38,205,111,.62), inset 0 1px 0 rgba(255,255,255,.42); }
}

@media (max-width: 767.98px) {
    .home-medal { transform: scale(.92) !important; }
    .player-rank-row-v14 .home-medal { transform: scale(.90) !important; }
    .portal-box-title-v14 > i,
    .player-rank-card-v14 > header > i { width: 28px !important; height: 28px !important; min-width: 28px !important; }
}

@media (prefers-reduced-motion: reduce) {
    .server-status-main-v14.is-online .status-orb-v14 { animation: none !important; }
    .portal-box-v14:hover .portal-box-title-v14 > i::after,
    .player-rank-card-v14:hover > header > i::after,
    .rate-feature-v14:hover .rate-icon-v14::after,
    .news-list-row-v14:hover .news-list-icon-v14::after,
    .city-ranking-entry-v14:hover .city-ranking-emblem-v14::after { animation: none !important; }
}

/* ========================================================================== */
/* V97 - LOJA PÚBLICA + LISTBOX PREMIUM DE PACOTES                           */
/* ========================================================================== */
:root {
    --store97-orange: #ff7417;
    --store97-orange-deep: #a94108;
    --store97-gold: #ffc867;
    --store97-gold-soft: #ffe3a0;
    --store97-blue: #2f8cff;
    --store97-blue-deep: #0b4eb5;
    --store97-night: #07111f;
    --store97-night-2: #0b1b32;
    --store97-border: rgba(73, 155, 255, .34);
}

/* Menu Loja */
#navbarNav .store-nav-v97 {
    position: relative !important;
    overflow: visible !important;
}

#navbarNav .store-nav-trigger-v97 {
    display: inline-flex !important;
    align-items: stretch !important;
    min-width: 0 !important;
    border-radius: 10px !important;
}

#navbarNav .store-nav-main-v97 {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-width: 0 !important;
}

#navbarNav .store-nav-main-v97 > i {
    color: var(--store97-gold) !important;
    filter: drop-shadow(0 0 7px rgba(255, 123, 26, .36)) !important;
    font-size: .88em !important;
}

#navbarNav .store-nav-toggle-v97 {
    width: 27px !important;
    min-width: 27px !important;
    padding: 0 !important;
    margin: 4px 2px 4px -4px !important;
    display: inline-grid !important;
    place-items: center !important;
    border: 0 !important;
    border-left: 1px solid rgba(255, 185, 75, .18) !important;
    border-radius: 0 8px 8px 0 !important;
    background: rgba(255, 119, 25, .05) !important;
    color: #ffd684 !important;
    cursor: pointer !important;
    transition: background .18s ease, color .18s ease, transform .18s ease !important;
}

#navbarNav .store-nav-toggle-v97:hover,
#navbarNav .store-nav-toggle-v97:focus-visible {
    color: #fff3ca !important;
    background: rgba(255, 119, 25, .16) !important;
    outline: none !important;
}

#navbarNav .store-nav-toggle-v97 > i {
    font-size: 9px !important;
    transition: transform .2s ease !important;
}

#navbarNav .store-nav-v97.is-open-v97 .store-nav-toggle-v97 > i {
    transform: rotate(180deg) !important;
}

#navbarNav .store-listbox-v97 {
    position: absolute !important;
    top: calc(100% + 9px) !important;
    left: 50% !important;
    transform: translate(-50%, -8px) scale(.985) !important;
    width: min(360px, calc(100vw - 24px)) !important;
    padding: 8px !important;
    border: 1px solid rgba(255, 177, 60, .52) !important;
    border-radius: 16px !important;
    background:
        linear-gradient(135deg, rgba(255, 112, 19, .08), transparent 30%),
        linear-gradient(180deg, rgba(12, 28, 52, .992), rgba(5, 13, 28, .996)) !important;
    box-shadow:
        0 22px 58px rgba(0,0,0,.58),
        0 0 0 1px rgba(45, 137, 255, .18) inset,
        0 0 32px rgba(26, 117, 255, .10),
        0 0 26px rgba(255, 112, 19, .08) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    z-index: 99999 !important;
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease !important;
    isolation: isolate !important;
}

#navbarNav .store-listbox-v97::before {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    top: -7px !important;
    width: 13px !important;
    height: 13px !important;
    transform: translateX(-50%) rotate(45deg) !important;
    background: #10203a !important;
    border-left: 1px solid rgba(255, 177, 60, .52) !important;
    border-top: 1px solid rgba(255, 177, 60, .52) !important;
    z-index: -1 !important;
}

#navbarNav .store-nav-v97.is-open-v97 .store-listbox-v97,
#navbarNav .store-nav-v97:focus-within .store-listbox-v97 {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate(-50%, 0) scale(1) !important;
}

@media (hover: hover) and (pointer: fine) {
    #navbarNav .store-nav-v97:hover .store-listbox-v97 {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: translate(-50%, 0) scale(1) !important;
    }
}

#navbarNav .store-listbox-head-v97 {
    min-height: 58px !important;
    padding: 8px 9px 10px !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    border-bottom: 1px solid rgba(82, 156, 255, .20) !important;
}

#navbarNav .store-listbox-gem-v97 {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid rgba(255, 193, 91, .70) !important;
    border-radius: 11px !important;
    background:
        radial-gradient(circle at 35% 25%, rgba(255,255,255,.26), transparent 25%),
        linear-gradient(145deg, #ff8b24, #9b3c09 60%, #0c5fc9) !important;
    color: #fff4cf !important;
    box-shadow: 0 0 18px rgba(255, 121, 28, .20), inset 0 1px 0 rgba(255,255,255,.22) !important;
}

#navbarNav .store-listbox-head-v97 > span:last-child {
    display: grid !important;
    min-width: 0 !important;
}

#navbarNav .store-listbox-head-v97 strong {
    font-family: "Cinzel", serif !important;
    color: #ffe6a7 !important;
    font-size: 12px !important;
    letter-spacing: .045em !important;
}

#navbarNav .store-listbox-head-v97 small {
    color: #9eb8d7 !important;
    font: 600 9px/1.35 "Inter", sans-serif !important;
    margin-top: 2px !important;
}

#navbarNav .store-listbox-scroll-v97 {
    max-height: min(390px, 58vh) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    scrollbar-width: thin !important;
    scrollbar-color: #e77a20 #08162a !important;
    padding: 5px 2px !important;
}

#navbarNav .store-listbox-scroll-v97::-webkit-scrollbar { width: 7px !important; }
#navbarNav .store-listbox-scroll-v97::-webkit-scrollbar-track { background: #08162a !important; border-radius: 999px !important; }
#navbarNav .store-listbox-scroll-v97::-webkit-scrollbar-thumb { background: linear-gradient(#ff9b38, #c8510b) !important; border-radius: 999px !important; }

#navbarNav .store-listbox-item-v97 {
    min-height: 55px !important;
    padding: 7px 8px !important;
    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr) auto 14px !important;
    align-items: center !important;
    gap: 8px !important;
    border: 1px solid transparent !important;
    border-radius: 10px !important;
    color: #eaf4ff !important;
    text-decoration: none !important;
    background: transparent !important;
    transition: border-color .18s ease, background .18s ease, transform .18s ease, box-shadow .18s ease !important;
}

#navbarNav .store-listbox-item-v97 + .store-listbox-item-v97 {
    margin-top: 3px !important;
}

#navbarNav .store-listbox-item-v97:hover,
#navbarNav .store-listbox-item-v97:focus-visible {
    outline: none !important;
    border-color: rgba(255, 170, 52, .42) !important;
    background:
        linear-gradient(90deg, rgba(255, 112, 18, .15), rgba(34, 124, 255, .13)) !important;
    transform: translateX(2px) !important;
    box-shadow: 0 7px 18px rgba(0,0,0,.18), inset 3px 0 0 rgba(255, 124, 26, .88) !important;
}

#navbarNav .store-listbox-icon-v97 {
    width: 32px !important;
    height: 32px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 9px !important;
    border: 1px solid rgba(255, 183, 70, .34) !important;
    background: linear-gradient(145deg, rgba(255, 117, 22, .20), rgba(28, 103, 225, .18)) !important;
    color: #ffd16f !important;
}

#navbarNav .store-listbox-copy-v97 {
    min-width: 0 !important;
    display: grid !important;
}

#navbarNav .store-listbox-copy-v97 strong {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    color: #f6fbff !important;
    font: 750 10px/1.25 "Inter", sans-serif !important;
}

#navbarNav .store-listbox-copy-v97 small {
    margin-top: 2px !important;
    color: #75b7ff !important;
    font: 650 8px/1.25 "Inter", sans-serif !important;
}

#navbarNav .store-listbox-item-v97 > b {
    color: #ffd57a !important;
    font: 800 9px/1 "Inter", sans-serif !important;
    white-space: nowrap !important;
}

#navbarNav .store-listbox-arrow-v97 {
    color: #ff8c2f !important;
    font-size: 8px !important;
}

#navbarNav .store-listbox-viewall-v97 {
    min-height: 37px !important;
    margin-top: 6px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 7px !important;
    border: 1px solid rgba(66, 147, 255, .36) !important;
    border-radius: 10px !important;
    background: linear-gradient(180deg, rgba(24, 90, 179, .24), rgba(8, 33, 70, .32)) !important;
    color: #bcdcff !important;
    font: 700 9px/1 "Inter", sans-serif !important;
    text-decoration: none !important;
}

#navbarNav .store-listbox-viewall-v97:hover,
#navbarNav .store-listbox-viewall-v97:focus-visible {
    color: #fff0bd !important;
    border-color: rgba(255, 176, 56, .52) !important;
    outline: none !important;
}

/* Loja pública */
.store-page-v97 {
    min-height: 100vh !important;
    padding-top: var(--alastar-nav-height, 68px) !important;
    color: #eaf4ff !important;
    background:
        linear-gradient(180deg, rgba(4, 9, 17, .08), rgba(3, 8, 16, .72)),
        url('../images/alastar-armia-bg.webp') center top / cover fixed no-repeat !important;
}

.store-hero-v97 {
    position: relative !important;
    overflow: hidden !important;
    border-bottom: 1px solid rgba(255, 132, 31, .26) !important;
    background:
        radial-gradient(circle at 22% 45%, rgba(255, 111, 22, .13), transparent 28%),
        radial-gradient(circle at 77% 28%, rgba(44, 132, 255, .15), transparent 28%),
        linear-gradient(180deg, rgba(4, 10, 20, .58), rgba(4, 11, 22, .88)) !important;
}

.store-hero-v97::after {
    content: "" !important;
    position: absolute !important;
    inset: auto 9% 0 !important;
    height: 1px !important;
    background: linear-gradient(90deg, transparent, #ff7a1d, #3e9aff, transparent) !important;
    opacity: .75 !important;
}

.store-hero-inner-v97 {
    min-height: 300px !important;
    padding-top: 76px !important;
    padding-bottom: 62px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
}

.store-eyebrow-v97,
.store-section-kicker-v97 {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    color: #ffcf72 !important;
    font: 750 10px/1.2 "Inter", sans-serif !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
}

.store-hero-v97 h1 {
    margin: 13px 0 10px !important;
    font-family: "Cinzel", serif !important;
    font-size: clamp(38px, 5vw, 68px) !important;
    font-weight: 900 !important;
    letter-spacing: .04em !important;
    color: #ffe3a0 !important;
    text-shadow: 0 3px 0 rgba(81,34,5,.7), 0 0 22px rgba(255, 120, 24, .20), 0 0 36px rgba(36, 119, 245, .12) !important;
}

.store-hero-v97 p {
    max-width: 740px !important;
    color: #c5d4e7 !important;
    font: 550 13px/1.7 "Inter", sans-serif !important;
}

.store-hero-badges-v97 {
    margin-top: 22px !important;
    display: flex !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 9px !important;
}

.store-hero-badges-v97 span {
    min-height: 34px !important;
    padding: 0 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    border: 1px solid rgba(79, 151, 244, .24) !important;
    border-radius: 999px !important;
    background: rgba(7, 20, 39, .66) !important;
    color: #dcecff !important;
    font: 650 10px/1 "Inter", sans-serif !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.03) !important;
}

.store-hero-badges-v97 i { color: #ff9a38 !important; }

.store-catalog-v97 {
    padding: 46px 0 70px !important;
    background: linear-gradient(180deg, rgba(3, 10, 20, .79), rgba(3, 9, 18, .92)) !important;
}

.store-catalog-head-v97 {
    margin-bottom: 24px !important;
    display: flex !important;
    align-items: end !important;
    justify-content: space-between !important;
    gap: 20px !important;
}

.store-catalog-head-v97 h2 {
    margin: 8px 0 5px !important;
    font-family: "Cinzel", serif !important;
    color: #fff0c6 !important;
    font-size: clamp(25px, 3vw, 36px) !important;
    font-weight: 800 !important;
}

.store-catalog-head-v97 p {
    color: #9fb3ce !important;
    font: 550 11px/1.6 "Inter", sans-serif !important;
}

.store-count-v97 {
    width: 72px !important;
    min-width: 72px !important;
    height: 65px !important;
    display: grid !important;
    place-items: center !important;
    align-content: center !important;
    border: 1px solid rgba(255, 178, 61, .38) !important;
    border-radius: 14px !important;
    background: linear-gradient(145deg, rgba(255, 116, 20, .12), rgba(27, 107, 224, .13)) !important;
}

.store-count-v97 b { color: #ffd271 !important; font: 900 20px/1 "Inter", sans-serif !important; }
.store-count-v97 small { margin-top: 3px !important; color: #9ec6f7 !important; font: 650 8px/1 "Inter", sans-serif !important; text-transform: uppercase !important; }

.store-package-grid-v97 {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
}

.store-package-card-v97 {
    position: relative !important;
    min-width: 0 !important;
    overflow: hidden !important;
    display: grid !important;
    grid-template-rows: 185px 1fr auto !important;
    border: 1px solid rgba(74, 146, 239, .25) !important;
    border-radius: 18px !important;
    background:
        radial-gradient(circle at 82% 0%, rgba(50, 137, 255, .10), transparent 32%),
        linear-gradient(180deg, rgba(12, 28, 52, .95), rgba(6, 16, 32, .985)) !important;
    box-shadow: 0 17px 38px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.035) !important;
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease !important;
}

.store-package-card-v97::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 0 auto !important;
    height: 2px !important;
    background: linear-gradient(90deg, transparent, #ff7720 25%, #ffc059 52%, #318dff 78%, transparent) !important;
    opacity: .74 !important;
    z-index: 4 !important;
}

.store-package-card-v97:hover,
.store-package-card-v97:focus-within,
.store-package-card-v97.is-requested-v97 {
    transform: translateY(-4px) !important;
    border-color: rgba(255, 166, 51, .48) !important;
    box-shadow: 0 24px 54px rgba(0,0,0,.34), 0 0 26px rgba(255, 115, 23, .08), 0 0 24px rgba(44, 134, 255, .08) !important;
}

.store-package-card-v97.is-featured-v97 {
    border-color: rgba(255, 184, 63, .42) !important;
    background:
        radial-gradient(circle at 50% -6%, rgba(255, 145, 38, .17), transparent 35%),
        radial-gradient(circle at 85% 15%, rgba(42, 132, 255, .12), transparent 28%),
        linear-gradient(180deg, rgba(16, 31, 54, .97), rgba(7, 16, 31, .99)) !important;
}

.store-featured-v97 {
    position: absolute !important;
    top: 11px !important;
    right: 11px !important;
    z-index: 5 !important;
    min-height: 24px !important;
    padding: 0 9px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    border: 1px solid rgba(255, 218, 139, .62) !important;
    border-radius: 999px !important;
    background: linear-gradient(180deg, #f59b36, #9e450d) !important;
    color: #fff2c9 !important;
    font: 800 8px/1 "Inter", sans-serif !important;
    text-transform: uppercase !important;
    box-shadow: 0 5px 15px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.25) !important;
}

.store-package-visual-v97 {
    position: relative !important;
    min-width: 0 !important;
    display: grid !important;
    place-items: center !important;
    overflow: hidden !important;
    text-decoration: none !important;
    background:
        radial-gradient(circle at center, rgba(255, 128, 30, .14), transparent 29%),
        radial-gradient(circle at 68% 34%, rgba(47, 139, 255, .13), transparent 32%),
        linear-gradient(180deg, rgba(4, 12, 26, .34), rgba(6, 17, 34, .74)) !important;
}

.store-package-orbit-v97 {
    position: absolute !important;
    width: 124px !important;
    height: 124px !important;
    border: 1px solid rgba(255, 184, 78, .26) !important;
    border-radius: 50% !important;
    box-shadow: 0 0 0 13px rgba(46, 137, 255, .035), 0 0 35px rgba(255, 119, 24, .08) !important;
}

.store-package-visual-v97 img {
    position: relative !important;
    z-index: 2 !important;
    width: 118px !important;
    height: 118px !important;
    object-fit: contain !important;
    filter: drop-shadow(0 12px 16px rgba(0,0,0,.38)) drop-shadow(0 0 16px rgba(255, 126, 29, .14)) !important;
    transition: transform .25s ease, filter .25s ease !important;
}

.store-package-card-v97:hover .store-package-visual-v97 img {
    transform: scale(1.055) translateY(-2px) !important;
    filter: drop-shadow(0 14px 19px rgba(0,0,0,.40)) drop-shadow(0 0 21px rgba(255, 126, 29, .24)) drop-shadow(0 0 16px rgba(47, 139, 255, .12)) !important;
}

.store-package-body-v97 {
    min-width: 0 !important;
    padding: 17px 18px 15px !important;
    border-top: 1px solid rgba(73, 145, 238, .13) !important;
}

.store-package-label-v97 {
    display: inline-flex !important;
    min-height: 22px !important;
    padding: 0 8px !important;
    align-items: center !important;
    border: 1px solid rgba(255, 177, 63, .29) !important;
    border-radius: 999px !important;
    background: rgba(255, 121, 25, .08) !important;
    color: #ffbe65 !important;
    font: 800 7px/1 "Inter", sans-serif !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;
}

.store-package-body-v97 h3 {
    margin: 9px 0 10px !important;
    color: #fff2cf !important;
    font-family: "Cinzel", serif !important;
    font-size: 19px !important;
    font-weight: 800 !important;
}

.store-package-points-v97 {
    min-height: 46px !important;
    padding: 8px 10px !important;
    display: grid !important;
    grid-template-columns: 27px auto 1fr !important;
    align-items: center !important;
    gap: 6px !important;
    border: 1px solid rgba(55, 143, 255, .21) !important;
    border-radius: 11px !important;
    background: linear-gradient(90deg, rgba(19, 75, 151, .18), rgba(255, 120, 23, .055)) !important;
}

.store-package-points-v97 i { color: #ffd16c !important; font-size: 15px !important; }
.store-package-points-v97 strong { color: #8bc6ff !important; font: 900 16px/1 "Inter", sans-serif !important; }
.store-package-points-v97 span { color: #a9bdd5 !important; font: 650 8px/1.2 "Inter", sans-serif !important; text-transform: uppercase !important; }

.store-package-items-v97 {
    list-style: none !important;
    margin: 12px 0 0 !important;
    padding: 0 !important;
    display: grid !important;
    gap: 6px !important;
}

.store-package-items-v97 li {
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: 19px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 6px !important;
    color: #b9cce2 !important;
    font: 550 9px/1.3 "Inter", sans-serif !important;
}

.store-package-items-v97 li i {
    width: 17px !important;
    height: 17px !important;
    display: grid !important;
    place-items: center !important;
    border-radius: 5px !important;
    background: rgba(48, 141, 255, .12) !important;
    color: #6db4ff !important;
    font-size: 7px !important;
}

.store-package-items-v97 .store-more-items-v97 { color: #ffb85b !important; }
.store-package-note-v97 { margin: 11px 0 0 !important; color: #9db1ca !important; font: 550 9px/1.45 "Inter", sans-serif !important; }

.store-package-footer-v97 {
    min-height: 72px !important;
    padding: 12px 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    border-top: 1px solid rgba(73, 145, 238, .15) !important;
    background: rgba(4, 11, 23, .42) !important;
}

.store-package-price-v97 { display: grid !important; }
.store-package-price-v97 small { color: #8298b4 !important; font: 700 7px/1 "Inter", sans-serif !important; text-transform: uppercase !important; }
.store-package-price-v97 strong { margin-top: 4px !important; color: #ffd172 !important; font: 900 17px/1 "Inter", sans-serif !important; }

.store-package-action-v97 {
    min-height: 38px !important;
    padding: 0 13px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    border: 1px solid rgba(255, 205, 125, .52) !important;
    border-radius: 10px !important;
    background:
        linear-gradient(180deg, #ff8a25, #cf540d 56%, #913004) !important;
    color: #fff3d1 !important;
    font: 800 9px/1 "Inter", sans-serif !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 6px 16px rgba(0,0,0,.24) !important;
    transition: transform .16s ease, filter .16s ease, box-shadow .16s ease !important;
}

.store-package-action-v97:hover,
.store-package-action-v97:focus-visible {
    color: #fff !important;
    outline: none !important;
    transform: translateY(-1px) !important;
    filter: brightness(1.09) saturate(1.04) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.28), 0 9px 21px rgba(0,0,0,.28), 0 0 18px rgba(255, 123, 25, .12) !important;
}

.store-readonly-note-v97,
.store-empty-v97 {
    margin-top: 25px !important;
    padding: 16px 18px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    border: 1px solid rgba(64, 145, 250, .22) !important;
    border-radius: 14px !important;
    background: linear-gradient(90deg, rgba(13, 47, 94, .19), rgba(255, 120, 22, .05)) !important;
}

.store-readonly-note-v97 > i,
.store-empty-v97 > i {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid rgba(255, 174, 58, .32) !important;
    border-radius: 10px !important;
    background: rgba(255, 117, 22, .08) !important;
    color: #ffb552 !important;
}

.store-readonly-note-v97 div,
.store-empty-v97 { min-width: 0 !important; }
.store-readonly-note-v97 strong,
.store-empty-v97 strong { display: block !important; color: #eaf5ff !important; font: 750 10px/1.25 "Inter", sans-serif !important; }
.store-readonly-note-v97 span,
.store-empty-v97 span { display: block !important; margin-top: 3px !important; color: #9fb3cc !important; font: 550 9px/1.45 "Inter", sans-serif !important; }

@media (max-width: 1199.98px) {
    .store-package-grid-v97 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (max-width: 1399.98px) {
    #navbarNav .store-listbox-v97 {
        left: 0 !important;
        transform: translate(0, -8px) scale(.985) !important;
    }
    #navbarNav .store-nav-v97.is-open-v97 .store-listbox-v97,
    #navbarNav .store-nav-v97:focus-within .store-listbox-v97 { transform: translate(0, 0) scale(1) !important; }
    @media (hover: hover) and (pointer: fine) {
        #navbarNav .store-nav-v97:hover .store-listbox-v97 { transform: translate(0, 0) scale(1) !important; }
    }
    #navbarNav .store-listbox-v97::before { left: 37px !important; }
}

@media (max-width: 991.98px) {
    #navbarNav .store-nav-trigger-v97 { width: 100% !important; display: flex !important; }
    #navbarNav .store-nav-main-v97 { flex: 1 1 auto !important; }
    #navbarNav .store-nav-toggle-v97 {
        width: 42px !important;
        min-width: 42px !important;
        min-height: 42px !important;
        margin: 0 !important;
    }
    #navbarNav .store-listbox-v97 {
        position: static !important;
        width: 100% !important;
        max-width: none !important;
        margin: 5px 0 8px !important;
        transform: none !important;
        display: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        box-shadow: inset 0 0 0 1px rgba(45, 137, 255, .14) !important;
    }
    #navbarNav .store-listbox-v97::before { display: none !important; }
    #navbarNav .store-nav-v97.is-open-v97 .store-listbox-v97 { display: block !important; transform: none !important; }
    #navbarNav .store-listbox-scroll-v97 { max-height: 280px !important; }

    .store-page-v97 { padding-top: 68px !important; background-attachment: scroll !important; }
    .store-hero-inner-v97 { min-height: 270px !important; padding-top: 55px !important; padding-bottom: 46px !important; }
}

@media (max-width: 767.98px) {
    .store-hero-v97 h1 { font-size: clamp(34px, 12vw, 48px) !important; }
    .store-hero-v97 p { font-size: 12px !important; }
    .store-catalog-v97 { padding: 34px 0 50px !important; }
    .store-catalog-head-v97 { align-items: center !important; }
    .store-catalog-head-v97 p { font-size: 10px !important; }
    .store-package-grid-v97 { grid-template-columns: 1fr !important; gap: 14px !important; }
    .store-package-card-v97 { grid-template-rows: 165px 1fr auto !important; }
    .store-package-visual-v97 img { width: 105px !important; height: 105px !important; }
    .store-package-body-v97 h3 { font-size: 18px !important; }
    .store-package-action-v97 { min-height: 42px !important; }
}

@media (max-width: 420px) {
    .store-catalog-head-v97 { align-items: flex-start !important; }
    .store-count-v97 { width: 58px !important; min-width: 58px !important; height: 56px !important; }
    .store-package-footer-v97 { align-items: stretch !important; flex-direction: column !important; }
    .store-package-price-v97 { grid-template-columns: auto 1fr !important; align-items: baseline !important; gap: 6px !important; }
    .store-package-price-v97 strong { margin-top: 0 !important; }
    .store-package-action-v97 { width: 100% !important; }
}

@media (prefers-reduced-motion: reduce) {
    .store-package-card-v97,
    .store-package-visual-v97 img,
    #navbarNav .store-listbox-v97,
    #navbarNav .store-listbox-item-v97,
    .store-package-action-v97 { transition: none !important; }
}

/* V97 - menu Loja acompanha o breakpoint real navbar-expand-xxl (até 1399px). */
@media (max-width: 1399.98px) {
    #navbarNav .store-nav-trigger-v97 {
        width: 100% !important;
        display: flex !important;
    }

    #navbarNav .store-nav-main-v97 {
        flex: 1 1 auto !important;
    }

    #navbarNav .store-nav-toggle-v97 {
        width: 42px !important;
        min-width: 42px !important;
        min-height: 42px !important;
        margin: 0 !important;
    }

    #navbarNav .store-listbox-v97 {
        position: static !important;
        width: 100% !important;
        max-width: none !important;
        margin: 5px 0 8px !important;
        display: none !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: none !important;
        box-shadow: inset 0 0 0 1px rgba(45, 137, 255, .14) !important;
    }

    #navbarNav .store-listbox-v97::before {
        display: none !important;
    }

    #navbarNav .store-nav-v97.is-open-v97 .store-listbox-v97 {
        display: block !important;
        transform: none !important;
    }

    #navbarNav .store-listbox-scroll-v97 {
        max-height: 310px !important;
    }
}

/* =========================
   V98 - Loja Donate Premium
   ========================= */
.store-page-v98 {
    background-image:
        linear-gradient(180deg, rgba(3,2,2,0.45) 0%, rgba(5,3,3,0.75) 40%, rgba(4,2,2,0.96) 100%),
        radial-gradient(circle at 18% 12%, rgba(255, 128, 35, 0.16), transparent 18%),
        radial-gradient(circle at 82% 8%, rgba(78, 164, 255, 0.16), transparent 16%),
        url('../images/alastar-armia-bg.webp');
}

.store-hero-v98::before {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(255,133,36,0.06), transparent 18%, transparent 82%, rgba(51,143,255,0.08));
}

.store-hero-inner-v98 {
    gap: 12px;
}

.store-hero-badges-v98 span {
    position: relative;
    overflow: hidden;
}

.store-hero-badges-v98 span::after,
.store-promo-flasher-v98::after,
.store-promo-corner-v98::after,
.store-package-action-v98::before {
    content: '';
    position: absolute;
    top: -18%;
    left: -34%;
    width: 28%;
    height: 136%;
    transform: rotate(22deg);
    background: linear-gradient(180deg, rgba(255,255,255,0), rgba(255,255,255,0.28), rgba(255,255,255,0));
    animation: alastar-store-sheen-v98 3.8s linear infinite;
    pointer-events: none;
}

@keyframes alastar-store-sheen-v98 {
    0% { transform: translateX(0) rotate(22deg); opacity: 0; }
    8% { opacity: .75; }
    32% { opacity: .18; }
    100% { transform: translateX(560%) rotate(22deg); opacity: 0; }
}

@keyframes alastar-store-pulse-v98 {
    0%, 100% { box-shadow: 0 0 0 rgba(255, 150, 50, 0), 0 0 14px rgba(255, 149, 58, 0.20); }
    50% { box-shadow: 0 0 0 1px rgba(255, 174, 72, 0.24), 0 0 18px rgba(255, 156, 71, 0.36), 0 0 26px rgba(67, 150, 255, 0.16); }
}

.store-catalog-head-v98 {
    align-items: flex-end !important;
    gap: 18px !important;
}

.store-catalog-summary-v98 {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.store-calc-rule-v98 {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 58px;
    padding: 0 18px;
    border-radius: 18px;
    border: 1px solid rgba(255, 157, 54, 0.36);
    background: linear-gradient(180deg, rgba(18, 12, 9, 0.92), rgba(7, 16, 34, 0.94));
    color: #fbe8cc;
    font: 800 12px/1.1 'Inter', sans-serif;
    letter-spacing: 0.04em;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.03), 0 10px 22px rgba(0,0,0,0.24);
}

.store-calc-rule-v98 i {
    color: #ffb24d;
    font-size: 15px;
}

.store-section-block-v98 {
    margin-top: 28px;
    padding: 20px 20px 24px;
    border-radius: 22px;
    border: 1px solid rgba(255, 144, 44, 0.22);
    background:
        linear-gradient(180deg, rgba(7, 11, 26, 0.90) 0%, rgba(7, 16, 34, 0.95) 52%, rgba(9, 8, 11, 0.97) 100%),
        radial-gradient(circle at 12% 16%, rgba(255, 143, 53, 0.10), transparent 16%),
        radial-gradient(circle at 88% 14%, rgba(73, 159, 255, 0.10), transparent 14%);
    box-shadow: 0 18px 40px rgba(0,0,0,0.24), inset 0 0 0 1px rgba(255,255,255,0.018);
}

.store-section-block-v98.section-premium {
    border-color: rgba(255, 197, 95, 0.40);
    box-shadow: 0 20px 48px rgba(0,0,0,0.30), 0 0 28px rgba(255, 171, 71, 0.08);
}

.store-section-head-v98 {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 18px;
}

.store-section-caption-v98 {
    display: inline-flex;
    align-items: center;
    padding: 5px 12px;
    border-radius: 999px;
    border: 1px solid rgba(255, 173, 68, 0.28);
    background: linear-gradient(180deg, rgba(126, 45, 12, 0.35), rgba(14, 18, 33, 0.55));
    color: #ffd27e;
    font: 800 11px/1 'Inter', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.store-section-head-v98 h3 {
    margin: 10px 0 6px;
    color: #fff2d6;
    font: 800 clamp(24px, 2.3vw, 32px)/1.05 'Cinzel', serif;
}

.store-section-head-v98 p {
    margin: 0;
    max-width: 720px;
    color: #c8d8ef;
    font: 600 14px/1.6 'Inter', sans-serif;
}

.store-promo-flasher-v98 {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    flex: 0 0 auto;
    padding: 10px 16px;
    border-radius: 999px;
    border: 1px solid rgba(255, 174, 72, 0.34);
    background: linear-gradient(180deg, rgba(145, 55, 16, 0.34), rgba(10, 23, 46, 0.86));
    color: #fff1d3;
    font: 900 12px/1 'Cinzel', serif;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    overflow: hidden;
    animation: alastar-store-pulse-v98 1.85s ease-in-out infinite;
}

.store-promo-flasher-v98 i {
    color: #ffba52;
    font-size: 13px;
}

.store-package-grid-v98 {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
}

.store-package-card-v98 {
    position: relative;
    display: flex !important;
    flex-direction: column;
    gap: 14px;
    min-height: 100%;
    padding: 22px 18px 18px !important;
    overflow: hidden;
    border-radius: 22px !important;
    border: 1px solid rgba(255, 153, 51, 0.24) !important;
    background:
        linear-gradient(180deg, rgba(8, 16, 34, 0.96) 0%, rgba(7, 15, 31, 0.98) 45%, rgba(18, 11, 8, 0.98) 100%) !important;
}

.store-package-card-v98::after {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 100% 0, rgba(72, 157, 255, 0.16), transparent 28%), radial-gradient(circle at 0 0, rgba(255, 139, 42, 0.10), transparent 22%);
    pointer-events: none;
}

.store-package-card-v98:hover,
.store-package-card-v98:focus-within {
    transform: translateY(-4px) !important;
    border-color: rgba(255, 184, 86, 0.45) !important;
    box-shadow: 0 18px 34px rgba(0,0,0,0.28), 0 0 0 1px rgba(68, 159, 255, 0.10), 0 0 32px rgba(255, 140, 42, 0.08) !important;
}

.store-package-card-v98.is-highlight-v98 {
    border-color: rgba(255, 190, 92, 0.42) !important;
    box-shadow: 0 16px 36px rgba(0,0,0,0.30), 0 0 0 1px rgba(255, 165, 70, 0.08), 0 0 24px rgba(255, 154, 59, 0.10) !important;
}

.store-package-card-v98.is-premium-v98 {
    background:
        linear-gradient(180deg, rgba(8, 15, 33, 0.96) 0%, rgba(20, 12, 12, 0.98) 48%, rgba(33, 14, 6, 0.98) 100%) !important;
}

.store-promo-corner-v98 {
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 110px;
    padding: 8px 12px;
    border-radius: 999px;
    border: 1px solid rgba(255, 186, 88, 0.32);
    background: linear-gradient(180deg, rgba(165, 62, 18, 0.96), rgba(58, 19, 9, 0.94));
    color: #fff1d0;
    font: 900 10px/1 'Cinzel', serif;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    overflow: hidden;
    animation: alastar-store-pulse-v98 1.55s ease-in-out infinite;
}

.store-package-top-v98 {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr);
    align-items: center;
    gap: 14px;
    min-height: 110px;
}

.store-package-visual-v98 {
    min-height: 110px !important;
    border-radius: 18px !important;
    background: radial-gradient(circle at 50% 36%, rgba(255, 153, 51, 0.14), transparent 38%), linear-gradient(180deg, rgba(11, 26, 53, 0.92), rgba(10, 11, 17, 0.92)) !important;
    border: 1px solid rgba(255, 157, 62, 0.20);
}

.store-package-visual-v98 img {
    width: 94px !important;
    height: 94px !important;
    object-fit: contain;
    filter: drop-shadow(0 0 12px rgba(255, 152, 59, 0.16)) drop-shadow(0 0 16px rgba(63, 149, 255, 0.14));
}

.store-package-heading-v98 {
    min-width: 0;
}

.store-package-heading-v98 h4 {
    margin: 6px 0 4px;
    color: #fff3db;
    font: 800 25px/1.08 'Cinzel', serif;
}

.store-package-heading-v98 p {
    margin: 0;
    color: #90cbff;
    font: 700 12px/1.45 'Inter', sans-serif;
    letter-spacing: 0.03em;
}

.store-package-metrics-v98 {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, .95fr);
    gap: 12px;
}

.store-package-points-v98 {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    min-height: 92px;
    padding: 14px 16px !important;
    border-radius: 18px !important;
    border: 1px solid rgba(70, 159, 255, 0.22) !important;
    background: linear-gradient(180deg, rgba(12, 36, 74, 0.86), rgba(9, 15, 29, 0.96)) !important;
}

.store-package-points-v98 i {
    font-size: 18px !important;
    color: #ffd16b !important;
}

.store-package-points-v98 small,
.store-package-bonus-v98 small {
    display: block;
    color: #a7c5e6;
    font: 800 10px/1 'Inter', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.10em;
}

.store-package-points-v98 strong {
    display: block;
    margin-top: 7px;
    color: #f2f7ff !important;
    font: 900 24px/1 'Inter', sans-serif !important;
    letter-spacing: 0.02em;
}

.store-package-points-v98 span {
    display: block;
    margin-top: 6px;
    color: #86c7ff !important;
    font: 700 10px/1.15 'Inter', sans-serif !important;
    letter-spacing: 0.12em;
}

.store-package-bonus-v98 {
    position: relative;
    min-height: 92px;
    padding: 14px 16px;
    border-radius: 18px;
    border: 1px solid rgba(255, 173, 69, 0.24);
    background: linear-gradient(180deg, rgba(70, 26, 9, 0.82), rgba(21, 13, 12, 0.96));
    overflow: hidden;
}

.store-package-bonus-v98.has-bonus-v98 {
    animation: alastar-store-pulse-v98 1.7s ease-in-out infinite;
}

.store-package-bonus-v98.no-bonus-v98 {
    border-color: rgba(146, 169, 197, 0.18);
    background: linear-gradient(180deg, rgba(29, 35, 48, 0.86), rgba(14, 16, 22, 0.96));
}

.store-package-bonus-v98 strong {
    display: block;
    margin-top: 8px;
    color: #ffd98e;
    font: 900 22px/1 'Inter', sans-serif;
}

.store-package-bonus-v98 span {
    display: block;
    margin-top: 7px;
    color: #ffd7ad;
    font: 700 10px/1.15 'Inter', sans-serif;
    letter-spacing: 0.10em;
    text-transform: uppercase;
}

.store-package-bonus-v98.no-bonus-v98 strong,
.store-package-bonus-v98.no-bonus-v98 span {
    color: #d7e6f7;
}

.store-package-base-v98 {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.store-package-base-v98 span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 36px;
    padding: 0 12px;
    border-radius: 999px;
    border: 1px solid rgba(255, 148, 49, 0.18);
    background: rgba(3, 10, 22, 0.56);
    color: #d7e5f8;
    font: 700 11px/1 'Inter', sans-serif;
}

.store-package-base-v98 i {
    color: #ffb557;
}

.store-package-items-v98 {
    position: relative;
    z-index: 1;
    margin-top: 2px !important;
}

.store-package-note-v98 {
    position: relative;
    z-index: 1;
    margin-top: 2px !important;
    font-size: 11px !important;
    line-height: 1.6 !important;
}

.store-package-footer-v98 {
    position: relative;
    z-index: 1;
    margin-top: auto !important;
    align-items: center !important;
    gap: 12px !important;
}

.store-package-price-v98 small {
    font-size: 10px !important;
}

.store-package-price-v98 strong {
    font-size: 26px !important;
    color: #ffd27c !important;
}

.store-package-action-v98 {
    position: relative;
    overflow: hidden;
    min-width: 210px;
    min-height: 52px !important;
    border-radius: 14px !important;
    font-size: 12px !important;
    letter-spacing: 0.10em !important;
    background: linear-gradient(180deg, #ff9b2f 0%, #db5b13 48%, #7e2910 100%) !important;
    color: #fff7e8 !important;
}

.store-package-action-v98:hover,
.store-package-action-v98:focus-visible {
    border-color: rgba(255, 204, 125, 0.60) !important;
    box-shadow: 0 16px 30px rgba(0,0,0,0.26), 0 0 20px rgba(255, 148, 58, 0.18) !important;
}

.store-readonly-note-v98 {
    margin-top: 28px !important;
    border-color: rgba(78, 161, 255, 0.24) !important;
}

#navbarNav .store-listbox-v98 {
    width: min(420px, calc(100vw - 24px)) !important;
}

#navbarNav .store-listbox-section-title-v98 {
    padding: 8px 10px 7px;
    color: #ffd27c;
    font: 800 10px/1 'Cinzel', serif;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

#navbarNav .store-listbox-item-v98 {
    grid-template-columns: 40px minmax(0, 1fr) auto 14px !important;
    min-height: 60px;
}

#navbarNav .store-listbox-item-v98 > b {
    color: #ffd994 !important;
    font: 900 10px/1 'Inter', sans-serif !important;
    white-space: nowrap;
}

#navbarNav .store-listbox-item-v98 .store-listbox-copy-v97 small {
    line-height: 1.25 !important;
}

@media (max-width: 1199.98px) {
    .store-package-grid-v98 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 767.98px) {
    .store-catalog-head-v98,
    .store-section-head-v98 {
        align-items: flex-start !important;
        flex-direction: column !important;
    }

    .store-catalog-summary-v98 {
        width: 100%;
        justify-content: space-between;
    }

    .store-section-block-v98 {
        padding: 16px 14px 18px;
        border-radius: 18px;
    }

    .store-package-grid-v98 {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .store-package-card-v98 {
        padding: 18px 14px 16px !important;
    }

    .store-promo-corner-v98 {
        min-width: 98px;
        padding: 7px 10px;
        font-size: 9px;
    }

    .store-package-top-v98 {
        grid-template-columns: 82px minmax(0, 1fr);
        gap: 12px;
        min-height: 82px;
    }

    .store-package-visual-v98 {
        min-height: 82px !important;
    }

    .store-package-visual-v98 img {
        width: 72px !important;
        height: 72px !important;
    }

    .store-package-heading-v98 h4 {
        font-size: 20px;
    }

    .store-package-heading-v98 p {
        font-size: 11px;
    }

    .store-package-metrics-v98 {
        grid-template-columns: 1fr;
    }

    .store-package-points-v98,
    .store-package-bonus-v98 {
        min-height: 84px;
    }

    .store-package-points-v98 strong,
    .store-package-bonus-v98 strong {
        font-size: 20px !important;
    }

    .store-package-footer-v98 {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .store-package-action-v98 {
        width: 100%;
        min-width: 0;
    }

    #navbarNav .store-listbox-v98 {
        width: calc(100vw - 34px) !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .store-promo-flasher-v98,
    .store-promo-corner-v98,
    .store-package-bonus-v98.has-bonus-v98,
    .store-package-card-v98,
    .store-package-action-v98,
    .store-hero-badges-v98 span::after,
    .store-promo-flasher-v98::after,
    .store-promo-corner-v98::after,
    .store-package-action-v98::before {
        animation: none !important;
        transition: none !important;
    }
}

/* =========================================================
   V99 - NAV LISTBOXES + ESTOQUE LOJA + RANKINGS EXCLUSIVOS
   ========================================================= */

/* Listboxes premium de Notícias, Download e Comunidade */
#navbarNav .nav-rich-v99 {
    position: relative !important;
    min-width: 0 !important;
}

#navbarNav .nav-rich-trigger-v99 {
    display: inline-flex !important;
    align-items: stretch !important;
    border-radius: 11px !important;
}

#navbarNav .nav-rich-main-v99 {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 42px !important;
    padding-right: 9px !important;
    border-radius: 10px 0 0 10px !important;
}

#navbarNav .nav-rich-toggle-v99 {
    position: relative !important;
    display: inline-grid !important;
    place-items: center !important;
    width: 28px !important;
    min-width: 28px !important;
    min-height: 42px !important;
    padding: 0 !important;
    border: 1px solid rgba(255, 143, 43, 0.28) !important;
    border-left: 0 !important;
    border-radius: 0 10px 10px 0 !important;
    color: #ffd18b !important;
    background: linear-gradient(180deg, rgba(70,27,11,.72), rgba(8,18,38,.90)) !important;
    cursor: pointer !important;
    transition: .2s ease !important;
}

#navbarNav .nav-rich-toggle-v99:hover,
#navbarNav .nav-rich-toggle-v99:focus-visible {
    color: #fff2d4 !important;
    border-color: rgba(255, 184, 87, 0.48) !important;
    box-shadow: 0 0 18px rgba(255, 132, 36, 0.12), inset 0 0 12px rgba(66, 151, 255, 0.08) !important;
}

#navbarNav .nav-rich-toggle-v99 i {
    font-size: 9px !important;
    transition: transform .2s ease !important;
}

#navbarNav .nav-rich-v99.is-open-v99 .nav-rich-toggle-v99 i {
    transform: rotate(180deg) !important;
}

#navbarNav .nav-rich-listbox-v99 {
    position: absolute !important;
    z-index: 1200 !important;
    top: calc(100% + 10px) !important;
    left: 50% !important;
    width: min(390px, calc(100vw - 24px)) !important;
    transform: translate(-50%, -6px) scale(.985) !important;
    transform-origin: top center !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    overflow: hidden !important;
    border: 1px solid rgba(255, 154, 54, 0.40) !important;
    border-radius: 16px !important;
    background:
        radial-gradient(circle at 14% 0%, rgba(255, 136, 36, .12), transparent 24%),
        radial-gradient(circle at 92% 4%, rgba(63, 151, 255, .14), transparent 24%),
        linear-gradient(180deg, rgba(8,18,38,.985), rgba(7,13,29,.99) 62%, rgba(18,8,5,.99)) !important;
    box-shadow: 0 22px 50px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.04), 0 0 0 1px rgba(48,145,255,.06) !important;
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease !important;
}

#navbarNav .nav-rich-v99.is-open-v99 .nav-rich-listbox-v99,
#navbarNav .nav-rich-v99:focus-within .nav-rich-listbox-v99 {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate(-50%, 0) scale(1) !important;
}

@media (hover:hover) and (pointer:fine) {
    #navbarNav .nav-rich-v99:hover .nav-rich-listbox-v99 {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: translate(-50%, 0) scale(1) !important;
    }
}

#navbarNav .nav-rich-listbox-v99 > header {
    display: flex !important;
    align-items: center !important;
    gap: 11px !important;
    padding: 14px 15px 12px !important;
    border-bottom: 1px solid rgba(255, 149, 50, 0.18) !important;
    background: linear-gradient(90deg, rgba(91,34,12,.26), rgba(9,25,52,.36)) !important;
}

#navbarNav .nav-rich-emblem-v99 {
    display: grid !important;
    place-items: center !important;
    width: 38px !important;
    height: 38px !important;
    flex: 0 0 38px !important;
    border: 1px solid rgba(255,174,74,.34) !important;
    clip-path: polygon(25% 0,75% 0,100% 25%,100% 75%,75% 100%,25% 100%,0 75%,0 25%) !important;
    color: #ffd36e !important;
    background: radial-gradient(circle at 50% 30%, rgba(255,161,55,.22), transparent 35%), linear-gradient(145deg, #102d5f, #0a142b 54%, #54200d) !important;
    box-shadow: inset 0 0 12px rgba(75,161,255,.12) !important;
}

#navbarNav .nav-rich-listbox-v99 > header strong {
    display: block !important;
    color: #fff0d1 !important;
    font: 800 12px/1.2 'Cinzel', serif !important;
    letter-spacing: .05em !important;
}

#navbarNav .nav-rich-listbox-v99 > header small {
    display: block !important;
    margin-top: 3px !important;
    color: #91b8e6 !important;
    font: 600 9px/1.3 'Inter', sans-serif !important;
}

#navbarNav .nav-rich-scroll-v99 {
    max-height: 310px !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    scrollbar-width: thin !important;
    scrollbar-color: #d9681b #07152b !important;
}

#navbarNav .nav-rich-scroll-v99::-webkit-scrollbar { width: 7px !important; }
#navbarNav .nav-rich-scroll-v99::-webkit-scrollbar-track { background: #07152b !important; }
#navbarNav .nav-rich-scroll-v99::-webkit-scrollbar-thumb { background: linear-gradient(#ffae4e,#c64a0b) !important; border-radius: 999px !important; }

#navbarNav .nav-rich-item-v99 {
    display: grid !important;
    grid-template-columns: 38px minmax(0,1fr) 14px !important;
    align-items: center !important;
    gap: 10px !important;
    min-height: 61px !important;
    padding: 9px 12px !important;
    color: #e9f4ff !important;
    text-decoration: none !important;
    border-bottom: 1px solid rgba(103,153,219,.11) !important;
    background: linear-gradient(90deg, rgba(10,24,49,.55), rgba(18,10,7,.28)) !important;
    transition: .18s ease !important;
}

#navbarNav .nav-rich-item-v99:hover,
#navbarNav .nav-rich-item-v99:focus-visible {
    padding-left: 15px !important;
    background: linear-gradient(90deg, rgba(34,82,151,.46), rgba(125,43,11,.42)) !important;
    box-shadow: inset 3px 0 0 #ff942f !important;
}

#navbarNav .nav-rich-item-icon-v99 {
    display: grid !important;
    place-items: center !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 10px !important;
    border: 1px solid rgba(255,164,67,.24) !important;
    color: #ffbc61 !important;
    background: linear-gradient(145deg, rgba(16,55,105,.78), rgba(38,16,8,.86)) !important;
}

#navbarNav .nav-rich-item-v99 strong {
    display: block !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    color: #f5eddf !important;
    font: 750 10px/1.3 'Inter', sans-serif !important;
}

#navbarNav .nav-rich-item-v99 small {
    display: -webkit-box !important;
    margin-top: 3px !important;
    overflow: hidden !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    color: #8eb4df !important;
    font: 600 8.5px/1.3 'Inter', sans-serif !important;
}

#navbarNav .nav-rich-item-v99 > i:last-child {
    color: #ff9f3d !important;
    font-size: 9px !important;
}

#navbarNav .nav-rich-item-v99.is-unconfigured-v99 {
    opacity: .52 !important;
    pointer-events: none !important;
}

#navbarNav .nav-rich-viewall-v99 {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    min-height: 42px !important;
    color: #ffe6bd !important;
    text-decoration: none !important;
    font: 800 9px/1 'Cinzel', serif !important;
    letter-spacing: .06em !important;
    border-top: 1px solid rgba(255,149,50,.18) !important;
    background: linear-gradient(180deg, rgba(93,32,10,.32), rgba(7,21,43,.76)) !important;
}

#navbarNav .nav-rich-viewall-v99:hover { color: #fff !important; background: linear-gradient(180deg, rgba(138,48,11,.46), rgba(11,35,69,.86)) !important; }

/* Loja V99 - selos comerciais e estoque */
.store-package-ribbons-v99 {
    position: relative !important;
    z-index: 4 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    margin: -2px 120px 2px 0 !important;
    min-height: 20px !important;
}

.store-package-ribbons-v99 span {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    min-height: 25px !important;
    padding: 0 9px !important;
    border-radius: 999px !important;
    font: 850 8px/1 'Inter', sans-serif !important;
    text-transform: uppercase !important;
    letter-spacing: .08em !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 5px 12px rgba(0,0,0,.18) !important;
}

.store-package-ribbons-v99 .is-bestseller-v99 { color:#fff0d0 !important; border:1px solid rgba(255,137,37,.38) !important; background:linear-gradient(180deg,#8f3210,#431507) !important; animation:alastar-store-pulse-v98 1.7s ease-in-out infinite !important; }
.store-package-ribbons-v99 .is-bestvalue-v99 { color:#dff3ff !important; border:1px solid rgba(73,166,255,.38) !important; background:linear-gradient(180deg,#164d91,#0a244b) !important; }
.store-package-ribbons-v99 .is-premium-label-v99 { color:#ffe4a3 !important; border:1px solid rgba(255,207,106,.42) !important; background:linear-gradient(180deg,#705019,#2d1b08) !important; }
.store-package-ribbons-v99 .is-ultra-label-v99 { color:#fff !important; border:1px solid rgba(255,187,78,.55) !important; background:linear-gradient(135deg,#bf5414,#143e7d,#7b2f0c) !important; animation:alastar-store-pulse-v98 1.4s ease-in-out infinite !important; }

.store-package-card-v98.is-ultra-v99 {
    border-color: rgba(255,197,95,.62) !important;
    background:
        radial-gradient(circle at 50% 0%, rgba(255,157,51,.18), transparent 25%),
        radial-gradient(circle at 100% 18%, rgba(61,151,255,.18), transparent 30%),
        linear-gradient(180deg,rgba(10,20,42,.98),rgba(23,12,13,.99) 48%,rgba(52,19,6,.99)) !important;
    box-shadow: 0 20px 46px rgba(0,0,0,.36),0 0 34px rgba(255,153,50,.12),0 0 20px rgba(52,143,255,.08) !important;
}

.store-package-card-v98.is-soldout-v99 {
    filter: saturate(.68) !important;
}

.store-stock-counter-v99 {
    position: relative !important;
    z-index: 2 !important;
    padding: 11px 12px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(86,160,244,.18) !important;
    background: linear-gradient(180deg,rgba(5,17,37,.75),rgba(15,9,7,.78)) !important;
}

.store-stock-head-v99 {
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
    color:#b9d2ef !important;
    font:700 9.5px/1.2 'Inter',sans-serif !important;
}
.store-stock-head-v99 span { display:inline-flex !important; align-items:center !important; gap:6px !important; }
.store-stock-head-v99 i { color:#ffae4e !important; }
.store-stock-head-v99 strong { color:#ffe4b5 !important; font-weight:850 !important; }
.store-stock-track-v99 { height:7px !important; margin-top:8px !important; overflow:hidden !important; border-radius:999px !important; background:#071327 !important; box-shadow:inset 0 1px 3px rgba(0,0,0,.55) !important; }
.store-stock-track-v99 > span { display:block !important; height:100% !important; border-radius:inherit !important; background:linear-gradient(90deg,#2b93f2,#ff8d28,#ffc15e) !important; box-shadow:0 0 12px rgba(255,145,43,.28) !important; }
.store-stock-track-v99.is-unlimited-v99 > span { width:100% !important; background:linear-gradient(90deg,#1c70c8,#43a7ff,#ff9b34,#2e88dd) !important; background-size:200% 100% !important; animation:alastar-stock-flow-v99 3s linear infinite !important; }
@keyframes alastar-stock-flow-v99 { to { background-position:200% 0; } }
.store-soldout-v99 { margin-top:8px !important; color:#ffb3a0 !important; font:850 9px/1 'Inter',sans-serif !important; text-transform:uppercase !important; letter-spacing:.1em !important; }
.store-package-action-v98.is-disabled-v99 { opacity:.58 !important; cursor:not-allowed !important; background:linear-gradient(180deg,#4a3c36,#28201d) !important; border-color:rgba(170,155,145,.22) !important; box-shadow:none !important; }

#navbarNav .store-listbox-item-v98.is-soldout-v99 { opacity:.65 !important; }
#navbarNav .store-listbox-item-v98.is-soldout-v99 > b { color:#ff9b86 !important; }

/* Comunidade / download */
.community-card-v99 { position:relative !important; overflow:hidden !important; border:1px solid rgba(255,147,45,.22) !important; background:linear-gradient(180deg,rgba(8,20,42,.93),rgba(18,9,6,.96)) !important; }
.community-card-v99::before { content:''; position:absolute; inset:0; pointer-events:none; background:radial-gradient(circle at 50% 0,rgba(70,155,255,.12),transparent 30%),radial-gradient(circle at 0 100%,rgba(255,135,35,.10),transparent 35%); }
.community-emblem-v99 { position:relative; z-index:1; display:grid; place-items:center; width:70px; height:70px; margin:0 auto 16px; border:1px solid rgba(255,176,75,.35); border-radius:20px; color:#ffc05f; font-size:28px; background:linear-gradient(145deg,#123b76,#0c1830 52%,#5b210c); box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 0 22px rgba(63,151,255,.12),0 12px 24px rgba(0,0,0,.24); }
.community-card-v99.is-unconfigured-v99 { opacity:.64; }
.download-options-v99 .al-btn { justify-content:flex-start !important; }

/* Página exclusiva dos rankings */
.rankings-only-v99 { max-width:1440px !important; }
.rankings-grid-v99 { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:18px !important; align-items:start !important; }
.rankings-card-v99 { min-width:0 !important; }
.rankings-card-v99 .full-rank-row-rich { grid-template-columns:34px minmax(0,1.25fr) minmax(90px,.8fr) minmax(70px,.48fr) !important; }

@media (max-width:1199.98px) {
    .rankings-grid-v99 { grid-template-columns:1fr !important; }
}

@media (max-width:1399.98px) {
    #navbarNav .nav-rich-listbox-v99 { left:0 !important; transform:translate(0,-6px) scale(.985) !important; transform-origin:top left !important; }
    #navbarNav .nav-rich-v99.is-open-v99 .nav-rich-listbox-v99,
    #navbarNav .nav-rich-v99:focus-within .nav-rich-listbox-v99 { transform:translate(0,0) scale(1) !important; }
    @media (hover:hover) and (pointer:fine) { #navbarNav .nav-rich-v99:hover .nav-rich-listbox-v99 { transform:translate(0,0) scale(1) !important; } }
}

@media (max-width:1199.98px) {
    #navbarNav .nav-rich-trigger-v99 { width:100% !important; display:flex !important; }
    #navbarNav .nav-rich-main-v99 { flex:1 1 auto !important; border-radius:10px 0 0 10px !important; }
    #navbarNav .nav-rich-listbox-v99 {
        position:static !important;
        display:none !important;
        width:100% !important;
        margin:6px 0 10px !important;
        transform:none !important;
        opacity:1 !important;
        visibility:visible !important;
        box-shadow:inset 0 0 0 1px rgba(255,255,255,.02) !important;
    }
    #navbarNav .nav-rich-v99.is-open-v99 .nav-rich-listbox-v99 { display:block !important; pointer-events:auto !important; }
}

@media (max-width:767.98px) {
    .store-package-ribbons-v99 { margin-right:0 !important; padding-right:100px !important; }
    .store-stock-head-v99 { align-items:flex-start !important; flex-direction:column !important; gap:4px !important; }
    .rankings-card-v99 { overflow:hidden !important; }
    .rankings-card-v99 .full-rank-head-rich,
    .rankings-card-v99 .full-rank-row-rich { min-width:650px !important; }
    .rankings-card-v99 { overflow-x:auto !important; }
}

@media (prefers-reduced-motion: reduce) {
    .store-package-ribbons-v99 span,
    .store-package-card-v98.is-ultra-v99,
    .store-stock-track-v99.is-unlimited-v99 > span { animation:none !important; }
}

.store-urgency-v99 {
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:12px 16px !important;
    flex-wrap:wrap !important;
    max-width:860px !important;
    margin-top:8px !important;
    padding:12px 16px !important;
    border-radius:16px !important;
    border:1px solid rgba(255,155,54,.28) !important;
    background:linear-gradient(90deg,rgba(81,27,9,.54),rgba(8,30,63,.72),rgba(81,27,9,.54)) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 10px 26px rgba(0,0,0,.22),0 0 18px rgba(255,142,43,.06) !important;
}
.store-urgency-v99 strong { color:#ffe7ba !important; font:850 12px/1.25 'Inter',sans-serif !important; }
.store-urgency-v99 small { color:#9fc6f2 !important; font:600 9px/1.35 'Inter',sans-serif !important; }
.store-urgency-signal-v99 { display:inline-flex !important; align-items:center !important; gap:6px !important; padding:7px 10px !important; border-radius:999px !important; color:#fff2d5 !important; background:linear-gradient(180deg,#a23d13,#4f1708) !important; border:1px solid rgba(255,182,82,.32) !important; font:900 9px/1 'Cinzel',serif !important; text-transform:uppercase !important; letter-spacing:.08em !important; animation:alastar-store-pulse-v98 1.6s ease-in-out infinite !important; }
@media (max-width:767.98px){ .store-urgency-v99 { align-items:flex-start !important; flex-direction:column !important; } }

/* V99: o menu principal usa navbar-expand-xxl, portanto os listboxes entram no fluxo abaixo de 1400px. */
@media (max-width:1399.98px) {
    #navbarNav .nav-rich-trigger-v99 { width:100% !important; display:flex !important; }
    #navbarNav .nav-rich-main-v99 { flex:1 1 auto !important; border-radius:10px 0 0 10px !important; }
    #navbarNav .nav-rich-listbox-v99 {
        position:static !important;
        display:none !important;
        width:100% !important;
        max-width:none !important;
        margin:6px 0 10px !important;
        transform:none !important;
        opacity:1 !important;
        visibility:visible !important;
        pointer-events:none !important;
    }
    #navbarNav .nav-rich-v99.is-open-v99 .nav-rich-listbox-v99 { display:block !important; pointer-events:auto !important; }
    #navbarNav .nav-rich-v99:not(.is-open-v99):focus-within .nav-rich-listbox-v99 { display:none !important; pointer-events:none !important; }
}
/* =========================
   V100 - Loja Donate Visual Premium Refinado
   ========================= */
.store-page-v100 .store-catalog-head-v98 h2 {
    color: #fff0d4;
    text-shadow: 0 1px 0 rgba(0,0,0,.42), 0 0 18px rgba(255, 147, 44, 0.10);
}

.store-page-v100 .store-catalog-head-v98 p,
.store-page-v100 .store-section-head-v98 p {
    color: #d6e6ff;
    font-size: 15px;
}

.store-package-card-v100 {
    gap: 16px;
}

.store-package-card-v100 .store-package-top-v98 {
    padding-top: 18px;
}

.store-package-spotlight-v100 {
    position: absolute;
    top: 16px;
    left: 16px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    max-width: calc(100% - 150px);
    padding: 0 12px;
    border-radius: 999px;
    border: 1px solid rgba(255, 197, 98, 0.34);
    background: linear-gradient(180deg, rgba(255, 159, 53, 0.22), rgba(31, 38, 64, 0.74));
    color: #fff0cf;
    font: 900 10px/1 'Cinzel', serif;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    box-shadow: 0 8px 20px rgba(0,0,0,0.22), inset 0 0 0 1px rgba(255,255,255,0.03);
    animation: alastar-store-pulse-v98 1.6s ease-in-out infinite;
}

.store-package-heading-v100 .store-package-label-v97 {
    margin-bottom: 7px;
}

.store-package-microflash-v100 {
    display: inline-flex;
    align-items: center;
    min-height: 24px;
    max-width: 100%;
    margin-bottom: 8px;
    padding: 0 10px;
    border-radius: 999px;
    border: 1px solid rgba(255, 171, 74, 0.28);
    background: linear-gradient(180deg, rgba(88, 33, 10, 0.82), rgba(15, 18, 30, 0.86));
    color: #ffd787;
    font: 900 9px/1 'Inter', sans-serif;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.02);
}

.store-package-heading-v100 h4 {
    text-shadow: 0 0 14px rgba(255, 153, 66, 0.08);
}

.store-package-heading-v100 p {
    color: #d9e9ff;
    font-size: 12.5px;
    line-height: 1.65;
}

.store-package-card-v100 .store-package-metrics-v98 {
    margin-top: 2px;
}

.store-package-breakdown-v100 {
    position: relative;
    z-index: 1;
    display: grid;
    gap: 8px;
    padding: 14px;
    border-radius: 18px;
    border: 1px solid rgba(255, 162, 57, 0.22);
    background:
        linear-gradient(180deg, rgba(9, 14, 28, 0.96), rgba(15, 11, 14, 0.98)),
        radial-gradient(circle at 100% 0, rgba(255, 142, 43, 0.08), transparent 28%);
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.02);
}

.store-package-breakdown-row-v100 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    min-height: 40px;
    padding: 0 12px;
    border-radius: 12px;
    border: 1px solid rgba(255,255,255,0.04);
    background: linear-gradient(90deg, rgba(19, 28, 48, 0.68), rgba(30, 18, 14, 0.68));
}

.store-package-breakdown-row-v100 span {
    color: #bdd7f3;
    font: 800 11px/1.15 'Inter', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.store-package-breakdown-row-v100 b {
    color: #fff2d2;
    font: 900 15px/1 'Inter', sans-serif;
    text-align: right;
}

.store-package-breakdown-row-v100.is-total-v100 {
    border-color: rgba(255, 185, 86, 0.20);
    background: linear-gradient(90deg, rgba(20, 43, 84, 0.88), rgba(92, 34, 10, 0.88));
    box-shadow: 0 0 16px rgba(255, 149, 57, 0.10);
}

.store-package-breakdown-row-v100.is-total-v100 span {
    color: #dcebff;
}

.store-package-breakdown-row-v100.is-total-v100 b {
    color: #fff4c8;
    font-size: 16px;
}

.store-package-note-v100 {
    margin: 0 !important;
    padding: 12px 14px !important;
    border-radius: 14px;
    border: 1px solid rgba(77, 161, 255, 0.18);
    background: linear-gradient(180deg, rgba(7, 21, 43, 0.86), rgba(13, 12, 18, 0.92));
    color: #d9e7f6 !important;
    font-size: 12px !important;
    line-height: 1.65 !important;
}

.store-package-note-v100 strong {
    color: #ffe2a1;
}

.store-package-note-v100 span {
    color: #7fd0ff;
    font-weight: 800;
}

.store-package-card-v100 .store-package-price-v98 small {
    color: #d9c08b !important;
    letter-spacing: 0.12em;
}

.store-package-card-v100 .store-package-price-v98 strong {
    text-shadow: 0 0 16px rgba(255, 150, 56, 0.12);
}

.store-package-card-v100 .store-package-action-v98 span,
.store-package-card-v100 .store-package-action-v98 i {
    position: relative;
    z-index: 1;
}

.store-package-card-v100 .store-package-action-v98 {
    font-size: 12.5px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.16), 0 10px 26px rgba(0,0,0,0.22);
}

@media (max-width: 767.98px) {
    .store-package-spotlight-v100 {
        top: 12px;
        left: 12px;
        max-width: calc(100% - 130px);
        min-height: 24px;
        padding: 0 10px;
        font-size: 8.5px;
    }

    .store-package-heading-v100 p {
        font-size: 11.5px;
    }

    .store-package-breakdown-v100 {
        padding: 12px;
    }

    .store-package-breakdown-row-v100 {
        min-height: 38px;
        padding: 0 10px;
    }

    .store-package-breakdown-row-v100 span {
        font-size: 10px;
    }

    .store-package-breakdown-row-v100 b {
        font-size: 13px;
    }

    .store-package-breakdown-row-v100.is-total-v100 b {
        font-size: 14px;
    }
}

/* =========================================================
   V103 - LISTBOXES POR HOVER / SEM SETAS EXTRAS NO CABECALHO
   ========================================================= */

/* Os antigos botões de seta deixam de existir visualmente mesmo com HTML em cache. */
#navbarNav .nav-rich-toggle-v99,
#navbarNav .store-nav-toggle-v97 {
    display: none !important;
}

/* O próprio botão principal passa a ocupar o componente inteiro. */
#navbarNav .nav-rich-trigger-v99,
#navbarNav .store-nav-trigger-v97 {
    position: relative !important;
    display: inline-flex !important;
    align-items: stretch !important;
    border-radius: 10px !important;
}

#navbarNav .nav-rich-main-v99,
#navbarNav .store-nav-main-v97 {
    border-radius: 10px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
}

/* Pequena ponte invisível entre o botão e o listbox para o hover não cair. */
#navbarNav .nav-rich-v99::after,
#navbarNav .store-nav-v97::after {
    content: '';
    position: absolute;
    z-index: 1199;
    top: 100%;
    left: 0;
    width: 100%;
    height: 8px;
    pointer-events: auto;
}

/* Dropdown mais perto do botão: o cursor chega à lista sem perder hover. */
#navbarNav .nav-rich-listbox-v99,
#navbarNav .store-listbox-v97 {
    top: calc(100% + 5px) !important;
}

/* Notícias: somente as cinco notícias listadas, sem cabeçalho/rodapé extra. */
#navbarNav .nav-news-v103 .nav-rich-listbox-v99 {
    width: min(410px, calc(100vw - 24px)) !important;
    padding: 5px !important;
}

#navbarNav .nav-news-v103 .nav-rich-scroll-v99 {
    max-height: 315px !important;
    border-radius: 12px !important;
    overflow-y: auto !important;
}

#navbarNav .nav-news-v103 .nav-rich-item-v99:first-child {
    border-radius: 10px 10px 0 0 !important;
}

#navbarNav .nav-news-v103 .nav-rich-item-v99:last-child {
    border-bottom: 0 !important;
    border-radius: 0 0 10px 10px !important;
}

#navbarNav .nav-news-v103 .nav-rich-item-v99:only-child {
    border-radius: 10px !important;
}

/* Desktop/notebook: abre SOMENTE passando o mouse ou usando foco de teclado. */
@media (hover: hover) and (pointer: fine) {
    #navbarNav .nav-rich-listbox-v99 {
        position: absolute !important;
        display: block !important;
        top: calc(100% + 5px) !important;
        left: 50% !important;
        width: min(390px, calc(100vw - 24px)) !important;
        max-width: none !important;
        margin: 0 !important;
        transform: translate(-50%, -5px) scale(.985) !important;
        transform-origin: top center !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    #navbarNav .nav-rich-v99:hover .nav-rich-listbox-v99,
    #navbarNav .nav-rich-v99:focus-within .nav-rich-listbox-v99 {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: translate(-50%, 0) scale(1) !important;
    }

    #navbarNav .store-listbox-v97 {
        position: absolute !important;
        display: block !important;
        top: calc(100% + 5px) !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    #navbarNav .store-nav-v97:hover .store-listbox-v97,
    #navbarNav .store-nav-v97:focus-within .store-listbox-v97 {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }

    /* A lista inteira pertence à área de hover; mover o mouse sobre os itens não fecha. */
    #navbarNav .nav-rich-listbox-v99:hover,
    #navbarNav .store-listbox-v97:hover {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }
}

/* Touch/mobile: sem seta; primeiro toque no próprio botão abre a lista. */
@media (hover: none), (pointer: coarse) {
    #navbarNav .nav-rich-main-v99,
    #navbarNav .store-nav-main-v97 {
        width: 100% !important;
        border-radius: 10px !important;
    }

    #navbarNav .nav-rich-v99.is-open-v99 .nav-rich-listbox-v99,
    #navbarNav .store-nav-v97.is-open-v97 .store-listbox-v97 {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
    }
}

/* =========================================================
   V104 - LOJA PREMIUM / CARDS LIMPOS / CHUVA DE DIAMANTES
   ========================================================= */
.store-page-v100,
.store-package-card-v104,
.store-package-card-v104 * {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: geometricPrecision;
}

.store-package-grid-v98 {
    align-items: stretch !important;
}

.store-package-card-v104 {
    isolation: isolate;
    gap: 12px !important;
    min-width: 0;
    padding: 15px 15px 16px !important;
    border-radius: 24px !important;
    border: 1px solid rgba(70, 164, 255, .30) !important;
    background:
        radial-gradient(circle at 50% 16%, rgba(38, 139, 255, .18), transparent 31%),
        linear-gradient(180deg, #061329 0%, #07101f 53%, #130b08 100%) !important;
    box-shadow:
        0 18px 40px rgba(0,0,0,.38),
        inset 0 1px 0 rgba(255,255,255,.07),
        inset 0 0 34px rgba(22,117,228,.05) !important;
}

.store-package-card-v104::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    border-radius: inherit;
    background: linear-gradient(135deg, rgba(255,178,66,.10), transparent 28%, transparent 72%, rgba(32,143,255,.08));
}

.store-package-card-v104::after {
    z-index: 0 !important;
    opacity: .55;
}

.store-package-card-v104 > :not(.store-diamond-snow-v104) {
    position: relative;
    z-index: 2;
}

.store-package-card-v104.is-premium-v98 {
    border-color: rgba(255,177,62,.44) !important;
    background:
        radial-gradient(circle at 50% 14%, rgba(255,159,40,.20), transparent 33%),
        radial-gradient(circle at 86% 56%, rgba(34,129,255,.10), transparent 30%),
        linear-gradient(180deg, #0a1730 0%, #10101b 48%, #211006 100%) !important;
}

.store-package-card-v104.is-ultra-v99 {
    border-color: rgba(255,204,93,.72) !important;
    box-shadow: 0 18px 48px rgba(0,0,0,.44), 0 0 30px rgba(255,143,32,.15), 0 0 0 1px rgba(42,143,255,.18) !important;
}

.store-package-card-v104:hover,
.store-package-card-v104:focus-within {
    transform: translateY(-5px) !important;
    border-color: rgba(255,190,86,.62) !important;
}

.store-package-badges-v104 {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    min-height: 26px;
}
.store-package-badges-v104:empty { display:none; }
.store-package-badges-v104 span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 26px;
    padding: 0 9px;
    border: 1px solid rgba(255,184,76,.28);
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(64,35,13,.92), rgba(14,20,35,.94));
    color: #ffe7ae;
    font: 800 9.5px/1.1 "Inter", Arial, sans-serif;
    letter-spacing: .045em;
    white-space: nowrap;
}
.store-package-badges-v104 i { color:#ffbd59; }

.store-package-art-v104 {
    display:flex;
    align-items:center;
    justify-content:center;
    height: 190px;
    margin: 0 -4px;
    overflow: hidden;
    border-radius: 20px;
    background:
        radial-gradient(circle at 50% 56%, rgba(14,118,255,.24), transparent 44%),
        radial-gradient(circle at 50% 76%, rgba(255,151,38,.10), transparent 45%);
}
.store-package-art-v104 img {
    display:block;
    width: min(94%, 260px);
    height: 184px;
    object-fit: contain;
    object-position: center;
    filter: drop-shadow(0 15px 18px rgba(0,0,0,.38)) drop-shadow(0 0 16px rgba(33,141,255,.18));
    transform: translateZ(0);
}
.store-package-card-v104.is-premium-v98 .store-package-art-v104 img {
    filter: drop-shadow(0 15px 18px rgba(0,0,0,.42)) drop-shadow(0 0 18px rgba(255,159,40,.20));
}

.store-package-title-v104 {
    text-align: center;
    min-width: 0;
}
.store-package-title-v104 span {
    display:block;
    margin-bottom: 5px;
    color:#8bcaff;
    font:800 10px/1.2 "Inter", Arial, sans-serif;
    letter-spacing:.13em;
    text-transform:uppercase;
}
.store-package-title-v104 h4 {
    margin:0;
    color:#fff2d0;
    font:900 clamp(20px, 1.7vw, 27px)/1.1 "Cinzel", Georgia, serif;
    letter-spacing:.01em;
    overflow-wrap:anywhere;
    text-shadow:0 2px 0 rgba(0,0,0,.55), 0 0 16px rgba(255,160,55,.08);
}

.store-package-total-v104 {
    display:grid;
    place-items:center;
    min-height: 92px;
    padding: 11px 10px;
    border:1px solid rgba(48,154,255,.22);
    border-radius:16px;
    background:linear-gradient(180deg,rgba(10,41,83,.84),rgba(6,18,37,.94));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.store-package-total-v104 small {
    color:#bcd8f3;
    font:800 10px/1 "Inter", Arial, sans-serif;
    letter-spacing:.11em;
    text-transform:uppercase;
}
.store-package-total-v104 strong {
    margin:5px 0 3px;
    color:#ffffff;
    font:900 clamp(27px,2vw,34px)/1 "Inter", Arial, sans-serif;
    letter-spacing:-.025em;
    font-variant-numeric:tabular-nums;
    text-shadow:0 0 15px rgba(59,164,255,.18);
}
.store-package-total-v104 span {
    color:#63c0ff;
    font:800 10px/1 "Inter", Arial, sans-serif;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.store-package-composition-v104 {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
}
.store-package-composition-v104 > div {
    display:grid;
    gap:5px;
    min-width:0;
    padding:10px 11px;
    border-radius:13px;
    border:1px solid rgba(255,255,255,.07);
    background:rgba(6,13,27,.72);
}
.store-package-composition-v104 span {
    color:#a9bed5;
    font:800 9px/1 "Inter", Arial, sans-serif;
    text-transform:uppercase;
    letter-spacing:.09em;
}
.store-package-composition-v104 b {
    min-width:0;
    color:#f7fbff;
    font:900 15px/1.1 "Inter", Arial, sans-serif;
    font-variant-numeric:tabular-nums;
    overflow-wrap:anywhere;
}
.store-package-composition-v104 .has-bonus-v104 {
    border-color:rgba(255,174,58,.23);
    background:linear-gradient(180deg,rgba(72,32,7,.74),rgba(18,15,18,.80));
}
.store-package-composition-v104 .has-bonus-v104 b { color:#ffc965; }

.store-stock-counter-v104 {
    margin-top:0 !important;
    padding: 9px 10px !important;
    border-radius: 13px !important;
    background:rgba(5,12,24,.66) !important;
}
.store-stock-counter-v104 .store-stock-head-v99 {
    font-size:10px !important;
    color:#c8d9ea !important;
}

.store-package-footer-v104 {
    display:grid;
    grid-template-columns:auto minmax(150px,1fr);
    gap:10px;
    align-items:center;
    margin-top:auto;
}
.store-package-price-v104 {
    display:grid;
    gap:4px;
    min-width: 92px;
}
.store-package-price-v104 small {
    color:#b9a57c;
    font:800 9px/1 "Inter", Arial, sans-serif;
    letter-spacing:.1em;
    text-transform:uppercase;
}
.store-package-price-v104 strong {
    color:#ffd278;
    font:900 22px/1 "Inter", Arial, sans-serif;
    white-space:nowrap;
    font-variant-numeric:tabular-nums;
}
.store-package-buy-v104 {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:48px;
    padding:0 14px;
    border:1px solid rgba(255,203,116,.46);
    border-radius:13px;
    background:linear-gradient(180deg,#ffb13d 0%,#e36f16 53%,#9c3a0c 100%);
    color:#fff9ee !important;
    font:900 11px/1.1 "Inter", Arial, sans-serif;
    letter-spacing:.035em;
    text-align:center;
    text-decoration:none !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 9px 22px rgba(0,0,0,.24);
}
.store-package-buy-v104:hover,
.store-package-buy-v104:focus-visible {
    color:#fff !important;
    transform:translateY(-1px);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.32),0 12px 24px rgba(0,0,0,.28),0 0 17px rgba(255,147,33,.16);
}
.store-package-buy-v104.is-disabled-v104 {
    opacity:.58;
    cursor:not-allowed;
    background:linear-gradient(180deg,#4c4946,#282524);
}

.store-diamond-snow-v104 {
    position:absolute;
    inset:0;
    z-index:1;
    overflow:hidden;
    pointer-events:none;
    border-radius:inherit;
}
.store-diamond-flake-v104 {
    position:absolute;
    top:-26px;
    left:var(--x);
    width:var(--diamond-size);
    height:var(--diamond-size);
    opacity:.84;
    border:1px solid rgba(211,244,255,.72);
    background:linear-gradient(135deg,#e7fbff 0%,#5fd8ff 28%,#167cff 55%,#7de8ff 76%,#ffffff 100%);
    box-shadow:0 0 8px rgba(31,156,255,.78),inset 0 0 4px rgba(255,255,255,.85);
    clip-path:polygon(50% 0,100% 42%,50% 100%,0 42%);
    animation:alastar-diamond-fall-v104 var(--fall-duration) linear infinite;
    animation-delay:var(--fall-delay);
    will-change:transform;
}
@keyframes alastar-diamond-fall-v104 {
    0% { transform:translate3d(0,-30px,0) rotate(0deg); opacity:0; }
    8% { opacity:.88; }
    84% { opacity:.82; }
    100% { transform:translate3d(18px,760px,0) rotate(260deg); opacity:0; }
}

@media (max-width: 1199.98px) {
    .store-package-art-v104 { height:176px; }
    .store-package-art-v104 img { height:170px; }
    .store-package-footer-v104 { grid-template-columns:1fr; }
    .store-package-price-v104 { text-align:center; }
}
@media (max-width: 767.98px) {
    .store-package-card-v104 { padding:14px !important; }
    .store-package-art-v104 { height:184px; }
    .store-package-art-v104 img { height:180px; }
    .store-package-title-v104 h4 { font-size:23px; }
    .store-package-total-v104 strong { font-size:31px; }
    .store-package-composition-v104 b { font-size:14px; }
    .store-package-buy-v104 { min-height:50px; font-size:12px; }
}
@media (prefers-reduced-motion: reduce) {
    /* A chuva solicitada permanece contínua, porém mais lenta e suave. */
    .store-diamond-flake-v104 { animation-duration:18s !important; }
}


/* =========================================================
   V105 - LOJA FULL HD / TIPOGRAFIA ROBUSTA / ARTES 1254PX
   Correção direta para os cards pequenos/embaçados do V104.
   ========================================================= */
.store-page-v100,
.store-page-v100 * {
    -webkit-font-smoothing: auto !important;
    -moz-osx-font-smoothing: auto !important;
    text-rendering: optimizeLegibility !important;
}

/* A grade decide o tamanho pelo viewport, nunca esmaga quatro cards em telas estreitas. */
.store-package-grid-v98 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 26px !important;
    width: min(100%, 1720px) !important;
    max-width: 1720px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.store-package-card-v104 {
    gap: 16px !important;
    min-width: 0 !important;
    min-height: 670px !important;
    padding: 24px 24px 25px !important;
    border-width: 2px !important;
    border-radius: 25px !important;
    transform: none !important;
    backface-visibility: visible !important;
    filter: none !important;
}
.store-package-card-v104:hover,
.store-package-card-v104:focus-within {
    transform: none !important;
    box-shadow: 0 22px 52px rgba(0,0,0,.45), 0 0 0 1px rgba(75,163,255,.16), 0 0 26px rgba(255,158,42,.12) !important;
}
.store-package-card-v104 > :not(.store-diamond-snow-v104) {
    transform: none !important;
    filter: none;
}

.store-package-badges-v104 {
    gap: 8px !important;
    min-height: 32px !important;
}
.store-package-badges-v104 span {
    min-height: 31px !important;
    padding: 0 12px !important;
    font: 900 12px/1.05 "Inter", Arial, sans-serif !important;
    letter-spacing: .04em !important;
}

.store-package-art-v104 {
    height: 270px !important;
    margin: 0 !important;
    border-radius: 20px !important;
    overflow: visible !important;
}
.store-package-art-v104 img,
.store-package-card-v104.is-premium-v98 .store-package-art-v104 img {
    width: min(100%, 330px) !important;
    height: 265px !important;
    max-width: 330px !important;
    max-height: 265px !important;
    object-fit: contain !important;
    object-position: center !important;
    image-rendering: auto !important;
    transform: none !important;
    backface-visibility: visible !important;
}

.store-package-title-v104 span {
    margin-bottom: 7px !important;
    font: 900 12.5px/1.15 "Inter", Arial, sans-serif !important;
    letter-spacing: .085em !important;
}
.store-package-title-v104 h4 {
    font: 900 clamp(25px, 1.55vw, 31px)/1.08 "Cinzel", Georgia, serif !important;
    letter-spacing: .005em !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    text-shadow: 0 2px 0 rgba(0,0,0,.65) !important;
}

.store-package-total-v104 {
    min-height: 118px !important;
    padding: 16px 14px !important;
    border-width: 2px !important;
    border-radius: 17px !important;
}
.store-package-total-v104 small,
.store-package-total-v104 span {
    font: 900 12px/1.05 "Inter", Arial, sans-serif !important;
    letter-spacing: .075em !important;
}
.store-package-total-v104 strong {
    margin: 8px 0 6px !important;
    font: 900 clamp(36px, 2vw, 44px)/.96 "Inter", Arial, sans-serif !important;
    letter-spacing: -.018em !important;
    text-shadow: 0 1px 0 #000, 0 0 18px rgba(66,170,255,.16) !important;
}

.store-package-composition-v104 { gap: 11px !important; }
.store-package-composition-v104 > div {
    min-height: 72px !important;
    gap: 8px !important;
    padding: 13px 14px !important;
    border-width: 2px !important;
    border-radius: 14px !important;
}
.store-package-composition-v104 span {
    font: 900 11.5px/1 "Inter", Arial, sans-serif !important;
    letter-spacing: .065em !important;
}
.store-package-composition-v104 b {
    font: 900 19px/1.05 "Inter", Arial, sans-serif !important;
    overflow-wrap: normal !important;
}

.store-stock-counter-v104 {
    padding: 12px 13px !important;
    border-radius: 14px !important;
}
.store-stock-counter-v104 .store-stock-head-v99,
.store-stock-counter-v104 .store-stock-head-v99 span,
.store-stock-counter-v104 .store-stock-head-v99 strong {
    font-size: 12.5px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
}
.store-stock-counter-v104 .store-stock-track-v99 { height: 8px !important; margin-top: 9px !important; }

.store-package-footer-v104 {
    grid-template-columns: minmax(120px, auto) minmax(190px, 1fr) !important;
    gap: 14px !important;
}
.store-package-price-v104 { min-width: 118px !important; gap: 6px !important; }
.store-package-price-v104 small {
    font: 900 11.5px/1 "Inter", Arial, sans-serif !important;
    letter-spacing: .07em !important;
}
.store-package-price-v104 strong {
    font: 900 27px/1 "Inter", Arial, sans-serif !important;
    text-shadow: 0 1px 0 #000 !important;
}
.store-package-buy-v104 {
    min-height: 57px !important;
    padding: 0 18px !important;
    border-width: 2px !important;
    border-radius: 14px !important;
    font: 900 14px/1.12 "Inter", Arial, sans-serif !important;
    letter-spacing: .02em !important;
    transform: none !important;
}
.store-package-buy-v104:hover,
.store-package-buy-v104:focus-visible { transform: none !important; }

/* Chuva segue contínua. Partículas maiores para não virarem quadradinhos minúsculos. */
.store-diamond-flake-v104 {
    min-width: 9px !important;
    min-height: 9px !important;
    border-width: 1px !important;
}

.store-section-block-v98 { padding: 26px 26px 30px !important; }
.store-section-head-v98 p,
.store-page-v100 .store-catalog-head-v98 p { font-size: 15px !important; line-height: 1.6 !important; }

@media (min-width: 720px) {
    .store-package-grid-v98 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (min-width: 1280px) {
    .store-package-grid-v98 { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (min-width: 1750px) {
    .store-package-grid-v98 { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
}
@media (max-width: 719.98px) {
    .store-package-card-v104 { min-height: 0 !important; padding: 20px !important; }
    .store-package-art-v104 { height: 235px !important; }
    .store-package-art-v104 img { height: 230px !important; max-height: 230px !important; }
    .store-package-footer-v104 { grid-template-columns: 1fr !important; }
    .store-package-price-v104 { text-align: center !important; }
    .store-package-title-v104 h4 { font-size: 26px !important; }
}

/* ========================================================================== */
/* V106 - HOME FULL HD / TIPOGRAFIA ROBUSTA / TOP 10 COMPLETOS                */
/* ========================================================================== */

:root {
    --v106-text: #f7f2ea;
    --v106-muted: #c8d5e6;
    --v106-gold: #ffc967;
    --v106-blue: #57c8ff;
    --v106-panel: rgba(7, 15, 29, .97);
}

/* Renderização nativa e nítida: sem escalas que rasterizam texto. */
.home-v14,
.rankings-page-v106,
.home-v14 *,
.rankings-page-v106 * {
    text-rendering: geometricPrecision;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.home-v14 img,
.rankings-page-v106 img {
    image-rendering: auto !important;
    -ms-interpolation-mode: bicubic;
}

/* HOME: usa a tela Full HD de verdade e reduz margens desperdiçadas. */
.home-v14 .portal-stage-v14 {
    padding-left: clamp(14px, 1.25vw, 26px) !important;
    padding-right: clamp(14px, 1.25vw, 26px) !important;
}

.home-v14 .portal-frame-v14 {
    width: min(calc(100% - 4px), 1900px) !important;
    max-width: 1900px !important;
    padding-left: clamp(18px, 1.65vw, 34px) !important;
    padding-right: clamp(18px, 1.65vw, 34px) !important;
}

@media (min-width: 1600px) {
    .home-v14 .portal-grid-v14 {
        grid-template-columns: minmax(330px, 350px) minmax(760px, 1fr) minmax(380px, 410px) !important;
        gap: 26px !important;
    }
}

/* Todos os painéis da Home ganham mais presença e leitura. */
.home-v14 .portal-box-v14 {
    border-width: 1px !important;
    border-color: rgba(255, 184, 91, .24) !important;
    box-shadow: 0 18px 42px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.045) !important;
}

.home-v14 .portal-box-title-v14 {
    min-height: 62px !important;
    padding: 13px 18px !important;
    gap: 11px !important;
    font-size: 17px !important;
    line-height: 1.2 !important;
    font-weight: 850 !important;
    letter-spacing: .035em !important;
    color: #ffe4ae !important;
}

.home-v14 .portal-box-title-v14 > i {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    font-size: 16px !important;
    transform: none !important;
}

.home-v14 .portal-empty-v14 {
    min-height: 90px !important;
    padding: 22px !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
    color: var(--v106-muted) !important;
}

/* Botões: texto grande, altura confortável e sem scale/blur. */
.home-v14 .al-btn,
.rankings-page-v106 .al-btn,
.home-v14 button:not(.navbar-toggler):not(.portal-chat-icon-btn-v53),
.home-v14 .portal-quick-nav-v14 a {
    min-height: 50px !important;
    font-size: 15px !important;
    line-height: 1.15 !important;
    font-weight: 800 !important;
    letter-spacing: .02em !important;
    transform: none;
}

.home-v14 .al-btn:hover,
.home-v14 .al-btn:focus-visible,
.rankings-page-v106 .al-btn:hover,
.rankings-page-v106 .al-btn:focus-visible {
    transform: translateY(-1px) !important;
}

.home-v14 .hero-subtitle {
    font-size: clamp(1.55rem, 2vw, 2.35rem) !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
    letter-spacing: .08em !important;
    text-shadow: 0 2px 10px rgba(0,0,0,.86), 0 0 18px rgba(255,167,61,.18) !important;
}

.home-v14 .hero-btns .al-btn {
    min-width: 190px !important;
    min-height: 54px !important;
    padding: 13px 24px !important;
    font-size: 16px !important;
}

/* Servidor / Rates / Acesso rápido. */
.home-v14 .server-status-main-v14 {
    min-height: 88px !important;
    padding: 18px !important;
}
.home-v14 .server-status-main-v14 small,
.home-v14 .rate-feature-v14 small {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #b9cee7 !important;
}
.home-v14 .server-status-main-v14 strong {
    font-size: 24px !important;
    line-height: 1.1 !important;
}
.home-v14 .server-stat-row-v14 {
    min-height: 54px !important;
    padding: 12px 14px !important;
}
.home-v14 .server-stat-row-v14 span,
.home-v14 .composition-row-v14 span {
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 650 !important;
}
.home-v14 .server-stat-row-v14 strong,
.home-v14 .composition-row-v14 b {
    font-size: 17px !important;
    line-height: 1.2 !important;
    font-weight: 850 !important;
}
.home-v14 .rate-feature-v14 {
    min-height: 76px !important;
    padding: 14px !important;
}
.home-v14 .rate-feature-v14 strong {
    font-size: 23px !important;
    line-height: 1.1 !important;
}
.home-v14 .composition-title-v14 {
    font-size: 14px !important;
    font-weight: 850 !important;
}
.home-v14 .composition-row-v14 {
    min-height: 44px !important;
    padding: 9px 11px !important;
}
.home-v14 .portal-quick-nav-v14 a {
    min-height: 56px !important;
    padding: 12px 14px !important;
    gap: 12px !important;
}
.home-v14 .portal-quick-nav-v14 a span {
    font-size: 15px !important;
    font-weight: 800 !important;
}

/* Notícias: nada abaixo de uma escala confortável. */
.home-v14 .featured-news-copy-v14 time,
.home-v14 .news-list-copy-v14 time {
    font-size: 13px !important;
    font-weight: 750 !important;
}
.home-v14 .featured-news-copy-v14 h2 {
    font-size: clamp(2rem, 2.25vw, 2.7rem) !important;
    line-height: 1.15 !important;
    font-weight: 850 !important;
}
.home-v14 .featured-news-copy-v14 p {
    font-size: 16px !important;
    line-height: 1.72 !important;
    color: #e2e7ee !important;
}
.home-v14 .news-list-row-v14 {
    min-height: 82px !important;
    padding: 13px 14px !important;
}
.home-v14 .news-list-copy-v14 strong {
    font-size: 15px !important;
    line-height: 1.35 !important;
    font-weight: 800 !important;
}
.home-v14 .news-list-row-v14 > a {
    font-size: 14px !important;
    font-weight: 800 !important;
}

/* Ranking da HOME: cards, nomes, valores e CTA próprios para cada Top 10. */
.home-v14 .portal-player-ranking-grid-v14 {
    gap: 20px !important;
}
.home-v14 .player-rank-card-v14 > header {
    min-height: 64px !important;
    padding: 13px 15px !important;
    font-size: 16px !important;
    font-weight: 850 !important;
}
.home-v14 .player-rank-row-v14 {
    min-height: 108px !important;
    grid-template-columns: 48px 72px minmax(0,1fr) minmax(70px,auto) !important;
    padding: 15px 13px !important;
    gap: 12px !important;
}
.home-v14 .player-rank-avatar-v14 {
    width: 68px !important;
    height: 68px !important;
    transform: none !important;
}
.home-v14 .player-rank-avatar-v14 img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    transform: none !important;
}
.home-v14 .player-rank-copy-v14 strong {
    font-size: 16px !important;
    line-height: 1.25 !important;
    font-weight: 850 !important;
}
.home-v14 .player-rank-copy-v14 span {
    font-size: 13px !important;
    line-height: 1.3 !important;
    font-weight: 650 !important;
}
.home-v14 .player-rank-row-v14 > b {
    font-size: 18px !important;
    line-height: 1.1 !important;
    font-weight: 900 !important;
}
.home-v14 .home-medal {
    transform: none !important;
}

.player-rank-full-link-v106 {
    display: grid !important;
    grid-template-columns: 22px minmax(0,1fr) 18px !important;
    align-items: center !important;
    gap: 9px !important;
    min-height: 48px !important;
    margin: 10px 12px 13px !important;
    padding: 10px 13px !important;
    border: 1px solid rgba(76, 176, 255, .30) !important;
    border-radius: 12px !important;
    color: #eaf6ff !important;
    background: linear-gradient(180deg, rgba(18,69,125,.75), rgba(7,28,58,.94)) !important;
    text-decoration: none !important;
    font: 800 14px/1.2 'Inter', sans-serif !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 8px 18px rgba(0,0,0,.18) !important;
}
.player-rank-full-link-v106:hover {
    color: #fff6dd !important;
    border-color: rgba(255,183,84,.48) !important;
    background: linear-gradient(180deg, rgba(122,62,15,.82), rgba(55,25,8,.96)) !important;
}
.player-rank-full-link-v106 > i:last-child { justify-self: end; }

.home-ranking-actions-v106 {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 10px !important;
    padding: 4px 18px 22px !important;
}
.home-ranking-actions-v106 .al-btn {
    min-width: 150px !important;
}

/* Conta e Ranking de Cidades. */
.home-v14 .portal-login-body-v14 p {
    font-size: 15px !important;
    line-height: 1.55 !important;
}
.home-v14 .city-ranking-entry-v14 {
    min-height: 176px !important;
}
.home-v14 .city-ranking-city-v14 strong {
    font-size: 20px !important;
    line-height: 1.2 !important;
    font-weight: 900 !important;
}
.home-v14 .city-ranking-city-v14 small,
.home-v14 .city-ranking-guild-v14 small {
    font-size: 13px !important;
    line-height: 1.3 !important;
    font-weight: 650 !important;
}
.home-v14 .city-ranking-guild-v14 strong {
    font-size: 16px !important;
    line-height: 1.25 !important;
    font-weight: 850 !important;
}
.home-v14 .city-guild-mark-v14 img {
    image-rendering: auto !important;
    transform: none !important;
}

/* Chat/Ticket dentro da Home: aumenta o essencial sem destruir a grade. */
.home-v14 #alastar-site-chat .portal-community-tab-v31 > span,
.home-v14 #alastar-site-chat .portal-chat-room-name-v53,
.home-v14 #alastar-site-chat .portal-ticket-item-v86 strong {
    font-size: 14px !important;
    font-weight: 800 !important;
}
.home-v14 #alastar-site-chat .portal-community-tab-v31 > small,
.home-v14 #alastar-site-chat .portal-chat-room-meta-v53,
.home-v14 #alastar-site-chat .portal-chat-member-meta-v53,
.home-v14 #alastar-site-chat .portal-ticket-item-v86 small {
    font-size: 12px !important;
    line-height: 1.35 !important;
}
.home-v14 #alastar-site-chat .portal-chat-message-v53,
.home-v14 #alastar-site-chat .portal-chat-message-v53 p,
.home-v14 #alastar-site-chat .portal-ticket-message-v86 p {
    font-size: 14px !important;
    line-height: 1.5 !important;
}
.home-v14 #alastar-site-chat .portal-chat-input-v53,
.home-v14 #alastar-site-chat textarea,
.home-v14 #alastar-site-chat input,
.home-v14 #alastar-site-chat select {
    font-size: 15px !important;
}

/* ========================================================================= */
/* RANKINGS V106 - TOP 10 legível em tela cheia, sem 3 tabelas esmagadas.    */
/* ========================================================================= */
.rankings-page-v106 {
    min-height: 100vh;
    padding-top: 86px;
    color: var(--v106-text);
    background:
        radial-gradient(circle at 50% 0, rgba(34,113,203,.15), transparent 31%),
        radial-gradient(circle at 15% 32%, rgba(255,120,24,.09), transparent 24%),
        linear-gradient(180deg, rgba(5,9,17,.92), rgba(5,8,14,.985));
}
.ranking-shell-v106 {
    width: min(calc(100% - 34px), 1760px) !important;
    max-width: 1760px !important;
    margin-inline: auto !important;
}
.ranking-hero-v106 {
    position: relative;
    overflow: hidden;
    padding: 64px 0 42px;
    text-align: center;
    border-bottom: 1px solid rgba(255,184,83,.18);
    background:
        linear-gradient(180deg, rgba(8,17,34,.84), rgba(7,10,17,.94)),
        url('../images/alastar-armia-bg.webp') center 36% / cover no-repeat;
}
.ranking-hero-v106::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(90deg, rgba(6,9,16,.68), transparent 32%, transparent 68%, rgba(6,9,16,.68));
}
.ranking-hero-v106 .ranking-shell-v106 { position: relative; z-index: 1; }
.ranking-hero-icon-v106 {
    display: inline-grid;
    place-items: center;
    width: 74px;
    height: 74px;
    margin-bottom: 14px;
    border: 1px solid rgba(255,192,93,.48);
    border-radius: 22px;
    color: #ffe4a6;
    font-size: 31px;
    background: linear-gradient(145deg, rgba(137,61,13,.92), rgba(12,41,84,.96));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 12px 28px rgba(0,0,0,.34), 0 0 28px rgba(68,164,255,.12);
}
.ranking-eyebrow-v106 {
    margin: 0 0 8px;
    color: #87cfff;
    font: 850 13px/1.2 'Inter',sans-serif;
    letter-spacing: .16em;
}
.ranking-hero-v106 h1 {
    margin: 0;
    color: #ffe0a1;
    font-size: clamp(2.5rem, 4.3vw, 4.35rem);
    line-height: 1.05;
    font-weight: 900;
    text-shadow: 0 3px 14px rgba(0,0,0,.86), 0 0 22px rgba(255,148,47,.15);
}
.ranking-hero-copy-v106 {
    max-width: 940px;
    margin: 14px auto 0;
    color: #d7e2ef;
    font-size: 17px;
    line-height: 1.6;
    font-weight: 600;
}
.ranking-tabs-v106 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-top: 28px;
}
.ranking-tabs-v106 a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 50px;
    padding: 11px 18px;
    border: 1px solid rgba(73,169,255,.30);
    border-radius: 13px;
    color: #eaf5ff;
    background: linear-gradient(180deg, rgba(14,52,96,.88), rgba(6,25,51,.96));
    text-decoration: none;
    font: 800 14px/1.2 'Inter',sans-serif;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 8px 20px rgba(0,0,0,.22);
}
.ranking-tabs-v106 a:hover,
.ranking-tabs-v106 a.is-active-v106 {
    color: #fff4d5;
    border-color: rgba(255,188,83,.50);
    background: linear-gradient(180deg, rgba(142,69,13,.90), rgba(62,27,7,.98));
}
.ranking-content-v106 { padding: 42px 0 70px; }
.ranking-stack-v106 { display: grid; gap: 34px; }
.ranking-board-v106 {
    overflow: hidden;
    border: 1px solid rgba(255,182,83,.24);
    border-radius: 22px;
    background: linear-gradient(180deg, rgba(10,24,46,.985), rgba(6,12,23,.995));
    box-shadow: 0 24px 54px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.04);
}
.ranking-board-header-v106 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    min-height: 122px;
    padding: 22px 28px;
    border-bottom: 1px solid rgba(86,170,255,.18);
    background: linear-gradient(90deg, rgba(14,53,103,.55), rgba(87,39,9,.30), rgba(10,33,67,.48));
}
.ranking-board-title-v106 {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 18px;
}
.ranking-board-emblem-v106 {
    display: grid;
    place-items: center;
    flex: 0 0 66px;
    width: 66px;
    height: 66px;
    border: 1px solid rgba(255,191,92,.42);
    border-radius: 18px;
    color: #ffe0a1;
    font-size: 26px;
    background: linear-gradient(145deg, #74320d, #0c3972);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 9px 20px rgba(0,0,0,.30);
}
.ranking-board-title-v106 > div > span {
    display: block;
    margin-bottom: 3px;
    color: #77c8ff;
    font: 800 11px/1.2 'Inter',sans-serif;
    letter-spacing: .13em;
}
.ranking-board-title-v106 h2 {
    margin: 0;
    color: #ffe3aa;
    font-size: clamp(1.7rem, 2.1vw, 2.35rem);
    line-height: 1.1;
    font-weight: 900;
}
.ranking-board-title-v106 p {
    margin: 6px 0 0;
    color: #c6d6e8;
    font-size: 14px;
    line-height: 1.45;
}
.ranking-focus-button-v106 {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    flex: 0 0 auto;
    min-height: 48px;
    padding: 11px 16px;
    border: 1px solid rgba(255,184,82,.38);
    border-radius: 12px;
    color: #fff1d5;
    background: linear-gradient(180deg, #a94d11, #572207);
    text-decoration: none;
    font: 850 13px/1.15 'Inter',sans-serif;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 8px 18px rgba(0,0,0,.24);
}
.ranking-table-v106 { padding: 0 18px 20px; }
.ranking-table-head-v106,
.ranking-row-v106 {
    display: grid;
    grid-template-columns: 78px minmax(330px, 1.6fr) minmax(220px, .8fr) minmax(140px, .48fr);
    align-items: center;
    gap: 18px;
}
.ranking-table-head-v106 {
    min-height: 58px;
    padding: 10px 18px;
    color: #89bce9;
    font: 800 12px/1.2 'Inter',sans-serif;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.ranking-table-head-v106 span:last-child { text-align: right; }
.ranking-row-v106 {
    min-height: 102px;
    margin-bottom: 9px;
    padding: 12px 18px;
    border: 1px solid rgba(79,150,225,.14);
    border-radius: 16px;
    background: linear-gradient(90deg, rgba(8,22,42,.93), rgba(9,17,31,.97));
    box-shadow: inset 0 1px 0 rgba(255,255,255,.025);
}
.ranking-row-v106:hover {
    border-color: rgba(255,181,79,.28);
    background: linear-gradient(90deg, rgba(16,47,87,.95), rgba(43,23,11,.92));
}
.ranking-row-v106.is-pos-1-v106 { border-color: rgba(255,201,72,.44); background: linear-gradient(90deg, rgba(93,57,6,.38), rgba(11,27,49,.96)); }
.ranking-row-v106.is-pos-2-v106 { border-color: rgba(202,222,242,.30); }
.ranking-row-v106.is-pos-3-v106 { border-color: rgba(226,139,74,.30); }
.ranking-position-v106 {
    position: relative;
    display: grid;
    place-items: center;
    width: 54px;
    height: 54px;
    border: 1px solid rgba(95,177,255,.26);
    border-radius: 16px;
    background: linear-gradient(145deg, rgba(15,59,111,.95), rgba(7,26,51,.98));
}
.ranking-position-v106 i {
    position: absolute;
    top: -8px;
    right: -7px;
    color: #ffd56c;
    font-size: 15px;
    filter: drop-shadow(0 2px 4px rgba(0,0,0,.62));
}
.ranking-position-v106 strong {
    color: #fff0cf;
    font: 900 21px/1 'Inter',sans-serif;
}
.ranking-player-v106 {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 14px;
}
.ranking-avatar-v106 {
    display: grid;
    place-items: center;
    flex: 0 0 72px;
    width: 72px;
    height: 72px;
    overflow: hidden;
    border: 1px solid rgba(255,185,82,.30);
    border-radius: 18px;
    background: #08172d;
    box-shadow: 0 8px 18px rgba(0,0,0,.25), inset 0 1px 0 rgba(255,255,255,.05);
}
.ranking-avatar-v106 img {
    width: 68px !important;
    height: 68px !important;
    object-fit: contain !important;
    transform: none !important;
    filter: none !important;
}
.ranking-player-copy-v106 { min-width: 0; }
.ranking-player-copy-v106 strong {
    display: block;
    overflow: hidden;
    color: #fff1dc;
    font: 900 18px/1.25 'Inter',sans-serif;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.ranking-player-copy-v106 small {
    display: block;
    margin-top: 5px;
    color: #9cc7ee;
    font: 750 13px/1.3 'Inter',sans-serif;
}
.ranking-evolution-v106 {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 11px;
}
.ranking-evolution-v106 img {
    flex: 0 0 48px;
    width: 48px !important;
    height: 48px !important;
    object-fit: contain !important;
    transform: none !important;
    filter: none !important;
}
.ranking-evolution-v106 strong {
    color: #e2ecf8;
    font: 800 15px/1.25 'Inter',sans-serif;
}
.ranking-value-v106 { text-align: right; }
.ranking-value-v106 small {
    display: block;
    margin-bottom: 4px;
    color: #8bb9e4;
    font: 800 11px/1.2 'Inter',sans-serif;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.ranking-value-v106 strong {
    display: block;
    color: #ffd078;
    font: 900 24px/1.1 'Inter',sans-serif;
    font-variant-numeric: tabular-nums;
}
.ranking-empty-v106 {
    display: grid;
    place-items: center;
    min-height: 170px;
    margin: 8px 0 0;
    padding: 28px;
    text-align: center;
    border: 1px dashed rgba(90,164,231,.22);
    border-radius: 16px;
    color: #a9c1dd;
}
.ranking-empty-v106 i { margin-bottom: 8px; color: #61c3ff; font-size: 28px; }
.ranking-empty-v106 strong { color: #edf6ff; font-size: 17px; }
.ranking-empty-v106 span { margin-top: 5px; font-size: 14px; }
.ranking-back-v106 { display: flex; justify-content: center; padding-top: 2px; }
.ranking-back-v106 .al-btn { min-height: 52px !important; padding: 12px 20px !important; font-size: 15px !important; }

/* Ranking no menu passa a ter o mesmo listbox dos outros módulos. */
.ranking-nav-listbox-v106 { min-width: 350px !important; }

/* 1366px: mantém tudo grande, mas organiza a Home sem esmagar colunas. */
@media (max-width: 1500px) and (min-width: 1200px) {
    .home-v14 .portal-grid-v14 {
        grid-template-columns: 285px minmax(0,1fr) 340px !important;
        gap: 20px !important;
    }
    .home-v14 .portal-box-title-v14 { font-size: 15px !important; }
    .home-v14 .player-rank-row-v14 { grid-template-columns: 44px 62px minmax(0,1fr) auto !important; }
    .home-v14 .player-rank-avatar-v14 { width: 58px !important; height: 58px !important; }
}

@media (max-width: 1199.98px) {
    .home-v14 .portal-frame-v14 { width: 100% !important; }
    .home-v14 .portal-grid-v14 { grid-template-columns: 1fr !important; }
    .home-v14 .portal-player-ranking-grid-v14 { grid-template-columns: repeat(3, minmax(0,1fr)) !important; }
    .ranking-board-header-v106 { align-items: flex-start; flex-direction: column; }
    .ranking-focus-button-v106 { align-self: stretch; }
    .ranking-table-head-v106,
    .ranking-row-v106 {
        grid-template-columns: 68px minmax(270px,1.45fr) minmax(180px,.8fr) minmax(120px,.46fr);
        gap: 14px;
    }
}

@media (max-width: 991.98px) {
    .home-v14 .portal-player-ranking-grid-v14 { grid-template-columns: 1fr !important; }
    .home-v14 .player-rank-row-v14 { grid-template-columns: 48px 72px minmax(0,1fr) auto !important; }
    .ranking-shell-v106 { width: min(calc(100% - 22px), 1760px) !important; }
    .ranking-table-v106 { padding-inline: 10px; }
    .ranking-table-head-v106 { display: none; }
    .ranking-row-v106 {
        grid-template-columns: 58px minmax(0,1fr) auto;
        gap: 12px;
        min-height: 116px;
        padding: 14px;
    }
    .ranking-evolution-v106 {
        grid-column: 2 / 4;
        margin-top: -4px;
    }
    .ranking-value-v106 { grid-column: 3; grid-row: 1; }
}

@media (max-width: 767.98px) {
    .home-v14 .portal-box-title-v14 { min-height: 56px !important; font-size: 15px !important; }
    .home-v14 .server-stat-row-v14 span,
    .home-v14 .composition-row-v14 span,
    .home-v14 .featured-news-copy-v14 p { font-size: 15px !important; }
    .home-v14 .news-list-copy-v14 strong,
    .home-v14 .player-rank-copy-v14 strong { font-size: 15px !important; }
    .home-v14 .player-rank-row-v14 {
        grid-template-columns: 42px 58px minmax(0,1fr) auto !important;
        min-height: 94px !important;
        padding: 11px 9px !important;
    }
    .home-v14 .player-rank-avatar-v14 { width: 54px !important; height: 54px !important; }
    .home-ranking-actions-v106 { display: grid !important; grid-template-columns: 1fr !important; }
    .home-ranking-actions-v106 .al-btn { width: 100% !important; }

    .rankings-page-v106 { padding-top: 74px; }
    .ranking-hero-v106 { padding: 46px 0 32px; }
    .ranking-hero-icon-v106 { width: 62px; height: 62px; font-size: 25px; }
    .ranking-hero-v106 h1 { font-size: clamp(2.15rem, 11vw, 3.15rem); }
    .ranking-hero-copy-v106 { font-size: 15px; }
    .ranking-tabs-v106 { display: grid; grid-template-columns: 1fr 1fr; }
    .ranking-tabs-v106 a { min-width: 0; padding-inline: 10px; font-size: 13px; }
    .ranking-board-header-v106 { min-height: 0; padding: 18px 16px; }
    .ranking-board-title-v106 { align-items: flex-start; gap: 12px; }
    .ranking-board-emblem-v106 { flex-basis: 52px; width: 52px; height: 52px; font-size: 21px; }
    .ranking-board-title-v106 h2 { font-size: 1.65rem; }
    .ranking-board-title-v106 p { font-size: 13px; }
    .ranking-row-v106 { grid-template-columns: 48px minmax(0,1fr) auto; padding: 12px 10px; gap: 9px; }
    .ranking-position-v106 { width: 44px; height: 44px; border-radius: 13px; }
    .ranking-position-v106 strong { font-size: 18px; }
    .ranking-avatar-v106 { flex-basis: 56px; width: 56px; height: 56px; border-radius: 15px; }
    .ranking-avatar-v106 img { width: 52px !important; height: 52px !important; }
    .ranking-player-v106 { gap: 9px; }
    .ranking-player-copy-v106 strong { font-size: 15px; }
    .ranking-player-copy-v106 small { font-size: 12px; }
    .ranking-value-v106 strong { font-size: 19px; }
    .ranking-evolution-v106 img { flex-basis: 38px; width: 38px !important; height: 38px !important; }
    .ranking-evolution-v106 strong { font-size: 13px; }
    .ranking-nav-listbox-v106 { min-width: 0 !important; }
}

@media (max-width: 430px) {
    .ranking-tabs-v106 { grid-template-columns: 1fr; }
    .ranking-row-v106 { grid-template-columns: 42px minmax(0,1fr); }
    .ranking-value-v106 { grid-column: 2; grid-row: 2; text-align: left; }
    .ranking-evolution-v106 { grid-column: 2; grid-row: 3; }
    .ranking-player-v106 { grid-column: 2; grid-row: 1; }
}


/* ========================================================================== */
/* V107 - CONSOLIDADO: RANKINGS + HOME FULL HD + LOJA DIAMANTES               */
/* Correções finais da vitrine: assets resilientes, leitura ampla e CTA livre */
/* ========================================================================== */
.store-page-v100 .store-package-art-v104 {
    min-height: 280px !important;
    height: 280px !important;
    padding: 4px 0 !important;
    overflow: visible !important;
}
.store-page-v100 .store-package-art-v104 img,
.store-page-v100 .store-package-card-v104.is-premium-v98 .store-package-art-v104 img {
    display: block !important;
    width: min(100%, 348px) !important;
    height: 272px !important;
    max-width: 348px !important;
    max-height: 272px !important;
    object-fit: contain !important;
    object-position: center !important;
    image-rendering: auto !important;
    filter: drop-shadow(0 18px 22px rgba(0,0,0,.42)) !important;
    transform: none !important;
}
.store-page-v100 .store-package-card-v104 {
    min-height: 740px !important;
}
.store-page-v100 .store-package-footer-v104 {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    align-items: stretch !important;
    margin-top: auto !important;
    padding-top: 15px !important;
    border-top: 1px solid rgba(255,190,92,.12) !important;
}
.store-page-v100 .store-package-price-v104 {
    display: flex !important;
    align-items: baseline !important;
    justify-content: space-between !important;
    gap: 14px !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 4px !important;
    text-align: left !important;
}
.store-page-v100 .store-package-price-v104 small {
    flex: 0 0 auto !important;
    font-size: 12.5px !important;
}
.store-page-v100 .store-package-price-v104 strong {
    flex: 0 0 auto !important;
    font-size: clamp(27px, 1.7vw, 31px) !important;
    line-height: 1.05 !important;
}
.store-page-v100 .store-package-buy-v104 {
    width: 100% !important;
    min-height: 60px !important;
    margin: 0 !important;
    padding: 0 20px !important;
    font-size: 15px !important;
    line-height: 1.15 !important;
    white-space: nowrap !important;
}
.store-page-v100 .store-package-total-v104 span {
    color: #72d1ff !important;
    font-size: 13px !important;
    letter-spacing: .08em !important;
}
.store-page-v100 .store-package-title-v104 h4 {
    font-size: clamp(26px, 1.55vw, 32px) !important;
}
.store-page-v100 .store-section-head-v98 p,
.store-page-v100 .store-catalog-head-v98 p,
.store-page-v100 .store-hero-v100 p {
    font-size: 16px !important;
    line-height: 1.65 !important;
}

/* Home: reforça os mínimos de leitura em todo painel/botão/texto sem aplicar zoom. */
.home-v14 .portal-box-v14,
.home-v14 .portal-card-v14,
.home-v14 .news-card-v14,
.home-v14 .player-rank-row-v14,
.home-v14 .city-rank-row-v14 {
    transform: none !important;
    image-rendering: auto !important;
}
.home-v14 button,
.home-v14 .btn,
.home-v14 .al-btn,
.home-v14 a[class*="btn"] {
    min-height: 48px;
    font-size: max(14px, 0.82rem) !important;
    font-weight: 800 !important;
}
.home-v14 p,
.home-v14 li,
.home-v14 .portal-muted-v14,
.home-v14 [class*="copy"] small,
.home-v14 [class*="row"] small {
    font-size: max(13px, .78rem);
    line-height: 1.45;
}

@media (max-width: 719.98px) {
    .store-page-v100 .store-package-card-v104 { min-height: 0 !important; }
    .store-page-v100 .store-package-art-v104 { min-height: 245px !important; height: 245px !important; }
    .store-page-v100 .store-package-art-v104 img { height: 238px !important; max-height: 238px !important; }
    .store-page-v100 .store-package-price-v104 { flex-wrap: wrap !important; justify-content: center !important; text-align: center !important; }
    .store-page-v100 .store-package-buy-v104 { white-space: normal !important; }
}

/* ========================================================================== */
/* V108 - HOME RESPONSIVA POR CONTAINER / ZOOM ESTAVEL / CHAT + RANKING      */
/* Objetivo: nenhum painel perde alinhamento com zoom, desktop, tablet/mobile. */
/* ========================================================================== */

/* Guardas globais da Home: filhos de grids/flex nunca podem aumentar a coluna. */
.home-v14,
.home-v14 *,
.home-v14 *::before,
.home-v14 *::after {
    box-sizing: border-box;
}
.home-v14 .portal-grid-v14 > *,
.home-v14 .portal-main-v14 > *,
.home-v14 .portal-sidebar-v14 > *,
.home-v14 .portal-box-v14 > *,
.home-v14 .portal-player-ranking-grid-v14 > *,
#alastar-site-chat .portal-chat-workspace-v53 > * {
    min-width: 0 !important;
    max-width: 100%;
}
.home-v14 .portal-box-v14,
.home-v14 .portal-main-v14,
.home-v14 .portal-sidebar-v14,
.home-v14 .portal-player-ranking-v14,
#alastar-site-chat {
    width: 100%;
    max-width: 100%;
}
.home-v14 img,
.home-v14 svg,
.home-v14 video,
.home-v14 canvas {
    max-width: 100%;
}

/* Usa a largura REAL do painel para reagir ao zoom do navegador. */
.home-v14 .portal-player-ranking-v14 {
    container-name: alastar-home-ranking;
    container-type: inline-size;
}
.home-v14 .player-rank-card-v14 {
    container-name: alastar-home-ranking-card;
    container-type: inline-size;
}
#alastar-site-chat.portal-community-v31 {
    container-name: alastar-home-chat;
    container-type: inline-size;
}

/* -------------------------------------------------------------------------- */
/* RANKING DA HOME                                                            */
/* -------------------------------------------------------------------------- */

/* Um card por linha é o estado seguro. Só abre mais colunas quando o próprio
   painel possui largura suficiente. Isso é muito mais estável que media-query
   baseada apenas no viewport durante zoom. */
.home-v14 .portal-player-ranking-grid-v14 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 18px !important;
    align-items: stretch !important;
}
.home-v14 .player-rank-card-v14 {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    align-self: stretch !important;
}

/* A linha nunca deixa o nome receber largura de 1 ou 2 caracteres. */
.home-v14 .player-rank-row-v14 {
    display: grid !important;
    grid-template-columns: 48px 68px minmax(126px, 1fr) minmax(56px, auto) !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 104px !important;
}
.home-v14 .player-rank-copy-v14 {
    min-width: 0 !important;
    width: 100% !important;
    overflow: hidden !important;
}
.home-v14 .player-rank-copy-v14 strong,
.home-v14 .player-rank-copy-v14 span {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
}
.home-v14 .player-rank-copy-v14 strong {
    font-size: clamp(15px, 1.05rem, 17px) !important;
    line-height: 1.25 !important;
}
.home-v14 .player-rank-copy-v14 span {
    margin-top: 4px !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
}
.home-v14 .player-rank-row-v14 > b {
    min-width: 56px !important;
    justify-self: end !important;
    white-space: nowrap !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    font-variant-numeric: tabular-nums !important;
    text-align: right !important;
}
.home-v14 .player-rank-avatar-v14,
.home-v14 .home-medal {
    flex: 0 0 auto !important;
}
.home-v14 .player-rank-full-link-v106,
.home-v14 .player-rank-full-link-v106 span {
    overflow-wrap: normal !important;
    word-break: normal !important;
}

/* 2 colunas apenas quando cabem dois cards realmente legíveis. */
@container alastar-home-ranking (min-width: 760px) {
    .home-v14 .portal-player-ranking-grid-v14 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    .home-v14 .portal-player-ranking-grid-v14 > .player-rank-card-v14:last-child:nth-child(odd) {
        grid-column: 1 / -1 !important;
        width: min(100%, calc(50% - 9px)) !important;
        justify-self: center !important;
    }
}

/* 3 colunas só em painéis realmente largos (ex.: Full HD com área útil ampla). */
@container alastar-home-ranking (min-width: 1160px) {
    .home-v14 .portal-player-ranking-grid-v14 {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
    .home-v14 .portal-player-ranking-grid-v14 > .player-rank-card-v14:last-child:nth-child(odd) {
        grid-column: auto !important;
        width: 100% !important;
        justify-self: stretch !important;
    }
}

/* Se um card individual ficar estreito, prioriza nome + valor e reduz apenas
   elementos ornamentais, nunca o texto para uma coluna de letras. */
@container alastar-home-ranking-card (max-width: 390px) {
    .home-v14 .player-rank-row-v14 {
        grid-template-columns: 42px 58px minmax(110px, 1fr) auto !important;
        gap: 9px !important;
        padding-inline: 10px !important;
    }
    .home-v14 .player-rank-avatar-v14 {
        width: 56px !important;
        height: 56px !important;
    }
    .home-v14 .player-rank-row-v14 > b {
        min-width: 48px !important;
        font-size: 16px !important;
    }
}

@container alastar-home-ranking-card (max-width: 320px) {
    .home-v14 .player-rank-row-v14 {
        grid-template-columns: 40px 54px minmax(0, 1fr) !important;
        grid-template-rows: auto auto !important;
    }
    .home-v14 .player-rank-row-v14 > b {
        grid-column: 3 !important;
        grid-row: 2 !important;
        justify-self: start !important;
        text-align: left !important;
    }
}

/* -------------------------------------------------------------------------- */
/* CHAT DA HOME                                                               */
/* -------------------------------------------------------------------------- */

/* Base segura: duas áreas principais e controles abaixo. A antiga terceira
   coluna não fica espremida ao lado quando o centro da Home é estreito. */
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53 {
    display: grid !important;
    grid-template-columns: minmax(200px, 27%) minmax(0, 1fr) !important;
    grid-template-areas:
        "rooms conversation"
        "controls controls" !important;
    grid-auto-flow: row !important;
    grid-auto-rows: auto !important;
    align-items: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
}
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-sidebar-v53 {
    grid-area: rooms !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    max-height: none !important;
    border-right: 1px solid rgba(68,162,249,.20) !important;
    border-bottom: 0 !important;
}
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-main-v53 {
    grid-area: conversation !important;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    max-height: none !important;
    overflow: hidden !important;
}
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-control-sidebar-v53 {
    grid-area: controls !important;
    grid-column: auto !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    max-height: none !important;
    padding: 10px !important;
    overflow: visible !important;
    border-left: 0 !important;
    border-top: 1px solid rgba(68,162,249,.20) !important;
    align-content: start !important;
}
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-control-card-v53 {
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    max-width: 100% !important;
}

/* Cabeçalho da conversa: permite quebra organizada, nunca sobreposição. */
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-head-v53 {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px 10px !important;
    min-width: 0 !important;
    min-height: 62px !important;
}
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-title-v53 {
    flex: 1 1 230px !important;
    min-width: 0 !important;
    max-width: 100% !important;
}
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-title-copy-v53,
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-title-copy-v53 strong,
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-title-copy-v53 small,
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-badge-v53,
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-room-members-v53,
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-identity-copy-v54,
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-identity-copy-v54 span {
    min-width: 0 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}

/* Composer sempre preserva a caixa de texto. */
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-composer-v53,
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-composer-row-v53,
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-input-wrap-v53 {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
}
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-composer-row-v53 {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 8px !important;
}
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-input-v53 {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 50px !important;
    resize: none !important;
}
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-send-v53 {
    min-width: 104px !important;
    min-height: 50px !important;
    white-space: nowrap !important;
}

/* Largura média: controles ficam abaixo, exatamente como o estado base. */
@container alastar-home-chat (min-width: 721px) and (max-width: 1049px) {
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53 {
        grid-template-columns: minmax(210px, 29%) minmax(0, 1fr) !important;
    }
}

/* Painel realmente largo: só então recupera 3 colunas proporcionais. */
@container alastar-home-chat (min-width: 1050px) {
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53 {
        grid-template-columns: minmax(218px, 23%) minmax(0, 1fr) minmax(210px, 22%) !important;
        grid-template-areas: "rooms conversation controls" !important;
    }
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-control-sidebar-v53 {
        display: flex !important;
        flex-direction: column !important;
        gap: 9px !important;
        border-left: 1px solid rgba(68,162,249,.20) !important;
        border-top: 0 !important;
        overflow-y: auto !important;
    }
}

/* Painel estreito / zoom alto / tablet: chat vira uma coluna real. */
@container alastar-home-chat (max-width: 720px) {
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53 {
        grid-template-columns: minmax(0, 1fr) !important;
        grid-template-areas:
            "rooms"
            "conversation"
            "controls" !important;
        overflow: visible !important;
    }
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-sidebar-v53 {
        border-right: 0 !important;
        border-bottom: 1px solid rgba(68,162,249,.20) !important;
    }
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-control-sidebar-v53 {
        grid-template-columns: minmax(0, 1fr) !important;
    }
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-members-list-v53 {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-main-v53 {
        min-height: 520px !important;
    }
}

/* Telefone estreito: tudo 100%, botões e composer nunca se sobrepõem. */
@container alastar-home-chat (max-width: 480px) {
    #alastar-site-chat .portal-community-tabs-v31 {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-members-list-v53 {
        grid-template-columns: minmax(0, 1fr) !important;
    }
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-composer-row-v53 {
        grid-template-columns: auto minmax(0, 1fr) !important;
        grid-template-areas:
            "tools input"
            "send send" !important;
    }
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-composer-buttons-v53 {
        grid-area: tools !important;
    }
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-input-wrap-v53 {
        grid-area: input !important;
    }
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-send-v53 {
        grid-area: send !important;
        width: 100% !important;
        min-width: 0 !important;
    }
}

/* Fallback para navegadores sem container queries. */
@supports not (container-type: inline-size) {
    @media (max-width: 1399.98px) {
        .home-v14 .portal-player-ranking-grid-v14 {
            grid-template-columns: minmax(0, 1fr) !important;
        }
        #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53 {
            grid-template-columns: minmax(200px, 28%) minmax(0, 1fr) !important;
            grid-template-areas: "rooms conversation" "controls controls" !important;
        }
    }
    @media (max-width: 767.98px) {
        #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53 {
            grid-template-columns: minmax(0, 1fr) !important;
            grid-template-areas: "rooms" "conversation" "controls" !important;
        }
    }
}

/* Mobile/desktop: remove qualquer overflow horizontal residual da Home sem
   esconder menus/modal fullscreen que precisam sair do fluxo. */
.home-v14 .portal-stage-v14,
.home-v14 .portal-frame-v14,
.home-v14 .portal-grid-v14,
.home-v14 .portal-main-v14,
.home-v14 .portal-sidebar-v14 {
    max-width: 100% !important;
}
@media (max-width: 767.98px) {
    .home-v14 .portal-stage-v14 {
        overflow-x: clip !important;
    }
    .home-v14 .portal-box-title-v14 {
        flex-wrap: wrap !important;
        justify-content: center !important;
        text-align: center !important;
    }
    .home-v14 .portal-box-title-v14 .title-line-v14 {
        min-width: 24px !important;
    }
    .home-v14 .portal-player-ranking-grid-v14 {
        padding: 10px !important;
    }
}

/* -------------------------------------------------------------------------- */
/* GUARDA DE ALINHAMENTO DAS DEMAIS PAGINAS VISUAIS DO SITE                  */
/* Loja e Rankings completos seguem a mesma regra: conteúdo não aumenta grid. */
.store-page-v100,
.store-page-v100 *,
.store-page-v100 *::before,
.store-page-v100 *::after,
.rankings-page-v106,
.rankings-page-v106 *,
.rankings-page-v106 *::before,
.rankings-page-v106 *::after {
    box-sizing: border-box;
}
.store-page-v100 .store-shell-v98,
.store-page-v100 .store-grid-v98,
.store-page-v100 .store-package-card-v104,
.store-page-v100 .store-package-card-v104 > *,
.rankings-page-v106 .ranking-shell-v106,
.rankings-page-v106 .ranking-board-v106,
.rankings-page-v106 .ranking-board-v106 > *,
.rankings-page-v106 .ranking-row-v106 > * {
    min-width: 0 !important;
    max-width: 100%;
}
.store-page-v100 img,
.rankings-page-v106 img,
.rankings-page-v106 svg {
    max-width: 100%;
}
.rankings-page-v106 .ranking-player-copy-v106 strong,
.rankings-page-v106 .ranking-player-copy-v106 small,
.rankings-page-v106 .ranking-evolution-v106 strong,
.rankings-page-v106 .ranking-value-v106 strong,
.rankings-page-v106 .ranking-value-v106 small {
    overflow-wrap: normal !important;
    word-break: normal !important;
}
.rankings-page-v106 .ranking-player-copy-v106 strong,
.rankings-page-v106 .ranking-player-copy-v106 small {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}
@media (max-width: 767.98px) {
    .store-page-v100,
    .rankings-page-v106 {
        overflow-x: clip !important;
    }
}


/* ========================================================================== */
/* V109 - LOJA DONATE SEM ESPAÇOS VAGOS / CARDS COM ALTURA MAIS FECHADA        */
/* ========================================================================== */

.store-page-v100 .container,
.store-catalog-v100 > .container {
    width: min(100% - 24px, 1760px) !important;
    max-width: 1760px !important;
}

.store-section-block-v98 {
    padding: 20px 18px 24px !important;
}

.store-package-grid-v97.store-package-grid-v98,
.store-package-grid-v98 {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 310px), 1fr)) !important;
    align-items: stretch !important;
    gap: 22px !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

.store-package-grid-v98 > * {
    min-width: 0 !important;
    width: 100% !important;
    max-width: none !important;
}

.store-package-card-v104 {
    display: grid !important;
    grid-template-rows: auto auto auto auto auto auto 1fr auto !important;
    align-content: start !important;
    height: 100% !important;
    min-height: 590px !important;
    gap: 14px !important;
    padding: 18px 18px 20px !important;
}

.store-package-badges-v104 {
    min-height: 26px !important;
}

.store-package-art-v104 {
    height: 220px !important;
    min-height: 220px !important;
    margin-bottom: 0 !important;
}

.store-package-art-v104 img,
.store-package-card-v104.is-premium-v98 .store-package-art-v104 img {
    width: min(100%, 270px) !important;
    max-width: 270px !important;
    height: 214px !important;
    max-height: 214px !important;
}

.store-package-title-v104 {
    min-height: 78px !important;
    justify-content: start !important;
}

.store-package-title-v104 h4 {
    font-size: clamp(22px, 1.45vw, 29px) !important;
}

.store-package-total-v104 {
    min-height: 104px !important;
    padding: 14px 12px !important;
}

.store-package-total-v104 strong {
    font-size: clamp(32px, 1.9vw, 40px) !important;
    margin: 6px 0 4px !important;
}

.store-package-composition-v104 {
    gap: 10px !important;
}

.store-package-composition-v104 > div {
    min-height: 64px !important;
    padding: 11px 12px !important;
}

.store-stock-counter-v104 {
    padding: 11px 12px !important;
}

.store-package-footer-v104 {
    margin-top: auto !important;
    grid-template-columns: minmax(128px, .9fr) minmax(0, 1.3fr) !important;
    align-items: end !important;
    gap: 12px !important;
}

.store-package-price-v104 {
    min-width: 0 !important;
    align-self: center !important;
}

.store-package-price-v104 strong {
    font-size: clamp(24px, 1.5vw, 28px) !important;
    white-space: nowrap !important;
}

.store-package-buy-v104 {
    width: 100% !important;
    min-height: 54px !important;
}

@media (min-width: 1200px) {
    .store-package-grid-v98 {
        grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)) !important;
    }
}

@media (min-width: 1500px) {
    .store-package-grid-v98 {
        grid-template-columns: repeat(auto-fit, minmax(335px, 1fr)) !important;
    }
}

@media (max-width: 991.98px) {
    .store-page-v100 .container,
    .store-catalog-v100 > .container {
        width: min(100% - 18px, 100%) !important;
    }

    .store-section-block-v98 {
        padding: 18px 14px 22px !important;
    }

    .store-package-card-v104 {
        min-height: 0 !important;
    }
}

@media (max-width: 767.98px) {
    .store-package-grid-v98 {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    .store-package-card-v104 {
        padding: 16px 14px 18px !important;
        gap: 12px !important;
    }

    .store-package-art-v104 {
        min-height: 195px !important;
        height: 195px !important;
    }

    .store-package-art-v104 img,
    .store-package-card-v104.is-premium-v98 .store-package-art-v104 img {
        width: min(100%, 230px) !important;
        max-width: 230px !important;
        height: 188px !important;
        max-height: 188px !important;
    }

    .store-package-footer-v104 {
        grid-template-columns: 1fr !important;
    }

    .store-package-price-v104 {
        text-align: center !important;
    }
}

/* ========================================================================== */
/* V111 - VER BÔNUS NA LOJA PÚBLICA / MESMA FONTE DO DASHBOARD                */
/* ========================================================================== */
.store-page-v100 .store-package-footer-v111 {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    align-items: stretch !important;
}
.store-page-v100 .store-package-price-v104 {
    display: flex !important;
    align-items: baseline !important;
    justify-content: space-between !important;
    width: 100% !important;
    padding: 0 4px !important;
}
.store-package-actions-v111 {
    display: grid !important;
    grid-template-columns: minmax(0,.85fr) minmax(0,1.35fr) !important;
    gap: 10px !important;
    width: 100% !important;
}
.store-package-bonus-v111,
.store-package-actions-v111 .store-package-buy-v104 {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 54px !important;
    margin: 0 !important;
}
.store-package-bonus-v111 {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    padding: 0 12px !important;
    border: 1px solid rgba(65,164,255,.55) !important;
    border-radius: 13px !important;
    background: linear-gradient(180deg,#1763a6 0%,#0b467d 55%,#07325d 100%) !important;
    color: #f3f9ff !important;
    font: 900 13px/1.1 "Inter",Arial,sans-serif !important;
    cursor: pointer !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.15),0 9px 20px rgba(0,0,0,.22) !important;
}
.store-package-bonus-v111:hover,
.store-package-bonus-v111:focus-visible {
    border-color: rgba(255,185,73,.72) !important;
    background: linear-gradient(180deg,#247dc5,#0c538d 58%,#073861) !important;
    outline: none !important;
}

.store-bonus-modal-v111[hidden] { display:none !important; }
.store-bonus-modal-v111 {
    position: fixed !important;
    inset: 0 !important;
    z-index: 100000 !important;
    display: grid !important;
    place-items: center !important;
    padding: 18px !important;
    background: rgba(0,5,12,.78) !important;
    backdrop-filter: blur(8px) !important;
    opacity: 0;
    transition: opacity .15s ease;
}
.store-bonus-modal-v111.is-open-v111 { opacity: 1; }
.store-bonus-panel-v111 {
    position: relative !important;
    width: min(620px,100%) !important;
    max-height: min(760px,calc(100dvh - 36px)) !important;
    overflow: auto !important;
    padding: 22px !important;
    border: 1px solid rgba(255,176,55,.62) !important;
    border-radius: 20px !important;
    background: linear-gradient(155deg,#0d2848 0%,#071728 48%,#100c0b 100%) !important;
    color: #f4f8ff !important;
    box-shadow: 0 28px 80px rgba(0,0,0,.62), inset 0 1px 0 rgba(255,255,255,.05) !important;
}
.store-bonus-close-v111 {
    position: absolute !important;
    top: 14px !important;
    right: 14px !important;
    width: 42px !important;
    height: 42px !important;
    border: 1px solid rgba(77,159,231,.38) !important;
    border-radius: 50% !important;
    background: #0a1d32 !important;
    color: #fff !important;
    font-size: 18px !important;
    cursor: pointer !important;
}
.store-bonus-head-v111 { padding-right: 54px !important; margin-bottom: 16px !important; }
.store-bonus-head-v111 span {
    display: block !important;
    color: #69caff !important;
    font: 900 12px/1.2 "Inter",Arial,sans-serif !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
}
.store-bonus-head-v111 h4 {
    margin: 6px 0 0 !important;
    color: #ffe39b !important;
    font: 900 clamp(22px,3vw,29px)/1.12 "Cinzel",Georgia,serif !important;
}
.store-bonus-summary-v111 {
    display: grid !important;
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 9px !important;
}
.store-bonus-summary-v111 > div {
    min-width: 0 !important;
    padding: 13px !important;
    border: 1px solid rgba(60,152,230,.30) !important;
    border-radius: 12px !important;
    background: #08203a !important;
}
.store-bonus-summary-v111 span { display:block !important; color:#b7cbe0 !important; font-size:11px !important; font-weight:800 !important; text-transform:uppercase !important; }
.store-bonus-summary-v111 strong { display:block !important; margin-top:7px !important; color:#fff !important; font-size:17px !important; font-weight:900 !important; }
.store-bonus-summary-v111 .is-bonus-v111 { border-color:rgba(255,163,44,.42) !important; background:#321b0e !important; }
.store-bonus-summary-v111 .is-bonus-v111 strong,
.store-bonus-summary-v111 .is-total-v111 strong { color:#ffd070 !important; }
.store-bonus-items-v111 {
    margin-top: 14px !important;
    padding: 12px !important;
    border: 1px solid rgba(255,174,53,.24) !important;
    border-radius: 13px !important;
    background: rgba(3,12,23,.76) !important;
}
.store-bonus-items-v111 h5 { margin:0 0 7px !important; color:#ffd071 !important; font-size:14px !important; }
.store-bonus-item-v111 {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    min-height: 50px !important;
    padding: 7px 4px !important;
    border-bottom: 1px solid rgba(255,255,255,.07) !important;
    color: #f5f8fc !important;
    font-size: 13px !important;
    font-weight: 750 !important;
}
.store-bonus-item-v111:last-child { border-bottom:0 !important; }
.store-bonus-item-v111 img { width:38px !important; height:38px !important; object-fit:contain !important; image-rendering:auto !important; }
.store-bonus-empty-v111 {
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    margin-top:14px !important;
    padding:14px !important;
    border:1px solid rgba(65,158,236,.30) !important;
    border-radius:13px !important;
    background:#071a2e !important;
}
.store-bonus-empty-v111 > i { color:#62c9ff !important; font-size:24px !important; }
.store-bonus-empty-v111 strong { display:block !important; color:#fff2c9 !important; font-size:14px !important; }
.store-bonus-empty-v111 span { display:block !important; margin-top:3px !important; color:#b7c9dc !important; font-size:12.5px !important; }
.store-bonus-done-v111 {
    width:100% !important;
    min-height:50px !important;
    margin-top:14px !important;
    border:1px solid #ffc15d !important;
    border-radius:12px !important;
    background:linear-gradient(180deg,#ff9f28,#c8500b) !important;
    color:#fff !important;
    font:900 14px/1 "Inter",Arial,sans-serif !important;
    cursor:pointer !important;
}
@media (max-width: 620px) {
    .store-package-actions-v111 { grid-template-columns: 1fr !important; }
    .store-bonus-summary-v111 { grid-template-columns: 1fr !important; }
    .store-bonus-panel-v111 { padding: 18px 14px !important; }
}

/* ========================================================================== */
/* V114 - RESTAURAÇÃO E BLOQUEIO DE GEOMETRIA DO CHAT (BASE APROVADA V64)    */
/* ========================================================================== */
/*
   Objetivo: restaurar a estrutura aprovada antes das regressões V65/V66/V79.
   - Staff/Admin: Salas + identidade + membros à esquerda, conversa ao centro,
     Controles do dono/Admin/Sala&Call à direita.
   - Player comum em desktop: identidade + salas à esquerda, conversa ao centro,
     membros/call à direita; controles de dono seguem abaixo quando aplicáveis.
   - O composer é sempre a última faixa da coluna central.
   - Nenhum painel usa posição absoluta para compor a geometria principal.
*/

#alastar-site-chat,
#alastar-site-chat * {
    box-sizing: border-box;
}

#alastar-site-chat .portal-chat-panel-v53,
#alastar-site-chat #alastar-panel-chat {
    min-width: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
}

/* O fullscreen e o botão de gerenciamento pertencem novamente ao cabeçalho da sala. */
#alastar-site-chat .portal-chat-title-v19 > .portal-chat-fullscreen-v51,
#alastar-site-chat .portal-chat-title-v19 > .portal-chat-fullscreen-top-v79 {
    display: none !important;
}

#alastar-site-chat .portal-chat-room-head-v53 .portal-chat-head-tools-v53 {
    display: flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 7px !important;
    min-width: fit-content !important;
    margin-left: auto !important;
}

#alastar-site-chat .portal-chat-room-head-v53 .portal-chat-head-action-v53,
#alastar-site-chat .portal-chat-room-head-v53 .portal-chat-fullscreen-v51 {
    position: static !important;
    inset: auto !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
}

/* V66 nunca mais move "Falando como" para a barra central. */
#alastar-site-chat .portal-chat-identity-sidebar-v54,
#alastar-site-chat .portal-chat-identity-sidebar-v54.is-head-v66 {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 54px !important;
    margin: 0 !important;
    flex: 0 0 auto !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 38px !important;
    gap: 8px !important;
    overflow: visible !important;
}

#alastar-site-chat .portal-chat-room-head-v53 {
    flex: 0 0 auto !important;
    min-width: 0 !important;
    min-height: 52px !important;
    height: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    overflow: visible !important;
    z-index: 90 !important;
}

#alastar-site-chat .portal-chat-room-title-v53 {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

/* ---------- DESKTOP / NOTEBOOK: três áreas reais, sem sobreposição ---------- */
@media (min-width: 1101px) {
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53,
    body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53 {
        display: grid !important;
        grid-template-columns: minmax(190px, 24%) minmax(0, 1fr) minmax(190px, 23%) !important;
        grid-template-rows: minmax(0, 1fr) !important;
        gap: 1px !important;
        align-items: stretch !important;
        min-width: 0 !important;
        min-height: 0 !important;
        overflow: hidden !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53 {
        height: var(--alastar-chat-normal-height-v66, clamp(570px, 70vh, 720px)) !important;
        max-height: var(--alastar-chat-normal-height-v66, 720px) !important;
    }

    #alastar-site-chat .portal-chat-sidebar-v53,
    #alastar-site-chat .portal-chat-main-v53,
    #alastar-site-chat .portal-chat-control-sidebar-v53 {
        grid-column: auto !important;
        grid-row: 1 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        height: 100% !important;
        max-height: 100% !important;
        overflow: hidden !important;
    }

    /* Lateral esquerda do Staff/Admin: exatamente a ordem aprovada. */
    #alastar-site-chat .portal-chat-sidebar-v53 {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }

    #alastar-site-chat .portal-chat-sidebar-v53 > .portal-chat-section-head-v53 {
        order: 1 !important;
        flex: 0 0 auto !important;
        margin: 0 !important;
    }

    #alastar-site-chat .portal-chat-sidebar-v53 > .portal-chat-roombar-v53 {
        order: 2 !important;
        flex: 0 0 auto !important;
        min-height: 0 !important;
        max-height: 218px !important;
        overflow: hidden !important;
    }

    #alastar-site-chat .portal-chat-sidebar-v53 > .portal-chat-identity-sidebar-v54 {
        order: 3 !important;
        flex: 0 0 auto !important;
    }

    #alastar-site-chat .portal-chat-sidebar-v53 > .portal-chat-character-profile-v59 {
        order: 4 !important;
        flex: 0 0 auto !important;
        max-height: 150px !important;
        overflow-y: auto !important;
    }

    #alastar-site-chat .portal-chat-sidebar-v53 > .portal-chat-members-panel-v53 {
        order: 5 !important;
        flex: 1 1 0 !important;
        min-height: 125px !important;
        max-height: none !important;
        overflow: hidden !important;
    }

    #alastar-site-chat .portal-chat-room-list-v53,
    body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-room-list-v53 {
        max-height: 164px !important;
        height: auto !important;
        min-height: 0 !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        align-content: start !important;
    }

    #alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-entry-v33,
    #alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 {
        min-height: 52px !important;
    }

    #alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 {
        height: 52px !important;
        padding: 7px 8px !important;
        grid-template-columns: 22px minmax(0, 1fr) auto auto auto !important;
        gap: 6px !important;
    }

    /* Conversa central é uma coluna flex isolada. */
    #alastar-site-chat .portal-chat-main-v53 {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
    }

    #alastar-site-chat .portal-chat-announcement-v48 {
        position: relative !important;
        inset: auto !important;
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: none !important;
        margin: 0 8px 8px !important;
        z-index: 20 !important;
    }

    #alastar-site-chat .portal-chat-messages-v53 {
        position: relative !important;
        flex: 1 1 0 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
    }

    #alastar-site-chat .portal-chat-composer-v53 {
        position: relative !important;
        inset: auto !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 9px 10px 10px !important;
        z-index: 30 !important;
    }

    #alastar-site-chat .portal-chat-composer-row-v53 {
        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr) auto !important;
        grid-template-areas: "tools input send" !important;
        align-items: center !important;
        gap: 7px !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    #alastar-site-chat .portal-chat-composer-buttons-v53 {
        grid-area: tools !important;
        display: grid !important;
        grid-template-columns: repeat(2, 36px) !important;
        gap: 5px !important;
        min-width: 0 !important;
    }

    #alastar-site-chat .portal-chat-action-button-v53 {
        width: 36px !important;
        min-width: 36px !important;
        height: 44px !important;
        margin: 0 !important;
    }

    #alastar-site-chat .portal-chat-input-wrap-v53 {
        grid-area: input !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    #alastar-site-chat .portal-chat-input-v53 {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 48px !important;
        height: 48px !important;
        max-height: 110px !important;
        margin: 0 !important;
        resize: vertical !important;
    }

    #alastar-site-chat .portal-chat-send-v53 {
        grid-area: send !important;
        min-width: 88px !important;
        width: auto !important;
        height: 48px !important;
        margin: 0 !important;
        padding: 0 13px !important;
        white-space: nowrap !important;
    }

    #alastar-site-chat .portal-chat-actions-v53 {
        min-height: 18px !important;
        padding-top: 4px !important;
    }

    /* Coluna direita: controles nunca descem para baixo da grade em desktop. */
    #alastar-site-chat .portal-chat-control-sidebar-v53,
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-control-sidebar-v53,
    body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-control-sidebar-v53 {
        grid-column: 3 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 8px !important;
        padding: 8px !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        border-left: 1px solid rgba(68, 162, 249, .20) !important;
        border-top: 0 !important;
    }

    #alastar-site-chat .portal-chat-control-card-v53 {
        flex: 0 0 auto !important;
        min-width: 0 !important;
        width: 100% !important;
        margin: 0 !important;
    }

    #alastar-site-chat .portal-chat-control-button-v53 {
        width: 100% !important;
        min-width: 0 !important;
        white-space: normal !important;
    }

    #alastar-site-chat .portal-chat-control-info-v53 {
        margin-top: auto !important;
    }

    /* Player comum: estrutura V64 - membros/call na direita. */
    #alastar-site-chat.is-player-desktop-v64 .portal-chat-workspace-v53 {
        grid-template-columns: minmax(190px, 25%) minmax(0, 1fr) minmax(200px, 25%) !important;
    }

    #alastar-site-chat.is-player-desktop-v64 .portal-chat-sidebar-v53 > .portal-chat-identity-sidebar-v54 {
        order: 1 !important;
    }

    #alastar-site-chat.is-player-desktop-v64 .portal-chat-sidebar-v53 > .portal-chat-character-profile-v59 {
        order: 2 !important;
    }

    #alastar-site-chat.is-player-desktop-v64 .portal-chat-sidebar-v53 > .portal-chat-section-head-v53 {
        order: 3 !important;
        margin-top: auto !important;
    }

    #alastar-site-chat.is-player-desktop-v64 .portal-chat-sidebar-v53 > .portal-chat-roombar-v53 {
        order: 4 !important;
        flex: 0 0 clamp(205px, 35%, 270px) !important;
        max-height: 270px !important;
    }

    #alastar-site-chat.is-player-desktop-v64 .portal-chat-control-sidebar-v53 > .portal-chat-members-panel-v53 {
        order: 1 !important;
        flex: 1 1 0 !important;
        min-height: 190px !important;
        max-height: none !important;
        overflow: hidden !important;
    }

    #alastar-site-chat.is-player-desktop-v64 .portal-chat-control-sidebar-v53 > .portal-chat-control-owner-v53 {
        order: 2 !important;
    }

    #alastar-site-chat.is-player-desktop-v64 .portal-chat-control-sidebar-v53 > .portal-chat-control-staff-v53 {
        order: 3 !important;
    }

    #alastar-site-chat.is-player-desktop-v64 .portal-chat-control-sidebar-v53 > .portal-chat-control-info-v53 {
        order: 4 !important;
        margin-top: 0 !important;
    }

    #alastar-site-chat .portal-chat-members-list-v53 {
        flex: 1 1 0 !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
    }
}

/* ---------- TABLET: duas colunas + controles em faixa própria ---------- */
@media (min-width: 768px) and (max-width: 1100.98px) {
    #alastar-site-chat .portal-chat-workspace-v53,
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53,
    body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53 {
        display: grid !important;
        grid-template-columns: minmax(205px, 29%) minmax(0, 1fr) !important;
        grid-template-rows: minmax(500px, 1fr) auto !important;
        align-items: stretch !important;
        min-width: 0 !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }

    #alastar-site-chat .portal-chat-sidebar-v53 {
        grid-column: 1 !important;
        grid-row: 1 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        overflow-y: auto !important;
    }

    #alastar-site-chat .portal-chat-main-v53 {
        grid-column: 2 !important;
        grid-row: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        min-width: 0 !important;
        min-height: 0 !important;
        overflow: hidden !important;
    }

    #alastar-site-chat .portal-chat-messages-v53 {
        flex: 1 1 0 !important;
        min-height: 0 !important;
        overflow-y: auto !important;
    }

    #alastar-site-chat .portal-chat-composer-v53 {
        flex: 0 0 auto !important;
        position: relative !important;
        inset: auto !important;
        width: 100% !important;
    }

    #alastar-site-chat .portal-chat-control-sidebar-v53,
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-control-sidebar-v53,
    body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-control-sidebar-v53 {
        grid-column: 1 / -1 !important;
        grid-row: 2 !important;
        display: grid !important;
        grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)) !important;
        gap: 8px !important;
        width: 100% !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        border-left: 0 !important;
        border-top: 1px solid rgba(68, 162, 249, .20) !important;
    }

    #alastar-site-chat .portal-chat-control-info-v53 {
        margin-top: 0 !important;
    }

    #alastar-site-chat .portal-chat-composer-row-v53 {
        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr) auto !important;
        gap: 6px !important;
        align-items: center !important;
    }

    #alastar-site-chat .portal-chat-composer-buttons-v53 {
        display: grid !important;
        grid-template-columns: repeat(2, 34px) !important;
        gap: 4px !important;
    }

    #alastar-site-chat .portal-chat-action-button-v53 {
        width: 34px !important;
        min-width: 34px !important;
        height: 44px !important;
    }

    #alastar-site-chat .portal-chat-send-v53 {
        min-width: 82px !important;
        height: 48px !important;
    }
}

/* ---------- MOBILE: uma única coluna, cada bloco 100% visível ---------- */
@media (max-width: 767.98px) {
    #alastar-site-chat,
    #alastar-site-chat .portal-community-panel-v31,
    #alastar-site-chat .portal-chat-panel-v53 {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-x: hidden !important;
    }

    #alastar-site-chat .portal-chat-workspace-v53,
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53,
    body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53 {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }

    #alastar-site-chat .portal-chat-sidebar-v53,
    #alastar-site-chat .portal-chat-main-v53,
    #alastar-site-chat .portal-chat-control-sidebar-v53 {
        width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }

    #alastar-site-chat .portal-chat-sidebar-v53 {
        display: flex !important;
        flex-direction: column !important;
    }

    #alastar-site-chat .portal-chat-room-list-v53 {
        max-height: 164px !important;
        overflow-y: auto !important;
    }

    #alastar-site-chat .portal-chat-main-v53 {
        display: flex !important;
        flex-direction: column !important;
        min-height: 520px !important;
    }

    #alastar-site-chat .portal-chat-messages-v53 {
        flex: 1 1 360px !important;
        min-height: 360px !important;
        max-height: 62vh !important;
        overflow-y: auto !important;
    }

    #alastar-site-chat .portal-chat-composer-v53 {
        position: relative !important;
        inset: auto !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        padding: 7px !important;
    }

    #alastar-site-chat .portal-chat-composer-row-v53 {
        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr) 44px !important;
        grid-template-areas: "tools input send" !important;
        gap: 5px !important;
        align-items: center !important;
    }

    #alastar-site-chat .portal-chat-composer-buttons-v53 {
        grid-area: tools !important;
        display: grid !important;
        grid-template-columns: repeat(2, 31px) !important;
        gap: 3px !important;
    }

    #alastar-site-chat .portal-chat-action-button-v53 {
        width: 31px !important;
        min-width: 31px !important;
        height: 42px !important;
    }

    #alastar-site-chat .portal-chat-input-wrap-v53 {
        grid-area: input !important;
        min-width: 0 !important;
    }

    #alastar-site-chat .portal-chat-input-v53 {
        width: 100% !important;
        min-width: 0 !important;
        min-height: 46px !important;
        height: 46px !important;
        font-size: 16px !important;
    }

    #alastar-site-chat .portal-chat-send-v53 {
        grid-area: send !important;
        width: 44px !important;
        min-width: 44px !important;
        height: 46px !important;
        padding: 0 !important;
    }

    #alastar-site-chat .portal-chat-send-v53 span {
        display: none !important;
    }

    #alastar-site-chat .portal-chat-control-sidebar-v53 {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
        padding: 8px !important;
        border-left: 0 !important;
        border-top: 1px solid rgba(68, 162, 249, .20) !important;
    }

    #alastar-site-chat .portal-chat-control-info-v53 {
        margin-top: 0 !important;
    }
}

/* Fullscreen mantém os mesmos papéis de cada coluna; somente ocupa viewport. */
body > #alastar-site-chat.is-fullscreen-v51 {
    overflow: hidden !important;
}

@media (min-width: 1101px) {
    body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53 {
        height: 100% !important;
        max-height: 100% !important;
    }
}

/* ========================================================================== */
/* V116 - CHAT NORMAL/MINIMIZADO = MESMA GEOMETRIA VISUAL DO FULLSCREEN       */
/* Corrige a regressao causada por regras antigas mais especificas do V108.    */
/* NAO ALTERA o fullscreen.                                                    */
/* ========================================================================== */

/* A raiz do chat já é container no V108. Reforçamos somente o estado normal. */
#alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51),
#alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) * {
    box-sizing: border-box !important;
}

/* Estado seguro para o modo normal: nada pode escapar da propria coluna. */
#alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-workspace-v53,
#alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-sidebar-v53,
#alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-main-v53,
#alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-control-sidebar-v53 {
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: none !important;
}

/* -------------------------------------------------------------------------- */
/* NORMAL COM ESPACO SUFICIENTE: replica a divisao esquerda / centro / direita */
/* -------------------------------------------------------------------------- */
@container alastar-home-chat (min-width: 580px) {
    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-workspace-v53 {
        display: grid !important;
        grid-template-columns:
            clamp(150px, 24%, 224px)
            minmax(0, 1fr)
            clamp(145px, 22%, 214px) !important;
        grid-template-rows: minmax(0, 1fr) !important;
        grid-template-areas: "v116-left v116-main v116-right" !important;
        grid-auto-flow: row !important;
        gap: 1px !important;
        align-items: stretch !important;
        width: 100% !important;
        height: clamp(520px, calc(100vh - 235px), 660px) !important;
        min-height: 520px !important;
        max-height: 660px !important;
        overflow: hidden !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-sidebar-v53 {
        grid-area: v116-left !important;
        grid-column: 1 !important;
        grid-row: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100% !important;
        height: 100% !important;
        max-height: 100% !important;
        overflow: hidden !important;
        border-right: 1px solid rgba(68,162,249,.20) !important;
        border-bottom: 0 !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-main-v53 {
        grid-area: v116-main !important;
        grid-column: 2 !important;
        grid-row: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;
        max-height: 100% !important;
        overflow: hidden !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-control-sidebar-v53 {
        grid-area: v116-right !important;
        grid-column: 3 !important;
        grid-row: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 8px !important;
        width: 100% !important;
        height: 100% !important;
        min-height: 0 !important;
        max-height: 100% !important;
        padding: 7px !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        border-left: 1px solid rgba(68,162,249,.20) !important;
        border-top: 0 !important;
        align-content: initial !important;
    }

    /* Cabecalho da sala fica em UMA faixa, igual ao fullscreen. */
    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-room-head-v53 {
        position: relative !important;
        inset: auto !important;
        display: flex !important;
        flex: 0 0 auto !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        gap: 6px !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 52px !important;
        height: auto !important;
        overflow: visible !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-room-title-v53 {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        max-width: none !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-head-tools-v53 {
        flex: 0 0 auto !important;
        margin-left: auto !important;
    }

    /* O anuncio nunca rouba a altura da lista inteira. */
    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-announcement-v48 {
        position: relative !important;
        inset: auto !important;
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: none !important;
        margin: 0 7px 7px !important;
        z-index: 20 !important;
    }

    /* PONTO PRINCIPAL DO FIX: histórico ocupa TODO o espaco entre cabecalho e composer. */
    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-messages-v53 {
        position: relative !important;
        inset: auto !important;
        display: block !important;
        flex: 1 1 0 !important;
        width: 100% !important;
        height: 0 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        align-self: stretch !important;
    }

    /* Composer fica SEMPRE no rodape da coluna central. */
    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-composer-v53 {
        position: relative !important;
        inset: auto !important;
        flex: 0 0 auto !important;
        align-self: stretch !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        margin: auto 0 0 !important;
        padding: 8px 7px 8px !important;
        z-index: 30 !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-composer-row-v53 {
        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr) auto !important;
        grid-template-areas: "v116-tools v116-input v116-send" !important;
        align-items: center !important;
        gap: 5px !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-composer-buttons-v53 {
        grid-area: v116-tools !important;
        display: grid !important;
        grid-template-columns: repeat(2, 32px) !important;
        gap: 4px !important;
        min-width: 0 !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-action-button-v53 {
        width: 32px !important;
        min-width: 32px !important;
        height: 44px !important;
        min-height: 44px !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-input-wrap-v53 {
        grid-area: v116-input !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-input-v53 {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        min-height: 46px !important;
        height: 46px !important;
        max-height: 96px !important;
        margin: 0 !important;
        padding: 9px 10px !important;
        resize: none !important;
        overflow-y: auto !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-send-v53 {
        grid-area: v116-send !important;
        width: auto !important;
        min-width: 78px !important;
        height: 46px !important;
        min-height: 46px !important;
        margin: 0 !important;
        padding: 0 10px !important;
        white-space: nowrap !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-actions-v53 {
        min-height: 16px !important;
        padding-top: 3px !important;
    }

    /* Lateral esquerda: Salas -> Falando como -> Membros (admin/staff). */
    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-sidebar-v53 > .portal-chat-section-head-v53 {
        order: 1 !important;
        flex: 0 0 auto !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-sidebar-v53 > .portal-chat-roombar-v53 {
        order: 2 !important;
        flex: 0 0 auto !important;
        min-height: 0 !important;
        max-height: 180px !important;
        overflow: hidden !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-sidebar-v53 > .portal-chat-identity-sidebar-v54 {
        order: 3 !important;
        flex: 0 0 auto !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-sidebar-v53 > .portal-chat-character-profile-v59 {
        order: 4 !important;
        flex: 0 0 auto !important;
        max-height: 120px !important;
        overflow-y: auto !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-sidebar-v53 > .portal-chat-members-panel-v53 {
        order: 5 !important;
        flex: 1 1 0 !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: hidden !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-room-list-v53 {
        width: 100% !important;
        min-height: 0 !important;
        max-height: 125px !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-members-list-v53 {
        flex: 1 1 0 !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
    }

    /* Coluna direita: cards em fluxo vertical, nada absoluto/nada sobreposto. */
    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-control-card-v53 {
        position: relative !important;
        inset: auto !important;
        flex: 0 0 auto !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        margin: 0 !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-control-button-v53 {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        white-space: normal !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-control-info-v53 {
        margin-top: auto !important;
    }

    /* PLAYER: preserva o padrao diferenciado da V64. O JS move membros/call
       para a direita; identidade e salas permanecem na esquerda. */
    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51).is-player-desktop-v64 .portal-chat-sidebar-v53 > .portal-chat-identity-sidebar-v54 {
        order: 1 !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51).is-player-desktop-v64 .portal-chat-sidebar-v53 > .portal-chat-character-profile-v59 {
        order: 2 !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51).is-player-desktop-v64 .portal-chat-sidebar-v53 > .portal-chat-section-head-v53 {
        order: 3 !important;
        margin-top: auto !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51).is-player-desktop-v64 .portal-chat-sidebar-v53 > .portal-chat-roombar-v53 {
        order: 4 !important;
        flex: 0 0 auto !important;
        max-height: 200px !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51).is-player-desktop-v64 .portal-chat-control-sidebar-v53 > .portal-chat-members-panel-v53 {
        order: 1 !important;
        flex: 1 1 0 !important;
        min-height: 170px !important;
        max-height: none !important;
        overflow: hidden !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51).is-player-desktop-v64 .portal-chat-control-sidebar-v53 > .portal-chat-control-owner-v53 {
        order: 2 !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51).is-player-desktop-v64 .portal-chat-control-sidebar-v53 > .portal-chat-control-staff-v53 {
        order: 3 !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51).is-player-desktop-v64 .portal-chat-control-sidebar-v53 > .portal-chat-control-info-v53 {
        order: 4 !important;
        margin-top: 0 !important;
    }
}

/* Em um painel normal muito estreito não tentamos esmagar 3 colunas. */
@container alastar-home-chat (max-width: 579.98px) {
    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-workspace-v53 {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: visible !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-sidebar-v53,
    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-main-v53,
    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-control-sidebar-v53 {
        position: relative !important;
        inset: auto !important;
        width: 100% !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-main-v53 {
        display: flex !important;
        flex-direction: column !important;
        min-height: 500px !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-messages-v53 {
        flex: 1 1 330px !important;
        min-height: 330px !important;
        max-height: 58vh !important;
        overflow-y: auto !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-composer-v53 {
        position: relative !important;
        inset: auto !important;
        width: 100% !important;
        margin-top: auto !important;
    }

    #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-control-sidebar-v53 {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
        padding: 8px !important;
        border-left: 0 !important;
        border-top: 1px solid rgba(68,162,249,.20) !important;
    }
}

/* Fallback sem container queries: usa o mesmo desenho em desktop razoavel. */
@supports not (container-type: inline-size) {
    @media (min-width: 900px) {
        #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-workspace-v53 {
            display: grid !important;
            grid-template-columns: 150px minmax(0,1fr) 145px !important;
            grid-template-rows: minmax(0,1fr) !important;
            height: clamp(520px, calc(100vh - 235px), 660px) !important;
            overflow: hidden !important;
        }
        #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-sidebar-v53 { grid-column:1 !important; grid-row:1 !important; height:100% !important; }
        #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-main-v53 { grid-column:2 !important; grid-row:1 !important; height:100% !important; display:flex !important; flex-direction:column !important; }
        #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-control-sidebar-v53 { grid-column:3 !important; grid-row:1 !important; height:100% !important; display:flex !important; flex-direction:column !important; }
        #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-messages-v53 { flex:1 1 0 !important; height:0 !important; min-height:0 !important; max-height:none !important; }
        #alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-composer-v53 { flex:0 0 auto !important; margin-top:auto !important; }
    }
}

/* ========================================================================== */
/* V117 - CHAT MINIMIZADO: JOGADORES DIRETO ABAIXO DE "FALANDO COMO"          */
/* ========================================================================== */
/*
   Correção cirúrgica solicitada:
   - remove SOMENTE o cabeçalho/label "NA SALA" no modo normal/minimizado;
   - a lista real de jogadores começa imediatamente após "Falando como";
   - fullscreen permanece exatamente como está no V116;
   - não altera JS, voz, permissões, presença, Staff/Admin ou Player.
*/

#alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51)
.portal-chat-members-panel-v53 > .portal-chat-members-head-v53 {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
}

#alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51)
.portal-chat-sidebar-v53 > .portal-chat-members-panel-v53 {
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: 1px solid rgba(68, 158, 241, .14) !important;
}

#alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51)
.portal-chat-sidebar-v53 > .portal-chat-members-panel-v53 > .portal-chat-members-list-v53 {
    margin-top: 0 !important;
    padding-top: 7px !important;
    align-content: start !important;
}

/* Não reservar uma altura fantasma para o cabeçalho removido. */
#alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51)
.portal-chat-members-panel-v53 {
    row-gap: 0 !important;
}


/* =========================================================
   V118 — CALL CONTROLS: MIC / AUD / SAIR ALINHADOS
   ========================================================= */
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-call-controls-v53 {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    gap: 6px !important;
}

#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-call-controls-v53 .portal-voice-control-v34 {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 46px !important;
    height: 46px !important;
    padding: 4px 2px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-call-controls-v53 .portal-voice-control-v34 i {
    display: block !important;
    margin: 0 0 3px !important;
    font-size: 12px !important;
    line-height: 1 !important;
    flex: 0 0 auto !important;
}

#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-call-controls-v53 .portal-voice-control-v34 span {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: clip !important;
    line-height: 1 !important;
    font-size: 9px !important;
    font-weight: 900 !important;
    letter-spacing: .03em !important;
}

#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-call-controls-v53 .portal-voice-control-v34,
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-call-controls-v53 .portal-voice-control-v34 span {
    word-break: keep-all !important;
    overflow-wrap: normal !important;
}

@media (max-width: 767.98px) {
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-call-controls-v53 {
        gap: 5px !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-call-controls-v53 .portal-voice-control-v34 {
        min-height: 44px !important;
        height: 44px !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-call-controls-v53 .portal-voice-control-v34 span {
        font-size: 8.5px !important;
    }
}

/* =========================================================
   V119 — CONTROLES DE CALL SEM CAMADA/MOLDURA MARROM
   ========================================================= */
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-call-controls-v53 .portal-voice-control-v34 {
    -webkit-appearance: none !important;
    appearance: none !important;
    position: relative !important;
    isolation: isolate !important;
    outline: 0 !important;
    border: 1px solid #215f91 !important;
    background: linear-gradient(180deg, #103557 0%, #09253f 52%, #061a2f 100%) !important;
    background-clip: padding-box !important;
    color: #e6f5ff !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.08),
        inset 0 -1px 0 rgba(36,143,224,.10) !important;
    filter: none !important;
    text-shadow: 0 1px 0 rgba(0,0,0,.65) !important;
    transform: none !important;
}

#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-call-controls-v53 .portal-voice-control-v34::before,
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-call-controls-v53 .portal-voice-control-v34::after {
    content: none !important;
    display: none !important;
    border: 0 !important;
    box-shadow: none !important;
    background: none !important;
}

#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-call-controls-v53 .portal-voice-control-v34:hover:not(:disabled),
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-call-controls-v53 .portal-voice-control-v34:focus-visible {
    border-color: #3da8ef !important;
    background: linear-gradient(180deg, #15466f 0%, #0b3151 54%, #07223c 100%) !important;
    color: #fff !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.12),
        0 0 0 2px rgba(48,158,236,.08) !important;
    transform: none !important;
}

/* Estado Mic/Aud ativo continua AZUL, sem voltar ao marrom antigo. */
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-call-controls-v53 .portal-voice-control-v34.is-active {
    border-color: #319ce1 !important;
    background: linear-gradient(180deg, #144b78 0%, #0a3459 52%, #07233e 100%) !important;
    color: #dff5ff !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.10),
        inset 0 0 12px rgba(41,157,234,.08) !important;
}

/* Sair: uma única camada vermelha, sem halo/moldura marrom. */
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-call-controls-v53 .portal-voice-leave-v34 {
    border-color: #8f3434 !important;
    background: linear-gradient(180deg, #4f1d22 0%, #35141a 54%, #251016 100%) !important;
    color: #ffd9d5 !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.07),
        inset 0 -1px 0 rgba(190,55,55,.12) !important;
}

#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-call-controls-v53 .portal-voice-leave-v34:hover:not(:disabled),
#alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-call-controls-v53 .portal-voice-leave-v34:focus-visible {
    border-color: #d95555 !important;
    background: linear-gradient(180deg, #65262c 0%, #461a20 55%, #301117 100%) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.09),
        0 0 0 2px rgba(217,85,85,.07) !important;
}

/* ========================================================================== */
/* V126 - CHAT: RESTAURACAO VISUAL/AUDITORIA FINAL                            */
/* Base funcional preservada: V122/V124 + JS V125.                            */
/* Corrige interferencias globais V95/V96/V106 sem alterar PHP/JS/permissoes. */
/* ========================================================================== */

/* 1) O CHAT VOLTA A TER A PALETA PROPRIA AZUL/ESCURA DA REFERENCIA. */
#alastar-site-chat.portal-community-v31,
#alastar-site-chat.portal-community-v31.portal-box-v14,
#alastar-site-chat.portal-community-v31.portal-box-v14:hover {
    --chat-v53-bg: #06101d !important;
    --chat-v53-bg-deep: #030914 !important;
    --chat-v53-panel: rgba(8, 20, 36, .96) !important;
    --chat-v53-panel-2: rgba(10, 27, 48, .94) !important;
    --chat-v53-line: rgba(47, 153, 255, .46) !important;
    --chat-v53-line-soft: rgba(73, 157, 245, .18) !important;
    border: 1px solid rgba(54, 158, 255, .58) !important;
    background:
        radial-gradient(circle at 50% -18%, rgba(39, 123, 214, .18), transparent 38%),
        linear-gradient(180deg, rgba(5, 13, 25, .99), rgba(3, 8, 16, .995)) !important;
    box-shadow:
        0 0 0 1px rgba(40, 129, 225, .16),
        0 18px 48px rgba(0, 0, 0, .40),
        0 0 34px rgba(29, 132, 236, .12),
        inset 0 1px 0 rgba(255,255,255,.045) !important;
    transform: none !important;
    filter: none !important;
}

/* O titulo do chat nao herda mais a chapa orange/brown dos paineis globais. */
#alastar-site-chat .portal-chat-title-v19.portal-box-title-v14 {
    min-height: 58px !important;
    padding: 15px 14px 14px !important;
    gap: 8px !important;
    background:
        linear-gradient(90deg, transparent, rgba(47, 141, 232, .10), transparent),
        linear-gradient(180deg, rgba(8, 22, 39, .96), rgba(5, 12, 23, .96)) !important;
    border-bottom: 1px solid rgba(54, 159, 255, .20) !important;
    color: #f7d780 !important;
    box-shadow: none !important;
}

/* Icone superior: dourado simples, sem placa marrom/3D do V96. */
#alastar-site-chat .portal-chat-title-v19.portal-box-title-v14 > i {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    display: inline-grid !important;
    place-items: center !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    clip-path: none !important;
    background: transparent !important;
    color: #f6c95a !important;
    box-shadow: none !important;
    text-shadow: none !important;
    filter: drop-shadow(0 0 7px rgba(246,201,90,.22)) !important;
    transform: none !important;
    overflow: visible !important;
}
#alastar-site-chat .portal-chat-title-v19.portal-box-title-v14 > i::before {
    position: static !important;
}
#alastar-site-chat .portal-chat-title-v19.portal-box-title-v14 > i::after {
    content: none !important;
    display: none !important;
}

/* Icones de secao voltam ao quadrado azul da referencia. */
#alastar-site-chat .portal-chat-section-icon-v53 {
    width: 31px !important;
    height: 31px !important;
    min-width: 31px !important;
    flex: 0 0 31px !important;
    border: 1px solid rgba(61, 157, 245, .30) !important;
    border-radius: 9px !important;
    clip-path: none !important;
    color: #8ddcff !important;
    background: rgba(28, 103, 169, .15) !important;
    box-shadow: none !important;
    filter: none !important;
    transform: none !important;
}
#alastar-site-chat .portal-chat-section-icon-v53 i {
    color: #8ddcff !important;
    text-shadow: none !important;
    filter: none !important;
}

/* 2) REMOVE A CAMADA/MOLDURA MARROM FISICA DO V96 DE TODOS OS BOTOES DO CHAT. */
#alastar-site-chat button,
#alastar-site-chat [role="button"] {
    -webkit-appearance: none !important;
    appearance: none !important;
    filter: none !important;
    transform: none !important;
    background-clip: padding-box !important;
}
#alastar-site-chat button::before,
#alastar-site-chat button::after,
#alastar-site-chat [role="button"]::before,
#alastar-site-chat [role="button"]::after {
    content: none !important;
    display: none !important;
    border: 0 !important;
    background: none !important;
    box-shadow: none !important;
}

/* Abas superiores: azul escuro, tamanho original do chat, sem regra 50px do V106. */
#alastar-site-chat .portal-community-tab-v31 {
    min-height: 46px !important;
    height: 46px !important;
    padding: 7px 12px !important;
    border: 1px solid rgba(74,158,242,.16) !important;
    background: linear-gradient(180deg, rgba(13,31,52,.72), rgba(5,13,24,.82)) !important;
    box-shadow: none !important;
    transform: none !important;
}
#alastar-site-chat .portal-community-tab-v31.is-active {
    border-color: rgba(62,168,255,.48) !important;
    background: linear-gradient(180deg, rgba(18,60,100,.62), rgba(7,23,43,.92)) !important;
    box-shadow: inset 0 -2px 0 rgba(246,201,90,.88) !important;
}

/* Lista/criacao de sala: dimensoes proprias, sem herdar botao gigante da Home. */
#alastar-site-chat .portal-chat-room-create-v53 {
    min-height: 38px !important;
    height: 38px !important;
    font-size: .70rem !important;
    border-color: rgba(57,168,255,.42) !important;
    background: linear-gradient(180deg, rgba(12,69,115,.70), rgba(7,36,68,.91)) !important;
    color: #95e2ff !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.045) !important;
}
#alastar-site-chat .portal-chat-room-create-v53:hover,
#alastar-site-chat .portal-chat-room-create-v53:focus-visible {
    border-color: rgba(91,199,255,.70) !important;
    background: linear-gradient(180deg, rgba(17,95,157,.88), rgba(7,45,84,.98)) !important;
    box-shadow: none !important;
}
#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-close-v33,
#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-manage-v51 {
    min-height: 28px !important;
    height: 28px !important;
    font-size: .62rem !important;
    box-shadow: none !important;
}

/* Seletor de personagem: azul escuro com acento dourado, sem fundo marrom. */
#alastar-site-chat .portal-chat-nick-side-button-v54 {
    min-height: 38px !important;
    height: 38px !important;
    font-size: .78rem !important;
    color: #ffe18b !important;
    border-color: rgba(69,166,247,.42) !important;
    background: linear-gradient(180deg, #103557, #071d34) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.05) !important;
}
#alastar-site-chat .portal-chat-nick-side-button-v54:hover,
#alastar-site-chat .portal-chat-nick-side-button-v54:focus-visible,
#alastar-site-chat .portal-chat-nick-side-button-v54.is-active {
    color: #fff0b0 !important;
    border-color: rgba(90,190,255,.68) !important;
    background: linear-gradient(180deg, #15466f, #0a2948) !important;
    box-shadow: 0 0 0 2px rgba(48,158,236,.07) !important;
    transform: none !important;
}

/* Cabecalho da sala / fullscreen / gerenciar. */
#alastar-site-chat .portal-chat-head-action-v53,
#alastar-site-chat .portal-chat-tool-v51 {
    min-height: 34px !important;
    height: 34px !important;
    width: 34px !important;
    min-width: 34px !important;
    font-size: .72rem !important;
    color: #b8e8ff !important;
    border-color: rgba(79,171,252,.30) !important;
    background: linear-gradient(180deg, #103557, #071d34) !important;
    box-shadow: none !important;
}
#alastar-site-chat .portal-chat-head-action-v53:hover,
#alastar-site-chat .portal-chat-tool-v51:hover,
#alastar-site-chat .portal-chat-head-action-v53:focus-visible,
#alastar-site-chat .portal-chat-tool-v51:focus-visible {
    color: #fff0b0 !important;
    border-color: rgba(83,187,255,.60) !important;
    background: linear-gradient(180deg, #15466f, #0a2948) !important;
    box-shadow: none !important;
    transform: none !important;
}

/* Composer: Emoji/Presente/Enviar permanecem alinhados e azuis. */
#alastar-site-chat .portal-chat-action-button-v53 {
    min-height: 44px !important;
    height: 44px !important;
    font-size: .90rem !important;
    color: #8edcff !important;
    border-color: rgba(80,171,251,.28) !important;
    background: linear-gradient(180deg, #103557, #071d34) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04) !important;
}
#alastar-site-chat .portal-chat-action-button-v53:hover,
#alastar-site-chat .portal-chat-action-button-v53:focus-visible,
#alastar-site-chat .portal-chat-action-button-v53.is-active {
    color: #ffe28a !important;
    border-color: rgba(76,181,249,.52) !important;
    background: linear-gradient(180deg, #15466f, #0a2948) !important;
    box-shadow: none !important;
    transform: none !important;
}
#alastar-site-chat .portal-chat-send-v53,
#alastar-site-chat .portal-chat-send-v53.al-btn-primary {
    min-height: 48px !important;
    height: 48px !important;
    min-width: 88px !important;
    font-size: .70rem !important;
    color: #f5fbff !important;
    border: 1px solid rgba(71,183,255,.62) !important;
    background: linear-gradient(180deg, #1678c4, #0d4a88) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.14), 0 0 15px rgba(39,148,239,.11) !important;
}
#alastar-site-chat .portal-chat-send-v53:hover,
#alastar-site-chat .portal-chat-send-v53:focus-visible {
    color: #fff !important;
    border-color: rgba(112,205,255,.88) !important;
    background: linear-gradient(180deg, #1d8add, #0e579d) !important;
    box-shadow: 0 0 0 2px rgba(48,158,236,.07) !important;
    transform: none !important;
}

/* Controles de dono/Admin: recupera tamanho compacto da referencia. */
#alastar-site-chat .portal-chat-control-button-v53 {
    min-height: 37px !important;
    height: auto !important;
    padding: 7px 8px !important;
    font-size: .58rem !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.035) !important;
    transform: none !important;
    filter: none !important;
}
#alastar-site-chat .portal-chat-control-button-v53:not(.is-danger):not(.is-success) {
    color: #d9efff !important;
    border-color: rgba(70,164,247,.34) !important;
    background: linear-gradient(180deg, rgba(16,64,104,.82), rgba(7,33,59,.96)) !important;
}
#alastar-site-chat .portal-chat-control-button-v53.is-danger {
    color: #ffe1dc !important;
    border-color: rgba(255,84,75,.42) !important;
    background: linear-gradient(180deg, rgba(164,34,36,.88), rgba(80,17,23,.95)) !important;
}
#alastar-site-chat .portal-chat-control-button-v53.is-success {
    color: #dfffea !important;
    border-color: rgba(55,222,129,.43) !important;
    background: linear-gradient(180deg, rgba(19,120,64,.84), rgba(8,61,39,.96)) !important;
}
#alastar-site-chat .portal-chat-control-button-v53:hover:not(:disabled),
#alastar-site-chat .portal-chat-control-button-v53:focus-visible:not(:disabled) {
    transform: none !important;
    filter: brightness(1.07) !important;
    box-shadow: none !important;
}

/* Call: remove a moldura marrom tambem em fullscreen, nao apenas na janela. */
#alastar-site-chat .portal-chat-call-controls-v53 .portal-voice-control-v34 {
    -webkit-appearance: none !important;
    appearance: none !important;
    border: 1px solid #215f91 !important;
    background: linear-gradient(180deg, #103557 0%, #09253f 52%, #061a2f 100%) !important;
    color: #e6f5ff !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08), inset 0 -1px 0 rgba(36,143,224,.10) !important;
    filter: none !important;
    transform: none !important;
}
#alastar-site-chat .portal-chat-call-controls-v53 .portal-voice-control-v34.is-active {
    border-color: #319ce1 !important;
    background: linear-gradient(180deg, #144b78 0%, #0a3459 52%, #07233e 100%) !important;
}
#alastar-site-chat .portal-chat-call-controls-v53 .portal-voice-leave-v34 {
    border-color: #8f3434 !important;
    background: linear-gradient(180deg, #4f1d22 0%, #35141a 54%, #251016 100%) !important;
    color: #ffd9d5 !important;
}
#alastar-site-chat .portal-chat-call-controls-v53 .portal-voice-join-v53,
#alastar-site-chat .portal-chat-call-controls-v53 .portal-voice-join-v53.al-btn-primary {
    min-height: 36px !important;
    height: 36px !important;
    font-size: .66rem !important;
    border-color: rgba(71,183,255,.52) !important;
    background: linear-gradient(180deg, #1678c4, #0d4a88) !important;
    color: #f5fbff !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.10) !important;
}
#alastar-site-chat.is-fullscreen-v51 .portal-chat-call-controls-v53 .portal-voice-control-v34 {
    min-height: 34px !important;
    height: 34px !important;
    font-size: .58rem !important;
}

/* Modais pertencentes ao chat tambem deixam de herdar o botao laranja global. */
#alastar-site-chat .portal-room-dialog-v33 .al-btn-primary,
#alastar-site-chat .portal-gift-card-v52 .al-btn-primary {
    border-color: rgba(71,183,255,.62) !important;
    background: linear-gradient(180deg, #1678c4, #0d4a88) !important;
    color: #f5fbff !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.12) !important;
}
#alastar-site-chat .portal-room-dialog-v33 .al-btn-outline {
    border-color: rgba(79,171,252,.40) !important;
    background: linear-gradient(180deg, #103557, #071d34) !important;
    color: #dff4ff !important;
    box-shadow: none !important;
}

/* 3) RESTAURA "NA SALA" DA REFERENCIA TAMBEM NA JANELA NORMAL.               */
/* V117 escondia esse cabecalho somente no minimizado; a referencia aprovada  */
/* o mantinha visivel. A lista volta a iniciar abaixo do cabecalho.            */
#alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51)
.portal-chat-members-panel-v53 > .portal-chat-members-head-v53 {
    display: flex !important;
    visibility: visible !important;
    width: 100% !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 52px !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 8px 10px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(68,158,241,.15) !important;
    overflow: visible !important;
    flex: 0 0 auto !important;
}
#alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51)
.portal-chat-members-panel-v53 {
    row-gap: 0 !important;
    border-top: 0 !important;
}
#alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51)
.portal-chat-members-panel-v53 > .portal-chat-members-list-v53 {
    margin-top: 0 !important;
    padding-top: 8px !important;
    align-content: start !important;
}

/* 4) BLOQUEIO DE GEOMETRIA: ADMIN/STAFF/DONO E PLAYER NAO HERDAM TAMANHOS V106. */
@media (min-width: 1101px) {
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53,
    body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53 {
        grid-template-columns: minmax(190px, 24%) minmax(0, 1fr) minmax(190px, 23%) !important;
        grid-template-rows: minmax(0, 1fr) !important;
        gap: 1px !important;
        align-items: stretch !important;
        overflow: hidden !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53 {
        height: var(--alastar-chat-normal-height-v66, clamp(570px, 70vh, 720px)) !important;
        max-height: var(--alastar-chat-normal-height-v66, 720px) !important;
    }

    #alastar-site-chat .portal-chat-sidebar-v53,
    #alastar-site-chat .portal-chat-main-v53,
    #alastar-site-chat .portal-chat-control-sidebar-v53 {
        min-width: 0 !important;
        min-height: 0 !important;
        height: 100% !important;
        max-height: 100% !important;
        overflow: hidden !important;
    }

    #alastar-site-chat .portal-chat-main-v53 {
        display: flex !important;
        flex-direction: column !important;
    }
    #alastar-site-chat .portal-chat-messages-v53 {
        flex: 1 1 0 !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow-y: auto !important;
    }
    #alastar-site-chat .portal-chat-composer-v53 {
        flex: 0 0 auto !important;
        margin-top: auto !important;
    }

    /* Player comum: membros/call continuam na direita, como na V64/V122. */
    #alastar-site-chat.is-player-desktop-v64 .portal-chat-control-sidebar-v53 > .portal-chat-members-panel-v53 {
        flex: 1 1 0 !important;
        min-height: 0 !important;
        max-height: none !important;
        overflow: hidden !important;
    }
}

/* Mobile/tablet: nao forca tres colunas; preserva o empilhamento responsivo. */
@media (max-width: 1100px) {
    #alastar-site-chat .portal-chat-title-v19.portal-box-title-v14 {
        min-height: 52px !important;
        padding: 11px 10px !important;
    }
}

/* V126 - fim */

/* ========================================================================== */
/* V127 - LIMPEZA FINAL DO CHAT: REMOÇÃO DO HALO MARROM + BOTÕES AZUIS        */
/* ========================================================================== */
/* O V96 aplicou um acabamento global com sombra marrom em TODOS os botões do
   chat (#alastar-site-chat button...). O V126 removeu isso de alguns grupos,
   mas ainda sobraram controles com a moldura antiga. O bloco abaixo neutraliza
   a camada marrom para todos os botões do chat e restaura o acabamento azul. */

#alastar-site-chat button:not(.portal-chat-community-tab-v31),
#alastar-site-chat .al-btn,
#alastar-site-chat .portal-chat-control-button-v53,
#alastar-site-chat .portal-voice-control-v34,
#alastar-site-chat .portal-voice-join-v53,
#alastar-site-chat .portal-chat-room-create-v33,
#alastar-site-chat .portal-chat-room-close-v33,
#alastar-site-chat .portal-chat-nick-side-button-v54,
#alastar-site-chat .portal-chat-head-action-v53,
#alastar-site-chat .portal-chat-send-v53 {
    filter: none !important;
    text-shadow: 0 1px 0 rgba(0,0,0,.55) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.08),
        inset 0 -1px 0 rgba(50,135,215,.09),
        0 0 0 1px rgba(8,28,49,.18) !important;
}

#alastar-site-chat .al-btn::before,
#alastar-site-chat .al-btn::after,
#alastar-site-chat button:not(.portal-chat-community-tab-v31)::before,
#alastar-site-chat button:not(.portal-chat-community-tab-v31)::after {
    box-shadow: none !important;
}

/* Pequenos controles do chat: todos em azul, sem base marrom. */
#alastar-site-chat .portal-chat-room-create-v33,
#alastar-site-chat .portal-chat-room-close-v33,
#alastar-site-chat .portal-chat-nick-side-button-v54,
#alastar-site-chat .portal-chat-head-action-v53,
#alastar-site-chat .portal-voice-control-v34,
#alastar-site-chat .portal-voice-join-v53,
#alastar-site-chat .portal-chat-send-v53 {
    border-color: rgba(78,171,247,.36) !important;
    color: #e9f7ff !important;
    background: linear-gradient(180deg, rgba(20,73,116,.95), rgba(9,40,67,.97) 55%, rgba(6,26,45,.99)) !important;
}

#alastar-site-chat .portal-chat-room-create-v33:hover,
#alastar-site-chat .portal-chat-room-create-v33:focus-visible,
#alastar-site-chat .portal-chat-room-close-v33:hover,
#alastar-site-chat .portal-chat-room-close-v33:focus-visible,
#alastar-site-chat .portal-chat-nick-side-button-v54:hover,
#alastar-site-chat .portal-chat-nick-side-button-v54:focus-visible,
#alastar-site-chat .portal-chat-head-action-v53:hover,
#alastar-site-chat .portal-chat-head-action-v53:focus-visible,
#alastar-site-chat .portal-voice-control-v34:hover:not(:disabled),
#alastar-site-chat .portal-voice-control-v34:focus-visible,
#alastar-site-chat .portal-voice-join-v53:hover:not(:disabled),
#alastar-site-chat .portal-voice-join-v53:focus-visible,
#alastar-site-chat .portal-chat-send-v53:hover,
#alastar-site-chat .portal-chat-send-v53:focus-visible {
    border-color: rgba(107,196,255,.72) !important;
    color: #ffffff !important;
    background: linear-gradient(180deg, rgba(26,92,145,.97), rgba(11,55,90,.98) 55%, rgba(7,34,58,.99)) !important;
    transform: none !important;
}

#alastar-site-chat .portal-chat-nick-side-button-v54.is-active {
    color: #ffffff !important;
    border-color: rgba(111,203,255,.82) !important;
    background: linear-gradient(180deg, rgba(30,100,156,.98), rgba(11,58,95,.99) 56%, rgba(7,37,62,1) 100%) !important;
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.10),
        0 0 0 2px rgba(74,171,244,.08) !important;
}

/* Botões primários do chat devem ser azuis, não laranja. */
#alastar-site-chat .portal-chat-send-v53,
#alastar-site-chat .portal-voice-join-v53 {
    color: #eef9ff !important;
    border-color: #5dbbff !important;
    background: linear-gradient(180deg, #39a5ff 0%, #1b78d9 48%, #0d4a97 100%) !important;
}

#alastar-site-chat .portal-chat-send-v53:hover,
#alastar-site-chat .portal-chat-send-v53:focus-visible,
#alastar-site-chat .portal-voice-join-v53:hover:not(:disabled),
#alastar-site-chat .portal-voice-join-v53:focus-visible {
    border-color: #87d5ff !important;
    background: linear-gradient(180deg, #4ab2ff 0%, #2288eb 48%, #1054a9 100%) !important;
}

/* "Entrar na call" nunca mais pode quebrar em coluna vertical estreita. */
#alastar-site-chat .portal-chat-call-controls-v53 {
    grid-auto-flow: row dense !important;
}

#alastar-site-chat .portal-chat-call-controls-v53 .portal-voice-join-v53 {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 46px !important;
    height: 46px !important;
    padding: 6px 10px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    writing-mode: horizontal-tb !important;
}

#alastar-site-chat .portal-chat-call-controls-v53 .portal-voice-join-v53 i {
    display: inline-flex !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1 !important;
}

/* Texto normal do join button; nada de letras empilhadas. */
#alastar-site-chat .portal-chat-call-controls-v53 .portal-voice-join-v53,
#alastar-site-chat .portal-chat-call-controls-v53 .portal-voice-join-v53 span {
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1.1 !important;
    letter-spacing: .02em !important;
    text-transform: none !important;
}

/* Mic/Aud/Sair permanecem compactos e alinhados. */
#alastar-site-chat .portal-chat-call-controls-v53 .portal-voice-control-v34 {
    min-height: 46px !important;
    height: 46px !important;
}

/* Acentos internos do painel também ficam azuis. */
#alastar-site-chat .portal-chat-room-title-icon-v53,
#alastar-site-chat .portal-chat-announcement-icon-v48,
#alastar-site-chat .portal-chat-section-icon-v53 {
    border-color: rgba(84,174,248,.36) !important;
    color: #9edcff !important;
    background: linear-gradient(180deg, rgba(19,82,133,.34), rgba(8,34,56,.58)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 0 10px rgba(56,153,233,.06) !important;
}

#alastar-site-chat .portal-chat-announcement-v48 {
    border-color: rgba(84,174,248,.26) !important;
    background: linear-gradient(90deg, rgba(10,43,73,.48), rgba(6,24,41,.82)) !important;
}

#alastar-site-chat .portal-chat-room-badge-v53.is-fixed {
    color: #d9f2ff !important;
    border-color: rgba(92,181,251,.34) !important;
    background: rgba(23,88,137,.22) !important;
}

/* Right column action buttons: sem halo marrom antigo. */
#alastar-site-chat .portal-chat-control-button-v53 {
    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.08),
        inset 0 -1px 0 rgba(255,255,255,.04),
        0 0 0 1px rgba(6,23,39,.14) !important;
}

/* Mobile: o join continua horizontal e confortável. */
@media (max-width: 767.98px) {
    #alastar-site-chat .portal-chat-call-controls-v53 .portal-voice-join-v53 {
        min-height: 44px !important;
        height: 44px !important;
        font-size: 11.5px !important;
    }
}

/* ========================================================================== */
/* V128 - LATERAL ESQUERDA EXATA DA REFERENCIA                               */
/* ========================================================================== */
/* Corrige os dois colapsos restantes vistos no print real:
   1) nome da sala comprimido pelos badges/acões;
   2) cabeçalho "NA SALA" reduzido à largura de uma letra.
   Mantém o visual azul V127 e todas as funções atuais. */

/* -------------------------------------------------------------------------- */
/* SALAS: ícone + nome sempre visível + contador/voz/badge; gerenciar fora.  */
/* -------------------------------------------------------------------------- */
#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-entry-v33 {
    width: 100% !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto auto !important;
    align-items: center !important;
    gap: 4px !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 {
    width: 100% !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: 18px minmax(38px, 1fr) auto auto auto !important;
    align-items: center !important;
    column-gap: 4px !important;
    padding: 5px 6px !important;
    overflow: hidden !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 > i:first-child {
    width: 18px !important;
    min-width: 18px !important;
    font-size: 11px !important;
}

#alastar-site-chat .portal-chat-room-copy-v62 {
    min-width: 38px !important;
    width: auto !important;
    display: block !important;
    overflow: hidden !important;
}

#alastar-site-chat .portal-chat-room-copy-v62 > strong {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    writing-mode: horizontal-tb !important;
    font-size: 11px !important;
    line-height: 1.1 !important;
}

/* Na referência aprovada a lista lateral mostra o nome limpo da sala.
   O texto secundário continua disponível no title/tooltip do botão. */
#alastar-site-chat .portal-chat-room-copy-v62 > small {
    display: none !important;
}

#alastar-site-chat .portal-chat-room-count-v53 {
    flex: 0 0 auto !important;
    min-width: 18px !important;
    width: auto !important;
    height: 17px !important;
    padding: 0 4px !important;
    font-size: 8.5px !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-voice-v34 {
    flex: 0 0 auto !important;
    width: 12px !important;
    margin: 0 !important;
    font-size: 9px !important;
    text-align: center !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-pill-v33 em {
    flex: 0 0 auto !important;
    min-width: 22px !important;
    min-height: 16px !important;
    padding: 1px 4px !important;
    font-size: 7px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

#alastar-site-chat .portal-chat-room-list-v53 .portal-chat-room-close-v33 {
    width: 24px !important;
    min-width: 24px !important;
    height: 24px !important;
    padding: 0 !important;
    align-self: center !important;
}

/* -------------------------------------------------------------------------- */
/* NA SALA: réplica estrutural da referência.                                 */
/* -------------------------------------------------------------------------- */
#alastar-site-chat .portal-chat-members-panel-v53 > .portal-chat-members-head-v53,
#alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-members-panel-v53 > .portal-chat-members-head-v53 {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 54px !important;
    height: 54px !important;
    padding: 7px 8px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    column-gap: 7px !important;
    overflow: hidden !important;
}

#alastar-site-chat .portal-chat-members-head-v53 > div:first-child {
    width: 100% !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: 30px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 7px !important;
    flex: 1 1 auto !important;
    overflow: hidden !important;
}

#alastar-site-chat .portal-chat-members-head-v53 > div:first-child > .portal-voice-icon-v34 {
    grid-column: 1 !important;
    width: 30px !important;
    min-width: 30px !important;
    height: 30px !important;
    flex: 0 0 30px !important;
    margin: 0 !important;
}

#alastar-site-chat .portal-chat-members-head-v53 > div:first-child > div {
    grid-column: 2 !important;
    width: 100% !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 2px !important;
    overflow: hidden !important;
}

#alastar-site-chat .portal-chat-members-head-v53 strong,
#alastar-site-chat .portal-chat-members-head-v53 small {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

#alastar-site-chat .portal-chat-members-head-v53 strong {
    font-size: 10px !important;
    line-height: 1.05 !important;
    letter-spacing: .04em !important;
}

#alastar-site-chat .portal-chat-members-head-v53 small {
    font-size: 8px !important;
    line-height: 1.1 !important;
}

#alastar-site-chat .portal-chat-members-head-v53 > .portal-voice-count-v34,
#alastar-site-chat .portal-chat-members-head-v53 .portal-voice-count-v34 {
    justify-self: end !important;
    align-self: center !important;
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 58px !important;
    max-width: 72px !important;
    min-height: 27px !important;
    height: 27px !important;
    padding: 3px 6px !important;
    margin: 0 !important;
    white-space: nowrap !important;
    font-size: 8.5px !important;
    line-height: 1 !important;
}

/* Lista de jogadores imediatamente abaixo, como no print de referência. */
#alastar-site-chat .portal-chat-members-panel-v53 > .portal-chat-members-list-v53 {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 6px 7px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 4px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}

#alastar-site-chat .portal-chat-members-list-v53 .portal-room-member-v51 {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 32px !important;
    display: grid !important;
    grid-template-columns: 18px minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 6px !important;
    overflow: hidden !important;
}

#alastar-site-chat .portal-chat-members-list-v53 .portal-room-member-v51 strong,
#alastar-site-chat .portal-chat-members-list-v53 .portal-room-member-v51 small {
    min-width: 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    writing-mode: horizontal-tb !important;
}

/* -------------------------------------------------------------------------- */
/* CALL: rodapé fixo igual à referência.                                      */
/* -------------------------------------------------------------------------- */
#alastar-site-chat .portal-chat-call-controls-v53 {
    width: 100% !important;
    min-width: 0 !important;
    flex: 0 0 auto !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    gap: 5px !important;
    padding: 7px !important;
    margin-top: auto !important;
    overflow: hidden !important;
}

/* Quando ainda não entrou na call, o botão ocupa a mesma faixa do rodapé,
   sem invadir a lista e sem empilhar letras. */
#alastar-site-chat .portal-chat-call-controls-v53 .portal-voice-join-v53 {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 38px !important;
    height: 38px !important;
    padding: 5px 8px !important;
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    writing-mode: horizontal-tb !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    font-size: 10px !important;
    line-height: 1 !important;
}

#alastar-site-chat .portal-chat-call-controls-v53 .portal-voice-control-v34 {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 38px !important;
    height: 38px !important;
    padding: 4px 2px !important;
}

/* Não deixar regras globais transformarem textos da lateral em colunas. */
#alastar-site-chat .portal-chat-sidebar-v53,
#alastar-site-chat .portal-chat-sidebar-v53 * {
    text-orientation: mixed;
}

/* Em qualquer zoom desktop, a lateral deve manter espaço útil para o desenho
   aprovado. O centro é quem cede largura antes da lateral. */
@media (min-width: 1101px) {
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53,
    body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53 {
        grid-template-columns: minmax(198px, 24%) minmax(0, 1fr) minmax(190px, 23%) !important;
    }
}

/* Tablet: também preserva uma lateral útil, sem quebrar NA SALA. */
@media (min-width: 768px) and (max-width: 1100.98px) {
    #alastar-site-chat .portal-chat-workspace-v53,
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-workspace-v53,
    body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-workspace-v53 {
        grid-template-columns: minmax(198px, 31%) minmax(0, 1fr) !important;
    }
}

/* V128 - fim */

/* ========================================================================== */
/* V129 - CABEÇALHO NA SALA LIMPO + LISTA DE MEMBROS MAIS COMPACTA            */
/* ========================================================================== */
/* Remove o quadrado/ícone redundante do cabeçalho "NA SALA" e economiza
   altura em cada jogador para exibir mais membros sem quebrar a lateral. */

/* Remove por completo o quadrado de pessoas à esquerda do cabeçalho. */
#alastar-site-chat .portal-chat-members-head-v53 .portal-voice-icon-v34 {
    display: none !important;
    width: 0 !important;
    min-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: none !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

/* Faixa NA SALA mais baixa: texto à esquerda + contador à direita. */
#alastar-site-chat .portal-chat-members-panel-v53 > .portal-chat-members-head-v53,
#alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-members-panel-v53 > .portal-chat-members-head-v53 {
    min-height: 40px !important;
    height: 40px !important;
    padding: 4px 7px !important;
    grid-template-columns: minmax(0,1fr) auto !important;
    column-gap: 6px !important;
}

#alastar-site-chat .portal-chat-members-head-v53 > div:first-child {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    grid-template-columns: none !important;
    gap: 0 !important;
    overflow: hidden !important;
}

#alastar-site-chat .portal-chat-members-head-v53 > div:first-child > div {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: flex-start !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 1px !important;
}

#alastar-site-chat .portal-chat-members-head-v53 strong {
    font-size: 9.5px !important;
    line-height: 1 !important;
}

#alastar-site-chat .portal-chat-members-head-v53 small {
    font-size: 7.5px !important;
    line-height: 1.05 !important;
}

/* Contador também fica um pouco menor, sem perder legibilidade. */
#alastar-site-chat .portal-chat-members-head-v53 > .portal-voice-count-v34,
#alastar-site-chat .portal-chat-members-head-v53 .portal-voice-count-v34 {
    min-width: 55px !important;
    max-width: 68px !important;
    min-height: 23px !important;
    height: 23px !important;
    padding: 2px 5px !important;
    border-radius: 6px !important;
    font-size: 8px !important;
}

/* A lista usa menos padding e menos intervalo entre jogadores. */
#alastar-site-chat .portal-chat-members-panel-v53 > .portal-chat-members-list-v53 {
    padding: 4px 6px !important;
    gap: 2px !important;
}

/* Cards de jogador mais finos. */
#alastar-site-chat .portal-chat-members-list-v53 .portal-room-member-v51 {
    min-height: 26px !important;
    height: 26px !important;
    padding: 2px 5px !important;
    grid-template-columns: 14px minmax(0,1fr) auto !important;
    gap: 4px !important;
    border-radius: 5px !important;
    box-sizing: border-box !important;
}

#alastar-site-chat .portal-chat-members-list-v53 .portal-room-member-v51 > i {
    width: 14px !important;
    min-width: 14px !important;
    font-size: 7px !important;
    text-align: center !important;
}

#alastar-site-chat .portal-chat-members-list-v53 .portal-room-member-v51 strong {
    font-size: 10px !important;
    line-height: 1 !important;
}

#alastar-site-chat .portal-chat-members-list-v53 .portal-room-member-v51 small {
    font-size: 7.5px !important;
    line-height: 1 !important;
}

/* O rodapé da call continua ancorado embaixo; a altura economizada vai para
   a lista de membros, não para os controles. */
#alastar-site-chat .portal-chat-members-panel-v53 {
    min-height: 0 !important;
}

#alastar-site-chat .portal-chat-members-list-v53 {
    flex: 1 1 0 !important;
    min-height: 0 !important;
    overflow-y: auto !important;
}

/* V129 - fim */

/* ========================================================================== */
/* V130 - REMOVER FAIXA "NA SALA / CALL DISPONIVEL / X NA SALA"              */
/* ========================================================================== */
/* Libera espaço vertical na coluna esquerda: a lista de jogadores começa
   imediatamente após o bloco anterior. A presença/call continua funcional;
   somente o cabeçalho visual redundante é ocultado. */
#alastar-site-chat .portal-chat-members-panel-v53 > .portal-chat-members-head-v53,
#alastar-site-chat.portal-community-v31:not(.is-fullscreen-v51) .portal-chat-members-panel-v53 > .portal-chat-members-head-v53,
body > #alastar-site-chat.is-fullscreen-v51 .portal-chat-members-panel-v53 > .portal-chat-members-head-v53 {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
}

#alastar-site-chat .portal-chat-members-panel-v53 {
    row-gap: 0 !important;
}

#alastar-site-chat .portal-chat-members-panel-v53 > .portal-chat-members-list-v53 {
    margin-top: 0 !important;
    padding-top: 4px !important;
}

/* V130 - fim */

/* ========================================================================== */
/* V131 - CALL NO RODAPÉ / MAIS ESPAÇO PARA MEMBROS                           */
/* ========================================================================== */
/* Corrige a regressão causada por display:inline-flex !important no botão
   Entrar na call. O atributo HTML hidden volta a ser respeitado: desconectado
   mostra só Entrar na call; conectado mostra somente Mic / Aud / Sair. */
#alastar-site-chat #alastar-voice-join[hidden],
#alastar-site-chat #alastar-voice-mute[hidden],
#alastar-site-chat #alastar-voice-deafen[hidden],
#alastar-site-chat #alastar-voice-leave[hidden] {
    display: none !important;
}

/* Mantém o rodapé de voz o mais baixo possível, inteiramente dentro do painel,
   reduzindo o espaço consumido acima. */
#alastar-site-chat .portal-chat-call-controls-v53 {
    flex: 0 0 auto !important;
    margin-top: auto !important;
    margin-bottom: 0 !important;
    padding: 3px 6px 4px !important;
    gap: 4px !important;
    align-self: stretch !important;
    box-sizing: border-box !important;
}

/* Desconectado: somente uma faixa baixa no rodapé. */
#alastar-site-chat .portal-chat-call-controls-v53 .portal-voice-join-v53:not([hidden]) {
    display: inline-flex !important;
    grid-column: 1 / -1 !important;
    min-height: 34px !important;
    height: 34px !important;
    margin: 0 !important;
    padding: 4px 8px !important;
}

/* Conectado: três botões compactos, alinhados na base. */
#alastar-site-chat .portal-chat-call-controls-v53 .portal-voice-control-v34:not([hidden]) {
    display: flex !important;
    min-height: 34px !important;
    height: 34px !important;
    margin: 0 !important;
    padding: 3px 2px !important;
}

#alastar-site-chat .portal-chat-call-controls-v53 .portal-voice-control-v34:not([hidden]) i {
    margin-bottom: 2px !important;
    font-size: 10px !important;
}

#alastar-site-chat .portal-chat-call-controls-v53 .portal-voice-control-v34:not([hidden]) span {
    font-size: 8px !important;
    line-height: 1 !important;
}

/* A lista recebe todo o espaço vertical recuperado. */
#alastar-site-chat .portal-chat-members-panel-v53 > .portal-chat-members-list-v53 {
    flex: 1 1 0 !important;
    min-height: 0 !important;
    padding-bottom: 2px !important;
}

/* V131 - fim */


/* ========================================================================== */
/* V132 - SISTEMA DE CONVITES / LINK PESSOAL / 10.000 DONATES                 */
/* ========================================================================== */
.nav-invite-item-v132 {
    position: relative;
    display: flex;
    align-items: center;
}
.nav-invite-link-v132 {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 42px !important;
    min-width: 42px !important;
    height: 42px !important;
    margin: 0 2px !important;
    padding: 0 !important;
    border: 1px solid rgba(255,153,55,.44) !important;
    border-radius: 11px !important;
    background: linear-gradient(145deg,rgba(255,120,25,.18),rgba(24,111,205,.14)) !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.025),0 5px 16px rgba(0,0,0,.28) !important;
    color: #ffd08b !important;
    overflow: visible !important;
}
.nav-invite-link-v132 > i {
    font-size: 17px !important;
    filter: drop-shadow(0 0 7px rgba(255,132,37,.3));
}
.nav-invite-link-v132:hover,
.nav-invite-link-v132:focus,
.nav-invite-link-v132.active {
    color: #fff3d7 !important;
    border-color: rgba(255,183,87,.86) !important;
    background: linear-gradient(145deg,rgba(255,128,28,.34),rgba(35,132,232,.24)) !important;
    transform: translateY(-1px);
}
.nav-invite-mobile-label-v132 { display:none; }
.nav-invite-tooltip-v132 {
    position:absolute;
    left:50%;
    top:calc(100% + 9px);
    z-index:1300;
    transform:translate(-50%,-4px);
    display:block;
    min-width:max-content;
    padding:7px 10px;
    border:1px solid rgba(255,164,63,.45);
    border-radius:8px;
    background:rgba(6,12,24,.97);
    box-shadow:0 10px 28px rgba(0,0,0,.48),inset 0 0 0 1px rgba(58,151,241,.08);
    color:#ffe0a8;
    font-size:11px;
    font-weight:800;
    line-height:1;
    letter-spacing:.02em;
    white-space:nowrap;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .16s ease,transform .16s ease,visibility .16s ease;
}
.nav-invite-link-v132:hover .nav-invite-tooltip-v132,
.nav-invite-link-v132:focus .nav-invite-tooltip-v132 {
    opacity:1;
    visibility:visible;
    transform:translate(-50%,0);
}

.invite-page-v132 { min-height:70vh; }
.invite-page-header-v132 { text-align:center; }
.invite-page-header-v132 .container { max-width:960px; }
.invite-page-header-v132 .lead { max-width:820px; margin:14px auto 0; }
.invite-page-header-v132 .lead strong { color:#ffc56b; }
.invite-hero-icon-v132 {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:72px;
    height:72px;
    margin:0 auto 13px;
    border:1px solid rgba(255,157,56,.5);
    border-radius:20px;
    background:radial-gradient(circle at 32% 25%,rgba(255,171,70,.3),transparent 47%),linear-gradient(145deg,rgba(28,91,163,.32),rgba(31,11,6,.92));
    box-shadow:0 12px 35px rgba(0,0,0,.38),0 0 30px rgba(35,137,233,.15),inset 0 0 22px rgba(255,125,25,.1);
    color:#ffd28b;
    font-size:31px;
}
.invite-shell-v132 { max-width:1120px; }
.invite-card-v132,
.invite-login-card-v132,
.invite-history-v132,
.invite-security-note-v132 {
    border:1px solid rgba(255,150,49,.28);
    background:linear-gradient(150deg,rgba(8,21,42,.94),rgba(17,10,8,.96) 72%);
    box-shadow:0 18px 52px rgba(0,0,0,.36),inset 0 0 0 1px rgba(64,153,238,.055);
}
.invite-card-v132 { padding:28px; border-radius:20px; }
.invite-card-title-v132 { display:flex; align-items:center; gap:14px; margin-bottom:22px; }
.invite-card-title-v132 > span {
    display:flex; align-items:center; justify-content:center; flex:0 0 50px; width:50px; height:50px;
    border-radius:14px; border:1px solid rgba(255,169,75,.42); background:rgba(255,128,28,.1); color:#ffc778; font-size:21px;
}
.invite-card-title-v132 small,
.invite-history-head-v132 small { display:block; color:#53b9ff; font-size:10px; font-weight:900; letter-spacing:.18em; }
.invite-card-title-v132 h2,
.invite-history-head-v132 h3 { margin:3px 0 0; color:#f3d59b; }
.invite-link-box-v132 { padding:18px; border:1px solid rgba(83,157,239,.22); border-radius:15px; background:rgba(4,14,29,.64); }
.invite-link-box-v132 label { display:block; margin-bottom:8px; color:#dbeafd; font-size:12px; font-weight:800; }
.invite-link-control-v132 { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; }
.invite-link-control-v132 input {
    width:100%; min-width:0; height:48px; padding:0 14px; border:1px solid rgba(90,168,241,.35); border-radius:11px;
    background:#071427; color:#cfe8ff; outline:none; font-size:13px; font-weight:700; box-shadow:inset 0 2px 12px rgba(0,0,0,.24);
}
.invite-link-control-v132 input:focus { border-color:rgba(255,160,58,.62); }
.invite-link-control-v132 .al-btn { min-height:48px !important; white-space:nowrap; }
.invite-link-control-v132 .is-copied-v132 { filter:brightness(1.15); }
.invite-copy-status-v132 { display:block; margin-top:8px; color:#8da6c2; font-size:11px; }
.invite-rules-v132 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:18px; }
.invite-rules-v132 > div {
    display:flex; align-items:center; gap:11px; min-width:0; padding:14px; border:1px solid rgba(255,255,255,.06); border-radius:13px; background:rgba(255,255,255,.025);
}
.invite-rules-v132 i { flex:0 0 34px; color:#ffb34c; font-size:19px; text-align:center; }
.invite-rules-v132 span { min-width:0; }
.invite-rules-v132 strong { display:block; color:#ecf5ff; font-size:12px; }
.invite-rules-v132 small { display:block; margin-top:2px; color:#8ca2bb; font-size:10px; }
.invite-stats-v132 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-top:18px; }
.invite-stat-v132 {
    position:relative; overflow:hidden; display:grid; grid-template-columns:38px 1fr auto; align-items:center; gap:10px; min-height:82px; padding:15px 17px;
    border:1px solid rgba(73,151,229,.2); border-radius:16px; background:linear-gradient(145deg,rgba(7,24,49,.88),rgba(18,10,8,.88)); box-shadow:0 10px 28px rgba(0,0,0,.25);
}
.invite-stat-v132 i { color:#53b8ff; font-size:20px; text-align:center; }
.invite-stat-v132 span { color:#9eb3ca; font-size:11px; font-weight:700; }
.invite-stat-v132 strong { color:#ffd18b; font-family:'Cinzel',serif; font-size:20px; }
.invite-history-v132 { margin-top:18px; padding:22px; border-radius:18px; }
.invite-history-head-v132 { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:16px; }
.invite-pending-v132 { display:inline-flex; align-items:center; gap:6px; padding:7px 10px; border:1px solid rgba(255,171,73,.34); border-radius:999px; color:#ffc778; background:rgba(255,140,33,.08); font-size:10px; font-weight:800; }
.invite-history-table-wrap-v132 { overflow-x:auto; border:1px solid rgba(255,255,255,.055); border-radius:12px; }
.invite-history-table-v132 { width:100%; min-width:620px; border-collapse:collapse; }
.invite-history-table-v132 th { padding:11px 13px; background:rgba(18,47,82,.58); color:#95bce2; font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.invite-history-table-v132 td { padding:12px 13px; border-top:1px solid rgba(255,255,255,.05); color:#dbe7f4; font-size:11px; }
.invite-history-table-v132 td:first-child { font-weight:800; color:#f1d69d; }
.invite-history-table-v132 td:first-child i { margin-right:6px; color:#58b8f7; }
.invite-status-v132 { display:inline-flex; align-items:center; gap:5px; padding:5px 8px; border-radius:999px; font-size:9px; font-weight:900; text-transform:uppercase; letter-spacing:.04em; }
.invite-status-v132.is-credited-v132 { color:#8ef2b8; background:rgba(34,189,101,.1); border:1px solid rgba(47,211,119,.25); }
.invite-status-v132.is-pending-v132 { color:#ffd07f; background:rgba(255,156,39,.09); border:1px solid rgba(255,169,61,.24); }
.invite-empty-v132 { display:flex; align-items:center; justify-content:center; gap:10px; min-height:96px; color:#819bb6; font-size:12px; text-align:center; }
.invite-empty-v132 i { color:#4caef4; font-size:20px; }
.invite-security-note-v132 { display:flex; align-items:flex-start; gap:13px; margin-top:18px; padding:16px 18px; border-radius:15px; }
.invite-security-note-v132 > i { margin-top:2px; color:#ffb85a; font-size:22px; }
.invite-security-note-v132 strong { display:block; margin-bottom:3px; color:#f0d5a0; font-size:12px; }
.invite-security-note-v132 span { display:block; color:#8fa5bc; font-size:10.5px; line-height:1.55; }
.invite-login-card-v132 { max-width:660px; margin:0 auto; padding:38px 28px; border-radius:20px; text-align:center; }
.invite-login-icon-v132 { display:flex; align-items:center; justify-content:center; width:64px; height:64px; margin:0 auto 15px; border-radius:18px; background:rgba(42,125,206,.12); border:1px solid rgba(70,157,236,.3); color:#61c1ff; font-size:25px; }
.invite-login-card-v132 h2 { color:#efd49d; }
.invite-login-card-v132 p { max-width:480px; margin:8px auto 20px; color:#9bb0c6; }
.invite-alert-v132 { max-width:760px; margin:0 auto; }

@media (max-width:1399.98px) {
    .nav-invite-item-v132 { width:100%; }
    .nav-invite-link-v132 { width:100% !important; min-width:0 !important; height:auto !important; min-height:42px !important; justify-content:flex-start !important; gap:9px !important; padding:9px 12px !important; margin:1px 0 !important; }
    .nav-invite-mobile-label-v132 { display:inline !important; }
    .nav-invite-tooltip-v132 { display:none !important; }
}
@media (max-width:767.98px) {
    .invite-card-v132 { padding:18px; }
    .invite-card-title-v132 { align-items:flex-start; }
    .invite-card-title-v132 h2 { font-size:20px; }
    .invite-link-control-v132 { grid-template-columns:1fr; }
    .invite-link-control-v132 .al-btn { width:100%; }
    .invite-rules-v132,
    .invite-stats-v132 { grid-template-columns:1fr; }
    .invite-stat-v132 { min-height:70px; }
    .invite-history-v132 { padding:16px; }
    .invite-history-head-v132 { align-items:flex-start; flex-direction:column; }
    .invite-security-note-v132 { padding:14px; }
}
@media (prefers-reduced-motion:reduce) {
    .nav-invite-link-v132,.nav-invite-tooltip-v132 { transition:none !important; }
}
/* V132 - fim */


/* V133 - convite compartilhável / preview */
.invite-link-control-v133 { grid-template-columns:minmax(0,1fr) auto; }
.invite-share-actions-v133 { display:flex; flex-wrap:wrap; gap:10px; margin-top:12px; }
.invite-outline-btn-v133 {
    display:inline-flex; align-items:center; justify-content:center; gap:8px;
    min-height:46px !important; padding:11px 16px !important;
    border:1px solid rgba(94,169,241,.35) !important;
    background:linear-gradient(180deg, rgba(9,26,47,.92), rgba(5,14,28,.96)) !important;
    color:#dfefff !important; box-shadow:0 8px 22px rgba(0,0,0,.25);
}
.invite-outline-btn-v133:hover,
.invite-outline-btn-v133:focus { border-color:rgba(255,165,72,.5) !important; color:#fff4dd !important; transform:translateY(-1px); }
.invite-page-v133 .invite-copy-status-v132 { margin-top:10px; }
.invite-landing-shell-v133 { max-width:900px; }
.invite-landing-card-v133 { padding:34px; }
.invite-landing-title-v133 { margin-bottom:12px; }
.invite-landing-copy-v133 { margin:6px 0 18px; color:#9fb6cc; font-size:13px; line-height:1.75; }
.invite-landing-rules-v133 { margin-top:0; }
.invite-landing-actions-v133 { display:flex; flex-wrap:wrap; gap:12px; margin-top:22px; }
.invite-landing-actions-v133 .al-btn,
.invite-landing-actions-v133 .invite-outline-btn-v133 { min-height:50px !important; }
.invite-landing-note-v133 { margin-top:18px; }
.invite-landing-header-v133 .lead strong { color:#ffcf81; }
@media (max-width: 767.98px) {
    .invite-share-actions-v133 { flex-direction:column; }
    .invite-share-actions-v133 > * { width:100%; }
    .invite-landing-actions-v133 { flex-direction:column; }
    .invite-landing-actions-v133 > * { width:100%; }
}


/* ========================================================================== */
/* V139 - LINK DIRETO AO CADASTRO + MENU DE CONVITES NO TOPO                 */
/* ========================================================================== */
.nav-invite-dropdown-v139 { position:relative; }
.nav-invite-trigger-v139 { border:0; cursor:pointer; }
.nav-invite-chevron-v139 {
    display:none;
    margin-left:2px;
    font-size:8px !important;
    opacity:.78;
    transition:transform .16s ease;
}
.nav-invite-listbox-v139 {
    position:absolute;
    top:calc(100% + 10px);
    left:50%;
    z-index:1400;
    width:286px;
    padding:8px;
    border:1px solid rgba(255,166,70,.42);
    border-radius:14px;
    background:linear-gradient(155deg,rgba(6,17,33,.985),rgba(17,9,8,.985));
    box-shadow:0 18px 45px rgba(0,0,0,.52),inset 0 0 0 1px rgba(69,157,242,.07);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transform:translate(-50%,-5px);
    transition:opacity .16s ease,transform .16s ease,visibility .16s ease;
}
.nav-invite-dropdown-v139:hover .nav-invite-listbox-v139,
.nav-invite-dropdown-v139:focus-within .nav-invite-listbox-v139 {
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translate(-50%,0);
}
.nav-invite-dropdown-v139:hover .nav-invite-chevron-v139,
.nav-invite-dropdown-v139:focus-within .nav-invite-chevron-v139 { transform:rotate(180deg); }
.nav-invite-option-v139 {
    display:grid;
    grid-template-columns:38px minmax(0,1fr) 16px;
    align-items:center;
    gap:10px;
    min-height:58px;
    padding:10px 11px;
    border:1px solid transparent;
    border-radius:10px;
    color:#eaf4ff !important;
    text-decoration:none !important;
    transition:background .15s ease,border-color .15s ease,transform .15s ease;
}
.nav-invite-option-v139 + .nav-invite-option-v139 { margin-top:4px; }
.nav-invite-option-v139:hover,
.nav-invite-option-v139:focus {
    background:linear-gradient(135deg,rgba(255,132,32,.13),rgba(50,145,235,.12));
    border-color:rgba(255,169,72,.27);
    transform:translateX(1px);
}
.nav-invite-option-icon-v139 {
    display:flex;
    align-items:center;
    justify-content:center;
    width:36px;
    height:36px;
    border:1px solid rgba(255,163,61,.32);
    border-radius:9px;
    background:rgba(255,130,28,.08);
    color:#ffc16d;
    font-size:14px;
}
.nav-invite-option-v139 > span:nth-child(2) { min-width:0; }
.nav-invite-option-v139 strong {
    display:block;
    color:#f7d99f;
    font-size:11px;
    font-weight:900;
    line-height:1.25;
}
.nav-invite-option-v139 small {
    display:block;
    margin-top:3px;
    color:#90a7c0;
    font-size:9px;
    line-height:1.3;
}
.nav-invite-option-v139 > i:last-child { color:#54b8f7; font-size:10px; }

@media (max-width:1399.98px) {
    .nav-invite-dropdown-v139 { display:block; width:100%; }
    .nav-invite-trigger-v139 { width:100% !important; }
    .nav-invite-chevron-v139 { display:inline-block; margin-left:auto; }
    .nav-invite-listbox-v139 {
        position:static;
        width:100%;
        margin:4px 0 6px;
        padding:5px;
        transform:none;
        display:none;
        opacity:1;
        visibility:visible;
        pointer-events:auto;
        box-shadow:inset 0 0 0 1px rgba(69,157,242,.05);
    }
    .nav-invite-dropdown-v139:hover .nav-invite-listbox-v139,
    .nav-invite-dropdown-v139:focus-within .nav-invite-listbox-v139 { display:block; transform:none; }
    .nav-invite-option-v139 { min-height:50px; }
}
@media (prefers-reduced-motion:reduce) {
    .nav-invite-listbox-v139,
    .nav-invite-option-v139,
    .nav-invite-chevron-v139 { transition:none !important; }
}
/* V139 - fim */

/* ============================================================
   V140 - LOGIN MODAL: AUTOFILL CHROME / EDGE / SAFARI
   Impede o preenchimento automatico de trocar os campos para
   branco/azul-claro e preserva a paleta Alastar.
   ============================================================ */
#loginModal .al-input-group input.form-control:-webkit-autofill,
#loginModal .al-input-group input.form-control:-webkit-autofill:hover,
#loginModal .al-input-group input.form-control:-webkit-autofill:focus,
#loginModal .al-input-group input.form-control:-webkit-autofill:active {
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    caret-color:#ffc55b !important;
    background-color:#071422 !important;
    background-image:none !important;
    -webkit-box-shadow:0 0 0 1000px #071422 inset !important;
    box-shadow:0 0 0 1000px #071422 inset !important;
    border-color:#2c75aa !important;
    -webkit-background-clip:padding-box !important;
    background-clip:padding-box !important;
    transition:background-color 99999s ease-out 0s,color 99999s ease-out 0s !important;
}

#loginModal .al-input-group input.form-control:-webkit-autofill:focus {
    -webkit-box-shadow:0 0 0 1000px #0a1b2d inset, inset 0 0 0 1px rgba(255,170,69,.32) !important;
    box-shadow:0 0 0 1000px #0a1b2d inset, inset 0 0 0 1px rgba(255,170,69,.32) !important;
    border-color:#f59b3b !important;
}

#loginModal .al-input-group input.form-control:autofill,
#loginModal .al-input-group input.form-control:autofill:hover,
#loginModal .al-input-group input.form-control:autofill:focus {
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    caret-color:#ffc55b !important;
    background:#071422 !important;
    box-shadow:0 0 0 1000px #071422 inset !important;
    border-color:#2c75aa !important;
}

#loginModal .al-input-group input.form-control:-webkit-autofill::first-line {
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    font:600 16px/1.3 'Inter',sans-serif !important;
}

/* =====================================================================
   V141 - Loja Donate integrada + seletor Pacotes/Loja Donate
   ===================================================================== */
.store-listbox-v141 .store-listbox-primary-v141 {
    display:grid;
    grid-template-columns:1fr;
    gap:7px;
    padding:10px 10px 4px;
    border-bottom:1px solid rgba(255,184,87,.16);
}
.store-listbox-v141 .store-primary-option-v141 {
    border:1px solid rgba(76,168,242,.18);
    background:linear-gradient(180deg,rgba(17,39,68,.92),rgba(8,22,42,.96));
}
.store-listbox-v141 .store-primary-option-v141:first-child { border-color:rgba(255,163,65,.28); }
.store-listbox-v141 .store-primary-option-v141:hover,
.store-listbox-v141 .store-primary-option-v141:focus { border-color:rgba(255,187,91,.55); transform:translateY(-1px); }

.game-store-top-switch-wrap-v141 { padding-top:110px; padding-bottom:14px; }
.game-store-page-v141 { min-height:75vh; }
.game-store-header-v141 .container { max-width:1180px; text-align:center; }
.game-store-header-v141 h1 { color:#f3d59b; }
.game-store-header-v141 h1 i { color:#57c0ff; margin-right:8px; }
.game-store-header-v141 .lead { max-width:950px; margin:12px auto 0; color:#a9bfd4; }
.game-store-header-v141 .lead strong { color:#ffd184; }
.game-store-switch-v141 {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    max-width:760px;
    margin:22px auto 0;
}
.game-store-switch-link-v141 {
    display:flex;
    align-items:center;
    gap:12px;
    min-height:68px;
    padding:12px 16px;
    border:1px solid rgba(74,160,232,.25);
    border-radius:14px;
    background:linear-gradient(180deg,rgba(10,30,54,.94),rgba(5,16,31,.97));
    color:#e8f4ff;
    text-decoration:none;
    box-shadow:0 10px 28px rgba(0,0,0,.25);
    transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.game-store-switch-link-v141 > i { flex:0 0 38px; color:#61c6ff; font-size:22px; text-align:center; }
.game-store-switch-link-v141 span { min-width:0; text-align:left; }
.game-store-switch-link-v141 strong { display:block; color:#f5dcab; font-size:13px; }
.game-store-switch-link-v141 small { display:block; margin-top:3px; color:#8fa8c1; font-size:10px; }
.game-store-switch-link-v141:hover,
.game-store-switch-link-v141:focus,
.game-store-switch-link-v141.is-active-v141 {
    color:#fff;
    border-color:rgba(255,164,64,.58);
    transform:translateY(-2px);
    box-shadow:0 14px 30px rgba(0,0,0,.32),0 0 24px rgba(255,126,25,.08);
}
.game-store-switch-link-v141.is-active-v141 > i { color:#ffb454; }

.game-store-shell-v141 { max-width:1240px; }
.game-store-alert-v141 { border-radius:14px; }
.game-store-account-v141 {
    display:flex;
    align-items:center;
    gap:14px;
    flex-wrap:wrap;
    padding:16px;
    margin-bottom:18px;
    border:1px solid rgba(82,164,231,.2);
    border-radius:16px;
    background:linear-gradient(180deg,rgba(9,27,49,.94),rgba(5,16,30,.96));
}
.game-store-account-v141 > div { display:flex; align-items:center; gap:10px; min-width:190px; }
.game-store-account-v141 > .btn { margin-left:auto; }
.game-store-account-icon-v141 {
    display:inline-flex; align-items:center; justify-content:center;
    width:40px; height:40px; border-radius:11px;
    background:rgba(55,143,219,.12); border:1px solid rgba(78,170,239,.2); color:#5fc4ff;
}
.game-store-account-v141 small { display:block; color:#7893ae; font-size:9px; font-weight:900; letter-spacing:.1em; }
.game-store-account-v141 strong { display:block; color:#f3d59e; font-size:14px; }

.game-store-tabs-v141 {
    display:flex;
    gap:8px;
    overflow-x:auto;
    padding:4px 2px 12px;
    margin-bottom:16px;
    scrollbar-width:thin;
}
.game-store-tab-v141 {
    display:inline-flex;
    align-items:center;
    gap:8px;
    flex:0 0 auto;
    min-height:44px;
    padding:9px 12px;
    border:1px solid rgba(73,151,217,.2);
    border-radius:12px;
    background:rgba(6,20,38,.88);
    color:#a9c2d9;
    text-decoration:none;
    font-size:11px;
    font-weight:800;
}
.game-store-tab-v141 i { color:#4fb8f5; }
.game-store-tab-v141 b { display:inline-flex; min-width:22px; height:22px; align-items:center; justify-content:center; border-radius:999px; background:rgba(255,159,55,.12); color:#ffc36d; font-size:9px; }
.game-store-tab-v141:hover,
.game-store-tab-v141:focus,
.game-store-tab-v141.is-active-v141 { color:#fff; border-color:rgba(255,169,67,.5); background:rgba(32,42,54,.94); }
.game-store-tab-v141.is-active-v141 i { color:#ffb554; }

.game-store-section-head-v141 {
    display:flex; align-items:center; justify-content:space-between; gap:20px;
    padding:20px 22px; margin-bottom:16px;
    border:1px solid rgba(255,166,64,.18); border-radius:16px;
    background:linear-gradient(135deg,rgba(43,27,19,.72),rgba(6,25,46,.92));
}
.game-store-section-head-v141 small { color:#52bafa; font-size:9px; font-weight:900; letter-spacing:.14em; }
.game-store-section-head-v141 h2 { margin:3px 0 3px; color:#f3d39b; font-size:22px; }
.game-store-section-head-v141 p { margin:0; color:#8ea7bf; font-size:11px; }
.game-store-section-head-v141 > span { display:flex; align-items:center; justify-content:center; width:56px; height:56px; flex:0 0 56px; border-radius:16px; color:#ffb45b; font-size:25px; border:1px solid rgba(255,167,68,.24); background:rgba(255,124,26,.07); }

.game-store-grid-v141 { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.game-store-card-v141 {
    display:flex; flex-direction:column; min-width:0; min-height:270px; padding:16px;
    border:1px solid rgba(70,151,218,.2); border-radius:16px;
    background:linear-gradient(180deg,rgba(11,31,55,.96),rgba(5,16,31,.98));
    box-shadow:0 12px 28px rgba(0,0,0,.24);
    overflow:hidden;
}
.game-store-card-v141.is-disabled-v141 { opacity:.76; }
.game-store-card-top-v141 { display:flex; justify-content:space-between; align-items:center; gap:10px; }
.game-store-item-icon-v141 { display:flex; align-items:center; justify-content:center; width:48px; height:48px; border-radius:14px; background:rgba(57,150,230,.1); border:1px solid rgba(71,170,241,.23); color:#5ec6ff; font-size:20px; }
.game-store-stock-v141 { display:inline-flex; align-items:center; gap:5px; padding:6px 8px; border:1px solid rgba(54,197,111,.2); border-radius:999px; background:rgba(31,163,82,.08); color:#8ee8ae; font-size:9px; font-weight:900; }
.game-store-stock-v141.is-out-v141 { border-color:rgba(231,76,60,.25); background:rgba(214,55,46,.08); color:#ff9a91; }
.game-store-card-copy-v141 { padding:14px 0 12px; flex:1 1 auto; }
.game-store-card-copy-v141 > small { color:#6587a7; font-size:8.5px; font-weight:900; letter-spacing:.08em; }
.game-store-card-copy-v141 h3 { margin:5px 0 6px; color:#f0d6a2; font-size:15px; line-height:1.3; overflow-wrap:anywhere; }
.game-store-effects-v141 { margin:8px 0 0; color:#83a6c6; font-size:9px; line-height:1.45; }
.game-store-effects-v141 i { color:#b287ff; }
.game-store-card-bottom-v141 { display:flex; align-items:flex-end; justify-content:space-between; gap:10px; padding-top:12px; border-top:1px solid rgba(255,255,255,.055); }
.game-store-price-v141 { display:flex; align-items:center; gap:8px; min-width:0; }
.game-store-price-v141 > i { color:#5bc4ff; font-size:17px; }
.game-store-price-v141 small { display:block; color:#718ca6; font-size:8px; font-weight:900; }
.game-store-price-v141 strong { display:block; color:#ffd185; font-family:'Cinzel',serif; font-size:15px; }
.game-store-buy-form-v141 { margin:0; }
.game-store-card-bottom-v141 .al-btn { min-height:40px !important; padding:8px 11px !important; white-space:nowrap; font-size:10px !important; }
.game-store-card-bottom-v141 .al-btn:disabled { cursor:not-allowed; opacity:.45; transform:none !important; }
.game-store-empty-v141 { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; min-height:180px; border:1px dashed rgba(88,159,220,.2); border-radius:16px; color:#7996b2; }
.game-store-empty-v141 i { color:#4bb2ef; font-size:30px; }
.game-store-security-v141 { display:flex; align-items:flex-start; gap:12px; margin-top:18px; padding:16px 18px; border:1px solid rgba(72,161,229,.16); border-radius:15px; background:rgba(5,18,34,.72); }
.game-store-security-v141 > i { margin-top:2px; color:#64c5ff; font-size:21px; }
.game-store-security-v141 strong { display:block; color:#efd39e; font-size:11px; }
.game-store-security-v141 span { display:block; margin-top:3px; color:#819db8; font-size:10px; line-height:1.55; }

@media (max-width: 1199.98px) {
    .game-store-grid-v141 { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width: 991.98px) {
    .game-store-top-switch-wrap-v141 { padding-top:92px; }
    .game-store-grid-v141 { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 767.98px) {
    .game-store-switch-v141 { grid-template-columns:1fr; }
    .game-store-account-v141 { align-items:stretch; }
    .game-store-account-v141 > div { flex:1 1 190px; }
    .game-store-account-v141 > .btn { width:100%; margin-left:0; }
    .game-store-grid-v141 { grid-template-columns:1fr; }
    .game-store-card-v141 { min-height:0; }
    .game-store-card-bottom-v141 { align-items:center; }
    .game-store-card-bottom-v141 .al-btn { min-height:44px !important; }
    .game-store-section-head-v141 { padding:16px; }
}
@media (max-width: 420px) {
    .game-store-card-bottom-v141 { align-items:stretch; flex-direction:column; }
    .game-store-buy-form-v141, .game-store-buy-form-v141 .al-btn, .game-store-card-bottom-v141 > .al-btn { width:100%; }
}

/* ========================================================================== */
/* V143 - ROLETA PREMIADA                                                     */
/* ========================================================================== */
.nav-roulette-v143{
    position:relative;z-index:8;display:inline-grid;place-items:center;flex:0 0 44px;width:44px;height:44px;
    border:1px solid rgba(255,166,58,.46);border-radius:11px;text-decoration:none!important;outline:none;
    background:radial-gradient(circle at 50% 45%,rgba(42,138,220,.22),transparent 58%),linear-gradient(180deg,rgba(27,23,31,.96),rgba(7,12,21,.99));
    box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 5px 18px rgba(0,0,0,.30),0 0 16px rgba(255,132,32,.08);
    color:#ffc361;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease;
}
.nav-roulette-v143>i{font-size:25px;filter:drop-shadow(0 0 7px rgba(255,165,60,.38));transition:transform .28s ease}
.nav-roulette-v143:hover,.nav-roulette-v143:focus,.nav-roulette-v143.active{color:#fff0b4;border-color:#ffb74f;transform:translateY(-1px);box-shadow:0 0 0 2px rgba(255,169,58,.12),0 8px 22px rgba(0,0,0,.34),0 0 22px rgba(39,153,240,.13)}
.nav-roulette-v143:hover>i,.nav-roulette-v143:focus>i{transform:rotate(32deg)}
.nav-roulette-tooltip-v143{
    position:absolute;top:calc(100% + 10px);left:50%;z-index:9999;width:max-content;min-width:220px;max-width:290px;
    transform:translate(-50%,-5px);padding:10px 12px;border:1px solid rgba(255,177,71,.48);border-radius:10px;
    background:linear-gradient(180deg,rgba(12,24,39,.985),rgba(4,10,18,.995));box-shadow:0 12px 34px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.05);
    color:#dbe9f5;font-family:'Inter',sans-serif;line-height:1.32;text-align:left;pointer-events:none;opacity:0;visibility:hidden;
    transition:opacity .14s ease,transform .14s ease,visibility .14s ease;
}
.nav-roulette-tooltip-v143::before{content:'';position:absolute;left:50%;bottom:100%;transform:translateX(-50%);border:6px solid transparent;border-bottom-color:rgba(255,177,71,.48)}
.nav-roulette-tooltip-v143 strong{display:block;color:#ffe0a1;font:800 13px/1.25 'Inter',sans-serif}
.nav-roulette-tooltip-v143>span{display:block;margin-top:2px;color:#fff;font:700 12px/1.3 'Inter',sans-serif}
.nav-roulette-tooltip-v143 small{display:block;margin-top:4px;color:#8fd0ff;font:600 10.5px/1.35 'Inter',sans-serif;white-space:normal}
.nav-roulette-v143:hover .nav-roulette-tooltip-v143,.nav-roulette-v143:focus .nav-roulette-tooltip-v143,.nav-roulette-v143:focus-within .nav-roulette-tooltip-v143{opacity:1;visibility:visible;transform:translate(-50%,0)}

.roulette-page-v143{position:relative;min-height:100vh;padding-top:92px;overflow:hidden;background:radial-gradient(circle at 50% 22%,rgba(24,83,139,.18),transparent 34%),linear-gradient(180deg,rgba(3,8,15,.28),rgba(3,8,15,.66))}
.roulette-page-v143::before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 16% 45%,rgba(255,119,24,.10),transparent 25%),radial-gradient(circle at 86% 38%,rgba(41,153,242,.10),transparent 27%)}
.roulette-hero-v143{position:relative;padding:48px 0 24px;text-align:center}
.roulette-hero-inner-v143{max-width:870px}
.roulette-kicker-v143{display:inline-flex;align-items:center;gap:8px;margin-bottom:10px;color:#66c5ff;font:900 11px/1.2 'Inter',sans-serif;letter-spacing:.18em}
.roulette-kicker-v143 i{color:#ffb047;font-size:16px}
.roulette-hero-v143 h1{margin:0;color:#f5d18d;font-size:clamp(34px,5vw,64px);text-shadow:0 3px 24px rgba(255,137,27,.13)}
.roulette-hero-v143 p{max-width:760px;margin:13px auto 0;color:#a9bfd4;font:500 14px/1.7 'Inter',sans-serif}.roulette-hero-v143 p strong{color:#ffd78d}
.roulette-content-v143{position:relative;padding:12px 0 70px}.roulette-shell-v143{max-width:1240px}.roulette-layout-v143{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.72fr);gap:24px;align-items:start}
.roulette-machine-v143,.roulette-prizes-panel-v143,.roulette-login-card-v143{border:1px solid rgba(255,156,48,.34);background:linear-gradient(150deg,rgba(6,20,34,.97),rgba(8,12,22,.98) 55%,rgba(35,16,7,.96));box-shadow:0 22px 70px rgba(0,0,0,.46),inset 0 1px 0 rgba(255,255,255,.04)}
.roulette-machine-v143{position:relative;border-radius:28px;padding:24px 28px 28px;overflow:hidden}.roulette-machine-v143::after{content:'';position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 0 0 55px rgba(255,130,21,.04),inset 0 0 75px rgba(32,142,232,.04)}
.roulette-casino-sign-v143{display:grid;justify-items:center;gap:1px;margin:0 auto 8px}.roulette-casino-sign-v143 span{color:#67c7ff;font:900 10px/1.2 'Inter',sans-serif;letter-spacing:.22em}.roulette-casino-sign-v143 strong{color:#ffe0a0;font:900 clamp(18px,2.5vw,30px)/1.2 'Cinzel',serif;letter-spacing:.07em}.roulette-casino-sign-v143 small{color:#ff9f3e;font:800 9px/1.2 'Inter',sans-serif;letter-spacing:.2em}
.roulette-stage-v143{position:relative;width:min(570px,90vw);aspect-ratio:1;margin:4px auto 0;display:grid;place-items:center}
.roulette-wheel-shell-v143{position:relative;width:86%;aspect-ratio:1;border-radius:50%;padding:18px;background:radial-gradient(circle,#e5ac50 0 3%,#6f3c12 4% 6%,#17131a 7% 72%,#c98228 73% 76%,#28170d 77% 81%,#e8b153 82% 85%,#3a1e0c 86% 100%);box-shadow:0 0 0 2px rgba(255,224,147,.45),0 18px 55px rgba(0,0,0,.6),0 0 42px rgba(255,139,33,.16)}
.roulette-wheel-v143{--bulb-radius:-214px;--label-radius:-170px;position:relative;width:100%;height:100%;border-radius:50%;transform:rotate(0deg);transition:transform 6.2s cubic-bezier(.08,.72,.08,1);will-change:transform;background:conic-gradient(from -20deg,#c74432 0deg 40deg,#153d70 40deg 80deg,#aa6a18 80deg 120deg,#235f4b 120deg 160deg,#693a83 160deg 200deg,#a33a65 200deg 240deg,#8e4f19 240deg 280deg,#17657a 280deg 320deg,#4d7a1b 320deg 360deg);box-shadow:inset 0 0 0 4px rgba(255,218,132,.55),inset 0 0 34px rgba(0,0,0,.48)}
.roulette-wheel-v143::before{content:'';position:absolute;inset:4.5%;border-radius:50%;border:1px solid rgba(255,232,177,.34);box-shadow:inset 0 0 35px rgba(0,0,0,.16);pointer-events:none}
.roulette-wheel-v143::after{content:'';position:absolute;inset:0;border-radius:50%;background:repeating-conic-gradient(from -20deg,transparent 0deg 39deg,rgba(255,223,154,.66) 39deg 40deg);pointer-events:none}
.roulette-pointer-v143{position:absolute;z-index:10;top:2.5%;left:50%;transform:translateX(-50%);width:64px;height:64px;display:grid;place-items:center;color:#ffe5a9;font-size:56px;filter:drop-shadow(0 6px 3px rgba(0,0,0,.55)) drop-shadow(0 0 10px rgba(255,137,26,.42));pointer-events:none}.roulette-pointer-v143 i{transform:scaleX(1.08)}
.roulette-label-v143{position:absolute;z-index:3;left:50%;top:50%;width:30%;height:28px;margin:-14px 0 0 -15%;display:flex;align-items:center;justify-content:center;transform:rotate(var(--angle)) translateY(var(--label-radius)) rotate(var(--counter));transform-origin:50% 50%;color:#fff7db;text-shadow:0 2px 3px rgba(0,0,0,.9);font:900 clamp(9px,1.55vw,13px)/1.02 'Cinzel',serif;letter-spacing:.02em;text-align:center;pointer-events:none}.roulette-label-v143 b{display:block;max-width:98px}
.roulette-hub-v143{position:absolute;z-index:9;left:50%;top:50%;width:26%;aspect-ratio:1;transform:translate(-50%,-50%);display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 40% 35%,#ffe39e 0 8%,#ce8025 9% 27%,#3e1f0c 28% 58%,#0e2239 59% 76%,#d88d30 77% 84%,#30170a 85%);box-shadow:0 6px 20px rgba(0,0,0,.58),0 0 0 4px rgba(255,209,117,.25)}
.roulette-hub-v143 span{width:72%;height:72%;display:grid;align-content:center;justify-items:center;gap:2px;border-radius:50%;background:#0b2440;border:1px solid rgba(94,192,249,.45);color:#62caff;box-shadow:inset 0 0 20px rgba(65,181,248,.14),0 0 20px rgba(54,164,238,.17)}.roulette-hub-button-v146{padding:0;border:0;cursor:pointer}.roulette-hub-button-v146 strong{display:block;color:#fff4cf;font:900 clamp(12px,2vw,18px)/1 'Cinzel',serif;letter-spacing:.08em;text-shadow:0 1px 2px rgba(0,0,0,.85)}.roulette-hub-button-v146 small{display:block;color:#77ccff;font:800 clamp(7px,1vw,9px)/1.15 'Inter',sans-serif;letter-spacing:.08em;text-transform:uppercase}.roulette-hub-button-v146:not(:disabled):hover{filter:brightness(1.08)}.roulette-hub-button-v146:not(:disabled):active{transform:translate(-50%,-50%) scale(.985)}.roulette-hub-button-v146:disabled{cursor:not-allowed;opacity:.9}.roulette-hub-button-v146:disabled span{border-color:rgba(255,204,125,.22);color:#98adc3;background:#13263d}
.roulette-bulb-v143{position:absolute;z-index:8;left:50%;top:50%;width:8px;height:8px;margin:-4px;border-radius:50%;background:#ffd98b;box-shadow:0 0 7px #ffb43c,0 0 13px rgba(255,161,45,.48);transform:rotate(var(--a)) translateY(var(--bulb-radius));animation:roulette-bulb-pulse-v143 1.15s ease-in-out infinite alternate;animation-delay:var(--delay);pointer-events:none}
.roulette-wheel-v143.is-spinning-v143 .roulette-bulb-v143{animation-duration:.22s}
@keyframes roulette-bulb-pulse-v143{from{opacity:.42;filter:brightness(.8)}to{opacity:1;filter:brightness(1.45)}}
.roulette-action-v143{position:relative;z-index:9;display:grid;justify-items:center;gap:10px;margin-top:8px}.roulette-spin-button-v143{min-width:min(390px,100%);min-height:64px;padding:0 28px;border:1px solid #ffc15e;border-radius:14px;background:linear-gradient(180deg,#ff9b32,#e7550d 62%,#aa2f08);box-shadow:inset 0 1px 0 rgba(255,255,255,.48),0 7px 0 #672006,0 12px 30px rgba(0,0,0,.36),0 0 24px rgba(255,105,19,.13);color:#fff8df;text-shadow:0 1px 1px #6f2609;font:900 16px/1 'Cinzel',serif;letter-spacing:.07em;transition:transform .14s ease,filter .14s ease,opacity .14s ease}.roulette-spin-button-v143 i{margin-right:8px}.roulette-spin-button-v143:not(:disabled):hover{transform:translateY(-2px);filter:brightness(1.08)}.roulette-spin-button-v143:disabled{opacity:.58;cursor:not-allowed;box-shadow:inset 0 1px 0 rgba(255,255,255,.16),0 4px 0 #3d271b,0 9px 22px rgba(0,0,0,.28)}.roulette-spin-button-v143.is-spinning-v143 i{animation:roulette-icon-spin-v143 .62s linear infinite}@keyframes roulette-icon-spin-v143{to{transform:rotate(360deg)}}
.roulette-action-note-v143{max-width:560px;margin:4px 0 0;color:#819bb4;font:600 10.5px/1.4 'Inter',sans-serif;text-align:center}.roulette-action-note-v143 i{margin-right:4px;color:#56baf8}
.roulette-alert-v143{width:min(560px,100%);display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:11px;font:600 11px/1.45 'Inter',sans-serif}.roulette-alert-v143>i{font-size:19px}.roulette-alert-v143>div{display:grid;gap:2px}.roulette-alert-v143 strong{color:#ffda93;font-size:12px}.roulette-alert-v143 span{color:#d6e1ec}.roulette-alert-v143 small{color:#8fc8ef}.roulette-alert-v143.is-locked-v143{border:1px solid rgba(255,165,62,.28);background:rgba(101,49,10,.20);color:#f5cf94}.roulette-alert-v143.is-error-v143{border:1px solid rgba(231,77,77,.35);background:rgba(100,18,25,.25);color:#ffc0c0}
.roulette-prizes-panel-v143{border-radius:22px;padding:22px;position:sticky;top:112px}.roulette-prizes-panel-v143 header small{color:#5fbff8;font:900 9px/1.2 'Inter',sans-serif;letter-spacing:.17em}.roulette-prizes-panel-v143 header h2{margin:3px 0 16px;color:#f0d09a;font-size:24px}.roulette-prize-list-v143{display:grid;gap:8px}.roulette-prize-row-v143{display:grid;grid-template-columns:30px 34px minmax(0,1fr);align-items:center;gap:8px;min-height:48px;padding:7px 10px;border:1px solid rgba(81,157,226,.16);border-radius:10px;background:rgba(7,24,40,.70)}.roulette-prize-row-v143>span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:rgba(255,159,52,.11);border:1px solid rgba(255,167,64,.26);color:#ffca78;font:900 10px/1 'Inter',sans-serif}.roulette-prize-row-v143>i{color:#5ec2fc;text-align:center;font-size:17px}.roulette-prize-row-v143 strong{color:#e8f2fb;font:750 12px/1.25 'Inter',sans-serif}.roulette-rules-v143{display:grid;gap:8px;margin-top:18px;padding-top:15px;border-top:1px solid rgba(255,255,255,.06)}.roulette-rules-v143>div{display:flex;align-items:center;gap:9px}.roulette-rules-v143>div>i{width:28px;color:#ffae45;text-align:center}.roulette-rules-v143>div>span{display:grid}.roulette-rules-v143 strong{color:#dceafb;font:750 10.5px/1.2 'Inter',sans-serif}.roulette-rules-v143 small{color:#7992aa;font:600 9px/1.25 'Inter',sans-serif}
.roulette-login-card-v143{max-width:620px;margin:40px auto;padding:38px 28px;border-radius:22px;text-align:center}.roulette-login-card-v143>span{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 14px;border-radius:18px;background:rgba(55,150,232,.10);border:1px solid rgba(73,163,239,.26);color:#62c4ff;font-size:26px}.roulette-login-card-v143 h2{color:#f0d19c}.roulette-login-card-v143 p{max-width:460px;margin:8px auto 20px;color:#91a9c0}
.roulette-result-modal-v143{position:fixed;z-index:2147483200;inset:0;display:grid;place-items:center;padding:22px;background:rgba(2,6,12,.78);backdrop-filter:blur(8px);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.roulette-result-modal-v143[hidden]{display:none}.roulette-result-modal-v143.is-visible-v143{opacity:1;visibility:visible}.roulette-result-card-v143{position:relative;width:min(480px,100%);overflow:hidden;padding:38px 28px 30px;border:1px solid rgba(255,180,71,.64);border-radius:24px;background:radial-gradient(circle at 50% 16%,rgba(54,155,233,.22),transparent 35%),linear-gradient(155deg,#0a2136,#07111d 58%,#321608);box-shadow:0 28px 90px rgba(0,0,0,.68),0 0 42px rgba(255,135,27,.12);text-align:center}.roulette-result-card-v143>*:not(.roulette-result-rays-v143){position:relative;z-index:2}.roulette-result-rays-v143{position:absolute;left:50%;top:34%;width:430px;height:430px;transform:translate(-50%,-50%);background:repeating-conic-gradient(from 0deg,rgba(255,200,91,.16) 0deg 5deg,transparent 5deg 15deg);border-radius:50%;animation:roulette-rays-v143 12s linear infinite}@keyframes roulette-rays-v143{to{transform:translate(-50%,-50%) rotate(360deg)}}.roulette-result-icon-v143{display:grid;place-items:center;width:76px;height:76px;margin:0 auto 10px;border-radius:50%;background:linear-gradient(145deg,#ffd179,#c86e19);border:4px solid #54300d;color:#fff5d5;font-size:34px;box-shadow:0 0 0 4px rgba(255,201,93,.22),0 0 30px rgba(255,150,38,.23)}.roulette-result-card-v143 small{color:#69c5ff;font:900 9px/1.2 'Inter',sans-serif;letter-spacing:.18em}.roulette-result-card-v143 h2{margin:7px 0 4px;color:#ffe1a4;font-size:36px}.roulette-result-card-v143 p{margin:0 0 20px;color:#c7d6e3;font-size:15px}.roulette-result-card-v143 p strong{color:#ffbc5b;font-size:18px}

@media(max-width:1399.98px){.nav-roulette-v143{width:40px;height:40px;flex-basis:40px}.nav-roulette-v143>i{font-size:22px}}
@media(max-width:991.98px){.roulette-layout-v143{grid-template-columns:1fr}.roulette-prizes-panel-v143{position:static;max-width:720px;width:100%;margin:0 auto}.roulette-machine-v143{padding-inline:18px}}
@media(max-width:767.98px){.nav-roulette-v143{width:36px;height:36px;flex-basis:36px;border-radius:9px}.nav-roulette-v143>i{font-size:20px}.nav-roulette-tooltip-v143{left:0;min-width:205px;max-width:min(260px,calc(100vw - 24px));transform:translate(0,-5px)}.nav-roulette-tooltip-v143::before{left:18px;transform:none}.nav-roulette-v143:hover .nav-roulette-tooltip-v143,.nav-roulette-v143:focus .nav-roulette-tooltip-v143,.nav-roulette-v143:focus-within .nav-roulette-tooltip-v143{transform:translate(0,0)}.roulette-page-v143{padding-top:76px}.roulette-hero-v143{padding:32px 0 15px}.roulette-content-v143{padding-bottom:44px}.roulette-machine-v143{padding:18px 10px 22px;border-radius:20px}.roulette-stage-v143{width:min(440px,94vw)}.roulette-wheel-shell-v143{width:91%;padding:13px}.roulette-pointer-v143{top:0;font-size:45px}.roulette-label-v143{font-size:clamp(8.1px,2.55vw,11px)}.roulette-bulb-v143{width:6px;height:6px;margin:-3px}.roulette-prizes-panel-v143{padding:18px}.roulette-prize-list-v143{grid-template-columns:1fr 1fr}.roulette-prize-row-v143{grid-template-columns:25px 27px minmax(0,1fr);padding:6px}.roulette-prize-row-v143>i{font-size:14px}.roulette-prize-row-v143 strong{font-size:10px}.roulette-hub-v143{width:29%}}
@media(max-width:430px){.roulette-prize-list-v143{grid-template-columns:1fr}.roulette-wheel-shell-v143{width:96%;padding:10px}.roulette-stage-v143{width:96vw}.roulette-label-v143{font-size:8px}.roulette-hub-v143{width:31%}.roulette-pointer-v143{top:-1.5%;font-size:40px}.roulette-casino-sign-v143 strong{font-size:18px}.roulette-result-card-v143{padding:32px 18px 24px}}
@media(prefers-reduced-motion:reduce){.roulette-wheel-v143{transition-duration:4.5s}.roulette-bulb-v143,.roulette-result-rays-v143{animation:none!important}}


/* ============================================================
   ALASTAR V144 - ROLETA COMPLETA / GIROS GRATIS / ECONOMIA
   ============================================================ */
.nav-roulette-v143.nav-roulette-free-v144{flex:0 0 auto;width:auto;min-width:132px;height:38px;padding:0 12px;border-radius:10px;background:linear-gradient(180deg,#ffad3f,#e56512 62%,#9d330b);border-color:#ffc86b;color:#fff9e8;box-shadow:inset 0 1px 0 rgba(255,255,255,.38),0 4px 0 #6f2608,0 7px 18px rgba(0,0,0,.3),0 0 18px rgba(255,137,28,.18);text-decoration:none}
.nav-roulette-v143.nav-roulette-free-v144:hover,.nav-roulette-v143.nav-roulette-free-v144:focus,.nav-roulette-v143.nav-roulette-free-v144.active{color:#fff;background:linear-gradient(180deg,#ffc15a,#f07618 62%,#ad3a0d);border-color:#ffe09b;box-shadow:inset 0 1px 0 rgba(255,255,255,.48),0 4px 0 #6f2608,0 9px 24px rgba(0,0,0,.34),0 0 24px rgba(255,151,42,.26)}
.nav-roulette-free-label-v144{display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;font:900 10px/1 'Cinzel',serif;letter-spacing:.055em;text-shadow:0 1px 1px rgba(74,24,4,.75)}
.nav-roulette-free-label-v144 i{font-size:11px;color:#fff4be}
.roulette-difficulty-v144{justify-self:end;min-width:48px;padding:4px 6px;border-radius:999px;text-align:center;font:900 8px/1 'Inter',sans-serif;letter-spacing:.06em;text-transform:uppercase;font-style:normal;border:1px solid rgba(255,255,255,.12)}
.roulette-difficulty-v144.is-easy{color:#9ff4c9;background:rgba(27,147,91,.16);border-color:rgba(57,214,137,.25)}
.roulette-difficulty-v144.is-medium{color:#ffe19c;background:rgba(202,132,21,.16);border-color:rgba(255,183,61,.27)}
.roulette-difficulty-v144.is-hard{color:#ffaea8;background:rgba(187,54,48,.16);border-color:rgba(255,96,88,.28)}
.roulette-account-state-v144{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:16px;padding-top:15px;border-top:1px solid rgba(255,255,255,.06)}
.roulette-account-state-v144>div{min-width:0;padding:9px 7px;border:1px solid rgba(73,160,228,.15);border-radius:9px;background:rgba(4,20,34,.58);text-align:center}.roulette-account-state-v144 i{display:block;margin-bottom:5px;color:#fbb04c}.roulette-account-state-v144 span{display:grid;gap:2px}.roulette-account-state-v144 small{color:#7894ad;font:700 8px/1.15 'Inter',sans-serif}.roulette-account-state-v144 strong{overflow:hidden;text-overflow:ellipsis;color:#eaf5ff;font:800 9px/1.25 'Inter',sans-serif}
.roulette-result-delivery-v144{display:block;max-width:360px;margin:-4px auto 13px;color:#91caf1;font:650 11px/1.45 'Inter',sans-serif}
.portal-gift-balance-v144{display:block;color:#ffd18b!important;font-weight:800!important}
@media(max-width:1199.98px){.nav-roulette-v143.nav-roulette-free-v144{min-width:118px;height:36px;padding:0 9px}.nav-roulette-free-label-v144{font-size:9px}}
@media(max-width:575.98px){.roulette-account-state-v144{grid-template-columns:1fr}.roulette-prize-row-v143{grid-template-columns:26px 28px minmax(0,1fr)}.nav-roulette-v143.nav-roulette-free-v144{min-width:108px}}

/* ============================================================
   ALASTAR V147 - HEADER COMPACTO + CONTADOR DE PREMIOS DA ROLETA
   ============================================================ */
/* Mantem o trio no fluxo correto e devolve a logo ao tamanho compacto. */
.alastar-brand-popularity-v59{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:nowrap!important;
    gap:9px!important;
    width:max-content!important;
    min-width:max-content!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    position:relative!important;
    z-index:8!important;
}
.alastar-brand-popularity-v59>.top-left-alastar-logo-v15,
.alastar-brand-popularity-v59>.nav-roulette-free-v144,
.alastar-brand-popularity-v59>.nav-popularity-v60{flex-shrink:0!important}
.alastar-brand-popularity-v59>.nav-roulette-v143.nav-roulette-free-v144{
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    margin:0!important;
}
.alastar-brand-popularity-v59>.nav-roulette-v143.nav-roulette-free-v144:hover,
.alastar-brand-popularity-v59>.nav-roulette-v143.nav-roulette-free-v144:focus,
.alastar-brand-popularity-v59>.nav-roulette-v143.nav-roulette-free-v144.active{transform:translateY(-1px)!important}

/* Faz o conteudo realmente comecar no canto esquerdo util do header. */
.nav-shell-v15{
    max-width:none!important;
    width:100%!important;
    padding-left:12px!important;
    padding-right:12px!important;
}

@media (min-width:1400px){
    .nav-shell-v15{
        display:grid!important;
        grid-template-columns:max-content minmax(0,1fr)!important;
        align-items:center!important;
        column-gap:14px!important;
    }
    .alastar-brand-popularity-v59{grid-column:1!important}
    .nav-collapse-v15{grid-column:2!important;min-width:0!important;width:100%!important}
    .alastar-brand-popularity-v59>.top-left-alastar-logo-v15{
        flex:0 0 126px!important;
        width:126px!important;
        max-width:126px!important;
        height:64px!important;
        margin:0!important;
    }
    .alastar-brand-popularity-v59>.top-left-alastar-logo-v15 img{
        width:118px!important;
        max-width:118px!important;
        height:60px!important;
        object-fit:contain!important;
        object-position:left center!important;
    }
    .alastar-brand-popularity-v59>.nav-roulette-v143.nav-roulette-free-v144{
        min-width:118px!important;
        height:36px!important;
        padding:0 9px!important;
    }
    .alastar-brand-popularity-v59>.nav-popularity-v60{
        width:40px!important;
        height:40px!important;
        flex-basis:40px!important;
        margin:0!important;
    }
}

@media (max-width:1399.98px){
    .alastar-brand-popularity-v59{
        order:1!important;
        flex:0 1 auto!important;
        width:auto!important;
        min-width:0!important;
        max-width:calc(100% - 58px)!important;
        gap:7px!important;
    }
    .brand-toggler-v15{order:2!important;flex:0 0 auto!important;margin-left:auto!important}
    .nav-collapse-v15{order:3!important}
    .alastar-brand-popularity-v59>.top-left-alastar-logo-v15{
        flex:0 0 104px!important;
        width:104px!important;
        max-width:104px!important;
        height:54px!important;
        margin:0!important;
    }
    .alastar-brand-popularity-v59>.top-left-alastar-logo-v15 img{
        width:98px!important;
        max-width:98px!important;
        height:50px!important;
        object-fit:contain!important;
        object-position:left center!important;
    }
    .alastar-brand-popularity-v59>.nav-roulette-v143.nav-roulette-free-v144{
        min-width:108px!important;
        height:35px!important;
        padding:0 7px!important;
    }
    .alastar-brand-popularity-v59>.nav-popularity-v60{
        width:38px!important;
        height:38px!important;
        flex-basis:38px!important;
    }
}

@media (max-width:575.98px){
    .nav-shell-v15{padding-left:7px!important;padding-right:7px!important}
    .alastar-brand-popularity-v59{gap:4px!important;max-width:calc(100% - 48px)!important}
    .alastar-brand-popularity-v59>.top-left-alastar-logo-v15{
        flex-basis:76px!important;width:76px!important;max-width:76px!important;height:46px!important;
    }
    .alastar-brand-popularity-v59>.top-left-alastar-logo-v15 img{
        width:72px!important;max-width:72px!important;height:44px!important;
    }
    .alastar-brand-popularity-v59>.nav-roulette-v143.nav-roulette-free-v144{
        min-width:92px!important;height:32px!important;padding:0 5px!important;
    }
    .alastar-brand-popularity-v59 .nav-roulette-free-label-v144{font-size:7.8px!important;gap:3px!important;letter-spacing:.02em!important}
    .alastar-brand-popularity-v59>.nav-popularity-v60{width:32px!important;height:32px!important;flex-basis:32px!important}
    .alastar-brand-popularity-v59>.nav-popularity-v60>img{width:27px!important;height:27px!important}
}

/* No lugar da dificuldade, mostra quantas vezes a conta ja ganhou o premio. */
.roulette-prize-row-v143{
    grid-template-columns:30px 34px minmax(0,1fr) auto!important;
}
.roulette-win-count-v147{
    justify-self:end;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    min-width:48px;
    min-height:24px;
    padding:4px 7px;
    border:1px solid rgba(255,186,75,.27);
    border-radius:999px;
    background:linear-gradient(180deg,rgba(148,87,15,.22),rgba(50,28,8,.38));
    color:#ffd687;
    font:900 9px/1 'Inter',sans-serif;
    font-style:normal;
    white-space:nowrap;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.roulette-win-count-v147 i{font-size:8px;color:#ffb33f}
@media(max-width:767.98px){
    .roulette-prize-row-v143{grid-template-columns:25px 27px minmax(0,1fr) auto!important}
    .roulette-win-count-v147{min-width:42px;padding-inline:5px;font-size:8px}
}
@media(max-width:430px){
    .roulette-prize-row-v143{grid-template-columns:24px 26px minmax(0,1fr) auto!important}
    .roulette-win-count-v147{min-width:38px;font-size:7.5px}
}


/* ============================================================
   ALASTAR V148 - logo maior, popularidade maior, GIROS GRÁTIS ao lado do Início
   ============================================================ */
.alastar-brand-popularity-v59{
    gap:10px!important;
}
.alastar-brand-popularity-v59>.top-left-alastar-logo-v15,
.alastar-brand-popularity-v59>.nav-popularity-v60{flex-shrink:0!important}
.alastar-brand-popularity-v59>.top-left-alastar-logo-v15{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    overflow:visible!important;
}
.alastar-brand-popularity-v59>.top-left-alastar-logo-v15 img{
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:contain!important;
    object-position:left center!important;
}
.nav-item-roulette-v148{
    display:flex!important;
    align-items:center!important;
    margin-right:16px!important;
}
.site-menu-v15>.nav-item-roulette-v148>.nav-roulette-menu-v148{
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    margin:0!important;
    align-self:center!important;
}
.site-menu-v15>.nav-item-roulette-v148>.nav-roulette-menu-v148:hover,
.site-menu-v15>.nav-item-roulette-v148>.nav-roulette-menu-v148:focus,
.site-menu-v15>.nav-item-roulette-v148>.nav-roulette-menu-v148.active{
    transform:translateY(-1px)!important;
}
@media (min-width:1400px){
    .alastar-brand-popularity-v59>.top-left-alastar-logo-v15{
        flex:0 0 138px!important;
        width:138px!important;
        max-width:138px!important;
        height:70px!important;
        margin-right:2px!important;
    }
    .alastar-brand-popularity-v59>.top-left-alastar-logo-v15 img{
        transform:scale(1.14)!important;
        transform-origin:left center!important;
    }
    .alastar-brand-popularity-v59>.nav-popularity-v60{
        width:48px!important;
        height:48px!important;
        flex-basis:48px!important;
        padding:3px!important;
    }
    .alastar-brand-popularity-v59>.nav-popularity-v60>img{
        width:40px!important;
        height:40px!important;
    }
    .site-menu-v15>.nav-item-roulette-v148>.nav-roulette-menu-v148{
        min-width:136px!important;
        height:38px!important;
        padding:0 12px!important;
        border-radius:10px!important;
    }
}
@media (max-width:1399.98px){
    .alastar-brand-popularity-v59>.top-left-alastar-logo-v15{
        flex:0 0 116px!important;
        width:116px!important;
        max-width:116px!important;
        height:58px!important;
    }
    .alastar-brand-popularity-v59>.top-left-alastar-logo-v15 img{
        transform:scale(1.12)!important;
        transform-origin:left center!important;
    }
    .alastar-brand-popularity-v59>.nav-popularity-v60{
        width:44px!important;
        height:44px!important;
        flex-basis:44px!important;
        padding:3px!important;
    }
    .alastar-brand-popularity-v59>.nav-popularity-v60>img{
        width:36px!important;
        height:36px!important;
    }
}
@media (max-width:1199.98px){
    .nav-item-roulette-v148{margin-right:12px!important;}
    .site-menu-v15>.nav-item-roulette-v148>.nav-roulette-menu-v148{
        min-width:128px!important;
        height:36px!important;
        padding:0 10px!important;
    }
}
@media (max-width:991.98px){
    .nav-item-roulette-v148{margin-right:0!important;}
    .site-menu-v15>.nav-item-roulette-v148>.nav-roulette-menu-v148{
        width:100%!important;
        min-width:0!important;
        margin-bottom:8px!important;
        justify-content:center!important;
    }
}
@media (max-width:575.98px){
    .alastar-brand-popularity-v59{gap:6px!important;}
    .alastar-brand-popularity-v59>.top-left-alastar-logo-v15{
        flex-basis:82px!important;
        width:82px!important;
        max-width:82px!important;
        height:48px!important;
    }
    .alastar-brand-popularity-v59>.top-left-alastar-logo-v15 img{
        transform:scale(1.10)!important;
    }
    .alastar-brand-popularity-v59>.nav-popularity-v60{
        width:38px!important;
        height:38px!important;
        flex-basis:38px!important;
        padding:2px!important;
    }
    .alastar-brand-popularity-v59>.nav-popularity-v60>img{
        width:31px!important;
        height:31px!important;
    }
}


/* ============================================================
   ALASTAR V149 - ROLETA MAIS NÍTIDA, HUB CENTRAL CORRIGIDO E VISUAL PROFISSIONAL
   ============================================================ */
.roulette-shell-v143{max-width:1360px!important}
.roulette-layout-v143{grid-template-columns:minmax(0,1.68fr) minmax(340px,.72fr)!important;gap:28px!important}
.roulette-machine-v143{padding:28px 34px 32px!important;border-radius:30px!important;background:radial-gradient(circle at 50% 0%,rgba(44,116,190,.16),transparent 26%),linear-gradient(150deg,rgba(4,18,33,.985),rgba(5,13,24,.99) 54%,rgba(43,20,8,.97))!important;box-shadow:0 28px 88px rgba(0,0,0,.52), inset 0 1px 0 rgba(255,255,255,.05)!important}
.roulette-machine-v143::after{box-shadow:inset 0 0 62px rgba(255,130,21,.05),inset 0 0 90px rgba(32,142,232,.06)!important}
.roulette-casino-sign-v143{margin:0 auto 12px!important}
.roulette-casino-sign-v143 span{font-size:11px!important;letter-spacing:.24em!important}
.roulette-casino-sign-v143 strong{font-size:clamp(24px,3vw,36px)!important;letter-spacing:.08em!important;text-shadow:0 2px 18px rgba(255,184,84,.11)!important}
.roulette-casino-sign-v143 small{font-size:10px!important;letter-spacing:.22em!important}
.roulette-stage-v143{width:min(650px,92vw)!important;margin:8px auto 0!important}
.roulette-wheel-shell-v143{width:90%!important;padding:22px!important;background:radial-gradient(circle,#f0be66 0 2.4%,#7f4618 2.5% 5.2%,#15121a 5.3% 69%,#d4963e 69.1% 72.2%,#4f2b12 72.3% 77.5%,#efc56d 77.6% 82.5%,#341a0c 82.6% 100%)!important;box-shadow:0 0 0 2px rgba(255,228,156,.52),0 24px 74px rgba(0,0,0,.64),0 0 52px rgba(255,139,33,.18)!important}
.roulette-wheel-v143{--bulb-radius:-236px;--label-radius:-188px;box-shadow:inset 0 0 0 4px rgba(255,224,145,.7), inset 0 0 48px rgba(0,0,0,.5), 0 0 0 1px rgba(255,238,185,.18)!important;background:conic-gradient(from -20deg,#d44c39 0deg 40deg,#154680 40deg 80deg,#bc7a1d 80deg 120deg,#26705a 120deg 160deg,#7c4396 160deg 200deg,#bb4675 200deg 240deg,#a55e1d 240deg 280deg,#1e728a 280deg 320deg,#5d8b21 320deg 360deg)!important}
.roulette-wheel-v143::before{inset:4.1%!important;border:1px solid rgba(255,240,198,.48)!important;box-shadow:inset 0 0 45px rgba(0,0,0,.20)!important}
.roulette-wheel-v143::after{background:repeating-conic-gradient(from -20deg,transparent 0deg 39deg,rgba(255,236,177,.82) 39deg 40deg)!important}
.roulette-pointer-v143{top:1.6%!important;width:72px!important;height:72px!important;font-size:60px!important;color:#ffe7ae!important;filter:drop-shadow(0 7px 4px rgba(0,0,0,.6)) drop-shadow(0 0 14px rgba(255,154,41,.52))!important}
.roulette-label-v143{width:31%!important;height:34px!important;margin:-17px 0 0 -15.5%!important;color:#fff8df!important;font:900 clamp(10px,1.52vw,14.5px)/1.03 'Cinzel',serif!important;text-shadow:0 2px 4px rgba(0,0,0,.95),0 0 10px rgba(0,0,0,.32)!important;letter-spacing:.018em!important}
.roulette-label-v143 b{max-width:108px!important}
.roulette-bulb-v143{width:9px!important;height:9px!important;margin:-4.5px!important;background:#ffe5aa!important;box-shadow:0 0 9px #ffbe55,0 0 15px rgba(255,173,68,.68)!important}
.roulette-hub-v143{width:28%!important;box-shadow:0 8px 28px rgba(0,0,0,.62),0 0 0 4px rgba(255,214,132,.28), inset 0 0 16px rgba(255,245,217,.05)!important;background:radial-gradient(circle at 50% 24%,#ffd28d 0 5%,#d78d35 5.1% 17%,#5a2d10 17.1% 26%,#091522 26.1% 72%,#d59845 72.1% 79%,#3f200f 79.1% 100%)!important}
.roulette-hub-v143::before{content:'';position:absolute;inset:10%;border-radius:50%;border:1px solid rgba(255,225,160,.28);pointer-events:none}
.roulette-hub-v143::after{content:'';position:absolute;inset:19%;border-radius:50%;background:radial-gradient(circle at 50% 35%,rgba(67,193,255,.16),rgba(8,25,44,.03) 58%,transparent 62%);box-shadow:inset 0 0 30px rgba(61,176,255,.12);pointer-events:none}
.roulette-hub-v143 span.roulette-hub-content-v149{position:relative;z-index:2;width:78%!important;height:78%!important;display:grid!important;align-content:center!important;justify-items:center!important;gap:4px!important;padding:0 8px!important;border-radius:50%!important;background:radial-gradient(circle at 50% 30%,#163c64 0%,#102743 56%,#0a1a2b 100%)!important;border:1px solid rgba(107,198,255,.42)!important;box-shadow:inset 0 0 24px rgba(86,197,255,.16),0 0 18px rgba(41,156,242,.12)!important}
.roulette-hub-button-v149{overflow:hidden!important;outline:none!important}
.roulette-hub-title-v149{display:block!important;margin:0!important;color:#fff3cf!important;font:900 clamp(16px,2.1vw,22px)/1 'Cinzel',serif!important;letter-spacing:.1em!important;text-shadow:0 1px 2px rgba(0,0,0,.88)!important}
.roulette-hub-subtitle-v149{display:block!important;margin:0!important;max-width:92px!important;color:#88d7ff!important;font:800 clamp(7.8px,1vw,10px)/1.18 'Inter',sans-serif!important;letter-spacing:.13em!important;text-align:center!important;text-transform:uppercase!important;text-shadow:0 1px 2px rgba(0,0,0,.65)!important}
.roulette-hub-button-v149:not(:disabled):hover .roulette-hub-content-v149{filter:brightness(1.08)!important;box-shadow:inset 0 0 26px rgba(86,197,255,.18),0 0 24px rgba(53,164,244,.18)!important}
.roulette-hub-button-v149:disabled .roulette-hub-content-v149{background:radial-gradient(circle at 50% 30%,#1b3656 0%,#13273d 55%,#0b1726 100%)!important;border-color:rgba(145,191,227,.22)!important;box-shadow:inset 0 0 20px rgba(75,119,154,.11)!important}
.roulette-hub-button-v149:disabled .roulette-hub-title-v149{color:#ffe6b8!important}
.roulette-hub-button-v149:disabled .roulette-hub-subtitle-v149{color:#9dc8e5!important}
.roulette-action-note-v143{max-width:620px!important;margin-top:8px!important;color:#9cb7ce!important;font-size:11px!important;line-height:1.45!important}
.roulette-alert-v143{width:min(620px,100%)!important;padding:13px 16px!important;border-radius:13px!important;font-size:11.5px!important}
.roulette-alert-v143 strong{font-size:12.5px!important}
.roulette-prizes-panel-v143{padding:24px!important;border-radius:24px!important;background:radial-gradient(circle at 50% 0%,rgba(44,116,190,.14),transparent 22%),linear-gradient(150deg,rgba(6,20,34,.97),rgba(8,12,22,.98) 55%,rgba(35,16,7,.96))!important}
.roulette-prizes-panel-v143 header h2{font-size:26px!important}
.roulette-prize-list-v143{gap:10px!important}
.roulette-prize-row-v143{min-height:52px!important;padding:9px 11px!important;border-radius:12px!important;background:linear-gradient(180deg,rgba(7,24,40,.82),rgba(6,17,30,.74))!important;border:1px solid rgba(87,168,240,.18)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important}
.roulette-prize-row-v143>span{width:28px!important;height:28px!important;font-size:10.5px!important}
.roulette-prize-row-v143>i{font-size:18px!important;color:#69cbff!important}
.roulette-prize-row-v143 strong{font-size:12.5px!important;line-height:1.25!important;color:#f1f7fd!important;text-shadow:0 1px 1px rgba(0,0,0,.3)!important}
.roulette-account-state-v144>div{padding:10px 8px!important;border-radius:10px!important}
.roulette-account-state-v144 small{font-size:8.5px!important}
.roulette-account-state-v144 strong{font-size:10px!important}
.roulette-win-count-v147{min-width:54px!important;min-height:26px!important;font-size:9.5px!important;padding:4px 8px!important}
.roulette-result-card-v143{width:min(520px,100%)!important;padding:42px 30px 32px!important}
.roulette-result-card-v143 h2{font-size:40px!important}
.roulette-result-card-v143 p{font-size:16px!important}
.roulette-result-card-v143 p strong{font-size:20px!important}
@media(max-width:991.98px){
    .roulette-layout-v143{grid-template-columns:1fr!important;gap:22px!important}
    .roulette-machine-v143{padding:22px 16px 26px!important}
    .roulette-stage-v143{width:min(560px,96vw)!important}
    .roulette-wheel-shell-v143{width:92%!important;padding:16px!important}
    .roulette-hub-v143{width:29%!important}
    .roulette-label-v143{font-size:clamp(9px,2vw,12px)!important}
}
@media(max-width:767.98px){
    .roulette-stage-v143{width:min(460px,97vw)!important}
    .roulette-wheel-shell-v143{width:95%!important;padding:12px!important}
    .roulette-pointer-v143{width:58px!important;height:58px!important;font-size:50px!important}
    .roulette-label-v143{width:31.5%!important;height:30px!important;margin:-15px 0 0 -15.75%!important;font-size:clamp(8.2px,2.2vw,11.2px)!important}
    .roulette-label-v143 b{max-width:90px!important}
    .roulette-hub-v143{width:31%!important}
    .roulette-hub-title-v149{font-size:clamp(13px,2.8vw,17px)!important}
    .roulette-hub-subtitle-v149{font-size:clamp(6.8px,1.7vw,8.5px)!important;max-width:78px!important}
    .roulette-prizes-panel-v143 header h2{font-size:24px!important}
}
@media(max-width:430px){
    .roulette-stage-v143{width:98vw!important}
    .roulette-wheel-shell-v143{width:97%!important;padding:10px!important}
    .roulette-label-v143{font-size:7.8px!important}
    .roulette-label-v143 b{max-width:82px!important}
    .roulette-hub-v143{width:32.5%!important}
    .roulette-hub-title-v149{font-size:13px!important}
    .roulette-hub-subtitle-v149{font-size:6.8px!important;letter-spacing:.09em!important}
    .roulette-prize-row-v143 strong{font-size:11px!important}
}


/* ============================================================
   ALASTAR V150 - logo mais preenchida, popularidade maior, giro grátis com mais respiro ao lado do início
   ============================================================ */
.alastar-brand-popularity-v59{
    gap:12px!important;
}
.nav-item-roulette-v148{
    margin-right:22px!important;
}
.site-menu-v15>.nav-item-roulette-v148>.nav-roulette-menu-v148{
    margin-right:0!important;
}
@media (min-width:1400px){
    .alastar-brand-popularity-v59>.top-left-alastar-logo-v15{
        flex:0 0 146px!important;
        width:146px!important;
        max-width:146px!important;
        height:74px!important;
        margin-right:4px!important;
    }
    .alastar-brand-popularity-v59>.top-left-alastar-logo-v15 img{
        transform:scale(1.28)!important;
        transform-origin:center center!important;
        object-position:center center!important;
    }
    .alastar-brand-popularity-v59>.nav-popularity-v60{
        width:54px!important;
        height:54px!important;
        flex-basis:54px!important;
        padding:4px!important;
        border-radius:12px!important;
    }
    .alastar-brand-popularity-v59>.nav-popularity-v60>img{
        width:45px!important;
        height:45px!important;
    }
    .site-menu-v15>.nav-item-roulette-v148>.nav-roulette-menu-v148{
        min-width:138px!important;
        height:38px!important;
        padding:0 13px!important;
    }
}
@media (max-width:1399.98px){
    .alastar-brand-popularity-v59>.top-left-alastar-logo-v15{
        flex:0 0 124px!important;
        width:124px!important;
        max-width:124px!important;
        height:62px!important;
    }
    .alastar-brand-popularity-v59>.top-left-alastar-logo-v15 img{
        transform:scale(1.24)!important;
        transform-origin:center center!important;
        object-position:center center!important;
    }
    .alastar-brand-popularity-v59>.nav-popularity-v60{
        width:48px!important;
        height:48px!important;
        flex-basis:48px!important;
        padding:3px!important;
        border-radius:11px!important;
    }
    .alastar-brand-popularity-v59>.nav-popularity-v60>img{
        width:40px!important;
        height:40px!important;
    }
}
@media (max-width:1199.98px){
    .nav-item-roulette-v148{margin-right:16px!important;}
}
@media (max-width:991.98px){
    .nav-item-roulette-v148{margin-right:0!important;}
}
@media (max-width:575.98px){
    .alastar-brand-popularity-v59{gap:7px!important;}
    .alastar-brand-popularity-v59>.top-left-alastar-logo-v15{
        flex-basis:88px!important;
        width:88px!important;
        max-width:88px!important;
        height:50px!important;
    }
    .alastar-brand-popularity-v59>.top-left-alastar-logo-v15 img{
        transform:scale(1.16)!important;
        transform-origin:center center!important;
    }
    .alastar-brand-popularity-v59>.nav-popularity-v60{
        width:40px!important;
        height:40px!important;
        flex-basis:40px!important;
        padding:2px!important;
    }
    .alastar-brand-popularity-v59>.nav-popularity-v60>img{
        width:33px!important;
        height:33px!important;
    }
}

/* ========================================================================== */
/* V161 - RESTAURAÇÃO CIRÚRGICA DO HEADER DESKTOP + LOGIN DO CHAT             */
/* Base visual: V150. Sem redesenho; apenas restaura o breakpoint XL original */
/* da V15 e impede o bloco de login do chat de virar uma coluna de letras.    */
/* ========================================================================== */

/* A V29 elevou o recolhimento do menu para 1400px. O layout original da V15
   trabalhava em desktop a partir de 1200px. Entre 1200 e 1399px, reativamos
   exatamente o comportamento de barra superior, mantendo <1200px recolhível. */
@media (min-width: 1200px) and (max-width: 1399.98px) {
    .main-nav-v15 {
        min-height: 94px !important;
        padding: 10px 0 !important;
    }

    .nav-shell-v15 {
        width: 100% !important;
        max-width: none !important;
        min-height: 74px !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
        display: grid !important;
        grid-template-columns: max-content minmax(0, 1fr) !important;
        align-items: center !important;
        column-gap: 8px !important;
        flex-wrap: nowrap !important;
    }

    .alastar-brand-popularity-v59 {
        grid-column: 1 !important;
        order: initial !important;
        flex: none !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        gap: 8px !important;
        margin: 0 !important;
    }

    .alastar-brand-popularity-v59 > .top-left-alastar-logo-v15 {
        flex: 0 0 126px !important;
        width: 126px !important;
        max-width: 126px !important;
        height: 64px !important;
        margin: 0 !important;
    }

    .alastar-brand-popularity-v59 > .top-left-alastar-logo-v15 img {
        width: 118px !important;
        max-width: 118px !important;
        height: 60px !important;
        object-fit: contain !important;
        object-position: left center !important;
        transform: scale(1.18) !important;
        transform-origin: left center !important;
    }

    .alastar-brand-popularity-v59 > .nav-popularity-v60 {
        width: 44px !important;
        height: 44px !important;
        flex-basis: 44px !important;
        padding: 3px !important;
        margin: 0 !important;
        border-radius: 11px !important;
    }

    .alastar-brand-popularity-v59 > .nav-popularity-v60 > img {
        width: 36px !important;
        height: 36px !important;
    }

    .brand-toggler-v15 {
        display: none !important;
    }

    .nav-collapse-v15,
    .nav-collapse-v15:not(.show),
    .nav-collapse-v15.show,
    .nav-collapse-v15.collapsing {
        grid-column: 2 !important;
        order: initial !important;
        position: static !important;
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) auto !important;
        align-items: center !important;
        column-gap: 7px !important;
        flex: none !important;
        flex-basis: auto !important;
        width: 100% !important;
        min-width: 0 !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        background: transparent !important;
        border: 0 !important;
    }

    .site-menu-v15 {
        position: static !important;
        inset: auto !important;
        transform: none !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 1px !important;
        white-space: nowrap !important;
    }

    .site-menu-v15 > .nav-item,
    #navbarNav .nav-rich-v99,
    #navbarNav .store-nav-v97,
    #navbarNav .nav-invite-item-v132,
    #navbarNav .nav-user-panel-item-v27 {
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        flex: 0 1 auto !important;
        width: auto !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    .site-menu-v15 .nav-link,
    #navbarNav .nav-rich-main-v99,
    #navbarNav .store-nav-main-v97,
    #navbarNav .nav-invite-link-v132,
    #navbarNav .nav-user-panel-link-v27 {
        width: auto !important;
        min-width: 0 !important;
        min-height: 44px !important;
        height: auto !important;
        margin: 0 !important;
        padding: 9px 6px !important;
        justify-content: center !important;
        font-size: .70rem !important;
        letter-spacing: .015em !important;
        line-height: 1 !important;
        white-space: nowrap !important;
        overflow-wrap: normal !important;
        word-break: normal !important;
    }

    .site-menu-v15 > .nav-item-roulette-v148 {
        margin-right: 8px !important;
    }

    .site-menu-v15 > .nav-item-roulette-v148 > .nav-roulette-menu-v148 {
        min-width: 120px !important;
        height: 36px !important;
        padding: 0 9px !important;
        margin: 0 !important;
    }

    #navbarNav .nav-invite-mobile-label-v132,
    #navbarNav .nav-invite-chevron-v139 {
        display: none !important;
    }

    .nav-auth-v15,
    .nav-auth-v27 {
        position: static !important;
        width: auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        flex: none !important;
    }

    .nav-auth-v15 .al-btn,
    .nav-auth-v27 .al-btn {
        width: auto !important;
        min-width: 150px !important;
        min-height: 48px !important;
        padding: 0 12px !important;
        font-size: .72rem !important;
        letter-spacing: .025em !important;
        white-space: nowrap !important;
    }

    /* Listboxes voltam a ser dropdowns de desktop. As regras V97/V99/V132/V139
       abaixo de 1400 os colocavam dentro do fluxo porque o navbar era XXL. */
    #navbarNav .nav-rich-trigger-v99,
    #navbarNav .store-nav-trigger-v97 {
        width: auto !important;
        display: flex !important;
    }

    #navbarNav .nav-rich-listbox-v99 {
        position: absolute !important;
        display: block !important;
        top: calc(100% + 5px) !important;
        left: 50% !important;
        width: min(390px, calc(100vw - 24px)) !important;
        max-width: none !important;
        margin: 0 !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transform: translate(-50%, -5px) scale(.985) !important;
        transform-origin: top center !important;
    }

    #navbarNav .nav-rich-v99.is-open-v99 .nav-rich-listbox-v99,
    #navbarNav .nav-rich-v99:focus-within .nav-rich-listbox-v99,
    #navbarNav .nav-rich-v99:hover .nav-rich-listbox-v99 {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: translate(-50%, 0) scale(1) !important;
    }

    #navbarNav .store-listbox-v97 {
        position: absolute !important;
        display: block !important;
        top: calc(100% + 5px) !important;
        left: 50% !important;
        width: min(360px, calc(100vw - 24px)) !important;
        max-width: none !important;
        margin: 0 !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transform: translate(-50%, -5px) scale(.985) !important;
    }

    #navbarNav .store-listbox-v97::before {
        display: block !important;
        left: 50% !important;
    }

    #navbarNav .store-nav-v97.is-open-v97 .store-listbox-v97,
    #navbarNav .store-nav-v97:focus-within .store-listbox-v97,
    #navbarNav .store-nav-v97:hover .store-listbox-v97 {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: translate(-50%, 0) scale(1) !important;
    }

    #navbarNav .nav-invite-dropdown-v139 {
        position: relative !important;
        display: flex !important;
        width: auto !important;
    }

    #navbarNav .nav-invite-trigger-v139 {
        width: auto !important;
    }

    #navbarNav .nav-invite-listbox-v139 {
        position: absolute !important;
        display: block !important;
        top: calc(100% + 7px) !important;
        left: 50% !important;
        width: 286px !important;
        margin: 0 !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transform: translate(-50%, -5px) !important;
    }

    #navbarNav .nav-invite-dropdown-v139:hover .nav-invite-listbox-v139,
    #navbarNav .nav-invite-dropdown-v139:focus-within .nav-invite-listbox-v139 {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: translate(-50%, 0) !important;
    }
}

/* O chat correto V126/V128 usa três colunas no desktop. Mantemos essa geometria.
   A regressão visível no print acontece somente no aviso de visitante: a regra
   global V88 overflow-wrap:anywhere força o título a quebrar letra por letra. */
#alastar-site-chat .portal-chat-locked-v19,
#alastar-site-chat .portal-chat-locked-v53 {
    min-width: 0 !important;
}

#alastar-site-chat .portal-chat-locked-v19 > div,
#alastar-site-chat .portal-chat-locked-v19 strong,
#alastar-site-chat .portal-chat-locked-v19 p,
#alastar-site-chat .portal-chat-login-v19 {
    min-width: 0 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
}

/* Quando a largura real do painel da Home é pequena, o botão Entrar desce uma
   linha; salas, conversa e painel lateral continuam exatamente nas três colunas. */
@container alastar-home-chat (max-width: 900px) {
    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-locked-v19 {
        grid-template-columns: 44px minmax(0, 1fr) !important;
        grid-template-rows: auto auto !important;
        gap: 10px 11px !important;
        padding: 13px !important;
        align-items: center !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-lock-icon-v19 {
        width: 42px !important;
        height: 42px !important;
    }

    #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-login-v19 {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 42px !important;
    }
}

/* Fallback para navegadores sem container queries. */
@supports not (container-type: inline-size) {
    @media (max-width: 1500px) {
        #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-locked-v19 {
            grid-template-columns: 44px minmax(0, 1fr) !important;
        }
        #alastar-site-chat:not(.is-fullscreen-v51) .portal-chat-login-v19 {
            grid-column: 1 / -1 !important;
            width: 100% !important;
            min-width: 0 !important;
        }
    }
}
/* V161 - fim */

/* ============================================================
   ALASTAR V164 - CONTADOR OFICIAL DE INAUGURACAO
   Data: 08/09/2026 20:00 - America/Sao_Paulo (UTC-03:00)
   Escopo exclusivo da Home. Nao altera header, chat ou dashboard.
   ============================================================ */

.alastar-launch-countdown-v164 {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: min(760px, 100%);
    margin: 0 auto 16px;
}

.alastar-launch-title-v164 {
    margin-bottom: 9px !important;
    color: #ffe4a8 !important;
    text-transform: uppercase;
    text-shadow:
        0 2px 10px rgba(0, 0, 0, .72),
        0 0 18px rgba(216, 121, 28, .18) !important;
}

.alastar-launch-timer-v164 {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(5px, .9vw, 12px);
    width: 100%;
    min-width: 0;
}

.alastar-launch-unit-v164 {
    position: relative;
    display: grid;
    place-items: center;
    min-width: clamp(78px, 10vw, 118px);
    padding: 9px 12px 8px;
    border: 1px solid rgba(225, 132, 41, .52);
    border-radius: 9px;
    background:
        linear-gradient(180deg, rgba(49, 25, 14, .88), rgba(7, 13, 21, .92)),
        rgba(6, 10, 16, .90);
    box-shadow:
        inset 0 1px 0 rgba(255, 218, 151, .10),
        0 5px 18px rgba(0, 0, 0, .32);
    overflow: hidden;
}

.alastar-launch-unit-v164::before {
    content: "";
    position: absolute;
    inset: 0 13%;
    top: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255, 184, 83, .75), transparent);
    pointer-events: none;
}

.alastar-launch-unit-v164 strong {
    display: block;
    min-width: 2ch;
    color: #fff0bd;
    font-family: "Cinzel", Georgia, serif;
    font-size: clamp(1.35rem, 2.2vw, 2rem);
    font-weight: 800;
    line-height: 1;
    letter-spacing: .04em;
    font-variant-numeric: tabular-nums;
    text-shadow: 0 2px 8px rgba(0, 0, 0, .70);
}

.alastar-launch-unit-v164 span {
    display: block;
    margin-top: 6px;
    color: #d9c5a3;
    font-family: "Cinzel", Georgia, serif;
    font-size: clamp(.60rem, .8vw, .72rem);
    font-weight: 700;
    line-height: 1;
    letter-spacing: .10em;
    text-transform: uppercase;
}

.alastar-launch-separator-v164 {
    color: #e18a33;
    font-family: Georgia, serif;
    font-size: clamp(1.4rem, 2.1vw, 1.9rem);
    font-weight: 700;
    line-height: 1;
    text-shadow: 0 0 12px rgba(225, 138, 51, .34);
}

.alastar-launch-date-v164 {
    margin: 8px 0 0;
    color: rgba(238, 219, 184, .82);
    font-family: "Cinzel", Georgia, serif;
    font-size: .72rem;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.alastar-launch-countdown-v164.is-launched-v164 .alastar-launch-timer-v164 {
    display: none;
}

.alastar-launch-countdown-v164.is-launched-v164 .alastar-launch-title-v164 {
    margin-bottom: 2px !important;
}

.alastar-launch-countdown-v164.is-launched-v164 .alastar-launch-date-v164 {
    color: #ffd58d;
    font-size: .88rem;
}

@media (max-width: 767px) {
    .alastar-launch-countdown-v164 {
        width: 100%;
        margin-bottom: 13px;
    }

    .alastar-launch-title-v164 {
        font-size: .98rem !important;
        letter-spacing: .055em !important;
    }

    .alastar-launch-timer-v164 {
        gap: 4px;
    }

    .alastar-launch-unit-v164 {
        min-width: 0;
        flex: 1 1 0;
        padding: 8px 5px 7px;
        border-radius: 7px;
    }

    .alastar-launch-unit-v164 strong {
        font-size: clamp(1.05rem, 5.3vw, 1.45rem);
    }

    .alastar-launch-unit-v164 span {
        margin-top: 5px;
        font-size: clamp(.48rem, 2.1vw, .62rem);
        letter-spacing: .055em;
    }

    .alastar-launch-separator-v164 {
        font-size: 1.15rem;
    }

    .alastar-launch-date-v164 {
        font-size: .62rem;
        letter-spacing: .055em;
    }
}

@media (max-width: 390px) {
    .alastar-launch-timer-v164 {
        gap: 3px;
    }

    .alastar-launch-unit-v164 {
        padding-inline: 3px;
    }

    .alastar-launch-separator-v164 {
        font-size: 1rem;
    }
}
/* ALASTAR V164 - fim */
