/* Radiometrics — tema sito pubblico (palette del logo: navy + teal) */
:root {
    --rm-navy: #112D4E;
    --rm-navy-2: #071B35;
    --rm-teal: #1DAEBE;
    --rm-teal-2: #20C7BB;
    --rm-blue: #1984C5;
    --rm-ink: #102B49;
}

html { height: 100%; }
body {
    background: #f6f8fb;
    color: #1b2733;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}
main { flex: 1 0 auto; }   /* footer sempre in fondo (sticky footer) */

/* Navbar chiara con il logo a colori */
.rm-navbar {
    background: #ffffff;
    border-bottom: 1px solid #e7ecf3;
    box-shadow: 0 1px 10px rgba(16, 43, 73, .05);
}
.rm-navbar .nav-link {
    color: var(--rm-ink);
    font-weight: 500;
}
.rm-navbar .nav-link:hover { color: var(--rm-teal); }
.rm-logo { display: block; }

/* Bottone brand (teal) */
.btn-brand {
    background: var(--rm-teal);
    border-color: var(--rm-teal);
    color: #fff;
}
.btn-brand:hover, .btn-brand:focus {
    background: #178a97;
    border-color: #178a97;
    color: #fff;
}

.text-brand { color: var(--rm-teal) !important; }

/* Hero navy */
.rm-hero {
    background: linear-gradient(135deg, var(--rm-navy) 0%, var(--rm-navy-2) 100%);
}
.rm-hero-chips .badge { font-weight: 500; }

/* Liste classifica */
.min-w-0 { min-width: 0; }
.rm-chart-list .list-group-item { border-color: #eef2f7; }
.rm-pos {
    width: 2.2rem;
    font-weight: 700;
    font-size: 1.1rem;
    color: var(--rm-navy);
}
.rm-plays { min-width: 72px; }

/* Copertine */
.rm-cover, .rm-cover-sm {
    flex: 0 0 auto;
    border-radius: 8px;
    background: linear-gradient(135deg, #e6edf5, #d7e3ef);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #9fb2c7;
    overflow: hidden;
}
.rm-cover { width: 56px; height: 56px; }
.rm-cover-sm { width: 40px; height: 40px; font-size: .9rem; }
.rm-cover img, .rm-cover-sm img { width: 100%; height: 100%; object-fit: cover; }

/* Feed live */
.rm-feed { max-height: 560px; overflow-y: auto; }
.rm-feed .list-group-item.rm-new { animation: rmflash 1.2s ease; }
@keyframes rmflash { from { background: #e3fbf7; } to { background: #fff; } }
.rm-live-dot {
    display: inline-block;
    width: 8px; height: 8px;
    border-radius: 50%;
    background: #fff;
    margin-right: 4px;
    animation: rmpulse 1.4s infinite;
}
@keyframes rmpulse { 0%,100% { opacity: 1; } 50% { opacity: .3; } }

/* Card emittenti */
.rm-station-card { transition: transform .12s ease, box-shadow .12s ease; border: 1px solid #e7ecf3; }
.rm-station-card:hover { transform: translateY(-2px); box-shadow: 0 6px 18px rgba(16,43,73,.10); }

/* Badge variazione classifica */
.rm-move { font-weight: 600; font-size: .82rem; min-width: 46px; text-align: right; }
.rm-move .up { color: #16a34a; }
.rm-move .down { color: #dc2626; }
.rm-move .same { color: #94a3b8; }
.rm-move .new { color: var(--rm-teal); font-weight: 700; }

/* Footer */
.rm-footer {
    background: var(--rm-navy-2);
    border-top: 3px solid var(--rm-teal);
}
.rm-footer .rm-copy { color: #fff; font-size: .9rem; }
.rm-nhm {
    line-height: 0;
    flex: 0 0 auto;
}
