:root{font-family:Manrope,system-ui,sans-serif;color:var(--fg);background:var(--bg);font-synthesis:none;--bg: var(--tg-theme-bg-color, #f7f7f4);--fg: var(--tg-theme-text-color, #181816);--fg2: var(--tg-theme-subtitle-text-color, #484844);--mut: var(--tg-theme-hint-color, #777771);--seg: var(--tg-theme-secondary-bg-color, #ecece7);--line: #d9d9d2;--h1: #247a4b;--h2: #c45b24;--h3: #3175c5;--h4: #8b5cf6;--h5: #9a6a16;color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--bg: var(--tg-theme-bg-color, #151513);--fg: var(--tg-theme-text-color, #f2f2ed);--fg2: var(--tg-theme-subtitle-text-color, #c2c2bb);--mut: var(--tg-theme-hint-color, #8e8e87);--seg: var(--tg-theme-secondary-bg-color, #242421);--line: #33332f;--h1: #58b780;--h2: #e68852;--h3: #68a6e8;--h4: #a98cf8;--h5: #d2aa5c}}*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg);color:var(--fg)}button{color:inherit;font:inherit}.app-shell{min-height:100vh;padding:max(10px,env(safe-area-inset-top)) max(22px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom)) max(22px,env(safe-area-inset-left))}.app-header{height:48px;display:flex;justify-content:space-between;align-items:center;max-width:1040px;margin:0 auto 18px}.brand{font-size:13px;font-weight:700;letter-spacing:.12em}.brand span{color:var(--mut);font-weight:500}.tabs{display:flex;align-items:center;min-height:44px;padding:3px;border-radius:999px;background:var(--seg)}.tabs button{min-height:34px;padding:0 14px;border:0;border-radius:999px;background:transparent;color:var(--mut);cursor:pointer;font-size:13px;font-weight:500}.tabs button[aria-selected=true]{color:var(--fg);background:var(--bg);box-shadow:0 1px 4px #0002}.responsive-layout,.single-column{max-width:560px;margin:auto}.week-pane,.day-pane{display:none}.week-pane.active,.day-pane.active{display:block}.week-column,.day-column{width:100%}.period-nav{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;text-align:center;margin:4px 0 36px}.period-nav>div{display:flex;flex-direction:column;align-items:center;gap:6px}.period-nav strong{font-size:17px;font-weight:600}.circle{width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:50%;background:var(--seg);cursor:pointer}.circle svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.7}.circle:disabled{opacity:.3;cursor:default}.chip{padding:3px 9px;border-radius:999px;background:var(--seg);color:var(--mut);font-size:11px;font-weight:500}.eyebrow{margin-bottom:13px;color:var(--mut);font-size:10px;font-weight:700;letter-spacing:.15em}.verdict{margin-bottom:34px}.verdict h1,.day-sentence{max-width:520px;margin:0 0 18px;font:400 32px/1.06 "Instrument Serif",Georgia,serif;letter-spacing:-.015em}.verdict p{display:flex;align-items:center;gap:9px;margin:7px 0;color:var(--mut);font-size:14px}.verdict p i{width:5px;height:5px;border-radius:50%;background:var(--fg2)}.coverage-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding-bottom:24px;border-bottom:1px solid var(--line)}.coverage-item{min-width:0;padding:6px 0}.coverage-item span{display:block;font-size:19px;font-variant-numeric:tabular-nums}.coverage-item small{color:var(--mut);font-size:12px}.coverage-item label{display:block;overflow:hidden;margin-top:4px;color:var(--mut);font-size:9px;text-overflow:ellipsis;text-transform:capitalize}.coverage-item.unavailable{border-bottom:1px dashed var(--line)}.domains{margin-bottom:36px}.domain-block{display:block;width:100%;min-height:44px;padding:25px 0 23px;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;cursor:pointer}.domain-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.domain-heading span{display:flex;gap:9px;align-items:center;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.domain-heading i{width:7px;height:7px;border-radius:50%;background:currentColor}.domain-heading em{color:var(--mut);font-size:12px;font-style:normal;text-transform:capitalize}.domain-habits{color:var(--h1)}.domain-spanish{color:var(--h2)}.domain-training{color:var(--h3)}.domain-recovery{color:var(--h4)}.domain-work{color:var(--h5)}.big-metric{color:var(--fg);font:400 34px/1 "Instrument Serif",Georgia,serif;font-variant-numeric:tabular-nums}.metric-label{margin-top:3px;color:var(--mut);font-size:11px}.supporting-facts{display:flex;flex-wrap:wrap;gap:7px 14px;margin-top:15px;color:var(--fg2);font-size:13px}.week-bars{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;align-items:end;height:28px;margin:18px 0 10px}.week-bars i{position:relative;height:100%;overflow:hidden;border-radius:2px;background:var(--seg)}.week-bars i:after{content:"";position:absolute;inset:100% 0 0;background:currentColor}.week-bars .level-1:after{inset-block-start:90%}.week-bars .level-2:after{inset-block-start:80%}.week-bars .level-3:after{inset-block-start:70%}.week-bars .level-4:after{inset-block-start:60%}.week-bars .level-5:after{inset-block-start:50%}.week-bars .level-6:after{inset-block-start:40%}.week-bars .level-7:after{inset-block-start:30%}.week-bars .level-8:after{inset-block-start:20%}.week-bars .level-9:after{inset-block-start:10%}.week-bars .level-10:after{inset-block-start:0}.week-bars i.future{opacity:.35}.source-line{margin-top:10px;color:var(--mut);font-size:10px}.timeline{margin-bottom:36px}.timeline-row{width:100%;min-height:50px;display:grid;grid-template-columns:62px repeat(4,1fr);align-items:center;gap:5px;padding:0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--fg2);text-align:left;cursor:pointer;font-size:10px}.timeline-row strong{color:var(--fg);font-size:13px}.timeline-row strong small{margin-left:5px;color:var(--mut);font-weight:400}.timeline-row.future{opacity:.35}.timeline-row.today strong{text-decoration:underline;text-underline-offset:4px}.next-week ol{list-style:none;counter-reset:focus;padding:0;margin:0}.next-week li{counter-increment:focus;display:grid;grid-template-columns:32px 1fr;padding:11px 0;color:var(--fg2);font-size:14px;line-height:1.45}.next-week li:before{content:counter(focus,decimal-leading-zero);color:var(--mut);font:20px/1 "Instrument Serif",Georgia,serif}.coach{margin-top:32px;text-align:center}.primary{width:100%;min-height:48px;border:0;border-radius:9px;background:var(--fg);color:var(--bg);cursor:pointer;font-weight:600}.coach p{color:var(--mut);font-size:10px}.day-sentence{margin-bottom:36px;font-size:28px}.daily-section,.observation{padding:26px 0;border-bottom:1px solid var(--line);color:var(--fg)}.daily-section h2{margin:0 0 7px;color:var(--fg);font-size:16px}.daily-section p{color:var(--fg2)}.habit-row{min-height:48px;display:grid;grid-template-columns:30px 1fr auto;align-items:center;border-bottom:1px solid var(--line)}.habit-row strong{color:var(--fg);font-size:14px}.habit-row em{color:var(--mut);font-size:11px;font-style:normal}.status-icon{width:22px;height:22px;display:grid;place-items:center;border:1px solid currentColor;border-radius:50%}.status-icon svg{width:15px;fill:none;stroke:currentColor;stroke-width:1.7}.status-icon.done{color:var(--h1)}.status-icon.missed{color:var(--fg2)}.status-icon.skipped,.status-icon.unlogged{color:var(--mut);border-style:dashed}.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.daily-metric strong{display:block;color:var(--fg);font:27px/1 "Instrument Serif",Georgia,serif}.daily-metric span{display:block;margin-top:5px;color:var(--mut);font-size:10px}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.split-grid label{display:block;margin-bottom:13px;color:var(--mut);font-size:9px;font-weight:700;letter-spacing:.12em}.split-grid p,.split-grid small{margin:4px 0;color:var(--mut);font-size:11px}.unavailable{min-height:52px;display:grid;place-items:center start;padding:11px;border:1px dashed var(--line);border-radius:7px;color:var(--mut);font-size:12px}.work-list article{padding:12px 0;border-bottom:1px solid var(--line)}.work-list strong{color:var(--h5);font-size:11px}.work-list p{margin:5px 0 0;color:var(--fg2);font-size:13px;line-height:1.45}.muted{color:var(--mut)!important;font-size:11px}.observation p{color:var(--fg2);font-size:15px;line-height:1.5}.text-button{min-height:44px;padding:0;border:0;background:transparent;color:var(--h5);cursor:pointer;font-size:12px;font-weight:600}.info-callout{margin-top:12px;padding:11px 12px;border-left:2px solid var(--line);background:var(--seg);color:var(--fg2);font-size:12px;line-height:1.4}.state-screen{max-width:420px;min-height:70vh;display:grid;align-content:center;justify-items:center;margin:auto;text-align:center}.state-mark{width:48px;height:48px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--mut);font-size:25px}.state-screen h1{margin:20px 0 7px;font:28px "Instrument Serif",Georgia,serif}.state-screen p{margin:0 0 24px;color:var(--mut);font-size:13px}.state-screen .primary{max-width:220px}.skeleton-line,.skeleton-block,.skeleton-grid i{border-radius:6px;background:var(--seg);animation:pulse 1.4s ease-in-out infinite alternate}.skeleton-line{height:13px;margin:18px 0}.verdict-line{height:31px}.w45{width:45%}.w85{width:85%}.w60{width:60%}.skeleton-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:38px 0}.skeleton-grid i{height:54px}.skeleton-block{height:150px;margin:12px 0}@keyframes pulse{to{opacity:.55}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.skeleton-line,.skeleton-block,.skeleton-grid i{animation:none}}@media(min-width:600px){.metric-grid{grid-template-columns:repeat(3,1fr)}}@media(min-width:901px){.app-header{margin-bottom:24px}.tabs{display:none}.responsive-layout{max-width:1040px;display:grid;grid-template-columns:560px 420px;gap:60px;align-items:start}.week-pane,.day-pane{display:block}.day-pane{position:sticky;top:20px;max-height:calc(100vh - 40px);overflow:auto;padding-right:4px;scrollbar-width:thin}.day-column .coach{margin-bottom:20px}}@media(max-width:380px){.app-shell{padding-left:16px;padding-right:16px}.timeline-row{grid-template-columns:54px repeat(4,1fr)}.coverage-strip{gap:4px}.coverage-item span{font-size:17px}}
