/**
 * JCC Green Fee Kiosco — v0.1.1
 * Estilos alineados al JCC Design System (espejo de JCC Login):
 * tokens, paleta, DM Sans / DM Serif Display, radios, sombras multi-capa,
 * fondo mesh, tarjeta glass, resplandor pulsante en procesamiento.
 * Adaptado a kiosco táctil +60: targets >= 72px, tipografía grande.
 * Animaciones solo con transform/opacity/box-shadow (costo mínimo).
 */

/* ═══ Tokens locales (espejo del DS, sin depender de él) ═══ */
.jcc-gf {
	--jl-bg-base: #F4EDF1;
	--jl-bg-1:    #FBDFC4;
	--jl-bg-2:    #C9DCF2;
	--jl-bg-3:    #DBC9EC;

	--jl-glass:       rgba(255, 255, 255, 0.92);
	--jl-bd-flat:     rgba(255, 255, 255, 0.85);

	--jl-red:        #A30000;
	--jl-red-dark:   #7A0000;
	--jl-red-bg:     rgba(163, 0, 0, 0.07);
	--jl-green:      #2E9964;
	--jl-green-dark: #1F6B45;

	--jl-t1: #1A1218;
	--jl-t2: #5C5466;
	--jl-t3: #9A93A2;
	--jl-tw: #FFFFFF;

	--jl-shadow-lg:
		0 1px 0 rgba(255, 255, 255, 0.9) inset,
		0 -1px 0 rgba(163, 0, 0, 0.04) inset,
		0 4px 10px rgba(120, 40, 50, 0.08),
		0 16px 32px -8px rgba(120, 40, 50, 0.16),
		0 40px 80px -16px rgba(163, 0, 0, 0.18);
	--jl-shadow-cta:
		0 1px 0 rgba(255, 255, 255, 0.25) inset,
		0 -2px 0 rgba(0, 0, 0, 0.15) inset,
		0 2px 4px rgba(163, 0, 0, 0.25),
		0 8px 20px -4px rgba(163, 0, 0, 0.35);
	--jl-shadow-key:
		0 1px 0 rgba(255, 255, 255, 0.6) inset,
		0 2px 4px rgba(120, 40, 50, 0.04),
		0 6px 14px -4px rgba(120, 40, 50, 0.08);

	--jl-r-sm: 6px;
	--jl-r-md: 8px;
	--jl-r-lg: 10px;

	--jl-font-body:    'DM Sans', system-ui, -apple-system, sans-serif;
	--jl-font-display: 'DM Serif Display', Georgia, serif;

	--jl-ts:        0.3s cubic-bezier(0.22, 1, 0.36, 1);
	--jl-ts-spring: 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}

* { margin: 0; padding: 0; box-sizing: border-box; -webkit-tap-highlight-color: transparent; }
html, body { height: 100%; }
body { overflow: hidden; }

.jcc-gf {
	position: relative;
	min-height: 100vh;
	min-height: 100dvh;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	font-family: var(--jl-font-body);
	color: var(--jl-t1);
	-webkit-font-smoothing: antialiased;
	user-select: none;
	-webkit-user-select: none;
	touch-action: manipulation;
	isolation: isolate;
}

.jcc-gf [hidden] { display: none !important; }

.jcc-gf :is(button, [tabindex]):focus-visible {
	outline: 2px solid var(--jl-red);
	outline-offset: 2px;
	border-radius: var(--jl-r-sm);
}

/* ═══ Fondo mesh ═══ */
.jcc-gf-bg {
	position: absolute; inset: 0; z-index: -1;
	background:
		radial-gradient(ellipse 80% 60% at 5% 12%,  var(--jl-bg-1) 0%, transparent 60%),
		radial-gradient(ellipse 70% 50% at 95% 15%, var(--jl-bg-2) 0%, transparent 60%),
		radial-gradient(ellipse 90% 60% at 50% 95%, var(--jl-bg-3) 0%, transparent 55%),
		var(--jl-bg-base);
}

