@layer modules{#call_popup{display:flex;flex-direction:column;position:fixed;background:var(--bg-dark);border-radius:var(--r-3);z-index:9999;box-shadow:0 14px 20px rgb(0 0 0 / 20%);overflow:hidden;&.call_popup_mini{width:320px;height:240px;min-width:240px;min-height:180px;max-width:50vw;max-height:50vh;inset:var(--y,auto) 20px 20px var(--x,auto);resize:both;.call_body{padding:var(--sp-1);gap:var(--sp-1)}.call_controls{padding:var(--sp-2)}.call_btn{width:32px;height:32px;font-size:18px}.call_video_avatar{width:40px;height:40px;font-size:var(--fs-body)}.call_video_label{padding:1px var(--sp-1)}}&.call_popup_full{inset:0;width:100%;height:100dvh;border-radius:0;resize:none}.call_header{padding:var(--sp-2) var(--sp-3);background:var(--bg-darker);display:flex;align-items:center;justify-content:space-between;cursor:grab;user-select:none;&:active{cursor:grabbing}}.call_proj_name{color:var(--bg-white);font-size:var(--fs-small);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.call_header_btns{display:flex;gap:var(--sp-1);flex-shrink:0}.call_header_btns .call_btn{width:28px;height:28px;font-size:16px}.call_body{overflow:auto;display:grid;grid-template-columns:1fr;gap:var(--sp-2);padding:var(--sp-3);flex:1;background:var(--bg-darker);&:has(.call_video_tile:nth-child(2):last-child):not(:has(.is_screen)){grid-template-columns:1fr 1fr}&:has(.call_video_tile:nth-child(3):last-child):not(:has(.is_screen)){grid-template-columns:1fr 1fr 1fr}&:has(.call_video_tile:nth-child(4)),&:has(.is_screen){grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));align-items:stretch}&:has(.call_video_tile:nth-child(4)) .call_video_tile.is_stage,&:has(.is_screen) .call_video_tile:is(.is_screen,.is_stage){grid-column:1 / span 3;grid-row:1 / span 3}&:has(.call_video_tile:nth-child(4)) .call_video_tile:not(.is_stage),&:has(.is_screen) .call_video_tile:not(.is_screen,.is_stage){grid-column:4}}.call_video_tile{position:relative;background:var(--bg-dark);border-radius:10px;overflow:hidden;display:flex;align-items:center;justify-content:center;border:2px solid transparent;video{width:100%;height:100%;object-fit:contain;display:block;aspect-ratio:16 / 9}&.is_self.is_cam video{transform:scaleX(-1)}&.no_video video{display:none}&:not(.no_video) .call_video_avatar{display:none}&.is_screen .call_video_label::before{content:'screen: '}}video::-webkit-media-controls,video::-webkit-media-controls-enclosure,video::-webkit-media-controls-panel{display:none}.call_video_avatar{width:64px;height:64px;border-radius:50%;background:var(--primary-color);color:var(--bg-white);font-size:var(--fs-display);font-weight:var(--fw-strong);display:flex;align-items:center;justify-content:center;text-transform:uppercase;position:relative;overflow:hidden;--mic-level:0%;&::after{content:'';position:absolute;inset:auto 0 0;height:var(--mic-level);background:var(--success-color);opacity:0.5;transition:height 0.1s ease-out}}.call_video_label{position:absolute;bottom:6px;left:6px;color:var(--bg-white);font-size:var(--fs-caption);font-weight:var(--fw-medium);background:rgb(0 0 0 / 55%);padding:var(--sp-0) var(--sp-2);border-radius:var(--r-1);display:flex;align-items:center;gap:var(--sp-1)}.call_muted_icon{font-size:var(--fs-caption)}.call_video_icon{font-size:var(--fs-caption);color:var(--success-color)}.call_controls{padding:14px var(--sp-5);background:var(--bg-dark);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.call_ctrl_group{display:flex;align-items:center;gap:var(--sp-2)}.call_ctrl_group.center{flex:1;justify-content:center}.call_ctrl_group.right{justify-content:flex-end}.call_btn{width:48px;height:48px;font-size:24px;border-radius:50%}}.call_mini_bar{display:flex;flex-direction:column;align-items:stretch;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--bg-dark);opacity:0.94;backdrop-filter:blur(12px);border-bottom:1px solid var(--bg-white-10);position:sticky;top:36px;z-index:9;width:100%}.call_bar_buttons{display:flex;align-items:center;gap:var(--sp-2)}.call_btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--r-pill);background:var(--bg-white-10);color:white;cursor:pointer;font-size:20px;user-select:none;outline:none}@media (hover:hover){.call_btn:hover{filter:brightness(1.2);opacity:0.8}}.call_btn_exit{background:color-mix(in srgb,var(--error-color) 20%,transparent);color:var(--error-color)}.call_btn_mic{position:relative;overflow:hidden;background-image:linear-gradient(color-mix(in srgb,var(--success-color) 50%,transparent),color-mix(in srgb,var(--success-color) 50%,transparent));background-repeat:no-repeat;background-position:0 100%;background-size:100% 0%;transition:background-size 0.1s ease-out;&.mic_active{background-size:100% 40%}&.mic_hot{background-size:100% 100%}}.call_btn_mic.call_btn_small,.call_btn_popup.call_btn_small{background-color:rgb(0 0 0 / 40%)}.call_btn_join{width:auto;padding:0 var(--sp-4);height:36px;border-radius:18px;background:var(--primary-color);font-size:var(--fs-small);font-weight:var(--fw-strong);letter-spacing:0.3px;color:var(--bg-white)}.call_btn_small{width:36px;height:17px;font-size:var(--fs-caption);font-weight:var(--fw-medium)}.focus_item .call_btn_small{scale:2;margin-top:-11px;margin-right:20px}.focus_item :is(.call_btn_exit,.call_btn_mic,.call_btn_popup){scale:2;width:17px;margin-top:-11px;margin-right:20px;font-size:10px}.call_bar_avatars{display:flex;align-items:center;gap:var(--sp-1);overflow-x:auto}.call_tech_toggle{position:absolute;left:2px;bottom:2px;font-size:var(--fs-small);opacity:.2;cursor:pointer;z-index:5;color:var(--bg-white)}.call_bar_tech{font-size:var(--fs-caption);line-height:1.2;color:var(--bg-white-50);font-family:var(--mono);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.call_bar_avatar{width:28px;height:28px;border-radius:50%;background:var(--primary-color);color:white;display:flex;align-items:center;justify-content:center;font-size:var(--fs-small);font-weight:var(--fw-medium);border:2px solid transparent;flex-shrink:0;position:relative;.avatar_mic_off,.avatar_video_on{position:absolute;bottom:-2px;font-size:9px;background:rgb(0 0 0 / 70%);border-radius:50%;padding:1px}.avatar_mic_off{right:-2px}.avatar_video_on{left:-2px;color:var(--success-color)}}.call_bar_avatar.is_speaking,.call_video_tile.is_speaking{border-color:var(--success-color)}.is_screen .call_muted_icon{display:none}body.is_ios .call_btn_screen{display:none}@media (max-width:760px){#call_popup,#call_popup.call_popup_mini{inset:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;border-radius:0;resize:none}#call_popup .call_btn_fullscreen{display:none}#call_popup .call_body{flex:1;gap:6px;padding:var(--sp-2);align-content:center;&:has(.call_video_tile:only-child:not(.is_screen)){grid-template-columns:1fr;grid-template-rows:1fr}&:has(.call_video_tile:nth-child(2):last-child):not(:has(.is_screen)){grid-template-columns:1fr;grid-template-rows:1fr 1fr}&:has(.call_video_tile:nth-child(3):last-child):not(:has(.is_screen)){grid-template-columns:1fr;grid-template-rows:1fr 1fr 1fr}&:has(.call_video_tile:nth-child(4)),&:has(.is_screen){grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr))}&:has(.call_video_tile:nth-child(4)) .call_video_tile:not(.is_stage),&:has(.is_screen) .call_video_tile:not(.is_screen,.is_stage){grid-column:auto;grid-row:4;max-width:unset;min-width:unset}}#call_popup .call_video_tile video{max-height:35vh}}.md_viewer_body[contenteditable="true"]{outline:none;border:none}.md_viewer_cursor_layer{z-index:5}.md_viewer_remote_caret{border-radius:1px}dialog.migrate_modal{border:none;padding:22px var(--sp-6);background:var(--bg-white);color:var(--text-color);border-radius:18px;width:90%;max-width:460px;max-height:86vh;overflow-y:auto;box-shadow:var(--shadow-sm);outline:none;&[open]{display:flex;flex-direction:column;gap:var(--sp-3)}&::backdrop{background:rgb(0 0 0 / 50%);backdrop-filter:blur(3px)}}.migrate_head{font-size:var(--fs-title);font-weight:var(--fw-strong)}.migrate_sub{color:var(--text-light);font-size:var(--fs-small);line-height:1.45}.migrate_list{display:flex;flex-direction:column;gap:var(--sp-0);max-height:46vh;overflow-y:auto}.migrate_row{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:10px;cursor:pointer;&:hover{background:var(--bg-hover)}}.migrate_keep{width:16px;height:16px;accent-color:var(--primary-color);cursor:pointer}.migrate_name{flex:1;font-size:var(--fs-small);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.migrate_actions{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3)}.migrate_toggle{font-size:var(--fs-caption);color:var(--text-light);cursor:pointer;&:hover{color:var(--text-color)}}.migrate_btn{border-radius:10px;padding:9px var(--sp-4);font-size:var(--fs-small);font-weight:var(--fw-strong);cursor:pointer;background:var(--primary-color);color:var(--bg-white);&:disabled{opacity:0.6;cursor:default}}}