/* Price Tracking — frontend chart, tiles, Omnibus badge, notify form. */
.fmo-pt {
	--fmo-pt-accent: #2271b1;
	font-size: 14px;
	color: #1d2327;
	max-width: 760px;
}

.fmo-pt-tiles {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 10px;
	margin-bottom: 16px;
}
@media (max-width: 560px) {
	.fmo-pt-tiles { grid-template-columns: repeat(2, 1fr); }
}
.fmo-pt-tile {
	border: 1px solid #e5e7eb;
	border-radius: 12px;
	padding: 12px 14px;
	background: #fff;
	display: flex;
	flex-direction: column;
	gap: 3px;
}
.fmo-pt-k { font-size: 12px; color: #6b7280; }
.fmo-pt-v { font-size: 18px; font-weight: 600; color: #111827; }

.fmo-pt-seg {
	display: inline-flex;
	border: 1px solid #e5e7eb;
	border-radius: 8px;
	overflow: hidden;
	margin-bottom: 8px;
}
.fmo-pt-range {
	background: #fff;
	border: 0;
	padding: 6px 14px;
	font-size: 13px;
	color: #4b5563;
	cursor: pointer;
	line-height: 1.4;
}
.fmo-pt-range.on {
	background: color-mix(in srgb, var(--fmo-pt-accent) 12%, #fff);
	color: var(--fmo-pt-accent);
	font-weight: 600;
}

.fmo-pt-chart { margin-bottom: 6px; }
.fmo-pt-chart svg { display: block; }
.fmo-pt-grid { stroke: #e5e7eb; stroke-dasharray: 3 4; }
.fmo-pt-axis { fill: #9ca3af; font-size: 11px; }
.fmo-pt-area { fill: color-mix(in srgb, var(--fmo-pt-accent) 12%, transparent); stroke: none; }
.fmo-pt-line { fill: none; stroke: var(--fmo-pt-accent); stroke-width: 2.5; stroke-linejoin: round; }
.fmo-pt-low { fill: #fff; stroke: #16a34a; stroke-width: 2.5; }
.fmo-pt-cur { fill: var(--fmo-pt-accent); }
.fmo-pt-empty { color: #6b7280; padding: 24px 0; text-align: center; }

.fmo-pt-omnibus {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: #f0fdf4;
	color: #15803d;
	border: 1px solid #bbf7d0;
	border-radius: 8px;
	padding: 6px 12px;
	font-size: 13px;
	margin: 6px 0;
}
.fmo-pt-omnibus::before {
	content: "\2713";
	font-weight: 700;
}

.fmo-pt-notify {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
	margin-top: 16px;
	padding-top: 16px;
	border-top: 1px solid #e5e7eb;
}
.fmo-pt-notify-label { font-size: 14px; color: #4b5563; }
.fmo-pt-notify-email {
	flex: 1;
	min-width: 160px;
	border: 1px solid #d1d5db;
	border-radius: 8px;
	padding: 9px 12px;
	font-size: 14px;
}
.fmo-pt-notify-btn {
	background: var(--fmo-pt-accent);
	color: #fff;
	border: 0;
	border-radius: 8px;
	padding: 9px 18px;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	white-space: nowrap;
}
.fmo-pt-notify-btn[disabled] { opacity: .6; cursor: default; }
.fmo-pt-notify-msg { font-size: 13px; width: 100%; }
.fmo-pt-notify-msg.ok { color: #15803d; }
.fmo-pt-notify-msg.err { color: #b91c1c; }
