:root,:root[data-theme=dark]{color-scheme:dark;--bg: #07111f;--page-background: radial-gradient(circle at top left, rgba(53, 112, 192, .23), transparent 32%), radial-gradient(circle at 85% 10%, rgba(99, 144, 255, .18), transparent 30%), linear-gradient(180deg, #081322 0%, #060d17 100%);--surface-1: rgba(11, 22, 39, .8);--surface-2: rgba(14, 27, 48, .9);--surface-3: rgba(18, 33, 56, .98);--surface-soft: rgba(127, 198, 255, .08);--surface-ghost: rgba(255, 255, 255, .03);--sidebar-bg: rgba(4, 11, 21, .9);--sidebar-admin-bg: rgba(10, 16, 28, .94);--topbar-bg: rgba(6, 12, 24, .74);--input-bg: rgba(7, 14, 26, .62);--input-focus-bg: rgba(8, 18, 33, .88);--preview-bg: rgba(5, 10, 20, .7);--line: rgba(255, 255, 255, .08);--line-strong: rgba(255, 255, 255, .14);--text: #f5f7fb;--text-soft: rgba(231, 238, 248, .82);--text-muted: rgba(231, 238, 248, .6);--accent: #7fc6ff;--accent-strong: #3aa6ff;--accent-soft: rgba(127, 198, 255, .12);--success: #55d39f;--warning: #ffca6b;--danger: #ff8d8d;--danger-soft: rgba(255, 119, 137, .18);--danger-line: rgba(255, 119, 137, .26);--danger-contrast: #ffdce3;--button-primary-text: #06111d;--shadow: 0 20px 60px rgba(0, 0, 0, .35);--shadow-soft: 0 14px 32px rgba(0, 0, 0, .26);--radius: 24px;--radius-sm: 18px;--radius-xs: 14px;--sidebar-width: 280px;--max-content: 1360px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=light]{color-scheme:light;--bg: #eff4fb;--page-background: radial-gradient(circle at top left, rgba(70, 127, 222, .14), transparent 28%), radial-gradient(circle at 85% 4%, rgba(34, 123, 230, .12), transparent 24%), linear-gradient(180deg, #f7faff 0%, #eef3fb 100%);--surface-1: rgba(255, 255, 255, .86);--surface-2: rgba(255, 255, 255, .96);--surface-3: #ffffff;--surface-soft: rgba(42, 125, 225, .08);--surface-ghost: rgba(19, 44, 76, .035);--sidebar-bg: rgba(248, 251, 255, .92);--sidebar-admin-bg: rgba(244, 248, 254, .98);--topbar-bg: rgba(242, 246, 252, .84);--input-bg: rgba(247, 250, 255, .96);--input-focus-bg: #ffffff;--preview-bg: rgba(245, 248, 252, .98);--line: rgba(20, 39, 64, .08);--line-strong: rgba(20, 39, 64, .15);--text: #10233a;--text-soft: rgba(16, 35, 58, .82);--text-muted: rgba(16, 35, 58, .56);--accent: #2b80e6;--accent-strong: #1b68d2;--accent-soft: rgba(43, 128, 230, .1);--success: #1d9a69;--warning: #d88917;--danger: #c85c5c;--danger-soft: rgba(200, 92, 92, .12);--danger-line: rgba(200, 92, 92, .2);--danger-contrast: #b43d50;--button-primary-text: #ffffff;--shadow: 0 22px 54px rgba(46, 67, 103, .12);--shadow-soft: 0 12px 26px rgba(46, 67, 103, .1)}*{box-sizing:border-box}html,body,#app{min-height:100%}html,body{margin:0;background:var(--page-background);color:var(--text)}body{min-height:100vh}body,a,button,input,textarea,select,.card,.panel,.sidebar,.topbar,.project-card,.resource-card,.detail-card,.chat-bubble,.modal-card,.guest-header,.login-card{transition:background-color .24s ease,border-color .24s ease,color .24s ease,box-shadow .24s ease,transform .2s ease}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}input,textarea,select{width:100%;border:1px solid var(--line-strong);border-radius:16px;background:var(--input-bg);color:var(--text);padding:.95rem 1rem;outline:none}input:focus,textarea:focus,select:focus{border-color:#7fc6ff73;background:var(--input-focus-bg);box-shadow:0 0 0 4px var(--accent-soft)}textarea{resize:vertical}.textarea{min-height:120px}select[multiple]{min-height:180px}code,pre{font-family:SFMono-Regular,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}h1,h2,h3,p,small{margin-top:0}.app-root{min-height:100vh}.shell{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);min-height:100vh;height:100vh;overflow:hidden}.shell--admin{--sidebar-width: 260px}.sidebar{position:sticky;top:0;height:100vh;overflow:hidden;display:flex;flex-direction:column;gap:1.5rem;min-height:100vh;padding:1.5rem;background:var(--sidebar-bg);border-right:1px solid var(--line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.sidebar--admin{background:var(--sidebar-admin-bg)}.brand-block{display:flex;align-items:center;gap:.95rem}.brand-block p{margin-bottom:0}.brand-mark{display:grid;place-items:center;width:2.9rem;height:2.9rem;border-radius:1rem;background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:var(--button-primary-text);font-weight:800;font-size:1.2rem;box-shadow:0 16px 24px #2173d342}.nav-stack{display:flex;flex-direction:column;gap:.65rem}.nav-stack--grow{flex:1 1 auto;min-height:0;overflow:auto;padding-right:.2rem}.nav-link{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:3rem;padding:.9rem 1rem;border-radius:16px;color:var(--text-soft);border:1px solid transparent}.nav-link:hover,.nav-link.active{transform:translate(2px);background:var(--accent-soft);border-color:#7fc6ff29;color:var(--text)}.sidebar-foot{margin-top:auto;display:flex;flex-direction:column;gap:.85rem;flex-shrink:0}.profile-card,.card,.panel,.metric-card,.resource-card,.stat-box,.todo-item,.detail-card,.share-box,.chat-panel,.login-card,.guest-header,.group-card,.project-card,.empty-state,.modal-card,.chat-user{background:var(--surface-1);border:1px solid var(--line);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.profile-card{padding:1rem;border-radius:var(--radius-sm)}.profile-card-copy{display:grid;gap:.3rem}.profile-card-copy strong{line-height:1.3}.profile-role,.profile-department{margin:0}.profile-role{color:var(--text-soft);font-weight:600}.profile-department{color:var(--text-muted)}.content-shell{min-width:0;display:flex;flex-direction:column;height:100vh;overflow:hidden}.topbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem 2rem 1rem;border-bottom:1px solid var(--line);background:var(--topbar-bg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.topbar>div{display:flex;align-items:flex-start;gap:1rem}.topbar h1{margin:0 0 .35rem}.topbar p{margin-bottom:0}.topbar-actions{display:flex;align-items:center;gap:.75rem}.page-shell{flex:1 1 auto;overflow:auto;width:min(var(--max-content),calc(100vw - var(--sidebar-width) - 3rem));max-width:calc(100vw - var(--sidebar-width) - 3rem);margin:0 auto;padding:1.5rem 0 6rem}.stack-lg,.stack-md,.stack-sm{display:flex;flex-direction:column}.stack-lg{gap:1.5rem}.stack-md{gap:1rem}.stack-sm{gap:.75rem}.panel,.card,.login-card,.guest-header{border-radius:var(--radius);padding:1.35rem}.card--soft,.pill--soft{background:var(--surface-soft)}.panel-head,.panel-head--tight,.modal-head,.project-card-top,.project-card-bottom,.project-hero-top,.chat-window-head,.section-label-row,.detail-row,.login-copy,.inline-actions,.project-hero-meta,.modal-actions,.todo-main,.hero-stats,.hero-card,.user-card-header{display:flex}.panel-head,.modal-head,.project-card-top,.project-card-bottom,.project-hero-top,.section-label-row,.detail-row,.inline-actions,.modal-actions,.hero-card,.user-card-header{justify-content:space-between;align-items:center;gap:1rem}.panel-head{margin-bottom:1rem}.modal-actions--start{justify-content:flex-start}.modal-actions--wrap{flex-wrap:wrap}.panel-head--tight{margin-bottom:.75rem}.hero-card{align-items:flex-start;gap:1.5rem}.hero-stats,.project-hero-meta{gap:.85rem;flex-wrap:wrap}.hero-stats{margin-left:auto}.stat-box,.metric-card{display:grid;gap:.35rem;min-width:160px;padding:1rem 1.1rem;border-radius:18px;background:var(--surface-2)}.stat-box strong,.metric-card strong{font-size:1.6rem}.project-hero{padding:1.6rem}.project-hero-top{align-items:flex-start}.info-grid,.grid,.projects-grid,.groups-grid{display:grid;gap:1rem}.info-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid--four{grid-template-columns:repeat(4,minmax(0,1fr))}.grid--dashboard{grid-template-columns:minmax(320px,.95fr) minmax(0,1.05fr)}.grid--dashboard-secondary,.grid--detail{grid-template-columns:repeat(2,minmax(0,1fr))}.info-grid--project{margin-top:1rem}.projects-grid,.groups-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.project-card,.resource-card,.todo-item,.chat-user,.chat-toggle,.chat-panel,.empty-state,.detail-card,.modal-card,.group-card{border-radius:var(--radius-sm)}.project-card,.resource-card,.todo-item,.detail-card,.chat-user,.empty-state,.share-box{padding:1rem}.project-card{display:grid;gap:1rem;min-height:200px}.resource-card{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.resource-card.compact{padding:.85rem 1rem}.admin-user-card{flex-wrap:wrap}.user-card-summary{flex:1 1 380px;min-width:min(380px,100%);display:grid;gap:.6rem}.user-card-editor{padding-top:1rem;border-top:1px solid var(--line)}.user-card-header .pill{flex-shrink:0}.task-card,.wiki-card{align-items:stretch}.todo-item{display:flex;justify-content:space-between;gap:1rem}.todo-item.done strong,.todo-item.done p,.todo-item.done small{opacity:.66;text-decoration:line-through}.todo-main{align-items:flex-start;gap:.9rem;flex:1}.todo-main input[type=checkbox]{width:1rem;height:1rem;margin-top:.25rem}.todo-create{display:grid;gap:.75rem;margin-bottom:1rem}.input--multiselect{min-height:160px}.button,.icon-button,.menu-button,.chat-toggle{border:1px solid transparent}.button,.icon-button,.menu-button,.chat-toggle,input,textarea,select{transition:transform .2s ease,opacity .2s ease,background .2s ease,border-color .2s ease,box-shadow .2s ease}.button{display:inline-flex;align-items:center;justify-content:center;min-height:2.85rem;padding:.75rem 1rem;border-radius:16px;background:var(--surface-ghost);color:var(--text)}.button:hover,.icon-button:hover,.menu-button:hover,.chat-toggle:hover{transform:translateY(-1px)}.button--primary,.icon-button--success{background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:var(--button-primary-text);box-shadow:0 16px 28px #2b80e638}.button--soft{background:var(--accent-soft);border-color:#7fc6ff29}.button--ghost{background:transparent;border-color:var(--line-strong);color:var(--text-soft)}.button--danger{background:linear-gradient(135deg,var(--danger),#d96a6a);color:#fff;box-shadow:0 16px 28px #aa373738}.button--full{width:100%}.button--compact{min-height:2.45rem;padding:.55rem .8rem;border-radius:14px}.icon-button,.menu-button{display:inline-grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:14px;background:var(--surface-ghost);color:var(--text)}.menu-button{display:none}.theme-toggle{min-width:9.25rem}.badge,.pill{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.35rem .7rem;border-radius:999px;font-size:.85rem}.badge{min-width:1.5rem;background:var(--accent-soft);color:var(--text)}.badge--danger,.pill--danger{background:var(--danger-soft);color:var(--danger-contrast);border:1px solid var(--danger-line)}.nav-link-badge{flex-shrink:0}.pill{background:var(--surface-ghost);border:1px solid var(--line)}.pill--ghost{background:transparent}.pill--danger{background:var(--danger-soft);border-color:var(--danger-line);color:var(--danger-contrast)}.pill-row,.chip-wrap{display:flex;flex-wrap:wrap;gap:.6rem}.eyebrow,.field-label,.section-label-row,.muted-text,.lead-text,.login-hint,.form-error,.wiki-preview,.chat-user-meta,.resource-meta,.input-hint{color:var(--text-muted)}.eyebrow,.field-label{display:inline-block;letter-spacing:.12em;text-transform:uppercase;font-size:.74rem}.field-label{margin-bottom:.45rem}.lead-text{max-width:65ch;line-height:1.6}.form-error{color:var(--danger)}.input-hint{margin:.5rem 0 0;font-size:.9rem;line-height:1.5}.empty-state{display:grid;place-items:center;text-align:center;padding:1.5rem;min-height:180px;border:1px dashed var(--line-strong);background:var(--surface-ghost)}.empty-state.compact{min-height:auto;padding:1rem}.empty-state.error{color:var(--danger);border-color:#c95a5a3d}.preserve-linebreaks{white-space:pre-wrap}.login-page,.guest-page{min-height:100vh;padding:2rem}.login-page{display:grid;place-items:center}.page-utility-bar{width:min(1120px,100%);display:flex;justify-content:flex-end;margin:0 auto 1rem}.login-card{width:min(1120px,100%);display:grid;grid-template-columns:1.15fr .85fr;gap:1.25rem;padding:1.25rem}.login-copy,.login-form-block{border-radius:22px;padding:1.6rem}.login-copy{flex-direction:column;align-items:flex-start;gap:1rem;background:linear-gradient(145deg,#7dbcff29,#ffffff05);border:1px solid rgba(127,198,255,.14)}.login-form-block{background:var(--surface-2);border:1px solid var(--line)}.login-form-block h2,.login-copy h1,.panel h2,.panel h3,.topbar h1,.modal-title,.guest-header h1{margin:0 0 .5rem}.login-form-block .input,.login-form-block .button,.login-form-block .form-error{margin-top:.55rem}.guest-header{display:grid;grid-template-columns:1fr 360px;gap:1rem;margin-bottom:1rem}.guest-controls{display:grid;gap:.75rem}.panel--guest-room{min-height:calc(100vh - 280px)}.share-box{border:1px dashed var(--line-strong);background:var(--surface-ghost)}.visibility-explainer{display:grid;gap:.35rem}.share-box p,.share-box strong{margin:0}.share-box code{display:block;white-space:pre-wrap;word-break:break-word}.chat-dock{position:fixed;right:1.5rem;bottom:1.5rem;z-index:50}.chat-toggle{display:inline-flex;align-items:center;gap:.65rem;padding:.95rem 1.1rem;border-radius:999px;background:var(--surface-2);color:var(--text);box-shadow:var(--shadow)}.chat-panel{position:absolute;right:0;bottom:4.25rem;width:min(880px,calc(100vw - 2rem));padding:1rem}.chat-layout,.group-chat-shell{display:grid;grid-template-columns:240px minmax(0,1fr);gap:1rem}.group-chat-shell{grid-template-columns:1fr}.chat-users{display:flex;flex-direction:column;gap:.6rem}.chat-user{display:flex;justify-content:space-between;align-items:center;gap:.95rem;text-align:left;width:100%;padding:.95rem 1rem;background:var(--surface-ghost);border:1px solid var(--line)}.chat-user.active{background:var(--accent-soft);border-color:#7fc6ff2e}.chat-user-copy{min-width:0;display:grid;gap:.45rem}.chat-user-copy strong{display:block;line-height:1.3}.chat-user-copy small{display:block;line-height:1.45;font-size:.84rem;word-break:break-word}.chat-window,.group-chat-shell{display:flex;flex-direction:column;min-height:380px;gap:.75rem}.chat-window-head{justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--line)}.chat-window-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.6rem}.call-status-strip{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.15rem 0 .35rem}.call-toast{margin:0 0 1rem;padding:.8rem .95rem;border-radius:16px;background:var(--danger-soft);border:1px solid var(--danger-line);color:var(--danger-contrast);font-weight:600}.chat-messages{display:flex;flex-direction:column;gap:.75rem;min-height:260px;max-height:360px;overflow:auto;padding-right:.25rem}.chat-messages--tall{min-height:420px;max-height:520px}.chat-message{display:flex;justify-content:flex-start}.chat-message.mine{justify-content:flex-end}.chat-bubble{max-width:min(680px,100%);padding:.9rem 1rem;border-radius:18px;background:var(--surface-ghost);border:1px solid var(--line)}.chat-message.mine .chat-bubble{background:var(--accent-soft);border-color:#7fc6ff2e}.chat-bubble p,.resource-card p,.detail-card p,.modal-card p,.hero-card p,.project-card p,.metric-card p,.stat-box p{margin:.25rem 0 0;line-height:1.55}.chat-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:end}.chat-user-meta{display:inline-flex;align-items:center;gap:.45rem;flex-shrink:0;margin-top:.2rem}.presence-dot{width:.7rem;height:.7rem;border-radius:999px;background:#ffffff40}.presence-dot.online{background:var(--success)}.presence-dot.away{background:var(--warning)}.presence-dot.offline{background:var(--text-muted)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:1.5rem;background:#03080e99;z-index:80}:root[data-theme=light] .modal-backdrop{background:#1a2a422e}.modal-card{width:min(1040px,100%);background:var(--surface-3);border:1px solid var(--line)}.modal-card--wide{max-height:calc(100vh - 3rem);min-height:min(820px,calc(100vh - 3rem));overflow:hidden;display:flex;flex-direction:column}.modal-card--call{width:min(460px,100%)}.modal-body{display:flex;flex-direction:column;gap:1rem}.modal-body--jitsi{min-height:70vh;flex:1}.jitsi-shell,.jitsi-container{min-height:100%;width:100%}.jitsi-container{min-height:72vh;height:100%;border-radius:18px;overflow:hidden}.jitsi-container.hidden,.direct-call-jitsi.hidden{display:none}.direct-call-modal{width:min(1180px,100%);min-height:min(860px,calc(100vh - 2rem));max-height:calc(100vh - 2rem);display:flex;flex-direction:column;overflow:hidden}.direct-call-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1.1rem 1.1rem 0}.direct-call-subtitle{margin:0}.direct-call-stage{display:flex;flex-direction:column;gap:.9rem;min-height:0;flex:1;padding:0 1.1rem 1.1rem}.direct-call-shell{position:relative;min-height:0;flex:1;border-radius:22px;overflow:hidden;background:#05090f;border:1px solid var(--line)}.direct-call-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:1.5rem;background:#05090f94}.direct-call-status{width:min(420px,100%);gap:.8rem}.direct-call-status p,.direct-call-status strong{margin:0}.direct-call-actions{display:flex;justify-content:flex-start}.full-width{width:100%}.align-end{display:flex;justify-content:flex-end;align-items:center}.detail-card{display:grid;gap:.45rem;background:var(--surface-2)}.detail-card--wide{grid-column:span 2}.compact-form{margin-bottom:1rem}.group-card{display:flex;flex-direction:column;gap:1rem}.group-section{display:grid;gap:.65rem}.group-admin-row{align-items:end}.admin-user-actions{display:grid;gap:.65rem;width:min(260px,100%)}.checkbox-row{display:inline-flex;align-items:center;gap:.75rem}.checkbox-row input{width:1rem;height:1rem}.wiki-preview{margin:.75rem 0 0;padding:.95rem;border-radius:18px;white-space:pre-wrap;background:var(--preview-bg);border:1px solid var(--line)}.textarea--code{min-height:180px}.resource-meta{display:flex;flex-direction:column;gap:.6rem;align-items:flex-end}.section-label-row{align-items:center}.compact{min-height:auto}.error{color:var(--danger)}@media(max-width:1200px){.grid--dashboard,.grid--dashboard-secondary,.grid--detail,.chat-layout,.guest-header,.login-card{grid-template-columns:1fr}.detail-card--wide{grid-column:auto}.hero-card,.project-hero-top,.resource-card,.modal-head,.panel-head,.section-label-row,.admin-user-card,.project-card-top,.project-card-bottom,.user-card-header,.topbar{flex-direction:column;align-items:flex-start}.hero-stats,.topbar-actions{margin-left:0}.admin-user-actions{width:100%}}@media(max-width:980px){.shell,.shell--admin{grid-template-columns:1fr}.sidebar,.sidebar--admin{position:fixed;inset:0 auto 0 0;width:min(84vw,320px);transform:translate(-105%);transition:transform .24s ease;z-index:100;box-shadow:var(--shadow)}.sidebar.open,.sidebar--admin.open{transform:translate(0)}.page-shell{width:min(var(--max-content),calc(100vw - 1.5rem));max-width:calc(100vw - 1.5rem);padding-bottom:7rem}.menu-button{display:inline-grid}.topbar{padding:1rem .9rem .8rem}.chat-panel{width:min(100vw - 1rem,760px)}}@media(max-width:720px){.login-page,.guest-page,.page-shell,.modal-backdrop{padding-left:.75rem;padding-right:.75rem}.page-utility-bar{width:100%}.panel,.card,.login-card,.guest-header,.modal-card{padding:1rem;border-radius:20px}.grid--two,.grid--three,.grid--four,.projects-grid,.groups-grid,.info-grid,.chat-compose{grid-template-columns:1fr}.chat-toggle{padding:.85rem 1rem}.chat-dock{right:.75rem;bottom:.75rem}.chat-panel{width:calc(100vw - 1.5rem);right:-.1rem}.theme-toggle{min-width:auto;width:100%}.topbar-actions,.inline-actions{width:100%}}@media(max-width:900px){.direct-call-modal{min-height:calc(100vh - 1rem);max-height:calc(100vh - 1rem)}.direct-call-head,.direct-call-stage{padding-left:.85rem;padding-right:.85rem}.direct-call-actions{justify-content:stretch}.direct-call-actions .button{width:100%}}.chat-panel{width:min(920px,calc(100vw - 2rem));box-shadow:var(--shadow)}.chat-layout{grid-template-columns:260px minmax(0,1fr);align-items:stretch}.chat-users{max-height:560px;overflow:auto;padding-right:.2rem}.chat-user{align-items:flex-start;border-radius:20px;padding:1rem 1.05rem}.chat-user:hover{border-color:var(--line-strong);background:var(--surface-soft)}.chat-user-copy{gap:.3rem;padding-right:.2rem}.chat-user-copy strong{line-height:1.38}.chat-user-copy small{line-height:1.38;font-size:.82rem}.chat-window,.group-chat-shell{min-height:420px}.chat-window-head{gap:1rem}.modal-card{box-shadow:var(--shadow)}.modal-card--meeting{width:min(1280px,calc(100vw - 1rem));height:min(880px,calc(100vh - 1rem));display:flex;flex-direction:column;padding:1rem;overflow:hidden}.meeting-modal-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.2rem 0 .8rem}.modal-body--meeting{flex:1;min-height:0;padding:0}.modal-body--jitsi,.modal-body--meeting{min-height:0;height:100%}.jitsi-shell{position:relative;display:flex;flex:1;min-height:0;height:100%;border-radius:22px;overflow:hidden;background:#05090f;border:1px solid var(--line)}.jitsi-container{flex:1;min-height:100%;height:100%;border-radius:inherit;overflow:hidden;background:#05090f}.jitsi-container.hidden,.direct-call-jitsi.hidden{visibility:hidden;opacity:0}.meeting-loader,.meeting-error{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:grid;place-items:center;gap:.9rem;padding:1.5rem;text-align:center;background:#05090f75;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.meeting-loader{color:#ffffffe0}.meeting-loader--call{position:static;inset:auto;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;padding:0}.direct-call-backdrop{padding:1rem}.direct-call-modal{width:min(1120px,calc(100vw - 1rem));height:min(820px,calc(100vh - 1rem));display:flex;flex-direction:column;padding:1rem;overflow:hidden}.direct-call-head{padding:.2rem 0 .8rem}.direct-call-stage{padding:0;gap:.9rem}.direct-call-shell{background:#05090f}.direct-call-jitsi{width:100%;height:100%}.direct-call-overlay{background:#05090f6b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.direct-call-status{display:grid;justify-items:center;gap:.85rem;width:min(360px,100%);padding:1.35rem 1.5rem;border-radius:20px;background:#0a0f19cc;border:1px solid rgba(255,255,255,.08);text-align:center}.call-invite-backdrop{padding:1rem}.call-invite-card{width:min(560px,100%);display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1rem 1.15rem;padding:1.2rem}.call-invite-card__avatar{width:4rem;height:4rem;border-radius:999px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:var(--button-primary-text);font-size:1.3rem;font-weight:700;box-shadow:0 18px 34px #2b80e638}.call-invite-card__copy{min-width:0;display:grid;gap:.28rem}@keyframes meeting-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:900px){.chat-layout{grid-template-columns:1fr}.chat-users{max-height:240px}.modal-card--meeting,.direct-call-modal{width:100%;height:calc(100vh - 1rem)}.call-invite-card{grid-template-columns:1fr;justify-items:start}.call-invite-card__actions{width:100%;justify-content:stretch}.call-invite-card__actions .button{flex:1 1 0}}.jitsi-shell{min-height:520px}.modal-body--meeting .jitsi-shell,.direct-call-shell{min-height:0}.panel--guest-room .jitsi-shell{min-height:calc(100vh - 430px)}@media(max-width:900px){.jitsi-shell,.panel--guest-room .jitsi-shell{min-height:420px}}.meeting-modal-head{align-items:flex-start;padding:.1rem 0 .8rem}.meeting-brand-mask{position:absolute;top:12px;left:12px;width:112px;height:72px;border-radius:18px;background:linear-gradient(135deg,#05090ffa,#05090ff0),radial-gradient(circle at top left,rgba(255,255,255,.08),transparent 55%);box-shadow:inset 0 0 0 1px #ffffff08;pointer-events:none;z-index:3}.jitsi-shell iframe,.direct-call-jitsi iframe{display:block;width:100%;height:100%;border:0;background:#05090f}.modal-card--meeting{padding:.9rem}.modal-body--meeting{border-radius:22px;overflow:hidden}.direct-call-modal{padding:.9rem}.direct-call-actions{padding-top:.1rem}.call-invite-card{width:min(520px,calc(100vw - 1rem));border-radius:24px;gap:1rem 1.1rem;padding:1.1rem}.call-invite-card__copy{gap:.35rem}.call-invite-card__copy .eyebrow,.call-invite-card__copy .lead-text{margin:0}.call-invite-card__actions{display:flex;gap:.75rem;justify-content:flex-end}.call-invite-card__actions .button{min-width:156px}@media(max-width:900px){.modal-card--meeting,.direct-call-modal{width:100%;height:calc(100vh - .5rem);padding:.65rem;border-radius:24px}.meeting-modal-head,.direct-call-head{padding:0 0 .65rem}.meeting-modal-head .modal-title{font-size:clamp(1.35rem,4vw,1.75rem);max-width:calc(100% - 4rem)}.direct-call-head .modal-title{font-size:clamp(1.2rem,4.4vw,1.55rem);max-width:calc(100% - 4rem)}.meeting-brand-mask{top:10px;left:10px;width:90px;height:60px;border-radius:16px}.call-invite-card{padding:1rem;gap:.85rem}.call-invite-card__actions{width:100%}.call-invite-card__actions .button{flex:1 1 0;min-width:0}}.modal-card--meeting{width:min(1180px,calc(100vw - 1rem));height:min(820px,calc(100vh - 1rem));padding:.95rem}.meeting-modal-head{padding:.1rem 0 .8rem}.jitsi-shell{position:relative;isolation:isolate}.jitsi-shell .jitsi-brand-mask{position:absolute;top:1.75rem;left:.7rem;width:6.8rem;height:4.35rem;z-index:4;pointer-events:none;background:linear-gradient(180deg,#05090ffa,#05090f);border-radius:0 0 1rem;box-shadow:1.8rem 0 1.6rem #05090ffa,0 1.6rem 1.2rem #05090ffa}.jitsi-container iframe,.direct-call-jitsi iframe{width:100%;height:100%;border:0;border-radius:inherit;background:#05090f}.direct-call-modal{width:min(1040px,calc(100vw - 1rem));height:min(760px,calc(100vh - 1rem))}.direct-call-head{align-items:center}.direct-call-shell{border-radius:24px;overflow:hidden;border:1px solid var(--line);background:#05090f;box-shadow:inset 0 0 0 1px #ffffff08}.direct-call-shell .jitsi-shell{min-height:100%;border:0;border-radius:0;box-shadow:none}.direct-call-actions{justify-content:flex-end}.call-invite-card{width:min(480px,100%);grid-template-columns:1fr;justify-items:center;gap:.9rem;padding:1.35rem 1.2rem 1.15rem;text-align:center}.call-invite-card__avatar{width:4.4rem;height:4.4rem;font-size:1.4rem}.call-invite-card__copy .eyebrow{margin-bottom:.1rem}@media(max-width:900px){.jitsi-shell .jitsi-brand-mask{top:2.15rem;width:7rem;height:4.5rem}.modal-card--meeting,.direct-call-modal{height:calc(100vh - 1rem)}}@media(max-width:640px){.modal-card--meeting,.direct-call-modal{width:100%;padding:.8rem}.meeting-modal-head,.direct-call-head{padding-bottom:.7rem}.jitsi-shell .jitsi-brand-mask{top:2.35rem;left:.55rem;width:6.5rem;height:4.3rem}.call-invite-card__actions{flex-direction:column;align-items:stretch}.call-invite-card__actions .button{width:100%;min-width:0}}.modal-backdrop--meeting,.direct-call-backdrop{padding:.75rem}.modal-card--meeting,.direct-call-modal{width:min(1280px,calc(100vw - 1rem));height:min(860px,calc(100vh - 1rem));display:flex;flex-direction:column;gap:.85rem;padding:.9rem;overflow:hidden;box-shadow:0 30px 80px #00000061}.modal-card--meeting{background:linear-gradient(180deg,#0f2342fa,#0b1b34fa)}.direct-call-modal{width:min(1120px,calc(100vw - 1rem));background:linear-gradient(180deg,#0e213dfa,#0a182efa)}:root[data-theme=light] .modal-card--meeting,:root[data-theme=light] .direct-call-modal{background:linear-gradient(180deg,#f5f9fffb,#ebf3fcfb)}.meeting-modal-head,.direct-call-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0}.meeting-modal-head .modal-title,.direct-call-head .modal-title{margin:0}.direct-call-head-copy{display:grid;gap:.25rem}.modal-body--meeting,.direct-call-stage{min-height:0;flex:1;padding:0}.jitsi-shell{position:relative;display:flex;flex:1;min-height:0;height:100%;border-radius:22px;overflow:hidden;background:#05090f;border:1px solid rgba(255,255,255,.08)}.jitsi-container{position:relative;z-index:1;flex:1;min-height:100%;height:100%;background:#05090f}.jitsi-container iframe{width:100%;height:100%;border:0}.jitsi-brand-mask{position:absolute;top:.6rem;left:.6rem;z-index:4;width:7rem;height:3rem;border-radius:16px;background:linear-gradient(90deg,#05090f,#05090f 78%,#05090f00);pointer-events:none}.meeting-loader,.meeting-error{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:grid;place-items:center;gap:.85rem;padding:1.5rem;text-align:center;background:#05090f6b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.meeting-loader{color:#ffffffe6}.meeting-loader__spinner{width:2.3rem;height:2.3rem;border-radius:999px;border:2px solid rgba(255,255,255,.16);border-top-color:#ffffffeb;animation:meeting-spin .9s linear infinite}.direct-call-stage .jitsi-shell{min-height:0}.direct-call-actions{display:flex;justify-content:flex-end;padding-top:.1rem}.direct-call-actions .button{min-width:160px}.call-invite-card{width:min(560px,calc(100vw - 1rem));display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1rem 1.15rem;padding:1.2rem;background:linear-gradient(180deg,#102444fa,#0b1b34fa)}.call-invite-card__avatar{width:4.2rem;height:4.2rem;border-radius:999px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:var(--button-primary-text);font-size:1.35rem;font-weight:700;box-shadow:0 18px 34px #2b80e638}.call-invite-card__copy{min-width:0;display:grid;gap:.25rem}@media(max-width:900px){.modal-card--meeting,.direct-call-modal{width:calc(100vw - .75rem);height:calc(100vh - .75rem);padding:.75rem;gap:.75rem;border-radius:22px}.jitsi-brand-mask{top:.45rem;left:.45rem;width:5.65rem;height:2.6rem}.call-invite-card{grid-template-columns:1fr;justify-items:start;width:calc(100vw - .75rem)}.call-invite-card__actions{width:100%;justify-content:stretch}.call-invite-card__actions .button,.direct-call-actions .button{flex:1 1 0;width:100%}}.meeting-modal-head{align-items:flex-start;gap:1rem}.meeting-modal-head .modal-title,.direct-call-head .modal-title{margin:0;line-height:1.15}.jitsi-shell,.direct-call-shell{position:relative;isolation:isolate}.jitsi-shell .meeting-brand-mask,.direct-call-shell .meeting-brand-mask{position:absolute;top:12px;left:12px;width:112px;height:72px;z-index:6;pointer-events:none;border-radius:18px;background:linear-gradient(180deg,#05090ffa,#05090f),radial-gradient(circle at top left,rgba(255,255,255,.08),transparent 58%);box-shadow:0 0 0 1px #ffffff08,28px 0 22px #05090ff5,0 20px 20px #05090ff5}.jitsi-container iframe,.direct-call-jitsi iframe{display:block;width:100%;height:100%;border:0;border-radius:inherit;background:#05090f}.call-invite-card{width:min(520px,calc(100vw - 1rem));grid-template-columns:auto minmax(0,1fr);justify-items:stretch;text-align:left}.call-invite-card__actions{grid-column:1 / -1;justify-content:flex-end}@media(max-width:900px){.jitsi-shell .meeting-brand-mask,.direct-call-shell .meeting-brand-mask{top:10px;left:10px;width:90px;height:60px;border-radius:16px}.call-invite-card{grid-template-columns:1fr;justify-items:center;text-align:center}.call-invite-card__copy{justify-items:center;text-align:center}.call-invite-card__actions{width:100%;justify-content:stretch}}.modal-card--meeting,.direct-call-modal{border-radius:26px;box-shadow:0 30px 70px #00000057}.meeting-modal-head,.direct-call-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.meeting-modal-head .modal-title,.direct-call-head .modal-title{margin:0;line-height:1.12}.modal-body--meeting,.direct-call-stage{min-height:0}.jitsi-shell{position:relative;min-height:520px;border-radius:22px;overflow:hidden;isolation:isolate;background:#05090f;border:1px solid rgba(255,255,255,.06)}.jitsi-container{position:relative;width:100%;height:100%;min-height:inherit;background:#05090f}.meeting-loader,.meeting-error{position:absolute;top:0;right:0;bottom:0;left:0;z-index:7;display:grid;place-items:center;gap:.9rem;padding:1.5rem;text-align:center;background:#05090f7a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.meeting-loader{color:#ffffffeb}.meeting-loader__spinner{width:2.35rem;height:2.35rem;border-radius:999px;border:2px solid rgba(255,255,255,.16);border-top-color:#fffffff2;animation:meeting-spin .9s linear infinite}.meeting-error{align-content:center;color:#fff}.meeting-error strong,.meeting-error p{margin:0}.direct-call-stage{display:flex;flex-direction:column;gap:.9rem;flex:1;min-height:0;padding:0}.direct-call-shell .jitsi-shell{min-height:100%;height:100%;border:0;border-radius:inherit}.direct-call-actions{display:flex;justify-content:flex-end}.call-invite-card{width:min(520px,calc(100vw - 1rem));display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1rem 1.15rem;padding:1.2rem;border-radius:24px;background:linear-gradient(180deg,#102444fa,#0b1b34fa)}:root[data-theme=light] .call-invite-card{background:linear-gradient(180deg,#f8fafffc,#eef3fafc)}.call-invite-card__copy{min-width:0;display:grid;gap:.25rem;justify-items:start;text-align:left}.call-invite-card__copy .lead-text,.call-invite-card__copy .modal-title{margin:0}@media(max-width:900px){.modal-card--meeting,.direct-call-modal{width:calc(100vw - .75rem);height:calc(100vh - .75rem);padding:.75rem;gap:.75rem;border-radius:22px}.jitsi-shell{min-height:420px}.jitsi-mask--logo{top:8px;left:8px;width:92px;height:62px;border-radius:16px}.jitsi-shell--direct .jitsi-mask--top{height:52px}.call-invite-card{grid-template-columns:1fr;justify-items:center;text-align:center}.call-invite-card__copy{justify-items:center;text-align:center}.call-invite-card__actions{width:100%;justify-content:stretch}.call-invite-card__actions .button,.direct-call-actions .button{flex:1 1 0;width:100%}}.meeting-modal-head .modal-title,.direct-call-head .modal-title,.call-invite-card__copy .modal-title{margin-bottom:0}.meeting-modal-foot{display:flex;justify-content:flex-end;padding-top:.9rem}.modal-card--meeting{width:min(1280px,calc(100vw - 1rem));height:min(900px,calc(100vh - 1rem));padding:1rem 1rem .95rem}.jitsi-shell{isolation:isolate}.jitsi-shell:before,.jitsi-shell:after{content:"";position:absolute;pointer-events:none;z-index:2}.jitsi-shell--room:before,.jitsi-shell--guest:before{top:0;left:0;width:170px;height:86px;background:linear-gradient(135deg,#05090ffa,#05090ffa 72%,#05090f00)}.jitsi-shell--call:before{top:0;left:0;right:0;height:76px;background:linear-gradient(180deg,#05090ff5,#05090fe6 56%,#05090f00)}.jitsi-shell--call:after{top:0;left:0;width:170px;height:86px;background:linear-gradient(135deg,#05090ffa,#05090ffa 72%,#05090f00)}.jitsi-embed-frame{border:0}.direct-call-modal{width:min(1180px,calc(100vw - 1rem));height:min(860px,calc(100vh - 1rem));padding:1rem 1rem .95rem}.direct-call-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.1rem 0 .8rem}.direct-call-stage{display:flex;flex:1;min-height:0;flex-direction:column;gap:.9rem}.direct-call-shell{display:flex;flex:1;min-height:0;border-radius:22px;overflow:hidden;border:1px solid var(--line);background:#05090f}.direct-call-shell .jitsi-shell{flex:1;min-height:100%;border:0;border-radius:inherit}.direct-call-actions,.meeting-modal-foot{flex-shrink:0}.call-invite-card{width:min(520px,calc(100vw - 1rem));border-radius:28px;gap:1rem 1.2rem;padding:1.25rem;align-items:center}.call-invite-card__avatar{width:4.25rem;height:4.25rem;font-size:1.38rem}.call-invite-card__copy{gap:.22rem}.call-invite-card__copy .lead-text{color:var(--text-soft)}.call-invite-card__actions{margin-top:.2rem}@media(max-width:900px){.modal-card--meeting,.direct-call-modal{width:calc(100vw - .6rem);height:calc(100vh - .6rem);padding:.7rem .7rem .75rem;border-radius:26px}.meeting-modal-head,.direct-call-head{padding-bottom:.65rem}.meeting-modal-foot{padding-top:.7rem}.meeting-modal-foot .button,.direct-call-actions .button{width:100%}.jitsi-shell--room:before,.jitsi-shell--guest:before,.jitsi-shell--call:after{width:128px;height:68px}.jitsi-shell--call:before{height:64px}.call-invite-card{padding:1rem;gap:.85rem}}.modal-card--meeting,.direct-call-modal{border-radius:28px;box-shadow:0 34px 90px #0000006b}.meeting-modal-head,.direct-call-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.meeting-modal-foot{display:flex;justify-content:flex-end;padding-top:.1rem}.meeting-modal-foot .button{min-width:190px}.jitsi-shell{position:relative;isolation:isolate;min-height:100%;border-radius:24px;overflow:hidden;background:#05090f}.jitsi-container iframe{display:block;width:100%;height:100%;border:0;background:#05090f}.jitsi-logo-mask{position:absolute;top:1rem;left:.75rem;width:6.8rem;height:4.25rem;z-index:4;pointer-events:none;background:linear-gradient(180deg,#05090ffa,#05090f);border-radius:0 0 1rem;box-shadow:1.45rem 0 1.35rem #05090ffa,0 1.2rem 1rem #05090ffa}.meeting-loader,.meeting-error{z-index:5}.direct-call-shell{border-radius:24px;overflow:hidden;background:#05090f;border:1px solid var(--line);box-shadow:inset 0 0 0 1px #ffffff08}.direct-call-shell>.jitsi-shell{min-height:100%;border:0;border-radius:inherit;box-shadow:none}.direct-call-shell .meeting-loader,.direct-call-shell .meeting-error{background:#05090f6b}.call-invite-card{width:min(500px,calc(100vw - 1rem));border-radius:28px;padding:1.2rem;gap:1rem;align-items:center;justify-items:center;text-align:center}.call-invite-card__avatar{width:4.3rem;height:4.3rem;font-size:1.38rem}.call-invite-card__copy{justify-items:center;text-align:center}.call-invite-card__actions{width:100%;display:flex;justify-content:center;gap:.75rem}.call-invite-card__actions .button{min-width:160px}@media(max-width:900px){.modal-card--meeting,.direct-call-modal{width:calc(100vw - .6rem);height:calc(100vh - .6rem);padding:.75rem;border-radius:26px}.meeting-modal-foot,.direct-call-actions,.meeting-modal-foot .button,.direct-call-actions .button{width:100%}.jitsi-logo-mask{top:.9rem;left:.6rem;width:5.9rem;height:3.9rem}}@media(max-width:640px){.modal-backdrop,.direct-call-backdrop{padding:.35rem}.modal-card--meeting,.direct-call-modal{width:100%;height:calc(100vh - .35rem);padding:.7rem;border-radius:24px}.meeting-modal-head,.direct-call-head{padding-bottom:.65rem}.jitsi-logo-mask{top:.8rem;left:.5rem;width:5.2rem;height:3.45rem}.call-invite-card__actions{flex-direction:column;align-items:stretch}.call-invite-card__actions .button{width:100%;min-width:0}}.jitsi-brand-mask{position:absolute;top:1rem;left:.75rem;width:6.8rem;height:4.25rem;z-index:4;pointer-events:none;background:linear-gradient(180deg,#05090ffa,#05090f);border-radius:0 0 1rem;box-shadow:1.45rem 0 1.35rem #05090ffa,0 1.2rem 1rem #05090ffa}@media(max-width:900px){.jitsi-brand-mask{top:.9rem;left:.6rem;width:5.9rem;height:3.9rem}}@media(max-width:640px){.jitsi-brand-mask{top:.8rem;left:.5rem;width:5.2rem;height:3.45rem}}.jitsi-shell{position:relative;min-height:520px;border-radius:22px;overflow:hidden;isolation:isolate;background:#05090f}.jitsi-container{width:100%;height:100%;min-height:inherit;background:#05090f}.jitsi-mask{position:absolute;z-index:4;pointer-events:none}.jitsi-mask--logo{top:10px;left:10px;width:112px;height:74px;border-radius:18px;background:linear-gradient(180deg,#05090ffb,#05090f),radial-gradient(circle at top left,rgba(255,255,255,.06),transparent 58%);box-shadow:0 0 0 1px #ffffff05,24px 0 18px #05090ffa,0 18px 22px #05090ff0}.jitsi-shell--direct .jitsi-mask--top{top:0;left:0;right:0;height:58px;background:linear-gradient(180deg,#05090ff5,#05090fd1,#05090f00)}.direct-call-modal{width:min(1120px,calc(100vw - 1rem));height:min(820px,calc(100vh - 1rem));display:flex;flex-direction:column;gap:1rem;padding:1rem;overflow:hidden}.direct-call-stage{display:flex;flex-direction:column;gap:.9rem;flex:1;min-height:0}.direct-call-shell{position:relative;flex:1;min-height:0;border-radius:22px;overflow:hidden;background:#05090f;border:1px solid rgba(255,255,255,.06)}.direct-call-shell .jitsi-shell{min-height:100%;height:100%;border-radius:inherit}.call-invite-card{width:min(520px,calc(100vw - 1rem));display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1rem 1.15rem;border-radius:24px}.call-invite-card__copy{justify-items:start;text-align:left}.call-invite-card__actions{grid-column:1 / -1;justify-content:flex-end;gap:.75rem}@media(max-width:900px){.modal-card--meeting,.direct-call-modal{width:calc(100vw - .75rem);height:calc(100vh - .75rem);padding:.75rem;gap:.75rem}.jitsi-shell{min-height:420px}.jitsi-mask--logo{top:8px;left:8px;width:92px;height:62px;border-radius:16px}.jitsi-shell--direct .jitsi-mask--top{height:52px}.call-invite-card{grid-template-columns:1fr;justify-items:center;text-align:center}.call-invite-card__copy{justify-items:center;text-align:center}.call-invite-card__actions{width:100%;justify-content:stretch}}
