
:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#172033;background:#f5f7fb}*{box-sizing:border-box}body{margin:0}header{padding:28px;text-align:center;background:linear-gradient(135deg,#eaf2ff,#fff7e8)}main{max-width:1100px;margin:auto;padding:20px}.tabs,.row{display:flex;gap:8px;flex-wrap:wrap}.tabs button,.row button,button{border:0;border-radius:10px;padding:10px 14px;font-weight:700;cursor:pointer}.primary{background:#275d9b;color:white}button:disabled{opacity:.45;cursor:not-allowed}.card{background:white;border:1px solid #dfe5ec;border-radius:18px;padding:18px;margin:14px 0;box-shadow:0 8px 24px #17203312}.pane{display:none}.pane.active{display:block}textarea,input,select{width:100%;padding:11px;border:1px solid #cbd5e1;border-radius:10px;margin:7px 0;font:inherit}textarea{min-height:100px}.chat{height:320px;overflow:auto;background:#111827;color:#f8fafc;border-radius:12px;padding:12px;white-space:pre-wrap}.status{padding:9px;border-radius:9px;background:#eef3f9;margin:8px 0;color:#42526b}.muted{color:#637083}.pill{display:inline-block;background:#e8fff4;color:#12603d;border-radius:999px;padding:4px 9px;font-weight:700;font-size:12px}h1{margin:0}.lesson{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.lesson button{text-align:left;background:#eef3f9}.doc{min-height:180px;white-space:pre-wrap;background:#f8fafc;padding:12px;border-radius:10px}.speechline{display:grid;grid-template-columns:auto minmax(180px,300px) 1fr;gap:10px;align-items:center}.micstatus{font-weight:700;color:#8b2535}.notice{background:#fff7df;border-left:5px solid #e0a100;padding:12px;border-radius:8px;margin-bottom:14px}.formgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.formgrid label{font-weight:700}.officer{min-height:120px;background:#101827;color:#eef6ff;border-left:7px solid #275d9b;border-radius:12px;padding:20px;font:1.15rem/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre-wrap}.feedback,.webresults{margin-top:12px;padding:14px;background:#eef6ff;border-radius:10px;white-space:pre-wrap}.quiz{margin-top:18px;padding:16px;border:2px solid #b8c9dd;border-radius:14px}.webresults a{color:#164f91}.webresults p{margin:.6em 0}@media(max-width:620px){main{padding:10px}.speechline{grid-template-columns:1fr}.chat{height:270px}.tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:5px}.tabs button{white-space:nowrap}}
