/* Common learning controls, sized for a phone as well as a desktop. */
button,summary,[role="button"]{touch-action:manipulation}
button:not(.theme):not(.math-unit-card):not(.math-skill-card),summary,.outline{min-height:44px}
.header-actions b,.header-actions .active-name{display:block!important;font-size:14px;flex-basis:100%;text-align:right}
.home-intro{margin:26px 0 22px}.home-intro h1{font-size:clamp(25px,5vw,36px);line-height:1.5}.home-intro p{font-size:16px;line-height:1.9;margin-top:8px}
.home-tools{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.home-tools>*{flex:1;min-width:145px}
.catalog-tools{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:20px 0}.catalog-tools label{display:grid;gap:6px;flex:1;min-width:130px;font-size:14px}.catalog-tools input,.catalog-tools select{min-height:46px;min-width:0;max-width:100%;padding:8px 10px;border:1px solid #aba4bd;border-radius:6px;background:white;color:inherit;font:inherit}
.resume-panel{padding:18px;margin:16px 0;border:2px solid #a397cf;border-radius:9px;background:#f5f2ff}.resume-panel p{margin:6px 0 12px;line-height:1.8}.resume-panel .action-line{display:flex;gap:12px;flex-wrap:wrap}
.grade-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.grade-tabs button{flex:1;min-width:48px;padding:10px 8px;border:1px solid #b5aec7;background:white;border-radius:7px;font:inherit;color:inherit}.grade-tabs button[aria-pressed=true]{background:#6250ac;color:white;border-color:#6250ac}
.math-note .grade-tabs button[aria-pressed=true],body:has(#math-app) .grade-tabs button[aria-pressed=true]{background:#1c59b3;border-color:#1c59b3}
.problem.words,.math-question-prompt{font-size:clamp(21px,4vw,25px);line-height:1.9;overflow-wrap:anywhere}.hints li,.math-hints>p,.feedback,.math-feedback p,.history-answer,.review-list details{font-size:16px;line-height:1.9}
.input-guide,.math-input-note,.math-paper-note,.side-note{font-size:14px;line-height:1.8}
.question-table-scroll{width:100%;overflow:auto}.question-table-scroll table{max-width:100%;margin:20px auto;border-collapse:collapse}.question-table-scroll th,.question-table-scroll td{border:1px solid #b3bed4;padding:10px 14px;white-space:nowrap;font-size:16px}
.progress-meter{width:min(220px,100%);height:10px;border-radius:8px;background:#e9e5f2;overflow:hidden}.progress-meter span{display:block;height:100%;background:#7562bc}
.zoomable-figure{margin:20px auto;text-align:center;max-width:100%;padding:10px;border:1px solid #d7d7e7;border-radius:8px;background:#fff}.figure-content{max-width:550px;margin:auto}.figure-content svg{max-width:100%;height:auto}.zoomable-figure figcaption{font-size:13px;line-height:1.7;margin:8px 0}.zoomable-figure button{font-size:14px;margin-top:8px}
.figure-dialog{width:min(95vw,950px);max-height:90vh;border:1px solid #c5c5dc;border-radius:12px;padding:18px}.figure-dialog::backdrop{background:#17263b88}.figure-dialog form{text-align:right}.figure-dialog>div{min-width:0;overflow:auto}.figure-dialog svg{display:block;width:100%;max-width:100%;min-width:0;max-height:65vh;height:auto}.figure-dialog .geometry-figure{max-width:none;padding:0;margin:16px 0 0;border:0}
.reflection{margin:16px 0;border:1px solid #ddd4b5;border-radius:6px;padding:12px;display:flex;flex-wrap:wrap;gap:8px;font-size:14px}.reflection legend{font-weight:600;line-height:1.7}.reflection label{display:flex;align-items:center;gap:6px;min-height:44px;padding:7px;background:white;border-radius:4px;cursor:pointer}.reflection input{width:18px;height:18px}
.profile-settings{margin:25px 0;padding:16px;border:1px solid #d7d7e7;border-radius:7px}.profile-settings form{margin-top:15px;display:grid;gap:12px}.profile-settings label{display:grid;gap:6px}.profile-settings input,.profile-settings select{height:46px;border:1px solid #aab4c8;padding:8px;font:inherit;min-width:0}
.math-keyboard{width:min(100%,480px)}.math-keyboard-grouped .key-groups{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:9px}.key-group{min-width:0;padding:8px;border:1px solid #d9d6e7;border-radius:6px}.key-group h3{font-size:13px;margin:0 0 8px}.key-group-numbers{grid-row:span 2}.key-group-aux,.key-group-tools{grid-column:1/-1}.key-group .key-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.key-group-aux .key-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.math-keyboard .key-grid button,.math-keyboard .key-tools button{min-height:46px;font-size:18px}.math-keyboard .key-tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.math-keyboard .key-tools button{font-size:14px}.math-keyboard summary{font-size:15px;padding:6px 0}
.result-detail{margin:20px 0}.result-detail summary{cursor:pointer;line-height:1.8;padding:10px 0;font-size:16px}.result-detail>div{padding:12px;border-top:1px solid #ddd;font-size:16px;line-height:1.85}.review-hints{margin-top:12px}.review-hints li{margin:8px 0}.recovery-count{margin-top:16px;padding:16px;background:#eaf7ef;border-radius:8px;color:#245938;line-height:1.8}
.trend-list{display:grid;gap:12px;margin:20px 0}.trend-row{border-bottom:1px solid #ddd;padding-bottom:12px;font-size:15px;line-height:1.8}.trend-row strong{display:block}.trend-row .progress-track{height:9px;background:#e9e7f0}.trend-row .progress-track span{display:block;height:100%;background:#5478b9}.record-period{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.record-period button{padding:10px 16px;border:1px solid #a7a9bd;background:white;border-radius:7px;color:inherit;font:inherit}.record-period button[aria-pressed=true]{background:#e8e4f6;font-weight:700}.record-note{font-size:14px;line-height:1.8;color:#526078}.history-pagination{margin:20px 0}.insight-item a,.insight-item button,.math-insight-list button{font:inherit;color:inherit;text-align:left;background:transparent;border:0;padding:4px 0;text-decoration:underline;cursor:pointer}
.theme-bottom{font-size:14px;line-height:1.7}.theme{min-height:210px}.math-hints,.step-example{overflow-wrap:anywhere}
h1[tabindex="-1"]:focus{outline:none}
.step-example{margin-top:18px;padding:14px;background:#f4f1fb;border-radius:8px;font-size:16px;line-height:1.9}.step-example ol{padding-left:24px}.step-example li{padding:4px 0}
@media(max-width:700px){.header-actions{gap:5px!important}.header-actions button{font-size:13px!important;padding:8px!important}.header-actions b,.header-actions .active-name{text-align:left}.paper{min-width:0}.problem-zone{padding:20px 16px}.math-question-card{padding:20px 16px}.home-tools>*{min-width:100%}.workspace-title{flex-wrap:wrap}.math-result-actions>*{width:100%}.math-answer-form{width:100%}.math-answer-form>input{width:100%}.math-choices{grid-template-columns:1fr}.theme h3{font-size:19px}.theme p{font-size:14px}.math-unit-copy>span,.math-skill-card>span{font-size:14px}.math-insight-list li small{white-space:normal}}
