/* ==========================================================================
   næmt Event Box – frontend styles
   ========================================================================== */

.naemt-eb {
	background: #fff;
	border-radius: 0.25rem;
	box-shadow: 0 2px 16px rgba(0, 0, 0, .10);
	padding: 24px 26px 20px;
	font-family: inherit;
	box-sizing: border-box;
}

/* ── Ticket selector ──────────────────────────────────────────────────────── */

.naemt-eb__ticket-field {
	margin-top: 4px;
	padding-top: 16px;
	margin-bottom: 16px;
	border-top: 1px solid #e5e7eb;
}

.naemt-eb__ticket-label {
	display: block;
	font-size: .82em;
	font-weight: 700;
	color: #0d2b4e;
	margin-bottom: 6px;
}

.naemt-eb__ticket-select {
	width: 100%;
	min-height: 52px;
	padding: 12px 14px;
	border: 1px solid #e5e7eb;
	border-radius: 0.25rem;
	background: #fff;
	color: #0d2b4e;
	font-size: .95em;
	font-weight: 700;
	box-sizing: border-box;
	cursor: pointer;
}

.naemt-eb__ticket-select:focus-visible {
	outline: 1px solid #e5e7eb !important;
}

/* ── Price block ─────────────────────────────────────────────────────────── */

.naemt-eb__price {
	margin-bottom: 4px;
}

.naemt-eb__price-member {
	display: flex;
	align-items: baseline;
	gap: 6px;
	line-height: 1.1;
}

.naemt-eb__price-amount {
	font-size: 2.3em;
	font-weight: 800;
	color: #0d2b4e;
}

.naemt-eb__price-unit {
	font-size: 1em;
	font-weight: 500;
	color: #0d2b4e;
}

.naemt-eb__price-nonmember {
	font-size: .83em;
	color: #6b7280;
	margin: 5px 0 0;
}

/* ── Info rows ────────────────────────────────────────────────────────────── */

.naemt-eb__info {
	margin-top: 6px;
}

.naemt-eb__row {
	display: flex;
	align-items: flex-start;
	gap: 13px;
	padding: 13px 0;
	border-top: 1px solid #e5e7eb;
}

.naemt-eb__icon {
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	color: #c8920a;
	margin-top: 1px;
}

