.visits-page {
    --visits-ink: #102a43;
    --visits-muted: #627d98;
    --visits-accent: #1677ff;
    --visits-soft: #eaf3ff;
    background: linear-gradient(145deg, #f7fbff 0%, #ffffff 48%, #eef8f5 100%);
}

.visits-page .visits-hero {
    background: linear-gradient(120deg, #102a43 0%, #1677ff 100%);
    color: #fff;
    border-radius: 1.25rem;
    overflow: hidden;
    position: relative;
}

.visits-page .visits-hero::after {
    content: '';
    position: absolute;
    width: 260px;
    height: 260px;
    right: -70px;
    top: -100px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    box-shadow: 0 0 0 24px rgba(255, 255, 255, 0.04), 0 0 0 48px rgba(255, 255, 255, 0.03);
}

.visits-page .visits-hero-content {
    position: relative;
    z-index: 1;
}

.visits-page .visits-stat {
    background: rgba(255, 255, 255, 0.13);
    border: 1px solid rgba(255, 255, 255, 0.18);
}

.visits-page .country-card {
    border: 1px solid #e5edf5;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.visits-page .country-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 0.75rem 1.5rem rgba(16, 42, 67, 0.1) !important;
}

.visits-page .country-rank {
    color: var(--visits-accent);
    min-width: 2rem;
}

.visits-page .country-flag {
    width: 32px;
    height: 24px;
    object-fit: cover;
}

.visits-page .country-progress {
    height: 7px;
    background: #eaf0f6;
}

.visits-page .country-progress .progress-bar {
    background: linear-gradient(90deg, #1677ff, #34bfa3);
}

.visits-page .visits-note {
    color: var(--visits-muted);
}

.visits-page .visits-heading {
    color: var(--visits-ink);
}

@media (max-width: 575.98px) {
    .visits-page .visits-hero {
        border-radius: 0.9rem;
    }

    .visits-page .country-card {
        border-radius: 0.75rem !important;
    }
}
