/* V28 — Không gian làm việc thân thiện cho giáo viên */
.v28-tools{display:flex;flex-wrap:wrap;gap:7px;align-items:center;padding:8px 10px;margin:0 0 10px;border:1px solid #bcd2e2;border-radius:12px;background:#f5faff}.v28-tools strong{margin-right:auto}.v28-tools button{white-space:normal}.v28-save-state{font-size:.78rem;color:#43708c}
.v28-dialog{width:min(1080px,calc(100vw - 24px));max-height:90vh;border:0;border-radius:16px;padding:22px;color:#123252;box-shadow:0 22px 70px #09233c55}.v28-dialog::backdrop{background:#0b223d80}.v28-dialog h2{margin:0 42px 10px 0}.v28-dialog textarea{width:100%;box-sizing:border-box;border:1px solid #a9bfd2;border-radius:8px;padding:10px;font:inherit;line-height:1.45}
.v28-section,.v28-flow{margin:9px 0;border:1px solid #cedce7;border-radius:10px;padding:8px 12px}.v28-section summary,.v28-flow summary{font-weight:800;cursor:pointer}.v28-flow fieldset{margin:12px 0;border:1px solid #d6e1e9;border-radius:9px}.v28-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.v28-grid label{font-weight:700}.v28-note{padding:9px;background:#fff8e8;border-radius:7px}
.v28-diff-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.v28-diff pre{max-height:260px;overflow:auto;white-space:pre-wrap;background:#f6f8fa;padding:10px;border-radius:8px;font-size:.78rem}.v28-actions{position:sticky;bottom:-22px;display:flex;justify-content:flex-end;gap:8px;margin:16px -22px -22px;padding:12px 22px;background:#fff;border-top:1px solid #d5e0e8}
.v28-ai-review article{border:1px solid #c9d9e4;border-radius:9px;margin:8px 0;padding:10px}.v28-ai-review p{white-space:pre-wrap}.v28-preflight{list-style:none;padding:0}.v28-preflight li{display:flex;justify-content:space-between;gap:12px;margin:7px 0;padding:10px;border-radius:8px}.v28-preflight .pass{background:#edf9f1;color:#176138}.v28-preflight .review{background:#fff4e5;color:#8a5100}
.v28-welcome-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.v28-welcome-steps article{padding:14px;border-radius:10px;background:#eff7fc}.v28-welcome-steps b{display:block;margin-bottom:5px;color:#0c668d}body.v28-large{font-size:18px}body.v28-large input,body.v28-large select,body.v28-large textarea,body.v28-large button{font-size:1rem}
@media(max-width:800px){.v28-grid,.v28-diff-grid,.v28-welcome-steps{grid-template-columns:1fr}.v28-dialog{padding:16px}.v28-actions{margin:14px -16px -16px;bottom:-16px;padding:10px 16px;flex-wrap:wrap}}