/* Radio display: blue backlight, indigo ink, fine stepped type, charcoal bezel. */
@font-face{font-family:'Radio Display';src:url('./assets/fonts/RadioDisplay-Regular.woff2') format('woff2');font-weight:400 600;font-style:normal;font-display:swap}
:root{color-scheme:light;--bg:#227bee;--panel:#3b89f0;--ink:#253261;--muted:#304b94;--line:#3361a7;--green:#344b9b;--soft-green:#61aef3;--lcd-ink:#253261;--lcd-light:#6cb6f4;--font-display:'Radio Display','Space Grotesk',sans-serif}
body{background:radial-gradient(ellipse at 50% 0,#414957,#171e29 75%);color:var(--ink);padding:12px 0;min-height:100vh}
.app-shell{position:relative;isolation:isolate;width:calc(100% - 24px);min-height:calc(100vh - 24px);height:auto;margin:0 auto;padding:0 clamp(20px,3vw,58px);border-radius:10px;background:radial-gradient(ellipse at 46% 42%,#3f8af1 0,#1d74ee 60%,#1a63da 100%);box-shadow:0 0 0 5px #303845,0 0 0 7px #101722,inset 0 0 18px #3f75be,0 0 28px #111a2d}
.app-shell::before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:3;background:repeating-linear-gradient(0deg,#142b6f10 0 1px,transparent 1px 3px);box-shadow:inset 0 0 24px #385b8a28}
.app-shell>header,.app-shell>main,.app-shell>footer{position:relative;z-index:1}
h1,h2,h3,.day-tabs>button,.date-button,.state-pill,.count-pill,.week-total,.calendar-launch,.primary-button,.quiet-button,.review-button,summary,.breakdown-copy strong,.hero-score .meter-number,.nutrition-score .meter-number,.score-circle>span,#clock-time,.monthly-score strong{font-family:var(--font-display);font-weight:400;letter-spacing:.015em;text-shadow:.4px .4px #89cbf688,0 0 4px #3450902b}
h1,h2,h3{color:var(--ink);text-transform:uppercase}h1{letter-spacing:-.015em}.greeting-dot{color:var(--ink)}.eyebrow{color:var(--muted)}.top-row,.day-tabs,.display-footer{border-color:#4a73bd80}.settings-button,.icon-button{background:#56a1f2;border-color:#4e79bd80;border-radius:4px;color:var(--ink)}.icon-button:hover{background:#67b6f4}.state-pill,.state-pill.complete{background:#60adf3;border:1px solid #527bc0;color:var(--ink);border-radius:3px}.date-button{font-size:15px}.date-button:hover{background:#64aff3}.quiet-button,.adjust-button{background:#5ba7f3;border-color:#537ec4;border-radius:4px;color:var(--ink)}.quiet-button:hover,.adjust-button:hover{background:#6eb9f4}
.day-tabs{gap:7px}.day-tabs>button{background:#4c9ef2;border:1px solid #355c9f;border-radius:3px;color:var(--ink);font-size:14px;box-shadow:inset 0 1px #78c4f580}.day-tabs>button:hover{background:#69b7f4}.day-tabs>button[aria-selected='true'],#tab-nutrition[aria-selected='true'],#tab-training[aria-selected='true'],#tab-checklists[aria-selected='true'],#tab-history[aria-selected='true']{background:#3d54a4;border-color:#30468c;color:#73c4f4;text-shadow:0 0 6px #73c4f455;box-shadow:inset 0 0 5px #26346480}#tab-nutrition,#tab-training,#tab-checklists,#tab-history{background:#4c9ef2;color:var(--ink)}.tab-check{color:inherit}
.panel,.overview-tasks,.nutrition-editor,.daily-training-card,.weekly-training,.checklist-editor,.calendar-card,.history-detail{background:linear-gradient(145deg,#448cf188,#1d69db70);border:1px solid #345996;border-radius:5px;box-shadow:inset 0 1px 2px #76bff570,0 0 7px #3b6cb51a}
#overview-tasks-title{font-family:var(--font-handwriting);font-weight:400;text-shadow:none;letter-spacing:.015em;color:var(--ink)}.task-list li{border-color:#5480c251}.task-list label>span,.task-list input:checked+span{color:var(--ink);text-shadow:none}.task-list input:checked+span{text-decoration-color:#354c96b0;opacity:.72}.task-list input{background:#6db4f4;border-color:#5077b6;border-radius:2px}.task-list input:checked{background:#3b55a3;border-color:#3b55a3}.task-list input:checked::after{color:#85d9ff}.count-pill{background:#61aaf3;border-color:#375996;color:var(--ink);border-radius:2px}.panel-link{border-color:#375a98;color:var(--ink)}.panel-link:hover{color:#10275c}.empty-tasks{color:var(--muted)}
.breakdown-item,.breakdown-item.nutrition,.breakdown-item.training,.breakdown-item.checklists{background:linear-gradient(100deg,#3c85f099,#1d67d580);border:1px solid #335999;border-radius:4px;box-shadow:inset 0 1px #77c0f56b}.breakdown-item:hover{background:#67adf4;border-color:#3f61a7;box-shadow:0 0 8px #85cbf666}.breakdown-copy small,.breakdown-state,.breakdown-state.reviewed,.breakdown-chevron,.tiny-note{color:var(--ink)}.breakdown-state .icon{color:#314392;filter:drop-shadow(0 0 2px #8cc9f666)}.daily-note{display:none}
.hero-score .meter-number,.score-circle>span,.nutrition-score .meter-number{color:var(--ink)}.hero-meter .meter-track,.nutrition-meter .meter-track{stroke:#365b957a}.hero-meter .score-halo{fill:#377ff050}.hero-meter .meter-fill,.nutrition-meter .meter-fill{filter:drop-shadow(0 0 2px #cdf3ff80)}.meter-out-of,.meter-endpoint{color:var(--muted)}.score-circle-track{stroke:#537db762}.score-circle.no-score .score-circle-track{stroke:#577ab2}.score-circle.no-score>span{color:#4161a0}.score-circle-fill{filter:drop-shadow(0 0 1px #a0e3ff70)}#score-status{background:transparent;color:var(--ink);border-radius:0;padding:0;font-size:12px}.score-description{color:var(--muted)}.score-action{border-radius:3px}.primary-button,.primary-button:hover{background:#3b52a1;border-color:#30468a;color:#78c6f5;border-radius:4px}.primary-button:hover{background:#304690}.score-action.needs-input,.score-action.needs-input:hover,.score-action.is-complete{background:#506db1;border-color:#3c5899;color:#85cbf6}.text-button,.review-hint{color:var(--ink)}.review-button{background:#5eaaf3;border-color:#365793;color:var(--ink);border-radius:3px}.review-button:hover:not(:disabled){background:#71b4f4}.review-button.is-reviewed{color:var(--ink)}.review-actions{border-color:#375b98}.review-banner{background:#559ef2;border-color:#527abe;border-radius:4px}.review-banner>div>span,.review-step{color:var(--ink)}.review-step{background:#67aff4;border-color:#355ea5}.review-step.current{border-color:#304b9a}.review-step span{border-color:#577ec1}.review-step.reviewed span{background:#4058a3;color:#74c0f5;border-color:#4058a3}
.live-clock{color:var(--ink)}#clock-time{color:#2a3e8c;text-shadow:1px 1px #62b9f388,0 0 8px #3359a855;letter-spacing:-.04em}#clock-time small,#clock-date{color:var(--muted)}.calendar-launch{background:#53a0f2;border:1px solid #547bc2;border-radius:4px;color:var(--ink)}.calendar-launch:hover{background:#66b1f3;color:var(--ink)}.calendar-icon,.calendar-launch-detail,.calendar-launch>.icon,.save-status{color:var(--muted)}.save-dot{background:#3e5ba5}.save-status.has-error{color:#812c50}.save-status.has-error .save-dot{background:#812c50}
.detail-heading{min-height:44px;gap:18px;margin-bottom:20px}.detail-heading>p{margin:0}.section-instruction{font-size:13px;color:var(--muted)}.nutrition-body{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:40px}.nutrition-notes{min-width:0;align-self:center}.nutrition-notes label,.training-notes label{display:block;font:400 15px var(--font-display);text-transform:uppercase;color:var(--ink);margin:0 0 12px}.nutrition-notes label span,.training-notes label span{font:400 11px var(--font-ui);text-transform:none;color:var(--muted)}textarea[data-notes]{display:block;width:100%;min-height:145px;max-width:100%;resize:vertical;padding:12px 15px;font:400 24px/1.65 var(--font-handwriting);font-kerning:normal;color:var(--ink);background:#458bf188;border:1px solid #355793;border-radius:3px;text-shadow:none;caret-color:#233777}.training-notes{margin-top:28px}.rating-description{font-size:12px;color:var(--muted);margin:13px 0 3px}.rating-controls input{background:#64adf3;border-color:#4f76b5;color:var(--ink);font-family:var(--font-display);border-radius:3px}.meter-help{color:var(--muted)}.training-choice label{border-color:#385fa0;border-radius:3px;background:#4f9ef2}.training-choice label:has(:checked){background:#6aaef4;border-color:#3b58a4;box-shadow:inset 3px 0 #405ba8}.training-choice small,.daily-training-card>.hint,.training-empty,.gym-form label,.target-editor label,.gym-group-heading small,.hint{color:var(--muted)}.training-empty strong{font-size:19px}.gym-form{border-color:#395c94}.gym-form input,.gym-form select,#target-inputs input{background:#66acf3;border-color:#375891;color:var(--ink);border-radius:3px}.gym-progress,.task-progress{background:#557cbd50}.target-editor,.daily-training-entries li,.gym-log li{border-color:#385c97}.daily-training-entries small,.over-target,.remove-task,.add-task-form>span{color:var(--muted)}.remove-task:hover{background:#75aff5;color:#263661}
.add-task-form{align-items:center;gap:12px;padding:10px 0;border-color:#385c99}.add-task-form input{font-family:var(--font-handwriting);font-size:22px;line-height:1.3;height:1.3em;min-height:0;padding:0 3px;margin:0;background:transparent;color:var(--ink);border:0;border-radius:0;box-sizing:content-box}.add-task-form input::placeholder{color:#4565a6}.add-task-form button{margin-bottom:0}.add-task-form input:focus-visible{outline:1px solid #3f5da6;outline-offset:2px}.task-summary{color:var(--muted)}
.monthly-score{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px;padding:8px 0;color:var(--ink)}.monthly-score>span{font:400 16px var(--font-display);text-transform:uppercase}.monthly-score strong{font-size:34px;line-height:1}.monthly-score strong small{font:400 12px var(--font-ui)}.monthly-score>small{font-size:11px}.calendar-weekdays,.calendar{grid-template-columns:repeat(7,minmax(0,1fr)) minmax(48px,1.15fr)}.calendar-weekdays{align-items:center;color:var(--ink)}.week-average-heading{border-left:1px solid #355691;font:400 11px var(--font-display);text-transform:uppercase;line-height:1.3}.week-average-heading small{display:block;font:400 9px var(--font-ui);text-transform:none}.calendar-week-score{border-left:1px solid #355691;background:#2b6fd94d;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:7px 1px;text-align:center;min-width:0}.calendar-week-score .score-circle{width:43px;height:43px}.calendar-week-score>small{font-size:8px;line-height:1.4;color:var(--muted)}.calendar-day{border-radius:3px}.calendar-day:hover{background:#66aaf3}.calendar-day.selected{background:#6bb1f4;border-color:#3d5ba7}.calendar-day.is-today .calendar-date{color:#273261}.calendar-date,.calendar-complete,.calendar-legend,.selected-score small,.history-details span,.history-note{color:var(--muted)}.calendar-legend,.history-details li{border-color:#385c97}.calendar-legend{justify-content:flex-start}.history-detail .state-pill{color:var(--ink)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex='0']:focus-visible{outline-color:#2c3a75;outline-width:2px;outline-offset:3px}dialog{background:linear-gradient(130deg,#458cf1,#176fec);color:var(--ink);border-color:#547bc3;border-radius:6px;box-shadow:0 0 0 5px #2e3849,0 25px 90px #0d193870}dialog p,dialog label,.scoring-explanation li,.scoring-explanation strong,.settings-message,.score-color-key{color:var(--muted)}dialog::backdrop{background:#121c3b99;backdrop-filter:blur(4px)}.settings-section,.scoring-explanation li{border-color:#385b94}.name-control input{background:#69aef4;border-color:#375a92;color:var(--ink)}input::file-selector-button{background:#5ca5f3;border-color:#557cc1;color:var(--ink)}.import-preview{background:#5a9cf3;border-color:#39588f}.import-preview p{color:var(--ink)}.status-toast{background:#344b96;color:#88cef6;border-radius:4px;border:1px solid #356ccf}#undo-action{color:#88cef6;border-color:#5693f2}.storage-warning{background:#c5bdec;color:#57334b;border-color:#7761a5}
@media(min-width:900px){.is-overview .app-shell{height:calc(100vh - 24px)}.detail-view{padding-top:18px}.overview-board{gap:clamp(20px,2.6vw,50px)}}
@media(min-width:900px) and (max-height:850px){.day-tabs>button{font-size:13px}.greeting-row{padding:8px 0 6px}.overview-board{padding-top:20px}.score-heading h2{font-size:23px}.score-description{max-width:300px}}
@media(min-width:900px) and (max-height:650px){.greeting-row{padding:3px 0}h1{font-size:27px}.overview-board{padding-top:13px;gap:18px}.hero-meter{max-width:165px}.score-heading h2{font-size:20px}.display-footer{padding:8px 0}#clock-time{font-size:96px}}
@media(min-width:900px) and (max-height:520px){.top-row{height:44px}.greeting-row{padding:0}h1{font-size:22px}.day-tabs{padding-bottom:6px;gap:5px}.day-tabs>button{font-size:11px;padding:7px 12px}.overview-board{padding:9px 0 8px;gap:15px}.overview-tasks{padding:11px 13px}#overview-tasks-title{font-size:22px}.task-scroll{margin-top:9px}.hero-meter{max-width:115px}.hero-score .meter-number{font-size:43px}.score-heading h2{font-size:18px}.score-caption{min-height:18px}#score-status{font-size:9px}.score-action{font-size:11px;min-width:190px}.breakdown-item{min-height:48px;padding:4px 7px;gap:8px}.breakdown-item .score-circle{width:34px;height:34px}.breakdown-copy strong{font-size:11px}.breakdown-state{font-size:8px}.breakdown-state .icon{width:12px;height:12px}.breakdown-panel .panel-heading h2{font-size:18px}.breakdown-panel .panel-heading{margin-bottom:6px}.display-footer{padding:5px 0 10px}#clock-time{font-size:82px}.calendar-launch{padding-right:10px}}
@media(max-width:899px){.app-shell{padding:0 20px}.nutrition-body{gap:24px}.calendar-weekdays,.calendar{grid-template-columns:repeat(7,minmax(0,1fr)) minmax(46px,1.1fr)}.calendar-week-score .score-circle{width:39px;height:39px}}
@media(max-width:600px){body{padding:8px 0}.app-shell{width:calc(100% - 16px);min-height:calc(100vh - 16px);padding:0 14px;border-radius:5px}.top-row{min-height:68px;gap:3px}.date-button{font-size:11px}.day-navigation .quiet-button{padding:8px}.settings-button{width:40px}.day-tabs{gap:4px}.day-tabs>button{font-size:11px;padding:8px}.greeting-row{padding:18px 0}.detail-heading{gap:12px;margin-bottom:16px}.section-instruction{font-size:12px}.nutrition-body{grid-template-columns:1fr;gap:25px}.nutrition-notes{padding-top:20px;border-top:1px solid #375c9a}textarea[data-notes]{font-size:23px;min-height:140px}.detail-view{padding:20px 0}.monthly-score{gap:8px 12px}.monthly-score>span{font-size:13px}.monthly-score strong{font-size:29px}.monthly-score>small{flex-basis:100%}.calendar-card{padding:16px 7px}.calendar-card h3{font-size:18px}.calendar-weekdays,.calendar{grid-template-columns:repeat(7,minmax(0,1fr)) 40px;gap:1px}.calendar-weekdays{font-size:9px}.week-average-heading{font-size:9px}.week-average-heading small{font-size:8px}.calendar-day{min-height:68px}.calendar-day .score-circle{width:min(29px,98%);height:auto}.calendar-day .score-circle>span{font-size:9px}.calendar-week-score .score-circle{width:30px;height:30px}.calendar-week-score .score-circle>span{font-size:10px}.calendar-week-score>small{font-size:7px}.calendar-legend{font-size:9px}.panel{padding:20px}.calendar-card{padding:16px 7px}.add-task-form input{font-size:21px;line-height:1.3;height:1.3em;padding:0 2px}.add-task-form button{font-size:11px;padding:8px 10px}.calendar-launch{margin-left:auto}#clock-time{font-size:88px}.review-step{font-size:10px}.training-choice label{background:#4c9af2}}
@media(max-width:360px){.app-shell{padding:0 12px}.day-navigation .icon-button{width:36px}.settings-button{width:36px}.date-button{font-size:10px}.day-navigation .quiet-button{font-size:10px;padding:8px 6px}.panel{padding:17px}.calendar-card{padding:15px 5px}.calendar-card h3{font-size:16px}.month-navigation .icon-button{width:36px}.calendar-day .score-circle{width:24px}.calendar-day .score-circle>span{font-size:8px}.calendar-weekdays,.calendar{grid-template-columns:repeat(7,minmax(0,1fr)) 36px}.calendar-week-score .score-circle{width:27px;height:27px}#clock-time{font-size:76px}#overview-tasks-title{font-size:26px}}
@media(prefers-reduced-motion:reduce){.app-shell::before{animation:none}}

.breakdown-panel .panel-heading .eyebrow{display:none}

/* Dashboard-only stepped handwriting; the original face stays available. */
@font-face{font-family:'Kieran Handwriting LCD';src:url('./assets/fonts/KieranHandwriting-LCD.woff2') format('woff2');font-weight:400;font-display:swap}
/* Tighter metrics keep the caret near the writing's cap height. Line spacing
   still leaves room for the source handwriting's long descenders. */
@font-face{font-family:'Kieran Handwriting Entry';src:url('./assets/fonts/KieranHandwriting-Entry.woff2') format('woff2');font-weight:400;font-display:swap}
:root{--font-handwriting:'Kieran Handwriting LCD','Kieran Handwriting',cursive}
summary{color:var(--ink)}.day-tabs>button[aria-selected='true'] .tab-check{color:inherit}input{accent-color:#344e9c}
textarea[data-notes]{font-family:'Kieran Handwriting Entry',var(--font-handwriting);font-size:20px;line-height:2.05;padding:10px 13px}
.name-control input,.rating-controls input,.gym-form input,#target-inputs input{font-size:18px;line-height:1.2;caret-color:var(--ink)}
.name-control input,.gym-form input,#target-inputs input{font-size:14px}
.hero-score,.nutrition-score{display:block;pointer-events:none}
.hero-score .meter-number,.nutrition-score .meter-number{position:absolute;top:48%;left:50%;transform:translate(-50%,-50%);line-height:1;letter-spacing:0;white-space:nowrap}
.score-whole{display:block}.score-fraction{position:absolute;left:100%;top:.08em;font-size:.38em;line-height:1;letter-spacing:0}
.hero-score .meter-out-of,.nutrition-score .meter-out-of{position:absolute;left:0;right:0;top:67%;margin:0;text-align:center}
.score-color-key i{background:linear-gradient(to right,#6471ad,#3e5db2,#283970)}
.calendar-summary{display:flex;align-items:center;gap:22px 38px;flex-wrap:wrap}
.monthly-score{gap:12px;flex-wrap:nowrap}.monthly-score>.score-circle{width:61px;height:61px;flex:0 0 61px}.monthly-score .score-circle>span{font-size:20px}.monthly-score>span:last-child{display:flex;flex-direction:column;gap:6px}.monthly-score strong{font:400 16px var(--font-display);text-transform:uppercase;line-height:1.2}.monthly-score small{font:400 11px var(--font-ui);text-transform:none}
.calendar-streak{display:flex;align-items:center;gap:12px;padding:8px 0}.calendar-streak>strong{font:400 37px/1 var(--font-display)}.calendar-streak>strong>small{display:block;font:400 11px var(--font-ui);text-align:center;margin-top:4px}.calendar-streak>span{font:400 16px var(--font-display);text-transform:uppercase}.calendar-streak>span>small{display:block;font:400 11px var(--font-ui);text-transform:none;margin-top:6px;max-width:220px}
.task-list li.task-group{display:block;padding:0}.task-row{display:flex;align-items:center;min-width:0;gap:8px}.task-row>label{min-width:0;flex:1}.task-list .parent-task input:disabled{opacity:1;cursor:default}.task-list .parent-task input:checked+span{opacity:.85}.task-list .recurring-label{display:block;font:400 9px var(--font-ui);text-transform:uppercase;letter-spacing:.1em;margin:6px 0 0;color:var(--muted);text-decoration:none}.expand-task{flex:none;padding:6px;background:transparent;min-width:44px;min-height:44px;color:var(--ink);font-size:19px}.expand-task>span{font:400 10px var(--font-ui)}.child-tasks{list-style:none;padding:0 0 0 26px;margin:0 0 6px 10px;border-left:1px solid #507ac2}.task-list .child-tasks>li{border-bottom:0}.child-tasks label>span{font-size:18px}.task-list .child-tasks label{padding:6px 0}.task-row .remove-task{margin:0;padding:5px;min-width:34px}
.task-tools{display:flex;align-items:center;flex-wrap:wrap;gap:10px 15px;padding:15px 0;border-top:1px solid #507ac2;margin-top:15px}.task-tools>span{font-size:11px;color:var(--muted)}.routine-manager{margin:15px 0 5px;border-top:1px solid #507ac2;padding-top:16px}.routine-manager summary{cursor:pointer;font-size:14px}.routine-manager summary>span{font:400 11px var(--font-ui);margin-left:8px}.routine-manager ul{list-style:none;margin:12px 0 0;padding:0}.routine-manager li{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid #507ac260;padding:12px 0}.routine-manager strong{font:400 19px/1.9 var(--font-handwriting)}.routine-manager small{display:block;font-size:11px;color:var(--muted)}.routine-manager .text-button{font-size:11px;text-align:right}
#task-dialog{width:min(640px,calc(100% - 32px))}.task-composer label,.composer-label{display:block;font:400 13px var(--font-ui);color:var(--ink);margin-bottom:7px}.task-composer .handwriting-input,.task-composer [data-child-name]{display:block;box-sizing:border-box;min-width:0;width:100%;height:48px;margin:0;padding:0 3px 8px;background:transparent;color:var(--ink);border:0;border-bottom:1px solid #507ac2;border-radius:0;font:400 20px/2.05 'Kieran Handwriting Entry',var(--font-handwriting);caret-color:var(--ink)}
.task-composer .handwriting-input:focus-visible,.task-composer [data-child-name]:focus-visible,textarea[data-notes]:focus-visible{outline:none;border-bottom:2px solid var(--ink)}.task-composer input::placeholder,.task-composer textarea::placeholder{color:var(--ink);opacity:1}.task-schedule{margin:22px 0 14px}.task-schedule select{width:100%;min-height:44px;padding:8px 10px;background:#4989f1;border:1px solid #507ac2;border-radius:3px;color:var(--ink);font:400 13px var(--font-ui)}.task-schedule p,.subtask-editor p{font-size:11px;line-height:1.5;margin:7px 0 0}.weekday-choices{border:0;padding:0;margin:16px 0;display:flex;flex-wrap:wrap;gap:6px}.weekday-choices[hidden]{display:none}.weekday-choices legend{font-size:12px;margin-bottom:9px}.weekday-choices label{margin:0;position:relative}.weekday-choices input{position:absolute;opacity:0;width:100%;height:100%;margin:0}.weekday-choices span{display:grid;place-items:center;min-height:40px;padding:0 10px;border:1px solid #507ac2;border-radius:3px;font-size:12px}.weekday-choices :checked+span{background:#344e9c;color:#77c0f5}.weekday-choices :focus-visible+span{outline:2px solid var(--ink);outline-offset:2px}.subtask-editor{border-top:1px solid #507ac2;padding-top:18px;margin-top:20px}.composer-label small{font-size:11px;color:var(--muted)}.subtask-input-row{display:flex;align-items:center;gap:8px;margin-top:9px}.subtask-input-row input{flex:1}.subtask-input-row .remove-task{margin:0}.composer-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:12px}.composer-error{color:#65294f;line-height:1.5;margin:8px 0 0}.composer-error:empty{display:none}
@media(max-width:600px){.calendar-summary{gap:12px}.monthly-score>.score-circle{width:53px;height:53px;flex-basis:53px}.monthly-score strong,.calendar-streak>span{font-size:14px}.monthly-score small,.calendar-streak>span>small{font-size:10px}.calendar-streak>strong{font-size:32px}.calendar-streak{gap:10px}.task-composer .handwriting-input,.task-composer [data-child-name],textarea[data-notes]{font-size:19px}.task-row{gap:3px}.child-tasks{padding-left:14px;margin-left:8px}.routine-manager li{align-items:flex-start}.routine-manager .text-button{max-width:115px}.hero-score .meter-number{top:48%}.nutrition-score .meter-number{top:48%}}

.notes-input-shell{position:relative;min-width:0;width:100%}.notes-caret-mirror{position:absolute;top:0;left:0;visibility:hidden;pointer-events:none;white-space:pre-wrap;overflow-wrap:break-word;border-style:solid;border-color:transparent;min-height:0;height:auto}.notes-caret-layer{position:absolute;inset:0;overflow:hidden;pointer-events:none}.handwriting-caret{position:absolute;display:block;width:max-content;color:var(--ink);font-weight:400;font-style:normal;white-space:pre;transform:translateX(-50%) rotate(-43deg);transform-origin:center;animation:handwriting-caret-blink 1s step-end infinite}.has-handwriting-caret{caret-color:transparent!important}
.skip-link{opacity:0}.skip-link:focus{opacity:1}
@keyframes handwriting-caret-blink{0%,55%,100%{opacity:1}56%,99%{opacity:0}}
@media(prefers-reduced-motion:reduce){.handwriting-caret{animation:none}}

@font-face{font-family:'Radio UI';src:url('./assets/fonts/RadioUI-Regular.woff2') format('woff2');font-weight:400 600;font-style:normal;font-display:swap}
:root{--font-ui:'Radio UI','Inter',sans-serif;--ink:#101e5b;--muted:#183579;--lcd-ink:#101e5b;--line:#385e98}
#clock-time{color:#172c70;text-shadow:1px 1px #67acf488,0 0 9px #2c56a455}.hero-score .meter-number,.nutrition-score .meter-number{color:var(--ink)}
.breakdown-state.is-missing{font-size:12px;gap:6px;font-weight:500}.breakdown-state.is-missing .icon{width:19px;height:19px;stroke-width:2.1;color:#10225f;filter:drop-shadow(0 0 2px #93cff780)}
.hero-meter.score-high .meter-fill{filter:drop-shadow(0 0 5px #e0f8ffb0)}.hero-meter.score-high .score-halo{fill:#4492f166}.hero-meter.score-high .meter-number{color:#e0f7ff;text-shadow:0 0 3px #1b396e,0 0 12px #d2f7ff88}.hero-meter.score-perfect .score-halo{stroke:#dcf7ff;stroke-width:1.2;stroke-dasharray:2 5;filter:drop-shadow(0 0 4px #c2eeff)}
.score-circle.score-high .score-circle-fill{stroke:#e4f8ff;filter:drop-shadow(0 0 2px #d7f6ff)}.score-circle.score-high>span{color:#e7faff;text-shadow:0 0 3px #1e376e,0 0 5px #c7f3ff80}.score-circle.score-high::after{content:'';position:absolute;top:0;right:0;width:6px;height:6px;background:#e4faff;clip-path:polygon(50% 0,65% 35%,100% 50%,65% 65%,50% 100%,35% 65%,0 50%,35% 35%);filter:drop-shadow(0 0 3px #c2f4ff)}.score-circle .reward-halo{stroke:#d8f6ff;stroke-width:1;opacity:.9;filter:drop-shadow(0 0 2px #c6f2ff)}
.calendar-day.score-high{background:radial-gradient(ellipse at 50% 65%,#87ccf645,transparent 72%)}.calendar-day.score-perfect{box-shadow:inset 0 0 14px #8cdaff33;border-color:#95d1f770}.calendar-day.score-high .calendar-date{color:#d7f3ff;text-shadow:0 0 4px #2b4c8b}.calendar-day.score-high.selected{background:#3783e5;border-color:#c0ecff}
.overview-tasks .task-scroll{margin-top:7px}.task-list label{padding:4px 0;min-height:36px}.task-list label>span,.editable-task-list label>span,.overview-tasks .task-list label>span{font-size:18px;line-height:1.5}.task-list input{width:19px;height:19px;flex-basis:19px;margin-top:4px}.task-list .recurring-label{display:inline-block;margin:0 0 0 8px;font-size:8px;line-height:1;vertical-align:middle;letter-spacing:.06em}.task-list .child-tasks label{padding:2px 0;min-height:32px}.task-list .child-tasks label>span{font-size:17px;line-height:1.5}.task-list .child-tasks input{width:17px;height:17px;flex-basis:17px}.task-row .expand-task,.task-row .remove-task{min-height:36px}.child-tasks{margin-bottom:2px}.overview-tasks .panel-heading{gap:10px}
.task-composer .handwriting-input,.task-composer [data-child-name]{resize:none;overflow:hidden;min-height:0;height:auto;padding:1px 3px;line-height:1;border-bottom-width:2px}.subtask-input-row textarea{flex:1}.task-composer .handwriting-input:focus-visible,.task-composer [data-child-name]:focus-visible{outline:none;border-bottom:2px solid var(--ink)}
@media(min-width:900px) and (max-height:520px){.breakdown-state.is-missing{font-size:10px}.breakdown-state.is-missing .icon{width:16px;height:16px}.overview-tasks .task-scroll{margin-top:3px}.task-list label>span,.overview-tasks .task-list label>span{font-size:16px}.task-list label{min-height:31px;padding:3px 0}.task-row .expand-task{min-height:31px}}
@media(max-width:899px){.task-list label{min-height:40px}.task-list .child-tasks label{min-height:36px}}
.score-color-key i{background:linear-gradient(to right,#3f4392,#25326f,#0c2164)}
.overview-tasks{padding:14px 18px}#overview-tasks-title{font-size:28px;line-height:1.15}.overview-tasks .task-list label{min-height:32px;padding:2px 0 3px}.overview-tasks .task-row .expand-task{min-height:32px;padding:3px 5px;line-height:1;font-size:16px}.overview-tasks .panel-link{min-height:32px;padding-top:6px;margin-top:4px;font-size:11px}.task-scroll{scrollbar-color:#31559d transparent}
@media(min-width:900px) and (max-height:520px){.overview-tasks{padding:10px 12px}#overview-tasks-title{font-size:22px}.overview-tasks .task-list label{min-height:30px;padding:2px 0}.overview-tasks .panel-link{min-height:29px;padding-top:4px}}
textarea[data-notes]{line-height:1.85}

@font-face{font-family:'Kieran Handwriting LCD';src:url('./assets/fonts/KieranHandwriting-LCD-Bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap;ascent-override:80%;descent-override:20%;line-gap-override:0%}
#overview-tasks-title{font-weight:700;line-height:1.2}.task-list label>span{font-family:'Kieran Handwriting Entry',var(--font-handwriting)}.task-list input{margin-top:2px}.overview-tasks{padding-bottom:10px}.overview-tasks .panel-link{min-height:28px}.task-scroll{padding-bottom:9px}
.hero-meter .meter-fill,.hero-meter.score-high .meter-fill{filter:drop-shadow(0 1px 0 #153b8199) drop-shadow(0 0 var(--score-glow,0px) #def8ffb0)}.score-circle .score-circle-fill,.score-circle.score-high .score-circle-fill{stroke:var(--score-color);filter:drop-shadow(0 1px 0 #153b8199) drop-shadow(0 0 var(--score-glow,0px) #def8ffb0)}.score-color-key i{background:linear-gradient(to right,#1c285e,#3158a8 56.1%,#72b3eb 74.3%,#afd9f8 83%,#e4f8ff 91.6%,#f8fdff)}
@font-face{font-family:'Radio Display';src:url('./assets/fonts/RadioDisplay-Bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
.time-greeting{font-weight:700}
#task-dialog{scrollbar-gutter:stable}
