:root{
  --bg:#f9f9f9;--surf:#FFFFFF;--ink:#1A2531;
  --i70:rgba(11,14,17,.7);--i55:rgba(11,14,17,.55);--i45:rgba(11,14,17,.45);--i30:rgba(11,14,17,.3);--i12:rgba(11,14,17,.12);--i07:rgba(11,14,17,.07);
  --ciano:#00FFDD;--ciano-sel:#2BD0BF;--ciano-deep:#06B6A6;
  --wow:#13B26B;--nice:#3B8FE3;--meh:#BCA53F;--nope:#E0573F;
  --best:#EEF6CC;
  --grotesk:"Inter",-apple-system,"Segoe UI",system-ui,sans-serif;
  --mono:"DM Mono",monospace;
  --out:cubic-bezier(.22,.9,.3,1);--pop:cubic-bezier(.3,1.3,.4,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--grotesk);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
button,input{font-family:inherit;font-size:inherit;color:inherit}
button{cursor:pointer;border:none;background:none}
a{color:inherit;text-decoration:none}
:focus-visible{outline:2.5px solid var(--ciano-deep);outline-offset:3px;border-radius:3px}
.pag{max-width:1500px;margin:0 auto;padding:40px 48px 70px}
@media(max-width:760px){.pag{padding:24px 20px 56px}}

/* ───── TOPO: título à esquerda, calendário à direita alinhado à coluna da meta ───── */
.topgrid{display:grid;grid-template-columns:minmax(300px,42%) 1fr;gap:48px;align-items:start}
@media(max-width:1080px){.topgrid{grid-template-columns:1fr;gap:24px}}
.titulo-bloco{min-width:0}
.titulo-h{position:relative;display:inline-flex;align-items:flex-end;gap:.26em;max-width:100%;font-size:clamp(2.4rem,5vw,4.4rem)}
.titulo{font-weight:800;font-size:clamp(2.4rem,5vw,4.4rem);letter-spacing:-.045em;line-height:.95;white-space:nowrap;cursor:pointer;background-image:linear-gradient(var(--ciano),var(--ciano));background-repeat:no-repeat;background-position:0 100%;background-size:100% .3em;padding:0 .03em;animation:hl .55s var(--out)}
.titulo-lupa{flex:none;width:.8em;height:.8em;margin-bottom:.14em;opacity:.9;transition:transform .2s;cursor:pointer}
.titulo-lupa:hover{transform:scale(1.12)}
@keyframes hl{from{background-size:0 .34em}}
.titulo-meta{display:flex;align-items:center;gap:11px;margin-top:18px;font-size:.92rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--i30);white-space:nowrap}
.titulo-meta .flag{width:19px;height:13px;border-radius:2px;object-fit:cover;flex:none}
.titulo-meta .dot{color:var(--i30);font-size:1.8em;line-height:0;position:relative;top:-2px}

/* busca */
.search-pop{position:absolute;z-index:60;top:calc(100% + 16px);left:0;width:min(440px,86vw);background:var(--surf);border-radius:14px;box-shadow:0 2px 8px rgba(11,14,17,.06),0 26px 60px -18px rgba(11,14,17,.3);overflow:hidden;display:none;font-size:1rem;font-weight:400;letter-spacing:normal}
.sug strong{font-size:1.02rem;font-weight:700}
.search-pop.open{display:block;animation:pin .2s var(--out)}
@keyframes pin{from{opacity:0;transform:translateY(-6px)}}
.search-pop input{width:100%;padding:17px 19px;border:none;border-bottom:1px solid var(--i07);font-size:1rem;font-weight:600}
.search-pop input::placeholder{color:var(--i30);font-weight:500}
.sug{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:left;padding:13px 19px;border-bottom:1px solid var(--i07);font-weight:600}
.sug:last-child{border-bottom:none}.sug.active,.sug:hover{background:var(--bg)}
.sug-main{min-width:0}
.sug small{display:block;font-size:.8rem;color:var(--i55);font-weight:500}
.sug-fav{flex:none;display:grid;place-items:center;line-height:0;color:var(--i30);padding:4px;border-radius:8px;transition:background .12s,color .12s,transform .12s}
.sug-fav:hover{background:var(--i07);color:var(--nice)}
.sug-fav:active{transform:scale(.85)}
.sug-fav.on{color:var(--nice)}
.sug-empty{padding:16px 19px;font-size:.9rem;color:var(--i55)}

