/* Atleta v2 — "bento" moderno: malha de cor, cartões de vidro, barra flutuante */
html:not([data-theme=dark]) .app.is-athlete{--a1:#2FA4F0;--a2:#6C5CE7;--a3:#00D4B4;--ink:#0A2A4A;--mut:#5b6b80;--glass:rgba(255,255,255,.72);--bd:rgba(10,42,74,.08);--sh:0 18px 40px -18px rgba(47,164,240,.35),0 2px 6px rgba(10,42,74,.05);background:#fff;position:relative;isolation:isolate}
html:not([data-theme=dark]) .app.is-athlete::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(520px 380px at 8% -4%,rgba(47,164,240,.20),transparent 70%),radial-gradient(480px 380px at 100% 6%,rgba(108,92,231,.16),transparent 70%),radial-gradient(520px 420px at 60% 108%,rgba(0,212,180,.14),transparent 70%)}
.is-athlete .main{padding-bottom:128px}
.is-athlete .mtop{display:flex;align-items:center;justify-content:space-between;margin:2px 0 14px;font-weight:800;color:var(--ink);letter-spacing:-.02em}
.is-athlete .mtop .ghost{border:0;background:var(--glass);backdrop-filter:blur(12px);border-radius:99px;min-height:44px;padding:0 18px;font-weight:700;color:var(--ink);box-shadow:var(--sh);cursor:pointer}
.is-athlete .mtop span span{background:linear-gradient(90deg,var(--a1),var(--a2));-webkit-background-clip:text;background-clip:text;color:transparent!important}
/* cabeçalho de página */
.is-athlete .hero{background:none!important;border:0!important;box-shadow:none!important;padding:6px 0 10px!important}
.is-athlete .hero h1,.is-athlete .hero h2{font-size:clamp(30px,8vw,44px);line-height:1.04;letter-spacing:-.045em;color:var(--ink)!important;font-weight:800}
/* cartões */
.is-athlete .card,.is-athlete .dh-card{background:var(--glass)!important;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--bd)!important;border-radius:28px!important;box-shadow:var(--sh)}
.is-athlete .card h3,.is-athlete .dh-head h3{letter-spacing:-.03em;color:var(--ink)}
/* bento no início */
.is-athlete .dh{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.is-athlete .dh>*{grid-column:1/-1}
.is-athlete .dh>.dh-goal,.is-athlete .dh>.dh-coach{grid-column:auto}
.is-athlete .dh-hello h2{font-size:clamp(30px,9vw,46px);letter-spacing:-.05em;line-height:1;color:var(--ink)}
.is-athlete .dh-kick{color:var(--a2)!important;letter-spacing:.14em}
.is-athlete .dh-hero{border-radius:34px;min-height:230px;background:linear-gradient(135deg,#2FA4F0 0%,#6C5CE7 62%,#a855f7 100%)!important;box-shadow:0 28px 50px -22px rgba(108,92,231,.65)}
.is-athlete .dh-hero.dh-done{background:linear-gradient(135deg,#00b894,#2FA4F0)!important}
.is-athlete .dh-hero.dh-none{background:linear-gradient(135deg,#334e68,#6C5CE7)!important}
.is-athlete .dh-hero .dh-kick{color:#fff!important;opacity:.85}
.is-athlete .dh-title{font-size:clamp(28px,8vw,42px);letter-spacing:-.045em}
.is-athlete .dh-deco{border-color:rgba(255,255,255,.12);width:240px;height:240px;right:-70px;top:-70px}
.is-athlete .dh-cta{background:#FF7A1A!important;color:#fff!important;box-shadow:0 14px 28px -10px rgba(255,122,26,.7);min-height:58px}
.is-athlete .dh-cta span{color:#fff}
.is-athlete .dh-ring .val{stroke:url(#none);stroke:#6C5CE7}
.is-athlete .dh-day.done i{background:linear-gradient(135deg,var(--a1),var(--a2));border-color:transparent}
.is-athlete .dh-day.planned i{border-color:var(--a1)}
.is-athlete .dh-day.today span:first-of-type{text-decoration-color:var(--a2)}
.is-athlete .dh-goal{background:linear-gradient(160deg,rgba(0,212,180,.16),rgba(47,164,240,.12))!important}
.is-athlete .dh-goal .dh-kick{color:#00917a!important}
.is-athlete .dh-gn b{background:linear-gradient(90deg,var(--a1),var(--a2));-webkit-background-clip:text;background-clip:text;color:transparent}
.is-athlete .dh-coach{border-left:0!important;background:linear-gradient(160deg,rgba(255,122,26,.14),rgba(255,255,255,.7))!important}
.is-athlete .dh-coach .dh-kick{color:#c2570a!important}
.is-athlete .dh-row{border-radius:18px;border-top:0;margin-bottom:6px;background:rgba(47,164,240,.07)}
@media (max-width:560px){.is-athlete .dh>.dh-goal,.is-athlete .dh>.dh-coach{grid-column:1/-1}}
/* barra inferior flutuante */
.is-athlete .appnav{position:fixed;left:0;right:0;bottom:0;z-index:50;pointer-events:none}
.is-athlete .tabbar{pointer-events:auto;position:relative;margin:0 auto calc(14px + env(safe-area-inset-bottom));width:min(94vw,460px);height:72px;border:1px solid rgba(255,255,255,.7);border-radius:999px;background:rgba(255,255,255,.78);backdrop-filter:blur(22px) saturate(1.6);-webkit-backdrop-filter:blur(22px) saturate(1.6);box-shadow:0 24px 50px -16px rgba(10,42,74,.35),0 2px 6px rgba(10,42,74,.06);display:flex;align-items:center;justify-content:space-around;padding:0 8px}
.is-athlete .tabbar a,.is-athlete .tabbar .tab-more{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;height:58px;margin:0 2px;border:0;background:none;border-radius:999px;color:var(--mut);font-size:11px;font-weight:700;transition:all .3s cubic-bezier(.34,1.56,.64,1)}
.is-athlete .tabbar a.on,.is-athlete .tabbar .tab-more.on{background:linear-gradient(135deg,#2FA4F0,#6C5CE7);color:#fff;box-shadow:0 10px 20px -8px rgba(108,92,231,.7);transform:translateY(-6px) scale(1.06)}
.is-athlete .tabbar svg{width:22px;height:22px}
/* folha "Mais" */
.is-athlete .sheet-in{border-radius:34px 34px 0 0;background:rgba(255,255,255,.92);backdrop-filter:blur(24px)}
.is-athlete .sheet-groups section h4{letter-spacing:.1em;font-size:12px;text-transform:uppercase;color:var(--mut)}
.is-athlete .sheet-grid a{border-radius:22px;background:rgba(47,164,240,.08);border:1px solid var(--bd)}
.is-athlete .sheet-grid a.on{background:linear-gradient(135deg,#2FA4F0,#6C5CE7);color:#fff}
/* botões */
.is-athlete button.primary,.is-athlete .btn.primary{background:#FF7A1A;color:#fff;border:0;border-radius:99px;min-height:52px;font-weight:800;box-shadow:0 14px 26px -12px rgba(255,122,26,.7)}
.is-athlete input,.is-athlete select,.is-athlete textarea{border-radius:16px;border:1.5px solid var(--bd);background:rgba(255,255,255,.9)}
.is-athlete input:focus,.is-athlete select:focus,.is-athlete textarea:focus{outline:0;border-color:var(--a1);box-shadow:0 0 0 4px rgba(47,164,240,.18)}
/* lateral (ecrã largo) */
@media(min-width:900px){.is-athlete .appnav{display:none}.is-athlete .main{padding-bottom:40px}.is-athlete .side{background:var(--glass);backdrop-filter:blur(16px);border-right:1px solid var(--bd)}.is-athlete .side .on,.is-athlete .side a.on{background:linear-gradient(135deg,#2FA4F0,#6C5CE7);color:#fff;border-radius:16px}.is-athlete .dh{grid-template-columns:repeat(4,minmax(0,1fr))}.is-athlete .dh>.dh-hero{grid-column:span 4}.is-athlete .dh>.dh-goal,.is-athlete .dh>.dh-coach{grid-column:span 2}}
@media(prefers-reduced-motion:reduce){.is-athlete *{animation:none!important;transition:none!important}}
html:not([data-theme=dark]) .is-athlete .side-nav a.on{background:linear-gradient(135deg,#2FA4F0,#6C5CE7)!important;color:#fff!important;border-radius:16px;box-shadow:0 10px 20px -10px rgba(108,92,231,.7)}
.is-athlete .side-nav a.on svg,.is-athlete .side-nav a.on span{color:#fff!important;stroke:currentColor}
.is-athlete .nav-gh i{background:linear-gradient(135deg,#2FA4F0,#6C5CE7)!important}
.is-athlete .side-foot .ghost{border-radius:99px}
