body{font:16px system-ui;background:#f2f6f6;color:#17343b;margin:0}header{background:#134e59;color:white;padding:20px}main{max-width:850px;margin:auto;padding:15px}section{background:white;padding:18px;border-radius:14px;margin:12px 0}nav,.chips{display:flex;gap:7px;flex-wrap:wrap}button,input,select,textarea{font:inherit;border:1px solid #b5c5c8;border-radius:8px;padding:9px;background:white}button{cursor:pointer}.active,.primary{background:#176f7b;color:white}nav button{flex:1}label{display:block;margin:12px 0 5px}.entry{border-bottom:1px solid #ddd;padding:12px 0}.muted{color:#66777b;font-size:13px}.bar{background:#dce7e8;border-radius:8px;height:13px;overflow:hidden}.bar span{display:block;height:100%;background:#167987}textarea{width:95%}@media print{nav,.no-print{display:none}section{break-inside:avoid}}header{position:relative;padding-right:150px}.version{position:absolute;right:15px;top:22px;text-align:right;font-size:12px;line-height:1.5;opacity:.9}@media(max-width:430px){header{padding-right:125px}.version{right:10px;font-size:11px}}.stack{display:flex;height:24px;border-radius:6px;overflow:hidden;background:#e1e9e9}.pie{width:170px;height:170px;border-radius:50%;margin:14px auto}.chartrow{margin:12px 0}.chartlabel{display:flex;justify-content:space-between;font-size:13px;margin:4px 0}.swatch{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px}.topimport{position:absolute;right:13px;top:67px;background:#fff;color:#145c68;font-size:12px;padding:6px 9px}.version{top:14px}header{min-height:80px}.wizardCard{border:3px solid #176f7b;border-radius:22px;padding:24px 16px;min-height:220px;text-align:center;touch-action:pan-y;user-select:none;background:#f6fbfb}.wizardCard h2{font-size:clamp(25px,6vw,36px);overflow-wrap:anywhere}.wizardActions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.wizardActions button,.wizardBig{min-height:76px;font-size:22px;font-weight:700}.wizardYes{background:#176f7b;color:white}.wizardNo{background:#f2e8e8;color:#682c2c}.wizardCard:focus-visible,button:focus-visible{outline:4px solid #ed9b30;outline-offset:3px}.wizardHint{font-size:16px;color:#475a60}.wizardCard input,.wizardCard select{min-height:52px;max-width:100%;box-sizing:border-box} @media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}.wizardCard{min-height:175px;padding:16px 12px}.wizardCard h2{font-size:clamp(21px,5vw,29px);margin:10px 0}.wizardActions{margin:10px 0;gap:10px}.wizardActions button{min-height:68px;font-size:21px}.wizardBig{min-height:64px;font-size:20px}.wizardCard input[type=range]{cursor:pointer}nav{margin:8px 0 12px;gap:4px}nav button{min-height:35px;font-size:12px;padding:6px 7px;flex:0 1 auto}nav button:first-child{font-weight:700}@media(max-width:600px){nav{gap:4px}nav button{font-size:11px;padding:6px 5px}}.wizardDuration{min-height:54px;font-size:17px;font-weight:650;flex:1 1 90px}.trainingCalendar{margin-inline:-12px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;text-align:center}.trainingCalendar button{min-height:60px;padding:4px;font-size:14px}.trainingCalendar [aria-current=date]{outline:3px solid #b25b00;outline-offset:-3px}.trainingRow{display:block;width:100%;text-align:left;min-height:52px;margin:8px 0}.editChoice{display:flex;align-items:center;gap:12px;min-height:48px}fieldset{border:1px solid #b5c5c8;margin:12px 0}.editorCard button{min-height:48px}#editend,#editminutes,#editgroup{max-width:100%;box-sizing:border-box}#app section button{touch-action:manipulation}.categoryChip{display:inline-flex;align-items:stretch;gap:0}.categoryChip button:first-child{border-radius:8px 0 0 8px}.categoryChip button:last-child{border-radius:0 8px 8px 0;min-width:44px}.editorCard summary{cursor:pointer;min-height:44px;padding-top:12px}.editorCard input,.editorCard select{max-width:100%;box-sizing:border-box}.trainingRowGroup{display:flex;gap:6px;align-items:stretch;margin:8px 0}.trainingRowGroup>.trainingRow{flex:1;min-width:0;width:auto;margin:0;overflow-wrap:anywhere}.trainingDelete{flex:0 0 48px;min-height:48px;color:#682c2c}.brand{display:flex;align-items:center;gap:10px;font-size:clamp(26px,7vw,32px)}.brandMark{width:36px;height:36px;flex:none}.frequencyCard{margin:16px 0;padding:14px;border:1px solid #c7dedb;border-top:4px solid #176f7b;border-radius:10px;background:#edf7f5}.frequencyCard h3{margin:0 0 12px}.frequencyMetrics{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 16px}.frequencyMetrics dt{font-size:14px}.frequencyMetrics dd{font-size:32px;font-weight:700;margin:4px 0;color:#134e59}.frequencyTable{width:100%;table-layout:fixed;border-collapse:collapse;font-size:clamp(12px,3.6vw,14px);text-align:center}.frequencyTable caption{text-align:left;font-weight:700;padding-bottom:8px}.frequencyTable th,.frequencyTable td{overflow-wrap:anywhere;padding:8px 3px;border-bottom:1px solid #c7dedb}.frequencyTable th:first-child{width:40%;text-align:left}.frequencyTable th:nth-child(2){width:35%}.frequencyCard .muted{margin-bottom:0}.trainingCalendar small{overflow-wrap:anywhere}.trainingCalendar .dayInjured{background:#fdecee;color:#7c1d2b;border-color:#9b2335}.trainingCalendar .dayLimited{background:#fff1d5;color:#784000;border-color:#a46100}.trainingCalendar .dayInjured[aria-pressed=true],.trainingCalendar .dayLimited[aria-pressed=true]{box-shadow:0 0 0 2px #176f7b}#feedbackview{max-width:100%;box-sizing:border-box}
/* Mobile shell: four main destinations, quiet header and separated management. */
header{padding:12px 16px;min-height:0}header .version{display:none}.brand{font-size:24px;margin:0}.brandMark{width:29px;height:29px}main{padding:10px;max-width:850px}section{padding:14px;margin:10px 0}nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}nav button{min-height:48px;font-size:12px;padding:5px;overflow-wrap:anywhere}.areaGrid,.menuGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.areaGrid button{min-height:84px;font-size:17px;font-weight:650}.areaGrid [aria-pressed=true],.chips [aria-pressed=true]{background:#176f7b;color:white}.editorCard button,.menuGrid button{min-height:44px}.editorCard input,.editorCard select{min-height:44px}.editorCard input[type=range]{width:100%}.editorCard textarea{box-sizing:border-box;width:100%;min-height:80px}.wizardCard{border-width:1px;border-radius:12px;text-align:left;user-select:auto;padding:12px;min-height:0}.wizardCard h2{font-size:22px}.wizardCard>.primary{width:100%;margin-top:16px}.wizardFooter{display:flex;justify-content:space-between;gap:12px;margin-top:12px}.wizardFooter button{min-width:44px}.trainingCalendar{margin:0;gap:3px}.trainingCalendar button{min-height:47px;font-size:13px;padding:3px;min-width:0}.dayDot{display:inline-block;width:8px;height:8px;border-radius:50%;margin:1px}.trainingRowGroup{border:1px solid #d6e2e3;border-radius:10px;padding:5px}.trainingRow{border:0;line-height:1.5}.trainingDelete{border:0;flex-basis:44px;min-height:44px}.legend{display:flex;flex-wrap:wrap;gap:8px;font-size:12px}.legend span{display:inline-block}.chartlabel{gap:8px}button,input,select,textarea{max-width:100%;box-sizing:border-box}fieldset{min-width:0}p,legend{overflow-wrap:anywhere}h2,h3{line-height:1.3}@media(max-width:350px){.areaGrid{grid-template-columns:1fr}.areaGrid button{min-height:60px}}
.trainingEdit{font-size:12px;min-height:44px;padding:5px;align-self:center}

#app-update{position:fixed;bottom:0;left:0;width:100%;box-sizing:border-box;z-index:1000;padding:12px;background:#134e59;color:white;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 -2px 8px #0003}#app-update button{min-height:44px}

body:has(#app-update) main{padding-bottom:100px}

button{overflow-wrap:anywhere}.areaGrid button{hyphens:auto;min-width:0}.calendarNav h3{margin:8px 0;font-size:18px}.calendarNav button{min-width:44px;min-height:44px}
.areaGrid button:nth-child(1){border-top:4px solid #d99b46}.areaGrid button:nth-child(2){border-top:4px solid #347f89}.areaGrid button:nth-child(3){border-top:4px solid #7660ac}.areaGrid button:nth-child(4){border-top:4px solid #728b9c}
/* Release 0.11.3: labelled native sliders, private health indicators and drafts. */
.sliderValue{display:block;font-size:1.25rem;font-weight:700;margin:.5rem 0;color:#173e45}.fieldError{color:#962b34;font-weight:600;min-height:0}.fieldError:empty{display:none}.unrated{opacity:.55}.stepCounter{font-size:.9rem;color:#45646a}.totalDuration{font-size:1.15rem;font-weight:700}.areaTimeDetails div{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid #ddd;padding:.4rem 0}.areaTimeDetails dt{flex:1}.areaTimeDetails dd{margin:0;white-space:nowrap}.draftResume{padding:.6rem;border:1px solid #347f89}.ratingBadges{display:flex;flex-wrap:wrap;gap:.3rem}.ratingBadge{border-radius:.35rem;padding:.25rem .4rem;font-size:.85rem;color:#17343b;background:rgba(48,126,151,var(--strength));border:1px solid #337e97}.ratingBadge.injury{background:rgba(193,51,62,var(--strength));border-color:#b63c47}.ratingBadge.missingRating{background:transparent}.trainingCalendar button small{display:block}.trainingCalendar .ratingBadges{display:flex;justify-content:center;gap:1px;margin-top:3px}.trainingCalendar .ratingBadge{font-size:.65rem;padding:1px 2px}.savedNotice{background:#e1f1e6;padding:.75rem;border-radius:.5rem}.todayTraining{margin-bottom:.75rem}.sharedTime{border-left:4px solid #d99b46;padding-left:.6rem}input[type=range]:focus-visible{outline:3px solid #173e45;outline-offset:4px}fieldset{min-width:0}output{overflow-wrap:anywhere}@media(max-width:380px){.trainingCalendar{gap:2px}.trainingCalendar button{padding:3px 1px}.trainingCalendar .ratingBadge{font-size:.6rem}.areaTimeDetails div{flex-wrap:wrap}.areaTimeDetails dd{margin-left:auto}}@media print{.privateHealth,.draftResume,.todayTraining{display:none!important}}

.checkinActions{position:sticky;bottom:0;z-index:2;background:#fff;padding:.6rem 0;border-top:1px solid #d6e2e3}.checkinActions>button{flex:1;min-width:0}input[type=range]{accent-color:#176f7b}
/* 0.11.4: calendar fitness background stays independent of injury. */
.trainingCalendar button.active{outline:2px solid #176f7b;outline-offset:-2px;color:#17343b;background-color:#fff}.trainingCalendar button[aria-current=date]{border:2px solid #176f7b}.dayNumber{display:inline-flex;align-items:center;gap:4px}.injuryMark{color:#b82031;font-weight:900;font-size:1.1rem}.ratingBadge.injury.noInjury{border-color:#7b8f94;background:transparent;color:#17343b}.borgScroll,.reportDaysScroll{overflow-x:auto;max-width:100%}.dailyBorg{padding:0;border:0}.dailyBorg output{display:block;padding:.6rem;background:#edf4f5}.dailyBorg li button{min-height:44px}.dailyBorg circle{cursor:pointer}.dailyBorg a:focus circle{stroke:#17343b;stroke-width:3px}.reportCheckins{padding:0}.reportCheckins table{border-collapse:collapse;min-width:650px;width:100%}.reportCheckins td,.reportCheckins th{padding:.6rem;vertical-align:top;text-align:left;border-bottom:1px solid #d6e2e3}.importCounts{display:grid;grid-template-columns:1fr auto;gap:.4rem}.importCounts dd{margin:0;font-weight:700}@media print{.borgScroll,.reportDaysScroll{overflow:visible}.dailyBorg svg{min-width:0!important;width:100%}.reportCheckins table{min-width:0;font-size:10px}.reportCheckins tr{break-inside:avoid}}
.dailyBorg circle{pointer-events:all;stroke:transparent;stroke-width:12}.dailyBorg a:focus circle{stroke:#17343b;stroke-width:3px}
