/* ===== Páginas iniciais v2 — estilo de referência: cartões brancos, herói escuro, etiquetas lima, stickers ===== */
:root{--hv-ink:#111;--hv-sub:#6b6b6b;--hv-line:#ece7e4;--hv-lime:#f1ff7c;--hv-teal:#0d9488;--hv-navy:#0f2a3d;--hv-sh:0 2px 14px rgba(15,42,61,.08)}
.dh,.ch-root{font-family:'Plus Jakarta Sans',system-ui,sans-serif;max-width:100%}
.dh{gap:16px}
.dh-card,.ch-root section,.ch-metric,.ch-card{background:#fff!important;border:0!important;border-radius:24px!important;box-shadow:var(--hv-sh)}
.dh-hello h2{font-size:clamp(24px,7vw,32px);font-weight:800;letter-spacing:-.035em;color:var(--hv-ink)}
.dh-hello p{text-transform:capitalize;color:var(--hv-sub)}
.dh-kick{display:inline-block;align-self:flex-start;background:var(--hv-lime);color:#111!important;border-radius:99px;padding:5px 12px;font-size:11.5px!important;font-weight:800;letter-spacing:.07em;opacity:1!important}
.dh-head h3,.ch-root h2{font-size:18px;font-weight:800;letter-spacing:-.02em;color:var(--hv-ink)}
.dh-more{color:var(--hv-ink);background:#f3f0ee;border-radius:99px;min-height:36px;padding:0 14px;font-size:13px}
/* herói escuro */
html:not([data-theme=dark]) .dh-hero,.dh-hero{background:radial-gradient(120% 140% at 100% 0,#14566a 0,#0f2a3d 55%,#0a1c2a 100%)!important;color:#fff!important;border:0!important;border-radius:30px;box-shadow:0 18px 36px -18px rgba(15,42,61,.7);padding:clamp(22px,5vw,34px)}
html:not([data-theme=dark]) .dh-hero .dh-hero-t,html:not([data-theme=dark]) .dh-hero h2{color:#fff}
.dh-hero .dh-title{color:#fff!important}
html:not([data-theme=dark]) .dh-hero .dh-kick,.dh-hero .dh-kick{background:var(--hv-lime);color:#111!important}
.dh-meta span{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.18)}
html:not([data-theme=dark]) .dh-hero .dh-cta,.dh-cta{background:#FF7A1A;color:#fff!important;box-shadow:0 10px 22px -8px rgba(255,122,26,.8);font-weight:800}.dh-cta span{color:#fff}
.dh-hero.dh-done{background:linear-gradient(135deg,#0f2a3d,#14532d)!important}.dh-hero.dh-none{background:linear-gradient(135deg,#0f2a3d,#2b3a4a)!important}
.dh-deco{border-color:rgba(241,255,124,.10)}
/* semana */
.dh-ring .trk{stroke:#f0ecea}.dh-ring .val{stroke:var(--hv-teal)}
.dh-ringc b{color:var(--hv-ink)}
.dh-stats b{color:var(--hv-ink)}
.dh-days{background:#f7f4f2;border-radius:18px;padding:10px 4px}
.dh-day i{border-color:#d9d2cf;background:#fff}
.dh-day.planned i{background:#fff}
.dh-day.today span:first-of-type{text-decoration-color:var(--hv-teal)}
/* objetivo: cartão lima */
.dh-goal{background:var(--hv-lime)!important}.dh-goal .dh-kick{background:#111;color:var(--hv-lime)!important}
.dh-gn b{color:#111}.dh-goal.off{background:#fff!important;border:2px dashed #d9d2cf!important}
/* a seguir */
.dh-row{border-top:0;border-radius:18px;background:#f7f4f2;margin-bottom:8px;padding-right:12px}.dh-rows{gap:0}
.dh-row:first-child{border-top:0}
/* treinador */
.dh-coach{border-left:0!important;background:#fff}.dh-coach.unread{background:#fff!important;box-shadow:0 0 0 2px var(--hv-lime),var(--hv-sh)}
.dh-coach .dh-kick{color:#111!important}
.dh-btn2{background:#111;color:#fff!important;border:0}
/* atalhos */
.dh-cat h3{color:var(--hv-sub)!important}
.dh-tile{background:#fff!important;border:0!important;box-shadow:var(--hv-sh);border-radius:22px;color:var(--hv-ink)!important}
.dh-tile b{background:linear-gradient(145deg,color-mix(in srgb,var(--gc) 35%,#fff),color-mix(in srgb,var(--gc) 75%,#fff))!important;box-shadow:0 5px 10px -4px color-mix(in srgb,var(--gc) 70%,#000),inset 0 2px 0 rgba(255,255,255,.55);border-radius:15px}
.dh-tile small{color:var(--hv-sub)}
/* ===== Treinador ===== */
.ch-root{gap:16px}
.ch-hero{position:relative;overflow:hidden;background:radial-gradient(120% 140% at 100% 0,#14566a 0,#0f2a3d 55%,#0a1c2a 100%)!important;color:#fff;border-radius:30px!important;padding:clamp(22px,5vw,32px)!important;display:grid;gap:14px;box-shadow:0 18px 36px -18px rgba(15,42,61,.7)!important}
.ch-hero h1{margin:0;font-size:clamp(24px,7vw,34px);line-height:1.1;letter-spacing:-.035em;color:#fff;font-weight:800}
.ch-hero p{margin:0;color:#c9dbe4;font-size:14.5px}
.ch-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.ch-kpis div{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:10px 12px;min-width:0}
.ch-kpis b{display:block;font-size:clamp(20px,6vw,28px);line-height:1.1;font-weight:800;color:var(--hv-lime)}
.ch-kpis span{font-size:11.5px;color:#c9dbe4;font-weight:700}
.ch-root section{padding:clamp(16px,4vw,22px)!important}
.ch-need{border-left:0!important}
.ch-count{background:#111;color:var(--hv-lime)}
.ch-todo{background:#f7f4f2;border-radius:18px;border-left:6px solid #64748b}
.ch-todo.k-pain{background:#fff1f0}.ch-todo.k-acwr,.ch-todo.k-missed{background:#fff8e6}.ch-todo.k-plan{background:#eefaf8;border-color:var(--hv-teal)}
.ch-metrics{gap:12px!important;grid-template-columns:repeat(2,1fr)!important}
.ch-metric{padding:16px 16px!important;position:relative}.ch-metric span{color:var(--hv-sub);font-size:12.5px}.ch-metric b{font-size:clamp(26px,7vw,34px);letter-spacing:-.03em;color:var(--hv-ink)}
.ch-metric:first-child{background:var(--hv-lime)!important}.ch-metric:first-child span,.ch-metric:first-child small{color:#3d4400}
.ch-metric:hover{transform:translateY(-2px)}
.ch-cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.ch-card{border-top:0!important;padding:16px 18px!important;position:relative;overflow:hidden}
.ch-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--hv-teal)}
.ch-card.s-amber::before{background:#f59e0b}.ch-card.s-red::before{background:#dc2626}.ch-card.s-grey::before{background:#b8b2af}
.ch-card-top b{font-size:17px}
.ch-btn{background:#111;border-radius:99px;min-height:40px;padding:8px 16px}.ch-btn:hover{background:#000}
.ch-btn.ghost{background:#f3f0ee;color:#111!important;border:0}.ch-btn.ghost:hover,.ch-btn.on{background:#e8e3e0}
.ch-actions .ch-btn:first-child{background:#FF7A1A}
.ch-toast{border-radius:18px;background:var(--hv-lime);border:0;color:#111}
.ch-empty{border-left:0!important}
@media(min-width:768px){.ch-metrics{grid-template-columns:repeat(4,1fr)!important}.ch-root{max-width:1100px}}
@media(max-width:560px){.ch-btn{min-height:44px}}
html[data-theme=dark] .dh-card,html[data-theme=dark] .ch-root section,html[data-theme=dark] .ch-metric,html[data-theme=dark] .ch-card,html[data-theme=dark] .dh-tile{background:#171b20!important;color:#eceef1!important}
html[data-theme=dark] .dh-row,html[data-theme=dark] .dh-days,html[data-theme=dark] .ch-todo{background:#20262c}
html[data-theme=dark] .dh-hello h2,html[data-theme=dark] .dh-head h3,html[data-theme=dark] .ch-root h2,html[data-theme=dark] .dh-ringc b,html[data-theme=dark] .dh-stats b,html[data-theme=dark] .ch-metric b{color:#eceef1}
/* ===== Dispositivos / Enviar para o relógio ===== */
.dv{font-family:'Plus Jakarta Sans',system-ui,sans-serif;max-width:100%;overflow-x:clip}
.dv-grid{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:1000px){.dv-grid{grid-template-columns:1fr 1fr;align-items:start}#dv-strava{grid-column:1/-1}}
.dv-card{background:#fff!important;border:0!important;border-radius:26px!important;box-shadow:var(--hv-sh);padding:clamp(16px,4vw,24px)!important;min-width:0;overflow:hidden}
.dv-card h3{display:flex;align-items:center;gap:10px;margin:0 0 6px;font-size:19px;font-weight:800;letter-spacing:-.02em;color:#111}
.dv-n{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:11px;background:var(--hv-lime);color:#111;font-weight:800;font-size:15px;flex:none}
.dv-lead{color:var(--hv-sub)}
.dv-lbl{display:block;margin:14px 0 6px;font-size:12.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--hv-sub)}
.dv-in,.dv select.dv-in,.dv textarea.dv-in{width:100%;box-sizing:border-box;background:#f7f4f2;border:1.5px solid transparent;border-radius:16px;padding:12px 14px;font:inherit;font-size:15px;color:#111;min-height:48px}
.dv-in:focus{outline:0;border-color:#111;background:#fff}
.dv-pre{margin:10px 0 0;background:#111;color:#e9fff9;border-radius:16px;padding:12px 14px;font:600 13px/1.5 ui-monospace,Menlo,monospace;white-space:pre-wrap;overflow-wrap:anywhere}
.dv-drop{border:2px dashed #d9d2cf!important;background:#f7f4f2!important;border-radius:22px!important}.dv-drop.on{border-color:#111!important;background:var(--hv-lime)!important}
.dv-btns{display:flex;flex-wrap:wrap;gap:8px}
.dv-dl{margin-top:14px}
.dv-btn{min-height:46px;border:0;border-radius:99px;background:#FF7A1A;color:#fff;font:inherit;font-weight:800;padding:0 20px;box-shadow:0 8px 18px -10px rgba(255,122,26,.8);cursor:pointer}
.dv-btn:disabled{opacity:.4;box-shadow:none}
.dv-btn.dv-ghost{background:#f3f0ee;color:#111;box-shadow:none}
.dv-chip{border:0;background:#fff;box-shadow:var(--hv-sh);color:#111;border-radius:99px;min-height:40px;padding:0 16px;font-weight:700}
.dv-chips{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding:4px 2px 10px}.dv-chips::-webkit-scrollbar{display:none}.dv-chip{flex:none}
.dv-plan{margin-top:14px;background:#f7f4f2;border-radius:20px;padding:12px 14px;min-width:0}
.dv-h4{margin:12px 0 6px;font-size:14px;font-weight:800;color:#111}
.dv-ok-list,.dv-warn-list{margin:0;padding-left:18px;overflow-wrap:anywhere}.dv-warn-list b{overflow-wrap:anywhere}
.dv-det{background:#f7f4f2;border-radius:18px;padding:10px 14px;margin-top:12px}.dv-det summary{font-weight:700;cursor:pointer;min-height:36px;display:flex;align-items:center}
.dv-honest{background:#fff8e6;border-radius:18px;padding:12px 14px}
.dv-map{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.dv-card *{max-width:100%}
.dv-card textarea{box-sizing:border-box}
