/* ══ CifraNET Descobertas · "Qual Música Conta a História do Seu Amor?" ══
   24/10/2026 — identidade visual do teste (rosa, coral, dourado, lilás e
   azul-noturno). TUDO fica dentro de .musica-do-amor: nenhuma regra daqui
   alcança as outras descobertas. */

.musica-do-amor {
    --am-rosa: #f06292;
    --am-coral: #ff8f6b;
    --am-vinho: #6b1030;
    --am-dourado: #ffd166;
    --am-lilas: #b892ff;
    --am-noite: #221a3a;
    --am-creme: #fff6ef;
}

/* ── abertura ───────────────────────────────────────────────────────── */
.musica-do-amor .test-intro {
    position: relative;
    overflow: hidden;
    border-radius: 26px;
    padding: 2rem 1.4rem 1.9rem;
    background:
        radial-gradient(120% 90% at 8% 0%, rgba(255, 209, 102, .35) 0%, transparent 55%),
        radial-gradient(110% 90% at 100% 10%, rgba(184, 146, 255, .35) 0%, transparent 60%),
        linear-gradient(160deg, #2a1b3d 0%, #55163a 55%, #8e2b52 100%);
    color: #fff;
    box-shadow: 0 26px 60px rgba(43, 12, 34, .35);
}

.musica-do-amor .test-intro::after {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(70% 55% at 50% 108%, rgba(255, 143, 107, .38), transparent 70%);
    pointer-events: none;
}

.musica-do-amor .test-intro .eyebrow {
    position: relative;
    z-index: 1;
    color: #ffd166;
    letter-spacing: .16em;
    font-weight: 800;
}

.musica-do-amor .test-intro h1 {
    position: relative;
    z-index: 1;
    margin: .35rem 0 .7rem;
    font-size: clamp(1.6rem, 5.4vw, 2.5rem);
    line-height: 1.18;
    text-shadow: 0 3px 18px rgba(20, 4, 16, .45);
}

.musica-do-amor .test-intro p {
    position: relative;
    z-index: 1;
    max-width: 44ch;
    color: #ffe8f1;
    font-size: 1rem;
}

.musica-do-amor .test-intro .intro-facts {
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
    margin: 1.1rem 0 1.3rem;
}

.musica-do-amor .test-intro .intro-facts span {
    padding: .42rem .8rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, .14);
    border: 1px solid rgba(255, 255, 255, .22);
    color: #fff;
    font-size: .8rem;
    font-weight: 700;
    backdrop-filter: blur(4px);
}

.musica-do-amor .test-intro .primary {
    position: relative;
    z-index: 1;
    min-height: 58px;
    padding: 0 1.6rem;
    border: 0;
    border-radius: 999px;
    background: linear-gradient(135deg, #ffd166 0%, #ff8f6b 48%, #f06292 100%);
    color: #4b0f2b;
    font-size: 1.02rem;
    font-weight: 900;
    letter-spacing: .01em;
    box-shadow: 0 16px 34px rgba(240, 98, 146, .45);
    cursor: pointer;
}

.musica-do-amor .test-intro .primary:hover,
.musica-do-amor .test-intro .primary:focus-visible {
    transform: translateY(-1px);
    box-shadow: 0 20px 40px rgba(240, 98, 146, .55);
}

/* corações e notas — poucos, só de enfeite */
.musica-do-amor .am-enfeites {
    display: flex;
    justify-content: center;
    gap: .9rem;
    margin: 0 0 -.4rem;
    font-size: 1.15rem;
    opacity: .85;
    animation: am-flutua 5.5s ease-in-out infinite;
}

.musica-do-amor .am-enfeites span:nth-child(even) { animation-delay: .8s; }
.musica-do-amor .am-enfeites span:nth-child(3n) { opacity: .7; }

@keyframes am-flutua {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-4px); }
}

