.lms-assistant { --la-blue:#194b8d; position:fixed; right:max(18px,env(safe-area-inset-right)); bottom:calc(max(18px,env(safe-area-inset-bottom)) + var(--la-bottom,0px)); z-index:990; font:14px/1.65 'Prompt',system-ui,sans-serif; color:#173b65; text-align:left; letter-spacing:normal; }
.lms-assistant,.lms-assistant * { box-sizing:border-box; }
.lms-assistant [hidden] { display:none !important; }
.lms-assistant button,.lms-assistant textarea { font:inherit; }
.lms-assistant button { cursor:pointer; min-height:44px; box-shadow:none; }
.lms-assistant button:focus-visible,.lms-assistant a:focus-visible,.lms-assistant textarea:focus-visible { outline:3px solid #5293ef; outline-offset:2px; }
.lms-assistant .la-launch { display:flex; align-items:center; justify-content:center; gap:9px; padding:10px 16px; border:1px solid #fff; border-radius:28px; background:var(--la-blue); color:#fff; box-shadow:0 5px 20px #163d7133; font-size:13px; font-weight:500; }
.lms-assistant .la-launch:hover { background:#123c74; }
.lms-assistant .la-launch svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.lms-assistant-open .lms-assistant { width:380px; max-width:calc(100% - 36px); }
.lms-assistant .la-panel { width:100%; height:min(580px,calc(100dvh - 36px),var(--la-height,580px)); max-height:calc(100vh - 36px); display:flex; flex-direction:column; overflow:hidden; border:1px solid #d7e4f5; border-radius:18px; background:#fff; box-shadow:0 12px 48px #173c7033; }
.lms-assistant .la-heading { flex-shrink:0; display:flex; justify-content:space-between; align-items:center; gap:12px; margin:0; padding:12px 14px 12px 18px; background:linear-gradient(110deg,#194b8d,#2864b0); color:#fff; }
.lms-assistant .la-heading strong { display:block; font-size:16px; font-weight:600; color:#fff; }
.lms-assistant .la-mode { display:block; font-size:11px; color:#e1edff; }
.lms-assistant .la-minimize { width:44px; padding:0; font-size:26px; line-height:1; border:1px solid #ffffff55; border-radius:10px; background:#ffffff12; color:#fff; }
.lms-assistant .la-minimize:hover { background:#ffffff30; }
.lms-assistant .la-messages { min-height:50px; flex:1 1 auto; overflow-y:auto; overscroll-behavior:contain; padding:16px 14px 4px; background:#f6f9fd; }
.lms-assistant .la-message { margin:0 22px 12px 0; padding:12px; border:1px solid #dce7f4; border-radius:4px 13px 13px; background:#fff; }
.lms-assistant .la-message p { margin:4px 0 0; font-size:13px; line-height:1.8; color:#254664; white-space:pre-wrap; overflow-wrap:anywhere; }
.lms-assistant .la-message small { font-size:10px; color:#67819d; }
.lms-assistant .la-user { margin:0 0 12px 32px; background:#e8f1ff; border-color:#d1e2fc; border-radius:13px 4px 13px 13px; }
.lms-assistant .la-links { display:flex; flex-wrap:wrap; gap:6px; margin-top:10px; }
.lms-assistant .la-links a { display:flex; align-items:center; min-height:44px; padding:7px 10px; font-size:12px; text-decoration:none; border:1px solid #c7daf3; border-radius:8px; color:#194b8d; background:#f2f7ff; }
.lms-assistant .la-links a:hover { background:#e4efff; }
.lms-assistant .la-suggestions { display:flex; gap:6px; overflow-x:auto; flex-shrink:0; padding:10px 12px 2px; scrollbar-width:thin; }
.lms-assistant .la-suggestions button { flex-shrink:0; padding:6px 10px; font-size:11px; white-space:nowrap; border:1px solid #d7e5f6; border-radius:9px; color:#194b8d; background:#f5f9ff; }
.lms-assistant .la-suggestions button:hover { background:#e7f1ff; }
.lms-assistant .la-status { flex-shrink:0; padding:5px 14px; min-height:25px; font-size:11px; color:#536e8c; overflow-wrap:anywhere; }
.lms-assistant .la-form { flex-shrink:0; display:block; margin:0; padding:8px 14px 10px; border-top:1px solid #e0e9f5; background:#fff; }
.lms-assistant .la-input-label { display:block; margin:0 0 5px; font-size:11px; font-weight:500; color:#335d8b; }
.lms-assistant .la-compose { display:flex; align-items:stretch; gap:8px; }
.lms-assistant .la-compose textarea { flex:1; min-width:0; width:100%; height:64px; min-height:64px; max-height:100px; resize:none; padding:9px 10px; border:1px solid #cbdcf1; border-radius:9px; color:#173b65; background:#fff; font-size:14px; line-height:1.5; }
.lms-assistant .la-send { flex:0 0 50px; padding:0 10px; border:1px solid var(--la-blue); border-radius:9px; color:#fff; background:var(--la-blue); font-size:13px; }
.lms-assistant .la-send:disabled { opacity:.6; cursor:wait; }
.lms-assistant .la-foot { display:flex; align-items:center; justify-content:space-between; gap:6px; color:#6d8097; font-size:9px; }
.lms-assistant .la-clear { flex-shrink:0; padding:4px 3px; border:0; background:transparent; color:#436a9a; font-size:10px; }
.lms-assistant .la-clear:hover { color:#123c74; text-decoration:underline; }
.lms-assistant .la-ai { display:flex; align-items:center; gap:7px; margin-bottom:7px; min-height:44px; font-size:11px; color:#435e7d; }
.lms-assistant .la-ai input { flex:none; width:17px; height:17px; padding:0; margin:0; accent-color:#194b8d; }
:root .student-notification-toast { bottom:calc(max(18px,env(safe-area-inset-bottom)) + 66px); }
.lms-assistant-open .student-notification-toast { right:auto; left:18px; }
@media(max-width:480px) { .lms-assistant { right:max(10px,env(safe-area-inset-right)); bottom:calc(max(10px,env(safe-area-inset-bottom)) + var(--la-bottom,0px)); } .lms-assistant-open .lms-assistant { left:max(10px,env(safe-area-inset-left)); width:auto; max-width:none; } .lms-assistant .la-panel { width:100%; height:min(590px,calc(100dvh - 20px),var(--la-height,590px)); max-height:calc(100vh - 20px); border-radius:14px; } .lms-assistant .la-compose textarea { font-size:16px; } .lms-assistant .la-heading { padding:10px 12px; } .lms-assistant-open .student-notification-toast { z-index:995; bottom:auto; top:max(8px,env(safe-area-inset-top)); left:10px; max-width:calc(100vw - 20px); } }
@media print { .lms-assistant { display:none !important; } }
@media(max-width:480px) { .lms-assistant .la-launch { width:48px; min-height:48px; padding:0; border-radius:50%; } .lms-assistant .la-launch span { display:none; } }
.lms-assistant.la-compact .la-suggestions,.lms-assistant.la-compact .la-foot,.lms-assistant.la-compact .la-input-label { display:none; }
.lms-assistant.la-compact .la-heading { padding:5px 10px; }
.lms-assistant.la-compact .la-messages { min-height:24px; padding:8px; }
.lms-assistant.la-compact .la-form { padding:6px 10px; }
.lms-assistant.la-compact .la-compose textarea { height:46px; min-height:46px; }
.lms-assistant.la-compact .la-ai { min-height:24px; margin:0 0 4px; }
