:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f4f6ef;--surface:#fffefb;--ink:#173c38;--muted:#6a817d;--teal:#16877c;--teal-deep:#0c5d56;--line:#ccded8;--danger:#a13f3f;--shadow:0 24px 70px #1441391a}*{box-sizing:border-box}html,body{min-height:100%}body{background:radial-gradient(circle at 92% 4%, #a7d8cd7a, transparent 35%), linear-gradient(180deg, #fbfcf7 0%, var(--paper) 100%);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,Noto Sans SC,Microsoft YaHei,sans-serif}button,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}.student-shell{width:min(100%,520px);min-height:100dvh;padding:max(22px, env(safe-area-inset-top)) 18px max(24px, env(safe-area-inset-bottom));flex-direction:column;margin:0 auto;display:flex}.brand{align-items:center;gap:11px;min-height:44px;display:flex}.brand-mark{background:var(--teal);color:#fff;border-radius:12px;place-items:center;width:38px;height:38px;font-family:Georgia,serif;font-size:18px;display:grid;box-shadow:0 8px 25px #16877c38}.brand strong{letter-spacing:.04em;font-family:Songti SC,STSong,serif;font-size:18px;display:block}.brand small{color:var(--muted);letter-spacing:.12em;margin-top:2px;font-size:10px;display:block}.room-hero{padding:46px 4px 25px}.eyebrow{color:var(--teal);letter-spacing:.15em;margin:0 0 10px;font-size:12px;font-weight:750}.room-hero h1{letter-spacing:-.03em;text-wrap:balance;margin:0;font-family:Songti SC,STSong,serif;font-size:clamp(32px,9vw,46px);font-weight:600;line-height:1.2}.room-meta{color:var(--muted);margin:14px 0 0;font-size:14px}.status-line{border:1px solid var(--line);min-height:38px;color:var(--muted);background:#ffffffb8;border-radius:999px;align-items:center;gap:9px;margin-top:22px;padding:8px 13px;font-size:13px;display:inline-flex}.status-dot{background:#abbab6;border-radius:999px;width:8px;height:8px}.status-line.connected .status-dot{background:#1b9b6c;box-shadow:0 0 0 5px #1b9b6c21}.status-line.error,.status-line.ended{color:var(--danger);border-color:#a13f3f3d}.status-line.error .status-dot,.status-line.ended .status-dot{background:var(--danger)}.question-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffefbeb;border-radius:24px;margin-top:4px;padding:22px}.question-card label{margin-bottom:12px;font-size:17px;font-weight:750;display:block}.question-card textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:136px;color:var(--ink);background:#fff;border-radius:16px;outline:none;padding:15px 16px;font-size:16px;line-height:1.65}.question-card textarea:focus{border-color:var(--teal);box-shadow:0 0 0 4px #16877c1a}.question-card textarea:disabled{color:#8a9996;background:#f2f4ef}.composer-meta{min-height:24px;color:var(--muted);justify-content:space-between;gap:14px;margin:9px 2px 14px;font-size:12px;display:flex}.composer-message.error{color:var(--danger)}.composer-message.success{color:var(--teal-deep)}.send-button{background:var(--teal);color:#fff;cursor:pointer;letter-spacing:.04em;border:0;border-radius:15px;width:100%;min-height:52px;font-weight:750;box-shadow:0 12px 25px #16877c2e}.send-button:disabled{cursor:not-allowed;box-shadow:none;background:#afc2bd}.privacy-note{color:var(--muted);margin:auto 4px 0;padding-top:26px;font-size:12px;line-height:1.7}.state-card{border:1px solid var(--line);background:var(--surface);text-align:center;box-shadow:var(--shadow);border-radius:24px;margin:auto 0;padding:30px 24px}.state-card h1{margin:0 0 12px;font-family:Songti SC,STSong,serif;font-size:30px}.state-card p{color:var(--muted);margin:0;line-height:1.7}@media (min-width:700px){.student-shell{padding-top:42px;padding-bottom:42px}.room-hero{padding-top:64px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}}
