.cw-button{color:#fff;cursor:pointer;font:inherit;background:#1f6f5b;border:1px solid #1f6f5b;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;min-height:2.75rem;padding:.7rem 1rem;font-weight:700;display:inline-flex}.cw-button-icon{flex:none;width:1rem;height:1rem}.cw-button:disabled{cursor:not-allowed;opacity:.55}.cw-button-secondary{color:#1f6f5b;background:#fff}.cw-button-danger{color:#fff;background:#a23f33;border-color:#a23f33}.cw-field{gap:.35rem;display:grid}.cw-label{color:#24342f;font-size:.9rem;font-weight:700}.cw-input{color:#18231f;font:inherit;border:1px solid #b9c7c1;border-radius:8px;min-height:2.65rem;padding:.65rem .75rem}.cw-textarea{color:#18231f;font:inherit;resize:vertical;border:1px solid #b9c7c1;border-radius:8px;min-height:5rem;padding:.65rem .75rem}select.cw-input{background:#fff}.cw-transcription-panel{contain:inline-size;gap:.85rem;width:100%;min-width:0;max-width:20rem;display:grid}.cw-transcription-heading{grid-template-columns:minmax(0,1fr);align-items:center;gap:.65rem;display:grid}.cw-transcription-actions{grid-template-columns:1fr;gap:.5rem;display:grid}.cw-transcription-actions .cw-button{width:100%}.cw-transcription-heading p,.cw-transcription-replace-warning{color:#56645f;margin:.2rem 0 0;font-size:.82rem}.cw-transcription-measure-review{align-items:flex-start;gap:.55rem;font-size:.875rem;line-height:1.45;display:flex}.cw-transcription-measure-review input{margin-top:.2rem}.cw-transcription-tier{color:#24584e;background:#e8f0ec;border-radius:999px;flex:none;justify-self:start;padding:.3rem .5rem;font-size:.72rem;font-weight:800}.cw-transcription-notice{color:#31594f;background:#f1f6f3;border-radius:8px;align-items:center;gap:.5rem;padding:.65rem;font-size:.84rem;display:flex}.cw-transcription-notice svg,.cw-transcription-warnings svg{flex:none;width:1rem;height:1rem}.cw-transcription-error{color:#8f3329;background:#fff0ed}.cw-transcription-spinner{animation:1s linear infinite cw-transcription-spin}.cw-transcription-review{gap:.75rem;min-width:0;display:grid}.cw-transcription-review figure,.cw-transcription-review label{gap:.35rem;min-width:0;margin:0;display:grid}.cw-transcription-review figcaption,.cw-transcription-review label>span{color:#24342f;font-size:.78rem;font-weight:800}.cw-transcription-review img{object-fit:contain;background:#fff;border:1px solid #d8e0dc;border-radius:8px;width:100%;max-height:13rem}.cw-transcription-review textarea{resize:vertical;border:1px solid #b9c7c1;border-radius:8px;width:100%;min-width:0;padding:.65rem;font:.82rem/1.45 ui-monospace,SFMono-Regular,Menlo,monospace}.cw-transcription-warnings{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.cw-transcription-warnings li{color:#795b19;align-items:flex-start;gap:.4rem;font-size:.8rem;display:flex}@keyframes cw-transcription-spin{to{transform:rotate(360deg)}}@media (max-width:1180px){.cw-transcription-panel{max-width:none}}.cw-piece-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.cw-piece-card{background:#fff;border:1px solid #d8e0dc;border-radius:8px;gap:.35rem;padding:.85rem;display:grid;overflow:hidden}.cw-piece-card:has(.cw-piece-select-button){padding:0}.cw-piece-select-button{appearance:none;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;gap:.35rem;width:100%;padding:.85rem;display:grid}.cw-piece-select-button:hover,.cw-piece-select-button:focus-visible{background:#f4f8f5;outline:none}.cw-piece-select-button[aria-current=true]{background:#edf5f0;box-shadow:inset 3px 0 #1f6f5b}.cw-piece-title{color:#18231f;margin:0;font-size:1rem;font-weight:800}.cw-piece-meta{color:#56645f;margin:0;font-size:.92rem}.cw-piece-tags{flex-wrap:wrap;gap:.3rem;margin-top:.1rem;display:flex}.cw-piece-tag{background:var(--cw-tag-bg,#e8f0ec);border:1px solid var(--cw-tag-border,#c8d8d0);color:var(--cw-tag-text,#24584e);border-radius:999px;padding:.25rem .45rem;font-size:.72rem;font-weight:850;line-height:1}.cw-piece-tag[data-tone=sage]{--cw-tag-bg:#e5f3ed;--cw-tag-border:#b5d9ca;--cw-tag-text:#17634f}.cw-piece-tag[data-tone=sky]{--cw-tag-bg:#e5f0fb;--cw-tag-border:#b9d4f2;--cw-tag-text:#1f5f8f}.cw-piece-tag[data-tone=coral]{--cw-tag-bg:#fde9e2;--cw-tag-border:#f2b8a4;--cw-tag-text:#974829}.cw-piece-tag[data-tone=amber]{--cw-tag-bg:#fff1cf;--cw-tag-border:#f0c96f;--cw-tag-text:#745612}.cw-piece-tag[data-tone=violet]{--cw-tag-bg:#f0eafe;--cw-tag-border:#d1bdf8;--cw-tag-text:#6840a8}.cw-piece-tag[data-tone=rose]{--cw-tag-bg:#fae7ef;--cw-tag-border:#edb7ca;--cw-tag-text:#8b3653}.cw-piece-tag[data-tone=teal]{--cw-tag-bg:#dff4f4;--cw-tag-border:#addada;--cw-tag-text:#146c70}.cw-piece-tag[data-tone=indigo]{--cw-tag-bg:#e8ecff;--cw-tag-border:#bdc8fb;--cw-tag-text:#4859a8}.cw-piece-tag[data-tone=olive]{--cw-tag-bg:#eef2d8;--cw-tag-border:#d2dca0;--cw-tag-text:#59691f}.cw-piece-tag[data-tone=clay]{--cw-tag-bg:#f5eadf;--cw-tag-border:#dfc3ab;--cw-tag-text:#7a4f2d}.cw-piece-tag[data-tone=mint]{--cw-tag-bg:#ddf3e4;--cw-tag-border:#abd9ba;--cw-tag-text:#28633c}.cw-piece-tag[data-tone=plum]{--cw-tag-bg:#f2e7f3;--cw-tag-border:#dcb9df;--cw-tag-text:#75417d}.cw-chunk-tree{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.cw-chunk-tree .cw-chunk-tree{border-left:2px solid #d8e0dc;margin-left:.75rem;padding-left:.9rem}.cw-chunk-item{gap:.55rem;display:grid}.cw-chunk-row{background:#fff;border:1px solid #d8e0dc;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.65rem;min-height:3rem;padding:.55rem .65rem;display:grid}.cw-chunk-row-selectable{grid-template-columns:auto auto minmax(0,1fr) auto}.cw-chunk-row-active{background:#eef7f4;border-color:#1f5f55;box-shadow:0 0 0 2px #1f5f551f}.cw-chunk-select{place-items:center;display:grid}.cw-chunk-select input{accent-color:#1f5f55;width:1rem;height:1rem}.cw-chunk-type{box-sizing:border-box;color:#fff;text-align:center;border-radius:999px;place-items:center;width:5.35rem;min-width:0;height:1.45rem;padding:.25rem .45rem;font-size:.72rem;font-weight:800;line-height:1;display:inline-grid}.cw-chunk-name{color:#18231f;overflow-wrap:anywhere;font-weight:800}.cw-chunk-name-button{appearance:none;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;border-radius:6px;padding:.2rem .1rem}.cw-chunk-name-button:hover,.cw-chunk-name-button:focus-visible{color:#1f5f55;outline-offset:2px;outline:2px solid #1f5f5529}.cw-chunk-action{color:#1f6f5b;cursor:pointer;font:inherit;background:#eef5f2;border:1px solid #c9d9d3;border-radius:8px;justify-content:center;align-items:center;min-width:2rem;min-height:2rem;padding:.3rem .55rem;font-size:.85rem;font-weight:800;display:inline-flex}.cw-practice-panel{background:#fffffb;border:1px solid #d2ddd6;border-radius:8px;gap:.9rem;padding:.9rem;display:grid;box-shadow:0 16px 32px #18231f14;container-type:inline-size}.cw-practice-header{color:#fff;background:#18231f;border-radius:8px;grid-template-columns:minmax(12rem,1fr) minmax(36.5rem,1.2fr);align-items:center;gap:1rem;min-height:7rem;padding:.85rem;display:grid}.cw-practice-title{color:#fff;overflow-wrap:anywhere;margin:.2rem 0;font-size:1.35rem;line-height:1.1}.cw-practice-header .cw-piece-meta{color:#cbd8d1}.cw-practice-state{color:#9fc6b8;letter-spacing:0;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:900}.cw-timer{color:#18231f;font-variant-numeric:tabular-nums;text-align:center;background:#fffffb;border-radius:8px;align-items:center;min-width:0;font-size:clamp(2rem,3vw,4.1rem);font-weight:900;line-height:1;display:grid;overflow:hidden}.cw-timer-cluster{grid-template-columns:10rem 6.25rem 5.7rem minmax(12.5rem,1fr);grid-template-areas:"bpm modes play timer";align-items:stretch;gap:.35rem;min-width:0;display:grid}.cw-practice-mode-grid{box-sizing:border-box;background:#fffffb;border-radius:8px;grid-area:modes;grid-template-columns:repeat(3,1fr);align-content:center;gap:.2rem;width:6.25rem;min-width:0;padding:.35rem;display:grid}.cw-practice-mode-button{aspect-ratio:1;color:#397465;cursor:pointer;background:#edf3ef;border:1px solid #d2ddd6;border-radius:5px;justify-content:center;align-items:center;min-height:1.7rem;padding:.15rem;display:grid}.cw-practice-mode-button svg{width:1rem;height:1rem}.cw-practice-mode-button[aria-pressed=true]{color:#fff;background:#397465;border-color:#397465}.cw-practice-mode-button:disabled{cursor:default;opacity:.65}.cw-bpm-control{color:#18231f;background:#fffffb;border-radius:8px;grid-area:bpm;min-width:0;display:grid;overflow:hidden}.cw-bpm-display{place-items:center;gap:.15rem;min-height:5.7rem;padding:.55rem .4rem;display:grid}.cw-bpm-display>span{color:#397465;letter-spacing:.04em;font-size:.72rem;font-weight:850}.cw-bpm-display input{appearance:textfield;color:#18231f;font:inherit;font-variant-numeric:tabular-nums;outline-offset:.15rem;text-align:center;background:0 0;border:0;width:100%;min-width:0;padding:0;font-size:clamp(2rem,3vw,4.1rem);font-weight:900;line-height:1}.cw-bpm-display input::-webkit-inner-spin-button{appearance:none;margin:0}.cw-bpm-display input::-webkit-outer-spin-button{appearance:none;margin:0}.cw-timer-display{place-items:center;min-height:5.7rem;padding:.8rem .2rem;display:grid}.cw-timer-input{color:#18231f;font:inherit;font-variant-numeric:tabular-nums;outline-offset:.15rem;text-align:center;background:0 0;border:0;width:100%;padding:0;font-size:.9em}.cw-timer-metronome{color:#24594d;cursor:pointer;font:inherit;text-align:left;background:#edf3ef;border:0;border-top:1px solid #d2ddd6;grid-template-columns:auto 1fr;align-items:center;gap:.45rem;min-height:2.35rem;padding:.45rem .65rem;font-size:.78rem;font-weight:850;display:grid}.cw-timer-metronome[aria-pressed=true]{background:#dceee7}.cw-timer-metronome:disabled{cursor:default;opacity:.65}.cw-timer-metronome-state{color:#397465}.cw-timer-control-button{grid-area:play;width:5.7rem;min-height:5.7rem;padding:0}.cw-timer-control-icon{width:1.85rem;height:1.85rem}.cw-timer{grid-area:timer}@container (max-width:44rem){.cw-practice-header{grid-template-columns:1fr}.cw-timer-cluster{grid-template-columns:10rem 6.25rem 5.7rem minmax(12.5rem,1fr)}}@container (max-width:38rem){.cw-timer-cluster{grid-template-columns:minmax(7.5rem,10rem) minmax(0,1fr);grid-template-areas:"bpm modes""play timer"}}.cw-rep-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;display:grid}.cw-rep-metric{background:#f5f8f6;border:1px solid #d2ddd6;border-radius:8px;gap:.2rem;min-height:4.5rem;padding:.65rem;display:grid}.cw-rep-value{color:#18231f;font-size:1.45rem;font-weight:850}.cw-rep-label{color:#56645f;font-size:.82rem;font-weight:700}.cw-practice-actions{grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:.65rem;display:grid}.cw-rep-button{color:#fff;cursor:pointer;font:inherit;border:0;border-radius:8px;justify-content:center;align-items:center;gap:.45rem;min-height:3.65rem;padding:.7rem;font-size:1rem;font-weight:900;display:inline-flex}.cw-rep-button:disabled{cursor:not-allowed;opacity:.55}.cw-feel-rating{align-items:center;min-height:3.65rem;display:flex}.cw-feel-rating-buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:.25rem;display:grid}.cw-feel-rating-button{color:#31423b;cursor:pointer;font:inherit;background:#fff;border:1px solid #cbd8d1;border-radius:8px;justify-content:center;align-items:center;width:3.25rem;min-height:3.65rem;padding:0;display:inline-flex}.cw-feel-rating-button[aria-pressed=true]{color:#173f38;background:#e8f2ec;border-color:#7cad98;box-shadow:inset 0 0 0 1px #7cad98}.cw-feel-rating-button:disabled{cursor:not-allowed;opacity:.55}.cw-practice-notes .cw-textarea{min-height:4.25rem}.cw-save-block-button{background:#18231f;border-color:#18231f;justify-self:stretch}.cw-history-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.cw-history-item{background:#fff;border:1px solid #d8e0dc;border-radius:8px;gap:.2rem;padding:.75rem;display:grid}.cw-history-note{color:#33423c;white-space:pre-wrap;background:#f6f8f4;border-left:3px solid #84b59e;margin:.25rem 0 0;padding:.4rem .55rem;font-size:.9rem;line-height:1.45}@media (max-width:900px){.cw-practice-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.cw-feel-rating{grid-column:1/-1;justify-content:end}}@media (max-width:560px){.cw-chunk-row{grid-template-columns:1fr auto}.cw-chunk-type{width:5.35rem;min-width:0}.cw-chunk-name{grid-area:1/1/auto/-1}.cw-practice-header,.cw-practice-actions,.cw-rep-grid{grid-template-columns:1fr}}:root{--cw-amber:#c28a2e;--cw-border:#d9dfd7;--cw-danger:#a23f33;--cw-forest:#275f52;--cw-forest-dark:#173f38;--cw-ink:#1e2930;--cw-ink-soft:#516066;--cw-paper:#fffdf8;--cw-paper-muted:#f8faf5;--cw-sky:#386f8f;--cw-terracotta:#b65632}.cw-button{background:var(--cw-forest);border-color:var(--cw-forest);border-radius:8px;font-weight:850;box-shadow:0 8px 16px #275f521f}.cw-button:hover,.cw-button:focus-visible,.cw-chunk-action:hover,.cw-chunk-action:focus-visible,.cw-feel-rating-button:hover,.cw-feel-rating-button:focus-visible{outline-offset:1px;outline:3px solid #275f5229}.cw-button-secondary{background:var(--cw-paper);box-shadow:none;color:var(--cw-forest-dark);border-color:#bac8be}.cw-label{color:var(--cw-ink);font-weight:850}.cw-input,.cw-textarea{background:var(--cw-paper);color:var(--cw-ink);border-color:#bcc9c0}.cw-input:focus,.cw-textarea:focus{border-color:var(--cw-forest);outline:3px solid #275f5224}.cw-piece-card,.cw-chunk-row,.cw-history-item,.cw-rep-metric{background:var(--cw-paper);border-color:var(--cw-border);border-radius:8px}.cw-piece-title,.cw-chunk-name,.cw-rep-value{color:var(--cw-ink)}.cw-piece-meta,.cw-rep-label{color:var(--cw-ink-soft)}.cw-piece-tag{background:var(--cw-tag-bg,#eaf2ee);border-color:var(--cw-tag-border,#c9d9d1);color:var(--cw-tag-text,var(--cw-forest))}.cw-piece-select-button:hover,.cw-piece-select-button:focus-visible{background:var(--cw-paper-muted)}.cw-piece-select-button[aria-current=true]{box-shadow:inset 4px 0 0 var(--cw-forest);background:#eef5ef}.cw-chunk-tree .cw-chunk-tree{border-left-color:var(--cw-border)}.cw-chunk-select input{accent-color:var(--cw-forest)}.cw-chunk-type-empty{visibility:hidden}.cw-chunk-type-join{background:var(--cw-terracotta)}.cw-chunk-type-combined{background:var(--cw-sky)}.cw-chunk-type-variant{background:#6a5878}.cw-chunk-action{color:var(--cw-forest-dark);background:#edf3ed;border-color:#c8d4ca;font-weight:850}.cw-practice-panel{background:var(--cw-paper);border-color:var(--cw-border);box-shadow:0 18px 42px #1e293014}.cw-practice-panel-running{border-color:#84b59e}.cw-practice-panel-paused{border-color:var(--cw-amber)}.cw-practice-header{background:#20343a}.cw-practice-title,.cw-timer{color:var(--cw-ink)}.cw-practice-title{color:#fff}.cw-practice-state{color:#a9c8bc}.cw-timer{background:var(--cw-paper)}.cw-feel-rating-button{background:var(--cw-paper);color:var(--cw-ink);border-color:#cbd7ce}.cw-feel-rating-button[aria-pressed=true]{color:var(--cw-forest-dark);background:#e6f0ec;border-color:#75a28f}.cw-rep-clean{background:var(--cw-forest)}.cw-rep-mistake{background:var(--cw-danger)}.cw-start-button{background:var(--cw-sky);border-color:var(--cw-sky)}.cw-save-block-button{background:#20343a;border-color:#20343a}
:root{color:#18231f;background:#eef2ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}body{background:#eef2ef;margin:0}button,input,select,textarea{font:inherit}.app-shell{gap:.9rem;max-width:1600px;min-height:100vh;margin:0 auto;padding:.9rem;display:grid}.topbar{justify-content:space-between;align-items:start;gap:1.25rem;display:flex}.app-topbar{background:#fbfcf8;border:1px solid #d7ded8;border-radius:8px;align-items:end;padding:.75rem .85rem}.eyebrow{color:#6d5f4e;letter-spacing:0;text-transform:uppercase;margin:0 0 .45rem;font-size:.8rem;font-weight:800}.page-title{color:#17211d;margin:0;font-size:clamp(1.45rem,2.4vw,2.15rem);line-height:1}.subtitle{color:#4f5c56;max-width:32rem;margin:0;font-size:.92rem;line-height:1.45}.workspace-grid{grid-template-columns:minmax(18rem,.75fr) minmax(0,1.25fr);align-items:start;gap:1.25rem;display:grid}.piece-workspace{gap:.85rem;display:grid}.mobile-practice-picker{display:none}.workspace-header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.workspace-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:start;gap:.55rem;min-width:min(100%,38rem);display:flex}.workspace-title{color:#17211d;margin:0 0 .35rem;font-size:1.2rem;line-height:1.15}.workspace-mode-tabs{background:#fffdfa;border:1px solid #ddd7cd;border-radius:8px;flex-wrap:wrap;align-items:center;gap:.25rem;padding:.25rem;display:flex}.workspace-mode-tab{appearance:none;color:#4f5c56;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;min-height:2.25rem;padding:.4rem .75rem;font-weight:850}.workspace-mode-tab:hover,.workspace-mode-tab:focus-visible{color:#17211d;border-color:#c9d9d3;outline:none}.workspace-mode-tab-active{color:#fff;background:#20362f}.workspace-mode-tab-active:hover,.workspace-mode-tab-active:focus-visible{color:#fff;border-color:#20362f}.cloud-sync-panel{background:0 0;border:0;place-items:center end;gap:.45rem;width:100%;max-width:none;padding:0;display:grid}.cloud-sync-status-stack{text-align:right;max-width:100%}.cloud-sync-status,.cloud-sync-error{color:#4f5c56;margin:0;font-size:.78rem;font-weight:750;line-height:1.35}.cloud-sync-error{color:#9a2f24;margin-top:.25rem}.cloud-sync-conflict{color:#5c3d08;background:#fff6dd;border:1px solid #e1bd68;border-radius:8px;gap:.15rem;margin-top:.4rem;padding:.45rem .55rem;font-size:.78rem;font-weight:750;line-height:1.35;display:grid}.cloud-sync-conflict p{margin:0}.cloud-sync-conflict-title{color:#3e2a09;font-weight:900}.cloud-sync-form{justify-content:flex-end;justify-self:end;align-items:center;gap:.35rem;width:100%;min-width:0;max-width:100%;display:flex}.cloud-sync-field{flex:0 9.75rem;min-width:0;display:block}.cloud-sync-field .cw-input{width:100%;min-width:0}.cloud-sync-form .cw-button{flex:none}.cloud-sync-actions{flex-wrap:wrap;gap:.5rem;display:flex}.cloud-sync-signed-in{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.65rem;display:flex}.cloud-account-summary{text-align:left;align-items:center;gap:.45rem;min-width:0;display:flex}.cloud-account-summary>div{gap:.05rem;min-width:0;display:grid}.cloud-account-summary strong,.cloud-account-summary span:not(.cloud-account-avatar){text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.cloud-account-summary strong{color:#20362f;font-size:.82rem}.cloud-account-summary span:not(.cloud-account-avatar){color:#65716b;max-width:13rem;font-size:.72rem}.cloud-account-avatar{color:#20362f;background:#dceae2;border:1px solid #b8d0c7;border-radius:50%;flex:0 0 2rem;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.82rem;font-weight:900;display:inline-flex}.cloud-sync-panel .cw-input,.cloud-sync-panel .cw-button{min-height:2.35rem;padding-top:.45rem;padding-bottom:.45rem}.stack{gap:1.25rem;display:grid}.flow-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;display:grid}.flow-step{color:#6d5f4e;background:#fffdfa;border:1px solid #ddd7cd;border-radius:8px;align-items:center;gap:.55rem;min-height:2.7rem;padding:.55rem .7rem;display:flex}.flow-step span{color:#6d5f4e;background:#f0ebe3;border-radius:999px;flex:0 0 1.45rem;place-items:center;height:1.45rem;font-size:.78rem;font-weight:900;display:grid}.flow-step strong{font-size:.86rem;line-height:1.15}.flow-step-active{color:#17211d;border-color:#b8d0c7}.flow-step-active span{color:#fff;background:#20362f}.builder-workspace-grid,.practice-workspace-grid{align-items:start;gap:.85rem;display:grid}.workspace-rail,.workspace-stage,.workspace-inspector{gap:.85rem;min-width:0;display:grid}.workspace-rail,.workspace-inspector{position:sticky;top:.75rem}.workspace-stage{align-content:start}.builder-section{gap:.65rem;display:grid}.builder-section-title{color:#4f5c56;letter-spacing:0;text-transform:uppercase;margin:0;font-size:.82rem;font-weight:900}.stats-strip{color:#4f5c56;flex-wrap:wrap;gap:.55rem;font-size:.9rem;font-weight:800;display:flex}.stats-strip span{background:#eef5f2;border:1px solid #c9d9d3;border-radius:8px;padding:.35rem .5rem}.panel{background:#fffdfa;border:1px solid #ddd7cd;border-radius:8px;gap:.75rem;padding:.85rem;display:grid}.panel-title{margin:0;font-size:1rem}.workspace-rail .panel,.workspace-inspector .panel,.workspace-rail .piece-form,.workspace-inspector .piece-form{gap:.65rem}.workspace-inspector .notation-grid,.workspace-inspector .score-region-coordinate-grid{grid-template-columns:1fr}.workspace-inspector .notation-textarea{min-height:4.25rem}.workspace-inspector .cw-rep-grid,.workspace-inspector .notation-control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-action-panel{background:#fffdfa;border:1px solid #ddd7cd;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem;padding:.4rem;display:grid}.builder-action-button{appearance:none;color:#4f5c56;cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:.4rem;min-height:2.25rem;padding:.45rem .5rem;font-size:.82rem;font-weight:850;display:inline-flex}.builder-action-button:hover,.builder-action-button:focus-visible{color:#17211d;border-color:#c9d9d3;outline:none}.workspace-rail .cw-chunk-row{grid-template-columns:minmax(0,1fr) auto;align-items:start}.workspace-rail .cw-chunk-row-selectable{grid-template-columns:auto minmax(0,1fr)}.workspace-rail .cw-chunk-row-selectable .cw-chunk-select{grid-area:1/1/span 2;padding-top:.45rem}.workspace-rail .cw-chunk-row .cw-chunk-type{grid-area:2/1;justify-self:start}.workspace-rail .cw-chunk-row .cw-chunk-name{grid-area:1/1;min-width:0}.workspace-rail .cw-chunk-row .cw-chunk-action{grid-area:1/2/span 2}.workspace-rail .cw-chunk-row-selectable .cw-chunk-type,.workspace-rail .cw-chunk-row-selectable .cw-chunk-name{grid-column:2}.workspace-rail .cw-chunk-row-selectable .cw-chunk-action{grid-area:3/2;justify-self:start}.piece-form{gap:.85rem;display:grid}.form-warning{color:#6b4b16;background:#fff8eb;border:1px solid #e7cf9c;border-radius:8px;margin:0;padding:.7rem .8rem;font-size:.86rem;font-weight:750;line-height:1.35}.button-row{flex-wrap:wrap;gap:.6rem;display:flex}.checkbox-row{color:#4f5c56;align-items:center;gap:.5rem;min-height:2.5rem;font-size:.92rem;font-weight:750;display:flex}.checkbox-row input{accent-color:#1f5f55;width:1rem;height:1rem}.piece-score-upload{border:1px solid var(--cw-border);border-radius:8px;gap:.65rem;padding:.75rem;display:grid}.piece-score-upload h3{color:var(--cw-ink);margin:0;font-size:.9rem}.score-upload-dropzone{border:1px dashed var(--cw-border-strong);background:#fbfcf7;border-radius:8px;gap:.65rem;min-height:7rem;padding:.85rem;transition:background .16s,border-color .16s,box-shadow .16s;display:grid}.score-upload-dropzone-active{border-color:var(--cw-forest);box-shadow:inset 0 0 0 1px var(--cw-forest);background:#eef6ef}.score-upload-dropzone-disabled{opacity:.62}.score-upload-input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.score-upload-copy{align-content:center;justify-items:start;gap:.25rem;display:grid}.score-upload-title{color:var(--cw-ink);font-size:.95rem;font-weight:850}.score-upload-link{color:var(--cw-forest-dark);cursor:pointer;text-underline-offset:.16em;font-weight:850;text-decoration:underline}.score-upload-link:hover,.score-upload-link:focus-visible{color:var(--cw-terracotta)}.score-upload-selected{background:var(--cw-paper);border:1px solid var(--cw-border);border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.5rem;padding:.55rem;display:grid}.score-upload-selected span:first-child{color:var(--cw-ink);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:800;overflow:hidden}.score-upload-selected span:nth-child(2),.score-upload-status{color:var(--cw-ink-soft);font-size:.78rem;font-weight:800}.score-upload-status{margin:0}.score-file-list ul{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.score-file-list li{border-top:1px solid #ebe4d9;justify-content:space-between;align-items:center;gap:.75rem;padding-top:.55rem;display:flex}.score-file-list a{color:#1f5f55;align-items:center;gap:.35rem;font-weight:850;display:inline-flex}.score-file-list span{color:#6d5f4e;font-size:.82rem;font-weight:800}.score-region-summary p{color:#4f5c56;gap:.25rem;margin:0;line-height:1.45;display:grid}.score-region-summary strong{color:#17211d}.score-region-summary span{font-size:.9rem}.score-region-coordinate-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;display:grid}.score-viewer-panel{gap:.75rem;display:grid;overflow:hidden}.score-viewer-frame{background:#f8f5ef;border:1px solid #ebe4d9;border-radius:8px;gap:.65rem;margin:0;padding:.65rem;display:grid}.score-image-stage{background:#fff;border:1px solid #ddd7cd;border-radius:6px;place-items:start center;padding:.75rem;display:grid;overflow:auto}.score-image-surface{cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;width:100%;display:block;position:relative}.score-image-surface img{object-fit:contain;pointer-events:none;background:#fff;border-radius:6px;width:100%;max-height:28rem;display:block}.score-pdf-toolbar{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.score-pdf-toolbar button{appearance:none;color:#17211d;cursor:pointer;font:inherit;background:#fff;border:1px solid #d7ded8;border-radius:8px;justify-content:center;align-items:center;width:2.15rem;height:2.15rem;padding:0;font-size:.86rem;font-weight:800;display:inline-flex}.score-pdf-toolbar button:disabled{color:#8d9992;cursor:not-allowed}.score-pdf-toolbar span{color:#4f5c56;font-size:.86rem;font-weight:800}.score-pdf-stage{background:#fff;border:1px solid #ddd7cd;border-radius:6px;place-items:start center;min-height:24rem;padding:.75rem;display:grid;overflow:auto}.score-pdf-page-surface{cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;width:fit-content;min-width:min(100%,18rem);max-width:100%;min-height:12rem;display:grid;position:relative}.score-pdf-canvas{pointer-events:none;background:#fff;max-width:100%;display:block}.score-pdf-canvas.is-hidden{opacity:0;visibility:hidden}.score-pdf-status{color:#4f5c56;place-self:center;padding:3rem 1rem;font-size:.9rem;font-weight:800}.score-region-overlay{appearance:none;color:inherit;cursor:pointer;font:inherit;text-align:left;background:#1f5f551f;border:2px solid #1f5f55;border-radius:6px;place-items:start;min-width:2.5rem;min-height:1.4rem;padding:.2rem;display:grid;position:absolute}.score-region-overlay-layer{position:absolute}.score-region-overlay-selected{background:#84551f26;border-color:#84551f}.score-region-overlay-draft{pointer-events:none;background:#84551f38;border-style:dashed;border-color:#84551f}.score-region-overlay span{color:#17211d;text-overflow:ellipsis;white-space:nowrap;background:#fffdfa;border:1px solid #ddd7cd;border-radius:6px;max-width:100%;padding:.15rem .25rem;font-size:.72rem;font-weight:850;line-height:1.1;overflow:hidden}.score-viewer-actions{justify-content:flex-end;display:flex}.score-viewer-actions a{color:#1f5f55;align-items:center;gap:.35rem;font-size:.9rem;font-weight:850;text-decoration:none;display:inline-flex}.score-viewer-actions a:hover,.score-viewer-actions a:focus-visible{color:#84551f}.score-reference-picker{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.5rem;display:grid}.score-reference-chip{appearance:none;color:#17211d;cursor:pointer;font:inherit;text-align:left;background:#fbfcf7;border:1px solid #d7ded8;border-radius:8px;gap:.2rem;min-width:0;padding:.55rem .65rem;display:grid}.score-reference-chip:hover,.score-reference-chip:focus-visible,.score-reference-chip-selected{background:#eef6ef;border-color:#1f5f55;outline:none}.score-reference-chip span{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;font-weight:850;overflow:hidden}.score-reference-chip strong{color:#4f5c56;letter-spacing:0;text-transform:uppercase;font-size:.72rem}.score-viewer-empty{background:#fbfcf7;border:1px solid #d7ded8;border-radius:8px;justify-items:start;gap:.55rem;padding:.85rem;display:grid}.score-viewer-empty strong{color:#17211d}.score-region-excerpt-panel{gap:.9rem;overflow:hidden}.score-region-excerpt-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.score-region-excerpt-crop{background:#fff;border:1px solid #ddd7cd;border-radius:8px;width:100%;min-height:16rem;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #17211d05}.score-region-excerpt-crop img,.score-region-excerpt-canvas{pointer-events:none;background:#fff;max-width:none;display:block;position:absolute}.score-region-excerpt-canvas.is-hidden{opacity:0;visibility:hidden}.score-region-excerpt-selection{pointer-events:none;border:2px solid #84551f;border-radius:6px;position:absolute;box-shadow:0 0 0 999px #fffdfa42}.score-region-excerpt-empty{background:#fff;border:1px solid #ddd7cd;border-radius:8px;align-content:center;justify-items:start;gap:.55rem;min-height:16rem;padding:1rem;display:grid}.notation-panel{gap:.85rem}.notation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.notation-textarea{resize:vertical;min-height:5.5rem}.structured-notation-panel{gap:.9rem}.source-strip-panel{align-content:start}.source-segment-list{gap:.85rem;display:grid}.source-segment{background:#fbfcf7;border:1px solid #d7ded8;border-radius:8px;gap:.7rem;padding:.85rem;display:grid}.source-segment-header{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.source-segment-header h3{color:#17211d;margin:0;font-size:.98rem;line-height:1.2}.source-segment-badge{color:#1f5f55;background:#e5f0eb;border:1px solid #c4d9cf;border-radius:999px;flex:none;padding:.25rem .5rem;font-size:.72rem;font-weight:850}.source-segment-badge-muted{color:#6f6255;background:#f3eee6;border-color:#ddd7cd}.source-segment-notation{min-height:15rem}.source-segment-notation .vexflow-notation,.source-segment-notation .vexflow-notation-frame{min-height:14rem}.score-region-excerpt-panel-embedded{box-shadow:none;border:0;padding:0}.score-region-excerpt-panel-embedded .notation-panel-header{display:none}.score-region-excerpt-panel-embedded .score-region-excerpt-crop,.score-region-excerpt-panel-embedded .score-region-excerpt-empty{min-height:13rem}.notation-panel-header{justify-content:space-between;align-items:start;gap:.85rem;display:flex}.notation-panel-actions{flex-wrap:wrap;justify-content:flex-end;align-items:start;gap:.55rem;display:flex}.notation-score-context-menu{position:relative}.notation-score-context-menu summary{list-style:none}.notation-score-context-menu summary::-webkit-details-marker{display:none}.notation-score-context-popover{z-index:20;background:#fffdfa;border:1px solid #d7ded8;border-radius:8px;gap:.75rem;min-width:17rem;padding:.85rem;display:grid;position:absolute;top:calc(100% + .45rem);right:0;box-shadow:0 18px 44px #17211d2e}.notation-score-context-popover h3{color:#17211d;margin:0;font-size:.98rem}.notation-playback-controls{background:#edf2ed;border:1px solid #d7ded8;border-radius:8px;flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:.55rem;padding:.55rem;display:flex}.notation-playback-controls .cw-button{min-height:2.35rem;padding-inline:.9rem}.notation-tempo-control{gap:.2rem;min-width:4.85rem;display:grid}.notation-tempo-control .cw-input{width:4.85rem;min-height:2.35rem;padding:.35rem .45rem}.notation-playback-summary{color:#52635d;align-self:center;max-width:8.5rem;font-size:.82rem;font-weight:800;line-height:1.2}.notation-staff{background:#fff;border:1px solid #ddd7cd;border-radius:8px;gap:.65rem;min-height:22.5rem;padding:1rem;display:grid;position:relative;overflow-x:auto}.vexflow-notation{min-width:32rem;min-height:21.4rem}.notation-preview-staff .notation-hit-targets{display:none}.vexflow-notation-frame{min-width:32rem;min-height:21.4rem;position:relative}.vexflow-notation svg{max-width:none;display:block}.notation-hit-targets{pointer-events:none;min-width:32rem;position:absolute;inset:0}.notation-hit-target{appearance:none;cursor:pointer;pointer-events:auto;touch-action:none;background:#1f5f5500;border:2px solid #0000;border-radius:8px;height:16.5rem;position:absolute;top:3.25rem}.notation-hit-target:hover,.notation-hit-target:focus-visible{background:#1f5f5514;border-color:#1f5f5559;outline:none}.notation-hit-target-selected{background:#1f5f551f;border-color:#1f5f55bf}.notation-hit-target-in-range{background:#84551f1f;border-color:#84551f73}.notation-hit-target-selected.notation-hit-target-in-range{background:#1f5f5529;border-color:#1f5f55d9}.notation-selected-actions{pointer-events:auto;z-index:90;background:#fffdf8f7;border:1px solid #d8d0c3;border-radius:999px;place-items:center;gap:.18rem;width:max-content;min-height:2.28rem;padding:.22rem;display:inline-flex;position:absolute;top:19.75rem;box-shadow:0 10px 24px #26201829}.notation-selected-trigger{appearance:none;color:#1f5f55;cursor:pointer;background:#ecf4ef;border:1px solid #c8dcd0;border-radius:999px;justify-content:center;align-items:center;width:1.82rem;height:1.82rem;padding:0;display:inline-flex}.notation-selected-trigger svg{width:1rem;height:1rem}.notation-selected-trigger:hover,.notation-selected-trigger:focus-visible{outline-offset:1px;background:#dcece3;outline:2px solid #1f5f5538}.notation-selected-trigger.notation-selected-trigger-active{color:#fffdf8;background:#1f5f55;border-color:#1f5f55}.notation-selected-trigger.notation-selected-trigger-active:hover,.notation-selected-trigger.notation-selected-trigger-active:focus-visible{background:#1a5249;outline-color:#fffdf866}.notation-flyout{box-sizing:border-box;z-index:95;background:#fffdf8;border:1px solid #d8d0c3;border-radius:.7rem;padding:.55rem;position:fixed;box-shadow:0 14px 32px #26201838}.notation-duration-flyout{padding:.35rem}.notation-duration-flyout-stack{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:.12rem;display:grid}.notation-tab-flyout-grid{gap:.5rem;display:grid}.notation-add-flyout{padding:.35rem}.notation-add-flyout-stack{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:.12rem;display:grid}.notation-add-flyout-button{appearance:none;color:#20362f;cursor:pointer;isolation:isolate;background:0 0;border:0;border-radius:.45rem;place-content:center;place-items:center;width:100%;height:2.2rem;padding:0;display:grid;position:relative;overflow:hidden}.notation-add-flyout-button:hover,.notation-add-flyout-button:focus-visible{color:#1f5f55;outline-offset:1px;background:#ecf4ef;outline:2px solid #1f5f5538}.notation-add-flyout-symbol{pointer-events:none;-webkit-user-select:none;user-select:none;font-family:Bravura,Noto Music,Times New Roman,serif;font-size:1.45rem;line-height:1;display:block}.notation-add-flyout-button[data-kind=note] .notation-add-flyout-symbol{transform:translateY(.06em)}.notation-add-flyout-button[data-kind=rest] .notation-add-flyout-symbol{font-size:1.3rem;transform:translateY(.02em)}.notation-empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.8rem;display:flex}.notation-empty-state p{margin:0}.notation-empty-state-actions{gap:.5rem;display:inline-flex}.notation-tab-control-row{grid-template-columns:1.1rem minmax(0,1fr);align-items:center;gap:.45rem;min-width:0;display:grid}.notation-tab-segmented-control{grid-template-columns:repeat(6,minmax(0,1fr));gap:.2rem;min-width:0;display:grid}.notation-picking-control{grid-template-columns:repeat(6,minmax(0,1fr))}.notation-technique-control{grid-template-columns:minmax(0,1fr)}.notation-bend-control{grid-template-columns:repeat(5,minmax(0,1fr)) minmax(2.2rem,.85fr)}.notation-tab-value-button,.notation-tab-stepper-button{appearance:none;color:#29453b;cursor:pointer;font:inherit;background:#f7faf7;border:1px solid #d7e1da;border-radius:.35rem;justify-content:center;align-items:center;min-width:0;height:2rem;padding:0;font-size:.78rem;font-weight:800;display:inline-flex}.notation-tab-value-button:hover,.notation-tab-value-button:focus-visible,.notation-tab-value-button[aria-pressed=true],.notation-tab-stepper-button:hover,.notation-tab-stepper-button:focus-visible{color:#1f5f55;outline-offset:1px;background:#e4f0e9;border-color:#94b9a5;outline:2px solid #1f5f552e}.notation-tab-value-button:disabled,.notation-tab-stepper-button:disabled{cursor:not-allowed;opacity:.45}.notation-tab-stepper{grid-template-columns:2rem minmax(3rem,1fr) 2rem;align-items:center;gap:.2rem;display:grid}.notation-tab-stepper-value{box-sizing:border-box;color:#20362f;font:inherit;text-align:center;background:#fff;border:1px solid #d7e1da;border-radius:.35rem;width:100%;min-width:0;height:2rem;font-size:.85rem;font-weight:800}.notation-tab-stepper-value:focus-visible{outline-offset:1px;border-color:#1f5f55;outline:2px solid #1f5f5538}.notation-duration-button{appearance:none;color:#20362f;cursor:pointer;isolation:isolate;background:0 0;border:0;border-radius:.45rem;place-content:center;place-items:center;width:100%;height:2.2rem;padding:0;display:grid;position:relative;overflow:hidden}.notation-duration-button:hover,.notation-duration-button:focus-visible,.notation-duration-button[aria-pressed=true]{color:#1f5f55;outline-offset:1px;background:#ecf4ef;outline:2px solid #1f5f5538}.notation-duration-symbol{pointer-events:none;-webkit-user-select:none;user-select:none;font-family:Bravura,Noto Music,Times New Roman,serif;font-size:1.45rem;line-height:1;display:block}.notation-duration-button[data-duration=whole] .notation-duration-symbol,.notation-duration-button[data-duration=half] .notation-duration-symbol{transform:translateY(.04em)}.notation-duration-button[data-duration=eighth] .notation-duration-symbol,.notation-duration-button[data-duration=sixteenth] .notation-duration-symbol,.notation-duration-button[data-duration=thirty-second] .notation-duration-symbol{transform:translateY(.08em)}.notation-selected-action-field{flex:none;align-items:center;gap:.25rem;display:inline-flex}.notation-selected-field-icon{color:#547166;flex:none;width:.95rem;height:.95rem}.notation-selected-action-select,.notation-selected-action-input{color:#20362f;font:inherit;background:#fffdf8;border:1px solid #d8d0c3;border-radius:.45rem;height:1.82rem;padding:0 .35rem;font-size:.76rem;font-weight:750}.notation-selected-action-select:focus-visible,.notation-selected-action-input:focus-visible{outline-offset:1px;border-color:#1f5f55;outline:2px solid #1f5f5538}.notation-selected-duration{width:3.1rem}.notation-selected-string{width:3.35rem}.notation-selected-fret{text-align:center;width:3rem}.notation-selected-finger{width:3.25rem}.notation-selected-pick{width:3rem}.notation-selected-action-button{appearance:none;color:#20362f;cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;width:1.82rem;height:1.82rem;padding:0;display:inline-flex}.notation-selected-action-button svg{width:1rem;height:1rem}.notation-selected-action-button:hover,.notation-selected-action-button:focus-visible{color:#1f5f55;outline-offset:1px;background:#ecf4ef;outline:2px solid #1f5f5538}.notation-selected-action-button:disabled{color:#afa59a;cursor:not-allowed;opacity:.55}.notation-selected-action-button:disabled:hover,.notation-selected-action-button:disabled:focus-visible{background:0 0;outline:none}.notation-selected-action-danger{color:#8f2e24}.notation-selected-action-danger:hover,.notation-selected-action-danger:focus-visible{color:#b8392f;background:#f9e8e5;outline-color:#b8392f38}.range-selection-summary{color:#20362f;background:#f8f5ef;border:1px solid #ebe4d9;border-radius:8px;margin:0;padding:.65rem .75rem;font-size:.9rem;font-weight:800}.notation-marking-lane{pointer-events:none;min-width:32rem;height:3.25rem;position:absolute;top:.2rem;left:0;right:0}.notation-marking-stack{place-items:center;gap:.05rem;min-width:1.75rem;display:grid;position:absolute}.notation-marking{color:#17211d;font-size:.82rem;font-weight:850;line-height:1}.notation-picking-marking{font-family:Bravura,Noto Music,Segoe UI Symbol,Apple Symbols,serif;font-size:.95rem;font-style:normal;font-weight:700}.notation-connection-lane{pointer-events:none;min-width:32rem;height:3rem;position:absolute;top:4.35rem;left:0;right:0}.notation-connection{color:#244c42;border:0 solid #315e52;border-top-width:2px;border-radius:50% 50% 0 0;height:1.1rem;position:absolute}.notation-connection span{background:#fffdfa;border:1px solid #d6e4dd;border-radius:999px;padding:.12rem .24rem;font-size:.62rem;font-weight:900;line-height:1;position:absolute;top:-.55rem;left:50%;transform:translate(-50%)}.notation-connection-hammer-on,.notation-connection-pull-off{color:#65421b;border-color:#6d4c28}.notation-structure-lane{pointer-events:none;min-width:32rem;position:absolute;inset:0}.notation-structure-mark{color:#244c42;background:#fffdfa;border:1px solid #d6e4dd;border-radius:999px;justify-content:center;align-items:center;min-width:1.5rem;height:1.35rem;padding:0 .28rem;font-size:.72rem;font-weight:900;display:inline-flex;position:absolute;top:5.1rem}.notation-structure-mark:after{content:"";background:#244c426b;width:2px;position:absolute;top:1.25rem;bottom:-11.8rem;left:50%;transform:translate(-50%)}.notation-structure-repeat-start,.notation-structure-repeat-end{color:#65421b;border-color:#d7c4a4}.notation-measure-warning{color:#684716;background:#fff7e8;border:1px solid #ead7b5;border-radius:8px;margin:.5rem 0 0;padding:.5rem .65rem;font-size:.86rem;font-weight:750}.notation-control-grid{grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;gap:.75rem;display:grid}.notation-inspector{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:.75rem;display:grid}.notation-side-stack{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:.75rem;display:grid}.notation-inspector .notation-control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.note-inspector-header,.note-inspector-footer{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.note-inspector-actions{flex:none;align-items:center;gap:.4rem;display:flex}.note-inspector-actions .cw-button{min-height:2.35rem}.note-marking-strip{background:#fffdfa;border:1px solid #e5ded3;border-radius:7px;flex-wrap:wrap;align-items:center;gap:.35rem;min-height:2.45rem;padding:.4rem;display:flex}.note-marking-chip,.note-marking-empty{border-radius:999px;padding:.22rem .5rem;font-size:.78rem;font-weight:850;line-height:1.2}.note-marking-chip{color:#17382f;background:#dfeee6}.note-marking-chip-button{cursor:pointer;border:0;font-family:inherit}.note-marking-chip-button:hover,.note-marking-chip-button:focus-visible{outline-offset:2px;background:#c9e1d4;outline:2px solid #226f5447}.note-marking-empty{color:#6f6255;background:#f3eee6}.note-marking-menu{margin-left:auto;position:relative}.note-marking-menu summary{color:#594f43;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #d8cfc2;border-radius:999px;padding:.22rem .55rem;font-size:.78rem;font-weight:850;line-height:1.2;list-style:none}.note-marking-menu summary::-webkit-details-marker{display:none}.note-marking-menu[open] summary,.note-marking-menu summary:hover,.note-marking-menu summary:focus-visible{outline-offset:2px;background:#f4efe7;outline:2px solid #594f4329}.note-marking-menu-popover{z-index:8;background:#fffdfa;border:1px solid #d8cfc2;border-radius:8px;gap:.25rem;min-width:10rem;padding:.35rem;display:grid;position:absolute;top:calc(100% + .35rem);right:0;box-shadow:0 12px 32px #2c251b24}.note-marking-menu-popover button{color:#2d281f;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;padding:.42rem .5rem;font-family:inherit;font-size:.84rem;font-weight:750}.note-marking-menu-popover button:hover,.note-marking-menu-popover button:focus-visible{background:#f0e8dc;outline:none}.note-marking-menu-popover button:disabled{color:#a69a8b;cursor:not-allowed}.note-inspector-grid{grid-template-columns:minmax(8rem,.9fr) minmax(16rem,1.8fr) minmax(7rem,1fr);grid-template-areas:"event duration rhythm""pitch accidental octave";align-items:end;gap:.65rem;display:grid}.note-inspector-section{display:contents}.notation-event-field{grid-area:event}.notation-duration-field{grid-area:duration}.notation-rhythm-field{grid-area:rhythm}.notation-pitch-field{grid-area:pitch}.notation-accidental-field{grid-area:accidental}.notation-octave-field{grid-area:octave}.notation-button-field{border:0;gap:.35rem;min-width:0;margin:0;padding:0;display:grid}.notation-pitch-field,.notation-octave-field{min-width:0}.notation-button-row{flex-wrap:wrap;gap:.35rem;min-height:2.55rem;display:flex}.notation-duration-button-row,.notation-accidental-field .notation-button-row{flex-wrap:nowrap}.notation-accidental-field .notation-toggle-button{min-width:2rem;padding-inline:.45rem;font-size:1rem}.notation-toggle-button{appearance:none;color:#20362f;cursor:pointer;font:inherit;background:#fff;border:1px solid #d7cfc2;border-radius:7px;min-width:2.35rem;min-height:2.25rem;padding:.45rem .65rem;font-size:.85rem;font-weight:800}.notation-toggle-button:hover,.notation-toggle-button:focus-visible{outline-offset:1px;border-color:#1f5f55;outline:2px solid #1f5f552e}.notation-toggle-button-active{color:#fff;background:#1f5f55;border-color:#1f5f55}.notation-toggle-button:disabled{cursor:not-allowed;opacity:.55}.notation-action-stack{align-self:end;gap:.35rem;display:grid}.inline-check{color:#20362f;align-items:center;gap:.45rem;min-height:2.55rem;font-size:.9rem;font-weight:800;display:flex}.inline-check input{accent-color:#1f5f55;width:1rem;height:1rem}.notation-note-actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));align-self:end;gap:.35rem;display:grid}.notation-note-actions .cw-button{white-space:nowrap;min-height:2.55rem;padding-inline:.75rem}.notation-action-wide{grid-column:1/-1;width:100%}.notation-edit-panel,.chunk-notes-panel,.tab-script-panel{background:#f8f5ef;border:1px solid #ebe4d9;border-radius:8px;gap:.75rem;padding:.85rem;display:grid}.selected-note-inspector{grid-column:1/-1}.notation-edit-panel h3,.chunk-notes-panel h3,.tab-script-panel h3{margin:0;font-size:.95rem}.tab-script-panel{grid-column:1/-1}.chunk-notes-panel{align-content:start}.chunk-notes-header{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.chunk-notes-save-button{box-shadow:none;flex:none;min-height:2.25rem;padding:.5rem .75rem}.chunk-notes-field{gap:0}.chunk-notes-input{resize:vertical;min-height:4.75rem}.tab-script-input{resize:vertical;min-height:7.25rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace}.form-error{color:#9a3412;margin:0;font-size:.9rem;font-weight:750}.empty-state{color:#4f5c56;align-self:center;margin:0;padding:2rem 0}.practice-strip{color:#fff;background:#20362f;border-radius:8px;grid-template-columns:1fr auto auto auto;align-items:center;gap:1rem;padding:1rem;display:grid}.metric{gap:.2rem;display:grid}.metric-value{font-size:1.35rem;font-weight:850}.metric-label{color:#c9d9d3;font-size:.82rem}.workspace-header{background:#fbfcf8;border:1px solid #d7ded8;border-radius:8px;padding:.85rem}.workspace-heading{gap:.35rem;min-width:0;display:grid}.workspace-focus-line{color:#4d5a55;flex-wrap:wrap;align-items:center;gap:.45rem;font-size:.9rem;font-weight:750;display:flex}.workspace-focus-line span:not(.workspace-mode-pill){overflow-wrap:anywhere;min-width:0}.workspace-mode-pill{color:#fff;text-transform:uppercase;background:#17211d;border-radius:999px;padding:.25rem .5rem;font-size:.76rem;font-weight:900}.settings-workspace{align-content:start;gap:.85rem;max-width:58rem;display:grid}.settings-section{background:#fbfcf8;border:1px solid #d7ded8;border-radius:8px;gap:.8rem;padding:.85rem;display:grid}.settings-toggle-list{gap:.45rem;display:grid}.settings-toggle-list-compact{gap:.25rem}.settings-toggle-row{cursor:pointer;background:#fff;border:1px solid #ddd7cd;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.65rem;padding:.65rem .7rem;display:grid}.settings-toggle-list-compact .settings-toggle-row{border:0;border-radius:6px;padding:.5rem .55rem}.settings-toggle-row:hover,.settings-toggle-row:focus-within{background:#eef6ef;border-color:#b9d3c9}.settings-toggle-row input{accent-color:#1f5f55;width:1rem;height:1rem;margin-top:.15rem}.settings-toggle-row span{gap:.18rem;min-width:0;display:grid}.settings-toggle-row strong{color:#17211d;font-size:.92rem;line-height:1.2}.settings-toggle-row small{color:#52635d;font-size:.8rem;font-weight:700;line-height:1.3}.workspace-context-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem;display:grid}.context-tile{background:#fbfcf8;border:1px solid #d7ded8;border-radius:8px;gap:.2rem;min-height:4rem;padding:.7rem .8rem;display:grid}.context-tile span{color:#65716b;text-transform:uppercase;font-size:.76rem;font-weight:900}.context-tile strong{color:#17211d;overflow-wrap:anywhere;font-size:.98rem;line-height:1.15}.context-tile-strong{border-color:#aebfb6;box-shadow:inset 3px 0 #246b5b}.builder-workspace-grid,.practice-workspace-grid,.sessions-workspace-grid,.history-workspace-grid{align-items:start;gap:.85rem;display:grid}.workspace-rail,.workspace-inspector{scrollbar-width:thin;max-height:calc(100vh - 1rem);overflow:auto}.workspace-stage{min-width:0}.rail-group,.desk-surface,.inspector-tool-section{background:#fbfcf8a3;border:1px solid #d7ded8;border-radius:8px;padding:.7rem}.section-heading-row{justify-content:space-between;align-items:center;gap:.75rem;min-width:0;display:flex}.section-heading-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:.55rem;display:flex}.section-count{color:#65716b;text-transform:uppercase;flex:none;font-size:.76rem;font-weight:900}.panel{background:#fffffb;border-color:#d7ded8;box-shadow:0 1px 2px #17211d0a}.panel-title{color:#17211d;line-height:1.15}.panel-title-with-info{align-items:center;gap:.35rem;min-width:0;display:flex}.heading-info-tooltip{color:#246b5b;cursor:help;background:#edf2ed;border:1px solid #cbd8d1;border-radius:999px;flex:none;justify-content:center;align-items:center;width:1.25rem;height:1.25rem;padding:0;display:inline-flex;position:relative}.heading-info-icon{width:.82rem;height:.82rem}.heading-info-tooltip:after{color:#fff;content:attr(data-tooltip);opacity:0;pointer-events:none;text-align:left;visibility:hidden;white-space:normal;z-index:30;background:#142529;border:1px solid #ffffff29;border-radius:8px;width:min(18rem,100vw - 2rem);padding:.64rem .72rem;font-size:.82rem;font-weight:650;line-height:1.42;transition:opacity .14s,transform .14s,visibility .14s;position:absolute;top:calc(100% + .45rem);left:0;transform:translateY(-.2rem);box-shadow:0 18px 42px #1e293038}.heading-info-tooltip:hover:after,.heading-info-tooltip:focus-visible:after{opacity:1;visibility:visible;transform:translateY(0)}.heading-info-tooltip:focus-visible{outline-offset:2px;outline:3px solid #246b5b2e}.piece-library-panel,.chunk-map-panel,.practice-queue-panel,.review-queue-panel{gap:.65rem;padding:.7rem}.builder-desk,.practice-stage,.review-stage,.sessions-stage{background:#f7f9f5;border:1px solid #d7ded8;border-radius:8px;align-content:start;padding:.75rem}.desk-header,.practice-target-bar,.review-focus-card{color:#fff;background:#17211d;border-radius:8px;justify-content:space-between;align-items:center;gap:1rem;min-height:4.5rem;padding:.8rem .95rem;display:flex}.desk-header h2,.practice-target-bar h2,.review-focus-card h2{color:#fff;overflow-wrap:anywhere;margin:0;font-size:1.08rem;line-height:1.15}.desk-title-row{align-items:center;gap:.45rem;min-width:0;display:flex}.desk-delete-button{appearance:none;color:#fff;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:999px;flex:none;justify-content:center;align-items:center;width:2rem;height:2rem;padding:0;display:inline-flex}.desk-delete-button:hover,.desk-delete-button:focus-visible{outline-offset:1px;background:#b74233db;border-color:#ffffff47;outline:3px solid #ffffff29}.desk-source-line{color:#cbd8d1;margin:.2rem 0 0;font-size:.82rem;font-weight:750;line-height:1.3}.desk-header .eyebrow,.practice-target-bar .eyebrow,.review-focus-card .eyebrow{color:#aebfb6;margin-bottom:.2rem}.history-desk-header,.review-focus-card{grid-template-columns:minmax(0,1fr) auto;align-items:start;display:grid}.history-desk-header .cw-piece-meta,.review-focus-card .cw-piece-meta{color:#cbd8d1;grid-column:1/-1}.desk-status-pills{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.4rem;display:flex}.desk-header-tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.desk-view-menu{position:relative}.desk-view-menu summary{list-style:none}.desk-view-menu summary::-webkit-details-marker{display:none}.desk-view-menu>summary.icon-button{color:#fff;background:#ffffff1a;border-color:#ffffff2e}.desk-view-menu[open]>summary.icon-button,.desk-view-menu>summary.icon-button:hover,.desk-view-menu>summary.icon-button:focus-visible{background:#ffffff2e;border-color:#ffffff52}.desk-view-menu-content{color:#17211d;z-index:20;background:#fffdfa;border:1px solid #d7ded8;border-radius:8px;min-width:18rem;padding:.45rem;position:absolute;top:calc(100% + .45rem);right:0;box-shadow:0 18px 44px #17211d2e}.desk-status-pills span{color:#fff;background:#ffffff1f;border:1px solid #ffffff2e;border-radius:999px;padding:.3rem .5rem;font-size:.78rem;font-weight:850}.status-tooltip{position:relative}.status-tooltip:after{color:#fff;content:attr(data-tooltip);opacity:0;pointer-events:none;text-align:left;visibility:hidden;white-space:normal;max-width:calc(100vw - 2rem);width:min(19rem, max-content);z-index:20;background:#142529;border:1px solid #ffffff29;border-radius:8px;padding:.68rem .74rem;font-size:.82rem;font-weight:650;line-height:1.42;transition:opacity .14s,transform .14s,visibility .14s;position:absolute;top:calc(100% + .5rem);right:0;transform:translateY(-.2rem);box-shadow:0 18px 42px #1e29303d}.status-tooltip:hover:after,.status-tooltip:focus-visible:after{opacity:1;visibility:visible;transform:translateY(0)}.desk-status-pills span.status-tooltip:focus-visible{outline-offset:2px;outline:3px solid #ffffff2e}.desk-surface{background:0 0;border-color:#0000;padding:0}.workspace-stage>.builder-section>.panel,.workspace-stage>.builder-section>.score-viewer-panel,.workspace-stage>.builder-section>.score-region-excerpt-panel,.workspace-stage>.builder-section>.structured-notation-panel{border-color:#d1d8d2;box-shadow:0 12px 28px #17211d0f}.score-viewer-frame{background:#f4f6f2;border-color:#d7ded8}.score-image-stage{border-color:#cbd5cf;min-height:10rem}.notation-staff{background:#fffffb;border-color:#cbd5cf;box-shadow:inset 0 0 0 1px #17211d05}.notation-edit-panel,.chunk-notes-panel,.tab-script-panel,.range-selection-summary{background:#f4f7f4;border-color:#d7ded8}.builder-action-panel{background:#e8eee9;border-color:#cfd8d2;grid-template-columns:repeat(3,minmax(0,1fr))}.builder-action-button{color:#46524d;background:#fbfcf8;border-color:#dce3dd;min-height:2.35rem}.builder-action-button:hover,.builder-action-button:focus-visible{background:#fff;border-color:#9bb1a6}.builder-action-button[aria-pressed=true]{color:#fff;background:#246b5b;border-color:#246b5b}.practice-queue-panel .cw-chunk-row,.chunk-map-panel .cw-chunk-row{background:#fbfcf8}.practice-stage .structured-notation-panel{min-height:0}.practice-settings-rail .panel{border-color:#cfd8d2}.practice-setup-panel{background:#fbfcf8}.practice-setup-panel .cw-button{width:100%}.sessions-workspace-grid{grid-template-columns:minmax(15rem,.75fr) minmax(0,2fr);gap:.8rem;display:grid}.session-plan-list,.session-plan-item-list,.active-session-queue ol,.practice-log-session-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.session-plan-list-item{background:#fbfcf8;border:1px solid #d7ded8;border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.45rem;padding:.45rem;display:grid}.session-plan-list-compact{gap:.4rem}.session-plan-list-compact .session-plan-list-item{grid-template-columns:minmax(0,1fr) 2.35rem;gap:.4rem}.session-plan-list-item>button:first-child{appearance:none;color:#17211d;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;gap:.2rem;min-width:0;padding:.2rem;display:grid}.session-plan-list-compact .session-plan-list-item>button:first-child{align-content:center;gap:.1rem;min-height:3.25rem;padding:.5rem .6rem;overflow:hidden}.session-plan-list-item-selected,.session-plan-list-item:hover,.session-plan-list-item:focus-within{border-color:#246b5b;box-shadow:inset 3px 0 #246b5b}.session-plan-list-item>button:first-child:focus-visible{outline:none}.session-plan-list-item strong,.session-plan-list-item span,.session-plan-item strong,.session-plan-item span{overflow-wrap:anywhere;display:block}.session-plan-list-compact .session-plan-list-item strong,.session-plan-list-compact .session-plan-list-item span{overflow-wrap:normal;text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.session-plan-list-item span,.session-plan-item span{color:#65716b;font-size:.78rem;font-weight:800}.piece-tag-list,.session-tag-count-list{flex-wrap:wrap;align-items:center;gap:.3rem;min-width:0;margin-top:.35rem;display:flex}.piece-tag-chip,.session-tag-count-chip{background:var(--tag-bg,#eaf2ee);border:1px solid var(--tag-border,#c9d9d1);color:var(--tag-text,#246b5b);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;max-width:10rem;min-height:1.45rem;padding:.25rem .45rem;font-size:.72rem;font-weight:900;line-height:1;display:inline-flex;overflow:hidden}.session-tag-count-chip{background:var(--tag-bg,#eef0e7);border-color:var(--tag-border,#d9dccb);color:var(--tag-text,#4b5935)}.piece-tag-chip[data-tone=sage],.session-tag-count-chip[data-tone=sage]{--tag-bg:#e5f3ed;--tag-border:#b5d9ca;--tag-text:#17634f}.piece-tag-chip[data-tone=sky],.session-tag-count-chip[data-tone=sky]{--tag-bg:#e5f0fb;--tag-border:#b9d4f2;--tag-text:#1f5f8f}.piece-tag-chip[data-tone=coral],.session-tag-count-chip[data-tone=coral]{--tag-bg:#fde9e2;--tag-border:#f2b8a4;--tag-text:#974829}.piece-tag-chip[data-tone=amber],.session-tag-count-chip[data-tone=amber]{--tag-bg:#fff1cf;--tag-border:#f0c96f;--tag-text:#745612}.piece-tag-chip[data-tone=violet],.session-tag-count-chip[data-tone=violet]{--tag-bg:#f0eafe;--tag-border:#d1bdf8;--tag-text:#6840a8}.piece-tag-chip[data-tone=rose],.session-tag-count-chip[data-tone=rose]{--tag-bg:#fae7ef;--tag-border:#edb7ca;--tag-text:#8b3653}.piece-tag-chip[data-tone=teal],.session-tag-count-chip[data-tone=teal]{--tag-bg:#dff4f4;--tag-border:#addada;--tag-text:#146c70}.piece-tag-chip[data-tone=indigo],.session-tag-count-chip[data-tone=indigo]{--tag-bg:#e8ecff;--tag-border:#bdc8fb;--tag-text:#4859a8}.piece-tag-chip[data-tone=olive],.session-tag-count-chip[data-tone=olive]{--tag-bg:#eef2d8;--tag-border:#d2dca0;--tag-text:#59691f}.piece-tag-chip[data-tone=clay],.session-tag-count-chip[data-tone=clay]{--tag-bg:#f5eadf;--tag-border:#dfc3ab;--tag-text:#7a4f2d}.piece-tag-chip[data-tone=mint],.session-tag-count-chip[data-tone=mint]{--tag-bg:#ddf3e4;--tag-border:#abd9ba;--tag-text:#28633c}.piece-tag-chip[data-tone=plum],.session-tag-count-chip[data-tone=plum]{--tag-bg:#f2e7f3;--tag-border:#dcb9df;--tag-text:#75417d}.chunk-metadata-tags{gap:.55rem;display:grid}.chunk-metadata-inherited-tags{background:#ffffff94;border:1px solid #1f2a2314;border-radius:8px;padding:.65rem}.chunk-metadata-inherited-tags .piece-tag-list{margin-top:.45rem}.session-plan-list-compact .session-tag-count-list{flex-wrap:nowrap;gap:.25rem;max-height:1.45rem;margin-top:.2rem;overflow:hidden}.session-plan-list-compact .session-tag-count-chip{flex:0 auto;min-width:0;max-width:4.8rem}.workspace-focus-line .piece-tag-list,.piece-card-select .piece-tag-list,.session-plan-list-item .session-tag-count-list,.session-plan-item .piece-tag-list{display:flex}.workspace-focus-line .piece-tag-chip,.piece-card-select .piece-tag-chip,.session-plan-list-item .session-tag-count-chip,.session-plan-item .piece-tag-chip{display:inline-flex}.session-plan-editor{gap:.75rem;display:grid}.session-plan-form-grid,.session-chunk-picker{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:.65rem;display:grid}.session-chunk-picker{grid-template-columns:minmax(0,1fr) auto}.session-plan-form-actions{align-items:center;gap:.5rem;display:flex}.session-plan-item-list{counter-reset:session-item}.session-plan-item{background:#fbfcf8;border:1px solid #d7ded8;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.65rem;padding:.65rem;display:grid}.session-plan-item-index{color:#246b5b;background:#e7eee9;border-radius:999px;justify-content:center;align-items:center;width:1.8rem;height:1.8rem;font-size:.78rem;font-weight:950;display:inline-flex}.session-plan-item-meta,.session-plan-item-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.35rem;display:flex}.session-plan-start-button{min-width:6.9rem}.session-plan-list-compact .session-plan-start-button{color:#246b5b;border-color:#c9d9d1;justify-content:center;place-self:center end;align-items:center;width:2.25rem;min-width:0;height:2.25rem;min-height:2.25rem;padding:0;display:inline-flex;overflow:hidden}.session-plan-list-compact .session-plan-list-item-selected .session-plan-start-button{color:#fff;background:#246b5b;border-color:#246b5b}.session-plan-start-icon{width:1.05rem;height:1.05rem;display:block}.active-session-queue{background:#fffffb;border:1px solid #d7ded8;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.65rem;display:grid}.active-session-queue>div{gap:.1rem;display:grid}.active-session-queue>div span{color:#65716b;text-transform:uppercase;font-size:.72rem;font-weight:900}.active-session-queue>div .session-tag-count-list,.active-session-queue>div .session-tag-count-chip{text-transform:none}.active-session-queue>div strong{color:#17211d}.active-session-queue ol{gap:.45rem;display:flex;overflow-x:auto}.active-session-step{appearance:none;color:#17211d;cursor:pointer;background:#f4f7f4;border:1px solid #d7ded8;border-radius:999px;align-items:center;gap:.4rem;max-width:15rem;min-height:2.25rem;padding:.35rem .6rem;display:inline-flex}.active-session-step span{background:#fff;border:1px solid #d7ded8;border-radius:999px;flex:none;justify-content:center;align-items:center;width:1.35rem;height:1.35rem;font-size:.72rem;font-weight:950;display:inline-flex}.active-session-step strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.active-session-step-current{color:#fff;background:#246b5b;border-color:#246b5b}.practice-log-session{border:1px solid #d7ded8;border-radius:8px;overflow:hidden}.practice-log-session-header{background:#eef3ef;border-bottom:1px solid #d7ded8;justify-content:space-between;align-items:center;gap:.75rem;padding:.6rem .7rem;display:flex}.practice-log-session-header strong,.practice-log-session-header span{display:block}.practice-log-session-header span{color:#65716b;font-size:.78rem;font-weight:850}.review-target-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.review-target-item{background:#fbfcf8;border:1px solid #d7ded8;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.65rem;display:grid}.review-target-item-active{background:#eef6f1;border-color:#91b7a3;box-shadow:inset 3px 0 #4f8f70}.review-target-item strong,.review-target-name-button,.review-target-item span{overflow-wrap:anywhere;display:block}.review-target-item strong,.review-target-name-button{appearance:none;color:#17211d;cursor:pointer;text-align:left;background:0 0;border:0;padding:0;font-size:.92rem;font-weight:850;line-height:1.2}.review-target-name-button:hover,.review-target-name-button:focus-visible{color:#2f7657;text-underline-offset:3px;outline:none;text-decoration:underline;text-decoration-thickness:2px}.review-target-item span{color:#65716b;margin-top:.15rem;font-size:.8rem;font-weight:750}.stats-strip span{color:#20362f;background:#edf4ef;border-color:#c7d8ce}@media (max-width:760px){.app-shell{padding:1rem}.topbar,.workspace-header,.workspace-grid,.builder-workspace-grid,.history-workspace-grid,.practice-workspace-grid,.practice-strip{grid-template-columns:1fr}.app-topbar{align-items:start}.workspace-header{align-items:stretch;display:grid}.flow-strip,.workspace-context-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-rail,.workspace-inspector{max-height:none;position:static;overflow:visible}.workspace-header-actions{justify-items:stretch;min-width:0}.cloud-sync-form{grid-template-columns:1fr}.workspace-mode-tabs{justify-content:stretch}.workspace-mode-tab{flex:6rem}.score-region-coordinate-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.notation-grid,.notation-inspector{grid-template-columns:1fr}.note-inspector-header,.note-inspector-footer{grid-template-columns:1fr;display:grid}.note-inspector-actions{justify-content:start}.notation-side-stack{grid-template-columns:1fr}.notation-panel-header{grid-template-columns:1fr;display:grid}.notation-playback-controls{justify-content:stretch}.notation-playback-controls .cw-button{flex:7rem}.chunk-notes-panel{grid-column:1}.notation-control-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.note-inspector-grid{grid-template-columns:1fr;grid-template-areas:"event""duration""rhythm""pitch""accidental""octave"}.topbar{display:grid}.desk-header,.practice-target-bar,.review-focus-card{grid-template-columns:1fr;align-items:start;display:grid}.desk-status-pills{justify-content:start}}:root{--cw-amber:#c28a2e;--cw-bg:#f3f5f1;--cw-border:#d9dfd7;--cw-border-strong:#b8c6bc;--cw-danger:#a23f33;--cw-forest:#275f52;--cw-forest-dark:#173f38;--cw-ink:#1e2930;--cw-ink-soft:#516066;--cw-paper:#fffdf8;--cw-paper-muted:#f8faf5;--cw-sky:#386f8f;--cw-terracotta:#b65632;color:var(--cw-ink);background:var(--cw-bg)}body{background:linear-gradient(180deg, #fffdf8b8, #f3f5f100 15rem), var(--cw-bg)}.app-shell{max-width:none;min-height:100vh;padding:1rem}.chunkwise-app{gap:1rem;min-height:calc(100vh - 2rem);display:grid}.auth-gate{align-items:center;min-height:calc(100vh - 2rem);padding:clamp(1rem,4vw,3rem);display:grid}.auth-gate-card{background:var(--cw-paper);border:1px solid var(--cw-border);border-radius:8px;justify-self:center;gap:1.25rem;width:min(100%,29rem);max-width:29rem;padding:clamp(1.2rem,3vw,2rem);display:grid;box-shadow:0 24px 70px #1e29301f}.auth-gate-loading .auth-gate-card{text-align:center;justify-items:center}.auth-gate-mark{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.auth-gate-brand-lockup{align-items:center;gap:.65rem;min-width:0;display:inline-flex}.auth-gate-logo{width:3.15rem;height:auto;display:block}.auth-gate-brand{color:var(--cw-ink);font-size:clamp(1.45rem,5vw,1.9rem);font-weight:900;line-height:1}.auth-gate-lock{color:var(--cw-forest);background:#edf4ef;border:1px solid #cbd9cf;border-radius:999px;flex:none;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:inline-flex}.auth-gate-copy{gap:.45rem;display:grid}.auth-gate-copy h1{color:var(--cw-ink);margin:0;font-size:1.65rem;line-height:1.1}.auth-gate-copy p{color:var(--cw-ink-soft);margin:0;line-height:1.45}.auth-gate-form{gap:.75rem;display:grid}.auth-gate-form .cw-button{justify-content:center;min-height:2.7rem}.auth-gate-status-stack{gap:.45rem;display:grid}.auth-gate-status,.auth-gate-error{color:var(--cw-ink-soft);margin:0;font-size:.9rem}.auth-gate-error{color:#6b3a16;background:#fff8eb;border:1px solid #e2b35c;border-radius:8px;padding:.65rem .75rem}.app-header{background:var(--cw-paper);border:1px solid var(--cw-border);border-radius:8px;grid-template-columns:minmax(13rem,.5fr) minmax(18rem,.7fr) minmax(28rem,.95fr);align-items:center;gap:1rem;padding:.9rem;display:grid;box-shadow:0 18px 45px #1e29300f}.save-feedback-toast{color:#17372f;z-index:30;background:#fbfcf8;border:1px solid #b8d0c7;border-radius:8px;justify-self:end;align-items:center;gap:.55rem;min-height:2.55rem;padding:.65rem .85rem;font-size:.9rem;font-weight:850;display:inline-flex;position:fixed;bottom:1.2rem;right:1.2rem;box-shadow:0 14px 34px #1e293029}.save-feedback-toast-success .button-icon{color:#1f6f5b}.save-feedback-toast-error{color:#6b3a16;background:#fff8eb;border-color:#e2b35c}.save-feedback-toast-error .button-icon{color:#a23f33}.brand-lockup{align-items:center;min-width:0;display:flex}.brand-title{align-items:center;gap:.65rem;margin:0;line-height:1;display:inline-flex}.brand-mark{width:3.1rem;height:auto;display:block}.page-title{color:var(--cw-ink);font-size:clamp(1.5rem,2.1vw,2rem)}.workspace-search{align-content:center;min-width:0}.workspace-search-control{border:1px solid var(--cw-border);background:#f8faf5;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.45rem;padding:.35rem;display:grid}.workspace-search-input{appearance:none;color:var(--cw-ink);font:inherit;background:0 0;border:0;width:100%;min-width:0;min-height:2.2rem;padding:0 .45rem;font-weight:750}.workspace-search-input::placeholder{color:#7b8982}.workspace-search-input:focus-visible{outline-offset:2px;outline:3px solid #275f5229}.workspace-search-submit{background:var(--cw-forest);border:1px solid var(--cw-forest);color:#fff;cursor:pointer;border-radius:6px;justify-content:center;align-items:center;width:2.2rem;height:2.2rem;padding:0;transition:background .16s,border-color .16s,color .16s;display:inline-flex}.workspace-search-submit:disabled{color:#7b8982;cursor:not-allowed;background:#d8dfd9;border-color:#d8dfd9}.workspace-search-submit:not(:disabled):hover,.workspace-search-submit:not(:disabled):focus-visible{background:var(--cw-forest-dark);border-color:var(--cw-forest-dark);outline:none}.workspace-search-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.25px;width:1rem;height:1rem}.subtitle{color:var(--cw-ink-soft);max-width:44rem}.eyebrow{color:var(--cw-terracotta)}.cloud-sync-panel{box-shadow:none;background:0 0;border:0;grid-template-columns:minmax(0,1fr);place-items:center end;width:100%;max-width:none;padding:0}.cloud-sync-status{color:var(--cw-ink-soft)}.cloud-sync-mobile-status{display:none}.cloud-sync-form{width:100%}.cloud-sync-panel .cw-field{gap:.2rem}.cloud-sync-panel .cw-input,.cloud-sync-panel .cw-button{min-height:2.25rem}.cloud-sync-panel .cw-button{white-space:nowrap;min-width:5.4rem}.app-frame{grid-template-columns:11.5rem minmax(0,1fr);align-items:start;gap:1rem;display:grid}.app-sidebar{color:#fff;background:#1d2b2f;border:1px solid #ffffff14;border-radius:8px;align-content:start;gap:.9rem;min-height:calc(100vh - 7.2rem);padding:.75rem;display:grid;position:sticky;top:1rem;box-shadow:0 18px 42px #1e293029}.app-sidebar .workspace-mode-tabs{background:0 0;border:0;border-radius:0;gap:.35rem;padding:0;display:grid}.app-sidebar .workspace-mode-tab{color:#ffffffc2;border-color:#0000;justify-content:flex-start;align-items:center;width:100%;min-height:2.65rem;padding:.55rem .65rem;display:flex}.app-sidebar .workspace-mode-tab:hover,.app-sidebar .workspace-mode-tab:focus-visible{color:#fff;background:#ffffff14;border-color:#ffffff1f}.app-sidebar .workspace-mode-tab-active{color:var(--cw-forest-dark);background:#e9f1eb;border-color:#e9f1eb}.piece-workspace{gap:.9rem;min-width:0}.workspace-header{border-color:var(--cw-border);background:#fffdf8db;box-shadow:0 10px 28px #1e29300d}.workspace-title{color:var(--cw-ink);font-size:1.35rem;font-weight:900}.workspace-focus-line{color:var(--cw-ink-soft)}.workspace-mode-pill{background:var(--cw-forest-dark)}.workspace-header-actions{align-items:center;min-width:0}.primary-action,.quiet-button,.icon-button,.text-button{appearance:none;cursor:pointer;font:inherit;border-radius:8px;justify-content:center;align-items:center;gap:.45rem;font-weight:850;display:inline-flex}.button-icon{flex:none;width:1rem;height:1rem}.primary-action{background:var(--cw-forest);border:1px solid var(--cw-forest);color:#fff;min-height:2.55rem;padding:.65rem .95rem}.primary-action:hover,.primary-action:focus-visible,.quiet-button:hover,.quiet-button:focus-visible,.icon-button:hover,.icon-button:focus-visible,.text-button:hover,.text-button:focus-visible{outline-offset:1px;outline:3px solid #275f5229}.quiet-button{background:var(--cw-paper);border:1px solid var(--cw-border-strong);color:var(--cw-forest-dark);min-height:2.35rem;padding:.5rem .75rem}.quiet-button:disabled{cursor:not-allowed;opacity:.55}.quiet-button-secondary{color:var(--cw-ink-soft)}.icon-button{background:var(--cw-paper);border:1px solid var(--cw-border);color:var(--cw-ink);width:2.15rem;min-width:2.15rem;height:2.15rem;min-height:2.15rem;padding:0}.icon-button-danger{color:var(--cw-danger);border-color:#a23f3347}.text-button{color:var(--cw-forest);background:0 0;border:0;justify-self:start;min-height:1.8rem;padding:0}.danger-text-button{appearance:none;color:#f3b7ad;cursor:pointer;font:inherit;background:0 0;border:0;border-radius:6px;justify-self:start;align-items:center;gap:.4rem;min-height:1.8rem;padding:.15rem 0;font-size:.86rem;font-weight:850;display:inline-flex}.danger-text-button:hover,.danger-text-button:focus-visible{color:#fff;outline-offset:2px;outline:3px solid #a23f3338}.inline-info{align-items:center;gap:.4rem;display:flex}.info-popover{position:relative}.info-popover summary{border:1px solid var(--cw-border-strong);color:var(--cw-forest-dark);cursor:pointer;background:#edf2ed;border-radius:999px;place-items:center;width:1.7rem;height:1.7rem;font-size:.82rem;font-weight:950;list-style:none;display:grid}.info-popover summary::-webkit-details-marker{display:none}.info-popover-content{color:#fff;z-index:8;background:#1d2b2f;border:1px solid #ffffff29;border-radius:8px;width:min(18rem,80vw);padding:.75rem;font-size:.84rem;font-weight:650;line-height:1.45;position:absolute;top:calc(100% + .45rem);right:0;box-shadow:0 18px 42px #1e293038}.dashboard-workspace{gap:.9rem;display:grid}.dashboard-library{background:var(--cw-paper);border:1px solid var(--cw-border);border-radius:8px;box-shadow:0 12px 30px #1e29300d}.section-subtitle,.dashboard-empty-copy{color:var(--cw-ink-soft);margin:0;line-height:1.45}.dashboard-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;display:grid}.dashboard-metric{background:var(--cw-paper);border:1px solid var(--cw-border);border-radius:8px;gap:.25rem;min-height:5rem;padding:.85rem;display:grid}.dashboard-metric span,.piece-card-kicker,.piece-card-intel span,.dashboard-chunk-popover-header span,.section-count{color:var(--cw-ink-soft)}.dashboard-metric span,.piece-card-kicker,.piece-card-intel span,.dashboard-chunk-popover-header span,.dashboard-chunk-popover-stats dt,.dashboard-session-tray-summary span{text-transform:uppercase;font-size:.76rem;font-weight:900}.dashboard-metric strong{color:var(--cw-ink);font-size:1.45rem;line-height:1}.reports-workspace{gap:.85rem;display:grid}.reports-control-row{justify-content:flex-end;align-items:center;display:flex}.report-range-tabs{border:1px solid var(--cw-border);background:#fbfcf8;border-radius:8px;gap:.25rem;padding:.25rem;display:flex}.report-range-tab{appearance:none;color:var(--cw-ink-soft);cursor:pointer;background:0 0;border:0;border-radius:6px;min-height:2rem;padding:0 .65rem;font-size:.83rem;font-weight:850}.report-range-tab:hover,.report-range-tab:focus-visible,.report-range-tab-active{color:#fff;background:#244f46;outline:none}.report-summary-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:.7rem;display:grid}.reports-main-grid{grid-template-columns:minmax(0,1.2fr) minmax(18rem,.8fr);align-items:start;gap:.85rem;display:grid}.reports-column{align-content:start;gap:.85rem;min-width:0;display:grid}.report-panel{background:var(--cw-paper);border:1px solid var(--cw-border);border-radius:8px;align-self:start;gap:.75rem;min-width:0;padding:.9rem;display:grid;box-shadow:0 12px 30px #1e29300d}.report-target-list,.report-piece-list,.recent-attempt-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.report-target-item{background:#fbfcf8;border:1px solid #d7ded8;border-radius:8px;grid-template-columns:2rem minmax(0,1fr) auto auto;align-items:center;gap:.65rem;min-height:4rem;padding:.65rem;display:grid}.report-target-item-active{background:#eef6f1;border-color:#91b7a3;box-shadow:inset 3px 0 #4f8f70}.report-target-rank{color:#6d4c2c;background:#efe8da;border-radius:999px;justify-content:center;align-items:center;width:2rem;height:2rem;font-size:.8rem;font-weight:900;display:inline-grid}.report-target-main{appearance:none;cursor:pointer;text-align:left;background:0 0;border:0;gap:.16rem;min-width:0;padding:0;display:grid}.report-target-main strong,.report-piece-main h3,.recent-attempt-list strong{color:var(--cw-ink);overflow-wrap:anywhere;margin:0;font-size:.94rem;line-height:1.2}.report-target-main:hover strong,.report-target-main:focus-visible strong{color:#2f7657;text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:2px}.report-target-main:focus-visible{outline:none}.report-target-main span,.report-target-stats,.report-piece-main span,.report-piece-stats,.recent-attempt-list span{color:var(--cw-ink-soft);font-size:.82rem;font-weight:750;line-height:1.3}.report-target-stats,.report-piece-stats{white-space:nowrap;place-items:end;gap:.18rem;display:grid}.report-trend-chart{gap:.7rem;min-width:0;display:grid}.report-trend-summary{color:var(--cw-ink-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.45rem .8rem;font-size:.78rem;font-weight:850;display:flex}.report-trend-recharts{background:linear-gradient(90deg,#17211d0a,#17211d03);border:1px solid #17211d14;border-radius:8px;min-width:0;height:17rem;padding:.5rem .35rem .25rem 0;overflow:hidden}.report-trend-tooltip{color:var(--cw-ink-soft);background:#fffdf8;border:1px solid #d7ded8;border-radius:8px;gap:.18rem;padding:.65rem .7rem;font-size:.78rem;font-weight:750;display:grid;box-shadow:0 14px 34px #1e293024}.report-trend-tooltip strong{color:var(--cw-ink);font-size:.84rem}.report-piece-item{background:#fbfcf8;border:1px solid #d7ded8;border-radius:8px;grid-template-columns:minmax(14rem,1fr) auto minmax(10rem,auto);align-items:center;gap:.75rem;padding:.75rem;display:grid}.report-piece-main{gap:.4rem;min-width:0;display:grid}.recent-attempts-panel{margin-top:.85rem}.recent-attempt-list li{background:#fbfcf8;border:1px solid #d7ded8;border-radius:8px;gap:.16rem;padding:.55rem .65rem;display:grid}.report-chunk-detail{gap:.7rem;display:grid}.report-chunk-focus-actions{justify-content:end;align-items:center;gap:.35rem;display:flex}.report-chunk-focus-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;display:grid}.report-chunk-focus-metrics .dashboard-metric{min-height:3.8rem;padding:.55rem .6rem}.report-chunk-focus-metrics .dashboard-metric strong{font-size:clamp(.95rem,1.2vw,1.1rem)}.report-chunk-focus-panel .report-trend-recharts{height:13.5rem}.report-chunk-focus-panel .cw-history-list{max-height:18rem;padding-right:.15rem;overflow:auto}.report-chunk-detail-title{background:#fbfcf8;border:1px solid #d7ded8;border-radius:8px;justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem .75rem;display:flex}.report-chunk-detail-title strong{color:var(--cw-ink);overflow-wrap:anywhere}.report-chunk-detail-title span{color:var(--cw-ink-soft);white-space:nowrap;font-size:.82rem;font-weight:750}.dashboard-library{gap:.8rem;padding:.9rem;display:grid}.dashboard-filter-group{align-content:start;gap:.4rem;min-width:0;display:grid}.dashboard-filter-label{color:var(--cw-ink-soft);text-transform:uppercase;font-size:.72rem;font-weight:900;line-height:1}.dashboard-filter-options,.dashboard-active-filters{flex-wrap:wrap;align-items:center;gap:.35rem;min-width:0;display:flex}.dashboard-filter-menu{position:relative}.dashboard-filter-menu[open] .dashboard-filter-trigger{color:#24583f;background:#dfeee3;border-color:#9bc5a7}.dashboard-filter-trigger{color:#24443b;cursor:pointer;background:#fffffb;border:1px solid #c6d4c9;border-radius:8px;align-items:center;gap:.4rem;min-height:2.3rem;padding:.58rem .74rem;font-size:.9rem;font-weight:850;line-height:1;list-style:none;display:inline-flex}.dashboard-filter-trigger::-webkit-details-marker{display:none}.dashboard-filter-trigger:hover,.dashboard-filter-trigger:focus-visible{outline-offset:1px;border-color:#8bb69d;outline:2px solid #2f76572e}.dashboard-filter-count{color:#fff;background:#2f7657;border-radius:999px;justify-content:center;align-items:center;min-width:1.1rem;height:1.1rem;padding:0 .25rem;font-size:.72rem;font-weight:900;display:inline-flex}.dashboard-filter-menu-panel{z-index:18;background:#fffffb;border:1px solid #c8d9cd;border-radius:8px;gap:.85rem;width:min(27rem,100vw - 2rem);padding:.85rem;display:grid;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 18px 50px #1e293029}.dashboard-filter-search{min-height:2.25rem}.dashboard-filter-options-scroll{align-content:start;max-height:10.5rem;padding-right:.1rem;overflow:auto}.dashboard-filter-chip,.dashboard-active-filter-chip{appearance:none;color:#44524c;cursor:pointer;font:inherit;background:#fffffb;border:1px solid #d2dccf;border-radius:999px;align-items:center;gap:.3rem;min-height:1.9rem;padding:.38rem .62rem;font-size:.78rem;font-weight:850;line-height:1;display:inline-flex}.dashboard-filter-chip:hover,.dashboard-filter-chip:focus-visible,.dashboard-active-filter-chip:hover,.dashboard-active-filter-chip:focus-visible{outline-offset:1px;border-color:#8bb69d;outline:2px solid #2f76572e}.dashboard-filter-chip-active,.dashboard-active-filter-chip{color:#24583f;background:#dfeee3;border-color:#9bc5a7}.dashboard-filter-empty{color:var(--cw-ink-soft);font-size:.86rem;line-height:1.35}.dashboard-active-filters{background:#f6f8f2;border:1px solid #dfe6d9;border-radius:8px;padding:.55rem}.dashboard-active-filter-chip .button-icon{width:.9rem;height:.9rem}.dashboard-filter-menu-actions{border-top:1px solid #dfe6d9;justify-content:flex-end;align-items:center;padding-top:.7rem;display:flex}.piece-dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,28rem),1fr));gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.piece-dashboard-card{border:1px solid var(--cw-border);background:#fbfcf7;border-radius:8px;gap:.7rem;padding:.75rem;display:grid}.piece-dashboard-card-selected{border-color:var(--cw-forest);box-shadow:inset 4px 0 0 var(--cw-forest)}.piece-card-top{grid-template-columns:minmax(0,1fr) minmax(5.5rem,auto);align-items:start;gap:.75rem;display:grid}.piece-card-select{appearance:none;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;gap:.25rem;padding:0;display:grid}.piece-card-select:hover h2,.piece-card-select:focus-visible h2{color:#2f7657}.piece-card-select:focus-visible{outline-offset:3px;border-radius:6px;outline:3px solid #2f76572e}.piece-card-select h2{color:var(--cw-ink);overflow-wrap:anywhere;margin:0;font-size:1.15rem;line-height:1.15}.piece-card-select>span:not(.piece-card-kicker):not(.piece-tag-list){color:var(--cw-ink-soft);font-size:.88rem;line-height:1.35}.piece-card-match-context{background:#f2f6ef;border:1px solid #dbe7d8;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.45rem;padding:.55rem .6rem;display:grid}.piece-card-match-context>span{color:#596961;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;padding-top:.18rem;font-size:.68rem;font-weight:950;line-height:1.45}.piece-card-match-context>div{flex-wrap:wrap;align-items:center;gap:.35rem;min-width:0;display:flex}.piece-card-match-chip{background:#fbfcf7;border:1px solid #d1dfd2;border-radius:999px;align-items:center;gap:.3rem;min-width:0;max-width:100%;min-height:1.75rem;padding:.22rem .45rem .22rem .55rem;display:inline-flex}.piece-card-match-chip>strong{color:var(--cw-ink);text-overflow:ellipsis;white-space:nowrap;max-width:8.5rem;font-size:.78rem;line-height:1;overflow:hidden}.piece-card-match-chip .piece-tag-list{flex-wrap:nowrap;gap:.22rem;max-width:8.5rem;margin-top:0;overflow:hidden}.piece-card-match-chip .piece-tag-chip{max-width:5.8rem;min-height:1.25rem;padding:.2rem .36rem}.piece-card-match-overflow{color:#42504a;background:#e7ebe4;border:1px solid #cdd7cf;border-radius:999px;align-items:center;min-height:1.55rem;padding:0 .45rem;font-size:.72rem;font-weight:950;display:inline-flex}.piece-heatmap{grid-template-columns:repeat(7,.72rem);place-content:start end;justify-self:end;gap:.22rem;max-width:6.45rem;padding-top:.05rem;display:grid}.piece-heatmap-empty{color:var(--cw-ink-soft);text-transform:uppercase;white-space:nowrap;place-self:start end;font-size:.74rem;font-weight:850;line-height:1}.piece-heatmap-cell{appearance:none;aspect-ratio:1;cursor:pointer;border:1px solid #0000;border-radius:2px;place-items:center;width:.72rem;min-width:0;height:.72rem;min-height:0;padding:0;display:grid;position:relative}.piece-heatmap-cell:hover,.piece-heatmap-cell:focus-visible{outline-offset:2px;outline:2px solid #18231f38;transform:translateY(-1px)}.piece-heatmap-cell-never{background:#f2f0e8;border-color:#d8d0c1}.piece-heatmap-cell-attention{background:#cc6659;border-color:#a94a41}.piece-heatmap-cell-stale{background:#d6aa54;border-color:#b58a35}.piece-heatmap-cell-steady{background:#8fb59a;border-color:#6c9578}.piece-heatmap-cell-strong{background:#31785b;border-color:#245e47}.piece-heatmap-cell-type{color:#fff;font-size:.42rem;font-weight:950;line-height:1}.piece-heatmap-cell-never .piece-heatmap-cell-type{color:#756d61}.piece-heatmap-cell-selected{pointer-events:none;border:1px solid #18231f;border-radius:2px;position:absolute;inset:-3px}.piece-heatmap-overflow{color:#42504a;background:#e7ebe4;border:1px solid #cdd7cf;border-radius:999px;justify-content:center;align-items:center;min-width:1.1rem;height:.72rem;padding:0 .18rem;font-size:.58rem;font-weight:900;line-height:1;display:inline-flex}.piece-card-intel{border-top:1px solid var(--cw-border);grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;padding-top:.65rem;display:grid}.piece-card-intel div{gap:.2rem;min-width:0;display:grid}.piece-card-intel strong{color:var(--cw-ink);overflow-wrap:anywhere;font-size:.92rem;line-height:1.25}.piece-card-chunk-role{color:#315443;background:#dbe8dd;border:1px solid #bad1c1;border-radius:999px;flex:none;padding:.28rem .42rem;font-size:.66rem;line-height:1}.piece-heatmap-shell{justify-self:end;position:relative}.dashboard-chunk-popover{z-index:12;background:#fffffb;border:1px solid #c8d9cd;border-radius:8px;gap:.65rem;width:min(19rem,78vw);padding:.7rem;display:grid;position:absolute;top:calc(100% + .55rem);right:0;box-shadow:0 18px 50px #1e29302e}.dashboard-chunk-popover:before{content:"";background:#fffffb;border-top:1px solid #c8d9cd;border-left:1px solid #c8d9cd;width:.7rem;height:.7rem;position:absolute;top:-.4rem;right:1.1rem;transform:rotate(45deg)}.dashboard-chunk-popover-header{justify-content:space-between;align-items:start;gap:.75rem;display:flex}.dashboard-chunk-popover-header div{gap:.18rem;min-width:0;display:grid}.dashboard-chunk-popover-header strong{color:var(--cw-ink);overflow-wrap:anywhere;font-size:1rem;line-height:1.2}.dashboard-chunk-popover-tags{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.dashboard-chunk-popover-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;margin:0;display:grid}.dashboard-chunk-popover-stats div{gap:.12rem;min-width:0;display:grid}.dashboard-chunk-popover-stats dt{color:var(--cw-ink-soft)}.dashboard-chunk-popover-stats dd{color:var(--cw-ink);overflow-wrap:anywhere;margin:0;font-size:.86rem;font-weight:850}.dashboard-chunk-popover-actions,.dashboard-session-tray-actions,.dashboard-session-modal-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.45rem;display:flex}.dashboard-session-tray{z-index:20;background:#fffffb;border:1px solid #c8d9cd;border-radius:8px;grid-template-columns:minmax(8rem,.8fr) minmax(14rem,1fr) auto;align-items:center;gap:.7rem;width:max-content;max-width:min(58rem,100vw - 2rem);padding:.7rem;display:grid;position:fixed;bottom:1rem;left:50%;transform:translate(-50%);box-shadow:0 18px 55px #1e293033}.dashboard-session-tray-summary{gap:.12rem;min-width:0;display:grid}.dashboard-session-tray-summary strong{color:var(--cw-ink);font-size:1rem}.dashboard-session-tray-chunks{flex-wrap:wrap;align-items:center;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.dashboard-session-tray-chunks li{color:var(--cw-ink);background:#f1f7f0;border:1px solid #d0ded4;border-radius:999px;align-items:center;gap:.18rem;min-height:1.9rem;padding:.15rem .22rem .15rem .55rem;font-size:.78rem;font-weight:850;display:inline-flex}.dashboard-session-tray-chunks .icon-button{width:1.45rem;height:1.45rem;min-height:1.45rem}.dashboard-session-modal{width:min(100%,42rem);max-width:42rem}.piece-card-actions{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.piece-card-actions .icon-button{margin-left:0}.piece-card-actions .quiet-button+.icon-button{margin-left:auto}.dashboard-empty-state{border:1px dashed var(--cw-border-strong);color:var(--cw-ink-soft);background:#fbfcf7;border-radius:8px;place-items:center start;gap:.5rem;min-height:9rem;padding:1rem;display:grid}.dashboard-empty-state strong{color:var(--cw-ink);font-size:1.1rem}.builder-workspace-grid,.practice-workspace-grid,.history-workspace-grid{gap:.9rem}.builder-workspace-grid{grid-template-columns:minmax(12rem,.54fr) minmax(30rem,1.72fr) minmax(18rem,.8fr)}.practice-workspace-grid{grid-template-columns:minmax(12rem,.52fr) minmax(30rem,1.56fr) minmax(17rem,.74fr)}.history-workspace-grid{grid-template-columns:minmax(12rem,.52fr) minmax(28rem,1.48fr) minmax(18rem,.78fr)}.notation-duration-button-row{flex-wrap:wrap}.workspace-rail,.workspace-inspector{max-height:calc(100vh - 8.25rem);top:1rem}.rail-group,.desk-surface,.inspector-tool-section,.builder-desk,.practice-stage,.review-stage{border-color:var(--cw-border);background:#fffdf8c7}.builder-desk,.practice-stage,.review-stage{box-shadow:0 14px 34px #1e29300f}.desk-header,.practice-target-bar,.review-focus-card{background:#20343a}.desk-header .eyebrow,.practice-target-bar .eyebrow,.review-focus-card .eyebrow{color:#a9c8bc}.desk-status-pills span{background:#ffffff1a}.desk-status-pill-button{appearance:none;color:#fff;cursor:pointer;font:inherit;background:#ffffff1a;border:1px solid #ffffff2e;border-radius:999px;min-height:1.9rem;padding:.3rem .5rem;font-size:.78rem;font-weight:850}.desk-status-pill-button:hover,.desk-status-pill-button:focus-visible{outline-offset:1px;background:#ffffff2e;outline:3px solid #ffffff29}.panel,.score-viewer-panel,.score-region-excerpt-panel,.structured-notation-panel,.notation-staff,.score-image-stage{border-color:var(--cw-border)}.builder-action-panel{border-color:var(--cw-border);background:#edf2ed}.builder-action-button{background:var(--cw-paper);border-color:var(--cw-border);color:var(--cw-ink-soft)}.builder-action-button[aria-pressed=true]{background:var(--cw-forest);border-color:var(--cw-forest)}.score-region-overlay,.notation-hit-target-selected{border-color:var(--cw-forest)}.score-region-overlay-selected,.notation-hit-target-in-range{border-color:var(--cw-terracotta)}.piece-modal-backdrop{z-index:30;background:#1e293061;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.piece-modal{background:var(--cw-paper);border:1px solid var(--cw-border);border-radius:8px;gap:.75rem;width:min(100%,32rem);max-width:32rem;max-height:calc(100vh - 2rem);padding:.85rem;display:grid;overflow:auto;box-shadow:0 30px 80px #1e293047}.piece-modal-chrome{justify-content:space-between;align-items:start;gap:1rem;display:flex}.piece-modal-chrome h2{color:var(--cw-ink);margin:0;font-size:1.35rem}.piece-modal .piece-form{box-shadow:none;border:0;padding:0}.practice-mode-modal{width:min(100%,44rem);max-width:44rem}.practice-mode-manager{grid-template-columns:minmax(12rem,.8fr) minmax(0,1.2fr);gap:.8rem;display:grid}.practice-mode-list-panel,.practice-mode-form{gap:.6rem;min-width:0;display:grid}.practice-mode-new-button{width:100%}.practice-mode-list{gap:.4rem;max-height:20rem;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.practice-mode-list-button{appearance:none;border:1px solid var(--cw-border);color:var(--cw-ink);cursor:pointer;text-align:left;background:#fbfcf8;border-radius:8px;gap:.15rem;width:100%;padding:.55rem .65rem;display:grid}.practice-mode-list-button strong{font-size:.9rem}.practice-mode-list-button span{color:var(--cw-muted);text-transform:uppercase;font-size:.72rem;font-weight:800}.practice-mode-list-button[aria-pressed=true]{box-shadow:inset 3px 0 0 var(--cw-forest);background:#edf5ef;border-color:#9bb1a6}.practice-mode-actions{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.piece-modal-danger{border-top:1px solid var(--cw-border);justify-content:flex-start;padding-top:.7rem;display:flex}.piece-score-attachments{border-top:1px solid var(--cw-border);gap:.65rem;padding-top:.75rem;display:grid}.piece-score-attachments h3{color:var(--cw-ink);margin:0;font-size:.98rem}.piece-score-attachment-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.piece-score-attachment-list li{border:1px solid var(--cw-border);background:#fbfcf7;border-radius:8px;justify-content:space-between;align-items:center;gap:.75rem;min-width:0;padding:.6rem .7rem;display:flex}.piece-score-attachment-list div{gap:.18rem;min-width:0;display:grid}.piece-score-attachment-list a{color:var(--cw-ink);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:.35rem;font-size:.92rem;font-weight:850;display:inline-flex;overflow:hidden}.piece-score-attachment-list span{color:var(--cw-muted);font-size:.78rem;font-weight:750}.piece-score-attachment-list a span{color:inherit;font-size:inherit;font-weight:inherit;text-overflow:ellipsis;overflow:hidden}.piece-modal-danger .danger-text-button{color:var(--cw-danger)}.piece-modal-danger .danger-text-button:hover,.piece-modal-danger .danger-text-button:focus-visible{color:#7d2e26}.practice-log-panel{gap:.75rem;display:grid}.practice-log-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.practice-log-item{border:1px solid var(--cw-border);background:#fbfcf7;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:.55rem;padding:.75rem;display:grid}.practice-log-item div{gap:.18rem;min-width:0;display:grid}.practice-log-item strong{color:var(--cw-ink);overflow-wrap:anywhere;font-size:.9rem}.practice-log-chunk-button{appearance:none;color:var(--cw-ink);cursor:pointer;overflow-wrap:anywhere;text-align:left;background:0 0;border:0;padding:0;font-size:.9rem;font-weight:850;line-height:1.2}.practice-log-chunk-button:hover,.practice-log-chunk-button:focus-visible{color:#2f7657;text-underline-offset:3px;outline:none;text-decoration:underline;text-decoration-thickness:2px}.practice-log-item span{color:var(--cw-ink-soft);font-size:.82rem;font-weight:750}.practice-log-note{color:#33423c;white-space:pre-wrap;background:#f6f8f4;border-left:3px solid #84b59e;grid-column:1/-1;margin:.1rem 0 0;padding:.45rem .6rem;font-size:.88rem;line-height:1.45}@media (max-width:1180px){.app-header,.app-frame,.builder-workspace-grid,.practice-workspace-grid,.sessions-workspace-grid,.history-workspace-grid,.reports-main-grid{grid-template-columns:1fr}.app-sidebar{min-height:0;position:static}.app-sidebar .workspace-mode-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}.workspace-rail,.workspace-inspector{max-height:none;position:static;overflow:visible}.save-feedback-toast{bottom:1rem;right:1rem}}@media (max-width:760px){html{background:#eef2ef}body{min-height:100dvh}.app-shell{padding:.55rem}.app-header,.dashboard-metrics,.report-summary-grid,.piece-dashboard-grid,.piece-card-top,.piece-card-match-context,.piece-card-intel,.report-target-item,.report-piece-item,.dashboard-chunk-popover-stats,.dashboard-session-tray,.cloud-sync-panel,.cloud-sync-form,.practice-mode-manager,.session-plan-form-grid,.session-plan-item,.active-session-queue,.practice-log-session-header{grid-template-columns:1fr}.app-sidebar .workspace-mode-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.app-sidebar .workspace-mode-tab{justify-content:center;min-height:2.45rem;padding:.45rem}.app-sidebar .workspace-mode-tab[data-workspace-mode=builder],.app-sidebar .workspace-mode-tab[data-workspace-mode=sessions],.app-sidebar .workspace-mode-tab[data-workspace-mode=reports],.app-sidebar .workspace-mode-tab[data-workspace-mode=settings]{display:none}.app-header{grid-template-columns:minmax(0,1fr) auto;gap:.55rem;padding:.7rem}.brand-mark{width:2.25rem}.page-title{font-size:1.35rem}.workspace-search{display:none}.cloud-sync-panel{justify-items:end}.cloud-sync-status-stack{max-width:11rem}.cloud-sync-status{text-align:right;font-size:.76rem}.cloud-sync-mobile-status{color:var(--cw-ink-soft);text-align:right;margin:0;font-size:.76rem;font-weight:750;display:block}.cloud-sync-signed-in{gap:.35rem}.cloud-account-summary>div>span{display:none}.cloud-account-summary strong{font-size:.76rem}.cloud-sync-actions .cw-button{min-width:auto;min-height:2rem;padding:.4rem .55rem}.chunkwise-app-practice .workspace-header,.chunkwise-app-practice .practice-queue-rail{display:none}.chunkwise-app-practice .practice-settings-rail{order:3;display:grid}.chunkwise-app-practice .practice-stage{order:1;display:grid}.chunkwise-app-practice .practice-settings-rail .inspector-tool-section:first-child{display:none}.mobile-practice-picker{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.55rem;display:grid}.mobile-practice-picker .cw-input{min-height:2.5rem}.chunkwise-app-practice .desk-header{grid-template-columns:minmax(0,1fr);align-items:start;gap:.55rem}.chunkwise-app-practice .desk-header .eyebrow,.chunkwise-app-practice .desk-status-pills{display:none}.practice-timer-panel{order:2}.practice-notation-preview{order:3}.chunkwise-app-practice .cw-practice-panel{border-radius:10px}.chunkwise-app-practice .cw-practice-header{align-items:center}.chunkwise-app-practice .cw-practice-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.chunkwise-app-practice .cw-feel-rating{grid-column:1/-1}.chunkwise-app-practice .cw-feel-rating-buttons{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.chunkwise-app-practice .cw-feel-rating-button{width:100%}.chunkwise-app-practice .practice-settings-rail .recent-attempts-panel{max-height:20rem;overflow:auto}.reports-control-row{justify-content:stretch}.report-range-tabs{width:100%;overflow-x:auto}.report-range-tab{flex:1 0 auto}.report-trend-panel,.report-piece-progress-panel,.report-chunk-focus-panel,.report-needs-work{grid-area:auto}.report-chunk-focus-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.report-target-stats,.report-piece-stats{justify-items:start}.report-chunk-detail-title{align-items:start;display:grid}.report-chunk-detail-title span{white-space:normal}.piece-heatmap,.piece-heatmap-empty,.piece-heatmap-shell{justify-self:start}.dashboard-filter-menu{position:static}.dashboard-filter-menu-panel{z-index:26;width:auto;position:fixed;top:7.5rem;left:.75rem;right:.75rem}.dashboard-chunk-popover{z-index:28;width:auto;position:fixed;inset:auto .75rem .75rem}.dashboard-chunk-popover:before{display:none}.dashboard-session-tray{justify-items:stretch;width:auto;max-width:none;bottom:.75rem;left:.75rem;right:.75rem;transform:none}.dashboard-session-tray-actions,.dashboard-session-modal-actions,.session-plan-item-meta,.session-plan-item-actions,.practice-log-session-header{justify-content:start}.session-plan-list-item{grid-template-columns:minmax(0,1fr) auto}.session-plan-list-item>button:first-child{grid-column:1/-1}.cloud-sync-form{justify-self:stretch;width:100%;display:grid}.score-upload-selected{grid-template-columns:1fr;justify-items:start}.save-feedback-toast{bottom:.85rem;left:.85rem;right:.85rem}}
