:root{--text:#2b2730;--text-muted:#5b5563;--text-h:#0c0a10;--bg:#fff;--bg-raised:#f6f5f3;--border:#d8d5dd;--code-bg:#f1efe9;--accent:#5b3bdb;--accent-contrast:#fff;--accent-bg:#5b3bdb14;--success:#1a7a3a;--success-bg:#e4f6e9;--error:#ab1f1f;--error-bg:#fbe8e8;--info-bg:#eef1fb;--focus-ring:#005fcc;--sans:"Trebuchet MS", "Segoe UI", system-ui, sans-serif;--mono:"Courier New", ui-monospace, Consolas, monospace;font:17px/1.5 var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#dcd9e3;--text-muted:#a8a3b3;--text-h:#f5f3f9;--bg:#17151c;--bg-raised:#221f29;--border:#3a3644;--code-bg:#1d1b24;--accent:#a98cff;--accent-contrast:#140c33;--accent-bg:#a98cff24;--success:#5fd98a;--success-bg:#113521;--error:#ff8a8a;--error-bg:#3a1414;--info-bg:#1f2740;--focus-ring:#7fb6ff}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}h1,h2,h3,h4{color:var(--text-h);font-weight:600;line-height:1.25}a{color:var(--accent)}:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important}}.page{max-width:1000px;margin:0 auto;padding:16px 20px 64px}pre,code,.evidence-card__content{font-family:var(--mono)}.app-header{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;padding:12px 0;display:flex}.app-header__home{color:var(--text-h);font-weight:700;text-decoration:none}.app-header__scenario{color:var(--text-muted)}.mode-badge{border:1px solid var(--border);border-radius:999px;margin-left:auto;padding:4px 10px;font-size:.85rem}.mode-badge--assessed{background:var(--error-bg);color:var(--error);border-color:var(--error)}.mode-badge--practice{background:var(--success-bg);color:var(--success);border-color:var(--success)}.stage-stepper ol{flex-wrap:wrap;gap:6px;margin:0 0 20px;padding:0;list-style:none;display:flex}.stage-stepper__button{border:1px solid var(--border);background:var(--bg-raised);color:var(--text-muted);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:.82rem;display:flex}.stage-stepper__button:disabled{opacity:.45;cursor:not-allowed}.stage-stepper__button--active{border-color:var(--accent);color:var(--text-h);background:var(--accent-bg)}.stage-stepper__button--done .stage-stepper__number{color:var(--success)}.stage-stepper__number{font-weight:700}.button{font:inherit;border:1px solid var(--accent);background:var(--accent);color:var(--accent-contrast);cursor:pointer;border-radius:8px;margin:12px 8px 12px 0;padding:10px 16px}.button:disabled{opacity:.4;cursor:not-allowed}.button--secondary{color:var(--accent);background:0 0}.button--danger{background:var(--error);border-color:var(--error);color:#fff}.button--small{margin:4px 4px 4px 0;padding:6px 10px;font-size:.85rem}.button--selected{outline:3px solid var(--focus-ring)}.choice-list{flex-direction:column;gap:8px;margin:0 0 16px;padding:0;list-style:none;display:flex}.choice{text-align:left;width:100%;font:inherit;border:1px solid var(--border);background:var(--bg-raised);color:var(--text);cursor:pointer;border-radius:8px;align-items:flex-start;gap:10px;padding:10px 14px;display:flex}.choice--selected{border-color:var(--accent);background:var(--accent-bg)}.choice--correct{border-color:var(--success);background:var(--success-bg)}.choice--incorrect{border-color:var(--error);background:var(--error-bg)}.choice__marker{flex-shrink:0}.feedback-banner{border:1px solid var(--border);border-radius:8px;align-items:flex-start;gap:8px;margin:8px 0;padding:10px 14px;display:flex}.feedback-banner--correct{background:var(--success-bg);border-color:var(--success);color:var(--success)}.feedback-banner--incorrect{background:var(--error-bg);border-color:var(--error);color:var(--error)}.feedback-banner--partial,.feedback-banner--info{background:var(--info-bg);border-color:var(--accent);color:var(--text)}.feedback-banner__word{font-weight:700}.evidence-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin:12px 0;display:grid}.evidence-grid--compact{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.evidence-card{border:1px solid var(--border);background:var(--bg-raised);border-radius:8px;padding:10px 12px}.evidence-card--unavailable{opacity:.55}.evidence-card--selected{border-color:var(--accent);background:var(--accent-bg)}.evidence-card__header{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.evidence-card__source{font-weight:700}.evidence-card__kind{text-transform:uppercase;color:var(--text-muted);font-size:.75rem}.evidence-card__content{white-space:pre-wrap;background:var(--code-bg);border-radius:6px;margin:8px 0;padding:8px 10px;font-size:.85rem}.evidence-card__relevance{color:var(--text-muted);font-size:.9rem}.evidence-drawer{background:var(--bg);border-top:1px solid var(--border);margin-top:24px;padding-top:8px;position:sticky;bottom:0}.free-text__input{width:100%;font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:6px;padding:8px}.free-text__concepts{padding:0;list-style:none}.concept--found{color:var(--success)}.concept--missing{color:var(--text-muted)}.model-answer__columns{grid-template-columns:1fr 1fr;gap:16px;margin:8px 0;display:grid}@media (width<=720px){.model-answer__columns{grid-template-columns:1fr}}.model-answer__rating-buttons{flex-wrap:wrap;gap:8px;display:flex}.dialog-overlay{z-index:50;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog{background:var(--bg);border:1px solid var(--border);border-radius:10px;max-width:420px;padding:20px}.dialog__actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.stage{margin-bottom:24px}.ticket{background:var(--bg-raised);border:1px solid var(--border);border-radius:8px;margin-bottom:16px;padding:12px 16px}.ticket__ref{margin-bottom:8px;font-weight:700}.problem-statement{background:var(--accent-bg);border-radius:8px;padding:12px 16px}.problem-statement__text{font-size:1.1rem;font-weight:600}.factor-row,.criterion-row{border-bottom:1px solid var(--border);padding:12px 0}.badge{background:var(--accent-bg);color:var(--accent);border-radius:999px;margin-left:8px;padding:2px 8px;font-size:.75rem;display:inline-block}.why-step__statement{padding:10px 0;font-size:1.15rem;font-weight:600}.why-chain__completed{flex-direction:column;gap:10px;margin-bottom:16px;padding:0;list-style:none;display:flex}.why-chain__card{border:1px solid var(--border);background:var(--bg-raised);border-radius:8px;padding:10px 14px}.fault-tree__svg{width:100%;max-width:100%;height:auto;margin:16px 0}.tree-node__box{fill:var(--bg-raised);stroke:var(--border);stroke-width:1.5px}.tree-node--confirmed .tree-node__box{fill:var(--success-bg);stroke:var(--success)}.tree-node--ruledOut .tree-node__box{fill:var(--bg);stroke:var(--border);opacity:.5}.tree-node__label{font:12px var(--sans);color:var(--text);text-align:center;justify-content:center;align-items:center;height:100%;display:flex}.fault-tree__edge line{stroke:var(--border);stroke-width:1.5px}.fault-tree__gate-label{font:11px var(--sans);fill:var(--text-muted)}.trace-pass__nodes{flex-wrap:wrap;gap:8px;padding:0;list-style:none;display:flex}.timeline-list{flex-direction:column;gap:6px;padding:0;list-style:none;display:flex}.timeline-list__item{border:1px solid var(--border);background:var(--bg-raised);border-radius:6px;align-items:center;gap:10px;padding:8px 10px;display:flex}.timeline-list__timestamp{font-family:var(--mono);color:var(--text-muted);white-space:nowrap}.timeline-list__text{flex:1}.student-details input{font:inherit;border:1px solid var(--border);border-radius:6px;margin:0 16px 16px 0;padding:6px 10px}.scenario-list{padding:0;list-style:none}.scenario-list__item{border:1px solid var(--border);border-radius:10px;margin-bottom:14px;padding:16px}.scenario-list__meta{color:var(--text-muted);font-size:.9rem}.scenario-list__mode-picker label{margin-right:16px}.score-panel{gap:10px;font-weight:600;display:flex}.report-section{margin-bottom:20px}.rca-report__meta{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin:12px 0 24px;display:grid}.rca-report__meta div{border:1px solid var(--border);border-radius:6px;padding:6px 10px}.rca-report__meta dt{color:var(--text-muted);text-transform:uppercase;font-size:.75rem}.marking-table{border-collapse:collapse;width:100%}.marking-table th,.marking-table td{border:1px solid var(--border);text-align:left;padding:6px 10px}.marking-table__total{margin-top:8px;font-weight:700}@media print{.no-print,.app-header,.stage-stepper,.evidence-drawer,.button{display:none!important}body{color:#000;background:#fff}.fault-tree__svg{page-break-inside:avoid;max-width:100%}.report-section{page-break-inside:avoid}}
