@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,700;1,400&family=DM+Sans:wght@300;400;500;600&display=swap');

/* ── WRAP / VARIÁVEIS ── */
.ane-amor-wrap {
    --ane-p:#e91e8c; --ane-s:#9c27b0; --ane-bg:#1a0a2e;
    --ane-surf:rgba(255,255,255,.06); --ane-surf2:rgba(255,255,255,.10);
    --ane-brd:rgba(255,255,255,.12);  --ane-txt:#f0e6ff;
    --ane-dim:rgba(240,230,255,.6);   --ane-r:18px; --ane-rs:10px;
    --ane-glow:0 0 28px rgba(233,30,140,.35);
    font-family:'DM Sans',sans-serif; color:var(--ane-txt);
    background:var(--ane-bg); max-width:600px; margin:30px auto;
    border-radius:24px; overflow:hidden; position:relative;
    box-shadow:0 8px 40px rgba(0,0,0,.5),0 0 0 1px var(--ane-brd);
}

/* ── PARTÍCULAS ── */
.ane-particles{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0;}
.ane-particle{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--ane-p);opacity:0;animation:ane-fl var(--d,8s) var(--dl,0s) infinite ease-in-out;}
.ane-particle:nth-child(odd){background:var(--ane-s);}
.ane-particle:nth-child(1){left:5%;top:80%;--d:7s;--dl:0s} .ane-particle:nth-child(2){left:15%;top:60%;--d:9s;--dl:1s}
.ane-particle:nth-child(3){left:25%;top:90%;--d:6s;--dl:2s} .ane-particle:nth-child(4){left:35%;top:70%;--d:8s;--dl:.5s}
.ane-particle:nth-child(5){left:45%;top:85%;--d:7s;--dl:3s} .ane-particle:nth-child(6){left:55%;top:75%;--d:10s;--dl:1.5s}
.ane-particle:nth-child(7){left:65%;top:65%;--d:8s;--dl:2.5s} .ane-particle:nth-child(8){left:75%;top:80%;--d:6s;--dl:.3s}
.ane-particle:nth-child(9){left:85%;top:55%;--d:9s;--dl:4s} .ane-particle:nth-child(10){left:10%;top:40%;--d:7s;--dl:2s}
.ane-particle:nth-child(11){left:20%;top:20%;--d:8s;--dl:1s} .ane-particle:nth-child(12){left:50%;top:30%;--d:6s;--dl:3.5s}
.ane-particle:nth-child(13){left:70%;top:10%;--d:9s;--dl:.8s} .ane-particle:nth-child(14){left:90%;top:40%;--d:7s;--dl:2.2s}
.ane-particle:nth-child(15){left:80%;top:25%;--d:11s;--dl:1.8s} .ane-particle:nth-child(16){left:30%;top:45%;--d:8s;--dl:.6s}
.ane-particle:nth-child(17){left:60%;top:50%;--d:7s;--dl:3.2s} .ane-particle:nth-child(18){left:40%;top:15%;--d:9s;--dl:1.4s}
@keyframes ane-fl{0%,100%{transform:translateY(0) scale(1);opacity:0}20%{opacity:.8}50%{transform:translateY(-80px) scale(1.5);opacity:.5}80%{opacity:.2}}

/* ── HEADER ── */
.ane-header{position:relative;z-index:1;text-align:center;padding:40px 32px 24px;
    background:linear-gradient(160deg,rgba(233,30,140,.18),rgba(156,39,176,.18));
    border-bottom:1px solid var(--ane-brd);}
.ane-header-icon{font-size:2.8rem;display:block;margin-bottom:12px;
    animation:ane-pulse 2.5s ease-in-out infinite;}
@keyframes ane-pulse{0%,100%{transform:scale(1);filter:drop-shadow(0 0 0 rgba(233,30,140,0))}
    50%{transform:scale(1.12);filter:drop-shadow(0 0 14px rgba(233,30,140,.8))}}
