/* =====================================================================================================
   AUTH 2026 OVERLAY (S39 10/18, Captain: "/register-circuits & /register-official and the zone login
   pages - they should all be re-skinned ... one homogenous product. Please convert.")
   The approach of the S34 hitcourt-refresh.css: the battle-tested Falcon STRUCTURE, validation and OTP
   flows stay untouched - this sheet lays the 2026 website's skin (Day / Night tokens from site2026.css,
   which must be linked BEFORE this file) over the auth pages. Scope: body.hc-auth only.
   ===================================================================================================== */

/* !important: theme.min.css / hitcourt-refresh.css set their own body background and heading colours with
   higher specificity - the overlay must win in BOTH themes. */
html body.hc-auth { background: var(--hc-bg) !important; color: var(--hc-ink); font-family: 'Poppins', sans-serif; position: relative; }
body.hc-auth .main { background: transparent !important; }
body.hc-auth h1, body.hc-auth h2, body.hc-auth h3, body.hc-auth h4, body.hc-auth h5 { color: var(--hc-ink) !important; }
/* the hexagon lattice, same as the website heroes */
body.hc-auth::before { content: ''; position: fixed; inset: 0; pointer-events: none; opacity: .9; z-index: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='97' viewBox='0 0 56 97'%3E%3Cpath d='M28 1 54 16.5v31L28 63 2 47.5v-31Z M28 64.6 54 80v31L28 126.5 2 111V80Z M0 32.3 26 47.8v31L0 94.3Z M56 32.3 30 47.8v31l26 15.5Z' fill='none' stroke='rgba(88,55,235,0.16)' stroke-width='1.3'/%3E%3C/svg%3E");
    -webkit-mask-image: radial-gradient(90% 90% at 50% 20%, #000 0%, transparent 90%); mask-image: radial-gradient(90% 90% at 50% 20%, #000 0%, transparent 90%); }
html[data-hc-theme="night"] body.hc-auth::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='97' viewBox='0 0 56 97'%3E%3Cpath d='M28 1 54 16.5v31L28 63 2 47.5v-31Z M28 64.6 54 80v31L28 126.5 2 111V80Z M0 32.3 26 47.8v31L0 94.3Z M56 32.3 30 47.8v31l26 15.5Z' fill='none' stroke='rgba(155,130,255,0.26)' stroke-width='1.3'/%3E%3C/svg%3E"); }
body.hc-auth .main, body.hc-auth .container-fluid { position: relative; z-index: 1; }

/* the Falcon decorative blobs retire */
body.hc-auth .bg-auth-circle-shape, body.hc-auth .bg-auth-circle-shape-2, body.hc-auth .bg-auth-card-shape { display: none !important; }

/* the card */
body.hc-auth .card { background: var(--hc-bg2); border: 1px solid var(--hc-edge); border-radius: 22px; box-shadow: var(--hc-card-sh); overflow: hidden; }
body.hc-auth .card .bg-circle-shape, body.hc-auth .card-header.bg-shape { background: linear-gradient(140deg, var(--hc-accent), var(--hc-accent-2)) !important; }
/* the left welcome panel wears the house gradient */
body.hc-auth .bg-card-gradient { background: linear-gradient(145deg, var(--hc-accent), var(--hc-accent-2)) !important; }

/* type */
body.hc-auth h1, body.hc-auth h2, body.hc-auth h3, body.hc-auth h4, body.hc-auth h5 { color: var(--hc-ink); font-weight: 700; }
body.hc-auth p, body.hc-auth em, body.hc-auth small { color: var(--hc-mut); }
body.hc-auth .form-label, body.hc-auth .form-check-label, body.hc-auth label { color: var(--hc-ink); font-weight: 500; }
body.hc-auth a { color: var(--hc-accent); }
body.hc-auth .text-600, body.hc-auth .text-dark, body.hc-auth .fs--1.text-dark { color: var(--hc-mut) !important; }

/* inputs - the day-mode outline standard (--hc-edge) */
body.hc-auth .form-control, body.hc-auth .form-select { background: var(--hc-bg); color: var(--hc-ink); border: 1px solid var(--hc-edge); border-radius: 12px; padding: .6rem .85rem; font-family: 'Poppins', sans-serif; }
body.hc-auth .form-control:focus, body.hc-auth .form-select:focus { background: var(--hc-bg); color: var(--hc-ink); border-color: var(--hc-accent); box-shadow: 0 0 0 3px var(--hc-glow); }
body.hc-auth .form-control::placeholder { color: var(--hc-mut); opacity: .75; }
body.hc-auth .input-group-text { background: var(--hc-bg3); color: var(--hc-mut); border: 1px solid var(--hc-edge); border-radius: 12px; }
body.hc-auth .input-group > .form-control { border-radius: 0 12px 12px 0; }
body.hc-auth .input-group > :first-child { border-radius: 12px 0 0 12px; }
body.hc-auth .form-check-input { border: 1px solid var(--hc-edge); background-color: var(--hc-bg); }
body.hc-auth .form-check-input:checked { background-color: var(--hc-accent); border-color: var(--hc-accent); }
body.hc-auth .otp-field input { background: var(--hc-bg); color: var(--hc-ink); border: 1px solid var(--hc-edge); border-radius: 10px; }

/* buttons */
body.hc-auth .btn-primary { background: linear-gradient(110deg, var(--hc-accent), var(--hc-accent-2)); border: 0; border-radius: 999px; font-weight: 600; padding: .62rem 1.25rem; box-shadow: 0 8px 22px var(--hc-glow); }
body.hc-auth .btn-primary:hover { background: linear-gradient(110deg, var(--hc-accent), var(--hc-accent-2)); transform: translateY(-1px); }
body.hc-auth .btn-outline-secondary, body.hc-auth .btn-outline-primary, body.hc-auth .btn-outline-google-plus { color: var(--hc-ink); border: 1px solid var(--hc-edge); border-radius: 999px; font-weight: 600; background: transparent; }
body.hc-auth .btn-outline-secondary:hover, body.hc-auth .btn-outline-primary:hover, body.hc-auth .btn-outline-google-plus:hover { border-color: var(--hc-accent); color: var(--hc-accent); background: transparent; }
body.hc-auth .btn-light { border-radius: 999px; font-weight: 600; }

/* validation + flash */
body.hc-auth label.error { color: #e5484d; font-weight: 500; font-size: .82rem; }
body.hc-auth .alert { background: var(--hc-bg3); color: var(--hc-ink); border: 1px solid var(--hc-edge); border-radius: 14px; }

/* the floating sun / half-moon switch (site2026.js wires #hcModeToggle; here a standalone inline script does) */
body.hc-auth .hc-authmode { position: fixed; top: 14px; right: 14px; z-index: 50; width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--hc-edge); background: var(--hc-bg2); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; font-size: 1.05rem; line-height: 1; color: var(--hc-ink); }
html[data-hc-theme="day"] body.hc-auth .hc-authmode .hc-sun { display: none; }
html[data-hc-theme="night"] body.hc-auth .hc-authmode .hc-moon { display: none; }
