:root{font-family:system-ui,sans-serif;color:#172446;background:#f1f5fc;font-synthesis:none}*{box-sizing:border-box}body{margin:0}main{max-width:820px;margin:auto;padding:22px 18px 40px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}h1{font-size:32px;margin:6px 0}h2{font-size:23px}p{line-height:1.6}.muted{color:#52617a}.tag{font-size:12px;letter-spacing:2px;font-weight:800;color:#3469ad}.card{background:white;border:1px solid #dce4f1;border-radius:24px;padding:24px;margin:16px 0;box-shadow:0 8px 28px #18284909}.hero{background:#172446;color:white}.hero .muted{color:#c0d0ee}button,a.button{font:inherit;font-weight:750;border:0;border-radius:16px;padding:15px 19px;min-height:52px;background:#e8eef9;color:#172446;cursor:pointer;text-decoration:none;display:inline-block}button.primary{background:#3767ec;color:white}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #ea9f20;outline-offset:3px}button:disabled{opacity:.5;cursor:default}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.grid button{padding:15px 4px}.selected{background:#3767ec!important;color:white!important}.small{font-size:13px}.equation{font-size:clamp(40px,10vw,64px);font-weight:850;text-align:center;margin:25px 0}.choices{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.choices button{font-size:30px;padding:25px 5px;background:#e9f0ff}.feedback{padding:18px;border-radius:15px;background:#eef3fa;line-height:1.6;margin-top:18px}.good{background:#ddf5e7}.retry{background:#fff0d8}input{width:100%;font-size:30px;text-align:center;padding:15px;border:2px solid #bed0ee;border-radius:15px}.dots{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin:16px 0}.group{border:2px solid #a7bee7;border-radius:10px;padding:7px;display:grid;gap:3px;grid-template-columns:repeat(5,9px)}.dot{width:9px;height:9px;background:#3767ec;border-radius:50%}.bar{height:8px;background:#e0e8f4;border-radius:9px;overflow:hidden}.bar span{display:block;height:100%;background:#25b28b}.stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.day{width:100%;text-align:left;margin:5px 0;display:flex;justify-content:space-between}.badge{padding:8px 12px;background:#e0f5ee;border-radius:12px;font-weight:800}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:12px 0}.keypad button{font-size:24px}.hint{border-left:4px solid #3767ec;padding-left:16px}.switch{font-size:15px;display:flex;gap:10px;align-items:center}.switch input{width:22px;height:22px}.burst{position:fixed;pointer-events:none;left:50%;top:45%;font-size:34px;animation:burst .7s ease-out forwards}#celebrate{position:fixed;inset:0;pointer-events:none;overflow:hidden}@keyframes burst{from{transform:translate(-50%,-50%) scale(.4);opacity:1}to{transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) rotate(var(--r));opacity:0}}@media(prefers-reduced-motion:reduce){.burst{animation:none;display:none}}@media(max-width:480px){main{padding:16px 12px}.card{padding:20px 16px}.grid{gap:6px}h1{font-size:29px}}
.wb-hint{white-space:pre-line}.wb-unit-note{display:block;font-weight:400;font-size:13px;color:#52617a;margin-top:6px}.wb-prompt{font-size:clamp(24px,5vw,35px);line-height:1.4;overflow-wrap:anywhere}.wb-fields{display:flex;flex-wrap:wrap;gap:12px}.wb-fields label{flex:1 1 100px;font-size:14px;font-weight:700}.wb-fields input{margin-top:8px;font-size:24px}.wb-choices{display:grid;gap:10px}.wb-choices button{font-size:21px;overflow-wrap:anywhere;text-align:left}.wb-divisors{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.wb-divisors button{padding:10px 4px}.wb-columns{margin:20px auto;border-collapse:collapse;font:700 32px ui-monospace,monospace}.wb-columns th,.wb-columns td{padding:7px 12px;text-align:center}.wb-columns thead{font:700 14px system-ui;color:#52617a}.wb-columns tbody tr:last-child{border-bottom:3px solid #172446}.wb-place{display:flex;gap:10px;margin:16px 0}.wb-place div{flex:1;text-align:center;background:#e9f0ff;padding:15px 5px;border-radius:12px}.wb-place strong{display:block;font-size:27px}.wb-place span{font-size:13px}
.choices{grid-template-columns:repeat(2,1fr)}.wb-choices{grid-template-columns:repeat(2,1fr)}.wb-choices button{font-size:19px;text-align:center}.home-actions{display:grid;gap:14px;margin:24px 0}.home-actions button{text-align:left;padding:24px}.home-actions strong{display:block;font-size:22px}.home-actions small{display:block;font-weight:400;margin-top:8px;line-height:1.4}.profile-button{padding:10px 13px;min-height:44px;background:white;border:1px solid #dce4f1}.profile-row{display:flex;gap:10px;margin:10px 0}.profile-row button:first-child{flex:1;text-align:left}#profileName{font-size:20px;max-width:250px;text-align:left}summary{cursor:pointer;font-weight:750;font-size:20px}details[open] summary{margin-bottom:14px}select{display:block;width:100%;padding:14px;font:inherit;border:1px solid #b8cae6;border-radius:12px;margin:8px 0 18px}
.review-row{padding:16px 0;border-bottom:1px solid #dce4f1;overflow-wrap:anywhere}.review-row p{margin:6px 0}.review-row details{margin:8px 0}.review-row summary{font-size:15px}.review-row+button{margin:12px 0}#reviewAnalysis{margin:0 10px 12px 0}#profileSettings{margin-bottom:12px}.review-row .wb-hint{font-size:15px}
