/* /Components/GoalOnboarding.razor.rz.scp.css */
.onboard[b-rsnj9f33m3] {
	max-width: 860px;
	margin: 0 auto;
	width: 100%;
}

.onboard__hero[b-rsnj9f33m3] {
	max-width: 600px;
}

.onboard__lede[b-rsnj9f33m3] {
	margin-top: 12px;
}

.onboard__card[b-rsnj9f33m3] {
	display: grid;
	gap: 18px;
	padding: 28px;
}

	.onboard__card h2[b-rsnj9f33m3] {
		margin: 0 0 4px;
	}

.onboard__blurb[b-rsnj9f33m3] {
	color: var(--ink-2);
	max-width: 560px;
}

.onboard__actions[b-rsnj9f33m3] {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
}

.onboard__kinds[b-rsnj9f33m3] {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 12px;
}

.kind-card[b-rsnj9f33m3] {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	text-align: left;
	padding: 16px;
	border: 1px solid var(--hairline);
	border-radius: var(--r-card);
	background: var(--surface-card);
	color: var(--ink);
	font: inherit;
	cursor: pointer;
	transition: border-color 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease;
}

	.kind-card:hover[b-rsnj9f33m3] {
		border-color: var(--primary);
		transform: translateY(-1px);
		box-shadow: var(--shadow-card);
	}

	.kind-card:focus-visible[b-rsnj9f33m3] {
		outline: none;
		box-shadow: var(--focus-ring);
	}

.kind-card__icon[b-rsnj9f33m3] {
	color: var(--primary);
	flex-shrink: 0;
	margin-top: 2px;
}

.kind-card__text[b-rsnj9f33m3] {
	display: grid;
	gap: 4px;
}

	.kind-card__text strong[b-rsnj9f33m3] {
		font-weight: 700;
	}

	.kind-card__text small[b-rsnj9f33m3] {
		color: var(--ink-3);
		line-height: 1.35;
	}

.onboard__form[b-rsnj9f33m3] {
	display: grid;
	gap: 14px;
	max-width: 520px;
}

.onboard__form-row[b-rsnj9f33m3] {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}

.onboard__hint[b-rsnj9f33m3] {
	font-size: 0.82rem;
	color: var(--ink-3);
	margin-top: -6px;
}

.onboard__later[b-rsnj9f33m3] {
	background: none;
	border: none;
	padding: 0;
	justify-self: start;
	font: inherit;
	font-size: 0.85rem;
	color: var(--ink-3);
	text-decoration: underline;
	cursor: pointer;
}

	.onboard__later:hover[b-rsnj9f33m3] {
		color: var(--primary-strong);
	}