/* ═══ Tarjeta principal ═══ */
.jcc-gf-card {
	position: relative;
	width: min(620px, 94vw);
	background: var(--jl-glass);
	border: 1px solid var(--jl-bd-flat);
	border-radius: var(--jl-r-lg);
	box-shadow: var(--jl-shadow-lg);
	padding: 40px 44px 36px;
	overflow: hidden;
	isolation: isolate;
	animation: jgf-card-in 0.6s var(--jl-ts-spring) both;
	transition: width 0.35s var(--jl-ts), border-color 0.3s ease;
}
/* Ancho por pantalla: catálogo y QR necesitan más aire. */
.jcc-gf[data-screen="catalogo"] .jcc-gf-card { width: min(760px, 94vw); }
.jcc-gf[data-screen="qr"]       .jcc-gf-card { width: min(940px, 96vw); }

@keyframes jgf-card-in {
	from { opacity: 0; transform: translateY(20px) scale(0.96); }
	to   { opacity: 1; transform: none; }
}
.jcc-gf-card::before {
	content: '';
	position: absolute; inset: 0;
	background:
		linear-gradient(180deg, rgba(255,255,255,0.55) 0%, rgba(255,255,255,0) 50%),
		radial-gradient(ellipse 100% 60% at 50% 0%, rgba(163, 0, 0, 0.04) 0%, transparent 60%);
	pointer-events: none;
	z-index: 0;
}
/* Línea de acento institucional en el borde superior */
.jcc-gf-card::after {
	content: '';
	position: absolute;
	top: 0; left: 20%; right: 20%;
	height: 2px;
	background: linear-gradient(90deg, transparent 0%, var(--jl-red) 50%, transparent 100%);
	opacity: 0.4;
	pointer-events: none;
}
.jcc-gf-card > * { position: relative; z-index: 1; }

/* ═══ Resplandor perimetral durante procesamiento (patrón JCC Login) ═══ */
.jcc-gf-card.is-processing {
	animation: jgf-card-glow 1.1s ease-in-out infinite;
	border-color: rgba(163, 0, 0, 0.55);
}
@keyframes jgf-card-glow {
	0% {
		box-shadow:
			var(--jl-shadow-lg),
			0 0 0 0 rgba(163, 0, 0, 0.0),
			0 0 0 1px rgba(163, 0, 0, 0.25);
	}
	50% {
		box-shadow:
			var(--jl-shadow-lg),
			0 0 22px 4px rgba(163, 0, 0, 0.40),
			0 0 0 1px rgba(163, 0, 0, 0.65);
	}
	100% {
		box-shadow:
			var(--jl-shadow-lg),
			0 0 0 0 rgba(163, 0, 0, 0.0),
			0 0 0 1px rgba(163, 0, 0, 0.25);
	}
}
/* Durante procesamiento: bloquear interacción sin desmontar nada. */
.jcc-gf-card.is-processing .jcc-gf-screen { pointer-events: none; opacity: 0.85; transition: opacity var(--jl-ts); }

/* ═══ Logo ═══ */
.jcc-gf-logo {
	display: flex;
	justify-content: center;
	margin-bottom: 22px;
	filter: drop-shadow(0 6px 14px rgba(163, 0, 0, 0.14));
}
.jcc-gf-logo-img {
	max-height: 96px;
	max-width: 300px;
	height: auto;
	width: auto;
	display: block;
}

/* ═══ Screens dentro de la card ═══ */
.jcc-gf-screen { display: none; }
.jcc-gf-screen.is-active {
	display: flex;
	flex-direction: column;
	align-items: center;
	animation: jgf-slide-in 0.4s var(--jl-ts-spring) both;
}
@keyframes jgf-slide-in {
	from { opacity: 0; transform: translateX(12px); }
	to   { opacity: 1; transform: none; }
}

