.tiketku-page {
	--tiketku-accent: var(--sf-navy, var(--kl-primary, #4f46e5));
	--tiketku-accent-dark: var(--sf-navy-dark, #3730a3);
	--tiketku-accent-light: var(--sf-navy-light, #818cf8);
	--tiketku-accent-soft: var(--sf-navy-soft, rgba(79, 70, 229, 0.08));
	--tiketku-radius: 14px;
}

.tiketku-hero {
	position: relative;
	overflow: hidden;
	border-radius: var(--tiketku-radius);
	padding: 1.5rem 1.35rem;
	margin-bottom: 1.25rem;
	background: linear-gradient(135deg, var(--tiketku-accent-dark) 0%, var(--tiketku-accent) 55%, var(--tiketku-accent-light) 100%);
	box-shadow: 0 10px 32px color-mix(in srgb, var(--tiketku-accent) 22%, transparent);
	color: #fff;
}

.tiketku-hero::before {
	content: "";
	position: absolute;
	top: -40%;
	right: -8%;
	width: 220px;
	height: 220px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(255, 255, 255, 0.14) 0%, transparent 70%);
	pointer-events: none;
}

.tiketku-hero__row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	position: relative;
	z-index: 1;
}

.tiketku-hero__eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	opacity: 0.9;
	font-size: 0.8rem;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	margin-bottom: 0.35rem;
}

.tiketku-hero__title {
	font-size: 1.65rem;
	margin: 0 0 0.35rem;
	font-weight: 700;
}

.tiketku-hero__desc {
	margin: 0;
	opacity: 0.92;
}

.tiketku-hero__url,
.tiketku-hero__url-setup {
	display: inline-block;
	margin-top: 0.65rem;
	color: #fff;
	background: rgba(255, 255, 255, 0.14);
	border-radius: 8px;
	padding: 0.35rem 0.7rem;
}

.tiketku-hero__url a,
.tiketku-hero__url-setup {
	color: #fff;
}

.tiketku-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.tiketku-stats {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
	gap: 0.75rem;
	margin-bottom: 1.25rem;
}

.tiketku-stat {
	background: #fff;
	border-radius: var(--tiketku-radius);
	padding: 1rem;
	box-shadow: 0 4px 18px rgba(15, 23, 42, 0.06);
}

.tiketku-stat span {
	display: block;
	color: #64748b;
	font-size: 0.85rem;
}

.tiketku-stat strong {
	font-size: 1.4rem;
}

.tiketku-finance {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 0.75rem;
	margin-bottom: 1.25rem;
}

.tiketku-finance__card {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
	background: #fff;
	border-radius: var(--tiketku-radius);
	padding: 1.05rem 1.15rem;
	box-shadow: 0 4px 18px rgba(15, 23, 42, 0.06);
	text-decoration: none;
	color: inherit;
	min-width: 0;
}

.tiketku-finance__card:hover {
	color: inherit;
	text-decoration: none;
	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.1);
}

.tiketku-finance__label {
	color: #64748b;
	font-size: 0.85rem;
	font-weight: 600;
}

.tiketku-finance__value {
	font-family: Syne, Inter, system-ui, sans-serif;
	font-size: 1.35rem;
	font-weight: 800;
	letter-spacing: -0.02em;
	word-break: break-word;
}

.tiketku-finance__hint {
	color: #94a3b8;
	font-size: 0.78rem;
	line-height: 1.35;
}

@media (max-width: 767.98px) {
	.tiketku-finance {
		grid-template-columns: 1fr;
	}
}

.tiketku-panel {
	background: #fff;
	border-radius: var(--tiketku-radius);
	padding: 1.25rem;
	box-shadow: 0 4px 18px rgba(15, 23, 42, 0.06);
	margin-bottom: 1.25rem;
}

.tiketku-order-filters__row {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-end;
	gap: 0.65rem;
}

.tiketku-order-filters__row .form-group {
	min-width: 0;
}

.tiketku-order-filters__search {
	flex: 1 1 12rem;
}

.tiketku-order-filters__event,
.tiketku-order-filters__status {
	flex: 0 1 10.5rem;
}

.tiketku-order-filters__per-page {
	flex: 0 0 7.5rem;
}

.tiketku-order-filters__actions {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 0.5rem;
	padding-bottom: 1px;
}

@media (max-width: 767.98px) {
	.tiketku-order-filters__row {
		flex-wrap: wrap;
	}

	.tiketku-order-filters__search,
	.tiketku-order-filters__event,
	.tiketku-order-filters__status,
	.tiketku-order-filters__per-page {
		flex: 1 1 100%;
	}
}

.tiketku-staff-create__head {
	margin-bottom: 1.15rem;
}

.tiketku-staff-create__head h2 {
	font-size: 1.1rem;
	font-weight: 700;
	margin: 0 0 0.25rem;
}

.tiketku-staff-create__head p {
	margin: 0;
	color: #64748b;
	font-size: 0.9rem;
}

.tiketku-staff-form {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
	gap: 1.25rem 1.5rem;
	align-items: start;
}

.tiketku-staff-form__col {
	background: #f8fafc;
	border: 1px solid #eef2f7;
	border-radius: 12px;
	padding: 1rem 1.05rem 1.1rem;
}

.tiketku-staff-form__col h3 {
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #64748b;
	margin: 0 0 0.85rem;
}

.tiketku-staff-form__col .form-group {
	margin-bottom: 0.85rem;
}

.tiketku-staff-form__col .form-group:last-child {
	margin-bottom: 0;
}

.tiketku-staff-form__label {
	display: block;
	margin-bottom: 0.4rem;
	font-weight: 600;
	font-size: 0.9rem;
}

.tiketku-staff-form select.tiketku-staff-events.select2-hidden-accessible {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	border: 0 !important;
}

