.search-page { padding: 2rem 0; min-height: 60vh; }
.search-header { margin-bottom: 1rem; }
.search-form { width: 100%; max-width: 800px; margin: 0 auto; }
.search-input-wrapper { position: relative; display: flex; gap: 0.5rem; align-items: center; }
.search-icon { position: absolute; left: 1rem; color: var(--text-secondary); font-size: 1rem; }
.search-input { flex: 1; padding: 0.75rem 1rem 0.75rem 2.75rem; border: 2px solid var(--border-color); border-radius: 10px; font-size: 0.95rem; transition: all 0.2s ease; }
.search-input:focus { outline: none; border-color: var(--primary-color); box-shadow: 0 0 0 2px rgba(0, 78, 137, 0.08); }
.btn-search { padding: 0.75rem 1rem; background: var(--primary-color); color: white; border: none; border-radius: 10px; font-weight: 600; cursor: pointer; transition: background 0.2s ease, transform 0.2s ease; }
.btn-search:hover { background: var(--primary-color); transform: translateY(-1px); }
.search-results { display: flex; flex-direction: column; gap: 0.75rem; }
.search-result-card { display: flex; gap: 1rem; padding: 1rem; background: #fff; border-radius: var(--border-radius-sm); box-shadow: var(--shadow-xs); transition: transform 0.2s ease, box-shadow 0.2s ease; }
.search-result-card:hover { transform: translateY(-2px); box-shadow: var(--shadow-sm); }
.result-icon { flex-shrink: 0; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, var(--primary-color), var(--secondary-color)); color: white; border-radius: 10px; font-size: 1.2rem; }
.result-content { flex: 1; }
.result-meta { display: flex; gap: 0.5rem; align-items: center; margin-bottom: 0.25rem; font-size: 0.85rem; }
.result-type { padding: 0.2rem 0.6rem; border-radius: 12px; font-weight: 600; font-size: 0.75rem; }
.badge-news { background: #e3f2fd; color: #1976d2; }
.badge-tender { background: #fff3e0; color: #f57c00; }
.badge-course { background: #f3e5f5; color: #7b1fa2; }
.badge-career { background: #e8f5e9; color: #388e3c; }
.result-date { color: var(--text-secondary); }
.result-title { font-size: 1.1rem; margin-bottom: 0.25rem; }
.result-title a { color: var(--text-primary); text-decoration: none; transition: color 0.2s ease; }
.result-title a:hover { color: var(--primary-color); }
.result-description { color: var(--text-secondary); line-height: 1.5; margin-bottom: 0.5rem; font-size: 0.95rem; }
.result-link { color: var(--primary-color); text-decoration: none; font-weight: 600; display: inline-flex; align-items: center; gap: 0.35rem; transition: gap 0.2s ease; }
.result-link:hover { gap: 0.5rem; }
.no-results { text-align: center; padding: 2rem 1rem; }
.no-results i { font-size: 3rem; color: var(--border-color); margin-bottom: 0.5rem; }
.no-results h3 { font-size: 1.25rem; margin-bottom: 0.25rem; }
@media (max-width: 768px) { .search-input-wrapper { flex-direction: column; } .search-input { width: 100%; } .btn-search { width: 100%; } .search-result-card { flex-direction: column; } }