:root{--font-sans:"Noto Sans KR", sans-serif;--font-serif:"Noto Serif KR", serif;--text-xs:12px;--text-sm:13px;--text-body:14.5px;--text-label:13px;--text-list-title:15px;--text-section-title:15px;--text-card-title:17px;--text-page-title:22px;--text-stat:28px;--text-stat-compact:24px;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--leading-tight:1.3;--leading-control:1.4;--leading-body:1.5;--leading-relaxed:1.65;--paper:#f6f1e6;--paper-card:#fffdf8;--paper-line:#ded2b8;--ink:#22303f;--ink-soft:#5b6b7c;--steel:#3b5b7a;--steel-soft:#3b5b7a1a;--red:#c23b22;--red-soft:#c23b221a;--status-success:#15803d;--status-success-soft:#dcfce7;--status-warning:#92400e;--status-warning-soft:#fef3c7;--status-danger:#b91c1c;--status-danger-soft:#fee2e2;--chart-submission:#3b6fa5;--chart-accuracy:#d97a8a;--chart-grid:#00000017;--chart-axis:#777;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--radius-control:8px;--radius:10px;--radius-panel:12px;--content-width:920px;--control-height:40px;--touch-target:44px;--card-shadow:0 1px 2px #22303f0a}*{box-sizing:border-box}html,body{max-width:100%;margin:0;padding:0;overflow-x:clip}body{background-color:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:var(--text-body);font-weight:var(--weight-regular);min-height:100vh;line-height:var(--leading-body);overflow-wrap:break-word;background-image:url(/assets/images/login-background.png);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed}img,video,canvas,iframe{max-width:100%}h1,h2,h3,.serif{font-family:var(--font-serif)}h1,h2,h3{color:var(--ink);line-height:var(--leading-tight)}h1{font-size:var(--text-page-title);font-weight:700}h2{font-size:var(--text-card-title);font-weight:700}h3{font-size:var(--text-section-title);font-weight:700}.type-page-title{font-family:var(--font-serif);font-size:var(--text-page-title);font-weight:var(--weight-bold);line-height:var(--leading-tight)}.type-card-title,.type-section-title{font-family:var(--font-serif);font-weight:var(--weight-bold);line-height:var(--leading-tight)}.type-card-title{font-size:var(--text-card-title)}.type-section-title{font-size:var(--text-section-title)}.type-body{font-size:var(--text-body);line-height:var(--leading-body)}.type-secondary,.type-meta{color:var(--ink-soft);line-height:var(--leading-body)}.type-secondary{font-size:var(--text-sm)}.type-meta{font-size:var(--text-xs)}.type-stat{font-family:var(--font-sans);font-size:var(--text-stat);font-weight:var(--weight-bold);line-height:1.1}table{font-family:var(--font-sans);font-size:var(--text-sm);line-height:var(--leading-body)}th{font-weight:var(--weight-bold)}td{font-weight:var(--weight-regular)}#app{width:100%;max-width:var(--content-width);min-width:0;margin:0 auto;padding:28px 20px 80px}#app>*{min-width:0;max-width:100%}a{color:var(--steel)}button{font-family:var(--font-sans);font-size:inherit;line-height:inherit;cursor:pointer;touch-action:manipulation;max-width:100%}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--steel);outline-offset:2px}.stamp{border:3px solid var(--red);width:52px;height:52px;color:var(--red);font-family:var(--font-serif);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;font-weight:900;display:flex;transform:rotate(-6deg);box-shadow:inset 0 0 0 2px #c23b2240}.brand{align-items:center;gap:14px;min-width:0;margin-bottom:6px;display:flex}.brand-text{min-width:0}.brand-text h1{font-size:var(--text-page-title);font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:-.3px;margin:0}.brand-text p{font-size:var(--text-sm);line-height:var(--leading-body);color:var(--ink-soft);margin:2px 0 0}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:22px;display:flex}.who{text-align:right;font-size:var(--text-sm);line-height:var(--leading-body);color:var(--ink-soft);min-width:0}.who b{color:var(--ink);font-size:var(--text-list-title);font-weight:var(--weight-bold);display:block}.nav{border-bottom:2px solid var(--paper-line);flex-wrap:wrap;align-items:stretch;gap:8px;margin-bottom:22px;display:flex}.nav button{font-size:14px;line-height:var(--leading-control);color:var(--ink-soft);min-height:var(--control-height);white-space:nowrap;background:0 0;border:none;border-bottom:3px solid #0000;padding:10px 14px;font-weight:500}.nav button.active{color:var(--red);border-bottom-color:var(--red);font-weight:700}.nav .spacer{flex:1}.nav .logout{color:var(--ink-soft);font-size:var(--text-sm)}.card{background:var(--paper-card);border:1px solid var(--paper-line);border-radius:var(--radius);padding:var(--space-5) var(--space-6);box-shadow:var(--card-shadow);min-width:0;margin-bottom:16px}.card h2{font-size:var(--text-card-title);font-weight:var(--weight-bold);line-height:var(--leading-tight);margin:0 0 var(--space-3)}.card h3{font-size:var(--text-section-title);font-weight:var(--weight-bold);line-height:var(--leading-tight);margin:0 0 var(--space-3)}.row{gap:var(--space-2);flex-wrap:wrap;align-items:center;min-width:0;display:flex}.toolbar{justify-content:space-between;align-items:flex-end;gap:var(--space-3);min-width:0;margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.toolbar>*{min-width:0}.surface-panel{min-width:0;padding:var(--space-4);border:1px solid var(--paper-line);border-radius:var(--radius-panel);background:#ffffff80}label.field{gap:var(--space-2);min-width:0;margin-bottom:var(--space-4);font-size:var(--text-label);font-weight:var(--weight-medium);line-height:var(--leading-control);color:var(--ink-soft);flex-direction:column;display:flex}label.field[hidden]{display:none}label.field>span{margin:0;display:block}input:not([type]),input[type=text],input[type=email],input[type=password],input[type=search],input[type=tel],input[type=date],input[type=time],input[type=number],input[type=file],textarea,select{width:100%;max-width:100%;min-height:var(--control-height);border:1px solid var(--paper-line);border-radius:var(--radius-control);line-height:var(--leading-control);color:var(--ink);background:#fff;padding:9px 11px;font-family:var(--font-sans)!important;font-size:var(--text-body)!important;font-weight:var(--weight-regular)!important}input::placeholder,textarea::placeholder{color:color-mix(in srgb, var(--ink-soft) 72%, transparent)}textarea{resize:vertical;min-height:64px}.btn{justify-content:center;align-items:center;gap:var(--space-2);overflow-wrap:anywhere;max-width:100%;min-height:var(--control-height);border-radius:var(--radius-control);border:1px solid var(--red);background:var(--red);color:#fff;font-family:var(--font-sans);line-height:var(--leading-control);padding:9px 16px;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s,transform .15s;display:inline-flex;font-size:14px!important;font-weight:var(--weight-bold)!important}.btn.secondary{color:var(--steel);border-color:var(--steel);background:0 0}.btn.ghost{color:var(--ink-soft);border-color:var(--paper-line);background:0 0;font-weight:var(--weight-medium)!important}.btn.danger{background:var(--status-danger);border-color:var(--status-danger);color:#fff}.btn.small{min-height:36px;padding:5px 10px;font-size:var(--text-sm)!important}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.small.ai-file-apply-btn{font-size:var(--text-xs)!important}@media (hover:hover){.btn:not(:disabled):hover{filter:brightness(.96)}.btn.secondary:not(:disabled):hover{background:var(--steel-soft)}.btn.ghost:not(:disabled):hover{background:#22303f0d}}.btn:not(:disabled):active{transform:translateY(1px)}.list-item{border-bottom:1px solid var(--paper-line);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:14px 4px;display:flex}.list-item>*{min-width:0}.list-item:last-child{border-bottom:none}.list-item:hover{background:var(--steel-soft)}.list-item .title{font-weight:var(--weight-bold);font-size:var(--text-list-title);line-height:var(--leading-control)}.list-item .meta{font-size:var(--text-sm);line-height:var(--leading-body);color:var(--ink-soft);margin-top:3px}.assignment-list-search{max-width:520px;margin-top:var(--space-4)}.assignment-list-filter-grid{gap:var(--space-4);margin-top:var(--space-4);margin-bottom:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}.assignment-list-filter-section,.assignment-list-filter-grid .field{min-width:0;margin:0}.assignment-list-filter-section{gap:var(--space-2);display:grid}.assignment-list-filter-label{color:var(--ink);font-size:var(--text-label);font-weight:var(--weight-bold);line-height:var(--leading-control)}.assignment-list-filter-chips{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.assignment-list-filter-chips .assignment-filter-chip{border-color:var(--paper-line);background:var(--paper-card);color:var(--ink-soft);margin:0}.assignment-list-filter-chips .assignment-filter-chip:hover{border-color:var(--steel);background:var(--steel-soft);color:var(--steel)}.assignment-list-filter-chips .assignment-filter-chip.active,.assignment-list-filter-chips .assignment-filter-chip.active:hover{border-color:var(--steel);background:var(--steel);color:#fff}.assignment-list-filter-grid .assignment-list-search{max-width:none;margin:0}.assignment-list-summary{margin-bottom:var(--space-3);color:var(--ink-soft);font-size:var(--text-sm);line-height:var(--leading-body)}.assignment-list-items{min-width:0}.assignment-search-empty{padding-block:var(--space-8)}.assignment-pagination{justify-content:center;align-items:center;gap:var(--space-2);min-width:0;margin-top:var(--space-4);flex-wrap:wrap;display:flex}.assignment-pagination-button{min-width:var(--control-height)}.btn.ghost.assignment-pagination-button.active{border-color:var(--steel);background:var(--steel);color:#fff}@media (hover:hover){.btn.ghost.assignment-pagination-button.active:not(:disabled):hover{background:var(--steel)}}@media (width<=600px){.assignment-list-search{max-width:none}.assignment-list-filter-grid{gap:var(--space-3)}.assignment-list-filter-chips .assignment-filter-chip{min-height:var(--touch-target)}.assignment-list-summary{white-space:normal}.assignment-pagination-button{min-height:var(--touch-target)}}.badge{font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--weight-bold);line-height:var(--leading-control);white-space:nowrap;border-radius:20px;justify-content:center;align-items:center;padding:4px 10px;display:inline-flex}.status{font-family:var(--font-sans);font-size:var(--text-xs);font-weight:var(--weight-bold);line-height:var(--leading-control);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding:4px 10px;display:inline-flex}.badge.done{background:var(--status-success-soft);color:var(--status-success)}.badge.pending{background:var(--status-warning-soft);color:var(--status-warning)}.status-success{background:var(--status-success-soft);color:var(--status-success)}.status-warning{background:var(--status-warning-soft);color:var(--status-warning)}.status-danger{background:var(--status-danger-soft);color:var(--status-danger)}.status-neutral{background:var(--steel-soft);color:var(--steel)}.problem-block{border:1px solid var(--paper-line);border-radius:var(--radius-control);background:#fff;min-width:0;margin-bottom:12px;padding:14px 16px}.problem-block .phead{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.student-solve-problem{gap:var(--space-2);display:grid}.student-solve-problem .phead{gap:var(--space-2);flex-wrap:wrap;min-width:0;margin-bottom:0}.student-answer-control{min-width:0;overflow-y:auto}.student-answer-editable{height:var(--control-height);min-height:var(--control-height);resize:vertical}.student-answer-readonly,.student-answer-editable[readonly]{min-height:var(--touch-target);background:var(--steel-soft);color:var(--ink-soft);resize:none}@media (width<=600px){.student-solve-problem{padding:var(--space-3)}.student-answer-editable{height:var(--touch-target);min-height:var(--touch-target)}}.phead .pnum{font-family:var(--font-serif);color:var(--red);font-weight:700}.prow{align-items:center;gap:8px;margin-bottom:8px;display:flex}.prow .pnum-badge{background:var(--steel-soft);width:26px;height:26px;color:var(--steel);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12.5px;font-weight:700;display:flex}.prow .pnum-input{flex-shrink:0;width:110px}.prow .pans-input{flex:1}.prow .btn.small{flex-shrink:0;padding:8px 11px}.mark{font-family:var(--font-serif);color:var(--red);text-align:center;min-width:26px;font-size:20px;font-weight:900;display:inline-block}.mark.slash{transform:rotate(-6deg)}.mark.dash{color:var(--ink-soft);font-weight:400}.tag{font-family:var(--font-sans);font-size:var(--text-xs);line-height:var(--leading-control);background:var(--red-soft);color:var(--red);border-radius:10px;margin-left:6px;padding:2px 8px;font-weight:700;display:inline-block}.empty{text-align:center;color:var(--ink-soft);padding:40px 10px}.empty .stamp{opacity:.5;margin:0 auto 14px}.login-wrap{width:70%;max-width:480px;margin:60px auto 0}body.login-page{background-image:url(/assets/images/login-background.png);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed}body.app-page,body.maintenance-page{background-image:url(/assets/images/app-background.png);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed}body.maintenance-page #app{min-height:100dvh;padding-block:var(--space-8);place-items:center;display:grid}.maintenance-wrap{width:100%;max-width:560px}.maintenance-card{padding:var(--space-10) var(--space-8);text-align:center;margin:0}.maintenance-stamp{margin:0 auto var(--space-5)}.maintenance-card h1{margin:0 0 var(--space-4)}.maintenance-card p{color:var(--ink-soft);line-height:var(--leading-relaxed);margin:0}.initial-loading-screen{z-index:2000;background-color:var(--paper);opacity:1;background-image:url(/assets/images/app-background.png);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;transition:opacity .22s,transform .22s;position:fixed;inset:0;transform:translateY(0)}body.initial-loading-active #app{opacity:0;transition:opacity .22s ease-out,transform .22s ease-out;transform:translateY(6px)}body.initial-screen-transition .initial-loading-screen{opacity:0;pointer-events:none;transform:translateY(-4px)}body.initial-screen-transition #app{opacity:1;transform:translateY(0)}body.login-transition-out #app{opacity:0;pointer-events:none;transition:opacity .16s ease-in,transform .16s ease-in;transform:translateY(-4px)}body.app-transition-enter #app{opacity:0;pointer-events:none;transition:opacity .2s ease-out,transform .2s ease-out;transform:translateY(6px)}body.app-transition-enter.app-transition-enter-active #app{opacity:1;transform:translateY(0)}body.logout-transition-out #app{opacity:0;pointer-events:none;transition:opacity .12s ease-in,transform .12s ease-in;transform:translateY(-4px)}body.logout-transition-enter #app{opacity:0;pointer-events:none;transition:opacity .18s ease-out,transform .18s ease-out;transform:translateY(6px)}body.logout-transition-enter.logout-transition-enter-active #app{opacity:1;transform:translateY(0)}.app-tab-content.app-tab-transition-enter{opacity:0;transition:opacity .2s ease-out,transform .2s ease-out;transform:translateY(6px)}.app-tab-content.app-tab-transition-enter.app-tab-transition-enter-active{opacity:1;transform:translateY(0)}.app-tab-content.teacher-detail-transition-out{opacity:0;transition:opacity .16s ease-in,transform .16s ease-in;transform:translateY(-4px)}.app-tab-content.teacher-detail-transition-enter{opacity:0;transition:opacity .2s ease-out,transform .2s ease-out;transform:translateY(6px)}.app-tab-content.teacher-detail-transition-enter.teacher-detail-transition-enter-active{opacity:1;transform:translateY(0)}body.teacher-detail-transition-running .nav,body.teacher-detail-transition-running .app-tab-content{pointer-events:none}@media (prefers-reduced-motion:reduce){body.login-transition-out #app,body.app-transition-enter #app,body.app-transition-enter.app-transition-enter-active #app,body.initial-loading-active #app,body.initial-screen-transition #app,.initial-loading-screen,body.initial-screen-transition .initial-loading-screen,body.logout-transition-out #app,body.logout-transition-enter #app,body.logout-transition-enter.logout-transition-enter-active #app,.app-tab-content.app-tab-transition-out,.app-tab-content.app-tab-transition-enter,.app-tab-content.app-tab-transition-enter.app-tab-transition-enter-active,.app-tab-content.teacher-detail-transition-out,.app-tab-content.teacher-detail-transition-enter,.app-tab-content.teacher-detail-transition-enter.teacher-detail-transition-enter-active{opacity:1;transition:none;transform:none}}.teacher-profile-email-field .teacher-profile-email-input[readonly]{border-color:var(--paper-line);background:var(--steel-soft);color:var(--ink-soft);cursor:default}.teacher-profile-email-field .teacher-profile-email-input[readonly]:focus-visible{border-color:var(--paper-line);outline:1px solid var(--paper-line);outline-offset:1px}.role-group{gap:16px;margin-bottom:6px;display:flex}.role-group label{align-items:center;gap:6px;font-size:14px;display:flex}.divider{text-align:center;color:var(--ink-soft);margin:20px 0;font-size:12px;position:relative}.divider:before,.divider:after{content:"";background:var(--paper-line);width:40%;height:1px;position:absolute;top:50%}.divider:before{left:0}.divider:after{right:0}.overlay{z-index:1000;background:#22303f8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.overlay-inner{border-radius:var(--radius-panel);background:#fff;flex-direction:column;width:100%;min-width:0;max-width:800px;max-height:90vh;display:flex;overflow:hidden}.overlay-head{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--paper-line);font-size:var(--text-body);font-weight:var(--weight-bold);line-height:var(--leading-control);display:flex}.overlay-head>span{overflow-wrap:anywhere;min-width:0}.overlay-head>.btn{flex-shrink:0}.overlay-body{flex:1;padding:16px;overflow:auto}.overlay-inner>.btn{align-self:flex-start;margin:0 16px 16px}.hint{font-size:var(--text-xs);line-height:var(--leading-body);color:var(--ink-soft);margin:0 0 var(--space-3);overflow-wrap:anywhere}.btn+.hint{margin-top:var(--space-2)}.row>.hint,.toolbar>.hint{margin:0}.form-message,[id$=Error],[id$=Success]{width:100%;max-width:100%;font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-body);text-align:left;overflow-wrap:anywhere;border-left:3px solid;padding:1px 0 1px 10px;margin:var(--space-2) 0 var(--space-3)!important}.form-error,[id$=Error]{color:var(--status-danger)!important}.form-warning{color:var(--status-warning)!important}.form-success,[id$=Success]{color:var(--status-success)!important}.form-info{color:var(--steel)!important}.form-helper{margin:var(--space-1) 0 var(--space-3);color:var(--ink-soft);font-size:var(--text-sm);font-weight:var(--weight-regular);line-height:var(--leading-body);overflow-wrap:anywhere;border-left:0;padding:0}.privacy-policy-wrap{width:100%;max-width:760px;margin-top:var(--space-8)}.privacy-policy-document{box-shadow:none;font-size:var(--text-body);line-height:var(--leading-relaxed);word-break:keep-all;overflow-wrap:anywhere;padding:30px 34px}.privacy-policy-back{margin-bottom:var(--space-5)}.privacy-policy-document>h2:first-of-type{margin:0 0 var(--space-2);font-size:var(--text-page-title);line-height:var(--leading-tight)}.privacy-policy-document h3{margin:var(--space-8) 0 var(--space-3);font-size:var(--text-card-title);line-height:var(--leading-tight)}.privacy-policy-document h4{margin:var(--space-5) 0 var(--space-2);color:var(--ink);font-family:var(--font-sans);font-size:var(--text-list-title);font-weight:var(--weight-bold);line-height:var(--leading-control)}.privacy-policy-document p{margin:0 0 var(--space-4);line-height:var(--leading-relaxed)}.privacy-policy-document>.hint{margin:0 0 var(--space-6);font-size:var(--text-sm);line-height:var(--leading-body)}.privacy-policy-document ul,.privacy-policy-document ol{margin:var(--space-2) 0 var(--space-5);padding-left:24px}.privacy-policy-document li{margin-bottom:var(--space-2);padding-left:var(--space-1);line-height:var(--leading-relaxed)}.privacy-policy-document li:last-child{margin-bottom:0}.privacy-policy-document li>ul,.privacy-policy-document li>ol{margin:var(--space-2) 0;padding-left:var(--space-5)}.privacy-policy-document strong{font-weight:var(--weight-bold)}.filebox{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.filebox .fname{font-size:var(--text-sm);line-height:var(--leading-body);color:#000;overflow-wrap:anywhere;min-width:0;font-weight:600}footer.foot{text-align:center;font-size:var(--text-xs);line-height:var(--leading-body);color:var(--ink-soft);margin-top:40px}.loading{text-align:center;color:var(--ink-soft);padding:80px 10px}body.app-navigation-pending:after{content:"";z-index:1000;background:var(--red);height:3px;position:fixed;top:0;left:0;right:0}body.app-navigation-pending #app{cursor:progress}.tag.correct{color:var(--status-success);background:var(--status-success-soft)}.tag.wrong{color:var(--status-danger);background:var(--status-danger-soft)}.tag.pending{color:var(--status-warning);background:var(--status-warning-soft)}.mark{color:var(--status-success)}.mark.slash{color:var(--status-danger)}.mark.dash{color:var(--status-warning)}.result-row{border:1px solid var(--paper-line);background:#fff;border-radius:9px;align-items:stretch;gap:0;margin:10px 0;padding:0;display:flex;overflow:hidden}.result-row .mark{width:52px;min-width:52px;font-family:var(--font-serif);color:#15803d;text-align:center;background:#f0f9f2;justify-content:center;align-items:center;margin:0;font-size:24px;font-weight:900;display:flex}.result-row .mark.slash{color:#b91c1c;background:#fff1f1;transform:none}.result-row .mark.dash{color:#92400e;background:#fff8e7;font-weight:700}.result-row .rbody{flex:1;min-width:0;padding:14px 16px}.result-row .rq{font-size:var(--text-list-title);font-weight:var(--weight-bold);line-height:var(--leading-control);color:var(--ink);justify-content:space-between;align-items:center;gap:10px;margin-bottom:9px;display:flex}.result-row .ra{font-size:var(--text-sm);line-height:var(--leading-body);color:var(--ink-soft);gap:8px;margin-top:4px;display:flex}.result-row .tag{font-size:var(--text-xs);font-weight:var(--weight-bold);border-radius:999px;flex-shrink:0;margin-left:auto;padding:3px 9px}.result-row .tag.correct{color:var(--status-success);background:var(--status-success-soft)}.result-row .tag.wrong{color:var(--status-danger);background:var(--status-danger-soft)}.result-row .tag.pending{color:var(--status-warning);background:var(--status-warning-soft)}.student-management-card{padding-bottom:var(--space-5)}.student-management-notice{margin-bottom:var(--space-4);padding:var(--space-3) 14px;border:1px solid var(--paper-line);border-radius:var(--radius);background:#ffffff7a}.student-search-field{max-width:440px}.student-status-tabs{gap:var(--space-1);margin:var(--space-4) 0 var(--space-5);padding:var(--space-1);border:1px solid var(--paper-line);border-radius:var(--radius);background:#22303f09;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.student-status-tabs button{min-width:0;min-height:var(--control-height);border-radius:var(--radius-control);white-space:normal;overflow-wrap:anywhere;border:0;padding:9px 10px}.student-status-tabs button.active{background:var(--paper-card);box-shadow:var(--card-shadow);border-bottom-color:#0000}.student-management-list-wrap{min-width:0}.academy-filter-tabs{flex-wrap:wrap;align-items:center;gap:8px;margin:20px 0 18px;display:flex}.class-filter-tabs{margin-top:var(--space-2)}.academy-filter-btn{color:#5e6b7c;height:auto;min-height:36px;font-family:var(--font-sans);font-size:14px;font-weight:var(--weight-bold);white-space:normal;overflow-wrap:anywhere;cursor:pointer;background:#fff;border:1px solid #ddd8cd;border-radius:999px;padding:7px 16px;line-height:1.4;transition:background .15s,border-color .15s,color .15s,transform .15s}.academy-filter-btn:hover{background:#f8f6f1;border-color:#cfc7b9}.academy-filter-btn.active{color:#fff;background:#253447;border-color:#253447}.academy-filter-btn:active{transform:scale(.97)}.student-list-summary{margin-bottom:var(--space-3);color:var(--ink-soft);font-size:var(--text-sm);line-height:var(--leading-body)}.pending-bulk-actions{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-3);border:1px solid var(--paper-line);border-radius:var(--radius);background:#ffffff7a;grid-template-columns:minmax(0,1fr) auto;display:grid}.affiliation-page-selection-bar{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-2) var(--space-3);border:1px solid var(--paper-line);border-radius:var(--radius);background:#ffffff6b;display:flex}.affiliation-page-selection-control,.affiliation-student-card-content,.affiliation-student-checkbox{align-items:center;display:flex}.affiliation-page-selection-control{min-height:var(--control-height);gap:var(--space-2);font-weight:var(--weight-bold);cursor:pointer}.affiliation-page-selection-control input,.affiliation-student-checkbox input{width:20px;height:20px;accent-color:var(--steel);flex:none;margin:0}:is(.affiliation-page-selection-control:has(input:disabled),.affiliation-student-checkbox:has(input:disabled)){cursor:not-allowed;opacity:.6}.affiliation-selection-count{color:var(--ink-soft);font-size:var(--text-sm);line-height:var(--leading-body);white-space:nowrap}.affiliation-bulk-actions{align-items:end;gap:var(--space-3);margin-bottom:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.affiliation-bulk-heading{gap:var(--space-1);grid-column:1/-1;align-self:center;min-width:0;display:grid}.affiliation-bulk-heading .hint{margin:0}.affiliation-bulk-field{min-width:0;margin:0!important}.affiliation-bulk-submit{white-space:nowrap}.affiliation-bulk-buttons{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;grid-column:1/-1;display:flex}.affiliation-bulk-buttons .btn{min-width:0}.pending-bulk-selection,.pending-page-selection-control,.pending-bulk-buttons,.pending-student-card-content{align-items:center;display:flex}.pending-bulk-selection{gap:var(--space-4);flex-wrap:wrap;min-width:0}.pending-page-selection-control{min-height:var(--control-height);gap:var(--space-2);font-weight:var(--weight-bold);cursor:pointer}.pending-page-selection-control input,.pending-student-checkbox input{width:20px;height:20px;accent-color:var(--steel);flex:none;margin:0}:is(.pending-page-selection-control:has(input:disabled),.pending-student-checkbox:has(input:disabled)){cursor:not-allowed;opacity:.6}.pending-selection-count{color:var(--ink-soft);font-size:var(--text-sm);line-height:var(--leading-body);white-space:nowrap}.pending-bulk-buttons{gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end}.pending-student-card-content{gap:var(--space-3);flex:auto;align-items:flex-start;min-width:0}.pending-student-card-content .student-card-main{flex:auto}.pending-student-assignment-controls{max-width:520px}.pending-student-card-action{flex-wrap:wrap}.affiliation-student-card-content{gap:var(--space-3);flex:auto;align-items:flex-start;min-width:0}.affiliation-student-card-content .student-card-main{flex:auto}.affiliation-student-checkbox{min-width:var(--control-height);min-height:var(--control-height);cursor:pointer;justify-content:center}.pending-student-checkbox{min-width:var(--control-height);min-height:var(--control-height);cursor:pointer;justify-content:center;align-items:center;display:inline-flex}.student-list{border-top:0;gap:10px;min-width:0;display:grid}.student-pagination{justify-content:center;align-items:center;gap:var(--space-2);min-width:0;margin-top:var(--space-4);flex-wrap:wrap;display:flex}.student-pagination-button{min-width:var(--control-height)}.btn.ghost.student-pagination-button.active{border-color:var(--steel);background:var(--steel);color:#fff}@media (hover:hover){.btn.ghost.student-pagination-button.active:not(:disabled):hover{background:var(--steel)}}.student-card{border:1px solid var(--paper-line);border-radius:var(--radius);cursor:pointer;background:#ffffff6b;justify-content:space-between;align-items:center;gap:20px;min-width:0;min-height:108px;padding:16px;transition:background .15s;display:flex}.student-card:hover{background:#fff}.student-card-main{min-width:0}.student-card-name{font-size:17px;font-weight:var(--weight-bold);color:var(--ink);overflow-wrap:anywhere;align-items:center;gap:7px;display:flex}.student-icon{font-size:17px}.student-card-meta{font-size:var(--text-sm);line-height:var(--leading-body);color:var(--ink-soft);overflow-wrap:anywhere;margin-top:5px}.meta-dot{margin:0 4px}.student-card-bottom{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.student-affiliation-controls{gap:var(--space-3);margin-top:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.student-affiliation-controls .field{min-width:0;margin:0}.academy-badge{background:var(--steel-soft);max-width:100%;min-height:25px;color:var(--steel);font-size:var(--text-xs);font-weight:var(--weight-bold);white-space:normal;overflow-wrap:anywhere;border-radius:6px;align-items:center;padding:3px 9px;line-height:1.4;display:inline-flex}.academy-badge.unassigned{color:#887966;background:#f4f1eb}.student-joined{font-size:var(--text-xs);line-height:var(--leading-body);color:var(--ink-soft)}.student-card-action{align-items:center;gap:var(--space-2);flex-wrap:wrap;flex-shrink:0;display:flex}.student-status-btn{min-height:36px;color:var(--ink-soft);border-color:var(--paper-line);white-space:nowrap;background:0 0;font-weight:var(--weight-medium)!important}.student-card-arrow{color:#b4b6ba;font-size:25px;line-height:1;transition:transform .15s}.class-management-card{margin-top:var(--space-4)}.academy-class-management-sections{gap:var(--space-5);display:grid}.organization-management-section h3,.organization-management-section>.hint{margin-top:0}.organization-management-list{gap:var(--space-2);display:grid}.organization-management-list .list-item{padding:var(--space-3);border:1px solid var(--paper-line);border-radius:var(--radius-control);background:var(--paper-card);cursor:default}.organization-management-info,.organization-management-edit-input{min-width:0}.organization-management-info{flex:auto}.organization-management-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex:none;display:flex}.organization-management-edit-input{flex:auto;width:auto;margin:0}.academy-management-toolbar{margin-top:var(--space-4)}.class-management-toolbar{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto var(--touch-target);column-gap:var(--space-3);margin-top:var(--space-3);align-items:stretch;row-gap:5px;display:grid}.class-management-label{color:var(--ink-soft);font-size:var(--text-label);font-weight:var(--weight-medium);line-height:var(--leading-control);grid-area:1/1}.class-management-input{width:100%;height:var(--touch-target);min-height:var(--touch-target);grid-area:2/1;margin:0}.class-management-add-button{height:var(--touch-target);min-height:var(--touch-target);grid-area:2/2;align-self:stretch;margin:0}@media (width<=600px){.class-management-toolbar{grid-template-columns:minmax(0,1fr);grid-template-rows:auto var(--touch-target) var(--touch-target)}.class-management-label{grid-area:1/1}.class-management-input{grid-area:2/1}.class-management-add-button{width:100%;margin-top:var(--space-2);grid-area:3/1}}.class-management-create-toolbar{margin-top:var(--space-4);justify-content:flex-end;display:flex}.class-management-parent-add-button{margin:0}.class-management-parent-create{margin-top:var(--space-2);padding:var(--space-3);border:1px solid var(--paper-line);border-radius:var(--radius-control);background:var(--steel-soft)}.class-management-create-form{align-items:end;gap:var(--space-3);grid-template-columns:minmax(0,440px) auto;min-width:0;display:grid}.class-management-create-field{min-width:0;margin:0}.class-management-create-field input{width:100%;margin:0}.class-management-create-actions{align-items:center;gap:var(--space-2);display:flex}.class-management-list{gap:var(--space-3);margin-top:var(--space-5)}.class-management-group{border:1px solid var(--paper-line);border-radius:var(--radius-panel);background:var(--paper-card);min-width:0;box-shadow:var(--card-shadow);overflow:hidden}.class-management-row{justify-content:space-between;align-items:center;gap:var(--space-3);cursor:default;min-width:0;display:flex}.class-management-parent-row{padding:var(--space-4)}.class-management-parent-row .title{font-family:var(--font-serif);font-size:var(--text-card-title);font-weight:var(--weight-bold);line-height:var(--leading-tight)}.class-management-parent-row .meta{margin-top:var(--space-1);color:var(--ink-soft);font-size:var(--text-label)}.class-management-child-list{padding:0 var(--space-4);border-top:1px solid var(--paper-line);background:var(--steel-soft)}.class-management-child-create{padding:var(--space-2) var(--space-4) var(--space-3);border-top:1px solid var(--paper-line);background:var(--steel-soft)}.class-management-child-add-button{margin:0}.class-management-child-row{padding:var(--space-2) var(--space-1) var(--space-2) var(--space-3)}.class-management-child-row+.class-management-child-row{border-top:1px solid var(--paper-line)}.class-management-child-row .organization-management-info{align-items:center;gap:var(--space-3);grid-template-columns:minmax(0,1fr) auto;display:grid}.class-management-child-row .title{font-size:var(--text-list-title);font-weight:var(--weight-bold)}.class-management-child-row .meta{color:var(--ink-soft);font-size:var(--text-label);white-space:nowrap}.class-management-row .organization-management-actions{gap:var(--space-1)}.class-management-orphan-group{border-style:dashed}@media (width<=600px){.class-management-parent-row,.class-management-child-row{flex-wrap:wrap;align-items:flex-start}.class-management-parent-row{padding:var(--space-4)}.class-management-child-list{padding:0 var(--space-3)}.class-management-create-toolbar{justify-content:stretch}.class-management-parent-add-button,.class-management-child-add-button{width:100%;min-height:var(--touch-target)}.class-management-create-form{grid-template-columns:minmax(0,1fr)}.class-management-create-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.class-management-create-actions .btn{width:100%;min-height:var(--touch-target)}.class-management-child-create{padding:var(--space-3)}.class-management-child-row{padding:var(--space-3) var(--space-1)}.class-management-row .organization-management-info{flex:180px}.class-management-row .organization-management-actions{flex:0 auto;margin-left:auto;display:flex}.class-management-row .organization-management-actions .btn{width:auto;min-height:var(--touch-target)}.class-management-row.organization-management-edit-row{align-items:stretch}.class-management-row.organization-management-edit-row .organization-management-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin-left:0;display:grid}.class-management-row.organization-management-edit-row .organization-management-actions .btn{width:100%}}.student-report-pdf-settings{align-items:flex-end;gap:var(--space-3);grid-column:1/-1;width:100%;display:flex}.student-report-pdf-settings .student-report-memo{flex:1;min-width:0;margin:0}.student-report-pdf-settings .student-report-actions{flex:none;width:auto;margin:0}.student-report-pdf-settings .student-report-actions .btn{white-space:nowrap;width:auto}.student-compact-row[tabindex]{cursor:pointer}.student-compact-row[tabindex]:hover{background:var(--bg-hover,#f8f5ed)}.student-compact-row[tabindex]:focus-visible{outline:2px solid var(--text-primary,#243140);outline-offset:2px}.student-survey-detail{min-width:0}.student-survey-detail .survey-table-scroll{max-width:100%;overflow-x:auto}@media (width<=600px){.student-report-pdf-settings{flex-direction:column;align-items:stretch}.student-report-pdf-settings .student-report-actions{align-self:flex-end}}.student-report-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-2);border:1px solid var(--paper-line);border-radius:var(--radius);background:#ffffff6b;flex-wrap:wrap;margin-bottom:14px;display:flex}.student-detail-navigation{min-width:0;margin-bottom:var(--space-2);justify-content:flex-start;align-items:center;display:flex}.student-detail-navigation .btn{min-height:var(--control-height)}.student-report-actions .btn{height:var(--touch-target);min-height:var(--touch-target);padding:0 var(--space-4);vertical-align:middle;justify-content:center;align-items:center;margin:0;line-height:1;display:inline-flex}.student-detail-report-card{min-width:0}.student-detail-header{min-width:0;padding-bottom:var(--space-4)!important}.student-detail-header>*{min-width:0}.student-detail-header>div:first-child{flex-direction:column;align-items:flex-start;display:flex}.student-detail-kicker,.student-detail-header>div:first-child>div:first-child{margin:0 0 var(--space-1)!important;font-size:var(--text-xs)!important;font-weight:var(--weight-bold)!important;line-height:var(--leading-control)!important}.student-detail-name,.student-detail-header>div:first-child>h2{margin:0 0 var(--space-2)!important;font-size:var(--text-page-title)!important;font-weight:var(--weight-bold)!important;line-height:var(--leading-tight)!important}.student-detail-meta,.student-detail-header>div:first-child>.hint{font-size:var(--text-sm)!important;font-weight:var(--weight-regular)!important;line-height:var(--leading-body)!important;margin:0!important}.student-detail-meta+.student-detail-meta,.student-detail-header>div:first-child>.hint+.hint{margin-top:var(--space-1)!important}.student-detail-joined,.student-detail-header>.hint{font-size:var(--text-sm)!important;font-weight:var(--weight-regular)!important;line-height:var(--leading-body)!important;margin:0!important}.student-report-controls{align-items:start;gap:var(--space-3) var(--space-4);grid-template-columns:minmax(0,1fr) auto;min-width:0;display:grid;margin-top:var(--space-5)!important}.student-report-controls>.student-report-actions{background:0 0;border:0;grid-area:1/2;align-self:center;margin:0;padding:0}.student-report-control-row{grid-area:1/1;grid-template-columns:minmax(180px,320px);min-width:0;align-items:end!important;gap:var(--space-4)!important;display:grid!important}.student-report-control-row>*{min-width:0}.student-report-range-field{width:100%;max-width:320px}.student-report-granularity{min-width:0}.student-report-granularity-buttons{grid-template-columns:repeat(2,minmax(65px,1fr));gap:6px!important;display:grid!important}.student-report-granularity-buttons .btn{min-height:var(--control-height)}.student-test-mode-buttons{margin-top:var(--space-4);margin-bottom:var(--space-3)}.student-report-custom-range{grid-area:2/1/auto/-1;grid-template-columns:repeat(2,minmax(160px,1fr));max-width:640px;gap:var(--space-3)!important;display:grid!important}.student-report-date-field{min-width:0}.student-report-date-control{min-width:0;position:relative}.student-report-date-display{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;min-height:var(--control-height);border:1px solid var(--paper-line);border-radius:var(--radius-control);color:var(--ink);font-family:var(--font-sans);font-size:var(--text-body);font-weight:var(--weight-regular);font-variant-numeric:tabular-nums;line-height:var(--leading-control);text-align:left;cursor:pointer;background:#fff;padding:9px 11px;display:flex}.student-report-date-label{color:var(--ink-soft);font-size:var(--text-label);font-weight:var(--weight-medium);line-height:var(--leading-control);margin-bottom:5px;display:block}.student-report-date-value{min-width:0}.student-report-date-icon{font-size:var(--text-body);flex:none;line-height:1}.student-report-date-control:focus-within .student-report-date-display{outline:3px solid var(--steel);outline-offset:2px}.student-report-calendar-popup{top:calc(100% + var(--space-2));z-index:40;width:340px;max-width:calc(100vw - 24px);padding:var(--space-4);border:1px solid var(--paper-line);border-radius:var(--radius-panel);background:var(--paper-card);position:absolute;left:0;box-shadow:0 8px 24px #22303f1f}.student-report-calendar-popup.align-end{left:auto;right:0}.student-report-calendar-header{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);grid-template-columns:40px minmax(0,1fr) 40px;display:grid}.student-report-calendar-month-button{border:1px solid var(--paper-line);border-radius:var(--radius-control);background:var(--paper-card);width:40px;height:40px;color:var(--steel);font-family:var(--font-sans);font-size:var(--text-page-title);font-weight:var(--weight-bold);cursor:pointer;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.student-report-calendar-month-button:hover{background:var(--steel-soft)}.student-report-calendar-month-label{color:var(--ink);font-size:var(--text-body);font-weight:var(--weight-bold);line-height:var(--leading-control);text-align:center}.student-report-calendar-weekdays,.student-report-calendar-days{gap:var(--space-1);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.student-report-calendar-weekdays{margin-bottom:var(--space-1)}.student-report-calendar-weekdays>div{padding-bottom:var(--space-1);color:var(--ink-soft);font-size:var(--text-xs);font-weight:var(--weight-bold);line-height:var(--leading-control);text-align:center}.student-report-calendar-weekdays .is-sunday,.student-report-calendar-day.is-sunday{color:var(--red)}.student-report-calendar-weekdays .is-saturday,.student-report-calendar-day.is-saturday{color:var(--steel)}.student-report-calendar-day,.student-report-calendar-blank{min-width:0;min-height:40px}.student-report-calendar-day{border-radius:var(--radius-control);width:100%;color:var(--ink);font-family:var(--font-sans);font-size:var(--text-body);font-weight:var(--weight-regular);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.student-report-calendar-day:hover:not(:disabled){background:var(--steel-soft)}.student-report-calendar-day.is-today:not(.is-selected){border-color:var(--steel)}.student-report-calendar-day.is-selected{border-color:var(--steel);background:var(--steel);color:var(--paper-card);font-weight:var(--weight-bold)}.student-report-calendar-day:disabled{opacity:.35;cursor:not-allowed}.student-learning-period{margin-top:var(--space-1);color:var(--ink-soft);font-size:var(--text-sm);font-weight:var(--weight-regular);line-height:var(--leading-body);overflow-wrap:anywhere}.student-learning-granularity{align-items:center;gap:var(--space-2);min-width:0;margin-top:var(--space-3);flex-wrap:wrap;display:flex}.student-learning-control-label{color:var(--ink-soft);font-size:var(--text-label);font-weight:var(--weight-medium);line-height:var(--leading-control)}.student-learning-granularity .student-report-granularity-buttons{width:auto}.student-learning-granularity .btn.secondary,.student-detail-report-card button[onclick*=changeStudentReportDisplayMode].secondary{background:var(--steel);border-color:var(--steel);color:#fff}@media (hover:hover){.student-detail-report-card .student-learning-granularity .btn.secondary:not(:disabled):hover,.student-detail-report-card button[onclick*=changeStudentReportDisplayMode].secondary:not(:disabled):hover{background:var(--steel);border-color:var(--steel);color:#fff;filter:brightness(.96)}}.student-detail-report-card button[onclick*=changeStudentReportDisplayMode]{min-height:var(--control-height)}.student-detail-report-card button[onclick*=changeStudentReportDisplayMode][onclick*=trend]{order:1}.student-detail-report-card button[onclick*=changeStudentReportDisplayMode][onclick*=calendar]{order:2}.student-report-summary-grid,.student-monthly-summary-grid{min-width:0}.student-report-summary-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:18px;display:grid}.student-monthly-summary-grid{margin-top:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;display:grid}.student-report-summary-grid>div{grid-template-rows:var(--space-6) auto var(--space-6);row-gap:var(--space-1);min-width:0;min-height:108px;padding:var(--space-4);border:1px solid var(--paper-line);border-radius:var(--radius-panel);text-align:center;background:#ffffff6b;align-content:center;justify-items:center;display:grid}.student-monthly-summary-grid>div{border:1px solid var(--paper-line);border-radius:var(--radius-panel);text-align:center;background:#ffffff6b;flex-direction:column;justify-content:center;align-items:center;min-width:0;min-height:108px;padding:14px;display:flex}.student-learning-section{padding-top:var(--space-5);border-top:1px solid var(--paper-line);margin-top:26px}.student-learning-header,.student-learning-calendar-header{flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.student-learning-header{gap:var(--space-3);margin-bottom:var(--space-5)}.student-learning-heading{margin:0 0 var(--space-1)!important}.student-learning-help{margin:var(--space-3) 0 0!important}.student-learning-view-buttons,.student-learning-calendar-actions,.student-learning-calendar-legend{flex-wrap:wrap;display:flex}.student-learning-view-buttons{gap:6px}.student-learning-trend-title{margin:0 0 5px!important}.student-learning-trend-description{margin:0 0 18px!important}.student-learning-calendar-header{margin-bottom:var(--space-4);gap:10px}.student-learning-calendar-header h3{margin:0!important}.student-learning-calendar-actions{gap:var(--space-2)}.student-learning-calendar-legend{margin-top:var(--space-4);gap:10px}.student-learning-monthly-summary{margin-top:var(--space-5);border-top:1px solid var(--paper-line);padding-top:18px}.student-learning-monthly-summary h3{margin:0 0 6px!important}.student-report-chart{width:100%;min-width:0;margin-top:var(--space-4);padding:var(--space-4);border:1px solid var(--paper-line);border-radius:var(--radius-panel);background:#ffffff6b}.student-report-chart-legend{align-items:center;gap:var(--space-4);min-width:0;margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.student-report-chart-legend-item{align-items:center;gap:6px;display:flex}.student-report-chart-legend-line{flex:none;width:18px;height:3px}.student-report-chart-legend-line.submission{background:var(--chart-submission)}.student-report-chart-legend-line.accuracy{background:var(--chart-accuracy)}.student-report-chart-scroll,.student-report-table-scroll,.student-learning-calendar-scroll{overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;width:100%;min-width:0;max-width:100%;overflow:auto hidden}.student-report-chart-scroll,.student-report-table-scroll{padding-bottom:var(--space-2);scrollbar-gutter:stable}.student-report-chart-svg{width:100%;min-width:var(--student-report-chart-min-width);max-width:none;height:auto;display:block}.student-report-table-scroll{border:1px solid var(--paper-line);border-radius:var(--radius-control);background:var(--paper-card);margin-top:18px;padding-bottom:0}.student-report-table-scroll table{border-collapse:collapse;table-layout:fixed;font-variant-numeric:tabular-nums;width:100%;min-width:620px!important}.student-report-table-scroll.student-report-table-scroll th,.student-report-table-scroll.student-report-table-scroll td{vertical-align:middle;text-align:center!important;border-bottom:1px solid var(--paper-line)!important;width:20%!important;padding:10px 12px!important}.student-report-table-scroll th{background:var(--paper);color:var(--ink-soft);font-weight:var(--weight-bold);white-space:nowrap}.student-report-table-scroll th:first-child,.student-report-table-scroll td:first-child,.student-report-table-scroll th:not(:first-child),.student-report-table-scroll td:not(:first-child){white-space:nowrap}.student-report-table-scroll tbody tr:last-child td{border-bottom:0!important}.assignment-editor{min-width:0}.assignment-title-field{max-width:640px}.assignment-deadline-toggle{min-height:calc(var(--text-body) * var(--leading-control));align-items:center;gap:var(--space-2);cursor:pointer;font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--leading-control);margin:0;display:flex;font-weight:var(--weight-bold)!important}.assignment-deadline-toggle>span{line-height:var(--leading-tight);margin:0;padding:0;display:block}.assignment-deadline-toggle input[type=checkbox]{flex:none;width:18px;height:18px;margin:0}.assignment-recipient-settings,.assignment-recipient-settings-heading,.assignment-recipient-settings-group{gap:var(--space-2);grid-template-columns:minmax(0,1fr);min-width:0;display:grid}.assignment-recipient-settings{gap:var(--space-4)}.assignment-recipient-settings-heading>h3,.assignment-recipient-settings-heading>.hint,.assignment-recipient-settings-group>h4,.assignment-recipient-settings-group>.hint{margin:0}.assignment-deadline-controls{grid-template-columns:repeat(2,minmax(0,max-content));min-width:0;align-items:end!important;gap:var(--space-6)!important;display:grid!important}.assignment-deadline-group,.assignment-date-controls,.assignment-time-controls{min-width:0}.assignment-date-controls input[type=text]{grid-column:1/-1;min-width:0}.assignment-picker-control{grid-column:1/-1;width:100%;min-width:0;position:relative}.assignment-picker-control .assignment-picker-value{min-width:0;padding-right:calc(var(--control-height) + var(--space-2))}.assignment-picker-popup{z-index:10000;width:min(360px,100vw - 16px);padding:var(--space-3);gap:var(--space-3);background:var(--paper-card);border:1px solid var(--paper-line);border-radius:var(--radius-panel);box-shadow:var(--card-shadow);color:var(--ink);display:grid;position:fixed;overflow-y:auto}.assignment-picker-header{justify-content:space-between;align-items:center;gap:var(--space-1);display:flex}.assignment-picker-calendar{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;display:grid}.assignment-picker-calendar button{min-width:0;min-height:var(--control-height);border-radius:var(--radius-control);color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;padding:0}.assignment-picker-calendar .sunday{color:var(--red)}.assignment-picker-calendar .saturday{color:var(--steel)}.assignment-picker-calendar .outside{color:var(--ink-soft);opacity:.65}.assignment-picker-calendar button[aria-current=date]{border-color:var(--steel)}.assignment-picker-calendar button:hover{background:var(--steel-soft)}.assignment-picker-calendar button[aria-pressed=true]{background:var(--steel);color:var(--paper-card);opacity:1}.assignment-picker-popup button:focus-visible,.assignment-picker-popup select:focus-visible{outline:3px solid var(--steel);outline-offset:1px}.assignment-picker-time{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.assignment-picker-time label{gap:var(--space-1);min-width:0;display:grid}.assignment-picker-value[readonly]{cursor:pointer}@media (width<=600px){.assignment-picker-popup button,.assignment-picker-popup select{min-height:var(--touch-target)}}.assignment-picker-trigger{width:var(--control-height);height:100%;min-height:var(--control-height);border:0;border-left:1px solid var(--paper-line);border-radius:0 var(--radius-control) var(--radius-control) 0;background:var(--steel-soft);color:var(--steel);cursor:pointer;place-items:center;padding:0;display:grid;position:absolute;top:0;right:0}.assignment-picker-trigger:hover:not(:disabled){background:var(--paper-line)}.assignment-picker-trigger:focus-visible{outline:3px solid var(--steel);outline-offset:2px}.assignment-picker-trigger:disabled{opacity:.5;cursor:default}@media (width<=600px){.assignment-picker-control .assignment-picker-value{min-height:var(--touch-target);padding-right:calc(var(--touch-target) + var(--space-2))}.assignment-picker-trigger{width:var(--touch-target);min-height:var(--touch-target)}}.assignment-deadline-preview{max-width:100%;line-height:var(--leading-body);overflow-wrap:anywhere}.assignment-sections{min-width:0}.explain-file-list-header{justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-3);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.explain-file-list-header:has(+.explain-file-list){margin-bottom:var(--space-3)}.explain-file-list-header>strong{overflow-wrap:anywhere;min-width:0}.explain-file-list-header .hint{margin-left:var(--space-1)}.explain-file-list-header .btn{white-space:normal;max-width:100%;margin:0}.explain-file-list{gap:var(--space-2);grid-template-columns:minmax(0,1fr);width:100%;display:grid}.filebox.explain-file-list .explain-file-row{width:100%;min-width:0;padding:var(--space-3);background:var(--paper-card);border:1px solid var(--paper-line);border-radius:var(--radius-control);align-items:start;gap:var(--space-2);grid-template-columns:auto minmax(0,1fr);display:grid;position:relative}.explain-file-list .explain-file-row .explain-file-grip{touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;width:var(--touch-target);min-width:var(--touch-target);height:var(--touch-target);padding:0}.filebox.explain-file-list .explain-file-row.is-dragging{z-index:1000;box-sizing:border-box;opacity:.96;background:var(--paper-card);box-shadow:var(--card-shadow);cursor:grabbing;pointer-events:none;margin:0;transition:none;position:fixed}.explain-file-list .explain-file-grip:hover:not(:disabled),.explain-file-list .explain-file-grip:active:not(:disabled){background:var(--steel-soft);color:var(--steel)}.explain-file-list .explain-file-grip:active:not(:disabled),.explain-file-list .is-dragging .explain-file-grip{cursor:grabbing}.explain-file-list.is-reordering{cursor:grabbing;overflow-anchor:none}.explain-file-list.is-reordering .explain-file-grip{cursor:grabbing}.explain-file-placeholder{box-sizing:border-box;border-block:1px solid var(--paper-line);border-radius:var(--radius-control);pointer-events:none;overflow-anchor:none;width:100%;min-width:0}@media (prefers-reduced-motion:reduce){.explain-file-list .explain-file-grip{transition:none}}.explain-file-info{gap:var(--space-1);overflow-wrap:anywhere;grid-template-columns:minmax(0,1fr);min-width:0;display:grid}.explain-file-list .explain-file-info>strong{white-space:normal;overflow-wrap:anywhere;min-width:0}.explain-file-info small{color:var(--ink-soft)}.explain-file-info .explain-file-error{color:var(--red)}.explain-file-actions{width:fit-content;max-width:100%;font-size:var(--text-sm);justify-self:end;align-items:stretch;gap:var(--space-2);flex-wrap:nowrap;grid-column:2;display:flex}.explain-file-list .explain-file-actions .btn{width:auto;min-width:0;padding-inline:var(--space-3);min-height:var(--control-height);white-space:nowrap;flex:none;margin:0}@media (width<=600px){.filebox.explain-file-list .explain-file-row{grid-template-columns:auto minmax(0,1fr)}.explain-file-actions{grid-column:1/-1}.explain-file-list .explain-file-actions .btn{min-height:var(--touch-target)}}.answer-recognition-panel{gap:var(--space-4);min-width:0;margin-top:var(--space-6);padding:var(--space-4);border:1px solid var(--paper-line);border-radius:var(--radius-panel);background:#ffffff80;display:grid}.answer-recognition-heading,.answer-recognition-file-summary,.answer-recognition-actions{justify-content:space-between;align-items:center;gap:var(--space-3);min-width:0;display:flex}.answer-recognition-heading{align-items:flex-start}.answer-recognition-heading>div{min-width:0}.answer-recognition-heading h3,.answer-recognition-heading .hint,.answer-recognition-file-empty,.answer-recognition-notice,.answer-recognition-row-warning,.answer-recognition-upload{margin:0}.answer-recognition-file-panel{border:1px solid var(--paper-line);border-radius:var(--radius-panel);background:var(--paper-card);min-width:0;overflow:hidden}.answer-recognition-file-summary{padding:var(--space-3);border-bottom:1px solid var(--paper-line)}.answer-recognition-file-list{overscroll-behavior:contain;max-height:240px;overflow-y:auto}.answer-recognition-file-row{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--paper-line);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.answer-recognition-file-row:last-child{border-bottom:0}.answer-recognition-file-status{font-size:var(--text-label);font-weight:var(--weight-bold);line-height:1}.answer-recognition-file-status.status-success{color:var(--status-success)}.answer-recognition-file-status.status-danger{color:var(--status-danger)}.answer-recognition-file-status.status-neutral{color:var(--steel)}.answer-recognition-file-name-wrap{gap:var(--space-1);min-width:0;color:var(--ink-soft);display:grid}.answer-recognition-file-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.answer-recognition-file-name-wrap small{font-size:var(--text-xs);line-height:var(--leading-body)}.answer-recognition-file-error{color:var(--status-danger)}.answer-recognition-live:empty{display:none}.answer-recognition-notice,.answer-recognition-warnings{padding:var(--space-3);border-radius:var(--radius-control);font-size:var(--text-label);line-height:var(--leading-body)}.answer-recognition-notice.status-neutral{background:var(--steel-soft);color:var(--steel)}.answer-recognition-notice.status-success{background:var(--status-success-soft);color:var(--status-success)}.answer-recognition-notice.status-warning,.answer-recognition-warnings{background:var(--status-warning-soft);color:var(--status-warning)}.answer-recognition-notice.status-danger{background:var(--status-danger-soft);color:var(--status-danger)}.answer-recognition-warnings ul{margin:var(--space-2) 0 0;padding-left:var(--space-5)}.answer-recognition-results{overscroll-behavior:contain;scrollbar-gutter:stable;min-width:0;max-height:400px;overflow-y:auto}.answer-recognition-result-panel{border:1px solid var(--paper-line);border-radius:var(--radius-panel);background:var(--paper-card);min-width:0;box-shadow:var(--card-shadow);overflow:hidden}.answer-recognition-result-summary{gap:var(--space-1);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--paper-line);background:#ffffff8a;display:grid}.answer-recognition-result-summary h4,.answer-recognition-result-summary p{margin:0}.answer-recognition-result-summary h4{color:var(--ink)}.answer-recognition-result-summary p{font-size:var(--text-label);line-height:var(--leading-body);color:var(--ink-soft)}.answer-recognition-result-columns,.answer-recognition-row-main{align-items:center;gap:var(--space-3);grid-template-columns:minmax(0,.9fr) minmax(0,1.45fr);min-width:0;display:grid}.answer-recognition-result-columns{padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--paper-line);background:var(--steel-soft);font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--steel)}.answer-recognition-result-group+.answer-recognition-result-group{border-top:1px solid var(--paper-line)}.answer-recognition-result-group-header{justify-content:space-between;align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--paper-line);background:#ffffff8a;flex-wrap:wrap;display:flex}.answer-recognition-result-group-title{gap:var(--space-1);flex:160px;min-width:0;display:grid}.answer-recognition-result-group-header strong{min-width:0;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.answer-recognition-result-group-header span{font-size:var(--text-xs);color:var(--ink-soft);flex:none}.answer-recognition-row-answer,.answer-recognition-row-meta{align-items:center;gap:var(--space-2);min-width:0;display:grid}.answer-recognition-row-answer{grid-template-columns:minmax(64px,.8fr) minmax(72px,1fr)}.answer-recognition-row-meta{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.answer-recognition-row-status{align-items:center;gap:var(--space-1) var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.answer-recognition-row{gap:var(--space-2);min-width:0;padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--paper-line);background:0 0;display:grid}.answer-recognition-row:last-child{border-bottom:0}.answer-recognition-row.is-warning{background:var(--status-warning-soft)}.answer-recognition-row.is-applied{background:var(--status-success-soft)}.answer-recognition-row-main{min-height:32px}.answer-recognition-row-answer strong,.answer-recognition-row-meta span{min-width:0}.answer-recognition-ai-answer{overflow-wrap:anywhere}.answer-recognition-select{align-items:center;gap:var(--space-2);font-size:var(--text-label);font-weight:var(--weight-bold);cursor:pointer;display:flex}.answer-recognition-select input{margin:0}.answer-recognition-confidence,.answer-recognition-page,.answer-recognition-source{font-size:var(--text-xs);color:var(--ink-soft)}.answer-recognition-source{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.answer-recognition-confidence.status-success{color:var(--status-success)}.answer-recognition-confidence.status-warning{color:var(--status-warning)}.answer-recognition-confidence.status-danger{color:var(--status-danger)}.answer-recognition-conflict-detail{justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-2);border-top:1px solid var(--paper-line);font-size:var(--text-label);color:var(--ink-soft);display:flex}.answer-recognition-row-warning{font-size:var(--text-label);line-height:var(--leading-body);color:var(--status-warning)}.answer-recognition-actions{padding:var(--space-3) var(--space-4);border-top:1px solid var(--paper-line);background:#ffffff8a;flex-wrap:wrap;justify-content:flex-start}@media (width<=600px){.answer-recognition-panel{padding:var(--space-4)}.answer-recognition-heading,.answer-recognition-file-summary,.answer-recognition-actions{flex-direction:column;align-items:stretch}.answer-recognition-heading>.status{align-self:flex-start}.answer-recognition-file-summary .btn,.answer-recognition-actions .btn{width:100%;min-height:var(--touch-target)}.answer-recognition-file-row .btn{min-height:var(--touch-target)}.answer-recognition-result-columns{display:none}.answer-recognition-result-summary,.answer-recognition-result-group-header,.answer-recognition-row,.answer-recognition-actions{padding-right:var(--space-3);padding-left:var(--space-3)}.answer-recognition-results{max-height:380px}.answer-recognition-row-main{gap:var(--space-1);grid-template-columns:minmax(0,1fr)}.answer-recognition-row-answer{justify-content:space-between;gap:var(--space-3);display:flex}.answer-recognition-row-meta{gap:var(--space-1) var(--space-2);flex-wrap:wrap;display:flex}.answer-recognition-source{flex:1 0 100%}.answer-recognition-conflict-detail{align-items:flex-start;gap:var(--space-2);flex-direction:column}}.assignment-section-card{min-width:0;padding:var(--space-4);background:#ffffff6b}.assignment-section-header{grid-template-columns:minmax(0,1fr) auto;min-width:0;align-items:center!important;gap:var(--space-2)!important;display:grid!important}.assignment-section-header input{min-width:0}.assignment-editor .prow{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-2) 0;grid-template-columns:26px 110px minmax(180px,1fr) auto;display:grid}.assignment-editor .prow .pnum-badge,.assignment-editor .prow .pnum-input,.assignment-editor .prow .pans-input,.assignment-editor .prow .btn.small{width:auto;min-width:0;margin:0}.assignment-editor .prow .pnum-input,.assignment-editor .prow .pans-input{width:100%}.problem-row-insert{top:calc(0px - var(--space-1));z-index:1;width:100%;min-width:0;height:0;position:relative}.problem-row-insert:before{z-index:0;border-top:1px solid var(--paper-line);content:"";opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s,visibility 0s linear .15s;position:absolute;top:0;left:0;right:0}.problem-row-insert:after{top:calc(0px - var(--space-3));right:0;bottom:calc(0px - var(--space-3));z-index:0;content:"";position:absolute;left:0}.problem-row-insert-button{z-index:2;width:var(--space-6);height:var(--space-6);appearance:none;border:1px solid var(--paper-line);border-radius:var(--radius-control);background:var(--paper-card);color:var(--steel);font:inherit;cursor:pointer;opacity:0;pointer-events:none;justify-content:center;align-items:center;padding:0;font-weight:700;line-height:1;transition:opacity .15s,border-color .15s,background-color .15s;display:inline-flex;position:absolute;top:0;left:50%;transform:translate(-50%,-50%)}.problem-row-insert:hover:before,.problem-row-insert:focus-within:before{opacity:1;visibility:visible;transition-delay:0s}.problem-row-insert:hover .problem-row-insert-button,.problem-row-insert:focus-within .problem-row-insert-button{opacity:1;pointer-events:auto}@media (hover:hover){.problem-row-insert-button:hover{border-color:var(--steel);background:var(--steel-soft)}}@media (hover:none) and (pointer:coarse){.problem-row-insert-button{opacity:.65;pointer-events:auto}.problem-row-insert-button:after{content:"";position:absolute;inset:-10px}}.assignment-editor .stu-check{min-width:0;padding:var(--space-3) 0}.assignment-editor .stu-check input[type=checkbox]{flex:none;width:18px;height:18px}.assignment-editor .assignment-student-label{min-width:0}.assignment-editor .assignment-student-name,.assignment-editor .assignment-student-meta{overflow-wrap:anywhere}.assignment-recipient-empty{padding-block:var(--space-6)}.assignment-target-class-tree,.assignment-target-exceptions{gap:var(--space-3);min-width:0;display:grid}.assignment-target-class-tree>:is(h4,.hint){margin:0}.assignment-target-academy-chips{gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.assignment-target-academy-chip{text-align:center;white-space:normal;overflow-wrap:anywhere;justify-content:center;align-items:center;min-width:0;max-width:100%;display:inline-flex}.teacher-shell .assessment-authoring .btn.ghost.assignment-target-academy-chip[aria-pressed]{background:var(--paper-card)}.teacher-shell .assessment-authoring .btn.ghost.assignment-target-academy-chip[aria-pressed=true]{background:var(--steel-soft);border-color:var(--steel)}@media (hover:hover){.teacher-shell .assessment-authoring .btn.ghost.assignment-target-academy-chip[aria-pressed]:hover{border-color:var(--steel);box-shadow:inset 0 0 0 1px var(--steel)}}.assignment-target-tree-grid{align-items:start;gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));min-width:0;display:grid}.assignment-target-tree-group{padding:var(--space-2);border:1px solid var(--paper-line);border-radius:var(--radius-control);background:var(--paper-card);min-width:0;margin:0;list-style:none;overflow-x:auto}.assignment-target-branches{border-left:1px solid var(--paper-line);margin:4px 0 0 8px;padding:0;list-style:none}.assignment-target-branches>li{padding-left:6px;position:relative}.assignment-target-branches>li:before{content:"";border-top:1px solid var(--paper-line);width:6px;position:absolute;top:18px;left:0}.assignment-target-node{border-radius:var(--radius-control);border:1px solid #0000;align-items:center;gap:4px;min-width:160px;margin-bottom:4px;padding:4px;display:flex}.assignment-target-node.has-children{background:var(--steel-soft);border-color:var(--paper-line)}.assignment-target-arrow,.assignment-target-arrow-space{flex:0 0 24px;width:24px}.assignment-target-arrow{color:var(--ink-soft);cursor:pointer;background:0 0;border:0;min-height:28px;padding:0}.assignment-target-node .assignment-target-class-option{flex:1;align-items:center;gap:6px}.assignment-target-node .assignment-target-class-option>span{flex:1}.assignment-target-node .assignment-target-class-option small{white-space:nowrap;flex:none}.assignment-target-node .assignment-target-class-option input{margin:0}.assignment-target-arrow:focus-visible,.assignment-target-academy-chip:focus-visible{outline:2px solid var(--steel);outline-offset:2px}@media (width<=1100px){.assignment-target-tree-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.assignment-target-tree-grid{grid-template-columns:minmax(0,1fr)}}.assignment-target-academy,.assignment-target-exception-panel{min-width:0;padding:var(--space-4);border:1px solid var(--paper-line);border-radius:var(--radius-panel);background:#ffffff6b}.assignment-target-academy>h4,.assignment-target-exception-heading>h4{margin:0}.assignment-target-class-list{gap:var(--space-3);margin-top:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.assignment-target-class-group{min-width:0;padding:var(--space-3);border:1px solid var(--paper-line);border-radius:var(--radius-control);background:var(--paper-card)}.assignment-target-class-option,.assignment-target-student-option{align-items:flex-start;gap:var(--space-2);cursor:pointer;min-width:0;display:flex}.assignment-target-class-option input,.assignment-target-student-option input{flex:none;width:18px;height:18px;margin:2px 0 0}.assignment-target-class-option>span,.assignment-target-student-option>span{gap:var(--space-1);min-width:0;display:grid}.assignment-target-class-option strong,.assignment-target-student-option strong{font-size:var(--text-body);line-height:var(--leading-control);overflow-wrap:anywhere}.assignment-target-class-option small,.assignment-target-student-option small{color:var(--ink-soft);font-size:var(--text-sm);line-height:var(--leading-body);overflow-wrap:anywhere}.assignment-target-child-list{gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-3) 0 0 var(--space-4);border-top:1px solid var(--paper-line);display:grid}.assignment-target-child-list input:disabled+span{opacity:.72}.assignment-class-deadlines{gap:var(--space-3);min-width:0;margin-top:var(--space-4);padding:var(--space-4);border:1px solid var(--paper-line);border-radius:var(--radius-panel);background:#ffffff6b;display:grid}.assignment-class-deadline-heading{gap:var(--space-1);display:grid}.assignment-class-deadline-heading h4,.assignment-class-deadline-heading .hint{margin:0}.assignment-class-deadline-list{gap:0;display:grid}.assignment-class-deadline-row{align-items:center;gap:var(--space-2);min-width:0;padding-block:var(--space-2);grid-template-columns:minmax(0,1fr) auto minmax(140px,180px) minmax(140px,160px);display:grid}.assignment-class-deadline-row+.assignment-class-deadline-row{border-top:1px solid var(--paper-line)}.assignment-class-deadline-info{display:contents}.assignment-class-deadline-info>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.assignment-class-deadline-toggle{align-items:center;gap:var(--space-2);color:var(--ink-soft);font-size:var(--text-label);line-height:var(--leading-control);white-space:nowrap;cursor:pointer;margin:0;display:flex}.assignment-class-deadline-toggle input{flex:none;width:18px;height:18px;margin:0}.assignment-class-deadline-controls{display:contents}.assignment-class-deadline-controls .field{min-width:0;margin:0;position:relative}.assignment-class-deadline-controls .field>span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.assignment-class-deadline-controls input{width:100%;min-width:0;height:var(--control-height);margin:0}.assignment-target-exceptions{margin-top:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.assignment-target-exception-heading{gap:var(--space-1);margin-bottom:var(--space-3);display:grid}.assignment-target-exception-heading .hint{margin:0}.assignment-target-selected-summary{gap:var(--space-2);min-width:0;margin-bottom:var(--space-3);display:grid}.assignment-target-selected-label{color:var(--ink-soft);font-size:var(--text-label);font-weight:var(--weight-bold);line-height:var(--leading-control)}.assignment-target-selected-chips{gap:var(--space-1);flex-wrap:wrap;min-width:0;display:flex}.assignment-target-selected-chip{white-space:normal;overflow-wrap:anywhere;max-width:100%}label.field.assignment-target-student-search{margin:0 0 var(--space-3)}.assignment-target-student-list{gap:var(--space-2);max-height:280px;display:grid;overflow-y:auto}.assignment-target-student-option{padding:var(--space-2);border-radius:var(--radius-control)}.assignment-target-student-option:hover{background:var(--steel-soft)}.assignment-target-exception-empty{padding-block:var(--space-4)}.assignment-target-summary{margin:var(--space-3) 0 0}@media (width<=600px){.assignment-target-academy,.assignment-target-exception-panel,.assignment-class-deadlines{padding:var(--space-3)}.assignment-target-class-list,.assignment-target-exceptions{grid-template-columns:minmax(0,1fr)}.assignment-target-child-list{padding-left:var(--space-3)}.assignment-class-deadline-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.assignment-class-deadline-controls input{height:var(--touch-target)}.assignment-class-deadline-toggle{min-height:var(--touch-target)}}@media (width<=380px){.assignment-class-deadline-controls .field{grid-column:1/-1}}.assignment-editor .file-upload-wrap,.assignment-editor .file-upload-box{min-width:0}.assignment-editor .upload-file-item{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-2) 0;grid-template-columns:minmax(0,1fr) auto;display:grid}.assignment-editor .upload-file-item>*{min-width:0}.assignment-editor .upload-file-item>:first-child{overflow-wrap:anywhere}.assignment-editor>.row:last-child{padding-top:var(--space-4);border-top:1px solid var(--paper-line);justify-content:flex-end;margin-top:var(--space-6)!important}.assignment-editor button[onclick*=saveAssignment],.assignment-editor button[onclick*=updateAssignment],.assignment-editor #testSave{min-height:var(--touch-target)}:is(#app:has(>.teacher-assignment-detail-marker)>.btn.ghost.small,#app:has(>.teacher-submission-detail-marker)>.btn.ghost.small){min-height:var(--control-height);margin-bottom:var(--space-3)!important}:is(#app:has(>.teacher-assignment-detail-marker)>.card,#app:has(>.teacher-submission-detail-marker)>.card){min-width:0}:is(#app:has(>.teacher-assignment-detail-marker) .teacher-assignment-summary-card,#app:has(>.teacher-assignment-detail-marker) .teacher-assignment-submissions-card){padding:var(--space-6)}:is(#app:has(>.teacher-assignment-detail-marker)>.card:first-of-type>h2:first-child,#app:has(>.teacher-submission-detail-marker)>.card:first-of-type>h2:first-child){font-size:var(--text-page-title);line-height:var(--leading-tight);overflow-wrap:anywhere}#app:has(>.teacher-assignment-detail-marker) .teacher-assignment-title{font-size:var(--text-page-title);line-height:var(--leading-tight);margin-bottom:var(--space-2);overflow-wrap:anywhere}:is(#app:has(>.teacher-assignment-detail-marker) .teacher-assignment-summary-header,#app:has(>.teacher-assignment-detail-marker) .teacher-assignment-meta-group){min-width:0;display:grid}#app:has(>.teacher-assignment-detail-marker) .teacher-assignment-summary-header{gap:var(--space-2)}#app:has(>.teacher-assignment-detail-marker) .teacher-assignment-title{margin:0}#app:has(>.teacher-assignment-detail-marker) .teacher-assignment-meta-group{gap:var(--space-1)}#app:has(>.teacher-assignment-detail-marker) .teacher-assignment-meta{margin:0!important}#app:has(>.teacher-assignment-detail-marker) .teacher-assignment-file-section{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--paper-line)}.teacher-assignment-file-section+.teacher-assignment-file-section{margin-top:var(--space-5)}#app:has(>.teacher-assignment-detail-marker) .teacher-assignment-file-label{margin-bottom:var(--space-2);color:var(--ink-soft);font-size:var(--text-xs);font-weight:var(--weight-bold);line-height:var(--leading-control)}#app:has(>.teacher-assignment-detail-marker) .teacher-assignment-file-empty{margin:0!important}:is(#app:has(>.teacher-assignment-detail-marker) .filebox,#app:has(>.teacher-submission-detail-marker) .filebox){align-items:center;min-width:0}:is(#app:has(>.teacher-assignment-detail-marker) .filebox .fname,#app:has(>.teacher-submission-detail-marker) .filebox .fname){overflow-wrap:anywhere;flex:240px;min-width:0}.filebox.teacher-assignment-file-list{align-items:stretch;gap:var(--space-3);flex-wrap:wrap;min-width:0;display:flex}.teacher-assignment-file-list .teacher-assignment-file-button{min-height:var(--control-height);text-align:left;white-space:normal;overflow-wrap:anywhere;align-items:center;min-width:0;max-width:100%;display:inline-flex}.teacher-assignment-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--paper-line)}@media (width<=600px){.filebox.teacher-assignment-file-list{flex-direction:column}.teacher-assignment-file-list .teacher-assignment-file-button{justify-content:flex-start;width:100%;min-height:44px}}#app:has(>.teacher-assignment-detail-marker) .teacher-assignment-submissions-card>h3{margin-bottom:var(--space-4)}#app:has(>.teacher-submission-detail-marker) .teacher-grading-section-title{margin-bottom:var(--space-4)}.teacher-assignment-submissions-card .teacher-submission-class-groups{align-items:start;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.teacher-assignment-submissions-card .teacher-submission-class-group{border:1px solid var(--paper-line);border-radius:var(--radius-panel);background:var(--paper-card);width:100%;min-width:0;box-shadow:var(--card-shadow);overflow:hidden}.teacher-assignment-submissions-card .teacher-submission-class-group.is-expanded{grid-column:1/-1}.teacher-assignment-submissions-card .teacher-submission-class-toggle{appearance:none;align-content:start;gap:var(--space-3);box-sizing:border-box;width:100%;min-width:0;min-height:128px;padding:var(--space-4);border-radius:inherit;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;transition:background-color .15s;display:grid}.teacher-assignment-submissions-card .teacher-submission-class-toggle:focus-visible{outline:3px solid var(--steel);outline-offset:-3px}.teacher-assignment-submissions-card .teacher-submission-class-heading{justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--steel);font-size:var(--text-section-title);font-weight:var(--weight-bold);line-height:var(--leading-control);display:flex}.teacher-assignment-submissions-card .teacher-submission-class-heading>strong{overflow-wrap:anywhere;min-width:0}.teacher-assignment-submissions-card .teacher-submission-class-heading>span{flex:none}.teacher-assignment-submissions-card .teacher-submission-class-count{font-size:var(--text-card-title);font-weight:var(--weight-bold);line-height:var(--leading-tight);display:block}.teacher-assignment-submissions-card .teacher-submission-class-status{display:block}.teacher-assignment-submissions-card .teacher-submission-class-group.is-expanded .teacher-submission-class-toggle{background:var(--steel-soft)}.teacher-assignment-submissions-card .teacher-submission-class-list{min-width:0;padding:0 var(--space-4);border-top:1px solid var(--paper-line)}@media (hover:hover){.teacher-assignment-submissions-card .teacher-submission-class-toggle:hover{background:var(--steel-soft)}}#app:has(>.teacher-assignment-detail-marker) .list-item{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}#app:has(>.teacher-assignment-detail-marker) .list-item>*{min-width:0}:is(#app:has(>.teacher-assignment-detail-marker) .list-item .title,#app:has(>.teacher-assignment-detail-marker) .list-item .meta){overflow-wrap:anywhere}#app:has(>.teacher-assignment-detail-marker) .teacher-submission-list-item{cursor:default}#app:has(>.teacher-assignment-detail-marker) .teacher-submission-list-item.is-actionable{cursor:pointer}#app:has(>.teacher-assignment-detail-marker) .teacher-submission-list-item:not(.is-actionable):hover{background:0 0}#app:has(>.teacher-assignment-detail-marker) .teacher-submission-row-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}#app:has(>.teacher-assignment-detail-marker) .teacher-submission-open-action{white-space:nowrap}:is(#app:has(>.teacher-assignment-detail-marker) .list-item>.btn,#app:has(>.teacher-assignment-detail-marker) .list-item>.badge){justify-self:end}:is(#app:has(>.teacher-assignment-detail-marker) .card>.row,#app:has(>.teacher-submission-detail-marker) .card>.row),:is(#app:has(>.teacher-submission-detail-marker) .problem-block,#app:has(>.teacher-submission-detail-marker) .result-answer-card,#app:has(>.teacher-submission-detail-marker) .result-row){min-width:0}#app:has(>.student-detail-report-card) .teacher-submission-row-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);min-width:0;display:flex}#app:has(>.student-detail-report-card) .student-assignment-record-item:focus-visible{outline:3px solid var(--steel);outline-offset:2px}#app:has(>.teacher-submission-detail-marker) .teacher-submission-empty-message{margin:var(--space-3) 0 0!important}#app:has(>.teacher-submission-detail-marker) .teacher-submission-viewer-context{padding:var(--space-4) var(--space-5)}#app:has(>.teacher-submission-detail-marker) .teacher-submission-viewer-heading{justify-content:space-between;align-items:center;gap:var(--space-3);min-width:0;display:flex}#app:has(>.teacher-submission-detail-marker) .teacher-submission-viewer-heading>div{min-width:0}#app:has(>.teacher-submission-detail-marker) .teacher-submission-viewer-heading h2{overflow-wrap:anywhere;margin:0}#app:has(>.teacher-submission-detail-marker) .teacher-submission-viewer-heading .hint{overflow-wrap:anywhere;margin:0}#app:has(>.teacher-submission-detail-marker) .teacher-submission-viewer-heading .hint{margin-top:var(--space-1)}#app:has(>.teacher-submission-detail-marker) .teacher-assignment-source-card>h3{margin-bottom:var(--space-2)}#app:has(>.teacher-submission-detail-marker) .teacher-assignment-source-meta{align-items:center;gap:var(--space-1) var(--space-3);flex-wrap:wrap;display:flex}#app:has(>.teacher-submission-detail-marker) .teacher-assignment-source-meta .hint{margin:0!important}#app:has(>.teacher-submission-detail-marker) .teacher-assignment-source-empty{margin:0!important}#app:has(>.teacher-submission-detail-marker) .teacher-assignment-source-files{gap:var(--space-4);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--paper-line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}#app:has(>.teacher-submission-detail-marker) .teacher-assignment-source-file-section{min-width:0}#app:has(>.teacher-submission-detail-marker) .teacher-assignment-source-label{margin-bottom:var(--space-2);color:var(--ink-soft);font-size:var(--text-xs);font-weight:var(--weight-bold);line-height:var(--leading-control)}#app:has(>.teacher-submission-detail-marker) .teacher-assignment-source-file-list{gap:var(--space-2)}#app:has(>.teacher-submission-detail-marker) .teacher-assignment-source-file-button{text-align:left;white-space:normal;overflow-wrap:anywhere;min-width:0;max-width:100%}#app:has(>.teacher-submission-detail-marker) .teacher-student-assignment-section>h3{margin-bottom:var(--space-3)}#app:has(>.teacher-submission-detail-marker) .teacher-student-assignment-problem{display:flex}#app:has(>.teacher-submission-detail-marker) .teacher-student-assignment-problem:last-child{margin-bottom:0}#app:has(>.teacher-submission-detail-marker) .teacher-student-assignment-problem .result-answer-head{margin-bottom:var(--space-3)}#app:has(>.teacher-submission-detail-marker) .teacher-student-assignment-problem.is-correct{background:var(--status-success-soft)}#app:has(>.teacher-submission-detail-marker) .teacher-student-assignment-problem.is-wrong{background:var(--status-danger-soft)}#app:has(>.teacher-submission-detail-marker) .teacher-student-assignment-problem.is-neutral{background:var(--steel-soft)}#app:has(>.teacher-submission-detail-marker) .teacher-student-assignment-problem .result-answer-body{min-width:0}#app:has(>.teacher-submission-detail-marker) .teacher-student-assignment-problem .result-answer-line{gap:var(--space-3);grid-template-columns:max-content minmax(0,1fr);display:grid}#app:has(>.teacher-submission-detail-marker) .teacher-student-assignment-problem .result-answer-line span{width:auto}#app:has(>.teacher-submission-detail-marker) .teacher-student-assignment-status{border-right:1px solid var(--paper-line);font-size:var(--text-stat-compact);font-weight:var(--weight-bold);text-align:center;flex:none;line-height:1}#app:has(>.teacher-submission-detail-marker) .teacher-student-assignment-status.correct{color:var(--status-success);background:0 0}#app:has(>.teacher-submission-detail-marker) .teacher-student-assignment-status.wrong{color:var(--status-danger);background:0 0}#app:has(>.teacher-submission-detail-marker) .teacher-student-assignment-status.pending{color:var(--ink-soft);background:0 0}#app:has(>.teacher-submission-detail-marker) .problem-block{padding:var(--space-4)}#app:has(>.teacher-submission-detail-marker) .problem-block .phead{gap:var(--space-3);flex-wrap:wrap}#app:has(>.teacher-submission-detail-marker) .problem-block textarea{overflow-wrap:anywhere;min-width:0}#app:has(>.teacher-submission-detail-marker) .result-answer-body{overflow-wrap:anywhere;min-width:0}#app:has(>.teacher-submission-detail-marker) .result-answer-line strong{overflow-wrap:anywhere;min-width:0}#app:has(>.teacher-submission-detail-marker) .teacher-grading-answer{margin:var(--space-2) 0;border-radius:var(--radius-control)}#app:has(>.teacher-submission-detail-marker) .teacher-grading-answer .rq{overflow-wrap:anywhere;min-width:0}#app:has(>.teacher-submission-detail-marker) .teacher-grading-answer .ra{align-items:start;gap:var(--space-2);grid-template-columns:max-content minmax(0,1fr);display:grid}#app:has(>.teacher-submission-detail-marker) .teacher-answer-label{color:var(--ink-soft)}#app:has(>.teacher-submission-detail-marker) .teacher-answer-value{min-width:0;color:var(--ink);font-weight:var(--weight-medium);overflow-wrap:anywhere}#app:has(>.teacher-submission-detail-marker) .teacher-grading-result{margin-top:var(--space-2);justify-content:flex-end;display:flex}#app:has(>.teacher-submission-detail-marker) .teacher-grading-result .tag{margin-left:0}#app:has(>.teacher-submission-detail-marker) .teacher-grading-actions{align-items:center;gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}:is(#app:has(>.teacher-submission-detail-marker) .badge,#app:has(>.teacher-submission-detail-marker) .tag){flex:none}#app:has(>.teacher-submission-detail-marker) img{max-width:100%;height:auto;display:block}#app:has(>.teacher-assignment-detail-marker)>.card:first-of-type>.row:last-child{justify-content:flex-end}@media (width<=600px){:is(#app:has(>.teacher-assignment-detail-marker)>.btn.ghost.small,#app:has(>.teacher-submission-detail-marker)>.btn.ghost.small){min-height:var(--touch-target)}:is(#app:has(>.teacher-assignment-detail-marker)>.card:first-of-type>h2:first-child,#app:has(>.teacher-submission-detail-marker)>.card:first-of-type>h2:first-child){font-size:var(--text-card-title)}:is(#app:has(>.teacher-assignment-detail-marker) .teacher-assignment-summary-card,#app:has(>.teacher-assignment-detail-marker) .teacher-assignment-submissions-card){padding:var(--space-4)}#app:has(>.teacher-assignment-detail-marker) .teacher-assignment-title{font-size:var(--text-card-title)}.teacher-assignment-submissions-card .teacher-submission-class-groups{grid-template-columns:minmax(0,1fr)}#app:has(>.teacher-submission-detail-marker) .teacher-submission-viewer-context{padding:var(--space-4)}#app:has(>.teacher-submission-detail-marker) .teacher-submission-viewer-heading{flex-direction:column;align-items:stretch}#app:has(>.teacher-submission-detail-marker) .teacher-submission-viewer-heading>.badge{align-self:flex-start}:is(#app:has(>.teacher-assignment-detail-marker) .filebox,#app:has(>.teacher-submission-detail-marker) .filebox){flex-direction:column;align-items:stretch}:is(#app:has(>.teacher-assignment-detail-marker) .filebox .fname,#app:has(>.teacher-submission-detail-marker) .filebox .fname){flex-basis:auto;width:100%}:is(#app:has(>.teacher-assignment-detail-marker) .filebox .btn,#app:has(>.teacher-submission-detail-marker) .filebox .btn){width:100%;min-height:var(--touch-target);white-space:normal}#app:has(>.teacher-assignment-detail-marker) .teacher-assignment-actions{gap:var(--space-2)}#app:has(>.teacher-assignment-detail-marker) .list-item{align-items:stretch;gap:var(--space-3);padding:var(--space-4) 0;grid-template-columns:minmax(0,1fr)}:is(#app:has(>.teacher-assignment-detail-marker) .list-item>.btn,#app:has(>.teacher-assignment-detail-marker) .list-item>.badge){justify-self:stretch}#app:has(>.teacher-assignment-detail-marker) .list-item>.btn{width:100%;min-height:var(--touch-target)}#app:has(>.teacher-assignment-detail-marker) .list-item>.badge{width:fit-content}#app:has(>.teacher-assignment-detail-marker) .teacher-submission-row-actions{grid-template-columns:minmax(0,1fr);justify-items:start;width:100%;display:grid}#app:has(>.teacher-assignment-detail-marker) .teacher-submission-row-actions .teacher-submission-open-action{width:100%;min-height:var(--touch-target);white-space:normal}#app:has(>.student-detail-report-card) .teacher-submission-row-actions{flex-direction:column;align-items:stretch}#app:has(>.student-detail-report-card) .teacher-submission-row-actions .btn{width:100%;min-height:var(--touch-target)}#app:has(>.teacher-submission-detail-marker) .teacher-assignment-source-files{gap:var(--space-3);grid-template-columns:minmax(0,1fr)}#app:has(>.teacher-submission-detail-marker) .teacher-assignment-source-file-button{width:100%;min-height:var(--touch-target)}#app:has(>.teacher-assignment-detail-marker)>.card:first-of-type>.row:last-child{align-items:stretch}#app:has(>.teacher-assignment-detail-marker)>.card:first-of-type>.row:last-child .btn{width:100%;min-height:var(--touch-target)}#app:has(>.teacher-submission-detail-marker) .problem-block{padding:var(--space-3)}#app:has(>.teacher-submission-detail-marker) .problem-block .phead{flex-wrap:wrap;align-items:flex-start}#app:has(>.teacher-submission-detail-marker) .teacher-student-assignment-problem .result-answer-head{flex-wrap:nowrap;align-items:center}#app:has(>.teacher-submission-detail-marker) .problem-block .row{align-items:stretch}#app:has(>.teacher-submission-detail-marker) .problem-block .row .btn{width:100%;min-height:var(--touch-target)}#app:has(>.teacher-submission-detail-marker) .teacher-grading-actions{flex-direction:column;align-items:stretch}#app:has(>.teacher-submission-detail-marker) .teacher-grading-result{justify-content:flex-start}#app:has(>.teacher-submission-detail-marker) .teacher-grading-actions .btn{width:100%;min-height:var(--touch-target)}}@media (width<=380px){#app:has(>.teacher-submission-detail-marker) .teacher-grading-answer .ra{gap:var(--space-1);grid-template-columns:minmax(0,1fr)}#app:has(>.teacher-submission-detail-marker) .teacher-student-assignment-problem .result-answer-line{gap:var(--space-1);grid-template-columns:minmax(0,1fr)}}.student-learning-calendar-scroll{padding:2px 0 var(--space-2)}.student-learning-calendar-grid{width:100%;min-width:0}.student-calendar-weekday,.student-calendar-cell,.student-calendar-event{min-width:0}.student-calendar-event{overflow:hidden}.student-calendar-event>*{max-width:100%}.student-calendar-cell{box-shadow:var(--card-shadow)}.student-calendar-cell-empty{box-shadow:none}.student-report-summary-grid>div>div:not(.hint){line-height:1.1;font-size:var(--text-stat)!important;font-weight:var(--weight-bold)!important;margin:0!important}.student-report-summary-grid>div>.hint{text-align:center;justify-content:center;align-items:center;display:flex;margin:0!important}.student-monthly-summary-grid>div>div:not(.hint){line-height:1.15;font-size:var(--text-stat-compact)!important;font-weight:var(--weight-bold)!important}.student-calendar-weekday,.student-calendar-cell>div:first-child{line-height:var(--leading-control);font-weight:var(--weight-bold)!important}.student-calendar-event{font-size:var(--text-xs)!important;line-height:var(--leading-control)!important}.student-calendar-event>div:first-child{font-weight:var(--weight-bold)!important}.student-report-chart-legend,.student-report-table-scroll table{line-height:var(--leading-body);font-size:var(--text-sm)!important}.student-card:hover .student-card-arrow{transform:translate(3px)}.student-empty{text-align:center;color:#8c929b;padding:50px 20px}.stu-check{align-items:flex-start;gap:10px;padding:10px 0;display:flex}.stu-check input[type=checkbox]{margin-top:3px}.assignment-student-label{cursor:pointer;flex-direction:column;gap:3px;display:flex}.assignment-student-name{font-size:var(--text-list-title);font-weight:var(--weight-bold);line-height:var(--leading-control);color:#263446}.assignment-student-meta{font-size:var(--text-xs);color:#7d8794;line-height:var(--leading-control)}.file-upload-wrap{margin-bottom:14px}.file-upload-input{display:none}.file-upload-box{border:1px dashed var(--paper-line);background:#fff;border-radius:9px;align-items:center;gap:14px;width:100%;padding:16px 18px;display:flex}.file-upload-icon{background:var(--steel-soft);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:18px;display:flex}.file-upload-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.file-upload-text strong{font-size:14px;font-weight:var(--weight-bold);line-height:var(--leading-control);color:var(--ink)}.file-upload-text span{font-size:var(--text-xs);line-height:var(--leading-body);color:var(--ink-soft)}.file-upload-button{border:1px solid var(--paper-line);background:var(--paper-card);color:var(--steel);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--weight-bold);line-height:var(--leading-control);white-space:nowrap;cursor:pointer;border-radius:7px;padding:7px 12px;transition:background .15s,border-color .15s}.file-upload-button:hover{background:var(--steel-soft);border-color:var(--steel)}.file-empty-text{font-size:var(--text-sm);line-height:var(--leading-body);color:var(--ink-soft)}.result-summary-card{padding:24px}.result-summary-head{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.result-summary-head h2{margin-bottom:4px}.result-submit-time{font-size:var(--text-sm);line-height:var(--leading-body);color:var(--ink-soft);margin:0}.result-score{text-align:right;flex-shrink:0}.result-score strong{font-size:var(--text-stat);color:var(--ink);line-height:1.1;font-weight:var(--weight-bold);display:block}.result-score strong span{color:var(--ink-soft);font-size:16px;font-weight:var(--weight-medium)}.result-score small{font-size:var(--text-xs);line-height:var(--leading-control);color:var(--ink-soft)}.result-stats{grid-template-columns:repeat(4,1fr);gap:8px;margin-top:20px;display:grid}.result-stat{background:#3b5b7a0f;border-radius:8px;padding:11px 12px}.result-stat span{font-size:var(--text-xs);line-height:var(--leading-control);color:var(--ink-soft);margin-bottom:3px;display:block}.result-stat strong{font-size:16px;font-weight:var(--weight-bold);line-height:var(--leading-tight);color:var(--ink)}.correct-text{color:var(--status-success)!important}.wrong-text{color:var(--status-danger)!important}.pending-text{color:var(--status-warning)!important}.result-deadline{margin-top:var(--space-1);margin-bottom:0}.result-file-empty,.student-assignment-deadline-notice .hint,.student-assignment-existing-notice .hint{margin:0}.student-assignment-deadline-notice{border-color:var(--status-danger-soft);background:var(--status-danger-soft)}.coupon-card,.coupon-panel{min-width:0}.teacher-coupon-management-layout{gap:var(--space-4);grid-template-columns:minmax(220px,.72fr) minmax(0,1.3fr);align-items:start;display:grid}.teacher-coupon-student-picker,.teacher-coupon-detail{min-width:0}.teacher-coupon-high-balance{margin:var(--space-4) 0}.teacher-coupon-high-balance-header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.teacher-coupon-high-balance-header h3,.teacher-coupon-high-balance-empty{margin:0}.teacher-coupon-high-balance-header span{color:var(--ink-soft);font-size:var(--text-label);line-height:var(--leading-control)}.teacher-coupon-high-balance-list{gap:var(--space-2);margin-top:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.teacher-coupon-high-balance-item{justify-content:space-between;align-items:center;gap:var(--space-2);min-width:0;min-height:var(--control-height);padding:var(--space-2) var(--space-3);border:1px solid var(--paper-line);border-radius:var(--radius-control);background:var(--paper-card);color:var(--ink);font-family:var(--font-sans);text-align:left;display:flex}.teacher-coupon-high-balance-item strong{overflow-wrap:anywhere;min-width:0}.teacher-coupon-high-balance-item span{color:var(--steel);font-size:var(--text-label);font-weight:var(--weight-bold);flex:none}.teacher-coupon-high-balance-empty{margin-top:var(--space-3)}@media (hover:hover){.teacher-coupon-high-balance-item:hover{background:var(--steel-soft)}}.teacher-coupon-search-field{margin:0 0 var(--space-3)!important}.teacher-coupon-filter-grid{gap:var(--space-3);margin-bottom:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.teacher-coupon-filter-grid .field{min-width:0;margin:0!important}.teacher-coupon-student-list{gap:var(--space-2);overscroll-behavior:contain;max-height:680px;display:grid;overflow-y:auto}.teacher-coupon-student-option{width:100%;min-width:0;padding:var(--space-3);border:1px solid var(--paper-line);border-radius:var(--radius-control);background:var(--paper-card);color:var(--ink);font-family:var(--font-sans);text-align:left}.teacher-coupon-student-option strong,.teacher-coupon-student-option .teacher-coupon-student-affiliation{overflow-wrap:anywhere;display:block}.teacher-coupon-student-name-row{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.teacher-coupon-student-option strong{min-width:0;font-size:var(--text-list-title);font-weight:var(--weight-bold);line-height:var(--leading-control);flex:auto}.teacher-coupon-student-option .teacher-coupon-student-affiliation{margin-top:var(--space-1);color:var(--ink-soft);font-size:var(--text-sm);line-height:var(--leading-body)}.teacher-coupon-stamp-count{flex:none}.teacher-coupon-student-option.active{border-color:var(--steel);background:var(--steel-soft)}@media (hover:hover){.teacher-coupon-student-option:hover{background:var(--steel-soft)}}.teacher-coupon-student-empty,.teacher-coupon-detail-state{padding-block:var(--space-6)}.teacher-coupon-student-summary h3,.teacher-coupon-student-summary .hint{margin:0;margin-top:var(--space-1)}.teacher-coupon-section-label{color:var(--ink-soft);font-size:var(--text-xs);font-weight:var(--weight-medium);line-height:var(--leading-control)}.coupon-stamp-history-list{gap:var(--space-3);margin-top:var(--space-4);display:grid}.coupon-stamp-month-group{border:1px solid var(--paper-line);border-radius:var(--radius-control);background:var(--paper-card);min-width:0}.coupon-stamp-month-toggle{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;min-width:0;min-height:var(--control-height);padding:var(--space-3);appearance:none;border-radius:var(--radius-control);color:var(--ink);font-family:var(--font-sans);font-size:var(--text-list-title);font-weight:var(--weight-bold);line-height:var(--leading-control);text-align:left;background:0 0;border:0;display:flex}.coupon-stamp-month-toggle>span:first-child{overflow-wrap:anywhere;min-width:0}.coupon-stamp-month-toggle-icon{color:var(--steel);flex:none}.coupon-stamp-month-content{gap:var(--space-2);min-width:0;padding:var(--space-3);border-top:1px solid var(--paper-line);display:grid}.coupon-stamp-month-content[hidden]{display:none}@media (hover:hover){.coupon-stamp-month-toggle:hover,.coupon-stamp-week-toggle:hover{background:var(--steel-soft)}}.coupon-stamp-week-group{border:1px solid var(--paper-line);border-radius:var(--radius-control);min-width:0}.coupon-stamp-week-toggle{justify-content:space-between;align-items:center;gap:var(--space-2);width:100%;min-width:0;min-height:var(--control-height);padding:var(--space-2) var(--space-3);appearance:none;border-radius:var(--radius-control);color:var(--ink-soft);font-family:var(--font-sans);font-size:var(--text-label);font-weight:var(--weight-bold);line-height:var(--leading-control);text-align:left;background:0 0;border:0;display:flex}.coupon-stamp-week-toggle>span:first-child{overflow-wrap:anywhere;min-width:0}.coupon-stamp-week-toggle-icon{color:var(--steel);flex:none}.coupon-stamp-week-content{min-width:0;padding:0 var(--space-3) var(--space-2);border-top:1px solid var(--paper-line)}.coupon-stamp-week-content[hidden]{display:none}.coupon-stamp-compact-list{min-width:0}.coupon-stamp-compact-row{align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-2) 0;border-bottom:1px solid var(--paper-line);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.coupon-stamp-compact-row:last-child{border-bottom:0}.coupon-stamp-amount{color:var(--steel);font-size:var(--text-label);font-weight:var(--weight-bold);line-height:var(--leading-control)}.coupon-stamp-source{min-width:0}.coupon-stamp-title,.coupon-stamp-usage{overflow-wrap:anywhere;display:block}.coupon-stamp-title{color:var(--ink);font-size:var(--text-body);line-height:var(--leading-body)}.coupon-stamp-usage{margin-top:var(--space-1);color:var(--ink-soft);font-size:var(--text-xs);line-height:var(--leading-body)}.coupon-stamp-compact-row .status{justify-self:end}.student-assignment-record-list{min-width:0}.student-assignment-record-list .student-assignment-record-item{padding:var(--space-2) 0}.student-assignment-record-list .student-assignment-record-item:last-child{border-bottom:0}.student-assignment-record-list .title,.student-assignment-record-list .meta{overflow-wrap:anywhere}.coupon-panel{margin-top:var(--space-5);padding:var(--space-4);border:1px solid var(--paper-line);border-radius:var(--radius-panel);background:#ffffff73}.coupon-card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.coupon-card-header h2,.coupon-card-header h3,.coupon-card-header .hint{margin:0}.coupon-card-header .hint{margin-top:var(--space-1)}.coupon-available-count{text-align:right;flex:none}.coupon-available-count strong{color:var(--ink);font-size:var(--text-stat-compact);font-weight:var(--weight-bold);line-height:var(--leading-tight);display:block}.coupon-available-count span{margin-top:var(--space-1);color:var(--ink-soft);font-size:var(--text-xs);line-height:var(--leading-control);display:block}.coupon-student-meta{justify-content:space-between;align-items:center;gap:var(--space-3);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--paper-line);display:flex}.coupon-student-meta span{color:var(--ink-soft);font-size:var(--text-label)}.coupon-summary-grid{gap:var(--space-2);margin-top:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.teacher-coupon-panel .coupon-summary-grid{grid-template-columns:minmax(0,1fr)}.coupon-summary-item{min-width:0;padding:var(--space-3);border:1px solid var(--paper-line);border-radius:var(--radius-control);background:var(--paper-card)}.coupon-summary-item span,.coupon-summary-item strong{display:block}.coupon-summary-item span{color:var(--ink-soft);font-size:var(--text-xs);line-height:var(--leading-control)}.coupon-summary-item strong{margin-top:var(--space-1);color:var(--ink);font-size:var(--text-card-title);font-weight:var(--weight-bold);line-height:var(--leading-tight)}.coupon-redemption-form{gap:var(--space-3);margin-top:var(--space-4);padding:var(--space-4);border:1px solid var(--paper-line);border-radius:var(--radius-control);background:var(--paper-card);grid-template-columns:minmax(140px,.5fr) minmax(220px,1fr);display:grid}.coupon-redemption-form .field{min-width:0;margin:0}.coupon-redemption-memo-field,.coupon-redemption-actions{grid-column:1/-1}.coupon-redemption-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.coupon-history{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--paper-line)}.coupon-history h4{margin:0 0 var(--space-3)}.coupon-history-list{gap:var(--space-2);display:grid}.coupon-history-item{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-3);border:1px solid var(--paper-line);border-radius:var(--radius-control);background:var(--paper-card);display:flex}.coupon-history-item>div{min-width:0}.coupon-history-item strong,.coupon-history-item span{display:block}.coupon-history-item span,.coupon-history-item p{margin:var(--space-1) 0 0;color:var(--ink-soft);font-size:var(--text-xs);line-height:var(--leading-body);overflow-wrap:anywhere}.coupon-history-item>b{color:var(--steel);font-size:var(--text-label);flex:none}.coupon-history-empty{padding-block:var(--space-4)}.result-explain-area{border-top:1px solid var(--paper-line);margin-top:20px;padding-top:16px}.result-explain-title{font-size:var(--text-xs);font-weight:var(--weight-bold);line-height:var(--leading-control);color:var(--ink-soft);margin-bottom:8px}.result-file-list{flex-wrap:wrap;gap:8px;display:flex}.student-result-file-list{grid-template-columns:minmax(0,1fr);gap:0;display:grid}.student-result-file-row{align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-2) 0;border-bottom:1px solid var(--paper-line);grid-template-columns:minmax(0,1fr) auto;display:grid}.student-result-file-row:last-child{border-bottom:0}.student-result-file-name{min-width:0;color:var(--ink);font-size:var(--text-sm);font-weight:var(--weight-medium);line-height:var(--leading-body);overflow-wrap:anywhere}.student-result-file-actions{align-items:center;gap:var(--space-2);display:flex}.result-file-save-hint{margin:var(--space-2) 0 0}.submission-review-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.submission-review-heading,.submission-review-actions,.submission-review-item{min-width:0}.submission-review-heading h3,.submission-review-heading .hint{margin:0}.submission-review-heading .hint{margin-top:var(--space-1)}.submission-review-actions label{cursor:pointer}.submission-review-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(min(150px,100%),1fr));min-width:0;margin-top:18px;display:grid}.submission-review-item{border:1px solid var(--paper-line);border-radius:var(--radius-panel);background:#fff;overflow:hidden}.submission-review-preview{background:0 0;border:0;width:100%;max-width:none;padding:0;display:block}.submission-review-image,.submission-review-image-fallback{aspect-ratio:4/3;width:100%;display:block}.submission-review-image{object-fit:cover}.submission-review-image-fallback{padding:var(--space-3);color:var(--ink-soft);font-size:var(--text-xs);line-height:var(--leading-body);text-align:center;justify-content:center;align-items:center;display:flex}.submission-review-caption{min-width:0;padding:10px}.submission-review-filename{min-width:0;color:var(--ink);font-size:var(--text-xs);font-weight:var(--weight-bold);line-height:var(--leading-body);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.submission-review-delete{margin-top:var(--space-2)}.submission-review-empty{margin-top:18px}.result-section-title{margin-bottom:14px!important}.result-answer-card{border:1px solid var(--paper-line);background:#fff;border-radius:9px;margin-bottom:10px;display:flex;overflow:hidden}.result-answer-card:last-child{margin-bottom:0}.result-mark{width:54px;min-width:54px;font-family:var(--font-serif);justify-content:center;align-items:center;font-size:24px;font-weight:900;display:flex}.result-mark.correct{color:var(--status-success);background:#f0f9f2}.result-mark.wrong{color:var(--status-danger);background:#fff1f1}.result-mark.pending{color:var(--status-warning);background:#fff8e7}.result-answer-body{flex:1;min-width:0;padding:13px 15px}.result-answer-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:9px;display:flex}.result-answer-head strong{font-size:var(--text-body);line-height:var(--leading-control)}.result-answer-line{font-size:var(--text-sm);line-height:var(--leading-body);gap:12px;margin-top:4px;display:flex}.result-answer-line span{width:auto;min-width:36px;color:var(--ink-soft);flex-shrink:0}.result-answer-line strong{overflow-wrap:anywhere;min-width:0;font-weight:var(--weight-medium);color:var(--ink)}.result-answer-line.correct-answer strong{color:#b91c1c}.result-answer-note{font-size:var(--text-xs);line-height:var(--leading-body);color:var(--ink-soft);margin:8px 0 0}@media (width>=601px) and (width<=960px){#app{padding:24px 18px 64px}.nav{row-gap:0}}@media (width<=600px){#app{padding:20px 14px 56px}body.maintenance-page #app{padding:var(--space-4)}.maintenance-card{padding:var(--space-8) var(--space-4)}.topbar{gap:var(--space-3);margin-bottom:var(--space-4);flex-direction:column}.brand{gap:var(--space-3);width:100%;margin-bottom:0}.stamp{width:46px;height:46px;font-size:18px}.brand-text h1{font-size:20px}.who{text-align:left;width:100%}.nav{gap:0 var(--space-1);margin-bottom:var(--space-4)}.nav button:not(.logout){min-height:var(--touch-target);flex:auto;padding:10px 8px}.nav .spacer{display:none}.nav .logout{min-height:var(--control-height);text-align:right;flex:1 0 100%;padding:8px 4px}.card{padding:var(--space-4);margin-bottom:var(--space-3)}.row{flex-direction:column;align-items:stretch}.row>.btn,.row>button{width:100%}.toolbar{align-items:stretch;gap:var(--space-2)}.toolbar>.btn,.toolbar>button{width:100%}.surface-panel{padding:14px}label.field{margin-bottom:var(--space-3)}input:not([type]),input[type=text],input[type=email],input[type=password],input[type=search],input[type=tel],input[type=date],input[type=time],input[type=number],input[type=file],textarea,select,.btn{min-height:var(--touch-target)}input:not([type]),input[type=text],input[type=email],input[type=password],input[type=search],input[type=tel],input[type=date],input[type=time],input[type=number],textarea,select{font-size:16px!important}.btn.small,.btn.assignment-pagination-button{min-height:var(--touch-target)}.list-item{flex-direction:column;align-items:stretch;gap:10px;padding:14px 0}.list-item>.btn{align-self:stretch}.prow{flex-wrap:wrap}.prow .pans-input{flex:100%;order:3}.prow .btn.small{order:4;margin-left:auto}.file-upload-box{flex-wrap:wrap;align-items:flex-start;padding:14px}.file-upload-button{width:100%;min-height:var(--control-height)}.academy-filter-btn{min-height:var(--touch-target)}.overlay{padding:10px}.overlay-head{align-items:flex-start;gap:var(--space-3)}.overlay-head>span{overflow-wrap:anywhere;min-width:0}.overlay-body{padding:var(--space-4)}.form-message,[id$=Error],[id$=Success]{padding-left:var(--space-2);font-size:var(--text-sm);margin:var(--space-2) 0 var(--space-3)!important}.privacy-policy-wrap{margin-top:0}.privacy-policy-document{padding:var(--space-4);line-height:var(--leading-relaxed)}.privacy-policy-back{width:auto;min-height:var(--control-height);margin-bottom:var(--space-4)}.privacy-policy-document>h2:first-of-type{margin-bottom:var(--space-2);font-size:20px}.privacy-policy-document h3{margin-top:var(--space-6);margin-bottom:var(--space-3)}.privacy-policy-document h4{margin-top:var(--space-5)}.privacy-policy-document p{margin-bottom:var(--space-3)}.privacy-policy-document>.hint{margin-bottom:var(--space-5)}.privacy-policy-document ul,.privacy-policy-document ol{margin-bottom:var(--space-4);padding-left:20px}.privacy-policy-document li{padding-left:2px}.privacy-policy-document li>ul,.privacy-policy-document li>ol{padding-left:var(--space-4)}.coupon-card-header,.coupon-history-item{flex-direction:column;align-items:stretch}.teacher-coupon-management-layout,.teacher-coupon-high-balance-list{grid-template-columns:minmax(0,1fr)}.teacher-coupon-high-balance-item{min-height:var(--touch-target)}.teacher-coupon-filter-grid{grid-template-columns:minmax(0,1fr)}.teacher-coupon-student-list{max-height:280px}.teacher-coupon-student-option,.coupon-stamp-month-toggle,.coupon-stamp-week-toggle{min-height:var(--touch-target)}.coupon-card-header>.btn{width:100%;min-height:var(--touch-target)}.coupon-available-count{text-align:left}.coupon-summary-grid,.coupon-redemption-form{grid-template-columns:minmax(0,1fr)}.coupon-redemption-memo-field,.coupon-redemption-actions{grid-column:1}.coupon-redemption-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.coupon-redemption-actions .btn{width:100%;min-height:var(--touch-target)}.coupon-history-item>b{align-self:flex-start}.coupon-stamp-compact-row{grid-template-columns:auto minmax(0,1fr);align-items:start}.coupon-stamp-compact-row .status{grid-column:2;justify-self:start}.student-result-file-row{grid-template-columns:minmax(0,1fr);align-items:stretch}.student-result-file-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.student-result-file-actions .btn{width:100%;min-width:0;min-height:var(--touch-target)}.result-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.result-summary-head{align-items:center}.submission-review-header{flex-direction:column;align-items:stretch}.submission-review-actions,.submission-review-actions .btn{width:100%}.submission-review-actions .btn{min-height:var(--touch-target)}.result-score strong{font-size:var(--text-stat)}.result-mark{width:44px;min-width:44px}}@media (width<=380px){#app{padding-inline:12px}.card{padding:14px}.result-stats{grid-template-columns:1fr}}@media (width<=600px){.student-search-field{max-width:none}.pending-bulk-actions{grid-template-columns:minmax(0,1fr);align-items:stretch}.affiliation-page-selection-bar{flex-wrap:wrap;align-items:center}.affiliation-page-selection-control,.affiliation-student-checkbox{min-height:var(--touch-target)}.affiliation-bulk-actions{grid-template-columns:minmax(0,1fr);align-items:stretch}.affiliation-bulk-submit{width:100%;min-height:var(--touch-target)}.affiliation-bulk-buttons{grid-column:1;grid-template-columns:minmax(0,1fr);display:grid}.affiliation-bulk-buttons .btn{width:100%;min-height:var(--touch-target);white-space:normal}.pending-bulk-selection{justify-content:space-between}.pending-page-selection-control,.pending-student-checkbox{min-height:var(--touch-target)}.pending-bulk-buttons{grid-template-columns:minmax(0,1fr);display:grid}.pending-bulk-buttons .btn{width:100%;min-width:0;min-height:var(--touch-target)}.student-status-tabs{gap:var(--space-1);margin:var(--space-3) 0 var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.student-status-tabs button{min-height:var(--touch-target);padding-inline:var(--space-2);font-size:14px}.academy-filter-tabs{gap:var(--space-2);margin:var(--space-4) 0;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.academy-filter-btn{width:100%;min-width:0;min-height:var(--touch-target);padding:8px 10px}.student-pagination-button{min-height:var(--touch-target)}.student-list{gap:var(--space-3)}.student-card{align-items:stretch;gap:var(--space-3);flex-direction:column;min-height:0;padding:14px}.student-card-main,.pending-student-card-content,.affiliation-student-card-content,.student-card-name,.student-card-meta,.student-card-bottom,.student-affiliation-controls{min-width:0;max-width:100%}.pending-student-card-content{width:100%}.student-affiliation-controls{grid-template-columns:minmax(0,1fr)}.student-card-bottom{align-items:flex-start;gap:6px}.student-card-action{width:100%;min-width:0;padding-top:var(--space-3);border-top:1px solid var(--paper-line);flex-wrap:wrap}.student-card-action .btn{min-width:0;min-height:var(--touch-target);white-space:normal;flex:140px}.student-card-arrow{align-self:center;margin-left:auto}.class-management-toolbar{grid-template-columns:minmax(0,1fr);align-items:stretch}.class-management-toolbar>.btn{width:100%;min-height:var(--touch-target)}.class-management-list .list-item{flex-direction:row;align-items:center}.class-management-list .list-item>.btn{min-height:var(--touch-target)}.organization-management-list .list-item,.organization-management-edit-row{flex-direction:column;align-items:stretch}.organization-management-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.organization-management-actions .btn,.organization-management-edit-input{width:100%;min-height:var(--touch-target)}}@media (width<=380px){.student-status-tabs,.academy-filter-tabs,.pending-bulk-buttons{grid-template-columns:minmax(0,1fr)}}@media (width>=601px) and (width<=960px){.student-report-summary-grid,.student-monthly-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.student-report-control-row{align-items:flex-end}}@media (width<=600px){.student-report-actions{padding:var(--space-2);grid-template-columns:minmax(0,1fr);justify-content:stretch;display:grid}.student-report-actions .btn,.student-report-actions button{width:100%;min-width:0;min-height:var(--touch-target);white-space:normal}.student-detail-header{flex-direction:column;align-items:stretch!important;gap:var(--space-3)!important}.student-detail-header>.hint{text-align:left!important;white-space:normal!important}.student-report-controls{gap:var(--space-3);grid-template-columns:minmax(0,1fr);padding:14px!important}.student-report-controls>.student-report-actions{grid-area:2/1;width:100%}.student-report-control-row{grid-area:1/1;align-items:stretch!important;gap:var(--space-3)!important;grid-template-columns:minmax(0,1fr)!important;display:grid!important}.student-report-range-field{max-width:none}.student-report-granularity,.student-report-granularity-buttons{width:100%}.student-report-granularity-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.student-report-granularity-buttons .btn{min-height:var(--touch-target)}.student-report-custom-range{grid-area:3/1;max-width:none;grid-template-columns:minmax(0,1fr)!important}.student-report-date-display{min-height:var(--touch-target)}.student-report-calendar-popup,.student-report-calendar-popup.align-end{width:340px;max-width:calc(100vw - 28px);padding:var(--space-3);left:50%;right:auto;transform:translate(-50%)}.student-learning-granularity{align-items:stretch;gap:var(--space-2);flex-direction:column}.student-learning-granularity .student-report-granularity-buttons{width:100%}.student-report-control-row>*,.student-report-control-row .field,.student-report-control-row select,.student-report-control-row input{width:100%;max-width:100%}.student-report-control-row .btn{min-height:var(--touch-target)}.student-report-summary-grid,.student-monthly-summary-grid{gap:var(--space-2)!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}.student-report-summary-grid>div,.student-monthly-summary-grid>div{min-height:104px;padding:var(--space-3)!important}.student-report-chart-legend{gap:var(--space-3)!important;margin-bottom:var(--space-3)!important}.student-report-chart{margin-top:var(--space-3);padding:var(--space-3)}.student-report-chart-scroll,.student-report-table-scroll{max-width:100%}.student-report-table-scroll table{min-width:600px!important}.student-learning-calendar-scroll{margin-top:var(--space-2);padding-bottom:var(--space-3)}.student-learning-calendar-grid{width:680px;min-width:680px;gap:6px!important}.student-calendar-cell{min-height:104px!important;padding:8px!important}.student-calendar-event{padding:5px 6px!important}}@media (width<=380px){.student-report-actions{grid-template-columns:minmax(0,1fr)}.student-report-summary-grid,.student-monthly-summary-grid{grid-template-columns:minmax(0,1fr)!important}}@media (width<=600px){.assignment-title-field{max-width:none}.assignment-deadline-controls{grid-template-columns:minmax(0,1fr);align-items:stretch!important;gap:var(--space-4)!important}.assignment-deadline-group{width:100%}.assignment-date-controls,.assignment-time-controls{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;gap:6px!important;display:grid!important}.assignment-date-controls select,.assignment-time-controls select{min-width:0;width:100%!important;padding-left:var(--space-2)!important}.assignment-deadline-preview{width:100%;display:block!important}.assignment-section-card{padding:14px}.assignment-section-header{grid-template-columns:minmax(0,1fr);align-items:stretch!important}.assignment-section-delete{min-height:var(--touch-target);justify-self:end}.assignment-editor .prow{gap:var(--space-2);padding:var(--space-3) 0;border-bottom:0;grid-template-columns:26px minmax(0,1fr);display:grid}.assignment-editor .prow:last-child{border-bottom:0}.assignment-editor .prow .pnum-badge{grid-area:1/1}.assignment-editor .prow .pnum-input{grid-area:1/2}.assignment-editor .prow .pans-input{grid-area:2/1/auto/-1}.assignment-editor .prow .btn.small{min-height:var(--touch-target);grid-area:3/1/auto/-1;justify-self:end}.assignment-editor .stu-check{gap:var(--space-3);padding:var(--space-3) 0}.assignment-editor .stu-check input[type=checkbox]{width:20px;height:20px}.assignment-editor .file-upload-box{flex-direction:column;align-items:stretch}.assignment-editor .file-upload-icon{align-self:flex-start}.assignment-editor .upload-file-item .btn{min-height:var(--touch-target)}.assignment-editor>.row:last-child{align-items:stretch}.assignment-editor>.row:last-child .btn,.assignment-editor button[onclick*=saveAssignment],.assignment-editor button[onclick*=updateAssignment]{width:100%;min-height:var(--touch-target)}}@media (width<=380px){.assignment-date-controls,.assignment-time-controls,.assignment-editor .upload-file-item{grid-template-columns:minmax(0,1fr)}.assignment-editor .upload-file-item .btn{width:100%}}html:has(#app>.teacher-shell){scrollbar-gutter:stable}@supports not (scrollbar-gutter:stable){html:has(#app>.teacher-shell){overflow-y:scroll}}#app:has(>.teacher-shell){max-width:none;padding:0}.teacher-shell{--paper:#f7f4ea;--paper-card:#fffefc;--paper-line:#e2d0ae;--red:#ca361d;--red-soft:#faede6;--steel:#3c5f80;--steel-soft:#ebf1f5;--radius:12px;--card-shadow:none;background:var(--paper);grid-template-columns:248px minmax(0,1fr);min-height:100dvh;display:grid}.teacher-sidebar{border-right:1px solid var(--paper-line);background:#fcfaf3;flex-direction:column;min-width:0;height:100dvh;padding:28px 20px clamp(20px,19vh,196px);display:flex;position:sticky;top:0;overflow-y:auto}.teacher-sidebar-brand{padding:0 0 27px}.teacher-sidebar .brand{gap:14px;margin:0}.teacher-sidebar .stamp{width:42px;height:42px;box-shadow:none;border-width:2px;transform:none}.teacher-sidebar .brand-text .teacher-brand-name{color:var(--ink);font-family:var(--font-serif);font-size:18px;font-weight:var(--weight-bold);margin:0}.teacher-sidebar .brand-text p{font-size:var(--text-xs)}.teacher-sidebar-menu{flex-direction:column;flex:1;gap:24px;display:flex}.teacher-sidebar .teacher-nav{border:0;flex-direction:column;align-items:flex-start;gap:4px;margin:0;display:flex}.teacher-sidebar .teacher-nav button{width:auto;min-height:37px;color:var(--ink);border-radius:var(--radius-control);text-align:left;white-space:normal;overflow-wrap:anywhere;border:0;align-items:center;gap:10px;padding:8px 12px;font-size:14px;display:inline-flex}.teacher-sidebar .teacher-nav button:hover{background:var(--steel-soft);color:var(--steel)}.teacher-sidebar .teacher-nav button.active{background:var(--red-soft);color:var(--red);font-weight:var(--weight-bold);box-shadow:none}.teacher-sidebar-footer{margin-top:auto;padding-top:16px}.teacher-sidebar .teacher-nav button:before{content:"";background:var(--ink-soft);opacity:.35;border-radius:50%;flex:0 0 8px;width:8px;height:8px}.teacher-sidebar .teacher-nav button.active:before{background:var(--red);opacity:1}.teacher-sidebar-footer .teacher-nav{gap:18px}.teacher-menu-toggle{display:none}.teacher-main{width:100%;min-width:0;max-width:1192px;margin:0 auto;padding:36px 40px 80px}.teacher-page-header{--teacher-title-size:28px;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin:0 0 24px;padding:0;display:flex}.teacher-page-heading{min-width:0;min-height:calc(var(--teacher-title-size) * 1.3 + 4px + 19.5px);overflow-wrap:anywhere}.teacher-page-heading h1{font-family:var(--font-serif);font-size:var(--teacher-title-size);margin:0;font-weight:700;line-height:1.3}.teacher-page-heading p{font-family:var(--font-sans);color:var(--ink-soft);margin:4px 0 0;font-size:13px;font-weight:400;line-height:1.5}.teacher-page-actions{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.teacher-page-actions .btn{min-height:36px;padding:8px 14px;font-size:13px}.teacher-shell .btn.secondary:not(.danger):not(.active){color:var(--steel);border-color:var(--steel);background:0 0}.teacher-shell .btn.ghost:not(.danger):not(.active){color:var(--ink-soft);border-color:var(--paper-line);background:0 0}@media (width>=601px) and (width<=960px){.teacher-shell{grid-template-columns:220px minmax(0,1fr)}.teacher-main{padding:28px 20px 80px}}@media (width<=600px){.teacher-shell{display:block}.teacher-sidebar{border-right:0;border-bottom:1px solid var(--paper-line);height:auto;padding:16px;position:static;overflow:visible}.teacher-sidebar-brand{justify-content:space-between;align-items:center;gap:12px;padding:0;display:flex}.teacher-menu-toggle{flex-shrink:0;min-height:44px;display:inline-flex}.teacher-sidebar-menu{display:none}.teacher-sidebar.is-menu-open .teacher-sidebar-menu{padding-top:20px;display:flex}.teacher-main{padding:24px 16px 80px}.teacher-sidebar .teacher-nav button,.teacher-page-actions .btn{min-height:44px}.teacher-page-header{--teacher-title-size:24px}.teacher-page-actions{justify-content:flex-end;width:100%}}.teacher-dashboard{gap:24px;min-width:0;display:grid}.teacher-dashboard .card{margin:0}.teacher-dashboard .td-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.teacher-dashboard .td-stat{text-align:left;min-height:108px;color:var(--ink-soft);flex-direction:column;align-items:flex-start;gap:4px;padding:16px 18px;font-size:13px;font-weight:700;display:flex}.teacher-dashboard .td-stat strong{color:var(--steel);font-size:28px;line-height:1.4}.teacher-dashboard .td-stat-pendingItems strong{color:var(--red)}.teacher-dashboard .td-meta{color:var(--ink-soft);font-size:12px;font-weight:400;display:block}.teacher-dashboard .td-columns{grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:16px;display:grid}.teacher-dashboard .td-panel{min-height:382px;padding:20px}.teacher-dashboard .td-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.teacher-dashboard .td-heading h2{margin:0}.teacher-dashboard .td-list{margin:0;padding:0;list-style:none}.teacher-dashboard .td-link{border:0;border-bottom:1px solid var(--paper-line);width:100%;min-height:71px;color:var(--ink);text-align:left;background:0 0;align-items:center;gap:12px;padding:12px 0;font-size:14px;display:flex}.teacher-dashboard li:last-child .td-link{border-bottom:0}.teacher-dashboard .td-copy{flex:1;gap:4px;min-width:0;display:grid}.teacher-dashboard .td-title{align-items:center;gap:8px;min-width:0;display:flex}.teacher-dashboard .td-title strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.teacher-dashboard .badge{flex-shrink:0}.teacher-dashboard .td-row-end{flex-shrink:0;align-items:center;gap:8px;display:flex}.teacher-dashboard .td-arrow{color:var(--steel);font-size:20px}.teacher-dashboard .td-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:240px;font-size:14px;display:flex}.teacher-dashboard .td-empty p{color:var(--ink-soft);margin:0;font-size:12px}.teacher-dashboard .td-recent{padding:20px}.teacher-dashboard .td-recent-link{min-height:57px;padding:8px 0}.teacher-dashboard .td-student{overflow-wrap:anywhere;flex:0 245px;min-width:0}.teacher-dashboard .td-more{color:var(--steel);font-size:12px;position:relative}.teacher-dashboard .td-more summary{cursor:pointer;padding:8px 0}.teacher-dashboard .td-more summary:focus-visible{outline:3px solid var(--steel);outline-offset:2px}.teacher-dashboard .td-more>div{flex-wrap:wrap;gap:8px;padding:8px 0;display:flex}.teacher-dashboard .td-footer{color:var(--ink-soft);flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;font-size:12px;display:flex}@media (hover:hover){.teacher-dashboard .td-link:hover,.teacher-dashboard .td-stat:hover{background:var(--steel-soft)}}@media (width<=960px){.teacher-dashboard .td-columns{grid-template-columns:minmax(0,1fr)}.teacher-dashboard .td-panel{min-height:0}.teacher-dashboard .td-student{flex-basis:160px}}@media (width<=600px){.teacher-dashboard{gap:16px}.teacher-dashboard .td-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-dashboard .td-panel,.teacher-dashboard .td-recent{padding:16px}.teacher-dashboard .td-recent-link{grid-template-columns:minmax(0,1fr) auto;display:grid}.teacher-dashboard .td-student,.teacher-dashboard .td-recent-link .td-copy{grid-column:1}.teacher-dashboard .td-recent-link .td-row-end{grid-area:1/2/3}.teacher-dashboard .td-more summary{align-items:center;min-height:44px;display:flex}}@media (width<=380px){.teacher-dashboard .td-summary{grid-template-columns:minmax(0,1fr)}}:is(.teacher-assignment-list,.teacher-test-list){gap:24px;min-width:0;display:grid}:is(.teacher-assignment-list,.teacher-test-list) .card{margin:0}:is(.teacher-assignment-list,.teacher-test-list) .tal-filters{padding:16px}:is(.teacher-assignment-list,.teacher-test-list) .tal-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,3fr);gap:10px;display:grid}:is(.teacher-assignment-list,.teacher-test-list) .tal-filter{min-width:0;margin:0}:is(.teacher-assignment-list,.teacher-test-list) .tal-results{padding:0 0 24px}:is(.teacher-assignment-list,.teacher-test-list) .assignment-list-summary{color:var(--ink-soft);margin:0;padding:12px 18px;font-size:12px}:is(.teacher-assignment-list,.teacher-test-list) .tal-columns,:is(.teacher-assignment-list,.teacher-test-list) .tal-item{grid-template-columns:minmax(0,2.5fr) minmax(0,1.4fr) minmax(0,.9fr) 124px;align-items:center;gap:16px;padding:16px 18px;display:grid}:is(.teacher-assignment-list,.teacher-test-list) .tal-columns{background:var(--steel-soft);color:var(--ink-soft);font-size:12px;font-weight:700}:is(.teacher-assignment-list,.teacher-test-list) .tal-item{border-bottom:1px solid var(--paper-line);min-height:95px}:is(.teacher-assignment-list,.teacher-test-list) .tal-item:last-child{border-bottom:0}:is(.teacher-assignment-list,.teacher-test-list) .tal-item>div{min-width:0}:is(.teacher-assignment-list,.teacher-test-list) .tal-title-cell h2{font-family:var(--font-sans);white-space:nowrap;text-overflow:ellipsis;margin:0 0 4px;font-size:14px;line-height:1.5;overflow:hidden}:is(.teacher-assignment-list,.teacher-test-list) .tal-meta{color:var(--ink-soft);overflow-wrap:anywhere;font-size:12px}:is(.teacher-assignment-list,.teacher-test-list) .tal-badges{flex-wrap:wrap;gap:4px;margin-bottom:4px;display:flex}:is(.teacher-assignment-list,.teacher-test-list) .tal-badges .badge{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}:is(.teacher-assignment-list,.teacher-test-list) .tal-action{justify-content:center;display:flex}:is(.teacher-assignment-list,.teacher-test-list) .tal-action .btn{white-space:nowrap;min-height:40px}:is(.teacher-assignment-list,.teacher-test-list) .assignment-pagination{margin:24px 16px 0;padding:0}@media (width>=601px) and (width<=960px){:is(.teacher-assignment-list,.teacher-test-list) .tal-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}:is(.teacher-assignment-list,.teacher-test-list) .tal-columns,:is(.teacher-assignment-list,.teacher-test-list) .tal-item{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) 100px;gap:12px}:is(.teacher-assignment-list,.teacher-test-list) .tal-columns span:nth-child(3){display:none}:is(.teacher-assignment-list,.teacher-test-list) .tal-status{grid-area:2/2}:is(.teacher-assignment-list,.teacher-test-list) .tal-action{grid-area:1/3/3}}@media (width<=600px){:is(.teacher-assignment-list,.teacher-test-list) .tal-filter-grid{grid-template-columns:minmax(0,1fr)}:is(.teacher-assignment-list,.teacher-test-list) .tal-columns{display:none}:is(.teacher-assignment-list,.teacher-test-list) .tal-item{grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:16px}:is(.teacher-assignment-list,.teacher-test-list) .tal-title-cell,:is(.teacher-assignment-list,.teacher-test-list) .tal-target{grid-column:1/-1}:is(.teacher-assignment-list,.teacher-test-list) .tal-title-cell h2{white-space:normal;overflow-wrap:anywhere}:is(.teacher-assignment-list,.teacher-test-list) .tal-action .btn,:is(.teacher-assignment-list,.teacher-test-list) select,:is(.teacher-assignment-list,.teacher-test-list) input{min-height:44px}:is(.teacher-assignment-list,.teacher-test-list) .tal-filter select,:is(.teacher-assignment-list,.teacher-test-list) .tal-filter input{font-size:16px!important}}.new-assignment-layout{grid-template-columns:minmax(0,1fr);gap:20px;min-width:0;display:grid}.new-assignment-layout .card{margin-bottom:0}.new-assignment-layout .assignment-section-card{box-shadow:none;background:0 0;padding:16px}.new-assignment-layout .assignment-section-card:first-child{margin-top:0!important}.new-assignment-layout .assignment-recipient-settings-heading h3{font-size:var(--text-card-title)}.new-assignment-layout .assignment-recipient-settings-group{min-width:0}.new-assignment-file-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.new-assignment-file-grid>.surface-panel{padding:16px}.new-assignment-file-grid .file-upload-box{flex-wrap:wrap;min-width:0}.new-assignment-file-grid .file-upload-text{overflow-wrap:anywhere;min-width:0}.new-assignment-file-grid .file-upload-icon{display:none}.new-assignment-file-grid .upload-file-item{flex-wrap:wrap;gap:8px;display:flex}.new-assignment-file-grid .fname{overflow-wrap:anywhere;min-width:0}.new-assignment-layout .assignment-target-class-list{grid-template-columns:repeat(3,minmax(0,1fr))}.new-assignment-layout .assignment-target-exceptions{grid-template-columns:repeat(2,minmax(0,1fr))}.new-assignment-layout .assignment-target-child-list{grid-template-columns:minmax(0,1fr)}.new-assignment-layout .assignment-deadline-controls{gap:12px!important}.new-assignment-layout .assignment-deadline-group{min-width:0;max-width:100%}@media (width<=960px){.new-assignment-layout{grid-template-columns:minmax(0,1fr);gap:16px}.new-assignment-layout .assignment-target-class-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.new-assignment-file-grid,.new-assignment-layout .assignment-target-class-list,.new-assignment-layout .assignment-target-exceptions{grid-template-columns:minmax(0,1fr)}.new-assignment-layout .card{padding:16px}}.teacher-page-header.teacher-page-header-editor{z-index:10;background:var(--paper);box-shadow:0 1px 0 var(--paper-line);align-items:center;padding-block:12px;transition:padding .16s,margin-bottom .16s;position:sticky;top:0}.teacher-page-header-editor .teacher-page-actions{flex-shrink:0}@media (width>=601px){.teacher-main:has(>.teacher-page-header-editor){padding-top:0}}.teacher-main:has(>.teacher-page-header-editor) .new-assignment-layout :is(input,select,textarea,button){scroll-margin-top:152px}@media (width<=600px){.teacher-main:has(>.teacher-page-header-editor) .new-assignment-layout :is(input,select,textarea,button){scroll-margin-top:212px}}.new-assignment-layout .assignment-class-deadlines{padding-bottom:0}.new-assignment-layout .assignment-class-deadline-row{padding-block:var(--space-4);border-top:1px solid var(--paper-line);align-items:center;margin-block:0}.new-assignment-layout .assignment-class-deadline-info>strong,.new-assignment-layout .assignment-class-deadline-toggle,.new-assignment-layout .assignment-class-deadline-controls .field{align-self:center;margin-block:0}.student-management-card{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px;min-width:0;display:grid}.student-management-card .student-management-notice,.student-management-card .student-status-tabs,.student-management-card .student-results{grid-column:1/-1;margin:0}.student-management-card .student-status-tabs{background:0 0;border:0;flex-wrap:wrap;padding:0;display:flex}.student-management-card .student-status-tabs button{background:var(--steel-soft);color:var(--steel);font-size:var(--text-sm)}.student-management-card .student-status-tabs button.active{background:var(--red-soft);color:var(--red);box-shadow:none}.student-management-card .student-search-field,.student-management-card .student-filter-controls .field{min-width:0;max-width:none;margin:0}.student-management-card .student-management-list-wrap{display:contents}.student-filter-controls{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:12px;display:grid}.student-management-card input,.student-management-card select{min-width:0;max-width:100%}.student-management-card .student-list{border:1px solid var(--paper-line);background:var(--paper-card);border-radius:12px;display:block;overflow:hidden}.student-management-card .student-card{border:0;border-bottom:1px solid var(--paper-line);min-height:88px;box-shadow:none;cursor:default;background:0 0;border-radius:0;margin:0;padding:16px}.student-management-card .student-card:last-child{border-bottom:0}.student-management-card .student-card-name{font-size:14px}.student-management-card .student-list-columns,.student-management-card .student-compact-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.3fr) minmax(0,.7fr) 180px;align-items:center;gap:8px 16px;display:grid}.student-list-columns{background:var(--steel-soft);color:var(--ink-soft);font-size:var(--text-xs);font-weight:var(--weight-bold);padding:12px 16px}.student-identity{align-items:center;gap:8px;min-width:0;display:flex}.student-management-card .student-compact-row>*{overflow-wrap:anywhere;min-width:0}.student-management-card .student-compact-row .student-card-meta,.student-management-card .student-compact-row .student-card-bottom{margin:0}.student-management-card .student-compact-row .student-card-bottom{gap:4px}.student-row-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.student-row-actions>.badge{flex-basis:100%;width:fit-content}.student-edit-disclosure{grid-column:1/-1}.student-edit-disclosure summary{width:fit-content;color:var(--steel);font-size:var(--text-sm);cursor:pointer;margin-left:auto;padding:8px}.student-edit-disclosure summary:focus-visible{outline:2px solid var(--steel);outline-offset:2px}.student-edit-disclosure[open]{border:1px solid var(--paper-line);background:var(--paper);border-radius:8px;padding:12px}.student-management-card .student-pagination{flex-wrap:wrap;margin:0;padding:32px 12px}.student-management-card .student-empty{border:1px solid var(--paper-line);background:var(--paper-card);border-radius:12px;padding:32px 16px}@media (width>=601px) and (width<=960px){.student-management-card .student-list-columns{display:none}.student-management-card .student-compact-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 180px}.student-compact-row .student-row-actions{grid-area:1/3/3}}@media (width<=600px){.student-management-card,.student-filter-controls{grid-template-columns:minmax(0,1fr)}.student-management-card .student-list-columns{display:none}.student-management-card .student-compact-row{grid-template-columns:minmax(0,1fr);gap:12px}.student-management-card .student-card{padding:16px}.student-management-card .student-row-actions .btn,.student-edit-disclosure summary{min-height:44px}.student-management-card .student-affiliation-controls{grid-template-columns:minmax(0,1fr)}.student-management-card .student-pagination{padding-block:24px}.student-management-card .student-filter-controls select,.student-management-card .student-search-field input{min-height:44px;font-size:16px}}@media (width>=961px){.student-management-card .student-list-active .student-list-columns,.student-management-card .student-list-active .student-compact-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.3fr) 88px 300px;column-gap:12px}.student-management-card .student-list-active .student-compact-row{grid-template-rows:40px;min-height:65px;padding-block:12px;position:relative}.student-list-active .student-card-name,.student-list-active .student-card-meta,.student-list-active .student-joined,.student-list-active .academy-badge{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.student-list-active .affiliation-student-checkbox{flex-shrink:0}.student-management-card .student-list-active .student-card-bottom{flex-wrap:nowrap}.student-list-active .academy-badge{flex:0 auto}.student-list-active .student-row-actions{flex-wrap:nowrap;padding-right:104px}.student-list-active .student-row-actions>*{white-space:nowrap;flex:none}.student-list-active .student-row-actions .btn{min-height:40px}.student-list-active .student-edit-disclosure:not([open]){position:absolute;top:12px;right:16px}.student-list-active .student-edit-disclosure summary{box-sizing:border-box;white-space:nowrap;width:96px;min-height:40px;line-height:24px}.student-list-active .student-edit-disclosure[open]{position:static}.student-list-active .student-edit-disclosure[open] summary{position:absolute;top:12px;right:16px}.student-list-active .student-edit-disclosure[open] .student-affiliation-controls{margin-top:0}}.academy-hierarchy{min-width:0}.academy-hierarchy>.organization-management-list{gap:16px}.academy-hierarchy .academy-management-toolbar{border:1px solid var(--paper-line);background:var(--paper-card);border-radius:12px;margin:0 0 20px;padding:16px}.academy-hierarchy-section{border:1px solid var(--paper-line);background:var(--paper-card);border-radius:12px;min-width:0}.academy-hierarchy .academy-hierarchy-heading .list-item{background:var(--steel-soft);border:0;border-radius:12px 12px 0 0;margin:0;padding:12px 20px}.academy-hierarchy .organization-management-info{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.academy-hierarchy .title{min-width:0;font-family:var(--font-sans);overflow-wrap:anywhere;font-size:14px}.academy-hierarchy .academy-hierarchy-heading .title{font-size:17px}.academy-hierarchy .meta{color:var(--ink-soft);margin:0;font-size:12px}.academy-hierarchy .organization-management-actions{flex-wrap:wrap;flex-shrink:0}.academy-hierarchy .organization-management-actions .btn{white-space:nowrap}.academy-hierarchy .class-management-list{gap:0;margin:0}.academy-hierarchy .class-management-group{border:0;border-top:1px solid var(--paper-line);box-shadow:none;background:0 0;border-radius:0;overflow:visible}.academy-hierarchy .class-management-row{min-height:52px;padding:8px 20px}.academy-hierarchy .class-management-child-list{background:0 0;border-top:0;border-left:0;margin-left:20px;padding:0}.academy-hierarchy .class-management-child-row{border-top:1px solid var(--paper-line)}.academy-hierarchy .class-management-child-create{background:0 0;border:0;padding:4px 20px 8px 40px}.academy-hierarchy .class-management-parent-create{margin:0;padding:12px 20px}.academy-hierarchy .empty{padding:12px 20px}.academy-hierarchy .organization-management-edit-input{max-width:100%}@media (width<=960px){.academy-hierarchy .organization-management-info{grid-template-columns:minmax(0,1fr);gap:4px}}@media (width<=600px){.academy-hierarchy .academy-hierarchy-heading .list-item,.academy-hierarchy .class-management-row{flex-direction:column;align-items:stretch;gap:12px;padding:12px 16px}.academy-hierarchy .organization-management-actions{justify-content:flex-end;width:100%}.academy-hierarchy .organization-management-actions .btn{flex:0 auto;min-height:44px}.academy-hierarchy .class-management-child-list{margin-left:12px}.academy-hierarchy .class-management-child-create{padding-left:28px}.academy-hierarchy .organization-management-edit-input{width:100%}}.academy-hierarchy .class-management-parent-row{background:#f1e9da}.academy-hierarchy .class-management-group,.academy-hierarchy .class-management-child-row{border-top-color:#e4d4b5}.academy-hierarchy .class-management-parent-row .title{font-weight:var(--weight-bold)}.academy-hierarchy .meta{text-align:right;font-variant-numeric:tabular-nums}.academy-hierarchy .class-management-row .organization-management-actions{gap:8px}.academy-hierarchy .organization-management-actions .btn:not(.class-management-parent-add-button){color:var(--ink-soft);box-shadow:none;background:0 0;border-color:#0000}.academy-hierarchy .organization-management-actions .btn:not(.class-management-parent-add-button):hover{border-color:var(--paper-line);background:var(--paper);color:var(--steel)}.academy-hierarchy .class-management-child-add-button{background:0 0;border-color:#0000;min-height:34px}@media (width>=601px){.academy-hierarchy .organization-management-actions{flex-wrap:nowrap}.academy-hierarchy .class-management-row .organization-management-actions{min-width:112px}.academy-hierarchy .academy-hierarchy-heading .list-item{gap:12px}}@media (width<=960px){.academy-hierarchy .meta{text-align:left}}@media (width<=600px){.academy-hierarchy .class-management-child-add-button{min-height:44px}}.academy-hierarchy .class-management-create-form{display:block}.academy-hierarchy .class-management-create-field{margin:0}.academy-hierarchy .class-management-create-controls{align-items:flex-end;gap:var(--space-3);min-width:0;display:flex}.academy-hierarchy .class-management-create-controls>input{flex:440px;min-width:0}.academy-hierarchy .class-management-create-controls .class-management-create-actions{gap:var(--space-2);flex:none;display:flex}.academy-hierarchy .class-management-create-controls>input,.academy-hierarchy .class-management-create-controls .btn{height:var(--control-height);min-height:var(--control-height);margin:0}@media (width<=600px){.academy-hierarchy .class-management-create-controls{flex-wrap:wrap}.academy-hierarchy .class-management-create-controls .class-management-create-actions{flex:100%}.academy-hierarchy .class-management-create-controls .btn{flex:1}.academy-hierarchy .class-management-create-controls>input,.academy-hierarchy .class-management-create-controls .btn{height:var(--touch-target);min-height:var(--touch-target)}}.coupon-admin .teacher-coupon-management-layout{grid-template-columns:minmax(0,370px) minmax(0,1fr);gap:16px}.coupon-admin .teacher-coupon-student-picker,.coupon-admin .teacher-coupon-detail>section{border:1px solid var(--paper-line);background:var(--paper-card);box-shadow:none;border-radius:12px;padding:20px}.coupon-admin .teacher-coupon-detail{gap:16px;display:grid}.coupon-admin .teacher-coupon-detail>section{margin:0}.coupon-admin .teacher-coupon-student-list{gap:4px}.coupon-admin .teacher-coupon-student-option{background:0 0;border-color:#0000;min-height:68px;padding:12px}.coupon-admin .teacher-coupon-student-option.active{border-color:var(--red-soft);background:var(--red-soft);box-shadow:inset 3px 0 var(--red)}.coupon-admin .teacher-coupon-student-name-row{flex-wrap:nowrap}.coupon-admin .teacher-coupon-student-option strong{font-size:14px}.coupon-admin .teacher-coupon-student-option strong,.coupon-admin .teacher-coupon-student-affiliation{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.coupon-admin .teacher-coupon-stamp-count{background:var(--steel-soft);color:var(--steel)}.coupon-admin .teacher-coupon-high-balance{border:0;border-top:1px solid var(--paper-line);background:0 0;border-radius:0;margin:16px 0 0;padding:16px 0 0}.coupon-admin .teacher-coupon-high-balance-header{flex-wrap:wrap;gap:8px}.coupon-admin .teacher-coupon-high-balance-header h3{font-size:14px}.coupon-admin .teacher-coupon-high-balance-list{grid-template-columns:minmax(0,1fr);gap:4px}.coupon-admin .teacher-coupon-high-balance-item{border-color:#0000;padding:8px 12px}.coupon-admin .coupon-summary-grid{grid-template-columns:minmax(0,1fr);margin:0}.coupon-admin .coupon-summary-item{box-shadow:none;background:0 0;border:0;padding:0}.coupon-admin .coupon-summary-item strong{color:var(--steel);font-size:28px}.coupon-admin .coupon-card-header{flex-wrap:wrap;gap:12px}.coupon-admin .coupon-card-header>div{min-width:0}.coupon-admin .coupon-card-header h3{margin-top:0;font-size:17px}.coupon-admin .coupon-stamp-month-group,.coupon-admin .coupon-stamp-week-group{box-shadow:none}.coupon-admin .coupon-redemption-form{background:0 0;border-inline:0;border-radius:0}.coupon-admin .coupon-redemption-form .field{min-width:0}.coupon-admin .teacher-coupon-detail{overflow-wrap:anywhere}.coupon-admin .coupon-history-empty,.coupon-admin .teacher-coupon-detail-state{padding-block:20px}@media (width>=601px) and (width<=960px){.coupon-admin .teacher-coupon-management-layout{grid-template-columns:minmax(0,280px) minmax(0,1fr)}.coupon-admin .teacher-coupon-filter-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=600px){.coupon-admin .teacher-coupon-management-layout{grid-template-columns:minmax(0,1fr)}.coupon-admin .teacher-coupon-student-picker,.coupon-admin .teacher-coupon-detail>section{padding:16px}.coupon-admin .teacher-coupon-student-list{max-height:320px}.coupon-admin .coupon-card-header>.btn{width:100%;min-height:44px}}:is(.teacher-assignment-list,.teacher-test-list) .tal-chip-filters{gap:12px;display:grid}.tal-chip-filter{grid-template-columns:64px minmax(0,1fr);align-items:start;gap:12px;display:grid}.tal-chip-label{color:var(--ink-soft);font-size:13px;font-weight:var(--weight-bold);padding-block:8px}.tal-chip-options{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.tal-filter-chip{border:1px solid var(--paper-line);background:var(--paper-card);max-width:100%;min-height:36px;color:var(--ink-soft);font:inherit;cursor:pointer;overflow-wrap:anywhere;border-radius:999px;padding:6px 14px;font-size:13px}.tal-filter-chip.active{background:var(--steel);border-color:var(--steel);color:#fff}:is(.teacher-assignment-list,.teacher-test-list) .tal-item.is-actionable{cursor:pointer}:is(.teacher-assignment-list,.teacher-test-list) .tal-item.is-actionable:hover,:is(.teacher-assignment-list,.teacher-test-list) .tal-item.is-actionable:focus-within{background:var(--steel-soft)}:is(.teacher-assignment-list,.teacher-test-list) .tal-status .badge{white-space:normal;overflow-wrap:anywhere}@media (width<=600px){.tal-chip-filter{grid-template-columns:minmax(0,1fr);gap:4px}.tal-chip-label{padding:0}.tal-filter-chip{min-height:44px}}.assignment-sections{gap:var(--space-3);min-width:0;display:grid}.assignment-sections>.assignment-section-card{min-width:0;margin:0}.assignment-section-header{margin-bottom:var(--space-3)}.assignment-section-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:nowrap;display:flex}.assignment-section-actions .hint{white-space:nowrap;margin:0}.assignment-section-body{gap:var(--space-3);display:grid}.assignment-section-body[hidden],.assignment-problem-grid [hidden]{display:none!important}.assignment-section-body>.problem-sheet{--problem-row-height:44px;border-radius:var(--radius-control);width:100%;min-width:0;max-width:100%;position:relative;overflow:hidden}.assignment-section-body>.problem-sheet:after{content:"";z-index:1;border:1px solid var(--paper-line);border-radius:inherit;pointer-events:none;position:absolute;inset:0}.assignment-section-body .assignment-problem-grid{grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-rows:var(--problem-row-height);gap:0;width:100%;min-width:0;display:grid}.assignment-section-body .assignment-problem-grid .prow,.assignment-editor .assignment-section-body .assignment-problem-grid .prow{width:100%;height:var(--problem-row-height);box-sizing:border-box;min-width:0;box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:40px minmax(0,1fr);align-items:stretch;gap:0;margin:0;padding:0;display:grid;position:relative}.assignment-section-body .assignment-problem-grid>.prow:after{content:"";pointer-events:none;border:solid var(--paper-line);border-width:0;position:absolute;inset:0}.assignment-section-body .assignment-problem-grid>.prow:before{content:none;width:calc(100% * var(--problem-columns));border-top:1px solid var(--paper-line);pointer-events:none;z-index:1;position:absolute;top:0;left:0}@media (width>=961px){.assignment-section-body .assignment-problem-grid{--problem-columns:5}.assignment-section-body .assignment-problem-grid>.prow:nth-child(5n+6):before{content:""}}@media (width>=601px) and (width<=960px){.assignment-section-body .assignment-problem-grid{--problem-columns:3}.assignment-section-body .assignment-problem-grid>.prow:nth-child(3n+4):before{content:""}}@media (width>=381px) and (width<=600px){.assignment-section-body .assignment-problem-grid{--problem-columns:2}.assignment-section-body .assignment-problem-grid>.prow:nth-child(2n+3):before{content:""}}@media (width<=380px){.assignment-section-body .assignment-problem-grid{--problem-columns:1}.assignment-section-body .assignment-problem-grid>.prow:not(:first-child):before{content:""}}@media (width>=961px){.assignment-section-body .assignment-problem-grid>.prow:not(:nth-child(5n)):after{border-right-width:1px}}@media (width>=601px) and (width<=960px){.assignment-section-body .assignment-problem-grid>.prow:not(:nth-child(3n)):after{border-right-width:1px}}@media (width>=381px) and (width<=600px){.assignment-section-body .assignment-problem-grid>.prow:not(:nth-child(2n)):after{border-right-width:1px}}.assignment-section-body .assignment-problem-grid .problem-number-area{border-right:1px solid var(--paper-line);min-width:0;color:var(--ink-soft);font-size:var(--text-sm);justify-content:center;align-items:center;padding:4px;display:flex}.assignment-section-body .assignment-problem-grid .pnum-display{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.assignment-section-body .assignment-problem-grid .problem-answer-field{min-width:0;margin:0;padding-right:34px;display:flex}.assignment-section-body .assignment-problem-grid .problem-answer-field>span{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.assignment-section-body .assignment-problem-grid .prow .pans-input{width:100%;min-width:0;height:100%;min-height:0;box-shadow:none;text-align:center;background:0 0;border:0;border-radius:0;margin:0;padding:4px}.assignment-section-body .assignment-problem-grid .prow .pans-input:focus{z-index:2;box-shadow:inset 0 0 0 2px var(--steel);background:var(--steel-soft);outline:none;position:relative}.assignment-section-body .assignment-problem-grid .problem-grid-actions{opacity:0;pointer-events:none;align-items:center;display:flex;position:absolute;top:0;bottom:0;right:0}.assignment-section-body .assignment-problem-grid .problem-grid-actions .btn.small{min-width:28px;min-height:32px;box-shadow:none;color:var(--ink-soft);font-size:var(--text-xs);background:0 0;border:0;margin:0;padding:4px}.assignment-section-body .assignment-problem-grid .prow:hover .problem-grid-actions,.assignment-section-body .assignment-problem-grid .prow:focus-within .problem-grid-actions{opacity:1;pointer-events:auto}.assignment-section-body>.btn{justify-self:start}@media (width>=601px) and (width<=960px){.assignment-section-body .assignment-problem-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=600px){.assignment-section-body .assignment-problem-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.assignment-section-header{grid-template-columns:minmax(0,1fr) auto}.assignment-section-actions{gap:var(--space-2)}.assignment-section-actions .btn.small{padding-inline:var(--space-1);white-space:nowrap}.assignment-section-body .assignment-problem-grid .prow .pans-input{font-size:16px}.assignment-section-body .assignment-problem-grid .problem-answer-field{padding-right:34px}.assignment-section-body .assignment-problem-grid .problem-grid-actions .btn.small{min-width:32px;min-height:44px}}@media (width<=380px){.assignment-section-body .assignment-problem-grid{grid-template-columns:minmax(0,1fr)}}.assignment-section-body .assignment-problem-grid .problem-insert{z-index:2;cursor:pointer;background:0 0;border:0;border-radius:0;place-items:center;width:24px;height:100%;margin:0;padding:0;display:grid;position:absolute;top:0}.assignment-section-body .assignment-problem-grid .problem-insert-before{left:-12px}.assignment-section-body .assignment-problem-grid .problem-insert-after{height:20px;top:auto;bottom:0;right:0}@media (width>=961px){.assignment-section-body .assignment-problem-grid>.prow:nth-child(5n+1) .problem-insert-before{width:24px;left:-24px}}@media (width>=601px) and (width<=960px){.assignment-section-body .assignment-problem-grid>.prow:nth-child(3n+1) .problem-insert-before{width:24px;left:-24px}}@media (width>=381px) and (width<=600px){.assignment-section-body .assignment-problem-grid>.prow:nth-child(odd) .problem-insert-before{width:24px;left:-24px}}@media (width<=380px){.assignment-section-body .assignment-problem-grid .problem-insert-before{width:24px;left:-24px}}.assignment-section-body .assignment-problem-grid .problem-grid-actions{justify-content:center;width:22px;transition:opacity .12s;right:4px}.assignment-section-body .assignment-problem-grid .problem-grid-actions .btn.small{border:1px solid var(--paper-line);background:var(--paper-card);width:22px;min-width:22px;height:22px;min-height:22px;color:var(--steel);border-radius:5px;padding:0;line-height:1;font-size:12px!important}.assignment-section-body .assignment-problem-grid .problem-grid-actions .btn.small:hover{background:var(--status-danger-soft);color:var(--status-danger)}.assignment-section-body .assignment-problem-grid .problem-grid-actions .btn.small:focus-visible{outline:2px solid var(--steel);outline-offset:-2px}@media (prefers-reduced-motion:reduce){.assignment-section-body .assignment-problem-grid .problem-grid-actions{transition:none}}.assignment-section-card .problem-range-controls{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.assignment-section-card .problem-range-controls label{color:var(--ink-soft);align-items:center;gap:8px;margin:0;font-size:13px;display:flex}.assignment-section-card .problem-range-controls input{width:80px;min-width:0;min-height:36px;margin:0;padding:4px 8px}.assignment-section-card .problem-range-message:empty{display:none}.assignment-section-card .problem-range-message{flex-basis:100%;margin:0}@media (width<=600px){.assignment-section-card .problem-range-controls input{min-height:44px;font-size:16px}}.assignment-section-body .assignment-problem-grid .problem-number-area{color:var(--ink);background:#f1f5f8}.assignment-section-body .assignment-problem-grid .problem-answer-field{background:#fff}.assignment-section-body .assignment-problem-grid>.prow:first-child .problem-number-area{border-top-left-radius:var(--radius-control);overflow:hidden}@media (width>=961px){.assignment-section-body .assignment-problem-grid>.prow:nth-child(5n+1):nth-last-child(-n+6) .problem-number-area{border-bottom-left-radius:var(--radius-control);overflow:hidden}}@media (width>=601px) and (width<=960px){.assignment-section-body .assignment-problem-grid>.prow:nth-child(3n+1):nth-last-child(-n+4) .problem-number-area{border-bottom-left-radius:var(--radius-control);overflow:hidden}}@media (width>=381px) and (width<=600px){.assignment-section-body .assignment-problem-grid>.prow:nth-child(odd):nth-last-child(-n+3) .problem-number-area{border-bottom-left-radius:var(--radius-control);overflow:hidden}}@media (width<=380px){.assignment-section-body .assignment-problem-grid>.prow:nth-last-child(2) .problem-number-area{border-bottom-left-radius:var(--radius-control);overflow:hidden}}.assignment-section-card .assignment-section-header{flex-wrap:wrap;display:flex!important}.assignment-section-card .assignment-section-header>input{flex:200px;width:auto;min-width:0}.assignment-section-card .assignment-section-actions{flex-wrap:wrap;justify-content:flex-start}.assignment-section-card .assignment-section-actions .btn{white-space:nowrap}.assignment-section-card .problem-range-panel{border-block:1px solid var(--paper-line);margin-bottom:12px;padding:12px 0}.assignment-section-card .problem-range-panel[hidden]{display:none}.assignment-section-card .problem-range-controls .problem-range-limit{align-self:center;margin:0;line-height:1.5}.assignment-section-card .assignment-section-actions .btn.assignment-section-delete{color:var(--red);background:var(--red-soft);border-color:color-mix(in srgb, var(--red) 25%, var(--paper-line))}.assignment-section-card .assignment-section-actions .btn.assignment-section-delete:hover{background:color-mix(in srgb, var(--red) 10%, var(--red-soft));border-color:var(--red)}.tuition-dialog,.tt-dialog,dialog.section-delete-confirmation{box-sizing:border-box;max-height:calc(100dvh - 32px);padding:var(--space-5);border:1px solid var(--paper-line);border-radius:var(--radius-panel);background:var(--paper-card);color:var(--ink);overflow:auto}.tuition-dialog::backdrop,.tt-dialog::backdrop,dialog.section-delete-confirmation::backdrop{background:#1c2b3a4d}.tuition-dialog[open],.tuition-dialog form,.tt-dialog form{gap:var(--space-4);flex-direction:column;display:flex}.tuition-dialog>*,.tuition-dialog form>*,.tt-dialog form>*{margin:0}.tuition-dialog h3,.tt-dialog h3{font-size:var(--text-card-title);line-height:var(--leading-tight);overflow-wrap:anywhere}.tuition-dialog .field,.tt-dialog .field{margin:0}.tuition-dialog>.btn,.tuition-dialog form>.btn{align-self:flex-start}.tuition-dialog [role=alert]:empty,.tt-form-error:empty{display:none}@media (width<=600px){.tuition-dialog,.tt-dialog,dialog.section-delete-confirmation{padding:var(--space-4)}}dialog.section-delete-confirmation{width:min(360px,100% - 32px)}.section-delete-confirmation h2{margin:0 0 12px;font-family:Noto Serif KR,serif;font-size:17px}.section-delete-confirmation p{color:var(--ink-soft);margin:0 0 20px;font-size:14px;line-height:1.6}.section-delete-confirmation-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.section-delete-confirmation-actions .btn.danger{color:var(--red);background:var(--red-soft);border-color:var(--red)}.section-delete-confirmation-actions .btn.danger:hover{background:var(--red);color:#fff}.assignment-section-management{border-top:1px solid var(--paper-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;margin-top:24px;padding-top:16px;display:flex}.assignment-section-management-label{color:var(--ink-soft);font-size:13px}.assignment-section-management-actions{flex-wrap:wrap;gap:8px;margin-left:auto;display:flex}.assignment-section-management-actions .btn{white-space:nowrap}@media (width<=600px){.assignment-section-management-actions{flex-basis:100%;margin-left:0}.assignment-section-management-actions .btn{min-height:44px}}.teacher-page-header-editor .teacher-page-heading{min-height:0}.teacher-page-header-editor .teacher-page-heading h1{transition:font-size .16s}.teacher-page-header-editor .teacher-page-actions{transition:gap .16s}.teacher-page-header-editor .teacher-page-actions .btn{min-height:40px;padding-block:8px;transition:min-height .16s,padding .16s}.teacher-page-header-editor.is-compact{--teacher-title-size:24px;margin-bottom:40px;padding-block:6px}.teacher-page-header-editor.is-compact .teacher-page-actions{gap:4px}.teacher-page-header-editor.is-compact .teacher-page-actions .btn{min-height:36px;padding-block:6px}@media (width<=600px){.teacher-page-header-editor.is-compact{--teacher-title-size:22px;margin-bottom:36px}.teacher-page-header-editor .teacher-page-actions .btn,.teacher-page-header-editor.is-compact .teacher-page-actions .btn{min-height:44px}}@media (prefers-reduced-motion:reduce){.teacher-page-header-editor,.teacher-page-header-editor .teacher-page-heading h1,.teacher-page-header-editor .teacher-page-actions,.teacher-page-header-editor .teacher-page-actions .btn{transition:none}}.assignment-section-body .assignment-problem-grid .problem-number-input{box-sizing:border-box;width:100%;min-width:0;height:100%;min-height:0;color:var(--ink);text-align:center;background:0 0;border:0;border-radius:0;margin:0;padding:0 2px}.assignment-section-body .assignment-problem-grid .problem-number-input:focus{outline:2px solid var(--steel);outline-offset:-2px}.assignment-section-body .assignment-problem-grid :is(.problem-number-area,.problem-answer-field){min-height:0}.author-ai-files .answer-file-progress{border-radius:8px;align-items:center;gap:8px;width:fit-content;min-width:0;max-width:100%;padding:2px 6px;font-size:12px;line-height:1.5;display:flex}.author-ai-files .answer-file-stage{min-width:0;color:inherit;font-size:12px}.author-ai-files :is(.answer-file-spinner,.answer-file-status-icon){flex:0 0 12px;width:12px;height:12px}.author-ai-files .answer-file-status-icon{justify-content:center;align-items:center;display:inline-flex}.author-ai-files .answer-file-spinner{box-sizing:border-box;border:2px solid;border-right-color:#0000;border-radius:50%;animation:.8s linear infinite answer-file-spin}.answer-recognition-progress-summary:empty,.author-ai-files [data-answer-file-error][hidden]{display:none}@keyframes answer-file-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.author-ai-files .answer-file-spinner{animation:none}}.author-attachment .filebox{grid-template-columns:minmax(0,1fr);gap:4px;width:100%;display:grid}.author-attachment .filebox .upload-file-item{border:1px solid var(--paper-line);border-radius:var(--radius-control);background:var(--paper-card);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;width:100%;min-width:0;padding:6px 8px;display:grid}.author-attachment .explain-file-list .explain-file-grip{width:24px;min-width:24px;height:36px}.author-attachment .explain-file-info{grid-template-columns:minmax(0,1fr);gap:2px;min-width:0;display:grid}.author-attachment .explain-file-info>strong{overflow-wrap:anywhere;min-width:0;font-size:13px;line-height:1.4;display:block}.author-file-meta{flex-wrap:wrap;align-items:center;gap:2px 6px;min-width:0;min-height:22px;display:flex}.author-file-meta>[data-answer-file-status]{align-items:center;display:inline-flex}.answer-file-badge{border-radius:5px;padding:1px 5px;font-size:12px;line-height:1.5;display:inline-block}.author-ai-file{border:1px solid var(--paper-line);border-radius:var(--radius-control);background:var(--paper-card);min-width:0;padding:10px}.author-ai-file:has(>label input:checked){border-color:var(--steel);background:var(--steel-soft)}.author-ai-file>.author-ai-select{align-items:flex-start;font-weight:500}.author-ai-file>.author-ai-select>span{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.author-ai-file>[data-answer-file-progress]{min-width:0;margin-top:6px}.author-ai-file .explain-file-error{color:var(--status-danger);overflow-wrap:anywhere;margin:6px 0 0;font-size:13px}.author-ai-file details{margin-top:6px}.answer-file-steps{gap:4px;width:100%;margin-top:6px;display:flex}.answer-file-step{text-align:center;min-width:0;color:var(--ink-soft);overflow-wrap:anywhere;flex:1 1 0;font-size:12px;line-height:1.4}.answer-file-step-bar{background:var(--chart-grid);border-radius:3px;height:5px;margin-bottom:3px;display:block}.answer-file-step.is-complete .answer-file-step-bar{background:var(--status-success)}.answer-file-step.is-current .answer-file-step-bar{background:var(--chart-submission)}.answer-file-step.is-current{color:var(--chart-submission);font-weight:600}.tuition-toolbar,.tuition-tabs{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.tuition-toolbar{align-items:flex-end}.tuition-toolbar .field{flex:160px;min-width:0;margin:0}.tuition-form-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tuition-form-grid .field{margin:0}.tuition-form-grid+.hint{margin-top:var(--space-3)}.tuition-override{color:var(--ink-soft);align-self:end;font-size:12px}.tuition-table-scroll{max-width:100%;overflow-x:auto}.tuition-table{border-collapse:collapse;width:100%;font-size:13px}.tuition-table th,.tuition-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--paper-line);padding:12px 8px}.tuition-table th{background:var(--steel-soft);color:var(--ink)}.tuition-table td{overflow-wrap:anywhere}.tuition-table .btn{margin:4px}.tuition-screen pre,.tuition-dialog pre{white-space:pre-wrap;overflow-wrap:anywhere}.tuition-dialog{width:min(600px,100vw - 32px)}.tuition-screen form>.field{margin-bottom:var(--space-3)}.tuition-form-error{color:var(--red)}@media (width<=600px){.tuition-form-grid{grid-template-columns:minmax(0,1fr)}.tuition-table th,.tuition-table td{padding:8px 4px}}.tuition-calendar-controls,.tuition-calendar-layout{--tuition-student-column:280px}.tuition-calendar-controls{grid-template-columns:var(--tuition-student-column) minmax(0,1fr);align-items:end;gap:12px;margin-bottom:16px;display:grid}.tuition-calendar-controls .field,.tuition-calendar-controls select{width:100%;min-width:0}.tuition-calendar-controls>.btn{justify-self:end}.tuition-calendar-month{align-items:center;gap:8px;display:flex}.tuition-calendar-month strong{white-space:nowrap;font-size:18px}.tuition-calendar-weekdays,.tuition-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.tuition-calendar-weekdays span{text-align:center;color:var(--ink-soft);padding:12px 4px}.tuition-calendar-grid{border-top:1px solid var(--paper-line);border-left:1px solid var(--paper-line);background:var(--paper-card)}.tuition-calendar-day{border-right:1px solid var(--paper-line);border-bottom:1px solid var(--paper-line);min-width:0;min-height:132px;padding:8px}.tuition-calendar-day time{margin-bottom:8px;font-weight:700;display:block}.tuition-calendar-day.outside{background:var(--paper);color:var(--ink-soft)}.tuition-calendar-day.today{background:var(--red-soft)}.tuition-today-label{color:var(--red);margin-left:4px;font-size:11px}.tuition-calendar-student,.tuition-calendar-more{background:var(--steel-soft);width:100%;min-width:0;color:var(--ink);text-align:left;white-space:normal;overflow-wrap:anywhere;font:inherit;cursor:pointer;border:0;border-radius:4px;margin:4px 0;padding:6px;font-size:13px;display:block}.tuition-calendar-more{color:var(--steel);background:0 0}.tuition-calendar-day-list{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}@media (width<=600px){.tuition-calendar-controls{align-items:stretch}.tuition-calendar-month{justify-content:center;gap:4px}.tuition-calendar-day{min-height:110px;padding:4px}.tuition-calendar-student,.tuition-calendar-more{padding:6px 2px;font-size:12px}.tuition-calendar-day time{font-size:13px}.tuition-today-label{margin-left:0;display:block}.tuition-calendar-controls .field{max-width:none}}.tuition-dialog .field[hidden]{display:none}.tuition-calendar-screen{container-type:inline-size}.tuition-calendar-layout{grid-template-columns:var(--tuition-student-column) 0px minmax(0,1fr);align-items:start;gap:16px 0;transition:grid-template-columns .23s;display:grid}.tuition-calendar-layout .tuition-calendar-main{grid-column:3;margin-left:20px}.tuition-student-panel{border:1px solid var(--paper-line);background:var(--paper-card);border-radius:10px;min-width:0;padding:16px}.tuition-student-toggle{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0 0 12px;font-weight:700;display:block}.tuition-student-panel .field{margin-bottom:12px}.tuition-student-list{flex-direction:column;gap:4px;max-height:320px;display:flex;overflow-y:auto}.tuition-student-item{text-align:left;white-space:normal;overflow-wrap:anywhere;border:1px solid var(--paper-line);background:var(--paper);width:100%;color:var(--ink);font:inherit;cursor:pointer;border-radius:8px;padding:10px}.tuition-student-item span{color:var(--ink-soft);margin-top:4px;font-size:12px;display:block}.tuition-student-item.selected,.tuition-calendar-student.selected{background:var(--red-soft);outline:1px solid var(--red)}#calendarSettings{opacity:0;visibility:hidden;min-width:0;transition:opacity .23s,transform .23s,visibility .23s;overflow:hidden;transform:translate(-8px)}#calendarSettings form{border:1px solid var(--paper-line);background:var(--paper-card);border-radius:10px;padding:16px}.has-selection #calendarSettings{opacity:1;visibility:visible;transform:none}.tuition-settings-heading{justify-content:space-between;align-items:start;gap:8px;display:flex}.tuition-settings-heading .btn{white-space:nowrap;flex-shrink:0}.tuition-settings-heading h3{overflow-wrap:anywhere;min-width:0}#calendarSettings .field{margin-bottom:12px}#calendarSettings fieldset{border:0;min-width:0;padding:0}#calendarSettings h3{margin:0}.tuition-calendar-main{min-width:0}.tuition-calendar-main .tuition-calendar-month{justify-content:center;margin-bottom:12px}@media (width>=961px){.tuition-student-browser{display:block}}@media (width<=960px){.tuition-student-browser.collapsed{display:none}.tuition-student-list{max-height:200px}.tuition-student-panel{padding:12px}}@container (width>=1080px){.tuition-calendar-layout.has-selection{grid-template-columns:var(--tuition-student-column) 300px minmax(0,1fr)}.has-selection #calendarSettings{margin-left:20px}}@container (width>=601px) and (width<=1079px){.tuition-calendar-layout.has-selection{grid-template-columns:var(--tuition-student-column) minmax(280px,1fr) 0px}.has-selection #calendarSettings{margin-left:20px}.tuition-calendar-layout.has-selection .tuition-calendar-main{grid-column:1/-1;margin-left:0}}@container (width<=600px){.tuition-calendar-controls{grid-template-columns:minmax(0,1fr)}.tuition-calendar-layout,.tuition-calendar-layout.has-selection{grid-template-columns:minmax(0,1fr);row-gap:0}#calendarSettings{max-height:0;transition:max-height .23s,opacity .23s,transform .23s,visibility .23s}.has-selection #calendarSettings{max-height:800px;margin-top:16px}.tuition-calendar-layout .tuition-calendar-main{grid-column:1;margin:16px 0 0}}@media (prefers-reduced-motion:reduce){.tuition-calendar-layout,#calendarSettings{transition:none}#calendarSettings{transform:none}}.class-tree{min-width:0;padding:8px 0}.class-tree-row{padding:6px 8px 6px calc(8px + min(var(--depth),12) * 16px);border:1px solid #0000;border-radius:8px;align-items:center;gap:4px;min-width:0;display:flex;position:relative}.class-tree-row:hover,.class-tree-row:focus-visible{background:var(--steel-soft)}.class-tree-row.selected{background:var(--red-soft)}.class-tree-handle,.class-tree-arrow{color:var(--ink-soft);background:0 0;border:0;flex:none;min-width:28px;min-height:32px;padding:4px}.class-tree-handle{cursor:grab;touch-action:none}.class-tree-arrow:disabled{opacity:.45}.class-tree-name{overflow-wrap:anywhere;flex:1;min-width:0;font-weight:700}.class-tree-count{color:var(--ink-soft);flex:none;font-size:12px}.class-tree-actions{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.class-tree-root{color:var(--ink-soft);border:1px dashed var(--paper-line);border-radius:8px;padding:8px;font-size:12px}.class-tree-row.drop-before{border-top-color:var(--red)}.class-tree-row.drop-after{border-bottom-color:var(--red)}.drop-inside{background:var(--red-soft);outline:1px solid var(--red)}.class-tree-row.drag-source{opacity:.35}.class-tree-ghost{z-index:10000;pointer-events:none;background:var(--paper-card);border:1px solid var(--paper-line);opacity:.95;position:fixed;box-shadow:0 2px 8px #0002}.class-tree-ghost .class-tree-actions{display:none}.class-tree-dragging{-webkit-user-select:none;user-select:none}@media (width<=960px){.class-tree-row{flex-wrap:wrap}.class-tree-actions{width:100%;padding-left:56px}}@media (width<=600px){.class-tree-row{padding-left:calc(4px + min(var(--depth),6) * 8px)}.class-tree-actions{padding-left:0}.class-tree-actions .btn,.class-tree-handle,.class-tree-arrow{min-height:44px}.class-tree-count small{display:block}}@media (prefers-reduced-motion:reduce){.class-tree-row,.class-tree-ghost{transition:none}}.academy-card-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,max(260px,25% - 12px)),1fr));align-items:start;gap:16px;display:grid}.academy-folder-card{min-width:0}.academy-folder-card .academy-hierarchy-heading{background:var(--steel-soft);border-radius:12px 12px 0 0;padding:16px}.academy-card-title{font-family:var(--font-serif);overflow-wrap:anywhere;margin:0 0 8px;font-size:17px}.academy-folder-card .meta{text-align:left}.academy-card-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.academy-card-actions .btn{padding:6px 8px}.academy-card-more,.class-tree-more{flex:none;position:relative}.academy-card-more>summary,.class-tree-more>summary{cursor:pointer;color:var(--steel);white-space:nowrap;padding:8px 4px;font-size:12px}.academy-card-menu{z-index:20;border:1px solid var(--paper-line);background:var(--paper-card);border-radius:8px;flex-direction:column;gap:4px;width:160px;padding:8px;display:flex;position:absolute;top:100%;right:0;box-shadow:0 2px 8px #0001}.academy-card-menu .btn{text-align:left;white-space:normal;width:100%}.academy-folder-card .class-tree-row{padding:6px 8px 6px calc(4px + min(var(--depth),4) * 10px);grid-template-columns:24px 20px minmax(0,1fr) auto auto;gap:2px;display:grid}.academy-folder-card .class-tree-handle,.academy-folder-card .class-tree-arrow{min-width:0;padding:2px}.academy-folder-card .class-tree-name{font-size:14px}.academy-folder-card .class-tree-count{font-size:12px}.academy-folder-card .class-tree-count small{display:block}.academy-folder-card .class-tree-actions{width:auto;padding:0}.academy-folder-card .class-tree-root{margin:8px}.class-tree-dragging .academy-folder-card.class-tree-drag-owner .class-tree-root{border-color:var(--steel);background:var(--steel-soft);font-weight:700}.class-tree-dragging .academy-folder-card.class-tree-drag-owner .class-tree-root.drop-inside{background:var(--red-soft);border-color:var(--red)}.academy-card-footer{margin-top:20px}.academy-grid-empty{grid-column:1/-1}.academy-card-edit .field{margin:0}.academy-card-edit input{width:100%;min-width:0}@media (width<=600px){.academy-card-more>summary,.class-tree-more>summary{align-items:center;min-height:44px;display:flex}.academy-card-actions .btn{min-height:44px}}.academy-card-more{margin-left:auto}.class-tree-ghost{padding:6px 8px 6px calc(4px + min(var(--depth),4) * 10px);grid-template-columns:24px 20px minmax(0,1fr) auto;gap:2px;display:grid}.class-tree-ghost .class-tree-name{font-size:14px}.class-tree-ghost .class-tree-handle,.class-tree-ghost .class-tree-arrow{min-width:0;padding:2px}.teacher-main:has(.tuition-screen){max-width:none;margin:0;padding-left:32px;padding-right:32px}@container (width>=1200px){.tuition-calendar-controls,.tuition-calendar-layout{--tuition-student-column:300px}.tuition-calendar-layout.has-selection{grid-template-columns:var(--tuition-student-column) 320px minmax(0,1fr)}}@container (width>=601px) and (width<=1199px){.tuition-calendar-layout.has-selection{grid-template-columns:var(--tuition-student-column) minmax(280px,1fr) 0px}.tuition-calendar-layout.has-selection .tuition-calendar-main{grid-column:1/-1;margin-left:0}}@container (width>=601px) and (width<=899px){.tuition-calendar-controls:has(+.tuition-calendar-layout:not(.has-selection)){grid-template-columns:minmax(0,1fr)}.tuition-calendar-layout:not(.has-selection){grid-template-columns:minmax(0,1fr)}.tuition-calendar-layout:not(.has-selection) .tuition-calendar-main{grid-column:1;margin-left:0}}@media (width<=960px){.teacher-main:has(.tuition-screen){padding-left:24px;padding-right:24px}}@media (width<=600px){.teacher-main:has(.tuition-screen){padding-left:16px;padding-right:16px}}.tuition-scheduler-actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.tuition-scheduler-section{border-bottom:1px solid var(--paper-line);overflow-wrap:anywhere;padding:16px 0}.tuition-scheduler-lesson{border-bottom:1px solid var(--paper-line);padding:12px 0;font-size:13px}.tuition-calendar-student.requested{background:var(--paper);color:var(--ink-soft);border:1px solid var(--paper-line)}@container (width<=600px){.has-selection #calendarSettings{max-height:none}}.tuition-scheduler-section>.hint{margin:8px 0 12px}.tuition-scheduler-section>summary{cursor:pointer;font-weight:700}.academy-manager-toolbar,.academy-manager-picker,.academy-manager-actions,.academy-detail-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.academy-manager-picker{justify-content:flex-start}.academy-manager-picker .field{min-width:180px;margin:0}.academy-manager-layout{grid-template-columns:minmax(260px,28%) minmax(0,1fr);gap:24px;margin-top:20px;display:grid}.academy-manager-list,.academy-manager-detail{background:#fff;border-radius:10px;min-width:0;padding:16px}.academy-manager-detail{padding:24px}.academy-detail-heading h3{margin:4px 0 8px;font-size:22px}.academy-detail-heading .meta{text-align:left;overflow-wrap:anywhere;margin:0}.academy-detail-section{margin-top:24px}.academy-detail-section h4{margin:0 0 12px}.academy-child-row{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.academy-child-row:hover{background:var(--steel-soft)}.academy-child-row span{overflow-wrap:anywhere}.academy-detail-students{margin:0;padding:0;list-style:none}.academy-detail-students .btn{text-align:left;width:100%}.academy-class-back{display:none}.academy-manager .class-tree-row{padding-left:calc(2px + min(var(--depth),6)*10px);flex-wrap:nowrap;gap:2px}.academy-manager .class-tree-count small{display:none}.academy-manager .class-tree-actions{width:auto;padding:0}.academy-manager .class-tree-more>summary{padding:4px;font-size:20px;list-style:none}.academy-manager .class-tree-more>summary::-webkit-details-marker{display:none}.academy-manager .class-tree-handle,.academy-manager .class-tree-actions{opacity:0;transition:opacity .15s}.academy-manager .class-tree-row:is(:hover,:focus-within) :is(.class-tree-handle,.class-tree-actions){opacity:1}.academy-manager .class-tree-actions:has(details[open]){opacity:1}@media (hover:none),(pointer:coarse){.academy-manager .class-tree-handle,.academy-manager .class-tree-actions{opacity:1}}@media (width<=960px){.academy-manager-layout{grid-template-columns:minmax(240px,32%) minmax(0,1fr);gap:16px}}@media (width<=600px){.academy-manager-layout{display:block}.academy-manager-layout.has-selection .academy-manager-list,.academy-manager-layout:not(.has-selection) .academy-manager-detail{display:none}.academy-class-back{margin-bottom:16px;display:inline-flex}.academy-manager-detail{padding:16px}.academy-manager-toolbar{align-items:flex-start}.academy-manager-picker{width:100%}.academy-manager-picker .field{flex:1;min-width:0}}@media (prefers-reduced-motion:reduce){.academy-manager .class-tree-handle,.academy-manager .class-tree-actions{transition:none}}.academy-manager .class-tree{flex-direction:column;gap:8px;display:flex}.academy-manager .class-tree-row{border:1px solid var(--paper-line);background:color-mix(in srgb,var(--paper) 45%,white);border-radius:8px}.academy-manager .class-tree-row.selected{background:var(--red-soft);border-color:var(--red)}.academy-manager .class-tree-row:focus-visible{border-color:var(--steel);outline:none}.academy-manager .class-tree-row.drop-before{border-top-color:var(--red)}.academy-manager .class-tree-row.drop-after{border-bottom-color:var(--red)}.academy-manager .class-tree-row.drop-inside{border-color:var(--red);background:var(--red-soft);outline:none}.academy-manager .class-tree-row[aria-level="1"] .class-tree-name{font-weight:800}.academy-child-summaries{flex-wrap:wrap;gap:8px;display:flex}.academy-child-summaries .academy-child-row{border:1px solid var(--paper-line);border-radius:8px;gap:8px;width:auto;padding:8px 12px}.academy-student-head,.academy-detail-students li{grid-template-columns:minmax(100px,1fr) minmax(0,2fr);align-items:center;gap:16px;padding:8px 0;display:grid}.academy-student-head{color:var(--ink-soft);border-bottom:1px solid var(--paper-line);font-size:12px}.academy-student-classes{overflow-wrap:anywhere;color:var(--ink-soft);font-size:13px}.class-member-branch{margin:8px 0 8px 12px}.class-member-branch>summary{cursor:pointer;background:var(--paper);border-radius:8px;padding:12px 8px;font-weight:700}.class-member-branch>summary span{color:var(--ink-soft);font-size:12px;font-weight:400}.class-member-rows{grid-template-columns:repeat(auto-fill,minmax(min(100%,180px),1fr));gap:8px;margin:8px 0 12px;padding:0;list-style:none;display:grid}.class-member-rows:empty{display:none}.class-member-rows li{cursor:grab;-webkit-user-select:none;user-select:none;border:1px solid var(--paper-line);background:color-mix(in srgb,var(--paper) 45%,white);border-radius:8px;align-items:center;gap:8px;min-width:0;padding:8px;display:flex}.class-member-rows li:hover{background:var(--steel-soft)}.class-member-rows li:has(input:checked){border-color:var(--red);background:var(--red-soft)}.class-member-rows input{flex:none;width:18px;height:18px}.class-member-name{text-align:left;overflow-wrap:anywhere;min-width:0;font:inherit;color:var(--ink);background:0 0;border:0;flex:1;padding:8px 4px}.class-member-detail{width:32px;height:32px;color:var(--steel);cursor:pointer;opacity:0;background:0 0;border:0;border-radius:8px;flex:none;padding:0;transition:opacity .15s}.class-member-rows li:is(:hover,:focus-within) .class-member-detail{opacity:1}@media (hover:none),(pointer:coarse){.class-member-detail{opacity:1;min-width:44px;min-height:44px}.class-member-rows li{cursor:pointer}}@media (prefers-reduced-motion:reduce){.class-member-detail{transition:none}}.class-member-direct{padding:12px 0}#academy-class-detail{padding-bottom:180px;position:relative}#class-member-tools{z-index:2;border:1px solid var(--paper-line);background:var(--paper-card);max-height:148px;box-shadow:0 2px 8px color-mix(in srgb,var(--ink) 10%,transparent);opacity:0;visibility:hidden;pointer-events:none;border-radius:10px;justify-content:flex-start;gap:8px;margin:0;padding:12px;transition:opacity .15s;position:absolute;bottom:16px;left:16px;right:16px;overflow:auto}#class-member-tools:has(span:not(:empty)){opacity:1;visibility:visible;pointer-events:auto}#class-member-tools .member-move-destination{flex:180px}#class-member-tools .member-move-destination select{flex:1;width:100%}#class-member-tools [role=status]{overflow-wrap:anywhere}#class-member-tools [role=status]:empty{display:none}@media (width<=960px){#academy-class-detail{padding-bottom:240px}#class-member-tools{max-height:208px}}@media (prefers-reduced-motion:reduce){#class-member-tools{transition:none}}.class-member-rows li.member-drag-source{opacity:.4}.academy-manager-layout .member-drop-target{transition:background-color .15s,border-color .15s}.academy-manager .academy-manager-layout .member-drop-target:is([data-tree-id],[data-member-target]){border-color:var(--paper-line);background:var(--steel-soft);border-radius:8px}.class-member-drag-label{z-index:10000;pointer-events:none;-webkit-user-select:none;user-select:none;background:var(--paper-card);max-width:min(240px,100vw - 32px);color:var(--ink);border:1px solid var(--paper-line);box-shadow:0 2px 8px color-mix(in srgb,var(--ink) 12%,transparent);overflow-wrap:anywhere;border-radius:8px;gap:4px;padding:8px 12px;display:grid;position:fixed}.class-member-drag-label span{color:var(--ink-soft);font-size:12px}@media (prefers-reduced-motion:reduce){.academy-manager-layout .member-drop-target{transition:none}}.member-move-destination{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.member-move-destination select{width:auto;min-width:0;max-width:100%}.class-member-drag-label.is-multiple{isolation:isolate}.class-member-drag-label.is-multiple:before,.class-member-drag-label.is-multiple:after{content:"";z-index:-1;border:1px solid var(--paper-line);border-radius:inherit;background:var(--paper-card);pointer-events:none;position:absolute;inset:0}.class-member-drag-label.is-multiple:before{z-index:-2;transform:translate(6px,6px)}.class-member-drag-label.is-multiple:after{transform:translate(3px,3px)}.academy-manager .class-tree{gap:4px}.academy-manager .class-tree-row{min-width:0;margin-left:min(calc(var(--depth)*18px), max(0px, calc(100% - 180px)));background:#fff;padding-left:2px;position:relative}.academy-manager .class-tree-row[aria-level="1"]:not(:first-child){margin-top:16px}.academy-manager .class-tree-row.has-children{background:color-mix(in srgb,var(--paper) 60%,white)}.academy-manager .class-tree-row.has-children .class-tree-name{font-weight:700}.academy-manager .class-tree-row:not([aria-level="1"]):before{content:"";pointer-events:none;border-left:1px solid var(--paper-line);border-bottom:1px solid var(--paper-line);width:9px;height:calc(50% + 5px);position:absolute;top:-5px;left:-10px}.academy-manager .class-tree-arrow:disabled{visibility:hidden}.academy-manager .class-tree-count{white-space:normal;text-align:right;flex-shrink:0;max-width:80px;font-size:11px}.academy-manager .class-tree-name{overflow-wrap:anywhere;min-width:0}.academy-manager .class-tree-row:hover{background:var(--steel-soft)}.academy-manager .class-tree-row.selected{background:var(--red-soft)}.class-member-branch{border-bottom:1px solid var(--paper-line);min-width:0;margin:12px 0 0;padding:0 0 8px}.class-member-branch>summary{background:color-mix(in srgb,var(--paper) 45%,white);overflow-wrap:anywhere}.class-member-branch>.class-member-branch{border-bottom:0;border-left:1px solid var(--paper-line);margin-left:18px;padding-left:8px}.class-member-branch>.class-member-rows{margin:8px 8px 12px}.class-member-branch>.meta{text-align:left;margin:8px}.class-member-direct:has(.class-member-rows:empty){padding:4px 0}.academy-detail-title-line{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.class-member-content{min-width:0;display:flow-root}.class-detail-pending{display:contents}.class-member-placeholder{min-height:160px}.class-member-loading-note{border:1px solid var(--paper-line);background:var(--paper-card);color:var(--ink-soft);z-index:3;border-radius:8px;margin:0;padding:8px 12px;font-size:13px;position:absolute;bottom:16px;left:16px;right:16px}.academy-manager .class-tree-row{transition:background-color .12s,border-color .12s}@media (prefers-reduced-motion:reduce){.academy-manager .class-tree-row{transition:none}}.registration-remaining{color:var(--ink);margin:12px 0;font-size:28px;display:block}.tuition-notice{border:1px solid var(--paper-line);background:var(--paper-card);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px;min-width:0;margin:4px 0;padding:4px;display:grid}.tuition-notice-name{min-width:0;color:var(--ink);text-align:left;font:inherit;overflow-wrap:anywhere;cursor:pointer;background:0 0;border:0;align-self:stretch;padding:4px 2px;font-size:13px}.tuition-notice-name small{color:var(--ink-soft);font-size:11px;display:block}.tuition-notice-name-label{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tuition-calendar-layout:not(.has-selection){grid-template-columns:minmax(0,1fr)}.tuition-calendar-layout:not(.has-selection) .tuition-calendar-main{grid-column:1;margin-left:0}.tuition-calendar-layout:not(.has-selection) .tuition-student-browser.collapsed{display:none}.tuition-calendar-layout:not(.has-selection) .tuition-student-toggle{text-align:left;width:100%;display:block}@media (width>=961px){.tuition-calendar-layout:not(.has-selection) .tuition-student-browser form{gap:12px;display:flex}.tuition-calendar-layout:not(.has-selection) .tuition-student-browser form .field{flex:1}.tuition-calendar-layout:not(.has-selection) .tuition-student-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;display:grid}}.tuition-notice-status{min-height:36px;color:var(--ink);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:4px;justify-content:space-between;align-items:center;gap:4px;padding:4px;font-size:12px;display:flex}.tuition-notice-status:hover,.tuition-notice-name:hover{background:var(--paper)}.tuition-status-icon{background:var(--red);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-weight:700;display:inline-flex}.tuition-notice-status.complete .tuition-status-icon{background:#247847}.tuition-notice-status:disabled{opacity:.6;cursor:wait}.tuition-pending{border-bottom:1px solid var(--paper-line);margin-bottom:12px;padding:12px 0}.tuition-pending>div{max-width:480px;margin-top:12px}.tuition-cycle-panel{padding:12px 0}.tuition-cycle-details{grid-template-columns:auto minmax(0,1fr);gap:8px 16px;display:grid}.tuition-cycle-details dd{overflow-wrap:anywhere;margin:0}@media (width<=1200px){.tuition-calendar-grid{border-top:0;grid-template-columns:minmax(0,1fr)}.tuition-calendar-weekdays{display:none}.tuition-calendar-day{border-top:1px solid var(--paper-line);min-height:0;padding:8px}.tuition-calendar-day:not(:has(.tuition-notice)):not(:has(.tuition-calendar-student)){display:none}.tuition-calendar-day time{margin-bottom:4px}.tuition-calendar-day .tuition-today-label{margin-left:4px;display:inline}.tuition-notice-status{gap:8px;min-height:44px;font-size:14px}.tuition-notice-name{font-size:14px}}.registration-lessons{margin:0;padding:0;list-style:none}.registration-lessons li{border-bottom:1px solid var(--paper-line);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:12px 0;display:flex}.registration-lessons li>div{overflow-wrap:anywhere;min-width:0}.tuition-calendar-layout.has-selection:has(.registration-workspace){grid-template-columns:var(--tuition-student-column) minmax(0,1fr)}.tuition-calendar-layout.has-selection:has(.registration-workspace) #calendarSettings{grid-column:2;width:auto;max-width:none}.tuition-calendar-layout.has-selection:has(.registration-workspace) .tuition-calendar-main{grid-column:1/-1;margin-left:0}@media (width<=600px){.tuition-calendar-layout.has-selection:has(.registration-workspace){grid-template-columns:minmax(0,1fr)}.tuition-calendar-layout.has-selection:has(.registration-workspace) #calendarSettings{grid-column:1}}.tuition-calendar-layout.has-selection:has(.registration-workspace) #calendarSettings{background:var(--paper-card);border:1px solid var(--paper-line);border-radius:10px;max-height:none;padding:16px}[data-signup-step][hidden],.survey-navigation [hidden],#suBtn[hidden],[data-survey-reading][hidden]{display:none}.survey-year{border:1px solid var(--paper-line);border-radius:8px;margin:12px 0;padding:12px}.survey-year summary{cursor:pointer;font-weight:700}.survey-grid{grid-template-columns:repeat(auto-fit,minmax(min(140px,100%),1fr));gap:12px;margin-top:12px;display:grid}.survey-grid .field,.survey-grid input,.survey-grid select{box-sizing:border-box;width:100%;min-width:0}.survey-books{border-collapse:collapse;width:100%;margin-bottom:16px}.survey-books th,.survey-books td{border-bottom:1px solid var(--paper-line);text-align:left;padding:10px}.survey-books input[type=checkbox]{width:20px;height:20px}.survey-other-book input{box-sizing:border-box;width:100%}.survey-navigation{margin-top:16px}.survey-table-scroll{width:100%;max-width:100%;margin:16px 0;overflow-x:auto}.survey-grades{border-collapse:collapse;width:max-content;min-width:100%}.survey-grades tr>th:first-child{z-index:1;position:sticky;left:0}.survey-grades th,.survey-grades td{border:1px solid var(--paper-line);padding:8px}.survey-grades th{white-space:nowrap;background:var(--paper)}.survey-grades td label{white-space:nowrap;align-items:center;gap:8px;font-size:12px;display:flex}.survey-grades td label+label{margin-top:8px}.survey-grades input{box-sizing:border-box;border:1px solid var(--paper-line);width:72px;min-height:40px;font:inherit;color:var(--ink);background:var(--paper-card);border-radius:8px;padding:8px}.survey-book-actions{align-items:center;gap:8px;display:flex}.survey-books{table-layout:fixed}.survey-books th:last-child{width:110px}.survey-other-book input[type=text]{border:1px solid var(--paper-line);min-width:0;min-height:40px;color:var(--ink);background:var(--paper-card);font:inherit;border-radius:8px;padding:8px}@media (width<=600px){.survey-grades input,.survey-other-book input[type=text]{min-height:44px;font-size:16px}.login-wrap:has([data-signup-step]){width:calc(100% - 24px)}}.survey-mock{table-layout:fixed;border-collapse:collapse;width:100%;font-size:13px}.survey-mock-year-col{width:48px}.survey-mock-kind-col{width:34px}.survey-mock th,.survey-mock td{border:1px solid var(--paper-line);text-align:center;padding:4px 2px}.survey-mock th{background:var(--paper);white-space:nowrap}.survey-mock input{box-sizing:border-box;width:100%;min-width:0;max-width:100%;min-height:40px;font:inherit;text-align:center;color:var(--ink);background:var(--paper-card);border:1px solid var(--paper-line);appearance:textfield;border-radius:8px;padding:4px 2px;font-size:14px}.survey-mock input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.survey-mock input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.survey-mock-mobile-head,.survey-mock-month{display:none}@media (width<=600px){.survey-mock,.survey-mock tbody{display:block}.survey-mock colgroup,.survey-mock thead,.survey-mock-kind{display:none}.survey-mock tbody{background:var(--paper-line);border:1px solid var(--paper-line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-bottom:16px;display:grid}.survey-mock tbody tr{display:contents}.survey-mock th,.survey-mock td{border:0;min-width:0;padding:8px}.survey-mock td{background:var(--paper-card)}.survey-mock-year{grid-area:1/1/auto/-1}.survey-mock-mobile-head th{grid-row:2}.survey-mock-month{grid-column:1;grid-row:var(--month-row);align-content:center;display:block}.survey-mock-score{grid-column:2;grid-row:var(--month-row)}.survey-mock-rank{grid-column:3;grid-row:var(--month-row)}.survey-mock input{min-height:44px;font-size:16px}}.survey-readonly{gap:24px;min-width:0;padding-top:20px;display:grid;container-type:inline-size}.survey-readonly section{min-width:0}.survey-readonly h4{margin:0 0 12px;font-size:16px;line-height:1.5}.survey-readonly h5{color:var(--ink-soft);margin:0 0 8px;font-size:14px;line-height:1.5}.survey-readonly .hint{margin:0;line-height:1.6}.survey-basic-info{table-layout:fixed;border-collapse:collapse;width:100%;margin:0;font-size:14px;line-height:1.5}.survey-basic-info th,.survey-basic-info td{border:1px solid var(--paper-line);vertical-align:middle;padding:8px 12px}.survey-basic-info th{background:var(--paper);text-align:center;white-space:nowrap;width:72px}.survey-basic-info td{text-align:left;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;background:#fff}.survey-readonly .survey-read-table{font-size:14px}.survey-readonly .survey-read-table th,.survey-readonly .survey-read-table td{vertical-align:middle;padding:8px}.survey-readonly .survey-mock-year-col{width:72px}.survey-readonly .survey-mock-kind-col{width:56px}.survey-readonly .survey-read-table td{font-variant-numeric:tabular-nums}.survey-readonly .survey-mock-month{white-space:normal;word-break:keep-all;line-height:1.5}.survey-unanswered{color:var(--ink-soft)}.survey-legacy-grades:not(:first-child),.survey-unstudied-books{margin-top:16px}.survey-area-tables{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.survey-area-table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:14px}.survey-area-table caption{text-align:left;padding:0 0 8px;font-weight:700}.survey-area-table th,.survey-area-table td{border:1px solid var(--paper-line);padding:8px 12px;line-height:1.5}.survey-area-table thead th{background:var(--paper)}.survey-area-table th{text-align:left;overflow-wrap:anywhere}.survey-area-table tbody th{font-weight:400}.survey-area-table th:last-child{text-align:center;width:28%}.survey-area-table td{text-align:center;font-variant-numeric:tabular-nums}.survey-book-tags{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.survey-book-tags li{box-sizing:border-box;border:1px solid var(--paper-line);background:var(--paper);overflow-wrap:anywhere;border-radius:8px;max-width:100%;padding:4px 10px;font-size:13px;line-height:1.5}@media (width<=600px){.survey-area-tables{grid-template-columns:minmax(0,1fr)}.survey-basic-info tbody{display:block}.survey-basic-info tr{grid-template-columns:96px minmax(0,1fr);display:grid}.survey-basic-info th,.survey-basic-info td{width:auto;min-width:0}.survey-basic-info td{border-left:0}.survey-basic-info tr>:nth-child(n+3){border-top:0}.survey-readonly .survey-mock tbody:last-child{margin-bottom:0}.survey-readonly .survey-mock td{align-content:center}}@container (width<=600px){.survey-area-tables{grid-template-columns:minmax(0,1fr)}.survey-basic-info tbody{display:block}.survey-basic-info tr{grid-template-columns:96px minmax(0,1fr);display:grid}.survey-basic-info th,.survey-basic-info td{width:auto;min-width:0}.survey-basic-info td{border-left:0}.survey-basic-info tr>:nth-child(n+3){border-top:0}.survey-read-table,.survey-read-table tbody{display:block}.survey-read-table colgroup,.survey-read-table thead,.survey-read-table .survey-mock-kind{display:none}.survey-read-table tbody{background:var(--paper-line);border:1px solid var(--paper-line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-bottom:16px;display:grid}.survey-read-table tbody:last-child{margin-bottom:0}.survey-read-table tbody tr{display:contents}.survey-readonly .survey-read-table th,.survey-readonly .survey-read-table td{border:0;min-width:0}.survey-read-table td{background:var(--paper-card);align-content:center}.survey-read-table .survey-mock-year{grid-area:1/1/auto/-1}.survey-read-table .survey-mock-mobile-head th{grid-row:2}.survey-read-table .survey-mock-month{grid-column:1;grid-row:var(--month-row);align-content:center;display:block}.survey-read-table .survey-mock-score{grid-column:2;grid-row:var(--month-row)}.survey-read-table .survey-mock-rank{grid-column:3;grid-row:var(--month-row)}}.signup-form>h2{margin:0 0 20px}.signup-form [data-signup-step]{min-width:0}.signup-form [data-signup-step]>h3{margin:0 0 16px;line-height:1.5}.signup-form [data-signup-step]>h4{margin:24px 0 12px;line-height:1.5}.signup-form .hint{overflow-wrap:anywhere;margin:8px 0 16px}.signup-form label.field{margin:0 0 var(--space-4)}.signup-form .field>input,.signup-form .field>select{box-sizing:border-box;min-width:0;min-height:var(--control-height);margin:0}.signup-form .survey-grid{gap:16px;margin:0 0 20px}.signup-form .survey-grid label.field{margin:0}.signup-form .survey-table-scroll{margin:12px 0 16px}.signup-form .survey-grades th,.signup-form .survey-grades td{vertical-align:middle;padding:8px}.signup-form .survey-grades input{text-align:center}.signup-form .survey-mock{margin:12px 0 16px}.signup-form .survey-mock th,.signup-form .survey-mock td{vertical-align:middle;padding:8px 2px}.signup-form .survey-books{margin:12px 0 16px}.signup-form .survey-books th,.signup-form .survey-books td{vertical-align:middle;padding:12px 8px}.signup-form .survey-books input[type=checkbox]{flex:0 0 20px;width:20px;min-width:20px;height:20px;min-height:20px;margin:0;display:block}.signup-form .survey-book-actions{align-items:center;gap:8px}.signup-form .survey-book-actions .btn{flex-shrink:0;min-height:40px;margin:0;padding:8px}.signup-form .survey-other-book input[type=text]{min-height:40px;margin:0}.signup-form .row{align-items:center}.signup-form .row .btn{min-height:40px;margin:0}.signup-form #surveyStepLabel{margin:24px 0 12px}.signup-form .survey-navigation{margin:0 0 16px}.signup-form #signupError{box-sizing:border-box;overflow-wrap:anywhere;line-height:1.6;margin:16px 0!important}@media (width<=600px){.signup-form .field>input,.signup-form .field>select,.signup-form .row .btn,.signup-form .survey-book-actions .btn,.signup-form .survey-other-book input[type=text]{min-height:44px}.signup-form .survey-mock th,.signup-form .survey-mock td{padding:8px}.signup-form .survey-book-actions{flex-wrap:wrap}.signup-form .row{align-items:stretch}}.signup-form .signup-phone{border:0;min-width:0;margin:0 0 16px;padding:0}.signup-form .signup-phone legend{margin-bottom:8px;padding:0}.signup-form .signup-phone-inputs{grid-template-columns:minmax(0,3fr) auto minmax(0,4fr) auto minmax(0,4fr);align-items:center;gap:8px;display:grid}.signup-form .signup-phone-inputs input{box-sizing:border-box;text-align:center;width:100%;min-width:0;min-height:40px}@media (width<=600px){.signup-form .signup-phone-inputs input{min-height:44px}}.signup-form .survey-grades td,.signup-form .survey-mock td{padding:0}.signup-form .survey-grades td label{box-sizing:border-box;gap:0;min-width:112px;height:36px;margin:0;padding:0 8px;position:relative}.signup-form .survey-grades td label+label{border-top:1px solid var(--paper-line);margin:0}.signup-form .survey-grades input,.signup-form .survey-mock input{width:100%;min-width:0;height:36px;min-height:36px;box-shadow:none;text-align:center;appearance:textfield;background:0 0;border:0;border-radius:0;margin:0;padding:0 4px;display:block}.signup-form .survey-grades input{height:100%;min-height:0;padding-left:36px;position:absolute;inset:0}.signup-form .survey-grades input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.signup-form .survey-grades input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.signup-form .survey-grades input:focus,.signup-form .survey-grades input:focus-visible,.signup-form .survey-mock input:focus,.signup-form .survey-mock input:focus-visible{box-shadow:none;background:0 0;border:0;outline:none}.signup-form .survey-grades td label:focus-within,.signup-form .survey-mock td:focus-within{background:var(--steel-soft);box-shadow:inset 0 0 0 1px var(--steel)}@media (width<=600px){.signup-form .survey-grades td label,.signup-form .survey-mock input{height:44px;min-height:44px}}.signup-form .survey-grades td label{--survey-label-width:40px;background:var(--paper)}.signup-form .survey-grades td label:after{content:"";top:0;bottom:0;left:calc(var(--survey-label-width) - 1px);background:var(--paper-line);pointer-events:none;width:1px;position:absolute}.signup-form .survey-grades input{left:var(--survey-label-width);width:calc(100% - var(--survey-label-width));background:var(--paper-card);padding:0 4px;right:0}.signup-form .survey-grades td label:focus-within{background:var(--paper);box-shadow:none}.signup-form .survey-grades input:focus,.signup-form .survey-grades input:focus-visible{background:var(--steel-soft);box-shadow:inset 0 0 0 1px var(--steel)}#app:has(>.login-wrap .signup-form [data-signup-step="1"]:not([hidden])){max-width:1240px}.login-wrap:has(.signup-form [data-signup-step="1"]:not([hidden])){width:calc(100% - 32px);max-width:1160px}@media (width<=600px){.signup-form .survey-school .survey-mock-month{white-space:normal;word-break:keep-all;line-height:1.5}}@media (width>=601px){.signup-form .survey-mock-year-col{width:10%}.signup-form .survey-mock-kind-col{width:8%}.signup-form .survey-mock th{text-align:center;padding:8px}}.survey-book-year{gap:4px;margin-top:8px;font-weight:400}.survey-book-year[hidden]{display:none}.survey-book-year input{width:100%;min-width:0}.survey-other-book-inputs{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:8px;display:grid}.survey-other-book-inputs .survey-book-year{min-width:0;margin:0}.survey-other-book-inputs:has(>.survey-book-year[hidden]){grid-template-columns:minmax(0,1fr)}.signup-form .survey-other-book .survey-book-actions{flex-wrap:nowrap}.signup-form .survey-other-book input[type=text]{padding:4px 8px}.signup-form .survey-other-book .survey-book-actions .btn{white-space:nowrap;padding:4px}@media (width<=600px){.signup-form .survey-books th:last-child{width:68px}.signup-form .survey-books th,.signup-form .survey-books td{padding-inline:4px}.survey-other-book-inputs{gap:4px}.signup-form .survey-other-book input[type=text]{padding-inline:4px}}.survey-book-tags li{overflow-wrap:anywhere}.test-problem-fields{border:0;min-width:0;margin:0;padding:0}.test-problem-fields .assignment-section-body .assignment-problem-grid .prow{grid-template-columns:32px minmax(0,1fr) 40px}.test-problem-fields .assignment-problem-grid .prow:has(.test-problem-points){grid-template-rows:44px;grid-template-columns:32px 44px minmax(0,1fr);padding:0}.test-problem-fields .assignment-problem-grid .prow .problem-grid-actions{border-left:1px solid #0000;justify-content:flex-end;width:auto;margin:6px 0 6px 4px;padding:0 4px 0 1px;position:static}.test-problem-fields .assignment-problem-grid .prow .problem-answer-field{padding-right:0}.test-problem-fields .assignment-problem-grid .prow:has(.test-problem-points) .pans-input{padding-right:26px}.test-problem-fields .assignment-problem-grid .prow:has(.test-problem-points) .problem-grid-actions{z-index:3;border:0;width:22px;height:auto;margin:0;padding:0;position:absolute;top:0;bottom:0;right:2px}.test-problem-fields .assignment-problem-grid .prow:has(.test-problem-points) .problem-grid-actions .btn.small{border:1px solid var(--paper-line);background:var(--paper-card);border-radius:5px;width:22px;min-width:22px;height:22px;min-height:22px;font-weight:400;font-size:12px!important}.test-problem-fields .assignment-problem-grid .prow:has(.test-problem-points) .problem-grid-actions .btn.small:hover{background:var(--status-danger-soft);color:var(--status-danger);border-color:var(--paper-line)}.test-problem-points{justify-content:center;align-items:center;min-width:0;margin:0;padding:2px;font-size:12px;display:flex}.test-problem-fields .test-problem-points .test-point-toggle{white-space:nowrap;background:var(--paper-card);width:40px;min-width:40px;min-height:36px;color:var(--ink);border:1px solid var(--paper-line);justify-content:center;align-items:center;margin:0;padding:0;line-height:1;display:inline-flex;font-size:12px!important}.test-problem-points .test-point-toggle.is-three{background:var(--steel);border-color:var(--steel);color:#fff}.test-point-toggle:hover:not(:disabled){border-color:var(--steel);filter:brightness(.96)}.test-point-toggle:focus-visible{outline:2px solid var(--steel);outline-offset:2px}.test-point-total{white-space:pre-line}@media (width<=600px){.test-problem-fields .assignment-section-body .assignment-problem-grid .prow{grid-template-columns:26px minmax(0,1fr) 40px}.test-problem-fields .assignment-problem-grid .prow:has(.test-problem-points){grid-template-columns:26px 44px minmax(0,1fr)}.test-problem-fields .test-problem-points .test-point-toggle{min-height:40px;padding:0}}.answer-recognition-row.is-error{background:var(--status-danger-soft);border-left:3px solid var(--status-danger)}.answer-recognition-row.is-warning{border-left:3px solid var(--status-warning)}.answer-recognition-review-notice{margin:var(--space-2) 0 0;color:var(--status-warning);font-size:13px}.answer-recognition-row.is-error .answer-recognition-review-notice,.answer-recognition-row.is-error .answer-recognition-row-warning{color:var(--status-danger)}.student-detail-layout .student-detail-top-actions{align-items:center;gap:var(--space-3);margin:var(--space-4) 0 var(--space-5);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.student-detail-layout .student-detail-top-actions>.btn:first-child{justify-self:start}.student-detail-layout .student-detail-billing{justify-self:end}.student-detail-layout .student-detail-tabs{gap:var(--space-2);min-width:0;display:flex}.student-detail-layout .student-detail-tabs [aria-selected=true]{background:var(--steel-soft);border-color:var(--steel);color:var(--steel);font-weight:700}@media (width<=960px){.student-detail-layout .student-detail-top-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.student-detail-layout .student-detail-billing{grid-area:1/2}.student-detail-layout .student-detail-tabs{grid-area:2/1/auto/-1;justify-self:center}}.student-detail-layout .student-detail-top-actions .btn{width:auto;min-height:var(--control-height);justify-content:center;align-items:center;margin:0;display:inline-flex}.student-detail-layout .student-detail-report-card>.row{margin-bottom:var(--space-4)}.student-detail-layout .student-detail-header{gap:var(--space-4)!important;padding-bottom:var(--space-5)!important}.student-detail-layout .student-detail-header>div:first-child{gap:var(--space-2);min-width:0;display:grid}.student-detail-layout .student-detail-header h2{margin:0!important}.student-detail-layout .student-detail-meta{margin:0}.student-detail-layout .student-detail-joined{padding-top:var(--space-1);margin-left:auto;text-align:right!important}.student-detail-layout .student-report-controls{gap:var(--space-6);margin-top:var(--space-5)!important}.student-detail-layout .student-report-range-field>span,.student-detail-layout .student-report-memo-label{font-size:calc(var(--text-label) + 2pt);font-weight:700}.student-detail-layout .student-report-controls .field{gap:var(--space-2);flex-direction:column;display:flex}.student-detail-layout .student-report-pdf-settings{gap:var(--space-4);align-items:flex-end}.student-detail-layout .student-report-memo textarea{margin:0}.student-detail-layout .student-report-pdf-settings .student-report-actions{background:0 0;border:0;margin:0;padding:0}.student-detail-layout .student-learning-granularity{gap:var(--space-3);margin:var(--space-3) 0}.student-detail-layout .student-report-granularity-buttons{gap:var(--space-2);flex-wrap:wrap;align-items:center}.student-detail-layout .student-learning-period{margin-top:var(--space-2)}.student-detail-layout .student-report-chart{margin-top:var(--space-4)}.student-detail-layout .student-report-chart-legend{margin-bottom:var(--space-3);gap:var(--space-3)}@media (width<=600px){.student-detail-layout .student-detail-top-actions{gap:var(--space-3)}.student-detail-layout .student-detail-top-actions .btn{min-height:var(--touch-target)}.student-detail-layout .student-detail-joined{width:100%}.student-detail-layout .student-report-pdf-settings{align-items:stretch}}.student-detail-layout .student-detail-report-card div:has(>div>.student-learning-period){align-items:flex-end!important;gap:var(--space-4)!important}.student-detail-layout .student-detail-report-card div:has(>button[onclick*=changeStudentReportDisplayMode]){flex-wrap:wrap;align-items:center;display:flex;gap:var(--space-2)!important}.student-detail-layout .student-test-report-card{margin-bottom:20px}.student-detail-layout .student-test-report-card .student-detail-header{border-bottom:1px solid var(--paper-line);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;display:flex}.student-detail-layout .student-test-report-caption{color:var(--ink-soft);margin-bottom:5px;font-size:12px;font-weight:700}.student-detail-layout .student-test-report-card>.student-report-controls{border:1px solid var(--paper-line);background:#ffffff73;border-radius:12px;padding:16px}.student-detail-layout .student-test-report-card .student-report-control-row{flex-wrap:wrap;align-items:flex-end;gap:14px;display:flex}.student-detail-layout .student-test-report-card .student-report-range-field{min-width:180px;margin:0}.student-detail-layout .student-test-report-card .student-report-summary-grid>div{border-radius:12px}.student-detail-layout .student-test-report-card .student-report-summary-grid>div>div:not(.hint){margin-top:6px;font-size:28px;font-weight:800}.student-detail-layout .student-test-learning{border-top:1px solid var(--paper-line);margin-top:26px;padding-top:20px}.student-detail-layout .student-test-learning>h3:first-child{margin:0 0 4px}.student-detail-layout .student-test-records{border-top:1px solid var(--paper-line);margin-top:26px;padding-top:20px}select{background-color:var(--paper-card);border-color:var(--paper-line);border-radius:var(--radius-control);color:var(--ink)}select:not([multiple]):not([size]),select[size="1"]:not([multiple]){appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 16px),calc(100% - 11px);background-repeat:no-repeat;background-size:5px 5px;padding-inline:11px 32px}select:not(:disabled):hover{border-color:var(--steel)}select:focus-visible{outline:2px solid var(--steel);outline-offset:2px}select:disabled{background-color:var(--paper);color:var(--ink-soft);cursor:not-allowed;opacity:.65}select[multiple],select[size]:not([size="1"]){appearance:auto;background-image:none}.field.test-basic-title{gap:8px;width:100%;max-width:420px}.field.test-basic-type{gap:8px;width:100%;max-width:260px}.assignment-section-card .test-section-role-header{align-items:flex-end;gap:12px}.test-section-role-header .test-section-field{min-width:0;color:var(--ink-soft);flex:140px;gap:4px;margin:0;font-size:12px;display:grid}.test-section-role-header .test-section-field input{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.test-section-role-header .assignment-section-actions{flex:0 auto;justify-content:flex-end;align-self:flex-end;margin-left:auto}@media (width<=600px){.test-section-role-header .test-section-field{flex-basis:0}}.test-problem-notices{border:1px solid var(--paper-line);border-radius:var(--radius-control);margin:12px 0;padding:8px 12px;font-size:13px}.test-problem-notices summary{cursor:pointer}.test-problem-notices :is(.problem-notice-summary-counts,h4)>:is(.is-error,.is-warning){align-items:center;gap:4px;display:inline-flex}.test-problem-notices .problem-notice-collapse-label{color:var(--ink-soft);display:none}.test-problem-notices[open] .problem-notice-collapse-label{display:inline}.test-problem-notices[open] summary :is(.problem-notice-summary-counts,.hint){display:none}.test-problem-notices .problem-notice-groups{margin-top:var(--space-2)}.test-problem-notices .problem-notice-group+.problem-notice-group{border-top:1px solid var(--paper-line);margin-top:var(--space-3);padding-top:var(--space-3)}.test-problem-notices .problem-notice-group h4{font-size:var(--text-sm);font-weight:var(--weight-semibold);margin:0}.assessment-authoring .test-problem-notices .problem-notice-group li{font-weight:var(--weight-regular)}.test-problem-notices .problem-notice-icon{flex:none}.test-problem-notices .circle-alert{color:var(--status-danger)}.test-problem-notices .triangle-alert{color:#d4a017}.test-problem-notices summary .hint{margin:4px 0 0;display:block}.test-problem-notices summary:focus-visible{outline:2px solid var(--steel);outline-offset:2px}.test-problem-notices ul{overflow-wrap:anywhere;gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.test-problem-notices .is-warning{color:var(--status-warning)}.test-problem-notices .is-error{color:var(--status-danger)}.test-scoring-setting{margin:12px 0 20px}.test-scoring-segments{border:1px solid var(--paper-line);border-radius:var(--radius-control);margin-top:8px;display:flex;overflow:hidden}.test-scoring-segments button{background:var(--paper-card);min-width:0;color:var(--ink);font:inherit;cursor:pointer;border:0;flex:1;padding:12px}.test-scoring-segments button+button{border-left:1px solid var(--paper-line)}.test-scoring-segments button[aria-pressed=true]{background:var(--steel-soft);box-shadow:inset 0 -3px var(--steel)}.test-scoring-segments button span{font-size:var(--text-xs);margin-top:4px;display:block}.test-scoring-segments button:focus-visible{outline:2px solid var(--steel);outline-offset:-3px}.test-section-participation{white-space:nowrap;align-self:flex-end;align-items:center;gap:8px;min-height:40px;margin:0;display:flex}.test-section-participation input{appearance:none;border:1px solid var(--paper-line);background:var(--paper);cursor:pointer;border-radius:12px;width:32px;height:18px;position:relative}.test-section-participation input:before{content:"";background:var(--ink-soft);border-radius:50%;width:12px;height:12px;position:absolute;top:2px;left:2px}.test-section-participation input:checked{background:var(--steel-soft);border-color:var(--steel)}.test-section-participation input:checked:before{background:var(--steel);left:16px}.test-section-participation input:focus-visible{outline:2px solid var(--steel);outline-offset:2px}.test-composition-summary{border-bottom:1px solid var(--paper-line);font-size:var(--text-sm);overflow-wrap:anywhere;gap:12px;margin:16px 0;padding-bottom:16px;display:grid}.test-composition-group{align-items:baseline;gap:8px 16px;min-width:0;display:flex}.test-composition-group>strong{color:var(--ink-soft);flex:none}.test-composition-items{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.test-composition-chip{border:1px solid var(--paper-line);background:var(--steel-soft);border-radius:8px;flex-wrap:wrap;gap:4px 12px;max-width:100%;padding:6px 10px;display:flex}.test-composition-chip b{font-weight:600}.test-section-drag-handle{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;flex:0 0 36px;align-self:end;min-height:44px}.assignment-section-card.is-section-dragging .test-section-drag-handle{cursor:grabbing}.test-section-drag-handle:disabled{cursor:default}.assignment-sections>.assignment-section-card{border-width:1px;border-color:#c9a779;box-shadow:0 1px 3px #4632190d}#testSectionSortStatus{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.is-section-sorting>.assignment-section-card{will-change:transform;transition:transform .21s ease-out}.is-section-sorting>.assignment-section-card.is-section-dragging{z-index:2;transition:none;position:relative}.assignment-section-card.is-section-dragging{opacity:1;background:var(--paper-card);outline:2px solid var(--steel);box-shadow:0 6px 16px #1c2d4124}@media (prefers-reduced-motion:reduce){.is-section-sorting>.assignment-section-card{transition:none}}.assignment-section-card.section-drop-before{box-shadow:0 -3px 0 var(--red)}.assignment-section-card.section-drop-after{box-shadow:0 3px 0 var(--red)}@media (width<=600px){.test-composition-group{flex-direction:column;gap:8px}}.test-section-choices label{overflow-wrap:anywhere;align-items:center;gap:8px;min-height:44px;display:flex}.assignment-section-body>.problem-sheet:has(.test-problem-add-slot){overflow:visible}.test-problem-add-slot{justify-content:flex-start;align-items:center;min-width:0;min-height:44px;display:flex}@media (width>=961px){.test-problem-add-slot:nth-child(5n+1){width:44px;height:0;min-height:0;position:absolute;top:100%;left:0}}@media (width>=601px) and (width<=960px){.test-problem-add-slot:nth-child(3n+1){width:44px;height:0;min-height:0;position:absolute;top:100%;left:0}}@media (width>=381px) and (width<=600px){.test-problem-add-slot:nth-child(odd){width:44px;height:0;min-height:0;position:absolute;top:100%;left:0}}@media (width<=380px){.test-problem-add-slot{width:44px;height:0;min-height:0;position:absolute;top:100%;left:0}}.test-problem-add-slot button{width:24px;height:44px;box-shadow:none;color:var(--muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.assignment-section-body .assignment-problem-grid :is(.problem-insert,.test-problem-add-slot>button)>span{box-sizing:border-box;border:1px solid var(--paper-line);width:18px;height:18px;color:var(--ink);font-family:var(--font-sans);opacity:0;background:#f1f5f8;border-radius:3px;flex:none;justify-content:center;align-items:center;font-size:14px;font-weight:400;line-height:1;transition:opacity .12s;display:flex}.assignment-section-body .assignment-problem-grid :is(.problem-insert,.test-problem-add-slot>button):is(:hover,:focus-visible)>span{opacity:1;background:var(--steel-soft);border-color:var(--steel)}.assignment-section-body .assignment-problem-grid :is(.problem-insert,.test-problem-add-slot>button):active>span{background:var(--paper-line)}.assignment-section-body .assignment-problem-grid :is(.problem-insert,.test-problem-add-slot>button):focus-visible{outline:none}.assignment-section-body .assignment-problem-grid :is(.problem-insert,.test-problem-add-slot>button):focus-visible>span{outline:2px solid var(--steel);outline-offset:2px}.assignment-section-body .assignment-problem-grid :is(.problem-insert,.test-problem-add-slot>button):disabled{cursor:default}.assignment-section-body .assignment-problem-grid :is(.problem-insert,.test-problem-add-slot>button):disabled>span{opacity:.4;border-color:var(--paper-line);background:#f1f5f8}@media (hover:none){.assignment-section-body .assignment-problem-grid :is(.problem-insert,.test-problem-add-slot>button)>span{opacity:1}}@media (prefers-reduced-motion:reduce){.assignment-section-body .assignment-problem-grid :is(.problem-insert,.test-problem-add-slot>button)>span{transition:none}}.assessment-authoring{display:contents}.assessment-authoring .card h2,.assessment-authoring .card h3,.assessment-authoring .assignment-recipient-settings-heading h3{font-size:18px;font-weight:var(--weight-semibold)}.assessment-authoring .field>span,.assessment-authoring .test-section-field>span,.assessment-authoring .test-scoring-setting>span,.assessment-authoring .assignment-deadline-toggle>span,.assessment-authoring .assignment-recipient-settings-group h4,.assessment-authoring .problem-answer-field>span{font-size:14px;font-weight:var(--weight-semibold);color:var(--ink)}.assessment-authoring .btn,.assessment-authoring .test-section-participation span{font-size:var(--text-sm);font-weight:var(--weight-medium)}.assessment-authoring .hint,.assessment-authoring .test-scoring-segments button span{font-size:var(--text-sm);font-weight:var(--weight-regular);color:var(--ink-soft)}.assessment-authoring .test-scoring-segments button strong,.assessment-authoring .test-composition-group>strong,.assessment-authoring .test-composition-chip b{font-size:14px;font-weight:var(--weight-semibold)}.assessment-authoring .test-composition-chip span{font-size:var(--text-sm);font-weight:var(--weight-medium)}.assessment-authoring .test-problem-notices .is-error,.assessment-authoring .test-problem-notices .is-warning,.assessment-authoring .test-scoring-setting>.hint{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.assessment-authoring .test-problem-notices .is-error{color:var(--status-danger)}.assessment-authoring .test-problem-notices .is-warning{color:var(--status-warning)}.assessment-authoring #saveBtn,.assessment-authoring #testSave,.teacher-page-header-editor #saveBtn,.teacher-page-header-editor #testSave{font-size:14px;font-weight:var(--weight-semibold)}.assessment-authoring .new-assignment-file-grid{align-items:stretch}.assessment-authoring .explain-file-list-header{min-height:36px;margin-bottom:12px}.assessment-authoring .file-upload-text{min-width:0}.assessment-authoring .file-upload-text strong,.assessment-authoring .explain-file-list-header strong,.assessment-authoring .answer-recognition-guide>strong{font-size:14px;font-weight:var(--weight-semibold)}.assessment-authoring .file-upload-text span{font-size:var(--text-sm);font-weight:var(--weight-regular);color:var(--ink-soft)}.assessment-authoring .fname,.assessment-authoring .explain-file-info strong{white-space:normal;overflow-wrap:anywhere;min-width:0}.assessment-authoring .upload-file-item>.btn{flex-shrink:0}.answer-recognition-workspace{min-width:0;margin-top:16px}.assessment-authoring .answer-recognition-panel{background:0 0;border:0;gap:8px;margin-top:12px;padding:0}.answer-recognition-guide{border-top:1px solid var(--paper-line);padding:12px 0}.answer-recognition-guide p{margin:4px 0 0}.assessment-authoring .answer-recognition-result-summary{border-top:1px solid var(--paper-line);background:0 0;border-bottom:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 8px;padding:8px 0 0}.assessment-authoring .answer-recognition-panel h4{font-size:14px;font-weight:var(--weight-semibold);margin:0 0 8px}.assessment-authoring .answer-recognition-result-summary h4{grid-area:1/1;min-width:0;margin:0}.assessment-authoring .answer-recognition-result-summary .answer-recognition-metrics{grid-area:2/1/auto/-1}.answer-recognition-metrics{flex-wrap:wrap;gap:4px 12px;margin:4px 0 8px;display:flex}.answer-recognition-metrics>span{font-size:var(--text-sm)}.answer-recognition-metrics b{font-weight:var(--weight-semibold)}.answer-recognition-metrics .needs-review{background:var(--status-warning-soft);color:var(--status-warning);border-radius:4px;padding:0 4px}.answer-details-toggle{grid-area:1/2;justify-self:end;max-width:128px;padding-inline:6px}.assessment-authoring .answer-recognition-live:not(:has(*)){display:none}#answerRecognitionDetails>.answer-recognition-warnings{margin-bottom:4px}#answerRecognitionDetails[hidden]{display:none}.assessment-authoring .answer-recognition-result-panel{box-shadow:none;background:0 0;border:0;overflow:visible}.assessment-authoring .answer-recognition-results{scrollbar-gutter:auto;max-height:none;overflow:visible}.answer-recognition-grid{border:1px solid var(--paper-line);border-radius:6px;grid-template-columns:repeat(5,minmax(0,1fr));margin:8px 0 12px;display:grid}.answer-recognition-row.answer-recognition-cell{background:var(--paper-card);border:0;min-width:0;padding:0;display:block;position:relative}.answer-recognition-grid .answer-recognition-cell{border-right:1px solid var(--paper-line);border-bottom:1px solid var(--paper-line)}.answer-recognition-cell .answer-recognition-cell-button{width:100%;min-height:40px;color:var(--ink);font:inherit;font-size:var(--text-sm);cursor:help;background:0 0;border:0;border-radius:0;grid-template-columns:minmax(24px,.8fr) minmax(0,1fr);padding:0;display:grid}.answer-cell-number,.answer-cell-answer{overflow-wrap:anywhere;justify-content:center;align-items:center;min-width:0;padding:4px 2px;display:flex}.answer-cell-number{background:var(--steel-soft);border-right:1px solid var(--paper-line)}.answer-cell-answer{position:relative}.answer-recognition-cell.is-warning{background:var(--status-warning-soft)}.answer-recognition-cell.confidence-low{background:#ffedd5}.answer-recognition-cell.confidence-high{background:#f0fdf4}.answer-recognition-cell.is-error{background:var(--status-danger-soft)}.answer-cell-info{z-index:5;border:1px solid var(--paper-line);background:var(--paper-card);width:220px;max-width:65vw;color:var(--ink);font-size:var(--text-sm);font-weight:var(--weight-regular);overflow-wrap:anywhere;border-radius:6px;padding:8px;display:none;position:absolute;top:100%;left:0;box-shadow:0 2px 6px #4632191f}.answer-recognition-cell:nth-child(5n) .answer-cell-info,.answer-recognition-cell:nth-child(5n-1) .answer-cell-info{left:auto;right:0}.answer-recognition-cell:not(.is-tooltip-dismissed):hover .answer-cell-info,.answer-recognition-cell:not(.is-tooltip-dismissed):focus-within .answer-cell-info,.answer-recognition-cell.is-inspecting .answer-cell-info{display:block}.answer-recognition-cell-button:focus-visible{outline:2px solid var(--steel);outline-offset:-2px}.answer-grid-legend{font-size:var(--text-xs);color:var(--ink-soft);flex-wrap:wrap;gap:4px 8px;display:flex}.answer-grid-legend .medium,.answer-grid-legend .low{color:var(--status-warning)}.answer-grid-legend .error{color:var(--status-danger)}.answer-review-filter{align-items:center;gap:8px;padding:4px 0;display:flex}.answer-review-filter>strong{min-width:0;font-size:14px;font-weight:var(--weight-semibold);margin-right:auto}.answer-review-segments{border:1px solid var(--paper-line);background:var(--paper);border-radius:8px;flex:none;gap:2px;min-width:0;padding:3px;display:inline-flex}.teacher-shell .answer-review-filter .answer-review-segments .btn{color:var(--ink-soft);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:5px;margin:0}.teacher-shell .answer-review-filter .answer-review-segments .btn.secondary:hover{background:var(--steel-soft);color:var(--steel)}.teacher-shell .answer-review-filter .answer-review-segments .btn.secondary[aria-pressed=true]{background:var(--steel);border-color:var(--steel);color:#fff}.teacher-shell .answer-review-filter .answer-review-segments .btn:focus-visible{outline:2px solid var(--steel);outline-offset:2px}.answer-review-empty{padding:0 12px}.answer-recognition-result-group[hidden]{display:none}@media (width<=600px){.answer-recognition-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.answer-recognition-grid .answer-cell-info{left:0;right:auto}.answer-recognition-grid .answer-recognition-cell:nth-child(2n) .answer-cell-info{left:auto;right:0}}.answer-file-result{background:var(--paper-card);border:1px solid #c9a779;border-radius:8px;min-width:0;margin:4px 0 16px;padding:8px;box-shadow:0 1px 3px #4632190d}.answer-file-heading{gap:4px;min-width:0;margin:0 0 8px;display:grid}.answer-file-heading strong{font-size:15px;font-weight:var(--weight-semibold);overflow-wrap:anywhere}.answer-file-heading>span{font-size:var(--text-xs);color:var(--ink-soft)}.answer-file-result .answer-recognition-result-group{background:var(--paper);border:0;border-radius:6px;margin:8px 0;padding:6px 0 0}.answer-file-result .answer-recognition-result-group-header{background:0 0;border:0;gap:4px 8px;padding:4px 6px}.answer-file-result .answer-recognition-result-group-header strong{white-space:normal;overflow-wrap:anywhere;font-size:14px;font-weight:var(--weight-semibold)}.answer-file-result .answer-recognition-grid{margin:4px 0 0}.answer-file-result[hidden]{display:none}.answer-grid-legend>span{border-radius:4px;padding:3px 6px}.answer-grid-legend .high{color:var(--status-success);background:#f0fdf4}.answer-grid-legend .medium{background:var(--status-warning-soft);color:var(--status-warning)}.answer-grid-legend .low{color:#9a3412;background:#ffedd5}.answer-grid-legend .error{background:var(--status-danger-soft);color:var(--status-danger)}.answer-confidence-stats{min-width:0;font-size:var(--text-xs);color:var(--ink);border:1px solid #e5d8c5;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;display:grid}.answer-confidence-stat{grid-template-rows:subgrid;text-align:center;overflow-wrap:anywhere;grid-row:span 2;gap:0;min-width:0;display:grid}.answer-confidence-stat+.answer-confidence-stat{border-left:1px solid #e5d8c5}.answer-confidence-stat>span,.answer-confidence-stat>b{padding:4px 2px;line-height:18px}.answer-confidence-stat>b{border-top:1px solid #e5d8c5}.answer-confidence-stat b{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.answer-confidence-stat.high{color:var(--status-success)}.answer-confidence-stat.medium{color:var(--status-warning)}.answer-confidence-stat.low{color:#9a3412}.answer-confidence-stat.error{color:var(--status-danger)}.answer-confidence-stat.is-zero{color:#8a9099}.answer-confidence-unknown{color:var(--ink-soft);text-align:center;border-top:1px solid #e5d8c5;grid-column:1/-1;padding:4px}.answer-file-result.is-summary .answer-file-heading{gap:0}.answer-file-result.is-summary .answer-file-heading>strong{background:#ede1cf;border:1px solid #e5d8c5;border-bottom:0;border-radius:5px 5px 0 0;padding:10px 8px;font-size:15px}.answer-file-result.is-summary .ai-extracted-guide{margin-top:6px}.answer-file-result.is-summary .answer-recognition-result-group{border:1px solid #e5d8c5;padding:0}.answer-file-result.is-summary .answer-recognition-result-group-header{background:#f9f6f0;border-bottom:1px solid #e5d8c5;border-radius:5px 5px 0 0;padding:6px}.answer-file-result.is-summary .answer-recognition-result-group>.answer-confidence-stats{border:0}.answer-file-heading .ai-whole-file-apply{justify-self:start;margin:4px 0 0}.answer-file-result .answer-recognition-grid:empty{display:none}.ai-section-title-group{flex-wrap:wrap;flex:1 1 0;align-items:center;gap:4px 8px;min-width:0;display:flex}.ai-section-title-input{flex:160px;width:100%;min-width:0;max-width:100%}.answer-file-result .answer-recognition-result-group-header{align-items:center;position:relative}.ai-section-menu{flex:none}.ai-section-menu>summary{cursor:pointer;list-style:none}.ai-section-menu>summary::-webkit-details-marker{display:none}.ai-section-menu-content{z-index:6;border:1px solid var(--paper-line);background:var(--paper-card);border-radius:8px;width:min(280px,100%);padding:12px;position:absolute;top:100%;right:0;box-shadow:0 2px 6px #4632191f}.ai-section-menu-content .field{min-width:0;margin-bottom:8px}.ai-section-menu-content select{width:100%;max-width:100%}.ai-extracted-guide{color:var(--ink-soft);background:#f9f6f0;border-radius:6px;align-items:flex-start;gap:6px;margin:0;padding:6px 8px;display:flex}.ai-extracted-guide svg{flex:0 0 14px;margin-top:3px}.ai-extracted-guide strong{font-weight:var(--weight-semibold)}.author-attachment{outline-offset:3px;min-width:0}.author-attachment.paste-active{outline:1px solid var(--steel)}.author-attachment.file-drop-active{background:var(--steel-soft);outline:2px solid var(--steel)}.author-paste-target{margin:8px 0}.author-ai-select{align-items:center;gap:8px;font-size:13px;display:flex}.author-attachment .filebox.explain-file-list .explain-file-row{grid-template-columns:24px 28px minmax(0,1fr) 86px 36px;gap:6px}.author-file-selection{cursor:pointer;justify-content:center;align-items:center;width:28px;min-height:36px;margin:0;display:flex}.author-file-selection input,.author-ai-select input{flex:none;width:16px;height:16px;margin:0}.author-file-toolbar{border-bottom:1px solid var(--paper-line);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 0;display:flex}.author-file-toolbar>strong{font-size:14px;font-weight:600}.author-file-bulk{flex-wrap:wrap;gap:6px;margin-left:auto;display:flex}.author-file-bulk[hidden]{display:none}.author-file-bulk .btn{white-space:nowrap;border:1px solid var(--paper-line);background:0 0;min-height:36px;padding:6px 10px}.author-file-bulk .btn.author-file-danger{color:var(--red);border-color:var(--red);background:0 0}.author-file-save-hint{margin:6px 0 8px;font-size:12px}.author-file-visibility{min-height:36px;color:var(--ink-soft);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;gap:5px;padding:2px;font-size:12px;display:flex}.author-file-visibility:disabled{opacity:.5;cursor:default}.author-file-visibility-state{text-align:center;flex:none;width:3em}.author-file-switch-track{border:1px solid var(--ink-soft);background:var(--paper-line);border-radius:12px;flex:none;width:30px;height:18px;position:relative}.author-file-switch-track:after{content:"";background:var(--paper-card);border-radius:50%;width:12px;height:12px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0003}.author-file-visibility[aria-checked=true] .author-file-switch-track{background:var(--steel);border-color:var(--steel)}.author-file-visibility[aria-checked=true] .author-file-switch-track:after{transform:translate(12px)}.author-attachment .btn.author-file-delete{width:36px;min-width:0;height:36px;color:var(--red);justify-content:center;align-items:center;padding:0;display:flex}.author-file-visibility:focus-visible{outline:2px solid var(--steel);outline-offset:2px}.author-file-selection:has(input:focus-visible){outline:2px solid var(--steel);outline-offset:2px}@media (prefers-reduced-motion:reduce){.author-file-switch-track:after{transition:none}}@media (width<=600px){.author-attachment .filebox.explain-file-list .explain-file-row{grid-template-columns:24px 24px minmax(0,1fr) 44px 32px;gap:4px;padding:6px 4px}.author-file-selection{width:24px;min-height:44px}.author-file-visibility{flex-direction:column;gap:2px;min-height:44px}.author-attachment .btn.author-file-delete{width:32px;height:44px}.author-file-bulk{flex-basis:100%;margin-left:0}.author-file-bulk .btn{min-height:44px;padding:6px 8px}}.author-ai-area{border-top:1px solid var(--paper-line);min-width:0;padding-top:16px;display:block}.author-ai-area h3{margin:0 0 8px}.author-ai-files{gap:8px;margin:12px 0;display:grid}.author-ai-select span{overflow-wrap:anywhere;min-width:0}.author-attachment .upload-file-item{flex-wrap:wrap}.author-attachment .fname{overflow-wrap:anywhere;flex:120px;min-width:0}@media (width<=960px){.assessment-authoring .new-assignment-file-grid{grid-template-columns:minmax(0,1fr);align-items:start}}@media (width<=600px){.author-attachment .file-upload-box{flex-wrap:wrap}.author-file-visibility{min-height:44px}}.watermark-dialog{width:min(680px,100vw - 32px);max-height:90vh;overflow:auto}.watermark-dialog fieldset{border:0;gap:12px;min-width:0;margin:0;padding:0;display:grid}.watermark-dialog .field{gap:6px;display:grid}.watermark-options{flex-wrap:wrap;gap:16px;display:flex}.watermark-options label{align-items:center;gap:6px;display:flex}.watermark-dialog input[type=range]{width:100%}.watermark-dialog [data-filename],.watermark-dialog [data-status]{overflow-wrap:anywhere}.watermark-preview{border:1px solid var(--paper-line);background:#fff;width:100%;max-width:420px;position:relative;overflow:hidden}.watermark-page{transform-origin:0 0;width:210mm;height:297mm;position:relative}.watermark-preview iframe{pointer-events:none;border:0;width:182mm;height:269mm;display:block;position:absolute;top:14mm;left:14mm}.student-test-report-title{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.student-test-report-title h2{margin-bottom:0}.student-detail-layout .student-detail-name,.student-detail-layout .student-survey-detail h2{overflow-wrap:anywhere}.assessment-statistics summary{cursor:pointer;font-weight:600}.assessment-statistics section+section{border-top:1px solid var(--paper-line);margin-top:20px;padding-top:12px}.assessment-table-wrap{max-width:100%;overflow-x:auto}.assessment-statistics table{border-collapse:collapse;width:100%;font-size:14px}.assessment-statistics th,.assessment-statistics td{text-align:left;border-bottom:1px solid var(--paper-line);overflow-wrap:anywhere;padding:8px}.student-grades{min-width:0}.student-grades .row{flex-wrap:wrap;gap:8px}.student-grades form{min-width:0}.assessment-statistics th:not(:first-child),.assessment-statistics td{white-space:nowrap}.assessment-statistics th:first-child{min-width:80px}.assessment-problem-section{margin-top:14px}.assessment-problem-section h5{overflow-wrap:anywhere;margin:0 0 6px;font-size:14px}.assessment-statistics .assessment-problem-table thead th{padding:0}.assessment-statistics .assessment-sort{width:100%;min-height:40px;color:inherit;font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:0;justify-content:flex-start;align-items:center;gap:4px;padding:8px;font-weight:600;display:flex}.assessment-statistics .assessment-sort [data-sort-arrow]{min-width:1em;display:inline-block}.assessment-statistics .assessment-sort:hover{background:var(--steel-soft)}.assessment-statistics .assessment-sort:focus-visible{outline:2px solid var(--steel);outline-offset:-2px}.assessment-statistics th[aria-sort=ascending],.assessment-statistics th[aria-sort=descending]{color:var(--steel);background:var(--steel-soft)}.timetable{width:100%;min-width:0}.tt-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.tt-toolbar .field{flex:1;min-width:0;max-width:360px;margin:0}.tt-toolbar select{width:100%}.tt-scroll{border:1px solid var(--paper-line);background:var(--paper-card);overscroll-behavior:contain;border-radius:10px;max-height:70vh;position:relative;overflow:auto}.tt-grid{min-width:840px;padding-top:44px;position:relative}.tt-head{background:var(--paper-card);z-index:5;border-bottom:1px solid var(--paper-line);text-align:center;grid-template-columns:56px repeat(7,minmax(0,1fr));align-items:center;height:44px;margin-top:-44px;font-size:13px;display:grid;position:sticky;top:0}.tt-hours{background:var(--paper-card);width:56px;position:absolute;top:44px;bottom:0;left:0}.tt-hours span{color:var(--ink-soft);font-size:12px;position:absolute;left:4px}.tt-days{grid-template-columns:repeat(7,minmax(0,1fr));height:2880px;margin-left:56px;display:grid}.tt-day{border-left:1px solid var(--paper-line);background:repeating-linear-gradient(to bottom,transparent 0,transparent 19px,var(--paper-line) 20px);position:relative}.tt-block{box-sizing:border-box;border:1px solid var(--steel);border-left:3px solid var(--steel);background:var(--steel-soft);color:var(--ink);font:inherit;text-align:left;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:pan-x pan-y;z-index:1;border-radius:8px;min-width:0;padding:4px 6px;font-size:12px;position:absolute;overflow:hidden}.tt-block-text{z-index:1;overflow-wrap:anywhere;position:relative}.tt-block.selected{outline:3px solid var(--red);outline-offset:-3px;z-index:2}.tt-block.conflict{border-style:dashed}.tt-block.cancelled{background:var(--paper);border-color:var(--ink-soft);text-decoration:line-through}.tt-block.cut{opacity:.5;border-style:dashed}.tt-block.dragging{opacity:.3}.tt-overlap{background:repeating-linear-gradient(135deg,transparent 0,transparent 5px,var(--paper-line) 5px,var(--paper-line) 7px);pointer-events:none;position:absolute;left:0;right:0}.tt-resize{cursor:ns-resize;z-index:3;height:6px;position:absolute;left:0;right:0}.tt-resize.top{top:0}.tt-resize.bottom{bottom:0}.tt-preview{z-index:4;background:var(--red-soft);border:2px dashed var(--red);opacity:.85;pointer-events:none;box-sizing:border-box;padding:4px;font-size:12px;position:absolute;left:0;right:0}.tt-ghost{pointer-events:none;z-index:1000;border:1px solid var(--steel);background:var(--paper-card);opacity:.85;border-radius:8px;padding:8px;font-size:12px;position:fixed}.tt-ghost .tt-resize,.tt-ghost .tt-overlap{display:none}.tt-warning{border-left:3px dashed var(--red);overflow-wrap:anywhere;padding:8px 12px;font-size:13px}.tt-dialog{width:min(520px,100vw - 32px)}.tt-dialog input,.tt-dialog select{box-sizing:border-box;width:100%;min-width:0;min-height:40px}.tt-form-times{grid-template-columns:1fr 1fr;gap:12px;display:grid}.tt-form-error{color:var(--red)}.tt-form-warning{font-size:13px}.tt-danger{border-top:1px solid var(--paper-line);flex-wrap:wrap;gap:8px;padding-top:16px;display:flex}@media (width<=600px){.tt-toolbar .field{flex-basis:100%;max-width:none}.tt-toolbar .btn,.tt-dialog .btn{min-height:44px}.tt-toolbar select,.tt-dialog input,.tt-dialog select{min-height:44px;font-size:16px}.tt-form-times{grid-template-columns:1fr}.tt-resize{display:none}}@media (prefers-reduced-motion:reduce){.timetable *,.tt-dialog *{transition:none!important;animation:none!important}}.teacher-main:has(.timetable){max-width:none}.tt-block-name{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.tt-block-time{white-space:nowrap;display:block}.tt-block{align-items:flex-start;display:flex}.tt-scope{border:1px solid var(--paper-line);background:var(--paper-card);border-radius:8px;padding:12px}#tt-save-state{color:var(--ink-soft);font-size:12px}.tt-create:not([hidden]){border:1px solid var(--paper-line);background:var(--paper-card);border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;padding:12px;display:flex}.tt-create .field{flex:1;min-width:0;margin:0}.tt-block.saving{border-style:dotted}@media (width<=600px){.tt-create .field{flex-basis:100%}.tt-create select{width:100%;min-height:44px;font-size:16px}}.timetable [hidden]{display:none}.tt-delete{border-color:var(--red);color:var(--red);margin-left:8px}.tt-delete-notice:not([hidden]){border:1px solid var(--paper-line);background:var(--paper-card);border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;padding:8px 12px;font-size:13px;display:flex}.tt-color-0{--tt-class-color:var(--steel)}.tt-color-1{--tt-class-color:var(--red)}.tt-color-2{--tt-class-color:#527257}.tt-color-3{--tt-class-color:#866934}.tt-color-4{--tt-class-color:#756184}.tt-block{border-left-color:var(--tt-class-color,var(--steel))}.tt-head{grid-template-columns:56px repeat(var(--tt-days,7),minmax(0,1fr))}.tt-head>span{background:var(--paper-card);place-items:center;height:100%;display:grid;position:sticky;left:0}.tt-days{grid-template-columns:repeat(var(--tt-days,7),minmax(0,1fr))}.tt-hours{float:left;z-index:4;height:2880px;position:sticky;top:auto;bottom:auto;left:0}.tt-day{background:repeating-linear-gradient(to bottom,var(--paper-line) 0,var(--paper-line) 1px,transparent 1px,transparent 120px),repeating-linear-gradient(to bottom,transparent 0,transparent 19px,color-mix(in srgb,var(--paper-line) 40%,transparent) 19px,color-mix(in srgb,var(--paper-line) 40%,transparent) 20px)}.timetable{container-type:inline-size}.tt-views{border:1px solid var(--paper-line);border-radius:8px;flex-wrap:wrap;padding:4px;display:flex}.tt-views [aria-pressed=true]{background:var(--red-soft);color:var(--red);font-weight:700}.tt-month-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:20px;display:grid}#tt-month,.tt-detail{min-width:0}.tt-month-grid{border:1px solid var(--paper-line);background:var(--paper-card);border-radius:10px;overflow:hidden}.tt-weekdays,.tt-dates{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.tt-weekdays{text-align:center;border-bottom:1px solid var(--paper-line);padding:12px 0;font-size:13px}.tt-date{font:inherit;color:var(--ink);border:0;border-right:1px solid var(--paper-line);border-bottom:1px solid var(--paper-line);text-align:left;cursor:pointer;background:0 0;flex-direction:column;gap:4px;min-width:0;min-height:136px;padding:8px 4px;transition:background-color .16s;display:flex}.tt-date:nth-child(7n){border-right:0}.tt-date:hover{background:var(--paper)}.tt-date.selected{background:var(--steel-soft);box-shadow:inset 0 0 0 2px var(--steel)}.tt-date.outside{color:var(--ink-soft);background:var(--paper)}.tt-date.outside.selected{background:var(--steel-soft)}.tt-date-number{align-items:center;gap:4px;padding:2px 4px;font-weight:700;display:flex}.tt-date.today .tt-date-number{color:var(--red)}.tt-date.today .tt-date-number:before{content:"";background:var(--red);border-radius:50%;flex-shrink:0;width:6px;height:6px}.tt-date-number small{font-size:11px}.tt-date-events{flex-direction:column;gap:4px;width:100%;display:flex}.tt-month-event{border-left:3px solid var(--tt-class-color);white-space:nowrap;text-overflow:ellipsis;color:var(--ink);padding-left:4px;font-size:12px;line-height:1.6;overflow:hidden}.tt-month-event.cancelled{text-decoration:line-through}.tt-more{color:var(--steel);padding-left:4px;font-size:12px}.tt-more-small{display:none}.tt-detail{border:1px solid var(--paper-line);background:var(--paper-card);border-radius:10px;padding:16px}.tt-detail-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.tt-detail-heading h3{margin:0;font-size:18px}.tt-detail-heading>span{color:var(--ink-soft);font-size:13px}.tt-detail-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.tt-detail-item{border:1px solid var(--paper-line);border-left:3px solid var(--tt-class-color);border-radius:8px;min-width:0;padding:8px}.tt-detail-item.selected{outline:2px solid var(--steel)}.tt-detail-item.cut{opacity:.6;border-style:dashed}.tt-lesson-select{text-align:left;width:100%;min-width:0;font:inherit;color:var(--ink);cursor:pointer;overflow-wrap:anywhere;background:0 0;border:0;flex-direction:column;gap:4px;padding:4px;display:flex}.tt-lesson-select small,.tt-lesson-status{color:var(--ink-soft);font-size:12px}.tt-detail-item.cancelled .tt-lesson-name,.tt-detail-item.cancelled .tt-lesson-select strong{text-decoration:line-through}.tt-detail-warning{overflow-wrap:anywhere;margin:8px 4px;font-size:12px}.tt-row-actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.tt-row-actions .btn{min-height:36px}@container (width<=1000px){.tt-month-layout{grid-template-columns:minmax(0,1fr)}}@media (width<=600px){.tt-date{min-height:96px;padding:8px 2px}.tt-date-number{gap:2px;padding:0}.tt-date-number small,.tt-date-events .tt-month-event:nth-child(n+2),.tt-more-wide{display:none}.tt-more-small{display:block}.tt-month-event{padding-left:2px}.tt-detail{padding:12px}.tt-row-actions .btn{min-height:44px}.tt-period-toolbar{gap:4px}.tt-views{flex-basis:100%}#tt-period{flex-basis:100%;padding:8px 0}}.timetable .tt-views .btn[aria-pressed=true]{background:var(--red-soft);color:var(--red);border-color:var(--red);font-weight:700}.tt-detail .tt-scope{padding:8px}.tt-detail .tt-scope .field{flex-basis:100%}.tt-detail #tt-selection{overflow-wrap:anywhere;font-size:12px}@media (width<=600px){.tt-month-time{white-space:nowrap;font-size:11px;display:block}.tt-month-label{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.tt-date{min-height:112px}}.tt-date{cursor:default;position:relative}.tt-date-pick{font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.tt-date-pick:after{content:"";position:absolute;inset:0}.tt-date-events,.tt-more{z-index:1;position:relative}.tt-more{cursor:pointer}.tt-month-event{font:inherit;text-align:left;cursor:grab;border:1px solid var(--paper-line);border-left:3px solid var(--tt-class-color);background:color-mix(in srgb,var(--tt-class-color) 9%,var(--paper-card));-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-radius:6px;width:100%;padding:4px;font-size:12px}.tt-month-event.selected{outline:2px solid var(--red)}.tt-month-event.dragging{opacity:.35}.tt-date.drop-target{box-shadow:inset 0 0 0 3px var(--red);background:var(--red-soft)}.tt-month-ghost{overflow-wrap:anywhere;max-width:300px}.tt-management{border:1px solid var(--paper-line);background:var(--paper-card);border-radius:10px;margin-top:20px;padding:16px}.tt-management summary{cursor:pointer;font-weight:700}.tt-management input{box-sizing:border-box;width:100%;min-width:0;min-height:40px}.tt-period-fields{flex-direction:column;gap:8px;display:flex}@media (width<=600px){.tt-month-event{padding:2px}.tt-management input{min-height:44px;font-size:16px}}#tt-series{border:1px solid var(--paper-line);border-radius:8px;margin-block:12px;padding:12px}#tt-series summary{cursor:pointer;font-weight:700}.tt-series-row{border-bottom:1px solid var(--paper-line);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.tt-series-row>div{overflow-wrap:anywhere;min-width:0}.tt-series-row small{color:var(--ink-soft)}.timetable .tt-related{background-color:var(--steel-soft);box-shadow:inset 0 0 0 2px var(--steel)}@media (width<=600px){.tt-series-row{flex-direction:column;align-items:flex-start}}.tt-dialog [hidden]{display:none}.tt-filters .field{flex:0 240px;font-size:12px}.tt-filters select{min-height:36px}#tt-series{border:0;margin:12px 0 20px;padding:0}.tt-series-heading{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}#tt-series-list{overscroll-behavior-x:contain;overflow-x:auto}.tt-series-board{grid-template-columns:repeat(7,minmax(116px,1fr));gap:8px;min-width:860px;display:grid}.tt-series-day{background:var(--paper-card);border:1px solid var(--paper-line);border-radius:8px;min-width:0;padding:8px}.tt-series-day h4{text-align:center;font:inherit;color:var(--ink-soft);margin:0 0 8px;font-size:12px}.tt-series-card{border:1px solid var(--paper-line);border-left:3px solid var(--tt-class-color);width:100%;color:var(--ink);background:color-mix(in srgb,var(--tt-class-color) 7%,var(--paper-card));font:inherit;text-align:left;cursor:pointer;border-radius:8px;flex-direction:column;gap:4px;margin-top:4px;padding:8px;font-size:12px;display:flex}.tt-series-card strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.tt-series-card:disabled{opacity:.6;cursor:default}.tt-series-empty{text-align:center;color:var(--ink-soft);display:block}.tt-month-layout{grid-template-columns:minmax(0,1fr);gap:12px}.tt-detail:not([open]){display:none}.tt-detail>summary{cursor:pointer;font-weight:700}.tt-detail[open] #tt-detail{margin-top:12px}.tt-period-toolbar{gap:4px}.tt-period-toolbar #tt-period{margin-right:8px}.tt-views{margin-left:auto;padding:0}.tt-scope-compact{color:var(--ink-soft);align-items:center;gap:4px;margin-left:8px;font-size:12px;display:flex}.tt-scope-compact select{width:auto;max-width:100%;min-height:36px;font:inherit;color:var(--ink)}.tt-selected-tools{border:1px solid var(--paper-line);border-radius:8px;padding:8px}#tt-selection{overflow-wrap:anywhere;font-size:12px}.tt-status{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:12px;display:flex}.tt-status:has(:not([hidden]):not(:empty)){margin-bottom:8px}.tt-secondary-menus{flex-wrap:wrap;align-items:flex-start;gap:16px;margin-top:12px;font-size:13px;display:flex}.tt-secondary-menus>details{min-width:0;max-width:100%}.tt-secondary-menus summary{cursor:pointer;color:var(--ink-soft)}.tt-secondary-menus .tt-management{background:0 0;border:0;margin:0;padding:0}.tt-secondary-menus #tt-management{margin-top:12px}.tt-date-add{z-index:2;background:var(--paper-card);width:28px;height:28px;color:var(--ink-soft);font:inherit;cursor:pointer;opacity:0;border:1px solid #0000;border-radius:8px;font-size:20px;transition:opacity .12s;position:absolute;top:4px;right:4px}.tt-date:hover .tt-date-add,.tt-date:focus-within .tt-date-add{opacity:1}.tt-date-add:hover,.tt-date-add:focus-visible{border-color:var(--paper-line);color:var(--red)}@media (hover:none),(pointer:coarse){.tt-date-add{opacity:1;width:32px;height:32px}}@media (width<=600px){.tt-filters .field{flex:120px}.tt-filters select{min-height:44px}.tt-period-toolbar #tt-period{flex-basis:100%;padding:0}.tt-views{flex-basis:auto;margin-left:0}.tt-scope-compact{flex-wrap:wrap;min-width:0;margin-left:auto}.tt-scope-compact select{min-height:44px;font-size:14px}.tt-date-add{width:24px;height:32px;top:2px;right:0}.tt-date-number{padding-right:20px}.tt-date-events{margin-top:12px}}.tt-series-card-wrap{position:relative}.tt-series-delete{width:26px;height:26px;color:var(--ink-soft);background:var(--paper-card);font:inherit;cursor:pointer;opacity:0;border:1px solid #0000;border-radius:8px;place-items:center;padding:0;font-size:20px;line-height:1;transition:opacity .12s;display:grid;position:absolute;top:2px;right:2px}.tt-series-card-wrap:hover .tt-series-delete,.tt-series-card-wrap:focus-within .tt-series-delete{opacity:1}.tt-series-delete:hover,.tt-series-delete:focus-visible{color:var(--red);border-color:var(--paper-line)}@media (hover:none),(pointer:coarse){.tt-series-delete{opacity:1;width:32px;height:32px}.tt-series-card-wrap .tt-series-card{padding-right:36px}}.tt-weekday-select{flex-wrap:wrap;gap:4px;margin:8px 0;display:flex}.tt-weekday-select [aria-pressed=true]{background:var(--red-soft);border-color:var(--red);color:var(--red)}.tt-day-times{margin-top:12px}.tt-day-times summary{cursor:pointer;color:var(--steel)}.tt-day-time{gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--paper-line);flex-wrap:wrap;display:flex}.tt-day-time>.field,.tt-day-time>.tt-form-times{flex:100%;min-width:0}.tt-group-fields>.hint{margin-top:8px}#timetable:focus{outline:none}.timetable .tt-series-card-wrap.tt-related{box-shadow:none;background:0 0}.timetable :is(.tt-series-card,.tt-month-event,.tt-block){box-shadow:none;outline:none}.timetable :is(.tt-series-card,.tt-month-event,.tt-block):is(:hover,.tt-related,.selected,:focus-visible){border-color:var(--steel);border-left-color:var(--tt-class-color);background-color:var(--steel-soft);box-shadow:none;outline:none}.timetable :is(.tt-series-card,.tt-month-event,.tt-block):is(.selected,:focus-visible){border-color:var(--red);border-left-color:var(--tt-class-color);box-shadow:inset 0 0 0 1px var(--red)}.tt-class-subtitle{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--ink-soft);font-size:11px;font-weight:400;display:block;overflow:hidden}.tt-date-header{justify-content:space-between;align-items:center;gap:2px;min-height:32px;display:flex}.tt-date-header .tt-date-pick{min-width:0}.tt-date-header .tt-date-number{flex-wrap:wrap;align-items:center;gap:2px;padding:0;display:flex}.tt-date-header .tt-date-add{flex:0 0 28px;place-items:center;width:28px;height:28px;padding:0;line-height:1;display:grid;position:relative;inset:auto}.tt-series-card-wrap .tt-series-delete{top:8px;right:6px}.tt-series-card-wrap .tt-series-card{padding-right:40px}.tt-month-event{position:relative}.tt-block-tools{z-index:4;opacity:0;pointer-events:none;gap:2px;transition:opacity .15s;display:flex;position:absolute;top:4px;right:4px}:is(.tt-month-event,.tt-block,.tt-series-card-wrap):is(:hover,:focus-within)>.tt-block-tools{opacity:1;pointer-events:auto}.tt-block-tools:has(:popover-open){opacity:1;pointer-events:auto}.tt-block-tools>button{border:1px solid var(--paper-line);background:var(--paper-card);width:26px;height:26px;color:var(--steel);font:inherit;cursor:pointer;border-radius:8px;place-items:center;padding:0;font-size:18px;line-height:1;display:grid}.tt-block-menu{border:1px solid var(--paper-line);background:var(--paper-card);width:220px;max-width:calc(100vw - 16px);color:var(--ink);border-radius:8px;margin:0;padding:4px;position:fixed;inset:auto}.tt-block-menu:popover-open{flex-direction:column;display:flex}.tt-block-menu button{text-align:left;min-height:36px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:8px}.tt-block-menu button:is(:hover,:focus-visible){background:var(--steel-soft)}.tt-block-menu::backdrop{background:0 0}.tt-more{font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;font-size:12px}.tt-date[data-expanded=true] .tt-date-events .tt-month-event{display:block}@media (hover:none),(pointer:coarse){.tt-block-tools{opacity:1;pointer-events:auto}.tt-inline-edit{display:none!important}.tt-block-tools>button{width:28px;height:28px}}@media (prefers-reduced-motion:reduce){.tt-block-tools{transition:none}}.tt-month-event{min-height:32px}.tt-block>.tt-block-tools{top:1px;right:2px}.tt-block>.tt-block-tools>button{width:22px;height:18px;font-size:16px}.tt-time-field{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.tt-time-field>label{font-size:var(--text-label);font-weight:var(--weight-medium);line-height:var(--leading-control);color:var(--ink-soft)}.tt-time-input{align-items:center;gap:4px;display:flex}.tt-time-input input{width:100%;min-width:0}.tt-time-input>button{border:1px solid var(--paper-line);height:40px;color:var(--steel);background:var(--paper-card);cursor:pointer;border-radius:8px;flex:0 0 40px;place-items:center;padding:0;display:grid}.tt-time-picker{border:1px solid var(--paper-line);background:var(--paper-card);width:320px;max-width:calc(100vw - 16px);color:var(--ink);border-radius:10px;margin:0;padding:12px;position:fixed;inset:auto}.tt-time-picker:popover-open{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.tt-time-picker label{flex-direction:column;gap:4px;min-width:0;font-size:12px;display:flex}.tt-time-picker select{width:100%;min-width:0;min-height:40px;font:inherit;font-size:14px}.tt-time-picker>button{grid-column:1/-1}@media (width<=600px){.tt-time-input input,.tt-time-picker select{font-size:16px}.tt-time-input>button{flex-basis:44px;height:44px}}.class-billing{grid-template-columns:100px 240px minmax(0,1fr);align-items:start;gap:16px;display:grid}.class-billing[data-filter-panel=false]{grid-template-columns:100px minmax(0,1fr)}.class-billing[data-filter-panel=false] .cb-filter-panel{display:none}.cb-main{min-width:0}.cb-nav{border-right:1px solid var(--paper-line);flex-direction:column;align-items:stretch;gap:24px;padding-right:12px;display:flex}.cb-nav-primary,.cb-settings-options{flex-direction:column;gap:8px;display:flex}.cb-nav .btn{text-align:left;white-space:normal;padding:8px}.class-billing .cb-nav .btn[aria-pressed=true]{color:var(--red);background:var(--red-soft);border-color:var(--red);font-weight:700}.cb-settings{margin-top:16px}.cb-filter-panel{border-right:1px solid var(--paper-line);flex-direction:column;gap:12px;min-width:0;padding-right:16px;display:flex}.cb-panel-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.cb-panel-heading strong{font-size:14px}.cb-filter-panel .field{min-width:0;margin:0}.cb-filter-panel :is(input,select){width:100%;min-width:0}.cb-search-results{overscroll-behavior:contain;max-height:clamp(180px,45vh,480px);overflow:auto}.cb-search-student{border:1px solid #0000;border-bottom-color:var(--paper-line);width:100%;min-height:44px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;overflow-wrap:anywhere;background:0 0;flex-direction:column;gap:4px;padding:12px 8px;display:flex}.cb-search-student small{color:var(--ink-soft)}.cb-search-student.selected,.class-billing #cb-all-students.active{background:var(--red-soft);border-color:var(--red);color:var(--red)}.cb-filter-summary-bar,#cb-filter-summary{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cb-filter-summary-bar{margin-bottom:12px}#cb-filter-summary{min-width:0}#cb-filter-summary .btn{white-space:normal;overflow-wrap:anywhere}.class-billing #tt-month{overflow-x:auto}.class-billing .tt-month-grid{min-width:980px}.class-billing .tt-date{min-height:88px}.class-billing [hidden]{display:none!important}.class-billing .tt-series-board{grid-template-columns:repeat(7,minmax(0,1fr));min-width:0}.class-billing #tt-series{overflow:visible}.cb-weekday-heading{justify-content:space-between;align-items:center;gap:4px;margin-bottom:8px;display:flex}.cb-weekday-heading h4{margin:0}.cb-weekday-heading .btn{min-width:28px;padding:4px}.class-billing .tt-series-card{overflow-wrap:anywhere}.cb-settings-options .btn{text-align:left}.class-billing .tt-date{cursor:default}.class-billing .tt-date-pick{cursor:pointer}.cb-fees{width:100%;min-width:0}.class-billing .tt-date>.cb-fees{z-index:1;position:relative}.cb-fees .tuition-notice-name-label,.cb-legacy-fee{text-underline-offset:3px;text-decoration:underline}.cb-fees .tuition-notice-name:focus-visible,.cb-legacy-fee:focus-visible{outline:2px solid var(--steel);outline-offset:2px}.cb-fees .tuition-notice{margin:4px 0}.cb-fees .tuition-notice-name{font-size:13px}.cb-fees .tuition-notice-status{min-height:36px;font-size:12px}.cb-fees .btn{white-space:normal;width:100%}.cb-projected .tuition-notice-status.incomplete .tuition-status-icon{background:var(--red-soft);color:var(--red)}.cb-week-grid{min-width:1120px;padding-top:var(--cb-head-height)}.cb-week-grid .tt-head{height:var(--cb-head-height);margin-top:calc(-1 * var(--cb-head-height));align-items:start}.cb-week-grid .tt-head>div{border-left:1px solid var(--paper-line);min-width:0;padding:4px}.cb-head-date{width:100%;min-height:28px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border:0;font-weight:700;display:block}.cb-personal{border:1px dashed var(--steel);background:var(--paper-card);width:100%;color:var(--ink);font:inherit;text-align:left;overflow-wrap:anywhere;cursor:pointer;border-radius:6px;padding:8px;font-size:12px;display:block}.cb-personal-block{z-index:2;position:absolute;overflow:hidden}#cb-mobile{display:none}.cb-dialog{width:min(880px,100vw - 32px);max-height:calc(100dvh - 32px);padding:20px;overflow:auto}.cb-dialog-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.cb-dialog-head h3{margin:0}.cb-dialog-head button{flex-shrink:0}.cb-dialog-body{min-width:0}.cb-dialog-body>h4{margin:0 0 12px}.cb-dialog-body>p{margin:8px 0 12px}.cb-dialog-body .tt-toolbar{margin-top:16px}.cb-dialog-body details{border-top:1px solid var(--paper-line);margin-top:20px;padding-top:16px}.cb-dialog-body details summary{cursor:pointer;margin-bottom:12px}.cb-roster-row{border-top:1px solid var(--paper-line);grid-template-columns:24px minmax(0,1fr) minmax(160px,220px);align-items:start;gap:12px;padding:16px 0;display:grid}.cb-roster-row>div{overflow-wrap:anywhere;min-width:0}.cb-roster-row>div>span{color:var(--ink-soft);font-size:13px;display:block}.cb-roster-row p{margin:8px 0;font-size:13px}.cb-check{align-items:center;min-height:44px;display:flex}.cb-check input{width:18px;height:18px}.cb-check .sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.cb-personal-block{-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box}.cb-name{min-height:36px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;overflow-wrap:anywhere;background:0 0;border:0;padding:4px 0;font-weight:700}.cb-student-row,.cb-history-row,.cb-lesson-row{border:0;border-bottom:1px solid var(--paper-line);width:100%;color:var(--ink);text-align:left;font:inherit;cursor:pointer;overflow-wrap:anywhere;background:0 0;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.cb-student-row span{color:var(--ink-soft);flex-shrink:0;font-size:13px}.cb-reservation{background:var(--steel-soft);border-radius:8px;padding:12px}.cb-bulk-error{color:var(--red)}@media (width<=1400px){.class-billing[data-filter-panel=auto]{grid-template-columns:100px minmax(0,1fr)}.class-billing[data-filter-panel=auto] .cb-filter-panel{display:none}}@media (width<=600px){.class-billing,.class-billing[data-filter-panel]{grid-template-columns:minmax(0,1fr);gap:16px}.class-billing:not([data-filter-panel=true]) .cb-filter-panel{display:none}.cb-filter-panel{border-right:0;border-bottom:1px solid var(--paper-line);padding:0 0 16px}.cb-filter-panel :is(input,select){min-height:44px;font-size:16px}.cb-search-results{max-height:280px}.cb-nav{border-right:0;border-bottom:1px solid var(--paper-line);flex-direction:row;align-items:center;gap:8px;padding:0 0 12px}.cb-nav-primary{flex-direction:row;flex:1}.cb-nav-primary .btn{text-align:center;flex:1}.cb-settings{margin:0}.class-billing .tt-series-board{grid-template-columns:minmax(0,1fr);gap:12px}.class-billing .tt-series-day{padding:12px}.cb-weekday-heading .btn{min-width:44px;min-height:44px}.cb-desktop{display:none}#cb-mobile{display:block}.cb-date-picker{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:12px 0 20px;display:grid}.cb-date-picker button{border:1px solid var(--paper-line);background:var(--paper-card);min-height:44px;color:var(--ink);font:inherit;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;padding:4px 0;font-size:14px;display:flex}.cb-date-picker .selected{background:var(--red-soft);border-color:var(--red)}.cb-date-picker>span{text-align:center;color:var(--ink-soft);font-size:13px}.cb-date-picker .adjacent{color:var(--ink-soft);background:var(--paper)}.cb-day-list h3{margin:0 0 16px;font-size:18px}.cb-day-list h4{margin:20px 0 8px}.cb-lesson-row{flex-direction:column;align-items:flex-start;gap:4px}.cb-day-list .tuition-notice-status{min-height:44px;font-size:14px}.cb-dialog{padding:16px}.cb-dialog .btn,.cb-name{min-height:44px}.cb-roster-row{grid-template-columns:24px minmax(0,1fr);gap:8px}.cb-roster-row>div:last-child{grid-column:2}.cb-dialog input:not([type=checkbox]),.cb-dialog select{width:100%;min-height:44px;font-size:16px}.cb-student-row{flex-direction:column;align-items:flex-start;gap:4px}}.fee-management{min-width:0;max-width:1440px;margin:0 auto}.fm-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0;display:flex}.fm-toolbar>.field{flex:180px;min-width:0;margin:0}.fm-toolbar h2{flex:1;margin:0}.fm-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0 8px;display:grid}.fm-summary>div{border:1px solid var(--paper-line);background:var(--paper-card);border-radius:12px;gap:8px;padding:18px;display:grid}.fm-summary strong{color:var(--ink);font-size:28px}.fm-summary small{margin-left:6px;font-size:13px;font-weight:400}.fm-badge{border:1px solid var(--paper-line);border-radius:6px;padding:4px 8px;font-size:12px}.fm-badge.done{color:#285d3b;background:#eaf2ec}.fm-warning{color:#92400e}.fm-detail{border:1px solid var(--paper-line);background:var(--paper-card);border-radius:12px;margin-top:28px;padding:22px;scroll-margin-top:20px}.fm-detail>section{border-top:1px solid var(--paper-line);padding:18px 0}.fm-detail h3{margin:0 0 12px}.fm-progress{font-size:22px}.fm-rule{border-bottom:1px solid var(--paper-line);grid-template-columns:70px 1fr 1fr 80px auto;align-items:end;gap:8px;padding:10px 0;display:grid}.fm-rule .field{min-width:0;margin:0}.fm-rule input,.fm-rule select{width:100%;min-width:0}.fm-dialog{box-sizing:border-box;width:min(720px,100vw - 24px);max-height:90dvh}.fm-dialog form{min-width:0}.fm-dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.fm-dialog [role=alert]{color:#b91c1c}.fm-history{border-bottom:1px solid var(--paper-line);padding:8px 0}.fee-management button:focus-visible,.fm-dialog button:focus-visible{outline:2px solid var(--ink);outline-offset:3px}@media (width<=960px){.fm-rule{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.fm-summary{gap:6px}.fm-summary>div{padding:12px 8px}.fm-summary strong{font-size:24px}.fm-detail{padding:14px}.fm-rule{grid-template-columns:repeat(2,minmax(0,1fr))}.fm-dialog{padding:16px}.fm-toolbar>.btn{white-space:normal}}.fee-management .fm-detail{margin:0;scroll-margin-top:0}.fee-management .fm-summary{gap:8px;margin:14px 0 8px}.fee-management .fm-summary>div{background:0 0;gap:4px;padding:10px}.fee-management .fm-summary strong{font-size:20px}.fee-management .fm-detail>details,.fee-management .fm-detail summary{margin:12px 0}.fee-management .fm-detail summary{cursor:pointer;color:var(--ink);font-weight:600}.fee-management .teacher-coupon-student-picker{position:sticky;top:16px}.fee-management .teacher-coupon-student-list{align-content:start;max-height:calc(100dvh - 350px)}.fee-management .fm-detail h2{overflow-wrap:anywhere;font-size:19px}.fee-management .fm-progress{font-size:20px}@media (width<=960px){.fee-management .fm-toolbar>.field{flex-basis:100%}}@media (width<=600px){.fee-management .teacher-coupon-student-picker{position:static}.fee-management .teacher-coupon-student-list{max-height:calc(100dvh - 330px)}.fee-management:not(.fm-selected) #fm-panel,.fee-management.fm-selected .teacher-coupon-student-picker{display:none}.fee-management .fm-summary>div{padding:8px 6px}.fee-management .fm-summary span{font-size:12px}.fee-management .fm-student-header>.fm-toolbar h2{flex:1 0 100%;margin-bottom:4px}}.fm-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0;display:grid}.fm-facts div{min-width:0}.fm-facts dt{color:var(--ink-soft);font-size:12px}.fm-facts dd{overflow-wrap:anywhere;margin:4px 0}.fee-management .fm-cycle{border:1px solid var(--paper-line);background:var(--paper);border-radius:12px;margin:16px 0;padding:16px}.fm-cycle .fm-toolbar{justify-content:space-between;margin:0 0 12px}.fm-cycle h3{margin:0}.fm-slot-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;margin:16px 0;display:grid}.fm-slot{border:1px solid var(--paper-line);background:var(--paper-card);min-width:0;color:var(--ink);font:inherit;text-align:left;overflow-wrap:anywhere;border-radius:8px;flex-direction:column;gap:6px;padding:12px;font-size:13px;display:flex}button.fm-slot{cursor:pointer}button.fm-slot:hover{border-color:var(--ink-soft)}.fm-slot strong{font-size:14px}.fm-slot small{color:var(--ink-soft)}.fm-slot.is-current{border-color:var(--red);box-shadow:inset 3px 0 var(--red)}.fm-slot.is-done{background:#f1f6f2;border-color:#aac5b2}.fm-past{margin:20px 0}.fm-cycle-past{background:0 0}.fm-makeup-count{font-weight:600}.fm-current{min-width:0}.fm-past{overflow-anchor:none}.fee-management .fm-detail{background:0 0;border:0;padding:0}.fee-management #fm-panel.teacher-coupon-detail{box-shadow:none;background:0 0;border:0;padding:0}.fee-management .fm-course-actions{border-top:1px solid var(--paper-line);margin-top:16px;padding-top:12px}.fee-management .fm-next-summary{color:var(--ink-soft);overflow-wrap:anywhere;margin:10px 0 0;font-size:13px}.fee-management .fm-course-actions>.fm-toolbar{margin:0}.fee-management .fm-detail>.fm-current,.fee-management .fm-detail>.fm-unpaid,.fee-management .fm-detail>.fm-past{border:1px solid var(--paper-line);background:var(--paper-card);border-radius:12px;margin:20px 0;padding:20px}.fee-management .fm-current .fm-basic>.fm-toolbar{flex-wrap:wrap}.fee-management .fm-current .fm-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.fm-payment{border-bottom:1px solid var(--paper-line);grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:14px 0;display:grid}.fm-payment:last-child{border-bottom:0}.fm-payment>div{min-width:0}.fm-payment-course{overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.6}.fm-payment-actions{align-self:center}.fee-management .fm-payment-actions summary{color:var(--ink-soft);margin:8px 0 0;font-weight:400}.fm-payment-actions details>.meta{overflow-wrap:anywhere;max-width:260px;margin:8px 0;display:block}.fm-payment-toast{z-index:1000;box-sizing:border-box;color:#285d3b;pointer-events:none;background:#eaf2ec;border:1px solid #4b805b;border-radius:8px;gap:4px;max-width:calc(100vw - 32px);padding:12px 20px;transition:opacity .3s;display:grid;position:fixed;top:20px;right:20px;box-shadow:0 2px 8px #0001}.fm-payment-toast.is-leaving{opacity:0}@media (prefers-reduced-motion:reduce){.fm-payment-toast{transition:none}}.fm-payment-actions summary{font-size:12px}.fm-payment-editor{grid-column:1/-1}.fm-payment-editor:empty{display:none}.fm-payment-editor [role=alert]{color:#b91c1c}.fm-slot .fm-badge{align-self:flex-start}@media (width<=600px){.fee-management .fm-detail>.fm-current,.fee-management .fm-detail>.fm-unpaid,.fee-management .fm-detail>.fm-past{padding:14px}.fm-payment{grid-template-columns:minmax(0,1fr)}}.fee-management .fm-current-label{color:var(--ink-soft);margin:0 0 4px;font-size:13px;font-weight:400;line-height:1.5}.fee-management .fm-current .fm-basic>.fm-toolbar{align-items:center;gap:12px;margin:0 0 12px}.fee-management .fm-current .fm-basic h3{min-width:0;color:var(--ink);overflow-wrap:anywhere;flex:180px;margin:0;font-size:22px;font-weight:700;line-height:1.35}.fee-management .fm-current .fm-facts dt{color:var(--ink-soft);font-size:13px;font-weight:400;line-height:1.5}.fee-management .fm-current .fm-facts dd{color:var(--ink);margin:4px 0 0;font-size:15px;font-weight:500;line-height:1.5}.fee-management .fm-current>.fm-cycle{border:0;border-top:1px solid var(--paper-line);background:0 0;border-radius:0;margin:20px 0 0;padding:16px 0 0}.fee-management .fm-current>.fm-cycle>.fm-toolbar{align-items:center;margin:0 0 12px}.fee-management .fm-current>.fm-cycle h3{color:var(--ink);margin:0;font-size:18px;font-weight:600;line-height:1.5}@media (width<=600px){.fee-management .fm-current .fm-basic h3{font-size:20px}.fee-management .fm-current>.fm-cycle{margin-top:16px}}.fee-management .fm-past details{min-width:0;margin:8px 0}.fee-management .fm-past summary{overflow-wrap:anywhere;border-radius:8px;margin:0;padding:10px 10px 10px 28px;list-style:none;position:relative}.fee-management .fm-past summary::-webkit-details-marker{display:none}.fee-management .fm-past summary:before{content:"";border-bottom:2px solid;border-right:2px solid;width:6px;height:6px;position:absolute;top:16px;left:10px;transform:rotate(-45deg)}.fee-management .fm-past details[open]>summary:before{transform:rotate(45deg)}.fee-management .fm-past summary:hover{background:var(--paper)}.fee-management .fm-past summary:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.fm-archive-year{border-top:1px solid var(--paper-line);padding-top:8px}.fm-archive-month{border-left:1px solid var(--paper-line);padding-left:8px;margin-left:12px!important}.fm-archive-cycle{border:1px solid var(--paper-line);background:var(--paper-card);border-radius:8px}.fm-archive-cycle>summary{flex-direction:column;gap:5px;font-size:13px;display:flex;font-weight:400!important}.fm-archive-title{font-weight:600}.fm-archive-cycle>[data-archive-body]{padding:0 12px}@media (width<=600px){.fm-archive-month{padding-left:6px;margin-left:6px!important}.fm-archive-cycle>[data-archive-body]{padding:0 8px}.fm-facts{grid-template-columns:minmax(0,1fr)}.fm-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.fm-slot{padding:10px}.fee-management .fm-cycle{padding:12px}}@media (width<=360px){.fm-slot-grid{grid-template-columns:minmax(0,1fr)}}.fee-management .fm-current>.fm-cycle-weeks>.fm-slot-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;margin:16px 0}.fee-management .fm-current>.fm-cycle-weeks .fm-slot{justify-content:space-between}@media (width<=1100px){.fee-management .fm-current>.fm-cycle-weeks>.fm-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=360px){.fee-management .fm-current>.fm-cycle-weeks>.fm-slot-grid{grid-template-columns:minmax(0,1fr)}}.fee-management .fm-unpaid>h3{color:var(--ink);margin:0 0 12px;font-size:18px;font-weight:600}.fm-payment-toast small{font-size:12px}.fee-management .fm-student-header{border:1px solid var(--paper-line);background:var(--paper-card);border-radius:12px;padding:20px}.fee-management .fm-student-header>.fm-toolbar{margin:0 0 12px}.fee-management .fm-student-header h2{font-size:24px;font-weight:700}.fee-management .fm-student-header>.meta{color:var(--ink-soft);overflow-wrap:anywhere;margin:0}.fee-management .fm-current .fm-basic>.fm-toolbar{margin-bottom:4px}.fm-progress-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:12px 0;display:flex}.fm-progress-summary>span{color:var(--ink-soft);font-size:13px}.fm-progress-summary progress{accent-color:#4b805b;background:var(--paper-line);border:0;border-radius:8px;width:100%;height:8px;overflow:hidden}.fm-progress-summary progress::-webkit-progress-bar{background:var(--paper-line)}.fm-progress-summary progress::-webkit-progress-value{background:#4b805b;border-radius:8px}.fm-progress-summary progress::-moz-progress-bar{background:#4b805b}.fee-management .fm-current-payment{border-top:1px solid var(--paper-line);margin-top:12px;font-size:13px}.fee-management .fm-current-payment>summary{color:var(--ink-soft);font-weight:500}.fee-management .fm-makeup-count{color:#92400e;font-size:13px}@media (width<=600px){.fee-management .fm-student-header{padding:14px}.fee-management .fm-student-header h2{font-size:22px}.fee-management .fm-progress{font-size:18px}}.fee-management .fm-current>.fm-cycle{margin-top:16px;padding-top:12px}.fee-management .fm-current .fm-slot-grid{gap:8px;margin:10px 0}.fee-management .fm-current .fm-slot{gap:4px;padding:10px}.fee-management .fm-current>.fm-cycle-weeks>.fm-slot-grid{margin:10px 0}.fee-management .fm-current .fm-period{color:var(--ink-soft);margin:0 0 8px;font-size:13px}.fee-management .fm-current .fm-progress-summary{margin:8px 0 10px}.fee-management .fm-current .fm-facts{gap:10px;margin:10px 0}.fee-management .fm-unpaid>.hint{margin:0}.hwp-viewer-open{overflow:hidden}.hwp-viewer-overlay{z-index:10000;background:#e8eaed;display:none;position:fixed;inset:0}.hwp-viewer-overlay.open{display:block}.hwp-viewer-shell{font-family:var(--font-sans);flex-direction:column;width:100%;height:100%;display:flex;font-size:var(--text-body)!important;line-height:var(--leading-body)!important}.hwp-viewer-header{box-sizing:border-box;background:#fff;border-bottom:1px solid #d9dde3;justify-content:space-between;align-items:center;gap:20px;min-height:66px;padding:10px 20px;display:flex}.hwp-viewer-left{align-items:center;gap:14px;min-width:0;display:flex}.hwp-viewer-close,.hwp-page-button{font-family:var(--font-sans);color:#24272b;cursor:pointer;background:#fff;border:1px solid #d4d8de;border-radius:7px;padding:8px 12px;font-size:13px;font-weight:700;font-size:14px!important;font-weight:var(--weight-bold)!important;line-height:var(--leading-control)!important}.hwp-viewer-close:hover,.hwp-page-button:hover:not(:disabled){background:#f3f4f6}.hwp-page-button:disabled{opacity:.4;cursor:default}.hwp-viewer-title-wrap{min-width:0}.hwp-viewer-filename{text-overflow:ellipsis;white-space:nowrap;color:#22252a;max-width:520px;font-size:14px;font-weight:700;overflow:hidden;font-size:var(--text-list-title)!important;font-weight:var(--weight-bold)!important;line-height:var(--leading-control)!important}.hwp-viewer-status{color:#777d86;margin-top:2px;font-size:11.5px;font-size:var(--text-sm)!important;line-height:var(--leading-body)!important}.hwp-viewer-controls{flex-shrink:0;align-items:center;gap:10px;display:flex}.hwp-page-info{text-align:center;color:#60656d;min-width:70px;font-size:12.5px;font-weight:700;font-size:var(--text-sm)!important;font-weight:var(--weight-medium)!important;line-height:var(--leading-control)!important}.hwp-viewer-body{box-sizing:border-box;flex:1;padding:30px 20px 60px;overflow:auto}.hwp-page-container{background:#fff;width:fit-content;max-width:100%;margin:0 auto;box-shadow:0 3px 18px #00000024}.hwp-page-container svg{max-width:100%;height:auto;display:block}.hwp-viewer-loading,.hwp-viewer-error{box-sizing:border-box;text-align:center;color:#6d737c;background:#fff;border-radius:10px;width:min(520px,100% - 30px);margin:80px auto;padding:32px}.hwp-viewer-error strong{color:#25282d;margin-bottom:8px;display:block}.hwp-viewer-error p{margin:0;font-size:13px}@media (width<=600px){.hwp-viewer-header{padding:10px 12px}.hwp-viewer-filename{max-width:150px}.hwp-viewer-body{padding:16px 8px 40px}.hwp-page-button{padding:7px 8px}}
