/* SENSE LIST (intro) */
.sense-list { margin-bottom: 1.5rem; display: flex; flex-direction: column; gap: 0.25rem; }
.sense-row {
	background: var(--surface-card);
	border-radius: var(--radius-lg);
	padding: 1rem 1.5rem;
	display: flex; align-items: center; gap: 1rem;
}
.sense-num {
	width: 2.5rem; height: 2.5rem; border-radius: 50%;
	background: var(--accent-subtle);
	display: flex; align-items: center; justify-content: center;
	font-family: 'Nunito', sans-serif;
	font-size: 1.125rem; font-weight: 900; color: var(--accent);
	flex-shrink: 0;
}
.sense-row-title { font-size: 1.0625rem; font-weight: 600; color: var(--text-primary); }
.sense-row-sub { font-size: 0.9375rem; color: var(--text-tertiary); margin-top: 0.125rem; }

/* STEP SCREEN */
.sense-tag {
	font-size: 0.75rem; font-weight: 600;
	letter-spacing: 0.14em; text-transform: uppercase;
	color: var(--accent); margin-bottom: 0.5rem;
}
.count-big {
	font-family: 'Nunito', sans-serif;
	font-size: 5.5rem; font-weight: 900; color: var(--text-primary);
	line-height: 0.85; letter-spacing: -0.04em; margin-bottom: 0.5rem;
}
.count-sub {
	font-size: 0.9375rem; color: var(--text-tertiary); margin-bottom: 1.5rem;
}

/* TAP DOTS */
.tap-prompt {
	font-size: 0.9375rem; color: var(--text-tertiary);
	margin-bottom: 1rem; font-weight: 500;
}
.tap-dots {
	display: flex; justify-content: center;
	gap: 0.75rem; margin-bottom: 1rem; flex-wrap: wrap;
}
.tap-dot {
	width: 4rem; height: 4rem; border-radius: 50%;
	background: var(--surface-card);
	border: 0.09375rem solid var(--border-default);
	cursor: pointer;
	display: flex; align-items: center; justify-content: center;
	font-family: 'Nunito', sans-serif;
	font-size: var(--body_m); font-weight: 900; color: var(--text-primary);
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.15s ease;
	-webkit-tap-highlight-color: transparent;
	user-select: none; -webkit-user-select: none;
}
.tap-dot:active { transform: scale(0.92); }
.tap-dot.tapped {
	background: var(--accent);
	border-color: var(--accent);
	color: var(--text-on-dark);
}
.tap-progress {
	font-family: 'Nunito', sans-serif;
	font-size: 1.0625rem; font-weight: 900;
	color: var(--accent); text-align: center;
	min-height: 1.5rem; margin-bottom: 0.5rem;
	letter-spacing: -0.02em;
}

/* RESULT */
.result-icon { font-size: 3.5rem; text-align: center; margin-bottom: 1rem; }
.result-title {
	font-family: 'Nunito', sans-serif;
	font-size: 2.5rem; font-weight: 900; color: var(--text-primary);
	text-align: center; margin-bottom: 0.75rem; letter-spacing: -0.03em; line-height: 0.9;
}

.insight {
	background: var(--accent-subtle);
	border-radius: var(--radius-lg);
	padding: 1.5rem; margin-bottom: 1.25rem;
}
.insight-lbl {
	font-size: 0.75rem; font-weight: 600;
	letter-spacing: 0.14em; text-transform: uppercase;
	color: var(--accent); margin-bottom: 0.625rem;
}
.insight-txt { font-size: 1.0625rem; color: var(--text-secondary); line-height: 1.5; font-weight: 500; }
.insight-txt strong { color: var(--text-primary); font-weight: 700; }
