:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#132632;background:#f4f7f6;font-synthesis:none}*{box-sizing:border-box}body{margin:0}.shell{min-height:100vh;max-width:1160px;margin:auto;padding:24px}.top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;color:#173d3b}.top strong{font-size:1.08rem}.top span{font-size:.9rem;color:#576c6a}.account-nav{display:flex;align-items:center;gap:20px}.account-nav a{color:#173d3b;text-decoration:none}.account-nav a[aria-current=page]{font-weight:700;text-decoration:underline;text-underline-offset:6px}.panel{margin:clamp(48px,10vh,120px) auto 0;max-width:520px;background:#fff;border:1px solid #d9e5e1;border-radius:16px;padding:clamp(24px,5vw,48px);box-shadow:0 12px 36px #183b3510}.eyebrow{font-size:.73rem;font-weight:800;letter-spacing:.14em;color:#237365}h1{font-size:clamp(2rem,5vw,2.7rem);line-height:1.1;margin:.5em 0}.panel>p:not(.eyebrow){line-height:1.6;color:#536765}form{display:grid;gap:18px;margin-top:32px}label{display:grid;gap:8px;font-weight:650;font-size:.92rem}input{width:100%;min-height:44px;border:1px solid #adbfbb;border-radius:8px;padding:10px 12px;font:inherit}input:focus{outline:3px solid #bde6d8;border-color:#237365}button{font:inherit;cursor:pointer;border-radius:8px;padding:10px 14px;border:1px solid #8ea8a1;background:#fff;color:#173d3b}button:focus-visible,a:focus-visible{outline:3px solid #bde6d8;outline-offset:3px}button:disabled{opacity:.65;cursor:not-allowed}.primary{background:#146b5b;color:#fff;border-color:#146b5b;min-height:46px;font-weight:700}.primary:disabled{opacity:.65;cursor:not-allowed}.text-button{display:inline-block;margin-top:24px;color:#146b5b;text-align:left;text-decoration:underline}.notice{color:#902c36!important;background:#fff0f0;padding:12px;border-radius:8px;line-height:1.4!important}.import-panel{display:grid;gap:20px;max-width:820px;margin-top:32px;padding:clamp(24px,4vw,40px)}.import-panel>p,.import-panel>h1,.import-panel>h2{margin:0}.import-panel>.eyebrow{margin-bottom:-8px}.import-panel>form{margin:0}.import-panel>button{justify-self:start}.import-panel a{color:#146b5b}.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.submit-actions{padding-top:20px;border-top:1px solid #d9e5e1}.import-panel input[type=file]{background:#f8faf9;padding:16px}input[type=file]::file-selector-button{margin-right:12px;padding:8px 12px;border:1px solid #adbfbb;border-radius:6px;background:#fff;color:#173d3b;cursor:pointer}.hint{font-size:.9rem;color:#536765;line-height:1.5}.question-list{display:grid;gap:16px;margin:0;min-width:0}.question-row{border:1px solid #d9e5e1;border-radius:10px;padding:20px;overflow-wrap:anywhere}.question-row>strong{margin-right:10px}.question-row>span{color:#237365;font-weight:700;font-size:.9rem}.question-row p{margin:10px 0;line-height:1.5}.question-row>:last-child{margin-bottom:0}.guess{display:flex;align-items:center;gap:8px;width:max-content}.guess input{width:auto;min-height:auto}.success{margin-top:24px;padding:18px;background:#edf9f4;border:1px solid #bde6d8;border-radius:10px}@media(max-width:560px){.shell{padding:16px}.top{padding:8px 0;align-items:flex-start;flex-wrap:wrap}.account-nav{flex-wrap:wrap;gap:8px 12px}.panel{margin-top:40px}.import-panel{margin-top:24px;padding:24px 20px}.button-row{align-items:stretch}.button-row button{flex:1 1 auto}.question-row{padding:16px}.account-nav a{padding:10px 0}}.saved-list{display:grid;gap:12px;padding:0;margin:0;list-style:none;line-height:1.6}.saved-list li{padding:16px;border:1px solid #d9e5e1;border-radius:10px}.saved-list a,.saved-detail a,.success a{color:#146b5b}.saved-detail{margin-top:20px;padding:18px;border:1px solid #d9e5e1;border-radius:10px}.saved-detail h3{margin-top:0}.saved-detail li{margin:12px 0;line-height:1.5}.file-ready{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:16px 20px;background:#edf9f4;border:1px solid #a9d7c8;border-radius:10px;overflow-wrap:anywhere}.file-ready-info{display:grid;gap:6px;flex:1 1 260px;min-width:0}.file-ready-info span{color:#38685c;font-size:.9rem}.file-ready-actions{flex-shrink:0;gap:8px}.csv-preview{width:min(1200px,calc(100% - 32px));max-height:90vh;padding:24px;border:1px solid #d9e5e1;border-radius:16px;color:#132632;box-shadow:0 24px 80px #13263240}.csv-preview::backdrop{background:#13263280}.csv-preview-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.csv-preview-header h2{margin:0 0 8px;font-size:1.3rem}.csv-preview-header p{margin:0;color:#536765;overflow-wrap:anywhere}.csv-preview-header>div{min-width:0}.csv-table-scroll{max-height:60vh;overflow:auto;border:1px solid #d9e5e1;border-radius:8px}.csv-table-scroll table{border-collapse:separate;border-spacing:0;width:100%;font-size:.85rem}.csv-table-scroll th,.csv-table-scroll td{padding:12px;text-align:left;vertical-align:top;border-bottom:1px solid #d9e5e1;border-right:1px solid #d9e5e1;line-height:1.5}.csv-table-scroll th{position:sticky;top:0;background:#edf5f1;white-space:nowrap}.csv-table-scroll td{min-width:140px;max-width:380px;overflow-wrap:anywhere;white-space:pre-wrap}.csv-table-scroll td:nth-child(2){min-width:320px}.csv-table-scroll tbody tr:nth-child(2n){background:#f8faf9}.csv-source{margin-top:20px}.csv-source summary{cursor:pointer;color:#146b5b}.csv-source pre{max-height:240px;overflow:auto;padding:16px;background:#f4f7f6;font-size:.8rem}.csv-help summary{cursor:pointer;color:#536765;font-size:.9rem}.workspace-notice{max-width:820px;margin:24px auto}.review-screen{margin:36px 0}.review-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px}.review-heading h1{font-size:clamp(1.8rem,4vw,2.25rem);margin:10px 0}.review-heading p{margin:0;color:#536765;line-height:1.5}.review-heading .eyebrow{color:#237365}.review-heading>button{flex-shrink:0}.review-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}.review-main{min-width:0}.review-card,.review-sidebar{background:#fff;border:1px solid #d9e5e1;border-radius:16px;box-shadow:0 8px 24px #183b3508}.review-card{padding:32px}.question-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#627570;font-size:.73rem;font-weight:750;letter-spacing:.08em}.outcome{border-radius:99px;padding:6px 12px;font-size:.8rem;letter-spacing:0}.outcome-correct{background:#e4f5ed;color:#176347}.outcome-incorrect{background:#fceaea;color:#a13138}.outcome-skipped{background:#eef1f3;color:#526171}.review-card h2{font-size:1.4rem;margin:22px 0 12px;scroll-margin-top:20px}.review-card h2:focus{outline:none}.question-text{margin:0 0 28px;font-size:1.06rem;line-height:1.8;white-space:pre-line;overflow-wrap:anywhere}.answer-options{padding:0;margin:0;list-style:none;display:grid;gap:12px}.answer-option{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:14px 16px;border:1px solid #dce4e1;border-radius:10px;background:#fafcfb}.option-letter{display:grid;place-items:center;width:32px;height:32px;flex:0 0 32px;border:1px solid #d6dfdb;border-radius:8px;background:#fff;font-size:.85rem;font-weight:750}.option-text{flex:1;min-width:100px;line-height:1.5;overflow-wrap:anywhere}.option-tags{display:flex;flex-wrap:wrap;gap:6px;font-size:.73rem;font-weight:700}.option-tags span{padding:4px 8px;border-radius:5px;background:#ffffffb0}.answer-correct{background:#edf9f2;border-color:#77bc96;color:#175b3d}.answer-incorrect{background:#fff1f0;border-color:#dfa29d;color:#913d36}.skipped-note{color:#536765;font-size:.9rem;line-height:1.6}.guess-action{display:flex;align-items:center;gap:14px;margin-top:28px;padding:20px;border:2px solid #b6c9dd;border-radius:12px;background:#f2f6fc;color:#25456e;cursor:pointer}.guess-action input{flex:0 0 22px;width:22px;height:22px;min-height:22px;margin:0;accent-color:#345ca0}.guess-action strong{font-size:1rem}.guess-description{display:block;margin-top:5px;font-size:.85rem;font-weight:400;line-height:1.5}.guess-action.is-marked{border-color:#345ca0;background:#e8f0ff}.guess-action.is-disabled{border-color:#e0e6e3;background:#f6f8f7;color:#67756f;cursor:not-allowed}.question-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:24px;margin-top:24px;border-top:1px solid #e3eae7}.mobile-jump{display:none}.review-sidebar{position:sticky;top:24px;padding:24px;scroll-margin-top:20px}.navigator-heading{display:flex;align-items:center;justify-content:space-between}.navigator-heading h2{font-size:1.05rem;margin:0}.navigator-heading>span{color:#66766f;font-size:.8rem}.guess-total{color:#526471;line-height:1.5;font-size:.85rem;padding-bottom:18px;margin:16px 0 20px;border-bottom:1px solid #e3eae7}.guess-total strong{color:#254f8e;font-size:1.4rem}.question-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;max-height:340px;overflow-y:auto;padding:4px;margin:-4px}.question-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:48px;padding:4px;font-size:.85rem;font-weight:700;border-color:#d7e0dc;border-radius:8px}.question-tile small{font-size:.65rem;line-height:1;margin-top:3px}.tile-guess{background:#e8f0ff;border-color:#7f9ac5;color:#254f8e}.tile-skipped{background:#f1f3f4;color:#6b7680;border-style:dashed}.question-tile[aria-current]{outline:2px solid #173d3b;outline-offset:1px}.navigator-legend{display:flex;flex-wrap:wrap;gap:10px;font-size:.72rem;color:#64726b;margin-top:18px}.navigator-legend b{color:#254f8e}.review-submit{margin-top:24px;padding-top:20px;border-top:1px solid #e3eae7}.review-submit p{margin:0 0 16px;color:#536765;font-size:.85rem;line-height:1.6}.review-submit button{width:100%}@media(max-width:860px){.review-layout{grid-template-columns:minmax(0,1fr)}.review-sidebar{position:static}.question-grid{grid-template-columns:repeat(auto-fill,minmax(44px,1fr))}.mobile-jump{display:inline;font-size:.8rem;color:#146b5b}}@media(max-width:560px){.review-screen{margin-top:24px}.review-heading{flex-direction:column;align-items:flex-start;gap:16px}.review-card,.review-sidebar{padding:20px}.question-text{font-size:1rem;line-height:1.7}.answer-option{padding:12px}.option-tags{width:100%;padding-left:44px}.guess-action{padding:16px}.question-controls .mobile-jump{order:3;width:100%;text-align:center;padding-top:8px}}