.onboard__created[b-rsnj9f33m3] {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

@media (max-width: 575px) {
	.onboard__form-row[b-rsnj9f33m3] {
		grid-template-columns: 1fr;
	}
}
/* /Components/LineChart.razor.rz.scp.css */
.chart[b-3ln44l70rc] {
	width: 100%;
}

.chart svg[b-3ln44l70rc] {
	width: 100%;
	height: auto;
	font-family: var(--font-body);
}

.chart-empty[b-3ln44l70rc] {
	display: grid;
	place-items: center;
	min-height: 140px;
	border: 1px dashed var(--hairline);
	border-radius: var(--r-ctl);
	color: var(--ink-3);
	font-size: 0.85rem;
	padding: 16px;
	text-align: center;
}

.chart__grid[b-3ln44l70rc] {
	stroke: var(--viz-grid);
	stroke-width: 1;
}

.chart__tick[b-3ln44l70rc] {
	fill: var(--viz-axis);
	font-size: 10.5px;
	font-variant-numeric: tabular-nums;
}

.chart__target[b-3ln44l70rc] {
	stroke: var(--viz-target);
	stroke-width: 1.4;
	stroke-dasharray: 5 4;
}

.chart__target-label[b-3ln44l70rc] {
	fill: var(--viz-target);
	font-size: 10.5px;
	font-weight: 700;
}

.chart__line[b-3ln44l70rc] {
	fill: none;
	stroke: var(--viz-line);
	stroke-width: 2.4;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.chart__marker[b-3ln44l70rc] {
	fill: var(--surface-card);
	stroke: var(--viz-line);
	stroke-width: 2;
	transition: r 0.1s ease;
}

.chart__marker--latest[b-3ln44l70rc] {
	fill: var(--viz-line);
}

.chart__latest[b-3ln44l70rc] {
	fill: var(--ink);
	font-size: 12px;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
}

.chart__tip rect[b-3ln44l70rc] {
	fill: var(--ink);
	opacity: 0.94;
}

.chart__tip text[b-3ln44l70rc] {
	fill: #ffffff;
	font-size: 11px;
	font-weight: 600;
	font-variant-numeric: tabular-nums;
}

.chart__tip .chart__tip-detail[b-3ln44l70rc] {
	fill: #9fd3da;
	font-size: 9.5px;
	font-weight: 600;
}
/* /Components/MonthCalendar.razor.rz.scp.css */
.cal[b-nob1lwuboh] {
	display: grid;
	gap: 12px;
}

.cal__header[b-nob1lwuboh] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.cal__title[b-nob1lwuboh] {
	font-size: 1.05rem;
}

.cal__nav[b-nob1lwuboh] {
	display: flex;
	align-items: center;
	gap: 6px;
}

.cal__today[b-nob1lwuboh] {
	padding: 7px 14px;
	font-size: 0.8rem;
}

.cal__weekdays[b-nob1lwuboh] {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 4px;
	font-size: 0.68rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: var(--ink-3);
	text-align: center;
}

.cal__grid[b-nob1lwuboh] {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 4px;
}

.cal__day[b-nob1lwuboh] {
	appearance: none;
	font-family: inherit;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
	min-height: 62px;
	padding: 6px 2px;
	background: var(--surface-card);
	border: 1px solid var(--viz-grid);
	border-radius: 10px;
	cursor: pointer;
	transition: border-color 0.12s ease, background-color 0.12s ease;
}

.cal__day:hover[b-nob1lwuboh] {
	border-color: var(--primary);
}

.cal__day--out[b-nob1lwuboh] {
	background: var(--surface-sunken);
	border-color: transparent;
}

.cal__day--out .cal__day-num[b-nob1lwuboh] {
	color: var(--ink-3);
}

.cal__day--today .cal__day-num[b-nob1lwuboh] {
	background: var(--accent);
	color: var(--accent-ink);
}

.cal__day--selected[b-nob1lwuboh] {
	background: var(--primary-soft);
	border-color: var(--primary);
	box-shadow: inset 0 0 0 1px var(--primary);
}

.cal__day-num[b-nob1lwuboh] {
	font-size: 0.78rem;
	font-weight: 700;
	color: var(--ink-2);
	width: 22px;
	height: 22px;
	display: grid;
	place-items: center;
	border-radius: 50%;
}

.cal__day-body[b-nob1lwuboh] {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 2px;
	min-height: 16px;
}

@media (max-width: 640px) {
	.cal__day[b-nob1lwuboh] {
		min-height: 48px;
	}
}
/* /Components/NumberField.razor.rz.scp.css */
.number-wrap[b-vlq0ob0v16] {
	position: relative;
}

.number-suffix[b-vlq0ob0v16] {
	position: absolute;
	right: 14px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 0.8rem;
	font-weight: 700;
	color: var(--ink-3);
	pointer-events: none;
}
/* /Components/SideBar.razor.rz.scp.css */
.sidebar[b-u0lqxj66vc] {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 20px 14px;
	gap: 18px;
}

.sidebar__brand[b-u0lqxj66vc] {
	display: grid;
	place-items: center;
	padding: 6px 10px 2px;
}

.sidebar__logo[b-u0lqxj66vc] {
	width: 120px;
	height: auto;
}

.sidebar__user[b-u0lqxj66vc] {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 8px 12px;
	border: 1px solid var(--hairline);
	border-radius: var(--r-pill);
	font-size: 0.82rem;
	font-weight: 700;
	color: var(--ink-2);
	justify-content: center;
}

.sidebar__user-dot[b-u0lqxj66vc] {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--ok);
	flex: none;
}

.sidebar__menu[b-u0lqxj66vc] {
	list-style: none;
	padding: 0;
	display: grid;
	gap: 4px;
}

.sidebar__item[b-u0lqxj66vc] {
	position: relative;
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px 14px;
	border-radius: var(--r-ctl);
	color: var(--ink-2);
	font-weight: 600;
	font-size: 0.92rem;
	text-decoration: none;
	transition: background-color 0.12s ease, color 0.12s ease;
}

.sidebar__item:hover[b-u0lqxj66vc] {
	background: var(--surface-sunken);
	color: var(--ink);
}

.sidebar__item--active[b-u0lqxj66vc] {
	background: var(--primary-soft);
	color: var(--primary-strong);
}

/* The accent marker — the one place the highlighter yellow lives in chrome */
.sidebar__item--active[b-u0lqxj66vc]::before {
	content: "";
	position: absolute;
	left: 0;
	top: 22%;
	bottom: 22%;
	width: 3.5px;
	border-radius: var(--r-pill);
	background: var(--accent);
}

.sidebar__footer[b-u0lqxj66vc] {
	margin-top: auto;
	display: grid;
	gap: 10px;
	border-top: 1px solid var(--hairline);
	padding-top: 14px;
}

.sidebar__credit[b-u0lqxj66vc] {
	text-align: center;
	font-size: 0.72rem;
	color: var(--ink-3);
}

.sidebar__credit strong[b-u0lqxj66vc] {
	color: var(--ink-2);
	letter-spacing: 0.03em;
}
/* /Layout/MainLayout.razor.rz.scp.css */
.shell[b-d4ofw1vf5x] {
	display: grid;
	grid-template-columns: 252px minmax(0, 1fr);
	height: 100%;
}

.shell__topbar[b-d4ofw1vf5x] {
	display: none;
}

.shell__sidebar[b-d4ofw1vf5x] {
	background: var(--surface-card);
	border-right: 1px solid var(--hairline);
	overflow-y: auto;
}

.shell__main[b-d4ofw1vf5x] {
	overflow-y: auto;
	min-width: 0;
}

.shell__scrim[b-d4ofw1vf5x] {
	display: none;
}

@media (max-width: 899px) {
	.shell[b-d4ofw1vf5x] {
		grid-template-columns: minmax(0, 1fr);
		grid-template-rows: auto minmax(0, 1fr);
	}

	.shell__topbar[b-d4ofw1vf5x] {
		display: flex;
		align-items: center;
		gap: 12px;
		padding: 10px 14px;
		background: var(--surface-card);
		border-bottom: 1px solid var(--hairline);
	}

	.shell__topbar-logo[b-d4ofw1vf5x] {
		height: 34px;
		width: auto;
	}

	.shell__sidebar[b-d4ofw1vf5x] {
		position: fixed;
		inset: 0 auto 0 0;
		width: min(280px, 82vw);
		z-index: 60;
		transform: translateX(-100%);
		transition: transform 0.22s ease;
	}

	.shell__sidebar--open[b-d4ofw1vf5x] {
		transform: none;
		box-shadow: 0 0 40px rgba(11, 43, 48, 0.3);
	}

	.shell__scrim[b-d4ofw1vf5x] {
		display: block;
		position: fixed;
		inset: 0;
		z-index: 50;
		background: rgba(11, 43, 48, 0.45);
	}
}
/* /Pages/Admin.razor.rz.scp.css */
.admin-hero__description[b-3dgt0w5o5v] {
	color: var(--hero-ink-2);
	margin-top: 12px;
	max-width: 480px;
}

.admin-card[b-3dgt0w5o5v] {
	max-width: 560px;
}

.admin-form[b-3dgt0w5o5v] {
	display: grid;
	gap: 14px;
	justify-items: start;
}

	.admin-form[b-3dgt0w5o5v]  .field {
		width: 100%;
	}

.admin-invite__hint[b-3dgt0w5o5v] {
	color: var(--ink-2);
	font-size: 0.9rem;
	max-width: 440px;
}

.admin-invite__result[b-3dgt0w5o5v] {
	display: flex;
	gap: 8px;
	width: 100%;
}

	.admin-invite__result input[b-3dgt0w5o5v] {
		flex: 1;
		min-width: 0;
	}

.admin-invite__expiry[b-3dgt0w5o5v] {
	color: var(--ink-3);
	font-size: 0.8rem;
}

.admin-colour[b-3dgt0w5o5v] {
	display: flex;
	align-items: center;
	gap: 10px;
}

.admin-colour__swatch[b-3dgt0w5o5v] {
	width: 44px;
	height: 32px;
	padding: 2px;
	border: 1px solid var(--hairline);
	border-radius: var(--r-ctl);
	background: var(--surface-card);
	cursor: pointer;
}

.admin-colour__value[b-3dgt0w5o5v] {
	color: var(--ink-2);
	font-size: 0.9rem;
	min-width: 90px;
}

.admin-settings__hint[b-3dgt0w5o5v] {
	color: var(--ink-3);
	font-size: 0.8rem;
	margin-top: 4px;
}

.admin-settings__error[b-3dgt0w5o5v] {
	color: var(--danger);
	font-size: 0.9rem;
}

.admin-settings__saved[b-3dgt0w5o5v] {
	color: var(--ok);
	font-size: 0.9rem;
}
/* /Pages/Goals.razor.rz.scp.css */
.goals-hero[b-4xeg48ogud] {
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
	align-items: center;
}

.goals-hero__text[b-4xeg48ogud] {
	flex: 1 1 320px;
}

.goals-hero__description[b-4xeg48ogud] {
	color: var(--hero-ink-2);
	margin-top: 12px;
	max-width: 480px;
}

.goals-hero__metrics[b-4xeg48ogud] {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.hero-metric[b-4xeg48ogud] {
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: var(--r-card);
	padding: 14px 20px;
	min-width: 120px;
}

	.hero-metric span[b-4xeg48ogud] {
		display: block;
		font-size: 0.72rem;
		text-transform: uppercase;
		letter-spacing: 0.08em;
		color: var(--hero-ink-2);
		margin-bottom: 4px;
	}

	.hero-metric strong[b-4xeg48ogud] {
		font-family: var(--font-display);
		font-stretch: var(--display-stretch);
		font-size: 1.6rem;
		font-weight: 800;
		color: var(--glow);
	}

.goal-actions[b-4xeg48ogud] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
}

	.goal-actions h2[b-4xeg48ogud] {
		margin-bottom: 4px;
	}

	.goal-actions p[b-4xeg48ogud] {
		color: var(--ink-2);
		font-size: 0.92rem;
	}

.goal-actions__buttons[b-4xeg48ogud] {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-wrap: wrap;
}

.goal-grid[b-4xeg48ogud] {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(420px, 100%), 1fr));
	gap: 24px;
	align-items: start;
}

.goal-card h3[b-4xeg48ogud] {
	font-size: 1.05rem;
}

.goal-card__summary[b-4xeg48ogud] {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(90px, 1fr));
	gap: 10px;
	margin-bottom: 16px;
}

.goal-stat[b-4xeg48ogud] {
	background: var(--surface-sunken);
	border-radius: var(--r-ctl);
	padding: 10px 12px;
}

	.goal-stat span[b-4xeg48ogud] {
		display: block;
		font-size: 0.7rem;
		text-transform: uppercase;
		letter-spacing: 0.08em;
		font-weight: 700;
		color: var(--ink-3);
		margin-bottom: 2px;
	}

	.goal-stat strong[b-4xeg48ogud] {
		font-size: 1rem;
		color: var(--ink);
	}

.goal-card__progress[b-4xeg48ogud] {
	display: grid;
	gap: 6px;
	margin-bottom: 16px;
}

	.goal-card__progress span[b-4xeg48ogud] {
		font-size: 0.8rem;
		font-weight: 600;
		color: var(--ink-2);
	}