.naemt-eb__icon svg {
	width: 22px;
	height: 22px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.8;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.naemt-eb__row-text {
	display: flex;
	flex-direction: column;
	gap: 1px;
}

.naemt-eb__row-label {
	font-size: .82em;
	font-weight: 700;
	color: #0d2b4e;
}

.naemt-eb__row-value {
	font-size: .82em;
	color: #4b5563;
}

/* ── Capacity bar ─────────────────────────────────────────────────────────── */

.naemt-eb__capacity {
	padding-top: 14px;
	border-top: 1px solid #e5e7eb;
}

.naemt-eb__capacity-label {
	font-size: .82em;
	color: #4b5563;
	margin-bottom: 8px;
}

.naemt-eb__bar-track {
	background: #e5e7eb;
	border-radius: 6px;
	height: 10px;
	overflow: hidden;
}

.naemt-eb__bar-fill {
	background: #c8920a;
	height: 10px;
	border-radius: 6px;
	transition: width .3s ease;
}

/* ── Action buttons ───────────────────────────────────────────────────────── */

.naemt-eb__actions {
	margin-top: 20px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.naemt-eb__add-row {
	display: flex;
	gap: 8px;
	align-items: stretch;
}

.naemt-eb__qty-field {
	flex-shrink: 0;
	margin: 0;
}

/* Skærmlæser-label, skjult visuelt */
.naemt-eb__qty-srlabel {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}

/* Stepper: [−][input][+] */
.naemt-eb__qty-stepper {
	display: flex;
	align-items: stretch;
}

.naemt-eb__qty-btn {
	flex: 0 0 auto;
	width: 46px;
	min-height: 62px;
	padding: 0;
	border: 2px solid #0d2b4e;
	background: #fff;
	color: #0d2b4e;
	font-size: 1.5em;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	-webkit-appearance: none;
	appearance: none;
	user-select: none;
	touch-action: manipulation;
	transition: background .15s ease;
}

.naemt-eb__qty-btn:first-child {
	border-radius: 0.25rem 0 0 0.25rem;
}

.naemt-eb__qty-btn:last-child {
	border-radius: 0 0.25rem 0.25rem 0;
}

.naemt-eb__qty-btn:hover {
	background: #f5f6f8;
}

.naemt-eb__qty {
	width: 52px;
	min-height: 62px;
	padding: 9px 4px;
	border: 2px solid #0d2b4e;
	border-left: none;
	border-right: none;
	border-radius: 0;
	font-size: .95em;
	font-weight: 700;
	color: #0d2b4e;
	text-align: center;
	background: #fff;
	box-sizing: border-box;
	-moz-appearance: textfield;
	appearance: textfield;
}

/* Skjul native spinner – vi har vores egne +/- knapper */
.naemt-eb__qty::-webkit-inner-spin-button,
.naemt-eb__qty::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

.naemt-eb__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 62px;
	padding: 14px 18px;
	border-radius: 0.25rem;
	font-size: .95em;
	font-weight: 700;
	text-align: center;
	text-decoration: none !important;
	cursor: pointer;
	transition: opacity .15s ease, transform .1s ease;
	box-sizing: border-box;
	border: none;
}

.naemt-eb__btn-text {
	display: inline-block;
	line-height: 1.2;
}

/* ── Add to calendar (dropdown) ───────────────────────────────────────────── */

.naemt-eb__cal {
	position: relative;
}

/* Skjul den native disclosure-trekant på <summary> */
.naemt-eb__cal > summary {
	list-style: none;
}

.naemt-eb__cal > summary::-webkit-details-marker {
	display: none;
}

.naemt-eb__cal-menu {
	position: absolute;
	left: 0;
	right: 0;
	margin-top: 6px;
	background: #fff;
	border: 2px solid #0d2b4e;
	border-radius: 0.25rem;
	box-shadow: 0 6px 20px rgba(0, 0, 0, .12);
	overflow: hidden;
	z-index: 20;
}

.naemt-eb__cal-menu a {
	display: block;
	padding: 13px 16px;
	font-size: .9em;
	font-weight: 600;
	color: #0d2b4e !important;
	text-decoration: none !important;
	text-align: center;
}

.naemt-eb__cal-menu a + a {
	border-top: 1px solid #e5e7eb;
}

.naemt-eb__cal-menu a:hover {
	background: #f5f6f8;
}

.naemt-eb__btn:hover {
	opacity: .88;
	transform: translateY(-1px);
}

.naemt-eb__btn:disabled,
.naemt-eb__btn[aria-disabled="true"] {
	opacity: .55;
	cursor: not-allowed;
	transform: none;
}

.naemt-eb__btn:disabled:hover,
.naemt-eb__btn[aria-disabled="true"]:hover {
	opacity: .55;
	transform: none;
}

.naemt-eb__btn--primary {
	background: #f5c896;
	color: #0d2b4e !important;
	flex: 1;
}

.naemt-eb__btn--secondary {
	background: #fff;
	color: #0d2b4e !important;
	border: 2px solid #0d2b4e;
}

.naemt-eb__notice {
	display: none;
	margin: 0;
	font-size: .78em;
	line-height: 1.45;
	text-align: center;
	color: #4b5563;
}

.naemt-eb__notice--success {
	color: #3c763d;
}

.naemt-eb__notice--error {
	color: #a00;
}

/* Den native TEC-billetform indlejres skjult og indsendes via JS.
   pointer-events:none så den ikke kan opfange tryk; selve <div> har også
   attributten inert (i PHP), så TEC's dialog ikke kan stjæle fokus fra
   antal-feltet (årsag til at tastaturet ikke åbnede på Chrome Android). */
.naemt-eb__native-ticket-bridge {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
	pointer-events: none;
}

@media (max-width: 600px) {
	/* Stepper i fuld bredde på egen linje, knap nedenunder */
	.naemt-eb__add-row {
		flex-wrap: wrap;
	}

	.naemt-eb__qty-field {
		width: 100%;
	}

	/* Bredt input-felt så det er nemt at ramme og taste i */
	.naemt-eb__qty {
		flex: 1 1 auto;
		width: 100%;
	}

	.naemt-eb__btn {
		min-height: 50px;
	}
}

/* ── Footer ───────────────────────────────────────────────────────────────── */

.naemt-eb__footer {
	margin-top: 16px;
	text-align: center;
	font-size: .78em;
	color: #6b7280;
	line-height: 1.6;
}

.naemt-eb__footer a {
	color: #c8920a;
	font-weight: 700;
	text-decoration: none;
}

.naemt-eb__footer a:hover {
	text-decoration: underline;
}
