:root{--studio-bg:#101219;--studio-side:#151822;--studio-card:#1c202d;--studio-control:#252a3a;--studio-border:#353c50;--studio-text:#f2f4fa;--studio-muted:#aeb8cc;--studio-accent:#ff8190;--studio-primary:#bd263e;--studio-radius:16px;--studio-gutter:clamp(20px,4vw,50px)}body:not(.high-contrast){--surface:var(--studio-card);--surface-low:var(--studio-side);--line:var(--studio-border);--muted:var(--studio-muted);--red:var(--studio-primary);color:var(--studio-text);background:var(--studio-bg)}body:not(.high-contrast) .shell,body:not(.high-contrast) main{background:var(--studio-bg);color:var(--studio-text)}.shell>.app-topbar{position:sticky;top:0;z-index:20;height:auto;min-height:68px;padding:10px var(--studio-gutter)}body:not(.high-contrast) .app-topbar{background:#151822f5;color:var(--studio-text);border-color:var(--studio-border);backdrop-filter:blur(12px)}#breadcrumb{flex:1;min-width:0;font-size:15px;font-weight:700;color:inherit;overflow-wrap:anywhere}.app-topbar .topbar-actions{display:flex;align-items:center;flex:0 0 auto;gap:8px}.app-topbar button{display:grid;place-items:center;min-width:44px;min-height:44px;padding:5px;line-height:1}.app-nav svg,.app-topbar svg,.mobile-menu-links svg{width:21px;height:21px;flex-shrink:0}body:not(.high-contrast) .app-topbar button{border-color:var(--studio-border);background:var(--studio-control);color:var(--studio-text)}.app-topbar #today{color:var(--muted);margin-right:8px}main{width:100%;max-width:1320px;padding-inline:var(--studio-gutter)}.app-sidebar{display:flex;gap:0;padding:28px 16px;overflow-y:auto}body:not(.high-contrast) .app-sidebar{background:var(--studio-side);border-color:var(--studio-border)}.app-sidebar .brand{display:inline-flex;align-items:center;gap:10px;padding:0 8px;font-weight:800;letter-spacing:-.04em;color:var(--studio-text)}.app-sidebar .brandmark{display:grid;place-items:center;border-radius:12px;min-width:34px;height:34px;background:var(--studio-primary)}.app-sidebar .sidebar-caption{margin:29px 10px 0;color:var(--studio-muted);font-size:9px}.app-nav{gap:5px;margin:12px 0 25px}.app-nav button{min-height:46px;padding:8px 11px;gap:10px;border-radius:11px}.app-nav button span{font-size:14px;line-height:1.25}body:not(.high-contrast) .app-nav button{color:var(--studio-muted)}body:not(.high-contrast) .app-nav button.active,body:not(.high-contrast) .app-nav button:hover{background:var(--studio-control);color:var(--studio-text)}body:not(.high-contrast) .app-nav button.active svg{color:var(--studio-accent)}#mobile-more{display:none}#mobile-navigation{width:min(100% - 24px,440px);padding:18px}.mobile-menu-links{display:grid;gap:8px;margin-top:12px}.mobile-menu-links button{display:flex;align-items:center;gap:12px;min-height:48px;text-align:left;padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:var(--studio-control);color:var(--studio-text)}.mobile-menu-links button.active{border-color:var(--studio-accent)}.page-heading{align-items:end;margin:0 0 24px;gap:16px}.page-heading h1{font-size:clamp(28px,4vw,46px);line-height:1.09;letter-spacing:-.035em;margin:7px 0 10px;overflow-wrap:anywhere}.page-heading p{margin:0;max-width:58ch}main :is(h2,h3){letter-spacing:-.02em;overflow-wrap:anywhere}main .section-heading{gap:12px}body:not(.high-contrast) :is(main,dialog) :is(.panel,.stat,.workout-card,.health-card,.exercise-group,.plan-card,.personal-workout-card,.personal-professional,.personal-intro,.saved-routine,.red-flags,.access-panel,.care-note,.history-entry,.personal-students article){border-color:var(--studio-border);background:var(--studio-card);border-radius:var(--studio-radius);color:var(--studio-text)}body:not(.high-contrast) :is(main,dialog,#auth-root,.fitcore-account-bar) :is(input,textarea,select):not([type=checkbox],[type=radio],[type=range]){border-color:var(--studio-border);background:var(--studio-side);color:var(--studio-text);border-radius:11px}body:not(.high-contrast) :is(main,dialog,#auth-root) :is(input,textarea)::placeholder{color:#9aa7be}body:not(.high-contrast) :is(main,dialog) :is(.tag,.routine-badge){border-color:var(--studio-border);background:var(--studio-control);color:var(--studio-muted)}:is(.primary,.secondary,.small,.danger){min-height:44px;border-radius:11px;text-align:center}body:not(.high-contrast) :is(.primary,.primary.lime){background:var(--studio-primary);color:#fff;border:1px solid transparent;box-shadow:none}body:not(.high-contrast) .primary:not(:disabled):hover{background:#a41f34}body:not(.high-contrast) :is(.secondary,.small){background:var(--studio-control);color:var(--studio-text);border:1px solid var(--studio-border)}body:not(.high-contrast) :is(.secondary,.small):not(:disabled):hover{background:#343b52}body:not(.high-contrast) .danger{background:0 0;color:var(--studio-accent);border:1px solid #694052}body:not(.high-contrast) .danger:not(:disabled):hover{background:#382234}body:not(.high-contrast) :is(button,a,summary,input,select,textarea):focus-visible{outline:2px solid var(--studio-accent);outline-offset:3px}body:not(.high-contrast) :is(.text-link,.sources a,.view-hint a){color:var(--studio-accent)}body:not(.high-contrast) .fitcore-account-bar{background:var(--studio-side);border-color:var(--studio-border);padding-inline:var(--studio-gutter)}body:not(.high-contrast) dialog{background:var(--studio-card);color:var(--studio-text);border:1px solid var(--studio-border);border-radius:var(--studio-radius)}body:not(.high-contrast) dialog::backdrop{background:#080a12bd}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:16px}.dashboard-hero{display:grid;align-items:end;min-height:284px;padding:clamp(20px,3vw,34px);border:1px solid var(--studio-border);border-radius:var(--studio-radius);background:linear-gradient(90deg,#121522 11%,#151928eb 43%,#15192840 100%),url('media/bench.jpg') center right/cover;color:var(--studio-text)}.dashboard-hero h2{font-size:clamp(24px,3vw,37px);max-width:22ch;margin:10px 0 0;line-height:1.12}.dashboard-hero p{color:#d7deed;margin:8px 0 18px}.dashboard-week.panel{min-width:0;margin:0}.dashboard-week .section-heading{margin:0 0 14px}.dashboard-week h2{margin:5px 0 0}.dashboard-days,.dashboard-metrics{display:grid;gap:5px;grid-template-columns:repeat(7,minmax(0,1fr))}.dashboard-day{display:grid;place-items:center;min-width:0;gap:5px;border-radius:10px;padding:8px 0;background:var(--studio-side)}.dashboard-day span{color:var(--studio-muted);font-size:.72rem}.dashboard-day i{width:5px;height:5px;border-radius:50%;background:0 0}.dashboard-day.trained i{background:var(--studio-accent)}.dashboard-day.current{box-shadow:inset 0 0 0 1px var(--studio-accent)}.dashboard-metrics{grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);margin:16px 0 0;padding-top:14px}.dashboard-metrics dt{color:var(--muted);font-size:.84rem}.dashboard-metrics dd{margin:3px 0 0;font-size:1.65rem;font-weight:750}.dashboard-metrics dd small{font-size:.9rem}.dashboard-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0 30px}.dashboard-shortcut.panel{display:grid;align-content:start;gap:7px;min-width:0;text-align:left;padding:17px;margin:0}.dashboard-shortcut strong{font-size:1.12rem}.dashboard-shortcut span:last-child{color:var(--muted)}.dashboard-shortcut:hover{border-color:var(--studio-accent)!important}.routine-card-actions,.training-resume{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}.training-resume h2{margin:5px 0}.routine-search{max-width:420px;margin-bottom:16px}.saved-routine-wrap{border:1px solid var(--line);border-radius:var(--studio-radius);background:var(--surface)}.saved-routine-wrap .saved-routine{padding:16px;border:none;margin:0}.saved-routine-wrap .saved-routine summary{min-height:36px}.routine-card-actions{justify-content:flex-end;border-top:1px solid var(--line);padding:9px 12px}.routine-card-actions button{min-height:44px}body:not(.high-contrast) #auth-root,body:not(.high-contrast) .auth-form-panel{background:var(--studio-bg)}body:not(.high-contrast) .auth-brand-panel{background:linear-gradient(145deg,#141827f0,#2a1b2ae0),url('media/bench.jpg') center/cover;border-right:1px solid var(--studio-border)}body:not(.high-contrast) .auth-card-inner{background:var(--studio-card);border:1px solid var(--studio-border);border-radius:22px;padding:clamp(18px,3vw,32px);max-width:470px}body:not(.high-contrast) :is(.auth-card-inner,.auth-brand-panel) .label{color:var(--studio-accent)}body:not(.high-contrast) .auth-card-inner h2{color:var(--studio-text)}@media (max-width:1000px){.dashboard-grid{grid-template-columns:minmax(0,1fr)}.dashboard-hero{min-height:234px}}@media (max-width:700px){:root{--studio-gutter:clamp(14px,4vw,22px)}.app-sidebar{inset:auto 0 0;display:block;height:auto;padding:5px 6px max(5px,env(safe-area-inset-bottom));overflow:visible}.app-sidebar .aside-bottom,.app-sidebar .brand,.app-sidebar .sidebar-caption{display:none}.app-sidebar .app-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px;height:auto;margin:0;padding:0}.student-profile .app-sidebar .app-nav{grid-template-columns:repeat(4,minmax(0,1fr))!important}.app-nav button{padding:5px 1px;min-height:58px;gap:4px;text-align:center}.app-nav button span{line-height:1.15}.app-nav .nav-mobile-extra,body:not(.student-profile) .app-nav .nav-health{display:none}body:not(.student-profile) #mobile-more{display:flex}.app-topbar .topbar-actions{gap:5px}.app-topbar #today{display:none}.shell>.app-topbar{min-height:60px;padding-block:6px}.page-heading{align-items:start;flex-direction:column}.page-heading>.primary{width:100%;justify-content:center}.dashboard-shortcuts{grid-template-columns:minmax(0,1fr)}.dashboard-shortcut.panel{padding:14px}#mobile-navigation{margin:auto auto max(12px,env(safe-area-inset-bottom))}.auth-brand-panel{border-right:0}}.exercise-load-chart{margin:0 0 18px;padding:12px;border-radius:12px;border:1px solid var(--line)}.exercise-load-chart figcaption{color:var(--muted);margin-bottom:8px}.exercise-load-bars{height:76px;display:flex;align-items:flex-end;gap:clamp(4px,1vw,12px);border-bottom:1px solid var(--line)}.exercise-load-bars i{flex:1;max-width:48px;border-radius:5px 5px 0 0;background:var(--studio-accent)}body:not(.high-contrast) .exercise-progress-table th{color:var(--studio-muted)}.exercise-progress-table th{font-weight:650}