/*
Theme Name: Akiperto DT10
Theme URI: https://akiperto.com.br
Author: Akiperto
Author URI: https://akiperto.com.br
Description: Tema filho do DT10 PremiumPress.
Version: 1.0.0
Template: DT10
Text Domain: akiperto-dt10
*/

/* ===== CARDS MODERNOS ===== */
[ppt-box] {
    border-radius: 12px !important;
    overflow: hidden;
    transition: all 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    background: #fff;
    border: 1px solid #f1f3f5;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}
[ppt-box]:hover {
    transform: translateY(-2px);
    box-shadow: 0 12px 32px rgba(0,0,0,0.08), 0 2px 8px rgba(0,0,0,0.04);
    border-color: #e8ecf0;
}

[ppt-box] .bg-image,
[ppt-box] .position-relative.overflow-hidden img {
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    border-radius: 0 !important;
}
[ppt-box]:hover .bg-image,
[ppt-box]:hover .position-relative.overflow-hidden img {
    transform: scale(1.06);
}

[ppt-box] .position-relative.overflow-hidden {
    border-radius: 0 !important;
    position: relative; /* For the shine effect */
}

/* Shine Effect (Faixinha) */
[ppt-box] .position-relative.overflow-hidden::after {
    content: '';
    position: absolute;
    top: 0;
    left: -150%;
    width: 50%;
    height: 100%;
    background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255, 100, 100, 0.3) 50%, rgba(255,255,255,0) 100%);
    transform: skewX(-25deg);
    transition: none;
    z-index: 10;
    pointer-events: none;
}

[ppt-box]:hover .position-relative.overflow-hidden::after {
    animation: ppt-shine-effect 3.2s ease-in-out forwards;
}

@keyframes ppt-shine-effect {
    0% { left: -150%; }
    100% { left: 200%; }
}

/* ===== CLS PREVENTION: ASPECT-RATIO EM IMAGENS COMUNS ===== */
/* BG-IMAGE containers dos cards de busca — reservam espaço */
[ppt-box] .position-relative.overflow-hidden,
._directory .position-relative.overflow-hidden {
    aspect-ratio: 16 / 9;
}
._directory .position-relative.overflow-hidden .bg-image,
[ppt-box] .bg-image,
.bg-image {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
}
/* Cards mobile com min-height fixo */
.show-mobile .position-relative.overflow-hidden figure,
._directory .show-mobile .position-relative.overflow-hidden figure {
    aspect-ratio: 4 / 3;
}
/* Img fluid/lazy sem aspect-ratio forçado — o width/height do HTML guia */
img.img-fluid,
img.lazy {
    height: auto;
}
.ppt-card-image,
.ppt-search-grid .img-fluid {
    aspect-ratio: 16 / 9;
    object-fit: cover;
}
.card-img-top,
.single-image img,
.gallery-image img {
    aspect-ratio: 16 / 10;
    object-fit: cover;
}
.ppt-avatar,
img[width="26"][height="26"],
img[width="36"][height="36"],
img[width="40"][height="40"],
img[width="50"][height="50"],
img[width="60"][height="60"],
img[width="80"][height="80"] {
    aspect-ratio: 1 / 1;
    object-fit: cover;
}
footer img,
.header-logo img,
img[width="200"][height="60"],
img[width="300"] {
    aspect-ratio: auto;
}
/* Avatar bg-image (usado em $CORE_UI->AVATAR) */
.ppt-avatar ._wrap.bg-image {
    aspect-ratio: 1 / 1;
    border-radius: 50%;
}

[ppt-box] ._content {
    padding: 18px 18px 14px !important;
    border-top: none !important;
}

[ppt-box] ._content .opacity-5,
[ppt-box] ._content .fs-sm {
    font-size: 0.75rem !important;
    color: #868e96 !important;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    font-weight: 600;
    opacity: 1 !important;
    padding-top: 0 !important;
}
[ppt-box] ._content .opacity-5 a,
[ppt-box] ._content .fs-sm a {
    display: inline-block;
    background: #f0f2f5;
    padding: 2px 10px;
    border-radius: 20px;
    color: #495057 !important;
    font-size: 0.7rem;
    text-decoration: none;
    transition: background 0.2s;
}
[ppt-box] ._content .opacity-5 a:hover {
    background: #0066cc;
    color: #fff !important;
}

[ppt-box] ._content ._adtitle {
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: #212529 !important;
    line-height: 1.4;
    transition: color 0.2s;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
[ppt-box]:hover ._content ._adtitle {
    color: #0066cc !important;
}

[ppt-box] ._content .lh-30 {
    line-height: 1.4 !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
}

[ppt-box] ._footer {
    padding: 8px 0 0 !important;
    border-top: 1px solid #f1f3f5 !important;
    margin-top: 8px;
}

[ppt-box] ._footer .text-truncate {
    font-size: 0.78rem;
}

[ppt-box] [data-ppt-icon-24] i.fa,
[ppt-box] [data-ppt-icon-24] i {
    font-size: 13px !important;
}

/* Remove sombra antiga do premiumpress */
.shadow-hover-lg {
    box-shadow: none !important;
}
.shadow-hover-lg:hover {
    box-shadow: none !important;
}

/* ===== DISCOVERY CARDS (50% da intensidade) ===== */
.discovery-card {
    border-radius: 12px;
    transition: all 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    border: 1px solid #f1f3f5;
}
.discovery-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0,0,0,0.06), 0 1px 4px rgba(0,0,0,0.03);
    border-color: #e8ecf0;
}
