/* Listing blog EN — estratto da en/blog/index.php (prima era <style> inline in ogni pagina) */
.blog-page { padding-top: var(--header-height); }
.page-header { padding: 6rem 0 3rem; text-align: center; }
.page-title { font-size: clamp(2.3rem, 5vw, 3.75rem); font-weight: 700; letter-spacing: -0.03em; line-height: 1.08; margin-top: 0.75rem; }
.blog-search { position: relative; max-width: 480px; margin: 1.5rem auto 3rem; }
.search-icon { position: absolute; left: 1rem; top: 50%; transform: translateY(-50%); color: var(--white-dim); opacity: 0.4; pointer-events: none; }
.search-input { width: 100%; padding: 0.75rem 1rem 0.75rem 2.75rem; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08); border-radius: var(--radius-full); color: var(--white); font-size: 0.9375rem; font-family: var(--font-body); outline: none; transition: border-color 0.3s var(--ease-smooth); }
.search-input::placeholder { color: var(--white-dim); opacity: 0.4; }
.search-input:focus { border-color: rgba(0, 212, 255, 0.3); box-shadow: 0 0 0 3px rgba(0, 212, 255, 0.06); }
.search-help-inline { position: absolute; right: 0.5rem; top: 50%; transform: translateY(-50%); width: 2rem; height: 2rem; background: none; border: 1px solid rgba(255,255,255,0.12); border-radius: 50%; color: var(--white-dim); cursor: pointer; display: flex; align-items: center; justify-content: center; transition: all 0.2s var(--ease-smooth); }
@media (hover: hover) { .search-help-inline:hover { color: var(--brand); border-color: rgba(0, 212, 255, 0.3); background: rgba(0, 212, 255, 0.04); } }
.search-reset-inline { position: absolute; right: 3rem; top: 50%; transform: translateY(-50%); width: 2rem; height: 2rem; background: none; border: none; color: var(--white-dim); cursor: pointer; display: none; align-items: center; justify-content: center; border-radius: 50%; transition: all 0.2s var(--ease-smooth); }
.search-reset-inline.visible { display: flex; }
@media (hover: hover) { .search-reset-inline:hover { color: var(--white); background: rgba(255,255,255,0.08); } }
.blog-search .search-input { padding-right: 5.5rem; }
.page-listing { padding: 4rem 0; }
.card-image-link { display: block; text-decoration: none; }
.card-image-placeholder { display: flex; align-items: center; justify-content: center; height: 100%; color: rgba(255,255,255,0.08); background: var(--surface-raised); }
.search-results { margin-top: 1rem; }
.search-result-card { margin-bottom: 1.5rem; }
#search-pagination { display: none; justify-content: space-between; align-items: center; padding: 1rem 0; gap: 1rem; }
#search-pagination.visible { display: flex; }
#search-pagination .btn:disabled { opacity: 0.3; cursor: default; }
.search-pag-info { font-size: 0.875rem; color: var(--white-dim); opacity: 0.6; }
.empty-state { text-align: center; padding: 4rem 0; color: var(--white-dim); opacity: 0.6; font-size: 1.15rem; }
.pagination { display: flex; align-items: center; justify-content: center; gap: 1rem; margin-top: 4rem; }
.page-numbers { display: flex; align-items: center; gap: 0.25rem; }
.page-num { display: flex; align-items: center; justify-content: center; width: 2.5rem; height: 2.5rem; border-radius: var(--radius-sm); font-size: 0.9375rem; font-weight: 600; color: var(--white-dim); transition: all 0.2s var(--ease-smooth); }
@media (hover: hover) { .page-num:hover { color: var(--white); background: rgba(255,255,255,0.06); } }
.page-num.active { color: var(--white); background: var(--brand); }
.card-trend { color: var(--brand); opacity: 0.8; }
@media (max-width: 768px) { .page-header { padding: 4rem 0 2rem; } .page-listing { padding: 2.5rem 0; } }
