.template-downloads { scroll-margin-top: 1.5rem; }
.template-downloads .template-download-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:1.5rem; align-items:start; }
.template-downloads .template-preview { margin:0; }
.template-downloads .template-preview img { display:block; width:100%; height:auto; border:1px solid #cbd6cf; border-radius:8px; background:#fff; }
.template-downloads .template-preview figcaption { margin-top:.5rem; color:#53665b; font-size:.875rem; }
.template-downloads .template-file-card { border:1px solid #d3ddd6; border-radius:10px; padding:1rem; background:#fff; }
.template-downloads .template-file-card + .template-file-card { margin-top:.75rem; }
.template-downloads .template-file-card h3 { margin:0 0 .4rem; font-size:1.125rem; }
.template-downloads .template-file-card p { margin:.3rem 0 .75rem; }
.template-downloads .template-file-actions { display:flex; gap:.6rem; flex-wrap:wrap; }
.template-downloads [data-template-download] { min-height:44px; padding:.7rem .9rem; border:1px solid #1d493d; border-radius:7px; background:#1d493d; color:#fff; font:inherit; font-weight:600; cursor:pointer; }
.template-downloads [data-template-download]:hover { background:#15392f; }
.template-downloads [data-template-download]:focus-visible { outline:3px solid #b76530; outline-offset:3px; }
.template-downloads [data-template-download]:disabled { opacity:.65; cursor:wait; }
.template-downloads .template-download-note { font-size:.9rem; color:#53665b; }
.template-downloads [data-template-download-status] { min-height:1.5em; font-weight:600; }
@media(max-width:760px) { .template-downloads .template-download-layout { grid-template-columns:1fr; } .template-downloads .template-file-actions > button { flex:1 1 12rem; } }
@media print { .template-downloads { display:none !important; } }
