/* The few styles the rebuild adds on top of the original site's stylesheet
   (the expert application form, real dropdowns, form messages). */
[hidden] { display: none !important; }
.contents { display: contents; }
.appearance-none { -webkit-appearance: none; appearance: none; }
.min-h-\[80px\] { min-height: 80px; }
.text-red-600 { color: #dc2626; }
@media (min-width: 640px) { .sm\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
/* Registration box (api/_lib/reg-form.js) — the old GoHighLevel event form's look. */
.reg-box { background: #000; border: 1px solid rgba(255,255,255,.85); border-radius: 8px; padding: 24px 18px 18px; margin: 8px; display: flex; flex-direction: column; gap: 18px; text-align: left; }
.reg-title { color: #fff; font-weight: 700; font-size: 1.05rem; text-align: center; margin: 0; }
.reg-field { display: flex; flex-direction: column; gap: 8px; }
.reg-field label { color: #fff; font-weight: 700; font-size: 1rem; }
.reg-field input { width: 100%; height: 42px; background: #000; color: #fff; border: 1px solid rgba(255,255,255,.85); border-radius: 6px; padding: 0 10px; font-size: 1rem; font-family: inherit; outline: none; }
.reg-field input::placeholder { color: #8a8f99; }
.reg-field input:focus { border-color: hsl(var(--primary)); box-shadow: 0 0 0 2px hsl(var(--primary) / .35); }
.reg-with-icon { position: relative; }
.reg-with-icon .reg-icon { position: absolute; left: 12px; top: 50%; transform: translateY(-50%); color: #8a8f99; }
.reg-with-icon input { padding-left: 36px; }
.reg-button { margin-top: 14px; width: 100%; height: 50px; border: 0; border-radius: 6px; background: hsl(var(--primary)); color: hsl(var(--primary-foreground)); font-weight: 800; font-size: 1rem; cursor: pointer; font-family: inherit; }
.reg-button:hover { filter: brightness(1.08); }
.reg-button:disabled { opacity: .6; cursor: default; }
.reg-error { color: #f87171; font-size: .9rem; margin: 0; }
.reg-done { color: hsl(var(--primary)); font-weight: 700; text-align: center; margin: 0; }
.reg-links { display: flex; justify-content: center; gap: 14px; margin: 6px 0 0; font-size: .9rem; }
.reg-links a { color: #3b82f6; text-decoration: underline; }
.italic { font-style: italic; }
.gap-6 { gap: 1.5rem; }
@media (min-width: 768px) { .md\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
[data-dialog] > [role="dialog"] { max-height: calc(100vh - 2rem); overflow-y: auto; }
select:invalid { color: hsl(var(--muted-foreground)); }
select option { color: hsl(var(--foreground)); }