/* /Pages/GoalsEdit.razor.rz.scp.css */
.edit-hero[b-8fmn3x3hji] {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.edit-hero__description[b-8fmn3x3hji] {
	color: var(--hero-ink-2);
	margin-top: 12px;
	max-width: 480px;
}

.edit-list[b-8fmn3x3hji] {
	display: grid;
	gap: 24px;
}

.edit-card__body[b-8fmn3x3hji] {
	display: grid;
	grid-template-columns: minmax(280px, 1fr) minmax(0, 1.2fr);
	gap: 24px;
	align-items: start;
}

.edit-form[b-8fmn3x3hji] {
	display: grid;
	gap: 14px;
}

.edit-form__row[b-8fmn3x3hji] {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}

.edit-form__hint[b-8fmn3x3hji] {
	font-size: 0.82rem;
	color: var(--ink-3);
	margin-top: -6px;
}

.edit-card__actions[b-8fmn3x3hji] {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}

.goal-action[b-8fmn3x3hji] {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	border: 1px solid var(--hairline);
	border-radius: var(--r-ctl);
	background: var(--surface-card);
	color: var(--ink-2);
	font: inherit;
	font-weight: 700;
	font-size: 0.8rem;
	padding: 8px 12px;
	cursor: pointer;
	transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

	.goal-action:hover[b-8fmn3x3hji] {
		border-color: var(--primary);
		color: var(--primary-strong);
	}

	.goal-action:focus-visible[b-8fmn3x3hji] {
		outline: none;
		box-shadow: var(--focus-ring);
	}

	.goal-action--danger:hover[b-8fmn3x3hji] {
		border-color: var(--danger);
		color: var(--danger);
		background: var(--surface-card);
	}

.delete-confirm[b-8fmn3x3hji] {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 0.82rem;
	color: var(--ink-2);
}

.delete-confirm__yes[b-8fmn3x3hji],
.delete-confirm__no[b-8fmn3x3hji] {
	border: 1px solid var(--hairline);
	border-radius: var(--r-ctl);
	font: inherit;
	font-weight: 700;
	font-size: 0.8rem;
	padding: 7px 12px;
	cursor: pointer;
}

.delete-confirm__yes[b-8fmn3x3hji] {
	border-color: var(--danger);
	background: var(--danger);
	color: #fff;
}

.delete-confirm__no[b-8fmn3x3hji] {
	background: var(--surface-card);
	color: var(--ink-2);
}

.edit-archived[b-8fmn3x3hji] {
	display: grid;
	gap: 16px;
}

.edit-archived__head h2[b-8fmn3x3hji] {
	margin-bottom: 4px;
}

.edit-archived__head p[b-8fmn3x3hji] {
	color: var(--ink-3);
	font-size: 0.88rem;
}

.card--archived[b-8fmn3x3hji] {
	opacity: 0.75;
}

.edit-chart[b-8fmn3x3hji] {
	min-width: 0;
}

.edit-actions[b-8fmn3x3hji] {
	display: flex;
	justify-content: flex-start;
}

@media (max-width: 899px) {
	.edit-card__body[b-8fmn3x3hji] {
		grid-template-columns: 1fr;
	}
}
/* /Pages/Home.razor.rz.scp.css */
.dash-hero[b-lsdd5edi6e] {
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
}

.dash-hero__text[b-lsdd5edi6e] {
	flex: 1 1 320px;
}

.dash-hero__description[b-lsdd5edi6e] {
	color: var(--hero-ink-2);
	margin: 12px 0 20px;
	max-width: 520px;
}

.dash-hero__tags[b-lsdd5edi6e] {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.dash-hero__insights[b-lsdd5edi6e] {
	flex: 1 1 280px;
	display: flex;
	flex-direction: column;
	gap: 16px;
	align-self: center;
}

.hero-progress[b-lsdd5edi6e] {
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: var(--r-card);
	padding: 20px;
}

.hero-progress__header[b-lsdd5edi6e] {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	margin-bottom: 10px;
	font-size: 0.85rem;
	color: var(--hero-ink-2);
}

	.hero-progress__header strong[b-lsdd5edi6e] {
		font-family: var(--font-display);
		font-stretch: var(--display-stretch);
		font-size: 1.6rem;
		font-weight: 800;
		color: var(--glow);
	}

.hero-progress small[b-lsdd5edi6e] {
	display: block;
	margin-top: 10px;
	color: var(--hero-ink-2);
	font-size: 0.8rem;
}

.hero-mini-metrics[b-lsdd5edi6e] {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
	gap: 12px;
}

.mini-metric[b-lsdd5edi6e] {
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: var(--r-card);
	padding: 14px 16px;
}

.mini-metric__label[b-lsdd5edi6e] {
	font-size: 0.72rem;
	color: var(--hero-ink-2);
	text-transform: uppercase;
	letter-spacing: 0.08em;
	margin-bottom: 6px;
}

.mini-metric__value[b-lsdd5edi6e] {
	font-family: var(--font-display);
	font-stretch: var(--display-stretch);
	font-size: 1.4rem;
	font-weight: 800;
	margin: 0;
	color: var(--hero-ink);
}

	.mini-metric__value span[b-lsdd5edi6e] {
		font-size: 0.85rem;
		font-family: var(--font-body);
		font-weight: 600;
		margin-left: 2px;
		color: var(--hero-ink-2);
	}

.mini-metric__trend[b-lsdd5edi6e] {
	display: inline-block;
	margin-top: 6px;
	font-size: 0.8rem;
	color: var(--glow);
}

.mini-metric__trend--muted[b-lsdd5edi6e] {
	color: var(--hero-ink-2);
}

.stat-grid[b-lsdd5edi6e] {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
	gap: 16px;
}

.stat-card[b-lsdd5edi6e] {
	background: var(--surface-card);
	border-radius: var(--r-card);
	padding: 20px 22px;
	border: 1px solid var(--hairline);
	box-shadow: var(--shadow-card);
	position: relative;
	overflow: hidden;
}

	.stat-card[b-lsdd5edi6e]::after {
		content: "";
		position: absolute;
		inset: auto 0 0 0;
		height: 4px;
		background: var(--accent-color, var(--primary));
	}

.stat-card__label[b-lsdd5edi6e] {
	font-size: 0.75rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-weight: 700;
	color: var(--ink-3);
	margin-bottom: 8px;
}

.stat-card__value[b-lsdd5edi6e] {
	font-family: var(--font-display);
	font-stretch: var(--display-stretch);
	font-size: 1.8rem;
	font-weight: 800;
	margin: 0;
	color: var(--ink);
}

.stat-card__detail[b-lsdd5edi6e] {
	color: var(--ink-2);
	margin: 4px 0 10px;
	font-size: 0.9rem;
}

.stat-card__delta[b-lsdd5edi6e] {
	font-size: 0.82rem;
	font-weight: 700;
	color: var(--primary);
}

.dash-main[b-lsdd5edi6e] {
	display: grid;
	grid-template-columns: minmax(0, 2fr) minmax(260px, 1fr);
	gap: 24px;
	align-items: start;
}

.dash-main__left[b-lsdd5edi6e] {
	display: flex;
	flex-direction: column;
	gap: 24px;
	min-width: 0;
}

.record-name[b-lsdd5edi6e] {
	font-weight: 700;
	color: var(--ink);
}

.record-date[b-lsdd5edi6e] {
	font-size: 0.8rem;
	color: var(--ink-3);
	font-weight: 400;
}

.plan-list[b-lsdd5edi6e] {
	display: flex;
	flex-direction: column;
}

.plan-item[b-lsdd5edi6e] {
	display: flex;
	gap: 16px;
	padding: 14px 0;
	border-top: 1px solid var(--hairline);
}

	.plan-item:first-child[b-lsdd5edi6e] {
		border-top: none;
		padding-top: 0;
	}

.plan-pill[b-lsdd5edi6e] {
	border: 1.5px solid var(--primary);
	border-radius: var(--r-ctl);
	padding: 8px 12px;
	min-width: 88px;
	text-align: center;
	display: flex;
	flex-direction: column;
	gap: 2px;
	align-self: flex-start;
}

	.plan-pill span[b-lsdd5edi6e] {
		text-transform: uppercase;
		font-size: 0.7rem;
		font-weight: 700;
		letter-spacing: 0.08em;
		color: var(--ink-3);
	}

	.plan-pill strong[b-lsdd5edi6e] {
		font-size: 0.95rem;
		color: var(--ink);
	}

.plan-title[b-lsdd5edi6e] {
	margin: 0;
	font-weight: 700;
	color: var(--ink);
}

.plan-focus[b-lsdd5edi6e] {
	margin: 2px 0;
	color: var(--ink-2);
	font-size: 0.9rem;
}

.plan-body small[b-lsdd5edi6e] {
	color: var(--ink-3);
}

.activity-feed[b-lsdd5edi6e] {
	display: flex;
	flex-direction: column;
}

.activity-row[b-lsdd5edi6e] {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 14px 0;
	border-top: 1px solid var(--hairline);
}

	.activity-row:first-child[b-lsdd5edi6e] {
		border-top: none;
		padding-top: 0;
	}

.activity-body[b-lsdd5edi6e] {
	flex: 1;
	min-width: 0;
}

.activity-title[b-lsdd5edi6e] {
	margin: 0;
	font-weight: 600;
	color: var(--ink);
	font-size: 0.92rem;
}

.activity-detail[b-lsdd5edi6e] {
	margin: 2px 0 0;
	color: var(--ink-2);
	font-size: 0.82rem;
}

.activity-time[b-lsdd5edi6e] {
	font-size: 0.78rem;
	color: var(--ink-3);
	white-space: nowrap;
}

@media (max-width: 991px) {
	.dash-main[b-lsdd5edi6e] {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 575px) {
	.activity-row[b-lsdd5edi6e] {
		flex-wrap: wrap;
	}
}
/* /Pages/Leaderboard.razor.rz.scp.css */
.board-hero[b-s45ql0al3b] {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.board-hero__description[b-s45ql0al3b] {
	color: var(--hero-ink-2);
	margin-top: 12px;
	max-width: 480px;
}

.hero-metric[b-s45ql0al3b] {
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: var(--r-card);
	padding: 14px 20px;
}

	.hero-metric span[b-s45ql0al3b] {
		display: block;
		font-size: 0.72rem;
		text-transform: uppercase;
		letter-spacing: 0.08em;
		color: var(--hero-ink-2);
		margin-bottom: 4px;
	}

	.hero-metric strong[b-s45ql0al3b] {
		font-family: var(--font-display);
		font-stretch: var(--display-stretch);
		font-size: 1.6rem;
		font-weight: 800;
		color: var(--glow);
	}

.board-search[b-s45ql0al3b] {
	position: relative;
	display: flex;
	align-items: center;
	color: var(--ink-3);
}

	.board-search svg[b-s45ql0al3b] {
		position: absolute;
		left: 12px;
		pointer-events: none;
	}

	.board-search input[b-s45ql0al3b] {
		padding-left: 38px;
		min-width: 220px;
	}

.board-list[b-s45ql0al3b] {
	list-style: none;
	display: flex;
	flex-direction: column;
}

.board-row[b-s45ql0al3b] {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 12px 10px;
	border-top: 1px solid var(--hairline);
	border-radius: var(--r-ctl);
}

	.board-row:first-child[b-s45ql0al3b] {
		border-top: none;
	}

.board-rank[b-s45ql0al3b] {
	font-family: var(--font-display);
	font-stretch: var(--display-stretch);
	font-weight: 800;
	font-size: 1.1rem;
	color: var(--ink-3);
	min-width: 2.2em;
	text-align: center;
}

.board-row--top .board-rank[b-s45ql0al3b] {
	color: var(--accent-ink);
	background: var(--accent);
	border-radius: var(--r-pill);
	padding: 2px 0;
}

.board-row--rank2 .board-rank[b-s45ql0al3b] {
	background: var(--surface-sunken);
	color: var(--ink-2);
}

.board-row--rank3 .board-rank[b-s45ql0al3b] {
	background: var(--primary-soft);
	color: var(--primary-strong);
}

.board-athlete[b-s45ql0al3b] {
	flex: 1;
	min-width: 0;
	display: grid;
	gap: 5px;
}

.board-name[b-s45ql0al3b] {
	font-weight: 700;
	color: var(--ink);
	font-size: 0.95rem;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.board-bar[b-s45ql0al3b] {
	height: 6px;
	border-radius: var(--r-pill);
	background: var(--surface-sunken);
	overflow: hidden;
}

.board-bar__fill[b-s45ql0al3b] {
	height: 100%;
	border-radius: var(--r-pill);
	background: linear-gradient(90deg, var(--primary), var(--glow));
}

.board-points[b-s45ql0al3b] {
	font-family: var(--font-display);
	font-stretch: var(--display-stretch);
	font-weight: 800;
	font-size: 1.05rem;
	color: var(--ink);
	white-space: nowrap;
}

	.board-points small[b-s45ql0al3b] {
		font-family: var(--font-body);
		font-weight: 600;
		font-size: 0.75rem;
		color: var(--ink-3);
	}

@media (max-width: 575px) {
	.board-search input[b-s45ql0al3b] {
		min-width: 0;
		width: 100%;
	}
}
/* /Pages/Login.razor.rz.scp.css */
.login[b-3ztgwc7yn3] {
	position: relative;
	min-height: 100vh;
	display: grid;
	place-items: center;
	padding: 24px;
	background: var(--hero-grad);
	overflow: hidden;
	color: var(--glow);
}

.login[b-3ztgwc7yn3]  .swell__wave {
	position: absolute;
	inset: 0 0 0 auto;
	height: 100%;
	width: min(70vw, 900px);
	opacity: 0.8;
}

.login__panel[b-3ztgwc7yn3] {
	position: relative;
	width: min(400px, 100%);
	background: var(--surface-card);
	border-radius: var(--r-card);
	padding: 36px 32px 24px;
	box-shadow: 0 24px 64px rgba(2, 20, 25, 0.5);
	text-align: center;
	color: var(--ink);
	animation: panel-rise-b-3ztgwc7yn3 0.5s cubic-bezier(0.16, 1, 0.3, 1) both;
}

@keyframes panel-rise-b-3ztgwc7yn3 {
	from {
		opacity: 0;
		transform: translateY(16px);
	}

	to {
		opacity: 1;
		transform: none;
	}
}

.login__logo[b-3ztgwc7yn3] {
	width: 150px;
	margin: 0 auto 8px;
	display: block;
}

.login__tagline[b-3ztgwc7yn3] {
	color: var(--ink-2);
	font-size: 0.9rem;
	margin-bottom: 24px;
}

.login__panel[b-3ztgwc7yn3]  form {
	display: grid;
	gap: 12px;
	text-align: left;
}

.login__panel[b-3ztgwc7yn3]  .login__submit {
	margin-top: 8px;
}

.login__forgot[b-3ztgwc7yn3] {
	justify-self: center;
	font-size: 0.85rem;
	color: var(--primary);
	text-decoration: none;
	padding: 4px;
}

	.login__forgot:hover[b-3ztgwc7yn3] {
		text-decoration: underline;
	}

.login__name-row[b-3ztgwc7yn3] {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}

.login__consent[b-3ztgwc7yn3] {
	display: grid;
	gap: 4px;
	text-align: left;
}

.login__consent-row[b-3ztgwc7yn3] {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	font-size: 0.85rem;
	cursor: pointer;
}

	.login__consent-row input[b-3ztgwc7yn3] {
		margin-top: 2px;
		accent-color: var(--primary);
	}

.login__consent-hint[b-3ztgwc7yn3] {
	font-size: 0.75rem;
	color: var(--ink-3);
	padding-left: 24px;
}

.login__error[b-3ztgwc7yn3] {
	background: color-mix(in srgb, #d64545 12%, transparent);
	border: 1px solid color-mix(in srgb, #d64545 40%, transparent);
	color: #d64545;
	border-radius: 8px;
	padding: 10px 12px;
	font-size: 0.85rem;
}

.login__switch[b-3ztgwc7yn3] {
	margin-top: 20px;
	font-size: 0.85rem;
	color: var(--ink-2);
}

.login__link[b-3ztgwc7yn3] {
	background: none;
	border: none;
	padding: 0;
	font: inherit;
	color: var(--primary);
	cursor: pointer;
}

	.login__link:hover[b-3ztgwc7yn3] {
		text-decoration: underline;
	}

.login__credit[b-3ztgwc7yn3] {
	margin-top: 24px;
	padding-top: 16px;
	border-top: 1px solid var(--hairline);
	font-size: 0.75rem;
	color: var(--ink-3);
}

	.login__credit strong[b-3ztgwc7yn3] {
		color: var(--ink-2);
		letter-spacing: 0.04em;
	}

@media (prefers-reduced-motion: reduce) {
	.login__panel[b-3ztgwc7yn3] {
		animation: none;
	}
}
/* /Pages/LogWorkout.razor.rz.scp.css */
.workout-hero[b-mxex9133t8] {
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
	align-items: center;
}

.workout-hero__text[b-mxex9133t8] {
	flex: 1 1 320px;
}

.workout-hero__description[b-mxex9133t8] {
	color: var(--hero-ink-2);
	margin-top: 12px;
	max-width: 480px;
}

.workout-hero__metrics[b-mxex9133t8] {
	flex: 0 1 auto;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.hero-metric[b-mxex9133t8] {
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: var(--r-card);
	padding: 14px 20px;
	min-width: 120px;
}

	.hero-metric span[b-mxex9133t8] {
		display: block;
		font-size: 0.72rem;
		text-transform: uppercase;
		letter-spacing: 0.08em;
		color: var(--hero-ink-2);
		margin-bottom: 4px;
	}

	.hero-metric strong[b-mxex9133t8] {
		font-family: var(--font-display);
		font-stretch: var(--display-stretch);
		font-size: 1.6rem;
		font-weight: 800;
		color: var(--glow);
	}

.workout-layout[b-mxex9133t8] {
	display: grid;
	grid-template-columns: minmax(0, 1.4fr) minmax(300px, 1fr);
	gap: 24px;
	align-items: start;
}

.save-state[b-mxex9133t8] {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 0.78rem;
	font-weight: 700;
	color: var(--ok);
	background: rgba(27, 138, 76, 0.1);
	border-radius: var(--r-pill);
	padding: 4px 12px;
	white-space: nowrap;
}

.save-state--busy[b-mxex9133t8] {
	color: var(--ink-3);
	background: var(--surface-sunken);
}

.day-flags[b-mxex9133t8] {
	display: flex;
	flex-wrap: wrap;
	gap: 2px;
	color: var(--primary);
}

.detail-section[b-mxex9133t8] {
	margin-bottom: 20px;
}

.detail-section__label[b-mxex9133t8] {
	font-size: 0.75rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-weight: 700;
	color: var(--ink-3);
	margin-bottom: 10px;
}

/* --- Activities --- */

.activity-chips[b-mxex9133t8] {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 10px;
}

.activity-chip[b-mxex9133t8] {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 7px 10px 7px 14px;
	border-radius: var(--r-pill);
	border: 1.5px solid var(--primary);
	background: var(--primary-soft);
	color: var(--primary-strong);
	font-size: 0.85rem;
	font-weight: 600;
}

.activity-chip__remove[b-mxex9133t8] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	padding: 0;
	border: none;
	border-radius: 50%;
	background: transparent;
	color: inherit;
	cursor: pointer;
}

	.activity-chip__remove:hover[b-mxex9133t8] {
		background: rgba(14, 138, 150, 0.18);
	}

	.activity-chip__remove:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
	}

/* --- Collapsible sections --- */

.log-section[b-mxex9133t8] {
	border-top: 1px solid var(--hairline);
	padding: 6px 0 14px;
	margin-bottom: 6px;
}

.section-toggle[b-mxex9133t8] {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	padding: 10px 0;
	border: none;
	background: none;
	cursor: pointer;
	font: inherit;
	text-align: left;
}

	.section-toggle:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
		border-radius: 8px;
	}

.section-toggle__title[b-mxex9133t8] {
	font-size: 0.75rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	font-weight: 700;
	color: var(--ink-3);
}

.section-toggle__meta[b-mxex9133t8] {
	margin-left: auto;
	font-size: 0.78rem;
	font-weight: 700;
	color: var(--primary-strong);
	background: var(--primary-soft);
	border-radius: var(--r-pill);
	padding: 3px 10px;
	white-space: nowrap;
}

.section-toggle__chevron[b-mxex9133t8] {
	display: inline-flex;
	color: var(--ink-3);
	transition: transform 0.15s ease;
}

.section-toggle__chevron--open[b-mxex9133t8] {
	transform: rotate(90deg);
}

.section-hint[b-mxex9133t8] {
	font-size: 0.82rem;
	color: var(--ink-2);
	margin: 2px 0 10px;
}

/* --- Scheduled workout: the coach's board --- */

.plan-schedule[b-mxex9133t8] {
	font-size: 0.82rem;
	font-weight: 700;
	color: var(--ink-2);
	margin: 0 0 10px;
}

.plan-group[b-mxex9133t8] {
	font-size: 0.78rem;
	font-weight: 700;
	color: var(--ink-3);
	margin: 4px 0 0;
}

.plan-list[b-mxex9133t8] {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-bottom: 4px;
}

/* A tile is one exercise: compact summary when closed, editor when open.
   Only one tile is open at a time. */
.tile[b-mxex9133t8] {
	border: 1px solid var(--hairline);
	border-radius: var(--r-ctl);
	background: var(--surface-sunken);
	transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
}

.tile--done[b-mxex9133t8] {
	border-color: var(--primary);
	background: var(--primary-soft);
}

.tile--open[b-mxex9133t8] {
	border-color: var(--primary);
	background: var(--surface-card);
	box-shadow: var(--shadow-card);
}

.tile__head[b-mxex9133t8] {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 12px 14px;
	cursor: pointer;
	border-radius: var(--r-ctl);
}

	.tile__head:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
	}

.tile__id[b-mxex9133t8] {
	flex: 1 1 auto;
	min-width: 0;
}

.tile__name[b-mxex9133t8] {
	display: block;
	font-weight: 700;
	color: var(--ink);
	font-size: 0.92rem;
}

.tile__summary[b-mxex9133t8] {
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
	margin-top: 5px;
}

.tile__hint[b-mxex9133t8] {
	font-size: 0.78rem;
	color: var(--ink-3);
}

.setchip[b-mxex9133t8] {
	font-size: 0.72rem;
	font-weight: 700;
	font-variant-numeric: tabular-nums;
	color: var(--ink-2);
	background: var(--surface-card);
	border: 1px solid var(--hairline);
	border-radius: var(--r-pill);
	padding: 1px 8px;
	white-space: nowrap;
}

.tile--done .setchip[b-mxex9133t8] {
	border-color: rgba(14, 138, 150, 0.35);
	color: var(--primary-strong);
}

.setchip--unit[b-mxex9133t8] {
	border: none;
	background: none;
	padding-left: 2px;
}

.tile__rx[b-mxex9133t8] {
	font-family: var(--font-display);
	font-stretch: var(--display-stretch);
	font-size: 1rem;
	font-weight: 800;
	color: var(--primary-strong);
	white-space: nowrap;
}

.tile__chevron[b-mxex9133t8] {
	display: inline-flex;
	color: var(--ink-3);
	transition: transform 0.15s ease;
}

.tile__chevron--open[b-mxex9133t8] {
	transform: rotate(90deg);
}

.tile__editor[b-mxex9133t8] {
	padding: 0 14px 14px 56px;
}

.tile__actions[b-mxex9133t8] {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 12px;
}

.tile__actions-spacer[b-mxex9133t8] {
	flex: 1 1 auto;
}

.tile__graph[b-mxex9133t8] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	padding: 0;
	border: 1px solid var(--hairline);
	border-radius: var(--r-ctl);
	background: var(--surface-card);
	color: var(--ink-2);
	cursor: pointer;
	transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

	.tile__graph:hover[b-mxex9133t8] {
		border-color: var(--primary);
		color: var(--primary-strong);
		background: var(--primary-soft);
	}

	.tile__graph:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
	}

.tile__save[b-mxex9133t8] {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	border: none;
	border-radius: var(--r-ctl);
	background: var(--primary);
	color: #fff;
	font: inherit;
	font-weight: 700;
	font-size: 0.8rem;
	padding: 8px 14px;
	cursor: pointer;
	transition: background 0.15s ease;
}

	.tile__save:hover[b-mxex9133t8] {
		background: var(--primary-strong);
	}

	.tile__save:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
	}

.tile__remove[b-mxex9133t8] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 4px;
	border: none;
	border-radius: 8px;
	background: transparent;
	color: var(--ink-3);
	cursor: pointer;
}

	.tile__remove:hover[b-mxex9133t8] {
		color: var(--danger);
		background: rgba(194, 54, 54, 0.08);
	}

	.tile__remove:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
	}

/* --- Notes (tile, goal, and session-wide) --- */

.tile__note-btn[b-mxex9133t8] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 4px;
	border: none;
	border-radius: 8px;
	background: transparent;
	color: var(--ink-3);
	cursor: pointer;
	transition: color 0.15s ease, background 0.15s ease;
}

	.tile__note-btn:hover[b-mxex9133t8] {
		color: var(--primary-strong);
		background: var(--primary-soft);
	}

	.tile__note-btn:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
	}

