/* ============================================================ 
   CRYWOLF MODERN DASHBOARD - ICE & NAVY
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400;700;900&family=Outfit:wght@300;400;600&display=swap');

:root {
    --ice-blue: #5470B7;
    /* Aço Azulado para Destaques */
    --navy-deep: #030814;
    /* Ultra Dark (Fundo solicitado) */
    --navy-accent: #243781;
    /* Azul Marinho Primário */
    --gold-accent: #ffcc00;
    --cyan-glow: #9BA8D9;
    /* Brilho Suave Gélido */
    --glass-bg: rgba(5, 7, 20, 0.95);
    --border-soft: rgba(84, 112, 183, 0.15);
    --cyan-primary: #5470B7;
    --text-main: #DEE2F5;
    /* Texto Claro Suave */
}

/* GLOBAL RESET */
html,
body {
    background: var(--navy-deep) !important;
    font-family: 'Outfit', sans-serif;
    color: var(--text-main);
    margin: 0;
    padding: 0;
    min-height: 100vh;
}

/* body::before {
    content: ""; position: fixed; top: 0; left: 0; width: 100%; height: 100%;
    background-image: 
        none 0%, transparent 50%),
        none 0%, transparent 50%);
    pointer-events: none; z-index: -1;
} */

.main-home-toshiro.container {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 40px 15px;
    display: block !important;
}

/* TOP FEATURE BLOCKS - PREMIUM HORIZONTAL STYLE */
.top-feature-blocks {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: linear-gradient(90deg, rgba(11, 20, 38, 0) 0%, rgba(11, 20, 38, 0.8) 50%, rgba(11, 20, 38, 0) 100%);
    padding: 40px 60px;
    margin-bottom: 40px;
    border-radius: 8px;
}

.feature-block {
    display: flex;
    align-items: center;
    gap: 20px;
    text-decoration: none !important;
    flex: 1;
    justify-content: center;
    transition: 0.3s;
}

.feature-block:hover {
    transform: translateY(-5px);
}

.feature-gold-wrapper {
    position: relative;
}

.gold-ring-icon {
    width: 90px;
    height: 90px;
    border: 3px solid rgba(255, 204, 0, 0.6);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-shadow: 0 0 20px rgba(255, 204, 0, 0.2);
    background: rgba(0, 0, 0, 0.4);
}

.gold-ring-icon img {
    width: 60px;
    height: 60px;
    object-fit: contain;
    z-index: 2;
}

.ring-light {
    position: absolute;
    top: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 15px;
    height: 15px;
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 0 15px #fff, 0 0 25px var(--gold-accent);
    z-index: 3;
}

.feature-info h3 {
    font-family: 'Orbitron', sans-serif;
    color: #fff;
    font-size: 16px;
    margin: 0;
    letter-spacing: 4px;
    font-weight: 700;
}

.feature-info p {
    font-size: 11px;
    color: #889cad;
    margin: 5px 0 0 0;
    text-transform: none;
    letter-spacing: 0;
}

.feature-separator {
    width: 1px;
    height: 40px;
    background: rgba(255, 255, 255, 0.1);
    margin: 0 20px;
}

/* GRID SYSTEM - FIXING OVERFLOW */
.home-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 340px !important;
    gap: 30px !important;
    width: 100% !important;
}

.home-main-content {
    min-width: 0 !important;
    overflow: hidden;
}

/* CONTAINERS & HIDING LEGACY BORDERS */
.sidebar-box,
.news-section-wrapper,
.rankings-section-wrapper,
.rankings-column {
    background: var(--glass-bg) !important;
    backdrop-filter: blur(20px);
    border: 1px solid var(--border-soft) !important;
    border-radius: 4px;
    padding: 25px;
    margin-bottom: 25px;
    position: relative;
    box-shadow: none !important;
}

