/* Simple Weather Widget */
.sww-card {
	--sww-bg: linear-gradient(160deg, #4a90d9 0%, #2f6db5 100%);
	--sww-fg: #fff;
	--sww-muted: rgba(255, 255, 255, 0.8);
	--sww-line: rgba(255, 255, 255, 0.2);
	background: var(--sww-bg);
	color: var(--sww-fg);
	border-radius: 14px;
	padding: 18px 20px;
	font-size: 15px;
	line-height: 1.4;
	max-width: 360px;
	box-sizing: border-box;
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
}
.sww-card.sww-night {
	--sww-bg: linear-gradient(160deg, #2c3e66 0%, #141d33 100%);
}
.sww-card * { box-sizing: border-box; }

.sww-title { margin: 0 0 8px; font-size: 1.1em; color: inherit; }
.sww-location { font-weight: 600; font-size: 1.05em; }

.sww-now { display: flex; align-items: center; gap: 10px; margin: 6px 0 2px; }
.sww-icon { font-size: 2.6em; line-height: 1; }
.sww-temp { font-size: 2.6em; font-weight: 300; line-height: 1; }
.sww-desc { color: var(--sww-muted); margin-bottom: 10px; }

.sww-card ul { list-style: none; margin: 0; padding: 0; }
.sww-meta { display: flex; flex-wrap: wrap; gap: 4px 14px; font-size: 0.85em; color: var(--sww-muted); }
.sww-meta li { margin: 0; }

.sww-forecast { margin-top: 12px !important; border-top: 1px solid var(--sww-line); padding-top: 8px !important; }
.sww-day-row {
	display: grid;
	grid-template-columns: 1fr auto 3em 5em;
	align-items: center;
	gap: 8px;
	padding: 4px 0;
	margin: 0;
}
.sww-day-icon { font-size: 1.2em; }
.sww-day-rain { font-size: 0.8em; color: var(--sww-muted); text-align: right; }
.sww-day-temps { text-align: right; white-space: nowrap; }
.sww-day-temps span { color: var(--sww-muted); margin-left: 6px; }

.sww-credit { margin-top: 10px; font-size: 0.7em; text-align: right; }
.sww-credit a { color: var(--sww-muted); text-decoration: none; }
.sww-credit a:hover { text-decoration: underline; }

.sww-error {
	--sww-bg: #fff4f4;
	--sww-fg: #8a1f1f;
	border: 1px solid #f1c0c0;
	box-shadow: none;
	font-size: 14px;
}

.sww-stale { margin-top: 8px; font-size: 0.75em; color: var(--sww-muted); font-style: italic; }
