.editor-page{min-width:0}.editor-start{grid-template-columns:1fr 1.15fr;display:grid;overflow:hidden}.editor-start-art{isolation:isolate;align-items:end;min-height:390px;padding:32px;display:flex;position:relative}.editor-start-art:before{content:"";z-index:-1;background:linear-gradient(#0b0c0f00,#0b0c0fed);position:absolute;inset:0}.editor-start-art h2{margin:16px 0;font-size:38px;line-height:1.15}.editor-start-art p{max-width:32ch;color:var(--color-muted)}.editor-fieldset{border:0;min-width:0;margin:0;padding:0}.editor-document{grid-template-columns:minmax(180px,1fr) 200px;align-items:end;gap:18px;display:grid}.editor-file-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:end;gap:12px;display:flex}.editor-workspace{background:linear-gradient(135deg,#2a2b2ee8,#17191ced);overflow:hidden}.editor-track-row{border-bottom:1px solid var(--color-line);flex-wrap:wrap;align-items:end;gap:12px;padding:20px;display:flex}.editor-track-row>.field:first-child{flex:1;min-width:170px}.editor-track-row>.field:not(:first-child){width:110px}.editor-history{gap:8px;margin-left:auto}.editor-measure-nav{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:12px;padding:16px 20px;display:flex}.editor-measure-nav .field{width:170px}.editor-measure-nav .row{align-items:end}.editor-measure-nav .row>.muted{align-self:center}.editor-grid-hint{margin:0;padding:0 20px 14px}.editor-grid-scroll{scrollbar-color:#858990 #12171b;background:#12171b;max-height:560px;padding:4px 20px 20px;overflow:auto}.tab-entry-grid{width:max-content;min-width:100%;padding-top:12px}.tab-entry-row{align-items:center;min-height:44px;display:flex}.tab-string-name{z-index:2;width:64px;color:var(--color-muted);background:#12171b;flex:none;align-items:center;gap:8px;height:44px;padding-right:10px;font-size:12px;display:flex;position:sticky;left:0}.tab-string-name b{color:var(--color-text);font-size:14px}.tab-string-name small{color:#949da5;font-size:11px}.tab-beat-label{text-align:center;color:#c5c7cb;flex:none;gap:3px;width:64px;font-size:12px;display:grid}.tab-beat-label small{color:#a4adb6;font-size:11px}.tab-beat-labels{padding-bottom:8px}.tab-entry-cell{color:#f2f3f4;cursor:pointer;width:64px;height:44px;font:500 17px/1.1 var(--font-body);background:linear-gradient(#0000 calc(50% - .5px),#66727b calc(50% - .5px) calc(50% + .5px),#0000 calc(50% + .5px));border:0;border-radius:0;justify-content:center;align-items:center;display:flex;position:relative}.tab-entry-cell>span{background:#12171b;border-radius:4px;place-items:center;min-width:24px;padding:3px;display:grid}.tab-entry-cell small{color:var(--color-accent);font-size:9px;position:absolute;top:0;right:3px}.tab-entry-cell:hover{background-color:#d6dce514}.tab-entry-cell.is-selected{background-color:#d6dce517;border-radius:7px;box-shadow:inset 0 0 0 1px #d6dce577}.tab-entry-cell.is-selected>span{color:#151a1e;background:linear-gradient(110deg,#f4f7fa,#b9c2cc);box-shadow:0 3px 16px #d6dce527}.tab-entry-cell.is-protected{opacity:.65}.tab-entry-cell:focus-visible{outline:3px solid var(--color-accent);outline-offset:-3px;z-index:1}.editor-inspector{border-top:1px solid var(--color-line);flex-wrap:wrap;align-items:end;gap:12px;padding:18px 20px;display:flex}.editor-inspector>div:first-child{align-self:center;gap:6px;margin-right:auto;font-size:12px;display:grid}.editor-inspector>.field{width:90px}.editor-inspector>.field:has(select){width:110px}.editor-inspector .check{font-size:12px}.editor-inspector .btn[aria-pressed=true]{border-color:var(--color-primary);color:var(--color-text);background:#d6dce51f}.editor-preview .score-scroll{min-height:200px;max-height:360px}.editor-preview .player-head p{margin-top:6px}.editor-preview .player-controls{gap:20px}.editor-footnote{justify-content:space-between;align-items:start;gap:20px;margin-top:20px;display:flex}.editor-footnote p{max-width:70ch}.editor-footnote .btn{flex:none}.library-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}@media (width<=1000px){.editor-start{grid-template-columns:1fr}.editor-start-art{background-position:50% 40%;min-height:240px}.editor-start-art h2{font-size:30px}.editor-track-row .editor-history{justify-content:end;width:100%;margin:0}.editor-document{grid-template-columns:minmax(0,1fr) 180px}}@media (width<=600px){.editor-document{grid-template-columns:minmax(0,1fr)}.editor-file-actions{justify-content:stretch}.editor-file-actions .btn{flex:1}.editor-track-row,.editor-measure-nav,.editor-inspector{padding:16px}.editor-measure-nav{gap:16px}.editor-measure-nav .field{width:148px}.editor-grid-scroll{padding-inline:12px}.editor-grid-hint{padding-inline:16px}.editor-inspector>div:first-child{flex-basis:100%}.editor-inspector .btn{flex:1}.editor-footnote{flex-direction:column}.editor-footnote .btn{width:100%}.editor-start-art{padding:24px}.editor-history .btn{flex:1}.tab-entry-cell,.tab-beat-label{width:52px}.tab-string-name{width:48px}.editor-preview .player-controls{gap:12px}.editor-start .cols-2{grid-template-columns:minmax(0,1fr)}}.mvp .main{min-height:calc(100svh - 112px)}.mvp h1{overflow-wrap:anywhere}.mvp .main h1:focus{outline:none}.mvp .sidebar{height:calc(100svh - 40px);position:sticky;top:0}.mvp .topbar{z-index:12;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#191a1de8;position:sticky;top:0}.mvp .topbar .account-link{flex-wrap:nowrap}.mvp .heading{margin-top:0}.eyebrow{letter-spacing:.15em;color:var(--color-muted);font-size:11px;font-weight:500}.text-link{text-underline-offset:4px;text-decoration:underline}.breadcrumb{color:var(--color-muted);margin-bottom:18px;font-size:12px;display:inline-block}.mvp-footer{color:var(--color-muted);flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:28px;padding-top:40px;font-size:11px;display:flex}.notice{border:1px solid var(--color-line);background:var(--color-panel);border-radius:10px;margin-bottom:18px;padding:14px 18px}.notice-error{color:var(--color-negative);background:#311c20b0;border-color:#ffb7b755}.notice.success{color:var(--color-positive)}.notice ul{margin-bottom:0}.notice a{text-decoration:underline}.field{gap:7px;min-width:0;display:grid}.field>span{color:var(--color-muted);font-size:12px}input,select,textarea{min-width:0}input:not([type=checkbox]):not([type=radio]),select,textarea{width:100%;max-width:100%;min-height:44px}input[type=file]{padding:10px;overflow:hidden}textarea{resize:vertical}.btn,.btn-sm{min-height:44px}.check{align-items:center;gap:10px;min-height:44px;display:flex}.check input{accent-color:var(--color-primary);flex:none;width:18px;height:18px}.empty-real{align-content:center;justify-items:start;gap:14px;min-height:240px;display:grid}.empty-real>svg{width:28px;height:28px;color:var(--color-muted)}.empty-real p{max-width:60ch}.teacher-intro{justify-content:space-between;align-items:center;gap:24px;display:flex}.teacher-intro h2{margin:10px 0}.metric-number{font:400 52px/1.4 var(--font-display);margin:12px 0}.practice-tip>svg{color:var(--color-accent);margin-bottom:12px}.practice-tip h3{margin-bottom:8px}.real-plan-list{gap:12px;display:grid}.real-plan-item{border:1px solid var(--color-line);background:linear-gradient(110deg,#f5f7fa0c,#d5dce705);border-radius:14px;align-items:center;gap:16px;min-width:0;padding:16px;display:flex}.plan-thumb{border:1px solid var(--color-line);border-radius:10px;flex:none;width:72px;height:78px}.real-plan-item h3{margin:5px 0}.assignment-note{max-width:65ch;margin:10px 0;font-size:12px}.plan-item-actions{gap:6px}.material-grid,.student-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.material-tile{flex-direction:column;display:flex;overflow:hidden}.material-tile .pad{flex:1;align-content:start}.material-tile .pad>.btn{align-self:end}.material-art{justify-content:space-between;align-items:start;height:180px;padding:16px;display:flex;position:relative}.material-art:after{content:"";background:linear-gradient(#0c0e1010,#0c0e104d);position:absolute;inset:0}.material-art .chip,.material-play{z-index:1;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#18191bc9}.material-play{border:1px solid #ffffff50;border-radius:50%;place-items:center;width:36px;height:36px;display:grid}.library-filter{grid-template-columns:minmax(0,1fr) 220px auto;align-items:end;gap:16px;display:grid}.mvp-dialog{width:min(580px,100vw - 32px);max-height:calc(100svh - 32px);color:var(--color-text);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#29292cf5,#1a1a1df8);border:1px solid #eceff550;border-radius:20px;padding:24px;overflow:auto;box-shadow:0 30px 90px #0008}.mvp-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#08090bc9}.mvp-dialog>form{margin-top:18px}.metadata-grid{grid-template-columns:1fr 1fr;gap:18px;font-size:12px;display:grid}.metadata-grid dt{color:var(--color-muted);margin-bottom:4px}.metadata-grid dd{overflow-wrap:anywhere;margin:0}.metadata-grid .full{grid-column:1/-1}.hash{letter-spacing:.01em;overflow-wrap:anywhere;font-size:11px}.score-scroll{scrollbar-color:#858990 #1c2125;background:#1c2125;min-height:220px;max-height:560px;position:relative;overflow:auto}.tab-player{overflow:hidden}.player-head{border-bottom:1px solid var(--color-line);padding:14px 18px;font-size:12px}#real-score{width:100%;min-width:0}.at-surface svg{max-width:100%}.at-cursor-bar{background:#ffaaa00d}.at-cursor-beat{background:#d6dce53d;width:3px}.at-highlight *{fill:#ffaaa0}.at-selection div{background:#d6dce522}.player-controls{border-top:1px solid var(--color-line);flex-wrap:wrap;align-items:center;gap:12px;padding:18px;display:flex}.sound-controls{border-top:1px solid var(--color-line);padding:8px 18px 18px}.sound-controls>p{flex-basis:100%}.tempo-goal{justify-content:space-between;align-items:center;gap:22px;padding:14px 0;display:flex}.tempo-goal>span{font:400 36px/1.4 var(--font-display)}.tempo-goal small{font:400 11px/1.5 var(--font-body);color:var(--color-muted);display:block}.practice-photo{border:1px solid var(--color-line);border-radius:20px;height:210px}.student-context{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.student-context>.avatar{width:58px;height:58px;font-size:18px}.student-context .field{width:220px}.profile-form{max-width:720px}.loading-screen{place-content:center;gap:20px;min-height:100svh;display:grid}.skip-link{z-index:100;background:var(--color-primary);color:var(--color-on-primary);padding:12px;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus{transform:none}@media (width>=1620px){.mvp .shell{margin-inline:auto}}@media (width<=1250px){.material-grid,.student-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mvp .main-side{grid-template-columns:minmax(0,1fr) 260px}.real-plan-item{align-items:start}.plan-thumb{width:56px;height:66px}.plan-item-actions{align-self:center}.player-settings .cols-3{grid-template-columns:1fr 1fr}.player-settings .cols-3>.grid{grid-column:1/-1}}@media (width<=1000px){.mvp .main-side{grid-template-columns:minmax(0,1fr)}.mvp .main-side>aside{grid-template-columns:1fr 1fr}.library-filter{grid-template-columns:minmax(0,1fr) 180px auto}.real-plan-item{align-items:center}}@media (width<=760px){.mvp .sidebar{display:none}.mvp .shell{border-radius:18px;grid-template-columns:minmax(0,1fr);min-height:calc(100svh - 16px);margin:8px}.mvp .mobile-menu{display:inline-flex}.mvp .topbar{padding:12px 16px}.mvp .topbar-right{gap:8px}.mvp .account-name{display:none}.mvp .role-chip{font-size:11px}.mvp .main{padding:24px 16px}.mvp h1{font-size:32px}.mvp .heading{flex-wrap:wrap}.mvp .hero{background-position:65%;grid-template-columns:1fr;min-height:300px;padding:24px}.mvp .hero h2{font-size:34px}.mvp .hero-tag{justify-self:start;width:auto;min-width:0;display:none}.mvp .hero p{max-width:35ch}.mvp .main-side>aside{grid-template-columns:1fr}.library-filter{grid-template-columns:1fr 1fr;gap:12px;padding:16px}.library-filter>.field:first-child{grid-column:1/-1}.material-grid,.student-grid{grid-template-columns:1fr 1fr;gap:16px}.material-art{height:150px}.material-tile .pad{padding:16px}.real-plan-item{flex-wrap:wrap;gap:12px;padding:14px}.real-plan-item>.grow{flex-basis:calc(100% - 80px)}.plan-item-actions{flex-wrap:wrap;justify-content:flex-end;width:100%;display:flex}.plan-item-actions>.btn{flex:1}.teacher-intro{padding:20px;display:grid}.teacher-intro .btn{justify-self:start}.student-context .field{width:100%}.student-context>.grow{flex-basis:calc(100% - 90px)}.mvp-dialog{padding:20px}.player-settings,.player-controls{padding:16px}.metadata-grid{grid-template-columns:1fr}.metadata-grid .full{grid-column:auto}.mvp-footer{padding-top:24px}.practice-photo{height:180px}input,select,textarea{font-size:16px}.score-scroll{max-height:460px}}@media (width<=450px){.material-grid,.student-grid{grid-template-columns:1fr}.material-art{height:180px}.mvp .topbar>.row>.small{display:none}.real-plan-item .plan-thumb{width:54px;height:64px}.mvp .heading>.btn{width:100%}.player-settings .cols-3{grid-template-columns:1fr}.player-settings .cols-3>.grid{grid-column:auto}.library-filter{grid-template-columns:1fr}.library-filter>.field:first-child{grid-column:auto}.section-title{flex-wrap:wrap}.mvp .hero{padding:22px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}body:has(.auth-shell){background-color:var(--color-bg);background-image:radial-gradient(at 94% 18%,#75352c26,#0000 44%),radial-gradient(at 7% 90%,#7a859714,#0000 48%),linear-gradient(125deg,#151719,#1a1719);background-size:auto;background-attachment:fixed}.auth-shell{grid-template-columns:minmax(0,512px) minmax(0,480px);place-content:center;align-items:center;gap:64px;width:100%;max-width:1120px;min-height:100svh;margin:auto;padding:48px 32px;display:grid}.auth-shell>*{min-width:0}.auth-art{isolation:isolate;max-width:512px;height:min(768px,100svh - 96px);min-height:620px;box-shadow:var(--shadow-glass);background:#151719;border:1px solid #edeff43d;border-radius:24px;flex-direction:column;justify-content:space-between;gap:32px;padding:32px;display:flex;position:relative;overflow:hidden}.auth-visual{z-index:-2;position:absolute;inset:0}.auth-image{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.auth-art:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(90deg,#090b0d7a,#090b0d14 78%),linear-gradient(#0a0c0e47,#0000 20% 76%,#0a0c0eb3);position:absolute;inset:0}.auth-art .brand{padding:0}.auth-art .brand-caption{font-size:12px}.auth-copy{max-width:390px;margin-top:28px}.auth-copy .eyebrow{color:var(--color-primary)}.auth-shell .eyebrow{letter-spacing:.12em;font-size:12px}.auth-title{font:400 50px/1.1 var(--font-display);text-wrap:balance;margin:16px 0 20px}.auth-title>span{display:block}.auth-description{max-width:31ch;color:var(--color-text);font-size:14px;line-height:1.75}.auth-caption{color:var(--color-muted);font-size:12px}.auth-form{background:linear-gradient(135deg,#f1f4f916,#d5dce709);justify-self:center;width:100%;max-width:480px;padding:36px}.auth-form h1{font:400 34px/1.2 var(--font-display);text-wrap:balance;margin-top:12px}.auth-intro{margin:12px 0 28px;line-height:1.65}.auth-form .field>span{color:var(--color-text);font-size:13px}.auth-form form.stack{gap:18px}.auth-form input{min-height:48px}.auth-form form>.btn{min-height:48px;margin-top:6px}.auth-password-hint{font-size:12px;line-height:1.6}.auth-help{border-top:1px solid var(--color-line);color:var(--color-muted);margin-top:28px;padding-top:20px;font-size:13px;line-height:1.7}.auth-help>details{margin-top:8px}.auth-help summary{cursor:pointer;min-height:44px;color:var(--color-text);padding:10px 0;display:list-item}.auth-help summary:focus-visible{outline:3px solid var(--color-accent);outline-offset:4px;border-radius:4px}.auth-support{gap:12px;padding:4px 0;display:grid}.auth-support>a{align-items:center;width:fit-content;min-height:44px;display:inline-flex}.auth-phone{color:var(--color-primary);font-variant-numeric:tabular-nums;font-size:16px}.auth-help a:hover{color:var(--color-text)}@media (width<=1150px){.auth-shell{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;padding:32px}.auth-art{height:min(768px,100svh - 64px);padding:28px}.auth-title{font-size:48px}.auth-form{padding:30px}}@media (width<=960px){.auth-shell{grid-template-columns:minmax(0,1fr);gap:24px;max-width:536px;padding:32px 24px}.auth-art{width:100%;max-width:none;height:auto;min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0;display:block;overflow:visible}.auth-visual,.auth-art:after,.auth-copy,.auth-caption{display:none}.auth-art .brand{gap:12px;width:fit-content}.auth-art .brand-name{font-size:30px}.auth-form{max-width:none;padding:30px}.auth-form h1{font-size:32px}}@media (width<=450px){.auth-shell{gap:24px;padding:24px 16px}.auth-art .brand{padding-left:4px}.auth-art .brand-caption{font-size:12px}.auth-form{padding:24px 22px}.auth-form h1{font-size:30px}.auth-intro{margin-bottom:24px;font-size:14px}.auth-help{margin-top:24px;padding-top:18px}.auth-form input{font-size:16px}}