/* Removal of gold ornate corners/borders */
.sidebar-box:before,
.sidebar-box:after,
.news-section-wrapper:before,
.news-section-wrapper:after,
.rankings-section-wrapper:before,
.rankings-section-wrapper:after,
.feature-block:before,
.feature-block:after,
.rankings-column:before,
.rankings-column:after,
.top-border,
.bottom-border,
.left-border,
.right-border {
    display: none !important;
    background: none !important;
}

/* TITLES */
.section-title,
.sidebar-title,
.news-header h2 {
    font-family: 'Orbitron', sans-serif !important;
    color: #fff !important;
    font-size: 13px !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    margin-bottom: 20px !important;
    display: flex;
    align-items: center;
    gap: 12px;
    font-weight: 700 !important;
}

.section-title::before,
.sidebar-title::before,
.news-header h2::before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    background: var(--cyan-primary);
    border-radius: 1px;
    transform: rotate(45deg);
    box-shadow: 0 0 10px var(--cyan-primary);
}

/* VITRINE MARKET - CAROUSEL STYLE */
.market-section-home {
    margin: 40px 0;
}

.market-header {
    text-align: center;
    margin-bottom: 30px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.market-header::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 136, 255, 0.4), transparent);
}

.market-title {
    font-family: 'Orbitron', sans-serif;
    color: #fff;
    letter-spacing: 15px;
    font-size: 18px;
    background: #02060f;
    padding: 0 40px;
    position: relative;
    z-index: 2;
}

.swiper-market {
    width: 100%;
    overflow: hidden;
    padding: 10px 0 40px;
}

.market-card {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.05) !important;
    border-radius: 12px;
    padding: 20px 15px;
    text-align: center;
    transition: 0.4s;
}

.market-card:hover {
    background: rgba(255, 255, 255, 0.07);
    border-color: rgba(0, 136, 255, 0.3) !important;
    transform: translateY(-10px);
}

.item-circle-bg {
    width: 90px;
    height: 90px;
    margin: 0 auto 15px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.05) 0%, transparent 70%);
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.05);
}

.item-circle-bg img {
    max-width: 70px;
    max-height: 70px;
}

.market-item-name {
    color: #00ff7f;
    font-size: 13px;
    font-weight: 700;
    height: 34px;
    line-clamp: 2;
    overflow: hidden;
    margin-bottom: 15px;
}

.item-options-badges {
    display: flex;
    justify-content: center;
    gap: 5px;
    margin-bottom: 20px;
}

.badge-opt {
    font-size: 9px;
    padding: 2px 8px;
    border-radius: 10px;
    background: rgba(0, 136, 255, 0.15);
    color: #fff;
    border: 1px solid rgba(0, 136, 255, 0.3);
}

.market-item-price {
    border-top: 1px solid rgba(255, 255, 255, 0.05);
    padding-top: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-family: 'Orbitron', sans-serif;
    margin-bottom: 20px;
}

.price-icon {
    width: 16px;
    height: 16px;
    background-size: contain;
    background-repeat: no-repeat;
}

.icon-credits {
    background-image: url('../images/donation-item.webp');
}

.btn-buy-vitrine {
    flex: 1;
    height: 36px;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    border-radius: 20px !important;
    color: #fff !important;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
    transition: 0.3s;
}

.btn-buy-vitrine:hover {
    background: #fff !important;
    color: #000 !important;
}

/* NEWS SECTION WRAPPER - PREMIUM UPGRADE */
.news-section-wrapper {
    background: linear-gradient(180deg, rgba(16, 36, 68, 0.4) 0%, rgba(5, 7, 20, 0.6) 100%) !important;
    border: 1px solid rgba(84, 112, 183, 0.15) !important;
    border-radius: 8px;
    padding: 30px !important;
    margin-top: 0 !important;
    position: relative;
    box-shadow: none !important;
    overflow: hidden;
}

.news-section-wrapper::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, transparent, #00d2ff, transparent);
    z-index: 2;
    box-shadow: 0 0 15px rgba(0, 210, 255, 0.4);
    animation: glow-pulse 3s infinite alternate;
}

@keyframes glow-pulse {
    0% {
        opacity: 0.4;
    }

    100% {
        opacity: 1;
    }
}

