:root{color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,system-ui,Helvetica Neue,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--app-background: #f2f6fb;--surface-primary: #ffffff;--surface-secondary: #f5faff;--surface-elevated: #ffffff;--accent-primary: #147ef5;--accent-primary-hover: #0a6fe8;--accent-primary-soft: #e5f0ff;--text-primary: #172b4d;--text-secondary: #6f829b;--text-muted: #9aaabd;--border-subtle: #dfe8f2;--border-strong: #cbd9e8;--shadow-soft: 0 8px 24px rgba(50, 79, 112, .08);--shadow-elevated: 0 22px 56px rgba(50, 79, 112, .15);--radius-small: 12px;--radius-medium: 18px;--radius-large: 28px;--radius-pill: 999px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 28px;--space-8: 32px;--space-10: 40px;--control-size: 44px;--header-height: 76px;--mobile-nav-height: 64px;--composer-max-height: 144px;--type-xs: 11px;--type-sm: 13px;--type-md: 15px;--type-lg: 18px;--type-xl: 30px;--us-bg: var(--app-background);--us-bg-elevated: var(--surface-elevated);--us-bg-panel: var(--surface-secondary);--us-bg-sidebar: var(--surface-primary);--us-bg-hover: #eef7ff;--us-bg-selected: var(--accent-primary-soft);--us-glass: rgba(255, 255, 255, .82);--us-glass-border: var(--border-subtle);--us-glass-panel: rgba(255, 255, 255, .94);--us-glass-blur: 18px;--us-border: var(--border-subtle);--us-border-strong: var(--border-strong);--us-text: var(--text-primary);--us-text-secondary: var(--text-secondary);--us-text-muted: var(--text-muted);--us-primary: var(--accent-primary);--us-primary-hover: var(--accent-primary-hover);--us-primary-soft: var(--accent-primary-soft);--us-secondary: #5d9be2;--us-accent: var(--accent-primary);--us-success: #2aa872;--us-danger: #d95061;--us-warning: #c78828;--us-input: #f8fbfe;--us-on-primary: #ffffff;--us-peer-avatar: linear-gradient(145deg, #b9e4ff, #7fc2f4);--us-message-own: #d9ecff;--us-message-own-text: var(--text-primary);--us-message-own-muted: #5b7891;--us-message-own-inset: #c9e5fb;--us-message-other: #ffffff;--us-message-own-border: #c4e1fa;--us-message-other-border: #e4ebf3;--us-message-shadow: 0 3px 12px rgba(56, 99, 132, .06);--us-message-own-shadow: 0 4px 14px rgba(52, 121, 184, .1);--us-focus-ring: #4595e9;--us-overlay: rgba(31, 57, 78, .42);--us-wallpaper-dim-color: #eff7fc;--us-chat-glow: linear-gradient(180deg, #eaf4fb, #f5faff);--us-wallpaper-aurora: linear-gradient(145deg, #e7f3fd, #f6fbff);--us-wallpaper-midnight: #edf5fb;--us-wallpaper-plum: linear-gradient(145deg, #edf4fb, #f8fbff);--us-wallpaper-ocean: linear-gradient(145deg, #e2f1fb, #f5fbff);--us-wallpaper-solid: #edf5fb;--us-wallpaper-gradient: linear-gradient(145deg, #e9f2fb, #f6fbff);--us-marble-image: none;--us-radius-sm: var(--radius-small);--us-radius-md: var(--radius-medium);--us-radius-lg: 22px;--us-radius-xl: var(--radius-large);--us-radius-pill: var(--radius-pill);--us-space-1: var(--space-1);--us-space-2: var(--space-2);--us-space-3: var(--space-3);--us-space-4: var(--space-4);--us-space-5: var(--space-5);--us-space-6: var(--space-6);--us-space-7: var(--space-7);--us-space-8: var(--space-8);--us-space-10: var(--space-10);--us-control-size: var(--control-size);--us-header-height: var(--header-height);--us-mobile-nav-height: var(--mobile-nav-height);--us-composer-max-height: var(--composer-max-height);--us-type-xs: var(--type-xs);--us-type-sm: var(--type-sm);--us-type-md: var(--type-md);--us-type-lg: var(--type-lg);--us-type-xl: var(--type-xl);--us-shadow-sm: 0 5px 16px rgba(50, 94, 128, .08);--us-shadow-md: var(--shadow-soft);--us-shadow-lg: var(--shadow-elevated);--us-duration-fast: .16s;--us-duration-normal: .24s;--us-ease-standard: cubic-bezier(.2, .7, .2, 1);--visual-viewport-height: 100dvh;--visual-viewport-offset-top: 0px;--keyboard-inset: 0px}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{min-height:100dvh;overflow:hidden;background:var(--app-background);color:var(--text-primary);font-size:var(--type-md);line-height:1.45}button,input,select,textarea{color:inherit;font:inherit}button,select{cursor:pointer}button{border:0;background:transparent;touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.52}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}:where(button,a,input,select,textarea):focus-visible{outline:3px solid var(--us-focus-ring);outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.2}svg{flex:none}.muted{color:var(--text-secondary);line-height:1.55}.eyebrow,.section-label{margin-bottom:var(--space-2);color:var(--accent-primary);font-size:var(--type-xs);font-weight:800;letter-spacing:.14em;text-transform:uppercase}.fine-print{display:flex;align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--type-xs);line-height:1.45}input,select,textarea{border:1px solid var(--border-subtle);border-radius:var(--radius-medium);outline:none;background:var(--surface-secondary);color:var(--text-primary);transition:border-color var(--us-duration-fast) var(--us-ease-standard),box-shadow var(--us-duration-fast) var(--us-ease-standard),background var(--us-duration-fast) var(--us-ease-standard)}input,select{width:100%;min-height:var(--control-size);padding:10px 14px}textarea{line-height:1.45}input::placeholder,textarea::placeholder{color:var(--text-muted);opacity:.9}input:focus,select:focus,textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 4px var(--accent-primary-soft);background:var(--surface-primary)}input:disabled,select:disabled,textarea:disabled{background:#edf3f7;color:var(--text-muted)}.icon-button{display:grid;width:var(--control-size);min-width:var(--control-size);height:var(--control-size);place-items:center;border:1px solid var(--border-subtle);border-radius:50%;background:var(--surface-primary);box-shadow:var(--shadow-soft);color:var(--text-secondary);transition:background var(--us-duration-fast) var(--us-ease-standard),color var(--us-duration-fast) var(--us-ease-standard),transform var(--us-duration-fast) var(--us-ease-standard)}.icon-button:hover,.icon-button:active{background:var(--accent-primary-soft);color:var(--accent-primary)}.icon-button:active{transform:translateY(1px)}.icon-button svg{width:19px;height:19px}.primary{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:var(--space-2);padding:0 20px;border-radius:var(--radius-pill);background:var(--accent-primary);box-shadow:0 10px 24px #1976e833;color:#fff;font-size:var(--type-sm);font-weight:800;white-space:nowrap;transition:background var(--us-duration-fast) var(--us-ease-standard),transform var(--us-duration-fast) var(--us-ease-standard),box-shadow var(--us-duration-fast) var(--us-ease-standard)}.primary:hover{background:var(--accent-primary-hover);box-shadow:0 12px 28px #1976e842}.primary:active{transform:translateY(1px)}.compact{min-height:40px;width:max-content;padding:8px 16px}.danger{display:inline-flex;min-height:var(--control-size);align-items:center;justify-content:center;gap:var(--space-2);padding:0 16px;border:1px solid #f1cbd0;border-radius:var(--radius-pill);background:#fff5f6;color:var(--us-danger);font-size:var(--type-sm);font-weight:700}.danger:hover{background:#ffe8eb}form>[role=alert],.settings-card>[role=alert]{margin:0;color:var(--us-danger);font-size:var(--type-sm)}.settings-card>[role=status],.settings-content>[role=status]{margin:0;color:var(--us-success);font-size:var(--type-sm)}.auth-page{display:grid;min-height:100dvh;place-items:center;overflow:auto;padding:max(var(--space-6),env(safe-area-inset-top)) max(var(--space-6),env(safe-area-inset-right)) max(var(--space-6),env(safe-area-inset-bottom)) max(var(--space-6),env(safe-area-inset-left));background:radial-gradient(circle at 12% 0%,#d9edff 0,transparent 38%),radial-gradient(circle at 100% 100%,#dfeffc 0,transparent 42%),var(--app-background)}.auth-card{display:grid;width:min(100%,430px);gap:var(--space-7);padding:clamp(26px,6vw,44px);border:1px solid rgba(255,255,255,.86);border-radius:var(--radius-large);background:#ffffffe0;box-shadow:var(--shadow-elevated);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.auth-card h1{margin:4px 0 var(--space-2);color:var(--text-primary);font-size:var(--type-xl);line-height:1.1}.auth-card form,.settings-card{display:grid;gap:var(--space-4)}.auth-card label,.settings-card label{display:grid;gap:var(--space-2);color:var(--text-secondary);font-size:var(--type-sm);font-weight:650}.auth-card .primary{width:100%}.creator-watermark{justify-self:start;min-height:28px;margin-top:calc(var(--space-4) * -1);padding:4px 0;color:var(--text-muted);font-size:11px;font-style:italic;font-weight:600;letter-spacing:.2px;line-height:1.2;text-align:left;transition:color var(--us-duration-fast) var(--us-ease-standard),opacity var(--us-duration-fast) var(--us-ease-standard)}.creator-watermark:hover{color:var(--accent-primary)}.login-mascot{display:grid;width:min(100%,220px);height:148px;margin:calc(var(--space-2) * -1) auto;place-items:center;pointer-events:none}.login-mascot-art{display:block;width:100%;height:100%;overflow:visible}.login-mascot-ground{fill:var(--accent-primary-soft)}.login-mascot-character{transform-origin:120px 158px;animation:us-mascot-breathe 3.8s ease-in-out infinite}.login-mascot-eyes,.login-mascot-pupil,.login-mascot-paw,.login-mascot-tail{transform-box:fill-box;transform-origin:center}.login-mascot-eyes{animation:us-mascot-blink 5.8s ease-in-out infinite}.login-mascot-lids,.login-mascot-protect,.login-mascot-success-mark,.login-mascot-failed-mark,.login-mascot-mouth-sad{opacity:0}.login-mascot-mouth-smile{opacity:1}.login-mascot-tail{transform-origin:left center;animation:us-mascot-tail 3.8s ease-in-out infinite}.login-mascot[data-state=username] .login-mascot-pupil{transform:translateY(4px)}.login-mascot[data-state=password] .login-mascot-eyes{opacity:0}.login-mascot[data-state=password] .login-mascot-lids,.login-mascot[data-state=password] .login-mascot-protect{opacity:1}.login-mascot[data-state=password] .login-mascot-paw-left{transform:translate(24px,-49px) rotate(18deg)}.login-mascot[data-state=password] .login-mascot-paw-right{transform:translate(-24px,-49px) rotate(-18deg)}.login-mascot[data-state=success] .login-mascot-success-mark,.login-mascot[data-state=failed] .login-mascot-failed-mark,.login-mascot[data-state=failed] .login-mascot-mouth-sad{opacity:1}.login-mascot[data-state=failed] .login-mascot-mouth-smile{opacity:0}.login-mascot[data-reduced-motion=true] *,.login-mascot[data-reduced-motion=true]{animation:none!important;transition:none!important}.security-mark,.password-reset-icon{display:grid;width:58px;height:58px;place-items:center;border-radius:var(--radius-medium);background:var(--accent-primary-soft);color:var(--accent-primary)}.brand{display:flex;min-width:0;align-items:center;gap:var(--space-3)}.brand-logo{position:relative;display:block;width:var(--us-logo-size, 46px);height:var(--us-logo-size, 46px);flex:none;overflow:visible;border:0;border-radius:50%;background:transparent}.animated-us-logo-fallback,.animated-us-logo-player{position:absolute;inset:0;display:block;width:100%;height:100%}.animated-us-logo-fallback{object-fit:contain;opacity:1;transition:opacity var(--us-duration-fast) var(--us-ease-standard)}.animated-us-logo-player{opacity:0;pointer-events:none}.brand-logo[data-animation-state=ready] .animated-us-logo-fallback{opacity:0}.brand-logo[data-animation-state=ready] .animated-us-logo-player{opacity:1}.animated-us-logo-player svg{display:block;width:100%!important;height:100%!important}.brand-copy{display:grid;min-width:0;gap:2px}.brand-copy small{color:var(--text-muted);font-size:9px;letter-spacing:.16em}.app-shell{position:relative;display:grid;width:min(100%,1500px);height:var(--visual-viewport-height, 100dvh);min-height:0;margin:0 auto;grid-template-columns:clamp(300px,25vw,360px) minmax(0,1fr);overflow:hidden;background:var(--app-background)}.app-shell.context-open{grid-template-columns:clamp(300px,25vw,360px) minmax(0,1fr) minmax(300px,360px)}.sidebar{position:relative;z-index:1;display:flex;min-width:0;flex-direction:column;gap:0;overflow:auto;border-right:1px solid var(--border-subtle);background:var(--surface-primary);padding:max(var(--space-3),env(safe-area-inset-top)) var(--space-3) var(--space-4)}.sidebar-top{display:flex;min-height:68px;align-items:center;gap:var(--space-3);padding:0 var(--space-2);border-bottom:1px solid var(--border-subtle)}.sidebar-top .brand{flex:1}.sidebar-top .brand-logo{--us-logo-size: 38px !important}.avatar{position:relative;display:grid;width:44px;height:44px;flex:none;overflow:hidden;place-items:center;border-radius:50%;background:linear-gradient(145deg,#4599e8,#9bd7fb);color:#fff;font-size:var(--type-sm);font-weight:800}.avatar>img{display:block;width:100%;height:100%;object-fit:cover}.avatar-button{display:grid;width:44px;height:44px;flex:none;place-items:center;padding:0;border-radius:50%}.avatar-button>.avatar{width:100%;height:100%}.avatar.purple{background:var(--us-peer-avatar);color:#215678}.avatar-small{width:36px;height:36px;font-size:var(--type-xs)}.avatar-xl{width:84px;height:84px;font-size:var(--type-lg)}.avatar-large{width:64px;height:64px;font-size:var(--type-md)}.identity-card{display:flex;min-height:70px;align-items:center;gap:var(--space-3);margin:var(--space-3) 0;padding:var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-medium);background:var(--surface-secondary)}.identity-card>div:nth-child(2){display:grid;min-width:0;flex:1;gap:var(--space-1)}.identity-card strong,.conversation-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.identity-card small,.conversation-copy small{overflow:hidden;color:var(--text-secondary);font-size:var(--type-xs);text-overflow:ellipsis;white-space:nowrap}.status-dot{width:9px;height:9px;flex:none;border-radius:50%;background:var(--us-success);box-shadow:0 0 0 4px #dff6eb}.search{display:flex;min-height:46px;min-width:0;align-items:center;gap:var(--space-2);margin:0 0 var(--space-3);padding:0 var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:var(--surface-secondary);color:var(--text-muted)}.search input{min-height:40px;padding:8px 0;border:0;background:transparent;box-shadow:none}.conversation-card{display:flex;width:100%;min-height:76px;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);padding:var(--space-3);border:1px solid transparent;border-radius:var(--radius-medium);background:transparent;text-align:left;transition:background var(--us-duration-fast) var(--us-ease-standard),border-color var(--us-duration-fast) var(--us-ease-standard),transform var(--us-duration-fast) var(--us-ease-standard)}.conversation-card:hover,.conversation-card.active{border-color:#cfe5f7;background:var(--accent-primary-soft)}.conversation-card:active{transform:scale(.99)}.conversation-copy{display:grid;min-width:0;flex:1;gap:var(--space-1)}.conversation-meta{display:grid;justify-items:end;gap:var(--space-2);color:var(--text-muted);font-size:var(--type-xs)}.conversation-chevron{color:var(--accent-primary)}.unread-badge,.reaction-count,.date-pill,.status-badge{display:inline-flex;min-width:22px;min-height:22px;align-items:center;justify-content:center;padding:2px 8px;border-radius:var(--radius-pill);background:var(--accent-primary);color:#fff;font-size:var(--type-xs);font-weight:800}.side-nav{display:grid;gap:var(--space-2);margin-top:var(--space-4)}.side-nav button{display:flex;min-height:46px;align-items:center;gap:var(--space-3);padding:0 var(--space-3);border-radius:var(--radius-pill);color:var(--text-secondary);font-size:var(--type-sm);font-weight:700;text-align:left}.side-nav button:hover,.side-nav button.active{background:var(--accent-primary-soft);color:var(--accent-primary)}.sidebar-status{display:flex;align-items:center;gap:var(--space-2);margin-top:auto;padding:var(--space-5) var(--space-3) var(--space-2);color:var(--text-muted);font-size:var(--type-xs)}.main-panel{position:relative;min-width:0;min-height:0;overflow:hidden;background:var(--app-background)}.mobile-conversation-list,.settings-page,.shared-content{height:100%;overflow:auto}.mobile-conversation-list{padding:max(var(--space-4),env(safe-area-inset-top)) var(--space-4) calc(var(--mobile-nav-height) + var(--space-6))}.mobile-conversation-list-heading{padding:var(--space-6) 0 var(--space-5)}.mobile-conversation-list-heading h1{margin-bottom:var(--space-2);font-size:28px}.mobile-conversation-list-header{display:flex;min-height:54px;align-items:center;justify-content:flex-start}.mobile-conversation-items{display:grid;gap:var(--space-2)}.mobile-conversation-note{display:flex;align-items:center;gap:var(--space-2);margin:var(--space-4) var(--space-2);color:var(--text-muted);font-size:var(--type-xs)}.chat,.chat-shell,.settings-page{position:relative;display:flex;min-width:0;min-height:0;height:100%;flex-direction:column;background:var(--app-background)}.chat:before{position:absolute;z-index:0;inset:0;background:radial-gradient(circle at 18% 20%,rgba(255,255,255,.85),transparent 35%),linear-gradient(180deg,#eaf4fb,#f5faff);content:"";pointer-events:none}.wallpaper-layers{display:none}.chat>:not(.wallpaper-layers):not(.modal-backdrop):not(.password-reset-backdrop),.settings-page>*{position:relative;z-index:1}.chat-header{display:flex;min-height:var(--header-height);align-items:center;gap:var(--space-3);padding:max(var(--space-3),env(safe-area-inset-top)) clamp(var(--space-4),4vw,var(--space-6)) var(--space-3);border-bottom:1px solid var(--border-subtle);background:#ffffffe6;box-shadow:0 4px 18px #426c8b0f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.mobile-header-brand{display:none}.header-title{display:grid;min-width:0;flex:1;gap:2px}.header-title-line{display:flex;min-width:0;align-items:center;gap:var(--space-2)}.header-title h1{overflow:hidden;margin:0;color:var(--text-primary);font-size:var(--type-lg);text-overflow:ellipsis;white-space:nowrap}.header-title-meta,.header-actions,.header-status,.call-surface-meta{display:flex;align-items:center;gap:var(--space-2)}.header-context,.header-status,.header-status-label{color:var(--text-secondary);font-size:var(--type-xs)}.header-status[data-state=online]{color:var(--us-success)}.header-actions{margin-left:auto}.header-actions .icon-button{width:38px;min-width:38px;height:38px;border-color:transparent;background:transparent;box-shadow:none}.timeline-region{position:relative;min-height:0;flex:1;overflow:hidden}.timeline{position:relative;z-index:1;display:flex;height:100%;min-height:0;flex-direction:column;gap:6px;overflow-x:hidden;overflow-y:auto;padding:var(--space-6) clamp(var(--space-4),5vw,72px) var(--space-4);scroll-behavior:smooth}.message-row{display:flex;max-width:min(76%,680px);flex-direction:column;align-self:flex-start}.message-row:has(.bubble.mine){align-self:flex-end}.message-row-grouped{margin-top:calc(var(--space-2) * -1)}.message-sender{display:flex;align-items:center;gap:var(--space-2);margin:0 10px 3px;color:var(--text-secondary);font-size:10px;font-weight:700}.avatar-message{width:22px;height:22px;font-size:9px}.bubble{position:relative;min-width:60px;padding:11px 14px 8px;border:1px solid var(--us-message-other-border);border-radius:20px 20px 20px 6px;background:var(--us-message-other);box-shadow:var(--us-message-shadow);color:var(--text-primary);overflow-wrap:anywhere}.bubble.mine{border-color:var(--us-message-own-border);border-radius:20px 20px 6px;background:var(--us-message-own);box-shadow:var(--us-message-own-shadow)}.bubble.grouped-message{border-radius:18px}.bubble.deleted{color:var(--text-muted);font-style:italic}.bubble p,.bubble>span{margin:0;white-space:pre-wrap}.bubble>footer{display:flex;min-height:16px;align-items:center;justify-content:flex-end;gap:5px;margin-top:4px;color:var(--text-muted);font-size:10px}.bubble>footer em{color:var(--accent-primary);font-style:normal}.bubble>footer svg{color:var(--accent-primary)}.message-menu-trigger{display:grid;width:22px;height:22px;margin:-3px -5px -3px 1px;place-items:center;border-radius:50%;color:var(--text-muted)}.message-menu-trigger:hover,.message-menu-trigger:focus-visible{background:var(--accent-primary-soft);color:var(--accent-primary)}.message-menu-trigger svg{width:15px;height:15px}.message-meta{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2);margin-top:5px;color:var(--text-muted);font-size:10px}.message-meta .edited{color:var(--accent-primary)}.date-pill{align-self:center;margin:var(--space-4) 0 var(--space-2);background:#ffffffc7;color:var(--text-secondary);box-shadow:var(--shadow-soft)}.load-older,.new-message-indicator{align-self:center;min-height:36px;padding:0 15px;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:#ffffffd6;color:var(--accent-primary);font-size:var(--type-xs);font-weight:750;box-shadow:var(--shadow-soft)}.empty-chat-state{display:grid;max-width:360px;margin:auto;place-items:center;padding:var(--space-8);text-align:center}.empty-chat-state .login-mascot{margin-bottom:var(--space-4)}.empty-chat-state h2{margin-bottom:var(--space-2)}.empty-chat-description{margin-bottom:0;color:var(--text-secondary)}.typing{display:flex;align-items:center;gap:6px;width:max-content;margin:0 0 8px;padding:10px 13px;border:1px solid var(--us-message-other-border);border-radius:20px 20px 20px 6px;background:var(--us-message-other);box-shadow:var(--us-message-shadow)}.typing-dot{width:7px;height:7px;border-radius:50%;background:var(--text-secondary)}.chat-typing{align-self:flex-start;margin:0 clamp(var(--space-4),5vw,72px) 6px}.composer-shell{display:flex;min-width:0;min-height:0;flex:0 0 auto}.composer-shell.is-camera-hidden,.composer-shell.is-media-viewer-hidden{display:none}.composer-wrap{flex:none;width:100%;padding:6px clamp(var(--space-4),5vw,72px) max(4px,env(safe-area-inset-bottom));background:#f2f6fbe6;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.composer{display:flex;min-height:52px;align-items:center;gap:6px;padding:4px 6px;border:1px solid var(--border-subtle);border-radius:28px;background:var(--surface-primary);box-shadow:var(--shadow-soft)}.composer textarea{min-width:0;min-height:42px;max-height:var(--composer-max-height);flex:1;resize:none;align-self:center;padding:8px;border:0;border-radius:21px;background:transparent;box-shadow:none;line-height:1.35}.composer textarea:focus{border:0;box-shadow:0 0 0 2px var(--accent-primary-soft);background:var(--surface-secondary)}.composer>button,.composer .control{display:grid;flex:0 0 40px;width:40px;min-width:40px;height:40px;min-height:40px;align-self:center;place-items:center;padding:0;border-radius:50%;border:0;background:transparent;color:var(--text-secondary);box-shadow:none;line-height:1}.composer>.composer-control{display:inline-flex;align-items:center;justify-content:center}.composer>.composer-control svg{display:block;width:20px;height:20px}.composer>button:hover,.composer .control:hover{background:var(--accent-primary-soft);color:var(--accent-primary)}.composer .send-button{background:var(--accent-primary);color:#fff;box-shadow:0 8px 18px #1976e838}.composer .send-button:hover{background:var(--accent-primary-hover);color:#fff}.compose-context,.reply-preview{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);padding:var(--space-3);border:1px solid var(--border-subtle);border-left:4px solid var(--accent-primary);border-radius:var(--radius-medium);background:#eef6ff}.reply-preview{width:100%;margin:0 0 var(--space-2);border-left-width:3px;text-align:left}.reply-preview-body,.reply-preview-sender{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reply-preview-body{color:var(--text-secondary);font-size:var(--type-xs)}.reply-preview-sender{color:var(--accent-primary);font-size:var(--type-xs);font-weight:800}.message-actions,.reaction-picker{position:absolute;z-index:4;top:calc(100% + 7px);right:0;display:flex;min-width:180px;flex-direction:column;gap:3px;padding:7px;border:1px solid var(--border-subtle);border-radius:var(--radius-medium);background:var(--surface-primary);box-shadow:var(--shadow-elevated)}.message-actions button,.reaction-picker button{display:flex;min-height:40px;align-items:center;gap:var(--space-2);padding:0 11px;border-radius:var(--radius-small);color:var(--text-primary);text-align:left}.message-actions button:hover,.reaction-picker button:hover{background:var(--accent-primary-soft);color:var(--accent-primary)}.reaction-row{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-top:var(--space-2)}.reaction-row button,.reaction-count{display:inline-flex;min-height:26px;align-items:center;gap:4px;padding:2px 9px;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:var(--surface-primary);color:var(--text-secondary);font-size:var(--type-xs)}.reaction-row button:hover,.reaction-row button.selected{border-color:#9bcaf1;background:var(--accent-primary-soft);color:var(--accent-primary)}.message-attachment,.attachment-draft-card,.attachment-preview-panel{margin-top:var(--space-2);overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-medium);background:#ffffffbd}.message-attachment-heading,.attachment-preview-header,.attachment-draft-card{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3)}.message-attachment-copy,.attachment-draft-copy{display:grid;min-width:0;gap:2px}.message-attachment-copy strong,.attachment-draft-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-attachment-copy small,.attachment-draft-copy small{color:var(--text-secondary);font-size:var(--type-xs)}.message-attachment-file-icon,.attachment-draft-icon,.attachment-preview-heading-icon,.content-icon,.device-icon{display:grid;width:36px;height:36px;flex:none;place-items:center;border-radius:var(--radius-small);background:var(--accent-primary-soft);color:var(--accent-primary)}.attachment-preview{display:grid;min-height:70px;place-items:center;background:#eaf4fb}.attachment-preview img,.attachment-preview video{display:block;width:100%;max-height:320px;object-fit:cover}.message-attachment[data-kind=image]{margin-top:0;border:0;border-radius:0;background:transparent}.message-attachment[data-kind=image] .attachment-preview{display:block;width:fit-content;max-width:min(78vw,460px);min-height:0;background:transparent}.message-attachment[data-kind=image] .attachment-image-trigger{display:block;width:fit-content;max-width:100%;min-height:0;padding:0;border:0;border-radius:var(--radius-medium);background:transparent;overflow:hidden}.message-attachment[data-kind=image] .attachment-preview img{width:auto;max-width:100%;max-height:min(58vh,560px);object-fit:contain}.attachment-preview audio{width:calc(100% - 24px)}.attachment-preview button{min-height:40px;padding:0 14px;border-radius:var(--radius-pill);background:var(--surface-primary);color:var(--accent-primary);font-size:var(--type-sm);font-weight:750}.message-attachment>a{display:inline-flex;margin:0 var(--space-3) var(--space-3);color:var(--accent-primary);font-size:var(--type-xs);font-weight:750}.attachment-preview-list{display:grid;gap:var(--space-2);max-height:230px;overflow:auto;padding:var(--space-3)}.attachment-preview-actions{display:flex;justify-content:flex-end;gap:var(--space-2);padding:0 var(--space-3) var(--space-3)}.attachment-preview-actions>button,.attachment-remove-button,.attachment-cancel-button,.attachment-status-action{display:inline-flex;min-height:34px;align-items:center;gap:var(--space-1);padding:0 11px;border-radius:var(--radius-pill);color:var(--text-secondary);font-size:var(--type-xs);font-weight:750}.attachment-preview-actions>button:hover,.attachment-remove-button:hover,.attachment-cancel-button:hover,.attachment-status-action:hover{background:var(--accent-primary-soft);color:var(--accent-primary)}.attachment-upload-status{display:flex;min-height:32px;align-items:center;gap:var(--space-2);padding:0 var(--space-3) var(--space-3);color:var(--text-secondary);font-size:var(--type-xs)}.attachment-upload-status[data-state=failed]{color:var(--us-danger)}.attachment-progress-track{width:90px;height:6px;overflow:hidden;border-radius:var(--radius-pill);background:#dceaf3}.attachment-progress-value{display:block;height:100%;border-radius:inherit;background:var(--accent-primary)}.attachment-upload-spinner{animation:spin .9s linear infinite}.drop-zone-overlay{position:absolute;z-index:8;inset:var(--space-4);display:grid;place-items:center;border:2px dashed #62a9e7;border-radius:var(--radius-large);background:#e0efffc7;box-shadow:var(--shadow-elevated);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.drop-zone-card{display:grid;place-items:center;gap:var(--space-3);padding:var(--space-8);color:var(--accent-primary);text-align:center}.drop-zone-icon{display:grid;width:68px;height:68px;place-items:center;border-radius:50%;background:var(--accent-primary);color:#fff;box-shadow:0 12px 24px #1976e838}.drop-zone-overlay[data-active=false]{display:none}.settings-page{overflow:auto}.settings-page>.chat-header{flex:none}.settings-connection-status{display:flex;justify-content:flex-end;padding:var(--space-3) clamp(var(--space-4),6vw,80px) 0}.settings-content,.shared-body,.context-panel-body{display:grid;width:min(100%,760px);gap:var(--space-4);margin:0 auto;padding:var(--space-5) clamp(var(--space-4),6vw,80px) calc(var(--space-10) + env(safe-area-inset-bottom))}.settings-card,.profile-hero,.backup-hero,.notice,.content-row,.device-row,.context-security,.context-call-actions,.context-section{border:1px solid var(--border-subtle);border-radius:var(--radius-medium);background:var(--surface-primary);box-shadow:var(--shadow-soft)}.settings-card,.profile-hero,.backup-hero,.notice,.context-section{padding:var(--space-5)}.settings-card h3,.profile-hero h2,.backup-hero strong{margin-bottom:var(--space-1);color:var(--text-primary)}.setting-row{display:flex;min-height:48px;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-2) 0;border-bottom:1px solid #edf3f7}.setting-row:last-child{border-bottom:0}.setting-row>span:first-child{display:grid;gap:2px;color:var(--text-primary)}.setting-row small{color:var(--text-secondary);font-size:var(--type-xs)}.setting-row>strong{color:var(--text-secondary);font-size:var(--type-sm);text-align:right}.switch{position:relative;display:block!important;width:46px;height:28px;flex:none}.switch input{position:absolute;width:1px;height:1px;opacity:0}.switch span{position:absolute;inset:0;border-radius:var(--radius-pill);background:#cadbe7;transition:background var(--us-duration-fast) var(--us-ease-standard)}.switch span:after{position:absolute;top:4px;left:4px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 2px 7px #1c3f5933;content:"";transition:transform var(--us-duration-fast) var(--us-ease-standard)}.switch input:checked+span{background:var(--accent-primary)}.switch input:checked+span:after{transform:translate(18px)}.switch input:focus-visible+span{outline:3px solid var(--us-focus-ring);outline-offset:3px}.profile-hero,.backup-hero{display:flex;align-items:center;gap:var(--space-4)}.profile-hero>div:nth-child(2),.backup-hero>div{min-width:0;flex:1}.profile-hero h2,.backup-hero p{margin:0}.wallpaper-preview{position:relative;min-height:180px;overflow:hidden;border:1px solid var(--border-subtle);border-radius:var(--radius-medium);background:var(--surface-secondary)}.profile-hero small,.backup-hero p{color:var(--text-secondary)}.profile-photo-card{display:grid;gap:var(--space-4)}.profile-photo-heading{display:flex;min-width:0;align-items:center;gap:var(--space-4)}.profile-photo-heading>div{min-width:0}.profile-photo-heading h3,.profile-photo-heading p{margin:0}.profile-photo-heading .section-label{margin-bottom:var(--space-1)}.profile-photo-actions,.wallpaper-upload-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.wallpaper-upload-row>span{overflow:hidden;min-width:0;color:var(--text-secondary);font-size:var(--type-xs);text-overflow:ellipsis;white-space:nowrap}.image-crop-editor{display:grid;gap:var(--space-3);max-width:420px}.image-crop-frame{position:relative;width:min(100%,320px);aspect-ratio:var(--us-crop-aspect, 1);overflow:hidden;margin:0 auto;border:1px solid var(--border-strong);border-radius:var(--radius-medium);background:var(--surface-secondary);box-shadow:var(--shadow-soft)}.image-crop-frame:after{position:absolute;inset:0;border:2px solid rgba(255,255,255,.75);border-radius:inherit;box-shadow:inset 0 0 0 999px #182c3e14;content:"";pointer-events:none}.image-crop-frame img{display:block;width:100%;height:100%;object-fit:cover;transition:transform var(--us-duration-fast) var(--us-ease-standard)}.image-crop-editor label{display:grid;gap:var(--space-1);color:var(--text-secondary);font-size:var(--type-xs);font-weight:700}.image-crop-editor input[type=range]{width:100%}.image-crop-position-controls{display:grid;gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.wallpaper-reset-button{min-height:42px;padding:0 var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:var(--surface-secondary);color:var(--text-primary);font-size:var(--type-sm);font-weight:700}.wallpaper-reset-button.selected,.wallpaper-reset-button:hover{border-color:var(--accent-primary);background:var(--accent-primary-soft);color:var(--accent-primary)}.wallpaper-color-control{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:var(--space-3);color:var(--text-primary);font-size:var(--type-sm);font-weight:700}.wallpaper-color-control input[type=color]{width:52px;height:36px;padding:3px;border:1px solid var(--border-subtle);border-radius:var(--radius-small);background:var(--surface-primary);cursor:pointer}.notice{display:flex;align-items:flex-start;gap:var(--space-3);color:var(--text-secondary)}.notice svg{color:var(--accent-primary)}.notice span{display:grid;gap:var(--space-1)}.notice strong{color:var(--text-primary)}.notice small{line-height:1.5}.link-list{gap:var(--space-2)}.link-list button,.context-link{display:flex;min-height:48px;align-items:center;gap:var(--space-3);padding:0 var(--space-2);border-radius:var(--radius-small);color:var(--text-primary);text-align:left}.link-list button:hover,.context-link:hover{background:var(--accent-primary-soft);color:var(--accent-primary)}.link-list button svg:last-child,.context-link svg:last-child{margin-left:auto}.tabs{display:flex;gap:var(--space-2);overflow-x:auto;padding:var(--space-2);border-radius:var(--radius-pill);background:var(--surface-secondary)}.tabs button{min-height:38px;padding:0 15px;border-radius:var(--radius-pill);color:var(--text-secondary);font-size:var(--type-sm);font-weight:750;white-space:nowrap}.tabs button.active{background:var(--surface-primary);color:var(--accent-primary);box-shadow:var(--shadow-soft)}.content-list,.media-grid{display:grid;gap:var(--space-3)}.media-grid{grid-template-columns:repeat(3,1fr)}.media-grid>button{display:grid;min-height:128px;align-content:center;place-items:center;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-medium);background:var(--surface-primary);color:var(--accent-primary)}.media-grid>button:hover{border-color:var(--accent-primary);background:var(--accent-primary-soft)}.media-grid>button small{max-width:100%;overflow:hidden;color:var(--text-secondary);font-size:var(--type-xs);text-overflow:ellipsis;white-space:nowrap}.content-row,.device-row{display:flex;min-width:0;align-items:center;gap:var(--space-3);padding:var(--space-3)}.content-row>.content-copy,.device-row>div:nth-child(2){display:grid;min-width:0;flex:1;gap:2px}.content-row small,.device-row small{overflow:hidden;color:var(--text-secondary);font-size:var(--type-xs);text-overflow:ellipsis;white-space:nowrap}.empty-state{padding:var(--space-8);border:1px dashed var(--border-strong);border-radius:var(--radius-medium);color:var(--text-secondary);text-align:center}.context-panel{position:relative;z-index:5;min-width:0;overflow:auto;border-left:1px solid var(--border-subtle);background:var(--surface-secondary)}.context-panel-header{display:flex;min-height:var(--header-height);align-items:center;justify-content:space-between;padding:var(--space-4);border-bottom:1px solid var(--border-subtle);background:var(--surface-primary)}.context-profile{display:grid;place-items:center;padding:var(--space-5) 0;text-align:center}.context-profile h3{margin:var(--space-3) 0 var(--space-1)}.context-profile p{margin:var(--space-2) 0 0;color:var(--text-secondary);font-size:var(--type-xs)}.context-call-actions{display:grid;grid-template-columns:repeat(2,1fr);padding:var(--space-2)}.context-call-actions button{display:grid;min-height:74px;place-items:center;gap:var(--space-1);border-radius:var(--radius-small);color:var(--accent-primary);font-size:var(--type-xs);font-weight:750}.context-call-actions button:hover{background:var(--accent-primary-soft)}.context-section{margin-top:var(--space-3)}.context-security{display:flex;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3);padding:var(--space-3);box-shadow:none}.context-security>div{display:grid;gap:var(--space-1)}.context-security small{color:var(--text-secondary);font-size:var(--type-xs)}.context-backdrop{position:fixed;z-index:4;inset:0;background:#2340562e}.mobile-navigation{display:none}.connection-indicator{display:inline-flex;min-height:20px;align-items:center;gap:var(--space-2);color:var(--text-secondary);font-size:var(--type-xs);font-weight:700}.connection-indicator>span{width:7px;height:7px;border-radius:50%;background:var(--us-warning)}.connection-indicator.connected>span{background:var(--us-success)}.connection-indicator.offline>span{background:var(--us-danger)}.modal-backdrop,.password-reset-backdrop{position:fixed;z-index:20;inset:0;display:grid;place-items:center;padding:var(--space-4);background:#24445c4d;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.password-reset-dialog,.call-surface,.camera-modal,.viewer{border:1px solid rgba(255,255,255,.88);border-radius:var(--radius-large);background:var(--surface-primary);box-shadow:var(--shadow-elevated)}.password-reset-dialog{width:min(100%,520px);max-height:min(720px,calc(100dvh - 32px));overflow:auto;padding:var(--space-6)}.password-reset-header,.password-reset-account,.password-reset-accounts,.password-reset-account-options{display:flex;align-items:center;gap:var(--space-3)}.password-reset-header{justify-content:space-between;margin-bottom:var(--space-5)}.password-reset-header>div{display:flex;min-width:0;align-items:center;gap:var(--space-3)}.password-reset-header>div>span:last-child{display:grid;min-width:0;gap:3px}.password-reset-header small{color:var(--text-secondary);font-size:var(--type-xs);line-height:1.45}.password-reset-accounts{display:grid;gap:var(--space-3);padding:0;border:0}.password-reset-accounts legend{padding:0;color:var(--text-secondary);font-size:var(--type-sm);font-weight:700}.password-reset-account-options{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-2)}.password-reset-account{min-height:58px;padding:var(--space-2);border:1px solid var(--border-subtle);border-radius:var(--radius-medium);background:var(--surface-secondary);text-align:left}.password-reset-dialog .password-reset-account{display:flex}.password-reset-account input{width:18px;min-width:18px;height:18px;min-height:18px;margin:0;padding:0;accent-color:var(--accent-primary)}.password-reset-account[data-selected=true],.password-reset-account.selected,.password-reset-account:hover{border-color:#9bcaf1;background:var(--accent-primary-soft)}.password-reset-status,.password-reset-error,.notification-help{color:var(--text-secondary);font-size:var(--type-sm)}.password-reset-error,.camera-error{color:var(--us-danger)}.password-reset-dialog form{display:grid;gap:var(--space-4)}.password-reset-dialog label{display:grid;gap:var(--space-2);color:var(--text-secondary);font-size:var(--type-sm);font-weight:700}.password-reset-dialog .primary{width:100%;margin-top:var(--space-2)}.call-surface{position:fixed;z-index:12;top:max(84px,env(safe-area-inset-top));right:var(--space-5);width:min(420px,calc(100vw - 40px));overflow:hidden}.call-surface-head,.call-controls,.call-device-picker,.camera-modal header,.camera-modal footer,.viewer header,.viewer footer{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4)}.call-surface-head,.camera-modal header,.viewer header{justify-content:space-between;border-bottom:1px solid var(--border-subtle)}.call-controls,.camera-modal footer,.viewer footer{justify-content:flex-end;border-top:1px solid var(--border-subtle)}.call-video-stage,.camera-stage,.viewer-media{background:#dcecf7}.call-video-stage,.call-remote-video,.call-remote-video video{width:100%;min-height:220px;object-fit:cover}.camera-modal{width:min(720px,calc(100vw - 32px));overflow:hidden}.camera-stage{position:relative;min-height:360px}.camera-stage video,.camera-stage img{display:block;width:100%;height:100%;min-height:360px;object-fit:cover}.camera-export-actions{display:flex;justify-content:center;gap:var(--space-3);padding:var(--space-3)}.camera-export-actions a,.camera-export-actions button{color:var(--accent-primary);font-size:var(--type-sm);font-weight:750}.shutter{width:62px;height:62px;border:5px solid #fff;border-radius:50%;background:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-primary),var(--shadow-soft)}.viewer{display:flex;width:min(1100px,calc(100vw - 32px));max-height:calc(100dvh - 32px);flex-direction:column;overflow:hidden}.viewer-media{display:grid;min-height:240px;flex:1;place-items:center;overflow:auto;padding:var(--space-5)}.viewer-media img,.viewer-media video{display:block;max-width:100%;max-height:65dvh;object-fit:contain}.chat-error,.pwa-update-notice{position:fixed;z-index:18;right:var(--space-4);bottom:var(--space-4);max-width:min(420px,calc(100vw - 32px));padding:var(--space-3) var(--space-4);border:1px solid #f1cbd0;border-radius:var(--radius-medium);background:#fff5f6;color:var(--us-danger);box-shadow:var(--shadow-elevated);font-size:var(--type-sm)}.pwa-update-notice{top:var(--space-4);bottom:auto;display:flex;align-items:center;gap:var(--space-3)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes us-mascot-breathe{0%,to{transform:translateY(1px) scale(.99)}50%{transform:translateY(-2px) scaleY(1.015)}}@keyframes us-mascot-blink{0%,43%,47%,to{transform:scaleY(1)}45%{transform:scaleY(.1)}}@keyframes us-mascot-tail{0%,to{transform:rotate(-3deg)}50%{transform:rotate(7deg)}}@media(max-width:900px){body{overflow:hidden}.app-shell,.app-shell.context-open{position:fixed;top:var(--visual-viewport-offset-top, 0px);right:0;bottom:auto;left:0;display:flex;width:100%;height:var(--visual-viewport-height, 100dvh);min-height:0;flex-direction:column}.sidebar{display:none}.main-panel{height:auto;min-height:0;flex:1 1 auto}.mobile-navigation{position:relative;z-index:9;width:auto;flex:0 0 auto;display:grid;height:var(--mobile-nav-height);margin:8px 10px max(8px,env(safe-area-inset-bottom));grid-template-columns:repeat(4,1fr);padding:4px;border:1px solid var(--border-subtle);border-radius:26px;background:#fffffff0;box-shadow:var(--shadow-elevated);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.mobile-navigation button{display:grid;min-width:40px;min-height:40px;place-items:center;gap:2px;border-radius:var(--radius-medium);color:var(--text-muted);font-size:10px;font-weight:700}.mobile-navigation button.active{background:var(--accent-primary-soft);color:var(--accent-primary)}.mobile-navigation svg{width:20px;height:20px}.context-panel{position:fixed;z-index:15;inset:0;width:100%;border-left:0}.context-panel-body{padding-bottom:calc(var(--mobile-nav-height) + var(--space-8))}.chat-header{min-height:calc(var(--header-height) + env(safe-area-inset-top));padding-top:max(var(--space-3),env(safe-area-inset-top))}.timeline{padding-top:var(--space-4);padding-right:var(--space-3);padding-left:var(--space-3);padding-bottom:var(--space-3)}.composer-wrap{padding:6px var(--space-3) 4px}.chat-typing{margin:0 var(--space-3) 4px}.connection-indicator{min-height:18px;font-size:10px}.message-row{max-width:88%}.settings-content,.shared-body,.context-panel-body{width:100%;padding-right:var(--space-3);padding-left:var(--space-3)}.settings-page{padding-bottom:var(--space-4)}.settings-connection-status{padding-right:var(--space-3);padding-left:var(--space-3)}.media-grid{grid-template-columns:repeat(2,1fr)}.call-surface{top:max(12px,env(safe-area-inset-top));right:10px;width:calc(100vw - 20px)}}@media(max-width:520px){.auth-page{padding:max(14px,env(safe-area-inset-top)) 14px max(14px,env(safe-area-inset-bottom))}.auth-card{gap:var(--space-6);padding:24px;border-radius:26px}.auth-card h1{font-size:27px}.chat-header{padding-right:var(--space-3);padding-left:var(--space-3)}.chat-header{gap:var(--space-2)}.chat-header>.avatar{width:38px;height:38px;font-size:var(--type-xs)}.chat-header .mobile-back{width:36px;min-width:36px;height:36px}.header-actions{gap:0}.header-actions .icon-button{width:34px;min-width:34px;height:34px}.header-actions .header-search{display:none}.bubble{padding:11px 13px 8px}.message-row{max-width:91%}.composer{gap:4px;padding:4px 5px}.composer>button,.composer .control{width:40px;min-width:40px;height:40px}.composer textarea{min-height:42px;padding-right:6px;padding-left:6px;font-size:16px}.password-reset-dialog{padding:var(--space-4)}.password-reset-account-options{grid-template-columns:1fr}.camera-modal{width:calc(100vw - 20px)}.camera-stage,.camera-stage video,.camera-stage img{min-height:250px}}html[data-keyboard-open=true] .mobile-navigation,.mobile-navigation[data-hidden=true]{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(120%)}html[data-keyboard-open=true] .composer-wrap{margin-bottom:0;padding-bottom:max(4px,env(safe-area-inset-bottom))}html[data-keyboard-open=true] .timeline{padding-bottom:var(--space-2)}@media(max-width:900px){html[data-keyboard-open=true] .chat.chat-shell{height:var(--visual-viewport-height, 100dvh)}}@media(max-width:900px){.camera-backdrop{padding:0;place-items:stretch}.camera-modal.camera-capture-modal{display:flex;width:100%;max-width:none;height:100%;max-height:none;flex-direction:column;border:0;border-radius:0}.camera-capture-modal header{flex:none;padding:max(var(--space-3),env(safe-area-inset-top)) var(--space-4) var(--space-3)}.camera-capture-modal .camera-stage{display:grid;min-height:0;flex:1;place-items:center;overflow:hidden}.camera-capture-modal .camera-stage video,.camera-capture-modal .camera-stage img{min-height:0;height:100%;object-fit:contain}.camera-capture-modal footer{flex:none;flex-wrap:wrap;padding:var(--space-3) var(--space-4) max(var(--space-3),env(safe-area-inset-bottom))}.camera-capture-modal .camera-export-actions{flex:none;padding:var(--space-2) var(--space-4)}.camera-capture-modal>.fine-print{flex:none;justify-content:center;margin:0;padding:0 var(--space-4) max(var(--space-3),env(safe-area-inset-bottom));text-align:center}}.profile-identity{display:grid;min-width:0;flex:1;gap:4px}.profile-identity p{margin:0;color:var(--text-secondary)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.image-lightbox{position:fixed;z-index:50;inset:0;display:flex;width:100vw;height:100dvh;min-height:100dvh;background:#05060b;color:#f7f9ff}.image-lightbox-dialog{display:flex;width:100%;height:100%;min-height:0;flex-direction:column;background:#05060b}.image-lightbox-header{display:flex;min-height:64px;flex:0 0 auto;align-items:center;justify-content:space-between;gap:12px;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) 12px max(12px,env(safe-area-inset-left));border-bottom:1px solid rgba(255,255,255,.1);background:#05060be0}.image-lightbox-header-leading,.image-lightbox-heading,.image-lightbox-header-actions,.image-lightbox-zoom{display:flex;min-width:0;align-items:center}.image-lightbox-header-leading{gap:12px}.image-lightbox-heading{display:grid;gap:1px}.image-lightbox-heading strong{overflow:hidden;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.image-lightbox-heading>div{display:flex;min-width:0;align-items:center;gap:7px;color:#f7f9ff9e;font-size:11px}.image-lightbox-heading>div span{max-width:min(35vw,280px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-lightbox-close,.image-lightbox-control{display:inline-flex;min-width:40px;min-height:40px;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.14);border-radius:50%;background:#ffffff14;color:#f7f9ff;line-height:1}.image-lightbox-close{width:40px;height:40px;flex:0 0 40px;padding:0}.image-lightbox-close svg,.image-lightbox-control svg{display:block;width:19px;height:19px}.image-lightbox-control{gap:6px;padding:0 10px;border-radius:20px;font-size:12px;font-weight:700;white-space:nowrap}.image-lightbox-close:hover,.image-lightbox-close:active,.image-lightbox-control:hover,.image-lightbox-control:active{border-color:#8b7dffb3;background:#6758dc6b;color:#fff}.image-lightbox-stage{position:relative;display:grid;min-width:0;min-height:0;flex:1 1 auto;place-items:center;overflow:hidden;padding:12px max(12px,env(safe-area-inset-right)) 12px max(12px,env(safe-area-inset-left));background:#05060b;touch-action:none;-webkit-user-select:none;user-select:none}.image-lightbox-image-wrap{display:grid;min-width:0;min-height:0;max-width:100%;max-height:100%;place-items:center;transform-origin:center;will-change:transform}.image-lightbox-stage img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;-webkit-user-select:none;user-select:none}.image-lightbox-status{flex:0 0 auto;margin:0;padding:8px 16px;background:#3a1720;color:#ffc7d0;font-size:12px;text-align:center}.image-lightbox-footer{display:flex;min-height:56px;flex:0 0 auto;align-items:center;justify-content:center;padding:8px max(12px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));border-top:1px solid rgba(255,255,255,.1);background:#05060beb}.image-lightbox-zoom{gap:8px}.image-lightbox-zoom output{min-width:45px;color:#f7f9ffb8;font-size:12px;text-align:center}html[data-keyboard-open=true] .mobile-navigation,html[data-media-viewer-open=true] .mobile-navigation,html[data-media-viewer-open=true] .composer-shell,.mobile-navigation[data-hidden=true]{display:none!important}@media(max-width:520px){.image-lightbox-header,.image-lightbox-header-leading{gap:8px}.image-lightbox-header-actions{gap:4px}.image-lightbox-header-actions .image-lightbox-control{width:40px;padding:0}.image-lightbox-header-actions .image-lightbox-control span{display:none}}:root{--us-duration-panel: .28s;--us-duration-slow: .28s;--us-ease-standard: cubic-bezier(.22, 1, .36, 1);--us-ease-enter: var(--us-ease-standard);--us-ease-exit: var(--us-ease-standard);--us-typing-cycle: 1.2s}@keyframes us-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes us-scale-enter{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes us-fade{0%{opacity:0}to{opacity:1}}@keyframes us-message-in{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes us-drawer-in{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes us-typing-dot{0%,60%,to{opacity:.38;transform:translateY(0) scale(.82)}30%{opacity:1;transform:translateY(-3px) scale(1)}}@keyframes us-drop-icon-float{0%,to{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-6px) rotate(5deg)}}@keyframes us-spin{to{transform:rotate(360deg)}}@keyframes us-progress-indeterminate{0%{transform:translate(-130%)}to{transform:translate(320%)}}.auth-card,.app-shell,.settings-card,.device-row,.content-list>*,.compose-context,.drop-prompt,.call-surface,.call-controls,.chat-error,.pwa-update-notice,.search-results,.empty-chat-state{animation:us-enter var(--us-duration-normal) var(--us-ease-enter)}.message-arrival{animation:us-message-in var(--us-duration-normal) var(--us-ease-enter)}.message-arrival footer>svg,.message-arrival footer>span[aria-label],.message-arrival .reaction-row button{animation:us-scale-enter var(--us-duration-fast) var(--us-ease-enter)}.reaction-count{display:inline-block}.message-arrival .reaction-count,.header-status-label{animation:us-fade var(--us-duration-fast) var(--us-ease-enter)}.message-actions,.camera-modal,.voice-modal,.password-reset-dialog{transform-origin:center;animation:us-scale-enter var(--us-duration-normal) var(--us-ease-enter)}.new-message-indicator{animation:us-enter var(--us-duration-normal) var(--us-ease-enter)}.modal-backdrop,.viewer,.image-lightbox{animation:us-fade var(--us-duration-fast) var(--us-ease-enter)}.drop-zone-icon{animation:us-drop-icon-float 1.6s var(--us-ease-standard) infinite}.typing .typing-dot{animation:us-typing-dot var(--us-typing-cycle) var(--us-ease-standard) infinite}.typing .typing-dot:nth-child(1){animation-delay:0ms}.typing .typing-dot:nth-child(2){animation-delay:.14s}.typing .typing-dot:nth-child(3){animation-delay:.28s}button,button.icon-button,button.primary,button.danger,button.send-button,button.conversation-card,.side-nav button,.reaction-row button,.composer,input,textarea,select{transition:background-color var(--us-duration-fast) var(--us-ease-standard),border-color var(--us-duration-fast) var(--us-ease-standard),color var(--us-duration-fast) var(--us-ease-standard),opacity var(--us-duration-fast) var(--us-ease-standard),box-shadow var(--us-duration-fast) var(--us-ease-standard),filter var(--us-duration-fast) var(--us-ease-standard),transform var(--us-duration-fast) var(--us-ease-enter),height var(--us-duration-normal) var(--us-ease-standard)}button:active:not(:disabled){transform:scale(.95)}button:disabled{transform:none}.unread-badge{display:inline-grid;place-items:center;min-width:22px;height:22px;padding-inline:5px;border-radius:var(--us-radius-pill);background:var(--us-primary-gradient);color:var(--us-on-primary);font-size:var(--us-type-xs);animation:us-scale-enter var(--us-duration-fast) var(--us-ease-enter)}.tabs{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:var(--us-space-2) 0 0}.tabs:after{content:"";position:absolute;bottom:0;left:0;width:20%;height:2px;background:var(--us-primary);transform:translate(calc(var(--us-tab-index, 0) * 100%));transition:transform var(--us-duration-normal) var(--us-ease-enter)}.tabs button{padding-inline:4px}.tabs button.active{border-color:transparent}@media(prefers-reduced-motion:reduce){.app-shell,.app-shell *,.app-shell *:before,.app-shell *:after,.auth-page,.auth-page *,.auth-page *:before,.auth-page *:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}.typing .typing-dot{animation:none!important;opacity:.72;transform:none}}.app-shell.context-open{grid-template-columns:clamp(320px,24vw,360px) minmax(0,1fr)}.context-panel{position:fixed;z-index:15;inset:0 0 0 auto;width:min(100%,350px);box-shadow:var(--us-shadow-lg);animation:us-drawer-in var(--us-duration-panel) var(--us-ease-enter);transition:transform var(--us-duration-fast) var(--us-ease-exit),opacity var(--us-duration-fast) var(--us-ease-exit)}.context-panel[data-open=false]{opacity:0;transform:translate(24px);pointer-events:none;animation:none}.context-backdrop{position:fixed;inset:0;z-index:14;border-radius:0;background:var(--us-overlay);animation:us-fade var(--us-duration-fast) var(--us-ease-enter);transition:opacity var(--us-duration-fast) var(--us-ease-exit)}.context-backdrop[data-open=false]{opacity:0;pointer-events:none;animation:none}.context-backdrop:active:not(:disabled){transform:none}.has-wallpaper-layers:before,.has-wallpaper-layers:after{content:none}.timeline-region>.wallpaper-layers,.wallpaper-preview>.wallpaper-layers,.wallpaper-layer,.wallpaper-layer>img,.wallpaper-layer>div,.wallpaper-layer:after{position:absolute;inset:0;pointer-events:none}.timeline-region>.wallpaper-layers,.wallpaper-preview>.wallpaper-layers{display:block;z-index:0;overflow:hidden}.wallpaper-layer{background:var(--us-bg);animation:us-fade var(--us-duration-panel) var(--us-ease-standard)}.wallpaper-layer>div{background:var(--us-layer-background) center / cover;filter:blur(var(--us-layer-blur));transform:scale(1.04);opacity:var(--us-layer-opacity)}.wallpaper-layer-solid>div{background:var(--us-layer-color)}.wallpaper-layer>img{object-fit:cover;object-position:center;filter:blur(var(--us-layer-blur));transform:scale(1.04);opacity:var(--us-layer-opacity)}.wallpaper-layer:after{content:"";background:var(--us-wallpaper-dim-color);opacity:var(--us-layer-dim)}.message-attachment[data-kind=image] .attachment-preview,.message-attachment[data-kind=video] .attachment-preview{display:grid;place-items:center;position:relative;width:min(280px,60vw);overflow:hidden;border-radius:var(--us-radius-md);background:var(--us-bg-panel);color:var(--us-text)}.attachment-preview>img,.attachment-preview>video,.attachment-image-trigger>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.attachment-preview>img,.attachment-image-trigger>img{opacity:0;transform:scale(.985);filter:blur(4px);transition:opacity var(--us-duration-normal) var(--us-ease-enter),transform var(--us-duration-normal) var(--us-ease-enter),filter var(--us-duration-normal) var(--us-ease-enter)}.attachment-preview>img[data-loaded=true],.attachment-image-trigger>img[data-loaded=true]{opacity:1;transform:scale(1);filter:blur(0)}.viewer-media img{animation:us-fade var(--us-duration-normal) var(--us-ease-enter)}.image-lightbox-image-wrap{transition:transform var(--us-duration-fast) var(--us-ease-standard)}@media(min-width:761px)and (max-width:1100px){.app-shell.context-open{grid-template-columns:320px minmax(0,1fr)}}@media(max-width:900px){.app-shell.context-open{display:flex;flex-direction:column}.context-panel{width:100%}.mobile-navigation:before{content:"";position:absolute;top:4px;left:4px;bottom:4px;width:calc((100% - 8px)/4);border-radius:var(--us-radius-md);background:var(--us-primary-soft);transform:translate(calc(var(--us-nav-index, 0) * 100%));transition:transform var(--us-duration-normal) var(--us-ease-enter);pointer-events:none}.mobile-navigation button{position:relative}.mobile-navigation button.active{background:transparent}}.mobile-navigation{transition:opacity var(--us-duration-normal) var(--us-ease-standard),transform var(--us-duration-normal) var(--us-ease-standard)}.message-attachment[data-kind=image]{margin-top:4px;border:0;border-radius:var(--us-radius-md);background:transparent}.message-attachment[data-kind=image] .attachment-preview{display:inline-grid;width:fit-content;max-width:min(78vw,380px);max-height:60dvh;min-height:0;aspect-ratio:auto!important;border-radius:var(--us-radius-md);background:var(--us-bg-panel)}.message-attachment[data-kind=image] .attachment-image-trigger{display:block;width:fit-content;max-width:100%;max-height:60dvh;padding:0;border-radius:var(--us-radius-md);background:transparent}.message-attachment[data-kind=image] .attachment-image-trigger>img{position:static;display:block;width:auto;height:auto;max-width:100%;max-height:60dvh;border-radius:var(--us-radius-md);object-fit:contain}@keyframes us-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.loading-skeleton{display:grid;gap:var(--us-space-3);width:100%;padding-block:var(--us-space-3)}.loading-skeleton>span{position:relative;overflow:hidden;height:14px;border-radius:var(--us-radius-pill);background:var(--us-glass)}.loading-skeleton>span:nth-child(2){width:76%}.loading-skeleton>span:nth-child(3){width:56%}.loading-skeleton>span:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,var(--us-glass-border),transparent);animation:us-shimmer 1.6s var(--us-ease-standard) infinite}
