.aq-tpl-dcl { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--aq-gap); margin-bottom: 12px; }
.aq-tpl-dcl-item {
    display: grid;
    grid-template-columns: 150px 1fr;
    background: var(--aq-card);
    border-radius: var(--aq-radius);
    box-shadow: var(--aq-shadow);
    border: var(--aq-border);
    overflow: hidden;
    transition: transform .25s var(--aq-ease), box-shadow .25s var(--aq-ease);
}
.aq-tpl-dcl-item:hover { transform: translateY(-4px); box-shadow: var(--aq-shadow-hover); }
.aq-tpl-dcl-item .dcl-cover { aspect-ratio: 1/1; overflow: hidden; background: var(--aq-soft); }
.aq-tpl-dcl-item .dcl-cover img { width: 100%; height: 100%; object-fit: cover; }
.aq-tpl-dcl-item .placeholder { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; font-size: 34px; font-weight: 700; color: #fff; background: var(--aq-grad); }
.aq-tpl-dcl-item .dcl-body { padding: 18px; display: flex; flex-direction: column; justify-content: center; }
.aq-tpl-dcl-item .dcl-title { font-size: 17px; margin-bottom: 8px; }
.aq-tpl-dcl-item:hover .dcl-title { color: var(--aq-green); }
.aq-tpl-dcl-item .dcl-desc {
    font-size: 13px; color: var(--aq-ink-2); line-height: 1.6; margin-bottom: 12px;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.aq-tpl-dcl-item .dcl-foot { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; font-size: 12px; color: var(--aq-ink-3); }

@media (max-width: 880px) { .aq-tpl-dcl { grid-template-columns: 1fr; } }
@media (max-width: 480px) { .aq-tpl-dcl-item { grid-template-columns: 1fr; } .aq-tpl-dcl-item .dcl-cover { aspect-ratio: 16/9; } }