.jcc-gf-title {
	font-family: var(--jl-font-display);
	font-weight: 400;
	font-size: clamp(28px, 3.4vw, 40px);
	color: var(--jl-red);
	line-height: 1.15;
	text-align: center;
	margin-bottom: 6px;
}
.jcc-gf-sub {
	color: var(--jl-t2);
	font-size: clamp(16px, 1.8vw, 21px);
	text-align: center;
	margin-bottom: 22px;
}

/* ═══ Pantalla 1: DNI + teclado ═══ */
.jcc-gf-dni-display {
	width: min(440px, 100%);
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.10);
	border-radius: var(--jl-r-sm);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03) inset;
	font-size: clamp(32px, 4vh, 44px);
	letter-spacing: 0.16em;
	text-align: center;
	padding: 12px 22px;
	font-variant-numeric: tabular-nums;
	min-height: 74px;
	transition: border-color var(--jl-ts), box-shadow var(--jl-ts-spring);
}
.jcc-gf-dni-display.has-value {
	border-color: var(--jl-red);
	box-shadow: 0 0 0 4px rgba(163, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.03) inset;
}
.jcc-gf-dni-display.is-shake { animation: jgf-shake 300ms ease; border-color: var(--jl-red); }
@keyframes jgf-shake {
	25% { transform: translateX(-8px); }
	50% { transform: translateX(8px); }
	75% { transform: translateX(-5px); }
}

.jcc-gf-hint { color: var(--jl-t3); font-size: 15px; margin: 8px 0 20px; }

.jcc-gf-keypad {
	display: grid;
	grid-template-columns: repeat(3, minmax(110px, 148px));
	gap: 12px;
}
.jcc-gf-key {
	height: clamp(72px, 9.5vh, 88px);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-family: var(--jl-font-body);
	font-size: clamp(28px, 3.2vh, 36px);
	font-weight: 500;
	color: var(--jl-t1);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 255, 0.82) 100%);
	border: 1px solid rgba(255, 255, 255, 0.85);
	border-radius: var(--jl-r-md);
	box-shadow: var(--jl-shadow-key);
	cursor: pointer;
	transition: transform var(--jl-ts-spring), border-color var(--jl-ts), box-shadow var(--jl-ts);
}
.jcc-gf-key:active {
	transform: scale(0.95);
	border-color: rgba(163, 0, 0, 0.30);
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.8) inset,
		0 4px 8px rgba(163, 0, 0, 0.08),
		0 12px 24px -4px rgba(163, 0, 0, 0.18);
}
.jcc-gf-key--del { font-size: 19px; font-weight: 600; color: var(--jl-red); }
.jcc-gf-key--del svg { flex-shrink: 0; }
.jcc-gf-key--go {
	font-size: clamp(19px, 2.2vh, 24px);
	font-weight: 600;
	color: var(--jl-tw);
	background: linear-gradient(180deg, #38B076 0%, var(--jl-green) 60%, var(--jl-green-dark) 100%);
	border: none;
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.25) inset,
		0 -2px 0 rgba(0, 0, 0, 0.15) inset,
		0 2px 4px rgba(46, 153, 100, 0.25),
		0 8px 20px -4px rgba(46, 153, 100, 0.35);
}
.jcc-gf-key--go:disabled {
	background: linear-gradient(180deg, #c6d4cc 0%, #b3c4ba 100%);
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.3) inset;
	cursor: not-allowed;
	transform: none;
}

/* ═══ Pantalla 2: Catálogo ═══ */
.jcc-gf-hoy { width: 100%; }

.jcc-gf-card-hoy {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	text-align: left;
	font-family: inherit;
	color: inherit;
	background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(248, 253, 250, 0.95) 100%);
	border: 2px solid var(--jl-green);
	border-radius: var(--jl-r-lg);
	padding: 24px 28px;
	cursor: pointer;
	box-shadow: var(--jl-shadow-key);
	transition: transform var(--jl-ts-spring), box-shadow var(--jl-ts);
}
.jcc-gf-card-hoy:active { transform: scale(0.98); }

