
:root{--navy:#06172F;--navy2:#0B2447;--panel:#101F36;--panel2:#142B4C;--blue:#00AEEF;--blue2:#35D4FF;--text:#F5F9FF;--muted:#9EB3CC;--green:#24D18F;--black:#020913;--red:#ff5e73}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;font-family:Arial,Helvetica,sans-serif;background:linear-gradient(180deg,var(--navy),var(--black));color:var(--text)}
.app{max-width:540px;margin:0 auto;min-height:100vh;padding-bottom:96px}
.hero{padding:28px 18px 18px;background:radial-gradient(circle at top right,rgba(0,174,239,.34),transparent 42%),var(--navy)}
.logo{font-size:42px;font-weight:900;letter-spacing:2px;color:var(--blue)}
.sub{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:1.6px}
h1{margin:14px 0 6px;font-size:30px;line-height:1.05}
h2{margin:0 0 12px;font-size:21px}
h3{color:var(--blue2);margin:16px 0 8px}
p{color:#dce8f7;line-height:1.45}
.card{margin:14px;padding:16px;background:linear-gradient(180deg,var(--panel),#0b1729);border:1px solid rgba(0,174,239,.22);border-radius:22px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
.stat{background:var(--panel2);padding:14px;border-radius:16px}
.stat small{display:block;color:var(--muted);font-size:12px}
.stat strong{display:block;font-size:24px;margin-top:3px}
.progress{height:10px;background:#07101f;border-radius:99px;overflow:hidden;margin-top:8px}
.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--green));width:0%}
.photos img,.photo-img{width:100%;height:178px;object-fit:cover;border-radius:16px;border:1px solid rgba(255,255,255,.12)}
.photo-tall{width:100%;height:310px;object-fit:cover;border-radius:18px;border:1px solid rgba(255,255,255,.12);background:#07101f}
.photo-label{text-align:center;color:var(--muted);font-size:12px;margin-top:5px}
input,textarea,select{width:100%;background:#07101f;border:1px solid rgba(255,255,255,.13);color:var(--text);border-radius:12px;padding:11px;font-size:16px}
input[type=file]{padding:10px;font-size:14px}
textarea{min-height:78px;resize:vertical}
button{width:100%;border:0;background:linear-gradient(90deg,var(--blue),var(--blue2));color:#00111d;font-weight:900;padding:13px;border-radius:14px;margin-top:10px;font-size:15px}
button.secondary{background:#07101f;color:var(--blue2);border:1px solid rgba(0,174,239,.25)}
button.danger{background:linear-gradient(90deg,var(--red),#ff9aa7);color:#200}
.row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px 0}
.exercise{border-top:1px solid rgba(255,255,255,.08);padding:12px 0}
.exercise:first-of-type{border-top:0}
.exercise-title{display:flex;justify-content:space-between;gap:8px;font-weight:700}
.exercise-meta{color:var(--muted);font-size:13px;margin-top:3px}
.sets{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:10px}
.checklist label{display:flex;align-items:center;gap:10px;padding:12px;background:#07101f;border-radius:14px;margin:8px 0;color:#eaf3ff}
input[type=checkbox]{width:22px;height:22px;accent-color:var(--blue)}
.nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);max-width:540px;width:100%;display:grid;grid-template-columns:repeat(6,1fr);background:#030812;border-top:1px solid rgba(0,174,239,.25);padding-bottom:env(safe-area-inset-bottom)}
.nav a{color:var(--muted);text-decoration:none;text-align:center;padding:10px 2px;font-size:11px}
.nav a strong{display:block;color:var(--blue);font-size:18px}
.nav a.active{background:#07101f;color:white}
table{width:100%;border-collapse:collapse;font-size:13px}
td,th{padding:10px;border-bottom:1px solid rgba(255,255,255,.08);text-align:left}
th{color:var(--blue2)}
.pill{display:inline-block;padding:7px 10px;border-radius:99px;background:rgba(0,174,239,.14);color:var(--blue2);font-size:12px;margin:3px}
canvas{width:100%;height:180px;background:#07101f;border-radius:16px}
.notice{background:rgba(0,174,239,.12);border:1px solid rgba(0,174,239,.25);padding:12px;border-radius:14px;color:#dff6ff}
.compare-wrap{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.compare-title{font-size:13px;color:var(--blue2);font-weight:900;margin-bottom:6px}
.week-card{background:#07101f;border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:12px;margin:10px 0}
.small{font-size:12px;color:var(--muted)}
