@scope (.open-practice) {

:root{color-scheme:light;--ink:#202c40;--muted:#64748b;--accent:#285bb2;--line:#dce3ed}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:160px}body{margin:0;background:#f3f5f9;color:var(--ink);font:16px/1.65 "Segoe UI",Arial,sans-serif}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}a{color:var(--accent)}header{background:#fff;border-bottom:1px solid var(--line)}.hero{max-width:1020px;margin:auto;padding:34px 24px 22px}.eyebrow{font-size:12px;letter-spacing:.16em;color:var(--accent);font-weight:700}h1{font-size:36px;line-height:1.2;margin:10px 0 14px}.intro{margin:0;color:var(--muted)}.toolbar{position:sticky;top:0;background:#fff;z-index:5;border-bottom:1px solid var(--line)}.bar{max-width:1020px;margin:auto;padding:13px 24px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.tabs{display:flex;padding:4px;gap:4px;border-radius:10px;background:#f0f3f8}.tab{border:0;padding:8px 16px;border-radius:7px;background:transparent;color:var(--muted);font-weight:600}.tab[aria-selected=true]{background:var(--accent);color:#fff}.difficulty{margin-left:auto;font-size:14px}.difficulty strong{font-size:21px;margin-left:5px}.tool{border:1px solid var(--line);background:white;border-radius:8px;padding:8px 12px;font-size:14px;color:var(--ink)}.tool:hover{background:#f3f6fb}.layout{max-width:1020px;margin:24px auto;padding:0 24px}.jump{display:flex;gap:6px;flex-wrap:wrap;margin:18px 0}.jump a{background:white;border:1px solid var(--line);border-radius:6px;text-decoration:none;width:34px;text-align:center;padding:3px 0;font-size:13px}.notice{font-size:13px;color:var(--muted);margin:0 0 20px}.task{background:white;border:1px solid var(--line);border-radius:14px;padding:25px 28px;margin-bottom:18px;break-inside:avoid}.task-head{display:flex;align-items:center;gap:12px;margin-bottom:15px}.number{background:#eef3fc;color:var(--accent);font-size:20px;font-weight:700;min-width:40px;text-align:center;padding:2px 6px;border-radius:7px}.format{font-size:13px;color:var(--muted)}.problem{font-size:18px;line-height:1.65;white-space:pre-wrap;margin:10px 0 18px}.statements{list-style:none;padding:0}.statements li{margin:9px 0}.diagram{margin:20px auto;max-width:570px}.diagram svg{width:100%;height:auto;max-height:380px;display:block;font-family:"Segoe UI",Arial,sans-serif}.diagram figcaption{text-align:center;font-weight:600;margin:10px 0}.edge{stroke:#293e58;stroke-width:2;fill:none}.curve{fill:none;stroke:#285bb2;stroke-width:2.5}.options{display:grid;gap:8px;margin:20px 0}.option{display:flex;gap:12px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:10px 14px;cursor:pointer;min-width:0}.option:has(input:checked){border-color:var(--accent);background:#f2f6fd}.option input{accent-color:var(--accent)}.letter{font-weight:700;color:var(--accent)}.graph-options{grid-template-columns:repeat(2,minmax(0,1fr))}.graph-options .option{align-items:flex-start}.graph-options .option>span:last-child{min-width:0;width:100%}.graph-options .diagram{margin:0}.graph-options .diagram svg{max-height:240px}.matching{display:grid;grid-template-columns:1fr 1fr;gap:28px}.match-row{display:grid;grid-template-columns:20px 1fr 68px;gap:10px;align-items:center;margin-bottom:12px}.match-row select{border:1px solid var(--line);border-radius:6px;padding:6px;background:#fff}.matching-options p{margin:0 0 10px}.matching-options b{margin-right:10px;color:var(--accent)}.short-label{display:flex;align-items:center;gap:14px;margin:20px 0}.short-input{border:1px solid #b6c5d9;border-radius:8px;padding:9px 13px;width:200px}details{margin-top:12px;border-top:1px solid #edf0f5;padding-top:12px;font-size:14px}summary{color:var(--accent)}details p{margin:10px 0 0}.answer p{font-size:20px;font-weight:600}.complexity summary,.complexity p{color:var(--muted);font-size:13px}.table-wrap{overflow:auto;margin:20px 0}table{border-collapse:collapse;width:100%;font-size:15px}caption{text-align:left;font-weight:600;margin-bottom:10px}th,td{border:1px solid var(--line);padding:10px 15px;text-align:left}th{background:#f2f5fa}.system{display:flex;gap:12px;align-items:center;font:22px/1.8 Georgia,serif;margin:20px 0}.brace{font-size:70px;line-height:1}[hidden]{display:none!important}footer{color:var(--muted);font-size:13px;text-align:center;padding:12px 24px 35px}@media(max-width:640px){.hero{padding:24px 18px}h1{font-size:28px}.bar,.layout{padding-left:14px;padding-right:14px}.task{padding:20px 18px}.problem{font-size:17px}.matching{grid-template-columns:1fr;gap:16px}.graph-options{grid-template-columns:1fr}.difficulty{margin-left:0}.short-label{flex-wrap:wrap}.toolbar{position:relative}html{scroll-padding-top:15px}}@media print{body{background:white}.hero{padding-top:0}h1{font-size:24px}.toolbar,.jump,.notice,footer,.answer:not([open]),.complexity{display:none}.task{border:0;border-bottom:1px solid #bbb;border-radius:0;margin:0;padding:16px 0}.layout{margin:0;padding:0}.diagram svg{max-height:260px}}

.matching.matching-graphs{grid-template-columns:1fr;gap:20px}
.matching-graphs .matching-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:16px;align-items:start}
.matching-graphs .matching-option{border:1px solid var(--line);border-radius:9px;padding:10px;min-width:0}
.matching-graphs .matching-option>p{font-size:14px;margin:0 0 6px}
.matching-graphs .diagram{margin:0;width:100%}
.matching-graphs .diagram svg{max-height:none}
@media(max-width:600px){.matching-graphs .matching-options{grid-template-columns:1fr}.matching-graphs .matching-option{padding:12px}.matching-graphs .diagram{max-width:320px;margin:auto}}
.diagram svg{font-family:"Times New Roman",Times,serif;background:#fff}
.diagram figcaption{font-family:"Times New Roman",Times,serif;font-weight:400;color:#000;font-size:18px}
.task-content{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:28px;align-items:start}
.task-copy,.task-visual{min-width:0}
.task-copy .matching{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:18px;margin-top:24px}
.task-visual .diagram{margin:8px auto 16px}
.task-visual .diagram svg{max-height:390px}
@media(max-width:760px){.task-content{grid-template-columns:1fr;gap:0}.task-visual .diagram{max-width:480px;margin:12px auto 20px}}
@media(max-width:640px){.task-copy .matching{grid-template-columns:1fr;gap:16px}}
@media print{.task-content{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:20px}.task-visual .diagram svg{max-height:260px}}

.math-formula{font-family:"Cambria Math","STIX Two Math","Times New Roman",serif;font-size:1.08em;vertical-align:middle;white-space:normal;color:inherit}
.math-system{display:block;text-align:left;margin:.6em 0}
.math-formula mtable{text-align:left}
.math-system mtd{text-align:left}
.match-row{min-height:3em}
.option{min-height:3em}
.matching-options p{line-height:1.9}


.nmt-figure{background:#fff;color:#000}
.nmt-figure text{font-family:"Times New Roman",Times,serif;fill:#000}
.nmt-figure .math-label{font-style:italic}
.nmt-figure .figure-label{paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round}
.nmt-figure .edge,.nmt-figure .axis{fill:none;stroke:#000;stroke-width:1.6;vector-effect:non-scaling-stroke}
.nmt-figure .curve{fill:none;stroke:#000;stroke-width:2.1;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}
.nmt-figure .grid-line{stroke:#000;stroke-width:.55;vector-effect:non-scaling-stroke}
.nmt-figure .plot-frame{fill:none;stroke:#000;stroke-width:.7;vector-effect:non-scaling-stroke}
.nmt-figure .axis-arrow{fill:#000;stroke:none}
.table-wrap .nmt-data-table{width:auto;min-width:min(240px,100%);max-width:100%;margin:0 auto;border-collapse:collapse;font-family:Manrope,"Segoe UI",Arial,sans-serif;font-size:15px;line-height:1.5;font-variant-numeric:tabular-nums;color:#334155;background:#fff}
.table-wrap .nmt-data-table caption{text-align:center;font-size:15px;font-weight:600;color:#334155;margin-bottom:12px}
.table-wrap .nmt-data-table th,.table-wrap .nmt-data-table td{padding:8px 20px;border:1px solid #dce3ed;text-align:center;vertical-align:middle}
.table-wrap .nmt-data-table th{background:#f8fafc;font-weight:600}
.chart-diagram figcaption{font-family:Manrope,"Segoe UI",Arial,sans-serif;color:#334155;font-weight:600}
.nmt-figure[data-kind="chart"] text{font-family:Manrope,"Segoe UI",Arial,sans-serif;fill:#475569}
.nmt-figure[data-kind="chart"] .math-label{font-style:normal}
.nmt-figure[data-kind="chart"] .figure-label{stroke:none}
.nmt-figure[data-kind="chart"] .grid-line{stroke:#e2e8f0;stroke-width:1}
.nmt-figure[data-kind="chart"] .edge,.nmt-figure[data-kind="chart"] .axis{stroke:#94a3b8;stroke-width:1.2}
.nmt-figure[data-kind="chart"] .axis-arrow{fill:#94a3b8}


.math-formula{font-family:"Cambria Math","STIX Two Math","Times New Roman",serif;font-size:1.08em;vertical-align:middle;white-space:normal;color:inherit}
.math-system{display:block;text-align:left;margin:.6em 0}
.math-formula mtable{text-align:left}
.math-system mtd{text-align:left}
.match-row{min-height:3em}
.option{min-height:3em}
.matching-options p{line-height:1.9}

}