:root{--bg:#f2ebdd;--panel:#fff;--ink:#2b1e14;--muted:#6a6559;--line:#2b1e141a;--line2:#2b1e142e;--accent:#9a5217;--accent-soft:#f4e2cb;--accent-bright:#b5651d;--green:#5e6c52;--green-soft:#e6eae1;--red:#a3402f;--red-soft:#f7e9e5;--notation-faint:#9c978c;--notation-ghost:#b4ae9f;--notation-wash:#9a521717;--emphasis-bg:#2b1e14;--emphasis-ink:#f2ebdd;--serif:var(--font-serif), Georgia, serif;--sans:var(--font-sans), system-ui, -apple-system, sans-serif}@media (prefers-color-scheme:dark){html[data-theme=system]{--bg:#17140f;--panel:#211c15;--ink:#ece6da;--muted:#9c9384;--line:#ece6da17;--line2:#ece6da2e;--accent:#e3a268;--accent-soft:#b5651d2e;--accent-bright:#b5651d;--green:#85937a;--green-soft:#85937a26;--red:#d98c7a;--red-soft:#d98c7a26;--notation-faint:#7a7266;--notation-ghost:#605749;--notation-wash:#e3a2681a}}html[data-theme=dark]{--bg:#17140f;--panel:#211c15;--ink:#ece6da;--muted:#9c9384;--line:#ece6da17;--line2:#ece6da2e;--accent:#e3a268;--accent-soft:#b5651d2e;--accent-bright:#b5651d;--green:#85937a;--green-soft:#85937a26;--red:#d98c7a;--red-soft:#d98c7a26;--notation-faint:#7a7266;--notation-ghost:#605749;--notation-wash:#e3a2681a}*{box-sizing:border-box;margin:0}html,body{padding:0}body{background:var(--bg);min-height:100vh;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}button{font-family:inherit}a{color:inherit}button:focus-visible,a:focus-visible,[role=button]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:inherit}@media (forced-colors:active){button:focus-visible,a:focus-visible,[role=button]:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid highlight}}.serif{font-family:var(--serif)}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:10.5px;font-weight:600;display:block}.eyebrow.warn,.eyebrow.rec{color:var(--red)}.sub{color:var(--muted);font-size:13px}.hint{color:var(--muted);margin:14px 0 0;font-size:12.5px}.top{border-bottom:1px solid var(--line);background:var(--bg);z-index:5;justify-content:space-between;align-items:center;padding:16px 28px;display:flex;position:sticky;top:0}.mark{font-family:var(--serif);flex-shrink:0;font-size:24px}.dot{color:var(--accent)}.top-right{flex-shrink:0;align-items:center;gap:16px;display:flex}.whomenu{position:relative}.whoami{cursor:pointer;align-items:center;list-style:none;display:flex}.whoami::-webkit-details-marker{display:none}.whomenu-panel{background:var(--panel);border:1px solid var(--line);z-index:20;border-radius:10px;flex-direction:column;gap:1px;min-width:160px;margin-top:8px;padding:6px;display:flex;position:absolute;top:100%;right:0;box-shadow:0 6px 20px #00000014}.whomenu-panel a,.whomenu-panel .linkbtn{color:var(--ink);text-align:left;border-radius:7px;width:100%;padding:8px 10px;font-size:13px;text-decoration:none}.whomenu-panel a:hover,.whomenu-panel .linkbtn:hover{background:var(--bg);color:var(--ink)}.whomenu-panel form{width:100%}.menuicon{flex-direction:column;justify-content:center;align-items:center;gap:4px;width:26px;height:26px;display:flex}.menuicon>span{background:var(--muted);border-radius:1px;width:17px;height:1.5px;transition:background .15s;display:block}.whoami:hover .menuicon>span{background:var(--ink)}.whoami:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.whomenu[open] .menuicon>span{background:var(--ink)}.feedbacktrigger{display:inline-flex;position:relative}.feedbacklink{cursor:pointer;color:var(--muted);font:inherit;background:0 0;border:0;padding:0;font-size:12.5px;font-weight:400;line-height:1}.feedbacklink:hover{color:var(--ink)}.feedbacktooltip{background:var(--panel);border:1px solid var(--line);width:190px;color:var(--ink);text-align:left;opacity:0;visibility:hidden;pointer-events:none;z-index:30;border-radius:8px;margin-top:10px;padding:9px 11px;font-size:12px;line-height:1.4;transition:opacity .15s,transform .15s;position:absolute;top:100%;right:0;transform:translateY(-4px);box-shadow:0 6px 20px #00000014}.feedbacktrigger:hover .feedbacktooltip,.feedbacktrigger:focus-within .feedbacktooltip{opacity:1;visibility:visible;transform:translateY(0)}.feedbackdialog{border:0;border-radius:12px;width:min(420px,100vw - 32px);padding:22px;box-shadow:0 12px 40px #00000029}.feedbackdialog::backdrop{background:#1c1b1859}.feedbackdialog .eyebrow{margin-bottom:14px;display:block}.feedbacktypes{gap:6px;margin-bottom:14px;display:flex}.feedbacktype{border:1px solid var(--line);background:var(--panel);color:var(--muted);cursor:pointer;border-radius:8px;flex:1;padding:7px 0;font-size:12.5px;font-weight:500}.feedbacktype.on{border-color:var(--ink);color:var(--ink);background:var(--bg)}.feedbackactions{justify-content:flex-end;align-items:center;gap:10px;margin-top:4px;display:flex}.feedbackthanks{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:10px 0;display:flex}.toggle{background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:3px;display:flex}.toggle button,.toggle a{cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:999px;padding:7px 18px;font-size:13px;font-weight:500;text-decoration:none;display:inline-block}.toggle button.on,.toggle a.on{background:var(--emphasis-bg);color:var(--emphasis-ink)}.linkbtn{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0;font-size:12.5px;font-weight:500;text-decoration:none}.linkbtn:hover{color:var(--ink)}.noidea-wrap{margin-top:14px}.noidea{border:1px dashed var(--line2);width:100%;color:var(--muted);cursor:pointer;text-align:center;background:0 0;border-radius:10px;padding:11px 16px;font-size:13.5px;font-weight:500}.noidea:hover:not(:disabled){border-color:var(--ink);color:var(--ink);background:var(--panel)}.noidea:disabled{opacity:.5;cursor:not-allowed}.noidea-note{text-align:center;margin:6px 0 0}.qplay{gap:8px;margin-bottom:6px;display:flex}.qplay .tool-go{flex:1}.qplay .ghosty{color:var(--ink);border:1px solid var(--line2);background:0 0}.qplay .ghosty:hover{border-color:var(--ink);background:var(--panel)}.qplay-note{margin:0 0 12px}.skel{background:var(--line);border-radius:6px;animation:1.4s ease-in-out infinite skel-pulse}.skel-title{width:200px;height:30px}.skel-tabs{gap:18px;margin:18px 0 22px;display:flex}.skel-tab{width:72px;height:14px}.skel-card{border:1px solid var(--line);border-radius:12px;margin-bottom:14px;padding:16px}.skel-line{height:12px;margin-bottom:10px}.skel-line:last-child{margin-bottom:0}.skel-w40{width:40%}.skel-w70{width:70%}.skel-w90{width:90%}@keyframes skel-pulse{0%,to{opacity:1}50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.skel{animation:none}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.settings-identity{align-items:center;gap:16px;margin-bottom:6px;display:flex}.settings-avatar{background:var(--accent-soft);width:56px;min-width:56px;height:56px;color:var(--accent);border-radius:50%;place-items:center;font-size:19px;font-weight:600;display:grid}.settings-identity-text{flex:1;min-width:0}.settings-name-input{width:100%;font:inherit;color:var(--ink);background:0 0;border:0;border-bottom:1px solid #0000;border-radius:0;margin:0 0 2px -1px;padding:2px 0 4px;font-size:20px;font-weight:600;display:block}.settings-name-input:hover{border-bottom-color:var(--line2)}.settings-name-input:focus-visible{border-bottom-color:var(--accent);outline:none}.settings-identity-meta{overflow-wrap:break-word;margin:0}.settings-section{border-top:1px solid var(--line);margin-top:30px;padding-top:20px}.settings-section-head{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:2px;display:flex}.settings-section-head .eyebrow,.settings-clef-field{margin-bottom:0}.settings-row{color:var(--ink);justify-content:space-between;align-items:center;padding:4px 0;font-size:13.5px;font-weight:500;text-decoration:none;display:flex}.settings-row-chevron{color:var(--muted);font-size:15px;transition:transform .15s}.settings-row:hover .settings-row-chevron{color:var(--ink);transform:translate(2px)}.settings-savebar{border-top:1px solid var(--line);align-items:center;gap:14px;margin-top:30px;padding-top:20px;display:flex}.settings-savebar-status{min-height:1em}.reminder-times{margin-bottom:12px}.reminder-denied{margin:4px 0 12px}.reminder-actions{align-items:center;gap:14px}.dangerzone{margin-top:42px}.dangerzone p{margin:8px 0;font-size:13px;line-height:1.55}.dangerlink{color:var(--red);margin-top:4px;padding:0}.dangerfield{max-width:260px;margin-top:14px}.dangerfield input{font-family:var(--sans)}.dangererror{color:var(--red);font-weight:500}.dangeractions{flex-wrap:wrap;align-items:center;gap:14px;margin-top:16px}.dangerbtn{background:var(--red);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:8px;padding:10px 18px;font-size:13px;font-weight:500}.dangerbtn:disabled{opacity:.45;cursor:not-allowed}.legal-page{justify-content:center;padding:40px 22px 72px;display:flex}.legal{width:100%;max-width:640px}.legal-mark{font-family:var(--serif);margin:0 0 34px;font-size:24px}.legal-mark a{color:var(--ink);text-decoration:none}.legal h1{font-family:var(--serif);margin:0 0 6px;font-size:34px;font-weight:400}.legal h2{font-family:var(--serif);margin:34px 0 10px;font-size:21px;font-weight:400}.legal-updated{color:var(--muted);margin:0 0 26px;font-size:12.5px}.legal-lede{font-size:15px;line-height:1.6}.legal p,.legal li{color:var(--ink);font-size:14px;line-height:1.65}.legal ul{margin:10px 0;padding-left:20px}.legal li{margin-bottom:8px}.legal a{color:var(--accent)}.legal a.primary{color:#fff;text-decoration:none;display:inline-block}.legal-back{border-top:1px solid var(--line);margin-top:44px;padding-top:22px}.top{padding-top:max(14px, env(safe-area-inset-top))}body{padding-bottom:env(safe-area-inset-bottom)}.slayout{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.top-left{flex:auto;align-items:center;gap:26px;min-width:0;display:flex}.topnav{scrollbar-width:none;-ms-overflow-style:none;gap:20px;min-width:0;display:flex;overflow-x:auto}.topnav::-webkit-scrollbar{display:none}.topnav-link{color:var(--muted);white-space:nowrap;border-bottom:2px solid #0000;flex-shrink:0;align-items:center;padding:3px 0;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.topnav-link:hover{color:var(--ink)}.topnav-link.on{color:var(--ink);border-bottom-color:var(--ink)}.wrail{margin:20px 0 24px}.wrail-track{align-items:center;margin-bottom:14px;display:flex}.wrail-node{flex:1;align-items:center;gap:8px;display:flex}.wrail-node:not(:last-child):after{content:"";background:var(--line2);flex:1;height:1px;margin:0 10px}.wrail-node.done:not(:last-child):after{background:var(--accent)}.wrail-dot{width:25px;height:25px;color:var(--muted);background:var(--panel);border:1.5px solid var(--line2);border-radius:50%;flex-shrink:0;place-items:center;font-size:11px;font-weight:700;display:grid}.wrail-node.done .wrail-dot{border-color:var(--accent);background:var(--accent);color:#fff}.wrail-node.current .wrail-dot{width:29px;height:29px;color:var(--ink);border:1.5px solid var(--ink);font-size:12px}.wrail-label{color:var(--muted);white-space:nowrap;font-size:12.5px;font-weight:500}.wrail-node.current .wrail-label,.wrail-node.done .wrail-label{color:var(--ink)}.wrail-node.current .wrail-label{font-weight:600}.wrail-detail{background:var(--accent-soft);border-radius:12px;padding:16px 18px;font-size:13.5px;line-height:1.5}.wrail-detail p{margin:0 0 10px}.wrail-detail p:last-child{margin-bottom:0}.wrail-detail a{color:var(--accent);font-weight:600;text-decoration:underline}.wrail-cta{margin-top:2px}.wrail-done{background:var(--green-soft);border-radius:12px;align-items:center;gap:10px;margin:20px 0 24px;padding:12px 16px;font-size:13.5px;line-height:1.45;display:flex}.wrail-done-check{background:var(--green);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:22px;height:22px;font-size:11px;font-weight:700;display:grid}.wrail-done a{color:var(--green);font-weight:600;text-decoration:underline}@media (max-width:620px){.wrail-label{display:none}.wrail-node:not(:last-child):after{margin:0 4px}}.adaptnudge{background:var(--accent-soft);border-radius:12px;margin-bottom:14px;padding:14px 16px}.adaptnudge-message{margin:8px 0 12px;font-size:13.5px;line-height:1.45}.adaptnudge-actions{align-items:center;gap:10px;display:flex}@media (max-width:620px){.top-left{gap:14px}.topnav{gap:14px;-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000 100%);mask-image:linear-gradient(90deg,#000 85%,#0000 100%)}.whoami{max-width:70px}}.primary{background:var(--emphasis-bg);color:var(--emphasis-ink);cursor:pointer;border:0;border-radius:10px;padding:11px 20px;font-size:13.5px;font-weight:500}.primary:disabled{opacity:.5;cursor:wait}.tlayout{grid-template-columns:264px minmax(0,1fr);min-height:calc(100vh - 63px);display:grid}.roster{border-right:1px solid var(--line);background:var(--panel);padding:20px 14px}.roster-head{justify-content:space-between;align-items:center;padding:0 12px 12px;display:flex}.roster-head span{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600}.roster-add{background:var(--accent-soft);color:var(--accent);cursor:pointer;border:0;border-radius:7px;width:24px;height:24px;font-size:15px;line-height:1}.stu{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:0;border-radius:12px;align-items:center;gap:11px;margin-bottom:2px;padding:11px 12px;text-decoration:none;display:flex}.stu.sel{background:var(--bg);box-shadow:inset 0 0 0 1px var(--line2)}.avatar-sm{width:26px;height:26px;font-size:10.5px}.avatar{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);border-radius:50%;place-items:center;font-size:12px;font-weight:600;display:grid}.stu-info{flex-direction:column;flex:1;min-width:0;display:flex}.stu-name{font-weight:500}.stu-meta{color:var(--muted);font-size:12px}.status{background:var(--line2);border-radius:50%;width:8px;height:8px}.status.pub{background:var(--green)}.status.draft{background:var(--accent)}.tmain{max-width:900px;padding:32px 40px}.tmain>.datepill{margin:0 0 4px}.thead-name{font-family:var(--serif);margin-bottom:2px;font-size:30px;font-weight:400}.tabs{border-bottom:1px solid var(--line);scrollbar-width:none;align-items:center;gap:22px;margin:26px 0 20px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tabs button,.tabs a{cursor:pointer;color:var(--muted);background:0 0;border:0;border-bottom:2px solid #0000;flex:none;margin-bottom:-1px;padding:0 0 11px;font-size:13.5px;font-weight:500;text-decoration:none}.tabs button.on,.tabs a.on{color:var(--ink);border-bottom-color:var(--ink)}.tabs-primary a{font-size:15.5px;font-weight:600}.tabs-divider{background:var(--line2);flex:none;align-self:center;width:1px;height:16px}.tabs a.tabs-secondary-link{padding-bottom:9px;font-size:12.5px;font-weight:500}.panel{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:22px}.panel .hint{margin:0 0 16px}.field{margin-bottom:14px;display:block}.field>span{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:11px;font-weight:600;display:block}.field textarea,.field select,.field input{border:1px solid var(--line2);width:100%;font:inherit;background:var(--panel);resize:vertical;color:var(--ink);border-radius:10px;padding:10px 12px}.field textarea:focus,.field select:focus,.field input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:#0000}.field input[type=checkbox]{width:auto}.grid2{grid-template-columns:1fr 1fr;gap:16px;display:grid}.unsurerow{align-items:center;gap:8px;margin:8px 0 18px;display:flex}.unsurerow input[type=checkbox]{flex:none;width:auto;margin:0}.unsurerow span{text-transform:none;letter-spacing:normal;color:var(--muted);font-size:13px;font-weight:400}.chiprow{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--line2);background:var(--panel);color:var(--ink);cursor:pointer;border-radius:999px;padding:9px 16px;font-size:13px;font-weight:500}.chip.on{background:var(--emphasis-bg);color:var(--emphasis-ink);border-color:var(--emphasis-bg)}.noteentry-slots{flex-wrap:wrap;gap:6px;margin-bottom:4px;display:flex}.noteentry-slot{border:1px dashed var(--line2);min-width:34px;height:34px;color:var(--muted);border-radius:8px;justify-content:center;align-items:center;padding:0 6px;font-size:13px;font-weight:600;display:inline-flex}.noteentry-slot.filled{border-style:solid;border-color:var(--ink);color:var(--ink);background:var(--panel)}.rhythmglyph{vertical-align:middle;width:auto;height:1.5em;display:inline-block}.chip .rhythmglyph{height:26px}.noteentry-slot .rhythmglyph{height:22px}.noteentry-answer{flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.noteentry-answer-tokens{align-items:center;gap:10px;display:inline-flex}.noteentry-answer-tokens .rhythmglyph{height:24px}.dictstaff{width:100%}.dictstaff svg{max-width:100%;display:block}.dictation-stage{background:var(--emphasis-bg);color:var(--emphasis-ink);border-radius:20px;margin-bottom:18px;padding:26px 26px 20px;box-shadow:0 18px 40px -22px #2b1e148c}@media (max-width:560px){.dictation-stage{padding:20px 18px 16px}}.dictation-modes{gap:6px;margin-bottom:14px;display:flex}.dictation-mode{color:#d8cbb4;letter-spacing:.01em;cursor:pointer;text-align:center;background:0 0;border:1px solid #f2ebdd38;border-radius:999px;flex:1;padding:8px 10px;font-size:12px;font-weight:600}.dictation-mode.on{background:var(--accent-bright);border-color:var(--accent-bright);color:#fff9f0}.dictation-mode:focus-visible{outline:2px solid var(--bg);outline-offset:2px}.dictation-modehint{color:#c9bca3;max-width:46ch;margin:0 0 18px;font-size:13px;line-height:1.5}.dictation-meta{flex-wrap:wrap;gap:8px;margin-bottom:22px;display:flex}.dictation-meta span{letter-spacing:.05em;text-transform:uppercase;color:#eadfc7;border:1px solid #f2ebdd47;border-radius:999px;padding:4px 10px;font-size:10.5px;font-weight:600}.dictation-playhub{flex-direction:column;align-items:center;gap:10px;margin-bottom:18px;display:flex}.dictation-playbtn{cursor:pointer;background:var(--accent-bright);color:#fff9f0;border:none;border-radius:50%;justify-content:center;align-items:center;width:92px;height:92px;transition:transform .15s;display:flex;box-shadow:0 10px 26px -10px #b5651dbf}.dictation-playbtn:hover:not(:disabled){transform:scale(1.04)}.dictation-playbtn:disabled{opacity:.45;cursor:not-allowed}.dictation-playbtn:focus-visible{outline:2px solid var(--bg);outline-offset:3px}.dictation-waveform{align-items:center;gap:3px;height:26px;display:flex}.dictation-waveform span{background:#fff9f0;border-radius:2px;width:3px;height:8px}.dictation-playbtn.on .dictation-waveform span{animation:.9s ease-in-out infinite dictation-wave}.dictation-waveform span:first-child{animation-delay:0s}.dictation-waveform span:nth-child(2){animation-delay:.12s}.dictation-waveform span:nth-child(3){animation-delay:.24s}.dictation-waveform span:nth-child(4){animation-delay:.36s}.dictation-waveform span:nth-child(5){animation-delay:.48s}@keyframes dictation-wave{0%,to{height:8px}50%{height:24px}}@media (prefers-reduced-motion:reduce){.dictation-playbtn.on .dictation-waveform span{height:18px;animation:none}}.dictation-playlabel{letter-spacing:.07em;text-transform:uppercase;color:#d8cbb4;font-size:11px;font-weight:600}.dictation-stagerow{border-top:1px solid #f2ebdd24;flex-wrap:wrap;align-items:center;gap:8px;padding-top:14px;display:flex}.dictation-pill{color:#eadfc7;cursor:pointer;background:0 0;border:1px solid #f2ebdd38;border-radius:999px;padding:7px 13px;font-size:12px;font-weight:500}.dictation-pill:hover:not(:disabled){border-color:#f2ebdd8c}.dictation-pill:disabled{opacity:.4;cursor:not-allowed}.dictation-tally{color:#d8cbb4;white-space:nowrap;margin-left:auto;font-size:12px}.dictation-setup{margin-bottom:18px}.dictation-setup-toggle{padding:0}.dictation-setup-panel{border:1px solid var(--line);background:var(--panel);border-radius:14px;margin-top:8px;padding:16px;animation:.15s dictation-drop}@keyframes dictation-drop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.dictation-setup-panel .eyebrow{margin:14px 0 6px;display:block}.dictation-setup-panel .eyebrow:first-child{margin-top:0}.dictation-setup-panel .chiprow{margin-bottom:6px}.dictation-levelselect{border-radius:9px;width:100%;padding:9px 10px;font-size:12.5px}.dictation-tempo{align-items:center;gap:10px}.dictation-reset{margin-top:12px;padding:0}.dictation-manuscript{border:1px solid var(--line);background:var(--panel);border-radius:16px;padding:18px}.dictation-manuscript-label{margin-bottom:10px;display:block}.dictation-loading{border:1px solid var(--line);text-align:center;color:var(--muted);border-radius:16px;padding:40px 18px}.dictation-result{margin-top:18px}.dictation-banner{border-radius:16px;margin-bottom:18px;padding:20px 22px}.dictation-banner.correct{background:var(--green-soft)}.dictation-banner.miss{background:var(--accent-soft)}.dictation-banner h3{font-family:var(--serif);margin:0 0 6px;font-size:26px;font-weight:400;line-height:1.15}.dictation-banner.correct h3{color:var(--green)}.dictation-banner.miss h3{color:var(--accent)}.dictation-banner p{color:var(--ink);margin:0;font-size:13.5px}.dictation-banner .sub{margin-top:6px;display:block}.dictation-tabs{gap:6px;margin-bottom:10px;display:flex}.dictation-tab{border:1px solid var(--line2);background:var(--panel);color:var(--muted);cursor:pointer;border-radius:999px;padding:6px 14px;font-size:12.5px;font-weight:600}.dictation-tab.on{background:var(--emphasis-bg);color:var(--emphasis-ink);border-color:var(--emphasis-bg)}.dictation-resultactions{flex-wrap:wrap;align-items:center;gap:14px;margin:14px 0 0}.staffentry{margin-top:4px}.staffentry-canvas{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:6px 4px;position:relative}.dictation-manuscript .staffentry-canvas{border-color:var(--line2)}.staffentry-lanes{pointer-events:none;position:absolute;inset:6px 4px}.staffentry-lane{cursor:pointer;pointer-events:auto;background:0 0;border:0;border-radius:2px;padding:0;position:absolute}.staffentry-lane:nth-child(2n){background:#9a52170b}.staffentry-lane:hover,.staffentry-lane.on,.staffentry-lane:focus-visible{background:#9a521733}.staffentry-status{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:8px;min-height:18px;margin:10px 2px;font-size:12.5px;display:flex}.staffentry-status .ok{color:var(--green);font-weight:600}.staffentry-where{color:var(--ink);font-weight:600}.staffentry-what{color:var(--accent);margin-left:auto;font-weight:600}.staffentry-durations,.staffentry-mods{margin-bottom:8px}.staffentry .chip:disabled{opacity:.38;cursor:not-allowed}.staffentry .chip.accidental{padding:7px 14px;font-size:16px;line-height:1}.staffentry-add{margin:10px 0 4px}.staffentry-add .tool-go{width:100%}.staffentry-hint{text-align:center;margin:6px 0 14px}.staffentry-actions{flex-wrap:wrap;gap:12px}.dictation-result .staffbox{border:1px solid var(--line)}.ear-shell{grid-template-columns:200px 1fr;align-items:start;gap:20px;display:grid}@media (max-width:720px){.ear-shell{grid-template-columns:1fr}}.ear-rail-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-size:10.5px;font-weight:600;display:block}.ear-rail{padding-top:2px}.ear-rail-groups{flex-direction:column;gap:2px;margin-bottom:16px;display:flex}@media (max-width:720px){.ear-rail-groups{flex-flow:wrap;gap:6px;margin-bottom:14px}}.ear-rail-group{text-align:left;color:var(--muted);cursor:pointer;background:0 0;border:0;border-left:2px solid #0000;border-radius:8px;padding:7px 10px;font-size:13.5px;font-weight:500}.ear-rail-group:hover{background:var(--panel);color:var(--ink)}.ear-rail-group.on{background:var(--panel);color:var(--ink);border-left-color:var(--accent);font-weight:600}@media (max-width:720px){.ear-rail-group{background:var(--panel);border-bottom:2px solid #0000;border-left:0;border:1px solid var(--line2);border-radius:999px}.ear-rail-group.on{border-color:var(--accent)}}.ear-rail-topics{flex-direction:column;gap:3px;display:flex}@media (max-width:720px){.ear-rail-topics{flex-flow:wrap;gap:6px}}.ear-rail-topic{text-align:left;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:space-between;align-items:center;gap:8px;padding:6px 10px;font-size:13px;text-decoration:none;display:flex}.ear-rail-topic:hover{background:var(--line);color:var(--ink)}.ear-rail-topic.on{background:var(--emphasis-bg);color:var(--emphasis-ink);font-weight:600}.ear-counts{background:var(--green);border-radius:50%;flex-shrink:0;width:5px;height:5px;display:inline-block}.ear-rail-topic.on .ear-counts{background:var(--accent-bright)}.ear-evidence-note{color:var(--green);margin:-6px 0 12px;font-size:12.5px;font-weight:500}.ear-crosslink{color:var(--accent);font-weight:600}.ear-crosslink:hover{background:var(--accent-soft);color:var(--accent)}.ear-stage{background:var(--emphasis-bg);color:var(--emphasis-ink);border-radius:18px;padding:26px 26px 24px;position:relative;overflow:hidden;box-shadow:0 16px 36px -18px #2b1e1480}@media (max-width:560px){.ear-stage{padding:20px 18px}}.ear-stage:before{content:"";pointer-events:none;border:1px solid #f2ebdd14;border-radius:50%;width:220px;height:220px;position:absolute;top:-60px;right:-60px}.ear-stage:after{content:"";pointer-events:none;border:1px solid #f2ebdd0f;border-radius:50%;width:140px;height:140px;position:absolute;top:-20px;right:-20px}.ear-stage-head{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex;position:relative}.ear-stage-head .ear-rail-kicker{color:#d8a671;margin-bottom:0}.ear-stage-score{font-family:var(--serif);color:var(--emphasis-ink);font-size:20px}.ear-stage-score-of{font-family:var(--sans);color:var(--muted);font-size:13px}.ear-stage-title{font-family:var(--serif);color:var(--emphasis-ink);margin:4px 0 14px;font-size:28px;font-weight:400;line-height:1.15;position:relative}.ear-stage .drillbrief-skill{color:#eadfc7}.ear-stage .drillbrief-howto{color:#f2ebdd9e}.ear-stage .ear-pool{position:relative}.ear-stage .levelselect{color:var(--emphasis-ink);background:#f2ebdd14;border-color:#f2ebdd33}.ear-stage .linkbtn{color:#eadfc7}.ear-stage .linkbtn:hover{color:var(--emphasis-ink)}.ear-stage-item{margin-top:4px;position:relative}.ear-loading{color:#f2ebdd80;padding:8px 0;font-size:13px}.ear-stage .qplay{margin-bottom:10px}.ear-stage .tool-go{background:var(--accent-bright);color:#fff9f0;letter-spacing:.01em;border-radius:12px;padding:12px 16px;font-size:13.5px;font-weight:600;transition:background-color .12s,transform .12s}.ear-stage .tool-go:hover{background:#c4711f}.ear-stage .tool-go:active{transform:scale(.98)}.ear-stage .tool-go.on{color:#eadfc7;background:#f2ebdd1f}.ear-stage .qplay .ghosty{color:#eadfc7;background:0 0;border:1px solid #f2ebdd47}.ear-stage .qplay .ghosty:hover{border-color:var(--emphasis-ink);background:#f2ebdd0f}.ear-stage .qplay-note{color:#f2ebdd8c}.ear-stage .tappad{background:var(--accent-bright);border-color:#0000}.ear-stage .tappad:hover{background:#c4711f}.ear-stage .choicegrid .choice,.ear-stage .chiprow .chip{color:var(--emphasis-ink);background:#f2ebdd0f;border-color:#f2ebdd29}.ear-stage .choicegrid .choice:hover:not(:disabled),.ear-stage .chiprow .chip:hover:not(:disabled){background:#f2ebdd1a;border-color:#f2ebdd66}.ear-stage .choicegrid .choice.correct{background:var(--green);border-color:var(--green);color:#fff}.ear-stage .choicegrid .choice.wrong{background:var(--red);border-color:var(--red);color:#fff}.ear-stage .noteentry-slot{color:var(--emphasis-ink);border-color:#f2ebdd3d}.ear-stage .noteentry-slot.filled{border-color:var(--accent-bright);background:#f2ebdd14}.ear-stage .success,.ear-stage .notice.err{background:0 0;border-top:1px solid #f2ebdd24;border-radius:12px;margin:6px 0 0;padding:14px 0 0}.ear-stage .success .eyebrow,.ear-stage .notice.err .eyebrow{font-family:var(--serif);text-transform:none;letter-spacing:0;margin-bottom:4px;font-size:21px;font-weight:400;display:block}.ear-stage .success .eyebrow{color:#9fc28a}.ear-stage .notice.err .eyebrow{color:#e39c87}.ear-stage .success p,.ear-stage .notice.err p{color:#f2ebddbf;font-size:13.5px}.ear-stage .success .primary,.ear-stage .notice.err .primary,.ear-stage .ear-stage-item>.primary{background:var(--accent-bright)}.ear-stage .primary:hover{background:#c4711f}.drumnotation svg{max-width:100%;height:auto;margin:0 auto;display:block}.notice{background:var(--accent-soft);color:var(--accent);border-radius:10px;margin-bottom:12px;padding:9px 14px;font-size:12.5px;font-weight:500}.notice.err{background:var(--red-soft);color:var(--red)}.ai-disclaimer{color:var(--muted);margin-bottom:12px;font-size:12px;line-height:1.4}.ai-disclaimer.inline{background:var(--accent-soft);border-radius:10px;padding:8px 12px}.ai-disclaimer.compact{padding:0}.empty{border:1px dashed var(--line2);text-align:center;color:var(--muted);border-radius:16px;padding:44px}.empty.big{max-width:420px;margin:70px auto}.emptypage{place-items:center;min-height:40vh;display:grid}.planbar{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.weeklabel{font-family:var(--serif);font-size:19px}.publish{border:1px solid var(--line2);color:var(--ink);background:var(--panel);cursor:pointer;border-radius:10px;padding:9px 16px;font-size:13px;font-weight:500}.publish.live{background:var(--green);border-color:var(--green);color:#fff}.planbar-tools{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:14px;display:flex}.planbar-tools .refocusbox{flex:260px;margin-bottom:0}.refocusbox{background:var(--accent-soft);border-radius:12px;margin-bottom:14px;padding:12px 14px}.refocusbox textarea{border:1px solid var(--line2);width:100%;font:inherit;background:var(--panel);color:var(--ink);resize:vertical;border-radius:8px;margin-bottom:8px;padding:8px 10px;font-size:13px}.refocusbox-actions{align-items:center;gap:14px;display:flex}.refocusbox-actions .primary{padding:7px 14px;font-size:12.5px}.week{flex-direction:column;gap:10px;display:flex}.daycard{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:14px 18px}.dayhead{border-bottom:1px solid var(--line);align-items:baseline;gap:12px;margin-bottom:4px;padding-bottom:10px;display:flex}.dayname{font-size:13px;font-weight:600}.dayfocus{font-family:var(--serif);color:var(--accent);flex:1;font-size:16px}.daymin{color:var(--muted);font-size:12px}.trow{border-bottom:1px solid var(--line);grid-template-columns:36px 230px 1fr;align-items:baseline;gap:12px;padding:8px 0;display:grid}.trow:last-child{border-bottom:0}.tmin{color:var(--muted);font-size:12px}.ttitle{font-size:13.5px;font-weight:500}.tgoal{color:var(--muted);font-size:12.5px}.vtag{letter-spacing:.08em;text-transform:uppercase;color:var(--red);background:var(--red-soft);vertical-align:1px;border-radius:5px;margin-left:7px;padding:2px 6px;font-size:9.5px;font-weight:600;display:inline-block}.practicetag{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);vertical-align:1px;border-radius:5px;margin-left:7px;padding:2px 6px;font-size:9.5px;font-weight:600;display:inline-block}.add-pop{margin-top:8px;position:relative}.blockedit{border-bottom:1px solid var(--line);grid-template-columns:64px 1fr 28px;align-items:start;gap:12px;padding:12px 0;display:grid}.blockedit:last-of-type{border-bottom:0}.blockedit input,.blockedit textarea{width:100%;font:inherit;color:var(--ink);resize:vertical;background:0 0;border:1px solid #0000;border-radius:8px;padding:6px 8px}.blockedit input:hover,.blockedit textarea:hover{border-color:var(--line)}.blockedit input:focus,.blockedit textarea:focus{outline:2px solid var(--accent);outline-offset:0;background:var(--panel);border-color:#0000}.be-min input{text-align:center}.be-title input{text-overflow:ellipsis;font-size:13.5px;font-weight:500;overflow:hidden}.be-goal textarea{color:var(--muted);font-size:12.5px}.be-remove{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 4px;font-size:16px;line-height:1}.be-remove:hover{color:var(--red);background:var(--red-soft)}.be-video{grid-column:2/3}.be-video-flag{border:1px dashed var(--line2);color:var(--muted);cursor:pointer;background:0 0;border-radius:8px;margin-top:2px;padding:5px 10px;font-size:11.5px;font-weight:500}.be-video-flag:hover{border-color:var(--red);color:var(--red)}.be-video-box{border:1px solid var(--red-soft);background:#fdfaf9;border-radius:10px;margin-top:4px;padding:8px 10px}.be-video-box textarea{font-size:12.5px;font-style:italic}.be-video-remove{color:var(--red);cursor:pointer;background:0 0;border:0;padding:2px 0 0;font-size:11px;font-weight:500}.be-practice{grid-column:2/3;margin-top:6px}.be-practice-flag{border:1px dashed var(--line2);color:var(--muted);cursor:pointer;background:0 0;border-radius:8px;padding:5px 10px;font-size:11.5px;font-weight:500}.be-practice-flag:hover{border-color:var(--accent);color:var(--accent)}.be-practice-box{border:1px solid var(--accent-soft);background:#fdfbf6;border-radius:10px;padding:8px 10px}.be-materials{grid-column:2/3;margin-top:6px}.materialseditor-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.materialschip{background:var(--bg);border:1px solid var(--line2);color:var(--ink);border-radius:999px;align-items:center;gap:5px;padding:3px 4px 3px 10px;font-size:12px;display:inline-flex}.materialschip button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:2px 5px;font-size:14px;line-height:1}.materialschip button:hover{color:var(--red)}.materialseditor-input{border:1px dashed var(--line2);color:var(--ink);background:0 0;border-radius:999px;width:100px;padding:3px 12px;font-size:12px}.materialschecklist-item{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:12px 0;font-size:14px;display:flex}.be-practice-selects{gap:8px;display:flex}.be-tools{gap:14px;margin-top:6px;display:flex}.be-tools label{letter-spacing:.04em;color:var(--muted);align-items:center;gap:6px;font-size:11px;font-weight:600;display:flex}.be-tools input{border:1px solid var(--line2);width:56px;font:inherit;background:var(--panel);color:var(--ink);border-radius:8px;padding:4px 6px;font-size:12.5px}.be-practice-selects select{border:1px solid var(--line);font:inherit;background:var(--panel);color:var(--ink);border-radius:8px;flex:1;padding:5px 6px;font-size:12.5px}.be-practice-remove{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:6px 0 0;font-size:11px;font-weight:500}.addblock{border:1px dashed var(--line2);color:var(--muted);cursor:pointer;background:0 0;border-radius:8px;width:100%;margin-top:8px;padding:7px;font-size:12.5px;font-weight:500}.addblock:hover{border-color:var(--accent);color:var(--accent)}.daymin-edit{color:var(--muted);white-space:nowrap;font-size:12px}.slayout{justify-content:center;display:flex}.smain{width:100%;max-width:620px;padding:28px 20px 60px}.shead{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.shead>div{min-width:0}.shead h1{font-family:var(--serif);overflow-wrap:break-word;font-size:28px;font-weight:400}.streak{background:var(--accent-soft);color:var(--accent);white-space:nowrap;border-radius:999px;flex-shrink:0;margin-left:12px;padding:7px 14px;font-size:12.5px;font-weight:600}.days{gap:6px;margin-bottom:22px;padding-bottom:2px;display:flex;overflow-x:auto}.daytab{border:1px solid var(--line2);background:var(--panel);cursor:pointer;color:var(--muted);white-space:nowrap;border-radius:999px;padding:8px 16px;font-size:13px;font-weight:500}.daytab.on{background:var(--emphasis-bg);color:var(--emphasis-ink);border-color:var(--emphasis-bg)}.daytab.did:not(.on){color:var(--green);border-color:var(--green-soft);background:var(--green-soft)}.focusrow{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:10px;display:flex}.focusrow>div{min-width:0}.focusrow h2{font-family:var(--serif);overflow-wrap:break-word;margin-top:-2px;font-size:24px;font-weight:400}.tally{color:var(--muted);white-space:nowrap;flex-shrink:0;font-size:12.5px}.bar{background:var(--line);border-radius:99px;height:4px;margin-bottom:20px;overflow:hidden}.bar div{background:var(--green);transform-origin:0;border-radius:99px;width:100%;height:100%;transition:transform .3s}.block{background:var(--panel);border:1px solid var(--line);color:inherit;border-radius:16px;margin-bottom:10px;text-decoration:none;transition:border-color .15s;overflow:hidden}.block:hover{border-color:var(--line2);box-shadow:0 4px 20px #1c1b180d}.blockhead{text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:14px;width:100%;padding:16px 18px;display:flex}.ring{border:1.5px solid var(--line2);width:30px;min-width:30px;height:30px;color:var(--muted);border-radius:50%;place-items:center;font-size:12.5px;font-weight:600;display:grid}.ring.filled{background:var(--green);border-color:var(--green);color:#fff}.block.done .btitle{color:var(--muted)}.btitle{flex-direction:column;flex:1;gap:2px;font-size:14.5px;font-weight:500;display:flex}.bgoal{color:var(--muted);font-size:12.5px;font-weight:400}.bmeta{align-items:center;gap:10px;display:flex}.bmin{color:var(--muted);font-size:12.5px}.chev{color:var(--muted);text-align:center;width:14px;font-size:16px}.why{background:var(--accent-soft);border-radius:12px;margin:16px 0 18px;padding:14px 16px}.why p{font-size:13.5px}.why .eyebrow{color:var(--accent)}.steps{margin:0 0 18px;padding:0;list-style:none}.steps li{border-bottom:1px solid var(--line);gap:11px;padding:9px 0;font-size:13.5px;display:flex}.steps li:last-child{border-bottom:0}.steps li.did span{color:var(--muted);text-decoration:line-through}.stepcheck{border:1.5px solid var(--line2);background:var(--panel);cursor:pointer;color:#fff;border-radius:7px;width:22px;min-width:22px;height:22px;margin-top:1px;font-size:12px}.steps li.did .stepcheck{background:var(--green);border-color:var(--green)}.mistakes{margin:0 0 18px;padding-left:18px}.mistakes li{padding:4px 0;font-size:13px}.mistakes li::marker{color:var(--red)}.success{background:var(--green-soft);border-radius:12px;margin-bottom:18px;padding:13px 16px}.success .eyebrow{color:var(--green)}.success p{font-size:13.5px;font-weight:500}.videobox{border:1px solid var(--red-soft);background:#fdfaf9;border-radius:14px;margin-bottom:18px;padding:16px}.vprompt{margin-bottom:14px;font-size:13.5px;font-style:italic}.dropzone{border:1.5px dashed var(--line2);cursor:pointer;background:var(--panel);border-radius:12px;align-items:center;gap:14px;padding:16px;display:flex}.dropzone:hover{border-color:var(--red)}.dropzone input{display:none}.dz-icon{background:var(--red-soft);width:38px;min-width:38px;height:38px;color:var(--red);border-radius:10px;place-items:center;font-size:16px;display:grid}.dropzone small{color:var(--muted)}.uploaded{background:var(--green-soft);color:var(--green);border-radius:10px;padding:11px 14px;font-size:13px}.finishrow{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.feels{gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.feels .feel{white-space:nowrap}.feels.scrollfade{scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000 100%);mask-image:linear-gradient(90deg,#000 85%,#0000 100%)}.feels.scrollfade::-webkit-scrollbar{display:none}.feel{border:1px solid var(--line2);background:var(--panel);cursor:pointer;color:var(--muted);border-radius:999px;padding:6px 13px;font-size:12.5px}.feel.on{background:var(--emphasis-bg);color:var(--emphasis-ink);border-color:var(--emphasis-bg)}.staffbox{background:var(--panel);border-radius:10px;padding:8px;overflow-x:auto}.staffbox svg{max-width:100%;height:auto}.sr-scoreview{width:100%}.notation-hit{color:var(--green)}.notation-miss,.notation-wrong-pitch{color:var(--red)}.notation-current,.notation-wrong-rhythm{color:var(--accent)}.notation-skip{color:var(--notation-faint)}.notation-ghost{color:var(--notation-ghost)}.vf-cursorwash{color:var(--notation-wash)}.choicegrid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}@media (min-width:480px){.choicegrid{grid-template-columns:repeat(3,1fr)}}.choicegrid .choice{text-align:center}.choicegrid .choice:disabled{cursor:default;opacity:1}.choicegrid .choice.correct{background:var(--green);color:#fff;border-color:var(--green)}.choicegrid .choice.wrong{background:var(--red);color:#fff;border-color:var(--red)}.tunerreadout{text-align:center;padding:20px 0 4px}.tunernote{font-family:var(--serif);color:var(--ink);font-size:56px;line-height:1;transition:color .15s}.tunernote.in-tune{color:var(--green)}.tunernote sub{font-size:22px;bottom:0}.tunercents{color:var(--muted);margin-top:6px;font-size:12.5px}.tunermeter{background:var(--line);border-radius:3px;height:6px;margin:18px 4px 22px;position:relative}.tunermeter-center{background:var(--line2);width:2px;position:absolute;top:-7px;bottom:-7px;left:50%;transform:translate(-1px)}.tunerneedle{background:var(--red);border-radius:2px;width:4px;height:20px;margin-left:-2px;transition:left .1s,background .15s;position:absolute;top:-7px}.tunerneedle.in-tune{background:var(--green)}.tunerreadout.held,.tunerneedle.held{opacity:.45}.tunerreadout,.tunerneedle{transition:opacity .25s}.tunerscreen{max-width:460px}.tuner-back{color:var(--muted);align-items:center;gap:6px;margin-bottom:16px;font-size:12.5px;font-weight:500;text-decoration:none;display:inline-flex}.tuner-back:hover{color:var(--ink)}.tuner-noaudio{border:1px dashed var(--line2);text-align:center;color:var(--muted);border-radius:16px;padding:40px 28px}.tuner-noaudio .eyebrow{margin-bottom:10px;display:block}.tuner-noaudio p{max-width:40ch;margin:0 auto;line-height:1.55}.tunerpanel{isolation:isolate;background:var(--emphasis-bg);border-radius:22px;padding:22px 24px 28px;transition:opacity .25s;position:relative;overflow:hidden;box-shadow:0 20px 44px -22px #2b1e1499}@media (max-width:480px){.tunerpanel{padding:20px 18px 24px}}.tunerpanel:before{content:"";z-index:0;background:radial-gradient(circle at 50% 34%, var(--green) 0%, transparent 72%);opacity:calc(var(--proximity,0) * .5);transition:opacity .15s;position:absolute;inset:0}.tunerpanel.in-tune:before{opacity:.85}.tunerpanel.held{opacity:.55}.tunerpanel.idle .tunerdial{opacity:.45}.tunerpanel-head{z-index:1;justify-content:space-between;align-items:baseline;display:flex;position:relative}.tunerpanel-label{letter-spacing:.12em;text-transform:uppercase;color:#f2ebdd8c;font-size:11px;font-weight:600}.tunerpanel-sub{color:#f2ebdd66;font-size:11px}.tunerdial{z-index:1;width:100%;height:auto;margin-top:8px;transition:opacity .2s;display:block;position:relative}.tunertick{stroke:#f2ebdd47;stroke-width:2px}.tunertick-center{stroke:#f2ebdd99;stroke-width:2.5px}.tunerpointer{stroke:#eadfc7;stroke-width:3px;stroke-linecap:round;transition:all .1s}.tunerpointer.in-tune{stroke:var(--green)}.tunerhub{fill:#eadfc7}.tunernote-wrap{z-index:1;text-align:center;margin-top:-6px;position:relative}.tunerpanel .tunernote{color:#f5efe2;font-size:60px}.tunerpanel .tunernote.in-tune{color:#d6e4c9}.tunerstatus{color:#f2ebdda6;margin-top:2px;font-size:13px}.tunerstatus.in-tune{color:#d6e4c9;font-weight:600}.tunerhint{color:var(--muted);text-align:center;margin:16px 6px 4px;font-size:12.5px;line-height:1.55}.tuner-micnotice{margin:14px 2px}.tuner-go{width:100%;color:var(--emphasis-ink);background:var(--emphasis-bg);cursor:pointer;border:0;border-radius:14px;justify-content:center;align-items:center;gap:10px;margin-top:14px;padding:16px;font-size:15px;font-weight:600;display:flex}.tuner-go.on{background:var(--red)}.tuner-go-dot{opacity:.6;background:currentColor;border-radius:50%;width:8px;height:8px}.tuner-go.on .tuner-go-dot{opacity:1;animation:1.3s ease-in-out infinite tunerpulse}@keyframes tunerpulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(1.7)}}@media (prefers-reduced-motion:reduce){.tuner-go.on .tuner-go-dot{animation:none}}.markdone{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:10px;padding:10px 18px;font-size:13px;font-weight:500}.markdone.undone{background:var(--panel);color:var(--green);border:1px solid var(--green)}.dayclear{text-align:center;font-family:var(--serif);color:var(--green);padding:22px 0 6px;font-size:18px}.tools{grid-template-columns:1fr;gap:10px;margin:16px 0 18px;display:grid}@media (min-width:520px){.tools{grid-template-columns:1fr 1fr}}.tool{border:1px solid var(--line);background:var(--bg);border-radius:12px;padding:12px}.tool-head{justify-content:space-between;align-items:baseline;margin-bottom:10px;display:flex}.tool-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:10.5px;font-weight:600}.levelselect{border:1px solid var(--line2);font:inherit;background:var(--panel);color:var(--ink);border-radius:8px;max-width:100%;padding:4px 6px;font-size:11.5px}.bpm-num{font-family:var(--serif);font-size:17px}.timer-num{font-family:var(--serif);font-variant-numeric:tabular-nums;font-size:19px}.timer-num.done{color:var(--green)}.metro-row{align-items:center;gap:6px;display:flex}.metro-row input[type=range]{min-width:0;accent-color:var(--accent);flex:1}.timer-row{gap:6px;display:flex}.stepper-btn{border:1px solid var(--line2);background:var(--panel);width:30px;height:30px;color:var(--ink);cursor:pointer;border-radius:8px;font-size:16px;line-height:1}.stepper-btn.wide{width:auto;padding:0 12px;font-size:12.5px;font-weight:500}.tool-go{background:var(--emphasis-bg);color:var(--emphasis-ink);cursor:pointer;border:0;border-radius:8px;flex:1;padding:7px 12px;font-size:12.5px;font-weight:500}.tool-go.on{background:var(--red)}.practicetools{max-width:360px;margin:16px 0 18px}.practicetools-tabs{background:var(--bg);border:1px solid var(--line);border-radius:10px;gap:4px;margin-bottom:10px;padding:3px;display:flex}.practicetools-tabs button{cursor:pointer;color:var(--muted);background:0 0;border:0;border-radius:8px;flex:1;padding:7px 0;font-size:12.5px;font-weight:500}.practicetools-tabs button.on{background:var(--panel);color:var(--ink);box-shadow:0 1px 3px #0000000f}.practicetools .tool{background:var(--panel)}.target{background:var(--green-soft);border-radius:12px;margin-bottom:16px;padding:13px 16px}.target .eyebrow{color:var(--green)}.target p{font-size:13.5px;font-weight:500}.target-line{color:var(--muted);margin-bottom:16px;font-size:12.5px;line-height:1.45}.target-line span{letter-spacing:.07em;text-transform:uppercase;color:var(--green);margin-right:7px;font-size:11px;font-weight:600}.smain.stepsolo{max-width:560px}.backlink{color:var(--muted);margin-bottom:18px;font-size:12.5px;font-weight:500;text-decoration:none;display:inline-block}.backlink:hover{color:var(--ink)}.steppagehead{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.steppagehead .eyebrow{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-bottom:0;overflow:hidden}.steppagehead .stepdots{flex-shrink:0;margin-bottom:0}.stepcount{color:var(--muted);white-space:nowrap;font-size:12.5px}.stepdots{gap:6px;margin-bottom:18px;display:flex}.stepdots .dot{background:var(--line2);border-radius:50%;width:8px;height:8px}.stepdots .dot.done{background:var(--green)}.stepdots .dot.current{background:var(--accent);border-radius:4px;width:20px}.stepsolo-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;margin-bottom:18px;padding:22px}.stepsolo-card.done{background:var(--bg)}.stepsolo-text{font-family:var(--serif);font-size:21px;font-weight:400;line-height:1.4}.stepsolo-card.done .stepsolo-text{color:var(--muted);text-decoration:line-through}.numeral{font-family:var(--sans)}.step-watch{background:var(--red-soft);border-radius:9px;gap:8px;margin-top:14px;padding:9px 11px;display:flex}.step-watch .wlabel{letter-spacing:.08em;text-transform:uppercase;color:var(--red);white-space:nowrap;margin-top:1px;font-size:9.5px;font-weight:700}.step-watch p{font-size:12.5px}.step-visual{color:var(--ink);flex-direction:column;align-items:center;gap:8px;margin-top:16px;display:flex}.step-visual svg{max-width:100%;height:auto}.step-visual img{border-radius:10px;max-width:100%}.step-visual figcaption{color:var(--muted);text-align:center;font-size:11.5px}.step-visual .visual-credit{opacity:.8}.triad-row{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:14px;display:flex}.triad-row .step-visual{margin-top:0}.pinned-charts{background:var(--panel);border:1px solid var(--line);border-radius:16px;margin:14px 0;padding:14px 16px 16px}.pinned-charts .eyebrow{color:var(--accent)}.pinned-charts-row{flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:16px;margin-top:4px;display:flex}.pinned-charts-row .step-visual{margin-top:0}.chartpicker{margin:10px 0 14px}.chartpicker-pins{flex-wrap:wrap;align-items:flex-end;gap:14px;margin-bottom:10px;display:flex}.chartpicker-pin{position:relative}.chartpicker-pin .step-visual{margin-top:0}.chartpicker-remove{border:1px solid var(--line);background:var(--panel);width:22px;height:22px;color:var(--muted);cursor:pointer;border-radius:50%;font-size:14px;line-height:1;position:absolute;top:-6px;right:-6px}.chartpicker-remove:hover{color:var(--ink);border-color:var(--ink)}.chartpicker-panel{border:1px solid var(--line);background:var(--bg);border-radius:12px;padding:12px 14px}.chartpicker-controls{flex-wrap:wrap;gap:12px;display:flex}.chartpicker-controls label{flex-direction:column;gap:4px;min-width:120px;display:flex}.chartpicker-preview{justify-content:center;min-height:60px;padding:8px 0 2px;display:flex}.chartpicker-preview .step-visual{margin-top:0}.chartpicker-actions{gap:10px;margin-top:8px;display:flex}.chartpicker-done{margin-top:8px}.chartshelf-page{max-width:900px}.chartshelf-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px;display:flex}.chartshelf-h1{font-family:var(--serif);margin:2px 0 6px;font-size:26px;font-weight:400}.chartshelf{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:16px;display:grid}.chartshelf-card{background:var(--panel);border:1px solid var(--line);color:var(--ink);border-radius:16px;flex-direction:column;text-decoration:none;transition:border-color .15s,transform .15s;display:flex;overflow:hidden}.chartshelf-card:hover{border-color:var(--accent);transform:translateY(-2px)}.chartshelf-card.featured{grid-column:span 2}.chartshelf-thumb{background:var(--bg);border-bottom:1px solid var(--line);justify-content:center;align-items:center;height:116px;padding:10px;display:flex;overflow:hidden}.chartshelf-card.featured .chartshelf-thumb{height:168px}.chartshelf-thumb svg{width:auto;max-width:100%;height:auto;max-height:100%}.chartshelf-thumb .step-visual{gap:0;margin-top:0}.chartshelf-thumb .step-visual figcaption{display:none}.chartshelf-blank{color:var(--muted);font-size:12px}.chartshelf-body{flex-direction:column;gap:4px;padding:12px 14px 14px;display:flex}.chartshelf-title{font-family:var(--serif);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:17px;line-height:1.3;display:-webkit-box;overflow:hidden}.chartshelf-card.featured .chartshelf-title{font-size:23px}.chartshelf-meta{color:var(--muted);font-size:12px}@media (max-width:560px){.chartshelf-card.featured{grid-column:span 1}.chartshelf-card.featured .chartshelf-thumb{height:116px}.chartshelf-card.featured .chartshelf-title{font-size:17px}}.chartlist{flex-direction:column;gap:10px;display:flex}.chartlist-card{background:var(--panel);border:1px solid var(--line);color:var(--ink);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;text-decoration:none;display:flex}.chartlist-card:hover{border-color:var(--accent)}.chartlist-title{font-family:var(--serif);font-size:18px}.chartlink-today{background:var(--panel);border:1px solid var(--line);color:var(--ink);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:12px 16px;text-decoration:none;display:flex}.chartlink-today:hover{border-color:var(--accent)}.chartview-bar{justify-content:space-between;align-items:center;gap:12px;display:flex}.chartbuilder-page{max-width:980px}.chartworkbench{grid-template-columns:1fr 300px;align-items:start;gap:28px;display:grid}.chartworkbench-canvas{min-width:0}.chartworkbench-titlefield{width:100%;font-family:var(--serif);border:none;border-bottom:1px dashed var(--line2);color:var(--ink);background:0 0;margin-bottom:10px;padding:8px 2px;font-size:22px}.chartworkbench-titlefield:focus{border-bottom-color:var(--accent);outline:none}.chartworkbench-rail{flex-direction:column;gap:20px;display:flex;position:sticky;top:20px}.chartworkbench-savebar{flex-wrap:wrap;gap:10px;display:flex}.chartworkbench-section{flex-direction:column;display:flex}.chartworkbench-section .eyebrow{margin-bottom:8px}@media (max-width:760px){.chartworkbench{grid-template-columns:1fr}.chartworkbench-rail{position:static}}.chartbuilder-items{flex-direction:column;gap:8px;margin-bottom:6px;display:flex}.chartbuilder-item{align-items:center;gap:8px;display:flex}.chartbuilder-item-num{width:18px;color:var(--muted);text-align:right;flex:none;font-size:11px}.chartbuilder-caption{border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:8px;flex:1;padding:7px 10px;font-size:13px}.chartbuilder-remove{flex:none;position:static}.chartbuilder-students{flex-wrap:wrap;gap:8px 16px;margin-top:8px;display:flex}.chartbuilder-student{align-items:center;gap:7px;font-size:14px;display:flex}.chartbuilder-danger{border-top:1px solid var(--line);margin-top:4px;padding-top:18px}.chart-sheet{background:var(--panel);border:1px solid var(--line);border-radius:16px;margin:0;padding:22px 24px 26px}.chart-sheet-head{border-bottom:2px solid var(--line2);justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:20px;padding-bottom:12px;display:flex}.chart-sheet-title{font-family:var(--serif);margin:0;font-size:26px;font-weight:400}.chart-sheet-count{color:var(--muted);white-space:nowrap;font-size:11px}.chart-sheet-empty{color:var(--muted);font-size:13px}.chart-sheet-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));place-items:end center;gap:26px 22px;display:grid}.chart-sheet-item{flex-direction:column;align-items:center;gap:4px;width:100%;display:flex;position:relative}.chart-sheet-item .step-visual{margin-top:0}.chart-sheet-plate{letter-spacing:.06em;color:var(--accent);align-self:flex-start;margin-bottom:2px;font-size:10px;font-weight:600}.chart-sheet-caption{color:var(--muted);text-align:center;max-width:220px;margin:0;font-size:12px}@media print{.print-hide,header.top{display:none!important}body{background:#fff}.slayout,.smain{max-width:none;margin:0;padding:0}.chartworkbench{display:block}.chart-sheet{color:#000;background:#fff;border:none;margin:0;padding:0}.chart-sheet,.chart-sheet .step-visual,.chart-sheet figcaption,.chart-sheet-caption,.chart-sheet-plate{color:#000}.chart-sheet-head{border-bottom-color:#000}.chart-sheet-item{break-inside:avoid}}.strum-row{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.strum-symbol{background:var(--bg);border:1px solid var(--line);width:30px;height:30px;color:var(--accent);border-radius:8px;place-items:center;font-size:16px;font-weight:600;display:grid}.check-card{background:var(--panel);border:1px solid var(--accent-soft);border-radius:16px;margin-bottom:14px;padding:22px}.check-question{font-family:var(--serif);margin:8px 0 16px;font-size:19px;font-weight:400;line-height:1.4}.check-recap{background:var(--bg);border-radius:10px;margin-bottom:4px;padding:10px 13px}.check-recap .check-question{margin:0 0 4px;font-size:14px}.stepbottom{flex-direction:column;align-items:flex-start;gap:18px;margin-top:4px;display:flex}.stepnext{background:var(--emphasis-bg);color:var(--emphasis-ink);cursor:pointer;text-align:center;border:0;border-radius:9px;padding:12px 20px;font-size:13.5px;font-weight:500;text-decoration:none;display:inline-block}.stepnext:disabled{opacity:.6;cursor:wait}.stepundo{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:4px 0;font-size:11.5px}.stepsolo-actions{flex-direction:column;gap:10px;display:flex}.stepsolo-actionrow{justify-content:space-between;align-items:center;gap:12px;display:flex}.stepsolo-actionrow-left{align-items:center;gap:16px;display:flex}.stepback{color:var(--muted);white-space:nowrap;padding:4px 0;font-size:12.5px;text-decoration:none}.stepback:hover{color:var(--ink)}.donebadge{color:var(--green);font-size:12.5px;font-weight:500}.allclear{text-align:center;background:var(--green-soft);color:var(--green);border-radius:12px;margin-bottom:16px;padding:12px;font-size:13px;font-weight:500}.lessonloading{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:60px 0;display:flex}.lessonloading p{color:var(--muted);font-size:13.5px}.spinner{border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:26px;height:26px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.chordswitch-diagrams{justify-content:center;align-items:center;gap:14px;margin:4px 0 14px;display:flex}.chordswitch-arrow{color:var(--muted);font-size:18px}.chattoggle{background:var(--panel);border:1px solid var(--line);color:var(--ink);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:9px 16px;font-size:13px;font-weight:500;display:inline-flex}.chatbox{background:var(--panel);border:1px solid var(--line);border-radius:16px;width:100%;padding:18px}.chatboxhead{justify-content:space-between;align-items:center;gap:12px;display:flex}.chatboxhead .eyebrow{margin-bottom:0}.chatclose{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 6px;font-size:16px;line-height:1}.chatclose:hover{color:var(--ink);background:var(--bg)}.chatlist{flex-direction:column;gap:8px;max-height:320px;margin:10px 0 12px;display:flex;overflow-y:auto}.chatempty{padding:4px 0}.chatbubble{white-space:pre-wrap;border-radius:12px;max-width:88%;padding:9px 13px;font-size:13.5px;line-height:1.45}.chatbubble.user{background:var(--accent-soft);color:var(--ink);align-self:flex-end}.chatbubble.assistant{background:var(--bg);color:var(--ink);align-self:flex-start}.chatinputrow{align-items:flex-end;gap:8px;display:flex}.chatinputrow textarea{border:1px solid var(--line2);font:inherit;resize:none;background:var(--panel);color:var(--ink);border-radius:10px;flex:1;min-height:38px;padding:9px 12px;font-size:13.5px}.chatinputrow textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:#0000}.chatinputrow .stepnext{margin-top:0;padding:10px 18px}.choicekey{color:var(--muted);border:1px solid var(--line2);border-radius:5px;margin-right:6px;padding:1px 5px;font-size:10px;font-weight:700;display:inline-block}.selfpractice{border:1px dashed var(--line2);color:inherit;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;margin-top:18px;padding:16px 18px;text-decoration:none;display:flex}.selfpractice:hover{border-color:var(--accent)}.selfpractice p{color:var(--muted);max-width:46ch;margin-top:4px;font-size:13px}.selfpractice-stat{color:var(--accent);margin-top:6px;font-size:11.5px;font-weight:500;display:block}.dash{max-width:900px;margin:0 auto;padding:32px 24px 60px}.dashhead{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:4px;display:flex}.dashhead h1{font-family:var(--serif);font-size:30px;font-weight:400}.datepill{color:var(--muted);font-size:12.5px}.dashgrid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin-top:22px;display:grid}.scard{color:inherit;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px;text-decoration:none;transition:box-shadow .15s,border-color .15s;display:block}.scard:hover{border-color:var(--line2);box-shadow:0 4px 18px #1c1b180d}.scard-top{align-items:center;gap:11px;margin-bottom:14px;display:flex}.scard-name{font-size:15px;font-weight:600}.scard-meta{color:var(--muted);font-size:12.5px}.scard-stat{justify-content:space-between;align-items:center;display:flex}.pill{border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600}.pill.pub{background:var(--green-soft);color:var(--green)}.pill.draft{background:var(--accent-soft);color:var(--accent)}.pill.none{background:var(--bg);color:var(--muted)}.scard-done{color:var(--muted);font-size:12.5px}.dashadd{border:1.5px dashed var(--line2);color:var(--muted);cursor:pointer;background:0 0;border-radius:16px;place-items:center;min-height:96px;padding:18px;font-size:14px;font-weight:500;display:grid}.dashadd:hover{border-color:var(--accent);color:var(--accent)}.section-eyebrow{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin:0 0 12px;font-size:11px;font-weight:600;display:block}.needs-section{margin-top:30px}.track-section{margin-top:36px}.needs-list{flex-direction:column;gap:8px;display:flex}.needs-row{background:var(--panel);border:1px solid var(--line);color:inherit;border-radius:14px;align-items:center;gap:14px;padding:15px 18px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .12s;display:flex}.needs-row:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:0 10px 26px -16px #2b1e1459}.needs-row:focus-visible{outline:2px solid var(--accent-bright);outline-offset:2px}.needs-info{flex-direction:column;flex:1;min-width:0;display:flex}.needs-name{font-size:14.5px;font-weight:600}.needs-meta{color:var(--muted);font-size:12px}.needs-reason{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:5px 12px;font-size:12px;font-weight:600}.needs-reason.reason-noplan{background:var(--bg);color:var(--muted)}.needs-reason.reason-draft{background:var(--accent-soft);color:var(--accent)}.needs-reason.reason-stale,.needs-reason.reason-empty{background:var(--red-soft);color:var(--red)}.needs-chevron{color:var(--muted);opacity:.45;flex-shrink:0;transition:transform .12s,opacity .12s}.needs-row:hover .needs-chevron{opacity:.85;transform:translate(2px)}.track-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:4px 10px;display:grid}.track-tile{color:inherit;border:1px solid #0000;border-radius:12px;flex-direction:column;gap:8px;padding:12px 14px;text-decoration:none;transition:background-color .12s,border-color .12s;display:flex}.track-tile:hover{background:var(--panel);border-color:var(--line)}.track-tile:focus-visible{outline:2px solid var(--accent-bright);outline-offset:-2px}.track-top{align-items:center;gap:9px;display:flex}.track-info{flex-direction:column;flex:1;min-width:0;display:flex}.track-name{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:500;overflow:hidden}.track-meta{color:var(--muted);font-size:11px}.track-pct{color:var(--muted);flex-shrink:0;font-size:12px;font-weight:600}.track-bar{background:var(--line);border-radius:999px;height:3px;overflow:hidden}.track-bar-fill{background:var(--green);border-radius:999px;height:100%;display:block}.danger{border:1px solid var(--red-soft);border-radius:12px;margin-top:16px;padding:16px}.danger .eyebrow{color:var(--red)}.btn-danger{border:1px solid var(--red);color:var(--red);background:var(--panel);cursor:pointer;border-radius:9px;padding:8px 14px;font-size:13px;font-weight:500}.btn-danger:hover{background:var(--red);color:#fff}.uploading{padding:6px 0}.ubar{background:var(--line);border-radius:99px;height:8px;margin-bottom:8px;overflow:hidden}.ubar div{background:var(--red);border-radius:99px;height:100%;transition:width .2s}.usub{color:var(--muted);font-size:12.5px}.tfeedback{background:var(--accent-soft);border-radius:10px;margin-top:10px;padding:11px 14px}.tfeedback .eyebrow{color:var(--accent)}.tfeedback p{font-size:13.5px}.reupload{color:var(--muted);cursor:pointer;margin-top:10px;font-size:12px;font-weight:500;text-decoration:underline;display:inline-block}.reupload input{display:none}.countbadge{background:var(--red);color:#fff;vertical-align:1px;border-radius:999px;place-items:center;min-width:18px;height:18px;margin-left:6px;padding:0 5px;font-size:11px;font-weight:600;display:inline-grid}.triagepage{max-width:1080px}.triagepage-head{flex-wrap:wrap;align-items:baseline;gap:12px;margin-bottom:22px;display:flex}.triagepage-head h1{font-family:var(--serif);font-size:32px;font-weight:400}.ledgerhead{border-top:1px solid var(--line);margin:48px 0 14px;padding-top:28px}.ledgerhead .eyebrow{margin-bottom:4px;display:block}.ledgerhead .sub{max-width:52ch}.triage{grid-template-columns:minmax(0,1.6fr) minmax(240px,1fr);align-items:start;gap:22px;display:grid}.triagefocus{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:0 10px 32px #1c1b180d}.triagefocus-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.triagefocus-head h2{font-family:var(--serif);margin-top:4px;font-size:24px;font-weight:400}.triagefocus-block{color:var(--muted);margin-top:2px;font-size:13px}.triage-video{aspect-ratio:9/16;background:#000;border-radius:14px;width:100%;max-height:460px;margin-bottom:16px}.triagequeue,.triagelog{flex-direction:column;gap:6px;display:flex}.triagequeue{margin-bottom:18px}.triagequeue-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin-bottom:4px;padding-left:2px;font-size:11px;font-weight:600}.triagerow{background:var(--panel);border:1px solid var(--line);text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;transition:border-color .15s,background .15s;display:flex}.triagerow:hover{border-color:var(--accent)}.triagerow-status{background:var(--accent);border-radius:50%;flex-shrink:0;width:8px;height:8px}.triagerow-status.done{width:auto;height:auto;color:var(--green);background:0 0;border-radius:0;font-size:13px;font-weight:600}.triagerow-text{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.triagerow-name{font-size:13.5px;font-weight:600}.triagerow-meta{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.triagerow-chevron{color:var(--muted);flex-shrink:0;font-size:13px}.triagerow.resolved{border-style:dashed;border-color:var(--line);opacity:.72;background:0 0}.triagerow.resolved .triagerow-name{font-weight:500}@media (max-width:760px){.triage{grid-template-columns:1fr}}.ledger{border-top:1px solid var(--line);flex-direction:column;display:flex}.ledgerrow{border-bottom:1px solid var(--line);grid-template-columns:10px minmax(90px,auto) 1fr auto auto;align-items:center;gap:14px;padding:11px 4px;font-size:13px;display:grid}.ledgerrow-dot{background:var(--line2);border-radius:50%;width:8px;height:8px}.ledgerrow-dot.pass{background:var(--green)}.ledgerrow-name{font-weight:600}.ledgerrow-detail{color:var(--muted)}.ledgerrow-stat{color:var(--ink);font-variant-numeric:tabular-nums}.ledgerrow-when{color:var(--muted);white-space:nowrap;font-size:12px}@media (max-width:640px){.ledgerrow{grid-template-columns:10px 1fr;row-gap:3px}.ledgerrow-detail,.ledgerrow-stat,.ledgerrow-when{grid-column:2}}.fbform{margin-top:4px}.authstage{--bg:#f2ebdd;--panel:#fff;--ink:#2b1e14;--muted:#6a6559;--line:#2b1e141a;--line2:#2b1e142e;--accent:#9a5217;--accent-soft:#f4e2cb;--accent-bright:#b5651d;--green:#5e6c52;--green-soft:#e6eae1;--red:#a3402f;--red-soft:#f7e9e5;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);min-height:100vh;display:grid}.authstage-canvas{isolation:isolate;background:var(--emphasis-bg);color:var(--emphasis-ink);align-items:center;padding:64px 64px 64px 72px;display:flex;position:relative;overflow:hidden}.authstage-canvas:before{content:"";z-index:0;opacity:.9;background-image:repeating-linear-gradient(#f2ebdd26 0 1px,#0000 1px 11px,#f2ebdd26 11px 12px,#0000 12px 22px,#f2ebdd26 22px 23px,#0000 23px 33px,#f2ebdd26 33px 34px,#0000 34px 44px,#f2ebdd26 44px 45px,#0000 45px 100px);position:absolute;inset:0}.authstage-content{z-index:1;max-width:480px;position:relative}.authstage-word{font-family:var(--serif);letter-spacing:-.01em;color:var(--emphasis-ink);margin-bottom:20px;font-size:clamp(46px,6vw,80px);font-weight:400;line-height:.95;text-decoration:none;display:block}.authstage-dot{color:var(--accent-bright)}.authstage-kicker{letter-spacing:.14em;text-transform:uppercase;color:#d8a671;align-items:baseline;gap:8px;margin:0 0 14px;font-size:11px;font-weight:600;display:inline-flex}.authstage-kicker:before{content:"";background:var(--accent-bright);width:14px;height:2px;display:inline-block}.authstage-aside{font-family:var(--serif);color:#eadfc7;max-width:36ch;margin:0;font-size:19px;font-style:italic;font-weight:400;line-height:1.55}.authstage-panel{background:var(--bg);justify-content:center;align-items:center;padding:56px 40px;display:flex}.authstage-formwrap{width:100%;max-width:380px}.authstage-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-size:11px;font-weight:600}.authstage-heading{font-family:var(--serif);color:var(--ink);margin:0 0 10px;font-size:34px;font-weight:400;line-height:1.05}.authstage-sub{color:var(--muted);max-width:34ch;margin:0 0 30px;font-size:13.5px;line-height:1.55}.ledgerfield{margin-bottom:22px;display:block}.ledgerfield>span{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;font-size:11px;font-weight:600;display:block}.ledgerfield input{border:0;border-bottom:1.5px solid var(--line2);width:100%;font:inherit;color:var(--ink);background:0 0;border-radius:0;padding:8px 2px 10px;font-size:15px}.ledgerfield input::placeholder{color:#2b1e1452}.ledgerfield input:focus{border-bottom-color:var(--accent)}.authstage-submit{background:var(--accent);color:#fff9f0;cursor:pointer;border:0;border-radius:999px;width:100%;margin-top:8px;padding:13px 20px;font-size:14px;font-weight:600}.authstage-submit:hover{background:#7c4212}.authstage-submit:disabled{opacity:.55;cursor:wait}.authstage-links{color:var(--muted);margin-top:26px;font-size:12.5px;line-height:1.8}.authstage-links a{color:var(--accent);font-weight:500;text-decoration:none}.authstage-links a:hover{text-decoration:underline}.authstage-divider{color:var(--line2);margin:0 6px}.authstage-badge{background:var(--green-soft);width:44px;height:44px;color:var(--green);border-radius:50%;place-items:center;margin-bottom:16px;font-size:20px;display:grid}.authstage-badge.warn{background:var(--red-soft);color:var(--red)}@media (max-width:860px){.authstage{grid-template-columns:1fr}.authstage-canvas{align-items:flex-start;padding:40px 24px 34px}.authstage-content{max-width:none}.authstage-word{margin-bottom:12px;font-size:clamp(36px,11vw,48px)}.authstage-aside{display:none}.authstage-panel{padding:40px 24px 64px}}.authwrap{place-items:center;min-height:100vh;padding:24px;display:grid}.authcard{background:var(--panel);border:1px solid var(--line);border-radius:20px;width:100%;max-width:380px;padding:34px 30px;box-shadow:0 8px 40px #1c1b180d}.authmark{font-family:var(--serif);text-align:center;margin-bottom:4px;font-size:30px;text-decoration:none;display:block}.authtag{text-align:center;color:var(--muted);margin-bottom:26px;font-size:13px}.authcard .field:last-of-type{margin-bottom:18px}.authcard .primary{width:100%;padding:12px;font-size:14px}.authnote{text-align:center;color:var(--muted);margin-top:16px;font-size:12.5px;line-height:1.6}.authsent{text-align:center;padding:8px 0}.authsent .big-check{background:var(--green-soft);width:48px;height:48px;color:var(--green);border-radius:50%;place-items:center;margin:0 auto 14px;font-size:22px;display:grid}.authsent h2{font-family:var(--serif);margin-bottom:8px;font-size:22px;font-weight:400}.rolepick{gap:8px;display:flex}.rolepick label{flex:1}.rolepick input{opacity:0;pointer-events:none;position:absolute}.rolepick span{text-align:center;border:1px solid var(--line2);cursor:pointer;color:var(--muted);border-radius:10px;padding:12px;font-size:13px;font-weight:500;display:block}.rolepick input:checked+span{border-color:var(--ink);color:var(--ink);background:var(--bg);box-shadow:inset 0 0 0 1px var(--ink)}.invitepage{justify-content:center;align-items:center;min-height:100vh;padding:32px 20px;display:flex}.invite-status{background:var(--panel);border:1px solid var(--line);text-align:center;border-radius:20px;width:100%;max-width:400px;padding:40px 32px;box-shadow:0 8px 40px #1c1b180d}.invite-status .invite-mark{text-align:center;opacity:1;color:var(--ink);margin-bottom:22px;display:block}.invite-status h2{font-family:var(--serif);margin-bottom:10px;font-size:22px;font-weight:400}.invite-status p{color:var(--muted);font-size:13.5px;line-height:1.6}.invite-status .big-check{background:var(--green-soft);width:48px;height:48px;color:var(--green);border-radius:50%;place-items:center;margin:0 auto 16px;font-size:22px;display:grid}.invite-status a{text-decoration:underline}.invite-shell{--bg:#f2ebdd;--panel:#fff;--ink:#2b1e14;--muted:#6a6559;--line:#2b1e141a;--line2:#2b1e142e;--accent:#9a5217;--accent-soft:#f4e2cb;--accent-bright:#b5651d;--green:#5e6c52;--green-soft:#e6eae1;--red:#a3402f;--red-soft:#f7e9e5;border-radius:24px;grid-template-columns:1fr 1fr;width:100%;max-width:880px;display:grid;overflow:hidden;box-shadow:0 24px 70px #1c1b181a}@media (max-width:760px){.invite-shell{grid-template-columns:1fr;max-width:440px}}.invite-welcome{background:var(--emphasis-bg);color:var(--emphasis-ink);flex-direction:column;justify-content:space-between;padding:48px 42px;display:flex}@media (max-width:760px){.invite-welcome{padding:36px 30px 30px}}.invite-mark{font-family:var(--serif);color:var(--emphasis-ink);opacity:.82;font-size:19px;text-decoration:none}.invite-welcome h1{font-family:var(--serif);margin:30px 0 14px;font-size:33px;font-weight:400;line-height:1.14}.invite-sub{color:#f2ebdda8;max-width:30ch;font-size:14px;line-height:1.6}.invite-ready{background:#f2ebdd14;border:1px solid #f2ebdd29;border-radius:999px;align-items:center;gap:10px;width:fit-content;margin-top:36px;padding:7px 15px 7px 7px;display:inline-flex}.invite-ready-dot{background:var(--accent-bright);color:#201509;border-radius:50%;flex-shrink:0;place-items:center;width:22px;height:22px;font-size:11px;display:grid}.invite-ready span{color:var(--emphasis-ink);font-size:12px;font-weight:500}.invite-panel{background:var(--panel);flex-direction:column;justify-content:center;padding:48px 42px;display:flex}@media (max-width:760px){.invite-panel{padding:32px 30px 40px}}.invite-panel-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;font-size:11px;font-weight:600}.invite-panel h2{margin:0 0 22px;font-size:18px;font-weight:600}.invite-panel .field:last-of-type{margin-bottom:20px}.invite-panel .primary{width:100%;padding:13px;font-size:14px}.invite-panel .authnote{text-align:left;margin-top:18px}.docpage{min-height:100vh}.doctop{border-bottom:1px solid var(--line);padding:22px 24px}.doctop-inner{justify-content:space-between;align-items:center;max-width:1060px;margin:0 auto;display:flex}.docmark{font-family:var(--serif);color:var(--ink);font-size:20px;text-decoration:none}.docback{color:var(--muted);font-size:12.5px;text-decoration:none}.docback:hover{color:var(--ink)}.docbody{grid-template-columns:216px 1fr;align-items:start;gap:64px;max-width:1060px;margin:0 auto;padding:48px 24px 110px;display:grid}@media (max-width:860px){.docbody{grid-template-columns:1fr;gap:30px;padding-top:34px}}.docrail{position:sticky;top:28px}@media (max-width:860px){.docrail{position:static}}.doceyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:12px;font-size:11px;font-weight:600}.docnav{flex-direction:column;gap:2px;display:flex}.docnav a{color:var(--muted);border-radius:8px;margin-left:-10px;padding:7px 10px;font-size:13px;text-decoration:none;display:block}.docnav a:hover{color:var(--ink);background:var(--panel)}@media (max-width:860px){.docnav{flex-flow:wrap;gap:8px}.docnav a{border:1px solid var(--line);border-radius:999px;margin-left:0;padding:6px 13px}}.docmeta{color:var(--muted);margin-top:24px;font-size:12px;line-height:1.7}.docmeta a{color:var(--accent)}.docmain{max-width:640px}.dochead h1{font-family:var(--serif);margin:0 0 12px;font-size:42px;font-weight:400;line-height:1.05}.dochead .doclede{color:var(--muted);max-width:52ch;font-size:15.5px;line-height:1.65}.doctldr{background:var(--accent-soft);border-radius:16px;margin:30px 0 44px;padding:24px 26px}.doctldr h2{letter-spacing:.07em;text-transform:uppercase;color:var(--accent);margin:0 0 14px;font-size:11.5px;font-weight:700}.doctldr ul{flex-direction:column;gap:11px;margin:0;padding-left:18px;display:flex}.doctldr li{font-size:14px;line-height:1.55}.docsection{border-top:1px solid var(--line);padding:32px 0;scroll-margin-top:96px}.docsection:first-of-type{border-top:none;padding-top:0}.docsection h2{letter-spacing:.06em;text-transform:uppercase;color:var(--ink);align-items:baseline;gap:10px;margin:0 0 16px;font-size:12px;font-weight:700;display:flex}.docsection h2 .docnum{color:var(--accent);font-variant-numeric:tabular-nums}.docsection p,.docsection li{color:var(--ink);font-size:14.5px;line-height:1.7}.docsection p+p{margin-top:12px}.docsection ul{flex-direction:column;gap:8px;margin:10px 0;padding-left:20px;display:flex}.docsection a{color:var(--accent)}.docfooter{border-top:1px solid var(--line);color:var(--muted);margin-top:30px;padding-top:28px;font-size:13px}.docfooter a{color:var(--accent)}.docfaq details{border-bottom:1px solid var(--line);padding:15px 0}.docfaq details:last-child{border-bottom:none}.docfaq summary{cursor:pointer;justify-content:space-between;align-items:baseline;gap:14px;font-size:14.5px;font-weight:500;list-style:none;display:flex}.docfaq summary::-webkit-details-marker{display:none}.docfaq summary:after{content:"+";color:var(--accent);flex-shrink:0;font-weight:600}.docfaq details[open] summary:after{content:"–"}.docfaq details p{color:var(--muted);margin-top:10px;font-size:14px;line-height:1.6}.landing{max-width:1080px;margin:0 auto;padding:0 24px}.landing-header{background:var(--bg);z-index:5;justify-content:space-between;align-items:center;padding:20px 0;display:flex;position:sticky;top:0}.landing-mark{font-size:22px}.landing-headernav{align-items:center;gap:22px;display:flex}.landing-headernav a{color:var(--muted);font-size:13.5px;font-weight:500;text-decoration:none}.landing-headernav a:hover{color:var(--ink)}.landing-headernav a:last-child{color:var(--emphasis-ink);background:var(--emphasis-bg);border-radius:999px;padding:8px 16px}.landing-headernav a:last-child:hover{color:#fff;opacity:.88}.landing-hero{max-width:640px;padding:64px 0 56px}.landing-hero h1{margin-bottom:18px;font-size:44px;font-weight:400;line-height:1.12}.landing-sub{color:var(--muted);margin-bottom:28px;font-size:16px;line-height:1.6}.landing-herobtns{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.landing-herobtns .primary{padding:13px 22px;font-size:14px;text-decoration:none;display:inline-block}.landing-secondary{color:var(--ink);text-underline-offset:3px;font-size:13.5px;font-weight:500;text-decoration:underline}.landing-roles{grid-template-columns:repeat(3,1fr);gap:16px;padding:12px 0 60px;scroll-margin-top:80px;display:grid}.landing-rolecard{background:var(--panel);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:10px;padding:22px;display:flex}.landing-rolecard p{color:var(--muted);flex:1;font-size:13.5px;line-height:1.55}.landing-rolelink{color:var(--accent);font-size:13.5px;font-weight:600;text-decoration:none}.landing-rolelink:hover{text-decoration:underline}.landing-how{border-top:1px solid var(--line);padding:50px 0}.landing-how h2{margin-bottom:30px;font-size:26px;font-weight:400}.landing-steps{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.landing-stepnum{background:var(--accent-soft);width:28px;height:28px;color:var(--accent);border-radius:50%;place-items:center;margin-bottom:12px;font-size:13px;font-weight:600;display:inline-grid}.landing-step h3{margin-bottom:6px;font-size:15px;font-weight:600}.landing-step p{color:var(--muted);font-size:13.5px;line-height:1.55}.landing-features{border-top:1px solid var(--line);padding:40px 0 60px}.landing-featuregrid{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.landing-feature h3{margin-bottom:6px;font-size:14px;font-weight:600}.landing-feature p{color:var(--muted);font-size:13px;line-height:1.5}.landing-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;padding:26px 0 40px;font-size:13px;display:flex}.landing-footer nav{gap:18px;display:flex}.landing-footer a{color:var(--muted);text-decoration:none}.landing-footer a:hover{color:var(--ink)}@media (max-width:760px){.landing-hero{padding:40px 0}.landing-hero h1{font-size:32px}.landing-roles,.landing-steps,.landing-featuregrid{grid-template-columns:1fr}.landing-featuregrid{gap:24px}}.reviewhint{margin:4px 0 14px}.reviewedit-toggle{margin-bottom:18px;text-decoration:none;display:inline-block}.reviewnav{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:24px;padding-top:16px;display:flex}.reviewchoices{flex-direction:column;gap:6px;margin:4px 0 10px;list-style:none;display:flex}.reviewchoices li{border-radius:8px;align-items:center;gap:8px;padding:6px 10px;font-size:13.5px;display:flex}.reviewchoices li.correct{background:var(--green-soft);font-weight:500}.reviewcorrect-badge{letter-spacing:.05em;text-transform:uppercase;color:var(--green);font-size:10px;font-weight:700}.be-review-link{color:var(--accent);margin:6px 0 10px;font-size:12.5px;font-weight:500;text-decoration:none;display:inline-block}.be-review-link:hover{text-decoration:underline}.planbar-actions{align-items:center;gap:16px;display:flex}.reviewweek-link{color:var(--accent);font-size:13px;font-weight:500;text-decoration:none}.reviewweek-link:hover{text-decoration:underline}.publish-rec{border-left:2px solid var(--accent);color:var(--ink);max-width:62ch;margin:0 0 12px;padding:2px 0 2px 12px;font-size:12.5px;line-height:1.5}.skillcheck{max-width:760px}.skilltrack{margin:22px 0 26px}.skilltrack h3{margin:0 0 2px;font-size:17px}.skilltrack-sub{color:var(--muted);margin:0 0 10px;font-size:12px}.skillrungs{flex-direction:column;gap:6px;display:flex}.skillrung{border:1px solid var(--line);cursor:pointer;background:var(--panel);border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.skillrung:hover{border-color:var(--line2)}.skillrung.on{border-color:var(--accent);background:var(--accent-soft)}.skillrung input{accent-color:var(--accent);flex:none;margin-top:3px}.skillrung-text{flex-direction:column;gap:2px;display:flex}.skillrung-lead{font-size:13.5px;line-height:1.45}.skillrung-also{color:var(--muted);font-size:12.5px;line-height:1.45}.skillrung.unsure{border-style:dashed}.skillcheck-actions{align-items:center;gap:12px;margin-top:24px;display:flex}.skillcheck-saved{color:var(--green);font-size:12.5px;font-weight:500}.revieweditor-segment{margin-bottom:16px}.revieweditor-actions{align-items:center;gap:14px;margin-top:20px;display:flex}.reviewsaved{color:var(--green);font-size:13px;font-weight:500}.reviewerror{color:var(--red);font-size:13px}.reviewchoice-row{align-items:center;gap:10px;margin-bottom:8px;display:flex}.reviewchoice-row input[type=radio]{flex-shrink:0;width:auto}.reviewchoice-row input[type=text],.reviewchoice-row input:not([type=radio]){flex:1}.fullreview-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;display:flex}.fullreview-count{font-family:var(--serif);margin-top:2px;font-size:19px;display:block}.fullreview-day{margin-bottom:18px}.fullreview-card{border-top:1px solid var(--line);margin-top:16px;padding-top:16px}.fullreview-card:first-of-type{border-top:0;margin-top:0;padding-top:0}.fullreview-cardhead{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.fullreview-cardtitle{font-size:14.5px;font-weight:600}.fullreview-notbuilt{background:var(--bg);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}@media (max-width:620px){.planbar{flex-wrap:wrap;gap:10px}}.progresspanel{flex-direction:column;gap:32px;display:flex}.progresspanel section h3{margin-bottom:12px}.feel-list{flex-direction:column;gap:8px;list-style:none;display:flex}.feel-list li{border:1px solid var(--line);background:var(--panel);border-radius:10px;align-items:center;gap:10px;padding:9px 14px;display:flex}.feel-dot{background:var(--line2);border-radius:50%;flex-shrink:0;width:8px;height:8px}.feel-list li.feel-struggled .feel-dot{background:var(--accent)}.feel-title{flex:1;font-size:13.5px}.feel-tag{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:11.5px}.acc-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.acc-head h3{margin-bottom:0}.acc-window{color:var(--muted);font-size:12px}.acc-list{flex-direction:column;list-style:none;display:flex}.acc-list li{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) 132px 84px;align-items:center;gap:16px;padding:10px 0;font-size:13.5px;display:grid}.acc-list li:first-child{border-top:0}.acc-name{flex-direction:column;gap:1px;min-width:0;display:flex}.acc-meta{color:var(--muted);font-size:11.5px}.acc-bar{background:var(--line);border-radius:3px;height:6px;overflow:hidden}.acc-bar i{background:var(--accent);border-radius:3px;height:100%;display:block}.acc-pct{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.acc-pct b{font-weight:600}.acc-n{color:var(--muted);font-size:11.5px;display:block}.acc-strong .acc-bar i{background:var(--green)}.acc-weak .acc-bar i{background:var(--red)}.acc-thin{color:var(--muted)}.acc-thin .acc-bar i{background:var(--line2)}.acc-footnote{color:var(--muted);margin-top:12px;font-size:12px}.chatthread{border:1px solid var(--line);border-radius:10px;margin-bottom:8px;overflow:hidden}.chatthread summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:13.5px;list-style:none;display:flex}.chatthread summary::-webkit-details-marker{display:none}.chatthread summary:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.chatthread-title{font-weight:500}.chatthread-meta{color:var(--muted);white-space:nowrap;font-size:12px}.chatthread-messages{border-top:1px solid var(--line);flex-direction:column;gap:10px;padding:12px 14px;display:flex}.chatmsg p{white-space:pre-wrap;margin:2px 0 0;font-size:13.5px}.chatmsg-role{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:11px;font-weight:600}.chatmsg-assistant .chatmsg-role{color:var(--accent)}@media (max-width:760px){.acc-list li{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px}.acc-name{grid-column:1/-1}.chatthread-meta{display:none}.tlayout{grid-template-columns:minmax(0,1fr)}.roster{border-right:0;border-bottom:1px solid var(--line);gap:6px;padding:12px;display:flex;overflow-x:auto}.roster-head{display:none}.stu{min-width:200px}.tmain{padding:22px 18px}.grid2{grid-template-columns:1fr}.trow{grid-template-rows:auto auto;grid-template-columns:32px minmax(0,1fr)}.tgoal{grid-column:2}.top{padding:14px 18px}.blockedit{grid-template-columns:52px minmax(0,1fr) 28px;gap:8px}.be-tools{flex-wrap:wrap}.be-practice-selects select{min-width:0}}.drillbrief{margin-bottom:14px}.drillbrief-skill{color:var(--ink);margin:0 0 6px;font-size:15px;line-height:1.45}.drillbrief-howto{color:var(--ink);margin:0;font-size:13.5px;line-height:1.5}.drillbrief-mic{color:var(--muted);margin:8px 0 0;font-size:12.5px;line-height:1.5}.micnotice{display:block}.micnotice-help{margin:6px 0 0;font-weight:400;line-height:1.45}.micnotice-retry{margin-top:8px;padding:0}.smart-actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px;display:flex}.smart-actions .ghosty{color:var(--ink);border:1px solid var(--line2);font:inherit;cursor:pointer;background:0 0;border-radius:10px;padding:10px 16px;font-size:13px}.smart-actions .ghosty:hover{border-color:var(--ink);background:var(--panel)}.smart-actions .ghosty:disabled{opacity:.5;cursor:wait}.smart-self{margin-top:16px;display:inline-block}.smart-error{color:var(--red);margin:12px 0 0}.smart-questions{padding:18px}.smart-q{margin-bottom:18px}.smart-q .eyebrow{margin-bottom:8px;display:block}.smart-q .feels{flex-wrap:wrap;overflow:visible}.smart-q .feel{flex-direction:column;align-items:flex-start;gap:1px;padding:8px 14px;display:inline-flex}.smart-qsub{opacity:.75;font-size:11px}.smart-run{padding:16px}.smart-progress{gap:4px;margin:10px 0 14px;display:flex}.smart-pip{background:var(--line2);border-radius:2px;flex:1 1 0;height:3px}.smart-pip.done{background:var(--ink)}.smart-pip.on{background:var(--accent)}.smart-what{color:var(--ink);margin:0 0 14px;line-height:1.45}.smart-summary{text-align:center;padding:22px 18px}.smart-summary h2{margin:4px 0 6px;font-size:24px}.smart-summary .sub{max-width:36ch;margin:0 auto}.smart-teach{padding:18px}.smart-lesson h2{margin:0 0 8px;font-size:20px;line-height:1.25}.smart-why{color:var(--muted);margin:0 0 14px;line-height:1.5}.smart-idea{margin:0 0 16px;padding-left:18px}.smart-idea li{margin-bottom:7px;line-height:1.5}.smart-tryit{border-top:1px solid var(--line);margin-bottom:14px;padding-top:14px}.smart-tryit .eyebrow{margin-bottom:6px;display:block}.smart-tryit ol{margin:0;padding-left:18px}.smart-tryit li{margin-bottom:6px;line-height:1.5}.smart-listen{color:var(--muted);margin:0;font-size:13.5px;line-height:1.5}.smart-listen .eyebrow{margin-bottom:4px;display:block}.prac-head{margin-bottom:22px}.prac-head h1{font-family:var(--serif);font-size:34px;font-weight:400;line-height:1.1}.prac-head p{color:var(--muted);margin-top:6px}.prac-toolhead{margin-bottom:18px}.prac-back{color:var(--muted);margin-bottom:10px;font-size:12.5px;font-weight:500;text-decoration:none;display:inline-block}.prac-back:hover{color:var(--ink)}.prac-toolhead h1{font-family:var(--serif);font-size:27px;font-weight:400;line-height:1.15}.prac-toolhead p{color:var(--muted);margin-top:3px;font-size:13px}.prac-section{align-items:center;gap:12px;margin:0 0 14px;display:flex}.prac-section span{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);white-space:nowrap;font-size:10.5px;font-weight:600}.prac-section:after{content:"";background:var(--line);flex:1;height:1px}.prac-label{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-size:10.5px;font-weight:600;display:block}.prac-list{flex-direction:column;margin-bottom:34px;display:flex}.prac-row{color:inherit;border-radius:12px;align-items:center;gap:16px;padding:16px 6px;text-decoration:none;transition:background-color .12s;display:flex}.prac-row+.prac-row{border-top:1px solid var(--line)}.prac-row:hover{background:var(--line)}.prac-row:hover .prac-row-ico{transform:scale(1.07)}.prac-row:focus-visible{outline:2px solid var(--accent-bright);outline-offset:-2px}.prac-row-ico{background:var(--accent-soft);width:44px;height:44px;color:var(--accent);border-radius:50%;flex:none;place-items:center;transition:transform .15s;display:grid}.prac-row.started .prac-row-ico{background:var(--green-soft);color:var(--green)}.prac-row-ico svg{stroke:currentColor;fill:none;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.prac-row-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.prac-row-body b{font-size:15.5px;font-weight:600}.prac-row-body small{color:var(--muted);font-size:12.5px;line-height:1.4}.prac-row-meta{flex-shrink:0;align-items:center;gap:10px;display:flex}.prac-row-tag{letter-spacing:.06em;text-transform:uppercase;color:var(--green);background:var(--green-soft);white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:10px;font-weight:600}.prac-row-chevron{opacity:.35;font-size:14px}.prac-toolbelt{border:1px solid var(--line);background:var(--panel);border-radius:16px;display:flex;overflow:hidden}.prac-toolslot{min-width:0;color:inherit;flex:1 1 0;align-items:center;gap:12px;padding:15px 16px;text-decoration:none;transition:background-color .12s;display:flex}.prac-toolslot:hover{background:var(--bg)}.prac-toolslot:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.prac-toolslot+.prac-toolslot{border-left:1px solid var(--line)}.prac-toolslot-ico{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);border-radius:9px;flex:none;place-items:center;display:grid}.prac-toolslot-ico svg{stroke:currentColor;fill:none;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.prac-toolslot-body{flex-direction:column;gap:1px;min-width:0;display:flex}.prac-toolslot-body b{font-size:13.5px;font-weight:600}.prac-toolslot-body small{color:var(--muted);font-size:11.5px;line-height:1.3}@media (max-width:520px){.prac-head h1{font-size:29px}.prac-row{gap:13px;padding:14px 4px}.prac-row-ico{width:38px;height:38px}.prac-toolbelt{flex-direction:column}.prac-toolslot+.prac-toolslot{border-left:none;border-top:1px solid var(--line)}}.prac-hero{background:var(--emphasis-bg);color:var(--emphasis-ink);border-radius:20px;margin-bottom:36px;padding:36px 34px 30px;position:relative;overflow:hidden;box-shadow:0 20px 44px -20px #2b1e1480}.prac-hero-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#d8a671;margin-bottom:16px;font-size:11px;font-weight:600;display:block}.prac-hero h2{font-family:var(--serif);letter-spacing:-.01em;max-width:14ch;margin:0 0 10px;font-size:40px;font-weight:400;line-height:1.05}.prac-hero-sub{color:#eadfc7;max-width:38ch;margin:0 0 24px;font-size:15px}.prac-hero-cta{background:var(--accent-bright);color:#fff9f0;cursor:pointer;border:none;border-radius:12px;align-items:center;gap:8px;padding:14px 26px;font-size:15px;font-weight:600;display:inline-flex}.prac-hero-cta:hover{background:#c4711f}.prac-hero-cta:focus-visible{outline:2px solid var(--bg);outline-offset:2px}.prac-hero-alts{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.prac-hero-alt{color:#eadfc7;cursor:pointer;background:0 0;border:1px solid #f2ebdd40;border-radius:10px;padding:10px 16px;font-size:13px;font-weight:500}.prac-hero-alt:hover{background:#f2ebdd0f;border-color:#f2ebdd80}.prac-hero-alt:disabled{opacity:.5;cursor:wait}.prac-hero-error{color:#f0b39a;margin:16px 0 0;font-size:13px}@media (max-width:560px){.prac-hero{padding:28px 22px 24px}.prac-hero h2{max-width:none;font-size:32px}}.tappad{border:2px dashed var(--line2);background:var(--accent-soft);width:100%;min-height:132px;color:var(--accent);font:inherit;cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:6px;margin-top:4px;transition:transform 40ms,background 40ms;display:flex}.tappad:active{background:#efe3cb;transform:scale(.985)}.tappad:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tappad-label{font-family:var(--serif);font-size:26px;line-height:1}.tappad-count{letter-spacing:.06em;color:var(--muted);font-size:12.5px;font-weight:600}.techtrain{flex-direction:column;gap:18px;display:flex}@media (min-width:640px){.techtrain{flex-direction:row;align-items:flex-start;gap:24px}}.techrail{border:1px solid var(--line);background:var(--panel);border-radius:14px;flex-shrink:0;padding:14px}@media (min-width:640px){.techrail{width:208px;position:sticky;top:18px}}.techrail-progress{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;padding:0 2px;font-size:10.5px;font-weight:600}.techrail-list{flex-direction:column;gap:2px;display:flex}@media (max-width:639px){.techrail-list{flex-direction:row;gap:6px;padding-bottom:2px;overflow-x:auto}}.techrail-item{cursor:pointer;text-align:left;font:inherit;color:var(--ink);background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;padding:9px 8px;transition:background-color .12s;display:flex}.techrail-item:hover{background:var(--bg)}.techrail-item.active{background:var(--accent-soft)}@media (max-width:639px){.techrail-item{flex-direction:column;flex-shrink:0;align-items:center;gap:5px;padding:8px 12px}}.techrail-status{border:1.5px solid var(--line2);width:24px;min-width:24px;height:24px;color:var(--muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.techrail-item.cleared .techrail-status{background:var(--green);border-color:var(--green);color:var(--bg)}.techrail-item.active:not(.cleared) .techrail-status{border-color:var(--accent);color:var(--accent)}.techrail-label{color:var(--ink);white-space:nowrap;font-size:13px;font-weight:500}.techrail-item.active .techrail-label{color:var(--accent);font-weight:600}@media (max-width:639px){.techrail-label{white-space:normal;text-align:center;font-size:11.5px}}.techfocus{flex:1;min-width:0}.techfocus-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.techfocus-title{font-family:var(--serif);letter-spacing:-.01em;margin:0;font-size:24px;font-weight:400;line-height:1.15}.techfocus-tally{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0;font-size:12.5px;font-weight:600}.sr{flex-direction:column;gap:14px;display:flex}.sr-meta{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding-bottom:12px;display:flex}.sr-meta-badge{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:4px 10px;font-size:10.5px;font-weight:700}.sr-meta-fact{color:var(--ink);font-size:13px;font-weight:600}.sr-meta-sep{background:var(--line2);border-radius:50%;width:3px;height:3px}.sr-tally{color:var(--muted);margin-left:auto;font-size:12px}.sr-howto{color:var(--muted);max-width:62ch;margin:0;font-size:13.5px;line-height:1.55}.sr-setup{padding:2px 0 4px}.sr-warn{margin:0}.sr-stand{background:var(--panel);box-shadow:0 14px 30px -20px #2b1e1459, 0 1px 0 var(--line);border-radius:14px;padding:22px 18px 26px;position:relative;overflow-x:auto}.sr-stand svg{max-width:100%;height:auto}.sr-stand-ledge{background:var(--accent-soft);border-radius:2px;height:3px;position:absolute;bottom:10px;left:18px;right:18px}@media (max-width:520px){.sr-stand{padding:18px 14px 22px}}.sr-micfallback{margin:-4px 0 0}.sr-controls{flex-direction:column;gap:10px;display:flex}.sr-dock{-ms-overflow-style:none;scrollbar-width:none;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.sr-dock::-webkit-scrollbar{display:none}.sr-ctrl{border:1px solid var(--line);background:var(--panel);min-width:74px;color:var(--muted);cursor:pointer;white-space:nowrap;border-radius:11px;flex-direction:column;flex:none;align-items:center;gap:4px;padding:9px 10px 8px;font-size:11px;font-weight:600;transition:border-color .12s,color .12s,background-color .12s;display:flex}.sr-ctrl:hover:not(:disabled){border-color:var(--line2);color:var(--ink)}.sr-ctrl:disabled{opacity:.45;cursor:default}.sr-ctrl.on{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.sr-ctrl-ico{font-size:15px;line-height:1}.sr-go{background:var(--emphasis-bg);width:100%;color:var(--emphasis-ink);cursor:pointer;border:0;border-radius:12px;padding:15px 16px;font-size:15px;font-weight:600;transition:background-color .12s,transform 50ms}.sr-go:hover:not(:disabled){background:var(--accent-bright)}.sr-go:active:not(:disabled){transform:scale(.99)}.sr-go:disabled{opacity:.5;cursor:default}.sr-go.on{background:var(--red)}.sr-result,.sr-selfcheck{text-align:center;border-radius:14px;padding:20px 22px}.sr-result.pass{background:var(--green-soft)}.sr-result.retry,.sr-selfcheck{background:var(--accent-soft)}.sr-result-word{font-family:var(--serif);color:var(--ink);margin-bottom:10px;font-size:24px;font-weight:400;display:block}.sr-result-stats{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:6px 18px;margin-bottom:6px;font-size:13px;display:flex}.sr-result-stats b{color:var(--ink);font-weight:700}.sr-result-note{max-width:40ch;margin:6px auto 0}.sr-self-row{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:12px;display:flex}.sr-self{border:1px solid var(--line2);background:var(--panel);color:var(--ink);cursor:pointer;border-radius:999px;padding:8px 18px;font-size:13px;font-weight:600}.sr-self:disabled{opacity:.5;cursor:default}.sr-self.on.got_it{background:var(--green);border-color:var(--green);color:#fff}.sr-self.on.shaky{background:var(--accent);border-color:var(--accent);color:#fff}.sr-self.on.lost_it{background:var(--red);border-color:var(--red);color:#fff}.sr-level{flex-direction:column;gap:10px;display:flex}.sr-level-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.sr-level-stepper{align-items:center;gap:10px;display:flex}.sr-level-num{color:var(--muted);font-size:13px}.sr-level-num b{color:var(--ink);font-weight:700}.sr-customize-toggle{font-size:12.5px}.sr-drawer{border:1px dashed var(--line2);background:var(--bg);border-radius:12px;padding:16px}.todaypage .shead{margin-bottom:30px}.today-dateline{color:var(--muted);margin-top:4px;font-size:13px}.weekdots{gap:16px;margin-bottom:30px;padding-bottom:2px;display:flex;overflow-x:auto}.daydot{cursor:pointer;background:0 0;border:0;flex-direction:column;flex-shrink:0;align-items:center;gap:6px;padding:4px;display:flex}.daydot .dot{border-radius:50%;width:8px;height:8px}.daydot.done .dot{background:var(--green)}.daydot.istoday .dot{background:var(--accent-bright);box-shadow:0 0 0 3px var(--accent-soft)}.daydot:not(.done):not(.istoday) .dot{border:1.5px solid var(--line2);background:0 0}.daydot .daylabel{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:600}.daydot.istoday .daylabel{color:var(--accent)}.daydot.selected .daylabel{color:var(--ink);font-weight:700}.session{margin-top:2px;padding-left:38px;position:relative}.string-track{background:var(--line2);border-radius:2px;width:2px;position:absolute;top:4px;bottom:26px;left:9px}.string-fill{background:linear-gradient(var(--green), var(--accent-bright));transform-origin:top;width:2px;transform:scaleY(var(--fill,0));border-radius:2px;transition:transform .9s cubic-bezier(.16,1,.3,1);position:absolute;top:4px;bottom:26px;left:9px}.block-row{color:inherit;grid-template-columns:28px 1fr;align-items:flex-start;column-gap:14px;text-decoration:none;display:grid;position:relative}.block-row.done{border-radius:10px;margin-bottom:2px;transition:background-color .12s}.block-row.done:hover{background:var(--line)}.block-row.done:focus-visible{outline:2px solid var(--accent-bright);outline-offset:-2px}.peg{z-index:2;grid-column:1;justify-content:center;padding-top:7px;display:flex;position:relative}.peg-dot{background:var(--bg);border:2px solid var(--line2);border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.peg-dot svg{width:10px;height:10px}.block-row.done .peg-dot{background:var(--green);border-color:var(--green);color:var(--panel)}.done-line{flex-wrap:wrap;grid-column:2;align-items:center;gap:8px 12px;min-height:38px;padding:10px 12px 10px 2px;display:flex}.done-line .title{color:var(--muted);font-size:14px;font-weight:500}.done-line .goal{color:var(--muted);opacity:.75;flex:1;min-width:140px;font-size:13px}.done-line .time{color:var(--green);background:var(--green-soft);white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:600}.block-row.current{margin:16px 0 26px}.block-row.current .peg-dot{background:var(--accent-bright);border-color:var(--accent-bright);width:22px;height:22px;animation:2.4s ease-out infinite pulse-ring;box-shadow:0 0 #b5651d73}@keyframes pulse-ring{0%{box-shadow:0 0 #b5651d73}70%{box-shadow:0 0 0 9px #b5651d00}to{box-shadow:0 0 #b5651d00}}.hero-card{background:var(--panel);border:1px solid var(--accent-bright);border-radius:16px;grid-column:2;padding:26px 22px 24px;animation:.6s cubic-bezier(.16,1,.3,1) both hero-in;box-shadow:0 1px 2px #2b1e140f,0 12px 28px -12px #2b1e1438}@keyframes hero-in{0%{opacity:0;transform:translateY(8px)scale(.985)}}.hero-eyebrow{color:var(--accent);align-items:center;gap:8px;margin-bottom:12px;font-size:12px;font-weight:600;display:inline-flex}.hero-eyebrow .dot{background:var(--accent-bright);border-radius:50%;width:6px;height:6px}.hero-card h2{font-family:var(--serif);letter-spacing:-.005em;margin:0 0 12px;font-size:clamp(26px,6vw,32px);font-weight:400;line-height:1.1}.hero-goal{color:var(--ink);opacity:.88;max-width:46ch;margin:0 0 20px;font-size:15px;line-height:1.5}.hero-meta{flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.start-btn{color:var(--ink);border:1px solid var(--line2);background:0 0;border-radius:11px;align-items:center;padding:10px 16px;font-size:14px;font-weight:500;text-decoration:none;transition:border-color .15s,background .15s;display:inline-flex}.start-btn:hover{border-color:var(--accent-bright);background:var(--accent-soft)}.start-btn:focus-visible{outline:2px solid var(--accent-bright);outline-offset:2px}.watch-btn{background:var(--accent-bright);color:#fff9f0;border-radius:11px;align-items:center;gap:9px;padding:10px 16px 10px 12px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .18s cubic-bezier(.16,1,.3,1),box-shadow .18s;display:inline-flex;box-shadow:0 6px 16px -6px #00000059}.watch-btn:hover{transform:translateY(-1px)scale(1.02);box-shadow:0 10px 22px -8px #0006}.watch-btn:focus-visible{outline:2px solid var(--accent-bright);outline-offset:2px}.watch-btn .playdot{background:#fff3;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;transition:transform .18s;display:flex}.watch-btn .playdot svg{width:11px;height:11px}.watch-btn:hover .playdot{transform:scale(1.1)}.hero-time{color:var(--muted);align-items:center;gap:6px;margin-left:auto;font-size:13px;font-weight:500;display:inline-flex}.hero-time svg{width:14px;height:14px}.chord-art{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:22px;display:flex}.chord-art-multi{gap:20px}.chord-arrow{color:var(--accent);flex-shrink:0}.chord-arrow svg{width:22px;height:14px;display:block}.block-row.upcoming{margin-bottom:6px}.block-row.upcoming .peg-dot{border-color:var(--line2);background:0 0}.upcoming-card{border:1px dashed var(--line2);border-radius:14px;grid-column:2;align-items:center;gap:14px;padding:14px 16px;transition:border-color .15s,background .15s;display:flex}.block-row.upcoming:hover .upcoming-card{border-color:var(--accent);background:var(--accent-soft)}.block-row.upcoming:focus-visible .upcoming-card{border-color:var(--accent-bright);border-style:solid}.block-row.upcoming:focus-visible{outline:2px solid var(--accent-bright);outline-offset:2px;border-radius:14px}.upcoming-wave{background:var(--line);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;display:flex}.upcoming-wave svg{width:14px;height:14px;color:var(--muted)}.upcoming-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.upcoming-body .label{letter-spacing:.03em;text-transform:uppercase;color:var(--muted);margin-bottom:2px;font-size:11px;font-weight:600}.upcoming-body .title{color:var(--ink);opacity:.78;font-size:14.5px;font-weight:500}.upcoming-body .goal{color:var(--muted);font-size:13px}.upcoming-time{color:var(--muted);flex-shrink:0;font-size:12px;font-weight:500}.today-closing{font-family:var(--serif);text-align:center;max-width:40ch;color:var(--muted);margin:26px auto 0;font-size:18px;font-style:italic;line-height:1.5}.lessonrail{margin-bottom:20px}.lessonrail-top{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.lessonrail-eyebrow{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin-bottom:0;overflow:hidden}.railtrack{align-items:center;margin-top:12px;display:flex}.rail-rung{flex:1;align-items:center;display:flex}.rail-rung:last-child{flex:none}.rail-rung:after{content:"";background:var(--line2);flex:1;height:1.5px;margin:0 5px}.rail-rung:last-child:after{content:none}.rail-rung.done:after{background:var(--green);opacity:.55}.rung-dot{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:10.5px;font-weight:700;display:flex}.rail-rung:not(.done):not(.current) .rung-dot{border:1.5px solid var(--line2);color:var(--muted)}.rail-rung.done .rung-dot{background:var(--green);color:var(--bg)}.rail-rung.current .rung-dot{background:var(--accent-bright);color:#fff9f0;box-shadow:0 0 0 4px var(--accent-soft)}a.rail-rung{text-decoration:none}a.rail-rung .rung-dot{transition:transform .12s,box-shadow .12s}a.rail-rung:hover .rung-dot{transform:scale(1.12)}a.rail-rung:focus-visible{outline:none}a.rail-rung:focus-visible .rung-dot{box-shadow:0 0 0 3px var(--accent-soft), 0 0 0 4.5px var(--accent)}.rail-rung.done.current .rung-dot{background:var(--green);color:var(--bg);box-shadow:0 0 0 4px var(--accent-soft)}.lesson-why{margin:16px 0 4px}.lesson-why-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:6px;font-size:11px;font-weight:600;display:block}.lesson-why p{font-family:var(--serif);color:var(--ink);max-width:52ch;font-size:16px;font-style:italic;line-height:1.5}.lessonhero{background:var(--emphasis-bg);color:var(--emphasis-ink);border-radius:16px;margin:18px 0 22px;padding:28px 28px 26px;box-shadow:0 16px 36px -18px #2b1e148c}@media (max-width:560px){.lessonhero{padding:22px 20px}}.lessonhero-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:#d8a671;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;font-size:11px;font-weight:600;display:flex}.lessonhero-tag{color:#eadfc7;letter-spacing:.06em;border:1px solid #f2ebdd52;border-radius:999px;align-items:center;padding:3px 9px;font-size:10px;font-weight:600;display:inline-flex}.lessonhero-text{font-family:var(--serif);letter-spacing:-.005em;margin:0;font-size:25px;font-weight:400;line-height:1.4}.lessonhero-visual{background:var(--bg);border-radius:12px;margin-top:20px;padding:16px}.lessonhero-visual .step-visual{margin-top:0}.lessonhero-watch{background:#a3402f33;border-radius:9px;gap:8px;margin-top:16px;padding:10px 12px;display:flex}.lessonhero-watch .wlabel{letter-spacing:.08em;text-transform:uppercase;color:#e8a98f;white-space:nowrap;margin-top:1px;font-size:9.5px;font-weight:700}.lessonhero-watch p{color:var(--emphasis-ink);font-size:12.5px}.lessonhero-target-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:#d8a671;margin:22px 0 10px;font-size:11px;font-weight:600}.lessonhero-target{font-family:var(--serif);color:var(--emphasis-ink);max-width:48ch;margin:0;font-size:18px;font-style:italic;font-weight:400;line-height:1.4}.lesson-target-card{background:var(--accent-soft);border-radius:12px;margin-bottom:18px;padding:14px 16px}.lesson-target-card .lesson-target-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:6px;font-size:11px;font-weight:600;display:block}.lesson-target-card p{font-family:var(--serif);color:var(--ink);font-size:15.5px;font-style:italic;line-height:1.45}.lesson-target-line{color:var(--muted);margin:0 0 18px;font-size:12.5px;line-height:1.45}.lesson-target-line span{letter-spacing:.07em;text-transform:uppercase;color:var(--accent);margin-right:7px;font-size:11px;font-weight:600}.theorypage{--staff-rule:repeating-linear-gradient(to bottom, transparent 0 6px, var(--line) 6px 7px, transparent 7px 13px)}.theorypage .prac-toolhead{background:var(--panel);border:1px solid var(--line);border-radius:16px;margin:-6px -6px 28px;padding:20px 22px 22px;position:relative;overflow:hidden}.theorypage .prac-toolhead:after{content:"";background:var(--staff-rule);opacity:.55;pointer-events:none;height:13px;position:absolute;bottom:14px;left:22px;right:22px}.theorypage .prac-back{z-index:1;align-items:center;gap:5px;padding:3px 0;display:inline-flex;position:relative}.theorypage .prac-toolhead h1{z-index:1;margin-top:2px;font-size:32px;position:relative}.theorypage .prac-toolhead p{z-index:1;margin-top:6px;font-size:13.5px;position:relative}.theorypage .feels.scrollfade{counter-reset:theorytopic;border-bottom:1px solid var(--line);gap:2px;padding-bottom:0;margin-bottom:22px!important}.theorypage .feels.scrollfade .feel{counter-increment:theorytopic;color:var(--muted);background:0 0;border:none;border-radius:0;padding:9px 14px 12px;font-size:12.5px;font-weight:500;transition:color .12s;position:relative}.theorypage .feels.scrollfade .feel:before{content:counter(theorytopic, decimal-leading-zero) " ";letter-spacing:.04em;color:var(--line2);margin-right:5px;font-size:10px}.theorypage .feels.scrollfade .feel:after{content:"";background:0 0;height:2px;transition:background-color .15s;position:absolute;bottom:-1px;left:10px;right:10px}.theorypage .feels.scrollfade .feel:hover{color:var(--ink)}.theorypage .feels.scrollfade .feel.on{color:var(--ink);background:0 0;font-weight:600}.theorypage .feels.scrollfade .feel.on:before{color:var(--accent)}.theorypage .feels.scrollfade .feel.on:after{background:var(--accent)}.theorypage .tool{background:var(--panel);border:1px solid var(--line);box-shadow:0 1px 0 var(--line), 0 14px 30px -22px #2b1e1447;border-radius:14px;padding:22px 22px 24px;position:relative}.theorypage .tool-head{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:16px}.theorypage .tool-label{font-family:var(--serif);letter-spacing:0;text-transform:none;color:var(--ink);font-size:20px;font-weight:400}.theorypage .tool-head .sub{color:var(--accent);background:var(--accent-soft);border-radius:999px;margin-left:auto;padding:3px 10px;font-size:12px;font-weight:600}.theorypage .levelselect{letter-spacing:.02em;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:600}.theorypage .drillbrief{border-left:2px solid var(--accent-soft);margin-bottom:18px;padding-left:12px}.theorypage .drillbrief-howto{color:var(--muted);font-style:italic}.theorypage .staffbox{background:var(--bg);border:1px solid var(--line);border-radius:10px;margin-bottom:4px;padding:20px 16px;position:relative}.theorypage .staffbox:before,.theorypage .staffbox:after{content:"";background:var(--bg);border:1px solid var(--line2);border-radius:50%;width:6px;height:6px;position:absolute;top:9px}.theorypage .staffbox:before{left:9px}.theorypage .staffbox:after{right:9px}.theorypage .theory-customize-toggle{letter-spacing:.03em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:600}.theorypage .theory-customize-toggle:hover{color:var(--accent)}.theorypage .theory-drawer{transform-origin:top;animation:.18s ease-out theory-unroll}@keyframes theory-unroll{0%{opacity:0;transform:scaleY(.92)translateY(-4px)}to{opacity:1;transform:scaleY(1)translateY(0)}}.theorypage .choicegrid{gap:9px}.theorypage .choicegrid .choice{text-align:left;border-radius:9px;padding:12px 14px 12px 34px;font-weight:500;transition:border-color .12s,transform .12s,background-color .12s;position:relative}.theorypage .choicegrid .choice:before{content:"";border:1.5px solid var(--line2);border-radius:50%;width:14px;height:14px;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.theorypage .choicegrid .choice:hover:not(:disabled){border-color:var(--ink);transform:translateY(-1px)}.theorypage .choicegrid .choice.correct:before{background:#fff;background-image:linear-gradient(45deg, transparent 40%, var(--green) 40% 55%, transparent 55%), linear-gradient(-45deg, transparent 55%, var(--green) 55% 70%, transparent 70%);border-color:#fff}.theorypage .choicegrid .choice.wrong:before{background:#fff;background-image:linear-gradient(45deg, transparent 45%, var(--red) 45% 55%, transparent 55%), linear-gradient(-45deg, transparent 45%, var(--red) 45% 55%, transparent 55%);border-color:#fff}.theorypage .success,.theorypage .notice{border-radius:4px 10px 10px 4px;padding:12px 16px 12px 18px;animation:.2s ease-out theory-annotate;position:relative}.theorypage .success:before,.theorypage .notice:before{content:"";border-radius:3px 0 0 3px;width:3px;position:absolute;top:0;bottom:0;left:0}.theorypage .success:before{background:var(--green)}.theorypage .notice:before{background:var(--accent)}.theorypage .notice.err:before{background:var(--red)}@keyframes theory-annotate{0%{opacity:0;transform:translate(6px)}to{opacity:1;transform:translate(0)}}.theorypage .theory-prompt{font-family:var(--serif);color:var(--ink);font-size:17px;font-style:normal;line-height:1.4}.theorypage .theory-notebook textarea{background-image:repeating-linear-gradient(to bottom, transparent 0 27px, var(--line) 27px 28px);color:var(--ink);padding-top:4px;font-size:14.5px;line-height:28px}@media (max-width:520px){.theorypage .prac-toolhead h1{font-size:26px}.theorypage .tool{padding:18px 16px 20px}.theorypage .tool-label{font-size:18px}}.lessonhero-recap{background:var(--panel);border:1px solid var(--line);border-radius:12px;align-items:flex-start;gap:12px;margin:18px 0 22px;padding:14px 16px;display:flex}.recap-badge{background:var(--green);width:22px;height:22px;color:var(--bg);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;font-size:11px;font-weight:700;display:flex}.lessonhero-recap-body{min-width:0}.lessonhero-recap-text{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.lessonhero-recap .step-visual{margin-top:12px}.check-card{background:var(--panel);border:1px solid var(--accent-soft);border-radius:18px;margin-bottom:14px;padding:24px;box-shadow:0 10px 24px -18px #2b1e1459}.check-card .eyebrow{color:var(--accent)}.check-question{font-family:var(--serif);font-size:20px}.check-card .success,.check-card .notice.err{margin:14px 0 0}.lessonpanel{background:var(--panel);border:1px solid var(--line);border-radius:18px;margin-top:4px;padding:26px 26px 22px}.lessonpanel-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:8px;font-size:11px;font-weight:600;display:block}.lessonpanel-title{font-family:var(--serif);margin:0 0 6px;font-size:25px;font-weight:400}.lessonpanel-sub{color:var(--muted);margin-bottom:4px;font-size:13.5px}.materialschecklist-item{border-radius:10px;align-items:center;gap:10px;margin:0 -10px;padding:12px 10px;font-size:14px;transition:background-color .12s;display:flex}.materialschecklist-item:has(input:checked){background:var(--green-soft)}.materialschecklist-item input{width:18px;height:18px;accent-color:var(--accent)}.finishhero{text-align:center;padding:30px 16px 26px}.finishhero-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:10px;font-size:11px;font-weight:600;display:block}.finishhero-title{font-family:var(--serif);margin:0 0 10px;font-size:30px;font-weight:400}.finishhero-sub{font-family:var(--serif);color:var(--muted);max-width:40ch;margin:0 auto;font-size:16px;font-style:italic;line-height:1.5}.finishrow{flex-direction:column;justify-content:center;align-items:center;gap:16px;margin-top:22px;display:flex}.finishrow .feels{justify-content:center}.finishrow .markdone{background:var(--accent-bright);color:#fff9f0;border-radius:999px;padding:13px 26px;font-size:14px;font-weight:600}.finishrow .markdone.undone{background:var(--panel);color:var(--green);border:1px solid var(--green)}.soloflow{background:var(--bg);min-height:100vh}@media (min-width:900px){.soloflow{grid-template-columns:minmax(320px,38%) 1fr;display:grid}}.solorail{background:var(--emphasis-bg);color:var(--emphasis-ink);flex-direction:column;padding:56px 44px;display:flex;position:relative;overflow:hidden}@media (min-width:900px){.solorail{justify-content:center;min-height:100vh}}@media (max-width:899px){.solorail{padding:40px 24px 32px}}.solomark{font-family:var(--serif);color:inherit;margin-bottom:40px;font-size:19px;text-decoration:none;display:inline-block}@media (max-width:899px){.solomark{margin-bottom:26px}}.solorail-orb{background:radial-gradient(circle at 35% 30%, var(--accent-bright), transparent 72%);border-radius:50%;flex-shrink:0;width:46px;height:46px;margin-bottom:24px;animation:4.5s ease-in-out infinite solobreathe;box-shadow:0 0 46px 6px #b5651d61}@keyframes solobreathe{0%,to{opacity:.82;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}@media (prefers-reduced-motion:reduce){.solorail-orb{animation:none}}.solorail-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#d8a671;margin-bottom:16px;font-size:11px;font-weight:600}.solorail h1{font-family:var(--serif);letter-spacing:-.01em;max-width:15ch;margin:0 0 16px;font-size:33px;font-weight:400;line-height:1.18}.solorail-sub{color:#f2ebddb3;max-width:36ch;margin:0;font-size:14.5px;line-height:1.65}.solostages{flex-direction:column;gap:13px;margin:30px 0 0;padding:0;list-style:none;display:flex}.solostage{color:#f2ebdd6b;align-items:center;gap:11px;font-size:13.5px;transition:color .2s;display:flex}.solostage .dot{background:#f2ebdd38;border-radius:50%;flex-shrink:0;width:7px;height:7px;transition:background-color .2s,box-shadow .2s}.solostage.done{color:#f2ebddc7}.solostage.done .dot{background:var(--green)}.solostage.current{color:#eadfc7;font-weight:600}.solostage.current .dot{background:var(--accent-bright);box-shadow:0 0 0 4px #b5651d4d}.solomain{justify-content:center;align-items:center;padding:52px 24px 68px;display:flex}.solomain-inner{width:100%;max-width:440px}.solomain-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 8px;font-size:11px;font-weight:600}.solomain-title{font-family:var(--serif);margin:0 0 26px;font-size:26px;font-weight:400}.solomain .panel{background:0 0;border:none;padding:0}.solomain form{display:block}.solomain .field{margin-bottom:18px}.solomain .field textarea,.solomain .field select,.solomain .field input{border-radius:12px;padding:13px 14px;font-size:15px}.solomain .chiprow{gap:10px}.solomain .chip{border-color:var(--line2);border-radius:12px;padding:11px 18px;font-weight:600}.solomain .chip.on{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.solomain .primary{border-radius:12px;width:100%;margin-top:4px;padding:15px;font-size:15px}.solomain .stepdots{display:none}@media (max-width:899px){.solomain{padding:40px 20px 56px}}.soloq-eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin:0 0 10px;font-size:11px;font-weight:600}.soloq-title{font-family:var(--serif);max-width:18ch;margin:0 0 22px;font-size:27px;font-weight:400;line-height:1.25}.soloq-nav{align-items:center;gap:12px;margin-top:6px;display:flex}.soloq-back{border:1px solid var(--line2);color:var(--muted);cursor:pointer;background:0 0;border-radius:12px;padding:15px 18px;font-size:14px;font-weight:500}.soloq-back:hover{color:var(--ink);border-color:var(--ink)}.soloq-nav .primary{flex:1;margin-top:0}.soloreview{flex-direction:column;gap:16px;margin-bottom:22px;display:flex}.soloreview-item{border-left:2px solid var(--line2);padding-left:14px}.soloreview-q{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 4px;font-size:11px;font-weight:600}.soloreview-a{color:var(--ink);margin:0;font-size:14px;line-height:1.55}.soloreview-a.empty{color:var(--muted);font-style:italic}@media (prefers-reduced-motion:reduce){.block-row.current .peg-dot,.hero-card,.string-fill,.watch-btn,.watch-btn .playdot{transition:none!important;animation:none!important}}@media (max-width:420px){.session{padding-left:30px}.string-track,.string-fill{left:7px}.block-row{grid-template-columns:22px 1fr;column-gap:10px}.hero-card{padding:22px 16px 20px}}.onboardpage{background:var(--bg);min-height:100vh}.onboardmain{max-width:900px;padding-top:36px}.onboardintro{max-width:56ch;margin-bottom:36px}.onboardkicker{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:12px;font-size:11px;font-weight:700;display:inline-block}.onboardintro h1{font-family:var(--serif);letter-spacing:-.01em;margin:0 0 14px;font-size:44px;font-weight:400;line-height:1.05}.onboardintro .sub{margin:0;font-size:15px}@media (max-width:640px){.onboardintro h1{font-size:32px}}.onboardflow{grid-template-columns:176px minmax(0,1fr);align-items:start;gap:8px 48px;display:grid}@media (max-width:760px){.onboardflow{grid-template-columns:1fr;gap:0}}.stagerail{flex-direction:column;gap:2px;display:flex;position:sticky;top:24px}@media (max-width:760px){.stagerail{flex-direction:row;gap:0;margin-bottom:26px;padding-bottom:2px;position:static;overflow-x:auto}}.stagerail-item{border-left:2px solid var(--line2);align-items:baseline;gap:10px;padding:9px 0 9px 14px;display:flex}.stagerail-item.current{border-left-color:var(--accent-bright)}.stagerail-item.done{border-left-color:var(--green)}@media (max-width:760px){.stagerail-item{border-left:0;border-bottom:2px solid var(--line2);flex-direction:column;flex-shrink:0;align-items:flex-start;gap:3px;padding:0 14px 10px 0}.stagerail-item.current{border-bottom-color:var(--accent-bright)}.stagerail-item.done{border-bottom-color:var(--green)}}.stagerail-num{letter-spacing:.04em;color:var(--muted);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:11px;font-weight:700}.stagerail-item.current .stagerail-num{color:var(--accent-bright)}.stagerail-item.done .stagerail-num{color:var(--green)}.stagerail-label{color:var(--muted);font-size:13px;font-weight:500}.stagerail-item.current .stagerail-label{color:var(--ink);font-weight:600}.stagerail-item.done .stagerail-label{color:var(--ink)}.onboardflow-main{min-width:0}.onboardflow-title{font-family:var(--serif);letter-spacing:-.01em;margin:0 0 22px;font-size:27px;font-weight:400}.onboardstep{animation:.3s both onboardstepin}@keyframes onboardstepin{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.onboardstep{animation:none}}.instrumentgrid{grid-template-columns:repeat(auto-fill,minmax(122px,1fr));gap:10px;margin-bottom:4px;display:grid}.instrumenttile{border:1px solid var(--line2);background:var(--panel);color:var(--ink);cursor:pointer;text-align:center;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:20px 10px 16px;transition:border-color .12s,background-color .12s,color .12s;display:flex}.instrumenttile:hover{border-color:var(--accent)}.instrumenttile:focus-visible{outline:2px solid var(--accent-bright);outline-offset:2px}.instrumenttile.on{border-color:var(--emphasis-bg);background:var(--emphasis-bg);color:var(--emphasis-ink)}.instrumenttile.theory{flex-direction:row;grid-column:1/-1;justify-content:flex-start;padding:14px 18px}.instrumenttile-label{font-size:13px;font-weight:600}.onboardpage .field{margin-bottom:22px}.onboardflow-main .stepdots{gap:5px}.onboardflow-main .stepdots .dot{width:6px;height:6px}.onboardflow-main .stepdots .dot.current{width:16px}.onboardbuilding{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:46vh;display:flex}.onboardbuilding-mark{border:2px solid var(--line2);border-top-color:var(--accent-bright);border-radius:50%;width:34px;height:34px;animation:.9s linear infinite onboardspin}@media (prefers-reduced-motion:reduce){.onboardbuilding-mark{animation-duration:2.4s}}@keyframes onboardspin{to{transform:rotate(360deg)}}.onboardbuilding .sub{font-family:var(--serif);color:var(--ink);max-width:34ch;margin:0;font-size:21px;font-style:italic}.placementscreen{max-width:640px}.placementscreen .tool-label{font-family:var(--serif);text-transform:none;letter-spacing:0;color:var(--ink);font-size:15px;font-weight:400}