:root{--bg:#f4f6f1;--surface:#fff;--ink:#172019;--muted:#667068;--line:#d9ded7;--green:#b8ff36;--green-deep:#244d19;--dark:#121713;--red:#ff6d55;--shadow:0 16px 45px rgba(24,35,27,.08);--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.5}button,input,textarea{font:inherit}a{color:inherit;text-decoration:none}.wrap{width:min(1180px,calc(100% - 40px));margin-inline:auto}.topbar{height:72px;display:flex;align-items:center;gap:36px;padding:0 max(24px,calc((100% - 1180px)/2));border-bottom:1px solid var(--line);position:sticky;top:0;background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(12px);z-index:20}.brand{display:flex;align-items:center;gap:10px;font-size:.8rem;letter-spacing:.08em}.brand-mark{display:grid;place-items:center;width:28px;height:28px;background:var(--ink);color:var(--green);font-weight:900}.brand b{font-weight:800}.topbar nav{display:flex;gap:28px;margin-left:auto}.topbar nav a{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.topbar nav a:hover{color:var(--ink)}.icon-button{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink);cursor:pointer;font-size:1.2rem}.hero{min-height:640px;padding:92px 0 80px;display:grid;grid-template-columns:1.3fr .7fr;gap:90px;align-items:center}.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.18em;color:var(--green-deep);margin:0 0 18px}.hero h1,.section-heading h2{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.045em}.hero h1{font-size:clamp(4rem,8vw,7.7rem);line-height:.83;margin:0}.hero h1 em{font-weight:400;color:var(--green-deep)}.intro{max-width:570px;color:var(--muted);font-size:1.05rem;margin:32px 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{border:1px solid var(--ink);padding:14px 20px;border-radius:8px;font-size:.85rem;font-weight:750;cursor:pointer}.button.primary{background:var(--ink);color:white}.button.primary span{margin-left:28px}.button.ghost{background:transparent;color:var(--ink)}.progress-card{background:var(--dark);color:white;border-radius:var(--radius);padding:28px;box-shadow:var(--shadow)}.card-top{display:flex;justify-content:space-between;font-size:.68rem;letter-spacing:.14em}.card-top b{color:var(--green)}.progress-ring{--progress:0deg;width:210px;aspect-ratio:1;border-radius:50%;margin:28px auto;display:grid;place-items:center;background:conic-gradient(var(--green) var(--progress),#2d342e 0);position:relative}.progress-ring:before{content:"";position:absolute;inset:12px;border-radius:50%;background:var(--dark)}.progress-ring>div{position:relative;text-align:center}.progress-ring strong{display:block;font-size:2.7rem}.progress-ring span{display:block;color:#9ea69f;font-size:.61rem;letter-spacing:.14em}.progress-stats{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid #303831}.progress-stats div{padding:18px}.progress-stats div+div{border-left:1px solid #303831}.progress-stats b,.progress-stats span{display:block}.progress-stats b{font-size:1.5rem}.progress-stats span{font-size:.72rem;color:#9ea69f}.progress-card>p{font-size:.78rem;color:#aeb5af;margin:18px 0 0}.section{padding:100px 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:52px}.section-heading h2{font-size:clamp(2.8rem,5vw,4.6rem);margin:0;line-height:1}.section-heading>p{max-width:390px;color:var(--muted);margin:0}.timeline{border-top:1px solid var(--line)}.time-block{display:grid;grid-template-columns:110px 1fr 80px;gap:26px;padding:26px 18px;border-bottom:1px solid var(--line);align-items:start;background:transparent}.time-block time{font:600 1.3rem Georgia,serif}.time-block h3{margin:0 0 6px;font-size:1.15rem}.time-block p{color:var(--muted);margin:0;max-width:770px}.time-block small{font-size:.62rem;letter-spacing:.13em;text-align:right;color:var(--muted)}.time-block.featured{margin:12px 0;background:var(--surface);border:1px solid var(--line);border-left:5px solid var(--green-deep);border-radius:12px;padding:28px 20px;box-shadow:var(--shadow)}.tag{display:inline-block;background:var(--green);color:#16320d;padding:3px 7px;margin-bottom:8px;font-size:.57rem;font-weight:900;letter-spacing:.1em}.accent-red{border-left:4px solid var(--red)}.week-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin-top:20px}.week-strip span{background:var(--bg);padding:8px;font-size:.58rem;text-align:center;color:var(--muted)}.week-strip b{font-size:.61rem;color:var(--ink)}.dark-section{background:var(--dark);color:white;padding:100px 0}.inverse .eyebrow{color:var(--green)}.inverse>p{color:#aeb5af}.kpi-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.check-card{display:flex;gap:16px;align-items:center;padding:20px;background:#1b211c;border:1px solid #303831;border-radius:10px;cursor:pointer;transition:border-color .15s}.check-card:hover{border-color:#69736b}.check-card input{position:absolute;opacity:0;pointer-events:none}.custom-check{width:34px;height:34px;display:grid;place-items:center;border:1px solid #59625b;border-radius:7px;color:transparent;flex:none}.check-card b,.check-card small{display:block}.check-card b{font-size:.95rem}.check-card small{color:#8e988f;font-size:.58rem;letter-spacing:.12em;margin-top:3px}.check-card:has(input:checked){border-color:var(--green)}.check-card input:checked+.custom-check{background:var(--green);color:#17320f;border-color:var(--green);font-weight:900}.check-card:has(input:checked) b{text-decoration:line-through;color:#aab1ab}.review-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:45px}.score-panel{background:var(--green);padding:34px;border-radius:var(--radius);color:#17320f}.score-panel>p{font-size:.67rem;font-weight:850;letter-spacing:.15em}.score-control{display:flex;align-items:end;margin:40px 0 24px}.score-control output{font:500 6rem/1 Georgia,serif}.score-control span{margin-bottom:9px}.score-panel input{width:100%;accent-color:var(--green-deep)}.review-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}.review-fields label{font-size:.72rem;font-weight:750;letter-spacing:.04em}.review-fields .full{grid-column:1/-1}.review-fields textarea,.review-fields input,.goal-card textarea{display:block;width:100%;margin-top:9px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);padding:14px;resize:vertical;outline:none}.review-fields textarea{min-height:120px}.review-fields textarea:focus,.review-fields input:focus,.goal-card textarea:focus{border-color:var(--green-deep)}.goals-section{background:#e9ecdf;padding:100px 0}.goal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.goal-card{background:var(--surface);padding:28px;border-radius:12px;border:1px solid var(--line)}.goal-card>span{font:italic 2.2rem Georgia,serif;color:var(--green-deep)}.goal-card>p{font-size:.68rem;font-weight:850;letter-spacing:.15em}.goal-card textarea{min-height:100px;border:0;background:var(--bg);line-height:1.6}footer{background:var(--dark);color:#9da49e;padding:26px 0;font-size:.62rem;letter-spacing:.14em}footer .wrap{display:flex;justify-content:space-between}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);background:var(--ink);color:white;padding:11px 18px;border-radius:8px;font-size:.78rem;opacity:0;pointer-events:none;transition:.2s;z-index:30}.toast.show{opacity:1;transform:translate(-50%,0)}
[data-theme="dark"]{--bg:#111512;--surface:#1b211c;--ink:#edf1eb;--muted:#a3aca4;--line:#343b35;--green-deep:#b8ff36;--shadow:none}[data-theme="dark"] .goals-section{background:#171c18}[data-theme="dark"] .score-panel{color:#17320f}[data-theme="dark"] .button.primary{background:var(--green);color:#17320f;border-color:var(--green)}
[data-theme="dark"] .workout-section{background:#202620}[data-theme="dark"] .workout-section .eyebrow{color:#477d35}[data-theme="dark"] .workout-intro,[data-theme="dark"] .safety-note{color:#69736b}
.workout-section{padding:100px 0;background:#dedfd5;color:#172019}.workout-head{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:45px}.workout-head h2{font:500 clamp(2.8rem,5vw,4.6rem)/1 Georgia,serif;letter-spacing:-.045em;margin:0}.workout-intro{max-width:620px;color:#667068;margin:18px 0 0}.workout-switch{display:flex;padding:5px;background:#c8cabf;border-radius:10px;flex:none}.workout-switch button{border:0;background:transparent;color:#596159;padding:12px 20px;border-radius:7px;font-size:.72rem;font-weight:850;letter-spacing:.1em;cursor:pointer}.workout-switch button.active{background:#172019;color:#fff;box-shadow:0 4px 15px rgba(20,30,22,.15)}.workout-summary{display:flex;justify-content:space-between;align-items:center;background:#172019;color:#fff;padding:22px 26px;border-radius:12px 12px 0 0}.workout-summary span{display:block;color:#aeb5af;font-size:.62rem;letter-spacing:.14em}.workout-summary strong{display:block;margin-top:5px;font-size:1.2rem}.workout-progress{min-width:230px}.workout-progress>span{text-align:right}.workout-progress>div{height:5px;background:#3a423b;margin-top:9px;border-radius:5px;overflow:hidden}.workout-progress i{display:block;width:0;height:100%;background:var(--green);transition:width .15s}.workout-panel{display:grid;grid-template-columns:1.45fr .55fr;background:#f5f7f2;border-radius:0 0 12px 12px;overflow:hidden}.workout-panel[hidden]{display:none}.exercise-list{padding:10px 26px}.exercise{display:grid;grid-template-columns:28px 40px 1fr auto;gap:14px;align-items:center;padding:18px 0;border-bottom:1px solid #d9ded7;cursor:pointer}.exercise:last-child{border:0}.exercise input{position:absolute;opacity:0;pointer-events:none}.exercise>span{width:27px;height:27px;display:grid;place-items:center;border:1px solid #aeb5af;border-radius:5px;color:transparent}.exercise>b{font:italic 1.1rem Georgia,serif;color:#9ba29c}.exercise strong,.exercise small{display:block}.exercise strong{font-size:.98rem}.exercise small{font-size:.57rem;color:#747d75;letter-spacing:.12em;margin-top:3px}.exercise em{font-style:normal;font-size:.7rem;font-weight:850;letter-spacing:.08em}.exercise:has(input:checked)>span{background:#172019;color:var(--green);border-color:#172019}.exercise:has(input:checked) strong{text-decoration:line-through;color:#7c847d}.workout-note{background:var(--green);padding:34px;color:#17320f}.workout-note>span{font-size:.62rem;font-weight:900;letter-spacing:.15em}.workout-note h3{font:italic 2.7rem/1 Georgia,serif;margin:28px 0 18px}.workout-note>p{font-size:.82rem}.gym-note{background:#ff775f;color:#35130d}.week-plan{border-top:1px solid rgba(20,50,16,.25);margin-top:30px;padding-top:22px}.week-plan>b{font-size:.58rem;letter-spacing:.14em}.week-plan p{display:grid;grid-template-columns:35px 1fr;margin:10px 0;font-size:.75rem}.week-plan span{font-weight:850}.safety-note{font-size:.7rem;color:#687169;margin:16px 0 0}
.routine-switch{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:#bfc2b8;border:1px solid #bfc2b8;border-radius:10px 10px 0 0;overflow:hidden}.routine-switch button{border:0;background:#e9ebe3;color:#5f675f;padding:15px 8px;font-size:.65rem;font-weight:850;letter-spacing:.08em;cursor:pointer}.routine-switch button.active{background:var(--green);color:#17320f}.routine-switch+.workout-summary{border-radius:0}
.bmi-section{padding:100px 0;background:#121713;color:#fff}.bmi-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:16px}.bmi-form{background:#1c231d;border:1px solid #333b34;border-radius:14px;padding:30px}.bmi-form>div+div{margin-top:20px}.bmi-form label{display:block;font-size:.65rem;font-weight:800;letter-spacing:.12em;color:#aeb5af;margin-bottom:8px}.number-field{display:flex;align-items:center;background:#111612;border:1px solid #414a42;border-radius:8px}.number-field:focus-within{border-color:var(--green)}.number-field input{width:100%;border:0;outline:0;background:transparent;color:#fff;font:500 2rem Georgia,serif;padding:13px 16px}.number-field span{padding:0 16px;color:#919a92;font-size:.68rem;font-weight:850}.bmi-form button{width:100%;display:flex;justify-content:space-between;border:0;border-radius:8px;background:var(--green);color:#17320f;padding:16px 18px;margin-top:24px;font-size:.72rem;font-weight:900;letter-spacing:.1em;cursor:pointer}.bmi-error{min-height:20px;color:#ff8b76;font-size:.7rem;margin:9px 0 0}.bmi-result{display:grid;grid-template-columns:.65fr 1.35fr;background:#f2f4ed;color:#172019;border-radius:14px;overflow:hidden}.bmi-number{display:flex;flex-direction:column;justify-content:center;padding:34px;background:var(--green)}.bmi-number>span{font-size:.62rem;font-weight:850;letter-spacing:.14em}.bmi-number strong{font:500 clamp(4.8rem,8vw,7.5rem)/1 Georgia,serif;margin:18px 0}.bmi-number b{font-size:.82rem;text-transform:uppercase;letter-spacing:.09em}.bmi-detail{padding:38px}.bmi-detail>p:first-child{margin-top:0;color:#5f675f}.bmi-scale{height:12px;display:grid;grid-template-columns:1fr 1.5fr 1fr 1.2fr;border-radius:8px;background:linear-gradient(90deg,#64a9e5 0 21%,#95dc49 21% 52%,#ffd04b 52% 73%,#ff775f 73%);position:relative;margin-top:32px}.bmi-scale i{display:none;position:absolute;top:-7px;left:0;width:3px;height:26px;background:#172019;border-radius:2px}.scale-labels{display:grid;grid-template-columns:1fr 1.5fr 1fr 1.2fr;margin-top:9px}.scale-labels span{font-size:.55rem;color:#697169}.healthy-range{margin:28px 0 0;padding-top:20px;border-top:1px solid #d7dcd5;font-size:.78rem;font-weight:800}.bmi-disclaimer{color:#858e86;font-size:.68rem;max-width:850px;margin:18px 0 0}
@media(max-width:800px){.workout-section{padding:72px 0}.workout-head{display:block}.workout-switch{margin-top:26px;width:100%}.workout-switch button{flex:1}.workout-panel{grid-template-columns:1fr}.workout-summary{gap:20px}.workout-progress{min-width:180px}}@media(max-width:480px){.workout-summary{display:block}.workout-progress{margin-top:18px}.workout-progress>span{text-align:left}.exercise-list{padding:8px 16px}.exercise{grid-template-columns:27px 1fr auto;gap:10px}.exercise>b{display:none}.exercise em{font-size:.62rem}.workout-note{padding:28px}.workout-note h3{font-size:2.3rem}}
@media(max-width:600px){.routine-switch{grid-template-columns:repeat(2,1fr);border-radius:10px}.routine-switch button:first-child{grid-column:1/-1}.routine-switch+.workout-summary{margin-top:8px;border-radius:10px 10px 0 0}}
@media(max-width:800px){.bmi-section{padding:72px 0}.bmi-layout,.bmi-result{grid-template-columns:1fr}.bmi-number{min-height:250px}.bmi-detail{padding:28px}}@media(max-width:480px){.bmi-form{padding:22px}.bmi-number strong{font-size:5rem}.scale-labels span{font-size:.5rem}}
@media(max-width:800px){.topbar{height:64px;padding-inline:20px}.topbar nav{display:none}.hero{grid-template-columns:1fr;gap:48px;padding:64px 0}.hero h1{font-size:clamp(3.8rem,18vw,6rem)}.progress-card{max-width:460px;width:100%}.section,.dark-section,.goals-section{padding:72px 0}.section-heading{display:block;margin-bottom:36px}.section-heading>p{margin-top:18px}.time-block{grid-template-columns:76px 1fr}.time-block small{display:none}.week-strip{grid-template-columns:repeat(4,1fr)}.kpi-grid,.review-layout,.goal-grid{grid-template-columns:1fr}.review-fields{grid-template-columns:1fr}.review-fields .full{grid-column:auto}}@media(max-width:480px){.wrap{width:min(100% - 28px,1180px)}.hero{padding-top:48px}.hero h1{font-size:3.65rem}.intro{font-size:.95rem}.hero-actions{display:grid}.button{text-align:center}.progress-ring{width:190px}.time-block{grid-template-columns:1fr;gap:8px;padding-inline:8px}.time-block time{color:var(--green-deep)}.time-block.featured{padding:20px 16px}.week-strip{grid-template-columns:repeat(2,1fr)}.kpi-grid{gap:8px}.check-card{padding:16px}.goal-card{padding:22px}footer .wrap{gap:18px;flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.toast{transition:none}}
/* Lightweight motion system */
@property --progress{syntax:"<angle>";inherits:false;initial-value:0deg}.progress-ring{transition:--progress .65s cubic-bezier(.2,.8,.2,1),transform .25s ease}.progress-card:hover .progress-ring{transform:scale(1.025)}.topbar{animation:bar-in .55s ease both}.brand-mark{animation:mark-in .65s cubic-bezier(.2,.9,.25,1.25) both}.topbar nav a{position:relative;transition:color .2s ease}.topbar nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:var(--green-deep);transition:right .25s ease}.topbar nav a:hover:after{right:0}.button,.icon-button,.workout-switch button,.routine-switch button,.bmi-form button{transition:transform .18s ease,background-color .22s ease,color .22s ease,box-shadow .22s ease}.button:hover,.bmi-form button:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(20,35,23,.15)}.button:active,.icon-button:active,.workout-switch button:active,.routine-switch button:active,.bmi-form button:active{transform:scale(.97)}.icon-button:hover{transform:rotate(18deg)}.time-block,.check-card,.goal-card,.score-panel,.bmi-form,.bmi-result{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.time-block:not(.featured):hover{transform:translateX(7px)}.time-block.featured:hover,.goal-card:hover,.score-panel:hover,.bmi-form:hover,.bmi-result:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(20,32,23,.1)}.check-card:hover{transform:translateY(-2px)}.custom-check,.exercise>span{transition:transform .2s cubic-bezier(.2,.9,.3,1.35),background-color .2s ease,color .2s ease}.check-card input:checked+.custom-check,.exercise:has(input:checked)>span{animation:check-pop .32s cubic-bezier(.2,.9,.3,1.35)}.workout-panel{animation:panel-in .32s ease both}.exercise{transition:transform .2s ease,background-color .2s ease}.exercise:hover{transform:translateX(6px)}.exercise-list.routine-enter .exercise{animation:item-in .38s ease both;animation-delay:calc(var(--item-index) * 45ms)}.workout-progress i{transition:width .55s cubic-bezier(.2,.8,.2,1)}.bmi-scale i{transition:left .7s cubic-bezier(.2,.8,.2,1)}.bmi-number.calc-pop strong{animation:number-pop .45s cubic-bezier(.2,.9,.3,1.2)}.reveal{opacity:0;transform:translateY(28px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.8,.2,1);transition-delay:var(--reveal-delay,0ms)}.reveal.revealed{opacity:1;transform:none}.hero>div>*{opacity:0;animation:hero-in .65s ease forwards}.hero>div>.eyebrow{animation-delay:.08s}.hero h1{animation-delay:.16s}.hero .intro{animation-delay:.28s}.hero .hero-actions{animation-delay:.38s}.hero .progress-card{animation:card-in .75s .28s cubic-bezier(.2,.8,.2,1) both}.toast.show{animation:toast-pop .25s ease both}
@keyframes bar-in{from{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:none}}@keyframes mark-in{from{opacity:0;transform:rotate(-20deg) scale(.6)}to{opacity:1;transform:none}}@keyframes hero-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes card-in{from{opacity:0;transform:translateX(30px) scale(.97)}to{opacity:1;transform:none}}@keyframes panel-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes item-in{from{opacity:0;transform:translateX(-12px)}to{opacity:1;transform:none}}@keyframes check-pop{0%{transform:scale(.65)}70%{transform:scale(1.18)}100%{transform:scale(1)}}@keyframes number-pop{0%{opacity:.3;transform:scale(.78)}100%{opacity:1;transform:none}}@keyframes toast-pop{from{opacity:0;transform:translate(-50%,12px) scale(.96)}to{opacity:1;transform:translate(-50%,0) scale(1)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1!important;transform:none!important}}
/* Account, cloud sync and live clock */
.live-clock{display:flex;flex-direction:column;align-items:flex-end;min-width:62px}.live-clock strong{font:600 1rem/1.1 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.05em}.live-clock span{font-size:.5rem;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.profile-button{display:flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--surface);color:var(--ink);height:42px;padding:4px 10px 4px 5px;border-radius:24px;cursor:pointer;position:relative;transition:transform .2s ease,border-color .2s ease}.profile-button:hover{transform:translateY(-2px);border-color:var(--green-deep)}.profile-button>span,.profile-identity>span{display:grid;place-items:center;border-radius:50%;background:var(--ink);color:var(--green);font-weight:900}.profile-button>span{width:32px;height:32px}.profile-button>b{font-size:.6rem;letter-spacing:.08em}.profile-button>i{position:absolute;right:5px;bottom:3px;width:7px;height:7px;border-radius:50%;background:#899189;border:2px solid var(--surface)}.profile-button>i.online{background:#72d83d}.profile-button>i.syncing{background:#ffd04b;animation:sync-pulse 1s infinite}.account-dialog{width:min(510px,calc(100% - 28px));max-height:calc(100vh - 28px);overflow:auto;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--ink);padding:38px;box-shadow:0 28px 90px rgba(0,0,0,.25)}.account-dialog::backdrop{background:rgba(6,10,7,.7);backdrop-filter:blur(5px)}.account-dialog[open]{animation:dialog-in .3s cubic-bezier(.2,.8,.2,1)}.dialog-close{position:absolute;right:16px;top:14px;border:0;background:var(--bg);color:var(--ink);width:34px;height:34px;border-radius:50%;font-size:1.4rem;cursor:pointer}.account-dialog h2{font:500 2.4rem/1 Georgia,serif;margin:0}.dialog-intro{color:var(--muted);font-size:.85rem}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:var(--bg);padding:4px;border-radius:9px;margin:28px 0 22px}.auth-tabs button{border:0;background:transparent;color:var(--muted);padding:11px;border-radius:6px;font-size:.62rem;font-weight:850;letter-spacing:.08em;cursor:pointer}.auth-tabs button.active{background:var(--ink);color:var(--green)}.auth-form label{display:block;font-size:.65rem;font-weight:800;letter-spacing:.08em;margin-top:16px}.auth-form input{display:block;width:100%;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);padding:13px 14px;margin-top:7px;outline:none}.auth-form input:focus{border-color:var(--green-deep)}.auth-form>button[type="submit"]{width:100%;display:flex;justify-content:space-between;border:0;border-radius:8px;background:var(--green);color:#17320f;padding:14px 16px;margin-top:22px;font-size:.68rem;font-weight:900;letter-spacing:.1em;cursor:pointer}.forgot-button,.signout-button{display:block;margin:14px auto 0;border:0;background:transparent;color:var(--muted);font-size:.68rem;text-decoration:underline;cursor:pointer}.auth-message{min-height:20px;margin:12px 0 0;font-size:.72rem;color:var(--green-deep)}.auth-message.error{color:#e24f3a}.profile-identity{display:flex;align-items:center;gap:16px;margin:24px 0}.profile-identity>span{width:62px;height:62px;font-size:1.5rem}.profile-identity h2{font-size:2rem}.profile-identity p{margin:5px 0 0;color:var(--muted);font-size:.75rem}.cloud-status{display:flex;gap:12px;align-items:center;background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:15px}.cloud-status>i{width:10px;height:10px;border-radius:50%;background:#72d83d;box-shadow:0 0 0 5px rgba(114,216,61,.12)}.cloud-status b,.cloud-status span{display:block}.cloud-status b{font-size:.75rem}.cloud-status span{font-size:.62rem;color:var(--muted);margin-top:3px}.signout-button{color:#d64e3a;margin-top:26px}@keyframes dialog-in{from{opacity:0;transform:translateY(18px) scale(.97)}to{opacity:1;transform:none}}@keyframes sync-pulse{50%{opacity:.35;transform:scale(.75)}}
@media(max-width:980px){.live-clock{display:none}.profile-button>b{display:none}.profile-button{padding-right:5px}.topbar{gap:10px}}@media(max-width:480px){.account-dialog{padding:30px 20px}.account-dialog h2{font-size:2rem}.profile-identity h2{font-size:1.65rem}}
/* Statistics, streak chart and reminders */
.stats-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:20px;margin-bottom:22px}.stats-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px}.stat-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px;box-shadow:var(--shadow)}.stat-card span{font-size:.6rem;font-weight:850;letter-spacing:.12em;color:var(--muted)}.stat-card strong{display:block;font:500 2.5rem/1 Georgia,serif;margin:14px 0 4px;color:var(--green-deep)}.stat-card small{font-size:.58rem;letter-spacing:.1em;color:var(--muted)}
.stats-chart-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:24px;box-shadow:var(--shadow);display:flex;flex-direction:column}.stats-chart-head{font-size:.62rem;font-weight:850;letter-spacing:.14em;color:var(--muted);margin-bottom:20px}.stats-chart{display:flex;align-items:end;gap:12px;flex:1;min-height:170px}.stats-bar{flex:1;display:flex;flex-direction:column;align-items:center;gap:9px;height:100%;justify-content:end}.stats-bar .bar-track{width:100%;max-width:36px;height:100%;display:flex;align-items:end}.stats-bar i{width:100%;background:var(--line);border-radius:6px 6px 3px 3px;display:block;height:2%;transition:height .6s cubic-bezier(.2,.8,.2,1)}.stats-bar.full i{background:var(--green-deep)}.stats-bar span{font-size:.58rem;color:var(--muted);letter-spacing:.06em}.stats-bar b{font-size:.62rem;color:var(--ink)}
.reminders-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:28px;box-shadow:var(--shadow)}.reminders-head{display:flex;justify-content:space-between;align-items:start;gap:24px;margin-bottom:20px;flex-wrap:wrap}.reminders-head h3{font:500 1.5rem Georgia,serif;margin:8px 0 0}.reminders-note{color:var(--muted);font-size:.75rem;margin:10px 0 0;max-width:560px}
.switch{position:relative;display:inline-block;width:46px;height:26px;flex:none;margin-top:4px}.switch input{opacity:0;width:0;height:0;position:absolute}.switch span{position:absolute;inset:0;background:var(--line);border-radius:26px;cursor:pointer;transition:.2s}.switch span:before{content:"";position:absolute;width:20px;height:20px;left:3px;top:3px;background:#fff;border-radius:50%;transition:.2s;box-shadow:0 1px 3px rgba(0,0,0,.25)}.switch input:checked+span{background:var(--green-deep)}.switch input:checked+span:before{transform:translateX(20px)}
.reminders-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.reminder-row{display:flex;align-items:center;gap:12px;padding:13px 14px;border:1px solid var(--line);border-radius:9px;cursor:pointer;font-size:.78rem;transition:opacity .2s ease,border-color .2s ease}.reminder-row input{position:absolute;opacity:0}.reminder-row time{font:600 .8rem Georgia,serif;color:var(--green-deep);min-width:42px}.reminder-row b{font-weight:700}.reminder-row:has(input:not(:checked)){opacity:.4}
@media(max-width:900px){.stats-layout{grid-template-columns:1fr}.reminders-list{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.stats-cards{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:16px}.stat-card strong{font-size:2rem}.reminders-list{grid-template-columns:1fr}.reminders-head{display:block}.switch{margin-top:16px}}
/* Consistent and readable workout section in dark mode. */
[data-theme="dark"] .workout-section{background:#171d18;color:#edf1eb}
[data-theme="dark"] .workout-section .eyebrow{color:#b8ff36}
[data-theme="dark"] .workout-intro,[data-theme="dark"] .safety-note{color:#bac6bb}
[data-theme="dark"] .workout-switch{background:#313b32}
[data-theme="dark"] .workout-switch button{color:#d4ddd4}
[data-theme="dark"] .workout-switch button.active{background:#b8ff36;color:#17320f}
[data-theme="dark"] .routine-switch{background:#414e42;border-color:#414e42}
[data-theme="dark"] .routine-switch button{background:#29332b;color:#d7e1d7}
[data-theme="dark"] .routine-switch button.active{background:#b8ff36;color:#17320f}
[data-theme="dark"] .workout-panel{background:#222a23;color:#edf1eb}
[data-theme="dark"] .exercise{border-color:#414e42}
[data-theme="dark"] .exercise small,[data-theme="dark"] .exercise>b{color:#b6c4b7}
[data-theme="dark"] .exercise>span{border-color:#a1b2a3}
[data-theme="dark"] .exercise:has(input:checked) strong{color:#c4d0c5}
.check-card input:focus-visible+.custom-check,.exercise input:focus-visible+span,.reminder-row input:focus-visible+time{outline:3px solid #79b84d;outline-offset:4px}
/* Keep navigation reachable on smaller screens. */
@media(max-width:800px){.topbar{height:auto;min-height:64px;flex-wrap:wrap;gap:10px 16px;padding-top:10px;padding-bottom:8px}.topbar nav{display:flex;order:5;flex:0 0 100%;min-width:0;gap:20px;overflow-x:auto;margin:0;padding:4px 0 7px;scrollbar-width:thin}.topbar nav a{flex:none;font-size:.72rem}.topbar .brand{margin-right:auto}section[id]{scroll-margin-top:125px}}
/* Planning tools and settings */
.extension-panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:24px;margin-top:20px;color:var(--ink);box-shadow:var(--shadow)}.inverse-panel{background:#1b211c;border-color:#465047;color:#f2f5ef}.extension-panel h3{font:500 1.45rem Georgia,serif;margin:0 0 14px}.extension-panel details>summary,#reminderEditor summary{cursor:pointer;font-weight:750;padding:6px 0}.extension-panel details>p,.ext-mcp p,.cloud-conflict p{font-size:.8rem;color:var(--muted);line-height:1.6}.inverse-panel p{color:#b9c4ba}.ext-inline,.ext-form,.ext-actions{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:14px 0}.ext-form label,.ext-settings-grid label{display:grid;gap:6px;font-size:.75rem;font-weight:650}.ext-inline input,.ext-form input,.ext-form select,.ext-settings-grid select,.reminder-edit-row input,#quickSearch{min-height:42px;padding:9px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);font:inherit;max-width:100%}.ext-inline input{flex:1;min-width:150px}.ext-button,.ext-upload{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font:600 .75rem Inter,system-ui,sans-serif;cursor:pointer}.inverse-panel .ext-button{background:#2e3830;color:#fff;border-color:#657568}.ext-button:hover,.ext-upload:hover{border-color:var(--green-deep)}.ext-upload{position:relative;overflow:hidden}.ext-upload input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.ext-items{display:grid;gap:6px;margin:14px 0}.ext-items>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:8px 0}.ext-items>div>span,.ext-items>div>label{flex:1;min-width:150px;overflow-wrap:anywhere}.inverse-panel .ext-items>div{border-color:#465047}.custom-task b{flex:1}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.calendar-grid div{padding:12px;background:var(--bg);border:1px solid var(--line);border-radius:8px;text-align:center}.calendar-grid span,.calendar-grid b{display:block}.calendar-grid span{font-size:.7rem;color:var(--muted)}.calendar-grid b{margin-top:8px;font-size:1rem}.ext-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.ext-settings-grid>div p{font-size:.8rem;color:var(--muted);margin:4px 0 12px}.ext-mcp{border-top:1px solid var(--line);padding-top:18px;margin-top:20px}.ext-mcp code{display:block;overflow-wrap:anywhere;background:var(--bg);padding:12px;border-radius:7px}.cloud-conflict{margin-top:20px;padding:16px;border:1px solid #d59f53;background:#fff3dc;color:#4a3516;border-radius:8px}.cloud-conflict p{color:#614720}.reminder-edit-row{display:grid;grid-template-columns:minmax(130px,1fr) 110px minmax(140px,2fr) auto;gap:8px;align-items:center;padding:7px 0}.reminder-edit-row b{font-size:.75rem}.quick-open,.settings-link{border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);padding:8px 11px;cursor:pointer}.settings-link{font-size:.7rem}.quick-open{font-size:1.1rem}#quickSearch{display:block;width:100%;margin-top:10px}.quick-results{display:grid;max-height:50vh;overflow:auto;margin-top:14px}.quick-results a{padding:10px;border-bottom:1px solid var(--line)}.quick-results a:hover{background:var(--bg)}.stats-chart{overflow-x:auto;align-items:end}.stats-bar{min-width:14px}.stats-chart-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.stats-chart-head select{background:var(--bg);color:var(--ink);border:1px solid var(--line);padding:6px;border-radius:6px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.no-user-motion *, .no-user-motion *::before,.no-user-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.no-user-motion .reveal{opacity:1!important;transform:none!important}@media(max-width:800px){.topbar .settings-link{display:none}.quick-open{margin-left:auto}.topbar .brand{margin-right:0}}@media(max-width:600px){.ext-settings-grid{grid-template-columns:1fr}.calendar-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.reminder-edit-row{grid-template-columns:1fr 1fr}.reminder-edit-row b{grid-column:1/-1}.reminder-edit-row input[type=text]{grid-column:1/-1}.extension-panel{padding:18px}.ext-items>div .ext-button{font-size:.7rem}}
.stats-layout>*{min-width:0}.stats-chart-card,.stats-chart{min-width:0;max-width:100%}@media(max-width:900px){.stats-layout{grid-template-columns:minmax(0,1fr)}}
.conflict-diff{border-top:1px solid #d6bd90;padding:10px 0}.conflict-diff pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:180px;overflow:auto;background:#fffaf0;padding:10px;font-size:.7rem;color:#473b2b}.cloud-conflict details summary{cursor:pointer;font-weight:700}
.calendar-grid .calendar-day{padding:12px;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:8px;text-align:center;cursor:pointer}.calendar-grid .calendar-day:hover,.calendar-grid .calendar-day:focus-visible{border-color:var(--green-deep)}.calendar-detail{margin-top:16px;color:var(--ink);font-size:.8rem}.calendar-detail p{color:var(--muted)}.calendar-detail ul{padding-left:20px;line-height:1.8}
.goal-progress{margin-top:12px;font-size:.75rem;font-weight:700;color:var(--green-deep)}
