:root{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#182b42;background:#f5f7fb}*{box-sizing:border-box}body{margin:0}header{background:linear-gradient(120deg,#112b50,#275e8c);color:white;padding:34px 0 28px}.wrap{max-width:1000px;margin:auto;padding-left:22px;padding-right:22px}h1{font-size:clamp(1.65rem,4vw,2.4rem);margin:8px 0}h2{font-size:1.2rem}.eyebrow{font-size:.77rem;letter-spacing:.11em;text-transform:uppercase;font-weight:750;color:#49729d}header .eyebrow{color:#b9d9f4}header p{color:#d9e9f8;margin-bottom:0}nav{display:flex;gap:8px;flex-wrap:wrap;margin:23px 0}button,select{font:inherit}button{border:0;border-radius:9px;padding:11px 16px;background:#205c95;color:white;font-weight:650;cursor:pointer}button:hover{filter:brightness(.95)}button.secondary,nav button{background:#e5edf5;color:#1d466f}nav button.active{background:#205c95;color:white}button:disabled{opacity:.55;cursor:default}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:15px}.toolbar label{font-weight:600}select{padding:10px;border:1px solid #c8d3e1;border-radius:8px;background:white;max-width:100%}.problem{background:white;border:1px solid #dbe3ed;border-radius:13px;padding:24px;margin:16px 0;box-shadow:0 3px 12px #20395b09}.problem p{line-height:1.72}.problem .eyebrow{margin-bottom:12px}.answer-label{display:block;margin:18px 0 8px;font-weight:700}math-field,#fallback,.exam-input{display:block;width:100%;min-height:55px;border:1px solid #aebed0;border-radius:9px;padding:9px 12px;font-size:1.2rem;background:white}.exam-input{font-size:1rem}.actions{display:flex;gap:9px;flex-wrap:wrap;margin:18px 0}.info{background:#f0f5fb;border-left:4px solid #528cc3;border-radius:4px;padding:15px 18px;margin:16px 0;line-height:1.7}.info p:first-child{margin-top:0}.info p:last-child{margin-bottom:0}.hidden{display:none!important}.muted{color:#64768b}.small{font-size:.86rem}.success{color:#14613c;font-weight:700}.error{color:#a52e35;font-weight:700}.review{color:#805d10;font-weight:700}#graph svg{max-width:100%;height:auto;display:block;margin:12px auto}#examQuestions .problem{margin-bottom:12px}footer{padding-top:25px;padding-bottom:35px;color:#687b8d;font-size:.86rem}code{background:#eaf0f5;padding:2px 4px;border-radius:4px}@media(max-width:650px){.problem{padding:16px}.toolbar{align-items:stretch}button{min-height:42px}}

.part{padding:10px 0;border-bottom:1px solid #e8edf4}.part .answer-label{font-weight:600;margin:6px 0}.part .exam-input{max-width:660px}.exam-math{margin-top:9px}.info svg{max-width:100%;height:auto}.part .success,.part .error,.part .review{padding-top:6px}

.sketch-section{margin-top:24px;padding-top:16px;border-top:2px solid #dbe3ed}.student-sketch{display:block;width:100%;height:auto;background:#fff;border:1px solid #d3deea;border-radius:10px;touch-action:none;user-select:none}.sketch-section ul{padding-left:24px}.sketch-section li{margin:8px 0}.sketch-section .info{margin-top:10px}

/* MATH 1001-style topic navigation */
.main-links{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}.main-links button{background:#e5edf5;color:#1d466f}.main-links button.active{background:#205c95;color:white}
.topic-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin:18px 0 24px}.topic-grid .topic{text-align:left;min-height:92px;background:white;border:1px solid #a9bbcf;border-radius:10px;padding:15px;color:#1d3957}.topic-grid .topic strong{display:block;font-size:1rem}.topic-grid .topic span{display:block;color:#61758c;font-size:.82rem;margin-top:8px;font-weight:400}.topic-grid .topic.active{background:#193c64;color:white;border-color:#193c64}.topic-grid .topic.active span{color:#d7e7f8}.topic-grid .topic:hover{border-color:#205c95}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}button:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #60a5fa;outline-offset:2px}
/* Advanced multipart problem formats */
.advanced-host{margin:1rem 0}.advanced-graph{display:block;width:100%;max-width:760px;height:auto;margin:1rem auto;border:1px solid #d8e1e9;border-radius:10px}.table-scroll{overflow-x:auto}.answers-table{width:100%;border-collapse:collapse;margin:1rem 0}.answers-table th,.answers-table td{padding:.65rem;border:1px solid #d8e1e9;text-align:center}.answers-table select,.coordinate-row select{max-width:100%;padding:.55rem;border-radius:6px}.coordinate-row{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem;margin:.65rem 0;padding:.7rem;background:#f4f7fb;border-radius:8px}.coordinate-row label{display:flex;align-items:center;gap:.35rem}.coordinate-row input{width:100px;max-width:25vw;padding:.55rem}.coordinate-row .remove-row{padding:.45rem .8rem}.multipart{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:.7rem}.multipart .part{display:flex;flex-direction:column;gap:.5rem}.multipart input,.advanced-host input{padding:.65rem;border:1px solid #b6c5d3;border-radius:6px}.advanced-host .part{padding:.65rem;border:1px solid #d9e3ec;border-radius:8px;margin:.5rem 0}.advanced-host h3{margin-top:1.4rem}.editable-graph{touch-action:none}
