.vespera-credits {
	--ledger-surface: var(--tblr-bg-surface);
	--ledger-soft: color-mix(in srgb, var(--tblr-bg-surface) 94%, var(--tblr-body-color) 6%);
	--ledger-line: color-mix(in srgb, var(--tblr-border-color) 76%, transparent 24%);
	--ledger-muted: var(--tblr-secondary-color);
	--ledger-mint: #4eb992;
	--ledger-cyan: #54a8c4;
	--ledger-amber: #d7a856;
	--ledger-red: #d16f72;
	min-height: 72vh;
	padding: 3.6rem 0 6rem;
	background:
		linear-gradient(90deg, transparent 0 calc(50% - 1px), color-mix(in srgb, var(--ledger-line) 25%, transparent 75%) 50%, transparent calc(50% + 1px)),
		var(--tblr-body-bg);
}

[data-bs-theme="dark"] .vespera-credits {
	background: transparent !important;
}

.vespera-credits a { text-decoration: none; }

.vespera-ledger-hero {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(240px, 320px);
	gap: 3rem;
	align-items: end;
	padding: 2.25rem 0 2rem;
	border-bottom: 1px solid var(--ledger-line);
}

.vespera-ledger-hero__copy { max-width: 730px; }

.vespera-ledger-kicker {
	display: inline-flex;
	align-items: center;
	gap: .55rem;
	margin-bottom: 1rem;
	color: var(--ledger-cyan);
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: .62rem;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.vespera-ledger-kicker i { font-size: .95rem; }

.vespera-ledger-hero h1 {
	max-width: 760px;
	margin: 0;
	font-size: clamp(2.8rem, 6vw, 5.6rem);
	font-weight: 800;
	letter-spacing: -.07em;
	line-height: .91;
}

.vespera-ledger-hero__copy > p {
	max-width: 590px;
	margin: 1.15rem 0 0;
	color: var(--ledger-muted);
	font-size: .87rem;
	line-height: 1.72;
}

.vespera-ledger-balance {
	position: relative;
	display: grid;
	gap: .35rem;
	padding: 1.4rem 0 1.15rem 1.4rem;
	border-left: 2px solid var(--ledger-mint);
}

.vespera-ledger-balance::before {
	content: "";
	position: absolute;
	left: -5px;
	top: 0;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--ledger-mint);
}

.vespera-ledger-balance > span,
.vespera-ledger-panel-head span,
.vespera-ledger-catalog-head span,
.vespera-ledger-product-detail__media > span {
	color: var(--ledger-muted);
	font-size: .57rem;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.vespera-ledger-balance strong {
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: clamp(1.8rem, 4vw, 3rem);
	font-weight: 500;
	letter-spacing: -.06em;
}

.vespera-ledger-balance small {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
	color: var(--ledger-mint);
	font-size: .6rem;
	font-weight: 650;
}

.vespera-ledger-balance small i {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: currentColor;
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--ledger-mint) 13%, transparent 87%);
}

.vespera-ledger-nav {
	display: flex;
	gap: .2rem;
	margin-bottom: 1.4rem;
	padding: .55rem 0;
	border-bottom: 1px solid var(--ledger-line);
}

.vespera-ledger-nav a {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: .5rem;
	padding: .75rem .95rem;
	color: var(--ledger-muted);
	font-size: .66rem;
	font-weight: 700;
	letter-spacing: .02em;
}

.vespera-ledger-nav a::after {
	content: "";
	position: absolute;
	left: .95rem;
	right: .95rem;
	bottom: -.6rem;
	height: 2px;
	transform: scaleX(0);
	background: var(--vespera-primary);
	transition: transform .18s ease;
}

.vespera-ledger-nav a:hover,
.vespera-ledger-nav a.is-active { color: var(--tblr-body-color); }
.vespera-ledger-nav a.is-active::after { transform: scaleX(1); }

.vespera-ledger-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 340px;
	gap: 1rem;
	align-items: start;
}