.news-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 25px;
    border-bottom: 1px solid rgba(84, 112, 183, 0.2);
    padding-bottom: 15px;
}

.news-row-item,
.news-card-premium {
    background: rgba(255, 255, 255, 0.02) !important;
    margin-bottom: 10px !important;
    padding: 15px 25px !important;
    display: flex !important;
    align-items: center !important;
    text-decoration: none !important;
    border-radius: 4px !important;
    transition: 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    position: relative !important;
    border: 1px solid rgba(255, 255, 255, 0.03) !important;
}

.news-row-item:hover,
.news-card-premium:hover {
    background: rgba(0, 210, 255, 0.05) !important;
    border-color: rgba(0, 210, 255, 0.2) !important;
    transform: translateX(5px) !important;
    box-shadow: none !important;
}

.news-card-premium:hover .news-arrow-icon {
    color: #00d2ff !important;
    transform: translateX(3px);
}

.news-crystal-icon {
    width: 10px;
    height: 10px;
    background: var(--ice-blue);
    transform: rotate(45deg);
    margin-right: 25px;
    box-shadow: 0 0 15px var(--ice-blue);
}

.news-title {
    font-size: 14px;
    font-weight: 600;
    flex: 1;
    color: #fff;
}

/* GLOBAL PREMIUM WIDGET CLASS */
.widget-premium,
.rankings-column,
.user-panel-box,
.stats-widget,
.reward-widget,
.kok-widget {
    background: linear-gradient(180deg, #071224 0%, #030a16 100%) !important;
    border: 1px solid rgba(0, 210, 255, 0.14) !important;
    border-top: 2px solid rgba(0, 210, 255, 0.4) !important;
    border-radius: 8px;
    padding: 25px !important;
    position: relative;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5), inset 0 0 15px rgba(0, 210, 255, 0.03) !important;
    margin-bottom: 25px;
    overflow: hidden;
}

.widget-premium::before,
.rankings-column::before,
.user-panel-box::before,
.stats-widget::before,
.reward-widget::before,
.kok-widget::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(0, 210, 255, 0.45), transparent);
    z-index: 2;
}

/* RANKINGS - TOURNAMENT STYLE REFINED (PREMIUM PANEL) */
.modern-rankings-section {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 30px !important;
    margin-bottom: 60px;
}

.rank-header-col {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 25px;
    padding: 0 5px;
}

.rank-header-col h2 {
    font-family: 'Trajan Pro', serif;
    font-size: 24px;
    color: #ffffff;
    margin: 0;
    text-transform: none;
    letter-spacing: 1.5px;
    text-shadow: 0 0 10px rgba(0, 210, 255, 0.25);
}

/* OCTAGONAL SMALL BUTTON REFINED */
.btn-view-more-hex {
    background: #0d1e3d linear-gradient(135deg, rgba(0, 136, 255, 0.5) 0%, rgba(13, 30, 61, 0.95) 100%) !important;
    border: 2px solid rgba(0, 210, 255, 0.6) !important;
    border-radius: 4px !important;
    color: #fff !important;
    font-family: 'Cinzel', serif !important;
    font-weight: 800 !important;
    font-size: 9px;
    padding: 6px 16px;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    clip-path: none !important;
    box-shadow: 0 0 15px rgba(0, 210, 255, 0.2), inset 0 0 10px rgba(0, 210, 255, 0.1) !important;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
    animation: iceGlow 3s ease-in-out infinite !important;
}

.btn-view-more-hex:hover {
    box-shadow: 0 0 30px rgba(0, 210, 255, 0.5), inset 0 0 20px rgba(0, 210, 255, 0.2) !important;
    border-color: rgba(0, 210, 255, 1) !important;
    color: #fff !important;
}

/* RANK TABLE STYLING - MINIMALIST */
.rank-table-tournament,
.rank-table-tournament thead,
.rank-table-tournament tbody,
.rank-table-tournament tr {
    background: none !important;
    border: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    filter: none !important;
}

