#visit-workbench { max-width: 960px; }
.practice-notice { color: var(--sh-text-2); margin-bottom: 20px; }
.practice-toolbar { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; margin: 20px 0; }
.practice-toolbar select { flex: 1; min-width: 180px; max-width: 100%; padding: 10px; color: var(--sh-text); background: var(--sh-surface); border: 1px solid var(--sh-border); border-radius: 6px; }
.practice-tabs { display: flex; border-bottom: 1px solid var(--sh-border); margin-bottom: 20px; }
.practice-tabs button { flex: 1; border: 0; border-bottom: 3px solid transparent; background: transparent; color: var(--sh-text-2); padding: 14px 8px; font: inherit; cursor: pointer; }
.practice-tabs [aria-selected="true"] { border-bottom-color: var(--sh-success); color: var(--sh-text); font-weight: 600; }
.practice-progress { display: flex; gap: 20px; align-items: center; margin-bottom: 16px; }
.practice-progress progress { flex: 1; min-width: 60px; height: 12px; accent-color: var(--sh-success); }
.practice-check { display: flex; gap: 14px; align-items: start; padding: 16px 0; border-bottom: 1px solid var(--sh-border); cursor: pointer; }
.practice-check input { width: 20px; height: 20px; flex: 0 0 20px; margin-top: 2px; accent-color: var(--sh-success); }
#checklist-reset { margin-top: 20px; }
.practice-case { padding: 18px 0; border-bottom: 1px solid var(--sh-border); margin-bottom: 20px; }
#visit-workbench h2 { font-size: 20px; margin: 12px 0; letter-spacing: 0; }
#draft-choices fieldset { border: 0; border-bottom: 1px solid var(--sh-border); padding: 16px 0; min-width: 0; }
#draft-choices legend { font-weight: 600; }
.practice-option { display: flex; gap: 12px; align-items: start; padding: 10px 0; cursor: pointer; }
.practice-option input { flex: 0 0 18px; width: 18px; height: 18px; margin-top: 3px; }
#draft-message { margin: 12px 0; }
#draft-result { border-top: 2px solid var(--sh-success); padding-top: 16px; }
#draft-result p { margin: 12px 0; white-space: pre-line; }
#draft-feedback { padding-left: 22px; }
#draft-feedback li { margin: 10px 0; }
#practice-evidence { padding-left: 22px; }
#practice-evidence li { margin: 10px 0; }
#practice-objective { color: var(--sh-text-2); margin-bottom: 12px; }
#visit-workbench h3 { font-size: 16px; margin: 16px 0 8px; }
#draft-feedback > li { border-bottom: 1px solid var(--sh-border); padding-bottom: 16px; }
#draft-result details { margin: 20px 0; }
.practice-examples { margin-top: 40px; border-top: 1px solid var(--sh-border); padding-top: 20px; }
#visit-workbench button:focus-visible, #visit-workbench input:focus-visible, #visit-workbench select:focus-visible, #visit-workbench summary:focus-visible { outline: 3px solid var(--sh-accent); outline-offset: 4px; }
#visit-workbench [hidden] { display: none !important; }
#visit-workbench { overflow-wrap: anywhere; }
@media (max-width: 520px) { .practice-toolbar select { flex-basis: 100%; } .practice-progress { gap: 12px; } }
@media print {
  .sidebar, .app-footer, .skip-link, .practice-tabs, .practice-examples, #visit-workbench button { display: none !important; }
  .app-layout, .main-content { display: block !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
  #visit-workbench { color: black; background: white; }
  .practice-check, fieldset, .practice-case { break-inside: avoid; }
}