.tiketku-staff-form .select2-container {
	width: 100% !important;
	display: block;
}

.tiketku-staff-form .select2-container--default .select2-selection--multiple {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.35rem;
	min-height: 42px;
	height: auto;
	border: 1px solid #ced4da;
	border-radius: 0.5rem;
	background: #fff;
	padding: 0.3rem 2rem 0.3rem 0.45rem;
}

.tiketku-staff-form .select2-container--default.select2-container--focus .select2-selection--multiple,
.tiketku-staff-form .select2-container--default.select2-container--open .select2-selection--multiple {
	border-color: var(--tiketku-accent);
	box-shadow: 0 0 0 0.15rem color-mix(in srgb, var(--tiketku-accent) 18%, transparent);
}

.tiketku-staff-form .select2-container--default .select2-selection--multiple .select2-selection__rendered {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.3rem;
	flex: 0 1 auto;
	width: auto !important;
	max-width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
}

.tiketku-staff-form .select2-container--default .select2-selection--multiple .select2-selection__choice {
	display: inline-flex;
	align-items: center;
	gap: 0.2rem;
	float: none;
	margin: 0;
	padding: 0.15rem 0.55rem 0.15rem 0.4rem;
	border: 1px solid color-mix(in srgb, var(--tiketku-accent) 22%, transparent);
	border-radius: 999px;
	background: var(--tiketku-accent-soft);
	color: var(--tiketku-accent-dark);
	font-size: 0.8rem;
	font-weight: 600;
	line-height: 1.35;
}

.tiketku-staff-form .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
	position: static;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1rem;
	height: 1rem;
	margin: 0;
	padding: 0;
	color: var(--tiketku-accent-dark);
	border: 0;
	background: transparent;
	font-weight: 700;
	line-height: 1;
}

.tiketku-staff-form .select2-container--default .select2-selection--multiple .select2-selection__clear {
	position: absolute;
	right: 0.55rem;
	top: 50%;
	margin-top: -10px;
	color: #64748b;
}

.tiketku-staff-form .select2-container--default .select2-selection--multiple .select2-search--inline {
	float: none;
	flex: 1 1 7rem;
	min-width: 7rem;
	margin: 0;
	padding: 0;
}

.tiketku-staff-form .select2-container--default .select2-selection--multiple .select2-search--inline .select2-search__field,
.tiketku-staff-form .select2-container--default .select2-selection--multiple .select2-search--inline textarea.select2-search__field {
	width: 100% !important;
	min-width: 0 !important;
	min-height: 28px !important;
	height: 28px !important;
	max-height: 28px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
	line-height: 28px !important;
	font-size: 0.88rem !important;
	resize: none !important;
	overflow: hidden !important;
	appearance: none !important;
}

.tiketku-staff-select2-dropdown.select2-dropdown {
	border: 1px solid #e2e8f0;
	border-radius: 0.5rem;
	overflow: hidden;
	box-shadow: 0 10px 24px rgba(15, 23, 42, 0.12);
}

.tiketku-staff-select2-dropdown .select2-results__option--highlighted.select2-results__option--selectable {
	background: var(--tiketku-accent);
}

.tiketku-perm {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
}

.tiketku-perm label {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	margin: 0;
	padding: 0.4rem 0.75rem;
	border: 1px solid #e2e8f0;
	border-radius: 999px;
	background: #fff;
	font-size: 0.88rem;
	cursor: pointer;
}

.tiketku-staff-form__actions {
	margin-top: 1.1rem;
}

.tiketku-staff-list__title {
	font-size: 1.1rem;
	font-weight: 700;
	margin: 0 0 0.85rem;
}

.tiketku-staff-row-actions {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 0.5rem;
	flex-wrap: wrap;
}

.tiketku-staff-row-actions form:first-child {
	min-width: 220px;
	flex: 1 1 220px;
}

@media (max-width: 991.98px) {
	.tiketku-staff-form {
		grid-template-columns: 1fr;
	}
}

.tiketku-cards {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 1rem;
}

.tiketku-card {
	background: #fff;
	border-radius: var(--tiketku-radius);
	padding: 1.1rem;
	box-shadow: 0 4px 18px rgba(15, 23, 42, 0.06);
}

.tiketku-card__head {
	display: flex;
	justify-content: space-between;
	gap: 0.75rem;
	align-items: flex-start;
}

.tiketku-card__head h3 {
	font-size: 1.05rem;
	margin: 0;
}

.tiketku-card__meta {
	color: #64748b;
	font-size: 0.9rem;
}

.tiketku-card__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
}

.tiketku-badge {
	display: inline-block;
	border-radius: 999px;
	padding: 0.15rem 0.55rem;
	font-size: 0.75rem;
	text-transform: uppercase;
	background: #e2e8f0;
	color: #334155;
}

.tiketku-badge.is-published,
.tiketku-badge.is-paid,
.tiketku-badge.is-unused,
.tiketku-badge.is-ok {
	background: #dcfce7;
	color: #166534;
}

.tiketku-badge.is-pending {
	background: #fef3c7;
	color: #92400e;
}

.tiketku-badge.is-draft,
.tiketku-badge.is-cancelled,
.tiketku-badge.is-void,
.tiketku-badge.is-used {
	background: #fee2e2;
	color: #991b1b;
}

.tiketku-badge.is-used {
	background: var(--tiketku-accent-soft);
	color: var(--tiketku-accent-dark);
}

.tiketku-type-row {
	align-items: center;
}

.tiketku-type-color {
	height: 38px;
	padding: 0.2rem;
	cursor: pointer;
}

.tiketku-type-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
}

