.modular-hero{padding-bottom:2rem}.modular-lab{color:#1d3c32;padding:1.25rem .75rem 4rem}.modular-nav{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.6rem}.modular-nav a{border:1px solid #c9dbce;border-radius:999px;padding:.6rem 1rem;color:#174c3b;background:#f5faf5;text-decoration:none;font-weight:700}.modular-nav a:hover,.modular-nav a:focus-visible{background:#e3f2e7}.modular-section{scroll-margin-top:2rem;margin:2rem 0 3rem}.modular-section>h2{margin-bottom:.5rem}.modular-path-grid,.modular-tools-grid,.modular-problems{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.modular-card{background:#fff;border:1px solid #d6e2d6;border-radius:1.25rem;padding:clamp(1rem,2.5vw,1.6rem);box-shadow:0 7px 24px #183a2910}.modular-card h3{font-size:1.2rem;line-height:1.3;margin:.15rem 0 .85rem}.modular-card p{line-height:1.6}.modular-step{text-transform:uppercase;letter-spacing:.07em;font-size:.74rem;font-weight:800;color:#557a57;margin:0}.modular-formula{background:#eff6ee;border-left:4px solid #3b7964;border-radius:.45rem;padding:.65rem .8rem;overflow-wrap:anywhere}.modular-card details{border-top:1px solid #dce6dc;padding-top:.7rem}.modular-card summary{cursor:pointer;font-weight:700;color:#255d45}.modular-tool{display:flex;flex-direction:column;align-items:stretch;gap:.55rem}.modular-tool label,.modular-card>label{font-weight:650;display:block}.modular-tool input,.modular-tool select,.modular-card>label input{display:block;width:100%;min-height:44px;margin-top:.3rem;padding:.5rem .65rem;border:1px solid #9db9a9;border-radius:.55rem;color:#173f32;background:#fff}.modular-tool button{align-self:flex-start;margin-top:.35rem}.modular-tool output{display:block;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55;min-height:1rem}.modular-tool output:not(:empty),.modular-solution,.modular-hint{background:#f2f7f2;border-radius:.7rem;padding:.8rem;margin-top:.5rem}.modular-tool output.modular-error{background:#fff0e8;border-left:4px solid #bc6431}.modular-pairs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.modular-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:.8rem 0}.modular-actions button{min-height:42px}.modular-feedback{font-weight:700;min-height:1.3rem}.modular-feedback.correct{color:#17683e}.modular-feedback.incorrect{color:#a74726}.modular-progress{background:#eaf5ed;border-radius:.7rem;padding:.8rem 1rem;font-weight:750}.modular-explore{max-width:760px}.modular-training-question{font-size:1.15rem;font-weight:700}.modular-circle{position:relative;width:min(100%,320px);aspect-ratio:1;margin:1rem auto;border:2px solid #8cae93;border-radius:50%;background:radial-gradient(circle,#fff 45%,#f1f8f1 100%)}.modular-circle span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) translate(var(--x),var(--y));display:grid;place-items:center;width:2rem;height:2rem;border-radius:50%;background:#e7efe5;border:1px solid #5b8b6c;font-weight:750}.modular-circle span.active{background:#e9aa4d;color:#1f341e;border-color:#a86e22}.modular-cycle{display:flex;flex-wrap:wrap;gap:.35rem;margin:.6rem 0}.modular-cycle span{background:#e9f2e8;padding:.35rem .6rem;border-radius:.45rem;font-weight:700}.modular-cycle span.repeat{background:#ffecbc}.modular-lab [hidden]{display:none!important}.modular-lab :is(button,input,select,summary,a):focus-visible{outline:3px solid #dba33d;outline-offset:3px}@media(max-width:760px){.modular-path-grid,.modular-tools-grid,.modular-problems{grid-template-columns:1fr}.modular-actions button{flex:1 1 auto}.modular-pairs{grid-template-columns:repeat(2,minmax(0,1fr))}}
.modular-chinese-history{max-width:900px;margin:1rem 0 1.5rem}.modular-chinese-group{margin:2rem 0}.modular-chinese-group>h3{font-size:1.45rem;margin-bottom:1rem}.chinese-problem h4{font-size:1.18rem;margin:.15rem 0 .8rem}.chinese-problem .modular-formula{line-height:1.7}.chinese-problem .modular-formula code{white-space:normal}.chinese-problem .chinese-bound{font-weight:650}.chinese-problem .modular-answer-label{display:block;font-weight:700}.chinese-problem .chinese-answer{display:block;width:100%;min-height:44px;margin-top:.35rem;padding:.55rem .7rem;border:1px solid #9db9a9;border-radius:.55rem;color:#173f32;background:#fff}.chinese-problem details{margin-top:.5rem}.chinese-problem details>div{white-space:pre-line;line-height:1.65;padding:.7rem 0;overflow-wrap:anywhere}
