﻿.desktop-home {
    display: block;
    background: #e8e0f1;
    color: #130c1c;
}

.mobile-home { display: none; }

.desktop-shell {
    width: min(1120px, 92vw);
    margin: 0 auto;
}

.desktop-hero {
    background: #d8c8ea;
    padding: 50px 0 38px;
}

.desktop-hero-grid {
    display: grid;
    grid-template-columns: 1fr 430px;
    gap: 46px;
    align-items: center;
}

.desktop-hero-copy h1 {
    margin: 0;
    max-width: 620px;
    color: #be002d;
    font-size: clamp(44px, 5vw, 78px);
    font-weight: 800;
    line-height: .95;
    letter-spacing: -.8px;
}

.desktop-hero-copy p {
    margin: 16px 0 0;
    max-width: 520px;
    font-size: 20px;
    line-height: 1.34;
    color: #1d1628;
}

.desktop-primary-btn {
    margin-top: 36px;
    min-width: 122px;
    height: 52px;
    border: 0;
    border-radius: 999px;
    background: #111;
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
}

.desktop-hero-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 36px;
    flex-wrap: wrap;
}

.desktop-hero-actions .desktop-primary-btn {
    margin-top: 0;
}

.desktop-hero-or {
    font-size: 14px;
    color: #2c2238;
}

.desktop-hero-signin-btn {
    min-width: 122px;
    height: 52px;
    border-radius: 999px;
    border: 2px solid #17111e;
    background: transparent;
    color: #111;
    font-size: 18px;
    font-weight: 700;
    cursor: pointer;
}

.desktop-hero-copy small {
    display: block;
    margin-top: 64px;
    max-width: 620px;
    color: #2c2238;
    font-size: 14px;
    line-height: 1.45;
}

.desktop-hero-copy small a {
    color: inherit;
    font-weight: 700;
}

.desktop-auth-overlay {
    position: fixed;
    inset: 0;
    z-index: 1200;
    display: none;
    background: #d2c3e6;
}

.desktop-auth-overlay.show {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding-top: 14vh;
}

.desktop-auth-overlay.show-email .desktop-auth-panel {
    display: none;
}

.desktop-email-onboarding {
    display: none;
    width: min(660px, 94vw);
}

.desktop-auth-overlay.show-email .desktop-email-onboarding {
    display: block;
}

.desktop-auth-panel {
    width: min(640px, 92vw);
    text-align: center;
}

.desktop-auth-close {
    position: fixed;
    top: 18px;
    right: 18px;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 50%;
    background: rgba(0, 0, 0, .08);
    color: #2b2334;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
}

.desktop-auth-wordmark {
    margin: 0;
    color: #cc0531;
    font-size: clamp(44px, 5vw, 64px);
    line-height: .9;
    letter-spacing: -1px;
    font-weight: 900;
}

.desktop-auth-brand h2 {
    margin: 20px 0 0;
    color: #171320;
    font-size: clamp(28px, 2.4vw, 42px);
    line-height: 1.1;
    font-weight: 700;
}

.desktop-auth-actions {
    margin: 230px auto 0;
    display: grid;
    gap: 14px;
    width: min(600px, 92%);
}

.desktop-auth-btn {
    width: 100%;
    min-height: 64px;
    border-radius: 999px;
    border: 1.5px solid rgba(19, 12, 28, .62);
    background: transparent;
    color: #15111d;
    font-size: 35px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    cursor: pointer;
}

.desktop-auth-btn.google {
    background: #111;
    border-color: #111;
    color: #fff;
}

.desktop-auth-icon {
    width: 24px;
    text-align: center;
    font-size: 20px;
    font-weight: 700;
}

.desktop-auth-icon.google-mark {
    color: #ffd05d;
}

.desktop-auth-note {
    margin: 16px 0 0;
    color: #322a3e;
    font-size: 13px;
}

.desktop-auth-links {
    margin-top: 62px;
    color: #2f273b;
    font-size: 12px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
}

.desktop-auth-links a {
    color: inherit;
    text-decoration: underline;
}

.desktop-auth-legal {
    margin: 44px 0 0;
    color: #2f273b;
    font-size: 13px;
    line-height: 1.45;
}

.desktop-auth-legal a {
    color: inherit;
    text-decoration: underline;
}

.desktop-email-card {
    background: #fff;
    border-radius: 2px;
    min-height: 78vh;
    padding: 36px 42px;
    text-align: left;
}

.desktop-email-step {
    display: none;
}

.desktop-email-step.active {
    display: block;
}

.desktop-email-back {
    border: 0;
    background: transparent;
    color: #1a1622;
    font-size: 34px;
    line-height: 1;
    padding: 0;
    cursor: pointer;
}

.desktop-email-card h2 {
    margin: 22px 0 0;
    color: #111;
    font-size: clamp(28px, 2.2vw, 42px);
    line-height: 1.15;
    font-weight: 800;
}

.desktop-email-sub {
    margin: 14px 0 0;
    color: #666;
    font-size: 15px;
}

.desktop-email-label {
    display: block;
    margin-top: 28px;
    color: #111;
    font-size: 14px;
    font-weight: 700;
}

.desktop-email-input {
    width: 100%;
    height: 58px;
    margin-top: 8px;
    border-radius: 20px;
    border: 1px solid #8a8a8a;
    padding: 0 18px;
    font-size: 17px;
    outline: none;
}

.desktop-email-input.is-error {
    border-color: #d0152f;
    box-shadow: 0 0 0 2px rgba(208, 21, 47, 0.14);
}

.desktop-password-input-wrap {
    position: relative;
}

.desktop-password-input-wrap .desktop-email-input {
    padding-right: 54px;
}

.desktop-password-toggle {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    border: 0;
    background: transparent;
    color: #444;
    font-size: 20px;
    cursor: pointer;
}

.desktop-email-error {
    min-height: 20px;
    margin-top: 8px;
    color: #c12652;
    font-size: 13px;
}

.desktop-email-exists-message {
    min-height: 20px;
    margin-top: 10px;
    font-size: 13px;
    color: #545454;
}

.desktop-email-exists-message.error {
    color: #c12652;
}

.desktop-email-exists-message.success {
    color: #0f7d4d;
}

.desktop-email-alt {
    width: 100%;
    margin-top: 18px;
    border: 0;
    background: transparent;
    color: #111;
    font-size: 17px;
    font-weight: 700;
    text-align: center;
    cursor: pointer;
}

