.stretch-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:20px}.stretch-day{background:#f4f6ed;color:var(--ink);padding:15px 10px;min-height:140px;text-align:left;border:1px solid var(--line);display:flex;flex-direction:column;gap:12px;overflow-wrap:anywhere}.stretch-day span{font-size:12px;font-weight:400;line-height:1.7}.stretch-day small{margin-top:auto;font-size:10px}.stretch-day.selected{border:2px solid var(--ink)}.week-navigation{margin-top:12px}.stretch-image-only{position:relative;overflow:hidden;background:white;border-radius:14px;aspect-ratio:1/1;max-width:500px;margin:16px auto}.stretch-image-only img{position:absolute;width:177.7778%;max-width:none!important;height:100%;left:-77.7778%;object-fit:fill;clip-path:inset(0 0 0 0)}.stretch-image-only::after{content:'';position:absolute;left:0;bottom:0;width:100%;height:8%;background:white}.session-header{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.session-header>div:first-child{flex:1}.session-clock{text-align:center}.session-clock b{font-size:40px;font-variant-numeric:tabular-nums;display:block}.session-clock small{color:var(--muted)}.session-exercise h3{font-size:20px}.session-exercise .exerciseguideaction{margin:0}.rest-inline{display:flex;align-items:center;gap:8px;margin:12px 0 20px;flex-wrap:wrap;font-size:13px}.rest-inline button{padding:7px 12px}.rest-inline small{color:var(--muted)}.set-complete{background:#e8efdf;border-radius:9px}.setrow{padding:7px 0}.session-rest:not(:empty){position:sticky;top:8px;z-index:20;background:#dfeacb;border:1px solid #a9bd91;border-radius:16px;box-shadow:0 4px 18px #183c3520;display:flex;align-items:center;justify-content:center;gap:16px;padding:12px;margin-bottom:20px}.session-rest b{font-size:24px;font-variant-numeric:tabular-nums}.day-summary-list small{text-align:right}.trainingtabs{flex-wrap:wrap}.session-exercise .daycheck{margin:0}.session-exercise .row{gap:12px}@media(max-width:900px){.stretch-week{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:600px){.stretch-week{grid-template-columns:repeat(2,minmax(0,1fr))}.stretch-day{min-height:115px}.session-header{gap:16px}.session-header>.actions{width:100%;margin:0}.session-clock b{font-size:32px}.session-exercise .row{flex-wrap:wrap}.session-rest:not(:empty){gap:10px}.week-navigation{flex-wrap:wrap}.day-summary-list .row{align-items:flex-start;gap:12px}.day-summary-list b{max-width:65%}}
.finish-choices{display:grid;gap:12px;margin:24px 0}.finish-choices button{width:100%;min-height:48px}.pr-celebration{font-size:56px;text-align:center;color:#a98536;margin:18px}.pr-list{background:#f3f6ec;border-radius:16px;padding:0 18px}.pr-list .entry{padding:18px 0}.pr-list b{display:block;margin:9px 0;color:var(--ink);font-size:20px}
.stretch-day.planned{background:#dfe8c9;border-color:#92a875}.stretch-day.planned.selected{border:2px solid var(--ink)}.activity-summary{padding:18px 0;border-bottom:1px solid var(--line)}.activity-summary:last-child{border-bottom:0}.activity-summary>.plannedexercises{margin-bottom:18px}.activity-summary .row{gap:16px}.activity-summary small{text-align:right}.activity-summary h3{font-size:20px}
.body-layout{display:grid;grid-template-columns:minmax(230px,1fr) 1fr;gap:30px;margin-top:24px}.body-viewport{text-align:center;background:#f4f5ef;border-radius:22px;padding:10px 10px 22px}.body-viewport canvas{width:100%;height:auto;max-height:540px;object-fit:contain;display:block;touch-action:pan-y;cursor:grab}.body-views{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:6px 0 12px}.body-views button{padding:9px 14px}.muscle-chips{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 26px}.muscle-chips button{font-size:12px;padding:10px 13px}.body-key{display:flex;align-items:center;gap:9px;font-size:12px;margin:12px 0}.body-key span{width:12px;height:12px;background:#d37862;border-radius:50%}.body-key .grey{background:#aab4ae}.muscle-exercises{padding-left:18px;max-height:290px;overflow:auto}.muscle-exercises li{padding:8px 0}.muscle-exercises small{display:block;margin-top:5px}.body-filters{flex-wrap:wrap}@media(max-width:650px){.body-layout{grid-template-columns:1fr;gap:22px}.body-viewport canvas{max-height:440px}}

.body-viewport canvas{max-height:none;width:100%;height:auto;cursor:pointer;touch-action:pan-y;border-radius:16px}.body-viewport{background:#ece8df}.body-layout{grid-template-columns:minmax(240px,.95fr) 1fr}.body-viewport small{display:block;padding:0 10px;line-height:1.5}@media(max-width:650px){.body-layout{grid-template-columns:1fr}.body-viewport canvas{max-height:none;width:100%;height:auto}}

.weekly-body .body-layout{grid-template-columns:minmax(0,1.65fr) minmax(220px,1fr);align-items:start}.body-view-labels{display:grid;grid-template-columns:1fr 1fr;font-size:12px;font-weight:600;margin:8px 0 12px}.weekly-body .body-viewport{padding:8px 8px 18px}.weekly-body .body-viewport canvas{width:100%;height:auto;aspect-ratio:1312/1199;max-height:none}@media(max-width:800px){.weekly-body .body-layout{grid-template-columns:1fr}.weekly-body .body-viewport{padding:3px 3px 14px}}

.food-notes{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 16px}.food-notes span{background:#edf3e7;color:#315246;border-radius:10px;padding:7px 10px;font-size:12px}.nutrient-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.nutrient-row{display:flex;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid #e5e9df}.nutrient-row div{text-align:right}.nutrient-row small{display:block;font-size:10px;color:#65766d;margin-top:4px}.more-nutrients,.nutrient-explainer{margin-top:22px;padding:16px;background:#f4f5ef;border-radius:14px}.more-nutrients summary,.nutrient-explainer summary{cursor:pointer;font-weight:600}.food-search-row{display:flex;gap:10px;align-items:center}.food-search-row input{flex:1;min-width:0}.food-search-row button{flex-shrink:0}@media(max-width:500px){.nutrient-grid{grid-template-columns:1fr}}

.food-detail-macros{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0}.food-detail-macros>div{padding:18px 12px;background:#f1f4eb;border-radius:14px}.food-detail-macros small{display:block;margin-bottom:8px}.food-detail-macros b{font-size:20px}@media(max-width:600px){.food-detail-macros{grid-template-columns:repeat(2,minmax(0,1fr))}}

button.food-description{display:block;flex:1;min-width:0;text-align:left;background:transparent;color:inherit;border:0;border-radius:6px;padding:8px 4px;box-shadow:none;cursor:pointer}button.food-description small{display:block;color:#65766d;margin-top:5px;font-weight:400}button.food-description:hover,button.food-description:focus-visible,button.food-description:active{text-decoration:underline;text-underline-offset:3px;background:transparent}button.food-description:focus-visible{outline:2px solid #315246;outline-offset:3px}

.cycle-position{border-top:5px solid var(--phase-colour);background:linear-gradient(125deg,var(--phase-soft),#fff 80%)}.cycle-day-number{text-align:center;min-width:100px}.cycle-day-number b{font-size:44px;line-height:1.1;display:block}.cycle-day-number small{font-size:10px}.cycle-phase-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:22px 0}.cycle-phase-strip span{border-top:4px solid #ddd;padding-top:10px;font-size:12px;opacity:.7}.cycle-phase-strip span.active{border-color:var(--phase-colour);font-weight:700;opacity:1}.cycle-today-note{font-size:13px}.cycle-calendar{gap:7px;margin-top:22px}.cycle-weekday{text-align:center;font-size:11px;color:#65766d}.cycle-date{padding:10px 3px;border:2px solid transparent;background:var(--phase-soft);color:#25493e;border-radius:12px;min-width:0;min-height:54px}.cycle-date b,.cycle-date small{display:block}.cycle-date small{font-size:10px;opacity:.65;margin-top:4px}.cycle-date.logged{border-bottom:4px solid #ce7c6b}.cycle-date.is-today{box-shadow:inset 0 0 0 1px #4c6d5d}.cycle-date.selected{border:2px solid #183c35;box-shadow:0 0 0 2px #dce7d8}.cycle-date:hover,.cycle-date:focus-visible{outline:2px solid #71866e;outline-offset:1px}.hormone-legend{display:flex;flex-wrap:wrap;gap:12px 20px;margin:18px 0;font-size:12px}.hormone-legend span{display:inline-flex;gap:7px;align-items:center}.hormone-legend i{width:10px;height:10px;border-radius:50%;display:inline-block}.hormone-scroll{overflow-x:auto;margin:14px 0}.hormone-chart{display:block;width:100%;min-width:580px;height:auto}.cycle-guidance{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.cycle-guidance p,.cycle-symptoms{line-height:1.65}.cycle-symptoms{padding-left:20px}.cycle-sources{font-size:12px}@media(max-width:700px){.cycle-guidance{grid-template-columns:1fr;gap:8px}.cycle-date{min-height:48px;padding:8px 2px}.cycle-phase-strip span{font-size:10px}.cycle-day-number{min-width:75px}.cycle-day-number b{font-size:36px}.cycle-legend{gap:8px;font-size:10px}}
