/* Readable defaults, optional larger text and touch-friendly controls. */
:root{--read-size:18px;--note-size:16px;--control-size:18px;--read-heading:24px}
body.reading-large{--read-size:22px;--note-size:20px;--control-size:22px;--read-heading:28px}
body{font-size:var(--read-size);line-height:1.8}#app{max-width:620px}
#screen p,.modal p,#screen .why,.modal .why,#screen .scene{font-size:var(--read-size)!important;line-height:1.85;overflow-wrap:anywhere}
#screen .sub,#screen small,.modal .sub,.modal small,#screen .foot{font-size:var(--note-size)!important;line-height:1.75}
#screen h1{font-size:calc(var(--read-heading) + 4px)!important;line-height:1.5}#screen h2,.modal h3{font-size:var(--read-heading)!important;line-height:1.5}
#screen .btn,.modal .btn,#screen .gitem,#screen .chips button{font-size:var(--control-size)!important;min-height:52px;line-height:1.7;white-space:normal;overflow-wrap:anywhere}
button,input,select,textarea{touch-action:manipulation}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,a:focus-visible{outline:3px solid #efab58;outline-offset:3px}
#screen input,#screen select,#screen textarea{font-size:var(--control-size)!important;min-height:48px;max-width:100%}
.easy-tools{padding:10px 12px;display:flex;gap:10px;background:#193d32;border-bottom:1px solid #50715f}
.easy-tools button{flex:1;background:#fffaf0;color:#193d32;border:1px solid #bfcdbb;border-radius:12px;padding:10px 8px;min-height:48px;font-size:16px;font-weight:700;line-height:1.5}
.easy-tools button[aria-pressed=true]{background:#f4d19a;border-color:#f4d19a}
.easy-help ol{padding-left:1.6em}.easy-help li{margin:14px 0}.easy-help h2{font-size:var(--read-heading)}
.field-school{font-size:var(--read-size)}.field-school .school-grid{grid-template-columns:1fr}
.field-school .school-top{display:flex;gap:10px;margin-bottom:18px}.field-school .school-top .btn{flex:1;margin:0;padding:10px;font-size:var(--note-size)!important;min-width:0}
.field-school .operation-hint{background:#e6eee2;border:1px solid #bdcdb9;border-radius:12px;padding:14px;margin:14px 0;font-size:var(--note-size);line-height:1.8}
.field-school .step-label{font-weight:700;color:#385b49;border-bottom:2px solid #bdd1b3;padding-bottom:10px}
.field-school .explain-part{background:#fffaf0;padding:16px;border-radius:14px;margin:12px 0;border:1px solid #d2d9c9}
.field-school .explain-part h2{margin:0 0 10px}.field-school .explain-part h2::before{display:none}
.field-school .answer-option{display:flex;gap:12px;align-items:flex-start}.field-school .answer-check{flex:0 0 25px;text-align:center;font-weight:800}
.field-school .answer-option.selected{border:3px solid #315e48;background:#e0edda;padding:13px 14px}
.field-school .answer-status{min-height:2em}.field-school .btn:disabled{background:#dce0d7;color:#59665b;border:1px solid #b3bdb0;cursor:not-allowed;opacity:1}
.field-school .lesson-feedback h2{margin-top:0}.field-school .lesson-feedback h3{font-size:var(--read-size);margin-bottom:4px}
.field-school .lesson-status,.field-school .practice-note,.field-school .sources-note,.field-school figcaption{font-size:var(--note-size);line-height:1.75}
.field-school .eyebrow{font-size:var(--note-size)!important;letter-spacing:0}.field-school .lesson-card h2{font-size:var(--control-size)!important}
.field-school summary{font-size:var(--control-size);padding:8px 0;min-height:48px}.field-school .figure-expand{font-size:var(--note-size);min-height:48px}
.f-sun{fill:#e8b962}.f-rain-cloud{fill:#98b2b1;stroke:#5b807f;stroke-width:2}
.hud-row1{flex-wrap:wrap;font-size:var(--note-size)}.hud-mt{flex-basis:100%;white-space:normal}
.gauges{flex-wrap:wrap}.gauge{min-width:145px;font-size:14px}.gauge i{width:auto;min-width:30px}.gauge b{font-size:14px}
.reading-large .gauge{font-size:18px}.reading-large .gauge b{font-size:18px;width:35px}
.reading-large .chips{flex-wrap:wrap}.reading-large .row{flex-wrap:wrap}
.modal{max-height:88dvh;overflow-y:auto}.modal:has(.figure-zoom){max-height:92dvh}.figure-zoom{max-height:54dvh}
@media(max-width:380px){main{padding-left:10px;padding-right:10px}.field-school .school-top .btn{padding:8px 5px}.learning-block,.field-school .explain-part{padding:14px}.easy-tools{padding:8px 10px}.gauge{min-width:130px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

#screen .field-school .school-top .btn{font-size:var(--note-size)!important}

.help-close-bar{position:sticky;top:-12px;z-index:1;background:var(--panel);padding:4px 0 8px}.help-close-bar .btn{margin:0;text-align:center}.easy-help h2{margin-top:12px}
