/* PQR_LINK_IN_BIO_THEMES_V1 */
.lib-theme-gallery{
    padding:clamp(28px,5vw,58px);
    border:1px solid var(--lib-v1-border);
    border-radius:28px;
    color:var(--lib-v1-text);
    background:var(--lib-v1-panel);
    box-shadow:var(--lib-v1-shadow);
}

.lib-theme-heading{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:25px;
    margin-bottom:24px;
}

.lib-theme-heading > div:first-child{max-width:760px}

.lib-theme-heading h2{
    margin:8px 0 12px;
    color:var(--lib-v1-text);
    font-size:clamp(29px,4vw,48px);
    line-height:1.08;
    letter-spacing:-.045em;
}

.lib-theme-heading p,
.lib-theme-stage > p{
    color:var(--lib-v1-muted);
    line-height:1.7;
}

.lib-theme-count{
    display:grid;
    min-width:130px;
    padding:17px;
    border:1px solid var(--lib-v1-border);
    border-radius:18px;
    text-align:center;
    background:var(--lib-v1-panel-soft);
}

.lib-theme-count strong{
    color:var(--lib-v1-accent);
    font-size:30px;
    line-height:1;
}

.lib-theme-count span{
    margin-top:7px;
    color:var(--lib-v1-muted);
    font-size:12px;
    font-weight:700;
}

.lib-theme-filters{
    display:flex;
    gap:8px;
    margin-bottom:22px;
    padding-bottom:9px;
    overflow-x:auto;
}

.lib-theme-filters button{
    flex:0 0 auto;
    min-height:40px;
    padding:8px 15px;
    border:1px solid var(--lib-v1-border);
    border-radius:999px;
    color:var(--lib-v1-text);
    background:var(--lib-v1-panel-soft);
    font:700 13px/1.2 inherit;
    cursor:pointer;
}

.lib-theme-filters button:hover,
.lib-theme-filters button.is-active{
    border-color:var(--lib-v1-accent);
    color:#fff;
    background:var(--lib-v1-accent);
}

.lib-theme-layout{
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);
    gap:24px;
    align-items:start;
}

.lib-theme-list{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:13px;
}

.lib-theme-card{
    position:relative;
    min-width:0;
    padding:9px;
    border:2px solid var(--lib-v1-border);
    border-radius:18px;
    text-align:left;
    color:var(--lib-v1-text);
    background:var(--lib-v1-panel-soft);
    cursor:pointer;
    transition:.22s ease;
}

.lib-theme-card:hover{
    transform:translateY(-3px);
    border-color:var(--lib-v1-accent);
}

.lib-theme-card.is-active{
    border-color:var(--lib-v1-accent);
    box-shadow:0 0 0 3px var(--lib-v1-soft);
}

.lib-theme-card[hidden]{display:none}

.lib-theme-card-preview{
    display:flex;
    flex-direction:column;
    align-items:center;
    min-height:128px;
    padding:15px 10px;
    overflow:hidden;
    border-radius:12px;
    color:var(--card-text);
    background:var(--card-bg);
    background-size:28px 28px,28px 28px,auto;
}

.lib-theme-mini-avatar{
    width:27px;
    height:27px;
    margin-bottom:7px;
    border:2px solid var(--card-accent);
    border-radius:50%;
}

.lib-theme-mini-name{
    width:42px;
    height:5px;
    margin-bottom:10px;
    border-radius:99px;
    background:var(--card-text);
}

.lib-theme-mini-button{
    width:92%;
    height:17px;
    margin:3px 0;
    border:1px solid var(--card-border);
    border-radius:var(--card-radius);
    background:var(--card-button);
}

.lib-theme-mini-button.short{width:68%}

.lib-theme-card-copy{
    display:grid;
    padding:10px 3px 2px;
}

.lib-theme-card-copy strong{
    overflow:hidden;
    color:var(--lib-v1-text);
    font-size:13px;
    text-overflow:ellipsis;
    white-space:nowrap;
}

.lib-theme-card-copy small{
    color:var(--lib-v1-muted);
    font-size:11px;
}

.lib-theme-check{
    display:none;
    place-items:center;
    position:absolute;
    top:15px;
    right:15px;
    width:25px;
    height:25px;
    border-radius:50%;
    color:#fff;
    background:var(--lib-v1-accent);
    font-size:11px;
}

.lib-theme-card.is-active .lib-theme-check{display:grid}

.lib-theme-stage{
    position:sticky;
    top:22px;
    padding:18px;
    border:1px solid var(--lib-v1-border);
    border-radius:23px;
    background:var(--lib-v1-panel-soft);
}

.lib-theme-stage-bar{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:15px;
}

.lib-theme-stage-bar > div{display:grid}

.lib-theme-stage-bar span{
    color:var(--lib-v1-muted);
    font-size:10px;
    font-weight:800;
    letter-spacing:.08em;
}

.lib-theme-stage-bar strong{
    color:var(--lib-v1-text);
    font-size:18px;
}