.vespera-ledger-panel,
.vespera-ledger-activity,
.vespera-ledger-order {
	min-width: 0;
	border: 1px solid var(--ledger-line);
	border-radius: 10px;
	background: var(--ledger-surface);
}

.vespera-ledger-activity,
.vespera-ledger-order { position: sticky; top: 1.25rem; }

.vespera-ledger-panel-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	min-height: 74px;
	padding: 1rem 1.15rem;
	border-bottom: 1px solid var(--ledger-line);
}

.vespera-ledger-panel-head h2,
.vespera-ledger-catalog-head h2 {
	margin: .2rem 0 0;
	font-size: .95rem;
	font-weight: 750;
	letter-spacing: -.025em;
}

.vespera-ledger-panel-head > i {
	color: var(--ledger-cyan);
	font-size: 1.25rem;
}

.vespera-ledger-panel-head a {
	display: inline-flex;
	align-items: center;
	gap: .35rem;
	color: var(--tblr-body-color);
	font-size: .58rem;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.vespera-ledger-notices {
	display: grid;
	gap: .5rem;
	padding: 1rem 1.1rem 0;
}

.vespera-ledger-notices .alert { margin: 0; }

.vespera-ledger-form { padding: 1.25rem; }

.vespera-ledger-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

.vespera-ledger-field { margin-bottom: 1rem; }

.vespera-ledger-field label {
	display: block;
	margin-bottom: .45rem;
	font-size: .67rem;
	font-weight: 700;
}

.vespera-ledger-field > div {
	display: grid;
	grid-template-columns: 42px minmax(0, 1fr);
	align-items: center;
	min-height: 52px;
	border-radius: 7px;
	background: var(--ledger-soft);
	transition: background .18s ease, box-shadow .18s ease, transform .18s ease;
}

.vespera-ledger-field > div:focus-within {
	background: var(--ledger-surface);
	box-shadow: 0 13px 32px rgba(0, 0, 0, .11), inset 3px 0 0 var(--vespera-primary);
	transform: translateY(-1px);
}

.vespera-ledger-field > div > i {
	color: var(--ledger-muted);
	font-size: 1rem;
	text-align: center;
}

.vespera-ledger-field input,
.vespera-ledger-field select {
	width: 100%;
	min-height: 52px;
	padding: .72rem .85rem;
	border: 0 !important;
	border-radius: 7px;
	outline: 0 !important;
	color: var(--tblr-body-color);
	background: var(--ledger-soft);
	box-shadow: none !important;
}

.vespera-ledger-field > div input {
	padding-left: 0;
	background: transparent;
}

.vespera-ledger-field select:focus {
	background: var(--ledger-surface);
	box-shadow: 0 13px 32px rgba(0, 0, 0, .11), inset 3px 0 0 var(--vespera-primary) !important;
}

.vespera-ledger-field > .vespera-ledger-select {
	position: relative;
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr) 38px;
	min-height: 56px;
	overflow: visible;
	border-radius: 10px;
	background: color-mix(in srgb, var(--ledger-soft) 88%, var(--ledger-cyan) 12%);
	box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--ledger-line) 55%, transparent 45%);
}

.vespera-ledger-field > .vespera-ledger-select::before {
	content: "";
	position: absolute;
	left: 43px;
	top: 13px;
	bottom: 13px;
	width: 1px;
	background: var(--ledger-line);
}

.vespera-ledger-field > .vespera-ledger-select:focus-within {
	background: var(--ledger-surface);
	box-shadow: 0 15px 34px rgba(0, 0, 0, .12), inset 0 0 0 1px color-mix(in srgb, var(--vespera-primary) 60%, transparent 40%);
	transform: translateY(-1px);
}

.vespera-ledger-select > i {
	position: relative;
	z-index: 2;
	grid-column: 1;
	grid-row: 1;
	color: var(--ledger-cyan) !important;
	font-size: 1.05rem !important;
}

