/* General Reset & Base Styles */
* { margin: 0; padding: 0; box-sizing: border-box; font-family: Arial, sans-serif; }
body { background-color: #f4f4f4; padding: 10px; scroll-behavior: smooth; }

/* Search Bar */
.search-container { max-width: 1400px; margin: auto; margin-bottom: 20px; text-align: center; }
.search-container input { width: 80%; max-width: 600px; padding: 10px 15px; font-size: 16px; border: 1px solid #ddd; border-radius: 4px; }

/* Container Layout */
.container { display: flex; flex-wrap: wrap; max-width: 1400px; margin: auto; gap: 20px; }

/* Main Content Area */
.content { flex: 3; background: #fff; padding: 20px; border-radius: 8px; box-shadow: 0px 4px 10px rgba(0,0,0,0.1); }

/* Headings */
h1 { text-align: center; margin-bottom: 20px; color: #333; }

/* News Items */
.news-item { position: relative; margin-bottom: 20px; padding: 40px 15px 15px 15px; border: 1px solid #ddd; border-radius: 8px; background: #fff; box-shadow: 0px 2px 8px rgba(0,0,0,0.1); transition: transform 0.3s; }
.news-item:hover { transform: translateY(-5px); }
.news-item h2 { margin-top: 0; font-size: 22px; color: #222; }
.news-item img { width: 100%; height: auto; border-radius: 5px; margin: 15px 0; }
.news-content { font-size: 16px; line-height: 1.6; color: #444; }
.read-more { display: inline-block; margin-top: 10px; padding: 8px 12px; background-color: #007BFF; color: #fff; text-decoration: none; border-radius: 4px; transition: background 0.3s; }
.read-more:hover { background-color: #0056b3; }

/* News Meta (Source, Date & Time) */
.news-meta { margin-top: 8px; font-size: 14px; color: #777; }

/* Keywords (Placeholder) */
.news-keywords { margin-top: 8px; font-size: 14px; color: #777; }

/* Share Icon Styles */
.share-icon { position: absolute; top: 10px; right: 10px; background: rgba(0,0,0,0.6); color: #fff; padding: 8px; border-radius: 50%; cursor: pointer; font-size: 20px; z-index: 10; }

/* Sidebar Ads */
.sidebar { flex: 1; min-width: 250px; padding-left: 10px; }
.sidebar-ad { text-align: center; margin-bottom: 20px; background: #fff; padding: 10px; border-radius: 8px; box-shadow: 0px 2px 8px rgba(0,0,0,0.1); }
.sidebar-ad img { max-width: 100%; height: auto; border-radius: 5px; }

/* Advertisement Containers */
.ad-container { text-align: center; margin: 20px 0; padding: 15px; border: 1px solid #ddd; border-radius: 8px; background: #f9f9f9; }
.ad-container img { max-width: 100%; height: auto; border-radius: 5px; }
.ad-title { margin-top: 10px; font-weight: bold; color: #333; }

/* Text-based Ads */
.ad-text { padding: 15px; background: #f9f9f9; border: 1px solid #ddd; font-size: 16px; text-align: center; border-radius: 5px; font-weight: bold; color: #333; }


/* Responsive Design */
@media (max-width: 1024px) { .container { flex-direction: column; } .sidebar { padding-left: 0; margin-top: 20px; text-align: center; } }
@media (max-width: 768px) { body { padding: 5px; } .content, .sidebar { padding: 10px; } .news-item { padding: 40px 10px 10px 10px; }  }
@media (max-width: 480px) { h1 { font-size: 20px; } .news-item h2 { font-size: 18px; } .ad-container { padding: 10px; } }