.jcc-gf-badge {
	display: inline-block;
	background: var(--jl-green);
	color: var(--jl-tw);
	font-weight: 700;
	font-size: 15px;
	padding: 5px 12px;
	border-radius: var(--jl-r-sm);
	letter-spacing: 0.06em;
	margin-bottom: 8px;
	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.25) inset, 0 2px 6px rgba(46, 153, 100, 0.30);
}
.jcc-gf-badge--feriado { background: var(--jl-red); box-shadow: 0 1px 0 rgba(255, 255, 255, 0.25) inset, 0 2px 6px rgba(163, 0, 0, 0.30); }

.jcc-gf-card-nombre { font-size: clamp(21px, 2.2vw, 27px); font-weight: 700; letter-spacing: -0.01em; }
.jcc-gf-card-fecha  { color: var(--jl-t2); font-size: 16px; margin-top: 3px; }
.jcc-gf-card-precio { font-size: clamp(24px, 2.6vw, 34px); font-weight: 700; white-space: nowrap; font-variant-numeric: tabular-nums; }

.jcc-gf-otro-toggle {
	margin-top: 18px;
	background: none;
	border: none;
	font-family: inherit;
	font-size: clamp(17px, 1.8vw, 21px);
	color: var(--jl-red);
	font-weight: 600;
	cursor: pointer;
	padding: 14px 22px;
	min-height: 56px;
	border-radius: var(--jl-r-sm);
	transition: background var(--jl-ts), transform var(--jl-ts);
}
.jcc-gf-otro-toggle:active { background: var(--jl-red-bg); transform: scale(0.97); }

.jcc-gf-otros {
	width: 100%;
	max-height: 34vh;
	overflow-y: auto;
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-top: 6px;
	padding: 2px;
}
.jcc-gf-card-otro {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	text-align: left;
	font-family: inherit;
	color: inherit;
	font-size: 18px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 255, 0.82) 100%);
	border: 1px solid rgba(255, 255, 255, 0.85);
	border-radius: var(--jl-r-md);
	padding: 14px 20px;
	min-height: 64px;
	cursor: pointer;
	box-shadow: var(--jl-shadow-key);
	transition: transform var(--jl-ts-spring), border-color var(--jl-ts);
}
.jcc-gf-card-otro:active { transform: scale(0.98); border-color: rgba(163, 0, 0, 0.30); }
.jcc-gf-card-otro .jcc-gf-card-precio { font-size: 22px; }
.jcc-gf-card-otro .jcc-gf-badge { font-size: 12px; padding: 3px 8px; margin-bottom: 4px; }

/* ═══ Pantalla 3: Confirmación ═══ */
.jcc-gf-confirm-card {
	width: min(480px, 100%);
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: var(--jl-r-lg);
	box-shadow: var(--jl-shadow-key);
	padding: 30px 36px;
	text-align: center;
	margin-top: 10px;
}
.jcc-gf-confirm-card .nombre { font-size: clamp(22px, 2.4vw, 30px); font-weight: 700; letter-spacing: -0.01em; }
.jcc-gf-confirm-card .fecha  { color: var(--jl-t2); font-size: 19px; margin-top: 6px; }
.jcc-gf-confirm-card .precio { font-size: clamp(32px, 3.6vw, 44px); font-weight: 700; color: var(--jl-green-dark); margin-top: 12px; font-variant-numeric: tabular-nums; }

/* ═══ Acciones centradas (Volver / Confirmar / Cancelar) ═══ */
.jcc-gf-actions {
	display: flex;
	justify-content: center;
	gap: 16px;
	margin-top: 26px;
	width: 100%;
}

.jcc-gf-btn {
	position: relative;
	font-family: inherit;
	font-size: clamp(17px, 1.9vw, 21px);
	font-weight: 600;
	padding: 16px 38px;
	min-height: 64px;
	min-width: 170px;
	border-radius: var(--jl-r-md);
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	transition: transform var(--jl-ts-spring), box-shadow var(--jl-ts), filter var(--jl-ts);
}
.jcc-gf-btn:active { transform: translateY(1px) scale(0.98); }