.desktop-login-row {
    margin-top: 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.desktop-login-remember {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #2f273b;
    font-size: 14px;
}

.desktop-login-remember input {
    width: 16px;
    height: 16px;
}

.desktop-login-forgot {
    border: 0;
    background: transparent;
    color: #111;
    font-size: 14px;
    font-weight: 700;
    text-decoration: underline;
    cursor: pointer;
}

.desktop-email-privacy {
    margin: 66px 0 0;
    text-align: center;
    color: #666;
    font-size: 15px;
}

.desktop-email-continue {
    width: 100%;
    height: 64px;
    margin-top: 18px;
    border: 0;
    border-radius: 999px;
    background: #0a0a0a;
    color: #fff;
    font-size: 33px;
    font-weight: 700;
    cursor: pointer;
}

.desktop-intro-head {
    text-align: center;
}

.desktop-intro-head h2 {
    margin-top: 8px;
}

.desktop-intro-head .desktop-email-sub {
    max-width: 420px;
    margin-left: auto;
    margin-right: auto;
}

.desktop-choice-row {
    width: 100%;
    height: 58px;
    margin-top: 10px;
    border: 0;
    border-radius: 20px;
    background: #ececec;
    padding: 0 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #131313;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}

.desktop-choice-row.is-error {
    border: 2px solid #d0152f;
}

.desktop-choice-row.active .desktop-choice-radio {
    border-width: 7px;
}

.desktop-choice-radio {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 3px solid #161616;
}

.desktop-choice-arrow {
    font-size: 28px;
    line-height: 1;
}

.desktop-profile-continue {
    margin-top: 42px;
}

.desktop-date-input {
    padding-right: 14px;
}

.desktop-aboutme-input {
    width: 100%;
    margin-top: 8px;
    border-radius: 20px;
    border: 1px solid #8a8a8a;
    padding: 14px 16px;
    font-size: 16px;
    resize: vertical;
    min-height: 126px;
}

.desktop-aboutme-input.is-error {
    border-color: #d0152f;
    box-shadow: 0 0 0 2px rgba(208, 21, 47, 0.14);
}

.desktop-photo-title {
    margin: 6px 0 0;
}

.desktop-photo-sub {
    max-width: 560px;
}

.desktop-photo-warning {
    margin: 12px 0 0;
    color: #d0152f;
    font-size: 13px;
    font-weight: 600;
}

.desktop-photo-grid {
    margin-top: 8px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.desktop-photo-card {
    border: 0;
    border-radius: 14px;
    background: #ececec;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    min-height: 246px;
}

.desktop-photo-card img {
    display: none;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.desktop-photo-card.has-image img {
    display: block;
}

.desktop-photo-placeholder {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #1a1a1a;
    font-size: 22px;
    font-weight: 700;
}

.desktop-photo-card.has-image .desktop-photo-placeholder {
    display: none;
}

.desktop-photo-plus {
    font-size: 44px;
    line-height: 1;
}

.desktop-photo-hint {
    margin: 10px 0 0;
    color: #676767;
    font-size: 13px;
}

.desktop-interest-grid {
    margin-top: 16px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.desktop-interest-chip {
    border: 1.5px solid #191522;
    background: #fff;
    color: #16121f;
    border-radius: 999px;
    min-height: 40px;
    padding: 8px 16px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}

.desktop-interest-chip.active {
    background: #16121f;
    color: #fff;
    border-color: #16121f;
}

#desktopEmailStepSix {
    position: relative;
}

.desktop-create-overlay {
    position: absolute;
    inset: 0;
    z-index: 5;
    display: none;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
    background: radial-gradient(120% 120% at 50% -10%, rgba(138, 72, 255, .2) 0%, rgba(15, 3, 33, .96) 52%, rgba(8, 1, 18, .98) 100%);
    backdrop-filter: blur(2px);
}

.desktop-create-overlay.show {
    display: flex;
}

.desktop-create-retro {
    width: min(88%, 460px);
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 18px;
    background: linear-gradient(180deg, rgba(28, 9, 52, .94), rgba(15, 4, 34, .96));
    box-shadow: 0 20px 60px rgba(5, 1, 12, .55);
    padding: 22px 20px 18px;
    text-align: center;
}

.desktop-create-title {
    margin: 0;
    color: #f2ebff;
    font-size: 30px;
    line-height: 1.1;
    font-weight: 900;
    letter-spacing: .2px;
}

.desktop-create-sub {
    margin: 10px 0 0;
    color: rgba(242, 235, 255, .78);
    font-size: 14px;
    line-height: 1.45;
}

.desktop-create-loader {
    width: 48px;
    height: 48px;
    margin: 16px auto 0;
    border-radius: 50%;
    border: 3px solid rgba(255, 255, 255, .24);
    border-top-color: #d06bff;
    animation: desktopCreateSpin .8s linear infinite;
}

@keyframes desktopCreateSpin {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 1024px) {
    .desktop-auth-overlay.show {
        padding-top: 9vh;
    }
    .desktop-auth-actions {
        margin-top: 120px;
    }
    .desktop-auth-brand h2 {
        font-size: 32px;
    }
    .desktop-auth-btn {
        font-size: 28px;
        min-height: 56px;
    }
    .desktop-email-card {
        min-height: 82vh;
        padding: 22px;
    }
    .desktop-email-continue {
        font-size: 24px;
        height: 56px;
    }
}

.desktop-hero-visual {
    position: relative;
    display: grid;
    gap: 10px;
    justify-items: center;
}

.desktop-avatar {
    position: relative;
    width: 285px;
    border-radius: 999px;
    padding: 10px;
    background: #b499dd;
}

.desktop-avatar img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: inherit;
    background: linear-gradient(135deg, #cebaf0, #9e7fca);
}

.desktop-avatar.bottom {
    margin-top: -4px;
    border-radius: 52px;
}

.desktop-avatar.bottom img {
    aspect-ratio: 1 / .95;
    border-radius: 44px;
}

.desktop-link-heart {
    margin-top: -30px;
    width: 78px;
    height: 78px;
    border-radius: 50%;
    background: #d8c8ea;
    border: 10px solid #b499dd;
    display: grid;
    place-items: center;
    color: #3c1731;
    font-size: 32px;
    position: relative;
    z-index: 2;
}

.desktop-name-tag {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #f4f0f6;
    color: #25202f;
    border-radius: 999px;
    padding: 7px 18px;
    font-size: 20px;
    font-weight: 700;
}

.desktop-name-tag.left { left: -54px; }
.desktop-name-tag.right { right: -54px; }

.desktop-confidence {
    background: #e8e0f1;
    padding: 84px 0 96px;
}

.desktop-confidence-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 64px;
    align-items: center;
}

.desktop-art-card {
    border-radius: 24px;
    overflow: hidden;
    background: #a481d5;
}

.desktop-art-card img {
    width: 100%;
    height: 100%;
    min-height: 340px;
    object-fit: cover;
    display: block;
}

.desktop-confidence-copy h2 {
    margin: 0;
    font-size: clamp(42px, 4vw, 62px);
    line-height: .98;
    font-weight: 800;
    color: #101018;
}

.desktop-confidence-copy p {
    margin: 18px 0 0;
    font-size: 20px;
    line-height: 1.4;
    color: #1f1d24;
    max-width: 560px;
}

.desktop-outline-btn {
    margin-top: 28px;
    min-width: 178px;
    height: 52px;
    border-radius: 999px;
    border: 2px solid #17111e;
    background: transparent;
    color: #111;
    font-size: 22px;
    font-weight: 700;
    cursor: pointer;
}

.desktop-chat-now {
    background: #efefef;
    padding: 72px 0 0;
}

.desktop-chat-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
}

.desktop-chat-copy h2 {
    margin: 0;
    font-size: clamp(42px, 3.6vw, 58px);
    line-height: .98;
    color: #131018;
    max-width: 380px;
}

.desktop-chat-copy p {
    margin: 20px 0 0;
    max-width: 470px;
    font-size: 18px;
    line-height: 1.45;
    color: #1f1c27;
}

.desktop-chat-copy small {
    display: block;
    margin-top: 56px;
    font-size: 12px;
    color: #2d2934;
}

.desktop-chat-phone {
    position: relative;
    display: grid;
    place-items: center;
}

.desktop-phone {
    width: 286px;
    border-radius: 34px;
    border: 7px solid #7f0d4f;
    background: #fff;
    padding: 14px;
    box-shadow: 0 16px 32px rgba(40, 20, 37, .14);
}

.desktop-phone img {
    display: block;
    width: 100%;
    aspect-ratio: 9 / 16;
    object-fit: cover;
    border-radius: 20px;
}

.desktop-phone-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}

.desktop-phone-tile {
    border-radius: 12px;
    aspect-ratio: 1 / 1;
    background: linear-gradient(135deg, #d6d6d6, #ababab);
}

.desktop-phone-tile:nth-child(3n+1) { background: linear-gradient(135deg, #c6ad98, #8f7768); }
.desktop-phone-tile:nth-child(3n+2) { background: linear-gradient(135deg, #98bbcf, #55768a); }
.desktop-phone-tile:nth-child(3n+3) { background: linear-gradient(135deg, #d9b8cf, #ab7696); }

.desktop-chat-heart {
    position: absolute;
    right: 20px;
    top: 44%;
    transform: translateY(-50%);
    font-size: 86px;
    color: #d40b32;
}

.desktop-meet {
    background: #e8e0f1;
}

.desktop-meet .page-section__inner {
    width: 100%;
    margin: 0;
}

.desktop-meet .columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--columns-item-gap, 0);
}

.desktop-meet .columns__item {
    min-width: 0;
}

.desktop-meet .page-section__picture {
    position: relative;
    min-height: 500px;
    overflow: hidden;
}

.desktop-meet .page-section__picture > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: grayscale(.1) brightness(.95);
}

.desktop-meet .page-section__picture-title {
    position: absolute;
    left: 14px;
    top: 12px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: 36px;
    font-weight: 700;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .35);
}

.desktop-meet .meet-verify-dot {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #0974b0;
    color: #fff;
    display: inline-grid;
    place-items: center;
    font-size: 13px;
    line-height: 1;
}

.desktop-meet .chat-bubbles {
    position: absolute;
    right: 22px;
    bottom: 70px;
    display: grid;
    gap: 10px;
}

.desktop-meet .chat-bubble {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: rgba(255, 255, 255, .9);
    border-radius: 14px;
    padding: 9px 14px;
    color: #111;
    font-size: 20px;
    font-weight: 600;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .13);
}

.desktop-meet .chat-bubble__icon {
    width: 25px;
    text-align: center;
    font-size: 18px;
}

.desktop-meet .csms-cta-box {
    background: #e8e0f1;
    padding: 78px 70px;
}

.desktop-meet .csms-header-2 {
    margin: 0;
    max-width: 540px;
    color: #121018;
    font-size: clamp(42px, 3.5vw, 58px);
    line-height: 1.02;
    font-weight: 800;
}

.desktop-meet .csms-cta-box__content {
    display: grid;
    gap: 16px;
    margin-top: 18px;
}

.desktop-meet .csms-p-1 {
    max-width: 520px;
    color: #1c1923;
    font-size: 18px;
    line-height: 1.45;
}

.desktop-meet .csms-cta-box__buttons {
    margin-top: 28px;
}

.desktop-meet .csms-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 120px;
    height: 42px;
    border-radius: 999px;
    border: 2px solid #17111e;
    background: transparent;
    color: #111;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
}

.desktop-widget {
    background: #efefef;
    padding: 34px 0 28px;
}

.desktop-widget-title {
    margin: 0;
    color: #16131b;
    font-size: 28px;
    font-weight: 800;
}

.desktop-stories-grid {
    margin-top: 16px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.desktop-story-card {
    position: relative;
}

.desktop-story-card img {
    width: 100%;
    height: 145px;
    object-fit: cover;
    border-radius: 8px;
    display: block;
}

.desktop-story-tag {
    position: absolute;
    top: -8px;
    left: 8px;
    background: #8a0055;
    color: #fff;
    border-radius: 12px;
    padding: 2px 8px;
    font-size: 11px;
    font-weight: 700;
}

.desktop-story-tag.right {
    top: 90px;
    left: auto;
    right: 8px;
}

.desktop-story-card p {
    margin: 8px 2px 0;
    color: #241f2d;
    font-size: 12px;
    line-height: 1.3;
}

.desktop-story-link {
    margin-top: 12px;
    display: inline-block;
    color: #1a1820;
    font-size: 12px;
    text-decoration: underline;
}

.desktop-story-btn {
    margin-top: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 88px;
    height: 28px;
    border-radius: 999px;
    border: 1px solid #17111e;
    color: #111;
    font-size: 11px;
    font-weight: 700;
    text-decoration: none;
}

.desktop-safety-block {
    background: #e8e0f1;
    padding: 42px 0;
}

.desktop-safety-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 34px;
    align-items: center;
}

.desktop-safety-art img {
    width: 100%;
    max-width: 420px;
    height: 190px;
    object-fit: cover;
    border-radius: 14px;
    display: block;
}

.desktop-safety-copy h3 {
    margin: 0;
    font-size: 36px;
    line-height: 1;
    color: #18141f;
    font-weight: 800;
}

.desktop-safety-copy p {
    margin: 10px 0 0;
    color: #211d2a;
    font-size: 14px;
    line-height: 1.4;
    max-width: 460px;
}

.desktop-know {
    background: #b597df;
    padding: 34px 0;
}

.desktop-know-grid {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.desktop-know h3 {
    margin: 0;
    color: #15131b;
    font-size: 34px;
    font-weight: 800;
}

.desktop-know p {
    margin: 8px 0 0;
    max-width: 560px;
    font-size: 14px;
    color: #1d1a24;
}

.desktop-know strong {
    display: block;
    margin-top: 10px;
    font-size: 22px;
    color: #121018;
}

.desktop-know-art {
    font-size: 78px;
    line-height: 1;
}

@media (max-width:1280px) {
    .desktop-hero-copy p { font-size: 18px; }
    .desktop-confidence-copy p { font-size: 18px; }
    .desktop-chat-grid { gap: 44px; }
    .desktop-meet .csms-cta-box { padding: 64px 48px; }
    .desktop-stories-grid { grid-template-columns: 1fr; }
    .desktop-safety-grid { grid-template-columns: 1fr; }
}

@media all{
        .desktop-home{display:block}
        .mobile-home{display:none}
        body.show-mobile-home .desktop-home{display:none}
        body.show-mobile-home .soltasoltini-header,
        body.show-mobile-home .soltasoltini-footer{display:none}
        body.show-mobile-home{width:100%;max-width:100%;overflow-x:hidden}
        body.show-mobile-home main[role="main"]{padding:0;width:100%;max-width:100%;overflow-x:hidden}
        body.show-mobile-home .mobile-home{display:block;background:#f5f5f7;min-height:100dvh;width:100%;max-width:100%;overflow-x:hidden;font-family:"Segoe UI",Tahoma,Geneva,Verdana,sans-serif}
        body.show-mobile-home .desktop-shell{width:min(100%,94vw)}
        body.show-mobile-home .desktop-hero-grid,body.show-mobile-home .desktop-confidence-grid,body.show-mobile-home .desktop-chat-grid,body.show-mobile-home .desktop-meet .columns,body.show-mobile-home .desktop-safety-grid{grid-template-columns:1fr;gap:24px}
        body.show-mobile-home .desktop-hero-copy h1{font-size:clamp(34px,11vw,56px)}
        body.show-mobile-home .desktop-hero-copy p{font-size:17px}
        body.show-mobile-home .desktop-avatar{width:min(78vw,320px)}
        body.show-mobile-home .desktop-name-tag.left,body.show-mobile-home .desktop-name-tag.right{top:auto;bottom:10px;transform:none}
        body.show-mobile-home .desktop-name-tag.left{left:8px}
        body.show-mobile-home .desktop-name-tag.right{right:8px}
        body.show-mobile-home .desktop-meet .csms-cta-box{padding:32px 20px}
        .mobile-auth{min-height:100dvh;height:100dvh;color:#fff;background:#0b0017 url('/images/wallpaper.png') center/cover no-repeat;position:relative;overflow:hidden}
        .mobile-auth::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.2),rgba(0,0,0,.68))}
        .mobile-wrap{position:relative;z-index:1;height:100dvh;width:100%;max-width:100%;margin:0 auto;padding:max(22px,env(safe-area-inset-top)) 12px max(8px,env(safe-area-inset-bottom));display:flex;flex-direction:column;box-sizing:border-box;overflow:hidden}
        .mobile-top{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
        .mobile-bottom{width:100%}
        .hero-logo{width:112px;height:112px;margin:8px auto 18px;border-radius:28px;background:#fff;display:grid;place-items:center;box-shadow:0 10px 24px rgba(0,0,0,.22)}
        .hero-logo img{width:88px;height:88px;object-fit:contain}
        .mobile-title{margin:0;text-align:center;font-size:40px;font-weight:700;line-height:1.05;letter-spacing:-.3px}
        .mobile-tag{margin:6px 0 0;text-align:center;font-size:48px;line-height:1;color:#ff4f9b;font-weight:800;letter-spacing:-.4px}
        .mobile-sub{margin:10px 0 0;text-align:center;font-size:18px;line-height:1.1;color:rgba(255,255,255,.86)}
        .continue-box{margin-top:0;border-radius:22px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.16);backdrop-filter:blur(5px);padding:16px 14px 14px}
        .continue-head{display:flex;align-items:center;gap:10px}
        .continue-head::before{content:"";width:6px;height:36px;border-radius:99px;background:#ff4f9b}
        .continue-head h3{margin:0;font-size:52px;line-height:1}
        .continue-help{margin:8px 0 14px;color:rgba(255,255,255,.9);font-size:20px}
        .mobile-cta{width:100%;border:0;border-radius:14px;background:linear-gradient(135deg,#7f3dff,#5b2fd8);color:#fff;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;box-shadow:0 8px 18px rgba(63,35,153,.35)}
        .mobile-cta-main{display:flex;align-items:center;gap:10px;font-size:17px;font-weight:700}
        .mobile-cta-main .at{font-size:28px;line-height:1}
        .mobile-cta-sub{display:block;margin-top:4px;font-size:12px;color:rgba(255,255,255,.8);text-align:left}
        .mobile-cta-arrow{font-size:28px;line-height:1;color:rgba(255,255,255,.88)}
        .mobile-or{text-align:center;margin:2px 0 10px;color:rgba(255,255,255,.92);font-size:16px;font-weight:700}
        .mobile-terms{margin-top:8px;border-radius:16px;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.16);padding:9px 10px 10px;font-size:11px;color:rgba(255,255,255,.92);text-align:center}
        .mobile-terms .tick{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#ff4f9b;color:#fff;font-size:12px;margin-right:8px;vertical-align:middle}
        .mobile-terms a{color:#ff7aba;font-weight:700}
        .email-panel{position:absolute;inset:0;z-index:5;padding:max(14px,env(safe-area-inset-top)) 14px max(14px,env(safe-area-inset-bottom));background:radial-gradient(130% 95% at 50% 0%,#4f1a85 0%,#2e0e56 48%,#18012f 100%);transform:translateX(104%);transition:transform .3s ease;overflow-y:auto}
        .mobile-auth.show-email .email-panel{transform:translateX(0)}
        .email-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
        .email-head h3{margin:0;font-size:36px;line-height:1.08;letter-spacing:-.2px}
        .email-close{width:40px;height:40px;border:0;border-radius:12px;background:rgba(255,255,255,.14);color:#fff;font-size:28px;line-height:1;display:grid;place-items:center}
        .email-tabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}
        .email-tab{border:1px solid rgba(255,255,255,.22);border-radius:12px;min-height:44px;color:#f7e8ff;background:rgba(255,255,255,.1);font-weight:700;font-size:15px}
        .email-tab.active{background:linear-gradient(135deg,#b94fff,#7c35f2);color:#fff;box-shadow:0 8px 14px rgba(128,54,230,.35)}
        .email-field{margin-bottom:12px}
        .email-field label{display:block;margin-bottom:6px;color:rgba(255,255,255,.84);font-size:13px;font-weight:600}
        .email-input{min-height:52px;border-radius:12px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);display:flex;align-items:center;gap:10px;padding:0 12px}
        .email-input.is-error{border-color:#ff7ea8;background:rgba(255,126,168,.12);box-shadow:0 0 0 1px rgba(255,126,168,.25) inset}
        .email-input .icon{width:20px;display:inline-block;color:#ffd7ff;opacity:.95;text-align:center;font-size:17px}
        .email-input input{width:100%;border:0;outline:0;background:transparent;color:#fff;font-size:16px}
        .email-input input::placeholder{color:rgba(255,255,255,.5)}
        .password-toggle{border:0;background:transparent;color:#fff;opacity:.9;font-size:18px}
        .email-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:2px 2px 10px}
        .email-remember{display:inline-flex;align-items:center;gap:8px;color:#f6e8ff;font-size:13px}
        .email-remember input{accent-color:#b34cff}
        .email-forgot{color:#ffd0fa;font-size:13px;text-decoration:none}
        .email-forgot:hover{text-decoration:underline}
        .email-login-btn{width:100%;min-height:56px;border:0;border-radius:14px;color:#fff;background:linear-gradient(135deg,#c052ff,#7f36f0);font-weight:700;font-size:17px;box-shadow:0 10px 22px rgba(123,52,224,.42);margin-top:6px}
        .email-message{min-height:20px;margin-top:10px;font-size:12px;padding:8px 10px;border-radius:10px}
        .email-message.error{color:#ffd3e8;background:rgba(255,84,151,.16);border:1px solid rgba(255,130,181,.45)}
        .email-message.success{color:#d4ffe9;background:rgba(82,211,151,.18);border:1px solid rgba(117,243,185,.45)}
        .create-only{display:none} .email-panel.is-create .create-only{display:block} .email-panel.is-create .login-only{display:none}
        .forgot-panel{position:absolute;inset:0;z-index:8;padding:max(14px,env(safe-area-inset-top)) 18px max(16px,env(safe-area-inset-bottom));background:radial-gradient(130% 95% at 50% 0%,#360a63 0%,#220043 52%,#17002f 100%);transform:translateX(110%);transition:transform .3s ease;overflow-y:auto}
        .mobile-auth.show-forgot-password .forgot-panel{transform:translateX(0)}
        .forgot-top{display:flex;align-items:center;gap:16px}
        .forgot-back{width:42px;height:42px;border:0;background:transparent;color:#fff;font-size:42px;line-height:1}
        .forgot-title{margin:0;font-size:56px;line-height:1;font-weight:800;letter-spacing:-.7px}
        .forgot-view{display:none}
        .forgot-view.active{display:block}
        .forgot-icon-wrap{display:flex;justify-content:center;margin-top:22px}
        .forgot-icon{width:124px;height:124px;border-radius:50%;display:grid;place-items:center;font-size:78px;color:#a34dff;background:radial-gradient(circle at 30% 20%,rgba(196,118,255,.34),rgba(125,53,234,.08) 60%,transparent 70%)}
        .forgot-copy{margin:22px 0 0;color:rgba(255,255,255,.74);font-size:16px;line-height:1.45;text-align:center}
        .forgot-field{margin-top:20px}
        .forgot-label{display:block;margin-bottom:8px;color:#fff;font-size:19px;font-weight:700}
        .forgot-input-wrap{height:62px;border-radius:16px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.18);display:flex;align-items:center;gap:10px;padding:0 14px}
        .forgot-input-wrap.error{border-color:#ff7ea8;background:rgba(255,126,168,.12)}
        .forgot-input-wrap .icon{font-size:32px;color:rgba(255,255,255,.6);line-height:1}
        .forgot-input{width:100%;border:0;outline:0;background:transparent;color:#fff;font-size:18px}
        .forgot-input::placeholder{color:rgba(255,255,255,.5)}
        .forgot-send{margin-top:18px;width:100%;height:64px;border:0;border-radius:20px;background:linear-gradient(135deg,#b447ff,#7e35ea);color:#fff;font-size:21px;font-weight:800;box-shadow:0 10px 22px rgba(123,52,224,.42)}
        .forgot-error{min-height:18px;margin-top:10px;color:#ffd3e8;background:rgba(255,84,151,.16);border:1px solid rgba(255,130,181,.45);border-radius:10px;padding:8px 10px;font-size:12px;display:none}
        .forgot-error.show{display:block}
        .forgot-sending{position:absolute;inset:0;display:none;align-items:center;justify-content:center;background:rgba(16,3,28,.74);backdrop-filter:blur(2px);z-index:3}
        .forgot-sending.show{display:flex}
        .forgot-spinner{width:66px;height:66px;border-radius:50%;border:4px solid rgba(255,255,255,.2);border-top-color:#ff65b4;border-right-color:#8b4bff;animation:forgotSpin .9s linear infinite}
        @keyframes forgotSpin{to{transform:rotate(360deg)}}
        .forgot-success-card{display:none;margin-top:20px;border-radius:18px;border:1px solid rgba(162,180,173,.38);background:rgba(255,255,255,.1);padding:20px 16px;text-align:center}
        .forgot-success-card.show{display:block}
        .forgot-check{width:86px;height:86px;margin:0 auto 10px;border-radius:50%;display:grid;place-items:center;background:#50c057;color:#1f2d1f;font-size:55px;font-weight:900}
        .forgot-success-title{margin:0;color:#fff;font-size:42px;font-weight:800}
        .forgot-success-text{margin:10px 0 0;color:rgba(255,255,255,.76);font-size:15px;line-height:1.4}
        .forgot-resend{margin-top:14px;border:0;background:transparent;color:#9838ff;font-size:18px;font-weight:800}
        .forgot-toast{position:fixed;left:0;right:0;bottom:0;z-index:30;display:none;padding:14px 16px calc(14px + env(safe-area-inset-bottom));background:#4fb455;color:#e8ffe9;font-size:15px;line-height:1.35}
        .forgot-toast.show{display:block}
        .panel-spacer-42{width:42px}
        .required-star{color:#ff5d75}
        .matches-subtitle{color:#9a9a9f;font-size:18px;font-weight:500;margin-top:4px}
        .create-profile-panel{position:absolute;inset:0;z-index:6;padding:max(14px,env(safe-area-inset-top)) 18px max(16px,env(safe-area-inset-bottom));background:radial-gradient(140% 120% at 50% -6%,#3f106d 0%,#23003f 52%,#17002f 100%);transform:translateX(110%);transition:transform .3s ease;overflow-y:auto}
        .mobile-auth.show-create-profile .create-profile-panel{transform:translateX(0)}
        .create-profile-top{display:flex;align-items:center;gap:12px;margin-bottom:10px}
        .create-profile-close{width:42px;height:42px;border:0;background:transparent;color:#fff;font-size:44px;line-height:1}
        .create-profile-title-wrap{flex:1}
        .create-profile-title{margin:0;font-size:19px;text-align:center;font-weight:700}
        .create-profile-progress{margin:8px auto 0;width:190px;height:6px;background:rgba(255,255,255,.16);border-radius:999px;overflow:hidden}
        .create-profile-progress-fill{display:block;height:100%;width:50%;background:linear-gradient(90deg,#ff4fa1,#8b44ff);transition:width .2s ease}
        .create-profile-heading{margin:18px 0 0;font-size:28px;line-height:1.15;font-weight:800}
        .create-profile-sub{margin:10px 0 0;color:rgba(255,255,255,.74);font-size:16px}
        .create-form{margin-top:16px}
        .create-step{display:none}
        .create-step.active{display:block}
        .create-label{margin:0 0 8px;font-size:16px;font-weight:800}
        .create-input{width:100%;height:60px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.11);color:#fff;font-size:16px;padding:0 16px}
        .create-textarea{height:140px;resize:none;padding:14px 16px;line-height:1.4}
        .create-input::placeholder{color:rgba(255,255,255,.45)}
        .create-input.is-error{border-color:#ff7eaa;background:rgba(255,126,170,.14)}
        .create-hint{margin:8px 0 0;color:rgba(255,255,255,.58);font-size:13px}
        .create-section{margin-top:18px}
        .create-gender-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
        .create-gender-btn{height:62px;border-radius:16px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);color:#fff;font-weight:800;font-size:18px}
        .create-gender-btn.active{border-color:#d06bff;background:rgba(199,95,255,.2)}
        .create-date-wrap{display:flex;align-items:center;gap:8px}
        .create-date{width:100%;height:60px;border:1px solid rgba(255,255,255,.18);border-radius:16px;background:rgba(255,255,255,.11);color:#fff;font-size:16px;padding:0 16px}
        .create-date::-webkit-calendar-picker-indicator{opacity:0;position:absolute;pointer-events:none}
        .create-date-btn{width:56px;height:56px;border:1px solid rgba(255,255,255,.26);border-radius:14px;background:rgba(255,255,255,.1);color:#fff;font-size:22px;display:grid;place-items:center}
        .create-date.is-error{border-color:#ff7eaa;background:rgba(255,126,170,.14)}
        .create-counter{margin-left:auto;color:#ff5d75;font-size:16px;font-weight:700}
        .create-row{display:flex;align-items:center;gap:10px}
        .create-photos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
        .create-photo-slot{position:relative;height:110px;border-radius:16px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08) center/cover no-repeat;display:grid;place-items:center;color:rgba(255,255,255,.65);font-size:60px;line-height:1}
        .create-photo-slot.has-image{color:transparent}
        .create-interest-choose{width:100%;height:58px;border:0;border-radius:14px;background:linear-gradient(135deg,#b447ff,#7e35ea);color:#efe2ff;font-size:18px;font-weight:700}
        .create-interest-note{margin:10px 0 0;color:rgba(255,255,255,.68);font-size:18px}
        .create-interest-note .req{color:#ff5d75;font-style:italic}
        .create-interest-options{display:none;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
        .create-interest-options.show{display:grid}
        .create-interest-chip{height:42px;border-radius:999px;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.08);color:#fff;font-size:13px;font-weight:600}
        .create-interest-chip.active{border-color:#ff7ca9;background:rgba(255,92,151,.2)}
        .create-continue{width:100%;height:64px;border:0;border-radius:22px;background:linear-gradient(135deg,#b447ff,#7e35ea);color:#fff;font-weight:800;font-size:20px;box-shadow:0 12px 24px rgba(117,50,224,.45);margin-top:20px}
        .create-profile-message{margin-top:10px;min-height:20px;font-size:12px;padding:8px 10px;border-radius:10px}
        .create-profile-message.error{color:#ffd3e8;background:rgba(255,84,151,.16);border:1px solid rgba(255,130,181,.45)}
        .create-profile-message.success{color:#d4ffe9;background:rgba(82,211,151,.18);border:1px solid rgba(117,243,185,.45)}
        .create-account-overlay{position:absolute;inset:0;z-index:20;display:none;align-items:center;justify-content:center;background:radial-gradient(120% 120% at 50% -10%,rgba(138,72,255,.2) 0%,rgba(15,3,33,.96) 50%,rgba(8,1,18,.98) 100%);backdrop-filter:blur(2px)}
        .create-account-overlay.show{display:flex}
        .create-account-retro{position:relative;width:min(86%,340px);padding:26px 20px;border-radius:18px;border:1px solid rgba(255,105,180,.45);background:linear-gradient(180deg,rgba(33,8,64,.95),rgba(24,5,48,.95));box-shadow:0 0 0 1px rgba(137,79,255,.25) inset,0 0 26px rgba(145,68,255,.36);text-align:center;overflow:hidden}
        .create-account-retro::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(180deg,rgba(255,255,255,.05) 0,rgba(255,255,255,.05) 1px,transparent 1px,transparent 4px);opacity:.25;pointer-events:none}
        .create-account-title{margin:0;color:#fff;font-size:20px;font-weight:800;letter-spacing:.8px;text-transform:uppercase}
        .create-account-sub{margin:10px 0 0;color:rgba(255,255,255,.78);font-size:13px}
        .create-account-loader{margin:16px auto 0;width:64px;height:64px;border-radius:50%;border:3px solid rgba(255,255,255,.2);border-top-color:#ff62b5;border-right-color:#8a52ff;animation:createSpin 1s linear infinite}
        @keyframes createSpin{to{transform:rotate(360deg)}}
        .account-exists-panel{position:absolute;inset:0;z-index:7;padding:max(18px,env(safe-area-inset-top)) 18px max(16px,env(safe-area-inset-bottom));background:radial-gradient(140% 120% at 50% -8%,#4c167f 0%,#2c0c56 52%,#18002f 100%);transform:translateX(110%);transition:transform .3s ease;display:flex;flex-direction:column}
        .mobile-auth.show-account-exists .account-exists-panel{transform:translateX(0)}
        .account-exists-close{width:42px;height:42px;border:0;background:transparent;color:#fff;font-size:42px;line-height:1}
        .account-exists-title{margin:18px 0 0;font-size:32px;line-height:1.15;font-weight:800}
        .account-exists-sub{margin:10px 0 0;color:rgba(255,255,255,.78);font-size:16px}
        .account-exists-email{margin:14px 0 0;color:#ff7aba;font-weight:700;word-break:break-word}
        .account-exists-center{flex:1;display:flex;flex-direction:column;justify-content:center;gap:12px}
        .account-otp{display:none;gap:10px}
        .account-otp.show{display:grid}
        .account-otp-input{width:100%;height:52px;border-radius:14px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.12);color:#fff;font-size:18px;letter-spacing:4px;text-align:center}
        .account-otp-btn{height:50px;border-radius:12px;border:0;background:linear-gradient(135deg,#c052ff,#7f36f0);color:#fff;font-weight:700}
        .account-exists-actions{margin-top:auto;display:grid;gap:12px}
        .account-action-btn{height:56px;border-radius:16px;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.1);color:#fff;font-size:16px;font-weight:700}
        .account-action-btn.primary{border:0;background:linear-gradient(135deg,#c052ff,#7f36f0);box-shadow:0 10px 22px rgba(123,52,224,.42)}
        .account-exists-message{min-height:22px;padding:10px 12px;border-radius:12px;font-size:12px;text-align:center}
        .account-exists-message.error{color:#ffd3e8;background:rgba(255,84,151,.16);border:1px solid rgba(255,130,181,.45)}
        .account-exists-message.success{color:#d4ffe9;background:rgba(82,211,151,.18);border:1px solid rgba(117,243,185,.45)}
        .account-msg-main{display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px;font-weight:700}
        .account-msg-icon{font-size:15px;line-height:1}
        .account-msg-detail{margin-top:6px;color:rgba(255,255,255,.8);font-size:11px;line-height:1.35}

        .mobile-app{display:none;min-height:100dvh;width:100%;max-width:100%;margin:0 auto;background:#f5f5f7;color:#1d1d1f;padding-bottom:calc(90px + env(safe-area-inset-bottom));overflow-x:hidden}
        .mobile-app.active{display:block} .app-screen{position:relative;display:none;min-height:calc(100dvh - 90px - env(safe-area-inset-bottom));padding:max(18px,env(safe-area-inset-top)) 20px 16px;box-sizing:border-box;overflow-y:auto;overflow-x:hidden}
        .app-screen.active{display:block} .app-top-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}
        .app-screen[data-tab="discover"]{height:calc(100dvh - 90px - env(safe-area-inset-bottom));overflow-y:auto;overflow-x:hidden;display:none;flex-direction:column;gap:8px;padding:max(10px,env(safe-area-inset-top)) 12px 10px}
        .app-screen[data-tab="discover"].active{display:flex}
        .app-top-btn{width:42px;height:42px;border-radius:12px;border:0;background:#f9dce5;color:#ea4a78;box-shadow:0 8px 14px rgba(234,74,120,.24);display:grid;place-items:center}
        .app-top-btn.secondary{background:#f9e9ee;color:#d84374;box-shadow:none} .app-top-btn svg{width:20px;height:20px}
        .discover-title{text-align:center;margin:0;font-size:30px;line-height:1;font-weight:800;letter-spacing:-.5px}
        .discover-card{position:relative;border-radius:22px;overflow:hidden;min-height:0;flex:1 1 auto;height:auto;min-height:300px;max-height:none;background-size:cover;background-repeat:no-repeat;background-position:center center;background-color:#12141b;box-shadow:0 10px 24px rgba(0,0,0,.1);touch-action:none;-ms-touch-action:none;user-select:none;-webkit-user-select:none}
        .discover-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 52%,rgba(0,0,0,.82) 100%)}
        .discover-card.is-dragging{transition:none}
        .distance-pill{position:absolute;z-index:2;top:12px;left:12px;background:#fff;color:#444;border-radius:999px;padding:6px 10px;font-weight:700;font-size:13px}
        .discover-meta{position:absolute;z-index:2;left:12px;right:12px;bottom:12px;color:#fff}
        .discover-name{margin:0;font-size:32px;line-height:1;font-weight:800;letter-spacing:-.5px;display:flex;justify-content:space-between;align-items:flex-end}
        .discover-name span{font-weight:500}.discover-bio{margin:6px 0 0;font-size:14px}
        .discover-status{display:none;margin:8px 0 0;font-size:14px;color:#ffd1da}
        .discover-gesture-badge{position:absolute;z-index:4;display:grid;place-items:center;border-radius:50%;width:84px;height:84px;font-size:42px;font-weight:800;background:rgba(255,255,255,.92);opacity:0;transform:scale(.85);transition:opacity .1s ease,transform .1s ease;pointer-events:none}
        .discover-gesture-badge.show{opacity:1;transform:scale(1)}
        .discover-gesture-badge.pass{top:20px;left:16px;color:#ff9a24}
        .discover-gesture-badge.like{top:20px;right:16px;color:#ff456f}
        .discover-gesture-badge.super{top:16px;left:50%;transform:translateX(-50%) scale(.85);color:#8f2dbf}
        .discover-gesture-badge.super.show{transform:translateX(-50%) scale(1)}
        .discover-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-width:220px;margin:2px auto 0;align-items:center;flex-shrink:0}
        .discover-float-action{position:absolute;z-index:9;top:50%;left:50%;transform:translate(-50%,-50%) scale(.72);display:grid;place-items:center;background:transparent;font-size:106px;font-weight:900;opacity:0;line-height:1;pointer-events:none;-webkit-text-stroke:1.8px rgba(255,255,255,.85);text-shadow:0 14px 34px rgba(0,0,0,.62),0 0 26px rgba(255,255,255,.22)}
        .discover-float-action.show{animation:discoverFloat .44s ease}
        .discover-float-action.preview{animation:none;transform:translate(-50%,-50%) scale(.96)}
        .discover-float-action.pass{color:rgba(255,166,49,.96)}
        .discover-float-action.like{color:rgba(255,74,123,.97)}
        .discover-float-action.super_like{color:rgba(170,86,245,.98)}
        @keyframes discoverFloat{
            0%{opacity:0;transform:translate(-50%,-50%) scale(.72)}
            20%{opacity:1;transform:translate(-50%,-52%) scale(1)}
            100%{opacity:0;transform:translate(-50%,-56%) scale(1.08)}
        }
        .discover-location-gate{position:absolute;top:calc(max(10px,env(safe-area-inset-top)) + 52px);left:12px;right:12px;bottom:10px;z-index:8;display:none;flex-direction:column;align-items:center;justify-content:flex-start;background:#15171d;color:#fff;padding:18px 20px 20px;overflow-y:auto;border-radius:22px;box-shadow:0 18px 36px rgba(0,0,0,.28)}
        .discover-location-gate.show{display:flex}
        .discover-location-title{margin:24px 0 0;font-size:40px;line-height:1.06;font-weight:800;text-align:center;letter-spacing:-.4px}
        .discover-location-copy{margin:12px 0 0;max-width:360px;color:rgba(255,255,255,.82);font-size:15px;line-height:1.4;text-align:center}
        .discover-location-icon-wrap{margin-top:18px;width:180px;height:180px;border-radius:50%;background:#efefef;display:grid;place-items:center}
        .discover-location-icon{font-size:76px;color:#808080;line-height:1}
        .discover-location-allow{margin-top:18px;width:min(100%,320px);height:56px;border:0;border-radius:28px;background:#f0f0f0;color:#111;font-size:28px;font-weight:800}
        .discover-location-skip{margin-top:10px;border:0;background:transparent;color:rgba(255,255,255,.88);font-size:16px;text-decoration:underline}
        .discover-location-help-title{margin:22px 0 0;font-size:22px;font-weight:700;text-align:center}
        .discover-location-help-copy{margin:8px 0 0;max-width:380px;color:rgba(255,255,255,.72);font-size:16px;line-height:1.45;text-align:center}
        .discover-location-faq{margin:18px 0 0;border:0;background:transparent;color:#fff;font-size:17px}
        .discover-location-faq span{color:rgba(255,255,255,.84)}
        .discover-match-overlay{position:fixed;inset:0;z-index:14;display:none;flex-direction:column;align-items:center;background:#f7f7f8;color:#242424;padding:clamp(12px,3vh,18px) clamp(12px,4vw,22px) clamp(16px,4vh,24px);box-sizing:border-box;width:100vw;height:100dvh;max-height:100dvh;overflow:hidden;overscroll-behavior:contain}
        .discover-match-overlay.show{display:flex}
        .discover-match-art{position:relative;margin-top:clamp(18px,4vh,36px);width:min(84vw,360px);height:clamp(280px,42vh,380px)}
        .discover-match-card{position:absolute;width:clamp(150px,42vw,216px);height:clamp(210px,56vw,292px);border-radius:clamp(18px,4vw,28px);background:#fff;background-size:cover;background-position:center;box-shadow:0 20px 34px rgba(14,12,19,.18)}
        .discover-match-card.back{top:clamp(10px,2vh,18px);left:50%;transform:translateX(-18%) rotate(10deg)}
        .discover-match-card.front{top:clamp(82px,13vh,116px);left:50%;transform:translateX(-82%) rotate(-11deg)}
        .discover-match-heart{position:absolute;width:clamp(52px,14vw,70px);height:clamp(52px,14vw,70px);border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:0 10px 28px rgba(32,15,31,.18);color:#ea3a5b;font-size:clamp(24px,6vw,34px);line-height:1}
        .discover-match-heart.top{top:0;left:52%;transform:translateX(-18%)}
        .discover-match-heart.bottom{left:50%;bottom:clamp(2px,1vh,10px);transform:translateX(-150%)}
        .discover-match-title{margin:clamp(8px,2vh,12px) 0 0;text-align:center;color:#ea3a5b;font-size:clamp(32px,9vw,50px);line-height:1.05;font-weight:800;letter-spacing:-.6px}
        .discover-match-sub{margin:8px 0 0;text-align:center;color:#4b4b4b;font-size:clamp(14px,3.8vw,18px)}
        .discover-match-actions{margin-top:auto;padding-top:clamp(12px,3vh,24px);width:min(100%,360px);display:grid;gap:12px}
        .discover-match-btn{height:clamp(52px,8vh,68px);border-radius:20px;border:0;font-size:clamp(26px,6.8vw,38px);font-weight:800;letter-spacing:.2px}
        .discover-match-btn.primary{background:#ea3a5b;color:#fff}
        .discover-match-btn.secondary{background:#f0e1e7;color:#db3a61}
        .discover-loading-overlay{position:absolute;inset:0;z-index:10;display:none;align-items:center;justify-content:center;background:radial-gradient(circle at 20% 12%,rgba(255,58,144,.14),transparent 42%),radial-gradient(circle at 84% 82%,rgba(96,210,255,.12),transparent 44%),#10091d;color:#f7f2ff;overflow:hidden}
        .discover-loading-overlay.show{display:flex}
        .discover-loading-overlay::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.03) 0 1px,transparent 1px 4px);opacity:.42;pointer-events:none}
        .discover-loading-grid{position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:34px 34px;opacity:.16;transform:perspective(420px) rotateX(64deg) translateY(40%);transform-origin:center bottom;pointer-events:none}
        .discover-loading-core{position:relative;z-index:1;width:min(86%,420px);padding:26px 22px;border-radius:24px;border:1px solid rgba(255,255,255,.18);background:rgba(25,16,44,.66);backdrop-filter:blur(3px);text-align:center;box-shadow:0 20px 46px rgba(0,0,0,.42)}
        .discover-loading-icons{display:flex;justify-content:center;gap:16px;margin:0 auto 16px}
        .discover-loading-icons span{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;font-size:26px;font-weight:800;background:rgba(255,255,255,.07);animation:discoverRetroPulse 1.2s ease-in-out infinite}
        .discover-loading-icons span:nth-child(1){color:#ff8fba;animation-delay:0s}
        .discover-loading-icons span:nth-child(2){color:#8ee3ff;animation-delay:.18s}
        .discover-loading-icons span:nth-child(3){color:#d09cff;animation-delay:.36s}
        .discover-loading-title{margin:0;font-size:34px;font-weight:800;letter-spacing:.2px}
        .discover-loading-sub{margin:10px 0 0;color:rgba(239,232,255,.78);font-size:15px}
        .discover-loading-bars{margin:16px auto 0;display:grid;grid-template-columns:repeat(5,1fr);gap:8px;max-width:170px}
        .discover-loading-bars span{height:8px;border-radius:999px;background:linear-gradient(90deg,#c35cff,#7a4dff);animation:discoverRetroBars 1s ease-in-out infinite}
        .discover-loading-bars span:nth-child(2){animation-delay:.08s}
        .discover-loading-bars span:nth-child(3){animation-delay:.16s}
        .discover-loading-bars span:nth-child(4){animation-delay:.24s}
        .discover-loading-bars span:nth-child(5){animation-delay:.32s}
        @keyframes discoverRetroPulse{
            0%,100%{transform:translateY(0) scale(.94);opacity:.6}
            50%{transform:translateY(-4px) scale(1.06);opacity:1}
        }
        @keyframes discoverRetroBars{
            0%,100%{transform:scaleX(.6);opacity:.35}
            50%{transform:scaleX(1);opacity:1}
        }
        .action-circle{width:56px;height:56px;border-radius:50%;border:0;background:#fff;font-size:24px;color:#e3a11f;box-shadow:0 6px 14px rgba(0,0,0,.1);display:grid;place-items:center}
        .action-circle.like{width:66px;height:66px;background:#ff456f;color:#fff;font-size:28px;justify-self:center}
        #superLikeBtn{color:#932ad3}
        .discover-card.is-ad::after{background:linear-gradient(180deg,rgba(0,0,0,.08) 8%,rgba(0,0,0,.2) 44%,rgba(0,0,0,.02) 62%)}
        .discover-card.is-ad{
            width:100%;
            height:auto;
            min-height:300px;
            max-height:none;
            margin-inline:auto;
            background-size:cover;
            background-repeat:no-repeat;
            background-position:center center;
            background-origin:border-box;
            background-color:#10131c;
            box-sizing:border-box;
            padding:0;
        }
        .discover-card.is-ad .discover-meta,.discover-card.is-ad .distance-pill{display:none}
        .discover-card.is-ad + .discover-actions{display:none}
        .ad-controls{position:absolute;z-index:3;top:12px;left:12px;right:12px;display:none;justify-content:space-between}
        .discover-card.is-ad .ad-controls{display:flex}
        .ad-chip{min-width:46px;height:38px;border-radius:19px;border:0;color:#fff;background:rgba(13,28,54,.85);font-size:24px;display:grid;place-items:center}
        .ad-badge{min-width:56px;height:38px;padding:0 12px;border-radius:19px;background:rgba(13,28,54,.85);color:#fff;font-size:14px;font-weight:700;display:grid;place-items:center}
        .ad-content{position:absolute;z-index:3;left:0;right:0;bottom:0;background:#fff;color:#121212;border-radius:0 0 26px 26px;padding:clamp(14px,2.8vw,22px) clamp(14px,3vw,24px) calc(clamp(14px,2.8vw,22px) + env(safe-area-inset-bottom));display:none}
        .discover-card.is-ad .ad-content{display:block}
        .discover-settings{position:absolute;inset:0;z-index:16;display:none;background:#18002c;color:#fff;overflow:auto}
        .discover-settings.show{display:block}
        .discover-settings-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;height:62px;padding:0 14px;background:linear-gradient(90deg,#a24bff,#7d35f1);border-bottom:1px solid rgba(255,255,255,.2)}
        .discover-settings-back,.discover-settings-done{border:0;background:transparent;color:#fff;font-weight:800}
        .discover-settings-back{font-size:28px;line-height:1}
        .discover-settings-done{font-size:17px}
        .discover-settings-title{margin:0;font-size:22px;font-weight:800}
        .discover-settings-body{padding:14px 14px 22px}
        .discover-menu-overlay{position:fixed;inset:0;z-index:36;display:none;background:rgba(17,11,26,.35);backdrop-filter:blur(1px)}
        .discover-menu-overlay.show{display:block}
        .discover-menu-panel{position:absolute;top:0;left:0;bottom:0;width:min(88vw,420px);background:radial-gradient(120% 120% at 10% 0%,#3f2a5a 0%,#2a183f 48%,#211234 100%);padding:max(18px,env(safe-area-inset-top)) 14px calc(18px + env(safe-area-inset-bottom));box-shadow:16px 0 34px rgba(0,0,0,.34);overflow:auto}
        .discover-menu-grab{width:64px;height:7px;border-radius:999px;background:rgba(255,255,255,.28);margin:8px auto 14px}
        .discover-menu-close{position:absolute;top:max(14px,env(safe-area-inset-top));right:14px;width:48px;height:48px;border-radius:50%;border:2px solid rgba(255,255,255,.25);background:rgba(255,255,255,.12);color:#fff;font-size:32px;line-height:1;display:grid;place-items:center}
        .discover-menu-card{border-radius:22px;border:2px solid rgba(255,255,255,.15);background:rgba(255,255,255,.08);padding:14px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;box-shadow:0 10px 20px rgba(0,0,0,.18)}
        .discover-menu-card + .discover-menu-card{margin-top:12px}
        .discover-menu-avatar{width:76px;height:76px;border-radius:50%;background:#ddd center/cover no-repeat;border:4px solid #ff4d78}
        .discover-menu-user-main{min-width:0}
        .discover-menu-user-name{margin:0;color:#fff;font-size:16px;font-weight:800;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
        .discover-menu-user-email{margin:6px 0 0;color:rgba(255,255,255,.75);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
        .discover-menu-credit-icon{width:58px;height:58px;border-radius:14px;background:#ffeff3;color:#ff3e67;display:grid;place-items:center;font-size:28px}
        .discover-menu-credit-title{margin:0;color:rgba(255,255,255,.78);font-size:14px}
        .discover-menu-credit-value{margin:4px 0 0;color:#ff4f75;font-size:26px;line-height:1;font-weight:800}
        .discover-menu-add{height:38px;border:0;border-radius:19px;background:#ff4f75;color:#fff;min-width:68px;font-size:16px;font-weight:800;line-height:1;padding:0 12px}
        .discover-menu-section{margin:20px 4px 12px;display:flex;align-items:center;gap:10px;color:#fff}
        .discover-menu-section::before{content:"";width:6px;height:24px;border-radius:999px;background:#ff4f75;display:block}
        .discover-menu-section span{font-size:18px;line-height:1.1;font-weight:800;letter-spacing:.2px}
        .discover-menu-item{width:100%;border-radius:22px;border:2px solid rgba(255,255,255,.15);background:rgba(255,255,255,.08);padding:12px;display:grid;grid-template-columns:62px 1fr auto;align-items:center;gap:10px;color:#fff;box-shadow:0 10px 20px rgba(0,0,0,.16)}
        .discover-menu-item + .discover-menu-item{margin-top:12px}
        .discover-menu-item-icon{width:50px;height:50px;border-radius:14px;background:linear-gradient(135deg,rgba(255,79,117,.42),rgba(255,79,117,.2));display:grid;place-items:center;color:#ff4f75;font-size:24px}
        .discover-menu-item-title{margin:0;font-size:14px;line-height:1.2;font-weight:800;color:#fff}
        .discover-menu-item-sub{margin:4px 0 0;font-size:12px;line-height:1.2;color:rgba(255,255,255,.72)}
        .discover-menu-item-arrow{font-size:24px;line-height:1;color:rgba(255,255,255,.58)}
        .ds-label{margin:16px 0 8px;font-size:16px;font-weight:800}
        .ds-label-btn{border:0;background:transparent;color:#fff;padding:0;cursor:pointer}
        .ds-card{border:1px solid rgba(170,93,255,.4);border-radius:14px;background:rgba(255,255,255,.06);padding:12px;box-shadow:0 0 0 1px rgba(115,46,204,.25) inset}
        .ds-card.clickable{cursor:pointer}
        .ds-select{width:100%;height:48px;border:1px solid rgba(255,255,255,.22);border-radius:12px;background:rgba(20,8,36,.7);color:#fff;padding:0 10px;font-size:15px}
        .ds-select option{color:#222}
        .ds-age-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:15px;font-weight:700}
        .ds-age-rails{display:grid;gap:8px}
        .ds-range{width:100%;accent-color:#a94eff}
        .ds-radius-head{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.9);font-size:13px;margin-bottom:8px}
        .ds-radius-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
        .ds-radius-chip{height:40px;border-radius:10px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;font-size:13px}
        .ds-radius-chip.active{border:1px solid rgba(255,255,255,.25);background:linear-gradient(90deg,#b348ff,#7f35f0);font-weight:800}
        .ds-interest-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
        .ds-interest-count{font-size:13px;color:#fff}
        .ds-interest-list{margin-top:4px;color:rgba(255,255,255,.72);font-size:13px;line-height:1.35;min-height:18px}
        .ds-interest-open{border:0;background:transparent;color:#b959ff;font-size:24px;line-height:1}
        .ds-interest-message{display:none;margin-top:8px;padding:8px 10px;border-radius:10px;font-size:12px;line-height:1.35}
        .ds-interest-message.show{display:block}
        .ds-interest-message.error{color:#ffd3e8;background:rgba(255,84,151,.16);border:1px solid rgba(255,130,181,.45)}
        .ds-interest-message.info{color:#e4d5ff;background:rgba(147,78,255,.16);border:1px solid rgba(173,115,255,.45)}
        .ds-info{margin-top:12px;border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:10px;background:rgba(255,255,255,.05);color:rgba(255,255,255,.72);font-size:12px;line-height:1.35}
        .ds-modal{position:absolute;inset:0;z-index:17;display:none;align-items:center;justify-content:center;background:rgba(10,3,19,.66);backdrop-filter:blur(2px)}
        .ds-modal.show{display:flex}
        .ds-modal-card{width:min(90%,420px);max-height:80vh;overflow:auto;border:1px solid rgba(255,255,255,.2);border-radius:14px;background:#291344;padding:14px}
        .ds-modal-title{margin:0 0 10px;font-size:24px;font-weight:800}
        .ds-int-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
        .ds-int-chip{height:40px;border-radius:10px;border:1px solid rgba(255,255,255,.3);background:transparent;color:#fff;font-size:13px}
        .ds-int-chip.active{border:1px solid rgba(255,255,255,.25);background:linear-gradient(90deg,#b447ff,#7e35ea);font-weight:800}
        .ds-modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:10px}
        .ds-modal-btn{border:0;background:transparent;color:#fff;font-size:16px;font-weight:700}
        .ds-modal-btn.primary{color:#b959ff}
        .ad-title{margin:0;font-size:clamp(28px,7vw,56px);line-height:.95;font-weight:800;letter-spacing:-1px}
        .ad-text{margin:10px 0 0;font-size:clamp(14px,3.2vw,20px);color:#5e5e63;line-height:1.35}
        .screen-header-main{margin:6px 0 8px;font-size:60px;line-height:.95;font-weight:800;letter-spacing:-1px;color:#0a0a0a}
        .screen-sub{margin:0 0 14px;font-size:18px;line-height:1.45;color:#666}
        .compatibility-screen{position:relative;padding:max(14px,env(safe-area-inset-top)) 16px 16px;height:calc(100dvh - 90px - env(safe-area-inset-bottom));overflow-y:auto;overflow-x:hidden;background:#f5f5f7}
        .compat-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
        .compat-head-btn{width:58px;height:58px;border-radius:16px;border:0;background:#ececef;color:#212126;display:grid;place-items:center}
        .compat-head-btn svg{width:28px;height:28px}
        .compat-title{margin-top:8px}
        .compat-progress{margin:0 0 10px;color:#666;font-size:18px}
        .compat-banner{display:flex;align-items:center;gap:12px;border-radius:20px;padding:14px;border:1px solid #9dcbf6;background:#d9ecff;color:#0f4f9f;font-size:14px;line-height:1.35}
        .compat-banner-icon{width:32px;height:32px;border-radius:50%;border:2px solid currentColor;display:grid;place-items:center;font-weight:800;font-size:18px;flex:0 0 auto}
        .compat-actions-row{display:flex;justify-content:flex-end;margin-top:12px;position:relative}
        .compat-set-btn{position:relative;min-width:220px;height:58px;border:0;border-radius:18px;background:#d81b69;color:#fff;font-size:18px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:0 20px}
        .compat-set-btn svg{width:24px;height:24px}
        .compat-badge{position:absolute;top:-10px;right:-12px;min-width:34px;height:34px;padding:0 8px;border-radius:999px;background:#fff;color:#d81b69;border:3px solid #d81b69;display:grid;place-items:center;font-size:18px;font-weight:800}
        .compat-section{margin-top:14px;background:#ededee;border-radius:30px;padding:18px 12px 12px}
        .compat-section-title{margin:0;display:flex;align-items:center;gap:10px;font-size:22px;line-height:1.2;color:#17171b}
        .compat-section-title .heart{color:#df1c68}
        .compat-section-sub{margin:8px 0 0;color:#6a6a6f;font-size:16px}
        .compat-list{margin-top:12px;display:grid;gap:12px}
        .compat-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;background:#fff;border:1px solid #dedee2;border-radius:22px;padding:12px}
        .compat-avatar{width:78px;height:78px;border-radius:50%;background:#ddd center/cover no-repeat}
        .compat-main{min-width:0}
        .compat-name{margin:0;color:#19191d;font-size:21px;font-weight:800;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
        .compat-status{margin:8px 0 0;color:#73747a;font-size:17px;line-height:1.25}
        .compat-status.pending{color:#e07a17}
        .compat-check-btn,.compat-pending-pill{height:52px;min-width:130px;border-radius:14px;padding:0 14px;display:grid;place-items:center;font-size:18px;font-weight:800}
        .compat-check-btn{border:0;background:#d81b69;color:#fff}
        .compat-pending-pill{border:2px solid #d7d7db;background:#f2f2f3;color:#6e6f74}
        .compat-pending-pill .inner{display:flex;align-items:center;gap:8px}
        .compat-loader{width:24px;height:24px;border-radius:50%;border:3px solid rgba(216,27,105,.2);border-top-color:#d81b69;animation:compatSpin .9s linear infinite}
        .compat-empty{padding:18px 10px;border-radius:16px;background:#fff;color:#666;text-align:center}
        .compat-ghost{height:92px;border-radius:20px;background:linear-gradient(90deg,#ececf0 0,#f6f6f8 50%,#ececf0 100%);background-size:220% 100%;animation:messagesShimmer 1.2s linear infinite}
        .compat-sheet-backdrop,.compat-dialog-backdrop{position:fixed;inset:0;background:rgba(15,12,20,.45);display:none;align-items:flex-end;justify-content:center;z-index:32}
        .compat-sheet-backdrop.show,.compat-dialog-backdrop.show{display:flex}
        .compat-sheet{width:100%;max-width:860px;max-height:88dvh;background:#fff;border-radius:28px 28px 0 0;padding:10px 14px 16px;overflow:auto}
        .compat-grab{width:66px;height:7px;border-radius:999px;background:#d6d6da;margin:0 auto 10px}
        .compat-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
        .compat-sheet-title{margin:0;font-size:26px;font-weight:800;color:#1d1d21}
        .compat-close-btn{border:0;background:transparent;color:#6f7075;font-size:30px;line-height:1;padding:0 4px}
        .compat-q-list{display:grid;gap:10px;margin-top:12px}
        .compat-q-item{border-radius:16px;background:#f4f4f6;padding:10px}
        .compat-q-item.answered{background:#f7eaf1}
        .compat-q-row{display:grid;grid-template-columns:50px 1fr auto;gap:10px;align-items:center}
        .compat-q-num{width:46px;height:46px;border-radius:50%;background:#f1d5e1;color:#d81b69;font-size:30px;font-weight:800;display:grid;place-items:center}
        .compat-q-text{margin:0;font-size:16px;font-weight:700;color:#202025;line-height:1.3}
        .compat-q-arrow{font-size:34px;color:#b7b7bd;line-height:1}
        .compat-q-answer{margin:8px 0 0 60px;border-radius:12px;background:#efcfe0;color:#d81b69;padding:8px 12px;font-size:16px;font-weight:700;display:flex;align-items:center;gap:8px}
        .compat-q-answer .dot{width:20px;height:20px;border-radius:50%;background:#d81b69;color:#fff;font-size:12px;display:grid;place-items:center}
        .compat-answer-question{margin:8px 0 0;font-size:20px;line-height:1.3;color:#1f1f23;font-weight:800}
        .compat-option-list{display:grid;gap:10px;margin-top:14px}
        .compat-option{width:100%;min-height:64px;border:0;border-radius:16px;background:#f3f3f5;color:#444;display:flex;align-items:center;gap:14px;padding:0 16px;font-size:18px;text-align:left}
        .compat-option .radio{width:30px;height:30px;border-radius:50%;border:4px solid #d81b69;display:grid;place-items:center;flex:0 0 auto}
        .compat-option.selected{background:#f8d9e7;color:#d81b69;font-weight:700}
        .compat-option.selected .radio::after{content:"";width:12px;height:12px;border-radius:50%;background:#d81b69}
        .compat-dialog-backdrop{align-items:center}
        .compat-dialog{width:min(92vw,420px);max-height:86dvh;overflow:auto;border-radius:22px;background:#fff;padding:14px 14px 16px}
        .compat-meter-wrap{display:grid;justify-items:center;margin-top:8px}
        .compat-meter{--p:0;width:150px;height:150px;border-radius:50%;background:conic-gradient(#d81b69 calc(var(--p) * 1%), #ececf1 0);display:grid;place-items:center}
        .compat-meter-inner{width:116px;height:116px;border-radius:50%;background:#fff;display:grid;place-items:center;color:#1b1b1f}
        .compat-meter-value{font-size:34px;font-weight:800;line-height:1}
        .compat-meter-label{font-size:12px;color:#777}
        .compat-result-name{margin:10px 0 0;text-align:center;font-size:24px;font-weight:800}
        .compat-result-msg{margin:8px 0 0;text-align:center;color:#666}
        .compat-result-stats{margin:10px 0 0;text-align:center;color:#444;font-weight:600}
        .compat-detail-list{display:grid;gap:10px;margin-top:12px}
        .compat-detail-item{border-radius:14px;background:#f6f6f8;padding:10px}
        .compat-detail-item.match{background:#e9f8ee}
        .compat-detail-q{margin:0;font-size:14px;font-weight:700;color:#202025}
        .compat-detail-a{margin:8px 0 0;font-size:13px;color:#595a60}
        .compat-detail-a strong{color:#1f1f22}
        .compat-result-close{margin-top:12px;width:100%;height:48px;border:0;border-radius:14px;background:#d81b69;color:#fff;font-size:18px;font-weight:800}
        @keyframes compatSpin{to{transform:rotate(360deg)}}
        .matches-head-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
        .matches-sort{width:58px;height:58px;border-radius:16px;border:0;background:#f4f4f6;color:#ea4a78;display:grid;place-items:center}
        .matches-sort svg{width:26px;height:26px}
        .matches-sort.is-loading svg{animation:matchesRefreshSpin .8s linear infinite}
        .matches-fetching{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;margin:2px 0 10px;border-radius:999px;border:1px solid #d8eaf3;background:#f4fbff;color:#2d6f86;font-size:12px;font-weight:700}
        .matches-fetching-dot{width:12px;height:12px;border-radius:50%;border:2px solid #7ec8e7;border-top-color:transparent;animation:matchesRefreshSpin .8s linear infinite}
        .matches-loading{display:grid;grid-template-columns:1fr 1fr;gap:16px}
        .matches-skeleton{height:260px;border-radius:22px;background:linear-gradient(90deg,#f2f2f5 0%,#f8f8fa 50%,#f2f2f5 100%);background-size:220% 100%;animation:messagesShimmer 1.2s linear infinite}
        .retro-loader{position:relative;overflow:hidden;border-radius:20px;border:1px solid #1f3e50;background:radial-gradient(circle at 18% 10%,rgba(65,145,170,.35),transparent 42%),radial-gradient(circle at 84% 88%,rgba(255,144,84,.3),transparent 45%),#0f1b29;padding:14px 12px 12px;box-shadow:inset 0 0 0 1px rgba(96,190,221,.22),0 10px 22px rgba(8,15,24,.28)}
        .retro-loader::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.08) 0 1px,transparent 1px 4px);opacity:.28;pointer-events:none}
        .retro-loader::after{content:"";position:absolute;inset:-60% -50%;background:linear-gradient(115deg,transparent 25%,rgba(120,242,255,.14) 45%,rgba(255,184,92,.2) 50%,transparent 75%);animation:retroSweep 1.8s linear infinite;pointer-events:none}
        .retro-loader-head{display:flex;align-items:center;justify-content:space-between;gap:10px;position:relative;z-index:1}
        .retro-loader-title{font-family:"Courier New",monospace;font-weight:700;font-size:12px;letter-spacing:1.4px;color:#91f2ff}
        .retro-loader-status{font-family:"Courier New",monospace;font-weight:700;font-size:11px;letter-spacing:1.2px;color:#ffd28e;animation:retroBlink 1s steps(2,end) infinite}
        .retro-loader-sub{position:relative;z-index:1;margin-top:6px;color:rgba(215,239,245,.86);font-size:12px;line-height:1.3}
        .retro-loader .matches-loading,.retro-loader .messages-loading,.retro-loader .chat-loading{position:relative;z-index:1;margin-top:10px}
        .retro-loader .matches-skeleton,.retro-loader .messages-skeleton,.retro-loader .chat-skeleton{background:linear-gradient(110deg,#163041 0%,#2c6f80 32%,#ffb05a 50%,#2c6f80 68%,#163041 100%);background-size:240% 100%;animation:messagesShimmer 1.1s linear infinite;box-shadow:inset 0 0 0 1px rgba(162,236,255,.16)}
        .retro-loader-matches .matches-skeleton{height:228px}
        .retro-loader-messages .messages-skeleton{height:72px}
        .retro-loader-chat{margin:2px 0 8px}
        @keyframes retroSweep{0%{transform:translateX(-25%) translateY(-10%) rotate(0deg)}100%{transform:translateX(25%) translateY(10%) rotate(0deg)}}
        @keyframes retroBlink{0%,50%{opacity:1}51%,100%{opacity:.35}}
        @keyframes matchesRefreshSpin{to{transform:rotate(360deg)}}
        .match-date{margin:16px 0 10px;text-align:center;color:#6d6d72;font-size:18px;font-weight:600}
        .matches-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
        .match-card{position:relative;height:260px;border-radius:22px;overflow:hidden;background:#ddd center/cover no-repeat;box-shadow:0 8px 18px rgba(0,0,0,.08)}
        .match-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05) 38%,rgba(0,0,0,.75) 100%)}
        .match-meta{position:absolute;left:14px;right:14px;bottom:14px;z-index:2}
        .match-name{margin:0;color:#fff;font-size:18px;font-weight:700;line-height:1.2}
        .match-heart{margin-top:8px;width:38px;height:38px;border-radius:50%;border:0;background:rgba(255,255,255,.2);color:#fff;display:grid;place-items:center;font-size:18px;backdrop-filter:blur(2px)}
        .match-heart.matched{background:#fff;color:#ff456f}
        .matches-empty{padding:24px 8px;color:#6d6d72;text-align:center;font-size:15px}
        .messages-head-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
        .messages-sort{width:58px;height:58px;border-radius:16px;border:0;background:#f4f4f6;color:#ea4a78;display:grid;place-items:center}
        .messages-sort svg{width:26px;height:26px}
        .messages-search-wrap{margin:2px 0 14px}
        .messages-search-input{width:100%;height:50px;border-radius:14px;border:1px solid #ececf0;background:#fff;color:#1d1d21;padding:0 14px;font-size:15px}
        .messages-loading{display:grid;gap:10px}
        .messages-skeleton{height:78px;border-radius:18px;background:linear-gradient(90deg,#f2f2f5 0%,#f8f8fa 50%,#f2f2f5 100%);background-size:220% 100%;animation:messagesShimmer 1.2s linear infinite}
        @keyframes messagesShimmer{0%{background-position:180% 0}100%{background-position:-40% 0}}
        .messages-empty{padding:24px 10px;border-radius:16px;background:#fff;color:#6d6d72;text-align:center;font-size:15px}
        .messages-list{display:grid;gap:10px}
        .message-row{width:100%;border:0;background:#fff;border-radius:18px;padding:12px;display:grid;grid-template-columns:58px 1fr auto;align-items:center;gap:10px;box-shadow:0 4px 12px rgba(0,0,0,.05);text-align:left}
        .message-avatar{width:58px;height:58px;border-radius:50%;background:#ddd center/cover no-repeat}
        .message-main{min-width:0}
        .message-name{margin:0;color:#17171b;font-size:17px;line-height:1.15;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
        .message-preview{margin:6px 0 0;color:#666a72;font-size:13px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
        .message-meta{display:grid;justify-items:end;gap:6px}
        .message-time{color:#80828a;font-size:12px;line-height:1}
        .message-unread{min-width:24px;height:24px;border-radius:999px;background:#ff456f;color:#fff;font-size:12px;font-weight:800;display:grid;place-items:center;padding:0 6px}
        .message-read{color:#9ba0a8;font-size:11px;line-height:1}
        .messages-more-wrap{display:flex;justify-content:center;margin:14px 0 0}
        .messages-more-btn{border:0;border-radius:12px;background:#ff456f;color:#fff;padding:10px 16px;font-weight:700}
        .chat-panel{display:none;position:absolute;inset:0;background:#f5f5f7;z-index:12;padding:max(18px,env(safe-area-inset-top)) 20px 16px;box-sizing:border-box}
        .chat-panel.show{display:flex;flex-direction:column}
        .chat-title-row{display:flex;align-items:center;justify-content:space-between}
        .chat-title{margin:0;color:#0a0a0a;font-size:60px;line-height:.95;font-weight:800;letter-spacing:-1px}
        .chat-close-btn{width:58px;height:58px;border:0;border-radius:16px;background:#ff456f;color:#fff;display:grid;place-items:center}
        .chat-close-btn svg{width:28px;height:28px}
        .chat-shell{margin-top:14px;flex:1;min-height:0;border-radius:26px;background:#fff;border:1px solid #ececf0;display:flex;flex-direction:column;overflow:hidden}
        .chat-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px 14px;border-bottom:1px solid #f0f0f2}
        .chat-back-mark{width:54px;height:8px;border-radius:999px;background:#d7d7da}
        .chat-user-avatar{width:72px;height:72px;border-radius:50%;background:#ddd center/cover no-repeat;border:3px solid #ff7c4d}
        .chat-user-main{min-width:0}
        .chat-user-name{margin:0;color:#101014;font-size:22px;line-height:1.1;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
        .chat-user-status{margin-top:6px;color:#ff4f75;font-size:16px;font-weight:500;display:flex;align-items:center;gap:8px}
        .chat-user-status .dot{width:12px;height:12px;border-radius:50%;background:#ff4f75}
        .chat-more{border:0;background:transparent;color:#999;font-size:34px;line-height:1;padding:0 8px}
        .chat-messages{flex:1;min-height:0;overflow-y:auto;padding:14px}
        .chat-loading{display:grid;gap:12px}
        .chat-skeleton{height:64px;border-radius:18px;background:linear-gradient(90deg,#f2f2f5 0%,#f8f8fa 50%,#f2f2f5 100%);background-size:220% 100%;animation:messagesShimmer 1.2s linear infinite}
        .chat-skeleton.theirs{width:72%;justify-self:start}
        .chat-skeleton.mine{width:64%;justify-self:end}
        .chat-skeleton.short{height:52px;width:52%}
        .chat-day{margin:16px 0 14px;text-align:center;color:#8d8f96;font-size:16px}
        .chat-msg-wrap{display:flex;margin:10px 0}
        .chat-msg-wrap.mine{justify-content:flex-end}
        .chat-bubble{max-width:72%;display:inline-block}
        .chat-bubble.theirs{background:#f7dfe5;border-radius:18px;padding:12px 14px}
        .chat-bubble.mine{background:transparent}
        .chat-text{margin:0;color:#17171b;font-size:18px;line-height:1.25;white-space:pre-wrap;overflow-wrap:anywhere}
        .chat-meta{margin-top:6px;color:#7f828a;font-size:14px;display:flex;align-items:center;gap:5px}
        .chat-meta .ticks{color:#28a2f5;font-size:18px;line-height:1}
        .chat-input-wrap{border-top:1px solid #f0f0f2;padding:12px 14px}
        .chat-input-shell{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px}
        .chat-input-main{height:58px;border-radius:999px;background:#f2f2f4;display:flex;align-items:center;padding:0 14px;gap:10px;position:relative}
        .chat-emoji{border:0;background:transparent;color:#a4a4aa;font-size:30px;line-height:1;padding:0}
        .chat-emoji-picker{position:absolute;left:0;bottom:calc(100% + 10px);width:min(92vw,320px);padding:10px;border-radius:14px;border:1px solid #ececf0;background:#fff;box-shadow:0 12px 24px rgba(22,22,26,.12);display:none;grid-template-columns:repeat(8,1fr);gap:8px;z-index:5}
        .chat-emoji-picker.show{display:grid}
        .chat-emoji-item{width:100%;aspect-ratio:1;border:0;border-radius:10px;background:#f4f4f6;font-size:20px;line-height:1;display:grid;place-items:center}
        .chat-emoji-item:active{transform:scale(.96)}
        .chat-input{width:100%;border:0;outline:0;background:transparent;color:#222;font-size:20px}
        .chat-input::placeholder{color:#a1a3a9}
        .chat-send{width:58px;height:58px;border-radius:50%;border:0;background:#ff456f;color:#fff;display:grid;place-items:center}
        .chat-send svg{width:28px;height:28px}
        .chat-empty{height:100%;display:grid;place-items:center;color:#8d8f96;text-align:center;padding:0 24px}
        .pink-btn{border:0;border-radius:12px;background:#ff456f;color:#fff;padding:10px 16px;font-weight:700}
        .profile-screen{padding:0;background:#f5f5f7;height:calc(100dvh - 90px - env(safe-area-inset-bottom));overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}
        .profile-top{position:absolute;top:0;left:0;right:0;z-index:6;display:flex;justify-content:space-between;align-items:center;padding:calc(14px + env(safe-area-inset-top)) 10px 8px;background:linear-gradient(to bottom,#252938 0 calc(6px + env(safe-area-inset-top)),#f5f5f7 calc(6px + env(safe-area-inset-top)) 100%)}
        .profile-top-left,.profile-top-right{display:flex;align-items:center;gap:10px}
        .profile-icon-btn{width:36px;height:36px;border:0;border-radius:10px;background:#ececef;color:#1d1d21;display:grid;place-items:center;padding:0}
        .profile-icon-btn svg{width:18px;height:18px}
        .profile-icon-btn.plain{background:transparent;border-radius:0}
        .profile-hero-wrap{position:relative;padding-top:52px;background:#f5f5f7}
        .profile-hero{height:560px;background:#ddd center top/cover no-repeat}
        .profile-swipe-actions{position:absolute;left:50%;bottom:-48px;transform:translateX(-50%);display:grid;grid-template-columns:repeat(3,1fr);align-items:center;gap:16px;width:min(88%,320px);z-index:5}
        .profile-swipe-btn{border:0;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:0 12px 24px rgba(0,0,0,.14)}
        .profile-swipe-btn.pass,.profile-swipe-btn.star{width:92px;height:92px;font-size:44px}
        .profile-swipe-btn.like{width:120px;height:120px;font-size:52px;background:#ff456f;color:#fff;margin-top:4px;box-shadow:0 14px 24px rgba(255,69,111,.34)}
        .profile-swipe-btn.pass{color:#ff8a1f}
        .profile-swipe-btn.star{color:#8f2dbf}
        .profile-card{position:relative;z-index:4;width:100%;margin:-6px 0 0;box-sizing:border-box;min-height:360px;height:auto;overflow:hidden;background:var(--white);border-radius:16px;box-shadow:0 4px 20px rgba(0,0,0,.4);pointer-events:auto;transition:transform .3s ease;border:1px solid rgba(255,255,255,.1);padding:78px 22px calc(126px + env(safe-area-inset-bottom))}
        .profile-name-row{display:flex;justify-content:space-between;align-items:center;gap:12px}
        .profile-name{margin:0;font-size:22px;line-height:1.15;font-weight:800;letter-spacing:-.3px;color:#101014;flex:1;min-width:0;display:flex;align-items:center;gap:8px;overflow:visible}
        .profile-name-text{display:inline-block;min-width:0;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
        .profile-name-age{font-weight:700}
        .profile-verified{display:none;align-items:center;justify-content:center;line-height:0;flex:0 0 auto;width:30px;height:30px}
        .profile-verified svg{width:100%;height:100%;display:block;overflow:visible}
        .profile-edit-btn{height:56px;border:0;border-radius:16px;background:#f6dde3;color:#e74c77;display:inline-flex;align-items:center;gap:8px;padding:0 16px;font-size:15px;line-height:1;font-weight:800;white-space:nowrap}
        .profile-edit-btn svg{width:20px;height:20px}
        .profile-bio{margin:10px 0 0;font-size:17px;line-height:1.25;color:#55565b}
        .profile-row{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:0 12px;align-items:start;margin-top:30px}
        .profile-row .profile-label{grid-column:1;grid-row:1;margin:0}
        .profile-row .profile-text{grid-column:1/-1;grid-row:2;margin:8px 0 0}
        .profile-row .profile-pill{grid-column:2;grid-row:1;justify-self:end}
        .profile-label{margin:0;font-size:17px;line-height:1.1;font-weight:700;color:#101014}
        .profile-text{margin:0;font-size:17px;line-height:1.35;color:#55565b;white-space:normal;overflow-wrap:anywhere}
        .profile-pill{border-radius:12px;background:#ffe7ef;color:#ff4d80;padding:10px 12px;font-size:15px;font-weight:700;display:inline-flex;align-items:center;gap:6px;line-height:1;white-space:nowrap}
        .profile-pill span:first-child{font-size:16px}
        .profile-section{margin-top:30px}
        .profile-section-head{display:flex;justify-content:space-between;align-items:center}
        .profile-section-title{margin:0;font-size:17px;line-height:1.1;font-weight:700;color:#101014}
        .profile-link{color:#f04f7c;text-decoration:none;font-size:15px;font-weight:700;line-height:1}
        .profile-about{margin:12px 0 0;font-size:17px;line-height:1.45;color:#45464c}
        .profile-readmore{display:inline-block;margin-top:8px;color:#f04f7c;text-decoration:none;font-size:15px;font-weight:700}
        .profile-chips{display:flex;flex-wrap:wrap;gap:8px 10px;margin-top:14px}
        .profile-chip{border:2px solid #ff5f7d;border-radius:999px;padding:8px 16px;font-size:15px;color:#3f434b;line-height:1.1;display:inline-flex;align-items:center;gap:8px;background:#fff;font-weight:500}
        .profile-chip span:first-child{color:#ff5f7d;font-weight:700;font-size:14px;line-height:1}
        .profile-gallery{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:14px}
        .profile-photo{grid-column:span 2;aspect-ratio:1;border-radius:10px;background:#ddd center top/cover no-repeat}
        .profile-photo:nth-child(-n+2){grid-column:span 3}
        .profile-empty{margin-top:14px;font-size:16px;color:#75757b}
        .profile-logout-btn{margin-top:28px;width:100%;border:0;border-radius:14px;background:#ff4560;color:#fff;height:56px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:22px;font-weight:700;line-height:1}
        .profile-logout-btn svg{width:22px;height:22px}
        .profile-logout-btn:active{transform:translateY(1px)}
        .edit-profile-screen{padding:0;background:linear-gradient(180deg,#150029 0%,#1d0337 45%,#20043c 100%);height:calc(100dvh - 90px - env(safe-area-inset-bottom));overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}
        .edit-head{position:sticky;top:0;z-index:8;height:76px;padding:calc(10px + env(safe-area-inset-top)) 16px 10px;background:linear-gradient(180deg,#9f42ff 0%,#8a38f0 100%);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;box-sizing:border-box}
        .edit-head-btn{width:40px;height:40px;border:0;border-radius:10px;background:transparent;color:#fff;display:grid;place-items:center}
        .edit-head-btn svg{width:24px;height:24px}
        .edit-head-title{margin:0;color:#fff;font-size:34px;line-height:1;font-weight:800;letter-spacing:-.4px}
        .edit-head-save{border:0;background:transparent;color:#fff;font-size:24px;font-weight:700}
        .edit-wrap{padding:18px 18px calc(120px + env(safe-area-inset-bottom))}
        .edit-avatar-wrap{display:grid;place-items:center;padding:10px 0 14px}
        .edit-avatar{width:190px;height:190px;border-radius:50%;background:#ddd center/cover no-repeat;border:6px solid #9f42ff;box-shadow:0 0 0 10px rgba(159,66,255,.16)}
        .edit-avatar-photo{margin-top:-46px;margin-left:132px;width:64px;height:64px;border-radius:50%;border:0;background:#9f42ff;color:#fff;display:grid;place-items:center;box-shadow:0 12px 24px rgba(120,48,214,.44)}
        .edit-avatar-photo svg{width:30px;height:30px}
        .edit-quick-list{display:grid;gap:14px;margin:8px 0 20px}
        .edit-quick{width:100%;border:1px solid rgba(255,255,255,.09);background:#331b4e;border-radius:24px;padding:18px 16px;display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:14px;color:#fff;text-align:left}
        .edit-quick-icon{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;font-size:26px}
        .edit-quick-icon.photos{background:rgba(184,79,255,.2);color:#be5cff}
        .edit-quick-icon.password{background:rgba(49,167,255,.22);color:#35a3ff}
        .edit-quick-icon.settings{background:rgba(255,174,41,.22);color:#ffab2f}
        .edit-quick-title{margin:0;color:#fff;font-size:18px;font-weight:800}
        .edit-quick-sub{margin:3px 0 0;color:rgba(255,255,255,.7);font-size:15px;line-height:1.3}
        .edit-quick-arrow{font-size:34px;line-height:1;color:rgba(255,255,255,.5)}
        .edit-group{margin-top:18px}
        .edit-label{margin:0 0 8px;color:#fff;font-size:21px;font-weight:800;letter-spacing:.1px}
        .edit-field{width:100%;height:64px;border-radius:18px;border:1px solid rgba(255,255,255,.1);background:#331b4e;color:#fff;font-size:17px;padding:0 16px;box-sizing:border-box}
        .edit-field::placeholder{color:rgba(255,255,255,.45)}
        .edit-field-row{display:grid;grid-template-columns:1fr auto;gap:10px}
        .edit-locate-btn{width:64px;height:64px;border-radius:18px;border:1px solid rgba(255,255,255,.1);background:#331b4e;color:#a94dff;display:grid;place-items:center}
        .edit-locate-btn svg{width:30px;height:30px}
        .edit-select-wrap{position:relative}
        .edit-select-wrap::after{content:"";position:absolute;right:18px;top:50%;width:10px;height:10px;border-right:2px solid #a94dff;border-bottom:2px solid #a94dff;transform:translateY(-70%) rotate(45deg);pointer-events:none}
        .edit-select{appearance:none;padding-right:42px}
        .edit-textarea{width:100%;min-height:164px;border-radius:18px;border:1px solid rgba(255,255,255,.1);background:#331b4e;color:#fff;font-size:17px;line-height:1.45;padding:14px 16px;box-sizing:border-box;resize:vertical}
        .edit-textarea::placeholder{color:rgba(255,255,255,.45)}
        .edit-msg{margin-top:12px;font-size:14px;color:#fcb4d0;display:none}
        .edit-msg.show{display:block}
        .edit-save-modal{position:fixed;inset:0;z-index:30;display:none;align-items:center;justify-content:center;background:rgba(10,3,19,.66);backdrop-filter:blur(2px)}
        .edit-save-modal.show{display:flex}
        .edit-save-card{width:min(88vw,340px);border-radius:18px;border:1px solid rgba(255,255,255,.2);background:#2f1948;color:#fff;padding:18px 16px;text-align:center;box-shadow:0 16px 40px rgba(8,2,18,.38)}
        .edit-save-title{margin:0;font-size:24px;line-height:1.1;font-weight:800}
        .edit-save-sub{margin:10px 0 0;color:rgba(255,255,255,.8);font-size:15px;line-height:1.4}
        .edit-save-ok{margin-top:14px;min-width:120px;height:44px;border:0;border-radius:12px;background:linear-gradient(90deg,#b44eff,#8b37f1);color:#fff;font-size:16px;font-weight:800}
        .cp-screen{padding:0;background:linear-gradient(180deg,#150029 0%,#1d0337 45%,#20043c 100%);height:calc(100dvh - 90px - env(safe-area-inset-bottom));overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}
        .cp-head{position:sticky;top:0;z-index:8;height:76px;padding:calc(10px + env(safe-area-inset-top)) 16px 10px;background:linear-gradient(180deg,#9f42ff 0%,#8a38f0 100%);display:grid;grid-template-columns:auto 1fr;align-items:center;gap:10px;box-sizing:border-box}
        .cp-back{width:40px;height:40px;border:0;border-radius:10px;background:transparent;color:#fff;display:grid;place-items:center}
        .cp-back svg{width:24px;height:24px}
        .cp-title{margin:0;color:#fff;font-size:34px;line-height:1;font-weight:800;letter-spacing:-.4px}
        .cp-wrap{padding:18px 18px calc(120px + env(safe-area-inset-bottom))}
        .cp-security{display:grid;grid-template-columns:56px 1fr;align-items:center;gap:14px;padding:18px 16px;border-radius:22px;border:1px solid rgba(80,157,255,.36);background:#331b4e}
        .cp-security-icon{width:56px;height:56px;border-radius:16px;background:rgba(49,167,255,.22);color:#35a3ff;display:grid;place-items:center;font-size:30px}
        .cp-security-title{margin:0;color:#fff;font-size:18px;font-weight:800}
        .cp-security-sub{margin:4px 0 0;color:rgba(255,255,255,.75);font-size:15px;line-height:1.35}
        .cp-group{margin-top:18px}
        .cp-label{margin:0 0 8px;color:#fff;font-size:21px;font-weight:800}
        .cp-field-wrap{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;height:64px;border-radius:18px;border:1px solid rgba(255,255,255,.1);background:#331b4e;padding:0 14px}
        .cp-field-icon{color:#a94dff;font-size:27px}
        .cp-input{width:100%;border:0;outline:0;background:transparent;color:#fff;font-size:17px}
        .cp-input::placeholder{color:rgba(255,255,255,.45)}
        .cp-eye{border:0;background:transparent;color:rgba(255,255,255,.72);font-size:26px;line-height:1}
        .cp-submit{margin-top:22px;width:100%;height:64px;border:0;border-radius:18px;background:linear-gradient(90deg,#b44eff,#8b37f1);color:#fff;font-size:22px;font-weight:800}
        .cp-forgot{display:block;margin-top:16px;text-align:center;color:#a84cff;text-decoration:none;font-size:20px;font-weight:700}
        .cp-msg{margin-top:12px;font-size:14px;color:#fcb4d0;display:none}
        .cp-msg.show{display:block}
        .mp-screen{padding:0;background:#f6f6f7;height:calc(100dvh - 90px - env(safe-area-inset-bottom));overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}
        .mp-head{position:sticky;top:0;z-index:8;height:76px;padding:calc(10px + env(safe-area-inset-top)) 16px 10px;background:#fff;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;box-sizing:border-box;border-bottom:1px solid #ececf0}
        .mp-back,.mp-refresh{width:40px;height:40px;border:0;border-radius:10px;background:transparent;color:#121217;display:grid;place-items:center}
        .mp-back svg,.mp-refresh svg{width:24px;height:24px}
        .mp-title{margin:0;color:#111;font-size:34px;line-height:1;font-weight:800;letter-spacing:-.4px}
        .mp-info{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:flex-start;background:#ececee;padding:16px 16px}
        .mp-info-ico{width:34px;height:34px;border-radius:50%;border:2px solid #a24bff;color:#a24bff;display:grid;place-items:center;font-size:21px;line-height:1}
        .mp-info-text{margin:0;color:#2f2f34;font-size:16px;line-height:1.35}
        .mp-wrap{padding:14px 14px calc(110px + env(safe-area-inset-bottom))}
        .mp-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
        .mp-card{position:relative;aspect-ratio:0.74;border-radius:20px;overflow:hidden;background:#ddd center/cover no-repeat}
        .mp-primary{position:absolute;left:10px;top:10px;z-index:2;height:34px;padding:0 14px;border-radius:999px;border:0;background:#2b9df7;color:#fff;font-size:13px;font-weight:800;display:inline-flex;align-items:center;gap:8px}
        .mp-edit{position:absolute;right:10px;top:10px;z-index:2;width:52px;height:52px;border-radius:50%;border:0;background:rgba(28,29,35,.68);color:#fff;font-size:25px;display:grid;place-items:center}
        .mp-add{aspect-ratio:0.74;border-radius:22px;border:3px solid #b48ce8;background:#ececee;display:grid;place-items:center;text-align:center}
        .mp-add-btn{width:96px;height:96px;border-radius:50%;border:0;background:#dccaf2;color:#933fe8;font-size:44px;display:grid;place-items:center;margin:0 auto}
        .mp-add-title{margin:12px 0 0;color:#8f37e2;font-size:19px;font-weight:800}
        .mp-add-count{margin:4px 0 0;color:#6c6c72;font-size:15px}
        .mp-upload{display:none;margin:12px 4px 0;padding:12px 12px 10px;border-radius:14px;background:#fff;border:1px solid #ececf0}
        .mp-upload.show{display:block}
        .mp-upload-row{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#2f2f34;font-size:13px;font-weight:700}
        .mp-upload-track{margin-top:8px;height:10px;border-radius:999px;background:#efeff3;overflow:hidden}
        .mp-upload-fill{height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,#a24bff,#2b9df7);transition:width .18s linear}
        .mp-msg{margin:12px 4px 0;font-size:14px;color:#d14b7f;display:none}
        .mp-msg.show{display:block}
        .mp-viewer{position:fixed;inset:0;z-index:34;background:rgba(8,8,12,.92);display:none}
        .mp-viewer.show{display:block}
        .mp-viewer-photo{position:absolute;inset:0;background:center/contain no-repeat}
        .mp-viewer-top{position:absolute;top:max(10px,env(safe-area-inset-top));left:0;right:0;display:flex;justify-content:space-between;padding:0 14px}
        .mp-viewer-btn{width:44px;height:44px;border-radius:12px;border:0;background:rgba(255,255,255,.14);color:#fff;font-size:24px;display:grid;place-items:center}
        .mp-sheet{position:fixed;inset:0;z-index:35;background:rgba(10,3,19,.46);display:none;align-items:flex-end}
        .mp-sheet.show{display:flex}
        .mp-sheet-card{width:100%;border-radius:22px 22px 0 0;background:#fff;padding:12px 12px calc(14px + env(safe-area-inset-bottom));box-shadow:0 -12px 30px rgba(0,0,0,.14)}
        .mp-sheet-btn{width:100%;height:54px;border:0;border-radius:12px;background:#f4f4f6;color:#17171b;font-size:16px;font-weight:700;margin-top:8px}
        .mp-sheet-btn.primary{background:#f2e8ff;color:#8f37e2}
        .mp-sheet-btn.danger{background:#ffe9ef;color:#d7416f}
        .action-popup{position:fixed;inset:0;z-index:40;display:none;align-items:center;justify-content:center;background:rgba(10,3,19,.56);backdrop-filter:blur(2px)}
        .action-popup.show{display:flex}
        .action-popup-card{width:min(88vw,340px);border-radius:16px;background:#fff;padding:16px 14px;text-align:center;box-shadow:0 16px 40px rgba(8,2,18,.35)}
        .action-popup-title{margin:0;color:#17171b;font-size:22px;font-weight:800}
        .action-popup-text{margin:10px 0 0;color:#44474f;font-size:15px;line-height:1.35}
        .action-popup-ok{margin-top:14px;min-width:110px;height:42px;border:0;border-radius:10px;background:#8f37e2;color:#fff;font-size:16px;font-weight:800}
        @media (max-width:380px){
            .app-screen[data-tab="discover"]{gap:6px;padding:max(8px,env(safe-area-inset-top)) 10px 8px}
            .app-top-row{margin-bottom:2px}
            .app-top-btn{width:38px;height:38px;border-radius:10px}
            .app-top-btn svg{width:18px;height:18px}
            .discover-title{font-size:26px;margin:0}
            .compatibility-screen{padding:max(12px,env(safe-area-inset-top)) 12px 12px}
            .compat-head-btn{width:48px;height:48px}
            .compat-title{font-size:48px}
            .compat-progress{font-size:15px}
            .compat-set-btn{min-width:190px;height:52px;font-size:16px}
            .compat-badge{min-width:30px;height:30px;font-size:16px}
            .compat-section-title{font-size:18px}
            .compat-section-sub{font-size:14px}
            .compat-card{grid-template-columns:66px 1fr auto}
            .compat-avatar{width:66px;height:66px}
            .compat-name{font-size:18px}
            .compat-status{font-size:15px}
            .compat-check-btn,.compat-pending-pill{height:46px;min-width:112px;font-size:16px}
            .compat-sheet{padding:8px 10px 14px}
            .compat-sheet-title{font-size:22px}
            .compat-q-num{width:40px;height:40px;font-size:24px}
            .compat-q-text{font-size:15px}
            .compat-q-answer{margin-left:50px;font-size:14px}
            .compat-answer-question{font-size:18px}
            .compat-option{min-height:58px;font-size:16px}
            .compat-option .radio{width:26px;height:26px;border-width:3px}
            .compat-meter{width:130px;height:130px}
            .compat-meter-inner{width:98px;height:98px}
            .compat-meter-value{font-size:28px}
            .discover-menu-panel{width:min(92vw,360px);padding:max(14px,env(safe-area-inset-top)) 10px calc(14px + env(safe-area-inset-bottom))}
            .discover-menu-close{width:42px;height:42px;font-size:28px}
            .discover-menu-avatar{width:68px;height:68px}
            .discover-menu-user-name{font-size:15px}
            .discover-menu-user-email{font-size:11px}
            .discover-menu-credit-icon{width:52px;height:52px;font-size:24px}
            .discover-menu-credit-title{font-size:13px}
            .discover-menu-credit-value{font-size:22px}
            .discover-menu-add{height:34px;min-width:62px;font-size:14px}
            .discover-menu-section span{font-size:16px}
            .discover-menu-item{grid-template-columns:56px 1fr auto}
            .discover-menu-item-icon{width:44px;height:44px;font-size:20px}
            .discover-menu-item-title{font-size:13px}
            .discover-menu-item-sub{font-size:11px}
            .discover-menu-item-arrow{font-size:20px}
            .discover-card{border-radius:20px;min-height:260px}
            .discover-card.is-ad{height:auto;min-height:260px;max-height:none}
            .distance-pill{top:10px;left:10px;padding:5px 9px;font-size:12px}
            .discover-meta{left:10px;right:10px;bottom:10px}
            .discover-name{font-size:26px}
            .discover-bio{font-size:13px}
            .discover-actions{gap:6px;max-width:200px;margin:2px auto 0}
            .discover-gesture-badge{width:68px;height:68px;font-size:34px}
            .discover-float-action{font-size:88px}
            .discover-location-title{font-size:34px}
            .discover-location-icon-wrap{width:160px;height:160px}
            .discover-location-allow{height:52px;font-size:24px}
            .discover-loading-title{font-size:28px}
            .discover-loading-core{padding:22px 18px;border-radius:20px}
            .discover-match-art{margin-top:18px;height:300px;width:min(88vw,320px)}
            .discover-match-card{width:168px;height:230px;border-radius:22px}
            .discover-match-card.front{top:86px}
            .discover-match-heart{width:58px;height:58px;font-size:28px}
            .discover-match-title{font-size:36px}
            .discover-match-sub{font-size:16px}
            .discover-match-btn{height:56px;font-size:30px;border-radius:18px}
            .action-circle{width:48px;height:48px;font-size:20px}
            .action-circle.like{width:58px;height:58px;font-size:24px}
            .profile-hero{height:500px}
            .profile-swipe-btn.pass,.profile-swipe-btn.star{width:80px;height:80px;font-size:36px}
            .profile-swipe-btn.like{width:104px;height:104px;font-size:44px}
            .profile-name{font-size:20px}
            .profile-label,.profile-section-title{font-size:16px}
            .profile-bio,.profile-text,.profile-about{font-size:16px}
            .profile-pill{font-size:14px}
            .profile-chip{font-size:14px}
            .profile-readmore,.profile-link{font-size:14px}
        }
        .bottom-nav{position:fixed;left:0;right:0;bottom:0;width:100%;max-width:100%;margin:0 auto;z-index:10;background:#fff;border-top:1px solid #e9e9ed;display:grid;grid-template-columns:repeat(5,1fr);padding:8px 4px calc(8px + env(safe-area-inset-bottom));box-sizing:border-box}
        .tab-btn{border:0;background:transparent;color:#a1a1a6;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:9px;font-weight:500}
        .tab-btn .icon{width:28px;height:28px;display:grid;place-items:center;position:relative} .tab-btn .icon svg{width:24px;height:24px}
        .icon-style{fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
        .tab-btn .label{font-size:12px;line-height:1;letter-spacing:-.1px}
        .tab-btn.active{color:#f83f71}.tab-dot{position:absolute;width:10px;height:10px;border-radius:50%;background:#ff456f;right:-1px;top:-1px}
        .tab-count{display:none;position:absolute;min-width:18px;height:18px;border-radius:999px;background:#ff456f;color:#fff;font-size:10px;font-weight:800;line-height:1;padding:0 5px;right:-8px;top:-8px;place-items:center}
        .tab-count.show{display:grid}
        .tab-btn:disabled{opacity:.45}.hide{display:none!important}
    }

@media (max-width:1024px){
        .desktop-shell{width:min(100%,94vw)}
        .desktop-hero-grid,.desktop-confidence-grid,.desktop-chat-grid,.desktop-meet .columns,.desktop-safety-grid{grid-template-columns:1fr;gap:24px}
        .desktop-hero-copy h1{font-size:clamp(34px,11vw,56px)}
        .desktop-hero-copy p{font-size:17px}
        .desktop-avatar{width:min(78vw,320px)}
        .desktop-name-tag.left,.desktop-name-tag.right{top:auto;bottom:10px;transform:none}
        .desktop-name-tag.left{left:8px}
        .desktop-name-tag.right{right:8px}
        .desktop-meet .csms-cta-box{padding:32px 20px}
}

@media (min-width:1025px){
        body.show-mobile-home{background:#d8c8ea}
        body.show-mobile-home .mobile-home{background:transparent;min-height:100vh;padding:0;display:flex;justify-content:center}
        body.show-mobile-home .mobile-auth,
        body.show-mobile-home .mobile-app{width:min(560px,96vw);margin:0 auto;border-left:1px solid #e8e8ef;border-right:1px solid #e8e8ef}
        body.show-mobile-home .bottom-nav{left:50%;right:auto;transform:translateX(-50%);width:min(560px,96vw)}
}

