/*
 * Package 114C - Modern Member Subnav + Soft Visual Restore
 * Lightweight CSS polish only.
 */

body.so114c-modern-member{
    background:
        radial-gradient(circle at 8% 8%, rgba(255,143,190,.26), transparent 30%),
        radial-gradient(circle at 92% 10%, rgba(123,97,255,.22), transparent 32%),
        radial-gradient(circle at 50% 100%, rgba(84,190,255,.18), transparent 34%),
        linear-gradient(135deg,#fff8fb 0%,#f8f7ff 42%,#eef7ff 100%)!important;
    min-height:100vh;
    overflow-x:hidden;
}

body.so114c-modern-member::before{
    content:"";
    position:fixed;
    inset:0;
    pointer-events:none;
    z-index:-1;
    background:
        radial-gradient(circle at 18% 34%, rgba(255,255,255,.82), transparent 0 34px, transparent 35px),
        radial-gradient(circle at 76% 28%, rgba(255,255,255,.65), transparent 0 28px, transparent 29px),
        radial-gradient(circle at 85% 72%, rgba(255,255,255,.58), transparent 0 42px, transparent 43px);
    opacity:.68;
}

.so114b-member-subnav{
    width:calc(100% - 32px)!important;
    max-width:1060px!important;
    margin:0 auto 24px!important;
    padding:9px!important;
    border-radius:999px!important;
    position:relative!important;
    z-index:60!important;
    border:1px solid rgba(255,255,255,.78)!important;
    background:
        linear-gradient(135deg,rgba(255,255,255,.92),rgba(255,245,250,.78)),
        linear-gradient(135deg,rgba(243,50,134,.08),rgba(107,124,255,.08))!important;
    box-shadow:
        0 18px 50px rgba(31,41,95,.10),
        inset 0 1px 0 rgba(255,255,255,.95)!important;
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
    overflow:hidden!important;
}

.so114b-member-subnav::before{
    content:"";
    position:absolute;
    inset:-2px;
    border-radius:inherit;
    pointer-events:none;
    background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.72) 38%,transparent 68%);
    transform:translateX(-120%);
    opacity:.55;
}

.so114b-member-subnav-inner{
    position:relative!important;
    z-index:2!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    overflow-x:auto!important;
    scrollbar-width:none!important;
    padding:2px!important;
}

.so114b-member-subnav-inner::-webkit-scrollbar{
    display:none;
}

.so114b-member-subnav a{
    flex:0 0 auto!important;
    min-height:44px!important;
    padding:10px 15px!important;
    border-radius:999px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    color:#253169!important;
    font-weight:950!important;
    letter-spacing:-.015em!important;
    text-decoration:none!important;
    background:rgba(255,255,255,.72)!important;
    border:1px solid rgba(255,255,255,.9)!important;
    box-shadow:0 8px 22px rgba(17,26,61,.05)!important;
    transition:
        transform .18s ease,
        box-shadow .18s ease,
        background .18s ease,
        color .18s ease!important;
}

.so114b-member-subnav a .so114b-icon{
    width:24px!important;
    height:24px!important;
    display:inline-grid!important;
    place-items:center!important;
    border-radius:50%!important;
    background:linear-gradient(135deg,rgba(243,50,134,.14),rgba(107,124,255,.14))!important;
    color:#f33286!important;
    font-size:.9rem!important;
    line-height:1!important;
}

.so114b-member-subnav a:hover{
    transform:translateY(-2px)!important;
    background:#fff!important;
    color:#f33286!important;
    box-shadow:0 14px 30px rgba(243,50,134,.13)!important;
}

.so114b-member-subnav a.is-active{
    color:#fff!important;
    background:linear-gradient(135deg,#f33286 0%,#8e65ff 55%,#4aa9ff 100%)!important;
    border-color:transparent!important;
    box-shadow:0 16px 36px rgba(243,50,134,.28)!important;
}

.so114b-member-subnav a.is-active .so114b-icon{
    background:rgba(255,255,255,.20)!important;
    color:#fff!important;
}

.so114b-member-subnav a.is-active::after{
    content:"";
    width:6px;
    height:6px;
    border-radius:999px;
    background:#fff;
    box-shadow:0 0 0 5px rgba(255,255,255,.18);
    margin-left:2px;
}

.so114b-member-subnav .so114b-badge{
    min-width:19px!important;
    height:19px!important;
    padding:0 6px!important;
    border-radius:999px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:.72rem!important;
    font-weight:1000!important;
    background:#ffedf5!important;
    color:#f33286!important;
}

.so114b-member-subnav a.is-active .so114b-badge{
    background:rgba(255,255,255,.23)!important;
    color:#fff!important;
}

/* Soft card lift restored for member pages */
body.so114c-modern-member .card,
body.so114c-modern-member .panel,
body.so114c-modern-member .profile-card,
body.so114c-modern-member .match-card{
    border-radius:22px;
    box-shadow:0 16px 42px rgba(31,41,95,.08);
}

/* Keep top nav readable with the modern background */
.navbar.top-nav,
.top-nav.navbar,
nav.top-nav,
.site-header .navbar{
    margin-bottom:16px!important;
}

@media (prefers-reduced-motion:no-preference){
    body.so114c-modern-member::before{
        animation:so114c-bg-float 13s ease-in-out infinite alternate;
    }

    .so114b-member-subnav::before{
        animation:so114c-shimmer 8s ease-in-out infinite;
    }

    .so114b-member-subnav a .so114b-icon{
        animation:so114c-icon-breathe 4.8s ease-in-out infinite;
    }

    .so114b-member-subnav a:nth-child(2) .so114b-icon{animation-delay:.25s}
    .so114b-member-subnav a:nth-child(3) .so114b-icon{animation-delay:.5s}
    .so114b-member-subnav a:nth-child(4) .so114b-icon{animation-delay:.75s}
    .so114b-member-subnav a:nth-child(5) .so114b-icon{animation-delay:1s}
    .so114b-member-subnav a:nth-child(6) .so114b-icon{animation-delay:1.25s}
    .so114b-member-subnav a:nth-child(7) .so114b-icon{animation-delay:1.5s}
    .so114b-member-subnav a:nth-child(8) .so114b-icon{animation-delay:1.75s}
}

@keyframes so114c-bg-float{
    0%{transform:translate3d(0,0,0) scale(1)}
    100%{transform:translate3d(0,-14px,0) scale(1.025)}
}

@keyframes so114c-shimmer{
    0%,68%{transform:translateX(-120%)}
    100%{transform:translateX(120%)}
}

@keyframes so114c-icon-breathe{
    0%,100%{transform:translateY(0) scale(1)}
    50%{transform:translateY(-1px) scale(1.06)}
}

@media(max-width:860px){
    .so114b-member-subnav{
        width:100%!important;
        max-width:none!important;
        margin:0 0 16px!important;
        border-radius:0!important;
        border-left:0!important;
        border-right:0!important;
        padding:8px!important;
    }

    .so114b-member-subnav-inner{
        justify-content:flex-start!important;
    }

    .so114b-member-subnav a{
        min-height:40px!important;
        padding:8px 12px!important;
        font-size:.9rem!important;
    }
}