.jcc-gf-btn--primary {
	color: var(--jl-tw);
	background: linear-gradient(180deg, #38B076 0%, var(--jl-green) 60%, var(--jl-green-dark) 100%);
	border: none;
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.25) inset,
		0 -2px 0 rgba(0, 0, 0, 0.15) inset,
		0 2px 4px rgba(46, 153, 100, 0.25),
		0 8px 20px -4px rgba(46, 153, 100, 0.35);
}
.jcc-gf-btn--secondary {
	color: var(--jl-t1);
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 255, 0.82) 100%);
	border: 1px solid rgba(0, 0, 0, 0.10);
	box-shadow: var(--jl-shadow-key);
}
.jcc-gf-btn--secondary:active { border-color: rgba(163, 0, 0, 0.30); }
.jcc-gf-btn--light {
	background: #fff;
	color: var(--jl-red);
	border: 1px solid #fff;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18);
}

/* Spinner embebido en CTA durante procesamiento (patrón login) */
.jcc-gf-btn.is-loading,
.jcc-gf-key--go.is-loading { pointer-events: none; filter: saturate(0.8); }
.jcc-gf-btn.is-loading::after,
.jcc-gf-key--go.is-loading::after {
	content: '';
	width: 18px; height: 18px;
	border: 2px solid rgba(255, 255, 255, 0.35);
	border-top-color: #fff;
	border-radius: 50%;
	animation: jgf-spin 0.7s linear infinite;
	margin-left: 4px;
	flex-shrink: 0;
}
@keyframes jgf-spin { to { transform: rotate(360deg); } }

/* ═══ Pantalla 4: QR ═══ */
.jcc-gf-qr-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: clamp(28px, 5vw, 64px);
	flex-wrap: wrap;
	margin-top: 6px;
}
.jcc-gf-qr-box {
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.08);
	border-radius: var(--jl-r-lg);
	box-shadow: var(--jl-shadow-key);
	padding: 16px;
	width: clamp(230px, 32vh, 340px);
	height: clamp(230px, 32vh, 340px);
	display: flex;
	align-items: center;
	justify-content: center;
}
.jcc-gf-qr-box svg, .jcc-gf-qr-box img { width: 100%; height: 100%; }

.jcc-gf-pasos {
	list-style: none;
	counter-reset: paso;
	display: flex;
	flex-direction: column;
	gap: 18px;
	max-width: 400px;
}
.jcc-gf-pasos li {
	counter-increment: paso;
	font-size: clamp(18px, 2vw, 23px);
	display: flex;
	align-items: center;
	gap: 16px;
	color: var(--jl-t1);
}
.jcc-gf-pasos li > span { flex: 1; text-align: left; line-height: 1.35; }
.jcc-gf-pasos li b { font-weight: 700; }
.jcc-gf-pasos li::before {
	content: counter(paso);
	flex: 0 0 44px;
	height: 44px;
	background: linear-gradient(135deg, #B81515 0%, var(--jl-red) 50%, var(--jl-red-dark) 100%);
	color: var(--jl-tw);
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-weight: 700;
	font-size: 20px;
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.25) inset,
		0 -2px 0 rgba(0, 0, 0, 0.18) inset,
		0 4px 10px rgba(163, 0, 0, 0.30);
}

.jcc-gf-timer {
	margin-top: 20px;
	font-size: 18px;
	color: var(--jl-t2);
	font-variant-numeric: tabular-nums;
	text-align: center;
}