.tiketku-type-chip__dot {
	width: 0.7rem;
	height: 0.7rem;
	border-radius: 50%;
	display: inline-block;
	flex-shrink: 0;
}

.tiketku-table th {
	border-top: 0;
	font-size: 0.8rem;
	text-transform: uppercase;
	color: #64748b;
}

.tiketku-ticket-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	gap: 1rem;
}

.tiketku-ticket-card {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.4rem;
	padding: 0.9rem;
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	text-align: center;
	color: inherit;
	text-decoration: none;
}

.tiketku-ticket-card img,
.tiketku-public__qr {
	width: 140px;
	height: 140px;
	object-fit: contain;
}

.tiketku-scanner {
	width: 100%;
	max-width: 100%;
	margin: 0;
	border-radius: 12px;
	overflow: hidden;
	background: #111827;
	height: 240px;
	min-height: 240px;
	position: relative;
}

.tiketku-scanner video {
	display: block !important;
	position: absolute !important;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover;
	background: #111827;
	z-index: 1;
	transform: none !important;
	filter: none !important;
	-webkit-filter: none !important;
}

.tiketku-scanner canvas {
	display: none !important;
}

#tiketkuScanner #qr-shaded-region {
	display: none !important;
}

.tiketku-checkin__layout {
	display: grid;
	gap: 1.25rem;
}

.tiketku-checkin__camera-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
	margin-top: 0.85rem;
}

.tiketku-checkin__manual .btn-block {
	width: 100%;
}

@media (min-width: 768px) {
	.tiketku-checkin__layout {
		grid-template-columns: minmax(280px, 1.05fr) minmax(260px, 1fr);
		align-items: start;
		gap: 1.75rem;
	}

	.tiketku-scanner {
		height: min(70vh, 480px);
		min-height: 320px;
	}
}

.tiketku-checkin-result {
	border-radius: 12px;
	padding: 0.9rem 1rem;
	background: #f8fafc;
}

.tiketku-checkin-result.is-ok {
	background: #dcfce7;
}

.tiketku-checkin-result.is-err {
	background: #fee2e2;
}

.tiketku-checkin__progress {
	font-size: 0.95rem;
	font-weight: 600;
	color: #0f172a;
	padding-bottom: 0.35rem;
}

.tiketku-checkin-list {
	margin-top: 1.25rem;
}

.tiketku-checkin-list__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-bottom: 1rem;
}

.tiketku-checkin-list__count {
	min-width: 2rem;
	height: 2rem;
	padding: 0 0.65rem;
	border-radius: 999px;
	background: #0f172a;
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 0.85rem;
	font-weight: 700;
}

.tiketku-checkin-list code {
	font-size: 0.85rem;
}

.tiketku-guest-cards {
	display: grid;
	gap: 0.75rem;
}

.tiketku-guest-card {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 0.9rem 0.95rem;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	background: #fff;
}

.tiketku-guest-card__body {
	min-width: 0;
	flex: 1;
}

.tiketku-guest-card__name {
	display: block;
	font-size: 1rem;
	line-height: 1.25;
}

.tiketku-guest-card__phone,
.tiketku-guest-card__meta,
.tiketku-guest-card__time {
	margin: 0.15rem 0 0;
	color: #64748b;
	font-size: 0.82rem;
	line-height: 1.35;
	word-break: break-word;
}

.tiketku-guest-card__time {
	color: var(--tiketku-accent);
	font-weight: 600;
}

.tiketku-guest-card__undo {
	flex-shrink: 0;
	border: 0;
	border-radius: 999px;
	padding: 0.4rem 0.7rem;
	background: #fee2e2;
	color: #991b1b;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1.2;
}

.tiketku-guest-card__undo:disabled {
	opacity: 0.55;
}

@media (min-width: 768px) {
	.tiketku-guest-cards {
		grid-template-columns: 1fr 1fr;
	}
}

.tiketku-order-cards {
	display: grid;
	gap: 0.75rem;
}

.tiketku-order-card {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 0.9rem 0.95rem;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	background: #fff;
}

.tiketku-order-card__body {
	min-width: 0;
	flex: 1;
}

.tiketku-order-card__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.5rem;
	flex-wrap: wrap;
}

.tiketku-order-card__code {
	display: block;
	font-size: 1rem;
	line-height: 1.25;
	word-break: break-all;
}

.tiketku-order-card__event {
	margin: 0.2rem 0 0;
	font-size: 0.95rem;
	font-weight: 600;
	line-height: 1.3;
	word-break: break-word;
}

.tiketku-order-card__buyer,
.tiketku-order-card__phone {
	margin: 0.15rem 0 0;
	color: #64748b;
	font-size: 0.82rem;
	line-height: 1.35;
	word-break: break-word;
}

.tiketku-order-card__facts {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem 1.1rem;
	margin-top: 0.5rem;
}

.tiketku-order-card__fact {
	display: flex;
	flex-direction: column;
	gap: 0.05rem;
}

.tiketku-order-card__label {
	color: #64748b;
	font-size: 0.7rem;
	font-weight: 600;
	letter-spacing: 0.03em;
	text-transform: uppercase;
}

.tiketku-order-card__value {
	font-size: 0.9rem;
	font-weight: 700;
	color: #0f172a;
}

.tiketku-order-card__view {
	flex-shrink: 0;
	border-radius: 999px;
	padding: 0.4rem 0.7rem;
	background: var(--tiketku-accent-soft);
	color: var(--tiketku-accent-dark);
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
}

