@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{--primary: #2563eb;--primary-dark: #1d4ed8;--primary-light: #eff6ff;--primary-border: #bfdbfe;--gray-50: #f8fafc;--gray-100: #f1f5f9;--gray-200: #e2e8f0;--gray-300: #cbd5e1;--gray-400: #94a3b8;--gray-500: #64748b;--gray-600: #475569;--gray-700: #334155;--gray-800: #1e293b;--gray-900: #0f172a;--success: #10b981;--error: #ef4444;--error-bg: #fef2f2;--error-border: #fecaca;--warning: #f59e0b;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--shadow: 0 4px 6px rgba(0, 0, 0, .07), 0 2px 4px rgba(0, 0, 0, .06);--shadow-md: 0 10px 15px rgba(0, 0, 0, .1), 0 4px 6px rgba(0, 0, 0, .05);--shadow-lg: 0 20px 25px rgba(0, 0, 0, .1), 0 10px 10px rgba(0, 0, 0, .04);--radius-sm: 6px;--radius: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-full: 9999px;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:16px;line-height:1.5;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}*,*:before,*:after{box-sizing:border-box}body{margin:0;padding:0;min-width:320px;min-height:100vh;min-height:100dvh;background:var(--gray-50);color:var(--gray-900);display:block}a{font-weight:500;color:var(--primary);text-decoration:none;transition:color .15s}a:hover{color:var(--primary-dark);text-decoration:underline}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600;line-height:1.25;color:var(--gray-900)}button{font-family:inherit;cursor:pointer;border:none;border-radius:var(--radius);font-weight:500;transition:background .15s,box-shadow .15s,transform .1s}button:active{transform:translateY(1px)}input,select,textarea{font-family:inherit;font-size:.95rem}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}.media-viewer-btn{background:var(--primary);color:#fff;border:none;border-radius:var(--radius-sm);padding:6px 16px;font-weight:500;cursor:pointer;margin-bottom:8px;transition:background .15s}.media-viewer-btn:hover{background:var(--primary-dark)}.media-viewer-icon-btn{background:none;border:none;padding:6px;cursor:pointer;display:flex;align-items:center;border-radius:var(--radius-sm);transition:background .15s}.media-viewer-icon-btn:hover{background:var(--gray-100)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.media-viewer-overlay{position:fixed;inset:0;background:#00000059;z-index:9999;display:flex;align-items:center;justify-content:center}.media-viewer-modal{background:#fff;border-radius:12px;padding:32px 24px 24px;max-width:540px;width:100%;box-shadow:0 8px 32px #0000001f;position:relative}.media-viewer-close{position:absolute;top:16px;right:16px;background:none;border:none;font-size:2rem;color:#222;cursor:pointer}.media-viewer-section{margin-bottom:24px}.media-viewer-grid{display:flex;flex-wrap:wrap;gap:12px}.media-viewer-img{width:100px;height:70px;object-fit:cover;border-radius:6px;border:1px solid #eee}.media-viewer-video{width:120px;height:70px;border-radius:6px;border:1px solid #eee}.media-viewer-list{list-style:none;padding:0}.media-viewer-list li{margin-bottom:8px}.media-viewer-empty{color:#888;font-size:.95rem}.media-viewer-video-wrap{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.media-viewer-dl{font-size:.8rem;color:#6366f1;text-decoration:none}.media-viewer-dl:hover{text-decoration:underline}.home-chat-container{display:flex;height:100vh;height:100dvh;width:100vw;background:var(--gray-50, #f8fafc);font-family:Inter,system-ui,sans-serif;overflow:hidden}.chat-list-pane{display:contents}.chat-header-left-wrap{display:flex;align-items:center;gap:4px;min-width:0}.chat-back-btn{display:none;position:relative;background:none;border:none;color:var(--gray-500, #64748b);cursor:pointer;padding:6px;border-radius:var(--radius, 8px);align-items:center;justify-content:center;flex-shrink:0}.chat-back-btn:hover{background:var(--gray-100, #f1f5f9)}.chat-back-btn-badge{position:absolute;top:0;right:0;min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:#ef4444;color:#fff;font-size:.62rem;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1;border:1.5px solid #fff}.participants-panel{width:300px}@media(max-width:768px){.chat-list-pane{display:flex;width:100%;height:100%}.chat-list-pane.hidden-mobile,.main-chat.hidden-mobile{display:none}.sidebar{width:100%;flex:1;min-width:0}.main-chat{width:100%}.chat-back-btn{display:flex}.chat-header{padding:10px 12px}.chat-header-btn--video span{display:none}.chat-messages{padding:12px 10px}.message-bubble{max-width:82%}.chat-input-area{padding:8px 10px}.participants-panel{width:100%}.settings-page:not(.mobile-content-open) .main-chat{display:none}.settings-page.mobile-content-open .sidebar{display:none}}.sidebar-user{width:68px;background:#fff;border-right:1px solid var(--gray-200, #e2e8f0);display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:20px 0;flex-shrink:0}.sidebar-user-settings-btn{background:none;border:none;cursor:pointer;color:var(--gray-400, #94a3b8);width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius, 8px);padding:0;font-size:20px;transition:color .15s,background .15s}.sidebar-user-settings-btn:hover{color:var(--primary, #2563eb);background:var(--primary-light, #eff6ff)}.sidebar-user-bottom{width:100%;display:flex;justify-content:center;align-items:flex-end;position:relative;padding-bottom:4px}.sidebar-user-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;border:2px solid var(--gray-200, #e2e8f0);cursor:pointer;transition:border-color .15s,transform .15s}.sidebar-user-avatar:hover{border-color:var(--primary, #2563eb);transform:scale(1.06)}.sidebar{width:310px;flex-shrink:0;background:#fff;border-right:1px solid var(--gray-200, #e2e8f0);display:flex;flex-direction:column;overflow:hidden}.sidebar-header{padding:18px 16px 12px;display:flex;align-items:center;justify-content:space-between;font-size:1rem;font-weight:700;color:var(--gray-900, #0f172a);letter-spacing:-.01em;flex-shrink:0}.sidebar-icon-btn{background:none;border:none;color:var(--gray-400, #94a3b8);cursor:pointer;padding:6px;border-radius:var(--radius, 8px);display:flex;align-items:center;justify-content:center;transition:color .15s,background .15s}.sidebar-icon-btn:hover{color:var(--primary, #2563eb);background:var(--primary-light, #eff6ff)}.sidebar-search{padding:0 12px 10px;flex-shrink:0}.sidebar-search-wrap{position:relative;width:100%}.sidebar-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--gray-400, #94a3b8);pointer-events:none}.sidebar-search-wrap input{width:100%;padding:8px 14px 8px 34px;border-radius:var(--radius-full, 9999px);border:1.5px solid var(--gray-200, #e2e8f0);background:var(--gray-50, #f8fafc);font-size:.85rem;color:var(--gray-900, #0f172a);transition:border-color .15s,box-shadow .15s}.sidebar-search-wrap input:focus{border-color:var(--primary, #2563eb);box-shadow:0 0 0 3px #2563eb1a;outline:none}.sidebar-search-wrap input::placeholder{color:var(--gray-400, #94a3b8)}.sidebar-loading{padding:24px 16px;text-align:center;color:var(--gray-400, #94a3b8);font-size:.85rem}.sidebar-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:36px 20px;text-align:center;color:var(--gray-400, #94a3b8)}.sidebar-empty strong{font-size:.875rem;font-weight:600;color:var(--gray-700, #334155)}.sidebar-empty span{font-size:.8rem;line-height:1.45;max-width:240px}.sidebar-list{flex:1;overflow-y:auto;padding:4px 6px 8px}.contact-item{display:flex;align-items:center;gap:11px;padding:10px 11px;border-radius:var(--radius-md, 12px);cursor:pointer;transition:background .12s;margin-bottom:1px;border:none;background:none;width:100%;text-align:left}.contact-item:hover{background:var(--gray-50, #f8fafc)}.contact-item.active{background:var(--primary-light, #eff6ff)}.contact-item.active .contact-name{color:var(--primary, #2563eb);font-weight:600}.contact-item.active .contact-last{color:var(--primary, #2563eb);opacity:.65}.contact-avatar-wrap{position:relative;flex-shrink:0}.contact-avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;display:block}.contact-group-badge{position:absolute;bottom:-2px;right:-2px;background:var(--primary, #2563eb);border-radius:50%;width:17px;height:17px;display:flex;align-items:center;justify-content:center;border:2px solid #fff}.contact-info{flex:1;min-width:0}.contact-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:3px}.contact-name{font-weight:500;font-size:.875rem;color:var(--gray-900, #0f172a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.contact-time{font-size:.7rem;color:var(--gray-400, #94a3b8);flex-shrink:0;margin-left:8px}.contact-footer-row{display:flex;align-items:center;justify-content:space-between;gap:6px;min-width:0}.contact-last{font-size:.78rem;color:var(--gray-400, #94a3b8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.contact-unread-badge{flex-shrink:0;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:#2563eb;color:#fff;font-size:.7rem;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}.main-chat{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--gray-50, #f8fafc);height:100vh;height:100dvh;overflow:hidden;position:relative}.chat-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#f0f2f5;border-left:1px solid #e9edef}.chat-empty-icon{width:148px;height:148px;border-radius:50%;background:#fff;box-shadow:0 2px 8px #0000000f;display:flex;align-items:center;justify-content:center;margin-bottom:16px}.chat-empty-logo{width:110px;height:110px;object-fit:cover;border-radius:50%}.chat-empty-title{font-size:1.5rem;font-weight:300;color:#41525d;margin:0;letter-spacing:.04em}.chat-empty-quote{font-size:.92rem;color:#41525d;font-style:italic;margin:8px 0 0;text-align:center;max-width:340px;line-height:1.6}.chat-empty-author{font-size:.78rem;color:#8696a0;margin:2px 0 14px}.chat-empty-sub{font-size:.82rem;color:#8696a0;margin:0;text-align:center;padding:8px 20px;border-top:1px solid #e9edef;width:100%;max-width:340px}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid var(--gray-200, #e2e8f0);background:#fff;flex-shrink:0;box-shadow:0 1px 0 var(--gray-100)}.chat-header-left{display:flex;align-items:center;gap:12px}.chat-header-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid var(--gray-100, #f1f5f9);flex-shrink:0}.chat-header-info{display:flex;flex-direction:column;gap:1px}.chat-title{font-size:.9rem;font-weight:600;color:var(--gray-900, #0f172a)}.chat-subtitle{font-size:.72rem;color:var(--gray-400, #94a3b8)}.chat-header-actions{display:flex;align-items:center;gap:4px}.chat-header-btn{background:none;border:none;color:var(--gray-500, #64748b);cursor:pointer;padding:8px;border-radius:var(--radius, 8px);display:flex;align-items:center;gap:7px;font-size:.825rem;font-weight:500;transition:color .15s,background .15s}.chat-header-btn:hover{background:var(--gray-100, #f1f5f9);color:var(--gray-700, #334155)}.chat-header-btn--video{background:var(--primary, #2563eb);color:#fff;padding:7px 14px;border-radius:var(--radius-full, 9999px);box-shadow:0 1px 4px #2563eb4d}.chat-header-btn--video:hover{background:var(--primary-dark, #1d4ed8);color:#fff}.chat-messages{flex:1;padding:16px 20px;display:flex;flex-direction:column;gap:6px;overflow-y:auto;min-height:0;background:#f0f2f5;background-image:radial-gradient(circle,rgba(37,99,235,.03) 1px,transparent 1px);background-size:20px 20px}.chat-messages-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--gray-400, #94a3b8);font-size:.85rem;margin:auto;padding:20px 28px;background:#ffffffb3;border-radius:var(--radius-md, 12px);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.chat-messages-spinner{width:28px;height:28px;border:3px solid var(--gray-200, #e2e8f0);border-top-color:var(--primary, #2563eb);border-radius:50%;animation:spin-msg .7s linear infinite}@keyframes spin-msg{to{transform:rotate(360deg)}}.message-row{display:flex;align-items:flex-end;gap:7px}.message-row--me{justify-content:flex-end}.message-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0;margin-bottom:2px}.message-bubble{background:#fff;border-radius:0 14px 14px;padding:8px 12px 6px;font-size:.875rem;color:var(--gray-800, #1e293b);box-shadow:0 1px 2px #00000014;max-width:62%;line-height:1.5;position:relative}.message-bubble.me{background:#2563eb;color:#fff;border-radius:14px 0 14px 14px;box-shadow:0 1px 4px #2563eb40}.bubble-text{display:block;word-break:break-word}.bubble-time{display:flex;align-items:center;justify-content:flex-end;gap:3px;font-size:.67rem;color:#0000004d;text-align:right;margin-top:4px;line-height:1}.message-bubble.me .bubble-time{color:#ffffff8c}.bubble-tick{font-size:.62rem;color:#ffffff80;flex-shrink:0;font-style:italic}.bubble-tick--read{color:#ffffffd9}.bubble-file{display:flex;flex-direction:column;gap:7px}.bubble-file a{display:flex;align-items:center;gap:6px;font-size:.83rem;color:inherit;text-decoration:none;font-weight:500;opacity:.9}.bubble-file a:hover{opacity:1;text-decoration:underline}.bubble-image{max-width:220px;max-height:160px;border-radius:8px;object-fit:cover}.bubble-video{width:100%;max-width:260px;border-radius:8px}.typing-indicator{display:flex;align-items:center;gap:8px;padding:4px 20px 2px;min-height:22px}.typing-text{font-size:.78rem;color:#6b7280;font-style:italic}.typing-dots{display:flex;align-items:center;gap:3px}.typing-dots span{display:inline-block;width:6px;height:6px;border-radius:50%;background:#9ca3af;animation:typing-bounce 1.2s infinite ease-in-out}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-5px);opacity:1}}.chat-input-area{display:flex;align-items:center;gap:8px;padding:10px 16px;border-top:1px solid var(--gray-200, #e2e8f0);background:#fff;flex-shrink:0}.chat-attach-btn{cursor:pointer;color:var(--gray-400, #94a3b8);display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;transition:color .15s,background .15s;flex-shrink:0}.chat-attach-btn:hover{color:var(--primary, #2563eb);background:var(--primary-light, #eff6ff)}.chat-input-box{flex:1;padding:10px 16px;border-radius:var(--radius-full, 9999px);border:1.5px solid var(--gray-200, #e2e8f0);font-size:.875rem;background:var(--gray-50, #f8fafc);color:var(--gray-900, #0f172a);transition:border-color .15s,box-shadow .15s}.chat-input-box:focus{border-color:var(--primary, #2563eb);box-shadow:0 0 0 3px #2563eb1a;outline:none}.chat-input-box::placeholder{color:var(--gray-400, #94a3b8)}.chat-send-btn{background:var(--gray-200, #e2e8f0);color:var(--gray-400, #94a3b8);border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,color .2s,transform .1s,box-shadow .2s;flex-shrink:0}.chat-send-btn.active{background:var(--primary, #2563eb);color:#fff;box-shadow:0 2px 8px #2563eb59}.chat-send-btn.active:hover{background:var(--primary-dark, #1d4ed8)}.chat-send-btn:active{transform:scale(.9)}.rail{width:76px;flex-shrink:0;background:var(--gray-900);display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px 0;position:relative;z-index:30}.rail-btn{position:relative;width:48px;height:48px;border:none;border-radius:12px;background:none;color:var(--gray-400);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,color .15s}.rail-btn:hover{background:#ffffff0f;color:var(--gray-300)}.rail-btn.active{background:#2563eb40;color:#93c5fd}.rail-btn:focus-visible,.rail-avatar:focus-visible{outline:2px solid #93c5fd;outline-offset:2px}.rail-badge{position:absolute;top:5px;right:5px;min-width:18px;height:18px;padding:0 4px;box-sizing:border-box;border-radius:9px;background:var(--error);color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.rail-label{display:none}.rail-spacer{flex:1}.rail-profile{position:relative}.rail-avatar{width:44px;height:44px;padding:0;border-radius:50%;border:2px solid var(--primary-dark);background:var(--primary-light);color:var(--primary-dark);font:inherit;font-weight:700;overflow:hidden;cursor:pointer;display:flex;align-items:center;justify-content:center}.rail-avatar img{width:100%;height:100%;object-fit:cover;display:block}.rail-menu{position:absolute;left:calc(100% + 12px);bottom:0;min-width:180px;padding:6px 0;border-radius:var(--radius-md);background:var(--gray-900);border:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow-lg);color:#fff;z-index:200}.rail-menu-head{display:flex;flex-direction:column;gap:2px;padding:8px 14px 10px;border-bottom:1px solid rgba(255,255,255,.08)}.rail-menu-head strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.rail-menu-head span{font-size:12px;color:var(--gray-400)}.rail-menu-logout{width:100%;padding:10px 14px;border:none;background:none;color:#f87171;font:inherit;font-size:13px;font-weight:600;text-align:left;cursor:pointer}.rail-menu-logout:hover{background:#ffffff0f}.sidebar{width:340px}.sidebar-header{padding:22px 20px 12px}.sidebar-header h1{margin:0;font-size:1.375rem;font-weight:800;letter-spacing:-.02em;color:var(--gray-900)}.sidebar-search{padding:0 20px 12px;display:flex;flex-direction:column;gap:12px}.sidebar-search-wrap input{height:40px;box-sizing:border-box}.sidebar-filters{display:flex;gap:6px}.sidebar-filter{height:32px;padding:0 14px;border-radius:var(--radius-full);border:1px solid var(--gray-200);background:#fff;color:var(--gray-600);font:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.sidebar-filter:hover{border-color:var(--gray-300)}.sidebar-filter.active{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}.sidebar-list{padding:4px 10px 12px}.sidebar-section-title{display:block;padding:12px 10px 6px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-400)}.contact-item{gap:12px;padding:12px 10px;font:inherit;color:inherit}.contact-item:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.contact-item.active .contact-name{color:var(--gray-900)}.contact-item.active .contact-last{color:var(--gray-600);opacity:1}.contact-avatar{width:44px;height:44px}.contact-avatar--group{border-radius:12px;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;flex-shrink:0}.contact-name{font-weight:600}.contact-last{color:var(--gray-500)}.chat-header{min-height:72px;box-sizing:border-box;padding:0 24px}.chat-header-avatar.contact-avatar--group{width:42px;height:42px;border-radius:12px}.chat-header-btn{height:40px;padding:0 14px;gap:8px;border-radius:10px;border:1px solid var(--gray-200);background:#fff;color:var(--gray-700);font:inherit;font-size:13.5px;font-weight:600;display:flex;align-items:center}.chat-header-btn--video{background:var(--primary);border-color:var(--primary);color:#fff}.chat-header-btn--video:hover{background:var(--primary-dark);border-color:var(--primary-dark);color:#fff}@media(max-width:768px){.chat-list-pane,.settings-page{flex-direction:column}.rail{order:2;width:100%;height:auto;flex-direction:row;justify-content:space-around;gap:0;padding:4px 8px calc(4px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--gray-200)}.rail-spacer{display:none}.rail-btn{flex:1;width:auto;height:56px;flex-direction:column;gap:3px;color:var(--gray-500)}.rail-btn:hover{background:none;color:var(--gray-700)}.rail-btn.active{background:none;color:var(--primary)}.rail-label{display:block;font-size:11.5px;font-weight:600}.rail-badge{top:4px;right:calc(50% - 22px)}.rail-profile{flex:1;display:flex;justify-content:center}.rail-avatar{width:40px;height:40px}.rail-menu{left:auto;right:0;bottom:calc(100% + 8px)}.sidebar-header{padding:18px 16px 10px}.sidebar-search{padding:0 16px 10px}.sidebar-search-wrap input{height:44px;font-size:16px}.chat-header{min-height:64px;padding:0 8px 0 4px}.chat-header-btn{width:44px;height:44px;padding:0;justify-content:center}}@media(max-width:768px){.chat-header-btn-label{display:none}}@media(max-width:768px){.settings-page .main-chat{height:auto;flex:1;min-height:0}.chat-list-pane .sidebar,.settings-page .sidebar{min-height:0}}.settings-page .sidebar{width:260px}.settings-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 40px 20px;border-bottom:none;background:transparent;flex-shrink:0}.settings-title{margin:0;font-size:1.625rem;font-weight:800;letter-spacing:-.02em;color:var(--gray-900)}.settings-sub{margin:4px 0 0;font-size:.875rem;color:var(--gray-500)}.settings-page .settings-content{padding:0 40px 32px}@media(max-width:768px){.settings-page .sidebar{width:100%}.settings-header{padding:14px 12px 12px 4px}.settings-title{font-size:1.25rem}.settings-page .settings-content{padding:0 16px 24px}}.settings-sidebar-title{font-weight:700;font-size:1rem;color:#1e293b;padding:20px 16px 12px;letter-spacing:-.01em}.settings-tab-list{padding:0 8px}.settings-tab{width:100%;margin-bottom:4px;border:none;border-radius:8px;display:flex;align-items:center;gap:8px;padding:10px 12px;background:transparent;color:#475569;font:inherit;font-size:.9rem;font-weight:500;text-align:left;cursor:pointer;transition:background .15s,color .15s}.settings-tab:hover{background:#f8fafc}.settings-tab.is-active{background:#f1f5f9;color:#0f172a;font-weight:600}.settings-tab-icon{display:flex;flex-shrink:0}.settings-tab-text strong{font-weight:inherit}.settings-tab-text small,.settings-tab-chevron,.settings-profile-card{display:none}@media(max-width:768px){.settings-page .settings-sidebar{background:var(--gray-50, #f8fafc);overflow-y:auto;padding-bottom:16px}.settings-sidebar-title{font-size:1.75rem;font-weight:800;letter-spacing:-.02em;padding:20px 16px 14px}.settings-profile-card{display:flex;align-items:center;gap:14px;width:calc(100% - 24px);margin:0 12px 16px;padding:14px;border:1px solid var(--gray-200, #e2e8f0);border-radius:16px;background:#fff;font:inherit;text-align:left;cursor:pointer}.settings-profile-card img{width:54px;height:54px;border-radius:50%;object-fit:cover;flex-shrink:0}.settings-profile-card strong{font-size:1.05rem;color:var(--gray-900, #0f172a)}.settings-tab--profile{display:none}.settings-tab-list{margin:0 12px;padding:0;border:1px solid var(--gray-200, #e2e8f0);border-radius:16px;background:#fff;overflow:hidden}.settings-tab{margin:0;border-radius:0;gap:14px;padding:12px 14px;min-height:60px;color:var(--gray-900, #0f172a);font-size:1rem;font-weight:600}.settings-tab+.settings-tab{border-top:1px solid var(--gray-100, #f1f5f9)}.settings-tab.is-active,.settings-tab:hover{background:transparent}.settings-tab:active,.settings-profile-card:active{background:var(--gray-50, #f8fafc)}.settings-tab-icon{width:34px;height:34px;border-radius:10px;align-items:center;justify-content:center;color:#fff;background:var(--primary, #2563eb)}.settings-tab--reunioes .settings-tab-icon{background:#059669}.settings-tab--historico .settings-tab-icon{background:#7c3aed}.settings-tab--perfil .settings-tab-icon{background:#f59e0b}.settings-tab-icon svg{width:18px;height:18px}.settings-tab-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.settings-tab-text small{display:block;font-size:.8rem;font-weight:400;color:var(--gray-500, #64748b);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-tab-chevron{display:block;flex-shrink:0;color:var(--gray-400, #94a3b8)}.settings-page .settings-sub{display:none}}.pw-field{position:relative}.pw-field input{width:100%;box-sizing:border-box}.pw-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:6px;cursor:pointer;color:var(--gray-400);padding:0}.pw-toggle:hover{color:var(--gray-600)}.pw-toggle:focus-visible{outline:2px solid var(--primary);outline-offset:1px}input.is-invalid,select.is-invalid,textarea.is-invalid{border-color:var(--error)!important;box-shadow:0 0 0 1px var(--error)!important}.field-error{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:.78rem;line-height:1.35;color:#dc2626}.field-error svg{flex-shrink:0}.pw-checklist{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:.76rem;color:var(--gray-400)}.pw-checklist li{display:flex;align-items:center;gap:5px;transition:color .15s}.pw-checklist li.ok{color:var(--success)}.auth-page{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));background:#1a1a2e;font-family:Inter,system-ui,sans-serif}.auth-hero{display:flex;flex-direction:column;justify-content:space-between;gap:40px;padding:64px 72px;color:#fff}.auth-brand{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:700;letter-spacing:-.01em}.auth-brand-logo{width:44px;height:44px;border-radius:10px;object-fit:cover;background:#fff;display:block}.auth-hero-body{display:flex;flex-direction:column;gap:20px;max-width:460px;margin-block:auto}.auth-hero-body h1{color:#fff;margin:0;font-size:clamp(2rem,3.2vw,2.75rem);line-height:1.1;font-weight:800;letter-spacing:-.03em}.auth-hero-body p{margin:0;font-size:1.05rem;line-height:1.6;color:var(--gray-300)}.auth-features{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:12px}.auth-features li{display:flex;align-items:center;gap:12px;font-size:15px;color:var(--gray-200)}.auth-main{display:flex;align-items:center;justify-content:center;padding:48px 24px}.auth-card{width:100%;max-width:420px;box-sizing:border-box;background:#fff;border-radius:16px;padding:40px;box-shadow:0 20px 25px #00000040;color:var(--gray-900)}.auth-card h2{margin:0;font-size:1.6rem;font-weight:700;letter-spacing:-.02em;line-height:1.25}.login-form-subtitle{margin:6px 0 20px;font-size:.875rem;line-height:1.5;color:var(--gray-500)}.auth-step{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0 0 12px;padding:0;list-style:none}.auth-step li{height:4px;border-radius:2px;background:var(--gray-200)}.auth-step li.done{background:var(--primary)}.auth-step-label{display:block;font-size:12px;font-weight:600;color:var(--gray-500);margin-bottom:4px}.auth-card form{display:flex;flex-direction:column}.auth-card label{display:block;margin:14px 0 6px;font-size:.82rem;font-weight:600;color:var(--gray-700)}.auth-card input,.auth-card select{width:100%;height:44px;box-sizing:border-box;padding:0 14px;border:1.5px solid var(--gray-200);border-radius:9px;font:inherit;font-size:.95rem;color:var(--gray-900);background:#fff;outline:none;transition:border-color .15s,box-shadow .15s}.auth-card input:focus,.auth-card select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.auth-card input::placeholder{color:var(--gray-400)}.auth-card input:disabled{background:var(--gray-50);cursor:not-allowed}.auth-card input.code-input{font-size:1.25rem;font-weight:600;letter-spacing:.4em}.login-btn{height:46px;margin-top:20px;border:none;border-radius:9px;background:var(--primary);color:#fff;font:inherit;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .15s}.login-btn:hover:not(:disabled){background:var(--primary-dark)}.login-btn:disabled{opacity:.6;cursor:not-allowed}.login-links{display:flex;justify-content:flex-end;margin-top:10px}.login-links--center{justify-content:center}.forgot{background:none;border:none;padding:4px 0;font:inherit;font-size:.85rem;font-weight:600;color:var(--primary);cursor:pointer}.forgot:hover{color:var(--primary-dark);text-decoration:underline}.login-bottom{margin-top:18px;font-size:.85rem;color:var(--gray-500);text-align:center}.signup{margin-left:4px;font-weight:600;color:var(--primary);text-decoration:none}.signup:hover{color:var(--primary-dark);text-decoration:underline}.login-error{padding:10px 14px;margin-bottom:4px;border-radius:9px;background:var(--error-bg);border:1px solid var(--error-border);color:#dc2626;font-size:.85rem}.login-success{padding:10px 14px;margin-bottom:4px;border-radius:9px;background:var(--gray-50);border:1px solid var(--gray-200);color:var(--gray-700);font-size:.85rem}.auth-card-brand{display:none}@media(max-width:900px){.auth-page{grid-template-columns:minmax(0,1fr)}.auth-hero{display:none}.auth-card-brand{display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:24px;font-size:18px;font-weight:700;letter-spacing:-.01em;color:var(--gray-900)}.auth-card-brand .auth-brand-logo{width:64px;height:64px;border-radius:14px;box-shadow:0 2px 8px #0f172a1f}.auth-main{padding:24px 16px}}@media(max-width:480px){.auth-main{align-items:stretch;padding:0;background:#fff}.auth-card{max-width:none;border-radius:0;box-shadow:none;padding:32px 20px}.auth-card input{font-size:16px;height:48px}}.meeting-container{display:flex;min-height:100vh;min-height:100dvh;width:100vw;background:#0d1117;font-family:Inter,system-ui,sans-serif;overflow:hidden}.meeting-main{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;position:relative}.meeting-video-area{width:calc(100% - 24px);height:calc(100vh - 100px);height:calc(100dvh - 100px);background:#161b22;border-radius:16px;display:flex;align-items:center;justify-content:center;position:relative;margin:12px;box-shadow:0 8px 32px #0006;border:1px solid rgba(255,255,255,.05)}.meeting-video-area .camera-main-video{width:100%;height:100%;border-radius:16px;object-fit:cover;background:#161b22}.meeting-video-area .screen-share-video{width:100%;height:100%;border-radius:16px;object-fit:contain;background:#161b22;z-index:1}.meeting-video-area .camera-mini-video{position:absolute;bottom:80px;right:20px;width:200px;height:130px;border-radius:12px;object-fit:cover;background:#1c2431;box-shadow:0 4px 16px #00000080;z-index:2}.meeting-presenting-layout{display:flex;width:100%;height:100%;align-items:center;justify-content:center;gap:16px;padding:16px}.screen-share-side{flex:2;height:90%;border-radius:14px;object-fit:contain;background:#161b22;box-shadow:0 4px 20px #0000004d}.camera-side-box{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:90%;min-width:200px;max-width:240px;gap:8px}.camera-side-video{width:100%;height:200px;border-radius:12px;object-fit:cover;background:#1c2431;box-shadow:0 4px 14px #0006}.camera-side-label{color:#fffc;background:#161b22cc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:8px;padding:4px 14px;font-size:.85rem;font-weight:500}.meeting-footer{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:center;align-items:flex-end;gap:10px;padding:20px 0 26px;background:linear-gradient(to top,rgba(13,17,23,.92) 0%,transparent 100%);border-radius:0 0 16px 16px}.meeting-footer-btn{display:flex;flex-direction:column;align-items:center;gap:6px;background:#ffffff14;color:#ffffffd9;border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:12px 20px;min-width:76px;cursor:pointer;font-size:.72rem;font-weight:500;letter-spacing:.01em;transition:background .15s,border-color .15s,color .15s,transform .12s;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.meeting-footer-btn:hover{background:#ffffff26;color:#fff}.meeting-footer-btn--active{background:#22c55e26!important;border-color:#22c55e66!important;color:#22c55e!important}.meeting-footer-btn:hover{transform:translateY(-2px)}.meeting-footer-btn:active{transform:translateY(0)}.meeting-footer-btn--off{background:#ef44441f;border-color:#ef44444d;color:#f87171}.meeting-footer-btn--off:hover{background:#ef444433;color:#fca5a5;transform:translateY(-2px)}.meeting-footer-btn--end{background:#dc2626;border-color:transparent;color:#fff;min-width:90px;box-shadow:0 2px 12px #dc262659}.meeting-footer-btn--end:hover{background:#b91c1c;color:#fff;box-shadow:0 4px 20px #dc262680;transform:translateY(-2px)}.meeting-footer-btn--leave{background:#374151;border-color:transparent;color:#fff;min-width:80px;box-shadow:0 2px 8px #00000040}.meeting-footer-btn--leave:hover{background:#1f2937;color:#fff;transform:translateY(-2px)}@keyframes pulse-red{0%{box-shadow:0 0 #dc2626b3}70%{box-shadow:0 0 0 10px #dc262600}to{box-shadow:0 0 #dc262600}}.meeting-info-box{position:fixed;left:20px;bottom:24px;background:#161b22;color:#fff;border-radius:14px;padding:18px 16px;box-shadow:0 8px 32px #00000080;min-width:210px;max-width:250px;z-index:20;border:1px solid rgba(255,255,255,.06)}.meeting-info-title{font-size:.9rem;font-weight:600;margin-bottom:12px;color:#ffffffe6}.meeting-info-link{display:flex;align-items:center;gap:8px;margin-top:10px;position:relative}.meeting-link-input{flex:1;padding:8px 36px 8px 10px;border-radius:var(--radius, 8px);border:1px solid rgba(255,255,255,.1);background:#ffffff0f;color:#ffffffd9;font-size:.8rem;outline:none}.meeting-copy-icon{position:absolute;right:10px;top:50%;transform:translateY(-50%);cursor:pointer;font-size:17px;color:#fff9;transition:color .15s;z-index:2}.meeting-copy-icon.copied{color:#34d399}.meeting-copy-btn{background:var(--primary, #2563eb);color:#fff;border:none;border-radius:var(--radius-sm, 6px);padding:7px 13px;font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s}.meeting-copy-btn:hover{background:var(--primary-dark, #1d4ed8)}.meeting-sidebar{width:300px;flex-shrink:0;background:#13191f;color:#fff;display:flex;flex-direction:column;border-left:1px solid rgba(255,255,255,.05);overflow:hidden;transition:width .22s ease}.meeting-sidebar--collapsed{width:52px;display:flex;flex-direction:column;align-items:center;padding-top:18px;background:#13191f;border-left:1px solid rgba(255,255,255,.05);flex-shrink:0}.meeting-sidebar-toggle-btn{position:relative;background:#ffffff12;border:1px solid rgba(255,255,255,.1);border-radius:10px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;color:#ffffffb3;cursor:pointer;transition:background .15s,color .15s;flex-shrink:0}.meeting-sidebar-toggle-btn:hover{background:#ffffff24;color:#fff}.meeting-sidebar-toggle-btn--inline{width:28px;height:28px;border-radius:7px}.meeting-sidebar-badge{position:absolute;top:-5px;right:-5px;background:#2563eb;color:#fff;border-radius:99px;font-size:.6rem;font-weight:700;padding:1px 5px;line-height:1.4;border:1.5px solid #13191f}.meeting-sidebar-header{display:flex;align-items:center;gap:9px;padding:18px 18px 14px;border-bottom:1px solid rgba(255,255,255,.06);color:#ffffffe6;font-size:.9rem;font-weight:600;letter-spacing:-.01em;flex-shrink:0}.meeting-sidebar-chat-box{flex:1;padding:12px 14px;display:flex;flex-direction:column;overflow-y:auto;gap:6px;min-height:0}.meeting-sidebar-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#ffffff40;font-size:.82rem;margin:auto;padding:24px;text-align:center}.meeting-msg-row{display:flex;justify-content:flex-start}.meeting-msg-row--me{justify-content:flex-end}.meeting-msg-bubble{background:#ffffff12;border:1px solid rgba(255,255,255,.06);border-radius:0 12px 12px;padding:8px 11px 5px;max-width:82%;line-height:1.45}.meeting-msg-bubble--me{background:#2563eb38;border-color:#2563eb4d;border-radius:12px 0 12px 12px}.meeting-msg-text{display:block;font-size:.845rem;color:#ffffffe0;word-break:break-word}.meeting-msg-time{display:block;font-size:.62rem;color:#ffffff47;text-align:right;margin-top:3px}.meeting-msg-video{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:8px}.meeting-msg-video-label{display:flex;align-items:center;gap:6px;font-size:.76rem;color:#ffffff73;font-weight:500}.meeting-msg-video-player{width:100%;border-radius:8px}.meeting-typing{display:flex;align-items:center;gap:8px;padding:6px 16px 0;font-size:.75rem;color:#fff9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meeting-typing-dots{display:inline-flex;gap:3px;flex-shrink:0}.meeting-typing-dots span{width:5px;height:5px;border-radius:50%;background:#60a5fa;animation:meetingTyping 1.2s ease-in-out infinite}.meeting-typing-dots span:nth-child(2){animation-delay:.15s}.meeting-typing-dots span:nth-child(3){animation-delay:.3s}@keyframes meetingTyping{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}@media(prefers-reduced-motion:reduce){.meeting-typing-dots span{animation:none;opacity:.8}}.meeting-sidebar-input-area{display:flex;align-items:center;gap:8px;padding:12px 14px;border-top:1px solid rgba(255,255,255,.06);flex-shrink:0}.meeting-sidebar-input{flex:1;padding:9px 14px;border-radius:var(--radius-full, 9999px);border:1px solid rgba(255,255,255,.1);font-size:.875rem;background:#ffffff0f;color:#fff;transition:border-color .15s,box-shadow .15s}.meeting-sidebar-input:focus{border-color:#2563eb80;box-shadow:0 0 0 2px #2563eb26;outline:none}.meeting-sidebar-input::placeholder{color:#fff3}.meeting-sidebar-send-btn{background:#ffffff0f;color:#ffffff59;border:1px solid rgba(255,255,255,.08);border-radius:50%;width:38px;height:38px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,color .2s,box-shadow .2s,transform .1s;flex-shrink:0}.meeting-sidebar-send-btn.active{background:var(--primary, #2563eb);color:#fff;border-color:transparent;box-shadow:0 2px 8px #2563eb59}.meeting-sidebar-send-btn.active:hover{background:var(--primary-dark, #1d4ed8)}.meeting-sidebar-send-btn:active{transform:scale(.9)}.meeting-main{flex-direction:column;align-items:stretch;justify-content:flex-start;height:100vh;height:100dvh}.meeting-topbar{height:64px;flex-shrink:0;box-sizing:border-box;padding:0 24px;display:flex;align-items:center;gap:14px;border-bottom:1px solid rgba(255,255,255,.08);color:#f8fafc}.meeting-topbar-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.meeting-topbar-title{font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meeting-topbar-sub{font-size:12.5px;color:var(--gray-400)}.meeting-rec{display:flex;align-items:center;gap:10px;height:36px;padding:0 14px 0 12px;border-radius:var(--radius-full);background:#0000008c;border:1px solid rgba(255,255,255,.1);flex-shrink:0}.meeting-rec-dot{width:10px;height:10px;border-radius:50%;background:var(--error);box-shadow:0 0 6px var(--error);animation:recPulse 1.2s ease-in-out infinite}.meeting-rec-label{font-size:13px;font-weight:700;letter-spacing:.04em}.meeting-rec-time{font-size:13px;font-family:ui-monospace,monospace;color:var(--gray-200)}@keyframes recPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.3;transform:scale(.75)}}@media(prefers-reduced-motion:reduce){.meeting-rec-dot{animation:none}}.meeting-topbar-btn{height:36px;padding:0 14px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#ffffff0f;color:var(--gray-200);font:inherit;font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px;cursor:pointer;flex-shrink:0}.meeting-topbar-btn:hover{background:#ffffff1a;color:#fff}.meeting-topbar-btn:focus-visible{outline:2px solid #93c5fd;outline-offset:2px}.meeting-main .meeting-video-area{flex:1;min-height:0;height:auto;width:auto;margin:12px}@media(max-width:768px){.meeting-topbar{height:56px;padding:0 12px;gap:8px}.meeting-topbar-btn span{display:none}.meeting-topbar-btn{width:40px;height:40px;padding:0;justify-content:center}.meeting-main .meeting-video-area{margin:8px}}.meeting-main .meeting-footer{position:static;flex-shrink:0;flex-wrap:wrap;align-items:center;background:none;border-radius:0;padding:4px 12px calc(14px + env(safe-area-inset-bottom))}.meeting-main .meeting-video-area{margin-bottom:6px}.meeting-thumbs{display:flex;gap:10px;justify-content:center;justify-content:safe center;flex-shrink:0;max-width:100%;overflow-x:auto}.meeting-mobile-grid{display:grid;gap:6px;width:100%;height:100%}.meeting-mobile-grid--two{grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(2,minmax(0,1fr))}.meeting-mobile-grid--three,.meeting-mobile-grid--four{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.meeting-mobile-grid--three>:nth-child(3){grid-column:1 / -1}.meeting-more-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:0;border-radius:12px;background:#1c2431;border:2px solid rgba(255,255,255,.08);color:#fff}.meeting-more-tile strong{font-size:2rem;font-weight:700;line-height:1}.meeting-more-tile span{font-size:.75rem;color:#fff9}@media(max-width:900px){.meeting-main .meeting-video-area--mobile{margin:0 6px 4px;background:transparent;border:none;box-shadow:none}.meeting-main .meeting-footer{gap:6px;flex-wrap:nowrap;padding:4px 8px calc(10px + env(safe-area-inset-bottom))}.meeting-footer-btn,.meeting-footer-btn--end,.meeting-footer-btn--leave{flex:1 1 0;min-width:0;max-width:84px;padding:9px 4px;border-radius:12px;font-size:.62rem}.meeting-footer-btn span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meeting-main .meeting-footer .mp-bg-wrap{flex:1 1 0!important;min-width:0;max-width:84px!important;display:flex}.meeting-main .meeting-footer .mp-bg-wrap>.meeting-footer-btn{max-width:none;width:100%}.meeting-main .meeting-footer .mp-bg-panel{position:fixed;left:12px;right:12px;width:auto;bottom:calc(80px + env(safe-area-inset-bottom))}.meeting-sidebar:not(.meeting-sidebar--collapsed){position:fixed;inset:0;width:100%;z-index:60;border-left:none}.meeting-sidebar--collapsed{position:fixed;top:64px;right:14px;width:auto;padding:0;background:none;border:none;z-index:40}}.mp-overlay{position:fixed;inset:0;background:radial-gradient(ellipse at 20% 50%,rgba(37,99,235,.18) 0%,transparent 60%),radial-gradient(ellipse at 80% 20%,rgba(99,102,241,.14) 0%,transparent 55%),radial-gradient(ellipse at 60% 80%,rgba(16,185,129,.08) 0%,transparent 50%),linear-gradient(135deg,#06090f,#0d1117 40%,#090d16);z-index:9999;display:flex;align-items:center;justify-content:center;padding:16px;animation:mpOverlayIn .25s ease}@keyframes mpOverlayIn{0%{opacity:0}to{opacity:1}}.mp-modal{background:linear-gradient(160deg,#161c26,#111720);border-radius:20px;padding:28px 28px 24px;width:100%;max-width:500px;box-shadow:0 32px 64px #000000b3,0 0 0 1px #ffffff12,inset 0 1px #ffffff0d;display:flex;flex-direction:column;gap:20px;animation:mpModalIn .28s cubic-bezier(.34,1.56,.64,1)}@keyframes mpModalIn{0%{opacity:0;transform:scale(.95) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.mp-header{display:flex;align-items:flex-start;gap:14px}.mp-header-icon{width:40px;height:40px;background:#2563eb26;border:1px solid rgba(37,99,235,.3);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#60a5fa;flex-shrink:0}.mp-title{font-size:1.05rem;font-weight:700;color:#f1f5f9;margin:0 0 4px;letter-spacing:-.01em}.mp-subtitle{font-size:.8rem;color:#fff6;margin:0}.mp-video-box{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:14px;overflow:hidden;background:#0d1117;border:1px solid rgba(255,255,255,.06)}.mp-video{width:100%;height:100%;object-fit:cover;display:block;border-radius:14px}.mp-video--off{opacity:0}.mp-canvas{position:absolute;inset:0;width:100%;height:100%;border-radius:14px}.mp-cam-off{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#ffffff4d;font-size:.85rem}.mp-video-label{position:absolute;bottom:12px;left:50%;transform:translate(-50%);background:#00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#ffffffd9;border-radius:100px;padding:4px 14px;font-size:.78rem;font-weight:500;white-space:nowrap;display:flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.1)}.mp-status-dot{width:7px;height:7px;border-radius:50%;background:#ffffff4d;flex-shrink:0}.mp-status-dot.on{background:#22c55e;box-shadow:0 0 6px #22c55e}.mp-controls{display:flex;justify-content:center;gap:10px}.mp-ctrl-btn{display:flex;flex-direction:column;align-items:center;gap:6px;background:#ffffff0f;border:1px solid rgba(255,255,255,.08);color:#ffffffbf;border-radius:14px;padding:12px 18px;cursor:pointer;font-size:.72rem;font-weight:500;transition:background .15s,border-color .15s,color .15s,transform .1s;flex:1;max-width:120px}.mp-ctrl-btn:hover{background:#ffffff1a;color:#fff;transform:translateY(-1px)}.mp-ctrl-btn:active{transform:translateY(0)}.mp-ctrl-btn--off{background:#ef44441f;border-color:#ef444440;color:#f87171}.mp-ctrl-btn--off:hover{background:#ef444433;color:#fca5a5}.mp-ctrl-btn--active{background:#2563eb26;border-color:#2563eb59;color:#60a5fa}.mp-ctrl-btn--active:hover{background:#2563eb38;color:#93c5fd}.mp-bg-wrap{position:relative;flex:1;max-width:120px;display:flex;flex-direction:column;align-items:stretch}.mp-bg-wrap .mp-ctrl-btn{max-width:none;width:100%}.mp-bg-panel{position:absolute;bottom:calc(100% + 10px);right:0;width:280px;background:#1a2235;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:14px;box-shadow:0 16px 48px #0009;z-index:100;animation:mpPanelIn .18s ease}@keyframes mpPanelIn{0%{opacity:0;transform:translateY(6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.mp-bg-panel-title{font-size:.72rem;font-weight:600;color:#fff6;text-transform:uppercase;letter-spacing:.08em;margin:0 0 10px}.mp-bg-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.mp-bg-opt{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;background:transparent;border:2px solid rgba(255,255,255,.08);border-radius:10px;padding:6px 4px;cursor:pointer;transition:border-color .15s,background .15s,transform .1s;color:#ffffff8c}.mp-bg-opt:hover{border-color:#ffffff40;background:#ffffff0d;transform:translateY(-1px)}.mp-bg-opt--active{border-color:#2563eb;background:#2563eb1f;color:#93c5fd}.mp-bg-thumb-wrap{width:100%;aspect-ratio:16 / 9;border-radius:6px;overflow:hidden;display:flex;align-items:center;justify-content:center}.mp-bg-thumb{width:100%;height:100%;border-radius:6px;display:flex;align-items:center;justify-content:center}.mp-bg-thumb--none{background:#ffffff0f;color:#ffffff59}.mp-bg-thumb--blur{background:linear-gradient(135deg,#1e293b,#334155);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mp-bg-thumb--img{object-fit:cover}.mp-bg-thumb--logo{background:#fff;padding:8px}.mp-bg-thumb--logo img{width:100%;height:100%;object-fit:contain}.mp-bg-opt-label{font-size:.65rem;font-weight:500;text-align:center;line-height:1.2}.mp-bg-opt-check{position:absolute;top:4px;right:4px;width:16px;height:16px;background:#2563eb;border-radius:50%;display:flex;align-items:center;justify-content:center}.mp-actions{display:flex;gap:10px;padding-top:4px}.mp-btn-cancel{background:#ffffff0f;color:#ffffff8c;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius, 8px);padding:11px 20px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s,color .15s;flex:1}.mp-btn-cancel:hover{background:#ffffff1a;color:#fffc}.mp-btn-enter{background:#2563eb;color:#fff;border:none;border-radius:var(--radius, 8px);padding:11px 24px;font-size:.875rem;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:8px;justify-content:center;transition:background .15s,box-shadow .15s,transform .1s;box-shadow:0 1px 6px #2563eb40;flex:2;letter-spacing:.01em}.mp-btn-enter:hover{background:#1d4ed8;box-shadow:0 2px 10px #2563eb59;transform:translateY(-1px)}.mp-btn-enter:active{transform:translateY(0)}.mp-overlay{background:#0d1117;overflow-y:auto;align-items:center}.mp-modal{max-width:900px;display:grid;grid-template-columns:minmax(0,540px) minmax(0,1fr);gap:28px;padding:28px;background:#161c26;border:1px solid rgba(255,255,255,.08);box-shadow:0 24px 60px #00000080;margin:auto}.mp-col{display:flex;flex-direction:column;gap:14px;min-width:0}.mp-col--info{gap:18px}.mp-video-box--error{border:1px solid rgba(255,255,255,.08)}.mp-cam-off--error{gap:10px;padding:24px;text-align:center}.mp-cam-off--error strong{font-size:1rem;color:#f1f5f9}.mp-cam-off--error span{max-width:380px;font-size:.85rem;line-height:1.55;color:var(--gray-300)}.mp-video-tag{position:absolute;left:12px;top:12px;padding:5px 10px;border-radius:var(--radius-full);background:#0000008c;color:#fff;font-size:12px;font-weight:600}.mp-modal .mp-controls{justify-content:stretch}.mp-modal .mp-ctrl-btn{max-width:none;min-height:62px;justify-content:center;border-radius:12px;border-color:#ffffff1f;background:#ffffff14;color:var(--gray-200);font-size:12px;font-weight:600}.mp-modal .mp-ctrl-btn:hover:not(:disabled){background:#ffffff1f;color:#fff;transform:none}.mp-modal .mp-ctrl-btn--active{background:#ffffff1f;border-color:#fff3;color:#fff}.mp-modal .mp-ctrl-btn--off{background:#ffffff0a;border-color:#ffffff14;color:var(--gray-500)}.mp-modal .mp-ctrl-btn:disabled{cursor:not-allowed;opacity:.6}.mp-modal .mp-ctrl-btn:focus-visible,.mp-modal .mp-bg-opt:focus-visible,.mp-btn-enter:focus-visible,.mp-btn-cancel:focus-visible{outline:2px solid #93c5fd;outline-offset:2px}.mp-bg-inline{border-radius:14px;background:#0d1117;border:1px solid rgba(255,255,255,.08);padding:14px;display:flex;flex-direction:column;gap:10px}.mp-bg-inline .mp-bg-panel-title{margin:0;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--gray-400)}.mp-bg-inline .mp-bg-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.mp-bg-inline .mp-bg-opt--active{border-color:var(--primary)}.mp-bg-inline .mp-bg-thumb--blur{background:var(--gray-600);filter:blur(.5px)}.mp-help{display:flex;flex-direction:column;gap:6px;padding:14px;border-radius:14px;background:#0d1117;border:1px solid rgba(255,255,255,.08);font-size:13px;color:var(--gray-300)}.mp-help-title{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--gray-400)}.mp-heading{display:flex;flex-direction:column;gap:6px}.mp-eyebrow{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gray-400)}.mp-room{margin:0;font-size:1.5rem;line-height:1.25;font-weight:800;letter-spacing:-.02em;color:#f8fafc}.mp-modal .mp-subtitle{font-size:.875rem;line-height:1.5;color:var(--gray-400)}.mp-status{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.mp-status li{display:flex;align-items:center;gap:10px;font-size:.85rem;color:var(--gray-200)}.mp-status-icon{width:28px;height:28px;border-radius:8px;background:#ffffff0f;color:var(--gray-300);display:flex;align-items:center;justify-content:center;flex-shrink:0}.mp-status li.off .mp-status-icon{color:var(--gray-400)}.mp-notice{display:flex;gap:10px;padding:12px 14px;border-radius:12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);font-size:13px;line-height:1.5;color:var(--gray-300)}.mp-notice-dot{width:10px;height:10px;margin-top:4px;border-radius:50%;background:var(--gray-500);flex-shrink:0}.mp-hint{margin:0;font-size:13px;line-height:1.5;color:var(--gray-400)}.mp-modal .mp-actions{margin-top:auto;display:flex;gap:10px}.mp-modal .mp-btn-cancel{flex:1;height:48px;border-radius:10px}.mp-modal .mp-btn-enter{flex:2;height:48px;border-radius:10px;justify-content:center;box-shadow:none}@media(max-width:860px){.mp-overlay{align-items:flex-start;padding:0}.mp-modal{grid-template-columns:minmax(0,1fr);max-width:none;min-height:100%;border-radius:0;border:none;gap:20px;padding:20px 16px calc(20px + env(safe-area-inset-bottom))}.mp-modal{display:flex;flex-direction:column}.mp-col{display:contents}.mp-heading{order:1}.mp-col--media>*{order:2}.mp-status{order:3}.mp-notice{order:4}.mp-hint{order:5}.mp-modal .mp-actions{order:6;margin-top:4px}.mp-bg-inline .mp-bg-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mp-modal{gap:14px}.mp-controls{gap:8px}.mp-ctrl-btn{padding:10px 6px;font-size:.68rem}.mp-room{font-size:1.35rem}.mp-status,.mp-subtitle,.mp-eyebrow{display:none}.mp-modal{gap:12px;padding-bottom:0}.mp-notice{padding:8px 10px;font-size:12px;line-height:1.4}.mp-hint{font-size:12px;line-height:1.4}.mp-modal .mp-actions{position:sticky;bottom:0;z-index:5;margin:auto -16px 0;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#0d1117;border-top:1px solid rgba(255,255,255,.08)}}.cd-overlay{position:fixed;inset:0;z-index:300;background:#0f172a73;display:flex;align-items:center;justify-content:center;padding:16px}.cd-dialog{width:100%;max-width:420px;box-sizing:border-box;background:#fff;border-radius:16px;padding:24px;box-shadow:var(--shadow-lg)}.cd-dialog h2{margin:0;font-size:18px;font-weight:700;color:var(--gray-900);overflow-wrap:anywhere}.cd-dialog p{margin:10px 0 0;font-size:14px;line-height:1.55;color:var(--gray-600)}.cd-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.cd-btn{height:40px;padding:0 16px;border-radius:10px;border:1px solid var(--gray-200);background:#fff;color:var(--gray-700);font:inherit;font-size:14px;font-weight:600;cursor:pointer}.cd-btn:hover{background:var(--gray-50)}.cd-btn--primary{border-color:var(--primary);background:var(--primary);color:#fff}.cd-btn--primary:hover{background:var(--primary-dark)}.cd-btn--danger{border-color:#dc2626;background:#dc2626;color:#fff}.cd-btn--danger:hover{background:#b91c1c}.cd-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.ml{display:flex;flex-direction:column;gap:18px}.ml-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ml-search{position:relative;flex:0 1 360px;min-width:220px}.ml-search svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--gray-400);pointer-events:none}.ml-search input{width:100%;height:40px;box-sizing:border-box;padding:0 14px 0 36px;border-radius:10px;border:1.5px solid var(--gray-200);background:#fff;font:inherit;font-size:14px;outline:none}.ml-search input:focus,.ml-filter select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.ml-filter{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--gray-500)}.ml-filter select{height:40px;padding:0 12px;border-radius:10px;border:1.5px solid var(--gray-200);background:#fff;font:inherit;font-size:14px;color:var(--gray-900);outline:none}.ml-count{margin-left:auto;font-size:13px;color:var(--gray-500)}.ml-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,380px),1fr));gap:14px}.ml-card{background:#fff;border:1px solid var(--gray-200);border-radius:14px;padding:18px 20px;display:flex;flex-direction:column;gap:14px}.ml-card-head{display:flex;gap:12px;align-items:flex-start}.ml-card-icon{width:44px;height:44px;border-radius:12px;background:var(--primary);color:var(--gray-700);font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ml-card-info{min-width:0;display:flex;flex-direction:column;gap:3px}.ml-card-info strong{font-size:15px;color:var(--gray-900)}.ml-card-info span{font-size:13px;color:var(--gray-500)}.ml-students{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.ml-students li{padding:3px 10px;border-radius:var(--radius-full);background:var(--gray-50);border:1px solid var(--gray-200);font-size:12.5px;color:var(--gray-600)}.ml-students-more{font-weight:600}.ml-actions{display:flex;gap:8px;flex-wrap:wrap}.ml-btn{height:36px;padding:0 12px;border-radius:9px;border:1px solid var(--gray-200);background:#fff;color:var(--gray-700);font:inherit;font-size:13px;font-weight:600;display:inline-flex;align-items:center;text-decoration:none;cursor:pointer}.ml-btn:hover{background:var(--gray-50)}.ml-btn--primary{border-color:var(--primary);background:var(--primary);color:#fff;padding:0 14px}.ml-btn--primary:hover{background:var(--primary-dark);color:#fff}.ml-icon-btn{margin-left:auto;width:36px;height:36px;border-radius:9px;border:1px solid var(--gray-200);background:#fff;color:var(--gray-500);display:flex;align-items:center;justify-content:center;cursor:pointer}.ml-icon-btn:hover{background:var(--error-bg);border-color:var(--error-border);color:var(--error)}.ml-btn:focus-visible,.ml-icon-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.ml-loading,.ml-empty{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px 20px;font-size:14px;color:var(--gray-500)}.ml-empty{flex-direction:column;gap:6px;background:#fff;border:1px solid var(--gray-200);border-radius:14px;text-align:center}.ml-empty strong{color:var(--gray-700)}.ml-error{padding:10px 14px;border-radius:10px;background:var(--error-bg);border:1px solid var(--error-border);color:#dc2626;font-size:14px}.ml-spinner{width:14px;height:14px;border:2px solid var(--gray-200);border-top-color:var(--primary);border-radius:50%;animation:ml-spin .7s linear infinite}@keyframes ml-spin{to{transform:rotate(360deg)}}@media(max-width:640px){.ml-search{flex:1 1 100%}.ml-count{margin-left:0}}.uf{max-width:680px;display:flex;flex-direction:column;gap:16px}.uf-head h2{margin:0;font-size:1.5rem;font-weight:800;letter-spacing:-.02em;color:var(--gray-900)}.uf-head p{margin:4px 0 0;font-size:14px;color:var(--gray-500)}.uf-alert{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:10px;background:var(--error-bg);border:1px solid var(--error-border);color:#dc2626;font-size:13.5px}.uf-card{margin:0;background:#fff;border:1px solid var(--gray-200);border-radius:14px;padding:22px 24px;display:flex;flex-direction:column;gap:16px}.uf-preview{display:flex;align-items:center;gap:14px}.uf-avatar{width:56px;height:56px;border-radius:50%;background:var(--gray-100);border:2px solid var(--gray-200);color:var(--gray-700);font-size:22px;font-weight:700;display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.uf-avatar img{width:100%;height:100%;object-fit:cover}.uf-preview-text{display:flex;flex-direction:column;gap:2px;min-width:0}.uf-preview-text strong{font-size:15px;color:var(--gray-900)}.uf-preview-text span{font-size:13px;color:var(--gray-500);overflow:hidden;text-overflow:ellipsis}.uf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.uf-field{display:flex;flex-direction:column;gap:6px;min-width:0}.uf-field--half{width:calc(50% - 7px)}.uf-field label,.uf-roles legend{font-size:13px;font-weight:600;color:var(--gray-700)}.uf-optional{font-weight:400;color:var(--gray-500)}.uf-input{height:44px;width:100%;box-sizing:border-box;padding:0 14px;border:1.5px solid var(--gray-200);border-radius:9px;font:inherit;font-size:14.5px;color:var(--gray-900);background:#fff;outline:none;transition:border-color .15s,box-shadow .15s}.uf-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.uf-input::placeholder{color:var(--gray-400)}.uf-roles{padding-top:18px}.uf-roles legend{float:left;width:100%;padding:0;margin-bottom:4px}.uf-role-grid{clear:both;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.uf-role{display:flex;flex-direction:column;gap:4px;padding:14px;border-radius:12px;border:1.5px solid var(--gray-200);background:#fff;cursor:pointer;transition:border-color .15s,background .15s}.uf-role:hover{border-color:var(--gray-300)}.uf-role:focus-within{outline:2px solid var(--primary);outline-offset:2px}.uf-role-title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--gray-700)}.uf-role-title input{width:16px;height:16px;margin:0}.uf-role-hint{padding-left:24px;font-size:12.5px;color:var(--gray-500)}.uf-role--aluno.is-active{border-color:#059669;background:#f0fdf4}.uf-role--aluno.is-active .uf-role-title{color:#047857}.uf-role--aluno input{accent-color:#059669}.uf-role--professor.is-active{border-color:#1d4ed8;background:#eff6ff}.uf-role--professor.is-active .uf-role-title{color:#1d4ed8}.uf-role--professor input{accent-color:#1d4ed8}.uf-role--adm.is-active{border-color:#7c3aed;background:#faf5ff}.uf-role--adm.is-active .uf-role-title{color:#7c3aed}.uf-role--adm input{accent-color:#7c3aed}.uf-note{font-size:12.5px;color:var(--gray-500)}.uf-actions{display:flex;justify-content:flex-end;gap:10px}.uf-btn{height:44px;padding:0 18px;border-radius:10px;border:1px solid var(--gray-200);background:#fff;color:var(--gray-700);font:inherit;font-size:14px;font-weight:600;cursor:pointer}.uf-btn:hover{background:var(--gray-50)}.uf-btn--primary{border-color:var(--primary);background:var(--primary);color:#fff}.uf-btn--primary:hover:not(:disabled){background:var(--primary-dark)}.uf-btn:disabled{opacity:.55;cursor:not-allowed}.uf-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}@media(max-width:640px){.uf-card{padding:18px 16px}.uf-grid,.uf-role-grid{grid-template-columns:minmax(0,1fr)}.uf-field--half{width:100%}.uf-actions .uf-btn{flex:1}.uf-input{font-size:16px}}.ul-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px}.ul-search-wrap{position:relative;flex:0 1 340px;min-width:220px}.ul-search-icon{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--gray-400);pointer-events:none}.ul-search{width:100%;height:40px;box-sizing:border-box;padding:0 14px 0 36px;border-radius:10px;border:1.5px solid var(--gray-200);background:#fff;font:inherit;font-size:14px;color:var(--gray-900);outline:none}.ul-search:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.ul-role-filters{display:flex;gap:6px;flex-wrap:wrap}.ul-role-chip{height:36px;padding:0 14px;border-radius:var(--radius-full);border:1px solid var(--gray-200);background:#fff;color:var(--gray-600);font:inherit;font-size:13px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:6px}.ul-role-chip:hover{border-color:var(--gray-300)}.ul-role-chip--active{background:var(--gray-900);border-color:var(--gray-900);color:#fff}.ul-role-count{font-weight:500;opacity:.7}.ul-meeting-btn{margin-left:auto;height:40px;padding:0 16px;border:none;border-radius:10px;background:var(--primary);color:#fff;font:inherit;font-size:13.5px;font-weight:600;cursor:pointer}.ul-meeting-btn:hover{background:var(--primary-dark)}.ul-error{margin-bottom:16px;padding:10px 14px;border-radius:10px;background:var(--error-bg);border:1px solid var(--error-border);color:#dc2626;font-size:14px}.ul-table-wrap{background:#fff;border:1px solid var(--gray-200);border-radius:14px;overflow-x:auto}.ul-table{width:100%;min-width:640px;border-collapse:collapse;font-size:14px}.ul-table thead tr{background:var(--gray-50);text-align:left}.ul-table th{padding:12px 16px;font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--gray-500)}.ul-table td{padding:12px 16px;border-top:1px solid var(--gray-100);vertical-align:middle}.ul-table tbody tr:hover{background:var(--gray-50)}.ul-table tbody tr.is-selected{background:var(--primary-light)}.ul-col-check{width:44px;padding-right:0!important}.ul-col-check input{width:18px;height:18px;accent-color:var(--primary);cursor:pointer}.ul-col-actions{width:1%;white-space:nowrap;text-align:right}.ul-person{display:flex;align-items:center;gap:12px;min-width:0}.ul-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0;background:var(--gray-100)}.ul-info{min-width:0}.ul-name{font-weight:600;color:var(--gray-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ul-email{font-size:13px;color:var(--gray-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ul-role{display:inline-block;padding:4px 10px;border-radius:var(--radius-full);font-size:12.5px;font-weight:600}.ul-status{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#047857}.ul-status-dot{width:8px;height:8px;border-radius:50%;background:var(--success)}.ul-status--off{color:var(--gray-500)}.ul-status--off .ul-status-dot{background:var(--gray-400)}.ul-actions{display:inline-flex;gap:6px}.ul-btn{height:36px;padding:0 12px;border-radius:9px;border:1px solid var(--gray-200);background:#fff;color:var(--gray-700);font:inherit;font-size:13px;font-weight:600;cursor:pointer}.ul-btn:hover{background:var(--gray-50)}.ul-icon-btn{width:36px;height:36px;border-radius:9px;border:1px solid var(--gray-200);background:#fff;color:var(--gray-500);display:flex;align-items:center;justify-content:center;cursor:pointer}.ul-icon-btn--del:hover{background:var(--error-bg);border-color:var(--error-border);color:var(--error)}.ul-btn:focus-visible,.ul-icon-btn:focus-visible,.ul-role-chip:focus-visible,.ul-meeting-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.ul-count{margin:12px 0 0;font-size:13px;color:var(--gray-500)}.ul-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:48px 20px;background:#fff;border:1px solid var(--gray-200);border-radius:14px;text-align:center;font-size:14px;color:var(--gray-500)}.ul-empty strong{color:var(--gray-700)}.ul-loading{padding:32px;display:flex;align-items:center;justify-content:center;gap:10px;font-size:14px;color:var(--gray-400)}.ul-spinner{width:18px;height:18px;border:2.5px solid var(--gray-200);border-top-color:var(--primary);border-radius:50%;animation:ul-spin .7s linear infinite}@keyframes ul-spin{to{transform:rotate(360deg)}}@media(max-width:640px){.ul-search-wrap{flex:1 1 100%}.ul-meeting-btn{margin-left:0;width:100%}}.dmc{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;align-items:start}.dmc-list{display:flex;flex-direction:column;gap:8px}.dmc-item{width:100%;padding:14px 16px;border-radius:12px;border:1px solid var(--gray-200);background:#fff;font:inherit;text-align:left;display:flex;flex-direction:column;gap:4px;cursor:pointer}.dmc-item strong{font-size:14px;color:var(--gray-900)}.dmc-item span{font-size:12.5px;color:var(--gray-500)}.dmc-item:hover{border-color:var(--gray-300)}.dmc-item.is-active{border:1.5px solid var(--gray-300);background:var(--gray-50)}.dmc-item:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.dmc-panel{background:#fff;border:1px solid var(--gray-200);border-radius:14px;display:flex;flex-direction:column;min-height:320px;max-height:calc(100vh - 220px)}.dmc-panel-head{padding:14px 20px;border-bottom:1px solid var(--gray-200);display:flex;align-items:center;gap:10px}.dmc-panel-head strong{flex:1;font-size:14.5px;color:var(--gray-900)}.dmc-readonly{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--gray-500)}.dmc-messages{flex:1;overflow-y:auto;padding:12px 20px 20px;display:flex;flex-direction:column;gap:2px}.dmc-no-msg{margin:16px 0;font-size:14px;color:var(--gray-500)}.dmc-msg{display:flex;gap:10px;align-items:flex-start}.dmc-msg.is-first{margin-top:10px}.dmc-msg-avatar{width:32px;flex-shrink:0}.dmc-avatar{border-radius:50%;object-fit:cover;flex-shrink:0}.dmc-avatar--initial{background:var(--gray-100);color:var(--gray-700);font-weight:700;display:flex;align-items:center;justify-content:center}.dmc-msg-body{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.dmc-msg-meta{display:flex;align-items:baseline;gap:8px}.dmc-msg-name{font-size:12.5px;font-weight:600;color:var(--gray-700)}.dmc-msg-time{font-size:12px;color:var(--gray-400)}.dmc-bubble{max-width:85%;padding:8px 12px;border-radius:4px 12px 12px;background:var(--gray-50);border:1px solid var(--gray-200);font-size:14px;line-height:1.5;color:var(--gray-700);white-space:pre-wrap;overflow-wrap:anywhere}.dmc-media{max-width:240px;border-radius:10px;border:1px solid var(--gray-200)}.dmc-media--video{max-width:320px}.dmc-file{padding:8px 12px;border-radius:10px;background:var(--gray-50);border:1px solid var(--gray-200);font-size:13px;color:var(--gray-700);text-decoration:none}.dmc-file:hover{color:var(--primary)}.dmc-state,.dmc-empty{display:flex;align-items:center;justify-content:center;gap:10px;padding:48px 20px;font-size:14px;color:var(--gray-500)}.dmc-empty{flex-direction:column;gap:6px;background:#fff;border:1px solid var(--gray-200);border-radius:14px;text-align:center}.dmc-empty strong{color:var(--gray-700)}.dmc-error{padding:12px 16px;border-radius:10px;background:var(--error-bg);border:1px solid var(--error-border);color:#dc2626;font-size:14px}.dmc-spinner{width:20px;height:20px;border:3px solid var(--gray-200);border-top-color:var(--primary);border-radius:50%;animation:dmc-spin .7s linear infinite}@keyframes dmc-spin{to{transform:rotate(360deg)}}@media(max-width:900px){.dmc{grid-template-columns:minmax(0,1fr)}.dmc-list{flex-direction:row;overflow-x:auto;padding-bottom:4px}.dmc-item{min-width:220px}.dmc-panel{max-height:none}}.dmc-video-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.dmc-download{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:10px;background:var(--primary-light, #eff6ff);border:1px solid var(--primary-border, #bfdbfe);color:var(--primary, #2563eb);font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap}.dmc-download:hover{background:#dbeafe}