.vespera-ledger-select select {
	position: relative;
	z-index: 1;
	grid-column: 2;
	grid-row: 1;
	min-height: 56px;
	padding: .75rem .7rem .75rem .9rem;
	border: 0 !important;
	border-radius: 0;
	outline: 0;
	appearance: none;
	-webkit-appearance: none;
	color: var(--tblr-body-color);
	font-size: .69rem;
	font-weight: 650;
	background: transparent !important;
	box-shadow: none !important;
	cursor: pointer;
}

.vespera-ledger-select__arrow {
	position: relative;
	z-index: 3;
	display: grid;
	grid-column: 3;
	grid-row: 1;
	place-items: center;
	pointer-events: none;
}

.vespera-ledger-select__arrow i {
	display: grid;
	place-items: center;
	width: 25px;
	height: 25px;
	border-radius: 6px;
	color: var(--ledger-muted);
	font-size: .8rem;
	background: color-mix(in srgb, var(--ledger-surface) 70%, transparent 30%);
	transition: color .18s ease, background .18s ease, transform .18s ease;
}

.vespera-ledger-select:focus-within .vespera-ledger-select__arrow i {
	color: var(--vespera-primary);
	background: rgba(var(--vespera-primary-rgb), .1);
	transform: rotate(180deg);
}

.vespera-ledger-field small {
	display: block;
	margin-top: .45rem;
	color: var(--ledger-muted);
	font-size: .58rem;
}

.vespera-credits .select2-container--bootstrap4 .select2-selection,
.vespera-credits .select2-container--default .select2-selection--single {
	min-height: 56px;
	border: 0 !important;
	border-radius: 0;
	background: transparent;
	box-shadow: none !important;
}

.vespera-ledger-select .select2-container {
	position: relative;
	z-index: 2;
	grid-column: 2;
	grid-row: 1;
	width: 100% !important;
}

.vespera-credits .select2-container--bootstrap4.select2-container--focus .select2-selection,
.vespera-credits .select2-container--default.select2-container--focus .select2-selection--single {
	box-shadow: none !important;
}

.vespera-credits .select2-container--bootstrap4 .select2-selection--single .select2-selection__rendered,
.vespera-credits .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 56px;
	padding: 0 .7rem 0 .9rem;
	color: var(--tblr-body-color);
	font-size: .69rem;
	font-weight: 650;
}

.vespera-ledger-select .select2-selection__arrow { display: none !important; }

.select2-dropdown {
	overflow: hidden;
	margin-top: 7px;
	border: 1px solid var(--tblr-border-color) !important;
	border-radius: 10px !important;
	background: var(--tblr-bg-surface) !important;
	box-shadow: 0 20px 45px rgba(0, 0, 0, .16);
}

.select2-results__options { padding: .38rem; }

.select2-search--dropdown { padding: .5rem; }

.select2-search--dropdown .select2-search__field {
	min-height: 40px;
	padding: .55rem .7rem;
	border: 0 !important;
	border-radius: 7px;
	outline: 0;
	color: var(--tblr-body-color);
	background: color-mix(in srgb, var(--tblr-bg-surface) 93%, var(--tblr-body-color) 7%);
	box-shadow: none !important;
}

.select2-search--dropdown .select2-search__field:focus {
	box-shadow: inset 3px 0 0 var(--vespera-primary) !important;
}

