.manual-lab{margin:18px 0;padding:18px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(145deg,#f8f1f3,#eee5de)}
.manual-lab h3{margin:5px 0 8px;font:600 28px var(--display)}
.manual-lab p{color:var(--muted)}
.manual-lab-controls{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}
.manual-lab-controls button{min-height:44px;padding:9px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font-weight:800;cursor:pointer}
.manual-lab-controls button[aria-pressed=true]{background:var(--plum);border-color:var(--plum);color:#fff}
.manual-lab-result{min-height:76px;margin-top:12px;padding:14px;border-left:3px solid var(--rust);background:rgba(255,255,255,.58);font-family:var(--serif);font-size:18px;line-height:1.5}
.lab-sentence span{padding:2px 4px;border-radius:4px;transition:.2s}
.lab-sentence [data-part].active{background:#e7b9cb;color:#4e2638}
.lab-time-line{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin-top:10px}
.lab-time-line i{height:8px;border-radius:999px;background:var(--line)}
.lab-time-line i.active{background:var(--plum)}
.manual-self-review{display:grid;gap:8px;margin-top:14px;padding:14px;border:1px solid var(--line);border-radius:9px;text-align:left}
.manual-self-review label{display:flex;align-items:center;gap:9px;color:var(--ink)}
.prerequisite-warning{border-color:#d2a263;background:#fff4dc}
.prerequisite-warning a{font-weight:800;color:var(--plum)}
.mode-group button:disabled{opacity:.45;cursor:not-allowed}
.exam-report ul{max-width:620px;margin:20px auto;padding:0;list-style:none;text-align:left}
.exam-report li{padding:9px 0;border-bottom:1px solid var(--line)}
@media(max-width:650px){.manual-lab-controls{display:grid}.manual-lab-controls button{width:100%}.lab-time-line{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.manual-lab *{transition:none!important;animation:none!important}}