.ane-title{font-family:'Playfair Display',serif;font-size:clamp(1.5rem,5vw,2rem);font-weight:700;
    margin:0 0 6px;background:linear-gradient(135deg,#ff6ec7,var(--ane-s));
    -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2;}
.ane-subtitle{color:var(--ane-dim);font-size:.9rem;margin:0;font-weight:300;}

/* ── PROGRESSO ── */
.ane-progress{position:relative;z-index:1;padding:14px 28px 0;}
.ane-progress-track{height:5px;background:rgba(255,255,255,.1);border-radius:99px;overflow:hidden;}
.ane-progress-fill{height:100%;width:25%;background:linear-gradient(90deg,var(--ane-p),var(--ane-s));border-radius:99px;transition:width .5s cubic-bezier(.4,0,.2,1);}
.ane-progress-txt{display:block;font-size:.74rem;color:var(--ane-dim);text-align:right;margin-top:5px;}

/* ── ETAPAS ── */
.ane-etapa{position:relative;z-index:1;padding:28px 28px 32px;display:none;animation:ane-in .45s cubic-bezier(.4,0,.2,1) both;}
.ane-ativa{display:block;}
@keyframes ane-in{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.ane-etapa-head{margin-bottom:24px;text-align:center;}
.ane-badge{display:inline-block;background:linear-gradient(135deg,var(--ane-p),var(--ane-s));color:#fff;font-size:.74rem;font-weight:600;padding:4px 14px;border-radius:99px;margin-bottom:10px;letter-spacing:.04em;text-transform:uppercase;}
.ane-etapa-head h3{font-family:'Playfair Display',serif;font-size:clamp(1.2rem,4vw,1.5rem);margin:0 0 6px;color:var(--ane-txt);}
.ane-etapa-head p{color:var(--ane-dim);font-size:.88rem;margin:0;}

/* ── FIELD / INPUT ── */
.ane-field{margin-bottom:22px;}
.ane-field label{display:block;font-size:.74rem;font-weight:600;color:var(--ane-dim);margin-bottom:10px;letter-spacing:.02em;text-transform:uppercase;}
.ane-field input[type="text"]{width:100%;padding:14px 18px;background:var(--ane-surf);border:1px solid var(--ane-brd);border-radius:var(--ane-rs);color:var(--ane-txt);font-family:inherit;font-size:1rem;outline:none;transition:border-color .2s,box-shadow .2s;box-sizing:border-box;}
.ane-field input[type="text"]:focus{border-color:var(--ane-p);box-shadow:0 0 0 3px rgba(233,30,140,.2);}
.ane-field input[type="text"]::placeholder{color:rgba(240,230,255,.3);}

/* ── SIGNOS ── */
.ane-signo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;}
@media(max-width:400px){.ane-signo-grid{grid-template-columns:repeat(3,1fr);}}
.ane-signo-btn{background:var(--ane-surf);border:1px solid var(--ane-brd);border-radius:var(--ane-rs);color:var(--ane-txt);cursor:pointer;padding:10px 4px;text-align:center;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:4px;font-family:inherit;}
.ane-signo-btn:hover{background:var(--ane-surf2);border-color:var(--ane-p);transform:translateY(-2px);}
.ane-signo-btn.ane-sel{background:linear-gradient(135deg,rgba(233,30,140,.3),rgba(156,39,176,.3));border-color:var(--ane-p);box-shadow:var(--ane-glow);}
.ane-sym{font-size:1.4rem;line-height:1;} .ane-snom{font-size:.6rem;color:var(--ane-dim);}
.ane-signo-btn.ane-sel .ane-snom{color:var(--ane-txt);}

/* ── OPÇÕES ── */
.ane-opcoes-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;}
.ane-g3{grid-template-columns:repeat(3,1fr);}
@media(max-width:380px){.ane-g3{grid-template-columns:repeat(2,1fr);}}
.ane-opcao{background:var(--ane-surf);border:1px solid var(--ane-brd);border-radius:var(--ane-rs);color:var(--ane-txt);cursor:pointer;padding:14px 10px;text-align:center;transition:all .2s;font-family:inherit;font-size:.88rem;display:flex;flex-direction:column;align-items:center;gap:6px;line-height:1.3;}
.ane-opcao:hover{background:var(--ane-surf2);border-color:var(--ane-p);transform:translateY(-2px);}
.ane-opcao.ane-sel{background:linear-gradient(135deg,rgba(233,30,140,.3),rgba(156,39,176,.3));border-color:var(--ane-p);box-shadow:var(--ane-glow);font-weight:600;}
.ane-oico{font-size:1.6rem;line-height:1;}
.ane-opcoes-lista{display:flex;flex-direction:column;gap:10px;}
.ane-lista{flex-direction:row;text-align:left;padding:14px 16px;gap:14px;}
.ane-lista .ane-oico{font-size:1.4rem;flex-shrink:0;}
.ane-lista strong{display:block;font-size:.95rem;}
.ane-lista small{font-size:.78rem;color:var(--ane-dim);}

/* ── BOTÕES DE NAVEGAÇÃO ── */
.ane-btn-prox,.ane-btn-calc{width:100%;padding:16px;background:linear-gradient(135deg,var(--ane-p),var(--ane-s));border:none;border-radius:var(--ane-rs);color:#fff;font-family:inherit;font-size:1rem;font-weight:600;cursor:pointer;transition:all .25s;box-shadow:0 4px 20px rgba(233,30,140,.4);margin-top:8px;}
.ane-btn-prox:hover,.ane-btn-calc:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(233,30,140,.55);}
.ane-nav{display:flex;gap:12px;margin-top:8px;}
.ane-nav .ane-btn-prox,.ane-nav .ane-btn-calc{flex:1;margin-top:0;}
.ane-btn-volt{flex:0 0 auto;padding:16px 20px;background:var(--ane-surf);border:1px solid var(--ane-brd);border-radius:var(--ane-rs);color:var(--ane-dim);font-family:inherit;font-size:.9rem;cursor:pointer;transition:all .2s;white-space:nowrap;}
.ane-btn-volt:hover{background:var(--ane-surf2);color:var(--ane-txt);}

/* ═══════════════ RESULTADO ═══════════════ */
.ane-resultado{position:relative;overflow:hidden;}
.ane-res-bg{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(233,30,140,.18),transparent 60%),radial-gradient(ellipse at 80% 100%,rgba(156,39,176,.15),transparent 60%);pointer-events:none;animation:ane-breathe 6s ease-in-out infinite;}
@keyframes ane-breathe{0%,100%{opacity:1}50%{opacity:.6}}

