@font-face{font-family:Manrope;src:url(fonts/Manrope-800.ttf);font-weight:800;font-display:swap}
@font-face{font-family:Inter;src:url(fonts/Inter.ttf);font-weight:100 900;font-display:swap}
:root{--ink:#101828;--teal:#0f766e;--mint:#2dd4bf;--cloud:#f7f9fc;--line:#d9e2ec;--muted:#586577;--white:#fff}
*{box-sizing:border-box}body{margin:0;background:var(--cloud);color:var(--ink);font:14px/1.6 Inter,Arial,sans-serif}.shell{max-width:1440px;margin:auto;padding:0 48px}.topbar{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font:800 22px Manrope,Arial,sans-serif}.brand small{display:block;font:9px Inter,Arial,sans-serif;letter-spacing:.12em;margin-top:6px}.badge{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.09em;border:1px solid var(--line);border-radius:30px;padding:9px 12px}.badge i{width:6px;height:6px;border-radius:50%;background:var(--teal)}.intro{display:flex;justify-content:space-between;align-items:end;gap:32px;padding:48px 0 30px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.12em;color:var(--teal);margin:0 0 10px}h1,h2,h3{font:800 24px/1.25 Manrope,Arial,sans-serif;letter-spacing:-.6px;margin:0 0 14px}h1{font-size:52px;line-height:1.09;letter-spacing:-2px;margin-bottom:20px}h1 span{color:var(--teal)}.lede{font-size:16px;color:var(--muted);margin:0}.local-note{display:flex;max-width:305px;gap:16px;border-left:1px solid var(--line);padding:8px 0 8px 26px;font-size:13px}.local-note>span{font-size:32px;line-height:1;color:var(--teal)}.local-note p{font-size:12px;color:var(--muted);margin:7px 0 0}.notice{border-radius:9px;background:#e7f4f1;color:#155e58;padding:12px 16px;font-size:12px;margin-bottom:18px;overflow-wrap:anywhere}.error{border:1px solid #d79d8f;border-radius:9px;background:#fff3ed;color:#8b2f1b;padding:14px 16px;margin-bottom:18px;white-space:pre-wrap;overflow-wrap:anywhere}.workspace{display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.35fr);gap:22px}.panel{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:26px;min-width:0}.section-head{margin-bottom:22px}.section-head h2{margin-bottom:0}.split{display:flex;justify-content:space-between;align-items:center;gap:15px}.pill{white-space:nowrap;background:#f0f4f8;color:var(--muted);padding:7px 12px;border-radius:30px;font-size:11px;font-variant-numeric:tabular-nums}label{display:block;font-size:12px;font-weight:600;margin:16px 0 7px}input,textarea,select{width:100%;max-width:100%;min-height:44px;border:1px solid #b8c5d2;border-radius:8px;background:white;color:var(--ink);padding:10px;font:13px/1.5 Inter,Arial,sans-serif}textarea{min-height:190px;resize:vertical;font:12px/1.65 ui-monospace,monospace}#deck-title{font-weight:600}.hint{font-size:12px;color:var(--muted);margin:7px 0 13px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:16px}button{font:600 12px/1.4 Inter,Arial,sans-serif;background:var(--teal);color:#fff;min-height:44px;padding:11px 15px;border:1px solid var(--teal);border-radius:8px;cursor:pointer}button:hover:enabled{filter:brightness(.95)}button:disabled{opacity:.45;cursor:not-allowed}.secondary{background:white;color:var(--ink);border-color:#b8c5d2}.text-button{background:none;color:var(--teal);border-color:transparent;padding:7px 3px}.file-row{border-top:1px solid var(--line);margin-top:20px;padding-top:2px}.file-label{font-size:11px}input[type=file]{padding:7px;font-size:11px;border:0;background:#f4f7fa}input[type=file]::file-selector-button{padding:7px 9px;border:1px solid var(--line);border-radius:5px;background:white;color:var(--ink);font:inherit;margin-right:8px}.help{font-size:12px;border-top:1px solid var(--line);padding-top:15px;margin-top:19px;color:var(--muted)}summary{cursor:pointer;font-weight:600;color:var(--teal);min-height:30px}a{color:var(--teal)}.practice-panel{display:flex;flex-direction:column}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;background:var(--ink);color:white;border-radius:12px;padding:16px 21px;margin-bottom:20px}.metrics>div+div{border-left:1px solid #384455;padding-left:21px}.metrics strong{display:block;font:800 27px/1.3 Manrope,Arial,sans-serif;font-variant-numeric:tabular-nums}.metrics>div:first-child strong{color:var(--mint)}.metrics span{font-size:11px;color:#ccd5e2}.empty{display:flex;flex:1;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:330px;padding:25px 10px}.empty h3{font-size:22px;margin:25px 0 9px}.empty p{font-size:13px;color:var(--muted);margin:0}.empty-art{position:relative;background:#e5f6f1;border:1px solid #b3d7cf;border-radius:12px;width:95px;height:110px;display:grid;place-items:center;font:800 40px Manrope,Arial,sans-serif;color:var(--teal);transform:rotate(-9deg);margin-right:40px}.empty-art span{position:absolute;left:55px;top:20px;display:grid;place-items:center;border-radius:12px;width:95px;height:110px;background:white;border:1px solid #c5ced9;transform:rotate(17deg);box-shadow:0 5px 15px #1018280c;color:var(--ink)}.card-meta{display:flex;justify-content:space-between;gap:20px;font-size:11px;color:var(--muted);margin:0 0 10px;overflow-wrap:anywhere}.flashcard{display:flex;flex-direction:column;width:100%;min-height:246px;text-align:center;align-items:center;justify-content:center;padding:28px;background:#f0f9f6;border-color:#b9dbd2;color:var(--ink);border-radius:13px}.flashcard:hover:enabled{filter:none;background:#e7f5ef}.flashcard[aria-pressed=true]{background:#f3f5fa;border-color:#c8d2e3}.flashcard .eyebrow{display:block;font-size:10px}.flashcard #card-text{font:800 27px/1.45 Manrope,Arial,sans-serif;letter-spacing:-.5px;white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}.flip-hint{display:block;font-size:11px;font-weight:500;color:var(--teal);margin-top:24px}.mark-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:15px}.center{text-align:center;font-size:11px}.card-nav{display:flex;justify-content:space-between;gap:15px;margin-top:15px}.card-nav button{min-width:120px}.practice-bottom{margin-top:auto;padding-top:18px}.practice-bottom .actions{justify-content:space-between;border-top:1px solid var(--line);padding-top:10px}.practice-bottom .hint{font-size:11px;margin-bottom:0}.output-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:22px 0 26px}.output-grid h2{font-size:22px}.print-actions{display:flex;gap:14px;align-items:center;margin-top:16px}.print-actions button{flex-shrink:0}.print-actions p{margin:0;font-size:11px}footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);font-size:10px;color:var(--muted);padding:25px 0 30px}footer p{margin:0}.skip{position:absolute;top:-100px;left:20px;background:white;padding:12px;z-index:5}.skip:focus{top:8px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #00a998;outline-offset:3px}#print-sheet{display:none}[hidden]{display:none!important}
@media(max-width:1050px){.shell{padding:0 26px}.workspace{grid-template-columns:minmax(280px,.95fr) minmax(0,1.1fr);gap:18px}.panel{padding:21px}.flashcard #card-text{font-size:24px}.metrics{padding:15px}.metrics>div+div{padding-left:12px}.metrics span{font-size:10px}.print-actions{display:block}.print-actions p{margin-top:10px}h1{font-size:46px}.local-note{max-width:275px}}
@media(max-width:760px){.shell{padding:0 18px}.topbar{min-height:82px}.brand{font-size:19px;gap:8px}.brand small{font-size:7px}.badge{font-size:8px;letter-spacing:0;padding:7px}.brand img{width:34px;height:34px}.intro{display:block;padding:31px 0 24px}h1{font-size:43px;letter-spacing:-1.6px}.intro .eyebrow{font-size:9px}.lede{font-size:14px}.local-note{max-width:none;border:0;padding:0;margin-top:24px;gap:12px}.workspace,.output-grid{grid-template-columns:1fr}.workspace{gap:18px}.panel{padding:21px}.metrics span{font-size:11px}.empty{min-height:290px}.output-grid{gap:18px;margin-top:18px}.print-actions{display:flex}.print-actions p{margin:0}.flashcard{min-height:230px;padding:24px 20px}.flashcard #card-text{font-size:25px}footer{display:block}footer span{display:block;margin-top:6px}}
@media(max-width:370px){.shell{padding:0 12px}.badge{font-size:7px}.panel{padding:17px}.split{align-items:start}.section-head h2{font-size:21px}.pill{font-size:10px;padding:6px 8px}.metrics{padding:12px;gap:7px}.metrics>div+div{padding-left:8px}.metrics span{font-size:10px}.print-actions{display:block}.print-actions p{margin-top:10px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
@page{size:auto;margin:14mm}
@media print{body{background:#fff;color:#000;font:11pt/1.45 Arial,sans-serif}.shell,.skip{display:none!important}#print-sheet{display:block}#print-sheet h1{font:700 22pt/1.2 Arial,sans-serif;letter-spacing:0;margin:0 0 8pt;overflow-wrap:anywhere}#print-sheet>section>p{font-size:9pt;color:#333;margin:0 0 16pt}.print-grid{display:grid;grid-template-columns:1fr 1fr;gap:9pt}.print-card{border:1px dashed #666;padding:12pt;min-height:95pt;break-inside:avoid;page-break-inside:avoid}.print-card h2,.answer-list h2{font:700 10pt/1.3 Arial,sans-serif;margin:0 0 9pt;letter-spacing:0;overflow-wrap:anywhere}.print-card p,.answer-list p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.new-page{break-before:page;page-break-before:always}.answer-list article{border-bottom:1px solid #aaa;padding:10pt 0;break-inside:avoid;page-break-inside:avoid}.answer-list h2{margin-bottom:4pt}}

/* Free-beta shell: navigation and bounded privacy notice. */
.brand{color:inherit;text-decoration:none}.brand:focus-visible{outline:3px solid #0f766e;outline-offset:5px}.beta-info{margin:28px 0;padding:18px 20px;border:1px solid #c9ded9;border-radius:14px;background:#f4faf7;font-size:14px;line-height:1.65}.beta-info summary{cursor:pointer;font-weight:700}.beta-info p{max-width:85ch}.beta-info p:last-child{margin-bottom:0}@media print{.beta-info{display:none}}
