/* Enzo Film Warranty Tracker - public styles */
.enzo-wt-lookup {
	--enzo-bg: #0f1115;
	--enzo-card: #171a21;
	--enzo-line: #2a2f3a;
	--enzo-text: #f4f6fb;
	--enzo-muted: #9aa4b6;
	--enzo-accent: #e11d2a;
	--enzo-accent-2: #ff3b47;
	--enzo-ok: #16a34a;
	--enzo-warn: #d97706;
	max-width: 620px;
	margin: 2rem auto;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

.enzo-wt-card {
	background: var(--enzo-card);
	border: 1px solid var(--enzo-line);
	border-radius: 16px;
	padding: 28px;
	box-shadow: 0 20px 50px rgba(0, 0, 0, 0.35);
}

.enzo-wt-heading {
	margin: 0 0 18px;
	color: var(--enzo-text);
	font-size: 1.5rem;
	font-weight: 700;
	letter-spacing: -0.01em;
	text-align: center;
}

.enzo-wt-field {
	display: flex;
	align-items: center;
	gap: 8px;
	background: var(--enzo-bg);
	border: 1px solid var(--enzo-line);
	border-radius: 12px;
	padding: 6px 6px 6px 14px;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.enzo-wt-field:focus-within {
	border-color: var(--enzo-accent);
	box-shadow: 0 0 0 3px rgba(225, 29, 42, 0.18);
}

.enzo-wt-icon { color: var(--enzo-muted); flex: 0 0 auto; }

.enzo-wt-input {
	flex: 1 1 auto;
	background: transparent;
	border: 0;
	outline: none;
	color: var(--enzo-text);
	font-size: 1rem;
	padding: 12px 4px;
	min-width: 0;
}
.enzo-wt-input::placeholder { color: var(--enzo-muted); }

.enzo-wt-button {
	flex: 0 0 auto;
	border: 0;
	cursor: pointer;
	color: #fff;
	background: linear-gradient(135deg, var(--enzo-accent), var(--enzo-accent-2));
	border-radius: 9px;
	padding: 12px 22px;
	font-size: 0.95rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	transition: transform 0.15s ease, opacity 0.15s ease;
}
.enzo-wt-button:hover { transform: translateY(-1px); }
.enzo-wt-button:disabled,
.enzo-wt-button.is-loading { opacity: 0.6; cursor: default; transform: none; }

.enzo-wt-result { margin-top: 18px; }

.enzo-wt-message {
	border-radius: 10px;
	padding: 14px 16px;
	font-size: 0.95rem;
	text-align: center;
}
.enzo-wt-message-loading { color: var(--enzo-muted); }
.enzo-wt-message-error {
	color: #ffd7da;
	background: rgba(225, 29, 42, 0.12);
	border: 1px solid rgba(225, 29, 42, 0.35);
}

.enzo-wt-details {
	border: 1px solid var(--enzo-line);
	border-radius: 12px;
	overflow: hidden;
	background: var(--enzo-bg);
	animation: enzo-fade 0.25s ease;
}
@keyframes enzo-fade { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }

.enzo-wt-details-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	padding: 16px 18px;
	border-bottom: 1px solid var(--enzo-line);
}
.enzo-wt-details-title { color: var(--enzo-text); font-weight: 700; font-size: 1.05rem; }

.enzo-wt-details-body { padding: 6px 18px; }
.enzo-wt-row {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	padding: 11px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}
.enzo-wt-row:last-child { border-bottom: 0; }
.enzo-wt-label { color: var(--enzo-muted); font-size: 0.85rem; text-transform: uppercase; letter-spacing: 0.04em; }
.enzo-wt-value { color: var(--enzo-text); font-weight: 600; text-align: right; }

.enzo-wt-validity {
	padding: 14px 18px;
	font-weight: 600;
	text-align: center;
}
.enzo-wt-details.is-valid .enzo-wt-validity { color: #86efac; background: rgba(22, 163, 74, 0.12); }
.enzo-wt-details.is-invalid .enzo-wt-validity { color: #fca5a5; background: rgba(225, 29, 42, 0.1); }

/* Status badges (shared key names with admin). */
.enzo-wt-status {
	font-size: 0.75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	padding: 5px 10px;
	border-radius: 999px;
}
.enzo-badge-active  { color: #0b3d1f; background: #86efac; }
.enzo-badge-expired { color: #4a1d05; background: #fed7aa; }
.enzo-badge-claimed { color: #1e293b; background: #cbd5e1; }

@media (max-width: 480px) {
	.enzo-wt-field { flex-wrap: wrap; }
	.enzo-wt-button { width: 100%; margin-top: 6px; }
	.enzo-wt-value { text-align: left; }
}