.tile__note-btn--on[b-mxex9133t8] {
	color: var(--primary-strong);
}

.note-input[b-mxex9133t8] {
	display: block;
	width: 100%;
	border: 1px solid var(--hairline);
	border-radius: var(--r-ctl);
	background: var(--surface-card);
	color: var(--ink);
	font: inherit;
	font-size: 0.85rem;
	padding: 8px 10px;
	resize: vertical;
}

	.note-input:focus-visible[b-mxex9133t8] {
		outline: none;
		border-color: var(--primary);
		box-shadow: var(--focus-ring);
	}

.note-input--session[b-mxex9133t8] {
	margin-top: 4px;
}

/* Aligned with the editor: clear of the ring on desktop, full width on phones. */
.tile__note[b-mxex9133t8] {
	padding: 0 14px 12px 56px;
}

.tile__note-text[b-mxex9133t8] {
	display: block;
	width: 100%;
	padding: 0 14px 12px 56px;
	border: none;
	background: none;
	text-align: left;
	font: inherit;
	font-size: 0.8rem;
	font-style: italic;
	color: var(--ink-2);
	cursor: pointer;
	white-space: pre-wrap;
}

	.tile__note-text:hover[b-mxex9133t8] {
		color: var(--ink);
	}

	.tile__note-text:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
		border-radius: 8px;
	}

