:root{color-scheme:light;font-family:Aptos,Segoe UI Variable,Segoe UI,sans-serif;--bg: #f5f1e8;--bg-strong: #efe8da;--surface: rgba(255, 252, 246, .94);--surface-strong: #fffaf1;--surface-border: rgba(34, 42, 52, .1);--text: #1f2b32;--muted: #64717c;--accent: #c86e48;--accent-strong: #a85836;--accent-soft: rgba(200, 110, 72, .12);--accent-cool: #285d53;--accent-cool-soft: rgba(40, 93, 83, .1);--success: #2f7b55;--success-soft: rgba(47, 123, 85, .12);--danger: #b65555;--shadow: 0 18px 50px rgba(60, 47, 28, .08);--radius-lg: 1.6rem;--radius-md: 1.1rem;--radius-sm: .85rem}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}html{background:var(--bg);overflow-x:hidden}body{margin:0;background:radial-gradient(circle at top right,rgba(200,110,72,.15),transparent 26rem),radial-gradient(circle at bottom left,rgba(40,93,83,.1),transparent 28rem),linear-gradient(180deg,#faf6ef 0%,var(--bg) 100%);color:var(--text);overflow-x:hidden}body,button,input,textarea,select{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}a{color:inherit}img{max-width:100%}.app-shell{display:grid;grid-template-columns:19rem minmax(0,1fr);min-height:100vh;width:100%;max-width:100%;overflow-x:clip}.app-sidebar{display:flex;flex-direction:column;gap:1rem;padding:1.3rem;background:#fff8edb8;border-right:1px solid var(--surface-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand-block h1,.hero-panel h2,.surface h2,.surface h3,.surface h4{margin:0;font-weight:700;letter-spacing:-.04em;text-wrap:balance}.brand-block h1{font-size:2rem}.brand-copy,.hero-copy,.muted-copy,.sync-badge p,.session-row p,.week-row p,.stat-card span,.selection-row span,.tip-card p:last-child,.link-card p:last-child,.flow-row p,.prefill-note,.gym-mobile-bar span,.summary-row span{color:var(--muted)}.eyebrow{margin:0 0 .45rem;color:#1f2b329e;font-size:.74rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.sidebar-guide{padding:1rem}.sidebar-nav,.mobile-nav{display:flex;gap:.55rem}.sidebar-nav{flex-direction:column}.nav-link,.mobile-nav-link{display:flex;gap:.18rem;min-height:3.5rem;border-radius:var(--radius-md);color:var(--muted);text-decoration:none;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.nav-link{flex-direction:column;justify-content:center;padding:.85rem 1rem;border:1px solid transparent}.mobile-nav-link{align-items:center;justify-content:center;padding:.8rem .95rem;border:1px solid transparent;white-space:nowrap}.nav-link:hover,.mobile-nav-link:hover,.nav-link.is-active,.mobile-nav-link.is-active{color:var(--text);background:var(--surface);border-color:#1f2b3214;transform:translateY(-1px)}.nav-label{color:inherit;font-weight:700}.nav-hint{color:inherit;font-size:.88rem}.sidebar-footer{margin-top:auto}.app-main{display:flex;flex-direction:column;min-width:0;width:100%;max-width:100%;overflow-x:clip}.mobile-topbar,.mobile-nav{display:none}.page-shell{display:flex;flex:1;flex-direction:column;gap:1.15rem;padding:1.3rem;min-width:0;width:100%;max-width:100%}.page-grid{display:grid;gap:1rem}.split-page{display:grid;grid-template-columns:21rem minmax(0,1fr);gap:1rem}.surface,.hero-panel{border:1px solid var(--surface-border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow)}.surface{padding:1.15rem}.hero-panel{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.4rem;background:linear-gradient(135deg,#c86e481f,#285d5314),var(--surface-strong)}.surface-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.hero-actions,.inline-actions,.chip-wrap{display:flex;flex-wrap:wrap;gap:.75rem}.primary-button,.secondary-button,.ghost-button,.chip-button,.exercise-chip,.inline-link{display:inline-flex;align-items:center;justify-content:center;min-height:3.2rem;padding:.82rem 1rem;border-radius:999px;border:1px solid transparent;color:var(--text);text-decoration:none;transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .15s ease,box-shadow .15s ease}.primary-button,.inline-link{background:var(--accent);color:#fff9f5;box-shadow:0 10px 25px #c86e4833}.primary-button:hover,.inline-link:hover{background:var(--accent-strong);transform:translateY(-1px)}.secondary-button{background:var(--surface-strong);border-color:#1f2b321f}.secondary-button:hover,.ghost-button:hover,.chip-button:hover,.exercise-chip:hover,.session-row:hover,.selection-row:hover,.flow-row:hover{border-color:#1f2b3229;background:#ffffffeb}.ghost-button{background:transparent;border-color:#1f2b3224}.chip-button,.exercise-chip{background:#ffffffb8;border-color:#1f2b321f}.chip-button.is-active,.exercise-chip.is-active,.secondary-button.is-complete,.exercise-chip.is-complete,.failure-toggle.is-active{background:var(--accent-soft);border-color:#c86e4859}.danger-button{color:var(--danger);border-color:#b6555540}.sync-badge{display:flex;align-items:center;gap:.75rem;padding:.85rem .95rem;border-radius:var(--radius-md);background:#ffffffb8;border:1px solid rgba(31,43,50,.08)}.sync-badge.compact{padding:.65rem .8rem}.sync-badge strong{display:block;text-transform:capitalize}.sync-dot{width:.75rem;height:.75rem;border-radius:50%;background:#8aa79e;box-shadow:0 0 0 .3rem #8aa79e2e}.sync-ready .sync-dot{background:var(--success);box-shadow:0 0 0 .3rem #2f7b5524}.sync-syncing .sync-dot{background:var(--accent);box-shadow:0 0 0 .3rem #c86e4824}.sync-error .sync-dot{background:var(--danger);box-shadow:0 0 0 .3rem #b6555524}.stats-grid,.field-grid,.guidance-grid,.coaching-grid{display:grid;gap:.85rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr))}.field-grid{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr))}.guidance-grid,.coaching-grid{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}.stat-card,.week-row,.session-row,.selection-row,.log-block,.rest-timer,.item-editor,.editor-block,.consistency-cell,.link-card,.tip-card,.set-card,.flow-row{border-radius:var(--radius-md);border:1px solid rgba(31,43,50,.09);background:#ffffffbd}.stat-card,.link-card,.tip-card,.set-card,.log-block,.item-editor{padding:1rem}.stat-card strong,.link-card h3{display:block;margin:.25rem 0 .4rem}.week-overview,.session-list,.selection-list,.stack-gap,.item-editor-list,.set-list,.bullet-stack,.exercise-flow-list,.set-card-list{display:flex;flex-direction:column;gap:.75rem}.week-row,.session-row,.selection-row,.log-set-row,.flow-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;padding:.95rem 1rem;text-align:left;color:inherit}.week-row.complete,.flow-row.is-complete,.set-card.is-complete,.consistency-cell.is-complete{border-color:#2f7b5538;background:var(--success-soft)}.week-row.is-today{border-color:#c86e4847;background:var(--accent-soft)}.selection-row.is-active,.flow-row.is-active{border-color:#c86e4852;background:#fff7f2f5}.flow-index{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:999px;background:var(--bg-strong);color:var(--text);font-weight:700}.pill{display:inline-flex;align-items:center;justify-content:center;min-height:2rem;padding:.3rem .72rem;border-radius:999px;background:var(--bg-strong);color:var(--text);font-size:.85rem;white-space:nowrap}.bullet-row{display:flex;gap:.75rem;align-items:flex-start}.bullet-row p{margin:0}.bullet-dot{flex:0 0 auto;width:.6rem;height:.6rem;margin-top:.48rem;border-radius:50%;background:var(--accent)}.editor-form,.field,.checkbox-field{display:flex;flex-direction:column;gap:.45rem}.field span{color:#1f2b32d6;font-size:.92rem;font-weight:600}.field input,.field textarea,.field select{width:100%;padding:.86rem .92rem;border-radius:var(--radius-sm);border:1px solid rgba(31,43,50,.12);background:#ffffffe0;color:var(--text)}.field textarea{resize:vertical;min-height:5rem}.field input::placeholder,.field textarea::placeholder{color:#8a8d90}.checkbox-field{flex-direction:row;align-items:center;gap:.7rem;min-height:3rem}.checkbox-field input{width:auto}.editor-block summary{cursor:pointer;padding:.35rem 0}.editor-form,.item-editor,.log-block{display:flex;flex-direction:column;gap:.85rem}.sidebar-surface,.link-card,.stat-card,.session-row,.selection-row,.flow-row{min-width:0}.rest-timer{display:flex;align-items:center;justify-content:space-between;gap:1rem}.rest-timer strong{font-size:2rem;font-variant-numeric:tabular-nums}.gym-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gym-workspace,.gym-hero{grid-column:1 / -1}.gym-workspace,.finish-review{scroll-margin-top:6rem}.set-card-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.85rem}.log-set-table{display:flex;flex-direction:column;gap:.5rem}.chart-frame{height:18rem}.consistency-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(4.7rem,1fr));gap:.75rem}.consistency-cell{display:flex;align-items:center;justify-content:center;min-height:4.2rem}.empty-state{display:flex;flex-direction:column;gap:.85rem;align-items:flex-start;padding:1rem;border-radius:var(--radius-md);background:#ffffffad;border:1px dashed rgba(31,43,50,.18)}.empty-state p{margin:0;color:var(--muted)}.inline-link{width:fit-content}.tip-card h4{margin:0 0 .35rem;font-size:1rem}.tip-card p:last-child,.link-card p:last-child,.flow-row p{margin:0}.link-card{display:flex;flex-direction:column;gap:.85rem}.flow-row strong{display:block}.prefill-note{margin:.5rem 0 0;font-size:.94rem}.failure-toggle{align-self:flex-start}.finish-summary{display:flex;flex-direction:column;gap:.65rem}.summary-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem .95rem;border-radius:var(--radius-sm);border:1px solid rgba(31,43,50,.09);background:#ffffffb8}.summary-row.is-complete{border-color:#2f7b5538;background:var(--success-soft)}.gym-mobile-bar{display:none}.gym-mobile-bar strong,.summary-row strong{display:block}.session-row,.selection-row,.flow-row{border:1px solid rgba(31,43,50,.09)}.chart-frame :is(svg,canvas){overflow:visible}:focus-visible{outline:3px solid rgba(200,110,72,.32);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@media(max-width:1080px){.app-shell,.split-page,.gym-grid{grid-template-columns:1fr}.app-sidebar{display:none}.mobile-topbar,.mobile-nav{display:flex}.mobile-topbar{position:sticky;top:0;z-index:20;align-items:center;justify-content:space-between;gap:1rem;padding:calc(.95rem + env(safe-area-inset-top)) 1rem .95rem;background:#faf6efeb;border-bottom:1px solid var(--surface-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.page-shell{padding:1rem 1rem calc(12.8rem + env(safe-area-inset-bottom))}.mobile-nav{position:fixed;left:0;right:0;bottom:0;gap:.4rem;justify-content:space-between;padding:.75rem .75rem calc(.75rem + env(safe-area-inset-bottom));overflow-x:auto;background:#faf6eff2;border-top:1px solid var(--surface-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.hero-panel{flex-direction:column;align-items:flex-start}.hero-actions,.primary-button,.secondary-button,.ghost-button,.inline-link{width:100%}.mobile-nav-link{flex:1 1 0;min-width:4.4rem}.gym-mobile-bar{position:fixed;left:.75rem;right:.75rem;bottom:calc(5.6rem + env(safe-area-inset-bottom));z-index:25;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem;border-radius:1.25rem;border:1px solid rgba(31,43,50,.1);background:#fffcf6f5;box-shadow:0 18px 35px #3c2f1c24;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.gym-mobile-bar>div{min-width:0}.gym-mobile-bar strong{margin-bottom:.18rem}.gym-mobile-bar .primary-button{width:auto;min-width:10.5rem;flex:0 0 auto}}@media(max-width:720px){.page-shell{padding-inline:.75rem}.surface,.hero-panel{padding:1rem;border-radius:1.25rem}.stats-grid,.field-grid,.guidance-grid,.coaching-grid{grid-template-columns:1fr}.week-row,.session-row,.selection-row,.flow-row,.log-set-row{flex-direction:column;align-items:flex-start}.pill{align-self:flex-start}.summary-row,.gym-mobile-bar{flex-direction:column;align-items:stretch}.gym-mobile-bar{bottom:calc(5.9rem + env(safe-area-inset-bottom))}.gym-mobile-bar .primary-button{width:100%;min-width:0}}@media(max-width:1080px)and (orientation:landscape){.page-shell{padding-bottom:calc(11.2rem + env(safe-area-inset-bottom))}.hero-actions>*{flex:1 1 12rem}.mobile-nav{justify-content:center}.gym-mobile-bar{bottom:calc(4.9rem + env(safe-area-inset-bottom))}}
