:root{--bg:#0e1116;--card:#171b22;--card-2:#1e242d;--line:#2a313c;--text:#f5f7fa;--muted:#9aa5b4;--accent:#3ddc97;--accent-ink:#06281a;--warn:#f2c14e;--bad:#ff7a7a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-text-size-adjust:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,system-ui,sans-serif;font-size:16px;line-height:1.4}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);color:var(--text);overscroll-behavior-y:none;margin:0}button{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}h1,h3,p,ul,ol{margin:0;padding:0}ul,ol{list-style:none}.app{max-width:560px;min-height:100dvh;padding-top:env(safe-area-inset-top);margin:0 auto}main{padding-bottom:calc(76px + env(safe-area-inset-bottom))}.screen{padding:8px 16px 24px}.demo-bar{background:var(--warn);color:#2b2100;text-align:center;padding:4px;font-size:13px;font-weight:600}.day-head{text-align:center;grid-template-columns:44px 1fr 44px;align-items:center;padding:12px 0 16px;display:grid}.day-head.single{text-align:left;grid-template-columns:1fr}.day-head h1{letter-spacing:-.02em;font-size:26px;font-weight:750}.sub{color:var(--muted);font-size:14px}.sub.pad{padding:0 4px 12px}.nav{width:44px;height:44px;color:var(--muted);text-align:center;border-radius:12px;font-size:30px}.nav:active{background:var(--card)}.link{color:var(--accent);min-height:44px;padding:2px 0;font-size:14px}.session{background:var(--card);border:1px solid var(--line);border-radius:16px;margin-bottom:12px;overflow:hidden}.session-head{gap:2px;width:100%;min-height:44px;padding:14px 16px;display:grid}.slot{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700}.session-name{font-size:19px;font-weight:700}.session-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;display:flex}.tag{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:1px 8px;font-size:12px;font-style:normal;font-weight:600}.tag.done{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}.tag.not-done{border-style:dashed}.session-body{padding:0 12px 12px}.why{color:var(--text);background:var(--card-2);border-radius:12px;margin-bottom:12px;padding:10px 12px;font-size:15px}.notice{color:#f6dc8f;background:#2b2410;border:1px solid #5c4a13;border-radius:12px;margin-bottom:12px;padding:10px 12px;font-size:14px}.notice.error{color:var(--bad);background:#2d1416;border-color:#6a2a2e;margin:12px 16px}.loading,.empty{color:var(--muted);text-align:center;padding:48px 16px}.block{background:var(--card-2);border-radius:14px;margin-bottom:10px;padding:12px}.screen>.block{background:var(--card);border:1px solid var(--line)}.block h3{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);justify-content:space-between;gap:8px;margin-bottom:6px;font-size:13px;font-weight:700;display:flex}.block-meta{letter-spacing:0;text-transform:none;font-weight:500}.block.external{text-align:center;color:var(--muted);border:1px dashed var(--line);background:0 0;font-weight:600}.item{border-top:1px solid var(--line);padding:8px 0}.item:first-child{border-top:0}.item-head{justify-content:space-between;align-items:baseline;gap:12px;width:100%;min-height:32px;display:flex}.item-name{font-size:16px;font-weight:600}.item-dose{color:var(--accent);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:16px;font-weight:700}.item-meta{color:var(--muted);flex-wrap:wrap;gap:2px 10px;font-size:14px;display:flex}.item-meta .rest{color:var(--text)}.changed{color:var(--warn);padding-top:4px;font-size:14px}.last-time{color:var(--muted);flex-wrap:wrap;align-items:center;gap:0 12px;padding-top:4px;font-size:14px;display:flex}.last-time .link{text-align:right;margin-left:auto}.how{color:var(--muted);padding-top:6px;font-size:14px}.lines{color:var(--muted);padding-top:4px;font-size:14px}.lines .line-top{color:var(--text);font-weight:600}.week-day{background:var(--card);border:1px solid var(--line);border-radius:14px;grid-template-columns:72px 1fr;gap:8px;width:100%;min-height:52px;margin-bottom:8px;padding:12px 14px;display:grid}.week-day.is-today{border-color:var(--accent)}.week-date{color:var(--muted);font-size:14px;font-weight:600}.week-sessions{gap:4px;font-weight:600;display:grid}.week-sessions small,.rest-day{color:var(--muted);font-weight:400}.plain{padding:4px 0;font-size:15px}.muted{color:var(--muted)}.tabs{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);max-width:560px;padding-bottom:env(safe-area-inset-bottom);background:#0e1116f0;grid-template-columns:repeat(5,1fr);margin:0 auto;display:grid;position:fixed;bottom:0;left:0;right:0}.tabs button{text-align:center;color:var(--muted);min-height:52px;padding:16px 0 14px;font-size:13px;font-weight:600}.tabs button.on{color:var(--accent)}.primary,.secondary{text-align:center;border-radius:14px;width:100%;min-height:52px;margin-top:12px;padding:15px;font-weight:700;display:block}.primary{background:var(--accent);color:var(--accent-ink)}.secondary{border:1px solid var(--line);color:var(--text)}.welcome{text-align:center;flex-direction:column;justify-content:center;max-width:420px;min-height:100dvh;margin:0 auto;padding:24px;display:flex}.welcome>h1{letter-spacing:-.03em;margin:20px 0 8px;font-size:32px}.welcome>p{color:var(--muted);margin-bottom:20px}.short-name{color:var(--accent);letter-spacing:.3em;font-weight:800;margin:16px 0 0 .3em!important}.welcome .short-name+h1{margin-top:4px;font-size:27px}.link.quiet{color:var(--muted);text-align:center;margin-top:28px;font-size:13px}.demo-bar.owner{background:var(--card-2);color:var(--muted);font-weight:500}.welcome .notice{text-align:left}.mark{justify-content:center;align-items:flex-end;gap:8px;height:64px;display:flex}.mark i{background:var(--accent);border-radius:5px;width:14px}.mark i:first-child{height:50%}.mark i:nth-child(2){height:75%}.mark i:nth-child(3){background:var(--text);height:100%}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button:disabled{opacity:.45;cursor:default}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1:focus{outline:none}.notice.ok{color:var(--accent);background:#0f2a1f;border-color:#1f5c43}.failed{margin:12px 0}.failed .notice.error,.sheet .notice.error{margin:0 0 12px}.hint{color:var(--muted);padding:2px 0 8px;font-size:13px}.hint.center,.center-link{text-align:center;width:100%;display:block}.hint.right{text-align:right;padding:2px 0 0}.small{font-size:13px}.lead{padding-bottom:12px;font-size:16px}.cap:first-letter{text-transform:uppercase}.danger{text-align:center;background:var(--bad);color:#2b0a0b;border-radius:14px;width:100%;min-height:52px;margin-top:12px;padding:15px;font-weight:700;display:block}.danger-link{min-height:44px;margin:20px 0 8px;color:var(--bad)!important}.as-button{text-align:center;text-decoration:none;display:block}.pair{grid-template-columns:1fr 1fr;align-items:end;gap:10px;display:grid}.pair>.primary,.pair>.secondary{margin-top:0}.bullets{padding-left:20px;font-size:15px;list-style:outside}.bullets li{padding:3px 0}.bullets.muted{color:var(--muted)}.item-more{color:var(--muted);margin-left:6px;font-weight:400}.row-button{justify-content:space-between;align-items:center;gap:12px;width:100%;min-height:44px;padding:4px 0;display:flex}.block h3 .link{text-transform:none;letter-spacing:0;text-align:right;min-width:44px;min-height:44px;margin:-12px -4px -12px 0;padding:0 4px;font-size:14px;font-weight:600}.line-action{justify-content:space-between;align-items:center;gap:12px;display:flex}.line-action .link{text-align:right;flex:none;min-width:44px;min-height:44px}body.sheet-open{overflow:hidden}.sheet-backdrop{z-index:50;background:#0000008c;justify-content:center;align-items:flex-end;animation:.18s ease-out fade;display:flex;position:fixed;inset:0}.sheet{text-align:left;width:100%;max-width:560px;max-height:calc(100dvh - 24px - env(safe-area-inset-top));overscroll-behavior:contain;background:var(--card);border:1px solid var(--line);padding:0 16px calc(20px + env(safe-area-inset-bottom));border-bottom:0;border-radius:20px 20px 0 0;outline:none;animation:.24s cubic-bezier(.2,.8,.2,1) rise;overflow-y:auto}.sheet-grip{background:var(--line);border-radius:3px;width:40px;height:5px;margin:8px auto 0}.sheet-head{background:var(--card);z-index:1;justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 0 12px;display:flex;position:sticky;top:0}.sheet-head h2{letter-spacing:-.01em;margin:0;font-size:21px;font-weight:750}.sheet-head .close{text-align:center;width:44px;height:44px;color:var(--muted);border-radius:12px;flex:none;margin:-6px -8px 0 0;font-size:26px}.sheet-head .close:active,.sheet .block{background:var(--card-2)}.sheet .loading{padding:32px 16px}@keyframes rise{0%{transform:translateY(100%)}to{transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.sheet,.sheet-backdrop{animation:none}.chev{transition:none}}.question{border:0;min-width:0;margin:0 0 18px;padding:0}.question>legend{padding:0 0 6px;font-size:17px;font-weight:700}.question.has-problem>legend{color:var(--bad)}.problems{color:var(--bad);background:#2d1416;border:1px solid #6a2a2e;border-radius:12px;margin:6px 0 0;padding:8px 12px;font-size:14px;list-style:none}.problems li+li{margin-top:4px}.field{gap:6px;min-width:0;margin-bottom:12px;display:grid}.field label,.scale-label{font-size:15px;font-weight:600}.field-row{align-items:center;gap:8px;display:flex}.field-row input{flex:1}.link.clear{min-height:44px;padding:0 6px}input,select,textarea{font:inherit;color:var(--text);background:var(--card-2);border:1px solid var(--line);border-radius:12px;width:100%;min-width:0;min-height:48px;padding:11px 12px}.sheet input,.sheet select,.sheet textarea{background:var(--bg)}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:none}input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}textarea{resize:vertical;min-height:80px;line-height:1.4}select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--muted) 50%), linear-gradient(135deg, var(--muted) 50%, transparent 50%);background-position:calc(100% - 18px),calc(100% - 13px);background-repeat:no-repeat;background-size:5px 5px;padding-right:32px}option:disabled{color:var(--muted)}select:disabled,textarea:disabled,input:disabled{opacity:.6}.choice{background:var(--card);border:1px solid var(--line);cursor:pointer;border-radius:12px;align-items:center;gap:12px;min-height:48px;margin-bottom:8px;padding:10px 12px;display:flex}.sheet .choice{background:var(--bg)}.choice.on{border-color:var(--accent)}.choice.off{opacity:.45;cursor:default}.choice input{width:20px;height:20px;min-height:0;accent-color:var(--accent);flex:none;margin:0;padding:0}.choice>span{gap:2px;display:grid}.choice-label{font-weight:600}.choice small{color:var(--muted);font-size:13px}.choice:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.choice-grid{grid-template-columns:1fr 1fr;gap:0 8px;display:grid}.choice-grid .choice{padding:8px 10px;font-size:14px}.scale-q{margin-bottom:14px}.scale-label{margin-bottom:6px;display:block}.scale{gap:4px;display:grid}.scale label{border:1px solid var(--line);font-variant-numeric:tabular-nums;cursor:pointer;background:var(--bg);border-radius:10px;justify-content:center;align-items:center;min-height:44px;font-weight:700;display:flex}.scale label.on{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.scale label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.scale-ends{color:var(--muted);justify-content:space-between;padding-top:4px;font-size:12px;display:flex}.injury.on{background:var(--card-2);border-radius:14px;margin:0 -8px 8px;padding:2px 8px 8px}.injury-detail{border-left:2px solid var(--accent);margin-left:8px;padding:4px 0 0 12px}.best{margin-bottom:4px}.best.sprint{grid-template-columns:1fr 1fr;align-items:end;gap:10px;display:grid}.day-card{border:1px solid var(--line);background:var(--card);border-radius:14px;min-width:0;margin:0 0 10px;padding:8px 12px 4px}.day-card>legend{padding:0 6px;font-weight:700}.slot-row{display:grid}.slot-row .field{grid-template-columns:84px 1fr;align-items:center;margin-bottom:8px}.slot-row.kind-own select,.slot-row.kind-team select,.slot-row.kind-match select{border-color:var(--accent)}.slot-row .choice{margin-left:84px}.slot-row>.field~.field{grid-template-columns:1fr;margin-left:84px}.check-in-card{background:var(--card);border:1px dashed var(--accent);width:100%;min-height:56px;color:var(--muted);border-radius:16px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:12px 16px;font-size:22px;display:flex}.check-in-card span:first-child{gap:2px;display:grid}.check-in-card strong{color:var(--text);font-size:16px}.check-in-card small{font-size:13px}.check-in-card.done{border-style:solid;border-color:var(--line)}.check-in-card.done strong{color:var(--accent)}.session-actions{padding-top:4px;display:grid}.notice .link{min-height:44px;margin-top:2px;display:inline-block}.offers{gap:8px;display:grid}.offer{background:var(--card-2);border:1px solid var(--line);border-radius:14px;gap:2px;width:100%;min-height:52px;padding:12px 14px;display:grid}.offer:active{border-color:var(--accent)}.offer-name{font-weight:600}.offer small{color:var(--muted);font-size:13px}.preview-title{margin:4px 0 10px;font-size:19px;font-weight:700}.sticky-actions{bottom:calc(-20px - env(safe-area-inset-bottom));background:var(--card);padding:12px 0 calc(8px + env(safe-area-inset-bottom));margin-top:8px;position:sticky}.kinder li{border-top:1px solid var(--line);gap:2px;padding:8px 0;display:grid}.kinder li:first-child{border-top:0}.kinder small{color:var(--muted);font-size:13px}.preview-day .notice{margin:4px 0 0;font-weight:400;display:block}.coach-screen{min-height:calc(100dvh - 76px - env(safe-area-inset-bottom) - env(safe-area-inset-top));flex-direction:column;display:flex}.empty-chat{color:var(--text);background:var(--card);border:1px solid var(--line);border-radius:16px;gap:8px;padding:14px 16px;display:grid}.chat{flex-direction:column;flex:1;gap:8px;padding:12px 0;display:flex}.bubble{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:18px;max-width:86%;padding:10px 14px;font-size:15px}.bubble.me{background:var(--accent);color:var(--accent-ink);border-bottom-right-radius:6px;align-self:flex-end}.bubble.coach{background:var(--card);border:1px solid var(--line);border-bottom-left-radius:6px;align-self:flex-start}.bubble.typing{color:var(--muted);justify-content:space-between;align-items:baseline;gap:12px;display:flex}.waited{font-variant-numeric:tabular-nums;flex:none}.chat .failed,.chat .notice,.chat .coach-sessions{align-self:stretch}.coach-sessions{gap:6px;display:grid}.coach-sessions .session{margin-bottom:0}.coach-sessions>.sub{padding:0 2px 4px}.session.from-coach .session-head{grid-template-columns:1fr 24px;align-items:center;gap:0 8px}.head-text{gap:2px;min-width:0;display:grid}.why-line{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;display:-webkit-box;overflow:hidden}.chev{color:var(--muted);text-align:center;font-size:24px;transition:transform .18s ease-out}.session.open .chev{transform:rotate(90deg)}.composer{bottom:calc(60px + env(safe-area-inset-bottom));background:var(--bg);align-items:flex-end;gap:8px;padding:8px 0;display:flex;position:sticky}.composer textarea{resize:none;min-height:48px;max-height:140px}.send{background:var(--accent);min-width:64px;min-height:48px;color:var(--accent-ink);text-align:center;border-radius:12px;padding:0 14px;font-weight:700}.status{padding:0 4px 12px}.status .plain{font-size:16px}.progress-rows{margin-top:6px}.progress-row{border-top:1px solid var(--line);padding:8px 0}.row-head{flex-wrap:wrap;align-items:center;gap:8px;padding-bottom:2px;display:flex}.profile-part .plain{padding:2px 0}.welcome .link.quiet+.link.quiet{margin-top:10px}.small-print-doc{padding-bottom:4px}.small-print-doc h3{text-transform:none;letter-spacing:0;color:var(--text);margin:20px 0 4px;font-size:17px;font-weight:700;display:block}.small-print-doc h4{color:var(--muted);margin:14px 0 2px;font-size:15px;font-weight:700}.small-print-doc>:first-child{margin-top:0}.small-print-doc .bullets{margin:2px 0 8px}.small-print-doc .plain{padding:5px 0}.wizard main{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.wizard-head{padding:16px 0 12px}.wizard-head h1{letter-spacing:-.02em;margin:8px 0 4px;font-size:26px;font-weight:750}.progress-bar{background:var(--card-2);border-radius:2px;height:4px;margin-top:8px;overflow:hidden}.progress-bar i{background:var(--accent);height:100%;transition:width .2s;display:block}.wizard-foot{max-width:560px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--line);z-index:10;background:#0e1116f0;margin:0 auto;position:fixed;bottom:0;left:0;right:0}.wizard-foot .primary,.wizard-foot .secondary{margin-top:0}.preview-day{border-top:1px solid var(--line);grid-template-columns:92px 1fr;gap:8px;padding:8px 0;display:grid}.preview-day:first-of-type{border-top:0}.refused{padding:6px 0 10px}.refused .secondary{margin-top:8px}@media (width<=360px){.choice-grid,.slot-row .field{grid-template-columns:1fr}.slot-row .choice,.slot-row>.field~.field{margin-left:0}}.item-row{align-items:baseline;gap:4px;display:flex}.session-actions .link.quiet{margin-top:4px}.item-row .item-head{flex:1;min-width:0}.item-swap{color:var(--muted);border-left:1px solid var(--line);flex:none;justify-content:center;align-self:center;align-items:center;min-width:44px;min-height:44px;margin:-8px -8px -8px 10px;padding-left:12px;line-height:1;display:inline-flex}.item-swap[aria-expanded=true]{color:var(--accent)}.block-toggle{text-align:left;align-items:center;gap:10px;width:100%;min-height:44px;margin:-6px 0;display:flex}.block-toggle .block-name{letter-spacing:.06em;text-transform:uppercase;min-width:0;color:var(--text);flex:1;font-size:13px;font-weight:700}.block-toggle .block-meta{color:var(--muted);white-space:nowrap;font-size:12px}.block-toggle.open{margin-bottom:4px}.block-toggle .chevron{color:var(--muted);flex:none;transition:transform .15s}.block-toggle .chevron.up{color:var(--accent);transform:rotate(180deg)}.block.folded{padding-top:12px;padding-bottom:12px}.choices{gap:8px;padding:6px 0 2px;display:grid}.choices .field{margin-bottom:0}.choices .sub.pad{padding:0 2px}.choices .notice{margin-bottom:0}.add-exercise{border-top:1px solid var(--line);margin-top:4px}.add-exercise>.link{text-align:left;width:100%}.add-exercise .item-more{margin-left:6px}.not-offered{padding:10px 2px 0}.not-offered h3{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:2px;font-size:13px;font-weight:700}.not-offered li{border-top:1px solid var(--line);gap:2px;padding:8px 0;display:grid}.not-offered li:first-child{border-top:0}.not-offered small{color:var(--muted);font-size:13px}.pg-card{position:relative}.pg-now{letter-spacing:-.01em;font-size:20px;font-weight:750}.pg-pill{color:#f6dc8f;background:#2b2410;border:1px solid #5c4a13;border-radius:999px;margin:8px 0 4px;padding:4px 12px;font-size:14px;font-weight:600;display:inline-block}.pg-timeline{margin:6px 0 10px;padding:26px 0 22px;position:relative}.pg-bar{background:var(--card-2);border-radius:8px;height:16px;position:relative}.pg-seg{border:1px solid var(--bg);border-radius:4px;position:absolute;top:0;bottom:0}.pg-seg:first-child{border-top-left-radius:8px;border-bottom-left-radius:8px}.pg-seg:nth-last-child(2){border-top-right-radius:8px;border-bottom-right-radius:8px}.seg-done{background:#1f6b4c}.seg-now{background:var(--accent)}.seg-next{background:#3a4452}.seg-peak{background:var(--warn)}.seg-after_peak{background:repeating-linear-gradient(135deg,#2a313c 0 4px,#1e242d 4px 8px);border:1px dashed #5b6778}.pg-here{background:var(--text);width:3px;box-shadow:0 0 0 2px var(--card);border-radius:2px;margin-left:-1.5px;position:absolute;top:-6px;bottom:-6px}.pg-here-words{color:var(--text);white-space:nowrap;font-size:12px;font-weight:700;position:absolute;top:2px;transform:translate(-50%)}.pg-here-words.from-start{transform:translate(-8px)}.pg-here-words.from-end{transform:translate(calc(8px - 100%))}.pg-months{height:16px;margin-top:6px;position:relative}.pg-months span{color:var(--muted);border-left:1px solid var(--line);padding-left:3px;font-size:12px;line-height:16px;position:absolute}.pg-phases{margin-top:4px}.pg-phase{border-top:1px solid var(--line);grid-template-columns:24px 1fr auto;align-items:start;gap:8px;padding:8px 0;display:grid}.pg-phase:first-child{border-top:0}.pg-phase-head{flex-wrap:wrap;align-items:baseline;gap:0 8px;display:flex}.pg-dates{color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px}.pg-purpose{color:var(--muted);font-size:14px}.phase-after_peak .pg-phase-head strong,.phase-done .pg-phase-head strong{color:var(--muted);font-weight:600}.pg-state{align-self:center}.phase-now .pg-state{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}.phase-peak .pg-state{color:#2b2100;background:var(--warn);border-color:var(--warn)}.state{fill:none;stroke-width:2px;margin-top:1px}.state-done circle{fill:#1f6b4c;stroke:#1f6b4c}.state-done path{stroke:var(--text);stroke-linecap:round;stroke-linejoin:round}.state-now circle{fill:var(--accent);stroke:var(--accent)}.state-next circle{stroke:var(--muted)}.state-peak path{fill:var(--warn);stroke:var(--warn);stroke-linejoin:round}.state-after_peak circle{stroke:var(--muted);stroke-dasharray:3 3}.pg-note{margin:8px 0 0}.pg-tags{flex-wrap:wrap;gap:6px;margin:4px 0 6px;display:flex}.pg-tag{color:#b9f3d6;background:#173a2b;border:1px solid #245c43;border-radius:999px;padding:3px 10px;font-size:13px;font-weight:600}.pg-tiles{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px;display:grid}.pg-tile{background:var(--card);border:1px solid var(--line);border-radius:14px;gap:2px;padding:12px;display:grid}.pg-tile strong{font-variant-numeric:tabular-nums;font-size:24px;font-weight:750}.pg-tile span{color:var(--muted);font-size:13px}.pg-chart{width:100%;height:auto;margin:4px 0 6px;display:block;overflow:visible}.pg-chart .axis{stroke:var(--line);stroke-width:1px}.pg-chart .lbl,.pg-dots .lbl{fill:var(--muted);font-size:11px}.pg-chart .val{fill:var(--text);font-variant-numeric:tabular-nums;font-size:11px;font-weight:600}.bar-planned{fill:none;stroke:#7d8898;stroke-width:1.5px}.bar-done{fill:var(--accent)}.band{fill:#3ddc971f}.average{stroke:var(--muted);stroke-width:1.5px;stroke-dasharray:5 4}.load-line{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linejoin:round}.load-dot{fill:var(--accent);stroke:var(--card);stroke-width:2px}.pg-legend{color:var(--muted);flex-wrap:wrap;gap:4px 14px;margin:2px 0;font-size:13px;display:flex}.pg-legend li{align-items:center;gap:6px;display:flex}.mk{border-radius:3px;width:14px;height:10px;display:inline-block}.mk-planned{border:1.5px solid #7d8898}.mk-done{background:var(--accent)}.mk-load{background:var(--accent);height:2px}.mk-average{border-top:2px dashed var(--muted);border-radius:0;height:0}.mk-band{background:#3ddc9740}.pg-effort{width:100%;height:28px;margin:6px 0;display:block}.eff-easy{fill:var(--accent);background:var(--accent)}.eff-hard{fill:var(--warn);background:var(--warn)}.eff-too_much{fill:var(--bad);background:var(--bad)}.eff-hatch{fill:url(#pg-hatch)}#pg-hatch line{stroke:#0e11168c;stroke-width:2px}.pg-dots{width:100%;height:auto;margin:4px 0;display:block}.dot{stroke-width:2px}.dot-yes{fill:var(--accent);stroke:var(--accent)}.dot-no{fill:none;stroke:#7d8898}.dot-future{fill:none;stroke:#4a5260;stroke-dasharray:3 3}.dot-today{fill:none;stroke:var(--text);stroke-width:1.5px}.dot-tick{fill:none;stroke:var(--accent-ink);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.pg-lifts li{border-top:1px solid var(--line);padding:8px 0}.pg-lifts li:first-child{border-top:0}.pg-lift-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.pg-kg{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--muted)}.pg-kg .from{-webkit-text-decoration:line-through #9aa5b499;text-decoration:line-through #9aa5b499}.moved .pg-kg .to{color:var(--accent);font-weight:700}.pg-up{color:var(--accent);margin-left:6px;font-size:12px}.po-kicker{color:var(--muted);margin-bottom:2px;font-size:13px}.po-tiles{grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0 14px;display:grid}.po-tile{background:var(--card-2);border-radius:10px;flex-direction:column;gap:2px;min-width:0;padding:8px 10px;display:flex}.po-tile strong{font-size:15px;line-height:1.25}.po-tile-label,.po-tile-sub{color:var(--muted);font-size:12px}.po-ribbon{border-radius:7px;gap:2px;height:26px;display:flex;overflow:hidden}.po-rib{white-space:nowrap;text-overflow:ellipsis;text-align:center;color:#0e1116;min-width:0;padding:0 4px;font-size:11px;font-weight:700;line-height:26px;display:block;overflow:hidden}.po-ribbon-dates{color:var(--muted);justify-content:space-between;margin:4px 0 12px;font-size:12px;display:flex}.rib-base_building,.rib-rebuild{fill:#9aa5b4;background:#9aa5b4}.rib-strength{fill:#5b9cf0;background:#5b9cf0}.rib-specific_preparation{fill:#8b7cf6;background:#8b7cf6}.rib-pre_competition{fill:#b07cf6;background:#b07cf6}.rib-deload{fill:#6b7684;background:#6b7684}.rib-in_season{fill:#3ddc97;background:#3ddc97}.rib-taper{fill:#f2c14e;background:#f2c14e}.rib-peak_week,.rib-peak_day{fill:#ff7a7a;background:#ff7a7a}.po-pills{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.po-pill{border:1px solid var(--line);color:var(--text);background:0 0;border-radius:999px;padding:5px 12px;font-size:13px}.po-pill.on{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:700}.po-legend svg{vertical-align:middle;margin-right:6px}.po-band{opacity:.16}.po-grid{stroke:var(--line);stroke-width:1px}.po-ytick{font-size:10px}.po-line{fill:none;stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.po-s0{stroke:#5b9cf0}.po-s1{stroke:#f2c14e}.po-s2{stroke:#3ddc97}.po-s3{stroke:#ff7a7a}.po-now{stroke:var(--text);stroke-width:1.5px;stroke-dasharray:3 3}.po-now-words{fill:var(--text);font-weight:700}.po-picked{stroke:var(--accent);stroke-width:1.5px}.po-hit{fill:#0000;cursor:pointer}.po-week{background:var(--card-2);border-radius:10px;margin-top:6px;padding:8px 10px}.po-week-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:2px;display:flex}.po-note{margin-top:8px}
