/*
 * Playlist Page v8.0
 * CSS autônomo e isolado. Não depende de Aparência > CSS adicional.
 */

.pp7-app,
.pp7-app * { box-sizing: border-box; }
.pp7-app { width: 100%; max-width: 1180px; margin: 0 auto; padding: 18px; background: #fff; }
.pp7-app [hidden] { display: none !important; }
.pp7-admin { max-width: 900px; }
.pp7-hot-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:20px; }
.pp7-hot-fields label { display:grid; gap:6px; padding:12px; background:#fff; border:1px solid #dcdcde; border-radius:6px; }
.pp7-hot-fields select { width:100%; max-width:none; }
@media(max-width:782px){ .pp7-hot-fields{grid-template-columns:1fr;} }

.pp7-app,
.pp7-app * {
    box-sizing: border-box;
}

.pp7-app {
    width: 100%;
    margin: 0 auto;
}

.pp7-app [hidden] {
    display: none !important;
}

.pp7-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 24px;
}

.pp7-filters {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.pp7-filter {
    display: inline-flex;
    align-items: baseline;
    justify-content: center;
    gap: 4px;
    min-height: 38px;
    padding: 8px 14px;
    border-radius: 6px;	
    border: 1px solid #d8d8d8;
    background: black;
    color: white;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;
    transition: border-color .18s ease, background-color .18s ease, color .18s ease;
}

.pp7-filter:hover,
.pp7-filter:focus,
.pp7-filter.is-active {
    border-color: #b32d2e;
    background: #b30000;
    color: #ffffff;
    text-decoration: none;
}

.pp7-filter small {
    font-size: 10px;
    font-weight: 500;
    text-transform: lowercase;
}



.pp7-search-wrap {
    display: block;
    width: min(100%, 300px);
    margin: 0;
}

.pp7-search {
    display: block;
    width: 100%;
    height: 40px;
    margin: 0;
    padding: 8px 12px;
    border: 1px solid #d8d8d8;
    border-radius: 6px;
    background: #ffffff;
    color: #222222;
    font: inherit;
    line-height: 1.2;
    outline: none;
}

.pp7-search:focus {
    border-color: #b32d2e;
    box-shadow: 0 0 0 1px #b32d2e;
}

.pp7-search::placeholder {
    color: #777777;
    opacity: 1;
}

.pp7-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px 18px;
    width: 100%;
}

.pp7-card,
.pp7-container-card {
    min-width: 0;
}

.pp7-playlist-card {
    display: flex;
    flex-direction: column;
}



.pp7-card-thumb {
    display: block;
    position: relative;
    width: 100%;
    overflow: hidden;
    border-radius: 8px;
    background: #ededed;
    text-decoration: none;
	border: 1px solid grey;
}

.pp7-playlist-thumb {
    aspect-ratio: 14 / 9;
}

.pp7-playlist-thumb > * {
    width: 100%;
    height: 100%;
}

.pp7-playlist-thumb img,
.pp7-playlist-thumb picture,
.pp7-playlist-thumb video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}



.pp7-card-body {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding-top: 11px !important;
	margin-bottom: 12px !important;
	
}

