@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@500;600;700&family=Inter:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800;900&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#f8fafc;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--canvas:#080c16;--canvas-subtle:#0d1424;--paper:#111a2e;--paper-elevated:#16223b;--paper-glass:#111a2ebf;--paper-glass-hover:#16223be0;--ink:#fff;--ink-secondary:#cbd5e1;--muted:#94a3b8;--line:#ffffff14;--line-bright:#ffffff29;--red:#ff3b5c;--red-soft:#ff3b5c26;--red-glow:#ff3b5c80;--blue:#0095ff;--blue-soft:#0095ff26;--blue-glow:#0095ff80;--yellow:#ffb800;--yellow-soft:#ffb80026;--yellow-glow:#ffb80080;--green:#00e599;--green-soft:#00e59926;--green-glow:#00e5998c;--danger:#ff4757;--shadow:#0009;--glass-shadow:0 20px 48px -10px #000000b3;--glow-emerald:0 0 25px #00e59966;--glow-blue:0 0 25px #0095ff66;--surface:#111a2e;--forest:#00e599;--forest-hover:#10b981;--stage:#080c16;--stage-raised:#111a2e;--mint:#00e599;--coral:#ff3b5c;--gold:#ffb800;--hairline:#ffffff14;--hairline-dark:#ffffff1f;background:#080c16;font-family:Plus Jakarta Sans,Outfit,Inter,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background-color:var(--canvas);min-width:320px;color:var(--ink);background-image:radial-gradient(70% 50% at 50% -10%,#0095ff24,#0000 70%),radial-gradient(60% 40% at 85% 60%,#00e59917,#0000 60%),radial-gradient(circle at 15% 75%,#ff3b5c14,#0000 50%);background-attachment:fixed}button,input,select{font:inherit}button{cursor:pointer;background:0 0;border:0}button:disabled{cursor:not-allowed;opacity:.45}:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.brand{color:var(--ink);letter-spacing:-.02em;align-items:center;gap:12px;font:800 23px/1 Outfit,sans-serif;text-decoration:none;display:inline-flex}.brand.compact{gap:9px;font-size:19px}.brand-mark{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #fff3;border-radius:10px;grid-template-columns:repeat(2,1fr);gap:3.5px;width:34px;height:34px;padding:4px;display:grid;box-shadow:0 4px 14px #0006}.brand.compact .brand-mark{border-radius:8px;gap:3px;width:28px;height:28px;padding:3px}.brand-mark i{border-radius:3px;display:block;box-shadow:0 0 8px}.brand-mark .green{background:var(--green);color:var(--green)}.brand-mark .blue{background:var(--blue);color:var(--blue)}.brand-mark .yellow{background:var(--yellow);color:var(--yellow)}.brand-mark .red{background:var(--red);color:var(--red)}.brand-name span{color:var(--green)}.eyebrow,.room-code,.transport-badge,.status-chip,.stage-meta,.panel-caption,.transport-hint,.visual-status-pill,.visual-room-pill{text-transform:uppercase;letter-spacing:.08em;font-family:IBM Plex Mono,monospace}.button,.primary-button,.secondary-button{border-radius:12px;justify-content:center;align-items:center;gap:9px;min-height:48px;padding:0 20px;font-size:14px;font-weight:700;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.button:hover:not(:disabled),.primary-button:hover:not(:disabled){transform:translateY(-2px)}.primary-button{color:#080c16;background:linear-gradient(135deg,#00e599 0%,#10b981 100%);border:1px solid #00e59980;box-shadow:0 0 22px #00e59966}.primary-button:hover:not(:disabled){background:linear-gradient(135deg,#26ebb0 0%,#00c986 100%);box-shadow:0 0 32px #00e599a6}.secondary-button{color:#fff;border:1px solid var(--line-bright);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff12}.secondary-button:hover:not(:disabled){background:#ffffff1f;border-color:#ffffff4d}.wide{width:100%}.home-nav,.landing-nav{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:50;background:#080c16bf;justify-content:space-between;align-items:center;height:84px;padding:0 clamp(20px,4vw,72px);display:flex;position:sticky;top:0}.home-nav-actions,.landing-account{align-items:center;gap:16px;display:flex}.online-badge{color:var(--green);text-transform:uppercase;letter-spacing:.06em;background:#00e59914;border:1px solid #00e5994d;border-radius:999px;align-items:center;gap:8px;padding:7px 14px;font:700 11px/1 IBM Plex Mono,monospace;display:inline-flex}.online-badge i,.live-dot{background:var(--green);width:7px;height:7px;box-shadow:0 0 8px var(--green);border-radius:50%;animation:2s ease-in-out infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.login-nav-btn{color:#fff;background:#0095ff1f;border:1px solid #0095ff66;border-radius:999px;align-items:center;gap:8px;min-height:40px;padding:0 18px;font-size:13px;font-weight:600;transition:all .18s;display:inline-flex;box-shadow:0 0 16px #0095ff40}.login-nav-btn:hover{border-color:var(--blue);background:#0095ff40;box-shadow:0 0 24px #0095ff73}.login-nav-btn.signout-btn{background:#ff3b5c1f;border-color:#ff3b5c66;box-shadow:0 0 14px #ff3b5c33}.login-nav-btn.signout-btn:hover{border-color:var(--red);background:#ff3b5c40}.account-logged-in{align-items:center;gap:12px;display:flex}.account-name{color:var(--ink-secondary);font-size:13px;font-weight:500}.home-page,.landing-page{min-height:100vh}.home-hero,.hero-grid{grid-template-columns:minmax(440px,.9fr) minmax(480px,1.1fr);align-items:center;gap:clamp(40px,5.5vw,90px);max-width:1540px;min-height:calc(100vh - 84px);margin:auto;padding:clamp(32px,5vw,68px) clamp(20px,4.5vw,72px);display:grid}.home-copy,.hero-copy{max-width:620px}.hero-badge-pill{color:var(--green);letter-spacing:.04em;background:#00e59914;border:1px solid #00e5994d;border-radius:999px;align-items:center;gap:8px;margin-bottom:20px;padding:6px 14px;font:700 12px Plus Jakarta Sans,sans-serif;display:inline-flex}.home-copy h1,.hero-copy h1{letter-spacing:-.045em;color:#fff;margin:0;font:900 clamp(44px,5.4vw,76px)/1.02 Outfit,Plus Jakarta Sans,sans-serif}.home-copy h1 span,.hero-copy h1 span{color:var(--green);display:block}.home-description,.hero-description{max-width:560px;color:var(--muted);margin:20px 0 28px;font-size:clamp(15px,1.15vw,17px);font-weight:400;line-height:1.6}.home-identity-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#111a2ea6;border:1px solid #ffffff1f;border-radius:20px;align-items:center;gap:14px;max-width:580px;margin-bottom:20px;padding:6px 18px;transition:all .2s;display:flex;box-shadow:0 8px 24px #00000059}.home-identity-card:focus-within{background:#111a2ed9;border-color:#0095ff99;box-shadow:0 0 20px #0095ff40}.home-identity-card.has-error{border-color:var(--red)!important;box-shadow:0 0 0 1px var(--red), 0 0 20px #ff3b5c66!important}.input-user-icon{color:var(--muted);flex-shrink:0}.input-with-label{flex-direction:column;flex:1;display:flex}.input-label-row{justify-content:space-between;align-items:center;gap:8px;margin-top:6px;display:flex}.input-label-row label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-top:0;font-size:11px;font-weight:700}.input-inline-error{color:var(--red);font-size:11px;font-weight:700}.home-identity-card input{color:#fff;background:0 0;border:0;width:100%;min-height:38px;padding:0;font-size:16px;font-weight:600}.home-identity-card input:focus{outline:none}.home-identity-card input::placeholder{color:#64748b;font-size:14px;font-weight:400}.room-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:580px;display:grid}.home-choice-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);min-height:220px;box-shadow:var(--glass-shadow);border-radius:24px;flex-direction:column;padding:22px;transition:transform .22s,box-shadow .22s;display:flex;position:relative}.home-choice-card:hover{transform:translateY(-4px)}.choice-heading{align-items:center;gap:12px;display:flex}.choice-heading h2{color:#fff;margin:0;font:700 18px/1.2 Outfit,sans-serif}.choice-icon{border-radius:12px;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.choice-desc{color:var(--muted);flex:1;margin:12px 0 16px;font-size:13px;line-height:1.5}.card-meta-pill{color:var(--muted);font-size:11px;font-weight:600;display:inline-block}.home-choice-card.create-room-choice{background:linear-gradient(165deg,#00e59914 0%,#111a2eb3 100%);border:1.5px solid #00e59973;box-shadow:0 16px 40px -10px #000000b3,0 0 25px #00e59926}.home-choice-card.create-room-choice:hover{border-color:#00e599bf;box-shadow:0 20px 48px -10px #000c,0 0 35px #00e5994d}.home-choice-card.create-room-choice .choice-icon{color:var(--green);background:var(--green-soft);border:1px solid #00e5994d}.create-room-button{color:#080c16;letter-spacing:-.01em;background:linear-gradient(135deg,#00e599 0%,#10b981 100%);border-radius:999px;width:100%;min-height:46px;font-size:14px;font-weight:800;transition:all .18s;box-shadow:0 0 22px #00e59973}.create-room-button:hover:not(:disabled){background:linear-gradient(135deg,#26ebb0 0%,#00c986 100%);box-shadow:0 0 30px #00e599a6}.home-choice-card.join-room-choice{background:linear-gradient(165deg,#0095ff14 0%,#111a2eb3 100%);border:1.5px solid #0095ff73;box-shadow:0 16px 40px -10px #000000b3,0 0 25px #0095ff26}.home-choice-card.join-room-choice:hover{border-color:#0095ffbf;box-shadow:0 20px 48px -10px #000c,0 0 35px #0095ff4d}.home-choice-card.join-room-choice .choice-icon{color:var(--blue);background:var(--blue-soft);border:1px solid #0095ff4d}.join-code-input-box{margin:12px 0 14px}.join-code-header-row{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.join-code-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:700}.code-inline-error{color:var(--red);font-size:11px;font-weight:700}.join-code-input-box input{color:#fff;text-transform:uppercase;letter-spacing:.05em;background:#080c16b3;border:1px solid #ffffff24;border-radius:12px;width:100%;min-height:42px;padding:0 14px;font-family:IBM Plex Mono,monospace;font-size:14px;font-weight:600}.join-code-input-box input:focus{border-color:var(--blue);outline:none;box-shadow:0 0 16px #0095ff59}.join-room-button{color:#fff;background:linear-gradient(135deg,#0095ff 0%,#0070f3 100%);border-radius:999px;width:100%;min-height:46px;font-size:14px;font-weight:800;transition:all .18s;box-shadow:0 0 22px #0095ff66}.join-room-button:hover:not(:disabled){background:linear-gradient(135deg,#26a8ff 0%,#0080ff 100%);box-shadow:0 0 30px #0095ff99}.benefit-row{color:var(--muted);flex-wrap:wrap;gap:16px;margin-top:28px;font-size:13px;display:flex}.benefit-row span{border:1px solid var(--line);background:#ffffff0a;border-radius:999px;align-items:center;gap:8px;padding:6px 14px;display:inline-flex}.form-error{color:var(--red);background:var(--red-soft);border:1px solid #ff3b5c4d;border-radius:12px;margin-top:14px;padding:10px 14px;font-size:13px}.hero-visual{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#111a2ea6;border:1.5px solid #ffffff1f;border-radius:28px;flex-direction:column;justify-content:space-between;min-height:520px;padding:24px;display:flex;position:relative;box-shadow:0 24px 60px -15px #000c,0 0 35px #0095ff1a}.visual-top-bar{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.visual-status-pill{color:var(--green);background:#00e5991a;border:1px solid #00e5994d;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font:700 10px IBM Plex Mono,monospace;display:inline-flex}.visual-room-pill{color:var(--muted);letter-spacing:.08em;font:600 11px IBM Plex Mono,monospace}.preview-grid{flex:1;grid-template-rows:repeat(2,minmax(130px,1fr));grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.preview-tile{background:#080c16bf;border:1px solid #ffffff1a;border-radius:18px;flex-direction:column;justify-content:space-between;min-height:135px;padding:14px;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 24px #0000004d}.preview-tile.active-speaker-preview{border-color:var(--green);box-shadow:0 0 24px #00e59959}.preview-avatar{color:#fff;background:linear-gradient(135deg,#0095ff66,#00e59966);border:1px solid #fff3;border-radius:14px;place-items:center;width:44px;height:44px;font:800 16px Outfit,sans-serif;display:grid}.preview-tile-meta{justify-content:space-between;align-items:center;display:flex}.preview-name{color:#fff;font-size:13px;font-weight:700}.preview-speaking-badge{background:var(--green-soft);color:var(--green);text-transform:uppercase;border:1px solid #00e59966;border-radius:999px;align-items:center;gap:4px;padding:4px 8px;font:700 9px IBM Plex Mono,monospace;display:inline-flex}.wave-bar{background:var(--green);border-radius:1px;width:2px;height:8px;animation:.9s ease-in-out infinite wave-bar}.wave-bar.bar-2{height:11px;animation-delay:.3s}.wave-bar.bar-3{height:6px;animation-delay:.6s}@keyframes wave-bar{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}.preview-controls-dock{border:1px solid var(--line-bright);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#111a2ed9;border-radius:999px;align-self:center;gap:10px;margin-top:18px;padding:8px 14px;display:inline-flex}.mock-control{background:#ffffff1a;border-radius:50%;width:32px;height:32px;display:block}.mock-control.mock-leave{background:var(--danger)}.mosaic-note-bottom{text-align:center;color:var(--muted);margin-top:14px;font-size:12px}.prejoin-page{min-height:100vh}.prejoin-nav{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#080c16bf;grid-template-columns:1fr auto 1fr;align-items:center;height:84px;padding:0 clamp(20px,4vw,72px);display:grid}.prejoin-nav>.room-code{color:var(--blue);background:#0095ff1a;border:1px solid #0095ff4d;border-radius:999px;justify-self:end;padding:6px 14px;font:700 11px IBM Plex Mono,monospace}.icon-text-button{border:1px solid var(--line-bright);color:var(--ink-secondary);background:#ffffff0f;border-radius:999px;justify-self:start;align-items:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .18s;display:inline-flex}.icon-text-button:hover{color:#fff;background:#ffffff1f;border-color:#ffffff4d}.prejoin-layout{grid-template-columns:minmax(0,1.35fr) minmax(360px,.65fr);align-items:center;gap:clamp(32px,5vw,72px);max-width:1360px;min-height:calc(100vh - 84px);margin:0 auto;padding:48px clamp(20px,5vw,72px);display:grid}.preview-panel{flex-direction:column;display:flex}.camera-preview{aspect-ratio:16/10;background:#080c16d9;border:1.5px solid #ffffff24;border-radius:24px;position:relative;overflow:hidden;box-shadow:0 24px 60px -15px #000c,0 0 35px #0095ff1f}.camera-preview video{object-fit:cover;width:100%;height:100%;display:block;transform:scaleX(-1)}.camera-placeholder{color:var(--muted);background:radial-gradient(circle,#111a2ecc,#080c16);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex;position:absolute;inset:0}.camera-placeholder span{font-size:14px;font-weight:600}.preview-device-controls{border:1px solid var(--line-bright);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#111a2ed9;border-radius:999px;gap:12px;padding:8px 12px;display:flex;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.preview-device-controls button{color:#fff;background:#ffffff1a;border:1px solid #ffffff26;border-radius:50%;place-items:center;width:44px;height:44px;transition:all .18s;display:grid}.preview-device-controls button:hover{background:#fff3;transform:scale(1.05)}.preview-device-controls .control-off{background:var(--red);border-color:var(--red);box-shadow:0 0 16px var(--red-glow)}.preview-caption{color:var(--muted);text-align:center;margin:16px 4px 0;font-size:13px}.join-card{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);box-shadow:var(--glass-shadow);background:#111a2ebf;border:1.5px solid #ffffff1f;border-radius:28px;padding:clamp(28px,4.5vw,44px)}.join-card h1{letter-spacing:-.03em;color:#fff;margin:6px 0 0;font:800 clamp(32px,4vw,44px)/1.1 Outfit,sans-serif}.join-description{color:var(--muted);margin:14px 0 24px;font-size:14px;line-height:1.55}.join-card label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px;font-size:11px;font-weight:700;display:block}.join-card input{color:#fff;background:#080c16b3;border:1px solid #ffffff24;border-radius:12px;width:100%;min-height:48px;margin-bottom:20px;padding:0 16px;font-size:15px;font-weight:600}.join-card input:focus{border-color:var(--blue);outline:none;box-shadow:0 0 16px #0095ff59}.join-card .wide+.wide{margin-top:12px}.permission-message{background:var(--red-soft);color:#ffd5c9;border:1px solid #ff3b5c4d;border-radius:12px;gap:12px;margin-bottom:18px;padding:14px;font-size:13px;display:flex}.permission-message strong{color:#fff;display:block}.permission-message p{color:var(--ink-secondary);margin:3px 0 0;line-height:1.4}.transport-hint{color:var(--muted);text-align:center;margin:22px 0 0;font-size:11px}.transport-hint span{color:var(--green);background:var(--green-soft);border:1px solid #00e5994d;border-radius:6px;margin-right:6px;padding:3px 7px;font-weight:700}.meeting-page{background:var(--canvas);color:#fff;flex-direction:column;height:100vh;min-height:100vh;display:flex;overflow:hidden}.meeting-header{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:30;background:#080c16d9;justify-content:space-between;align-items:center;gap:20px;min-height:76px;padding:0 clamp(16px,2.5vw,36px);display:flex}.meeting-identity,.meeting-status{white-space:nowrap;align-items:center;gap:clamp(10px,1.4vw,20px);display:flex}.header-divider{background:var(--line-bright);width:1px;height:22px}.meeting-name{color:var(--ink-secondary);font-size:13px;font-weight:600}.meeting-header .room-code{border:1px solid var(--line);color:var(--ink-secondary);background:#ffffff14;border-radius:8px;padding:4px 10px;font:700 11px IBM Plex Mono,monospace}.connected-state{color:var(--green);letter-spacing:.08em;align-items:center;gap:8px;font:700 10px IBM Plex Mono,monospace;display:inline-flex}.connected-state>span{background:var(--green);width:7px;height:7px;box-shadow:0 0 8px var(--green);border-radius:50%}.transport-badge{color:var(--green);background:var(--green-soft);border:1px solid #00e59959;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:10px;font-weight:700;display:inline-flex}.transport-badge.chime{color:var(--blue);background:var(--blue-soft);border-color:#0095ff59}.transport-badge.upgrading{color:var(--yellow);background:var(--yellow-soft);border-color:#ffb80066}.transport-compact{display:none}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.meeting-status time{color:var(--ink-secondary);font:600 12px IBM Plex Mono,monospace}.people-count{color:var(--muted);font-size:13px;font-weight:500}.copy-button{border:1px solid var(--line-bright);color:#fff;background:#ffffff14;border-radius:999px;align-items:center;gap:8px;min-height:38px;padding:0 14px;font-size:12px;font-weight:600;transition:all .18s;display:inline-flex}.copy-button:hover{background:#ffffff29;border-color:#ffffff4d}.meeting-workspace{flex:1;min-height:0;display:flex}.video-stage{flex-direction:column;flex:1;min-width:0;padding:16px clamp(14px,2vw,28px) 110px;display:flex;position:relative}.stage-meta{min-height:28px;color:var(--muted);justify-content:space-between;align-items:flex-start;font-size:10px;display:flex}.stage-meta span{align-items:center;gap:6px;display:inline-flex}.participant-grid{flex:1;place-content:center;gap:clamp(10px,1.2vw,18px);min-height:0;display:grid}.participant-grid.count-1{grid-template-columns:minmax(280px,min(100%,1000px))}.participant-grid.count-2{grid-template-columns:repeat(2,minmax(260px,1fr))}.participant-grid.count-3,.participant-grid.count-4{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(260px,1fr))}.participant-grid.count-5,.participant-grid.count-6{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(3,minmax(210px,1fr))}.participant-grid.count-7,.participant-grid.count-8,.participant-grid.count-9{grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(3,minmax(180px,1fr))}.participant-grid.count-10{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(5,minmax(140px,1fr))}.participant-tile{aspect-ratio:16/9;cursor:zoom-in;touch-action:manipulation;background:#111a2eb3;border:1.5px solid #ffffff1f;border-radius:20px;height:100%;min-height:140px;max-height:100%;transition:border-color .2s,box-shadow .2s;position:relative;overflow:hidden;box-shadow:0 10px 30px #00000080}.participant-tile.focused{cursor:zoom-out}.participant-tile.active-speaker{border-color:var(--green);box-shadow:0 0 28px #00e59973}.participant-tile video{object-fit:cover;width:100%;height:100%;display:block}.participant-tile.screen-share video{object-fit:contain;background:#04070e}.participant-avatar{width:100%;height:100%;color:var(--green);background:radial-gradient(circle,#0095ff33,#111a2ee6 70%);place-items:center;font:800 clamp(24px,3.5vw,42px) Outfit,sans-serif;display:grid}.participant-footer{background:linear-gradient(#0000,#080c16d9);justify-content:space-between;align-items:flex-end;min-height:54px;padding:18px 16px 12px;display:flex;position:absolute;bottom:0;left:0;right:0}.participant-footer strong{color:#fff;font:700 14px Outfit,sans-serif}.participant-footer small{color:var(--green);font:600 12px Plus Jakarta Sans,sans-serif}.speaker-label{color:#080c16;background:var(--green);text-transform:uppercase;border-radius:6px;padding:5px 9px;font:700 10px IBM Plex Mono,monospace;position:absolute;top:12px;left:12px;box-shadow:0 0 12px #00e59980}.screen-share-label{color:#080c16;background:var(--yellow);text-transform:uppercase;border-radius:6px;align-items:center;gap:5px;padding:5px 9px;font:700 10px IBM Plex Mono,monospace;display:inline-flex;position:absolute;top:12px;left:12px}.focus-toggle{z-index:2;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#080c16bf;border:1px solid #fff3;border-radius:10px;place-items:center;width:36px;height:36px;transition:all .18s;display:grid;position:absolute;top:12px;right:12px}.focus-toggle:hover{border-color:var(--blue);background:#0095ff59}.focused-participant-view{z-index:20;background:#04070e;grid-template-columns:minmax(0,1fr) clamp(140px,18vw,240px);gap:16px;padding:16px;display:grid;position:fixed;inset:0}.focused-participant-view.solo{grid-template-columns:minmax(0,1fr)}.focused-participant-view.browser-fullscreen{gap:0;padding:0}.focused-participant-main{place-items:center;min-width:0;min-height:0;display:grid;position:relative}.focused-participant-main .participant-tile{aspect-ratio:auto;border-radius:16px;width:100%;height:100%;max-height:none}.focused-participant-rail{flex-direction:column;gap:12px;min-height:0;display:flex;overflow-y:auto}.focused-participant-rail .participant-tile{flex:none;width:100%;height:auto;min-height:96px}.focused-view-actions{z-index:3;gap:10px;display:flex;position:absolute;top:16px;right:16px}.focused-view-action{border:1px solid var(--line-bright);color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#080c16d9;border-radius:10px;align-items:center;gap:8px;min-height:40px;padding:0 14px;font-size:12px;font-weight:600;transition:all .18s;display:inline-flex}.focused-view-action:hover{border-color:var(--blue);background:#0095ff4d}.waiting-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#111a2ee0;border:1px solid #00e5994d;border-radius:16px;align-items:center;gap:14px;min-width:340px;padding:14px 18px;display:flex;position:absolute;bottom:120px;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #00000080}.waiting-card strong{color:#fff;font:700 13px Outfit,sans-serif}.waiting-card span{color:var(--muted);margin-top:2px;font-size:11px}.control-bar{z-index:5;border:1px solid var(--line-bright);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#111a2ee0;border-radius:999px;align-items:center;gap:10px;padding:10px 14px;display:flex;position:absolute;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 20px 48px #000000b3}.control-bar>button{color:#fff;background:#ffffff14;border:1px solid #ffffff1f;border-radius:50%;place-items:center;width:46px;height:46px;transition:all .18s;display:grid;position:relative}.control-bar>button:hover:not(:disabled){background:#ffffff2e;transform:translateY(-2px)}.control-bar>button.selected{border-color:var(--blue);background:#0095ff40;box-shadow:0 0 16px #0095ff66}.control-bar .control-off{background:var(--red)!important;border-color:var(--red)!important;box-shadow:0 0 16px var(--red-glow)!important}.control-bar>button small{background:var(--green);color:#080c16;border-radius:10px;place-items:center;min-width:19px;height:19px;padding:0 4px;font:700 9px IBM Plex Mono,monospace;display:grid;position:absolute;top:-4px;right:-2px}.control-bar>button:after{content:attr(data-tooltip);opacity:0;pointer-events:none;white-space:nowrap;border:1px solid var(--line-bright);color:#fff;background:#080c16f2;border-radius:8px;padding:5px 9px;font-size:11px;font-weight:600;transition:all .15s ease-out;position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%,4px)}.control-bar>button:hover:after,.control-bar>button:focus-visible:after{opacity:1;transform:translate(-50%)}.control-divider{background:var(--line-bright);width:1px;height:28px;margin:0 4px}.control-bar .leave-control{background:var(--danger);border:1px solid #ff475780;border-radius:999px;gap:8px;width:auto;padding:0 18px;display:flex;box-shadow:0 0 16px #ff475766}.control-bar .leave-control:hover{background:#ff2d40;box-shadow:0 0 24px #ff475799}.control-bar .leave-control span{font-size:13px;font-weight:700}.side-panel{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);color:#fff;border-left:1px solid var(--line);background:#111a2ed9;flex-direction:column;flex-shrink:0;width:360px;display:flex}.side-panel>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:76px;padding:0 22px;display:flex}.side-panel h2{margin:0;font:700 18px Outfit,sans-serif}.side-panel header p{color:var(--muted);text-transform:uppercase;margin:4px 0 0;font:600 10px IBM Plex Mono,monospace}.side-panel header button{border:1px solid var(--line);width:36px;height:36px;color:var(--ink-secondary);background:#ffffff0f;border-radius:10px;place-items:center;transition:all .18s;display:grid}.side-panel header button:hover{color:#fff;background:#ffffff24}.participant-list{padding:20px;overflow-y:auto}.panel-caption{color:var(--muted);justify-content:space-between;margin:0 4px 12px;font-size:10px;display:flex}.participant-row{border-radius:12px;grid-template-columns:40px 1fr auto;align-items:center;gap:12px;min-height:60px;padding:10px 12px;transition:background .16s;display:grid}.participant-row:hover{background:#ffffff0d}.row-avatar{width:38px;height:38px;color:var(--blue);background:#0095ff33;border:1px solid #0095ff59;border-radius:12px;place-items:center;font:700 13px Outfit,sans-serif;display:grid}.participant-row strong{color:#fff;font-size:13px}.participant-row small{color:var(--muted);margin-top:2px;font:500 10px IBM Plex Mono,monospace}.chat-list{flex:1;padding:20px;overflow-y:auto}.empty-chat{color:var(--muted);text-align:center;margin:40px 20px;font-size:13px;line-height:1.5}.chat-message{margin-bottom:14px}.chat-message span{color:var(--muted);margin-bottom:4px;font-size:11px;display:block}.chat-message p{border:1px solid var(--line);color:#fff;background:#ffffff14;border-radius:14px;margin:0;padding:10px 14px;font-size:13px;line-height:1.45;display:inline-block}.chat-message.local{text-align:right}.chat-message.local p{color:#fff;background:linear-gradient(135deg,#0095ff 0%,#0070f3 100%);border-color:#0095ff66}.chat-form{border-top:1px solid var(--line);grid-template-columns:1fr 44px;gap:10px;padding:16px;display:grid}.chat-form input{border:1px solid var(--line-bright);color:#fff;background:#080c16b3;border-radius:12px;min-height:44px;padding:0 14px}.chat-form input:focus{border-color:var(--blue);outline:none}.chat-form button{background:var(--blue);color:#fff;border:0;border-radius:12px;place-items:center;transition:all .18s;display:grid}.chat-form button:hover{background:#26a8ff;box-shadow:0 0 16px #0095ff66}.toast{z-index:6;color:#fff;border:1px solid var(--line-bright);background:#080c16e6;border-radius:999px;padding:8px 18px;font-size:12px;font-weight:600;position:absolute;bottom:96px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000080}.ended-page{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:40px clamp(20px,5vw,72px);display:flex}.ended-page>section{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);width:100%;max-width:520px;box-shadow:var(--glass-shadow);text-align:center;background:#111a2ebf;border:1.5px solid #ffffff1f;border-radius:28px;flex-direction:column;align-items:center;margin-top:24px;padding:clamp(32px,5vw,48px);display:flex}.ended-page h1{letter-spacing:-.03em;color:#fff;margin:10px 0 0;font:800 clamp(36px,5vw,48px)/1.1 Outfit,sans-serif}.ended-page section>p:not(.eyebrow){color:var(--muted);margin:16px 0 28px;font-size:15px;line-height:1.6}.ended-page section>div{justify-content:center;gap:12px;width:100%;display:flex}@media (max-width:1100px){.home-hero,.hero-grid{grid-template-columns:1fr;gap:48px}.hero-visual{min-height:480px}.meeting-name,.meeting-header .room-code,.people-count{display:none}}@media (max-width:760px){.home-nav,.landing-nav,.prejoin-nav{height:68px}.online-badge,.account-name{display:none}.home-hero,.hero-grid{padding-top:32px}.room-choice-grid{grid-template-columns:1fr}.hero-visual{min-height:380px;padding:16px}.preview-grid{grid-template-columns:repeat(2,1fr)}.prejoin-layout{grid-template-columns:1fr;gap:28px;padding-top:20px}.side-panel{z-index:25;width:100%;position:fixed;inset:76px 0 0}.control-bar{justify-content:center;width:calc(100% - 24px);padding:8px 10px;bottom:14px}.control-bar .leave-control span{display:none}.ended-page section>div{flex-direction:column}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
