:root{color-scheme:light;--ink:#352e20;--green:#b87500;--line:#eadfc5;--muted:#776d57}*{box-sizing:border-box}body{margin:0;background:#fffbef;color:var(--ink);font:17px/1.5 system-ui,-apple-system,"Microsoft YaHei",sans-serif}main{max-width:760px;margin:auto;padding:20px 16px 110px}header{display:flex;gap:12px;align-items:center;margin-bottom:22px}header h1{font-size:23px;margin:0}header p{margin:0;color:var(--muted);font-size:14px}header .quiet{margin-left:auto}.logo{display:grid;place-items:center;width:48px;height:48px;background:#ffd54a;border-radius:16px;color:#493100;font-size:25px;font-weight:bold}.card{background:white;border:1px solid var(--line);border-radius:18px;padding:18px;margin:14px 0}h2{font-size:21px;margin:0 0 10px}p{margin:8px 0}label{display:block;font-weight:600;margin:10px 0 6px}input,select,textarea{font:inherit;color:inherit;width:100%;border:1px solid #becdc5;border-radius:10px;padding:12px;background:#fff}textarea{resize:vertical;min-height:132px}button{font:inherit;min-height:48px;border:1px solid var(--line);border-radius:11px;background:#f6f9f6;color:var(--ink);padding:10px 14px;cursor:pointer;touch-action:manipulation}button:disabled{opacity:.4;cursor:default}.primary{background:var(--green);color:#fff;border-color:var(--green)}.quiet{background:transparent;border-color:transparent}.inline{display:flex;gap:10px}.inline input{min-width:0}form>.primary{width:100%;margin-top:18px}.device>label{margin-top:0}.device p,.hint{color:var(--muted);font-size:14px}summary{cursor:pointer;color:var(--green);margin-top:14px}.page-heading{display:flex;align-items:center;justify-content:space-between}.page-heading strong{font-size:23px}.page-heading span{font-size:13px;color:var(--muted)}.pages{display:flex;gap:10px;overflow-x:auto;padding:12px 0;scroll-snap-type:x proximity}.page{flex:0 0 78px;height:64px;background:white;border:2px solid #e2e9e4;scroll-snap-align:center;font-size:22px}.page.current{border-color:var(--green);background:#edf7f0;color:var(--green);font-weight:700}.modes{display:flex;border-bottom:1px solid var(--line);gap:4px;padding-bottom:12px;margin-bottom:14px}.modes button{flex:1;border:0;padding:7px;font-size:16px}.modes .active{background:#fff1b8;color:var(--green);font-weight:bold}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.actions button{flex:1;white-space:nowrap}.sync{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:normal;color:var(--muted)}.sync input{width:18px;height:18px}.sync span{margin-left:auto}#suggestions{display:grid;gap:9px;margin-top:14px}#suggestions button{text-align:left;background:#fff9e5}#suggestions strong{display:block;font-size:18px}#suggestions span{display:block;color:var(--muted);font-size:14px}#result{white-space:pre-wrap;overflow-wrap:anywhere;font-size:18px}#message{font-size:14px;min-height:24px;color:#6c421e}nav{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;gap:8px;background:#fff;padding:12px 12px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);box-shadow:0 -3px 16px #163b2310}nav button{padding:8px 12px}nav .arrow{font-size:32px;line-height:1;min-width:62px;flex:1;max-width:130px;color:white;background:var(--green)}nav .stop{color:#a53b35;background:#fff2ef}[hidden]{display:none!important}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #81b9a3;outline-offset:2px}@media(max-width:380px){main{padding:14px 10px 105px}.card{padding:14px}nav{gap:4px}nav button{font-size:15px;padding:8px}.modes button{font-size:15px}}

#photoPreview{display:block;max-width:100%;max-height:260px;object-fit:contain;margin:12px auto;background:#f6f7f5;border:1px solid var(--line);border-radius:10px}
header>div{flex:1;min-width:0}header>button{flex:0 0 auto;white-space:nowrap;padding:6px}header .quiet{margin-left:0}

.input-heading{display:flex;align-items:center;justify-content:space-between}.input-heading label{margin:0}.version{color:#8b8064;font-size:12px;text-align:center}.question-options{width:100%}#working{background:#fff3bf;padding:10px;border-radius:10px}nav #toggleAssistant{min-width:105px}.modes{gap:6px}.modes button{min-height:54px}#photoPreview{touch-action:pinch-zoom}#result{line-height:1.7}.primary{background:#ffd54a;border-color:#e3b32a;color:#352e20}.page.current{background:#fff1b8}.actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.actions button{white-space:normal}nav .arrow{background:#eab934;color:#352e20}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-color:#d39a00}
.modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}#practiceActions p{font-size:15px}#result .katex-display{touch-action:pan-x}
/* Mobile classroom controls: keep frequent actions within the first screen. */
html{-webkit-text-size-adjust:100%;scroll-padding-bottom:170px}
main{padding:12px 14px calc(156px + env(safe-area-inset-bottom))}
header{margin-bottom:12px;gap:10px}header h1{font-size:21px}.logo{width:42px;height:42px;border-radius:13px;flex:0 0 42px}
.card{padding:14px;margin:10px 0;border-radius:15px}.device{padding:8px 12px}.device-heading{display:flex;align-items:center;gap:8px}.device-heading p{margin:0;flex:1;min-width:0;line-height:1.45;font-size:14px;overflow-wrap:anywhere}.device-heading button{flex:0 0 auto;min-height:44px;padding:6px 9px;font-size:15px}#devicePanel{padding:3px 0 8px}
.page-heading strong{font-size:20px}.pages{padding:6px 0;gap:8px;scrollbar-width:thin}.page{flex-basis:60px;height:46px;min-height:46px;padding:5px;font-size:20px}
.modes{padding-bottom:8px;margin-bottom:8px}.modes button{min-height:46px;padding:6px 3px}.hint{font-size:13px;line-height:1.5}#source{margin:6px 0 8px}
.input-heading{gap:6px}.input-heading label{font-size:16px}.input-heading .quiet{min-height:40px;padding:6px 7px;font-size:15px;flex:0 0 auto}
textarea{min-height:96px;padding:10px;line-height:1.5;font-size:17px;scroll-margin:12px 0 170px}body.editing textarea{min-height:116px}
.sync{margin:7px 0;min-height:28px}.actions{margin-top:9px}.actions button{min-height:46px;padding:8px;font-size:16px}.question-options summary{margin-top:5px;font-size:14px}
nav{display:block;padding:6px 10px calc(10px + env(safe-area-inset-bottom))}#liveStatus{max-width:730px;margin:0 auto 5px;min-height:23px;font-size:13px;line-height:1.45;color:#6c421e;overflow-wrap:anywhere}#liveStatus.busy{font-weight:600}
.control-buttons{max-width:730px;margin:auto;display:grid;grid-template-columns:minmax(44px,1fr) minmax(96px,1.4fr) minmax(52px,.85fr) minmax(44px,1fr);gap:7px;align-items:stretch}
nav .arrow,nav #toggleAssistant{min-width:0;max-width:none;width:100%}nav button{min-height:48px;padding:7px;font-size:15px}nav .arrow{font-size:29px}nav .stop{white-space:nowrap;font-weight:600}
#result{font-size:17px}#result .katex-display{max-width:100%;overflow-x:auto;overflow-y:hidden;padding:5px 0}#result .katex{white-space:normal;font-size:1.1em}#result .katex-display .katex{white-space:nowrap}
#photoActions input[type=file]{font-size:15px;min-width:0}#photoActions .sync{align-items:flex-start}#photoActions p{font-size:15px}button[aria-busy=true]:not(.stop){border-color:#c59213}
@media(max-width:380px){main{padding:10px 10px calc(156px + env(safe-area-inset-bottom))}.card{padding:12px}.device{padding:7px 10px}header h1{font-size:20px}.modes button{font-size:15px}.control-buttons{gap:5px}.page{flex-basis:56px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}


.answer-remote{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.answer-remote label{display:flex;align-items:center;gap:.4rem;font-size:1rem}.answer-remote button{padding:.55rem .7rem;min-height:44px}#result{max-height:64vh;max-height:64dvh;overflow:auto;overscroll-behavior-y:contain;touch-action:pan-x pan-y;padding:.2rem .35rem .8rem;scrollbar-gutter:stable}#result:focus{outline:2px solid #dfb126}.answer-remote input{width:22px;height:22px}

#result .cloud-formula{display:inline-block;vertical-align:middle;max-width:none;max-height:24rem;background:white}#result .formula-unavailable{white-space:pre-wrap;overflow-wrap:anywhere}

.visual-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:10px}.visual-options label{display:flex;flex-direction:column;gap:5px;font-size:14px}.visual-options select{width:100%;font:inherit;font-size:16px;padding:9px;border:1px solid #cdd6cf;border-radius:10px;background:#fff}.material-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:9px;margin:8px 0 14px}.material-card{min-width:0;border:1px solid #d5dfd8;border-radius:12px;padding:7px;background:#fff;display:flex;flex-direction:column;align-items:center;gap:5px}.material-card img{width:100%;height:90px;object-fit:contain;background:#f1f5f2}.material-actions{display:flex;gap:3px;width:100%}.material-actions button{min-width:0;flex:1;padding:8px 2px;font-size:13px;min-height:38px}#visualPreview{display:block;width:100%;height:auto;border-radius:12px;border:1px solid #d7ded8}#visualPreviewBox{margin:14px 0}#suggestions button.selected{border:2px solid #b68e12;background:#fff3bf}#teacherIdentity{overflow-wrap:anywhere}

.pair-inline{align-items:stretch}.pair-inline input{flex:1;width:0;min-width:0}.pair-inline button{flex:0 0 auto;min-width:88px;white-space:nowrap;word-break:keep-all}

#visualPreviewDialog{width:94vw;max-width:1100px;max-height:90vh;border:1px solid #bdcbc5;border-radius:14px;padding:10px}#visualPreviewDialog::backdrop{background:#0008}.visual-large-scroll{overflow:auto;max-height:75vh;margin-top:8px}.visual-large-scroll img{width:960px;max-width:none;height:auto;display:block}.visual-expanded{min-width:900px}

.pair-status{padding:10px 12px;margin:10px 0 0!important;border:1px solid #e3b32a;border-radius:10px;background:#fff8d7;font-size:15px!important;line-height:1.5;overflow-wrap:anywhere}.pair-status[data-kind="error"]{color:#8a2e26;background:#fff0ed;border-color:#e8b9ad}.pair-status[data-kind="success"]{color:#245b39;background:#eff9f1;border-color:#b3d6bc}
