/* ==========================================================================
   ARCHIVE CARDS (Fusión de Búsqueda y Etiquetas V2.0)
   ========================================================================== */

.tag-page-container, .search-page-container {
    padding: 40px 20px;
    background-color: #fff;
    min-height: 60vh;
}
.tag-container-width, .search-container-width { max-width: 900px; margin: 0 auto; }

/* Headers */
.tag-header, .search-header {
    border-bottom: 2px solid #1C3D44;
    padding-bottom: 20px;
    margin-bottom: 30px;
}
.search-header { border-bottom-width: 1px; border-color: #eee; }

.search-breadcrumb { font-size: 0.9rem; color: #888; margin-bottom: 10px; }

.tag-title, .search-title {
    font-family: var(--font-titles);
    font-size: 2.5rem;
    font-weight: 800;
    color: #1a1a1a;
    line-height: 1.2;
    margin: 5px 0 15px;
}
.search-title span { color: #EF6E59; }

.tag-description { font-family: var(--font-body); font-size: 1.1rem; color: #555; line-height: 1.6; }
.search-count { font-family: var(--font-body); font-size: 1rem; color: #666; margin-top: 5px; font-style: italic; }

/* Listas y Tarjetas */
.tag-posts-list, .search-posts-list { display: flex; flex-direction: column; gap: 25px; }
.search-posts-list { gap: 30px; }

.tag-list-card, .search-list-card {
    border-bottom: 1px solid #eee;
    padding-bottom: 25px;
}
.search-list-card { border-color: #f0f0f0; padding-bottom: 30px; }
.tag-list-card:last-child, .search-list-card:last-child { border: none; }

.tag-card-link, .search-card-link {
    display: flex; gap: 25px; text-decoration: none; align-items: flex-start;
}
.search-card-link { gap: 30px; }

/* Media e Imágenes */
.tag-card-media, .search-card-media {
    width: 240px; height: 160px; flex-shrink: 0;
    border-radius: 8px; overflow: hidden; background: #f0f0f0;
}
.search-card-media { width: 260px; height: 170px; border-radius: 12px; background: #f5f5f5; }

.tag-card-img, .search-card-img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s; }
.tag-card-link:hover .tag-card-img, .search-card-link:hover .search-card-img { transform: scale(1.05); }
.search-card-link:hover .search-card-img { transform: scale(1.03); }

/* Contenido */
.tag-card-content, .search-card-content { flex: 1; }

.search-card-cat {
    color: #1C3D44; font-weight: 800; font-size: 0.75rem;
    text-transform: uppercase; display: block; margin-bottom: 8px; letter-spacing: 0.5px;
}

.tag-card-date, .search-card-date {
    font-size: 0.8rem; text-transform: uppercase; color: #999; font-weight: 700; display: block; margin-bottom: 5px;
}
.search-card-date { text-transform: none; font-weight: 400; margin-bottom: 0; }

.tag-card-title, .search-card-title {
    font-family: var(--font-titles); font-size: 1.4rem; font-weight: 700;
    color: #1C3D44; line-height: 1.2; margin: 0 0 10px;
}
.search-card-title { color: #1a1a1a; }
.tag-card-link:hover .tag-card-title, .search-card-link:hover .search-card-title { color: #EF6E59; }

.tag-card-excerpt, .search-card-excerpt { font-size: 0.95rem; color: #555; line-height: 1.5; margin: 0; }
.search-card-excerpt { line-height: 1.6; margin-bottom: 12px; }

/* Específicos de Búsqueda */
.search-empty-msg {
    text-align: center; padding: 60px 20px; background: #fff3f0;
    border-radius: 12px; color: #d85c48; font-weight: 600; margin-bottom: 30px; width: 100%;
}
.search-request-box {
    margin-top: 60px; background-color: #F5F3EF; border: 2px dashed #dcdcdc;
    border-radius: 16px; padding: 40px; transition: border-color 0.3s;
}
.search-request-box:hover { border-color: #1C3D44; }
.srb-content { display: flex; gap: 30px; align-items: flex-start; }
.srb-icon { font-size: 3rem; line-height: 1; }
.srb-text { flex: 1; }
.srb-text h3 { font-family: var(--font-titles); font-size: 1.5rem; color: #1C3D44; margin-bottom: 10px; font-weight: 800; }
.srb-text p { font-size: 1rem; color: #555; margin-bottom: 20px; }
.srb-form { display: flex; flex-direction: column; gap: 15px; }
.srb-textarea {
    width: 100%; padding: 15px; border-radius: 8px; border: 1px solid #ccc;
    font-family: var(--font-body); font-size: 1rem; resize: vertical; outline: none;
}
.srb-textarea:focus { border-color: #1C3D44; background: #fff; }
.srb-btn {
    align-self: flex-start; background-color: #1C3D44; color: #fff; border: none;
    padding: 12px 25px; border-radius: 30px; font-weight: 700; font-size: 0.9rem;
    cursor: pointer; text-transform: uppercase; transition: background 0.2s;
}
.srb-btn:hover { background-color: #EF6E59; }

/* Responsive */
@media (max-width: 768px) {
    .tag-card-link, .search-card-link { flex-direction: column; gap: 15px; }
    .search-card-link { flex-direction: column-reverse; }
    .tag-card-media, .search-card-media { width: 100%; height: 200px; }
    .tag-title, .search-title { font-size: 2rem; }
    .srb-content { flex-direction: column; text-align: center; gap: 15px; }
    .srb-icon { font-size: 4rem; margin: 0 auto; }
    .srb-btn { width: 100%; }
}