:root{--lr-bg:#f5f4f0;--lr-panel:#fbfaf6;--lr-card:#fff;--lr-board:#fff;--lr-board-soft:#fbfaf6;--lr-ink:#14221d;--lr-ink-2:#4b5a54;--lr-ink-3:#8a9690;--lr-line:#e0dfd8;--lr-line-2:#d3d1c8;--lr-accent:#1d9e75;--lr-accent-2:#0f6e56;--lr-accent-50:#e9f5ef;--lr-live:#c2362b;--lr-amber:#c57b1a;--lr-amber-50:#fbf1e1;--lr-rose:#b65555;--lr-rose-50:#f5e6e3;--lr-density:1;--lr-panel-w:340px;--lr-radius:14px}.lr-density-compact{--lr-density:0.85}.lr-density-normal{--lr-density:1}.lr-density-relaxed{--lr-density:1.15}.lr-board-dark{--lr-board:#1c1f22;--lr-board-soft:#16191b}.lr-btn{align-items:center;background:transparent;border:.5px solid transparent;border-radius:9px;color:var(--lr-ink);cursor:pointer;display:inline-flex;font-family:inherit;font-size:13px;font-weight:600;gap:7px;justify-content:center;letter-spacing:-.005em;padding:calc(8px*var(--lr-density)) calc(14px*var(--lr-density));transition:all .15s ease;white-space:nowrap}.lr-btn-primary{background:var(--lr-accent);color:#fff}@media (hover:hover){.lr-btn-primary:hover{background:var(--lr-accent-2)}}.lr-btn-dark{background:var(--lr-ink);color:#fff}@media (hover:hover){.lr-btn-dark:hover{background:#000}}.lr-btn-ghost{background:var(--lr-card);border-color:var(--lr-line);color:var(--lr-ink)}@media (hover:hover){.lr-btn-ghost:hover{border-color:var(--lr-ink)}}.lr-btn-soft{background:var(--lr-panel);border-color:var(--lr-line);color:var(--lr-ink)}@media (hover:hover){.lr-btn-soft:hover{background:#efede7}}.lr-btn-danger{background:var(--lr-rose);color:#fff}@media (hover:hover){.lr-btn-danger:hover{background:#9a4444}}.lr-btn-danger-ghost{background:var(--lr-card);border-color:var(--lr-line);color:var(--lr-rose)}@media (hover:hover){.lr-btn-danger-ghost:hover{background:var(--lr-rose-50);border-color:var(--lr-rose)}}.lr-btn-sm{border-radius:7px;font-size:12px;padding:calc(5px*var(--lr-density)) calc(10px*var(--lr-density))}.lr-icon-btn{background:transparent;border:0;border-radius:8px;color:var(--lr-ink-2);cursor:pointer;display:grid;height:calc(30px*var(--lr-density));place-items:center;transition:background .12s,color .12s;width:calc(30px*var(--lr-density))}@media (hover:hover){.lr-icon-btn:hover{background:rgba(20,34,29,.05);color:var(--lr-ink)}}.lr-icon-btn.active{background:var(--lr-accent-50);color:var(--lr-accent-2)}.lr-icon-btn.danger{color:var(--lr-rose)}@media (hover:hover){.lr-icon-btn.danger:hover{background:var(--lr-rose-50)}}.lr-icon-btn-sm{border-radius:6px;height:26px;width:26px}.lr-icon-btn-lg{border-radius:10px;height:38px;width:38px}.lr-av-0{background:linear-gradient(135deg,#1d9e75,#0f6e56)}.lr-av-1{background:linear-gradient(135deg,#c57b1a,#8a5410)}.lr-av-2{background:linear-gradient(135deg,#6f7cc4,#4856a0)}.lr-av-3{background:linear-gradient(135deg,#b65555,#874040)}.lr-av-4{background:linear-gradient(135deg,#4a8fae,#2d6a86)}.lr-av-5{background:linear-gradient(135deg,#7b5ba6,#5a3f84)}.lr-tip{background:var(--lr-ink);border-radius:6px;bottom:calc(100% + 6px);color:#fff;font-size:11px;font-weight:500;left:50%;opacity:0;padding:4px 8px;pointer-events:none;position:absolute;transform:translateX(-50%);transition:opacity .12s;white-space:nowrap}@media (hover:hover){.lr-icon-btn:hover .lr-tip{opacity:1}}@keyframes lr-hand-shake{0%,to{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}@keyframes lr-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}@keyframes lr-live-pulse{0%{box-shadow:0 0 0 0 rgba(194,54,43,.55)}70%{box-shadow:0 0 0 6px rgba(194,54,43,0)}to{box-shadow:0 0 0 0 rgba(194,54,43,0)}}body,html{height:100%}body.lesson-page{margin:0;overflow:hidden}body.lesson-page #lesson-root{height:100%;width:100%}:root{--lr-dock-h:64px}body.lesson-page .cookie-banner{bottom:calc(var(--lr-dock-h) + 1rem)}.v2f{background:var(--lr-bg);height:100%;position:relative;width:100%;--lr-panel-def:300px;--lr-panel-w:min(var(--lr-panel-pref,var(--lr-panel-def)),50vw,calc(100vw - 536px));display:grid;font-family:Manrope,system-ui,sans-serif;grid-template-areas:"header header header" "tools  board  aside" "dock   dock   dock";grid-template-columns:56px minmax(0,1fr) var(--lr-panel-w);grid-template-rows:56px minmax(0,1fr) var(--lr-dock-h);overflow:hidden}.v2f-board-col{grid-area:board;min-height:0;padding:14px;position:relative}.v2f-board{background:var(--lr-board);border:.5px solid var(--lr-line);border-radius:var(--lr-radius);box-shadow:0 1px 0 rgba(0,0,0,.03);height:100%;overflow:hidden;position:relative;width:100%}.board-canvas-wrap{height:100%;inset:0;position:absolute;width:100%}.board-canvas-wrap .canvas-container{position:relative}.board-canvas-wrap .lower-canvas{position:relative;z-index:2}.board-canvas-wrap .upper-canvas{z-index:5}.board-canvas-wrap.grid-over-pdf .board-grid-overlay{z-index:2}.board-canvas-wrap.grid-over-pdf .lower-canvas{z-index:1}.board-canvas-wrap.is-hand-tool canvas,.board-canvas-wrap.is-pan-ready canvas{cursor:grab!important}.board-canvas-wrap.is-panning canvas{cursor:grabbing!important}.board-canvas-wrap.is-hand-tool{touch-action:none}.board-canvas-wrap.is-drop-target:after{background:rgba(29,158,117,.06);border:2px dashed var(--lr-accent);border-radius:10px;content:"";inset:6px;pointer-events:none;position:absolute;z-index:30}.board-slide-loading{align-items:center;background:rgba(30,33,36,.45);display:none;inset:0;justify-content:center;pointer-events:none;position:absolute;z-index:15}.board-slide-loading.is-visible{display:flex}.board-slide-loading-chip{background:var(--lr-ink);border-radius:999px;color:#fff;font-size:13px;font-weight:600;padding:8px 14px}.board-theme-light .board-slide-loading{background:hsla(48,20%,95%,.55)}.board-theme-light .board-slide-loading-chip{background:var(--lr-card);border:.5px solid var(--lr-line);color:var(--lr-ink)}.board-grid-overlay{display:none;height:100%;inset:0;pointer-events:none;position:absolute;width:100%;z-index:1}.board-audio-layer{height:0;width:0;z-index:5}.board-audio,.board-audio-layer{left:0;pointer-events:none;position:absolute;top:0}.board-audio{align-items:center;background:#fff;border-radius:9px;box-sizing:border-box;color:#14221d;display:flex;font-size:13px;gap:10px;line-height:1.3;overflow:hidden;padding:6px 12px 6px 6px;transform-origin:0 0}.board-audio.is-compact{justify-content:center;padding:6px}.board-audio-btn{align-items:center;aspect-ratio:1;background:#1d9e75;border:0;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex:0 0 auto;height:100%;justify-content:center;max-height:56px;padding:0;pointer-events:auto}.board-audio-btn svg{pointer-events:none}@media (hover:hover){.board-audio-btn:hover{background:#2f6f5e}}.board-audio-btn:disabled{background:#1d9e75;cursor:default}.board-audio-btn:disabled~.board-audio-main .board-audio-bar{cursor:default}.board-audio-main{display:flex;flex:1 1 auto;flex-direction:column;gap:5px;min-width:0}.board-audio.is-compact .board-audio-main{display:none}.board-audio-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-audio-row{align-items:center;display:flex;gap:8px}.board-audio-bar{background:rgba(20,34,29,.14);border-radius:3px;cursor:pointer;flex:1 1 auto;height:6px;overflow:hidden;pointer-events:auto}.board-audio-fill{background:#1d9e75;height:100%;width:0}.board-audio-time{color:rgba(20,34,29,.65);flex:0 0 auto;font-size:11px;font-variant-numeric:tabular-nums}.remote-cursor{display:none;pointer-events:none;position:absolute;transition:left .05s linear,top .05s linear;z-index:30}.remote-cursor-icon{display:block;filter:drop-shadow(0 1px 2px rgba(20,34,29,.35))}.remote-cursor-icon svg{display:block}.remote-cursor-label{border-radius:5px;box-shadow:0 1px 3px rgba(20,34,29,.3);font-size:11px;font-weight:600;left:22px;max-width:160px;overflow:hidden;padding:1px 6px;text-overflow:ellipsis;top:24px;white-space:nowrap}.remote-cursor-edge,.remote-cursor-label{background:var(--lr-ink);color:#fff;line-height:1.5;position:absolute}.remote-cursor-edge{align-items:center;border:0;border-radius:999px;box-shadow:0 1px 6px rgba(20,34,29,.38);cursor:pointer;display:none;font:inherit;font-size:11px;font-weight:600;gap:5px;max-width:180px;padding:3px 8px 3px 6px;pointer-events:auto;transform:translate(-50%,-50%);z-index:31}@media (hover:hover){.remote-cursor-edge:hover{background:var(--lr-accent-2,#2f6f5e)}}.remote-cursor-edge:active{transform:translate(-50%,-50%) scale(.96)}.remote-cursor-edge-arrow{display:flex;flex:0 0 auto}.remote-cursor-edge-arrow svg{display:block}.remote-cursor-edge-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lr-readonly-badge{background:rgba(20,34,29,.06);border:.5px solid var(--lr-line);border-radius:999px;color:var(--lr-ink-3);font-size:11px;font-weight:600;left:12px;letter-spacing:.04em;padding:4px 9px;position:absolute;text-transform:uppercase;top:12px;z-index:50}.is-hidden{display:none!important}@media (max-width:1366px){.v2f{--lr-panel-def:272px}}@media (max-width:1280px){.v2f{--lr-panel-def:248px}}.v2f.aside-collapsed{--lr-panel-w:0px}.v2f.aside-collapsed .v2f-aside{display:none}.v2f-header{background:var(--lr-panel);border-bottom:.5px solid var(--lr-line);gap:16px;grid-area:header;padding:0 18px}.v2f-header,.v2f-header .brand{align-items:center;display:flex}.v2f-header .brand-mark{display:none}.v2f-header .brand-cta{align-items:center;background:color-mix(in srgb,var(--lr-accent) 12%,transparent);border-radius:999px;color:var(--lr-accent);display:inline-flex;font-size:12px;font-weight:600;padding:4px 10px;text-decoration:none;white-space:nowrap}@media (hover:hover){.v2f-header .brand-cta:hover{background:color-mix(in srgb,var(--lr-accent) 20%,transparent)}}.v2f-header .sep{background:var(--lr-line);height:22px;width:.5px}.v2f-header .lesson-meta{display:flex;flex-direction:column;gap:2px;margin-left:6px;max-width:520px;min-width:0}.v2f-header .ttl{color:var(--lr-ink);font-size:14px;font-weight:700;letter-spacing:-.01em}.v2f-header .sub,.v2f-header .ttl{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2f-header .sub{color:var(--lr-ink-3);font-size:12px}.v2f-header .sub .dot-sep{color:var(--lr-line-2);margin:0 6px}.v2f-header .right{align-items:center;display:flex;gap:10px;margin-left:auto}.v2f-header .lr-btn{text-decoration:none}.v2f-header .lesson-leave-btn{background:var(--lr-card);border-color:var(--lr-accent);color:var(--lr-accent-2)}@media (hover:hover){.v2f-header .lesson-leave-btn:hover{background:var(--lr-accent-50);border-color:var(--lr-accent-2);color:var(--lr-accent-2)}}.v2f-timer-pack{align-items:center;background:var(--lr-card);border:.5px solid var(--lr-line);border-radius:999px;display:inline-flex;gap:8px;padding:4px 10px}.v2f-timer-pack .num{color:var(--lr-ink);font-family:JetBrains Mono,monospace;font-size:12.5px;font-variant-numeric:tabular-nums;font-weight:600}.v2f-timer-pack .num .of{color:var(--lr-ink-3);font-weight:400}.v2f-timer-pack .num.is-countdown{color:var(--lr-amber)}.v2f-timer-pack .num-max{color:var(--lr-ink-3);font-family:JetBrains Mono,monospace;font-size:12.5px;font-variant-numeric:tabular-nums;font-weight:400;margin-left:-2px}.v2f-timer-pack .num-max:empty{display:none}.v2f-timer-pack .track{background:var(--lr-line);border-radius:999px;height:3px;overflow:hidden;width:80px}.v2f-timer-pack .track>i{background:linear-gradient(90deg,var(--lr-accent),var(--lr-amber));border-radius:999px;display:block;height:100%}.lr-status-pill{align-items:center;background:rgba(194,54,43,.08);border:.5px solid rgba(194,54,43,.18);border-radius:999px;color:var(--lr-live);display:inline-flex;font-size:11px;font-weight:700;gap:6px;letter-spacing:.06em;padding:3px 10px;text-transform:uppercase}.lr-status-pill .dot{animation:lr-live-pulse 1.6s infinite;background:var(--lr-live);border-radius:50%;box-shadow:0 0 0 0 rgba(194,54,43,.6);height:6px;width:6px}.lr-status-pill.upcoming{background:var(--lr-amber-50);border-color:#e8c896;color:var(--lr-amber)}.lr-status-pill.upcoming .dot{animation:none;background:var(--lr-amber)}.lr-status-pill.scheduled{background:var(--lr-panel);border-color:var(--lr-line);color:var(--lr-ink-3)}@media (max-width:1366px){.v2f-header{gap:12px;padding:0 14px}.v2f-header .lesson-meta{max-width:260px}.v2f-timer-pack .track{width:64px}}@media (max-width:1280px){.v2f-header .brand-cta,.v2f-header .brand-logo{display:none}.v2f-header .brand-mark{display:block}.v2f-header .lesson-meta{max-width:220px}.v2f-header .right{gap:8px}}.lr-status-pill.preparing{background:var(--lr-accent-50);border-color:color-mix(in srgb,var(--lr-accent) 35%,transparent);color:var(--lr-accent-2)}.lr-status-pill.preparing .dot{animation:none;background:var(--lr-accent)}.v2f-header .lesson-start-btn{box-shadow:0 6px 16px -8px color-mix(in srgb,var(--lr-accent) 70%,transparent);font-size:13px;font-weight:700;padding:7px 16px;white-space:nowrap}.v2f-header .lesson-start-btn:disabled{cursor:progress;opacity:.6}.lr-waiting-count{align-items:center;background:var(--lr-amber-50);border:.5px solid #e8c896;border-radius:999px;color:var(--lr-amber);display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:4px 10px;white-space:nowrap}.lr-prep-bar[hidden],.lr-waiting-count[hidden],.v2f-header .lesson-start-btn[hidden]{display:none}.lr-prep-bar{align-items:center;background:var(--lr-panel);border:.5px solid var(--lr-line);border-radius:999px;box-shadow:0 10px 24px -16px rgba(0,0,0,.45);color:var(--lr-ink-2);display:flex;font-size:12.5px;gap:8px;left:50%;line-height:1.35;max-width:calc(100% - 120px);padding:7px 14px;pointer-events:none;position:absolute;top:22px;transform:translateX(-50%);z-index:30}.lr-prep-bar b{color:var(--lr-accent-2)}@media (max-width:900px){.lr-waiting-count .lbl,.v2f-header.is-preparing .v2f-timer-pack{display:none}.v2f-header .lesson-start-btn{font-size:12px;padding:5px 10px}.lr-prep-bar{font-size:11.5px;max-width:calc(100% - 24px);padding:6px 12px;top:8px}}.v2f-ops{align-items:stretch;background:var(--lr-panel);border:.5px solid var(--lr-line);border-radius:12px;box-shadow:0 18px 40px -20px rgba(0,0,0,.4);display:none;flex-direction:column;gap:2px;left:66px;max-height:calc(100% - 130px);overflow-y:auto;padding:8px;position:absolute;top:96px;width:236px;z-index:40}.v2f-ops.is-open{display:flex}.v2f-ops .v2f-ops-btn{justify-content:flex-start;width:100%}.v2f-ops .sep{height:.5px;margin:4px 0;width:100%}.v2f-ops-label{margin:2px 0 4px 4px}.v2f-ops-burger{background:var(--lr-panel);border:.5px solid var(--lr-line);border-radius:9px;box-shadow:0 2px 8px -4px rgba(0,0,0,.25);color:var(--lr-ink-2);cursor:pointer;display:grid;height:34px;left:10px;place-items:center;position:absolute;top:10px;transition:background .12s,color .12s;width:34px;z-index:41}@media (hover:hover){.v2f-ops-burger:hover{background:var(--lr-card);color:var(--lr-ink)}}.v2f-ops-burger.is-open{background:var(--lr-ink);color:#fff}.v2f-ops-label{color:var(--lr-ink-3);font-size:10.5px;font-weight:700;letter-spacing:.07em;margin-right:4px;text-transform:uppercase}.v2f-ops-btn{align-items:center;background:transparent;border:0;border-radius:7px;color:var(--lr-ink-2);cursor:pointer;display:inline-flex;font-family:inherit;font-size:12.5px;font-weight:500;gap:6px;padding:5px 10px;transition:background .12s,color .12s}@media (hover:hover){.v2f-ops-btn:hover{background:var(--lr-card);color:var(--lr-ink)}}.v2f-ops-btn svg{color:var(--lr-ink-3)}@media (hover:hover){.v2f-ops-btn:hover svg{color:var(--lr-ink)}}.v2f-ops .sep{background:var(--lr-line)}.v2f-ops .right-meta{align-items:center;color:var(--lr-ink-3);display:flex;font-size:11.5px;gap:10px;margin:4px 4px 2px;min-width:0;overflow:hidden;width:auto}.v2f-ops #slide-name-label,.v2f-ops .right-meta>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2f-ops #slide-name-label{display:inline-block;max-width:18ch;vertical-align:bottom}.v2f-ops .right-meta .saved{align-items:center;color:var(--lr-accent-2);display:inline-flex;font-weight:600;gap:6px}.v2f-ops .right-meta .saved .d{background:var(--lr-accent);border-radius:50%;height:6px;width:6px}.v2f-ops.is-readonly{background:rgba(20,34,29,.025);color:var(--lr-ink-2)}.v2f-ops-readonly-info{align-items:center;color:var(--lr-ink-2);display:flex;font-size:12.5px;gap:10px}.v2f-ops-readonly-info .lr-readonly-badge{position:static}.v2f-ops.is-drawer{background:var(--lr-accent-50);border-color:rgba(29,158,117,.3);color:var(--lr-accent-2)}.v2f-tools{align-items:center;background:var(--lr-panel);border-right:.5px solid var(--lr-line);display:flex;flex-direction:column;gap:1px;grid-area:tools;overflow:visible;padding:8px 0;position:relative;z-index:20}.v2f-tool-btn{background:transparent;border:0;border-radius:9px;color:var(--lr-ink-2);cursor:pointer;display:grid;font-family:inherit;height:38px;place-items:center;position:relative;width:38px}@media (hover:hover){.v2f-tool-btn:hover{background:rgba(20,34,29,.05);color:var(--lr-ink)}}.v2f-tool-btn.active{background:var(--lr-accent-50);box-shadow:inset 0 0 0 .5px rgba(29,158,117,.3);color:var(--lr-accent-2)}.v2f-tool-btn .hk{bottom:2px;color:var(--lr-ink-3);font-family:JetBrains Mono,monospace;font-size:9px;font-weight:600;position:absolute;right:3px}.v2f-tool-btn.active .hk{color:var(--lr-accent-2)}.v2f-tools .sep{background:var(--lr-line);height:.5px;margin:5px 0;width:26px}.v2f-tool-btn.danger{color:var(--lr-rose)}@media (hover:hover){.v2f-tool-btn.danger:hover{background:var(--lr-rose-50);color:var(--lr-rose)}}.v2f-tools-content{display:contents}.v2f-readonly-rail-hint,.v2f.is-readonly .v2f-tools-content{display:none}.v2f.is-readonly .v2f-tools{align-items:stretch;background:var(--lr-panel);padding:8px}.v2f.is-readonly #tool-hand{align-self:center}.v2f.is-readonly .v2f-readonly-rail-hint{color:var(--lr-ink-3);display:block;font-size:10.5px;font-weight:700;letter-spacing:.18em;margin:auto;padding:20px 0;text-align:center;text-transform:uppercase;transform:rotate(180deg);writing-mode:vertical-rl}.v2f-tool-group{align-items:center;display:flex;justify-content:center;position:relative}.v2f-tool-btn .caret{border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid var(--lr-ink-3);bottom:3px;height:0;left:3px;position:absolute;transform:rotate(-45deg);width:0}.v2f-tool-btn.active .caret{border-top-color:var(--lr-accent-2)}.v2f-tool-btn .caret-hit{bottom:0;height:40%;left:0;position:absolute;width:40%}.v2f-tool-popout{border:.5px solid var(--lr-line);border-radius:12px;box-shadow:0 14px 32px -14px rgba(0,0,0,.28),0 1px 0 rgba(0,0,0,.03);left:100%;opacity:0;padding:6px;pointer-events:none;transform:translateY(-50%) translateX(-6px);transition:opacity .12s,transform .12s;white-space:nowrap;z-index:200}.v2f-tool-popout,.v2f-tool-popout:before{background:var(--lr-card);position:absolute;top:50%}.v2f-tool-popout:before{border-bottom:.5px solid var(--lr-line);border-left:.5px solid var(--lr-line);content:"";height:8px;left:-5px;transform:translateY(-50%) rotate(45deg);width:8px}@media (hover:hover){.v2f-tool-group:hover .v2f-tool-popout{opacity:1;pointer-events:auto;transform:translateY(-50%) translateX(0)}}.v2f-tool-group.is-open .v2f-tool-popout{opacity:1;pointer-events:auto;transform:translateY(-50%) translateX(0)}.v2f-tool-popout .row{align-items:center;display:flex;gap:2px}.v2f-tool-popout .pop-label{color:var(--lr-ink-3);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.v2f-tool-popout .v2f-tool-btn{height:36px;width:36px}.v2f-board-menu{background:var(--lr-card);border:.5px solid var(--lr-line);border-radius:12px;box-shadow:0 14px 32px -14px rgba(0,0,0,.28),0 1px 0 rgba(0,0,0,.03);display:flex;flex-direction:column;min-width:132px;padding:6px;position:absolute;white-space:nowrap;z-index:200}.v2f-board-menu button{background:transparent;border:0;border-radius:9px;color:var(--lr-ink);cursor:pointer;font:inherit;font-size:14px;min-height:36px;padding:0 12px;text-align:left}@media (hover:hover){.v2f-board-menu button:hover{background:rgba(20,34,29,.05)}}.v2f-color-trigger{background:transparent;border:0;border-radius:9px;cursor:pointer;display:grid;height:38px;place-items:center;position:relative;width:38px}@media (hover:hover){.v2f-color-trigger:hover{background:rgba(20,34,29,.05)}}.v2f-color-trigger .swatch-lg{border-radius:50%;box-shadow:inset 0 0 0 1.5px hsla(0,0%,100%,.95),0 0 0 1px var(--lr-line);height:20px;width:20px}.v2f-color-trigger .caret{border-left:3px solid transparent;border-right:3px solid transparent;border-top:3px solid var(--lr-ink-3);bottom:3px;height:0;left:3px;position:absolute;transform:rotate(-45deg);width:0}.v2f-color-popout{box-sizing:border-box;display:flex;flex-direction:column;gap:8px;padding:12px 14px;width:208px}.v2f-color-popout .colors-grid{display:grid;gap:6px;grid-template-columns:repeat(6,1fr)}.v2f-color-popout .color-swatch{border:1.5px solid transparent;border-radius:7px;box-shadow:0 0 0 1px var(--lr-line);cursor:pointer;height:22px;width:22px}.v2f-color-popout .color-swatch.active{border-color:#fff;box-shadow:0 0 0 1.5px var(--lr-ink);transform:scale(1.05)}.v2f-color-popout .width-row{align-items:center;display:flex;gap:10px}.v2f-color-popout .width-row input[type=range]{accent-color:var(--lr-accent);flex:1 1 auto;margin:0;min-width:0}.v2f-color-popout .width-val{color:var(--lr-ink-2);flex:0 0 auto;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;min-width:22px;text-align:right}@media (min-width:901px) and (max-height:794px){.v2f-tools{gap:0}.v2f-tools-content>.v2f-tool-btn,.v2f-tools-content>.v2f-tool-group>.v2f-color-trigger,.v2f-tools-content>.v2f-tool-group>.v2f-tool-btn,.v2f-tools>.v2f-tool-btn{height:34px;width:34px}.v2f-tools-content>.sep,.v2f-tools>.sep{margin:3px 0}.v2f-tools-content>.v2f-tool-btn>.hk,.v2f-tools-content>.v2f-tool-group>.v2f-tool-btn>.hk,.v2f-tools>.v2f-tool-btn>.hk{bottom:1px;font-size:8px;right:2px}}@media (min-width:901px) and (max-height:700px){.v2f-tools{padding:4px 0}.v2f-tools-content>.v2f-tool-btn,.v2f-tools-content>.v2f-tool-group>.v2f-color-trigger,.v2f-tools-content>.v2f-tool-group>.v2f-tool-btn,.v2f-tools>.v2f-tool-btn{border-radius:7px;height:30px;width:30px}.v2f-tools-content>.sep,.v2f-tools>.sep{margin:2px 0}}@media (min-width:901px) and (max-height:622px){.v2f-tools{padding:2px 0}.v2f-tools-content>.v2f-tool-btn,.v2f-tools-content>.v2f-tool-group>.v2f-color-trigger,.v2f-tools-content>.v2f-tool-group>.v2f-tool-btn,.v2f-tools>.v2f-tool-btn{border-radius:6px;height:27px;width:27px}.v2f-tools-content>.sep,.v2f-tools>.sep{margin:1px 0}.v2f-tools-content>.v2f-tool-btn>.hk,.v2f-tools-content>.v2f-tool-group>.v2f-tool-btn>.hk,.v2f-tools>.v2f-tool-btn>.hk{display:none}.v2f-color-trigger>.swatch-lg{height:16px;width:16px}}@media (min-width:901px) and (max-height:564px){.v2f-tools{min-height:0;overflow-y:auto;scrollbar-width:none}.v2f-tools::-webkit-scrollbar{display:none}.v2f-tools.has-more-y:after{align-self:stretch;background:linear-gradient(to bottom,transparent,var(--lr-panel));bottom:0;content:"";flex:0 0 28px;margin-top:-28px;pointer-events:none;position:sticky;z-index:3}.v2f-tools-content>*,.v2f-tools>*{flex:0 0 auto}.v2f-tools .v2f-tool-popout{left:56px;position:fixed;top:calc(-4px + 50vh)}.v2f-tools .v2f-tool-popout:before{display:none}}.v2f-page-nav{align-items:center;background:var(--lr-card);border:.5px solid var(--lr-line);border-radius:999px;bottom:14px;box-shadow:0 10px 24px -16px rgba(0,0,0,.22);display:inline-flex;gap:2px;left:50%;padding:4px;position:absolute;transform:translateX(-50%);z-index:30}.v2f-page-nav .label{color:var(--lr-ink-2);font-family:JetBrains Mono,monospace;font-size:12px;font-variant-numeric:tabular-nums;font-weight:600;min-width:48px;padding:0 10px;text-align:center;white-space:nowrap}.v2f-page-nav .label.has-pdf-bg{color:var(--lr-amber)}.v2f-page-nav .sep{background:var(--lr-line);flex-shrink:0;height:18px;margin:0 4px;width:.5px}.v2f-aside{background:var(--lr-bg);border-left:.5px solid var(--lr-line);display:flex;flex-direction:column;grid-area:aside;min-height:0;position:relative}.lr-panel-handle{bottom:0;cursor:col-resize;left:-4px;position:absolute;top:0;touch-action:none;width:8px;z-index:5}.lr-panel-handle:after{background:var(--lr-accent);bottom:0;content:"";left:3px;opacity:0;position:absolute;top:0;transition:opacity .15s;width:2px}.lr-panel-handle.is-dragging:after{opacity:.6}@media (hover:hover){.lr-panel-handle:hover:after{opacity:.6}}.v2f-tabs{background:var(--lr-panel);border-bottom:.5px solid var(--lr-line);display:flex;gap:4px}.v2f-tab{align-items:center;background:transparent;border:0;border-bottom:2px solid transparent;color:var(--lr-ink-3);cursor:pointer;display:inline-flex;flex:1;font-family:inherit;font-size:12.5px;font-weight:600;gap:6px;justify-content:center;margin-bottom:-1px;padding:9px 8px 12px;position:relative}.v2f-tab .ct{background:rgba(20,34,29,.06);border-radius:5px;color:var(--lr-ink-2);font-family:JetBrains Mono,monospace;font-size:10.5px;font-weight:700;padding:1px 6px}.v2f-tab .ct.unread{background:var(--lr-rose);color:#fff}.v2f-tab.active{border-bottom-color:var(--lr-accent);color:var(--lr-ink)}.v2f-tab.active .ct{background:var(--lr-accent-50);color:var(--lr-accent-2)}.v2f-pane{flex:1;min-height:0;overflow-y:auto}.v2f-pane,.v2f-people-pane{display:flex;flex-direction:column}.v2f-people-pane{gap:8px;padding:10px}.v2f-people-pane .group-h{align-items:center;color:var(--lr-ink-3);display:flex;font-size:10.5px;font-weight:700;justify-content:space-between;letter-spacing:.08em;padding:4px 0;text-transform:uppercase}.v2f-people-pane .group-h .ct{color:var(--lr-ink)}.v2f-others-grid{display:grid;gap:6px;grid-template-columns:1fr 1fr}.v2f-tile{aspect-ratio:16/9;background:linear-gradient(135deg,#1f2424,#14191a);border:.5px solid var(--lr-line);border-radius:12px;overflow:hidden;position:relative}.v2f-tile>video{height:100%;inset:0;object-fit:cover;position:absolute;width:100%;z-index:1}.v2f-tile.is-video-hidden>video,.v2f-tile>video.is-camera-off{opacity:0}.v2f-tile.is-video-hidden [data-hide-video]{display:none}.v2f-tile-hidden{align-items:center;display:flex;flex-direction:column;gap:4px;inset:0 6px;justify-content:center;pointer-events:none;position:absolute;text-align:center;z-index:3}.v2f-tile-hidden>*{pointer-events:auto}.v2f-tile:has(>.v2f-tile-conn:not([hidden]))>.v2f-tile-hidden{display:none}.lr-focus-cams-body .v2f-tile-hidden-text,.v2f-tile-hidden[hidden]{display:none}.v2f-tile-hidden-text{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:rgba(0,0,0,.55);border-radius:999px;color:#fff;font-size:10.5px;font-weight:600;line-height:1.25;max-width:100%;padding:2px 8px}.v2f-tile.cam-tile>.v2f-tile-hidden>.v2f-tile-ctrl.v2f-tile-hidden-btn{backdrop-filter:none;-webkit-backdrop-filter:none;background:hsla(0,0%,100%,.94);border-radius:999px;color:var(--lr-ink);font:inherit;font-size:10.5px;font-weight:700;height:auto;max-width:100%;padding:3px 10px;width:auto}@media (hover:hover){.v2f-tile.cam-tile>.v2f-tile-hidden>.v2f-tile-ctrl.v2f-tile-hidden-btn:hover{background:#fff}}#video-self{transform:scaleX(-1)}.v2f-tile-avatar{border-radius:50%;color:#fff;display:grid;font-size:28px;font-weight:700;height:80px;left:50%;letter-spacing:-.02em;overflow:hidden;place-items:center;position:absolute;top:50%;transform:translate(-50%,-50%);width:80px;z-index:0}.v2f-tile-avatar-img{display:block;height:100%;object-fit:cover;width:100%}.v2f-tile-badge,.v2f-tile-chalk-badge,.v2f-tile-conn,.v2f-tile-controls,.v2f-tile-hand,.v2f-tile-name,.v2f-tile-speaking{z-index:2}.v2f-tile-conn{align-items:center;display:flex;flex-direction:column;gap:4px;inset:auto 6px 28px 6px;position:absolute;text-align:center}.v2f-tile-conn[hidden]{display:none}.v2f-tile-conn-text{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:rgba(0,0,0,.55);border-radius:999px;color:#fff;font-size:10.5px;font-weight:600;line-height:1.25;max-width:100%;padding:2px 8px}.v2f-tile-conn-btn{background:hsla(0,0%,100%,.94);border:0;border-radius:999px;color:var(--lr-ink);cursor:pointer;font:inherit;font-size:10.5px;font-weight:700;max-width:100%;padding:3px 10px}@media (hover:hover){.v2f-tile-conn-btn:hover{background:#fff}}.v2f-tile.is-conn-lost .v2f-tile-conn{opacity:1}.v2f-tile-name{align-items:center;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:rgba(0,0,0,.5);border-radius:999px;bottom:8px;color:#fff;display:inline-flex;font-size:11.5px;font-weight:600;gap:6px;left:8px;padding:3px 8px;position:absolute}.v2f-tile-name .mic-off{background:var(--lr-rose);border-radius:50%;color:#fff;display:inline-grid;height:13px;place-items:center;width:13px}.v2f-tile-badge{background:hsla(0,0%,100%,.92);border-radius:6px;color:var(--lr-ink);font-size:10px;font-weight:700;left:8px;letter-spacing:.06em;padding:2px 7px;position:absolute;text-transform:uppercase;top:8px}.v2f-tile-badge.you{background:rgba(29,158,117,.92);color:#fff}.v2f-tile-hand{animation:lr-hand-shake 1.4s infinite;color:var(--lr-amber);display:grid;filter:drop-shadow(0 1px 2px rgba(0,0,0,.45));place-items:center;position:absolute;right:6px;top:6px;transform-origin:70% 90%}.v2f-tile-hand svg{display:block;height:19px;width:19px}.v2f-tile-speaking{border-radius:12px;box-shadow:inset 0 0 0 2px var(--lr-accent);inset:0;opacity:0;pointer-events:none;position:absolute;transition:opacity .12s ease}.v2f-tile.is-speaking .v2f-tile-speaking{opacity:1}.v2f-tile-controls{bottom:8px;display:flex;gap:4px;opacity:0;position:absolute;right:8px;transition:opacity .15s}.v2f-tile.hand .v2f-tile-controls,.v2f-tile.has-chalk .v2f-tile-controls{opacity:1}@media (hover:hover){.v2f-tile:hover .v2f-tile-controls{opacity:1}}.v2f-tile-ctrl{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:rgba(0,0,0,.55);border:0;border-radius:8px;color:#fff;cursor:pointer;display:grid;height:26px;place-items:center;width:26px}.v2f-tile-ctrl.danger{background:rgba(182,85,85,.85)}@media (hover:hover){.v2f-tile-ctrl:hover{background:rgba(0,0,0,.75)}}.v2f-tile-ctrl.p-drawer-btn.is-on{background:rgba(29,158,117,.85)}@media (hover:hover){.v2f-tile-ctrl.p-drawer-btn.is-on:hover{background:var(--lr-accent-2)}}.v2f-tile-ctrl.is-forced{background:var(--lr-rose);color:#fff}@media (hover:hover){.v2f-tile-ctrl.is-forced:hover{background:#9a4444}}.v2f-tile.is-forced-muted{box-shadow:inset 0 0 0 2px var(--lr-rose)}.v2f-tile.mini{aspect-ratio:4/3}.v2f-tile.mini .v2f-tile-avatar{font-size:18px;height:52px;width:52px}.v2f-tile.mini .v2f-tile-badge{display:none}.v2f-tile.mini .v2f-tile-name{backdrop-filter:none;background:linear-gradient(0deg,rgba(0,0,0,.7) 30%,transparent);border-radius:0;bottom:0;font-size:10.5px;font-weight:600;gap:4px;left:0;overflow:hidden;padding:14px 8px 4px;right:0;text-overflow:ellipsis;white-space:nowrap}.v2f-tile.mini .v2f-tile-name .mic-off{height:11px;width:11px}.v2f-tile.mini .v2f-tile-hand{left:4px;right:auto;top:4px}.v2f-tile.mini .v2f-tile-hand svg{height:15px;width:15px}.v2f-tile.mini .v2f-tile-controls{bottom:auto;gap:3px;right:5px;top:5px}.v2f-tile.mini .v2f-tile-ctrl{border-radius:6px;height:22px;width:22px}@media (min-width:901px){.v2f-people-pane .v2f-others-grid>.v2f-tile.mini:only-child{aspect-ratio:16/9;grid-column:1/-1}.v2f-people-pane .v2f-others-grid>.v2f-tile.mini:only-child .v2f-tile-avatar{font-size:28px;height:80px;width:80px}.v2f-people-pane .v2f-others-grid>.v2f-tile.mini:only-child .v2f-tile-name{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);background:rgba(0,0,0,.5);border-radius:999px;bottom:8px;font-size:11.5px;gap:6px;left:8px;max-width:calc(100% - 108px);overflow:visible;padding:3px 8px;right:auto;text-overflow:clip;white-space:normal}.v2f-people-pane .v2f-others-grid>.v2f-tile.mini:only-child .v2f-tile-name .mic-off{height:13px;width:13px}.v2f-people-pane .v2f-others-grid>.v2f-tile.mini:only-child .v2f-tile-hand{left:auto;right:6px;top:6px}.v2f-people-pane .v2f-others-grid>.v2f-tile.mini:only-child .v2f-tile-hand svg{height:19px;width:19px}.v2f-people-pane .v2f-others-grid>.v2f-tile.mini:only-child .v2f-tile-controls{bottom:8px;gap:4px;right:8px;top:auto}.v2f-people-pane .v2f-others-grid>.v2f-tile.mini:only-child .v2f-tile-ctrl{border-radius:8px;height:26px;width:26px}.v2f-people-pane .v2f-others-grid>.v2f-tile.mini:only-child .v2f-tile-chalk-badge{font-size:10.5px;gap:5px;left:8px;padding:3px 8px 3px 6px;top:8px}.v2f-people-pane .v2f-others-grid>.v2f-tile.mini:only-child .v2f-tile-chalk-badge svg{height:11px;width:11px}}.v2f-tile.is-offline{filter:grayscale(.4);opacity:.5}.v2f-tile.placeholder{background:linear-gradient(135deg,#efece5,#e6e2d5);border-color:var(--lr-line-2);border-style:dashed}.v2f-tile.placeholder .v2f-tile-name{backdrop-filter:none;background:transparent;color:var(--lr-ink-3);font-style:italic}.v2f-tile.has-chalk{border-color:var(--lr-accent);box-shadow:0 6px 18px -8px rgba(29,158,117,.5)}.v2f-tile.has-chalk.is-forced-muted{box-shadow:inset 0 0 0 2px var(--lr-rose),0 6px 18px -8px rgba(29,158,117,.5)}.v2f-tile-chalk-badge{align-items:center;background:var(--lr-accent);border-radius:999px;box-shadow:0 3px 10px -3px rgba(29,158,117,.6);color:#fff;display:inline-flex;font-size:10.5px;font-weight:700;gap:5px;left:8px;letter-spacing:.02em;padding:3px 8px 3px 6px;position:absolute;top:8px}.v2f-tile.mini .v2f-tile-chalk-badge{font-size:9.5px;gap:4px;left:5px;padding:2px 6px 2px 5px;top:5px}.v2f-tile.mini .v2f-tile-chalk-badge svg{height:9px;width:9px}.v2f-tile.has-chalk .v2f-tile-badge,.v2f-tile.has-chalk .v2f-tile-hand{display:none}.v2f-tile.hand .v2f-tile-ctrl.p-drawer-btn:not(.is-on){animation:v2f-chalk-pulse 1.6s infinite;background:var(--lr-amber)}@keyframes v2f-chalk-pulse{0%,to{box-shadow:0 0 0 0 rgba(197,123,26,.55)}70%{box-shadow:0 0 0 6px rgba(197,123,26,0)}}.v2f-tile.delegated:after{backdrop-filter:blur(6px);background:rgba(20,34,29,.85);border-radius:999px;color:#fff;content:"Мел передан";font-size:10px;font-weight:600;letter-spacing:.02em;padding:3px 8px;position:absolute;right:8px;top:8px}.v2f-chat-head{align-items:center;background:var(--lr-bg);border-bottom:.5px solid var(--lr-line);display:flex;justify-content:space-between;padding:12px 14px 8px}.v2f-chat-head .ttl{color:var(--lr-ink);font-size:13px;font-weight:700}.v2f-chat-head .sub{color:var(--lr-ink-3);font-size:11px;margin-top:1px}.v2f-pinned{align-items:flex-start;background:var(--lr-accent-50);border:.5px solid rgba(29,158,117,.25);border-radius:8px;display:flex;font-size:12px;gap:8px;line-height:1.4;margin:10px 12px 0;padding:8px 10px}.v2f-pinned .pin-icon{color:var(--lr-accent-2);display:grid;flex-shrink:0;height:18px;margin-top:1px;place-items:center;width:18px}.v2f-pinned .pin-text{color:var(--lr-ink-2);flex:1;min-width:0}.v2f-pinned .pin-text strong{color:var(--lr-ink)}.v2f-pinned .pin-tz{color:var(--lr-ink-3,var(--lr-ink-2));font-size:.85em}.v2f-pinned-notes{background:var(--lr-amber-50);border-color:rgba(197,123,26,.28)}.v2f-pinned-notes .pin-icon{color:var(--lr-amber)}.v2f-pinned-notes .pin-title{color:var(--lr-ink-2);display:block;font-size:10.5px;font-weight:700;letter-spacing:.06em;margin-bottom:3px;text-transform:uppercase}.v2f-pinned-notes .pin-notes-body{display:block;max-height:104px;overflow-wrap:anywhere;overflow-y:auto;overscroll-behavior:contain;padding-right:4px;scrollbar-color:rgba(197,123,26,.4) transparent;scrollbar-width:thin;white-space:pre-wrap}.v2f-pinned-notes .pin-notes-body::-webkit-scrollbar{width:6px}.v2f-pinned-notes .pin-notes-body::-webkit-scrollbar-track{background:transparent}.v2f-pinned-notes .pin-notes-body::-webkit-scrollbar-thumb{background:rgba(197,123,26,.4);border-radius:3px}.v2f-chat-body{display:flex;flex:1;flex-direction:column;min-height:0;overflow-y:auto;padding:8px 14px}.v2f-day-marker{align-items:center;align-self:center;color:var(--lr-ink-3);display:inline-flex;font-size:10.5px;font-weight:700;gap:12px;letter-spacing:.08em;padding:12px 12px 6px;position:relative;text-transform:uppercase}.v2f-day-marker:after,.v2f-day-marker:before{background:var(--lr-line);content:"";height:.5px;width:24px}.v2f-msg{display:flex;font-size:13px;gap:9px;line-height:1.4;padding:6px 0}.v2f-msg .av{border-radius:50%;color:#fff;display:grid;flex-shrink:0;font-size:10.5px;font-weight:700;height:28px;overflow:hidden;place-items:center;width:28px}.v2f-msg .av .chat-av-img{display:block;height:100%;object-fit:cover;width:100%}.v2f-msg .body{flex:1;min-width:0}.v2f-msg .meta{align-items:baseline;display:flex;font-size:11px;gap:8px;margin-bottom:2px}.v2f-msg .meta .name{color:var(--lr-ink);font-size:12px;font-weight:700}.v2f-msg .meta .role-pill{background:var(--lr-accent-50);border-radius:4px;color:var(--lr-accent-2);font-size:9.5px;font-weight:700;letter-spacing:.05em;padding:1px 5px;text-transform:uppercase}.v2f-msg .meta .time{color:var(--lr-ink-3);margin-left:auto}.v2f-msg .text{color:var(--lr-ink-2);min-width:0;overflow-wrap:anywhere;white-space:pre-wrap}.v2f-msg.mine .text{background:var(--lr-accent-50);border:.5px solid rgba(29,158,117,.25);border-radius:10px;box-sizing:border-box;display:inline-block;max-width:100%;padding:6px 10px}.v2f-msg .text a[rel~=ugc],.v2f-pinned-notes a[rel~=ugc]{color:var(--lr-accent-2);text-decoration:underline;text-underline-offset:2px}.v2f-msg.system{font-size:12px}.v2f-msg.system .av{background:var(--lr-panel);border:.5px dashed var(--lr-line);color:var(--lr-ink-3)}.v2f-msg.system .meta .name{color:var(--lr-ink-3);font-weight:600}.v2f-msg.system .text{color:var(--lr-ink-3);font-style:italic}.v2f-typing{align-items:center;color:var(--lr-ink-3);display:flex;font-size:11.5px;gap:8px;padding:6px 14px 0}.v2f-typing .av{border-radius:50%;color:#fff;display:grid;font-size:8.5px;font-weight:700;height:18px;place-items:center;width:18px}.v2f-typing .dots{align-items:center;display:inline-flex;gap:2px}.v2f-typing .dots span{animation:v2f-bob 1.2s infinite;background:var(--lr-ink-3);border-radius:50%;height:4px;width:4px}.v2f-typing .dots span:nth-child(2){animation-delay:.15s}.v2f-typing .dots span:nth-child(3){animation-delay:.3s}@keyframes v2f-bob{0%,to{opacity:.35;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}.v2f-chat-input-wrap{background:var(--lr-bg);border-top:.5px solid var(--lr-line);padding:10px 12px 12px}.v2f-chat-input{align-items:center;background:var(--lr-card);border:.5px solid var(--lr-line);border-radius:10px;display:flex;gap:6px;padding:6px 6px 6px 12px;transition:border-color .12s,box-shadow .12s}.v2f-chat-input:focus-within{border-color:var(--lr-accent);box-shadow:0 0 0 3px rgba(29,158,117,.12)}.v2f-chat-input input{background:transparent;border:0;color:var(--lr-ink);flex:1;font-family:inherit;font-size:13px;outline:none}.v2f-chat-input input::placeholder{color:var(--lr-ink-3)}.v2f-chat-input .send{background:var(--lr-accent);border:0;border-radius:7px;color:#fff;cursor:pointer;display:grid;height:28px;place-items:center;width:28px}@media (hover:hover){.v2f-chat-input .send:hover{background:var(--lr-accent-2)}}.v2f-dock{align-items:center;background:var(--lr-panel);border-top:.5px solid var(--lr-line);display:grid;gap:14px;grid-area:dock;grid-template-columns:1fr auto 1fr;padding:0 18px}.v2f-dock .left{align-items:center;display:flex;gap:10px;min-width:0}.v2f-dock .right{align-items:center;display:flex;gap:8px;justify-content:flex-end}.v2f-dock .center{align-items:center;background:var(--lr-card);border:.5px solid var(--lr-line);border-radius:999px;display:flex;gap:5px;padding:5px}.v2f-dock .who{align-items:center;display:flex;gap:10px;min-width:0;padding:0 10px}.v2f-dock .who .av{border-radius:50%;color:#fff;display:grid;flex-shrink:0;font-size:11px;font-weight:700;height:32px;overflow:hidden;place-items:center;width:32px}.v2f-dock .who .av img{display:block;height:100%;object-fit:cover;width:100%}.v2f-dock .who .label-pack{display:flex;flex-direction:column;min-width:0}.v2f-dock .who .n{color:var(--lr-ink);font-size:12.5px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v2f-dock .who .s{color:var(--lr-ink-3);font-size:11px}.v2f-dock-btn{background:var(--lr-card);border:.5px solid var(--lr-line);border-radius:999px;color:var(--lr-ink-2);cursor:pointer;display:grid;height:42px;place-items:center;transition:all .12s;width:42px}@media (hover:hover){.v2f-dock-btn:hover{border-color:var(--lr-ink);color:var(--lr-ink)}}.v2f-dock-btn.active{background:var(--lr-accent-50);border-color:var(--lr-accent);color:var(--lr-accent-2)}.v2f-dock-btn.muted{background:var(--lr-rose-50);border-color:var(--lr-rose);color:var(--lr-rose)}.v2f-dock-btn .icon-off,.v2f-dock-btn.muted .icon-on{display:none}.v2f-dock-btn.muted .icon-off{display:inline-block}.v2f-dock-btn.is-busy{animation:lr-dock-busy 1.1s ease-in-out infinite;background:var(--lr-accent-50);border-color:var(--lr-accent);color:var(--lr-accent-2);cursor:progress}@keyframes lr-dock-busy{0%,to{opacity:1}50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.v2f-dock-btn.is-busy{animation:none;opacity:.7}}.v2f-dock-btn.is-locked{cursor:not-allowed;opacity:.65}@media (hover:hover){.v2f-dock-btn.is-locked:hover{border-color:var(--lr-rose);color:var(--lr-rose)}}.v2f-dock-btn.end{background:var(--lr-rose);border-color:var(--lr-rose);color:#fff;width:56px}@media (hover:hover){.v2f-dock-btn.end:hover{background:#9a4444}}.v2f-dock-btn-wrap{display:inline-block;position:relative}.v2f-dock-btn-wrap .badge{background:var(--lr-rose);border:1.5px solid var(--lr-panel);border-radius:999px;color:#fff;display:grid;font-size:9.5px;font-weight:700;height:16px;min-width:16px;padding:0 4px;place-items:center;pointer-events:none;position:absolute;right:-3px;top:-3px}.v2f-dock .code{color:var(--lr-ink-3);font-family:JetBrains Mono,monospace;font-size:11.5px;letter-spacing:.04em}.v2f-dock .code strong{color:var(--lr-ink);font-weight:700;margin-left:4px}@media (max-width:1366px){.v2f-dock{gap:10px;padding:0 14px}.v2f-dock .center{gap:4px;padding:4px}.v2f-dock-btn{height:38px;width:38px}.v2f-dock-btn.end{width:50px}}@media (max-width:1280px){.v2f-dock .code,.v2f-dock .who .s{display:none}}.lr-share{background:#10130f;border:1px solid var(--lr-line-2);border-radius:12px;box-shadow:0 10px 34px rgba(20,34,29,.22);display:flex;flex-direction:column;overflow:hidden;position:absolute}.lr-share-head{align-items:center;background:var(--lr-panel);border-bottom:.5px solid var(--lr-line);color:var(--lr-ink);cursor:move;display:flex;flex:0 0 28px;font-size:11.5px;font-weight:600;gap:7px;letter-spacing:-.005em;padding:0 5px 0 10px;position:relative;touch-action:none;user-select:none;z-index:6}.lr-share--static .lr-share-head{cursor:default}.lr-share-live{animation:lr-share-pulse 1.8s ease-in-out infinite;background:var(--lr-live);border-radius:50%;flex:0 0 auto;height:6px;width:6px}@keyframes lr-share-pulse{0%,to{opacity:1}50%{opacity:.35}}.lr-share-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lr-share-actions{align-items:center;display:flex;gap:2px;margin-left:auto}.lr-share-btn{background:transparent;border:0;border-radius:6px;color:var(--lr-ink-3);cursor:pointer;display:grid;height:22px;padding:0;place-items:center;transition:background .12s,color .12s;width:22px}@media (hover:hover){.lr-share-btn:hover{background:rgba(20,34,29,.07);color:var(--lr-ink)}.lr-share-btn--stop:hover{background:var(--lr-rose-50);color:var(--lr-rose)}}.lr-share-video{background:#10130f;display:block;flex:1 1 auto;min-height:0;object-fit:contain;position:relative;width:100%;z-index:3}.lr-share-handle{position:absolute;touch-action:none;z-index:7}.lr-share-handle--n{top:0}.lr-share-handle--n,.lr-share-handle--s{cursor:ns-resize;height:7px;left:12px;right:12px}.lr-share-handle--s{bottom:0}.lr-share-handle--e{right:0}.lr-share-handle--e,.lr-share-handle--w{bottom:12px;cursor:ew-resize;top:12px;width:7px}.lr-share-handle--w{left:0}.lr-share-handle--ne{cursor:nesw-resize;height:14px;right:0;top:0;width:14px}.lr-share-handle--nw{cursor:nwse-resize;height:14px;left:0;top:0;width:14px}.lr-share-handle--se{bottom:0;cursor:nwse-resize;height:14px;right:0;width:14px}.lr-share-handle--sw{bottom:0;cursor:nesw-resize;height:14px;left:0;width:14px}:root{--lr-z-focus:400;--lr-z-focus-cams:420;--lr-focus-top:56px;--lr-focus-bottom:64px;--lr-focus-bar-slot:58px}.lr-focus{background:#10130f;bottom:var(--lr-focus-bottom);left:0;overflow:hidden;position:fixed;right:0;top:var(--lr-focus-top);z-index:var(--lr-z-focus)}.lr-focus[hidden]{display:none}#lesson-root:fullscreen .lr-focus,.lr-focus.is-fullscreen{bottom:0;top:0}.lr-focus.is-immersive{bottom:0;top:0}.v2f.is-focus-immersive .v2f-dock,.v2f.is-focus-immersive .v2f-header{display:none}.lr-focus-video{background:#10130f;object-fit:contain}.lr-focus-notes,.lr-focus-video{display:block;height:100%;inset:0;position:absolute;width:100%}.lr-focus-notes{pointer-events:none}.lr-focus-bar{align-items:center;background:var(--lr-panel);border:.5px solid var(--lr-line);border-radius:999px;box-shadow:0 6px 20px rgba(0,0,0,.28);color:var(--lr-ink);display:flex;font-size:11.5px;font-weight:600;gap:8px;max-width:min(52vw,420px);padding:5px 6px 5px 11px;position:absolute;right:calc(14px + env(safe-area-inset-right, 0px));top:calc(12px + env(safe-area-inset-top, 0px));transition:opacity .25s ease;z-index:3}.lr-focus-bar--plain{padding-left:6px}.lr-focus-live{animation:lr-share-pulse 1.8s ease-in-out infinite;background:var(--lr-live);border-radius:50%;flex:0 0 auto;height:6px;width:6px}.lr-focus-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lr-focus-bar.is-idle{opacity:.32}@media (hover:hover){.lr-focus-bar.is-idle:hover{opacity:1}}.lr-focus-btn{background:var(--lr-card);border:0;border-radius:999px;color:var(--lr-ink-2);cursor:pointer;display:grid;height:26px;padding:0;place-items:center;transition:color .12s,background .12s;width:26px}@media (hover:hover){.lr-focus-btn:hover{background:var(--lr-accent-50);color:var(--lr-accent-2)}}.lr-focus-btn[hidden]{display:none}.lr-focus-mirrors{align-items:center;display:none;gap:2px}.lr-focus-mirrors.is-shown{border-right:.5px solid var(--lr-line);display:flex;padding-right:8px}.lr-focus-btn--mirror.is-active{background:var(--lr-accent-50);color:var(--lr-accent-2)}.lr-focus-btn--mirror.is-muted{background:var(--lr-rose-50);color:var(--lr-rose)}.lr-focus-cams{left:62%;position:absolute;top:12px;z-index:var(--lr-z-focus-cams);--lr-focus-tile-w:116px;touch-action:none;width:max-content}.lr-focus-cams,.lr-focus-cams-body .v2f-tile,.lr-focus-cams-tab{-webkit-touch-callout:none;user-select:none;-webkit-user-select:none}.lr-focus-cams[hidden]{display:none}.lr-focus-cams{transition:opacity .3s ease}.lr-focus-cams.is-idle{opacity:.55}@media (hover:hover){.lr-focus-cams.is-idle:hover{opacity:1}}.lr-focus-cams.is-settling{transition:opacity .3s ease,left .18s ease,top .18s ease}.lr-focus-cams[data-size=s]{--lr-focus-tile-w:84px}.lr-focus-cams[data-size=m]{--lr-focus-tile-w:116px}.lr-focus-cams[data-size=l]{--lr-focus-tile-w:152px}.lr-focus-cams[data-size=p]{--lr-focus-tile-w:clamp(112px,31vmin,156px);max-width:calc(100% - 16px)}.lr-focus-cams-body{align-items:flex-start;display:flex;gap:6px}.lr-focus-cams-hide{background:rgba(16,19,15,.78);border:0;border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.35);color:#fff;cursor:pointer;display:grid;height:28px;left:-10px;opacity:0;padding:0;place-items:center;position:absolute;top:-10px;transition:opacity .15s ease;width:28px;z-index:2}@media (hover:hover){.lr-focus-cams-hide:hover{background:rgba(16,19,15,.92)}}.lr-focus-cams-hide:focus-visible{opacity:1}@media (hover:hover){.lr-focus-cams:hover .lr-focus-cams-hide{opacity:1}}.lr-focus-cams.is-dragging .lr-focus-cams-hide{opacity:0}@media (pointer:coarse){.lr-focus-cams-hide{display:none}}.lr-focus-cams-tab,.lr-focus-cams.is-collapsed .lr-focus-cams-body,.lr-focus-cams.is-collapsed .lr-focus-cams-hide{display:none}.lr-focus-cams.is-collapsed .lr-focus-cams-tab{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:hsla(0,0%,100%,.82);border:0;border-radius:10px 0 0 10px;box-shadow:0 2px 10px rgba(0,0,0,.45);color:#10130f;cursor:pointer;display:grid;height:56px;padding:0;place-items:center;width:20px}.lr-focus-cams.is-collapsed[data-side=left] .lr-focus-cams-tab{border-radius:0 10px 10px 0}.lr-focus-cams.is-collapsed .lr-focus-cams-tab svg{height:15px;width:15px}.lr-focus-cams-body .cam-section{display:contents}.lr-focus-cams-body .group-h{display:none}.lr-focus-cams-body .v2f-others-grid{display:flex;flex-wrap:wrap;gap:6px;max-width:calc(var(--lr-focus-tile-w)*3 + 12px)}.lr-focus-cams-body .v2f-tile{aspect-ratio:16/9;border:0;border-radius:9px;box-shadow:0 2px 10px rgba(0,0,0,.38);flex:0 0 auto;width:var(--lr-focus-tile-w)}.lr-focus-cams-body .v2f-tile.mini{aspect-ratio:16/9}.lr-focus-cams-body .v2f-tile-avatar{font-size:calc(var(--lr-focus-tile-w)*.16);height:calc(var(--lr-focus-tile-w)*.42);width:calc(var(--lr-focus-tile-w)*.42)}.lr-focus-cams-body .v2f-tile .v2f-tile-name,.lr-focus-cams-body .v2f-tile.mini .v2f-tile-name{backdrop-filter:none;-webkit-backdrop-filter:none;background:rgba(0,0,0,.5);border-radius:6px;bottom:3px;box-sizing:border-box;display:block;font-size:11px;left:3px;line-height:1.3;max-width:calc(100% - 6px);overflow:hidden;padding:1px 6px;right:auto;text-overflow:ellipsis;white-space:nowrap}.lr-focus-cams-body .v2f-tile-name .mic-off{margin-right:3px;vertical-align:-1px}.lr-focus-cams-body .v2f-tile .v2f-tile-controls,.lr-focus-cams-body .v2f-tile.mini .v2f-tile-controls{bottom:auto;gap:3px;right:5px;top:5px}.lr-focus-cams-body .v2f-tile .v2f-tile-ctrl,.lr-focus-cams-body .v2f-tile.mini .v2f-tile-ctrl{border-radius:6px;height:22px;width:22px}.lr-focus-cams-body .v2f-tile .v2f-tile-chalk-badge,.lr-focus-cams-body .v2f-tile.mini .v2f-tile-chalk-badge{bottom:22px;left:3px;top:auto}.lr-focus-cams-body .v2f-tile{container-type:inline-size}@container (max-width: 109px){.lr-focus-cams-body .v2f-tile-controls{display:none}}@media (pointer:coarse){.lr-focus-cams-body .v2f-tile-controls{display:none}.lr-focus-cams-body .v2f-tile.cam-tile>.v2f-tile-hidden>.v2f-tile-ctrl.v2f-tile-hidden-btn{min-height:32px;min-width:32px;padding:6px 12px}}.lr-focus-cams[data-size=p] .lr-focus-cams-body .v2f-others-grid{max-width:none}@media (orientation:portrait){.lr-focus-cams[data-size=p] .lr-focus-cams-body,.lr-focus-cams[data-size=p] .lr-focus-cams-body .v2f-others-grid{flex-direction:column}}.v2f.is-screen-focus .v2f-aside{background:var(--lr-panel);border:.5px solid var(--lr-line);border-radius:14px;bottom:calc(var(--lr-focus-bottom) + 14px);box-shadow:0 18px 48px rgba(20,34,29,.32);max-width:calc(100vw - 28px);overflow:hidden;position:fixed;right:14px;top:calc(var(--lr-focus-top) + var(--lr-focus-bar-slot));width:var(--lr-panel-w);z-index:calc(var(--lr-z-focus) + 15)}.v2f.is-focus-immersive .v2f-aside{bottom:14px;top:var(--lr-focus-bar-slot)}.v2f.is-screen-focus .v2f-tabs{border-radius:14px 14px 0 0}.v2f.is-screen-focus .v2f-tab[data-tab=people]{display:none}.v2f.is-screen-focus .v2f-tab[data-tab=chat]{flex:1}@media (max-width:900px){:root{--lr-focus-top:48px;--lr-focus-bottom:var(--lr-dock-h,56px)}.lr-focus-bar{gap:4px;left:auto;max-width:none;padding:4px;right:calc(8px + env(safe-area-inset-right, 0px));top:calc(8px + env(safe-area-inset-top, 0px))}.lr-focus-bar .lr-focus-label,.lr-focus-bar .lr-focus-live{display:none}.lr-focus-mirrors.is-shown{padding-right:4px}.lr-focus-btn{height:34px;width:34px}:root{--lr-focus-bar-slot:62px}.v2f.is-screen-focus .v2f-aside{bottom:calc(var(--lr-focus-bottom) + 8px);height:min(68dvh,520px);left:calc(8px + env(safe-area-inset-left, 0px));max-width:none;right:calc(8px + env(safe-area-inset-right, 0px));top:auto;width:auto}.v2f.is-focus-immersive .v2f-aside{bottom:calc(8px + env(safe-area-inset-bottom, 0px));top:auto}}.lr-sheet-scrim{display:none}@media (max-width:900px) and (hover:none),(pointer:coarse) and (max-height:500px){.v2f.is-camera-focus:not(.aside-collapsed)>.lr-sheet-scrim,.v2f.is-screen-focus:not(.aside-collapsed)>.lr-sheet-scrim{display:block;inset:0 0 var(--lr-focus-bottom) 0;position:fixed;z-index:calc(var(--lr-z-focus) + 14);-webkit-tap-highlight-color:transparent}.v2f.is-focus-immersive:not(.aside-collapsed)>.lr-sheet-scrim{bottom:0}.v2f.is-camera-focus .v2f-tabs,.v2f.is-screen-focus .v2f-tabs{padding-top:8px;position:relative;touch-action:none}.v2f.is-camera-focus .v2f-tabs:before,.v2f.is-screen-focus .v2f-tabs:before{background:var(--lr-ink-3);border-radius:2px;content:"";height:4px;left:50%;margin-left:-18px;opacity:.5;position:absolute;top:5px;width:36px}}@media (pointer:coarse) and (max-height:500px){.lr-focus-bar{gap:4px;left:auto;max-width:none;padding:4px}.lr-focus-bar .lr-focus-label,.lr-focus-bar .lr-focus-live,.lr-focus-bar .lr-focus-mirrors{display:none}}:root{--lr-cams-pad:10px}.lr-cams{background:#10130f;bottom:var(--lr-focus-bottom);display:flex;flex-direction:column;left:0;overflow:hidden;position:fixed;right:0;top:var(--lr-focus-top);z-index:var(--lr-z-focus)}.lr-cams[hidden]{display:none}#lesson-root:fullscreen .lr-cams,.lr-cams.is-fullscreen{bottom:0;top:0}.lr-cams.is-immersive{bottom:0;top:0}.lr-cams-grid{display:grid;flex:1 1 auto;gap:10px;grid-template-columns:repeat(var(--lr-cams-cols,1),minmax(0,1fr));grid-template-rows:repeat(var(--lr-cams-rows,1),minmax(0,1fr));min-height:0;padding:var(--lr-cams-pad);position:relative}.lr-cams-grid .cam-section,.lr-cams-grid .v2f-others-grid{display:contents}.lr-cams-grid .group-h{display:none}.lr-cams-grid .v2f-tile,.lr-cams-grid .v2f-tile.mini{aspect-ratio:auto;border-radius:14px;container-type:size;cursor:pointer;height:100%;min-height:0;min-width:0;width:auto}.lr-cams-grid .v2f-tile>video{object-fit:cover}.lr-cams-grid .v2f-tile.is-letterbox>video{object-fit:contain}.lr-cams-grid .v2f-tile>.v2f-tile-hidden{bottom:auto;justify-content:flex-start;top:min(calc(50cqh + min(21cqmin, 84px) + 8px),calc(100cqh - 84px))}.lr-cams-grid .v2f-tile.mini .v2f-tile-controls{bottom:8px;gap:4px;right:8px;top:auto}.lr-cams-grid .v2f-tile.mini .v2f-tile-ctrl{border-radius:8px;height:26px;width:26px}@media (hover:hover){.lr-cams:not(.is-spotlight) .lr-cams-grid .v2f-tile:hover{box-shadow:inset 0 0 0 2px hsla(0,0%,100%,.28)}}.lr-cams-grid .v2f-tile .v2f-tile-avatar,.lr-cams-grid .v2f-tile.mini .v2f-tile-avatar{aspect-ratio:1;font-size:clamp(18px,4.2vw,52px);height:auto;width:min(38%,168px);width:min(42cqmin,168px)}.lr-cams-grid .v2f-tile .v2f-tile-name,.lr-cams-grid .v2f-tile.mini .v2f-tile-name{font-size:12px}.lr-cams.is-spotlight .lr-cams-grid .v2f-tile.is-spotlight,.lr-cams.is-spotlight .lr-cams-grid .v2f-tile.mini.is-spotlight{aspect-ratio:auto;border-radius:14px;bottom:var(--lr-cams-pad);cursor:pointer;height:auto;left:var(--lr-cams-pad);position:absolute;right:var(--lr-cams-pad);top:var(--lr-cams-pad);width:auto}.lr-cams.is-spotlight .lr-cams-grid .v2f-tile.is-spotlight>video{object-fit:contain}.lr-cams.is-spotlight .lr-cams-grid .v2f-tile.is-spotlight .v2f-tile-controls{bottom:auto;right:8px;top:var(--lr-focus-bar-slot)}.lr-cams .lr-focus-cams-body .v2f-tile{cursor:pointer}.lr-cams-ui{position:absolute;z-index:2}.lr-cams-ui,.lr-cams-ui[hidden]{display:none}.lr-cams.is-spotlight .lr-cams-back{align-items:center;background:rgba(0,0,0,.55);border:0;border-radius:999px;color:#fff;cursor:pointer;display:inline-flex;font:inherit;font-size:12px;font-weight:600;gap:6px;left:calc(var(--lr-cams-pad) + 10px);opacity:0;padding:6px 11px;top:calc(var(--lr-cams-pad) + 10px);transition:opacity .18s ease}.lr-cams.is-spotlight .lr-cams-grid .v2f-tile.is-spotlight .v2f-tile-chalk-badge,.lr-cams.is-spotlight .lr-cams-grid .v2f-tile.is-spotlight .v2f-tile-hand{left:10px;right:auto;top:44px}.lr-cams.is-spotlight.is-spot-fresh .lr-cams-back,.lr-cams.is-spotlight.is-spot-hover .lr-cams-back,.lr-cams.is-spotlight.is-spot-reveal .lr-cams-back{opacity:1}@media (hover:none){.lr-cams.is-spotlight .lr-cams-back{min-height:36px;padding:6px 14px}.lr-cams.is-spotlight .lr-cams-grid .v2f-tile.is-spotlight .v2f-tile-chalk-badge,.lr-cams.is-spotlight .lr-cams-grid .v2f-tile.is-spotlight .v2f-tile-hand{top:50px}.lr-cams.is-spotlight:not(.is-spot-reveal):not(.is-spot-fresh) .lr-cams-back{pointer-events:none}.lr-cams.is-spotlight.is-spot-reveal .lr-cams-nav{background:rgba(0,0,0,.45);border:0;border-radius:50%;color:#fff;display:grid;height:44px;margin-top:-22px;place-items:center;top:50%;width:44px}.lr-cams.is-spotlight.is-spot-reveal .lr-cams-nav[hidden]{display:none}.lr-cams.is-spot-reveal .lr-cams-nav--prev{left:calc(var(--lr-cams-pad) + 8px)}.lr-cams.is-spot-reveal .lr-cams-nav--next{right:calc(var(--lr-cams-pad) + 8px)}.lr-cams.is-spotlight .lr-cams-grid .v2f-tile.is-spotlight{touch-action:none}}@media (hover:hover){.lr-cams-back:hover{background:rgba(0,0,0,.75)}.lr-cams.is-spotlight .lr-cams-nav{background:rgba(0,0,0,.45);border:0;border-radius:50%;color:#fff;cursor:pointer;display:grid;height:36px;margin-top:-18px;opacity:0;place-items:center;top:50%;transition:opacity .18s ease;width:36px}.lr-cams.is-spotlight .lr-cams-nav[hidden]{display:none}.lr-cams-nav--prev{left:calc(var(--lr-cams-pad) + 12px)}.lr-cams-nav--next{right:calc(var(--lr-cams-pad) + 12px)}.lr-cams.is-spotlight.is-spot-hover .lr-cams-nav{opacity:1}.lr-cams-nav:hover{background:rgba(0,0,0,.7)}}.lr-cams.is-spotlight .lr-cams-away{background:rgba(0,0,0,.6);border-radius:999px;color:#fff;display:block;font-size:12px;font-weight:600;left:50%;padding:6px 12px;pointer-events:none;top:calc(var(--lr-cams-pad) + 12px);transform:translateX(-50%);white-space:nowrap}.lr-cams.is-spotlight .lr-cams-away[hidden]{display:none}#lesson-root:has(.lr-cams:not([hidden])){--lr-toast-bottom:calc(var(--lr-focus-bottom) + var(--lr-cams-pad) + 44px)}.v2f.is-camera-focus .v2f-aside{background:var(--lr-panel);border:.5px solid var(--lr-line);border-radius:14px;bottom:calc(var(--lr-focus-bottom) + 14px);box-shadow:0 18px 48px rgba(20,34,29,.32);max-width:calc(100vw - 28px);overflow:hidden;position:fixed;right:14px;top:calc(var(--lr-focus-top) + var(--lr-focus-bar-slot));width:var(--lr-panel-w);z-index:calc(var(--lr-z-focus) + 15)}.v2f.is-camera-focus.is-focus-immersive .v2f-aside{bottom:14px;top:var(--lr-focus-bar-slot)}.v2f.is-camera-focus .v2f-tabs{border-radius:14px 14px 0 0}.v2f.is-camera-focus .v2f-tab[data-tab=people]{display:none}.v2f.is-camera-focus .v2f-tab[data-tab=chat]{flex:1}@media (max-width:900px){.lr-cams{--lr-cams-pad:6px}.lr-cams-grid{gap:6px}.lr-cams-grid .v2f-tile,.lr-cams-grid .v2f-tile.mini{border-radius:10px}.lr-cams.is-spotlight .lr-cams-back{left:calc(var(--lr-cams-pad) + 8px);top:calc(var(--lr-cams-pad) + 8px)}.v2f.is-camera-focus .v2f-aside{bottom:calc(var(--lr-focus-bottom) + 8px);height:min(68dvh,520px);left:calc(8px + env(safe-area-inset-left, 0px));max-width:none;right:calc(8px + env(safe-area-inset-right, 0px));top:auto;width:auto}.v2f.is-camera-focus.is-focus-immersive .v2f-aside{bottom:calc(8px + env(safe-area-inset-bottom, 0px));top:auto}}.v2f.is-call #btn-dock-gallery,.v2f.is-call #btn-dock-people,.v2f.is-call #btn-help,.v2f.is-call #page-label,.v2f.is-call .v2f-tools,.v2f.is-call [data-set-drawer],.v2f.is-call~.lr-cams .js-cams-exit,.v2f.is-call~.lr-cams [data-set-drawer],.v2f.is-call~.lr-focus [data-set-drawer]{display:none}@media (min-width:901px){.v2f.is-call{grid-template-columns:0 minmax(0,1fr) var(--lr-panel-w);grid-template-rows:0 minmax(0,1fr) var(--lr-dock-h)}}@media (max-width:900px){.v2f.is-call{grid-template-rows:0 auto auto minmax(0,1fr) var(--lr-dock-h)}}.v2f.is-call,.v2f.is-call~.lr-alerts,.v2f.is-call~.lr-cams,.v2f.is-call~.lr-focus{--lr-focus-top:0px}@media (max-width:900px),(pointer:coarse) and (max-height:500px){.v2f.is-call~.lr-cams:not(.is-immersive) .lr-focus-bar,.v2f.is-call~.lr-focus:not(.is-immersive) .lr-focus-bar{display:none}.v2f.is-call:not(.is-focus-immersive),.v2f.is-call:not(.is-focus-immersive)~.lr-alerts{--lr-focus-bar-slot:8px}}.lr-link{background:none;border:0;color:var(--lr-accent-2);cursor:pointer;font:inherit;padding:0;text-decoration:underline}.lr-stats{background:var(--lr-card);border:1px solid var(--lr-line);border-radius:10px;bottom:76px;box-shadow:0 8px 28px rgba(16,24,40,.18);color:var(--lr-ink);display:flex;flex-direction:column;font-size:12px;left:12px;line-height:1.45;max-height:min(60vh,560px);position:fixed;width:min(340px,calc(100vw - 24px));z-index:calc(var(--lr-z-focus, 400) + 20)}.lr-stats[hidden]{display:none}.lr-stats-head{align-items:center;border-bottom:1px solid var(--lr-line);display:flex;gap:8px;justify-content:space-between;padding:8px 10px}.lr-stats-title{font-weight:600}.lr-stats-close{background:none;border:0;color:var(--lr-ink-3);cursor:pointer;font-size:13px;line-height:1;padding:2px 4px}.lr-stats-body{overflow-y:auto;padding:6px 10px}.lr-stats-empty{color:var(--lr-ink-3);margin:6px 0}.lr-stats-peer+.lr-stats-peer{border-top:1px dashed var(--lr-line);margin-top:8px;padding-top:8px}.lr-stats-peer-h{display:flex;font-weight:600;gap:8px;justify-content:space-between}.lr-stats-id{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.lr-stats-state{color:var(--lr-ink-3);font-weight:400}.lr-stats-peer dl{display:grid;gap:2px 8px;grid-template-columns:78px 1fr;margin:4px 0 0}.lr-stats-peer dt{color:var(--lr-ink-3)}.lr-stats-peer dd{margin:0;overflow-wrap:anywhere}.lr-stats-relay{color:var(--lr-amber)}.lr-stats-foot,.lr-stats-why{color:var(--lr-ink-3)}.lr-stats-foot{border-top:1px solid var(--lr-line);padding:6px 10px}.lr-stats-foot kbd{border:1px solid var(--lr-line);border-radius:4px;font:inherit;padding:0 4px}@media (max-width:600px){.lr-stats{bottom:64px;left:8px;max-height:50vh;right:8px;width:auto}}:root{--lr-z-alerts:9400}.lr-alerts{display:flex;flex-direction:column;gap:8px;left:50%;pointer-events:none;position:fixed;top:calc(var(--lr-focus-top, 56px) + 12px);transform:translateX(-50%);width:min(380px,calc(100vw - 24px));z-index:var(--lr-z-alerts)}.lr-alerts:empty{display:none}.lr-alerts-guests{display:flex;flex-direction:column;gap:8px}.lr-alerts-guests:empty{display:none}.v2f.is-screen-focus~.lr-alerts{top:calc(var(--lr-focus-top, 56px) + var(--lr-focus-bar-slot, 58px))}.v2f.is-focus-immersive~.lr-alerts{top:var(--lr-focus-bar-slot,58px)}.lr-alert{align-items:center;background:var(--lr-card);border:.5px solid var(--lr-line);border-left:3px solid var(--lr-ink-3);border-radius:12px;box-shadow:0 12px 34px rgba(20,34,29,.26);display:grid;gap:10px;grid-template-columns:auto 1fr auto;padding:10px 30px 10px 12px;pointer-events:auto;position:relative;transition:opacity .18s ease,transform .18s ease}.lr-alert.is-enter,.lr-alert.is-leave{opacity:0;transform:translateY(-8px)}.lr-alert--passive,.lr-alert.is-leave{pointer-events:none}.lr-alert--passive .lr-alert-close{pointer-events:auto}.lr-alert-ic{background:var(--lr-panel);border-radius:50%;color:var(--lr-ink-2);display:grid;flex:0 0 auto;height:30px;place-items:center;width:30px}.lr-alert-ic--av{background:var(--lr-accent);color:#fff;font-size:11px;font-weight:700;letter-spacing:.02em}.lr-alert-ic--img{background:var(--lr-panel);overflow:hidden;padding:0}.lr-alert-ic--img img{display:block;height:100%;object-fit:cover;width:100%}.lr-alert-title{color:var(--lr-ink);font-size:13px;font-weight:700;line-height:1.25}.lr-alert-text{color:var(--lr-ink-2);font-size:11.5px;line-height:1.3}.lr-alert-acts{display:flex;gap:6px;grid-column:1/-1}.lr-alert-acts .lr-btn{flex:1;justify-content:center}.lr-alert-close{background:transparent;border:0;border-radius:6px;color:var(--lr-ink-3);cursor:pointer;display:grid;height:20px;padding:0;place-items:center;position:absolute;right:6px;top:6px;width:20px}@media (hover:hover){.lr-alert-close:hover{background:rgba(20,34,29,.07);color:var(--lr-ink)}}.lr-alert--hand{border-left-color:var(--lr-amber)}.lr-alert--hand .lr-alert-ic:not(.lr-alert-ic--av){background:var(--lr-amber-50);color:var(--lr-amber)}.lr-alert--hand .lr-alert-ic--av:not(.lr-alert-ic--img){background:var(--lr-amber)}.lr-alert--guest{background:var(--lr-card);border-left-color:var(--lr-accent)}.lr-alert--guest .lr-alert-ic:not(.lr-alert-ic--av){background:var(--lr-accent-50);color:var(--lr-accent-2)}.lr-alert--info{border-left-color:var(--lr-ink-3)}@media (max-width:900px){.lr-alerts{top:calc(var(--lr-focus-top, 48px) + 8px);width:calc(100vw - 20px)}.v2f.is-screen-focus~.lr-alerts{top:calc(var(--lr-focus-top, 48px) + var(--lr-focus-bar-slot, 62px))}.v2f.is-focus-immersive~.lr-alerts{top:var(--lr-focus-bar-slot,62px)}}@media (prefers-reduced-motion:reduce){.lr-alert{transition:none}}.lr-tour-dim{background:rgba(20,34,29,.45);position:fixed;transition:opacity .2s ease;z-index:5000}.lr-tour-ring{border:2px solid var(--lr-accent);border-radius:12px;box-shadow:0 0 0 4px rgba(29,158,117,.25);pointer-events:none;position:fixed;transition:top .18s ease,left .18s ease,width .18s ease,height .18s ease;z-index:5001}.lr-tour-ring.pulse{animation:lr-tour-pulse 1.6s ease-in-out infinite}@keyframes lr-tour-pulse{0%,to{box-shadow:0 0 0 4px rgba(29,158,117,.25)}50%{box-shadow:0 0 0 9px rgba(29,158,117,.1)}}.lr-tour-ring.is-done{animation:lr-tour-done .5s ease-out}@keyframes lr-tour-done{0%{box-shadow:0 0 0 4px rgba(29,158,117,.25)}45%{box-shadow:0 0 0 12px rgba(29,158,117,.28)}to{box-shadow:0 0 0 4px rgba(29,158,117,.25)}}.lr-tour-pop{background:var(--lr-card);border:1px solid var(--lr-line);border-radius:var(--lr-radius);box-shadow:0 12px 32px rgba(20,34,29,.18);color:var(--lr-ink-2);font-size:13px;line-height:1.45;max-width:calc(100vw - 24px);padding:16px;position:fixed;transition:opacity .16s ease,transform .16s ease;width:300px;z-index:5002}.lr-tour-pop.is-entering,.lr-tour-pop.is-leaving{opacity:0;pointer-events:none;transform:translateY(4px)}.lr-tour-pop.is-entering{transition:none}.lr-tour-pop.is-docked{max-width:none;width:calc(100vw - 20px)}.lr-tour-pop .ttl{color:var(--lr-ink);font-size:14px;font-weight:700;letter-spacing:-.01em;margin-bottom:6px}.lr-tour-pop .txt kbd{background:var(--lr-panel);border:solid var(--lr-line-2);border-radius:5px;border-width:1px 1px 2px;color:var(--lr-ink);display:inline-block;font-family:JetBrains Mono,monospace;font-size:11px;min-width:18px;padding:1px 5px;text-align:center}.lr-tour-pop .foot{align-items:center;display:flex;gap:8px;margin-top:14px}.lr-tour-pop .progress{color:var(--lr-ink-3);font-size:11px;font-variant-numeric:tabular-nums;font-weight:600;margin-right:auto}.lr-tour-pop .lr-tour-skip{background:none;border:none;color:var(--lr-ink-3);cursor:pointer;font-family:inherit;font-size:12px;padding:4px 2px}@media (hover:hover){.lr-tour-pop .lr-tour-skip:hover{color:var(--lr-ink);text-decoration:underline}}.lr-tour-pop .lr-tour-wait{align-items:center;color:var(--lr-accent-2);display:inline-flex;font-size:12px;font-weight:600;gap:7px}.lr-tour-pop .lr-tour-wait .dot{animation:lr-tour-pulse-dot 1.2s ease-in-out infinite;background:var(--lr-accent);border-radius:50%;height:8px;width:8px}@keyframes lr-tour-pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.6)}}.lr-tour-pop .lr-tour-wait.is-done{color:var(--lr-accent)}.lr-tour-pop .lr-tour-wait.is-done .tick{align-items:center;animation:lr-tour-tick-in .28s cubic-bezier(.2,1.3,.4,1);background:var(--lr-accent);border-radius:50%;color:#fff;display:inline-flex;font-size:10px;font-weight:700;height:15px;justify-content:center;width:15px}@keyframes lr-tour-tick-in{0%{opacity:0;transform:scale(.2)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.lr-tour-pop,.lr-tour-ring{transition:none}.lr-tour-pop .lr-tour-wait .dot,.lr-tour-pop .lr-tour-wait.is-done .tick,.lr-tour-ring.is-done,.lr-tour-ring.pulse,.v2f-dock-btn.lr-help-pulse{animation:none}}body.lr-tour-step-active .v2f-tools{z-index:5005}.v2f-dock-btn.lr-help-pulse{animation:lr-help-pulse 2s ease-in-out infinite}@keyframes lr-help-pulse{0%,to{box-shadow:0 0 0 0 rgba(29,158,117,0)}40%{box-shadow:0 0 0 6px rgba(29,158,117,.22)}}.lr-help-section{margin-bottom:16px}.lr-help-section:last-child{margin-bottom:0}.lr-help-section>h3{color:var(--lr-ink-3);font-size:12px;font-weight:700;letter-spacing:.04em;margin:0 0 8px;text-transform:uppercase}.lr-help-row{align-items:baseline;color:var(--lr-ink-2);display:flex;font-size:13px;gap:10px;padding:4px 0}.lr-help-row .k{color:var(--lr-ink);flex:0 0 auto;font-weight:600;min-width:152px}@media (max-width:640px){.lr-help-row{flex-direction:column;gap:2px}.lr-help-row .k{min-width:0}}.lr-help-row kbd{background:var(--lr-panel);border:solid var(--lr-line-2);border-radius:5px;border-width:1px 1px 2px;color:var(--lr-ink);display:inline-block;font-family:JetBrains Mono,monospace;font-size:11px;min-width:18px;padding:1px 5px;text-align:center}.lr-help-demo-link{align-items:center;color:var(--lr-accent-2);display:inline-flex;font-size:13px;font-weight:600;gap:6px;margin-top:4px;text-decoration:none}@media (hover:hover){.lr-help-demo-link:hover{text-decoration:underline}}.lr-hover-tip{background:var(--lr-ink);border-radius:7px;box-shadow:0 4px 14px rgba(20,34,29,.25);color:#fff;font-size:11.5px;font-weight:600;letter-spacing:-.005em;max-width:260px;opacity:0;padding:5px 9px;pointer-events:none;position:fixed;transform:translateY(2px);transition:opacity .1s ease,transform .1s ease;white-space:nowrap;z-index:9000}.lr-hover-tip.show{opacity:1;transform:translateY(0)}@media (max-width:900px){body.lesson-page #lesson-root{height:100dvh}:root{--lr-dock-h:calc(56px + env(safe-area-inset-bottom, 0px))}.v2f{--lr-tile-h:96px;--lr-pane-h:min(calc(34px + var(--lr-tile-h)),34dvh);--lr-panel-w:0px;grid-template-areas:"header" "aside" "tools" "board" "dock";grid-template-columns:minmax(0,1fr);grid-template-rows:48px auto auto minmax(0,1fr) var(--lr-dock-h)}.v2f-header{gap:8px;padding:0 8px}.v2f-header .lr-status-pill .lesson-status-badge,.v2f-header .sep,.v2f-header .sub,.v2f-timer-pack .track{display:none}.v2f-header .lesson-meta{flex:1 1 auto;margin-left:0;max-width:none;min-width:0}.v2f-header .ttl{font-size:13px}.v2f-header .right{flex:0 0 auto;gap:6px}.v2f-header .lr-status-pill{gap:0;padding:5px}.v2f-timer-pack{gap:0;padding:3px 8px}#btn-copy-guest-link .lbl,#btn-report-problem .lbl{display:none}#btn-copy-guest-link,#btn-report-problem{gap:0;padding:6px}.v2f-header form .lesson-end-btn{display:none}.v2f-header .lr-btn-sm{font-size:11.5px;padding:5px 8px}.v2f-aside{border-bottom:.5px solid var(--lr-line);border-left:0}.lr-panel-handle{display:none}.v2f-pane{flex:0 0 var(--lr-pane-h);height:var(--lr-pane-h)}.v2f-pane.lesson-chat{flex-basis:max(var(--lr-pane-h),45dvh);height:max(var(--lr-pane-h),45dvh)}.v2f.is-camera-focus .v2f-pane,.v2f.is-screen-focus .v2f-pane{flex:1 1 auto;height:auto}.v2f-people-pane{align-items:stretch;display:flex;flex-direction:row;gap:8px;overflow:auto;padding:8px;scrollbar-width:none}.v2f-people-pane::-webkit-scrollbar{display:none}.v2f-people-pane.has-more-x:after,.v2f-tools.has-more-x:after{align-self:stretch;content:"";flex:0 0 28px;margin-left:-28px;pointer-events:none;position:sticky;right:0;z-index:3}.v2f-people-pane.has-more-x:after{background:linear-gradient(to right,transparent,var(--lr-bg))}.v2f-tools.has-more-x:after{background:linear-gradient(to right,transparent,var(--lr-panel))}.v2f-people-pane>*{flex:0 0 auto;min-width:0}.v2f-people-pane .cam-section{display:flex;flex-direction:column}.v2f-people-pane .group-h{line-height:1.3;padding:0 0 4px}.v2f-people-pane .v2f-tile{height:var(--lr-tile-h);width:auto}.v2f-others-grid{display:flex;gap:6px}.v2f-chat-head{display:none}.v2f-chat-input-wrap{padding:6px 10px 8px}.v2f-pinned{margin:6px 10px 0;padding:6px 8px}.v2f-pinned-notes .pin-notes-body{max-height:40px}.v2f-tools{align-items:center;border-bottom:.5px solid var(--lr-line);border-right:0;flex-direction:row;gap:2px;justify-content:flex-start;overflow-x:auto;overflow-y:hidden;padding:4px 6px;scrollbar-width:none;z-index:50}.v2f-tools::-webkit-scrollbar{display:none}.v2f-tools .v2f-color-trigger,.v2f-tools .v2f-tool-btn,.v2f-tools .v2f-tool-group{flex:0 0 auto}.v2f-tools .v2f-color-trigger,.v2f-tools .v2f-tool-btn{height:36px;width:36px}.v2f-tool-btn .hk{display:none}.v2f-tools .sep{flex:0 0 auto;height:22px;margin:0 4px;width:.5px}.v2f.is-readonly .v2f-tools{align-items:center;padding:4px 8px}.v2f.is-readonly .v2f-readonly-rail-hint{letter-spacing:.1em;margin:0 0 0 10px;padding:0;transform:none;writing-mode:horizontal-tb}.v2f-tool-group.is-open .v2f-tool-popout,.v2f-tool-popout,.v2f-tool-popout.is-open{bottom:auto;left:10px;max-height:min(40dvh,max(120px,calc(100dvh - var(--lr-tools-bottom, 94px) - var(--lr-dock-h) - 16px)));overflow-y:auto;position:fixed;right:10px;top:calc(var(--lr-tools-bottom, 94px) + 8px);transform:none;white-space:normal;width:auto}@media (hover:hover){.v2f-tool-group:hover .v2f-tool-popout{bottom:auto;left:10px;max-height:min(40dvh,max(120px,calc(100dvh - var(--lr-tools-bottom, 94px) - var(--lr-dock-h) - 16px)));overflow-y:auto;position:fixed;right:10px;top:calc(var(--lr-tools-bottom, 94px) + 8px);transform:none;white-space:normal;width:auto}}.v2f-tool-popout.is-open{opacity:1;pointer-events:auto}.v2f-tool-popout:before{display:none}.v2f-tool-popout .row{flex-wrap:wrap;justify-content:center}.v2f-color-popout{box-sizing:border-box;width:auto}.v2f-color-popout .colors-grid{grid-template-columns:repeat(6,1fr)}.v2f-color-popout .color-swatch{height:34px;width:100%}.v2f-board-col{padding:6px}.v2f-ops-burger{left:8px;top:8px}.v2f-page-nav{bottom:8px;max-width:calc(100% - 16px);overflow-x:auto;scrollbar-width:none}.v2f-page-nav::-webkit-scrollbar{display:none}.v2f-page-nav .label{min-width:40px;padding:0 6px}.v2f-page-nav>*{flex:0 0 auto}.v2f-ops{bottom:calc(var(--lr-dock-h, 56px) + 10px);left:10px;max-height:50dvh;right:10px;top:auto;width:auto}.v2f-dock{gap:6px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);padding:0 8px env(safe-area-inset-bottom,0)}.v2f-dock .left{display:none}.v2f-dock .center{gap:4px;grid-column:2;padding:4px}.v2f-dock .right{grid-column:3}.v2f-dock-btn{height:36px;width:36px}.v2f-dock-btn.end{width:46px}}@media (max-width:420px){.v2f-dock .center:has(#btn-dock-focus:not(.is-hidden)){gap:2px}.v2f-dock .center:has(#btn-dock-focus:not(.is-hidden)) .v2f-dock-btn{height:32px;width:32px}.v2f-dock .center:has(#btn-dock-focus:not(.is-hidden)) .v2f-dock-btn.end{width:40px}}@media (max-width:900px),(pointer:coarse) and (max-height:500px){.lesson-chat .v2f-chat-body{flex:1 0 auto;overflow:visible}.lesson-chat .v2f-chat-input-wrap{bottom:0;position:sticky;z-index:1}}@media (pointer:coarse) and (max-height:500px){.v2f-chat-head{display:none}}@media (max-width:900px) and (pointer:coarse) and (max-height:500px){.v2f:not(.aside-collapsed) .v2f-ops-burger,.v2f:not(.aside-collapsed) .v2f-page-nav{display:none}}@media (hover:none){.v2f-tile-controls{opacity:1}.v2f-tool-btn .hk{display:none}}@media (hover:none) and (max-width:900px){.v2f-people-pane .v2f-tile.mini .v2f-tile-controls{gap:3px}.v2f-people-pane .v2f-tile.mini .v2f-tile-ctrl{height:26px;width:26px}.v2f-people-pane .v2f-tile .v2f-tile-chalk-badge{bottom:22px;top:auto}}@media (max-width:900px){.v2f-aside,.v2f-dock,.v2f-header,.v2f-ops,.v2f-page-nav,.v2f-tool-popout,.v2f-tools{touch-action:manipulation}#slide-name-input{max-width:min(32ch,55vw)!important}}@media (pointer:coarse) and (max-height:500px){body.lesson-page #lesson-root{height:100dvh}}#lesson-root.lesson-materials-board .v2f{grid-template-areas:"header header" "tools  board";grid-template-columns:56px minmax(0,1fr);grid-template-rows:56px minmax(0,1fr)}#lesson-root.lesson-materials-board .v2f-aside,#lesson-root.lesson-materials-board .v2f-dock,#lesson-root.lesson-materials-board .v2f-timer-pack{display:none}#lesson-root.lesson-materials-board .materials-board-save.is-dirty{background:var(--lr-accent);border-color:var(--lr-accent);color:#fff}@media (max-width:900px){#lesson-root.lesson-materials-board .v2f{grid-template-areas:"header" "tools" "board";grid-template-columns:minmax(0,1fr);grid-template-rows:48px auto minmax(0,1fr)}}