.tiketku-order-card__view:hover,
.tiketku-order-card__view:focus {
	background: color-mix(in srgb, var(--tiketku-accent) 18%, #fff);
	color: var(--tiketku-accent-dark);
	text-decoration: none;
}

.tiketku-orders-table {
	display: none;
}

@media (min-width: 768px) {
	.tiketku-order-cards {
		display: none;
	}

	.tiketku-orders-table {
		display: block;
	}
}

.tiketku-orders-pager {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-top: 1rem;
	padding-top: 1rem;
	border-top: 1px solid rgba(148, 163, 184, 0.22);
}

.tiketku-orders-pager[hidden] {
	display: none !important;
}

.tiketku-orders-pager__meta {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
}

.tiketku-orders-pager__jump {
	display: flex;
	align-items: center;
	gap: 0.45rem;
	flex-wrap: wrap;
}

.tiketku-orders-pager__jump[hidden] {
	display: none !important;
}

.tiketku-orders-pager__jump .form-control {
	width: 4.5rem;
}

.tiketku-orders-pager__info {
	font-size: 0.85rem;
	color: #64748b;
}

.tiketku-orders-pager .pagination {
	gap: 0.25rem;
}

.tiketku-orders-pager .page-link {
	border-radius: 8px;
	min-width: 2.15rem;
	text-align: center;
}

.tiketku-public {
	max-width: 760px;
	margin: 0 auto;
	padding: 1.5rem 1rem 3rem;
}

.tiketku-public__hero {
	text-align: center;
	margin-bottom: 1.5rem;
}

.tiketku-public__list {
	display: grid;
	gap: 1rem;
}

.tiketku-public__card {
	display: flex;
	gap: 1rem;
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	padding: 0.9rem;
	text-decoration: none;
	color: inherit;
}

.tiketku-public__card img,
.tiketku-public__poster {
	width: 120px;
	height: 90px;
	object-fit: cover;
	border-radius: 10px;
}

.tiketku-public__poster {
	width: 100%;
	height: auto;
	max-height: 280px;
	margin-bottom: 1rem;
}

.tiketku-public__back {
	display: inline-block;
	margin-bottom: 0.75rem;
}

.tiketku-buy__type {
	display: flex;
	gap: 0.6rem;
	align-items: flex-start;
	padding: 0.7rem 0;
	border-bottom: 1px solid #e2e8f0;
}

.tiketku-public__pay pre {
	background: #f8fafc;
	padding: 0.85rem;
	border-radius: 10px;
	white-space: pre-wrap;
}

.tk-order {
	--tk-ink: #111827;
	--tk-muted: #64748b;
	--tk-paper: #eef1f7;
	--tk-accent: var(--sf-navy, var(--primary-600, var(--kl-primary, #4f46e5)));
	--tk-line: rgba(15, 23, 42, 0.08);
	min-height: 100vh;
	background:
		radial-gradient(1200px 480px at 12% -10%, color-mix(in srgb, var(--tk-accent) 14%, transparent), transparent 55%),
		radial-gradient(900px 420px at 100% 0%, rgba(14, 165, 233, 0.1), transparent 50%),
		var(--tk-paper);
	color: var(--tk-ink);
	padding: 1.25rem 1rem 3rem;
}

.tk-order__inner {
	max-width: 760px;
	margin: 0 auto;
}

.tk-receipt {
	background: #fff;
	border-radius: 20px;
	padding: 1.25rem 1.2rem 1.15rem;
	box-shadow: 0 16px 40px rgba(15, 23, 42, 0.08);
	border: 1px solid var(--tk-line);
}

.tk-receipt__top {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.85rem;
	padding-bottom: 1.05rem;
	border-bottom: 1px dashed color-mix(in srgb, var(--tk-accent) 28%, transparent);
}

.tk-receipt__eyebrow {
	margin: 0 0 0.35rem;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--tk-accent);
}

.tk-receipt__event {
	margin: 0;
	font-family: Syne, Inter, system-ui, sans-serif;
	font-size: clamp(1.35rem, 4vw, 1.85rem);
	font-weight: 800;
	letter-spacing: -0.03em;
	line-height: 1.15;
}

.tk-receipt__when {
	margin: 0.4rem 0 0;
	color: var(--tk-muted);
	font-size: 0.9rem;
}

.tk-receipt__facts {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.95rem 1.25rem;
	margin: 1.1rem 0 0;
}

.tk-receipt__facts dt {
	margin: 0;
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--tk-muted);
}

.tk-receipt__facts dd {
	margin: 0.2rem 0 0;
	font-size: 0.98rem;
	font-weight: 600;
	word-break: break-word;
}

.tk-receipt__total {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 1rem;
	margin-top: 1.15rem;
	padding-top: 0.95rem;
	border-top: 1px solid var(--tk-line);
	font-size: 0.9rem;
	color: var(--tk-muted);
}

.tk-receipt__total strong {
	font-family: Syne, Inter, system-ui, sans-serif;
	font-size: 1.35rem;
	font-weight: 800;
	color: var(--tk-ink);
}

.tk-receipt__note {
	margin-top: 1rem;
	padding: 0.9rem 1rem;
	border-radius: 14px;
	background: #f8fafc;
}

.tk-receipt__note h2 {
	margin: 0 0 0.45rem;
	font-size: 1rem;
}

.tk-receipt__note p,
.tk-receipt__note pre {
	margin: 0 0 0.45rem;
}

.tk-receipt__note pre {
	background: #fff;
	padding: 0.75rem;
	border-radius: 10px;
	white-space: pre-wrap;
}

.tk-receipt__muted {
	color: var(--tk-muted);
	font-size: 0.85rem;
}

.tk-pay-bank {
	margin: 0.75rem 0 1rem;
	padding: 0.85rem 0.95rem;
	border-radius: 12px;
	background: #fff;
	border: 1px solid #e2e8f0;
}

.tk-pay-bank__name {
	font-weight: 700;
	margin-bottom: 0.35rem;
}

.tk-pay-copy-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	flex-wrap: wrap;
	margin: 0.35rem 0 0.65rem;
}

.tk-pay-copy-row__value {
	font-size: 1.05rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	word-break: break-all;
}

.tk-copy-btn {
	border: 1px solid #cbd5e1;
	background: #fff;
	color: var(--tk-ink);
	border-radius: 999px;
	padding: 0.35rem 0.75rem;
	font-size: 0.8rem;
	font-weight: 600;
	cursor: pointer;
}

.tk-copy-btn.is-copied {
	border-color: #16a34a;
	color: #15803d;
}

.tk-pay-proof h3 {
	margin: 0 0 0.4rem;
	font-size: 0.95rem;
}

.tk-pay-proof__ok {
	font-weight: 600;
	color: #15803d;
}

.tk-upload-zone {
	border: 1px dashed #94a3b8;
	border-radius: 12px;
	padding: 1.1rem 1rem;
	background: #fff;
	cursor: pointer;
	text-align: center;
}

.tk-upload-zone.is-dragover {
	border-color: var(--tk-ink);
	background: #f1f5f9;
}

.tk-upload-zone__text {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	color: var(--tk-muted);
	font-size: 0.85rem;
}

.tk-upload-zone__filename {
	font-weight: 600;
	color: var(--tk-ink);
}

.tk-pay-proof__img {
	display: block;
	width: 100%;
	max-height: 280px;
	object-fit: contain;
	border-radius: 12px;
	border: 1px solid #e2e8f0;
	background: #fff;
}

.tk-receipt--thanks {
	text-align: center;
}

.tk-order__tickets {
	margin-top: 1.75rem;
}

.tk-order__tickets-title {
	margin: 0 0 1rem;
	text-align: center;
	font-family: Syne, Inter, system-ui, sans-serif;
	font-size: 1.05rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--tk-muted);
}

