@import"https://fonts.googleapis.com/css2?family=Archivo:wght@400;600;800&display=swap";:root{--font-heading: "Archivo", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-body: "Archivo", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-weight-heading: 800;--font-serif: var(--font-heading);--font-sans: var(--font-body);--color-bg: #f3f2f2;--color-surface: #ffffff;--color-surface-alt: #eae9e9;--color-border: #201e1d;--color-divider: rgba(32, 30, 29, .3);--color-text: #201e1d;--color-text-muted: #6f6656;--color-primary: #ec3013;--color-primary-text: #ffffff;--color-danger: #ec3013;--color-warning-bg: #f6eccf;--color-warning-text: #7a5f16;--color-error-bg: #f7e1dc;--color-error-text: #9c2f22;--chart-accent: #ec3013;--radius: 0px;--border-width: 2px;color-scheme:light;--dark-color-bg: #000000;--dark-color-surface: #0d0d0d;--dark-color-surface-alt: #181818;--dark-color-border: #f5f5f5;--dark-color-divider: rgba(245, 245, 245, .28);--dark-color-text: #f5f5f5;--dark-color-text-muted: #9a9a9a;--dark-color-primary: #ec3013;--dark-color-primary-text: #ffffff;--dark-color-danger: #ec3013;--dark-color-warning-bg: #2a1a17;--dark-color-warning-text: #f0a08f;--dark-color-error-bg: #2a1512;--dark-color-error-text: #f2a79b;--dark-chart-accent: #ec3013}@media (prefers-color-scheme: dark){:root:not([data-theme=light]):not([data-theme=dark]){--color-bg: var(--dark-color-bg);--color-surface: var(--dark-color-surface);--color-surface-alt: var(--dark-color-surface-alt);--color-border: var(--dark-color-border);--color-divider: var(--dark-color-divider);--color-text: var(--dark-color-text);--color-text-muted: var(--dark-color-text-muted);--color-primary: var(--dark-color-primary);--color-primary-text: var(--dark-color-primary-text);--color-danger: var(--dark-color-danger);--color-warning-bg: var(--dark-color-warning-bg);--color-warning-text: var(--dark-color-warning-text);--color-error-bg: var(--dark-color-error-bg);--color-error-text: var(--dark-color-error-text);--chart-accent: var(--dark-chart-accent);color-scheme:dark}}:root[data-theme=dark]{--color-bg: var(--dark-color-bg);--color-surface: var(--dark-color-surface);--color-surface-alt: var(--dark-color-surface-alt);--color-border: var(--dark-color-border);--color-divider: var(--dark-color-divider);--color-text: var(--dark-color-text);--color-text-muted: var(--dark-color-text-muted);--color-primary: var(--dark-color-primary);--color-primary-text: var(--dark-color-primary-text);--color-danger: var(--dark-color-danger);--color-warning-bg: var(--dark-color-warning-bg);--color-warning-text: var(--dark-color-warning-text);--color-error-bg: var(--dark-color-error-bg);--color-error-text: var(--dark-color-error-text);--chart-accent: var(--dark-chart-accent);color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);-webkit-tap-highlight-color:transparent}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:600;letter-spacing:-.01em;text-wrap:balance}button,input,select,textarea{font-family:inherit;font-size:1rem;color:inherit}a{color:var(--color-primary)}.app-shell{display:flex;flex-direction:column;min-height:100vh;max-width:520px;margin:0 auto}.app-content{flex:1;padding:1rem 1rem 5.5rem;overflow-y:auto}.centered-message{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1.5rem;max-width:520px;margin:0 auto}.bottom-nav{position:fixed;bottom:0;left:0;right:0;max-width:520px;margin:0 auto;display:flex;background:var(--color-surface);border-top:1px solid var(--color-border);padding:.4rem 0 max(.4rem,env(safe-area-inset-bottom))}.bottom-nav-item{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;min-height:52px;padding:.3rem .1rem;text-decoration:none;color:var(--color-text-muted);border-radius:var(--radius);-webkit-tap-highlight-color:transparent;transition:color .15s ease}.bottom-nav-icon{display:flex}.bottom-nav-icon svg{width:24px;height:24px;display:block}.bottom-nav-label{font-size:.66rem;line-height:1;letter-spacing:.01em}.bottom-nav-item.active{color:var(--color-primary)}.bottom-nav-item.active .bottom-nav-label{font-weight:600}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:.5rem}.page-header h1{font-size:1.55rem;margin:0}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:1rem;margin-bottom:.75rem}.section-title{font-family:var(--font-serif);font-size:1.1rem;font-weight:600;margin:1.6rem 0 .6rem;color:var(--color-text);letter-spacing:-.01em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.6rem 1rem;border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-surface-alt);color:var(--color-text);cursor:pointer;font-weight:500}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-danger{background:transparent;border-color:var(--color-danger);color:var(--color-danger)}.btn-ghost{background:transparent;border-color:transparent}.btn-sm{padding:.35rem .65rem;font-size:.85rem}.btn-block{display:flex;width:100%}.form-group{display:flex;flex-direction:column;gap:.3rem;margin-bottom:.75rem;min-width:0}.form-group label{font-size:.8rem;color:var(--color-text-muted)}.form-group input[type=text],.form-group input[type=number],.form-group input[type=date],.form-group select{width:100%;max-width:100%;box-sizing:border-box}.form-row{display:flex;gap:.5rem;flex-wrap:wrap}.form-row>.form-group{flex:1;min-width:6rem}input[type=text],input[type=search],input[type=number],input[type=date],select,textarea{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius);padding:.55rem .65rem;color:var(--color-text)}textarea{resize:vertical;min-height:3rem}.checkbox-row{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--color-text-muted)}.notice{padding:1rem;border-radius:var(--radius)}.notice-warning{background:var(--color-warning-bg);color:var(--color-warning-text)}.notice-error{background:var(--color-error-bg);color:var(--color-error-text)}.empty-state{color:var(--color-text-muted);text-align:center;padding:2rem 1rem}.list-item{display:block;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:.85rem 1rem;margin-bottom:.6rem;text-decoration:none;color:var(--color-text)}.list-item-row{display:flex;justify-content:space-between;align-items:baseline}.list-item-meta{color:var(--color-text-muted);font-size:.85rem;margin-top:.2rem}.pagination-row{display:flex;justify-content:space-between;align-items:center;margin-top:1rem}.rest-timer{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:.5rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:.7rem 1rem;margin-bottom:1rem}.rest-timer-clock{font-family:var(--font-serif);font-size:1.5rem;font-weight:600;font-variant-numeric:tabular-nums}.rest-timer-clock.is-idle{color:var(--color-text-muted)}.rest-timer-actions{display:flex;gap:.4rem}.exercise-card{margin-bottom:1rem}.exercise-card-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.5rem}.exercise-card-header h3{margin:0;font-size:1rem}.exercise-card-subtitle{color:var(--color-text-muted);font-size:.8rem}.set-row{display:flex;align-items:center;gap:.5rem;padding:.4rem 0;border-top:1px solid var(--color-border);font-size:.9rem}.set-row:first-of-type{border-top:none}.set-row-label{width:1.75rem;color:var(--color-text-muted);flex-shrink:0}.set-row-value{flex:1}.set-row-actions{display:flex;gap:.3rem;flex-shrink:0}.set-row-edit{display:flex;flex-direction:column;align-items:stretch;gap:.6rem}.set-row-edit-heading{display:flex;align-items:center}.set-row-edit-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.set-row-edit-fields .form-group{margin-bottom:0}.set-row-edit-footer{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.warmup-badge{font-size:.7rem;color:var(--color-warning-text);border:1px solid var(--color-warning-text);border-radius:999px;padding:0 .4rem}.exercise-picker-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;display:flex;align-items:flex-end;justify-content:center;z-index:20}.exercise-picker{background:var(--color-bg);width:100%;max-width:520px;max-height:85vh;overflow-y:auto;border-top-left-radius:16px;border-top-right-radius:16px;padding:1rem;border:1px solid var(--color-border)}.exercise-option{width:100%;text-align:left;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:.6rem .8rem;margin-bottom:.5rem;cursor:pointer;color:var(--color-text)}.exercise-option-meta{color:var(--color-text-muted);font-size:.78rem;margin-top:.15rem}.unit-toggle{display:inline-flex;border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.unit-toggle button{border:none;background:var(--color-surface-alt);padding:.5rem 1rem;cursor:pointer;color:var(--color-text-muted)}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.3rem}.calendar-weekday{text-align:center;font-size:.75rem;color:var(--color-text-muted);padding-bottom:.25rem}.calendar-cell{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:.15rem;aspect-ratio:1 / 1;min-height:3.4rem;padding:.3rem .15rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);cursor:pointer;font-size:.7rem;overflow:hidden}.calendar-cell.empty{background:transparent;border-color:transparent;cursor:default}.calendar-cell.today{border-color:var(--color-primary)}.calendar-cell.selected{background:var(--color-surface-alt);box-shadow:inset 0 0 0 2px var(--color-primary)}.calendar-day-number{font-size:.85rem;font-weight:600}.calendar-marker{font-size:.62rem;line-height:1.1;text-align:center;border-radius:999px;padding:.05rem .35rem;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-marker.training{background:var(--color-primary);color:var(--color-primary-text)}.calendar-marker.rest{background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border)}.calendar-workout-check{position:absolute;top:.2rem;right:.3rem;font-size:.7rem}.calendar-workout-check.done{color:var(--color-primary)}.calendar-workout-check.in-progress{color:var(--color-warning-text)}.chart-wrap{position:relative;width:100%;touch-action:pan-y}.chart-svg{display:block;width:100%;height:auto}.chart-grid-line{stroke:var(--color-border);stroke-width:1}.chart-axis-label{fill:var(--color-text-muted);font-size:8px}.chart-line{fill:none;stroke:var(--chart-accent);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}.chart-dot{fill:var(--chart-accent)}.chart-dot-hit{fill:transparent;cursor:pointer}.chart-dot-active{fill:var(--color-text);stroke:var(--chart-accent);stroke-width:2}.chart-crosshair{stroke:var(--color-text-muted);stroke-width:1;stroke-dasharray:2 2;opacity:.6}.chart-bar{fill:var(--chart-accent);cursor:pointer}.chart-bar-zero{fill:var(--color-border)}.chart-overlay{fill:transparent}.chart-tooltip{position:absolute;transform:translate(-50%,-100%);background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius);padding:.35rem .55rem;font-size:.75rem;color:var(--color-text);white-space:nowrap;pointer-events:none;z-index:2;box-shadow:0 4px 14px #0000001f}.chart-tooltip-title{color:var(--color-text-muted);font-size:.68rem;margin-bottom:.1rem}.chart-tooltip-value{font-weight:600}.pr-list{list-style:none;margin:0;padding:0}.pr-row-headline{font-family:var(--font-serif);font-size:1.3rem;font-weight:600;font-variant-numeric:tabular-nums}.pr-row-sub{color:var(--color-text-muted);font-size:.8rem;margin-top:.15rem}.stats-table{width:100%;border-collapse:collapse;font-size:.85rem}.stats-table th,.stats-table td{text-align:right;padding:.4rem .3rem;border-top:1px solid var(--color-border)}.stats-table th:first-child,.stats-table td:first-child{text-align:left}.stats-table thead th{border-top:none;color:var(--color-text-muted);font-weight:500;font-size:.75rem}.text-muted{color:var(--color-text-muted)}.error-text{color:var(--color-danger);font-size:.85rem}h1,h2,h3,h4{font-weight:var(--font-weight-heading);letter-spacing:-.015em}.section-title{font-size:.72rem;font-weight:var(--font-weight-heading);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted)}.card,.exercise-card,.list-item,.rest-timer,.exercise-option,.calendar-cell{border-width:var(--border-width);border-radius:0;box-shadow:none}input[type=text],input[type=search],input[type=number],input[type=date],select,textarea{border-width:var(--border-width);border-radius:0}.btn{border-radius:0;border-width:var(--border-width);font-family:var(--font-heading);font-weight:var(--font-weight-heading);letter-spacing:.03em;text-transform:uppercase;justify-content:flex-start;text-align:left}.btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-primary-text)}.btn-danger{background:transparent;border-color:var(--color-primary);color:var(--color-primary)}.btn-ghost{border-color:transparent}.btn-sm{justify-content:center;text-align:center}.unit-toggle{border-width:var(--border-width);border-radius:0}.unit-toggle button{font-family:var(--font-heading);font-weight:var(--font-weight-heading);letter-spacing:.05em;text-transform:uppercase;font-size:.85rem}.unit-toggle button+button{border-left:var(--border-width) solid var(--color-border)}.unit-toggle button.active{background:var(--color-primary);color:var(--color-primary-text)}.bottom-nav{border-top-width:var(--border-width)}.calendar-marker,.warmup-badge{border-radius:0}.rest-timer-clock,.pr-row-headline,.stats-table td{font-variant-numeric:tabular-nums}.page-header{align-items:flex-start;margin-bottom:1.4rem}.page-header h1{font-size:2.15rem;line-height:1}.page-eyebrow{display:block;font-family:var(--font-heading);font-weight:800;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--color-primary);margin-bottom:.35rem}.hero-head{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.4rem}.hero-date{font-family:var(--font-heading);font-weight:800;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--color-primary)}.hero-title{font-size:2.15rem;line-height:1;margin:.35rem 0 0}.avatar-sq{width:44px;height:44px;flex-shrink:0;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-heading);font-weight:800;font-size:1rem;letter-spacing:-.02em;overflow:hidden}.avatar-sq img{width:100%;height:100%;object-fit:cover}.btn-cta{width:100%;border:none;cursor:pointer;background:var(--color-primary);color:#fff;font-family:var(--font-heading);font-weight:800;font-size:1.05rem;letter-spacing:.03em;text-transform:uppercase;text-align:left;padding:1.15rem 1.1rem;display:flex;align-items:center;gap:.5rem}.btn-cta:disabled{opacity:.5;cursor:not-allowed}.btn-arrow-icon{margin-left:auto;display:flex}.frame{border:var(--border-width) solid var(--color-border)}.frame-mt{margin-top:1.4rem}.frame-kicker{font-family:var(--font-heading);font-weight:800;font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--color-primary)}.frame-kicker.muted{color:var(--color-text-muted)}.plan-block-head{padding:1rem;border-bottom:var(--border-width) solid var(--color-border)}.plan-day-title{font-family:var(--font-heading);font-weight:800;font-size:1.5rem;letter-spacing:-.02em;margin-top:.35rem}.plan-ex-list{padding:.2rem 1rem}.plan-ex-row{display:flex;justify-content:space-between;gap:.75rem;padding:.62rem 0;border-bottom:1px solid var(--color-divider);font-size:.85rem}.plan-ex-row:last-child{border-bottom:none}.plan-ex-target{font-family:var(--font-heading);font-weight:800;opacity:.75;font-variant-numeric:tabular-nums;white-space:nowrap}.plan-cta{width:100%;border:none;border-top:var(--border-width) solid var(--color-border);background:none;color:var(--color-text);cursor:pointer;font-family:var(--font-heading);font-weight:800;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;text-align:left;padding:.9rem 1rem}.plan-cta:disabled{opacity:.5;cursor:not-allowed}.bw-block{padding:1rem;display:flex;align-items:flex-end;justify-content:space-between;gap:.75rem}.bw-value{font-family:var(--font-heading);font-weight:800;font-size:2.5rem;letter-spacing:-.03em;line-height:1;margin-top:.5rem;font-variant-numeric:tabular-nums}.bw-value .unit{font-size:1rem;opacity:.5}.bw-note{font-size:.7rem;opacity:.5;text-align:right;white-space:nowrap}.data-list{border-top:var(--border-width) solid var(--color-border)}.data-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.9rem 0;border-bottom:1px solid var(--color-divider);text-decoration:none;color:var(--color-text)}.data-row-title{font-family:var(--font-heading);font-weight:800;font-size:.95rem}.data-row-sub{font-size:.7rem;opacity:.5;margin-top:.12rem}.data-row-value{font-family:var(--font-heading);font-weight:800;font-size:.78rem;opacity:.65;font-variant-numeric:tabular-nums;white-space:nowrap}.data-row-value.big{font-size:1.25rem;opacity:1}.data-row-value.big .unit{font-size:.7rem;opacity:.5}.data-row-chevron{opacity:.5;flex-shrink:0;display:flex}.rest-timer{background:var(--color-text);color:var(--color-bg);border:none}.rest-timer-clock{color:var(--color-bg)}.rest-timer .btn{background:none;color:var(--color-bg);border:var(--border-width) solid var(--color-bg)}.rest-timer .btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.exercise-card-header{border-bottom:var(--border-width) solid var(--color-border);padding-bottom:.6rem}.calendar-grid{gap:0;border:var(--border-width) solid var(--color-border)}.calendar-cell{border:none;border-right:1px solid var(--color-divider);border-bottom:1px solid var(--color-divider)}.calendar-cell.today{box-shadow:inset 0 0 0 2px var(--color-primary)}.calendar-cell.selected{background:var(--color-surface-alt);box-shadow:inset 0 0 0 2px var(--color-text)}.settings-stack{display:flex;flex-direction:column;gap:1.25rem;margin-top:1.5rem}.settings-label{font-family:var(--font-heading);font-weight:800;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;opacity:.55;margin-bottom:.6rem}.seg-full{display:flex;border:var(--border-width) solid var(--color-border)}.seg-full button{flex:1;border:none;background:none;cursor:pointer;color:var(--color-text);font-family:var(--font-heading);font-weight:800;font-size:.78rem;letter-spacing:.05em;text-transform:uppercase;padding:.75rem .25rem}.seg-full button+button{border-left:var(--border-width) solid var(--color-border)}.seg-full button.active{background:var(--color-text);color:var(--color-bg)}.seg-full button:disabled{opacity:.5;cursor:not-allowed}.profile-id-row{display:flex;align-items:center;gap:1rem}.profile-id-name{font-family:var(--font-heading);font-weight:800;font-size:1.4rem;letter-spacing:-.02em}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;border-bottom:1px solid var(--color-divider);padding-bottom:.9rem}.bottom-nav-label{text-transform:uppercase;letter-spacing:.02em;font-size:clamp(.44rem,2.3vw,.55rem);font-weight:700;line-height:1.1;text-align:center;width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.2em;word-break:break-word}.plan-link{display:block;text-decoration:none;color:var(--color-text);padding:1rem;margin-bottom:.85rem}.plan-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.plan-name{font-family:var(--font-heading);font-weight:800;font-size:1.15rem;letter-spacing:-.01em}.plan-meta{font-size:.75rem;opacity:.6;margin-top:.35rem}.plan-tag{font-family:var(--font-heading);font-weight:800;font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;background:var(--color-primary);color:#fff;padding:.2rem .45rem;flex-shrink:0}.calendar-month{font-family:var(--font-heading);font-weight:800;font-size:1.25rem;text-transform:uppercase;letter-spacing:-.01em}.rest-timer select{background:transparent;color:var(--color-bg);border-color:var(--color-bg);margin-top:.35rem}.rest-timer select option{color:var(--color-text)}:root{--radius: 0px}*,*:before,*:after{border-radius:0!important}body,button,input,select,textarea,optgroup{font-family:Archivo,system-ui,sans-serif}h1,h2,h3,h4,h5,h6{font-family:Archivo,system-ui,sans-serif;font-weight:800;letter-spacing:-.015em}button,.btn,a.btn,[role=button]{font-family:Archivo,system-ui,sans-serif;font-weight:800;letter-spacing:.03em;text-transform:uppercase;text-align:left;justify-content:flex-start}.bottom-nav button,.icon-btn,button.icon,[aria-label]{justify-content:center;text-align:center}.card,[class*=card],[class*=Card],[class*=panel],[class*=tile]{border:2px solid var(--color-border)!important;box-shadow:none!important}[class*=toggle] [class*=active],[class*=segment][aria-pressed=true],[class*=seg].active{background:var(--color-text)!important;color:var(--color-bg)!important}.bottom-nav .active,[class*=nav] [class*=active]{color:var(--color-primary)!important}[class*=value],[class*=number],[class*=timer],[class*=stat],[class*=pr]{font-variant-numeric:tabular-nums}.exercise-card-header{border:0!important;border-bottom:var(--border-width) solid var(--color-border)!important}.btn-cta,.plan-cta{justify-content:flex-start}.btn-sm{text-align:center;justify-content:center}
