:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#151818;background:#f5f2ec;font-synthesis:none;text-rendering:optimizeLegibility}:root[data-theme=dark]{color:#eef2ed;background:#101415}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input{font:inherit}button{border:0;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}.app-shell{min-height:100vh;display:grid;grid-template-rows:auto auto 1fr auto;background:linear-gradient(180deg,rgba(60,105,98,.12),transparent 22rem),var(--page-bg, #f5f2ec)}:root[data-theme=dark] .app-shell{--page-bg: #101415}.topbar{display:flex;align-items:center;justify-content:space-between;padding:1rem;max-width:980px;width:100%;margin:0 auto}.brand,.icon-button,.bottom-nav button,.quick-grid button,.row-button,.main-button,.done-button,.secondary-actions button,.flow-back-button,.rest-actions button,.form-row button,.feeling-grid button,.segmented button,.file-import{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:8px;min-height:44px}.brand,.icon-button{background:transparent;color:inherit}.brand{font-weight:800;font-size:1.05rem}.icon-button{width:44px}.screen{width:100%;max-width:720px;margin:0 auto;padding:0 1rem 6rem}.stack{display:grid;gap:1rem}.headline{padding:1rem 0 .5rem}.headline p,.primary-action p,.section-title p,.muted,.next-line,.history-row small,.metric-strip span,.settings-panel p,.source-box small{color:#64706c;margin:0}:root[data-theme=dark] .headline p,:root[data-theme=dark] .primary-action p,:root[data-theme=dark] .section-title p,:root[data-theme=dark] .muted,:root[data-theme=dark] .next-line,:root[data-theme=dark] .history-row small,:root[data-theme=dark] .metric-strip span,:root[data-theme=dark] .settings-panel p,:root[data-theme=dark] .source-box small{color:#a8b6af}.headline h1,.section-title h1,.workout-action h1,.rest-screen h1{margin:.2rem 0;letter-spacing:0}.headline h1{font-size:clamp(2rem,8vw,3.4rem);line-height:1}.headline span{display:block;max-width:44rem;color:#31403b}:root[data-theme=dark] .headline span{color:#d1ddd7}.primary-action,.phase-coach,.settings-panel,.storage-warning,.done-panel{background:#ffffffc2;border:1px solid rgba(39,54,49,.12);border-radius:8px;padding:1rem}:root[data-theme=dark] .primary-action,:root[data-theme=dark] .phase-coach,:root[data-theme=dark] .settings-panel,:root[data-theme=dark] .storage-warning,:root[data-theme=dark] .done-panel{background:#1f2726d1;border-color:#e6eee91f}.primary-action{display:grid;gap:1rem}.phase-coach{display:grid;grid-template-columns:auto 1fr;gap:.75rem;align-items:start}.phase-coach-body{display:grid;gap:.35rem}.phase-coach-body span,.phase-coach-body small{color:#64706c}:root[data-theme=dark] .phase-coach-body span,:root[data-theme=dark] .phase-coach-body small{color:#a8b6af}.phase-coach-body p{margin:0}.phase-progress{height:8px;overflow:hidden;border-radius:999px;background:#246b5f29}.phase-progress span{display:block;height:100%;border-radius:inherit;background:#246b5f}.phase-coach button{grid-column:1 / -1;justify-self:stretch;min-height:44px;border-radius:8px;background:#246b5f;color:#fff;font-weight:800}.phase-coach-review{border-color:#7b523552}.phase-coach-overdue{border-color:#7c241861}.primary-action h2{margin:.1rem 0 0}.main-button,.done-button{width:100%;background:#246b5f;color:#fff;font-weight:800;min-height:56px}.quick-grid,.metric-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.quick-grid button,.row-button,.form-row button,.flow-back-button,.secondary-actions button,.rest-actions button,.file-import{background:#e7e4dc;color:#17201d;padding:.8rem .9rem}:root[data-theme=dark] .quick-grid button,:root[data-theme=dark] .row-button,:root[data-theme=dark] .form-row button,:root[data-theme=dark] .flow-back-button,:root[data-theme=dark] .secondary-actions button,:root[data-theme=dark] .rest-actions button,:root[data-theme=dark] .file-import{background:#26312f;color:#eff5f2}.metric-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-strip div{min-height:76px;display:grid;gap:.25rem;align-content:center;padding:.8rem;border-radius:8px;background:#7b52351f}:root[data-theme=dark] .metric-strip div{background:#94b08c24}.metric-strip strong{font-size:1rem}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:10;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.2rem;padding:.55rem;background:#faf8f3f0;border-top:1px solid rgba(39,54,49,.14);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}:root[data-theme=dark] .bottom-nav{background:#101415f0;border-color:#e6eee91f}.bottom-nav button{flex-direction:column;gap:.2rem;min-height:52px;color:inherit;background:transparent;font-size:.73rem}.bottom-nav button.active{background:#246b5f;color:#fff}.notice,.storage-warning{max-width:720px;width:calc(100% - 2rem);margin:0 auto 1rem}.notice{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;border-radius:8px}.notice.info{background:#dbe8e4;color:#17352f}.notice.success{background:#dcefd8;color:#214322}.notice.error{background:#f5d7d2;color:#591b14}.notice button{background:transparent;color:inherit;text-decoration:underline}.storage-warning{display:flex;gap:.8rem}.storage-warning button{margin-top:.75rem;min-height:40px;border-radius:8px;padding:.55rem .8rem;background:#246b5f;color:#fff;font-weight:800}.segmented{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.25rem}.segmented button,.feeling-grid button{white-space:nowrap;background:#e1ddd3;color:inherit;padding:.7rem .8rem}:root[data-theme=dark] .segmented button,:root[data-theme=dark] .feeling-grid button{background:#26312f}.segmented .selected,.feeling-grid .selected{background:#246b5f;color:#fff;box-shadow:inset 0 0 0 2px #f2d178}:root[data-theme=dark] .segmented .selected,:root[data-theme=dark] .feeling-grid .selected{background:#2c7f70;color:#fff}.list{display:grid;gap:.65rem}.row-button,.history-row{width:100%;justify-content:space-between;text-align:left;min-width:0}.row-button span,.history-row{display:grid;gap:.2rem;min-width:0}.row-button strong,.row-button small{min-width:0;overflow-wrap:anywhere}.row-button small{color:#65706d}:root[data-theme=dark] .row-button small{color:#a8b6af}.workout-action{min-height:auto;display:grid;gap:.75rem;align-content:start;padding-top:.25rem}.flow-back-button{justify-self:start;min-height:40px;padding:.55rem .75rem;font-weight:800}.workout-meta{display:flex;justify-content:space-between;gap:1rem;color:#64706c}.workout-action h1{font-size:clamp(1.7rem,8.5vw,3rem);line-height:1.05}.exercise-reference-link{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.12em}.instruction{display:grid;gap:.45rem;padding:.85rem;border-left:5px solid #246b5f;background:#246b5f1f;border-radius:8px}.instruction p{margin:0;font-size:clamp(1.35rem,6.5vw,2.1rem);font-weight:900;line-height:1.08}.log-controls,.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.log-controls label,.form-row label{display:grid;gap:.25rem;font-weight:700}.log-controls label{font-size:.85rem}input{width:100%;min-height:44px;border:1px solid rgba(39,54,49,.18);border-radius:8px;background:#fffc;color:inherit;padding:.7rem .8rem}:root[data-theme=dark] input{background:#1c2423;border-color:#e6eee929}.feeling-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.feeling-grid button:last-child:nth-child(odd){grid-column:1 / -1}.done-button{min-height:60px;font-size:1.1rem}.secondary-actions{display:grid;grid-template-columns:1fr;gap:.5rem}.rest-screen{min-height:calc(100vh - 9rem);display:grid;align-content:center;justify-items:center;gap:1rem;text-align:center}.rest-screen p{margin:0;font-size:1.6rem;font-weight:800}.rest-screen h1{font-size:clamp(5rem,26vw,9rem);line-height:.92;color:#246b5f}.rest-screen strong{font-size:1.15rem}.rest-next-detail{font-size:1.05rem;font-weight:800}.rest-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.history-row{padding:.85rem;border-radius:8px;background:#ffffffa3}:root[data-theme=dark] .history-row{background:#1f2726d1}.done-panel{min-height:18rem;display:grid;gap:.7rem;justify-items:center;align-content:center;text-align:center}.settings-panel,.source-box{display:flex;gap:.75rem;align-items:flex-start;min-width:0}.settings-panel>div{min-width:0}.settings-panel p{overflow-wrap:anywhere}.danger{color:#7c2418}:root[data-theme=dark] .danger{color:#ffb4a9}.file-import{position:relative;font-weight:700}.file-import input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0}.source-box{padding:.8rem;border-radius:8px;background:#246b5f1f;flex-wrap:wrap}.source-box span,.source-box small{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:break-word}.source-box small{flex-basis:100%;font-size:.72rem;line-height:1.35}@media (min-width: 760px){.primary-action{grid-template-columns:1fr auto;align-items:center}.main-button{min-width:14rem}.phase-coach{grid-template-columns:auto 1fr auto;align-items:center}.phase-coach button{grid-column:auto;min-width:12rem}.workout-action{gap:1rem}.workout-action h1{font-size:clamp(2.4rem,7vw,4.2rem);line-height:1}.instruction{gap:.6rem;padding:1rem}.instruction p{font-size:clamp(1.8rem,5vw,3rem)}.done-button{min-height:68px;font-size:1.25rem}.feeling-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.feeling-grid button:last-child:nth-child(odd){grid-column:auto}}@media (max-width: 520px){.metric-strip,.form-row,.rest-actions,.secondary-actions{grid-template-columns:1fr}}
