.field-hint {font-size:.85rem;margin:6px 0 12px;color:#36596f;background:#edf5fa;padding:8px 12px;border-radius:8px}
.field-hint summary {cursor:pointer;font-weight:600}
.save-feedback {display:block;color:#36596f;white-space:normal;margin:5px 0}
.conflict-box {padding:12px;border:2px solid #c47c15;border-radius:8px;background:#fff7e6;overflow-wrap:anywhere}
.conflict-box button {display:block;margin:8px 0;padding:8px;white-space:normal}
.evidence-card {border:1px solid #b8cad7;border-top:4px solid #457794;border-radius:12px;padding:18px!important;background:#fff;box-shadow:0 5px 16px #23465a12;overflow-wrap:anywhere}
.evidence-card summary {font-weight:700;font-size:1.05rem;cursor:pointer}
.evidence-card p,.evidence-card div {line-height:1.8;white-space:pre-wrap}
.wf-step[role=button] {cursor:pointer}.wf-step.locked {cursor:not-allowed}
.wf-step.viewing {outline:2px solid #326887;outline-offset:-2px}
#currentStageBanner {position:sticky;top:0;z-index:5;background:#f1f7fb;padding:6px}
.wf-field textarea {min-height:90px;resize:vertical;line-height:1.6}
.table-wrap {max-width:100%;overflow-x:auto}.table-wrap td {min-width:150px}
.report-editor textarea {display:block;width:100%;box-sizing:border-box;margin:6px 0 16px;min-height:80px}
.report-editor label {display:block}.learning-history42 details {padding:12px;margin:10px 0;border:1px solid #dce4e9;border-radius:8px;overflow-wrap:anywhere}
#publishedFeedback42 {padding:20px;margin:16px 0}
@media(max-width:600px){.wf-head h1{font-size:1.5rem}.stage-title h2{font-size:1.25rem}.teacher-actions{flex-wrap:wrap}.report-controls select{width:100%;margin-bottom:10px}.wf-stage{padding:16px!important}}
@media print{.report-controls button,.report-editor textarea,.report-editor details,#reportJobs{display:none}details>*,details{display:block!important}.table-wrap{overflow:visible}table{width:100%;table-layout:fixed}td,th{overflow-wrap:anywhere;min-width:0!important}.conflict-box{display:none}}

.qr-zoom-trigger{cursor:zoom-in;border-radius:10px;transition:transform .18s ease,box-shadow .18s ease}.qr-zoom-trigger:hover,.qr-zoom-trigger:focus-visible{transform:scale(1.03);box-shadow:0 0 0 4px #2f708733;outline:2px solid #2f7087;outline-offset:3px}.student-qr-fullscreen{position:fixed;inset:0;z-index:5000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;background:rgba(4,13,18,.94);cursor:zoom-out;padding:24px;box-sizing:border-box}.student-qr-fullscreen.hidden{display:none}.student-qr-enlarged{display:block;width:min(86vw,86vh);height:min(86vw,86vh);max-width:900px;max-height:900px;object-fit:contain;background:#fff;padding:clamp(12px,2vw,28px);box-sizing:border-box;border-radius:18px;box-shadow:0 18px 70px #0008;image-rendering:pixelated}.student-qr-fullscreen p{margin:0;color:#fff;font-size:clamp(16px,2vw,24px);font-weight:700;letter-spacing:.05em}.qr-fullscreen-open{overflow:hidden}
.teacher-screen-lock42{position:fixed;right:clamp(14px,2vw,28px);bottom:clamp(14px,2vw,28px);z-index:5010;min-width:142px;box-shadow:0 10px 32px #10232d38;border:1px solid #2f708766}.teacher-screen-lock42.locked{background:#b45309;color:#fff;border-color:#92400e;box-shadow:0 12px 36px #78350f55}.teacher-screen-lock42:disabled{opacity:.75;cursor:wait}.teacher-screen-frozen42{position:fixed;width:100%;overflow:hidden;box-sizing:border-box}.teacher-screen-shield42{position:fixed;inset:0;z-index:5000;background:transparent;cursor:not-allowed;pointer-events:auto}.teacher-screen-shield42>div{position:fixed;top:14px;left:50%;transform:translateX(-50%);display:flex;gap:10px;align-items:center;max-width:calc(100vw - 32px);padding:10px 16px;border-radius:999px;background:#1f2937e8;color:#fff;box-shadow:0 8px 28px #0004;white-space:nowrap}.teacher-screen-shield42 span{font-size:13px;color:#e5e7eb}@media(max-width:600px){.teacher-screen-shield42>div{top:8px;display:grid;gap:2px;border-radius:14px;text-align:center;white-space:normal}.teacher-screen-lock42{right:12px;bottom:12px}}
