.teaching-report-page{max-width:820px;margin-inline:auto;min-width:0;color:var(--lm-ink);--lm-border:var(--line);--lm-surface:var(--paper);--lm-text:var(--lm-ink)}
.teaching-report-page *{box-sizing:border-box;min-width:0;overflow-wrap:anywhere}
.teaching-report-page h1{font-size:clamp(24px,4vw,32px);margin:0 0 12px;font-weight:700}
.teaching-report-page h2{font-size:20px;margin:0 0 14px}.teaching-report-page h3{font-size:17px;margin:0 0 12px}
.report-heading{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;margin-bottom:22px}
.report-heading p,.report-help{color:var(--lm-muted);font-size:14px;line-height:1.7;margin:4px 0 0}
.report-card,.report-form,.report-empty{background:var(--lm-surface,#fff);border:1px solid var(--lm-border);border-radius:14px;padding:clamp(16px,3vw,24px);margin:0 0 18px}
.report-card-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}
.report-card-header h2{margin:0;font-size:18px}.report-state{font-size:12px;background:var(--lm-mint);color:var(--lm-green-dark);padding:6px 10px;border-radius:20px}
.report-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px 20px;margin:0}
.report-fields div{padding-bottom:9px;border-bottom:1px solid var(--lm-border)}.report-fields dt{color:var(--lm-muted);font-size:12px;margin-bottom:4px}.report-fields dd{margin:0;font-size:16px}
.report-total{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin:16px 0;padding:16px;background:var(--lm-mint);border-radius:10px}.report-total b{font-size:clamp(22px,4vw,28px)}
.report-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.report-actions .btn{min-height:44px}
.report-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px;margin:16px 0}
.report-form label{display:block;font-size:14px;font-weight:600;margin-bottom:7px}.report-required{color:var(--lm-coral);font-size:12px;margin-left:8px}
.report-form input,.report-form select,.report-form textarea{width:100%;font:inherit;font-size:16px;color:var(--lm-text);border:1px solid var(--lm-border);border-radius:9px;background:var(--lm-surface,#fff);min-height:46px;padding:11px}
.report-form textarea{min-height:88px;resize:vertical}.report-form input[type=date]:not(.has-value){color:var(--lm-muted)}
.report-form .report-output{padding:12px 0;font-weight:600}.report-form .report-status,.report-status{font-size:14px;line-height:1.6}
.report-changed,.report-form .report-changed input,.report-form .report-changed select{color:var(--lm-coral)}
.report-before{display:block;font-size:12px;color:var(--lm-muted);margin-top:5px}.report-dirty{color:var(--lm-muted);font-size:13px;margin-top:10px}
.report-survey-field{margin:0 0 18px}.report-survey-field:last-of-type{margin-bottom:0}.report-feedback{margin-top:18px;padding-top:18px;border-top:1px solid var(--lm-border)}
.report-feedback p{white-space:pre-wrap;line-height:1.7;font-size:14px}.report-feedback dt{font-size:13px;color:var(--lm-muted)}.report-feedback dd{margin:4px 0 14px;white-space:pre-wrap;font-size:14px}
.report-chat-message{background:var(--lm-mint);padding:14px;border-radius:12px;margin:12px 0}.report-chat-message.mine{background:var(--lm-surface,#fff);border:1px solid var(--lm-border)}
.report-chat-message header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:12px;color:var(--lm-muted)}.report-chat-message p{white-space:pre-wrap;font-size:15px;line-height:1.7;margin:8px 0 0}
.report-notice{margin:0 0 18px;white-space:pre-wrap}.report-empty p{line-height:1.7;color:var(--lm-muted)}
.report-lesson-select{width:100%;min-height:46px;font:inherit;font-size:16px;margin-top:8px;border:1px solid var(--lm-border);border-radius:9px;padding:11px;background:var(--lm-surface,#fff);color:var(--lm-text)}

.report-batch-row{padding:1rem 0;border-bottom:1px solid var(--line)}.report-batch-choice{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem;min-height:44px;cursor:pointer}.report-batch-choice input,.report-batch-select-all input{width:20px;min-height:20px;flex:0 0 auto}.report-batch-choice>span{flex:1 1 10rem;min-width:0}.report-batch-choice>span>span{display:block;font-size:.85rem;color:var(--lm-muted);margin-top:.25rem}.report-batch-choice strong{font-size:1.1rem}.report-batch-row details{margin-top:.5rem}.report-batch-row summary,.report-form summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:600}.report-batch-select-all{display:flex;align-items:center;gap:.5rem;min-height:44px}.report-batch-row .report-total{margin:.7rem 0}#reportBatch input[type=month]{font-size:16px;min-height:44px;max-width:100%}#reportBatch [data-batch-pager]{align-items:center}.report-form details{margin:1rem 0}
