@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap);:root{--bg:#0a0a0f;--bg-elevated:#101017;--surface:#16161f;--surface-2:#1d1d29;--surface-3:#262635;--border:#ffffff14;--border-strong:#ffffff29;--text:#f2f2f5;--text-dim:#9d9dae;--text-faint:#6a6a7b;--brand:#ff4d6d;--brand-hover:#ff6480;--brand-soft:#ff4d6d1f;--accent:#ff9142;--brand-gradient:linear-gradient(135deg,#ff4d6d,#ff9142);--success:#34d399;--success-soft:#34d3991f;--danger:#f0576f;--danger-soft:#f0576f1f;--info:#7c8cff;--info-soft:#7c8cff1f;--radius-sm:10px;--radius:14px;--radius-lg:20px;--radius-xl:28px;--radius-full:999px;--shadow-sm:0 1px 2px #0006;--shadow:0 4px 16px #0006;--shadow-lg:0 16px 48px #0000008c;--app-max:560px;--nav-height:64px;--focus-ring:0 0 0 3px #ff4d6d73}*,:after,:before{box-sizing:border-box}body,html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;background:#0a0a0f;background:var(--bg);color:#f2f2f5;color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5;margin:0;padding:0}body{min-height:100vh;overscroll-behavior-y:none}h1,h2,h3,h4{font-weight:700;letter-spacing:-.02em;line-height:1.25;margin:0}p{margin:0}img{display:block;max-width:100%}button{color:inherit;cursor:pointer}button,input,textarea{font-family:inherit;font-size:inherit}:focus-visible{border-radius:10px;border-radius:var(--radius-sm);box-shadow:0 0 0 3px #ff4d6d73;box-shadow:var(--focus-ring);outline:none}::selection{background:#ff4d6d1f;background:var(--brand-soft)}*{scrollbar-color:#262635 #0000;scrollbar-color:var(--surface-3) #0000;scrollbar-width:thin}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-thumb{background:#262635;background:var(--surface-3);border-radius:999px;border-radius:var(--radius-full)}::-webkit-scrollbar-track{background:#0000}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.btn{align-items:center;border:1px solid #0000;border-radius:14px;border-radius:var(--radius);display:inline-flex;font-size:.95rem;font-weight:600;gap:8px;justify-content:center;letter-spacing:-.01em;padding:12px 20px;transition:background-color .15s ease,border-color .15s ease,color .15s ease,opacity .15s ease}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:#ff4d6d;background:var(--brand);color:#fff}.btn-primary:hover:not(:disabled){background:#ff6480;background:var(--brand-hover)}.btn-gradient{background:linear-gradient(135deg,#ff4d6d,#ff9142);background:var(--brand-gradient);color:#fff}.btn-gradient:hover:not(:disabled){filter:brightness(1.08)}.btn-secondary{background:#1d1d29;background:var(--surface-2);border-color:#ffffff14;border-color:var(--border);color:#f2f2f5;color:var(--text)}.btn-secondary:hover:not(:disabled){background:#262635;background:var(--surface-3);border-color:#ffffff29;border-color:var(--border-strong)}.btn-ghost{background:#0000;color:#9d9dae;color:var(--text-dim)}.btn-ghost:hover:not(:disabled){background:#1d1d29;background:var(--surface-2);color:#f2f2f5;color:var(--text)}.btn-danger{background:#f0576f1f;background:var(--danger-soft);border-color:#f0576f4d;color:#ff8a9c}.btn-danger:hover:not(:disabled){background:#f0576f33}.btn-block{width:100%}.btn-lg{border-radius:20px;border-radius:var(--radius-lg);font-size:1rem;padding:15px 24px}.btn-sm{border-radius:10px;border-radius:var(--radius-sm);font-size:.85rem;padding:8px 14px}.icon-btn{align-items:center;background:#1d1d29;background:var(--surface-2);border:1px solid #ffffff14;border:1px solid var(--border);border-radius:999px;border-radius:var(--radius-full);color:#9d9dae;color:var(--text-dim);display:inline-flex;flex-shrink:0;height:40px;justify-content:center;transition:background-color .15s ease,color .15s ease;width:40px}.icon-btn:hover:not(:disabled){background:#262635;background:var(--surface-3);color:#f2f2f5;color:var(--text)}.icon-btn:disabled{cursor:not-allowed;opacity:.45}.icon-btn-plain{background:#0000;border-color:#0000}.icon-btn-plain:hover:not(:disabled){background:#1d1d29;background:var(--surface-2)}.link-btn{background:none;border:none;color:#ff4d6d;color:var(--brand);font-size:.9rem;font-weight:600;padding:0}.link-btn:hover{color:#ff6480;color:var(--brand-hover);text-decoration:underline}.spinner{animation:spin .6s linear infinite;border:2px solid #ffffff40;border-radius:50%;border-top-color:initial;display:inline-block;flex-shrink:0;height:18px;width:18px}.spinner-lg{border-width:3px;height:30px;width:30px}@keyframes spin{to{transform:rotate(1turn)}}.loading-block{align-items:center;color:#6a6a7b;color:var(--text-faint);display:flex;flex-direction:column;font-size:.9rem;gap:14px;justify-content:center;padding:64px 24px}.card{background:#16161f;background:var(--surface);border:1px solid #ffffff14;border:1px solid var(--border);border-radius:20px;border-radius:var(--radius-lg);padding:20px}.section-label{color:#6a6a7b;color:var(--text-faint);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.divider{background:#ffffff14;background:var(--border);border:0;height:1px;margin:0}.badge{align-items:center;border-radius:999px;border-radius:var(--radius-full);display:inline-flex;font-size:.68rem;font-weight:700;gap:4px;letter-spacing:.04em;padding:2px 8px;text-transform:uppercase;white-space:nowrap}.badge-ai{background:#7c8cff1f;background:var(--info-soft);border:1px solid #7c8cff47;color:#a5b0ff}.badge-verified{background:#34d3991f;background:var(--success-soft);border:1px solid #34d39947;color:#34d399;color:var(--success)}.presence{align-items:center;color:#9d9dae;color:var(--text-dim);display:inline-flex;font-size:.8rem;gap:6px}.presence-dot{background:#6a6a7b;background:var(--text-faint);border-radius:50%;flex-shrink:0;height:7px;width:7px}.presence-dot.online{background:#34d399;background:var(--success);box-shadow:0 0 0 3px #34d3991f;box-shadow:0 0 0 3px var(--success-soft)}.avatar{align-items:center;background:linear-gradient(135deg,#ff4d6d,#ff9142);background:var(--brand-gradient);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-weight:700;justify-content:center;overflow:hidden;position:relative;-webkit-user-select:none;user-select:none}.avatar img{height:100%;object-fit:cover;width:100%}.avatar-ring{box-shadow:0 0 0 2px #0a0a0f,0 0 0 4px #ff4d6d1f;box-shadow:0 0 0 2px var(--bg),0 0 0 4px var(--brand-soft)}.field{display:flex;flex-direction:column;gap:7px}.field-label{color:#9d9dae;color:var(--text-dim);font-size:.82rem;font-weight:600}.field-input-wrap{align-items:center;display:flex;position:relative}.field-icon{left:14px;pointer-events:none}.field-action,.field-icon{color:#6a6a7b;color:var(--text-faint);display:flex;position:absolute}.field-action{align-items:center;background:none;border:none;border-radius:10px;border-radius:var(--radius-sm);height:32px;justify-content:center;right:8px;width:32px}.field-action:hover,.input{color:#f2f2f5;color:var(--text)}.input{background:#101017;background:var(--bg-elevated);border:1px solid #ffffff14;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius);outline:none;padding:13px 14px;transition:border-color .15s ease,background-color .15s ease;width:100%}.input::placeholder{color:#6a6a7b;color:var(--text-faint)}.input:hover:not(:focus){border-color:#ffffff29;border-color:var(--border-strong)}.input:focus{background:#16161f;background:var(--surface);border-color:#ff4d6d;border-color:var(--brand);box-shadow:0 0 0 3px #ff4d6d73;box-shadow:var(--focus-ring)}.input-with-icon{padding-left:44px}.input-with-action{padding-right:44px}textarea.input{line-height:1.55;resize:none}.field-hint{color:#6a6a7b;color:var(--text-faint);font-size:.76rem;justify-content:space-between}.alert,.field-hint{display:flex;gap:10px}.alert{align-items:flex-start;border-radius:14px;border-radius:var(--radius);font-size:.88rem;line-height:1.45;padding:12px 14px}.alert svg{flex-shrink:0;margin-top:1px}.alert-error{background:#f0576f1f;background:var(--danger-soft);border:1px solid #f0576f47;color:#ff9caa}.alert-success{background:#34d3991f;background:var(--success-soft);border:1px solid #34d39947;color:#6ee7b7}.alert-info{background:#7c8cff1f;background:var(--info-soft);border:1px solid #7c8cff47;color:#b3bbff}.toast-host{bottom:84px;bottom:calc(var(--nav-height) + 20px);left:50%;max-width:400px;pointer-events:none;position:fixed;transform:translateX(-50%);width:calc(100% - 32px);z-index:200}.toast{align-items:center;background:#262635;background:var(--surface-3);border:1px solid #ffffff29;border:1px solid var(--border-strong);border-radius:14px;border-radius:var(--radius);box-shadow:0 16px 48px #0000008c;box-shadow:var(--shadow-lg);color:#f2f2f5;color:var(--text);display:flex;font-size:.9rem;font-weight:500;gap:10px;padding:12px 16px;pointer-events:auto}.toast-success svg{color:#34d399;color:var(--success)}.toast-error svg{color:#f0576f;color:var(--danger)}.empty-state{flex-direction:column;gap:8px;padding:56px 28px;text-align:center}.empty-state,.empty-state-icon{align-items:center;display:flex}.empty-state-icon{background:#1d1d29;background:var(--surface-2);border:1px solid #ffffff14;border:1px solid var(--border);border-radius:50%;color:#6a6a7b;color:var(--text-faint);height:60px;justify-content:center;margin-bottom:8px;width:60px}.empty-state-title{font-size:1.05rem;font-weight:700}.empty-state-text{color:#9d9dae;color:var(--text-dim);font-size:.9rem;line-height:1.6;max-width:300px}.empty-state .btn{margin-top:14px}.app-shell{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.screen{display:flex;flex:1 1;flex-direction:column;min-height:0}.screen-body{flex:1 1;margin:0 auto;max-width:560px;max-width:var(--app-max);padding:0 16px 96px;padding:0 16px calc(var(--nav-height) + 32px);width:100%}.screen-body-flush{padding-left:0;padding-right:0}.screen-body-full{padding-bottom:24px}.topbar{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#0a0a0fd9;border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:50}.topbar-inner{align-items:center;display:flex;gap:12px;margin:0 auto;max-width:560px;max-width:var(--app-max);min-height:62px;padding:12px 16px;width:100%}.topbar-title{flex:1 1;font-size:1.15rem;font-weight:800;min-width:0}.topbar-subtitle{color:#9d9dae;color:var(--text-dim);font-size:.78rem;font-weight:500}.brand-mark{font-size:1.2rem;font-weight:800;gap:9px;letter-spacing:-.03em}.brand-mark,.brand-mark-icon{align-items:center;display:flex}.brand-mark-icon{background:linear-gradient(135deg,#ff4d6d,#ff9142);background:var(--brand-gradient);border-radius:9px;color:#fff;height:30px;justify-content:center;width:30px}.bottom-nav{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#0a0a0feb;border-top:1px solid #ffffff14;border-top:1px solid var(--border);bottom:0;left:0;padding-bottom:env(safe-area-inset-bottom);position:fixed;right:0;z-index:100}.bottom-nav-inner{display:flex;margin:0 auto;max-width:560px;max-width:var(--app-max);width:100%}.nav-item{align-items:center;background:none;border:none;color:#6a6a7b;color:var(--text-faint);display:flex;flex:1 1;flex-direction:column;font-size:.68rem;font-weight:600;gap:3px;height:64px;height:var(--nav-height);justify-content:center;position:relative;transition:color .15s ease}.nav-item:hover{color:#9d9dae;color:var(--text-dim)}.nav-item.active{color:#ff4d6d;color:var(--brand)}.auth-page{align-items:center;background:radial-gradient(900px 500px at 15% -10%,#ff4d6d24,#0000 70%),radial-gradient(800px 500px at 100% 110%,#ff91421a,#0000 70%),#0a0a0f;background:radial-gradient(900px 500px at 15% -10%,#ff4d6d24,#0000 70%),radial-gradient(800px 500px at 100% 110%,#ff91421a,#0000 70%),var(--bg);display:flex;justify-content:center;min-height:100vh;min-height:100dvh;padding:24px 16px}.auth-card{background:#16161f;background:var(--surface);border:1px solid #ffffff14;border:1px solid var(--border);border-radius:28px;border-radius:var(--radius-xl);box-shadow:0 16px 48px #0000008c;box-shadow:var(--shadow-lg);display:flex;max-width:940px;min-height:580px;overflow:hidden;width:100%}.auth-hero{flex:1 1;min-width:0;overflow:hidden;position:relative}.auth-hero img{height:100%;object-fit:cover;object-position:center 20%;width:100%}.auth-hero-overlay{background:linear-gradient(160deg,#0a0a0f8c,#0a0a0f26 45%,#0a0a0fe6);display:flex;flex-direction:column;inset:0;justify-content:space-between;padding:28px;position:absolute}.auth-hero-headline{font-size:1.8rem;font-weight:800;letter-spacing:-.03em;line-height:1.2}.auth-hero-sub{color:#ffffffb3;font-size:.92rem;line-height:1.6;margin-top:10px;max-width:320px}.auth-hero-points{display:flex;flex-direction:column;gap:10px;margin-top:18px}.auth-hero-point{align-items:center;color:#ffffffd1;display:flex;font-size:.86rem;gap:9px}.auth-hero-point svg{color:#ff4d6d;color:var(--brand);flex-shrink:0}.auth-panel{background:#101017;background:var(--bg-elevated);border-left:1px solid #ffffff14;border-left:1px solid var(--border);display:flex;flex:0 0 420px;flex-direction:column;overflow-y:auto;padding:40px 36px}.auth-heading{font-size:1.6rem;font-weight:800;margin-bottom:6px}.auth-sub{color:#9d9dae;color:var(--text-dim);font-size:.92rem;line-height:1.55;margin-bottom:24px}.auth-tabs{background:#1d1d29;background:var(--surface-2);border:1px solid #ffffff14;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius);display:flex;gap:4px;margin-bottom:26px;padding:4px}.auth-tab{background:none;border:none;border-radius:10px;border-radius:var(--radius-sm);color:#9d9dae;color:var(--text-dim);flex:1 1;font-size:.9rem;font-weight:600;padding:9px 0;transition:background-color .15s ease,color .15s ease}.auth-tab:hover{color:#f2f2f5;color:var(--text)}.auth-tab.active{background:#ff4d6d;background:var(--brand);color:#fff}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-footnote{color:#6a6a7b;color:var(--text-faint);font-size:.8rem;line-height:1.6;margin-top:22px;text-align:center}.auth-notice{flex-direction:column;gap:12px;padding:12px 0;text-align:center}.auth-notice,.auth-notice-icon{align-items:center;display:flex}.auth-notice-icon{background:#ff4d6d1f;background:var(--brand-soft);border-radius:50%;color:#ff4d6d;color:var(--brand);height:56px;justify-content:center;width:56px}.auth-notice-title{font-size:1.15rem;font-weight:700}.auth-notice-text{color:#9d9dae;color:var(--text-dim);font-size:.9rem;line-height:1.6}@media (max-width:860px){.auth-card{flex-direction:column;max-width:460px;min-height:0}.auth-hero{flex:none;height:190px}.auth-hero-overlay{justify-content:flex-end;padding:20px}.auth-hero-headline{font-size:1.4rem}.auth-hero-points,.auth-hero-sub{display:none}.auth-panel{border-left:none;border-top:1px solid #ffffff14;border-top:1px solid var(--border);flex:1 1;padding:28px 22px 32px}}.notice-bar{align-items:center;border-radius:14px;border-radius:var(--radius);display:flex;font-size:.85rem;gap:10px;line-height:1.4;margin:12px auto 0;max-width:560px;max-width:var(--app-max);padding:11px 14px;width:100%}.notice-bar-text{flex:1 1;min-width:0}.notice-bar-close{background:none;border:none;color:inherit;display:flex;opacity:.7;padding:2px}.notice-bar-close:hover{opacity:1}.segmented{background:#1d1d29;background:var(--surface-2);border:1px solid #ffffff14;border:1px solid var(--border);border-radius:14px;border-radius:var(--radius);display:flex;gap:4px;padding:4px}.segmented-item{align-items:center;background:none;border:none;border-radius:10px;border-radius:var(--radius-sm);color:#9d9dae;color:var(--text-dim);display:inline-flex;flex:1 1;font-size:.86rem;font-weight:600;gap:6px;justify-content:center;padding:8px 12px;transition:background-color .15s ease,color .15s ease}.segmented-item.active,.segmented-item:hover{color:#f2f2f5;color:var(--text)}.segmented-item.active{background:#262635;background:var(--surface-3)}.chip-row{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.chip-row::-webkit-scrollbar{display:none}.chip{background:#1d1d29;background:var(--surface-2);border:1px solid #ffffff14;border:1px solid var(--border);border-radius:999px;border-radius:var(--radius-full);color:#9d9dae;color:var(--text-dim);flex-shrink:0;font-size:.82rem;font-weight:600;padding:7px 14px;transition:background-color .15s ease,color .15s ease,border-color .15s ease;white-space:nowrap}.chip:hover{border-color:#ffffff29;border-color:var(--border-strong);color:#f2f2f5;color:var(--text)}.chip.active{background:#ff4d6d1f;background:var(--brand-soft);border-color:#ff4d6d66;color:#ff4d6d;color:var(--brand)}.discover-toolbar{display:flex;flex-direction:column;gap:12px;padding:16px 0}.deck{aspect-ratio:3/4;margin:4px auto 0;max-width:400px;position:relative;width:100%}.deck-hint{color:#6a6a7b;color:var(--text-faint);font-size:.8rem;margin-top:18px;text-align:center}.swipe-card{background:#1d1d29;background:var(--surface-2);border:1px solid #ffffff14;border:1px solid var(--border);border-radius:28px;border-radius:var(--radius-xl);box-shadow:0 16px 48px #0000008c;box-shadow:var(--shadow-lg);inset:0;overflow:hidden;position:absolute;user-select:none;-webkit-user-select:none}.swipe-card-top{cursor:grab;touch-action:none}.swipe-card-top:active{cursor:grabbing}.swipe-card-behind{pointer-events:none}.swipe-card-media{background:linear-gradient(135deg,#ff4d6d,#ff9142);background:var(--brand-gradient);inset:0;position:absolute}.swipe-card-media img{height:100%;object-fit:cover;pointer-events:none;width:100%}.swipe-card-fallback{align-items:center;color:#fff;display:flex;font-size:4.5rem;font-weight:800;height:100%;justify-content:center;width:100%}.swipe-card-scrim{background:linear-gradient(0deg,#08080cf0 0,#08080c80 30%,#0000 62%);inset:0}.swipe-card-info,.swipe-card-scrim{pointer-events:none;position:absolute}.swipe-card-info{bottom:0;left:0;padding:22px 22px 24px;right:0}.swipe-card-name{align-items:center;display:flex;font-size:1.5rem;font-weight:800;gap:9px;letter-spacing:-.02em}.swipe-card-bio{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#ffffffbf;display:-webkit-box;font-size:.9rem;line-height:1.5;margin-top:7px;overflow:hidden}.swipe-card-meta{align-items:center;display:flex;gap:12px;margin-top:12px}.swipe-card-photocount{align-items:center;color:#fff9;display:inline-flex;font-size:.78rem;gap:5px}.swipe-stamp{border:3px solid;border-radius:14px;border-radius:var(--radius);font-size:1.15rem;font-weight:800;letter-spacing:.1em;padding:7px 16px;pointer-events:none;position:absolute;text-transform:uppercase;top:26px}.swipe-stamp-like{color:#34d399;color:var(--success);left:22px;transform:rotate(-14deg)}.swipe-stamp-nope{color:#f0576f;color:var(--danger);right:22px;transform:rotate(14deg)}.deck-actions{gap:20px;padding:24px 0 8px}.deck-actions,.deck-btn{align-items:center;display:flex;justify-content:center}.deck-btn{background:#1d1d29;background:var(--surface-2);border:1px solid #ffffff29;border:1px solid var(--border-strong);border-radius:50%;color:#9d9dae;color:var(--text-dim);height:60px;transition:background-color .15s ease,color .15s ease,border-color .15s ease;width:60px}.deck-btn:hover:not(:disabled){background:#262635;background:var(--surface-3)}.deck-btn:disabled{cursor:not-allowed;opacity:.4}.deck-btn-pass:hover:not(:disabled){border-color:#f0576f80;color:#f0576f;color:var(--danger)}.deck-btn-like{border-color:#0000;color:#fff;height:68px;width:68px}.deck-btn-like,.deck-btn-like:hover:not(:disabled){background:linear-gradient(135deg,#ff4d6d,#ff9142);background:var(--brand-gradient)}.deck-btn-like:hover:not(:disabled){filter:brightness(1.1)}.deck-btn-info{height:48px;width:48px}.people-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));padding:4px 0 8px}.person-card{background:#16161f;background:var(--surface);border:1px solid #ffffff14;border:1px solid var(--border);border-radius:20px;border-radius:var(--radius-lg);display:flex;flex-direction:column;overflow:hidden;padding:0;text-align:left;transition:border-color .15s ease,background-color .15s ease}.person-card:hover{background:#1d1d29;background:var(--surface-2);border-color:#ffffff29;border-color:var(--border-strong)}.person-card-media{aspect-ratio:1;background:linear-gradient(135deg,#ff4d6d,#ff9142);background:var(--brand-gradient);position:relative}.person-card-media img{height:100%;object-fit:cover;width:100%}.person-card-fallback{align-items:center;color:#fff;display:flex;font-size:2.2rem;font-weight:800;height:100%;justify-content:center;width:100%}.person-card-badge{left:8px;position:absolute;top:8px}.person-card-online{background:#34d399;background:var(--success);border-radius:50%;box-shadow:0 0 0 2px #08080c99;height:10px;position:absolute;right:10px;top:10px;width:10px}.person-card-body{display:flex;flex:1 1;flex-direction:column;gap:4px;padding:11px 12px 12px}.person-card-name{font-size:.94rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.person-card-bio{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#9d9dae;color:var(--text-dim);display:-webkit-box;flex:1 1;font-size:.8rem;line-height:1.45;min-height:34px;overflow:hidden}.person-card-actions{display:flex;gap:6px;margin-top:6px}.conversation-list{display:flex;flex-direction:column;padding:4px 0}.conversation-row{align-items:center;background:none;border:none;border-radius:14px;border-radius:var(--radius);display:flex;gap:13px;padding:12px 14px;text-align:left;transition:background-color .15s ease;width:100%}.conversation-row:hover{background:#16161f;background:var(--surface)}.conversation-body{flex:1 1;min-width:0}.conversation-head{align-items:baseline;display:flex;gap:10px;justify-content:space-between}.conversation-name{align-items:center;display:flex;font-size:.96rem;font-weight:700;gap:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-time{color:#6a6a7b;color:var(--text-faint);flex-shrink:0;font-size:.74rem}.conversation-preview{color:#9d9dae;color:var(--text-dim);font-size:.85rem;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.avatar-presence{background:#34d399;background:var(--success);border:2.5px solid #0a0a0f;border:2.5px solid var(--bg);border-radius:50%;bottom:0;height:13px;position:absolute;right:0;width:13px}.avatar-tag{background:#7c8cff;background:var(--info);border:2px solid #0a0a0f;border:2px solid var(--bg);border-radius:999px;border-radius:var(--radius-full);bottom:-3px;color:#fff;font-size:.55rem;font-weight:800;letter-spacing:.03em;padding:1px 5px;position:absolute;right:-3px}.chat-screen{display:flex;flex-direction:column;height:100vh;height:100dvh}.chat-scroll{flex:1 1;overflow-y:auto;overscroll-behavior:contain}.chat-thread{display:flex;flex-direction:column;gap:3px;margin:0 auto;max-width:560px;max-width:var(--app-max);padding:18px 16px 8px;width:100%}.chat-day{align-self:center;background:#1d1d29;background:var(--surface-2);border-radius:999px;border-radius:var(--radius-full);color:#6a6a7b;color:var(--text-faint);font-size:.72rem;font-weight:600;margin:16px 0 12px;padding:4px 12px}.bubble-row{display:flex;max-width:100%}.bubble-row-own{justify-content:flex-end}.bubble-row+.bubble-row-start{margin-top:10px}.bubble{background:#1d1d29;background:var(--surface-2);border:1px solid #ffffff14;border:1px solid var(--border);border-radius:20px;border-radius:var(--radius-lg);font-size:.94rem;line-height:1.5;max-width:78%;overflow-wrap:anywhere;padding:10px 14px;position:relative;white-space:pre-wrap}.bubble-own{background:#ff4d6d;background:var(--brand);border-color:#0000;color:#fff}.bubble-start{border-top-left-radius:6px}.bubble-own.bubble-start{border-top-left-radius:20px;border-top-left-radius:var(--radius-lg);border-top-right-radius:6px}.bubble-pending{opacity:.62}.bubble-failed{background:#f0576f1f;background:var(--danger-soft);border-color:#f0576f66;color:#ffb3bd}.bubble-meta{align-items:center;display:flex;font-size:.68rem;gap:5px;justify-content:flex-end;margin-top:4px;opacity:.65}.bubble-retry{background:none;border:none;color:inherit;font-size:.7rem;font-weight:700;padding:0;text-decoration:underline}.typing{align-items:center;display:inline-flex;gap:4px;padding:13px 16px}.typing span{animation:typingBounce 1.2s ease-in-out infinite;background:#6a6a7b;background:var(--text-faint);border-radius:50%;height:6px;width:6px}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}@keyframes typingBounce{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.composer{background:#101017;background:var(--bg-elevated);border-top:1px solid #ffffff14;border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom)}.composer-inner{align-items:flex-end;display:flex;gap:10px;margin:0 auto;max-width:560px;max-width:var(--app-max);padding:12px 16px;width:100%}.composer-input{background:#1d1d29;background:var(--surface-2);border:1px solid #ffffff14;border:1px solid var(--border);border-radius:20px;border-radius:var(--radius-lg);color:#f2f2f5;color:var(--text);flex:1 1;line-height:1.5;max-height:130px;outline:none;overflow-y:auto;padding:11px 15px;resize:none;transition:border-color .15s ease}.composer-input::placeholder{color:#6a6a7b;color:var(--text-faint)}.composer-input:focus{border-color:#ff4d6d;border-color:var(--brand)}.composer-send{align-items:center;background:#ff4d6d;background:var(--brand);border:none;border-radius:50%;color:#fff;display:flex;flex-shrink:0;height:44px;justify-content:center;transition:background-color .15s ease,opacity .15s ease;width:44px}.composer-send:hover:not(:disabled){background:#ff6480;background:var(--brand-hover)}.composer-send:disabled{background:#262635;background:var(--surface-3);color:#6a6a7b;color:var(--text-faint);cursor:not-allowed}.profile-hero{align-items:center;display:flex;flex-direction:column;gap:4px;padding:26px 0 22px;text-align:center}.avatar-edit{position:relative}.avatar-edit-btn{align-items:center;background:#ff4d6d;background:var(--brand);border:3px solid #0a0a0f;border:3px solid var(--bg);border-radius:50%;bottom:-2px;color:#fff;display:flex;height:34px;justify-content:center;position:absolute;right:-2px;transition:background-color .15s ease;width:34px}.avatar-edit-btn:hover{background:#ff6480;background:var(--brand-hover)}.avatar-edit-btn input{display:none}.profile-name{font-size:1.35rem;font-weight:800;margin-top:14px}.profile-email{color:#9d9dae;color:var(--text-dim);font-size:.88rem}.profile-pills{display:flex;flex-wrap:wrap;gap:7px;justify-content:center;margin-top:12px}.stack{display:flex;flex-direction:column;gap:14px}.card-head{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.bio-text{color:#f2f2f5;color:var(--text);font-size:.94rem;line-height:1.65;overflow-wrap:anywhere;white-space:pre-wrap}.bio-empty{color:#6a6a7b;color:var(--text-faint);font-style:italic}.photo-grid{grid-gap:9px;display:grid;gap:9px;grid-template-columns:repeat(3,1fr)}.photo-slot{aspect-ratio:1;background:#1d1d29;background:var(--surface-2);border-radius:14px;border-radius:var(--radius);overflow:hidden;position:relative}.photo-slot img{height:100%;object-fit:cover;width:100%}.photo-slot-empty{align-items:center;background:#101017;background:var(--bg-elevated);border:1.5px dashed #ffffff29;border:1.5px dashed var(--border-strong);color:#6a6a7b;color:var(--text-faint);display:flex;justify-content:center}.photo-slot-add{cursor:pointer;transition:border-color .15s ease,color .15s ease}.photo-slot-add:hover{border-color:#ff4d6d;border-color:var(--brand);color:#ff4d6d;color:var(--brand)}.photo-slot-add input{display:none}.photo-remove{align-items:center;background:#08080cbf;border:1px solid #ffffff29;border:1px solid var(--border-strong);border-radius:50%;color:#fff;display:flex;height:26px;justify-content:center;position:absolute;right:6px;top:6px;transition:background-color .15s ease;width:26px}.photo-remove:hover{background:#f0576f;background:var(--danger)}.photo-slot-busy{align-items:center;background:#08080c99;color:#fff;display:flex;inset:0;justify-content:center;position:absolute}.viewed-hero{aspect-ratio:4/5;background:linear-gradient(135deg,#ff4d6d,#ff9142);background:var(--brand-gradient);max-height:62vh;overflow:hidden;position:relative}.viewed-hero img{height:100%;object-fit:cover;width:100%}.viewed-hero-fallback{align-items:center;color:#fff;display:flex;font-size:5rem;font-weight:800;height:100%;justify-content:center;width:100%}.viewed-hero-scrim{background:linear-gradient(0deg,#08080cf2 0,#08080c59 26%,#0000 55%);inset:0;pointer-events:none;position:absolute}.viewed-hero-info{bottom:0;left:0;padding:20px;position:absolute;right:0}.viewed-hero-name{align-items:center;display:flex;font-size:1.7rem;font-weight:800;gap:10px;letter-spacing:-.02em}.carousel-nav{align-items:center;background:#08080c8c;border:1px solid #ffffff29;border:1px solid var(--border-strong);border-radius:50%;color:#fff;display:flex;height:40px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);width:40px}.carousel-nav:hover{background:#08080ccc}.carousel-prev{left:12px}.carousel-next{right:12px}.carousel-dots{display:flex;gap:4px;left:12px;position:absolute;right:12px;top:12px}.carousel-dot{background:#ffffff47;border:none;border-radius:999px;border-radius:var(--radius-full);flex:1 1;height:3px;padding:0}.carousel-dot.active{background:#fff}.viewed-back{background:#08080c99;border-color:#ffffff29;border-color:var(--border-strong);color:#fff;left:14px;position:absolute;top:14px;z-index:2}.viewed-back:hover{background:#08080cd9;color:#fff}.action-bar{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#0a0a0fe6;border-top:1px solid #ffffff14;border-top:1px solid var(--border);bottom:0;padding-bottom:env(safe-area-inset-bottom);position:-webkit-sticky;position:sticky;z-index:10}.action-bar-inner{display:flex;gap:10px;margin:0 auto;max-width:560px;max-width:var(--app-max);padding:12px 16px;width:100%}.lightbox{align-items:center;background:#040408f0;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:300}.lightbox img{border-radius:14px;border-radius:var(--radius);max-height:88vh;max-width:100%;object-fit:contain}.lightbox-close{background:#ffffff1a;border-color:#ffffff29;border-color:var(--border-strong);color:#fff;position:absolute;right:18px;top:18px}.lightbox-counter{bottom:22px;color:#9d9dae;color:var(--text-dim);font-size:.82rem;left:50%;position:absolute;transform:translateX(-50%)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
/*# sourceMappingURL=main.3eb302f6.css.map*/