@media (max-width: 575.98px) {
	.tk-receipt__facts {
		grid-template-columns: 1fr;
		gap: 0.8rem;
	}
}

.tiketku-page .input-group-prepend select[name="domain_id"] {
	max-width: 14rem;
}

.tk-co {
	--tk-ink: #111827;
	--tk-muted: #64748b;
	--tk-paper: #eef1f7;
	--tk-accent: var(--sf-navy, var(--primary-600, var(--kl-primary, #4f46e5)));
	--tk-accent-dark: var(--sf-navy-dark, var(--primary-700, #312e81));
	--tk-line: rgba(15, 23, 42, 0.08);
	min-height: 100vh;
	background:
		radial-gradient(1200px 480px at 12% -10%, color-mix(in srgb, var(--tk-accent) 14%, transparent), transparent 55%),
		radial-gradient(900px 420px at 100% 0%, rgba(14, 165, 233, 0.1), transparent 50%),
		var(--tk-paper);
	color: var(--tk-ink);
	padding: 1.25rem 1rem 7.5rem;
}

.tk-co__inner {
	max-width: 1080px;
	margin: 0 auto;
}

.tk-co__back {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	color: var(--tk-muted);
	text-decoration: none;
	font-size: 0.875rem;
	font-weight: 600;
	margin-bottom: 1rem;
}

.tk-co__back:hover,
.tk-co__back:focus-visible {
	color: var(--tk-accent);
}

.tk-co__empty {
	background: #fff;
	border-radius: 20px;
	padding: 1.5rem;
	text-align: center;
	color: var(--tk-muted);
}

.tk-co__grid {
	display: grid;
	gap: 1.25rem;
}

.tk-stub {
	position: relative;
	background: #fff;
	border-radius: 22px;
	overflow: hidden;
	box-shadow: 0 18px 40px rgba(15, 23, 42, 0.08);
}

.tk-stub__notch {
	display: none;
}

.tk-stub__media {
	background: #0f172a;
	aspect-ratio: 2 / 1;
	overflow: hidden;
}

.tk-stub__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.tk-stub__body {
	padding: 1.15rem 1.2rem 0.85rem;
}

.tk-stub__eyebrow {
	margin: 0 0 0.35rem;
	font-size: 0.72rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--tk-accent);
	font-weight: 700;
}

.tk-stub__title {
	font-family: Syne, Inter, sans-serif;
	font-size: clamp(1.35rem, 3vw, 1.85rem);
	font-weight: 800;
	line-height: 1.15;
	margin: 0 0 0.75rem;
}

.tk-stub__meta {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 0.4rem;
	color: var(--tk-muted);
	font-size: 0.9rem;
}

.tk-stub__meta li {
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
}

.tk-stub__meta i {
	width: 0.9rem;
	margin-top: 0.2rem;
	color: var(--tk-accent);
}

.tk-stub__perf {
	height: 14px;
	margin: 0.75rem 0 0;
	background-image: radial-gradient(circle, var(--tk-paper) 5px, transparent 6px);
	background-size: 16px 14px;
	background-position: -8px 0;
	background-repeat: repeat-x;
}

.tk-stub__summary {
	padding: 0.35rem 1.2rem 1.15rem;
}

.tk-stub__label {
	margin: 0 0 0.55rem;
	font-size: 0.72rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--tk-muted);
	font-weight: 700;
}

.tk-stub__row {
	display: flex;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 0.35rem 0;
	font-size: 0.92rem;
}

.tk-stub__row span {
	color: var(--tk-muted);
}

.tk-stub__row--total {
	border-top: 1px dashed var(--tk-line);
	margin-top: 0.35rem;
	padding-top: 0.7rem;
	font-size: 1.05rem;
}

.tk-stub__row--total strong {
	color: var(--tk-accent);
	font-size: 1.2rem;
}

.tk-co-form {
	display: grid;
	gap: 1rem;
}

.tk-co-card {
	background: #fff;
	border-radius: 20px;
	padding: 1.15rem 1.2rem 1.25rem;
	box-shadow: 0 12px 28px rgba(15, 23, 42, 0.05);
}

.tk-co-card__title {
	font-family: Syne, Inter, sans-serif;
	font-size: 1.05rem;
	font-weight: 700;
	margin: 0 0 0.25rem;
}

.tk-co-card__hint {
	margin: 0 0 1rem;
	color: var(--tk-muted);
	font-size: 0.875rem;
}

.tk-types {
	display: grid;
	gap: 0.65rem;
}

.tk-type {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	padding: 0.9rem 0.95rem;
	border: 1.5px solid var(--tk-line);
	border-left: 4px solid var(--type-color, var(--tk-accent));
	border-radius: 16px;
	cursor: pointer;
	transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
	--type-color: var(--tk-accent);
}

.tk-type input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.tk-type:hover,
.tk-type:focus-within {
	border-color: var(--type-color, var(--tk-accent));
}

.tk-type.is-selected {
	border-color: var(--type-color, var(--tk-accent));
	background: color-mix(in srgb, var(--type-color, #4f46e5) 8%, #fff);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--type-color, #4f46e5) 18%, transparent);
}

.tk-type.is-disabled {
	opacity: 0.5;
	cursor: not-allowed;
}

.tk-type__main {
	display: flex;
	flex-direction: column;
	gap: 0.15rem;
	min-width: 0;
}

.tk-type__name {
	font-weight: 700;
}

.tk-type__remain {
	font-size: 0.78rem;
	color: var(--tk-muted);
}

.tk-type__price {
	font-weight: 800;
	white-space: nowrap;
}

.tk-qty {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-top: 1rem;
}

.tk-qty__label {
	font-weight: 600;
}

.tk-qty__ctrl {
	display: inline-flex;
	align-items: center;
	border: 1.5px solid var(--tk-line);
	border-radius: 999px;
	overflow: hidden;
}

.tk-qty__btn,
.tk-qty__input {
	border: 0;
	background: #fff;
	height: 42px;
}

.tk-qty__btn {
	width: 42px;
	font-size: 1.2rem;
	color: var(--tk-ink);
}

.tk-qty__btn:hover,
.tk-qty__btn:focus-visible {
	background: color-mix(in srgb, var(--tk-accent) 8%, #fff);
	color: var(--tk-accent);
}

.tk-qty__input {
	width: 3rem;
	text-align: center;
	font-weight: 700;
	-moz-appearance: textfield;
}

.tk-qty__input::-webkit-outer-spin-button,
.tk-qty__input::-webkit-inner-spin-button {
	-webkit-appearance: none;
}

.tk-fields {
	display: grid;
	gap: 0.85rem;
}

.tk-field {
	display: grid;
	gap: 0.35rem;
}

.tk-field span {
	font-size: 0.82rem;
	font-weight: 600;
	color: #334155;
}

.tk-field input {
	width: 100%;
	height: 46px;
	border: 1.5px solid var(--tk-line);
	border-radius: 12px;
	padding: 0 0.85rem;
	font-size: 1rem;
}

.tk-field input:focus {
	outline: 0;
	border-color: var(--tk-accent);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--tk-accent) 12%, transparent);
}

.tk-co-bar {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 20;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.85rem;
	padding: 0.85rem 1rem calc(0.85rem + env(safe-area-inset-bottom));
	background: rgba(255, 255, 255, 0.92);
	backdrop-filter: blur(14px);
	border-top: 1px solid var(--tk-line);
	box-shadow: 0 -10px 28px rgba(15, 23, 42, 0.06);
}

.tk-co-bar__total {
	display: flex;
	flex-direction: column;
	min-width: 0;
}

.tk-co-bar__total span {
	font-size: 0.72rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: var(--tk-muted);
	font-weight: 700;
}

.tk-co-bar__total strong {
	font-size: 1.15rem;
	color: var(--tk-ink);
}

.tk-co-bar__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	border: 0;
	border-radius: 999px;
	padding: 0.8rem 1.15rem;
	background: linear-gradient(135deg, var(--tk-accent-dark), var(--tk-accent));
	color: #fff;
	font-weight: 700;
	white-space: nowrap;
}

.tk-co-bar__btn:hover,
.tk-co-bar__btn:focus-visible {
	filter: brightness(1.05);
	color: #fff;
}

.tk-co-bar__btn:disabled,
.tk-co-bar__btn.is-busy {
	opacity: 0.78;
	cursor: wait;
	pointer-events: none;
	filter: none;
}

.tk-co-bar__spinner {
	display: none;
	width: 1rem;
	height: 1rem;
	flex: 0 0 1rem;
	border: 2px solid rgba(255, 255, 255, 0.35);
	border-top-color: #fff;
	border-radius: 50%;
	animation: tk-co-spin 0.7s linear infinite;
}

.tk-co-bar__btn.is-busy .tk-co-bar__spinner {
	display: inline-block;
}

.tk-co-bar__btn.is-busy .tk-co-bar__btn-icon {
	display: none;
}

@keyframes tk-co-spin {
	to { transform: rotate(360deg); }
}

.tk-co .link-checkout-panel__payment-group-toggle,
.tk-co .link-checkout-panel__payment-option {
	border-radius: 14px;
}

@media (min-width: 900px) {
	.tk-co {
		padding: 2rem 1.5rem 2.5rem;
	}

	.tk-co__grid {
		grid-template-columns: minmax(280px, 0.9fr) minmax(0, 1.15fr);
		align-items: start;
		gap: 1.5rem;
	}

	.tk-stub {
		position: sticky;
		top: 1.25rem;
	}

	.tk-stub__notch {
		display: block;
		position: absolute;
		top: 46%;
		width: 22px;
		height: 22px;
		border-radius: 50%;
		background: var(--tk-paper);
		z-index: 2;
	}

	.tk-stub__notch--left {
		left: -11px;
	}

	.tk-stub__notch--right {
		right: -11px;
	}

	.tk-fields {
		grid-template-columns: 1fr 1fr;
	}

	.tk-field--full {
		grid-column: 1 / -1;
	}

	.tk-co-bar {
		position: sticky;
		top: auto;
		bottom: 0;
		margin-top: 0.15rem;
		border: 0;
		border-radius: 20px;
		box-shadow: 0 12px 28px rgba(15, 23, 42, 0.05);
		padding: 1rem 1.2rem;
		width: 100%;
	}
}

@media (max-width: 899px) {
	.tk-co-bar__btn {
		flex: 1 1 auto;
		max-width: 58%;
	}
}

.tk-home.tk-co {
	padding-bottom: 3rem;
}

.tk-home-hero {
	margin: 0.25rem 0 1.75rem;
}

.tk-home-hero__logo {
	display: block;
	max-width: 7.5rem;
	max-height: 4.5rem;
	width: auto;
	height: auto;
	object-fit: contain;
	margin: 0 0 0.85rem;
}

.tk-home-hero__title {
	font-family: Syne, Inter, sans-serif;
	font-size: clamp(1.8rem, 4vw, 2.6rem);
	font-weight: 800;
	line-height: 1.1;
	margin: 0 0 0.65rem;
}

.tk-home-hero__desc {
	margin: 0;
	max-width: 40rem;
	color: var(--tk-muted);
	font-size: 1.02rem;
	line-height: 1.55;
}

.tk-home-list__title {
	font-family: Syne, Inter, sans-serif;
	font-size: 1.05rem;
	font-weight: 700;
	margin: 0 0 0.9rem;
}

.tk-home-grid {
	display: grid;
	gap: 1.15rem;
}

.tk-home-card {
	display: flex;
	flex-direction: column;
	background: #fff;
	border-radius: 22px;
	overflow: hidden;
	text-decoration: none;
	color: inherit;
	box-shadow: 0 18px 40px rgba(15, 23, 42, 0.08);
	transition: transform 0.18s ease, box-shadow 0.18s ease;
}

.tk-home-card:hover,
.tk-home-card:focus-visible {
	transform: translateY(-3px);
	box-shadow: 0 22px 44px color-mix(in srgb, var(--tk-accent) 14%, transparent);
	color: inherit;
}

.tk-home-card__body {
	padding: 1.1rem 1.15rem 1.15rem;
	display: flex;
	flex-direction: column;
	gap: 0.7rem;
	flex: 1;
}

.tk-home-card__title {
	font-family: Syne, Inter, sans-serif;
	font-size: 1.2rem;
	font-weight: 800;
	margin: 0;
	line-height: 1.2;
}

.tk-home-card__foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem;
	margin-top: auto;
	padding-top: 0.75rem;
	border-top: 1px dashed var(--tk-line);
	font-weight: 700;
}

.tk-home-card__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	color: var(--tk-accent);
	font-size: 0.9rem;
}

.tk-event {
	max-width: 720px;
}

.tk-event__desc {
	margin-top: 1rem;
	color: #334155;
	line-height: 1.6;
	white-space: pre-wrap;
}

.tk-event__types {
	display: grid;
	gap: 0.65rem;
	padding: 0 1.2rem;
}

.tk-type.is-static {
	cursor: default;
}

.tk-type.is-static:hover {
	border-color: var(--tk-line);
}

.tk-event__cta {
	padding: 1.1rem 1.2rem 1.3rem;
}

.tk-event__cta .tk-co-bar__btn {
	width: 100%;
	max-width: none;
	text-decoration: none;
}

@media (min-width: 720px) {
	.tk-home-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (prefers-reduced-motion: reduce) {
	.tk-type,
	.tk-co-bar__btn,
	.tk-field input,
	.tk-home-card {
		transition: none;
	}
}

.tk-pass-stage {
	max-width: 420px;
	margin: 0 auto;
	padding: 1.25rem 1rem 2rem;
}

.tk-pass-stage__help {
	text-align: center;
	color: #64748b;
	margin: 0 0 1.1rem;
}

.tk-pass-stage__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
	justify-content: center;
	margin-top: 1rem;
}

.tk-pass {
	--tk-ink: #1e1b4b;
	--tk-gold: #f5c518;
	--tk-type: #1e1b4b;
	--tk-type-ink: #ffffff;
	position: relative;
	display: grid;
	grid-template-columns: 1fr;
	width: 100%;
	max-width: 380px;
	margin: 0 auto;
	background: #f8f7ff;
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 18px 40px rgba(30, 27, 75, 0.16);
	font-family: Inter, system-ui, sans-serif;
}

.tk-pass__stub {
	background: var(--tk-type, #1e1b4b);
	color: var(--tk-type-ink, #fff);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 1rem 1rem 0.9rem;
	text-align: center;
}

.tk-pass__brand {
	font-size: 0.68rem;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: inherit;
	opacity: 0.78;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
}

.tk-pass__admit {
	font-family: Syne, Inter, sans-serif;
	font-size: 1.2rem;
	letter-spacing: 0.22em;
	color: inherit;
	margin: 0;
}

.tk-pass__serial {
	font-size: 0.72rem;
	letter-spacing: 0.12em;
	word-break: break-all;
}

.tk-pass__cut {
	position: relative;
	height: 16px;
	background:
		repeating-linear-gradient(
			90deg,
			transparent 0 6px,
			#c7d2fe 6px 8px
		);
}

.tk-pass__cut::before,
.tk-pass__cut::after {
	content: "";
	position: absolute;
	top: 50%;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #eef2ff;
	transform: translate(-50%, -50%);
	box-shadow: inset 0 0 0 1px #c7d2fe;
}

.tk-pass__cut::before { left: 0; }
.tk-pass__cut::after { left: 100%; }

.tk-pass__body {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.9rem;
	padding: 1.05rem 1.05rem 1.2rem;
}

.tk-pass__poster {
	aspect-ratio: 2 / 1;
	height: auto;
	border-radius: 12px;
	overflow: hidden;
	background: #1e1b4b;
}

.tk-pass__poster img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.tk-pass__org {
	margin: 0 0 0.15rem;
	font-size: 0.72rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--tk-accent);
}

.tk-pass__title {
	font-family: Syne, Inter, sans-serif;
	font-size: 1.4rem;
	line-height: 1.15;
	margin: 0 0 0.7rem;
	color: var(--tk-ink);
}

.tk-pass__meta {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.45rem 0.8rem;
	margin: 0 0 0.7rem;
}

.tk-pass__meta dt {
	font-size: 0.68rem;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #64748b;
}

.tk-pass__meta dd {
	margin: 0;
	font-weight: 600;
	font-size: 0.88rem;
}

.tk-pass__qr {
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	padding: 0.85rem 0.75rem 0.95rem;
	background: #fff;
	border: 1px solid #e0e7ff;
	border-radius: 14px;
}

.tk-pass__qr img {
	display: block;
	width: 100%;
	height: 96px;
	object-fit: contain;
	background: #fff;
	image-rendering: pixelated;
}

.tk-pass__qr-code {
	display: block;
	margin-top: 0.55rem;
	font-size: 0.92rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	word-break: break-all;
	text-align: center;
	color: #1e1b4b;
}

.tk-pass__qr span {
	display: block;
	margin-top: 0.25rem;
	font-size: 0.72rem;
	color: #64748b;
}

.tk-pass__watermark {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: Syne, sans-serif;
	font-size: 2.2rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: color-mix(in srgb, var(--tk-accent) 14%, transparent);
	pointer-events: none;
	transform: rotate(-12deg);
}

.tk-pass.is-used .tk-pass__qr img {
	opacity: 0.45;
}

.tk-pass-list {
	display: grid;
	gap: 1.1rem;
	justify-items: center;
}

.tk-poster-upload__hint {
	color: #64748b;
	font-size: 0.86rem;
	line-height: 1.45;
}

.tk-poster-upload__input {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
	overflow: hidden;
}

.tk-poster-upload {
	position: relative;
}

.tk-poster-upload__drop {
	display: block;
	position: relative;
	aspect-ratio: 2 / 1;
	max-width: 640px;
	margin: 0;
	border: 1.5px dashed color-mix(in srgb, var(--tiketku-accent) 35%, transparent);
	border-radius: 16px;
	background:
		linear-gradient(180deg, color-mix(in srgb, var(--tiketku-accent) 5%, #fff), rgba(248, 247, 255, 0.9));
	overflow: hidden;
	cursor: pointer;
	transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.tk-poster-upload.is-drag .tk-poster-upload__drop,
.tk-poster-upload__drop:hover {
	border-color: var(--tiketku-accent);
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--tiketku-accent) 8%, transparent);
}

.tk-poster-upload__empty {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 1rem;
	text-align: center;
	color: var(--tiketku-accent-dark);
}

.tk-poster-upload__empty i {
	font-size: 1.7rem;
	opacity: 0.85;
}

.tk-poster-upload__empty strong {
	font-size: 0.95rem;
	color: #1e1b4b;
}

.tk-poster-upload__empty span {
	font-size: 0.8rem;
	color: #64748b;
}

.tk-poster-upload__preview {
	position: absolute;
	inset: 0;
}

.tk-poster-upload__preview img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.tk-poster-upload__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 0.7rem;
}

@media print {
	.tk-pass-stage__help,
	.tk-pass-stage__actions,
	.app-wrapper,
	.app-sidebar,
	.app-navbar {
		display: none !important;
	}

	.tk-pass {
		box-shadow: none;
		break-inside: avoid;
	}
}

.tiketku-report-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	margin-bottom: 1rem;
}

.tiketku-report-tab {
	display: inline-flex;
	align-items: center;
	padding: 0.4rem 0.85rem;
	border-radius: 999px;
	border: 1px solid rgba(148, 163, 184, 0.28);
	color: #475569;
	font-size: 0.82rem;
	font-weight: 700;
	text-decoration: none;
	background: #fff;
}

.tiketku-report-tab:hover {
	color: var(--tiketku-accent);
	border-color: color-mix(in srgb, var(--tiketku-accent) 40%, transparent);
	text-decoration: none;
}

.tiketku-report-tab.is-active {
	color: #fff;
	background: var(--tiketku-accent);
	border-color: var(--tiketku-accent);
}

.tiketku-report-filter {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 0.75rem;
}

.tiketku-report-filter label {
	display: block;
	font-size: 0.75rem;
	font-weight: 700;
	color: #64748b;
	margin-bottom: 0.3rem;
}

.tiketku-report-filter .form-control {
	min-width: 11rem;
}

.tiketku-report-heading {
	font-size: 0.95rem;
	font-weight: 800;
	margin: 0 0 0.85rem;
	color: #0f172a;
}

.tiketku-report-statement {
	display: flex;
	flex-direction: column;
	gap: 0.55rem;
}

.tiketku-report-statement__row {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.55rem 0;
	border-bottom: 1px solid rgba(148, 163, 184, 0.18);
	color: #334155;
}

.tiketku-report-statement__row--total {
	border-bottom: 0;
	padding-top: 0.75rem;
	font-size: 1.02rem;
	color: #0f172a;
}
