
:root{--black:#030303;--panel:#090909;--red:#d71920;--yellow:#f5c400;--white:#f4f4f4;--muted:#bdbdbd;--green:#8be194;--line:#2b2b2b}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--black);color:var(--white);font-family:Inter,Segoe UI,Arial,Helvetica,sans-serif;line-height:1.5}a{color:inherit}
.topbar{min-height:82px;border-bottom:1px solid #181818;display:flex;align-items:center;justify-content:center;padding:14px 170px;position:relative}.logo{color:var(--red);text-decoration:none;font-weight:950;font-size:clamp(2rem,5vw,4rem);letter-spacing:-.05em}.tm-mark{font-size:.38em;vertical-align:super;margin-left:.08em;line-height:0}.corner{position:absolute;width:118px;height:145px;object-fit:cover;object-position:50% 20%;border-radius:10px;top:10px;left:18px}.profile{position:absolute;right:18px;top:8px;width:126px;z-index:20;text-align:center}.profile img{width:118px;height:145px;object-fit:cover;object-position:50% 20%;border-radius:10px;display:block;margin-left:auto}.menu-toggle{margin-top:5px;width:118px;min-height:44px;border:1px solid var(--yellow);background:#050505;color:var(--yellow);border-radius:7px;font-weight:900;cursor:pointer}.dropdown{display:none;position:absolute;top:196px;right:0;width:220px;padding:8px;background:#050505;border:1px solid var(--yellow);border-radius:10px;text-align:left}.dropdown.open{display:block}.dropdown a{display:block;text-decoration:none;color:var(--yellow);padding:10px 11px;border-radius:7px;font-weight:800}.dropdown a:hover{background:#191300}
.main{width:min(900px,calc(100% - 32px));margin:0 auto;padding:36px 0 44px}.back{display:inline-block;margin-bottom:18px;color:var(--yellow);text-decoration:none;font-weight:800;font-size:.88rem}.page-title{color:var(--yellow);text-align:center;font-size:clamp(1.8rem,5vw,2.8rem);margin:0 0 9px}.topic-description{max-width:760px;margin:0 auto 20px;color:#d6d6d6;line-height:1.55;text-align:center}
.practice-controls{display:flex;align-items:center;gap:10px;justify-content:center;flex-wrap:wrap;margin:0 0 16px;padding-bottom:14px;border-bottom:1px solid #202020}.practice-controls label{color:var(--yellow);font-weight:900}.practice-controls select{min-height:44px;border:1px solid #555;border-radius:8px;background:#080808;color:#fff;padding:8px 36px 8px 11px;font:inherit;font-weight:800}.practice-controls select:focus{outline:2px solid var(--yellow);outline-offset:2px}
/* v10.6.3.C: use one consistent, readable selector treatment on every practice engine. */
.controls{display:flex;align-items:flex-end;justify-content:center;gap:12px;flex-wrap:wrap;margin:0 0 16px;padding-bottom:14px;border-bottom:1px solid #202020}
.control{display:flex;flex-direction:column;gap:5px;min-width:190px}
.control label{color:var(--yellow);font-weight:900;font-size:.88rem}
.control select{width:100%;min-height:44px;border:1px solid #555;border-radius:8px;background:#080808;color:#fff;padding:8px 36px 8px 11px;font:inherit;font-weight:800;line-height:1.25}
.control select:focus{outline:2px solid var(--yellow);outline-offset:2px}
@media(max-width:560px){.controls{align-items:stretch}.control{width:100%;min-width:0}.control select{width:100%}}
.practice-shell{max-width:780px;margin:0 auto;border:1px solid var(--line);border-radius:15px;background:var(--panel);padding:18px}.stats{font-size:.88rem;color:var(--muted);border-bottom:1px solid #202020;padding-bottom:12px;margin-bottom:16px}.stats strong,.stats span{color:#fff}.question-box{min-height:150px;border:1px solid #303030;border-radius:12px;background:#030303;padding:24px 18px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:clamp(1.05rem,3vw,1.4rem);overflow-x:auto}.question-box table{border-collapse:collapse;margin:10px auto;font-size:.92rem}.question-box th,.question-box td{border:1px solid #555;padding:6px 10px}.question-prompt{font-size:.88rem;color:#c7c7c7;margin-bottom:12px;font-weight:800}.choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.choice{min-height:52px;border:1px solid #454545;border-radius:9px;background:#111;color:#f4f4f4;padding:10px 12px;font-weight:800;cursor:pointer;font-size:1rem}.choice:hover:not(:disabled){border-color:var(--yellow);color:var(--yellow)}.choice.correct{border-color:#66c977;background:#0e2412;color:#a5efad}.choice.wrong{border-color:#d71920;background:#28090b}.choice:disabled{cursor:default;opacity:.9}.feedback{margin-top:14px;min-height:0}.feedback.shown{border:1px solid #303030;border-radius:10px;background:#070707;padding:13px 14px}.feedback .result{font-weight:900;margin-bottom:7px}.feedback .result.good{color:var(--green)}.feedback .result.bad{color:#ff8f93}.feedback .method{color:#ddd;line-height:1.65}.actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:14px}.btn{min-height:44px;border-radius:8px;padding:9px 14px;font-weight:900;cursor:pointer}.btn.primary{background:var(--red);border:1px solid var(--red);color:#fff}.btn.secondary{background:#111;border:1px solid var(--yellow);color:var(--yellow)}.btn[hidden]{display:none}.footer{width:min(850px,calc(100% - 36px));margin:44px auto 0;padding:16px 0 22px;border-top:1px solid #9e1116;text-align:center;color:var(--yellow);font-size:.78rem}.bm-footer-links{margin-top:6px}.bm-footer-links a{color:var(--yellow)}.bm-legal-note{margin-top:8px;color:#aaa}
@media(max-width:760px){.topbar{padding:13px 100px;min-height:74px}.corner{width:72px;height:88px;left:8px}.profile{width:78px;right:8px}.profile img{width:72px;height:88px}.menu-toggle{width:72px;font-size:.65rem}.dropdown{top:134px;width:190px}.main{padding-top:28px}.practice-shell{padding:12px}.choice-grid{grid-template-columns:1fr}.question-box{padding:18px 10px;text-align:left}.question-box table{font-size:.82rem}.question-box th,.question-box td{padding:5px 7px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.composite-answer{display:block}.practice-answer-input{width:min(100%,360px);min-height:46px;padding:10px 12px;border-radius:9px;border:1px solid #555;background:#070707;color:#fff;font:inherit;margin:4px 0 12px}.practice-answer-input.correct{border-color:#63c174}.practice-answer-input.wrong{border-color:#d85a5a}.classification-row{display:flex;gap:10px;flex-wrap:wrap}.classification-row .choice{flex:1 1 180px}.correct-answer{margin:.4rem 0;color:#f5c400;font-weight:800}
.composite-answer{display:block}.practice-answer-input{width:min(100%,360px);min-height:46px;padding:10px 12px;border-radius:9px;border:1px solid #555;background:#070707;color:#fff;font:inherit;margin:4px 0 12px}.practice-answer-input.correct{border-color:#63c174}.practice-answer-input.wrong{border-color:#d85a5a}.classification-row{display:flex;gap:10px;flex-wrap:wrap}.classification-row .choice{flex:1 1 180px}.correct-answer{margin:.4rem 0;color:#f5c400;font-weight:800}
/* v10.6.3.A: long Riemann-sum choices stay readable on laptop screens. */
.two-stage-grid{grid-template-columns:1fr}.two-stage-grid .choice{width:100%;min-width:0;overflow-x:auto;white-space:normal;line-height:1.55;padding:14px 16px}.two-stage-grid mjx-container{max-width:100%;overflow-x:auto;overflow-y:hidden}
