.analysis-policy-panel>p,.analysis-policy-panel>.alert,.analysis-policy-panel>.mt-4{margin:20px 24px}
.analysis-policy-panel fieldset{min-width:0}
.analysis-policy-panel h3{font-size:19px}
.analysis-policy-panel h4{font-size:16px}
.analysis-policy-panel td{vertical-align:middle}
.analysis-policy-panel .panel-title{flex-wrap:wrap}
.lesson-time-observation{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding-top:12px;margin-top:12px;border-top:1px solid #e7ecf3;font-size:12px}
.lesson-time-observation small{color:#64748b}
.teacher-policy-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 20px;margin-bottom:20px;border:1px solid #dfe7f4;border-radius:12px;background:#fff}
.teacher-policy-info{display:flex;align-items:center;gap:12px;min-width:0}
.teacher-policy-info>div{min-width:0}.teacher-policy-info b{display:flex;align-items:center;gap:10px;font-size:13px}.teacher-policy-info p{margin:5px 0 0;color:#72819a;font-size:12px;overflow-wrap:anywhere}
.teacher-policy-icon{display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;border-radius:10px;color:#315dda;background:#eef3ff;font-size:21px}
.teacher-policy-bar>button{flex-shrink:0}
.policy-dialog{width:min(1040px,calc(100vw - 40px));max-width:1040px;height:min(880px,90dvh);display:flex;flex-direction:column;overflow:hidden}
.policy-dialog .dialog-header,.policy-dialog-footer{flex-shrink:0}
.policy-dialog-context{margin:8px 0 0;color:#72819a;font-size:12px}
.policy-dialog-body{overflow-y:auto;min-height:0;padding:24px;background:#f7f9fc;overscroll-behavior:contain}
.policy-trial-controls{display:flex;gap:12px;align-items:flex-end}.policy-trial-controls label{flex:1;min-width:0;font-size:12px;font-weight:600}.policy-trial-controls select{margin-top:7px;max-width:100%}.policy-trial-controls button{flex-shrink:0}
.policy-trial-note{margin:12px 0 20px;font-size:12px;line-height:1.7;color:#64748b}.policy-trial-note.draft{padding:10px 12px;background:#fff7e6;color:#946019;border-radius:8px}
.policy-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:25px}.policy-summary-grid>div{padding:18px;background:white;border:1px solid #e4eaf3;border-radius:10px}.policy-summary-grid small{display:block;color:#72819a;font-size:12px}.policy-summary-grid strong{display:block;margin-top:8px;color:#263d67;font-size:27px}.policy-summary-grid strong span{font-size:11px;font-weight:400;color:#72819a}
.policy-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.policy-section-heading h3{font-size:15px;font-weight:650;margin:0}.policy-section-heading small{color:#72819a;font-size:11px}
.policy-rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.policy-rule-card{padding:18px;background:white;border:1px solid #e4eaf3;border-radius:10px;min-width:0}.policy-rule-card.muted{background:#f1f4f8}.policy-rule-card header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.policy-rule-card h4{font-size:14px;font-weight:650;margin:3px 0;overflow-wrap:anywhere}.policy-rule-card>p{margin:12px 0;font-size:12px;line-height:1.8;color:#66758c;overflow-wrap:anywhere}
.policy-rule-count{flex-shrink:0;border-radius:6px;background:#edf4ff;color:#315dda;padding:5px 8px;font-size:11px;white-space:nowrap}.policy-rule-count.alert{background:#fff1e9;color:#ae521d;margin:0;border:0}.policy-rule-count.off{background:#e8edf3;color:#72819a}
.policy-parameters{margin:0;padding-top:8px;border-top:1px solid #eef1f6}.policy-parameters>div{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding-top:7px;font-size:11px}.policy-parameters dt{font-weight:400;color:#72819a;overflow-wrap:anywhere}.policy-parameters dd{margin:0;font-weight:650;color:#304669}
.policy-time-panel{margin-top:24px;padding:18px;background:white;border:1px solid #e4eaf3;border-radius:10px}.policy-time-panel>p{font-size:12px;color:#72819a;line-height:1.8}.policy-band-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.policy-band-grid>div{border-left:3px solid var(--band-color);background:#f8fafc;padding:10px 12px;overflow-wrap:anywhere}.policy-band-grid b{display:block;color:var(--band-color);font-size:13px}.policy-band-grid span,.policy-band-grid small{display:block;font-size:11px;line-height:1.7;margin-top:8px;color:#64748b}
.policy-dialog-footer{justify-content:space-between;gap:15px}.policy-dialog-footer>span{color:#72819a;font-size:11px}
.student-table-controls{flex-wrap:wrap;gap:10px}.student-table-controls .search-box{min-width:150px}.student-table-controls .analysis-filter{min-width:170px}
@media(max-width:760px){
 .sidebar{flex-wrap:wrap}
 .sidebar nav{flex-basis:100%;flex-wrap:wrap;min-width:0}
 .sidebar nav .nav-item{flex:1;min-width:65px;justify-content:center}
 .analysis-policy-panel>p,.analysis-policy-panel>.alert,.analysis-policy-panel>.mt-4{margin:16px}
 .teacher-policy-bar{padding:14px;gap:12px;flex-wrap:wrap}.teacher-policy-info{flex:1;min-width:170px}.teacher-policy-bar>button{margin-left:auto;font-size:12px}
 .policy-overlay{padding:8px}.policy-dialog{width:100%;height:calc(100dvh - 16px);max-height:calc(100dvh - 16px);border-radius:12px}.policy-dialog-body{padding:15px}.policy-dialog .dialog-header{padding:16px}
 .policy-trial-controls{flex-wrap:wrap}.policy-trial-controls label{flex-basis:100%}.policy-trial-controls button{margin-left:auto;padding:7px 12px;font-size:12px}
 .policy-summary-grid{gap:7px;margin-bottom:20px}.policy-summary-grid>div{padding:12px 9px}.policy-summary-grid small{font-size:10px}.policy-summary-grid strong{font-size:22px}.policy-summary-grid strong span{display:block;font-size:10px;margin-top:3px}
 .policy-rule-grid,.policy-band-grid{grid-template-columns:1fr}.policy-rule-card{padding:15px}.policy-section-heading{align-items:flex-start;flex-wrap:wrap;gap:6px}.policy-section-heading small{font-size:10px}.policy-dialog-footer>span{flex:1;line-height:1.6}.policy-dialog-footer{flex-wrap:nowrap;padding:12px 15px}
 .student-table-controls .analysis-filter{flex-basis:100%;min-width:0}.student-table-controls .search-box{min-width:0}
}
