
:root{--bg:#070b16;--card:#101827;--card2:#151f31;--text:#f8fafc;--muted:#a8b3c7;--accent:#34d399;--accent2:#60a5fa;--border:rgba(255,255,255,.1);--danger:#fb7185}
*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,#070b16,#0a1120 45%,#070b16);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}
.hero{max-width:980px;margin:auto;padding:28px 18px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px}.eyebrow{font-size:12px;letter-spacing:.14em;color:var(--accent);font-weight:800}.hero h1{font-size:clamp(30px,7vw,56px);margin:6px 0}.hero p{color:var(--muted);margin:0;font-weight:600}.ring{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;border:8px solid rgba(52,211,153,.18);box-shadow:inset 0 0 0 2px rgba(52,211,153,.15)}.ring span{font-weight:900}
.tabs{position:sticky;top:0;z-index:10;display:flex;gap:8px;max-width:980px;margin:auto;padding:10px 18px;background:rgba(7,11,22,.88);backdrop-filter:blur(12px)}.tabs button{flex:1;background:var(--card);color:var(--muted);border:1px solid var(--border);padding:12px;border-radius:12px;font-weight:800}.tabs button.active{background:var(--accent);color:#032017;border-color:transparent}
main{max-width:980px;margin:auto;padding:12px 18px 80px}.hidden{display:none}.card{background:linear-gradient(180deg,var(--card),#0d1525);border:1px solid var(--border);border-radius:18px;padding:16px;margin:12px 0;box-shadow:0 12px 30px rgba(0,0,0,.16)}.dayline{color:var(--accent);font-weight:900;letter-spacing:.08em;font-size:12px}.card h2{margin:5px 0 3px;font-size:28px}.muted{color:var(--muted)}.exercise{display:grid;grid-template-columns:32px 1fr auto;gap:12px;align-items:start;padding:14px 0;border-top:1px solid var(--border)}.exercise:first-of-type{border-top:0}.exercise input{width:22px;height:22px;margin-top:3px;accent-color:var(--accent)}.exercise h3{margin:0 0 4px;font-size:17px}.work{font-weight:850;color:white}.cue{color:var(--muted);font-size:14px;margin-top:4px;line-height:1.35}.watch{display:inline-flex;text-decoration:none;background:#ff0033;color:white;border-radius:10px;padding:9px 11px;font-weight:850;font-size:13px;white-space:nowrap}.complete{width:100%;border:0;border-radius:14px;padding:15px;background:var(--accent);color:#032017;font-weight:950;font-size:16px;margin-top:10px}.complete.done{background:#1f2937;color:#9ca3af}.metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.metrics label{background:var(--card2);border:1px solid var(--border);border-radius:12px;padding:11px;color:var(--muted);font-size:13px}.metrics input,.metrics textarea{width:100%;margin-top:6px;background:#09111f;border:1px solid var(--border);color:white;border-radius:8px;padding:10px}.metrics textarea{min-height:75px}.calendar{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.daycard{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:13px;cursor:pointer}.daycard.current{outline:2px solid var(--accent2)}.daycard.done{border-color:rgba(52,211,153,.6);background:linear-gradient(180deg,rgba(52,211,153,.11),var(--card))}.daycard .n{font-weight:950}.daycard .t{font-size:13px;color:var(--muted);margin-top:5px}.bar{height:12px;background:#172033;border-radius:999px;overflow:hidden}.bar>div{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent2));width:0}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.stat{background:var(--card2);border:1px solid var(--border);border-radius:14px;padding:14px;text-align:center}.stat b{display:block;font-size:26px}.stat span{font-size:12px;color:var(--muted)}footer{max-width:980px;margin:auto;padding:0 18px 36px;color:#718096;font-size:12px}
@media(max-width:640px){.hero{align-items:flex-start}.ring{width:68px;height:68px;border-width:6px}.exercise{grid-template-columns:30px 1fr}.watch{grid-column:2;justify-self:start}.calendar{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.metrics{grid-template-columns:1fr}.card h2{font-size:24px}}
@media print{.tabs,.watch,.complete{display:none!important}body{background:white;color:black}.card{box-shadow:none;border:1px solid #ccc}.muted,.cue,footer{color:#555}}


.authbar{
  max-width:944px;margin:0 auto 4px;padding:10px 14px;
  border:1px solid var(--border);border-radius:14px;
  background:rgba(16,24,39,.92);display:flex;align-items:center;
  justify-content:space-between;gap:12px;color:var(--muted);font-size:13px
}
.auth-actions{display:flex;gap:8px}
.auth-actions button,.secondary{
  border:1px solid var(--border);background:var(--card2);color:var(--text);
  padding:9px 12px;border-radius:10px;font-weight:800;cursor:pointer
}
#authStatus.synced{color:var(--accent);font-weight:800}
#authStatus.syncing{color:#fbbf24;font-weight:800}
#authStatus.error{color:#fca5a5;font-weight:800}
.modal{
  position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.72);
  display:grid;place-items:center;padding:18px
}
.modal.hidden{display:none}
.modal-card{
  position:relative;width:min(440px,100%);
  background:linear-gradient(180deg,var(--card),#0b1322);
  border:1px solid var(--border);border-radius:20px;padding:22px;
  box-shadow:0 30px 80px rgba(0,0,0,.45)
}
.modal-card h2{margin:6px 0}
.modal-card label{
  display:block;color:var(--muted);font-size:13px;margin-top:12px
}
.modal-card input{
  width:100%;margin-top:6px;padding:12px;border-radius:10px;
  border:1px solid var(--border);background:#09111f;color:#fff;font-size:16px
}
.modal-close{
  position:absolute;right:12px;top:10px;border:0;background:transparent;
  color:var(--muted);font-size:28px;cursor:pointer
}
.auth-message{min-height:22px;margin-top:10px;color:#fca5a5;font-size:13px}
.secondary{width:100%;margin-top:9px;padding:13px}
.cloud-note{
  border-left:3px solid var(--accent);padding-left:10px
}
@media(max-width:640px){
  .authbar{margin-left:18px;margin-right:18px;align-items:flex-start;flex-direction:column}
  .auth-actions{width:100%}
  .auth-actions button{flex:1}
}