.rank-table-tournament thead th {
    text-align: left !important;
    font-size: 11px !important;
    color: rgba(0, 200, 245, 0.65) !important;
    padding: 10px !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
    font-family: 'Outfit', sans-serif !important;
    font-weight: 500 !important;
    background: none !important;
    border: none !important;
    border-bottom: 1px solid rgba(0, 210, 255, 0.1) !important;
}

.rank-table-tournament td {
    padding: 14px 10px !important;
    font-size: 14px !important;
    color: #ffffff !important;
    border: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;
    font-family: 'Outfit', sans-serif !important;
    background: none !important;
}

.rank-table-tournament tr:last-child td {
    border-bottom: none !important;
}

/* COLOR CODES FROM REFERENCE */
.rank-name {
    font-weight: 500;
    color: #ffffff;
}

.rank-empire {
    color: #00d2ff;
    font-weight: 500;
}

/* Shinsoo Red */
.rank-race {
    color: #e6b800;
    font-weight: 500;
}

/* Class Yellow */
.rank-level {
    color: #64d8ff;
    font-weight: 600;
}

.rank-row:hover {
    background: rgba(255, 255, 255, 0.02);
}

/* CENTERED FOOTER BUTTON */
.rankings-footer {
    grid-column: span 2;
    display: flex;
    justify-content: center;
    margin-top: 40px;
}

.btn-view-all-hex {
    background: #0d1e3d linear-gradient(135deg, rgba(0, 136, 255, 0.5) 0%, rgba(13, 30, 61, 0.95) 100%);
    border: 2px solid rgba(0, 210, 255, 0.6);
    border-radius: 4px;
    color: #fff !important;
    font-family: 'Cinzel', serif;
    font-weight: 800;
    font-size: 11px;
    padding: 12px 45px;
    text-decoration: none !important;
    clip-path: none;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    letter-spacing: 2px;
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn-view-all-hex:hover {
    border-color: rgba(0, 210, 255, 1);
    color: #fff !important;
}

/* USER PANEL - GAMING INTERFACE STYLE */
.user-panel-box {
    background: linear-gradient(135deg, rgba(11, 20, 38, 0.95) 0%, rgba(2, 6, 15, 0.98) 100%) !important;
    border: 1px solid rgba(0, 210, 255, 0.1) !important;
    border-radius: 8px;
    padding: 30px 20px !important;
    position: relative;
    box-shadow: none !important;
    overflow: hidden;
}

.user-panel-box::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--ice-blue), transparent);
    opacity: 0.5;
}

.guest-profile-placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-bottom: 30px;
}

.guest-avatar {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(0, 210, 255, 0.1) 0%, transparent 70%);
    border: 2px solid rgba(0, 210, 255, 0.3);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 32px;
    color: var(--ice-blue);
    margin-bottom: 15px;
    box-shadow: 0 0 20px rgba(0, 210, 255, 0.2);
    position: relative;
}

.guest-avatar::before {
    content: '';
    position: absolute;
    width: 110%;
    height: 110%;
    border: 1px dashed rgba(0, 210, 255, 0.2);
    border-radius: 50%;
    animation: rotate 10s linear infinite;
}

.guest-info h3 {
    font-family: 'Orbitron', sans-serif;
    font-size: 16px;
    color: #fff;
    margin: 0;
    letter-spacing: 2px;
}

.guest-info p {
    font-size: 11px;
    color: #889cad;
    margin: 5px 0 0 0;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* ACCESS HUB DIVIDER */
.access-hub-label {
    display: flex;
    align-items: center;
    gap: 15px;
    margin: 25px 0;
    width: 100%;
}

.access-hub-label::before,
.access-hub-label::after {
    content: '';
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0, 210, 255, 0.2), transparent);
}

.access-hub-label span {
    font-family: 'Orbitron';
    font-size: 9px;
    color: rgba(255, 255, 255, 0.3);
    letter-spacing: 3px;
}