/* ───── CALENDÁRIO ───── */
.cal{min-width:0;display:flex;flex-direction:column}
/* alinha o topo do bloco de datas com a linha país·cidade (apenas em layout de 2 colunas) */
@media(min-width:1081px){.cal{margin-top:calc(clamp(2.4rem,5vw,4.4rem) * .95 + 18px)}}
.meses-row{display:flex;align-items:center;gap:14px;justify-content:flex-end;margin-bottom:14px}
.dias-row{display:flex;align-items:center;gap:12px}
.dia-nav{flex:none;width:24px;height:32px;display:grid;place-items:center;border-radius:0;background:var(--surf);border:1px solid var(--i12);color:var(--ink);transition:background .15s,color .15s}
.dia-nav svg{width:15px;height:15px}
.dia-nav[disabled]{opacity:.28;pointer-events:none}
.dia-nav:not([disabled]):hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.meses{display:flex;gap:0;flex-wrap:wrap;justify-content:flex-end}
.mes{font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--i30);padding:5px 11px;border-radius:6px;transition:all .15s}
.mes:hover{color:var(--ink);background:var(--i07)}
.mes.on{background:var(--ciano);color:var(--ink)}
.mes.has{color:var(--i70)}
.cal-arrows{display:flex;align-items:center;gap:5px;flex:none}
.cal-arrows button{width:30px;height:30px;display:grid;place-items:center;color:var(--i45);border:1px solid var(--i12);border-radius:8px;background:var(--surf);transition:all .15s;font-size:1.05rem}
.cal-arrows button:hover{background:var(--i07);color:var(--ink)}
.cal-arrows button[disabled]{opacity:.25;cursor:default}

