:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#0f172a;background:#f8fafc}*{box-sizing:border-box}body{margin:0;background:#f8fafc}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.65}svg{width:16px;height:16px;flex:0 0 auto}.admin-shell{min-width:1120px;display:grid;grid-template-columns:260px minmax(0,1fr)}.admin-shell,.meeting-launch-shell{min-height:100vh;background:#f8fafc}.meeting-launch-shell{display:flex;align-items:center;justify-content:center;padding:32px}.meeting-launch-panel{width:min(520px,100%);display:grid;justify-items:center;gap:18px;padding:32px;border:1px solid #dde6f3;border-radius:8px;background:#ffffff}.meeting-launch-mark{width:52px;height:52px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:#ffffff;background:#005288;font-size:16px;font-weight:900;letter-spacing:0}.meeting-launch-copy{display:grid;justify-items:center;gap:8px;text-align:center}.meeting-launch-kicker{color:#005288;font-size:12px;font-weight:800}.meeting-launch-copy h1{max-width:420px;font-size:24px;line-height:1.3}.meeting-launch-copy p{max-width:420px}.meeting-launch-code{width:100%;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid #dde6f3;border-radius:6px;color:#0f172a;background:#f8fafc;font-size:13px;font-weight:900;letter-spacing:0}.meeting-launch-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.meeting-launch-primary,.meeting-launch-secondary{min-height:40px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;padding:0 14px;font-size:13px;font-weight:800;text-decoration:none}.meeting-launch-primary{border:0;color:#ffffff;background:#005288}.meeting-launch-secondary{border:1px solid #cbd5e1;color:#0f172a;background:#ffffff}@media (max-width:560px){.meeting-launch-shell{padding:20px}.meeting-launch-panel{padding:24px}.meeting-launch-actions{grid-template-columns:1fr}}.admin-login-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px;background:#f8fafc}.admin-login-card{width:440px;display:grid;justify-items:center;gap:18px;padding:32px;border:1px solid #dde6f3;border-radius:8px;background:#ffffff}.admin-login-card .admin-notice,.admin-login-card .field,.admin-login-card .primary-button{width:100%}.login-mark{width:54px;height:54px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:#005288;background:#e6f1f8}.login-mark svg{width:24px;height:24px}.login-mark .login-mark-image{border-radius:10px}.brand .logo .logo-image,.login-mark .login-mark-image{width:100%;height:100%;object-fit:contain}.sidebar{display:flex;flex-direction:column;gap:18px;padding:20px;border-right:1px solid #dde6f3;background:#ffffff}.sidebar-footer{margin-top:auto;display:grid;gap:10px;padding-top:18px;border-top:1px solid #dde6f3}.sidebar-footer span{min-width:0;overflow:hidden;color:#64748b;font-size:12px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.sidebar-footer button{height:36px;border:1px solid #cbd5e1;border-radius:6px;justify-content:center;gap:8px;color:#0f172a;background:#ffffff;font-size:13px;font-weight:700}.brand,.sidebar-footer button{display:flex;align-items:center}.brand{gap:10px;min-height:36px}.brand div{display:grid;gap:1px}.brand strong{font-size:14px;line-height:1.35}.brand span:last-child{color:#64748b;font-size:11px}.logo{width:36px;height:36px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:#ffffff;background:#005288}.logo svg{width:18px;height:18px}nav{display:grid;gap:6px}nav a,nav button{height:38px;display:flex;align-items:center;gap:10px;border:0;border-radius:6px;padding:0 10px;color:#0f172a;text-decoration:none;font-size:13px;font-weight:700;text-align:left;background:transparent}nav a svg,nav button svg{color:#64748b}nav a.active,nav button.active{color:#005288;background:#e6f1f8}nav a.active svg,nav button.active svg{color:#005288}.admin-content{min-width:0;display:flex;flex-direction:column;gap:22px;padding:32px}.admin-header{min-height:41px;justify-content:space-between;gap:24px}.admin-actions,.admin-header{display:flex;align-items:center}.admin-actions{gap:10px}h1,h2,p{margin:0}h1{font-size:22px}h1,h2{line-height:1.35}h2{font-size:16px}p{color:#64748b;font-size:14px;line-height:1.45}.danger-button,.primary-button,.row-button,.secondary-button{height:40px;border:0;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;color:#ffffff;background:#005288;font-size:13px;font-weight:700}.secondary-button{color:#0f172a;background:#ffffff;border:1px solid #cbd5e1}.danger-button{color:#ffffff;background:#dc2626}.danger-button:disabled,.mini-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.68}.primary-button.full{width:100%}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.metric-card,.table-card{border:1px solid #dde6f3;border-radius:8px;background:#ffffff}.metric-card{display:grid;gap:4px;min-height:114px;align-content:center;padding:18px}.metric-card span{color:#64748b;font-size:12px;font-weight:700;line-height:1.35}.metric-card strong{color:#0f172a;font-size:28px;line-height:1.35}.metric-card small{color:#94a3b8;font-size:12px}.admin-notice{min-height:42px;gap:10px;padding:0 14px;border:1px solid #b3d4e8;border-radius:8px;color:#003b66;background:#e6f1f8;font-size:13px;font-weight:600}.admin-notice,.modal-backdrop{display:flex;align-items:center}.modal-backdrop{position:fixed;inset:0;z-index:50;justify-content:center;padding:32px;background:rgba(15,23,42,.34)}.modal-panel{width:min(560px,calc(100vw - 64px));max-height:calc(100vh - 64px);overflow:auto;border:1px solid #dde6f3;border-radius:8px;background:#ffffff;box-shadow:0 24px 70px rgba(15,23,42,.18)}.modal-header{height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 24px;border-bottom:1px solid #dde6f3}.modal-header h2{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-button{width:36px;height:36px;border:0;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;color:#64748b;background:transparent}.icon-button:hover{color:#0f172a;background:#f1f5f9}.modal-form{display:grid;gap:16px;padding:24px}.modal-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.confirmation-body{display:grid;gap:16px;padding:18px}.confirmation-icon{width:42px;height:42px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:#dc2626;background:#fee2e2}.confirmation-icon.info{color:#005288;background:#e6f1f8}.confirmation-icon.ok{color:#16a34a;background:#dcfce7}.confirmation-icon.warning{color:#d97706;background:#fef3c7}.confirmation-icon.danger{color:#dc2626;background:#fee2e2}.confirmation-body h2{margin:0 0 4px;color:#0f172a}.confirmation-body p{margin:0}.confirmation-actions{display:flex;justify-content:flex-end;gap:10px}.table-card{max-height:calc(100vh - 264px);overflow:auto}.table-card.full-width{width:100%}.table-row{min-height:68px;display:grid;grid-template-columns:minmax(86px,1fr) minmax(126px,1.4fr) 72px 70px 78px 94px;align-items:center;gap:0;border-top:1px solid #dde6f3}.table-row>*{min-width:0;overflow:hidden;padding:0 18px;font-size:12px;text-overflow:ellipsis}.table-row.users-table{grid-template-columns:minmax(116px,210px) minmax(160px,1fr) minmax(86px,116px) minmax(96px,128px) minmax(120px,154px) minmax(170px,208px)}.table-row.meetings-table{grid-template-columns:minmax(180px,1.4fr) minmax(110px,.8fr) 126px 84px 88px 88px 92px 96px}.table-row.identities-table{grid-template-columns:minmax(120px,1.1fr) minmax(84px,.75fr) 76px 92px 86px 62px minmax(144px,1fr)}.table-row.audit-table{grid-template-columns:minmax(150px,1fr) minmax(100px,.7fr) minmax(140px,1fr) 132px minmax(180px,1.2fr)}.table-head{position:sticky;top:0;z-index:1;min-height:48px;border-top:0;color:#64748b;background:#f8fafc;font-weight:700}.rank,.status{width:fit-content;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:700;line-height:1.2}.rank.host{color:#005288;background:#e6f1f8}.rank.admin{color:#7c3aed;background:#f3e8ff}.rank.user{color:#64748b;background:#f1f5f9}.status.active{color:#16a34a;background:#dcfce7}.status.pending{color:#d97706;background:#fef3c7}.status.disabled{color:#dc2626;background:#fee2e2}.row-button{width:fit-content;height:30px;color:#005288;background:#e6f1f8}.rank-select,.row-button{font-size:12px;font-weight:700}.rank-select{height:32px;margin:0 8px;border:1px solid #cbd5e1;border-radius:6px;padding:0 8px;color:#0f172a;background:#ffffff}.table-actions{display:flex;align-items:center;gap:6px;padding-left:10px;padding-right:10px}.table-actions .rank-select{min-width:92px;margin:0}.mini-button{height:30px;border:1px solid #cbd5e1;border-radius:6px;min-width:72px;padding:0 8px;color:#0f172a;background:#ffffff;font-size:12px;font-weight:800}.mini-button.primary{color:#ffffff;border-color:#005288;background:#005288}.mini-button.danger{color:#dc2626;border-color:#fecaca;background:#fff7f7}.status-chip{width:fit-content;border-radius:6px;padding:5px 8px;color:#475569;background:#f1f5f9}.status-chip.ok{color:#15803d;background:#dcfce7}.status-chip.warning{color:#b45309;background:#fef3c7}.field{display:grid;gap:7px}.field>span{color:#0f172a;font-size:12px;font-weight:600}.field>div{height:40px;display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid #dde6f3;border-radius:6px;background:#ffffff}.field svg{color:#94a3b8}.field input{min-width:0;width:100%;border:0;outline:0;color:#0f172a;background:transparent;font-size:14px}.field input[type=file]{font-size:12px}.field input:disabled{color:#94a3b8}.field select{min-width:0;width:100%;border:0;outline:0;color:#0f172a;background:transparent;font-size:14px}.file-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #b3d4e8;border-radius:6px;color:#003b66;background:#e6f1f8;font-size:12px}.file-summary span,.file-summary strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-summary span{color:#005288;font-weight:700}.empty-row{min-height:96px;display:flex;align-items:center;padding:0 14px;color:#64748b;border-top:1px solid #dde6f3;font-size:13px;font-weight:600}.muted-action{color:#64748b;font-weight:700}.delivery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.delivery-card{min-height:190px;display:grid;align-content:start;gap:14px;padding:18px;border:1px solid #dde6f3;border-radius:8px;background:#ffffff}.delivery-card p,.delivery-card small,.delivery-card span:last-child{color:#64748b;font-size:12px;line-height:1.4}.delivery-statuses{display:flex;flex-wrap:wrap;gap:8px}.delivery-icon{width:40px;height:40px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:#005288;background:#e6f1f8}.empty-row.standalone{border:1px solid #dde6f3;border-radius:8px;background:#ffffff}.guest-room-shell{min-height:100svh;color:#f8fafc}.guest-room-shell,.meeting-launch-shell.guest-room-shell{background:linear-gradient(145deg,rgba(37,99,235,.12),transparent 36%),#06080d}.meeting-launch-shell.guest-room-shell{align-items:stretch;padding:24px}.meeting-launch-panel.guest-prejoin-panel{width:min(1180px,100%);min-height:min(760px,calc(100svh - 48px));grid-template-columns:minmax(240px,.78fr) minmax(320px,1fr) minmax(300px,.86fr);justify-items:stretch;align-items:center;gap:24px;margin:auto;padding:24px;border-color:rgba(148,163,184,.24);background:rgba(15,23,42,.78);box-shadow:0 24px 80px rgba(0,0,0,.34)}.guest-prejoin-copy{display:grid;align-content:center;gap:12px;min-width:0}.guest-call-header h1,.guest-error-panel h1,.guest-prejoin-copy h1,.guest-waiting-panel h1{color:#f8fafc}.guest-prejoin-copy h1{font-size:clamp(28px,4vw,44px);line-height:1.05}.guest-call-header p,.guest-error-panel p,.guest-prejoin-copy p,.guest-waiting-panel p{color:#94a3b8}.guest-room-kicker{color:#3a8fcf;font-size:12px;font-weight:900;letter-spacing:0;text-transform:uppercase}.guest-room-shell .meeting-launch-mark{color:#e6f1f8;background:#005288;box-shadow:0 14px 34px rgba(37,99,235,.26)}.guest-room-shell .meeting-launch-code{width:fit-content;min-width:160px;justify-content:flex-start;padding:0 14px;border-color:rgba(148,163,184,.24);color:#e2e8f0;background:rgba(15,23,42,.72)}.guest-preview-panel{display:grid;gap:12px;min-width:0}.guest-video-preview{position:relative;overflow:hidden;width:100%;aspect-ratio:16/10;border:1px solid rgba(148,163,184,.22);border-radius:8px;background:#020617}.guest-tile-video,.guest-video-preview video{width:100%;height:100%;display:block;object-fit:cover}.guest-empty-stage,.guest-preview-placeholder,.guest-tile-avatar{width:100%;height:100%;display:grid;place-items:center;gap:10px;color:#94a3b8;background:#0f172a;font-size:13px;font-weight:800}.guest-preview-placeholder svg{width:28px;height:28px;color:#cbd5e1}.guest-media-toggles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.guest-toggle{min-height:42px;border:1px solid rgba(148,163,184,.26);border-radius:6px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 12px;color:#cbd5e1;background:rgba(15,23,42,.84);font-size:13px;font-weight:800}.guest-toggle.active{color:#cfe2f0;border-color:rgba(96,165,250,.46);background:rgba(37,99,235,.18)}.guest-join-form{display:grid;align-content:center;gap:12px;min-width:0}.guest-field>span{color:#e2e8f0}.guest-field>div{border-color:rgba(148,163,184,.26);background:rgba(2,6,23,.62)}.guest-field input{color:#f8fafc}.guest-field input::placeholder{color:#64748b}.guest-prejoin-shell{height:100vh;height:100svh;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:20px;color:#f8fafc;background:linear-gradient(145deg,rgba(37,99,235,.12),transparent 36%),#06080d;touch-action:manipulation}.guest-prejoin-minimal{width:min(420px,100%);max-height:100%;display:flex;flex-direction:column;gap:16px;padding:24px;border:1px solid rgba(148,163,184,.24);border-radius:14px;background:rgba(15,23,42,.78);box-shadow:0 24px 80px rgba(0,0,0,.34);text-align:center}.guest-prejoin-minimal>.meeting-launch-mark{justify-self:center;align-self:center;margin:0 auto}.guest-prejoin-minimal>.guest-room-kicker{margin:-4px 0 -8px}.guest-prejoin-instruction{margin:0;color:#94a3b8;font-size:15px;font-weight:650;line-height:1.45}.guest-prejoin-minimal .guest-name-field,.guest-prejoin-minimal>.guest-media-toggles,.guest-prejoin-minimal>.guest-video-preview{display:none}.guest-prejoin-title{margin:0;color:#f8fafc;font-size:clamp(20px,4vw,26px);line-height:1.2;text-align:center}.guest-prejoin-minimal .guest-video-preview{aspect-ratio:16/10;min-height:0}.guest-prejoin-minimal .guest-join-form{gap:12px}.guest-prejoin-minimal .guest-field input{height:44px;width:100%;padding:0 14px;border:1px solid rgba(148,163,184,.26);border-radius:8px;color:#f8fafc;background:rgba(2,6,23,.62);font-size:15px;outline:0}.guest-prejoin-minimal .guest-field input::placeholder{color:#64748b}.guest-prejoin-minimal .meeting-launch-primary{min-height:46px;border:0;border-radius:8px;color:#ffffff;background:#005288;font-weight:800}.guest-verification-shell{min-height:100svh;display:grid;place-items:center;padding:20px;color:#f8fafc;background:linear-gradient(145deg,rgba(37,99,235,.12),transparent 36%),#06080d}.guest-verification-card{width:min(480px,100%);display:grid;gap:16px;padding:24px;border:1px solid rgba(148,163,184,.24);border-radius:14px;background:rgba(15,23,42,.88);box-shadow:0 24px 80px rgba(0,0,0,.34)}.guest-verification-title{margin:0;color:#f8fafc;font-size:24px;line-height:1.2;text-align:center}.guest-brand-lockup h1,.guest-brand-lockup p{margin:0}.guest-verification-instruction{margin:0;color:#cbd5e1;font-size:15px;line-height:1.45;text-align:center}.guest-verification-preview{aspect-ratio:4/3;overflow:hidden;border:1px solid rgba(96,165,250,.38);border-radius:12px;background:#020617}.guest-verification-preview video{width:100%;height:100%;display:block;object-fit:cover;transform:scaleX(-1)}.guest-capture-progress{display:flex;justify-content:center;gap:12px}.guest-capture-progress span{width:30px;height:30px;display:grid;place-items:center;border:1px solid rgba(148,163,184,.3);border-radius:999px;color:#64748b;font-size:12px;font-weight:800}.guest-capture-progress span.active{color:#cfe2f0;border-color:#3a8fcf}.guest-capture-progress span.complete{color:#ffffff;border-color:#005288;background:#005288}.guest-room-shell .meeting-launch-primary,.guest-room-shell .meeting-launch-secondary{min-height:44px;gap:8px}.guest-room-shell .meeting-launch-primary{color:#ffffff;background:#005288}.guest-room-shell .meeting-launch-secondary{border-color:rgba(148,163,184,.26);color:#cfe2f0;background:rgba(15,23,42,.64)}.host-open-button{color:#94a3b8!important;background:transparent!important}.meeting-launch-secondary.subtle{width:fit-content;justify-self:center;color:#cbd5e1;background:transparent}.guest-room-alert{min-height:42px;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(96,165,250,.32);border-radius:8px;color:#cfe2f0;background:rgba(37,99,235,.14);font-size:13px;font-weight:700;line-height:1.35}.guest-room-alert.success{border-color:rgba(34,197,94,.34);color:#bbf7d0;background:rgba(22,163,74,.16)}.guest-room-alert.danger{border-color:rgba(248,113,113,.36);color:#fecaca;background:rgba(220,38,38,.16)}.guest-room-alert svg{color:currentColor}.guest-room-call{min-height:100svh;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:14px;padding:18px 18px 110px;color:#f8fafc;background:#05070b}.guest-call-header{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:16px}.guest-call-header h1{max-width:min(720px,72vw);overflow:hidden;font-size:18px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.guest-connection-chip{width:fit-content;border-radius:999px;padding:7px 10px;color:#cbd5e1;background:rgba(148,163,184,.14);font-size:12px;font-weight:900;line-height:1}.guest-connection-chip.connected{color:#bbf7d0;background:rgba(22,163,74,.18)}.guest-connection-chip.connecting,.guest-connection-chip.reconnecting{color:#fde68a;background:rgba(217,119,6,.18)}.guest-video-grid{min-height:0;display:grid;gap:12px}.guest-video-grid.count-1{grid-template-columns:1fr}.guest-video-grid.count-2,.guest-video-grid.count-3,.guest-video-grid.count-4{grid-template-columns:repeat(2,minmax(0,1fr))}.guest-video-tile{position:relative;overflow:hidden;min-height:180px;border:1px solid rgba(148,163,184,.18);border-radius:8px;background:#0f172a}.guest-video-tile.local{border-color:rgba(96,165,250,.34)}.guest-tile-avatar{color:#e2e8f0;font-size:clamp(34px,6vw,72px);font-weight:900}.guest-tile-footer{position:absolute;left:10px;right:10px;bottom:10px;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid rgba(226,232,240,.12);border-radius:8px;background:rgba(2,6,23,.72);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.guest-tile-footer div{min-width:0;display:grid;gap:2px}.guest-tile-footer span,.guest-tile-footer strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guest-tile-footer strong{color:#f8fafc;font-size:13px}.guest-tile-footer div span{color:#94a3b8;font-size:11px;font-weight:800}.guest-mic-chip{width:32px;height:32px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:#bbf7d0;background:rgba(22,163,74,.22)}.guest-mic-chip.off{color:#fecaca;background:rgba(220,38,38,.22)}.guest-call-controls{position:fixed;z-index:40;left:50%;bottom:18px;display:flex;align-items:center;justify-content:center;gap:10px;width:min(620px,calc(100vw - 28px));min-height:68px;padding:10px;border:1px solid rgba(148,163,184,.2);border-radius:8px;background:rgba(15,23,42,.86);box-shadow:0 18px 44px rgba(0,0,0,.38);transform:translateX(-50%);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.guest-control-button{min-width:0;height:46px;border:1px solid rgba(148,163,184,.22);border-radius:6px;display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:1 1;padding:0 12px;color:#f8fafc;background:rgba(30,41,59,.9);font-size:13px;font-weight:900}.guest-control-button.off{color:#fecaca;background:rgba(127,29,29,.48)}.guest-control-button.leave{color:#ffffff;border-color:rgba(220,38,38,.62);background:#dc2626}.guest-error-panel,.guest-waiting-panel{width:min(520px,calc(100vw - 40px));display:grid;justify-items:center;gap:18px;margin:auto;padding:30px;border:1px solid rgba(148,163,184,.22);border-radius:8px;text-align:center;background:rgba(15,23,42,.78)}.guest-room-shell.error,.guest-room-shell.waiting{display:flex;align-items:center;justify-content:center;padding:24px}.guest-waiting-pulse span{border-radius:999px;background:#3a8fcf}.guest-waiting-pulse span:nth-child(2){animation-delay:.16s}.guest-waiting-pulse span:nth-child(3){animation-delay:.32s}.remote-audio-layer{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.spin{animation:guest-spin .9s linear infinite}@keyframes guest-spin{to{transform:rotate(1turn)}}@media (max-width:960px){.meeting-launch-panel.guest-prejoin-panel{grid-template-columns:1fr;align-content:start;min-height:auto}.guest-prejoin-copy h1{font-size:30px}.guest-video-grid.count-2,.guest-video-grid.count-3,.guest-video-grid.count-4{grid-template-columns:1fr}}@media (max-width:640px){.meeting-launch-shell.guest-room-shell{padding:14px}.meeting-launch-panel.guest-prejoin-panel{padding:16px;gap:18px}.guest-room-call{padding:12px 12px 102px}.guest-call-header{align-items:flex-start;flex-direction:column;gap:8px}.guest-call-header h1{max-width:100%;white-space:normal}.guest-video-tile{min-height:210px}.guest-call-controls{bottom:10px;width:calc(100vw - 20px);min-height:74px;gap:8px}.guest-control-button{height:52px;flex-direction:column;gap:4px;padding:0 6px;font-size:11px}}.guest-shell,.meeting-shell{--text:#0b1220;--muted:#667085;--border:#d6deea;--border-soft:rgba(149,164,188,0.46);--accent:#1f7bbf;--surface:#ffffff;--room-primary:#005288;--room-accent:#1f7bbf;--room-background:#f7faff;--success:#0f9f6e;--danger:#d92d20;--shadow:0 24px 70px rgba(20,37,68,0.14)}.guest-shell .brand-mark,.meeting-shell .brand-mark{display:grid;place-items:center;border:1px solid var(--border);border-radius:16px;background:linear-gradient(180deg,#ffffff,#eef4ff);color:var(--room-accent);font-weight:800;box-shadow:inset 0 1px 0 rgba(255,255,255,.9),var(--shadow);overflow:hidden;width:58px;height:58px}.guest-shell .eyeline,.meeting-shell .eyeline{display:block;margin:0;color:var(--accent);font-family:JetBrains Mono,SFMono-Regular,Consolas,monospace;font-size:12px;font-weight:700;line-height:1.2;text-transform:uppercase}.guest-shell .primary-button,.meeting-shell .primary-button{height:58px;margin-top:4px;border:0;border-radius:9999px;background:linear-gradient(135deg,color-mix(in srgb,var(--room-primary) 70%,#071120),color-mix(in srgb,var(--accent) 58%,#071120));color:#ffffff;cursor:pointer;font-weight:850;box-shadow:0 18px 34px color-mix(in srgb,var(--room-primary) 28%,transparent)}.guest-shell .primary-button:disabled,.meeting-shell .primary-button:disabled{cursor:not-allowed;opacity:.46;box-shadow:none}.guest-shell .ghost-button,.meeting-shell .ghost-button{min-width:76px;height:44px;padding:0 16px;border:1px solid var(--border);border-radius:8px;background:#ffffff;color:var(--text);cursor:pointer;font-weight:750}.guest-shell .ghost-button:hover,.meeting-shell .ghost-button:hover{border-color:var(--accent)}.guest-shell .error-banner,.meeting-shell .error-banner{padding:13px 14px;border:1px solid color-mix(in srgb,var(--danger) 45%,transparent);border-radius:8px;background:color-mix(in srgb,var(--danger) 12%,transparent);color:#7a271a;font-size:14px;font-weight:650;overflow-wrap:anywhere}.guest-shell .guest-note{padding:12px 14px;border:1px solid color-mix(in srgb,var(--success) 40%,transparent);border-radius:8px;background:color-mix(in srgb,var(--success) 10%,transparent);color:#05603a;font-size:14px;font-weight:650}.guest-shell{position:relative;display:grid;min-height:100vh;min-height:100dvh;place-items:center;padding:24px;overflow:hidden;background:radial-gradient(circle at 22% 12%,color-mix(in srgb,var(--room-primary) 24%,transparent),transparent 28%),radial-gradient(circle at 82% 80%,color-mix(in srgb,var(--room-accent) 18%,transparent),transparent 26%),linear-gradient(180deg,#ffffff 0,var(--room-background) 100%)}.guest-shell:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.2;background-image:linear-gradient(rgba(37,117,252,.08) 1px,transparent 0),linear-gradient(90deg,rgba(37,117,252,.08) 1px,transparent 0);background-size:44px 44px}.guest-card{position:relative;z-index:1;display:grid;width:min(100%,420px);gap:20px;padding:24px;border:1px solid var(--border-soft);border-radius:16px;background:rgba(255,255,255,.9);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);text-align:center}.guest-brand-lockup{display:flex;flex-direction:column;align-items:center;gap:14px;min-width:0}.guest-brand-lockup .brand-mark{width:76px;height:76px;border-radius:20px;flex:0 0 76px;font-size:32px}.guest-brand-lockup h1{margin:0;color:var(--text);font-size:30px;font-weight:600;line-height:1.08;word-break:break-word}.guest-instruction{margin:0;color:var(--muted);font-size:16px;font-weight:650;line-height:1.4}.guest-form{display:grid;gap:12px;text-align:left}.guest-form label{display:grid;gap:8px;color:var(--muted);font-size:14px;font-weight:650}.guest-form input{width:100%;height:50px;padding:0 14px;border:1px solid var(--border);border-radius:8px;background:#ffffff;color:var(--text);outline:0}.guest-form input:focus{border-color:var(--room-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--room-primary) 20%,transparent)}.guest-waiting-pulse{display:flex;justify-content:center;gap:8px}.guest-waiting-pulse span{width:10px;height:10px;border-radius:50%;background:var(--room-primary);animation:guest-pulse 1.2s ease-in-out infinite}.guest-waiting-pulse span:nth-child(2){animation-delay:.2s}.guest-waiting-pulse span:nth-child(3){animation-delay:.4s}@keyframes guest-pulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}.meeting-shell{min-height:100vh;padding:18px;background:radial-gradient(circle at top left,color-mix(in srgb,var(--room-primary) 28%,transparent),transparent 30%),var(--room-background);color:#0b1220}.meeting-topbar{justify-content:space-between;gap:18px;margin:0 auto 14px;max-width:1280px;padding:10px 0}.meeting-brand,.meeting-topbar{display:flex;align-items:center}.meeting-brand{gap:14px}.meeting-brand .brand-mark{border-color:rgba(149,164,188,.46);background:rgba(255,255,255,.84);color:var(--room-accent)}.meeting-topbar h1{margin:2px 0 0;font-size:28px;font-weight:600}.meeting-actions{display:flex;align-items:center;gap:12px}.status-chip{display:inline-flex;height:34px;align-items:center;padding:0 12px;border-radius:9999px;background:color-mix(in srgb,var(--room-accent) 16%,transparent);color:var(--room-accent);font-family:JetBrains Mono,SFMono-Regular,Consolas,monospace;font-size:12px;font-weight:800}.status-chip.is-live{background:color-mix(in srgb,var(--success) 16%,transparent);color:var(--success)}.meeting-stage{position:relative;height:calc(100vh - 106px);max-width:1280px;margin:0 auto;overflow:hidden;border:1px solid var(--border-soft);border-radius:16px;background:color-mix(in srgb,var(--room-background) 88%,#ffffff)}.meeting-stage .lk-room-container,.meeting-stage [data-lk-theme]{height:100%}.meeting-alert{display:flex;align-items:center;gap:10px;max-width:1280px;margin:0 auto 12px;padding:12px 14px;border-radius:12px;border:1px solid var(--border-soft);background:rgba(255,255,255,.9);color:var(--muted);font-weight:650}.meeting-alert.danger{border-color:color-mix(in srgb,var(--danger) 45%,transparent);background:color-mix(in srgb,var(--danger) 10%,transparent);color:#7a271a}.guest-empty-stage{display:grid;place-items:center;gap:12px;height:100%;color:var(--muted)}.identity-capture-overlay{position:fixed;inset:0;z-index:40;display:grid;place-items:center;padding:24px;background:rgba(11,18,32,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.identity-capture-card{display:grid;gap:14px;width:min(100%,460px);padding:24px;border:1px solid var(--border-soft);border-radius:16px;background:#ffffff;box-shadow:var(--shadow);text-align:center}.identity-capture-card h2{margin:0;font-size:22px;font-weight:600;color:var(--text)}.identity-capture-instruction{margin:0;color:var(--muted);font-size:14px;line-height:1.4}.identity-capture-preview{aspect-ratio:4/3;overflow:hidden;border-radius:12px;border:1px solid var(--border-soft);background:#0b1220}.identity-capture-preview video{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.guest-verification-preview.document video,.identity-capture-preview.document video{transform:none}.identity-capture-preview .guest-preview-placeholder{display:grid;place-items:center;gap:8px;height:100%;color:rgba(255,255,255,.72)}.identity-capture-progress{display:flex;justify-content:center;gap:10px}.identity-capture-progress span{width:34px;height:6px;border-radius:9999px;background:var(--border)}.identity-capture-progress span.done{background:var(--room-primary)}@media (max-width:620px){.meeting-topbar{flex-direction:column;align-items:flex-start}.meeting-stage{height:calc(100vh - 168px)}.guest-card{padding:18px}.guest-brand-lockup .brand-mark{width:64px;height:64px;flex-basis:64px;border-radius:18px;font-size:28px}.guest-brand-lockup h1{font-size:24px}}.guest-shell.app-shell{--muted:#63738a;--muted-strong:#334155;--border:rgba(0,82,136,0.14);--border-strong:rgba(0,82,136,0.24);--accent:#005288;--accent-2:#0072b5;--panel:#ffffff;--radius:18px;--shadow:0 18px 54px rgba(0,82,136,0.1);display:block;min-height:100vh;padding:0 28px 32px;overflow:visible;background:linear-gradient(180deg,rgba(226,240,249,.72),rgba(255,255,255,0) 360px),radial-gradient(circle at 15% 12%,rgba(0,114,181,.12),transparent 30%),radial-gradient(circle at 90% 4%,rgba(58,143,207,.14),transparent 24%),#f6f9fd}.guest-shell.app-shell:before{display:none}.guest-shell .topbar{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 -28px 32px;padding:54px max(28px,calc((100vw - 1240px) / 2 + 28px)) 18px;color:#ffffff;background:linear-gradient(90deg,#005288,#0072b5 58%,#003b66);box-shadow:0 8px 24px rgba(0,82,136,.14)}.guest-shell .topbar:before{content:"Servicios oficiales de USCIS";position:absolute;inset:0 0 auto;height:32px;display:flex;align-items:center;padding-left:max(28px,calc((100vw - 1240px) / 2 + 28px));background:#0072b5;color:#ffffff;font-size:13px;font-weight:850;letter-spacing:.02em}.guest-shell .topbar:after{content:"";position:absolute;inset:auto 0 0;height:6px;background:linear-gradient(90deg,#005288 0 50%,#3a8fcf 50% 100%)}.guest-shell .brand{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:58px;padding:9px 16px;border:1px solid rgba(255,255,255,.82);border-radius:18px;background:#ffffff;box-shadow:0 12px 28px rgba(0,59,102,.16)}.guest-shell .brand-logo{display:block;width:min(226px,56vw);height:auto;object-fit:contain}.guest-shell .panel{border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(180deg,var(--panel),#fbfdff);box-shadow:var(--shadow)}.guest-shell .panel-pad{padding:22px}.guest-shell .card-title{margin:0 0 8px;font-size:21px;line-height:1.12;letter-spacing:-.035em;color:#1f2937}.guest-shell .card-copy{margin:0;color:var(--muted);line-height:1.55}.guest-shell .status-pill{display:inline-flex;align-items:center;white-space:nowrap;border:1px solid var(--border);border-radius:999px;padding:7px 10px;background:#eef5ff;color:var(--muted-strong);font-size:12px;font-weight:850}.guest-shell .status-pill[data-tone=success]{color:#064e3b;background:rgba(0,154,91,.12);border-color:rgba(0,154,91,.22)}.guest-shell .status-pill[data-tone=warning]{color:#6a4b00;background:rgba(255,210,0,.22);border-color:rgba(255,210,0,.48)}.guest-shell .btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:1px solid transparent;border-radius:999px;padding:11px 16px;color:#ffffff;background:var(--accent-2);cursor:pointer;font-size:14px;font-weight:850;line-height:1;transition:transform .15s ease,background .15s ease}.guest-shell .btn:hover{transform:translateY(-1px)}.guest-shell .btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.guest-shell .error{color:#991b1b;margin:0}.guest-shell .guest-auto-join{display:grid;gap:12px;width:min(100%,560px);margin:12vh auto 0;text-align:center}.guest-shell .guest-auto-join .status-pill{justify-self:center}.guest-shell .guest-auto-join-name{display:grid;gap:8px;text-align:left;color:var(--muted);font-size:14px;font-weight:650}.guest-shell .guest-auto-join-name input{width:100%;height:46px;padding:0 14px;border:1px solid var(--border);border-radius:12px;background:#ffffff;color:#1f2937;outline:0}.guest-shell .guest-auto-join-name input:focus{border-color:var(--room-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--room-primary) 20%,transparent)}.guest-shell .guest-auto-join-name input[readonly]{cursor:default;border-color:#cbd5e1;background:#f3f7fb;color:#0f3155;font-weight:700}.guest-shell .guest-email-form{display:grid;gap:10px;margin-top:6px}.guest-shell .guest-email-form input{width:100%;height:46px;padding:0 14px;border:1px solid var(--border);border-radius:10px;background:#ffffff;color:#1f2937;outline:0}.guest-shell .guest-email-form .btn{justify-self:center}.meeting-shell .brand-logo-room{display:block;height:42px;width:auto;object-fit:contain}