:root{--bg:#e8eef3;--bg-elevated:#fff;--bg-muted:#f1f5f8;--bg-chat:#cfdce6;--bg-bubble-me:#b4ddcf;--bg-bubble-them:#fff;--text:#101820;--text-muted:#62707c;--border:#d0dae3;--accent:#1a7a6d;--accent-hover:#146258;--accent-soft:#1a7a6d1f;--danger:#c23b3b;--badge:#1a7a6d;--shadow:0 1px 2px #1018200f;--radius:16px;--radius-sm:12px;--radius-bubble:18px;--font:"Outfit", "Rubik", "Nunito", "Onest", system-ui, -apple-system, sans-serif;--font-brand:"Syne", "Unbounded", "Outfit", sans-serif;--header-h:56px;--row-h:74px;--row-actions-w:186px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--motion:.32s;--motion-fast:.18s;--motion-slow:.56s;--motion-enter:.42s;--ease:cubic-bezier(.22, 1, .36, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-soft:cubic-bezier(.33, 1, .68, 1);--auth-glow:#1a7a6d38;--chat-dot:#1018200b;--chat-glow:#1a7a6d14;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% -10%, var(--chat-glow), transparent 55%);--chat-wallpaper-pattern:radial-gradient(circle at 1px 1px, var(--chat-dot) 1px, transparent 0);--chat-wallpaper-size:100% 100%, 18px 18px}[data-theme=dark]{--bg:#0a0f14;--bg-elevated:#121a22;--bg-muted:#18222c;--bg-chat:#0b1218;--bg-bubble-me:#1a564c;--bg-bubble-them:#1a2430;--text:#e8eef3;--text-muted:#8b9aaa;--border:#243140;--accent:#3dbaa8;--accent-hover:#52cbb9;--accent-soft:#3dbaa824;--danger:#e57373;--badge:#3dbaa8;--shadow:0 1px 3px #00000059;--auth-glow:#3dbaa82e;--chat-dot:#ffffff09;--chat-glow:#3dbaa80f}*,:before,:after{box-sizing:border-box}html,body{height:100%;font-family:var(--font);color:var(--text);background:var(--bg-elevated);-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;margin:0;padding:0}html{transition:background-color var(--motion-slow) var(--ease-soft), color var(--motion) var(--ease-soft)}body{min-height:100%;min-height:100dvh;transition:background-color var(--motion-slow) var(--ease-soft), color var(--motion) var(--ease-soft)}@supports (view-transition-name:none){::view-transition-old(root){animation:vt-fade-out var(--motion-enter) var(--ease-out) both}::view-transition-new(root){animation:vt-fade-in var(--motion-enter) var(--ease-out) both}}@keyframes vt-fade-out{to{opacity:0}}@keyframes vt-fade-in{0%{opacity:0}}a{color:var(--accent);text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}html,body{overscroll-behavior:none;height:100dvh;max-height:100dvh;overflow:hidden}.app-shell{height:100%;background:var(--bg-elevated);max-width:480px;height:100dvh;max-height:100dvh;box-shadow:var(--shadow);transition:background-color var(--motion-slow) var(--ease-soft), box-shadow var(--motion) ease;isolation:isolate;flex-direction:column;margin:0 auto;display:flex;position:relative;overflow:hidden}@media (display-mode:standalone){.app-shell{max-width:none;box-shadow:none;height:100%;height:100dvh;max-height:100dvh}html,body{height:100%;min-height:100%;overscroll-behavior:none;background:var(--bg-elevated);min-height:100dvh}}.screen{height:100%;min-height:0;max-height:100%;animation:screen-in var(--motion-enter) var(--ease-out) both;flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.chats-screen{isolation:isolate;height:100%;max-height:100%;animation:chats-screen-in var(--motion-enter) var(--ease-out) both;flex-direction:column;display:flex;position:relative;overflow:hidden}@keyframes chats-screen-in{0%{opacity:0}to{opacity:1}}.chats-screen:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(ellipse 90% 70% at 50% -20%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 70%);height:42%;animation:8s ease-in-out infinite alternate screen-glow;position:absolute;inset:0 0 auto}.chats-screen>:not(.menu-backdrop):not(.msg-sheet):not(.chat-menu-portal){z-index:1;position:relative}.auth-screen{box-sizing:border-box;animation:screen-in var(--motion-enter) var(--ease-out) both;flex-direction:column;flex:1;justify-content:center;padding:24px 20px;display:flex;position:relative}.auth-top-bar{z-index:10;position:absolute;top:16px;right:20px}.auth-lang-toggle{background:var(--bg-muted);border:1px solid color-mix(in srgb, var(--border) 70%, transparent);border-radius:12px;align-items:center;gap:2px;padding:3px;display:inline-flex}.auth-lang-btn{color:var(--text-muted);cursor:pointer;transition:background-color var(--motion) ease, color var(--motion) ease;background:0 0;border:none;border-radius:9px;padding:4px 9px;font-size:.75rem;font-weight:700}.auth-lang-btn.active{background:var(--bg-elevated);color:var(--accent);box-shadow:0 1px 3px color-mix(in srgb, var(--text) 8%, transparent)}.auth-form{flex-direction:column;gap:16px;display:flex}.field-input-wrap{align-items:center;display:flex;position:relative}.field input,.field-input-wrap input{border:1px solid var(--border);background:var(--bg-muted);width:100%;min-height:48px;color:var(--text);box-sizing:border-box;transition:border-color var(--motion) ease, box-shadow var(--motion) var(--ease-soft), background-color var(--motion) ease;border-radius:14px;outline:none;padding:0 16px;font-size:.96rem}.field-input-wrap input{padding-right:44px}.field input:focus,.field-input-wrap input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);background:var(--bg-elevated)}.eye-btn{width:36px;height:36px;color:var(--text-muted);cursor:pointer;transition:color var(--motion) ease, background-color var(--motion) ease;background:0 0;border:none;border-radius:10px;place-items:center;display:grid;position:absolute;right:6px}.eye-btn:hover{color:var(--text);background:var(--accent-soft)}.field-hint{color:var(--text-muted);margin-top:4px;margin-bottom:0;font-size:.76rem}.error,.auth-error{color:#e24b4b;background:#e24b4b1f;border:1px solid #e24b4b59;border-radius:12px;margin:0;padding:11px 14px;font-size:.84rem;font-weight:600;line-height:1.35}.btn{background:var(--accent);color:#fff;cursor:pointer;min-height:48px;transition:opacity var(--motion) ease, transform var(--motion) ease;border:none;border-radius:14px;justify-content:center;align-items:center;padding:0 20px;font-size:.96rem;font-weight:700;display:inline-flex}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.6;cursor:not-allowed}.auth-footer{color:var(--text-muted);text-align:center;margin-top:16px;margin-bottom:0;font-size:.88rem}.auth-footer a{color:var(--accent);font-weight:600;text-decoration:none}.auth-shake{animation:.4s ease-in-out both auth-shake}@keyframes auth-shake{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.chats-screen>.menu-backdrop,.chats-screen>.msg-sheet,.chats-screen>.chat-menu-portal{z-index:100;position:fixed}.chats-screen>.msg-sheet{z-index:101}@keyframes screen-glow{0%{opacity:.55;transform:translateY(0)}to{opacity:1;transform:translateY(8px)}}.chats-screen .list,.settings-body,.profile-view{padding-bottom:calc(16px + var(--safe-bottom))}@keyframes screen-in{0%{opacity:0}to{opacity:1}}.brand-animate{animation:brand-in .48s var(--ease-out) both;view-transition-name:brand}@keyframes brand-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes title-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes banner-slide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.topbar{--topbar-pad-x:12px;height:calc(var(--header-h) + var(--safe-top));padding:var(--safe-top) var(--topbar-pad-x) 0;background:color-mix(in srgb, var(--bg-elevated) 74%, transparent);-webkit-backdrop-filter:blur(28px)saturate(1.5);border-bottom:1px solid color-mix(in srgb, var(--border) 35%, transparent);box-shadow:0 4px 20px color-mix(in srgb, var(--text) 5%, transparent);z-index:50;transition:background-color var(--motion) var(--ease-soft), box-shadow var(--motion) ease;animation:topbar-in .36s var(--ease-out) both;flex-shrink:0;align-items:center;gap:8px;display:flex;position:sticky;top:0}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.topbar{background:var(--bg-elevated)}}@keyframes topbar-in{0%{opacity:0}to{opacity:1}}.topbar h1{text-overflow:ellipsis;white-space:nowrap;letter-spacing:-.025em;flex:1;margin:0;font-size:1.12rem;font-weight:700;overflow:hidden}.topbar-spacer{flex:1;min-width:0}.brand{font-family:var(--font-brand);letter-spacing:-.04em;color:var(--accent);transition:color var(--motion) ease;flex:1;font-size:1.45rem;font-weight:800}.icon-btn{background:color-mix(in srgb, var(--bg-muted) 88%, transparent);width:44px;height:44px;color:var(--text);transition:background-color var(--motion) var(--ease-soft), transform var(--motion-fast) var(--ease-spring), color var(--motion) ease, box-shadow var(--motion) ease;border:none;border-radius:13px;flex-shrink:0;place-items:center;display:grid}.icon-btn:hover,.icon-btn:focus-visible{background:var(--accent-soft);color:var(--accent);transform:scale(1.04)}.icon-btn:active,.pressable:active,.chat-row:active,.user-row:active,.btn:active,.composer .send:active{transform:scale(.94)}.icon-btn-glass{background:color-mix(in srgb, var(--bg-elevated) 55%, transparent);-webkit-backdrop-filter:blur(12px)saturate(1.2);color:#fff;box-shadow:inset 0 1px #ffffff2e,0 6px 18px #00000038}.icon-btn-glass:hover,.icon-btn-glass:focus-visible{background:color-mix(in srgb, var(--bg-elevated) 72%, transparent);color:#fff}.banner-dismiss{border-radius:10px;width:32px;height:32px;position:relative}.chip-dismiss{background:0 0;border-radius:8px;width:22px;height:22px}.topbar-ghost{flex-shrink:0;width:44px;height:44px}.select-check,.pin-banner-clear,.theme-pill,.rec-cancel,.rec-send,.voice-btn,.accent-swatch,.app-toast-x,.install-dismiss,.coach-tip-action,.profile-edit-pill,.profile-remove-avatar{position:relative}.select-check:after,.pin-banner-clear:after,.theme-pill:after,.rec-cancel:after,.rec-send:after,.voice-btn:after,.accent-swatch:after,.app-toast-x:after,.install-dismiss:after,.coach-tip-action:after,.profile-edit-pill:after,.profile-remove-avatar:after,.pending-remove:after,.profile-avatar-cam:after,.list-filter-clear:after,.jump-unread:after,.banner-dismiss:after,.switch:before{content:"";border-radius:inherit;width:max(100%,44px);height:max(100%,44px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.select-check:after,.pending-remove:after{width:max(100%,36px);height:max(100%,36px)}.topbar-over-media{-webkit-backdrop-filter:none;box-shadow:none;z-index:30;background:0 0;position:absolute;top:0;left:0;right:0}.topbar-over-media .icon-btn,.icon-btn-glass{-webkit-backdrop-filter:blur(20px)saturate(1.4)!important;color:#fff!important;transition:transform var(--motion-fast) var(--ease-spring), background-color var(--motion-fast) ease!important;background:#00000059!important;border:1px solid #fff3!important;border-radius:14px!important;box-shadow:0 4px 16px #00000040!important}.topbar-over-media .icon-btn:hover,.icon-btn-glass:hover{background:#00000080!important;transform:scale(1.06)!important}.topbar-over-media .icon-btn:active,.icon-btn-glass:active{transform:scale(.94)!important}.back-btn{animation:back-nudge .52s var(--ease-spring) both}@keyframes back-nudge{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.btn{border-radius:var(--radius-sm);background:var(--accent);color:#fff;min-height:48px;transition:background-color var(--motion) ease, transform var(--motion-fast) var(--ease-spring), opacity var(--motion) ease, box-shadow var(--motion) ease, filter var(--motion-fast) ease;animation:btn-rise .48s var(--ease-out) both;border:none;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-weight:600;display:inline-flex}@keyframes btn-rise{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:none}}.btn:hover{background:var(--accent-hover);box-shadow:0 8px 24px color-mix(in srgb, var(--accent) 32%, transparent);transform:translateY(-1px)}.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;animation:none;transform:none}.btn-ghost{color:var(--accent);box-shadow:none;background:0 0}.btn-ghost:hover{background:var(--accent-soft);box-shadow:none}.btn-block{width:100%}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--text-muted);font-size:.82rem;font-weight:600}.field input{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-elevated);min-height:48px;color:var(--text);font:inherit;transition:border-color var(--motion) ease, box-shadow var(--motion) ease, transform var(--motion-fast) var(--ease-soft), background-color var(--motion) ease;padding:0 14px}.field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none;transform:translateY(-1px)}.error{color:var(--danger);margin:0;font-size:.9rem}.auth-screen{padding:28px 22px calc(28px + var(--safe-bottom));background:radial-gradient(ellipse 110% 70% at 50% -10%, var(--auth-glow), transparent 55%), radial-gradient(ellipse 80% 50% at 100% 100%, var(--accent-soft), transparent 45%), var(--bg);justify-content:center;position:relative;overflow:hidden}.auth-screen:before,.auth-screen:after{content:"";pointer-events:none;filter:blur(2px);opacity:.4;border-radius:50%;position:absolute}.auth-screen:before{background:color-mix(in srgb, var(--accent) 35%, transparent);width:160px;height:160px;animation:8s ease-in-out infinite onboard-float;bottom:12%;left:-50px}.auth-screen:after{background:color-mix(in srgb, var(--accent) 22%, #fff 10%);width:110px;height:110px;animation:10s ease-in-out infinite reverse onboard-float;top:18%;right:-30px}.auth-card{z-index:1;animation:screen-in .52s var(--ease-out) both;flex-direction:column;gap:16px;display:flex;position:relative}.auth-card .brand-title{font-family:var(--font-brand);letter-spacing:-.05em;color:var(--accent);animation:brand-in .64s var(--ease-out) both;margin:0;font-size:clamp(2.8rem,13vw,3.6rem);font-weight:800;line-height:.95}.auth-card .subtitle{color:var(--text-muted);animation:title-in .56s 80ms var(--ease-out) both;margin:0 0 4px;font-size:1.02rem;font-weight:450}.auth-card form{animation:card-in .56s .12s var(--ease-out) both;flex-direction:column;gap:14px;display:flex}.auth-footer{text-align:center;color:var(--text-muted);font-size:.95rem}.tabbar{padding:6px 6px var(--safe-bottom);background:color-mix(in srgb, var(--bg-elevated) 86%, transparent);-webkit-backdrop-filter:blur(28px)saturate(1.5);box-shadow:0 -1px 0 color-mix(in srgb, var(--border) 55%, transparent), 0 -8px 24px color-mix(in srgb, var(--text) 4%, transparent);z-index:30;animation:tabbar-in .34s var(--ease-out) both;flex-shrink:0;align-items:stretch;gap:2px;display:flex;position:sticky;bottom:0}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.tabbar{background:var(--bg-elevated)}}@keyframes tabbar-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.tab{min-width:0;min-height:52px;color:var(--text-muted);transition:color var(--motion) var(--ease-soft), background-color var(--motion) var(--ease-soft), transform var(--motion-fast) var(--ease-spring);border-radius:14px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;display:flex}.tab:active{transform:scale(.93)}.tab.active{color:var(--accent)}.tab-ico{width:44px;height:26px;transition:background-color var(--motion) var(--ease-soft);border-radius:13px;place-items:center;display:grid;position:relative}.tab.active .tab-ico{background:var(--accent-soft);animation:tab-pop .3s var(--ease-spring) both}@keyframes tab-pop{0%{transform:scale(.8)}to{transform:scale(1)}}.tab-label{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.66rem;font-weight:650;line-height:1;overflow:hidden}.tab-badge{background:var(--badge);color:#fff;text-align:center;min-width:17px;height:17px;box-shadow:0 0 0 2px var(--bg-elevated);animation:badge-pop .42s var(--ease-spring) both;border-radius:9px;padding:0 5px;font-size:.62rem;font-weight:700;line-height:17px;position:absolute;top:-4px;right:4px}.app-version{text-align:center;color:var(--text-muted);opacity:.55;padding:24px 0 calc(28px + env(safe-area-inset-bottom,0px));-webkit-user-select:none;user-select:none;margin:0;font-size:.76rem;font-weight:500}.fab{right:18px;bottom:calc(76px + env(safe-area-inset-bottom,0px));background:var(--accent);color:#fff;z-index:100;width:54px;height:54px;box-shadow:0 8px 24px color-mix(in srgb, var(--accent) 40%, transparent), 0 2px 8px color-mix(in srgb, var(--text) 14%, transparent);transition:background-color var(--motion) var(--ease-soft), transform var(--motion-fast) var(--ease-spring), box-shadow var(--motion) ease;animation:fab-in .42s var(--ease-spring) both;border:none;border-radius:50%;place-items:center;display:grid;position:fixed}.fab:hover,.fab:focus-visible{background:var(--accent-hover)}@keyframes fab-in{0%{opacity:0;transform:scale(.4)translateY(16px)}to{opacity:1;transform:none}}.list{-webkit-overflow-scrolling:touch;background:var(--bg-elevated);overscroll-behavior:contain;flex:1;overflow-y:auto}.list.is-holding{touch-action:none;overflow:hidden}html.sheet-open,html.sheet-open body{overscroll-behavior:none;overflow:hidden}.chat-menu-portal .menu-backdrop{z-index:200;background:#00000057}.chat-menu-portal .msg-sheet{z-index:201;bottom:calc(20px + var(--safe-bottom));width:min(340px,100% - 28px)}.app-version{padding:8px 16px calc(10px + var(--safe-bottom));text-align:center;letter-spacing:.04em;color:color-mix(in srgb, var(--text-muted) 55%, transparent);-webkit-user-select:none;user-select:none;pointer-events:none;background:0 0;flex-shrink:0;margin:0;font-size:.68rem}.empty{text-align:center;color:var(--text-muted);flex-direction:column;align-items:center;gap:14px;padding:56px 28px;display:flex}.empty-animate{animation:empty-rise .56s var(--ease-out) both}@keyframes empty-rise{0%{opacity:0;transform:translateY(18px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.empty-icon{background:var(--accent-soft);width:72px;height:72px;color:var(--accent);animation:empty-icon-pop .64s var(--ease-spring) both;border-radius:50%;place-items:center;margin-bottom:4px;display:grid}@keyframes empty-icon-pop{0%{opacity:0;transform:scale(.6)}60%{transform:scale(1.08)}to{opacity:1;transform:scale(1)}}.empty p{animation:empty-rise .56s var(--ease-out) 80ms both;margin:0;font-size:.98rem}.list-section-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);animation:row-in .36s var(--ease-out) both;padding:8px 16px 4px;font-size:.72rem;font-weight:700}.chats-screen .list>.list-section-label:first-child{padding-top:6px}.chat-row-wrap{--row-actions-w:132px;animation:row-in .42s var(--ease-out) both;touch-action:pan-y;-webkit-user-select:none;user-select:none;position:relative;overflow:hidden}.chat-row-wrap:first-child{animation-delay:20ms}.chat-row-wrap:nth-child(2){animation-delay:45ms}.chat-row-wrap:nth-child(3){animation-delay:70ms}.chat-row-wrap:nth-child(4){animation-delay:95ms}.chat-row-wrap:nth-child(5){animation-delay:.12s}.chat-row-wrap:nth-child(6){animation-delay:.145s}.chat-row-wrap:nth-child(7){animation-delay:.17s}.chat-row-wrap:nth-child(8){animation-delay:.195s}.chat-row-wrap:nth-child(9){animation-delay:.22s}.chat-row-wrap:nth-child(10){animation-delay:.245s}.chat-row-wrap:nth-child(11){animation-delay:.27s}.chat-row-wrap:nth-child(12){animation-delay:.295s}.chat-row-wrap:nth-child(n+13){animation-delay:.31s}@keyframes row-in{0%{opacity:0;filter:blur(4px);transform:translateY(18px)scale(.97)}to{opacity:1;filter:none;transform:none}}.row-actions-under{width:var(--row-actions-w);z-index:0;opacity:0;pointer-events:none;background:0 0;flex-direction:row;justify-content:flex-end;align-items:stretch;gap:0;padding:0;transition:opacity .12s;display:flex;position:absolute;inset:0 0 0 auto}.chat-row-wrap.menu-open .row-actions-under,.chat-row-wrap.swipe-open .row-actions-under,.chat-row-wrap.swiping .row-actions-under{opacity:1}.chat-row-wrap.swipe-open .row-actions-under{pointer-events:auto}.row-action{color:#fff;min-width:60px;transition:filter var(--motion-fast) ease, transform var(--motion-fast) var(--ease-spring);border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;font-size:.66rem;font-weight:650;display:flex}.row-action:active{filter:brightness(1.08);transform:scale(.96)}.row-action.pin{background:var(--accent)}.row-action.mute{background:#5b6b7a}.row-action.delete{background:var(--danger)}.call-head-btn{color:var(--accent);background:var(--accent-soft)}.call-head-btn:hover{background:color-mix(in srgb, var(--accent) 22%, transparent);transform:scale(1.06)}.pad-sheet{gap:10px;padding:16px 18px}.sheet-title{letter-spacing:-.02em;text-align:center;margin:0;font-size:1.05rem;font-weight:750}.sheet-desc{color:var(--text-muted);text-align:center;margin:0 0 4px;font-size:.88rem}.fab{right:18px;bottom:calc(78px + env(safe-area-inset-bottom,0px));background:var(--accent);color:#fff;width:52px;height:52px;box-shadow:0 4px 16px #00000047, 0 2px 8px color-mix(in srgb, var(--accent) 35%, transparent);z-index:100;transition:transform var(--motion-fast) var(--ease-spring), background-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease;-webkit-tap-highlight-color:transparent;border-radius:50%;place-items:center;text-decoration:none;display:grid;position:fixed}.fab:hover{background:var(--accent-hover);box-shadow:0 6px 20px #00000052, 0 4px 12px color-mix(in srgb, var(--accent) 45%, transparent);transform:scale(1.08)}.fab:active{transform:scale(.92)}.chat-row{border:none;border-bottom:1px solid color-mix(in srgb, var(--border) 55%, transparent);background:var(--bg-elevated);color:inherit;min-height:var(--row-h);text-align:left;z-index:1;isolation:isolate;width:100%;transition:background-color var(--motion) var(--ease-soft), transform .28s var(--ease-out), box-shadow var(--motion) ease, filter .28s var(--ease-soft);cursor:pointer;touch-action:pan-y;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;align-items:center;gap:12px;padding:12px 16px;display:flex;position:relative;transform:translateZ(0)scale(1)}.chat-row.holding{background:var(--accent-soft);box-shadow:0 8px 28px color-mix(in srgb, var(--accent) 18%, transparent), 0 0 0 1px color-mix(in srgb, var(--accent) 22%, transparent);z-index:2;animation:hold-glow .52s var(--ease-soft) both;border-bottom-color:#0000;border-radius:14px;transform:scale(.972)}@keyframes hold-glow{0%{box-shadow:none;transform:scale(1)}to{box-shadow:0 8px 28px color-mix(in srgb, var(--accent) 18%, transparent), 0 0 0 1px color-mix(in srgb, var(--accent) 22%, transparent);transform:scale(.972)}}.chat-row-wrap.menu-open .chat-row{background:var(--accent-soft);transform:scale(.985)}.chat-row-wrap.swiping .chat-row{transition:none}.chat-row:active{background:var(--accent-soft)}.chat-row.muted .name,.chat-row.muted .preview,.chat-row.muted .time{opacity:.62}.chat-row.unread .name{color:var(--text);font-weight:750}.chat-row.unread .preview{color:color-mix(in srgb, var(--text) 72%, var(--text-muted));font-weight:500}.chat-row.unread .time{color:var(--accent);font-weight:650}.unread-badge.pop{animation:badge-pop .42s var(--ease-spring) both}@keyframes badge-pop{0%{opacity:0;transform:scale(.35)}55%{transform:scale(1.12)}to{opacity:1;transform:scale(1)}}.list-filter{animation:filter-in .4s var(--ease-out) both;z-index:15;background:color-mix(in srgb, var(--bg-elevated) 88%, transparent);-webkit-backdrop-filter:blur(22px)saturate(1.35);border-bottom:1px solid color-mix(in srgb, var(--border) 40%, transparent);flex-shrink:0;align-items:center;padding:8px 14px 10px;display:flex;position:relative}@keyframes filter-in{0%{opacity:0;filter:blur(3px);transform:translateY(-12px)scale(.98)}to{opacity:1;filter:none;transform:none}}.list-filter-ico{color:var(--text-muted);pointer-events:none;z-index:1;place-items:center;display:grid;position:absolute;left:26px}.list-filter-clear{width:32px;height:32px;color:var(--text-muted);z-index:1;transition:background-color var(--motion) ease, color var(--motion) ease;background:0 0;border:none;border-radius:50%;place-items:center;display:grid;position:absolute;right:22px}.list-filter-clear:hover{background:var(--accent-soft);color:var(--accent)}.list-filter input{border:1px solid var(--border);background:var(--bg-muted);width:100%;min-height:42px;color:var(--text);transition:border-color var(--motion) ease, box-shadow var(--motion) var(--ease-soft), background-color var(--motion) ease, transform var(--motion-fast) ease;border-radius:22px;outline:none;padding:0 40px}.list-filter input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);transform:scale(1.01)}.coach-tip{background:color-mix(in srgb, var(--accent) 12%, var(--bg-elevated));border:1px solid color-mix(in srgb, var(--accent) 28%, var(--border));color:var(--text);box-shadow:0 4px 16px color-mix(in srgb, var(--text) 5%, transparent);animation:coach-tip-in .34s var(--ease-spring) both;transition:opacity .28s ease, transform .28s var(--ease-spring), max-height .28s ease, margin .28s ease, padding .28s ease;border-radius:16px;align-items:center;gap:12px;padding:12px 14px;display:flex;overflow:hidden}.coach-tip.soft{background:color-mix(in srgb, var(--bg-elevated) 92%, var(--border));border-color:color-mix(in srgb, var(--border) 80%, transparent)}.coach-tip.leaving{pointer-events:none;animation:coach-tip-out .28s var(--ease-spring) both!important}@keyframes coach-tip-in{0%{opacity:0;transform:translateY(-8px)scale(.96)}to{opacity:1;transform:none}}@keyframes coach-tip-out{0%{opacity:1;max-height:120px;transform:none}to{opacity:0;max-height:0;margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0;transform:translateY(-12px)scale(.92)}}.coach-tip-ico{color:var(--accent);flex-shrink:0;place-items:center;display:grid}.coach-tip-copy{min-width:0;color:var(--text-muted);flex:1;font-size:.84rem;line-height:1.35}.coach-tip-action{background:var(--accent);color:#fff;cursor:pointer;transition:background-color var(--motion) ease, transform var(--motion-fast) var(--ease-spring);border:none;border-radius:10px;flex-shrink:0;padding:6px 12px;font-size:.76rem;font-weight:650}.coach-tip-action:hover,.coach-tip-action:focus-visible{background:var(--accent-hover)}.search-hint{color:var(--text-muted);max-width:280px;margin:0;font-size:.86rem;line-height:1.4}.search-user-row,.search-msg-row{animation:row-in .36s var(--ease-out) both}.search-user-meta{text-align:left;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.search-user-meta .name{letter-spacing:-.01em;font-weight:650}.search-user-meta .hint{color:var(--text-muted);font-size:.85rem}.search-msg-row .time{color:var(--text-muted);flex-shrink:0;align-self:flex-start;margin-top:2px;font-size:.72rem}.msg-snippet{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.chat-row .meta{flex:1;min-width:0}.chat-row .row-top{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:2px;display:flex}.chat-row .name{letter-spacing:-.01em;margin:0;font-weight:650}.chat-row .time{color:var(--text-muted);flex-shrink:0;font-size:.75rem}.chat-row .row-bottom{align-items:center;gap:8px;display:flex}.chat-row .preview{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;font-size:.9rem;overflow:hidden}.unread-badge{background:var(--badge);color:#fff;min-width:20px;height:20px;animation:badge-pop .42s var(--ease-spring) both;border-radius:10px;flex-shrink:0;place-items:center;padding:0 6px;font-size:.72rem;font-weight:700;display:grid}.avatar{color:#fff;text-transform:uppercase;letter-spacing:.02em;width:48px;height:48px;transition:transform var(--motion-fast) var(--ease-spring), filter var(--motion) ease;border-radius:50%;flex-shrink:0;place-items:center;font-size:1.05rem;font-weight:700;display:grid}.chat-row:active .avatar,.chat-row.holding .avatar{transform:scale(.94)}.avatar-wrap{transition:transform var(--motion-fast) var(--ease-spring);animation:avatar-pop .46s var(--ease-spring) both;flex-shrink:0;display:inline-flex;position:relative}.chat-row:active .avatar-wrap{transform:scale(.96)}.avatar-online{background:color-mix(in srgb, var(--accent) 35%, #2ecc71);border:2px solid var(--bg-elevated);border-radius:50%;width:11px;height:11px;position:absolute;bottom:1px;right:1px}.avatar-letter{background:color-mix(in srgb, var(--accent) 72%, #1a2a28);box-shadow:inset 0 0 0 1px #ffffff1f}.avatar-letter[data-tone="1"]{background:color-mix(in srgb, var(--accent) 85%, #0a1a18)}.avatar-letter[data-tone="2"]{background:color-mix(in srgb, var(--accent) 55%, #2b6cb0)}.avatar-letter[data-tone="3"]{background:color-mix(in srgb, var(--accent) 45%, #c05621)}.avatar-letter[data-tone="4"]{background:color-mix(in srgb, var(--accent) 40%, #5b4bb7)}.avatar-letter[data-tone="5"]{background:color-mix(in srgb, var(--accent) 50%, #2f855a)}.avatar-letter[data-tone="6"]{background:color-mix(in srgb, var(--accent) 45%, #b83232)}.avatar-letter[data-tone="7"]{background:color-mix(in srgb, var(--accent) 60%, #2c7a7b)}.chat-view{background-color:var(--bg-chat);background-image:var(--chat-wallpaper-glow), var(--chat-wallpaper-pattern);background-size:var(--chat-wallpaper-size);height:100%;min-height:0;max-height:100%;animation:chat-world-in .56s var(--ease-out) both;transition:background-color var(--motion-slow) var(--ease-soft), background-image var(--motion-slow) ease;flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}@media (display-mode:standalone){.chat-view{height:100%;max-height:100%}.composer-wrap{padding-bottom:max(var(--safe-bottom), 8px)}}.chat-view>.topbar{z-index:50;flex-shrink:0;position:absolute;top:0;left:0;right:0}.chat-view>.messages-wrap{z-index:10;padding-top:0;position:absolute;inset:0}.chat-view>.coach-tip{margin:calc(var(--header-h) + var(--safe-top) + 8px) 10px 0;z-index:19;flex-shrink:0;width:auto;position:relative;top:auto;left:auto;right:auto}.chat-view>.pin-banner{z-index:19;margin-top:calc(var(--header-h) + var(--safe-top));flex-shrink:0;position:relative}@keyframes chat-world-in{0%{opacity:.4}to{opacity:1}}.messages-wrap{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.messages{padding:calc(var(--header-h) + var(--safe-top) + 12px) 12px calc(92px + env(safe-area-inset-bottom,0px));-webkit-overflow-scrolling:touch;overscroll-behavior:contain;scroll-behavior:smooth;flex-direction:column;flex:1;gap:3px;display:flex;overflow-y:auto}.sticky-date{top:calc(var(--header-h) + var(--safe-top) + 8px);z-index:5;pointer-events:none;justify-content:center;display:flex;position:absolute;left:0;right:0}.sticky-date span{color:var(--text-muted);background:color-mix(in srgb, var(--bg-elevated) 82%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid color-mix(in srgb, var(--border) 60%, transparent);animation:sticky-date-in .32s var(--ease-out) both;transition:opacity var(--motion) ease, transform var(--motion) var(--ease-soft);border-radius:999px;padding:4px 12px;font-size:.72rem;font-weight:600}@keyframes sticky-date-in{0%{opacity:0;transform:translateY(-8px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}.jump-latest{z-index:6;background:var(--bg-elevated);width:44px;min-width:44px;height:44px;min-height:44px;color:var(--text);border:none;border:1px solid var(--border);animation:jump-in .38s var(--ease-spring) both;transition:transform var(--motion-fast) var(--ease-spring), background-color var(--motion) ease, box-shadow var(--motion) ease;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:12px;right:14px;box-shadow:0 6px 20px #10182029}.jump-badge{background:var(--accent);color:#fff;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.65rem;font-weight:700;line-height:1;display:grid;position:absolute;top:-4px;right:-4px}.jump-unread{z-index:6;background:var(--bg-elevated);min-height:36px;color:var(--text);border:none;border:1px solid var(--border);animation:jump-in .38s var(--ease-spring) both;border-radius:999px;padding:8px 14px;font-size:.8rem;font-weight:600;position:absolute;bottom:60px;left:50%;transform:translate(-50%);box-shadow:0 6px 20px #10182024}.load-older{z-index:4;pointer-events:none;justify-content:center;display:flex;position:absolute;top:8px;left:0;right:0}.load-older span{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:22px;height:22px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.jump-latest:hover{transform:scale(1.06);box-shadow:0 8px 24px #10182033}.jump-latest:active{transform:scale(.94)}@keyframes jump-in{0%{opacity:0;transform:translateY(16px)scale(.8)}to{opacity:1;transform:translateY(0)scale(1)}}.chat-skeleton{opacity:.7;flex-direction:column;gap:10px;padding:12px 4px;display:flex}.chat-skeleton .sk{background:linear-gradient(90deg, color-mix(in srgb, var(--text) 6%, transparent), color-mix(in srgb, var(--text) 12%, transparent), color-mix(in srgb, var(--text) 6%, transparent));background-size:200% 100%;border-radius:16px;width:58%;height:42px;animation:1.2s infinite sk-shine;display:block}.chat-skeleton .sk-me{align-self:flex-end;width:46%}.chat-skeleton .sk.short{width:36%}@keyframes sk-shine{0%{background-position:100% 0}to{background-position:-100% 0}}.date-sep{justify-content:center;margin:10px 0 6px;display:flex}.date-sep span{color:var(--text-muted);background:color-mix(in srgb, var(--bg-elevated) 72%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid color-mix(in srgb, var(--border) 60%, transparent);animation:date-sep-in .4s var(--ease-out) both;border-radius:999px;padding:4px 10px;font-size:.72rem;font-weight:600}@keyframes date-sep-in{0%{opacity:0;filter:blur(2px);transform:translateY(6px)scale(.92)}to{opacity:1;filter:none;transform:none}}.unread-divider{justify-content:center;align-items:center;margin:14px 0 10px;display:flex;position:relative}.unread-divider:before{content:"";background:color-mix(in srgb, var(--accent) 35%, transparent);height:1px;position:absolute;top:50%;left:0;right:0}.unread-divider span{z-index:1;color:var(--accent);background:color-mix(in srgb, var(--bg-elevated) 88%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);box-shadow:0 2px 8px color-mix(in srgb, var(--text) 4%, transparent);border-radius:999px;padding:4px 12px;font-size:.72rem;font-weight:650;position:relative}.chat-view,.messages-wrap,.messages,.bubble-row,.bubble-row *,.bubble,.bubble *,.bubble-content,.bubble-content *{-webkit-touch-callout:none!important;-webkit-user-select:none!important;user-select:none!important;-khtml-user-select:none!important;-webkit-user-drag:none!important;user-drag:none!important;-webkit-tap-highlight-color:transparent!important}.bubble-row{animation:bubble-in .44s var(--ease-out) both;display:flex;position:relative}.reaction-burst-particle{pointer-events:none;z-index:100;font-size:2.2rem;animation:.75s cubic-bezier(.34,1.56,.64,1) forwards reaction-particle-fly;position:absolute;top:-20px;right:24px}@keyframes reaction-particle-fly{0%{opacity:0;transform:translateY(16px)scale(.3)rotate(-15deg)}40%{opacity:1;transform:translateY(-28px)scale(1.4)rotate(10deg)}to{opacity:0;transform:translateY(-56px)scale(.8)rotate(0)}}.bubble-row.swiping .bubble{transition:none}.bubble-row.highlight .bubble{outline:2px solid var(--accent);outline-offset:2px;animation:highlight-flash 1.2s var(--ease-soft)}@keyframes highlight-flash{0%,to{outline-color:#0000;transform:scale(1)}15%,55%{outline-color:var(--accent);transform:scale(1.02)}}.bubble-row.me{--bubble-origin:18px;justify-content:flex-end}.bubble-row.grouped{margin-top:0}.bubble-row:not(.grouped){margin-top:6px;animation-name:bubble-in-side}.bubble-row:not(.me){--bubble-origin:-18px}@keyframes bubble-in{0%{opacity:0;filter:blur(4px);transform:translateY(10px)scale(.96)}to{opacity:1;filter:none;transform:none}}@keyframes bubble-in-side{0%{opacity:0;transform:translateX(var(--bubble-origin,14px)) translateY(8px) scale(.94);filter:blur(4px)}to{opacity:1;filter:none;transform:none}}.bubble{border-radius:var(--radius-bubble);touch-action:pan-y;will-change:transform;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;max-width:min(82%,340px);transition:background-color var(--motion) var(--ease-soft), box-shadow var(--motion) ease, transform .24s var(--ease-out), border-radius var(--motion) ease;padding:8px 12px 6px;position:relative;box-shadow:0 1px 2px #1018200a}[data-theme=dark] .bubble{box-shadow:0 1px 2px #0000002e}.bubble.me{background:var(--bg-bubble-me);border-bottom-right-radius:5px}.bubble.them{background:var(--bg-bubble-them);border-bottom-left-radius:5px}.bubble.me.grouped:not(.tail){border-bottom-right-radius:var(--radius-bubble)}.bubble.them.grouped:not(.tail){border-bottom-left-radius:var(--radius-bubble)}.bubble.me.grouped{border-top-right-radius:var(--radius-bubble)}.bubble.them.grouped{border-top-left-radius:var(--radius-bubble)}.bubble.me.tail:not(.grouped){border-bottom-right-radius:5px}.bubble.them.tail:not(.grouped){border-bottom-left-radius:5px}.bubble .body{white-space:pre-wrap;word-break:break-word;margin:0;font-size:.95rem;line-height:1.38}.bubble .time{text-align:right;color:var(--text-muted);opacity:.9;margin-top:3px;font-size:.68rem;display:block}.att-list{flex-direction:column;gap:6px;margin-bottom:4px;display:flex}.att-image{object-fit:cover;border-radius:10px;max-width:100%;max-height:240px;display:block}.att-image-btn{cursor:zoom-in;background:0 0;border:none;border-radius:10px;width:100%;padding:0;display:block;overflow:hidden}.att-file{background:color-mix(in srgb, var(--text) 6%, transparent);color:var(--text);border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-size:.9rem;display:flex}.composer-wrap{-webkit-backdrop-filter:none;padding-bottom:max(var(--safe-bottom), 10px);pointer-events:none;z-index:50;background:0 0;border-top:none;flex-shrink:0;padding-top:4px;position:absolute;bottom:0;left:0;right:0}.composer-wrap>*{pointer-events:auto}.composer{background:color-mix(in srgb, var(--bg-elevated) 76%, transparent);-webkit-backdrop-filter:blur(24px)saturate(1.4);border:1px solid color-mix(in srgb, var(--border) 60%, transparent);box-shadow:0 8px 32px color-mix(in srgb, var(--text) 14%, transparent), 0 2px 8px color-mix(in srgb, var(--text) 5%, transparent);transition:border-color var(--motion) ease, box-shadow var(--motion) var(--ease-soft), background-color var(--motion) ease, transform var(--motion-fast) var(--ease-spring);animation:composer-in .52s var(--ease-out) both;border-radius:26px;align-items:flex-end;gap:6px;margin:0 12px;padding:8px 10px 10px;display:flex}@keyframes composer-in{0%{opacity:0;filter:blur(4px);transform:translateY(18px)scale(.96)}to{opacity:1;filter:none;transform:none}}.composer:focus-within{border-color:color-mix(in srgb, var(--accent) 45%, var(--border));box-shadow:0 6px 28px color-mix(in srgb, var(--accent) 14%, transparent), 0 0 0 3px color-mix(in srgb, var(--accent) 12%, transparent);transform:translateY(-1px)}.composer-attach{width:44px;height:44px;transition:transform var(--motion-fast) var(--ease-spring), color var(--motion) ease, background-color var(--motion) ease}.composer-attach:hover{transform:rotate(-12deg)scale(1.06)}.composer textarea{resize:none;min-height:40px;max-height:120px;color:var(--text);transition:height var(--motion-fast) var(--ease-soft);background:0 0;border:none;border-radius:0;outline:none;flex:1;padding:10px 4px;line-height:1.35;overflow-y:auto}.composer textarea:focus{box-shadow:none;border-color:#0000}.composer .send{background:var(--accent);color:#fff;touch-action:none;width:44px;height:44px;transition:background-color var(--motion) ease, transform .2s var(--ease-spring), opacity var(--motion) ease, box-shadow var(--motion) ease;box-shadow:0 2px 10px color-mix(in srgb, var(--accent) 28%, transparent);border:none;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.composer .send:hover:not(:disabled){transform:scale(1.06)}.composer .send.flash{animation:send-flash .36s var(--ease-spring)}@keyframes send-flash{0%{transform:scale(1)}30%{transform:scale(.82)rotate(-8deg)}65%{transform:scale(1.12)rotate(4deg)}to{transform:scale(1)rotate(0)}}.composer .send:disabled{opacity:.4}.pending-files{animation:filter-in .32s var(--ease-out) both;flex-wrap:wrap;gap:8px;padding:8px 12px 0;display:flex}.pending-chip{background:var(--accent-soft);color:var(--accent);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;gap:4px;max-width:160px;padding:4px 8px;font-size:.78rem;display:inline-flex;overflow:hidden}.pending-thumb{border:1px solid var(--border);border-radius:12px;width:56px;height:56px;position:relative;overflow:hidden}.pending-thumb img,.pending-thumb video{object-fit:cover;width:100%;height:100%;display:block}.composer-banner-thumb{object-fit:cover;border-radius:8px;flex-shrink:0;width:36px;height:36px}.reply-thumb{object-fit:cover;border-radius:6px;flex-shrink:0;width:36px;height:36px}.fwd-label{color:var(--accent);margin:0 0 4px;font-size:.72rem;font-weight:600}.att-video{background:#000;border-radius:12px;width:100%;max-width:260px;display:block}.swipe-react-hint{color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent);opacity:0;pointer-events:none;z-index:0;border-radius:50%;place-items:center;width:30px;height:30px;display:grid;position:absolute;top:50%;right:8px;transform:translateY(-50%)scale(.7)}.bubble-row.selected .bubble{outline:2px solid var(--accent);outline-offset:2px}.select-check{border:2px solid var(--border);color:#fff;border-radius:50%;flex-shrink:0;align-self:center;place-items:center;width:22px;height:22px;margin:0 8px;display:grid}.select-check.on{background:var(--accent);border-color:var(--accent)}.select-bar{padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--bg-elevated);border-top:1px solid var(--border);justify-content:space-around;align-items:center;display:flex}.select-bar .danger{color:var(--danger)}.pin-banner{border:none;border-bottom:1px solid var(--border);background:color-mix(in srgb, var(--accent) 8%, var(--bg));text-align:left;width:100%;color:var(--text);align-items:center;gap:8px;padding:8px 12px;font-size:.85rem;display:flex}.pin-banner-ico{color:var(--accent);display:grid}.pin-banner-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.pin-banner-clear{min-width:40px;min-height:40px;color:var(--text-muted);place-items:center;padding:8px;display:grid}.chat-overlay-sheet{z-index:300;background:var(--bg-elevated);border:1px solid var(--border);max-height:72vh;animation:banner-slide .24s var(--ease-out) both;border-radius:18px 18px 0 0;flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0}.overlay-head{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:12px 12px 8px;display:flex}.overlay-head input{border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:12px;flex:1;padding:10px 12px}.overlay-body{padding:8px;overflow:auto}.overlay-hit{width:100%;color:var(--text);text-align:left;background:0 0;border:none;border-radius:12px;align-items:center;gap:10px;padding:12px 10px;font-size:.92rem;display:flex}.overlay-hit:active{background:var(--bg-muted)}.overlay-empty{text-align:center;color:var(--text-muted);padding:24px 12px}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:2px;padding:2px;display:grid;overflow:auto}.gallery-cell{aspect-ratio:1;background:var(--bg-muted);border:none;padding:0;overflow:hidden}.gallery-cell img,.gallery-cell video{object-fit:cover;width:100%;height:100%;display:block}.gallery-file{color:var(--accent);grid-column:1/-1;padding:12px;font-size:.9rem}.sheet-section{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;padding:10px 16px 4px;font-size:.78rem}.sheet-row-ico{vertical-align:middle;opacity:.78;flex-shrink:0;place-items:center;margin-right:8px;display:inline-grid}.msg-menu button{text-align:left;width:100%;min-height:48px;color:var(--text);border:none;border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent);font:inherit;cursor:pointer;transition:background-color var(--motion-fast) var(--ease-soft), transform var(--motion-fast) var(--ease-spring), color var(--motion) ease;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;align-items:center;gap:10px;padding:12px 16px;font-weight:600;display:flex}.msg-menu button .sheet-row-ico{margin-right:0}.msg-menu button svg{flex-shrink:0}.msg-menu button:hover{background:var(--accent-soft)}.msg-menu button:active{background:color-mix(in srgb, var(--accent-soft) 80%, transparent);transform:scale(.985)}.msg-menu button:disabled{opacity:.55;pointer-events:none}.msg-menu button:last-child{border-bottom:none}.msg-menu button.danger{color:var(--danger)}.msg-menu button.danger .sheet-row-ico{opacity:.95}.msg-menu button.active{color:var(--accent);font-weight:600}.topbar-actions{flex-shrink:0;align-items:center;gap:4px;display:flex}.topbar-actions .icon-btn{position:relative}.top-badge{background:var(--danger);color:#fff;border-radius:999px;place-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.65rem;font-weight:700;display:grid;position:absolute;top:2px;right:2px}.preview.draft{color:var(--accent);font-style:italic}.preview.failed-send{color:var(--danger)}.unread-badge.fail{background:var(--danger)}.row-action.archive{background:color-mix(in srgb, var(--text-muted) 35%, transparent)}.chat-topbar .peer-link{flex:1;min-width:0}.pending-remove{color:#fff;background:#0000008c;border:none;border-radius:50%;place-items:center;width:20px;height:20px;padding:0;display:grid;position:absolute;top:2px;right:2px}.search-box{border-bottom:1px solid var(--border);background:var(--bg-elevated);padding:12px 16px}.search-box input{border:1px solid var(--border);background:var(--bg-muted) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238b9aaa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") 12px center no-repeat;width:100%;min-height:42px;color:var(--text);transition:border-color var(--motion) ease, box-shadow var(--motion) var(--ease-soft), background-color var(--motion) ease, transform var(--motion-fast) var(--ease-soft);border-radius:22px;outline:none;padding:0 14px 0 38px}.search-box input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);transform:translateY(-1px)}.user-row{border:none;border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent);text-align:left;width:100%;color:inherit;min-height:64px;transition:background-color var(--motion) ease, transform var(--motion-fast) var(--ease-spring);animation:row-in .4s var(--ease-out) both;background:0 0;align-items:center;gap:12px;padding:12px 16px;display:flex}.user-row:first-child{animation-delay:30ms}.user-row:nth-child(2){animation-delay:60ms}.user-row:nth-child(3){animation-delay:90ms}.user-row:nth-child(4){animation-delay:.12s}.user-row:nth-child(5){animation-delay:.15s}.user-row:nth-child(6){animation-delay:.18s}.user-row:nth-child(n+7){animation-delay:.2s}.user-row:active{background:var(--accent-soft);transform:scale(.985)}.settings-body{padding:4px 0 calc(28px + var(--safe-bottom));flex:1;overflow-y:auto}.settings-section{padding:6px 16px 14px}.settings-section h2{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);animation:row-in .36s var(--ease-out) both;margin:10px 4px 8px;font-size:.78rem;font-weight:700}.settings-card{background:color-mix(in srgb, var(--bg-elevated) 88%, var(--bg-muted));border:1px solid color-mix(in srgb, var(--border) 55%, transparent);animation:card-in .42s var(--ease-out) both;transition:transform var(--motion-fast) var(--ease-spring), box-shadow var(--motion) ease, border-color var(--motion) ease;border-radius:16px;overflow:hidden;box-shadow:inset 0 1px #ffffff0a}.settings-section:first-child .settings-card{animation-delay:40ms}.settings-section:nth-child(2) .settings-card{animation-delay:80ms}.settings-section:nth-child(3) .settings-card{animation-delay:.12s}.settings-section:nth-child(4) .settings-card{animation-delay:.16s}.settings-section:nth-child(5) .settings-card{animation-delay:.2s}.settings-section:nth-child(n+6) .settings-card{animation-delay:.24s}@keyframes card-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.settings-card.soft{background:color-mix(in srgb, var(--bg-muted) 55%, transparent);border-color:color-mix(in srgb, var(--border) 42%, transparent);box-shadow:none}.settings-card.pad{padding:16px}.settings-row{min-height:54px;transition:background-color var(--motion) var(--ease-soft), transform var(--motion-fast) var(--ease-spring);justify-content:space-between;align-items:center;gap:12px;padding:13px 14px;display:flex}.settings-row.link-row:hover,.settings-row.link-row:active{background:color-mix(in srgb, var(--accent-soft) 70%, transparent)}.settings-row.link-row:active{transform:scale(.985)}.settings-row+.settings-row{border-top:1px solid color-mix(in srgb, var(--border) 55%, transparent)}.settings-row .label{letter-spacing:-.01em;font-weight:600}.settings-row .value{color:var(--text-muted);font-size:.9rem}.theme-pills{background:color-mix(in srgb, var(--bg) 55%, var(--bg-muted));border:1px solid color-mix(in srgb, var(--border) 50%, transparent);border-radius:12px;gap:4px;padding:4px;display:flex}.theme-pill{color:var(--text-muted);transition:background-color var(--motion) var(--ease-soft), color var(--motion) ease, transform .18s var(--ease-spring), box-shadow var(--motion) ease;background:0 0;border:none;border-radius:9px;flex:1;padding:9px 10px;font-size:.84rem;font-weight:650}.theme-pill:active{transform:scale(.96)}.theme-pill.active{background:var(--accent);color:#fff;box-shadow:0 4px 14px color-mix(in srgb, var(--accent) 28%, transparent);animation:chip-pop .24s var(--ease-spring)}.stacked-pills{flex-direction:column}.stacked-pills .theme-pill{text-align:left;flex:none;width:100%;padding-left:12px}.ok-dot{color:var(--accent);font-size:.7rem;line-height:1}.chat-topbar{gap:6px}.chat-topbar .peer-link,.chat-topbar .channel-head{min-width:0;color:inherit;transition:background-color var(--motion) ease, transform var(--motion-fast) var(--ease-spring);animation:peer-in .36s var(--ease-out) both;border-radius:14px;flex:1;align-items:center;gap:10px;margin-left:-2px;padding:4px 8px 4px 4px;text-decoration:none;display:flex}.chat-topbar .peer-link:hover,.chat-topbar .peer-link:focus-visible{background:color-mix(in srgb, var(--bg-muted) 70%, transparent)}.chat-topbar .peer-link:active{background:var(--accent-soft);transform:scale(.98)}@keyframes peer-in{0%{opacity:0;transform:translate(6px)}to{opacity:1;transform:translate(0)}}.peer-meta{flex:1;min-width:0}.peer-meta h1,.peer-title{letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;transition:color var(--motion) ease;margin:0;font-size:1.02rem;font-weight:650;line-height:1.2;overflow:hidden}.peer-status{color:var(--text-muted);min-height:1.1em;transition:color var(--motion) ease, opacity var(--motion) ease;animation:status-fade .32s var(--ease-out) both;align-items:center;gap:5px;margin-top:1px;font-size:.75rem;display:inline-flex}@keyframes status-fade{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.peer-status.online{color:var(--accent)}.online-dot{background:var(--accent);width:6px;height:6px;box-shadow:0 0 0 0 var(--accent);border-radius:50%;flex-shrink:0;animation:1.8s infinite online-pulse}@keyframes online-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 45%, transparent)}70%{box-shadow:0 0 0 6px #0000}to{box-shadow:0 0 #0000}}.typing-label{margin-right:2px}.typing-dots{align-items:center;gap:3px;display:inline-flex}.typing-dots i{background:currentColor;border-radius:50%;width:4px;height:4px;animation:1s infinite typing-bounce;display:block}.typing-dots i:nth-child(2){animation-delay:.15s}.typing-dots i:nth-child(3){animation-delay:.3s}@keyframes typing-bounce{0%,60%,to{opacity:.45;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.reply-quote{background:color-mix(in srgb, var(--text) 6%, transparent);text-align:left;width:100%;color:var(--text-muted);border:none;border-radius:8px;align-items:stretch;gap:8px;margin-bottom:6px;padding:6px 8px;font-size:.82rem;display:flex}.reply-bar{background:var(--accent);border-radius:2px;flex-shrink:0;width:3px}.reaction-chips{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.reaction-chip{border:1px solid var(--border);background:var(--bg-elevated);color:var(--text);animation:chip-pop .28s var(--ease-spring) both;border-radius:999px;padding:2px 8px;font-size:.78rem}@keyframes chip-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.reaction-chip.me{border-color:var(--accent);background:var(--accent-soft)}.bubble.deleted .deleted-body{color:var(--text-muted);font-style:italic}.bubble .time{justify-content:flex-end;align-items:center;gap:4px;width:100%;display:inline-flex}.bubble .edited{opacity:.75;margin-right:2px}.receipt{color:var(--text-muted);opacity:.85;display:inline-flex}.receipt.read{color:var(--accent)}.receipt.pending{opacity:.45}.receipt.failed{color:#e24b4b;opacity:1;font-weight:700}.bubble.failed{outline:1px solid #e24b4b8c}.bubble.selecting .body{-webkit-user-select:text;user-select:text}.retry-chip{border:1px solid color-mix(in srgb, #e24b4b 40%, var(--border));color:#e24b4b;background:#e24b4b1f;border-radius:999px;align-items:center;margin-top:6px;padding:4px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.menu-backdrop{z-index:250;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:#0000006b;animation:.16s both backdrop-in;position:fixed;inset:0}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}.msg-sheet{left:50%;bottom:calc(84px + env(safe-area-inset-bottom,0px));z-index:300;width:min(340px,100% - 32px);animation:sheet-up .28s var(--ease-out) both;pointer-events:auto;flex-direction:column;gap:10px;display:flex;position:fixed;transform:translate(-50%)}.react-bar{background:var(--bg-elevated);border:1px solid var(--border);border-radius:999px;justify-content:space-around;gap:4px;padding:10px 12px;display:flex;box-shadow:0 8px 28px #00000029}.react-bar button{transition:transform .18s var(--ease-spring);background:0 0;border:none;border-radius:10px;padding:4px 6px;font-size:1.45rem}.react-bar button:hover{transform:scale(1.15)translateY(-2px)}.react-bar button:active{transform:scale(1.22)}.msg-menu{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden;box-shadow:0 8px 32px #0000002e}@keyframes sheet-up{0%{opacity:0;filter:blur(4px);transform:translate(-50%)translateY(28px)scale(.94)}to{opacity:1;filter:none;transform:translate(-50%)translateY(0)scale(1)}}.msg-confirm-text{color:var(--text-muted);margin:0;padding:14px 16px 6px;font-size:.92rem}.swipe-reply-hint{color:var(--accent);background:color-mix(in srgb, var(--accent) 14%, transparent);opacity:0;pointer-events:none;z-index:0;border-radius:50%;place-items:center;width:30px;height:30px;display:grid;position:absolute;top:50%;left:8px;transform:translateY(-50%)scale(.7)}.composer-banner{color:var(--text-muted);background:color-mix(in srgb, var(--bg-elevated) 88%, transparent);-webkit-backdrop-filter:blur(14px)saturate(1.2);border:1px solid color-mix(in srgb, var(--border) 70%, transparent);box-sizing:border-box;border-radius:14px;align-items:center;gap:10px;min-height:44px;margin:8px 10px 0;padding:8px 10px;font-size:.85rem;display:flex}.composer-banner-bar{background:var(--accent);border-radius:2px;flex-shrink:0;align-self:stretch;width:3px;min-height:24px}.composer-banner-text{flex-direction:column;flex:1;justify-content:center;gap:1px;min-width:0;display:flex}.composer-banner-text strong{color:var(--accent);font-size:.78rem;line-height:1.2}.composer-banner-text span{text-overflow:ellipsis;white-space:nowrap;line-height:1.25;overflow:hidden}.composer-banner.edit{color:var(--text-muted)}.composer-banner.edit .composer-banner-bar{background:color-mix(in srgb, var(--accent) 55%, var(--text-muted))}.composer-banner .icon-btn{flex-shrink:0}.recording-bar{color:var(--danger);animation:banner-slide .28s var(--ease-out) both;transition:color var(--motion) ease;align-items:center;gap:8px;padding:10px 14px 0;font-size:.9rem;font-weight:600;display:flex}.recording-bar.cancel{color:var(--text-muted)}.recording-bar.cancel .rec-dot{background:var(--text-muted)}.recording-bar.locked{color:var(--accent)}.recording-bar.locked .rec-dot{background:var(--accent)}.rec-time{font-variant-numeric:tabular-nums;min-width:36px}.rec-wave{flex:1;align-items:center;gap:1.5px;min-width:48px;max-width:120px;height:22px;display:flex}.rec-wave span{opacity:.75;min-height:14%;transition:height 80ms var(--ease-soft);animation:1.1s ease-in-out infinite wave-breathe;animation-delay:calc(var(--i,0) * 40ms);background:currentColor;border-radius:1px;flex:1}@keyframes wave-breathe{0%,to{opacity:.55}50%{opacity:1}}.rec-hint{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;transition:color var(--motion) ease, opacity var(--motion) ease;flex:1;font-size:.82rem;font-weight:550;overflow:hidden}.rec-dot{background:var(--danger);width:8px;height:8px;box-shadow:0 0 0 0 color-mix(in srgb, var(--danger) 45%, transparent);border-radius:50%;animation:1s infinite pulse}.rec-cancel{background:var(--bg-muted);color:var(--text-muted);width:34px;height:34px;transition:transform var(--motion-fast) var(--ease-spring), background-color var(--motion) ease;animation:chip-pop .28s var(--ease-spring) both;border:none;border-radius:50%;margin-left:auto;font-size:.95rem;font-weight:700}.rec-cancel:active{transform:scale(.92)}.rec-send{background:var(--accent);color:#fff;width:34px;height:34px;transition:transform var(--motion-fast) var(--ease-spring);animation:chip-pop .32s var(--ease-spring) both;border:none;border-radius:50%;place-items:center;display:grid}.rec-send:active{transform:scale(.92)}@keyframes pulse{0%{opacity:1;box-shadow:0 0 0 0 color-mix(in srgb, currentColor 40%, transparent)}70%{opacity:.55;box-shadow:0 0 0 8px #0000}to{opacity:1;box-shadow:0 0 #0000}}.composer .send.recording{background:var(--danger);animation:mic-pulse 1.2s var(--ease-soft) infinite}@keyframes mic-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--danger) 35%, transparent);transform:scale(1)}50%{transform:scale(1.06);box-shadow:0 0 0 10px #0000}}.composer .send.cancel-armed{background:var(--text-muted);animation:none}.pull-indicator{color:var(--text-muted);transition:height .12s var(--ease-soft);justify-content:center;align-items:center;gap:8px;font-size:.78rem;font-weight:600;display:flex;overflow:hidden}.pull-spinner{border:2px solid color-mix(in srgb, var(--accent) 25%, transparent);border-top-color:var(--accent);opacity:0;width:14px;height:14px;transition:opacity var(--motion-fast) ease, transform var(--motion-fast) var(--ease-spring);border-radius:50%;transform:scale(.6)}.pull-spinner.spin{opacity:1;animation:.7s linear infinite spin-loader;transform:scale(1)}@keyframes spin-loader{to{transform:rotate(360deg)}}.pull-indicator .spin{animation:none}.install-section{animation:empty-rise .48s var(--ease-out) both}.install-tip{background:linear-gradient(145deg, color-mix(in srgb, var(--accent-soft) 80%, var(--bg-muted)), color-mix(in srgb, var(--bg-elevated) 70%, var(--bg-muted)));border:1px solid color-mix(in srgb, var(--accent) 18%, var(--border));border-radius:16px;flex-direction:column;gap:12px;padding:16px;display:flex}.install-tip.installed{flex-direction:row;align-items:center;gap:10px;padding:12px 14px}.install-tip.installed p{color:var(--accent);margin:0;font-size:.9rem;font-weight:550}.install-ico{background:var(--accent-soft);width:40px;height:40px;color:var(--accent);animation:empty-icon-pop .56s var(--ease-spring) both;border-radius:12px;flex-shrink:0;place-items:center;display:grid}.install-copy{flex-direction:column;gap:4px;display:flex}.install-copy strong{letter-spacing:-.01em;font-size:.95rem}.install-copy p{color:var(--text-muted);margin:0;font-size:.86rem;line-height:1.4}.install-dismiss{align-self:flex-start;min-height:40px;padding:0 14px}.preview-ico{vertical-align:-2px;color:var(--accent);margin-right:4px;display:inline-flex}.lightbox{z-index:80;touch-action:none;background:#060a0eeb;place-items:center;animation:.18s both backdrop-in;display:grid;position:fixed;inset:0}.lightbox-img{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;transform-origin:50%;will-change:transform;touch-action:none;max-width:min(100%,920px);max-height:min(88dvh,920px)}.lightbox-img.zoomed{cursor:grab}.lightbox-close{top:calc(10px + var(--safe-top));z-index:2;color:#fff;background:#ffffff1a;position:absolute;right:10px}.lightbox-nav{z-index:2;color:#fff;background:#ffffff1a;width:44px;height:44px;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav.prev{left:8px}.lightbox-nav.next{right:8px}.lightbox-count{bottom:calc(16px + var(--safe-bottom));color:#fffc;font-size:.85rem;font-weight:600;position:absolute;left:50%;transform:translate(-50%)}.voice-player{align-items:center;gap:8px;min-width:180px;margin-bottom:4px;display:flex}.voice-btn{background:var(--accent);color:#fff;border:none;border-radius:50%;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.voice-wave{cursor:pointer;touch-action:none;flex:1;min-width:0}.voice-bars{align-items:flex-end;gap:2px;height:22px;display:flex}.voice-bars span{background:color-mix(in srgb, var(--text) 25%, transparent);border-radius:1px;flex:1;min-height:20%;transition:background-color .12s}.voice-bars span.active{background:var(--accent)}.voice-time{color:var(--text-muted);font-size:.7rem}.link-card{border:1px solid color-mix(in srgb, var(--border) 80%, transparent);background:color-mix(in srgb, var(--text) 4%, transparent);color:inherit;transition:transform var(--motion-fast) var(--ease-spring), border-color var(--motion) ease, box-shadow var(--motion) ease;border-radius:10px;flex-direction:column;margin-top:6px;text-decoration:none;display:flex;overflow:hidden}.link-card:active{transform:scale(.98)}.link-card-img{object-fit:cover;width:100%;max-height:120px}.link-card-body{flex-direction:column;gap:2px;padding:8px 10px;display:flex}.link-card-body strong{font-size:.88rem}.link-card-body p{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.78rem;display:-webkit-box;overflow:hidden}.link-card-url{color:var(--accent);font-size:.72rem}.unread-badge.quiet{background:var(--text-muted)}.pin-icon{vertical-align:middle;color:var(--accent);margin-right:4px;display:inline-flex}.auth-card .brand-title{animation:brand-in .48s var(--ease) both}.btn-danger-outline{color:var(--danger);border:1px solid color-mix(in srgb, var(--danger) 40%, var(--border));background:0 0}.btn-danger-outline:hover{background:color-mix(in srgb, var(--danger) 10%, transparent);box-shadow:none}.settings-nav-row{gap:12px}.settings-nav-icon{background:color-mix(in srgb, var(--accent-soft) 85%, var(--bg-muted));width:36px;height:36px;color:var(--accent);transition:transform var(--motion-fast) var(--ease-spring), background-color var(--motion) ease;border-radius:11px;flex-shrink:0;place-items:center;display:grid}.settings-nav-chevron{color:color-mix(in srgb, var(--text-muted) 80%, transparent);opacity:.85;transition:transform var(--motion-fast) var(--ease-spring), opacity var(--motion) ease;place-items:center;margin-left:auto;display:grid}.settings-row.link-row:active .settings-nav-icon{transform:scale(.92)}.settings-row.link-row:active .settings-nav-chevron{opacity:1;transform:translate(3px)}.toggle-row{cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-copy{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.toggle-copy .hint,.blocked-meta .hint,.settings-row .hint{color:var(--text-muted);font-size:.78rem;font-weight:450;line-height:1.35}.switch{appearance:none;background:color-mix(in srgb, var(--text-muted) 28%, var(--bg-muted));cursor:pointer;width:48px;height:30px;transition:background-color var(--motion) var(--ease-soft), transform var(--motion-fast) var(--ease-spring);border:none;border-radius:999px;flex-shrink:0;position:relative}.switch:after{content:"";width:24px;height:24px;transition:transform .22s var(--ease-spring);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 4px #0000002e}.switch:checked{background:var(--accent)}.switch:checked:after{transform:translate(18px)}.switch:active{transform:scale(.96)}.accent-grid{flex-wrap:wrap;gap:10px;display:flex}.accent-swatch{cursor:pointer;width:40px;height:40px;transition:transform var(--motion-fast) var(--ease-spring), box-shadow var(--motion) ease, border-color var(--motion) ease;border:2px solid #0000;border-radius:50%}.accent-swatch:hover{transform:scale(1.08)}.accent-swatch.active{border-color:var(--text);box-shadow:0 0 0 3px var(--accent-soft)}.settings-section-hint{color:var(--text-muted);margin:-2px 4px 12px;padding:0;font-size:.84rem;line-height:1.4}.blocked-row{gap:10px}.blocked-user{min-width:0;color:inherit;flex:1;align-items:center;gap:12px;text-decoration:none;display:flex}.blocked-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.blocked-meta .label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.invite-body{flex-direction:column;align-items:center;gap:18px;padding-top:12px;display:flex}.invite-lead{text-align:center;color:var(--text-muted);max-width:28rem;margin:0;padding:0 12px;font-size:.92rem;line-height:1.45}.invite-qr{object-fit:contain;background:#fff;border-radius:20px;width:220px;height:220px;padding:10px;box-shadow:0 10px 30px #0000001a}.invite-qr-placeholder{background:color-mix(in srgb, var(--bg-muted) 80%, transparent);width:220px;height:220px;color:var(--text-muted);border:1px dashed color-mix(in srgb, var(--border) 70%, transparent);border-radius:20px;place-items:center;display:grid}.invite-url{background:color-mix(in srgb, var(--bg-muted) 70%, transparent);border:1px solid color-mix(in srgb, var(--border) 50%, transparent);word-break:break-all;text-align:center;width:100%;max-width:28rem;color:var(--text);border-radius:12px;margin:0;padding:12px 14px;font-size:.84rem;display:block}.invite-copy-btn{min-width:160px}.settings-form-stack{flex-direction:column;gap:12px;display:flex}.settings-form-actions{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.settings-form-actions .btn{flex:1;min-width:120px}.session-row{align-items:flex-start}.session-row .btn-ghost{min-height:36px;padding:0 10px;font-size:.84rem}.session-logout-others .label{text-align:center;width:100%;font-weight:650}.recovery-code-list{gap:6px;margin:0;padding:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9rem;list-style:none;display:grid}.recovery-code-list code{background:color-mix(in srgb, var(--bg) 70%, var(--border));border-radius:10px;padding:8px 12px;display:block}.danger-card{border-color:color-mix(in srgb, var(--danger) 28%, var(--border));background:color-mix(in srgb, var(--danger) 5%, var(--bg-elevated))}.look-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.look-card{border:2px solid var(--border);background:var(--bg-elevated);cursor:pointer;text-align:left;color:inherit;appearance:none;width:100%;min-width:0;transition:border-color var(--motion) ease, transform var(--motion-fast) var(--ease-spring), box-shadow var(--motion) ease;border-radius:14px;flex-direction:column;align-items:stretch;gap:8px;padding:0;display:flex;overflow:hidden}.look-card:hover{transform:translateY(-2px)}.look-card.active{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.look-card-preview{flex-shrink:0;width:100%;height:88px;display:block;position:relative;overflow:hidden}.look-card-topbar{background:color-mix(in srgb, var(--preview-elevated,#fff) 88%, var(--preview-accent,var(--accent)));border-bottom:1px solid color-mix(in srgb, var(--preview-border,#ccc) 70%, transparent);width:100%;height:18px;display:block}.look-card-chat{box-sizing:border-box;background-color:var(--preview-chat,#cfdce6);background-image:var(--chat-wallpaper-glow,none), var(--chat-wallpaper-pattern);background-size:var(--chat-wallpaper-size,100% 100%, 12px 12px);flex-direction:column;gap:6px;width:100%;height:calc(100% - 18px);padding:10px 8px;display:flex}.look-bubble{border-radius:8px;max-width:72%;height:14px;display:block;box-shadow:0 1px 2px #10182014}.look-bubble.them{background:var(--preview-them,#e8f2ef);border:1px solid color-mix(in srgb, var(--preview-accent,var(--accent)) 18%, transparent);align-self:flex-start;width:58%}.look-bubble.me{background:var(--preview-me,#b4ddcf);align-self:flex-end;width:48%}.look-card-label{letter-spacing:-.01em;padding:0 10px 10px;font-size:.85rem;font-weight:650}.wallpaper-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.wallpaper-card{border:2px solid var(--border);background:var(--bg-elevated);cursor:pointer;color:inherit;appearance:none;width:100%;min-width:0;transition:border-color var(--motion) ease, transform var(--motion-fast) var(--ease-spring), box-shadow var(--motion) ease;border-radius:14px;flex-direction:column;align-items:stretch;gap:8px;padding:0;display:flex;overflow:hidden}.wallpaper-card:hover{transform:translateY(-2px)}.wallpaper-card.active{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.wallpaper-sample{background-color:var(--preview-chat,var(--bg-chat));background-image:var(--chat-wallpaper-glow), var(--chat-wallpaper-pattern);background-size:var(--chat-wallpaper-size);width:100%;height:72px;display:block}.wallpaper-label{padding:0 10px 10px;font-size:.82rem;font-weight:600}[data-look-preview=qix]{--preview-chat:#b9cdd9;--preview-me:#7fc4b0;--preview-them:#e4f3ef;--preview-elevated:#eef6f4;--preview-border:#b7c9c4;--preview-accent:#1a7a6d;--accent:#1a7a6d;--chat-dot:#10322c24;--chat-glow:#1a7a6d2e;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%)}[data-look-preview=lagoon]{--preview-chat:#a9c7db;--preview-me:#6fafd0;--preview-them:#e2f1f8;--preview-elevated:#eef6fb;--preview-border:#aec4d4;--preview-accent:#1a6f9a;--accent:#1a6f9a;--chat-dot:#143c5a24;--chat-glow:#1a6f9a2e;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%)}[data-look-preview=meadow]{--preview-chat:#b8cfa8;--preview-me:#84b86e;--preview-them:#e7f3df;--preview-elevated:#f1f7ec;--preview-border:#b4c8a8;--preview-accent:#3d6b3a;--accent:#3d6b3a;--chat-dot:#1e3c1424;--chat-glow:#3d6b3a2e;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%)}[data-look-preview=ember]{--preview-chat:#dfc09a;--preview-me:#d4a05a;--preview-them:#f8ebda;--preview-elevated:#faf3ea;--preview-border:#d4bda0;--preview-accent:#b86a1a;--accent:#b86a1a;--chat-dot:#5a2d0a24;--chat-glow:#b86a1a2e;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%)}[data-look-preview=graphite]{--preview-chat:#aebac6;--preview-me:#7f93a6;--preview-them:#e6edf3;--preview-elevated:#eef2f6;--preview-border:#b0bbc6;--preview-accent:#4a5d6e;--accent:#4a5d6e;--chat-dot:#14233224;--chat-glow:#4a5d6e29;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%)}[data-look-preview=ink]{--preview-chat:#23232c;--preview-me:#4a4a5c;--preview-them:#16161c;--preview-elevated:#1c1c24;--preview-border:#3a3a46;--preview-accent:#c8c8d8;--accent:#c8c8d8;--chat-dot:#ffffff1a;--chat-glow:#c8c8d81f;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%);color:#e8e8f0}[data-look-preview=dusk]{--preview-chat:#c4b6d8;--preview-me:#9a84c0;--preview-them:#eee6f8;--preview-elevated:#f4eefc;--preview-border:#c4b8d4;--preview-accent:#5b4a7a;--accent:#5b4a7a;--chat-dot:#321e5024;--chat-glow:#5b4a7a2e;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%)}[data-look-preview=coral]{--preview-chat:#e0b6ac;--preview-me:#d88874;--preview-them:#fbe9e4;--preview-elevated:#fcf2ef;--preview-border:#d8b8b0;--preview-accent:#c45c4a;--accent:#c45c4a;--chat-dot:#64281e24;--chat-glow:#c45c4a2e;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%)}[data-look-preview=frost]{--preview-chat:#b4cddc;--preview-me:#7eafc6;--preview-them:#e6f3f8;--preview-elevated:#eef6fa;--preview-border:#b4c8d4;--preview-accent:#5a8aa8;--accent:#5a8aa8;--chat-dot:#1e465f24;--chat-glow:#5a8aa82e;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%)}[data-look-preview=sand]{--preview-chat:#d4c3a0;--preview-me:#c0a46e;--preview-them:#f5ecdc;--preview-elevated:#f8f2e8;--preview-border:#d0c0a4;--preview-accent:#9a7b56;--accent:#9a7b56;--chat-dot:#50371e24;--chat-glow:#9a7b562e;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%)}[data-look=qix]{--accent:#1a7a6d;--accent-hover:#146258;--accent-soft:#1a7a6d1f;--badge:#1a7a6d;--bg-bubble-me:#b4ddcf;--bg-chat:#cfdce6;--chat-glow:#1a7a6d1a;--auth-glow:#1a7a6d38}[data-theme=dark][data-look=qix]{--accent:#3dbaa8;--accent-hover:#52cbb9;--accent-soft:#3dbaa824;--badge:#3dbaa8;--bg-bubble-me:#1a564c;--bg-chat:#0b1218;--chat-glow:#3dbaa814;--auth-glow:#3dbaa82e}[data-look=lagoon]{--bg:#e6eef4;--bg-elevated:#f7fafc;--bg-muted:#e8f0f6;--bg-chat:#c5d8e8;--bg-bubble-me:#a8cce0;--bg-bubble-them:#fff;--border:#c5d4e0;--accent:#1a6f9a;--accent-hover:#155a7d;--accent-soft:#1a6f9a24;--badge:#1a6f9a;--chat-glow:#1a6f9a1f;--chat-dot:#1432500e;--auth-glow:#1a6f9a38}[data-theme=dark][data-look=lagoon]{--bg:#0a1016;--bg-elevated:#101820;--bg-muted:#162028;--bg-chat:#0a141c;--bg-bubble-me:#1a4560;--bg-bubble-them:#152028;--border:#243040;--accent:#4db0e0;--accent-hover:#6bc0e8;--accent-soft:#4db0e029;--badge:#4db0e0;--chat-glow:#4db0e01a;--chat-dot:#ffffff0a;--auth-glow:#4db0e02e}[data-look=meadow]{--bg:#e8eee4;--bg-elevated:#f7faf5;--bg-muted:#e6eee0;--bg-chat:#d2e0c8;--bg-bubble-me:#b8d4a8;--bg-bubble-them:#fff;--border:#c8d4bc;--accent:#3d6b3a;--accent-hover:#31572f;--accent-soft:#3d6b3a24;--badge:#3d6b3a;--chat-glow:#3d6b3a1f;--chat-dot:#1e32140e;--auth-glow:#3d6b3a38}[data-theme=dark][data-look=meadow]{--bg:#0c120c;--bg-elevated:#121a12;--bg-muted:#1a2418;--bg-chat:#0c140c;--bg-bubble-me:#2a4a28;--bg-bubble-them:#1a2418;--border:#2a3828;--accent:#7cbc6e;--accent-hover:#93cc86;--accent-soft:#7cbc6e29;--badge:#7cbc6e;--chat-glow:#7cbc6e1a;--chat-dot:#ffffff0a;--auth-glow:#7cbc6e2e}[data-look=ember]{--bg:#f0e8e0;--bg-elevated:#fffaf5;--bg-muted:#f2e8dc;--bg-chat:#e8d5c0;--bg-bubble-me:#e0c090;--bg-bubble-them:#fff8f0;--border:#e0d0bc;--text:#1a1210;--accent:#b86a1a;--accent-hover:#965516;--accent-soft:#b86a1a24;--badge:#b86a1a;--chat-glow:#b86a1a1f;--chat-dot:#50280a0e;--auth-glow:#b86a1a38}[data-theme=dark][data-look=ember]{--bg:#120e0a;--bg-elevated:#1a1410;--bg-muted:#241c14;--bg-chat:#14100c;--bg-bubble-me:#5a3a18;--bg-bubble-them:#221a12;--border:#3a2e22;--text:#f0e8e0;--text-muted:#a89888;--accent:#e0a04a;--accent-hover:#ecc06e;--accent-soft:#e0a04a29;--badge:#e0a04a;--chat-glow:#e0a04a1a;--chat-dot:#ffdcb40a;--auth-glow:#e0a04a2e}[data-look=graphite]{--bg:#e6eaee;--bg-elevated:#f6f8fa;--bg-muted:#e8ecf0;--bg-chat:#c8d0d8;--bg-bubble-me:#b0bcc8;--bg-bubble-them:#fff;--border:#c0c8d0;--accent:#4a5d6e;--accent-hover:#3a4a58;--accent-soft:#4a5d6e24;--badge:#4a5d6e;--chat-glow:#4a5d6e1a;--chat-dot:#141e280e;--auth-glow:#4a5d6e33}[data-theme=dark][data-look=graphite]{--bg:#0c1014;--bg-elevated:#141a20;--bg-muted:#1c242c;--bg-chat:#0e1418;--bg-bubble-me:#2a3540;--bg-bubble-them:#1a2228;--border:#2a343e;--accent:#8aa0b4;--accent-hover:#a0b4c4;--accent-soft:#8aa0b429;--badge:#8aa0b4;--chat-glow:#8aa0b414;--chat-dot:#ffffff09;--auth-glow:#8aa0b429}[data-look=ink]{--bg:#e8e8ec;--bg-elevated:#f4f4f8;--bg-muted:#ececf0;--bg-chat:#d0d0d8;--bg-bubble-me:#3a3a48;--bg-bubble-them:#fff;--border:#c8c8d0;--accent:#2a2a36;--accent-hover:#1c1c24;--accent-soft:#2a2a361f;--badge:#2a2a36;--chat-glow:#2a2a3614;--chat-dot:#14141e0f;--auth-glow:#2a2a362e}[data-theme=dark][data-look=ink]{--bg:#0a0a0c;--bg-elevated:#121216;--bg-muted:#1a1a20;--bg-chat:#0c0c10;--bg-bubble-me:#3a3a48;--bg-bubble-them:#1e1e26;--border:#2a2a34;--text:#ececf2;--text-muted:#9898a8;--accent:#c8c8d8;--accent-hover:#e0e0ec;--accent-soft:#c8c8d824;--badge:#c8c8d8;--chat-glow:#c8c8d80f;--chat-dot:#ffffff0a;--auth-glow:#c8c8d824}[data-look=ink] .btn,[data-look=ink] .composer .send,[data-theme=light][data-look=ink] .unread-badge{color:#f4f4f8}[data-look=dusk]{--bg:#ece8f2;--bg-elevated:#faf8fc;--bg-muted:#ece8f4;--bg-chat:#d8d0e4;--bg-bubble-me:#c4b8d8;--bg-bubble-them:#fff;--border:#d0c8dc;--accent:#5b4a7a;--accent-hover:#4a3a66;--accent-soft:#5b4a7a24;--badge:#5b4a7a;--chat-glow:#5b4a7a1f;--chat-dot:#321e460e;--auth-glow:#5b4a7a33}[data-theme=dark][data-look=dusk]{--bg:#100e16;--bg-elevated:#18141f;--bg-muted:#221c2c;--bg-chat:#120e18;--bg-bubble-me:#3a3050;--bg-bubble-them:#1e1828;--border:#322a40;--accent:#a890c8;--accent-hover:#bca4d8;--accent-soft:#a890c829;--badge:#a890c8;--chat-glow:#a890c81a;--chat-dot:#ffffff0a;--auth-glow:#a890c829}[data-wallpaper=dots] .chat-view,[data-wallpaper=dots] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), radial-gradient(circle at 1px 1px, var(--chat-dot) 1px, transparent 0);background-size:100% 100%,18px 18px}[data-wallpaper=crosses] .chat-view,[data-wallpaper=crosses] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), linear-gradient(var(--chat-dot) 1.5px, transparent 1.5px), linear-gradient(90deg, var(--chat-dot) 1.5px, transparent 1.5px);background-position:0 0,0 7px,7px 0;background-size:100% 100%,16px 16px,16px 16px}[data-wallpaper=diagonals] .chat-view,[data-wallpaper=diagonals] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), repeating-linear-gradient(-42deg, transparent, transparent 7px, var(--chat-dot) 7px, var(--chat-dot) 8px);background-size:100% 100%,auto}[data-wallpaper=diamonds] .chat-view,[data-wallpaper=diamonds] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), linear-gradient(45deg, var(--chat-dot) 25%, transparent 25%), linear-gradient(-45deg, var(--chat-dot) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--chat-dot) 75%), linear-gradient(-45deg, transparent 75%, var(--chat-dot) 75%);background-position:0 0,0 0,0 8px,8px -8px,-8px 0;background-size:100% 100%,16px 16px,16px 16px,16px 16px,16px 16px}[data-wallpaper=ripples] .chat-view,[data-wallpaper=ripples] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), radial-gradient(circle, transparent 42%, var(--chat-dot) 43%, var(--chat-dot) 46%, transparent 47%);background-size:100% 100%,26px 26px}[data-wallpaper=grid] .chat-view,[data-wallpaper=grid] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), linear-gradient(var(--chat-dot) 1px, transparent 1px), linear-gradient(90deg, var(--chat-dot) 1px, transparent 1px);background-size:100% 100%,24px 24px,24px 24px}[data-wallpaper=bloom] .chat-view,[data-wallpaper=bloom] .wallpaper-sample{background-image:radial-gradient(ellipse 55% 45% at 18% 22%, var(--chat-glow), transparent 55%), radial-gradient(ellipse 50% 40% at 82% 78%, var(--chat-glow), transparent 50%), radial-gradient(ellipse 40% 35% at 60% 40%, color-mix(in srgb, var(--chat-glow) 55%, transparent), transparent 55%), radial-gradient(circle at 1px 1px, var(--chat-dot) 1px, transparent 0);background-size:100% 100%,100% 100%,100% 100%,18px 18px}[data-wallpaper=none] .chat-view,[data-wallpaper=none] .wallpaper-sample{background-image:none;background-color:var(--bg-chat)}.wallpaper-card[data-wallpaper-preview] .wallpaper-sample{background-color:var(--bg-chat)}.wallpaper-card[data-wallpaper-preview=dots] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), radial-gradient(circle at 1px 1px, var(--chat-dot) 1px, transparent 0);background-size:100% 100%,14px 14px}.wallpaper-card[data-wallpaper-preview=crosses] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), linear-gradient(var(--chat-dot) 1.5px, transparent 1.5px), linear-gradient(90deg, var(--chat-dot) 1.5px, transparent 1.5px);background-position:0 0,0 6px,6px 0;background-size:100% 100%,14px 14px,14px 14px}.wallpaper-card[data-wallpaper-preview=diagonals] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), repeating-linear-gradient(-45deg, transparent, transparent 5px, var(--chat-dot) 5px, var(--chat-dot) 6px);background-size:100% 100%,auto}.wallpaper-card[data-wallpaper-preview=diamonds] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), linear-gradient(45deg, var(--chat-dot) 25%, transparent 25%), linear-gradient(-45deg, var(--chat-dot) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--chat-dot) 75%), linear-gradient(-45deg, transparent 75%, var(--chat-dot) 75%);background-position:0 0,0 0,0 6px,6px -6px,-6px 0;background-size:100% 100%,12px 12px,12px 12px,12px 12px,12px 12px}.wallpaper-card[data-wallpaper-preview=ripples] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), radial-gradient(circle, transparent 40%, var(--chat-dot) 41%, var(--chat-dot) 44%, transparent 45%);background-size:100% 100%,20px 20px}.wallpaper-card[data-wallpaper-preview=grid] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), linear-gradient(var(--chat-dot) 1px, transparent 1px), linear-gradient(90deg, var(--chat-dot) 1px, transparent 1px);background-size:100% 100%,18px 18px,18px 18px}.wallpaper-card[data-wallpaper-preview=bloom] .wallpaper-sample{background-image:radial-gradient(ellipse 60% 50% at 20% 30%, var(--chat-glow), transparent 55%), radial-gradient(ellipse 50% 40% at 80% 70%, var(--chat-glow), transparent 50%), radial-gradient(circle at 1px 1px, var(--chat-dot) 1px, transparent 0);background-size:100% 100%,100% 100%,14px 14px}.wallpaper-card[data-wallpaper-preview=none] .wallpaper-sample{background-image:none}.appearance-body{padding-bottom:calc(28px + var(--safe-bottom))}.appearance-preview-section{padding-bottom:4px}.appearance-live{border:1px solid color-mix(in srgb, var(--border) 55%, transparent);background:var(--preview-elevated,var(--bg-elevated));transition:transform .22s var(--ease-spring), border-color var(--motion) ease;border-radius:18px;overflow:hidden;box-shadow:0 8px 28px #10182014}.appearance-live.flash{transform:scale(.985)}.appearance-live-bar{background:color-mix(in srgb, var(--preview-elevated,var(--bg-elevated)) 92%, transparent);border-bottom:1px solid color-mix(in srgb, var(--preview-border,var(--border)) 70%, transparent);align-items:center;gap:8px;padding:10px 12px;display:flex}.appearance-live-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:8px;height:8px}.appearance-live-title{letter-spacing:-.01em;font-size:.9rem;font-weight:700}.appearance-live-chat{background-color:var(--preview-chat,var(--bg-chat));flex-direction:column;gap:8px;min-height:132px;padding:14px 12px 16px;display:flex}.appearance-live-bubble{border-radius:14px;max-width:78%;padding:8px 11px;font-size:.82rem;line-height:1.3;box-shadow:0 1px 2px #1018200d}.appearance-live-bubble.them{background:var(--preview-them,var(--bg-bubble-them));border:1px solid color-mix(in srgb, var(--preview-accent,var(--accent)) 16%, transparent);color:var(--text);border-bottom-left-radius:4px;align-self:flex-start}.appearance-live-bubble.me{background:var(--preview-me,var(--bg-bubble-me));color:var(--text);border-bottom-right-radius:4px;align-self:flex-end}.appearance-live-bubble.short{max-width:42%}.appearance-live-meta{color:var(--text-muted);background:var(--preview-elevated,var(--bg-elevated));border-top:1px solid color-mix(in srgb, var(--preview-border,var(--border)) 60%, transparent);gap:6px;padding:8px 12px 10px;font-size:.72rem;font-weight:600;display:flex}.appearance-tabs-wrap{top:calc(var(--header-h) + var(--safe-top));z-index:5;background:color-mix(in srgb, var(--bg-elevated) 68%, transparent);-webkit-backdrop-filter:blur(22px)saturate(1.4);padding-top:4px;padding-bottom:0;position:sticky}.appearance-tabs{background:color-mix(in srgb, var(--bg-muted) 70%, transparent);border:1px solid color-mix(in srgb, var(--border) 45%, transparent);border-radius:14px;gap:4px;padding:4px;display:flex}.appearance-tab{color:var(--text-muted);min-height:38px;transition:background-color var(--motion) ease, color var(--motion) ease, transform .14s var(--ease-spring);background:0 0;border:none;border-radius:11px;flex:1;font-size:.85rem;font-weight:650}.appearance-tab.active{background:var(--bg-elevated);color:var(--text);box-shadow:0 1px 3px #10182014}.appearance-tab:active{transform:scale(.97)}.look-rail,.wallpaper-rail{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:12px;padding:4px 2px 12px;display:flex;overflow-x:auto}.look-rail::-webkit-scrollbar{display:none}.wallpaper-rail::-webkit-scrollbar{display:none}.look-card-rail,.wallpaper-card-rail{scroll-snap-align:start;flex:0 0 148px;width:148px;min-width:148px;max-width:148px}.look-card-rail .look-card-preview{width:100%;height:110px}.wallpaper-card-rail .wallpaper-sample{width:100%;height:96px;position:relative}.look-check{background:var(--accent);color:#fff;width:24px;height:24px;animation:chip-pop .28s var(--ease-spring) both;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:8px;right:8px;box-shadow:0 2px 8px #0000002e}.look-swatch{width:100%;height:4px;margin-top:-4px;display:block}.look-card-rail .look-card-label,.wallpaper-card-rail .wallpaper-label{padding-top:4px}.appearance-live-chat{background-image:inherit}[data-wallpaper-preview=dots] .look-card-chat,[data-wallpaper-preview=dots] .appearance-live-chat,[data-wallpaper=dots] .appearance-live-chat{background-image:radial-gradient(circle at 1px 1px, var(--chat-dot) 1px, transparent 0);background-size:14px 14px}[data-wallpaper-preview=crosses] .look-card-chat,[data-wallpaper-preview=crosses] .appearance-live-chat,[data-wallpaper=crosses] .appearance-live-chat{background-image:linear-gradient(var(--chat-dot) 1.5px, transparent 1.5px), linear-gradient(90deg, var(--chat-dot) 1.5px, transparent 1.5px);background-position:0 6px,6px 0;background-size:14px 14px,14px 14px}[data-wallpaper-preview=diagonals] .look-card-chat,[data-wallpaper-preview=diagonals] .appearance-live-chat,[data-wallpaper=diagonals] .appearance-live-chat{background-image:repeating-linear-gradient(-45deg, transparent, transparent 5px, var(--chat-dot) 5px, var(--chat-dot) 6px)}[data-wallpaper-preview=diamonds] .look-card-chat,[data-wallpaper-preview=diamonds] .appearance-live-chat,[data-wallpaper=diamonds] .appearance-live-chat{background-image:linear-gradient(45deg, var(--chat-dot) 25%, transparent 25%), linear-gradient(-45deg, var(--chat-dot) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--chat-dot) 75%), linear-gradient(-45deg, transparent 75%, var(--chat-dot) 75%);background-position:0 0,0 6px,6px -6px,-6px 0;background-size:12px 12px,12px 12px,12px 12px,12px 12px}[data-wallpaper-preview=ripples] .look-card-chat,[data-wallpaper-preview=ripples] .appearance-live-chat,[data-wallpaper=ripples] .appearance-live-chat{background-image:radial-gradient(circle, transparent 40%, var(--chat-dot) 41%, var(--chat-dot) 44%, transparent 45%);background-size:20px 20px}[data-wallpaper-preview=grid] .look-card-chat,[data-wallpaper-preview=grid] .appearance-live-chat,[data-wallpaper=grid] .appearance-live-chat{background-image:linear-gradient(var(--chat-dot) 1px, transparent 1px), linear-gradient(90deg, var(--chat-dot) 1px, transparent 1px);background-size:18px 18px,18px 18px}[data-wallpaper-preview=bloom] .look-card-chat,[data-wallpaper-preview=bloom] .appearance-live-chat,[data-wallpaper=bloom] .appearance-live-chat{background-image:radial-gradient(ellipse 60% 50% at 20% 30%, var(--chat-glow), transparent 55%), radial-gradient(ellipse 50% 40% at 80% 70%, var(--chat-glow), transparent 50%), radial-gradient(circle at 1px 1px, var(--chat-dot) 1px, transparent 0);background-size:100% 100%,100% 100%,14px 14px}[data-wallpaper-preview=chevrons] .look-card-chat,[data-wallpaper-preview=chevrons] .appearance-live-chat,[data-wallpaper-preview=chevrons] .wallpaper-sample,[data-wallpaper=chevrons] .chat-view,[data-wallpaper=chevrons] .appearance-live-chat{background-image:var(--chat-wallpaper-glow,none), repeating-linear-gradient(135deg, transparent, transparent 8px, var(--chat-dot) 8px, var(--chat-dot) 9px, transparent 9px, transparent 17px, var(--chat-dot) 17px, var(--chat-dot) 18px);background-size:100% 100%,28px 28px}[data-wallpaper-preview=stars] .look-card-chat,[data-wallpaper-preview=stars] .appearance-live-chat,[data-wallpaper-preview=stars] .wallpaper-sample,[data-wallpaper=stars] .chat-view,[data-wallpaper=stars] .appearance-live-chat{background-image:var(--chat-wallpaper-glow,none), radial-gradient(circle, var(--chat-dot) 1.2px, transparent 1.3px), radial-gradient(circle, var(--chat-dot) 1px, transparent 1.1px);background-position:0 0,0 0,11px 11px;background-size:100% 100%,22px 22px,11px 11px}[data-wallpaper-preview=weave] .look-card-chat,[data-wallpaper-preview=weave] .appearance-live-chat,[data-wallpaper-preview=weave] .wallpaper-sample,[data-wallpaper=weave] .chat-view,[data-wallpaper=weave] .appearance-live-chat{background-image:var(--chat-wallpaper-glow,none), repeating-linear-gradient(0deg, transparent, transparent 5px, var(--chat-dot) 5px, var(--chat-dot) 6px), repeating-linear-gradient(90deg, transparent, transparent 5px, var(--chat-dot) 5px, var(--chat-dot) 6px);background-size:100% 100%,auto,auto}[data-wallpaper-preview=mist] .look-card-chat,[data-wallpaper-preview=mist] .appearance-live-chat,[data-wallpaper-preview=mist] .wallpaper-sample,[data-wallpaper=mist] .chat-view,[data-wallpaper=mist] .appearance-live-chat{background-image:radial-gradient(ellipse 70% 55% at 15% 20%, var(--chat-glow), transparent 60%), radial-gradient(ellipse 55% 45% at 85% 75%, var(--chat-glow), transparent 55%), radial-gradient(ellipse 40% 35% at 50% 50%, color-mix(in srgb, var(--chat-glow) 50%, transparent), transparent 60%);background-size:100% 100%,100% 100%,100% 100%}[data-wallpaper-preview=none] .look-card-chat,[data-wallpaper-preview=none] .appearance-live-chat,[data-wallpaper=none] .appearance-live-chat{background-image:none}[data-wp-intensity=soft]{--chat-dot:color-mix(in srgb, var(--chat-dot-base,currentColor) 45%, transparent)}html{--chat-dot-base:var(--chat-dot)}[data-wp-intensity=soft] .chat-view,[data-wp-intensity=soft] .wallpaper-sample,[data-wp-intensity=soft] .look-card-chat,[data-wp-intensity=soft] .appearance-live-chat{opacity:1}[data-wp-intensity=soft]{--chat-glow:color-mix(in srgb, var(--chat-glow) 55%, transparent)}html[data-wp-intensity=soft]{--wp-alpha:.45}html[data-wp-intensity=normal]{--wp-alpha:1}html[data-wp-intensity=bold]{--wp-alpha:1.55}html[data-wp-intensity=soft] .chat-view,html[data-wp-intensity=soft] [data-wallpaper-preview] .wallpaper-sample,html[data-wp-intensity=soft] [data-wallpaper-preview] .look-card-chat,html[data-wp-intensity=soft] .appearance-live-chat{filter:none}html[data-wp-intensity=soft] .chat-view,html[data-wp-intensity=bold] .chat-view{background-blend-mode:normal, soft-light}html[data-wp-intensity=bold]{--chat-dot:color-mix(in srgb, var(--text) 14%, transparent);--chat-glow:color-mix(in srgb, var(--accent) 22%, transparent)}html[data-wp-intensity=soft]{--chat-dot:color-mix(in srgb, var(--text) 3.5%, transparent);--chat-glow:color-mix(in srgb, var(--accent) 6%, transparent)}html[data-theme=dark][data-wp-intensity=bold]{--chat-dot:#ffffff17;--chat-glow:color-mix(in srgb, var(--accent) 18%, transparent)}html[data-theme=dark][data-wp-intensity=soft]{--chat-dot:#ffffff05;--chat-glow:color-mix(in srgb, var(--accent) 5%, transparent)}[data-look=coral]{--bg:#f2e8e6;--bg-elevated:#fffaf8;--bg-muted:#f4eae6;--bg-chat:#ecd4ce;--bg-bubble-me:#e8b4a8;--bg-bubble-them:#fff8f6;--border:#e0ccc6;--accent:#c45c4a;--accent-hover:#a84a3c;--accent-soft:#c45c4a24;--badge:#c45c4a;--chat-glow:#c45c4a1f;--chat-dot:#5a281e0e;--auth-glow:#c45c4a33}[data-theme=dark][data-look=coral]{--bg:#140c0c;--bg-elevated:#1c1212;--bg-muted:#261818;--bg-chat:#160e0e;--bg-bubble-me:#5a3028;--bg-bubble-them:#241616;--border:#3a2824;--accent:#e88878;--accent-hover:#f0a098;--accent-soft:#e8887829;--badge:#e88878;--chat-glow:#e888781a;--chat-dot:#ffc8be0a;--auth-glow:#e8887829}[data-look=frost]{--bg:#e6eef4;--bg-elevated:#f5f9fc;--bg-muted:#e8f0f6;--bg-chat:#d0e0ea;--bg-bubble-me:#b4d0e0;--bg-bubble-them:#f7fbfd;--border:#c4d4e0;--accent:#5a8aa8;--accent-hover:#487288;--accent-soft:#5a8aa824;--badge:#5a8aa8;--chat-glow:#5a8aa81f;--chat-dot:#1e3c500e;--auth-glow:#5a8aa833}[data-theme=dark][data-look=frost]{--bg:#0a1014;--bg-elevated:#101820;--bg-muted:#162028;--bg-chat:#0c141a;--bg-bubble-me:#2a4558;--bg-bubble-them:#152028;--border:#243440;--accent:#7eb0c8;--accent-hover:#96c4d8;--accent-soft:#7eb0c829;--badge:#7eb0c8;--chat-glow:#7eb0c81a;--chat-dot:#ffffff0a;--auth-glow:#7eb0c829}[data-look=sand]{--bg:#efe8dc;--bg-elevated:#faf7f2;--bg-muted:#f0e8dc;--bg-chat:#e4d8c4;--bg-bubble-me:#d4c09a;--bg-bubble-them:#faf6f0;--border:#d8ccb8;--accent:#9a7b56;--accent-hover:#7e6344;--accent-soft:#9a7b5624;--badge:#9a7b56;--chat-glow:#9a7b561f;--chat-dot:#46321e0e;--auth-glow:#9a7b5633}[data-theme=dark][data-look=sand]{--bg:#12100c;--bg-elevated:#1a1610;--bg-muted:#241e16;--bg-chat:#14120c;--bg-bubble-me:#4a3c28;--bg-bubble-them:#221c14;--border:#3a3226;--accent:#c4a878;--accent-hover:#d4bc90;--accent-soft:#c4a87829;--badge:#c4a878;--chat-glow:#c4a8781a;--chat-dot:#ffe6be0a;--auth-glow:#c4a87829}html[data-reduce-motion="1"] *,html[data-reduce-motion="1"] :before,html[data-reduce-motion="1"] :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html[data-reduce-motion="1"] ::view-transition-old(root){animation:none!important}html[data-reduce-motion="1"] ::view-transition-new(root){animation:none!important}html[data-reduce-motion="1"] .chat-row.holding,html[data-reduce-motion="1"] .screen,html[data-reduce-motion="1"] .bubble-row,html[data-reduce-motion="1"] .chat-row-wrap,html[data-reduce-motion="1"] .brand-animate,html[data-reduce-motion="1"] .auth-card .brand-title,html[data-reduce-motion="1"] .empty-animate,html[data-reduce-motion="1"] .empty-icon,html[data-reduce-motion="1"] .msg-menu,html[data-reduce-motion="1"] .msg-sheet,html[data-reduce-motion="1"] .jump-latest,html[data-reduce-motion="1"] .menu-backdrop,html[data-reduce-motion="1"] .reaction-chip,html[data-reduce-motion="1"] .unread-badge.pop,html[data-reduce-motion="1"] .typing-dots i,html[data-reduce-motion="1"] .online-dot,html[data-reduce-motion="1"] .chat-view,html[data-reduce-motion="1"] .back-btn,html[data-reduce-motion="1"] .peer-link,html[data-reduce-motion="1"] .peer-status,html[data-reduce-motion="1"] .list-filter,html[data-reduce-motion="1"] .pull-spinner,html[data-reduce-motion="1"] .install-section,html[data-reduce-motion="1"] .composer .send.recording,html[data-reduce-motion="1"] .app-toast,html[data-reduce-motion="1"] .app-confirm-backdrop,html[data-reduce-motion="1"] .call-overlay,html[data-reduce-motion="1"] .call-avatar-wrap.pulse .call-ring,html[data-reduce-motion="1"] .call-btn.accept{animation:none!important}html[data-reduce-motion="1"] .icon-btn:active,html[data-reduce-motion="1"] .pressable:active,html[data-reduce-motion="1"] .chat-row:active,html[data-reduce-motion="1"] .user-row:active,html[data-reduce-motion="1"] .btn:active,html[data-reduce-motion="1"] .composer .send:active,html[data-reduce-motion="1"] .icon-btn:hover,html[data-reduce-motion="1"] .icon-btn:focus-visible{transform:none!important}.settings-row.link-row{color:inherit;text-decoration:none}button.settings-row{width:100%;font:inherit;color:inherit;text-align:left;cursor:pointer;appearance:none;background:0 0;border:none;border-radius:0}button.settings-row.link-row .label{color:var(--accent)}.profile-screen{position:relative}.profile-view{text-align:left;flex-direction:column;align-items:stretch;gap:8px;padding:32px 24px;display:flex}.profile-name{letter-spacing:-.02em;margin:12px 0 0;font-size:1.4rem}.profile-user{color:var(--text-muted);margin:0}.profile-bio{color:var(--text);max-width:360px;margin:12px 0 20px;line-height:1.4}.profile-page{flex:1;position:relative;overflow:auto}.profile-page .profile-banner{height:calc(168px + var(--header-h) + var(--safe-top));box-sizing:border-box}.profile-banner{background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 32%, var(--bg)), color-mix(in srgb, var(--bg-elevated) 78%, #1a2e2a));height:168px;animation:banner-reveal .52s var(--ease-out) both;margin:0;position:relative;overflow:hidden}.profile-banner-img{object-fit:cover;width:100%;height:100%;animation:banner-zoom .64s var(--ease-out) both;display:block;position:absolute;inset:0}.profile-banner-shade{pointer-events:none;background:linear-gradient(180deg, #00000061 0%, transparent 42%, color-mix(in srgb, var(--bg) 35%, transparent) 78%, var(--bg) 100%);position:absolute;inset:0}@keyframes banner-reveal{0%{opacity:0;transform-origin:top;transform:scaleY(.97)}to{opacity:1;transform:none}}@keyframes banner-zoom{0%{opacity:.85;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.profile-banner[data-banner=teal]{background:linear-gradient(135deg,#0f3d38,#1a7a6d 58%,#0b2a27)}.profile-banner[data-banner=charcoal]{background:linear-gradient(150deg,#1a1c1e,#2d3238 60%,#121416)}.profile-banner[data-banner=ember]{background:linear-gradient(140deg,#3a1d12,#c05621 60%,#2a140c)}.profile-banner[data-banner=ocean]{background:linear-gradient(145deg,#0d2744,#2b6cb0 55%,#0a1c30)}.profile-banner[data-banner=forest]{background:linear-gradient(145deg,#12261a,#2f855a 55%,#0d1a12)}.profile-banner[data-banner=sunset]{background:linear-gradient(145deg,#3a2410,#c05621 42%,#d69e2e 78%,#2a1808)}.profile-banner[data-banner=mist]{background:linear-gradient(145deg,#4a5568,#a0aec0 52%,#2d3748)}.profile-banner[data-banner=night]{background:linear-gradient(160deg,#05070a,#12161c 55%,#0a0c10)}.name-with-badges{vertical-align:middle;align-items:center;gap:4px;max-width:100%;display:inline-flex}.name-with-badges-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.badge-mark{flex-shrink:0;line-height:0;display:inline-flex}.badge-labels{flex-wrap:wrap;justify-content:center;gap:8px;width:100%;margin:10px 0 4px;display:flex}.badge-label-chip{color:var(--badge-color);background:color-mix(in srgb, var(--badge-color) 12%, var(--bg-elevated));border:1px solid color-mix(in srgb, var(--badge-color) 28%, transparent);border-radius:999px;align-items:center;gap:5px;padding:5px 10px;font-size:.82rem;font-weight:600;display:inline-flex}.admin-badge-create{border-radius:var(--radius-sm);background:var(--bg);border:1px solid color-mix(in srgb, var(--border) 75%, transparent);padding:14px}.admin-color-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-color-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:28px;height:28px;padding:0}.admin-color-swatch.active{border-color:var(--text);box-shadow:0 0 0 2px var(--bg-elevated)}.admin-badge-preview{color:var(--badge-color,#6b7280);align-items:center;gap:6px;margin-top:10px;font-weight:650;display:inline-flex}.admin-badge-cards{flex-direction:column;gap:12px;display:flex}.admin-badge-card{border-radius:var(--radius-sm);background:var(--bg);border:1px solid color-mix(in srgb, var(--border) 75%, transparent);padding:12px}.admin-badge-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.admin-badge-grant{gap:8px;margin-top:12px;display:flex}.admin-badge-grant input{flex:1;min-width:0}.admin-badge-holders{flex-direction:column;gap:4px;margin:10px 0 0;padding:0;list-style:none;display:flex}.admin-badge-holders li{border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:6px 4px;display:flex}.admin-badge-holders a{min-width:0;color:inherit;flex-direction:column;gap:1px;font-size:.9rem;font-weight:600;text-decoration:none;display:flex}.admin-badge-holders a span{color:var(--text-muted);font-size:.78rem;font-weight:500}.admin-user-banner[data-banner=default]{background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 28%, var(--bg)), #1a2e2a)}.admin-user-banner[data-banner=teal]{background:linear-gradient(135deg,#0f3d38,#1a7a6d)}.admin-user-banner[data-banner=charcoal]{background:linear-gradient(150deg,#1a1c1e,#2d3238)}.admin-user-banner[data-banner=ember]{background:linear-gradient(140deg,#3a1d12,#c05621)}.admin-user-banner[data-banner=ocean]{background:linear-gradient(145deg,#0d2744,#2b6cb0)}.admin-user-banner[data-banner=forest]{background:linear-gradient(145deg,#12261a,#2f855a)}.admin-user-banner[data-banner=sunset]{background:linear-gradient(145deg,#3a2410,#d69e2e)}.admin-user-banner[data-banner=mist]{background:linear-gradient(145deg,#4a5568,#a0aec0)}.admin-user-banner[data-banner=night]{background:linear-gradient(160deg,#05070a,#12161c)}.admin-user-banner{border-radius:var(--radius-sm) var(--radius-sm) 0 0;height:72px;margin:0 -4px;position:absolute;inset:0 0 auto}.field-label-text{color:var(--text-muted);margin-bottom:6px;font-size:.82rem;font-weight:600;display:block}.admin-detail-hero{text-align:center;border-radius:var(--radius-sm);flex-direction:column;align-items:center;gap:6px;margin-bottom:16px;padding:48px 12px 12px;display:flex;position:relative;overflow:hidden}.admin-detail-avatar-wrap{z-index:1;position:relative}.profile-page .profile-view{z-index:1;padding:0 20px calc(28px + var(--safe-bottom));text-align:left;align-items:stretch;gap:0;margin-top:-52px;position:relative}.profile-identity{min-height:56px;animation:profile-rise .48s var(--ease-out) both;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}@keyframes profile-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.profile-avatar-stage{background:var(--bg);box-shadow:0 0 0 1px color-mix(in srgb, var(--border) 35%, transparent);border-radius:50%;flex-shrink:0;place-items:center;padding:4px;display:grid}.profile-avatar-stage.online{box-shadow:0 0 0 1px color-mix(in srgb, var(--border) 35%, transparent), 0 0 0 3px color-mix(in srgb, var(--accent) 40%, transparent)}.profile-avatar-stage .avatar,.profile-avatar-stage .avatar-wrap{border-radius:50%}.profile-edit-pill{border-radius:999px;flex-shrink:0;min-height:38px;margin-bottom:6px;padding:0 14px;font-size:.88rem;font-weight:650}.profile-edit-pill.btn-ghost{background:color-mix(in srgb, var(--bg-muted) 90%, transparent);color:var(--text);border:1px solid color-mix(in srgb, var(--border) 80%, transparent)}.profile-edit-pill.btn-ghost:hover{background:var(--accent-soft);color:var(--accent);border-color:color-mix(in srgb, var(--accent) 28%, var(--border))}.profile-copy{animation:profile-rise .52s 40ms var(--ease-out) both;flex-direction:column;align-items:flex-start;gap:2px;margin-top:12px;display:flex}.profile-name{font-family:var(--font-display,inherit);letter-spacing:-.035em;max-width:100%;margin:0;font-size:1.55rem;font-weight:750;line-height:1.15}.profile-user-btn{color:var(--text-muted);background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;margin:2px 0 0;padding:3px 8px 3px 0;font-size:.92rem;display:inline-flex}.profile-user-btn:hover{color:var(--accent)}.profile-status{min-height:1.1em;margin:4px 0 0}.profile-badges{margin-top:14px}.profile-badges .badge-labels{justify-content:flex-start;margin:0}.profile-card{background:color-mix(in srgb, var(--bg-elevated) 88%, var(--bg-muted));border:1px solid color-mix(in srgb, var(--border) 60%, transparent);box-shadow:0 4px 18px color-mix(in srgb, var(--text) 4%, transparent);animation:card-in .42s var(--ease-out) both;border-radius:18px;margin-top:14px;padding:14px 16px}.profile-bio-card{padding:14px 16px}.profile-bio-card.empty{background:color-mix(in srgb, var(--bg-muted) 50%, transparent);border-style:dashed;padding:12px 16px}.profile-bio{white-space:pre-wrap;word-break:break-word;width:100%;max-width:none;color:var(--text);margin:0;padding:0;font-size:.95rem;line-height:1.55}.profile-bio-empty{color:var(--text-muted);font-style:italic;text-decoration:none}.profile-bio-empty:hover{color:var(--accent)}.profile-badges-card{padding:12px 14px}.profile-info-card{padding:0;overflow:hidden}.profile-info-row{align-items:center;gap:12px;padding:13px 16px;font-size:.9rem;display:flex}.profile-info-icon{color:var(--accent);flex-shrink:0;place-items:center;display:grid}.profile-info-label{color:var(--text-muted);flex:1}.profile-info-value{color:var(--text);font-weight:650}.profile-actions{flex-direction:column;gap:8px;width:100%;margin-top:20px;display:flex}.profile-action-secondary{justify-content:center;gap:8px}.blocked-banner{background:color-mix(in srgb, #b83232 12%, var(--bg-elevated));color:#b83232;text-align:center;border-radius:12px;width:100%;margin:14px 0 0;padding:10px 14px;font-size:.92rem}.topbar-transparent{background:color-mix(in srgb, var(--bg-elevated) 82%, transparent);-webkit-backdrop-filter:blur(12px);border-bottom-color:color-mix(in srgb, var(--border) 45%, transparent)}.settings-profile-card{background:linear-gradient(135deg, color-mix(in srgb, var(--accent-soft) 70%, transparent), color-mix(in srgb, var(--bg-elevated) 92%, transparent));border:1px solid color-mix(in srgb, var(--accent) 16%, var(--border));color:inherit;transition:background-color var(--motion) ease, border-color var(--motion) ease, transform var(--motion-fast) var(--ease-spring);animation:card-in .42s var(--ease-out) both;border-radius:18px;align-items:center;gap:14px;padding:16px;text-decoration:none;display:flex}.settings-profile-card:hover{border-color:color-mix(in srgb, var(--accent) 28%, var(--border));transform:translateY(-1px)}.settings-profile-card:active{transform:scale(.985)}.settings-profile-copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.settings-profile-copy strong{letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap;font-size:1.08rem;font-weight:700;overflow:hidden}.settings-profile-copy span{color:var(--text-muted);font-size:.9rem}.settings-profile-copy .hint{color:var(--accent);margin-top:3px;font-size:.78rem;font-weight:550}.profile-edit-hero{flex-direction:column;align-items:center;gap:12px;padding:20px 16px 8px;display:flex}.profile-edit-cover{flex-direction:column;align-items:center;gap:10px;margin-bottom:4px;padding:0 0 4px;display:flex}.profile-banner-edit{cursor:pointer;border:0;border-radius:0;width:100%;height:156px;padding:0;overflow:hidden}.profile-banner-cam{color:#fff;opacity:.85;transition:opacity .16s var(--ease-out);background:#00000047;place-items:center;display:grid;position:absolute;inset:0}.profile-banner-edit:hover .profile-banner-cam,.profile-banner-edit:focus-visible .profile-banner-cam{opacity:1}.profile-avatar-edit-overlap{z-index:1;box-sizing:border-box;background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--border) 70%, transparent);border-radius:50%;width:120px;height:120px;margin-top:-56px;padding:4px}.profile-avatar-edit-overlap .avatar,.profile-avatar-edit-overlap .profile-avatar-preview{border-radius:50%;justify-content:center;place-items:center;width:112px;height:112px;line-height:1;display:grid}.profile-avatar-edit-overlap .profile-avatar-cam{bottom:6px;right:6px}.profile-avatar-edit{width:112px;height:112px;position:relative}.profile-avatar-preview{object-fit:cover;border-radius:50%;width:112px;height:112px;display:block}.profile-avatar-cam{border:2px solid var(--bg-elevated);background:var(--accent);color:#fff;width:36px;height:36px;box-shadow:0 4px 12px color-mix(in srgb, var(--accent) 35%, transparent);border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;bottom:2px;right:2px}.profile-avatar-actions{flex-wrap:wrap;justify-content:center;gap:6px;padding:0 16px;display:flex}.profile-remove-avatar{background:color-mix(in srgb, var(--danger,#ef4444) 10%, transparent);min-height:38px;color:var(--danger,#ef4444);border:1px solid color-mix(in srgb, var(--danger,#ef4444) 20%, transparent);transition:all var(--motion-fast) var(--ease-spring);border-radius:12px;padding:0 14px;font-size:.84rem;font-weight:600}.profile-remove-avatar:hover{background:color-mix(in srgb, var(--danger,#ef4444) 18%, transparent);transform:translateY(-1px)}.profile-action-block{background:color-mix(in srgb, var(--danger,#ef4444) 10%, transparent);min-height:44px;color:var(--danger,#ef4444);border:1px solid color-mix(in srgb, var(--danger,#ef4444) 22%, transparent);transition:all var(--motion-fast) var(--ease-spring);box-shadow:0 2px 8px color-mix(in srgb, var(--danger,#ef4444) 12%, transparent);border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-size:.9rem;font-weight:600;display:inline-flex}.profile-action-block:hover{background:color-mix(in srgb, var(--danger,#ef4444) 18%, transparent);box-shadow:0 4px 14px color-mix(in srgb, var(--danger,#ef4444) 20%, transparent);transform:translateY(-1px)}.profile-action-block.is-blocked{background:color-mix(in srgb, var(--text) 8%, transparent);color:var(--text);border-color:color-mix(in srgb, var(--border) 60%, transparent);box-shadow:none}.blocked-unblock-btn{background:color-mix(in srgb, var(--accent) 12%, transparent);min-height:36px;color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 24%, transparent);transition:all var(--motion-fast) var(--ease-spring);border-radius:10px;align-items:center;gap:6px;padding:0 12px;font-size:.84rem;font-weight:600;display:inline-flex}.blocked-unblock-btn:hover{background:color-mix(in srgb, var(--accent) 20%, transparent);transform:translateY(-1px)}.profile-edit-hint{color:var(--text-muted);margin:2px 0 0;font-size:.9rem}.field-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.field-head label{margin:0}.field-count{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.78rem}.field-hint{color:var(--text-muted);margin:6px 0 0;font-size:.82rem;line-height:1.35}.profile-bio-input{resize:vertical;border:1px solid color-mix(in srgb, var(--border) 70%, transparent);background:color-mix(in srgb, var(--bg) 70%, var(--bg-elevated));width:100%;min-height:96px;color:var(--text);border-radius:12px;padding:12px 14px;line-height:1.4}.profile-bio-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.profile-flash{color:var(--accent);margin:0;padding:0 16px;font-size:.92rem}.profile-flash-error{color:#b83232}.profile-edit-actions{flex-direction:column;gap:8px;display:flex}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:color-mix(in srgb, var(--danger) 88%, #000);box-shadow:0 4px 16px color-mix(in srgb, var(--danger) 28%, transparent)}.admin-screen{background:radial-gradient(90% 60% at 100% -10%, color-mix(in srgb, var(--accent) 14%, transparent), transparent 55%), var(--bg-elevated)}.admin-tabs{border-bottom:1px solid color-mix(in srgb, var(--border) 55%, transparent);top:calc(var(--header-h) + var(--safe-top));z-index:20;background:color-mix(in srgb, var(--bg-elevated) 68%, transparent);-webkit-backdrop-filter:blur(22px)saturate(1.4);gap:4px;padding:8px 12px 4px;display:flex;position:sticky;overflow:visible}.admin-tabs::-webkit-scrollbar{display:none}.admin-tab{color:var(--text-muted);white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:6px;padding:8px 12px;font-size:.82rem;font-weight:600;text-decoration:none;display:inline-flex}.admin-tab.active{background:var(--accent-soft);color:var(--accent)}.admin-more-wrap{flex:none;margin-left:auto;position:relative}.admin-more-btn{cursor:pointer;font:inherit;background:0 0;border:none}.admin-more-menu{z-index:50;background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--border) 80%, transparent);min-width:180px;box-shadow:0 12px 32px color-mix(in srgb, var(--text) 14%, transparent);animation:admin-pop .16s var(--ease-out,ease) both;border-radius:14px;flex-direction:column;gap:2px;padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0}@keyframes admin-pop{0%{opacity:0;transform:translateY(-6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.admin-more-item{color:var(--text);border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-size:.9rem;font-weight:600;text-decoration:none;display:flex}.admin-more-item:hover,.admin-more-item.active{background:var(--accent-soft);color:var(--accent)}.admin-body{padding-bottom:calc(20px + var(--safe-bottom));flex:1;overflow:auto}.admin-page-head h2{margin:0 0 4px}.admin-page-head .admin-lead{margin-bottom:14px}.admin-section-tight{padding-top:0}.admin-filter-row,.admin-sort-row{flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 10px;display:flex}.admin-sort-label{color:var(--text-muted);margin-right:2px;font-size:.78rem;font-weight:650}.admin-chip-btn{border:1px solid color-mix(in srgb, var(--border) 85%, transparent);background:var(--bg);color:var(--text-muted);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:.8rem;font-weight:650}.admin-chip-btn.ghost{background:0 0}.admin-chip-btn.active{background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 35%, var(--border));color:var(--accent)}.admin-empty-card{border-radius:var(--radius-sm);background:var(--bg);border:1px dashed color-mix(in srgb, var(--border) 90%, transparent);padding:28px 16px}.admin-stat-tile.link{color:inherit;transition:transform .14s var(--ease-out,ease), border-color .14s ease, box-shadow .14s ease;text-decoration:none}.admin-stat-tile.link:hover{border-color:color-mix(in srgb, var(--accent) 35%, var(--border));box-shadow:0 6px 18px color-mix(in srgb, var(--accent) 12%, transparent);transform:translateY(-1px)}.admin-chart-count{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.65rem}.admin-toast-stack{left:50%;bottom:calc(18px + var(--safe-bottom));z-index:80;pointer-events:none;flex-direction:column;gap:8px;width:min(420px,100% - 24px);display:flex;position:fixed;transform:translate(-50%)}.admin-toast{pointer-events:auto;background:color-mix(in srgb, var(--bg-elevated) 92%, #111);border:1px solid color-mix(in srgb, var(--border) 80%, transparent);box-shadow:0 10px 28px color-mix(in srgb, var(--text) 16%, transparent);animation:admin-pop .18s var(--ease-out,ease) both;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;font-size:.9rem;font-weight:600;display:flex}.admin-toast.ok{border-color:color-mix(in srgb, var(--accent) 35%, var(--border))}.admin-toast.err{border-color:color-mix(in srgb, var(--danger) 40%, var(--border));color:var(--danger)}.admin-toast-x{color:inherit;opacity:.7;cursor:pointer;background:0 0;border:none;place-items:center;padding:2px;display:grid}.admin-confirm-backdrop{z-index:90;padding:12px;padding-bottom:calc(12px + var(--safe-bottom));background:#0000006b;align-items:end;animation:.14s both admin-pop;display:grid;position:fixed;inset:0}.admin-confirm-sheet{background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--border) 80%, transparent);border-radius:18px 18px 14px 14px;width:min(480px,100%);margin:0 auto;padding:18px 16px 14px;box-shadow:0 -8px 40px #00000040}.admin-confirm-text{margin:0 0 16px;font-size:1rem;font-weight:650;line-height:1.35}.admin-confirm-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.admin-section{padding:16px}.admin-section h2{letter-spacing:-.02em;margin:0 0 6px;font-size:1.05rem}.admin-lead,.admin-meta{color:var(--text-muted);margin:0 0 14px;font-size:.9rem}.admin-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.admin-stat-tile{border-radius:var(--radius-sm);background:var(--bg);border:1px solid color-mix(in srgb, var(--border) 75%, transparent);flex-direction:column;gap:2px;padding:14px;display:flex}.admin-stat-ico{color:var(--accent);margin-bottom:6px}.admin-stat-tile strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:1.45rem}.admin-stat-label{font-size:.88rem;font-weight:600}.admin-stat-hint{color:var(--text-muted);font-size:.78rem}.admin-chart{border-radius:var(--radius-sm);background:var(--bg);border:1px solid color-mix(in srgb, var(--border) 75%, transparent);align-items:flex-end;gap:8px;height:120px;padding:12px 8px 0;display:flex}.admin-chart-col{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:6px;min-width:0;height:100%;display:flex}.admin-chart-bar{background:linear-gradient(180deg, var(--accent), color-mix(in srgb, var(--accent) 55%, #1a2e2a));border-radius:6px 6px 2px 2px;width:100%;max-width:28px;min-height:4px}.admin-chart-label{color:var(--text-muted);font-variant-numeric:tabular-nums;font-size:.68rem}.admin-quick{flex-wrap:wrap;gap:8px;display:flex}.admin-search{align-items:center;gap:8px;margin-bottom:10px;display:flex}.admin-search.stacked{flex-direction:column;align-items:stretch}.admin-search-row{align-items:center;gap:8px;width:100%;display:flex}.admin-search-ico{color:var(--text-muted);flex-shrink:0}.admin-search input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);min-height:44px;color:var(--text);flex:1;padding:0 12px}.admin-list{flex-direction:column;gap:8px;display:flex}.admin-user-row{border-radius:var(--radius-sm);background:var(--bg);border:1px solid color-mix(in srgb, var(--border) 75%, transparent);color:inherit;align-items:center;gap:12px;padding:12px;text-decoration:none;display:flex}.admin-user-row.static{justify-content:space-between}.admin-user-row-link{min-width:0;color:inherit;flex:1;align-items:center;gap:12px;text-decoration:none;display:flex}.admin-user-copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.admin-user-top{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-user-sub{color:var(--text-muted);font-size:.82rem}.admin-chip{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;align-items:center;padding:2px 8px;font-size:.72rem;font-weight:700;display:inline-flex}.admin-chip.online{color:#2f855a;background:#2f855a29}.admin-chip.banned{background:color-mix(in srgb, var(--danger) 14%, transparent);color:var(--danger)}.admin-pager{color:var(--text-muted);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;display:flex}.admin-empty{text-align:center;color:var(--text-muted);margin:24px 0}.admin-back{color:var(--accent);align-items:center;gap:6px;margin-bottom:14px;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.admin-detail-hero h2{margin:8px 0 0;font-size:1.35rem}.admin-detail-hero p{color:var(--text-muted);margin:0}.admin-detail-bio{max-width:320px;line-height:1.4;color:var(--text)!important;margin-top:8px!important}.admin-detail-meta{width:100%;max-width:none;margin:0 0 16px}.admin-actions{flex-direction:column;gap:8px;display:flex}.admin-ban-form{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--danger) 6%, var(--bg));border:1px solid color-mix(in srgb, var(--danger) 22%, var(--border));flex-direction:column;gap:8px;padding:12px;display:flex}.admin-ban-form label{color:var(--text-muted);font-size:.82rem;font-weight:600}.admin-ban-form input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-elevated);min-height:44px;color:var(--text);padding:0 12px}.admin-protected{text-align:center;color:var(--text-muted);margin:8px 0 0;font-size:.9rem}.admin-danger-text{color:var(--danger)}.admin-msg-row,.admin-block-row{border-radius:var(--radius-sm);background:var(--bg);border:1px solid color-mix(in srgb, var(--border) 75%, transparent);justify-content:space-between;align-items:flex-start;gap:10px;padding:12px;display:flex}.admin-msg-row.deleted{opacity:.62}.admin-msg-copy{flex:1;min-width:0}.admin-msg-body{word-break:break-word;white-space:pre-wrap;margin:6px 0;line-height:1.4}.admin-msg-copy a,.admin-block-copy a{color:var(--accent);font-weight:600;text-decoration:none}.admin-block-copy p{margin:0 0 4px}.admin-arrow{color:var(--text-muted);margin:0 6px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}::view-transition-old(root){animation:none!important}::view-transition-new(root){animation:none!important}.screen,.bubble-row,.chat-row-wrap,.brand-animate,.auth-card .brand-title,.empty-animate,.empty-icon,.msg-menu,.msg-sheet,.jump-latest,.menu-backdrop,.reaction-chip,.unread-badge.pop,.typing-dots i,.online-dot,.chat-view,.back-btn,.peer-link,.peer-status,.list-filter,.pull-spinner,.install-section,.composer .send.recording,.app-toast,.app-confirm-backdrop,.call-overlay,.call-avatar-wrap.pulse .call-ring,.call-btn.accept{animation:none!important}.icon-btn:active,.pressable:active,.chat-row:active,.user-row:active,.btn:active,.composer .send:active,.icon-btn:hover,.icon-btn:focus-visible{transform:none!important}}.call-overlay{z-index:200;padding:calc(24px + env(safe-area-inset-top)) 20px calc(28px + env(safe-area-inset-bottom));background:radial-gradient(ellipse at 50% 18%, color-mix(in srgb, var(--accent) 32%, transparent), transparent 58%), radial-gradient(ellipse at 80% 90%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 45%), linear-gradient(180deg, #0b1218 0%, #121a22 100%);color:#f4f7f8;animation:call-in .28s var(--ease-out) both;flex-direction:column;justify-content:space-between;display:flex;position:fixed;inset:0}@keyframes call-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.call-overlay.video{background:#05080c}.call-remote-video{object-fit:cover;background:#000;width:100%;height:100%;position:absolute;inset:0}.call-local-video{top:calc(16px + env(safe-area-inset-top));object-fit:cover;z-index:2;background:#111;border:1px solid #fff3;border-radius:16px;width:112px;height:160px;position:absolute;right:16px;box-shadow:0 8px 24px #00000059}.call-local-video.hidden{opacity:0;pointer-events:none}.call-local-placeholder{top:calc(16px + env(safe-area-inset-top));z-index:2;background:#121820eb;border:1px solid #ffffff2e;border-radius:16px;place-items:center;width:112px;height:160px;display:grid;position:absolute;right:16px;box-shadow:0 8px 24px #00000059}.call-stage{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:8px;margin-top:48px;display:flex;position:relative}.call-avatar-wrap{place-items:center;width:104px;height:104px;margin-bottom:8px;display:grid;position:relative}.call-avatar-wrap>.avatar-wrap{z-index:1;position:relative}.call-ring{border:1.5px solid color-mix(in srgb, var(--accent) 55%, #ffffff59);opacity:0;pointer-events:none;border-radius:50%;position:absolute;inset:-6px}.call-avatar-wrap.pulse .call-ring{animation:call-ring-pulse 1.8s var(--ease-out) infinite}@keyframes call-ring-pulse{0%{opacity:.9;transform:scale(.85)}to{opacity:0;transform:scale(1.45)}}.call-name{letter-spacing:-.02em;margin:4px 0 0;font-size:1.5rem;font-weight:700}.call-status{color:#f4f7f8b8;font-variant-numeric:tabular-nums;letter-spacing:.02em;min-height:1.35em;margin:0;font-size:.98rem}.call-kind{text-transform:uppercase;letter-spacing:.1em;color:#f4f7f873;font-size:.72rem}.call-end-link{color:#ff8d8f;font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:none;margin-top:4px;padding:4px 8px;font-size:.9rem;font-weight:600;text-decoration:underline}.call-actions{z-index:1;justify-content:center;align-items:flex-start;gap:28px;display:flex;position:relative}.call-action{flex-direction:column;align-items:center;gap:8px;min-width:68px;display:flex}.call-btn-label{color:#f4f7f89e;letter-spacing:.01em;text-align:center;font-size:.72rem;line-height:1.2}.call-btn{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:64px;height:64px;transition:transform .16s var(--ease-out), background .16s ease, box-shadow .16s ease;background:#ffffff1f;border:none;border-radius:50%;place-items:center;display:grid}.call-btn:disabled{opacity:.55}.call-btn.accept{background:color-mix(in srgb, var(--accent) 45%, #2fbf71);box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 40%, transparent);animation:1.6s ease-out infinite call-accept-pulse}@keyframes call-accept-pulse{0%{box-shadow:0 0 #2fbf7173}70%{box-shadow:0 0 0 14px #0000}to{box-shadow:0 0 #0000}}.call-btn.reject{background:#e5484d}.call-btn.mute.on,.call-btn.cam.on{background:#ffffff47}.call-overlay.video .call-stage{text-shadow:0 1px 8px #0000008c;margin-top:auto;margin-bottom:12px}.call-overlay.video .call-btn-label,.call-overlay.video .call-kind,.call-overlay.video .call-status{text-shadow:0 1px 6px #0000008c}.channel-avatar{color:#fff;width:48px;height:48px;font-family:var(--font-display,inherit);background:linear-gradient(145deg, color-mix(in srgb, var(--accent) 75%, #0b2a27), #1a7a6d);transition:transform var(--motion-fast) var(--ease-spring), box-shadow var(--motion) ease;animation:avatar-pop .48s var(--ease-spring) both;border-radius:50%;flex-shrink:0;place-items:center;font-size:1.15rem;font-weight:700;display:grid}.chat-row:active .channel-avatar,.user-row:active .channel-avatar{transform:scale(.92)}@keyframes avatar-pop{0%{opacity:0;transform:scale(.7)rotate(-8deg)}to{opacity:1;transform:none}}.channel-avatar[data-channel=notifications]{background:linear-gradient(145deg,#3a4a5c,#1e2a38)}.channel-avatar.sm{width:36px;height:36px;font-size:.95rem}.channel-head .channel-avatar{width:34px;height:34px;font-size:.85rem}.channel-readonly,.channel-format-hint{padding:10px 16px calc(10px + var(--safe-bottom));text-align:center;color:var(--text-muted);background:var(--bg-elevated);border-top:1px solid color-mix(in srgb, var(--border) 70%, transparent);margin:0;font-size:.82rem}.channel-format-hint{padding-top:0;padding-bottom:calc(8px + var(--safe-bottom));font-size:.72rem}.msg-formatted{white-space:normal;word-break:break-word}.msg-formatted .msg-code{background:color-mix(in srgb, var(--text) 10%, transparent);border-radius:4px;padding:.05em .3em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88em}.msg-formatted .msg-pre{background:color-mix(in srgb, var(--text) 8%, transparent);border-radius:8px;margin:6px 0 0;padding:8px 10px;font-size:.86em;overflow-x:auto}.msg-formatted .msg-pre code{white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.msg-formatted .msg-link{color:inherit;text-underline-offset:2px;font-weight:600;text-decoration:underline}.msg-formatted .msg-spoiler{cursor:pointer;background:currentColor;border-radius:4px;transition:background .16s,color .16s}.msg-formatted .msg-spoiler.revealed{background:color-mix(in srgb, var(--text) 12%, transparent)}.e2ee-badge{color:var(--accent);opacity:.7;display:grid;position:absolute;top:6px;right:8px}.bubble{position:relative}.e2ee-status{vertical-align:middle;color:var(--accent);margin-right:4px;display:inline-flex}.peer-status.e2ee-only{color:var(--accent);align-items:center;gap:4px;font-size:.78rem;display:inline-flex}.app-toast-stack{left:50%;bottom:calc(18px + var(--safe-bottom));z-index:80;pointer-events:none;flex-direction:column;gap:8px;width:min(420px,100% - 24px);display:flex;position:fixed;transform:translate(-50%)}.app-toast{pointer-events:auto;background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--border) 80%, transparent);box-shadow:0 8px 20px color-mix(in srgb, var(--text) 10%, transparent);animation:coach-in .32s var(--ease-out,ease) both;border-radius:14px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;font-size:.9rem;font-weight:600;display:flex}.app-toast.ok{border-color:color-mix(in srgb, var(--accent) 35%, var(--border))}.app-toast.err{border-color:color-mix(in srgb, var(--danger) 40%, var(--border));color:var(--danger)}.app-toast-x{color:inherit;opacity:.7;cursor:pointer;background:0 0;border:none;place-items:center;min-width:40px;min-height:40px;padding:6px;display:grid}.app-confirm-backdrop{z-index:90;padding:12px;padding-bottom:calc(12px + var(--safe-bottom));background:#0000006b;align-items:end;animation:.18s both coach-fade;display:grid;position:fixed;inset:0}.app-confirm-sheet{background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--border) 80%, transparent);width:min(480px,100%);animation:coach-sheet .32s var(--ease-out,ease) both;border-radius:18px 18px 14px 14px;margin:0 auto;padding:18px 16px 14px;box-shadow:0 -8px 40px #00000040}.app-confirm-text{margin:0 0 16px;font-size:1rem;font-weight:650;line-height:1.35}.app-confirm-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.app-prompt-input{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text);font:inherit;border-radius:12px;margin:0 0 14px;padding:12px 14px}.recovery-gate{z-index:95;align-items:center}.recovery-sheet h2{letter-spacing:-.02em;margin:0 0 8px;font-size:1.15rem}.recovery-actions{flex-wrap:wrap;gap:8px;margin:12px 0 14px;display:flex}.coach-tip{--coach-pad:12px;isolation:isolate;background:color-mix(in srgb, var(--bg-elevated) 94%, var(--accent-soft));border:1px solid color-mix(in srgb, var(--accent) 22%, var(--border));z-index:16;animation:coach-in .42s var(--ease-out,ease) both;border-radius:16px;align-items:center;gap:12px;margin:10px 12px 0;padding:12px 12px 12px 14px;display:flex;position:relative;overflow:hidden}.coach-tip.soft{background:color-mix(in srgb, var(--bg-elevated) 96%, var(--bg))}.coach-tip.leaving{animation:coach-out .24s var(--ease-out,ease) both;pointer-events:none}.coach-tip:before{content:"";background:var(--accent);border-radius:0 3px 3px 0;width:3px;position:absolute;top:10px;bottom:10px;left:0}.coach-tip-ico{background:color-mix(in srgb, var(--accent) 12%, transparent);width:40px;height:40px;color:var(--accent);border-radius:12px;flex-shrink:0;place-items:center;display:grid}.coach-tip-copy{letter-spacing:-.01em;min-width:0;color:var(--text);flex:1;font-size:.9rem;font-weight:650;line-height:1.35}.coach-tip-copy p{margin:0}.coach-tip-action{min-height:36px;font:inherit;color:#fff;background:var(--accent);cursor:pointer;transition:transform var(--motion-fast,.16s) var(--ease-spring,ease);border:none;border-radius:12px;flex-shrink:0;padding:0 14px;font-size:.82rem;font-weight:700}.coach-tip-action:active{transform:scale(.96)}.coach-tip.list-coach{flex-shrink:0;margin:8px 12px 4px}@keyframes coach-in{0%{opacity:0;filter:blur(4px);transform:translateY(-14px)scale(.96)}to{opacity:1;filter:none;transform:none}}@keyframes coach-out{0%{opacity:1;filter:none;transform:none}to{opacity:0;filter:blur(3px);transform:translateY(-10px)scale(.97)}}@keyframes coach-fade{0%{opacity:0}to{opacity:1}}.coach-tip-ico{animation:coach-ico-pop .5s var(--ease-out,ease) both}@keyframes coach-ico-pop{0%{opacity:0;transform:scale(.55)rotate(-14deg)}to{opacity:1;transform:none}}@keyframes coach-sheet{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (width<=360px){.coach-tip{flex-wrap:wrap}.coach-tip-action{width:100%}}html[data-reduce-motion="1"] .coach-tip,html[data-reduce-motion="1"] .coach-tip-action,html[data-reduce-motion="1"] .app-toast{animation:none!important}[data-look-preview=noir]{--preview-chat:#1a1a1a;--preview-me:#3a3a3a;--preview-them:#0e0e0e;--preview-elevated:#141414;--preview-border:#2e2e2e;--preview-accent:#f0f0f0;--accent:#f0f0f0;--chat-dot:#ffffff1f;--chat-glow:#ffffff14;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%);color:#f2f2f2}[data-look-preview=rose]{--preview-chat:#e0b0bc;--preview-me:#d07890;--preview-them:#f9e6eb;--preview-elevated:#fbf0f3;--preview-border:#d8b0bc;--preview-accent:#b85a72;--accent:#b85a72;--chat-dot:#64283c24;--chat-glow:#b85a7233;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%)}[data-look-preview=citrus]{--preview-chat:#cfd89a;--preview-me:#b0c04a;--preview-them:#f3f6df;--preview-elevated:#f6f8ea;--preview-border:#c8d0a0;--preview-accent:#8a9a2a;--accent:#8a9a2a;--chat-dot:#46501424;--chat-glow:#8a9a2a33;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%)}[data-look-preview=arctic]{--preview-chat:#a8cdd8;--preview-me:#68aebc;--preview-them:#e4f4f8;--preview-elevated:#eef7fa;--preview-border:#a8c8d4;--preview-accent:#4a8a9a;--accent:#4a8a9a;--chat-dot:#1e465524;--chat-glow:#4a8a9a33;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%)}[data-look-preview=plum]{--preview-chat:#c8a0b4;--preview-me:#a86888;--preview-them:#f3e4ec;--preview-elevated:#f7eef3;--preview-border:#c8a8b8;--preview-accent:#7a3a5a;--accent:#7a3a5a;--chat-dot:#501e3724;--chat-glow:#7a3a5a33;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%)}[data-look-preview=volt]{--preview-chat:#9fd4bc;--preview-me:#4cbc88;--preview-them:#e4f7ee;--preview-elevated:#eefaf4;--preview-border:#a0d0bc;--preview-accent:#2a9a6a;--accent:#2a9a6a;--chat-dot:#14503724;--chat-glow:#2a9a6a38;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%)}[data-look-preview=clay]{--preview-chat:#dcb8a0;--preview-me:#c88860;--preview-them:#f8ebe2;--preview-elevated:#faf2ec;--preview-border:#d4b8a4;--preview-accent:#a86a4a;--accent:#a86a4a;--chat-dot:#5a321e24;--chat-glow:#a86a4a33;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%)}[data-look-preview=midnight]{--preview-chat:#a8b4d4;--preview-me:#6878b0;--preview-them:#e6eaf6;--preview-elevated:#eef1f9;--preview-border:#a8b4d0;--preview-accent:#2a3a6a;--accent:#2a3a6a;--chat-dot:#1e285024;--chat-glow:#2a3a6a33;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%)}[data-look-preview=matcha]{--preview-chat:#b4d0a4;--preview-me:#7eb868;--preview-them:#eaf5e4;--preview-elevated:#f1f8ec;--preview-border:#b4ccaa;--preview-accent:#5a8a4a;--accent:#5a8a4a;--chat-dot:#28461e24;--chat-glow:#5a8a4a33;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%)}[data-look-preview=berry]{--preview-chat:#dca0b4;--preview-me:#c86080;--preview-them:#f9e4ec;--preview-elevated:#fbf0f4;--preview-border:#d4a8b8;--preview-accent:#a83a5a;--accent:#a83a5a;--chat-dot:#641e3724;--chat-glow:#a83a5a33;--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%)}[data-look=noir]{--bg:#0c0c0c;--bg-elevated:#161616;--bg-muted:#1e1e1e;--bg-chat:#101010;--bg-bubble-me:#2e2e2e;--bg-bubble-them:#1a1a1a;--border:#2a2a2a;--accent:#e8e8e8;--accent-hover:#fff;--accent-soft:#ffffff1a;--badge:#e8e8e8;--text:#f2f2f2;--text-muted:#9a9a9a;--chat-glow:#ffffff0f;--chat-dot:#ffffff14;--auth-glow:#ffffff1f}[data-theme=dark][data-look=noir]{--bg:#050505;--bg-elevated:#101010;--bg-muted:#181818;--bg-chat:#080808;--bg-bubble-me:#2a2a2a;--bg-bubble-them:#141414;--border:#242424;--accent:#f0f0f0;--accent-hover:#fff;--accent-soft:#ffffff1f;--badge:#f0f0f0;--chat-glow:#ffffff0d;--chat-dot:#ffffff12;--auth-glow:#ffffff1a}[data-look=noir] .btn,[data-look=noir] .composer .send{color:#111}[data-look=rose]{--bg:#f4e8ec;--bg-elevated:#fbf4f6;--bg-muted:#f6eaee;--bg-chat:#e8c4ce;--bg-bubble-me:#e0a0b0;--bg-bubble-them:#faf0f3;--border:#e0c4cc;--accent:#b85a72;--accent-hover:#9a4860;--accent-soft:#b85a7224;--badge:#b85a72;--chat-glow:#b85a7224;--chat-dot:#64283c0f;--auth-glow:#b85a7238}[data-theme=dark][data-look=rose]{--bg:#140a10;--bg-elevated:#1c1016;--bg-muted:#26141c;--bg-chat:#160c12;--bg-bubble-me:#5a2838;--bg-bubble-them:#241018;--border:#3a2030;--accent:#e090a8;--accent-hover:#f0a8bc;--accent-soft:#e090a829;--badge:#e090a8;--chat-glow:#e090a81a;--chat-dot:#ffc8dc0a;--auth-glow:#e090a829}[data-look=citrus]{--bg:#eef2dc;--bg-elevated:#f7f9ec;--bg-muted:#f0f4e4;--bg-chat:#d4e0a8;--bg-bubble-me:#c0d060;--bg-bubble-them:#f4f8e8;--border:#d0d8b0;--accent:#8a9a2a;--accent-hover:#6e7c20;--accent-soft:#8a9a2a24;--badge:#8a9a2a;--chat-glow:#8a9a2a24;--chat-dot:#4650140f;--auth-glow:#8a9a2a33}[data-theme=dark][data-look=citrus]{--bg:#101208;--bg-elevated:#181c0e;--bg-muted:#222816;--bg-chat:#12160a;--bg-bubble-me:#4a5820;--bg-bubble-them:#1c2010;--border:#343c20;--accent:#c0d050;--accent-hover:#d4e068;--accent-soft:#c0d05029;--badge:#c0d050;--chat-glow:#c0d0501a;--chat-dot:#e6ff8c0a;--auth-glow:#c0d05029}[data-look=arctic]{--bg:#e4eef2;--bg-elevated:#f4fafc;--bg-muted:#e8f2f6;--bg-chat:#b8d8e4;--bg-bubble-me:#88c0d0;--bg-bubble-them:#f0f8fa;--border:#c0d4dc;--accent:#4a8a9a;--accent-hover:#3a7080;--accent-soft:#4a8a9a24;--badge:#4a8a9a;--chat-glow:#4a8a9a24;--chat-dot:#1e46550f;--auth-glow:#4a8a9a33}[data-theme=dark][data-look=arctic]{--bg:#0a1216;--bg-elevated:#101a20;--bg-muted:#16242c;--bg-chat:#0c161c;--bg-bubble-me:#2a5560;--bg-bubble-them:#142028;--border:#243840;--accent:#7eb8c8;--accent-hover:#96ccd8;--accent-soft:#7eb8c829;--badge:#7eb8c8;--chat-glow:#7eb8c81a;--chat-dot:#c8f0ff0a;--auth-glow:#7eb8c829}[data-look=plum]{--bg:#f0e6ec;--bg-elevated:#faf4f8;--bg-muted:#f2e8ee;--bg-chat:#d8b0c4;--bg-bubble-me:#c080a0;--bg-bubble-them:#f6ecf2;--border:#d8c0cc;--accent:#7a3a5a;--accent-hover:#622e48;--accent-soft:#7a3a5a24;--badge:#7a3a5a;--chat-glow:#7a3a5a24;--chat-dot:#501e370f;--auth-glow:#7a3a5a33}[data-theme=dark][data-look=plum]{--bg:#120810;--bg-elevated:#1a1018;--bg-muted:#24141e;--bg-chat:#140a12;--bg-bubble-me:#4a2038;--bg-bubble-them:#1e1018;--border:#382030;--accent:#d090b0;--accent-hover:#e0a8c4;--accent-soft:#d090b029;--badge:#d090b0;--chat-glow:#d090b01a;--chat-dot:#ffc8e60a;--auth-glow:#d090b029}[data-look=volt]{--bg:#e4f4ec;--bg-elevated:#f2faf6;--bg-muted:#e8f6ee;--bg-chat:#a8e0c4;--bg-bubble-me:#50c890;--bg-bubble-them:#ecfaf4;--border:#b8dcc8;--accent:#2a9a6a;--accent-hover:#208055;--accent-soft:#2a9a6a24;--badge:#2a9a6a;--chat-glow:#2a9a6a29;--chat-dot:#1450370f;--auth-glow:#2a9a6a38}[data-theme=dark][data-look=volt]{--bg:#06120c;--bg-elevated:#0c1c14;--bg-muted:#12281c;--bg-chat:#081610;--bg-bubble-me:#1a6040;--bg-bubble-them:#0e2018;--border:#1e3c2c;--accent:#4ed898;--accent-hover:#68e8ac;--accent-soft:#4ed89829;--badge:#4ed898;--chat-glow:#4ed8981a;--chat-dot:#b4ffdc0a;--auth-glow:#4ed89829}[data-look=clay]{--bg:#f2e8e0;--bg-elevated:#faf4ee;--bg-muted:#f4ebe4;--bg-chat:#e0c0a8;--bg-bubble-me:#d09870;--bg-bubble-them:#f8eee6;--border:#dcc8b8;--accent:#a86a4a;--accent-hover:#8c563c;--accent-soft:#a86a4a24;--badge:#a86a4a;--chat-glow:#a86a4a24;--chat-dot:#5a321e0f;--auth-glow:#a86a4a33}[data-theme=dark][data-look=clay]{--bg:#140e0a;--bg-elevated:#1c1610;--bg-muted:#281e16;--bg-chat:#16120c;--bg-bubble-me:#5a3a28;--bg-bubble-them:#221810;--border:#3a2c20;--accent:#d4a080;--accent-hover:#e4b898;--accent-soft:#d4a08029;--badge:#d4a080;--chat-glow:#d4a0801a;--chat-dot:#ffdcbe0a;--auth-glow:#d4a08029}[data-look=midnight]{--bg:#e6eaf4;--bg-elevated:#f4f6fc;--bg-muted:#e8ecf6;--bg-chat:#b4c0e0;--bg-bubble-me:#8090c8;--bg-bubble-them:#eef0f8;--border:#c0c8e0;--accent:#2a3a6a;--accent-hover:#1e2c54;--accent-soft:#2a3a6a24;--badge:#2a3a6a;--chat-glow:#2a3a6a24;--chat-dot:#1e28500f;--auth-glow:#2a3a6a33}[data-theme=dark][data-look=midnight]{--bg:#080a14;--bg-elevated:#101428;--bg-muted:#161c34;--bg-chat:#0a0e1c;--bg-bubble-me:#283868;--bg-bubble-them:#12182c;--border:#222c48;--accent:#8098e0;--accent-hover:#98acf0;--accent-soft:#8098e029;--badge:#8098e0;--chat-glow:#8098e01a;--chat-dot:#c8dcff0a;--auth-glow:#8098e029}[data-look=matcha]{--bg:#e8f0e4;--bg-elevated:#f4faf0;--bg-muted:#ecf4e8;--bg-chat:#c0dcb0;--bg-bubble-me:#90c878;--bg-bubble-them:#f0f8ea;--border:#c8d8c0;--accent:#5a8a4a;--accent-hover:#48723c;--accent-soft:#5a8a4a24;--badge:#5a8a4a;--chat-glow:#5a8a4a24;--chat-dot:#28461e0f;--auth-glow:#5a8a4a33}[data-theme=dark][data-look=matcha]{--bg:#0a1208;--bg-elevated:#121c10;--bg-muted:#1a2816;--bg-chat:#0c160a;--bg-bubble-me:#355828;--bg-bubble-them:#142010;--border:#2a3c24;--accent:#90c870;--accent-hover:#a8d888;--accent-soft:#90c87029;--badge:#90c870;--chat-glow:#90c8701a;--chat-dot:#d2ffb40a;--auth-glow:#90c87029}[data-look=berry]{--bg:#f4e6ec;--bg-elevated:#fbf0f4;--bg-muted:#f6e8ee;--bg-chat:#e0a8bc;--bg-bubble-me:#d07090;--bg-bubble-them:#faf0f4;--border:#e0c0cc;--accent:#a83a5a;--accent-hover:#8c2e4a;--accent-soft:#a83a5a24;--badge:#a83a5a;--chat-glow:#a83a5a24;--chat-dot:#641e370f;--auth-glow:#a83a5a38}[data-theme=dark][data-look=berry]{--bg:#14080c;--bg-elevated:#1c1014;--bg-muted:#28141c;--bg-chat:#160a10;--bg-bubble-me:#5a2038;--bg-bubble-them:#220e16;--border:#3c1e2c;--accent:#e878a0;--accent-hover:#f090b4;--accent-soft:#e878a029;--badge:#e878a0;--chat-glow:#e878a01a;--chat-dot:#ffc8dc0a;--auth-glow:#e878a029}[data-wallpaper-preview=hex] .look-card-chat,[data-wallpaper-preview=hex] .appearance-live-chat,[data-wallpaper-preview=hex] .wallpaper-sample,[data-wallpaper=hex] .chat-view,[data-wallpaper=hex] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), repeating-linear-gradient(0deg, transparent 0 10px, var(--chat-dot) 10px 11px), repeating-linear-gradient(60deg, transparent 0 10px, var(--chat-dot) 10px 11px), repeating-linear-gradient(120deg, transparent 0 10px, var(--chat-dot) 10px 11px);background-size:100% 100%,22px 19px,22px 19px,22px 19px}[data-wallpaper-preview=waves] .look-card-chat,[data-wallpaper-preview=waves] .appearance-live-chat,[data-wallpaper-preview=waves] .wallpaper-sample,[data-wallpaper=waves] .chat-view,[data-wallpaper=waves] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), repeating-radial-gradient(circle at 0 50%, transparent 0, transparent 8px, var(--chat-dot) 8px, var(--chat-dot) 9px, transparent 10px);background-size:100% 100%,28px 18px}[data-wallpaper-preview=confetti] .look-card-chat,[data-wallpaper-preview=confetti] .appearance-live-chat,[data-wallpaper-preview=confetti] .wallpaper-sample,[data-wallpaper=confetti] .chat-view,[data-wallpaper=confetti] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), radial-gradient(circle at 20% 30%, var(--chat-dot) 1.5px, transparent 2px), radial-gradient(circle at 70% 55%, var(--chat-dot) 1.2px, transparent 2px), radial-gradient(circle at 40% 80%, var(--chat-dot) 1.8px, transparent 2.5px), radial-gradient(circle at 85% 20%, var(--chat-dot) 1px, transparent 1.8px);background-size:100% 100%,24px 24px,28px 28px,32px 32px,20px 20px}[data-wallpaper-preview=scanlines] .look-card-chat,[data-wallpaper-preview=scanlines] .appearance-live-chat,[data-wallpaper-preview=scanlines] .wallpaper-sample,[data-wallpaper=scanlines] .chat-view,[data-wallpaper=scanlines] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), repeating-linear-gradient(180deg, transparent 0 3px, var(--chat-dot) 3px 4px);background-size:100% 100%,100% 8px}[data-wallpaper-preview=tiles] .look-card-chat,[data-wallpaper-preview=tiles] .appearance-live-chat,[data-wallpaper-preview=tiles] .wallpaper-sample,[data-wallpaper=tiles] .chat-view,[data-wallpaper=tiles] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), linear-gradient(var(--chat-dot) 1px, transparent 1px), linear-gradient(90deg, var(--chat-dot) 1px, transparent 1px);background-size:100% 100%,16px 16px,16px 16px}[data-wallpaper-preview=orbit] .look-card-chat,[data-wallpaper-preview=orbit] .appearance-live-chat,[data-wallpaper-preview=orbit] .wallpaper-sample,[data-wallpaper=orbit] .chat-view,[data-wallpaper=orbit] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), repeating-radial-gradient(circle at 50% 50%, transparent 0 10px, var(--chat-dot) 10px 11px, transparent 12px);background-size:100% 100%,36px 36px}[data-wallpaper-preview=topo] .look-card-chat,[data-wallpaper-preview=topo] .appearance-live-chat,[data-wallpaper-preview=topo] .wallpaper-sample,[data-wallpaper=topo] .chat-view,[data-wallpaper=topo] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), repeating-radial-gradient(ellipse at 30% 40%, transparent 0 12px, var(--chat-dot) 12px 13px, transparent 14px), repeating-radial-gradient(ellipse at 70% 70%, transparent 0 16px, var(--chat-dot) 16px 17px, transparent 18px);background-size:100% 100%,48px 40px,56px 48px}[data-wallpaper-preview=noise] .look-card-chat,[data-wallpaper-preview=noise] .appearance-live-chat,[data-wallpaper-preview=noise] .wallpaper-sample,[data-wallpaper=noise] .chat-view,[data-wallpaper=noise] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), repeating-linear-gradient(45deg, transparent 0 2px, var(--chat-dot) 2px 3px), repeating-linear-gradient(-45deg, transparent 0 3px, var(--chat-dot) 3px 4px);background-size:100% 100%,7px 7px,9px 9px}[data-wallpaper-preview=petals] .look-card-chat,[data-wallpaper-preview=petals] .appearance-live-chat,[data-wallpaper-preview=petals] .wallpaper-sample,[data-wallpaper=petals] .chat-view,[data-wallpaper=petals] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), radial-gradient(ellipse 40% 60% at 25% 35%, var(--chat-dot) 0 40%, transparent 42%), radial-gradient(ellipse 50% 40% at 70% 65%, var(--chat-dot) 0 35%, transparent 38%);background-size:100% 100%,28px 28px,34px 34px}[data-wallpaper-preview=stripes] .look-card-chat,[data-wallpaper-preview=stripes] .appearance-live-chat,[data-wallpaper-preview=stripes] .wallpaper-sample,[data-wallpaper=stripes] .chat-view,[data-wallpaper=stripes] .wallpaper-sample{background-image:var(--chat-wallpaper-glow), repeating-linear-gradient(135deg, transparent 0 8px, var(--chat-dot) 8px 9px);background-size:100% 100%,22px 22px}[data-bubble=soft]{--radius-bubble:22px}[data-bubble=soft] .bubble.me{border-bottom-right-radius:8px}[data-bubble=soft] .bubble.them{border-bottom-left-radius:8px}[data-bubble=pill]{--radius-bubble:28px}[data-bubble=pill] .bubble.me,[data-bubble=pill] .bubble.them,[data-bubble=pill] .bubble.me.tail:not(.grouped),[data-bubble=pill] .bubble.them.tail:not(.grouped){border-radius:28px}[data-bubble=sharp]{--radius-bubble:8px}[data-bubble=sharp] .bubble.me{border-bottom-right-radius:2px}[data-bubble=sharp] .bubble.them{border-bottom-left-radius:2px}.bubble-rail{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.bubble-style-card{border:2px solid var(--border);background:var(--bg-elevated);cursor:pointer;color:inherit;text-align:left;appearance:none;width:100%;transition:border-color var(--motion) ease, transform var(--motion-fast) var(--ease-spring);border-radius:14px;flex-direction:column;align-items:stretch;gap:8px;padding:0;display:flex;position:relative;overflow:hidden}.bubble-style-card:hover{transform:translateY(-2px)}.bubble-style-card.active{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.bubble-style-preview{box-sizing:border-box;background:var(--preview-chat,var(--bg-chat));flex-direction:column;gap:6px;width:100%;min-height:64px;padding:12px 10px;display:flex}.bubble-style-them,.bubble-style-me{background:var(--preview-them,var(--bg-bubble-them));border:1px solid color-mix(in srgb, var(--preview-accent,var(--accent)) 16%, transparent);max-width:70%;height:14px;display:block}.bubble-style-me{background:var(--preview-me,var(--bg-bubble-me));border:none;align-self:flex-end;max-width:55%}[data-bubble-preview=default] .bubble-style-them,[data-bubble-preview=default] .bubble-style-me{border-radius:12px}[data-bubble-preview=default] .bubble-style-them{border-bottom-left-radius:4px}[data-bubble-preview=default] .bubble-style-me{border-bottom-right-radius:4px}[data-bubble-preview=soft] .bubble-style-them,[data-bubble-preview=soft] .bubble-style-me{border-radius:16px}[data-bubble-preview=soft] .bubble-style-them{border-bottom-left-radius:6px}[data-bubble-preview=soft] .bubble-style-me{border-bottom-right-radius:6px}[data-bubble-preview=pill] .bubble-style-them,[data-bubble-preview=pill] .bubble-style-me{border-radius:999px}[data-bubble-preview=sharp] .bubble-style-them,[data-bubble-preview=sharp] .bubble-style-me{border-radius:6px}[data-bubble-preview=sharp] .bubble-style-them{border-bottom-left-radius:2px}[data-bubble-preview=sharp] .bubble-style-me{border-bottom-right-radius:2px}.bubble-style-label{padding:0 10px 10px;font-size:.82rem;font-weight:650}.appearance-live[data-bubble-preview=soft] .appearance-live-bubble{border-radius:18px}.appearance-live[data-bubble-preview=soft] .appearance-live-bubble.them{border-bottom-left-radius:6px}.appearance-live[data-bubble-preview=soft] .appearance-live-bubble.me{border-bottom-right-radius:6px}.appearance-live[data-bubble-preview=pill] .appearance-live-bubble{border-radius:999px}.appearance-live[data-bubble-preview=sharp] .appearance-live-bubble{border-radius:8px}.appearance-live[data-bubble-preview=sharp] .appearance-live-bubble.them{border-bottom-left-radius:2px}.appearance-live[data-bubble-preview=sharp] .appearance-live-bubble.me{border-bottom-right-radius:2px}html[data-theme=dark] [data-look-preview]{--chat-wallpaper-glow:radial-gradient(ellipse 80% 50% at 50% 0%, var(--chat-glow), transparent 70%);color:#e8eef2}html[data-theme=dark] [data-look-preview] .look-card-label,html[data-theme=dark] [data-look-preview] .wallpaper-label,html[data-theme=dark] [data-look-preview] .bubble-style-label,html[data-theme=dark] [data-look-preview] .appearance-live-title,html[data-theme=dark] [data-look-preview] .appearance-live-meta,html[data-theme=dark] [data-look-preview] .appearance-live-bubble{color:inherit}html[data-theme=dark] [data-look-preview] .appearance-live-meta{color:color-mix(in srgb, currentColor 55%, transparent)}html[data-theme=dark] [data-look-preview] .look-card-topbar,html[data-theme=dark] [data-look-preview] .appearance-live-bar,html[data-theme=dark] [data-look-preview] .appearance-live-meta{background:color-mix(in srgb, var(--preview-elevated) 92%, transparent);border-color:color-mix(in srgb, var(--preview-border) 80%, transparent)}html[data-theme=dark] [data-look-preview=qix]{--preview-chat:#0b1218;--preview-me:#1a564c;--preview-them:#152028;--preview-elevated:#121a20;--preview-border:#243038;--preview-accent:#3dbaa8;--accent:#3dbaa8;--chat-dot:#ffffff14;--chat-glow:#3dbaa824}html[data-theme=dark] [data-look-preview=lagoon]{--preview-chat:#0a1016;--preview-me:#1a4560;--preview-them:#121c28;--preview-elevated:#101820;--preview-border:#243040;--preview-accent:#4aa8d0;--accent:#4aa8d0;--chat-dot:#ffffff14;--chat-glow:#4aa8d024}html[data-theme=dark] [data-look-preview=meadow]{--preview-chat:#0c120c;--preview-me:#2a4a28;--preview-them:#141c14;--preview-elevated:#121a12;--preview-border:#283428;--preview-accent:#7aba6a;--accent:#7aba6a;--chat-dot:#dcffc812;--chat-glow:#7aba6a1f}html[data-theme=dark] [data-look-preview=ember]{--preview-chat:#120e0a;--preview-me:#5a3a18;--preview-them:#1c1610;--preview-elevated:#1a1410;--preview-border:#34281c;--preview-accent:#e0a050;--accent:#e0a050;--chat-dot:#ffd29612;--chat-glow:#e0a0501f}html[data-theme=dark] [data-look-preview=graphite]{--preview-chat:#0c1014;--preview-me:#2a3848;--preview-them:#141a20;--preview-elevated:#12161c;--preview-border:#2a343e;--preview-accent:#8aa0b4;--accent:#8aa0b4;--chat-dot:#ffffff12;--chat-glow:#8aa0b41f}html[data-theme=dark] [data-look-preview=ink]{--preview-chat:#0a0a0c;--preview-me:#2e2e3a;--preview-them:#121218;--preview-elevated:#141418;--preview-border:#2a2a34;--preview-accent:#c8c8d8;--accent:#c8c8d8;--chat-dot:#ffffff17;--chat-glow:#c8c8d81a;color:#e8e8f0}html[data-theme=dark] [data-look-preview=dusk]{--preview-chat:#100e16;--preview-me:#3a2e55;--preview-them:#1a1624;--preview-elevated:#16121e;--preview-border:#2e2840;--preview-accent:#b09ad8;--accent:#b09ad8;--chat-dot:#e6d2ff12;--chat-glow:#b09ad81f}html[data-theme=dark] [data-look-preview=coral]{--preview-chat:#140c0c;--preview-me:#5a3028;--preview-them:#241616;--preview-elevated:#1c1212;--preview-border:#3a2824;--preview-accent:#e88878;--accent:#e88878;--chat-dot:#ffc8be12;--chat-glow:#e888781f}html[data-theme=dark] [data-look-preview=frost]{--preview-chat:#0a1014;--preview-me:#2a4558;--preview-them:#152028;--preview-elevated:#101820;--preview-border:#243440;--preview-accent:#7eb0c8;--accent:#7eb0c8;--chat-dot:#ffffff12;--chat-glow:#7eb0c81f}html[data-theme=dark] [data-look-preview=sand]{--preview-chat:#12100c;--preview-me:#4a3c28;--preview-them:#221c14;--preview-elevated:#1a1610;--preview-border:#3a3226;--preview-accent:#c4a878;--accent:#c4a878;--chat-dot:#ffe6be12;--chat-glow:#c4a8781f}html[data-theme=dark] [data-look-preview=noir]{--preview-chat:#080808;--preview-me:#2a2a2a;--preview-them:#121212;--preview-elevated:#101010;--preview-border:#242424;--preview-accent:#f0f0f0;--accent:#f0f0f0;--chat-dot:#ffffff1a;--chat-glow:#ffffff14;color:#f2f2f2}html[data-theme=dark] [data-look-preview=rose]{--preview-chat:#140a10;--preview-me:#5a2838;--preview-them:#241018;--preview-elevated:#1c1016;--preview-border:#3a2030;--preview-accent:#e090a8;--accent:#e090a8;--chat-dot:#ffc8dc12;--chat-glow:#e090a81f}html[data-theme=dark] [data-look-preview=citrus]{--preview-chat:#101208;--preview-me:#4a5820;--preview-them:#1c2010;--preview-elevated:#181c0e;--preview-border:#343c20;--preview-accent:#c0d050;--accent:#c0d050;--chat-dot:#e6ff8c12;--chat-glow:#c0d0501f}html[data-theme=dark] [data-look-preview=arctic]{--preview-chat:#0a1216;--preview-me:#2a5560;--preview-them:#142028;--preview-elevated:#101a20;--preview-border:#243840;--preview-accent:#7eb8c8;--accent:#7eb8c8;--chat-dot:#c8f0ff12;--chat-glow:#7eb8c81f}html[data-theme=dark] [data-look-preview=plum]{--preview-chat:#120810;--preview-me:#4a2038;--preview-them:#1e1018;--preview-elevated:#1a1018;--preview-border:#382030;--preview-accent:#d090b0;--accent:#d090b0;--chat-dot:#ffc8e612;--chat-glow:#d090b01f}html[data-theme=dark] [data-look-preview=volt]{--preview-chat:#06120c;--preview-me:#1a6040;--preview-them:#0e2018;--preview-elevated:#0c1c14;--preview-border:#1e3c2c;--preview-accent:#4ed898;--accent:#4ed898;--chat-dot:#b4ffdc12;--chat-glow:#4ed8981f}html[data-theme=dark] [data-look-preview=clay]{--preview-chat:#140e0a;--preview-me:#5a3a28;--preview-them:#221810;--preview-elevated:#1c1610;--preview-border:#3a2c20;--preview-accent:#d4a080;--accent:#d4a080;--chat-dot:#ffdcbe12;--chat-glow:#d4a0801f}html[data-theme=dark] [data-look-preview=midnight]{--preview-chat:#080a14;--preview-me:#283868;--preview-them:#12182c;--preview-elevated:#101428;--preview-border:#222c48;--preview-accent:#8098e0;--accent:#8098e0;--chat-dot:#c8dcff12;--chat-glow:#8098e01f}html[data-theme=dark] [data-look-preview=matcha]{--preview-chat:#0a1208;--preview-me:#355828;--preview-them:#142010;--preview-elevated:#121c10;--preview-border:#2a3c24;--preview-accent:#90c870;--accent:#90c870;--chat-dot:#d2ffb412;--chat-glow:#90c8701f}html[data-theme=dark] [data-look-preview=berry]{--preview-chat:#14080c;--preview-me:#5a2038;--preview-them:#220e16;--preview-elevated:#1c1014;--preview-border:#3c1e2c;--preview-accent:#e878a0;--accent:#e878a0;--chat-dot:#ffc8dc12;--chat-glow:#e878a01f}html[data-theme=light] [data-look-preview=ink],html[data-theme=light] [data-look-preview=noir]{color:#e8e8f0}html[data-theme=light] [data-look-preview=ink] .look-card-label,html[data-theme=light] [data-look-preview=noir] .look-card-label{color:var(--text)}.onboard-screen{background:radial-gradient(120% 80% at 10% -10%, color-mix(in srgb, var(--accent) 28%, transparent), transparent 55%), radial-gradient(90% 70% at 110% 10%, color-mix(in srgb, var(--accent) 18%, transparent), transparent 50%), var(--bg);flex-direction:column;min-height:100dvh;display:flex;position:relative;overflow:hidden}.onboard-aurora{background:linear-gradient(120deg, color-mix(in srgb, var(--accent) 35%, transparent), transparent 40%, color-mix(in srgb, var(--accent) 22%, transparent));filter:blur(40px);opacity:.55;pointer-events:none;height:55%;animation:10s ease-in-out infinite alternate onboard-aurora;position:absolute;inset:-20% -10% auto}.onboard-orb{filter:blur(2px);pointer-events:none;opacity:.45;border-radius:50%;position:absolute}.onboard-orb.orb-a{background:color-mix(in srgb, var(--accent) 40%, transparent);width:140px;height:140px;animation:7s ease-in-out infinite onboard-float;bottom:18%;left:-40px}.onboard-orb.orb-b{background:color-mix(in srgb, var(--accent) 28%, #fff 20%);width:90px;height:90px;animation:9s ease-in-out infinite reverse onboard-float;top:28%;right:-20px}@keyframes onboard-aurora{0%{transform:translate(-4%)rotate(-2deg)}to{transform:translate(6%,4%)rotate(3deg)}}@keyframes onboard-float{0%,to{transform:translate(0,0)}50%{transform:translate(12px,-18px)}}.onboard-top{z-index:2;padding:calc(10px + var(--safe-top)) 16px 8px;justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.onboard-progress{background:color-mix(in srgb, var(--border) 80%, transparent);border-radius:999px;flex:1;height:4px;overflow:hidden}.onboard-progress span{transform-origin:0;border-radius:inherit;background:linear-gradient(90deg, var(--accent), color-mix(in srgb, var(--accent) 60%, #fff));width:100%;height:100%;transition:transform .42s var(--ease-out,cubic-bezier(.22, 1, .36, 1));display:block}.onboard-skip{color:var(--text-muted);cursor:pointer;background:0 0;border:0;padding:8px 4px;font-size:.9rem;font-weight:600}.onboard-stage{z-index:1;animation:onboard-step-in .42s var(--ease-out,cubic-bezier(.22, 1, .36, 1)) both;flex:1;padding:8px 20px 12px;position:relative;overflow:auto}.onboard-stage.from-right{--slide:28px}.onboard-stage.from-left{--slide:-28px}@keyframes onboard-step-in{0%{opacity:0;transform:translate3d(var(--slide,24px), 12px, 0) scale(.98);filter:blur(4px)}to{opacity:1;filter:none;transform:none}}.onboard-panel{flex-direction:column;align-items:stretch;gap:12px;max-width:420px;margin:0 auto;display:flex}.onboard-panel.welcome{text-align:center;align-items:center;padding-top:24px}.onboard-logo-wrap{width:96px;height:96px;margin-bottom:8px;position:relative}.onboard-logo{width:96px;height:96px;font-family:var(--font-display,inherit);color:#fff;background:linear-gradient(145deg, var(--accent), color-mix(in srgb, var(--accent) 55%, #0b2a27));box-shadow:0 18px 40px color-mix(in srgb, var(--accent) 35%, transparent);animation:onboard-logo-pop .7s var(--ease-out,cubic-bezier(.22, 1, .36, 1)) both;border-radius:28px;place-items:center;font-size:2.4rem;font-weight:800;display:grid}.onboard-logo-wrap.done .onboard-logo{background:linear-gradient(145deg, #2fbf71, var(--accent))}.onboard-logo-ring{border:2px solid color-mix(in srgb, var(--accent) 45%, transparent);border-radius:36px;animation:2.4s ease-out infinite onboard-ring;position:absolute;inset:-10px}.onboard-logo-spark{background:var(--bg-elevated);width:34px;height:34px;color:var(--accent);box-shadow:0 6px 16px color-mix(in srgb, var(--text) 12%, transparent);border-radius:50%;place-items:center;animation:1.8s ease-in-out infinite onboard-spark;display:grid;position:absolute;top:-6px;right:-6px}@keyframes onboard-logo-pop{0%{opacity:0;transform:scale(.6)rotate(-8deg)}to{opacity:1;transform:none}}@keyframes onboard-ring{0%{opacity:.8;transform:scale(.92)}70%{opacity:0;transform:scale(1.12)}to{opacity:0}}@keyframes onboard-spark{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-4px)rotate(12deg)}}.onboard-step-ico{width:48px;height:48px;color:var(--accent);background:var(--accent-soft,color-mix(in srgb, var(--accent) 16%, transparent));animation:onboard-ico .48s var(--ease-out,ease) both;border-radius:16px;place-items:center;display:grid}.onboard-step-ico.pulse{animation:onboard-ico .48s var(--ease-out,ease) both, onboard-pulse 2s ease-in-out .5s infinite}@keyframes onboard-ico{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:none}}@keyframes onboard-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent) 35%, transparent)}50%{box-shadow:0 0 0 10px #0000}}.onboard-title{font-family:var(--font-display,inherit);letter-spacing:-.02em;margin:0;font-size:1.75rem;font-weight:750;animation:.48s 60ms both onboard-fade-up}.onboard-lead{color:var(--text-muted);margin:0;line-height:1.45;animation:.48s .1s both onboard-fade-up}@keyframes onboard-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.onboard-bullets{flex-direction:column;gap:10px;width:100%;max-width:320px;margin:18px 0 0;padding:0;list-style:none;display:flex}.onboard-bullets li{background:color-mix(in srgb, var(--bg-elevated) 88%, transparent);border:1px solid color-mix(in srgb, var(--border) 70%, transparent);animation:onboard-fade-up .48s calc(.14s + var(--i) * 70ms) both;border-radius:14px;align-items:center;gap:10px;padding:12px 14px;font-size:.92rem;font-weight:600;display:flex}.onboard-bullets li svg{color:var(--accent);flex-shrink:0}.onboard-avatar{cursor:pointer;background:0 0;border:0;flex-shrink:0;align-self:center;width:112px;height:112px;margin:12px auto 28px;padding:0;display:block;position:relative}.onboard-avatar-ring{isolation:isolate;background:color-mix(in srgb, var(--accent) 18%, var(--bg));width:112px;height:112px;box-shadow:0 10px 28px color-mix(in srgb, var(--text) 14%, transparent);border-radius:50%;display:block;overflow:hidden}.onboard-avatar-img,.onboard-avatar-ph,.onboard-avatar-ring .avatar-wrap,.onboard-avatar-ring .avatar,.onboard-avatar-ring img{object-fit:cover;border-radius:50%;display:block;width:112px!important;max-width:112px!important;height:112px!important;max-height:112px!important}.onboard-avatar-ph{color:var(--accent);background:color-mix(in srgb, var(--accent) 18%, var(--bg));place-items:center;font-size:2.2rem;font-weight:700;display:grid}.onboard-avatar-badge{z-index:2;background:var(--accent);color:#fff;white-space:nowrap;pointer-events:none;box-shadow:0 4px 12px color-mix(in srgb, var(--accent) 35%, transparent);border-radius:999px;padding:4px 10px;font-size:.72rem;font-weight:700;position:absolute;bottom:-10px;left:50%;transform:translate(-50%)}.onboard-field{width:100%;color:var(--text-muted);flex-direction:column;gap:6px;font-size:.82rem;font-weight:600;display:flex}.onboard-field input{box-sizing:border-box;width:100%;font:inherit;color:var(--text);border:1px solid color-mix(in srgb, var(--border) 80%, transparent);background:var(--bg-elevated);border-radius:12px;padding:12px 14px;font-weight:600}.onboard-hint{text-align:center;color:var(--text-muted);margin:0;font-size:.85rem}.onboard-ok{color:#2fbf71;background:#2fbf7129;border-radius:12px;justify-content:center;align-items:center;gap:8px;margin:0 auto;padding:12px 16px;font-weight:650;display:inline-flex}.onboard-theme-row{flex-wrap:wrap;gap:8px;display:flex}.onboard-chip{border:1px solid color-mix(in srgb, var(--border) 80%, transparent);background:var(--bg-elevated);color:var(--text);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:10px 14px;font-size:.88rem;font-weight:650;transition:transform .16s,border-color .16s,background .16s;display:inline-flex}.onboard-chip.active{border-color:var(--accent);background:var(--accent-soft,color-mix(in srgb, var(--accent) 16%, transparent));color:var(--accent)}.onboard-chip:active{transform:scale(.96)}.onboard-look-rail{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:10px;padding:4px 2px 8px;display:flex;overflow-x:auto}.onboard-look{scroll-snap-align:start;background:var(--bg-elevated);width:92px;color:var(--text-muted);cursor:pointer;animation:onboard-fade-up .42s calc(80ms + var(--i) * 35ms) both;border:2px solid #0000;border-radius:16px;flex-direction:column;flex:none;align-items:center;gap:8px;padding:10px 8px;font-size:.72rem;font-weight:650;display:flex}.onboard-look.active{border-color:var(--accent);color:var(--text);box-shadow:0 0 0 3px var(--accent-soft,color-mix(in srgb, var(--accent) 20%, transparent))}.onboard-look-swatch{background:var(--swatch);border-radius:50%;width:42px;height:42px;box-shadow:inset 0 0 0 2px #ffffff40}.onboard-preview{border:1px solid color-mix(in srgb, var(--border) 70%, transparent);border-radius:18px;flex-direction:column;gap:10px;min-height:120px;margin-top:4px;padding:18px 14px;animation:.5s .16s both onboard-fade-up;display:flex}.ob-bubble{max-width:78%;animation:onboard-bubble .52s var(--ease-out,ease) both;border-radius:16px;padding:10px 12px;font-size:.88rem;font-weight:600;line-height:1.35}.ob-bubble.them{background:var(--bg-elevated);border-bottom-left-radius:6px;align-self:flex-start}.ob-bubble.me{background:var(--accent);color:#fff;border-bottom-right-radius:6px;align-self:flex-end;animation-delay:.12s}@keyframes onboard-bubble{0%{opacity:0;transform:translateY(10px)scale(.96)}to{opacity:1;transform:none}}.onboard-lang-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.onboard-lang{border:2px solid color-mix(in srgb, var(--border) 75%, transparent);background:var(--bg-elevated);text-align:left;cursor:pointer;border-radius:16px;flex-direction:column;align-items:flex-start;gap:4px;padding:16px 14px;transition:border-color .18s,transform .16s;display:flex}.onboard-lang.active{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft,color-mix(in srgb, var(--accent) 18%, transparent))}.onboard-lang:active{transform:scale(.98)}.onboard-lang-flag{letter-spacing:.06em;color:var(--accent);font-size:.72rem;font-weight:800}.onboard-lang strong{font-size:1.05rem}.onboard-lang span:last-child{color:var(--text-muted);font-size:.78rem}.onboard-notify-btn{margin-top:4px}.onboard-tip-card{background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--border) 75%, transparent);border-radius:18px;padding:18px 16px}.onboard-tip-body{text-align:center;flex-direction:column;align-items:center;gap:8px;min-height:160px;animation:.36s both onboard-fade-up;display:flex}.onboard-tip-ico{width:56px;height:56px;color:var(--accent);background:var(--accent-soft,color-mix(in srgb, var(--accent) 16%, transparent));border-radius:18px;place-items:center;margin-bottom:4px;display:grid}.onboard-tip-body strong{font-size:1.1rem}.onboard-tip-body p{color:var(--text-muted);margin:0;font-size:.92rem;line-height:1.45}.onboard-tip-dots{justify-content:center;gap:6px;margin:14px 0 8px;display:flex}.onboard-tip-dots button{background:color-mix(in srgb, var(--text) 22%, transparent);cursor:pointer;border:0;border-radius:50%;width:8px;height:8px;padding:0}.onboard-tip-dots button.active{background:var(--accent);border-radius:999px;width:18px}.onboard-tip-nav{justify-content:space-between;gap:8px;display:flex}.onboard-done-row{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px;display:flex}.onboard-done-row span{background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--border) 70%, transparent);border-radius:999px;align-items:center;gap:6px;padding:8px 12px;font-size:.85rem;font-weight:650;animation:.48s both onboard-fade-up;display:inline-flex}.onboard-footer{z-index:2;padding:12px 16px calc(16px + var(--safe-bottom));justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.onboard-footer .btn{min-width:132px}html[data-reduce-motion="1"] .chats-screen:before,html[data-reduce-motion="1"] .auth-screen:before,html[data-reduce-motion="1"] .auth-screen:after,html[data-reduce-motion="1"] .onboard-aurora,html[data-reduce-motion="1"] .onboard-orb,html[data-reduce-motion="1"] .onboard-logo-ring,html[data-reduce-motion="1"] .onboard-logo-spark,html[data-reduce-motion="1"] .onboard-stage,html[data-reduce-motion="1"] .onboard-look,html[data-reduce-motion="1"] .ob-bubble{animation:none!important}.call-overlay{z-index:1000;-webkit-backdrop-filter:blur(32px);backdrop-filter:blur(32px);padding:calc(36px + env(safe-area-inset-top,0px)) 24px calc(44px + env(safe-area-inset-bottom,0px));color:#fff;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 50% 30%,#14202cf5,#080e14fa);flex-direction:column;justify-content:space-between;align-items:center;animation:.32s cubic-bezier(.16,1,.3,1) both call-overlay-in;display:flex;position:fixed;inset:0;overflow:hidden}@keyframes call-overlay-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.call-ambient-glow{background:radial-gradient(circle, color-mix(in srgb, var(--accent) 30%, transparent) 0%, transparent 70%);pointer-events:none;filter:blur(40px);opacity:.6;border-radius:50%;width:320px;height:320px;animation:3s ease-in-out infinite alternate call-glow-pulse;position:absolute;top:25%;left:50%;transform:translate(-50%,-50%)}@keyframes call-glow-pulse{0%{opacity:.4;transform:translate(-50%,-50%)scale(.95)}to{opacity:.7;transform:translate(-50%,-50%)scale(1.15)}}.call-stage{text-align:center;z-index:2;flex-direction:column;justify-content:center;align-items:center;width:100%;margin-top:auto;margin-bottom:auto;display:flex}.call-avatar-wrap{place-items:center;margin-bottom:24px;display:grid;position:relative}.call-avatar-wrap.pulse .call-ring{border:2px solid color-mix(in srgb, var(--accent) 45%, transparent);pointer-events:none;border-radius:50%;animation:2s cubic-bezier(.215,.61,.355,1) infinite call-ring-pulse;position:absolute;inset:-16px}.call-avatar-wrap.pulse .call-ring.delay{animation-delay:.6s}.call-kind{text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin:0 0 6px;font-size:.82rem;font-weight:700}.call-name{letter-spacing:-.02em;color:#fff;margin:0 0 8px;font-size:1.65rem;font-weight:750}.call-status{color:#ffffffbf;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff14;border-radius:20px;align-items:center;gap:6px;margin:0;padding:4px 14px;font-size:.95rem;display:flex}.call-status-live-dot{background:#4caf50;border-radius:50%;width:8px;height:8px;animation:1.5s ease-in-out infinite live-dot-pulse;box-shadow:0 0 8px #4caf50}@keyframes live-dot-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.85)}}.call-actions{z-index:2;justify-content:center;align-items:center;gap:28px;width:100%;padding-bottom:12px;display:flex}.call-action{flex-direction:column;align-items:center;gap:8px;display:flex}.call-btn{cursor:pointer;color:#fff;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:64px;height:64px;transition:transform var(--motion-fast) var(--ease-spring), background-color var(--motion-fast) ease, box-shadow var(--motion-fast) ease;-webkit-tap-highlight-color:transparent;background:#ffffff1f;border:none;border-radius:50%;place-items:center;display:grid}.call-btn:hover{background:#fff3;transform:scale(1.08)}.call-btn:active{transform:scale(.92)}.call-btn.accept{background:linear-gradient(135deg,#2e7d32,#43a047);animation:1.8s infinite accept-btn-pulse;box-shadow:0 6px 20px #2e7d3273}@keyframes accept-btn-pulse{0%,to{transform:scale(1);box-shadow:0 6px 20px #2e7d3273}50%{transform:scale(1.06);box-shadow:0 10px 28px #43a047a6}}.call-btn.reject{background:linear-gradient(135deg,#d32f2f,#e53935);box-shadow:0 6px 20px #d32f2f73}.call-btn.mute.on,.call-btn.cam.on{color:#e57373;background:#e5737340;border:1px solid #e5737366}.call-btn-label{color:#ffffffb3;font-size:.78rem;font-weight:550}.call-overlay.video .call-remote-video{object-fit:cover;z-index:0;width:100%;height:100%;position:absolute;inset:0}.call-overlay.video .call-local-video{top:calc(20px + env(safe-area-inset-top,0px));object-fit:cover;z-index:10;background:#000;border:2px solid #ffffff40;border-radius:16px;width:110px;height:155px;position:absolute;right:20px;box-shadow:0 8px 24px #0006}.pull-indicator{top:calc(var(--header-h) + var(--safe-top) + 8px);z-index:60;background:color-mix(in srgb, var(--bg-elevated) 88%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:38px;height:38px;box-shadow:0 4px 16px color-mix(in srgb, var(--text) 12%, transparent);pointer-events:none;transition:transform var(--motion-fast) var(--ease-spring);border-radius:50%;place-items:center;display:grid;position:absolute;left:50%}.pull-spinner{border:2px solid color-mix(in srgb, var(--accent) 30%, transparent);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.6s linear infinite pull-spin}@keyframes pull-spin{to{transform:rotate(360deg)}}.wn-backdrop{z-index:999;-webkit-backdrop-filter:blur(12px);background:#00000073;place-items:center;padding:20px;animation:.28s cubic-bezier(.16,1,.3,1) both wn-fade;display:grid;position:fixed;inset:0}.wn-card{background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--border) 80%, transparent);width:min(100%,420px);max-height:min(84dvh,580px);animation:wn-slide .34s var(--ease-spring) both;border-radius:24px;flex-direction:column;padding:24px;display:flex;box-shadow:0 20px 50px #00000059}.wn-header{align-items:center;gap:12px;margin-bottom:18px;display:flex}.wn-sparkle{background:color-mix(in srgb, var(--accent) 16%, transparent);width:42px;height:42px;color:var(--accent);border-radius:14px;flex-shrink:0;place-items:center;display:grid}.wn-title{letter-spacing:-.01em;margin:0;font-size:1.25rem;font-weight:700}.wn-list{flex-direction:column;flex:1;gap:12px;margin:0 0 20px;padding:0;list-style:none;display:flex;overflow-y:auto}.wn-entry{color:var(--text);align-items:flex-start;gap:12px;font-size:.92rem;line-height:1.4;display:flex}.wn-entry-icon{flex-shrink:0;font-size:1.15rem;line-height:1.2}.wn-dismiss{background:var(--accent);color:#fff;width:100%;min-height:48px;box-shadow:0 4px 16px color-mix(in srgb, var(--accent) 35%, transparent);border:none;border-radius:14px;font-size:1rem;font-weight:600}@keyframes wn-fade{0%{opacity:0}to{opacity:1}}@keyframes wn-slide{0%{opacity:0;transform:translateY(20px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}