.dias-vp{overflow:hidden;flex:1;min-width:0}
.cal-arrows{align-self:center}
.dias{display:flex;transition:transform .4s var(--out)}
.dia{flex:none;width:118px;text-align:center;padding:18px 8px 16px;border:1px solid var(--i12);border-right:none;background:var(--surf);transition:background .12s;display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer}
.dia:last-child{border-right:1px solid var(--i12)}
.dia .dsem{font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--i55)}
.dia .dnum{font-weight:800;font-size:1.75rem;letter-spacing:-.03em;line-height:1.05;margin:0 0 8px}
.dia .dstat{font-size:.74rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.dia .dstat.wow{color:var(--wow)}.dia .dstat.nice{color:var(--nice)}.dia .dstat.meh{color:var(--meh)}.dia .dstat.nope{color:var(--nope)}
.dia.sel{background:var(--ciano);border-color:var(--ciano)}
.dia.sel+.dia{border-left:none}
.dia.sel .dsem{color:rgba(11,14,17,.55)}
.dia.sel .dstat{color:var(--ink)!important}

.horas{display:flex;flex-wrap:nowrap;gap:4px;margin-top:13px;position:relative;padding-bottom:30px;overflow:hidden;width:100%}
.hora{flex:1 1 0;min-width:0;text-align:center;font-size:.74rem;font-weight:600;color:var(--i45);padding:11px 3px;border-radius:0;font-family:var(--mono);cursor:pointer;transition:background .12s,color .12s}
.hora:hover{background:var(--i07);color:var(--ink)}
.hora.best{background:var(--best);color:var(--ink);font-weight:700}
.hora.sel{background:var(--ciano);color:var(--ink);font-weight:800;flex-grow:1.8;display:flex;align-items:center;justify-content:center;gap:6px;padding:11px 6px}
.hora .hx{font-weight:800;font-size:1em;line-height:1;color:var(--ink)}
.best-cap{position:absolute;bottom:2px;display:flex;align-items:center;justify-content:center;gap:9px;height:24px;background:#D6DAD0;border-radius:13px;font-size:.62rem;font-weight:800;letter-spacing:.08em;color:var(--i55);padding:0 12px;white-space:nowrap;cursor:pointer;text-decoration:none;transition:background .15s,color .15s}
.best-cap:hover{background:var(--ciano);color:var(--ink)}
.best-cap .bc-add{display:inline-flex;align-items:center;gap:3px;color:var(--ciano-deep);font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.best-cap:hover .bc-add{color:var(--ink)}

/* calendário em grade (visão mês) */
.calgrid{background:var(--surf);border-radius:14px;box-shadow:0 1px 3px rgba(11,14,17,.05),0 16px 40px -22px rgba(11,14,17,.22);padding:18px;width:min(540px,100%);margin-left:auto}
.cg-head{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-bottom:7px}
.cg-head span{text-align:center;font-size:.64rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--i30)}
.cg-body{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}
.cg-cell{aspect-ratio:1;border-radius:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;position:relative;background:var(--bg)}
.cg-cell.empty{background:none}.cg-cell.has{cursor:pointer;transition:transform .12s}.cg-cell.has:active{transform:scale(.93)}
.cg-cell .cn{font-weight:800;font-size:1.05rem}
.cg-cell .cd{width:18px;height:5px;border-radius:3px}
.cg-cell .cd.wow{background:var(--wow)}.cg-cell .cd.nice{background:var(--nice)}.cg-cell .cd.meh{background:var(--meh)}.cg-cell .cd.nope{background:var(--nope)}
.cg-cell.sel{background:var(--ciano)}.cg-cell.past{opacity:.32}
.cg-cell .star{position:absolute;top:3px;right:5px;font-size:.6rem;color:var(--meh)}

/* ───── HERO ───── */
.hero{display:grid;grid-template-columns:60% 40%;align-items:start;margin-top:10px;min-height:0}
@media(max-width:1080px){.hero{grid-template-columns:1fr;min-height:auto;gap:14px;margin-top:26px}}
.hero-txt{min-width:0;position:relative;z-index:2}
@media(min-width:1081px){.hero-art{margin-left:-9%}.hero-txt{margin-top:80px}}
/* seletor de nível compacto acima do resumo */
.nivel-pick{position:relative;display:inline-block;margin-bottom:16px}
.nivel-trig{display:inline-flex;align-items:baseline;gap:.2em;font-size:clamp(1.15rem,1.9vw,1.55rem);font-weight:600;letter-spacing:-.01em;color:var(--ink)}
.nivel-nome{font-weight:800;background-image:linear-gradient(var(--ciano),var(--ciano));background-repeat:no-repeat;background-position:0 100%;background-size:100% .26em;padding:0 .03em}
.nivel-care{font-size:.66em;color:var(--i45);font-weight:700;transition:transform .18s}
.nivel-pick.open .nivel-care{transform:rotate(180deg)}
.nivel-menu{position:absolute;z-index:40;top:calc(100% + 9px);left:0;min-width:190px;background:var(--surf);border-radius:13px;box-shadow:0 2px 8px rgba(11,14,17,.06),0 20px 48px -16px rgba(11,14,17,.32);padding:6px;display:none}
.nivel-menu.open{display:block;animation:pin .18s var(--out)}
.nivel-menu button{display:block;width:100%;text-align:left;padding:10px 13px;border-radius:9px;font-size:.95rem;font-weight:700;color:var(--i70);transition:background .12s}
.nivel-menu button:hover{background:var(--bg)}
.nivel-menu button.on{background:var(--ink);color:var(--bg)}
.resumo{font-family:"Instrument Sans",var(--grotesk);font-weight:700;font-size:clamp(1.7rem,3.4vw,2.9rem);letter-spacing:-.03em;line-height:1.1;-webkit-mask-image:linear-gradient(100deg,#000 38%,rgba(0,0,0,.4) 52%,transparent 64%);mask-image:linear-gradient(100deg,#000 38%,rgba(0,0,0,.4) 52%,transparent 64%);-webkit-mask-size:320% 100%;mask-size:320% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;animation:revela 1.15s var(--out) both}
@media(min-width:1081px){.resumo{font-size:70px;line-height:1.1}}
@keyframes revela{from{opacity:0;transform:translateY(10px);-webkit-mask-position:130% 0;mask-position:130% 0}to{opacity:1;transform:none;-webkit-mask-position:0 0;mask-position:0 0}}
.entenda{margin-top:20px;display:inline-block;font-size:.92rem;font-weight:700;color:var(--ink);background-image:linear-gradient(var(--ciano),var(--ciano));background-repeat:no-repeat;background-position:0 92%;background-size:100% .24em;padding:0 .03em;cursor:pointer}
.entenda:hover{background-size:100% .5em}
.hero-sub{margin-bottom:14px;font-size:.86rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--i30)}
.hero-art{position:relative;display:flex;align-items:center;justify-content:center;min-height:400px}
@media(max-width:1080px){.hero-art{min-height:260px}}
.hero-art .wave{width:100%;max-width:640px;height:auto;display:block;background:var(--bg);opacity:0;transition:opacity .9s ease}
.hero-art .wave.show{opacity:1}
.hero-art .wave.bye{opacity:0}

/* ───── CARDS DE DESTAQUE (ícone sobrepondo topo-direita) ───── */
.cards{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:1fr;align-items:stretch;justify-content:start;gap:52px 18px;margin-top:48px}
@media(max-width:1080px){.cards{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1080px){.cards{grid-template-columns:repeat(3,1fr);gap:30px 18px;margin-top:30px}}
@media(max-width:600px){.cards{grid-template-columns:repeat(2,1fr);gap:34px 14px}}
.card{background:var(--surf);border-radius:10px;padding:26px 20px 22px;box-shadow:0 1px 2px rgba(11,14,17,.04);display:flex;flex-direction:column;min-height:150px;position:relative;cursor:pointer}
.card-ico{position:absolute;top:-32px;right:12px;width:58px;height:58px;object-fit:contain;filter:drop-shadow(0 10px 14px rgba(11,14,17,.14));pointer-events:none}
.card-ico.card-emoji{display:flex;align-items:center;justify-content:center;font-size:42px;filter:drop-shadow(0 8px 12px rgba(11,14,17,.12))}
.card-label{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--i45);padding-right:52px;min-height:1.7em}
.card-val{font-weight:800;font-size:1.5rem;letter-spacing:-.03em;line-height:1.08;margin:8px 0 9px}
.card-sub{font-size:.88rem;color:var(--i55);line-height:1.4}

/* link dados brutos centralizado */
.raw-toggle-wrap{text-align:center;margin-top:34px}
.raw-toggle{font-size:.9rem;font-weight:700;color:var(--ink);display:inline-block;background-image:linear-gradient(var(--ciano),var(--ciano));background-repeat:no-repeat;background-position:0 92%;background-size:100% .24em;padding:0 .03em}
.raw-toggle:hover{background-size:100% .5em}
.raw-section{max-height:0;overflow:hidden;opacity:0;transition:max-height .5s var(--out),opacity .35s,margin .35s}
.raw-section.open{max-height:760px;opacity:1;margin-top:28px}
.raw-inner{background:var(--surf);border-radius:14px;box-shadow:0 1px 3px rgba(11,14,17,.05),0 18px 44px -24px rgba(11,14,17,.22);overflow:hidden}
.raw-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:18px 22px;border-bottom:1px solid var(--i07)}
.raw-head h3{font-weight:800;font-size:1.2rem;letter-spacing:-.02em}
.raw-head p{font-size:.78rem;color:var(--i55);margin-top:2px}
.raw-scroll{overflow:auto;padding:0 22px 20px;max-height:560px}
.rt{border-collapse:collapse;font-family:var(--mono);font-size:.72rem;white-space:nowrap;margin-top:14px;width:100%}
.rt th,.rt td{border:1px solid var(--i07);padding:4px 6px;text-align:center;min-width:34px}
.rt .v{position:sticky;left:0;background:var(--surf);text-align:left;font-family:var(--grotesk);font-weight:700;font-size:.76rem;z-index:2;border-right:2px solid var(--ink);padding-right:12px;min-width:108px}
.rt .daybar td{background:linear-gradient(90deg,var(--ink),#26333d);color:var(--bg);font-family:var(--grotesk);font-weight:700;font-size:.74rem;text-align:left;padding:5px 9px;position:sticky;top:0}
.rt .daybar .v{background:var(--ink);color:var(--bg)}
.rt .hr td,.rt .hr th{font-size:.66rem;color:var(--i55);background:var(--bg);position:sticky;top:0;z-index:1}.rt .hr .v{background:var(--bg)}
.rt .v .rt-ic{display:inline-block;width:1.25em;margin-right:7px;text-align:center;font-size:.85em}
.rt-arrow{display:inline-block;color:var(--i55);font-weight:700}
.rt td small{font-size:.7em;vertical-align:super;margin-left:1px}

/* ───── MELHORES HORAS em formato calendário compacto ───── */
.sec{margin-top:64px}
.sec-head{margin-bottom:22px}
.sec-title{font-weight:800;font-size:1.5rem;letter-spacing:-.03em}
.best-row{display:flex;align-items:center;gap:12px}
.best-vp{overflow:hidden;flex:1;min-width:0}
.best-track{display:flex;gap:14px;transition:transform .4s var(--out)}
.best-day{flex:0 0 232px;background:var(--surf);border-radius:12px;box-shadow:0 1px 2px rgba(11,14,17,.04),0 10px 26px -22px rgba(11,14,17,.18);padding:16px;display:flex;flex-direction:column;gap:11px}
.best-day-h{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.best-day-h .bd-data{font-weight:800;font-size:1rem;letter-spacing:-.01em;white-space:nowrap}
.best-day-h .bd-tag{font-size:.62rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:3px 8px;border-radius:6px}
.bd-tag.wow{background:rgba(19,178,107,.13);color:var(--wow)}.bd-tag.nice{background:rgba(59,143,227,.13);color:var(--nice)}.bd-tag.meh{background:rgba(188,165,63,.16);color:var(--meh)}
.best-slot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 11px;background:var(--bg);border-radius:9px}
.best-slot .bs-hora{font-family:var(--mono);font-weight:500;font-size:.92rem}
.best-slot .bs-go{display:inline-flex;align-items:center;gap:5px;height:28px;padding:0 11px;border-radius:7px;background:var(--surf);border:1px solid var(--i12);color:var(--i70);font-size:.72rem;font-weight:700;letter-spacing:.02em;white-space:nowrap;transition:all .15s}
.best-slot .bs-go .bs-go-ico{font-size:.95rem;line-height:1}
.best-slot .bs-go:hover{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.best-vazio{font-size:.95rem;color:var(--i55)}

/* modal */
.mbg{position:fixed;inset:0;background:rgba(11,14,17,.45);backdrop-filter:blur(4px);z-index:100;display:none;align-items:center;justify-content:center;padding:22px}
.mbg.open{display:flex;animation:fade .2s}@keyframes fade{from{opacity:0}}
.modal{background:var(--surf);border-radius:18px;box-shadow:0 30px 80px -20px rgba(11,14,17,.4);max-width:520px;width:100%;max-height:86vh;overflow-y:auto;padding:30px;animation:min .3s var(--pop)}
@keyframes min{from{transform:scale(.92) translateY(12px);opacity:0}}
.m-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}
.m-head h3{font-weight:800;font-size:1.5rem;letter-spacing:-.025em}
.m-x{width:36px;height:36px;flex:none;display:grid;place-items:center;background:var(--bg);border-radius:10px;font-size:1.1rem;font-weight:700}
.m-x:hover{background:var(--i07)}
.m-block{display:flex;gap:14px;padding:14px 0;border-top:1px solid var(--i07)}
.m-block:first-of-type{border-top:none}
.m-block img{width:46px;height:46px;object-fit:contain;flex:none}
.m-block .mb-t{font-weight:800;font-size:1rem;margin-bottom:2px}
.m-block .mb-d{font-size:.92rem;color:var(--i70);line-height:1.5}
.m-block .mb-d strong{color:var(--ink)}

/* finder removido */
.statuspill{display:inline-flex;align-items:center;gap:7px;font-size:.78rem;font-weight:700;color:var(--i55)}
.statuspill .led{width:8px;height:8px;border-radius:50%;background:var(--wow)}.statuspill.demo .led{background:var(--meh)}
.loading{display:flex;align-items:center;gap:14px;padding:80px 0;color:var(--i55)}
.spin{width:30px;height:30px;border:3px solid var(--i07);border-top-color:var(--ciano-deep);border-radius:50%;animation:rot 1s linear infinite}
@keyframes rot{to{transform:rotate(360deg)}}
footer{margin-top:64px;font-size:.78rem;color:var(--i30);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--i07);padding-top:22px}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
