/* /ai/ — effort-curve chart page */

.chart-title {
	font-family: 'DM Serif Text', serif;
}

.chart-subtitle {
	font-family: 'DM Serif Text', serif;
	opacity: 0.75;
}

/* --- SVG chart --- */

#effort-chart text {
	font-size: 11px;
	fill: var(--color-base-content);
}

#effort-chart .grid-line {
	stroke: var(--color-base-content);
	opacity: 0.08;
}

#effort-chart .axis-line {
	stroke: var(--color-base-content);
	opacity: 0.35;
}

#effort-chart .axis-label {
	opacity: 0.55;
}

#effort-chart .axis-title {
	font-size: 12px;
	opacity: 0.7;
}

#effort-chart .effort-label {
	font-size: 10px;
	opacity: 0.65;
}

#effort-chart .series-line {
	fill: none;
	stroke-width: 2.25;
	stroke-linejoin: round;
	stroke-linecap: round;
}

#effort-chart .series-dot {
	stroke: var(--color-base-100);
	stroke-width: 2;
}

#effort-chart .series {
	transition: opacity 0.15s ease;
}

#effort-chart .series-dim {
	opacity: 0.18;
}

/* --- legend chips --- */

.legend-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.75rem;
	padding: 0.25rem 0.65rem;
	border-radius: 9999px;
	border: 1px solid color-mix(in oklab, var(--color-base-content) 15%, transparent);
	background: color-mix(in oklab, var(--color-base-200) 60%, transparent);
	cursor: pointer;
	transition: opacity 0.15s ease, border-color 0.15s ease;
}

.legend-chip:hover,
.legend-chip.legend-hot {
	border-color: color-mix(in oklab, var(--color-base-content) 40%, transparent);
}

.legend-chip.legend-off {
	opacity: 0.35;
}

.legend-chip.legend-off .legend-dot {
	background: color-mix(in oklab, var(--color-base-content) 30%, transparent) !important;
}

.legend-dot {
	display: inline-block;
	width: 0.6rem;
	height: 0.6rem;
	border-radius: 9999px;
	flex: none;
}

/* --- tooltip --- */

@keyframes ai-spin { to { transform: rotate(360deg); } }

#refresh-icon.spin {
	animation: ai-spin 0.8s linear infinite;
}

#chart-tooltip .tip-card {
	background: var(--color-base-100);
	border: 1px solid color-mix(in oklab, var(--color-base-content) 15%, transparent);
	border-radius: 0.75rem;
	box-shadow: 0 8px 24px rgb(0 0 0 / 0.15);
	padding: 0.5rem 0.75rem;
	width: 200px;
	font-size: 0.72rem;
}

#chart-tooltip .tip-title {
	display: flex;
	align-items: center;
	gap: 0.35rem;
	font-weight: 700;
	margin-bottom: 0.25rem;
}

#chart-tooltip .tip-row {
	display: flex;
	justify-content: space-between;
	opacity: 0.85;
}
