
:root{
    --hot-bg:#0a0a0f;
    --hot-panel:#11131a;
    --hot-panel-2:#171923;
    --hot-border:#242838;
    --hot-cyan:#00e7ff;
    --hot-cyan-soft:#7cefff;
    --hot-magenta:#ff2bd6;
    --hot-magenta-soft:#ff77e6;
    --hot-text:#f5f7fb;
    --hot-muted:#bfc6d8;
    --hot-card-border:rgba(0,231,255,.20);
}
body{ background:#0d0f14 !important; }
.site,#page,.site-content,#content,.entry-content,.wp-site-blocks,main{ background:transparent !important; }
.ast-separate-container,.ast-container,.site-content > .ast-container,.entry-content > .wp-block-group,.entry-content > .wp-block-post-content,.is-layout-constrained{ background:transparent !important; }

.msp-home-wrapper{
    background:
        radial-gradient(circle at top, rgba(0,231,255,.06), transparent 28%),
        radial-gradient(circle at top right, rgba(255,43,214,.07), transparent 22%),
        #0d0f14;
    padding:0 0 30px;
    margin:0;
    position:relative;
    z-index:1;
}
.msp-topbar{
    background: linear-gradient(180deg, #090a0f 0%, #11131a 100%);
    border-bottom: 1px solid rgba(0,231,255,.18);
    box-shadow: 0 8px 24px rgba(0,0,0,.28);
    position:relative;
    z-index:2;
}
.msp-topbar-inner{ max-width:1080px; margin:0 auto; padding:10px 12px 12px; }
.msp-brand{ display:flex; justify-content:center; align-items:center; min-height:0; margin:0 0 10px; }
.msp-brand-link,.msp-brand-image-link{ display:inline-flex; align-items:center; justify-content:center; text-decoration:none; line-height:1; margin:0; padding:0; }
.msp-brand-link{ gap:2px; font-size:54px; font-weight:300; }
.msp-brand-hot{ color:var(--hot-magenta); }
.msp-brand-name{ color:var(--hot-cyan); }
.msp-brand-image{ display:block; max-height:110px; width:auto; max-width:100%; object-fit:contain; margin:0 auto !important; box-shadow:none !important; }

.msp-filter-bar,.msp-subfilter-bar{
    display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin:0; padding:0;
}
.msp-subfilter-bar{ margin-top:10px; }
.msp-filter-chip,.msp-subfilter-chip{
    display:inline-flex; align-items:center; justify-content:center; min-height:38px; padding:8px 14px;
    border-radius:999px; background:linear-gradient(180deg, #171923 0%, #0f1118 100%);
    border:1px solid rgba(0,231,255,.20); text-decoration:none; box-shadow: inset 0 0 0 1px rgba(255,43,214,.08);
}
.msp-subfilter-chip{ min-height:34px; padding:7px 12px; border-color: rgba(255,43,214,.22); }
.msp-filter-chip span,.msp-subfilter-chip span{
    color:var(--hot-text) !important; font-weight:700; font-size:14px; letter-spacing:.2px; line-height:1.1;
}
.msp-subfilter-chip span{ font-size:13px; color:var(--hot-cyan-soft) !important; }
.msp-filter-chip.active span,.msp-filter-chip:hover span,.msp-subfilter-chip.active span,.msp-subfilter-chip:hover span{ color:#fff !important; }
.msp-filter-chip.active,.msp-filter-chip:hover,.msp-subfilter-chip.active,.msp-subfilter-chip:hover{
    border-color: rgba(255,43,214,.65);
    box-shadow: 0 0 0 1px rgba(255,43,214,.2), 0 0 18px rgba(255,43,214,.18);
    background: linear-gradient(180deg, rgba(255,43,214,.18), rgba(0,231,255,.10));
}

.msp-main-wrap{ max-width:1080px; margin:14px auto 0; padding:0 10px; }
.msp-grid-wrap{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; align-items:start; }

.msp-card{
    position:relative;
    background:
        radial-gradient(circle at top left, rgba(255,43,214,.24), transparent 42%),
        radial-gradient(circle at bottom right, rgba(0,231,255,.22), transparent 45%),
        linear-gradient(180deg, #161922 0%, #0e1118 100%);
    border:1px solid var(--hot-card-border);
    box-shadow: 0 10px 24px rgba(0,0,0,.34), 0 0 0 1px rgba(255,43,214,.08) inset, 0 0 18px rgba(0,231,255,.08);
    overflow:hidden; border-radius:8px;
}
.msp-card-link{ position:absolute; inset:0; z-index:5; }
.msp-card-inner{ position:relative; z-index:1; }
.msp-model-name{
    margin:10px 8px 6px; text-align:center; color:var(--hot-cyan);
    text-shadow:0 0 10px rgba(0,231,255,.28), 0 0 18px rgba(0,231,255,.16);
    font-size:22px; line-height:1.15; font-weight:700; letter-spacing:.2px;
}
.msp-photo-wrap{ position:relative; margin:0 8px; overflow:hidden; background:#0c0f15; border:1px solid rgba(255,255,255,.07); border-radius:4px; }
.msp-photo,.msp-photo-placeholder{ display:block; width:100%; aspect-ratio:3 / 4.2; object-fit:cover; }
.msp-photo-placeholder{ background: linear-gradient(180deg, #20242f, #12151d); }
.msp-badges{
    position:absolute; top:8px; left:8px; display:flex; flex-direction:column; gap:5px; z-index:3;
}
.msp-badge{
    width:auto; min-width:54px; min-height:28px; display:inline-flex; align-items:center; justify-content:center;
    text-align:center; border-radius:999px; font-size:12px; font-weight:700; line-height:1;
    padding:6px 10px; box-shadow:0 4px 10px rgba(0,0,0,.22);
}
.msp-verified-ribbon{
    position:absolute; right:-40px; bottom:18px; transform:rotate(-45deg);
    font-size:13px; font-weight:700; letter-spacing:.4px; padding:8px 42px; z-index:3; box-shadow:0 2px 8px rgba(0,0,0,.2);
}
.msp-model-subtitle{
    margin:8px 10px 12px; padding:10px 10px 11px; text-align:center; color:var(--hot-magenta-soft);
    background:linear-gradient(180deg, rgba(255,43,214,.14), rgba(0,231,255,.08));
    border:1px solid rgba(255,43,214,.16); border-radius:999px;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.03), 0 0 14px rgba(255,43,214,.08);
    font-size:17px; line-height:1.1; font-weight:700; text-shadow:0 0 10px rgba(255,43,214,.14);
}
.msp-no-models{
    grid-column:1 / -1; background:#11131a; border:1px solid var(--hot-card-border); color:var(--hot-text);
    padding:30px; text-align:center; border-radius:8px;
}

.menu-toggle,.ast-mobile-menu-trigger-minimal,.ast-mobile-menu-buttons,.ast-header-break-point .main-header-menu-toggle,
.wp-block-navigation__responsive-container-open,.wp-block-navigation__responsive-container-close,.wp-block-navigation__responsive-container{
    display:none !important;
}
.site-footer,.site-primary-footer-wrap,.ast-builder-footer-grid-columns,footer,footer.site-footer{
    background:#0d0f14 !important; color:var(--hot-muted) !important; border-top:1px solid rgba(255,43,214,.16);
}
footer a,.site-footer a{ color:var(--hot-cyan-soft) !important; }

@media (min-width:768px){
    .msp-grid-wrap{ grid-template-columns:repeat(4,minmax(0,1fr)); }
    .msp-model-name{ font-size:20px; }
    .msp-model-subtitle{ font-size:16px; }
}
@media (max-width:767px){
    .msp-topbar-inner{ padding:8px 8px 10px; }
    .msp-brand{ margin:0 0 8px; }
    .msp-brand-link{ font-size:40px; }
    .msp-brand-image{ max-height:64px; }
    .msp-filter-bar,.msp-subfilter-bar{ gap:8px; }
    .msp-filter-chip{ min-height:34px; padding:7px 12px; }
    .msp-filter-chip span,.msp-subfilter-chip span{ font-size:13px; }
    .msp-main-wrap{ margin-top:10px; padding:0 6px; }
    .msp-grid-wrap{ gap:8px; }
    .msp-model-name{ font-size:18px; margin:8px 6px 5px; }
    .msp-photo-wrap{ margin:0 6px; }
    .msp-badge{ min-width:42px; min-height:22px; font-size:10px; padding:5px 8px; }
    .msp-verified-ribbon{ right:-36px; bottom:16px; font-size:10px; padding:6px 38px; }
    .msp-model-subtitle{ margin:7px 8px 10px; padding:8px 8px 9px; font-size:14px; }
}

/* Single model page */
.single-model_listing,
.single-model_listing body{
    background:#0d0f14 !important;
}
.single-model_listing .site,
.single-model_listing #page,
.single-model_listing .site-content,
.single-model_listing #content,
.single-model_listing .entry-content,
.single-model_listing .wp-site-blocks,
.single-model_listing main{
    background:transparent !important;
}
.single-model_listing .site-content > .ast-container,
.single-model_listing .ast-container,
.single-model_listing .ast-separate-container{
    background:transparent !important;
}

.single-model_listing header.site-header,
.single-model_listing .site-header,
.single-model_listing .site-primary-header-wrap,
.single-model_listing .ast-primary-header-bar,
.single-model_listing .ast-above-header-wrap,
.single-model_listing .ast-below-header-wrap,
.single-model_listing .entry-header,
.single-model_listing .post-navigation,
.single-model_listing .comments-area,
.single-model_listing .related-posts,
.single-model_listing .site-footer-above-section,
.single-model_listing .site-below-footer-wrap{
    display:none !important;
}

.msp-single-page{
    min-height:100vh;
    background:
        radial-gradient(circle at top, rgba(0,231,255,.07), transparent 28%),
        radial-gradient(circle at top right, rgba(255,43,214,.08), transparent 24%),
        #0d0f14;
    color:var(--hot-text);
    padding-bottom:110px;
}
.msp-single-topbar{
    position:sticky;
    top:0;
    z-index:30;
    background:linear-gradient(180deg, rgba(9,10,15,.96), rgba(17,19,26,.96));
    border-bottom:1px solid rgba(0,231,255,.18);
    box-shadow:0 8px 24px rgba(0,0,0,.28);
}
.msp-single-topbar-inner{
    max-width:1080px;
    margin:0 auto;
    padding:12px 14px;
    display:flex;
    justify-content:center;
    align-items:center;
}
.msp-single-logo-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none;
}
.msp-single-logo{
    display:block;
    max-height:82px;
    width:auto;
    max-width:100%;
    object-fit:contain;
}
.msp-single-logo-text{ display:none; }
.msp-single-wrap{
    max-width:1080px;
    margin:18px auto 0;
    padding:0 10px;
}
.msp-single-card{
    display:grid;
    grid-template-columns:minmax(0,420px) minmax(0,1fr);
    gap:18px;
    align-items:start;
    background:
        radial-gradient(circle at top left, rgba(255,43,214,.20), transparent 42%),
        radial-gradient(circle at bottom right, rgba(0,231,255,.18), transparent 44%),
        linear-gradient(180deg, #151924 0%, #0d1118 100%);
    border:1px solid var(--hot-card-border);
    border-radius:14px;
    padding:16px;
    box-shadow:0 14px 30px rgba(0,0,0,.34), 0 0 0 1px rgba(255,43,214,.06) inset;
}
.msp-single-media{
    position:relative;
    overflow:hidden;
    border-radius:10px;
    border:1px solid rgba(255,255,255,.07);
    background:#0c0f15;
}
.msp-single-photo,
.msp-single-photo-placeholder{
    display:block;
    width:100%;
    aspect-ratio:3 / 4.15;
    object-fit:cover;
}
.msp-single-photo-placeholder{
    background:linear-gradient(180deg, #20242f, #12151d);
}
.msp-single-badges{
    position:absolute;
    top:10px;
    left:10px;
    display:flex;
    flex-direction:column;
    gap:6px;
    z-index:3;
}
.msp-single-badge{
    min-width:58px;
    min-height:29px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    padding:6px 11px;
    font-size:12px;
    line-height:1;
    font-weight:800;
    box-shadow:0 4px 10px rgba(0,0,0,.24);
}
.msp-single-ribbon{
    position:absolute;
    right:-40px;
    bottom:22px;
    transform:rotate(-45deg);
    font-size:13px;
    font-weight:800;
    letter-spacing:.4px;
    padding:8px 42px;
    z-index:3;
    box-shadow:0 2px 8px rgba(0,0,0,.22);
}
.msp-single-content{
    min-width:0;
}
.msp-single-title{
    margin:4px 0 10px;
    color:var(--hot-cyan);
    font-size:40px;
    line-height:1.05;
    font-weight:800;
    text-transform:uppercase;
    text-shadow:0 0 10px rgba(0,231,255,.24), 0 0 18px rgba(0,231,255,.12);
}
.msp-single-subtitle{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    margin:0 0 12px;
    padding:10px 16px;
    border-radius:999px;
    background:linear-gradient(180deg, rgba(255,43,214,.14), rgba(0,231,255,.08));
    border:1px solid rgba(255,43,214,.18);
    color:var(--hot-magenta-soft);
    font-size:16px;
    font-weight:700;
}
.msp-single-meta{
    margin:0 0 18px;
    color:var(--hot-muted);
    font-size:14px;
    font-weight:600;
}
.msp-single-description,
.msp-single-description p,
.msp-single-description div,
.msp-single-description span,
.msp-single-description li,
.msp-single-description strong,
.msp-single-description h2,
.msp-single-description h3{
    color:var(--hot-text) !important;
}
.msp-single-description a{
    color:var(--hot-cyan-soft) !important;
}
.msp-single-description p:last-child{
    margin-bottom:0;
}
.msp-single-bottom-bar{
    position:fixed;
    left:0;
    right:0;
    bottom:0;
    z-index:9999;
    display:flex;
    gap:10px;
    padding:12px 14px calc(12px + env(safe-area-inset-bottom));
    background:rgba(8,8,10,.96);
    backdrop-filter:blur(14px);
    border-top:1px solid rgba(255,255,255,.08);
}
.msp-single-btn{
    flex:1;
    min-height:54px;
    border-radius:14px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    text-decoration:none !important;
    color:#fff !important;
    font-size:14px;
    font-weight:800;
    letter-spacing:.6px;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 8px 24px rgba(0,0,0,.25);
    transition:all .25s ease;
}
.msp-single-btn:hover{
    transform:translateY(-2px);
}
.msp-single-btn-call{
    background:linear-gradient(135deg, #24242d, #111118);
    border:1px solid rgba(255,255,255,.12);
}
.msp-single-btn-whatsapp{
    background:linear-gradient(135deg, #1f9d55, #128c7e);
    border:1px solid rgba(255,255,255,.08);
}
.msp-single-btn-telegram{
    background:linear-gradient(135deg, #229ED9, #1677b8);
    border:1px solid rgba(255,255,255,.08);
}
@media (min-width:992px){
    .msp-single-bottom-bar{
        left:50%;
        transform:translateX(-50%);
        width:min(920px, calc(100% - 30px));
        bottom:16px;
        border:1px solid rgba(255,255,255,.08);
        border-radius:18px;
    }
}
@media (max-width:991px){
    .msp-single-card{
        grid-template-columns:1fr;
    }
}
@media (max-width:767px){
    .msp-single-topbar-inner{
        padding:10px 12px;
    }
    .msp-single-logo{
        max-height:58px;
    }
    .msp-single-logo-text{
        font-size:26px;
    }
    .msp-single-wrap{
        margin-top:12px;
        padding:0 6px;
    }
    .msp-single-card{
        padding:10px;
        gap:12px;
        border-radius:10px;
    }
    .msp-single-title{
        font-size:28px;
        margin-bottom:8px;
    }
    .msp-single-subtitle{
        min-height:38px;
        font-size:14px;
        padding:8px 13px;
    }
    .msp-single-badge{
        min-width:46px;
        min-height:24px;
        font-size:10px;
        padding:5px 8px;
    }
    .msp-single-ribbon{
        right:-36px;
        bottom:16px;
        font-size:10px;
        padding:6px 38px;
    }
    .msp-single-btn{
        min-height:50px;
        font-size:13px;
    }
}


/* Single page uses the same header/filter system as listing */
.single-model_listing .msp-topbar--single{
    position:sticky;
    top:0;
    z-index:40;
}
.single-model_listing .msp-topbar--single .msp-topbar-inner{
    max-width:1080px;
    padding:8px 10px 10px;
}
.single-model_listing .msp-topbar--single .msp-brand{
    margin:0 0 8px;
}
.single-model_listing .msp-topbar--single .msp-brand-image{
    max-height:72px;
}
.single-model_listing .msp-topbar--single + .msp-single-wrap{
    margin-top:12px;
}
@media (max-width:767px){
    .single-model_listing .msp-topbar--single .msp-brand-image{
        max-height:58px;
    }
}


/* keep plugin logo clickable without changing layout */
.msp-brand,
.msp-brand-image-link,
.msp-brand-link,
.msp-brand-image,
.msp-single-topbar,
.msp-single-topbar-inner,
.msp-single-logo-link,
.msp-single-logo{
    pointer-events:auto;
}
.msp-brand,
.msp-brand-image-link,
.msp-brand-link,
.msp-single-logo-link{
    position:relative;
    z-index:80;
}
.msp-brand-image,
.msp-single-logo{
    cursor:pointer;
}