.select2-results__option {
	margin: 2px 0;
	padding: .7rem .75rem !important;
	border-radius: 7px;
	color: var(--tblr-body-color);
	font-size: .68rem;
	font-weight: 600;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--bootstrap4 .select2-results__option--highlighted,
.select2-container--bootstrap4 .select2-results__option--highlighted.select2-results__option[aria-selected="true"] {
	color: var(--tblr-body-color) !important;
	background: color-mix(in srgb, var(--vespera-primary) 12%, var(--tblr-bg-surface) 88%) !important;
}

.select2-container--default .select2-results__option[aria-selected="true"],
.select2-container--bootstrap4 .select2-results__option[aria-selected="true"] {
	color: var(--vespera-primary-bright);
	background: color-mix(in srgb, var(--tblr-bg-surface) 94%, var(--tblr-body-color) 6%);
}

.vespera-ledger-check {
	display: flex;
	align-items: flex-start;
	gap: .65rem;
	margin: .3rem 0 1rem;
	cursor: pointer;
}

.vespera-ledger-check input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.vespera-ledger-check > span {
	display: grid;
	place-items: center;
	width: 20px;
	height: 20px;
	flex: 0 0 20px;
	border-radius: 5px;
	color: transparent;
	background: var(--ledger-soft);
	transition: background .18s ease, color .18s ease, box-shadow .18s ease;
}

.vespera-ledger-check input:checked + span {
	color: white;
	background: var(--vespera-primary);
}

.vespera-ledger-check input:focus-visible + span { box-shadow: 0 0 0 4px rgba(var(--vespera-primary-rgb), .15); }

.vespera-ledger-check em {
	color: var(--ledger-muted);
	font-size: .62rem;
	font-style: normal;
	line-height: 1.55;
}

.vespera-ledger-check em a { color: var(--tblr-body-color); font-weight: 700; }

.vespera-ledger-form__footer {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: 1rem;
	margin-top: 1.25rem;
	padding-top: 1rem;
	border-top: 1px solid var(--ledger-line);
}

.vespera-ledger-security-note,
.vespera-ledger-order__safe {
	display: inline-flex;
	align-items: center;
	gap: .4rem;
	color: var(--ledger-muted);
	font-size: .59rem;
}

.vespera-ledger-security-note {
	justify-self: start;
	min-height: 34px;
	padding: .5rem .7rem;
	border-radius: 6px;
	line-height: 1.35;
	background: var(--ledger-soft);
}

.vespera-ledger-security-note > span {
	display: block;
	padding: 0;
	background: transparent !important;
}

.vespera-ledger-security-note i,
.vespera-ledger-order__safe i { color: var(--ledger-mint); }

.vespera-credits .btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .45rem;
	min-height: 42px;
	padding: .7rem 1rem;
	border-radius: 6px;
	font-size: .66rem;
	font-weight: 700;
	box-shadow: none;
}

.vespera-ledger-activity__list { display: grid; }

.vespera-ledger-entry {
	display: grid;
	grid-template-columns: 34px minmax(0, 1fr) auto;
	gap: .7rem;
	align-items: center;
	min-height: 68px;
	padding: .8rem 1rem;
}

.vespera-ledger-entry + .vespera-ledger-entry { border-top: 1px solid var(--ledger-line); }

.vespera-ledger-entry__icon {
	display: grid;
	place-items: center;
	width: 34px;
	height: 34px;
	border-radius: 7px;
	color: var(--ledger-mint);
	background: color-mix(in srgb, var(--ledger-mint) 10%, var(--ledger-soft) 90%);
}

.vespera-ledger-entry.is-outgoing .vespera-ledger-entry__icon {
	color: var(--ledger-red);
	background: color-mix(in srgb, var(--ledger-red) 10%, var(--ledger-soft) 90%);
}

.vespera-ledger-entry__copy {
	display: grid;
	gap: .12rem;
	min-width: 0;
}

