.adv-tpl-card{
display:flex;
flex-direction:column;
background:var(--color-bg);
border:1px solid var(--color-line);
border-radius:var(--radius-lg);
overflow:hidden;
transition:var(--transition-base);
text-decoration:none;
color:inherit;
}
.adv-tpl-card:hover{
border-color:var(--color-line-strong);
box-shadow:var(--shadow-sm);
transform:translateY(-2px);
text-decoration:none;
color:inherit;
}
.adv-tpl-card:focus-visible{
outline:2px solid var(--color-focus);
outline-offset:2px;
}

.adv-tpl-card__thumb{
position:relative;
aspect-ratio:210 / 297;
background:linear-gradient(135deg,#f8fafc,#eef2f7);
padding:var(--space-5);
display:flex;
flex-direction:column;
gap:var(--space-2);
overflow:hidden;
border-bottom:1px solid var(--color-line);
}
.adv-tpl-card__thumb--dark{
background:linear-gradient(135deg,#0f172a,#1e293b);
}
.adv-tpl-card__thumb--soft{
background:linear-gradient(135deg,#ebf4ff,#f1f5f9);
}
.adv-tpl-card__thumb img{
width:100%;
height:100%;
object-fit:cover;
object-position:top center;
position:absolute;
inset:0;
}
.adv-tpl-card__bar{
height:8px;
background:var(--color-line-strong);
border-radius:var(--radius-xs);
flex-shrink:0;
}
.adv-tpl-card__bar--accent{background:var(--color-accent)}
.adv-tpl-card__bar--primary{background:var(--color-primary)}
.adv-tpl-card__bar.w-30{width:30%}
.adv-tpl-card__bar.w-40{width:40%}
.adv-tpl-card__bar.w-50{width:50%}
.adv-tpl-card__bar.w-60{width:60%}
.adv-tpl-card__bar.w-70{width:70%}
.adv-tpl-card__bar.w-85{width:85%}
.adv-tpl-card__bar.w-full{width:100%}

.adv-tpl-card__badge{
position:absolute;
top:var(--space-3);
right:var(--space-3);
padding:.25em .6em;
font-size:var(--font-size-2xs);
font-weight:var(--weight-bold);
letter-spacing:var(--letter-wide);
text-transform:uppercase;
background:var(--color-accent);
color:#ffffff;
border-radius:var(--radius-pill);
}

.adv-tpl-card__info{
padding:var(--space-4) var(--space-5) var(--space-5);
display:flex;
flex-direction:column;
gap:var(--space-2);
}
.adv-tpl-card__name{
font-size:var(--font-size-md);
font-weight:var(--weight-semibold);
color:var(--color-ink);
margin:0;
line-height:var(--line-snug);
}
.adv-tpl-card__name a{color:inherit;text-decoration:none}
.adv-tpl-card__name a::after{
content:"";
position:absolute;
inset:0;
}
.adv-tpl-card__cat{
font-size:var(--font-size-sm);
color:var(--color-muted);
margin:0;
}
.adv-tpl-card__tags{
display:flex;
flex-wrap:wrap;
gap:var(--space-2);
margin-top:var(--space-2);
}

.adv-tpl-card--list{
flex-direction:row;
align-items:stretch;
}
.adv-tpl-card--list .adv-tpl-card__thumb{
width:160px;
flex-shrink:0;
aspect-ratio:210 / 297;
border-bottom:0;
border-right:1px solid var(--color-line);
}
@media (max-width:639px){
.adv-tpl-card--list{flex-direction:column}
.adv-tpl-card--list .adv-tpl-card__thumb{
width:100%;
aspect-ratio:16 / 10;
border-right:0;
border-bottom:1px solid var(--color-line);
}
}
.adv-tpl-card--list .adv-tpl-card__info{
flex:1 1 auto;
padding:var(--space-5);
justify-content:center;
}