[data-lk-theme=default]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--lk-bg:#111;--lk-bg2:#1e1e1e;--lk-bg3:#2b2b2b;--lk-bg4:#373737;--lk-bg5:#444;--lk-fg:#fff;--lk-fg2:#f5f5f5;--lk-fg3:#ebebeb;--lk-fg4:#e0e0e0;--lk-fg5:#d6d6d6;--lk-border-color:#ffffff1a;--lk-accent-fg:#fff;--lk-accent-bg:#1f8cf9;--lk-accent2:#3396fa;--lk-accent3:#47a0fa;--lk-accent4:#5babfb;--lk-danger-fg:#fff;--lk-danger:#f91f31;--lk-danger2:#fa3343;--lk-danger3:#fa4756;--lk-danger4:#fb5b68;--lk-success-fg:#fff;--lk-success:#1ff968;--lk-success2:#33fa75;--lk-success3:#47fa83;--lk-success4:#5bfb90;--lk-control-fg:var(--lk-fg);--lk-control-bg:var(--lk-bg2);--lk-control-hover-bg:var(--lk-bg3);--lk-control-active-bg:var(--lk-bg4);--lk-control-active-hover-bg:var(--lk-bg5);--lk-connection-excellent:#06db4d;--lk-connection-good:#f9b11f;--lk-connection-poor:#f91f31;--lk-font-family:system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";--lk-font-size:16px;--lk-line-height:1.5;--lk-border-radius:.5rem;--lk-box-shadow:0 .5rem 1.5rem #00000026;--lk-drop-shadow:#fff3 0px 0px 24px;--lk-grid-gap:.5rem;--lk-control-bar-height:69px;--lk-chat-header-height:69px}.lk-button,.lk-start-audio-button,.lk-chat-toggle,.lk-disconnect-button{color:var(--lk-control-fg);background-image:none;background-color:var(--lk-control-bg);border-radius:var(--lk-border-radius);cursor:pointer;white-space:nowrap;font-size:inherit;line-height:inherit;-webkit-user-select:none;user-select:none;border:0;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1rem;display:inline-flex;position:relative}.lk-button:not(:disabled):hover,.lk-start-audio-button:not(:disabled):hover,.lk-chat-toggle:not(:disabled):hover,.lk-disconnect-button:not(:disabled):hover{background-color:var(--lk-control-hover-bg)}.lk-button>svg,.lk-start-audio-button>svg,.lk-chat-toggle>svg,.lk-disconnect-button>svg{overflow:visible}.lk-button[aria-pressed=true],[aria-pressed=true].lk-start-audio-button,[aria-pressed=true].lk-chat-toggle,[aria-pressed=true].lk-disconnect-button{background-color:var(--lk-control-active-bg)}.lk-button[aria-pressed=true]:hover,[aria-pressed=true].lk-start-audio-button:hover,[aria-pressed=true].lk-chat-toggle:hover,[aria-pressed=true].lk-disconnect-button:hover{background-color:var(--lk-control-active-hover-bg)}.lk-button[data-lk-source=screen_share][data-lk-enabled=true],[data-lk-source=screen_share][data-lk-enabled=true].lk-start-audio-button,[data-lk-source=screen_share][data-lk-enabled=true].lk-chat-toggle,[data-lk-source=screen_share][data-lk-enabled=true].lk-disconnect-button{background-color:var(--lk-accent-bg)}.lk-button[data-lk-source=screen_share][data-lk-enabled=true]:hover,[data-lk-source=screen_share][data-lk-enabled=true].lk-start-audio-button:hover,[data-lk-source=screen_share][data-lk-enabled=true].lk-chat-toggle:hover,[data-lk-source=screen_share][data-lk-enabled=true].lk-disconnect-button:hover{background-color:var(--lk-accent2)}.lk-button:disabled,.lk-start-audio-button:disabled,.lk-chat-toggle:disabled,.lk-disconnect-button:disabled{opacity:.5}.lk-button-group{align-items:stretch;height:100%;display:inline-flex}.lk-button-group>.lk-button:first-child,.lk-button-group>.lk-start-audio-button:first-child,.lk-button-group>.lk-chat-toggle:first-child,.lk-button-group>.lk-disconnect-button:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.lk-button-group-menu{flex-shrink:0;position:relative}.lk-button-group-menu>.lk-button,.lk-button-group-menu>.lk-start-audio-button,.lk-button-group-menu>.lk-chat-toggle,.lk-button-group-menu>.lk-disconnect-button{border-top-left-radius:0;border-bottom-left-radius:0;height:100%}.lk-button-group-menu>.lk-button:after,.lk-button-group-menu>.lk-start-audio-button:after,.lk-button-group-menu>.lk-chat-toggle:after,.lk-button-group-menu>.lk-disconnect-button:after{margin-left:0}.lk-button-menu:after{content:"";transform-origin:50%;border-bottom:.125em solid;border-left:.125em solid;width:.5em;height:.5em;margin-top:-.25rem;margin-left:.5rem;display:inline-block;transform:rotate(-45deg)}.lk-disconnect-button{color:var(--lk-danger);border:1px solid var(--lk-danger);font-weight:600}.lk-disconnect-button:not(:disabled):hover{--lk-control-hover-bg:var(--lk-danger2);color:var(--lk-danger-fg)}.lk-disconnect-button:not(:disabled):active{--lk-control-hover-bg:var(--lk-danger3);color:var(--lk-danger-fg)}.lk-chat-toggle{position:relative}.lk-chat-toggle[data-lk-unread-msgs]:not([data-lk-unread-msgs="0"]):after{content:attr(data-lk-unread-msgs);background:var(--lk-accent-bg);border-radius:50%;margin-top:.25rem;margin-left:.25rem;padding:.25rem;font-size:.5rem;line-height:.75;position:absolute;top:0;left:0}.lk-media-device-select:not(:last-child){border-bottom:1px solid var(--lk-border-color);margin-bottom:.75rem;padding-bottom:.5rem}.lk-media-device-select li:not(:last-child){margin-bottom:.25rem}.lk-media-device-select li>.lk-button{justify-content:start;width:100%;padding-block:.5rem}.lk-media-device-select li:not([data-lk-active=true])>.lk-button:not(:disabled):hover{background-color:var(--lk-bg3)}.lk-media-device-select [data-lk-active=false]>.lk-button:hover{cursor:pointer;background-color:#0000000d}.lk-media-device-select [data-lk-active=true]>.lk-button{color:var(--lk-accent-fg);background-color:var(--lk-accent-bg)}.lk-device-menu{z-index:5;white-space:nowrap;background-color:var(--lk-bg2);border:1px solid var(--lk-border-color);width:max-content;min-width:10rem;box-shadow:var(--lk-box-shadow);border-radius:.75rem;margin-bottom:.25rem;padding:.5rem;position:absolute;top:0;left:0}.lk-device-menu-heading{opacity:.65;padding:.25rem .5rem;font-weight:700}.lk-start-audio-button{color:var(--lk-accent-fg);background-color:var(--lk-accent-bg)}@media screen and (width<=600px){.lk-start-audio-button{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}}.lk-pagination-control{background-color:var(--lk-control-bg);border-radius:var(--lk-border-radius);opacity:0;align-items:stretch;transition:opacity .15s ease-in-out;display:flex;position:absolute;bottom:1rem;left:50%;transform:translate(-50%)}.lk-pagination-control:hover{opacity:1}.lk-pagination-control>.lk-button:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.lk-pagination-control>.lk-button:first-child>svg{transform:rotate(180deg)}.lk-pagination-control>.lk-button:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.lk-pagination-count{border-inline:1px solid var(--lk-bg);padding:.5rem .875rem}[data-lk-user-interaction=true].lk-pagination-control{opacity:1}.lk-pagination-indicator{height:var(--lk-grid-gap);background-color:var(--lk-bg2);width:fit-content;bottom:calc(var(--lk-grid-gap)/2);opacity:1;border-radius:2rem;align-items:center;gap:.2rem;padding:.2rem .5rem;display:flex;position:absolute;left:50%;transform:translate(-50%)}.lk-pagination-indicator span{background-color:var(--lk-fg);opacity:.35;border-radius:10000000px;width:.4rem;height:.4rem;transition:opacity .2s linear;display:inline-block}.lk-pagination-indicator span[data-lk-active]{opacity:.9}.lk-grid-layout{--lk-col-count:1;--lk-row-count:1;grid-template-columns:repeat(var(--lk-col-count), minmax(0, 1fr));grid-gap:var(--lk-grid-gap);width:100%;max-width:100%;height:100%;max-height:100%;padding:var(--lk-grid-gap);grid-auto-rows:minmax(0,1fr);display:grid}.lk-grid-layout[data-lk-pagination=true]{padding-bottom:calc(var(--lk-grid-gap)*2)}.lk-focus-layout{gap:var(--lk-grid-gap);width:100%;max-height:100%;padding:var(--lk-grid-gap);grid-template-columns:1fr 5fr;display:grid}.lk-focused-participant{position:relative}.lk-focused-participant .lk-pip-track{width:20%;height:auto;position:absolute;top:10px;right:10px}@media (width<=600px){.lk-focus-layout{grid-template-rows:5fr 1fr;grid-template-columns:1fr}.lk-carousel{order:1}}.lk-carousel{gap:var(--lk-grid-gap);max-height:100%;display:flex}.lk-carousel>*{aspect-ratio:16/10;scroll-snap-align:start;flex-shrink:0}.lk-carousel[data-lk-orientation=vertical]{scroll-snap-type:y mandatory;flex-direction:column;overflow:hidden auto}.lk-carousel[data-lk-orientation=vertical]>*{--lk-height-minus-gaps:calc(100% - calc(var(--lk-grid-gap) * calc(var(--lk-max-visible-tiles) - 1)));height:calc(var(--lk-height-minus-gaps)/var(--lk-max-visible-tiles))}.lk-carousel[data-lk-orientation=horizontal]{scroll-snap-type:x mandatory;overflow:auto hidden}.lk-carousel[data-lk-orientation=horizontal]>*{--lk-width-minus-gaps:calc(100% - var(--lk-grid-gap) * (var(--lk-max-visible-tiles) - 1));width:calc(var(--lk-width-minus-gaps)/var(--lk-max-visible-tiles))}.lk-connection-quality{width:1.5rem;height:1.5rem}.lk-track-muted-indicator-camera,.lk-track-muted-indicator-microphone{width:var(--lk-indicator-size,1rem);height:var(--lk-indicator-size,1rem);margin-inline-end:.25rem;transition:opacity .25s ease-in-out;position:relative}.lk-track-muted-indicator-camera[data-lk-muted=true]{opacity:.5}.lk-track-muted-indicator-microphone{--lk-bg:var(--lk-icon-mic)}.lk-track-muted-indicator-microphone[data-lk-muted=true]{opacity:.5}.lk-participant-name{font-size:.875rem}.lk-participant-media-video{object-fit:cover;object-position:center;background-color:#000;width:100%;height:100%}.lk-participant-media-video[data-lk-orientation=landscape]{object-fit:cover}.lk-participant-media-video[data-lk-orientation=portrait],.lk-participant-media-video[data-lk-source=screen_share]{object-fit:contain;background-color:var(--lk-bg2)}.lk-participant-media-audio{width:auto}[data-lk-facing-mode=user] .lk-participant-media-video[data-lk-local-participant=true][data-lk-source=camera]{transform:rotateY(180deg)}.lk-audio-visualizer{background:var(--lk-bg-control);aspect-ratio:16/9;border-radius:.5rem;justify-content:space-around;align-items:center;width:100%;height:100%;min-height:160px;display:flex}.lk-audio-visualizer>rect{fill:var(--lk-accent-bg);transition:transform .1s cubic-bezier(.19,.02,.09,1)}.lk-audio-visualizer>path{stroke:var(--lk-accent-bg);transition:all .1s cubic-bezier(.19,.02,.09,1)}.lk-audio-bar-visualizer{background:var(--lk-bg);justify-content:center;align-items:center;gap:var(--lk-va-bar-gap,24px);width:100%;height:100%;display:flex}.lk-audio-bar-visualizer>.lk-audio-bar{transform-origin:"center";height:100%;width:var(--lk-va-bar-width,12px);border-radius:var(--lk-va-bar-border-radius,32px);background-color:var(--lk-va-bar-bg,#8883);transition:background-color .25s ease-out}.lk-audio-bar-visualizer[data-lk-va-state=speaking]>.lk-audio-bar,.lk-audio-bar-visualizer>.lk-audio-bar.lk-highlighted,.lk-audio-bar-visualizer>[data-lk-highlighted=true]{background-color:var(--lk-fg,#888);transition:none}.lk-audio-bar-visualizer[data-lk-va-state=thinking]{transition:background-color .15s ease-out}.lk-participant-tile{--lk-speaking-indicator-width:2.5px;border-radius:var(--lk-border-radius);flex-direction:column;gap:.375rem;display:flex;position:relative;overflow:hidden}.lk-participant-tile:after{content:"";border-radius:var(--lk-border-radius);border:0px solid var(--lk-accent-bg);transition-property:border opacity;pointer-events:none;transition-duration:.4s;transition-delay:.5s;position:absolute;inset:0}.lk-participant-tile[data-lk-speaking=true]:not([data-lk-source=screen_share]):after{border-width:var(--lk-speaking-indicator-width);transition-duration:.2s;transition-delay:0s}.lk-participant-tile .lk-focus-toggle-button{border-radius:calc(var(--lk-border-radius)/2);opacity:0;background-color:#00000080;padding:.25rem;transition:opacity .2s ease-in-out .2s;position:absolute;top:.25rem;right:.25rem}.lk-participant-tile:hover .lk-focus-toggle-button,.lk-participant-tile:focus .lk-focus-toggle-button{opacity:1;transition-delay:0}.lk-participant-tile .lk-connection-quality{opacity:0;transition:opacity .2s ease-in-out .2s}.lk-participant-tile .lk-connection-quality[data-lk-quality=poor],.lk-participant-tile:hover .lk-connection-quality,.lk-participant-tile:focus .lk-connection-quality{opacity:1;transition-delay:0}.lk-participant-tile .lk-participant-placeholder{background-color:var(--lk-bg2);opacity:0;pointer-events:none;border-radius:var(--lk-border-radius);justify-content:center;align-items:center;transition:opacity .2s ease-in-out;display:flex;position:absolute;inset:0}.lk-participant-tile .lk-participant-placeholder svg{width:auto;height:100%;padding:10%}.lk-participant-tile[data-lk-video-muted=true][data-lk-source=camera] .lk-participant-placeholder{opacity:1}.lk-participant-metadata{flex-direction:row;justify-content:space-between;align-items:center;gap:.5rem;line-height:1;display:flex;position:absolute;bottom:.25rem;left:.25rem;right:.25rem}.lk-participant-metadata-item{border-radius:calc(var(--lk-border-radius)/2);background-color:#00000080;align-items:center;padding:.25rem;display:flex}.lk-toast{background-color:var(--lk-bg);border:1px solid var(--lk-border-color);border-radius:var(--lk-border-radius);box-shadow:var(--lk-box-shadow);align-items:center;gap:.5rem;padding:.75rem 1.25rem;display:flex;position:fixed;top:.75rem;left:50%;transform:translate(-50%)}.lk-spinner{animation:2s linear infinite lk-rotate}@keyframes lk-rotate{0%{transform:rotate(0)}to{transform:rotate(359deg)}}.lk-room-container{background-color:var(--lk-bg);line-height:var(--lk-line-height)}.lk-room-container{--lk-has-imported-styles:"true";width:100%;height:100%;position:relative}.lk-room-container [class^=lk-],.lk-room-container [class*=\ lk-]{box-sizing:border-box}.lk-audio-conference{width:100%;height:100%;position:relative}.lk-audio-conference-stage{grid-template-columns:repeat(3,1fr);gap:10px;width:100%;height:100%;display:grid}.lk-chat{grid-template-rows:var(--lk-chat-header-height) 1fr var(--lk-control-bar-height);background-color:var(--lk-bg2);border-left:1px solid var(--lk-border-color);align-items:end;width:max(200px,55ch);display:grid}.lk-chat-header{height:var(--lk-chat-header-height);justify-content:center;align-items:center;padding:.75rem;display:flex;position:relative}.lk-chat-header .lk-close-button{background-color:#0000;position:absolute;right:0;transform:translate(-50%)}.lk-chat-header .lk-close-button:hover{background-color:var(--lk-control-active-hover-bg)}.lk-chat-messages{flex-direction:column;gap:.25rem;width:100%;max-height:100%;display:flex;overflow:auto}.lk-chat-entry{flex-direction:column;gap:.25rem;margin:0 .25rem;display:flex}.lk-chat-entry .lk-meta-data{color:var(--lk-fg5);white-space:nowrap;padding:0 .3rem;font-size:.75rem;display:flex}.lk-chat-entry .lk-meta-data .lk-participant-name{margin-top:1rem}.lk-chat-entry .lk-meta-data .lk-timestamp{align-self:flex-end;margin-left:auto}.lk-chat-entry .lk-edit-button{float:right;background:0 0;border-radius:0;margin:0;padding:0 .25rem;font-size:12px}.lk-chat-entry .lk-message-body{word-break:break-word;border-radius:15px;width:fit-content;max-width:calc(100% - 32px);padding:.25rem .75rem;display:inline-block}.lk-chat-entry[data-lk-message-origin=local] .lk-message-body{background-color:var(--lk-bg5)}.lk-chat-entry[data-lk-message-origin=remote] .lk-message-body{background-color:var(--lk-accent4)}.lk-chat-entry a{color:inherit;text-decoration:underline}.lk-chat-entry *{margin-block:.25em}.lk-chat-entry:last-child{margin-bottom:.25rem}.lk-chat-form{border-top:1px solid var(--lk-border-color);max-height:var(--lk-control-bar-height);gap:.75rem;padding:.75rem;display:flex}.lk-chat-form-input{font-size:inherit;line-height:inherit;width:100%}@media (width<=600px){.lk-chat{max-width:100%;top:0;right:0;bottom:var(--lk-control-bar-height);position:fixed}}.lk-control-bar,.lk-agent-control-bar{border-top:1px solid var(--lk-border-color);max-height:var(--lk-control-bar-height);justify-content:center;align-items:center;gap:.5rem;padding:.75rem;display:flex}.lk-agent-control-bar{height:var(--lk-control-bar-height);--lk-bg:transparent;--lk-va-bar-width:2px;--lk-va-bar-gap:4px;--lk-va-bar-border-radius:1px}.lk-agent-control-bar .lk-audio-bar-visualizer .lk-audio-bar.lk-highlighted{filter:none}.lk-prejoin{background-color:var(--lk-bg);line-height:var(--lk-line-height)}[data-lk-theme]{font-size:var(--lk-font-size);font-family:var(--lk-font-family);color:var(--lk-fg)}[data-lk-theme] .lk-list{margin:0;padding:0;list-style:none}[data-lk-theme] .lk-form-control{font-family:var(--lk-font-family);background-color:var(--lk-control-bg);border:1px solid var(--lk-border-color);border-radius:var(--lk-border-radius);padding:.625rem 1rem}.lk-prejoin{box-sizing:border-box;background-color:var(--lk-bg);flex-direction:column;align-items:stretch;gap:1rem;width:min(100%,480px);margin-inline:auto;padding:1rem;display:flex}.lk-prejoin .lk-video-container{aspect-ratio:16/10;border-radius:var(--lk-border-radius);background-color:#000;width:100%;height:auto;position:relative;overflow:hidden}.lk-prejoin .lk-video-container video,.lk-prejoin .lk-video-container .lk-camera-off-note{object-fit:cover;width:100%;height:100%;display:block}.lk-prejoin .lk-video-container video[data-lk-facing-mode=user]{transform:rotateY(180deg)}.lk-prejoin .lk-video-container .lk-camera-off-note{aspect-ratio:16/10;background-color:#000;place-items:center;width:100%;display:grid;position:absolute;top:0;left:0}.lk-prejoin .lk-video-container .lk-camera-off-note>*{max-width:100%;height:70%}.lk-prejoin .lk-audio-container{display:none}.lk-prejoin .lk-audio-container audio{width:100%;height:auto}.lk-prejoin .lk-button-group-container{flex-wrap:nowrap;gap:1rem;display:flex}.lk-prejoin .lk-button-group-container>.lk-button-group{width:50%}.lk-prejoin .lk-button-group-container>.lk-button-group>.lk-button{justify-content:left}.lk-prejoin .lk-button-group-container>.lk-button-group>.lk-button:first-child{width:100%}@media (width<=400px){.lk-prejoin .lk-button-group-container{flex-wrap:wrap}.lk-prejoin .lk-button-group-container>.lk-button-group{width:100%}}.lk-prejoin .lk-username-container{flex-direction:column;gap:1rem;width:100%;max-width:100%;display:flex}.lk-prejoin .lk-join-button{--lk-control-fg:var(--lk-accent-fg);--lk-control-bg:var(--lk-accent-bg);--lk-control-hover-bg:var(--lk-accent2);--lk-control-active-bg:var(--lk-accent3);--lk-control-active-hover-bg:var(--lk-accent4);background-color:var(--lk-control-bg)}.lk-prejoin .lk-join-button:hover{background-color:var(--lk-control-hover-bg)}.lk-focus-layout-wrapper,.lk-grid-layout-wrapper{width:100%;height:calc(100% - var(--lk-control-bar-height));justify-content:center;display:flex;position:relative}.lk-grid-layout-wrapper{flex-direction:column;align-items:center}.lk-focus-layout-wrapper{align-items:stretch}.lk-video-conference{align-items:stretch;height:100%;display:flex;position:relative}.lk-video-conference-inner{flex-direction:column;align-items:stretch;width:100%;display:flex}.lk-settings-menu-modal{background:var(--lk-bg);border-radius:var(--lk-border-radius);padding:1rem;background-color:var(--lk-bg);border:1px solid var(--lk-border-color);border-radius:var(--lk-border-radius);box-shadow:var(--lk-box-shadow);flex-direction:column;align-items:center;gap:.5rem;min-width:50vw;max-width:100%;min-height:50vh;max-height:100%;padding:.75rem 1.25rem;display:flex;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}:root{--text:#55506a;--text-muted:#8a869a;--text-h:#08060d;--bg:#fff;--panel:#f7f6fb;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#7c3aed;--accent-text:#fff;--accent-bg:#7c3aed1a;--accent-border:#7c3aed80;--ok:#2e9e52;--warn:#e08a00;--info:#2578d4;--danger:#e0413a;--grey:#8a8a94;--shadow:#00000014 0 8px 20px -6px, #0000000d 0 3px 6px -3px;--radius:8px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:16px/1.5 var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#b6b3c2;--text-muted:#86828f;--text-h:#f3f4f6;--bg:#16171d;--panel:#1e1f27;--border:#2e303a;--code-bg:#1f2028;--accent:#a874f7;--accent-bg:#a874f729;--accent-border:#a874f780;--shadow:#0006 0 8px 20px -6px, #00000040 0 3px 6px -3px}}*{box-sizing:border-box}body{margin:0}#root{flex-direction:column;min-height:100svh;display:flex}h1,h2,h3{color:var(--text-h);font-weight:600;line-height:1.2}h1{margin:0 0 .75rem;font-size:1.8rem}h2{margin:0 0 .6rem;font-size:1.35rem}h3{margin:0 0 .5rem;font-size:1.1rem}p{margin:0 0 .5rem}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}code{font-family:var(--mono);background:var(--code-bg);color:var(--text-h);border-radius:4px;padding:2px 6px;font-size:.9em}hr{border:none;border-top:1px solid var(--border)}input,select,textarea{font:inherit;color:var(--text-h);background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:.45rem .6rem}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent-border);outline-offset:1px;border-color:var(--accent-border)}textarea{resize:vertical}label{color:var(--text-h);font-size:.9rem}button{font:inherit;color:var(--text-h);background:var(--panel);border:1px solid var(--border);cursor:pointer;border-radius:6px;padding:.45rem .9rem;transition:border-color .15s,background .15s,opacity .15s}button:hover:not(:disabled){border-color:var(--accent-border)}button:disabled{opacity:.55;cursor:default}.btn-primary{background:var(--accent);color:var(--accent-text);border-color:#0000}.btn-primary:hover:not(:disabled){filter:brightness(1.08);border-color:#0000}.btn-danger{color:#fff;background:var(--danger);border-color:#0000}.btn-ghost{background:0 0}.btn-block{width:100%}a.btn-primary,a.btn-danger,a.btn-ghost,a.chip,a.badge{text-align:center;display:inline-block}a.btn-primary:hover,a.btn-danger:hover,a.btn-ghost:hover,a.chip:hover,a.badge:hover{text-decoration:none}.container{width:100%;max-width:1080px;margin:0 auto;padding:1.25rem}.narrow{max-width:640px;margin:0 auto}.narrow-sm{max-width:460px;margin:0 auto}.auth-card{margin-top:3rem}.app-header{border-bottom:1px solid var(--border);background:var(--panel)}.app-header__inner{align-items:center;gap:1rem;padding-top:.6rem;padding-bottom:.6rem;display:flex}.brand{color:var(--text-h);font-size:1.1rem;font-weight:700}.brand:hover{text-decoration:none}.app-nav{flex-wrap:wrap;flex:1;gap:.25rem;display:flex}.app-nav a{color:var(--text);border-radius:6px;padding:.35rem .7rem;font-size:.92rem}.app-nav a:hover{background:var(--accent-bg);color:var(--text-h);text-decoration:none}.app-nav a.active{background:var(--accent-bg);color:var(--accent);font-weight:600}.row{align-items:center;gap:.5rem;display:flex}.row-between{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.wrap{flex-wrap:wrap}.stack{flex-direction:column;gap:.75rem;display:flex}.stack-sm{flex-direction:column;gap:.4rem;display:flex}.grow{flex:1;min-width:0}.spread{flex-wrap:wrap;gap:.5rem;display:flex}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.page-header h1{margin:0}.muted{color:var(--text-muted)}.text-sm{font-size:.85rem}.text-center{text-align:center}.error{color:var(--danger);margin:.25rem 0}.text-ok{color:var(--ok)}.text-danger{color:var(--danger)}.input-search{max-width:280px}.gap-lg{gap:1rem}.example{font-style:italic}.m-0{margin:0}.mt-xs{margin:.3rem 0 0}.ml-1{margin-left:.5rem}.text-right{text-align:right}.lead{font-size:1.2rem}.self-center{align-self:center}.nowrap{white-space:nowrap}.bold{font-weight:600}.justify-end{justify-content:flex-end}.card{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);padding:1rem}.card>:last-child{margin-bottom:0}.dash-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.85rem;display:grid}.card-link{color:inherit;display:block}.card-link:hover{text-decoration:none}.card-link:hover .card{border-color:var(--accent-border);box-shadow:var(--shadow)}.card-pad-sm{padding:.75rem}.form{flex-direction:column;gap:.85rem;display:flex}.form .field,.form label{flex-direction:column;gap:.3rem;display:flex}.form input,.form select,.form textarea{width:100%}.badge{color:#fff;background:var(--badge-bg,var(--grey));white-space:nowrap;border-radius:999px;padding:.15rem .55rem;font-size:.75rem;display:inline-block}.badge-ok{--badge-bg:var(--ok)}.badge-warn{--badge-bg:var(--warn)}.badge-info{--badge-bg:var(--info)}.badge-danger{--badge-bg:var(--danger)}.badge-grey{--badge-bg:var(--grey)}.badge-accent{--badge-bg:var(--accent)}.tag{color:var(--text-h);background:var(--tag-bg,var(--panel));border:1px solid var(--border);border-radius:8px;padding:.1rem .45rem;font-size:.75rem;display:inline-block}.tag-ok{--tag-bg:#2e9e5229}.tag-warn{--tag-bg:#e08a0029}.tag-danger{--tag-bg:#e0413a29}.tag-accent{--tag-bg:var(--accent-bg)}.chip{border-radius:6px;padding:.35rem .75rem;font-size:.85rem}.chip.active{background:var(--accent);color:var(--accent-text);border-color:#0000}.tabs{border-bottom:1px solid var(--border);gap:.25rem;margin-bottom:.75rem;padding-bottom:.5rem;display:flex}.tab{color:var(--text-muted);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:.3rem .7rem}.tab:hover:not(:disabled){color:var(--text-h);border-color:#0000}.tab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.banner{border-radius:var(--radius);border:1px solid var(--border);margin-bottom:1rem;padding:.65rem 1rem}.banner-info{background:var(--accent-bg);border-color:var(--accent-border)}.banner-warn{background:#e08a001f;border-color:#e08a0066}.banner-ok{background:#2e9e521f;border-color:#2e9e5266}.table{border-collapse:collapse;width:100%;font-size:.9rem}.table th,.table td{text-align:left;padding:.45rem}.table thead th{border-bottom:2px solid var(--border)}.table tbody tr{border-bottom:1px solid var(--border)}.table .truncate{text-overflow:ellipsis;white-space:nowrap;max-width:260px;overflow:hidden}.row-dim{opacity:.5}.metrics{flex-wrap:wrap;gap:1.5rem;display:flex}.progress{background:var(--panel);border:1px solid var(--border);border-radius:8px;height:10px;overflow:hidden}.progress__fill{background:var(--ok);height:100%;width:var(--pct,0%);transition:width .3s}.flashcard{border:1px solid var(--border);text-align:center;border-radius:12px;flex-direction:column;justify-content:center;gap:.75rem;min-height:220px;padding:2rem;display:flex}.rating-btn{color:#fff;background:var(--rb,var(--grey));border:none;border-radius:8px;padding:.6rem 1.2rem;font-weight:600}.rating-btn:hover:not(:disabled){filter:brightness(1.08)}.center-actions{justify-content:center;gap:1rem;display:flex}.mt-1{margin-top:1rem}.mt-2{margin-top:1.5rem}.mb-sm{margin-bottom:.5rem}.mb-1{margin-bottom:1rem}.mb-2{margin-bottom:1.5rem}.align-start{align-items:flex-start}.cal-grid{background:var(--border);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:repeat(7,1fr);gap:1px;display:grid;overflow:hidden}.cal-dow{text-align:center;background:var(--panel);padding:.5rem;font-size:.85rem;font-weight:600}.cal-cell{background:var(--bg);min-height:84px;padding:.3rem}.cal-cell.empty{background:var(--panel)}.cal-cell.today{background:var(--accent-bg)}.cal-date{font-size:.85rem}.cal-cell.today .cal-date{font-weight:700}.cal-event{background:var(--badge-bg,var(--grey));color:#fff;text-overflow:ellipsis;white-space:nowrap;border-radius:4px;margin-top:2px;padding:.1rem .3rem;font-size:.7rem;display:block;overflow:hidden}.cal-event:hover{text-decoration:none}.stat-row{flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem;display:flex}.stat-card{border:1px solid var(--border);border-radius:var(--radius);min-width:130px;padding:.75rem 1rem}.stat-card__value{color:var(--text-h);font-size:1.6rem;font-weight:700}.charts-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:1rem;display:grid}.room{flex-direction:column;height:100vh;display:flex}.room-body{flex:1;min-height:0;display:flex}.room-video{flex-direction:column;flex:1;display:flex}.room-chat{border-left:1px solid var(--border);flex-direction:column;width:300px;display:flex}.room-chat__head{border-bottom:1px solid var(--border);margin:0;padding:.5rem}.room-chat__list{flex:1;padding:.5rem;overflow-y:auto}.room-chat__list>div{margin-bottom:.5rem}.room-chat__form{border-top:1px solid var(--border);display:flex}.room-chat__form input{border:none;border-radius:0;flex:1}.room-toolbar{align-items:center;gap:.5rem;padding:.5rem;display:flex}.room-banner{border-radius:0;flex-wrap:wrap;align-items:center;gap:1rem;margin:0;display:flex}.mic-bars{align-items:flex-end;gap:2px;height:16px;display:flex}.mic-bar{background:var(--mic-bg,var(--border));width:4px;height:var(--mic-h,40%);border-radius:1px}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--bg);color:var(--text);border-radius:var(--radius);max-width:420px;box-shadow:var(--shadow);padding:1.5rem}.students-layout{align-items:flex-start;gap:1rem;display:flex}.students-list{flex-shrink:0;width:280px}.student-row{text-align:left;flex-direction:column;align-items:flex-start;gap:.15rem;width:100%;display:flex}.student-row.active{border-color:var(--accent);background:var(--accent-bg)}.notes-editor{width:100%;font-family:var(--mono);font-size:.9rem}.student-photo{object-fit:cover;border:1px solid var(--border);border-radius:50%;flex-shrink:0;width:72px;height:72px}.student-photo--empty{background:var(--accent-bg);color:var(--accent);justify-content:center;align-items:center;font-size:1.6rem;font-weight:700;display:flex}.hidden-input{display:none}@media (width<=720px){.students-layout{flex-direction:column}.students-list{width:100%}}.participants{max-width:360px}.participants ul{margin:.5rem 0 0;padding-left:1.2rem}.participants li{margin-bottom:.2rem}.detail-layout{gap:1rem;min-height:500px;display:flex}.panel{border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;flex:1;padding:1rem;display:flex}.panel-body{flex:1;min-height:0;overflow:auto}.scroll-y{height:100%;overflow:auto}.seg{border-bottom:1px solid var(--border);padding:.4rem 0}.seg-meta{color:var(--text-muted);gap:.5rem;font-size:.8rem;display:flex}.seg-time{cursor:pointer;color:var(--accent)}.lesson-video{border-radius:var(--radius);background:#000;width:100%;max-height:400px}@media (width<=720px){.detail-layout{flex-direction:column}}.section{margin-bottom:2rem}.stars-on{color:#f5b301}.stars-off{color:var(--border)}.mono-list{margin:0;padding-left:1.2rem}.mono-list li{margin-bottom:.3rem}.divider-soft{border-top:1px solid var(--border);width:60%;margin:.25rem auto}
