.vocal-warmups{container:vocal-warmups/inline-size;font-family:var(--type-family-interface);font-size:var(--type-size-body);line-height:var(--type-leading-body);letter-spacing:0}.workspace-page.vocal-warmups{height:calc(100% - 4rem)}.warmup-header{position:relative;isolation:isolate;background:var(--brand-hero-ground);color:var(--workspace-hero-ink)}.warmup-header:before{position:absolute;z-index:-1;inset:0;content:"";background:var(--brand-workspace-shade)}.warmup-header .warmup-photo{object-fit:cover;object-position:center 45%}@media (max-width:767px){.warmup-header:before{background:var(--brand-workspace-shade-phone)}}.warmup-header__content{width:min(100%,var(--layout-width));margin-inline:auto;padding:var(--space-3) var(--layout-gutter) var(--space-6)}.warmup-header h1{margin:var(--space-1) 0 0;color:var(--workspace-hero-ink);font-size:var(--type-size-page);font-weight:700;line-height:var(--type-leading-heading);overflow-wrap:anywhere}.warmup-header p{margin-top:var(--space-1);color:var(--workspace-hero-muted);font-size:var(--type-size-body);line-height:var(--type-leading-body)}.warmup-back{display:inline-flex;align-items:center;min-height:var(--control-height);gap:var(--space-2);color:inherit;font-size:var(--control-font-size)}.vocal-warmups .warmup-inner{padding-bottom:calc(var(--space-7) + env(safe-area-inset-bottom, 0px))}.warmup-controls{display:flex;align-items:end;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4) var(--space-6);padding-bottom:var(--space-6);border-bottom:1px solid var(--border)}.warmup-exercises{flex:1 1 24rem;min-width:0;max-width:100%}.warmup-exercises legend{margin-bottom:var(--space-2);font-size:var(--type-size-body);font-weight:600}.warmup-exercises>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2)}.warmup-exercises label{display:flex;align-items:center;gap:var(--space-2);min-height:var(--control-height);min-width:0;padding:var(--space-2) var(--control-padding-inline);border:1px solid var(--control-border-color);border-radius:var(--control-radius);color:var(--control-ink);background:var(--control-surface);cursor:pointer;font-size:var(--control-font-size);line-height:var(--control-line-height)}.warmup-exercises label:has(:checked){border-color:var(--primary);color:var(--foreground);background:var(--studio-category-wash)}.warmup-exercises label:focus-within{outline:2px solid var(--control-focus-ring);outline-offset:2px}.warmup-exercises input{flex:none;accent-color:var(--primary)}.warmup-exercises span{min-width:0;overflow-wrap:anywhere}.warmup-passage-navigation{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);max-width:100%}.warmup-passage-navigation span{font-size:var(--type-size-meta);line-height:var(--type-leading-body);overflow-wrap:anywhere}.warmup-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-7);padding-top:var(--space-6)}.warmup-layout>*{min-width:0}.vocal-warmups h2{font-size:var(--type-size-heading);font-weight:700}.vocal-warmups h2,.vocal-warmups h3{line-height:var(--type-leading-heading);overflow-wrap:anywhere}.vocal-warmups h3{font-size:var(--type-size-title);font-weight:600}.warmup-instruction,.warmup-review__note{margin-top:var(--space-2);color:var(--muted-foreground);font-size:var(--type-size-body);line-height:var(--type-leading-body);overflow-wrap:anywhere}.warmup-passage{margin-top:var(--space-6);padding-left:var(--space-4);border-left:2px solid var(--plan-time)}.warmup-passage__text{margin-top:var(--space-3)}.warmup-passage__text p{font-size:var(--type-size-title);line-height:var(--type-leading-body);overflow-wrap:anywhere}.warmup-passage__text p+p{margin-top:var(--space-3)}.vocal-warmups[data-exercise=clause-pauses] .warmup-passage__text p+p{margin-top:var(--space-4)}.warmup-technical-note{margin-top:var(--space-6);color:var(--muted-foreground)}.warmup-technical-note figcaption{font-size:var(--type-size-meta);font-weight:600;line-height:var(--type-leading-body)}.warmup-technical-note pre{margin-top:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--item-radius);background:var(--card);color:var(--foreground);white-space:pre-wrap;overflow-wrap:anywhere;font:var(--type-size-code)/var(--type-leading-body) var(--type-family-code)}.warmup-technical-note code{font:inherit}.warmup-technical-note>p{margin-top:var(--space-2);font-size:var(--type-size-body);line-height:var(--type-leading-body);overflow-wrap:anywhere}.warmup-playback{display:flex;align-items:end;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6)}.vocal-warmups [data-slot=button]{max-width:100%;white-space:normal;overflow-wrap:anywhere}.vocal-warmups button{touch-action:manipulation}.warmup-beat{margin-top:var(--space-6);padding-top:var(--space-6);border-top:1px solid var(--border)}.warmup-beat__heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2)}.warmup-beat__heading>output{width:8.5rem;min-width:0;max-width:100%;font-size:var(--type-size-meta);color:var(--muted-foreground);line-height:var(--type-leading-body);overflow-wrap:anywhere}.warmup-beat>label{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3);font-size:var(--type-size-body);line-height:var(--type-leading-body)}.warmup-beat label output{font:var(--type-size-meta)/var(--type-leading-body) var(--type-family-interface);font-variant-numeric:tabular-nums}.warmup-beat__controls{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-4);margin-top:var(--space-2)}.warmup-beat__controls input{flex:1 1 10rem;min-width:0;max-width:100%;min-height:var(--control-height);accent-color:var(--plan-time)}.warmup-beat>p{margin-top:var(--space-2);color:var(--muted-foreground);font-size:var(--type-size-body);line-height:var(--type-leading-body);overflow-wrap:anywhere}.warmup-dictation{display:flex;align-items:start;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6)}.warmup-dictation>div{min-width:0;max-width:100%}.warmup-dictation button svg{flex:none}.warmup-dictation span{overflow-wrap:anywhere}.warmup-transcript-label{display:block;margin-top:var(--space-4);font-size:var(--type-size-body);font-weight:600;line-height:var(--type-leading-body)}.vocal-warmups #warmup-transcript{margin-top:var(--space-2);min-height:16rem;max-width:100%;field-sizing:fixed;resize:vertical}.warmup-reset{display:flex;margin-top:var(--space-3)}.warmup-notice{min-height:var(--space-6);margin-top:var(--space-4);font-size:var(--type-size-body);line-height:var(--type-leading-body);color:var(--muted-foreground);overflow-wrap:anywhere}.warmup-footer{display:flex;justify-content:space-between;align-items:start;flex-wrap:wrap;gap:var(--space-4);margin-top:var(--space-7);padding-top:var(--space-4);border-top:1px solid var(--border)}.warmup-footer>div{min-width:0;max-width:100%}.warmup-link{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--control-height);max-width:100%;color:var(--primary);font-size:var(--control-font-size);font-weight:600;line-height:var(--control-line-height);overflow-wrap:anywhere}.warmup-back svg,.warmup-link svg{flex:none}.warmup-back:hover,.warmup-link:hover{text-decoration:underline;text-underline-offset:var(--space-1)}.warmup-back:focus-visible,.warmup-link:focus-visible{outline:2px solid var(--control-focus-ring);outline-offset:4px}.warmup-footer p{max-width:100%;color:var(--muted-foreground);font-size:var(--type-size-meta);line-height:var(--type-leading-body);overflow-wrap:anywhere}@container vocal-warmups (min-width: 52rem){.warmup-layout{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}.warmup-review{padding-left:var(--space-7);border-left:1px solid var(--border)}}@container vocal-warmups (max-width: 40rem){.warmup-exercises{flex-basis:100%}.warmup-exercises>div{grid-template-columns:minmax(0,1fr)}.warmup-beat__controls>button,.warmup-passage-navigation,.warmup-playback>button{width:100%}.warmup-beat__controls input{flex-basis:100%}}@media (prefers-reduced-motion:reduce){.vocal-warmups *,.vocal-warmups :after,.vocal-warmups :before{animation:none!important;transition:none!important}}@media (forced-colors:active){.warmup-passage{border-color:CanvasText}.warmup-beat__controls input{accent-color:auto}}