.pp7-card-title {
    display: -webkit-box;
    overflow: hidden;
    color: inherit;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.25;
    text-decoration: none;
    overflow-wrap: anywhere;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.pp7-card-title:hover,
.pp7-card-title:focus {
    color: #b30000 !important;
    text-decoration: none;
}

.pp7-card-type {
    margin-top: 5px;
    color: #b32d2e;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.25;
}

.pp7-card-count {
    margin-top: 4px;
    color: #666666;
    font-size: 13px;
    line-height: 1.35;
}

.pp7-card-terms {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 3px 6px;
    min-height: 20px;
    margin-top: 7px;
    color: #777777;
    font-size: 12px;
    line-height: 1.4;
}

.pp7-card-terms a {
    color: inherit;
    text-decoration: none;
}

.pp7-card-terms a:hover,
.pp7-card-terms a:focus {
    color: #b32d2e;
    text-decoration: none;
}

.pp7-term-separator {
    color: #aaaaaa;
}

.pp7-container-card {
    display: flex;
    flex-direction: column;
    color: inherit;
    text-decoration: none;
}

.pp7-container-card:hover,
.pp7-container-card:focus {
    color: inherit;
    text-decoration: none;
}

.pp7-container-thumb {
	 
    display: block;
    width: 100% !important;
    overflow: hidden;
    background: #ededed;
}

.pp7-container-card.is-channel .pp7-container-thumb {
  width: 50%;
    max-width: 60% !important;
   aspect-ratio: 250 / 170 !important;
    border-radius: 1px !important;
	border: 2px solid #b30000 !important;
    box-shadow: 1px 1px 4px #000;
}

.pp7-container-card.is-star {
    align-items: center;
    text-align: center;
}

.pp7-container-card.is-star .pp7-container-thumb {
     width: 50%;
    max-width: 120px;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
	border: 2px solid #b30000;
    box-shadow: 1px 1px 4px black;
}



.pp7-container-placeholder {
    display: block;
    width: 100%;
    height: 100%;
    background: #ededed;
}

.pp7-container-body {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    padding-top: 11px;
	
}

.pp7-container-card.is-star .pp7-container-body {
    align-items: center !important;
}

.pp7-container-name {
    display: block;
    color: #b30000;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.pp7-container-card:hover .pp7-container-name,
.pp7-container-card:focus .pp7-container-name {
    color: #b32d2e;
}

.pp7-container-type {
    display: block;
    margin-top: 5px;
    color: #b32d2e;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.3;
}

.pp7-container-count {
    display: block;
    margin-top: 4px;
    color: #666666;
    font-size: 13px;
    line-height: 1.35;
}

.pp7-container-header {
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
    margin: 0 0 24px;
    padding: 14px;
    border: 1px solid #e2e2e2;
    border-radius: 8px;
    background: none !important;
}



.pp7-container-header.is-star .pp7-container-header-thumb {
    width: 78px;
    height: 78px;
    border-radius: 50%;
}

.pp7-container-header-content {
    min-width: 0;
}

.pp7-container-header-content h2 {
    margin: 0;
    padding: 0;
    color: inherit;
    font-size: clamp(20px, 2vw, 27px);
    font-weight: 700;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.pp7-container-header-content div {
    margin-top: 5px;
    color: #b32d2e;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
}

.pp7-empty {
    grid-column: 1 / -1;
    width: 100%;
    padding: 24px 16px;
    border: 1px dashed #cccccc;
    border-radius: 8px;
    color: #666666;
    text-align: center;
}

.pp7-dynamic-empty {
    margin-top: 20px;
}

.pp7-no-container {
    display: inline-block;
}

/* Administração do Hot */
.pp7-hot-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(260px, 1fr));
    gap: 12px 18px;
    max-width: 1000px;
    margin-top: 20px;
}

.pp7-hot-fields label {
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr);
    align-items: center;
    gap: 10px;
}

.pp7-hot-fields select {
    width: 100%;
    max-width: none;
}

