.practice-system{max-width:1100px;margin:auto}.practice-system button,.practice-system input{min-height:46px}.practice-system button{margin:0;cursor:pointer}.practice-tabs{margin:22px 0}.practice-tabs [aria-pressed=true]{background:#225f4b;color:white}.practice-search{display:grid;gap:8px;margin:22px 0}.practice-search input,.practice-system form>label input,.practice-question input{padding:12px;border:1px solid #bdd2c3;border-radius:9px;background:white;color:#153b34;font:inherit;box-sizing:border-box;width:100%;margin:6px 0 0}.practice-topic{display:flex;align-items:center;gap:12px;padding:18px;margin:10px 0;border:1px solid #d5e2d7;border-radius:12px;background:#fff;box-shadow:0 3px 12px #234f3e08}.practice-topic>label{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.practice-topic>span{flex:1}.practice-topic small{display:block;margin-top:6px;color:#5e7469}.practice-topic input[type=checkbox],.practice-select-all input{width:19px;min-height:19px;height:19px;accent-color:#225f4b;flex:none}.practice-state{font-size:12px;padding:7px 10px;border-radius:20px;white-space:nowrap;background:#eef0ee;color:#5b675e}.practice-state.learned{background:#eaf1ff;color:#175baa}.practice-state.tested{background:#e5f3e6;color:#205f4e}.practice-selection{position:sticky;bottom:16px;background:#f5f8f2;border:1px solid #bdd2c3;border-radius:12px;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 5px 20px #234f3e18}.practice-delivery{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:24px 0}.practice-delivery label{display:grid;gap:10px;border:1px solid #bdd2c3;padding:20px;border-radius:12px;cursor:pointer}.practice-delivery label:has(input:checked){background:#eef6ec;border-color:#225f4b}.practice-delivery input{width:20px;min-height:20px}.practice-recent{margin-top:38px}.practice-question{margin:16px 0}.practice-question svg,.practice-system .card svg{max-width:100%;height:auto}.practice-score{font-size:40px;color:#225f4b}.practice-message{padding:14px;background:#fff0e8;border-radius:10px}.practice-system form>label{display:grid;margin:18px 0}.practice-system .card{margin:18px 0}.practice-system .actions{display:flex;gap:10px;flex-wrap:wrap}.practice-topic strong{overflow-wrap:anywhere}@media(max-width:650px){.practice-topic{flex-wrap:wrap;padding:14px}.practice-topic>label,.practice-topic>span{flex:1 1 100%}.practice-delivery{grid-template-columns:1fr}.practice-selection{bottom:8px}.practice-topic button{flex:1}.practice-tabs button{flex:1}.practice-state{white-space:normal}}
.practice-system select{min-height:46px;padding:12px;border:1px solid #bdd2c3;border-radius:9px;background:white;color:#153b34;font:inherit;width:100%;box-sizing:border-box}.practice-delivery label:focus-within,.practice-topic label:focus-within{outline:2px solid #7aa889;outline-offset:3px}
.practice-correct{color:#205f4e;font-weight:650}.practice-needs-review{color:#8a4936;font-weight:650}
.practice-system .fraction{display:inline-flex;flex-direction:column;vertical-align:middle;text-align:center;line-height:1.15;margin:0 .16em}.practice-system .fraction>span{display:block;padding:0 .18em}.practice-system .fraction>span:first-child{border-bottom:1.5px solid currentColor;padding-bottom:.12em}.practice-system .fraction>span:last-child{padding-top:.12em}.practice-system .mixed-fraction{display:inline-flex;align-items:center;gap:.15em;vertical-align:middle}
@media(max-width:760px){.practice-selection{bottom:calc(86px + env(safe-area-inset-bottom,0px))}.practice-state{max-width:100%;white-space:normal}}
.practice-system .practice-diagram svg{display:block;width:100%;max-width:640px;height:auto;margin:20px auto}.practice-diagram-dialog{width:min(900px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:18px;border:1px solid #bdd2c3;border-radius:14px;background:#fff;color:#153b34;box-sizing:border-box}.practice-diagram-dialog::backdrop{background:#153b3466}.practice-diagram-dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.practice-diagram-dialog button{min-height:46px;min-width:46px}.practice-diagram-pan{overflow:auto;max-height:70dvh}.practice-diagram-pan svg{display:block;width:640px;min-width:640px;max-width:none;height:auto;margin:auto}
