/* Fontes do sistema para funcionamento completamente offline. */
:root{color-scheme:dark;--bg:#0b1012;--panel:#141d1f;--panel2:#192427;--line:#263439;--text:#f6f9f7;--muted:#99a8a8;--accent:#b4fb63;--accent2:#70cba0;--warning:#f9c980;--red:#ff8d8d;--radius:19px;--shadow:0 14px 40px #0004}
*{box-sizing:border-box} html,body{margin:0;min-height:100%;font-family:'DM Sans',system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text)}body{background:radial-gradient(ellipse 60% 19% at 50% -8%,#203830 0%,transparent 90%),var(--bg)}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.app-shell{max-width:760px;min-height:100dvh;margin:auto;position:relative;padding-bottom:calc(96px + env(safe-area-inset-bottom));}.app-header{height:94px;padding:calc(17px + env(safe-area-inset-top)) 23px 15px;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:15;background:linear-gradient(180deg,#0b1012 73%,#0b1012e8);backdrop-filter:blur(18px)}.brand{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;width:180px;flex-shrink:0}.brand-logo{width:180px;height:auto;display:block;max-height:44px;object-fit:contain}.brand-subtitle{display:block;width:100%;text-align:center;color:#a6b0bc;font-size:8px;letter-spacing:3.2px;font-weight:800;line-height:1.1;margin-top:1px}.avatar-btn{border:1px solid #38463b;background:#23322b;color:var(--accent);font-weight:800;border-radius:15px;width:42px;height:42px}.screen{padding:9px 21px 22px}.eyebrow{text-transform:uppercase;font-size:10px;color:var(--accent);font-weight:800;letter-spacing:2.4px}.page-title{font-family:Outfit,system-ui,sans-serif;font-weight:800;font-size:30px;line-height:1.1;letter-spacing:-.7px;margin:8px 0 10px}.muted{color:var(--muted)}.subhead{font-size:13px;line-height:1.65;color:var(--muted)}.section{margin-top:24px}.section-top{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.section-title{font-family:Outfit,system-ui,sans-serif;font-weight:700;font-size:19px;margin:0;letter-spacing:-.3px}.text-btn{border:0;color:var(--accent);background:transparent;font-size:12px;font-weight:700;padding:7px 0}.hero{position:relative;overflow:hidden;background:linear-gradient(116deg,#202f27,#152520 65%,#122018);border:1px solid #2d4637;border-radius:25px;padding:23px 20px;box-shadow:var(--shadow)}.hero:after{content:'W';font-family:Outfit,system-ui,sans-serif;font-weight:900;font-size:215px;color:#c9ffab08;position:absolute;right:-11px;top:-45px;line-height:1;pointer-events:none}.hero h2{font-family:Outfit,system-ui,sans-serif;font-size:27px;line-height:1.12;max-width:215px;letter-spacing:-.5px;margin:12px 0}.hero p{max-width:255px;color:#b6c9bb;font-size:12px;line-height:1.55;margin:0 0 20px}.hero .kicker{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--accent);font-weight:800;letter-spacing:1.2px}.kicker .pulse{height:7px;width:7px;background:var(--accent);border-radius:50%;box-shadow:0 0 0 4px #b4fb6322}.btn{border:0;border-radius:13px;padding:13px 17px;font-size:13px;font-weight:800;display:inline-flex;justify-content:center;align-items:center;gap:8px;transition:transform .15s}.btn:active{transform:scale(.97)}.btn-primary{color:#111811;background:var(--accent)}.btn-secondary{background:#26352d;color:#e7f4e7;border:1px solid #3d5b43}.btn-outline{background:transparent;border:1px solid var(--line);color:var(--text)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn-wide{width:100%}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.metric{padding:14px 12px;border:1px solid var(--line);background:var(--panel);border-radius:16px;min-height:92px}.metric strong{font-family:Outfit,system-ui,sans-serif;font-size:25px;display:block;line-height:1.2;letter-spacing:-.8px}.metric small{font-size:10px;color:var(--muted);line-height:1.4}.metric .mini-icon{display:flex;color:var(--accent);margin-bottom:4px}.week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.day{border:1px solid var(--line);background:var(--panel);border-radius:13px;text-align:center;padding:11px 0 10px;min-width:0}.day .dayname{font-size:10px;color:var(--muted);font-weight:700}.day .dot{margin:9px auto 0;height:7px;width:7px;border-radius:50%;background:#354248}.day.workout .dot{background:var(--accent)}.day.sport .dot{background:#65c5c5}.day.today{border-color:var(--accent);box-shadow:0 0 0 1px #b4fb6370}.day.today .dayname{color:var(--text)}.daylabel{display:flex;gap:12px;margin-top:10px;font-size:10px;color:var(--muted)}.daylabel span:before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-right:5px}.daylabel span:nth-child(2):before{background:#65c5c5}.workout-card{border:1px solid var(--line);background:var(--panel);padding:15px;border-radius:17px;display:flex;align-items:center;gap:13px;margin:9px 0;cursor:pointer;text-align:left;width:100%;color:var(--text)}.workout-card:active{border-color:var(--accent)}.workout-icon{flex:none;display:grid;place-items:center;width:47px;height:50px;background:#2a3d32;color:var(--accent);border-radius:13px;font-weight:900;font-family:Outfit,system-ui,sans-serif;font-size:21px}.workout-icon.b{background:#332f39;color:#d6b7ff}.workout-icon.c{background:#283b3f;color:#96e7ef}.workout-info{flex:1;min-width:0}.workout-info b{display:block;font-size:14px;margin-bottom:4px}.workout-info p{font-size:11px;color:var(--muted);margin:0;line-height:1.45}.badge{font-size:10px;background:#2e4236;color:var(--accent);padding:6px 8px;border-radius:7px;font-weight:800}.arrow{color:#849b99;font-size:19px}.warning{display:flex;align-items:flex-start;gap:10px;padding:13px 14px;background:#29271d;border:1px solid #4c4330;border-radius:15px;color:#eed5a6;font-size:11px;line-height:1.55;margin-top:15px}.warning-icon{font-size:17px}.back{border:0;background:transparent;color:var(--muted);font-weight:700;font-size:12px;margin-bottom:16px;padding:0}.progressline{height:7px;background:#2b3837;border-radius:10px;overflow:hidden;margin:10px 0 16px}.progressline>div{height:100%;background:linear-gradient(90deg,#64bb92,var(--accent));border-radius:10px}.exercise-card{border:1px solid var(--line);background:var(--panel);border-radius:17px;margin-top:10px;overflow:hidden}.exercise-head{padding:13px;display:flex;gap:11px;align-items:center}.exercise-thumb{background:linear-gradient(145deg,#304235,#1e2b2b);border-radius:12px;width:58px;height:58px;display:grid;place-items:center;flex:none}.exercise-thumb svg{width:43px;height:43px}.exercise-text{flex:1;min-width:0}.exercise-text strong{font-size:13px;display:block;line-height:1.35}.exercise-text small{font-size:11px;color:var(--muted);display:block;margin-top:5px}.ex-num{font-size:11px;color:var(--accent);font-weight:800;margin-right:4px}.exercise-actions{display:flex;gap:7px;padding:0 12px 12px}.mini-btn{background:#22302d;border:1px solid #324541;color:#cfe5d7;border-radius:9px;padding:9px 10px;font-size:11px;font-weight:700;flex:1}.mini-btn:first-child{background:#283b31;color:var(--accent)}.sets{padding:4px 13px 13px;border-top:1px solid var(--line)}.setrow{display:grid;grid-template-columns:40px 1fr 1fr 44px;gap:8px;align-items:center;padding-top:11px}.setrow span{font-size:11px;color:var(--muted)}.setrow input,.field input,.field select{min-width:0;width:100%;outline:0;border:1px solid #354345;border-radius:9px;background:#0e1719;color:var(--text);padding:9px;font-size:13px}.setrow input:focus,.field input:focus{border-color:var(--accent)}.checkset{border:1px solid #425444;background:#283a30;color:var(--accent);border-radius:9px;height:35px;font-size:17px}.checkset.done{background:var(--accent);color:#122119;border-color:var(--accent)}.setlabels{display:grid;grid-template-columns:40px 1fr 1fr 44px;gap:8px;padding-top:10px;font-size:10px;color:var(--muted);font-weight:700}.session-toolbar{position:sticky;bottom:calc(80px + env(safe-area-inset-bottom));padding:12px;background:#0b1012e8;backdrop-filter:blur(12px);border-radius:16px;margin-top:15px;border:1px solid var(--line);display:flex;gap:8px;align-items:center}.session-toolbar .btn{flex:1}.guide{margin:0 13px 12px;border-radius:10px;background:#0c1718;padding:12px;color:#a8c1ba;font-size:11px;line-height:1.65}.link{color:var(--accent);font-weight:700;text-decoration:underline;text-underline-offset:3px}.field{margin:12px 0}.field label{display:block;font-size:11px;color:var(--muted);margin-bottom:6px}.row-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.panel{border:1px solid var(--line);background:var(--panel);border-radius:18px;padding:17px;margin-bottom:13px}.panel h3{font-size:14px;margin:0 0 13px}.history-item{padding:13px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;font-size:12px}.history-item:last-child{border-bottom:0}.history-item small{color:var(--muted);display:block;margin-top:5px}.history-item b{color:var(--accent)}.empty{padding:28px 15px;text-align:center;color:var(--muted);font-size:12px;line-height:1.6}.chart-area{height:130px;position:relative}.chart-area svg{width:100%;height:100%;overflow:visible}.chart-baseline{display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.profile-card{display:flex;align-items:center;gap:12px}.profile-photo{display:grid;place-items:center;width:53px;height:53px;border-radius:17px;background:#2a392f;color:var(--accent);font-family:Outfit,system-ui,sans-serif;font-size:24px;font-weight:900}.profile-card h2{margin:0;font-size:18px}.profile-card p{margin:4px 0 0;font-size:12px;color:var(--muted)}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);z-index:20;width:100%;max-width:760px;height:calc(72px + env(safe-area-inset-bottom));padding:7px 12px calc(7px + env(safe-area-inset-bottom));border-top:1px solid #243330;background:#11191bf5;backdrop-filter:blur(15px);display:grid;grid-template-columns:repeat(4,1fr)}.bottom-nav button{border:0;background:transparent;color:#819391;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;font-size:10px;font-weight:800}.bottom-nav button.active{color:var(--accent)}.bottom-nav svg{width:21px;height:21px}.toast{position:fixed;z-index:50;bottom:calc(90px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%) translateY(25px);max-width:90%;width:max-content;color:#111c15;background:var(--accent);font-size:12px;font-weight:800;padding:12px 17px;border-radius:12px;opacity:0;pointer-events:none;transition:all .25s}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.modal-layer{position:fixed;inset:0;background:#000b;z-index:35;display:flex;align-items:end;justify-content:center}.modal{width:min(100%,760px);background:#172124;border:1px solid #344244;border-radius:25px 25px 0 0;padding:22px 20px calc(27px + env(safe-area-inset-bottom));max-height:85vh;overflow:auto}.modal h2{font-family:Outfit,system-ui,sans-serif;margin:0 0 12px}.modal p{font-size:13px;color:var(--muted);line-height:1.6}.modal .close{border:0;color:var(--muted);background:none;float:right;font-size:21px}.timer-face{font-family:Outfit,system-ui,sans-serif;font-size:44px;font-weight:800;text-align:center;margin:13px 0;color:var(--accent)}.footnote{font-size:10px;color:var(--muted);line-height:1.6}.list-note{font-size:11px;color:var(--muted);padding:10px 2px}.page-head{margin:4px 0 17px}.accent{color:var(--accent)}.divider{height:1px;background:var(--line);margin:15px 0}
@media(min-width:700px){.screen{padding:20px 30px}.app-header{padding-left:30px;padding-right:30px}.hero{padding:30px}.hero h2{font-size:35px;max-width:360px}.hero p{max-width:360px}.metrics{gap:15px}.metric{padding:18px}.workout-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.workout-card{flex-direction:column;align-items:flex-start;margin:0}.workout-card .arrow{display:none}.week{gap:10px}.day{padding:15px 0}.exercise-card{break-inside:avoid}.exercise-list{display:grid;grid-template-columns:repeat(2,1fr);gap:0 10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* Release 2.0 · Demonstrações locais ilustradas, sem YouTube */
.exercise-head{width:100%;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer}
.exercise-thumb{width:100px;height:80px;overflow:hidden;border:1px solid #3b5147;background:#172c2b;display:flex;align-items:center;justify-content:center}
.exercise-thumb .exercise-image{width:100%;height:100%;object-fit:cover;object-position:center}
.exercise-head .exercise-text{align-self:center}
.picture-hint{display:flex;align-items:center;gap:5px;color:var(--accent);font-size:10px;font-weight:750;margin-top:7px}
.exercise-head>svg{flex:none;color:#88a299}
.exercise-image-wrap{background:#101e20;border:1px solid #354944;border-radius:14px;overflow:hidden}
.exercise-image.large{display:block;max-width:100%;width:100%;height:auto;aspect-ratio:5/3;object-fit:contain}
.exercise-modal-head h2{font-size:19px;line-height:1.35;margin:6px 0 3px;color:#f7fff7}
.exercise-modal-head p{font-size:12px;margin:0 0 14px}
.exercise-instructions>strong{display:block;color:var(--accent);margin-top:17px;font-size:13px}
.exercise-instructions p{margin:7px 0 13px}
.exercise-instructions .warning{margin:10px 0}
@media(min-width:700px){.exercise-thumb{width:118px;height:88px}}
@media(max-width:365px){.exercise-thumb{width:76px;height:71px}.exercise-head{gap:7px;padding:10px}.exercise-text strong{font-size:12px}}

/* WebDion v3.0 · premium cloud edition */
:root{--bg:#070d11;--panel:#101a1f;--panel2:#16232a;--line:#2a3a3d;--accent:#a4f56d;--shadow:0 17px 48px #0007}
body{background:radial-gradient(circle at 50% -2%,#143529 0,transparent 40%),#080e12}
.app-header{background:#080e12e8;border-bottom:1px solid #ffffff09}
.app-header[hidden],.bottom-nav[hidden],.sync-status[hidden]{display:none!important}
.hero{background:linear-gradient(121deg,#182a24 0%,#0f1c21 60%,#131d20 100%);border:1px solid #355441;box-shadow:0 20px 70px #081611}
.hero::before{content:'';position:absolute;width:175px;height:175px;right:-45px;bottom:-65px;background:#a4f56d15;filter:blur(15px);border-radius:50%}
.workout-card,.exercise-card,.panel,.metric{box-shadow:0 10px 30px #0002;background:linear-gradient(145deg,#142024,#0f181d)}
.exercise-thumb{width:114px;height:84px;background:linear-gradient(150deg,#1d302e,#0e1b1e);border-radius:13px;overflow:hidden}
.exercise-thumb img{height:100%;width:100%;object-fit:cover}
.exercise-image-wrap{background:linear-gradient(160deg,#17262a,#0b1317);border-color:#3a5950}
.exercise-image-wrap img{width:100%;max-height:460px;object-fit:contain}
.picture-hint{color:#b1f17e}.exercise-card{border:1px solid #2c4241}
.sync-status{display:block;font-size:10px;text-align:center;letter-spacing:.35px;color:#a5c59b;background:#142920;padding:5px 10px;border-bottom:1px solid #264034}
.sync-status[data-state="warning"]{color:#ffe0a3;background:#352919}.sync-status[data-state="error"]{color:#ffb4a8;background:#3c211f}
.cloud-hint{background:#102620;border:1px solid #254a38;padding:10px 13px;border-radius:11px;display:flex;align-items:center;gap:8px;font-size:11px;color:#a3cbaf;margin-bottom:13px}
.auth-layout{padding:20px 1px;max-width:480px;margin:auto}.auth-brand{padding:20px 12px 22px;text-align:center}.auth-brand h1{font-size:39px;line-height:1.07;letter-spacing:-1.3px;margin:14px 0 11px}.auth-brand p{font-size:13px;color:#9aacb2;line-height:1.65;max-width:315px;margin:auto}.auth-logo-mark{border:1px solid #355c3f;color:var(--accent);background:#1e3326;border-radius:20px;width:66px;height:66px;display:grid;place-items:center;margin:8px auto 19px;box-shadow:0 0 46px #a4f56d1a}
.auth-card{border:1px solid #34443f;background:linear-gradient(145deg,#162526,#0c151a);padding:23px 20px;border-radius:25px;display:grid;gap:15px;box-shadow:0 20px 60px #0005}.auth-card h2{margin:0 0 3px;font-size:21px}.auth-card label{font-size:12px;font-weight:700;color:#c4d4ce}.auth-card input{width:100%;margin-top:7px;padding:14px;background:#081114;border:1px solid #354843;border-radius:13px;color:white;outline:none}.auth-card input:focus{border-color:#a4f56d}.auth-card small{text-align:center;color:#819997;font-size:10px}.loading-card{border:1px solid #354639;background:#14221e;border-radius:17px;padding:25px;text-align:center;color:#b7d4bb}
.admin-grid{display:grid;grid-template-columns:1fr;gap:7px;margin:14px 0}.admin-exercise{border:1px solid #30423c;border-radius:11px;padding:10px 13px;background:#101e1c}.admin-exercise summary{cursor:pointer;font-weight:700;font-size:12px;line-height:1.5}.admin-exercise .row-fields{margin:14px 0 8px}.admin-badge{display:inline-flex;align-items:center;justify-content:center;background:#24392e;color:var(--accent);font-size:10px;border-radius:6px;width:20px;height:20px;margin-right:6px}.image-upload{font-size:11px;color:#b8d6b8;display:block;line-height:1.8;margin:8px 0}.image-upload input{width:100%;font-size:11px;display:block;margin-top:4px}.credits{text-align:center;font-size:10px;color:#849790;padding:10px}.credits a{color:#b8ed95;text-decoration:underline}.admin-exercise input{max-width:100%}
@media(min-width:700px){.admin-grid{grid-template-columns:1fr 1fr}}

/* Imagens editoriais WebDion e ilustrações locais WebP */
.hero{isolation:isolate;min-height:233px}.hero>.kicker,.hero h2,.hero p,.hero button{position:relative;z-index:2}.hero-photo{position:absolute;right:-10px;top:5px;bottom:0;width:45%;height:100%;object-fit:cover;object-position:50%;opacity:.33;mix-blend-mode:luminosity;mask-image:linear-gradient(90deg,transparent,#000 40%)}
.workout-card{position:relative;overflow:hidden;isolation:isolate}.workout-card>*:not(.workout-cover){position:relative;z-index:1}.workout-cover{position:absolute;right:-25px;top:-12px;width:35%;height:calc(100% + 24px);object-fit:cover;opacity:.10;filter:saturate(.4);mask-image:linear-gradient(90deg,transparent,black 50%);z-index:0}
.auth-logo{width:220px;max-width:90%;height:auto;display:block;margin:0 auto}.auth-subtitle{display:block;text-align:center;font-size:10px;letter-spacing:4.3px;color:#b6c5c5;margin:0 auto 17px;font-weight:800}
@media(min-width:700px){.workout-cover{width:100%;right:0;top:auto;bottom:-30px;height:150px;mask-image:linear-gradient(180deg,transparent,black);opacity:.15}}

/* Fotografia original do projeto + painel de técnica local */
.exercise-thumb{border:1px solid #355249;background:#0b1517}
.exercise-thumb .exercise-image{object-fit:cover;object-position:center;filter:saturate(.85) contrast(1.09)}
.exercise-image-wrap{background:#0b1416;max-height:450px}
.exercise-image-wrap .exercise-image.large{max-height:440px;aspect-ratio:4/3;object-fit:cover;object-position:center 32%}
.tech-detail{border:1px solid #324a42;background:#101e20;border-radius:13px;margin:14px 0;padding:12px;color:#dce8e0}
.tech-detail summary{color:#b5f58a;font-size:12px;font-weight:800;cursor:pointer}
.tech-detail img{display:block;width:100%;margin-top:10px;border-radius:10px}

/* WebDion v3.1: senha oculta/visível com botão acessível */
.secret-wrap{display:flex;position:relative;width:100%;margin-top:7px;align-items:center}
.secret-wrap input{width:100%;min-width:0;padding-right:56px!important;margin-top:0!important}
.password-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:9px;color:#aac7b9;background:transparent;cursor:pointer}
.password-toggle:hover,.password-toggle:focus-visible{background:#203b30;color:#a4f56d;outline:none}
.field .secret-wrap{margin-top:4px}
.auth-card label+.secret-wrap{margin-top:-8px}

/* ===== WebDion Treinos 3.5: redesign mobile-first ===== */
:root{--bg:#080d10;--panel:#121d20;--panel2:#1a282a;--line:#263737;--text:#f5f9f7;--muted:#8fa4a1;--accent:#9bf567;--accent2:#45e4a9;--radius:21px;--shadow:0 16px 55px #0007}
html{scroll-behavior:smooth}body{background:radial-gradient(circle at 80% -100px,rgba(56,131,94,.18),transparent 410px),#080d10;-webkit-tap-highlight-color:transparent}
.app-shell{min-height:100svh;padding-bottom:calc(108px + env(safe-area-inset-bottom,0px))}
/* Important: never use a fixed header height on iOS when using safe-area inset. */
.app-header{height:auto;min-height:92px;padding:max(15px,env(safe-area-inset-top,0px)) 21px 14px;align-items:center;gap:8px;position:sticky;top:0;isolation:isolate;background:rgba(9,16,19,.97);border-bottom:1px solid #ffffff0b;backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.app-header::before{content:'';pointer-events:none;position:absolute;inset:0;background:linear-gradient(100deg,transparent,#24423616);z-index:-1}
.brand{min-width:0;width:min(57vw,215px);height:auto;flex:0 1 215px;align-items:center;justify-content:center;gap:5px;padding:5px 0 3px;overflow:visible}
.brand-logo{display:block;width:100%;max-width:205px;height:auto;max-height:none;object-fit:contain;filter:none;transform:none}
.brand-subtitle{font-size:9px;line-height:1.5;font-weight:800;color:#c7ddd0;letter-spacing:4px;margin:0;text-align:center}
.header-tools{display:flex;align-items:center;gap:9px;margin-left:auto;flex:none}
.refresh-header{width:43px;height:43px;display:grid;place-items:center;color:#c3e1cf;background:#192923;border:1px solid #355143;border-radius:14px;transition:.2s}
.refresh-header:active{transform:rotate(-45deg) scale(.95)}
.avatar-btn{width:43px;height:43px;border-radius:14px;background:linear-gradient(145deg,#233d31,#20332c);color:#b9f584;border-color:#3d6746;box-shadow:inset 0 1px #ffffff14}
.screen{padding:24px 20px 28px;min-height:50vh}
.page-head{margin:0 0 24px}.dashboard-head{margin:0 0 23px}
.eyebrow{color:#99e89f;font-size:10px;letter-spacing:2.2px}
.welcome-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#a6ff86;margin-right:5px;box-shadow:0 0 0 4px #89e78322}
.page-title{font-size:clamp(31px,7.5vw,43px);font-weight:850;letter-spacing:-1.45px;line-height:1.07;margin:14px 0 11px}
.subhead{color:#9dafac;line-height:1.55;font-size:13px}
.section{margin-top:29px}.section-title{font-size:20px;letter-spacing:-.55px;font-weight:800}.section-top{margin-bottom:14px}
.hero{min-height:268px;padding:23px;border:1px solid #42614c;border-radius:26px;background:linear-gradient(130deg,#1c3229 0%,#11211e 49%,#0e1b1b 100%);box-shadow:0 25px 65px #0007}
.hero::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,28,23,.48),rgba(13,28,23,.04));pointer-events:none}
.hero .hero-photo{width:63%;right:-8%;top:0;height:100%;opacity:.58;mix-blend-mode:normal;filter:saturate(.78) contrast(1.06);mask-image:linear-gradient(90deg,transparent 0%,#000 54%);object-position:55% 20%}
.hero h2{font-size:30px;line-height:1.09;letter-spacing:-1px;max-width:66%;margin:23px 0 15px;position:relative}
.hero p{max-width:59%;font-size:12px;line-height:1.55;color:#c1d3c7;position:relative}
.hero>.kicker{z-index:2;color:#b0f691;letter-spacing:1.5px;font-size:9px}
.hero .btn{margin-top:5px;position:relative;z-index:3}
.btn-primary{background:linear-gradient(120deg,#a5f971,#66e98f);color:#102116;box-shadow:0 6px 24px #75eb882a}
.btn{border-radius:13px;padding:14px 19px}
.metrics{gap:9px;margin-top:13px}.metric{padding:16px 13px;border:1px solid #2b4340;background:linear-gradient(150deg,#192723,#111c20);border-radius:18px;min-height:113px;box-shadow:none}
.metric strong{font-size:27px;font-weight:850;letter-spacing:-1px;margin:5px 0 6px}.metric small{font-size:10px;line-height:1.35;color:#99aaa8}.metric .mini-icon{color:#96ef9f}
.week{gap:6px}.day{border-radius:14px;background:#101b1e;border:1px solid #263a39;padding:13px 0 11px}.day .dayname{font-size:10px}.day .dot{margin-top:10px}.day.today{background:#1e3226;border-color:#b1f478;box-shadow:0 0 0 1px #b1f47870,inset 0 0 18px #b1f47809}
.daylabel{margin-top:12px;font-size:11px;gap:17px}
.workout-card{border-radius:18px;background:linear-gradient(130deg,#162528,#0f191d);border:1px solid #2d4242;padding:17px 15px;min-height:96px;box-shadow:none;transition:transform .15s,border-color .15s}
.workout-card:active{transform:scale(.99);border-color:#8bee88}.workout-icon{border-radius:14px;width:50px;height:52px;background:linear-gradient(140deg,#22432c,#1d2f26);color:#b5fb77}
.workout-icon.b{background:#263441;color:#9ac4ff}.workout-icon.c{background:#3a3427;color:#ffd18e}
.workout-info b{font-size:14px}.workout-info p{font-size:11px}.workout-cover{opacity:.18;width:41%}
.panel,.exercise-card{border-radius:19px;border-color:#2c403f;background:linear-gradient(155deg,#152226,#10191d)}
.exercise-thumb{width:102px;height:83px;border-radius:12px}.exercise-image-wrap{border-radius:17px;overflow:hidden}
.exercise-text strong{font-size:13px}.exercise-card{box-shadow:0 10px 30px #0003}
.bottom-nav{height:calc(74px + env(safe-area-inset-bottom,0px));border:1px solid #253737;border-bottom:0;border-radius:20px 20px 0 0;box-shadow:0 -10px 35px #0006;background:rgba(13,22,25,.97);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);padding:9px 12px calc(9px + env(safe-area-inset-bottom,0px))}
.bottom-nav button{gap:5px;color:#849894;font-weight:700;font-size:10px}.bottom-nav button.active{color:#a5f66d}.bottom-nav svg{width:23px;height:23px}.bottom-nav button.active .nav-icon{filter:drop-shadow(0 0 8px #84ef7760)}
.sync-status[data-state="success"],.sync-status[hidden]{display:none!important}.sync-status{background:#1e2924;color:#f6dca3;font-size:11px;padding:9px}
.update-banner[hidden]{display:none!important}.update-banner{position:relative;z-index:18;display:flex;align-items:center;gap:9px;background:#1a3428;padding:12px 16px;color:#e3fff0;border-bottom:1px solid #426d4b}
.update-banner div{flex:1;min-width:0}.update-banner strong{font-size:12px;display:block}.update-banner small{font-size:10px;color:#bcd7c6;display:block;margin-top:3px}.update-banner button{font-size:11px;padding:10px 12px;color:#0c1a11;background:#9ff378;border:0;border-radius:9px;font-weight:800}.update-banner .banner-close{background:transparent;color:#b9d3c1;font-size:19px;padding:6px}
.settings-heading{display:flex;gap:11px;align-items:flex-start;margin-bottom:12px}.settings-heading h3{margin:0 0 3px}.settings-heading .subhead{margin:0}.settings-icon{width:39px;height:39px;display:grid;place-items:center;border-radius:11px;color:#aaee85;background:#22382c;flex:none}
.credits{color:#849895}
@media(max-width:385px){.app-header{padding-left:15px;padding-right:15px}.brand{width:51vw}.header-tools{gap:6px}.refresh-header,.avatar-btn{width:39px;height:39px}.screen{padding-left:16px;padding-right:16px}.hero h2{font-size:26px}.hero{padding:20px}.metric{padding:13px 10px}}
@media(min-width:700px){.screen{padding:30px 33px}.hero{min-height:320px;padding:33px}.hero h2{max-width:48%;font-size:39px}.hero p{max-width:45%}.hero .hero-photo{width:52%;right:0;opacity:.7}.app-header{padding-left:33px;padding-right:33px}}
