:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#232628;background:#fff;font-size:16px;--accent:#216b59;--soft:#edf6f2;--border:#e5e7e7}*{box-sizing:border-box}body{margin:0}header{max-width:1120px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:22px 28px}.brand{font-size:27px;font-weight:800;display:flex;gap:12px;align-items:center}.brand>span{font-size:17px;letter-spacing:.5px}.brand small{display:block;font-size:12px;font-weight:400;letter-spacing:0;color:#6c7273;margin-top:3px}main{max-width:1000px;margin:auto;padding:0 28px}button,input,textarea{font:inherit}button{border:1px solid var(--border);border-radius:9px;padding:10px 15px;background:white;color:#343e3c;cursor:pointer}button:hover{background:#f4f5f5}button.primary{background:var(--accent);border-color:var(--accent);color:white}button:disabled{opacity:.45;cursor:default}.subjectbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;border-bottom:1px solid var(--border);padding:12px 0 20px}.subjects{display:flex;flex-wrap:wrap;padding:4px;background:#f4f5f5;border-radius:12px;margin-right:auto}.subjects button{border:none;background:transparent}.subjects button.primary{background:var(--accent);color:#fff}.lesson-heading{padding:24px 0 8px}.lesson-heading h1{font-size:26px;letter-spacing:-.7px;margin:0 0 6px}.lesson-heading p{font-size:13px;color:#707779;margin:0}.school-details{font-size:13px;color:#66716d;border-bottom:1px solid var(--border);padding:10px 0 18px}summary{cursor:pointer;font-weight:600;list-style-position:outside;margin-left:18px}.school-details p{line-height:1.6}.actions{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.shortcuts button{font-size:12px;padding:8px 12px;border-radius:20px}.chat{max-width:850px;margin:0 auto;padding:12px 0 0}.messages{padding-bottom:18px}.message{margin:36px 0;line-height:1.75;overflow-wrap:anywhere}.message-label{font-size:11px;color:#718079;letter-spacing:1.2px;font-weight:700;margin-bottom:12px}.message.user{margin-left:auto;max-width:85%;padding:14px 20px;background:#f1f3f3;border-radius:18px;white-space:pre-wrap}.message.user .message-label{margin-bottom:4px}.rich p{margin:14px 0}.rich h1,.rich h2{font-size:23px;line-height:1.35;margin:30px 0 16px;font-weight:650}.rich h3{font-size:19px;margin:24px 0 10px}.rich h4{font-size:16px}.rich ul,.rich ol{padding-left:26px}.rich li{padding-left:3px;margin:5px 0}.rich blockquote{border-left:3px solid #b7d7ca;padding:4px 18px;color:#52645d;margin:20px 0}.rich hr{border:0;border-top:1px solid var(--border);margin:26px 0}.rich code{background:#f1f3f3;border-radius:4px;padding:2px 4px}.rich pre{padding:16px;background:#f4f5f5;overflow:auto;border-radius:10px}.rich table{border-collapse:collapse;width:100%;margin:22px 0;font-size:14px}.rich th,.rich td{padding:12px;border-bottom:1px solid var(--border);text-align:left}.rich th{background:#f7f8f7}.rich a{color:var(--accent)}.formula.display{display:block;max-width:100%;overflow-x:auto;margin:24px 0;padding:6px 2px}.formula.inline{display:inline}.katex{font-size:1.15em}.katex-display{margin:.25em 0}.katex-display>.katex{text-align:center}.diagram{display:flex;align-items:center;gap:20px;border-top:1px solid var(--border);padding:20px 0;margin:18px 0}.diagram img{width:210px;max-width:45%;height:auto;border-radius:12px}.diagram figcaption{font-size:14px;line-height:1.6}.diagram figcaption strong{display:block;margin-bottom:6px}.composer{position:sticky;bottom:0;background:white;padding:14px;border:1px solid #d5dbd9;border-radius:18px;box-shadow:0 4px 24px #24342d0b;z-index:2;margin-top:22px}.composer textarea{resize:vertical;width:100%;border:0;padding:3px 6px;outline:none;min-height:65px;max-height:220px;line-height:1.5;color:#273a33;background:white}.composer-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px}.composer-bottom span{font-size:11px;color:#89918d}.composer-bottom button{border-radius:20px}.chat-note{text-align:center;font-size:11px!important;margin:14px 0 26px}.records{border-top:1px solid var(--border);padding:20px 0;margin:24px auto;max-width:850px}.evaluation{border-bottom:1px solid var(--border);padding:12px 0}.evaluation p{font-size:14px;line-height:1.5}.muted{color:#74817b;font-size:13px;line-height:1.6}#notice{padding:12px;background:#fff5d9;border-radius:8px;line-height:1.5}#notice:empty{display:none}pre#report{white-space:pre-wrap;background:#f6f8f6;padding:22px;border-radius:10px;font:14px/1.7 system-ui}.card.narrow{max-width:460px;margin:60px auto;padding:30px;border:1px solid var(--border);border-radius:16px}label{display:block;margin:14px 0;font-size:14px}input{display:block;width:100%;padding:12px;border:1px solid #cbd5d0;border-radius:8px;margin-top:6px}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--accent)}footer{text-align:center;padding:24px;color:#88918d;font-size:12px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:3px solid #72baa1;outline-offset:3px}.choices{border:1px solid var(--border);border-radius:14px;padding:18px;margin:22px 0}.choices legend{font-size:13px;font-weight:600}.choices label{display:flex;align-items:flex-start;gap:12px;padding:10px;border-radius:8px;cursor:pointer;line-height:1.5}.choices label:hover{background:#f4f8f6}.choices input{width:auto;margin:5px 0 0}.choices .rich p{margin:0}.choices button{width:100%;margin-top:10px}@media(max-width:680px){header{padding:18px 16px}main{padding:0 16px}.brand>span{font-size:14px}.subjectbar{gap:6px}.subjectbar>button{font-size:12px;padding:9px}.subjects{width:100%;margin-bottom:4px}.subjects button{flex:1;font-size:14px}.lesson-heading h1{font-size:22px}.message{margin:28px 0;font-size:15px}.message.user{max-width:92%}.rich h2{font-size:21px}.diagram{gap:12px}.diagram img{width:130px}.diagram figcaption{font-size:12px}.composer{bottom:6px}.rich table{display:block;overflow-x:auto}.shortcuts{gap:6px}.shortcuts button{font-size:11px}.katex{font-size:1.1em}}

header{gap:18px;flex-wrap:wrap}.student-profile{display:flex;align-items:center;gap:10px;margin-left:auto;margin-right:auto}.student-avatar{display:grid;place-items:center;width:40px;height:40px;flex-shrink:0;border-radius:50%;background:#e7f2ed;color:#216b59;font-size:13px;font-weight:700}.student-name{font-size:13px;font-weight:650;letter-spacing:.5px;color:#3c5149}@media(max-width:680px){header{gap:12px}.student-profile{order:3;width:100%;justify-content:center;margin:0;padding-top:10px;border-top:1px solid var(--border)}header #logout{margin-left:auto}.student-name{font-size:12px}}

img.student-avatar{width:48px;height:48px;object-fit:cover;object-position:50% 40%;border:2px solid #e7f2ed}