/* GAMING BUTTONS */
.btn-game-login,
.btn-game-register {
    width: 100%;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    text-decoration: none !important;
    font-family: 'Orbitron';
    font-size: 11px;
    font-weight: 700;
    color: #fff !important;
    text-transform: uppercase;
    border-radius: 4px;
    transition: 0.3s;
    position: relative;
    overflow: hidden;
}

.btn-game-login {
    background: linear-gradient(135deg, #102444 0%, #243781 100%) !important;
    border: 1px solid rgba(84, 112, 183, 0.4) !important;
    margin-bottom: 10px;
}

.btn-game-register {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(84, 112, 183, 0.2) !important;
    color: var(--cyan-glow) !important;
}

.btn-game-login:hover {
    background: #5470B7 !important;
    box-shadow: 0 0 20px rgba(84, 112, 183, 0.4);
}

.btn-game-register:hover {
    background: rgba(84, 112, 183, 0.1);
    border-color: #5470B7 !important;
    color: #fff !important;
}

@keyframes rotate {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* BUTTONS */
.btn-toshiro,
.btn-view-more {
    font-family: 'Orbitron';
    font-size: 10px;
    height: 36px;
    padding: 0 20px;
    border-radius: 4px;
    border: 1px solid rgba(0, 136, 255, 0.4) !important;
    background: rgba(0, 136, 255, 0.1) !important;
    color: #fff !important;
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
}

.btn-toshiro:hover {
    background: var(--cyan-primary) !important;
    box-shadow: 0 0 20px rgba(0, 136, 255, 0.4);
}

/* PREMIUM DOWNLOAD BUTTON - OCTAGONAL STYLE WITH ENERGY FLARES */
.btn-download-premium {
    position: relative;
    width: 100%;
    height: 70px;
    background: linear-gradient(180deg, #1d4d82 0%, #153a63 100%) !important;
    clip-path: polygon(10% 0%, 90% 0%, 100% 50%, 90% 100%, 10% 100%, 0% 50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    transition: 0.4s;
    margin-bottom: 20px;
    overflow: hidden;
    cursor: pointer;
}

.btn-download-premium::before {
    content: '';
    position: absolute;
    top: 0;
    left: -150%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.1), transparent);
    animation: shimmer 4s infinite linear;
}

.btn-download-premium:hover {
    transform: translateY(-3px);
    filter: brightness(1.3);
    box-shadow: 0 10px 40px rgba(0, 210, 255, 0.2);
}

.download-title {
    font-family: 'Trajan Pro', 'Orbitron', serif;
    color: #fff;
    font-size: 20px;
    font-weight: 900;
    letter-spacing: 3px;
    margin: 0;
}

.download-size {
    font-family: 'Outfit', sans-serif;
    color: #00d2ff;
    font-size: 11px;
    margin-top: 3px;
    letter-spacing: 1px;
    font-weight: 600;
}

@keyframes shimmer {
    0% {
        left: -150%;
    }

    100% {
        left: 150%;
    }
}

/* FOOTER */
.footer-toshiro {
    background: #01040a !important;
    padding: 60px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.footer-grid {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1fr 1fr;
    gap: 40px;
}

@media (max-width: 1024px) {

    .home-grid,
    .footer-grid {
        display: block !important;
    }

    .sidebar-box,
    .rankings-column {
        margin-top: 30px;
    }
}

@media (max-width: 1024px) {
    .top-feature-blocks {
        display: block !important;
        padding: 40px 20px;
    }

    .feature-block {
        margin-bottom: 30px;
    }

    .feature-separator {
        display: none;
    }
}

/* Rankings section — colapsa para 1 coluna em telas menores */
@media (max-width: 768px) {
    .modern-rankings-section {
        grid-template-columns: 1fr !important;
    }

    .rankings-footer {
        grid-column: span 1;
    }
}

/* Footer grid — adapta colunas */
@media (max-width: 768px) {
    .footer-grid {
        grid-template-columns: 1fr 1fr !important;
    }
}

@media (max-width: 480px) {
    .footer-grid {
        grid-template-columns: 1fr !important;
    }
}