.goal-entry__actions[b-mxex9133t8] {
	flex: none;
	display: inline-flex;
	align-items: center;
	gap: 4px;
}

.goal-entry__note[b-mxex9133t8] {
	margin-top: 10px;
}

.goal-entry__note-text[b-mxex9133t8] {
	display: block;
	width: 100%;
	margin-top: 10px;
	padding: 0;
	border: none;
	background: none;
	text-align: left;
	font: inherit;
	font-size: 0.8rem;
	font-style: italic;
	color: var(--ink-2);
	cursor: pointer;
	white-space: pre-wrap;
}

	.goal-entry__note-text:hover[b-mxex9133t8] {
		color: var(--ink);
	}

	.goal-entry__note-text:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
		border-radius: 8px;
	}

.plan-ring[b-mxex9133t8] {
	flex: none;
	width: 30px;
	height: 30px;
	margin-top: 1px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1.5px solid var(--hairline);
	border-radius: 50%;
	background: var(--surface-card);
	color: var(--ink-3);
	font-family: var(--font-display);
	font-stretch: var(--display-stretch);
	font-size: 0.85rem;
	font-weight: 800;
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease, color 0.15s ease;
}

	.plan-ring:hover[b-mxex9133t8] {
		border-color: var(--primary);
		color: var(--primary-strong);
	}

	.plan-ring:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
	}

