/* Tema moderno: neutros quentes + laranja de ação, tipografia ao estilo Strava, sem sombras nem brilhos */
:root{--ink:#0f2a3d;--ink2:#2a2f37;--muted:#6b6f76;--line:#e1ecea;--bg:#fff;--soft:#f1f8f7;--acc:#0d9488;--r:14px}
*{box-shadow:none!important;text-shadow:none!important}
:focus-visible{outline:2px solid #0f2a3d;outline-offset:2px}
html{-webkit-text-size-adjust:100%}
body{background:#fff;color:var(--ink);font-family:'Plus Jakarta Sans',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:15px;line-height:1.5;letter-spacing:-.005em;font-feature-settings:"tnum" 1,"ss01" 1;-webkit-font-smoothing:antialiased}
@media(min-width:861px){body{font-size:15.5px}}@media(min-width:1280px){body{font-size:16px}}
h1,h2,h3,h4{color:var(--ink);letter-spacing:-.02em;line-height:1.2}
h1{font-size:clamp(24px,3.2vw,32px);font-weight:800}h2{font-size:clamp(20px,2.4vw,24px);font-weight:800;margin:18px 0 10px}h3{font-size:clamp(16px,1.8vw,18px);font-weight:700}
small,.muted,p.muted{font-size:13px;color:var(--muted)}
label{font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--muted);text-transform:uppercase}
b,strong{font-weight:700}
.card{background:#fff;border:1px solid var(--line);border-radius:16px}
.card.link:hover,.hm-row:hover{background:var(--soft)}
input,select,textarea{border:1px solid #d9d6cd;border-radius:12px;background:#fff;color:var(--ink)}input:focus,select:focus,textarea:focus{border-color:var(--ink);outline:none}
button,.btn-link{background:var(--acc);color:#fff;border:0;border-radius:999px;font-weight:700;padding:11px 20px;letter-spacing:0}
button:hover{filter:brightness(.95)}button.ghost,.ghost{background:#fff;color:var(--ink);border:1px solid #d9d6cd}
.badge{border-radius:999px;font-weight:600;font-size:12px;background:var(--soft);color:var(--ink2)}
.badge.green,.badge.ok{background:#e6f4ea;color:#17652f}.badge.red{background:#fde8e6;color:#a1271c}.badge.orange{background:#fff0e8;color:#b8400f}
.bar{background:var(--soft);height:8px;border-radius:99px;overflow:hidden}.bar i{background:var(--acc)}
/* número grande ao estilo Strava */
.hm-tile b,.hm-goal b{font-weight:800;letter-spacing:-.03em}.hm-tile b{font-size:clamp(26px,3vw,32px)}
.hm-next{background:var(--ink);color:#fff;border-radius:20px}.hm-next::after{background:rgba(13,148,136,.25)}.hm-next em{color:#14b8a6}
.hm-goal{border-radius:18px}.hm-tile,.hm-quick a{border-radius:16px;border:1px solid var(--line);background:#fff}.hm-quick a{background:var(--soft);border-color:transparent}
.hm-row .d{color:var(--ink);font-weight:700}
/* Vídeos / descrições legíveis */
.nf-card{border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink)}.nf-th{background:linear-gradient(135deg,#2a2f37,#0f2a3d)}
.nf-ti b{font-size:14px;font-weight:700;color:var(--ink);line-height:1.25}.nf-ti small{font-size:12.5px;color:var(--muted)}
.modal{background:rgba(20,23,28,.6)}.modal-in{background:#fff;color:var(--ink);border-radius:20px;font-size:16px;line-height:1.65}
.modal-in h2{font-size:clamp(20px,5vw,26px);margin:12px 0 4px}.modal-in p{font-size:16px;line-height:1.65;color:var(--ink2);max-width:68ch}
.modal-in ol,.modal-in ul{padding-left:1.25em;color:var(--ink2)}.modal-in li{margin:6px 0;font-size:15.5px;line-height:1.6}.modal-in h3{margin:18px 0 6px;font-size:16px}
.modal-in .muted{font-size:14px;color:var(--muted)}
/* Voltar */
.backbtn{background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-size:14px;font-weight:700;margin:0 0 12px;min-height:40px}
/* Navegação */
.side{background:var(--ink)}.side-nav a.on{background:#232830;border-left-color:var(--acc)}.side-nav a.on svg{color:var(--acc)}
.tabbar a.on,.tab-more.on{color:var(--ink)!important;background:var(--soft)!important}.tabbar a.on svg{color:var(--acc)}
.pr .ob-chips{margin:8px 0}.pr-more{margin-top:14px}.pr-more summary{cursor:pointer;font-weight:700}
@media(max-width:860px){body{font-size:15px}h2{font-size:21px}.card{border-radius:16px!important;border:1px solid var(--line)!important}.main{padding-top:10px!important}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.nf-hero h2,.nf-hero p,.nf-hero small,.hero h1,.hero h2,.hero p{color:#fff}.nf-hero small{opacity:.8;letter-spacing:.08em}