/* ── quiz ───────────────────────────────────────────────────────────── */
.musica-do-amor .quiz-panel {
    border-radius: 24px;
    border: 1px solid #f3d9e4;
    background: linear-gradient(180deg, #fffafc 0%, #fff4f8 100%);
    box-shadow: 0 18px 44px rgba(107, 16, 48, .12);
    padding: 1.4rem 1.2rem 1.5rem;
}

.musica-do-amor .quiz-panel progress {
    width: 100%;
    height: 10px;
    accent-color: #f06292;
}

.musica-do-amor .quiz-options {
    display: grid;
    gap: .6rem;
    margin: 1rem 0 0;
    padding: 0;
    border: 0;
}

.musica-do-amor .quiz-options legend {
    padding: 0;
    margin-bottom: .15rem;
    font-size: .8rem;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: #a2446a;
}

.musica-do-amor .quiz-options label {
    display: flex;
    align-items: center;
    gap: .7rem;
    border-radius: 16px;
    border: 1.5px solid #f6dbe6;
    background: #fff;
    padding: .95rem 1rem;
    font-size: .98rem;
    font-weight: 600;
    color: #3a1226;
    cursor: pointer;
    transition: border-color .15s ease, box-shadow .15s ease, transform .12s ease;
}

.musica-do-amor .quiz-options label:hover {
    border-color: #f06292;
    box-shadow: 0 10px 24px rgba(240, 98, 146, .18);
    transform: translateY(-1px);
}

.musica-do-amor .quiz-options input[type="radio"] {
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
    accent-color: #d4467a;
}

/* a escolha marcada ganha o degradê da casa */
.musica-do-amor .quiz-options label:has(input:checked) {
    border-color: #d4467a;
    background: linear-gradient(135deg, #fff0f6 0%, #ffe7f0 100%);
    box-shadow: 0 12px 26px rgba(212, 70, 122, .2);
}

.musica-do-amor .quiz-nav { gap: .6rem; }
.musica-do-amor .quiz-nav .primary {
    border-radius: 999px;
    background: linear-gradient(135deg, #ffd166 0%, #ff8f6b 50%, #f06292 100%);
    color: #4b0f2b;
    font-weight: 900;
}

/* ── resultado ──────────────────────────────────────────────────────── */
.musica-do-amor .result-hero {
    border-radius: 26px;
    background:
        radial-gradient(90% 70% at 100% 0%, rgba(255, 209, 102, .28), transparent 60%),
        linear-gradient(165deg, #251634 0%, #4d1436 60%, #7d2348 100%);
    color: #fff;
    padding: 1.7rem 1.3rem;
    box-shadow: 0 24px 55px rgba(38, 10, 30, .32);
}

.musica-do-amor .result-hero h1,
.musica-do-amor .result-hero p { color: #ffeaf2; }
.musica-do-amor .result-hero .eyebrow { color: #ffd166; }

.musica-do-amor .result-card {
    border-radius: 20px;
    box-shadow: 0 18px 40px rgba(20, 5, 16, .38);
}

/* bloco da música */
.am-musica {
    --am-fundo: #ff9a76;
    --am-fundo2: #ec5f8b;
    --am-tinta: #2a1220;
    --am-destaque: #ffffff;
    display: grid;
    gap: .45rem;
    justify-items: center;
    margin: 1.3rem 0 .4rem;
    padding: 1.4rem 1.2rem 1.5rem;
    border-radius: 22px;
    background: linear-gradient(150deg, var(--am-fundo) 0%, var(--am-fundo2) 100%);
    color: var(--am-tinta);
    text-align: center;
    box-shadow: 0 20px 44px rgba(37, 12, 28, .28);
}

.am-musica-rotulo {
    margin: 0;
    font-size: .8rem;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
    opacity: .85;
}

.am-musica-nome {
    margin: 0;
    font-size: clamp(1.45rem, 6vw, 2.1rem);
    font-weight: 900;
    line-height: 1.15;
}

.am-musica-artista {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    opacity: .9;
}

.am-musica-chips {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .4rem;
    margin: .35rem 0 0;
    padding: 0;
    list-style: none;
}

.am-musica-chips li {
    padding: .32rem .7rem;
    border-radius: 999px;
    background: var(--am-chip-fundo, rgba(0, 0, 0, .09));
    border: 1px solid var(--am-chip-borda, rgba(0, 0, 0, .22));
    color: var(--am-tinta);
    font-size: .78rem;
    font-weight: 700;
}

.am-musica .am-cifra {
    margin-top: .7rem;
    border-radius: 999px;
    background: var(--am-destaque);
    color: var(--am-sobre-destaque, #45122c);
    font-weight: 900;
    padding: .85rem 1.4rem;
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    box-shadow: 0 12px 26px rgba(30, 8, 22, .22);
}

.am-musica .am-cifra:hover { transform: translateY(-1px); }

.am-sem-cifra {
    margin: .6rem 0 0;
    color: var(--am-tinta);
    font-size: .85rem;
    font-weight: 600;
    opacity: .8;
}

/* o tema do resultado pinta os parágrafos de branco; aqui a tinta do card manda */
.musica-do-amor .am-musica .am-musica-rotulo,
.musica-do-amor .am-musica .am-musica-nome,
.musica-do-amor .am-musica .am-musica-artista,
.musica-do-amor .am-musica .am-sem-cifra {
    color: var(--am-tinta, #2a1220);
}

@media (max-width: 560px) {
    .musica-do-amor .test-intro { padding: 1.6rem 1.05rem 1.5rem; border-radius: 20px; }
    .musica-do-amor .test-intro .primary { width: 100%; }
    .musica-do-amor .result-hero { padding: 1.35rem 1rem; border-radius: 20px; }
    .am-musica { padding: 1.2rem 1rem 1.3rem; }
}

@media (prefers-reduced-motion: reduce) {
    .musica-do-amor .am-enfeites { animation: none; }
    .musica-do-amor .test-intro .primary:hover { transform: none; }
}
