@font-face{font-family:Samarkan;src:url(/fonts/samarkan.ttf)format("truetype");font-weight:400;font-style:normal;font-display:swap}:root{--ink:#f8fbff;--muted:#f8fbffb8;--panel:#ffffff24;--panel-strong:#ffffff3b;--stroke:#ffffff47;--shadow:#080c1a70;--coral:#ff6f7d;--mint:#ffc56f;--gold:#ffe39a;--sky:#4b75f2;--violet:#314fc4;--deep:#161229}*{box-sizing:border-box}html{background:var(--deep);overflow:hidden}body{height:100vh;min-height:100vh;color:var(--ink);background:var(--deep);margin:0;font-family:Arial,Helvetica,sans-serif;position:relative;overflow:hidden}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button{color:inherit}.animated-background{z-index:0;pointer-events:none;background:radial-gradient(circle at 20% 18%, #ffc56f9e, transparent 32vmax), radial-gradient(circle at 68% 34%, #4b75f285, transparent 36vmax), radial-gradient(circle at 48% 72%, #ff6f7d66, transparent 34vmax), linear-gradient(125deg, #2a1932 0%, #2c3472 34%, #473057 68%, #18142a 100%), var(--deep);position:fixed;inset:0;overflow:hidden}.image-theme-layer,.background-depth,.ambient-color{position:absolute;inset:0}.image-theme-layer{filter:saturate(104%)contrast(94%)brightness(1.08);opacity:.95;background:radial-gradient(at 18% 35%,#ffc56f7a,#0000 36%),radial-gradient(at 66% 36%,#4b75f273,#0000 40%),radial-gradient(at 48% 70%,#ff6f7d52,#0000 38%),linear-gradient(90deg,#42162d4d,#0000 28% 68%,#42162d57)}.image-theme-layer:after{content:"";background:radial-gradient(at 50% 42%,#ffe8b824,#0000 42%),radial-gradient(#0000 34%,#4d214924 76%,#1e112b6b 100%),radial-gradient(circle at 0 0,#8e1e443d,#0000 40%),radial-gradient(circle at 100% 0,#8e1e4438,#0000 42%),radial-gradient(circle at 0 100%,#8e1e4433,#0000 44%),radial-gradient(circle at 100% 100%,#8e1e443d,#0000 42%);position:absolute;inset:0}.background-depth{mix-blend-mode:overlay;opacity:.58;background:radial-gradient(circle at 26% 42%,#ffe39a2e,#0000 28vmax),radial-gradient(circle at 66% 36%,#4b75f22e,#0000 33vmax),radial-gradient(circle at 44% 70%,#ff6f7d24,#0000 31vmax),linear-gradient(90deg,#4a122c38,#0000 30% 70%,#4a122c3d)}.ambient-color{filter:blur(54px)saturate(104%);mix-blend-mode:screen;opacity:.34;will-change:transform}.ambient-color-one{background:radial-gradient(circle at 24% 42%,#ffc56f57,#0000 30vmax);animation:24s ease-in-out infinite alternate ambientDriftOne}.ambient-color-two{background:radial-gradient(circle at 64% 36%,#4b75f247,#0000 33vmax);animation:29s ease-in-out infinite alternate ambientDriftTwo}.ambient-color-three{background:radial-gradient(circle at 48% 70%,#ff6f7d47,#0000 31vmax);animation:32s ease-in-out infinite alternate ambientDriftThree}:is(body:has(.home-shell) .image-theme-layer,body:has(.home-shell) .background-depth,body:has(.home-shell) .ambient-color){display:none}body:has(.room-shell) .animated-background{background:url(/meeting-room-background.png) 50%/cover no-repeat}:is(body:has(.room-shell) .image-theme-layer,body:has(.room-shell) .background-depth,body:has(.room-shell) .ambient-color){display:none}body:has(.student-waiting-shell) .animated-background{background:url(/student-waiting-room-background.png) 50%/cover no-repeat}:is(body:has(.student-waiting-shell) .image-theme-layer,body:has(.student-waiting-shell) .background-depth,body:has(.student-waiting-shell) .ambient-color){display:none}.entry-shell{z-index:1;grid-template-columns:minmax(340px,430px) minmax(0,1fr);align-items:center;gap:22px;height:100vh;padding:24px clamp(18px,5vw,72px);display:grid;position:relative}.entry-shell.ai-mode{grid-template-columns:minmax(300px,340px) minmax(0,1fr)}.glass-panel{border:1px solid var(--stroke);box-shadow:0 28px 86px var(--shadow), inset 0 1px 0 #ffffff47, inset 0 -1px 0 #ffffff14;-webkit-backdrop-filter:blur(24px)saturate(128%)brightness(1.04);backdrop-filter:blur(24px)saturate(128%)brightness(1.04);background:linear-gradient(145deg,#ffffff38,#ffffff14),#ffffff14;position:relative}.glass-panel:before,.glass-panel:after{border-radius:inherit;content:"";pointer-events:none;position:absolute;inset:0}.glass-panel:before{opacity:.68;background:radial-gradient(circle at 18% 12%,#ffffff38,#0000 28%),linear-gradient(145deg,#ffffff29,#0000 48%,#ffffff0f)}.glass-panel:after{mix-blend-mode:overlay;opacity:.28;background-image:radial-gradient(circle,#ffffff38 0 .55px,#0000 .75px),radial-gradient(circle,#070b1721 0 .45px,#0000 .72px);background-position:0 0,1.6px 1.9px;background-size:3px 3px,4px 4px}.glass-panel>*{z-index:1;position:relative}.join-card{border-radius:26px;flex-direction:column;justify-content:center;width:min(430px,100%);height:calc(100vh - 48px);max-height:760px;padding:clamp(20px,3vw,32px);transition:width .68s cubic-bezier(.22,1,.36,1),padding .68s cubic-bezier(.22,1,.36,1);animation:.7s both cardEnter;display:flex;overflow:hidden}.join-card.ai-card{width:min(340px,100%);padding:22px}.access-panel{opacity:1;flex-direction:column;flex:1;justify-content:center;min-height:0;transition:opacity .36s,transform .52s;display:flex;transform:translate(0)}.join-card.ai-card .access-panel{opacity:0;pointer-events:none;transform:translate(-18px)}.brand{align-items:center;gap:10px;width:fit-content;margin-bottom:clamp(26px,5vh,48px);font-weight:800;display:inline-flex}.meetigate-font{letter-spacing:.02em;font-family:Samarkan,Noto Serif Devanagari,Times New Roman,serif;font-style:normal;font-weight:400}.brand-mark{background:linear-gradient(135deg, var(--coral), var(--gold));color:#1d2130;border-radius:14px;place-items:center;width:40px;height:40px;display:grid}.join-copy{margin-bottom:22px}.eyebrow{color:var(--mint);letter-spacing:0;text-transform:uppercase;margin:0 0 10px;font-size:13px;font-weight:800}h1,p{margin-top:0}h1{max-width:360px;margin-bottom:0;font-size:clamp(38px,5.4vw,56px);line-height:.94}.role-switch{background:#ffffff1a;border:1px solid #ffffff2e;border-radius:16px;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:20px;padding:6px;display:grid}.role-switch button{min-height:42px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:12px;transition:background .22s,color .22s,transform .22s}.role-switch button:hover{color:var(--ink)}.role-switch button.active{color:#fff4e9;background:#914d11;font-weight:800;box-shadow:0 10px 24px #a3450759}.meeting-form{gap:10px;display:grid}.meeting-form label{color:#f8fbffdb;font-size:14px;font-weight:800}.meeting-form input{width:100%;min-height:46px;color:var(--ink);-webkit-text-fill-color:var(--ink);background:#ffffff1c;border:1px solid #ffffff3d;border-radius:14px;outline:none;padding:0 14px;transition:border-color .22s,box-shadow .22s,background .22s}.meeting-form input::placeholder{color:#f8fbff6b}.meeting-form input:focus{background:#ffffff26;border-color:#ffb45bb8;box-shadow:0 0 0 4px #ffb45b24}.meeting-form input:not(:placeholder-shown){background:#ffffff1c}.meeting-form input:-webkit-autofill{-webkit-text-fill-color:var(--ink);transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #ffffff1c}.meeting-form input:-webkit-autofill:hover{-webkit-text-fill-color:var(--ink);transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #ffffff1c}.meeting-form input:-webkit-autofill:focus{-webkit-text-fill-color:var(--ink);transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #ffffff1c}.meeting-form input:-webkit-autofill:active{-webkit-text-fill-color:var(--ink);transition:background-color 9999s ease-out;box-shadow:inset 0 0 0 1000px #ffffff1c}.form-actions{gap:9px;margin-top:8px;display:grid}.primary-action,.ghost-action{cursor:pointer;border:1px solid #ffffff3d;border-radius:14px;min-height:48px;font-weight:800;transition:transform .22s,box-shadow .22s,background .22s}.primary-action{background:linear-gradient(135deg, var(--coral), var(--gold));color:#151923;box-shadow:0 14px 32px #ff4f5f38}.ghost-action{color:var(--ink);background:#ffffff1f}.primary-action:hover,.ghost-action:hover{transform:translateY(-2px)}.generated-code{background:#ffffff1a;border:1px solid #ffb45b4d;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:12px;padding:8px;display:grid}.generated-code span{min-width:0;color:var(--mint);text-overflow:ellipsis;white-space:nowrap;padding:0 4px;font-size:14px;font-weight:800;overflow:hidden}.generated-code button{color:#151923;cursor:pointer;background:linear-gradient(135deg, var(--mint), var(--sky));border:1px solid #ffffff38;border-radius:12px;min-height:36px;padding:0 14px;font-weight:800;transition:transform .22s,box-shadow .22s}.generated-code button:hover{transform:translateY(-1px);box-shadow:0 10px 24px #ffb45b2e}.ai-chat-panel{opacity:0;pointer-events:none;grid-template-rows:auto minmax(0,1fr) auto;gap:16px;transition:opacity .42s .26s,transform .58s .18s;display:grid;position:absolute;inset:22px;transform:translate(18px)}.join-card.ai-card .ai-chat-panel{opacity:1;pointer-events:auto;transform:translate(0)}.ai-chat-panel h2{margin:0;font-size:32px;line-height:1}.chat-stream{flex-direction:column;gap:10px;min-height:0;display:flex;overflow:hidden}.assistant-bubble,.student-bubble{border:1px solid #ffffff29;border-radius:16px;max-width:92%;padding:11px 12px;font-size:13px;line-height:1.42}.assistant-bubble{color:var(--muted);background:#ffffff1a;align-self:flex-start}.student-bubble{color:#151923;background:linear-gradient(135deg, var(--mint), var(--sky));align-self:flex-end;font-weight:800}.chat-input-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.chat-input-row input{min-width:0;min-height:42px;color:var(--ink);background:#ffffff1c;border:1px solid #ffffff38;border-radius:14px;outline:none;padding:0 12px}.chat-input-row input::placeholder{color:#f8fbff6b}.chat-input-row button{color:#151923;cursor:pointer;background:linear-gradient(135deg, var(--coral), var(--gold));border:0;border-radius:14px;min-height:42px;padding:0 13px;font-weight:800}.capture-card,.preview-card{border-radius:26px;grid-template-rows:auto minmax(0,1fr) auto;gap:16px;min-width:0;height:calc(100vh - 48px);max-height:760px;padding:24px;animation:.62s both captureEnter;display:grid;overflow:hidden}.capture-header,.preview-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.capture-header h2,.preview-header h2{margin:0;font-size:clamp(28px,4vw,42px);line-height:1}.capture-status{color:var(--muted);background:#ffffff1a;border:1px solid #fff3;border-radius:999px;flex:none;padding:9px 14px 9px 30px;font-size:13px;font-weight:800;position:relative}.capture-status:before{content:"";background:currentColor;border-radius:50%;width:8px;height:8px;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.capture-status.active{color:var(--mint)}.capture-status.active:before{box-shadow:0 0 18px var(--mint)}.capture-status.blocked{color:var(--coral)}.video-shell{background:linear-gradient(145deg,#ffffff24,#ffffff0f),#070b1742;border:1px solid #ffffff2e;border-radius:22px;min-height:0;position:relative;overflow:hidden}.video-shell video{object-fit:cover;width:100%;height:100%;display:block;transform:scaleX(-1)}.camera-off-layer{text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(145deg,#0c122094,#0c122057),#ffffff0f;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.camera-off-layer strong,.camera-off-layer span{display:block}.camera-off-layer strong{margin-bottom:8px;font-size:22px}.camera-off-layer span{color:var(--muted)}.video-shell canvas{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.video-placeholder{text-align:center;place-items:center;height:100%;min-height:360px;padding:24px;display:grid}.video-placeholder strong,.video-placeholder span{display:block}.video-placeholder strong{margin-bottom:8px;font-size:22px}.video-placeholder span{color:var(--muted);line-height:1.5}.preview-controls{grid-template-columns:repeat(2,minmax(0,1fr));justify-content:center;gap:50px;display:flex}.preview-controls button{min-height:48px;color:var(--ink);cursor:pointer;background:#ffffff1c;border:1px solid #fff3;border-radius:14px;font-weight:800;transition:transform .22s,background .22s,box-shadow .22s}.preview-controls button.active{color:#151923;background:linear-gradient(135deg, var(--mint), var(--sky));box-shadow:0 12px 28px #ffb45b2e}.preview-controls button.preview-icon-button{border:0;border-radius:30%;justify-self:center;place-items:center;width:38px;min-height:38px;padding:0;display:grid}.preview-icon-button svg{fill:currentColor;width:30px;height:30px}.preview-controls button:hover{transform:translateY(-2px)}.vision-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.vision-grid div{background:#ffffff1a;border:1px solid #ffffff26;border-radius:16px;min-width:0;padding:14px}.vision-grid span,.vision-grid strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.vision-grid span{color:var(--muted);margin-bottom:6px;font-size:13px}.vision-grid strong{color:var(--ink)}@keyframes ambientDriftOne{0%{transform:translate(-5vw,-3vh)scale(1)}50%{transform:translate(7vw,4vh)scale(1.1)}to{transform:translate(12vw,-2vh)scale(1.04)}}@keyframes ambientDriftTwo{0%{transform:translate(6vw,-4vh)scale(1.04)}50%{transform:translate(-5vw,5vh)scale(1.12)}to{transform:translate(-12vw,1vh)scale(1.02)}}@keyframes ambientDriftThree{0%{transform:translate(3vw,5vh)scale(1.02)}50%{transform:translate(-7vw,-4vh)scale(1.13)}to{transform:translate(5vw,-7vh)scale(1.06)}}@keyframes cardEnter{0%{opacity:0;transform:translate(-28px)scale(.98)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes captureEnter{0%{opacity:0;transform:translate(28px)scale(.985)}to{opacity:1;transform:translate(0)scale(1)}}@media (max-width:680px){.entry-shell{grid-template-columns:1fr;align-items:stretch;padding:14px;overflow-y:auto}.join-card{height:calc(100vh - 28px);max-height:none}.join-card.ai-card{width:100%}.brand{margin-bottom:34px}.capture-card,.preview-card{min-height:620px}}@media (max-height:760px){.entry-shell{padding-top:16px;padding-bottom:16px}.join-card{justify-content:center;height:calc(100vh - 32px);padding:18px 28px}.join-card.ai-card{padding:18px}.ai-chat-panel{gap:12px;inset:18px}.ai-chat-panel h2{font-size:28px}.assistant-bubble,.student-bubble{padding:9px 10px;font-size:12px}.brand{margin-bottom:20px}.brand-mark{width:36px;height:36px}.join-copy{margin-bottom:18px}.eyebrow{margin-bottom:8px;font-size:12px}h1{font-size:46px}.role-switch{margin-bottom:16px}.role-switch button{min-height:38px}.meeting-form{gap:8px}.meeting-form input{min-height:42px}.primary-action,.ghost-action{min-height:44px}.generated-code{margin-top:10px}.capture-card,.preview-card{gap:12px;height:calc(100vh - 32px);padding:18px}.capture-header h2,.preview-header h2{font-size:32px}.video-placeholder{min-height:280px}.vision-grid div{padding:11px}}@media (min-width:681px) and (max-width:1080px){.entry-shell{grid-template-columns:minmax(320px,390px) minmax(0,1fr);gap:14px;padding-left:18px;padding-right:18px}.entry-shell.ai-mode{grid-template-columns:minmax(290px,330px) minmax(0,1fr)}.vision-grid{grid-template-columns:1fr}}.home-shell,.landing-shell,.ready-shell{min-height:100vh}.home-shell{--home-frame-size:0px;z-index:1;min-height:100dvh;padding:max(clamp(24px, 7vw, 88px), var(--home-frame-size));isolation:isolate;place-items:center;display:grid;position:relative;overflow:hidden}.home-bg-wrap{inset:var(--home-frame-size);z-index:0;background:url(/meetigate-home-background.png) 50%/103% no-repeat;position:absolute}.home-bg-art{object-fit:contain;object-position:center 52%;opacity:.92;padding:0;inset:0;transform:scale(1.12);width:100%!important;height:100%!important}.home-bg-overlay{pointer-events:none;background:radial-gradient(circle,#fff4b1ad,#ffe05e2e 25rem,#ffd14875),linear-gradient(#ffffff14,#5a2d0024);position:absolute;inset:0}.home-shell:before,.home-shell:after{z-index:1;width:var(--home-frame-size);content:"";pointer-events:none;background-image:url(/Border_cropped_set.png);background-position:top;background-repeat:repeat-y;background-size:100% 50%;display:none;position:absolute;top:0;bottom:0}.home-shell:before{left:0}.home-shell:after{right:0}.home-strip{left:var(--home-frame-size);right:var(--home-frame-size);z-index:2;height:var(--home-frame-size);pointer-events:none;background-position:0;background-repeat:repeat-x;background-size:auto 100%;display:none;position:absolute}.home-strip-top{background-image:url(/horizontal-strip-2.png);top:0}.home-strip-bottom{background-image:url(/horizontal_strip.png);bottom:0}.home-card{z-index:2;text-align:center;justify-items:center;gap:16px;width:min(620px,100%);padding:0;display:grid;position:relative}.home-card:before{display:none}.home-kicker{color:#673000;letter-spacing:0;background:#fff8caad;border:1px solid #8000002e;border-radius:999px;width:fit-content;margin:0;padding:8px 12px;font-size:14px;font-weight:800}.home-brand-title{color:maroon;letter-spacing:1e-7px;text-shadow:0 10px 24px #551e0024;margin:0;font-size:92px;line-height:.9;display:block;transform:translate(-10px)}.home-copy{color:#4a2600;max-width:520px;margin:0;font-size:19px;line-height:1.55}.home-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:4px;display:flex}.home-continue{text-align:center;color:#f6e9d3;background:#3f0e04;border-color:#8000001f;border-radius:16px;place-items:center;width:min(260px,100%);min-width:220px;min-height:52px;padding:0 28px;text-decoration:none;display:inline-grid;box-shadow:0 18px 36px #23080352}@media (max-width:760px){.home-shell{padding:28px 20px}.home-bg-art{opacity:.9}.home-card{gap:14px}.home-kicker{font-size:13px}.home-brand-title{font-size:64px}.home-copy{font-size:16px}.home-continue{width:min(320px,100%)}}@media (max-aspect-ratio:4/5){.home-shell{grid-template-rows:minmax(210px,38vh) auto;align-content:start;gap:22px;padding:28px 18px 36px}.home-bg-art{object-fit:contain;object-position:center 54%;opacity:.9;padding:0;inset:0;width:100%!important;height:100%!important}.home-bg-overlay{background:linear-gradient(#ffe6661f 0%,#ffe05b33 34%,#ffdc56e0 50%,#f6b13fc7 100%),radial-gradient(at 50% 58%,#fff6b8c7,#ffda522e 20rem,#0000 34rem)}.home-card{align-self:start;gap:12px;width:min(360px,100%);transform:none}.home-card:before{background:radial-gradient(#ffed98f0,#ffda5585 56%,#0000 76%);inset:-22px -18px}.home-kicker{max-width:100%;font-size:12px;line-height:1.2}.home-brand-title{font-size:58px}.home-copy{max-width:300px;font-size:15px;line-height:1.42}.home-continue{width:auto;min-width:176px;min-height:48px;padding:0 20px}}@media (max-width:380px){.home-brand-title{font-size:54px}}.landing-shell,.ready-shell{grid-template-columns:1fr;justify-items:center}.landing-shell{isolation:isolate;position:relative}.landing-art-layer{z-index:0;pointer-events:none;background-color:#0000;background-image:linear-gradient(145deg,#100e205c,#2010226b),url(/new-meeting-access-background.png);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0;overflow:hidden}.landing-shell .join-card,.ready-shell .preview-card{width:min(520px,100%);height:min(500px,100vh - 150px)}.landing-shell .join-card{justify-content:center;padding:clamp(6px,.9vw,9px) clamp(10px,1.5vw,12px)}.landing-shell .access-panel{justify-content:center}.landing-shell .brand{justify-content:center;align-self:center;margin-bottom:36px}.landing-brand-wordmark{color:#fff2d9;letter-spacing:.01em;text-shadow:0 8px 18px #1408204d;font-size:clamp(44px,8.2vw,66px);line-height:1.02;display:block}.landing-shell .join-copy{margin-bottom:14px}.landing-shell .eyebrow{margin-bottom:6px}.landing-shell h1#join-title{font-size:clamp(54px,5.8vw,64px);line-height:.92}.landing-shell .role-switch{margin-bottom:10px}.landing-shell .meeting-form{gap:6px}.landing-shell .form-actions{gap:7px;margin-top:4px}.landing-shell .primary-action,.landing-shell .ghost-action{justify-self:center;width:min(260px,64%);min-height:36px;font-size:17px}.landing-shell .primary-action{color:#f7f2dd;background:#202808;box-shadow:0 10px 22px #1a160c47}.landing-shell .ghost-action{color:#f7f2dd;background:#283618}.ready-shell .preview-card{max-height:760px}.primary-action:disabled{cursor:not-allowed;opacity:.6;transform:none}.lobby-join{text-align:center;place-items:center;width:100%;text-decoration:none;display:inline-grid}.room-shell{grid-template-columns:1fr;justify-items:center}.room-shell .glass-panel:before,.room-shell .glass-panel:after{display:none}.room-shell .participant-video{backface-visibility:hidden;contain:paint;transform:translateZ(0)}.room-shell .room-side-chat-card{backface-visibility:hidden;transform:translateZ(0)}.room-shell .room-meeting-chat-card{backface-visibility:visible;transform:none}.room-shell .participant-video video{backface-visibility:hidden;will-change:transform}.room-cards-layout{grid-template-columns:minmax(240px,300px) minmax(0,1fr) minmax(240px,300px);align-items:center;gap:clamp(12px,1.8vw,22px);width:min(1360px,100%);display:grid}.room-side-chat-card{border-radius:26px;place-items:center;height:min(560px,100vh - 130px);padding:18px;display:grid;overflow:hidden}.room-side-chat-card p{color:#fff2d9;text-align:center;text-shadow:0 8px 18px #1408204d;margin:0;font-size:clamp(24px,2.4vw,32px);line-height:1}.room-ai-chat{grid-template-rows:auto minmax(0,1fr) auto auto;gap:10px;width:100%;height:100%;min-height:0;display:grid}.room-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.room-ai-chat-lock-shell{grid-template-rows:minmax(0,1fr) auto auto auto;min-height:0;display:grid;position:relative}.room-ai-chat-lock-overlay{z-index:2;pointer-events:none;background:#090b126b;border-radius:14px;justify-content:center;align-items:center;display:none;position:absolute;inset:0}.room-ai-chat-lock-shell.viva-locked .room-ai-chat-lock-overlay{display:flex}.room-ai-chat-lock-badge{color:#fff2d6;background:#0c0c0cb8;border:1px solid #ffffff47;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:12px;font-weight:800;display:inline-flex}.room-ai-chat-lock-badge svg{fill:none;width:16px;height:16px}.room-ai-chat-lock-shell.viva-locked .room-ai-chat-thread,.room-ai-chat-lock-shell.viva-locked .room-ai-chat-form,.room-ai-chat-lock-shell.viva-locked .room-ai-chat-verbosity,.room-ai-chat-lock-shell.viva-locked .room-ai-chat-error,.room-ai-chat-lock-shell.viva-locked .room-ai-chat-cooldown{filter:blur(4px);opacity:.72;will-change:filter, opacity}.room-ai-chat-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.room-ai-chat-header p{margin:0}.room-ai-chat-header button,.room-ai-chat-actions button{color:#fff0d4;cursor:pointer;background:#ffffff1a;border:1px solid #fff3;border-radius:9px;min-height:26px;font-size:11px;font-weight:800}.room-ai-chat-header button{padding:0 9px}.room-ai-chat-thread{-ms-overflow-style:none;scrollbar-width:none;align-content:start;gap:8px;min-height:0;padding:6px 2px 2px;display:grid;overflow-y:auto}.room-ai-chat-thread::-webkit-scrollbar{width:0;height:0}.room-ai-chat-empty{color:#ffdcb1;text-align:left;font-size:13px}.room-ai-chat-message{border-radius:12px;gap:4px;max-width:86%;padding:8px 10px;display:grid}.room-ai-chat-message strong{letter-spacing:.02em;font-size:11px}.room-ai-chat-message p{text-align:left;text-shadow:none;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;margin:0;font-size:13px;line-height:1.4}.room-ai-chat-message pre{white-space:pre;margin:0;padding-bottom:2px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px;line-height:1.45;overflow:auto hidden}.room-ai-chat-message.user{background:#ffffff29;border:1px solid #ffffff42;justify-self:end}.room-ai-chat-message.user strong,.room-ai-chat-message.user p{color:#fffaf2}.room-ai-chat-message.assistant{background:#ffe7bd24;border:1px solid #ffdb9657;justify-self:start}.room-ai-chat-message.assistant strong,.room-ai-chat-message.assistant p,.room-ai-chat-message.assistant.structured strong,.room-ai-chat-message.assistant.structured pre{color:#ffe7be}.room-ai-chat-actions{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.room-ai-chat-actions button{padding:0 8px}.room-ai-chat-actions button:disabled{opacity:.55;cursor:not-allowed}.room-ai-typing{align-items:center;gap:5px;min-height:18px;display:flex}.room-ai-typing span{background:#ffe7be;border-radius:999px;width:6px;height:6px;animation:.9s ease-in-out infinite room-ai-typing-pulse}.room-ai-typing span:nth-child(2){animation-delay:.12s}.room-ai-typing span:nth-child(3){animation-delay:.24s}@keyframes room-ai-typing-pulse{0%,to{opacity:.35;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}.room-ai-chat-code-head{color:#f2f5ff;letter-spacing:.01em;margin:0 0 6px;font-size:12px;font-weight:700}.room-ai-chat-code-head-row{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.room-ai-chat-code-head-row .room-ai-chat-code-head{margin:0}.room-ai-chat-code-copy{color:#f2f5ff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:8px;min-height:22px;padding:0 8px;font-size:10px;font-weight:800}.room-ai-chat-code-wrap{gap:0;display:grid}.room-ai-chat-code-card{background:#0e111ae0;border:1px solid #ffffff1f;border-radius:14px;padding:10px 12px}.room-ai-chat-code-card pre{color:#f6f8ff}.room-ai-chat-text{gap:6px;display:grid}.room-ai-chat-line{color:#ffe7be;text-align:left;text-shadow:none;margin:0;font-size:13px;line-height:1.45}.room-ai-chat-line.heading{color:#fff1d3;margin-top:2px;font-size:14px;font-weight:800}.room-ai-chat-line.numbered{font-weight:700}.room-ai-chat-error{color:#ffd2d9;font-size:12px;line-height:1.3}.room-ai-chat-cooldown{color:#ffd2d9;font-size:11px;font-weight:800}.room-ai-chat-verbosity{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.room-ai-chat-verbosity button{color:#ffe8c0;cursor:pointer;background:#ffffff14;border:1px solid #fff3;border-radius:9px;min-height:28px;font-size:11px;font-weight:800}.room-ai-chat-verbosity button.active{color:#2e1400;background:#ffd38e;border-color:#ffdea770}.room-ai-chat-form{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid;transform:translateY(10px)}.room-ai-chat-form.sending{grid-template-columns:minmax(0,1fr)}.room-ai-chat-input-wrap{width:100%;min-height:36px;position:relative}.room-ai-chat-form input{color:#fff3dd;box-sizing:border-box;background:#0f111c9e;border:1px solid #ffffff3d;border-radius:10px;outline:none;width:100%;height:36px;padding:0 66px 0 10px}.room-ai-chat-form input::placeholder{color:#ffe8c49e}.room-ai-chat-disabled{color:#ffe8c49e;box-sizing:border-box;background:#0f111c9e;border:1px solid #ffffff3d;border-radius:10px;place-items:center start;width:100%;height:36px;padding:0 10px;display:grid}.room-ai-chat-form button{height:28px;padding:0 px;color:#2e1400;cursor:pointer;background:#ffd38e;border:1px solid #ffdea770;border-radius:10px;font-weight:800}.room-ai-chat-form button:disabled{opacity:.6;cursor:not-allowed}.room-ai-chat-input-icons{align-items:center;gap:4px;display:flex;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.room-ai-chat-inline-icon{box-sizing:border-box;color:#ffe8c0;cursor:pointer;background:#ffffff14;border:1px solid #0000;border-radius:999px;flex:0 0 26px;place-items:center;width:10px;height:10px;padding:0;line-height:0;display:grid}.room-ai-chat-inline-icon svg{fill:currentColor;width:25px;height:25px;display:block}.room-ai-chat-inline-icon.mic.active{color:#2e1400;background:#ffd38e}.room-ai-chat-inline-icon.stop{color:#fff;background:#111111f2;border-color:#ffffff29}.room-ai-chat-inline-icon:disabled{opacity:.6;cursor:not-allowed}.room-ai-chat-card,.room-meeting-chat-card{background:linear-gradient(145deg,#ffffff1f,#ffffff0f),#58764ae6;border-color:#ffffff29;place-items:stretch stretch}.room-meeting-chat{grid-template-rows:auto minmax(0,1fr) auto auto;gap:10px;width:100%;height:100%;min-height:0;display:grid}.room-meeting-chat-thread{-ms-overflow-style:none;scrollbar-width:none;align-content:start;gap:8px;min-height:0;padding:6px 2px 2px;display:grid;overflow-y:auto}.room-meeting-chat-thread::-webkit-scrollbar{width:0;height:0}.room-meeting-chat-message{background:#ffffff29;border:1px solid #ffffff42;border-radius:12px;gap:4px;max-width:86%;padding:8px 10px;display:grid}.room-meeting-chat-message.own{justify-self:end}.room-meeting-chat-message.other{justify-self:start}.room-meeting-chat-message strong{color:#fffaf2;letter-spacing:.02em;font-size:11px}.room-meeting-chat-message span{color:#fffaf2;overflow-wrap:anywhere;word-break:break-word;font-size:13px;line-height:1.4}.room-meeting-chat-error{color:#ffd2d9;font-size:12px;line-height:1.3}.room-meeting-chat-form{grid-template-columns:minmax(0,1fr) auto;align-self:end;gap:8px;display:grid}.room-meeting-chat-form input{color:#fff3dd;background:#0f111c9e;border:1px solid #ffffff3d;border-radius:10px;outline:none;min-height:38px;padding:0 10px}.room-meeting-chat-form input::placeholder{color:#ffe8c49e}.room-meeting-chat-disabled{color:#ffe8c49e;background:#0f111c9e;border:1px solid #ffffff3d;border-radius:10px;place-items:center start;min-height:38px;padding:0 10px;display:grid}.room-meeting-chat-form button{color:#2e1400;cursor:pointer;background:#ffd38e;border:1px solid #ffdea770;border-radius:10px;min-height:38px;padding:0 12px;font-weight:800}.room-meeting-chat-form button:disabled{opacity:.6;cursor:not-allowed}.room-shell .room-cards-layout .capture-card{width:min(900px,100%)}.room-video-shell{min-height:320px}.room-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.room-actions a{text-align:center;place-items:center;text-decoration:none;display:inline-grid}.meeting-control-nav{background:#0a0d17b8;border:1px solid #ffffff2e;border-radius:20px;grid-auto-columns:58px;grid-auto-flow:column;justify-content:center;place-self:end center;align-items:center;gap:0;width:fit-content;max-width:100%;padding:8px 12px;display:grid;transform:translateY(10px);box-shadow:0 18px 38px #0000003d}.room-meeting-card{grid-template-rows:minmax(0,1fr) auto auto;position:relative}.room-meeting-card>.room-grid{align-content:start;margin-bottom:14px}.room-meeting-card>.meeting-control-nav{margin-top:6px}.meeting-controls-row{justify-content:center;place-self:end center;align-items:center;gap:10px;width:100%;margin-top:6px;display:flex}.host-controls-button{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#111111c2;border:1px solid #ffffff38;border-radius:14px;place-items:center;width:46px;height:46px;display:grid;box-shadow:0 14px 30px #0000003d}.host-controls-menu{position:absolute;bottom:24px;right:24px}.host-controls-button svg{width:28px;height:28px}.host-controls-button:hover{transform:translateY(-2px)}.attendance-threshold-control{z-index:4;position:absolute;bottom:18px;left:18px}.attendance-threshold-button{color:#fff;cursor:pointer;background:#08101fad;border:1px solid #ffffff57;border-radius:999px;padding:9px 13px;font-size:.78rem;font-weight:800;box-shadow:0 12px 28px #02061747}.attendance-overlay{z-index:240;background:#020617ad;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.attendance-dialog{color:#fff;background:#0c1322f0;border:1px solid #ffffff3d;border-radius:18px;width:min(520px,100%);max-height:min(76vh,620px);padding:18px;overflow:auto;box-shadow:0 30px 80px #02061761}.threshold-dialog{width:min(420px,100%)}.attendance-dialog-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.attendance-dialog-header strong{font-size:1rem}.attendance-dialog-header button,.attendance-primary-button{color:#fff;cursor:pointer;background:#ffffff1f;border:1px solid #ffffff38;border-radius:999px;padding:8px 12px;font-weight:800}.attendance-primary-button{color:#172033;background:#f8c45a;width:100%;margin-top:14px}.threshold-slider-field{gap:12px;font-weight:800;display:grid}.threshold-slider-field input{accent-color:#f8c45a;width:100%}.attendance-list{gap:8px;display:grid}.attendance-row{background:#ffffff14;border:1px solid #ffffff24;border-radius:12px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.attendance-row span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.attendance-row.present strong{color:#8df0b5}.attendance-row.absent strong{color:#ffd27a}.attendance-row.banned strong{color:#ff9a9a}.student-attendance-result{gap:8px;font-size:1rem;line-height:1.5;display:grid}.attendance-toast{z-index:260;color:#fff;background:#7f1d1deb;border:1px solid #ffffff38;border-radius:999px;padding:10px 16px;font-weight:800;position:fixed;bottom:94px;left:50%;transform:translate(-50%)}.host-controls-menu:before{content:"";width:100%;height:12px;position:absolute;bottom:100%;right:0}.host-controls-tile{opacity:0;pointer-events:auto;visibility:hidden;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#111111db;border:1px solid #ffffff3d;border-radius:14px;gap:8px;width:min(270px,100vw - 36px);padding:12px;transition:opacity .18s .36s,transform .18s .36s,visibility 0s linear .54s;display:grid;position:absolute;bottom:calc(100% + 10px);right:0;transform:translateY(6px);box-shadow:0 18px 42px #00000052}.host-controls-menu:hover .host-controls-tile,.host-controls-menu:focus-within .host-controls-tile{opacity:1;pointer-events:auto;visibility:visible;transition-delay:0s;transform:translateY(0)}.host-control-option{min-height:42px;color:var(--ink);text-align:left;background:#ffffff1f;border:1px solid #fff3;border-radius:10px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:10px;padding:8px 10px;font-weight:800;display:grid}.host-control-option svg{fill:currentColor;width:24px;height:24px}.host-control-option span{overflow-wrap:anywhere;min-width:0}.host-control-option .quality-subtext{color:#f7fafcb8;margin-top:2px;font-size:.68rem;font-weight:600;display:block}.teaching-mode-block{grid-template-columns:28px minmax(0,1fr);align-items:start}.teaching-mode-content{gap:8px;min-width:0;display:grid}.teaching-mode-header{flex-direction:column;gap:2px;line-height:1.1;display:flex}.teaching-mode-active-hint{color:#f7fafcc7;letter-spacing:.01em;font-size:.68rem;font-weight:700}.teaching-mode-pills{flex-wrap:wrap;gap:6px;display:flex}.teaching-mode-pill{color:#f7fafce6;text-align:left;cursor:pointer;background:#171c2799;border:1px solid #ffffff42;border-radius:9px;flex-direction:column;justify-content:center;gap:2px;min-height:38px;padding:6px 9px;transition:border-color .16s,background .16s,box-shadow .16s,transform .16s;display:inline-flex}.teaching-mode-pill strong{font-size:.72rem;font-weight:800;line-height:1.05}.teaching-mode-pill small{color:#f7fafcb8;font-size:.64rem;font-weight:650;line-height:1}.teaching-mode-pill:hover{background:#293243c2;border-color:#c7e386b3}.teaching-mode-pill:focus-visible{outline-offset:1px;outline:2px solid #c7e386e6}.teaching-mode-pill.active{background:linear-gradient(145deg,#addb4e47,#91ca3a29);border-color:#c7e386f2;box-shadow:0 0 0 1px #c7e38638,0 8px 16px #090f0a59}.host-control-option button,.host-control-option input,.host-control-option:is(button){cursor:pointer}.host-control-toggle{cursor:pointer;grid-template-columns:28px minmax(0,1fr) auto}.host-control-toggle input{appearance:none;background:#ffffff24;border:1px solid #ffffff52;border-radius:999px;width:38px;height:22px;position:relative}.host-control-toggle input:before{content:"";background:#fff;border-radius:999px;width:14px;height:14px;transition:transform .16s;position:absolute;top:3px;left:3px}.host-control-toggle input:checked{background:var(--mint)}.host-control-toggle input:checked:before{transform:translate(16px)}.host-control-advanced{background:#ffffff17;border:1px solid #fff3;border-radius:10px}.host-control-advanced>summary{cursor:pointer;color:var(--ink);padding:8px 10px;font-size:.8rem;font-weight:800}.host-control-advanced-body{color:var(--ink);gap:8px;padding:0 10px 10px;font-size:.75rem;font-weight:700;display:grid}.host-control-advanced-body select{color:var(--ink);background:#121827cc;border:1px solid #fff3;border-radius:6px;margin-left:6px;font-size:.74rem}.host-advanced-auto-button{color:var(--ink);cursor:pointer;background:#ffffff24;border:1px solid #ffffff3d;border-radius:8px;justify-self:start;padding:5px 9px;font-size:.72rem;font-weight:800}.quality-status-text,.quality-health-text{color:#f7fafcdb;margin:8px 0 0;font-size:.78rem;font-weight:700}.quality-auto-toast{z-index:35;max-width:min(360px,100vw - 24px);color:var(--ink);background:#111111e6;border:1px solid #ffffff3d;border-radius:11px;align-items:center;gap:10px;padding:9px 11px;font-size:.78rem;font-weight:700;display:flex;position:fixed;bottom:82px;right:18px}.quality-auto-toast button{color:var(--ink);cursor:pointer;background:#ffffff29;border:1px solid #ffffff47;border-radius:7px;padding:4px 7px;font-size:.74rem;font-weight:800}.meeting-code-corner-wrap{z-index:20;position:fixed;bottom:18px;left:18px}.meeting-code-corner{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0a0d1794;border:1px solid #ffffff2e;border-radius:14px;align-items:center;gap:0;margin:0;padding:7px 8px;display:flex}.meeting-code-corner span{color:var(--muted);font-size:14px;font-weight:400}.meeting-code-corner button{cursor:pointer;background:0 0;border:0;place-items:center;min-height:24px;padding:0 4px;display:grid}.meeting-code-corner button img{filter:brightness(0)invert();width:17px;height:17px}.meeting-code-copy-toast{color:var(--ink);white-space:nowrap;background:#111111e6;border:1px solid #ffffff38;border-radius:10px;margin:0;padding:6px 10px;font-size:12px;font-weight:800;position:absolute;bottom:calc(100% + 8px);left:0}.teacher-top-actions{z-index:20;justify-content:flex-end;align-items:flex-start;gap:10px;display:flex;position:fixed;top:18px;right:18px}.join-request-notifications,.participants-menu{position:relative}.raised-hand-notifications{z-index:19;position:fixed;top:18px;right:18px}.raised-hand-notifications.with-join-bell,.raised-hand-notifications.with-teacher-actions{top:74px}.raised-hand-popup-trigger{width:min(290px,100vw - 36px);min-height:46px;color:var(--ink);cursor:pointer;text-align:left;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#111c;border:1px solid #ffffff3d;border-radius:12px;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;display:grid;box-shadow:0 14px 30px #0000003d}.raised-hand-popup-trigger.open{border-color:#fff6}.raised-hand-popup-trigger img{width:22px;height:22px}.raised-hand-popup-trigger span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:800;overflow:hidden}.raised-hand-popup-list{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#111111e6;border:1px solid #ffffff3d;border-radius:12px;gap:8px;width:min(290px,100vw - 36px);max-height:180px;padding:10px;display:grid;position:absolute;top:calc(100% + 10px);right:0;overflow-y:auto;box-shadow:0 18px 42px #00000052}.raised-hand-popup-list p{color:var(--ink);background:#ffffff14;border-radius:8px;margin:0;padding:8px 10px;font-weight:700}.join-request-bell,.participants-button{width:46px;height:46px;color:var(--ink);cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#111111b8;border:1px solid #ffffff3d;border-radius:50%;place-items:center;display:grid;position:relative;box-shadow:0 14px 30px #0000003d}.join-request-bell svg,.participants-button svg{fill:currentColor;width:24px;height:24px}.join-request-bell span{color:#151923;background:var(--gold);border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:12px;font-weight:900;display:grid;position:absolute;top:-5px;right:-5px}.participants-button span{color:#151923;background:var(--mint);border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:12px;font-weight:900;display:grid;position:absolute;bottom:-5px;right:-5px}.join-request-tile{opacity:0;pointer-events:auto;visibility:hidden;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#111111db;border:1px solid #ffffff3d;border-radius:14px;gap:10px;width:min(310px,100vw - 36px);max-height:min(360px,100vh - 88px);padding:12px;transition:opacity .18s .36s,transform .18s .36s,visibility 0s linear .54s;display:grid;position:absolute;top:calc(100% + 10px);right:0;overflow:auto;transform:translateY(-6px);box-shadow:0 18px 42px #00000052}.join-request-notifications:before{content:"";width:100%;height:12px;position:absolute;top:100%;right:0}.participants-tile{opacity:0;pointer-events:auto;visibility:hidden;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#111111db;border:1px solid #ffffff3d;border-radius:14px;gap:10px;width:min(310px,100vw - 36px);max-height:min(360px,100vh - 88px);padding:12px;transition:opacity .18s .36s,transform .18s .36s,visibility 0s linear .54s;display:grid;position:absolute;top:calc(100% + 10px);right:0;overflow:auto;transform:translateY(-6px);box-shadow:0 18px 42px #00000052}.join-request-notifications:hover .join-request-tile,.join-request-notifications:focus-within .join-request-tile,.participants-menu:hover .participants-tile,.participants-menu:focus-within .participants-tile,.participants-menu.open .participants-tile{opacity:1;pointer-events:auto;visibility:visible;transition-delay:0s;transform:translateY(0)}.join-request-row{gap:10px;display:grid}.participant-menu-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.join-request-row span{overflow-wrap:anywhere;min-width:0;color:var(--ink);font-weight:800}.participant-menu-row span,.participants-tile p{overflow-wrap:anywhere;min-width:0;color:var(--ink);margin:0;font-weight:800}.join-request-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.join-request-actions button{min-height:38px;color:var(--ink);cursor:pointer;background:#ffffff1f;border:1px solid #fff3;border-radius:10px;font-weight:800}.participant-actions-button{width:38px;min-height:34px;color:var(--ink);cursor:pointer;background:#ffffff1f;border:1px solid #fff3;border-radius:10px;place-items:center;padding:0;font-weight:800;display:grid}.participant-actions-dots{justify-content:center;align-items:center;gap:3px;display:flex}.participant-actions-dots span{background:var(--ink);border-radius:999px;width:4px;height:4px;display:block}.participant-actions-menu{z-index:2;position:relative}.participant-actions-dropdown{z-index:3;opacity:0;pointer-events:none;visibility:hidden;background:#111111e6;border:1px solid #ffffff3d;border-radius:12px;grid-template-columns:repeat(4,34px);align-items:center;gap:8px;width:172px;min-height:42px;padding:6px;transition:opacity .18s,transform .18s,visibility 0s linear .18s;display:grid;position:absolute;top:50%;right:calc(100% + 8px);transform:translateY(-50%);box-shadow:0 18px 42px #00000052}.participant-actions-dropdown button{width:34px;height:34px;color:var(--ink);cursor:pointer;background:#ffffff1f;border:1px solid #fff3;border-radius:10px;place-items:center;padding:0;display:grid}.participant-actions-dropdown button svg{fill:currentColor;width:20px;height:20px}.participant-actions-dropdown .participant-actions-close{color:#ff5d63}.participant-actions-menu.open .participant-actions-dropdown{opacity:1;pointer-events:auto;visibility:visible;transition-delay:0s;transform:translateY(-50%)}.participant-menu-row>button{min-height:34px;color:var(--ink);cursor:pointer;background:#ffffff1f;border:1px solid #fff3;border-radius:10px;padding:0 12px;font-weight:800}.join-request-actions button:first-child{color:#151923;background:var(--mint)}.room-grid{justify-items:center;gap:8px;min-height:0;display:grid;position:relative}.waiting-room-indicator{color:#f5df8c;background:#070b1785;border:1px solid #ffffff3d;border-radius:999px;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:4px;right:6px}.waiting-room-indicator svg{fill:currentColor;width:17px;height:17px}.participant-card{background:#ffffff14;border:1px solid #ffffff2e;border-radius:16px;min-width:0;padding:4px}.participant-card p{color:var(--muted);margin:0 0 5px;font-weight:700}.participant-video,.participant-placeholder{background:#070b174d;border:1px solid #ffffff29;border-radius:12px;height:180px;position:relative;overflow:hidden}.teacher-tile{width:min(600px,100%)}.teacher-screen-share-tile{width:min(840px,100%);margin:0 auto 10px}.teacher-screen-share-tile .participant-video,.teacher-screen-share-tile .participant-placeholder{height:300px}.teacher-screen-share-tile .participant-video video{transform:none}.teacher-tile .participant-video,.teacher-tile .participant-placeholder{height:260px}.teacher-tile .participant-video.share-focus-enabled .share-focus-button{z-index:3;color:#f7fafc;opacity:0;pointer-events:none;background:#070b17b8;border:1px solid #ffffff47;border-radius:8px;min-height:28px;padding:0 10px;font-size:.78rem;font-weight:700;transition:opacity .18s;position:absolute;top:10px;right:10px}.teacher-tile .participant-video.share-focus-enabled:hover .share-focus-button,.teacher-tile .participant-video.share-focus-enabled:focus-within .share-focus-button{opacity:1;pointer-events:auto}@media (hover:none){.teacher-tile .participant-video.share-focus-enabled .share-focus-button{opacity:1;pointer-events:auto}}.share-focus-overlay{z-index:220;background:#040812b8;place-items:center;padding:clamp(12px,2.2vw,24px);display:grid;position:fixed;inset:0}.share-focus-panel{background:#0a0e1af0;border:1px solid #ffffff29;border-radius:16px;grid-template-rows:auto minmax(0,1fr);width:min(1200px,100vw - 24px);height:min(78vh,760px);display:grid;overflow:hidden;box-shadow:0 24px 56px #00000070}.share-focus-toolbar{color:#f7fafc;border-bottom:1px solid #ffffff1f;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;font-weight:700;display:flex}.share-focus-actions{gap:8px;display:flex}.share-focus-actions button{color:#f7fafc;cursor:pointer;background:#ffffff14;border:1px solid #ffffff38;border-radius:8px;min-height:30px;padding:0 10px;font-size:.8rem;font-weight:700}.share-focus-actions button:disabled{opacity:.5;cursor:not-allowed}.share-focus-viewport{touch-action:none;-webkit-user-select:none;user-select:none;background:#0a1020;width:100%;height:100%;position:relative;overflow:hidden}.share-focus-video{object-fit:contain;transform-origin:50%;cursor:grab;width:100%;height:100%}.share-focus-viewport.dragging .share-focus-video{cursor:grabbing}.student-tile-row{flex-wrap:wrap;justify-content:center;gap:10px;width:100%;margin-bottom:12px;display:flex}.student-tile-page-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:min(620px,100%);display:grid}.spotlight-student-tile{width:min(600px,100%)}.student-tile{width:min(290px,100%)}.student-tile .participant-video,.student-tile .participant-placeholder{height:188.4px}.spotlight-student-tile .participant-video,.spotlight-student-tile .participant-placeholder{height:190px}.student-pagination-side-button{min-height:34px;color:var(--ink);cursor:pointer;background:#ffffff1f;border:1px solid #fff3;border-radius:10px;padding:0 12px;font-weight:700}.student-pagination-side-button:disabled{opacity:.48;cursor:not-allowed}.participant-video video{object-fit:cover;width:100%;height:100%}.participant-card.teacher-screen-share-tile .participant-video video{transform:none}.participant-placeholder{color:var(--muted);place-items:center;font-weight:600;display:grid}.room-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.room-controls button{min-height:48px;color:var(--ink);cursor:pointer;background:#ffffff1c;border:1px solid #fff3;border-radius:14px;font-weight:800;transition:transform .22s,background .22s,box-shadow .22s}.room-controls button.active{color:#151923;background:linear-gradient(135deg, var(--mint), var(--sky));box-shadow:0 12px 28px #ffb45b2e}.room-controls button.room-icon-button,.meeting-control-nav button.room-icon-button{color:#fff;background:#111;border:0;border-radius:30%;justify-self:center;place-items:center;width:38px;min-height:38px;padding:0;display:grid}.room-controls button.room-icon-button.active,.meeting-control-nav button.room-icon-button.active{color:#fff;background:#111;box-shadow:0 10px 24px #00000047}.room-controls button.room-icon-button.muted,.meeting-control-nav button.room-icon-button.muted{color:#111;background:#fff}.room-controls button.mic-icon-button.mic-on,.meeting-control-nav button.mic-icon-button.mic-on{color:#fff;background:#111}.room-controls button.mic-icon-button.mic-off,.meeting-control-nav button.mic-icon-button.mic-off{color:#111;background:#fff}.room-controls button.camera-icon-button.camera-on,.meeting-control-nav button.camera-icon-button.camera-on,.preview-controls button.camera-icon-button.camera-on,.preview-controls button.mic-icon-button.mic-on{color:#fff;background:#111}.room-controls button.camera-icon-button.camera-off,.meeting-control-nav button.camera-icon-button.camera-off,.preview-controls button.camera-icon-button.camera-off,.preview-controls button.mic-icon-button.mic-off{color:#111;background:#fff}.room-controls button.screen-share-icon-button.screen-on,.meeting-control-nav button.screen-share-icon-button.screen-on{color:#fff;background:#111}.room-controls button.screen-share-icon-button.screen-off,.meeting-control-nav button.screen-share-icon-button.screen-off{color:#111;background:#fff}.room-controls button.hand-icon-button.hand-on,.meeting-control-nav button.hand-icon-button.hand-on{color:#fff;background:#111}.room-controls button.hand-icon-button.hand-on img,.meeting-control-nav button.hand-icon-button.hand-on img{filter:brightness(0)invert(84%)}.room-controls button.hand-icon-button.hand-off,.meeting-control-nav button.hand-icon-button.hand-off{color:#111;background:#fff}.room-icon-button svg{fill:currentColor;width:30px;height:30px}.room-icon-button img{width:30px;height:30px}.room-controls button:hover,.meeting-control-nav button:hover{transform:translateY(-2px)}@media (max-width:760px){.room-cards-layout{grid-template-columns:1fr}.room-side-chat-card{width:min(960px,100%);height:min(440px,100vh - 130px)}.room-side-chat-card p{font-size:26px}.room-ai-chat-message p{font-size:13px}.room-grid{grid-template-columns:1fr}.teacher-tile .participant-video.share-focus-enabled .share-focus-button{opacity:1;pointer-events:auto}.share-focus-toolbar{flex-direction:column;align-items:flex-start}.share-focus-panel{height:min(74vh,620px)}.share-focus-actions{flex-wrap:wrap;width:100%}.student-tile-page-grid{grid-template-columns:1fr}.landing-art-layer{background-position:50%}}.form-error{color:#ffd2d9;margin:4px 0 0;font-size:13px;font-weight:700}.room-actions button{min-height:38px;color:var(--ink);cursor:pointer;background:#ffffff1f;border:1px solid #ffffff3d;border-radius:14px;font-weight:800}.room-actions button.room-icon-button.leave-icon-button,.meeting-control-nav button.room-icon-button.leave-icon-button{color:#fff;background:#e53935;border:0;border-radius:30%;justify-content:center;align-items:center;width:38px;min-height:38px;padding:0;display:flex;overflow:hidden}.room-actions button.room-icon-button.leave-icon-button:hover,.meeting-control-nav button.room-icon-button.leave-icon-button:hover{background:#d32f2f;transform:translateY(-2px)}.room-actions .leave-icon-button .leave-icon-inner,.meeting-control-nav .leave-icon-button .leave-icon-inner{justify-content:center;align-items:center;width:80%;height:80%;display:flex}.room-actions .leave-icon-button svg,.meeting-control-nav .leave-icon-button svg{fill:currentColor;width:100%;height:100%;display:block}.landing-shell .form-actions.form-actions-teacher{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-shell .form-actions.form-actions-teacher .primary-action,.landing-shell .form-actions.form-actions-teacher .ghost-action{justify-self:stretch;width:100%}.meeting-control-nav button.whiteboard-icon-button.active{color:#f8fafc;background:linear-gradient(165deg,#22c55e,#15803d)}.whiteboard-overlay{z-index:90;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#020617b8;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.whiteboard-panel{background:#f8fafc;border:1px solid #0f172a24;border-radius:16px;width:min(980px,96vw);overflow:hidden;box-shadow:0 24px 60px #0f172a59}.whiteboard-toolbar{color:#0f172a;border-bottom:1px solid #0f172a1f;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.whiteboard-toolbar-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.whiteboard-toolbar-actions button,.whiteboard-toolbar-actions input[type=range]{height:32px}.whiteboard-toolbar-actions button{color:#0f172a;background:#fff;border:1px solid #0f172a3d;border-radius:8px;padding:0 10px}.whiteboard-toolbar-actions button.active{color:#f8fafc;background:#0f172a}.whiteboard-toolbar-actions input[type=color]{background:#fff;border:1px solid #0f172a3d;border-radius:8px;width:34px;height:32px}.whiteboard-canvas-wrap{background:#e2e8f0;padding:12px;position:relative}.whiteboard-canvas{background:#fff;border:1px solid #0f172a33;border-radius:10px;width:100%;height:auto;display:block}.whiteboard-canvas.editable{cursor:crosshair}.whiteboard-error{color:#b91c1c;margin:0;padding:0 12px 12px;font-size:.85rem}@media (max-width:900px){.whiteboard-panel{width:98vw}}
