:root{color-scheme:dark;--bg: #070709;--bg-gradient: radial-gradient(ellipse at 50% 0%, rgba(88, 28, 135, .15) 0%, rgba(15, 12, 22, .95) 45%, #070709 100%);--panel: rgba(18, 18, 26, .82);--panel-strong: #14141d;--panel-hover: rgba(28, 28, 40, .9);--ink: #f8fafc;--ink-secondary: #cbd5e1;--muted: #94a3b8;--accent: #8b5cf6;--accent-strong: #a78bfa;--accent-dark: #4c1d95;--accent-glow: rgba(139, 92, 246, .22);--emerald: #10b981;--emerald-subtle: rgba(16, 185, 129, .15);--warning: #f43f5e;--silver: #e2e8f0;--silver-muted: rgba(226, 232, 240, .55);--line: rgba(226, 232, 240, .08);--line-strong: rgba(167, 139, 250, .26);--line-silver: rgba(226, 232, 240, .14);--shadow: 0 24px 64px -12px rgba(0, 0, 0, .85);--shadow-sm: 0 4px 16px rgba(0, 0, 0, .4);--shadow-glow: 0 0 24px rgba(124, 58, 237, .15);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg);background-image:var(--bg-gradient);background-attachment:fixed;color:var(--ink)}*{box-sizing:border-box}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}body{margin:0;min-height:100vh;background:transparent}#root{min-height:100svh}button,textarea,input,select{font:inherit}.unified-app-shell{min-height:100svh;display:flex;flex-direction:column}.landing-shell{min-height:100svh;padding:18px 18px 96px}.room-shell{min-height:100svh;padding:18px}.room-shell-centered{justify-content:center}.hero,.room-shell{max-width:1120px;margin:0 auto}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;align-items:stretch;min-height:calc(100vh - 36px)}.hero-copy,.hero-panel,.room-header,.chat-log,.composer,.room-strip{background:var(--panel);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border:1px solid var(--line);box-shadow:var(--shadow)}.hero-copy,.hero-panel{border-radius:28px}.hero-copy{padding:21px 42px 34px;display:flex;flex-direction:column;justify-content:flex-start}.external-arrival{margin:0 0 18px;padding:16px;border:1px solid color-mix(in srgb,var(--accent),transparent 72%);border-radius:18px;background:color-mix(in srgb,var(--accent),white 94%)}.external-arrival-label{display:block;margin-bottom:5px;color:var(--accent-strong);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.external-arrival strong{display:block;font-size:1rem}.external-arrival p{margin:6px 0 10px;color:var(--muted);font-size:.86rem;line-height:1.45}.external-arrival-actions{display:flex;flex-wrap:wrap;gap:12px}.external-arrival-actions a{color:var(--accent-strong);font-size:.84rem;font-weight:600;text-decoration:none}.external-arrival-actions a:hover{text-decoration:underline}.eyebrow{margin:0 0 12px;text-transform:uppercase;letter-spacing:.18em;font-size:11px;color:var(--muted)}.hero h1,.room-header h1{margin:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:clamp(2.6rem,5vw,4.8rem);line-height:.94;max-width:11ch;letter-spacing:-.04em;font-weight:700}.room-header h1{font-size:clamp(1.2rem,2vw,1.55rem);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Helvetica,Arial,sans-serif;font-weight:600;letter-spacing:-.02em}.lede{max-width:31rem;font-size:1rem;line-height:1.5;color:var(--muted)}.hero-actions{margin-top:18px;display:flex;flex-direction:column;align-items:flex-start;gap:10px}.primary-button,.secondary-button{border:0;border-radius:999px;padding:10px 15px;font-size:.95rem;cursor:pointer;transition:transform .18s ease,background .18s ease,opacity .18s ease,box-shadow .18s ease,border-color .18s ease}.primary-button{background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;border:1px solid rgba(56,189,248,.35);box-shadow:0 4px 14px #0284c759;font-weight:600}.primary-button:hover,.secondary-button:hover{transform:translateY(-1px)}.primary-button:hover{background:linear-gradient(135deg,#0393dc,#0274ad);box-shadow:0 6px 20px #0284c773}.secondary-button:hover{background:#ffffff1a;border-color:#ffffff2e;box-shadow:0 6px 18px #00000040}.primary-button:active,.secondary-button:active{transform:translateY(0);box-shadow:none}.primary-button:disabled,.secondary-button:disabled{opacity:.45;cursor:not-allowed}.secondary-button{background:#ffffff0f;color:var(--ink);border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);font-weight:500}.danger-button{background:#f43f5e1f!important;color:#fda4af!important;border:1px solid rgba(244,63,94,.3)!important}.danger-button:hover{background:#f43f5e38!important;border-color:#f43f5e80!important;color:#fff1f2!important}.button-success{border-color:#10b98166;background:#10b98129;color:#6ee7b7}.helper-text,.error-text,.system-line,.banner-stats,.room-meta,.bubble footer,.room-subtitle{color:var(--muted)}.error-text{color:var(--warning)}.hero-panel{position:relative;overflow:hidden;padding:28px;display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;gap:12px}.hero-panel-top{position:relative;z-index:1;display:flex;flex-direction:column;gap:10px}.mehraru-logo{display:inline-block;vertical-align:middle;filter:drop-shadow(0 0 8px rgba(14,165,233,.35));flex-shrink:0}.brand-eyebrow{display:inline-flex;align-items:center;gap:6px;font-weight:600;letter-spacing:.14em;color:var(--accent-strong)}.hero-brand{display:flex;align-items:center;gap:14px;margin:0 0 24px}.hero-brand-info{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.hero-brand-name{font-size:1.5rem;font-weight:800;letter-spacing:-.03em;color:#fff;line-height:1}.hero-brand-meaning{font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-weight:500}.hero-brand-separator{display:none}.hero-privacy-badges,.room-privacy-indicators{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 20px}.privacy-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;background:#0ea5e914;border:1px solid rgba(56,189,248,.22);color:#bae6fd;font-size:.78rem;font-weight:500;letter-spacing:.01em}.create-room-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:1.05rem;padding:13px 26px;letter-spacing:-.01em}.create-room-btn .btn-icon{font-size:1.1rem}.architecture-panel{position:relative;z-index:1;display:flex;flex-direction:column;gap:18px;height:100%}.architecture-header h2{margin:6px 0 8px;font-size:1.35rem;font-weight:700;color:#fff;letter-spacing:-.02em}.architecture-intro{margin:0;color:var(--muted);font-size:.88rem;line-height:1.5}.architecture-cards{display:flex;flex-direction:column;gap:12px;flex:1 1 auto}.architecture-card{display:flex;gap:14px;padding:14px 16px;border-radius:16px;background:#ffffff08;border:1px solid rgba(255,255,255,.06);transition:border-color .2s,background .2s}.architecture-card:hover{background:#ffffff0d;border-color:#38bdf840}.card-badge{flex:0 0 28px;height:28px;border-radius:8px;background:#0ea5e924;border:1px solid rgba(56,189,248,.28);color:#38bdf8;font-size:.78rem;font-weight:700;display:flex;align-items:center;justify-content:center}.card-body h3{margin:0 0 4px;font-size:.92rem;font-weight:600;color:#f1f5f9}.card-body p{margin:0;font-size:.82rem;line-height:1.45;color:var(--muted)}.github-cta{position:relative;z-index:1;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;border:1px solid var(--line);background:#ffffffdb;color:var(--ink);text-decoration:none;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}.github-cta:hover{transform:translateY(-1px);background:#fffffff7;box-shadow:0 10px 24px #1f1a171a}.github-cta>svg{flex:0 0 auto}.github-cta-copy{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}.github-cta-copy strong{font-size:.98rem}.github-cta-copy span{font-size:.8rem;color:var(--muted)}.github-cta-stats{display:flex;gap:6px;flex:0 0 auto}.github-stat{display:inline-flex;align-items:center;gap:3px;font-size:.82rem;font-weight:600;padding:3px 8px;border-radius:999px;background:color-mix(in srgb,var(--accent),white 86%);color:var(--accent-strong);white-space:nowrap}.github-links{position:relative;z-index:1;display:flex;flex-wrap:wrap;justify-content:center;gap:14px}.github-mini{display:inline-flex;align-items:center;gap:5px;font-size:.82rem;color:var(--muted);text-decoration:none}.github-mini:hover{color:var(--ink);text-decoration:underline}.github-community{position:relative;z-index:1;display:grid;gap:18px;align-content:start;margin:20px 0}.community-section{min-width:0}.community-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:8px}.community-heading h2{margin:0;font-size:.9rem;font-weight:700}.community-heading a,.community-empty a{color:var(--accent-strong);font-size:.78rem;white-space:nowrap}.community-fix,.community-request{display:flex;gap:8px;align-items:flex-start;border-bottom:1px solid var(--line);padding:9px 0;font-size:.8rem;line-height:1.35}.community-fix,.community-request{min-width:0;color:var(--ink);text-decoration:none}.community-fix:hover .community-title,.community-request:hover .community-title{text-decoration:underline}.community-number{flex:0 0 auto;color:var(--accent-strong);font-weight:700}.community-title{min-width:0;overflow-wrap:anywhere}.community-empty{margin:8px 0 0;color:var(--muted);font-size:.76rem;line-height:1.4}.signal-grid{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,rgba(13,107,97,.08) 1px,transparent 1px),linear-gradient(rgba(13,107,97,.08) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.1),black 30%,black 80%,transparent);mask-image:linear-gradient(180deg,rgba(0,0,0,.1),black 30%,black 80%,transparent)}.hero-metrics{position:relative;width:100%;display:grid;gap:12px}.hero-metrics div{padding-top:14px;border-top:1px solid var(--line)}.hero-metrics span{display:block;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.hero-metrics strong{display:block;margin-top:4px;font-size:1.05rem;font-weight:600;color:#fff}.room-shell,.room-vault-shell{display:flex;flex-direction:column;gap:8px;max-width:1040px;height:100svh;height:100dvh;margin:0 auto;padding:12px 16px;overflow:hidden;box-sizing:border-box}.room-vault-header{flex:0 0 auto;display:flex;flex-direction:column;gap:10px;padding:14px 18px;border-radius:20px;background:linear-gradient(180deg,#14141df0,#0c0c11fa);border:1px solid var(--line-silver);box-shadow:0 8px 32px #000000a6,0 0 1px #ffffff1a;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}.vault-header-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.vault-brand-cluster{display:flex;align-items:center;gap:10px}.vault-brand-meta{display:flex;align-items:center;gap:6px}.vault-name{font-size:1.05rem;font-weight:800;letter-spacing:-.01em;background:linear-gradient(135deg,#fff,#cbd5e1,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.vault-badge{font-size:.64rem;font-weight:700;letter-spacing:.12em;padding:2px 6px;border-radius:4px;background:#8b5cf629;border:1px solid rgba(167,139,250,.3);color:#c4b5fd}.vault-room-id{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:8px;background:#ffffff08;border:1px solid var(--line);font-size:.78rem;font-weight:600;color:var(--silver)}.vault-room-num{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;color:var(--accent-strong)}.vault-actions{display:flex;align-items:center;gap:8px}.vault-back-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:1px solid var(--line-silver, rgba(255, 255, 255, .15));background:#ffffff0d;color:var(--silver, #f8fafc);font-size:16px;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);margin-right:6px}.vault-back-btn:hover{background:#ffffff1f;border-color:#e2e8f04d;color:#fff;transform:translateY(-1px)}.vault-action-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:10px;font-size:.82rem;font-weight:600;cursor:pointer;background:#ffffff0d;border:1px solid var(--line-silver);color:var(--silver);transition:all .2s cubic-bezier(.16,1,.3,1)}.vault-action-btn:hover{background:#ffffff17;border-color:#e2e8f040;color:#fff;transform:translateY(-1px)}.vault-invite-btn{background:linear-gradient(135deg,#7c3aed33,#4c1d954d);border-color:#a78bfa59;color:#e2e8f0;box-shadow:0 2px 10px #7c3aed33}.vault-invite-btn:hover{background:linear-gradient(135deg,#7c3aed52,#4c1d9573);border-color:#c4b5fd80;box-shadow:0 4px 16px #7c3aed59}.vault-badge-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;font-size:.7rem;font-weight:700;background:#7c3aed;color:#fff}.vault-danger-btn{background:#f43f5e14;border-color:#f43f5e40;color:#fda4af}.vault-danger-btn:hover{background:#f43f5e2e;border-color:#f43f5e73;color:#fff1f2}.vault-header-sub{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:8px;border-top:1px solid rgba(255,255,255,.05)}.vault-presence-cluster{display:flex;align-items:center;gap:10px}.vault-conn-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:999px;font-size:.74rem;font-weight:600;background:#ffffff0a;border:1px solid var(--line);color:var(--muted)}.vault-conn-pill.is-connected{background:#10b9811f;border-color:#10b9814d;color:#34d399}.vault-conn-pill.is-connecting{background:#f59e0b1f;border-color:#f59e0b4d;color:#fbbf24}.vault-conn-pill .conn-dot{width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 6px currentColor}.vault-presence-duo{display:inline-flex;align-items:center;gap:8px;padding:3px 10px;border-radius:999px;background:#ffffff08;border:1px solid var(--line);font-size:.74rem}.presence-agent{display:inline-flex;align-items:center;gap:5px;color:var(--silver-muted)}.presence-agent.active{color:var(--silver);font-weight:500}.presence-agent.active .agent-indicator{background:#34d399;box-shadow:0 0 6px #34d39999}.presence-agent.waiting .agent-indicator{background:#94a3b8;opacity:.6}.agent-indicator{width:6px;height:6px;border-radius:50%;background:#94a3b8}.presence-separator{color:#fff3}.vault-kick-btn{margin-left:4px;background:transparent;border:0;color:var(--muted);cursor:pointer;padding:0 4px;font-size:.7rem;line-height:1}.vault-kick-btn:hover{color:var(--warning)}.vault-security-pills{display:flex;align-items:center;gap:8px}.security-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:6px;font-size:.72rem;font-weight:500;background:#ffffff08;border:1px solid var(--line);color:var(--silver-muted)}.vault-toast-banner{flex:0 0 auto;padding:8px 14px;border-radius:12px;background:#8b5cf61a;border:1px solid rgba(167,139,250,.25);color:#ddd6fe;font-size:.84rem;display:flex;align-items:center;justify-content:center;text-align:center}.vault-toast-banner.error-text{background:#f43f5e1a;border-color:#f43f5e4d;color:#fda4af}.access-screen{max-width:560px;margin:0 auto;padding:34px 32px;border-radius:28px;background:var(--panel);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border:1px solid var(--line);box-shadow:var(--shadow);text-align:center}.access-title{margin:0;font-size:clamp(1.6rem,4vw,2.4rem);line-height:1;letter-spacing:-.03em;font-weight:650}.access-copy{margin:12px auto 0;max-width:28rem;color:var(--muted);line-height:1.5}.access-home-link{display:inline-flex;align-items:center;justify-content:center;margin-top:18px;text-decoration:none}.make-your-own{margin:22px auto 0;max-width:26rem;font-size:.85rem;line-height:1.5;color:var(--muted)}.make-your-own-compact{flex:0 0 auto;width:100%;max-width:none;margin:0;padding:6px 12px;text-align:center;font-size:.78rem}.make-your-own-link{color:var(--accent);text-decoration:none;font-weight:600}.make-your-own-link:hover{text-decoration:underline}.participant-strip{display:flex;gap:10px;flex-wrap:wrap}.participant-empty{color:var(--muted)}.participant-chip{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:6px 12px;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:var(--ink);font-size:.82rem}.participant-chip-self{background:#0ea5e91f;border-color:#38bdf84d;color:#bae6fd;font-weight:600}.participant-dot{width:9px;height:9px;border-radius:999px;background:var(--participant-color);box-shadow:0 0 0 3px #ffffff1a}.chat-log{height:100%;border-radius:28px;min-height:0;padding:16px;background:#0b101ab8;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.chat-stage{position:relative;min-height:0;flex:1 1 0;display:flex;flex-direction:column;border-radius:20px;overflow:hidden;background:radial-gradient(ellipse at 50% 20%,#23123740,#0a0a0ff0 60%,#070709);border:1px solid var(--line-silver);box-shadow:inset 0 2px 14px #000000b3}.chat-log{flex:1 1 0;overflow-y:auto;overflow-x:hidden;padding:24px 20px;scroll-behavior:smooth;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(167,139,250,.25) transparent}.chat-log::-webkit-scrollbar{width:6px}.chat-log::-webkit-scrollbar-thumb{background:#a78bfa33;border-radius:999px}.chat-thread{min-height:100%;display:flex;flex-direction:column;justify-content:flex-end;gap:18px;max-width:880px;width:100%;margin:0 auto}.vault-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;margin:auto;padding:48px 24px;text-align:center;color:var(--silver-muted)}.vault-empty-state .empty-glyph{font-size:2.2rem;opacity:.85;margin-bottom:4px;filter:drop-shadow(0 0 16px rgba(124,58,237,.3))}.vault-empty-state .empty-title{margin:0;font-size:1.15rem;font-weight:700;color:#fff;letter-spacing:-.01em}.vault-empty-state .empty-desc{margin:0;font-size:.86rem;color:var(--muted);max-width:24rem;line-height:1.45}.bubble{max-width:min(78%,580px);padding:14px 18px;border-radius:18px;animation:rise .22s ease;line-height:1.55;position:relative;word-break:break-word;box-sizing:border-box}.bubble-mine{align-self:flex-end;margin-left:auto;background:var(--bubble-surface);border:1px solid var(--bubble-surface-border);border-bottom-right-radius:4px;box-shadow:0 8px 28px -4px #000000a6,0 0 16px #7c3aed17;color:var(--bubble-text)}.bubble-theirs{align-self:flex-start;margin-right:auto;background:var(--bubble-surface);border:1px solid var(--bubble-surface-border);border-bottom-left-radius:4px;box-shadow:0 8px 28px -4px #000000a6,0 0 1px #ffffff14;color:var(--bubble-text)}.bubble-author{display:block;margin:0 0 5px;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--accent-strong);opacity:.85}.bubble-content{margin:0;color:inherit;white-space:pre-wrap;font-size:.96rem;line-height:1.55}.bubble-footer{margin-top:8px;display:flex;align-items:center;justify-content:flex-end;gap:10px;font-size:.74rem;color:var(--silver-muted);font-variant-numeric:tabular-nums}.bubble-timestamp{color:#e2e8f080;font-size:.72rem}.bubble-sent-status{color:#e2e8f066;font-weight:500;display:inline-flex;align-items:center;gap:3px;font-size:.72rem}.bubble-delivered-status{color:#94a3b8;font-weight:500;display:inline-flex;align-items:center;gap:3px;font-size:.72rem}.bubble-seen-status{color:#c4b5fd;font-weight:600;display:inline-flex;align-items:center;gap:3px;font-size:.72rem}.bubble-sending-status{color:#94a3b8;font-weight:500;display:inline-flex;align-items:center;gap:3px;font-size:.72rem}.bubble-failed-status{color:#f87171;font-weight:600;display:inline-flex;align-items:center;gap:3px;font-size:.72rem}.message-retry-btn{background:#ef444426;border:1px solid rgba(239,68,68,.35);color:#fca5a5;font-size:.7rem;padding:2px 7px;border-radius:4px;cursor:pointer;display:inline-flex;align-items:center;gap:3px;transition:all .15s ease}.message-retry-btn:hover{background:#ef444440;color:#fff}.vault-typing-indicator{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);margin-bottom:8px;align-self:flex-start;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.typing-dots{display:inline-flex;align-items:center;gap:3px}.typing-dots span{width:5px;height:5px;border-radius:50%;background:#c4b5fd;animation:typingBounce 1.4s infinite ease-in-out both}.typing-dots span:nth-child(1){animation-delay:-.32s}.typing-dots span:nth-child(2){animation-delay:-.16s}@keyframes typingBounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.typing-text{font-size:.75rem;color:#c4b5fd;font-weight:500}.bubble-vanish-status{display:inline-flex;align-items:center;gap:3px;background:#00000059;padding:2px 6px;border-radius:4px;border:1px solid rgba(255,255,255,.06);font-size:.7rem;color:var(--muted)}.bubble-expired{opacity:.6}.bubble{position:relative}.bubble-reply-quote{background:#00000040;border-left:3px solid #8b5cf6;padding:4px 8px;border-radius:4px;margin-bottom:6px;font-size:.78rem;cursor:pointer;display:flex;flex-direction:column;gap:2px;transition:background .15s ease}.bubble-reply-quote:hover{background:#0006}.reply-quote-sender{font-weight:600;color:#a78bfa;font-size:.72rem}.reply-quote-snippet{color:#e2e8f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:280px}.bubble-forwarded-badge,.bubble-pinned-badge{display:inline-flex;align-items:center;gap:4px;font-size:.68rem;font-weight:600;color:#c4b5fd;margin-bottom:4px;background:#8b5cf61f;padding:1px 6px;border-radius:4px;width:fit-content}.bubble-edited-tag{font-size:.7rem;color:#94a3b8;font-style:italic;margin-left:4px}.bubble-highlight{animation:bubbleHighlightPulse 2s ease-out}@keyframes bubbleHighlightPulse{0%{box-shadow:0 0 0 4px #8b5cf6}70%{box-shadow:0 0 0 6px #8b5cf600}to{box-shadow:none}}.bubble-reactions-row{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.reaction-chip{background:#ffffff14;border:1px solid rgba(255,255,255,.12);color:#f1f5f9;border-radius:12px;padding:2px 8px;font-size:.75rem;cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:all .15s ease}.reaction-chip:hover{background:#ffffff29;transform:scale(1.05)}.reaction-chip.is-reacted{background:#8b5cf640;border-color:#8b5cf6;color:#ddd6fe}.bubble-actions-bar{display:flex;align-items:center;gap:2px;opacity:.35;transition:opacity .15s ease;margin-top:4px}.bubble:hover .bubble-actions-bar,.bubble:focus-within .bubble-actions-bar{opacity:1}.bubble-action-btn{background:transparent;border:none;color:#94a3b8;padding:3px 5px;border-radius:4px;cursor:pointer;font-size:.8rem;line-height:1;transition:all .15s ease}.bubble-action-btn:hover{background:#ffffff1f;color:#f8fafc}.bubble-action-btn.is-active{color:#fbbf24}.reaction-picker-popover{position:absolute;bottom:calc(100% + 4px);left:10px;display:flex;gap:4px;background:#1e1b4b;border:1px solid rgba(139,92,246,.35);border-radius:20px;padding:4px 8px;box-shadow:0 4px 16px #0006;z-index:50}.reaction-picker-btn{background:transparent;border:none;font-size:1.1rem;cursor:pointer;padding:2px 4px;border-radius:50%;transition:transform .12s ease}.reaction-picker-btn:hover{transform:scale(1.3)}.composer-action-banner{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;border-radius:8px;margin-bottom:6px;font-size:.78rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.composer-action-banner.is-replying{background:#8b5cf626;border:1px solid rgba(139,92,246,.3);color:#c4b5fd}.composer-action-banner.is-editing{background:#eab30826;border:1px solid rgba(234,179,8,.3);color:#fde047}.composer-banner-close{background:transparent;border:none;color:inherit;font-size:.75rem;cursor:pointer;padding:2px 6px;border-radius:4px;font-weight:600}.composer-banner-close:hover{background:#ffffff26}.vault-pinned-bar{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 14px;background:#8b5cf61a;border-bottom:1px solid rgba(139,92,246,.2);font-size:.8rem;color:#e2e8f0}.pinned-bar-title{font-weight:600;color:#a78bfa}.pinned-bar-snippet{color:#cbd5e1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:400px}.pinned-bar-jump{font-size:.72rem;padding:2px 8px}.composer.composer-vault{flex:0 0 auto;display:flex;flex-direction:column;gap:8px;background:linear-gradient(180deg,#12121af2,#0a0a0ffa);border:1px solid var(--line-silver);border-radius:18px;padding:10px 16px 14px;box-shadow:0 -4px 32px #0009;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);width:100%;box-sizing:border-box}.composer-meta-bar{display:flex;justify-content:space-between;align-items:center;font-size:.74rem;color:var(--muted);padding:0 4px}.composer-enc-badge{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:#a78bfa;letter-spacing:.02em}.composer-shield-icon{font-size:.85rem}.composer-hint{color:#e2e8f066;font-size:.72rem}.composer-input-row{display:flex;align-items:flex-end;gap:10px;width:100%}.composer-input-row textarea{flex:1 1 auto;min-height:52px;max-height:140px;resize:none;border-radius:14px;background:#0a0a0fd9;border:1px solid rgba(226,232,240,.12);color:#fff;padding:12px 14px;font-size:.96rem;line-height:1.45;transition:border-color .2s ease,box-shadow .2s ease;font-family:inherit}.composer-input-row textarea:focus{outline:none;border-color:#a78bfa80;box-shadow:0 0 0 3px #7c3aed29}.composer-attach{height:48px;width:48px;flex:0 0 48px;border-radius:14px;background:#ffffff0a;border:1px solid rgba(226,232,240,.1);color:var(--silver);display:flex;align-items:center;justify-content:center;font-size:1.15rem;cursor:pointer;transition:all .2s ease}.composer-attach:hover{background:#ffffff14;border-color:#e2e8f040;color:#fff}.composer-send-btn{height:48px;padding:0 22px;border-radius:14px;background:linear-gradient(135deg,#7c3aed,#5b21b6);border:1px solid rgba(196,181,253,.35);color:#fff;font-weight:600;font-size:.92rem;display:inline-flex;align-items:center;gap:8px;box-shadow:0 4px 16px #6d28d959;cursor:pointer;transition:all .2s ease;white-space:nowrap}.composer-send-btn:hover{background:linear-gradient(135deg,#8b5cf6,#6d28d9);box-shadow:0 6px 20px #6d28d980;transform:translateY(-1px)}.composer-send-btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}.composer-send-btn .send-icon{font-size:1.1rem;font-weight:700}.vault-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#000000d1;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:flex;align-items:center;justify-content:center;padding:20px}.vault-modal{width:100%;max-width:540px;background:linear-gradient(180deg,#13131c,#0c0c12);border:1px solid rgba(167,139,250,.3);border-radius:24px;box-shadow:0 24px 72px #000000d9,0 0 28px #7c3aed29;display:flex;flex-direction:column;overflow:hidden;animation:rise .2s cubic-bezier(.16,1,.3,1)}.vault-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:22px 24px 18px;border-bottom:1px solid rgba(255,255,255,.07)}.modal-title-cluster{display:flex;align-items:flex-start;gap:12px}.modal-key-icon{font-size:1.4rem;padding:8px;border-radius:12px;background:#8b5cf624;border:1px solid rgba(167,139,250,.25);color:#c4b5fd;line-height:1}.modal-title-cluster h2{margin:0;font-size:1.25rem;font-weight:700;color:#fff;letter-spacing:-.01em}.modal-sub{margin:4px 0 0;font-size:.84rem;color:var(--muted);line-height:1.4}.modal-close-btn{background:transparent;border:0;color:var(--muted);cursor:pointer;font-size:1.2rem;padding:4px;border-radius:8px;line-height:1;transition:color .15s ease}.modal-close-btn:hover{color:#fff}.vault-modal-body{padding:20px 24px;display:flex;flex-direction:column;gap:18px;max-height:60vh;overflow-y:auto}.invite-generator-panel{display:flex;flex-direction:column;gap:14px;padding:16px;border-radius:16px;background:#ffffff06;border:1px solid var(--line)}.invite-duration-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.modal-input,.modal-select{padding:8px 12px;border-radius:10px;background:#0a0a0fe6;border:1px solid var(--line-silver);color:#fff;font-size:.88rem}.modal-generate-btn{width:100%;padding:12px;font-size:.94rem;font-weight:600;border-radius:12px;background:linear-gradient(135deg,#7c3aed,#5b21b6);border:1px solid rgba(196,181,253,.35);box-shadow:0 4px 16px #6d28d959}.modal-manual-wrapper{margin-top:4px}.invite-created-card{margin-top:12px;padding:14px 16px;border-radius:14px;background:#8b5cf61a;border:1px solid rgba(167,139,250,.4);box-shadow:0 4px 18px #8b5cf626;display:flex;flex-direction:column;gap:10px}.invite-created-header{display:flex;flex-direction:column;gap:2px}.invite-created-badge{font-size:.72rem;font-weight:700;letter-spacing:.08em;color:#c4b5fd;text-transform:uppercase}.invite-created-sub{margin:0;font-size:.85rem;color:#f1f5f9;opacity:.95}.invite-url-box{display:flex;flex-direction:column;gap:8px}.invite-url-input{width:100%;padding:8px 12px;border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.82rem;background:#0a0a12bf;color:#f8fafc;border:1px solid rgba(255,255,255,.2);outline:none;word-break:break-all;box-sizing:border-box}.invite-url-input:focus{border-color:#a78bfa;box-shadow:0 0 0 2px #a78bfa40}.invite-url-actions{display:flex;gap:8px}.invite-url-actions .primary-button,.invite-url-actions .secondary-button{flex:1;padding:8px 14px;font-size:.85rem;font-weight:600;text-align:center;justify-content:center}.invite-expiry-meta{display:flex;align-items:center;gap:8px;font-size:.75rem;color:#cbd5e1}.dot-sep{opacity:.5}.vault-invites-block{display:flex;flex-direction:column;gap:10px;margin-top:12px}.vault-invites-scroll{display:flex;flex-direction:column;gap:8px;max-height:180px;overflow-y:auto}.vault-invite-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 14px;border-radius:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.12)}.vault-invite-meta{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.invite-tag{font-size:.72rem;font-weight:600;color:#c4b5fd}.invite-token-code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;color:#e2e8f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vault-invite-row .invite-actions{display:flex;gap:6px;flex-shrink:0}.vault-invite-row .secondary-button,.invite-row .secondary-button{color:#f8fafc!important;background:#ffffff1a!important;border:1px solid rgba(255,255,255,.22)!important;font-weight:500;padding:6px 12px;font-size:.82rem;border-radius:8px;cursor:pointer;transition:all .15s ease}.vault-invite-row .secondary-button:hover,.invite-row .secondary-button:hover{background:#ffffff2e!important;border-color:#ffffff59!important;color:#fff!important}.invite-page-card{max-width:440px;width:90%;margin:0 auto;padding:32px 24px;border-radius:20px;background:#120c1cf2;border:1px solid rgba(167,139,250,.3);box-shadow:0 12px 40px #0009,0 0 30px #8b5cf626;text-align:center;display:flex;flex-direction:column;align-items:center}.invite-brand-header{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:8px}.invite-lock-icon{font-size:2.2rem}.invite-inviter-badge{font-size:.95rem;color:#e2e8f0;margin:8px 0 16px;line-height:1.4}.invite-inviter-badge strong{color:#c4b5fd}.invite-features-box{width:100%;padding:14px 16px;border-radius:12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:10px;margin-bottom:20px;text-align:left}.invite-feature-item{display:flex;align-items:center;gap:10px;font-size:.86rem;color:#cbd5e1}.invite-feature-check{color:#34d399;font-weight:700;font-size:.95rem}.invite-timer-text{color:#fbcfe8;font-weight:600}.invite-card-actions{width:100%;display:flex;flex-direction:column;gap:10px}.invite-card-actions .primary-button{width:100%;padding:12px 18px;font-size:.95rem;font-weight:600;border-radius:12px;background:linear-gradient(135deg,#8b5cf6,#6d28d9);color:#fff;border:none;cursor:pointer;box-shadow:0 4px 14px #6d28d959}.invite-card-actions .secondary-button{width:100%;padding:10px 18px;font-size:.88rem;font-weight:500;border-radius:12px;background:#ffffff0f;border:1px solid rgba(255,255,255,.15);color:#e2e8f0;cursor:pointer}.invite-spinner{width:36px;height:36px;border:3px solid rgba(167,139,250,.2);border-top-color:#a78bfa;border-radius:50%;animation:spin .8s linear infinite;margin:16px auto}@keyframes spin{to{transform:rotate(360deg)}}.vault-modal-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid rgba(255,255,255,.07);background:#0a0a0f99}.modal-security-note{margin:0;font-size:.74rem;color:var(--silver-muted)}.modal-done-btn{padding:6px 18px;font-size:.85rem;border-radius:10px}.file-card{display:flex;flex-direction:column;gap:8px;min-width:200px}.file-card:focus-visible{outline:2px solid currentColor;outline-offset:4px}.conversation-find{width:100%}.conversation-find-panel{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:12px 0}.conversation-find-panel label{font-weight:600}.conversation-find-panel input{flex:1 1 220px;min-width:0}.conversation-find-count{font-size:.85rem}.conversation-find-actions{display:flex;flex-wrap:wrap;gap:8px}.bubble-find-selected{outline:2px solid currentColor;outline-offset:-2px}.file-card-head{display:flex;align-items:center;gap:10px}.file-icon{font-size:1.3rem;line-height:1}.file-meta{display:flex;flex-direction:column;min-width:0}.file-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:32ch}.file-size{font-size:.74rem;opacity:.7}.file-status{font-size:.76rem;opacity:.75}.file-status-error{color:#c0392b;opacity:1}.file-action{align-self:flex-start;padding:4px 12px;font-size:.82rem}.file-progress{display:flex;align-items:center;gap:8px}.file-progress-track{flex:1 1 auto;height:6px;border-radius:999px;background:color-mix(in srgb,currentColor,transparent 82%);overflow:hidden}.file-progress-bar{height:100%;border-radius:999px;background:var(--bubble-accent, var(--accent, #6c5ce7));transition:width .12s ease}.file-progress-label{font-size:.74rem;opacity:.75;min-width:3ch;text-align:right}.composer textarea{width:100%;resize:none;min-height:48px;max-height:132px;border-radius:20px;border:1px solid var(--line);padding:13px 16px;background:#0f172ae6;color:var(--ink);box-shadow:0 4px 16px #00000059;font-size:.95rem;line-height:1.4}.composer textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #0ea5e933}.creation-panel{margin-top:18px;display:grid;gap:10px}.setting-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 16px;border-radius:18px;background:#ffffff08;border:1px solid var(--line)}.setting-label{display:block;font-size:.88rem;font-weight:600;color:#f1f5f9}.setting-note{margin:4px 0 0;color:var(--muted);font-size:.88rem}.setting-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.setting-controls-disabled .setting-input,.setting-controls-disabled .setting-select{opacity:.44}.setting-input,.setting-select{border:1px solid var(--line);background:#0f172ad9;color:var(--ink);border-radius:12px;padding:9px 12px;font-size:.9rem}.setting-input{width:88px}.toggle-pill{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid var(--line);border-radius:999px;background:#ffffff0d;color:var(--ink);font-size:.88rem}.toggle-pill input,.room-error,.system-line{margin:0}.participant-kick{border:0;background:transparent;color:var(--muted);font-size:.78rem;cursor:pointer;padding:0;margin-left:8px}.participant-kick:hover{color:var(--warning)}.invite-panel{background:var(--panel);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px;padding:14px 16px;display:grid;gap:10px}.invite-settings{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 16px;border-radius:18px;background:#ffffff08;border:1px solid var(--line)}.invite-guidance{margin:0;color:var(--muted);font-size:.92rem;line-height:1.45}.invite-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:14px;background:var(--invite-surface, transparent);border:1px solid var(--invite-border, transparent)}.invite-actions{display:flex;align-items:center;gap:10px}.invite-row .secondary-button{padding:6px 12px;font-size:.85rem}.invite-copy{border-color:var(--invite-border, var(--line))}.invite-revoke{border-color:var(--invite-border, var(--line));color:color-mix(in srgb,var(--invite-accent, var(--ink)),black 18%);background:color-mix(in srgb,var(--invite-surface, rgba(255, 255, 255, .88)),white 30%)}.marketing-shell{min-height:100svh;padding:18px}.marketing-nav,.marketing-article{width:min(820px,100%);margin:0 auto}.marketing-nav{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 4px 18px}.marketing-nav div{display:flex;gap:18px}.marketing-nav a{color:var(--muted);text-decoration:none;font-size:.9rem}.marketing-nav a:hover{color:var(--ink)}.marketing-brand{color:var(--ink)!important;font-weight:700;letter-spacing:-.02em}.marketing-article{background:var(--panel);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow);overflow:hidden}.marketing-article>header,.marketing-body,.marketing-footer-cta{padding:clamp(28px,6vw,64px)}.marketing-related{margin:2.5rem 0;padding:1.25rem 1.5rem;border:1px solid var(--line);border-radius:16px}.marketing-related ul{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;margin:.7rem 0 0;padding:0;list-style:none}.marketing-related a{color:var(--ink);font-weight:650;text-underline-offset:.18em}.marketing-article>header{background:radial-gradient(circle at top right,rgba(0,122,255,.1),transparent 42%),#ffffff6b}.marketing-article h1{margin:0;max-width:14ch;font-size:clamp(2.35rem,7vw,4.8rem);line-height:.98;letter-spacing:-.045em}.marketing-intro{max-width:42rem;margin:22px 0 0;color:var(--muted);font-size:clamp(1.05rem,2.5vw,1.25rem);line-height:1.6}.marketing-byline{margin:18px 0 -8px;color:var(--ink);font-size:.95rem;font-weight:700}.marketing-primary-cta{display:inline-flex;align-items:center;justify-content:center;margin-top:24px;text-decoration:none}.marketing-header-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px}.marketing-header-actions .marketing-primary-cta,.marketing-source-cta,.marketing-deploy-cta{margin-top:0;text-decoration:none}.marketing-footer-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px}.marketing-footer-actions .marketing-primary-cta,.marketing-live-cta{margin-top:0;text-decoration:none}.marketing-body{display:grid;gap:42px}.marketing-body section{display:grid;gap:14px}.marketing-body h2,.marketing-footer-cta h2{margin:0;font-size:clamp(1.45rem,3vw,2rem);letter-spacing:-.025em}.marketing-body p,.marketing-body li,.marketing-caveat p,.marketing-footer-cta p{font-size:1rem;line-height:1.7}.marketing-body p,.marketing-caveat p,.marketing-footer-cta p{margin:0}.marketing-body ul,.marketing-body ol{display:grid;gap:12px;margin:0;padding-left:1.4rem}.marketing-table-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:16px}.marketing-body table{width:100%;min-width:520px;border-collapse:collapse;background:#ffffff75}.marketing-body figure{margin:28px 0}.marketing-body figure img{display:block;height:auto;width:100%;border:1px solid rgba(99,116,151,.22);border-radius:22px;box-shadow:0 18px 50px #1f33591a}.marketing-body figcaption{margin-top:10px;color:var(--muted);font-size:.92rem;line-height:1.5}.marketing-body th,.marketing-body td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;line-height:1.55}.marketing-body th{background:#0e614e12;color:var(--ink);font-size:.9rem}.marketing-body tr:last-child td{border-bottom:0}.marketing-body code{padding:.12em .34em;border:1px solid var(--line);border-radius:6px;background:#0000000a;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.9em}.marketing-body pre{max-width:100%;margin:0;padding:18px 20px;overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:#081210f0;color:#eff8f5;line-height:1.55}.marketing-body pre code{padding:0;border:0;background:transparent;color:inherit}.marketing-caveat{padding:22px 24px;border-radius:20px;border:1px solid rgba(255,149,0,.22);background:#ff950014}.marketing-caveat p{margin-top:8px;color:var(--muted)}.marketing-caveat a{color:var(--accent-strong)}.marketing-footer-cta{border-top:1px solid var(--line);background:#ffffff80}.marketing-footer-cta p:not(.eyebrow){max-width:38rem;margin-top:12px;color:var(--muted)}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:640px){.marketing-nav{align-items:flex-start}.marketing-nav div{gap:10px;flex-direction:column;align-items:flex-end}}@media(max-width:900px){.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:20px 24px 30px}.hero-brand{margin-bottom:18px}.hero-panel{padding:22px;min-height:220px}.hero-links{justify-content:center}.setting-row{grid-template-columns:1fr}input,textarea,select{font-size:16px}}@media(max-width:560px){.landing-shell,.room-shell{padding:10px;padding-left:max(10px,env(safe-area-inset-left));padding-right:max(10px,env(safe-area-inset-right))}.hero h1{font-size:clamp(2.1rem,11vw,3rem)}.hero-copy{padding:16px 18px 22px;border-radius:22px}.hero-brand{margin-bottom:14px}.hero-links{margin-bottom:20px}.lede{font-size:.95rem}.setting-controls{flex-wrap:wrap}.setting-input{flex:1 1 84px;min-width:0}.setting-select{flex:1 1 116px}.hero-actions{align-items:stretch}.hero-actions .primary-button{width:100%;text-align:center}.hero-panel{padding:18px;min-height:170px;border-radius:22px}.github-cta-copy span{display:none}.room-shell{gap:8px;height:100svh;height:100dvh;padding-top:max(10px,env(safe-area-inset-top));padding-bottom:max(10px,env(safe-area-inset-bottom))}.room-header,.room-strip,.chat-log,.composer textarea{border-radius:18px}.room-header,.room-strip{padding:10px 12px}.room-header{flex-direction:column;gap:10px}.room-header h1{font-size:1.1rem}.room-subtitle{font-size:.85rem}.room-toolbar{width:100%;justify-items:stretch}.room-meta{width:100%;justify-content:space-between}.room-actions{width:100%}.room-actions .secondary-button{flex:1 1 auto;text-align:center}.invite-settings{grid-template-columns:1fr}.participant-strip{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch}.participant-strip::-webkit-scrollbar{display:none}.participant-chip{flex:0 0 auto}.chat-log{padding:10px}.bubble{max-width:88%}.composer:not(.composer-vault){grid-template-columns:auto 1fr;gap:6px}.composer:not(.composer-vault) textarea{min-height:44px;padding:10px 12px}.composer:not(.composer-vault) .composer-attach{height:44px;width:44px}.composer:not(.composer-vault) .primary-button{grid-column:1 / -1;width:100%;text-align:center}.room-vault-shell{padding:8px 10px;padding-top:max(8px,env(safe-area-inset-top));padding-bottom:max(8px,env(safe-area-inset-bottom));gap:6px}.room-vault-header{padding:10px 12px;border-radius:16px;gap:8px}.vault-header-top{flex-wrap:wrap;gap:8px;justify-content:space-between}.vault-brand-cluster{gap:8px}.vault-name{font-size:.96rem}.vault-room-id{font-size:.72rem;padding:2px 6px}.vault-actions{gap:6px}.vault-action-btn{padding:5px 10px;font-size:.76rem;border-radius:8px}.vault-header-sub{flex-wrap:wrap;gap:6px;padding-top:6px;justify-content:space-between}.vault-presence-cluster{flex-wrap:wrap;gap:6px}.vault-security-pills{flex-wrap:wrap;gap:4px}.security-pill{font-size:.68rem;padding:2px 6px}.chat-stage{border-radius:16px}.chat-log{padding:14px 10px}.bubble{max-width:88%;padding:10px 14px;border-radius:14px}.bubble-content{font-size:.92rem}.composer.composer-vault{padding:8px 10px;border-radius:16px;gap:6px}.composer-hint{display:none}.composer-enc-badge{font-size:.7rem}.composer-input-row{gap:6px}.composer-attach{height:42px;width:42px;flex:0 0 42px;border-radius:12px;font-size:1rem}.composer-input-row textarea{min-height:42px;max-height:100px;padding:9px 12px;border-radius:12px;font-size:.92rem}.composer.composer-vault .composer-send-btn{height:42px;width:42px;flex:0 0 42px;padding:0;border-radius:12px;justify-content:center;align-items:center;min-width:0}.composer-send-btn .send-text{display:none}.composer-send-btn .send-icon{font-size:1.2rem;font-weight:700}.vault-modal{border-radius:20px;max-width:100%}.vault-modal-header{padding:16px 18px 12px}.vault-modal-body{padding:14px 16px;gap:14px}.invite-duration-row{flex-direction:column;align-items:flex-start;gap:8px}.invite-duration-row .setting-controls{width:100%}.vault-modal-footer{padding:12px 16px}}@media(min-width:561px)and (max-width:820px){.vault-header-top{flex-wrap:wrap;gap:10px}.vault-header-sub{flex-wrap:wrap;gap:8px}.bubble{max-width:82%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}.jump-to-latest{position:absolute;bottom:16px;left:50%;transform:translate(-50%);max-width:calc(100% - 32px);z-index:1;background:var(--paper, #fff);box-shadow:0 4px 16px #0000001f}.manual-invite{display:grid;gap:8px;min-width:0;padding:12px}.manual-invite label{font-weight:600}.manual-invite p{margin:0}.manual-invite input{width:100%;min-width:0;box-sizing:border-box;font:inherit;padding:10px}.manual-invite button{justify-self:start}.vault-access-screen{position:relative;max-width:440px;width:100%;padding:32px 24px;text-align:center;background:var(--panel-strong);border:1px solid var(--line-silver);border-radius:20px;box-shadow:0 24px 64px -12px #000000e6,0 0 32px #8b5cf61f;display:flex;flex-direction:column;align-items:center;gap:16px;animation:vaultCardFadeIn .3s cubic-bezier(.16,1,.3,1)}@keyframes vaultCardFadeIn{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.vault-access-screen.is-denied{animation:vaultCardShake .4s cubic-bezier(.36,.07,.19,.97) both;border-color:#f43f5e66}@keyframes vaultCardShake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.vault-access-screen.is-granted{border-color:#10b98180;box-shadow:0 24px 64px -12px #000000e6,0 0 40px #10b98140}.vault-lock-badge{width:56px;height:56px;border-radius:16px;background:radial-gradient(circle at 50% 0%,#8b5cf659,#140a24cc);border:1px solid var(--line-strong);display:flex;align-items:center;justify-content:center;font-size:26px;box-shadow:0 4px 16px #0006,0 0 16px var(--accent-glow)}.vault-access-screen.is-granted .vault-lock-badge{background:radial-gradient(circle at 50% 0%,#10b98166,#051e14cc);border-color:#10b98199;color:#34d399}.vault-pin-form{width:100%;display:flex;flex-direction:column;align-items:center;gap:16px;margin-top:8px;position:relative}.vault-pin-display{display:flex;gap:10px;cursor:text;padding:6px}.pin-cell{width:44px;height:52px;border-radius:10px;background:#0a0a0fcc;border:1px solid var(--line-silver);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:var(--silver);transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:inset 0 2px 4px #00000080}.pin-cell.is-active{border-color:var(--accent);box-shadow:0 0 12px var(--accent-glow),inset 0 2px 4px #00000080;transform:translateY(-2px)}.pin-cell.is-filled{border-color:var(--accent-strong);color:#c4b5fd}.vault-pin-hidden-input{position:absolute;opacity:0;pointer-events:auto;width:100%;height:60px;top:0;left:0;cursor:text}.vault-auth-alert{width:100%;padding:10px 14px;border-radius:8px;font-size:13px;text-align:center;display:flex;flex-direction:column;gap:4px}.vault-auth-alert.is-error{background:#f43f5e1f;border:1px solid rgba(244,63,94,.35);color:#fca5a5}.vault-auth-alert.is-warning{background:#f59e0b1f;border:1px solid rgba(245,158,11,.35);color:#fde68a}.attempts-remaining{font-size:11px;opacity:.85}.vault-verify-btn{width:100%;padding:12px 18px;font-size:14px;font-weight:600;letter-spacing:.5px}.vault-access-footer{margin-top:8px;border-top:1px solid var(--line);padding-top:12px;width:100%}.vault-subtext{font-size:11px;color:var(--muted);letter-spacing:.3px}.vault-security-btn{position:relative;display:inline-flex;align-items:center;gap:6px}.vault-badge-secure{font-size:9px;font-weight:700;letter-spacing:.5px;padding:1px 5px;border-radius:4px;background:#8b5cf640;border:1px solid rgba(167,139,250,.4);color:#c4b5fd}.security-status-card{padding:14px 16px;border-radius:12px;background:#0e0e14b3;border:1px solid var(--line-silver);display:flex;flex-direction:column;gap:12px}.status-header-row{display:flex;justify-content:space-between;align-items:center}.status-indicator{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--silver)}.code-display-box{display:flex;align-items:center;justify-content:space-between;background:#08080cd9;border:1px solid var(--line-strong);border-radius:10px;padding:12px 16px}.code-numbers{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:26px;font-weight:700;letter-spacing:8px;color:#c4b5fd;text-shadow:0 0 12px rgba(139,92,246,.4)}.security-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:4px}.custom-code-input-row{display:flex;gap:8px;align-items:center}.custom-code-input{flex:1;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:16px;letter-spacing:2px;text-align:center}.vault-rejoin-countdown{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#8b5cf614;border:1px solid rgba(139,92,246,.2);border-radius:999px;color:#c084fc;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.85rem;font-weight:500;letter-spacing:.02em;margin-top:4px}.vault-secondary-btn{background:#ffffff0a;border-color:#ffffff26;color:#94a3b8}.vault-secondary-btn:hover{background:#ffffff14;border-color:#ffffff40;color:#f1f5f9}.active-vault-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;max-width:680px;margin:0 auto 24px;padding:16px 20px;background:linear-gradient(135deg,#1e1432d9,#120e1cf2);border:1px solid rgba(168,85,247,.35);border-radius:14px;box-shadow:0 8px 24px -4px #0009,0 0 20px #a855f726;animation:vaultCardFadeIn .3s cubic-bezier(.16,1,.3,1)}.active-vault-content{display:flex;align-items:center;gap:12px}.active-vault-dot{width:10px;height:10px;border-radius:50%;background:#a855f7;box-shadow:0 0 8px #a855f7;animation:pulseDot 2s infinite ease-in-out;flex-shrink:0}@keyframes pulseDot{0%,to{opacity:.6;transform:scale(.9)}50%{opacity:1;transform:scale(1.1);box-shadow:0 0 12px #c084fc}}.active-vault-text strong{display:block;font-size:.95rem;color:#f1f5f9;letter-spacing:-.01em}.active-vault-text p{margin:2px 0 0;font-size:.82rem;color:#94a3b8}.active-vault-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.active-vault-return-btn{padding:8px 16px;font-size:.85rem;font-weight:600;border-radius:8px;background:linear-gradient(135deg,#9333ea,#7c3aed);border:1px solid rgba(255,255,255,.2);color:#fff;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.active-vault-return-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #9333ea66}.active-vault-dismiss-btn{background:transparent;border:none;color:#64748b;font-size:1rem;padding:6px;cursor:pointer;border-radius:6px;line-height:1}.active-vault-dismiss-btn:hover{color:#cbd5e1;background:#ffffff0d}.vault-starred-list{display:flex;flex-direction:column;gap:8px;max-height:380px;overflow-y:auto;margin-top:10px}.vault-starred-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:8px}.vault-starred-item-body{display:flex;flex-direction:column;gap:2px;overflow:hidden}.vault-starred-author{font-weight:600;color:#c4b5fd;font-size:.75rem}.vault-starred-snippet{font-size:.82rem;color:#f1f5f9;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.vault-starred-time{font-size:.7rem;color:#94a3b8}.vault-starred-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.vault-lock-barrier{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:480px;padding:32px 20px;text-align:center}.vault-lock-card{width:100%;max-width:420px;background:#0f172ad9;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid rgba(139,92,246,.3);border-radius:16px;padding:32px 24px;box-shadow:0 12px 36px #0006,0 0 24px #8b5cf626;display:flex;flex-direction:column;align-items:center;gap:16px}.vault-lock-shield{font-size:3rem;line-height:1;filter:drop-shadow(0 4px 12px rgba(139,92,246,.5))}.vault-lock-title{font-size:1.35rem;font-weight:700;color:#f8fafc;margin:0}.vault-lock-desc{font-size:.88rem;color:#94a3b8;line-height:1.5;margin:0}.vault-lock-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:#8b5cf61f;border:1px solid rgba(139,92,246,.25);border-radius:999px;color:#c4b5fd;font-size:.72rem;font-weight:600;letter-spacing:.02em}.vault-lock-form{display:flex;flex-direction:column;gap:12px;width:100%;margin-top:8px}.vault-lock-input{width:100%;padding:10px 14px;background:#00000059;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#f8fafc;font-size:.95rem;text-align:center;letter-spacing:.1em;outline:none;transition:border-color .15s ease}.vault-lock-input:focus{border-color:#a78bfa;box-shadow:0 0 0 2px #a78bfa33}.vault-lock-submit-btn,.vault-lock-webauthn-btn{width:100%;padding:10px 16px;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .15s ease;border:none}.vault-lock-submit-btn{background:linear-gradient(135deg,#7c3aed,#6366f1);color:#fff}.vault-lock-submit-btn:hover{background:linear-gradient(135deg,#6d28d9,#4f46e5)}.vault-lock-webauthn-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#e2e8f0;display:inline-flex;align-items:center;justify-content:center;gap:8px}.vault-lock-webauthn-btn:hover{background:#ffffff24}.vault-lock-error{color:#f87171;font-size:.8rem;margin:0}.vault-lock-disclaimer{font-size:.72rem;color:#64748b;line-height:1.4;margin-top:8px}.vault-lock-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#e2e8f0;font-size:.8rem;font-weight:500;cursor:pointer;transition:background .15s}.vault-lock-btn:hover{background:#ffffff1f}.vault-lock-btn.is-active{background:#8b5cf633;border-color:#8b5cf666;color:#c4b5fd}.recent-chats-card{background:#0f172a99;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:16px 20px;margin-bottom:24px}.recent-chats-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.recent-chats-title{font-size:.95rem;font-weight:600;color:#f1f5f9;display:flex;align-items:center;gap:8px}.recent-chats-auto-clear-toggle{display:flex;align-items:center;gap:8px;font-size:.78rem;color:#94a3b8;cursor:pointer}.recent-chats-list{display:flex;flex-direction:column;gap:8px}.recent-chat-entry{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#ffffff0a;border:1px solid rgba(255,255,255,.06);border-radius:8px}.recent-chat-info{display:flex;flex-direction:column;gap:2px}.recent-chat-link{color:#a78bfa;font-weight:600;font-size:.85rem;text-decoration:none}.recent-chat-link:hover{text-decoration:underline}.recent-chat-time{font-size:.7rem;color:#64748b}.recent-chat-dismiss-btn{background:transparent;border:none;color:#64748b;cursor:pointer;padding:4px;font-size:.85rem;border-radius:4px}.recent-chat-dismiss-btn:hover{color:#ef4444;background:#ef44441a}.partner-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b8;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:1100;display:flex;align-items:center;justify-content:center;padding:16px;animation:partnerFadeIn .2s ease-out}@keyframes partnerFadeIn{0%{opacity:0}to{opacity:1}}.partner-modal-dialog{background:#0f172a;border:1px solid rgba(255,255,255,.12);border-radius:18px;width:100%;max-width:520px;max-height:88vh;overflow-y:auto;padding:24px;color:#f8fafc;box-shadow:0 24px 48px -12px #000000a6}.partner-page-container{min-height:100vh;padding:24px 16px 96px;display:flex;justify-content:center;align-items:flex-start;background:#fff5f7;color:#1e1b4b}.partner-page-dialog{background:#fff;border:1px solid #fce7f3;border-radius:24px;width:100%;max-width:600px;padding:24px;color:#1e1b4b;box-shadow:0 12px 32px #f43f5e14}.partner-modal-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;border-bottom:1px solid #fce7f3;padding-bottom:16px}.partner-modal-dialog .partner-modal-header{border-bottom:1px solid rgba(255,255,255,.12)}.partner-modal-dialog .partner-modal-title{color:#f8fafc}.partner-modal-dialog .partner-modal-subtitle{color:#cbd5e1}.partner-modal-dialog .partner-modal-close-btn{background:#ffffff1f;color:#f8fafc}.partner-modal-dialog .partner-modal-close-btn:hover{background:#ffffff38;color:#fff}.partner-modal-dialog .partner-active-card,.partner-modal-dialog .partner-permissions-box{background:#ffffff0a;border-color:#ffffff24}.partner-modal-dialog .partner-name,.partner-modal-dialog .partner-permissions-title,.partner-modal-dialog .partner-perm-label,.partner-modal-dialog .partner-preview-header{color:#f8fafc}.partner-modal-dialog .partner-meta,.partner-modal-dialog .partner-perm-desc{color:#cbd5e1}.partner-modal-dialog .partner-perm-item{background:#ffffff0f;border-color:#ffffff1f}.partner-modal-dialog .partner-perm-item:hover{background:#ffffff1a;border-color:#ec489980}.partner-feedback-banner{padding:10px 14px;border-radius:8px;font-size:.85rem;margin-bottom:16px;display:flex;align-items:center;gap:8px}.partner-feedback-banner.is-success{background:#10b98126;border:1px solid rgba(16,185,129,.3);color:#065f46}.partner-feedback-banner.is-error{background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#991b1b}.partner-modal-content{display:flex;flex-direction:column;gap:20px}.partner-active-card{background:#fff5f7;border:1px solid #fce7f3;border-radius:18px;padding:18px}.partner-active-header{display:flex;align-items:center;gap:14px;margin-bottom:18px}.partner-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#ec4899,#8b5cf6);display:flex;align-items:center;justify-content:center;font-size:1.3rem}.partner-info{display:flex;flex-direction:column;gap:2px}.partner-status-pill{font-size:.72rem;font-weight:600;color:#059669;text-transform:uppercase;letter-spacing:.5px}.partner-presence-pill{font-size:.72rem;font-weight:600;padding:2px 8px;border-radius:9999px;display:inline-flex;align-items:center;gap:4px;background:#0000000d;color:#475569;border:1px solid #e2e8f0;transition:all .2s ease}.partner-presence-pill.is-online{background:#d1fae5;color:#065f46;border-color:#a7f3d0}.partner-presence-pill.is-connecting,.partner-presence-pill.is-reconnecting{background:#fef3c7;color:#92400e;border-color:#fde68a}.partner-presence-pill.is-offline{background:#f1f5f9;color:#475569;border-color:#e2e8f0}.partner-name{font-size:1.15rem;font-weight:700;color:#1e1b4b}.partner-meta{font-size:.82rem;color:#475569}.partner-permissions-box{background:#fff5f7;border:1px solid #fce7f3;border-radius:18px;padding:18px;display:flex;flex-direction:column;gap:12px}.partner-permissions-title{font-size:1rem;font-weight:700;color:#1e1b4b;display:flex;align-items:center;gap:6px}.partner-disclaimer-note{font-size:.82rem;color:#78350f;line-height:1.45;background:#fffbeb;border:1px solid #fde68a;border-radius:10px;padding:10px 14px;margin:0}.partner-permissions-list{display:flex;flex-direction:column;gap:10px;margin-top:4px}.partner-perm-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:12px;background:#fff;border:1px solid #fce7f3;cursor:pointer;transition:all .15s}.partner-perm-item:hover{background:#fdf2f8;border-color:#fbcfe8}.partner-perm-item input[type=checkbox]{margin-top:3px;accent-color:#ec4899;width:18px;height:18px;cursor:pointer}.partner-perm-info{display:flex;flex-direction:column;gap:2px}.partner-perm-label{font-size:.92rem;font-weight:700;color:#1e1b4b}.partner-perm-desc{font-size:.8rem;color:#475569}.partner-privacy-badge{font-size:.68rem;font-weight:700;text-transform:uppercase;padding:2px 8px;border-radius:6px;background:#fef3c7;color:#92400e;border:1px solid #fde68a}.partner-sub-permissions{margin-left:26px;display:flex;flex-direction:column;gap:8px;border-left:2px solid #f472b6;padding-left:10px}.partner-sharing-preview-box{background:#fdf2f8;border:1.5px dashed #f472b6;border-radius:16px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}.partner-preview-header{display:flex;align-items:center;gap:6px;font-size:.88rem;font-weight:700;color:#1e1b4b}.partner-preview-empty{display:flex;align-items:center;gap:8px;font-size:.82rem;color:#64748b;padding:4px 0}.partner-preview-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.partner-preview-items li{display:flex;align-items:center;gap:8px;font-size:.82rem;padding:6px 10px;border-radius:8px}.partner-preview-items li.is-shared{background:#d1fae5;color:#065f46;font-weight:600}.partner-preview-items li.is-hidden{background:#f1f5f9;color:#475569}.partner-preview-check{font-weight:700;font-size:.85rem}.partner-actions-bar{display:flex;flex-direction:column;gap:10px;margin-top:10px}.partner-save-btn{background:#ec4899;border:none;border-radius:8px;color:#fff;font-weight:600;font-size:.88rem;padding:10px 16px;cursor:pointer;transition:background .15s}.partner-save-btn:hover{background:#db2777}.partner-disconnect-btn{background:transparent;border:1px solid rgba(239,68,68,.4);color:#f87171;border-radius:8px;font-weight:500;font-size:.82rem;padding:8px 14px;cursor:pointer;transition:all .15s}.partner-disconnect-btn:hover{background:#ef44441a;border-color:#ef4444}.partner-confirm-box{background:#ef444414;border:1px solid rgba(239,68,68,.25);border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:8px}.partner-confirm-warning{font-size:.8rem;color:#fca5a5;margin:0;line-height:1.4}.partner-confirm-terminate-btn{background:#ef4444;border:none;border-radius:6px;color:#fff;font-size:.8rem;font-weight:600;padding:6px 12px;cursor:pointer}.partner-cancel-btn{background:#ffffff14;border:none;border-radius:6px;color:#e2e8f0;font-size:.8rem;padding:6px 12px;cursor:pointer}.partner-tabs{display:flex;gap:8px;background:#00000040;padding:4px;border-radius:10px;border:1px solid rgba(255,255,255,.08);margin-bottom:8px}.partner-tab{flex:1;padding:8px 12px;background:transparent;border:none;border-radius:8px;color:#94a3b8;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;gap:6px}.partner-tab:hover{color:#f1f5f9;background:#ffffff0a}.partner-tab.is-active{background:#8b5cf640;color:#f8fafc;border:1px solid rgba(139,92,246,.4)}.partner-self-invite-warning{margin-top:8px;padding:8px 12px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#fca5a5;font-size:.8rem;line-height:1.4}.partner-unconnected-container{display:flex;flex-direction:column;gap:16px}.partner-empty-state{text-align:center;padding:16px}.partner-empty-icon{font-size:2.2rem;display:block;margin-bottom:6px}.partner-empty-state h3{font-size:1.05rem;color:#f1f5f9;margin:0 0 4px}.partner-empty-state p{font-size:.82rem;color:#94a3b8;margin:0}.partner-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:16px}.partner-card h4{font-size:.95rem;color:#f1f5f9;margin:0 0 4px}.partner-card-desc{font-size:.8rem;color:#94a3b8;margin:0 0 12px;line-height:1.4}.partner-primary-btn{background:#8b5cf6;border:none;border-radius:8px;color:#fff;font-size:.85rem;font-weight:600;padding:8px 16px;cursor:pointer;transition:background .15s}.partner-primary-btn:hover{background:#7c3aed}.partner-primary-btn:disabled{opacity:.5;cursor:not-allowed}.partner-invite-created-box{background:#8b5cf61a;border:1px solid rgba(139,92,246,.3);border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:8px}.partner-invite-label{font-size:.8rem;color:#c4b5fd;font-weight:500}.partner-token-display{display:flex;justify-content:space-between;align-items:center;background:#0006;padding:8px 12px;border-radius:6px}.partner-token-display code{color:#f8fafc;font-family:monospace;font-size:.85rem;word-break:break-all}.partner-copy-btn{background:#8b5cf6;border:none;border-radius:6px;color:#fff;font-size:.75rem;padding:5px 10px;cursor:pointer;white-space:nowrap}.partner-input-row{display:flex;gap:8px}.partner-text-input{flex:1;background:#0000004d;border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:8px 12px;color:#f8fafc;font-size:.85rem}.partner-text-input:focus{outline:none;border-color:#8b5cf6}.partner-invites-list{display:flex;flex-direction:column;gap:8px}.partner-invite-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#00000040;border:1px solid rgba(255,255,255,.05);border-radius:8px}.partner-invite-item-info{display:flex;flex-direction:column;gap:2px}.partner-token-preview{font-size:.8rem;color:#c4b5fd}.partner-invite-item-meta{font-size:.7rem;color:#64748b}.partner-copy-small-btn{background:#ffffff14;border:none;color:#e2e8f0;font-size:.72rem;padding:4px 8px;border-radius:4px;cursor:pointer}.partner-cancel-small-btn{background:#ef44441a;border:1px solid rgba(239,68,68,.25);color:#f87171;font-size:.72rem;padding:4px 8px;border-radius:4px;cursor:pointer}.voice-call-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#000000bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:16px}.voice-call-card{background:#0f172a;border:1px solid rgba(139,92,246,.3);border-radius:20px;width:100%;max-width:380px;padding:32px 24px;display:flex;flex-direction:column;align-items:center;text-align:center;box-shadow:0 20px 40px #0009,0 0 30px #8b5cf633}.voice-call-avatar-wrapper{margin-bottom:16px}.voice-call-avatar{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#8b5cf6,#ec4899);display:flex;align-items:center;justify-content:center;font-size:2.2rem;box-shadow:0 8px 24px #8b5cf666}.voice-call-avatar.is-pulse{animation:voice-pulse 2s infinite ease-in-out}@keyframes voice-pulse{0%{box-shadow:0 0 #10b98199}70%{box-shadow:0 0 0 16px #10b98100}to{box-shadow:0 0 #10b98100}}.voice-call-partner-name{font-size:1.3rem;font-weight:700;color:#f8fafc;margin:0 0 8px}.voice-call-status-box{min-height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;margin-bottom:24px}.voice-call-status{font-size:.9rem;margin:0;display:flex;align-items:center;gap:6px}.voice-call-status.is-ringing,.voice-call-status.is-calling{color:#c4b5fd;animation:pulse-opacity 1.5s infinite}.voice-call-status.is-connecting,.voice-call-status.is-reconnecting{color:#fbbf24}.voice-call-status.is-ended{color:#94a3b8}@keyframes pulse-opacity{0%,to{opacity:1}50%{opacity:.5}}.voice-call-timer{display:flex;align-items:center;gap:8px;font-size:1.15rem;font-weight:600;color:#10b981;font-variant-numeric:tabular-nums}.voice-call-live-indicator{color:#10b981;font-size:.8rem;animation:live-blink 1s infinite alternate}@keyframes live-blink{0%{opacity:.3}to{opacity:1}}.voice-call-reason{font-size:.75rem;color:#64748b;margin-top:4px}.voice-call-actions{width:100%;display:flex;justify-content:center}.voice-call-decision-buttons,.voice-call-connected-controls{display:flex;gap:16px;width:100%;justify-content:center}.voice-call-btn{padding:12px 20px;border-radius:9999px;font-size:.92rem;font-weight:600;border:none;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:8px}.voice-call-btn.is-accept{background:#10b981;color:#fff;flex:1}.voice-call-btn.is-accept:hover{background:#059669}.voice-call-btn.is-reject,.voice-call-btn.is-cancel,.voice-call-btn.is-end{background:#ef4444;color:#fff;flex:1}.voice-call-btn.is-reject:hover,.voice-call-btn.is-cancel:hover,.voice-call-btn.is-end:hover{background:#dc2626}.voice-call-btn.is-mute{background:#ffffff1a;color:#f1f5f9;border:1px solid rgba(255,255,255,.2);flex:1}.voice-call-btn.is-mute:hover{background:#ffffff2e}.voice-call-btn.is-mute.is-active{background:#ef444433;border-color:#ef4444;color:#fca5a5}.voice-call-btn.is-dismiss{background:#ffffff1a;color:#e2e8f0;padding:8px 24px}.call-video-stage{position:relative;width:100%;aspect-ratio:4 / 3;max-height:480px;background:#0f172a;border-radius:16px;overflow:hidden;margin-bottom:16px;display:flex;align-items:center;justify-content:center}.remote-video-element{width:100%;height:100%;object-fit:cover}.local-video-preview-wrapper{position:absolute;bottom:12px;right:12px;width:120px;height:90px;border-radius:10px;overflow:hidden;background:#1e293b;border:2px solid rgba(255,255,255,.25);box-shadow:0 4px 12px #0006;z-index:10}.local-video-element{width:100%;height:100%;object-fit:cover;transform:scaleX(-1)}.video-placeholder-box{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#94a3b8;font-size:.88rem;padding:16px;text-align:center}.video-placeholder-icon{font-size:2.2rem}.video-fallback-banner{background:#f59e0b26;border:1px solid rgba(245,158,11,.4);color:#fde68a;padding:6px 12px;border-radius:8px;font-size:.82rem;margin-bottom:12px;display:flex;align-items:center;gap:6px}.voice-call-btn.is-camera{background:#ffffff1a;color:#f1f5f9;border:1px solid rgba(255,255,255,.2)}.voice-call-btn.is-camera.is-off{background:#ef444433;border-color:#ef4444;color:#fca5a5}.voice-call-btn.is-switch{background:#ffffff1a;color:#f1f5f9;border:1px solid rgba(255,255,255,.2)}.wellness-light-theme,.auth-screen-container,.auth-card,.onboarding-card,.partner-page-container,.health-dashboard-container,.cycle-calendar-container,.insights-container{color-scheme:light}.auth-card,.onboarding-card,.partner-page-dialog,.health-card{color:#1e1b4b!important}.auth-card p,.onboarding-card p,.partner-page-dialog p{color:#334155}.auth-card h1,.auth-card h2,.auth-card h3,.onboarding-card h1,.onboarding-card h2,.onboarding-card h3,.partner-page-dialog h1,.partner-page-dialog h2,.partner-page-dialog h3{color:#0f172a}.auth-card label,.onboarding-card label,.partner-page-dialog label{color:#1e1b4b}.auth-card strong,.onboarding-card strong,.partner-page-dialog strong{color:#0f172a}.auth-card input,.onboarding-card input,.partner-page-dialog input{color:#0f172a!important}.auth-card input::placeholder,.onboarding-card input::placeholder,.partner-page-dialog input::placeholder{color:#94a3b8!important}.vault-action-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;position:relative!important;min-width:38px!important;height:38px!important;padding:0 8px!important;border-radius:12px!important;font-size:1.05rem!important;cursor:pointer!important;background:#ffffff0f!important;border:1px solid rgba(255,255,255,.12)!important;color:#f1f5f9!important;transition:all .2s cubic-bezier(.16,1,.3,1)!important}.vault-action-btn:hover{background:#ffffff24!important;border-color:#a78bfa66!important;color:#fff!important;transform:translateY(-1px) scale(1.05)!important;box-shadow:0 4px 14px #8b5cf640!important}.vault-action-btn:focus-visible{outline:2px solid #a78bfa!important;outline-offset:2px!important}.vault-badge-count{position:absolute;top:-4px;right:-4px;background:#e11d48;color:#fff;font-size:.68rem;font-weight:700;min-width:16px;height:16px;line-height:16px;text-align:center;border-radius:9999px;padding:0 4px;box-shadow:0 2px 6px #0006}.vault-badge-secure{position:absolute;top:-4px;right:-4px;background:#10b981;color:#fff;font-size:.62rem;font-weight:800;padding:1px 4px;border-radius:6px;box-shadow:0 2px 6px #0000004d}.partner-join-banner{position:fixed;top:20px;left:50%;transform:translate(-50%);z-index:9999;width:90%;max-width:440px;background:#120e1cf5;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(167,139,250,.35);border-radius:20px;padding:16px 20px;box-shadow:0 20px 48px #000000bf,0 0 24px #8b5cf640;animation:slideDownFade .35s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;gap:12px}@keyframes slideDownFade{0%{opacity:0;transform:translate(-50%,-24px) scale(.96)}to{opacity:1;transform:translate(-50%) scale(1)}}.partner-join-header{display:flex;align-items:center;gap:12px}.partner-join-avatar-box{position:relative;width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#ec4899,#8b5cf6);display:flex;align-items:center;justify-content:center;font-weight:700;color:#fff;font-size:1.1rem}.partner-join-online-pulse{position:absolute;bottom:0;right:0;width:12px;height:12px;border-radius:50%;background:#10b981;border:2px solid #120e1c;box-shadow:0 0 8px #10b981}.partner-join-body{flex:1}.partner-join-title{margin:0;font-size:.96rem;font-weight:700;color:#f8fafc;display:flex;align-items:center;gap:6px}.partner-join-desc{margin:2px 0 0;font-size:.82rem;color:#94a3b8}.partner-join-actions{display:flex;gap:10px;justify-content:flex-end}.partner-join-open-btn{padding:8px 18px;border-radius:12px;border:none;background:linear-gradient(135deg,#ec4899,#a855f7);color:#fff;font-size:.86rem;font-weight:700;cursor:pointer;box-shadow:0 4px 14px #ec489959;transition:transform .15s ease}.partner-join-open-btn:hover{transform:translateY(-1px)}.partner-join-dismiss-btn{padding:8px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.15);background:#ffffff0f;color:#cbd5e1;font-size:.86rem;font-weight:600;cursor:pointer}.partner-join-dismiss-btn:hover{background:#ffffff1f;color:#fff}@keyframes onboardingSlideForward{0%{opacity:0;transform:translate3d(16px,0,0)}to{opacity:1;transform:translateZ(0)}}@keyframes onboardingSlideBackward{0%{opacity:0;transform:translate3d(-16px,0,0)}to{opacity:1;transform:translateZ(0)}}.onboarding-step-forward{animation:onboardingSlideForward .26s cubic-bezier(.16,1,.3,1) both}.onboarding-step-backward{animation:onboardingSlideBackward .26s cubic-bezier(.16,1,.3,1) both}.onboarding-progress-bar-fill{transition:width .35s cubic-bezier(.4,0,.2,1)!important}.onboarding-interactive-btn{transition:transform .15s cubic-bezier(.16,1,.3,1),box-shadow .15s ease,opacity .15s ease!important}.onboarding-interactive-btn:active:not(:disabled){transform:scale(.96)!important}.nav-item{transition:transform .15s cubic-bezier(.16,1,.3,1),color .18s ease!important;will-change:transform}.nav-item:active{transform:scale(.92)!important}.nav-item .nav-icon{display:inline-block;transition:transform .28s cubic-bezier(.34,1.56,.64,1)!important;will-change:transform}.nav-item.active .nav-icon{transform:scale(1.15)!important}.unified-navigation .indicator{transition:left .32s cubic-bezier(.34,1.56,.64,1),width .22s ease!important;will-change:left}.lotus-progress-circle{transition:stroke-dasharray .75s cubic-bezier(.16,1,.3,1),stroke .3s ease!important}@keyframes lotusReveal{0%{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}.lotus-center-icon{animation:lotusReveal .45s cubic-bezier(.34,1.56,.64,1) both}.lotus-card-interactive{transition:transform .18s cubic-bezier(.16,1,.3,1),box-shadow .18s ease!important;cursor:pointer}.lotus-card-interactive:active{transform:scale(.98)!important}.quick-action-btn-interactive,button[style*=quickActionBtn]{transition:transform .15s cubic-bezier(.16,1,.3,1),box-shadow .15s ease!important}.quick-action-btn-interactive:active,button[style*=quickActionBtn]:active{transform:scale(.95)!important}.bubble{animation:rise .2s cubic-bezier(.16,1,.3,1)!important;will-change:transform,opacity}@keyframes rise{0%{opacity:0;transform:translate3d(0,8px,0)}to{opacity:1;transform:translateZ(0)}}.reaction-pill,.reaction-badge{transition:transform .15s cubic-bezier(.34,1.56,.64,1)!important}.reaction-pill:active,.reaction-badge:active{transform:scale(1.18)!important}.send-button:active,.composer-send-btn:active{transform:scale(.92)!important}.bubble-sent-status,.bubble-delivered-status,.bubble-seen-status{transition:opacity .25s ease,transform .25s cubic-bezier(.16,1,.3,1)}@keyframes partnerLivePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.65;transform:scale(.94)}}.presence-agent.active .agent-indicator,.partner-online-indicator{animation:partnerLivePulse 2.8s infinite ease-in-out}@keyframes modalBackdropFade{0%{opacity:0}to{opacity:1}}@keyframes modalSheetEnter{0%{opacity:0;transform:translate3d(0,12px,0) scale(.97)}to{opacity:1;transform:translateZ(0) scale(1)}}.modal-backdrop-anim{animation:modalBackdropFade .2s ease both}.modal-sheet-anim{animation:modalSheetEnter .25s cubic-bezier(.16,1,.3,1) both}button:active:not(:disabled),.primary-button:active:not(:disabled),.secondary-button:active:not(:disabled){transform:scale(.97)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
