/* ExpressParts theme overrides. Loaded after app.css (Bootstrap 4 + Neto base).
   Colour scheme: black + neon blue (matches the old EMS site's #4fcfff accent). Change tokens only. */
:root {
	--emp-bg: #000000;          /* page / header / footer */
	--emp-surface: #101011;     /* cards, panels */
	--emp-line: #30363b;        /* borders */
	--emp-ink: #d0d7dd;         /* body text on black */
	--emp-ink-strong: #ffffff;  /* headings */
	--emp-muted: #8b949e;
	--emp-accent: #4fcfff;      /* neon blue: links, buttons, focus */
	--emp-accent-ink: #000000;  /* text on neon buttons */
}

body { background: var(--emp-bg); }
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4 { color: var(--emp-ink-strong); }
a, .btn-link { color: var(--emp-accent); }
a:hover, .btn-link:hover { color: var(--emp-ink-strong); }
:focus-visible { outline: 3px solid var(--emp-accent); outline-offset: 2px; }

body { color: var(--emp-ink); }
.card, .list-group-item, .modal-content, .dropdown-menu { background: var(--emp-surface); border-color: var(--emp-line); color: var(--emp-ink); }

/* Product page: delivery / collection / fitting */
.emp-fulfilment { display: grid; gap: .75rem; }
.emp-fulfilment__option {
	padding: .75rem 1rem;
	background: var(--emp-surface);
	border-radius: .25rem;
}
.emp-fulfilment__option > :last-child { margin-bottom: 0; }

/* Keep long tyre designations readable on phones (brief L16, 360px). */
.card-title, .wrapper-product-title h1 { overflow-wrap: anywhere; }

/* Size finder (data-driven) */
.emp-finder {
	background-color: var(--emp-surface);
	border-top: 1px solid var(--emp-line);
	border-bottom: 1px solid var(--emp-line);
}
.emp-finder h2,
.emp-finder .h3 {
	color: var(--emp-ink-strong);
}
.emp-finder__fieldset {
	border: 0;
	padding: 0;
	margin: 0;
}
.emp-finder label,
.emp-finder__label {
	color: var(--emp-ink-strong);
	font-weight: 600;
	font-size: 0.9rem;
	margin-bottom: 0.35rem;
}
.emp-finder__hint {
	color: var(--emp-muted);
	font-weight: 400;
	font-size: 0.8rem;
}
.emp-finder .form-control {
	background-color: var(--emp-bg);
	color: var(--emp-ink-strong);
	border: 1px solid var(--emp-line);
	border-radius: 0.25rem;
	height: calc(1.5em + 1rem + 2px);
	padding: 0.5rem 0.75rem;
}
.emp-finder select.form-control optgroup {
	background-color: var(--emp-surface);
	color: var(--emp-ink-strong);
	font-weight: 700;
}
.emp-finder select.form-control option {
	background-color: var(--emp-bg);
	color: var(--emp-ink-strong);
}
.emp-finder .form-control:focus {
	background-color: var(--emp-bg);
	color: var(--emp-ink-strong);
	border-color: var(--emp-accent);
	outline: 2px solid var(--emp-accent);
	outline-offset: 1px;
	box-shadow: none;
}
.emp-finder .form-control:disabled {
	background-color: var(--emp-surface);
	color: var(--emp-muted);
	border-color: var(--emp-line);
	opacity: 0.5;
	cursor: not-allowed;
}
.emp-finder .form-control::placeholder {
	color: var(--emp-muted);
	opacity: 0.8;
}
.emp-finder .btn-primary,
.emp-finder__btn {
	background-color: var(--emp-accent);
	border-color: var(--emp-accent);
	color: var(--emp-accent-ink);
	font-weight: 700;
	height: calc(1.5em + 1rem + 2px);
	transition: opacity 0.15s ease-in-out;
}
.emp-finder .btn-primary:hover,
.emp-finder .btn-primary:focus,
.emp-finder__btn:hover,
.emp-finder__btn:focus {
	background-color: var(--emp-accent);
	border-color: var(--emp-accent);
	color: var(--emp-accent-ink);
	opacity: 0.9;
}
.emp-finder .btn-primary:focus-visible,
.emp-finder__btn:focus-visible {
	outline: 3px solid var(--emp-accent);
	outline-offset: 2px;
}


/* Parts site: hide leftover Express Motorcycle Services workshop content that the CP still outputs
   (fully-booked notice, online-booking links, service-kit finder). Remove once CP content is rewritten. */
.ems-home__notice,
#ems-kit-finder,
.ems-kit-finder-box,
a[href*="jcs.com.au"],
a[href*="online-booking"],
a[href*="expressmotorcycleservices.com"] { display: none !important; }
