:root{font-family:Roboto,Noto Sans,system-ui,-apple-system,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{min-height:100%;background:#11111b;overscroll-behavior:none}body{min-width:320px;min-height:100%;margin:0;overflow-x:hidden}body.has-overlay,body.is-reordering{overflow:hidden}body.is-reordering{cursor:grabbing;-webkit-user-select:none;user-select:none}button,input,textarea,select{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:color .14s ease,background-color .14s ease,border-color .14s ease,transform 90ms ease}button:active:not(:disabled){transform:scale(.97)}button:disabled{cursor:not-allowed;opacity:.45}button,a,input,textarea,select{outline:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid color-mix(in srgb,var(--md-sys-color-primary) 55%,transparent);outline-offset:2px}a{color:inherit;-webkit-tap-highlight-color:transparent;touch-action:manipulation}.app[data-theme=mocha]{--base: #11111b;--mantle: #181825;--crust: #0b0b12;--surface: #1e1e2e;--surface-1: #313244;--surface-2: #45475a;--overlay: #7f849c;--subtext: #bac2de;--text: #cdd6f4;--rosewater: #f5e0dc;--flamingo: #f2cdcd;--pink: #f5c2e7;--mauve: #cba6f7;--red: #f38ba8;--maroon: #eba0ac;--peach: #fab387;--yellow: #f9e2af;--green: #a6e3a1;--teal: #94e2d5;--sky: #89dceb;--sapphire: #74c7ec;--blue: #89b4fa;--lavender: #b4befe}.app[data-theme=macchiato]{--base: #181926;--mantle: #1e2030;--crust: #10111a;--surface: #24273a;--surface-1: #363a4f;--surface-2: #494d64;--overlay: #8087a2;--subtext: #b8c0e0;--text: #cad3f5;--rosewater: #f4dbd6;--flamingo: #f0c6c6;--pink: #f5bde6;--mauve: #c6a0f6;--red: #ed8796;--maroon: #ee99a0;--peach: #f5a97f;--yellow: #eed49f;--green: #a6da95;--teal: #8bd5ca;--sky: #91d7e3;--sapphire: #7dc4e4;--blue: #8aadf4;--lavender: #b7bdf8}.app[data-theme=frappe]{--base: #303446;--mantle: #292c3c;--crust: #232634;--surface: #414559;--surface-1: #51576d;--surface-2: #626880;--overlay: #838ba7;--subtext: #b5bfe2;--text: #c6d0f5;--rosewater: #f2d5cf;--flamingo: #eebebe;--pink: #f4b8e4;--mauve: #ca9ee6;--red: #e78284;--maroon: #ea999c;--peach: #ef9f76;--yellow: #e5c890;--green: #a6d189;--teal: #81c8be;--sky: #99d1db;--sapphire: #85c1dc;--blue: #8caaee;--lavender: #babbf1}.app[data-theme=latte]{--base: #eff1f5;--mantle: #e6e9ef;--crust: #dce0e8;--surface: #ffffff;--surface-1: #ccd0da;--surface-2: #bcc0cc;--overlay: #7c7f93;--subtext: #5c5f77;--text: #4c4f69;--rosewater: #dc8a78;--flamingo: #dd7878;--pink: #ea76cb;--mauve: #8839ef;--red: #d20f39;--maroon: #e64553;--peach: #fe640b;--yellow: #df8e1d;--green: #40a02b;--teal: #179299;--sky: #04a5e5;--sapphire: #209fb5;--blue: #1e66f5;--lavender: #7287fd}.app[data-accent=rosewater]{--accent: var(--rosewater)}.app[data-accent=flamingo]{--accent: var(--flamingo)}.app[data-accent=pink]{--accent: var(--pink)}.app[data-accent=mauve]{--accent: var(--mauve)}.app[data-accent=red]{--accent: var(--red)}.app[data-accent=maroon]{--accent: var(--maroon)}.app[data-accent=peach]{--accent: var(--peach)}.app[data-accent=yellow]{--accent: var(--yellow)}.app[data-accent=green]{--accent: var(--green)}.app[data-accent=teal]{--accent: var(--teal)}.app[data-accent=sky]{--accent: var(--sky)}.app[data-accent=sapphire]{--accent: var(--sapphire)}.app[data-accent=blue]{--accent: var(--blue)}.app[data-accent=lavender]{--accent: var(--lavender)}.app{--safe-top: env(safe-area-inset-top, 0px);--safe-right: env(safe-area-inset-right, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--md-sys-color-primary: var(--accent);--md-sys-color-on-primary: var(--crust);--md-sys-color-primary-container: color-mix(in srgb, var(--accent) 25%, var(--surface));--md-sys-color-on-primary-container: var(--text);--md-sys-color-secondary: var(--subtext);--md-sys-color-on-secondary: var(--crust);--md-sys-color-secondary-container: var(--surface-1);--md-sys-color-on-secondary-container: var(--text);--md-sys-color-surface: var(--base);--md-sys-color-surface-dim: var(--crust);--md-sys-color-surface-bright: var(--surface-1);--md-sys-color-surface-container-lowest: var(--crust);--md-sys-color-surface-container-low: color-mix(in srgb, var(--mantle) 82%, var(--surface));--md-sys-color-surface-container: var(--mantle);--md-sys-color-surface-container-high: var(--surface);--md-sys-color-surface-container-highest: var(--surface-1);--md-sys-color-on-surface: var(--text);--md-sys-color-on-surface-variant: var(--subtext);--md-sys-color-outline: var(--overlay);--md-sys-color-outline-variant: color-mix(in srgb, var(--surface-2) 72%, transparent);--md-sys-color-error: var(--red);--md-sys-color-on-error: var(--crust);--md-sys-color-error-container: color-mix(in srgb, var(--red) 18%, var(--surface));--md-sys-color-on-error-container: var(--text);--md-sys-typescale-label-large-font: inherit;--md-sys-typescale-body-large-font: inherit;--md-sys-typescale-body-medium-font: inherit;--md-sys-typescale-title-medium-font: inherit;--panel: var(--md-sys-color-surface-container);--panel-raised: var(--md-sys-color-surface-container-high);--line: var(--md-sys-color-outline-variant);--line-strong: var(--md-sys-color-outline);--accent-soft: var(--md-sys-color-primary-container);min-height:100vh;min-height:100dvh;color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface);transition:color .16s ease,background-color .16s ease}.app[data-theme=latte]{--md-sys-color-on-primary: #ffffff}md-filled-tonal-button,md-text-button,md-filled-button,md-fab{--md-filled-tonal-button-label-text-font: inherit;--md-text-button-label-text-font: inherit;--md-filled-button-label-text-font: inherit;--md-fab-label-text-font: inherit}.masthead{position:sticky;z-index:30;top:0;height:calc(64px + var(--safe-top));display:flex;align-items:flex-end;justify-content:space-between;padding:var(--safe-top) max(20px,var(--safe-right)) 0 max(20px,var(--safe-left));background:color-mix(in srgb,var(--md-sys-color-surface) 92%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.wordmark{height:64px;display:inline-flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.wordmark-icon{width:40px;height:40px;display:grid;place-items:center;color:var(--md-sys-color-primary);border-radius:14px;background:var(--md-sys-color-primary-container);transition:color .16s ease,background-color .16s ease}.wordmark strong{font-size:1.15rem;font-weight:650;letter-spacing:.01em}.masthead-actions{height:64px;display:flex;align-items:center;gap:4px}.save-state{display:flex;align-items:center;gap:8px;margin:0 10px 0 0;color:var(--md-sys-color-on-surface-variant);font-size:.78rem}.save-state span{width:7px;height:7px;border-radius:50%;background:var(--green)}.icon-button,.icon-action,.row-action,.completion-toggle,.details-toggle,.delete-movement{width:48px;height:48px;display:grid;flex:0 0 auto;place-items:center;padding:0;color:var(--md-sys-color-on-surface-variant);border:0;border-radius:50%;background:transparent}.icon-button:hover,.icon-action:hover,.row-action:hover{color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container-high)}.close-button{width:44px;height:44px;color:var(--md-sys-color-error);border:1px solid color-mix(in srgb,var(--md-sys-color-error) 24%,transparent);border-radius:14px;background:color-mix(in srgb,var(--md-sys-color-error) 10%,var(--md-sys-color-surface-container-high));box-shadow:inset 0 1px color-mix(in srgb,#fff 7%,transparent)}.close-button:hover{color:var(--md-sys-color-error);border-color:color-mix(in srgb,var(--md-sys-color-error) 42%,transparent);background:color-mix(in srgb,var(--md-sys-color-error) 18%,var(--md-sys-color-surface-container-high))}.close-button:active:not(:disabled){background:color-mix(in srgb,var(--md-sys-color-error) 24%,var(--md-sys-color-surface-container-high));transform:scale(.93)}.close-button:focus-visible{outline-color:color-mix(in srgb,var(--md-sys-color-error) 58%,transparent)}.drawer-scrim{position:fixed;z-index:39;inset:0;padding:0;opacity:var(--sheet-scrim-opacity, 1);border:0;background:color-mix(in srgb,#000 48%,transparent);transition:opacity .19s ease;will-change:opacity;animation:scrim-in .18s ease-out}.drawer-scrim.closing{pointer-events:none;opacity:0}@keyframes scrim-in{0%{opacity:0}}.vault-heading,.exercise-editor>header{display:flex;align-items:center;justify-content:space-between;gap:16px}.vault-heading h2,.exercise-editor h3{margin:0;font-size:1.35rem;font-weight:600}.combo-field>span,.exercise-form-grid label>span,.movement-note>span{display:block;margin-bottom:8px;color:var(--md-sys-color-on-surface-variant);font-size:.78rem;font-weight:600}.flavour-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.flavour-options legend{grid-column:1 / -1}.flavour-options button,.vault-filter-options button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;color:var(--md-sys-color-on-surface-variant);border:1px solid var(--md-sys-color-outline-variant);border-radius:999px;background:transparent;white-space:nowrap}.flavour-options button.active,.vault-filter-options button.active{color:var(--md-sys-color-on-primary-container);border-color:transparent;background:color-mix(in srgb,var(--accent) 25%,var(--surface))}.flavour-preview{width:14px;height:14px;border-radius:50%;background:#11111b;box-shadow:inset 0 0 0 4px var(--accent)}.flavour-preview.macchiato{background:#181926}.flavour-preview.frappe{background:#303446}.flavour-preview.latte{background:#eff1f5}.accent-options>div{display:grid;grid-template-columns:repeat(7,minmax(28px,38px));gap:9px}.accent-options button{aspect-ratio:1;display:grid;place-items:center;padding:0;color:var(--crust);border:2px solid transparent;border-radius:50%;background:var(--swatch)}.accent-options button.active{border-color:var(--md-sys-color-on-surface)}.data-action{width:100%;min-height:64px;display:flex;align-items:center;gap:16px;margin-top:8px;padding:8px 12px;color:var(--md-sys-color-on-surface);text-align:left;border:0;border-radius:16px;background:transparent}.data-action:hover{background:var(--md-sys-color-surface-container-highest)}.data-action span{display:grid;gap:3px}.data-action strong{font-size:.95rem;font-weight:550}.data-action small{color:var(--md-sys-color-on-surface-variant)}.hidden-file-input{display:none}.import-confirm{margin-top:12px;padding:14px;border-radius:16px;background:var(--md-sys-color-error-container)}.import-confirm p{margin:0 0 12px}.import-confirm div{display:flex;align-items:center;justify-content:flex-end;gap:8px}.import-confirm button{min-height:40px;padding:0 14px;color:inherit;border:0;border-radius:999px;background:transparent}.import-confirm .replace-data{color:var(--md-sys-color-on-error);background:var(--md-sys-color-error)}.transfer-message{margin:12px 0 0;color:var(--green);font-size:.84rem}.transfer-message.transfer-error,.exercise-form-error{color:var(--md-sys-color-error)}.app[data-accent=red] .transfer-message.transfer-error{color:var(--peach)}.app-navigation{position:fixed;z-index:25;right:50%;bottom:max(18px,var(--safe-bottom));display:flex;align-items:center;gap:2px;padding:5px;border-radius:36px;background:var(--md-sys-color-surface-container-high);box-shadow:0 8px 24px color-mix(in srgb,#000 28%,transparent);transform:translate(50%)}.app-navigation button{min-width:96px;height:56px;display:flex;align-items:center;justify-content:center;gap:9px;padding:0 18px;color:var(--md-sys-color-on-surface-variant);border:0;border-radius:28px;background:transparent}.nav-indicator{display:grid;flex:0 0 auto;place-items:center}.app-navigation button.active{color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container)}.nav-label{font-size:.86rem;font-weight:600}.app-content{width:min(1120px,100%);min-width:0;margin:0 auto;padding:34px 32px calc(118px + var(--safe-bottom))}.screen,.programme-layout,.session-page{min-width:0}.screen{animation:screen-in .18s cubic-bezier(.2,0,0,1)}.session-page{animation:session-in .15s cubic-bezier(.2,0,0,1)}@keyframes screen-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes session-in{0%{opacity:0;transform:translate(6px)}to{opacity:1;transform:translate(0)}}::view-transition-old(root),::view-transition-new(root){animation-duration:.17s;animation-timing-function:cubic-bezier(.2,0,0,1)}::view-transition-old(root){animation-name:view-out}::view-transition-new(root){animation-name:view-in}@keyframes view-out{to{opacity:0;transform:translateY(-3px)}}@keyframes view-in{0%{opacity:0;transform:translateY(5px)}}.screen-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px}.screen-heading p,.section-heading p,.plan-title p{margin:0;color:var(--md-sys-color-on-surface-variant);font-size:.9rem}.screen-heading h1{margin:3px 0 0;font-size:clamp(2rem,4vw,2.65rem);font-weight:500;letter-spacing:-.035em}.screen-brand{width:48px;height:48px;display:none;flex:0 0 auto;place-items:center;color:var(--md-sys-color-primary);border-radius:17px;background:var(--md-sys-color-primary-container);transition:color .16s ease,background-color .16s ease}.week-strip{display:grid;grid-template-columns:repeat(7,44px);gap:8px;margin-bottom:24px}.week-strip button{width:44px;height:58px;display:grid;place-items:center;align-content:center;gap:3px;padding:0;color:var(--md-sys-color-on-surface-variant);border:1px solid transparent;border-radius:16px;background:transparent}.week-strip button:hover{background:var(--md-sys-color-surface-container-low)}.week-strip button.today{color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container)}.week-strip span{font-size:.64rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.week-strip strong{color:var(--md-sys-color-on-surface);font-size:.94rem;font-weight:550}.week-strip button.assigned:not(.today) strong{color:var(--md-sys-color-primary);font-weight:700}.week-strip button.today strong{color:inherit;font-weight:700}.today-screen{max-width:900px}.today-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px 24px;margin-bottom:12px;padding:22px 24px 18px;border-radius:24px;background:var(--md-sys-color-surface-container)}.today-summary>div:first-child>span,.progress-count>span{color:var(--md-sys-color-on-surface-variant);font-size:.78rem}.today-summary h2{margin:4px 0;font-size:1.35rem;font-weight:600}.today-summary p{margin:0;color:var(--md-sys-color-on-surface-variant);font-size:.88rem}.progress-count{display:grid;align-content:center;justify-items:end}.progress-count strong{font-size:1.45rem;font-weight:600}.progress-count small{color:var(--md-sys-color-on-surface-variant);font-size:.9rem}.progress-track{grid-column:1 / -1;height:5px;overflow:hidden;border-radius:999px;background:var(--md-sys-color-surface-container-highest)}.progress-track span{display:block;height:100%;border-radius:inherit;background:var(--md-sys-color-primary);transition:width .18s ease}.exercise-list{overflow:hidden;border-radius:22px;background:var(--md-sys-color-surface-container-low)}.movement-list{display:grid;gap:12px}.exercise-row{min-width:0;border-bottom:1px solid var(--md-sys-color-outline-variant);transition:background-color .16s ease}.exercise-row:last-child{border-bottom:0}.movement{min-width:0;overflow:hidden;border:1px solid var(--md-sys-color-outline-variant);border-radius:20px;background:var(--md-sys-color-surface-container-low);transition:border-color .15s ease,background-color .15s ease,transform .12s ease}.movement.expanded,.movement.reordering{border-color:color-mix(in srgb,var(--md-sys-color-primary) 58%,var(--md-sys-color-outline-variant))}.exercise-row.completed{background:color-mix(in srgb,var(--md-sys-color-surface-container-high) 58%,transparent);animation:complete-row .18s ease}@keyframes complete-row{50%{background:var(--md-sys-color-primary-container)}}.exercise-row.completed .exercise-copy h3{text-decoration:line-through;text-decoration-thickness:1px}.exercise-row.completed .exercise-copy,.exercise-row.completed .exercise-dose,.exercise-row.completed .row-action,.exercise-row.completed .exercise-details{opacity:.56}.exercise-copy,.exercise-dose,.exercise-row .row-action,.exercise-details{transition:opacity .16s ease}.exercise-row-main,.movement-main{min-width:0;min-height:88px;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:14px;padding:14px 16px}.completion-toggle{color:var(--md-sys-color-on-surface-variant)}.completed .completion-toggle{color:var(--md-sys-color-primary)}.exercise-copy,.movement-name{min-width:0}.exercise-copy h3,.movement-name h2{overflow:hidden;margin:0;font-size:1rem;font-weight:550;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.exercise-copy p,.movement-name p{overflow:hidden;margin:5px 0 0;color:var(--md-sys-color-on-surface-variant);font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.movement-muscles{color:var(--md-sys-color-primary);font-weight:600}.movement-name h2,.movement-name p{overflow:visible;text-overflow:clip;white-space:normal}.movement-divider{margin-inline:6px;color:var(--md-sys-color-outline)}.exercise-dose{display:grid;gap:4px;min-width:120px;text-align:right}.exercise-dose strong{font-size:.9rem;font-weight:550}.exercise-dose span{color:var(--md-sys-color-on-surface-variant);font-size:.75rem}.row-action svg,.details-toggle svg{transition:transform .16s ease}.row-action svg.turned,.details-toggle svg.turned{transform:rotate(180deg)}.exercise-details,.movement-details{display:grid;gap:12px;padding:0 20px 20px 78px;color:var(--md-sys-color-on-surface-variant);font-size:.9rem;line-height:1.55;animation:details-in .16s cubic-bezier(.2,0,0,1)}@keyframes details-in{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.exercise-details p,.movement-details>p{margin:0}.exercise-details img,.movement-media{width:min(100%,460px);max-height:260px;margin:0;overflow:hidden;border-radius:18px;background:var(--md-sys-color-surface-container-high)}.exercise-details img,.movement-media img{width:100%;height:100%;max-height:260px;display:block;object-fit:cover}.exercise-details a,.details-toolbar a{width:max-content;display:inline-flex;align-items:center;gap:8px;color:var(--md-sys-color-primary);font-weight:550;text-decoration:none}.exercise-cue,.movement-note-readout{padding:12px 14px;color:var(--md-sys-color-on-primary-container);border-radius:14px;background:var(--md-sys-color-primary-container)}.empty-state,.blank-session{min-height:260px;display:grid;place-items:center;align-content:center;gap:10px;padding:32px 20px;color:var(--md-sys-color-on-surface-variant);text-align:center;border-radius:24px;background:var(--md-sys-color-surface-container-low)}.empty-state h2,.blank-session p{margin:4px 0 0;color:var(--md-sys-color-on-surface);font-size:1.2rem;font-weight:550}.empty-state p,.blank-session span{max-width:380px;margin:0}.blank-session button{min-height:44px;display:inline-flex;align-items:center;gap:8px;margin-top:8px;padding:0 18px;color:var(--md-sys-color-on-primary-container);border:0;border-radius:999px;background:var(--md-sys-color-primary-container)}.programme-layout{display:grid;grid-template-columns:320px minmax(0,1fr);align-items:start;gap:30px}.week-schedule{padding:20px;border-radius:24px;background:var(--md-sys-color-surface-container-low)}.week-picker-toggle{display:none}.schedule-collapse{min-width:0}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.section-heading h2{margin:0 0 4px;font-size:1.15rem;font-weight:600}.section-heading>span{padding:5px 10px;color:var(--md-sys-color-on-surface-variant);font-size:.72rem;border-radius:999px;background:var(--md-sys-color-surface-container-high)}.schedule-list{display:grid}.schedule-row{width:100%;min-width:0;min-height:64px;display:grid;grid-template-columns:minmax(86px,1fr) auto 24px;align-items:center;gap:12px;padding:0 10px;color:var(--md-sys-color-on-surface);text-align:left;border:0;border-bottom:1px solid var(--md-sys-color-outline-variant);border-radius:0;background:transparent}.schedule-row:last-child{border-bottom:0}.schedule-row:hover{background:var(--md-sys-color-surface-container-high)}.schedule-row.active{border-bottom-color:transparent;border-radius:14px;background:var(--md-sys-color-primary-container)}.schedule-row>span{min-width:0;display:grid;gap:2px}.schedule-row strong{overflow:hidden;font-size:.86rem;font-weight:550;text-overflow:ellipsis}.schedule-row small{color:var(--md-sys-color-primary);font-size:.7rem}.day-status{color:var(--md-sys-color-on-surface-variant);font-size:.76rem;white-space:nowrap}.schedule-row>svg{color:var(--md-sys-color-on-surface-variant);transform:rotate(-90deg)}.session-page{min-width:0}.session-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.plan-title{min-width:0}.plan-title h2{overflow:hidden;margin:0 0 4px;font-size:1.55rem;font-weight:550;letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap}.programme-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px}.programme-actions .danger,.delete-movement,.vault-delete{color:var(--md-sys-color-error)}.movement-main{grid-template-columns:50px minmax(0,1fr) auto}.sequence-number{width:44px;height:44px;display:grid;place-items:center;color:var(--md-sys-color-on-primary-container);font-size:.78rem;font-weight:650;border-radius:15px;background:var(--md-sys-color-primary-container)}.sequence-number:has(.drag-handle){background:transparent}.drag-handle{width:44px;height:44px;display:grid;place-items:center;padding:0;color:var(--md-sys-color-primary);touch-action:none;border:0;border-radius:50%;background:var(--md-sys-color-primary-container);cursor:grab}.movement.dragging{background:var(--md-sys-color-primary-container)}.details-toggle{width:auto;padding:0 10px;border-radius:999px}.details-toggle span{display:none}.reorder-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 16px 12px 80px;color:var(--md-sys-color-on-surface-variant);font-size:.78rem}.reorder-strip>span,.reorder-strip>div{display:flex;align-items:center;gap:6px}.reorder-strip button{width:40px;height:40px;display:grid;place-items:center;padding:0;color:inherit;border:0;border-radius:50%;background:var(--md-sys-color-surface-container-high)}.prescription-readout{display:grid;grid-template-columns:minmax(150px,auto) minmax(180px,1fr);gap:10px;padding:0 16px 16px 80px}.primary-prescription{display:grid;align-content:center;gap:3px;min-height:54px;margin:0;padding:8px 14px;border-radius:15px;background:var(--md-sys-color-primary-container)}.primary-prescription>span,.secondary-prescription span{color:var(--md-sys-color-on-surface-variant);font-size:.66rem;font-weight:650;letter-spacing:.04em;text-transform:uppercase}.primary-prescription strong{color:var(--md-sys-color-on-primary-container);font-size:1.05rem;font-weight:650}.primary-prescription strong b{margin-inline:7px;color:var(--md-sys-color-primary);font-weight:500}.primary-prescription small{margin-left:3px;font-size:.72rem}.secondary-prescription{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.secondary-prescription p{display:grid;align-content:center;gap:3px;min-width:0;min-height:54px;margin:0;padding:8px 12px;border-radius:14px;background:var(--md-sys-color-surface-container-high)}.secondary-prescription strong{font-size:.9rem;font-weight:650}.reps-readout strong{color:var(--blue)}.rest-readout strong{color:var(--green)}.prescription-editor{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(230px,1.2fr) repeat(2,minmax(110px,.7fr));gap:10px;padding:0 16px 18px 80px}.prescription-control,.text-prescription{min-width:0;display:grid;gap:6px}.control-label,.text-prescription span{color:var(--md-sys-color-on-surface-variant);font-size:.7rem;font-weight:600}.number-stepper,.weight-stepper{height:48px;display:grid;grid-template-columns:44px minmax(38px,1fr) 44px;align-items:center;overflow:hidden;border-radius:14px;background:var(--md-sys-color-surface-container-high)}.number-stepper button,.weight-stepper button{height:100%;display:grid;place-items:center;padding:0;color:var(--md-sys-color-on-surface);border:0;background:transparent}.number-stepper strong{text-align:center}.weight-stepper label{min-width:0;display:flex;align-items:center;justify-content:center;gap:3px}.weight-stepper input{width:100%;min-width:0;padding:0;color:var(--md-sys-color-on-surface);text-align:right;border:0;background:transparent;appearance:textfield}.weight-stepper input::-webkit-inner-spin-button{appearance:none}.weight-stepper label span{color:var(--md-sys-color-on-surface-variant);font-size:.75rem}.text-prescription input,.movement-note input,.exercise-form-grid input,.exercise-form-grid textarea{width:100%;min-width:0;height:48px;padding:0 13px;color:var(--md-sys-color-on-surface);border:1px solid var(--md-sys-color-outline-variant);border-radius:14px;background:var(--md-sys-color-surface-container-high)}.movement-details{padding-left:80px}.details-toolbar{display:flex;align-items:end;gap:12px}.movement-note{min-width:180px;flex:1}.exercise-vault{--sheet-drag-y: 0px;position:fixed;z-index:45;top:max(16px,var(--safe-top));right:max(16px,var(--safe-right));bottom:max(16px,var(--safe-bottom));width:min(760px,calc(100vw - 32px));display:flex;flex-direction:column;overflow:hidden;border-radius:28px;background:var(--md-sys-color-surface-container);box-shadow:0 18px 56px color-mix(in srgb,#000 42%,transparent);transition:opacity .18s ease,transform .19s cubic-bezier(.2,0,0,1);backface-visibility:hidden;will-change:transform;animation:drawer-in .19s cubic-bezier(.2,0,0,1)}.exercise-vault.closing{pointer-events:none;opacity:0;transform:translate(24px)}.vault-drag-handle{width:100%;min-height:30px;display:none;flex:0 0 auto;place-items:center;padding:0;cursor:grab;touch-action:none;border:0;border-radius:28px 28px 0 0;background:transparent}.vault-drag-handle:active{cursor:grabbing;transform:none}.vault-drag-handle>span{width:42px;height:4px;border-radius:999px;background:color-mix(in srgb,var(--md-sys-color-on-surface) 30%,transparent);transition:width .14s ease,background-color .14s ease}.exercise-vault.dragging .vault-drag-handle>span{width:50px;background:color-mix(in srgb,var(--md-sys-color-on-surface) 48%,transparent)}@keyframes drawer-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes sheet-in{0%{transform:translate3d(0,100%,0)}to{transform:translateZ(0)}}.settings-screen{max-width:780px}.settings-groups{display:grid;gap:18px}.settings-footer{display:flex;justify-content:center;padding-top:14px}.settings-footer a{min-height:48px;display:inline-flex;align-items:center;gap:8px;padding:0 16px;color:var(--md-sys-color-on-surface-variant);font-size:.82rem;font-weight:600;text-decoration:none;border-radius:999px}.settings-footer a:hover{color:var(--md-sys-color-primary);background:var(--md-sys-color-surface-container-low)}.settings-group{padding:22px;border-radius:24px;background:var(--md-sys-color-surface-container-low)}.settings-group>header{display:flex;align-items:center;gap:14px;margin-bottom:18px}.settings-group fieldset{min-width:0;margin:20px 0 0;padding:0;border:0}.settings-group legend{margin-bottom:8px;color:var(--md-sys-color-on-surface-variant);font-size:.78rem;font-weight:600}.settings-group>header>span{width:44px;height:44px;display:grid;flex:0 0 auto;place-items:center;color:var(--md-sys-color-on-primary-container);border-radius:15px;background:var(--md-sys-color-primary-container)}.settings-group h2,.settings-group p{margin:0}.settings-group h2{font-size:1.08rem;font-weight:600}.settings-group header p{margin-top:3px;color:var(--md-sys-color-on-surface-variant);font-size:.8rem}.settings-row{width:100%;min-height:68px;display:grid;grid-template-columns:32px minmax(0,1fr) 24px;align-items:center;gap:12px;padding:8px 12px;color:var(--md-sys-color-on-surface);text-align:left;border:0;border-bottom:1px solid var(--md-sys-color-outline-variant);background:transparent}.settings-row:last-of-type{border-bottom:0}.settings-row:hover{border-radius:14px;background:var(--md-sys-color-surface-container-high)}.settings-row>span{min-width:0;display:grid;gap:3px}.settings-row strong{font-size:.94rem;font-weight:550}.settings-row small{overflow:hidden;color:var(--md-sys-color-on-surface-variant);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.settings-row>svg:last-child{transform:rotate(-90deg)}.vault-heading{min-height:72px;padding:12px 18px 12px 24px;border-bottom:1px solid var(--md-sys-color-outline-variant)}.vault-title{min-width:0}.vault-title p{margin:4px 0 0;color:var(--md-sys-color-on-surface-variant);font-size:.76rem}.vault-heading-actions{display:flex;align-items:center;gap:6px}.create-exercise,.save-exercise{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 18px;color:var(--md-sys-color-on-primary-container);border:0;border-radius:999px;background:var(--md-sys-color-primary-container)}.vault-add-fab{display:none}.exercise-editor{margin:16px 18px 0;padding:20px;border-radius:22px;background:var(--md-sys-color-surface-container-high)}.exercise-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px}.exercise-form-grid .wide{grid-column:1 / -1}.exercise-form-grid textarea{height:92px;padding-block:12px;resize:vertical}.exercise-editor footer{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.exercise-editor footer>button:not(.save-exercise){min-height:44px;padding:0 16px;color:var(--md-sys-color-primary);border:0;border-radius:999px;background:transparent}.exercise-editor-management{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--md-sys-color-outline-variant)}.exercise-editor-management>button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 14px;color:var(--md-sys-color-on-surface-variant);border:0;border-radius:13px;background:var(--md-sys-color-surface-container-highest)}.exercise-editor-management>button.editor-delete{color:var(--md-sys-color-error)}.editor-delete-confirm{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;color:var(--md-sys-color-on-error-container);border-radius:14px;background:var(--md-sys-color-error-container)}.editor-delete-confirm>div{display:flex;flex:0 0 auto;gap:6px}.editor-delete-confirm button{min-height:38px;padding:0 13px;color:inherit;border:0;border-radius:999px;background:transparent}.editor-delete-confirm button:last-child{color:var(--md-sys-color-on-error);background:var(--md-sys-color-error)}.vault-tools{display:flex;align-items:center;gap:10px;padding:16px 18px 10px}.vault-search{min-width:0;height:56px;display:flex;flex:1;align-items:center;gap:12px;padding:0 18px;color:var(--md-sys-color-on-surface-variant);border-radius:28px;background:var(--md-sys-color-surface-container-high)}.vault-search input{min-width:0;flex:1;color:var(--md-sys-color-on-surface);border:0;background:transparent}.vault-search>button{width:36px;height:36px;display:grid;flex:0 0 auto;place-items:center;padding:0;color:var(--md-sys-color-on-surface-variant);border:0;border-radius:50%;background:transparent}.vault-search>button:not(.vault-filter-button){width:32px;height:32px}.vault-filter-button{position:relative}.vault-filter-button.active,.vault-filter-button.filtered{color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container)}.vault-filter-button.filtered:after{position:absolute;top:5px;right:5px;width:6px;height:6px;content:"";border:2px solid var(--md-sys-color-primary-container);border-radius:50%;background:var(--md-sys-color-primary)}.vault-filter-panel{max-height:min(390px,48dvh);margin:0 18px 12px;padding:16px;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--md-sys-color-outline-variant);border-radius:20px;background:var(--md-sys-color-surface-container-high);box-shadow:0 10px 30px color-mix(in srgb,#000 24%,transparent);animation:filter-panel-in .16s cubic-bezier(.2,0,0,1)}.vault-filter-panel>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.vault-filter-panel h3,.vault-filter-panel p{margin:0}.vault-filter-panel h3{font-size:1rem;font-weight:600}.vault-filter-panel header p{margin-top:3px;color:var(--md-sys-color-on-surface-variant);font-size:.74rem}.vault-filter-panel header>button{min-height:38px;padding:0 12px;color:var(--md-sys-color-primary);border:0;border-radius:999px;background:transparent}.vault-filter-panel fieldset{min-width:0;margin:14px 0 0;padding:0;border:0}.vault-filter-panel legend{margin-bottom:8px;color:var(--md-sys-color-on-surface-variant);font-size:.72rem;font-weight:600}.vault-filter-mode{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:4px;border-radius:16px;background:var(--md-sys-color-surface-container)}.vault-filter-mode button{min-height:40px;padding:0 12px;color:var(--md-sys-color-on-surface-variant);border:0;border-radius:12px;background:transparent}.vault-filter-mode button.active{color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container)}.vault-filter-options{display:flex;flex-wrap:wrap;gap:7px}.vault-filter-options button{min-height:38px}.vault-filter-panel>footer{position:sticky;bottom:-16px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:10px 0 0;color:var(--md-sys-color-on-surface-variant);font-size:.76rem;background:var(--md-sys-color-surface-container-high)}.vault-filter-panel>footer button{min-height:40px;padding:0 18px;color:var(--md-sys-color-on-primary-container);border:0;border-radius:999px;background:var(--md-sys-color-primary-container)}@keyframes filter-panel-in{0%{opacity:0;transform:translateY(-5px) scale(.99)}}.vault-list{min-height:0;flex:1;margin:0 18px 18px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;border-radius:20px;background:var(--md-sys-color-surface-container-low)}.vault-item{min-height:82px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 14px;padding:12px 14px 12px 16px;border-bottom:1px solid var(--md-sys-color-outline-variant)}.vault-item:last-child{border-bottom:0}.vault-item-copy{min-width:0}.vault-item-copy h3{overflow:hidden;margin:0;font-size:.98rem;font-weight:550;text-overflow:ellipsis;white-space:nowrap}.vault-item-copy p{overflow:hidden;margin:5px 0 0;color:var(--md-sys-color-on-surface-variant);font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.exercise-tags{display:flex;gap:5px;margin-top:7px;overflow:hidden}.exercise-tags span{padding:3px 8px;color:var(--md-sys-color-on-surface-variant);font-size:.68rem;border-radius:999px;background:var(--md-sys-color-surface-container-high);white-space:nowrap}.vault-item-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px}.vault-item-actions>button{width:42px;height:42px;display:grid;place-items:center;padding:0;color:var(--md-sys-color-on-surface-variant);border:0;border-radius:50%;background:transparent}.vault-item-actions .add-from-vault{width:auto;min-width:76px;display:flex;gap:5px;padding:0 14px;color:var(--md-sys-color-on-primary-container);border-radius:999px;background:var(--md-sys-color-primary-container)}.vault-item-actions .add-from-vault.added:disabled{color:var(--md-sys-color-on-surface-variant);opacity:.72;background:var(--md-sys-color-surface-container-highest)}.vault-item-actions .edit-from-vault{width:auto;min-width:78px;display:flex;gap:6px;padding:0 14px;color:var(--md-sys-color-primary);border-radius:999px;background:var(--md-sys-color-surface-container-high)}.vault-item-actions .edit-from-vault:hover{color:var(--md-sys-color-on-surface);background:var(--md-sys-color-surface-container-highest)}.vault-empty{margin:0;padding:40px 20px;color:var(--md-sys-color-on-surface-variant);text-align:center}@media(max-width:600px),(max-width:900px)and (max-height:520px)and (orientation:landscape){.exercise-vault{inset:max(6px,calc(var(--safe-top) + 4px)) 0 0;width:100%;border-radius:32px 32px 0 0;background:var(--md-sys-color-surface-container);box-shadow:0 -8px 36px color-mix(in srgb,#000 38%,transparent);transform:translate3d(0,var(--sheet-drag-y),0);transition:transform .22s cubic-bezier(.2,.8,.2,1);animation:sheet-in .26s cubic-bezier(.2,.8,.2,1)}.exercise-vault.dragging{transition:none;animation:none;-webkit-user-select:none;user-select:none}.exercise-vault.closing{opacity:1;transform:translate3d(0,calc(100% + var(--safe-bottom)),0)}.create-exercise{display:none}.vault-add-fab{position:absolute;z-index:8;right:max(18px,calc(var(--safe-right) + 12px));bottom:max(20px,calc(var(--safe-bottom) + 12px));height:60px;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 22px;color:var(--md-sys-color-on-primary-container);pointer-events:none;opacity:0;border:0;border-radius:20px;background:var(--md-sys-color-primary-container);box-shadow:0 8px 24px color-mix(in srgb,#000 34%,transparent);transform:translate3d(0,14px,0) scale(.94);transition:opacity .16s ease,background-color .14s ease,box-shadow .16s ease,transform .18s cubic-bezier(.2,.8,.2,1);will-change:opacity,transform}.vault-add-fab.visible{pointer-events:auto;opacity:1;transform:translateZ(0) scale(1)}.exercise-vault.dragging .vault-add-fab,.exercise-vault.closing .vault-add-fab{pointer-events:none;opacity:0;transform:translate3d(0,10px,0) scale(.96)}.exercise-vault.fab-visible .vault-list{padding-bottom:84px;scroll-padding-bottom:92px}.vault-drag-handle{display:grid;min-height:28px}}@media(max-width:900px){.app-content{padding-inline:24px}.programme-layout{grid-template-columns:1fr}.week-schedule{padding:18px}.schedule-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}.prescription-editor{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.app{--mobile-gutter: 18px;--mobile-section-gap: 24px}.masthead{display:none}.app-content{padding:calc(var(--safe-top) + 24px) max(var(--mobile-gutter),var(--safe-right)) calc(116px + var(--safe-bottom)) max(var(--mobile-gutter),var(--safe-left))}.screen-heading{align-items:flex-end;margin:0 2px var(--mobile-section-gap)}.screen-heading h1{margin-top:5px;font-size:2.25rem;line-height:1.05;letter-spacing:-.04em}.screen-heading p{font-size:.82rem;line-height:1.35}.screen-brand{display:grid}.week-strip{grid-template-columns:repeat(7,minmax(38px,1fr));gap:0;margin-bottom:18px;padding:6px;border-radius:25px;background:var(--md-sys-color-surface-container-low)}.week-strip button{width:100%;height:62px;border-radius:20px}.week-strip span{font-size:.62rem}.week-strip strong{font-size:.96rem}.today-summary{gap:18px;margin-bottom:14px;padding:22px 20px 19px;border-radius:28px;background:color-mix(in srgb,var(--md-sys-color-primary-container) 48%,var(--md-sys-color-surface-container))}.today-summary h2{margin-block:6px 4px;font-size:1.3rem;line-height:1.2}.progress-count strong{font-size:1.6rem}.progress-track{height:6px}.exercise-list{border-radius:28px;background:var(--md-sys-color-surface-container-low)}.exercise-row-main{min-height:104px;grid-template-columns:44px minmax(0,1fr) 44px;gap:4px 12px;padding:15px 10px 15px 14px}.completion-toggle{color:var(--md-sys-color-on-surface-variant);background:var(--md-sys-color-surface-container-high)}.completed .completion-toggle{color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container)}.exercise-dose{grid-column:2;min-width:0;text-align:left}.exercise-dose strong,.exercise-dose span{display:inline}.row-action{grid-column:3;grid-row:1 / span 2}.exercise-details,.movement-details{padding:0 18px 22px 70px}.app-navigation{right:auto;bottom:max(8px,calc(var(--safe-bottom) + 6px));left:50%;width:min(calc(100% - 16px),520px);height:78px;justify-content:stretch;padding:7px 6px 6px;border:0;border-radius:30px;background:var(--md-sys-color-surface-container-high);box-shadow:0 10px 32px color-mix(in srgb,#000 38%,transparent);transform:translate(-50%)}.app-navigation button{min-width:0;height:65px;flex:1;flex-direction:column;gap:3px;padding:2px;border-radius:22px;background:transparent}.app-navigation button.active{color:var(--md-sys-color-on-surface);background:transparent}.app-navigation .nav-indicator{width:min(64px,100%);height:32px;color:var(--md-sys-color-on-surface-variant);border-radius:18px;transition:color .15s ease,background-color .17s ease,transform .17s cubic-bezier(.2,0,0,1)}.app-navigation button.active .nav-indicator{color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container);transform:scaleX(1.04)}.app-navigation .nav-label{font-size:.68rem;font-weight:600;line-height:1}.programme-screen>.screen-heading{margin-bottom:var(--mobile-section-gap)}.programme-layout{gap:28px}.week-schedule{padding:0;background:transparent}.week-schedule .section-heading{display:none}.week-picker-toggle{width:100%;min-height:76px;display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:14px;padding:10px 12px;color:var(--md-sys-color-on-surface);text-align:left;border:0;border-radius:24px;background:var(--md-sys-color-surface-container-high)}.week-picker-icon{width:48px;height:48px;display:grid;place-items:center;color:var(--md-sys-color-on-primary-container);border-radius:17px;background:var(--md-sys-color-primary-container)}.week-picker-toggle>span:nth-child(2){min-width:0;display:grid;gap:3px}.week-picker-toggle strong{overflow:hidden;font-size:1rem;text-overflow:ellipsis;white-space:nowrap}.week-picker-toggle small{color:var(--md-sys-color-on-surface-variant);font-size:.78rem}.week-picker-toggle>svg{justify-self:center;color:var(--md-sys-color-on-surface-variant);transition:transform .16s ease}.week-picker-toggle>svg.turned{transform:rotate(180deg)}.schedule-collapse{display:grid;grid-template-rows:0fr;margin-top:0;opacity:0;transition:grid-template-rows .18s cubic-bezier(.2,0,0,1),margin-top .18s ease,opacity .12s ease}.schedule-collapse.open{grid-template-rows:1fr;margin-top:10px;opacity:1}.schedule-list{min-height:0;grid-template-columns:1fr;overflow:hidden;padding:8px;border:0;border-radius:24px;background:var(--md-sys-color-surface-container-high)}.schedule-row{min-height:68px;grid-template-columns:minmax(90px,1fr) auto 28px;padding-inline:14px 8px;border-bottom-color:color-mix(in srgb,var(--md-sys-color-outline-variant) 68%,transparent);border-radius:18px}.schedule-row.active{border-radius:18px}.session-heading{align-items:stretch;flex-direction:column;gap:14px;margin:0 2px 18px}.plan-title h2{font-size:1.5rem;line-height:1.2}.programme-actions{width:100%;min-width:0;justify-content:flex-end;gap:8px;overflow:visible}.programme-actions .edit-toggle{margin-left:0}.programme-actions .add-movement{position:fixed;z-index:24;right:max(18px,var(--safe-right));bottom:calc(98px + var(--safe-bottom));--md-filled-tonal-button-container-height: 60px;--md-filled-tonal-button-container-shape: 20px;box-shadow:0 8px 24px color-mix(in srgb,#000 32%,transparent)}.movement-list{gap:14px}.movement{border:0;border-radius:26px;background:var(--md-sys-color-surface-container-low)}.movement.expanded,.movement.reordering{background:var(--md-sys-color-surface-container-high)}.movement-main{min-height:88px;grid-template-columns:46px minmax(0,1fr) 44px;gap:10px;padding:14px 10px 12px 14px}.movement-name h2{font-size:1rem;line-height:1.3}.prescription-readout{grid-template-columns:1fr;gap:8px;padding:0 14px 16px 70px}.primary-prescription,.secondary-prescription p{min-height:52px}.primary-prescription{padding-inline:12px}.primary-prescription strong{font-size:.92rem}.secondary-prescription{gap:8px}.secondary-prescription p{padding-inline:10px}.secondary-prescription strong{overflow:hidden;font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}.prescription-editor{grid-template-columns:1fr 1.35fr;gap:12px 9px;padding:2px 14px 18px}.text-prescription{grid-column:span 1}.reorder-strip{padding:0 14px 16px 70px}.details-toolbar{align-items:stretch;flex-direction:column}.movement-note{width:100%}.movement-details{padding:0 18px 22px}.settings-group{padding:22px 18px;border-radius:28px;background:var(--md-sys-color-surface-container-low)}.settings-groups{gap:22px}.settings-group>header{gap:16px;margin-bottom:22px}.settings-group>header>span{width:48px;height:48px;border-radius:17px}.settings-group fieldset{margin-top:24px}.settings-group legend{margin-bottom:10px;font-size:.8rem}.settings-row{min-height:76px;gap:14px;padding:10px 8px}.flavour-options{gap:10px}.flavour-options button{min-height:50px}.accent-options>div{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.vault-heading{min-height:70px;padding:4px 16px 12px 20px;border-bottom:0}.vault-heading h2{font-size:1.28rem;line-height:1.2}.vault-title p{margin-top:5px;font-size:.76rem}.vault-heading-actions .icon-button{width:44px;height:44px}.vault-tools{padding:4px 14px 12px}.vault-search{height:56px;padding-inline:18px 10px;border-radius:28px;background:var(--md-sys-color-surface-container-highest)}.vault-search input::placeholder{color:color-mix(in srgb,var(--md-sys-color-on-surface-variant) 76%,transparent)}.vault-search>.vault-filter-button{width:44px;height:44px}.vault-filter-panel{max-height:min(380px,50dvh);margin:0 12px 12px;padding:18px;border:0;border-radius:24px;background:var(--md-sys-color-surface-container-highest)}.vault-filter-panel>footer{bottom:-14px;background:var(--md-sys-color-surface-container-highest)}.vault-list{display:grid;align-content:start;gap:10px;margin:0 8px max(8px,var(--safe-bottom));padding:0 6px;border:0;border-radius:0;background:transparent;scrollbar-gutter:auto}.vault-item{min-height:92px;gap:14px;padding:16px 12px 16px 16px;border:0;border-radius:22px;background:var(--md-sys-color-surface-container-high)}.vault-item-copy h3{display:-webkit-box;overflow:hidden;line-height:1.3;text-overflow:initial;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.vault-item-actions .add-from-vault{min-width:82px;min-height:48px;padding-inline:14px}.vault-item-actions .edit-from-vault{min-width:84px;min-height:48px;padding-inline:14px;color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container)}.editor-delete-confirm{align-items:stretch;flex-direction:column}.editor-delete-confirm>div{justify-content:flex-end}.exercise-editor{min-height:0;flex:1;margin:0;padding:20px max(18px,var(--safe-right)) max(20px,var(--safe-bottom)) max(18px,var(--safe-left));border-radius:0;background:transparent;overflow-y:auto}.exercise-editor~.vault-tools,.exercise-editor~.vault-filter-panel,.exercise-editor~.vault-list,.exercise-editor~.vault-add-fab{display:none}.exercise-form-grid{grid-template-columns:1fr}.exercise-form-grid .wide{grid-column:auto}.exercise-editor footer{position:sticky;bottom:calc(-1*max(20px,var(--safe-bottom)));margin:22px -4px calc(-1*max(20px,var(--safe-bottom)));padding:14px 4px max(20px,var(--safe-bottom));background:linear-gradient(transparent,var(--md-sys-color-surface-container) 18%)}}@media(max-width:600px),(max-width:900px)and (max-height:520px)and (orientation:landscape){.vault-list{margin:0 0 max(8px,var(--safe-bottom));padding-right:max(12px,var(--safe-right));padding-left:max(12px,var(--safe-left));border:0;border-radius:0;background:transparent}.vault-item{padding-right:12px;padding-left:16px}.vault-add-fab{right:max(16px,calc(var(--safe-right) + 12px));bottom:max(24px,calc(var(--safe-bottom) + 18px))}.exercise-vault.fab-visible .vault-list{padding-bottom:94px;scroll-padding-bottom:102px}}@media(max-width:370px){.app-navigation button{min-width:0;padding-inline:1px}.app-navigation .nav-label{font-size:.62rem}.week-strip{grid-template-columns:repeat(7,minmax(34px,1fr));padding-inline:4px}.today-summary{gap:10px;padding-inline:15px}.exercise-row-main{grid-template-columns:40px minmax(0,1fr) 40px}.completion-toggle,.row-action{width:40px;height:40px}.exercise-details{padding-left:62px}.prescription-editor{grid-template-columns:1fr}.text-prescription{grid-column:auto}}@media(max-width:900px)and (max-height:520px)and (orientation:landscape){.masthead{display:none}.screen-brand{display:grid}.app-navigation{right:14px;bottom:12px;left:auto;width:auto;height:auto;padding:4px;border-radius:30px;box-shadow:0 8px 24px color-mix(in srgb,#000 30%,transparent);transform:none}.app-navigation button{min-width:60px;width:60px;height:52px;padding:0}.app-navigation button.active{background:transparent}.app-navigation .nav-label{display:none}.app-navigation .nav-indicator{width:48px;height:36px;border-radius:18px}.app-navigation button.active .nav-indicator{color:var(--md-sys-color-on-primary-container);background:var(--md-sys-color-primary-container)}.app-content{padding-top:max(20px,var(--safe-top));padding-bottom:82px}}@media(hover:none){button:hover{filter:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
