:root{--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-xl:24px;--radius-full:999px;--text-xs:0.75rem;--text-sm:0.8125rem;--text-base:0.875rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:2.125rem;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--dur-fast:0.12s;--dur:0.18s;--dur-slow:0.3s;--ease:cubic-bezier(0.4,0,0.2,1);--z-base:1;--z-dropdown:100;--z-sticky:500;--z-sidebar:1001;--z-modal:2000;--z-toast:3000}[data-brand=performance]{--font-display:"Clash Display","Inter Tight",system-ui,sans-serif;--font-body:"Inter Tight",system-ui,sans-serif;--accent:#c6ff3a;--accent-ink:#10131a}[data-brand=performance][data-theme=dark]{--bg:#0e0f14;--surface:#181b24;--surface-2:#212530;--sidebar:#13151d;--sidebar-fg:#f5f7fa;--text:#f5f7fa;--text-dim:#9aa0ac;--border:#272b38;--accent-text:#c6ff3a}[data-brand=performance][data-theme=light]{--bg:#eef1f4;--surface:#fff;--surface-2:#f4f6f8;--sidebar:#11131a;--sidebar-fg:#f5f7fa;--text:#11131a;--text-dim:#5b6472;--border:#e0e5eb;--accent-text:#5c8a00}[data-brand=clean]{--font-display:"Hanken Grotesk",system-ui,sans-serif;--font-body:"Hanken Grotesk",system-ui,sans-serif;--accent:#0f766e;--accent-ink:#fff;--pop:#ff6b4a}[data-brand=clean][data-theme=light]{--bg:#f4f7f8;--surface:#fff;--surface-2:#edf2f2;--sidebar:#fff;--sidebar-fg:#0f172a;--text:#0f172a;--text-dim:#64748b;--border:#e2e8e8;--accent-text:#0f766e}[data-brand=clean][data-theme=dark]{--bg:#0b1413;--surface:#13201e;--surface-2:#1b2c29;--sidebar:#0e1a18;--sidebar-fg:#ecf5f3;--text:#ecf5f3;--text-dim:#8fa8a3;--border:#23332f;--accent:#2dd4bf;--accent-ink:#06201c;--accent-text:#2dd4bf;--pop:#ff7e5f}[data-brand=bold]{--font-display:"Archivo",system-ui,sans-serif;--font-body:"Archivo",system-ui,sans-serif;--accent:#ff5a1f;--accent-ink:#fff}[data-brand=bold][data-theme=light]{--bg:#f7f6f3;--surface:#fff;--surface-2:#f0eee9;--sidebar:#111;--sidebar-fg:#f5f4f1;--text:#141414;--text-dim:#6b7280;--border:#e6e3dc;--accent-text:#e0480f}[data-brand=bold][data-theme=dark]{--bg:#0c0c0c;--surface:#161616;--surface-2:#1f1f1f;--sidebar:#0a0a0a;--sidebar-fg:#f5f4f1;--text:#f5f4f1;--text-dim:#9b9b96;--border:#2a2a2a;--accent-text:#ff7a45}[data-theme=light]{color-scheme:light;--success:#2bb673;--warning:#e8a317;--error:#e5484d;--info:#2e7dd1;--shadow-sm:0 1px 2px rgba(0,0,0,.06),0 1px 3px rgba(0,0,0,.1);--shadow-md:0 4px 12px rgba(0,0,0,.1),0 2px 4px rgba(0,0,0,.06);--shadow-lg:0 12px 32px rgba(0,0,0,.16),0 4px 8px rgba(0,0,0,.08)}[data-theme=dark]{color-scheme:dark;--success:#3dd68c;--warning:#f5b84b;--error:#f2555a;--info:#58a6ff;--shadow-sm:0 1px 2px rgba(0,0,0,.5);--shadow-md:0 6px 18px rgba(0,0,0,.55);--shadow-lg:0 18px 48px rgba(0,0,0,.6)}[data-brand=performance][data-theme=light]{--macro-protein:#1f9d5b;--macro-carbs:#c98a05;--macro-fat:#e2600f;--macro-fiber:#7e3fd1}[data-brand=performance][data-theme=dark]{--macro-protein:#3dd68c;--macro-carbs:#f5c451;--macro-fat:#ff8a4c;--macro-fiber:#b18bff}[data-brand=clean][data-theme=light]{--macro-protein:#188f63;--macro-carbs:#c08a00;--macro-fat:#d2611f;--macro-fiber:#7a45c7}[data-brand=clean][data-theme=dark]{--macro-protein:#4ade80;--macro-carbs:#f2c14e;--macro-fat:#ff8b57;--macro-fiber:#b79bff}[data-brand=bold][data-theme=light]{--macro-protein:#1e874f;--macro-carbs:#b8860b;--macro-fat:#c2410c;--macro-fiber:#6d28d9}[data-brand=bold][data-theme=dark]{--macro-protein:#43c97a;--macro-carbs:#e8b33d;--macro-fat:#ffa766;--macro-fiber:#a78bfa}:root{--background-primary:var(--bg);--background-secondary:var(--surface);--background-tertiary:var(--surface-2);--text-primary:var(--text);--text-secondary:var(--text-dim);--text-muted:var(--text-dim);--text-on-primary:var(--accent-ink);--border-primary:var(--border);--border-secondary:color-mix(in srgb,var(--border) 70%,var(--text-dim));--primary:var(--accent);--primary-dark:color-mix(in srgb,var(--accent) 82%,#000);--primary-light:color-mix(in srgb,var(--accent) 55%,#fff);--secondary:var(--surface-2);--danger:var(--error);--warn:var(--warning);--sidebar-background:var(--sidebar);--sidebar-text:var(--sidebar-fg);--sidebar-hover-background:color-mix(in srgb,var(--sidebar-fg) 10%,transparent);--button-primary-background:var(--accent);--button-primary-text:var(--accent-ink);--button-primary-hover-background:color-mix(in srgb,var(--accent) 86%,#000);--button-danger-background:var(--error);--button-danger-text:#fff;--button-danger-hover-background:color-mix(in srgb,var(--error) 85%,#000)}.l-main{width:100%;background-color:var(--background-primary)}.l-main--fill{display:flex;flex-direction:column;flex:1 1;min-height:0}.l-main__wrapper{display:flex;flex-direction:column;flex-grow:1;background-color:var(--background-primary)}.l-main__wrapper>*{padding:20px}.l-sidebar{width:248px;height:100%;background-color:var(--sidebar-background);color:var(--sidebar-text);padding:var(--space-4) var(--space-3);overflow-y:auto;flex-shrink:0;flex-grow:0;display:flex;flex-direction:column;gap:2px;border-right:1px solid var(--border-primary);transition:transform .3s ease-in-out}.l-sidebar__brand{padding:var(--space-2) var(--space-3) var(--space-5)}.l-sidebar__brand,.l-sidebar__brand-link{display:flex;align-items:center;gap:var(--space-3)}.l-sidebar__brand-link{min-width:0;text-decoration:none;color:inherit}.l-sidebar__brand-mark{width:32px;height:32px;border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;flex-shrink:0}.l-sidebar__brand-mark svg{width:19px;height:19px}.l-sidebar__brand-name{font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-xl);letter-spacing:-.02em;color:var(--sidebar-text)}.l-sidebar__item{color:var(--sidebar-text);text-decoration:none;padding:.7rem var(--space-3);display:flex;align-items:center;gap:var(--space-3);border-radius:var(--radius-sm);border-left:2px solid transparent;font-weight:var(--weight-medium);font-size:var(--text-base);transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease)}.l-sidebar__item:hover{background-color:color-mix(in srgb,var(--sidebar-text) 8%,transparent)}.l-sidebar__item--active{background-color:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent-text);border-left-color:var(--accent);font-weight:var(--weight-semibold)}.l-sidebar__item--nested{padding-left:2.5rem;font-size:var(--text-sm)}.l-sidebar__item--button{width:100%;background:none;border:none;border-left:2px solid transparent;font-family:inherit;text-align:left;cursor:pointer}.l-sidebar__icon{height:1.25rem;width:1.25rem;flex-shrink:0}.l-sidebar__ai-badge{height:1rem;width:1rem;flex-shrink:0;margin-left:auto;color:var(--accent)}.l-sidebar__count-badge{margin-left:auto;flex-shrink:0;min-width:1.35rem;padding:0 .35rem;border-radius:999px;background-color:var(--accent);color:var(--accent-ink);font-size:var(--text-xs);font-weight:var(--weight-semibold);line-height:1.35rem;text-align:center}.l-sidebar__rate-widget{cursor:pointer}.l-sidebar__rate-widget-body{display:flex;flex-direction:column;gap:.35rem;flex:1 1;min-width:0}.l-sidebar__rate-widget-top{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-2)}.l-sidebar__rate-widget-label{font-size:var(--text-sm);color:var(--text-secondary)}.l-sidebar__rate-widget-value{font-size:var(--text-sm);font-weight:var(--weight-semibold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.l-sidebar__rate-widget-bar{position:relative;height:4px;background-color:var(--background-tertiary);border-radius:var(--radius-full);overflow:hidden}.l-sidebar__rate-widget-bar-fill{height:100%;border-radius:var(--radius-full);transition:width .3s ease,background-color .2s ease}.l-sidebar__close{display:none;margin-left:auto;align-items:center;justify-content:center;background:transparent;border:0;color:var(--sidebar-text);cursor:pointer;padding:var(--space-2);min-width:44px;min-height:44px;border-radius:var(--radius-sm);transition:background-color var(--dur) var(--ease)}.l-sidebar__close:hover{background-color:color-mix(in srgb,var(--sidebar-text) 10%,transparent)}.l-sidebar__admin-toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;margin-bottom:var(--space-3);padding:.7rem var(--space-3);border:0;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--sidebar-text) 6%,transparent);color:var(--sidebar-text);cursor:pointer;text-align:left;transition:background-color var(--dur) var(--ease)}.l-sidebar__admin-toggle:hover{background-color:color-mix(in srgb,var(--sidebar-text) 12%,transparent)}.l-sidebar__admin-toggle-label{display:inline-flex;align-items:center;gap:var(--space-3);font-weight:var(--weight-medium);font-size:var(--text-base)}.l-sidebar__admin-toggle-dot{width:.5rem;height:.5rem;border-radius:var(--radius-full);background:var(--accent);flex-shrink:0}.l-sidebar__admin-toggle-track{position:relative;flex-shrink:0;width:38px;height:21px;border-radius:var(--radius-full);background:color-mix(in srgb,var(--sidebar-text) 24%,transparent);transition:background-color var(--dur) var(--ease)}.l-sidebar__admin-toggle-track:after{content:"";position:absolute;top:2px;left:2px;width:17px;height:17px;border-radius:var(--radius-full);background:var(--sidebar-text);transition:transform var(--dur) var(--ease),background-color var(--dur) var(--ease)}.l-sidebar__admin-toggle.is-on .l-sidebar__admin-toggle-track{background:var(--accent)}.l-sidebar__admin-toggle.is-on .l-sidebar__admin-toggle-track:after{transform:translateX(17px);background:var(--accent-ink)}.l-sidebar__client-selector{width:100%;margin-bottom:var(--space-3);padding:0 var(--space-3)}.l-sidebar__client-selector-label{display:block;margin-bottom:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-medium);color:color-mix(in srgb,var(--sidebar-text) 72%,transparent);letter-spacing:.02em}.l-burger-container{display:flex;justify-content:space-between;align-items:center;width:100%;padding:var(--space-3) var(--space-4)}@media(min-width:1200px){.l-burger-container{display:none}}.l-burger-brand{display:flex;align-items:center;gap:var(--space-2);text-decoration:none}.l-burger-brand-mark{width:30px;height:30px;border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;flex-shrink:0}.l-burger-brand-mark svg{width:18px;height:18px}.l-burger-brand-name{font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-lg);letter-spacing:-.02em;color:var(--text-primary)}.l-burger-icon{display:none;align-items:center;justify-content:center;padding:var(--space-2);min-width:44px;min-height:44px;border:0;border-radius:var(--radius-sm);background-color:transparent;color:var(--text-primary);cursor:pointer;z-index:var(--z-sidebar)}.l-burger-icon:hover{background-color:color-mix(in srgb,var(--text-primary) 8%,transparent)}@media(max-width:1200px){.l-burger-icon,.l-sidebar__close{display:flex}.l-sidebar{position:fixed;top:0;left:0;width:100%;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;transform:translateX(-100%);z-index:var(--z-sidebar);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;transition:transform var(--dur-slow) var(--ease)}.l-sidebar.is-open{transform:translateX(0)}.l-sidebar .l-sidebar__item{font-size:1.0625rem;padding:.9rem var(--space-3)}.l-sidebar .l-sidebar__item--nested{font-size:var(--text-md)}.l-sidebar .l-sidebar__icon{height:1.5rem;width:1.5rem}.l-sidebar .l-sidebar__brand-name{font-size:var(--text-2xl)}}.c-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.5rem 1rem;border:none;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-semibold);cursor:pointer;transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease),transform var(--dur) var(--ease);background-color:var(--accent);color:var(--accent-ink);height:-moz-fit-content;height:fit-content}.c-btn:hover:not(:disabled){background-color:var(--button-primary-hover-background)}.c-btn:focus{outline:none}.c-btn:disabled{opacity:.5;cursor:not-allowed}.c-btn--primary{background-color:var(--accent);color:var(--accent-ink)}.c-btn--primary:hover:not(:disabled){background-color:var(--button-primary-hover-background)}.c-btn--secondary{background-color:var(--background-secondary);color:var(--text-primary);border:1px solid var(--border-primary)}.c-btn--secondary:hover:not(:disabled){background-color:var(--background-tertiary);border-color:var(--accent)}.c-btn--ghost{background-color:transparent;color:var(--text-primary);padding:.5rem;min-width:32px;min-height:32px}.c-btn--ghost:hover:not(:disabled){background-color:var(--background-tertiary)}.c-btn--ghost svg{width:16px;height:16px}.c-btn--danger{background-color:var(--error);color:#fff}.c-btn--danger:hover:not(:disabled){background-color:var(--button-danger-hover-background)}.c-btn--small{padding:.35rem .75rem;font-size:var(--text-sm)}.c-btn.save{background-color:var(--success);color:#fff}.c-btn.delete{background-color:var(--error);color:#fff}.c-btn--ghost.c-btn--danger{background-color:transparent;color:var(--error)}.c-btn--ghost.c-btn--danger:hover:not(:disabled){background-color:color-mix(in srgb,var(--error) 12%,transparent)}.c-card{background:var(--background-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.c-card__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;padding:var(--space-5);border-bottom:1px solid var(--border-primary)}.c-card__title{margin:0;font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--text-primary)}.c-card__body{padding:var(--space-5)}.c-status{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--text-primary);white-space:nowrap}.c-status__dot{width:8px;height:8px;border-radius:var(--radius-full);flex-shrink:0;background:var(--text-dim)}.c-status--on .c-status__dot{background:var(--success);box-shadow:0 0 0 3px color-mix(in srgb,var(--success) 22%,transparent)}.c-chip,.c-status--off{color:var(--text-secondary)}.c-chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-semibold);background:var(--surface-2);border:1px solid var(--border-primary);white-space:nowrap}.c-chip--accent{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent-text);border-color:color-mix(in srgb,var(--accent) 30%,transparent)}.c-chip--elite{background:var(--accent);color:var(--accent-ink,var(--accent-text));border-color:var(--accent)}.c-avatar{width:36px;height:36px;border-radius:var(--radius-full);background:color-mix(in srgb,var(--accent) 22%,var(--surface-2));color:var(--accent-text);display:grid;place-items:center;font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-sm);text-transform:uppercase;flex-shrink:0}.c-table-wrap{width:100%;overflow-x:auto}.c-table{width:100%;border-collapse:collapse}.c-table thead th{text-align:left;padding:var(--space-3) var(--space-5);background:var(--surface-2);border-bottom:1px solid var(--border-primary);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);white-space:nowrap}.c-table tbody td{padding:var(--space-4) var(--space-5);border-top:1px solid var(--border-primary);font-size:var(--text-base);color:var(--text-primary);vertical-align:middle}.c-table tbody tr{transition:background-color var(--dur) var(--ease)}.c-table tbody tr:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}.c-table__actions{text-align:right;white-space:nowrap}@media(max-width:768px){.c-table thead{display:none}.c-table,.c-table tbody,.c-table td,.c-table tr{display:block;width:100%}.c-table tbody tr{margin-bottom:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--background-secondary)}.c-table tbody td{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-2) 0;border:0}.c-table tbody td:before{content:attr(data-label);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.c-table td.c-table__cell--full{padding-bottom:var(--space-3);margin-bottom:var(--space-2);border-bottom:1px solid var(--border-primary)}.c-table td.c-table__cell--full:before{display:none}.c-table__actions{text-align:left}}.c-disabled-hint{display:inline-flex}.toast-custom{background:var(--background-secondary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.1);padding:16px;font-family:inherit;font-size:14px;line-height:1.4;min-height:52px;display:flex;align-items:center;gap:12px}.toast-custom.toast-success{border-left:4px solid var(--success)}.toast-custom.toast-success .toast-icon{color:var(--success)}.toast-custom.toast-error{border-left:4px solid var(--error)}.toast-custom.toast-error .toast-icon{color:var(--error)}.toast-custom.toast-loading{border-left:4px solid var(--primary)}.toast-custom.toast-loading .toast-icon{color:var(--primary)}.toast-custom.toast-blank{border-left:4px solid var(--info)}.toast-custom.toast-blank .toast-icon{color:var(--info)}.toast-icon{font-size:20px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.toast-message{flex:1 1;font-weight:500}.toast-close{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px;border-radius:4px;font-size:16px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.toast-close:hover{background:var(--background-tertiary);color:var(--text-primary)}.toast-enter{transform:translateX(100%);opacity:0}.toast-enter-active{transition:all .3s ease-out}.toast-enter-active,.toast-exit{transform:translateX(0);opacity:1}.toast-exit-active{transform:translateX(100%);opacity:0;transition:all .2s ease-in}[data-theme=dark] .toast-custom{box-shadow:0 4px 12px rgba(0,0,0,.3)}.rate-limiter-monitor{display:flex;align-items:center;gap:8px;padding:4px 8px;background-color:var(--background-tertiary);border-radius:4px;font-size:12px;font-family:monospace;color:var(--text-primary);min-width:200px}.rate-limiter-monitor--healthy{border:2px solid var(--success)}.rate-limiter-monitor--moderate{border:2px solid var(--warning)}.rate-limiter-monitor--high{border:2px solid color-mix(in srgb,var(--warning) 55%,var(--error))}.rate-limiter-monitor--limited{border:2px solid var(--error)}.rate-limiter-monitor__dot{width:8px;height:8px;border-radius:50%}.rate-limiter-monitor__dot--blinking{animation:blink 1s infinite}.rate-limiter-monitor__label{font-weight:700;color:var(--text-secondary)}.rate-limiter-monitor__value{font-weight:700}.rate-limiter-monitor__alert{color:var(--error);font-weight:700}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:.3}}.athlete-select-header{max-width:360px;margin-bottom:1rem}.assigned-copy-banner{background-color:var(--background-tertiary);border-left:3px solid var(--accent);padding:.5rem .75rem;margin-bottom:1rem;color:var(--text-secondary);font-size:.9rem;border-radius:4px}.assigned-copy-banner--warn{border-left-color:var(--warning)}.exercise-card{position:relative;background-color:var(--background-secondary);border:1px solid var(--border-primary);border-radius:8px;overflow:hidden;transition:all .2s ease;cursor:pointer}.exercise-card:hover{border-color:var(--accent);box-shadow:var(--shadow-md)}.exercise-card__actions{position:absolute;top:8px;right:8px;display:flex;gap:8px;z-index:10}.exercise-card__action{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background-color:rgba(0,0,0,.7);color:#fff;cursor:pointer;transition:all .2s ease;font-size:14px}.exercise-card__action:hover{transform:scale(1.1)}.exercise-card__action--edit:hover{background-color:var(--primary)}.exercise-card__action--delete:hover{background-color:var(--error)}.exercise-card__media{aspect-ratio:1;background-color:var(--background-tertiary)}.exercise-card__media,.exercise-card__media-container{position:relative;width:100%;display:flex;align-items:center;justify-content:center}.exercise-card__media-container{height:100%}.exercise-card__media-image{width:100%;height:100%;object-fit:contain;border-radius:0}.exercise-card__media-video{position:relative;width:100%;height:100%}.exercise-card__media-play-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;background-color:rgba(0,0,0,.8);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;pointer-events:none}.exercise-card__media-play-overlay:before{content:"";position:absolute;width:60px;height:60px;border:2px solid hsla(0,0%,100%,.5);border-radius:50%;animation:pulse 2s infinite}.exercise-card__media-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--text-muted);font-size:14px}.exercise-card__media-placeholder svg{font-size:32px}.exercise-card__media-nav{position:absolute;top:50%;transform:translateY(-50%);width:32px;height:32px;padding:0;box-sizing:border-box;background-color:rgba(0,0,0,.7);color:#fff;border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:1;transition:background-color .2s ease,transform .2s ease;z-index:5}.exercise-card__media-nav:hover{background-color:rgba(0,0,0,.9);transform:translateY(-50%) scale(1.1)}.exercise-card__media-nav--prev{left:8px}.exercise-card__media-nav--next{right:8px}.exercise-card__media-dots{position:absolute;bottom:8px;right:8px;display:flex;gap:4px;z-index:5}.exercise-card__media-dot{width:8px;height:8px;border-radius:50%;padding:0;border:none;background-color:hsla(0,0%,100%,.5);cursor:pointer;transition:all .2s ease}.exercise-card__media-dot--active{background-color:hsla(0,0%,100%,.9);transform:scale(1.2)}.exercise-card__media-dot:hover{background-color:hsla(0,0%,100%,.8)}.exercise-card__content{padding:16px}.exercise-card__title{margin:0 0 8px;font-family:var(--font-body);font-size:16px;font-weight:600;color:var(--text-primary);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.exercise-card__author{margin:0;font-size:12px;color:var(--text-secondary)}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}@media(max-width:768px){.exercise-card__action{width:28px;height:28px;font-size:12px}.exercise-card__media-nav{width:28px;height:28px}.exercise-card__media-play-overlay{width:40px;height:40px;font-size:16px}.exercise-card__media-play-overlay:before{width:50px;height:50px}.exercise-card__content{padding:12px}.exercise-card__title{font-size:14px}.exercise-card__author{font-size:11px}}.nutrition-subnav{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-6)}.nutrition-subnav__tab{border:1px solid var(--border-primary);background:var(--background-secondary);color:var(--text-secondary);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);cursor:pointer;text-decoration:none;font-size:var(--text-base);font-weight:var(--weight-semibold);transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.nutrition-subnav__tab--active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.nutrition-subnav__tab:hover:not(.nutrition-subnav__tab--active){border-color:var(--accent);color:var(--text-primary)}.nutrition-foods__header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.nutrition-foods__header-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.nutrition-foods__header--stacked{flex-direction:column;align-items:stretch}.nutrition-foods__lede{color:var(--text-secondary);margin:.25rem 0 1rem}.nutrition-foods__search{position:relative;margin-bottom:1rem;max-width:480px}.nutrition-foods__search-icon{position:absolute;left:.85rem;top:50%;transform:translateY(-50%);width:.9rem;height:.9rem;color:var(--text-secondary);pointer-events:none}.nutrition-foods__search-input[type=text]{width:100%;padding:.6rem .75rem .6rem 2.5rem;margin-bottom:0;background-color:var(--background-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:6px;font-size:14px}.nutrition-foods__search-input[type=text]:focus{outline:none;border-color:var(--primary)}.nutrition-foods__error{color:var(--error);margin:.5rem 0}.nutrition-foods__empty{color:var(--text-secondary);padding:2rem 0;text-align:center}.nutrition-foods__hint{color:var(--text-secondary);font-size:.85rem;margin-top:.5rem}.nutrition-foods__table-wrapper{overflow-x:auto;border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.nutrition-foods__table{width:100%;border-collapse:collapse;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.nutrition-foods__table thead th{padding:var(--space-3) var(--space-4);text-align:left;background-color:var(--surface-2);border-bottom:1px solid var(--border-primary);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);white-space:nowrap}.nutrition-foods__table tbody tr{transition:background-color var(--dur) var(--ease)}.nutrition-foods__table tbody tr:hover{background-color:color-mix(in srgb,var(--accent) 6%,transparent)}.nutrition-foods__table tbody td{padding:var(--space-3) var(--space-4);border-top:1px solid var(--border-primary);color:var(--text-primary);font-size:var(--text-base);white-space:nowrap}.nutrition-foods__table tbody td:nth-child(n+3):nth-child(-n+6),.nutrition-foods__table thead th:nth-child(n+3):nth-child(-n+6){text-align:right}.nutrition-foods__table tbody td:last-child,.nutrition-foods__table thead th:last-child{text-align:center}.nutrition-foods__row-actions{display:none}.meal-grid{margin-top:var(--space-4)}.meal-card,.meal-grid{display:flex;flex-direction:column;gap:var(--space-3)}.meal-card{background-color:var(--background-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5);transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.meal-card:hover{border-color:color-mix(in srgb,var(--accent) 28%,var(--border-primary));box-shadow:var(--shadow-md)}.meal-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3)}.meal-card__name{margin:0;font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--text-primary)}.meal-card__status{display:inline-flex;align-items:center;gap:var(--space-1);flex-shrink:0;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em}.meal-card__status--published{background-color:color-mix(in srgb,var(--success) 16%,transparent);color:var(--success)}.meal-card__status--draft{background-color:var(--surface-2);color:var(--text-secondary)}.meal-card__status--in-use{background-color:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent-text)}.meal-card__description{margin:0;color:var(--text-secondary);font-size:var(--text-base);line-height:1.5}.meal-card__macros{display:flex;gap:var(--space-4);flex-wrap:wrap;align-items:baseline;color:var(--text-primary);font-size:var(--text-base);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.meal-card__macros strong{font-weight:var(--weight-bold)}.meal-card__denominator{color:var(--text-secondary);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em}.meal-card__batch{margin-top:calc(var(--space-2)*-1);color:var(--text-secondary);font-size:var(--text-sm)}.meal-card__logs{padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.meal-card__logs--some{background-color:color-mix(in srgb,var(--success) 16%,transparent);color:var(--success)}.meal-card__day-tag,.meal-card__logs--none{background-color:var(--surface-2);color:var(--text-secondary)}.meal-card__day-tag{align-self:center;padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.meal-card__meta{color:var(--text-secondary);font-size:var(--text-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.meal-card__actions,.meal-card__meta{display:flex;gap:var(--space-2);flex-wrap:wrap}.meal-editor__header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem}@media(max-width:600px){.meal-editor__header{flex-wrap:wrap}.meal-editor__header h1{order:-1;flex-basis:100%;margin:0;text-align:left;font-size:var(--text-2xl)}}.meal-editor__save{display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2)}.meal-editor__save-caption{margin:0;max-width:30ch;text-align:right;font-size:.8rem;line-height:1.35;color:var(--text-secondary)}.meal-editor__body{display:grid;grid-template-columns:1fr 320px;grid-gap:1.5rem;gap:1.5rem}@media(max-width:900px){.meal-editor__body{grid-template-columns:1fr}}.meal-editor__main{display:flex;flex-direction:column;gap:1rem;min-width:0}.meal-editor__section{min-width:0;margin:0;border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-5);background-color:var(--background-secondary)}@media(max-width:600px){.meal-editor__section{padding:var(--space-4)}}.meal-editor__section legend{padding:0 .5rem;font-weight:600;color:var(--text-primary)}.meal-editor__input,.meal-editor__textarea{width:100%;padding:.5rem;background-color:var(--background-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm)}.meal-editor__input:focus,.meal-editor__textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}.meal-editor__add-ingredient{margin-bottom:.75rem}.meal-editor__table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.meal-editor__ingredients{width:100%;min-width:320px;border-collapse:collapse}.meal-editor__ingredients td,.meal-editor__ingredients th{padding:.4rem .5rem;border-bottom:1px solid var(--border-primary);text-align:left;color:var(--text-primary)}.meal-editor__ingredients th{font-size:.85rem;color:var(--text-secondary);font-weight:600}.meal-editor__sidebar{position:-webkit-sticky;position:sticky;top:1rem;align-self:flex-start;display:flex;flex-direction:column;gap:1rem}@media(max-width:900px){.meal-editor__sidebar{position:static}}.ingredient-row__name{color:var(--text-primary)}.ingredient-row__brand{color:var(--text-secondary);font-size:.85rem}.ingredient-row__amount input,.ingredient-row__unit select{width:80px;padding:.3rem;background-color:var(--background-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:4px}.ingredient-row__macros{display:flex;flex-direction:column;gap:.1rem;font-size:.85rem;color:var(--text-secondary)}.ingredient-row__macros span:first-child{color:var(--text-primary)}.ingredient-row__actions{text-align:right}.ingredient-row__remove{background:none;border:none;padding:0;color:var(--error);cursor:pointer}.ingredient-note{margin:.2rem 0 0;color:var(--text-secondary);font-size:.8rem;line-height:1.35}.ingredient-readout{display:flex;flex-direction:column;gap:.15rem;padding:.5rem 0;border-bottom:1px solid var(--border-primary)}.ingredient-readout:last-child{border-bottom:none}.ingredient-readout__head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.ingredient-readout__name{color:var(--text-primary);font-weight:500}.ingredient-readout__brand{color:var(--text-secondary);font-size:.85rem;font-weight:400}.ingredient-readout__amount{flex-shrink:0;color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ingredient-readout__macros{display:flex;flex-wrap:wrap;gap:.6rem;color:var(--text-secondary);font-size:.8rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.macro-panel{background-color:var(--background-secondary);border:1px solid var(--border-primary);border-radius:8px;padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.macro-panel__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.macro-panel__title{margin:0;font-size:.95rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.macro-panel__subtitle{margin:calc(var(--space-3)*-1) 0 0;font-size:var(--text-xs);line-height:1.4;color:var(--text-secondary)}.macro-panel__delta-badge{font-size:.85rem;font-weight:600;padding:.15rem .55rem;border-radius:999px;background-color:var(--background-tertiary)}.macro-panel__delta-badge.macro-panel__row--ok{color:var(--success)}.macro-panel__delta-badge.macro-panel__row--warn{color:var(--warning)}.macro-panel__delta-badge.macro-panel__row--error{color:var(--error)}.macro-panel__row{display:flex;flex-direction:column;gap:.35rem}.macro-panel__row--kcal{padding-bottom:.75rem;border-bottom:1px solid var(--border-primary)}.macro-panel__row--kcal .macro-panel__row-head{align-items:baseline}.macro-panel__row-head{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;color:var(--text-primary)}.macro-panel__dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.macro-panel__dot--protein{background-color:var(--macro-protein)}.macro-panel__dot--carbs{background-color:var(--macro-carbs)}.macro-panel__dot--fat{background-color:var(--macro-fat)}.macro-panel__dot--fiber{background-color:var(--macro-fiber)}.macro-panel__row-label{font-weight:500;color:var(--text-primary)}.macro-panel__row-value{margin-left:auto;font-size:.95rem;color:var(--text-primary)}.macro-panel__row-value strong{font-weight:700}.macro-panel__row-value small{color:var(--text-secondary);font-weight:400}.macro-panel__row-delta{min-width:4.5rem;text-align:right;font-size:.85rem;font-weight:600;color:var(--text-secondary)}.macro-panel__kcal-value{font-size:2.25rem;font-weight:700;line-height:1;color:var(--text-primary)}.macro-panel__kcal-unit{color:var(--text-secondary);font-size:.95rem}.macro-panel__kcal-unit small{color:var(--text-tertiary,var(--text-secondary));margin-left:.25rem}.macro-panel__bar{width:100%;height:6px;background-color:var(--background-tertiary);border-radius:3px;overflow:hidden}.macro-panel__bar-fill{height:100%;border-radius:3px;transition:width .2s ease}.macro-panel__bar-fill--kcal{background-color:var(--text-primary)}.macro-panel__bar-fill--protein{background-color:var(--macro-protein)}.macro-panel__bar-fill--carbs{background-color:var(--macro-carbs)}.macro-panel__bar-fill--fat{background-color:var(--macro-fat)}.macro-panel__row--ok .macro-panel__row-delta{color:var(--success)}.macro-panel__row--warn .macro-panel__row-delta{color:var(--warning)}.macro-panel__row--warn .macro-panel__bar-fill{background-color:var(--warning)!important}.macro-panel__row--error .macro-panel__row-delta{color:var(--error)}.macro-panel__row--error .macro-panel__bar-fill{background-color:var(--error)!important}.macro-panel__macros{display:flex;flex-direction:column;gap:.75rem}.macro-panel__per-serving{border-top:1px solid var(--border-primary);padding-top:.75rem}.macro-panel__per-serving h4{margin:0 0 .4rem;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.macro-panel__per-serving ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.5rem;font-size:.85rem;color:var(--text-secondary)}.recipe-summary{background-color:var(--background-secondary);border:1px solid var(--border-primary);border-radius:8px;padding:1.25rem;display:flex;flex-direction:column;gap:.75rem}.recipe-summary__title{margin:0;font-size:.95rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.recipe-summary__kcal{display:flex;align-items:baseline;gap:.4rem;flex-wrap:wrap}.recipe-summary__kcal-value{font-size:2.25rem;font-weight:700;line-height:1;color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.recipe-summary__kcal-unit{color:var(--text-secondary);font-size:.95rem}.recipe-summary__denominator{margin-left:auto;color:var(--text-secondary);font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.recipe-summary__batch{margin:-.35rem 0 0;color:var(--text-secondary);font-size:.85rem}.recipe-summary__macros{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.recipe-summary__macro{display:flex;align-items:center;gap:.5rem}.recipe-summary__dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.recipe-summary__dot--protein{background-color:var(--macro-protein)}.recipe-summary__dot--carbs{background-color:var(--macro-carbs)}.recipe-summary__dot--fat{background-color:var(--macro-fat)}.recipe-summary__dot--fiber{background-color:var(--macro-fiber)}.recipe-summary__macro-label{color:var(--text-primary);font-weight:500}.recipe-summary__macro-value{margin-left:auto;color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.recipe-summary__empty,.recipe-summary__yield{margin:0;color:var(--text-secondary);font-size:.85rem}.recipe-summary__description,.recipe-summary__instructions{margin:0;color:var(--text-primary);font-size:.9rem;line-height:1.5;white-space:pre-wrap}.recipe-summary__section-title{margin:.5rem 0 0;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.recipe-summary__ingredients{display:flex;flex-direction:column}.plan-editor__header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}@media(max-width:600px){.plan-editor__header h1{order:-1;flex-basis:100%;margin:0;text-align:left;font-size:var(--text-2xl)}}.plan-editor__header-actions{display:flex;gap:.5rem;flex-wrap:wrap}.plan-editor__save-error{flex-basis:100%;margin:0;text-align:right;color:var(--error);font-size:.8rem}.plan-editor__body{display:grid;grid-template-columns:1fr 320px;grid-gap:1.5rem;gap:1.5rem}@media(max-width:900px){.plan-editor__body{grid-template-columns:1fr}}.plan-editor__main{display:flex;flex-direction:column;gap:1rem;min-width:0}.plan-editor__sidebar{position:-webkit-sticky;position:sticky;top:1rem;align-self:flex-start;min-width:0}@media(max-width:900px){.plan-editor__sidebar{position:static}}.plan-editor__targets-hint{margin:.4rem 0 .6rem;font-size:.85rem;line-height:1.4;color:var(--text-secondary)}.plan-editor__day-target{margin:0;padding-left:var(--space-2);border-left:2px solid var(--accent);font-size:.85rem;line-height:1.4;color:var(--text-primary)}.plan-editor__day-target--prescribed,.plan-editor__day-target--reference{border-left-color:var(--border-primary);color:var(--text-secondary)}.plan-editor__reference summary{cursor:pointer;font-weight:600;font-size:var(--text-sm)}.plan-editor__targets{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));grid-gap:.75rem;gap:.75rem}.plan-editor__targets label{display:flex;flex-direction:column;gap:.25rem}.plan-editor__targets label span{font-size:.85rem;color:var(--text-secondary)}.plan-editor__targets label input{padding:.4rem;background-color:var(--background-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:4px}.plan-editor__targets label input:focus{outline:none;border-color:var(--primary)}.plan-editor__slot-actions{display:flex;gap:.5rem;margin-bottom:.75rem;flex-wrap:wrap}.plan-days,.plan-editor__slots{display:flex;flex-direction:column;gap:.75rem}.plan-days{margin-bottom:.75rem}.plan-days__tabs{display:flex;flex-wrap:wrap;gap:.25rem;border-bottom:1px solid var(--border-primary)}.plan-days__tab{background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary);padding:.4rem .75rem;margin-bottom:-1px;cursor:pointer;font-size:var(--text-base);font-weight:var(--weight-semibold);transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.plan-days__tab:hover:not(.plan-days__tab--active){color:var(--text-primary)}.plan-days__tab--active{color:var(--accent);border-bottom-color:var(--accent)}.plan-days__tab--add{display:inline-flex;align-items:center;color:var(--text-secondary)}.plan-days__tab--add:hover{color:var(--accent)}.plan-days__tab-badge{display:inline-block;margin-left:.35rem;padding:.05rem .3rem;border:1px solid var(--border-primary);border-radius:999px;font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-secondary);white-space:nowrap}.plan-days__toolbar{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.plan-days__name-input{flex:1 1;min-width:140px;padding:.4rem .5rem;background-color:var(--background-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:4px}.plan-days__name-input:focus{outline:none;border-color:var(--accent)}.plan-days__actions{display:flex;gap:.25rem}.plan-days__target{display:flex;flex-direction:column;gap:.5rem}.plan-days__target-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.plan-days__target-legend{font-size:var(--text-sm);font-weight:600}.plan-days__target-reset{background:none;border:none;padding:0;color:var(--accent-text);font-size:var(--text-sm);text-decoration:underline;cursor:pointer}.plan-days__target-reset:disabled{cursor:default;opacity:.5}.plan-slot{background-color:var(--background-tertiary);border:1px solid var(--border-primary);border-radius:6px}.plan-slot__header{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-bottom:1px solid var(--border-primary)}.plan-slot__drag{background:none;border:none;color:var(--text-secondary);cursor:-webkit-grab;cursor:grab;font-size:1rem}.plan-slot__drag:active{cursor:-webkit-grabbing;cursor:grabbing}.plan-slot__name[type=text]{flex:1 1;min-width:0;width:auto;margin-bottom:0;background-color:var(--background-secondary);color:var(--text-primary);border:1px solid transparent;border-radius:4px;padding:.35rem .5rem;font-weight:600}.plan-slot__name[type=text]:focus{outline:none;border-color:var(--primary)}.plan-slot__name--invalid[type=text],.plan-slot__name--invalid[type=text]:focus{border-color:var(--error)}.plan-slot__name-counter{flex-shrink:0;font-size:.75rem;color:var(--text-secondary)}.plan-slot__name-counter--limit{color:var(--error)}.plan-slot__time[type=time]{width:auto;margin-bottom:0;background-color:var(--background-secondary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:4px;padding:.35rem .5rem;font-family:inherit}.plan-slot__remove{background:none;border:none;color:var(--error);cursor:pointer;font-size:1rem}.plan-slot__body{padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.plan-slot__meals{display:flex;flex-direction:column;gap:.4rem}.plan-slot__empty{color:var(--text-secondary);font-style:italic;margin:0;font-size:.9rem}.plan-slot__add-actions{display:flex;gap:.5rem;align-self:flex-start}@media(max-width:640px){.plan-slot__header{flex-wrap:wrap;padding:var(--space-2)}.plan-slot__name[type=text]{flex:1 1 calc(100% - var(--space-16))}.plan-slot__body{padding:var(--space-2)}}.plan-meal{display:flex;flex-direction:column;background-color:var(--background-secondary);border:1px solid var(--border-primary);border-radius:4px;padding:.4rem .6rem}.plan-meal__row{display:flex;align-items:center;gap:.5rem}.plan-meal__warning{display:inline-flex;align-items:center;gap:.25rem;margin-left:.5rem;padding:.1rem .4rem;border-radius:4px;background-color:color-mix(in srgb,var(--error) 12%,transparent);color:var(--error);font-size:.75rem;font-weight:500;cursor:help}.plan-meal__drag{background:none;border:none;color:var(--text-secondary);cursor:-webkit-grab;cursor:grab}.plan-meal__drag:active{cursor:-webkit-grabbing;cursor:grabbing}.plan-meal__expand{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.15rem .25rem}.plan-meal__expand:hover{color:var(--text-primary)}.plan-meal__body{flex:1 1;display:flex;flex-direction:column;gap:.15rem;min-width:0}.plan-meal__name{color:var(--text-primary);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plan-meal__macros{gap:.5rem;font-size:.8rem}.plan-meal__macros,.plan-meal__servings{display:flex;color:var(--text-secondary)}.plan-meal__servings{align-items:center;gap:.25rem;font-size:.85rem}.plan-meal__servings input[type=number]{width:60px;padding:.25rem .4rem;margin-bottom:0;background-color:var(--background-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:4px}.plan-meal__amount{display:flex;align-items:center;gap:.3rem;color:var(--text-secondary);font-size:.85rem}.plan-meal__amount input[type=number]{width:70px;padding:.25rem .4rem}.plan-meal__amount input[type=number],.plan-meal__amount select{margin-bottom:0;background-color:var(--background-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:4px}.plan-meal__amount select{width:72px;padding:.25rem .3rem}.plan-meal__remove{background:none;border:none;color:var(--error);cursor:pointer}.plan-meal__details{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border-primary)}.plan-meal__empty{color:var(--text-secondary);font-style:italic;margin:0;font-size:.85rem}.plan-meal__ingredient-table{width:100%;border-collapse:collapse;font-size:.8rem}.plan-meal__ingredient-table th{text-align:left;color:var(--text-secondary);font-weight:500;padding:.2rem .4rem;border-bottom:1px solid var(--border-primary)}.plan-meal__ingredient-table td{padding:.25rem .4rem;color:var(--text-primary);border-bottom:1px solid var(--border-primary)}.plan-meal__ingredient-table tr:last-child td{border-bottom:none}.plan-meal__brand{color:var(--text-secondary);font-size:.75rem}.plan-meal__extras{display:flex;flex-direction:column;gap:.3rem;margin-top:.3rem;padding-left:1.6rem}.plan-meal__note-add{align-self:flex-start;display:inline-flex;align-items:center;gap:.3rem;background:none;border:none;padding:0;color:var(--text-secondary);font-size:.75rem;cursor:pointer}.plan-meal__note-add:hover,.plan-meal__note-input{color:var(--text-primary)}.plan-meal__note-input{width:100%;padding:.25rem .4rem;margin-bottom:0;background-color:var(--background-tertiary);border:1px solid var(--border-primary);border-radius:4px;font-size:.8rem}.plan-meal__error{margin:.25rem 0 0;padding-left:1.6rem;color:var(--error);font-size:.75rem}.plan-meal__input--invalid{border-color:var(--error)!important}@media(max-width:640px){.plan-meal{padding:var(--space-2)}.plan-meal__row{flex-wrap:wrap}.plan-meal__body{flex:1 1 calc(100% - var(--space-16))}.plan-meal__name{white-space:normal;overflow:visible;overflow-wrap:anywhere;text-overflow:clip}.plan-meal__macros{flex-wrap:wrap}.plan-meal__error,.plan-meal__extras{padding-left:var(--space-2)}}.item-alts{display:flex;flex-direction:column;gap:.3rem}.item-alts__list{display:flex;flex-wrap:wrap;gap:.3rem;list-style:none;margin:0;padding:0}.item-alts__chip{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .55rem;border:1px solid var(--border-primary);border-radius:12px;background-color:var(--background-tertiary);font-size:.75rem;color:var(--text-primary)}.item-alts__chip-amount{background:none;border:none;padding:0;font:inherit;color:var(--text-secondary);cursor:pointer;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-underline-offset:2px}.item-alts__chip-amount:focus-visible,.item-alts__chip-amount:hover{color:var(--text-primary)}.item-alts__chip--editing{flex-wrap:wrap;gap:.4rem}.item-alts__chip-macros{color:var(--text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.item-alts__chip-remove{display:inline-flex;background:none;border:none;padding:0;color:var(--text-secondary);cursor:pointer}.item-alts__chip-remove:hover{color:var(--error)}.item-alts__add{align-self:flex-start;display:inline-flex;align-items:center;gap:.3rem;background:none;border:none;padding:0;color:var(--text-secondary);font-size:.75rem;cursor:pointer}.item-alts__add:hover{color:var(--text-primary)}.item-alts__picker{display:flex;align-items:center;gap:.5rem}.item-alts__picker>:first-child{flex:1 1;min-width:0}.item-alts__confirm{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--text-primary)}.item-alts__chip--editing input[type=number],.item-alts__confirm input[type=number]{width:70px;padding:.25rem .4rem;margin-bottom:0;background-color:var(--background-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:4px}.item-alts__chip--editing select,.item-alts__confirm select{width:72px;padding:.25rem .3rem;margin-bottom:0;background-color:var(--background-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:4px}.item-alts__confirm-name{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-alts__confirm-wrap{display:flex;flex-direction:column;gap:.2rem}.item-alts__error,.item-alts__error-mark{color:var(--error)}.item-alts__error{margin:0;font-size:.75rem}.item-alts__input--invalid{border-color:var(--error)!important}@media(max-width:640px){.item-alts__list{flex-direction:column;gap:var(--space-2)}.item-alts__chip{flex-wrap:wrap;background:none;border:none;border-left:2px solid var(--border-primary);border-radius:0;padding:0 0 0 var(--space-2)}.item-alts__chip-name{flex:1 1 100%;overflow-wrap:anywhere}.item-alts__chip-macros{white-space:normal}}.add-meal-modal__search{width:100%;padding:.5rem .75rem;background-color:var(--background-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:6px;margin-bottom:.75rem}.add-meal-modal__search:focus{outline:none;border-color:var(--primary)}.add-meal-modal__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem;max-height:50vh;overflow-y:auto}.add-meal-modal__item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background-color:var(--background-tertiary);border:1px solid var(--border-primary);border-radius:4px;color:var(--text-primary)}.add-meal-modal__item-body{display:flex;flex-direction:column;gap:.15rem}.add-meal-modal__item-body small{color:var(--text-secondary)}.ai-chat{display:flex;flex-direction:column;gap:.75rem;height:75vh;position:relative}.ai-chat--compact{height:100%;gap:.5rem}.ai-chat--empty .ai-chat__footer{flex:1 1;min-height:0;display:flex;flex-direction:column}.ai-chat--empty .ai-chat__input-wrap{flex:1 1;min-height:0}.ai-chat--empty .ai-chat__input{height:100%;resize:none}.ai-chat__empty-state{display:flex;flex-direction:column;gap:.5rem}.ai-chat__empty-hint{margin:0;color:var(--text-secondary);font-size:.9rem}.ai-chat__example-chips{display:flex;flex-wrap:wrap;gap:.5rem}.ai-chat__example-chip{background-color:var(--background-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:999px;padding:.35rem .75rem;font-size:.85rem;cursor:pointer;text-align:left}.ai-chat__example-chip:hover{border-color:var(--primary);color:var(--primary)}.ai-chat__context-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.ai-chat__profile-toggle{display:inline-flex;align-items:center;gap:.35rem;background:none;border:1px solid var(--border-primary);border-radius:999px;color:var(--text-secondary);padding:.2rem .6rem;font-size:.8rem;cursor:pointer}.ai-chat__profile-toggle:hover{border-color:var(--primary);color:var(--primary)}.ai-chat__header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.ai-chat__title{display:flex;align-items:center;gap:.5rem}.ai-chat__title h2{margin:0;color:var(--text-primary)}.ai-chat__model-badge{color:var(--text-secondary)}.ai-chat__budget-badge,.ai-chat__model-badge{background-color:var(--background-tertiary);border-radius:999px;font-size:.75rem;padding:.15rem .5rem}.ai-chat__budget-badge{color:var(--text-primary)}.ai-chat__budget-badge--credit{border:1px solid var(--primary);color:var(--primary)}.ai-chat__budget-badge--exhausted{background-color:var(--error);color:#fff;border-color:var(--error)}.ai-chat__header-actions{display:flex;gap:.5rem;align-items:center}.ai-chat__context{color:var(--text-secondary);font-size:.9rem;background-color:var(--background-tertiary);padding:.5rem .75rem;border-radius:4px}.ai-chat__context-hint{margin:.25rem 0 0;color:var(--text-secondary);font-size:.8rem}.ai-chat__body{flex-direction:column}.ai-chat__body,.ai-chat__messages{display:flex;gap:.5rem;flex:1 1;min-height:0}.ai-chat__messages{overflow-y:auto;padding:.5rem;border:1px solid var(--border-primary);border-radius:6px;flex-direction:column;scrollbar-gutter:stable;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.ai-chat__placeholder{color:var(--text-secondary);font-style:italic;margin:auto;text-align:center;max-width:320px}.ai-chat__message{border-radius:8px;padding:.5rem .75rem;max-width:88%}.ai-chat__message pre{margin:0;white-space:pre-wrap;font-family:inherit;color:var(--text-primary)}.ai-chat__message--user{align-self:flex-end;background-color:var(--primary)}.ai-chat__message--user pre{color:var(--text-on-primary)}.ai-chat__message--assistant{align-self:flex-start;background-color:var(--background-tertiary)}.ai-chat__thinking{color:var(--text-secondary);font-style:italic;align-self:flex-start;display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.ai-chat__thinking-timer{color:var(--text-secondary);opacity:.7;font-size:.85rem}.ai-chat__thinking-slow{color:var(--warning);font-size:.85rem}.ai-chat__system-note{align-self:center;text-align:center;color:var(--text-secondary);font-size:.8rem;font-style:italic;padding:.25rem 0}.ai-chat__error{color:var(--error)}.ai-chat__tool-feed{display:flex;flex-direction:column;gap:.2rem;align-self:flex-start;max-width:88%}.ai-chat__tool-line{display:flex;align-items:baseline;gap:.4rem;font-size:.8rem;color:var(--text-secondary)}.ai-chat__tool-line--ok .ai-chat__tool-line-icon{color:var(--success)}.ai-chat__tool-line--error .ai-chat__tool-line-icon{color:var(--error)}.ai-chat__tool-line-icon{flex-shrink:0;width:1em;text-align:center}.ai-chat__verification{align-self:stretch;border:1px solid var(--border-primary);border-radius:8px;background-color:var(--background-tertiary);padding:.6rem .75rem;display:flex;flex-direction:column;gap:.5rem}.ai-chat__verification-title{margin:0;font-size:.85rem;color:var(--text-primary)}.ai-chat__verification-day{display:flex;flex-direction:column;gap:.15rem}.ai-chat__verification-day-head{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}.ai-chat__verification-day-name{font-size:.8rem;font-weight:600;color:var(--text-primary)}.ai-chat__verification-status{font-size:.75rem}.ai-chat__verification-status--ok{color:var(--success)}.ai-chat__verification-status--off{color:var(--warning)}.ai-chat__verification-macros{display:flex;flex-wrap:wrap;gap:.25rem .9rem;font-size:.8rem;color:var(--text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ai-chat__rich{display:flex;flex-direction:column;gap:.5rem}.ai-chat__rich-prose{margin:0;font-family:inherit;color:var(--text-primary);font-size:inherit;line-height:1.45}.ai-chat__rich-prose>:first-child{margin-top:0}.ai-chat__rich-prose>:last-child{margin-bottom:0}.ai-chat__rich-prose blockquote,.ai-chat__rich-prose ol,.ai-chat__rich-prose p,.ai-chat__rich-prose pre,.ai-chat__rich-prose ul{margin:.35em 0}.ai-chat__rich-prose ol,.ai-chat__rich-prose ul{padding-left:1.25em}.ai-chat__rich-prose strong{font-weight:700;color:var(--text-primary)}.ai-chat__rich-prose em{font-style:italic}.ai-chat__rich-prose h1,.ai-chat__rich-prose h2,.ai-chat__rich-prose h3,.ai-chat__rich-prose h4{margin:.5em 0 .25em;font-size:.95rem;font-weight:600;color:var(--text-primary)}.ai-chat__rich-prose code{font-family:var(--font-mono,ui-monospace,monospace);font-size:.9em;padding:.05em .3em;border-radius:4px;background-color:var(--background-secondary)}.ai-chat__rich-prose pre{white-space:pre-wrap;padding:.4rem .5rem;border-radius:6px;background-color:var(--background-secondary);overflow-x:auto}.ai-chat__rich-prose pre code{padding:0;background:none}.ai-chat__rich-prose a{color:var(--accent);text-decoration:underline}.ai-chat__rich-prose table{width:100%;border-collapse:collapse;font-size:.85em;margin:.4em 0}.ai-chat__rich-prose td,.ai-chat__rich-prose th{text-align:left;padding:.25rem .4rem;border-bottom:1px solid var(--border-primary)}.ai-chat__rich-prose th{font-weight:600;color:var(--text-secondary)}.ai-chat__card{border:1px solid var(--border-primary);border-radius:8px;background-color:var(--background-secondary);padding:.55rem .7rem;display:flex;flex-direction:column;gap:.4rem}.ai-chat__card-title{margin:0;font-size:.85rem;font-weight:600;color:var(--text-primary)}.ai-chat__card-delta-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.35rem}.ai-chat__card-delta-item{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);grid-gap:.25rem .75rem;gap:.25rem .75rem;align-items:baseline;font-size:.8rem}.ai-chat__card-delta-label{font-weight:600;color:var(--text-primary);min-width:0;overflow-wrap:anywhere}.ai-chat__card-delta-values{display:flex;flex-wrap:wrap;align-items:baseline;gap:.3rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--text-secondary);justify-content:flex-end}.ai-chat__card-delta-to{color:var(--text-primary);font-weight:600}.ai-chat__card-delta-arrow,.ai-chat__card-delta-note{color:var(--text-secondary)}.ai-chat__card-delta-note{grid-column:1/-1;font-size:.75rem}.ai-chat__card-table-wrap{overflow-x:auto}.ai-chat__card-table{width:100%;border-collapse:collapse;font-size:.8rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ai-chat__card-table td,.ai-chat__card-table th{text-align:left;padding:.3rem .45rem;border-bottom:1px solid var(--border-primary);color:var(--text-primary);vertical-align:top}.ai-chat__card-table th{font-weight:600;color:var(--text-secondary);white-space:nowrap}.ai-chat__card-table tbody tr:last-child td{border-bottom:none}.ai-chat__continue{align-self:flex-start;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.ai-chat__continue-note{font-size:.85rem;color:var(--text-secondary)}.ai-chat__footer{display:block}.ai-chat__blocked{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem;padding:.5rem .6rem;border:1px solid var(--warning);border-radius:6px;background-color:var(--background-tertiary)}.ai-chat__blocked--hard{border-color:var(--error)}.ai-chat__blocked-text{font-size:.8rem;color:var(--text-primary)}.ai-chat__blocked-actions{display:flex;gap:.4rem;margin-left:auto}.ai-chat__athlete-pill{display:inline-flex;align-items:center;gap:.35rem;margin-bottom:.4rem;padding:.2rem .35rem .2rem .6rem;border:1px solid var(--border-primary);border-radius:999px;background-color:var(--background-tertiary);color:var(--text-primary);font-size:.8rem;max-width:100%}.ai-chat__athlete-pill span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-chat__athlete-pill-clear{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;padding:0;border:none;border-radius:50%;background:none;color:var(--text-secondary);cursor:pointer}.ai-chat__athlete-pill-clear:hover{background-color:var(--background-secondary);color:var(--text-primary)}.ai-chat__memory-note,.ai-chat__quirks-note{margin:.4rem 0 0;color:var(--text-secondary);font-size:.75rem}.ai-chat__quirks-note{opacity:.85}.ai-chat__input-wrap{display:grid;grid-template-columns:1fr;grid-template-rows:1fr}.ai-chat__input{grid-column:1;grid-row:1;width:100%;padding:.55rem 3.5rem .55rem .75rem;background-color:var(--background-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:10px;resize:vertical;font-family:inherit;line-height:1.4;box-sizing:border-box}.ai-chat__input:focus{outline:none;border-color:var(--primary)}.ai-chat__input:disabled{opacity:.6}.ai-chat__send-btn{grid-column:1;grid-row:1;align-self:end;justify-self:end;margin:0 .4rem .4rem 0;width:44px;height:44px;padding:0;background:transparent;border:none;border-radius:6px;color:var(--text-secondary);opacity:.45;display:inline-flex;align-items:center;justify-content:center;font-size:.95rem;cursor:pointer;transition:opacity .15s ease,color .15s ease,background-color .15s ease}.ai-chat__send-btn:hover:not(:disabled){opacity:1;background-color:var(--background-tertiary)}.ai-chat__send-btn:disabled{cursor:not-allowed;opacity:.25}.ai-chat__send-btn--active{opacity:1;color:var(--primary)}.ai-chat__send-btn--stop{color:var(--error);opacity:.85}.ai-chat__send-btn--stop:hover{opacity:1}.ai-chat__confirm-card{align-self:flex-start;background-color:var(--background-secondary);border:1px solid var(--accent);border-radius:8px;padding:1rem;max-width:480px;color:var(--text-primary)}.ai-chat__confirm-card h3{margin-top:0;font-size:1rem}.ai-chat__confirm-card p{margin:0}.ai-chat__confirm-card .ai-chat__confirm-detail{margin-top:.5rem;color:var(--text-secondary);font-size:.875rem}.ai-chat__confirm-macros{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-primary)}.ai-chat__confirm-warning{font-size:.8rem;color:var(--warning)}.ai-chat__confirm-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1rem}.ai-chat__exercise-card{align-self:flex-start;display:flex;align-items:center;gap:.75rem;max-width:88%;padding:.6rem .85rem;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:8px;background-color:var(--surface)}.ai-chat__exercise-card .ai-chat__exercise-card-text{display:flex;flex-direction:column;gap:.15rem;font-size:.85rem}.ai-chat__exercise-card .ai-chat__exercise-card-text strong{font-size:.8rem}.ai-chat__exercise-card .ai-chat__exercise-card-text span{color:var(--text-dim)}.ai-chat__exercise-card .c-btn{flex-shrink:0;white-space:nowrap}.ai-chat__confirm-card--handoff{border-color:var(--border-primary);border-left:3px solid var(--accent)}.ai-chat__confirm-card--handoff .ai-chat__handoff-meta{margin-top:.35rem;font-size:.8rem;color:var(--text-secondary)}.ai-chat__confirm-card--handoff .ai-chat__handoff-brief{margin-top:.75rem;padding:.6rem .7rem;border-radius:6px;background-color:var(--background-tertiary);color:var(--text-primary);font-size:.85rem;white-space:pre-wrap;max-height:12rem;overflow-y:auto}.ai-chat__confirm-card--handoff .ai-chat__handoff-note{margin-top:.6rem;font-size:.75rem;color:var(--text-secondary)}.custom-food-form{display:flex;flex-direction:column;gap:1rem}.custom-food-form__section{border:1px solid var(--border-primary);border-radius:6px;padding:.75rem}.custom-food-form__section legend{padding:0 .5rem;font-weight:600;color:var(--text-primary)}.custom-food-form__field{display:grid;grid-template-columns:110px 1fr;align-items:center;grid-gap:.5rem;gap:.5rem;margin-bottom:.5rem}.custom-food-form__field span{color:var(--text-secondary);font-size:.85rem}.custom-food-form__field input,.custom-food-form__field select{padding:.4rem;background-color:var(--background-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:4px}.custom-food-form__field input:focus,.custom-food-form__field select:focus{outline:none;border-color:var(--primary)}.custom-food-form__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:.5rem;gap:.5rem}.custom-food-form__grid .custom-food-form__field{grid-template-columns:1fr}.custom-food-form__grid .custom-food-form__field span{margin-bottom:.25rem}.custom-food-form__error{color:var(--error);font-size:.85rem;margin:.25rem 0 0}.custom-food-form__actions{display:flex;justify-content:flex-end;gap:.5rem}.plan-editor__ai-chat{margin-top:1rem;height:500px;display:flex;flex-direction:column}@media(max-width:900px){.plan-editor__ai-chat{display:none}}@media(min-width:901px){.plan-editor__ai-mobile-btn{display:none}}.plan-editor__ai-lock-banner{border-left:3px solid var(--primary);display:flex;align-items:center;gap:.5rem}.plan-editor__ai-lock-banner,.plan-editor__assigned-banner{background-color:var(--background-tertiary);padding:.5rem .75rem;margin-bottom:1rem;color:var(--text-secondary);font-size:.9rem;border-radius:4px}.plan-editor__assigned-banner{border-left:3px solid var(--accent)}.ai-undo-toast{display:flex;align-items:center;gap:.75rem;background-color:var(--background-secondary);border:1px solid var(--border-primary);border-radius:6px;padding:.5rem .75rem;color:var(--text-primary);box-shadow:var(--shadow-md)}.ai-undo-toast__label{font-size:.85rem}.ai-undo-toast__btn{background-color:var(--primary);color:var(--text-on-primary);border:none;border-radius:4px;padding:.3rem .6rem;cursor:pointer;display:flex;align-items:center;gap:.3rem;font-size:.8rem}.ai-undo-toast__btn:hover{filter:brightness(1.1)}.ai-profile{display:flex;flex-direction:column;gap:.75rem;margin-top:.75rem;padding:.75rem;background-color:var(--background-secondary);border:1px solid var(--border-primary);border-radius:6px}.ai-profile__loading{margin:.5rem 0 0;color:var(--text-secondary);font-size:.85rem}.ai-profile__hint{margin:0;color:var(--text-secondary);font-size:.8rem}.ai-profile__section{display:flex;flex-direction:column;gap:.75rem;margin:0;padding:.75rem;border:1px solid var(--border-primary);border-radius:6px;min-width:0}.ai-profile__section--hard{background-color:color-mix(in srgb,var(--warning) 10%,transparent);border-color:color-mix(in srgb,var(--warning) 55%,var(--border-primary))}.ai-profile__section--hard .ai-profile__legend svg{color:var(--warning)}.ai-profile__legend{display:flex;align-items:center;gap:.35rem;padding:0 .35rem;font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-primary)}.ai-profile__note{margin:0;color:var(--text-secondary);font-size:.75rem}.ai-profile__field{display:flex;flex-direction:column;gap:.3rem;min-width:0}.ai-profile__field>span{font-size:.8rem;font-weight:600;color:var(--text-primary)}.ai-profile__row{display:flex;flex-wrap:wrap;gap:.75rem}.ai-profile__row>.ai-profile__field{flex:1 1 10rem}.ai-profile__macros{display:grid;grid-template-columns:repeat(auto-fit,minmax(6rem,1fr));grid-gap:.5rem;gap:.5rem}.ai-profile__macro{display:flex;flex-direction:column;gap:.2rem;min-width:0}.ai-profile__macro>span{font-size:.72rem;color:var(--text-secondary)}.ai-profile__input,.ai-profile__select{width:100%;background-color:var(--background-primary);border:1px solid var(--border-primary);border-radius:4px;color:var(--text-primary);padding:.4rem .6rem;font-size:.85rem}.ai-profile__input[aria-invalid=true],.ai-profile__select[aria-invalid=true]{border-color:var(--error)}.ai-profile__required{color:var(--error)}.ai-profile__error{margin:0;color:var(--error);font-size:.75rem}.ai-profile__notes{background-color:var(--background-primary);border:1px solid var(--border-primary);border-radius:4px;color:var(--text-primary);padding:.4rem .6rem;font-size:.85rem;resize:vertical}.ai-profile__provenance{margin:0;color:var(--text-secondary);font-size:.75rem}.ai-profile__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem}.plan-brief{display:flex;flex-direction:column;width:100%;min-height:0}.plan-brief__scroll{flex:1 1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:var(--space-6);padding-bottom:var(--space-6)}.plan-brief__intro{display:flex;align-items:flex-start;gap:var(--space-3)}.plan-brief__badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:38px;height:38px;border-radius:var(--radius-md);background-color:var(--accent);color:var(--accent-ink);font-size:var(--text-md)}.plan-brief__title{margin:0;color:var(--text-primary);font-size:var(--text-xl)}.plan-brief__subtitle{margin:var(--space-1) 0 0;color:var(--text-secondary);font-size:var(--text-base);line-height:1.5}.plan-brief__section{display:flex;flex-direction:column;gap:var(--space-5);padding-top:var(--space-6);border-top:1px solid var(--border-primary)}.plan-brief__grid{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.plan-brief__grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.plan-brief__grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:640px){.plan-brief__grid--three,.plan-brief__grid--two{grid-template-columns:minmax(0,1fr)}}.plan-brief__field,.plan-brief__kcal-cell,.plan-brief__macro-cell{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.plan-brief__field>span,.plan-brief__kcal-cell>span,.plan-brief__macro-cell>span{font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.plan-brief__field>input,.plan-brief__field>select,.plan-brief__field>textarea,.plan-brief__kcal-cell>input,.plan-brief__macro-cell>input{width:100%;min-width:0;height:40px;margin:0;padding:0 var(--space-3);background-color:var(--background-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);font:inherit;font-size:var(--text-base);transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.plan-brief__field>input:focus,.plan-brief__field>select:focus,.plan-brief__field>textarea:focus,.plan-brief__kcal-cell>input:focus,.plan-brief__macro-cell>input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}.plan-brief__field>input[aria-invalid=true],.plan-brief__field>select[aria-invalid=true],.plan-brief__field>textarea[aria-invalid=true],.plan-brief__kcal-cell>input[aria-invalid=true],.plan-brief__macro-cell>input[aria-invalid=true]{border-color:var(--error)}.plan-brief__field>input[aria-invalid=true]:focus,.plan-brief__field>select[aria-invalid=true]:focus,.plan-brief__field>textarea[aria-invalid=true]:focus,.plan-brief__kcal-cell>input[aria-invalid=true]:focus,.plan-brief__macro-cell>input[aria-invalid=true]:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--error) 25%,transparent)}.plan-brief__field>textarea{height:auto;padding:var(--space-3);line-height:1.5;resize:vertical}.plan-brief__field>select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:var(--space-8);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238a8f98' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;cursor:pointer}.plan-brief__kcal-table{display:grid;grid-template-columns:repeat(auto-fill,minmax(104px,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.plan-brief__kcal-cell>span,.plan-brief__macro-cell>span{text-transform:none;letter-spacing:0;font-weight:var(--weight-medium)}.plan-brief__hint{margin:0;color:var(--text-secondary);font-size:var(--text-sm);line-height:1.5}.plan-brief__macro-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--space-3);gap:var(--space-3);align-items:end}.plan-brief__implied{grid-column:1/-1;justify-self:start;margin:0;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);background-color:var(--background-tertiary);color:var(--text-secondary);font-size:var(--text-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.plan-brief__implied--off{color:var(--warning)}.plan-brief__required{color:var(--error)}.plan-brief__error{margin:0;color:var(--error);font-size:var(--text-sm)}.plan-brief__warning{margin:0;color:var(--warning);font-size:var(--text-sm)}.plan-brief__actions{display:flex;flex-shrink:0;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--border-primary);background-color:var(--background-secondary)}@media(max-width:640px){.plan-brief__actions>.c-btn{flex:1 1;justify-content:center;white-space:nowrap}}.chip-input{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);min-height:40px;padding:var(--space-2);background-color:var(--background-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.chip-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}.chip-input__chip{gap:var(--space-1);background-color:var(--background-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:var(--radius-full);padding:2px var(--space-1) 2px var(--space-3);font-size:var(--text-sm)}.chip-input__chip,.chip-input__remove{display:inline-flex;align-items:center}.chip-input__remove{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:2px;border-radius:var(--radius-full);transition:color var(--dur) var(--ease)}.chip-input__remove:hover{color:var(--error)}.chip-input .chip-input__field{flex:1 1;min-width:120px;height:auto;margin:0;padding:0 var(--space-1);background:none;border:none;outline:none;color:var(--text-primary);font:inherit;font-size:var(--text-base)}.copy-recipe-modal__subject{margin:0 0 var(--space-4);color:var(--text-primary);font-weight:600}.copy-recipe-modal__field{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-4)}.copy-recipe-modal__field-label{color:var(--text-secondary);font-size:var(--text-sm)}.copy-recipe-modal__hint{margin:var(--space-3) 0 0;color:var(--text-secondary);font-size:var(--text-xs)}.copy-recipe-modal__actions{display:flex;gap:var(--space-2);justify-content:flex-end;margin-top:var(--space-4)}.recipe-drawer__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--border-primary)}.recipe-drawer__title{margin:0;font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-semibold);color:var(--text-primary)}.recipe-drawer__close{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;padding:var(--space-1);border:none;border-radius:var(--radius-sm);background:none;color:var(--text-secondary);cursor:pointer}.recipe-drawer__close:hover{background-color:var(--surface-2);color:var(--text-primary)}body:has(.c-ai-assistant-page){height:100dvh}body:has(.c-ai-assistant-page) .app-content,body:has(.c-ai-assistant-page) .l-main__wrapper,body:has(.c-ai-assistant-page) .l-shell,body:has(.c-ai-assistant-page) .l-shell__col{min-height:0}.c-ai-assistant-page{display:flex;flex-direction:column;gap:.5rem;flex:1 1;min-height:0}.c-ai-assistant-page__subtitle{margin:0;color:var(--text-secondary);font-size:.9rem}.c-ai-assistant-page .ai-chat{flex:1 1;height:auto;min-height:24rem}@media(max-width:1199px){.c-ai-assistant-page__subtitle{display:none}.c-ai-assistant-page .ai-chat{min-height:0}}@media(max-width:1199px){.l-main__wrapper:has(.c-ai-assistant-page)>*{padding:.5rem .75rem .75rem}}.ai-working-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .7rem;border:1px solid var(--accent);border-radius:999px;background-color:var(--background-tertiary);color:var(--text-primary);font-size:.85rem;cursor:pointer}.ai-working-chip:hover{background-color:var(--background-secondary)}.ai-working-chip__pulse{width:.5rem;height:.5rem;border-radius:50%;background-color:var(--accent);animation:ai-working-chip-pulse 1.4s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.ai-working-chip__pulse{animation:none}}@keyframes ai-working-chip-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}.calendar-page{--cal-workout:var(--accent);--cal-measurement:var(--success);--cal-nutrition:var(--pop);--cal-note:var(--warn)}.calendar-page__header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.calendar-page__lede{color:var(--text-secondary);margin:.25rem 0 0}.calendar-page__error{color:var(--danger)}.calendar-page__empty{color:var(--text-secondary);padding:var(--space-6) 0}.calendar-page__layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);grid-gap:var(--space-6);gap:var(--space-6);align-items:start}@media(max-width:900px){.calendar-page__layout{grid-template-columns:1fr}}.calendar-grid{background:var(--surface);border:1px solid var(--border-primary)}.calendar-grid__header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4)}.calendar-grid__month{margin:0;font-size:var(--text-lg);text-transform:capitalize}.calendar-grid__nav{background:none;border:none;color:var(--text-primary);cursor:pointer;padding:var(--space-2);display:flex;font-size:1.1rem}.calendar-grid__weekdays{display:grid;grid-template-columns:repeat(7,1fr);padding:0 var(--space-2)}.calendar-grid__weekday{text-align:center;color:var(--text-secondary);font-size:var(--text-xs);text-transform:uppercase;padding:var(--space-1) 0}.calendar-grid__weeks{display:grid;grid-template-columns:repeat(7,1fr);padding:var(--space-2);grid-gap:2px;gap:2px}.calendar-grid__cell{background:none;border:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--space-1) 0;color:var(--text-primary)}.calendar-grid__cell .calendar-grid__day{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid transparent}.calendar-grid__cell--outside .calendar-grid__day{color:var(--text-muted)}.calendar-grid__cell--today .calendar-grid__day{border-color:var(--accent);color:var(--accent);font-weight:var(--weight-bold)}.calendar-grid__cell--selected .calendar-grid__day{background:var(--accent);border-color:var(--accent);color:var(--accent-ink);font-weight:var(--weight-bold)}.calendar-grid__cell:hover:not(.calendar-grid__cell--selected) .calendar-grid__day{background:var(--background-secondary)}.calendar-grid__dots{display:flex;gap:3px;height:4px}.calendar-grid__dot{width:4px;height:4px}.calendar-day-panel{background:var(--surface);border:1px solid var(--border-primary);padding:var(--space-4)}.calendar-day-panel__title{margin:0 0 var(--space-3);font-size:var(--text-base);text-transform:capitalize}.calendar-day-panel__empty{color:var(--text-secondary)}.calendar-day-panel__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.calendar-day-panel__item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3);border-left:3px solid transparent;background:var(--background-secondary)}.calendar-day-panel__item--completed .calendar-day-panel__event-title{color:var(--text-secondary)}.calendar-day-panel__item--skipped .calendar-day-panel__event-title{color:var(--text-secondary);text-decoration:line-through}.calendar-day-panel__info{display:flex;flex-direction:column;gap:2px;min-width:0}.calendar-day-panel__event-title{font-weight:var(--weight-semibold)}.calendar-day-panel__meta,.calendar-day-panel__notes,.calendar-day-panel__status{color:var(--text-secondary);font-size:var(--text-sm)}.calendar-day-panel__notes{white-space:pre-wrap;overflow-wrap:anywhere}.calendar-day-panel__actions{display:flex;gap:var(--space-1);flex-shrink:0}.calendar-day-panel__action{background:none;border:1px solid var(--border-primary);color:var(--text-secondary);cursor:pointer;padding:var(--space-2);display:flex}.calendar-day-panel__action:hover{color:var(--text-primary);border-color:var(--accent)}.calendar-day-panel__action--danger:hover{color:var(--danger);border-color:var(--danger)}.calendar-form{display:flex;flex-direction:column;gap:var(--space-4)}.calendar-form__close{position:absolute;top:10px;right:10px;cursor:pointer;color:var(--text-primary);font-size:18px}.calendar-form__heading{color:var(--text-primary);margin:0 0 var(--space-4)}.calendar-form__row{display:flex;gap:var(--space-4)}.calendar-form__row .calendar-form__field{flex:1 1}.calendar-form__field{display:flex;flex-direction:column;gap:var(--space-1);color:var(--text-primary)}.calendar-form__field span{font-size:var(--text-sm);color:var(--text-secondary)}.calendar-form__field input,.calendar-form__field select,.calendar-form__field textarea{background:var(--background-secondary);border:1px solid var(--border-primary);color:var(--text-primary);padding:var(--space-2) var(--space-3);font:inherit}.calendar-form__asterisk{color:var(--danger);font-style:normal}.calendar-form__error{color:var(--danger);font-size:var(--text-sm);margin:0}.calendar-form__weekdays{display:flex;flex-wrap:wrap;gap:var(--space-2)}.calendar-form__weekday{background:var(--background-secondary);border:1px solid var(--border-primary);color:var(--text-secondary);cursor:pointer;padding:var(--space-2) var(--space-3)}.calendar-form__weekday--active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.calendar-form__actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-2)}body:has(.c-chat-page){height:100dvh}body:has(.c-chat-page) .l-main__wrapper{min-height:0}.c-chat-page{display:flex;flex-direction:column;flex:1 1;min-height:0}.c-chat-page__header{margin-bottom:1rem}.c-chat-page__header h1{margin:0}.c-chat-page__lede{color:var(--text-dim);margin:.25rem 0 0}.c-chat-page__layout{display:grid;grid-template-columns:320px 1fr;grid-gap:1rem;gap:1rem;flex:1 1;min-height:0}.c-chat-page__sidebar{display:flex;flex-direction:column;min-height:0;border:1px solid var(--border);background:var(--surface);overflow:hidden}.c-chat-page__athlete-select{padding:.75rem;border-bottom:1px solid var(--border)}.c-chat-page__athlete-select label{display:block;font-size:.75rem;color:var(--text-dim);margin-bottom:.35rem}.c-chat-page__main{display:flex;min-height:0;border:1px solid var(--border);background:var(--surface);overflow:hidden}@media(max-width:900px){.c-chat-page__lede{display:none}.c-chat-page__header{margin-bottom:.5rem}.c-chat-page__layout{grid-template-columns:1fr;grid-template-rows:minmax(0,42%) minmax(0,1fr)}}.c-chat-threads{display:flex;flex-direction:column;min-height:0;flex:1 1}.c-chat-threads__header{display:flex;align-items:center;justify-content:space-between;padding:.75rem;border-bottom:1px solid var(--border)}.c-chat-threads__title{margin:0;font-size:.95rem}.c-chat-threads__create{padding:.75rem;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.c-chat-threads__create-input{flex:1 1;min-width:0;padding:.5rem .6rem;background:var(--surface-2);border:1px solid var(--border);color:var(--text)}.c-chat-threads__error{width:100%;margin:0;color:var(--danger);font-size:.8rem}.c-chat-threads__empty{padding:1rem .75rem;color:var(--text-dim);font-size:.9rem}.c-chat-threads__list{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1 1;min-height:0}.c-chat-threads__archived-toggle button{width:100%;text-align:left;padding:.6rem .75rem;background:transparent;border:0;border-top:1px solid var(--border);color:var(--text-dim);font-size:.8rem;cursor:pointer}.c-chat-thread{position:relative;display:flex;align-items:stretch;border-bottom:1px solid var(--border)}.c-chat-thread--active{background:var(--surface-2);box-shadow:inset 3px 0 0 var(--accent)}.c-chat-thread__main{flex:1 1;min-width:0;text-align:left;background:transparent;border:0;padding:.65rem .75rem;cursor:pointer;color:var(--text)}.c-chat-thread__top{display:flex;justify-content:space-between;gap:.5rem}.c-chat-thread__title{font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.c-chat-thread__time{color:var(--text-dim);font-size:.72rem;flex-shrink:0}.c-chat-thread__bottom{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.2rem}.c-chat-thread__preview{color:var(--text-dim);font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.c-chat-thread__badge{flex-shrink:0;min-width:20px;height:20px;padding:0 6px;border-radius:10px;background:var(--accent);color:var(--accent-ink);font-size:.72rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.c-chat-thread__edit{flex:1 1;display:flex;gap:.4rem;padding:.5rem .6rem;align-items:center}.c-chat-thread__edit-input{flex:1 1;min-width:0;padding:.4rem .5rem;background:var(--surface-2);border:1px solid var(--border);color:var(--text)}.c-chat-thread__menu-wrap{position:relative;display:flex;align-items:center}.c-chat-thread__menu-btn{background:transparent;border:0;color:var(--text-dim);cursor:pointer;padding:0 .4rem}.c-chat-thread__menu-btn:hover{color:var(--text)}.c-chat-thread__menu{position:absolute;right:.3rem;top:100%;z-index:20;background:var(--surface-2);border:1px solid var(--border);box-shadow:var(--shadow-lg,0 8px 24px rgba(0,0,0,.25));min-width:150px}.c-chat-thread__menu button{display:flex;align-items:center;gap:.5rem;width:100%;text-align:left;padding:.55rem .7rem;background:transparent;border:0;color:var(--text);font-size:.85rem;cursor:pointer}.c-chat-thread__menu button:hover{background:var(--surface)}.c-chat-panel{display:flex;flex-direction:column;flex:1 1;min-width:0;min-height:0;position:relative}.c-chat-panel--empty{align-items:center;justify-content:center;color:var(--text-dim)}.c-chat-panel__header{padding:.75rem 1rem;border-bottom:1px solid var(--border)}.c-chat-panel__title{margin:0;font-size:1rem}.c-chat-panel__subtitle{margin:.1rem 0 0;color:var(--text-dim);font-size:.8rem}.c-chat-panel__messages{flex:1 1;min-height:0;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.4rem}.c-chat-panel__loading{color:var(--text-dim);text-align:center}.c-chat-panel__day{text-align:center;margin:.6rem 0}.c-chat-panel__day span{display:inline-block;padding:.2rem .7rem;background:var(--surface-2);border:1px solid var(--border);color:var(--text-dim);font-size:.72rem;border-radius:12px}.c-chat-msg{display:flex;align-items:flex-end;gap:.35rem;max-width:78%}.c-chat-msg--own{align-self:flex-end;flex-direction:row}.c-chat-msg--other{align-self:flex-start;flex-direction:row-reverse}.c-chat-msg__bubble{padding:.5rem .7rem;background:var(--surface-2);border:1px solid var(--border);min-width:0}.c-chat-msg--own .c-chat-msg__bubble{background:color-mix(in srgb,var(--accent) 16%,var(--surface-2));border-color:color-mix(in srgb,var(--accent) 30%,var(--border))}.c-chat-msg__quote{border-left:3px solid var(--accent);padding:.2rem .5rem;margin-bottom:.35rem;background:color-mix(in srgb,var(--text) 6%,transparent)}.c-chat-msg__quote-text{font-size:.78rem;color:var(--text-dim);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.c-chat-msg__text{margin:0;color:var(--text);font-size:.9rem;white-space:pre-wrap;word-break:break-word}.c-chat-msg__deleted{margin:0;color:var(--text-dim);font-style:italic;font-size:.85rem}.c-chat-msg__meta{display:flex;gap:.5rem;align-items:center;justify-content:flex-end;margin-top:.25rem}.c-chat-msg__time{color:var(--text-dim);font-size:.68rem}.c-chat-msg__seen{color:var(--accent-text);font-size:.68rem;font-weight:600}.c-chat-msg__actions{display:flex;flex-direction:column;gap:.2rem;opacity:0;transition:opacity .12s ease}.c-chat-msg:hover .c-chat-msg__actions{opacity:1}.c-chat-msg__action{background:transparent;border:0;color:var(--text-dim);cursor:pointer;padding:.15rem}.c-chat-msg__action:hover{color:var(--text)}.c-chat-image{display:block;padding:0;border:0;background:transparent;cursor:pointer;max-width:240px}.c-chat-image img{display:block;width:100%;max-width:240px;height:auto;object-fit:cover}.c-chat-image--loading{width:200px;background:var(--surface);border:1px dashed var(--border)}.c-chat-viewer{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;padding:2rem}.c-chat-viewer img{max-width:92vw;max-height:88vh;object-fit:contain}.c-chat-viewer__close{position:absolute;top:1rem;right:1rem;background:transparent;border:0;color:#fff;cursor:pointer}.c-chat-composer{border-top:1px solid var(--border);padding:.6rem}.c-chat-composer--archived{color:var(--text-dim);text-align:center;font-size:.85rem}.c-chat-composer__error{margin:0 0 .5rem;border-left:3px solid var(--error);color:var(--error);font-size:.8rem}.c-chat-composer__error,.c-chat-composer__reply{padding:.35rem .5rem;background:var(--surface-2)}.c-chat-composer__reply{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem;border-left:3px solid var(--accent)}.c-chat-composer__reply-text{font-size:.8rem;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.c-chat-composer__reply-cancel{background:transparent;border:0;color:var(--text-dim);cursor:pointer;flex-shrink:0}.c-chat-composer__row{display:flex;align-items:flex-end;gap:.5rem}.c-chat-composer__file{display:none}.c-chat-composer__attach,.c-chat-composer__send{flex-shrink:0;width:38px;height:38px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer}.c-chat-composer__attach:disabled,.c-chat-composer__send:disabled{opacity:.5;cursor:default}.c-chat-composer__send{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.c-chat-composer__input{flex:1 1;min-width:0;resize:none;height:38px;max-height:120px;margin-bottom:0;padding:.55rem .65rem;background:var(--surface-2);border:1px solid var(--border);color:var(--text);line-height:normal}.c-btn--sm{padding:.35rem .6rem;font-size:.8rem}.c-chat-thread__main:hover{background:var(--surface-2);color:var(--text)}.c-chat-composer__reply-cancel:hover,.c-chat-image:hover,.c-chat-msg__action:hover,.c-chat-thread__menu-btn:hover,.c-chat-viewer__close:hover{background:transparent}.c-chat-threads__archived-toggle button:hover{background:var(--surface-2)}.c-chat-composer__attach:hover{background:var(--surface-2);color:var(--text)}.c-chat-composer__send:hover{background:var(--accent);color:var(--accent-ink)}.c-feedback-page__lede{color:var(--text-dim);margin:.25rem 0 1rem}.c-feedback-page__filters{display:flex;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.c-feedback-page__filters label{display:flex;align-items:center;gap:.5rem;font-size:var(--text-sm);color:var(--text-dim)}.c-feedback-page__filters select{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.35rem .5rem}.c-feedback-page__error{color:var(--error)}.c-feedback-page__layout{display:grid;grid-template-columns:minmax(280px,380px) 1fr;grid-gap:1rem;gap:1rem;align-items:start}@media(max-width:900px){.c-feedback-page__layout{grid-template-columns:1fr}}.c-feedback-page__placeholder{color:var(--text-dim);border:1px dashed var(--border);border-radius:var(--radius-sm);padding:2rem;text-align:center}.c-feedback-list{list-style:none;margin:0;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);overflow:hidden}.c-feedback-list__empty{color:var(--text-dim);padding:1rem 0}.c-feedback-list__row{display:block;width:100%;text-align:left;background:none;border:none;border-bottom:1px solid var(--border);padding:.75rem;cursor:pointer;color:var(--text)}.c-feedback-list__row:hover{background-color:color-mix(in srgb,var(--text) 5%,transparent)}.c-feedback-list__row--active{background-color:color-mix(in srgb,var(--accent) 14%,transparent)}li:last-child .c-feedback-list__row{border-bottom:none}.c-feedback-list__top{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.c-feedback-list__date{margin-left:auto;font-size:var(--text-xs);color:var(--text-dim)}.c-feedback-list__excerpt{margin:.4rem 0 .15rem;font-size:var(--text-sm)}.c-feedback-list__email{margin:0}.c-feedback-chip,.c-feedback-list__email{font-size:var(--text-xs);color:var(--text-dim)}.c-feedback-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.1rem .5rem;border-radius:999px;font-weight:var(--weight-semibold);border:1px solid var(--border)}.c-feedback-chip--bug{color:var(--error);border-color:color-mix(in srgb,var(--error) 45%,transparent)}.c-feedback-chip--question,.c-feedback-chip--suggestion{color:var(--accent-text);border-color:color-mix(in srgb,var(--accent) 45%,transparent)}.c-feedback-chip--status-new{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 45%,transparent)}.c-feedback-chip--replied,.c-feedback-chip--status-resolved{color:var(--success);border-color:color-mix(in srgb,var(--success) 45%,transparent)}.c-feedback-chip--source-admin,.c-feedback-chip--source-app{color:var(--text-dim);background-color:color-mix(in srgb,var(--text) 8%,transparent);border-color:transparent}.c-feedback-chip--tier-elite{color:var(--accent-ink);background-color:var(--accent);border-color:transparent}.c-feedback-chip--surface{color:var(--text-dim);background-color:color-mix(in srgb,var(--text) 8%,transparent);border-color:transparent}.c-feedback-chip--frustration-high{color:var(--error);background-color:color-mix(in srgb,var(--error) 12%,transparent);border-color:transparent;font-weight:var(--weight-semibold)}.c-feedback-chip--frustration-medium{color:var(--warn);border-color:color-mix(in srgb,var(--warn) 45%,transparent)}.c-feedback-chip--frustration-low{color:var(--text-dim)}.c-feedback-detail{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:1rem}.c-feedback-detail__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.c-feedback-detail__chips{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.c-feedback-detail__actions{display:flex;align-items:center;gap:.5rem}.c-feedback-detail__status-label{font-size:var(--text-sm);color:var(--text-dim)}.c-feedback-detail__status-select{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.35rem .5rem}.c-feedback-detail__delete{display:inline-flex;align-items:center;gap:.35rem;color:var(--error)}.c-feedback-detail__meta{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:.5rem 1rem;gap:.5rem 1rem;margin:0 0 1rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.c-feedback-detail__meta-row dt{font-size:var(--text-xs);color:var(--text-dim)}.c-feedback-detail__meta-row dd{margin:0;font-size:var(--text-sm);overflow-wrap:anywhere}.c-feedback-detail__message{margin-bottom:1rem}.c-feedback-detail__message h3{font-size:var(--text-sm);color:var(--text-dim);margin:0 0 .35rem}.c-feedback-detail__message p{margin:0;white-space:pre-wrap}.c-feedback-detail__reply{margin-bottom:1rem;padding:.75rem;border:1px solid color-mix(in srgb,var(--success) 45%,transparent);border-radius:var(--radius-sm);background-color:color-mix(in srgb,var(--success) 8%,transparent)}.c-feedback-detail__reply h3{font-size:var(--text-sm);color:var(--success);margin:0 0 .35rem}.c-feedback-detail__reply p{margin:0;white-space:pre-wrap}.c-friction-reports{margin-top:2rem}.c-friction-reports__title{margin:0;font-size:var(--text-lg)}.c-friction-reports__lede{color:var(--text-dim);margin:.25rem 0 1rem}.c-friction-reports__empty{color:var(--text-dim);border:1px dashed var(--border);border-radius:var(--radius-sm);padding:1.25rem;text-align:center}.c-friction-reports__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));grid-gap:1rem;gap:1rem}@media(max-width:560px){.c-friction-reports__grid{grid-template-columns:1fr}}.c-friction-reports__card{display:flex;flex-direction:column;gap:.6rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);padding:.9rem}.c-friction-reports__card--high{border-color:color-mix(in srgb,var(--error) 55%,transparent)}.c-friction-reports__top{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.c-friction-reports__date{margin-left:auto;font-size:var(--text-xs);color:var(--text-dim)}.c-friction-reports__quote,.c-friction-reports__summary{margin:0;font-size:var(--text-sm);white-space:pre-wrap}.c-friction-reports__quote{padding-left:.6rem;border-left:3px solid var(--border);color:var(--text-dim);font-style:italic}.c-friction-reports__resolution{padding:.5rem .6rem;border:1px solid color-mix(in srgb,var(--success) 45%,transparent);border-radius:var(--radius-sm);background-color:color-mix(in srgb,var(--success) 8%,transparent)}.c-friction-reports__resolution h4{margin:0 0 .25rem;font-size:var(--text-xs);color:var(--success)}.c-friction-reports__resolution p{margin:0;font-size:var(--text-sm);white-space:pre-wrap}.c-friction-reports__blocked{margin:0;font-size:var(--text-xs);color:var(--warn)}.c-friction-reports__user{margin:0;font-size:var(--text-xs);color:var(--text-dim);overflow-wrap:anywhere}.c-friction-reports__actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-top:auto}.c-friction-reports__actions .c-btn{display:inline-flex;align-items:center;gap:.35rem}.c-friction-reports__delete{color:var(--error);margin-left:auto}.c-feedback-composer__label{display:block;font-size:var(--text-sm);color:var(--text-dim);margin-bottom:.35rem}.c-feedback-composer__textarea{width:100%;resize:vertical;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.5rem;font:inherit}.c-feedback-composer__footer{display:flex;align-items:center;justify-content:space-between;margin-top:.5rem}.c-feedback-composer__counter{font-size:var(--text-xs);color:var(--text-dim)}.c-feedback-composer__counter--over{color:var(--error)}.c-feedback-composer__error{color:var(--error);font-size:var(--text-sm);margin:.5rem 0 0}.c-feedback-attachments{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.c-feedback-attachments__item{display:block;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;background:var(--bg);line-height:0}.c-feedback-attachments__item img{width:108px;height:108px;object-fit:cover}.c-feedback-attachments__item--missing{display:flex;align-items:center;justify-content:center;width:108px;height:108px;color:var(--text-dim);font-size:1.5rem}.c-feedback-attachments__pending{font-size:var(--text-sm);color:var(--text-dim)}.c-feedback-modal-overlay{position:fixed;inset:0;z-index:var(--z-modal);display:flex;overflow-y:auto;padding:1rem;background-color:rgba(0,0,0,.75)}@media(max-width:560px){.c-feedback-modal-overlay{padding:.4rem}}.c-feedback-modal-overlay .c-feedback-modal-window{margin:auto!important;transform:none!important;width:100%;max-width:560px!important;border:1px solid var(--border-primary);border-radius:8px;background:var(--background-secondary);padding:20px;outline:none}@media(max-width:560px){.c-feedback-modal-overlay .c-feedback-modal-window{padding:14px 12px!important}}.c-feedback-modal{color:var(--text)}.c-feedback-modal form{padding:0;margin:0;background:none;border-radius:0;box-shadow:none;gap:0}.c-feedback-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.c-feedback-modal__title{margin:0;font-size:var(--text-xl)}.c-feedback-modal__lede{margin:.25rem 0 0;font-size:var(--text-sm);color:var(--text-dim)}.c-feedback-modal__close{background:none;border:none;color:var(--text-dim);cursor:pointer;line-height:0;padding:.5rem}.c-feedback-modal__close svg{width:1.4rem;height:1.4rem}.c-feedback-modal__close:hover{color:var(--text)}.c-feedback-modal__field{border:none;margin:0 0 1.15rem;padding:0}.c-feedback-modal__label{display:block;padding:0;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--text-dim);margin-bottom:.4rem}.c-feedback-modal__required{color:var(--error)}.c-feedback-modal__pills{display:flex;flex-wrap:wrap;gap:.4rem}.c-feedback-modal__pill{padding:.35rem .85rem;border-radius:999px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:var(--text-sm);cursor:pointer;transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease)}.c-feedback-modal__pill:hover{background-color:color-mix(in srgb,var(--text) 6%,transparent)}.c-feedback-modal__pill--active{background-color:var(--accent);color:var(--accent-ink);border-color:transparent;font-weight:var(--weight-semibold)}.c-feedback-modal__textarea{width:100%;resize:vertical;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.6rem;font:inherit}@media(max-width:560px){.c-feedback-modal__textarea{font-size:16px}}.c-feedback-modal__textarea[aria-invalid=true]{border-color:var(--error)}.c-feedback-modal__field-footer{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-top:.35rem}.c-feedback-modal__counter{font-size:var(--text-xs);color:var(--text-dim);white-space:nowrap}.c-feedback-modal__counter--over{color:var(--error)}.c-feedback-modal__error{margin:.35rem 0 0;color:var(--error);font-size:var(--text-sm)}.c-feedback-modal__thumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.c-feedback-modal__thumb{position:relative;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden;line-height:0}.c-feedback-modal__thumb img{width:84px;height:84px;object-fit:cover}.c-feedback-modal__thumb-remove{position:absolute;top:2px;right:2px;display:grid;place-items:center;width:1.25rem;height:1.25rem;border:none;border-radius:999px;cursor:pointer;background-color:rgba(0,0,0,.65);color:#fff;line-height:0}.c-feedback-modal__add-attachment{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem .85rem;border:1px dashed var(--border);border-radius:var(--radius-sm);background:none;color:var(--text-dim);font-size:var(--text-sm);cursor:pointer}.c-feedback-modal__add-attachment:hover:not(:disabled){color:var(--text);border-color:var(--accent)}.c-feedback-modal__add-attachment:disabled{opacity:.5;cursor:not-allowed}.c-feedback-modal__actions{display:flex;justify-content:flex-end;gap:.5rem}.c-feedback-history{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--border)}.c-feedback-history__toggle{display:inline-flex;align-items:center;gap:.4rem;background:none;border:none;padding:0;color:var(--text-dim);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer}.c-feedback-history__toggle:hover{color:var(--text)}.c-feedback-history__body{margin-top:.75rem;display:flex;flex-direction:column;gap:.6rem}.c-feedback-history__note{margin:0;font-size:var(--text-sm);color:var(--text-dim)}.c-feedback-history__error{margin:0;font-size:var(--text-sm);color:var(--error)}.c-feedback-history__entry{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);padding:.6rem .75rem}.c-feedback-history__entry-top{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.c-feedback-history__date{margin-left:auto;font-size:var(--text-xs);color:var(--text-dim)}.c-feedback-history__excerpt{margin:.4rem 0 0;font-size:var(--text-sm)}.c-feedback-history__reply{margin-top:.5rem;padding:.5rem .6rem;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--success) 45%,transparent);background-color:color-mix(in srgb,var(--success) 8%,transparent)}.c-feedback-history__reply h4{margin:0 0 .25rem;font-size:var(--text-xs);color:var(--success)}.c-feedback-history__reply p{margin:0;font-size:var(--text-sm);white-space:pre-wrap}.c-feedback-fab{position:fixed;right:var(--space-4);bottom:var(--space-4);z-index:var(--z-sticky);display:inline-flex;align-items:center;gap:.45rem;padding:.65rem 1.1rem;border:none;border-radius:999px;cursor:pointer;background-color:var(--accent);color:var(--accent-ink);font-size:var(--text-sm);font-weight:var(--weight-semibold);box-shadow:0 4px 14px rgba(0,0,0,.28);transition:transform var(--dur) var(--ease),background-color var(--dur) var(--ease)}.c-feedback-fab svg{width:1.15rem;height:1.15rem;flex-shrink:0}.c-feedback-fab:hover{transform:translateY(-2px)}.c-feedback-fab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:768px){.c-feedback-fab{display:none}}body.ReactModal__Body--open .c-feedback-fab{display:none}.dashboard__partial-data{margin-bottom:1.5rem;padding:.75rem 1rem;background:var(--background-secondary);border-left:3px solid var(--warning);border-radius:8px;color:var(--text-secondary)}.dashboard__header{margin-bottom:2rem}.dashboard__header h1{color:var(--text-primary);margin-bottom:.5rem}.dashboard__header h2{color:var(--text-secondary);font-size:1.25rem;font-weight:500;margin-top:2rem;margin-bottom:1rem}.dashboard__alerts{margin-bottom:2rem}.dashboard__alerts h2{color:var(--warning);font-size:1.1rem;margin-bottom:.75rem}.dashboard__alerts .alert-list{display:flex;flex-direction:column;gap:.5rem}.dashboard__alerts .alert-card{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--background-secondary);border-left:3px solid var(--warning);border-radius:8px}.dashboard__alerts .alert-card__content{display:flex;gap:.5rem;align-items:center}.dashboard__alerts .alert-card__content strong{color:var(--text-primary)}.dashboard__alerts .alert-card__content span{color:var(--text-secondary);font-size:.875rem}.dashboard__alerts .alert-card__date{color:var(--text-muted);font-size:.8rem}.dashboard__section{margin-bottom:2rem}.dashboard__section h2{color:var(--text-primary);font-size:1.25rem;margin-bottom:1rem}.dashboard__empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;background:var(--background-secondary);border:2px dashed var(--border-primary);border-radius:12px;text-align:center}.dashboard__empty-state p{color:var(--text-secondary);font-size:1.125rem;margin-bottom:1.5rem}.dashboard__empty-state .c-btn{margin-top:.5rem}.dashboard__cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));grid-gap:1.5rem;gap:1.5rem;margin-bottom:2rem}@media(max-width:768px){.dashboard__cards-grid{grid-template-columns:1fr}}.workout-card{background:var(--background-secondary);border:1px solid var(--border-primary);border-radius:12px;padding:1.5rem;transition:all .2s ease}.workout-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.workout-card__header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-primary)}.workout-card__avatar{width:48px;height:48px;border-radius:50%;background:var(--primary);color:var(--text-on-primary);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.125rem;flex-shrink:0}.workout-card__athlete-info{flex:1 1;min-width:0}.workout-card__athlete-info h3{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin:0 0 .25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workout-card__athlete-info p{color:var(--text-secondary);font-size:.875rem;margin:0}.workout-card__content,.workout-card__workout-info{margin-bottom:1rem}.workout-card__workout-info h4{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 .25rem}.workout-card__workout-info .workout-day{color:var(--text-secondary);font-size:.875rem;margin-bottom:.5rem}.workout-card__workout-info .workout-date{color:var(--text-muted);font-size:.875rem}.workout-card__metrics{display:flex;flex-wrap:wrap;gap:1rem;padding:1rem;background:var(--background-tertiary);border-radius:8px;margin-bottom:1rem}.workout-card__metric{flex:1 1;min-width:100px}.workout-card__metric .metric-label{color:var(--text-secondary);font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem}.workout-card__metric .metric-value{color:var(--text-primary);font-size:1.25rem;font-weight:600}.workout-card__footer{display:flex;justify-content:flex-end}.workout-card__footer .c-btn{font-size:.875rem;padding:.5rem 1rem}.workout-card--empty .workout-card__content{padding:2rem 1rem;text-align:center}.workout-card--empty .workout-card__content p{color:var(--text-secondary);font-style:italic}.workout-card--empty .workout-card__footer{display:none}.workout-details-modal__header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-primary)}.workout-details-modal__header h2{color:var(--text-primary);margin:0 0 .5rem}.workout-details-modal__header .workout-meta{display:flex;gap:1rem;flex-wrap:wrap}.workout-details-modal__header .workout-meta span{color:var(--text-secondary);font-size:.875rem}.workout-details-modal__summary{display:flex;gap:1rem;padding:1rem;background:var(--background-tertiary);border-radius:8px;margin-bottom:2rem;flex-wrap:wrap}.workout-details-modal__summary .summary-item{flex:1 1;min-width:120px;text-align:center}.workout-details-modal__summary .summary-item .label{color:var(--text-secondary);font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem}.workout-details-modal__summary .summary-item .value{color:var(--text-primary);font-size:1.5rem;font-weight:600}.workout-details-modal__exercises{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));grid-gap:1.5rem;gap:1.5rem}@media(max-width:768px){.workout-details-modal__exercises{grid-template-columns:1fr}}.workout-details-modal__exercise{border:1px solid var(--border-primary);border-radius:8px;padding:1rem}.workout-details-modal__exercise h3{color:var(--text-primary);font-size:1.125rem;margin:0 0 1rem}.workout-details-modal__sets{display:flex;flex-direction:column;gap:.5rem}.workout-details-modal__set{display:flex;align-items:center;gap:1rem;padding:.75rem;background:var(--background-tertiary);border-radius:6px}.workout-details-modal__set--incomplete{opacity:.5}.workout-details-modal__set .set-number{font-weight:600;color:var(--text-secondary);min-width:60px}.workout-details-modal__set .set-type{font-size:.75rem;padding:.25rem .5rem;border-radius:4px;text-transform:uppercase;font-weight:600}.workout-details-modal__set .set-type--warmup{background:var(--info);color:#fff}.workout-details-modal__set .set-type--working{background:var(--success);color:#fff}.workout-details-modal__set .set-type--extra{background:var(--warning);color:#000}.workout-details-modal__set .set-data{flex:1 1;display:flex;gap:1rem;flex-wrap:wrap;color:var(--text-primary)}.workout-details-modal__set .set-data span{font-size:.875rem}.workout-details-modal__set .set-data span strong{font-weight:600}.workout-details-modal__notes{margin-top:1rem;padding:1rem;background:var(--background-tertiary);border-radius:6px;border-left:3px solid var(--primary)}.workout-details-modal__notes .notes-label{color:var(--text-secondary);font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.workout-details-modal__notes .notes-content{color:var(--text-primary);font-size:.875rem;line-height:1.5;white-space:pre-wrap}.workout-details-modal__footer{display:flex;justify-content:flex-end;margin-top:2rem;padding-top:1rem;border-top:1px solid var(--border-primary)}.morning-briefing{background:var(--background-secondary);border-radius:12px;padding:1.5rem 2rem;margin-bottom:2rem;border-left:4px solid var(--primary)}.morning-briefing__text{color:var(--text-primary);font-size:1.125rem;line-height:1.5;margin:0}.compliance-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:1rem;gap:1rem}@media(max-width:768px){.compliance-grid{grid-template-columns:1fr}}.compliance-card{background:var(--background-secondary);border:1px solid var(--border-primary);border-radius:12px;padding:1rem 1.25rem;cursor:pointer;transition:all .2s ease}.compliance-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.compliance-card__header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.compliance-card__avatar{width:36px;height:36px;border-radius:50%;background:var(--primary);color:var(--text-on-primary);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.8rem;flex-shrink:0}.compliance-card__info{flex:1 1;min-width:0;display:flex;flex-direction:column}.compliance-card__name{font-weight:600;color:var(--text-primary);font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compliance-card__status{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.compliance-card__status--on-track{color:var(--success)}.compliance-card__status--behind{color:var(--warning)}.compliance-card__status--inactive{color:var(--error)}.compliance-card__count{font-weight:700;font-size:1.1rem;color:var(--text-primary);white-space:nowrap}.compliance-card__bar{height:6px;background:var(--background-tertiary);border-radius:3px;overflow:hidden}.compliance-card__bar-fill{height:100%;border-radius:3px;transition:width .3s ease}.compliance-card__bar-fill--on-track{background:var(--success)}.compliance-card__bar-fill--behind{background:var(--warning)}.compliance-card__bar-fill--inactive{background:var(--error)}.celebration-feed{display:flex;flex-direction:column;gap:.5rem}.celebration-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--background-secondary);border-radius:10px;transition:background .15s ease}.celebration-item:hover{background:var(--background-tertiary)}.celebration-item__icon{display:flex;align-items:center;flex-shrink:0}.celebration-item__icon svg{width:1.25rem;height:1.25rem}.celebration-item__icon--pr{color:var(--accent)}.celebration-item__icon--period-best{color:var(--text-secondary)}.celebration-item__icon--streak{color:var(--warning)}.celebration-item__icon--goal-met{color:var(--success)}.celebration-item__content{flex:1 1;min-width:0;display:flex;gap:.5rem;align-items:baseline;flex-wrap:wrap}.celebration-item__athlete{font-weight:600;color:var(--text-primary);font-size:.9rem}.celebration-item__description{color:var(--text-secondary);font-size:.85rem}.celebration-item__date{color:var(--text-muted);font-size:.8rem;white-space:nowrap;margin-left:auto}.tiptap-editor{border:1px solid var(--border-primary);border-radius:4px;background:var(--background-secondary);margin:0 auto 16px 0;max-width:430px}.tiptap-editor__toolbar{display:flex;flex-wrap:wrap;gap:4px;padding:8px;border-bottom:1px solid var(--border-primary);background:var(--background-tertiary)}.tiptap-editor__toolbar button{display:flex;align-items:center;justify-content:center;gap:4px;padding:6px 10px;border:1px solid transparent;border-radius:4px;background:transparent;cursor:pointer;font-size:14px;color:var(--text-primary);transition:all .2s ease}.tiptap-editor__toolbar button:hover:not(:disabled){background:color-mix(in srgb,var(--text-primary) 10%,transparent)}.tiptap-editor__toolbar button:disabled{opacity:.4;cursor:not-allowed}.tiptap-editor__toolbar button.is-active{background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:color-mix(in srgb,var(--accent) 35%,var(--border-primary));color:var(--accent-text)}.tiptap-editor__toolbar button svg{width:14px;height:14px}.tiptap-editor__toolbar-group{display:flex;gap:2px;padding:0 4px;border-right:1px solid var(--border-primary)}.tiptap-editor__toolbar-group:last-child{border-right:none}.tiptap-editor__color-picker{width:32px;height:32px;border:1px solid var(--border-primary);border-radius:4px;cursor:pointer;padding:0}.tiptap-editor__color-picker::-webkit-color-swatch-wrapper{padding:2px}.tiptap-editor__color-picker::-webkit-color-swatch{border:none;border-radius:2px}.tiptap-editor__content{padding:16px;outline:none;min-height:200px;max-height:600px;overflow-y:auto;line-height:1.6;color:var(--text-primary)}.tiptap-editor__content:focus{outline:none}.tiptap-editor__content p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;color:var(--text-muted);pointer-events:none;height:0}.tiptap-editor__content h1{font-size:1.5rem;font-weight:700;margin:24px 0 16px}.tiptap-editor__content h2{font-size:1.25rem;font-weight:700;margin:24px 0 16px}.tiptap-editor__content h3{font-size:1.125rem;font-weight:700;margin:16px 0 8px}.tiptap-editor__content p{margin:0 0 8px}.tiptap-editor__content ol,.tiptap-editor__content ul{padding-left:1.5em;margin:0 0 8px}.tiptap-editor__content li{margin:0 0 6px}.tiptap-editor__content li>p{margin:0}.tiptap-editor__content a{color:var(--accent-text);text-decoration:underline;cursor:pointer}.tiptap-editor__content a:hover{color:color-mix(in srgb,var(--accent-text) 78%,var(--text-primary))}.tiptap-editor__content img{max-width:100%;height:auto;border-radius:4px;margin:8px 0;display:block}.tiptap-editor__content img.tiptap-image{cursor:pointer}.tiptap-editor__content blockquote{border-left:4px solid var(--border-primary);padding-left:16px;margin:16px 0;color:var(--text-secondary);font-style:italic}.tiptap-editor__content pre{background:var(--background-tertiary);border:1px solid var(--border-primary);border-radius:4px;padding:12px;overflow-x:auto;margin:8px 0}.tiptap-editor__content pre code{font-family:Courier New,Courier,monospace;font-size:.9em;color:var(--text-primary)}.tiptap-editor__content code{background:var(--background-tertiary);border-radius:2px;padding:2px 4px;font-family:Courier New,Courier,monospace;font-size:.9em}.tiptap-editor__content .has-text-align-left{text-align:left}.tiptap-editor__content .has-text-align-center{text-align:center}.tiptap-editor__content .has-text-align-right{text-align:right}.tiptap-editor__content hr{border:none;border-top:1px solid var(--border-primary);margin:24px 0}.tiptap-editor__content p:has(>br:only-child){position:relative}.tiptap-editor__content p:has(>br:only-child):before{content:"¶";color:var(--text-muted);opacity:.35;font-size:.9em}.mobile-preview{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem;background:var(--background-secondary);border:1px solid var(--border-secondary);border-radius:12px}.mobile-preview__label{margin:0;font-size:.875rem;color:var(--text-secondary);font-weight:600}.mobile-preview__device{position:relative;width:320px;height:600px;border:12px solid #1f1f1f;border-radius:36px;background:#000;box-shadow:0 8px 24px rgba(0,0,0,.3);overflow:hidden}.mobile-preview__notch{position:absolute;top:0;left:50%;transform:translateX(-50%);width:140px;height:28px;background:#1f1f1f;border-radius:0 0 16px 16px;z-index:10}.mobile-preview__screen{width:100%;height:100%;background:#fff;overflow-y:auto;padding-top:32px}.mobile-preview__screen[data-theme=dark]{background:#1e1e1e;color:#e0e0e0}.mobile-preview__header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid #e0e0e0;background:#fff;position:-webkit-sticky;position:sticky;top:32px;z-index:5}.mobile-preview__header h4{margin:0;font-size:1.125rem;font-weight:700;color:#1f1f1f}[data-theme=dark] .mobile-preview__header{background:#1e1e1e;border-bottom-color:#333}[data-theme=dark] .mobile-preview__header h4{color:#e0e0e0}.mobile-preview__user-icon{font-size:1.5rem}.mobile-preview__scroll-area{padding:1rem}.mobile-preview__empty{display:flex;align-items:center;justify-content:center;height:400px;color:#999;text-align:center;font-size:.875rem}.mobile-preview__card{background:#fff;border:1px solid #e0e0e0;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px rgba(0,0,0,.08);margin-bottom:1rem}[data-theme=dark] .mobile-preview__card{background:#2a2a2a;border-color:#444}.mobile-preview__card--tip{background:linear-gradient(135deg,#fff9e6,#fff);border-color:#ffd966}[data-theme=dark] .mobile-preview__card--tip{background:linear-gradient(135deg,#3a3410,#2a2a2a);border-color:#650}.mobile-preview__thumbnail{width:100%;height:160px;object-fit:cover;display:block}.mobile-preview__video-container{position:relative;width:100%;height:180px;background:#000}.mobile-preview__video-thumbnail{width:100%;height:100%;object-fit:cover}.mobile-preview__video-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(135deg,#333,#111);color:#fff;font-size:3rem}.mobile-preview__duration{position:absolute;bottom:8px;right:8px;background:rgba(0,0,0,.8);color:#fff;padding:2px 6px;border-radius:4px;font-size:.75rem;font-weight:600}.mobile-preview__content{padding:1rem}.mobile-preview__tip-icon{font-size:2rem;margin-bottom:.5rem}.mobile-preview__title{margin:0 0 .5rem;font-size:1rem;font-weight:700;color:#1f1f1f;line-height:1.3}[data-theme=dark] .mobile-preview__title{color:#e0e0e0}.mobile-preview__summary{margin:0 0 .75rem;font-size:.875rem;color:#666;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}[data-theme=dark] .mobile-preview__summary{color:#aaa}.mobile-preview__meta{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;color:#999;font-weight:600}[data-theme=dark] .mobile-preview__meta{color:#666}.mobile-preview__tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.mobile-preview__tag{background:rgba(255,118,0,.15);color:#ff7600;padding:.2rem .6rem;border-radius:12px;font-size:.75rem;font-weight:600}[data-theme=dark] .mobile-preview__tag{background:rgba(255,118,0,.25);color:#f93}@media(max-width:768px){.mobile-preview__device{width:280px;height:500px;border-width:8px;border-radius:24px}.mobile-preview__notch{width:120px;height:24px}}.c-verify-banner{position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-sticky,10);display:flex;align-items:center;justify-content:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-4);font-size:var(--text-sm);color:var(--warn,var(--text-primary));background-color:color-mix(in srgb,var(--warn,orange) 12%,var(--background-secondary));border-bottom:1px solid var(--border-primary)}.c-verify-banner button{padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--accent-ink);background-color:var(--accent);border:none;border-radius:var(--radius-sm);cursor:pointer}.c-verify-banner button:disabled{opacity:.5;cursor:default}.c-draft-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;margin-bottom:var(--space-4);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);color:var(--text);background-color:color-mix(in srgb,var(--warn,orange) 12%,var(--surface));border:1px solid color-mix(in srgb,var(--warn,orange) 35%,var(--border));border-radius:var(--radius-sm)}.c-draft-banner__text{display:flex;align-items:center;gap:var(--space-2)}.c-draft-banner__text svg{flex-shrink:0;color:var(--warn)}.c-draft-banner__actions{display:flex;flex-shrink:0;gap:var(--space-2)}.c-draft-banner__discard,.c-draft-banner__restore{padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-semibold);border-radius:var(--radius-sm);cursor:pointer}.c-draft-banner__restore{color:var(--accent-ink);background-color:var(--accent);border:none}.c-draft-banner__discard{color:var(--text-dim);background-color:transparent;border:1px solid var(--border)}.my-profile__container{padding:2rem}@media(max-width:600px){.my-profile__container{padding:.75rem 12px}}.my-profile__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.my-profile__header h1{margin:0;font-size:2rem;color:var(--text-primary)}.my-profile__card{background-color:var(--background-secondary);border-radius:8px;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 12px rgba(0,0,0,.05);border:1px solid var(--border-primary)}@media(max-width:600px){.my-profile__card{padding:1.25rem 1rem;margin-bottom:1.25rem}}.my-profile__card-title{margin-top:0;margin-bottom:1.5rem;font-size:1.5rem;color:var(--text-primary);border-bottom:1px solid var(--border-primary);padding-bottom:1rem}.my-profile__info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:1.5rem;gap:1.5rem}.my-profile__info-item{display:flex;flex-direction:column}.my-profile__info-label{font-size:.875rem;color:var(--text-secondary);margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.5px}.my-profile__info-value{font-size:1rem;color:var(--text-primary);font-weight:500}.my-profile__actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem}.my-profile__language-select{padding:.5rem 1rem;border:1px solid var(--border-primary);border-radius:4px;background-color:var(--background-secondary);color:var(--text-primary);font-size:.9rem;cursor:pointer;transition:border-color .2s}.my-profile__language-select:hover{border-color:var(--primary)}.my-profile__language-select option{background-color:var(--background-secondary);color:var(--text-primary)}.my-profile__message{margin-top:1rem;padding:.75rem 1rem;border-radius:4px;font-size:.9rem}.my-profile__message--success{background-color:rgba(40,167,69,.1);color:var(--success);border:1px solid var(--success)}.my-profile__message--error{background-color:rgba(220,53,69,.1);color:var(--error);border:1px solid var(--error)}.my-profile__client-list{display:grid;grid-gap:1rem;gap:1rem}.my-profile__client-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background-color:var(--background-tertiary);border-radius:6px;transition:background-color .2s}.my-profile__client-item:hover{background-color:var(--background-primary)}.my-profile__client-name{font-weight:500;color:var(--text-primary)}.my-profile__client-email{font-size:.9rem;color:var(--text-secondary)}.theme-picker{margin-bottom:var(--space-6)}.theme-picker__options{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-2)}.theme-option{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:2px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-semibold);cursor:pointer;transition:border-color var(--dur) var(--ease),transform var(--dur) var(--ease),background-color var(--dur) var(--ease)}.theme-option,.theme-option:hover{background:var(--surface-2,var(--background-tertiary))}.theme-option:hover{border-color:var(--accent);transform:translateY(-1px)}.theme-option--active,.theme-option--active:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent)}.theme-option__swatch{width:28px;height:28px;border-radius:var(--radius-full);flex-shrink:0;border:2px solid hsla(0,0%,100%,.25)}.theme-option__swatch--performance{background:#c6ff3a}.theme-option__swatch--clean{background:linear-gradient(135deg,#0f766e 58%,#ff6b4a)}.theme-option__swatch--bold{background:#ff5a1f}.theme-option__name{white-space:nowrap}.theme-mode{display:flex;flex-direction:column;gap:var(--space-2)}.seg-control{display:inline-flex;width:-moz-fit-content;width:fit-content;padding:3px;background:var(--surface-2,var(--background-tertiary));border:1px solid var(--border-primary);border-radius:var(--radius-full)}.seg-control__btn{padding:8px 22px;border:0;border-radius:var(--radius-full);background:transparent;color:var(--text-secondary);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease)}.seg-control__btn:hover{background:color-mix(in srgb,var(--text-primary) 7%,transparent)}.seg-control__btn--active,.seg-control__btn--active:hover{background:var(--accent);color:var(--accent-ink)}.p-billing{display:flex;flex-direction:column;gap:var(--space-6)}.p-billing__summary{display:flex;flex-wrap:wrap;gap:var(--space-4)}.p-billing__summary-item{display:flex;flex-direction:column;gap:var(--space-1);min-width:200px;padding:var(--space-4);background-color:var(--surface,var(--background-secondary));border:1px solid var(--border,var(--border-primary));border-radius:var(--radius-lg)}.p-billing__summary-item strong{font-family:var(--font-display);font-size:var(--text-xl)}.p-billing__label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim,var(--text-secondary))}.p-billing__status{align-self:flex-start}.p-billing__status--expired,.p-billing__status--none,.p-billing__status--past_due{color:var(--error)}.p-billing__hint{font-size:var(--text-xs);color:var(--text-dim,var(--text-secondary))}.p-billing__alert{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-3) var(--space-4);background-color:var(--surface,var(--background-secondary));border:1px solid var(--error);border-radius:var(--radius-lg);font-size:var(--text-sm)}.p-billing__spend-list{margin:0;padding:0;list-style:none;max-width:480px}.p-billing__spend-list li{display:flex;justify-content:space-between;padding:var(--space-2) 0;border-bottom:1px solid var(--border,var(--border-primary));font-size:var(--text-sm)}.p-billing__tiers{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.p-billing__tier{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);background-color:var(--surface,var(--background-secondary));border:1px solid var(--border,var(--border-primary));border-radius:var(--radius-lg)}.p-billing__tier.is-current{border-color:var(--accent)}.p-billing__tier h3{margin:0}.p-billing__tier .c-btn{margin-top:auto}.p-billing__price{margin:0;font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-bold)}.p-billing__price span{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-dim,var(--text-secondary))}.p-billing__tier-clients{margin:0;font-weight:var(--weight-semibold)}.p-billing__tier-ai{margin:0}.p-billing__contact,.p-billing__tier-ai{font-size:var(--text-sm);color:var(--text-dim,var(--text-secondary))}.p-billing__activation{position:relative;display:flex;align-items:center;gap:.9rem;margin-bottom:1.25rem;padding:1rem 1.25rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden;animation:p-billing-activation-in .35s ease-out}.p-billing__activation:after{content:"";position:absolute;left:0;bottom:0;height:3px;width:40%;border-radius:3px;background:var(--accent);animation:p-billing-activation-sweep 1.6s ease-in-out infinite}.p-billing__activation--confirmed:after{width:100%;background:var(--success);animation:none}.p-billing__activation-ring{flex:0 0 auto;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--accent);animation:p-billing-activation-spin .9s linear infinite}.p-billing__activation--confirmed .p-billing__activation-ring{border-color:var(--success);animation:p-billing-activation-pop .45s cubic-bezier(.34,1.56,.64,1)}.p-billing__activation--confirmed .p-billing__activation-ring:after{content:"✓";color:var(--success);font-weight:700;font-size:.9rem;line-height:1}.p-billing__activation-text{display:flex;flex-direction:column;gap:.15rem;min-width:0}.p-billing__activation-text strong{font-weight:var(--weight-semibold)}.p-billing__activation-text span{font-size:var(--text-sm);color:var(--text-dim,var(--text-secondary))}@keyframes p-billing-activation-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@keyframes p-billing-activation-spin{to{transform:rotate(1turn)}}@keyframes p-billing-activation-sweep{0%{transform:translateX(-100%)}to{transform:translateX(350%)}}@keyframes p-billing-activation-pop{0%{transform:scale(.6)}to{transform:scale(1)}}.exercises-page__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-5)}.exercises-page__header h1{margin:0}.exercises-page__toolbar{display:flex;flex-direction:column;gap:var(--space-3)}.exercises-page__search{position:relative;width:100%;max-width:380px}@media(max-width:768px){.exercises-page__search{max-width:none}}.exercises-page__search .exercises-page__search-icon{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:.9rem;pointer-events:none;z-index:1}.exercises-page__search .exercises-page__search-input{width:100%;margin:0;padding:var(--space-2) var(--space-3) var(--space-2) 2.5rem;background-color:var(--background-secondary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);font-size:var(--text-base)}.exercises-page__search .exercises-page__search-input::placeholder{color:var(--text-muted)}.exercises-page__search .exercises-page__search-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}.exercises-page__filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.exercise__amount-exercises{margin-top:10px;font-size:14px;color:var(--text-secondary)}.archived-badge,.mine-badge{display:inline-block;font-size:10px;font-weight:600;text-transform:uppercase;padding:2px 6px;margin-left:8px;border-radius:4px;background-color:var(--primary);color:var(--accent-ink);vertical-align:middle}.archived-badge{background-color:var(--surface-2);color:var(--text-dim);border:1px solid var(--border)}.exercise__wrapper{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:20px;gap:20px;margin:20px 0;width:100%}@media(max-width:768px){.exercise__wrapper{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px}}@media(max-width:480px){.exercise__wrapper{grid-template-columns:1fr;gap:12px}}.workouts__tabs{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-6)}.workouts__tab{border:1px solid var(--border-primary);background:var(--background-secondary);color:var(--text-secondary);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);cursor:pointer;font-size:var(--text-base);font-weight:var(--weight-semibold);transition:background-color var(--dur) var(--ease),color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.workouts__tab--active{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.workouts__tab:hover:not(.workouts__tab--active){border-color:var(--accent);color:var(--text-primary)}.workouts__header{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-8)}.workouts__header-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);width:100%}.workouts .workout__card-wrapper{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));grid-gap:var(--space-4);gap:var(--space-4)}.workouts .workout__card{position:relative;background-color:var(--background-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-sm);transition:transform var(--dur) var(--ease),border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);cursor:pointer}.workouts .workout__card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 35%,var(--border-primary));box-shadow:var(--shadow-md)}.workouts .workout__card .delete-icon,.workouts .workout__card .edit-icon{position:absolute;top:var(--space-5);color:var(--text-secondary);font-size:15px;cursor:pointer;transition:color var(--dur) var(--ease)}.workouts .workout__card .delete-icon{right:var(--space-5)}.workouts .workout__card .delete-icon:hover{color:var(--error)}.workouts .workout__card .edit-icon{right:calc(var(--space-5) + 25px)}.workouts .workout__card .edit-icon:hover{color:var(--accent-text)}.workouts .workout__card h3{margin:0;padding-right:var(--space-12);font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--text-primary);display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.workouts .workout__card .draft-badge{font-size:var(--text-xs);font-weight:var(--weight-semibold);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);background-color:var(--surface-2);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.workouts .workout__card p{margin:var(--space-3) 0 0;font-size:var(--text-base);color:var(--text-secondary)}.workouts .workout__card .workout-meta{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary);font-weight:var(--weight-medium);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.workouts .workout__card .added-by{margin-top:var(--space-2);font-size:var(--text-xs);color:var(--text-muted)}.workouts .workout__card .last-edited{margin-top:var(--space-1);font-size:var(--text-xs);color:var(--text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.workouts .empty-state{color:var(--text-muted);font-size:var(--text-base);padding:var(--space-8) 0}.edit-workout .c-btn{margin-top:1rem;margin-bottom:1rem}.edit-workout__input-disabled{background-color:transparent!important;color:var(--text-muted)!important;cursor:not-allowed!important;border:none!important;width:auto!important}.edit-workout__header{display:flex;align-items:center;flex-flow:row wrap;gap:1rem;margin-bottom:1rem}.edit-workout__header h1{margin-top:0;margin-bottom:0}.edit-workout__header .c-btn{margin-top:0;margin-bottom:0;height:40px;display:inline-flex;align-items:center;justify-content:center}.edit-workout__top-section{display:flex;flex-flow:row nowrap;gap:2rem;margin-bottom:1rem;align-items:flex-start}.edit-workout__assign-client{display:flex;flex-flow:row wrap;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5)}.edit-workout__assign-client select{width:100%;margin-bottom:0}.edit-workout__assign-client .publish-hint{color:var(--text-secondary);font-size:var(--text-sm);line-height:1.3}.edit-workout__exercise-filters{display:flex;flex-flow:row wrap;gap:var(--space-3);margin-bottom:var(--space-4)}.edit-workout__exercise-filters>*{flex:1 1 16rem;min-width:0}.edit-workout__general-info{max-width:500px;flex:0 0 500px}.edit-workout__part__wrapper{display:grid;grid-template-columns:repeat(auto-fill,minmax(600px,1fr));grid-gap:16px;overflow-x:auto}.edit-workout__part__header{position:relative;margin-bottom:1rem}.edit-workout__part__header input{margin:0!important;background-color:transparent;border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.edit-workout__part__header input::-webkit-inner-spin-button,.edit-workout__part__header input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.edit-workout__part__header input{color:var(--text-primary);display:inline-block;font-size:16px;width:auto!important}.edit-workout__part__header .delete-icon{float:right;margin-bottom:1rem;cursor:pointer}.edit-workout__part{background-color:var(--background-secondary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5);margin-bottom:var(--space-4);border:1px solid var(--border-primary)}.edit-workout__part .exercise-card{display:grid;grid-template-columns:9.5rem minmax(0,1fr);grid-template-areas:"image head" "image body";align-items:start;background-color:var(--background-tertiary);position:relative;margin-bottom:var(--space-3);border-radius:var(--radius-md);overflow:hidden}.edit-workout__part .exercise-card__image{grid-area:image;align-self:stretch;width:100%;height:100%;object-fit:cover;display:block;cursor:-webkit-grab;cursor:grab}.edit-workout__part .exercise-card__image:active{cursor:-webkit-grabbing;cursor:grabbing}.edit-workout__part .exercise-card__controls{position:absolute;top:var(--space-2);right:var(--space-2);display:flex;align-items:center;gap:var(--space-1);z-index:2}.edit-workout__part .exercise-card__drag-handle{display:flex;align-items:center;justify-content:center;padding:2px;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--text-muted);cursor:-webkit-grab;cursor:grab;touch-action:none}.edit-workout__part .exercise-card__drag-handle svg{width:1.15rem;height:1.15rem}.edit-workout__part .exercise-card__drag-handle:hover{color:var(--text-secondary)}.edit-workout__part .exercise-card__drag-handle:active{cursor:-webkit-grabbing;cursor:grabbing}.edit-workout__part .exercise-card--superset{border-left:3px solid var(--accent)}.edit-workout__part .exercise-card--superset:not(.edit-workout__part .exercise-card--superset-start){border-top-left-radius:0}.edit-workout__part .exercise-card--superset:not(.edit-workout__part .exercise-card--superset-end){border-bottom-left-radius:0;margin-bottom:2px}.edit-workout__part .exercise-card__superset{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.edit-workout__part .exercise-card__superset-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.6rem;height:1.6rem;padding:0 .35rem;border-radius:var(--radius-sm);background-color:var(--accent);color:var(--accent-ink,var(--accent-text));font-size:.8rem;font-weight:700;line-height:1}.edit-workout__part .exercise-card__superset-select{width:auto;margin:0;padding:3px 6px;border:1px solid var(--border-primary);border-radius:var(--radius-sm);background-color:var(--background-primary);color:var(--text-secondary);font-size:.8rem;cursor:pointer}.edit-workout__part .exercise-card__superset-select:focus{outline:none;border-color:var(--accent)}.edit-workout__part .exercise-card__superset-select:disabled{opacity:.5;cursor:not-allowed}.edit-workout__part .exercise-card__head{grid-area:head;display:flex;flex-flow:column nowrap;gap:.5rem;padding:var(--space-3);min-width:0}.edit-workout__part .exercise-card__body{grid-area:body;padding:0 var(--space-3) var(--space-3);min-width:0}.edit-workout__part .exercise-card__title{font-size:1.5rem;margin:.1rem 0 0;font-weight:700;color:var(--text-primary);padding-right:2.5rem;display:block;-webkit-line-clamp:unset;overflow:visible}.edit-workout__part .exercise-card__alternatives .alternative-exercise{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.edit-workout__part .exercise-card__alternatives .alternative-exercise__name{color:var(--accent);text-decoration:underline;cursor:pointer}.edit-workout__part .exercise-card__alternatives .alternative-exercise__name:hover{color:var(--accent-dark)}.edit-workout__part .exercise-card__alternatives .alternative-exercise__remove{background:none;border:none;color:var(--danger);font-size:1.2rem;cursor:pointer;padding:0;line-height:1}.edit-workout__part .exercise-card__alternatives .alternative-exercise__remove:hover{color:var(--danger-dark)}.edit-workout__part .exercise-card__alternatives .add-alternative-btn{background:none;border:1px dashed var(--border-secondary);color:var(--text-secondary);font-size:.8rem;padding:.25rem .5rem;border-radius:3px;cursor:pointer}.edit-workout__part .exercise-card__alternatives .add-alternative-btn:hover{border-color:var(--accent);color:var(--accent)}.edit-workout__part .exercise-card__alternatives .add-alternative-btn:disabled{opacity:.5;cursor:not-allowed}.edit-workout__part .exercise-card__alternatives .add-alternative-btn:disabled:hover{border-color:var(--border-secondary);color:var(--text-secondary)}.edit-workout__part .exercise-card__specs{display:flex;flex-flow:column nowrap;gap:.85rem}.edit-workout__part .exercise-card .edit-workout__rep-input input,.edit-workout__part .exercise-card__field-input,.edit-workout__part .exercise-card__instruction-input{margin:0;padding:5px 8px;border:1px solid var(--border-primary);border-radius:var(--radius-sm);background-color:var(--background-primary);color:var(--text-primary);font-size:14px;font-family:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none}.edit-workout__part .exercise-card .edit-workout__rep-input input:focus,.edit-workout__part .exercise-card__field-input:focus,.edit-workout__part .exercise-card__instruction-input:focus{outline:none;border-color:var(--accent)}.edit-workout__part .exercise-card .edit-workout__rep-input input::placeholder,.edit-workout__part .exercise-card__field-input::placeholder,.edit-workout__part .exercise-card__instruction-input::placeholder{color:var(--text-muted)}.edit-workout__part .exercise-card__field-input{width:100%}.edit-workout__part .exercise-card__instruction-input{width:100%;resize:vertical;min-height:2.5rem;line-height:1.4}.edit-workout__part .exercise-card .edit-workout__rep-input input{flex:1 1 auto;min-width:0}.edit-workout__part .exercise-card__field{display:flex;flex-flow:column nowrap;gap:.25rem;min-width:0}.edit-workout__part .exercise-card__field__label{font-size:12px;font-weight:500;color:var(--text-secondary);letter-spacing:.02em;text-transform:capitalize}.edit-workout__part .exercise-card__field--distance{flex:1 1 12rem}.edit-workout__part .exercise-card__field--time{flex:0 1 auto}.edit-workout__part .exercise-card__field-cap{font-size:12px;color:var(--danger)}.edit-workout__part .exercise-card__field-box{display:flex;align-items:stretch;width:100%;border:1px solid var(--border-primary);border-radius:var(--radius-sm);background-color:var(--background-primary);overflow:hidden}.edit-workout__part .exercise-card__field-box:focus-within{border-color:var(--accent)}.edit-workout__part .exercise-card__field-box__input{flex:1 1 auto;min-width:0;width:auto;margin:0;border:0;border-radius:0;background:transparent;padding:5px 8px;color:var(--text-primary);font-size:14px}.edit-workout__part .exercise-card__field-box__input:focus{box-shadow:none;outline:none}.edit-workout__part .exercise-card__field-box__unit{flex:0 0 auto;width:auto;margin:0;border:0;border-left:1px solid var(--border-primary);border-radius:0;background-color:var(--background-secondary);color:var(--text-secondary);font-size:13px;padding:0 6px;cursor:pointer}.edit-workout__part .exercise-card__field-box__unit:focus{box-shadow:none;outline:none}.edit-workout__part .exercise-card .delete-icon{color:var(--text-secondary);cursor:pointer}.edit-workout__part .exercise-card .delete-icon:hover{color:var(--danger)}.edit-workout__add-rep-btn,.edit-workout__remove-rep-btn{padding:0 .5rem;border:none;background:none;cursor:pointer;font-size:1.2rem;line-height:1;color:inherit}.edit-workout__add-rep-btn:hover,.edit-workout__remove-rep-btn:hover{opacity:.7}.edit-workout__add-rep-btn:disabled,.edit-workout__remove-rep-btn:disabled{opacity:.35;cursor:default}.edit-workout__reps-container,.edit-workout__reps-inputs{display:flex;flex-direction:column;gap:.25rem}.edit-workout__rep-input{display:flex;flex-flow:row nowrap;justify-content:flex-start;align-items:center;gap:.5rem}.edit-workout__time-distance-set{display:flex;flex-flow:row wrap;justify-content:flex-start;align-items:flex-end;gap:.75rem 1rem}.edit-workout__time-distance-set__actions{display:flex;align-items:center;gap:.25rem;align-self:flex-end;padding-bottom:2px}.edit-workout__label{display:inline-block;font-size:12px;font-weight:500;color:var(--text-secondary);letter-spacing:.02em}@media(max-width:768px){.edit-workout__top-section{flex-flow:column nowrap;gap:1rem}.edit-workout__general-info{flex:1 1 auto;max-width:100%;width:100%}.edit-workout__part__wrapper{grid-template-columns:minmax(0,1fr);overflow-x:visible}.edit-workout__part{min-width:0}.edit-workout .exercise-card{grid-template-columns:7.5rem minmax(0,1fr);grid-template-areas:"image head" "body body"}.edit-workout .exercise-card__title{font-size:1.2rem;padding-right:3.25rem}}@media(max-width:480px){.edit-workout .exercise-card{grid-template-columns:auto minmax(0,1fr);row-gap:.6rem}.edit-workout .exercise-card__image{align-self:start;height:150px;width:auto;aspect-ratio:9/16;object-fit:cover;object-position:center}}.exercise-lang-selector{display:inline-flex;align-items:center;gap:var(--space-2);height:40px;padding:0 var(--space-3);background-color:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-dim);font-family:var(--font-body);cursor:pointer}.exercise-lang-selector__icon{font-size:1.05rem;flex-shrink:0}.exercise-lang-selector__label{font-size:.85rem;white-space:nowrap}.exercise-lang-selector__select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;margin:0;padding:0 var(--space-1);color:var(--text);font-family:inherit;font-size:.9rem;font-weight:600;cursor:pointer}.exercise-lang-selector__select:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.exercise-lang-selector__select option{background-color:var(--surface);color:var(--text)}@media(max-width:480px){.exercise-lang-selector__label{display:none}}.page-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-6)}.page-head h1{margin:0}.user-cell{display:flex;align-items:center;gap:var(--space-3);min-width:0}.user-cell__text{display:flex;flex-direction:column;min-width:0}.user-cell__name{font-weight:var(--weight-semibold);color:var(--text-primary)}.user-cell__email{font-size:var(--text-sm);color:var(--text-secondary);overflow-wrap:anywhere}.users-toolbar{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.users-toolbar__search{flex:1 1;min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text);font-family:inherit;font-size:var(--text-sm)}.users-toolbar__search::placeholder{color:var(--text-dim)}.users-toolbar__search:focus{outline:none;border-color:var(--accent)}.users-toolbar__empty{margin:0;padding:var(--space-6) var(--space-4);text-align:center;color:var(--text-dim)}.users-table{margin-top:var(--space-2)}.c-table tbody tr.is-suspended{opacity:.6}.user-cell__notice{font-size:var(--text-sm);color:var(--warn)}.roster-notice{margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid color-mix(in srgb,var(--warn) 35%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--warn) 12%,transparent);color:var(--text-primary)}.users-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-8) var(--space-4);background:var(--background-secondary);border:2px dashed var(--border-primary);border-radius:var(--radius-md);text-align:center}.users-empty h2{margin:0;color:var(--text-primary)}.users-empty p{margin:0;max-width:42ch;color:var(--text-secondary)}.users-empty .c-btn{margin-top:var(--space-3)}.ai-spend{display:inline-flex;flex-direction:column;line-height:1.3}.ai-spend--none{color:var(--text-secondary)}.ai-spend__cost{font-weight:var(--weight-semibold);color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ai-spend__tokens{font-size:var(--text-sm);color:var(--text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ai-pool{--ai-pool-color:var(--success);display:flex;flex-direction:column;gap:var(--space-1);margin-top:var(--space-1);line-height:1.3}.ai-pool--warning{--ai-pool-color:var(--warning)}.ai-pool--critical{--ai-pool-color:var(--error)}.ai-pool--none{font-size:var(--text-sm);color:var(--text-secondary)}.ai-pool__bar{display:block;width:100px;max-width:100%;height:4px;border-radius:var(--radius-sm);background:var(--border);overflow:hidden}.ai-pool__fill{display:block;height:100%;background:var(--ai-pool-color)}.ai-pool__figures{font-size:var(--text-sm);color:var(--text-secondary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.ai-pool--critical .ai-pool__figures,.ai-pool--warning .ai-pool__figures{color:var(--ai-pool-color);font-weight:var(--weight-semibold)}.row-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:flex-end}@media(max-width:768px){.row-actions{justify-content:flex-start}}.p-add-athlete__seats{margin:0 0 var(--space-4);color:var(--text-secondary);font-size:.875rem}#__next form.edit-client,.edit-client{display:grid;grid-template-columns:1fr;grid-gap:var(--space-5);gap:var(--space-5);width:100%;max-width:900px;margin-left:0;margin-right:auto;align-items:start;background:transparent;box-shadow:none;padding:0}#__next form.edit-client input,#__next form.edit-client select,#__next form.edit-client textarea,.edit-client input,.edit-client select,.edit-client textarea{margin-top:6px}#__next form.edit-client .w-100,.edit-client .w-100{width:100%;display:block;margin-bottom:10px}#__next form.edit-client .edit-client__user-info,.edit-client .edit-client__user-info{background:var(--background-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-6);display:grid;grid-template-columns:1fr;grid-gap:var(--space-4);gap:var(--space-4)}@media screen and (min-width:700px){#__next form.edit-client .edit-client__user-info,.edit-client .edit-client__user-info{grid-template-columns:repeat(2,minmax(0,1fr))}}#__next form.edit-client .edit-client__user-info h2,.edit-client .edit-client__user-info h2{margin-top:0;margin-bottom:var(--space-2);color:var(--text-primary);font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold);grid-column:1/-1}#__next form.edit-client .edit-client__user-info>label,.edit-client .edit-client__user-info>label{display:flex;flex-direction:column}#__next form.edit-client .edit-client__athlete-info,#__next form.edit-client .edit-client__coach-info,#__next form.edit-client .edit-client__type,.edit-client .edit-client__athlete-info,.edit-client .edit-client__coach-info,.edit-client .edit-client__type{background:var(--background-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-6);display:grid;grid-template-columns:1fr;grid-gap:var(--space-4);gap:var(--space-4)}@media screen and (min-width:700px){#__next form.edit-client .edit-client__athlete-info,#__next form.edit-client .edit-client__coach-info,#__next form.edit-client .edit-client__type,.edit-client .edit-client__athlete-info,.edit-client .edit-client__coach-info,.edit-client .edit-client__type{grid-template-columns:repeat(2,minmax(0,1fr))}}#__next form.edit-client .edit-client__athlete-info h2,#__next form.edit-client .edit-client__coach-info h2,#__next form.edit-client .edit-client__type h2,.edit-client .edit-client__athlete-info h2,.edit-client .edit-client__coach-info h2,.edit-client .edit-client__type h2{margin-top:0;margin-bottom:var(--space-2);color:var(--text-primary);font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold);grid-column:1/-1}#__next form.edit-client .edit-client__athlete-info>label,#__next form.edit-client .edit-client__coach-info>label,#__next form.edit-client .edit-client__type>label,.edit-client .edit-client__athlete-info>label,.edit-client .edit-client__coach-info>label,.edit-client .edit-client__type>label{display:flex;align-items:center;gap:8px}@media screen and (min-width:700px){#__next form.edit-client .edit-client__type,.edit-client .edit-client__type{grid-template-columns:repeat(1,minmax(0,1fr))}}#__next form.edit-client>.c-btn,.edit-client>.c-btn{grid-column:1/-1;justify-self:end}#__next form.edit-client .w-100,.edit-client .w-100{grid-column:1/-1}.p-debug-logs__subtitle{margin:0 0 var(--space-6);color:var(--text-secondary)}.p-debug-logs__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.p-debug-logs__filter{flex:1 1 260px;min-width:0;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--text-primary);background-color:var(--surface-2);border:1px solid var(--border-primary);border-radius:var(--radius-lg)}.p-debug-logs__filter:focus{outline:none;border-color:var(--accent)}.p-debug-logs__reload{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-secondary);background-color:var(--surface-2);border:1px solid var(--border-primary);border-radius:var(--radius-lg);cursor:pointer}.p-debug-logs__reload:hover{background-color:var(--surface-2);border-color:var(--accent)}.p-debug-logs__count,.p-debug-logs__empty{margin:0 0 var(--space-4);font-size:var(--text-sm);color:var(--text-secondary)}.p-debug-logs__error{margin:0 0 var(--space-4);padding:var(--space-3);font-size:var(--text-sm);color:var(--danger);background-color:var(--surface-2);border:1px solid var(--danger);border-radius:var(--radius-lg)}.p-debug-logs__list{display:flex;flex-direction:column;gap:var(--space-4)}.p-debug-logs__flush{background-color:var(--surface);border:1px solid var(--border-primary);border-radius:var(--radius-lg);overflow:hidden}.p-debug-logs__flush-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-3);padding:var(--space-3) var(--space-4);background-color:var(--surface-2);border-bottom:1px solid var(--border-primary)}.p-debug-logs__flush-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-3);min-width:0}.p-debug-logs__user{font-family:monospace;font-size:var(--text-sm);color:var(--text-primary);overflow-wrap:anywhere}.p-debug-logs__time{font-size:var(--text-xs);color:var(--text-secondary)}.p-debug-logs__chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.p-debug-logs__chip{max-width:18rem;padding:2px var(--space-2);font-size:var(--text-xs);color:var(--text-secondary);background-color:var(--surface);border:1px solid var(--border-primary);border-radius:var(--radius-md);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.p-debug-logs__entries{margin:0;padding:0;list-style:none}.p-debug-logs__entry{padding:var(--space-3) var(--space-4)}.p-debug-logs__entry+.p-debug-logs__entry{border-top:1px solid var(--border-primary)}.p-debug-logs__entry-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2) var(--space-3)}.p-debug-logs__type{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--accent);text-transform:uppercase;letter-spacing:.04em}.p-debug-logs__context{font-family:monospace;overflow-wrap:anywhere}.p-debug-logs__context,.p-debug-logs__entry-time{font-size:var(--text-xs);color:var(--text-secondary)}.p-debug-logs__entry-time{margin-left:auto}.p-debug-logs__message{margin:var(--space-2) 0 0;font-size:var(--text-sm);color:var(--text-primary);overflow-wrap:anywhere}.p-debug-logs__code{margin:var(--space-2) 0 0;padding:var(--space-3);max-height:20rem;overflow:auto;font-family:monospace;font-size:var(--text-xs);line-height:1.5;color:var(--text-secondary);background-color:var(--surface-2);border:1px solid var(--border-primary);border-radius:var(--radius-md);white-space:pre-wrap;overflow-wrap:anywhere}.p-debug-logs__detail{margin-top:var(--space-2)}.p-debug-logs__detail-toggle{display:inline-flex;align-items:center;gap:var(--space-1);padding:0;font-size:var(--text-xs);color:var(--text-secondary);background:transparent;border:none;cursor:pointer}.p-debug-logs__detail-toggle:hover{color:var(--accent);background:transparent}.p-debug-logs__load-more{align-self:flex-start;margin-top:var(--space-4);padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--accent-ink);background-color:var(--accent);border:1px solid var(--accent);border-radius:var(--radius-lg);cursor:pointer}.p-debug-logs__load-more:disabled{opacity:.6;cursor:default}.edit-exercise__header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-6);padding:var(--space-5) var(--space-6);background-color:var(--background-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.edit-exercise__header h1{margin:0;font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-semibold);color:var(--text-primary)}@media(max-width:600px){.edit-exercise__header h1{flex-basis:100%;font-size:var(--text-2xl)}}.edit-exercise__actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.edit-exercise .unsaved-changes{color:var(--warn);background-color:color-mix(in srgb,var(--warn) 14%,transparent);border:1px solid color-mix(in srgb,var(--warn) 30%,transparent);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);margin:0;font-size:var(--text-sm)}.translations__manager{padding:20px;max-width:1200px;margin:0 auto}.translations__title{margin-bottom:24px;font-size:24px;font-weight:700}.translations__accordion{width:100%;border:1px solid var(--border-primary);border-radius:8px;overflow:hidden;margin-bottom:20px}.translations__accordion-item{border-bottom:1px solid var(--border-primary)}.translations__accordion-item:last-child{border-bottom:none}.translations__accordion-header{padding:16px;background-color:var(--background-secondary);display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background-color .2s}.translations__accordion-header:hover{background-color:var(--background-tertiary)}.translations__accordion-title{font-weight:700}.translations__accordion-icon{display:flex}.translations__accordion-content{padding:16px;background-color:var(--background-secondary)}.translations__toast{position:fixed;bottom:20px;right:20px;z-index:1000;min-width:300px;border-radius:4px;box-shadow:0 4px 6px rgba(0,0,0,.1)}.translations__toast--success{background-color:var(--success);color:#fff}.translations__toast--error{background-color:var(--error);color:#fff}.translations__toast-content{padding:12px 16px;display:flex;justify-content:space-between;align-items:center}.translations__toast-close{background:none;border:none;color:#fff;font-size:20px;cursor:pointer;margin-left:10px}.translations__loading-spinner{display:flex;justify-content:center;align-items:center;height:100px}.translations__loading-spinner:after{content:"";width:40px;height:40px;border-top:4px solid var(--background-tertiary);border:4px solid var(--background-tertiary);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}.starter-content{padding:2rem;color:var(--text-primary)}.starter-content__header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:1.5rem}.starter-content__header h1{font-size:1.75rem;margin:0}.starter-content__header p{margin:.25rem 0 0;color:var(--text-secondary);max-width:640px}.starter-content__tabs{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.75rem}.starter-content__tab{border:1px solid var(--border-primary);background:var(--background-secondary);color:var(--text-secondary);padding:.5rem 1rem;border-radius:20px;cursor:pointer;transition:background .2s ease,color .2s ease,border .2s ease}.starter-content__tab--active{background:var(--primary);border-color:var(--primary);color:#0d0d0d}.starter-content__tab:hover:not(.starter-content__tab--active){border-color:var(--primary);color:var(--text-primary)}.starter-content__body{display:flex;flex-direction:column;gap:2rem}.starter-content__section{background:var(--background-secondary);border:1px solid var(--border-primary);border-radius:16px;padding:1.5rem;box-shadow:0 8px 24px rgba(0,0,0,.1)}.starter-content__section-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.starter-content__section-header h2{margin:0;font-size:1.4rem}.starter-content__section-header p{margin:.35rem 0 0;color:var(--text-secondary);max-width:520px}.starter-content__section-header button{display:inline-flex;align-items:center;gap:.5rem}.starter-content__form{display:flex;flex-direction:column;gap:1.25rem;background:var(--background-primary);border:1px solid var(--border-secondary);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.starter-content__form label{display:flex;flex-direction:column;gap:.5rem;font-weight:600;color:var(--text-secondary)}.starter-content__form label input,.starter-content__form label select,.starter-content__form label textarea{width:100%;padding:.65rem .75rem;border-radius:8px;border:1px solid var(--border-secondary);background:var(--background-secondary);color:var(--text-primary)}.starter-content__form label input:focus,.starter-content__form label select:focus,.starter-content__form label textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(255,118,0,.25)}.starter-content__form label textarea{min-height:80px;resize:vertical}.starter-content__form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:1.25rem;gap:1.25rem}.starter-content__checkbox{flex-direction:row!important;align-items:center;gap:.75rem!important}.starter-content__checkbox input[type=checkbox]{width:auto;accent-color:var(--primary)}.starter-content__form-actions{display:flex;gap:.75rem;justify-content:flex-end}.starter-content__content-editor{margin:1.5rem 0}.starter-content__content-editor h3{margin:0 0 .5rem;font-size:1.125rem}.starter-content__helper-text{margin:0 0 1rem;color:var(--text-secondary);font-size:.875rem}.starter-content__workout-selection{display:flex;flex-direction:column;gap:1rem}.starter-content__workout-selection select{height:160px}.starter-content__workout-list{display:flex;flex-direction:column;gap:.75rem}.starter-content__workout-list-item{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--border-secondary);border-radius:10px;padding:.75rem 1rem;background:var(--background-secondary);gap:1rem}.starter-content__workout-list-item span{font-weight:600}.starter-content__workout-list-item input{max-width:140px}.starter-content__block-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;border:1px solid var(--border-secondary);border-radius:10px;background:var(--background-secondary)}.starter-content__block-toolbar span{color:var(--text-secondary);font-weight:600}.starter-content__block-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.starter-content__blocks{display:flex;flex-direction:column;gap:1rem}.starter-content__block{border:1px solid var(--border-secondary);border-radius:12px;padding:1rem;background:var(--background-secondary)}.starter-content__block header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.starter-content__block header h4{margin:0;font-size:1rem}.starter-content__block-actions{display:flex;gap:.5rem}.starter-content__block-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:1rem;gap:1rem;margin-top:.75rem}.starter-content__list{display:flex;flex-direction:column;gap:1rem}.starter-content__list-meta{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-secondary);margin-bottom:.5rem}.starter-content__card{border:1px solid var(--border-secondary);border-radius:14px;padding:1.25rem;background:var(--background-primary);display:flex;flex-direction:column;gap:1rem;box-shadow:0 6px 18px rgba(0,0,0,.08);scroll-margin-top:1rem}.starter-content__card-header{display:flex;justify-content:space-between;gap:1rem}.starter-content__card-header h3{margin:0;font-size:1.25rem}.starter-content__card-header p{margin:.35rem 0 0;color:var(--text-secondary)}.starter-content__card-actions{display:flex;gap:.35rem;align-items:center}.starter-content__card-actions .c-btn{padding:.35rem .5rem}.starter-content__card-body ul{margin:.25rem 0 0;padding-left:1.1rem;color:var(--text-secondary)}.starter-content__card-footer{display:flex;justify-content:space-between;color:var(--text-secondary);font-weight:600}.starter-content__card--editing{border-color:var(--primary)}.starter-content__card .starter-content__form{background:transparent;border:none;border-radius:0;box-shadow:none;margin:0;padding:1.25rem 0 0;border-top:1px solid var(--border-secondary)}.starter-content__tags{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.5rem}.starter-content__tag{background:rgba(255,118,0,.15);color:var(--primary);padding:.2rem .6rem;border-radius:999px;font-size:.825rem;font-weight:600}.starter-content__tag--muted{background:var(--background-secondary);color:var(--text-secondary);border:1px solid var(--border-secondary)}.starter-content__meta{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.5rem;color:var(--text-secondary);font-weight:600}.starter-content__access-denied{padding:3rem;border:1px dashed var(--border-secondary);border-radius:16px;text-align:center;background:var(--background-secondary)}.starter-content__access-denied h1{margin:0;font-size:1.5rem}.starter-content .spinning{animation:spin 1s linear infinite}.starter-content__thumbnail-upload{display:flex;flex-direction:column;gap:.75rem}.starter-content__thumbnail-upload label{font-weight:600;color:var(--text-primary);margin:0}.starter-content__thumbnail-preview{display:flex;flex-direction:column;gap:1rem;padding:1rem;background:var(--background-secondary);border:2px dashed var(--border-primary);border-radius:8px}.starter-content__thumbnail-preview img{display:block;border-radius:8px;border:1px solid var(--border-secondary)}.starter-content__thumbnail-preview button{align-self:flex-start;display:inline-flex;align-items:center;gap:.5rem}.starter-content__thumbnail-upload-btn{display:flex;flex-direction:column;gap:.5rem}.starter-content__thumbnail-upload-btn button{align-self:flex-start;display:inline-flex;align-items:center;gap:.5rem}.starter-content__thumbnail-upload-btn .starter-content__helper-text{margin:0;font-size:.875rem;color:var(--text-secondary)}@media(max-width:768px){.starter-content{padding:1.25rem}.starter-content__form{padding:1rem}.starter-content__form-actions{flex-direction:column;align-items:stretch}.starter-content__card-header{flex-direction:column;align-items:flex-start}}.stats-page{flex:1 1;padding:2rem;max-width:1400px;width:100%;margin:0 auto;background-color:var(--background-primary)}@media(max-width:768px){.stats-page{padding:1rem}}.stats-page__empty,.stats-page__error,.stats-page__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.stats-page__empty .spinner,.stats-page__error .spinner,.stats-page__loading .spinner{width:40px;height:40px;border:4px solid var(--border-primary);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite}.stats-page__empty p,.stats-page__error p,.stats-page__loading p{color:var(--text-secondary);font-size:1rem}.stats-page__error{color:var(--error)}.stats-page__partial-data{margin-bottom:1.5rem;padding:.75rem 1rem;background:var(--background-secondary);border-left:3px solid var(--warning);border-radius:8px;color:var(--text-secondary)}.stats-page__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.stats-page__header h1{color:var(--text-primary);margin:0;font-size:2rem}.stats-page__controls{display:flex;align-items:center;gap:.75rem}.stats-page__controls label{color:var(--text-secondary);font-size:.9rem}.stats-page__time-select{padding:.5rem 1rem;border:1px solid var(--border-primary);border-radius:6px;background-color:var(--background-secondary);color:var(--text-primary);font-size:.9rem;cursor:pointer;transition:border-color .2s ease}.stats-page__time-select:hover{border-color:var(--primary)}.stats-page__time-select:focus{outline:none;border-color:var(--primary)}.stats-page__athlete-info{background-color:var(--background-secondary);padding:1rem 1.5rem;border-radius:8px;margin-bottom:1.5rem;border-left:4px solid var(--primary)}.stats-page__athlete-info h2{margin:0 0 .25rem;font-size:1.25rem;color:var(--text-primary)}.stats-page__athlete-info p{margin:0;color:var(--text-secondary);font-size:.9rem}.stats-page__team-notice{background-color:var(--background-secondary);padding:1rem 1.5rem;border-radius:8px;margin-bottom:1.5rem;border-left:4px solid var(--info)}.stats-page__team-notice p{margin:0;color:var(--text-secondary)}.stats-page__tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid var(--border-primary);overflow-x:auto}.stats-page__tabs::-webkit-scrollbar{height:4px}.stats-page__tabs::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:4px}.stats-page__tab{padding:.75rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;color:var(--text-secondary);font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.stats-page__tab:hover{color:var(--text-primary);background-color:var(--background-tertiary)}.stats-page__tab.active{color:var(--primary);border-bottom-color:var(--primary)}.stats-page__content{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.stats-page__no-data{text-align:center;padding:3rem;background-color:var(--background-secondary);border-radius:8px}.stats-page__no-data h3{color:var(--text-primary);margin-bottom:.5rem}.stats-page__no-data p{color:var(--text-secondary)}.stats-card{background-color:var(--background-secondary);border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;align-items:flex-start;gap:.75rem;box-shadow:var(--shadow-sm);transition:transform .2s ease,box-shadow .2s ease}.stats-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.stats-card__icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:2rem;color:var(--accent)}.stats-card__icon svg{width:2rem;height:2rem}.stats-card__content{width:100%}.stats-card__label{font-size:.85rem;color:var(--text-secondary);margin-bottom:.25rem}.stats-card__value{font-size:1.75rem;font-weight:700;color:var(--text-primary)}.stats-card__subtitle{font-size:.8rem;color:var(--text-muted);margin-top:.25rem}.stats-panel{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:1px;gap:1px;background:var(--border);border:1px solid var(--border);border-radius:18px;overflow:hidden;margin-bottom:2.5rem}@media(max-width:1100px){.stats-panel{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.stats-panel{grid-template-columns:1fr}}.stats-panel__cell{background:var(--background-secondary);padding:1.6rem 1.75rem;display:flex;flex-direction:column;gap:.9rem}.stats-panel__head{display:flex;align-items:center;gap:.5rem;font-size:.6875rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--text-secondary)}.stats-panel__head svg{font-size:1rem;flex-shrink:0}.stats-panel__head--brand svg{color:var(--accent)}.stats-panel__head--record svg{color:var(--warning)}.stats-panel__head--success svg{color:var(--success)}.stats-panel__figure{display:flex;align-items:baseline;gap:.5rem}.stats-panel__number{font-size:2.5rem;font-weight:700;color:var(--text-primary);letter-spacing:-.03em;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stats-panel__number--fit{font-size:1.75rem;line-height:1.1}.stats-panel__unit{font-size:.875rem;font-weight:500;color:var(--text-secondary)}.stats-panel__delta{display:inline-flex;align-items:center;gap:.15rem;font-size:.75rem;font-weight:600;color:var(--success)}.stats-panel__delta svg{width:.85rem;height:.85rem}.stats-panel__delta--down{color:var(--error)}.stats-panel__context{font-size:.75rem;color:var(--text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stats-panel__context-stack{display:flex;flex-direction:column;gap:.25rem}.stats-panel__progress{display:flex;align-items:center;gap:.6rem}.stats-panel__progress-track{flex:1 1;height:4px;border-radius:9999px;background:var(--border);overflow:hidden}.stats-panel__progress-fill{height:100%;border-radius:9999px;background:var(--success)}.stats-overview__chart-section,.stats-overview__heatmap-section,.stats-overview__nutrition-section,.stats-overview__prs-section{background-color:var(--background-secondary);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.stats-overview__chart-section h3,.stats-overview__heatmap-section h3,.stats-overview__nutrition-section h3,.stats-overview__prs-section h3{margin:0 0 1.5rem;color:var(--text-primary);font-size:1.25rem}.stats-overview__ai-profile-section .ai-profile{margin-top:0;padding:0;background-color:transparent;border:0;border-radius:0}.stats-overview__chart{width:100%;min-width:300px;overflow-x:auto}.stats-overview__chart svg{width:100%!important;height:auto!important;max-width:100%}.stats-overview__chart .recharts-responsive-container{min-width:100%!important}.stats-overview__heatmap{--hm-l1:color-mix(in srgb,var(--success) 35%,var(--background-primary));--hm-l2:var(--success);--hm-l3:color-mix(in srgb,var(--success) 70%,#10131a)}[data-theme=dark] .stats-overview__heatmap{--hm-l3:color-mix(in srgb,var(--success) 70%,#fff)}.stats-overview__heatmap .heatmap-legend{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:1rem;font-size:.85rem;color:var(--text-secondary)}.stats-overview__heatmap .heatmap-legend__colors{display:flex;gap:4px}.stats-overview__heatmap .heatmap-legend__color{width:16px;height:16px;border-radius:4px}.stats-overview__heatmap .heatmap{display:flex;justify-content:safe center;overflow-x:auto}.stats-overview__heatmap .heatmap__gutter{display:flex;flex-direction:column;gap:var(--hm-gap,4px);margin-top:16px;margin-right:6px;min-width:26px}.stats-overview__heatmap .heatmap__gutter-row{height:var(--hm-cell,16px);display:flex;align-items:center;font-size:.6rem;color:var(--text-secondary)}.stats-overview__heatmap .heatmap__months{position:relative;height:16px}.stats-overview__heatmap .heatmap__month{position:absolute;top:0;font-size:.6rem;color:var(--text-secondary);white-space:nowrap}.stats-overview__heatmap .heatmap__columns{display:flex;gap:var(--hm-gap,4px)}.stats-overview__heatmap .heatmap__column{display:flex;flex-direction:column;gap:var(--hm-gap,4px)}.stats-overview__heatmap .heatmap-day{width:var(--hm-cell,16px);height:var(--hm-cell,16px);border-radius:max(2px,var(--hm-cell,16px)*.28)}.stats-overview__heatmap .heatmap-day--l0{background-color:var(--background-primary);border:1px solid var(--border,var(--background-primary))}.stats-overview__heatmap .heatmap-day--l1{background-color:var(--hm-l1)}.stats-overview__heatmap .heatmap-day--l2{background-color:var(--hm-l2)}.stats-overview__heatmap .heatmap-day--l3{background-color:var(--hm-l3)}.stats-overview__heatmap .heatmap-day--today{box-shadow:inset 0 0 0 1.5px var(--primary)}.stats-overview__heatmap .heatmap-day--future{opacity:.35}.stats-overview__prs-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));grid-gap:1rem;gap:1rem}.stats-overview__prs-list .pr-card{display:flex;align-items:center;gap:1rem;padding:1rem;background-color:var(--background-tertiary);border-radius:8px;border-left:3px solid var(--success);transition:transform .2s ease}.stats-overview__prs-list .pr-card:hover{transform:translateX(4px)}.stats-overview__prs-list .pr-card__icon{display:flex;align-items:center;color:var(--accent)}.stats-overview__prs-list .pr-card__icon svg{width:1.5rem;height:1.5rem}.stats-overview__prs-list .pr-card__content{flex:1 1}.stats-overview__prs-list .pr-card__exercise{font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.stats-overview__prs-list .pr-card__achievement{color:var(--text-secondary);font-size:.9rem;margin-bottom:.25rem}.stats-overview__prs-list .pr-card__date{color:var(--text-muted);font-size:.8rem}.exercise-analysis__selector{background-color:var(--background-secondary);padding:1.5rem;border-radius:12px;margin-bottom:2rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.exercise-analysis__selector label{font-weight:600;color:var(--text-primary)}.exercise-analysis__select{flex:1 1;min-width:250px;padding:.75rem 1rem;border:1px solid var(--border-primary);border-radius:6px;background-color:var(--background-primary);color:var(--text-primary);font-size:.95rem;cursor:pointer}.exercise-analysis__select:focus{outline:none;border-color:var(--primary)}.exercise-analysis__chart-section,.exercise-analysis__history{background-color:var(--background-secondary);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.exercise-analysis__chart-section h3,.exercise-analysis__history h3{margin:0 0 1.5rem;color:var(--text-primary);font-size:1.25rem}.exercise-analysis__chart{width:100%;min-width:300px;overflow-x:auto}.exercise-analysis__chart svg{width:100%!important;height:auto!important;max-width:100%}.exercise-analysis__chart .recharts-responsive-container{min-width:100%!important}.exercise-analysis__table-wrapper{overflow-x:auto}.exercise-analysis__table{width:100%;border-collapse:collapse}.exercise-analysis__table td,.exercise-analysis__table th{padding:.75rem;text-align:left;border-bottom:1px solid var(--border-primary)}.exercise-analysis__table th{background-color:var(--background-tertiary);color:var(--text-primary);font-weight:600;font-size:.9rem}.exercise-analysis__table td{color:var(--text-secondary);font-size:.9rem}.exercise-analysis__table tr:hover{background-color:var(--background-tertiary)}.exercise-analysis__empty{text-align:center;padding:3rem;color:var(--text-secondary)}.training-history__filters{background-color:var(--background-secondary);padding:1.5rem;border-radius:12px;margin-bottom:2rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.training-history__search{flex:1 1;min-width:250px;padding:.75rem 1rem;border:1px solid var(--border-primary);border-radius:6px;background-color:var(--background-primary);color:var(--text-primary);font-size:.95rem}.training-history__search::placeholder{color:var(--text-muted)}.training-history__search:focus{outline:none;border-color:var(--primary)}.training-history__count{color:var(--text-secondary);font-size:.9rem;font-weight:500}.training-history__list{display:flex;flex-direction:column;gap:1rem}.training-history__empty,.training-history__no-results{text-align:center;padding:3rem;background-color:var(--background-secondary);border-radius:12px}.training-history__empty p,.training-history__no-results p{color:var(--text-secondary);margin-bottom:1rem}.workout-history-card{background-color:var(--background-secondary);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow .2s ease}.workout-history-card:hover{box-shadow:var(--shadow-md)}.workout-history-card__header{padding:1.5rem;display:flex;align-items:center;gap:1.5rem;cursor:pointer;transition:background-color .2s ease}.workout-history-card__header:hover{background-color:var(--background-tertiary)}.workout-history-card__title-section{flex:1 1}.workout-history-card__date{font-size:.85rem;color:var(--text-secondary);margin-bottom:.25rem}.workout-history-card__title{margin:0 0 .25rem;font-size:1.1rem;color:var(--text-primary)}.workout-history-card__day{display:inline-block;padding:.25rem .75rem;background-color:var(--primary-light);color:var(--text-on-primary);border-radius:4px;font-size:.8rem;font-weight:500}.workout-history-card__metrics{display:flex;gap:1rem;flex-wrap:wrap}.workout-history-card__toggle{background:none;border:none;color:var(--text-secondary);font-size:1.25rem;cursor:pointer;padding:.5rem;transition:color .2s ease}.workout-history-card__toggle:hover{color:var(--primary)}.workout-history-card__details{padding:0 1.5rem 1.5rem;border-top:1px solid var(--border-primary);animation:slideDown .3s ease}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:2000px}}.metric-badge{display:flex;flex-direction:column;gap:.25rem;padding:.5rem .75rem;background-color:var(--background-tertiary);border-radius:6px}.metric-badge__label{font-size:.75rem;color:var(--text-muted)}.metric-badge__value{font-size:.9rem;font-weight:600;color:var(--text-primary)}.exercise-detail{margin-top:1.5rem;padding-top:1rem}.exercise-detail:first-child{margin-top:1rem}.exercise-detail__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.exercise-detail__name{margin:0;font-size:1rem;color:var(--text-primary)}.exercise-detail__metrics{color:var(--text-secondary);font-size:.9rem}.exercise-detail__sets{overflow-x:auto;margin-bottom:1rem}.exercise-detail__sets table{width:100%;border-collapse:collapse;font-size:.85rem}.exercise-detail__sets table th{background-color:var(--background-tertiary);padding:.5rem;text-align:left;color:var(--text-secondary);font-weight:500}.exercise-detail__sets table td{padding:.5rem;border-bottom:1px solid var(--border-primary);color:var(--text-primary)}.exercise-detail__sets table tr.incomplete{opacity:.5}.exercise-detail__notes,.exercise-detail__sets table tr:hover{background-color:var(--background-tertiary)}.exercise-detail__notes{padding:.75rem;border-radius:6px;font-size:.85rem;color:var(--text-secondary)}.exercise-detail__notes strong{color:var(--text-primary)}.set-type-badge{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:capitalize}.set-type-badge--warmup{background-color:var(--warning);color:#000}.set-type-badge--working{background-color:var(--success);color:#fff}.set-type-badge--extra{background-color:var(--info);color:#fff}.coach-dashboard__team-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));grid-gap:1.5rem;gap:1.5rem;margin-bottom:2.5rem}@media(max-width:768px){.coach-dashboard__team-metrics{grid-template-columns:1fr}}.coach-dashboard__alerts{background-color:var(--background-secondary);border-radius:12px;padding:1.5rem;margin-bottom:2rem;border-left:4px solid var(--warning)}.coach-dashboard__alerts h3{margin:0 0 1rem;color:var(--text-primary);font-size:1.25rem}.coach-dashboard__alerts .alert-list{display:flex;flex-direction:column;gap:.75rem}.coach-dashboard__alerts .alert-card{padding:1rem;background-color:var(--background-tertiary);border-radius:8px;cursor:pointer;transition:transform .2s ease,background-color .2s ease}.coach-dashboard__alerts .alert-card:hover{transform:translateX(4px);background-color:var(--background-primary)}.coach-dashboard__alerts .alert-card__content{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.coach-dashboard__alerts .alert-card__content strong{color:var(--text-primary)}.coach-dashboard__alerts .alert-card__content span{color:var(--text-secondary);font-size:.9rem}.coach-dashboard__alerts .alert-card__date{color:var(--text-muted);font-size:.8rem}.coach-dashboard__leaderboard,.coach-dashboard__recent-prs{background-color:var(--background-secondary);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.coach-dashboard__leaderboard h3,.coach-dashboard__recent-prs h3{margin:0 0 1.5rem;color:var(--text-primary);font-size:1.25rem}.coach-dashboard .leaderboard-table-wrapper{overflow-x:auto}.coach-dashboard .leaderboard-table{width:100%;border-collapse:collapse}.coach-dashboard .leaderboard-table td,.coach-dashboard .leaderboard-table th{padding:1rem .75rem;text-align:left;border-bottom:1px solid var(--border-primary)}.coach-dashboard .leaderboard-table th{background-color:var(--background-tertiary);color:var(--text-primary);font-weight:600;font-size:.9rem}.coach-dashboard .leaderboard-table th.sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color .2s ease}.coach-dashboard .leaderboard-table th.sortable:hover{background-color:var(--background-primary)}.coach-dashboard .leaderboard-table td{color:var(--text-secondary);font-size:.9rem}.coach-dashboard .leaderboard-table tr.clickable{cursor:pointer;transition:background-color .2s ease}.coach-dashboard .leaderboard-table tr.clickable:hover{background-color:var(--background-tertiary)}.coach-dashboard .leaderboard-table .rank-cell{font-size:1.1rem;font-weight:600}.coach-dashboard .leaderboard-table .rank-cell .rank-cell__medal{width:1.4rem;height:1.4rem;vertical-align:middle}.coach-dashboard .leaderboard-table .rank-cell .rank-cell__medal--gold{color:#f5c518}.coach-dashboard .leaderboard-table .rank-cell .rank-cell__medal--silver{color:#b8bcc4}.coach-dashboard .leaderboard-table .rank-cell .rank-cell__medal--bronze{color:#cd7f32}.coach-dashboard .leaderboard-table .athlete-cell strong{color:var(--text-primary);font-weight:600}.coach-dashboard .pr-feed{display:flex;flex-direction:column;gap:.75rem}.coach-dashboard .pr-feed-item{display:flex;align-items:center;gap:1rem;padding:1rem;background-color:var(--background-tertiary);border-radius:8px;border-left:3px solid var(--success)}.coach-dashboard .pr-feed-item__icon{display:flex;align-items:center;color:var(--success)}.coach-dashboard .pr-feed-item__icon svg{width:1.5rem;height:1.5rem}.coach-dashboard .pr-feed-item__content{flex:1 1}.coach-dashboard .pr-feed-item__athlete{font-weight:600;color:var(--text-primary);font-size:.95rem;margin-bottom:.25rem}.coach-dashboard .pr-feed-item__exercise{color:var(--text-secondary);font-size:.85rem;margin-bottom:.25rem}.coach-dashboard .pr-feed-item__achievement{color:var(--primary);font-weight:500;font-size:.9rem}.coach-dashboard .pr-feed-item__date{color:var(--text-muted);font-size:.8rem;text-align:right}.coach-dashboard .leaderboard-table__sort-arrow{width:.9rem;height:.9rem;vertical-align:middle;margin-left:.15rem}.coach-dashboard .consistency-cell{display:inline-flex;align-items:center;gap:.35rem}.coach-dashboard .consistency-cell__icon{width:1.05rem;height:1.05rem;flex-shrink:0}.coach-dashboard .consistency-cell__icon--hot{color:var(--accent)}.coach-dashboard .consistency-cell__icon--good{color:var(--info)}.coach-dashboard .consistency-cell__icon--ok{color:var(--success)}.coach-dashboard .consistency-cell__icon--risk{color:var(--warning)}.coach-dashboard__alerts h3,.coach-dashboard__recent-prs h3{display:flex;align-items:center;gap:.5rem}.coach-dashboard__alerts h3 svg,.coach-dashboard__recent-prs h3 svg{width:1.25rem;height:1.25rem;flex-shrink:0}.coach-dashboard__alerts h3 svg{color:var(--warning)}.coach-dashboard__recent-prs h3 svg{color:var(--accent)}.metric-badge__label{display:inline-flex;align-items:center;gap:.3rem}.metric-badge__label svg{width:1rem;height:1rem;flex-shrink:0;color:var(--accent)}.workout-history-card__toggle svg{width:1rem;height:1rem;vertical-align:middle}.nutrition-adherence h3{display:flex;align-items:center;gap:.5rem}.nutrition-adherence h3 svg{width:1.25rem;height:1.25rem;flex-shrink:0;color:var(--accent)}.nutrition-adherence__plan{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.nutrition-adherence__plan-name{color:var(--text-primary);font-weight:600}.nutrition-adherence__badge{padding:.15rem .5rem;border-radius:999px;border:1px solid var(--border-primary);background:var(--background-primary);color:var(--text-secondary);font-size:.75rem;text-transform:uppercase;letter-spacing:.03em}.nutrition-adherence__days{display:flex;align-items:baseline;gap:.4rem;margin-bottom:1.25rem}.nutrition-adherence__days-value{font-size:1.75rem;font-weight:700;color:var(--text-primary)}.nutrition-adherence__days-label{font-size:.85rem;color:var(--text-secondary)}.nutrition-adherence__macros{display:flex;flex-direction:column;gap:.75rem}.nutrition-adherence__macro{display:grid;grid-template-columns:7rem 1fr 3.5rem;align-items:center;grid-gap:.75rem;gap:.75rem}@media(max-width:600px){.nutrition-adherence__macro{grid-template-columns:5rem 1fr 3rem;gap:.5rem}}.nutrition-adherence__macro-label{color:var(--text-secondary);font-size:.85rem}.nutrition-adherence__bar{height:.5rem;border-radius:999px;background:var(--background-primary);border:1px solid var(--border-primary);overflow:hidden}.nutrition-adherence__bar-fill{height:100%;border-radius:inherit;transition:width .3s ease}.nutrition-adherence__bar-fill--on{background:var(--success)}.nutrition-adherence__bar-fill--under{background:var(--warning)}.nutrition-adherence__bar-fill--over{background:var(--danger)}.nutrition-adherence__macro-value{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600;text-align:right}.nutrition-adherence__macro-value--on{color:var(--success)}.nutrition-adherence__macro-value--under{color:var(--warning)}.nutrition-adherence__macro-value--over{color:var(--danger)}.nutrition-adherence__footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;margin-top:1.25rem;color:var(--text-muted);font-size:.8rem}.nutrition-adherence__status{margin:0;color:var(--text-secondary)}.nutrition-adherence__empty h4{margin:0 0 .35rem;color:var(--text-primary);font-size:1rem}.nutrition-adherence__empty p{margin:0;color:var(--text-secondary);font-size:.9rem}.athlete-measurements{background-color:var(--background-secondary);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.athlete-measurements h3{display:flex;align-items:center;gap:.5rem;margin:0 0 1.5rem;color:var(--text-primary);font-size:1.25rem}.athlete-measurements h3 svg{width:1.25rem;height:1.25rem;flex-shrink:0;color:var(--accent)}.athlete-measurements__summary{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.athlete-measurements__field{display:grid;grid-template-columns:auto auto;align-items:baseline;grid-gap:.15rem .5rem;gap:.15rem .5rem;flex:1 1 12rem;padding:.85rem 1rem;border:1px solid var(--border-primary);border-radius:10px;background:var(--background-primary)}.athlete-measurements__field-label{grid-column:1/-1;color:var(--text-secondary);font-size:.85rem}.athlete-measurements__field-value{font-size:1.5rem;font-weight:700;color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.athlete-measurements__field-unit{font-size:.9rem;font-weight:500;color:var(--text-secondary)}.athlete-measurements__field-delta{font-size:.85rem;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.athlete-measurements__field-delta--down{color:var(--success)}.athlete-measurements__field-delta--up{color:var(--warning)}.athlete-measurements__field-delta--flat{color:var(--text-muted)}.athlete-measurements__field-date{grid-column:1/-1;color:var(--text-muted);font-size:.75rem}.athlete-measurements__trend{display:flex;flex-direction:column;gap:.75rem}.athlete-measurements__chart-selector{display:inline-flex;align-self:flex-start;gap:.25rem;padding:.25rem;border:1px solid var(--border);border-radius:999px;background:var(--surface)}.athlete-measurements__chart-option{padding:.4rem .85rem;border:0;border-radius:999px;background:transparent;color:var(--text-dim);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:background-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.athlete-measurements__chart-option:hover{color:var(--text)}.athlete-measurements__chart-option:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.athlete-measurements__chart-option--active{background:var(--accent);color:var(--accent-ink)}.athlete-measurements__chart{width:100%;min-width:300px;overflow-x:auto}.athlete-measurements__chart svg{max-width:100%;height:auto}.athlete-measurements__chart-title{margin:0 0 .25rem;color:var(--text-primary);font-size:.95rem;font-weight:600}.athlete-measurements__chart-unit{color:var(--text-secondary);font-weight:400}.athlete-measurements__status{margin:0;color:var(--text-secondary)}.athlete-measurements__empty h4{margin:0 0 .35rem;color:var(--text-primary);font-size:1rem}.athlete-measurements__empty p{margin:0;color:var(--text-secondary);font-size:.9rem}.athlete-measurements__notes{margin-top:1rem}.athlete-measurements__notes ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}.athlete-measurements__notes-title{margin:0 0 .5rem;color:var(--text-primary);font-size:.95rem;font-weight:600}.athlete-measurements__note{display:flex;align-items:baseline;gap:.6rem;font-size:.9rem}.athlete-measurements__note-date{flex-shrink:0;color:var(--text-muted);font-size:.8rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.athlete-measurements__note-text{color:var(--text-secondary);white-space:pre-wrap;overflow-wrap:anywhere}.athlete-food-log{background-color:var(--background-secondary);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.athlete-food-log h3{display:flex;align-items:center;gap:.5rem;margin:0 0 .35rem;color:var(--text-primary);font-size:1.25rem}.athlete-food-log h3 svg{width:1.25rem;height:1.25rem;flex-shrink:0;color:var(--accent)}.athlete-food-log__window{margin:0 0 1.5rem;color:var(--text-muted);font-size:.8rem}.athlete-food-log__days{display:flex;flex-direction:column;gap:1.25rem}.athlete-food-log__day-header{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:.5rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-primary)}.athlete-food-log__day-date{color:var(--text-primary);font-weight:600;text-transform:capitalize}.athlete-food-log__day-totals{display:flex;align-items:baseline;gap:.75rem;color:var(--text-secondary);font-size:.85rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.athlete-food-log__day-totals strong{color:var(--text-primary)}.athlete-food-log__breakdown{display:flex;flex-wrap:wrap;gap:.2rem .9rem;list-style:none;margin:.5rem 0 0;padding:0;color:var(--text-dim);font-size:.8rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.athlete-food-log__breakdown-item{display:inline-flex;align-items:baseline;gap:.3rem}.athlete-food-log__breakdown-value{font-weight:600}.athlete-food-log__entries{list-style:none;margin:0;padding:0}.athlete-food-log__entry{display:grid;grid-template-columns:1fr 6rem 6rem;align-items:baseline;grid-gap:.75rem;gap:.75rem;padding:.5rem 0}.athlete-food-log__entry+.athlete-food-log__entry{border-top:1px solid var(--border-primary)}@media(max-width:600px){.athlete-food-log__entry{grid-template-columns:1fr 5rem;row-gap:.25rem}}.athlete-food-log__entry-main{display:flex;flex-direction:column;gap:.1rem;min-width:0}.athlete-food-log__entry-name{color:var(--text-primary);overflow-wrap:anywhere}.athlete-food-log__entry-brand{color:var(--text-muted)}.athlete-food-log__entry-meta{color:var(--text-muted);font-size:.8rem}.athlete-food-log__entry-amount,.athlete-food-log__entry-kcal{color:var(--text-secondary);font-size:.9rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.athlete-food-log__entry-kcal{color:var(--text-primary);font-weight:600}.athlete-food-log__status{margin:0;color:var(--text-secondary)}.athlete-food-log__empty h4{margin:0 0 .35rem;color:var(--text-primary);font-size:1rem}.athlete-food-log__empty p{margin:0;color:var(--text-secondary);font-size:.9rem}.athlete-materials{background-color:var(--background-secondary);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.athlete-materials__header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.athlete-materials h3{display:flex;align-items:center;gap:.5rem;margin:0 0 .35rem;color:var(--text-primary);font-size:1.25rem}.athlete-materials h3 svg{width:1.25rem;height:1.25rem;flex-shrink:0;color:var(--accent)}.athlete-materials__subtitle{margin:0;color:var(--text-muted);font-size:.85rem}.athlete-materials__notice{margin:0 0 1.5rem;padding:.65rem .85rem;border:1px solid var(--border-primary);border-left:3px solid var(--warning);border-radius:8px;background:var(--background-primary);color:var(--text-secondary);font-size:.85rem}.athlete-materials__list{display:flex;flex-direction:column;gap:.75rem}.athlete-materials__item{padding:.9rem 1rem;border:1px solid var(--border-primary);border-radius:10px;background:var(--background-primary)}.athlete-materials__item-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.athlete-materials__item-main{display:flex;flex-direction:column;align-items:flex-start;gap:.3rem;min-width:0}.athlete-materials__kind{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .5rem;border-radius:999px;background:var(--surface-2);color:var(--text-secondary);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.athlete-materials__kind svg{width:.85rem;height:.85rem}.athlete-materials__kind--link{color:var(--accent-text)}.athlete-materials__item-title{margin:0;color:var(--text-primary);font-size:1rem;overflow-wrap:anywhere}.athlete-materials__item-url{display:inline-flex;align-items:center;gap:.3rem;color:var(--accent-text);font-size:.85rem;overflow-wrap:anywhere}.athlete-materials__item-url svg{width:.85rem;height:.85rem;flex-shrink:0}.athlete-materials__item-meta{color:var(--text-muted);font-size:.8rem}.athlete-materials__item-actions{display:flex;flex-shrink:0;gap:.25rem}.athlete-materials__form{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding:1.25rem;border:1px solid var(--border-primary);border-radius:10px;background:var(--background-primary)}.athlete-materials__kind-toggle{display:inline-flex;align-self:flex-start;gap:.25rem;padding:.25rem;border:1px solid var(--border);border-radius:999px;background:var(--surface)}.athlete-materials__kind-option{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .85rem;border:0;border-radius:999px;background:transparent;color:var(--text-dim);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:background-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.athlete-materials__kind-option svg{width:.95rem;height:.95rem}.athlete-materials__kind-option:hover{color:var(--text)}.athlete-materials__kind-option:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.athlete-materials__kind-option--active{background:var(--accent);color:var(--accent-ink)}.athlete-materials__field{display:flex;flex-direction:column;gap:.35rem}.athlete-materials__field>span{color:var(--text-secondary);font-size:.85rem;font-weight:600}.athlete-materials__field input{width:100%;padding:.6rem .75rem;border:1px solid var(--border-primary);border-radius:8px;background:var(--background-secondary);color:var(--text-primary);font:inherit}.athlete-materials__asterisk{color:var(--error);font-style:normal}.athlete-materials__error{margin:0;color:var(--error);font-size:.8rem}.athlete-materials__helper{margin:0;color:var(--text-muted);font-size:.8rem}.athlete-materials__form-actions{display:flex;flex-wrap:wrap;gap:.5rem}.athlete-materials__status{margin:0;color:var(--text-secondary)}.athlete-materials__empty h4{margin:0 0 .35rem;color:var(--text-primary);font-size:1rem}.athlete-materials__empty p{margin:0;color:var(--text-secondary);font-size:.9rem}.exercise-analysis__trend{display:inline-flex;align-items:center;gap:.35rem}.exercise-analysis__trend svg{width:1.5rem;height:1.5rem;flex-shrink:0}.exercise-analysis__trend--up{color:var(--success)}.exercise-analysis__trend--down{color:var(--danger)}.athlete-check-ins{background-color:var(--background-secondary);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.athlete-check-ins h3{display:flex;align-items:center;gap:.5rem;margin:0 0 .35rem;color:var(--text-primary);font-size:1.25rem}.athlete-check-ins h3 svg{width:1.25rem;height:1.25rem;flex-shrink:0;color:var(--accent)}.athlete-check-ins__window{margin:0 0 1.5rem;color:var(--text-muted);font-size:.8rem}.athlete-check-ins__weeks{display:flex;flex-direction:column;gap:.5rem}.athlete-check-ins__week{border:1px solid var(--border-primary);border-radius:10px;background:var(--background-primary);overflow:hidden}.athlete-check-ins__week-toggle{display:flex;align-items:center;gap:.6rem;width:100%;padding:.85rem 1rem;border:0;background:transparent;color:var(--text-primary);font:inherit;text-align:left;cursor:pointer;transition:background-color var(--dur-fast) var(--ease)}.athlete-check-ins__week-toggle:hover{background:var(--surface-2)}.athlete-check-ins__week-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.athlete-check-ins__week-toggle svg{width:1rem;height:1rem;flex-shrink:0;color:var(--text-dim)}.athlete-check-ins__week-label{font-weight:600}.athlete-check-ins__week-meta{margin-left:auto;color:var(--text-secondary);font-size:.8rem;white-space:nowrap}.athlete-check-ins__answers{padding:0 1rem .85rem}.athlete-check-ins__answers ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.athlete-check-ins__answer{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:.55rem 0;border-top:1px solid var(--border-primary)}.athlete-check-ins__answer--text{flex-direction:column;align-items:stretch;gap:.25rem}.athlete-check-ins__answer-label{color:var(--text-secondary);font-size:.9rem}.athlete-check-ins__answer-value{color:var(--text-primary);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right;overflow-wrap:anywhere}.athlete-check-ins__answer--text .athlete-check-ins__answer-value{font-weight:400;text-align:left;white-space:pre-wrap}.athlete-check-ins__status{margin:0;color:var(--text-secondary)}.athlete-check-ins__empty h4{margin:0 0 .35rem;color:var(--text-primary);font-size:1rem}.athlete-check-ins__empty p{margin:0;color:var(--text-secondary);font-size:.9rem}.check-ins-overview__summary{margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--border-primary);border-radius:var(--radius-md);background:var(--surface-2);color:var(--text-secondary)}@media(max-width:768px){.coach-dashboard__team-metrics,.exercise-analysis__metrics,.stats-overview__metrics{grid-template-columns:1fr}.stats-card{padding:1rem}.stats-card__icon{font-size:1.5rem}.stats-card__icon svg{width:1.5rem;height:1.5rem}.stats-card__value{font-size:1.5rem}.workout-history-card__header{flex-direction:column;align-items:flex-start}.workout-history-card__metrics{width:100%}.workout-history-card__toggle{align-self:flex-end}.metric-badge{flex:1 1;min-width:100px}}.firebase-schemas{padding:2rem;color:var(--text-primary)}.firebase-schemas__header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:1.5rem}.firebase-schemas__header h1{font-size:1.75rem;margin:0}.firebase-schemas__header p{margin:.25rem 0 0;color:var(--text-secondary);max-width:640px}.firebase-schemas__tabs{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.75rem}.firebase-schemas__tab{border:1px solid var(--border-primary);background:var(--background-secondary);color:var(--text-secondary);padding:.5rem 1rem;border-radius:20px;cursor:pointer;transition:background .2s ease,color .2s ease,border .2s ease}.firebase-schemas__tab--active{background:var(--primary);border-color:var(--primary);color:var(--text-on-primary)}.firebase-schemas__tab:hover:not(.firebase-schemas__tab--active){border-color:var(--primary);color:var(--text-primary)}.firebase-schemas__body{display:flex;flex-direction:column;gap:2rem}.firebase-schemas__section{background:var(--background-secondary);border:1px solid var(--border-primary);border-radius:16px;padding:1.5rem;box-shadow:var(--shadow-md)}.firebase-schemas__section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.firebase-schemas__section-header h2{margin:0;font-size:1.4rem}.firebase-schemas__section-header p{margin:.35rem 0 0;color:var(--text-secondary);max-width:520px}.firebase-schemas__access-denied{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center}.firebase-schemas__access-denied h1{font-size:2rem;margin-bottom:.5rem}.firebase-schemas__access-denied p,.firebase-schemas__empty{color:var(--text-secondary)}.firebase-schemas__empty{font-style:italic;text-align:center;padding:2rem}.firebase-schemas__btn{padding:.5rem 1rem;border-radius:8px;border:1px solid var(--border-primary);background:var(--background-tertiary);color:var(--text-primary);cursor:pointer;transition:all .2s ease;font-size:.875rem}.firebase-schemas__btn:hover:not(:disabled){background:var(--background-secondary);border-color:var(--primary)}.firebase-schemas__btn:disabled{opacity:.5;cursor:not-allowed}.firebase-schemas__btn--primary{background:var(--primary);border-color:var(--primary);color:var(--text-on-primary)}.firebase-schemas__btn--primary:hover:not(:disabled){background:var(--primary-light);border-color:var(--primary-light)}.firebase-schemas__btn--danger{background:var(--error);border-color:var(--error);color:#fff}.firebase-schemas__btn--danger:hover:not(:disabled){opacity:.9}.firebase-schemas__btn--warning{background:var(--warning);border-color:var(--warning);color:#0d0d0d}.firebase-schemas__btn--warning:hover:not(:disabled){opacity:.9}.firebase-schemas__btn--success{background:var(--success);border-color:var(--success);color:#fff}.firebase-schemas__btn--success:hover:not(:disabled){opacity:.9}.firebase-schemas__btn--small{padding:.25rem .5rem;font-size:.75rem}.firebase-schemas__progress{position:relative;height:24px;background:var(--background-tertiary);border-radius:12px;overflow:hidden;margin-bottom:1.5rem}.firebase-schemas__progress-bar{position:absolute;top:0;left:0;height:100%;background:var(--primary);transition:width .3s ease}.firebase-schemas__progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.75rem;font-weight:500;color:var(--text-primary);white-space:nowrap}.firebase-schemas__schema-list{display:flex;flex-direction:column;gap:.5rem}.firebase-schemas__schema-item{border:1px solid var(--border-primary);border-radius:8px;overflow:hidden}.firebase-schemas__schema-toggle{display:flex;align-items:center;gap:1rem;width:100%;padding:.75rem 1rem;background:var(--background-tertiary);border:none;cursor:pointer;text-align:left;transition:background .2s ease}.firebase-schemas__schema-toggle:hover{background:var(--background-secondary)}.firebase-schemas__schema-name{font-weight:600;color:var(--text-primary);flex:1 1}.firebase-schemas__schema-chevron,.firebase-schemas__schema-count{font-size:.75rem;color:var(--text-secondary)}.firebase-schemas__schema-properties{padding:1rem;background:var(--background-secondary);display:flex;flex-direction:column;gap:.5rem}.firebase-schemas__property{display:grid;grid-template-columns:200px 120px 1fr;grid-gap:1rem;gap:1rem;padding:.5rem;border-radius:4px;background:var(--background-tertiary);font-size:.875rem}.firebase-schemas__property-name{font-weight:500;color:var(--text-primary)}.firebase-schemas__required{color:var(--error);margin-left:2px}.firebase-schemas__property-type{color:var(--primary);font-family:monospace}.firebase-schemas__property-desc{color:var(--text-secondary);font-size:.8rem}.firebase-schemas__issues-list{display:flex;flex-direction:column;gap:.5rem}.firebase-schemas__issue{padding:1rem;border:1px solid var(--border-primary);border-radius:8px;cursor:pointer;transition:all .2s ease}.firebase-schemas__issue:hover{border-color:var(--primary)}.firebase-schemas__issue--selected{border-color:var(--primary);background:var(--background-tertiary)}.firebase-schemas__issue-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.firebase-schemas__issue-badge{padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase}.firebase-schemas__issue-badge--missing{background:var(--warning);color:#0d0d0d}.firebase-schemas__issue-badge--wrong_type{background:var(--error);color:#fff}.firebase-schemas__issue-badge--deprecated{background:var(--text-secondary);color:#fff}.firebase-schemas__issue-field{font-weight:600;font-family:monospace}.firebase-schemas__issue-details{display:flex;gap:1rem;font-size:.8rem;color:var(--text-secondary)}.firebase-schemas__fix-panel{margin-top:1.5rem;padding:1.5rem;background:var(--background-tertiary);border-radius:8px;border:1px solid var(--primary)}.firebase-schemas__fix-panel h3{margin:0 0 .5rem;font-size:1.1rem}.firebase-schemas__fix-panel p{margin:0 0 1rem;color:var(--text-secondary);font-size:.875rem}.firebase-schemas__fix-form{display:flex;gap:.75rem;margin-bottom:1rem}.firebase-schemas__fix-form input{flex:1 1;padding:.5rem 1rem;border-radius:8px;border:1px solid var(--border-primary);background:var(--background-secondary);color:var(--text-primary)}.firebase-schemas__affected-users{font-size:.8rem}.firebase-schemas__affected-users strong{display:block;margin-bottom:.5rem}.firebase-schemas__affected-users pre{margin:0;padding:.5rem;background:var(--background-secondary);border-radius:4px;max-height:100px;overflow-y:auto;font-size:.75rem}.firebase-schemas__deprecated-list{display:flex;flex-direction:column;gap:1rem}.firebase-schemas__deprecated-item{padding:1rem;border:1px solid var(--border-primary);border-radius:8px;display:flex;flex-direction:column;gap:.75rem}.firebase-schemas__deprecated-info{display:flex;align-items:center;gap:1rem}.firebase-schemas__deprecated-name{font-weight:600;font-family:monospace;color:var(--text-primary)}.firebase-schemas__deprecated-count{font-size:.8rem;color:var(--text-secondary)}.firebase-schemas__deprecated-samples{font-size:.8rem}.firebase-schemas__deprecated-samples strong{display:block;margin-bottom:.25rem;color:var(--text-secondary)}.firebase-schemas__deprecated-samples pre{margin:0;padding:.5rem;background:var(--background-tertiary);border-radius:4px;max-height:100px;overflow-y:auto;font-size:.75rem}.firebase-schemas__migration-form{display:flex;flex-direction:column;gap:1rem}.firebase-schemas__form-group{display:flex;flex-direction:column;gap:.5rem}.firebase-schemas__form-group label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.firebase-schemas__form-group input,.firebase-schemas__form-group textarea{padding:.5rem 1rem;border-radius:8px;border:1px solid var(--border-primary);background:var(--background-tertiary);color:var(--text-primary);font-size:.875rem}.firebase-schemas__form-group input:focus,.firebase-schemas__form-group textarea:focus{outline:none;border-color:var(--primary)}.firebase-schemas__form-group textarea{resize:vertical;font-family:monospace}.firebase-schemas__form-group--checkbox{flex-direction:row;align-items:center}.firebase-schemas__form-group--checkbox label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.firebase-schemas__form-group--checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.firebase-schemas__migration-preview{padding:1rem;background:var(--background-tertiary);border-radius:8px;font-size:.875rem}.firebase-schemas__migration-preview strong{display:block;margin-bottom:.25rem;color:var(--text-secondary)}.firebase-schemas__migration-preview p{margin:0;font-family:monospace}.firebase-schemas__collection-selector{display:flex;flex-direction:column;gap:1rem;padding:1rem;background:var(--background-tertiary);border-radius:8px;margin-bottom:1.5rem}.firebase-schemas__button-group{display:flex;flex-wrap:wrap;gap:.5rem}.firebase-schemas__stats-list p{margin:0 0 1rem}.firebase-schemas__stats-list pre{margin:0 0 1rem;padding:1rem;background:var(--background-tertiary);border-radius:8px;max-height:200px;overflow-y:auto;font-size:.8rem}.firebase-schemas__stats-issues{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.firebase-schemas__stats-issue{padding:1rem;background:var(--background-tertiary);border:1px solid var(--border-primary);border-radius:8px}.firebase-schemas__stats-issue-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.firebase-schemas__stats-issue-header strong{color:var(--text-primary);font-family:monospace;font-size:.875rem}.firebase-schemas__stats-issue-actions{display:flex;align-items:center;gap:.75rem}.firebase-schemas__stats-issue-count{font-size:.75rem;color:var(--text-secondary);background:var(--background-secondary);padding:.25rem .5rem;border-radius:4px}.firebase-schemas__stats-issue-list{margin:0;padding-left:1.25rem;font-size:.8rem;color:var(--warning)}.firebase-schemas__stats-issue-list li{margin-bottom:.25rem}.firebase-schemas__stats-issue-list li:last-child{margin-bottom:0}.firebase-schemas__note{font-size:.8rem;color:var(--text-secondary);font-style:italic;padding:.75rem;background:var(--background-tertiary);border-radius:8px;border-left:3px solid var(--warning)}.firebase-schemas__debug-log{margin-top:2rem;padding:1rem;background:var(--background-secondary);border:1px solid var(--border-primary);border-radius:8px}.firebase-schemas__debug-log h3{margin:0 0 .75rem;font-size:1rem;color:var(--text-secondary)}.firebase-schemas__debug-log pre{margin:0;padding:.75rem;background:var(--background-tertiary);border-radius:4px;max-height:200px;overflow-y:auto;font-size:.75rem;font-family:monospace;color:var(--text-secondary)}.exercise-editor{padding:var(--space-8);color:var(--text-primary);max-width:1100px}.exercise-editor__header{margin-bottom:var(--space-6)}.exercise-editor__header h1{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-semibold);margin:0}.exercise-editor__header p{margin:var(--space-1) 0 0;color:var(--text-secondary)}.exercise-editor__toolbar{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap}.exercise-editor__search{display:flex;align-items:center;gap:var(--space-2);background:var(--background-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);flex:1 1;min-width:0;max-width:400px}.exercise-editor__search input{border:none;background:transparent;color:var(--text-primary);font-size:var(--text-md);width:100%}.exercise-editor__search input:focus{outline:none;box-shadow:none}.exercise-editor__search input::placeholder{color:var(--text-secondary)}.exercise-editor__search svg{color:var(--text-secondary);flex-shrink:0}.exercise-editor__count{color:var(--text-secondary);font-weight:var(--weight-semibold)}.exercise-editor__types-btn{margin-left:auto}.exercise-editor__filters{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-6);padding:var(--space-3) var(--space-4);background:var(--background-secondary);border-radius:var(--radius-md);border:1px solid var(--border-primary)}.exercise-editor__filter-checkbox{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;color:var(--text-secondary);font-size:var(--text-base)}.exercise-editor__filter-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--accent)}.exercise-editor__filter-checkbox:hover{color:var(--text-primary)}.exercise-editor__error{background:color-mix(in srgb,var(--error) 12%,transparent);border:1px solid var(--error);color:var(--error);padding:var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-6)}.exercise-editor__list{display:flex;flex-direction:column;gap:var(--space-2)}.exercise-editor__item{background:var(--background-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden;transition:border-color var(--dur) var(--ease)}.exercise-editor__item--expanded{border-color:var(--accent)}.exercise-editor__item--dirty{border-left:4px solid var(--warning)}.exercise-editor__item-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);cursor:pointer;transition:background var(--dur) var(--ease)}.exercise-editor__item-header:hover{background:var(--background-tertiary)}.exercise-editor__item-toggle{display:inline-flex;color:var(--text-secondary);font-size:var(--text-base)}.exercise-editor__item-name{font-weight:var(--weight-semibold);flex:1 1;min-width:0}.exercise-editor__item-dirty-badge{background:var(--warning);color:var(--accent-ink);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--weight-semibold)}.exercise-editor__item-meta{display:flex;gap:var(--space-2)}.exercise-editor__meta-badge{background:var(--background-tertiary);color:var(--text-secondary);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs)}.exercise-editor__item-content{border-top:1px solid var(--border-primary);padding:var(--space-6);background:var(--background-primary)}.exercise-editor__section{margin-bottom:var(--space-6)}.exercise-editor__section:last-child{margin-bottom:0}.exercise-editor__section h3{font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold);margin:0 0 var(--space-4);color:var(--text-primary)}.exercise-editor__section-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-4)}.exercise-editor__section-header h3{margin:0}.exercise-editor__translations-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--space-6);gap:var(--space-6)}@media(max-width:1024px){.exercise-editor__translations-grid{grid-template-columns:1fr}}.exercise-editor__translation-col{display:flex;flex-direction:column;gap:var(--space-3);min-width:0}.exercise-editor__translation-col h4{margin:0;font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--text-secondary);display:flex;align-items:center;gap:var(--space-2)}.exercise-editor__translation-col input,.exercise-editor__translation-col textarea{width:100%;background:var(--background-secondary);color:var(--text-primary)}.exercise-editor__translation-col textarea{min-height:80px;resize:vertical}.exercise-editor__textarea-wrapper{position:relative}.exercise-editor__ai-btn{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);border:1px solid var(--border-primary);background:var(--background-tertiary);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--weight-medium);cursor:pointer;transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease)}.exercise-editor__ai-btn:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.exercise-editor__ai-btn:disabled{opacity:.5;cursor:not-allowed}.exercise-editor__ai-btn svg{font-size:var(--text-xs)}.exercise-editor__ai-btn--desc{position:absolute;bottom:var(--space-2);right:var(--space-2)}.exercise-editor__taxonomy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-4);gap:var(--space-4)}@media(max-width:768px){.exercise-editor__taxonomy-grid{grid-template-columns:1fr}}.exercise-editor__taxonomy-field{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.exercise-editor__taxonomy-field label{font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--text-secondary)}.exercise-editor__videos{display:flex;flex-direction:column;gap:var(--space-3)}.exercise-editor__video-row{display:flex;gap:var(--space-2);align-items:center}.exercise-editor__video-row input{flex:1 1;min-width:0;background:var(--background-secondary);color:var(--text-primary)}.exercise-editor__actions{display:flex;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--border-primary);margin-top:var(--space-6)}.exercise-editor__pagination{display:flex;justify-content:center;align-items:center;gap:var(--space-4);margin-top:var(--space-8);padding:var(--space-4)}.exercise-editor__pagination span{color:var(--text-secondary);font-weight:var(--weight-semibold)}.exercise-editor__pagination button:disabled{opacity:.5;cursor:not-allowed}.exercise-editor__access-denied{padding:var(--space-12);border:1px dashed var(--border-primary);border-radius:var(--radius-lg);text-align:center;background:var(--background-secondary)}.exercise-editor__access-denied h1{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-semibold)}.exercise-editor__access-denied p{margin:0;color:var(--text-secondary)}@media(max-width:768px){.exercise-editor{padding:var(--space-4)}.exercise-editor__toolbar{flex-direction:column;align-items:stretch}.exercise-editor__search{max-width:none}.exercise-editor__types-btn{margin-left:0}.exercise-editor__item-content{padding:var(--space-4)}.exercise-editor__actions{flex-direction:column}.exercise-editor__actions .c-btn{width:100%}}.exercise-types{padding:var(--space-8);color:var(--text-primary);max-width:1100px}.exercise-types__header{display:flex;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-6)}.exercise-types__header h1{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-semibold);margin:0}.exercise-types__header p{margin:var(--space-1) 0 0;color:var(--text-secondary)}.exercise-types__back-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-sm);border:1px solid var(--border-primary);background:var(--background-secondary);color:var(--text-primary);cursor:pointer;transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease),color var(--dur) var(--ease);flex-shrink:0}.exercise-types__back-btn:hover{background:var(--background-tertiary);border-color:var(--accent);color:var(--accent-text)}.exercise-types__summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:var(--space-4);gap:var(--space-4);margin-bottom:var(--space-6)}.exercise-types__stat{display:flex;flex-direction:column;align-items:center;padding:var(--space-4) var(--space-6);border-radius:var(--radius-md);background:var(--background-secondary);border:1px solid var(--border-primary);box-shadow:var(--shadow-sm);min-width:0}.exercise-types__stat--done{border-color:var(--success)}.exercise-types__stat--done .exercise-types__stat-value{color:var(--success)}.exercise-types__stat--auto{border-color:var(--info)}.exercise-types__stat--auto .exercise-types__stat-value{color:var(--info)}.exercise-types__stat--review{border-color:var(--warning)}.exercise-types__stat--review .exercise-types__stat-value{color:var(--warning)}.exercise-types__stat--time{border-color:var(--accent)}.exercise-types__stat--time .exercise-types__stat-value{color:var(--accent-text)}.exercise-types__stat-value{font-family:var(--font-display);font-size:var(--text-3xl);font-weight:var(--weight-bold);line-height:1}.exercise-types__stat-label{font-size:var(--text-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-top:var(--space-2)}.exercise-types__auto-save{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-6);padding:var(--space-4) var(--space-5);background:color-mix(in srgb,var(--info) 10%,var(--background-secondary));border:1px solid color-mix(in srgb,var(--info) 35%,var(--border-primary));border-radius:var(--radius-md)}.exercise-types__auto-save-hint{margin:0;font-size:var(--text-base);color:var(--text-secondary)}.exercise-types__scan-success{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);background:color-mix(in srgb,var(--success) 15%,transparent);border:1px solid color-mix(in srgb,var(--success) 40%,transparent);color:var(--success);font-weight:var(--weight-medium);font-size:var(--text-base)}.exercise-types__scan-success svg{font-size:var(--text-base)}.exercise-types__scan-result{display:flex;gap:var(--space-4);flex-wrap:wrap}.exercise-types__scan-stat{display:inline-flex;align-items:center;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--background-secondary);border:1px solid var(--border-primary);font-size:var(--text-sm);color:var(--text-secondary);font-weight:var(--weight-medium)}.exercise-types__sync{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-6);padding:var(--space-4) var(--space-5);background:color-mix(in srgb,var(--warning) 10%,var(--background-secondary));border:1px solid color-mix(in srgb,var(--warning) 35%,var(--border-primary));border-radius:var(--radius-md)}.exercise-types__sync h3{display:flex;align-items:center;gap:var(--space-2);margin:0;font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--text-primary)}.exercise-types__sync h3 svg{color:var(--warning)}.exercise-types__sync-description{margin:0;font-size:var(--text-base);color:var(--text-secondary)}.exercise-types__sync-actions{display:flex;align-items:flex-start;gap:var(--space-4);flex-wrap:wrap}.exercise-types__sync-progress{margin:0;font-size:var(--text-base);color:var(--text-secondary);font-style:italic}.exercise-types__mismatches{width:100%;padding:var(--space-3) var(--space-4);background:var(--background-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm)}.exercise-types__mismatches-title{margin:0 0 var(--space-2) 0;font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--text-primary)}.exercise-types__mismatches-list{margin:0;padding-left:var(--space-5);font-size:var(--text-sm);color:var(--text-secondary)}.exercise-types__mismatches-list li{margin-bottom:var(--space-1)}.exercise-types__mismatches-list li strong{color:var(--text-primary)}.exercise-types__mismatches-more{font-style:italic;color:var(--text-muted)}.exercise-types__toolbar{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);flex-wrap:wrap}.exercise-types__search{display:flex;align-items:center;gap:var(--space-2);background:var(--background-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);flex:1 1;min-width:0;max-width:400px}.exercise-types__search input{border:none;background:transparent;color:var(--text-primary);font-size:var(--text-md);width:100%}.exercise-types__search input:focus{outline:none;box-shadow:none}.exercise-types__search input::placeholder{color:var(--text-secondary)}.exercise-types__search svg{color:var(--text-secondary);flex-shrink:0}.exercise-types__count{color:var(--text-secondary);font-weight:var(--weight-semibold)}.exercise-types__save-all-btn{margin-left:auto}.exercise-types__filters{display:flex;flex-wrap:wrap;gap:var(--space-6);margin-bottom:var(--space-6);padding:var(--space-3) var(--space-4);background:var(--background-secondary);border-radius:var(--radius-md);border:1px solid var(--border-primary)}.exercise-types__filter-radio{display:inline-flex;align-items:center;gap:var(--space-2);cursor:pointer;color:var(--text-secondary);font-size:var(--text-base);transition:color var(--dur) var(--ease)}.exercise-types__filter-radio input[type=radio]{width:16px;height:16px;cursor:pointer;accent-color:var(--accent)}.exercise-types__filter-radio:hover{color:var(--text-primary)}.exercise-types__filter-icon--warning{color:var(--warning);font-size:var(--text-base)}.exercise-types__filter-icon--magic{color:var(--info);font-size:var(--text-base)}.exercise-types__filter-icon--time{color:var(--accent-text);font-size:var(--text-base)}.exercise-types__list{display:flex;flex-direction:column;background:var(--background-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.exercise-types__list-header{display:grid;grid-template-columns:minmax(0,1fr) 150px 180px 150px 60px;grid-gap:var(--space-4);gap:var(--space-4);padding:var(--space-3) var(--space-5);background:var(--background-tertiary);border-bottom:1px solid var(--border-primary);font-weight:var(--weight-semibold);font-size:var(--text-base);color:var(--text-secondary)}@media(max-width:1024px){.exercise-types__list-header{grid-template-columns:minmax(0,1fr) 120px 150px 120px 50px;gap:var(--space-2);font-size:var(--text-xs)}}@media(max-width:768px){.exercise-types__list-header{display:none}}.exercise-types__row{display:grid;grid-template-columns:minmax(0,1fr) 150px 180px 150px 60px;grid-gap:var(--space-4);gap:var(--space-4);padding:var(--space-3) var(--space-5);align-items:center;border-bottom:1px solid var(--border-primary);transition:background var(--dur-fast) var(--ease)}.exercise-types__row:last-child{border-bottom:none}.exercise-types__row:hover{background:var(--background-tertiary)}.exercise-types__row--dirty{background:color-mix(in srgb,var(--warning) 8%,transparent);border-left:3px solid var(--warning)}.exercise-types__row--dirty:hover{background:color-mix(in srgb,var(--warning) 14%,transparent)}.exercise-types__row--review{background:color-mix(in srgb,var(--warning) 5%,transparent)}.exercise-types__row--auto{background:color-mix(in srgb,var(--info) 6%,transparent)}@media(max-width:1024px){.exercise-types__row{grid-template-columns:minmax(0,1fr) 120px 150px 120px 50px;gap:var(--space-2)}}@media(max-width:768px){.exercise-types__row{grid-template-columns:1fr;gap:var(--space-3)}}.exercise-types__col-name{font-weight:var(--weight-medium);display:flex;align-items:center;gap:var(--space-2);overflow:hidden;text-overflow:ellipsis;min-width:0}@media(max-width:768px){.exercise-types__col-units:before{content:"Units: ";font-weight:600;color:var(--text-secondary)}.exercise-types__col-direction:before,.exercise-types__col-type:before{content:attr(data-label);font-weight:600;color:var(--text-secondary);margin-right:.5rem}}.exercise-types__col-action{display:flex;justify-content:flex-end}.exercise-types__badge{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-bold);flex-shrink:0}.exercise-types__badge svg{width:14px;height:14px}.exercise-types__badge--warning{background:var(--warning);color:var(--accent-ink)}.exercise-types__badge--auto{background:var(--info);color:#fff}.exercise-types__units-display{font-size:var(--text-xs);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--background-tertiary);color:var(--text-secondary);white-space:nowrap}.exercise-types__select{width:100%;font-size:var(--text-base);cursor:pointer}@media(max-width:1024px){.exercise-types__select{font-size:var(--text-xs)}}.exercise-types__na{color:var(--text-secondary);font-size:var(--text-base);font-style:italic}.exercise-types__save-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);border:none;background:var(--success);color:#fff;cursor:pointer;transition:background-color var(--dur) var(--ease),transform var(--dur) var(--ease)}.exercise-types__save-btn:hover:not(:disabled){background:color-mix(in srgb,var(--success) 85%,#000);transform:scale(1.05)}.exercise-types__save-btn:disabled{opacity:.6;cursor:not-allowed}.exercise-types__save-btn svg{font-size:var(--text-base)}.exercise-types__empty{padding:var(--space-12);text-align:center;color:var(--text-secondary);font-style:italic}.exercise-types__pagination{display:flex;justify-content:center;align-items:center;gap:var(--space-4);margin-top:var(--space-8);padding:var(--space-4)}.exercise-types__pagination span{color:var(--text-secondary);font-weight:var(--weight-semibold)}.exercise-types__pagination button{padding:var(--space-2) var(--space-4);border-radius:var(--radius-sm);border:1px solid var(--border-primary);background:var(--background-secondary);color:var(--text-primary);cursor:pointer;transition:background-color var(--dur) var(--ease),border-color var(--dur) var(--ease)}.exercise-types__pagination button:hover:not(:disabled){background:var(--background-tertiary);border-color:var(--accent)}.exercise-types__pagination button:disabled{opacity:.5;cursor:not-allowed}.exercise-types__access-denied{padding:var(--space-12);border:1px dashed var(--border-primary);border-radius:var(--radius-lg);text-align:center;background:var(--background-secondary)}.exercise-types__access-denied h1{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:var(--text-xl);font-weight:var(--weight-semibold)}.exercise-types__access-denied p{margin:0;color:var(--text-secondary)}@media(max-width:768px){.exercise-types{padding:var(--space-4)}.exercise-types__summary{grid-template-columns:1fr}.exercise-types__stat{flex-direction:row;justify-content:space-between;align-items:center}.exercise-types__stat-value{font-size:var(--text-2xl)}.exercise-types__stat-label{margin-top:0}.exercise-types__toolbar{flex-direction:column;align-items:stretch}.exercise-types__search{max-width:none}.exercise-types__save-all-btn{margin-left:0;width:100%}.exercise-types__auto-save .c-btn{width:100%}.exercise-types__filters{flex-direction:column;gap:var(--space-3)}.exercise-types__sync-actions{flex-direction:column;align-items:stretch}.exercise-types__sync-actions .c-btn{width:100%}.exercise-types__scan-result{flex-direction:column;gap:var(--space-2)}.exercise-types__scan-stat{justify-content:center}}.founding-members__spots{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:var(--text-sm);font-weight:var(--weight-semibold);background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent-text);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);white-space:nowrap}.founding-members__lede{margin:0 0 var(--space-6);color:var(--text-secondary);max-width:60ch}.founding-members__empty{margin-top:var(--space-6);color:var(--text-secondary)}.athlete-result{max-width:860px;padding:var(--space-4)}.athlete-result__header{margin-bottom:var(--space-6)}.athlete-result__athlete{margin:0 0 var(--space-1);color:var(--accent);font-size:var(--text-sm);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.athlete-result__title{margin:0;font-family:var(--font-display);color:var(--text);line-height:1.15}.athlete-result__meta{margin:var(--space-1) 0 0;color:var(--text-dim)}.athlete-result__summary{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-4)}.athlete-result__chip{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface);color:var(--text);font-size:var(--text-sm);white-space:nowrap}.athlete-result__chip--pr{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--text);font-weight:600}.athlete-result__section-title{display:flex;align-items:center;gap:var(--space-2);margin:0 0 var(--space-3);font-size:var(--text-lg);color:var(--text)}.athlete-result__prs{margin-bottom:var(--space-6);padding:var(--space-4);border:1px solid color-mix(in srgb,var(--accent) 40%,var(--border));border-radius:var(--radius-md);background:color-mix(in srgb,var(--accent) 6%,var(--surface))}.athlete-result__pr-list{margin:0;padding:0;list-style:none}.athlete-result__pr-item{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0}.athlete-result__pr-item+.athlete-result__pr-item{border-top:1px solid color-mix(in srgb,var(--accent) 20%,var(--border))}.athlete-result__pr-main{display:flex;flex-direction:column;min-width:0}.athlete-result__pr-exercise{font-weight:600;color:var(--text);overflow-wrap:anywhere}.athlete-result__pr-type{color:var(--text-dim);font-size:var(--text-sm)}.athlete-result__pr-values{display:flex;align-items:baseline;gap:var(--space-2);flex-shrink:0}.athlete-result__pr-previous{color:var(--text-dim);font-size:var(--text-sm)}.athlete-result__pr-new{font-weight:700;color:var(--text);font-size:var(--text-lg)}.athlete-result__pr-improvement{color:var(--success,#23b894);font-weight:600;font-size:var(--text-sm)}.athlete-result__ai{margin-bottom:var(--space-6);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.athlete-result__ai-meta{margin:calc(var(--space-2)*-1) 0 var(--space-3);color:var(--text-dim);font-size:var(--text-sm)}.athlete-result__ai-body{max-width:68ch;color:var(--text)}.athlete-result__ai-disclaimer{margin:var(--space-3) 0 0;color:var(--text-dim);font-size:var(--text-sm)}.athlete-result__exercises{display:flex;flex-direction:column;gap:var(--space-4)}.athlete-result__exercise{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.athlete-result__exercise--pr{border-left:3px solid var(--accent)}.athlete-result__exercise-name{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:0 0 var(--space-3);font-size:var(--text-base,1rem);color:var(--text)}.athlete-result__pr-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:var(--radius-full);background:var(--accent);color:var(--accent-ink,var(--accent-text));font-size:var(--text-xs,.75rem);font-weight:700}.athlete-result__sets{width:100%;border-collapse:collapse}.athlete-result__sets th{padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--border);color:var(--text-dim);font-size:var(--text-xs,.75rem);font-weight:600;text-align:left;text-transform:uppercase;letter-spacing:.04em}.athlete-result__sets td{padding:var(--space-2);border-bottom:1px solid color-mix(in srgb,var(--border) 50%,transparent);color:var(--text)}.athlete-result__sets tr:last-child td{border-bottom:none}.athlete-result__set-number{width:20%;white-space:nowrap}.athlete-result__set-status{width:15%;text-align:center!important}.athlete-result__set-tag{margin-left:var(--space-1);color:var(--text-dim);font-size:var(--text-xs,.75rem);text-transform:uppercase}.athlete-result__set--skipped td{color:var(--text-dim);opacity:.7}.athlete-result__check{color:var(--success,#23b894)}.athlete-result__skip{color:var(--text-dim)}.athlete-result__notes{display:flex;gap:var(--space-2);margin:var(--space-3) 0 0;padding:var(--space-3);border-radius:var(--radius-sm);background:var(--surface-2,var(--background-secondary));color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere}.athlete-result__notes svg{flex-shrink:0;margin-top:3px;color:var(--text-dim)}@media(min-width:768px){.athlete-result{padding:var(--space-8)}.athlete-result__exercise{padding:var(--space-5)}}@media(max-width:480px){.athlete-result__pr-item{flex-direction:column;align-items:flex-start;gap:var(--space-1)}}.ai-prompts{display:flex;flex-direction:column;gap:1.5rem}.ai-prompts__title{margin:0}.ai-prompts__subtitle{margin:0;color:var(--text-dim)}.ai-prompts__error{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;color:var(--error);border:1px solid var(--error);border-radius:8px}.ai-prompts__tabs{display:flex;gap:.5rem;border-bottom:1px solid var(--border)}.ai-prompts__tab{padding:.5rem 1rem;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-dim);font-size:1rem;cursor:pointer}.ai-prompts__tab--active{color:var(--text);border-bottom-color:var(--accent)}.ai-prompts__section{display:flex;flex-direction:column;gap:.75rem}.ai-prompts__section-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.ai-prompts__section-title{margin:0;font-size:1.1rem}.ai-prompts__head-actions{display:flex;align-items:center;gap:.75rem}.ai-prompts__hint{margin:0;color:var(--text-dim);font-size:.85rem}.ai-prompts__lang{display:flex;align-items:center;gap:.5rem}.ai-prompts__coached{display:flex;align-items:center;gap:.4rem;color:var(--text-dim);font-size:.85rem;cursor:pointer}.ai-prompts__coached input{cursor:pointer;accent-color:var(--accent)}.ai-prompts__lang-label{color:var(--text-dim);font-size:.85rem}.ai-prompts__lang-select{padding:.25rem .5rem}.ai-prompts__copy,.ai-prompts__lang-select{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:6px}.ai-prompts__copy{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .75rem;cursor:pointer}.ai-prompts__copy:hover{border-color:var(--accent)}.ai-prompts__code-wrap{max-height:420px;overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:8px}.ai-prompts__code{margin:0;padding:1rem;font-size:.8rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}.ai-prompts__code--sm{font-size:.75rem}.ai-prompts__tools{display:flex;flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none}.ai-prompts__tool{padding:.75rem 1rem;background:var(--surface);border:1px solid var(--border);border-radius:8px}.ai-prompts__tool-name{font-family:monospace;font-weight:600}.ai-prompts__tool-desc{margin:.25rem 0 .5rem;color:var(--text-dim);font-size:.9rem;white-space:pre-wrap}.ai-prompts__tool-schema-summary{display:inline-flex;align-items:center;gap:.35rem;color:var(--text-dim);font-size:.85rem;cursor:pointer}.ai-prompts__tool-schema-caret{transition:transform .15s ease}.ai-prompts__tool-schema[open] .ai-prompts__tool-schema-caret{transform:rotate(180deg)}.ai-prompts__cache-note{display:flex;align-items:flex-start;gap:.5rem;margin:0;color:var(--warn);font-size:.85rem}.ai-prompts__textarea{width:100%;min-height:8rem;resize:vertical;padding:.75rem;background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:8px;font-family:inherit;font-size:.95rem}.ai-prompts__textarea:focus{outline:none;border-color:var(--accent)}.ai-prompts__char-count{display:block;margin:.25rem 0 .5rem;text-align:right;color:var(--text-dim);font-size:.8rem;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ai-prompts__save-row{display:flex;align-items:center;gap:1rem}.ai-prompts__save{padding:.5rem 1.25rem;background:var(--accent);color:var(--accent-ink);border:none;border-radius:6px;font-weight:600;cursor:pointer}.ai-prompts__save:disabled{opacity:.5;cursor:default}.ai-prompts__audit{color:var(--text-dim);font-size:.85rem}.copy-editor{display:flex;flex-direction:column;gap:var(--space-4)}.copy-editor__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-6);flex-wrap:wrap}.copy-editor__title{margin:0}.copy-editor__subtitle{margin:var(--space-1) 0 0;color:var(--text-dim);max-width:60ch}.copy-editor__audit{margin:var(--space-2) 0 0;color:var(--text-dim);font-size:.85rem}.copy-editor__actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.copy-editor__status{padding:var(--space-1) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--text-dim);font-size:.8rem}.copy-editor__status--pending{color:var(--warning);border-color:var(--warning)}.copy-editor__button{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-size:.95rem;cursor:pointer}.copy-editor__button:hover:not(:disabled){background:var(--surface-2)}.copy-editor__button:disabled{opacity:.5;cursor:not-allowed}.copy-editor__button--primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.copy-editor__button--primary:hover:not(:disabled){filter:brightness(1.05)}.copy-editor__hint{margin:0;color:var(--text-dim);font-size:.85rem}.copy-editor__banner{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-dim)}.copy-editor__banner--error{color:var(--error);border-color:var(--error)}.copy-editor__body{display:grid;grid-template-columns:260px minmax(0,1fr);grid-gap:var(--space-5);gap:var(--space-5);align-items:start}@media(max-width:900px){.copy-editor__body{grid-template-columns:minmax(0,1fr)}}.copy-walls{position:-webkit-sticky;position:sticky;top:var(--space-4);max-height:calc(100vh - var(--space-12));overflow-y:auto;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}@media(max-width:900px){.copy-walls{position:static;max-height:none}}.copy-walls__list{list-style:none;margin:0;padding:0}.copy-walls__group-title{margin:var(--space-4) 0 var(--space-2);padding:0 var(--space-2);color:var(--text-dim);font-size:.75rem;letter-spacing:.06em;text-transform:uppercase}.copy-walls__item{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border:none;border-radius:var(--radius-sm);background:none;color:var(--text-dim);font-size:.9rem;text-align:left;cursor:pointer}.copy-walls__item--active,.copy-walls__item:hover{background:var(--surface-2);color:var(--text)}.copy-walls__item--active{box-shadow:inset 2px 0 0 var(--accent)}.copy-walls__item-label{flex:1 1;min-width:0}.copy-walls__item-flask{color:var(--accent-text);flex-shrink:0}.copy-walls__item-badge{flex-shrink:0;min-width:1.35rem;padding:0 var(--space-1);border-radius:var(--radius-full);background:var(--warning);color:var(--accent-ink);font-size:.7rem;line-height:1.35rem;text-align:center}.copy-gaps{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.copy-gaps__summary{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);color:var(--text);cursor:pointer}.copy-gaps__caret{transition:transform .15s ease}.copy-gaps[open] .copy-gaps__caret{transform:rotate(180deg)}.copy-gaps__list{list-style:none;margin:0;padding:0 var(--space-4) var(--space-3);max-height:16rem;overflow-y:auto}.copy-gaps__row{display:flex;align-items:baseline;gap:var(--space-3);padding:var(--space-1) 0;border-top:1px solid var(--border);font-size:.85rem}.copy-gaps__row--blocking{color:var(--error)}.copy-gaps__link{border:none;background:none;padding:0;color:inherit;font:inherit;font-weight:600;text-decoration:underline;cursor:pointer}.copy-gaps__link:disabled{cursor:default;text-decoration:none}.copy-gaps__where{color:var(--text-dim);font-family:var(--font-body)}.copy-gaps__what{margin-left:auto;text-align:right}.copy-wall{flex-direction:column;min-width:0}.copy-wall,.copy-wall__head{display:flex;gap:var(--space-4)}.copy-wall__head{align-items:flex-start;justify-content:space-between;flex-wrap:wrap}.copy-wall__title{margin:0;font-size:1.15rem}.copy-wall__key{margin:0;color:var(--text-dim);font-size:.75rem}.copy-wall__variants{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.copy-wall__tabs{display:flex;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.copy-wall__tab{padding:var(--space-2) var(--space-3);border:none;background:var(--surface);color:var(--text-dim);font-size:.85rem;cursor:pointer}.copy-wall__tab--active{background:var(--surface-2);color:var(--text)}.copy-wall__action{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font-size:.85rem;cursor:pointer}.copy-wall__action:hover{background:var(--surface-2)}.copy-wall__action--danger{color:var(--error);border-color:var(--error)}.copy-wall__variant-note{margin:0;color:var(--text-dim);font-size:.85rem}.copy-wall__group{display:flex;flex-direction:column;gap:var(--space-4);margin:0;padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.copy-wall__group-title{padding:0 var(--space-2);color:var(--text-dim);font-size:.75rem;letter-spacing:.06em;text-transform:uppercase}.copy-field{flex-direction:column}.copy-field,.copy-field__head{display:flex;gap:var(--space-2)}.copy-field__head{align-items:baseline;flex-wrap:wrap}.copy-field__label{font-weight:600}.copy-field__badge{padding:0 var(--space-2);border:1px solid var(--border);border-radius:var(--radius-full);color:var(--text-dim);font-size:.7rem}.copy-field__hint{color:var(--text-dim);font-size:.75rem}.copy-field__locales{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--space-3);gap:var(--space-3)}@media(max-width:1100px){.copy-field__locales{grid-template-columns:minmax(0,1fr)}}.copy-field__locale{display:flex;flex-direction:column;gap:var(--space-1);padding-left:var(--space-2);border-left:2px solid transparent}.copy-field__locale--fi{border-left-color:var(--accent)}.copy-field__locale-tag{color:var(--text-dim);font-size:.7rem;letter-spacing:.08em}.copy-field__locale--fi .copy-field__locale-tag{color:var(--accent-text);font-weight:700}.copy-field__input{width:100%;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:.9rem;resize:vertical}.copy-field__input:focus{outline:2px solid var(--accent);outline-offset:1px}.copy-field__input--invalid{border-color:var(--error)}.copy-field__error{color:var(--error);font-size:.75rem}.p-funnels__subtitle{margin:0 0 var(--space-6);color:var(--text-secondary)}.p-funnels__funnel-picker{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-5)}.p-funnels__funnel-tab{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-secondary);background-color:var(--surface-2);border:1px solid var(--border-primary);border-radius:var(--radius-lg);cursor:pointer}.p-funnels__funnel-tab:hover{background-color:var(--surface-2);border-color:var(--accent)}.p-funnels__funnel-tab.is-active,.p-funnels__funnel-tab.is-active:hover{color:var(--accent-ink);background-color:var(--accent);border-color:var(--accent)}.p-funnels__range{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3);padding:0;margin:0 0 var(--space-2);background:transparent;box-shadow:none}.p-funnels__field{display:flex;flex-direction:column;gap:var(--space-1);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.p-funnels__field input{margin-bottom:0;min-width:10rem}.p-funnels__range-caption{margin:0 0 var(--space-5);font-size:var(--text-sm);color:var(--text-muted)}.p-funnels__count,.p-funnels__pct{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.p-funnels__pct{color:var(--text-secondary)}.p-funnels__overall{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-5);padding:var(--space-4) var(--space-5);background-color:var(--surface-2);border:1px solid var(--border-primary);border-radius:var(--radius-md)}.p-funnels__overall-label{font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary)}.p-funnels__overall-value{font-size:var(--text-xl);color:var(--text-primary);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.p-funnels__error{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);color:var(--error);background-color:color-mix(in srgb,var(--error) 10%,transparent);border-radius:var(--radius-sm)}.check-in-page__header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-4)}.check-in-page__header-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.check-in-page__lede{color:var(--text-secondary);margin:var(--space-1) 0 0;max-width:60ch}.check-in-page__search{position:relative;margin-bottom:var(--space-4);max-width:480px}.check-in-page__search-icon{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);width:.9rem;height:.9rem;color:var(--text-secondary);pointer-events:none}.check-in-page__search-input[type=text]{width:100%;padding:var(--space-2) var(--space-3) var(--space-2) var(--space-8);margin-bottom:0;background-color:var(--background-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:var(--radius-sm)}.check-in-page__error{color:var(--error);margin:var(--space-2) 0}.check-in-list{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-4)}.check-in-list__empty{color:var(--text-secondary);padding:var(--space-8) 0;text-align:center}.check-in-card{background-color:var(--background-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3);transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.check-in-card:hover{border-color:color-mix(in srgb,var(--accent) 28%,var(--border-primary));box-shadow:var(--shadow-md)}.check-in-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3)}.check-in-card__name{margin:0;font-family:var(--font-display);font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--text-primary)}.check-in-card__status{display:inline-flex;align-items:center;gap:var(--space-1);flex-shrink:0;padding:var(--space-1) var(--space-3);border:none;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em;cursor:pointer}.check-in-card__status:disabled{cursor:default;opacity:.75}.check-in-card__status--published{background-color:color-mix(in srgb,var(--success) 16%,transparent);color:var(--success)}.check-in-card__status--published:hover:not(:disabled){background-color:color-mix(in srgb,var(--success) 26%,transparent)}.check-in-card__status--draft{background-color:var(--surface-2);color:var(--text-secondary)}.check-in-card__status--draft:hover:not(:disabled){background-color:color-mix(in srgb,var(--accent) 14%,var(--surface-2))}.check-in-card__meta{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:center;color:var(--text-secondary);font-size:var(--text-base)}.check-in-card__reminder{display:inline-flex;align-items:center;gap:var(--space-1)}.check-in-card__actions{display:flex;gap:var(--space-2);flex-wrap:wrap}.check-in-card__delete{color:var(--error)}.check-in-editor__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-4)}.check-in-editor__header h1{margin:0;font-size:var(--text-xl)}.check-in-editor__header-actions{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.check-in-editor__caption{margin:0 0 var(--space-4);color:var(--text-secondary);font-size:var(--text-sm);max-width:70ch}.check-in-editor__body{display:flex;flex-direction:column;gap:var(--space-5);max-width:720px}.check-in-form__field{display:flex;flex-direction:column;gap:var(--space-1)}.check-in-form__field--narrow{max-width:260px}.check-in-form__label{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--text-secondary)}.check-in-form__required{color:var(--error);margin-left:2px}.check-in-form__input[type=text],.check-in-form__select{margin-bottom:0}.check-in-form__checkbox{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-base);color:var(--text-primary);white-space:nowrap}.check-in-form__checkbox input[type=checkbox]{margin-right:0}.check-in-form__fieldset{border:none;padding:0;margin:0;min-width:0}.check-in-form__hint{color:var(--text-secondary)}.check-in-form__error,.check-in-form__hint{display:block;margin:0;font-size:var(--text-xs)}.check-in-form__error{color:var(--error);font-weight:var(--weight-medium)}.check-in-questions{display:flex;flex-direction:column;gap:var(--space-3);align-items:flex-start}.check-in-questions__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);width:100%}.check-in-questions__title{margin:0;font-size:var(--text-lg)}.check-in-questions__count{color:var(--text-secondary);font-size:var(--text-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.check-in-questions__list{list-style:none;margin:0;padding:0;width:100%;display:flex;flex-direction:column;gap:var(--space-3)}.check-in-questions__empty{margin:0;color:var(--text-secondary)}.check-in-question{background-color:var(--background-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.check-in-question__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.check-in-question__index{display:grid;place-items:center;width:26px;height:26px;border-radius:var(--radius-full);background-color:var(--surface-2);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--weight-bold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.check-in-question__reorder{display:flex;gap:var(--space-1)}.check-in-question__remove{color:var(--error)}.check-in-question__scale,.check-in-question__settings{display:flex;gap:var(--space-4);flex-wrap:wrap;align-items:flex-end}.check-in-modal__subject{color:var(--text-secondary)}.check-in-modal__blocked,.check-in-modal__subject{margin:0 0 var(--space-4);font-size:var(--text-base)}.check-in-modal__blocked{color:var(--error)}.check-in-modal__field{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-4)}.check-in-modal__field-label{font-size:var(--text-sm);color:var(--text-secondary)}.check-in-modal__hint{margin:var(--space-3) 0 0;color:var(--text-secondary);font-size:var(--text-xs)}.check-in-modal__actions{display:flex;gap:var(--space-2);justify-content:flex-end;margin-top:var(--space-4)}.upload-status{background-color:var(--background-tertiary);border:1px solid var(--border-primary);border-radius:4px;padding:.75rem;margin-bottom:1rem}.upload-status p{margin:0;color:var(--text-secondary);font-size:.9rem}.images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-gap:1rem;gap:1rem;margin-top:.5rem}.images-grid .image-item{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;border:2px solid var(--border-primary)}.images-grid .image-item img{width:100%;height:100%;object-fit:cover}.images-grid .image-item .delete{position:absolute;top:4px;right:4px;width:28px;height:28px;border-radius:50%;background-color:var(--error);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:12px;opacity:.9;transition:opacity .2s ease}.images-grid .image-item .delete:hover:not(:disabled){opacity:1}.images-grid .image-item .delete:disabled{opacity:.5;cursor:not-allowed}.images-grid .image-upload-box{aspect-ratio:1;border:2px dashed var(--border-primary);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;background-color:var(--background-secondary);color:var(--text-secondary)}.images-grid .image-upload-box:hover:not(.disabled){border-color:var(--primary);background-color:var(--background-tertiary);color:var(--primary)}.images-grid .image-upload-box.disabled{opacity:.5;cursor:not-allowed;background-color:var(--background-tertiary)}.images-grid .image-upload-box input[type=file]{display:none}.images-grid .image-upload-box svg{font-size:1.5rem;margin-bottom:.5rem}.images-grid .image-upload-box .upload-text{font-size:.8rem;text-align:center;padding:0 .5rem}.images-grid .image-count{grid-column:1/-1;text-align:center;font-size:.85rem;color:var(--text-muted);margin-top:.5rem}.form-actions{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--border-primary)}.form-actions .c-btn{min-width:120px}.form-actions .c-btn.loading{opacity:.7;cursor:not-allowed}.form-actions .c-btn:disabled{opacity:.5;cursor:not-allowed}.error-message{color:var(--error);font-size:.85rem;margin-top:.5rem;grid-column:1/-1}.exercise-form{display:flex;flex-direction:column;gap:1.5rem;padding:1rem;margin:0 auto;background-color:var(--background-secondary);border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1)}.exercise-form .form-group{display:flex;flex-direction:column;gap:.5rem;width:100%}.exercise-form .form-group label{font-weight:500;color:var(--text-primary)}.exercise-form .form-group .form-control{padding:.5rem;border:1px solid var(--border-primary);background-color:var(--background-primary);color:var(--text-primary);border-radius:4px;font-size:1rem}.exercise-form .form-group .form-control:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px rgba(var(--primary-rgb),.2)}.exercise-form .form-group textarea.form-control{min-height:100px;resize:vertical}.exercise-form .form-group .image-count{display:block;margin-top:.5rem;color:var(--text-secondary);font-size:.875rem}.exercise-form .video-input .video-add-section{display:flex;gap:1rem;margin-bottom:1rem}.exercise-form .video-input .video-add-section input{flex:1 1}.exercise-form .video-input .video-list{display:flex;flex-direction:column;gap:1rem}.exercise-form .video-input .video-list .video-item{display:flex;align-items:center;gap:1rem;padding:.5rem;background:var(--background-tertiary);border-radius:4px}.exercise-form .video-input .video-list .video-item .video-thumbnail{width:120px;height:68px;object-fit:cover;border-radius:4px}.exercise-form .video-input .video-list .video-item span{flex:1 1;word-break:break-all}.exercise-form .images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:1rem;gap:1rem;margin-bottom:1rem}.exercise-form .images-grid .image-item{position:relative;aspect-ratio:1}.exercise-form .images-grid .image-item img{width:100%;height:100%;object-fit:cover;border-radius:4px}.exercise-form .images-grid .image-item .delete{position:absolute;top:.5rem;right:.5rem;background:var(--error);opacity:.8;color:#fff;border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity .2s}.exercise-form .images-grid .image-item .delete:hover{opacity:1}.exercise-form .images-grid .image-item .delete svg{width:14px;height:14px}.exercise-form .categories-section h2{margin-bottom:1rem;color:var(--text-primary)}.exercise-form .categories-section .categories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:1rem;gap:1rem}.exercise-form .checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.exercise-form .checkbox-label input[type=checkbox]{width:18px;height:18px}.exercise-form .c-btn{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:1rem;display:inline-flex;align-items:center;gap:.5rem;transition:all .2s}.exercise-form .c-btn.add{background:var(--primary);color:var(--text-on-primary)}.exercise-form .c-btn.add:hover{background:var(--primary-dark)}.exercise-form .c-btn.delete{background:var(--error);opacity:.8;color:#fff;padding:.25rem}.exercise-form .c-btn.delete:hover{opacity:1}.exercise-form .c-btn.submit{background:var(--primary);color:var(--text-on-primary);width:-moz-fit-content;width:fit-content;align-self:flex-end;font-weight:500;min-width:120px;text-align:center;justify-content:center}.exercise-form .c-btn.submit:hover{background:var(--primary-dark)}.exercise-form .c-btn.submit:disabled{background:var(--text-muted);cursor:not-allowed}.exercise-form .c-btn.submit.saved{background:var(--success);cursor:default}.exercise-form .c-btn.submit.saved:hover{background:var(--success)}.exercise-form .error-message{margin-top:1rem}.exercise-form .image-upload-label{display:inline-block;padding:8px 16px;background-color:var(--primary);color:var(--text-on-primary);border-radius:4px;cursor:pointer;transition:all .3s ease}.exercise-form .image-upload-label:hover{background-color:var(--primary-dark)}.exercise-form .image-upload-label input[type=file]{display:none}.exercise-form .image-upload-label.disabled{background-color:var(--text-muted);cursor:not-allowed}.exercise-form .image-count{margin-top:8px;color:var(--text-secondary);font-size:.9em}.exercise-form .error-message{color:var(--error);margin-top:8px;font-size:.9em}.exercise-form .translation-section{margin-top:2rem;padding-top:2rem;border-top:2px solid var(--border-primary)}.exercise-form .translation-section h3{margin-bottom:1rem;color:var(--text-primary);font-size:1.25rem}.exercise-form .translation-section .language-section{margin-bottom:1rem;border:1px solid var(--border-primary);border-radius:8px;overflow:hidden}.exercise-form .translation-section .language-section .language-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:var(--background-tertiary);cursor:pointer;transition:background-color .2s}.exercise-form .translation-section .language-section .language-header:hover{background:var(--background-primary)}.exercise-form .translation-section .language-section .language-header .language-info{display:flex;align-items:center;gap:.5rem}.exercise-form .translation-section .language-section .language-header .language-info svg{color:var(--text-secondary);width:14px;height:14px}.exercise-form .translation-section .language-section .language-header .language-info .flag{font-size:1.25rem}.exercise-form .translation-section .language-section .language-header .language-info .language-name{font-weight:500;color:var(--text-primary)}.exercise-form .translation-section .language-section .language-header .language-info .status-icon{margin-left:.5rem}.exercise-form .translation-section .language-section .language-header .language-info .status-icon.complete{color:var(--success)}.exercise-form .translation-section .language-section .language-header .language-info .status-icon.partial{color:var(--warning)}.exercise-form .translation-section .language-section .language-header .language-info .status-icon.empty{color:var(--text-secondary);font-size:1.1rem}.exercise-form .translation-section .language-section .language-content{padding:1rem;background:var(--background-secondary);border-top:1px solid var(--border-primary)}.exercise-form .translation-section .language-section .language-content .translation-field{margin-bottom:1rem}.exercise-form .translation-section .language-section .language-content .translation-field:last-child{margin-bottom:0}.exercise-form .translation-section .language-section .language-content .translation-field label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary)}.exercise-form .translation-section .language-section .language-content .translation-field .form-control{width:100%;padding:.5rem;border:1px solid var(--border-primary);background-color:var(--background-primary);color:var(--text-primary);border-radius:4px;font-size:1rem}.exercise-form .translation-section .language-section .language-content .translation-field .form-control:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px rgba(var(--primary-rgb),.2)}.exercise-form .translation-section .language-section .language-content .translation-field .form-control.readonly{background-color:var(--background-tertiary);color:var(--text-secondary);cursor:not-allowed}.exercise-form .translation-section .language-section .language-content .translation-field .form-control::placeholder{color:var(--text-muted)}.exercise-form .translation-section .language-section .language-content .translation-field textarea.form-control{min-height:80px;resize:vertical}.measurement-config{padding:1.5rem;background:var(--background-secondary);border:1px solid var(--border-primary);border-radius:12px;margin-bottom:1.5rem}.measurement-config h2{margin:0 0 1.5rem;font-size:1.25rem;color:var(--text-primary)}.measurement-config__pr-direction,.measurement-config__type-select{margin-bottom:1.25rem}.measurement-config__pr-direction label,.measurement-config__type-select label{display:block;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.measurement-config__pr-direction select.form-control,.measurement-config__type-select select.form-control{width:100%;max-width:400px;padding:.625rem .75rem;border:1px solid var(--border-primary);background:var(--background-primary);color:var(--text-primary);border-radius:8px;font-size:1rem;cursor:pointer;transition:border-color .2s ease}.measurement-config__pr-direction select.form-control:hover,.measurement-config__type-select select.form-control:hover{border-color:var(--border-secondary)}.measurement-config__pr-direction select.form-control:focus,.measurement-config__type-select select.form-control:focus{outline:none;border-color:var(--primary)}.measurement-config__pr-direction small,.measurement-config__type-select small{display:block;margin-top:.5rem;color:var(--text-secondary);font-size:.875rem}.measurement-config__tracks label{display:block;font-weight:600;color:var(--text-primary);margin-bottom:.75rem}.measurement-config__badges{display:flex;flex-wrap:wrap;gap:.75rem}.measurement-config__badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:500;transition:all .2s ease}.measurement-config__badge svg{font-size:.875rem}.measurement-config__badge small{font-size:.75rem;opacity:.8;margin-left:.25rem}.measurement-config__badge--always{background:var(--background-tertiary);color:var(--text-secondary);border:1px solid var(--border-secondary)}.measurement-config__badge--required{background:rgba(var(--primary-rgb),.15);color:var(--primary);border:1px solid var(--primary)}.measurement-config__badge--optional-on{background:rgba(var(--success-rgb,40,167,69),.15);color:var(--success);border:1px solid var(--success)}.measurement-config__badge--optional-on:hover{background:rgba(var(--success-rgb,40,167,69),.25)}.measurement-config__badge--optional-off{background:var(--background-tertiary);color:var(--text-muted);border:1px dashed var(--border-secondary)}.measurement-config__badge--optional-off:hover{background:var(--background-secondary);border-color:var(--text-muted)}@media(max-width:768px){.measurement-config{padding:1rem}.measurement-config__pr-direction select.form-control,.measurement-config__type-select select.form-control{max-width:none}.measurement-config__badges{gap:.5rem}.measurement-config__badge{padding:.375rem .75rem;font-size:.8125rem}}.translation-editor{width:100%}.translation-editor__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.translation-editor__actions{display:flex;gap:10px}.translation-editor__button{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;border-radius:4px;font-weight:500;transition:all .2s ease;cursor:pointer}.translation-editor__button--primary{background-color:var(--primary);color:var(--text-on-primary);border:none}.translation-editor__button--primary:hover{background-color:var(--primary-dark)}.translation-editor__button--primary:disabled{background-color:var(--text-muted);cursor:not-allowed}.translation-editor__button--outline{background-color:transparent;color:var(--primary);border:1px solid var(--primary)}.translation-editor__button--outline:hover{background-color:var(--background-tertiary)}.translation-editor__button--outline.active{background-color:var(--background-tertiary);border-color:var(--primary-dark)}.translation-editor__button--icon{background:none;border:none;padding:4px;color:var(--primary)}.translation-editor__button--icon:hover{color:var(--primary-dark)}.translation-editor__button--close{background:none;border:none;font-size:20px;color:var(--text-secondary);padding:4px}.translation-editor__button--close:hover{color:var(--text-primary)}.translation-editor__button--add{background:none;border:none;color:var(--primary);padding:4px}.translation-editor__button--add:hover{color:var(--primary-dark)}.translation-editor__icon{font-size:16px}.translation-editor__card{border:1px solid var(--border-primary);border-radius:6px;margin-bottom:16px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.1)}.translation-editor__card--missing{border-left:4px solid var(--error)}.translation-editor__card-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background-color:var(--background-tertiary);font-weight:600;border-bottom:1px solid var(--border-primary)}.translation-editor__card-content{padding:16px}.translation-editor__card-actions{display:flex;justify-content:flex-end;gap:8px;padding:8px 16px;border-top:1px solid var(--border-primary);background-color:var(--background-tertiary)}.translation-editor__key-name{font-weight:600;color:var(--text-primary)}.translation-editor__value{padding:4px 0;word-break:break-word}.translation-editor__file-list{padding:8px 16px}.translation-editor__file-item{padding:4px 0;font-size:14px;color:var(--text-secondary)}.translation-editor__missing-section{margin-top:20px}.translation-editor__section-title{font-size:18px;font-weight:600;margin-bottom:16px;color:var(--text-primary)}.translation-editor__empty-state{padding:20px;text-align:center;color:var(--text-secondary);border:1px dashed var(--border-primary);border-radius:6px}.translation-editor__modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:var(--z-modal)}.translation-editor__modal-content{background-color:var(--background-secondary);border-radius:8px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04)}.translation-editor__modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--border-primary)}.translation-editor__modal-title{font-size:18px;font-weight:600;color:var(--text-primary)}.translation-editor__modal-body{padding:24px}.translation-editor__modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--border-primary)}.translation-editor__form-group{margin-bottom:16px}.translation-editor__form-label{display:block;margin-bottom:8px;font-weight:500;color:var(--text-primary)}.translation-editor__form-input{width:100%;padding:8px 12px;border:1px solid var(--border-primary);background-color:var(--background-primary);color:var(--text-primary);border-radius:4px}.translation-editor__form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.user-actions-menu{position:relative;display:inline-block}.user-actions-menu__trigger{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:6px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background-color .15s,color .15s}.user-actions-menu__trigger:hover{background:var(--background-primary);color:var(--text-primary)}.user-actions-menu__trigger svg{font-size:14px}.user-actions-menu__dropdown{position:absolute;right:0;top:100%;z-index:100;min-width:220px;background:var(--background-secondary);border:1px solid var(--border-primary);border-radius:8px;box-shadow:var(--shadow-md);padding:4px 0;margin-top:4px}.user-actions-menu__item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 16px;border:none;background:transparent;color:var(--text-primary);cursor:pointer;font-size:.875rem;text-align:left;transition:background-color .1s;margin:0}.user-actions-menu__item:hover{background:var(--background-primary)}.user-actions-menu__item--danger{color:var(--error)}.user-actions-menu__item--danger:hover{background:color-mix(in srgb,var(--error) 8%,transparent)}.user-actions-menu__item svg{width:14px;height:14px;flex-shrink:0}.user-actions-menu__separator{height:1px;background:var(--border-primary);margin:4px 0}body{margin:0;font-family:var(--font-body,system-ui,sans-serif);display:flex;min-height:100vh;font-size:var(--text-md);max-width:100%;background-color:var(--background-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{font-family:var(--font-display,var(--font-body));letter-spacing:-.01em}*{box-sizing:border-box;max-width:100%}.app-content{flex:1 1;display:flex;flex-direction:row}@media(max-width:1200px){.app-content{flex-direction:column}}#__next,.ReactModal__Body--open{display:flex;flex:1 1;max-width:100%;overflow:hidden}form{display:flex;flex-direction:column;gap:1.5rem;padding:1rem;margin:0 auto;background-color:var(--background-secondary);border-radius:var(--radius-sm);box-shadow:var(--shadow-sm);max-width:100%}input[type=date],input[type=datetime-local],input[type=email],input[type=number],input[type=password],input[type=tel],input[type=text],input[type=time],select,textarea{margin-bottom:10px;padding:12px;width:100%;background-color:var(--background-primary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:4px;font-size:14px;transition:border-color .3s ease}input[type=date]:focus,input[type=datetime-local]:focus,input[type=email]:focus,input[type=number]:focus,input[type=password]:focus,input[type=tel]:focus,input[type=text]:focus,input[type=time]:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent);outline:none}input[type=checkbox]{margin-right:10px}input[type=file]{background-color:var(--primary);border-color:var(--primary-dark);color:var(--text-on-primary);border-radius:4px;border-style:solid;border-width:2px;line-height:1.25;text-decoration:none;transition:all .25s cubic-bezier(.19,1,.22,1)}input[type=file],input[type=file]:before{padding:10px 20px;cursor:pointer;display:inline-block;font-size:14px;font-weight:700}input[type=file]:before{content:"Choose file";background:var(--primary);border:1px solid var(--primary-dark);border-radius:4px;outline:none;white-space:nowrap;-webkit-user-select:none}input[type=file]:active:before,input[type=file]:hover:before{background-color:var(--primary-dark)}input[type=file]:focus:before{outline:1px dotted var(--primary-dark)}input[type=file]::-webkit-file-upload-button{visibility:hidden}input[type=file]::file-selector-button{visibility:hidden}button{padding:10px 20px;border:none;border-radius:4px;color:var(--button-primary-text);background-color:var(--button-primary-background);font-size:14px;cursor:pointer;transition:background-color .3s ease}button:hover{background-color:var(--button-primary-hover-background)}.ReactModal__Overlay{background-color:rgba(0,0,0,.75)!important}.ReactModal__Content{top:50%!important;left:50%!important;right:auto!important;bottom:auto!important;margin-right:-50%!important;transform:translate(-50%,-50%)!important;padding:20px!important;border-radius:8px!important;background-color:var(--background-secondary)!important;color:var(--text-primary)!important;border:1px solid var(--border-primary)!important;max-width:90%}.ReactModalPortal button{margin-right:16px}.loading-spinner{border-top:4px solid var(--background-tertiary);border:4px solid var(--background-tertiary);border-top-color:var(--primary);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite;margin:20px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}