/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}}:root{--ink:#202522;--muted:#747a76;--paper:#f5f4f0;--panel:#fff;--line:#dedfd9;--line-soft:#ecece7;--blue:#5d76c8;--green:#6d9477;--coral:#d57d63;--amber:#c69348;--sidebar:#efefeb}*{box-sizing:border-box}html{background:var(--paper)}body{color:var(--ink);background:var(--paper);font-family:var(--font-geist-sans), "PingFang SC", "Microsoft YaHei", sans-serif;margin:0}button,input{font:inherit}button{color:inherit}.app-shell{background:var(--paper);min-height:100vh}.sidebar{z-index:20;background:var(--sidebar);border-right:1px solid var(--line);flex-direction:column;width:236px;padding:26px 14px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:11px;padding:0 10px 26px;display:flex}.brand-mark{background:var(--ink);color:#fff;width:36px;height:36px;font:700 11px/1 var(--font-geist-mono);letter-spacing:-.04em;border-radius:11px;place-items:center;display:grid}.brand b{letter-spacing:-.02em;font-size:13px;display:block}.brand span{color:var(--muted);margin-top:2px;font-size:10px;display:block}.sidebar nav{gap:4px;display:grid}.sidebar nav button{text-align:left;color:#5f6561;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:12px;height:42px;padding:0 12px;font-size:13px;transition:all .18s;display:flex}.sidebar nav button span{color:#8a8f8b;text-align:center;width:18px;font-size:17px}.sidebar nav button:hover{color:var(--ink);background:#ffffff8c}.sidebar nav button.active{color:var(--ink);background:#fff;font-weight:630;box-shadow:0 1px #1c211e0a,0 4px 14px #1c211e0a}.sidebar nav button.active span{color:var(--blue)}.profile-card{border-top:1px solid var(--line);align-items:center;gap:9px;margin-top:auto;padding:12px 10px;display:flex}.avatar{color:#536059;background:#d8ded9;border-radius:50%;place-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:grid}.profile-card div:nth-child(2){flex:1;min-width:0}.profile-card b,.profile-card span{display:block}.profile-card b{font-size:11px}.profile-card span{color:var(--muted);margin-top:2px;font-size:9px}.profile-card button{color:var(--muted);cursor:pointer;background:0 0;border:0}.main-area{min-height:100vh;margin-left:236px}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:15;background:#f5f4f0e0;justify-content:space-between;align-items:center;height:70px;padding:0 34px;display:flex;position:sticky;top:0}.breadcrumbs{color:var(--muted);align-items:center;gap:10px;font-size:11px;display:flex}.breadcrumbs i{color:#b4b7b3;font-style:normal}.breadcrumbs b{color:var(--ink);font-weight:600}.energy-toggle{color:#6f726f;cursor:pointer;background:#fff;border:1px solid #d9d7d0;border-radius:999px;align-items:center;gap:8px;min-height:34px;padding:7px 12px;font-size:11px;display:flex}.toggle-dot{background:#d1a45e;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 4px #d1a45e21}.energy-toggle.active{color:#795d2f;background:#fffaf1;border-color:#d4b77e}.energy-toggle.active .toggle-dot{background:var(--amber)}.mobile-brand{display:none}.content-wrap{max-width:1280px;margin:0 auto;padding:54px 48px 70px}.eyebrow{color:#7b817c;font:600 9px/1.2 var(--font-geist-mono);letter-spacing:.13em;text-transform:uppercase;display:block}.hero-grid{grid-template-columns:1.28fr .72fr;align-items:end;gap:54px;padding-bottom:44px;display:grid}.hero-copy h1,.page-heading h1{letter-spacing:-.055em;margin:13px 0 14px;font-size:clamp(38px,4vw,60px);font-weight:580;line-height:.99}.hero-copy>p{color:#666d68;max-width:520px;margin:0;font-size:14px;line-height:1.8}.status-strip{align-items:center;gap:0;margin-top:26px;display:flex}.status-strip span{border-left:1px solid var(--line);color:var(--muted);padding:0 18px;font-size:10px}.status-strip span:first-child{border:0;padding-left:0}.status-strip b{color:var(--ink);margin-right:3px;font-size:17px}.focus-card{background:#e5e9e4;border:1px solid #d3d7d2;border-radius:4px 36px 4px 4px;align-items:center;gap:22px;min-height:246px;padding:27px;display:flex;position:relative;overflow:hidden}.focus-index{color:#fff9;letter-spacing:-.1em;font-size:132px;font-weight:700;position:absolute;bottom:-35px;right:-5px}.focus-card h2{letter-spacing:-.04em;margin:8px 0 15px;font-size:25px}.focus-card p{z-index:1;color:#59635b;margin:0;font-size:11px;line-height:1.8;position:relative}.phase-chip{color:#647168;font:600 8px/1 var(--font-geist-mono);background:#ffffff59;border:1px solid #3e4a4126;border-radius:999px;padding:6px 9px;position:absolute;top:18px;right:18px}.metric-row{border:1px solid var(--line);background:var(--panel);grid-template-columns:repeat(3,1fr);display:grid}.ring-metric{border-right:1px solid var(--line);align-items:center;gap:18px;min-height:122px;padding:24px 30px;display:flex}.ring-metric:last-child{border-right:0}.progress-ring{border-radius:50%;flex:none;width:64px;height:64px;padding:6px}.ring-inner{background:#fff;border-radius:50%;justify-content:center;align-items:baseline;width:100%;height:100%;padding-top:16px;display:flex}.ring-inner strong{letter-spacing:-.05em;font-size:18px}.ring-inner span{color:var(--muted);margin-left:2px;font-size:8px}.ring-metric p{color:var(--muted);margin:7px 0 0;font-size:10px}.dashboard-grid{grid-template-columns:.93fr 1.07fr;gap:16px;margin-top:16px;display:grid}.panel{border:1px solid var(--line);background:var(--panel);padding:26px}.panel-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.panel h2,.meal-card h2{letter-spacing:-.035em;margin:8px 0 0;font-size:18px;font-weight:610}.count-badge,.good-chip{color:#767c77;font:600 9px/1 var(--font-geist-mono);background:#f1f2ef;border-radius:999px;padding:6px 9px}.good-chip{color:#5c8065;background:#edf4ef}.task-list{border-top:1px solid var(--line-soft);margin-top:22px}.task-row{border:0;border-bottom:1px solid var(--line-soft);text-align:left;cursor:pointer;background:0 0;grid-template-columns:25px 1fr auto;align-items:center;gap:8px;width:100%;min-height:49px;padding:0;display:grid}.task-row .check{color:#fff;border:1px solid #c9ccc7;place-items:center;width:17px;height:17px;font-size:10px;display:grid}.task-row span:nth-child(2){font-size:12px}.task-row small{color:#9a9e9b;font:500 8px/1 var(--font-geist-mono)}.task-row.done .check{border-color:var(--green);background:var(--green)}.task-row.done span:nth-child(2){color:#949995;text-decoration:line-through}.gentle-note{border-left:2px solid var(--amber);color:#80653b;background:#fff8ec;margin-top:18px;padding:11px 13px;font-size:10px}.text-button{color:#737a75;cursor:pointer;background:0 0;border:0;font-size:10px}.text-button:hover{color:var(--blue)}.trend-line{height:185px;margin:25px 14px 0;position:relative}.grid-line{background:var(--line-soft);height:1px;position:absolute;left:0;right:0}.grid-line.top{top:18%}.grid-line.middle{top:52%}.grid-line.bottom{top:86%}.chart-segment{z-index:2;transform-origin:0;background:var(--blue);height:2px;position:absolute}.chart-point-wrap{z-index:3;width:1px;height:1px;position:absolute}.chart-point{border:2px solid var(--blue);background:#fff;border-radius:50%;width:8px;height:8px;position:absolute;top:-4px;left:-4px}.point-label{color:#5e6961;font:600 9px/1 var(--font-geist-mono);position:absolute;top:-22px;left:0;transform:translate(-50%)}.chart-labels{color:#999e9a;font:500 8px/1 var(--font-geist-mono);justify-content:space-between;display:flex;position:absolute;bottom:-3px;left:0;right:0}.delta-row{border-top:1px solid var(--line-soft);color:var(--muted);flex-wrap:wrap;gap:18px;padding-top:18px;font-size:9px;display:flex}.delta-row b{color:var(--ink);margin-left:3px}.dot{border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.dot.blue{background:var(--blue)}.dot.coral{background:var(--coral)}.dot.green{background:var(--green)}.insight-banner{background:#f0eee6;border:1px solid #d9d6cb;align-items:center;gap:18px;margin-top:16px;padding:20px 24px;display:flex}.insight-mark{border:1px solid #c9c5b9;border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.insight-banner p{margin:7px 0 0;font-size:12px;line-height:1.6}.insight-banner b{font-weight:650}.page-heading{justify-content:space-between;align-items:flex-start;gap:30px;min-height:160px;padding-bottom:38px;display:flex}.page-heading h1{margin-top:11px;font-size:clamp(34px,3.4vw,50px)}.page-heading p{max-width:620px;color:var(--muted);margin:0;font-size:13px;line-height:1.75}.score-card,.energy-average{border-left:1px solid var(--line);min-width:132px;padding:14px 18px}.score-card strong{letter-spacing:-.06em;font-size:32px;display:block}.score-card strong:after{content:"%";color:var(--muted);font-size:11px}.score-card span,.energy-average span{color:var(--muted);font-size:9px}.food-layout{grid-template-columns:1.4fr .6fr;gap:18px;display:grid}.meal-stack{gap:12px;display:grid}.meal-card{border:1px solid var(--line);background:var(--panel);grid-template-columns:52px 1fr;min-height:154px;padding:27px;display:grid}.meal-number{color:#c2c5c1;font:500 11px/1 var(--font-geist-mono)}.meal-options{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.meal-options button,.chips button{border:1px solid var(--line);color:#737873;cursor:pointer;background:#fff;border-radius:999px;min-height:32px;padding:0 12px;font-size:10px}.meal-options button span{margin-right:6px}.meal-options button.selected{color:#526f59;background:#eff5f0;border-color:#a8bbaa}.food-side{align-content:start;gap:12px;display:grid}.protein-panel{background:#e8ebf5;border-color:#d7dce9}.big-number{align-items:baseline;gap:7px;margin:12px 0;display:flex}.big-number b{letter-spacing:-.07em;font-size:48px}.big-number span{color:#727b8e;font-size:11px}.long-progress,.week-progress>div{background:#404c631f;height:4px;overflow:hidden}.long-progress i,.week-progress i{background:var(--blue);height:100%;display:block}.protein-panel p{color:#5f687a;margin:20px 0;font-size:10px;line-height:1.65}.stepper{background:#ffffff59;border:1px solid #4f5b742b;justify-content:space-between;align-items:center;height:36px;padding:0 6px;display:flex}.stepper button{cursor:pointer;background:0 0;border:0;width:28px;height:28px}.stepper span{color:#7d8492;font-size:9px}.chips{flex-wrap:wrap;gap:7px;margin-top:20px;display:flex}.chips button.active{color:#976653;background:#fff3ee;border-color:#d7bfb5}.body-stats,.review-metrics{border:1px solid var(--line);background:var(--panel);grid-template-columns:repeat(4,1fr);display:grid}.body-stats article,.review-metrics article{border-right:1px solid var(--line);padding:23px}.body-stats article:last-child,.review-metrics article:last-child{border-right:0}.body-stats article>span,.review-metrics article>span{color:var(--muted);font-size:9px}.body-stats article div,.review-metrics article div{margin:7px 0 9px}.body-stats b,.review-metrics b{letter-spacing:-.05em;font-size:27px}.body-stats small,.review-metrics small{color:var(--muted);margin-left:4px;font-size:9px}.body-stats em,.review-metrics em{color:var(--green);font:normal 600 8px/1 var(--font-geist-mono)}.body-grid{grid-template-columns:1.2fr .8fr;gap:16px;margin-top:16px;display:grid}.large-chart .trend-line{height:230px}.chart-caption{color:var(--muted);text-align:center;margin:12px 0 0;font-size:9px}.record-panel h2{margin-bottom:20px}.input-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.input-grid label>span{color:var(--muted);margin-bottom:6px;font-size:9px;display:block}.input-grid label>div{border:1px solid var(--line);background:#fafaf8;align-items:center;height:38px;padding:0 10px;display:flex}.input-grid input{background:0 0;border:0;outline:0;width:100%;font-size:12px}.input-grid small{color:#9ca09d;font-size:8px}.input-grid label:first-child{grid-column:span 2}.primary-button,.outline-button{border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;min-height:40px;padding:0 18px;font-size:10px;transition:all .18s}.primary-button:hover{background:#383e3a}.record-panel .primary-button{width:100%;margin-top:17px}.measurement-table{margin-top:16px}.table-wrap{overflow-x:auto}.measurement-table table{border-collapse:collapse;width:100%;margin-top:19px;font-size:10px}.measurement-table th,.measurement-table td{border-top:1px solid var(--line-soft);text-align:right;white-space:nowrap;padding:12px}.measurement-table th:first-child,.measurement-table td:first-child{text-align:left}.measurement-table th{color:#979b98;font-weight:500}.week-progress{min-width:155px}.week-progress span{color:var(--muted);font-size:9px;display:block}.week-progress strong{margin:6px 0 10px;font-size:22px;display:block}.week-ribbon{border:1px solid var(--line);background:var(--panel);display:grid}.week-ribbon.compact{grid-template-columns:1.45fr repeat(7,1fr);margin:0 0 16px}.week-ribbon.full{grid-template-columns:repeat(7,1fr);margin-bottom:16px}.week-ribbon-title{border-right:1px solid var(--line);background:#f0f0ec;flex-direction:column;justify-content:center;padding:15px 18px;display:flex}.week-ribbon-title b{margin-top:7px;font-size:11px}.week-ribbon button{border:0;border-right:1px solid var(--line-soft);text-align:left;cursor:pointer;background:#fff;align-items:flex-start;gap:8px;min-width:0;min-height:72px;padding:12px 10px;display:flex;position:relative}.week-ribbon button:last-child{border-right:0}.week-ribbon button>span{color:#7f8580;width:20px;height:20px;font:600 8px/1 var(--font-geist-mono);background:#f0f1ee;border-radius:50%;flex:none;place-items:center;display:grid}.week-ribbon button b,.week-ribbon button small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.week-ribbon button b{font-size:9px}.week-ribbon button small{color:#999d99;margin-top:5px;font-size:7px}.week-ribbon button i{background:var(--green);color:#fff;width:15px;height:15px;font:normal 600 8px/1 var(--font-geist-mono);border-radius:50%;place-items:center;display:grid;position:absolute;top:7px;right:7px}.week-ribbon button.strength>span{color:var(--blue);background:#e8ebf7}.week-ribbon button.speed>span{color:var(--green);background:#edf4ef}.week-ribbon button.optional>span{color:var(--amber);background:#fff4e4}.week-ribbon button.today,.week-ribbon button.selected{box-shadow:inset 0 -3px 0 var(--blue);background:#fbfbff}.week-ribbon button.rest{cursor:default}.training-controls{justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.session-switch,.mode-switch{border:1px solid var(--line);background:#ecece8;border-radius:10px;width:fit-content;padding:3px;display:flex}.session-switch button,.mode-switch button{min-height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0 16px;font-size:10px}.session-switch button span{color:#9a9e9a;font:600 8px/1 var(--font-geist-mono);margin-right:7px}.session-switch button.active,.mode-switch button.active{color:var(--ink);background:#fff;box-shadow:0 1px 6px #20252214}.session-switch button.active span{color:var(--blue)}.training-layout{grid-template-columns:1.48fr .52fr;gap:16px;display:grid}.workout-card{background:#e8ece8;border:1px solid #cfd5d0;padding:32px}.workout-top{justify-content:space-between;gap:20px;display:flex}.workout-top h2{letter-spacing:-.04em;margin:9px 0 0;font-size:25px}.workout-top p{color:#667069;max-width:610px;margin:10px 0 0;font-size:9px;line-height:1.7}.time-orb{border:1px solid #bdc7bf;border-radius:50%;flex-direction:column;flex:none;justify-content:center;align-items:center;width:65px;height:65px;font-size:22px;display:flex}.time-orb small{color:var(--muted);font:500 7px/1 var(--font-geist-mono)}.exercise-progress{grid-template-columns:1fr auto;align-items:center;gap:7px;margin-top:24px;display:grid}.exercise-progress span,.exercise-progress b{font-size:8px}.exercise-progress span{color:var(--muted)}.exercise-progress>div{background:#48574d24;grid-column:1/-1;height:3px}.exercise-progress i{background:var(--green);height:100%;display:block}.exercise-list{border-top:1px solid #cdd4ce;margin:14px 0 20px}.exercise-row{text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #cdd4ce;grid-template-columns:52px 1fr auto 24px;align-items:center;gap:11px;width:100%;min-height:64px;padding:9px 0;display:grid}.exercise-row b,.exercise-row small,.exercise-row em{display:block}.exercise-row b{font-size:11px}.exercise-row small{max-width:470px;color:var(--muted);margin-top:4px;font-size:8px;line-height:1.5}.exercise-row em{color:#6d756f;width:fit-content;font:normal 600 7px/1 var(--font-geist-mono);background:#ffffff73;margin-top:5px;padding:3px 5px}.exercise-row>strong{white-space:nowrap;padding-left:10px;font-size:9px}.phase-badge{color:#718077;width:36px;font:600 7px/1 var(--font-geist-mono);text-align:center;background:#ffffff8c;border-radius:999px;padding:5px 0}.phase-badge.主项{color:#536aaf;background:#dfe5f4}.phase-badge.辅助{color:#8e7159;background:#f2ebe3}.exercise-check{color:#7f8d83;text-align:right;font-size:15px}.exercise-row.checked{opacity:.56}.exercise-row.checked b{text-decoration:line-through}.exercise-row.checked .exercise-check{color:var(--green)}.full-width{width:100%}.training-side{align-content:start;gap:16px;display:grid}.training-side .panel p{color:var(--muted);margin:15px 0;font-size:10px;line-height:1.8}.divider{background:var(--line-soft);height:1px}.meta-line{color:#929693;margin-top:14px;font-size:8px;line-height:1.5;display:block}.saturday-card{background:#f6f2e9}.support-list{flex-wrap:wrap;gap:6px;margin:16px 0 6px;display:flex}.support-list span{color:#816f52;border:1px solid #ddd4c4;border-radius:999px;padding:6px 8px;font-size:8px}.recovery-card{background:#fff7e9;border:1px solid #e2d1b5;padding:22px}.recovery-card span{color:#967548;font:600 8px/1 var(--font-geist-mono)}.recovery-card p{color:#765f3e;margin:12px 0 0;font-size:10px;line-height:1.7}.energy-average strong{letter-spacing:-.06em;margin-top:5px;font-size:31px;display:block}.energy-average small{color:var(--muted);font-size:10px}.energy-layout{grid-template-columns:1.05fr .95fr;gap:16px;display:grid}.energy-checkin{background:#edece5;border:1px solid #d8d8cf;padding:32px}.energy-checkin h2{letter-spacing:-.04em;margin:10px 0 27px;font-size:24px}.energy-scale{grid-template-columns:repeat(5,1fr);gap:7px;display:grid}.energy-scale button{cursor:pointer;background:#ffffff73;border:1px solid #d1d2cb;flex-direction:column;justify-content:center;align-items:center;height:76px;display:flex}.energy-scale button b{font-size:20px}.energy-scale button span{color:var(--muted);margin-top:6px;font-size:8px}.energy-scale button.active{background:#dfe7df;border-color:#7e917f}.sleep-control{border-top:1px solid #d2d2cb;grid-template-columns:135px 1fr;align-items:end;gap:25px;margin-top:28px;padding-top:21px;display:grid}.sleep-control strong{margin-top:6px;font-size:14px;display:block}.sleep-control input{width:100%;accent-color:var(--green)}.mini-bars{border-bottom:1px solid var(--line);justify-content:space-around;align-items:flex-end;gap:10px;height:208px;margin-top:24px;display:flex}.bar-column{grid-template-rows:17px 1fr 22px;place-items:end center;min-width:28px;height:100%;display:grid}.bar-value{color:var(--muted);font:500 8px/1 var(--font-geist-mono)}.bar-track{width:20px;height:100%;position:relative}.bar-fill{background:#cbd6cd;border-radius:2px 2px 0 0;width:100%;position:absolute;bottom:0}.bar-column:last-child .bar-fill{background:var(--green)}.bar-column>span{color:#969b97;padding-top:8px;font-size:8px}.correlation{color:var(--muted);justify-content:space-between;margin-top:20px;font-size:9px;display:flex}.correlation b{color:var(--ink)}.signal-grid{border:1px solid var(--line);background:#fff;grid-template-columns:repeat(3,1fr);margin-top:16px;display:grid}.signal-grid article{border-right:1px solid var(--line);align-items:center;gap:14px;min-height:92px;padding:18px 22px;display:flex}.signal-grid article:last-child{border:0}.signal-icon{color:#6d756f;background:#f0f1ed;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.signal-grid article span:not(.signal-icon),.signal-grid article b{display:block}.signal-grid article span:not(.signal-icon){color:var(--muted);font-size:8px}.signal-grid article b{margin-top:5px;font-size:10px;font-weight:600}.outline-button{color:var(--ink);background:0 0}.outline-button:hover{background:var(--ink);color:#fff}.review-hero{background:#e7ebe7;border:1px solid #cfd5d0;grid-template-columns:220px 1fr;min-height:260px;display:grid}.review-grade{border-right:1px solid #cfd5d0;flex-direction:column;justify-content:center;align-items:center;display:flex}.review-grade span,.review-grade small{color:var(--muted);font:500 8px/1 var(--font-geist-mono)}.review-grade strong{letter-spacing:-.1em;margin:12px 0;font-size:78px;font-weight:520}.review-summary{padding:45px 50px}.review-summary h2{letter-spacing:-.035em;margin:13px 0 16px;font-size:25px;line-height:1.35}.review-summary p{color:#68716a;max-width:660px;margin:0;font-size:11px;line-height:1.8}.review-metrics{margin-top:16px}.review-columns{grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;display:grid}.review-columns ul{margin:22px 0 0;padding:0;list-style:none}.review-columns li{border-top:1px solid var(--line-soft);align-items:center;gap:15px;min-height:50px;font-size:11px;display:flex}.review-columns li span{color:#a0a4a1;font:500 8px/1 var(--font-geist-mono)}.decision-card{background:#fff6e6;border:1px solid #d8c6a5;grid-template-columns:130px 1fr auto;align-items:center;gap:22px;margin-top:16px;padding:23px 26px;display:grid}.decision-label{color:#96703a;font:600 8px/1 var(--font-geist-mono)}.decision-card p{color:#6f5a3a;margin:0;font-size:11px;line-height:1.65}.decision-card button{color:#725735;cursor:pointer;background:0 0;border:0;font-size:10px}.mobile-nav{display:none}.toast{z-index:50;color:#fff;background:#222824;border-radius:10px;align-items:center;gap:9px;min-height:42px;padding:0 16px;font-size:11px;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 12px 38px #1b201d33}.toast span{color:#a8d2b1}.low-energy{--blue:#8a916c;--green:#8b977f}.low-energy .focus-card{background:#eee8dc;border-color:#dfd3bf}.low-energy .focus-card h2:after{content:" · 温和进行";color:#96764a;font-size:12px}.low-energy .workout-card{background:#eee8dc;border-color:#ddd1bd}@media (width<=980px){.sidebar{width:205px}.main-area{margin-left:205px}.content-wrap{padding:42px 28px 70px}.hero-grid{gap:24px}.food-layout,.training-layout{grid-template-columns:1fr}.food-side,.training-side{grid-template-columns:1fr 1fr}.body-grid,.energy-layout{grid-template-columns:1fr}.week-ribbon.compact{grid-template-columns:165px repeat(7,110px);overflow-x:auto}.week-ribbon.full{grid-template-columns:repeat(7,112px);overflow-x:auto}}@media (width<=720px){.sidebar{display:none}.main-area{margin-left:0;padding-bottom:72px}.topbar{height:58px;padding:0 16px}.breadcrumbs{display:none}.mobile-brand{align-items:center;gap:8px;display:flex}.mobile-brand span{background:var(--ink);color:#fff;width:27px;height:27px;font:700 8px/1 var(--font-geist-mono);border-radius:8px;place-items:center;display:grid}.mobile-brand b{font-size:11px}.energy-toggle{padding:6px 9px}.energy-toggle span:last-child{white-space:nowrap;text-overflow:ellipsis;max-width:82px;overflow:hidden}.content-wrap{padding:34px 16px 38px}.hero-grid{grid-template-columns:1fr;padding-bottom:24px}.hero-copy h1{font-size:42px}.hero-copy>p{font-size:12px}.status-strip{margin-top:22px}.status-strip span{padding:0 11px}.status-strip b{font-size:14px}.focus-card{border-radius:4px 28px 4px 4px;min-height:190px}.metric-row{grid-template-columns:1fr}.ring-metric{border-right:0;border-bottom:1px solid var(--line);min-height:88px;padding:15px 20px}.ring-metric:last-child{border-bottom:0}.progress-ring{width:54px;height:54px}.ring-inner{padding-top:13px}.ring-inner strong{font-size:15px}.dashboard-grid,.food-layout,.body-grid,.training-layout,.energy-layout,.review-columns{grid-template-columns:1fr}.panel{padding:21px}.trend-panel{min-width:0}.trend-line{margin-left:9px;margin-right:9px}.delta-row{gap:10px}.insight-banner{align-items:flex-start}.page-heading{min-height:auto;padding-bottom:28px;display:block}.page-heading h1{font-size:37px}.page-heading p{font-size:11px}.page-heading>:last-child:not(:first-child){margin-top:20px}.score-card,.energy-average{border:0;padding:10px 0 0}.food-side,.training-side{grid-template-columns:1fr}.meal-card{grid-template-columns:36px 1fr;padding:22px 18px}.meal-card h2{font-size:15px}.meal-options{margin-top:18px}.body-stats,.review-metrics{grid-template-columns:1fr 1fr}.body-stats article:nth-child(2),.review-metrics article:nth-child(2){border-right:0}.body-stats article:nth-child(-n+2),.review-metrics article:nth-child(-n+2){border-bottom:1px solid var(--line)}.input-grid{grid-template-columns:1fr 1fr}.training-controls{display:grid}.session-switch,.mode-switch{width:100%}.session-switch button,.mode-switch button{flex:1;min-width:0;padding:0 9px}.workout-card{padding:24px 18px}.workout-top h2{font-size:20px}.workout-top p{max-width:250px}.exercise-row{grid-template-columns:43px 1fr auto 18px;gap:8px}.exercise-row small{max-width:190px}.exercise-row>strong{white-space:normal;text-align:right;max-width:76px;padding-left:3px;font-size:8px}.phase-badge{width:36px}.energy-scale{grid-template-columns:repeat(5,minmax(52px,1fr));overflow-x:auto}.sleep-control,.signal-grid{grid-template-columns:1fr}.signal-grid article{border-right:0;border-bottom:1px solid var(--line)}.review-hero{grid-template-columns:95px 1fr}.review-grade strong{font-size:55px}.review-summary{padding:30px 23px}.review-summary h2{font-size:19px}.decision-card{grid-template-columns:1fr;gap:12px}.mobile-nav{height:64px;padding:5px 7px calc(5px + env(safe-area-inset-bottom));z-index:30;border-top:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fafaf7f0;grid-template-columns:repeat(6,1fr);display:grid;position:fixed;inset:auto 0 0}.mobile-nav button{color:#8b908c;cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;display:flex}.mobile-nav button span{font-size:15px}.mobile-nav button small{white-space:nowrap;font-size:8px}.mobile-nav button.active{color:var(--blue)}.toast{justify-content:center;bottom:78px;left:16px;right:16px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
