.dr-table-wrap{margin:var(--dr-sp-3) 0;overflow-x:auto}.dr-table-wrap:focus-visible{box-shadow:var(--dr-focus-ring);border-radius:var(--dr-radius);outline:none}.dr-table-wrap--flush{margin:0}.dr-table{border-collapse:collapse;font-family:var(--dr-font-mono);font-size:var(--dr-fs-sm);min-width:40%}.dr-table th,.dr-table td{border-bottom:1px solid var(--dr-line);padding:var(--dr-sp-1) var(--dr-sp-3);text-align:left;white-space:nowrap}.dr-table th{color:var(--dr-fg-2);letter-spacing:.06em;text-transform:uppercase;font-weight:400;font-size:var(--dr-fs-xs);border-bottom-color:var(--dr-line-strong)}.dr-table td.is-num,.dr-table th.is-num,.dr-table .is-right{text-align:right;font-variant-numeric:tabular-nums}.dr-table .is-center{text-align:center}.dr-table tbody tr:last-child td{border-bottom:0}.dr-richtext blockquote{margin:var(--dr-sp-2) 0;padding-left:var(--dr-sp-3);border-left:2px solid var(--dr-line-strong);color:var(--dr-fg-1)}.dr-richtext ul,.dr-richtext ol{margin:0 0 .75em;padding-left:1.4em}.dr-answer{margin:var(--dr-sp-3) 0}.dr-rubric__item{gap:0 var(--dr-sp-2);margin:var(--dr-sp-1) 0;grid-template-columns:1.4em 1fr;align-items:baseline;display:grid}.dr-rubric__mark{font-family:var(--dr-font-mono)}.dr-rubric__label{color:var(--dr-fg-0)}.dr-rubric__feedback{font-family:var(--dr-font-ui);font-size:var(--dr-fs-sm);color:var(--dr-fg-1);letter-spacing:0;grid-column:2}.dr-rubric__item.is-optional .dr-rubric__label{color:var(--dr-fg-2)}.dr-forbidden{margin:var(--dr-sp-2) 0 0;padding:0;list-style:none}.dr-forbidden__item{border-left:2px solid var(--dr-alert);padding:var(--dr-sp-1) var(--dr-sp-3);margin:var(--dr-sp-1) 0;font-size:var(--dr-fs-sm);color:var(--dr-fg-1)}.dr-forbidden__label{font-family:var(--dr-font-mono);font-size:var(--dr-fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--dr-alert);margin-right:var(--dr-sp-2)}.dr-result__score{font-family:var(--dr-font-mono);font-size:var(--dr-fs-xs);color:var(--dr-fg-2);margin-left:var(--dr-sp-2);letter-spacing:.06em}.dr-drill__progress{align-items:center;gap:var(--dr-sp-3);font-family:var(--dr-font-mono);font-size:var(--dr-fs-xs);letter-spacing:.08em;color:var(--dr-fg-2);margin-bottom:var(--dr-sp-4);text-transform:uppercase;display:flex}.dr-drill__progress-track{background:var(--dr-bg-3);border-radius:2px;flex:1;max-width:240px;height:4px;overflow:hidden}.dr-drill__progress-fill{background:var(--dr-phosphor);height:100%;transition:width var(--dr-dur) var(--dr-ease)}.dr-drill__progress.is-complete{color:var(--dr-phosphor)}.dr-drill__item-head{justify-content:space-between;gap:var(--dr-sp-3);font-family:var(--dr-font-mono);font-size:var(--dr-fs-xs);letter-spacing:.08em;color:var(--dr-fg-2);text-transform:uppercase;margin-bottom:var(--dr-sp-2);display:flex}.dr-drill__item-state{color:var(--dr-fg-2)}.dr-drill__item.is-correct .dr-drill__item-state{color:var(--dr-phosphor)}.dr-drill__item.is-wrong .dr-drill__item-state{color:var(--dr-alert)}.dr-hints{margin:var(--dr-sp-3) 0 0;color:var(--dr-fg-1);font-size:var(--dr-fs-sm);border-left:2px solid var(--dr-amber-dim);padding:0 0 0 1.2em;list-style:none}.dr-hints:empty{display:none}.dr-hints__item{padding:var(--dr-sp-1) 0 var(--dr-sp-1) var(--dr-sp-3);position:relative}.dr-hints__tag{font-family:var(--dr-font-mono);font-size:var(--dr-fs-xs);letter-spacing:.08em;color:var(--dr-amber);margin-right:var(--dr-sp-2)}.dr-hints__item .dr-richtext{display:inline}.dr-hints__item .dr-richtext p{margin:0;display:inline}.dr-reveal{margin-top:var(--dr-sp-3);padding:var(--dr-sp-2) var(--dr-sp-3);border:1px solid var(--dr-cyan);border-radius:var(--dr-radius);font-family:var(--dr-font-mono);font-size:var(--dr-fs-sm);color:var(--dr-cyan);background:var(--dr-bg-0);gap:var(--dr-sp-3);align-items:baseline;max-width:100%;display:inline-flex}.dr-reveal__tag{font-size:var(--dr-fs-xs);letter-spacing:.1em;color:var(--dr-fg-2)}.dr-reveal .dr-richtext{color:var(--dr-cyan);display:inline}.dr-reveal .dr-richtext p{margin:0;display:inline}.dr-drill__dataset{margin-bottom:var(--dr-sp-3)}.dr-drill__dataset .dr-panel{margin:0 0 var(--dr-sp-3)}.dr-btn--warn{border-color:var(--dr-amber-dim);color:var(--dr-amber)}.dr-btn--warn:hover:not(:disabled){border-color:var(--dr-amber)}.dr-btn--sensor{border-color:var(--dr-cyan);color:var(--dr-cyan)}.dr-btn:focus-visible,.dr-input:focus-visible,.dr-choice:focus-within{outline:2px solid var(--dr-focus);outline-offset:2px}.dr-checkpoint__meta{gap:var(--dr-sp-4);font-family:var(--dr-font-mono);font-size:var(--dr-fs-xs);letter-spacing:.08em;color:var(--dr-fg-2);text-transform:uppercase;margin:var(--dr-sp-3) 0;flex-wrap:wrap;display:flex}.dr-checkpoint__meta strong{color:var(--dr-fg-0);font-weight:400}.dr-checkpoint__progress{z-index:2;align-items:center;gap:var(--dr-sp-3);padding:var(--dr-sp-2) 0;margin-bottom:var(--dr-sp-4);background:var(--dr-bg-1);border-bottom:1px solid var(--dr-line);font-family:var(--dr-font-mono);font-size:var(--dr-fs-xs);letter-spacing:.08em;color:var(--dr-fg-2);text-transform:uppercase;display:flex;position:sticky;top:0}.dr-checkpoint__bar{background:var(--dr-bg-3);border-radius:2px;flex:1;height:4px;overflow:hidden}.dr-checkpoint__bar-fill{background:var(--dr-cyan);height:100%;transition:width var(--dr-dur) var(--dr-ease)}.dr-checkpoint__item-head{justify-content:space-between;gap:var(--dr-sp-3);font-family:var(--dr-font-mono);font-size:var(--dr-fs-xs);letter-spacing:.08em;color:var(--dr-fg-2);text-transform:uppercase;margin-bottom:var(--dr-sp-2);display:flex}.dr-checkpoint__item-head h3{font:inherit;color:var(--dr-fg-1);margin:0}.dr-checkpoint__item.is-answered .dr-checkpoint__item-head h3{color:var(--dr-fg-0)}.dr-checkpoint__item-state{color:var(--dr-fg-2)}.dr-checkpoint__item.is-correct .dr-checkpoint__item-state{color:var(--dr-phosphor)}.dr-checkpoint__item.is-wrong .dr-checkpoint__item-state{color:var(--dr-alert)}.dr-checkpoint__actions{gap:var(--dr-sp-2);margin-top:var(--dr-sp-5);flex-wrap:wrap;align-items:center;display:flex}.dr-checkpoint__confirm{margin-top:var(--dr-sp-3);padding:var(--dr-sp-3);border:1px solid var(--dr-amber-dim);border-radius:var(--dr-radius);color:var(--dr-amber);font-family:var(--dr-font-mono);font-size:var(--dr-fs-sm);gap:var(--dr-sp-3);flex-wrap:wrap;align-items:center;display:flex}.dr-checkpoint__outcome{margin-top:var(--dr-sp-5);border-top:1px solid var(--dr-line);padding-top:var(--dr-sp-4)}.dr-checkpoint__score.is-fail{color:var(--dr-alert)}.dr-checkpoint__score-detail{font-family:var(--dr-font-mono);font-size:var(--dr-fs-xs);letter-spacing:.08em;color:var(--dr-fg-2);margin-bottom:var(--dr-sp-3)}.dr-checkpoint__missed{margin:var(--dr-sp-3) 0;gap:var(--dr-sp-2);flex-direction:column;padding:0;list-style:none;display:flex}.dr-checkpoint__missed-item{border:1px solid var(--dr-line);border-left:2px solid var(--dr-alert);border-radius:var(--dr-radius);padding:var(--dr-sp-2) var(--dr-sp-3);font-size:var(--dr-fs-sm)}.dr-checkpoint__missed-head{font-family:var(--dr-font-mono);font-size:var(--dr-fs-xs);letter-spacing:.08em;color:var(--dr-fg-2);text-transform:uppercase;gap:var(--dr-sp-3);flex-wrap:wrap;display:flex}.dr-checkpoint__missed-head a{color:var(--dr-cyan)}.dr-checkpoint__missed-links{gap:var(--dr-sp-2);margin-top:var(--dr-sp-1);flex-wrap:wrap;display:flex}.dr-checkpoint__missed-links a{font-family:var(--dr-font-mono);font-size:var(--dr-fs-xs);letter-spacing:.06em;color:var(--dr-cyan);border:1px solid var(--dr-line-strong);border-radius:var(--dr-radius);padding:2px var(--dr-sp-2);text-decoration:none}.dr-checkpoint__missed-links a:hover{border-color:var(--dr-cyan)}.dr-checkpoint__missed-debrief{margin-top:var(--dr-sp-2);color:var(--dr-fg-1)}.dr-checkpoint__resume{margin:var(--dr-sp-3) 0;font-family:var(--dr-font-mono);font-size:var(--dr-fs-xs);letter-spacing:.08em;color:var(--dr-amber);text-transform:uppercase}.dr-checkpoint__answer-key{margin-top:var(--dr-sp-2);font-family:var(--dr-font-mono);font-size:var(--dr-fs-xs);color:var(--dr-cyan);letter-spacing:.06em}.dr-beat__consult{margin-top:var(--dr-sp-3);padding:var(--dr-sp-3);border-left:2px solid var(--dr-cyan);background:var(--dr-bg-2);font-size:var(--dr-fs-sm)}.dr-beat__consult-tag{font-family:var(--dr-font-mono);font-size:var(--dr-fs-xs);letter-spacing:.08em;color:var(--dr-cyan);margin-bottom:var(--dr-sp-1);text-transform:uppercase}