.ane-res-topo{text-align:center;margin-bottom:16px;}
.ane-res-emoji{font-size:3rem;display:block;margin-bottom:10px;animation:ane-hb 1.4s ease-in-out infinite;}
@keyframes ane-hb{0%,100%{transform:scale(1)}14%{transform:scale(1.18)}28%{transform:scale(1)}42%{transform:scale(1.12)}70%{transform:scale(1)}}
.ane-res-nomes{font-family:'Playfair Display',serif;font-size:clamp(1.1rem,4vw,1.4rem);margin:0;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;}
.ane-heart-sep{animation:ane-hb 1.4s ease-in-out infinite;display:inline-block;}

/* Círculo SVG */
.ane-circle-wrap{position:relative;width:180px;height:180px;margin:16px auto;}
.ane-circle-svg{width:100%;height:100%;transform:rotate(-90deg);}
.ane-circle-bg{fill:none;stroke:rgba(255,255,255,.08);stroke-width:10;}
.ane-circle-fill{fill:none;stroke:url(#aneGrad);stroke-width:10;stroke-linecap:round;stroke-dasharray:427.26;stroke-dashoffset:427.26;transition:stroke-dashoffset 1.8s cubic-bezier(.4,0,.2,1);}
.ane-circle-num{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:2.8rem;font-weight:700;color:var(--ane-txt);}
.ane-circle-num small{font-size:1.1rem;margin-top:8px;color:var(--ane-dim);font-family:'DM Sans',sans-serif;}

.ane-res-temp{text-align:center;font-size:1rem;font-weight:600;padding:9px 22px;border-radius:99px;display:flex;justify-content:center;margin:0 auto 18px;}
.ane-barra-vis{height:8px;background:rgba(255,255,255,.08);border-radius:99px;overflow:hidden;margin:0 0 22px;}
.ane-barra-fill{height:100%;width:0;background:linear-gradient(90deg,var(--ane-p),var(--ane-s),#ff6ec7);border-radius:99px;transition:width 1.6s cubic-bezier(.4,0,.2,1) .3s;}

.ane-res-card{background:var(--ane-surf);border:1px solid var(--ane-brd);border-radius:var(--ane-rs);padding:16px 18px;margin-bottom:14px;font-size:.9rem;line-height:1.55;}
.ane-res-card h4{margin:0 0 8px;font-size:.72rem;font-weight:600;letter-spacing:.03em;color:var(--ane-dim);text-transform:uppercase;}
.ane-res-card p{margin:0;}
.ane-card-frase{background:linear-gradient(135deg,rgba(233,30,140,.18),rgba(156,39,176,.18));border-color:rgba(233,30,140,.3);font-style:italic;font-family:'Playfair Display',serif;font-size:1rem;text-align:center;}
.ane-res-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px;}
@media(max-width:440px){.ane-res-grid{grid-template-columns:1fr;}}

.ane-elementos{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:24px;}
.ane-elem-tag{background:var(--ane-surf);border:1px solid var(--ane-brd);border-radius:99px;padding:6px 16px;font-size:.82rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;}
.ane-elem-vs{color:var(--ane-dim);font-size:.8rem;}

.ane-share{background:var(--ane-surf);border:1px solid var(--ane-brd);border-radius:var(--ane-rs);padding:20px;margin-bottom:16px;text-align:center;}
.ane-share-tit{font-size:.9rem;font-weight:600;margin:0 0 14px;color:var(--ane-dim);}
.ane-share-btns{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;}
.ane-shr{display:flex;align-items:center;gap:7px;padding:11px 18px;border:none;border-radius:var(--ane-rs);font-family:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s;}
.ane-shr-wpp{background:#25d366;color:#fff;}
.ane-shr-fb{background:#1877f2;color:#fff;}
.ane-shr-cp{background:var(--ane-surf2);border:1px solid var(--ane-brd);color:var(--ane-txt);}
.ane-shr:hover{transform:translateY(-2px);filter:brightness(1.1);}
.ane-btn-refazer{width:100%;padding:14px;background:transparent;border:1px solid var(--ane-brd);border-radius:var(--ane-rs);color:var(--ane-dim);font-family:inherit;font-size:.9rem;cursor:pointer;transition:all .2s;margin-bottom:8px;}
.ane-btn-refazer:hover{background:var(--ane-surf2);color:var(--ane-txt);border-color:var(--ane-p);}

/* ── BANNER MODAL ── */
.ane-banner-overlay{position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(4px);animation:ane-fade .35s ease;}
@keyframes ane-fade{from{opacity:0}to{opacity:1}}
.ane-banner-modal{position:relative;background:#1a1030;border:1px solid rgba(233,30,140,.3);border-radius:16px;max-width:480px;width:100%;padding:24px;animation:ane-modal .4s cubic-bezier(.4,0,.2,1);box-shadow:0 24px 60px rgba(0,0,0,.6),0 0 40px rgba(233,30,140,.15);}
@keyframes ane-modal{from{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:none}}
.ane-banner-x{position:absolute;top:12px;right:14px;background:rgba(255,255,255,.1);border:none;border-radius:50%;width:30px;height:30px;color:#fff;cursor:pointer;font-size:.85rem;display:flex;align-items:center;justify-content:center;transition:background .2s;}
.ane-banner-x:hover{background:rgba(255,255,255,.2);}
.ane-banner-x.ane-block{opacity:.3;cursor:not-allowed;}
#aneBannerBody img{max-width:100%;border-radius:8px;}
.ane-banner-cd{text-align:center;font-size:.78rem;color:rgba(255,255,255,.4);margin-top:10px;}
