.login-gate{max-width:560px;margin:2rem auto;padding:2.5rem;display:grid;gap:1.25rem}.login-gate h1{font-size:2rem}.login-gate .button{width:100%}.correction-card{text-align:left;border-left:4px solid #15826d}.correction-card h3{margin:1rem 0 .5rem}.correction-card p{margin:.65rem 0;white-space:pre-wrap;overflow-wrap:anywhere}.lesson-reflection{margin-top:2rem;text-align:left}.lesson-reflection>p{margin:.7rem 0 1.2rem}.writing-board{width:min(100%,420px);aspect-ratio:1;border:1px solid #abc3d0;background:#fff;margin:1rem auto}.writing-board canvas{display:block;width:100%;height:100%;touch-action:none}.practice .mode-switch{flex-wrap:wrap}.practice audio{width:100%;margin:1rem 0}.practice textarea,textarea{width:100%;min-height:90px;font:inherit;padding:.8rem;border:1px solid #b9cbd2;border-radius:10px;resize:vertical}.practice details,details{margin:.8rem 0}summary{cursor:pointer;font-weight:650}#practice-status,.retry-status{margin:1rem 0;color:#146d5b}.result{max-width:900px}.correction-card form{margin-top:1rem}#dialog{max-height:90dvh;overflow:auto}#rule-preview{border-top:1px solid #cbd9e2;padding-top:1rem}.mode-switch{overflow-x:auto}.table-wrap td{overflow-wrap:anywhere;max-width:400px}@media(max-width:600px){.login-gate{padding:1.5rem;margin:.5rem auto}.practice .button{min-height:44px}.correction-card{padding:1rem}.login-gate h1{font-size:1.7rem}}
