@font-face{font-family:Source Serif 4;src:url('/fonts/source-serif-4/400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Source Serif 4;src:url('/fonts/source-serif-4/600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:IBM Plex Sans Condensed;src:url('/fonts/ibm-plex-sans-condensed/400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:IBM Plex Sans Condensed;src:url('/fonts/ibm-plex-sans-condensed/600.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:IBM Plex Mono;src:url('/fonts/ibm-plex-mono/500.woff2') format('woff2');font-weight:500;font-display:swap}
:root{--ink:#171819;--muted:#535b60;--rule:#cbd0d2;--soft:#f4f5f3;--red:#b52d27;--green:#276354;--paper:#fff;--ui:'IBM Plex Sans Condensed',Arial,sans-serif;--reading:'Source Serif 4',Georgia,serif;--mono:'IBM Plex Mono',monospace;color-scheme:light}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.5 var(--ui)}[hidden]{display:none!important}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit;color:inherit}button,input,select,textarea,summary{min-height:44px}button{padding:.65rem 1rem;border:1px solid var(--rule);background:var(--paper);cursor:pointer;font-weight:600}button:hover{border-color:var(--ink);background:var(--soft)}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--red);color:white;border-color:var(--red)}button.primary:hover{background:#94231e}button.text{border:0;padding-inline:0;background:transparent;text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #1979b6;outline-offset:3px}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--reading);font-weight:400;letter-spacing:-.035em;line-height:1.15}h1{font-size:clamp(2.5rem,4.5vw,3.7rem)}h2{font-size:1.9rem}h3{font-size:1.1rem}input,select,textarea{padding:.6rem .75rem;border:1px solid var(--rule);background:white;border-radius:0;width:100%;max-width:100%}textarea{resize:vertical}label{display:block;font-weight:600;font-size:1rem}label select,label input,label textarea{display:block;font-weight:400;margin-top:.3rem}.hint{font-size:.92rem;color:var(--muted);line-height:1.45}.eyebrow{font:500 .69rem/1.5 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.skip:not(:focus){position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.skip:focus{position:absolute;background:white;z-index:5;padding:1rem}.site-header{max-width:1440px;padding:1rem 3rem;margin:auto;display:flex;align-items:center;gap:2rem;border-bottom:1px solid var(--rule)}.brand{display:flex}.brand img{object-fit:contain;object-position:left}.site-header nav{margin-left:auto;display:flex;gap:1.4rem;font-weight:600}.site-header nav a{padding:.45rem 0;text-decoration:none;border-bottom:2px solid transparent}.site-header nav a[aria-current=page]{color:var(--red);border-color:var(--red)}.draft{font:500 .6rem var(--mono);padding:.4rem .55rem;border:1px solid var(--rule);letter-spacing:.05em}main{max-width:1320px;padding:2.1rem 3rem 4rem;margin:auto}.intro{margin:.75rem 0;color:var(--muted);max-width:75ch}.heading{margin-bottom:1.6rem}.heading .eyebrow{margin-bottom:.55rem}.scope{font-size:.94rem;max-width:80ch;color:var(--muted)}.scope strong{color:var(--ink)}.toolbar{display:grid;grid-template-columns:minmax(220px,.75fr) minmax(260px,1.2fr) auto;gap:1rem;align-items:end;border-top:3px solid var(--ink);padding:1.15rem 0}.toolbar button{margin-bottom:0}.workspace{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(310px,.8fr);gap:1.5rem;align-items:stretch}.question{border:1px solid var(--rule);padding:1.65rem 1.9rem;min-width:0}.card-meta{display:flex;justify-content:space-between;gap:.75rem;align-items:center;margin-bottom:1.6rem}.badge{font-size:.78rem;color:var(--red);border:1px solid #e3c7c3;padding:.15rem .4rem;white-space:nowrap}.question h2{font-size:1.85rem;line-height:1.35;letter-spacing:-.02em;overflow-wrap:anywhere;white-space:pre-line}.question ul{font:1.08rem/1.8 var(--reading);padding-left:1.2rem;margin:.8rem 0}.question .cue-label{margin-top:1.05rem}.question .follow-up{font:1.08rem/1.6 var(--reading);margin-top:.7rem;overflow-wrap:anywhere;white-space:pre-line}.question p.passage{font-size:1.25rem;line-height:1.6;white-space:pre-line;margin-top:.9rem}.question .source{border-top:1px solid var(--rule);margin-top:1.6rem;padding-top:.8rem;font-size:.85rem;color:var(--muted)}.timer{background:var(--soft);padding:1.4rem 1.5rem;display:flex;flex-direction:column;align-items:center;text-align:center;border-top:3px solid var(--red);min-width:0}.steps{display:flex;gap:1rem;font-size:.84rem;margin-bottom:1.3rem}.steps span{color:var(--muted);border-bottom:2px solid transparent;padding-bottom:.3rem}.steps span.active{color:var(--red);border-color:var(--red);font-weight:600}.phase{font:600 1.1rem var(--ui);letter-spacing:.03em}.digits{font:500 clamp(4.8rem,7.8vw,7.2rem)/1.2 var(--mono);letter-spacing:-.08em;font-variant-numeric:tabular-nums;padding-right:.08em;margin:.25rem 0 .6rem}.timing{font-size:.94rem;color:var(--muted);margin-bottom:1rem}.timer .primary{width:100%;font-size:1.1rem}.timer .timer-action{width:100%;margin-top:.55rem}.record-choice{align-self:stretch;display:flex;align-items:center;gap:.7rem;text-align:left;margin:.65rem 0}.record-choice input{width:19px;height:19px;min-height:19px;accent-color:var(--red);flex:none;margin:0}.record-choice label{font-weight:400}.mic-state{font-size:.85rem;color:var(--muted);margin:.3rem 0;min-height:1.4em}.recording{color:var(--red);font-weight:600}.status{margin:.8rem 0;min-height:1.5em;color:var(--green);font-size:.98rem}.status.error{color:var(--red)}.instruction{margin:.7rem 0 0;font-size:.9rem;color:var(--muted)}details{border-block:1px solid var(--rule);margin:1.2rem 0}summary{cursor:pointer;font-weight:600;display:list-item;padding:.85rem 0}.import-body{padding:.5rem 0 1.3rem}.import-top{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.import-body h3{margin-bottom:.5rem}.import-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin:.7rem 0}.inline-help{max-width:75ch;margin-bottom:1rem}.editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.editor-grid .wide{grid-column:1/-1}.editor-grid label .hint{display:block;font-weight:400;margin:.2rem 0}.input-error{padding:.75rem 1rem;border-left:3px solid var(--red);background:#fff6f4;color:#8b231d;margin:1rem 0}.input-error ul{padding-left:1rem}.preview{margin:1rem 0;border:1px solid var(--rule);padding:1rem;max-height:350px;overflow:auto}.preview ol{padding-left:1.25rem;margin:.6rem 0}.preview li{margin:.7rem 0}.review{margin-top:2.5rem;border-top:3px solid var(--ink);padding-top:1.3rem}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.7rem}.review-intro{max-width:75ch;margin:.7rem 0 1.2rem}.attempt-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.attempt{border:1px solid var(--rule);padding:1.2rem;min-width:0}.attempt h3{font-family:var(--reading);font-size:1.3rem;margin-bottom:.4rem;font-weight:400}.attempt audio{width:100%;margin:1rem 0}.attempt .hint{margin:.35rem 0}.attempt textarea{font-size:1rem;margin-top:.4rem}.attempt-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.7rem}.attempt-actions button{font-size:.9rem;padding:.4rem .6rem}.note-actions{margin:.4rem 0}.note-actions button{font-size:.83rem;padding:.35rem .6rem;min-height:36px}.empty{background:var(--soft);padding:1.5rem;color:var(--muted)}.review-checks{display:flex;gap:.75rem 1.6rem;flex-wrap:wrap;margin:1rem 0;font-size:.96rem}.review-checks span::before{content:'• ';color:var(--red)}.library{margin-top:1.4rem}.library ul{list-style:none;padding:0}.library li{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--rule);padding:.7rem 0}.library .load-attempt{text-align:left;overflow-wrap:anywhere}.resources{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--rule)}.resources h2{font-size:1.6rem;margin-bottom:.6rem}.resources p{font-size:1rem;color:var(--muted);margin-bottom:.7rem}.resources a{display:inline-block;margin-right:1rem;margin-bottom:.5rem;font-size:.94rem}.hub-cards{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2rem}.hub-card{padding:2rem;border:1px solid var(--rule);border-top:3px solid var(--red);text-decoration:none}.hub-card h2{font-size:2.5rem;margin:.5rem 0 1rem}.hub-card p{color:var(--muted);margin-bottom:1.5rem}.hub-card strong{color:var(--red)}footer{max-width:1440px;margin:auto;border-top:1px solid var(--rule);padding:1.5rem 3rem;display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-size:.85rem}.saved-badge{font-size:.75rem;color:var(--green)}dialog{max-width:480px;width:calc(100% - 2rem);background:white;border:1px solid var(--ink);padding:2rem;color:var(--ink)}dialog::backdrop{background:#0007}dialog h2{font-size:1.7rem}dialog p{margin:1rem 0}dialog .actions{display:flex;gap:.7rem;flex-wrap:wrap}.timer-only .mic-state{color:var(--muted)}
@media(max-width:950px){main{padding:1.7rem 1.5rem 3rem}.site-header{padding:1rem 1.5rem}.workspace{grid-template-columns:minmax(0,1.2fr) minmax(280px,.85fr);gap:1rem}.question{padding:1.3rem}.question h2{font-size:1.6rem}.toolbar{grid-template-columns:1fr 1.4fr}.toolbar button{grid-column:1/-1;justify-self:start}.digits{font-size:5.5rem}.draft{display:none}}
@media(max-width:670px){body{font-size:17px}.site-header{padding:.75rem 1rem;gap:.7rem}.brand img{width:150px;height:40px}.site-header nav{gap:.8rem;font-size:.95rem}main{padding:1.4rem 1rem 2.5rem}.heading{margin-bottom:1rem}h1{font-size:2.5rem}.toolbar{grid-template-columns:1fr;gap:.8rem}.toolbar button{grid-column:auto;justify-self:stretch}.workspace{display:flex;flex-direction:column;gap:1rem}.question{padding:1.25rem}.card-meta{margin-bottom:1rem;flex-wrap:wrap}.question h2{font-size:1.55rem}.timer{padding:1.15rem}.digits{font-size:5.5rem}.steps{margin-bottom:.8rem}.timer .primary{max-width:400px}.timer-action{max-width:400px}.record-choice{align-self:center}.import-top,.editor-grid,.attempt-grid,.resources,.hub-cards{grid-template-columns:1fr;gap:1rem}.editor-grid .wide{grid-column:auto}.section-heading{align-items:flex-start;flex-wrap:wrap}.review{margin-top:1.8rem}.review-checks{display:block}.review-checks span{display:block;margin:.5rem 0}.library li{align-items:flex-start;flex-wrap:wrap}footer{padding:1.3rem 1rem;flex-direction:column}.resources{gap:1.5rem}.hub-card{padding:1.5rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.prep-notes{margin-top:1.3rem}.prep-notes>.hint{font-weight:400;margin-left:.35rem}.prep-notes textarea{font-size:1rem}.sound-options{display:flex;align-items:center;justify-content:flex-end;gap:1rem;flex-wrap:wrap;padding-top:.5rem}.sound-options label{display:flex;align-items:center;gap:.5rem;font-weight:400;font-size:.9rem}.sound-options input{width:17px;height:17px;min-height:17px;margin:0;accent-color:var(--red)}.sound-options button{font-size:.85rem;min-height:36px}@media(max-width:670px){.sound-options{justify-content:flex-start;gap:.3rem 1rem}.prep-notes>.hint{display:block;margin-left:0}}
.brand{align-items:center;gap:.7rem;text-decoration:none;font:600 1.1rem/1.13 var(--reading);letter-spacing:-.03em}.brand img{width:48px;height:48px;flex:none}.mobile-live{display:none}@media(max-width:670px){.brand{gap:.5rem;font-size:.91rem}.brand img{width:37px;height:37px}.mobile-live{display:flex;position:fixed;z-index:4;bottom:0;left:0;right:0;background:white;border-top:3px solid var(--red);padding:.55rem 1rem calc(.55rem + env(safe-area-inset-bottom));align-items:center;justify-content:space-between;box-shadow:0 -3px 20px #0001}.mobile-live>div{display:flex;align-items:center;gap:.7rem}.mobile-live span{font-size:.85rem;max-width:100px;line-height:1.15}.mobile-live strong{font:500 1.65rem var(--mono)}body:has(.mobile-live:not([hidden])){padding-bottom:90px}.question{scroll-margin-top:1rem}}
.editor-heading{display:flex;justify-content:space-between;align-items:start;gap:1.2rem;margin-bottom:1rem}.editor-heading h2{font-size:1.65rem;margin-bottom:.5rem}.editor-heading button{flex:none}#question-form{max-width:850px}#question-form>label{margin-top:1rem}#editor-help,#editor-timing{margin:.4rem 0}#question-text{font-size:1.05rem;line-height:1.6;min-height:180px}.optional-title{border:0;margin:.5rem 0}.optional-title summary{font-size:.95rem;font-weight:400;text-decoration:underline}.optional-title input{max-width:600px}.saved-set{border-top:1px solid var(--rule);padding-top:.9rem;margin-top:1rem}.preview p,.preview li{white-space:pre-wrap;overflow-wrap:anywhere}.preview h3,.question li,.card-meta .eyebrow{overflow-wrap:anywhere}.preview:focus-visible{outline:3px solid #1979b6;outline-offset:3px}#editor-preview{max-width:850px;max-height:none}#question-text[aria-invalid=true]{border-color:var(--red)}.inline-help{margin-top:1rem}#csv-panel{margin-top:1.5rem}.import-top{padding-bottom:1rem}button,a,input,select,textarea,summary{touch-action:manipulation}dialog{overscroll-behavior:contain}#review{scroll-margin-top:1rem}@media(max-width:670px){.editor-heading{flex-direction:column;gap:.5rem}#question-text{font-size:1rem}.question ul{white-space:pre-line}}
#format-guide{margin:.8rem 0;border:1px solid var(--rule);padding:0 1rem;background:var(--soft)}#format-guide summary{font-weight:600}.format-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.5rem;padding:.3rem 0 1rem}.format-grid h3{margin-bottom:.5rem}.format-grid pre,.format-example{white-space:pre-wrap;overflow-wrap:anywhere;font:1rem/1.65 var(--ui);margin:.75rem 0}.format-grid+.hint{margin-bottom:1rem}.editor-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin:1rem 0 .5rem}@media(max-width:670px){.format-grid{grid-template-columns:minmax(0,1fr);gap:.75rem}.editor-actions>button{flex:1 1 200px}}

.sample-bank-note{margin:-.4rem 0 1.25rem}
.site-information{max-width:1440px;margin:0 auto;padding:0 3rem 1.5rem;display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;font-size:.85rem;color:var(--muted)}.site-information a{display:inline-flex;align-items:center;min-height:44px}@media(max-width:670px){.site-information{padding:0 1rem 1.5rem}}@media print{.site-information{display:none}}
@media(max-width:480px){.site-header{flex-wrap:wrap}.site-header nav{width:100%;margin-left:0;flex-wrap:wrap;gap:.15rem 1rem}.site-header nav a{padding:.25rem 0}}
