:root{color-scheme:light}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;margin:0;color:#233754;background:#f4f5f7;font-size:16px;line-height:1.5}button,input,select{font:inherit}button{border-radius:10px}button:disabled,input:disabled{opacity:.55}button:disabled{cursor:default}[hidden]{display:none!important}button,input[type=time],input[type=date],select{min-height:44px}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #233754;outline-offset:2px}
.candidate-container{width:100%;max-width:390px;margin:0 auto;padding:20px 16px;display:flex;flex-direction:column;gap:20px}.daypulse-header{flex:none}.candidate-notice{background:#fff3e9;border:1px solid #ead8ca;border-radius:14px;padding:12px 14px;font-size:13px}#appStatus:empty{display:none}#appStatus{margin:0;font-weight:600;overflow-wrap:anywhere}#appStatus[data-state=blocked]{color:#8a3f16}.candidate-tabs{display:flex;border:1px solid #dce1e7;background:#e9edf2;border-radius:12px;padding:4px;gap:4px}.candidate-tabs button{flex:1;padding:8px 4px;font-size:14px;font-weight:600;min-width:0}.candidate-tabs [aria-selected=true]{background:white;box-shadow:0 1px 2px #23375414}
.date-switch{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:6px}.date-switch>button{border:1px solid #dce1e7;background:#f4f5f7;font-size:26px;width:44px}.date-center{display:flex;flex-direction:column;align-items:center;min-width:0;text-align:center;gap:4px}#selectedDateLabel{font-size:14px;line-height:1.35}#selectedDate{min-width:0;width:100%;max-width:156px;border:1px solid #dce1e7;border-radius:9px;font-size:13px;padding:6px;color:#233754;background:white}.text-button{text-decoration:underline;text-underline-offset:4px;font-size:14px}.progress-caption{display:flex;justify-content:space-between;gap:8px;font-size:13px}.progress-caption span{max-width:80%}.progress-track{height:6px;background:#f4f5f7;border:1px solid #dce1e7;border-radius:9px;overflow:hidden}.progress-track>div{height:100%;width:0;background:#233754}
#dayPanel{display:flex;flex-direction:column;gap:16px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.section-heading h2,.panel-heading,.prototype-card h2,footer h2{font-size:16px;font-weight:700}.section-heading>.prototype-help{text-align:right;max-width:55%;font-size:12px}.routine-list{display:flex;flex-direction:column;gap:12px}.routine-card{border:1px solid #dce1e7;border-radius:16px;background:#fff;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;box-shadow:0 1px 2px #2337540b}.routine-info{display:flex;align-items:center;gap:10px;min-width:0;flex:1 1 150px}.routine-info>div{min-width:0}.routine-info h3{font-size:14px;font-weight:650}.routine-info p{font-size:12px;line-height:1.4}.routine-icon{display:grid;place-items:center;flex:none;border:1px solid #dce1e7;border-radius:12px;background:#f4f5f7;width:40px;height:40px;font-size:20px}.routine-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-shrink:0;margin-left:auto}.quick-actions{display:flex;align-items:center;gap:4px}.quick-actions button{font-size:13px;padding:6px 8px}.now-button{background:#e9edf2;color:#233754;font-weight:600}.clear-button{color:#626c79}.routine-actions input{width:108px;min-width:0;min-height:44px;padding:6px;border:1px solid #dce1e7;border-radius:10px;background:#f4f5f7;font-size:14px;font-variant-numeric:tabular-nums;text-align:right}.routine-card.logged{border-color:#b4c1ce}.day-note{padding:0 4px}
.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.metric-card{background:white;border:1px solid #dce1e7;border-radius:13px;padding:12px;min-width:0}.prototype-card .metric-card{background:#f4f5f7}.metric-label{display:block;color:#626c79;font-size:12px}.metric-value{display:block;font-size:18px;font-weight:700;overflow-wrap:anywhere;margin-top:4px}.metric-detail{display:block;color:#626c79;font-size:12px;margin-top:4px}.capability-note h2{font-size:14px}.counter-row{padding:10px 0;border-top:1px solid #dce1e7}.counter-label{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:650}.counter-actions button{border:1px solid #dce1e7;background:#f4f5f7;border-radius:12px;font-weight:700}.counter-actions output{text-align:center;font-size:14px;font-weight:650}.task-row:first-child{margin-top:0}.task-row input[type=text]{font-size:14px}#historyPanel,#insightsPanel{display:flex;flex-direction:column;gap:14px}.history-day{width:100%;text-align:left;background:white;border:1px solid #dce1e7;border-radius:14px;padding:14px;margin-top:10px;display:flex;flex-direction:column;gap:4px}.history-day strong{font-size:14px}.history-day span{font-size:13px;color:#626c79;overflow-wrap:anywhere}.empty-note{background:white;border:1px solid #dce1e7;border-radius:14px;padding:16px;color:#626c79;font-size:14px}#rangeSelect{background:white;border:1px solid #dce1e7;border-radius:10px;font-size:14px;color:#233754;padding:8px 10px}footer{display:flex;flex-direction:column;gap:12px}.data-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.data-actions button{background:white;border:1px solid #dce1e7;padding:10px;font-size:14px;font-weight:600}.data-actions .danger-button{color:#9d352c;border-color:#e1bcb7}.unit-setting{padding:14px 0}.help-page{padding:16px;line-height:1.6;margin:0}.help-page h2{margin:0}.help-page p{margin:0}.howto-footer{padding-bottom:8px}.share-setting{padding:0}.app-credits{font-size:13px}#languageToggle{flex:none}.distance-toggle{min-width:116px;padding:8px 10px;gap:6px}
@media(max-width:359px){.candidate-container{gap:16px}.routine-info{flex-basis:100%}.routine-actions{max-width:100%;justify-content:flex-end}.date-switch{gap:2px}.date-center #selectedDate{max-width:132px;font-size:12px}.prototype-heading{align-items:center}.unit-setting{gap:6px;font-size:13px}.footer-settings{gap:6px}.distance-toggle{min-width:110px}.metric-value{font-size:17px}.section-heading{align-items:flex-start}.section-heading>.prototype-help{max-width:50%}}

.capability-note{display:flex;flex-direction:column;gap:10px}.capability-note p{margin:0}.capability-note #pwaStatus{font-size:14px;font-weight:600;line-height:1.5}.capability-note #pwaStatus[data-state=error],.capability-note #pwaStatus[data-state=mixed],#pwaUpdateStatus[data-state=dirty],#pwaUpdateStatus[data-state=other-tabs],#pwaUpdateStatus[data-state=failed]{color:#8a3f16}.pwa-actions{display:flex;flex-wrap:wrap;gap:8px}.pwa-actions:has(button:not([hidden])){margin:2px 0}.pwa-actions button{border:1px solid #c9d2dd;background:#e9edf2;color:#233754;padding:10px 12px;font-size:14px;font-weight:650;min-width:0;max-width:100%;overflow-wrap:anywhere}.pwa-actions #pwaUpdate{border-color:#ead8ca;background:#fff3e9}.capability-note details{border-top:1px solid #dce1e7;padding-top:10px}.capability-note summary{cursor:pointer;font-size:14px;font-weight:600;min-height:44px;display:list-item;align-content:center}.capability-note details p{margin-top:8px}.capability-note details a{display:inline-block;margin-top:8px;color:#233754;text-decoration:underline;text-underline-offset:3px;font-size:13px}.capability-note summary:focus-visible{outline:3px solid #233754;outline-offset:2px}.routine-actions input[aria-invalid=true]{border-color:#b96c36;background:#fff3e9}
