.member-view #fitness{padding-top:64px;min-height:calc(100svh - 82px)}.fitness-toolbar{border-top:1px solid #c9c9c2;border-bottom:1px solid #c9c9c2;display:flex;align-items:center;gap:40px;padding:24px 0;margin-bottom:16px;flex-wrap:wrap}.fitness-toolbar label{font-size:11px;letter-spacing:.05em}.fitness-toolbar input{display:block;max-width:100%;margin-top:8px;padding:10px 12px;background:transparent;border:1px solid #aaa;color:#111;font:inherit;font-size:16px}.fitness-toolbar p{font-size:14px;margin-top:8px}.fit-login{font-size:12px;margin-left:auto;text-decoration:underline;text-underline-offset:5px}#fitnessStatus{font-size:12px;line-height:1.8;color:#666;min-height:24px;margin-bottom:32px}.fitness-layout{display:grid;grid-template-columns:200px minmax(0,1fr);gap:50px;align-items:start}#fitnessTabs{display:flex;flex-direction:column;gap:0;position:sticky;top:110px}#fitnessTabs button{background:transparent;border:0;border-bottom:1px solid #ccc;padding:18px 14px;text-align:left;color:#555;cursor:pointer;font:inherit;position:relative}#fitnessTabs button.active{background:#111;color:#fff}#fitnessTabs span{display:block;font-size:14px}#fitnessTabs small{display:block;font-size:9px;letter-spacing:.06em;line-height:1.6;margin-top:6px;color:#888}#fitnessTabs b{font-size:10px;display:block;margin-top:8px;font-weight:400}.fit-routine-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.fit-routine-heading h3{font-size:clamp(28px,3.5vw,42px);letter-spacing:-1px;line-height:1.2;margin-top:12px}.fit-routine-heading .eyebrow{font-size:10px;line-height:1.6}.fit-count{font-size:12px;white-space:nowrap;color:#777}.fit-progress{width:100%;height:4px;accent-color:#111;margin-bottom:30px;display:block}.fit-progress::-webkit-progress-bar{background:#d6d6cf}.fit-progress::-webkit-progress-value{background:#111}.fit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.fit-card{border:1px solid #d4d4cd;background:#fafaf8;min-width:0}.fit-image{display:block;position:relative;width:100%;padding:16px;border:0;border-bottom:1px solid #e2e2dc;background:#fff;cursor:zoom-in;overflow:hidden}.fit-image img{display:block;width:100%;height:220px;object-fit:contain;transition:transform .4s}.fit-image:hover img{transform:scale(1.025)}.fit-image span{display:block;text-align:right;font-size:9px;letter-spacing:.05em;color:#777;margin-top:8px}.fit-card-body{padding:24px}.fit-card-body .eyebrow{font-size:9px;color:#888}.fit-card h4{font-size:21px;line-height:1.35;letter-spacing:-.4px;margin:12px 0 8px;overflow-wrap:anywhere}.fit-card p{font-size:13px;color:#777;line-height:1.7}.fit-sets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:24px}.fit-set{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #ccc;font-size:12px;min-height:46px;cursor:pointer}.fit-set.checked{background:#111;color:#fff;border-color:#111}.fit-set:has(input:disabled){opacity:.55;cursor:default}.fit-set input{width:17px;height:17px;accent-color:#111;flex:0 0 17px}.fit-set input:focus-visible{outline:2px solid #888;outline-offset:3px}.fit-cardio-mark{font-size:72px;color:#ccc;letter-spacing:-5px;padding:32px;border-bottom:1px solid #ddd}.fit-rest{padding:64px 32px;border:1px solid #ccc;text-align:center}.fit-rest h3{font-size:30px;letter-spacing:-1px;margin:20px 0}.fit-rest p{color:#777;font-size:14px}dialog.fit-image-modal{padding:52px 20px 20px;max-width:900px;width:calc(100% - 32px);max-height:90svh;overflow:auto;background:#fff;border:0}dialog.fit-image-modal[open]{display:block}.fit-image-modal img{display:block;width:100%;max-height:70svh;object-fit:contain}.fit-close{position:absolute;right:10px;top:8px;width:40px;height:40px;border:1px solid #ddd;background:#fff;color:#111;font-size:25px;cursor:pointer}.fit-image-modal::backdrop{background:#000b}@media(max-width:1100px){header nav{gap:10px;font-size:11px}.account-nav{gap:12px}.fitness-layout{grid-template-columns:170px minmax(0,1fr);gap:30px}.fit-image img{height:190px}.fit-card-body{padding:20px}}@media(max-width:800px){.fitness-layout{grid-template-columns:minmax(0,1fr);gap:30px}#fitnessTabs{position:static;display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}#fitnessTabs button{padding:14px 10px}#fitnessTabs small{font-size:8px}.fitness-toolbar{gap:24px}.fit-login{margin-left:0}}@media(max-width:600px){.member-view #fitness{padding:36px 20px 60px}.fit-grid{grid-template-columns:minmax(0,1fr)}#fitnessTabs{grid-template-columns:repeat(2,minmax(0,1fr))}.fit-image img{height:230px}.fitness-toolbar{align-items:start;gap:20px}.fitness-toolbar>div{flex:1;min-width:120px}.fit-login{width:100%}.fit-routine-heading{align-items:start;gap:12px}.fit-count{padding-top:4px}.fit-routine-heading h3{font-size:30px}header .brand-group{flex-direction:column;align-items:flex-start;gap:2px}header .owner-line{display:none}.account-nav{gap:10px;font-size:10px}.account-nav #accountLink{padding:9px}.account-nav .leaderboard-link{width:27px;height:27px}.fit-card h4{font-size:22px}}@media(max-width:360px){header .brand span{font-size:7px;letter-spacing:.4px}header .brand{font-size:22px}.account-nav{gap:7px;font-size:9px}.fit-image img{height:190px}}@media(prefers-reduced-motion:reduce){.fit-image img{transition:none}}
/* Dark fitness workspace */
#fitness.fitness-dark{background:#0b0b0b;color:#f1f1ec}#fitness .section-heading h2{font-size:clamp(48px,6vw,80px)}#fitness .back-academy{color:#aaa}#fitness .fitness-toolbar{border-color:#303030;align-items:center;gap:36px;padding:24px;background:#121212}#fitness .fitness-toolbar p{color:#ddd}#fitnessStatus{color:#999}#fitness .fit-login{color:#ddd}#fitnessTabs button{color:#aaa;border-color:#303030}#fitnessTabs button.active{background:#efefe9;color:#111}#fitnessTabs button.active small{color:#555}#fitness .fit-card{background:#151515;border-color:#333}#fitness .fit-image{background:#f7f7f4;border-color:#333}#fitness .fit-image img{mix-blend-mode:multiply}#fitness .fit-card p{color:#aaa}#fitness .fit-set{border-color:#444;color:#ccc}#fitness .fit-set.checked{background:#efefe9;color:#111;border-color:#efefe9}#fitness .fit-set:has(input:disabled){opacity:.6}#fitness .fit-progress{accent-color:#eee}#fitness .fit-progress::-webkit-progress-bar{background:#303030}#fitness .fit-progress::-webkit-progress-value{background:#eee}#fitness .fit-rest{border-color:#333}#fitness .fit-cardio-mark{color:#666;border-color:#333}#fitness .fit-count{color:#aaa}.training-calendar{width:350px;max-width:100%;min-width:0}.calendar-caption{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.calendar-caption button{font-size:11px;border:0;background:transparent;color:#bbb;cursor:pointer;padding:5px 0}.calendar-controls{display:flex;align-items:center;gap:8px}.calendar-controls>button{width:38px;height:42px;flex:0 0 38px;background:#191919;border:1px solid #444;color:#eee;font-size:24px;cursor:pointer}.calendar-controls label{flex:1;min-width:0}#fitness .calendar-controls input{margin:0;width:100%;box-sizing:border-box;background:#191919;color:#eee;border-color:#444;color-scheme:dark;height:42px}.fitness-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-top:12px}.fitness-week button{padding:8px 2px;min-height:48px;border:1px solid transparent;background:transparent;color:#999;cursor:pointer}.fitness-week small{display:block;font-size:8px;text-transform:uppercase}.fitness-week b{display:block;font-weight:500;font-size:14px;margin-top:5px}.fitness-week button[aria-pressed=true]{background:#eee;color:#111;border-color:#eee}.fitness-week button:hover{border-color:#777}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.weight-panel{background:#111;border:1px solid #333;margin:40px 0 64px;padding:32px}.weight-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px}.weight-heading h3{font-size:clamp(23px,3vw,34px);letter-spacing:-1px;line-height:1.3;margin-top:12px}.weight-unit-label{font-size:10px;color:#999}.weight-panel select,.weight-panel input{color-scheme:dark;background:#1a1a1a;border:1px solid #444;color:#eee;border-radius:0;font:inherit;font-size:16px;padding:12px;min-height:44px;max-width:100%;box-sizing:border-box}.weight-unit-label select{display:block;margin-top:8px}.weight-layout{display:grid;grid-template-columns:minmax(0,260px) minmax(0,1fr);gap:40px}.weight-panel form{min-width:0}.weight-panel form label{display:block;font-size:12px;line-height:1.5;margin-bottom:20px;color:#aaa}.weight-panel input{display:block;width:100%;margin-top:8px}.weight-value-field{display:flex;gap:8px;margin-top:8px}.weight-value-field input{min-width:0;margin:0;flex:1}.weight-value-field select{width:70px;flex:0 0 70px}.weight-panel .button{width:100%;justify-content:center;background:#eee;color:#111;border:1px solid #eee;cursor:pointer;font-size:13px;padding:14px}.weight-panel .button:disabled{opacity:.45;cursor:default}.weight-panel .small{font-size:11px;line-height:1.8;color:#888;margin-top:16px}#weightStatus{font-size:12px;color:#bbb;line-height:1.8;margin-top:16px}#weightStatus a{text-decoration:underline;text-underline-offset:3px}.weight-visual{min-width:0}.weight-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:24px}.weight-stats span{font-size:9px;letter-spacing:.08em;color:#888;display:block}.weight-stats b{display:block;font-size:clamp(18px,2.5vw,28px);font-weight:400;margin-top:10px;overflow-wrap:anywhere}.weight-empty{min-height:210px;display:flex;align-items:center;justify-content:center;flex-direction:column;border:1px dashed #333;padding:20px;text-align:center}.weight-empty svg{width:130px;height:65px;stroke:#666;fill:none;stroke-width:1}.weight-empty p{font-size:14px;margin:12px 0}.weight-empty small{color:#777;font-size:12px;line-height:1.7}#weightChart>svg{display:block;width:100%;height:auto;min-height:180px}.weight-history{border-top:1px solid #333;margin-top:30px;padding-top:20px}.weight-history summary{cursor:pointer;font-size:13px;min-height:30px}.weight-history summary span{float:right;color:#888;font-size:11px}#weightHistory{font-size:13px;color:#aaa;overflow:auto;margin-top:16px}#weightHistory table{border-collapse:collapse;width:100%;text-align:left}#weightHistory td,#weightHistory th{padding:14px 8px;border-bottom:1px solid #333;font-weight:400}#weightHistory th{font-size:10px;text-transform:uppercase;color:#777}#weightHistory button{background:transparent;border:1px solid #555;padding:8px 16px;color:#eee;cursor:pointer}#fitness button:focus-visible,#fitness input:focus-visible,#fitness select:focus-visible{outline:2px solid #aaa;outline-offset:3px}@media(max-width:850px){.weight-layout{grid-template-columns:minmax(0,1fr);gap:32px}.weight-panel form{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.weight-panel form .button,.weight-panel form p{grid-column:1/-1}.training-calendar{width:100%}}@media(max-width:600px){#fitness .fitness-toolbar{padding:18px;gap:24px}.weight-panel{padding:22px 18px;margin:30px 0 44px}.weight-heading{align-items:start}.weight-heading h3{font-size:24px}.weight-panel form{display:block}.weight-stats{gap:10px}.weight-stats span{font-size:8px}.weight-stats b{font-size:19px}.calendar-controls>button{width:36px;flex-basis:36px}.weight-unit-label{min-width:65px}#weightChart>svg{min-height:140px}.fitness-week button{min-height:48px}.weight-history summary span{float:none;margin-left:12px}}
/* One aligned icon box at every breakpoint. */
header .account-nav{align-items:center}header .account-nav .leaderboard-link{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:36px;height:36px;min-width:36px;flex:0 0 36px;padding:0;margin:0;line-height:1;align-self:center;border-radius:9px;background:#e3e3dc;border:1px solid #70706b;color:#111;vertical-align:middle}header .account-nav .leaderboard-link svg{display:block;width:19px;height:19px;margin:0;flex:0 0 19px;transform:none}
#fitness.fitness-dark{background:#0d0e0e;color:#dedfd9}#fitness .fit-card{position:relative;isolation:isolate;background:#171818;border:1px solid transparent;border-radius:14px;overflow:hidden;box-shadow:0 8px 24px #0002}#fitness .fit-card:before{content:'';position:absolute;inset:0;z-index:2;border-radius:inherit;padding:1px;pointer-events:none;background:linear-gradient(110deg,#373939 15%,#888b8544 35%,#969a9380 48%,#373939 65%);background-size:300% 100%;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:fitness-frame 10s ease-in-out infinite}#fitness .fit-card:nth-child(even):before{animation-delay:-5s}#fitness .fit-image{background:radial-gradient(ellipse at center,#282a29 0%,#171818 74%);border-bottom:1px solid #303232;padding:24px 16px 14px;border-radius:13px 13px 0 0}#fitness .fit-image img{mix-blend-mode:normal;filter:drop-shadow(0 5px 5px #0003)}#fitness .fit-image span{color:#8b8e89}#fitness .fit-card-body{padding:26px}#fitness .fit-card h4{color:#e0e2dc;font-weight:400}#fitness .fit-card p{color:#9c9f99}#fitness .fit-set{border-radius:7px;background:#1e2020;border-color:#3d403d}#fitness .fit-set.checked{background:#d7d9d1;color:#151615;border-color:#d7d9d1}#fitness .fitness-toolbar,.weight-panel{background:#131515;border-color:#303330;border-radius:14px}#fitnessTabs button{border-radius:7px}#fitnessTabs button.active{background:#d7d9d1}#fitness .fit-rest{border-radius:14px;background:#151717}#fitness .fit-progress::-webkit-progress-value{background:#c4c8be}.calendar-controls>button,.calendar-controls input,.fitness-week button{border-radius:7px}#fitness .calendar-controls input{border-radius:7px}.weight-panel input,.weight-panel select,.weight-panel .button{border-radius:7px}.weight-panel .button{background:#d7d9d1;border-color:#d7d9d1}.weight-empty{border-radius:10px}dialog.fit-image-modal{background:#181a19;color:#ddd;border:1px solid #484b46;border-radius:14px}.fit-close{background:#242725;color:#eee;border-color:#4a4c48;border-radius:8px}@keyframes fitness-frame{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}@media(max-width:700px){header .account-nav .leaderboard-link{width:32px;height:32px;min-width:32px;flex-basis:32px}header .account-nav .leaderboard-link svg{width:18px;height:18px;flex-basis:18px}#fitness .fit-card-body{padding:22px}}@media(prefers-reduced-motion:reduce){#fitness .fit-card:before{animation:none}}

/* Constrain native date fields, including Safari's intrinsic date width. */
#fitness .calendar-controls{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;gap:8px;width:100%;min-width:0}
#fitness .calendar-controls label{display:block;min-width:0;width:100%;overflow:hidden}
#fitness input[type=date]{display:block;min-width:0;max-width:100%;width:100%;box-sizing:border-box;font-size:16px;overflow:hidden}
#fitness input[type=date]::-webkit-date-and-time-value{text-align:left;min-width:0}
#fitness .calendar-controls>button{width:36px;min-width:0;padding:0;margin:0}
#fitness .training-calendar{flex:0 1 350px;min-width:0}
#fitnessAdmin h3{font-size:28px;margin:12px 0}.admin-member-label{display:block;font-size:12px;margin:24px 0}#fitnessAdminMember{display:block;width:100%;margin-top:10px}#fitnessAdminStatus{font-size:13px;line-height:1.6;margin:16px 0}.admin-records{overflow:auto;margin-top:20px}.admin-records table{width:100%;border-collapse:collapse;font-size:13px}.admin-records th,.admin-records td{padding:14px 12px;border-bottom:1px solid #343634;text-align:left;vertical-align:top}.admin-records th{color:#999;font-weight:400}.admin-records ul{padding-left:16px;line-height:1.8}.admin-records h4{margin-bottom:12px}#fitnessAdmin button{background:#222;color:#ddd;border:1px solid #444;border-radius:7px;padding:12px 18px;margin-top:16px}
@media(max-width:850px){#fitness .fitness-toolbar{display:grid;grid-template-columns:minmax(0,1fr);gap:22px}#fitness .fitness-toolbar>div{width:100%;min-width:0;max-width:100%;flex:none}#fitness .training-calendar{width:100%;max-width:100%}#fitness .fit-login{margin:0;justify-self:start}#fitness .weight-panel form{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}#fitness .weight-panel form label{min-width:0}}
@media(max-width:600px){#fitness .fitness-toolbar{padding:16px}#fitness .weight-panel form{display:block}#fitness .calendar-controls{gap:6px}#fitness .calendar-controls input{padding:8px 6px}#fitness .fitness-week{gap:2px}#fitness .fitness-week button{min-width:0}.admin-records th,.admin-records td{padding:12px 6px}}

/* Date frame: give the native picker a full row, with roomy controls. */
#fitness .training-calendar{padding:0;overflow:visible;box-sizing:border-box}
#fitness .calendar-controls{grid-template-columns:44px minmax(0,1fr) 44px;grid-template-rows:auto;align-items:stretch;gap:10px;box-sizing:border-box}
#fitness .calendar-controls label{overflow:visible;margin:0;padding:0;line-height:normal;box-sizing:border-box}
#fitness .calendar-controls input{height:48px;min-height:48px;line-height:normal;padding:10px 12px;border:1px solid #454844;background:#1b1d1c;border-radius:10px;box-shadow:none;appearance:none;-webkit-appearance:none;overflow:visible}
#fitness .calendar-controls>button{width:44px;height:48px;min-height:48px;border-radius:10px;font-size:22px;display:grid;place-items:center;line-height:1;border-color:#454844}
#fitness .calendar-controls>button:disabled{opacity:.25;cursor:default}
#fitness .calendar-month{font-size:11px;letter-spacing:.04em;color:#a9ada5;margin:16px 0 10px}
#fitness .fitness-week{margin-top:0;gap:5px;padding:2px;box-sizing:border-box}
#fitness .fitness-week button{min-height:54px;border-radius:9px;padding:9px 0;box-sizing:border-box}
#fitness .fitness-toolbar{overflow:visible;box-sizing:border-box}
@media(max-width:600px){#fitness .calendar-controls{grid-template-columns:44px minmax(0,1fr) 44px;grid-template-rows:48px 44px;gap:10px}#fitness .calendar-controls label{grid-column:1/-1;grid-row:1;width:100%}#fitness .calendar-controls #fitnessPrev{grid-column:1;grid-row:2;height:44px;min-height:44px}#fitness .calendar-controls #fitnessNext{grid-column:3;grid-row:2;height:44px;min-height:44px}#fitness .calendar-controls:after{content:'Choose a day';grid-column:2;grid-row:2;align-self:center;justify-self:center;color:#9a9e96;font-size:11px}#fitness .calendar-controls input{width:100%;max-width:100%;min-width:0;padding:11px 14px;font-size:16px}#fitness .fitness-week{gap:3px}#fitness .fitness-toolbar{padding:18px 14px}#fitness .calendar-caption{gap:12px}#fitness .calendar-month{margin-top:14px}}

/* Full-width check-in date frame, isolated from neighboring form fields. */
#fitness .checkin-calendar{display:block;width:100%;max-width:100%;min-width:0;box-sizing:border-box;margin-bottom:24px;grid-column:1/-1}
#fitness .checkin-calendar .calendar-caption{margin-bottom:10px;gap:16px}
#fitness .checkin-calendar .calendar-caption label{margin:0;font-size:12px;color:#aaa}
#fitness .checkin-date-frame{display:block;width:100%;min-width:0;max-width:100%;box-sizing:border-box;border:1px solid #454844;border-radius:10px;background:#1b1d1c;padding:0;overflow:visible}
#fitness #weightDate{display:block;width:100%;min-width:0;max-width:100%;height:48px;min-height:48px;box-sizing:border-box;margin:0;padding:11px 14px;border:0;border-radius:10px;background:transparent;color:#eee;font:inherit;font-size:16px;line-height:normal;appearance:none;-webkit-appearance:none;color-scheme:dark}
#fitness #weightDate::-webkit-date-and-time-value{min-width:0;text-align:left;line-height:26px}
#fitness .checkin-date-navigation{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:10px;margin-top:10px}
#fitness .checkin-date-navigation button{display:grid;place-items:center;width:44px;height:44px;padding:0;margin:0;border:1px solid #454844;border-radius:10px;background:#191b1a;color:#eee;font:inherit;font-size:22px;line-height:1;cursor:pointer}
#fitness .checkin-date-navigation span{text-align:center;font-size:11px;color:#9a9e96}
#fitness .checkin-calendar button:disabled,#fitness .fitness-week button:disabled{opacity:.25;cursor:default}
#fitness .weight-layout,#fitness .weight-layout>*{min-width:0}
@media(max-width:600px){#fitness .weight-panel{padding:22px 14px}#fitness .weight-heading{flex-wrap:wrap;gap:16px}#fitness .checkin-calendar{margin-bottom:24px}}

.fit-sets .fit-complete{border-color:#777;font-weight:500}.fit-sets .fit-complete.checked{border-color:#ddd}.fit-sets .fit-set{min-width:0}.fit-sets .fit-set>span{white-space:nowrap}.fit-sets .fit-set input{flex-shrink:0}@media(max-width:400px){.fit-sets .fit-set{padding:10px 8px;gap:7px;font-size:11px}}
/* Responsive training planner */
#fitness .fitness-toolbar{border:1px solid #303030;border-radius:16px;gap:24px}#fitness .fitness-layout{gap:28px}#fitnessTabs{gap:8px}#fitnessTabs button{border:1px solid #303030;border-radius:10px;min-height:76px;padding:14px 16px;transition:background .15s}#fitnessTabs span{font-weight:600}#fitnessTabs small{letter-spacing:.02em;font-size:11px}#fitnessTabs button:focus-visible,#fitness button:focus-visible{outline:2px solid #eee;outline-offset:3px}#fitness .fit-card{border-radius:14px;overflow:hidden}#fitness .fit-card-body{padding:24px}#fitness .fit-set{border-radius:8px;min-height:48px;justify-content:center}#fitness .fit-complete{grid-column:1/-1}#fitness .fit-routine-heading{flex-wrap:wrap;align-items:center}#fitness .fit-progress{height:6px;border-radius:6px;overflow:hidden}#fitnessWeek button{position:relative;min-height:68px;min-width:0;padding:8px 2px}.fit-day-check{display:block;height:14px;font-size:12px;line-height:14px;color:inherit}#fitnessAdmin{margin-top:64px;padding-top:32px;border-top:1px solid #333;clear:both}#fitness .fit-cardio-mark{font-size:48px;padding:24px}#fitnessContent,#fitnessTabs{min-width:0}@media(max-width:800px){#fitnessTabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#fitnessTabs button{min-height:78px}#fitness .fitness-toolbar{padding:16px}#fitness .training-calendar{width:100%}#fitness .fitness-layout{gap:24px}}@media(min-width:1100px){#fitness .fitness-layout{grid-template-columns:220px minmax(0,1fr)}#fitness .fit-grid{gap:20px}}@media(prefers-reduced-motion:reduce){#fitnessTabs button{transition:none}}

#weightChart[hidden]{display:none!important}.weight-chart-toggle{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:48px;margin:20px 0;padding:14px 20px;border:1px solid #444;border-radius:10px;background:#171717;color:#eee;font:inherit;font-size:13px;cursor:pointer}.weight-chart-toggle:hover{background:#252525}.weight-chart-toggle:focus-visible{outline:2px solid #eee;outline-offset:3px}#weightWeekLabel{font-size:13px;line-height:1.6;margin:0}#weightChart{width:100%;min-width:0;overflow:auto}#weightChart svg{display:block;width:100%;min-width:320px;height:auto}#weightForm{align-items:end;gap:16px}#weightForm>*{min-width:0}#saveWeight{min-height:48px;white-space:normal}#weightStats>div{min-width:0}#weightHistory{overflow-x:auto}@media(max-width:600px){#weightForm{display:grid;grid-template-columns:minmax(0,1fr)}#weightForm input,#weightForm select,#saveWeight{width:100%;box-sizing:border-box}#weightStats{gap:10px}#weightStats b{font-size:clamp(17px,5vw,24px)}}

/* Compact weekly period and balanced workout controls */
#fitness .weight-heading .eyebrow{display:block;letter-spacing:.03em;word-spacing:normal;white-space:nowrap;font-size:11px;line-height:1.5}
#fitness .weight-layout{grid-template-columns:minmax(290px,340px) minmax(0,1fr);gap:28px;align-items:start}
#fitness #weightForm{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-content:start}
#fitness #weightForm label,#fitness #weightForm .checkin-calendar{margin:0}
#fitness #weightForm .calendar-caption{margin:0 0 8px}
#fitness .checkin-date-navigation{display:none}
#fitness .checkin-date-frame{padding:12px;background:#191919}
#fitness #weightWeekLabel{margin:0;font-size:clamp(11px,2.8vw,13px);line-height:1.5;letter-spacing:0;word-spacing:normal;white-space:nowrap}
#fitness #weightForm .small,#fitness #weightStatus{margin:0;line-height:1.6}
#fitness #weightStatus:empty{display:none}
#fitness .weight-value-field{display:grid;grid-template-columns:minmax(0,1fr) 76px;gap:8px;margin-top:8px}
#fitness .weight-value-field input,#fitness .weight-value-field select{width:100%;min-width:0;margin:0;height:48px}
#fitness .fit-sets{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
#fitness .fit-complete{grid-column:auto}
#fitness .fit-cardio .fit-complete{grid-column:1/-1}
#fitness .fit-set{padding:12px 8px;gap:8px;white-space:nowrap;transition:background .18s,border-color .18s,box-shadow .18s}
#fitness .fit-set.checked{box-shadow:inset 0 0 0 1px #fff4}
#fitness .fit-card{transition:border-color .2s,box-shadow .2s}
#fitnessTabs span,#fitnessTabs b{white-space:nowrap}
#fitnessTabs small{letter-spacing:0;word-spacing:normal}
@media(hover:hover){#fitness .fit-card:hover{border-color:#626262;box-shadow:0 8px 24px #0003}#fitness .fit-set:not(:has(input:disabled)):hover{border-color:#aaa}}
@media(max-width:900px){#fitness .weight-layout{grid-template-columns:minmax(0,1fr);gap:24px}}
@media(max-width:380px){#fitness .fit-card-body{padding:16px}#fitness .fit-set{font-size:11px;gap:6px}#fitness .weight-heading h3{font-size:22px}}
@media(prefers-reduced-motion:reduce){#fitness .fit-card,#fitness .fit-set{transition:none}}