.tile--done .plan-ring[b-mxex9133t8] {
	border-color: var(--primary);
	background: var(--primary);
	color: #fff;
}

/* --- Per-set lines within the open editor --- */

.set-line[b-mxex9133t8] {
	display: grid;
	grid-template-columns: 22px minmax(0, 1fr) minmax(0, 1.3fr) 24px;
	gap: 8px;
	align-items: center;
	margin-bottom: 6px;
}

.set-line--head[b-mxex9133t8] {
	margin-bottom: 2px;
	font-size: 0.68rem;
	text-transform: uppercase;
	letter-spacing: 0.07em;
	font-weight: 700;
	color: var(--ink-3);
}

.set-line__num[b-mxex9133t8] {
	font-family: var(--font-display);
	font-stretch: var(--display-stretch);
	font-size: 0.82rem;
	font-weight: 800;
	color: var(--ink-3);
	text-align: center;
}

.set-line[b-mxex9133t8]  .field {
	margin: 0;
}

.set-line[b-mxex9133t8]  .control {
	padding: 7px 10px;
	font-size: 0.88rem;
}

.set-line__remove[b-mxex9133t8] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	padding: 0;
	border: none;
	border-radius: 50%;
	background: transparent;
	color: var(--ink-3);
	cursor: pointer;
}

	.set-line__remove:hover[b-mxex9133t8] {
		color: var(--danger);
		background: rgba(194, 54, 54, 0.08);
	}

	.set-line__remove:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
	}

.set-add[b-mxex9133t8] {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 5px 10px;
	border: 1px dashed var(--hairline);
	border-radius: 8px;
	background: none;
	color: var(--primary-strong);
	font: inherit;
	font-size: 0.8rem;
	font-weight: 700;
	cursor: pointer;
}

	.set-add:hover[b-mxex9133t8] {
		border-color: var(--primary);
		background: var(--primary-soft);
	}

	.set-add:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
	}

/* --- Previous sessions (copy into extra work) --- */

.previous-list[b-mxex9133t8] {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.previous-item[b-mxex9133t8] {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	gap: 10px;
	align-items: center;
	width: 100%;
	padding: 10px 12px;
	border: 1px solid var(--hairline);
	border-radius: var(--r-ctl);
	background: var(--surface-sunken);
	font: inherit;
	text-align: left;
	cursor: pointer;
	transition: border-color 0.15s ease, background 0.15s ease;
}

	.previous-item:hover[b-mxex9133t8] {
		border-color: var(--primary);
		background: var(--primary-soft);
	}

	.previous-item:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
	}

.previous-item__date[b-mxex9133t8] {
	font-family: var(--font-display);
	font-stretch: var(--display-stretch);
	font-size: 0.85rem;
	font-weight: 800;
	color: var(--ink);
	white-space: nowrap;
}

.previous-item__summary[b-mxex9133t8] {
	font-size: 0.8rem;
	color: var(--ink-2);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.previous-item__copy[b-mxex9133t8] {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 0.78rem;
	font-weight: 700;
	color: var(--primary-strong);
	white-space: nowrap;
}

/* --- Extra work --- */

.extra-add__row[b-mxex9133t8] {
	display: flex;
	align-items: flex-end;
	gap: 8px;
	margin-top: 10px;
}

	.extra-add__row[b-mxex9133t8]  .field {
		flex: 1 1 auto;
		margin: 0;
	}

.extra-add__toggle[b-mxex9133t8] {
	display: block;
	margin-top: 8px;
	padding: 2px 0;
	border: none;
	background: none;
	color: var(--primary-strong);
	font: inherit;
	font-size: 0.8rem;
	font-weight: 600;
	cursor: pointer;
	text-decoration: underline;
	text-underline-offset: 3px;
}

	.extra-add__toggle:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
		border-radius: 4px;
	}

