.focus-app{--focus-nav-height:4.75rem;font-size:1rem;line-height:1.5}.focus-app .app-shell{width:min(1080px,100%);padding:0 max(22px,env(safe-area-inset-left)) calc(var(--focus-nav-height) + 7rem + env(safe-area-inset-bottom))}.focus-app .topbar{min-height:calc(76px + env(safe-area-inset-top));height:auto;padding:max(12px,env(safe-area-inset-top)) 0 12px;gap:12px;border-bottom-color:var(--c-line-2);background:var(--c-canvas);backdrop-filter:none}.focus-app .brand{gap:10px;text-align:left;min-width:0;min-height:48px;flex-shrink:1}.focus-app .brand-mark{width:42px;height:42px}.focus-app .brand-mark svg{transform:none;filter:none}.focus-app .brand .focus-wordmark{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0;letter-spacing:normal}.focus-app .brand b{font:800 1.1rem/1.1 Arial,Helvetica,sans-serif;letter-spacing:-.045em}.focus-app .brand em{color:var(--c-text-3);font:500 .55rem/1.4 Arial,Helvetica,sans-serif;letter-spacing:.055em;max-width:12em}.focus-app .top-actions{gap:8px;flex-wrap:wrap;justify-content:flex-end}.focus-app .icon-button{width:48px;height:48px;flex:0 0 48px;border:1px solid var(--c-line-2);background:var(--c-surface-2);box-shadow:none}.focus-app .icon-button svg{width:21px;height:21px}.focus-app .intro-row{padding:26px 0 12px;gap:16px;align-items:center}.focus-app .intro-row>div{min-width:0}.focus-app .intro-row h1{font:750 clamp(1.8rem,4vw,2.5rem)/1.12 Arial,Helvetica,sans-serif;text-transform:none;letter-spacing:-.055em;overflow-wrap:anywhere}.focus-app .intro-row>div>p:last-child{margin-top:8px;color:var(--c-text-3);font-size:.8125rem;line-height:1.5}.focus-app .position-jump{display:inline-flex;flex:0 0 auto;justify-content:center;align-items:center;width:48px;height:48px;min-height:48px;margin:0;padding:12px;border:1px solid var(--c-line-3);border-radius:50%;background:var(--c-surface-3);color:var(--c-text-2);box-shadow:none}.focus-app .position-jump>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.focus-app .position-jump svg{width:22px;height:22px}.focus-app .discipline-bar{padding:4px 0 12px;gap:6px;margin:0}.focus-app .discipline-chip{font-size:.75rem;font-weight:600;padding:7px 12px;background:transparent}.focus-app .discipline-chip[aria-pressed=true]{background:var(--c-accent-wash);color:var(--c-accent-text);border-color:var(--c-accent-line);font-weight:700}.focus-app .search-row{display:flex;gap:10px;min-height:52px;margin:6px 0 0;padding:2px 14px;border:1px solid transparent;border-radius:16px;background:var(--c-surface-3);box-shadow:none}.focus-app .search-row:focus-within{border-color:var(--c-accent-text);outline:2px solid var(--c-accent-line);outline-offset:2px}.focus-app .search-row>svg{flex:0 0 19px;color:var(--c-text-3)}.focus-app .search-row input{flex:1;min-width:0;width:100%;min-height:48px;font-size:1rem}.focus-app .search-row input::placeholder{color:var(--c-text-3);opacity:1}.focus-app .search-row button{width:44px;min-height:44px;flex-shrink:0;display:grid;place-items:center}.focus-app .training-filter-bar{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px;padding:14px 0 20px}.focus-app .focus-filter-chips{flex:1 1 auto;display:flex;flex-wrap:wrap;gap:7px}.focus-app .focus-filter-chips button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;border:1px solid var(--c-line-3);border-radius:999px;font-size:.8125rem;color:var(--c-text-2);background:transparent;cursor:pointer}.focus-app .focus-filter-chips button[aria-pressed=true]{color:var(--c-canvas);background:var(--c-text);border-color:var(--c-text);font-weight:700}.focus-app .focus-filter-chips svg{width:16px;height:16px}.focus-app .training-filter-bar .field-help{flex-basis:100%;color:var(--c-text-3);font-size:.75rem;margin-top:0}.focus-app .focus-feature{width:100%;min-height:214px;position:relative;isolation:isolate;overflow:hidden;border:1px solid var(--c-line-3);border-radius:22px;background:var(--c-surface-3);color:var(--c-on-media);text-align:left;cursor:pointer}.focus-app .focus-feature>.technique-thumb{position:absolute;inset:0;width:100%;height:100%;border-radius:0;clip-path:none;opacity:.85}.focus-app .focus-feature>.technique-thumb img{width:100%;height:100%;object-fit:cover;object-position:center 40%}.focus-app .focus-feature>.technique-thumb i{display:none}.focus-app .focus-feature:after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,transparent,var(--c-media-scrim)),linear-gradient(var(--c-media-scrim),var(--c-media-scrim)),linear-gradient(var(--c-media-scrim),var(--c-media-scrim)),linear-gradient(var(--c-media-scrim),var(--c-media-scrim))}.focus-app .focus-feature-copy{display:flex;position:relative;z-index:1;flex-direction:column;gap:10px;padding:26px 72px 26px 22px;max-width:36rem}.focus-app .focus-feature-copy small{font-size:.625rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.focus-app .focus-feature-copy strong{font-size:1.65rem;line-height:1.12;font-weight:750;letter-spacing:-.04em;max-width:12em}.focus-app .focus-feature-copy>span{font-size:.8125rem;line-height:1.45;overflow-wrap:anywhere}.focus-app .focus-feature-arrow{display:grid;place-items:center;position:absolute;right:16px;bottom:20px;z-index:1;width:44px;height:44px;border-radius:50%;color:var(--c-canvas);background:var(--c-text)}.focus-app .section-block{padding:26px 0 16px;border-top:0}.focus-app .section-heading{gap:12px;flex-wrap:wrap;margin-bottom:12px}.focus-app .section-heading>div{gap:8px;flex-wrap:wrap}.focus-app .section-heading h2{font:700 1.0625rem/1.35 Arial,Helvetica,sans-serif;text-transform:none;letter-spacing:-.025em;white-space:normal;overflow:visible}.focus-app .section-number{display:none}.focus-app .text-action{min-height:44px;font-size:.8125rem;white-space:normal;color:var(--c-accent-text)}.focus-app .class-focus{padding:20px;margin:4px 0 20px;border:1px solid var(--c-line-2);border-radius:22px;background:var(--c-surface-2)}.focus-app .focus-help,.focus-app .recent-summary{font-size:.8125rem;line-height:1.5;color:var(--c-text-3)}.focus-app .library-folders{margin-top:26px}.focus-app .library-folder{margin-top:10px}.focus-app .library-folder-heading{position:static;padding:14px 0 6px;border:0;border-radius:0;background:transparent;gap:8px}.focus-app .library-folder-heading>svg{width:16px;height:16px;color:var(--c-text-3)}.focus-app .library-folder-heading h2{font-size:.8125rem;font-weight:650}.focus-app .library-folder-heading>span{font-size:.75rem;white-space:normal}.focus-app .library-folders .technique-list,.focus-app .technique-list{border:0;border-radius:0;background:transparent}.focus-app .technique-list-item{border-bottom:1px solid var(--c-line-2)}.focus-app .class-focus .technique-row,.focus-app .library-folders .technique-row,.focus-app .technique-row{grid-template-columns:56px minmax(0,1fr);align-items:center;min-height:94px;padding:14px 0;gap:12px;border:0;border-radius:10px}.focus-app .focus-enabled>.technique-row{padding-right:54px}.focus-app .class-focus .technique-thumb,.focus-app .library-folders .technique-thumb,.focus-app .technique-thumb{width:56px;height:60px;border-radius:12px;clip-path:none}.focus-app .technique-thumb img{object-fit:cover}.focus-app .library-folders .technique-main>strong,.focus-app .technique-main>strong{order:-1;margin:0 0 5px;padding:0;font-size:.9375rem;line-height:1.35;font-weight:650;letter-spacing:-.015em;overflow-wrap:anywhere}.focus-app .technique-meta{margin:0;padding:0;gap:4px;font-size:.6875rem;font-weight:400;text-transform:none;letter-spacing:normal;color:var(--c-text-3)}.focus-app .technique-meta b{color:inherit;font-weight:400}.focus-app .technique-meta :is(.training-style-badge,.mastery-badge){padding:0;border:0;font-size:inherit;font-weight:400;white-space:normal}.focus-app .technique-note{display:none}.focus-app .technique-added{margin-top:4px;font-size:.6875rem;color:var(--c-text-3)}.focus-app .technique-added svg{width:12px;height:12px}.focus-app .row-index,.focus-app .technique-end{display:none}.focus-app .focus-toggle{top:50%;transform:translateY(-50%);right:0;border:0;border-radius:50%;background:transparent;color:var(--c-text-3)}.focus-app .focus-toggle[aria-pressed=true]{color:var(--c-accent-text);background:var(--c-accent-wash)}.focus-app .position-card{clip-path:none;border-radius:18px}.focus-app .position-copy strong{font:700 1.35rem/1.12 Arial,Helvetica,sans-serif;letter-spacing:-.035em;text-transform:none}.focus-app .position-grid .position-card{border-radius:14px}.focus-app .position-grid .position-copy strong{font-size:.9375rem}.focus-app .position-view-switch{border-radius:999px}.focus-app .empty-state{border:1px dashed var(--c-line-3);border-radius:20px;background:var(--c-surface-2);padding:28px 16px}.focus-app .empty-state h3{font:700 1.125rem/1.3 Arial,Helvetica,sans-serif;text-transform:none}.focus-app .empty-state p{font-size:.875rem;line-height:1.5}.focus-app .show-more{border-radius:999px;min-height:48px;text-transform:none}.focus-app .focus-add-action{position:fixed;z-index:39;right:max(22px,calc((100vw - 1036px) / 2),env(safe-area-inset-right));bottom:calc(var(--focus-nav-height) + 1rem + env(safe-area-inset-bottom))}.focus-app .focus-add-action .add-fab{display:inline-flex;gap:8px;align-items:center;justify-content:center;width:auto;min-width:56px;min-height:56px;padding:14px 20px;border-radius:999px;border:1px solid var(--c-accent-line);background:var(--c-accent);color:var(--c-on-accent);font-size:.875rem;font-weight:700;box-shadow:0 6px 20px rgb(var(--c-ink-rgb)/.15);cursor:pointer}.focus-app .focus-add-action svg{width:24px;height:24px;flex-shrink:0}.focus-app .add-fab:disabled{cursor:default;opacity:.5}.focus-app .bottom-nav,.focus-app .bottom-nav.with-calendar{position:fixed;z-index:40;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));left:0;right:0;bottom:0;width:min(1080px,100%);height:auto;min-height:calc(var(--focus-nav-height) + env(safe-area-inset-bottom));margin:0 auto;padding:.4rem max(8px,env(safe-area-inset-right)) max(.4rem,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));border:1px solid var(--c-line-2);border-bottom:0;border-radius:22px 22px 0 0;background:var(--c-canvas);backdrop-filter:none}.focus-app .bottom-nav:not(.with-calendar){grid-template-columns:repeat(3,minmax(0,1fr))}.focus-app .bottom-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:48px;padding:.3rem 4px;gap:.25rem;border:0;border-radius:16px;background:transparent;color:var(--c-text-3);font-size:.75rem;line-height:1.3;cursor:pointer}.focus-app .bottom-nav button.active{color:var(--c-accent-text);background:var(--c-accent-wash);font-weight:700}.focus-app .bottom-nav svg{width:1.35rem;height:1.35rem;flex-shrink:0}.focus-app .bottom-nav button>span{max-width:100%;overflow-wrap:anywhere;line-height:1.3}.focus-app .app-page{margin:0}.focus-app :is(.partners-page,.open-mat-calendar){max-width:none;margin:24px 0 0;padding-bottom:16px}.focus-app .partners-messaging-page>.backup-body{border:0;background:transparent;padding:0}.focus-app .chat-whatsapp.messaging-panel{border:1px solid var(--c-line-2);border-radius:22px}.focus-app .chat-whatsapp .chat-inbox{background:var(--c-canvas)}.focus-app .chat-whatsapp .chat-inbox>header{padding:12px 16px;min-height:76px;border-bottom:0}.focus-app .chat-whatsapp .chat-inbox h1{font-size:2rem;font-weight:750;line-height:1.15;letter-spacing:-.055em;color:var(--c-text)}.focus-app .chat-whatsapp .chat-search{min-height:52px;margin:4px 16px 12px;background:var(--c-surface-3);border:1px solid transparent;border-radius:16px;font-size:1rem}.focus-app .chat-whatsapp .chat-row{padding:16px;min-height:88px}.focus-app .chat-whatsapp .chat-row-copy strong{font-size:.9375rem;font-weight:650}.focus-app .chat-whatsapp .chat-row-copy>span{font-size:.8125rem}.focus-app .chat-whatsapp .chat-avatar{width:48px;height:48px;flex-basis:48px}.focus-app .chat-whatsapp .chat-connect-plus{width:48px;height:48px;border-radius:50%}.focus-app .chat-whatsapp .chat-qr-connect{border-radius:999px;width:auto;max-width:100%;min-height:48px;height:auto;font-size:.8125rem;padding:8px 12px;gap:6px;white-space:normal}.focus-app .chat-whatsapp .chat-qr-connect span{min-width:0;overflow-wrap:anywhere}.focus-app .chat-whatsapp .chat-thread-header{border-bottom:1px solid var(--c-line-2);background:var(--c-canvas)}.focus-app .chat-whatsapp .chat-bubble{border-radius:6px 18px 18px;padding:10px 12px 7px;box-shadow:none}.focus-app .chat-whatsapp .chat-message.mine.chat-run-start .chat-bubble{border-radius:18px 0 18px 18px}.focus-app .chat-whatsapp .chat-message.incoming.chat-run-start .chat-bubble{border-radius:0 18px 18px}.focus-app .chat-whatsapp .chat-message.chat-run-continuation .chat-bubble{border-radius:18px}.focus-app .chat-whatsapp .chat-compose textarea{font-size:1rem}.focus-app .chat-whatsapp .chat-thread-empty{background:var(--c-canvas)}.focus-app .open-mat-calendar h1{font-size:2rem;font-weight:750;line-height:1.15;letter-spacing:-.055em}.focus-app .open-mat-calendar>p{font-size:.875rem;color:var(--c-text-3)}.focus-app .open-mat-calendar :is(button,select){border-radius:12px;font-size:.875rem}.focus-app .open-mat-calendar .calendar-switch{border-radius:999px;padding:4px;background:var(--c-surface-3);border-color:var(--c-line-2)}.focus-app .open-mat-calendar .calendar-switch button{border-radius:999px}.focus-app .open-mat-calendar :is(.calendar-day-sheet,.schedule-class-card,.gym-announcement-list>li,.open-mat-card){border-radius:18px}.focus-app :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--c-accent-text);outline-offset:3px}body:has(.focus-app) :is(.app-dialog,.backup-dialog,.secure-chat-dialog,.account-dialog){border-radius:22px}body:has(.focus-app) .app-dialog [data-slot=dialog-title]{font:750 1.5rem/1.2 Arial,Helvetica,sans-serif;text-transform:none;letter-spacing:-.035em}body:has(.focus-app) :is(.type-switch,.upload-zone,.add-optional-details){border-radius:14px}body:has(.focus-app) .save-button{border-radius:12px!important;text-transform:none}@media (max-height:640px),(max-width:700px){.focus-app .focus-add-action{position:static;flex:0 0 auto;margin-left:auto}.focus-app .focus-add-action .add-fab{width:48px;height:48px;min-width:48px;min-height:48px;padding:10px;box-shadow:none}.focus-app .focus-add-action .add-fab>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.focus-app .app-shell{padding-bottom:calc(var(--focus-nav-height) + 2rem + env(safe-area-inset-bottom))}}@media (max-width:600px){.focus-app .app-shell{padding-inline:max(20px,env(safe-area-inset-left)) max(20px,env(safe-area-inset-right))}.focus-app .topbar{margin-inline:0;padding-inline:0}.focus-app .top-actions{gap:5px}.focus-app .brand em{max-width:10em}.focus-app .class-focus{padding:18px 14px}.focus-app .focus-feature-copy{padding-left:20px}.focus-app .partners-messaging-page{margin-top:12px}.focus-app .chat-whatsapp.messaging-panel{border:0;border-radius:0}.focus-app .chat-whatsapp:not(.chat-selected) .chat-inbox>header{padding-inline:0}.focus-app .chat-whatsapp .chat-search{margin-inline:0}.focus-app .chat-whatsapp .chat-row{padding-inline:0}.focus-app .chat-whatsapp .chat-inbox{border:0}}@media (max-width:360px){.focus-app .app-shell{padding-inline:max(16px,env(safe-area-inset-left)) max(16px,env(safe-area-inset-right))}.focus-app .brand b{font-size:1rem}.focus-app .brand em{display:none}.focus-app .intro-row h1{font-size:1.8rem}}@media (prefers-reduced-motion:reduce){.focus-app *,.focus-app :after,.focus-app :before{scroll-behavior:auto;transition:none;animation:none}}.chat-whatsapp.secure-chat-dialog.chat-attachment-sheet{top:auto;bottom:max(12px,env(safe-area-inset-bottom));left:50%;translate:-50% 0;transform:none;width:min(560px,calc(100% - 24px));max-width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:18px;gap:14px;border-radius:26px;overflow:auto}.chat-attachment-sheet .chat-attachment-picker{display:grid;gap:12px;min-width:0}.chat-attachment-sheet .chat-attachment-picker button{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;min-height:48px;color:var(--c-text);border-radius:16px;white-space:normal}.chat-attachment-sheet .chat-attachment-camera{flex-direction:column;width:100%;min-height:180px!important;padding:24px;background:linear-gradient(145deg,var(--c-surface-3),var(--c-canvas));border:1px solid var(--c-line-2)}.chat-attachment-sheet .chat-attachment-shutter{width:66px;height:66px;display:grid;place-items:center;border-radius:50%;border:3px solid var(--c-accent-text);color:var(--c-accent-text);background:var(--c-surface-1)}.chat-attachment-sheet .chat-attachment-shutter svg{width:28px;height:28px}.chat-attachment-sheet .chat-attachment-camera>span:last-child{font-size:.8125rem;color:var(--c-text-3)}.chat-attachment-sheet .chat-attachment-modes{display:flex;gap:4px;justify-content:center;padding:4px;border-radius:999px;background:var(--c-surface-3);width:fit-content;max-width:100%;margin:0 auto;position:relative}.chat-attachment-sheet .chat-attachment-modes button{border-radius:999px;padding:6px 18px}.chat-attachment-sheet .chat-attachment-modes [aria-pressed=true]{background:var(--c-accent);color:var(--c-on-accent)}.chat-attachment-sheet .chat-attachment-sources{display:grid;grid-template-columns:minmax(0,1fr) minmax(72px,.3fr);gap:10px}.chat-attachment-sheet .chat-attachment-sources button{border:1px solid var(--c-line-2);background:var(--c-surface-3);padding:14px}.chat-attachment-sheet .chat-attachment-sources svg{width:26px;height:26px;flex-shrink:0;color:var(--c-accent-text)}.chat-attachment-sheet .chat-attachment-gallery{justify-content:flex-start!important;text-align:left}.chat-attachment-sheet .chat-attachment-gallery span{display:grid;gap:4px;min-width:0}.chat-attachment-sheet .chat-attachment-hint,.chat-attachment-sheet small{font-size:.8125rem;color:var(--c-text-3);line-height:1.4}.chat-attachment-sheet .chat-attachment-file{flex-direction:column;font-size:.8125rem}.chat-attachment-sheet .chat-attachment-hint{margin:0}.chat-attachment-sheet .chat-attachment-review{display:grid;gap:12px;min-width:0}.chat-attachment-sheet .chat-attachment-preview{min-height:130px;display:grid;place-items:center;overflow:hidden;background:var(--c-canvas);border:1px solid var(--c-line-2);border-radius:18px}.chat-attachment-sheet .chat-attachment-preview>svg{width:64px;height:64px;color:var(--c-accent-text)}.chat-attachment-sheet .chat-attachment-preview :is(img,video){width:100%;max-height:42dvh;object-fit:contain;display:block}.chat-attachment-sheet .chat-attachment-name{margin:0;overflow-wrap:anywhere;min-width:0}.chat-attachment-sheet .chat-attachment-name small{display:block;margin-top:4px}.chat-attachment-sheet .chat-attachment-review-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.chat-attachment-sheet .chat-attachment-review-actions button{background:var(--c-surface-3);border:1px solid var(--c-line-2)}.chat-attachment-sheet .chat-attachment-review-actions .chat-attachment-send{background:var(--c-accent);color:var(--c-on-accent)}@media (max-width:700px){.chat-whatsapp.secure-chat-dialog.chat-attachment-sheet{bottom:0;left:0;translate:0 0;width:100%;max-width:100%;max-height:calc(100dvh - 12px);padding-bottom:max(18px,env(safe-area-inset-bottom));border-radius:26px 26px 0 0}}@media (max-height:560px){.chat-attachment-sheet .chat-attachment-camera{min-height:135px!important;padding:14px}.chat-attachment-sheet .chat-attachment-shutter{width:48px;height:48px}}.chat-whatsapp .chat-thread{font-size:calc(1rem * var(--chat-size, 1) / var(--app-size, 1))}.chat-whatsapp .chat-thread :is(button,input,textarea,select){font-size:inherit}.chat-whatsapp .chat-thread-header h2{font-size:1em;white-space:normal;overflow-wrap:anywhere}.chat-whatsapp .chat-thread .chat-avatar{font-size:1em}.chat-whatsapp .chat-thread .chat-bubble{min-width:0;padding:.45em .65em .35em}.chat-whatsapp .chat-thread .chat-bubble p,.chat-whatsapp .chat-thread .chat-message-text{font-size:.9375em}.chat-whatsapp .chat-thread .chat-sender-name{font-size:.8em}.chat-whatsapp .chat-thread .chat-message-meta{font-size:.75em;flex-wrap:wrap}.chat-whatsapp .chat-thread .chat-bubble blockquote,.chat-whatsapp .chat-thread .chat-reply>div{font-size:.85em}.chat-whatsapp .chat-thread .chat-compose textarea{font-size:1em;height:auto;min-height:max(48px,calc(1.5em + 24px))}.chat-whatsapp .chat-thread .chat-composer{min-width:0}.chat-whatsapp .chat-thread .chat-input-tray-tools{flex-wrap:wrap}.chat-whatsapp .chat-thread .chat-input-tray-tools button{font-size:.875em}.chat-whatsapp .chat-thread .chat-link-preview :is(small,strong,span>span){font-size:.85em}.display-size-setting{min-width:0}.display-size-setting :is(label,small){display:block;overflow-wrap:anywhere}.display-size-setting select{width:100%;min-height:48px;max-width:100%}.chat-option-list .display-size-setting{padding:8px 0 16px}.focus-app.coach-app .app-shell{width:100%;max-width:none;padding:0 clamp(12px,2vw,40px) 32px}.coach-app .bottom-nav{display:none}.coach-app .topbar{position:static}.coach-app .app-page{min-width:0}.coach-app .coach-calendar{margin-top:20px}.coach-app .open-mat-calendar button,.coach-app button,.coach-app input,.coach-app select{min-height:44px}.coach-app a:focus-visible,.coach-app button:focus-visible,.coach-app input:focus-visible,.coach-app select:focus-visible{outline:3px solid var(--c-accent-text);outline-offset:3px}.coach-app button:disabled{opacity:.55;cursor:not-allowed}.coach-account-button,.coach-window-controls button,.coach-workspace-link{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border:1px solid var(--c-line-3);border-radius:10px;background:var(--c-surface-2);color:var(--c-text);font:inherit}.coach-window-controls svg{width:18px;height:18px}.coach-window-controls p{max-width:24rem;font-size:.8125rem}.coach-workspace-link{margin-block:8px;font-size:.875rem;text-decoration:underline;text-underline-offset:3px}.coach-workspace{display:grid;grid-template-columns:14rem minmax(0,1fr);gap:28px;align-items:start}.coach-sidebar{position:sticky;top:16px;max-height:calc(100dvh - 32px);overflow:auto;padding:18px;border:1px solid var(--c-line-2);border-radius:16px;background:var(--c-surface-2)}.coach-sidebar-title{display:grid;gap:3px;margin-bottom:20px}.coach-sidebar-title>span{color:var(--c-text-3);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}.coach-sidebar-title>strong{font-size:1.1rem}.coach-gym-select,.coach-working-date{display:grid;gap:6px;min-width:0;font-size:.8125rem;font-weight:700}.coach-gym-select select,.coach-working-date input{width:100%;max-width:100%;padding:8px;border:1px solid var(--c-line-3);border-radius:8px;background:var(--c-surface-1);color:var(--c-text);font:inherit}.coach-sidebar nav{display:grid;gap:4px;margin-block:20px}.open-mat-calendar .coach-sidebar nav button{justify-content:flex-start;text-align:left;width:100%;padding:10px 12px;background:transparent;border-color:transparent}.open-mat-calendar .coach-sidebar nav button[aria-current=page]{background:var(--c-accent-wash);border-color:var(--c-accent-line);color:var(--c-accent-text);font-weight:800}.coach-content,.coach-content>*{min-width:0}.coach-content-heading{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:start;margin-bottom:20px}.coach-content-heading h1{margin:0;font-size:clamp(1.6rem,2.5vw,2.3rem);line-height:1.2;overflow-wrap:anywhere}.coach-content-heading p{color:var(--c-text-3);margin-top:8px}.coach-access-note,.coach-timetable-summary{padding:12px 14px;border:1px solid var(--c-line-3);border-radius:10px;color:var(--c-text-2);background:var(--c-surface-2);font-size:.875rem;overflow-wrap:anywhere}.coach-content .schedule-editor{margin-top:0;padding:20px}.coach-content .schedule-bar{margin:0;padding:0;border:0;background:transparent}.coach-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;align-items:start}.coach-week-day{min-width:0;display:grid;gap:8px;padding:8px;border:1px solid var(--c-line-3);border-radius:12px;background:var(--c-surface-1)}.coach-week-day[data-selected=true]{border-color:var(--c-accent-text)}.open-mat-calendar .coach-week-day h3 button{display:grid;width:100%;text-align:left;justify-content:start;padding:6px;background:transparent;color:var(--c-text);border-color:transparent;font-size:.875rem}.coach-week-day small{font-size:.75rem;font-weight:400}.open-mat-calendar .coach-grid-class{display:grid;gap:4px;width:100%;text-align:left;padding:10px;background:var(--kind);color:var(--on-kind);border:0}.coach-grid-class>*{min-width:0;overflow-wrap:anywhere}.coach-grid-class span{font-size:.75rem}.coach-grid-class strong{font-size:.875rem;line-height:1.4}.coach-week-day>p{padding:10px 4px;color:var(--c-text-3);font-size:.8125rem}.open-mat-calendar .coach-grid-add{width:100%;padding:8px;font-size:.8125rem}.coach-week-editor .week-form{max-width:54rem}.coach-week-editor .week-form-row{grid-template-columns:minmax(0,2fr) repeat(2,minmax(0,1fr))}.coach-week-editor .week-form-row label:first-child{grid-column:auto}.coach-content .week-save{position:sticky;bottom:12px;padding:12px;border:1px solid var(--c-line-3);border-radius:12px;background:var(--c-surface-1);z-index:2;box-shadow:0 4px 20px #0002}body:has(.coach-app) :is(.gym-series-dialog,.gym-cycle-dialog){width:min(1200px,calc(100vw - 32px));max-width:calc(100vw - 32px)}body:has(.coach-app) .gym-cycle-dialog .schedule-technique-scroll,body:has(.coach-app) .gym-series-dialog .schedule-technique-scroll{padding:24px}@media (max-width:1200px){.coach-workspace{grid-template-columns:12rem minmax(0,1fr);gap:16px}.coach-week-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:800px){.coach-workspace{grid-template-columns:minmax(0,1fr)}.coach-sidebar{position:static;max-height:none}.coach-sidebar nav{grid-template-columns:repeat(auto-fit,minmax(135px,1fr));margin-block:12px}.coach-sidebar-title{margin-bottom:12px}.coach-content .schedule-editor{padding:12px}.coach-week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:460px){.coach-app .topbar{flex-wrap:wrap}.coach-app .top-actions{justify-content:flex-start}.coach-content-heading{gap:12px}.coach-working-date{width:100%}.coach-week-editor .week-form-row,.coach-week-grid{grid-template-columns:minmax(0,1fr)}.coach-content .week-save{position:static}}.app-startup-content{display:contents}.app-startup-content[data-startup-hidden=true]{visibility:hidden}.app-startup{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));overflow:auto;background:var(--c-canvas);color:var(--c-text);opacity:1;transition:opacity .18s ease-out}.app-startup[data-phase=leaving]{opacity:0;pointer-events:none}.app-startup-artwork{position:relative;display:flex;flex-direction:column;align-items:center;width:min(100%,22rem);text-align:center}.app-startup-emblem{position:relative;display:grid;place-items:center;width:min(62vw,224px);aspect-ratio:1;isolation:isolate;perspective:700px}.app-startup-emblem:before{content:"";position:absolute;inset:5%;border-radius:50%;background:radial-gradient(circle,var(--c-accent-wash),transparent 70%)}.app-startup-mark{position:relative;display:block;width:80%;transform:rotate(-10deg)}.app-startup-mark svg{display:block;width:100%;height:auto;overflow:visible}.app-startup-orbit{position:absolute;inset:6%;border:1px solid var(--c-accent-line-faint);border-radius:50%}.app-startup-orbit:after{content:"";position:absolute;inset:-1px;border:2px solid transparent;border-top:2px solid var(--c-accent-text);border-radius:50%;transform:rotate(-45deg)}.app-startup-ground{position:absolute;bottom:14%;width:36%;height:4px;background:var(--c-accent-line);border-radius:50%;filter:blur(5px)}.app-startup-wordmark{display:flex;flex-direction:column;gap:12px;margin-top:12px;max-width:100%;overflow-wrap:anywhere}.app-startup-wordmark strong{font:800 clamp(2rem,9vw,2.75rem)/1.1 Arial,Helvetica,sans-serif;letter-spacing:-.065em}.app-startup-wordmark>span{color:var(--c-text-3);font-size:.625rem;font-weight:600;letter-spacing:.17em;line-height:1.6}.app-startup-artwork[data-animate=true] .app-startup-mark{animation:startup-logo-arrive .68s cubic-bezier(.2,.7,.2,1) both}.app-startup-artwork[data-animate=true] .app-startup-wordmark{animation:startup-wordmark-arrive .46s ease-out .26s both}.app-startup-artwork[data-animate=true] .app-startup-orbit{animation:startup-orbit 2.8s linear 2}.app-startup-artwork[data-animate=true] .app-startup-ground{animation:startup-ground-arrive .68s ease-out both}.app-startup-recovery{margin-top:36px;max-width:100%;color:var(--c-text-2);font-size:.875rem;line-height:1.5}.app-startup-recovery button{display:block;min-height:48px;margin:16px auto 0;padding:10px 24px;border:1px solid var(--c-accent-line);border-radius:14px;color:var(--c-accent-text);background:var(--c-accent-wash);font:inherit;cursor:pointer}.app-startup-recovery button:focus-visible{outline:3px solid var(--c-accent-text);outline-offset:4px}@keyframes startup-logo-arrive{0%{opacity:0;transform:translateY(22px) rotateY(-55deg) rotate(-18deg) scale(.78)}65%{opacity:1;transform:translateY(-5px) rotateY(8deg) rotate(-8deg) scale(1.03)}to{opacity:1;transform:rotateY(0) rotate(-10deg)}}@keyframes startup-wordmark-arrive{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes startup-orbit{to{transform:rotate(1turn)}}@keyframes startup-ground-arrive{0%{opacity:0;transform:scaleX(.5)}to{opacity:1;transform:scaleX(1)}}@media (prefers-reduced-motion:reduce){.app-startup,.app-startup-artwork *{animation:none!important;transition:none!important}}@media (max-height:420px){.app-startup-emblem{width:130px}.app-startup-wordmark{gap:6px;margin-top:4px}.app-startup-recovery{margin-top:16px}}