/* Voice logging landing page (/my-spotting/voice/).
   Scoped extras only — layout, colour and buttons come from rail.css. */

.spot-voice .transcript {
	display: grid;
	gap: var(--gap-sm, 10px);
	padding: var(--gap-lg, 24px);
	background: var(--surface, oklch(17.5% 0.014 275));
	border: 1px solid var(--border, oklch(28% 0.016 275));
	border-radius: var(--radius-lg, 18px);
	align-self: start;
}

.spot-voice .transcript-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--gap-sm, 10px);
	margin-bottom: var(--gap-sm, 10px);
}

.spot-voice .turn {
	display: grid;
	gap: 4px;
	padding: var(--gap-sm, 10px) var(--gap-md, 16px);
	border-radius: var(--radius-md, 14px);
	background: color-mix(in oklch, var(--fg, oklch(97% 0.006 275)) 5%, transparent);
}

.spot-voice .turn.is-agent {
	background: color-mix(in oklch, var(--accent, oklch(74% 0.17 55)) 12%, transparent);
	border: 1px solid color-mix(in oklch, var(--accent, oklch(74% 0.17 55)) 28%, transparent);
}

.spot-voice .turn .who {
	font-family: var(--font-mono, ui-monospace, monospace);
	font-size: 11px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--muted, oklch(72% 0.016 275));
}

.spot-voice .turn.is-agent .who {
	color: var(--accent, oklch(74% 0.17 55));
}

.spot-voice .turn p {
	margin: 0;
	line-height: 1.5;
}

.spot-voice .flow {
	display: grid;
	gap: var(--gap-md, 16px);
	margin: var(--gap-lg, 24px) 0 0;
	padding: 0;
	list-style: none;
}

.spot-voice .flow li {
	position: relative;
	padding-left: var(--gap-lg, 24px);
	line-height: 1.55;
	color: var(--fg-soft, var(--muted, oklch(72% 0.016 275)));
}

.spot-voice .flow li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.55em;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--accent, oklch(74% 0.17 55));
}

.spot-voice .flow li b {
	color: var(--fg, oklch(97% 0.006 275));
	font-weight: 600;
}

.spot-voice .callout {
	padding: var(--gap-lg, 24px);
	background: color-mix(in oklch, var(--accent, oklch(74% 0.17 55)) 8%, var(--surface, oklch(17.5% 0.014 275)));
	border: 1px solid color-mix(in oklch, var(--accent, oklch(74% 0.17 55)) 26%, transparent);
	border-left-width: 4px;
	border-radius: var(--radius-md, 14px);
}

.spot-voice .callout h3 {
	margin: 0 0 var(--gap-sm, 10px);
}

.spot-voice .callout p {
	margin: 0;
	max-width: 68ch;
	color: var(--fg-soft, var(--muted, oklch(72% 0.016 275)));
	line-height: 1.6;
}

.spot-voice .card-rule {
	padding-top: var(--gap-md, 16px);
	border-top: 2px solid color-mix(in oklch, var(--accent, oklch(74% 0.17 55)) 40%, transparent);
}

.spot-voice .card-rule h3 {
	margin: 0;
}

.spot-voice pre {
	font-family: var(--font-mono, ui-monospace, monospace);
	background: color-mix(in oklch, var(--fg, oklch(97% 0.006 275)) 5%, transparent);
	padding: var(--gap-sm, 10px) var(--gap-md, 16px);
	border-radius: var(--radius-sm, 10px);
}

.spot-voice .log-row {
	align-items: flex-start;
}

@media (max-width: 640px) {
	.spot-voice .transcript {
		padding: var(--gap-md, 16px);
	}
}
