@media (width<=980px){.screen.auth-screen .auth-card button,.screen.login-screen .onboarding-panel button{min-width:44px;min-height:44px}.screen.auth-screen .auth-card .password-visibility{width:44px;padding:10px}.screen.auth-screen .auth-card .login-auth-links{flex-wrap:wrap;gap:4px 12px}.screen.auth-screen .auth-card .auth-links button{white-space:normal}.screen.login-screen:has(.onboarding-panel){padding:16px 14px max(24px, env(safe-area-inset-bottom));align-items:flex-start}.screen.login-screen .onboarding-panel{gap:14px;min-width:0;padding:16px}.screen.login-screen .onboarding-panel header{align-items:center;gap:8px}.screen.login-screen .onboarding-panel h1{overflow-wrap:anywhere;font-size:1.4rem;line-height:1.25}.screen.login-screen .onboarding-panel .teaching-area-options{grid-template-columns:repeat(2,minmax(0,1fr))}.screen.login-screen .onboarding-panel .teaching-area-option{overflow-wrap:anywhere;min-width:0;font-size:.85rem}}@media (width<=640px){.app-shell .screen.auth-screen{padding:16px 16px 64px}.screen.auth-screen .auth-layout{gap:16px}.screen.auth-screen .auth-intro{align-items:center;gap:14px;display:flex}.screen.auth-screen .auth-brand{flex:none;margin:0}.screen.auth-screen .auth-wordmark{font-size:2.7rem}.screen.auth-screen .auth-intro p.auth-intro-title{margin:0;font-size:.98rem;line-height:1.35}.screen.auth-screen .auth-card{gap:16px;padding:16px}.screen.auth-screen .auth-card-header h1{overflow-wrap:anywhere;font-size:1.35rem;line-height:1.25}.screen.auth-screen .auth-card-header p{font-size:.88rem;line-height:1.45}.screen.auth-screen .auth-footer{bottom:18px}}@media (width>=641px) and (width<=980px) and (height<=540px){.app-shell .screen.auth-screen{align-items:flex-start;padding:12px 20px 56px}.screen.auth-screen .auth-layout{grid-template-columns:minmax(180px,1fr) minmax(0,1.35fr);gap:28px;max-width:760px}.screen.auth-screen .auth-wordmark{font-size:3rem}.screen.auth-screen .auth-intro p.auth-intro-title{font-size:1.35rem;line-height:1.3}.screen.auth-screen .auth-card{gap:14px;padding:16px 20px}.screen.auth-screen .auth-card-header h1{font-size:1.35rem;line-height:1.25}.screen.auth-screen .auth-card .auth-form{gap:12px}.screen.auth-screen .auth-footer{bottom:16px}}.rio-landing{color:#25282e;background:#fff;flex-direction:column;min-height:100dvh;padding:48px 24px 22px;display:flex}.rio-landing .landing-content{width:100%;max-width:510px;margin:auto;padding:40px 0 64px}.rio-landing .landing-logo{width:208px;margin:0 auto;position:relative}.rio-landing .landing-logo-frame{height:196px;position:relative;overflow:hidden}.rio-landing .landing-logo-frame video,.rio-landing .landing-logo-frame img{pointer-events:none;width:270px;max-width:none;height:270px;display:block;position:absolute;top:-38px;left:-31px}.rio-landing h1{letter-spacing:-.022em;margin:0 0 26px;font-size:clamp(2rem,3.3vw,2.55rem);font-weight:600;line-height:1.16}.rio-landing .landing-description{color:#666273;max-width:455px;margin:0 0 14px;font-size:1.04rem;line-height:1.65}.rio-landing .landing-login{color:#22202b;background:#8bbad8;border-radius:7px;min-height:44px;margin-top:18px;padding:10px 33px;font-size:1rem;font-weight:600}.rio-landing .landing-login:hover{background:#77acd0}.rio-landing .landing-footer{text-align:center;margin-inline:auto}.rio-landing .landing-footer nav{flex-wrap:wrap;justify-content:center;gap:4px 26px;display:flex}.rio-landing .landing-footer a,.rio-landing .landing-footer button{color:#777487;text-underline-offset:4px;background:0 0;min-height:44px;padding:0;font-size:.82rem;text-decoration:underline}.rio-landing .landing-footer a:hover,.rio-landing .landing-footer button:hover{color:#25282e}.rio-landing .landing-terms{color:#25282e;border:1px solid #e5e7eb;border-radius:16px;width:min(430px,100% - 40px);padding:28px}.rio-landing .landing-terms::backdrop{background:#22202b3d}.rio-landing .landing-terms h2{margin:0 0 14px;font-size:1.3rem}.rio-landing .landing-terms p{color:#666273;margin:0 0 24px}.rio-landing .landing-terms form{justify-content:flex-end;display:flex}.rio-landing .landing-terms button{min-height:44px;padding:10px 20px}@media (width<=540px){.rio-landing{padding:30px 28px 12px}.rio-landing .landing-content{padding:30px 0 48px}.rio-landing .landing-description{font-size:1rem}}.rio-contact{color:#25282e;background:#fff;min-height:100dvh;padding:48px 24px;display:flex}.rio-contact .contact-content{width:100%;max-width:510px;margin:auto}.rio-contact .contact-back{color:#777487;gap:9px;min-height:44px;margin-bottom:30px;font-size:.85rem}.rio-contact h1{letter-spacing:-.022em;margin:0 0 8px;font-size:2rem;font-weight:600}.rio-contact .contact-intro{color:#666273;margin:0 0 30px}.rio-contact .contact-form{flex-direction:column;display:flex}.rio-contact .contact-form label{color:#4d4a5e;margin-bottom:8px;font-size:.95rem;font-weight:600}.rio-contact .contact-form input,.rio-contact .contact-form textarea{background:#fafbfd;border:1px solid #dce0e5;border-radius:7px;margin-bottom:23px;padding:12px 14px;font-size:1rem;line-height:1.6}.rio-contact .contact-form textarea{resize:vertical;min-height:160px}.rio-contact .contact-form input::placeholder,.rio-contact .contact-form textarea::placeholder{color:#797787;opacity:1}.rio-contact .contact-submit{color:#22202b;background:#8bbad8;gap:12px;min-height:48px;font-weight:600}.rio-contact .contact-submit:hover{background:#77acd0}.rio-contact .contact-submit:disabled{cursor:wait;opacity:.7}.rio-contact .contact-status{color:#666273;margin:12px 0 0;font-size:.82rem;line-height:1.55}.rio-contact .contact-error{color:#a12e35}.rio-contact .contact-back:hover{color:#25282e;text-underline-offset:4px;text-decoration:underline}@media (width<=540px){.rio-contact{padding:24px 28px}.rio-contact .contact-back{margin-bottom:22px}}.student-note-dialog-fields{border:0;min-width:0;margin:0}@media (width<=980px){body .dialog-backdrop,body .account-invitation-backdrop{padding:max(12px, env(safe-area-inset-top,0px)) max(12px, env(safe-area-inset-right,0px)) max(12px, env(safe-area-inset-bottom,0px)) max(12px, env(safe-area-inset-left,0px));overflow-y:auto}.dialog-backdrop .confirm-dialog,.account-invitation-backdrop .account-invitation-dialog{max-height:calc(100dvh - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow-wrap:anywhere;overscroll-behavior:contain;min-height:0;padding:16px;overflow-y:auto}.confirm-dialog>header>:first-child,.account-invitation-dialog>header>div,.student-note-dialog>header>div{min-width:0}.dialog-backdrop .confirm-dialog h2,.account-invitation-backdrop .account-invitation-dialog h2,.student-note-dialog-backdrop .student-note-dialog>header h2{overflow-wrap:anywhere;font-size:1.15rem;line-height:1.3}.dialog-backdrop .confirm-dialog footer,.account-invitation-dialog .button-row{flex-wrap:wrap;gap:8px}.dialog-backdrop .confirm-dialog footer button,.account-invitation-dialog .button-row button{white-space:normal;flex:110px;min-width:0;min-height:44px}.dialog-backdrop .confirm-dialog .ghost-icon,.account-invitation-dialog>header .ghost-icon,.student-note-dialog>header .ghost-icon{flex:0 0 44px;min-width:44px;min-height:44px}.student-note-dialog-backdrop .student-note-dialog>header{max-height:32dvh;padding-top:max(12px, env(safe-area-inset-top,0px));flex-shrink:0;overflow-y:auto}.student-note-dialog-backdrop .student-note-dialog-actions{padding-bottom:max(12px, env(safe-area-inset-bottom,0px));flex-shrink:0}.student-note-dialog-backdrop .student-note-dialog-actions button{white-space:normal;min-width:0;min-height:44px}}.google-integration{background:#f5f8fb;border:1px solid #dbe5ec;border-radius:12px;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.agenda-screen>.google-integration{margin-bottom:12px}.google-integration-copy{min-width:0}.google-integration-copy strong{align-items:center;gap:8px;display:flex}.google-integration-copy p{color:#526172;margin:5px 0 0;font-size:.82rem}.google-integration-copy small{overflow-wrap:anywhere;margin-top:5px;display:block}.google-integration-copy [role=alert]{color:#a12828}.google-integration-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.google-integration-actions button{min-height:44px}@media (width<=980px){.google-integration{flex-direction:column;align-items:stretch;padding:10px 12px}.google-integration-actions{flex-wrap:wrap}.google-integration-actions>.secondary-action{flex:1}.agenda-screen .google-integration-copy>p:first-of-type{font-size:.75rem}}.agenda-google-occupation,.agenda-mobile-google{color:#655b49;text-align:left;cursor:pointer;box-shadow:none;background:#faf5e9;border:0;border-left:3px solid #ceb995;border-radius:5px;font-weight:500}.agenda-google-occupation{box-sizing:border-box;min-height:0;padding:2px 5px;font-size:11px;line-height:1.35;display:block;position:absolute;left:2px;right:2px;overflow:hidden}.agenda-day-track .agenda-event{z-index:1}.agenda-mobile-google{border-radius:6px;gap:.25rem;padding:.75rem;display:grid}.google-integration-actions{flex-wrap:wrap}.agenda-google-occupation:hover,.agenda-mobile-google:hover{background:#f5ecd8}.agenda-google-occupation:focus-visible,.agenda-mobile-google:focus-visible,.agenda-google-occupation[aria-pressed=true],.agenda-mobile-google[aria-pressed=true]{outline-offset:-2px;outline:2px solid #a88b5d}.agenda-google-details .agenda-note-window-handle{background:#faf5e9}.agenda-google-details .agenda-note-window-handle h2{white-space:normal;overflow-wrap:anywhere}.google-calendar-controls{margin-bottom:12px;position:relative}.google-calendar-toolbar,.google-calendar-sync{align-items:center;gap:8px;display:flex}.google-calendar-toolbar{flex-direction:column;align-items:flex-start;gap:0}.google-calendar-checkbox{cursor:pointer;color:#526172;align-items:center;gap:9px;min-height:44px;font-size:.86rem;display:inline-flex}.google-calendar-checkbox input{accent-color:#c1842c;width:17px;height:17px;margin:0}.google-calendar-sync>button{min-height:44px}.google-calendar-help{display:flex;position:relative}.google-calendar-help>button{min-width:44px;min-height:44px}.google-calendar-tooltip{z-index:40;color:#465665;background:#fff;border:1px solid #dde2e8;border-radius:12px;width:min(340px,100vw - 48px);padding:14px 16px;font-size:.82rem;line-height:1.5;position:absolute;top:100%;right:0;box-shadow:0 8px 28px #25313c26}.google-calendar-tooltip p{margin:8px 0}.google-calendar-tooltip small{overflow-wrap:anywhere}.google-calendar-notice{color:#526172;margin:4px 0 0;font-size:.78rem}.google-calendar-controls [role=alert]{color:#a12828;font-size:.82rem}@media (width<=600px){.google-calendar-sync{width:100%}.google-calendar-sync>button{flex:1}}.google-calendar-sync{flex-wrap:wrap;width:100%}.google-calendar-sync .agenda-export-button{margin-left:auto}.google-drive-controls .google-calendar-tooltip{box-sizing:border-box;left:0;right:auto}@media (width<=600px){.google-drive-controls .google-calendar-tooltip{left:auto;right:0}}.agenda-export-toolbar{flex-shrink:0;justify-content:flex-end;margin-bottom:12px;display:flex}.agenda-export-toolbar .secondary-action{min-height:44px}@media (width<=980px){.app-shell:has(.teacher-mobile-nav)>.screen.agenda-screen{height:calc(100dvh - var(--mobile-nav-height,64px));flex-direction:column;min-height:0;padding-bottom:12px;display:flex}.agenda-screen .agenda-layout,.agenda-screen .agenda-calendar,.agenda-mobile-overview,.agenda-mobile-day{flex-direction:column;flex:auto;min-height:0;display:flex}.agenda-screen .agenda-page-header,.agenda-mobile-week-summary,.agenda-mobile-days,.agenda-mobile-day-heading{flex-shrink:0}.agenda-screen .agenda-page-header{align-items:stretch;gap:12px;margin-bottom:14px}.agenda-screen .agenda-page-header>div:first-child{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;display:flex}.agenda-screen .agenda-page-header .back-button{order:1;min-height:44px;margin:0;font-size:.78rem}.agenda-screen .agenda-page-header h1{margin:0;font-size:1.5rem;line-height:1.2}.agenda-screen .agenda-navigation{justify-content:space-between;align-items:center;gap:4px;width:100%;display:flex}.agenda-screen .agenda-week-switcher{flex:auto;grid-template-columns:40px minmax(0,1fr) 40px;gap:0;width:auto}.agenda-screen .agenda-week-switcher .secondary-action{background:0 0;width:40px;height:44px;padding:9px}.agenda-screen .agenda-navigation strong{white-space:normal;font-size:.76rem;line-height:1.35}.agenda-screen .agenda-current-week{flex:none;width:auto;min-height:44px;padding:8px;font-size:.76rem}.agenda-screen .agenda-calendar{border-radius:16px}.agenda-mobile-week-summary{color:#777487;justify-content:space-between;align-items:center;padding:14px 14px 10px;font-size:.74rem;display:flex}.agenda-mobile-week-summary strong{color:#414451;font-size:.74rem}.agenda-mobile-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;padding:0 8px 12px;display:grid}.agenda-mobile-day-button{color:#62636f;touch-action:manipulation;background:0 0;border:1px solid #0000;border-radius:11px;align-content:center;justify-items:center;gap:4px;min-width:0;min-height:83px;padding:7px 0;display:grid}.agenda-mobile-day-button>span{font-size:.67rem;font-weight:600}.agenda-mobile-day-button>strong{font-size:1rem;line-height:1.2}.agenda-mobile-day-button>small{color:#636977;background:#eef0f3;border-radius:7px;justify-content:center;align-items:center;min-width:20px;min-height:16px;font-size:.6rem;display:flex}.agenda-mobile-day-button.today{color:#245c80;border-color:#b9d8eb}.agenda-mobile-day-button.active,.agenda-mobile-day-button.active:hover{color:#fff;background:#173f5b;border-color:#173f5b}.agenda-mobile-day-button.active>small{color:#fff;background:#ffffff24}.agenda-mobile-day-button:focus-visible,.agenda-mobile-lesson:focus-visible{outline-offset:-2px;outline:2px solid #2e749c}.agenda-mobile-day-heading{background:#f7f8fa;border-top:1px solid #e8eaf0;border-bottom:1px solid #e8eaf0;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.agenda-mobile-day-heading h2{color:#343a45;margin:0;font-size:.88rem;line-height:1.3}.agenda-mobile-day-heading>span{color:#747b85;flex:none;font-size:.7rem}.agenda-mobile-list{overscroll-behavior-y:contain;scrollbar-width:thin;flex:auto;min-height:0;padding:4px 12px;overflow-y:auto}.agenda-mobile-lesson{color:#293d4a;text-align:left;touch-action:manipulation;background:#fff;border-bottom:1px solid #e8eaf0;border-radius:0;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;min-height:70px;padding:12px 0;display:grid}.agenda-mobile-lesson:last-child{border-bottom:0}.agenda-mobile-lesson:hover,.agenda-mobile-lesson.selected{background:#f0f7fc}.agenda-mobile-lesson.rescheduled .agenda-mobile-lesson-time{color:#805b12;border-color:#c2922b}.agenda-mobile-lesson-time{color:#325d78;border-right:2px solid #a6c9dc;gap:4px;padding-right:8px;line-height:1.2;display:grid}.agenda-mobile-lesson-time strong{font-size:.8rem}.agenda-mobile-lesson-time>span{color:#7b8792;font-size:.68rem}.agenda-mobile-lesson-info{gap:5px;min-width:0;display:grid}.agenda-mobile-lesson-info>strong{overflow-wrap:anywhere;font-size:.88rem;line-height:1.3}.agenda-mobile-lesson-info>small{color:#737c86;font-size:.69rem;font-weight:500;line-height:1.4}.agenda-mobile-lesson-icons{color:#8295a3;align-items:center;gap:5px;display:flex}.agenda-mobile-empty{color:#78828c;text-align:center;align-content:center;justify-items:center;gap:10px;min-height:144px;padding:20px;display:grid}.agenda-mobile-empty p{margin:0;font-size:.83rem;line-height:1.45}.agenda-screen .agenda-note-window,.agenda-screen .agenda-editor{bottom:max(10px, env(safe-area-inset-bottom));max-height:calc(100dvh - 28px - env(safe-area-inset-bottom));width:auto;right:10px;overflow-y:auto;top:auto!important;left:10px!important}.agenda-screen .agenda-note-window-handle{cursor:default;touch-action:pan-y;grid-template-columns:minmax(0,1fr) auto}.agenda-screen .agenda-note-drag-icon{display:none}.agenda-screen .agenda-note-window-handle h2,.agenda-screen .agenda-editor h2{overflow-wrap:anywhere;white-space:normal}.agenda-screen .agenda-note-window-actions button,.agenda-screen .agenda-editor-modes button,.agenda-screen .agenda-note-window .ghost-icon,.agenda-screen .agenda-editor .ghost-icon{min-height:44px}}@media (width>=641px) and (width<=980px) and (height<=540px){.app-shell:has(.teacher-mobile-nav)>.screen.agenda-screen{padding-top:8px}.agenda-screen .agenda-page-header{flex-direction:row;align-items:center;gap:16px;margin-bottom:8px}.agenda-screen .agenda-page-header>div:first-child{flex:none}.agenda-screen .agenda-page-header .back-button{display:none}.agenda-screen .agenda-page-header h1{font-size:1.25rem}.agenda-screen .agenda-navigation{flex:0 440px;width:auto;margin-left:auto}.agenda-mobile-week-summary{padding:6px 12px}.agenda-mobile-days{padding-bottom:6px}.agenda-mobile-day-button{gap:1px;min-height:58px;padding:4px 0}.agenda-mobile-day-heading{padding:8px 12px}.agenda-mobile-lesson{min-height:56px;padding-block:8px}}.action-menu{flex:none;display:inline-flex;position:relative}.action-menu-trigger{color:#386a8d;white-space:nowrap;background:#edf5fc}.action-menu-trigger:hover,.action-menu-trigger[aria-expanded=true]{background:#e1edf7}.action-menu-trigger-icon{background:0 0;min-width:38px;padding:8px}.action-menu-popover{overscroll-behavior:contain;z-index:30;background:#fff;border:1px solid #dedee8;border-radius:10px;gap:2px;width:max-content;min-width:200px;max-width:min(300px,100vw - 32px);padding:6px;display:grid;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto;box-shadow:0 8px 28px #24223121}.action-menu-popover>[role=menuitem]{color:#393644;text-align:left;overflow-wrap:anywhere;background:0 0;border-radius:6px;justify-content:flex-start;width:100%;min-height:40px;padding:9px 10px;font-size:.9rem}.action-menu-popover>[role=menuitem]:hover,.action-menu-popover>[role=menuitem]:focus{background:#edf5fc}.action-menu-popover>[role=menuitem].danger{color:#b94640}.action-menu-popover>[role=menuitem] svg{flex-shrink:0}.student-workspace-actions .action-menu-trigger{color:#fff;background:#4b7f9f}.student-workspace-actions .action-menu-trigger:hover,.student-workspace-actions .action-menu-trigger[aria-expanded=true]{background:#376885}.student-portal .portal-section{min-width:0}.student-portal .portal-section[hidden]{display:none}@media (width<=980px){.screen.student-portal{padding:16px max(12px, env(safe-area-inset-right,0px)) max(20px, env(safe-area-inset-bottom,0px)) max(12px, env(safe-area-inset-left,0px));gap:12px}.student-portal>.detail-header{align-items:flex-start;gap:8px;margin-bottom:0}.student-portal .portal-account-actions{gap:6px;min-width:0}.student-portal .portal-account-actions button{min-height:44px;padding:8px;font-size:.8rem}.student-portal .portal-title{margin:0}.student-portal .portal-title>span{font-size:.75rem}.student-portal .portal-title h1{overflow-wrap:anywhere;margin:3px 0;font-size:1.3rem;line-height:1.25}.student-portal .portal-title p{overflow-wrap:anywhere;margin:0;font-size:.8rem}.portal-mobile-section-selector{min-width:0;display:block}.portal-mobile-section-selector>span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.portal-mobile-section-selector select{color:#294f70;background:#f1f6fa;border:1px solid #d5dfe7;border-radius:10px;width:100%;min-height:48px;font-size:1rem;font-weight:700}.student-portal .student-library-header h2,.student-portal .portal-homeworks>header h2{margin:0;font-size:1.05rem}.student-portal .student-material-grid,.student-portal .request-grid{grid-template-columns:minmax(0,1fr);gap:10px}.student-portal .student-material-preview-card{grid-template-rows:auto auto auto;grid-template-columns:64px minmax(0,1fr);gap:8px 12px;min-width:0;padding:10px}.student-portal .student-material-card-header{grid-area:1/2;align-items:start}.student-portal .student-material-card-header strong{overflow-wrap:anywhere;white-space:normal;font-size:.9rem;line-height:1.35;overflow:visible}.student-portal .portal-resource-card .portal-resource-preview{aspect-ratio:auto;grid-area:1/1/3;width:64px;height:76px;min-height:0;padding:0}.student-portal .portal-resource-preview.is-link>:is(span,small),.student-portal .portal-resource-preview.is-empty>strong{display:none}.student-portal .portal-resource-description{overflow-wrap:anywhere;grid-area:2/2;font-size:.8rem}.student-portal .portal-resource-card>.portal-resource-actions{grid-area:3/1/auto/-1}.student-portal .portal-resource-card[data-resource-type=audio]>:is(.student-material-card-header,.portal-resource-description){grid-area:auto/1/auto/-1}.student-portal .portal-resource-preview.is-audio{grid-area:auto/1/auto/-1;width:100%;height:auto;padding:8px}.student-portal .portal-resource-preview.is-audio>:is(svg,strong){display:none}.student-portal .portal-resource-card[data-resource-type=audio]>.portal-resource-actions{grid-row:auto}.student-portal .portal-resource-actions>a,.student-portal .portal-resource-actions.is-compact>a{white-space:normal;min-height:44px;padding:8px 10px;font-size:.8rem}.student-portal .portal-song-material-groups{grid-template-columns:minmax(0,1fr)}.student-portal .portal-song-material-group li{grid-template-columns:auto minmax(0,1fr)}.student-portal .portal-song-material-role{justify-self:start}.student-portal .portal-song-material-group li>a,.student-portal .portal-song-material-group li>span:not(.portal-song-material-role){overflow-wrap:anywhere;white-space:normal;grid-column:1/-1;justify-content:flex-start;min-height:44px;overflow:visible}.student-portal .portal-song-material-group .portal-resource-actions.is-compact{flex-wrap:wrap;grid-column:1/-1;justify-content:stretch}.student-portal .portal-homework-card{padding:12px}.student-portal .portal-homework-card :is(h3,.saved-note-content),.student-portal .request-card :is(strong,p),.student-portal .portal-song-material-group>header{overflow-wrap:anywhere}.student-portal .portal-homework-materials>div>.portal-homework-material{border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;min-width:0;max-width:100%;padding:6px;font-size:.82rem;display:grid}.student-portal .portal-homework-material>a:first-of-type{overflow-wrap:anywhere;white-space:normal;min-height:44px;overflow:visible}.student-portal .portal-homework-material .portal-homework-download{min-width:44px;min-height:44px}.student-portal .portal-homework-due{flex-wrap:wrap;align-items:flex-start}.student-portal .request-card{flex-direction:column;align-items:stretch;gap:8px;padding:12px}.student-portal .request-card .text-button{min-height:44px}}.manual-editor-workspace [hidden],.editor-panel [hidden]{display:none}@media (width<=980px){.manual-editor-workspace{flex-direction:column;gap:10px;min-width:0;height:auto;min-height:0;display:flex}.manual-editor-mobile-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.manual-editor-mobile-bar>button{min-height:44px;padding:8px 10px;font-size:.8rem}.manual-editor-workspace .manual-editor-library{max-height:none;overflow:visible}.manual-editor-library>header{gap:12px;padding:12px}.manual-editor-library>header>div{min-width:0}.manual-editor-library h1{overflow-wrap:anywhere;font-size:1.2rem}.manual-editor-library .eyebrow{overflow-wrap:anywhere;font-size:.65rem}.manual-editor-library>header>button{flex-shrink:0;min-height:44px;padding:8px 10px}.manual-editor-library .manual-material-list{padding:6px;overflow:visible}.manual-material-list article{align-items:center;min-width:0}.manual-material-list article>button:first-child{gap:9px;min-height:58px;padding:10px 8px}.manual-material-list article .ghost-icon{min-width:44px;min-height:44px}.manual-material-list strong,.manual-material-list small{overflow-wrap:anywhere;white-space:normal;overflow:visible}.manual-material-list strong{font-size:.88rem;line-height:1.3}.manual-material-list small{font-size:.72rem}.manual-material-create input{min-width:0;font-size:16px}.manual-material-create button{min-height:44px}.teacher-editor-screen .manual-editor-workspace .manual-editor-stage,.manual-editor-workspace .manual-editor-stage{min-width:0;min-height:0}.editor-panel:has(.editor-options-toggle){height:max(300px, calc(100dvh - var(--mobile-nav-height,64px) - 110px));gap:8px;min-width:0;padding:0;overflow:visible}.manual-editor-workspace .manual-editor-stage .editor-panel{flex:none}.student-workspace .manual-editor-stage .editor-panel{height:max(300px, calc(100dvh - var(--mobile-nav-height,64px) - 230px))}.editor-panel>.section-title{flex-direction:column;align-items:stretch;gap:8px;min-width:0;display:flex}.editor-panel>.section-title>div:first-child{min-width:0}.editor-panel>.section-title h2{display:none}.editor-panel>.section-title p{color:#383542;overflow-wrap:anywhere;white-space:normal;margin:0;font-size:1rem;font-weight:750;line-height:1.3;overflow:visible}.editor-header-actions{flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:8px}.editor-header-actions>button{min-height:44px;padding:8px 10px;font-size:.8rem}.editor-header-actions>.ghost-icon{flex:0 0 44px;min-width:44px;margin-left:auto}.editor-panel>.editor-save-state{align-self:flex-start;font-size:.7rem;line-height:1.4}.editor-mobile-options{background:#f5f6f9;border:1px solid #e2e2ea;border-radius:9px;flex-wrap:wrap;align-items:stretch;gap:7px;padding:8px;display:flex}.editor-mobile-options>button{min-height:44px;padding:8px 10px;font-size:.8rem}.editor-options-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.editor-panel:has(.editor-mobile-options:not([hidden])){height:auto}.editor-panel .embedded-editor-shell{flex:1 0 180px;min-height:180px}.editor-panel .editor-status,.editor-panel .source-disclaimer{overflow-wrap:anywhere;font-size:.76rem;line-height:1.4}.editor-panel .document-history{padding-bottom:8px;font-size:.78rem}.editor-panel :is(.document-history,.editor-recovery) button{min-height:44px}.editor-panel .document-history ol{width:100%;max-height:none;overflow:visible}.manual-editor-stage .publication-success{grid-template-columns:auto minmax(0,1fr) auto;gap:8px;padding:10px}.manual-editor-stage .publication-success p{display:none}.manual-editor-stage .publication-success a{grid-column:2;min-height:44px;font-size:.8rem}.manual-editor-stage .publication-success button{grid-area:1/3/3;min-width:44px;min-height:44px}}@media (width>=641px) and (width<=980px) and (height<=540px){.editor-panel>.section-title{flex-direction:row;align-items:center}.editor-panel>.section-title>div:first-child{flex:1}.editor-panel .editor-header-actions{flex:none}.student-workspace .manual-editor-stage .editor-panel{height:auto;min-height:0}.editor-panel:has(.editor-options-toggle){height:auto;min-height:0}.editor-panel .embedded-editor-shell{height:max(140px, calc(100dvh - var(--mobile-nav-height,64px) - 205px));flex:none;min-height:140px}}.editor-recovery{border:1px solid #bb7143;border-radius:8px;padding:12px}.editor-recovery button,.editor-history-preview>button{margin:4px 8px 4px 0}.document-history li{flex-wrap:wrap;align-items:center;gap:12px;margin:8px 0;display:flex}.editor-history-preview{padding:12px 0}.editor-history-comparison{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.editor-history-comparison pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#f6f7f8;border-radius:8px;max-height:280px;padding:12px;overflow:auto}@media (width<=600px){.editor-history-comparison{grid-template-columns:1fr}}.student-mobile-search>summary{display:none}@media (width<=980px){.student-detail-shell .student-sidebar{background:#f7f8fa;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;min-height:0;padding:12px;display:grid}.student-detail-shell .student-sidebar .back-button{grid-area:1/1;justify-content:center;width:100%;min-height:44px}.student-detail-shell .student-sidebar-profile{grid-area:1/2;gap:3px;min-width:0;margin:0;padding:0}.student-detail-shell .student-sidebar-profile h1{overflow-wrap:anywhere;font-size:1.1rem;line-height:1.2}.student-detail-shell .student-sidebar-profile p{overflow-wrap:anywhere;font-size:.75rem;line-height:1.35}.student-detail-shell .student-account-invitation{grid-area:2/1/auto/-1;min-width:0;margin:0}.student-detail-shell .student-sidebar:has(.student-account-invitation) .student-sidebar-profile{grid-column:2/-1}.student-sidebar:has(.student-account-invitation) .student-mobile-section{grid-row:3}.student-mobile-section{grid-area:2/1/auto/-1;min-width:0;display:block}.student-mobile-section>span,.student-mobile-access>summary>span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.student-mobile-section select{color:#294f70;background-color:#fff;border:1px solid #d5dce3;border-radius:10px;width:100%;min-height:44px;font-size:1rem;font-weight:700}.student-detail-shell .student-mobile-access{box-shadow:none;z-index:25;background:0 0;border:0;grid-area:1/3;margin:0;padding:0;display:block;position:relative;top:auto}.student-mobile-access>summary{color:#45657d;cursor:pointer;background:#eaf0f5;border-radius:10px;justify-content:center;align-items:center;width:44px;min-height:44px;list-style:none;display:flex}.student-mobile-access>summary::-webkit-details-marker{display:none}.student-mobile-account-panel{max-height:calc(100dvh - 160px - env(safe-area-inset-bottom,0px));overscroll-behavior:contain;background:#fff;border:1px solid #dbe1e7;border-radius:12px;gap:10px;width:min(300px,100vw - 24px);padding:14px;display:grid;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto;box-shadow:0 12px 30px #20364d24}.student-mobile-account-panel p{color:#656273;overflow-wrap:anywhere;margin:0;font-size:.85rem;line-height:1.45}.student-mobile-account-panel .student-mobile-access-actions{grid-template-columns:1fr}.student-detail-shell .student-mobile-account-panel .text-button{white-space:normal;min-height:44px}.student-detail-shell .student-workspace{padding:12px 12px 24px}.student-detail-shell .student-workspace-actions{justify-content:flex-end;margin:0 0 10px;position:static}.student-detail-shell .student-workspace-actions.is-mobile-profile-actions{z-index:5;margin:0;position:absolute;top:12px;right:12px}.student-detail-shell .is-mobile-profile-actions .action-menu-trigger{width:9.25rem;min-height:44px;padding:8px 10px;font-size:.8rem}.student-mobile-search>summary{color:#315e82;cursor:pointer;background:#edf5fb;border-radius:8px;align-content:center;width:fit-content;max-width:calc(100% - 9.25rem - 8px);min-height:44px;padding:8px 10px;font-size:.8rem;list-style-position:inside;display:list-item}.student-mobile-search-panel{padding-top:12px}.student-detail-shell .profile-view-panel>.workspace-header{display:none}.student-detail-shell .workspace-header h1{overflow-wrap:anywhere;font-size:1.3rem;line-height:1.2}.student-detail-shell .profile-view-panel .section-title{margin-bottom:8px}.student-detail-shell .profile-view-panel .section-title p{margin:0;font-size:.85rem;line-height:1.4}.student-detail-shell .unified-music-search .verify-form{grid-template-columns:minmax(0,1fr) auto;gap:6px}.student-detail-shell .unified-music-search .verify-form input{min-width:0;font-size:1rem}.student-detail-shell .unified-music-search .verify-form button{min-height:44px;padding-inline:10px}.student-detail-shell .music-type-filter{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-top:6px;display:grid}.student-detail-shell .music-type-filter button{min-height:44px;padding:5px}.taste-shelf.is-mobile-shelf .taste-mobile-categories{background:#eaf0f5;border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:3px;display:grid}.taste-shelf.is-mobile-shelf .taste-mobile-categories button{color:#5a6a79;background:0 0;border-radius:9px;gap:4px;min-width:0;min-height:44px;padding:6px 3px;font-size:.8rem}.taste-shelf.is-mobile-shelf .taste-mobile-categories button[aria-pressed=true]{color:#294f70;background:#fff;font-weight:800;box-shadow:0 1px 4px #23374918}.taste-shelf.is-mobile-shelf .taste-mobile-categories button span{font-variant-numeric:tabular-nums;font-size:.7rem}.taste-shelf.is-mobile-shelf .taste-row,.taste-shelf.is-mobile-shelf.is-compact-profile .taste-row{box-shadow:none;background:0 0;border:0;min-height:0;display:block}.taste-shelf.is-mobile-shelf .taste-row-tab{display:none}.taste-shelf.is-mobile-shelf .taste-row-content,.taste-shelf.is-mobile-shelf.is-compact-profile .taste-row-content{padding:0}.taste-shelf.is-mobile-shelf .song-album-groups{gap:12px;min-height:0;padding:0;display:grid;overflow:visible}.taste-shelf.is-mobile-shelf .song-album-group{border:0;min-width:0;padding:0;display:block}.taste-shelf.is-mobile-shelf .song-album-group h3{overflow-wrap:anywhere;white-space:normal;max-width:none;margin:0 0 6px;font-size:.8rem;line-height:1.35;overflow:visible}.taste-shelf.is-mobile-shelf .taste-row-discs,.taste-shelf.is-mobile-shelf.is-compact-profile .taste-row-discs{grid-template-columns:minmax(0,1fr);grid-auto-columns:auto;grid-auto-flow:row;gap:8px;width:100%;min-height:0;padding:0;display:grid;overflow:visible}.taste-shelf.is-mobile-shelf .taste-row .disc-item,.taste-shelf.is-mobile-shelf .taste-row .disc-item.album-open{text-align:left;background:#fff;border:1px solid #e3e7eb;border-radius:12px;grid-template-columns:64px minmax(0,1fr);place-items:start stretch;gap:12px;width:100%;min-width:0;max-width:none;padding:10px;display:grid}.taste-shelf.is-mobile-shelf.is-compact-profile .disc-item:hover,.taste-shelf.is-mobile-shelf.is-compact-profile .disc-item:focus-within{transform:none}.taste-shelf.is-mobile-shelf .disc-caption,.taste-shelf.is-mobile-shelf.is-compact-profile .disc-caption{align-items:stretch;gap:3px;min-width:0;max-width:none;margin:0}.taste-shelf.is-mobile-shelf .disc-caption strong,.taste-shelf.is-mobile-shelf.is-compact-profile .disc-caption strong{overflow-wrap:anywhere;font-size:.9rem;line-height:1.35}.taste-shelf.is-mobile-shelf .disc-caption small,.taste-shelf.is-mobile-shelf.is-compact-profile .disc-caption small{overflow-wrap:anywhere;font-size:.78rem;line-height:1.35}.taste-shelf.is-mobile-shelf .disc-mobile-options>summary{color:#315e82;cursor:pointer;align-content:center;width:fit-content;min-height:44px;font-size:.8rem}.taste-shelf.is-mobile-shelf .disc-mobile-options>div{gap:4px;padding-top:4px;display:grid}.taste-shelf.is-mobile-shelf .disc-mobile-options button,.taste-shelf.is-mobile-shelf.is-compact-profile .disc-mobile-options button{color:#315e82;white-space:normal;background:#f1f4f7;border-radius:8px;justify-content:flex-start;min-height:44px;padding:8px 10px;font-size:.8rem}.taste-shelf.is-mobile-shelf .disc-mobile-options .disc-mobile-delete{color:#923535;overflow-wrap:anywhere;background:#faf0f0}.taste-shelf.is-mobile-shelf .empty-taste-row{min-height:80px;padding:16px;font-size:.88rem}.billing-screen .billing-page-heading h1{font-size:1.45rem;line-height:1.2}.billing-screen .billing-period-bar{grid-template-columns:minmax(0,1fr);gap:10px;margin-top:16px}.billing-screen .billing-month-controls{grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;display:grid}.billing-screen .billing-month-controls input[type=month]{width:100%;min-width:0;min-height:44px;font-size:1rem}.billing-screen .billing-period-copy{display:block}.billing-screen .billing-period-copy>strong{display:none}.billing-screen .billing-period-copy>span{color:#747889;font-size:.75rem}.billing-screen .billing-summary{text-align:left;grid-column:auto;justify-content:flex-start;gap:4px 6px;font-size:.8rem;line-height:1.45}.billing-mobile-help{margin:8px 0 14px}.billing-mobile-help>summary,.billing-mobile-card-details>summary{color:#53697c;cursor:pointer;overflow-wrap:anywhere;align-content:center;min-height:44px;font-size:.78rem;font-weight:650;line-height:1.4}.billing-mobile-help .billing-explanation{margin:2px 0 12px;font-size:.8rem;line-height:1.5}.billing-screen .billing-mobile-overview{border-top:0;overflow:visible}.billing-mobile-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));align-items:start;gap:12px;display:grid}.billing-mobile-card{background:#fff;border:1px solid #dfe4ec;border-radius:13px;gap:12px;min-width:0;padding:14px;display:grid}.billing-mobile-card>header{gap:7px;display:grid}.billing-mobile-card h2{color:#303347;overflow-wrap:anywhere;margin:0;font-size:1rem;line-height:1.3}.billing-mobile-card .billing-status{gap:6px;font-size:.76rem}.billing-mobile-card .billing-status i{width:8px;height:8px}.billing-mobile-card .billing-status-cell,.billing-mobile-card .billing-cell-stack{overflow-wrap:anywhere;min-width:0}.billing-mobile-card-amount>.billing-cell-stack>span{color:#263e51;font-size:1.12rem;font-weight:750;line-height:1.3}.billing-mobile-card-amount small{font-size:.74rem;line-height:1.45}.billing-mobile-card .billing-row-action,.billing-mobile-card-action>.billing-cell-stack{white-space:normal;width:100%;min-width:0}.billing-mobile-card-action small{color:#747889;font-size:.74rem}.billing-mobile-card-details{border-top:1px solid #e8ebf0;margin-top:-2px}.billing-mobile-card-details dl{gap:12px;margin:0 0 6px;display:grid}.billing-mobile-card-details dl>div{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:start;gap:12px;display:grid}.billing-mobile-card-details dt{color:#747889;font-size:.74rem;line-height:1.4}.billing-mobile-card-details dd{color:#34394c;overflow-wrap:anywhere;min-width:0;margin:0;font-size:.8rem}.billing-mobile-card .billing-small-link{white-space:normal;min-height:44px;font-size:.78rem}.billing-dialog-backdrop.dialog-backdrop{align-items:stretch;padding:0}.billing-dialog-backdrop .billing-dialog{border:0;border-radius:0;max-width:none;height:100dvh;max-height:100dvh}.billing-dialog .billing-dialog-header{flex:none;align-items:center;gap:10px;padding:10px 14px}.billing-dialog-header>div{min-width:0}.billing-dialog .billing-dialog-header h2{overflow-wrap:anywhere;font-size:1.08rem;line-height:1.3}.billing-dialog .billing-dialog-header>button{flex:0 0 44px;min-height:44px}.billing-dialog .billing-dialog-content{flex:auto;padding:16px;scroll-padding-bottom:88px}.billing-dialog-description{color:#707486;overflow-wrap:anywhere;margin:0 0 16px;font-size:.81rem;line-height:1.45}.billing-dialog :is(button,input,select,textarea){min-width:0;min-height:44px}.billing-dialog :is(input,select,textarea){max-width:100%;font-size:16px}.billing-dialog button{overflow-wrap:anywhere;white-space:normal;flex-shrink:0;font-size:.82rem;line-height:1.4}.billing-dialog :is(.billing-form-grid,.billing-unit-list,.billing-credit,.billing-edit-item),.billing-dialog :is(.billing-credit-actions,.billing-unit-amount-editor),.billing-dialog .billing-unit-option{grid-template-columns:minmax(0,1fr)}.billing-dialog .billing-unit-choice{min-height:44px}.billing-dialog .billing-unit-choice>input{width:20px;min-height:20px}.billing-dialog .billing-unit-option>button,.billing-dialog .billing-unit-amount-editor>button{background:#eef3f7;border-radius:7px;justify-content:flex-start;padding-inline:10px}.billing-dialog .billing-dialog-actions{padding:12px 16px max(12px, env(safe-area-inset-bottom));z-index:2;background:#fff;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:8px;margin:0 -16px -16px;display:grid;position:sticky;bottom:-16px}.billing-dialog-actions>button:only-child{grid-column:1/-1}.billing-dialog .billing-payment-record>header{gap:8px;display:grid}.billing-dialog .billing-payment-record-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;display:grid}.billing-dialog .billing-annul-form>div{grid-template-columns:minmax(0,1fr);display:grid}.billing-dialog :is(.billing-payment-review dd,.billing-payment-review li strong,.billing-payment-total strong){overflow-wrap:anywhere;min-width:0}.billing-dialog .billing-payment-review li{flex-wrap:wrap;gap:6px 12px}.billing-dialog .billing-payment-review li>strong{margin-left:auto}.billing-screen .billing-proration-notice{flex-direction:column;align-items:stretch;margin-bottom:12px}.billing-dialog :is(.billing-payment-total,.billing-proration-notice){flex-direction:column;align-items:stretch}.billing-dialog :is(.billing-global-currency,.billing-field-help,.billing-form-error,.billing-unit-choice,.billing-payment-record,.billing-credit){overflow-wrap:anywhere;min-width:0}}@media (width>=641px) and (width<=980px){.billing-screen .billing-period-bar{grid-template-columns:minmax(280px,1fr) minmax(0,1fr);align-items:center}.billing-screen .billing-summary{grid-column:1/-1}.billing-dialog :is(.billing-form-grid,.billing-unit-list),.billing-dialog .billing-edit-item{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-dialog .billing-edit-item>strong{grid-column:1/-1}}@media (width>=641px) and (width<=980px) and (height<=540px){.billing-dialog .billing-dialog-header{padding-block:6px}.billing-dialog-description{margin-bottom:10px}.billing-screen .billing-proration-notice,.billing-dialog .billing-proration-notice{flex-direction:row;align-items:center;gap:12px}.billing-proration-notice>button{flex:none;width:auto}}.metronome-screen{background:#fdfdfe}.metronome-page-header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.metronome-page-header h1{margin:0 0 8px;font-size:clamp(1.9rem,3.4vw,2.4rem);font-weight:650;line-height:1.05}.metronome-page-header p,.metronome-pattern-panel>header p{color:#6f6b7e;margin:0}.metronome-playing-status{color:#716e7e;align-items:center;gap:8px;font-size:.82rem;font-weight:750;display:flex}.metronome-playing-status>span{background:#aaa7b3;border-radius:50%;width:9px;height:9px}.metronome-playing-status.is-playing{color:#245d83}.metronome-playing-status.is-playing>span{background:#5a9ccc;animation:.9s ease-in-out infinite alternate metronome-status-pulse;box-shadow:0 0 0 5px #edf4f8}.metronome-layout{grid-template-columns:minmax(260px,300px) minmax(0,1fr);grid-template-areas:"library workspace";align-items:start;gap:24px;display:grid}.metronome-presets,.metronome-transport,.metronome-pattern-panel,.metronome-mixer{background:#fff;border:1px solid #e3e2ea;border-radius:13px}.metronome-presets{grid-area:library;gap:16px;padding:18px;display:grid;position:sticky;top:86px}.metronome-screen [hidden]{display:none}.metronome-presets h2,.metronome-pattern-panel h2,.metronome-mixer h2{margin:3px 0 0;font-size:1rem}.metronome-template-library,.metronome-builtin-library{gap:12px;min-width:0;display:grid}.metronome-builtin-library{border-top:1px solid #ecebf0;padding-top:16px}.metronome-template-library>header{justify-content:space-between;align-items:center;gap:10px;display:flex}.metronome-template-add{color:#245d83;background:#edf4f8;border:1px solid #c8deec;min-height:32px;padding:5px 8px;font-size:.72rem;font-weight:800}.metronome-template-add:hover{background:#dcecf6}.metronome-template-state,.metronome-template-load-error p,.metronome-template-action-error{color:#777487;margin:0;font-size:.76rem;line-height:1.4}.metronome-template-load-error{background:#fff6f4;border:1px solid #efd8d3;border-radius:8px;gap:7px;padding:9px;display:grid}.metronome-template-load-error p,.metronome-template-action-error{color:#8a3434}.metronome-template-load-error button{color:#8a3434;background:0 0;justify-self:start;min-height:28px;padding:3px 0;font-size:.74rem}.metronome-template-list{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:7px;display:grid}.metronome-template-item{background:#fff;border:1px solid #e2e1e9;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;display:grid;overflow:hidden}.metronome-template-item:hover,.metronome-template-item.active{background:#edf4f8;border-color:#c8deec}.metronome-template-select{color:#302e3d;text-align:left;background:0 0;border-radius:0;grid-template-columns:auto minmax(0,1fr);justify-content:start;min-width:0;padding:10px 6px 10px 10px;display:grid}.metronome-template-select:hover{background:0 0}.metronome-template-item.active .metronome-template-select{color:#245d83}.metronome-template-select>span{min-width:0;display:grid}.metronome-template-select strong,.metronome-template-select small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.metronome-template-select strong{font-size:.8rem}.metronome-template-select small{color:#777487;font-size:.66rem}.metronome-template-actions{align-content:center;gap:3px;padding:4px 5px 4px 0;display:grid}.metronome-template-actions button{color:#777487;background:0 0;min-height:28px;padding:4px 5px}.metronome-template-actions button:hover{color:#245d83;background:#ddeaf3}.metronome-template-actions button:last-child:hover{color:#a14343;background:#fae8e6}.metronome-save-template{background:#302e3d;width:100%;font-size:.78rem}.metronome-template-form{background:#f8f8fa;border:1px solid #e2e1e9;border-radius:9px;gap:9px;padding:10px;display:grid}.metronome-template-form label{color:#5f5b6d;gap:5px;font-size:.72rem;font-weight:750;display:grid}.metronome-template-form input{min-height:36px;padding:7px 9px;font-size:.8rem}.metronome-template-form>div{justify-content:flex-end;gap:6px;display:flex}.metronome-template-form button{min-height:31px;padding:5px 8px;font-size:.72rem}.metronome-template-form button:first-child{color:#4b4858;background:#ebebf0}.metronome-preset-list{gap:8px;display:grid}.metronome-preset{color:#302e3d;text-align:left;background:#fff;border:1px solid #e2e1e9;grid-template-columns:auto minmax(0,1fr);justify-content:start;padding:11px 12px;display:grid}.metronome-preset:hover,.metronome-preset.active{color:#245d83;background:#edf4f8;border-color:#c8deec}.metronome-preset>span{gap:1px;display:grid}.metronome-preset small{color:#777487;font-size:.72rem}.metronome-workspace{grid-area:workspace;gap:18px;min-width:0;display:grid}.metronome-transport{flex-wrap:wrap;align-items:stretch;gap:10px;padding:12px;display:flex}.metronome-transport-buttons{gap:8px;display:flex}.metronome-play,.metronome-stop,.metronome-icon-button,.metronome-reset,.metronome-preview,.metronome-remove-track{min-height:42px}.metronome-play,.metronome-stop{min-width:52px}.metronome-stop,.metronome-icon-button,.metronome-reset,.metronome-preview,.metronome-remove-track,.metronome-track-actions button,.metronome-add-track{color:#343141;background:#f5f5f8;border:1px solid #e4e3ea}.metronome-stop:hover,.metronome-icon-button:hover,.metronome-reset:hover,.metronome-preview:hover,.metronome-remove-track:hover,.metronome-track-actions button:hover,.metronome-add-track:hover{background:#eaeaf0}.metronome-setting{color:#6e6a7c;border:1px solid #e4e3ea;border-radius:9px;gap:3px;min-width:112px;padding:6px 10px;font-size:.72rem;display:grid}.metronome-setting select,.metronome-setting input{border:0;min-height:24px;padding:0;font-size:.95rem;font-weight:750}.metronome-setting select:focus-visible,.metronome-setting input:focus-visible{outline-offset:1px}.metronome-tempo-setting{min-width:164px}.metronome-tempo-setting>div{grid-template-columns:30px minmax(48px,1fr) 30px;align-items:center;display:grid}.metronome-tempo-setting input{text-align:center}.metronome-icon-button{border:0;min-height:28px;padding:3px}.metronome-volume-setting{border:1px solid #e4e3ea;border-radius:9px;flex:160px;align-items:center;gap:9px;min-width:140px;padding:8px 12px;display:flex}.metronome-screen input[type=range]{accent-color:#5a9ccc;background:0 0;border:0;min-height:24px;padding:0}.metronome-reset{margin-left:auto}.metronome-error,.metronome-inline-status{border-radius:8px;margin:0;padding:10px 12px;font-size:.84rem}.metronome-error{color:#8a3434;background:#fff0ef;border:1px solid #efcfcb}.metronome-inline-status{color:#245d83;background:#f0f7fc;border:1px solid #d4e5f0}.metronome-pattern-panel{min-width:0;padding:18px}.metronome-pattern-panel>header,.metronome-mixer>header{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:16px;display:flex}.metronome-pattern-panel>header p{text-align:right;font-size:.78rem}.metronome-grid-scroll{max-width:100%;padding:3px 3px 10px;overflow-x:auto}.metronome-sequence-grid,.metronome-track-row{grid-template-columns:minmax(150px, 180px) repeat(var(--metronome-step-count), minmax(42px, 1fr));min-width:var(--metronome-grid-min-width);width:100%;display:grid}.metronome-track-row{display:contents}.metronome-grid-corner,.metronome-track-label{z-index:3;background:#fff;border-right:1px solid #e8e7ed;position:sticky;left:0}.metronome-grid-corner{color:#777487;align-items:end;min-height:50px;padding:0 12px 6px 4px;font-size:.72rem;font-weight:750;display:flex}.metronome-step-heading{color:#8a8795;place-items:center;min-height:50px;padding:4px 0;font-size:.68rem;display:grid}.metronome-step-heading strong{color:#393646;font-size:.76rem}.metronome-step-heading.beat-start,.metronome-step.beat-start{border-left:1px solid #dedde5}.metronome-step-heading.bar-start,.metronome-step.bar-start{border-left:2px solid #a8bdcc}.metronome-step-heading.current{color:#245d83;background:#f0f7fc}.metronome-track-label{border-bottom:1px solid #f0eff3;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;min-height:48px;padding:5px 12px 5px 4px;display:grid}.metronome-track-label>span{display:grid}.metronome-track-label strong{font-size:.84rem}.metronome-track-label small{color:#807d8c;font-size:.68rem}.metronome-step{background:#f5f5f8;border:4px solid #fff;border-radius:9px;min-height:48px;padding:0;position:relative}.metronome-step.beat-start{border-left-color:#dedde5}.metronome-step.bar-start{border-left-color:#8fabbf}.metronome-step:hover{background:#e9eef2}.metronome-step>span{border-radius:5px;width:22px;height:22px}.metronome-step.state-normal>span{background:#72a9d0}.metronome-step.state-accent>span{background:#3f7fae;border:4px solid #d9eaf5;box-shadow:0 0 0 2px #3f7fae}.metronome-step.current{background:#dcecf6;box-shadow:inset 0 -3px #5a9ccc}.metronome-step-legend{color:#777487;flex-wrap:wrap;gap:14px;margin-top:10px;font-size:.72rem;display:flex}.metronome-step-legend span{align-items:center;gap:5px;display:inline-flex}.metronome-step-legend i{background:#f0f0f4;border-radius:3px;width:12px;height:12px;display:inline-block}.metronome-step-legend .state-normal{background:#72a9d0}.metronome-step-legend .state-accent{background:#3f7fae;border:2px solid #d9eaf5;box-shadow:0 0 0 1px #3f7fae}.metronome-mixer{padding:18px}.metronome-add-track{font-size:.82rem}.metronome-track-controls{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.metronome-track-control{border:1px solid #e9e8ee;border-radius:10px;gap:10px;padding:12px;display:grid}.metronome-track-control-title{justify-content:space-between;align-items:center;display:flex}.metronome-preview{min-height:32px;padding:5px 7px}.metronome-track-control label{color:#6d697a;gap:4px;font-size:.72rem;display:grid}.metronome-track-control select{min-height:36px;padding-block:6px;font-size:.82rem}.metronome-track-actions{gap:6px;display:flex}.metronome-track-actions button{flex:1;min-height:34px;padding:5px 7px;font-size:.74rem}.metronome-track-actions button.active{color:#245d83;background:#edf4f8;border-color:#bfd9e9}.metronome-track-actions .metronome-remove-track{color:#a14343;flex:none}.metronome-sr-only{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@keyframes metronome-status-pulse{to{opacity:.35;transform:scale(.8)}}@media (width<=1180px){.metronome-layout{grid-template-columns:1fr;grid-template-areas:"library""workspace"}.metronome-presets{position:static}.metronome-preset-list{padding-bottom:4px;display:flex;overflow-x:auto}.metronome-preset{flex:0 0 210px}}@media (width<=980px){.metronome-page-header{align-items:center;gap:12px;margin-bottom:18px}.metronome-page-header h1{margin:0;font-size:1.6rem}.metronome-page-header p{display:none}.metronome-playing-status{flex-shrink:0;font-size:.72rem}.metronome-layout{flex-direction:column;align-items:stretch;gap:12px;display:flex}.metronome-workspace{display:contents}.metronome-transport{order:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px;display:grid}.metronome-transport-buttons{flex-direction:column;grid-area:1/3;gap:5px}.metronome-transport-buttons button{flex:1;min-width:0;min-height:44px;padding:6px}.metronome-setting{min-width:0;padding:6px 8px;font-size:.69rem}.metronome-setting select{width:100%;min-width:0;min-height:34px;font-size:1rem}.metronome-tempo-setting{grid-area:1/1/auto/3;align-content:center;gap:0;padding:8px}.metronome-tempo-setting>label{text-align:center}.metronome-tempo-setting>div{grid-template-columns:40px minmax(0,1fr) 40px}.metronome-tempo-setting input{letter-spacing:-.06em;appearance:textfield;min-width:0;min-height:54px;font-size:2rem}.metronome-tempo-setting input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.metronome-tempo-setting input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.metronome-icon-button{min-height:44px}.metronome-volume-setting{grid-column:1/3;min-width:0;padding:4px 10px}.metronome-volume-setting input[type=range]{min-width:0;min-height:36px}.metronome-reset{min-width:0;min-height:46px;margin:0;padding:6px}.metronome-reset span{display:none}.metronome-pattern-panel>header,.metronome-mixer>header{align-items:flex-start;gap:12px;margin-bottom:12px}.metronome-pattern-panel>header p{text-align:left;flex:1;font-size:.72rem}.metronome-pulse-overview{background:#edf4f8;border:1px solid #d7e6f0;border-radius:13px;order:1;gap:10px;padding:12px;display:grid}.metronome-pulse-caption{color:#44677f;justify-content:space-between;align-items:baseline;gap:10px;font-size:.74rem;display:flex}.metronome-pulse-caption strong{overflow-wrap:anywhere}.metronome-pulse-caption>span{flex-shrink:0}.metronome-pulse-beats{grid-template-columns:repeat(var(--metronome-beats-visible), minmax(0, 1fr));gap:6px;display:grid}.metronome-pulse-beats>span{color:#547087;background:#fff;border:1px solid #cfdeea;border-radius:8px;justify-content:center;align-items:center;min-height:38px;font-size:1rem;font-weight:750;display:flex}.metronome-pulse-beats>.current{color:#fff;background:#356f9a;border-color:#356f9a;box-shadow:0 0 0 2px #c7deed}.metronome-mobile-tools{order:3;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.metronome-mobile-tools button{color:#535061;background:#fff;border:1px solid #e1e2e9;gap:5px;min-height:46px;padding:8px 4px;font-size:.74rem}.metronome-mobile-tools button[aria-expanded=true]{color:#245d83;background:#edf4f8;border-color:#bcd5e7}.metronome-mobile-tools button[aria-expanded=true] svg{transform:rotate(180deg)}.metronome-error,.metronome-inline-status{order:2;padding:8px 10px;font-size:.76rem}.metronome-presets,.metronome-pattern-panel,.metronome-mixer{order:4;padding:12px}.metronome-preset-list{grid-template-columns:repeat(2,minmax(0,1fr));padding:0;display:grid;overflow:visible}.metronome-preset{gap:6px;padding:10px 8px;font-size:.76rem}.metronome-preset>svg{display:none}.metronome-preset small{font-size:.68rem}.metronome-template-list,.metronome-track-controls{grid-template-columns:minmax(0,1fr)}.metronome-template-form input,.metronome-track-control select{font-size:1rem}.metronome-template-select strong,.metronome-template-select small{overflow-wrap:anywhere;white-space:normal;overflow:visible}.metronome-template-actions button,.metronome-template-add,.metronome-template-form button,.metronome-track-actions button,.metronome-preview,.metronome-add-track{min-height:44px}.metronome-template-actions button,.metronome-preview{min-width:44px}.metronome-grid-hint{color:#777487;margin:0 0 8px;font-size:.72rem}.metronome-sequence-grid{grid-template-columns:104px repeat(var(--metronome-step-count), minmax(44px, 1fr));min-width:calc(104px + var(--metronome-step-count) * 44px)}.metronome-track-label{grid-template-columns:minmax(0,1fr);padding-right:6px}.metronome-track-label>svg{display:none}.metronome-track-label strong{overflow-wrap:anywhere;font-size:.75rem}}@media (width>=641px) and (width<=980px) and (height<=540px){.metronome-page-header{margin-bottom:10px}.metronome-layout{grid-template:auto auto/minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:10px;display:grid}.metronome-transport{grid-area:1/1/3;padding:10px}.metronome-transport-buttons{flex-direction:row}.metronome-pulse-overview{grid-area:1/2}.metronome-mobile-tools{grid-area:2/2;align-self:end}.metronome-mobile-tools button{white-space:normal;min-width:0;line-height:1.2}.metronome-mobile-tools button svg{flex-shrink:0}.metronome-error,.metronome-inline-status,.metronome-presets,.metronome-pattern-panel,.metronome-mixer{grid-area:auto/1/auto/-1}}@media (prefers-reduced-motion:reduce){.metronome-playing-status.is-playing>span{animation:none}}@font-face{font-display:swap;font-family:Rio Avenir;font-style:normal;font-weight:400;src:local(Avenir Roman),local(Avenir-Roman),local(Avenir Regular),local(Avenir)}:root{--rio-fallback-artwork-image:url(/static/images/resource-placeholder.png);color:#22202b;background:#fff;font-family:Rio Avenir,Avenir Regular,Avenir,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.45}*{box-sizing:border-box}.sr-only{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}body{min-width:320px;margin:0;overflow-x:hidden}button,input,select,textarea{font:inherit}button,a{cursor:pointer;border:0;border-radius:7px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:8px 12px;text-decoration:none;display:inline-flex}button{color:#fff;background:#242231}button:hover{background:#0f0e17}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-offset:3px;outline:3px solid #6da7cf}button:disabled{cursor:not-allowed;opacity:.55}a{color:#242231;background:0 0;padding:0}input,select,textarea{color:#242231;background:#fff;border:1px solid #d9d8e2;border-radius:7px;width:100%;min-height:40px;padding:9px 11px}textarea{resize:vertical;min-height:104px}.form-field{color:#5e5a70;gap:6px;font-size:.82rem;font-weight:700;display:grid}.lesson-fields{grid-template-columns:minmax(0,1.1fr) minmax(118px,.9fr);gap:8px;display:grid}.app-shell{min-height:100vh}.screen{width:100%;max-width:none;min-height:calc(100vh - 62px);margin:0 auto;padding:28px clamp(18px,3vw,64px) 80px}.detail-screen{max-width:none}.student-detail-shell{grid-template-columns:280px minmax(0,1fr);padding:0;display:grid}.login-screen{justify-content:center;align-items:center;display:flex}.login-panel{grid-template-columns:minmax(240px,.82fr) minmax(280px,400px);gap:26px;width:100%;max-width:820px;display:grid}.login-panel h1{letter-spacing:0;margin:4px 0 14px;font-size:clamp(1.75rem,4vw,2.65rem);font-weight:650;line-height:1.06}.login-intro p{color:#666273;max-width:440px;margin:0;font-size:1.04rem;line-height:1.58}.eyebrow{color:#477a9f;letter-spacing:.09em;text-transform:uppercase;font-size:.76rem;font-weight:850;display:block}.login-form{border:1px solid #e0dfeb;border-radius:8px;gap:16px;padding:22px;display:grid}.auth-form{gap:16px;display:grid}.auth-submit{justify-self:end;width:max-content}.login-form label{color:#4d4a5e;gap:7px;font-size:.95rem;font-weight:700;display:grid}.auth-links{flex-wrap:wrap;gap:8px 14px;display:flex}.login-auth-links{flex-wrap:nowrap;justify-content:space-between;gap:4px;width:100%}.login-auth-links .text-button{white-space:nowrap;flex:none}.screen.auth-screen{isolation:isolate;justify-content:center;align-items:center;min-height:100dvh;padding:clamp(24px,6dvh,80px) clamp(20px,4vw,64px) clamp(88px,12dvh,184px);display:flex;position:relative}.auth-layout{z-index:1;grid-template-columns:minmax(260px,1fr) minmax(340px,420px);align-items:center;gap:clamp(34px,6vw,82px);width:100%;max-width:940px;margin:0 auto;display:grid;position:relative}.auth-intro{max-width:450px}.auth-brand{margin-bottom:14px}.auth-wordmark,.auth-powered-wordmark{color:#111318;font-synthesis:none;letter-spacing:0;text-transform:none;font-family:Rio Avenir,Avenir Regular,Avenir,Helvetica,Arial,sans-serif;font-weight:400;line-height:1}.auth-wordmark{font-size:4.75rem;display:block}.auth-intro p.auth-intro-title{color:#25282e;letter-spacing:-.022em;margin:0 0 22px;font-size:clamp(2rem,3.3vw,2.55rem);font-weight:600;line-height:1.16}.auth-intro p{color:#666273;margin:0;font-size:1.04rem;line-height:1.58}.auth-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;gap:20px;width:100%;padding:32px;display:grid;box-shadow:0 16px 48px -18px #1623301a,0 2px 7px #16233005}.auth-card-header{gap:8px;display:grid}.auth-card-header h1{letter-spacing:-.015em;margin:0;font-size:1.75rem;font-weight:600;line-height:1.12}.auth-card-header p{color:#666273;margin:0}.auth-card .role-selector{background:#f3f4f7;border-radius:8px;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;min-height:44px}.auth-card .role-selector button{white-space:nowrap;min-height:36px;padding:6px 8px;font-size:.875rem;font-weight:600}.auth-card .auth-field input{border-color:#dce0e5;height:44px}.auth-card .password-visibility{top:50%;transform:translateY(-50%)}.auth-card .auth-form{gap:16px}.auth-field{gap:7px;display:grid}.auth-field>label{color:#4d4a5e;font-size:.95rem;font-weight:700}.auth-card .auth-field input[aria-invalid=true]{border-color:#ad3f3f}.auth-field-error{color:#923535;font-size:.82rem;line-height:1.35}.password-input{position:relative}.password-input input{padding-right:48px}.password-visibility{color:#555164;background:0 0;min-height:34px;padding:6px 9px;position:absolute;top:3px;right:3px}.password-visibility:hover{color:#242231;background:#f1f2f6}.auth-form-message{border-radius:8px;margin:0;padding:10px 12px;font-size:.9rem;line-height:1.4}.auth-form-message.is-error{color:#7c2f2f;background:#fff0f0;border:1px solid #ebc5c5}.auth-form-message.is-success{color:#285f3d;background:#edf8f1;border:1px solid #bcdcc8}.auth-help{color:#777487;margin:-5px 0 0;font-size:.82rem}.auth-card .auth-submit{justify-self:stretch;width:100%;min-height:44px;padding:10px;font-size:1rem;font-weight:600}.auth-card .auth-links{width:100%;min-height:22px}.auth-card .login-auth-links{justify-content:space-between;align-items:center;gap:10px}.auth-card .student-access-form .auth-links{justify-content:space-between;margin-top:4px}.auth-card .auth-links .text-button{color:#555164;min-height:36px;padding:3px 0;font-size:.875rem;font-weight:500}.auth-footer{white-space:nowrap;z-index:1;justify-content:center;align-items:baseline;gap:9px;display:flex;position:absolute;bottom:30px;left:clamp(20px,4vw,64px);right:clamp(20px,4vw,64px)}.auth-powered-label{color:#858990;letter-spacing:.12em;font-size:.75rem;font-weight:500}.auth-powered-wordmark{font-size:1.9rem}.rio-auth-field{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.rio-auth-sketch{opacity:.45;width:max(110%,1350px);max-width:none;height:auto;animation:10s linear infinite rio-auth-cycle;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.rio-auth-reveal{stroke-dasharray:100;stroke-dashoffset:100px;animation-duration:10s;animation-timing-function:linear;animation-iteration-count:infinite}@keyframes rio-auth-cycle{0%,87%{opacity:.45}97%,to{opacity:0}}.auth-inline-action{justify-self:start}.auth-state{align-items:stretch;gap:16px;display:grid}.auth-state>p{color:#555164;margin:0;line-height:1.55}.auth-state-icon{color:#477a9f}.auth-state .text-button{justify-self:start}.auth-invitation-email{color:#555164;overflow-wrap:anywhere;background:#f4f6f8;border:1px solid #e0e3e8;border-radius:8px;margin:0;padding:10px 12px}.onboarding-panel{width:min(100%,620px);max-width:620px}.onboarding-panel header{justify-content:space-between;align-items:flex-start;display:flex}.onboarding-panel h1{margin:0;font-size:clamp(2rem,4vw,2.7rem);line-height:1.05}.teacher-country-help{color:#646779;background:#f5f7fa;border:1px solid #e0e4ea;border-radius:8px;margin:-4px 0 0;padding:10px 12px;font-size:.82rem;line-height:1.45}.home-header,.detail-header{justify-content:space-between;align-items:flex-start;gap:22px;margin-bottom:46px;display:flex}.detail-header{margin-bottom:28px}.home-header h1,.student-title h1{letter-spacing:0;margin:0;font-size:clamp(1.75rem,3.4vw,2.35rem);font-weight:650;line-height:1.05}.teacher-greeting{color:#2b2936;text-align:right;flex-direction:column;align-items:flex-end;gap:6px;font-size:.98rem;display:flex}.teacher-greeting strong{color:#706d7e;font-size:1.12rem;font-weight:520}.teacher-greeting a,.text-button{color:#242231;background:0 0;min-height:auto;padding:0;font-size:.95rem}.text-button:hover,.teacher-greeting a:hover,.back-button:hover{color:#5a86a9;background:0 0}.inline-status{color:#5a4513;background:#fff7dc;border:1px solid #f0d789;border-radius:8px;max-width:1100px;margin:14px auto;padding:10px 12px}.notice{color:#5a4513;max-width:1100px;left:50%;top:max(16px, env(safe-area-inset-top));z-index:50;background:#fff7dc;border:1px solid #f0d789;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;width:min(1100px,100vw - 32px);margin:0;padding:10px 12px;transition:opacity .4s,transform .4s;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 14px 38px #2f260d29}.notice.is-leaving{opacity:0;pointer-events:none;transform:translate(-50%,-6px)}.notice span{overflow-wrap:anywhere;min-width:0}.notice .ghost-icon{flex:none}.student-rows{gap:24px;width:100%;max-width:none;display:grid}.student-order-selector{color:#5e5a70;align-items:center;gap:8px;font-size:.82rem;font-weight:700;display:flex}.student-order-selector select{width:auto;min-width:150px}.student-row-item{border:1px solid #0000;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:14px;padding:12px 14px;transition:background-color .14s,border-color .14s,opacity .14s;display:grid}.student-row-item.is-rescheduled{background:#fff9df;border-color:#efd889}.student-row-item.is-archived{background:#f4f4f5;border-color:#e4e4e7}.student-row-item.is-archived .student-row,.student-row-item.is-archived .student-name-line,.student-row-item.is-archived .student-row span{color:#686870!important}.student-archive-label{color:#686870;font-size:.78rem}.student-row-item.is-dragging{opacity:.48}.student-row-item.is-drop-target{border-color:#8bbad8}.student-row-item:has(.student-reorder-handle){grid-template-columns:auto minmax(0,1fr) auto}.student-reorder-handle{color:#777487;cursor:grab;background:0 0;min-height:36px;padding:7px 3px}.student-reorder-handle:hover,.student-reorder-handle:focus-visible{color:#242231;background:#eef1f6}.student-reorder-handle:active{cursor:grabbing}.student-row{color:#111019;text-align:left;background:0 0;justify-content:start;align-items:flex-start;gap:2px;min-height:auto;padding:0;display:grid}.student-row:hover{background:0 0}.student-row strong{font-size:1.28rem;font-weight:620}.student-name-line{align-items:center;gap:6px;display:flex;color:#111019!important}.next-lesson-marker{flex:none;align-items:center;display:inline-flex;color:#477a9f!important}.student-row span{color:#7b788d;font-size:1rem}.student-row-summary{gap:7px;min-width:0;display:grid}.student-week-reschedule{color:#74520d;margin:1px 0 0;font-size:.86rem;font-weight:700}.student-row-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.pending-count,.section-count{color:#74520d;background:#fff0cf;border-radius:999px;width:fit-content;padding:4px 8px;font-size:.74rem;font-weight:800}.delete-icon-button,.danger-action{color:#9a3026;background:#f8e9e7}.delete-icon-button:hover,.danger-action:hover{background:#f2d1cd}.delete-icon-button{border-radius:999px;min-height:36px;padding:8px}.secondary-action{color:#242231;background:#eef1f6}.secondary-action:hover,.secondary-action:focus-visible{color:#242231;background:#e2e7ef}.floating-add{color:#22202b;background:#8bbad8;border-radius:18px;width:86px;height:86px;position:fixed;bottom:30px;right:36px}.floating-add:hover{background:#77acd0}.floating-form{z-index:3;background:#fff;border:1px solid #dedde8;border-radius:8px;gap:10px;width:360px;max-width:calc(100vw - 40px);padding:16px;display:grid;position:fixed;bottom:130px;right:34px;box-shadow:0 18px 48px #201d2e29}.teacher-profile-form{width:430px;top:130px;bottom:auto;right:34px}.floating-form header,.section-title{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.floating-form h2,.section-title h2,.version-list h3{margin:0}.ghost-icon{color:#242231;background:0 0;min-height:auto;padding:4px}.ghost-icon:hover{background:#f0f1f6}.back-button{color:#242231;background:0 0;min-height:auto;padding:0;font-weight:700}.student-title{margin-bottom:16px}.student-sidebar{background:#f5f5f7;border-right:1px solid #e4e5eb;flex-direction:column;min-height:calc(100vh - 62px);padding:22px 14px;display:flex}.student-sidebar .back-button{color:#777487;justify-content:flex-start;width:fit-content}.student-sidebar-profile{gap:6px;margin:22px 0 18px;padding:0 10px;display:grid}.student-sidebar-profile h1{color:#242231;margin:0;font-size:1.35rem;line-height:1.1}.student-sidebar-profile p{color:#7d798d;margin:0}.student-sidebar-nav{gap:7px;display:grid}.student-sidebar-nav button{color:#5f5c6b;background:0 0;border-radius:8px;justify-content:flex-start;width:100%;min-height:40px;padding:8px 10px}.student-sidebar-nav button:hover,.student-sidebar-nav button:focus-visible{color:#242231;background:#e9edf3}.student-sidebar-nav button.active{color:#335f81;background:#e6eef6;font-weight:800}.student-account-invitation{background:#eaf3ff;border:1px solid #c4dcff;border-radius:9px;flex-shrink:0;gap:9px;margin-bottom:18px;padding:13px;display:grid}.student-invite-button{color:#fff;background:#1559df;width:100%;min-height:44px;font-weight:800}.student-invite-button:hover{background:#104ac0}.student-account-invitation p{color:#164785;margin:0;font-size:.85rem;line-height:1.5}.student-account-invitation .inline-error{color:#923535}.student-sidebar-access{border-top:1px solid #e0e2e8;gap:9px;margin:0 0 18px;padding:16px 10px 0;display:grid}.student-sidebar-access span{color:#8b8798;font-size:.82rem;font-weight:800}.student-sidebar-access p{color:#777487;margin:-2px 0 2px;font-size:.76rem;line-height:1.35}.student-sidebar-access .text-button{color:#5f5c6b;justify-content:flex-start;font-size:.9rem}.student-sidebar-access>span,.student-mobile-access>span{align-items:center;gap:6px;display:flex}.student-sidebar-access .inline-error,.account-invitation-dialog .inline-error{color:#923535;margin:0;font-size:.78rem;line-height:1.35}.student-mobile-access{display:none}.account-invitation-backdrop{z-index:70;background:#1c1a257a;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.account-invitation-dialog{background:#fff;border:1px solid #dedde6;border-radius:14px;gap:16px;width:100%;max-width:470px;padding:20px;display:grid;box-shadow:0 22px 64px #1e1b2a3d}.account-invitation-dialog>header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.account-invitation-dialog header span{color:#777487;text-transform:uppercase;font-size:.76rem;font-weight:800}.account-invitation-dialog h2,.account-invitation-dialog p{margin:0}.account-invitation-dialog>p{color:#666273;line-height:1.45}.account-invitation-dialog form{gap:14px;display:grid}.account-invitation-dialog .button-row{justify-content:flex-end}.portal-account-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.student-space-chooser{gap:24px;max-width:920px;margin:0 auto;display:grid}.student-space-chooser .detail-header>div:first-child{gap:5px;display:grid}.student-space-chooser .detail-header span,.student-space-chooser .detail-header p{color:#777487;margin:0}.student-space-chooser h1{margin:0}.student-space-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;display:grid}.student-space-card{color:#302e3d;background:#fff;border:1px solid #dedde6;border-radius:12px;gap:7px;padding:18px;text-decoration:none;display:grid}.student-space-card:hover,.student-space-card:focus-visible{background:#f3f7fa;border-color:#a9c3d6}.student-space-card span,.student-space-card small{color:#666273}.student-workspace{background:#fff;min-height:calc(100vh - 62px);padding:28px clamp(22px,3vw,56px) 80px;position:relative}@media (width>=981px){.student-sidebar{align-self:start;height:calc(100dvh - 62px);min-height:0;position:sticky;top:62px;overflow:hidden}.student-sidebar-nav{min-height:0;overflow-y:auto}.student-sidebar-access{flex-shrink:0}}.student-view-panel{width:100%;min-width:0;max-width:none}.student-view-panel.profile-view-panel{max-width:none}.student-workspace-actions{z-index:10;flex-direction:column;align-items:flex-end;gap:10px;display:flex;position:absolute;top:28px;right:38px}.notes-panel,.calendar-panel{gap:18px;display:grid}.notes-panel{grid-template-columns:minmax(0,1fr);align-items:start}.notes-panel>.workspace-header{grid-column:1;align-items:center}.notes-tabs{background:#f7f8fb;border:1px solid #e0dfea;border-radius:12px;gap:9px;padding:9px}.notes-tabs>header{justify-content:flex-start}.notes-tab-list{background:#e9edf3;border-radius:9px;gap:4px;padding:4px}.notes-tab{min-height:36px}.notes-tab.active,.notes-tab.active:hover{color:#315e82;background:#fff;box-shadow:0 1px 4px #25223124}.notes-tab-context{min-height:28px;padding:0 4px 3px}.note-visibility-callout{background:#f2f7fa;border:1px solid #dceaf2;border-radius:10px;grid-column:1/-1;padding:11px 12px}.homework-due-date{max-width:360px}.student-note-dialog-backdrop{z-index:70;background:#1f1d288a;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.student-note-dialog{background:#fff;border:1px solid #d8d6e2;border-radius:16px;flex-direction:column;width:calc(100vw - 32px);max-width:1120px;height:min(900px,100dvh - 32px);display:flex;overflow:hidden;box-shadow:0 24px 70px #1f1d2847}.student-note-dialog>header{border-bottom:1px solid #e5e3eb;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px;display:flex}.student-note-dialog>header h2{margin:3px 0 0;font-size:1.45rem}.student-note-dialog>form{flex-direction:column;flex:1;min-height:0;display:flex}.student-note-dialog-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:20px;display:grid;overflow-y:auto}.student-note-dialog-fields>.note-content-field,.student-note-dialog-fields>.note-class-association,.student-note-dialog-fields>.note-association-help,.student-note-dialog-fields>.notes-relation-field{grid-column:1/-1}.student-note-dialog-fields .note-content-field textarea{min-height:190px}.student-note-dialog-actions{border-top:1px solid #e5e3eb;justify-content:space-between;align-items:center;gap:16px;margin-top:auto;padding:14px 20px;display:flex}.student-note-dialog-actions>span{color:#777487;font-weight:700}.student-note-dialog-actions>div{gap:8px;margin-left:auto;display:flex}.note-record-badge{color:#315e82;background:#e8f1f7;border-radius:999px;margin-bottom:7px;padding:3px 8px;font-size:.7rem;font-weight:800;display:inline-flex}.note-record-badge.homework{color:#755311;background:#fff2cf}.notes-form{background:#fbfbfd;border:1px solid #e0dfea;border-radius:12px;gap:12px;padding:16px;display:grid}.notes-form-heading{flex-wrap:wrap;align-items:baseline;gap:6px 10px;display:flex}.notes-form-heading strong{color:#302e3d;font-size:1rem}.notes-form-heading span{color:#777487;font-size:.78rem}.notes-form textarea{color:#242231;font:inherit;resize:vertical;background:#fff;border:1px solid #dedde8;border-radius:12px;min-height:150px;padding:16px;line-height:1.45}.note-class-association{background:#f2f7fa;border:1px solid #dceaf2;border-radius:10px;padding:10px}.note-association-help,.saved-note-lesson{color:#6c6878;align-items:center;gap:7px;margin:0;font-size:.82rem;display:flex}.notes-locked-association{color:#735418}.notes-relation-field{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.notes-relation-field legend{color:#5e5a70;padding:0;font-size:.82rem;font-weight:800}.notes-relation-field legend span{color:#8a8696;font-weight:500}.notes-relation-picker{background:#fff;border:1px solid #dedde8;border-radius:9px;min-width:0;overflow:hidden}.notes-relation-picker summary{color:#4f4b60;cursor:pointer;justify-content:space-between;align-items:center;min-height:40px;padding:9px 11px;font-size:.84rem;font-weight:750;list-style:none;display:flex}.notes-relation-picker summary::-webkit-details-marker{display:none}.notes-relation-picker summary:after{color:#477a9f;content:"+";font-size:1.1rem;line-height:1}.notes-relation-picker[open] summary{border-bottom:1px solid #e6e5ed}.notes-relation-picker[open] summary:after{content:"−"}.notes-relation-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:220px;padding:9px;display:grid;overflow-y:auto}.notes-relation-option{color:#4f4b60;text-align:left;background:#fafafd;border:1px solid #e0dfea;justify-content:space-between;align-items:center;width:100%;min-width:0;padding:8px 9px}.notes-relation-option:hover,.notes-relation-option:focus-visible{color:#242231;background:#edf5fb;border-color:#9fc5df}.notes-relation-option.selected,.notes-relation-option.selected:hover{color:#fff;background:#315e82;border-color:#315e82}.notes-relation-option>span{min-width:0;display:grid}.notes-relation-option strong,.notes-relation-option small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.notes-relation-option strong{font-size:.82rem}.notes-relation-option small{color:inherit;opacity:.78;font-size:.72rem}.notes-selected-relations{flex-wrap:wrap;gap:6px;display:flex}.notes-selected-relations button{color:#315e82;background:#e7f1f8;min-height:29px;padding:4px 8px;font-size:.74rem}.notes-selected-relations button:hover{background:#d9eaf5}.notes-relation-empty{color:#777487;background:#f4f4f7;border-radius:8px;margin:0;padding:9px 10px;font-size:.8rem}.notes-actions{justify-content:flex-end;align-items:center;gap:14px;display:flex}.notes-actions span{color:#777487;font-size:.9rem;font-weight:700}.notes-action-buttons,.notes-card-actions{align-items:center;gap:7px;display:flex}.saved-notes{gap:10px;min-width:0;display:grid}.saved-notes>header{justify-content:space-between;align-items:center;display:flex}.saved-notes>header h2{margin:0;font-size:1.05rem}.saved-notes>header span{color:#426783;background:#edf2f6;border-radius:999px;padding:3px 8px;font-size:.78rem;font-weight:800}.saved-note-card{border:1px solid #e0dfea;border-radius:12px;gap:10px;padding:14px;display:grid}.saved-note-card>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.notes-card-actions{flex-shrink:0}.saved-note-card h3,.saved-note-card header p,.saved-note-content{margin:0}.saved-note-card h3{font-size:1rem}.saved-note-card header p{color:#898594;margin-top:3px;font-size:.78rem}.saved-note-content{color:#454250;white-space:pre-wrap;line-height:1.48}.saved-note-lesson{color:#416a87;background:#f2f7fa;border-radius:8px;padding:7px 9px}.notes-card-relations{gap:6px;display:grid}.notes-card-relations>strong{color:#666273;align-items:center;gap:5px;font-size:.76rem;display:flex}.notes-card-relations>div{flex-wrap:wrap;gap:5px;display:flex}.notes-card-relations span{color:#426783;background:#edf2f6;border-radius:999px;padding:4px 8px;font-size:.74rem;font-weight:700}.saved-notes-empty{color:#817d8e;border:1px dashed #d9d7e2;border-radius:12px;align-items:center;gap:10px;padding:18px;display:flex}.saved-notes-empty p{margin:0}.agenda-page-header{align-items:flex-end}.agenda-navigation{flex:none;justify-content:flex-end;align-items:center;gap:12px;min-width:0;display:flex}.agenda-week-switcher{grid-template-columns:38px minmax(210px,auto) 38px;align-items:center;gap:8px;display:grid}.agenda-week-switcher .secondary-action{width:38px;height:38px;padding:8px}.agenda-navigation strong{color:#302e3d;text-align:center;white-space:nowrap;min-width:0;font-size:.95rem}.agenda-current-week{white-space:nowrap;flex:none}.agenda-layout{width:100%;min-width:0}.agenda-calendar{background:#fff;border:1px solid #e4e3eb;border-radius:14px;width:100%;min-width:0;overflow:hidden}.agenda-scroll{overscroll-behavior-inline:contain;max-width:100%;overflow-x:auto}.agenda-week-head,.agenda-grid{width:100%;min-width:860px}.agenda-week-head{--agenda-time-column:88px;grid-template-columns:var(--agenda-time-column) repeat(7, minmax(110px, 1fr));background:#fbfbfd;border-bottom:1px solid #e4e3eb;display:grid}.agenda-week-head>*{border-left:1px solid #ebeaf0;place-items:center;gap:2px;min-height:60px;padding:8px;display:grid}.agenda-week-head>span{color:#777487;border-left:0}.agenda-week-head strong{color:#302e3d;font-size:.81rem}.agenda-week-head div span{color:#777487;font-size:.76rem}.agenda-week-head .today,.agenda-day-track.today{background:#f0f7fc}.agenda-grid{--agenda-time-column:88px;grid-template-columns:var(--agenda-time-column) repeat(7, minmax(110px, 1fr));min-height:var(--agenda-height);display:grid;position:relative}.agenda-hours{color:#777487;min-height:var(--agenda-height);text-align:right;font-size:.7rem;display:grid}.agenda-hour-row,.agenda-time-row{box-sizing:border-box;border-bottom:1px solid #ecebf1;min-height:0;position:relative}.agenda-hour-row{justify-content:flex-end;align-items:flex-start;display:flex}.agenda-hour-row>span{white-space:nowrap;padding:7px 9px 0 2px;line-height:1}.agenda-hour-row.compressed{background:#f7f8fa;align-items:stretch}.agenda-time-row.compressed{background:repeating-linear-gradient(135deg,#ebeaf085 0 5px,#f8f8fa85 5px 10px)}.agenda-early-toggle{color:#5f5c6b;white-space:nowrap;background:0 0;border-radius:0;justify-content:center;align-items:center;gap:3px;width:100%;min-height:0;padding:0 5px;font-size:.66rem;font-weight:750;line-height:1;display:flex}.agenda-early-toggle:hover,.agenda-early-toggle:focus-visible{color:#343141;background:#eceff4}.agenda-hour-row:not(.compressed) .agenda-early-toggle{border-radius:999px;width:24px;height:24px;padding:4px;font-size:0;position:absolute;top:12px;left:4px}.agenda-day-track{min-height:var(--agenda-height);border-left:1px solid #ebeaf0;display:grid;position:relative}.agenda-event{color:#17354a;cursor:grab;text-align:left;touch-action:none;-webkit-user-select:none;user-select:none;z-index:1;background:#e4f1fa;border:1px solid #b9d8eb;border-left:4px solid #377da8;border-radius:7px;grid-template-columns:minmax(0,1fr);place-content:center stretch;gap:2px;padding:5px 6px;display:grid;position:absolute;left:5px;right:5px;overflow:hidden}.agenda-event:hover,.agenda-event:focus-visible{background:#d6eaf7}.agenda-event span,.agenda-event strong{white-space:nowrap;width:100%;min-width:0;display:block;overflow:hidden}.agenda-event span{font-size:.68rem;line-height:1.1}.agenda-event strong{text-overflow:ellipsis;font-size:.78rem;line-height:1.1}.agenda-event.has-notes{padding-right:25px}.agenda-event-note-indicator{color:inherit;opacity:.78;justify-content:center;align-items:center;position:absolute;top:50%;right:5px;transform:translateY(-50%);width:14px!important;display:flex!important;overflow:visible!important}.agenda-event.compact{align-content:center;align-items:center;gap:4px;min-height:0;padding:1px 5px;display:flex;overflow:visible}.agenda-event.compact.has-notes{padding-right:23px}.agenda-event.compact:before{content:"";height:44px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.agenda-event.compact span{text-overflow:ellipsis;flex:0 46%;width:auto;max-width:46%;font-size:.62rem}.agenda-event.compact strong{flex:auto;width:auto;font-size:.7rem}.agenda-event.compact .agenda-event-note-indicator{flex:none;max-width:none;width:14px!important}.agenda-event.continuation{cursor:pointer;touch-action:manipulation}.agenda-event.dragging{cursor:grabbing;opacity:.82;z-index:4}.agenda-event.rescheduled{color:#634400;background:#f6ecd3;border-color:#d19a2b}.agenda-event.cancelled{color:#746a72;opacity:.75;background:#f4f1f3;border-color:#a1969e;text-decoration:line-through}.agenda-state{color:#777487;justify-content:center;align-items:center;gap:8px;min-height:96px;padding:20px;display:flex}.agenda-editor{z-index:30;background:#fff;border:1px solid #d9d8e2;border-radius:14px;gap:14px;width:min(380px,100vw - 36px);padding:18px;display:grid;position:fixed;top:28px;right:28px;box-shadow:0 18px 50px #25223129}.agenda-note-window{z-index:36;background:#fff;border:1px solid #d7dbe2;border-radius:13px;gap:0;width:min(360px,100vw - 16px);max-height:calc(100dvh - 16px);display:grid;position:fixed;overflow-y:auto;box-shadow:0 18px 48px #25223133}.agenda-note-window.dragging{box-shadow:0 22px 56px #25223142}.agenda-note-window-handle{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:#f7f9fb;border-bottom:1px solid #e4e7eb;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;padding:11px 12px;display:grid}.agenda-note-window.dragging .agenda-note-window-handle{cursor:grabbing}.agenda-note-window-handle div{min-width:0}.agenda-note-window-handle span{color:#71808b;letter-spacing:.04em;text-transform:uppercase;font-size:.66rem;font-weight:800;line-height:1.2;display:block}.agenda-note-window-handle h2{color:#242c33;text-overflow:ellipsis;white-space:nowrap;margin:2px 0 0;font-size:1.02rem;overflow:hidden}.agenda-note-drag-icon{color:#9aa4ac}.agenda-note-window-content{gap:9px;padding:14px;display:grid}.agenda-note-date{color:#8a9299;font-size:.66rem;line-height:1.25}.agenda-note-title{color:#303740;font-size:.86rem}.agenda-note-window-content>p{color:#525c65;overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:.84rem;line-height:1.48}.agenda-note-relations{gap:6px;display:grid}.agenda-note-relations h3{color:#65717b;align-items:center;gap:5px;margin:0;font-size:.72rem;display:flex}.agenda-note-relations ul{flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none;display:flex}.agenda-note-relations li{color:#385f7b;background:#edf3f7;border-radius:999px;gap:1px;max-width:100%;padding:4px 8px;font-size:.72rem;font-weight:750;display:grid}.agenda-note-relations li small{color:#668196;text-overflow:ellipsis;white-space:nowrap;font-size:.62rem;font-weight:600;overflow:hidden}.agenda-note-empty{color:#707983;align-items:flex-start;gap:9px;padding:16px 14px;display:flex}.agenda-note-empty svg{flex:none;margin-top:1px}.agenda-note-empty p{margin:0;font-size:.82rem;line-height:1.4}.agenda-note-window-actions{border-top:1px solid #e7e9ed;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;padding:10px 12px;display:flex}.agenda-note-window-actions button{min-height:32px;padding:6px 9px;font-size:.76rem}.agenda-editor>header{justify-content:space-between;align-items:start;display:flex}.agenda-editor header span,.agenda-editor header p{color:#777487;margin:0;font-size:.8rem}.agenda-editor h2{color:#242231;margin:2px 0;font-size:1.2rem}.agenda-editor form{gap:10px;display:grid}.agenda-editor-modes{grid-template-columns:1fr 1.2fr 1fr;gap:5px;display:grid}.agenda-editor-modes button{color:#5e5a70;background:#f0f0f4;min-height:34px;padding:5px;font-size:.72rem}.agenda-editor-modes button.active{color:#fff;background:#302e3d}.agenda-editor-modes button.danger{color:#a14343}.agenda-editor-modes button.active.danger{color:#fff;background:#a14343}.agenda-class-notes{border-top:1px solid #e3e1e9;gap:8px;padding-top:12px;display:grid}.agenda-class-notes>header{justify-content:space-between;align-items:center;display:flex}.agenda-class-notes>header strong{align-items:center;gap:6px;display:flex}.agenda-class-notes>header span{color:#426783;background:#edf2f6;border-radius:999px;padding:2px 7px;font-size:.72rem;font-weight:800}.agenda-class-notes article{background:#f6f8fa;border-radius:8px;gap:3px;padding:8px;display:grid}.agenda-class-notes article strong{font-size:.84rem}.agenda-class-notes article p{color:#666273;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.78rem;line-height:1.35;display:-webkit-box;overflow:hidden}.agenda-class-notes .text-button{justify-content:flex-start}.agenda-cancel-copy{color:#777487;margin:0;font-size:.86rem}.agenda-conflict{color:#654300;background:#fff4dd;border:1px solid #edca80;border-radius:8px;gap:5px;padding:10px;font-size:.8rem;display:grid}.agenda-revert{color:#5f5c6b;justify-content:start;font-size:.82rem}.teacher-primary-bar{z-index:25;background:#fffffff5;border-bottom:1px solid #e5e4eb;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px;min-height:62px;padding:8px clamp(18px,3vw,64px);display:grid;position:sticky;top:0}.rio-wordmark{color:#242231;background:0 0;min-height:36px;padding:4px 0;font-size:1.28rem;font-weight:850}.rio-wordmark:hover,.rio-wordmark:focus-visible{color:#242231;background:0 0}.teacher-primary-bar nav{gap:6px;display:flex}.teacher-primary-bar nav button,.teacher-nav-logout{color:#676475;background:0 0;font-weight:750}.teacher-primary-bar nav button.active{color:#245d83;background:#edf4f8}.teacher-nav-logout{justify-self:end}.profile-page-header{margin-bottom:24px}.profile-page-header h1{margin:0 0 8px;font-size:clamp(1.75rem,3.4vw,2.35rem);line-height:1.05}.profile-page-header p{color:#777487;margin:0}.teacher-profile-page-form,.student-edit-form{border:1px solid #e1e0e9;border-radius:12px;gap:22px;max-width:620px;padding:22px;display:grid}.teacher-profile-page-form .profile-save-button,.student-edit-form>button[type=submit]{justify-self:end}.teacher-profile-page-form .form-field small{color:#777487;font-size:.78rem;font-weight:500;line-height:1.45}.teacher-country-change{color:#66501d;background:#fff8e7;border:1px solid #ead7a4;border-radius:10px;gap:5px;padding:12px 14px;font-size:.84rem;line-height:1.45;display:grid}.dialog-backdrop{z-index:100;background:#18162061;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.confirm-dialog{background:#fff;border:1px solid #dedde6;border-radius:14px;gap:14px;width:100%;max-width:460px;padding:18px;display:grid;box-shadow:0 22px 60px #19172240}.confirm-dialog header,.confirm-dialog footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.confirm-dialog h2,.confirm-dialog p{margin:0}.confirm-dialog p{color:#676475;line-height:1.55}.confirm-dialog footer{justify-content:flex-end}.first-lesson-dialog{gap:18px;max-width:520px}.first-lesson-options{border:0;gap:10px;margin:0;padding:0;display:grid}.first-lesson-option{cursor:pointer;border:1px solid #d9d8e3;border-radius:10px;align-items:center;gap:12px;min-height:52px;padding:12px 14px;font-weight:650;display:flex}.first-lesson-option:has(input:checked){background:#eef6fb;border-color:#6da7cf;box-shadow:0 0 0 1px #6da7cf}.first-lesson-option input{appearance:none;background:#fff;border:2px solid #858293;border-radius:3px;flex:0 0 20px;place-content:center;width:20px;height:20px;min-height:20px;margin:0;padding:0;display:grid}.first-lesson-option input:before{clip-path:polygon(14% 44%,0 59%,39% 100%,100% 20%,84% 7%,38% 67%);content:"";background:#397da8;width:12px;height:12px;transform:scale(0)}.first-lesson-option input:checked{border-color:#397da8}.first-lesson-option input:checked:before{transform:scale(1)}.first-lesson-option input:focus-visible{outline-offset:3px;outline:3px solid #397da84d}.first-lesson-status{align-items:center;gap:8px;font-size:.9rem;display:flex}.student-edit-form small{color:#6d6a79;line-height:1.45}.danger-action{color:#fff;background:#a43d3d}.agenda-event.selected{z-index:3;box-shadow:0 0 0 3px #6da7cf}.agenda-undo{color:#fff;z-index:45;background:#252330;border-radius:10px;align-items:center;gap:18px;padding:11px 14px;display:flex;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 16px 40px #1c1a2438}.agenda-undo button{color:#252330;background:#fff;min-height:32px;padding:5px 9px}.role-selector{background:#f1f2f6;border-radius:9px;grid-template-columns:1fr 1.45fr;gap:4px;padding:4px;display:grid}.role-selector button{color:#666273;background:0 0;font-size:.88rem}.role-selector button.active{color:#242231;background:#fff;box-shadow:0 2px 8px #23212e17}.student-access-form p{color:#777487;text-align:center;margin:-4px 0 0;font-size:.82rem}.student-edit-panel{gap:18px;max-width:760px;display:grid}.student-edit-panel .workspace-header{margin-bottom:0}.student-edit-panel .workspace-header p{color:#777487;margin:8px 0 0}.workspace-header{margin-bottom:16px;padding-right:0}.workspace-header h1{letter-spacing:0;margin:0;font-size:clamp(1.85rem,3vw,2.35rem);line-height:1.05}.title-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.student-title p{color:#7b788d;margin:6px 0 0;font-size:1rem}.taste-shelf{--disc-gap:clamp(10px, 1.2vw, 16px);--disc-size:clamp(84px, 6vw, 104px);--visible-disc-count:5;gap:10px;width:100%;margin:6px 0 18px;padding:0;display:grid;position:relative}.preferences-section{width:100%;max-width:none;margin-top:12px}.taste-row{background:#fbfbfd;border:1px solid #e7e6ef;border-radius:14px;grid-template-columns:minmax(154px,190px) minmax(0,1fr);gap:0;width:100%;min-height:148px;display:grid;overflow:visible;box-shadow:0 12px 30px #2422310f}.taste-row-tab{background:linear-gradient(#fffffff5,#f7f8fbf0);border-right:1px solid #e7e6ef;border-radius:14px 0 0 14px;align-content:start;gap:6px;padding:16px 18px;display:grid}.taste-row-tab h2{color:#302e3d;margin:0;font-size:1rem;font-weight:800}.taste-row-tab p{color:#7b788d;margin:0;font-size:.82rem;font-weight:650;line-height:1.38}.taste-row-content{min-width:0;padding:13px 18px 6px;overflow:visible}.taste-row-collections,.taste-interest-collection{min-width:0}.taste-row-discs{grid-auto-columns:calc((100% - (var(--visible-disc-count) - 1) * var(--disc-gap)) / var(--visible-disc-count));align-items:flex-start;gap:var(--disc-gap);scrollbar-gutter:stable;grid-auto-flow:column;width:100%;min-height:112px;padding:2px 5px 10px;display:grid;overflow:auto hidden}.taste-row-discs::-webkit-scrollbar{height:7px}.taste-row-discs::-webkit-scrollbar-thumb{background:#77748447;border-radius:999px}.taste-row-discs::-webkit-scrollbar-track{background:0 0}.taste-row-discs.is-empty{align-items:center;min-height:56px;padding-bottom:8px}.taste-shelf.is-compact-profile{--disc-gap:clamp(7px, .9vw, 11px);--disc-size:clamp(72px, 5vw, 88px);gap:8px}.taste-shelf.is-compact-profile .taste-row{grid-template-columns:minmax(138px,166px) minmax(0,1fr);min-height:126px}.taste-shelf.is-compact-profile .taste-row-tab{gap:4px;padding:13px 15px}.taste-shelf.is-compact-profile .taste-row-tab p{font-size:.76rem;line-height:1.3}.taste-shelf.is-compact-profile .taste-row-content{padding:10px 12px 4px}.taste-shelf.is-compact-profile .taste-row-discs{min-height:101px;padding:1px 3px 7px}.taste-shelf.is-compact-profile .disc-item{transition:transform .16s;animation:.18s both taste-disc-in}.taste-shelf.is-compact-profile .disc-item:hover,.taste-shelf.is-compact-profile .disc-item:focus-within{transform:translateY(-2px)}.taste-shelf.is-compact-profile .disc-caption{gap:2px;margin-top:4px}.taste-shelf.is-compact-profile .disc-caption strong{font-size:.76rem}.taste-shelf.is-compact-profile .disc-caption small{font-size:.66rem}.taste-shelf.is-compact-profile .disc-generate-button,.taste-shelf.is-compact-profile .disc-recommendation-button{padding-block:3px;font-size:.64rem}.song-album-groups{scrollbar-gutter:stable;gap:12px;min-height:105px;padding:1px 4px 7px;display:flex;overflow:auto hidden}.song-album-group{border-right:1px solid #e7e6ef;flex:none;gap:5px;padding-right:12px;display:grid}.song-album-group:last-child{border-right:0;padding-right:0}.song-album-group h3{color:#6f6b7d;max-width:calc(var(--disc-size) * 2 + var(--disc-gap));text-overflow:ellipsis;white-space:nowrap;margin:0 3px;font-size:.68rem;font-weight:800;overflow:hidden}.song-album-group .taste-row-discs{gap:var(--disc-gap);width:auto;min-height:0;padding:0 3px 4px;display:flex;overflow:visible}.song-album-group .disc-item{flex:0 0 var(--disc-size);width:var(--disc-size)}.disc-item{text-align:center;width:min(100%, var(--disc-size));justify-self:center;position:relative}.disc-item.has-preview{cursor:pointer}.disc-item:focus{outline:none}.disc-interaction{background:0 0;border-radius:50%;width:100%;min-height:0;padding:0;display:block}.disc-interaction:hover,.disc-interaction:focus-visible{background:0 0}.disc-item.album-open{width:min(100%, var(--disc-size));z-index:auto}.disc-frame{z-index:2;width:100%;position:relative}.disc{aspect-ratio:1;box-shadow:none;background:0 0;border:0;border-radius:50%;width:100%;position:relative;overflow:hidden}.disc:after{aspect-ratio:1;content:"";pointer-events:none;z-index:1;background:radial-gradient(circle,#fff 0 38%,#f7f8fb 39% 62%,#ffffffeb 63% 100%);border-radius:50%;width:22%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:inset 0 0 7px #24223129,0 0 5px #ffffffd9}.disc-item.has-spun .disc{animation:8s linear infinite paused disc-spin}.disc-item.has-spun.is-playing .disc{animation-play-state:running}.disc img,.disc-placeholder{object-fit:cover;width:100%;height:100%;transition:filter .26s,opacity .26s}.disc img{filter:grayscale()}.disc img[data-fallback-artwork=true]{filter:none}.disc-item:hover .disc img,.disc-item:focus-within .disc img,.disc-item.is-playing .disc img,.disc-item.is-preview-pending .disc img{filter:grayscale(0)}.disc-placeholder{background-image:var(--rio-fallback-artwork-image);color:#183b64;background-position:50%;background-size:cover;justify-content:center;align-items:center;display:flex}.disc-delete-button{color:#9a3026;opacity:1;z-index:5;background:#f8e9e7f2;border-radius:999px;justify-content:center;align-items:center;width:26px;height:26px;min-height:0;padding:0;transition:opacity .18s;display:flex;position:absolute;top:6px;right:6px;transform:none}.disc-item:hover .disc-delete-button,.disc-item:focus-within .disc-delete-button{opacity:1}.disc-caption{flex-direction:column;align-items:center;gap:3px;max-width:95%;margin:6px auto 0;display:flex}.disc-caption strong{color:#5f5c69;font-size:.8rem;font-weight:620;line-height:1.14}.disc-caption small{color:#858193;font-size:.7rem;line-height:1.12}.disc-generate-button{color:#5f5c6b;opacity:1;background:0 0;border-radius:999px;min-height:0;padding:4px 8px;font-size:.68rem;transition:opacity .18s,transform .18s,background .18s;transform:none}.disc-item:hover .disc-generate-button,.disc-item:focus-within .disc-generate-button{opacity:1;transform:translateY(0)}.disc-generate-button:hover,.disc-generate-button:focus-visible{color:#242231;background:#eef1f6}.album-track-popover{text-align:left;z-index:40;background:#fffffffa;border:1px solid #e1e1ea;border-radius:12px;flex-direction:column;width:min(580px,100vw - 36px);max-height:calc(100dvh - 32px);margin:0;padding:12px;display:flex;position:fixed;top:78px;left:auto;right:clamp(18px,3vw,58px);overflow:hidden;box-shadow:0 20px 58px #221f2d33}.album-track-popover>*,.context-recommendations>*{z-index:1;position:relative}.album-track-popover.opens-right,.context-recommendations.opens-right{transform-origin:left var(--popover-arrow-top);animation:.25s both taste-popover-in-right}.album-track-popover.opens-left,.context-recommendations.opens-left{transform-origin:right var(--popover-arrow-top);animation:.25s both taste-popover-in-left}.album-track-popover.opens-sheet{transform-origin:bottom;width:auto;animation:.22s both taste-sheet-in;inset:auto 16px 16px}.album-track-popover.opens-sheet:before{display:none}.album-track-popover:before,.context-recommendations:before{content:"";height:12px;top:calc(var(--popover-arrow-top) - 6px);z-index:0;background:#fff;border:1px solid #dedde7;width:12px;position:absolute;transform:rotate(45deg)}.album-track-popover.opens-right:before,.context-recommendations.opens-right:before{left:-7px}.album-track-popover.opens-left:before,.context-recommendations.opens-left:before{right:-7px}.album-track-header{color:#444250;justify-content:space-between;align-items:center;margin-bottom:7px;font-size:.78rem;font-weight:800;display:flex}.album-track-header .ghost-icon{margin:-4px -4px -4px 0}.album-track-list{overscroll-behavior:contain;flex:auto;gap:2px;max-height:min(318px,100dvh - 96px);padding-right:2px;display:grid;overflow-y:auto}.album-track-entry{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:38px;display:grid}.album-track-button{color:#242231;align-items:center;gap:6px;justify-content:initial;text-align:left;background:0 0;border-radius:6px;grid-template-columns:20px minmax(0,1fr) 22px;width:100%;min-height:28px;padding:4px 6px;display:grid}.album-track-generate{color:#5f5c6b;white-space:nowrap;background:0 0;border-radius:999px;min-height:26px;padding:3px 7px;font-size:.68rem}.album-track-actions{justify-content:flex-end;align-items:center;gap:5px;display:flex}.album-track-save{color:#315e82;white-space:nowrap;background:0 0;min-height:26px;padding:3px 7px;font-size:.68rem}.disc-recommendation-button{color:#477a9f;background:0 0;min-height:0;padding:3px 7px;font-size:.67rem}.context-recommendations{z-index:40;background:#fff;border:1px solid #dedde7;border-radius:10px;gap:7px;width:min(400px,100vw - 36px);min-width:0;padding:12px;display:grid;position:fixed;top:78px;left:auto;right:clamp(18px,3vw,58px);box-shadow:0 14px 38px #221f2d24}.context-recommendations-header{justify-content:space-between;align-items:center;display:flex}.context-recommendations-header>strong{color:#4b4856;font-size:.76rem}.context-recommendations-header .ghost-icon{margin:-4px -4px -4px 0}.context-recommendations>p{color:#777487;align-items:center;gap:6px;margin:2px 0;font-size:.74rem;display:flex}.context-recommendations article{grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:7px;display:grid}.context-recommendations article>img{aspect-ratio:1;object-fit:cover;border-radius:5px;width:34px}.context-recommendations article>div:not(.recommendation-actions){min-width:0;display:grid}.context-recommendations article strong,.context-recommendations article small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.context-recommendations article strong{font-size:.74rem}.context-recommendations article small{color:#817e8d;font-size:.66rem}.recommendation-actions{gap:4px;display:flex}.recommendation-actions button{min-height:27px;padding:4px 6px;font-size:.65rem}.album-track-generate:hover,.album-track-generate:focus-visible{color:#242231;background:#eef1f6}.album-track-button:focus{outline:none}.album-track-button:hover,.album-track-button:focus-visible{color:#242231;background:#f6f7fa}.album-track-button:disabled{cursor:default}.album-track-play{color:#5d6070;opacity:0;background:#eef1f6;border-radius:999px;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.album-track-button.is-playing .album-track-play{color:#315e82;opacity:1;background:#e1edf5;animation:1s ease-in-out infinite alternate preview-pulse}.album-track-button:disabled .album-track-play{opacity:0}.album-track-number{color:#878493;text-align:right;font-size:.72rem;font-weight:800}.album-track-name{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.album-track-state{color:#777487;align-items:center;gap:6px;min-height:34px;font-size:.78rem;display:flex}.empty-taste-row{color:#898699;align-items:center;min-height:22px;font-size:.82rem;display:flex}@keyframes taste-popover-in-right{0%{opacity:0;transform:translate(-8px)scale(.985)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes taste-popover-in-left{0%{opacity:0;transform:translate(8px)scale(.985)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes taste-sheet-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes taste-disc-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.album-track-popover,.context-recommendations{animation:none}.taste-shelf.is-compact-profile .disc-item,.taste-shelf.is-compact-profile .disc img,.taste-shelf.is-compact-profile .disc-placeholder{transition:none;animation:none}}.instrument-editor{gap:10px;display:grid}.instrument-list,.inline-add-form{flex-wrap:wrap;gap:8px;display:flex}.instrument-chip{color:#4d5060;background:#eef1f6;border-radius:999px;align-items:center;gap:4px;padding:5px 8px 5px 10px;font-size:.9rem;font-weight:700;display:inline-flex}.instrument-chip button{color:#5e6170;background:0 0;min-height:0;padding:2px}.teacher-teaching-areas-field{border:0;gap:10px;min-width:0;margin:0;padding:0;display:grid}.teacher-teaching-areas-field legend{color:#4d4a5e;margin-bottom:8px;padding:0;font-size:.95rem;font-weight:700}.teaching-area-hint{color:#777487;margin:-6px 0 0;font-size:.82rem}.teaching-area-options{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:8px;display:grid}.teaching-area-option{color:#555164;text-align:left;white-space:normal;background:#fafafd;border:1px solid #d9d8e2;justify-content:flex-start;width:100%;min-height:42px;padding:8px 10px;line-height:1.25}.teaching-area-option:hover,.teaching-area-option:focus-visible{color:#242231;background:#edf5fb;border-color:#9fc5df}.teaching-area-option.selected,.teaching-area-option.selected:hover{color:#fff;background:#315e82;border-color:#315e82}.teaching-area-other-panel,.teaching-area-other-inputs{gap:8px;display:grid}.teaching-area-other-entry{min-width:0}.teaching-area-disclaimer{color:#686576;background:#f6f7fa;border-left:3px solid #9fc5df;margin:0;padding:7px 9px;font-size:.76rem;line-height:1.35}.teaching-area-error{color:#923535;margin:0;font-size:.82rem;line-height:1.35}.muted-inline{color:#898699;font-size:.92rem}.select-empty{color:#898699;border:1px solid #d9d8e4;border-radius:8px;align-items:center;min-height:42px;padding:0 12px;display:flex}.instrument-select{gap:5px;min-width:0;display:grid}.instrument-select select{min-width:0;max-width:100%}.instrument-select select.instrument-select-historical,.instrument-select-history-option{color:#5a4513;background:#fff7dc;border-color:#f0d789}.instrument-select-history-note{color:#5a4513;background:#fff7dc;border:1px solid #f0d789;border-radius:6px;padding:6px 8px;font-size:.74rem;font-weight:500;line-height:1.3}.secondary-section{margin-top:8px;padding-top:4px}.section-title{margin-bottom:10px}.section-title p{color:#4d4a5c;max-width:760px;margin:0;font-size:.9rem;line-height:1.34}.material-card p,.result-card p{color:#747184;margin:4px 0 0}.verify-form{grid-template-columns:130px minmax(240px,1fr) minmax(200px,.8fr) 120px;gap:10px;max-width:1000px;display:grid}.result-grid{grid-template-columns:1fr;gap:8px;max-width:760px;margin-top:10px;display:grid}.result-card{background:#fafafd;border:1px solid #e0dfe8;border-radius:8px;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:70px;padding:8px 10px;display:grid}.result-card img{aspect-ratio:1;object-fit:cover;border-radius:7px;width:52px}.result-card h3,.material-card h4{margin:1px 0}.result-card h3{font-size:1rem;line-height:1.12}.result-card p{font-size:.82rem;line-height:1.2}.result-card button{min-height:34px;padding:7px 10px}.source-pill,.origin{border-radius:999px;width:fit-content;padding:4px 8px;font-size:.72rem;font-weight:800;display:inline-flex}.source-pill{color:#616575;background:#eef1f6}.origin.teacher{color:#315e82;background:#e6f0f7}.origin.student{color:#72502a;background:#f3e9dc}.unified-music-search .verify-form{grid-template-columns:minmax(260px,1fr) auto;width:100%;max-width:none}.music-type-filter{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.music-type-filter button{color:#656273;background:#f2f3f7;min-height:32px;padding:5px 10px;font-size:.76rem}.music-type-filter button.active{color:#fff;background:#315e82}.inferred-music-results{gap:8px;margin-top:18px;display:grid}.search-alternatives-toggle{color:#5f5c6d;justify-self:start}.music-search-loading-shell{background:linear-gradient(90deg,#f3f4f7,#e9ebf0,#f3f4f7);border-radius:12px;height:86px;margin-top:18px;animation:1.2s ease-in-out infinite alternate music-search-loading}.did-you-mean{color:#5f5c6d;margin:10px 0}.did-you-mean button{color:#2e6d98;background:0 0;min-height:auto;padding:0 2px;font-weight:800;text-decoration:underline}.grouped-music-results{gap:22px;margin-top:18px;display:grid}.grouped-music-results>section{gap:8px;display:grid}.grouped-music-results>section>h3{color:#4e4a5c;letter-spacing:.06em;text-transform:uppercase;margin:0 0 2px;font-size:.82rem}.unified-result-card{grid-template-columns:58px minmax(0,1fr) auto;width:100%;min-height:86px}.unified-result-card>img{width:58px}.result-card-copy{min-width:0}.result-card-actions{flex-wrap:wrap;justify-content:flex-end;align-items:stretch;gap:7px;display:flex}@keyframes music-search-loading{0%{opacity:.62}to{opacity:1}}.preview-credit{flex-wrap:wrap;align-items:center;gap:10px;margin-top:7px;display:flex}.preview-credit .preview-button{color:#245d83;background:#e9f2f8;min-height:30px;padding:4px 8px}.preview-credit a{color:#777487;gap:3px;min-height:24px;font-size:.72rem}.version-toggle{color:#676475;justify-content:flex-start;min-height:28px;margin-top:4px;padding:2px 0;font-size:.76rem}.song-version-list{border-left:2px solid #dedde6;gap:4px;margin-top:4px;padding-left:8px;display:grid}.song-version-list button{color:#3e3b49;text-align:left;background:0 0;grid-template-columns:auto minmax(0,1fr);justify-content:start;display:grid}.song-version-list span{display:grid}.song-version-list small{color:#7a7788}.chord-alternatives{background:#f3f7fa;border:1px solid #d7e6ef;border-radius:10px;gap:9px;margin-top:12px;padding:12px;display:grid}.chord-alternatives>div{gap:6px;display:grid}.chord-alternative-actions{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.chord-alternative-actions>.secondary-action{align-self:stretch}.chord-alternatives button{color:#2f2c3b;text-align:left;background:#fff;border:1px solid #d9e1e7;justify-content:space-between;display:flex}.chord-alternatives button span{display:grid}.chord-alternatives button small{color:#777487;font-size:.75rem}.student-materials-library.is-material-list{gap:30px;min-width:0;margin-top:0;padding-top:0;display:grid}.material-list-header{min-width:0;padding-right:210px}.material-list-header h1{color:#282b33;letter-spacing:-.025em;margin:0 0 5px;font-size:1.6rem;line-height:1.2}.material-list-header p,.material-group-header p{color:#777887;margin:0;font-size:.83rem;line-height:1.5}.material-list-group{min-width:0}.material-group-header{margin-bottom:12px}.material-group-header h2{color:#333843;align-items:center;gap:9px;margin:0 0 3px;font-size:1rem;font-weight:650;display:flex}.material-group-header h2 span{color:#858993;font-size:.78rem;font-weight:500}.material-group-rows{background:#fff;border:1px solid #e5e8ee;border-radius:12px;min-width:0}.student-material-row{min-width:0;padding:17px 20px 13px}.student-material-row+.student-material-row{border-top:1px solid #eceef2}.material-row-main{grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.material-row-artwork{color:#7890a4;background:#edf2f7;border-radius:7px;justify-content:center;align-items:center;width:52px;height:52px;display:flex;position:relative;overflow:hidden}.material-row-artwork img{object-fit:cover;width:100%;height:100%}.material-row-artwork .material-row-preview{color:#315e82;background:#ffffffe6;border:1px solid #fff;border-radius:50%;width:22px;height:22px;min-height:22px;padding:0;position:absolute;bottom:3px;right:3px}.material-row-artwork .material-row-preview.is-playing{color:#fff;background:#315e82}.material-row-copy,.material-resource-copy{min-width:0}.material-row-copy h3{color:#2c3039;overflow-wrap:anywhere;margin:0 0 2px;font-size:.97rem;font-weight:600;line-height:1.35}.material-row-copy p{overflow-wrap:anywhere;margin:0;line-height:1.45}.material-row-artist{color:#6e7280;font-size:.82rem}.material-row-status,.material-row-description{color:#838894;font-size:.76rem}.material-row-copy .material-row-status{margin-top:3px}.material-row-resource-title{color:#606c7a}.material-row-role{color:#687d70;border-left:1px solid #d9e0e6;margin-left:8px;padding-left:8px;display:inline-block}.material-row-audience{color:#758190;align-items:center;gap:4px;margin-top:4px;font-size:.72rem;display:inline-flex}.material-row-actions,.material-resource-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:flex}.student-material-row .material-row-primary,.student-material-row .material-row-secondary{white-space:nowrap;border:0;border-radius:7px;align-items:center;gap:6px;min-height:36px;padding:8px 10px;font-size:.8rem;font-weight:550;line-height:1.3;text-decoration:none;display:inline-flex}.student-material-row .material-row-primary{color:#315e82;background:#edf4fa}.student-material-row .material-row-primary:hover{background:#dfeef8}.student-material-row .material-row-secondary{color:#526b81;background:0 0}.student-material-row .material-row-secondary:hover{background:#f1f5f8}.student-material-row .action-menu-trigger-icon{color:#82909b;min-width:32px;min-height:36px;padding:7px}.student-material-row .action-menu-popover .material-menu-danger{color:#ac4f4b}.material-row-tools{flex-wrap:wrap;align-items:center;gap:5px 18px;margin-top:7px;margin-left:66px;display:flex}.material-row-tools button,.material-row-actions .material-row-attach,.material-list-footer button{color:#6b7d8c;background:0 0;border:0;gap:5px;min-height:30px;padding:3px 0;font-size:.76rem;font-weight:500}.material-row-tools button:hover,.material-row-actions .material-row-attach:hover,.material-list-footer button:hover{color:#315e82;text-decoration:underline}.material-row-actions .material-row-attach{padding:8px}.material-row-disclosure svg{transition:transform .12s}.material-row-disclosure .is-expanded{transform:rotate(180deg)}.material-row-details{border-top:1px solid #edf0f4;margin:11px 0 0 66px}.material-row-details[hidden]{display:none}.material-resource-row{grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 0;display:grid}.material-resource-row+.material-resource-row{border-top:1px solid #f0f2f5}.material-resource-row>svg{color:#8899a6}.material-resource-copy strong,.material-resource-copy small{overflow-wrap:anywhere;line-height:1.45;display:block}.material-resource-copy strong{color:#48515c;font-size:.82rem;font-weight:500}.material-resource-copy small{color:#858b95;margin-top:3px;font-size:.73rem}.material-list-footer{color:#8a8e98;flex-wrap:wrap;align-items:center;gap:4px 14px;padding:2px 0 12px;font-size:.78rem;display:flex}.material-list-empty{color:#8192a2;align-items:start;gap:10px;padding:35px 0;display:grid}.material-list-empty h2{color:#586577;margin:0;font-size:1rem;font-weight:500}.material-list-empty p{color:#808796;margin:0;font-size:.85rem}@media (width<=1100px){.material-row-actions{grid-column:2/-1;justify-content:flex-start}.material-row-main{grid-template-columns:52px minmax(0,1fr);gap:8px 12px}.material-row-tools,.material-row-details{margin-left:64px}.material-resource-actions{grid-column:2/-1;justify-content:flex-start}.material-resource-row{grid-template-columns:18px minmax(0,1fr)}}@media (width<=760px){.material-list-header{padding-right:0}.student-materials-library.is-material-list{gap:24px}.student-material-row{padding:14px 12px}.material-row-main{grid-template-columns:42px minmax(0,1fr);column-gap:10px}.material-row-artwork{width:42px;height:42px}.material-row-copy h3{font-size:.93rem}.material-row-actions,.material-resource-actions{grid-column:1/-1}.material-row-tools,.material-row-details{margin-left:0}.student-material-row .material-row-primary,.student-material-row .material-row-secondary{padding-inline:8px;font-size:.76rem}}.materials-list,.student-portal{gap:12px;display:grid}.material-card,.editor-panel{background:#fff;border-radius:8px;padding:14px}.candidate-card{background:#fafafd;border:1px solid #e0dfe8;border-radius:8px;gap:10px;padding:11px;display:grid}.candidate-card>div:first-child{flex-wrap:wrap;gap:8px;display:flex}.manual-material-fallback{background:#eef6fb;border:1px solid #cfe1ed;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:15px 16px;display:flex}.manual-material-fallback>div{gap:4px;display:grid}.manual-material-fallback p{color:#65717d;margin:0;font-size:.88rem;line-height:1.4}.manual-material-fallback button{flex:none}.button-row{flex-wrap:wrap;gap:10px;display:flex}@media (width<=640px){.manual-material-fallback{flex-direction:column;align-items:stretch}}.material-card{gap:12px;display:grid}.material-row-card{gap:0;padding:0}.material-summary-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.material-summary-button{color:#242231;align-items:center;gap:12px;justify-content:initial;text-align:left;background:0 0;grid-template-columns:42px minmax(0,1fr) auto;width:100%;min-height:0;padding:12px 14px;display:grid}.material-summary-button:hover,.material-summary-button:focus-visible,.material-row-card.is-expanded .material-summary-button{color:#242231;background:#f7f7fb}.material-summary-button:focus{outline:none}.material-summary-text{gap:2px;min-width:0;display:grid}.material-summary-artwork{background-image:var(--rio-fallback-artwork-image);color:#686978;background-position:50%;background-size:cover;border-radius:6px;justify-content:center;align-items:center;width:42px;height:42px;display:flex;overflow:hidden}.material-summary-artwork img{object-fit:cover;width:100%;height:100%}.material-preview-button{color:#5d6070;opacity:.45;background:#eef1f6;border-radius:999px;justify-content:center;align-items:center;width:26px;height:26px;min-height:0;margin-right:12px;padding:0;display:flex}.material-preview-button.is-playing{color:#315e82;opacity:1;animation:1s ease-in-out infinite alternate preview-pulse}.material-summary-text strong{color:#242231;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;line-height:1.16;overflow:hidden}.material-summary-text small{color:#747184;text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.material-card-detail{gap:10px;padding:2px 14px 14px;display:grid}.material-actions,.version-list{flex-wrap:wrap;gap:10px;display:flex}.material-actions a,.version-list a{color:#242231;background:#eef1f6;border-radius:7px;min-height:38px;padding:8px 12px}.editor-panel{flex-direction:column;gap:12px;height:max(420px,100dvh - 190px);min-height:0;margin-top:0;display:flex;overflow:hidden}.editor-panel>.section-title{z-index:2;background:#fff;margin:0;position:relative}.editor-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:10px;display:flex}.editor-pdf-action{place-items:center stretch;gap:5px;display:grid}.editor-pdf-action .editor-save-state{text-align:center;justify-content:center}.editor-status{margin:0}.editor-meta-row{color:#777487;flex-wrap:wrap;align-items:center;gap:8px;margin-top:7px;font-size:.86rem;display:flex}.editor-meta-row span{align-items:center;min-height:24px;display:inline-flex}.editor-save-state{color:#24633f;background:#e9f6ef;border-radius:999px;padding:2px 8px;font-weight:760}.editor-save-state.dirty{color:#755311;background:#fff7dc}.editor-save-state.error{color:#9b2c2c;background:#fdecec}.document-history{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.document-history ol{gap:6px;width:min(100%,360px);max-height:150px;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.document-history li{color:#4f4b60;background:#f5f6f9;border-radius:7px;padding:8px 10px}.document-history p{color:#777487;margin:0}.embedded-editor-shell{background:#fff;border:1px solid #c8c8c8;border-radius:8px;flex:auto;height:0;min-height:240px;position:relative;overflow:hidden}.embedded-chordpro-editor{overscroll-behavior:contain;border:0;width:100%;height:100%;display:block;overflow:hidden}.editor-loading{color:#4f4b60;z-index:1;background:#ffffffeb;justify-content:center;align-items:center;gap:8px;font-weight:760;display:flex;position:absolute;inset:0}.source-disclaimer{color:#7b788d;margin:8px 0 0;font-size:.88rem}.empty-state{color:#777487}.student-login{max-width:620px}.student-login h1{margin:0;font-size:clamp(2rem,4vw,2.7rem)}.student-login p{color:#777487}.student-material-library{gap:18px;display:grid}.student-library-header h2{margin:0;font-size:1.4rem}.student-material-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));align-items:start;gap:18px;display:grid}.student-material-preview-card{background:#f2f4f8;border-radius:8px;gap:12px;padding:12px;display:grid}.student-material-card-header{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;min-height:28px;display:grid}.student-material-card-header svg{color:#4f7fe5}.student-material-card-header strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-material-card-header span{color:#242231;font-size:1.3rem;line-height:1}.student-material-preview{aspect-ratio:.78;color:#4f7fe5;background:#fff;border-radius:5px;justify-content:center;align-items:center;text-decoration:none;display:flex;overflow:hidden}.student-material-preview iframe{pointer-events:none;border:0;width:100%;height:100%}.empty-preview{background-image:var(--rio-fallback-artwork-image);color:#4f7fe5;background-position:50%;background-size:cover}.student-material-grid .empty-state{grid-column:1/-1}.agenda-screen .calendar-panel>.section-title{display:none}.material-flow{gap:18px;max-width:940px;display:grid}.material-flow-header{margin-bottom:0}.material-flow-header p,.library-header p,.flow-card header p,.publication-success p,.request-card p{color:#777487;margin:5px 0 0}.flow-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.flow-steps li{color:#858193;border-bottom:3px solid #dcdbe4;align-items:center;gap:7px;padding:8px 2px;font-size:.82rem;font-weight:800;display:flex}.flow-steps li.active,.flow-steps li.done{color:#315e82;border-color:#6da7cf}.step-number{background:#e6eef6;border-radius:999px;flex:none;justify-content:center;align-items:center;width:25px;height:25px;font-size:.76rem;display:inline-flex}.flow-steps.compact{margin-bottom:12px}.flow-card{border:1px solid #e2e1e9;border-radius:14px;gap:16px;padding:20px;display:grid}.flow-card>header{align-items:flex-start;gap:11px;display:flex}.flow-card h2{margin:0;font-size:1.08rem}.flow-card.disabled-card{opacity:.58}.song-choice-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;display:grid}.song-choice{color:#242231;justify-content:initial;text-align:left;background:#fafafd;border:1px solid #e3e2eb;grid-template-columns:44px minmax(0,1fr) auto;min-height:64px;padding:9px;display:grid}.song-choice:hover,.song-choice:focus-visible,.song-choice.active{color:#242231;background:#edf5fb;border-color:#9fc5df}.song-choice img,.selected-song-summary img{aspect-ratio:1;object-fit:cover;border-radius:7px;width:44px}.song-choice span,.selected-song-summary div{min-width:0;display:grid}.song-choice small,.selected-song-summary span{color:#777487}.add-song-disclosure{border-top:1px solid #ecebf2;padding-top:10px}.add-song-disclosure summary{color:#4f4b60;cursor:pointer;align-items:center;gap:6px;width:fit-content;font-weight:800;display:flex}.add-song-disclosure .secondary-section{margin-top:10px}.selected-song-summary{background:#fafafd;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px;display:grid}.selected-song-summary .selected-song-actions{justify-content:flex-end;gap:7px;display:flex}.flow-candidate{background:#f6fafc;border-color:#cfe2f0}.review-view{gap:14px;display:grid}.publication-success{color:#245e3c;background:#edf8f2;border:1px solid #b9dfc8;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px 46px 14px 14px;display:grid;position:relative}.publication-success .publication-success-close{min-height:32px;position:absolute;top:8px;right:8px}.publication-success a{color:#245e3c;font-weight:800}.section-count{margin-left:2px}.portal-title{margin-bottom:0}.portal-interests,.student-request-list{gap:12px;display:grid}.portal-homeworks{gap:12px}.portal-homeworks>header h2{font-size:1.4rem}.portal-homework-card{background:#fffcf3;border-color:#ead9aa #ead9aa #ead9aa #d3a64d;border-left-style:solid;border-left-width:4px;padding:16px}.portal-homework-due{color:#6d5016;background:#fff3cf}.portal-homework-materials a{color:inherit;font-size:inherit;font-weight:inherit;text-underline-offset:2px;min-height:0;text-decoration:underline}.portal-homeworks>.empty-state{border:1px dashed #d9d7e2;border-radius:10px;padding:16px}.request-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;display:grid}.request-card{border:1px solid #e3e2eb;border-radius:10px;justify-content:space-between;align-items:end;gap:14px;padding:14px;display:flex}.request-card>div{gap:7px;display:grid}.teacher-editor-screen{padding-bottom:24px}.manual-editor-workspace{grid-template-columns:minmax(230px,290px) minmax(0,1fr);gap:16px;height:calc(100dvh - 114px);min-height:620px;display:grid}.manual-editor-library{border:1px solid #e1e0e8;border-radius:12px;flex-direction:column;min-height:0;display:flex;overflow:hidden}.manual-editor-library>header{border-bottom:1px solid #e8e7ee;justify-content:space-between;align-items:center;padding:14px;display:flex}.manual-editor-library h1{margin:2px 0 0;font-size:1.35rem}.manual-editor-description{color:#606371;margin:0;padding:14px;font-size:.9rem;line-height:1.5}.manual-material-create{border-bottom:1px solid #e8e7ee;gap:7px;padding:10px;display:grid}.manual-material-list{gap:5px;min-height:0;padding:8px;display:grid;overflow-y:auto}.manual-material-list article{border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.manual-material-list article.active{background:#edf4f8}.manual-material-list article>button:first-child{color:#383542;text-align:left;background:0 0;grid-template-columns:auto minmax(0,1fr) auto;justify-content:start;min-width:0;display:grid}.manual-material-list article>button:first-child span{min-width:0;display:grid}.manual-material-list strong,.manual-material-list small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.manual-material-list small{color:#777487}.manual-editor-stage{flex-direction:column;gap:10px;min-height:0;display:flex}.manual-editor-stage .editor-panel{flex:1}.manual-editor-empty{color:#777487;text-align:center;border:1px dashed #d8d6e1;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:420px;padding:28px;display:flex}.manual-editor-empty h2{color:#373441;margin:12px 0 4px}.manual-editor-empty p{max-width:520px}.route-loading{color:#666273;justify-content:center;align-items:center;gap:8px;min-height:140px;display:flex}.teacher-uploaded-materials{align-content:start;gap:24px;width:100%;max-width:1080px;margin:0 auto;display:grid}.teacher-materials-header{margin-bottom:0}.teacher-materials-header>button:not(.secondary-action),.teacher-uploaded-materials .uploaded-material-form button:not(.secondary-action){color:#fff;background:#477a9f}.teacher-materials-header>button:not(.secondary-action):hover,.teacher-uploaded-materials .uploaded-material-form button:not(.secondary-action):hover{background:#315e82}.teacher-materials-header>button.secondary-action,.teacher-uploaded-materials .uploaded-material-form button.secondary-action{color:#315e82;background:#edf5fb}.teacher-materials-header>button.secondary-action:hover,.teacher-uploaded-materials .uploaded-material-form button.secondary-action:hover{background:#dfeef7}.teacher-materials-header>div:first-child{gap:5px;display:grid}.teacher-materials-header span{color:#777487;letter-spacing:.05em;text-transform:uppercase;font-size:.76rem;font-weight:800}.teacher-materials-header h1,.teacher-materials-header p,.teacher-upload-panel h2,.teacher-upload-panel p,.teacher-upload-library h2,.teacher-upload-library p{margin:0}.teacher-materials-header p,.teacher-upload-panel header p,.teacher-upload-library>header p{color:#777487}.teacher-upload-panel,.teacher-upload-library{background:#fff;border:1px solid #dedde7;border-radius:18px;gap:20px;padding:clamp(18px,3vw,28px);display:grid;box-shadow:0 10px 32px #23202f0f}.teacher-upload-library{align-content:start;gap:14px;padding:clamp(14px,2vw,20px)}.teacher-upload-panel{justify-self:center;width:100%;max-width:840px}.teacher-upload-panel>header{align-items:flex-start;gap:14px;display:flex}.teacher-upload-library>header{justify-content:space-between;align-items:center;gap:12px;display:flex}.teacher-upload-library>header .ghost-icon{color:#526a7d}.teacher-upload-library>header .ghost-icon:hover,.teacher-upload-library>header .ghost-icon:focus-visible{color:#315e82;background:#edf5fb}.teacher-upload-panel>header>div,.teacher-upload-library>header>div{gap:4px;display:grid}.teacher-upload-panel-icon{color:#315e82;background:#eaf2f7;border-radius:12px;flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.uploaded-material-form{gap:20px;min-width:0;display:grid}.upload-form-grid{gap:14px;display:grid}.upload-description-field textarea{resize:vertical;min-height:92px}.upload-source-picker,.upload-audience-picker,.upload-song-role{border:0;gap:10px;min-width:0;margin:0;padding:0;display:grid}.upload-source-picker legend,.upload-audience-picker legend,.upload-song-role legend{color:#383543;margin-bottom:9px;font-size:.94rem;font-weight:800}.upload-source-options,.upload-audience-modes{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.upload-audience-modes{grid-template-columns:repeat(3,minmax(0,1fr))}.upload-source-options>label,.upload-audience-modes label{color:#5d5968;cursor:pointer;background:#fafbfc;border:1px solid #dedde7;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;min-height:68px;padding:11px 13px;transition:background .15s,border-color .15s,box-shadow .15s;display:grid}.upload-source-options>label:hover,.upload-audience-modes label:hover{border-color:#b9c7d1}.upload-source-options>label.is-active,.upload-audience-modes label.is-active{color:#315e82;background:#eaf2f7;border-color:#7fa6c0;box-shadow:0 0 0 1px #477a9f14}:is(.upload-source-options>label:has(input:focus-visible),.upload-audience-modes label:has(input:focus-visible)){outline-offset:3px;outline:3px solid #6da7cf}.upload-source-options label>span:not(.upload-choice-check),.upload-audience-modes label>span:not(.upload-choice-check){gap:2px;min-width:0;display:grid}.upload-source-options small,.upload-audience-modes small{color:#777487;font-size:.78rem;font-weight:500;line-height:1.35}.upload-choice-check{color:#315e82}.uploaded-material-form input[type=radio],.uploaded-material-form input[type=checkbox]{accent-color:#315e82;width:auto;min-height:0;padding:0}.uploaded-material-form input.upload-choice-input{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.upload-source-options>label,.upload-audience-modes label{position:relative}:is(.upload-source-options label:has(input:disabled),.upload-audience-modes label:has(input:disabled)){cursor:not-allowed;opacity:.55}.upload-link-field input{min-height:48px}.upload-dropzone{background:#f8fafc;border:1.5px dashed #afbdc8;border-radius:15px;place-items:center;min-height:215px;padding:24px;transition:background .15s,border-color .15s,box-shadow .15s;display:grid}.upload-dropzone:hover,.upload-dropzone.is-dragging{background:#f0f6fa;border-color:#5f8eaf}.upload-dropzone.is-dragging{box-shadow:inset 0 0 0 2px #477a9f1f}.upload-dropzone.has-file{min-height:0;padding:10px}.upload-file-input{min-height:1px;padding:0}.upload-dropzone:focus-within{outline-offset:3px;outline:3px solid #6da7cf}.upload-dropzone-copy{color:#696676;text-align:center;place-items:center;gap:7px;display:grid}.upload-dropzone-copy>strong{color:#2f2c39;font-size:1.03rem}.upload-dropzone-copy>span:not(.upload-dropzone-icon){font-size:.9rem}.upload-dropzone-copy>button{min-height:42px;margin:7px 0 2px;padding-inline:18px}.upload-dropzone-copy>small{color:#858292;max-width:520px;font-size:.76rem;line-height:1.4}.upload-dropzone-icon,.upload-selected-file-icon{color:#315e82;background:#e5f0f6;border-radius:999px;justify-content:center;align-items:center;width:46px;height:46px;display:inline-flex}.upload-selected-file{background:#fff;border:1px solid #dce3e9;border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;width:100%;padding:13px;display:grid}.upload-selected-file-copy{gap:2px;min-width:0;display:grid}.upload-selected-file-copy strong{overflow-wrap:anywhere}.upload-selected-file-copy small{color:#777487}.upload-form-section{border-top:1px solid #ecebf1;padding-top:20px}.upload-details-section{gap:14px;display:grid}.upload-details-section>header{gap:2px;display:grid}.upload-details-section h3,.upload-details-section p{margin:0}.upload-details-section h3{font-size:.96rem}.upload-details-section p{color:#777487;font-size:.82rem}.upload-student-list{border:1px solid #e1e0e9;border-radius:12px;gap:3px;max-height:240px;padding:6px;display:grid;overflow-y:auto}.upload-student-list>label{cursor:pointer;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;padding:10px;display:grid}.upload-student-list>label:hover,.upload-student-list>label.is-selected{background:#f7f8fb}.upload-student-list>label:has(input:focus-visible){outline-offset:-1px;outline:3px solid #6da7cf}.upload-student-list input{height:18px;margin:0;width:18px!important}.upload-student-list>label>span{gap:1px;display:grid}.upload-student-list small,.upload-student-list p{color:#777487;margin:0}.upload-student-list>p{padding:12px}.fixed-upload-audience,.upload-song-context{background:#f5f7fa;border:1px solid #e0e2e8;border-radius:10px;gap:3px;padding:11px 13px;display:grid}.fixed-upload-audience span,.upload-song-context span{color:#777487;text-transform:uppercase;font-size:.74rem;font-weight:800}.upload-song-context small{color:#777487}.upload-song-role>label{cursor:pointer;border:1px solid #dedde7;border-radius:10px;align-items:flex-start;gap:10px;padding:12px;display:flex}.upload-song-role>label input{flex:none;width:18px;height:18px;margin:2px 0 0}.upload-song-role>label:has(input:checked){background:#edf4f8;border-color:#86a9c0}.upload-song-role>label.is-disabled{cursor:not-allowed;opacity:.55}.upload-song-role>label span{gap:3px;display:grid}.upload-song-role>label small,.upload-song-role>p{color:#777487;margin:0;font-size:.82rem;line-height:1.35}.upload-form-status{color:#923535;margin:0}.upload-form-status.is-sync-warning{color:#725b20}.upload-form-actions{border-top:1px solid #ecebf1;justify-content:flex-end;padding-top:20px}.material-upload-backdrop{z-index:85;background:#1c1a2580;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.material-upload-dialog{background:#fff;border:1px solid #dedde7;border-radius:15px;gap:18px;width:100%;max-width:720px;max-height:calc(100dvh - 36px);padding:clamp(16px,3vw,24px);display:grid;overflow-y:auto;box-shadow:0 24px 70px #1e1b2a42}.material-upload-dialog>header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.material-upload-dialog>header span{color:#777487;letter-spacing:.04em;text-transform:uppercase;font-size:.74rem;font-weight:800}.material-upload-dialog h2{margin:3px 0 0}.material-upload-mode-tabs{background:#eef2f5;border:1px solid #dce3e8;border-radius:11px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:grid}.material-upload-mode-tabs button{box-shadow:none;color:#65717d;background:0 0;border:0;border-radius:8px;min-height:38px;padding:8px 12px}.material-upload-mode-tabs button[aria-selected=true]{color:#315e82;background:#fff;box-shadow:0 2px 8px #2334421a}.material-upload-mode-tabs button:not(:disabled):hover,.material-upload-mode-tabs button:not(:disabled):focus-visible{color:#315e82;background:#f8fbfd}.song-repository-picker{gap:18px;display:grid}.song-repository-state{color:#68727b;text-align:center;background:#f5f7f9;border:1px solid #e0e5e9;border-radius:10px;justify-content:center;align-items:center;gap:9px;min-height:76px;margin:0;padding:14px;display:flex}.song-repository-state.is-error,.song-repository-state.is-empty{align-items:center;gap:9px;display:grid}.song-repository-state.is-error{color:#8d4742;background:#fff7f6;border-color:#eed7d4}.song-repository-state p{margin:0}.song-repository-search .input-with-icon{display:block;position:relative}.song-repository-search .input-with-icon>svg{color:#7a8188;pointer-events:none;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.song-repository-search input{padding-left:38px}.song-repository-list{border:0;gap:8px;max-height:min(330px,42dvh);margin:0;padding:0 3px 2px 0;display:grid;overflow-y:auto}.song-repository-list legend{color:#383543;margin-bottom:9px;font-size:.9rem;font-weight:800}.song-repository-list>label{cursor:pointer;background:#fff;border:1px solid #dedde7;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px;transition:background .15s,border-color .15s,box-shadow .15s;display:grid}.song-repository-list>label:not(.is-disabled):hover{border-color:#aac0cf}.song-repository-list>label:has(input:focus-visible){outline-offset:2px;outline:3px solid #6da7cf}.song-repository-list>label.is-selected{background:#edf5fb;border-color:#7fa6c0;box-shadow:0 0 0 1px #477a9f14}.song-repository-list>label.is-disabled{cursor:not-allowed;opacity:.72;background:#f5f5f7}.song-repository-list input[type=radio]{accent-color:#315e82;width:18px;height:18px;min-height:18px;margin:0;padding:0}.song-repository-item-copy{gap:3px;min-width:0;display:grid}.song-repository-item-copy strong,.song-repository-item-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.song-repository-item-copy small{color:#777487;font-size:.78rem}.song-repository-item-copy>span{color:#526a7d;text-transform:uppercase;font-size:.7rem;font-weight:800}.song-repository-linked{color:#64717b;white-space:nowrap;background:#e6ebef;border-radius:999px;padding:4px 7px;font-size:.68rem;font-weight:800}.uploaded-material-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:10px;display:grid}.uploaded-material-grid>.empty-state{grid-column:1/-1}.uploaded-material-card{background:#fff;border:1px solid #e1e0e9;border-radius:10px;gap:8px;min-width:0;padding:8px;display:grid;overflow:hidden}.uploaded-material-image,.uploaded-material-pdf,.uploaded-material-empty-preview,.uploaded-material-audio,.uploaded-material-link-preview{aspect-ratio:auto;color:#666b78;background:#f1f3f7;border:0;border-radius:7px;width:100%;height:104px;overflow:hidden}.uploaded-material-image{object-fit:cover}.uploaded-material-pdf{pointer-events:none}.uploaded-material-empty-preview,.uploaded-material-audio{justify-content:center;align-items:center;display:flex}.uploaded-material-audio{flex-direction:column;gap:7px;padding:9px}.uploaded-resource-placeholder{background-color:#d9e8fb;background-image:linear-gradient(180deg, #f5faff1f, #13376c33), var(--rio-fallback-artwork-image);color:#183b64;background-position:50%;background-size:cover}.uploaded-resource-placeholder-title{background:#ffffffc7;border:1px solid #ffffffb3;border-radius:7px;align-items:center;gap:6px;max-width:90%;padding:5px 8px;font-size:.78rem;display:flex;box-shadow:0 3px 12px #1735641f}.uploaded-resource-placeholder-title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.uploaded-material-audio audio{width:100%;max-width:100%}.uploaded-material-link-preview{color:#315e82;text-align:center;justify-content:center;align-items:center;gap:6px;padding:10px;display:flex}.uploaded-material-link-preview.uploaded-resource-placeholder{color:#183b64}.uploaded-material-link-preview.uploaded-resource-placeholder>span{background:#fffc;border-radius:7px;gap:2px;max-width:76%;padding:5px 8px;display:grid}.uploaded-material-link-preview.uploaded-resource-placeholder strong,.uploaded-material-link-preview.uploaded-resource-placeholder small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.uploaded-material-link-preview.uploaded-resource-placeholder small{color:#526b88;font-size:.75rem}.uploaded-material-link-preview span{text-overflow:ellipsis;white-space:nowrap;max-width:70%;overflow:hidden}.uploaded-material-card-copy{gap:4px;min-width:0;display:grid}.uploaded-material-card-heading{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.uploaded-material-card .uploaded-type-badge,.uploaded-material-card .uploaded-song-role-badge{gap:4px;padding:2px 6px;font-size:.65rem}.uploaded-type-badge,.uploaded-song-role-badge{color:#5f5c69;background:#eef1f6;border-radius:999px;align-items:center;gap:5px;width:fit-content;padding:4px 8px;font-size:.72rem;font-weight:760;display:inline-flex}.uploaded-type-badge svg{width:14px;height:14px}.uploaded-song-role-badge{color:#356343;background:#e8f2ea}.uploaded-material-card h3,.uploaded-material-card p{margin:0}.uploaded-material-card h3{overflow-wrap:anywhere;font-size:.98rem;line-height:1.22}.uploaded-material-card p,.uploaded-material-card-copy>small{color:#777487;font-size:.76rem;line-height:1.35}.uploaded-material-card p{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.uploaded-material-card-copy>small{font-weight:650}.uploaded-material-actions{border-top:1px solid #eeedf2;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:4px;min-width:0;padding-top:5px;display:flex}.uploaded-material-primary-actions{flex-wrap:nowrap;flex:0 auto;align-items:center;gap:1px;min-width:0;display:flex}.uploaded-material-action,.uploaded-material-delete-action{box-shadow:none;white-space:nowrap;background:0 0;border-radius:6px;flex:none;justify-content:center;gap:3px;min-height:27px;padding:4px 5px;font-size:.7rem;font-weight:750}.uploaded-material-action{color:#526a7d}.uploaded-material-action:hover,.uploaded-material-action:focus-visible{color:#294f69;background:#eef4f7}.uploaded-material-delete-action{color:#aa5b5b;width:27px;margin-left:auto;padding:4px}.uploaded-material-delete-action:hover,.uploaded-material-delete-action:focus-visible{color:#8f3f3f;background:#faeeee}.disc-upload-button{color:#315e82;background:0 0;border-radius:999px;min-height:0;padding:4px 8px;font-size:.68rem}.disc-upload-button:hover,.disc-upload-button:focus-visible{background:#eaf2f7}.taste-shelf.is-compact-profile .disc-upload-button{padding-block:3px;font-size:.64rem}.student-workspace-actions{flex-flow:wrap;align-items:center}.student-workspace-actions .secondary-action{color:#315e82;background:#edf5fb}.student-workspace-actions .secondary-action:hover,.student-workspace-actions .secondary-action:focus-visible{background:#dfeef7}.student-workspace-actions .prepare-material-action{color:#fff;background:#477a9f}.student-workspace-actions .prepare-material-action:hover,.student-workspace-actions .prepare-material-action:focus-visible{background:#315e82}.student-workspace.has-prepare-action .workspace-header{padding-right:340px}@media (width<=760px){.teacher-materials-header,.teacher-upload-panel>header,.teacher-upload-library>header{align-items:flex-start}.teacher-materials-header{flex-direction:column}.upload-form-grid,.uploaded-material-grid{grid-template-columns:1fr}.material-upload-backdrop{align-items:flex-end;padding:0}.material-upload-dialog{border-radius:16px 16px 0 0;max-width:none;max-height:92dvh}}@media (width<=560px){.material-upload-mode-tabs button{padding-inline:8px;font-size:.78rem}.song-repository-list>label{grid-template-columns:auto minmax(0,1fr)}.song-repository-linked{grid-column:2;justify-self:start}.upload-source-options,.upload-audience-modes{grid-template-columns:1fr}.upload-dropzone{min-height:190px;padding:20px 14px}.upload-selected-file{grid-template-columns:auto minmax(0,1fr)}.upload-selected-file>button{grid-column:1/-1;width:100%}.upload-form-actions>button{flex:100%}}.portal-resource-card{background:#fff;border:1px solid #e1e4ea;grid-template-rows:auto auto auto auto;box-shadow:0 8px 22px #272d390d}.portal-resource-card .student-material-card-header{grid-template-columns:auto minmax(0,1fr)}.portal-resource-card .student-material-card-header>div{gap:1px;min-width:0;display:grid}.portal-resource-card .student-material-card-header small{color:#777487;letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:700}.portal-resource-preview{color:#3e6583;text-align:center;background:#f4f6f9;border:1px solid #e4e7ec;border-radius:8px;justify-content:center;align-items:center;width:100%;min-height:180px;padding:0;display:flex;overflow:hidden}.portal-resource-preview.is-pdf{aspect-ratio:.78;background:#fff}.portal-resource-preview.is-pdf iframe{pointer-events:none;border:0;width:100%;height:100%}.portal-resource-preview.is-image{aspect-ratio:4/3;background:#eef1f5}.portal-resource-preview.is-image img{object-fit:contain;width:100%;height:100%}.portal-resource-preview.is-audio{background-color:#d9e8fb;background-image:linear-gradient(180deg, #f5faff1f, #13376c33), var(--rio-fallback-artwork-image);color:#183b64;background-position:50%;background-size:cover;flex-direction:column;align-items:center;gap:18px;padding:24px 16px}.portal-resource-preview.is-audio audio{width:100%;max-width:100%}.portal-resource-preview-title{text-overflow:ellipsis;white-space:nowrap;background:#ffffffc7;border-radius:9px;max-width:90%;padding:7px 10px;overflow:hidden}.portal-resource-preview.is-link{background-color:#d9e8fb;background-image:linear-gradient(180deg, #f5faff1f, #13376c33), var(--rio-fallback-artwork-image);color:#183b64;background-position:50%;background-size:cover;flex-direction:column;align-content:center;gap:6px;padding:24px}.portal-resource-preview.is-link span{background:#ffffffc7;border-radius:9px;max-width:90%;padding:7px 10px;font-weight:800}.portal-resource-preview.is-link small{color:#747184;text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.portal-resource-preview.is-empty{background-color:#d9e8fb;background-image:linear-gradient(180deg, #f5faff1f, #13376c33), var(--rio-fallback-artwork-image);color:#183b64;background-position:50%;background-size:cover;flex-direction:column;gap:10px;padding:20px}.portal-resource-description{color:#5f5b6d;margin:0;font-size:.88rem;line-height:1.45}.portal-resource-actions{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.portal-resource-actions>a{color:#365d78;background:#eef2f6;border-radius:7px;flex:auto;min-height:36px;padding:7px 10px;font-size:.84rem;font-weight:800}.portal-resource-actions>a:first-child{color:#fff;background:#315e82}.portal-resource-actions.is-compact{flex-wrap:nowrap;justify-content:flex-end}.portal-resource-actions.is-compact>a{flex:none;min-height:28px;padding:4px 7px;font-size:.72rem}.portal-song-materials{border-top:1px solid #e5e4eb;gap:10px;padding-top:14px;display:grid}.portal-song-materials>header h3,.portal-song-materials>header p{margin:0}.portal-song-materials>header h3{font-size:1rem}.portal-song-materials>header p{color:#777487;margin-top:2px;font-size:.82rem}.portal-song-material-groups{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:8px;display:grid}.portal-song-material-group{background:#f8f9fb;border:1px solid #e3e5ea;border-radius:10px;gap:8px;padding:10px;display:grid}.portal-song-material-group>header{gap:1px;display:grid}.portal-song-material-group>header small{color:#777487}.portal-song-material-group ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.portal-song-material-group li{background:#fff;border-radius:8px;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0;padding:7px;display:grid}.portal-song-material-group li>a,.portal-song-material-group li>span:not(.portal-song-material-role){color:#35323e;text-overflow:ellipsis;white-space:nowrap;min-width:0;min-height:0;padding:0;font-size:.82rem;font-weight:760;overflow:hidden}.portal-song-material-role{color:#646172;text-transform:uppercase;background:#e9edf2;border-radius:999px;padding:2px 6px;font-size:.66rem;font-weight:850}.portal-song-material-role.is-primary{color:#315e82;background:#dcecf6}.portal-homework-material{align-items:center;gap:5px;display:inline-flex}.portal-homework-material>a:first-of-type{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.portal-homework-material .portal-homework-download{border-radius:999px;min-height:24px;padding:3px}@media (width<=640px){.portal-resource-preview{min-height:150px}.portal-song-material-groups{grid-template-columns:1fr}.portal-song-material-group li{grid-template-columns:auto auto minmax(0,1fr)}.portal-song-material-group .portal-resource-actions.is-compact{grid-column:1/-1;justify-content:stretch}.portal-song-material-group .portal-resource-actions.is-compact>a{flex:auto}}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes disc-spin{to{transform:rotate(360deg)}}@keyframes preview-pulse{0%{opacity:1}to{opacity:.25}}@media (prefers-reduced-motion:reduce){.rio-auth-sketch,.rio-auth-reveal{animation:none}.rio-auth-reveal{stroke-dashoffset:0}.disc-item.has-spun .disc,.album-track-button.is-playing .album-track-play{animation:none}}@media (width<=640px){.disc-item.album-open{width:min(100%, var(--disc-size))}.album-track-popover{width:auto;top:72px;left:12px;right:12px}}@media (width<=980px){.screen{padding:22px 18px 92px}.home-header,.detail-header,.section-title{flex-direction:column}.students-screen .home-header{flex-direction:row;align-items:center;margin-bottom:30px}.student-order-selector span{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.student-order-selector select{width:min(150px,43vw);min-width:0}.teacher-greeting{text-align:left;align-items:flex-start}.student-rows{gap:22px}.student-row strong{font-size:1.22rem}.student-row span{font-size:.98rem}.floating-add{width:72px;height:72px;bottom:22px;right:22px}.floating-form{width:auto;max-height:calc(100dvh - 140px);bottom:110px;left:18px;right:18px;overflow-y:auto}.teacher-profile-form{top:90px;bottom:auto}.student-row-item{grid-template-columns:1fr}.student-row-item:has(.student-reorder-handle){grid-template-columns:auto minmax(0,1fr)}.student-row-item:has(.student-reorder-handle) .student-row-actions{grid-column:2}.student-row-actions{justify-content:flex-start}.student-detail-shell{grid-template-columns:1fr;padding:0}.student-sidebar{border-bottom:1px solid #e4e5eb;border-right:0;gap:12px;width:100%;min-width:0;min-height:0;padding:18px}.student-sidebar-profile{margin:6px 0 4px;padding:0}.student-sidebar-nav{gap:8px;width:100%;min-width:0;display:flex;overflow-x:auto}.student-sidebar-nav button{flex:none;justify-content:center;width:auto;min-width:112px}.student-sidebar-access{display:none}.student-mobile-access{z-index:20;background:#fffffffa;border-bottom:1px solid #e4e5eb;gap:7px;margin:-22px -18px 18px;padding:9px 18px 10px;display:grid;position:sticky;top:62px;box-shadow:0 5px 14px #23212e0f}.student-mobile-access>span{color:#777487;font-size:.75rem;font-weight:800}.student-mobile-access-actions{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:6px;display:grid}.student-mobile-access .text-button{color:#4f4b60;background:#f1f2f6;min-width:0;min-height:34px;padding:6px 7px;font-size:.78rem}.student-sidebar-logout{margin:0}.student-workspace{width:100%;min-width:0;min-height:auto;padding:22px 18px 92px}.student-workspace-actions{align-items:flex-start;margin-bottom:12px;position:static}.notes-panel{grid-template-columns:1fr}.notes-panel>.workspace-header{grid-column:auto}.notes-tab-list{width:100%}.notes-tab{flex:1 1 0}.agenda-page-header{align-items:flex-start}.agenda-navigation{justify-content:flex-start;width:100%}.agenda-editor{max-height:calc(100dvh - 36px);top:auto;bottom:18px;right:18px;overflow-y:auto}.workspace-header,.student-workspace.has-prepare-action .workspace-header{padding-right:0}.taste-shelf{--disc-size:108px;--visible-disc-count:4;gap:14px}.taste-shelf.is-compact-profile{--disc-gap:8px;--disc-size:78px;gap:8px}.taste-shelf.is-compact-profile .taste-row{grid-template-columns:minmax(118px,142px) minmax(0,1fr)}.disc-generate-button{opacity:1;transform:none}.verify-form{grid-template-columns:1fr}.library-header{flex-direction:column;align-items:flex-start}.publication-success{grid-template-columns:auto minmax(0,1fr);align-items:start}.publication-success a,.publication-success button{grid-column:2;justify-content:flex-start}.teacher-primary-bar{grid-template-columns:auto minmax(0,1fr) auto;gap:8px;padding-inline:14px}.teacher-primary-bar nav{justify-content:flex-start;overflow-x:auto}.teacher-primary-bar nav button{white-space:nowrap;flex:none}.manual-editor-workspace{grid-template-columns:1fr;height:auto;min-height:0}.manual-editor-library{max-height:310px}.manual-editor-stage{min-height:calc(100dvh - 180px)}.unified-result-card{grid-template-columns:52px minmax(0,1fr);align-items:start}.result-card-actions{grid-column:2;justify-content:flex-start}}@media (width<=720px){.agenda-navigation{grid-template-columns:minmax(0,1fr);place-items:start;gap:12px;display:grid}.agenda-week-switcher{grid-template-columns:38px minmax(0,1fr) 38px;width:100%;max-width:360px}.agenda-navigation strong{font-size:.88rem}.agenda-current-week{justify-self:start}.student-edit-form .lesson-fields{grid-template-columns:1fr}.login-panel{grid-template-columns:minmax(0,1fr);max-width:440px}.screen.auth-screen{align-items:flex-start;padding:clamp(24px,5dvh,48px) 24px 88px}.auth-layout{grid-template-columns:minmax(0,1fr);gap:24px;max-width:440px}.auth-intro p.auth-intro-title{max-width:400px;margin-bottom:0;font-size:1.9rem;line-height:1.13}.auth-intro p{font-size:1rem}.auth-brand{margin-bottom:12px}.auth-wordmark{font-size:3.8rem}.auth-card{padding:22px}.auth-card-header h1{font-size:1.7rem}.auth-footer{bottom:26px}.rio-auth-sketch{width:1050px;top:40%}.taste-shelf{--disc-size:104px;--visible-disc-count:3}.taste-row{grid-template-columns:1fr}.taste-row-tab{border-bottom:1px solid #e7e6ef;border-right:0;border-radius:14px 14px 0 0;gap:4px;padding:15px 17px}.taste-row-content{padding:12px 14px 6px}.calendar-grid{grid-template-columns:1fr}.notes-actions{flex-direction:column;align-items:stretch}.notes-action-buttons{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.notes-action-buttons button:only-child{grid-column:1/-1}.notes-relation-options{grid-template-columns:1fr}.student-note-dialog-backdrop{padding:0}.student-note-dialog{border-radius:0;width:100vw;height:100dvh}.student-note-dialog-fields{grid-template-columns:1fr;padding:16px}.student-note-dialog-fields>*{grid-column:1}.student-note-dialog-actions{flex-direction:column;align-items:stretch;padding:12px 16px}.student-note-dialog-actions>div{grid-template-columns:repeat(2,minmax(0,1fr));margin-left:0;display:grid}.flow-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.selected-song-summary{grid-template-columns:auto minmax(0,1fr)}.selected-song-summary .selected-song-actions{grid-column:1/-1;justify-content:flex-start}.request-card{flex-direction:column;align-items:start}.teacher-primary-bar{grid-template-columns:minmax(0,1fr) auto}.rio-wordmark{display:none}.teacher-primary-bar nav button{flex:none;padding-inline:9px}.role-selector{grid-template-columns:1fr}.agenda-undo{justify-content:space-between;width:calc(100vw - 28px);bottom:14px}.agenda-note-window-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.agenda-note-window-actions button{justify-content:center;min-width:0}.unified-music-search .verify-form{grid-template-columns:1fr}.unified-result-card{grid-template-columns:44px minmax(0,1fr)}.unified-result-card>img{width:44px}.result-card-actions{grid-column:1/-1}.result-card-actions button{flex:1}.context-recommendations article{grid-template-columns:30px minmax(0,1fr)}.recommendation-actions{grid-column:1/-1;justify-content:flex-end}}@media (width<=420px){.auth-card{padding:20px 18px}.auth-card .login-auth-links{gap:10px}.auth-card .login-auth-links .text-button{font-size:.84rem}}@media (width<=480px){.taste-shelf{--disc-size:96px;--visible-disc-count:2}.taste-shelf.is-compact-profile{--disc-size:72px}}@media (width<=360px){.screen.auth-screen{padding-left:16px;padding-right:16px}.auth-card{padding:18px}}.route-error,.review-error{background:#fff;border:1px solid #e2e1e9;border-radius:12px;gap:10px;max-width:720px;margin:24px auto;padding:22px;display:grid}.route-error h1,.review-error h2,.route-error p,.review-error p{margin:0}.route-error p,.review-error p{color:#6d6979}.review-error{max-width:none;margin:4px 0}.billing-screen{color:#202033;padding-top:30px}.billing-page-heading h1{letter-spacing:-.025em;margin:0;font-size:clamp(2rem,3vw,2.55rem);line-height:1.05}.billing-period-bar{grid-template-columns:auto minmax(280px,1fr) auto;align-items:center;gap:28px;margin-top:36px;display:grid}.billing-month-controls{align-items:center;gap:10px;display:flex}.billing-month-controls input[type=month]{border-color:#d7dde8;width:auto;min-width:175px;font-weight:750}.billing-month-arrow{min-width:43px;padding-inline:8px}.billing-period-copy{flex-wrap:wrap;align-items:baseline;gap:10px 24px;display:flex}.billing-period-copy strong{font-size:1.15rem}.billing-period-copy span{color:#38374a;font-size:1rem}.billing-summary{color:#38387a;text-align:right;flex-wrap:wrap;justify-content:flex-end;gap:5px;margin:0;font-weight:750;display:flex}.billing-explanation{color:#62667b;margin:52px 0 24px;font-size:.9rem;line-height:1.65}.billing-explanation strong{color:#53576c}.billing-loading{color:#666a7d;justify-content:center;align-items:center;gap:9px;min-height:280px;display:flex}.billing-load-error{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:24px;display:grid}.billing-load-error p{margin:3px 0 0}.billing-refresh-error{color:#74531a;background:#fff6e7;border:1px solid #ecd19e;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:9px 12px;font-size:.88rem;display:flex}.billing-table-wrap{border-top:1px solid #dfe3eb;transition:opacity .15s;overflow-x:auto}.billing-table-wrap.is-refreshing{opacity:.62;pointer-events:none}.billing-table{border-collapse:collapse;table-layout:fixed;width:100%}.billing-table th,.billing-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #e2e5eb;padding:19px 14px}.billing-table thead th{color:#303043;padding-block:14px;font-size:.84rem;font-weight:850;line-height:1.25}.billing-table tbody th{font-size:.97rem;font-weight:750}.billing-table tbody td{color:#333448;font-size:.91rem}.billing-table th:first-child{width:14%}.billing-table th:nth-child(2){width:15%}.billing-table th:nth-child(3),.billing-table th:nth-child(4),.billing-table th:nth-child(5){width:14%}.billing-table th:nth-child(6){width:13%}.billing-table th:nth-child(7){width:16%}.billing-status-cell,.billing-cell-stack{flex-direction:column;align-items:flex-start;gap:5px;display:flex}.billing-status-cell small{color:#777b8d;font-size:.72rem;line-height:1.35}.billing-status,.billing-overdue-detail{align-items:center;gap:8px;font-weight:750;line-height:1.25;display:inline-flex}.billing-status i,.billing-overdue-detail i{background:#a6a8b1;border-radius:50%;flex:none;width:10px;height:10px}.billing-status-paid i{background:#42c879}.billing-status-pending i{background:#f1c40f}.billing-status-overdue i,.billing-overdue-detail i{background:#de5b55}.billing-status-unconfigured i{background:#9ba0ad}.billing-overdue-detail{color:#a6403b;font-size:.72rem}.billing-overdue-detail i{width:8px;height:8px}.billing-small-link{color:#647087;min-height:0;padding:1px 0;font-size:.75rem;font-weight:700}.billing-small-link:hover{color:#245d83;background:0 0}.billing-period-payment-snapshot{color:#555d72;font-size:.72rem;line-height:1.35}.billing-classes-count{text-align:center!important}.billing-row-action{white-space:nowrap;min-width:146px;font-size:.83rem}.billing-registered{color:#697086;align-items:center;gap:6px;font-size:.82rem;line-height:1.35;display:inline-flex}.billing-dialog-backdrop{z-index:110}.billing-dialog{background:#fff;border:1px solid #dedfe7;border-radius:15px;flex-direction:column;width:100%;max-width:570px;max-height:min(760px,100dvh - 40px);display:flex;overflow:hidden;box-shadow:0 24px 70px #18172342}.billing-dialog-wide{max-width:760px}.billing-dialog-header{border-bottom:1px solid #e6e7ed;justify-content:space-between;align-items:flex-start;gap:16px;padding:19px 20px 17px;display:flex}.billing-dialog-header h2{margin:0;font-size:1.25rem;line-height:1.2}.billing-dialog-header p{color:#6b6d7e;max-width:650px;margin:7px 0 0;font-size:.84rem;line-height:1.5}.billing-dialog-content{min-height:0;padding:20px;overflow-y:auto}.billing-dialog-actions{border-top:1px solid #e6e7ed;justify-content:flex-end;align-items:center;gap:9px;margin:4px -20px -20px;padding:15px 20px;display:flex}.billing-plan-form,.billing-payment-form,.billing-history{gap:16px;display:grid}.billing-form-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:12px;display:grid}.billing-field-help{color:#747789;margin:-8px 0 0;font-size:.78rem;line-height:1.45}.billing-global-currency>div{background:#f6f7fa;border:1px solid #e1e3e9;border-radius:8px;flex-wrap:wrap;align-items:baseline;gap:5px 10px;min-height:40px;padding:9px 11px;display:flex}.billing-global-currency strong{color:#303344;font-size:.94rem}.billing-global-currency span{color:#707486;font-size:.76rem;font-weight:500}.billing-global-currency a{color:#365f7c;margin-left:auto;font-size:.76rem}.billing-payment-plan{color:#666a7d;background:#f6f7fa;border-radius:9px;flex-wrap:wrap;gap:6px 22px;margin:0;padding:9px 11px;font-size:.8rem;display:flex}.billing-payment-plan strong{color:#343648}.billing-proration-notice{color:#6e5520;background:#fff8e7;border:1px solid #ead8aa;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.billing-proration-notice p{margin:0;font-size:.82rem;line-height:1.45}.billing-proration-notice button{flex:none}.billing-payment-state-fields{align-items:end}.billing-inline-status{color:#686b7c;align-items:center;gap:8px;margin:0;padding:10px 0;display:flex}.billing-form-error{color:#943e38;background:#fff0ef;border:1px solid #efc4c0;border-radius:8px;margin:0;padding:9px 11px;font-size:.84rem;line-height:1.4}.billing-plan-versions{color:#626578;border:1px solid #e1e3e9;border-radius:9px;padding:10px 12px;font-size:.82rem}.billing-plan-versions summary{color:#46495b;cursor:pointer;font-weight:750}.billing-plan-versions ol{gap:8px;margin:12px 0 2px;padding-left:22px;display:grid}.billing-plan-versions li span{margin-top:2px;display:block}.billing-unit-group{border:0;min-width:0;margin:0;padding:0}.billing-unit-group legend{color:#46495c;padding:0 0 8px;font-size:.83rem;font-weight:850}.billing-unit-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.billing-unit-option{cursor:pointer;background:#fafafd;border:1px solid #dfe2ea;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:10px;display:grid}.billing-unit-choice{cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-width:0;display:grid}.billing-unit-option:has(input:checked){background:#eef5fa;border-color:#82aeca}.billing-unit-option.is-disabled{cursor:not-allowed;opacity:.58}.billing-unit-option.is-disabled .billing-unit-choice{cursor:not-allowed}.billing-unit-choice>input{accent-color:#255e84;width:17px;min-height:17px}.billing-unit-choice>span{gap:2px;min-width:0;display:grid}.billing-unit-choice strong{font-size:.84rem;line-height:1.35}.billing-unit-choice small{color:#707487;gap:2px;font-size:.74rem;display:grid}.billing-amount-edited-label{color:#7c5520;letter-spacing:.01em;text-transform:uppercase;font-size:.7rem;font-style:normal;font-weight:800}.billing-unit-amount-editor{border-top:1px solid #e2e4eb;grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px 12px;padding-top:9px;display:grid}.billing-unit-amount-editor .form-field span{display:inline}.billing-installment-editor{grid-template-columns:minmax(0,1fr)}.billing-installment-editor small{color:#707487;font-size:.74rem}.billing-unit-amount-error{color:#943e38;grid-column:1/-1;margin:0;font-size:.74rem}.billing-payment-total{background:#f1f5f8;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;display:flex}.billing-payment-total span{color:#686c7e;font-size:.82rem}.billing-payment-review,.billing-edit-form{gap:16px;display:grid}.billing-payment-review-alert{color:#276243;background:#eef7f2;border:1px solid #cbe5d6;border-radius:10px;align-items:flex-start;gap:10px;padding:12px 13px;display:flex}.billing-payment-review-alert h3,.billing-payment-review-alert p,.billing-payment-review h4{margin:0}.billing-payment-review-alert h3{font-size:.94rem}.billing-payment-review-alert p{color:#527060;margin-top:3px;font-size:.8rem;line-height:1.45}.billing-payment-review dl{background:#f6f7fa;border-radius:9px;gap:8px;margin:0;padding:11px 13px;display:grid}.billing-payment-review dl>div{justify-content:space-between;align-items:baseline;gap:14px;display:flex}.billing-payment-review dt{color:#747789;font-size:.76rem;font-weight:750}.billing-payment-review dd{text-align:right;margin:0;font-size:.86rem;font-weight:750}.billing-payment-review h4,.billing-edit-items legend{color:#46495c;font-size:.83rem;font-weight:850}.billing-payment-review ul{gap:7px;margin:8px 0 0;padding:0;list-style:none;display:grid}.billing-payment-review li{border-bottom:1px solid #e7e9ee;justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:7px;font-size:.82rem;display:flex}.billing-payment-review-item-label{gap:2px;display:grid}.billing-payment-review-item-label small{color:#747789;font-size:.72rem}.billing-paid-date-field{max-width:340px}.billing-edit-items{border:0;gap:9px;min-width:0;margin:0;padding:0;display:grid}.billing-edit-items legend{padding-bottom:8px}.billing-edit-item{background:#fafafd;border:1px solid #dfe2ea;border-radius:9px;grid-template-columns:minmax(150px,1fr) minmax(150px,.85fr) minmax(120px,.65fr);align-items:end;gap:10px;padding:11px;display:grid}.billing-edit-item>strong{align-self:center;font-size:.84rem}.billing-price-change-notice{grid-column:1/-1;margin:0}.billing-credit-section{background:#f5f8fb;border:1px solid #d9e3eb;border-radius:11px;gap:9px;padding:13px;display:grid}.billing-credit-section>header{align-items:flex-start;gap:9px;display:flex}.billing-credit-section h3,.billing-credit-section p{margin:0}.billing-credit-section h3{font-size:.92rem}.billing-credit-section p{color:#6f7485;font-size:.76rem}.billing-credit{background:#fff;border:1px solid #e0e4e9;border-radius:8px;grid-template-columns:minmax(150px,.7fr) minmax(240px,1.3fr);align-items:center;gap:10px;padding:10px;display:grid}.billing-credit>div:first-child{gap:2px;font-size:.82rem;display:grid}.billing-credit>div:first-child span,.billing-credit>small{color:#727687;font-size:.73rem}.billing-credit-actions{grid-template-columns:minmax(0,1fr) auto;gap:7px;display:grid}.billing-payment-history{gap:10px;display:grid}.billing-payment-record{border:1px solid #dee1e8;border-radius:10px;gap:10px;padding:13px;display:grid}.billing-payment-record.is-annulled{color:#737584;background:#fafafa}.billing-payment-record>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.billing-payment-record-heading{gap:3px;display:grid}.billing-payment-record-heading span{color:#55596d;font-size:.82rem}.billing-payment-record-heading small{color:#858898;font-size:.7rem}.billing-payment-record-actions{align-items:center;gap:5px;display:flex}.billing-edit-button{color:#365f7c;min-height:28px;padding:3px 5px;font-size:.78rem}.billing-payment-record ul{color:#64687a;gap:3px;margin:0;padding:0;font-size:.78rem;list-style:none;display:grid}.billing-annul-button{color:#a6403b;min-height:28px;padding:3px 5px;font-size:.78rem}.billing-annulled-copy{background:#f0f0f2;border-radius:6px;margin:0;padding:7px 9px;font-size:.76rem}.billing-annul-form{background:#fff6f5;border-radius:8px;gap:8px;padding:10px;display:grid}.billing-annul-form textarea{min-height:72px}.billing-annul-form>div{justify-content:flex-end;gap:7px;display:flex}.student-billing-panel{border:1px solid #e1e0e9;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;max-width:620px;padding:18px 20px;display:flex}.student-billing-panel h2{margin:0 0 5px;font-size:1rem}.student-billing-panel p{color:#707385;max-width:390px;margin:0;font-size:.82rem;line-height:1.45}.student-billing-panel .student-billing-latest-payment{color:#4b5164;margin-top:7px}.student-billing-latest-payment strong{color:#282b3b}@media (width<=1120px){.billing-period-bar{grid-template-columns:auto minmax(220px,1fr);gap:18px}.billing-summary{text-align:left;grid-column:1/-1;justify-content:flex-start}.billing-table{min-width:1050px}}@media (width<=760px){.billing-screen{padding-inline:14px}.billing-period-bar{grid-template-columns:1fr;align-items:stretch;margin-top:26px}.billing-month-controls{grid-template-columns:auto minmax(0,1fr) auto;display:grid}.billing-month-controls input[type=month]{width:100%;min-width:0}.billing-period-copy{flex-direction:column;align-items:flex-start;gap:4px}.billing-summary{grid-column:auto}.billing-explanation{margin-top:30px}.billing-table-wrap{border-top:0;overflow:visible}.billing-table,.billing-table tbody,.billing-table tr,.billing-table th,.billing-table td{width:100%;min-width:0;display:block}.billing-table thead{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.billing-table tbody{gap:14px;display:grid}.billing-table tr{border:1px solid #dfe2ea;border-radius:12px;padding:8px 13px}.billing-table tbody th,.billing-table tbody td{border-bottom:1px solid #eceef2;grid-template-columns:116px minmax(0,1fr);align-items:start;gap:12px;padding:10px 0;display:grid;text-align:left!important}.billing-table tbody td:last-child{border-bottom:0}.billing-table tbody th:before,.billing-table tbody td:before{color:#777b8d;content:attr(data-label);padding-top:2px;font-size:.72rem;font-weight:800}.billing-cell-stack,.billing-status-cell{min-width:0}.billing-row-action{width:100%;min-width:0}.billing-load-error{grid-template-columns:auto minmax(0,1fr);align-items:start}.billing-load-error button{grid-column:2;justify-self:start}.billing-dialog-backdrop{align-items:stretch;padding:0}.billing-dialog,.billing-dialog-wide{border:0;border-radius:0;max-width:none;height:100dvh;max-height:100dvh}.billing-dialog-header,.billing-dialog-content{padding-inline:16px}.billing-dialog-actions{margin-inline:-16px;padding-inline:16px}.billing-form-grid,.billing-unit-list,.billing-credit,.billing-edit-item,.billing-credit-actions{grid-template-columns:1fr}.billing-payment-total,.billing-proration-notice,.student-billing-panel{flex-direction:column;align-items:stretch}.student-billing-panel button{width:100%}.billing-payment-record-actions{flex-direction:column;align-items:flex-end}}.teacher-mobile-nav{display:none}@media (width<=980px){:root{--mobile-nav-height:calc(64px + env(safe-area-inset-bottom,0px))}html{scroll-padding-bottom:calc(var(--mobile-nav-height) + 16px)}.teacher-mobile-nav{padding:5px max(6px, env(safe-area-inset-right,0px)) calc(5px + env(safe-area-inset-bottom,0px)) max(6px, env(safe-area-inset-left,0px));z-index:25;background:#fff;border-top:1px solid #e5e4eb;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;gap:2px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -3px 16px #24223108}.teacher-mobile-nav>button,.teacher-mobile-nav .action-menu-trigger{color:#676475;background:0 0;border-radius:9px;flex-direction:column;gap:3px;width:100%;min-width:0;min-height:54px;padding:4px 0;font-size:.65rem;font-weight:700}.teacher-mobile-nav>.action-menu{min-width:0}.teacher-mobile-nav .action-menu-trigger:after{content:"Más"}.teacher-mobile-nav>button.active,.teacher-mobile-nav>.active .action-menu-trigger,.teacher-mobile-nav .action-menu-trigger[aria-expanded=true]{color:#245d83;background:#edf4f8}.teacher-mobile-nav .action-menu-popover{max-height:calc(100dvh - var(--mobile-nav-height) - 32px);width:min(280px,100vw - 32px);top:auto;bottom:calc(100% + 12px);overflow-y:auto}.teacher-mobile-nav .action-menu-popover>[role=menuitem]{min-height:48px}.teacher-mobile-nav .action-menu-popover>[aria-current=page]{color:#245d83;background:#edf4f8}.app-shell:has(.teacher-mobile-nav)>.screen{min-height:calc(100dvh - var(--mobile-nav-height));padding:18px 16px calc(var(--mobile-nav-height) + 20px)}.app-shell:has(.teacher-mobile-nav)>.student-detail-shell{padding:0 0 calc(var(--mobile-nav-height) + 12px);grid-template-rows:auto 1fr}.screen :is(.home-header,.detail-header,.profile-page-header,.library-header){gap:12px;min-width:0;margin-bottom:18px}.screen :is(.home-header,.detail-header,.profile-page-header,.workspace-header) h1{overflow-wrap:anywhere;margin:0;font-size:1.45rem;line-height:1.18}.screen :is(.detail-header,.profile-page-header,.workspace-header) p{overflow-wrap:anywhere;margin:6px 0 0;font-size:.875rem;line-height:1.4}.screen :is(input,select,textarea){min-width:0;font-size:16px}.screen .metronome-tempo-setting input{font-size:2rem}.screen :is(button,a){touch-action:manipulation}.screen :is(.secondary-action,.text-button,.delete-icon-button,.ghost-icon,.action-menu-trigger,.back-button){min-height:44px}.screen :is(.ghost-icon,.delete-icon-button,.action-menu-trigger-icon){min-width:44px}.students-screen .home-header{flex-direction:row;align-items:center;margin-bottom:18px}.student-order-selector select{width:min(145px,46vw);min-height:44px;font-size:16px}.student-rows{gap:0}.list-search{color:#687889;background:#fff;border:1px solid #d7dee6;border-radius:10px;align-items:center;gap:8px;min-width:0;padding:0 10px;display:flex}.list-search:focus-within{border-color:#477a9f;box-shadow:0 0 0 2px #477a9f25}.list-search>svg{flex-shrink:0}.list-search input{background:0 0;border:0;outline:0;min-height:44px;padding:8px 0}.list-search input::-webkit-search-cancel-button{display:none}.list-search button{color:#56697a;background:0 0;flex-shrink:0;min-width:44px;min-height:44px;padding:6px}.student-search-toolbar{justify-content:flex-end;align-items:center;gap:8px;margin-bottom:8px;display:flex}.student-search-toolbar>.list-search{flex:1}.student-search-toolbar>button{flex:0 0 44px;height:44px;padding:0}.list-search-empty{color:#717a88;text-align:center;padding:20px 8px;font-size:.9rem}.material-library-filters{grid-template-columns:minmax(0,1fr);gap:8px;margin-bottom:14px;display:grid}.material-library-filters>select{justify-self:end;width:auto;min-height:44px}.material-filter-count{color:#67717e;font-size:.8rem}.student-row-item{border-bottom:1px solid #ecebf1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:14px 0}.student-row-item:has(.student-reorder-handle){grid-template-columns:auto minmax(0,1fr) auto}.student-row-item:has(.student-reorder-handle) .student-row-actions{grid-column:auto}.student-row{width:100%;min-height:48px}.student-name-line,.student-row-summary{overflow-wrap:anywhere;min-width:0}.student-row strong{font-size:1rem;line-height:1.3}.student-row span,.student-week-reschedule{font-size:.8rem;line-height:1.4}.student-row-actions{flex-wrap:nowrap;gap:0}.student-row-actions>.secondary-action{display:none}.screen .action-menu-popover>[role=menuitem]{min-height:44px}.floating-add{bottom:calc(var(--mobile-nav-height) + 16px);width:54px;height:54px;right:16px}.floating-form{bottom:calc(var(--mobile-nav-height) + 12px);max-height:calc(100dvh - var(--mobile-nav-height) - 28px);z-index:26;overflow-y:auto}.teacher-profile-form{top:16px}.agenda-undo{bottom:calc(var(--mobile-nav-height) + 12px)}.teacher-profile-page-form{max-width:100%}.teacher-editor-screen .manual-editor-stage{min-height:calc(100dvh - var(--mobile-nav-height) - 140px)}.teacher-uploaded-materials{gap:16px}.teacher-materials-header p,.teacher-materials-header>div>span{display:none}.screen .teacher-materials-header{flex-direction:row;align-items:center;margin:0}.teacher-materials-header>button{min-height:44px;padding-inline:10px;font-size:.8rem}.teacher-upload-library{box-shadow:none;border:0;border-radius:0;padding:0}.teacher-upload-library>header h2{font-size:1rem}.teacher-upload-library>header p{font-size:.8rem}.uploaded-material-grid{grid-template-columns:minmax(0,1fr)}.uploaded-material-card{grid-template-columns:56px minmax(0,1fr);align-items:start;gap:10px;padding:12px}.uploaded-material-card>:is(.uploaded-material-image,.uploaded-material-pdf,.uploaded-material-empty-preview,.uploaded-material-link-preview){width:56px;height:56px;min-height:0;padding:8px}.uploaded-material-card>.uploaded-material-image{padding:0}.uploaded-material-card>.uploaded-material-link-preview{justify-content:center;display:flex}.uploaded-material-card .uploaded-material-link-preview>span,.uploaded-material-card .uploaded-material-link-preview>svg:last-child,.uploaded-material-card .uploaded-resource-placeholder-title>strong{display:none}.uploaded-material-card .uploaded-resource-placeholder-title{padding:4px}.uploaded-material-card p{overflow-wrap:anywhere;-webkit-line-clamp:unset;display:block;overflow:visible}.uploaded-material-card>.uploaded-material-audio,.uploaded-material-actions{grid-column:1/-1}.uploaded-material-card:has(.uploaded-material-audio)>.uploaded-material-card-copy{grid-column:1/-1}.uploaded-material-primary-actions{flex-wrap:wrap}.uploaded-material-action,.uploaded-material-delete-action{min-width:44px;min-height:44px}.billing-page-heading h1{font-size:1.45rem}.billing-period-bar{gap:12px;margin-top:18px}.billing-period-copy strong{font-size:1rem}.billing-period-copy span,.billing-summary,.billing-explanation{font-size:.82rem}.billing-explanation{margin:18px 0;line-height:1.45}.teacher-upload-library[hidden]{display:none}.teacher-upload-panel{border:0;padding:0}.teacher-upload-panel>header{align-items:center;gap:10px}.teacher-upload-panel>header h2{font-size:1.05rem}.teacher-upload-panel>header p,.upload-details-section>header,.upload-source-options small,.upload-audience-modes small,.upload-dropzone-copy>strong,.upload-dropzone-copy>.upload-dropzone-icon{display:none}.uploaded-material-form{gap:16px}.upload-source-options{grid-template-columns:repeat(2,minmax(0,1fr))}.upload-source-options>label,.upload-audience-modes>label{gap:8px;min-height:44px;padding:10px}.upload-source-options strong,.upload-audience-modes strong{overflow-wrap:anywhere;font-size:.875rem}.upload-dropzone{min-height:0;padding:14px}.upload-dropzone-copy{gap:8px}.upload-dropzone-copy>small{font-size:.75rem;line-height:1.4}.upload-form-section{padding-top:14px}.upload-description-field textarea{min-height:68px}.upload-student-list>label{min-height:44px}.upload-student-list strong,.upload-selected-file-copy strong{overflow-wrap:anywhere}.upload-form-actions{bottom:var(--mobile-nav-height,0px);z-index:2;background:#fff;border-top:1px solid #ecebf1;padding:10px 0;position:sticky}.material-upload-dialog .upload-form-actions{bottom:0}.upload-form-actions>button{flex:auto;min-height:44px}}