.vespera-ledger-entry__copy strong,
.vespera-ledger-entry__copy span {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.vespera-ledger-entry__copy strong { font-size: .66rem; font-weight: 700; }
.vespera-ledger-entry__copy span { color: var(--ledger-muted); font-size: .56rem; }

.vespera-ledger-entry > b {
	color: var(--ledger-mint);
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: .68rem;
	font-weight: 600;
}

.vespera-ledger-entry.is-outgoing > b { color: var(--ledger-red); }

.vespera-ledger-empty {
	display: grid;
	place-items: center;
	min-height: 180px;
	padding: 1.25rem;
}

.vespera-ledger-empty > i { margin-bottom: .6rem; color: var(--ledger-muted); font-size: 1.7rem; }
.vespera-ledger-empty .alert { width: 100%; margin: 0; }

.vespera-ledger-gate {
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
	min-height: 420px;
	padding: 2rem;
	text-align: center;
}

.vespera-ledger-gate > i { color: var(--ledger-amber); font-size: 2.4rem; }
.vespera-ledger-gate h2 { margin: .8rem 0 1rem; font-size: 1.3rem; }
.vespera-ledger-gate .alert { width: min(100%, 520px); }

.vespera-ledger-transfer-line {
	display: grid;
	grid-template-columns: 42px minmax(40px, 1fr) 42px;
	align-items: center;
	max-width: 330px;
	margin: 0 0 1.25rem;
}

.vespera-ledger-transfer-line span {
	display: grid;
	place-items: center;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	color: var(--ledger-cyan);
	background: color-mix(in srgb, var(--ledger-cyan) 10%, var(--ledger-soft) 90%);
}

.vespera-ledger-transfer-line span:last-child { color: var(--ledger-mint); background: color-mix(in srgb, var(--ledger-mint) 10%, var(--ledger-soft) 90%); }
.vespera-ledger-transfer-line b { height: 1px; background: linear-gradient(90deg, var(--ledger-cyan), var(--ledger-mint)); }

.vespera-ledger-review {
	display: flex;
	gap: .7rem;
	margin-top: .3rem;
	padding: .85rem;
	border-radius: 7px;
	background: var(--ledger-soft);
}

.vespera-ledger-review > i { color: var(--ledger-cyan); font-size: 1rem; }
.vespera-ledger-review > div { display: grid; gap: .15rem; }
.vespera-ledger-review strong { font-size: .65rem; }
.vespera-ledger-review span { color: var(--ledger-muted); font-size: .59rem; line-height: 1.5; }

.vespera-ledger-catalog-head {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 1rem;
	margin: 2.4rem 0 1rem;
}

.vespera-ledger-catalog-head > strong {
	color: var(--ledger-muted);
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: .62rem;
	font-weight: 600;
}

.vespera-ledger-products {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
}

.vespera-ledger-product {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	border: 1px solid var(--ledger-line);
	border-radius: 9px;
	background: var(--ledger-surface);
	transition: transform .2s ease, box-shadow .2s ease;
}

.vespera-ledger-product:hover {
	transform: translateY(-4px);
	box-shadow: 0 18px 42px rgba(0, 0, 0, .1);
}

.vespera-ledger-product.is-sold { opacity: .62; }

.vespera-ledger-product__serial {
	padding: .62rem .8rem;
	border-bottom: 1px solid var(--ledger-line);
	color: var(--ledger-muted);
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: .53rem;
	letter-spacing: .1em;
}

.vespera-ledger-product__media {
	position: relative;
	display: grid;
	place-items: center;
	min-height: 190px;
	padding: 1.25rem;
	background:
		linear-gradient(135deg, transparent 49.5%, color-mix(in srgb, var(--ledger-line) 38%, transparent 62%) 50%, transparent 50.5%),
		var(--ledger-soft);
}

.vespera-ledger-product__media img {
	width: min(100%, 170px);
	height: 150px;
	object-fit: contain;
	filter: drop-shadow(0 14px 18px rgba(0, 0, 0, .17));
}

.vespera-ledger-product__discount {
	position: absolute;
	right: .8rem;
	top: .8rem;
	padding: .35rem .45rem;
	border-radius: 4px;
	color: #15120c;
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: .6rem;
	font-weight: 800;
	background: var(--ledger-amber);
}

.vespera-ledger-product__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 1rem;
}

.vespera-ledger-product__status span {
	display: inline-flex;
	align-items: center;
	gap: .4rem;
	color: var(--ledger-muted);
	font-size: .54rem;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}

.vespera-ledger-product__status i {
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: var(--ledger-mint);
}

.vespera-ledger-product__status .is-bonus { color: var(--ledger-mint); }
.vespera-ledger-product__status .is-limited { color: var(--ledger-amber); }
.vespera-ledger-product__status .is-limited i { background: var(--ledger-amber); }
.vespera-ledger-product__status .is-out { color: var(--ledger-red); }
.vespera-ledger-product__status .is-out i { background: var(--ledger-red); }