@media (max-width: 1180px) {
    .pp7-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 860px) {
    .pp7-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .pp7-search-wrap {
        width: 100%;
        max-width: none;
    }

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

    .pp7-hot-fields {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 560px) {
    .pp7-filters {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pp7-filter {
        width: 100%;
        padding-right: 8px;
        padding-left: 8px;
    }

    .pp7-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .pp7-container-card.is-star .pp7-container-thumb {
        width: min(72vw, 220px);
    }

    .pp7-container-header {
        gap: 12px;
        padding: 12px;
    }

    .pp7-container-header-thumb {
        width: 80px;
        height: 60px;
    }

    .pp7-container-header.is-star .pp7-container-header-thumb {
        width: 66px;
        height: 66px;
    }

    .pp7-hot-fields label {
        grid-template-columns: 1fr;
        gap: 5px;
    }
}

/* =========================================================
   AJUSTE FINAL — PLAYLISTS SEM ZOOM
   Mantém o .th-letter e preserva o formato dos containers
   ========================================================= */

/* Remove somente zoom/movimento das thumbnails de playlists */
.pp7-card-thumb,
.pp7-card-thumb *,
.pp7-thumb-link,
.pp7-thumb-link *,
.pp7-playlist-thumb,
.pp7-playlist-thumb *,
.pp7-card .pm-playlist-thumb,
.pp7-card .pm-playlist-thumb *,
.pm-playlist-card .pm-playlist-thumb,
.pm-playlist-card .pm-playlist-thumb * {
    transition-property: none !important;
    transform: none !important;
}

.pp7-card-thumb:hover,
.pp7-card-thumb:hover *,
.pp7-thumb-link:hover,
.pp7-thumb-link:hover *,
.pp7-playlist-thumb:hover,
.pp7-playlist-thumb:hover *,
.pp7-card:hover .pm-playlist-thumb,
.pp7-card:hover .pm-playlist-thumb *,
.pm-playlist-card:hover .pm-playlist-thumb,
.pm-playlist-card:hover .pm-playlist-thumb * {
    transform: none !important;
}

/* Container Channel: mantém thumbnail retangular */
.pp7-container-card.is-channel .pp7-container-thumb {
    width: 50% !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 20% !important;
	border: 1px solid grey;
    
}

.pp7-container-card.is-channel .pp7-container-thumb img,
.pp7-container-card.is-channel .pp7-container-thumb picture {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Container Pornstar: mantém círculo perfeito */
.pp7-container-card.is-star {
    align-items: center;
    text-align: center;
}

.pp7-container-card.is-star .pp7-container-thumb {
    width: min(100%, 190px);
    height: auto;
    aspect-ratio: 1 / 1;
    border-radius: 20%;
}

.pp7-container-card.is-star .pp7-container-thumb img,
.pp7-container-card.is-star .pp7-container-thumb picture {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Cabeçalho interno do container: sem fundo cinza */
.pp7-container-header {
    align-items: center;
    justify-content: flex-start;
    padding: 0;
    border: 0;
    background: transparent;
    text-align: left;
}

.pp7-container-header-thumb {
    flex: 0 0 96px;
    width: 96px !important;
    height: 72px;
    aspect-ratio: 4 / 3;
    border-radius: 18px !important;
	
	
}

.pp7-container-header.is-star .pp7-container-header-thumb {
    flex-basis: 78px;
    width: 38px;
    height: 78px;
    aspect-ratio: 1 / 1;
    border-radius: 8px;
}

.pp7-container-header-thumb img,
.pp7-container-header-thumb picture {
	  width: 80%;
    max-width: 199% !important;
 aspect-ratio: 1 / 1;
    object-fit: cover;
	 border-radius: 20%;
	border: 2px solid #b30000;
    box-shadow: 1px 1px 4px black;
}

.pp7-container-header-content {
    min-width: 0;
    text-align: left;
}

@media (max-width: 560px) {
    .pp7-container-card.is-star .pp7-container-thumb {
        width: min(22vw, 30px) !important;
    }

    .pp7-container-header-thumb {
        flex-basis: 80px;
        width: 80px;
        height: 60px;
    }

    .pp7-container-header.is-star .pp7-container-header-thumb {
        flex-basis: 66px;
        width: 66px;
        height: 66px;
    }
}



/* Playlist navigation CSS removed: controlled by Playlist Creator plugin v7.3+ */

/* =========================================================
   PLAYLIST PAGE v5 + PLAYLIST CREATOR v6 — AJUSTES FINAIS
   ========================================================= */
.pp7-card-actions{display:flex;flex-direction:column;align-items:center;gap:4px;margin:5px 0}
.pp7-card-actions a{text-decoration:none;font-weight:700;line-height:1.35}
.pp7-all-videos{color:#222}
.pp7-card-type{color:#b30000}
.pp7-card-actions a:hover{text-decoration:underline}

.pp7-container-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px 14px}
.pp7-container-card{display:flex!important;flex-direction:column;align-items:center;text-align:center}
.pp7-container-thumb,.pp7-container-header-thumb{display:block;aspect-ratio:1/1;overflow:hidden;border:2px solid #b30000;border-radius:12px;background:#202b31;box-sizing:border-box}
.pp7-container-thumb{width:100%}
.pp7-container-thumb img,.pp7-container-header-thumb img,.pp7-container-thumb .pp7-container-placeholder,.pp7-container-header-thumb .pp7-container-placeholder{width:100%;height:100%;object-fit:cover;display:block}
.pp7-container-header{display:flex;align-items:center;gap:16px;margin:0 0 20px}
.pp7-container-header-thumb{width:150px;max-width:35vw;flex:0 0 auto}

.pp7-gallery-view,.pp7-related-view{margin-top:18px}
.pp7-gallery-header{margin-bottom:16px}
.pp7-gallery-title-line{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 10px}
.pp7-gallery-title-line h2{margin:0;font-size:25px;line-height:1.25}
.pp7-gallery-title-line a{font-weight:800;color:#b30000;text-decoration:none}
.pp7-gallery-meta{display:flex;flex-wrap:wrap;gap:4px 7px;margin-top:5px;font-size:13px;color:#555}
.pp7-gallery-meta a{color:#333;text-decoration:none}
.pp7-video-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px 12px}
.pp7-video-card{min-width:0;color:#111;text-decoration:none;text-align:center;}
.pp7-video-thumb{position:relative;display:block;width:100%;aspect-ratio:1/1;overflow:hidden;border-radius:0px;background:#181818}
.pp7-video-thumb img{display:block;width:100%;height:100%;object-fit:cover;border: 1px solid grey}
.pp7-video-thumb small{position:absolute;top:6px;left:6px;min-width:22px;padding:3px 6px;border-radius:5px;background:rgba(0,0,0,.72);color:#fff;font-weight:800;text-align:center}
.pp7-video-card strong{display:block;margin-top:6px;font-size:13px;line-height:1.3}
.pp7-related-heading{margin:0 0 18px;font-size:24px;line-height:1.3; justify-content: left !important}
.pp7-related-heading span{color:#b30000}.pp7-related-heading small{font-size:.75em}

h2.pp7-related-heading {
    display: flex;
    align-items: center;
    justify-content: flex-start !important;
    text-align: left !important;

    width: 100%;
    margin: 0 0 15px;
}




@media(max-width:768px){
  .pp7-container-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:15px 10px}
  .pp7-container-header{align-items:center}
  .pp7-container-header-thumb{width:105px}
  .pp7-video-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 9px}
  .pp7-gallery-title-line{display:block}
  .pp7-gallery-title-line h2{font-size:21px}
  .pp7-gallery-title-line a{display:inline-block;margin-top:2px}
  .pp7-related-heading{font-size:20px}
}

/* =========================================================
   PLAYLIST PAGE v5.1 + PLAYLIST CREATOR v6.1 — REFINOS
   ========================================================= */

/* Cards: thumbnail, links em uma linha e containers */
.pp7-card-body{align-items:center!important;width:100%;padding-top:8px!important;text-align:center}
.pp7-card-actions{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;flex-wrap:wrap;gap:4px!important;margin:2px 0 0!important;font-size:13px}
.pp7-card-action-separator{color:#777;font-weight:700}
.pp7-card-terms{justify-content:center!important;margin-top:5px!important}
.pp7-card-title,.pp7-card-count{display:none!important}

/* Channels exatamente no mesmo padrão visual de Pornstars */
.pp7-container-card.is-channel{align-items:center!important;text-align:center!important}
.pp7-container-card.is-channel .pp7-container-thumb,
.pp7-container-card.is-star .pp7-container-thumb{
    width:min(100%,190px)!important;
    max-width:110px!important;
    height:auto!important;
    aspect-ratio:1/1!important;
    border:2px solid #b30000!important;
    border-radius:20%!important;
    box-shadow:1px 1px 4px #000!important;
}
.pp7-container-card.is-channel .pp7-container-body,
.pp7-container-card.is-star .pp7-container-body{align-items:center!important}

/* Header thumb de Channels e Pornstars também padronizado */
.pp7-container-header.is-channel .pp7-container-header-thumb,
.pp7-container-header.is-star .pp7-container-header-thumb{
    flex:0 0 68px!important;
    width:68px!important;
    height:68px!important;
    aspect-ratio:1/1!important;
    overflow:hidden!important;
    border:2px solid #b30000!important;
    border-radius:20%!important;
    background:#202b31!important;
    box-shadow:1px 1px 4px #000!important;
    box-sizing:border-box!important;
}

.pp7-related-thumb{
    flex:0 0 78px!important;
    width:68px!important;
    height:68px!important;
    aspect-ratio:1/1!important;
    overflow:hidden!important;
    
    border-radius:5%!important;
    background:#202b31!important;
    box-shadow:1px 1px 4px #000!important;
    box-sizing:border-box!important;
}


.pp7-container-header-thumb img,
.pp7-container-header-thumb picture,
.pp7-related-thumb img,
.pp7-related-thumb .pp7-container-placeholder{
    display:block!important;
    width:100%!important;
    max-width:none!important;
    height:100%!important;
    aspect-ratio:1/1!important;
    object-fit:cover!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
}

/* Related Playlists com imagem de destaque do vídeo */
.pp7-related-header{display:flex;align-items:center;gap:12px;margin:0 0 18px}
.pp7-related-heading{margin:0!important;min-width:0}
.pp7-related-heading small{font-size:.75em}

/* Gallery header: sem background, desktop em uma linha */
.pp7-gallery-header{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:12px 20px!important;
    margin:0 0 16px!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
}
.pp7-gallery-primary{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 9px;min-width:0;text-align:left}
.pp7-gallery-title-line{display:flex!important;align-items:baseline!important;flex-wrap:wrap!important;gap:5px!important}
.pp7-gallery-title-line h2{margin:0!important;font-size:21px!important;line-height:1.3!important}
.pp7-gallery-title-line a{font-size:21px!important;line-height:1.3!important;font-weight:800!important;color:#b30000!important;text-decoration:none!important}
.pp7-gallery-dash{font-size:21px;font-weight:700}
.pp7-gallery-count{font-size:13px;color:#555;white-space:nowrap}
.pp7-gallery-terms{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:4px 7px;max-width:45%;font-size:13px;line-height:1.4;text-align:right}
.pp7-gallery-terms a{color:#333;text-decoration:none}

@media(max-width:768px){
    .pp7-container-card.is-channel .pp7-container-thumb,
    .pp7-container-card.is-star .pp7-container-thumb{width:min(72vw,220px)!important;max-width:100%!important}

    .pp7-container-header.is-channel .pp7-container-header-thumb,
    .pp7-container-header.is-star .pp7-container-header-thumb,
    .pp7-related-thumb{flex-basis:66px!important;width:66px!important;height:66px!important}

    .pp7-gallery-header{display:block!important;text-align:left!important}
    .pp7-gallery-primary{display:flex!important;align-items:baseline!important;justify-content:flex-start!important;gap:5px 8px!important}
    .pp7-gallery-title-line{display:flex!important;align-items:baseline!important;flex-wrap:wrap!important}
    .pp7-gallery-title-line h2,
    .pp7-gallery-title-line a,
    .pp7-gallery-dash{font-size:18px!important}
    .pp7-gallery-count{font-size:13px!important;text-align:left!important}
    .pp7-gallery-terms{justify-content:flex-start!important;max-width:none!important;margin-top:4px!important;text-align:left!important}
}

/* Related Playlists sem background */
.pp7-related-header {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
}



/* Estilos consolidados da v6.6 */
.pp7-gallery-layout-switcher {
                display: flex;
                align-items: center;
                justify-content: center;
                flex-wrap: wrap;
                gap: 10px;
                width: 100%;
                margin: 18px auto 24px;
            }
            .pp7-layout-button {
                appearance: none;
                display: inline-flex;
                align-items: center;
                justify-content: center;
                min-width: 52px;
                min-height: 42px;
                padding: 7px 11px;
                border: 2px solid #111;
                border-radius: 7px;
                background: #fff;
                color: #111;
                font: inherit;
                font-size: 13px;
                font-weight: 700;
                line-height: 1;
                cursor: pointer;
            }
            .pp7-layout-button.is-active {
                background: #000;
                color: #fff;
            }
            .pp7-layout-button--standard {
                min-width: 104px;
                font-size: 15px;
            }
            .pp7-layout-shape {
                display: block;
                border: 2px solid currentColor;
                border-radius: 3px;
            }
            .pp7-layout-shape--horizontal { width: 34px; height: 22px; }
            .pp7-layout-shape--vertical   { width: 22px; height: 34px; }
            .pp7-layout-shape--square     { width: 29px; height: 29px; }

            .pp7-video-gallery {
                align-items: start;
            }
            .pp7-video-card {
                min-width: 0;
            }

            /* STANDARD v6.3 — masonry real, sem buracos no meio.
               O JavaScript posiciona cada card na coluna mais curta;
               eventual espaço permanece somente no final da galeria. */
            .pp7-gallery-view[data-layout="standard"] .pp7-video-gallery {
                position: relative;
                display: block !important;
                width: 100%;
            }
            .pp7-gallery-view[data-layout="standard"] .pp7-video-item {
                position: absolute;
                top: 0;
                left: 0;
                margin: 0;
                box-sizing: border-box;
                transition: none !important;
            }
            .pp7-video-thumb {
                --pp7-card-ratio: 1 / 1;
                position: relative;
                isolation: isolate;
                display: flex;
                width: 100%;
                aspect-ratio: var(--pp7-card-ratio);
                align-items: center;
                justify-content: center;
                overflow: hidden;
                background: #111;
                border-radius: 8px;
            }
            .pp7-video-thumb::before {
                content: "";
                position: absolute;
                z-index: -2;
                inset: -35px;
                background-image: var(--pp7-thumb-image);
                background-repeat: no-repeat;
                background-position: center;
                background-size: cover;
                filter: blur(30px) brightness(.8) saturate(1.15);
                transform: scale(1.12);
                opacity: 0;
            }
            .pp7-video-thumb::after {
                content: "";
                position: absolute;
                z-index: -1;
                inset: 0;
                background: rgba(255,255,255,.13);
                opacity: 0;
            }
            .pp7-video-thumb.pp7-use-blur::before,
            .pp7-video-thumb.pp7-use-blur::after {
                opacity: 1;
            }
            .pp7-video-thumb > img {
                position: relative;
                z-index: 0;
                display: block;
                width: 100%;
                height: 100%;
                object-fit: cover;
                object-position: 50% 50%;
            }
            .pp7-video-thumb.pp7-use-blur > img {
                object-fit: contain;
            }

            /* TaxonoMy v2.3: cada layout usa seu próprio deslocamento.
               Standard usa o Ratio principal (✅) do post. */
            .pp7-gallery-view[data-layout="standard"] .pp7-video-card .pp7-video-thumb > img {
                object-position: calc(50% + var(--pp7-standard-offset-x, 0px)) calc(50% + var(--pp7-standard-offset-y, 0px));
            }
            .pp7-gallery-view[data-layout="horizontal"] .pp7-video-card .pp7-video-thumb > img {
                object-position: calc(50% + var(--pp7-horizontal-offset-x, 0px)) calc(50% + var(--pp7-horizontal-offset-y, 0px));
            }
            .pp7-gallery-view[data-layout="vertical"] .pp7-video-card .pp7-video-thumb > img {
                object-position: calc(50% + var(--pp7-vertical-offset-x, 0px)) calc(50% + var(--pp7-vertical-offset-y, 0px));
            }
            .pp7-gallery-view[data-layout="square"] .pp7-video-card .pp7-video-thumb > img {
                object-position: calc(50% + var(--pp7-square-offset-x, 0px)) calc(50% + var(--pp7-square-offset-y, 0px));
            }

            .pp7-gallery-view[data-layout="square"] .pp7-video-thumb {
                --pp7-card-ratio: 1 / 1;
            }
            .pp7-gallery-view[data-layout="vertical"] .pp7-video-thumb {
                --pp7-card-ratio: 2 / 3;
            }
            .pp7-gallery-view[data-layout="horizontal"] .pp7-video-thumb {
                --pp7-card-ratio: 3 / 2;
            }
            .pp7-gallery-view[data-layout="standard"] .pp7-video-card[data-ratio="vertical"] .pp7-video-thumb {
                --pp7-card-ratio: 2 / 3;
            }
            .pp7-gallery-view[data-layout="standard"] .pp7-video-card[data-ratio="horizontal"] .pp7-video-thumb {
                --pp7-card-ratio: 3 / 2;
            }
            .pp7-gallery-view[data-layout="standard"] .pp7-video-card[data-ratio="quadrado"] .pp7-video-thumb,
            .pp7-gallery-view[data-layout="standard"] .pp7-video-card[data-ratio=""] .pp7-video-thumb {
                --pp7-card-ratio: 1 / 1;
            }

            .pp7-video-badge {
                position: absolute;
                z-index: 3;
                display: inline-flex;
                align-items: center;
                justify-content: center;
                min-height: 20px;
                padding: 2px 6px;
                background: rgba(0,0,0,.72);
                border-radius: 4px;
                color: #fff;
                font-size: 11px;
                font-weight: 700;
                line-height: 1.25;
            }
            .pp7-video-category { top: 6px; left: 6px; }
            .pp7-video-ratio    { top: 6px; right: 6px; padding: 3px; }
            .pp7-video-number   { bottom: 6px; left: 6px; }
            .pp7-video-duration { right: 6px; bottom: 6px; }

            .pp7-ratio-icon {
                display: inline-flex;
                align-items: center;
                justify-content: center;
                border: 1.5px solid currentColor;
                border-radius: 2px;
                font-size: 0;
            }
            .pp7-ratio-icon--vertical   { width: 9px; height: 15px; }
            .pp7-ratio-icon--horizontal { width: 15px; height: 9px; }
            .pp7-ratio-icon--quadrado   { width: 12px; height: 12px; }

            @media (max-width: 560px) {
                .pp7-gallery-layout-switcher { gap: 7px; }
                .pp7-layout-button { min-width: 46px; min-height: 38px; padding: 6px 9px; }
                .pp7-layout-button--standard { min-width: 86px; font-size: 13px; }
                .pp7-layout-shape--horizontal { width: 30px; height: 19px; }
                .pp7-layout-shape--vertical { width: 19px; height: 30px; }
                .pp7-layout-shape--square { width: 25px; height: 25px; }
            }

        .pp7-playlist-card .pp7-playlist-name {
            display: block;
            width: 100%;
            margin: 8px 0 4px;
            color: #fff !important;
            font-weight: 700;
            line-height: 1.25;
            text-align: center;
            text-decoration: none;
        }
        .pp7-playlist-prefix { color: #fff !important; font: inherit; font-weight: inherit; }

        .pp7-playlist-card {
            position: relative;
            overflow: hidden;
            border-radius: 8px;
            transition: background-color .18s ease, box-shadow .18s ease;
        }
        .pp7-playlist-card:hover,
        .pp7-playlist-card:focus-within {
            background: rgba(255,255,255,.22) !important;
            box-shadow: 0 4px 18px rgba(0,0,0,.10) !important;
        }
        .pp7-playlist-card .pp7-playlist-name:hover { color: #fff !important; }

        .pp7-playlist-thumb {
            position: relative !important;
            overflow: hidden !important;
        }
        .pp7-playlist-media-count {
            position: absolute !important;
            z-index: 20 !important;
            top: 6px !important;
            right: auto !important;
            bottom: auto !important;
            left: 6px !important;
            display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            width: auto !important;
            min-width: 0 !important;
            max-width: max-content !important;
            height: auto !important;
            min-height: 0 !important;
            padding: 3px 6px !important;
            margin: 0 !important;
            border: 0 !important;
            border-radius: 5px !important;
            background: rgba(0,0,0,.58) !important;
            box-shadow: none !important;
            color: #fff !important;
            font-size: 12px !important;
            font-weight: 800 !important;
            line-height: 1.2 !important;
            text-align: center !important;
            pointer-events: none !important;
        }

        .pp7-container-thumb {
            position: relative !important;
            overflow: hidden !important;
        }
        .pp7-container-thumb::after {
            content: "";
            position: absolute;
            z-index: 8;
            inset: 0;
            background: rgba(255,255,255,0);
            pointer-events: none;
            transition: background-color .18s ease;
        }
        .pp7-container-card:hover .pp7-container-thumb::after,
        .pp7-container-card:focus .pp7-container-thumb::after,
        .pp7-container-card:focus-within .pp7-container-thumb::after {
            background: rgba(255,255,255,.22) !important;
        }

        .pp7-related-header {
            display: flex !important;
            align-items: center !important;
            justify-content: flex-start !important;
            gap: 12px !important;
            margin-bottom: 12px !important;
            text-align: left !important;
        }
        .pp7-related-heading-wrap { min-width: 0; text-align: left !important; }
        h2.pp7-related-heading {
            display: block !important;
            width: auto !important;
            margin: 0 !important;
            text-align: left !important;
            justify-content: flex-start !important;
        }
        h2.pp7-related-title {
            display: block !important;
            width: 100% !important;
            margin: 0 0 18px !important;
            padding: 0 !important;
            color: #111;
            font-size: 24px;
            font-weight: 700;
            line-height: 1.3;
            text-align: left !important;
        }
        

/* =========================================================
   V7 — isolamento e correções finais
   ========================================================= */
.pp7-app .pp7-playlist-card { position:relative; overflow:hidden; border-radius:8px; padding:8px; transition:background-color .18s ease,box-shadow .18s ease; }
.pp7-app .pp7-playlist-card:hover,
.pp7-app .pp7-playlist-card:focus-within { background:rgba(255,255,255,.22); box-shadow:0 4px 18px rgba(0,0,0,.10); }
.pp7-app .pp7-playlist-name { display:block; width:100%; margin:8px 0 4px; color:#fff !important; font-size:15px; font-weight:700; line-height:1.25; text-align:center; text-decoration:none; background:#b30000; border-radius:5px; padding:4px 8px; }
.pp7-app .pp7-playlist-prefix { color:#fff !important; font:inherit; font-weight:inherit; }
.pp7-app .pp7-playlist-thumb { position:relative; overflow:hidden; }
.pp7-app .pp7-playlist-thumb > .pp7-playlist-media-count { position:absolute !important; z-index:20 !important; top:6px !important; left:6px !important; right:auto !important; bottom:auto !important; display:inline-flex !important; width:auto !important; max-width:max-content !important; height:auto !important; min-height:0 !important; padding:3px 6px !important; margin:0 !important; border:0 !important; border-radius:4px !important; background:transparent !important; color:#fff !important; text-shadow:0 1px 3px #000,0 0 3px #000; font-size:12px !important; font-weight:800 !important; line-height:1.2 !important; pointer-events:none !important; }
.pp7-app .pp7-container-thumb { position:relative; overflow:hidden; }
.pp7-app .pp7-container-thumb::after { content:""; position:absolute; z-index:8; inset:0; background:rgba(255,255,255,0); pointer-events:none; transition:background-color .18s ease; }
.pp7-app .pp7-container-card:hover .pp7-container-thumb::after,
.pp7-app .pp7-container-card:focus-within .pp7-container-thumb::after { background:rgba(255,255,255,.22); }
.pp7-app .pp7-related-header { display:flex; align-items:center; justify-content:flex-start; gap:12px; margin:0 0 12px; padding:0; background:transparent; border:0; text-align:left; }
.pp7-app .pp7-related-heading-wrap { min-width:0; text-align:left; }
.pp7-app h2.pp7-related-heading { display:block; width:auto; margin:0; padding:0; text-align:left; }
.pp7-app h2.pp7-related-title { display:block; width:100%; margin:0 0 18px; padding:0; color:#111; font-size:24px; font-weight:700; line-height:1.3; text-align:left; }

/* Playlist Page v8: cabeçalho Related integrado aos cards de view=all. */
.pp7-video-item {
    min-width: 0;
}

.pp7-video-item .pp7-video-card {
    display: block;
    width: 100%;
}

.pp7-video-related {
    display: block;
    width: 100%;
    margin: 0;
    padding: 6px 10px;
    border: 0;
    border-radius: 8px 8px 0 8px;
    background: #fff;
    color: #000 !important;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.25;
    text-align: left;
    text-decoration: none !important;
}

.pp7-video-related:hover,
.pp7-video-related:focus {
    color: #000 !important;
    text-decoration: none !important;
}

.pp7-video-item.has-related .pp7-video-thumb {
    border-radius: 0 0 8px 8px;
}

/* Playlist Page v8.1: Simple Aspect Ratio compartilhado com Gallery. */
.pp7-simple-aspect-ratio {
    align-items: center !important;
    min-height: 54px;
    gap: 7px !important;
    margin: 14px auto 12px !important;
    opacity: 1;
    transition: opacity .12s ease;
}

.pp7-simple-aspect-ratio.is-initializing {
    opacity: 0;
}

.pp7-simple-aspect-ratio .pp7-layout-button {
    min-width: 0 !important;
    min-height: 0 !important;
    height: 34px !important;
    padding: 5px 9px !important;
    border: 1px solid #111 !important;
    border-radius: 4px !important;
    background: #fff !important;
    color: #111 !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    box-shadow: none !important;
}

.pp7-simple-aspect-ratio .pp7-layout-button--standard {
    height: 34px !important;
    padding-right: 12px !important;
    padding-left: 12px !important;
    font-size: 13px !important;
}

.pp7-simple-aspect-ratio .pp7-layout-button.is-active {
    background: #000 !important;
    color: #fff !important;
}

.pp7-simple-aspect-ratio .pp7-layout-shape {
    display: inline !important;
    width: auto !important;
    height: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: inherit !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.pp7-simple-aspect-ratio .pp7-layout-button[data-layout="horizontal"] {
    width: 52px !important;
    height: 30px !important;
    padding: 3px 6px !important;
}

.pp7-simple-aspect-ratio .pp7-layout-button[data-layout="vertical"] {
    width: 32px !important;
    height: 52px !important;
    padding: 3px 2px !important;
}

.pp7-simple-aspect-ratio .pp7-layout-button[data-layout="square"] {
    width: 38px !important;
    height: 38px !important;
    padding: 3px !important;
}
@media(max-width:768px){ .pp7-app{padding:12px;} }
