/* Novarius Smart City 0.9.6.3 — weather integrated with the header surface */
.p7-header-weather {
	--weather-accent: #168ee5;
	--weather-accent-rgb: 22, 142, 229;
	--weather-ink: var(--p7-text);
	--weather-muted: var(--p7-muted);
	position: relative;
	isolation: isolate;
	display: grid;
	grid-template-columns: 42px auto minmax(106px, 1fr) auto auto;
	align-items: center;
	gap: 12px;
	min-width: 430px;
	max-width: 570px;
	height: 64px;
	margin-inline: auto;
	padding: 0 8px;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: var(--weather-ink);
}
.p7-header-weather--morning { --weather-accent: #1d9dc4; --weather-accent-rgb: 29, 157, 196; }
.p7-header-weather--day { --weather-accent: #168ee5; --weather-accent-rgb: 22, 142, 229; }
.p7-header-weather--evening { --weather-accent: #dc6f38; --weather-accent-rgb: 220, 111, 56; }
.p7-header-weather--night { --weather-accent: #7664d8; --weather-accent-rgb: 118, 100, 216; }
.p7-header-weather--stale { --weather-accent: #78869a; --weather-accent-rgb: 120, 134, 154; }

/* Tylko miękkie światło — bez osobnego tła, ramki i karty. */
.p7-header-weather::before {
	content: "";
	position: absolute;
	z-index: -1;
	left: 5px;
	top: 50%;
	width: 112px;
	height: 48px;
	border-radius: 50%;
	background: rgba(var(--weather-accent-rgb), .14);
	filter: blur(22px);
	transform: translateY(-50%);
	pointer-events: none;
}
.p7-header-weather::after { content: none; }
.p7-header-weather__glow { display: none; }
.p7-header-weather__symbol {
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: var(--weather-accent);
}
.p7-header-weather__symbol .p7-weather-icon { width: 29px; height: 29px; filter: drop-shadow(0 4px 10px rgba(var(--weather-accent-rgb), .28)); }
.p7-header-weather__temp { display: flex; align-items: flex-start; color: var(--weather-ink); font-size: clamp(1.78rem, 2.1vw, 2.28rem); font-weight: 520; line-height: 1; letter-spacing: -.065em; }
.p7-header-weather__temp sup { margin: 1px 0 0 3px; color: var(--weather-accent); font-size: .38em; font-weight: 800; letter-spacing: 0; }
.p7-header-weather__place,
.p7-header-weather__trust > span,
.p7-header-weather__metrics > span { display: grid; min-width: 0; }
.p7-header-weather__place small,
.p7-header-weather__metrics small,
.p7-header-weather__trust small { color: var(--weather-muted); font-size: .6rem; line-height: 1.1; }
.p7-header-weather__place strong { margin-top: 4px; overflow: hidden; color: var(--weather-ink); font-size: .72rem; font-weight: 730; text-overflow: ellipsis; white-space: nowrap; }
.p7-header-weather__metrics { display: flex; align-items: center; gap: 11px; padding-inline: 12px; border-inline: 1px solid var(--p7-border); }
.p7-header-weather__metrics > span + span { padding-left: 11px; border-left: 1px solid var(--p7-border); }
.p7-header-weather__metrics strong { margin-top: 3px; color: var(--weather-ink); font-size: .72rem; font-weight: 790; white-space: nowrap; }
.p7-header-weather__trust { display: flex; align-items: center; gap: 8px; min-width: 74px; }
.p7-header-weather__trust i { position: relative; display: block; width: 7px; height: 7px; flex: 0 0 auto; border: 0; border-radius: 50%; background: #25b889; box-shadow: 0 0 0 4px rgba(37, 184, 137, .10), 0 0 12px rgba(37, 184, 137, .35); }
.p7-header-weather--stale .p7-header-weather__trust i { background: #d59a31; box-shadow: 0 0 0 4px rgba(213, 154, 49, .10); }
.p7-header-weather__trust strong { color: var(--weather-ink); font-size: .68rem; line-height: 1.1; }
.p7-header-weather__trust small { margin-top: 3px; white-space: nowrap; }

html[data-p7-theme="dark"] .p7-header-weather { --weather-ink: #f5f7ff; --weather-muted: #9eabc3; }
html[data-p7-theme="dark"] .p7-header-weather__metrics { border-color: rgba(255, 255, 255, .14); }
html[data-p7-theme="dark"] .p7-header-weather__metrics > span + span { border-color: rgba(255, 255, 255, .12); }

@media (min-width: 1181px) {
	.p7-brand-row { display: grid; grid-template-columns: max-content minmax(390px, 570px) max-content; align-items: center; justify-content: space-between; column-gap: clamp(18px, 2.3vw, 38px); }
}
@media (min-width: 1181px) and (max-width: 1380px) {
	.p7-header-weather { min-width: 330px; grid-template-columns: 40px auto minmax(78px, 1fr) auto; gap: 9px; }
	.p7-header-weather__symbol { width: 38px; height: 38px; }
	.p7-header-weather__metrics > span:nth-child(2), .p7-header-weather__trust { display: none; }
}
@media (min-width: 761px) and (max-width: 1180px) {
	.p7-header-weather { min-width: 152px; max-width: 190px; height: 54px; grid-template-columns: 38px auto; gap: 9px; margin-left: auto; }
	.p7-header-weather__symbol { width: 37px; height: 37px; }
	.p7-header-weather__temp { font-size: 1.72rem; }
	.p7-header-weather__place, .p7-header-weather__metrics, .p7-header-weather__trust { display: none; }
}
@media (max-width: 760px) {
	.p7-brand-row { flex-wrap: wrap; }
	.p7-header-weather { --weather-ink: #fff; --weather-muted: #aebed0; order: 3; grid-template-columns: 34px auto minmax(0, 1fr) auto; gap: 9px; width: 100%; min-width: 0; max-width: none; height: 43px; margin: 2px 0 0; padding: 6px 2px 0; border-top: 1px solid rgba(255, 255, 255, .10); }
	.p7-header-weather::before { left: -8px; width: 90px; height: 34px; }
	.p7-header-weather__symbol { width: 32px; height: 32px; }
	.p7-header-weather__symbol .p7-weather-icon { width: 21px; height: 21px; }
	.p7-header-weather__temp { font-size: 1.5rem; }
	.p7-header-weather__place small { display: none; }
	.p7-header-weather__place strong { margin: 0; font-size: .66rem; }
	.p7-header-weather__metrics { justify-self: end; padding: 0; border: 0; }
	.p7-header-weather__metrics > span:nth-child(2), .p7-header-weather__trust { display: none; }
	.p7-header-weather__metrics small { display: none; }
	.p7-header-weather__metrics strong { color: #fff; font-size: .68rem; }
}
@media (prefers-reduced-motion: no-preference) {
	.p7-header-weather::before { animation: p7-weather-breathe 5.8s ease-in-out infinite; }
	.p7-header-weather__symbol { animation: p7-weather-float 4.8s ease-in-out infinite; }
	.p7-header-weather__symbol .p7-weather-icon { animation: p7-weather-turn 18s linear infinite; }
	.p7-header-weather__trust i { animation: p7-weather-pulse 2.4s ease-out infinite; }
	@keyframes p7-weather-breathe { 0%, 100% { opacity: .65; transform: translateY(-50%) scale(.92); } 50% { opacity: 1; transform: translateY(-50%) scale(1.08); } }
	@keyframes p7-weather-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-2px); } }
	@keyframes p7-weather-turn { to { transform: rotate(360deg); } }
	@keyframes p7-weather-pulse { 0%, 100% { box-shadow: 0 0 0 4px rgba(37, 184, 137, .10), 0 0 10px rgba(37, 184, 137, .34); } 50% { box-shadow: 0 0 0 7px rgba(37, 184, 137, 0), 0 0 16px rgba(37, 184, 137, .52); } }
}
@media (forced-colors: active) {
	.p7-header-weather { color: CanvasText; forced-color-adjust: auto; }
	.p7-header-weather::before { display: none; }
	.p7-header-weather * { color: CanvasText !important; }
}
@media print { .p7-header-weather { display: none !important; } }
