:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page:#f5f6f8;--surface:#fff;--surface-2:#f0f2f5;--glass:#f4f6fad1;--text:#202733;--muted:#626d7b;--border:#dfe3e9;--accent:#315dc5;--accent-soft:#eaf0ff;--green:#21664b;--green-soft:#e9f4ed;--amber:#875d16;--amber-soft:#fcf3df;--red:#a3333a;--red-soft:#fcecee;--shadow:0 8px 30px #1827410b;--radius:20px}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#14171c;--surface:#20242b;--surface-2:#292e37;--glass:#1c2027e0;--text:#edf0f6;--muted:#a7b1c0;--border:#363d48;--accent:#a3bcff;--accent-soft:#293959;--green:#9bd4b4;--green-soft:#213d30;--amber:#efd293;--amber-soft:#40351f;--red:#ffb2b8;--red-soft:#43272e;--shadow:0 8px 30px #0002}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#14171c;--surface:#20242b;--surface-2:#292e37;--glass:#1c2027e0;--text:#edf0f6;--muted:#a7b1c0;--border:#363d48;--accent:#a3bcff;--accent-soft:#293959;--green:#9bd4b4;--green-soft:#213d30;--amber:#efd293;--amber-soft:#40351f;--red:#ffb2b8;--red-soft:#43272e;--shadow:0 8px 30px #0002}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--page);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:15px;line-height:1.5}h1,h2,h3,h4{letter-spacing:-.035em;margin:0 0 .65em;font-weight:650;line-height:1.2}h1{font-size:clamp(1.85rem,3vw,2.6rem);font-weight:700}h2{font-size:1.25rem}h3{font-size:1.07rem}p{margin:.45rem 0 1rem}a{color:var(--accent)}button,.button{min-height:44px;font:inherit;background:var(--accent);color:var(--surface);cursor:pointer;vertical-align:middle;border:1px solid #0000;border-radius:13px;justify-content:center;align-items:center;gap:9px;padding:.65rem 1rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:background .18s,transform .18s,box-shadow .18s;display:inline-flex}button:hover,.button:hover{filter:brightness(.97);box-shadow:0 3px 10px #00000009}button:active{transform:scale(.98)}button.secondary,.button.secondary,.sheet-trigger{background:var(--surface);color:var(--text);border-color:var(--border)}button.danger{background:var(--red-soft);color:var(--red);border-color:#0000}button:disabled{opacity:.48;cursor:not-allowed;transform:none}.icon-button{flex-shrink:0;width:44px;padding:10px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.skip-link{z-index:100;position:fixed;top:-100px;left:16px}.skip-link:focus{background:var(--surface);padding:12px;top:10px}input,select,textarea{font:inherit;border:1px solid var(--border);background:var(--surface);width:100%;min-height:46px;color:var(--text);border-radius:12px;padding:.8rem .9rem}input::placeholder{color:var(--muted)}textarea{resize:vertical;min-height:110px}.field{flex-direction:column;gap:7px;margin:1rem 0;display:flex}.field>span{font-size:.85rem;font-weight:600}.check{align-items:flex-start;gap:12px;margin:1rem 0;display:flex}.check input{width:20px;min-height:20px;accent-color:var(--accent);flex-shrink:0;margin:2px 0}fieldset{border:0;min-width:0;margin:0;padding:0}legend{padding-top:1rem;font-weight:600}small,time,.muted,.eyebrow{color:var(--muted)}small,time{font-size:.8rem}.eyebrow{text-transform:uppercase;letter-spacing:.1em;margin:0 0 9px;font-size:.72rem;font-weight:650}.app-shell{grid-template-columns:246px minmax(0,1fr);min-height:100dvh;display:grid}.sidebar{border-right:1px solid var(--border);background:var(--glass);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);z-index:30;flex-direction:column;height:100dvh;padding:32px 18px 18px;display:flex;position:sticky;top:0}.brand{letter-spacing:-.035em;padding:3px 16px 30px;font-size:1rem;font-weight:700}.sidebar nav{flex-direction:column;gap:5px;display:flex}.sidebar nav a{min-height:46px;color:var(--muted);border-radius:13px;align-items:center;gap:12px;padding:10px 14px;font-weight:550;text-decoration:none;display:flex}.sidebar nav a[aria-current=page]{background:var(--accent-soft);color:var(--accent)}.sidebar nav a:hover{background:var(--surface-2);color:var(--text)}.sidebar-bottom{margin-top:auto;padding-top:28px}.sidebar-bottom>a{color:var(--muted);gap:12px;padding:12px 14px;text-decoration:none;display:flex}.profile-button{width:100%;color:var(--text);background:0 0;justify-content:flex-start;padding:12px;display:flex}.profile-button small{text-align:left;font-weight:400;display:block}.workspace-main{width:100%;min-width:0;max-width:1480px;padding:40px 48px 60px;animation:.22s enter}.page-title{justify-content:space-between;align-items:center;gap:20px;margin:4px 0 30px;display:flex}.page-title h1{margin:0}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow-wrap:anywhere;min-width:0;margin:18px 0;padding:24px}.grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:18px;display:grid}.grid>.card{margin:0}.section{margin:32px 0}.section-heading{justify-content:space-between;align-items:center;gap:16px;margin:28px 0 15px;display:flex}.section-heading h2{margin:0}.hero-panel{background:var(--surface);border:1px solid var(--border);border-radius:24px;grid-template-columns:1fr auto;align-items:center;gap:20px;margin:22px 0 30px;padding:30px;display:grid}.hero-panel h2{max-width:600px;font-size:1.75rem}.hero-symbol{background:var(--accent-soft);width:80px;height:80px;color:var(--accent);border-radius:24px;place-items:center;display:grid}.attention-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.attention-card{text-align:left;border:1px solid var(--border);background:var(--surface);color:var(--text);box-shadow:var(--shadow);border-radius:18px;justify-content:flex-start;gap:15px;padding:20px;display:flex}.attention-card>span:nth-child(2){flex:1}.attention-card small{margin-top:4px;font-weight:400;line-height:1.4;display:block}.attention-count{letter-spacing:-.06em;color:var(--amber);font-size:1.6rem;font-weight:600}.class-card{flex-direction:column;min-height:216px;display:flex;position:relative}.class-card h3{margin-top:16px;font-size:1.2rem}.class-card p{color:var(--muted);font-size:.85rem}.class-card .card-footer{justify-content:space-between;align-items:center;margin-top:auto;padding-top:16px;display:flex}.class-icon{background:var(--accent-soft);width:42px;height:42px;color:var(--accent);border-radius:13px;place-items:center;display:grid}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:22px 0;display:flex}.search{background:var(--surface);max-width:280px}.segmented{background:var(--surface-2);border:1px solid var(--border);border-radius:14px;gap:3px;max-width:100%;padding:4px;display:inline-flex;overflow-x:auto}.segmented button{color:var(--muted);white-space:nowrap;background:0 0;min-height:36px;padding:7px 15px;font-size:.83rem}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:0 2px 6px #0000000a}.tabs{border-bottom:1px solid var(--border);gap:24px;margin:24px 0;display:flex;overflow-x:auto}.tabs button{color:var(--muted);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;padding:14px 2px}.tabs button[aria-pressed=true]{color:var(--accent);border-bottom-color:var(--accent)}.badge{background:var(--surface-2);color:var(--muted);white-space:nowrap;border-radius:99px;align-items:center;padding:4px 10px;font-size:.72rem;font-weight:600;display:inline-flex}.badge[data-tone=green]{background:var(--green-soft);color:var(--green)}.badge[data-tone=amber]{background:var(--amber-soft);color:var(--amber)}.badge[data-tone=red]{background:var(--red-soft);color:var(--red)}.badge[data-tone=blue]{background:var(--accent-soft);color:var(--accent)}.person-row{border-bottom:1px solid var(--border);align-items:center;gap:13px;padding:14px 0;display:flex}.person-row:last-child{border:0}.person-copy{flex:1;min-width:0}.person-copy small{margin-top:3px;display:block}.avatar{background:var(--accent-soft);width:39px;height:39px;color:var(--accent);border-radius:50%;flex-shrink:0;place-items:center;font-size:.9rem;font-weight:600;display:inline-grid}.attribution{color:var(--muted);align-items:center;gap:7px;margin:10px 0;font-size:.82rem;display:flex}.disclosure{border:1px solid var(--border);background:var(--surface);border-radius:18px;margin:18px 0;padding:20px}.disclosure>summary{cursor:pointer;min-height:28px;font-weight:600}.disclosure>div{padding-top:16px}.sheet-trigger{margin:6px 8px 6px 0}.action-form{margin:14px 0}.action-form>button{margin:12px 8px 0 0}.sheet{border:1px solid var(--border);background:var(--glass);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);color:var(--text);border-radius:24px;width:min(620px,100vw - 32px);max-height:90dvh;padding:0;box-shadow:0 24px 100px #0003}.sheet.wide{width:min(1120px,100vw - 40px)}.sheet[open]{animation:.22s sheet-in}.sheet::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#101b304a}.sheet-inner{min-width:0}.sheet-header{border-bottom:1px solid var(--border);z-index:2;background:var(--glass);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);justify-content:space-between;align-items:center;padding:24px;display:flex;position:sticky;top:0}.sheet-header h2{margin:0}.sheet-body{background:var(--surface);padding:8px 24px 24px}.alert{background:var(--amber-soft);color:var(--amber);border-radius:13px;margin:16px 0;padding:14px 18px;font-size:.88rem}.alert.error{color:var(--red);background:var(--red-soft)}.success{color:var(--green);font-size:.88rem}.feedback{background:var(--surface-2);border-radius:16px;margin:18px 0;padding:20px}.empty{text-align:center;background:var(--surface);border:1px dashed var(--border);color:var(--muted);border-radius:20px;margin:20px 0;padding:48px 24px}.empty svg{color:var(--accent);margin-bottom:14px}.empty h3{color:var(--text)}.inline{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.review-layout{grid-template-columns:minmax(0,1.85fr) minmax(280px,1fr);gap:28px;display:grid}.review-panel{background:var(--surface-2);border-radius:18px;align-self:start;padding:24px}.review-panel h3{font-size:1.15rem}.attempt-header{justify-content:space-between;align-items:center;gap:14px;margin-bottom:20px;display:flex}.score-value{letter-spacing:-.06em;font-size:2rem;font-weight:700}.timeline{border-left:2px solid var(--border);margin-left:7px;padding-left:22px}.timeline>.card{position:relative}.timeline>.card:before{content:"";background:var(--accent);border-radius:50%;width:10px;height:10px;position:absolute;top:27px;left:-29px}.media-preview{background:var(--surface);border-radius:16px;margin:14px 0;overflow:hidden}.media-preview>iframe{border:1px solid var(--border);background:var(--surface-2);border-radius:14px;width:100%;height:min(58vh,580px);min-height:280px;display:block}.media-preview>video{background:#111;border-radius:14px;width:100%;max-height:70vh;display:block}.media-preview>audio{width:100%;margin:20px 0}.media-toolbar{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.media-toolbar button,.media-toolbar a{padding:8px 11px;font-size:.77rem}.media-preview:fullscreen{border-radius:0;padding:18px;overflow:auto}.media-preview:fullscreen>iframe{height:calc(100dvh - 150px)}.quick-look .media-preview>iframe{height:70dvh}.resource-row{border-bottom:1px solid var(--border);align-items:center;gap:14px;padding:15px 0;display:flex}.resource-row>div{flex:1}.recorder video{background:var(--surface-2);border-radius:16px;width:100%;max-height:300px}.recorder small{display:block}.login{max-width:500px;margin:12vh auto;padding:28px}.login>h1{font-size:2rem}.login>.card{margin-top:28px;padding:30px}.login button{width:100%}.login>p{color:var(--muted)}.mobile-bar,.student-bottom-nav{display:none}.theme-control{color:var(--muted);justify-content:space-between;align-items:center;gap:20px;margin:18px 0;display:flex}.theme-control select{width:auto;font-size:.85rem}.student-shell .workspace-main{max-width:1050px}.student-hero{background:var(--accent-soft);border-radius:24px;margin:28px 0;padding:30px}.student-hero h2{max-width:650px;font-size:1.8rem}.student-hero button{margin-top:12px}.primary-screen{text-align:center;max-width:900px;margin:0 auto;padding:32px 24px 60px}.primary-screen h1{text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-size:.8rem}.primary-screen h2{font-size:2rem}.primary-screen .station-name{font-size:clamp(2rem,6vw,3.5rem)}.instrument-hero{margin:25px 0;font-size:5rem}.primary-screen button{min-height:60px;padding:16px 25px;font-size:1.05rem}.primary-screen .segmented{margin:22px 0}.primary-screen .segmented button{min-height:48px}.primary-screen .media-preview{text-align:left}.primary-screen .start-playing{min-width:260px;margin:25px}.session-update{background:var(--accent-soft);color:var(--accent);border-radius:14px;padding:14px;font-weight:600}.capacity-row{justify-content:space-between;align-items:center;padding:12px 0;display:flex}.capacity-meter{background:var(--surface-2);border-radius:20px;width:100px;height:6px;overflow:hidden}.capacity-meter span{background:var(--accent);height:100%;display:block}.music-pass{text-align:center;padding:22px}.music-pass img{border-radius:18px;max-width:100%;height:auto}.ai-principle{border:1px solid var(--border);background:var(--surface);border-radius:24px;align-items:center;gap:24px;padding:32px;display:flex}.ai-principle h2{font-size:1.6rem}.workflow-steps{flex-wrap:wrap;gap:10px;margin:24px 0;display:flex}.workflow-steps span{background:var(--surface-2);color:var(--muted);border-radius:10px;padding:8px 12px;font-size:.8rem}.preview-notice{background:var(--amber-soft);color:var(--amber);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:25px;padding:8px 16px;font-size:.76rem;display:flex}.preview-notice button{min-height:30px;padding:4px 10px;font-size:.73rem}.preview-media{aspect-ratio:16/9;background:var(--surface-2);border:1px solid var(--border);text-align:center;border-radius:16px;place-items:center;padding:20px;display:grid}.preview-media svg{color:var(--accent);margin-bottom:12px}.preview-media p{color:var(--muted);font-size:.8rem}@keyframes enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes sheet-in{0%{opacity:0;transform:translateY(16px)scale(.985)}to{opacity:1;transform:none}}@media (min-width:1500px){.workspace-main{padding:52px 64px}}@media (max-width:1100px){.workspace-main{padding:30px}.app-shell{grid-template-columns:210px minmax(0,1fr)}.sidebar{padding:26px 12px 16px}.attention-grid{grid-template-columns:1fr}.attention-card{padding:16px}.review-layout{grid-template-columns:1.6fr 1fr;gap:18px}.review-panel{padding:18px}}@media (max-width:900px){.app-shell{display:block}.sidebar{width:260px;transition:transform .22s;position:fixed;left:0;transform:translate(-100%)}.app-shell.sidebar-open .sidebar{transform:translate(0)}.sidebar-scrim{z-index:25;background:#0004;border:0;border-radius:0;width:100%;height:100%;position:fixed;inset:0}.mobile-bar{z-index:20;background:var(--glass);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:10px 20px;font-weight:650;display:flex;position:sticky;top:0}.workspace-main{padding:28px}.page-title{margin-bottom:24px}.review-layout{grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr)}}@media (max-width:640px){body{font-size:14px}.workspace-main{padding:22px 18px 95px}.page-title{flex-wrap:wrap;gap:12px}.page-title h1{font-size:1.9rem}.card{border-radius:19px;padding:20px}.hero-panel{grid-template-columns:1fr;padding:24px}.hero-symbol{display:none}.hero-panel h2{font-size:1.5rem}.grid{grid-template-columns:1fr;gap:14px}.grid.class-grid{grid-template-columns:1fr}.attention-grid{gap:10px}.tabs{gap:22px;margin:18px 0}.toolbar{gap:14px}.toolbar .search{max-width:none}.review-layout{grid-template-columns:1fr}.review-panel{padding:20px}.sheet{border-radius:24px 24px 0 0;width:100%;max-width:none;max-height:94dvh;margin:auto 0 0}.sheet.wide{width:100%}.sheet-header{padding:20px}.sheet-body{padding:6px 20px 24px}.student-shell .sidebar,.student-shell .mobile-bar button{display:none}.student-bottom-nav{padding:8px 14px calc(8px + env(safe-area-inset-bottom));background:var(--glass);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border-top:1px solid var(--border);z-index:30;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.student-bottom-nav a{color:var(--muted);flex-direction:column;align-items:center;gap:3px;min-width:60px;padding:5px;font-size:.68rem;text-decoration:none;display:flex}.student-bottom-nav a[aria-current=page]{color:var(--accent)}.login{margin:6vh auto}.primary-screen{padding:25px 18px 60px}.primary-screen .card{padding:20px}.primary-screen .media-toolbar button,.primary-screen .media-toolbar a{min-height:44px;padding:10px;font-size:.8rem}.ai-principle{padding:24px;display:block}.theme-control{flex-wrap:wrap}.class-card{min-height:185px}.preview-notice{font-size:.7rem}.student-hero{padding:24px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.stand-mode{z-index:100;background:var(--surface);border-radius:0;margin:0;padding:16px;position:fixed;inset:0;overflow:auto}.stand-mode>iframe{height:calc(100dvh - 155px);min-height:200px}.stand-mode .media-toolbar{background:var(--surface);padding:8px 0;position:sticky;bottom:0}.sheet .quick-look .stand-mode>iframe{height:calc(100dvh - 155px)}:root{--accent:#0866ed;--accent-soft:#e9f2ff;--page:#f3f6fa;--shadow:0 4px 8px #182a4403,0 14px 36px #182a4407;--pink:#f28abc;--nav:#152333}.sidebar{color:#eef5ff;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px);background:linear-gradient(160deg,#101d2bf5,#26384af5);border-right:1px solid #ffffff12;padding-top:34px;box-shadow:8px 0 40px #13263a0b}.sidebar .brand{color:#fff;letter-spacing:-.02em;padding-left:12px;font-size:.91rem}.sidebar nav a,.sidebar-bottom>a{color:#bfcbd9;font-size:.88rem;font-weight:500}.sidebar nav a[aria-current=page]{color:#fff;background:linear-gradient(120deg,#2867b4,#365d8a);box-shadow:inset 0 1px #ffffff16,0 5px 14px #0002}.sidebar nav a:hover{color:#fff;background:#ffffff10}.sidebar nav a[aria-current=page]:hover{background:#3368a7}.sidebar .profile-button{color:#f1f5fa;border-top:1px solid #ffffff17;border-radius:0;padding-top:22px}.sidebar .profile-button small{color:#aab9cb;font-size:.7rem}.sidebar .avatar{color:#554641;background:#e6d7d0}.sidebar .icon-button.secondary{color:#fff;background:#ffffff10;border-color:#ffffff20}.sidebar a:focus-visible,.sidebar button:focus-visible{outline-color:#a9caff}.workspace-main{padding:36px 40px 60px}.page-title{margin-bottom:23px}.page-title h1{letter-spacing:-.055em;font-size:clamp(1.9rem,2.7vw,2.5rem)}.page-title .eyebrow{letter-spacing:.055em;font-weight:500}.card{border-color:color-mix(in srgb,var(--border) 38%,transparent);box-shadow:var(--shadow);padding:22px}.disclosure{border-color:color-mix(in srgb,var(--border) 55%,transparent)}.section-heading{margin-top:28px}.section-heading h2{font-size:1.16rem}.section-heading>.muted{font-size:.8rem}.section-heading button.secondary{color:var(--accent);background:0 0;border-color:#0000}button:not(.secondary):not(.attention-card):not(.profile-button):not(.icon-button):not(.sidebar-scrim):not(.sheet-trigger){box-shadow:0 3px 9px #0859cb13}.tabs button,.segmented button{box-shadow:none!important}.toolbar .search{background:var(--surface);box-shadow:inset 0 1px 2px #14284404}.segmented{border-color:#0000}.segmented button[aria-pressed=true]{color:var(--accent);background:var(--surface)}.attention-card{background:var(--surface);border-color:#0000;min-height:107px;padding:18px}.attention-count{background:var(--amber-soft);border-radius:14px;place-items:center;min-width:42px;height:48px;font-size:1.5rem;display:grid}.attention-card:first-child .attention-count{color:var(--accent);background:var(--accent-soft)}.attention-card strong{font-size:.86rem}.attention-card small{font-size:.73rem}.attention-card>svg{width:17px;color:var(--muted);flex-shrink:0}.music-artwork{isolation:isolate;color:#fffd;background:#cddcd9;min-height:130px;position:relative;overflow:hidden}.music-artwork>svg{position:absolute;bottom:20px;left:22px}.artwork-0{background:linear-gradient(135deg,#7c929c,#244958 80%)}.artwork-1{background:linear-gradient(125deg,#ced6d0,#799a9c 50%,#3f6678)}.artwork-2{background:linear-gradient(125deg,#cfc4c7,#8a7999 60%,#3a4264)}.artwork-orbit{border:1px solid #ffffff40;border-radius:50%;width:260px;height:260px;position:absolute;top:-115px;right:-20px;box-shadow:0 0 0 26px #ffffff08,0 0 0 52px #ffffff08,0 0 0 78px #ffffff06}.artwork-lines{gap:8px;display:flex;position:absolute;inset:40% 10% -30% 45%;transform:rotate(24deg)}.artwork-lines i{background:#fff2;border-radius:4px;flex:1}.artwork-lines i:nth-child(3n){background:#1932424d;height:60%}.artwork-stage>img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.class-card{min-height:280px;padding:0 20px 16px;transition:transform .2s,box-shadow .2s;overflow:hidden}.class-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px #152e4810}.class-card>.music-artwork{height:142px;margin:0 -20px 17px}.class-card>.inline{gap:7px}.class-card .class-icon{display:none}.class-card h3{margin:10px 0 6px;font-size:1.08rem}.class-card p{margin-bottom:0}.class-card .card-footer{padding-top:10px}.class-card .card-footer button{background:0 0;border:0}.class-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,235px),1fr))}.repertoire-card{overflow:hidden}.repertoire-card>.music-artwork{border-radius:13px;height:155px;margin-bottom:20px}.music-card>.music-artwork{border-radius:12px;height:120px;margin-bottom:18px}.piece-masthead{align-items:center;gap:26px;padding:10px 0 16px;display:flex}.piece-masthead>.music-artwork{border-radius:17px;width:160px;min-width:160px;height:180px;box-shadow:0 12px 24px #192e441c}.piece-masthead .page-title{margin:0 0 14px}.piece-masthead p{color:var(--muted);margin:10px 0 0}.stage-panel{isolation:isolate;color:#fff;background:#132334;border:0;position:relative;overflow:hidden;box-shadow:0 12px 32px #15233314}.stage-panel>.music-artwork{z-index:-2;position:absolute;inset:0}.stage-panel:after{content:"";z-index:-1;background:linear-gradient(90deg,#0d1a2af5 5%,#142336d4 44%,#11233a25);position:absolute;inset:0}.stage-panel .muted,.stage-panel .eyebrow,.stage-panel time{color:#c2d1e4}.stage-panel .hero-symbol{display:none}.hero-panel.stage-panel{grid-template-columns:minmax(0,1fr);min-height:245px;padding:32px}.hero-panel.stage-panel>div:not(.music-artwork){max-width:540px}.hero-panel.stage-panel h2{max-width:470px;font-size:1.9rem}.hero-panel.stage-panel p{max-width:430px}.stage-panel button{color:#1458aa;background:#f4f8ff}.rehearsal-masthead{border-radius:24px;min-height:220px;margin-bottom:24px;padding:30px}.rehearsal-masthead h2{max-width:550px;font-size:1.5rem}.rehearsal-masthead .page-title h1{color:#fff}.ai-principle{min-height:280px;padding:38px;display:block}.ai-principle h2{max-width:660px;font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.18}.ai-principle .eyebrow{color:#f1a6cc}.ai-principle:after{background:linear-gradient(90deg,#10192af7,#182139d9 60%,#20193355)}.workflow-steps{border-bottom:1px solid var(--border);grid-template-columns:repeat(6,1fr);gap:0;padding:0 0 22px;display:grid}.workflow-steps span{border-right:1px solid var(--border);background:0 0;border-radius:0;flex-direction:column;gap:8px;padding:4px 12px;font-weight:600;display:flex}.workflow-steps span:last-child{border:0}.workflow-steps b{color:var(--accent);font-size:.72rem;font-weight:500}.workflow-steps span:first-child b{color:#b23f79}.studio-notice{box-shadow:none;background:var(--surface-2);border-left:3px solid #d67ead;font-size:.86rem}.studio-notice h2{font-size:1.06rem}.review-panel{background:var(--surface);border:1px solid var(--border);box-shadow:0 8px 28px #162e4607}.review-panel input,.review-panel textarea{background:var(--surface-2);border-color:#0000}.review-panel input[type=number]{font-size:1.8rem;font-weight:700}.attempt-header{border-bottom:1px solid var(--border);padding-bottom:16px}.preview-media{color:#eff4ff;background:#172434;border:0;box-shadow:inset 0 1px #ffffff10}.preview-media p{color:#b5c4d6}.preview-media svg{color:#8eb6e9}.preview-notice{background:var(--surface-2);color:var(--muted);border:1px solid var(--border);margin-bottom:25px}.preview-notice button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent);border-color:#0000}.sheet{border-color:#fff3;box-shadow:0 30px 120px #06152f4a}.sheet-header{padding:22px 26px}.sheet-body{padding:10px 26px 26px}.student-hero{background:linear-gradient(120deg,#e3eeff,#eef3fc);border:1px solid #d5e4fa;box-shadow:0 14px 34px #1f539310}.student-hero h2{color:#183c70;font-size:1.7rem}.student-hero p{color:#365b88}.student-hero button{color:#fff;background:#0866ed}.student-shell .card{box-shadow:0 5px 22px #16385207}.primary-screen{--surface:#182436;--surface-2:#223147;--text:#f4f7ff;--muted:#bdcadd;--border:#fff2;--accent:#a8c9ff;--accent-soft:#203b60;max-width:none;min-height:100dvh;color:var(--text);background:linear-gradient(#071320d9,#0f1d32e8 55%,#2c1732f2),url(/artwork/rehearsal-stage.png) 50%/cover fixed;padding-top:36px}.primary-screen>p:first-child{font-size:.8rem}.primary-screen h1{color:#adbed6}.primary-screen h2{margin-top:30px}.primary-screen>.card,.primary-screen>.section{max-width:740px;margin-left:auto;margin-right:auto}.primary-screen .instrument-hero{background:#fff00002;border:1px solid #ffffff1b;border-radius:50%;place-items:center;width:190px;height:190px;margin:24px auto;font-size:6rem;display:grid;box-shadow:0 0 80px #819eef1a}.primary-screen .station-name{letter-spacing:-.045em;margin-bottom:12px;font-weight:650}.primary-screen .start-playing{color:#2b1830;background:#ed8aba;border-radius:18px;min-width:280px;font-size:1.2rem;box-shadow:0 8px 32px #e176aa25!important}.primary-screen .segmented{background:#ffffff0c;border:1px solid #ffffff1a;padding:6px}.primary-screen .segmented button{color:#bccde4;min-width:120px}.primary-screen .segmented button[aria-pressed=true]{color:#25182b;background:#e88bb7}.primary-screen .badge{color:#d6e7ff;letter-spacing:.1em;background:#294368;padding:7px 18px}.primary-screen .card{text-align:left;background:#142135ed}.primary-screen .secondary{color:#fff;background:#ffffff0b;border-color:#ffffff25}.primary-screen .secondary[aria-pressed=true]{background:#31557a}.primary-screen .sheet{color:var(--text)}@media (min-width:1500px){.workspace-main{padding:44px 56px}}@media (min-width:901px) and (max-width:1100px){.app-shell{grid-template-columns:190px minmax(0,1fr)}.sidebar{padding-left:10px;padding-right:10px}.brand{font-size:.8rem!important}.workspace-main{padding:28px}.attention-grid{grid-template-columns:repeat(3,1fr)}.attention-card{padding:14px;display:block}.attention-count{width:38px;height:38px;margin-bottom:9px}.attention-card>svg,.attention-card small{display:none}.class-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.workspace-main{padding:28px}.mobile-bar{color:#f0f5ff;background:#172738f2;border:0}.mobile-bar .secondary{color:#fff;background:#ffffff0c;border-color:#ffffff20}.workflow-steps{grid-template-columns:repeat(3,1fr);row-gap:18px}.class-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.workspace-main{padding:23px 18px 96px}.hero-panel.stage-panel{min-height:225px;padding:25px}.hero-panel.stage-panel h2{font-size:1.6rem}.stage-panel:after{background:linear-gradient(90deg,#101f31ec,#12243aad)}.class-card>.music-artwork{height:150px}.piece-masthead{align-items:flex-start;gap:16px}.piece-masthead>.music-artwork{width:90px;min-width:90px;height:112px}.piece-masthead .page-title h1{font-size:1.6rem}.piece-masthead .eyebrow{font-size:.64rem}.piece-masthead p{font-size:.8rem}.attention-card{min-height:90px}.ai-principle{min-height:285px;padding:28px 24px}.workflow-steps span{padding-left:8px;font-size:.74rem}.student-shell .mobile-bar{background:var(--glass);color:var(--text);font-size:.8rem}.student-shell .page-title .eyebrow{display:none}.student-shell .page-title h1{font-size:1.85rem}.student-hero{padding:25px}.student-hero h2{font-size:1.5rem}.student-hero button{width:100%;min-height:52px}.student-shell .music-card{grid-template-columns:74px 1fr;align-items:center;gap:0 16px;display:grid}.student-shell .music-card>.music-artwork{grid-row:1/4;height:90px;min-height:90px;margin:0}.student-shell .music-card h3{margin-bottom:4px}.student-shell .music-card p{margin:0;font-size:.8rem}.student-shell .music-card button{color:var(--accent);background:0 0;border:0;justify-self:start;padding-left:0}.primary-screen{background-attachment:scroll}.primary-screen .instrument-hero{width:170px;height:170px}.primary-screen .segmented{max-width:380px;margin:24px auto;display:flex}.primary-screen .segmented button{flex:1;min-width:0;padding:14px}.primary-screen .start-playing{width:calc(100% - 32px);min-width:0;max-width:380px;margin:25px 0}.rehearsal-masthead{padding:24px}.rehearsal-masthead h2{font-size:1.2rem}}:root[data-theme=dark]{--accent:#a3c4ff;--accent-soft:#263d5b;--page:#121b27;--surface:#1d2939;--surface-2:#243246;--border:#354257;--text:#edf3fc;--muted:#afbed1}.student-hero .eyebrow{color:#365b88}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--accent:#a3c4ff;--accent-soft:#263d5b;--page:#121b27;--surface:#1d2939;--surface-2:#243246;--border:#354257;--text:#edf3fc;--muted:#afbed1}}.device-preview-toolbar{color:#e7f0ff;background:#101d2b;border-bottom:1px solid #ffffff17;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 22px;font-size:.8rem;display:flex}.device-preview-toolbar small{color:#afbed0}.device-preview-toolbar>div{gap:6px;display:flex}.device-preview-toolbar button{color:#cedced;background:#ffffff0b;border-color:#ffffff1b;min-height:34px;padding:5px 13px;font-size:.76rem}.device-preview-toolbar button[aria-pressed=true]{color:#1a487f;background:#dceaff}.device-preview-stage{text-align:center;background:#dfe5ed;min-height:calc(100dvh - 56px);padding:28px 18px;overflow-x:auto}.device-frame{background:var(--page);border:8px solid #142133;border-radius:28px;max-width:none;margin:0 auto;display:block;box-shadow:0 20px 65px #20314926}.tablet-frame{width:1040px;height:784px}.phone-frame{width:406px;height:860px}.device-preview-stage>p{color:#52657c;max-width:700px;margin:22px auto;font-size:.8rem}.device-preview-toolbar+.app-shell .sidebar{height:100dvh}@media (min-width:901px){.app-shell{grid-template-columns:204px minmax(0,1fr)}.sidebar{padding:25px 12px 16px}.sidebar nav a{gap:11px;min-height:41px;padding:9px 12px;font-size:.83rem}.sidebar .brand{padding:3px 10px 24px;font-size:.84rem}.workspace-main{max-width:none;padding:28px 32px 44px}.page-title h1{font-size:1.85rem}.page-title{margin-bottom:20px}.card{border-radius:17px;padding:18px}.grid{gap:14px}.class-card{min-height:220px;padding:0 16px 12px}.class-card>.music-artwork{height:108px;min-height:108px;margin:0 -16px 12px}.class-card h3{margin:8px 0 4px;font-size:.98rem}.class-card .card-footer{padding-top:3px}.class-card p{font-size:.75rem}.class-card .badge{font-size:.65rem}.class-card .card-footer button{width:34px;height:34px;min-height:34px}.class-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.home-class-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.page-title .eyebrow{font-size:.68rem}button,.button{border-radius:10px;min-height:36px;padding:7px 13px;font-size:.82rem}input,select{min-height:40px;padding:9px 11px;font-size:.85rem}.field{margin:12px 0}.field>span{font-size:.78rem}.section-heading{margin:22px 0 12px}.section-heading h2{font-size:1rem}.disclosure{border-radius:14px;padding:15px}.sidebar .profile-button{font-size:.81rem}.theme-control{font-size:.8rem}}.text-action{border:0;min-height:32px;padding:5px 0;font-size:.76rem;color:var(--accent)!important;box-shadow:none!important;background:0 0!important}.overview-strip{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px;display:grid}.overview-metric{text-align:left;background:var(--surface);color:var(--text);border:1px solid color-mix(in srgb,var(--border) 40%,transparent);border-radius:14px;justify-content:flex-start;gap:12px;padding:13px 16px;display:flex}.overview-metric strong{color:var(--accent);font-size:1.55rem;line-height:1}.overview-metric span{flex:1;font-size:.75rem;font-weight:500}.overview-metric>svg{color:var(--muted)}.home-working-grid{grid-template-columns:1.15fr 1.35fr .85fr;gap:22px;padding:0 0 4px;display:grid}.home-working-grid>section{min-width:0}.home-working-grid .section-heading{margin:14px 0 8px}.home-photo{background:#132334;border-radius:13px;height:82px;position:relative;overflow:hidden}.home-photo>.music-artwork{min-height:0;position:absolute;inset:0}.home-photo>span{color:#fff;text-shadow:0 1px 6px #000;font-size:1rem;font-weight:600;position:absolute;bottom:13px;left:16px}.home-attention,.home-quick{border-left:1px solid var(--border);padding-left:20px}.working-row{text-align:left;width:100%;color:var(--text);border:0;border-bottom:1px solid color-mix(in srgb,var(--border) 65%,transparent);background:0 0;border-radius:0;justify-content:flex-start;align-items:center;gap:12px;padding:11px 0;display:flex;box-shadow:none!important}.working-row:last-child{border-bottom:0}.working-row:hover{background:var(--surface-2);filter:none}.working-row>span:not(.avatar):not(.badge){flex:1;min-width:0}.working-row strong{font-size:.82rem;font-weight:600;display:block}.working-row small{margin-top:3px;font-size:.71rem;font-weight:400;line-height:1.4;display:block}.working-row>svg{color:var(--accent);flex-shrink:0}.working-row .avatar{width:32px;height:32px;font-size:.8rem}.working-row>.music-artwork{border-radius:8px;flex-shrink:0;width:42px;height:42px;min-height:42px}.working-row .music-artwork>svg{width:21px;height:21px;bottom:9px;left:10px}.home-quick>button{border:0;border-bottom:1px solid var(--border);width:100%;color:var(--text);box-shadow:none;background:0 0;border-radius:0;justify-content:flex-start;gap:10px;margin:0;padding:12px 0}.home-quick>button svg{color:var(--accent);width:17px}.quiet-empty{color:var(--muted);padding:12px 0;font-size:.8rem;line-height:1.6}.recent-music-list{grid-template-columns:1fr 1fr;gap:0 28px;display:grid}.class-overview-banner{border-radius:18px;min-height:150px;padding:22px 26px;position:relative}.class-overview-banner h2{margin-bottom:8px;font-size:1.6rem}.class-overview-banner p:last-child{color:#d4dfed;margin:0;font-size:.8rem}.class-overview-columns{grid-template-columns:1fr 1fr;gap:30px;display:grid}.class-overview-columns>section{min-width:0}.product-wordmark{letter-spacing:-.06em;font-size:1.8rem;font-weight:750}.onboarding{background:var(--page);grid-template-columns:1fr 1fr;min-height:100dvh;display:grid}.onboarding-identity{color:#fff;background:linear-gradient(#102237b3,#0d172ae6),url(/artwork/rehearsal-stage.png) 50%/cover;flex-direction:column;justify-content:center;padding:70px 12%;display:flex}.onboarding-identity .product-wordmark{margin-bottom:60px}.onboarding-identity h1{font-size:clamp(2.2rem,4vw,4rem);line-height:1.08}.onboarding-identity>p:last-child{color:#bed0e7}.onboarding-panel{place-self:center;width:min(470px,100%);padding:40px}.onboarding-panel h2{font-size:1.8rem}.onboarding-panel>button,.onboarding-panel form>button{width:100%;min-height:44px;margin:18px 0}.field-hint{color:var(--muted);margin-top:-5px;font-size:.74rem}@media (max-width:1200px) and (min-width:901px){.home-class-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.home-class-grid>.class-card:nth-child(4){display:none}.home-working-grid{grid-template-columns:1fr 1.15fr .85fr;gap:14px}.home-attention,.home-quick{padding-left:14px}.overview-metric{gap:8px;padding:12px}.overview-metric>svg{display:none}}@media (max-width:900px){.home-working-grid{grid-template-columns:1fr 1fr}.home-quick{border:0;flex-wrap:wrap;grid-column:1/-1;gap:10px;padding:0;display:flex}.home-quick .section-heading{width:100%}.home-quick>button{border:1px solid var(--border);border-radius:12px;width:auto;padding:10px}.overview-metric{padding:12px}.overview-metric>svg{display:none}.class-overview-columns{gap:20px}.onboarding-identity{padding:40px}.onboarding-panel{padding:30px}}@media (max-width:640px){.overview-strip{grid-template-columns:1fr 1fr;gap:10px}.home-working-grid{flex-direction:column;gap:8px;display:flex}.home-attention{border:0;order:-1;padding:0}.home-today .home-photo{display:none}.home-quick{grid-template-columns:1fr 1fr;gap:8px;display:grid}.home-quick .section-heading{grid-column:1/-1}.home-quick>button{min-height:44px;padding:9px;font-size:.77rem}.recent-music-list,.class-overview-columns{grid-template-columns:1fr}.working-row{min-height:55px}.working-row strong{font-size:.87rem}.working-row small{font-size:.75rem}.home-class-grid{scroll-snap-type:x proximity;padding-bottom:8px;display:flex;overflow-x:auto}.home-class-grid>.class-card{scroll-snap-align:start;flex:0 0 80%;min-width:245px;max-width:280px}.onboarding{display:block}.onboarding-identity{min-height:260px;padding:30px}.onboarding-identity .product-wordmark{margin:0 0 28px}.onboarding-identity h1{font-size:2rem}.onboarding-panel{margin:auto;padding:30px}}.library-list{border-top:1px solid var(--border);flex-direction:column;gap:0;margin:18px 0;display:flex}.library-row.card{border:0;border-bottom:1px solid var(--border);box-shadow:none;background:0 0;border-radius:0;grid-template-columns:54px minmax(150px,1fr) minmax(120px,1fr) auto;align-items:center;gap:18px;margin:0;padding:14px 8px;display:grid}.library-row>.music-artwork{border-radius:10px;height:54px;min-height:54px}.library-row .music-artwork>svg{height:27px;bottom:12px;left:14px}.library-row h3{margin:0 0 4px;font-size:.94rem}.library-row p{color:var(--muted);margin:0;font-size:.78rem}.library-context small{font-size:.71rem}.library-actions{gap:8px;display:flex}.library-actions button{font-size:.74rem}.practice-review-workspace{grid-template-columns:190px minmax(0,1fr);align-items:start;gap:20px;display:grid}.review-queue{background:var(--surface-2);border-radius:15px;padding:15px 12px;position:sticky;top:20px}.review-queue .working-row{border:0;border-radius:10px;padding:12px 7px}.review-queue .working-row[aria-pressed=true]{background:var(--surface);box-shadow:0 3px 12px #0e253308!important}.review-queue .working-row .avatar{width:27px;height:27px}.review-queue .working-row strong{font-size:.8rem}.review-queue .working-row small{font-size:.68rem}.attempt-workspace.card{box-shadow:none;margin:0;padding:20px}.attempt-workspace .attempt-header{margin-bottom:14px;padding:0 0 12px}.attempt-header .person-row{border:0;flex:1;padding:0}.attempt-workspace .review-layout{grid-template-columns:minmax(0,1.8fr) minmax(230px,1fr);gap:20px}.attempt-workspace .review-panel{border:0;border-left:1px solid var(--border);box-shadow:none;border-radius:0;padding:0 0 0 18px}.attempt-workspace .review-panel .field{margin:10px 0}.attempt-workspace .review-panel textarea{min-height:78px;padding:10px;font-size:.83rem}.attempt-workspace .review-panel input[type=number]{max-width:100%;min-height:47px;padding:7px 12px;font-size:1.6rem}.attempt-workspace .review-panel h3{font-size:.94rem;line-height:1.45}.attempt-workspace .action-form{margin:10px 0}.attempt-workspace .action-form>button{width:100%;margin-top:5px}.attempt-workspace .preview-media{padding:14px}.attempt-workspace .media-preview>iframe{height:clamp(260px,36vw,410px)}.attempt-workspace .media-toolbar{gap:5px}.attempt-workspace .media-toolbar button,.attempt-workspace .media-toolbar a{padding:7px;font-size:.68rem}.attempt-switcher{flex-wrap:wrap;gap:6px;margin:12px 0;display:flex}.attempt-switcher button{font-size:.73rem}.attempt-switcher button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent);border-color:#0000}.compact-audio.preview-media{aspect-ratio:auto;text-align:left;min-height:110px;padding:16px;display:block}.compact-audio.preview-media>div{flex-wrap:wrap;align-items:center;gap:15px;display:flex}.compact-audio.preview-media h3,.compact-audio.preview-media p{margin:0}.compact-audio.preview-media svg{width:24px;margin:0}.media-preview.compact-audio:not(.stand-mode)>iframe{height:160px;min-height:160px}.quick-look .media-preview.compact-audio:not(.stand-mode)>iframe{height:210px}.rehearsal-list>.card{box-shadow:none}.rehearsal-list{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}@media (max-width:1200px){.practice-review-workspace{grid-template-columns:1fr}.review-queue{gap:8px;padding:10px;display:flex;position:static;overflow-x:auto}.review-queue>.eyebrow{align-self:center;min-width:70px;margin:0}.review-queue .working-row{flex-shrink:0;min-width:180px;max-width:240px}.library-row.card{grid-template-columns:45px 1fr auto}.library-context{grid-area:2/2}.library-actions{flex-direction:column;grid-area:1/3/3}.library-row.card{gap:5px 14px}.library-row>.music-artwork{grid-row:1/3;height:48px;min-height:48px}}@media (max-width:640px){.attempt-workspace.card{padding:16px}.attempt-workspace .review-layout{grid-template-columns:1fr;gap:18px}.attempt-workspace .review-panel{border-left:0;border-top:1px solid var(--border);padding:18px 0 0}.attempt-workspace .attempt-header{flex-wrap:wrap}.attempt-workspace .review-panel textarea{min-height:110px;font-size:1rem}.attempt-workspace .media-toolbar button,.attempt-workspace .media-toolbar a{min-height:44px;font-size:.73rem}.attempt-switcher button{min-height:44px}.library-row.card{grid-template-columns:44px 1fr}.library-actions{flex-flow:wrap;grid-area:3/2;margin-top:6px}.library-actions button{min-height:44px}.library-context p{font-size:.72rem}.library-row>.music-artwork{align-self:start}.compact-audio.preview-media>div{gap:10px}.review-queue .working-row{min-height:58px}.attempt-workspace .media-preview>iframe{height:280px}}.sidebar .brand{flex-direction:column;align-items:flex-start;gap:3px;display:flex;position:relative}.shell-product-name{letter-spacing:.025em;color:#9baec5;font-size:.65rem;font-weight:550}.sidebar .brand>.icon-button{position:absolute;top:0;right:0}.student-directory{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px;margin-top:20px;display:grid}.student-directory-row.card{box-shadow:none;margin:0;padding:18px}.student-directory-row h2{margin-bottom:4px;font-size:1.06rem}.student-directory-row>p{color:var(--muted);margin-bottom:10px;font-size:.78rem}.student-directory-row .disclosure{background:var(--surface-2);border:0;margin:10px 0;padding:10px 12px;font-size:.78rem}.student-directory-row .disclosure>summary{min-height:24px}.student-directory-row .field>span{font-size:.75rem}@media (max-width:640px){.student-directory{grid-template-columns:1fr}.student-directory-row .disclosure>summary{min-height:36px;padding-top:5px}}
