:root{--bg-0: #020d18;--bg-1: #061524;--bg-2: #0a1e2e;--panel: rgba(3, 17, 30, .92);--text: #f1f7fb;--text-dim: #8e9eae;--line: rgba(116, 166, 190, .27);--accent: #35e4dd;--accent-deep: #35bdcf;--accent-ink: #031722;--warn: #76dbe1;--danger: #e07a7a;--mine: #0b3443;--mine-edge: rgba(53, 228, 221, .38);--theirs: rgba(119, 151, 171, .1);--radius: 22px;--radius-sm: 16px;--font-display: "Outfit", "Segoe UI", sans-serif;--font-body: "Outfit", "Segoe UI", sans-serif;--shadow-panel: 0 28px 90px rgba(0, 0, 0, .5);color-scheme:dark}html[data-theme=aurora]{--bg-0: #03111f;--bg-1: #071827;--bg-2: #0b2230;--panel: rgba(5, 20, 34, .9);--text: #fff3d7;--text-dim: #a9bdc4;--line: rgba(132, 224, 218, .16);--accent: #63ded4;--accent-deep: #e2ae54;--accent-ink: #04131d;--warn: #f2be63;--danger: #ff8585;--mine: #0d4650;--mine-edge: rgba(99, 222, 212, .42);--theirs: rgba(255, 243, 215, .065);--shadow-panel: 0 30px 100px rgba(0, 8, 17, .68), 0 0 60px rgba(28, 196, 190, .08)}*,*:before,*:after{box-sizing:border-box}.material-symbols-outlined{font-family:Material Symbols Outlined;font-weight:400;font-style:normal;font-size:20px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;font-feature-settings:"liga";-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased}html,body{margin:0;min-height:100%}body{font-family:var(--font-body);background:var(--bg-0);color:var(--text);min-height:100dvh;overflow-x:hidden;-webkit-font-smoothing:antialiased}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a:focus-visible,button:focus-visible,[role=button]:focus-visible,select:focus-visible,textarea:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.atmosphere{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:radial-gradient(70% 55% at 0% 8%,rgba(21,115,148,.18),transparent 58%),radial-gradient(65% 60% at 100% 92%,rgba(10,109,132,.18),transparent 60%),linear-gradient(155deg,#010912,#03111e,#041321)}html[data-theme=aurora] .atmosphere{background:radial-gradient(55% 48% at 0% 0%,rgba(221,144,41,.25),transparent 64%),radial-gradient(58% 52% at 100% 100%,rgba(20,201,195,.3),transparent 66%),linear-gradient(155deg,#020b16,#03111f 48%,#061b29)}html[data-theme=aurora] .atmosphere:after{content:"";position:absolute;left:8%;right:8%;top:62%;height:2px;opacity:.72;background:linear-gradient(90deg,transparent,#f0b958 12%,rgba(255,255,255,.28) 50%,#54e4dc 88%,transparent);box-shadow:-34vw 0 34px 8px #f0b95859,34vw 0 34px 8px #54e4dc59;animation:aurora-breathe 4.8s ease-in-out infinite}html[data-theme=aurora] .orb-a{background:#c17c28;top:-18%;left:-12%}html[data-theme=aurora] .orb-b{background:#0bbab5;right:-12%;bottom:-8%}html[data-theme=aurora] .brand-mark,html[data-theme=aurora] .home-brand{background:linear-gradient(110deg,#fff0c9 20%,#e5b45e 47%,#65ded5 70%);-webkit-background-clip:text;background-clip:text;color:transparent}@keyframes aurora-breathe{50%{opacity:.95;filter:brightness(1.22)}}.theme-switcher{position:fixed;right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));z-index:90;display:inline-flex;align-items:center;gap:8px;padding:7px 8px 7px 11px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--panel) 94%,transparent);color:var(--text-dim);box-shadow:0 12px 40px #00000052;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);font-size:.76rem}.theme-switcher select{border:0;border-radius:999px;padding:6px 24px 6px 9px;color:var(--text);background:var(--bg-2);font:inherit;cursor:pointer}body:not(.site) .theme-switcher{bottom:max(86px,calc(env(safe-area-inset-bottom) + 72px))}@media(prefers-reduced-motion:reduce){html[data-theme=aurora] .atmosphere:after{animation:none}}.mesh{position:absolute;inset:-10%;opacity:.35;background-image:linear-gradient(rgba(238,242,246,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(238,242,246,.03) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:radial-gradient(ellipse at center,black 20%,transparent 75%);mask-image:radial-gradient(ellipse at center,black 20%,transparent 75%);animation:mesh-shift 28s linear infinite}.orb{position:absolute;border-radius:50%;filter:blur(70px);opacity:.4;animation:float 20s ease-in-out infinite}.orb-a{width:min(48vw,480px);height:min(48vw,480px);background:#5a2434;top:-12%;left:-8%}.orb-b{width:min(40vw,400px);height:min(40vw,400px);background:#3a2830;right:-10%;bottom:5%;animation-delay:-9s;animation-duration:26s}.grain{position:absolute;inset:0;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}@keyframes float{0%,to{transform:translate(0) scale(1)}50%{transform:translate(3%,5%) scale(1.06)}}@keyframes mesh-shift{0%{transform:translateZ(0)}to{transform:translate3d(-48px,-48px,0)}}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes pop{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.85)}}#app{position:relative;z-index:1;min-height:100dvh}.view{min-height:100dvh}.view[hidden]{display:none!important}.lobby{display:grid;place-items:center;padding:clamp(1.5rem,5vw,3rem)}.lobby-stage{width:min(100%,560px);display:grid;gap:1.25rem}.brand-mark{font-family:var(--font-display);font-weight:800;font-size:clamp(4rem,14vw,7rem);line-height:.85;letter-spacing:-.05em;margin:0;font-variation-settings:"opsz" 96;background:linear-gradient(120deg,#f6ecef 20%,var(--accent) 85%);-webkit-background-clip:text;background-clip:text;color:transparent;animation:rise .85s cubic-bezier(.22,1,.36,1) both}.lobby h1{font-family:var(--font-display);font-weight:700;font-size:clamp(1.65rem,4.4vw,2.35rem);line-height:1.18;letter-spacing:-.03em;margin:0;max-width:15ch;color:var(--text);font-variation-settings:"opsz" 72;animation:rise .85s .08s cubic-bezier(.22,1,.36,1) both}.lede{margin:0;max-width:38ch;color:var(--text-dim);line-height:1.55;font-size:1.02rem;animation:rise .85s .14s cubic-bezier(.22,1,.36,1) both}.lobby-actions{display:grid;gap:.85rem;margin-top:.5rem;animation:rise .85s .22s cubic-bezier(.22,1,.36,1) both}.divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;color:var(--text-dim);font-size:.8rem}.divider:before,.divider:after{content:"";height:1px;background:var(--line)}.join-row{display:grid;grid-template-columns:1fr auto;gap:.55rem}input[type=text]{font:inherit;color:var(--text);background:#0a0c108c;border:1px solid var(--line);outline:none;transition:border-color .2s,background .2s,box-shadow .2s}input[type=text]{border-radius:12px;padding:.9rem 1.05rem}input[type=text]::placeholder{color:color-mix(in srgb,var(--text-dim) 75%,transparent)}input[type=text]:focus,input[type=text]:focus-visible{border-color:color-mix(in srgb,var(--accent) 55%,transparent);background:#0a0c10bf;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 28%,transparent)}#room-input{letter-spacing:.16em;text-transform:uppercase;font-weight:600;font-variant-numeric:tabular-nums}.btn{font:inherit;font-weight:600;border:1px solid transparent;border-radius:12px;padding:.9rem 1.25rem;cursor:pointer;transition:transform .12s ease,background .2s,border-color .2s,opacity .2s}.btn:active:not(:disabled){transform:scale(.985)}.btn:disabled{opacity:.38;cursor:not-allowed}.btn.primary{background:linear-gradient(135deg,var(--accent),var(--accent-deep));color:var(--accent-ink)}.btn.primary:hover:not(:disabled){filter:brightness(1.06)}.btn.ghost{background:transparent;border-color:var(--line);color:var(--text)}.btn.ghost:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 40%,var(--line));background:#e0919c14}.btn.tiny{padding:.5rem .85rem;font-size:.84rem}.btn.danger{background:transparent;border-color:color-mix(in srgb,var(--danger) 40%,transparent);color:var(--danger)}.btn.danger:hover{background:color-mix(in srgb,var(--danger) 12%,transparent)}.error{margin:0;color:var(--danger);font-size:.9rem}.trust{list-style:none;display:flex;flex-wrap:wrap;gap:.55rem 1.1rem;margin:.75rem 0 0;padding:0;color:var(--text-dim);font-size:.84rem;animation:rise .85s .3s cubic-bezier(.22,1,.36,1) both}.trust li{display:flex;align-items:center;gap:.4rem}.trust li:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);opacity:.8}.chat{display:grid;place-items:center;padding:clamp(0px,2.5vw,1.5rem);min-height:100dvh}.chat-shell{position:relative;width:min(100%,720px);height:min(100dvh,920px);display:grid;grid-template-rows:auto auto 1fr auto auto auto auto;background:var(--panel);border:1px solid var(--line);border-radius:clamp(0px,2vw,var(--radius));box-shadow:var(--shadow-panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);overflow:hidden;animation:rise .45s cubic-bezier(.22,1,.36,1) both}.chat-bar{display:flex;align-items:center;gap:.75rem;padding:.85rem 1rem;border-bottom:1px solid var(--line);background:#0b0d108c}.chat-actions{display:flex;align-items:center;gap:.4rem;flex-shrink:0}.top-action{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--text-dim);background:transparent;font:600 1rem/1 var(--font-body);cursor:pointer}.top-action:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.top-action.danger:hover{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 48%,var(--line))}.peer{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#4a2a36,#23151c);border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));flex-shrink:0}.avatar-mark{width:14px;height:14px;border-radius:50%;border:2px solid var(--accent);box-shadow:inset 0 0 0 2px transparent}.peer-copy{min-width:0;display:grid;align-content:center;gap:.2rem}.peer-top{display:flex;align-items:center;gap:.65rem;min-height:24px;flex-wrap:nowrap}.peer-title{margin:0;font-family:var(--font-display);font-size:1.15rem;font-weight:700;letter-spacing:-.02em;font-variation-settings:"opsz" 36;line-height:24px}.peer-status{margin:.15rem 0 0;display:flex;align-items:center;gap:.4rem;min-width:0}.status-dot{width:7px;height:7px;border-radius:50%;background:var(--text-dim);flex-shrink:0}.status-dot[data-state=ready]{background:var(--accent);animation:pulse-dot 2.2s ease-in-out infinite}.status-dot[data-state=wait]{background:var(--warn)}.status-dot[data-state=off]{background:var(--danger)}.status{font-size:.78rem;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.status[data-state=ready]{color:var(--accent)}.status[data-state=wait]{color:var(--warn)}.status[data-state=off]{color:var(--danger)}.status-icons{display:inline-flex;align-items:center;align-self:center;gap:.32rem;height:24px;flex:0 0 auto}.status-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:1px solid var(--line);border-radius:50%;color:var(--text-dim);background:color-mix(in srgb,var(--panel) 90%,transparent);line-height:1;cursor:help;overflow:hidden;flex:0 0 22px}.status-icon[data-state=ready]{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:0 0 12px color-mix(in srgb,var(--accent) 22%,transparent)}.status-icon[data-state=wait]{color:var(--warn)}.status-icon[data-state=off]{color:var(--text-dim);opacity:.72}.status-icon.material-symbols-outlined{font-size:16px;line-height:1;padding-top:1px;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 20}.share-card{margin:0;padding:1rem 1.1rem;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#e0919c1f,#e0919c05);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.85rem;animation:rise .4s cubic-bezier(.22,1,.36,1) both}.share-label{margin:0 0 .3rem;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);font-weight:600}.share-title{margin:0;font-family:var(--font-display);font-weight:700;font-size:1.15rem;letter-spacing:-.02em;color:var(--text)}.share-hint{margin:.35rem 0 0;font-size:.82rem;color:var(--text-dim)}.share-actions{display:flex;flex-wrap:wrap;gap:.5rem}.share-main{justify-self:end;display:inline-grid;place-items:center;width:46px;height:46px;padding:0;border:0;border-radius:999px;color:var(--accent-ink);background:linear-gradient(135deg,var(--accent),var(--accent-deep));cursor:pointer}.share-main .material-symbols-outlined{font-size:22px}.share-card{display:none!important}.share-top-action{color:var(--accent);border-color:#35e4dd57}.share-top-action[hidden]{display:none!important}.chat-shell.is-invite .share-card{display:grid!important}.action-sheet{width:min(94vw,460px);margin:auto auto 0;padding:0;border:1px solid var(--line);border-radius:22px 22px 0 0;color:var(--text);background:color-mix(in srgb,var(--panel) 98%,#000);box-shadow:var(--shadow-panel)}.action-sheet::backdrop{background:#02070ead;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.action-sheet-head{display:flex;align-items:center;justify-content:space-between;padding:1rem 1rem .75rem}.action-sheet-head button{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;color:var(--text-dim);background:transparent}.action-sheet .share-actions{padding:.25rem 1rem 1.25rem}.sheet-action{min-height:42px;display:inline-flex;align-items:center;gap:.45rem;padding:0 .8rem;border:1px solid var(--line);border-radius:12px;color:var(--text);background:var(--bg-2);font:600 .78rem/1 var(--font-body);cursor:pointer}.sheet-action.primary{color:var(--accent-ink);background:var(--accent);border-color:transparent}.invite-action{width:40px;height:40px;display:inline-grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:50%;color:var(--text);background:color-mix(in srgb,var(--panel) 82%,transparent);font:700 .88rem/1 var(--font-body);text-decoration:none;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease}.invite-action:hover,.invite-action:focus-visible{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 55%,var(--line))}.invite-action.primary{color:var(--accent-ink);background:linear-gradient(135deg,var(--accent),var(--accent-deep));border-color:transparent}.invite-action[data-state=ready]{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:color-mix(in srgb,var(--accent) 11%,var(--panel))}.invite-action:disabled{opacity:.55;cursor:default;transform:none}#invite-qr-wrap{grid-column:1 / -1;flex:0 0 auto;padding:8px;border-radius:14px;background:#fff}#invite-qr-wrap img{display:block;width:138px;height:138px}.permission-dialog{max-width:440px;border:1px solid var(--line);border-radius:20px;padding:24px;color:var(--text);background:#101725;box-shadow:0 24px 80px #00000080}.permission-dialog::backdrop{background:#030712b8}.msg.flash .bubble{outline:2px solid color-mix(in srgb,var(--accent) 65%,transparent);outline-offset:2px}.msg-quote{display:grid;gap:.12rem;width:100%;margin:0 0 .4rem;padding:.4rem .55rem;border:0;border-left:3px solid var(--accent);border-radius:8px;background:#0003;color:inherit;font:inherit;text-align:left;cursor:pointer}.msg-quote-label{font-size:.66rem;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);font-weight:600}.msg-quote-body{font-size:.8rem;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reactions{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.25rem;padding:0 .15rem}.msg.mine .reactions{justify-content:flex-end}.reaction{font-size:.85rem;line-height:1;padding:.2rem .4rem;border-radius:999px;background:#0b0d108c;border:1px solid var(--line)}.reaction.mine{border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.reply-bar{display:flex;align-items:center;gap:.55rem;padding:.55rem .85rem;border-top:1px solid var(--line);background:#0b0d108c}.reply-bar-body{flex:1;min-width:0;display:grid;gap:.1rem;border-left:3px solid var(--accent);padding-left:.65rem}.reply-bar-label{font-size:.68rem;letter-spacing:.05em;text-transform:uppercase;color:var(--accent);font-weight:600}.reply-bar-text{font-size:.84rem;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.emoji-panel,.react-panel{display:grid;grid-template-columns:repeat(8,1fr);gap:.2rem;padding:.55rem;border-top:1px solid var(--line);background:#0b0d10b8}.emoji-panel[hidden],.react-panel[hidden],.reply-bar[hidden]{display:none!important}.react-panel{position:fixed;z-index:35;grid-template-columns:repeat(6,1fr);border:1px solid var(--line);border-radius:14px;background:var(--bg-2);box-shadow:var(--shadow-panel);min-width:220px}.emoji-panel button,.react-panel button{border:0;background:transparent;font-size:1.25rem;line-height:1;padding:.45rem;border-radius:10px;cursor:pointer}.emoji-panel button:hover,.react-panel button:hover{background:#e0919c24}.icon-btn{border:1px solid var(--line);background:#0a0c1059;color:var(--text);border-radius:12px;width:44px;height:44px;display:grid;place-items:center;cursor:pointer;font:inherit;font-weight:600;transition:background .2s,border-color .2s,color .2s}.icon-btn:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line));color:var(--accent);background:#e0919c1a}.reply-bar .icon-btn{width:34px;height:34px;font-size:.85rem}.messages{overflow-y:auto;padding:1.15rem 1rem 1.35rem;display:flex;flex-direction:column;gap:.65rem;scroll-behavior:smooth;background:radial-gradient(120% 80% at 50% 0%,rgba(224,145,156,.07),transparent 55%),linear-gradient(180deg,rgba(16,12,14,.2),transparent 35%)}.messages::-webkit-scrollbar{width:8px}.messages::-webkit-scrollbar-thumb{background:#eef2f61f;border-radius:99px}.msg{max-width:min(78%,480px);animation:pop .28s cubic-bezier(.22,1,.36,1) both}.msg.mine{align-self:flex-end}.msg.theirs{align-self:flex-start}.msg.system{align-self:center;max-width:92%;font-size:.78rem;color:var(--text-dim);text-align:center;padding:.4rem .75rem;background:#0b0d1073;border:1px solid var(--line);border-radius:999px;line-height:1.35}.bubble{position:relative;padding:.78rem .95rem .45rem;border-radius:22px;line-height:1.5;word-break:break-word;white-space:pre-wrap;cursor:context-menu}.msg.mine .bubble{background:linear-gradient(160deg,#4a2a36 0%,var(--mine) 100%);border:1px solid var(--mine-edge);border-bottom-right-radius:6px}.msg.theirs .bubble{background:var(--theirs);border:1px solid var(--line);border-bottom-left-radius:6px}.msg-body{display:block;font-size:.98rem}.msg-meta{display:flex;justify-content:flex-end;align-items:center;gap:.35rem;margin-top:.3rem;font-size:.66rem;color:var(--text-dim);-webkit-user-select:none;user-select:none}.msg-meta .msg-time{flex-shrink:0}.ticks{letter-spacing:-.08em}.ticks.seen{color:var(--accent)}.typing{margin:0;padding:0 1.1rem .45rem;font-size:.78rem;color:var(--text-dim);display:flex;align-items:center;gap:.45rem;min-height:1.25rem}.typing[hidden]{display:none!important}.typing-dots{width:18px;height:6px;background:radial-gradient(circle,var(--accent) 1.6px,transparent 1.7px) 0 50% / 6px 6px,radial-gradient(circle,var(--accent) 1.6px,transparent 1.7px) 6px 50% / 6px 6px,radial-gradient(circle,var(--accent) 1.6px,transparent 1.7px) 12px 50% / 6px 6px;opacity:.85;animation:pulse-dot 1.2s ease-in-out infinite}.composer-tools{display:flex;align-items:center;justify-content:flex-start;gap:.4rem;flex-wrap:nowrap;overflow-x:auto;padding:.5rem .85rem;border-top:1px solid var(--line);background:#0b0d108c}.composer-tool{flex:0 0 auto;width:38px;height:38px;display:inline-grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:50%;color:var(--text-dim);background:#0a0c1057;font:700 .82rem/1 var(--font-body);cursor:pointer}.composer-tool:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 42%,var(--line))}.composer-tool.active{color:var(--accent-ink);background:var(--accent);border-color:transparent}.composer-tool small{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.tool-menu-wrap{position:relative;flex:0 0 auto}.tool-popover{position:fixed;left:max(12px,env(safe-area-inset-left));bottom:max(118px,calc(env(safe-area-inset-bottom) + 105px));z-index:25;display:grid;gap:.35rem;min-width:180px;padding:.5rem;border:1px solid var(--line);border-radius:14px;background:var(--bg-2);box-shadow:var(--shadow-panel)}.tool-popover[hidden]{display:none!important}.tool-popover .tool-chip{width:100%;text-align:left;padding:.65rem .8rem;border-radius:10px}.burn-picker{display:flex;flex-wrap:wrap;gap:.3rem}.tool-chip{border:1px solid var(--line);background:#0a0c1059;color:var(--text-dim);border-radius:999px;padding:.28rem .65rem;font:inherit;font-size:.72rem;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:background .2s,border-color .2s,color .2s}.tool-chip:hover{color:var(--text);border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}.tool-chip.active{color:var(--accent-ink);background:var(--accent);border-color:transparent}.composer{display:grid;grid-template-columns:1fr auto;gap:.45rem;align-items:end;padding:.55rem .85rem calc(.75rem + env(safe-area-inset-bottom));border-top:0;background:#100c0eb8}.voice-record-bar{grid-column:1 / -1;min-height:44px;display:grid;grid-template-columns:36px auto auto minmax(70px,1fr) 40px;align-items:center;gap:9px;color:var(--text)}.voice-record-bar[hidden]{display:none!important}.composer.is-recording-voice>:not(.voice-record-bar){display:none!important}.voice-record-cancel,.voice-record-finish{width:36px;height:36px;display:grid;place-items:center;padding:0;border-radius:50%;cursor:pointer}.voice-record-cancel{color:#ff7b83;border:0;background:#ff5b681a}.voice-record-finish{width:40px;height:40px;color:var(--accent-ink);border:0;background:linear-gradient(135deg,var(--accent),var(--accent-deep));box-shadow:0 0 18px #35e4dd33}.voice-record-cancel .material-symbols-outlined,.voice-record-finish .material-symbols-outlined{font-size:20px}.voice-record-dot{width:8px;height:8px;border-radius:50%;background:#ff5b68;box-shadow:0 0 0 4px #ff5b681a;animation:voice-record-pulse 1.2s ease-in-out infinite}#voice-record-time{min-width:34px;color:var(--text);font-variant-numeric:tabular-nums;font-size:.76rem}.voice-wave{height:28px;display:flex;align-items:center;gap:3px;overflow:hidden}.voice-wave i{width:3px;height:8px;flex:0 0 auto;border-radius:999px;background:color-mix(in srgb,var(--accent) 78%,var(--text));animation:voice-wave .9s ease-in-out infinite alternate}.voice-wave i:nth-child(3n){animation-delay:-.6s}.voice-wave i:nth-child(3n+1){animation-delay:-.3s}.voice-wave i:nth-child(2n){animation-duration:.65s}@keyframes voice-record-pulse{50%{opacity:.48}}@keyframes voice-wave{0%{height:6px;opacity:.55}to{height:24px;opacity:1}}@media(prefers-reduced-motion:reduce){.voice-record-dot,.voice-wave i{animation:none}.voice-wave i:nth-child(3n){height:18px}}.send-icon{width:44px;height:44px;border:0;border-radius:50%;color:var(--accent-ink);background:linear-gradient(135deg,var(--accent),var(--accent-deep));font-size:1rem;cursor:pointer}.send-icon:disabled{opacity:.42;cursor:default}.msg.has-burn .bubble{overflow:hidden}.burn-badge{margin-right:auto;font-size:.64rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--warn);opacity:.95}.msg.burn-keep .burn-badge{color:var(--text-dim)}.msg.burning{animation:burn-out .3s ease forwards;pointer-events:none}@keyframes burn-out{to{opacity:0;transform:scale(.92) translateY(6px);filter:blur(2px)}}.composer-emoji{font-size:.95rem;letter-spacing:-.04em}.attach{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;border:1px solid var(--line);cursor:pointer;color:var(--text);transition:background .2s,border-color .2s,color .2s;-webkit-user-select:none;user-select:none;background:#0a0c1059}.attach:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--line));color:var(--accent);background:#e0919c1a}.send{min-width:5.25rem;height:44px;padding-top:0;padding-bottom:0}.toast{position:fixed;left:50%;bottom:max(7.25rem,calc(env(safe-area-inset-bottom) + 6.5rem));transform:translate(-50%);z-index:60;max-width:min(92vw,360px);background:#0c0f14f0;border:1px solid var(--line);color:var(--text);padding:.55rem .95rem;border-radius:10px;font-size:.85rem;pointer-events:none}.toast.is-error{border-color:color-mix(in srgb,var(--danger) 55%,var(--line));background:#2a1010f0}.status-icon{appearance:none;font:inherit}.share-expiry{margin:.45rem 0 0;color:var(--text-dim);font-size:.78rem}.safety-code{margin:1rem 0 0;padding:.85rem 1rem;text-align:center;letter-spacing:.14em;font-weight:700;font-variant-numeric:tabular-nums;font-size:1.15rem;border:1px solid var(--line);border-radius:12px;background:#0a0c1073}.empty-chat{margin:auto;max-width:28ch;text-align:center;color:var(--text-dim);font-size:.86rem;line-height:1.5}.empty-chat strong{display:block;margin-bottom:.35rem;color:var(--text);font-size:.95rem}.reconnect-banner,.chat-error{margin:0 16px 8px;padding:.75rem .9rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;border:1px solid color-mix(in srgb,var(--warn, #e8b86d) 40%,var(--line));border-radius:12px;background:#281c0a8c;color:var(--text);font-size:.82rem}.chat-error{border-color:color-mix(in srgb,#e07a7a 45%,var(--line));background:#2a10108c}.reconnect-banner[hidden],.chat-error[hidden],.empty-chat[hidden]{display:none!important}.reconnect-banner.is-failed{border-color:color-mix(in srgb,#e07a7a 50%,var(--line));background:#301212b8}.reconnect-banner.is-failed #btn-reconnect-refresh{color:var(--accent-ink);border:0;background:var(--accent)}.media-progress{display:grid;gap:.35rem;min-width:160px}.media-progress-label{margin:0;font-size:.78rem;color:var(--text)}.media-progress meter{width:100%;height:8px}.media-progress-pct{color:var(--text-dim);font-size:.68rem;font-variant-numeric:tabular-nums}.media-progress.is-error .media-progress-label,.media-progress.is-error .media-progress-pct{color:#ff9aa2}.composer-tools.open .composer-tool{width:auto;min-width:52px;height:auto;padding:8px 10px;display:grid;gap:4px;place-items:center}.composer-tools.open .composer-tool small{position:static;width:auto;height:auto;overflow:visible;clip:auto;font-size:.58rem;letter-spacing:.02em}.composer-tool{position:relative}.security-banner{align-items:center}#btn-verify-safety{flex:0 0 auto}.msg-menu{position:fixed;z-index:30;min-width:140px;background:var(--bg-2);border:1px solid var(--line);border-radius:12px;padding:.3rem;box-shadow:var(--shadow-panel)}.msg-menu button{width:100%;border:0;background:transparent;color:var(--text);font:inherit;font-weight:500;text-align:left;padding:.7rem .85rem;border-radius:8px;cursor:pointer}.msg-menu button:hover{background:#e0919c1f}.media{display:grid;gap:.4rem;max-width:168px}.media-thumb{position:relative;display:block;width:148px;max-width:100%;border:0;padding:0;border-radius:12px;overflow:hidden;cursor:zoom-in;background:#120c10;text-align:left;font:inherit;color:inherit}.media-thumb:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.media img,.media video{display:block;width:148px;max-width:100%;height:110px;object-fit:cover;border-radius:12px;background:#120c10}.media-thumb .media-expand{position:absolute;right:.4rem;bottom:.4rem;padding:.2rem .45rem;border-radius:999px;font-size:.62rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#f6ecef;background:#100c0eb8;border:1px solid rgba(246,236,239,.18);pointer-events:none}.media audio{width:148px;max-width:100%;height:36px}.media-file{display:flex;align-items:center;gap:.45rem;width:148px;max-width:100%}.media-file a{color:var(--accent);font-size:.82rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}.media-open{flex-shrink:0;border:1px solid var(--line);background:#100c0e73;color:var(--text-dim);border-radius:999px;padding:.2rem .5rem;font:inherit;font-size:.64rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;cursor:pointer}.media-open:hover{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.media-cap{opacity:.65;font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-lightbox{position:fixed;inset:0;z-index:50;display:grid;grid-template-rows:auto 1fr auto;align-items:stretch;justify-items:center;padding:1rem;background:#080608eb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:rise .22s ease both}.media-lightbox[hidden]{display:none!important}.lightbox-close{justify-self:end;width:42px;height:42px;border-radius:12px;border:1px solid var(--line);background:#1a1216d9;color:var(--text);font:inherit;font-size:1.1rem;cursor:pointer}.lightbox-close:hover{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--line))}.lightbox-stage{width:min(100%,960px);height:100%;display:grid;place-items:center;min-height:0}.lightbox-stage img,.lightbox-stage video{display:block;max-width:100%;max-height:calc(100dvh - 8rem);width:auto;height:auto;object-fit:contain;border-radius:12px;background:#000}.lightbox-stage audio{width:min(100%,420px)}.lightbox-stage a{color:var(--accent);font-size:1.05rem;word-break:break-all}.lightbox-caption{margin:.5rem 0 0;max-width:min(100%,720px);color:var(--text-dim);font-size:.85rem;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.chat{padding:clamp(8px,1.5vw,18px)}.chat-shell{width:min(100%,1060px);height:min(calc(100dvh - 20px),1120px);grid-template-rows:auto auto 1fr auto auto auto auto;border-color:#669fb957;border-radius:32px;background:linear-gradient(145deg,#081d2dd1,#020f1bf0),var(--panel);box-shadow:0 28px 90px #0000006b,inset 0 1px #ffffff06;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.chat-bar{min-height:134px;padding:24px 38px;border-bottom:0;background:transparent}.peer{gap:24px}.avatar{width:86px;height:86px;border-color:#35e4ddb8;background:radial-gradient(circle at 38% 30%,#32c6d340,#072737d6);box-shadow:0 0 28px #35e4dd2e,inset 0 0 22px #35e4dd14}.avatar-mark{width:auto;height:auto;border:0;border-radius:0;color:var(--text);font-size:2rem;font-weight:600;line-height:1}.peer-copy{gap:8px}.peer-top{min-height:40px;gap:16px}.peer-title{font-size:2rem;line-height:40px;font-weight:600}.peer-status{margin:0;gap:10px}.status-dot{width:12px;height:12px}.status{font-size:1rem}.status-icons{height:40px;gap:9px}.status-icon{width:40px;height:40px;flex-basis:40px;border-color:#669fb947;background:#020f1b6b}.status-icon.material-symbols-outlined{font-size:21px;font-variation-settings:"FILL" 0,"wght" 400,"GRAD" 0,"opsz" 24}.chat-actions{gap:14px}.top-action{width:56px;height:56px;border-radius:19px;border-color:#78a1b861;background:#04131f73}.top-action .material-symbols-outlined{font-size:25px}.share-card{margin:0 30px 20px;padding:30px 34px;min-height:164px;border:1px solid rgba(100,171,194,.42);border-radius:24px;background:radial-gradient(70% 140% at 0% 50%,rgba(28,156,169,.1),transparent 72%),#051a297a}.share-label{margin-bottom:16px;color:#51d9df;font-size:.8rem;letter-spacing:.25em}.share-title{font-size:clamp(1.45rem,3vw,2rem);font-weight:600}.share-hint{margin-top:10px;font-size:1rem}.share-main{width:auto;height:58px;padding:0 25px;display:inline-flex;gap:12px;border:1px solid var(--accent);border-radius:18px;color:var(--accent);background:#072431bd;box-shadow:inset 0 0 24px #35e4dd0d;font:500 1rem/1 var(--font-body);text-transform:capitalize}.messages{margin:0 30px;padding:34px 8px 24px;gap:18px;border-top:1px solid rgba(100,147,170,.2);background:transparent}.msg{max-width:min(68%,590px)}.msg.system{padding:6px 15px;border:0;background:transparent;color:var(--text-dim);font-size:.88rem}.msg.system:before{content:"lock";margin-right:8px;color:var(--accent);font-family:Material Symbols Outlined;font-size:17px;vertical-align:-3px}.bubble{padding:16px 20px 11px;border-radius:22px;line-height:1.45}.msg.mine .bubble{border-color:#35e4dd5c;border-bottom-right-radius:22px;background:linear-gradient(135deg,#0a3a47e6,#082a37db)}.msg.theirs .bubble{border-color:#789db24d;border-bottom-left-radius:22px;background:linear-gradient(135deg,#1c3040d6,#122433c7)}.msg-body{font-size:1rem}.msg-meta{font-size:.72rem}.typing{padding-inline:42px}.reply-bar,.emoji-panel{margin-inline:30px}.composer-tools{gap:12px;padding:20px 38px 10px;border-top:0;background:transparent}.composer-tool{width:48px;height:48px;border-color:#7aa0b766;background:#03131f7a}.composer-tool .material-symbols-outlined{font-size:24px}.composer-tool.active{color:var(--accent);border-color:#35e4dd73;background:#0d3c4580}.composer{grid-template-columns:minmax(0,1fr) auto;gap:20px;padding:10px 36px 30px;align-items:center;background:transparent}.composer-field{min-width:0;min-height:92px;padding:15px 22px 12px;display:grid;align-content:space-between;border:1px solid rgba(123,161,182,.42);border-radius:28px;background:#081a289e}.composer textarea{width:100%;min-height:38px;padding:0;border:0;background:transparent;box-shadow:none;font-size:1rem}.composer textarea:focus{box-shadow:none}.composer-secure{display:inline-flex;align-items:center;gap:6px;color:var(--text-dim);font-size:.76rem}.composer-secure .material-symbols-outlined{color:var(--accent);font-size:16px}.composer-secure strong{color:var(--accent);font-weight:500}.send-icon{width:64px;height:64px;display:grid;place-items:center;box-shadow:0 0 25px #35e4dd42,inset 0 1px #ffffff4d}.send-icon .material-symbols-outlined{font-size:29px}body:has(#chat:not([hidden])) .theme-switcher{top:34px;right:max(108px,calc((100vw - min(100vw,1060px))/2 + 108px));bottom:auto;padding:4px;border-color:#669fb94d;background:#03111ee0}body:has(#chat:not([hidden])) .theme-switcher>span{display:none}body:has(#chat:not([hidden])) .theme-switcher select{min-width:106px;height:38px}@media(max-width:720px){.chat{padding:0}.chat-shell{width:100%;height:100dvh;border:0;border-radius:0;box-shadow:none}.chat-bar{min-height:96px;padding:14px 16px}.peer{gap:12px}.avatar{width:54px;height:54px}.avatar-mark{font-size:1.35rem}.peer-title{font-size:1.35rem;line-height:28px}.peer-top{min-height:30px;gap:8px}.status-icons{height:30px;gap:5px}.status-icon{width:29px;height:29px;flex-basis:29px}.status-icon.material-symbols-outlined{font-size:17px}.status{font-size:.82rem}.chat-actions{gap:7px}.top-action{width:42px;height:42px;border-radius:14px}.share-card{margin:0 14px 10px;padding:20px;min-height:122px;border-radius:20px}.share-label{margin-bottom:9px;font-size:.68rem}.share-title{font-size:1.25rem}.share-hint{font-size:.82rem}.share-main{width:48px;height:48px;padding:0;justify-content:center;border-radius:15px}.share-main>span:last-child{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.messages{margin:0 14px;padding:22px 2px 18px;gap:12px}.bubble{padding:12px 14px 8px;border-radius:18px}.msg-body{font-size:.94rem}.composer-tools{padding:16px 14px 8px;gap:8px}.composer-tool{width:42px;height:42px}.composer{padding:7px 14px calc(16px + env(safe-area-inset-bottom));gap:10px}.composer-field{min-height:72px;padding:10px 15px 8px;border-radius:22px}.send-icon{width:54px;height:54px}.reply-bar,.emoji-panel{margin-inline:14px}body:has(#chat:not([hidden])) .theme-switcher{display:none}.msg{max-width:88%}.msg.system{border-radius:0}}@media(max-width:560px){.composer{grid-template-columns:1fr auto}.emoji-panel{grid-template-columns:repeat(7,1fr)}.brand-mark{font-size:clamp(3.4rem,18vw,5rem)}.peer-top{gap:6px}.status-icons{gap:3px}.chat-actions .top-action:first-child{display:none}.share-card{grid-template-columns:minmax(0,1fr) auto}}:root,html[data-theme=aurora]{--bg-0: #0b1220;--bg-1: #0e1a2b;--bg-2: #12243a;--panel: rgba(14, 26, 43, .96);--text: #ffffff;--text-dim: #8a97a6;--line: rgba(199, 211, 222, .18);--accent: #13e0c4;--accent-deep: #00bfa9;--accent-ink: #06151d;--warn: #62f3e6;--danger: #ff5f70;--mine: #0f716d;--mine-edge: rgba(98, 243, 230, .4);--theirs: #142433;--radius: 18px;--radius-sm: 12px;--font-display: "DM Serif Display", Georgia, serif;--font-body: "Inter", system-ui, sans-serif;--shadow-panel: 0 16px 40px rgba(0, 0, 0, .38)}html[data-theme=aurora] .atmosphere,.atmosphere{background:radial-gradient(42% 36% at 50% 100%,rgba(0,255,229,.08),transparent 75%),linear-gradient(160deg,#07101c,#0b1220 48%,#081522)}html[data-theme=aurora] .atmosphere:after{display:none}.mesh,.orb{display:none}.grain{opacity:.08}.brand-mark,.home-brand,.site-logo,.peer-title,.share-title,.lobby h1{font-family:var(--font-display)}.brand-infinity.material-symbols-outlined,.home-seal,.site-logo>span{color:var(--accent);background:linear-gradient(135deg,#8bf7f0 6%,#13e0c4 45%,#00bfa9 92%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 10px rgba(0,255,229,.18))}.chat-shell{width:min(100%,420px);height:min(calc(100dvh - 28px),780px);border:1px solid rgba(199,211,222,.25);border-radius:28px;background:#0b1624;box-shadow:0 16px 40px #00000061;-webkit-backdrop-filter:none;backdrop-filter:none}.chat-bar{min-height:64px;padding:10px 14px;border-bottom:1px solid rgba(199,211,222,.1);background:#0b1220b8}.peer{gap:9px}.avatar{width:36px;height:36px;border-color:#13e0c46b;background:#1a2b3b;box-shadow:none}.avatar-mark{font:500 .86rem/1 var(--font-body)}.peer-title{font-family:var(--font-body);font-size:.8rem;font-weight:600;line-height:17px}.peer-copy{gap:0}.peer-top{min-height:18px;gap:6px}.peer-status{gap:5px}.status{font-size:.6rem}.status-dot{width:6px;height:6px}.status-icons{height:20px;gap:3px}.status-icon{width:20px;height:20px;flex-basis:20px;border:0;background:transparent;box-shadow:none!important}.status-icon.material-symbols-outlined{padding:4px;font-size:13px}.top-action{width:34px;height:34px;border-color:#c7d3de2e;border-radius:50%;background:#142433}.top-action .material-symbols-outlined{font-size:18px}.share-top-action{color:var(--accent)}.security-banner{margin:14px 14px 0;padding:10px 12px;gap:9px;border-color:#13e0c429;border-radius:12px;background:#102235}.security-banner>.material-symbols-outlined{width:30px;height:30px;border-radius:9px;font-size:17px}.security-banner strong{font-size:.68rem}.security-banner small{font-size:.59rem}.messages{margin:0 14px;padding:18px 0 12px;gap:10px;border-top:0}.msg{max-width:72%}.bubble{padding:10px 12px 7px;border-radius:12px;line-height:1.4}.msg.theirs .bubble{border:1px solid rgba(199,211,222,.15);border-radius:12px 12px 12px 3px;background:#142433}.msg.mine .bubble{border:1px solid rgba(98,243,230,.25);border-radius:12px 12px 3px;background:linear-gradient(135deg,#177e78,#0f6967)}.msg-body{font-size:.76rem}.msg-meta{font-size:.54rem;color:#a8b3bd}.msg.system,.typing{font-size:.62rem}.composer{grid-template-columns:34px minmax(0,1fr) 30px 30px 36px;padding:7px 12px calc(11px + env(safe-area-inset-bottom));gap:5px;background:#0b1624}.composer-field{min-height:38px;padding:8px 10px;border-color:#c7d3de24;border-radius:999px;background:#142433}.composer textarea{min-height:20px;font-size:.72rem}.composer-add{width:34px;height:34px}.composer-shortcut{width:30px;height:30px}.composer-add .material-symbols-outlined,.composer-shortcut .material-symbols-outlined{font-size:17px}.send-icon{width:36px;height:36px;background:linear-gradient(135deg,#62f3e6,#13e0c4);box-shadow:0 0 16px #00ffe52e}.send-icon .material-symbols-outlined{font-size:19px}.composer-tools,.tool-popover,.action-sheet,.permission-dialog{border-color:#c7d3de33;background:#0e1a2b;box-shadow:0 16px 40px #0000006b}.composer-tool,.invite-action,.sheet-action,.tool-chip{border-color:#c7d3de2e;background:#142433}.sheet-action.primary,.tool-chip.active,.composer-tool.active{color:var(--accent-ink);background:var(--accent)}.action-sheet{border-radius:18px 18px 0 0}.action-sheet-head strong{font-family:var(--font-body);font-size:.9rem}.lobby{padding:20px}.lobby-stage{width:min(100%,380px);padding:38px 28px 26px;border-color:#c7d3de47;border-radius:28px;background:#0b1624;box-shadow:var(--shadow-panel)}.lobby .brand-link{gap:8px;font-family:var(--font-display);font-size:2.45rem}.brand-infinity.material-symbols-outlined{font-size:4.7rem}.lobby h1{margin-top:20px;color:var(--accent);font-family:var(--font-body);font-size:.92rem;font-weight:500}.lobby .lede{font-size:.76rem;color:var(--text-dim)}.lobby-benefits{border-color:#c7d3de29;border-radius:12px;background:#102235}.lobby-benefits>div>.material-symbols-outlined{color:var(--accent);background:#142f3c}.lobby-benefits strong{font-size:.75rem}.lobby-benefits small{font-size:.63rem}.lobby .btn{min-height:42px;border-radius:9px;font-size:.74rem}.btn.primary{color:var(--accent-ink);background:linear-gradient(135deg,#62f3e6,#13e0c4)}.btn.ghost{border-color:#13e0c499}#room-input{min-height:42px;border-color:#c7d3de29;border-radius:9px;background:#102235}.auth-note{font-size:.65rem}@media(max-width:560px){.chat-shell{width:100%;height:100dvh;border:0;border-radius:0}.lobby{padding:0}.lobby-stage{width:100%;min-height:100dvh;border:0;border-radius:0}.status-icons #lock-badge{display:inline-flex}}.lobby{place-items:center;padding:28px 18px}.lobby-stage{width:min(100%,420px);padding:34px 28px 28px;text-align:center;border:1px solid rgba(126,154,170,.55);border-radius:36px;background:linear-gradient(160deg,#041320f5,#030f1afa);box-shadow:0 30px 90px #00000070,0 0 55px #1cd2ce14}.lobby .brand-link{display:inline-grid;justify-items:center;gap:4px;font-size:2.55rem;line-height:1;color:var(--text);background:none}.brand-infinity.material-symbols-outlined{color:var(--accent);font-size:5.2rem;line-height:.72;font-variation-settings:"FILL" 0,"wght" 700,"GRAD" 100,"opsz" 48;filter:drop-shadow(0 0 14px rgba(53,228,221,.32))}.lobby h1{margin:22px 0 0;font:600 1.2rem/1.25 var(--font-body);color:var(--accent)}.lobby .lede{max-width:29ch;margin:10px auto 22px;font-size:.94rem;line-height:1.55}.lobby-actions{width:100%;padding:0;background:none;border:0}#create-controls{display:grid;gap:11px}.lobby-benefits{display:grid;gap:0;padding:6px 14px;margin-bottom:5px;border:1px solid var(--line);border-radius:18px;background:#0d22319e;text-align:left}.lobby-benefits>div{display:grid;grid-template-columns:36px 1fr;gap:10px;align-items:center;padding:10px 0}.lobby-benefits>div+div{border-top:1px solid rgba(126,160,180,.14)}.lobby-benefits>div>.material-symbols-outlined{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;color:var(--accent);background:#35e4dd14;font-size:19px}.lobby-benefits p{display:grid;gap:2px;margin:0}.lobby-benefits strong{font-size:.84rem;font-weight:500}.lobby-benefits small{color:var(--text-dim);font-size:.72rem}#room-expiry{margin-left:5px}.lobby .btn{min-height:48px;border-radius:14px}#btn-create{display:flex;justify-content:space-between;padding-inline:20px}.join-row{display:grid;grid-template-columns:1fr;gap:9px}#room-input{width:100%;min-height:46px;text-align:center}.lobby-legal{margin-top:17px;font-size:.76rem}.chat-shell{width:min(100%,520px);height:min(calc(100dvh - 24px),880px);grid-template-rows:auto auto 1fr auto auto auto auto;border-radius:34px}.chat-bar{min-height:86px;padding:13px 18px;border-bottom:1px solid rgba(112,151,172,.16)}.peer{gap:11px}.avatar{width:46px;height:46px}.avatar-mark{font-size:1.1rem}.peer-title{font-size:1rem;line-height:20px}.peer-copy{gap:2px}.peer-top{min-height:25px;gap:7px}.peer-status{gap:6px}.status{font-size:.68rem}.status-dot{width:7px;height:7px}.status-icons{height:25px;gap:4px}.status-icon{width:25px;height:25px;flex-basis:25px}.status-icon.material-symbols-outlined{font-size:15px}.chat-actions{gap:6px}.top-action{width:36px;height:36px;border-radius:12px}.top-action .material-symbols-outlined{font-size:20px}.share-card{margin:16px 16px 10px;min-height:auto;padding:20px;border-radius:18px;grid-template-columns:minmax(0,1fr) auto}.share-label{margin-bottom:8px;font-size:.64rem}.share-title{font-size:1.16rem}.share-hint{margin-top:7px;font-size:.78rem}.share-key{margin:13px 0 0;padding:10px 12px;overflow:hidden;border:1px solid rgba(118,157,179,.2);border-radius:12px;color:var(--accent);background:#020f1a73;font:500 .8rem/1.2 var(--font-body);letter-spacing:.08em;text-overflow:ellipsis}.share-main{width:46px;height:46px;padding:0;justify-content:center;border-radius:14px}.share-main>span:last-child{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.messages{margin:0 16px;padding:20px 0 14px;gap:11px}.msg{max-width:76%}.msg.system{max-width:90%;font-size:.7rem}.msg.system:before{font-size:15px}.bubble{padding:10px 12px 7px;border-radius:16px}.msg.mine .bubble,.msg.theirs .bubble{border-radius:16px}.msg-body{font-size:.84rem}.msg-meta{margin-top:3px;font-size:.61rem}.typing{padding-inline:20px}.composer-tools{padding:8px 16px 6px;gap:7px;overflow-x:auto}.composer-tool{width:38px;height:38px}.composer-tool .material-symbols-outlined{font-size:20px}.composer{padding:5px 16px calc(14px + env(safe-area-inset-bottom));gap:8px}.composer-field{min-height:52px;padding:9px 13px 7px;border-radius:18px}.composer textarea{min-height:22px;font-size:.84rem}.composer-secure{font-size:.62rem}.composer-secure .material-symbols-outlined{font-size:13px}.send-icon{width:44px;height:44px}.reply-bar,.emoji-panel{margin-inline:16px}.tool-popover{bottom:max(105px,calc(env(safe-area-inset-bottom) + 95px))}body:has(#chat:not([hidden])) .theme-switcher{display:none}@media(max-width:560px){.lobby{padding:0}.lobby-stage{width:100%;min-height:100dvh;border:0;border-radius:0;display:grid;align-content:center}.chat{padding:0}.chat-shell{width:100%;height:100dvh;border:0;border-radius:0}.chat-actions .top-action:first-child{display:grid}.status-icons #lock-badge,.composer-secure{display:none}.composer-field{align-content:center}}@media(max-height:700px){.lobby-stage{padding-block:20px}.lobby .brand-link{font-size:2rem}.brand-infinity.material-symbols-outlined{font-size:4rem}.lobby h1{margin-top:14px}.lobby .lede{margin-bottom:14px}.lobby-benefits>div{padding-block:7px}}.chat-shell{display:flex;flex-direction:column}.chat-shell .messages{flex:1 1 auto;min-height:0}.security-banner{margin:16px 16px 0;padding:12px 14px;display:flex;align-items:center;gap:11px;border:1px solid rgba(93,140,162,.2);border-radius:14px;background:#0b1f2eb3}.security-banner[hidden]{display:none!important}.security-banner>.material-symbols-outlined{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:10px;color:var(--accent);background:#35e4dd14;font-size:19px}.security-banner p{display:grid;gap:2px;margin:0}.security-banner strong{font-size:.76rem;font-weight:500}.security-banner small{color:var(--text-dim);font-size:.66rem}.composer-tools{display:none;position:absolute;z-index:20;left:16px;bottom:82px;width:auto;max-width:calc(100% - 32px);padding:9px;border:1px solid rgba(101,146,168,.3);border-radius:16px;background:#051623fa;box-shadow:0 18px 48px #0000006b}.composer-tools.open{display:flex}.composer{grid-template-columns:38px minmax(0,1fr) 34px 34px 40px;gap:6px}.composer-add,.composer-shortcut{width:34px;height:34px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;color:var(--text-dim);background:#7191a31a;cursor:pointer}.composer-add{width:38px;height:38px;color:var(--accent);background:#35e4dd1f}.composer-shortcut.active{color:var(--text)}.composer-add .material-symbols-outlined,.composer-shortcut .material-symbols-outlined{font-size:19px}.composer-shortcut small{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.composer-inline-menu{display:grid}.composer-field{min-height:42px;padding:9px 12px;align-content:center}.composer-secure{display:none}.send-icon{width:40px;height:40px;box-shadow:0 0 18px #35e4dd2e}.tool-popover{bottom:76px;left:64px}.chat-shell.is-invite{grid-template-rows:auto 1fr}.chat-shell.is-invite .chat-bar{min-height:62px;justify-content:flex-start;border-bottom:0}.chat-shell.is-invite .peer,.chat-shell.is-invite #btn-panic,.chat-shell.is-invite .security-banner,.chat-shell.is-invite .messages,.chat-shell.is-invite .typing,.chat-shell.is-invite .reply-bar,.chat-shell.is-invite .emoji-panel,.chat-shell.is-invite .composer-tools,.chat-shell.is-invite .composer{display:none!important}.chat-shell.is-invite .chat-actions{width:100%}.chat-shell.is-invite #btn-leave{border:0;background:transparent}.chat-shell.is-invite .share-card{align-self:start;margin:8px 16px 16px;padding:20px;display:grid;grid-template-columns:1fr;gap:0;border:0;background:transparent}.chat-shell.is-invite .share-label{display:none}.chat-shell.is-invite .share-title{font-size:1.45rem}.chat-shell.is-invite .share-hint{margin-top:10px;max-width:34ch;line-height:1.5}.chat-shell.is-invite #invite-qr-wrap{display:grid;place-items:center;justify-self:center;margin-top:18px}.chat-shell.is-invite #invite-qr-wrap[hidden]{display:none!important}.chat-shell.is-invite .share-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.chat-shell.is-invite .share-actions .share-main{grid-column:1 / -1;width:100%;height:48px;margin-top:4px;gap:9px;color:var(--accent-ink);border:0;border-radius:13px;background:linear-gradient(135deg,var(--accent),#52d5ce);font-size:.88rem;font-weight:600}.chat-shell.is-invite .share-key{margin-top:22px;min-height:94px;display:grid;align-content:center;gap:7px;padding:18px;color:var(--text);font-size:1rem;letter-spacing:.06em;border-color:#6994ab40;background:#0d2130bf;overflow-wrap:anywhere;word-break:break-word}.chat-shell.is-invite .share-key:before{content:"Invite link";color:var(--text-dim);font-size:.68rem;letter-spacing:0}.chat-shell.is-invite .share-main>span:last-child{position:static;width:auto;height:auto;overflow:visible;clip:auto}.chat-shell.is-invite .share-card:after{content:"🔒  End-to-end encrypted\aNo messages or metadata are stored on our servers.";white-space:pre-line;margin-top:22px;padding:16px;color:var(--text-dim);border:1px solid rgba(53,228,221,.18);border-radius:14px;background:#081d2b9e;font-size:.72rem;line-height:1.6}@media(max-width:560px){.chat-shell{border-radius:0}.security-banner,.messages{margin-inline:12px}}.composer{display:grid;grid-template-columns:40px minmax(0,1fr) 40px 40px 44px;align-items:end;gap:8px;padding:8px 12px calc(10px + env(safe-area-inset-bottom));background:transparent;border-top:1px solid rgba(199,211,222,.08)}.composer-add,.composer-shortcut,.send-icon{width:40px;height:40px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;cursor:pointer}.composer-add{color:var(--accent);background:#35e4dd1f}.composer-add[aria-expanded=true]{color:var(--accent-ink);background:var(--accent)}.composer-shortcut{color:var(--text-dim);background:#7191a31f}.composer-shortcut.active{color:var(--text);background:#35e4dd1f}.composer-add .material-symbols-outlined,.composer-shortcut .material-symbols-outlined{font-size:22px}.composer-field{display:flex;align-items:center;align-content:center;min-width:0;min-height:40px;max-height:none;padding:0;border:1px solid rgba(199,211,222,.16);border-radius:22px;background:#142433}.composer-secure{display:none!important}.composer textarea{display:block;width:100%;min-height:40px;max-height:140px;margin:0;padding:10px 16px;border:0;border-radius:22px;color:var(--text);background:transparent;box-shadow:none;font:inherit;font-size:.95rem;line-height:1.35;resize:none;overflow-y:auto;outline:none}.composer textarea::placeholder{color:color-mix(in srgb,var(--text-dim) 88%,transparent)}.composer-field:focus-within{border-color:color-mix(in srgb,var(--accent) 55%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 28%,transparent)}.composer textarea:focus,.composer textarea:focus-visible{border:0;background:transparent;box-shadow:none;outline:none}.send-icon{width:44px;height:44px;color:var(--accent-ink);background:linear-gradient(135deg,var(--accent),var(--accent-deep));box-shadow:0 0 16px #35e4dd38}.send-icon .material-symbols-outlined{font-size:22px}.send-icon:disabled{opacity:.42}@media(max-width:560px){.composer{grid-template-columns:40px minmax(0,1fr) 40px 40px 44px;padding-inline:10px;gap:6px}}.capture-overlay{position:absolute;inset:0;z-index:40;display:grid;grid-template-rows:1fr auto auto;background:#050b12}.capture-overlay[hidden]{display:none!important}#capture-preview{width:100%;height:100%;min-height:0;object-fit:cover;background:#000}.capture-overlay.is-front #capture-preview{transform:scaleX(-1)}.capture-hint{margin:0;padding:8px 16px 0;color:var(--text-dim);font-size:.72rem;text-align:center;background:linear-gradient(transparent,#050b12eb)}.capture-bar{display:grid;grid-template-columns:44px 44px 1fr 44px auto;align-items:center;gap:10px;padding:12px 16px calc(14px + env(safe-area-inset-bottom));background:#050b12}.capture-btn,.capture-shutter{width:44px;height:44px;display:grid;place-items:center;padding:0;border:0;border-radius:50%;color:var(--text);background:#ffffff14;cursor:pointer}.capture-shutter{width:62px;height:62px;justify-self:center;color:var(--accent-ink);background:#fff;box-shadow:0 0 0 4px #ffffff2e}.capture-shutter .material-symbols-outlined{color:#10202c;font-size:28px}.capture-btn.record[aria-pressed=true]{color:#fff;background:#ff5b68}#capture-time{min-width:3ch;color:#ff7b83;font-variant-numeric:tabular-nums;font-size:.82rem}.chat-shell.is-invite .capture-overlay{display:none!important}
