@font-face{font-family:Newsreader;font-style:normal;font-weight:400 750;font-display:swap;src:url(/assets/newsreader-Di6mwa8h.woff2)format("woff2")}@font-face{font-family:Libre Caslon Display;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/libre-caslon-display-Dy_7uJQ-.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/ibm-plex-mono-400-DBlChZ7-.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:700 750;font-display:swap;src:url(/assets/ibm-plex-mono-700-QslOps6S.woff2)format("woff2")}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f2eee8;--paper-bright:#faf8f3;--ink:#131917;--ink-prose:#1d2422;--ink-soft:#303936;--muted:#626d69;--line:#cbc9c2;--line-dark:#969d98;--line-ink:var(--ink);--shell-accent:#0d5d60;--shell-accent-dark:#08464a;--shell-field:#dbe9e6;--shell-dark:#12201e;--piece-accent:var(--shell-accent);--piece-field:var(--shell-field);--piece-dark:var(--shell-dark);--night:var(--ink);--night-text:#f7f5ef;--night-text-soft:color-mix(in srgb, var(--night-text) 78%, transparent);--night-line:color-mix(in srgb, var(--night-text) 24%, transparent);--on-strong:var(--paper);--scrim:#1319176b;--rel-tonic:var(--shell-accent);--rel-tonic-text:var(--on-strong);--rel-chord:#34506e;--rel-chord-text:var(--on-strong);--rel-select:#8f3a1f;--rel-select-text:var(--on-strong);--rel-target:#c9973a;--rel-target-text:var(--ink);--rel-scale:var(--shell-field);--rel-scale-text:var(--ink);--rel-tonic-night:#7cc4bf;--rel-chord-night:#9db6d6;--rel-select-night:#e59a7c;--rel-target-night:#e3b861;--danger:#9b2c1f;--caution:#8a6212;--caution-rule:var(--rel-target);--display:"Libre Caslon Display", Georgia, "Times New Roman", serif;--serif:"Newsreader", Georgia, "Times New Roman", serif;--mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--type-display:4.6rem;--type-page:4rem;--type-feature:3.4rem;--type-section:2.6rem;--type-heading:2.2rem;--type-card:1.85rem;--type-lead:1.55rem;--type-subhead:1.35rem;--type-body:1.18rem;--type-text:1.05rem;--type-small:.92rem;--type-meta:.75rem;--weight-regular:400;--weight-semi:600;--weight-bold:750;--lh-display:1;--lh-tight:1.2;--lh-ui:1.45;--lh-prose:1.7;--font-label:var(--weight-bold) var(--type-meta) / var(--lh-tight) var(--mono);--font-meta:var(--weight-regular) var(--type-meta) / var(--lh-tight) var(--mono);--font-item:var(--weight-semi) var(--type-text) / var(--lh-tight) var(--serif);--font-subhead:var(--weight-semi) var(--type-subhead) / var(--lh-tight) var(--serif);--font-lede:var(--weight-regular) var(--type-lead) / var(--lh-ui) var(--serif);--font-name:var(--weight-regular) var(--type-card) / var(--lh-display) var(--display);--font-name-large:var(--weight-regular) var(--type-feature) / var(--lh-display) var(--display);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:2.5rem;--space-8:3rem;--space-9:4rem;--space-10:6rem;--frame:min(84rem, calc(100vw - 4rem));--reading:min(36rem, calc(100vw - 2.5rem));--measure:36rem;--measure-narrow:28rem;--section-y:clamp(3rem, 6vw, 6rem);--section-y-lg:clamp(4rem, 9vw, 8.5rem);--page-gutter:clamp(1rem, 4vw, 5rem);--grid-gap:clamp(1.25rem, 2vw, 2.5rem);--rule:1px solid var(--line-dark);--rule-ink:1px solid var(--ink);--rule-quiet:1px solid var(--line);--rule-heavy:3px;--radius-none:0;--focus-width:3px;--focus-offset:4px;--focus-colour:var(--piece-accent);--touch-min:48px;--header-height:72px;--mobile-nav-height:56px;--ease:cubic-bezier(.2, .6, .2, 1);--dur:.16s;--dur-slow:.32s}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#131917;--paper-bright:#1b2321;--ink:#f7f5ef;--ink-prose:#ece9e1;--ink-soft:#d6d3ca;--muted:#a9b0ab;--line:#34403c;--line-dark:#66716c;--shell-accent:#7cc4bf;--shell-accent-dark:#9ad3cf;--shell-field:#1f3a38;--shell-dark:#0a100f;--night:#0a100f;--night-text:#f7f5ef;--on-strong:#131917;--scrim:#00000080;--rel-chord:#9db6d6;--rel-select:#e59a7c;--rel-target:#e3b861;--rel-target-text:#131917;--danger:#f09988;--caution:#e3b861}@media (width<=900px){:root{--frame:calc(100vw - 2rem)}}@media (width<=680px){:root{--header-height:64px;--type-display:3.6rem;--type-page:3.1rem;--type-feature:3.1rem;--type-section:2.2rem;--type-lead:1.25rem;--type-body:1.08rem}}@media (width<=390px){:root{--type-display:3.25rem;--type-page:2.6rem;--type-feature:2.8rem;--type-section:1.85rem}}*,:before,:after{box-sizing:border-box}html{background:var(--paper);min-width:320px;min-height:100%;color:var(--ink);font-family:var(--serif);line-height:var(--lh-ui);font-synthesis:none;text-rendering:optimizelegibility}body{background:var(--paper);min-width:320px;min-height:100vh;color:var(--ink);font-size:var(--type-text);margin:0}img,svg,video,canvas{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit;border-radius:var(--radius-none)}button,select,summary,input[type=checkbox],input[type=radio]{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed}textarea{resize:vertical;min-height:6rem}input[type=checkbox],input[type=radio]{width:1.25rem;height:1.25rem;accent-color:var(--ink);flex:none;margin:0}:focus-visible{outline:var(--focus-width) solid var(--focus-colour);outline-offset:var(--focus-offset)}::selection{background:var(--piece-field);color:var(--ink)}a{color:inherit;text-decoration-line:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--line-dark);text-decoration-color:var(--line-dark);text-underline-offset:.18em}a:hover{color:var(--piece-accent);text-decoration-color:currentColor}h1,h2,h3,h4{color:var(--ink);letter-spacing:0;overflow-wrap:break-word;text-wrap:balance;margin-top:0}h1{max-width:18ch;margin-bottom:var(--space-4);font:var(--weight-regular) var(--type-page) / var(--lh-display) var(--display)}h2{margin-bottom:var(--space-3);font:var(--weight-semi) var(--type-lead) / var(--lh-tight) var(--serif)}h3{margin-bottom:var(--space-2);font:var(--font-subhead)}h4{margin-bottom:var(--space-2);font:var(--font-item)}p,li,dd{text-wrap:pretty}p{margin-top:0;margin-bottom:var(--space-4);color:var(--ink-soft);font-size:var(--type-text);line-height:var(--lh-ui)}figure{margin:0}small{font-size:var(--type-small)}code{font-family:var(--mono);font-size:.84em}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:200;top:var(--space-3);left:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--ink);color:var(--paper);font:var(--font-label);text-transform:uppercase;position:fixed;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.eyebrow{margin:0 0 var(--space-2);color:var(--piece-accent);font:var(--weight-semi) var(--type-small) / var(--lh-tight) var(--serif);text-transform:none;letter-spacing:0;display:block}.card{border:var(--rule-ink);border-radius:var(--radius-none);background:var(--paper-bright);min-width:0;box-shadow:none}.card>p,.card header p{max-width:var(--measure)}.primary-action,.secondary-action,.text-action,.danger-action{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--touch-min);padding:var(--space-2) var(--space-4);border:var(--rule-ink);border-radius:var(--radius-none);font:var(--font-label);text-align:center;text-transform:uppercase;letter-spacing:0;transition:background-color var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease);display:inline-flex}.primary-action{background:var(--ink);color:var(--paper)}.primary-action:hover:not(:disabled){border-color:var(--piece-accent);background:var(--piece-accent);color:var(--on-strong)}.primary-action.large,.secondary-action.large{max-width:100%;padding-inline:var(--space-5);text-align:left}.secondary-action{background:var(--paper-bright);color:var(--ink)}.secondary-action:hover:not(:disabled),.danger-action:hover:not(:disabled){border-color:var(--piece-accent);color:var(--piece-accent)}.secondary-action[aria-pressed=true]{background:var(--piece-field);box-shadow:inset 0 calc(-1 * var(--rule-heavy)) 0 var(--ink)}.text-action{padding-inline:var(--space-2);color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--line-dark);text-decoration-color:var(--line-dark);text-underline-offset:.3em;background:0 0;border-color:#0000}.text-action:hover:not(:disabled){color:var(--piece-accent);text-decoration-color:currentColor}.danger-action{background:var(--paper-bright);color:var(--danger)}.primary-action:disabled,.secondary-action:disabled,.danger-action:disabled{border-color:var(--line-dark);background:var(--paper);color:var(--muted)}.text-action:disabled{color:var(--muted);text-decoration-style:dotted}.icon-button{width:var(--touch-min);height:var(--touch-min);border:var(--rule-ink);border-radius:var(--radius-none);background:var(--paper-bright);color:var(--ink);font:var(--weight-regular) var(--type-subhead) / var(--lh-display) var(--mono);transition:border-color var(--dur) var(--ease), color var(--dur) var(--ease);flex:none;place-items:center;padding:0;display:grid}.icon-button:hover{border-color:var(--piece-accent);color:var(--piece-accent)}.action-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.studio-settings label,.settings-grid label,.context-controls label,.activity-check details label,.sketch-melody-events label,.pilot-controls label{gap:var(--space-2);color:var(--ink);font:var(--font-label);text-transform:uppercase;display:grid}input:not([type=checkbox],[type=radio],[type=range]),select,textarea{width:100%;min-width:0;min-height:var(--touch-min);padding:var(--space-3) var(--space-4);border:var(--rule-ink);border-radius:var(--radius-none);background:var(--paper-bright);color:var(--ink);font:var(--weight-regular) var(--type-text) / var(--lh-ui) var(--serif);text-transform:none}select{padding-block:var(--space-2)}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}.toggle,.check-line{align-items:center;gap:var(--space-3);min-height:var(--touch-min);color:var(--ink);font:var(--weight-regular) var(--type-text) / var(--lh-tight) var(--serif);text-transform:none;display:inline-flex}details>summary{min-height:var(--touch-min)}.pilot-capabilities ul,.mastery-grid,.practice-modes,.relationship-ribbon>div,.chord-picker,.transformation-grid,.play-promise,.placement-results,.diagnostic-choices{border:var(--rule-ink);background:var(--line-dark);gap:1px;padding:0;list-style:none;display:grid}.practice-modes button.is-active,.relationship-ribbon button.is-active,.transformation-grid button[aria-pressed=true],.diagnostic-choices button.is-active,.placement-manual button[aria-pressed=true]{background:var(--piece-field);box-shadow:inset 0 var(--rule-heavy) 0 var(--ink)}.competency-tags span,.mastery-state,.ability-badge,.workflow-mini span,.unit-status>span,.offline-unit-status{padding:var(--space-1) var(--space-2);border:var(--rule);border-radius:var(--radius-none);background:var(--paper-bright);color:var(--ink-soft);font:var(--font-label);text-transform:uppercase;display:inline-block}.offline-banner,.save-failure,.workspace-recovery,.restore-hold,.update-notice,.restore-preview,.activity-draft-notice{margin:0 0 var(--space-4);padding:var(--space-4) var(--space-5);border:var(--rule-ink);border-left-width:var(--rule-heavy);border-radius:var(--radius-none);background:var(--paper-bright);box-shadow:none;color:var(--ink);font-size:var(--type-small)}.loading-screen{gap:var(--space-4);text-align:center;place-content:center;min-height:100vh;display:grid}.loading-screen span{font:var(--font-name-large)}.loading-screen p{color:var(--muted);font:var(--font-meta);text-transform:uppercase;margin:0}.v8-shell{flex-direction:column;min-height:100vh;display:flex}.v8-shell>main{min-width:0;padding:var(--space-6) 0 var(--space-10);flex:1}.v8-shell>main:focus{outline:none}.app-header{z-index:50;background:var(--paper);border-bottom:var(--rule);position:relative}.app-header__bar{width:var(--frame);min-height:var(--header-height);justify-content:space-between;align-items:stretch;margin:0 auto;display:flex}.wordmark{margin-right:var(--space-6);color:var(--ink);font:var(--font-name);white-space:nowrap;background:0 0;border:0;align-items:center;padding:0;text-decoration:none;display:inline-flex}.wordmark:after{content:"."}button.wordmark:hover{color:var(--piece-accent)}.primary-nav{align-items:stretch;margin-left:auto;display:flex}.primary-nav button,.header-settings{justify-content:center;align-items:center;gap:var(--space-2);min-width:0;min-height:var(--touch-min);padding:0 var(--space-5);border:0;border-left:var(--rule);color:var(--ink);font:var(--weight-bold) var(--type-meta) / var(--lh-display) var(--mono);text-transform:uppercase;white-space:nowrap;transition:background-color var(--dur) var(--ease), color var(--dur) var(--ease);background:0 0;display:inline-flex}.header-settings{border-right:var(--rule)}.primary-nav button:hover,.header-settings:hover{color:var(--piece-accent)}.primary-nav button.is-active{background:var(--shell-field);box-shadow:inset 0 calc(-1 * var(--rule-heavy)) 0 var(--ink);color:var(--ink)}.glyph{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:1.25rem;height:1.25rem}.context-bar{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-5);width:var(--frame);min-height:var(--space-7);padding:var(--space-2) 0;border-top:var(--rule-quiet);margin:0 auto;display:flex}.context-bar__reference{color:var(--ink-soft);font:var(--weight-regular) var(--type-meta) / var(--lh-ui) var(--mono);text-transform:uppercase;margin:0}.context-bar__label{margin-right:var(--space-2);color:var(--muted);font-weight:var(--weight-bold)}.save-indicator{align-items:center;gap:var(--space-2);color:var(--muted);font:var(--font-meta);text-transform:uppercase;margin:0;display:flex}.save-indicator:before{width:var(--space-2);height:var(--space-2);content:"";background:currentColor;flex:none}.save-indicator[data-status=saved]{color:var(--piece-accent)}.save-indicator[data-status=failed]{color:var(--danger);font-weight:var(--weight-bold)}main>.offline-banner,main>section.save-failure,main>section.workspace-recovery,main>section.restore-hold,main>section.update-notice,.page-notices>section{z-index:45;top:var(--space-2);width:var(--frame);margin:0 auto var(--space-4);position:sticky}.learn-tabs{width:var(--frame);margin:0 auto var(--space-6);border:var(--rule-ink);background:var(--line-dark);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid}.learn-tabs button{gap:var(--space-1);min-height:var(--touch-min);padding:var(--space-3) var(--space-4);background:var(--paper-bright);text-align:left;transition:background-color var(--dur) var(--ease);border:0;display:grid}.learn-tabs button:hover{background:var(--paper)}.learn-tabs button.is-active{background:var(--shell-field);box-shadow:inset 0 calc(-1 * var(--rule-heavy)) 0 var(--ink)}.learn-tabs strong{font:var(--font-label);text-transform:uppercase}.learn-tabs small{color:var(--ink-soft);font:var(--weight-regular) var(--type-small) / var(--lh-tight) var(--serif)}.page-stack{gap:var(--grid-gap);width:var(--frame);margin:0 auto;display:grid}.page-header{justify-content:space-between;align-items:flex-end;gap:var(--space-6);padding:var(--space-6) 0 var(--space-6);border-bottom:var(--rule-ink);display:flex}.page-header h1{margin-bottom:var(--space-4)}.page-header p{max-width:var(--measure);color:var(--ink-soft);font:var(--font-lede);margin:0}.practice-section-heading,.play-mode-section>header{justify-content:space-between;align-items:flex-end;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:var(--rule-ink);display:flex}.practice-section-heading h2,.play-mode-section h2,.unit-stage>header h2{font-size:var(--type-section);margin:0}.practice-section-heading p{max-width:var(--measure-narrow);font-size:var(--type-small);margin:0}.mobile-nav{display:none}.app-dialog{box-sizing:border-box;width:100%;max-width:none;height:100dvh;max-height:none;color:var(--ink);overscroll-behavior:contain;border:0;margin:0}.app-dialog:not([open]){display:none}.app-dialog::backdrop{background:0 0}.dialog-notices{box-sizing:border-box;gap:var(--space-2);width:var(--frame);padding-top:var(--space-2);margin:0 auto;display:grid}.dialog-notices:empty,.diagnostic-notices:empty{display:none}.dialog-notices>section{width:100%;margin:0;position:static}@media (width<=1120px){.primary-nav button,.header-settings{padding-inline:var(--space-4)}}@media (width<=900px){.header-settings span{display:none}.header-settings{width:var(--touch-min);padding:0}}@media (width<=680px){.v8-shell{padding-bottom:var(--mobile-nav-height)}.v8-shell>main{padding:var(--space-4) 0 var(--space-8)}.primary-nav{display:none}.header-settings{border:var(--rule-ink);align-self:center}.context-bar{min-height:0}.context-bar__reference{display:none}.save-indicator{font-size:var(--type-meta);line-height:var(--lh-ui)}.mobile-nav{z-index:60;border-top:var(--rule-ink);background:var(--line-dark);padding-bottom:env(safe-area-inset-bottom);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{min-height:var(--mobile-nav-height);background:var(--paper-bright);color:var(--ink);border:0;place-content:center;display:grid}.mobile-nav button.is-active{background:var(--shell-field);box-shadow:inset 0 var(--rule-heavy) 0 var(--ink)}.mobile-nav span{font:var(--font-label);text-transform:uppercase}.mobile-nav :focus-visible{outline-offset:calc(-1 * var(--focus-width))}.learn-tabs{margin-bottom:var(--space-5)}.learn-tabs button{padding:var(--space-2);text-align:center;place-content:center}.learn-tabs small{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.page-header,.practice-section-heading,.play-mode-section>header{align-items:flex-start;gap:var(--space-4);flex-direction:column}.page-header{padding-top:var(--space-4)}}@media (width<=680px) and (height<=500px){:root{--mobile-nav-height:var(--touch-min)}}.today-focus{align-items:end;gap:var(--space-6) var(--space-8);padding:var(--space-6) 0 var(--space-7);border-bottom:var(--rule-ink);grid-template-columns:minmax(0,1fr) minmax(16rem,22rem);display:grid}.today-copy{justify-items:start;gap:var(--space-4);min-width:0;display:grid}.today-copy h1,.today-copy .eyebrow{margin:0}.today-copy>p{max-width:var(--measure);font:var(--font-lede);margin:0}.personal-goal{gap:var(--space-2);width:100%;max-width:var(--measure);font:var(--font-label);text-transform:uppercase;display:grid}.course-location{border:var(--rule-ink);background:var(--paper-bright);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:stretch;width:100%;max-width:48rem;display:grid}.course-location>div{align-content:center;gap:var(--space-1);padding:var(--space-3) var(--space-4);display:grid}.course-location small{color:var(--ink-soft);font:var(--font-label);text-transform:uppercase}.course-location strong{font:var(--font-item)}.course-location i{padding:0 var(--space-2);border-inline:var(--rule);color:var(--muted);place-items:center;font-style:normal;display:grid}.course-location .text-action{border-left:var(--rule);white-space:nowrap;height:100%}.today-meta{gap:var(--space-2);flex-wrap:wrap;display:flex}.today-meta span{padding:var(--space-1) var(--space-2);border:var(--rule);color:var(--ink-soft);font:var(--font-label);text-transform:uppercase}.session-destination{gap:var(--space-2);padding:var(--space-5);border:var(--rule-ink);background:var(--piece-field);display:grid}.session-destination span{color:var(--ink-soft);font:var(--font-label);text-transform:uppercase}.session-destination strong{font:var(--font-name-large);text-wrap:balance}.session-destination small{color:var(--ink-soft);font:var(--font-meta);text-transform:uppercase}.session-plan,.session-ending,.familiar-favorites,.pilot-capabilities,.project-glance,.reflection-glance,.free-play-glance,.today-page>section.card:not(.session-plan),.evidence-panel,.practice-focus,.strengthen-empty,.unit-detail{padding:var(--space-5)}.session-plan>header,.evidence-panel>header,.unit-detail>header{justify-content:space-between;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.session-plan>header h2,.evidence-panel>header h2,.unit-detail>header h2{margin:0}.session-plan>header>strong,.evidence-panel>header>span,.unit-detail>header>strong{color:var(--ink-soft);font:var(--font-label);text-align:right;text-transform:uppercase;flex:none}.session-plan ol,.activity-list{border:var(--rule-ink);margin:0;padding:0;list-style:none;display:grid}.session-plan li+li,.activity-list li+li{border-top:var(--rule)}.session-plan li button,.activity-list li button{grid-template-columns:var(--space-9) minmax(0, 1fr) auto;width:100%;min-height:var(--touch-min);background:var(--paper-bright);color:var(--ink);text-align:left;border:0;align-items:stretch;padding:0;display:grid}.activity-list li button{grid-template-columns:9rem minmax(0,1fr) auto}.session-plan li button>span,.activity-list li button>span{padding:var(--space-3) var(--space-4);border-right:var(--rule);background:var(--shell-field);color:var(--ink-soft);font:var(--font-label);text-transform:uppercase;place-items:center start;display:grid}.session-plan li button>div,.activity-list li button>div{align-content:center;gap:var(--space-1);min-width:0;padding:var(--space-3) var(--space-4);display:grid}.session-plan li strong,.activity-list li strong{font:var(--font-item);transition:color var(--dur) var(--ease)}.session-plan li small,.activity-list li small{color:var(--ink-soft);font:var(--weight-regular) var(--type-small) / var(--lh-ui) var(--serif)}.session-plan li b,.activity-list li b{padding:var(--space-3) var(--space-4);color:var(--muted);font:var(--font-label);text-transform:uppercase;place-items:center end;display:grid}.session-plan li button:hover strong,.activity-list li button:hover strong{color:var(--piece-accent)}.session-plan li.is-complete button>div,.activity-list li.is-complete button>div{color:var(--muted)}.session-plan li.is-complete strong,.activity-list li.is-complete strong{color:var(--ink-soft);font-weight:var(--weight-regular)}.pilot-capabilities ul{margin:var(--space-4) 0 0;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr))}.pilot-capabilities li{align-content:start;gap:var(--space-2);padding:var(--space-4);background:var(--paper-bright);display:grid}.pilot-capabilities li strong{font:var(--font-item)}.pilot-capabilities li small{color:var(--ink-soft);font-size:var(--type-small)}.today-lower{gap:var(--grid-gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.free-play-glance{align-items:center;gap:var(--space-2) var(--space-6);grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;display:grid}.free-play-glance>*{grid-column:1}.free-play-glance p{margin:0}.free-play-glance button{grid-area:1/2/4}.project-glance,.reflection-glance{flex-direction:column;align-items:flex-start;display:flex}.project-glance>button{margin-top:auto}.workflow-mini,.artifact-stats{gap:var(--space-2);margin:0 0 var(--space-4);flex-wrap:wrap;display:flex}.artifact-stats{border:var(--rule-ink);background:var(--line-dark);gap:1px;width:100%;margin:auto 0 0}.artifact-stats span{gap:var(--space-1);padding:var(--space-3) var(--space-4);background:var(--paper-bright);color:var(--ink-soft);font:var(--font-label);text-transform:uppercase;flex:1 1 0;display:grid}.artifact-stats strong{color:var(--ink);font:var(--font-name)}.familiar-favorites details{margin-top:var(--space-3)}.path-total{justify-items:end;gap:var(--space-1);flex:none;display:grid}.path-total strong{font:var(--weight-regular) var(--type-display) / var(--lh-display) var(--display)}.path-total span{color:var(--ink-soft);font:var(--font-label);text-transform:uppercase}.path-layout{align-items:start;gap:var(--grid-gap);grid-template-columns:19rem minmax(0,1fr);display:grid}.stage-list{top:var(--space-4);display:grid;position:sticky}.stage-list>header{padding:var(--space-3) var(--space-4);border-bottom:var(--rule-ink)}.stage-list>header strong,.stage-list>header small{display:block}.stage-list>header strong{font:var(--font-label);text-transform:uppercase}.stage-list>header small{margin-top:var(--space-1);color:var(--ink-soft)}.stage-list>button{gap:var(--space-1) var(--space-3);min-height:var(--touch-min);padding:var(--space-3) var(--space-4);color:var(--ink);text-align:left;transition:background-color var(--dur) var(--ease);background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;display:grid}.stage-list>button+button{border-top:var(--rule)}.stage-list>button:hover{background:var(--paper)}.stage-list>button.is-active{background:var(--piece-field);box-shadow:inset var(--rule-heavy) 0 0 var(--ink)}.stage-list .stage-order{color:var(--ink-soft);font:var(--font-label);text-transform:uppercase;grid-column:1/-1}.stage-list strong,.stage-list small{display:block}.stage-list strong{font:var(--font-item)}.stage-list small{margin-top:var(--space-1);color:var(--ink-soft);font-size:var(--type-small);line-height:var(--lh-ui)}.stage-list b{color:var(--ink-soft);font:var(--font-label);text-transform:uppercase;align-self:start}.unit-stage{gap:var(--grid-gap);min-width:0;display:grid}.unit-stage>header{padding-bottom:var(--space-4);border-bottom:var(--rule-ink)}.unit-stage>header p{max-width:var(--measure);margin:var(--space-3) 0 0}.unit-grid{gap:var(--grid-gap);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.unit-card{padding:var(--space-4);transition:border-color var(--dur) var(--ease);flex-direction:column;display:flex}.unit-card h3{margin:var(--space-3) 0 var(--space-2);font:var(--font-name)}.unit-card p{font-size:var(--type-small)}.unit-card>button{margin-top:auto}.unit-card:hover:not(.is-locked){border-color:var(--piece-accent)}.unit-card.is-active{box-shadow:inset 0 var(--rule-heavy) 0 var(--piece-accent)}.unit-card.is-locked{border-style:dashed;border-color:var(--line-dark);background:var(--paper)}.unit-card .lock-note{margin-top:var(--space-2);color:var(--muted);display:block}.unit-status{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.unit-status i{width:var(--space-9);height:var(--space-2);border:var(--rule-ink);background:linear-gradient(90deg, var(--piece-accent) var(--progress), transparent var(--progress))}.competency-tags{gap:var(--space-1);margin:var(--space-2) 0 var(--space-4);flex-wrap:wrap;display:flex}.offline-unit-status{margin:0 0 var(--space-4)}.locked-unit-summary{justify-content:space-between;align-items:center;gap:var(--space-5);padding:var(--space-4);border:var(--rule);background:var(--paper);display:flex}.locked-unit-summary p{margin:0}.locked-unit-summary .primary-action{flex:none}.practice-modes{grid-template-columns:repeat(4,minmax(0,1fr))}.practice-modes button{align-items:flex-start;gap:var(--space-2);min-height:9rem;padding:var(--space-4);background:var(--paper-bright);color:var(--ink);text-align:left;border:0;flex-direction:column;display:flex}.practice-modes button:hover:not(.is-active){background:var(--paper)}.practice-modes span{font:var(--font-subhead)}.practice-modes small{color:var(--ink-soft);line-height:var(--lh-ui)}.practice-modes b{color:var(--ink-soft);font:var(--font-label);text-transform:uppercase;margin-top:auto}.practice-focus,.strengthen-empty{justify-content:space-between;align-items:center;gap:var(--space-6);display:flex}.practice-focus>div,.strengthen-empty>div{max-width:48rem}.practice-focus .primary-action,.strengthen-empty .primary-action{flex:none}.strengthen-empty p{margin-bottom:0}.practice-review{gap:var(--space-4);padding:var(--space-5);display:grid}.practice-review>div{min-width:0}.practice-review p{max-width:var(--measure);overflow-wrap:anywhere}.practice-review small{max-width:var(--measure);color:var(--ink-soft);display:block}.practice-review .primary-action{justify-self:start}.recommendation-context{margin:0 0 var(--space-4);color:var(--ink-soft);font:var(--weight-bold) var(--type-meta) / var(--lh-ui) var(--mono);text-transform:uppercase;display:block}.recommendation-reason{max-width:var(--measure);margin:0 0 var(--space-4);padding:var(--space-1) 0 var(--space-1) var(--space-4);border-left:var(--rule-heavy) solid var(--piece-accent);color:var(--ink)}.recommendation-reason strong{font-weight:var(--weight-semi)}.mastery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.mastery-grid article{align-content:start;gap:var(--space-2);padding:var(--space-4);background:var(--paper-bright);display:grid}.mastery-grid article>strong{font:var(--font-item)}.mastery-grid article>strong:first-letter{text-transform:uppercase}.mastery-grid small{color:var(--ink-soft)}.mastery-state{justify-self:start}.state-secure,.state-transfer-ready{border-color:var(--ink);background:var(--piece-field);color:var(--ink)}.mastery-next{color:var(--piece-accent);line-height:var(--lh-ui);display:block}.concept-checks,.placement-sampler,.pitch-check{min-width:0;padding:var(--space-4) var(--space-5)}.concept-checks summary,.placement-sampler summary,.pitch-check summary{align-content:center;gap:var(--space-1);display:grid}.concept-checks summary strong,.placement-sampler summary strong,.pitch-check summary strong{font:var(--font-subhead)}.concept-checks summary span,.placement-sampler summary span,.pitch-check summary span{color:var(--ink-soft);font-size:var(--type-small)}.concept-checks:not([open]) .concept-check-body,.pitch-check:not([open]) .pitch-check-body{display:none}.concept-check-body,.placement-content,.pitch-check-body{gap:var(--space-4);padding-top:var(--space-4);display:grid}.concept-check-body>p,.placement-content>p,.pitch-check-body>p{max-width:var(--measure);margin:0}.concept-check-kinds,.concept-check-options,.pitch-check-modes{gap:var(--space-2);flex-wrap:wrap;display:flex}.concept-check-kinds button,.pitch-check-modes button{min-height:var(--touch-min);padding:var(--space-2) var(--space-4);border:var(--rule-ink);background:var(--paper-bright);color:var(--ink);font:var(--font-label);text-transform:uppercase}.concept-check-kinds button.is-active,.pitch-check-modes button[aria-pressed=true]{background:var(--piece-field);box-shadow:inset 0 calc(-1 * var(--rule-heavy)) 0 var(--ink)}.concept-check-question{gap:var(--space-4);padding:var(--space-4);border:var(--rule);background:var(--paper);display:grid}.concept-check-question>strong{font:var(--font-subhead)}.concept-check-question>button{justify-self:start}.concept-check-options label{align-items:center;gap:var(--space-2);min-height:var(--touch-min);padding:var(--space-2) var(--space-4);border:var(--rule-ink);background:var(--paper-bright);color:var(--ink);cursor:pointer;display:inline-flex}.concept-check-options label:has(input:checked){background:var(--piece-field);box-shadow:inset 0 calc(-1 * var(--rule-heavy)) 0 var(--ink)}.pitch-check-modes button:disabled{border-color:var(--line-dark);color:var(--muted)}.pitch-check-result{gap:var(--space-2);padding:var(--space-3) var(--space-4);border:var(--rule);border-left:var(--rule-heavy) solid var(--piece-accent);background:var(--paper);color:var(--ink);display:grid}.concept-result{gap:var(--space-2);display:grid}.diagnostic-choices+.placement-sampler{margin-top:var(--space-5)}.placement-results{grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr))}.placement-results>div,.placement-domain,.placement-suggestion,.placement-manual{gap:var(--space-3);min-width:0;padding:var(--space-4);background:var(--paper-bright);display:grid}.placement-domain,.placement-suggestion,.placement-manual{border:var(--rule);background:var(--paper)}.placement-results>div{gap:var(--space-1)}.placement-results small,.placement-domain small{color:var(--ink-soft)}.placement-domain h4,.placement-suggestion h4{margin:0}.placement-domain>button,.placement-suggestion>button{justify-self:start}.placement-manual{flex-wrap:wrap;align-items:center;display:flex}.placement-manual p{width:100%;margin:0}@media (width<=1180px){.unit-grid,.practice-modes{grid-template-columns:repeat(2,minmax(0,1fr))}.mastery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.today-focus{grid-template-columns:1fr;align-items:start}.path-layout{grid-template-columns:1fr}.stage-list{position:static}}@media (width<=680px){.today-focus{padding-top:var(--space-2)}.course-location{grid-template-columns:1fr}.course-location i{display:none}.course-location>div~div,.course-location .text-action{border-top:var(--rule);border-left:0}.course-location .text-action{padding-inline:var(--space-4);justify-content:flex-start}.today-lower,.practice-modes,.unit-grid{grid-template-columns:1fr}.free-play-glance{flex-direction:column;align-items:flex-start;display:flex}.session-plan,.session-ending,.familiar-favorites,.pilot-capabilities,.project-glance,.reflection-glance,.free-play-glance,.today-page>section.card:not(.session-plan),.evidence-panel,.practice-focus,.strengthen-empty,.unit-detail{padding:var(--space-4)}.session-plan>header,.evidence-panel>header,.unit-detail>header,.practice-focus,.strengthen-empty,.locked-unit-summary{flex-direction:column;align-items:flex-start}.session-plan>header>strong,.evidence-panel>header>span,.unit-detail>header>strong{text-align:left}.path-total{justify-items:start}.practice-modes button{min-height:0}.mastery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=420px){.session-plan li button{grid-template-columns:var(--space-7) minmax(0, 1fr)}.activity-list li button{grid-template-columns:6.5rem minmax(0,1fr)}.session-plan li button>span{padding-inline:var(--space-1);place-items:center}.activity-list li button>span{padding-inline:var(--space-2)}.session-plan li b,.activity-list li b{display:none}.mastery-grid{grid-template-columns:1fr}}.activity-overlay{z-index:100;background:var(--paper);position:fixed;inset:0;overflow-y:auto}.app-dialog.activity-overlay{padding:0}.activity-player{width:var(--frame);min-height:100%;padding:var(--space-5) 0 var(--space-9);margin:0 auto}.activity-header{align-items:start;gap:var(--space-5);margin-bottom:var(--grid-gap);padding-bottom:var(--space-6);border-bottom:var(--rule-ink);grid-template-columns:auto minmax(0,1fr);display:grid}.activity-header h1{margin:var(--space-3) 0 var(--space-4)}.activity-header p{max-width:var(--measure);font:var(--font-lede)}.activity-header span{color:var(--ink-soft);font:var(--weight-bold) var(--type-meta) / var(--lh-ui) var(--mono);text-transform:uppercase}.activity-grid{align-items:start;gap:var(--grid-gap);grid-template-columns:minmax(0,1fr) 21rem;display:grid}.activity-main,.activity-check{padding:var(--space-6)}.activity-kind{color:var(--piece-accent);font:var(--weight-semi) var(--type-small) / var(--lh-tight) var(--serif);display:block}.activity-kind:first-letter{text-transform:uppercase}.activity-main>h2{max-width:34ch;margin:var(--space-2) 0 var(--space-5);font-size:var(--type-lead)}.activity-prompt{max-width:var(--measure);padding-left:var(--space-5);border-left:var(--rule-heavy) solid var(--piece-accent);color:var(--ink);font:var(--weight-regular) var(--type-subhead) / var(--lh-ui) var(--serif)}.response-guide,.do-now{max-width:48rem;margin:0 0 var(--space-4);padding:var(--space-4);border:var(--rule);background:var(--paper)}.do-now{border:var(--rule-ink);background:var(--paper-bright)}.response-guide strong,.do-now strong,.guidance strong,.creative-bridge strong{margin-bottom:var(--space-2);font:var(--font-label);text-transform:uppercase;display:block}.response-guide p,.do-now p{margin:0 0 var(--space-1);color:var(--ink)}.response-guide small{color:var(--ink-soft)}.success-criterion{margin:var(--space-3) 0 var(--space-4)}.success-criterion small,.assistance-state small,.activity-check>span{color:var(--ink-soft);font:var(--font-label);text-transform:uppercase;display:block}.success-criterion p{margin:var(--space-2) 0 0;color:var(--ink);font-weight:var(--weight-semi)}.outcome-lead{margin:var(--space-4) 0 0;color:var(--ink-soft);font-size:var(--type-small)}.help-note{margin:var(--space-3) 0 0;color:var(--muted);line-height:var(--lh-ui);display:block}.audio-feedback{align-items:center;gap:var(--space-3);margin:var(--space-3) 0 0;padding:var(--space-3) var(--space-4);border:var(--rule);background:var(--paper);display:flex}.audio-feedback p{color:var(--ink-soft);font-size:var(--type-small);margin:0}.audio-dot{opacity:.35;transition:opacity var(--dur) var(--ease)}.audio-feedback.is-playing{border-color:var(--piece-accent);box-shadow:inset var(--rule-heavy) 0 0 var(--piece-accent)}.audio-feedback.is-playing .audio-dot{opacity:1}.audio-feedback.is-playing p{color:var(--ink)}.attempt-pad{gap:var(--space-2);width:100%;min-height:7rem;margin:var(--space-5) 0;padding:var(--space-5);border:1px dashed var(--ink);background:var(--paper-bright);color:var(--ink);font:var(--font-subhead);text-align:left;transition:border-color var(--dur) var(--ease), background-color var(--dur) var(--ease);display:grid}.attempt-pad:hover{border-color:var(--piece-accent)}.attempt-pad span{color:var(--ink-soft);font:var(--weight-regular) var(--type-small) / var(--lh-ui) var(--serif)}.attempt-pad.is-done{background:var(--piece-field);box-shadow:inset var(--rule-heavy) 0 0 var(--ink);border-style:solid}.creative-bridge{align-items:center;gap:var(--space-3) var(--space-5);margin:var(--space-4) 0;padding:var(--space-4);border:var(--rule-ink);background:var(--paper);grid-template-columns:minmax(0,1fr) auto;display:grid}.creative-bridge div{display:grid}.creative-bridge span{color:var(--ink-soft);font-size:var(--type-small)}.creative-bridge .text-action{grid-column:1/-1;justify-self:start}.reflection-field{gap:var(--space-2);margin:var(--space-5) 0;font:var(--font-item);display:grid}.help-actions{gap:var(--space-2);margin-top:var(--space-5);padding-top:var(--space-4);border-top:var(--rule);flex-wrap:wrap;display:flex}.help-actions button{min-height:var(--touch-min);padding:var(--space-2) var(--space-4);border:var(--rule-ink);background:var(--paper-bright);color:var(--ink);font:var(--font-label);text-transform:uppercase}.help-actions button:hover:not(:disabled){border-color:var(--piece-accent);color:var(--piece-accent)}.guidance{margin-top:var(--space-3);padding:var(--space-4);border:var(--rule);border-left:var(--rule-heavy) solid var(--piece-accent);background:var(--paper)}.guidance p{color:var(--ink);margin:0}.guidance.reveal{border-left-color:var(--rel-target)}.activity-check{top:var(--space-4);position:sticky}.activity-check>p{font-size:var(--type-small)}.activity-check details{margin:var(--space-4) 0;border:var(--rule);background:var(--paper)}.activity-check details summary{padding:0 var(--space-4);font-weight:var(--weight-semi);align-items:center;display:flex}.activity-check details>:not(summary){margin:0 var(--space-4) var(--space-3)}.activity-check details label{margin-top:var(--space-3)}.assistance-state{gap:var(--space-1);padding:var(--space-3) var(--space-4);border:var(--rule);background:var(--shell-field);display:grid}.assistance-state strong{font:var(--font-item)}.assistance-state strong:first-letter{text-transform:uppercase}.assistance-state span{color:var(--ink-soft);font-size:var(--type-small)}.outcome-buttons{margin:var(--space-3) 0;border:var(--rule-ink);display:grid}.outcome-buttons button{gap:var(--space-1);min-height:var(--touch-min);padding:var(--space-3) var(--space-4);background:var(--paper-bright);color:var(--ink);text-align:left;transition:background-color var(--dur) var(--ease);border:0;display:grid}.outcome-buttons button+button{border-top:var(--rule)}.outcome-buttons button:hover{background:var(--piece-field)}.outcome-buttons strong{font:var(--font-item)}.outcome-buttons span{color:var(--ink-soft);font-size:var(--type-small)}.record-save-status{margin:var(--space-2) 0 0;color:var(--ink);font:var(--weight-bold) var(--type-meta) / var(--lh-ui) var(--mono);text-transform:uppercase}.record-save-status[data-status=failed]{color:var(--danger)}.done-panel{justify-items:center;gap:var(--space-3);max-width:var(--measure);margin:var(--space-6) auto;padding:var(--space-7) var(--space-6);text-align:center;display:grid}.done-check{width:var(--touch-min);height:var(--touch-min);border:var(--rule-ink);background:var(--piece-field);color:var(--ink);font:var(--weight-bold) var(--type-subhead) / var(--lh-display) var(--mono);place-items:center;display:grid}.done-panel h2{margin:var(--space-2) 0 0;font:var(--font-name)}.done-panel p small{color:var(--ink-soft)}.done-actions{justify-items:center;gap:var(--space-2);width:100%;margin-top:var(--space-4);display:grid}.done-actions .primary-action{min-width:14rem}.micro-study{margin:var(--space-5) 0;border:var(--rule-ink);background:var(--paper-bright);grid-template-columns:13rem minmax(0,1fr);display:grid}.micro-study figcaption{align-content:center;gap:var(--space-1);padding:var(--space-4);border-right:var(--rule);background:var(--piece-field);display:grid}.micro-study figcaption strong{font:var(--font-name)}.micro-study figcaption span,.micro-study figcaption small{color:var(--ink-soft);font:var(--weight-regular) var(--type-meta) / var(--lh-ui) var(--mono);text-transform:uppercase}.tab-staff{gap:var(--space-2);padding:var(--space-4);color:var(--ink);display:grid;overflow-x:auto}.tab-staff code{font:var(--weight-regular) var(--type-small) / var(--lh-ui) var(--mono);white-space:pre}.tab-line{align-items:center;gap:var(--space-3);display:flex}.line-label{min-width:5.5rem;padding:var(--space-1) var(--space-2);border:var(--rule);background:var(--paper);color:var(--ink-soft);font:var(--font-label);text-align:center;text-transform:uppercase;flex:none}.tab-legend{padding:0 var(--space-4) var(--space-3);font-size:var(--type-small);grid-column:1/-1}.tab-legend summary{font-weight:var(--weight-semi);align-items:center;display:flex}.tab-legend ul{gap:var(--space-1);margin:0 0 var(--space-2);padding-left:var(--space-5);display:grid}.tab-legend li{color:var(--ink-soft)}.rhythm-notation{margin:var(--space-5) 0;padding:var(--space-4);border:var(--rule);background:var(--paper-bright)}.rhythm-notation svg{width:100%;max-height:150px}.rhythm-notation line,.rhythm-notation path{fill:none;stroke:var(--ink);stroke-width:2px}.rhythm-notation circle{fill:var(--ink)}.rhythm-notation text{fill:var(--ink-soft);font-family:var(--mono);font-size:11px}.rhythm-notation figcaption,.rhythm-description,.rhythm-words{color:var(--ink-soft);font-size:var(--type-small)}.rhythm-words{font-family:var(--mono)}.pilot-study{gap:var(--space-4);margin:var(--space-5) 0;padding:var(--space-5);border:var(--rule-ink);background:var(--paper-bright);display:grid}.pilot-study figcaption{gap:var(--space-1);display:grid}.pilot-study figcaption strong{font:var(--font-subhead)}.pilot-study figcaption small,.pilot-study>p{color:var(--ink-soft);font-size:var(--type-small);margin:0}.pilot-bars{gap:var(--space-4);display:grid}.pilot-bar{gap:var(--space-2);display:grid}.pilot-bar>strong{font:var(--font-label);text-transform:uppercase}.pilot-counts{border:var(--rule-ink);background:var(--line-dark);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid}.pilot-counts>div{gap:var(--space-1);min-width:0;padding:var(--space-2) var(--space-1);background:var(--piece-field);text-align:center;display:grid}.pilot-counts>div.is-rest{background:var(--paper-bright)}.pilot-counts>div.is-current{box-shadow:inset 0 0 0 var(--rule-heavy) var(--ink)}.pilot-counts span{color:var(--ink-soft);font:var(--weight-bold) var(--type-subhead) / var(--lh-tight) var(--mono)}.pilot-counts strong{font:var(--weight-semi) var(--type-small) / var(--lh-tight) var(--serif)}.pilot-tab{padding-top:var(--space-2);border-top:var(--rule-ink);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid}.pilot-tab span{font:var(--weight-bold) var(--type-subhead) / var(--lh-tight) var(--mono);text-align:center}.pilot-tab span.is-current{color:var(--piece-accent);text-decoration:underline;text-decoration-thickness:var(--rule-heavy);text-underline-offset:.25em}.pilot-guitar{gap:var(--space-2);padding:var(--space-3) var(--space-4);border:var(--rule-ink);background:var(--paper-bright);display:grid}.pilot-guitar strong{font:var(--font-label);text-transform:uppercase}.pilot-guitar span,.pilot-guitar small{font-size:var(--type-small)}.pilot-guitar small{color:var(--ink-soft)}.pilot-guitar.is-sounding{background:var(--piece-field);box-shadow:inset var(--rule-heavy) 0 0 var(--ink)}.pilot-guitar.is-muted{background:var(--paper);border-style:dashed}.pilot-fretboard{gap:var(--space-1);max-width:22rem;display:grid}.pilot-string-row{grid-template-columns:var(--space-5) var(--space-7) repeat(3, minmax(0, 1fr));min-height:var(--space-5);align-items:center;display:grid}.pilot-string-row>span{font:var(--font-label)}.pilot-string-row b{width:var(--space-5);height:var(--space-5);font:var(--weight-bold) var(--type-meta) / var(--lh-display) var(--mono);border:1px solid #0000;border-radius:50%;place-items:center;display:grid}.pilot-string-row b.target{border-color:var(--rel-tonic)}.pilot-guitar.is-sounding .pilot-string-row b.target{background:var(--rel-tonic);color:var(--rel-tonic-text)}.pilot-guitar.is-muted .pilot-string-row b.target{border-style:dashed}.pilot-string-row i{border-right:2px solid var(--line-dark);background:var(--ink-soft);height:1px;display:block}.pilot-episode{gap:var(--space-5);display:grid}section.pilot-episode:not(.card){width:var(--frame);padding:var(--space-5) 0 var(--space-9);margin:0 auto}section.pilot-episode>.activity-header{margin-bottom:0}.pilot-notice{padding:var(--space-3) var(--space-4);border:var(--rule);border-left:var(--rule-heavy) solid var(--piece-accent);background:var(--paper-bright);color:var(--ink);font-size:var(--type-small);margin:0}.pilot-steps{border:var(--rule-ink);background:var(--line-dark);flex-wrap:wrap;gap:1px;display:flex}.pilot-steps button{min-height:var(--touch-min);padding:var(--space-2) var(--space-4);background:var(--paper-bright);color:var(--ink);font:var(--font-label);text-transform:uppercase;border:0;flex:auto}.pilot-steps button[aria-current]{background:var(--piece-field);box-shadow:inset 0 calc(-1 * var(--rule-heavy)) 0 var(--ink)}.pilot-steps button:disabled{color:var(--muted)}.pilot-layout{align-items:start;gap:var(--grid-gap);grid-template-columns:minmax(0,1.65fr) minmax(16rem,1fr);display:grid}.pilot-main,.pilot-side{gap:var(--space-4);min-width:0;padding:var(--space-5);display:grid}.pilot-main>h2,.pilot-side>h2,.pilot-recording h3{margin:0}.pilot-main>p,.pilot-side>p,.pilot-recording p{font-size:var(--type-text);margin:0}.pilot-controls,.pilot-play-actions,.pilot-outcomes,.pilot-variation{align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.pilot-controls select{width:auto}.pilot-controls .pilot-loop{align-items:center;gap:var(--space-2);min-height:var(--touch-min);display:flex}.pilot-playing{padding:var(--space-2) var(--space-4);border:var(--rule);background:var(--piece-field);color:var(--ink);font:var(--weight-bold) var(--type-meta) / var(--lh-ui) var(--mono);text-transform:uppercase;margin:0}.pilot-check,.pilot-recording,.pilot-return{gap:var(--space-3);padding-top:var(--space-4);border-top:var(--rule);display:grid}.pilot-check label{gap:var(--space-2);font-weight:var(--weight-semi);display:grid}.pilot-check p{margin:0}.pilot-outcomes button{min-height:var(--touch-min);padding:var(--space-2) var(--space-4);border:var(--rule-ink);background:var(--paper-bright);color:var(--ink);font:var(--font-label);text-transform:uppercase}.pilot-outcomes button:hover:not(:disabled){border-color:var(--piece-accent);color:var(--piece-accent)}.pilot-outcomes button:disabled{border-color:var(--line-dark);color:var(--muted)}.pilot-side>button{text-align:left;justify-content:flex-start}.pilot-recording audio{max-width:100%}.pilot-variation p{flex-basis:100%}.pilot-review,.pilot-review-form{gap:var(--space-3);min-width:0;display:grid}.pilot-review>.text-action{justify-self:start}.pilot-review-form{padding:var(--space-4);border:var(--rule);background:var(--paper)}.pilot-review-form p{margin:0}.pilot-review-form label{gap:var(--space-2);color:var(--ink);font-weight:var(--weight-semi);display:grid}.pilot-review-form textarea{min-height:4.5rem}.pilot-review-form small,.pilot-review-history small,.pilot-review-cue small{color:var(--ink-soft)}.pilot-review-history{gap:var(--space-3);padding-top:var(--space-4);border-top:var(--rule);display:grid}.pilot-review-history summary{min-height:var(--touch-min);font-weight:var(--weight-semi);align-items:center;display:flex}.pilot-review-history ol{gap:var(--space-3);padding-left:var(--space-5);margin:0;display:grid}.pilot-review-history li{gap:var(--space-1);overflow-wrap:anywhere;display:grid}.pilot-review-history li span{font-size:var(--type-small)}.pilot-review-cue{gap:var(--space-2);min-width:0;padding:var(--space-3) var(--space-4);border:var(--rule);border-left:var(--rule-heavy) solid var(--piece-accent);background:var(--paper);color:var(--ink);display:grid}.pilot-review-cue p{overflow-wrap:anywhere;margin:0}@media (width<=900px){.activity-grid,.pilot-layout{grid-template-columns:1fr}.activity-check{position:static}}@media (width<=680px){.activity-player{padding-top:var(--space-4)}.activity-header{gap:var(--space-3);padding-bottom:var(--space-4)}.activity-main,.activity-check,.pilot-main,.pilot-side{padding:var(--space-4)}.micro-study,.creative-bridge{grid-template-columns:1fr}.micro-study figcaption{border-right:0;border-bottom:var(--rule)}.pilot-study{padding:var(--space-4)}}.play-page{width:var(--frame)}.play-hero{align-items:end;gap:var(--space-6) var(--space-8);padding:var(--space-6) 0 var(--space-7);border-bottom:var(--rule-ink);grid-template-columns:minmax(0,1fr) 15rem;display:grid}.play-hero-copy{min-width:0}.play-hero h1{margin:var(--space-2) 0 var(--space-4);font-size:var(--type-display)}.play-hero p{max-width:var(--measure);font:var(--font-lede)}.play-hero-actions{align-items:center;gap:var(--space-3) var(--space-5);margin-top:var(--space-5);flex-wrap:wrap;display:flex}.play-hero-actions>span{color:var(--ink-soft);font:var(--weight-regular) var(--type-meta) / var(--lh-ui) var(--mono);text-transform:uppercase}.play-orbit{border:var(--rule-ink);background:var(--paper-bright);display:grid}.play-orbit>*{padding:var(--space-2) var(--space-4);font:var(--weight-bold) var(--type-meta) / var(--lh-ui) var(--mono);text-transform:uppercase}.play-orbit>*+*{border-top:var(--rule)}.play-orbit strong{padding-block:var(--space-3);background:var(--piece-field);font:var(--font-name);text-transform:none}.play-mode-section{gap:var(--grid-gap);display:grid}.ability-badge{flex:none}.play-mode-grid{gap:var(--grid-gap);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.play-mode-card{gap:var(--space-4);min-height:16rem;padding:var(--space-4);border:var(--rule-ink);background:var(--paper-bright);transition:border-color var(--dur) var(--ease);flex-direction:column;display:flex}.play-mode-card.is-ready:hover{border-color:var(--piece-accent)}.play-mode-card small{color:var(--muted);font:var(--weight-regular) var(--type-small) / var(--lh-tight) var(--serif);display:block}.play-mode-card.is-ready small{color:var(--piece-accent);font-weight:var(--weight-semi)}.play-mode-card h3{margin:var(--space-2) 0;font:var(--font-name)}.play-mode-card p{font-size:var(--type-small);margin:0}.play-mode-card button{width:100%;margin-top:auto}.play-mode-card.is-locked{border-style:dashed;border-color:var(--line-dark);background:var(--paper)}.play-promise{background:var(--line-dark);grid-template-columns:repeat(3,minmax(0,1fr))}.play-promise>div{align-content:start;gap:var(--space-2);padding:var(--space-4) var(--space-5);background:var(--paper-bright);display:grid}.play-promise span{color:var(--piece-accent);font:var(--font-label)}.play-promise strong{font:var(--font-item)}.play-promise p{font-size:var(--type-small);margin:0}.play-session{gap:var(--space-4);width:var(--frame);margin:0 auto;display:grid}.play-session-header{align-items:center;gap:var(--space-4);grid-template-columns:1fr auto 1fr;display:grid}.play-session-header>.text-action{justify-self:start}.play-progress{gap:var(--space-2);min-width:16rem;color:var(--ink-soft);font:var(--font-label);text-align:center;text-transform:uppercase;display:grid}.play-progress>div{align-items:end;gap:var(--space-1);grid-template-columns:repeat(8,minmax(0,1fr));display:grid}.play-progress i{height:var(--space-2);border:var(--rule-ink);background:0 0}.play-progress i.is-complete{background:var(--ink)}.play-progress i.is-current{height:var(--space-4);background:var(--piece-accent)}.play-session-context{color:var(--ink-soft);font:var(--font-meta);text-transform:uppercase;justify-self:end}.play-session-layout{align-items:start;gap:var(--grid-gap);grid-template-columns:14rem minmax(0,1fr);display:grid}.play-mode-rail{border:var(--rule-ink);background:var(--paper-bright);display:grid}.play-mode-rail>.eyebrow{padding:var(--space-3) var(--space-4);border-bottom:var(--rule-ink);margin:0}.play-mode-rail button{min-height:var(--touch-min);padding:var(--space-3) var(--space-4);color:var(--ink);text-align:left;background:0 0;border:0;align-items:center;display:flex}.play-mode-rail button+button{border-top:var(--rule)}.play-mode-rail button:hover:not(:disabled){background:var(--paper)}.play-mode-rail button.is-active{background:var(--piece-field);box-shadow:inset var(--rule-heavy) 0 0 var(--ink)}.play-mode-rail button:disabled{color:var(--muted)}.play-mode-rail strong,.play-mode-rail small{display:block}.play-mode-rail strong{font:var(--font-item)}.play-mode-rail small{margin-top:var(--space-1);color:var(--ink-soft);line-height:var(--lh-tight)}.play-mode-rail button:disabled small{color:var(--muted)}.play-stage{--focus-colour:var(--night-text);align-content:start;gap:var(--space-5) var(--space-7);min-width:0;padding:var(--space-7);border:var(--rule-ink);background:var(--piece-dark);color:var(--night-text);grid-template-columns:minmax(0,1fr) minmax(16rem,.8fr);display:grid}.play-stage>*{min-width:0}.play-stage-top{justify-content:space-between;gap:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--night-line);color:var(--night-text-soft);font:var(--font-label);text-transform:uppercase;grid-column:1/-1;display:flex}.play-relationship{align-items:center;gap:var(--space-2);flex-wrap:wrap;grid-column:1/-1;display:flex}.play-relationship>span{align-items:center;gap:var(--space-2);display:flex}.play-relationship i{color:var(--night-text-soft);font:var(--weight-regular) var(--type-small) / var(--lh-display) var(--mono);font-style:normal}.play-relationship strong{min-width:var(--space-9);min-height:var(--space-9);padding:var(--space-2);border:1px solid var(--rel-tonic-night);color:var(--night-text);font:var(--font-name);place-items:center;display:grid}.play-relationship .is-space strong{border-style:dashed;border-color:var(--night-line);color:var(--night-text-soft)}.play-instruction{align-self:center}.play-instruction .eyebrow{color:var(--rel-tonic-night)}.play-instruction h1{max-width:16ch;margin:var(--space-2) 0 var(--space-4);color:var(--night-text);font-size:var(--type-feature)}.play-instruction p{max-width:var(--measure);color:var(--night-text-soft);font:var(--weight-regular) var(--type-body) / var(--lh-prose) var(--serif);margin:0}.play-listen-for{align-self:center;gap:var(--space-2);padding:var(--space-2) 0 var(--space-2) var(--space-5);border-left:var(--rule-heavy) solid var(--rel-tonic-night);display:grid}.play-listen-for span,.play-handholds span{color:var(--night-text-soft);font:var(--font-label);text-transform:uppercase}.play-listen-for strong{color:var(--night-text);font:var(--weight-semi) var(--type-subhead) / var(--lh-ui) var(--serif)}.play-handholds{gap:var(--space-3);grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.play-handholds:empty{display:none}.play-handholds aside{padding:var(--space-3) var(--space-4);border:1px solid var(--night-line)}.play-handholds aside.is-variation{border-color:var(--rel-tonic-night)}.play-handholds p{margin:var(--space-2) 0 0;color:var(--night-text);font-size:var(--type-small)}.play-sound-actions,.play-flow-options{align-items:center;gap:var(--space-2);flex-wrap:wrap;grid-column:1/-1;display:flex}.play-stage .secondary-action,.play-sound-actions>button,.play-flow-options button{min-height:var(--touch-min);padding:var(--space-2) var(--space-4);border:1px solid var(--night-text-soft);color:var(--night-text);font:var(--font-label);text-transform:uppercase;background:0 0}.play-stage .secondary-action:hover,.play-sound-actions>button:hover,.play-flow-options button:hover{border-color:var(--night-text);color:var(--night-text)}.play-sound-actions>.secondary-action{border-color:var(--night-text);background:var(--night-text);color:var(--piece-dark)}.play-sound-actions>.secondary-action:hover{border-color:var(--rel-tonic-night);background:var(--rel-tonic-night);color:var(--piece-dark)}.play-sound-actions>button[aria-pressed=true],.play-flow-options button[aria-pressed=true]{border-color:var(--rel-tonic-night);background:color-mix(in srgb, var(--rel-tonic-night) 22%, transparent);box-shadow:inset 0 calc(-1 * var(--rule-heavy)) 0 var(--rel-tonic-night)}.play-flow-options small{color:var(--night-text-soft);flex-basis:100%}.play-stage .text-action{color:var(--night-text);-webkit-text-decoration-color:var(--night-text-soft);text-decoration-color:var(--night-text-soft);grid-column:1/-1;justify-self:start;padding-inline:0}.play-stage [role=alert]{color:var(--night-text);grid-column:1/-1;margin:0}.play-session-footer{align-items:center;gap:var(--space-4);padding-top:var(--space-4);border-top:var(--rule-ink);grid-template-columns:1fr auto 1fr;display:grid}.play-session-footer>.text-action{justify-self:start}.play-session-footer>span{max-width:var(--measure-narrow);color:var(--ink-soft);font-size:var(--type-small);text-align:center}.play-session-footer .primary-action{justify-self:end}.play-complete{--focus-colour:var(--night-text);justify-items:center;gap:var(--space-4);padding:var(--section-y) var(--space-6);border:var(--rule-ink);background:var(--night);color:var(--night-text);text-align:center;display:grid}.play-complete .eyebrow{color:var(--rel-tonic-night);margin:0}.play-complete h1{max-width:16ch;color:var(--night-text);font-size:var(--type-display);margin:0}.play-complete>p{max-width:var(--measure);color:var(--night-text-soft);font-size:var(--type-body);margin:0}.play-complete-modes,.play-complete-actions{justify-content:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.play-complete-modes span{padding:var(--space-1) var(--space-2);border:1px solid var(--night-line);color:var(--night-text-soft);font:var(--font-label);text-transform:uppercase}.play-complete .primary-action{border-color:var(--night-text);background:var(--night-text);color:var(--night)}.play-complete .primary-action:hover{border-color:var(--rel-tonic-night);background:var(--rel-tonic-night);color:var(--night)}.play-complete .secondary-action{border-color:var(--night-text-soft);color:var(--night-text);background:0 0}.play-complete .text-action{color:var(--night-text);-webkit-text-decoration-color:var(--night-text-soft);text-decoration-color:var(--night-text-soft)}.play-complete aside{justify-content:space-between;align-items:center;gap:var(--space-4);width:min(var(--measure), 100%);margin-top:var(--space-5);padding:var(--space-4);border:1px solid var(--night-line);text-align:left;display:flex}.play-complete aside strong,.play-complete aside span{display:block}.play-complete aside span{margin-top:var(--space-1);color:var(--night-text-soft);font-size:var(--type-small)}.play-complete [role=alert]{color:var(--night-text);margin:0}@media (width<=1180px){.play-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.play-stage{grid-template-columns:1fr}.play-stage>*{grid-column:1}.play-handholds{grid-template-columns:1fr}}@media (width<=900px){.play-hero{grid-template-columns:1fr}.play-orbit{display:none}.play-session-layout{grid-template-columns:1fr}.play-mode-rail{grid-template-columns:repeat(4,minmax(0,1fr))}.play-mode-rail>.eyebrow{grid-column:1/-1}.play-mode-rail button+button{border-top:0;border-left:var(--rule)}.play-mode-rail button.is-active{box-shadow:inset 0 calc(-1 * var(--rule-heavy)) 0 var(--ink)}}@media (width<=680px){.play-hero{padding-top:var(--space-2)}.play-hero h1,.play-complete h1{font-size:var(--type-page)}.play-mode-grid,.play-promise{grid-template-columns:1fr}.play-mode-card{min-height:0}.play-session-header{gap:var(--space-2);grid-template-columns:1fr}.play-progress{min-width:0}.play-session-context{display:none}.play-mode-rail{grid-template-columns:repeat(4,minmax(6rem,1fr));overflow-x:auto}.play-mode-rail small{display:none}.play-stage{padding:var(--space-5) var(--space-4)}.play-relationship{flex-wrap:nowrap;overflow-x:auto}.play-relationship strong{min-width:var(--space-8);min-height:var(--space-8)}.play-instruction h1{font-size:var(--type-heading)}.play-sound-actions>button{flex:40%}.play-session-footer{z-index:50;bottom:calc(var(--mobile-nav-height) + var(--space-2));gap:var(--space-2);padding:var(--space-3);border:var(--rule-ink);background:var(--paper-bright);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);position:sticky}.play-session-footer>span{grid-area:1/1/auto/-1;max-width:none}.play-session-footer .primary-action{width:100%}.play-complete{padding:var(--space-8) var(--space-4)}.play-complete-actions,.play-complete aside{flex-direction:column;align-items:stretch}}.create-shell{align-items:start;gap:var(--grid-gap);width:var(--frame);grid-template-columns:17rem minmax(0,1fr);margin:0 auto;display:grid}.sketch-list{top:var(--space-4);max-height:calc(100vh - var(--space-6));border:var(--rule-ink);background:var(--paper-bright);display:grid;position:sticky;overflow-y:auto}.sketch-list>header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:var(--rule-ink);display:flex}.sketch-list h1{font-size:var(--type-card);margin:0}.sketch-list>button{gap:var(--space-1);width:100%;min-height:var(--touch-min);padding:var(--space-3) var(--space-4);color:var(--ink);text-align:left;background:0 0;border:0;display:grid}.sketch-list>button+button{border-top:var(--rule)}.sketch-list>button:hover{background:var(--paper)}.sketch-list>button.is-active{background:var(--piece-field);box-shadow:inset var(--rule-heavy) 0 0 var(--ink)}.sketch-list>button strong{font:var(--font-item);overflow-wrap:anywhere}.sketch-list>button span,.sketch-list>button small{color:var(--ink-soft);font:var(--weight-regular) var(--type-meta) / var(--lh-ui) var(--mono);text-transform:uppercase}.empty-sketch{padding:var(--space-4)}.empty-sketch p{font-size:var(--type-small);margin:0}.studio-main{min-width:0}.resume-learning{width:100%;min-height:var(--touch-min);margin-bottom:var(--space-4);padding:var(--space-2) var(--space-4);border:var(--rule-ink);border-left-width:var(--rule-heavy);border-left-color:var(--piece-accent);background:var(--paper-bright);color:var(--ink);font:var(--font-label);text-align:left;text-transform:uppercase}.resume-learning:hover{color:var(--piece-accent)}.studio-empty{justify-items:center;gap:var(--space-3);min-height:60vh;padding:var(--space-8) var(--space-5);border:var(--rule-ink);background:var(--paper-bright);text-align:center;place-content:center;display:grid}.studio-empty h2{max-width:18ch;font:var(--font-name-large);margin:0}.studio-empty p{max-width:var(--measure)}.studio-stack{gap:var(--space-5);display:grid}.studio-header,.studio-intention,.chord-track>header,.transformation-panel>header,.take-panel>header{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.studio-header{padding-bottom:var(--space-5);border-bottom:var(--rule-ink);align-items:flex-end}.studio-header>div:first-child{flex:1;min-width:0}.title-input:not([type=checkbox]){width:100%;padding:var(--space-1) 0;border:0;border-bottom:var(--rule);color:var(--ink);font:var(--weight-regular) var(--type-feature) / var(--lh-tight) var(--display);text-overflow:ellipsis;background:0 0}.title-input:hover{border-bottom-color:var(--ink)}.studio-actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.workflow-details{border:var(--rule-ink);background:var(--paper-bright)}.workflow-details summary{padding:0 var(--space-4);color:var(--ink);font:var(--font-label);text-transform:uppercase;align-items:center;display:flex}.workflow{border-top:var(--rule-ink);background:var(--line-dark);grid-template-columns:repeat(8,minmax(0,1fr));gap:1px;display:grid}.workflow button{min-height:var(--touch-min);padding:var(--space-2);background:var(--paper-bright);color:var(--ink-soft);font:var(--font-label);text-transform:uppercase;border:0}.workflow button:hover{color:var(--piece-accent)}.workflow button.is-active{background:var(--ink);color:var(--paper)}.studio-intention,.chord-track,.rhythm-track,.notes-panel,.take-panel,.transformation-panel,.sketch-origin,.sketch-melody{min-width:0;padding:var(--space-5)}.studio-intention{align-items:flex-start}.studio-intention>label{gap:var(--space-2);font:var(--font-item);flex:1;display:grid}.studio-settings{gap:var(--space-3);grid-template-columns:repeat(3,minmax(6rem,1fr));width:min(32rem,46%);display:grid}.studio-grid{gap:var(--grid-gap);grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);display:grid}.sketch-origin,.sketch-melody{gap:var(--space-3);display:grid}.sketch-origin p,.sketch-melody p{max-width:var(--measure);margin:0}.sketch-origin .secondary-action{justify-self:start}.sketch-melody-events{gap:var(--space-2);flex-wrap:wrap;display:flex}.sketch-melody-events>div{gap:var(--space-2);min-width:8rem;padding:var(--space-3);border:var(--rule);background:var(--paper);display:grid}.sketch-melody-events>div>strong{font:var(--font-label);text-transform:uppercase}.chord-track>header{margin-bottom:var(--space-4);flex-wrap:wrap}.chord-track>header>div{margin-right:auto}.chord-track>header h2{margin:0}.chord-track select{width:auto;max-width:100%}.chord-events{border:var(--rule-ink);background:var(--line-dark);grid-auto-columns:minmax(10rem,1fr);grid-auto-flow:column;gap:1px;display:grid;overflow-x:auto}.chord-events:empty{display:none}.chord-events article{align-content:start;gap:var(--space-2);padding:var(--space-3);background:var(--paper-bright);grid-template-columns:minmax(0,1fr) auto;display:grid}.chord-events article>small{color:var(--ink-soft);font:var(--font-label)}.chord-events article>strong{font:var(--font-name);grid-column:1/-1}.chord-events article>span{color:var(--ink-soft);font:var(--weight-regular) var(--type-small) / var(--lh-tight) var(--mono);grid-column:1/-1}.chord-events article label{align-items:center;gap:var(--space-2);color:var(--ink-soft);font:var(--font-label);text-transform:uppercase;display:flex}.chord-events article input:not([type=checkbox]){width:4.5rem;padding:var(--space-2)}.chord-events article>button{min-width:var(--touch-min);min-height:var(--touch-min);margin:calc(-1 * var(--space-2));color:var(--danger);font:var(--weight-bold) var(--type-subhead) / var(--lh-display) var(--mono);background:0 0;border:0;grid-area:1/2}.rhythm-track,.notes-panel{align-content:start;gap:var(--space-3);display:grid}.rhythm-track label,.notes-panel label{gap:var(--space-2);font:var(--font-item);display:grid}.transformation-panel>header{margin-bottom:var(--space-4)}.transformation-grid{margin-bottom:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr))}.transformation-grid button{align-content:start;gap:var(--space-2);min-height:6rem;padding:var(--space-4);background:var(--paper-bright);color:var(--ink);text-align:left;border:0;display:grid}.transformation-grid button:hover:not([aria-pressed=true]){background:var(--paper)}.transformation-grid strong{font:var(--font-item)}.transformation-grid span{color:var(--ink-soft);font:var(--font-label);text-transform:uppercase}.experiment-preview{gap:var(--space-3);margin:0 0 var(--space-4);padding:var(--space-4);border:var(--rule-ink);border-left-width:var(--rule-heavy);border-left-color:var(--piece-accent);background:var(--paper);display:grid}.experiment-preview h3,.experiment-preview p{margin:0}.experiment-comparison{border:var(--rule);background:var(--line-dark);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.experiment-comparison>div{min-width:0;padding:var(--space-3);background:var(--paper-bright);overflow-wrap:anywhere}.experiment-comparison strong{font:var(--font-label);text-transform:uppercase}.take-panel>p{font-size:var(--type-small)}.take-player{gap:var(--space-2);margin:var(--space-2) 0;padding:var(--space-3);border:var(--rule);background:var(--paper);display:grid}.take-player>div:first-child{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.take-player>div:first-child span{color:var(--piece-accent);font:var(--font-meta);text-transform:uppercase}.take-player audio{width:100%;height:var(--space-7)}.take-sharing{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.take-sharing small,.pending-take small{color:var(--ink-soft);line-height:var(--lh-ui)}.pending-take{gap:var(--space-3);margin:var(--space-3) 0;padding:var(--space-4);border:var(--rule-ink);border-left-width:var(--rule-heavy);border-left-color:var(--caution-rule);background:var(--paper);display:grid}.pending-take audio{width:100%}.revision-count{justify-items:center;gap:var(--space-1);margin-top:var(--space-4);padding-top:var(--space-4);border-top:var(--rule);display:grid}.revision-count strong{font:var(--font-name-large)}.revision-count span{color:var(--ink-soft);font:var(--font-label);text-transform:uppercase}.studio-footer{justify-content:space-between;gap:var(--space-3);padding-top:var(--space-5);border-top:var(--rule-ink);display:flex}.create-guide{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-4) var(--space-5);border:var(--rule-ink);border-left-width:var(--rule-heavy);border-left-color:var(--piece-accent);background:var(--paper-bright);display:flex}.create-guide strong{font:var(--font-item)}.create-guide ol{gap:var(--space-1);margin:var(--space-2) 0 0;padding-left:var(--space-5);color:var(--ink-soft);display:grid}@media (width<=1180px){.transformation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.workflow{grid-template-columns:repeat(4,minmax(0,1fr))}.studio-intention{flex-direction:column;align-items:stretch}.studio-settings{width:100%}}@media (width<=900px){.create-shell,.studio-grid{grid-template-columns:1fr}.sketch-list{max-height:none;position:static}}@media (width<=680px){.studio-header{flex-direction:column;align-items:stretch}.studio-actions{justify-content:flex-start}.title-input:not([type=checkbox]){font-size:var(--type-heading)}.studio-settings,.transformation-grid,.experiment-comparison{grid-template-columns:1fr}.studio-intention,.chord-track,.rhythm-track,.notes-panel,.take-panel,.transformation-panel,.sketch-origin,.sketch-melody{padding:var(--space-4)}.studio-empty{min-height:0;padding:var(--space-7) var(--space-4)}.create-guide{flex-direction:column}}@media (width<=420px){.workflow{grid-template-columns:repeat(2,minmax(0,1fr))}.studio-footer{flex-direction:column-reverse;align-items:stretch}}.rhythm-track>.eyebrow,.notes-panel>.eyebrow,.sketch-origin>.eyebrow,.sketch-melody>.eyebrow,.rhythm-track>h2,.notes-panel>h2,.sketch-origin>h2,.sketch-melody>h2{margin:0}.context-controls{align-items:flex-end;gap:var(--space-3);flex-wrap:wrap;display:flex}.context-controls label:not(.toggle){min-width:8rem}.context-controls .toggle{padding:0 var(--space-3);border:var(--rule-ink);background:var(--paper-bright)}.relationship-ribbon,.pitch-analysis,.chord-analysis,.fretboard-explorer,.glossary-card{min-width:0;padding:var(--space-5)}.relationship-ribbon>div{margin-top:var(--space-3);grid-template-columns:repeat(7,minmax(0,1fr))}.relationship-ribbon button{gap:var(--space-1);min-height:var(--touch-min);padding:var(--space-3);background:var(--paper-bright);color:var(--ink);text-align:left;border:0;display:grid}.relationship-ribbon button:hover:not(.is-active){background:var(--paper)}.relationship-ribbon small{color:var(--piece-accent);font:var(--font-label)}.relationship-ribbon strong{font:var(--font-name)}.relationship-ribbon span{color:var(--ink-soft);font-size:var(--type-small);line-height:var(--lh-tight)}.explore-grid{gap:var(--grid-gap);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.pitch-analysis h2,.chord-analysis h2{font:var(--font-name-large)}.chromatic-label,.shape-assessment{gap:var(--space-1);margin:var(--space-4) 0;padding:var(--space-3) var(--space-4);border:var(--rule);border-left:var(--rule-heavy) solid var(--rel-target);background:var(--paper);display:grid}.chromatic-label strong,.shape-assessment strong{font:var(--font-item)}.chromatic-label span,.shape-assessment span,.shape-assessment small{color:var(--ink-soft);font-size:var(--type-small)}.shape-assessment span{font-family:var(--mono)}.chromatic-label.relation-diatonic{border-left-color:var(--rel-tonic);background:var(--piece-field)}.chord-picker{margin-bottom:var(--space-5);grid-template-columns:repeat(7,minmax(0,1fr))}.chord-picker button{gap:var(--space-1);min-height:var(--touch-min);padding:var(--space-2) var(--space-1);background:var(--paper-bright);color:var(--ink);font:var(--font-subhead);border:0;place-content:center;display:grid}.chord-picker button:hover:not(.is-active){background:var(--paper)}.chord-picker button.is-active{background:var(--ink);color:var(--paper)}.chord-picker small{font:var(--font-meta)}.fretboard-explorer>header{margin-bottom:var(--space-4)}.fretboard-explorer{overflow-x:auto}.fretboard-scroll{overscroll-behavior-inline:contain;scrollbar-color:var(--line-dark) transparent;max-width:100%;overflow-x:auto}.fretboard-key{z-index:3;gap:var(--space-2) var(--space-5);width:fit-content;min-width:100%;margin-bottom:var(--space-3);color:var(--ink-soft);font-size:var(--type-small);flex-wrap:wrap;display:flex;position:sticky;left:0}.fretboard-key span{align-items:center;gap:var(--space-2);display:flex}.fretboard-key b{color:var(--ink);font:var(--font-label);text-transform:uppercase}.fretboard{border:var(--rule-ink);background:var(--paper-bright);width:max-content;min-width:100%;display:grid}.fretboard-row{grid-template-columns:3rem repeat(var(--fret-count), minmax(4.25rem, 1fr));display:grid}.fretboard-header{border-bottom:var(--rule-ink)}.fretboard-header span{min-height:var(--space-7);color:var(--ink-soft);font:var(--font-label);place-items:center;display:grid;position:relative}.fretboard-header .has-marker:after{bottom:var(--space-1);width:var(--space-2);height:var(--space-2);background:var(--piece-accent);content:"";position:absolute}.string-label{z-index:2;justify-content:center;align-items:center;gap:var(--space-1);min-height:var(--touch-min);border-right:var(--rule-ink);background:var(--paper-bright);color:var(--ink-soft);font:var(--font-meta);display:flex;position:sticky;left:0}.string-label b{color:var(--ink);font-weight:var(--weight-bold)}.fret{min-width:4.25rem;min-height:var(--touch-min);padding:var(--space-1) 0;border:0;border-right:var(--rule);color:var(--ink);background:0 0;place-items:center;display:grid;position:relative}.fret[data-fret="0"]{border-right:var(--rule-heavy) solid var(--ink);background:var(--paper)}.fret:hover{background:var(--paper)}.fret:before{background:var(--ink-soft);content:"";height:1px;position:absolute;left:0;right:0}.string-row:nth-child(n+5) .fret:before{height:2px}.fret>span{z-index:1;min-width:var(--space-7);min-height:var(--space-7);padding:var(--space-1);border:1px solid var(--ink);background:var(--rel-scale);color:var(--rel-scale-text);text-align:center;place-content:center;gap:1px;display:grid;position:relative}.fret small{font:var(--weight-semi) var(--type-meta) / var(--lh-tight) var(--serif);white-space:nowrap}.fret.is-chord>span,.fret.is-shape>span{border-color:var(--rel-chord);background:var(--rel-chord);color:var(--rel-chord-text)}.fret.is-tonic>span{border-color:var(--rel-tonic);background:var(--rel-tonic);color:var(--rel-tonic-text)}.fret.is-selected-pitch>span,.fret.is-selected-position>span,.fret.is-interval-root>span{border-color:var(--rel-select);background:var(--rel-select);color:var(--rel-select-text);box-shadow:0 0 0 2px var(--paper-bright), 0 0 0 3px var(--ink)}.fret.is-interval-target>span{border-color:var(--ink);background:var(--rel-target);color:var(--rel-target-text);border-style:dashed}.fret:not(.is-visible)>span{display:none}.fret:focus-visible{z-index:2;outline:var(--focus-width) solid var(--focus-colour);outline-offset:calc(-1 * var(--focus-width))}.fretboard-keyboard-help{margin:0 0 var(--space-3);color:var(--ink);font-size:var(--type-small)}.fretboard-scroll:not(:has(:focus-visible)) .fretboard-keyboard-help{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.glossary-card>header{margin-bottom:var(--space-4)}.glossary-list{border-top:var(--rule-ink);margin:0;display:grid}.glossary-list div{gap:var(--space-2) var(--space-5);padding:var(--space-3) 0;border-bottom:var(--rule);grid-template-columns:14rem minmax(0,1fr);display:grid}.glossary-list dt{font:var(--font-item)}.glossary-list dd{max-width:var(--measure);color:var(--ink-soft);line-height:var(--lh-ui);margin:0}.pilot-context{gap:var(--space-3);padding:var(--space-5);display:grid}.pilot-context>p,.pilot-third-comparison p{max-width:var(--measure)}.pilot-context details{border:var(--rule);background:var(--paper)}.pilot-context summary{padding:0 var(--space-4);font-weight:var(--weight-semi);align-items:center;display:flex}.pilot-context details>:not(summary){margin:0 var(--space-4) var(--space-3)}.pilot-third-comparison{padding:var(--space-3) var(--space-4);border-left:var(--rule-heavy) solid var(--rel-tonic);background:var(--piece-field)}@media (width<=900px){.explore-grid{grid-template-columns:1fr}}@media (width<=680px){.relationship-ribbon>div{grid-template-columns:repeat(4,minmax(0,1fr))}.relationship-ribbon button:last-child{grid-column:span 2}.context-controls{width:100%}.context-controls label:not(.toggle){flex:1;min-width:0}.relationship-ribbon,.pitch-analysis,.chord-analysis,.fretboard-explorer,.glossary-card,.pilot-context{padding:var(--space-4)}.glossary-list div{grid-template-columns:1fr}}@media (width<=420px){.relationship-ribbon>div{grid-template-columns:repeat(2,minmax(0,1fr))}.chord-picker{grid-template-columns:repeat(4,minmax(0,1fr))}.chord-picker button:last-child{grid-column:span 2}}.settings-backdrop{z-index:150;padding:var(--space-4);background:var(--scrim);place-items:center;display:grid;position:fixed;inset:0}.app-dialog.settings-backdrop{flex-direction:column;justify-content:safe center;align-items:center;display:flex;overflow-y:auto}.app-dialog.settings-backdrop:not([open]){display:none}.app-dialog.settings-backdrop>.settings-panel{flex:none}.settings-backdrop .dialog-notices{width:min(calc(var(--measure) + 2 * var(--space-6)), 100%);margin-bottom:var(--space-3);padding:0}.settings-panel{width:min(calc(var(--measure) + 2 * var(--space-6)), 100%);max-height:calc(100vh - var(--space-6));padding:var(--space-6);border:var(--rule-ink);background:var(--paper-bright);overflow-y:auto}.settings-panel>header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:var(--rule-ink);display:flex}.settings-panel>header span{color:var(--ink-soft);font:var(--font-label);text-transform:uppercase}.settings-panel>header h2{margin:var(--space-2) 0 0;font:var(--font-name)}.sync-panel,.install-panel{justify-content:space-between;align-items:center;gap:var(--space-4);margin-top:var(--space-4);padding:var(--space-4);border:var(--rule-ink);border-left-width:var(--rule-heavy);background:var(--paper);display:flex}.sync-panel h3,.install-panel h3{margin-bottom:var(--space-1);font-size:var(--type-text)}.sync-panel p,.install-panel p{font-size:var(--type-small);margin-bottom:0}.sync-synced{border-left-color:var(--rel-tonic)}.sync-offline{border-left-color:var(--caution-rule)}.sync-error{border-left-color:var(--danger)}.configuration-note,.install-panel>span{max-width:16rem;color:var(--ink-soft);font-size:var(--type-small);line-height:var(--lh-ui)}.configuration-note code{color:var(--ink)}.settings-grid{gap:var(--space-4);margin:var(--space-5) 0;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.settings-grid .check-line{font:var(--weight-regular) var(--type-text) / var(--lh-tight) var(--serif);text-transform:none;grid-column:1/-1;display:flex}.data-actions{gap:var(--space-2);padding-top:var(--space-4);border-top:var(--rule-ink);flex-wrap:wrap;display:flex}.privacy-message{margin:var(--space-4) 0 0;font-size:var(--type-small)}.about-app{margin-top:var(--space-4);border:var(--rule);background:var(--paper);color:var(--ink);font-size:var(--type-small)}.about-app summary{padding:0 var(--space-4);font-weight:var(--weight-semi);align-items:center;display:flex}.about-app dl{gap:var(--space-1);padding:0 var(--space-4) var(--space-3);margin:0;display:grid}.about-app dl>div{gap:var(--space-3);grid-template-columns:minmax(7rem,auto) minmax(0,1fr);display:grid}.about-app dt{color:var(--ink-soft);font:var(--weight-bold) var(--type-meta) / var(--lh-ui) var(--mono);text-transform:uppercase}.about-app dd{font-family:var(--mono);overflow-wrap:anywhere;margin:0}.offline-banner,.restore-hold,.activity-draft-notice{border-left-color:var(--caution-rule)}.save-failure,.workspace-recovery{border-left-color:var(--danger)}.update-notice,.restore-preview{border-left-color:var(--piece-accent)}.save-failure,.workspace-recovery,.restore-hold,.update-notice,.restore-preview{gap:var(--space-3);display:grid}.save-failure-copy{gap:var(--space-2);display:grid}.save-failure strong,.workspace-recovery strong,.restore-hold strong,.update-notice strong,.offline-banner strong{color:var(--ink);font:var(--font-item)}.save-failure p,.workspace-recovery p,.restore-hold p,.update-notice p,.restore-preview p{max-width:var(--measure);color:var(--ink);font-size:var(--type-small);margin:0}.save-failure-detail{color:var(--danger)}.save-failure small,.workspace-recovery small{color:var(--ink-soft)}.save-failure-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.restore-preview h3{margin:0 0 var(--space-2);font-size:var(--type-text)}.diagnostic{min-height:100vh;padding-bottom:var(--space-9);background:var(--paper);flex-direction:column;align-items:center;display:flex}.diagnostic-mark{justify-content:space-between;align-items:center;gap:var(--space-4);width:100%;min-height:var(--header-height);margin-bottom:var(--space-7);padding:0 calc((100vw - var(--frame)) / 2);border-bottom:var(--rule);display:flex}.diagnostic-mark>span:not(.wordmark){color:var(--ink-soft);font:var(--font-label);text-transform:uppercase}.diagnostic-notices{gap:var(--space-2);width:var(--frame);margin-bottom:var(--space-4);display:grid}.diagnostic-notices>section{width:100%;margin:0}.diagnostic-card{width:var(--frame)}.diagnostic-card section>p{max-width:var(--measure);font:var(--font-lede)}.diagnostic-card section>h1{margin-top:var(--space-2)}.diagnostic-promise{margin-top:var(--space-6);border:var(--rule-ink);background:var(--paper-bright);flex-wrap:wrap;width:fit-content;max-width:100%;display:flex}.diagnostic-promise span{padding:var(--space-3) var(--space-4);color:var(--ink);font:var(--font-label);text-transform:uppercase}.diagnostic-promise span+span{border-left:var(--rule)}.diagnostic-soundcheck,.diagnostic-sync{justify-content:space-between;align-items:center;gap:var(--space-4);max-width:48rem;margin-top:var(--space-4);padding:var(--space-4);border:var(--rule-ink);background:var(--paper-bright);display:flex}.diagnostic-soundcheck strong{font:var(--font-item);display:block}.diagnostic-soundcheck span,.diagnostic-sync span,.diagnostic-sync strong{color:var(--ink-soft);font-size:var(--type-small)}.diagnostic-sync strong{color:var(--ink)}.diagnostic-card small[role]{margin-top:var(--space-2);color:var(--ink-soft);display:block}.diagnostic-choices{margin-top:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr))}.diagnostic-choices.three{grid-template-columns:repeat(3,minmax(0,1fr))}.diagnostic-choices button{align-content:start;gap:var(--space-2);min-height:8rem;padding:var(--space-5);background:var(--paper-bright);color:var(--ink);text-align:left;transition:background-color var(--dur) var(--ease);border:0;display:grid}.diagnostic-choices button:hover:not(.is-active,:disabled){background:var(--paper)}.diagnostic-choices strong{font:var(--font-name)}.diagnostic-choices span{color:var(--ink-soft);font-size:var(--type-small);line-height:var(--lh-ui)}.diagnostic-card footer{justify-content:flex-end;align-items:center;gap:var(--space-3);margin-top:var(--space-8);padding-top:var(--space-4);border-top:var(--rule-ink);display:flex}.diagnostic-card footer>div{gap:var(--space-1);margin-right:auto;display:flex}.diagnostic-card footer i{width:var(--space-7);height:var(--space-2);border:var(--rule-ink)}.diagnostic-card footer i.is-active{background:var(--ink)}@media (width<=680px){.settings-backdrop{padding:var(--space-2)}.settings-panel{padding:var(--space-4)}.sync-panel,.install-panel,.diagnostic-soundcheck,.diagnostic-sync{flex-direction:column;align-items:stretch}.sync-panel button,.install-panel button{width:100%}.configuration-note,.install-panel>span{max-width:none}.settings-grid,.diagnostic-choices,.diagnostic-choices.three{grid-template-columns:1fr}.diagnostic-mark{margin-bottom:var(--space-5)}.diagnostic-choices button{min-height:0;padding:var(--space-4)}.diagnostic-promise{flex-direction:column;width:100%}.diagnostic-promise span+span{border-top:var(--rule);border-left:0}}@media (width<=420px){.diagnostic-card footer{flex-wrap:wrap}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}:root[data-motion=reduced] *,:root[data-motion=reduced] :before,:root[data-motion=reduced] :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