.vespera-ledger-product h3 {
	margin: .65rem 0 .8rem;
	font-size: 1rem;
	font-weight: 750;
	letter-spacing: -.025em;
	overflow-wrap: anywhere;
}

.vespera-ledger-product__price {
	display: flex;
	align-items: baseline;
	gap: .55rem;
}

.vespera-ledger-product__price del { color: var(--ledger-muted); font-size: .67rem; }
.vespera-ledger-product__price strong { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-size: 1.3rem; font-weight: 600; }
.vespera-ledger-product__stock { margin-top: .65rem; color: var(--ledger-muted); font-size: .57rem; }

.vespera-ledger-product__footer {
	display: flex;
	padding: 0 1rem 1rem;
}

.vespera-ledger-product__footer .btn { width: 100%; }
.vespera-ledger-product__footer .btn:not(.btn-primary) { color: var(--ledger-muted); background: var(--ledger-soft); }
.vespera-ledger-empty--catalog { min-height: 320px; border: 1px solid var(--ledger-line); border-radius: 9px; background: var(--ledger-surface); }

.vespera-ledger-back {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
	margin: .9rem 0 1.4rem;
	color: var(--ledger-muted);
	font-size: .61rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.vespera-ledger-back:hover { color: var(--tblr-body-color); }

.vespera-ledger-checkout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 360px;
	gap: 1rem;
	align-items: start;
}

.vespera-ledger-product-detail {
	display: grid;
	grid-template-columns: minmax(220px, .78fr) minmax(0, 1.22fr);
	min-width: 0;
	overflow: hidden;
	border: 1px solid var(--ledger-line);
	border-radius: 10px;
	background: var(--ledger-surface);
}

.vespera-ledger-product-detail__media {
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: space-between;
	min-height: 470px;
	padding: 1.2rem;
	border-right: 1px solid var(--ledger-line);
	background:
		repeating-linear-gradient(0deg, transparent 0 44px, color-mix(in srgb, var(--ledger-line) 27%, transparent 73%) 44px 45px),
		var(--ledger-soft);
}

.vespera-ledger-product-detail__media > span { align-self: flex-start; }

.vespera-ledger-product-detail__media img {
	width: min(100%, 260px);
	height: 300px;
	object-fit: contain;
	filter: drop-shadow(0 22px 24px rgba(0, 0, 0, .18));
}

.vespera-ledger-product-detail__copy { padding: clamp(1.5rem, 4vw, 3rem); }

.vespera-ledger-product-detail h1 {
	margin: .4rem 0 .65rem;
	font-size: clamp(2rem, 4vw, 3.6rem);
	font-weight: 800;
	letter-spacing: -.06em;
	line-height: 1;
	overflow-wrap: anywhere;
}

.vespera-ledger-product-detail__amount {
	display: block;
	color: var(--ledger-mint);
	font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
	font-size: 1rem;
	font-weight: 600;
}

.vespera-ledger-product-detail__badges { display: flex; flex-wrap: wrap; gap: .45rem; margin: 1.1rem 0; }

.vespera-ledger-product-detail__badges span {
	padding: .42rem .55rem;
	border-radius: 4px;
	color: var(--ledger-muted);
	font-size: .57rem;
	font-weight: 750;
	background: var(--ledger-soft);
}

.vespera-ledger-product-detail__badges .is-discount { color: var(--ledger-amber); }
.vespera-ledger-product-detail__badges .is-bonus,
.vespera-ledger-product-detail__badges .is-stock { color: var(--ledger-mint); }
.vespera-ledger-product-detail__badges .is-out { color: var(--ledger-red); }

.vespera-ledger-product-detail__description {
	margin-top: 1.35rem;
	padding-top: 1.25rem;
	border-top: 1px solid var(--ledger-line);
	color: var(--ledger-muted);
	font-size: .75rem;
	line-height: 1.7;
}

