/**
 * =======================================================================
 * WEATHER EXTENSION: GLOBAL STYLES
 * Description: Clean, high-contrast structural styling.
 * =======================================================================
 */

.drop-shadow .white-bg {
	 position: relative;
	 z-index: 3;
	 padding: 20px 20px 30px 20px ;
	 margin: 0 auto 20px auto;
	 margin-bottom: 20px;
	 border-radius: 4px;
	 background: #ffffff; /* Forces a solid background so the shadow works */
 }

.slfx-weather-widget {
	background-color: #f8f9fa;
	border: 1px solid #e0e4e8;
	border-radius: 8px;
	box-shadow: 0 4px 12px rgba(0,0,0,0.05);
	font-family: inherit;
	color: #333333; /* Dark gray text */
	overflow: hidden;
	margin-bottom: 30px;
}

.slfx-weather-widget .w-header {
	background-color: #2c3e50; /* Deep slate blue */
	color: #ffffff;
	padding: 15px 20px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.slfx-weather-widget .w-header h3 { color: #ffffff; }
.slfx-weather-widget .w-header .w-updated { font-size: 0.85em; opacity: 0.8; }

.slfx-weather-widget .w-forecast-grid {
	display: flex;
	flex-wrap: wrap;
	background-color: #ffffff;
}

.slfx-weather-widget .w-day-col {
	flex: 1 1 20%;
	min-width: 120px;
	padding: 20px 10px;
	text-align: center;
	border-right: 1px solid #f0f0f0;
}
.slfx-weather-widget .w-day-col:last-child { border-right: none; }

.slfx-weather-widget .w-day-name {
	font-weight: bold;
	font-size: 1.1em;
	text-transform: uppercase;
	color: #4a5568;
	margin-bottom: 10px;
}

.slfx-weather-widget .w-icon img {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	margin-bottom: 10px;
	background-color: #e2e8f0; /* Soft gray backing */
}

.slfx-weather-widget .w-temps {
	font-size: 1.2em;
	font-weight: bold;
	margin-bottom: 5px;
}
.slfx-weather-widget .w-high { color: #2d3748; margin-right: 8px; }
.slfx-weather-widget .w-low { color: #718096; }

.slfx-weather-widget .w-precip {
	display: block;
	color: #3182ce; /* Rain Blue */
	font-size: 0.9em;
	font-weight: bold;
	margin-bottom: 5px;
}

.slfx-weather-widget .w-desc {
	font-size: 0.85em;
	color: #4a5568;
	line-height: 1.3;
}

.slfx-weather-widget .w-solar-footer {
	background-color: #edf2f7; /* Very light cool gray */
	padding: 15px;
	border-top: 1px solid #e2e8f0;
	font-size: 0.9em;
}

.slfx-weather-widget .text-gold { color: #d69e2e !important; font-weight: bold; }
.slfx-weather-widget .text-purple { color: #553c9a !important; font-weight: bold; }

.slfx-weather-widget .w-source {
	text-align: right;
	margin-top: 15px;
	font-size: 0.8em;
}
.slfx-weather-widget .w-source a { color: #718096; text-decoration: none; }
.slfx-weather-widget .w-source a:hover { color: #2b6cb0; text-decoration: underline; }

/* =======================================================================
   SMALL WIDGET OVERRIDES (Newspaper Print Integration)
   ======================================================================= */
.slfx-weather-small {
	background-color: transparent;
	border: none;
	box-shadow: none;
	margin-bottom: 20px;
	padding: 10px 15px 20px 15px; /* Mimics the .side-story article padding */
	border-bottom: 1px solid rgb(180, 177, 177); /* Matches your strict article dividers */
}

.slfx-weather-small .w-header {
	background-color: transparent;
	padding: 0 0 15px 0;
	text-align: left;
}

.slfx-weather-small .w-header h4 { 
	color: rgb(18, 18, 18); 
	margin: 0; 
	font-size: 1.2rem; /* Matches .news-title-side-desktop */
	font-weight: bolder;
	font-family: et-book, Palatino, "Palatino Linotype", "Book Antiqua", Georgia, serif; 
	letter-spacing: normal;
}

.slfx-weather-small .w-header i {
	color: #b71c1c; /* Pulls your signature Sherman CT News red */
	margin-right: 5px;
}

.slfx-weather-small .w-forecast-grid {
	display: flex;
	justify-content: space-between;
	background-color: transparent;
	padding: 0 0 15px 0;
}

.slfx-weather-small .w-day-col {
	flex: 1; 
	padding: 0 5px;
	text-align: center;
	border-right: none; 
}

.slfx-weather-small .w-day-name { 
	font-weight: bold; 
	font-size: 0.85rem; 
	color: #555; 
	margin-bottom: 10px; 
	text-transform: uppercase;
	letter-spacing: 1px;
}

.slfx-weather-small .w-icon img { 
	width: 100%;          /* Forces the image to fill the available column width */
	max-width: 100px;      /* Prevents the icon from getting absurdly large on wide screens */
	height: auto;         /* Automatically calculates height to maintain the perfect aspect ratio */
	margin-bottom: 10px; 
	background-color: transparent; 
	border-radius: 0;
	filter: contrast(1.1); 
	/* ARCHITECT FIX: Desaturate and slightly fade for newspaper aesthetic */
	filter: contrast(1.05) grayscale(0.85); 
	opacity: 0.85; 
	
	transition: filter 0.3s ease; /* Subtle hover effect */
}

/* Optional: Return color on hover to add local interaction */
.slfx-weather-small .w-icon img:hover {
	filter: contrast(1.1) grayscale(0.2);
	opacity: 1;
}

.slfx-weather-small .w-temps { 
	font-size: 1.1rem; 
	font-family: et-book, Palatino, "Palatino Linotype", "Book Antiqua", Georgia, serif;
}
.slfx-weather-small .w-high { color: rgb(18, 18, 18); margin-right: 8px; font-weight: bold; }
.slfx-weather-small .w-low { color: #777; }

.slfx-weather-small .w-solar-footer {
	background-color: transparent;
	padding: 15px 0 0 0;
	border-top: 1px dotted #ccc; /* Subtle internal divider */
	font-size: 0.9rem;
	font-family: et-book, Palatino, "Palatino Linotype", "Book Antiqua", Georgia, serif;
}

.slfx-weather-small .w-solar-compact {
	display: flex;
	justify-content: center;
	gap: 40px; 
}

/* Slightly darkened gold/purple to pass accessibility contrast on pure white */
.slfx-weather-small .text-gold { color: #b8860b !important; font-weight: bold; }
.slfx-weather-small .text-purple { color: #4b0082 !important; font-weight: bold; }

/* Mobile Scalability */
@media (max-width: 768px) {
	.slfx-weather-widget .w-day-col { flex: 1 1 33.33%; border-bottom: 1px solid #f0f0f0; }
}
@media (max-width: 480px) {
	.slfx-weather-widget .w-day-col { flex: 1 1 50%; }
	
	
}