/* --- Goals --- */

.goal-list[b-mxex9133t8] {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin-bottom: 4px;
}

.goal-entry[b-mxex9133t8] {
	border: 1px solid var(--hairline);
	border-radius: var(--r-ctl);
	padding: 14px 16px;
	background: var(--surface-sunken);
}

.goal-entry__head[b-mxex9133t8] {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	margin-bottom: 10px;
}

.goal-entry__title[b-mxex9133t8] {
	font-weight: 700;
	color: var(--ink);
	font-size: 0.92rem;
}

.goal-entry__fields[b-mxex9133t8] {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
}

/* Milestone goals: one tick-it-off button, then a quiet achieved state. */

.milestone-toggle[b-mxex9133t8] {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	border: 1px solid var(--hairline);
	border-radius: var(--r-ctl);
	background: var(--surface-card);
	color: var(--ink-2);
	font: inherit;
	font-weight: 700;
	font-size: 0.85rem;
	padding: 8px 14px;
	cursor: pointer;
	transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease;
}

	.milestone-toggle:hover[b-mxex9133t8] {
		border-color: var(--primary);
		color: var(--primary-strong);
	}

	.milestone-toggle:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
	}

.milestone-toggle--on[b-mxex9133t8] {
	border-color: var(--primary);
	background: var(--primary);
	color: #fff;
}

	.milestone-toggle--on:hover[b-mxex9133t8] {
		background: var(--primary-strong);
		color: #fff;
	}

.goal-entry__achieved[b-mxex9133t8] {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--primary-strong);
	font-weight: 700;
	font-size: 0.85rem;
}

/* Frequency goals: one pip per session against the weekly target. */

.goal-entry__week[b-mxex9133t8] {
	display: flex;
	align-items: center;
	gap: 12px;
}

.week-pips[b-mxex9133t8] {
	display: inline-flex;
	gap: 6px;
}

.week-pip[b-mxex9133t8] {
	width: 12px;
	height: 12px;
	border-radius: 50%;
	border: 1px solid var(--hairline);
	background: var(--surface-card);
}

.week-pip--on[b-mxex9133t8] {
	background: var(--primary);
	border-color: var(--primary);
}

.goal-entry__week-label[b-mxex9133t8] {
	font-size: 0.85rem;
	color: var(--ink-2);
}

.goal-entry__hint[b-mxex9133t8] {
	font-size: 0.78rem;
	color: var(--ink-2);
	margin: 6px 0 0;
}

/* Frequency goals: check a session off the selected day; undo lives beside it. */

.goal-entry__day[b-mxex9133t8] {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 10px;
}

.goal-entry__undo[b-mxex9133t8] {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	border: none;
	background: none;
	color: var(--ink-2);
	font-size: 0.8rem;
	padding: 4px 2px;
	cursor: pointer;
}

	.goal-entry__undo:hover[b-mxex9133t8] {
		color: var(--primary-strong);
	}

	.goal-entry__undo:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
	}

/* --- Lift-progress modal --- */

.lift-modal__scrim[b-mxex9133t8] {
	position: fixed;
	inset: 0;
	background: rgba(5, 36, 44, 0.45);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
	z-index: 1000;
}

.lift-modal[b-mxex9133t8] {
	background: var(--surface-card);
	border-radius: var(--r-card);
	box-shadow: 0 24px 60px -18px rgba(5, 36, 44, 0.5);
	width: min(500px, 100%);
	max-height: 100%;
	overflow-y: auto;
	padding: 20px 22px 22px;
}

.lift-modal__head[b-mxex9133t8] {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 14px;
}

	.lift-modal__head > div:first-child[b-mxex9133t8] {
		flex: 1 1 auto;
	}

	.lift-modal__head h2[b-mxex9133t8] {
		margin: 0;
	}

.lift-modal__close[b-mxex9133t8] {
	flex: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	padding: 0;
	border: none;
	border-radius: 50%;
	background: var(--surface-sunken);
	color: var(--ink-2);
	cursor: pointer;
}

	.lift-modal__close:hover[b-mxex9133t8] {
		color: var(--ink);
		background: var(--hairline);
	}

	.lift-modal__close:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
	}

.lift-modal__loading[b-mxex9133t8] {
	text-align: center;
	color: var(--ink-3);
	font-size: 0.85rem;
	padding: 32px 0;
}

.lift-modal__stats[b-mxex9133t8] {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 14px;
}

.ministat[b-mxex9133t8] {
	flex: 1 1 120px;
	background: var(--surface-sunken);
	border-radius: var(--r-ctl);
	padding: 10px 12px;
}

	.ministat span:first-child[b-mxex9133t8] {
		display: block;
		font-size: 0.66rem;
		text-transform: uppercase;
		letter-spacing: 0.08em;
		font-weight: 700;
		color: var(--ink-3);
		margin-bottom: 2px;
	}

	.ministat strong[b-mxex9133t8] {
		font-family: var(--font-display);
		font-stretch: var(--display-stretch);
		font-weight: 800;
		font-size: 1.15rem;
		color: var(--ink);
	}

.ministat__delta[b-mxex9133t8] {
	font-size: 0.72rem;
	font-weight: 700;
	color: var(--ok);
	margin-left: 6px;
	white-space: nowrap;
}

/* Same look as the Progress page's metric tabs — scoped styles don't cross pages. */
.metric-tabs[b-mxex9133t8] {
	display: inline-flex;
	gap: 4px;
	background: var(--surface-sunken);
	border-radius: var(--r-pill);
	padding: 4px;
	margin-bottom: 12px;
}

.metric-tabs__tab[b-mxex9133t8] {
	border: none;
	border-radius: var(--r-pill);
	background: none;
	color: var(--ink-2);
	font: inherit;
	font-size: 0.78rem;
	font-weight: 700;
	padding: 6px 14px;
	cursor: pointer;
	white-space: nowrap;
	transition: background 0.15s ease, color 0.15s ease;
}

	.metric-tabs__tab:hover[b-mxex9133t8] {
		color: var(--ink);
	}

	.metric-tabs__tab:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
	}

.metric-tabs__tab--on[b-mxex9133t8] {
	background: var(--primary);
	color: #fff;
}

	.metric-tabs__tab--on:hover[b-mxex9133t8] {
		color: #fff;
	}

.lift-modal__meta[b-mxex9133t8] {
	font-size: 0.75rem;
	color: var(--ink-3);
	margin: 6px 0 0;
}

.lift-modal__foot[b-mxex9133t8] {
	display: flex;
	justify-content: flex-end;
	margin-top: 12px;
}

.lift-modal__link[b-mxex9133t8] {
	border: none;
	background: none;
	color: var(--primary-strong);
	font: inherit;
	font-size: 0.84rem;
	font-weight: 700;
	cursor: pointer;
	text-decoration: underline;
	text-underline-offset: 3px;
	padding: 2px 0;
}

	.lift-modal__link:focus-visible[b-mxex9133t8] {
		outline: none;
		box-shadow: var(--focus-ring);
		border-radius: 4px;
	}

