/* Public primitives never depend on the in-game token palette. */
:root {
	--kor-crumbs-spacing: 14px;
	--kor-crumbs-size: 13px;
	--kor-crumbs-separator-gap: 6px;
	--kor-crumbs-separator-opacity: .6;
	--kor-crumbs-weight: 600;
	--kor-empty-history-margin: 28px;
	--kor-empty-history-text: #665b4c;
	--kor-loading-size: .8rem;
	--kor-loading-stroke: 2px;
	--kor-loading-gap: .4rem;
	--kor-loading-duration: .8s;
	--kor-loading-radius: 50%;
	--kor-badge-border: rgba(174,138,73,.4);
	--kor-badge-warning-border: rgba(218,103,85,.7);
	--kor-badge-warning-text: #f3a18e;
	--kor-badge-line: 1px;
	--kor-badge-radius: 999px;
	--kor-badge-padding: .05rem .35rem;
	--kor-badge-size: .76rem;
	--kor-badge-gap: .3rem;
}
.kor-crumbs {
	margin-bottom: var(--kor-crumbs-spacing);
	color: var(--kor-muted);
	font-size: var(--kor-crumbs-size);
	overflow-wrap: anywhere;
}
.kor-crumbs [aria-hidden="true"] {
	margin: 0 var(--kor-crumbs-separator-gap);
	opacity: var(--kor-crumbs-separator-opacity);
}
.kor-crumbs [aria-current="page"] { color: var(--kor-text); font-weight: var(--kor-crumbs-weight); }
.kor-empty--history {
	margin: var(--kor-empty-history-margin) 0;
	padding: 0;
	border: 0;
	background: none;
	color: var(--kor-empty-history-text);
	font-style: italic;
	text-align: center;
}
.kor-loading { display: inline-flex; align-items: center; gap: var(--kor-loading-gap); }
.kor-loading--spinner::before {
	content: '';
	width: var(--kor-loading-size);
	height: var(--kor-loading-size);
	border: var(--kor-loading-stroke) solid currentColor;
	border-right-color: transparent;
	border-radius: var(--kor-loading-radius);
	animation: kor-loading-spin var(--kor-loading-duration) linear infinite;
}
@keyframes kor-loading-spin { to { transform: rotate(1turn); } }
@media (prefers-reduced-motion: reduce) {
	.kor-loading--spinner::before { animation: none; }
}
.kor-badge {
	display: inline-block;
	border: var(--kor-badge-line) solid var(--kor-badge-border);
	border-radius: var(--kor-badge-radius);
	padding: var(--kor-badge-padding);
	font-size: var(--kor-badge-size);
	margin-left: var(--kor-badge-gap);
}
.kor-badge--tone-warn {
	border-color: var(--kor-badge-warning-border);
	color: var(--kor-badge-warning-text);
}
