:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (max-width:1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}#root:has(.lesson-shell){border-inline:none;width:100%}:is(#root:has(.diary),#root:has(.diary-pin)){background:inherit;border-inline:none;width:100%}body{margin:0}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (max-width:1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (max-width:1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}:root{--c-accent:#2b5797;--c-accent-soft:#7fb0ff;--c-danger:#e54d4d;--c-danger-deep:#b32424;--c-success:#4caf50;--c-warn:#e0b73c;--c-bg:#161616;--c-surface:#232323;--c-surface-2:#2a2a2a;--c-surface-3:#3a3a3a;--c-border:#444;--c-border-soft:#555;--c-text:#fff;--c-text-muted:#d7d7d7;--c-text-faint:#777;--r-sm:.4rem;--r-md:.5rem;--r-lg:.6rem;--sp-1:.2rem;--sp-2:.35rem;--sp-3:.5rem;--sp-4:.6rem;--sp-5:.8rem;--sp-6:1rem;--touch-min:44px}.center-screen{height:100vh;text-align:center;flex-direction:column;justify-content:safe center;align-items:center;height:100dvh;padding:1rem;display:flex;overflow-y:auto}.center-screen.error{white-space:pre-line;max-width:34rem;margin:0 auto}.center-screen h1{margin:0 0 .75rem;line-height:1.25}.app-handoff .ah-remember{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-2);cursor:pointer;min-height:var(--touch-min);font-size:.9rem;display:flex}.app-handoff .ah-remember input{width:1.15rem;height:1.15rem}.handoff-recall{justify-content:center;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);color:#24262a;background:#f3f4f6;border-bottom:1px solid #d8dade;flex-wrap:wrap;font-size:.9rem;display:flex}.handoff-recall button{min-height:var(--touch-min);padding:0 var(--sp-4);border-radius:var(--r-md);color:#24262a;cursor:pointer;background:#fff;border:1px solid #c9ccd1}@media (prefers-color-scheme:dark){.handoff-recall{color:#e6e8ea;background:#23262b;border-bottom-color:#34383f}.handoff-recall button{color:#e6e8ea;background:0 0;border-color:#4a4f57}}.app-handoff{text-align:center;flex-direction:column;gap:.7rem;width:min(22rem,90vw);display:flex}.app-handoff p.muted{margin:0 0 .3rem}.app-handoff button,.app-handoff .ah-install{border:1px solid var(--border,#555);cursor:pointer;box-sizing:border-box;border-radius:.6rem;width:100%;padding:.75rem 1rem;font-size:1.05rem;text-decoration:none;display:block}.app-handoff .ah-primary{color:#fff;background:#2b5797;border-color:#2b5797}.app-handoff .ah-install{color:inherit;background:0 0}.app-handoff .ah-browser{color:inherit;opacity:.7;background:0 0;border:none;font-size:.95rem}.wait-spinner{border:3px solid #333;border-top-color:#2b5797;border-radius:50%;width:2.6rem;height:2.6rem;margin-bottom:1.2rem;animation:.9s linear infinite wait-spin}@keyframes wait-spin{to{transform:rotate(360deg)}}.wait-dots{gap:.55rem;margin-bottom:1.3rem;display:flex}.wait-dots span{background:#4f82d8;border-radius:50%;width:.9rem;height:.9rem;animation:1.3s ease-in-out infinite wait-bounce}.wait-dots span:nth-child(2){animation-delay:.16s}.wait-dots span:nth-child(3){animation-delay:.32s}@keyframes wait-bounce{0%,70%,to{opacity:.45;transform:translateY(0)scale(.8)}35%{opacity:1;transform:translateY(-.85rem)scale(1.05)}}.wait-calm{opacity:.6;max-width:22rem;font-size:.82rem}.join-wait-screen{z-index:80;background:var(--c-bg);color:var(--c-text);position:fixed;inset:0}.join-wait-screen h1{color:var(--c-text)}.join-wait-screen .wait-calm{color:var(--c-text-muted)}.prejoin{flex-direction:column;gap:.55rem;width:min(26rem,92vw);display:flex}.prejoin h1{margin:0 0 .2rem;font-size:1.3rem}.prejoin-video{aspect-ratio:16/9;object-fit:cover;background:#000;border-radius:.6rem;align-self:center;width:auto;max-width:100%;height:32vh}video.prejoin-video{transform:scaleX(-1)}.prejoin-video-wrap{position:relative}.prejoin-refresh{color:#fff;cursor:pointer;opacity:.85;background:#0009;border:none;border-radius:.4rem;align-items:center;gap:.35rem;padding:.3rem .6rem;font-size:.8rem;display:inline-flex;position:absolute;bottom:.5rem;right:.5rem}.prejoin-refresh:hover{opacity:1}.prejoin-level{background:#2a2a2a;border-radius:.3rem;height:.45rem;overflow:hidden}.prejoin-level-bar{background:#4caf50;height:100%;transition:width .1s linear}.prejoin-row{align-items:center;gap:.5rem;display:flex}.prejoin-row>svg{opacity:.8;flex:0 0 1.4rem}.pj-toggle{width:2.4rem;height:2.4rem;color:inherit;cursor:pointer;background:0 0;border:1px solid #555;border-radius:.5rem;flex:none;justify-content:center;align-items:center;display:flex}.pj-toggle:hover{background:#7f7f7f26}.pj-toggle.off{color:#e54d4d;border-color:#a33}.pj-toggle.playing{color:#7fd58a;border-color:#3f7a47}.prejoin-cam-off{color:#777;justify-content:center;align-items:center;display:flex}.prejoin-row select{min-width:0;color:inherit;background:0 0;border:1px solid #555;border-radius:.5rem;flex:1;padding:.6rem .8rem;font-size:1rem}.prejoin-row select option{color:#eee;background:#161616}.prejoin-rtt{border-radius:.4rem;padding:.45rem .6rem;font-size:.85rem}.prejoin-rtt.good{color:#7fd58a}.prejoin-rtt.mid{color:#e8c06a;background:#9e711040}.prejoin-rtt.bad{color:#ff8a84;background:#a0262040}.prejoin-enter{padding:.6rem;font-size:1.1rem}.check-label{cursor:pointer;align-items:center;gap:.3rem;font-size:.9rem;display:inline-flex}.error{color:#e54d4d}.join-form{flex-direction:column;gap:1rem;width:min(20rem,90vw);display:flex}.join-form input{color:inherit;background:0 0;border:1px solid #555;border-radius:.5rem;padding:.6rem .8rem;font-size:1.1rem}.join-form button{padding:.6rem;font-size:1.1rem}.prejoin-check{gap:.5rem}.prejoin-check input[type=checkbox]{accent-color:#2e7dff;width:1.05rem;height:1.05rem}.prejoin-check span{font-size:.92rem}.prejoin-cam-warn{color:#fff;background:#9e7110f2;border-radius:.5rem;margin-bottom:.5rem;padding:.55rem .7rem;font-size:.85rem;line-height:1.3}.prejoin-bare{color:var(--fg-muted,#9aa3ad);cursor:pointer;background:0 0;border:none;border-radius:.35rem;align-items:center;gap:.4rem;margin-top:.6rem;padding:.35rem .6rem;font-size:.85rem;display:inline-flex}.prejoin-bare:hover{color:var(--fg,#e6e9ec);background:#ffffff0f}.prejoin-name-overlay{color:#fff;text-align:center;text-overflow:ellipsis;white-space:nowrap;border-radius:var(--radius,.5rem) var(--radius,.5rem) 0 0;pointer-events:none;background:linear-gradient(#000000a6,#0000);padding:.5rem .7rem 1.6rem;font-size:1.5rem;font-weight:600;line-height:1.2;position:absolute;top:0;left:0;right:0;overflow:hidden}.prejoin-cam-off{position:relative}.lesson-shell{height:100%;min-height:0;display:flex}#root .room-root{position:fixed;inset:0;overflow:hidden}.lesson-main{flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.side-panel{text-align:left;background:#161616;border-left:1px solid #444;flex-direction:column;width:min(20rem,90vw);display:flex}.lesson-shell.screens-compact .side-panel.people{width:min(13rem,45vw)}.screens-compact .person-name{font-size:.82rem}.screens-compact .people-list{padding:var(--sp-1) .5rem}.screen-full{z-index:50;background:#000;position:fixed;inset:0}.screen-full .lk-participant-tile{width:100%;height:100%}.screen-full-exit{z-index:51;color:#fff;cursor:pointer;background:#282828d9;border:none;border-radius:.6rem;align-items:center;gap:.4rem;padding:.45rem 1rem;font-size:.9rem;display:flex;position:fixed;top:.6rem;left:50%;transform:translate(-50%)}.screen-full-exit:hover{background:#2b5797}.esc-hint{opacity:.7;border:1px solid #888;border-radius:.25rem;padding:0 .25rem;font-size:.7rem}.side-panel-header{border-bottom:1px solid #444;justify-content:space-between;align-items:center;padding:.6rem .8rem;display:flex}.side-panel-header button{color:inherit;cursor:pointer;background:0 0;border:none;font-size:1.1rem}.side-panel-close{border-radius:.5rem;justify-content:center;align-items:center;min-width:40px;min-height:40px;margin:-.4rem -.4rem -.4rem 0;display:flex}.side-panel-close:hover{background:#2a2a2a}.side-panel-titles{flex-direction:column;gap:.1rem;min-width:0;display:flex}.conf-topbar{background:#1f1f22;border-bottom:1px solid #333;flex:none;justify-content:center;align-items:center;gap:.45rem;padding:.4rem .9rem;display:flex;position:relative}.conf-logo{width:auto;height:28px;display:block;position:absolute;top:50%;left:.6rem;transform:translateY(-50%)}.conf-topbar-title{white-space:nowrap;text-overflow:ellipsis;max-width:70%;font-size:.92rem;font-weight:600;overflow:hidden}.conf-topbar-3col{justify-content:initial;grid-template-columns:1fr auto 1fr;display:grid}.conf-topbar-3col .conf-topbar-ind{justify-self:start}.conf-topbar-3col .conf-topbar-title{max-width:100%}.conf-topbar-3col .lesson-duration{justify-self:end}.conf-topbar .lesson-duration{opacity:.8}@media (max-width:600px){.side-panel{z-index:30;width:100%;position:fixed;inset:0}.side-panel-header{padding-top:calc(.6rem + env(safe-area-inset-top,0px))}}.panel-btn{color:inherit;cursor:pointer;background:0 0;border:1px solid #777;border-radius:.5rem;padding:.5rem .8rem}.panel-btn.active{background:#2b5797;border-color:#2b5797}.people-list{padding:var(--sp-1) .8rem;flex:1;overflow-y:auto}.people-footer{border-top:1px solid #333;flex-direction:column;gap:.4rem;padding:.5rem .8rem;display:flex}.panel-foot-btn{width:100%;color:inherit;font:inherit;cursor:pointer;background:0 0;border:1px solid #444;border-radius:.5rem;justify-content:center;align-items:center;gap:.45rem;padding:.5rem .6rem;font-size:.85rem;display:flex}.panel-foot-btn:hover{background:#2a2a2a}.lower-hand-btn{color:#e8b923;cursor:pointer;opacity:0;background:0 0;border:none;padding:.1rem;display:flex}.person-row:hover .lower-hand-btn,.lower-hand-btn:focus{opacity:1}.deep-ns-toggle{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #444;border-radius:.5rem;align-items:center;gap:.45rem;padding:.5rem .6rem;font-size:.82rem;display:flex}.deep-ns-toggle:hover{background:#232323}.deep-ns-toggle.on{background:#1d3050;border-color:#2b5797}.deep-ns-toggle>span:first-of-type{flex:1}.deep-ns-state{opacity:.7;text-transform:uppercase;font-size:.72rem}.deep-ns-toggle.on .deep-ns-state{color:#7fb0ff;opacity:1}.person-avatar{color:#fff;border-radius:.35rem;flex:0 0 1.7rem;justify-content:center;align-items:center;width:1.7rem;height:1.7rem;font-size:.85rem;font-weight:600;display:flex}.person-dev{opacity:.85;align-items:center;display:flex}.person-dev.off{color:#e54d4d;opacity:1}.person-row{padding:var(--sp-1) 0;align-items:center;gap:.5rem;display:flex;position:relative}@media (max-width:600px),(pointer:coarse) and (max-width:1200px){.person-row{padding:.45rem 0}.people-list{padding:.5rem .8rem}.screens-compact .people-list{padding:.5rem}}.row-menu-btn{color:inherit;opacity:.55;cursor:pointer;background:0 0;border:none;padding:.1rem;display:flex}.person-row:hover .row-menu-btn,.row-menu-btn:focus{opacity:1}.tile-menu.row-menu{z-index:40;position:absolute;top:100%;right:0}.row-menu-portal{z-index:60}.person-row.speaking .person-dev.mic:not(.off){color:var(--c-success);opacity:1}.person-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.person-role{font-size:.78rem}.rename-row{cursor:pointer;background:0 0;border:none;padding:0 .2rem;font-size:.9rem}.sharing-banner{z-index:40;color:#fff;background:#2b5797;border-radius:0 0 .6rem .6rem;align-items:center;gap:.6rem;padding:.4rem 1rem;font-size:.9rem;display:flex;position:fixed;top:0;left:50%;transform:translate(-50%)}.sharing-banner button{color:#fff;cursor:pointer;background:#b32424;border:none;border-radius:.4rem;padding:.3rem .7rem}.sharing-banner button.sound-toggle{background:#1d3e6e;align-items:center;gap:.3rem;display:inline-flex}body.is-sharing .controls-row{margin-bottom:3.5rem}.share-warn,.share-hint{z-index:41;border-radius:.6rem;align-items:center;gap:.5rem;width:min(92vw,34rem);padding:.45rem .9rem;font-size:.88rem;line-height:1.25;display:flex;position:fixed;top:2.4rem;left:50%;transform:translate(-50%);box-shadow:0 2px 10px #00000040}.share-warn{color:#fff;background:#b32424}.share-hint{color:#fff;background:#8a5a00}.share-warn svg,.share-hint svg{flex:none}.share-warn>:not(svg):not(button),.share-hint>:not(svg):not(button){flex:auto;min-width:0}.share-warn button,.share-hint button{color:#fff;cursor:pointer;white-space:nowrap;background:#ffffff38;border:none;border-radius:.4rem;flex:none;margin-left:.3rem;padding:.25rem .6rem}.share-warn button{min-height:2rem;padding:var(--sp-2) var(--sp-5);color:var(--c-danger-deep);background:#fff;font-weight:600}@media (max-width:600px),(pointer:coarse) and (max-width:1200px){.share-warn{flex-wrap:wrap;row-gap:.5rem}.share-warn>:not(svg):not(button){flex:1 1 0}.share-warn button{min-height:var(--touch-min);flex:1 0 100%;margin-left:0}}.ask-video-toast{z-index:40;color:#fff;background:#2b5797;border-radius:0 0 .6rem .6rem;align-items:center;gap:.6rem;padding:.4rem .5rem .4rem 1rem;font-size:.9rem;display:flex;position:fixed;top:0;left:50%;transform:translate(-50%)}.ask-video-toast .ask-video-on{color:#fff;cursor:pointer;background:#2e8b57;border:none;border-radius:.4rem;padding:.3rem .7rem}.ask-video-toast .ask-video-dismiss{color:#cfd8e6;cursor:pointer;background:0 0;border:none;border-radius:.4rem;align-items:center;padding:.25rem;display:inline-flex}.ask-video-toast .ask-video-dismiss:hover{color:#fff;background:#ffffff26}.lesson-layout{flex-direction:column;height:100%;min-height:0;display:flex}.lesson-layout>:first-child{flex:1;min-height:0}.conf-topbar-ind{color:#fff;white-space:nowrap;background:#7c3aed;border-radius:.6rem;padding:.1rem .5rem;font-size:.72rem;font-weight:600}.camera-busy-toast{z-index:41;color:#fff;background:#8b2e2e;border-radius:0 0 .6rem .6rem;align-items:center;gap:.6rem;max-width:min(92vw,46rem);padding:.4rem .6rem .4rem 1rem;font-size:.9rem;display:flex;position:fixed;top:0;left:50%;transform:translate(-50%)}.camera-busy-toast .camera-busy-retry{color:#fff;cursor:pointer;background:#2e8b57;border:none;border-radius:.4rem;flex:none;padding:.3rem .7rem}.camera-busy-toast .camera-busy-retry:disabled{cursor:default;background:#4a5a52}.simple-grid-wrap{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;position:relative}.simple-grid{overscroll-behavior:contain;flex:1;grid-auto-rows:1fr;gap:4px;min-height:0;padding:4px;display:grid;overflow-y:auto}.grid-more{left:50%;bottom:calc(var(--sp-6) + var(--sp-5));z-index:3;justify-content:center;align-items:center;gap:var(--sp-2);min-width:var(--touch-min);min-height:var(--touch-min);padding:0 var(--sp-5);border:1px solid var(--c-border);color:var(--c-text);font-variant-numeric:tabular-nums;cursor:pointer;background:#000000b8;border-radius:999px;font-size:.9rem;display:inline-flex;position:absolute;transform:translate(-50%)}.grid-more:hover{background:#000000d9}.simple-grid .tile-wrap{aspect-ratio:auto;height:100%;min-height:0;overflow:hidden}.simple-grid .tile-wrap:not(.is-screen) video{object-fit:contain;width:100%;min-width:0;max-width:100%;height:100%}.simple-grid-landscape .tile-wrap{aspect-ratio:16/9;height:auto}.simple-grid-landscape .tile-wrap video{object-fit:contain}.tile-wrap.is-screen .lk-participant-metadata{display:none}.screen-label{z-index:2;text-overflow:ellipsis;white-space:nowrap;color:#fff;background:#000000a6;border-radius:.3rem;max-width:calc(100% - 1rem);padding:.15rem .5rem;font-size:.8rem;position:absolute;bottom:.4rem;left:.4rem;overflow:hidden}.lk-focus-layout>.tile-wrap,.screen-full .tile-wrap{height:100%}.lk-focus-layout>.tile-wrap video,.screen-full .tile-wrap video{object-fit:contain;width:100%;min-width:0;max-width:100%;height:100%}.tile-wrap,.tile-wrap>.lk-participant-tile{container-type:inline-size}.tile-wrap .lk-participant-metadata{max-width:100%}.tile-wrap .lk-participant-metadata-item{font-size:.75rem;gap:.1em;min-width:0;max-width:100%;padding:.12em .18em;font-size:clamp(.75rem,5.6cqi,.9rem)}.tile-wrap .lk-participant-name{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.tile-wrap .lk-participant-metadata .lk-participant-metadata-item .lk-participant-name{-webkit-line-clamp:2;white-space:normal;overflow-wrap:normal;text-overflow:clip;font-size:.62rem;line-height:1.12;-webkit-box-orient:vertical;flex:auto;min-width:0;font-size:clamp(.75rem,5.6cqi,.9rem);display:-webkit-box;overflow:hidden}.tile-wrap.is-instructor .lk-participant-metadata .lk-participant-metadata-item .lk-participant-name{white-space:normal;overflow-wrap:normal;-webkit-line-clamp:2;text-overflow:clip;-webkit-box-orient:vertical;line-height:1.12;display:-webkit-box}@container (width<=150px){.tile-wrap .lk-participant-metadata .lk-participant-metadata-item .lk-participant-name{font-size:clamp(.62rem,8cqi,.75rem)}}@container (width<=220px){.tile-wrap .lk-participant-metadata{max-width:100%}.tile-wrap .lk-participant-metadata-item{gap:.2em;padding:.15em .3em}}.tile-wrap .lk-participant-metadata-item svg{transform-origin:50%;flex:none;width:1rem;height:1rem}@container (width<=150px){.tile-wrap .lk-participant-metadata .lk-participant-metadata-item .lk-participant-name{font-size:clamp(.62rem,8cqi,.75rem)}}@container (width<=220px){.tile-wrap .lk-participant-metadata-item svg,.tile-wrap .conn-badge svg{transform:scale(.82)}}@container (width<=160px){.tile-wrap .lk-participant-metadata-item svg,.tile-wrap .conn-badge svg{transform:scale(.72)}}@container (width<=120px){.tile-wrap .lk-participant-metadata-item svg,.tile-wrap .conn-badge svg{transform:scale(.62)}}.connection-toast{z-index:60;color:#fff;background:#1e1e1ee6;border-radius:.6rem;padding:.5rem 1.2rem;font-size:.95rem;position:fixed;top:3rem;left:50%;transform:translate(-50%)}.connection-toast.lane-down{text-align:center;width:max-content;max-width:min(34rem,92vw);top:5.6rem}.alone-hint{z-index:20;color:#fff;background:#2b5797eb;border-radius:.6rem;align-items:center;gap:.6rem;width:max-content;max-width:min(34rem,92vw);padding:.5rem 1rem;font-size:.88rem;display:flex;position:fixed;top:3rem;left:50%;transform:translate(-50%)}.alone-hint button{color:#fff;cursor:pointer;background:0 0;border:none;font-size:1rem}.tile-hold{z-index:1;opacity:0;pointer-events:none;background:0 0;width:100%;height:100%;position:absolute;inset:0}.tile-wrap .lk-participant-metadata{z-index:2;pointer-events:none}.tile-wrap .lk-participant-metadata .lk-connection-quality{display:none}.conn-badge{z-index:1;cursor:help;opacity:.45;align-items:center;transition:opacity .12s;display:flex;position:absolute;bottom:.4rem;right:.4rem}.conn-badge:hover,.conn-badge:focus-within,.conn-badge:active{opacity:1}.conn-badge .lk-connection-quality,.conn-badge svg{width:1rem;height:1rem}.conn-tip{box-sizing:border-box;overflow-wrap:anywhere;color:#fff;text-align:left;z-index:60;pointer-events:none;background:#141414f2;border-radius:.4rem;max-width:min(22rem,100vw - 1rem);padding:.4rem .6rem;font-size:.72rem;line-height:1.4;position:fixed;box-shadow:0 4px 16px #0000008c}.lk-connection-quality[data-lk-quality=excellent]{color:#4caf50}.lk-connection-quality[data-lk-quality=good]{color:#e0b73c}.lk-connection-quality[data-lk-quality=poor],.lk-connection-quality[data-lk-quality=lost],.lk-connection-quality[data-lk-quality=unknown]{color:#e54d4d}.quality-hint{z-index:35;color:#fff;border-radius:.6rem;align-items:center;gap:.6rem;max-width:min(36rem,94vw);padding:.55rem .9rem;font-size:.85rem;display:flex;position:fixed;bottom:6.2rem;left:50%;transform:translate(-50%)}.quality-hint.poor{background:#9e7110f2}.quality-hint.lost{background:#a02620f2}.quality-hint-text{flex-direction:column;gap:.15rem;display:flex}.quality-hint button{color:#fff;cursor:pointer;background:0 0;border:none;align-self:flex-start;font-size:1rem}.cpu-toast{z-index:40;color:#fff;text-align:center;background:#be7800f2;border-radius:.6rem;max-width:90vw;padding:.5rem .9rem;font-size:.85rem;position:fixed;bottom:6.4rem;left:50%;transform:translate(-50%);box-shadow:0 2px 10px #00000059}.mic-dead-hint{z-index:70;color:#fff;background:#be1e1ef5;border-radius:.6rem;align-items:center;gap:.7rem;max-width:92vw;padding:.6rem 1rem;font-size:.9rem;display:flex;position:fixed;top:3rem;left:50%;transform:translate(-50%);box-shadow:0 2px 12px #0006}.mic-dead-hint button{color:#b01e1e;cursor:pointer;background:#fff;border:0;border-radius:.4rem;flex:none;padding:.3rem .8rem;font-size:.85rem;font-weight:600}.cpu-badge{z-index:3;color:#fff;background:#be7800eb;border-radius:.4rem;align-items:center;padding:.22rem;display:flex;position:absolute;top:.4rem;left:.4rem}.tile-wrap:has(.hand-badge) .cpu-badge{left:2.6rem}.noaudio-badge{z-index:3;color:#fff;background:#b01e1eeb;border-radius:.4rem;align-items:center;padding:.22rem;display:flex;position:absolute;top:.4rem;left:.4rem}:is(.tile-wrap:has(.hand-badge) .noaudio-badge,.tile-wrap:has(.cpu-badge) .noaudio-badge){left:2.6rem}.tile-wrap:has(.hand-badge):has(.cpu-badge) .noaudio-badge{left:4.8rem}.hand-badge{z-index:3;color:#fff;background:#2b5797e6;border-radius:.4rem;align-items:center;padding:.22rem;animation:1.6s ease-in-out infinite hand-pulse;display:flex;position:absolute;top:.4rem;left:.4rem}@keyframes hand-pulse{50%{transform:scale(1.15)}}@container (width<=150px){.tile-wrap .lk-participant-metadata .lk-participant-metadata-item .lk-participant-name{font-size:clamp(.62rem,8cqi,.75rem)}}@container (width<=220px){.tile-wrap .hand-badge,.tile-wrap .cpu-badge,.tile-wrap .noaudio-badge,.tile-wrap .no-mic,.tile-wrap .spotlight-badge{padding:.12rem .22rem;top:.25rem}.tile-wrap .hand-badge,.tile-wrap .cpu-badge,.tile-wrap .no-mic{left:.25rem}.tile-wrap .spotlight-badge{left:1.9rem}.tile-wrap:has(.hand-badge) .cpu-badge{left:1.9rem}.tile-wrap .conn-badge{bottom:.25rem;right:.25rem}.tile-wrap .hand-badge svg,.tile-wrap .cpu-badge svg,.tile-wrap .no-mic svg,.tile-wrap .spotlight-badge svg{width:.8rem;height:.8rem}.tile-wrap .screen-label{max-width:calc(100% - 2rem);padding:.1rem .35rem;font-size:clamp(.55rem,5cqi,.8rem);bottom:.25rem;left:.25rem}}@container (width<=160px){.tile-wrap .hand-badge svg,.tile-wrap .cpu-badge svg,.tile-wrap .no-mic svg,.tile-wrap .spotlight-badge svg{width:.7rem;height:.7rem}:is(.tile-wrap .spotlight-badge,.tile-wrap:has(.hand-badge) .cpu-badge){left:1.6rem}}@container (width<=120px){.tile-wrap .hand-badge svg,.tile-wrap .cpu-badge svg,.tile-wrap .no-mic svg,.tile-wrap .spotlight-badge svg{width:.62rem;height:.62rem}:is(.tile-wrap .spotlight-badge,.tile-wrap:has(.hand-badge) .cpu-badge){left:1.4rem}}.person-hand{color:#7fb0ff;flex:none;display:flex}.hands-float{z-index:30;text-overflow:ellipsis;white-space:nowrap;color:#fff;background:#2b5797eb;border-radius:.6rem;align-items:center;gap:.35rem;max-width:18rem;padding:.4rem .7rem;font-size:.85rem;display:inline-flex;position:fixed;bottom:6.4rem;left:1rem;overflow:hidden}.tile-menu button{align-items:center;gap:.45rem;display:flex}.volume-row{align-items:center;gap:.4rem;padding:.35rem .5rem;display:flex}.volume-row input[type=range]{accent-color:#2b5797;flex:0 0 6rem;width:6rem}.volume-val{text-align:right;opacity:.8;flex:0 0 2.6rem;font-size:.78rem}.rename-row{color:inherit;opacity:.75;display:flex}.rename-row:hover{opacity:1}.tile-wrap.mic-unavail .lk-track-muted-indicator-microphone,.tile-wrap[data-mic=on] .lk-track-muted-indicator-microphone{display:none}.tile-wrap[data-mic=off] .lk-participant-tile[data-lk-speaking=true]:not([data-lk-source=screen_share]):after,.tile-wrap.ind-nobody-hears .lk-participant-tile[data-lk-speaking=true]:after{border-width:0}.tile-wrap.drag-over{outline-offset:-3px;border-radius:.5rem;outline:3px solid #2b5797}.tile-wrap[draggable=true]{cursor:grab}.tile-wrap[draggable=true] :is(img,video,canvas){-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.audio-list{padding:1rem;overflow-y:auto}.audio-participant{align-items:center;gap:.5rem;padding:.4rem 0;list-style:none;display:flex}.lesson-summary{box-sizing:border-box;text-align:left;width:100%;max-width:34rem;margin:1rem auto 0;padding:0 .5rem;font-size:1rem;line-height:1.35}.summary-head{margin:0 0 .6rem;font-size:1rem}.summary-title{opacity:.8;margin:.8rem 0 .3rem;font-size:1rem;font-weight:600}.summary-names{margin:0;padding-left:1.4rem}.summary-names li{padding:.1rem 0}.summary-absent{opacity:.75}.summary-comment{white-space:pre-line;margin:.3rem 0}.summary-note{opacity:.8;margin:.6rem 0 0;font-size:1rem}.summary-mismatch{background:#c88c002e;border-radius:.4rem;margin:0 0 .6rem;padding:.4rem .6rem;font-size:.9rem}.center-screen:has(.lesson-summary){justify-content:flex-start;padding-top:1.5rem;overflow-y:auto}.center-screen:has(.lesson-summary) h1{margin:0 0 .5rem;font-size:1.2rem}:is(.simple-grid:has(.ind-speak-wrap) .tile-wrap .lk-participant-name,.simple-grid-wrap:has(.ind-speak-wrap) .tile-wrap .lk-participant-name){text-shadow:1px 0 #000,-1px 0 #000,0 1px #000,0 -1px #000}:is(.simple-grid:has(.ind-speak-wrap) .tile-wrap .lk-participant-metadata,.simple-grid-wrap:has(.ind-speak-wrap) .tile-wrap .lk-participant-metadata){z-index:6}.held-room{z-index:60;background:var(--c-bg);color:var(--c-text);position:fixed;inset:0}.held-tile{background:var(--c-surface);border-radius:6px;overflow:hidden}.held-tile .tile-hold{object-fit:contain}.held-name{z-index:2;white-space:nowrap;text-overflow:ellipsis;background:#0000008c;border-radius:4px;max-width:calc(100% - 12px);padding:2px 8px;font-size:.85rem;position:absolute;bottom:6px;left:6px;overflow:hidden}.held-banner{z-index:3;background:#000000c7;border-radius:999px;align-items:center;gap:.7rem;width:-moz-fit-content;width:fit-content;margin:0 auto;padding:.55rem 1rem;font-size:.9rem;line-height:1.3;display:flex;position:absolute;top:12px;left:16px;right:16px}.held-banner .wait-dots{flex:none;gap:.35rem;margin-bottom:0}.held-banner .wait-dots span{width:.55rem;height:.55rem}.admin{--adm-accent:var(--c-accent);--adm-accent-ink:#1e3e6e;--adm-ink:#16202e;--adm-ink-2:#5a6a7d;--adm-ink-3:#8b98a8;--adm-surface:#fff;--adm-line:#e7ebf1;--adm-line-strong:#ccd4e0;--adm-shadow:0 1px 2px #1018280d, 0 4px 12px #1018280d;--adm-r:10px;--adm-ctl:36px;--adm-ctl-sm:30px;--adm-open:#fffef2;--adm-open-line:#f0ecd9;text-align:left;background:var(--adm-surface);width:100%;max-width:68rem;color:var(--adm-ink);letter-spacing:normal;margin:0 auto;padding:1.25rem 1rem 3rem;font-size:15px;line-height:1.45}.admin-header{align-items:baseline;gap:var(--sp-5);margin-bottom:var(--sp-5);flex-wrap:wrap;display:flex}.admin-header h1{letter-spacing:-.01em;margin:0 auto 0 0;font-size:20px;font-weight:600}.admin-header .muted,.admin-header button.link{font-size:13px}.admin-card{background:var(--adm-surface);border:1px solid var(--adm-line);border-radius:var(--adm-r);box-shadow:var(--adm-shadow);margin:0 0 1rem;padding:.75rem .9rem .9rem}.admin-card h2{margin:0 0 var(--sp-4);text-align:left;font-size:15px;font-weight:600}.admin h1,.admin h2,.admin h3{color:var(--adm-ink)}.admin-card h3{margin:1rem 0 var(--sp-3);letter-spacing:.07em;text-transform:uppercase;color:var(--adm-ink-2);font-size:11px;font-weight:600}.admin button{height:var(--adm-ctl);border-radius:var(--r-sm);color:var(--adm-ink);cursor:pointer;box-sizing:border-box;background:#eef1f5;border:1px solid #d8dee7;padding:0 .9rem;font-family:inherit;font-size:15px;line-height:1}.admin button:hover{background:#e4e9f0}.admin button.primary,.admin .inline-form button[type=submit]{background:var(--adm-accent);border-color:var(--adm-accent);color:#fff}.admin button.primary:hover,.admin .inline-form button[type=submit]:hover{background:var(--adm-accent-ink)}.admin button.danger{color:var(--c-danger);border-color:var(--c-danger);background:0 0}.admin button.danger:hover{background:var(--c-danger);color:#fff}.admin button.link{height:auto;min-height:0;color:inherit;background:0 0;border:none;padding:0;font-size:15px}.admin button.link:hover{background:0 0}.admin button:focus-visible,.admin input:focus-visible,.admin select:focus-visible{outline:2px solid var(--adm-accent);outline-offset:1px}.inline-form input.grow{flex:22rem;min-width:12rem}.inline-form{align-items:center;gap:var(--sp-3);flex-wrap:wrap;margin:0;display:flex}.admin input,.admin select{height:var(--adm-ctl);border-radius:var(--r-sm);border:1px solid var(--adm-line-strong);background:var(--adm-surface);color:inherit;box-sizing:border-box;margin:0;padding:0 .6rem;font-family:inherit;font-size:15px;line-height:1}.admin select{appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235a6a7d' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;padding-right:1.75rem}.admin input[type=checkbox]{width:15px;height:15px;accent-color:var(--adm-accent);padding:0}.admin input:focus,.admin select:focus{border-color:var(--adm-accent)}.muted{opacity:.65}.admin .muted{color:var(--adm-ink-3);opacity:1}.admin .hint{color:var(--adm-ink-2);font-size:13px}.invite-off{opacity:.55}.admin button svg,.admin .icon-btn svg,.admin label svg{stroke-width:1.9px;width:16px;height:16px}.admin .lesson-caret{stroke-width:2.4px;width:16px;height:16px}.lesson-list{margin:0;padding:0;list-style:none}.lesson-group{margin:0}.lesson-group-title{letter-spacing:.07em;text-transform:uppercase;color:var(--adm-ink-2);border-bottom:1px solid var(--adm-line);margin:0;padding:.7rem .1rem .35rem;font-size:11px;font-weight:600}.lesson-item{border-top:1px solid var(--adm-line);padding:0}.lesson-item:first-child{border-top:none}.lesson-item.open{background:var(--adm-open)}.lesson-row{align-items:center;gap:var(--sp-4);min-height:42px;padding:0 var(--sp-3);grid-template-columns:minmax(0,1fr) max-content auto;display:grid}.lesson-kind{white-space:nowrap;color:var(--adm-ink-2);flex:none;font-size:13px}.lesson-actions{flex:none;align-items:center;gap:2px;display:flex}.lesson-toggle{align-items:center;gap:var(--sp-3);flex:auto;min-width:0;display:inline-flex;overflow:hidden}.lesson-toggle b{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:400;text-decoration:none;overflow:hidden}.lesson-toggle .lesson-caret{color:var(--adm-ink-3);flex:none;transition:transform .15s}.lesson-toggle.open .lesson-caret{color:var(--adm-accent);transform:rotate(90deg)}.admin .icon-btn{width:30px;height:30px;min-height:0;color:var(--adm-ink-2);border-radius:var(--r-sm);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;display:inline-flex}.admin .icon-btn:hover{color:var(--adm-ink);background:#eef1f6}.admin .icon-btn.danger{color:var(--c-danger);background:0 0;border-color:#0000}.admin .icon-btn.danger:hover{color:var(--c-danger);background:#e54d4d1f}.admin .icon-btn:disabled{opacity:.35;cursor:default}.admin .icon-btn:disabled:hover{background:0 0}.admin .host-link-btn{align-items:center;gap:.3rem;display:inline-flex}.lesson-details{padding:var(--sp-3) var(--sp-3) var(--sp-5) 2.2rem;border-top:1px solid var(--adm-open-line);margin:0}.lesson-meta{align-items:center;gap:var(--sp-5) var(--sp-6);margin:var(--sp-3) 0;color:var(--adm-ink-2);flex-wrap:wrap;font-size:13px;display:flex}.invites{margin:0}.invites-head,.panel-head{align-items:center;gap:var(--sp-3) var(--sp-5);flex-wrap:wrap;display:flex}.invite-table{border-collapse:collapse;width:100%;font-size:13px}.invite-table th{text-align:left;letter-spacing:.06em;text-transform:uppercase;color:var(--adm-ink-3);padding:0 var(--sp-4) var(--sp-2) 0;white-space:nowrap;font-size:11px;font-weight:400}.invite-table td{padding:var(--sp-2) var(--sp-4) var(--sp-2) 0;border-top:1px solid var(--adm-open-line);vertical-align:middle;white-space:nowrap}.invite-table td.inv-active,.invite-table th.inv-active{width:30px;padding-right:var(--sp-5)}.invite-table td.inv-active label{height:var(--adm-ctl-sm);justify-content:center;align-items:center;display:inline-flex}.invite-table td.inv-mini{text-align:center;width:34px;padding-right:0}.invite-table select{height:var(--adm-ctl-sm);font-size:13px}.invite-table td.inv-url{text-overflow:ellipsis;width:100%;max-width:0;color:var(--adm-ink-2);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;overflow:hidden}.invite-name,.invite-name-edit{align-items:center;gap:var(--sp-1);display:inline-flex}.invite-name .icon-btn,.inv-url .icon-btn{width:26px;height:26px}.invite-add{align-items:center;gap:var(--sp-3);margin:0 0 var(--sp-4);flex-wrap:wrap;display:flex}.invite-add input,.invite-add select,.invite-add button{height:var(--adm-ctl-sm);font-size:13px}.invite-add .inv-slug{flex:0 17rem;min-width:13rem}.invite-under{margin-top:var(--sp-4)}.invite-under button{height:var(--adm-ctl-sm);font-size:13px}.invite-bulk{gap:var(--sp-3);margin:0 0 var(--sp-4);max-width:32rem;display:grid}.invite-bulk textarea{font:inherit;min-height:6rem;padding:var(--sp-3);border:1px solid var(--adm-line-strong);border-radius:var(--r-sm);resize:vertical;font-size:13px}.invite-bulk-actions{gap:var(--sp-3);flex-wrap:wrap;align-items:center;display:flex}.invite-bulk-actions button{height:var(--adm-ctl-sm);font-size:13px}.admin.admin-login{max-width:24rem;padding:3rem 1rem}.admin.admin-login .join-form{gap:var(--sp-4);border:1px solid var(--adm-line);border-radius:var(--adm-r);width:100%;max-width:none;box-shadow:var(--adm-shadow);background:var(--adm-surface);padding:1.1rem;display:grid}.admin.admin-login h1{margin:0 0 var(--sp-3);text-align:left;color:var(--adm-ink);font-size:20px;font-weight:600}.admin.admin-login .join-form input,.admin.admin-login .join-form button{width:100%;max-width:none;font-size:15px}.admin.admin-login .join-form>button[type=submit]{background:var(--adm-accent);border-color:var(--adm-accent);color:#fff}.admin.admin-login .join-form>button[type=submit]:hover{background:var(--adm-accent-ink)}.admin.admin-login .error{color:var(--c-danger);font-size:13px}.login-tabs{gap:var(--sp-2);display:flex}.login-tabs button{border-radius:var(--r-sm);border:1px solid var(--adm-line-strong);color:var(--adm-ink-2);cursor:pointer;background:0 0;flex:1}.login-tabs button.active{background:var(--adm-accent);border-color:var(--adm-accent);color:#fff}.glossary-edit{width:100%;margin-top:var(--sp-3);padding:var(--sp-3) var(--sp-4);font:inherit;border:1px solid var(--adm-line-strong);border-radius:var(--r-sm);resize:vertical;box-sizing:border-box;font-size:15px}.download-btn{border-radius:var(--r-lg);background:var(--c-accent);color:#fff;margin-top:1.5rem;padding:.8rem 1.4rem;font-size:1.1rem;text-decoration:none;display:inline-block}.admin-link{color:inherit;margin-top:2rem;font-size:.9rem}.controls-row{flex-wrap:nowrap;align-items:center;gap:.25rem .5rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.controls-row:before,.controls-row:after{content:"";margin:auto}.controls-row>.zbar-item,.controls-row>.zbar-more{flex:none}.controls-row .lk-control-bar{flex-wrap:nowrap;padding:.4rem 0}@media (max-width:560px){.admin{padding:.9rem .6rem 2rem}.admin-header h1{font-size:18px}.admin-card{padding:.7rem}.inline-form{gap:var(--sp-2)}.inline-form input,.inline-form select,.inline-form button{width:100%}.admin button,.admin input,.admin select{min-height:var(--touch-min)}.admin input[type=checkbox]{min-height:0}.admin .icon-btn{min-height:0;width:var(--touch-min);height:var(--touch-min)}.lesson-details{padding-left:var(--sp-4)}.invite-table td.inv-url,.invite-table th.inv-url{display:none}}.node-pick{cursor:default;gap:var(--sp-2)}.node-pick select{max-width:12rem;height:var(--adm-ctl-sm);border-radius:var(--r-sm);font-size:13px}.node-pick .hint{color:var(--adm-ink-3);font-size:13px}.admin-tabs{border-bottom:1px solid var(--adm-line);flex-wrap:wrap;gap:1.25rem;margin:0 0 1.1rem;display:flex}.admin-tabs button{height:auto;color:var(--adm-ink-2);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;margin-bottom:-1px;padding:0 0 .55rem;font-size:15px}@media (max-width:30rem){.admin-tabs{gap:.9rem}.admin-tabs button{font-size:14px}}.admin-tabs button:hover{color:var(--adm-ink);background:0 0}.admin-tabs button.active{color:var(--adm-ink);border-bottom-color:var(--adm-accent);font-weight:400}.preset-hint{color:var(--adm-ink-2);margin-bottom:.75rem;font-size:13px}.preset-field-hint{color:var(--adm-ink-2);margin:-.25rem 0 .5rem;font-size:13px;line-height:1.35}.preset-screens{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:.75rem;display:flex}.preset-screens button{white-space:nowrap;align-items:center;gap:.35rem;display:inline-flex}.preset-outcome{margin-bottom:.75rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.45}.preset-new{gap:.5rem;max-width:40rem;margin-bottom:1rem;display:grid}.preset-new button{justify-self:start;align-items:center;gap:.35rem;display:inline-flex}.preset-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.preset-row{border:1px solid var(--adm-line);border-radius:var(--r-md);padding:.5rem .75rem}.preset-head{align-items:center;gap:.5rem;display:flex}.preset-name{text-align:left;flex:1;align-items:center;gap:.35rem;min-width:0;display:inline-flex}@media (max-width:560px){.preset-link-names{display:none}}.preset-actions{flex:none;align-items:center;gap:.35rem;display:flex}.preset-enter{height:var(--adm-ctl-sm);border-radius:var(--r-sm);color:#fff;cursor:pointer;background:#2e8b57;border:1px solid #2e8b57;align-items:center;gap:.35rem;padding:0 .8rem;display:inline-flex}.admin .preset-enter:hover{background:#26714a}.preset-enter:disabled{cursor:default;background:#a0aec0;border-color:#a0aec0}.preset-warn{margin-top:.25rem;font-size:13px}.preset-body{border-top:1px solid var(--adm-line);gap:.5rem;max-width:40rem;margin-top:.6rem;padding-top:.6rem;display:grid}.preset-body label{align-items:center;gap:.4rem;display:flex}.preset-body button{justify-self:start}.attendance{margin:var(--sp-5) 0 0;border:1px solid var(--adm-open-line);border-radius:var(--adm-r);background:var(--adm-surface);padding:.6rem .75rem .75rem}.admin .attendance-head{align-items:center;gap:var(--sp-3);text-align:left;background:0 0;border:0;width:100%;height:auto;margin:0;padding:0;display:flex}.admin .attendance-head:hover{background:0 0}.admin .attendance-head h3{letter-spacing:.07em;text-transform:uppercase;color:var(--adm-ink-2);margin:0;font-size:11px;font-weight:600}.admin .attendance-head .att-count{color:var(--adm-ink-3);font-size:13px}.admin .attendance-head .lesson-caret{color:var(--adm-ink-3);flex:none;transition:transform .15s}.admin .attendance-head.open .lesson-caret{color:var(--adm-accent);transform:rotate(90deg)}.attendance-body{padding-top:var(--sp-4)}.attendance .hint{margin-bottom:var(--sp-3);display:block}.att-form{align-items:center;gap:var(--sp-2) var(--sp-3);margin:var(--sp-3) 0 0;flex-wrap:wrap;display:flex}.att-form input,.att-form button{height:var(--adm-ctl-sm);font-size:13px}.att-new-title{color:var(--adm-ink-2);margin-top:var(--sp-4);font-size:13px;display:block}.att-days{gap:3px;display:flex}.admin .att-day{width:2rem;min-width:2rem;height:var(--adm-ctl-sm);border-radius:var(--r-sm);border:1px solid var(--adm-line-strong);min-height:0;color:var(--adm-ink-3);cursor:pointer;background:0 0;padding:0;font-size:12px}.admin .att-day.on{background:var(--adm-accent);border-color:var(--adm-accent);color:#fff}.att-dates{flex:14rem;min-width:10rem}.att-table{border-collapse:collapse;width:100%;font-size:13px}.att-table td{padding:var(--sp-2) var(--sp-4) var(--sp-2) 0;border-top:1px solid var(--adm-open-line);vertical-align:middle}.att-table tr:first-child td{border-top:0}.att-table td:first-child{white-space:nowrap;min-width:9rem}.att-table td.att-when{width:100%;color:var(--adm-ink-2)}.att-order{white-space:nowrap;text-align:center;width:34px;padding-right:0}.att-stale{align-items:center;gap:var(--sp-1);margin-left:var(--sp-3);color:var(--c-danger);font-size:12px;display:inline-flex}.lesson-stale{color:var(--c-danger);flex:none;align-items:center;display:inline-flex}.controls-row:has(.zbar-btn){padding:.3rem 0 calc(.35rem + env(safe-area-inset-bottom,0px));background:#141414;border-top:1px solid #2c2c2c;gap:.35rem;position:relative;overflow:visible}.controls-row.compact{gap:.15rem}.zbar-measure:not(.compact){padding-left:.5rem;padding-right:.5rem}.controls-row:has(.zbar-btn){padding-left:.5rem;padding-right:.5rem}.controls-row.compact,.zbar-measure.compact{padding-left:.15rem;padding-right:.15rem}.controls-row.compact>.zbar-item .zbar-btn,.controls-row.compact>.zbar-more .zbar-btn,.zbar-measure.compact .zbar-btn{min-width:var(--touch-min,44px);gap:0;height:2.9rem;padding:.25rem .3rem}.controls-row.compact>.zbar-item .zbar-btn .lbl,.controls-row.compact>.zbar-more .zbar-btn .lbl,.zbar-measure.compact .zbar-btn .lbl{display:none}.controls-row.compact .zbar-more-menu .zbar-btn .lbl{display:block}.controls-row.compact .zbar-more-menu .zbar-btn{min-width:unset;gap:.6rem;height:auto;padding:.55rem .75rem}.zbar-item{align-items:stretch;display:flex}.zbar-measure.compact{gap:.15rem}.zbar-measure{visibility:hidden;pointer-events:none;gap:.35rem;display:flex;position:absolute;top:0;left:0}.zbar-more{display:flex;position:relative}.zbar-more-menu{left:auto;right:.5rem;bottom:calc(4.6rem + env(safe-area-inset-bottom,0px));z-index:45;background:#1e1e1e;border:1px solid #333;border-radius:.7rem;flex-direction:column;gap:.2rem;min-width:min(13rem,90vw);max-width:calc(100vw - 1rem);max-height:calc(100vh - 6rem);padding:.4rem;display:flex;position:fixed;overflow-y:auto;box-shadow:0 8px 28px #0000008c}.zbar-more-menu .zbar-item{width:100%}.zbar-more-menu .zbar-btn{width:100%;height:auto;min-width:unset;flex-direction:row;justify-content:flex-start;gap:.6rem;padding:.55rem .75rem}.zbar-more-menu .zbar-btn .ic{height:auto}.zbar-more-menu .zbar-btn .lbl{opacity:1;font-size:.88rem}.zbar-more-menu .zbar-btn{position:relative}.zbar-more-menu .zbar-btn:has(.zbadge) .ic{position:static}.zbar-more-menu .zbar-btn .zbadge{top:50%;left:auto;right:.6rem;transform:translateY(-50%)}.zbar-more-menu .zbar-split{width:100%}.zbar-more-menu .zbar-split .zbar-btn{flex:1}.zbar-more-menu .reaction-bar{flex-direction:column;gap:.2rem;width:100%}.zbar-more-menu .reaction-pop-wrap{width:100%}.zbar-btn{color:#d7d7d7;min-width:4.4rem;height:3.6rem;font:inherit;cursor:pointer;background:0 0;border:none;border-radius:.6rem;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:.3rem .7rem;transition:background .12s,color .12s;display:flex}.zbar-btn:hover{color:#fff;background:#272727}.zbar-btn.active{color:#fff;background:#2b5797}.zbar-btn.danger{color:#ff5f57}.zbar-btn.off .ic:after{content:"";background:#e54d4d;border-radius:2px;width:26px;height:2.5px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-45deg)}.zbar-btn.speaking .ic:before{content:"";border:2px solid #4caf50;border-radius:50%;width:30px;height:30px;animation:1s ease-out infinite mic-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes mic-pulse{0%{opacity:.9;transform:translate(-50%,-50%)scale(.7)}to{opacity:0;transform:translate(-50%,-50%)scale(1.25)}}.zbar-btn:disabled{opacity:.6;cursor:default}.zbar-btn.unavail{opacity:.4;cursor:not-allowed}.zbar-btn.unavail:hover{color:#d7d7d7;background:0 0}.device-unavail-wrap{display:flex;position:relative}.device-unavail-hint{z-index:50;color:#ff8080;text-align:center;pointer-events:none;white-space:normal;background:#160000f7;border:1px solid #622;border-radius:.5rem;min-width:15rem;max-width:22rem;padding:.5rem .75rem;font-size:.8rem;line-height:1.5;display:none;position:absolute;bottom:calc(100% + .5rem);left:50%;transform:translate(-50%)}.device-unavail-wrap:hover .device-unavail-hint{display:block}.zbar-btn.danger:hover{color:#ff8a84;background:#5c1714}.zbar-btn .ic{align-items:center;height:24px;display:flex;position:relative}.zbar-btn .ic svg{display:block}.zbar-btn .lbl{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.01em;opacity:.95;max-width:100%;font-size:.67rem;overflow:hidden}.zbar-split{align-items:stretch;display:flex;position:relative}.zbar-caret{color:#bdbdbd;cursor:pointer;background:0 0;border:none;border-radius:.35rem;justify-content:center;align-self:flex-start;align-items:center;width:1.1rem;height:1.5rem;margin-top:.45rem;margin-left:-.45rem;padding:0;display:flex}.zbar-caret:hover,.zbar-caret.open{color:#fff;background:#272727}.mic-menu{z-index:45;text-align:left;background:#1d1d1d;border:1px solid #555;border-radius:.6rem;min-width:16rem;max-width:20rem;max-height:72vh;padding:.3rem;position:absolute;bottom:calc(100% + .4rem);left:0;overflow-y:auto}.mic-menu-title{text-transform:uppercase;letter-spacing:.03em;opacity:.6;padding:.22rem .5rem .08rem;font-size:.72rem}.mic-menu-item{width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:none;border-radius:.4rem;align-items:center;gap:.2rem;padding:.28rem .5rem;font-size:.85rem;display:flex;overflow:hidden}.mic-menu-item:hover{background:#2b2b2b}.mic-menu-item:disabled{opacity:.4;cursor:default}.mic-menu-item:disabled:hover{background:0 0}.mic-menu-check{color:#7fb0ff;flex:0 0 1.1rem}.mic-menu-note{color:#ffd479;white-space:normal;padding:.3rem .5rem;font-size:.78rem;line-height:1.3}.mic-menu-sep{border-top:1px solid #3a3a3a;margin:.22rem .4rem}.mic-gain-row{align-items:center;gap:.4rem;padding:.25rem .7rem .35rem;display:flex}.mic-gain-row input[type=range]{accent-color:#2b5797;flex:1;min-width:7rem}.mic-gain-row input[type=range]:disabled{opacity:.4}.mic-gain-val{text-align:right;opacity:.8;flex:0 0 2.8rem;font-size:.78rem}.zbar-btn .zbadge{color:#fff;text-align:center;background:#4a4a4a;border:1px solid #141414;border-radius:.55rem;min-width:1.05rem;padding:0 .28rem;font-size:.62rem;font-weight:600;line-height:1.05rem;position:absolute;top:-.35rem;left:calc(100% + 2px);right:auto}.zbar-btn .zbadge.alert{background:#e02828}.zbar-btn.active .zbadge{background:#16365e}.controls-row.compact>.zbar-item .zbar-btn,.controls-row.compact>.zbar-more .zbar-btn,.zbar-measure.compact .zbar-btn{position:relative}.controls-row.compact>.zbar-item .zbar-btn .ic,.controls-row.compact>.zbar-more .zbar-btn .ic,.zbar-measure.compact .zbar-btn .ic{position:static}.controls-row.compact>.zbar-item .zbar-btn .zbadge,.controls-row.compact>.zbar-more .zbar-btn .zbadge,.zbar-measure.compact .zbar-btn .zbadge{min-width:.8rem;padding:0 .14rem;font-size:.55rem;line-height:.8rem;top:1px;left:auto;right:1px}.lesson-duration{font-variant-numeric:tabular-nums;opacity:.85;border-left:1px solid #555;margin-left:.6rem;padding-left:.6rem}.lesson-title{z-index:15;text-overflow:ellipsis;white-space:nowrap;background:#1e1e1eb3;border-radius:1rem;max-width:60vw;padding:.3rem .9rem;font-size:.9rem;position:absolute;top:.6rem;left:50%;overflow:hidden;transform:translate(-50%)}.reaction-bar{gap:.35rem;display:flex}.reaction-pop-wrap{position:relative}.reaction-pop{z-index:25;background:#222;border:1px solid #555;border-radius:.6rem;gap:.2rem;padding:.3rem;display:flex;position:absolute;bottom:2.9rem;left:0}.reaction-pop button,.reaction-bar .panel-btn{font-size:1.1rem}.reaction-pop button{cursor:pointer;background:0 0;border:none}.reaction-overlay{z-index:22;pointer-events:none;gap:.5rem;display:flex;position:fixed;bottom:5rem;left:50%;transform:translate(-50%)}.fly-reaction{font-size:2.2rem;animation:4s ease-out forwards fly-up}@keyframes fly-up{0%{opacity:0;transform:translateY(20px)scale(.5)}15%{opacity:1;transform:translateY(0)scale(1.2)}80%{opacity:1}to{opacity:0;transform:translateY(-120px)scale(1)}}.hands-indicator{background:#6b4f1d;border-radius:.5rem;padding:.4rem .7rem;font-size:.85rem}.muted-warning{z-index:25;color:#fff;background:#b32424;border-radius:.6rem;padding:.6rem 1.1rem;position:fixed;top:3rem;left:50%;transform:translate(-50%)}.device-churn-hint,.mic-quiet-hint{z-index:25;color:#fff;background:#8a5a00;border-radius:.6rem;align-items:center;gap:.4rem;width:max-content;max-width:min(92vw,30rem);padding:.6rem 1.1rem;display:flex;position:fixed;top:6rem;left:50%;transform:translate(-50%)}.device-churn-hint>svg,.mic-quiet-hint>svg{flex:none}.mic-quiet-hint{text-align:left;align-items:flex-start;top:10rem}.leave-menu-wrap{position:relative}.leave-btn{color:#fff;cursor:pointer;background:#b32424;border:none;border-radius:.5rem;padding:.5rem .9rem}.tile-menu.leave-menu{position:absolute;top:auto;bottom:2.9rem;right:0}.lesson-layout>.economy-banner,.economy-banner{text-align:center;background:#6b4f1d;flex:none;padding:.3rem;font-size:.85rem}.focus-main-first.economy{flex:1;grid-template-columns:minmax(0,1fr);min-height:0}.spotlight-badge{z-index:5;background:#2b5797e6;border-radius:.4rem;padding:.1rem .35rem;font-size:.95rem;position:absolute;top:.3rem;left:2.6rem}.no-mic{z-index:5;background:#b42828d9;border-radius:.4rem;padding:.15rem .4rem;font-size:.8rem;position:absolute;top:.3rem;left:.3rem}.tile-wrap{width:100%;min-width:0;height:100%;min-height:0;display:flex;position:relative}.tile-wrap>.lk-participant-tile{flex:1;min-width:0;min-height:0}.tile-menu-btn{z-index:5;color:#fff;cursor:pointer;opacity:0;background:#141414bf;border:none;border-radius:50%;width:1.9rem;height:1.9rem;font-size:1rem;transition:opacity .15s;position:absolute;top:.3rem;right:.3rem}.tile-wrap:hover .tile-menu-btn{opacity:1}@media (hover:none){.tile-menu-btn{opacity:.7}}.tile-menu{z-index:6;color:#f1f1f1;background:#222;border:1px solid #555;border-radius:.5rem;flex-direction:column;width:max-content;min-width:8.5rem;max-width:min(16rem,90vw);display:flex;position:absolute;top:2.4rem;right:.3rem;overflow:hidden}.tile-menu button{color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;padding:.55rem .9rem}.tile-menu button:hover{background:#333}.focus-main-first .lk-carousel .tile-wrap{aspect-ratio:16/9;flex:none}.focus-main-first .lk-carousel[data-lk-orientation=vertical] .tile-wrap{width:100%;height:auto}.focus-main-first .lk-carousel[data-lk-orientation=horizontal] .tile-wrap{width:auto;height:100%}.rename-self{cursor:pointer;background:0 0;border:1px solid #777;border-radius:.5rem;padding:.5rem .7rem}.mute-all{color:inherit;cursor:pointer;background:0 0;border:1px solid #777;border-radius:.5rem;padding:.5rem .9rem}.audio-participant.speaking{color:#4caf50}.lesson-layout .focus-main-first.lk-focus-layout{grid-template-columns:minmax(0,5fr) minmax(0,1fr)}@media (max-aspect-ratio:1){.lesson-layout .focus-main-first.lk-focus-layout{grid-template-rows:minmax(0,4fr) minmax(0,1fr);grid-template-columns:minmax(0,1fr)}}.start-audio{z-index:10;color:#000;cursor:pointer;background:#e6a23c;border:none;border-radius:.6rem;align-items:center;gap:.5rem;padding:.7rem 1.2rem;font-size:1rem;display:inline-flex;position:fixed;top:1rem;left:50%;transform:translate(-50%)}.back-to-grid{z-index:7;color:#fff;cursor:pointer;background:#141414cc;border:none;border-radius:.5rem;align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.85rem;display:inline-flex;position:absolute;top:.5rem;left:.5rem}.back-to-grid:hover{background:#2b5797f2}.ind-speak-wrap{z-index:5;align-items:center;gap:.25rem;display:flex;position:absolute;bottom:1.16rem;left:50%;transform:translate(-50%)}.ind-speak{color:#333;cursor:pointer;background:#cbcdd28c;border:1px solid #ffffff73;border-radius:50%;justify-content:center;align-items:center;width:1.26rem;height:1.26rem;transition:background-color .12s;display:flex;position:relative}.ind-speak svg{flex:none;width:.806rem;height:.806rem}.ind-speak:before{content:"";border-radius:50%;position:absolute;inset:-.75rem}.ind-speak:hover,.ind-speak:focus-visible,.ind-speak:active{background:#cbcdd2f2}.ind-speak.on{color:#e7f6ec;background:#166534;border-color:#22c55e}.ind-speak.on.speaking{animation:.9s ease-in-out infinite ind-speak-beat}.ind-speak.on.speaking:after{content:"";pointer-events:none;border:2px solid #4ade80;border-radius:50%;animation:.9s ease-out infinite ind-speak-ring;position:absolute;inset:-3px}@keyframes ind-speak-beat{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@keyframes ind-speak-ring{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.7)}}.ind-mic-caret-wrap{display:flex;position:relative}.ind-mic-caret{color:#444;cursor:pointer;background:#cbcdd2bf;border:none;border-radius:50%;justify-content:center;align-self:flex-end;align-items:center;width:.8rem;height:.8rem;margin-bottom:.1rem;padding:0;display:flex}.ind-mic-caret svg{flex:none;width:.55rem;height:.55rem}.ind-mic-caret.open{background:#e5e7eb}.ind-mic-menu{z-index:60;max-height:min(60vh,26rem);position:fixed;overflow-y:auto;transform:translate(-50%)}.chat-messages{flex-direction:column;flex:1;gap:.5rem;padding:.8rem;display:flex;overflow-y:auto}.chat-msg{flex-direction:column;display:flex}.chat-from{opacity:.65;font-size:.78rem}.chat-body{white-space:pre-wrap;overflow-wrap:anywhere}.chat-body a{color:#7fb0ff}.chat-image{margin-top:.3rem;display:inline-block}.chat-image img{border-radius:.5rem;max-width:100%;max-height:14rem;display:block}.chat-file{color:inherit;border:1px solid #444;border-radius:.5rem;align-items:center;gap:.45rem;margin-top:.3rem;padding:.45rem .6rem;text-decoration:none;display:flex}.chat-file:hover{background:#232323}.chat-file-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.chat-file-size{opacity:.6;font-size:.72rem}.chat-error{padding:0 .6rem .4rem;font-size:.8rem}.chat-form{border-top:1px solid #444;flex-direction:column;gap:.45rem;padding:.6rem;display:flex}.chat-form textarea{box-sizing:border-box;resize:none;width:100%;min-height:4.2rem;max-height:10rem;color:inherit;font:inherit;background:0 0;border:1px solid #555;border-radius:.4rem;padding:.5rem .6rem;line-height:1.35}.chat-form-row{align-items:center;gap:.4rem;min-width:0;display:flex}.chat-form-row .chat-to{flex:1;min-width:0}.chat-send{white-space:nowrap}.chat-msg.private{border-left:2px solid #b58a2c;padding-left:.45rem}.chat-private-badge{color:#e3b04b;margin-left:.4rem;font-size:.74rem}.chat-to{max-width:7.5rem;color:inherit;background:#161616;border:1px solid #555;border-radius:.4rem;padding:.3rem;font-size:.8rem}.spin{animation:1s linear infinite wait-spin}.muted-warning{align-items:center;gap:.4rem;display:flex}.chat-attach{color:inherit;cursor:pointer;background:0 0;border:1px solid #555;border-radius:.4rem;padding:0 .55rem;font-size:1rem}.chat-attach:hover{background:#232323}.speaking-dot{background:#4caf50;border-radius:50%;width:.6rem;height:.6rem;display:inline-block}.chat-react-trigger{color:inherit;opacity:0;cursor:pointer;vertical-align:middle;background:0 0;border:none;padding:0 .15rem;line-height:1}.chat-msg:hover .chat-react-trigger{opacity:.55}.chat-react-trigger:hover{opacity:1!important}.msg-footer{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.3rem;min-height:1.1rem;margin-top:.15rem;display:flex}.react-add-wrap{align-items:center;display:inline-flex;position:relative}.reaction-picker{z-index:6;background:#2a2a2a;border:1px solid #555;border-radius:.5rem;flex-wrap:wrap;gap:.1rem;width:max-content;max-width:14rem;padding:.3rem .4rem;display:flex;position:absolute;bottom:calc(100% + .25rem);right:0;box-shadow:0 4px 16px #00000080}.reaction-picker button{cursor:pointer;background:0 0;border:none;border-radius:.3rem;padding:.15rem .2rem;font-size:1.15rem;line-height:1}.reaction-picker button:hover{background:#3a3a3a}.msg-reactions{flex-wrap:wrap;gap:.25rem;display:flex}.msg-reaction{color:inherit;cursor:pointer;background:0 0;border:1px solid #555;border-radius:.9rem;align-items:center;gap:.2rem;padding:.15rem .45rem;font-size:.85rem;line-height:1.4;display:inline-flex}.msg-reaction:hover{background:#2a2a2a}.msg-reaction.mine{background:#1d3050;border-color:#2b5797}.msg-reaction span{opacity:.85;font-size:.78rem}.emoji-wrap{position:relative}.emoji-picker-grid{z-index:30;background:#2a2a2a;border:1px solid #555;border-radius:.5rem;grid-template-columns:repeat(6,1fr);gap:.05rem;width:12rem;padding:.35rem;display:grid;position:absolute;bottom:calc(100% + .3rem);left:0}.emoji-picker-grid button{cursor:pointer;background:0 0;border:none;border-radius:.3rem;padding:.2rem;font-size:1.2rem;line-height:1}.emoji-picker-grid button:hover{background:#3a3a3a}.chat-reply-private{color:#7fb0ff;cursor:pointer;opacity:.8;background:0 0;border:none;padding:0 .25rem;font-size:.72rem}.chat-reply-private:hover{opacity:1}.chat-to-fixed{opacity:.85;border-style:dashed;align-items:center;display:inline-flex}
