.practice-workbench,.course-companion{--practice-bg:#10100e;--practice-text:#e1e0cc;--practice-muted:#b5b4a7;--practice-line:#e1e0cc30;--practice-field:#080909;--practice-accent:#a51d2d;margin:36px 0 0;padding:clamp(20px,3vw,40px);border:1px solid var(--practice-line);border-radius:18px;background:var(--practice-bg);color:var(--practice-text);scroll-margin-top:100px}
.practice-workbench *,.course-companion *{box-sizing:border-box}
.practice-heading{display:block!important;margin:0 0 24px;padding:0!important;border:0!important;background:transparent!important}
.practice-eyebrow{font-size:11px!important;letter-spacing:.08em;color:var(--practice-muted)!important;margin-bottom:14px}
.practice-heading h2{font-size:clamp(25px,3vw,42px)!important;line-height:1.25;margin:0 0 16px!important;color:var(--practice-text)!important}
.practice-heading>p:last-child{max-width:950px;font-size:14px;line-height:1.85;color:var(--practice-muted)}
.practice-modes{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.practice-workbench :is(button,select,textarea),.practice-actions a{font:inherit;font-size:14px;line-height:1.6}
.practice-modes button,.practice-actions :is(button,a){min-height:44px;padding:10px 16px;border:1px solid var(--practice-line);border-radius:9px;background:transparent;color:var(--practice-text);cursor:pointer;text-decoration:none}
.practice-modes button[aria-pressed="true"],.practice-actions .practice-primary{background:var(--practice-accent);border-color:var(--practice-accent);color:#fff}
.practice-workbench :is(button,a,select,textarea,input,summary):focus-visible,.course-companion a:focus-visible{outline:2px solid #d55061;outline-offset:3px}
.practice-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}
.practice-step{min-width:0}
.practice-step h3,.practice-companion-grid h3{font-size:16px!important;line-height:1.5;margin:0 0 14px!important;color:var(--practice-text)}
.practice-step label{display:block;margin:0 0 8px;font-size:13px;color:var(--practice-muted)}
.practice-step :is(textarea,select){display:block;width:100%;min-width:0;max-width:100%;padding:12px;border:1px solid var(--practice-line);border-radius:9px;background:var(--practice-field);color:var(--practice-text)}
.practice-step textarea{resize:vertical;white-space:pre-wrap;overflow-wrap:anywhere}
.practice-step select{min-height:46px}
.practice-note{font-size:12px!important;line-height:1.8!important;color:var(--practice-muted)!important;margin:12px 0 0!important}
.practice-resource{display:inline-flex;align-items:center;min-height:44px;margin-top:12px!important;color:#eea4aa!important;font-size:14px!important;text-decoration:underline!important;text-underline-offset:4px}
.practice-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px}
.practice-actions a{display:inline-flex;align-items:center}
.practice-step ul,.practice-companion-grid :is(ul,ol){padding-left:20px;margin:14px 0 0;color:var(--practice-muted);font-size:14px;line-height:1.85}
.practice-step li,.practice-companion-grid li{margin-bottom:8px;overflow-wrap:anywhere}
.practice-example{margin-top:16px;border:1px solid var(--practice-line);border-radius:9px;padding:0 12px}
.practice-example summary{padding:12px 0;min-height:44px;cursor:pointer;font-size:14px;line-height:1.5;color:var(--practice-text)}
.practice-example pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;font-size:13px;line-height:1.85;margin:14px 0;color:var(--practice-text)}
.practice-checklist{padding:0!important;list-style:none}
.practice-checklist label{display:flex;align-items:flex-start;gap:10px;min-height:44px;margin:0;font-size:14px;line-height:1.85;cursor:pointer}
.practice-checklist input{flex:none;width:18px;height:18px;margin-top:5px;accent-color:var(--practice-accent)}
.practice-foundations ul{padding-left:20px;margin:0;font-size:14px;line-height:1.85}
.practice-foundations li{margin-bottom:18px;overflow-wrap:anywhere}
.practice-foundations li p{margin:0;color:var(--practice-muted)}
.practice-foundations a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px;color:var(--practice-text)}
[data-practice-status]{min-height:24px;font-size:13px;line-height:1.8;margin-top:10px;color:var(--practice-text)}
.practice-companion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.practice-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0!important}
html[data-theme="light"] :is(.practice-workbench,.course-companion){--practice-bg:#fff;--practice-text:#171719;--practice-muted:#55545a;--practice-line:#17171930;--practice-field:#f6f6f7;--practice-accent:#a51d2d}
html[data-theme="light"] .practice-resource{color:#8c1f2d!important}
@media(max-width:760px){.practice-grid,.practice-companion-grid{grid-template-columns:1fr;gap:26px}.practice-workbench,.course-companion{padding:20px 16px;margin-top:28px}.practice-modes button{flex:1 1 140px}.practice-actions :is(button,a){max-width:100%;white-space:normal}.practice-step textarea{font-size:14px}}
@media(prefers-reduced-motion:reduce){.practice-workbench *,.course-companion *{scroll-behavior:auto!important}}