.vespera-ledger-order > form { padding: 1.15rem; }
.vespera-ledger-totals { display: grid; gap: .75rem; margin-bottom: 1.25rem; }

.vespera-ledger-totals > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	color: var(--ledger-muted);
	font-size: .65rem;
}

.vespera-ledger-totals b { color: var(--tblr-body-color); font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; font-weight: 600; }
.vespera-ledger-totals .is-saving b { color: var(--ledger-mint); }

.vespera-ledger-totals .is-total {
	margin-top: .25rem;
	padding-top: 1rem;
	border-top: 1px solid var(--ledger-line);
	color: var(--tblr-body-color);
	font-size: .72rem;
	font-weight: 700;
}

.vespera-ledger-totals .is-total b { font-size: 1.35rem; }
.vespera-ledger-order .vespera-ledger-check { margin: .2rem 0 1rem; }
.vespera-ledger-order__safe { justify-content: center; width: 100%; margin-top: .7rem; }

@media (max-width: 1199.98px) {
	.vespera-ledger-products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.vespera-ledger-checkout { grid-template-columns: minmax(0, 1fr) 330px; }
	.vespera-ledger-product-detail { grid-template-columns: 1fr; }
	.vespera-ledger-product-detail__media { min-height: 320px; border-right: 0; border-bottom: 1px solid var(--ledger-line); }
	.vespera-ledger-product-detail__media img { height: 220px; }
}

@media (max-width: 991.98px) {
	.vespera-ledger-layout,
	.vespera-ledger-checkout { grid-template-columns: 1fr; }
	.vespera-ledger-activity,
	.vespera-ledger-order { position: static; }
	.vespera-ledger-activity__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.vespera-ledger-entry:nth-child(even) { border-left: 1px solid var(--ledger-line); }
	.vespera-ledger-entry:nth-child(2) { border-top: 0; }
}

@media (max-width: 767.98px) {
	.vespera-credits { padding: 2.4rem 0 4rem; background: var(--tblr-body-bg); }
	.vespera-ledger-hero { grid-template-columns: 1fr; gap: 1.5rem; padding-top: 1.4rem; }
	.vespera-ledger-balance { max-width: 380px; }
	.vespera-ledger-nav { overflow-x: auto; }
	.vespera-ledger-nav a { flex: 0 0 auto; }
	.vespera-ledger-form-grid,
	.vespera-ledger-products { grid-template-columns: 1fr; }
	.vespera-ledger-products { gap: .75rem; }
	.vespera-ledger-product { display: grid; grid-template-columns: 135px minmax(0, 1fr); }
	.vespera-ledger-product__serial { grid-column: 1 / -1; }
	.vespera-ledger-product__media { min-height: 160px; }
	.vespera-ledger-product__media img { height: 115px; }
	.vespera-ledger-product__footer { grid-column: 1 / -1; }
	.vespera-ledger-form__footer { grid-template-columns: 1fr; align-items: stretch; }
	.vespera-ledger-security-note { justify-self: stretch; justify-content: center; text-align: center; }
	.vespera-ledger-form__footer .btn { width: 100%; }
}

@media (max-width: 575.98px) {
	.vespera-ledger-hero h1 { font-size: 2.7rem; }
	.vespera-ledger-activity__list { grid-template-columns: 1fr; }
	.vespera-ledger-entry:nth-child(even) { border-left: 0; }
	.vespera-ledger-entry:nth-child(2) { border-top: 1px solid var(--ledger-line); }
	.vespera-ledger-product { display: flex; }
	.vespera-ledger-product__serial { grid-column: auto; }
	.vespera-ledger-product-detail__copy { padding: 1.35rem; }
	.vespera-ledger-product-detail h1 { font-size: 2.2rem; }
}

@media (prefers-reduced-motion: reduce) {
	.vespera-ledger-product,
	.vespera-ledger-field > div,
	.vespera-ledger-nav a::after { transition: none; }
}