.lib-theme-live{
    display:flex;
    align-items:center;
    gap:6px;
    padding:6px 9px;
    border-radius:999px;
    color:#13783b!important;
    background:#dcfce7;
}

.lib-theme-live i{
    width:7px;
    height:7px;
    border-radius:50%;
    background:#22c55e;
}

.lib-theme-phone{
    max-width:310px;
    margin:auto;
    padding:10px;
    border-radius:35px;
    background:#0c1422;
    box-shadow:0 24px 55px rgba(22,29,48,.24);
}

.lib-theme-phone-screen{
    --demo-bg:#f7f8fb;
    --demo-text:#172033;
    --demo-accent:#2563eb;
    --demo-button:#fff;
    --demo-button-text:#172033;
    --demo-border:#e5e7eb;
    --demo-radius:18px;

    display:flex;
    flex-direction:column;
    align-items:center;
    position:relative;
    min-height:535px;
    padding:42px 20px 25px;
    overflow:hidden;
    border-radius:27px;
    color:var(--demo-text);
    background:var(--demo-bg);
    background-size:32px 32px,32px 32px,auto;
    transition:background .4s ease,color .3s ease;
}

.lib-theme-decoration{
    position:absolute;
    inset:0;
    pointer-events:none;
}

.lib-theme-avatar{
    display:grid;
    place-items:center;
    position:relative;
    z-index:2;
    width:72px;
    height:72px;
    border:3px solid var(--demo-accent);
    border-radius:50%;
    color:var(--demo-accent);
    background:rgba(255,255,255,.80);
}

.lib-theme-profile-name{
    position:relative;
    z-index:2;
    margin-top:14px;
    color:var(--demo-text);
    font-size:20px;
}

.lib-theme-profile-copy{
    position:relative;
    z-index:2;
    margin:4px 0 20px;
    color:var(--demo-text);
    text-align:center;
    font-size:13px;
    opacity:.72;
}

.lib-theme-demo-button{
    display:flex;
    align-items:center;
    gap:10px;
    position:relative;
    z-index:2;
    width:100%;
    min-height:50px;
    margin:6px 0;
    padding:11px 14px;
    border:1px solid var(--demo-border);
    border-radius:var(--demo-radius);
    color:var(--demo-button-text);
    background:var(--demo-button);
    font-size:13px;
    font-weight:700;
    box-shadow:0 9px 22px rgba(0,0,0,.09);
    transition:.35s ease;
}

.lib-theme-demo-button i{color:var(--demo-accent)}

.lib-theme-socials{
    display:flex;
    gap:16px;
    position:relative;
    z-index:2;
    margin:auto 0 18px;
    color:var(--demo-accent);
    font-size:18px;
}

.lib-theme-phone-screen > small{
    position:relative;
    z-index:2;
    color:var(--demo-text);
    opacity:.65;
}

.lib-theme-stage > p{
    min-height:52px;
    margin:18px 0;
}

.lib-theme-stage .lib-primary-action{
    width:100%;
    justify-content:center;
    text-align:center;
}

.lib-theme-phone-screen[data-effect="animated"]{
    background-size:300% 300%;
    animation:libThemeGradient 8s ease infinite;
}

.lib-theme-phone-screen[data-effect="cyberpunk"] .lib-theme-demo-button{
    box-shadow:0 0 15px var(--demo-accent);
}

.lib-theme-phone-screen[data-effect="floating-bubbles"] .lib-theme-decoration{
    background:
        radial-gradient(circle at 20% 80%,rgba(255,255,255,.25) 0 14px,transparent 15px),
        radial-gradient(circle at 80% 30%,rgba(255,255,255,.20) 0 22px,transparent 23px);
    animation:libThemeFloat 5s ease-in-out infinite;
}

.lib-theme-phone-screen[data-effect="pulsating-starfield"]{
    animation:libThemePulse 4s ease-in-out infinite;
}

@keyframes libThemeGradient{
    0%,100%{background-position:0 50%}
    50%{background-position:100% 50%}
}

@keyframes libThemeFloat{
    0%,100%{transform:translateY(0)}
    50%{transform:translateY(-14px)}
}

@keyframes libThemePulse{
    0%,100%{filter:brightness(.9)}
    50%{filter:brightness(1.18)}
}

@media(max-width:1050px){
    .lib-theme-layout{grid-template-columns:1fr}
    .lib-theme-stage{position:relative;top:auto}
    .lib-theme-list{
        grid-template-columns:repeat(4,minmax(0,1fr));
    }
}

@media(max-width:780px){
    .lib-theme-gallery{padding:25px 18px}

    .lib-theme-heading{
        align-items:flex-start;
        flex-direction:column;
    }

    .lib-theme-count{
        display:flex;
        align-items:center;
        gap:10px;
        min-width:0;
    }

    .lib-theme-count span{margin:0}

    .lib-theme-list{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(prefers-reduced-motion:reduce){
    .lib-theme-phone-screen,
    .lib-theme-decoration{
        animation:none!important;
    }

    .lib-theme-card{
        transition:none;
    }

    .lib-theme-card:hover{
        transform:none;
    }
}