/* ═══ Feedback full-screen (éxito / error, patrón login) ═══ */
.jcc-gf-feedback {
	position: fixed;
	inset: 0;
	z-index: 10000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
	color: var(--jl-tw);
	opacity: 0;
	pointer-events: none;
	transition: opacity var(--jl-ts);
}
.jcc-gf-feedback.is-active { opacity: 1; pointer-events: auto; }
.jcc-gf-feedback--ok    { background: var(--jl-green); }
.jcc-gf-feedback--error { background: var(--jl-red); }

.jcc-gf-feedback-inner {
	text-align: center;
	max-width: 560px;
	width: 100%;
}
.jcc-gf-feedback.is-active .jcc-gf-feedback-inner { animation: jgf-pop 0.4s var(--jl-ts-spring) both; }
@keyframes jgf-pop {
	from { opacity: 0; transform: scale(0.85); }
	to   { opacity: 1; transform: scale(1); }
}

.jcc-gf-feedback-icon {
	width: clamp(100px, 15vh, 140px);
	height: clamp(100px, 15vh, 140px);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.18);
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 24px;
}
.jcc-gf-feedback-icon svg { width: 58%; height: 58%; }
.jcc-gf-check path, .jcc-gf-cross path {
	stroke: #fff;
	stroke-width: 5;
	stroke-linecap: round;
	stroke-dasharray: 60;
	stroke-dashoffset: 60;
}
.jcc-gf-feedback.is-active .jcc-gf-check path,
.jcc-gf-feedback.is-active .jcc-gf-cross path {
	animation: jgf-draw 500ms ease-out 200ms forwards;
}
@keyframes jgf-draw { to { stroke-dashoffset: 0; } }

.jcc-gf-feedback-title {
	font-family: var(--jl-font-display);
	font-weight: 400;
	font-size: clamp(34px, 5vw, 52px);
	line-height: 1.15;
	margin-bottom: 10px;
}
.jcc-gf-feedback-msg  { font-size: clamp(18px, 2.2vw, 24px); color: rgba(255, 255, 255, 0.92); }
.jcc-gf-feedback-auto { margin-top: 34px; font-size: 17px; color: rgba(255, 255, 255, 0.75); }

.jcc-gf-feedback-actions {
	display: flex;
	justify-content: center;
	margin-top: 30px;
}
.jcc-gf-feedback-btn {
	padding: 18px 42px;
	min-height: 68px;
	background: rgba(255, 255, 255, 0.15);
	border: 1px solid rgba(255, 255, 255, 0.5);
	color: var(--jl-tw);
	border-radius: var(--jl-r-md);
	font-size: 20px;
	font-weight: 600;
	font-family: inherit;
	cursor: pointer;
	transition: background var(--jl-ts), transform var(--jl-ts), box-shadow var(--jl-ts);
}
.jcc-gf-feedback-btn:active { transform: scale(0.98); }
.jcc-gf-feedback-btn--primary {
	background: #fff;
	color: var(--jl-red);
	border-color: #fff;
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.4) inset,
		0 -2px 0 rgba(0, 0, 0, 0.08) inset,
		0 4px 12px rgba(0, 0, 0, 0.18);
}

/* ═══ Aviso de inactividad ═══ */
.jcc-gf-idle {
	position: fixed;
	inset: 0;
	z-index: 10001;
	background: rgba(26, 18, 24, 0.82);
	color: var(--jl-tw);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 26px;
	font-size: clamp(26px, 3.4vw, 36px);
	font-weight: 600;
}

/* ═══ Accesibilidad ═══ */
@media (prefers-reduced-motion: reduce) {
	.jcc-gf { --jl-ts: 0s; --jl-ts-spring: 0s; }
	.jcc-gf *, .jcc-gf *::before, .jcc-gf *::after { animation: none !important; transition: none !important; }
	.jcc-gf-card.is-processing {
		box-shadow: var(--jl-shadow-lg), 0 0 16px 2px rgba(163, 0, 0, 0.35);
	}
	.jcc-gf-feedback.is-active .jcc-gf-check path,
	.jcc-gf-feedback.is-active .jcc-gf-cross path { stroke-dashoffset: 0; }
}
