* { margin: 0; padding: 0; box-sizing: border-box; font-family: sans-serif; }
body { background: #f8f9fa; }
header { background: #1e293b; color: white; padding: 20px; text-align: center; }
h1 { display: flex; align-items: center; justify-content: center; gap: 10px; }
main { padding: 30px; }
.news-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
.news-card { background: white; padding: 20px; border-radius: 15px; }
.cat { background: #3b82f6; color: white; padding: 5px 10px; border-radius: 10px; font-size: 12px; }
h3 { margin: 15px 0 10px; font-size: 16px; }
p { color: #666; font-size: 14px; }