:root{color-scheme:light;--paper:#f5f3ec;--ink:#203b34;--green:#215e50;--edge:#c5d4cb;--muted:#4e6559;--amber:#945207}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 system-ui,-apple-system,"PingFang SC","Microsoft YaHei",sans-serif}a{color:var(--green)}button,input,select,textarea{font:inherit;color:inherit}button{min-height:46px;padding:10px 14px;border:1px solid #93aa9d;border-radius:9px;background:#fffefa;font-weight:650;cursor:pointer;touch-action:manipulation}button:hover:not(:disabled){background:#e1ebe3}button.primary,[aria-pressed="true"]{background:var(--green);color:white;border-color:var(--green)}button.primary:hover:not(:disabled),button[aria-pressed="true"]:hover:not(:disabled){background:#184c40}button:disabled{opacity:.48;cursor:default}button.danger,.error,[data-state="error"]{color:#923726}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #bc7925;outline-offset:3px}.topbar{max-width:1120px;margin:auto;display:flex;align-items:center;gap:12px;padding:12px 20px}.topbar strong{margin-right:auto;font-size:20px}.topbar button{font-size:14px}.sticky-tools{position:sticky;top:0;z-index:5;background:#f5f3ecf5;border-block:1px solid var(--edge);padding:8px max(16px,calc((100vw - 1080px)/2));backdrop-filter:blur(12px)}.journey{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.journey button{white-space:normal}.transport{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px}#clock{font-variant-numeric:tabular-nums;font-weight:750;min-width:42px}#global-stop{margin-left:auto}#status{font-size:14px;margin:6px 0 0;line-height:1.35;max-height:4em;overflow:auto}#status:empty{display:none}main{max-width:1000px;margin:auto;padding:20px}.panel{background:#fffefa;border:1px solid var(--edge);border-radius:16px;padding:24px}h1{font-size:clamp(25px,4vw,36px);line-height:1.25;margin:0 0 14px}h2{font-size:21px;margin:18px 0 10px}p{margin:10px 0}.eyebrow{font-size:13px;font-weight:700;letter-spacing:.05em;color:var(--muted)}.small{font-size:14px;color:var(--muted)}.actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:14px 0}.fields{display:flex;flex-wrap:wrap;gap:14px;margin:12px 0}.fields>label{flex:1 1 180px;min-width:0}label{display:block;font-size:15px;font-weight:600;margin:10px 0}input,select,textarea{display:block;width:100%;min-width:0;min-height:46px;margin-top:6px;padding:10px;border:1px solid #93aa9d;border-radius:8px;background:white;font-size:16px}textarea{resize:vertical}.check{display:flex;align-items:center;gap:8px}.check input{width:24px;min-height:24px;margin:0}audio{display:block;width:100%;max-width:650px;min-height:44px}#take-count{align-self:center;color:var(--muted)}.listen{border-left:4px solid var(--green);padding-left:16px}.save-area{padding:12px 16px;background:#eaf0e7;border-radius:12px;margin:16px 0;display:flex;align-items:center;flex-wrap:wrap;gap:10px}.save-area p{flex:1 1 240px;margin:0}#save-status[data-state="success"]{color:#215e50}#save-status[data-state="pending"]{color:#73501b}#backup-status:empty,#import-status:empty,.error:empty,#comparison-status:empty{display:none}#analysis-status{font-size:14px;color:var(--muted)}#compare-controls{border-top:1px solid var(--edge);padding-top:8px}details{border:1px solid var(--edge);padding:14px;border-radius:10px;margin:16px 0}summary{font-weight:700;cursor:pointer;min-height:30px}details[open]>summary{margin-bottom:12px}.backup{border-top:1px solid var(--edge);padding-top:12px;margin-top:20px}.roll-wrap{max-width:100%;overflow:auto;background:#f6faf7;border:1px solid var(--edge);border-radius:10px}#roll{display:block;min-width:100%;height:330px}.note{fill:#23624d;stroke:white;stroke-width:1;cursor:pointer}.note.selected{stroke:#9e560a;stroke-width:3;fill:#153c2e}.comparison{fill:none;stroke:#9e560a;stroke-width:2;stroke-dasharray:5 3;pointer-events:none}.contour{fill:none;stroke:#087f6c;stroke-width:2.2;pointer-events:none}.note-target{fill:transparent;cursor:pointer;touch-action:manipulation}[hidden]{display:none!important}body[data-recording="true"] .sticky-tools{border-bottom:3px solid #9d3926}body[data-recording="true"] #clock{color:#9d3926}dialog{max-width:620px;width:calc(100% - 32px);border:1px solid var(--edge);border-radius:16px;padding:24px;background:#fffefa;color:var(--ink)}dialog::backdrop{background:#132e25a8}dialog button{margin:8px 8px 0 0}.class-mode>.topbar,.class-mode>.sticky-tools,.class-mode>main{display:none!important}#classroom{position:fixed;inset:0;z-index:20;overflow:auto;padding:24px;background:#faf9f1;font-size:clamp(20px,2vw,28px)}.class-toolbar{position:sticky;top:-24px;z-index:2;display:flex;gap:12px;background:#faf9f1;padding:14px 0;border-bottom:2px solid var(--green)}.class-toolbar button,.class-cues button,#classroom .actions button{min-height:60px;font-size:clamp(18px,1.8vw,25px);padding:12px 20px}.class-toolbar #class-stop{background:#8d2d21;color:#fff}.class-cues{display:flex;gap:14px;margin:20px 0}#class-prompt{font-size:clamp(30px,3.4vw,52px);margin:22px 0}#class-roll{display:block;width:100%;height:clamp(260px,45vh,500px);background:#fff;border:2px solid var(--edge);border-radius:12px}#class-roll text{font-size:16px}#class-roll .contour{stroke-width:3}#class-roll .note{pointer-events:none}#classroom>p{max-width:1100px}#class-state:empty{display:none}@media(max-width:600px){.topbar{padding:8px 12px;gap:8px;flex-wrap:wrap}.topbar strong{font-size:18px}.topbar a{font-size:14px}.topbar button{padding:8px;min-height:44px}.sticky-tools{padding:8px 12px}.journey button{font-size:14px;padding:8px 3px;min-height:44px}.transport{gap:6px}.transport button{font-size:14px;padding:8px}.transport #global-stop{margin-left:0}#clock{font-size:15px;min-width:36px}main{padding:12px}.panel{padding:16px;border-radius:12px}h1{font-size:26px}.fields{gap:10px}.fields>label{flex-basis:140px}.save-area{padding:12px}.save-area button{width:100%}.save-area p{flex-basis:100%}#classroom{padding:12px;font-size:20px}.class-toolbar{top:-12px;flex-wrap:wrap;gap:6px}.class-toolbar button,.class-cues button,#classroom .actions button{min-height:56px;padding:8px;font-size:18px}.class-cues{gap:6px}#class-prompt{font-size:30px}.class-toolbar #class-exit{margin-left:auto}}

.topbar #language{margin-left:auto;white-space:nowrap}#class-language{order:10;margin-left:auto;background:#fffefa;color:var(--ink);border-color:#93aa9d}
@media(max-width:600px){.topbar #present{order:3;width:100%}.topbar strong{font-size:16px}.topbar #language{font-size:12px}.class-toolbar #class-language{font-size:15px;min-height:44px}}
