:root{--jf-ink-950:#1f1e1b;--jf-ink-800:#3b3832;--jf-ink-600:#686157;--jf-paper-50:#fff9f0;--jf-paper-100:#f4f0e8;--jf-paper-200:#e8e0d3;--jf-terracotta-700:#8d4935;--jf-terracotta-600:#a94f36;--jf-terracotta-400:#d98a68;--jf-clay-200:#e7c8b8;--jf-olive-700:#4c5c42;--jf-olive-600:#5f6f52;--jf-olive-200:#d8dfcf;--jf-sun-500:#d6a63e;--jf-sun-300:#e8c96a;--jf-sky-200:#d9e4e2;--jf-bg:var(--jf-paper-100);--jf-surface:var(--jf-paper-50);--jf-text:var(--jf-ink-950);--jf-text-muted:var(--jf-ink-600);--jf-border:var(--jf-paper-200);--jf-action:var(--jf-terracotta-600);--jf-action-hover:var(--jf-terracotta-700);--jf-positive:var(--jf-olive-600);--jf-caution:var(--jf-sun-500);--jf-danger:#a4473c;--jf-info:#486a72;--jf-font-display:"Newsreader", "Iowan Old Style", Georgia, serif;--jf-font-ui:"Manrope", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--jf-font-data:"IBM Plex Mono", "SFMono-Regular", Consolas, monospace;--jf-weight-regular:400;--jf-weight-medium:600;--jf-weight-bold:750;--jf-type-hero:clamp(3rem, 7vw, 7.25rem);--jf-type-h1:clamp(2.25rem, 4vw, 4.5rem);--jf-type-h2:clamp(1.6rem, 2.6vw, 2.6rem);--jf-type-body:1rem;--jf-type-small:.8125rem;--jf-radius-sm:10px;--jf-radius-md:18px;--jf-radius-lg:28px;--jf-radius-pill:999px;--jf-space-1:4px;--jf-space-2:8px;--jf-space-3:12px;--jf-space-4:16px;--jf-space-5:24px;--jf-space-6:32px;--jf-space-7:48px;--jf-space-8:72px;--jf-shadow-soft:0 18px 60px #1f1e1b14;--jf-ease-out:cubic-bezier(.16, 1, .3, 1);--jf-duration-fast:.16s;--jf-duration-base:.28s;--jf-duration-slow:.64s}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
:root{--ink:var(--jf-text);--muted:var(--jf-text-muted);--paper:var(--jf-bg);--card:var(--jf-surface);--line:var(--jf-border);--lime:var(--jf-sun-300);--green:var(--jf-action);--deep:var(--jf-ink-950);--orange:var(--jf-terracotta-400);--shadow:var(--jf-shadow-soft)}*{box-sizing:border-box}html{background:var(--paper)}body{color:var(--ink);background:var(--paper);font-family:var(--jf-font-ui);margin:0}h1,h2,h3{font-family:var(--jf-font-display);font-weight:600}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.app-frame{grid-template-columns:260px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{height:100vh;color:var(--jf-paper-50);background:var(--deep);flex-direction:column;padding:28px 22px;display:flex;position:sticky;top:0}.brand{gap:10px;margin-bottom:42px;display:grid}.brand-logo{background:var(--jf-paper-50);border-radius:var(--jf-radius-sm);width:min(188px,100%);height:auto;padding:8px 10px}.brand>small{color:var(--jf-clay-200);font-size:11px;line-height:1.35}.sidebar nav{gap:7px;display:grid}.sidebar nav a{color:#c9dbd2;border-radius:12px;align-items:center;gap:12px;padding:13px 14px;transition:all .18s;display:flex}.sidebar nav a:hover{color:#fff;background:#ffffff14;transform:translate(2px)}.profile-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:15px;grid-template-columns:38px minmax(0,1fr) 34px;align-items:center;gap:10px;margin-top:auto;padding:12px;display:grid}.profile-card strong,.profile-card small{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.profile-card strong{font-size:12px}.profile-card small{color:#9bb4a9;margin-top:3px;font-size:10px}.avatar,.large-avatar{color:var(--jf-paper-50);background:var(--jf-action);border-radius:50%;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.avatar{width:38px;height:38px}.large-avatar{width:76px;height:76px;font-size:28px}.icon-button{color:#bad0c6;background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.icon-button:hover{color:#fff;background:#ffffff17}.main-content{min-width:0;padding:46px clamp(24px,4vw,64px) 64px}.page-header{justify-content:space-between;align-items:flex-start;gap:30px;margin-bottom:34px;display:flex}.page-header h1{letter-spacing:-.055em;margin:4px 0 8px;font-size:clamp(34px,4.2vw,58px);line-height:.98}.page-header p{color:var(--muted);margin:0}.eyebrow{letter-spacing:.15em;margin:0;font-size:11px;font-weight:850;color:var(--green)!important}.date-pill,.secure-badge{border:1px solid var(--line);color:var(--green);background:#fff9;border-radius:999px;align-items:center;gap:8px;padding:10px 13px;font-size:12px;font-weight:700;display:inline-flex}.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px;display:grid}.metric-card{border:1px solid var(--line);background:var(--card);min-height:155px;box-shadow:var(--shadow);border-radius:21px;gap:16px;padding:22px;display:flex}.metric-card.accent{color:var(--jf-paper-50);border-color:var(--green);background:var(--green)}.metric-card.accent .metric-icon{color:var(--deep);background:var(--lime)}.metric-card.accent small,.metric-card.accent p{color:#bcd4c9}.metric-icon{width:42px;height:42px;color:var(--green);background:#edf4de;border-radius:13px;flex:none;justify-content:center;align-items:center;display:inline-flex}.metric-icon svg{width:20px}.metric-card small{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:750;display:block}.metric-card strong{letter-spacing:-.04em;margin:10px 0 7px;font-size:30px;line-height:1;display:block}.metric-card em{font-size:14px;font-style:normal;font-weight:700}.metric-card p{color:var(--muted);margin:0;font-size:11px;line-height:1.4}.dashboard-grid,.progress-grid,.account-grid{grid-template-columns:minmax(0,1.6fr) minmax(300px,.85fr);gap:18px;display:grid}.progress-grid,.account-grid{grid-template-columns:minmax(300px,.8fr) minmax(0,1.4fr)}.panel{border:1px solid var(--line);background:var(--card);box-shadow:var(--shadow);border-radius:22px;padding:26px}.panel-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:23px;display:flex}.panel h2{letter-spacing:-.025em;margin:5px 0 0;font-size:21px}.panel-heading a{color:var(--green);font-size:12px;font-weight:800}.plan-list{display:grid}.plan-row{border-top:1px solid var(--line);grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:15px;padding:19px 0;display:grid}.plan-row:first-child{border-top:0;padding-top:4px}.plan-number{color:var(--green);font-size:12px;font-weight:850}.plan-row strong{font-size:15px}.plan-row p{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin:4px 0 0;font-size:12px;overflow:hidden}.plan-meta{color:var(--green);background:#edf4de;border-radius:9px;padding:7px 10px;font-size:11px;font-weight:750}.timeline{gap:20px;display:grid}.timeline>div{grid-template-columns:10px minmax(0,1fr);gap:13px;display:grid}.timeline>div>span{background:var(--lime);border:2px solid var(--green);border-radius:50%;width:9px;height:9px;margin-top:5px;box-shadow:0 0 0 5px #eef4e6}.timeline strong{font-size:13px}.timeline p{color:var(--muted);margin:4px 0 0;font-size:11px}.empty-state{color:var(--muted);padding:22px 0;font-size:13px}.workout-grid{gap:18px;display:grid}.workout-card{padding:30px}.workout-title{gap:15px;margin-bottom:22px;display:flex}.workout-title h2{margin:2px 0 6px}.workout-title p{color:var(--muted);margin:0;font-size:13px}.exercise-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.exercise-list>div{border:1px solid var(--line);background:#fafaf5;border-radius:15px;grid-template-columns:30px minmax(0,1fr);gap:12px;padding:16px;display:grid}.exercise-list>div>span{width:29px;height:29px;color:var(--green);background:#eaf2d8;border-radius:9px;justify-content:center;align-items:center;font-size:11px;font-weight:850;display:inline-flex}.exercise-list strong,.exercise-list small{display:block}.exercise-list strong{font-size:13px}.exercise-list small{color:var(--green);margin-top:4px;font-size:10px;font-weight:700}.exercise-list p{color:var(--muted);margin:9px 0 0;font-size:11px;line-height:1.5}.complete-form{border-top:1px solid var(--line);align-items:flex-end;gap:12px;margin-top:20px;padding-top:20px;display:flex}.complete-form label,.stacked-form label{color:var(--ink);gap:7px;font-size:11px;font-weight:750;display:grid}.complete-form label>span{align-items:center;gap:6px;display:flex}.complete-form .grow{flex:1}input,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #cfd6cd;border-radius:11px;outline:none;padding:12px 13px;transition:all .15s}input:focus,textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #1f5d4517}textarea{resize:vertical}.primary-button{color:#fff;background:var(--green);border:0;border-radius:11px;justify-content:center;align-items:center;gap:8px;min-height:43px;padding:0 17px;font-size:12px;font-weight:800;display:inline-flex;box-shadow:0 9px 20px #1f5d4526}.primary-button:hover{background:var(--deep);transform:translateY(-1px)}.primary-button:disabled{opacity:.6;cursor:wait}.secondary-button{min-height:43px;color:var(--ink);border:1px solid var(--line);background:var(--card);border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:0 17px;font-size:12px;font-weight:800;display:inline-flex}.secondary-button:disabled{opacity:.4;cursor:not-allowed}.stacked-form{gap:16px;display:grid}.stacked-form .primary-button{justify-self:start}.stacked-form>small{color:var(--muted)}.form-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.measurement-table{display:grid}.table-head,.table-row{grid-template-columns:1.2fr repeat(3,1fr);align-items:center;gap:12px;display:grid}.table-head{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;padding:0 12px 11px;font-size:10px;font-weight:850}.table-row{border-top:1px solid var(--line);padding:15px 12px;font-size:12px}.table-row strong{color:var(--green)}.identity-card{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.identity-card h2{margin-top:15px}.identity-card p{color:var(--muted);margin:6px 0 15px}.login-page{grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);min-height:100vh;display:grid}.login-page>*{min-width:0}.login-hero{min-height:100vh;color:var(--jf-paper-50);background:radial-gradient(circle at 78% 18%, #d98a682e, transparent 30%), var(--jf-ink-950);flex-direction:column;justify-content:space-between;padding:48px clamp(40px,7vw,100px);display:flex}.login-brand{background:var(--jf-paper-50);border-radius:var(--jf-radius-md);width:fit-content;padding:10px 14px;display:inline-flex}.login-brand img{width:min(220px,55vw);height:auto}.login-hero h1{letter-spacing:-.055em;max-width:720px;margin:12px 0 22px;font-size:clamp(52px,6vw,88px);line-height:.93}.login-hero h1 em{color:var(--jf-terracotta-400);font-weight:inherit}.login-hero>div>p:not(.eyebrow){max-width:560px;color:var(--jf-clay-200);font-size:17px;line-height:1.65}.login-hero .eyebrow{color:var(--jf-sun-300)!important}.trust-row{color:var(--jf-clay-200);gap:20px;font-size:12px;display:flex}.trust-row span{align-items:center;gap:7px;display:flex}.login-panel{background:var(--jf-paper-50);justify-content:center;align-items:center;min-width:0;padding:40px;display:flex}.login-box{overflow-wrap:anywhere;width:100%;min-width:0;max-width:430px}.login-box h2{letter-spacing:-.045em;margin:8px 0 9px;font-size:36px}.login-box>p:not(.eyebrow){color:var(--muted);margin:0 0 29px}.login-form{gap:17px;display:grid}.login-form label{gap:8px;font-size:12px;font-weight:760;display:grid}.input-wrap{color:#829188;background:#fff;border:1px solid #cfd6cd;border-radius:12px;align-items:center;gap:8px;padding-left:13px;display:flex}.input-wrap:focus-within{color:var(--green);border-color:var(--green);box-shadow:0 0 0 3px #1f5d4517}.input-wrap input{box-shadow:none;border:0;padding-left:0}.login-form .primary-button{min-height:49px;margin-top:3px}.form-error{color:#ad362c;margin:0;font-size:12px}.privacy-note{color:#859289;margin-top:22px;line-height:1.55;display:block}.onboarding-page{background:var(--paper);min-height:100vh;padding:52px clamp(20px,6vw,88px) 72px}.onboarding-header{grid-template-columns:minmax(0,1fr) 220px;align-items:end;gap:50px;width:min(1120px,100%);margin:0 auto 30px;display:grid}.onboarding-header h1{letter-spacing:-.045em;margin:9px 0 15px;font-size:clamp(40px,5vw,72px);line-height:.94}.onboarding-header>div>p:last-child{max-width:680px;color:var(--muted);line-height:1.65}.onboarding-progress{gap:9px;display:grid}.onboarding-progress strong{font:600 30px/1 var(--jf-font-display)}.onboarding-progress>span{background:var(--jf-paper-200);border-radius:999px;height:7px;overflow:hidden}.onboarding-progress i{background:var(--jf-action);height:100%;transition:width var(--jf-duration-base) var(--jf-ease-out);display:block}.onboarding-progress small{color:var(--muted)}.onboarding-card{border:1px solid var(--line);background:var(--card);border-radius:var(--jf-radius-lg);width:min(1120px,100%);min-height:520px;box-shadow:var(--shadow);margin:auto;padding:clamp(24px,4vw,48px)}.step-index{align-items:center;gap:18px;margin-bottom:30px;display:flex}.step-index>span{font:600 13px/1 var(--jf-font-data);color:var(--jf-action)}.step-index h2{margin:4px 0 0;font-size:32px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.field{color:var(--ink);gap:8px;font-size:12px;font-weight:750;display:grid}.field.full{grid-column:1/-1}.field select{width:100%;min-height:45px;color:var(--ink);background:#fff;border:1px solid #cfc7ba;border-radius:11px;padding:0 13px}.field input[type=range]{accent-color:var(--jf-action);padding:0}.check-field{min-height:46px;color:var(--ink);border:1px solid var(--line);background:var(--jf-paper-50);border-radius:12px;align-items:flex-start;gap:10px;padding:11px 13px;font-size:12px;line-height:1.45;display:flex}.check-field input{width:18px;height:18px;accent-color:var(--jf-action);flex:none;margin:0}.form-note,.optional-module{color:var(--jf-olive-700);background:var(--jf-olive-200);border-radius:var(--jf-radius-md);grid-column:1/-1;gap:12px;padding:18px;display:flex}.form-note p{margin:0;font-size:12px;line-height:1.55}.optional-module{color:var(--ink);display:grid}.day-options{gap:8px;display:flex}.day-options button{border:1px solid var(--line);background:#fff;border-radius:50%;width:42px;height:42px}.day-options button.selected{color:#fff;border-color:var(--jf-action);background:var(--jf-action)}.wizard-footer{border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-top:34px;padding-top:24px;display:grid}.wizard-footer p{color:var(--muted);text-align:center;margin:0;font-size:12px}.status-page{background:var(--paper);place-items:center;min-height:100vh;padding:30px;display:grid}.status-card{border:1px solid var(--line);background:var(--card);border-radius:var(--jf-radius-lg);width:min(680px,100%);box-shadow:var(--shadow);padding:clamp(30px,6vw,64px)}.status-card>svg{color:var(--jf-action);margin-bottom:22px}.status-card h1{margin:8px 0 15px;font-size:clamp(34px,5vw,54px);line-height:1}.status-card>p:not(.eyebrow){color:var(--muted);line-height:1.65}.status-metadata{gap:12px;margin:26px 0;display:flex}.status-metadata span{background:var(--jf-paper-100);border-radius:10px;padding:10px 13px;font-size:12px}.missing-list{background:var(--jf-clay-200);border-radius:14px;padding:16px}.missing-list p{margin:7px 0 0;font-size:12px}.status-actions{gap:10px;margin-top:28px;display:flex}.today-grid{grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:18px;display:grid}.checkin-panel{gap:17px;display:grid}.checkin-scores{grid-template-columns:repeat(5,1fr);gap:9px;display:grid}.checkin-scores label{border:1px solid var(--line);background:var(--jf-paper-50);border-radius:13px;gap:9px;padding:12px;display:grid}.checkin-scores label span{color:var(--muted);justify-content:space-between;font-size:11px;display:flex}.checkin-scores label b{color:var(--jf-action)}.checkin-scores input{accent-color:var(--jf-action);padding:0}.urgent-check{color:var(--jf-danger);border:1px solid color-mix(in srgb, var(--jf-danger) 35%, white);background:color-mix(in srgb, var(--jf-danger) 7%, white);border-radius:13px;grid-template-columns:18px 20px 1fr;align-items:start;gap:10px;padding:15px;font-size:12px;line-height:1.5;display:grid}.urgent-check input{width:18px;height:18px;accent-color:var(--jf-danger);margin:0}.checkin-message{min-height:18px;color:var(--muted);margin:0;font-size:12px}.decision-card h2{margin:9px 0 12px;font-size:35px;line-height:1}.decision-card>p:not(.eyebrow){color:var(--muted);line-height:1.6}.reason-list{flex-wrap:wrap;gap:7px;margin:20px 0;display:flex}.reason-list span{color:var(--jf-action);background:var(--jf-clay-200);font:600 10px/1 var(--jf-font-data);border-radius:8px;padding:7px 9px}.decision-card>small{color:var(--muted);line-height:1.5}.planning-grid{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px;display:grid}.pipeline-steps{grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;display:grid}.pipeline-steps>div{min-height:108px;color:var(--muted);border:1px solid var(--line);background:var(--jf-paper-50);border-radius:13px;flex-direction:column;justify-content:space-between;padding:13px;display:flex}.pipeline-steps span{font:600 10px/1 var(--jf-font-data)}.pipeline-steps strong{font-size:11px;line-height:1.3}.pipeline-steps .done{color:var(--jf-olive-700);border-color:var(--jf-olive-200);background:var(--jf-olive-200)}.pipeline-steps .active{color:var(--jf-action);border-color:var(--jf-clay-200);background:var(--jf-clay-200)}.planning-controls{flex-wrap:wrap;align-items:center;gap:9px;margin-top:24px;display:flex}.planning-controls p{width:100%;color:var(--muted);margin:6px 0 0;font-size:12px}.findings-card>div{border-top:1px solid var(--line);grid-template-columns:1fr auto;gap:6px;padding:15px 0;display:grid}.findings-card>div strong{color:var(--jf-action);font:600 11px/1 var(--jf-font-data)}.findings-card>div span{color:var(--muted);font-size:10px}.findings-card>div p{color:var(--muted);grid-column:1/-1;margin:0;font-size:12px;line-height:1.45}@media (max-width:1050px){.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.progress-grid,.account-grid,.login-page{grid-template-columns:1fr}.login-hero{min-height:45vh}.login-panel{min-height:55vh}}@media (max-width:760px){.app-frame{display:block}.sidebar{width:100%;height:auto;padding:17px;position:relative}.sidebar .brand{margin-bottom:16px}.sidebar nav{grid-template-columns:repeat(3,1fr)}.sidebar nav a{text-align:center;flex-direction:column;gap:5px;min-width:0;padding:10px 5px;font-size:10px}.profile-card{margin-top:16px}.main-content{padding:28px 17px 48px}.page-header{display:block}.date-pill{margin-top:16px}.metrics-grid,.exercise-list{grid-template-columns:1fr}.complete-form{flex-direction:column;align-items:stretch}.complete-form label{width:100%}.form-columns{grid-template-columns:1fr}.table-head,.table-row{grid-template-columns:1.1fr repeat(3,.8fr);gap:5px;font-size:10px}.login-hero{min-height:44vh;padding:28px 24px;overflow:hidden}.login-hero h1{font-size:47px}.login-hero>div>p:not(.eyebrow){overflow-wrap:anywhere}.trust-row{display:none}.login-panel{padding:34px 24px;overflow:hidden}.today-grid,.planning-grid{grid-template-columns:1fr}.checkin-scores,.pipeline-steps{grid-template-columns:repeat(2,1fr)}}@media (max-width:700px){.onboarding-page{padding:28px 16px 48px}.onboarding-header{grid-template-columns:1fr;gap:20px}.onboarding-header h1{font-size:44px}.onboarding-card{padding:23px 18px}.form-grid{grid-template-columns:1fr}.field.full,.form-note,.optional-module{grid-column:auto}.wizard-footer{grid-template-columns:1fr 1fr}.wizard-footer p{grid-area:1/1/auto/-1}.day-options{flex-wrap:wrap}}