@media (max-width: 991px) {
	.workout-layout[b-mxex9133t8] {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 480px) {
	.tile__editor[b-mxex9133t8] {
		padding-left: 14px;
	}

	.tile__note[b-mxex9133t8],
	.tile__note-text[b-mxex9133t8] {
		padding-left: 14px;
	}

	.goal-entry__fields[b-mxex9133t8] {
		grid-template-columns: 1fr;
	}

	.previous-item[b-mxex9133t8] {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.previous-item__copy[b-mxex9133t8] {
		grid-column: 2;
		justify-self: end;
	}
}
/* /Pages/Progress.razor.rz.scp.css */
.progress-hero[b-cuowwkzzwz] {
	display: flex;
	flex-wrap: wrap;
	gap: 32px;
	align-items: center;
}

.progress-hero__text[b-cuowwkzzwz] {
	flex: 1 1 320px;
}

.progress-hero__description[b-cuowwkzzwz] {
	color: var(--hero-ink-2);
	margin-top: 12px;
	max-width: 480px;
}

.progress-hero__metrics[b-cuowwkzzwz] {
	flex: 0 1 auto;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.hero-metric[b-cuowwkzzwz] {
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: var(--r-card);
	padding: 14px 20px;
	min-width: 120px;
}

	.hero-metric span[b-cuowwkzzwz] {
		display: block;
		font-size: 0.72rem;
		text-transform: uppercase;
		letter-spacing: 0.08em;
		color: var(--hero-ink-2);
		margin-bottom: 4px;
	}

	.hero-metric strong[b-cuowwkzzwz] {
		font-family: var(--font-display);
		font-stretch: var(--display-stretch);
		font-size: 1.6rem;
		font-weight: 800;
		color: var(--glow);
	}

/* --- Toolbar: lift select + metric tabs --- */

.progress-toolbar[b-cuowwkzzwz] {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
	margin-bottom: 16px;
}

	.progress-toolbar[b-cuowwkzzwz]  .field {
		flex: 0 1 260px;
		margin: 0;
	}

.metric-tabs[b-cuowwkzzwz] {
	display: inline-flex;
	gap: 4px;
	background: var(--surface-sunken);
	border-radius: var(--r-pill);
	padding: 4px;
	margin-left: auto;
}

.metric-tabs__tab[b-cuowwkzzwz] {
	border: none;
	border-radius: var(--r-pill);
	background: none;
	color: var(--ink-2);
	font: inherit;
	font-size: 0.78rem;
	font-weight: 700;
	padding: 6px 14px;
	cursor: pointer;
	white-space: nowrap;
	transition: background 0.15s ease, color 0.15s ease;
}

	.metric-tabs__tab:hover[b-cuowwkzzwz] {
		color: var(--ink);
	}

	.metric-tabs__tab:focus-visible[b-cuowwkzzwz] {
		outline: none;
		box-shadow: var(--focus-ring);
	}

.metric-tabs__tab--on[b-cuowwkzzwz] {
	background: var(--primary);
	color: #fff;
}

	.metric-tabs__tab--on:hover[b-cuowwkzzwz] {
		color: #fff;
	}

/* --- Stat tiles --- */

.stat-row[b-cuowwkzzwz] {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 10px;
	margin-bottom: 18px;
}

.stat[b-cuowwkzzwz] {
	background: var(--surface-sunken);
	border-radius: var(--r-ctl);
	padding: 12px 14px;
}

	.stat > span:first-child[b-cuowwkzzwz] {
		display: block;
		font-size: 0.66rem;
		text-transform: uppercase;
		letter-spacing: 0.08em;
		font-weight: 700;
		color: var(--ink-3);
		margin-bottom: 3px;
	}

	.stat strong[b-cuowwkzzwz] {
		font-family: var(--font-display);
		font-stretch: var(--display-stretch);
		font-weight: 800;
		font-size: 1.3rem;
		color: var(--ink);
	}

.stat__unit[b-cuowwkzzwz] {
	font-size: 0.78rem;
	font-weight: 700;
	color: var(--ink-2);
	margin-left: 3px;
}

.stat__delta[b-cuowwkzzwz] {
	display: inline-block;
	font-size: 0.72rem;
	font-weight: 700;
	color: var(--ok);
	margin-left: 7px;
	white-space: nowrap;
}

.chart-caption[b-cuowwkzzwz] {
	font-size: 0.75rem;
	color: var(--ink-3);
	margin: 8px 0 0;
}

/* --- Goal strip --- */

.goal-strip[b-cuowwkzzwz] {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 14px;
	background: var(--surface-sunken);
	border-radius: var(--r-ctl);
	padding: 12px 16px;
	margin-top: 18px;
}

.goal-strip__label[b-cuowwkzzwz] {
	font-size: 0.84rem;
	font-weight: 700;
	color: var(--ink);
}

	.goal-strip__label span[b-cuowwkzzwz] {
		color: var(--ink-3);
		font-weight: 600;
	}

.goal-strip__track[b-cuowwkzzwz] {
	flex: 1 1 160px;
	height: 8px;
	border-radius: var(--r-pill);
	background: var(--surface-card);
	overflow: hidden;
}

.goal-strip__fill[b-cuowwkzzwz] {
	height: 100%;
	border-radius: var(--r-pill);
	background: linear-gradient(90deg, var(--primary) 0%, var(--glow) 100%);
	transition: width 0.4s ease;
}

.goal-strip__pct[b-cuowwkzzwz] {
	font-family: var(--font-display);
	font-stretch: var(--display-stretch);
	font-weight: 800;
	font-size: 0.95rem;
	color: var(--primary-strong);
	white-space: nowrap;
}

/* --- Recent sessions table --- */

.sessions-table[b-cuowwkzzwz] {
	margin-top: 18px;
	overflow-x: auto;
}

	.sessions-table table[b-cuowwkzzwz] {
		width: 100%;
		min-width: 520px;
		border-collapse: collapse;
		font-size: 0.84rem;
	}

	.sessions-table th[b-cuowwkzzwz] {
		text-align: left;
		font-size: 0.66rem;
		text-transform: uppercase;
		letter-spacing: 0.08em;
		font-weight: 700;
		color: var(--ink-3);
		padding: 6px 10px;
		border-bottom: 1px solid var(--hairline);
	}

	.sessions-table td[b-cuowwkzzwz] {
		padding: 9px 10px;
		border-bottom: 1px solid var(--surface-sunken);
		color: var(--ink-2);
		font-variant-numeric: tabular-nums;
	}

	.sessions-table td:first-child[b-cuowwkzzwz] {
		font-weight: 700;
		color: var(--ink);
		white-space: nowrap;
	}

.sessions-table__num[b-cuowwkzzwz] {
	font-weight: 700;
	color: var(--ink);
	white-space: nowrap;
}

.sessions-table__sets[b-cuowwkzzwz] {
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: 260px;
	white-space: nowrap;
}

.pr-tag[b-cuowwkzzwz] {
	font-size: 0.62rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	background: var(--accent);
	color: var(--accent-ink);
	border-radius: var(--r-pill);
	padding: 2px 7px;
	margin-left: 7px;
	white-space: nowrap;
}

@media (max-width: 640px) {
	.metric-tabs[b-cuowwkzzwz] {
		margin-left: 0;
	}
}
/* /Pages/Settings.razor.rz.scp.css */
.settings-hero__description[b-ngzgxvh0gf] {
	max-width: 48ch;
}

.settings-card[b-ngzgxvh0gf] {
	max-width: 560px;
}

.settings-form[b-ngzgxvh0gf] {
	display: grid;
	gap: 14px;
	text-align: left;
}

.settings-form__row[b-ngzgxvh0gf] {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}

.settings-email[b-ngzgxvh0gf] {
	color: var(--ink-2);
	font-size: 0.95rem;
}

.settings-hint[b-ngzgxvh0gf] {
	font-size: 0.8rem;
	color: var(--ink-3);
}

.settings-consent[b-ngzgxvh0gf] {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	font-size: 0.9rem;
	cursor: pointer;
}

	.settings-consent input[b-ngzgxvh0gf] {
		margin-top: 3px;
		accent-color: var(--primary);
	}

.settings-actions[b-ngzgxvh0gf] {
	display: flex;
	align-items: center;
	gap: 14px;
}

.settings-error[b-ngzgxvh0gf] {
	color: #d64545;
	font-size: 0.85rem;
}

.settings-saved[b-ngzgxvh0gf] {
	color: var(--primary);
	font-size: 0.85rem;
}

@media (max-width: 560px) {
	.settings-form__row[b-ngzgxvh0gf] {
		grid-template-columns: 1fr;
	}
}
