/* =================================================================
   CyberTrax.ai — minor overrides on top of Tailwind CDN.
   Tailwind handles 99% of styling. This file is for global polish only.
   ================================================================= */

html { scroll-behavior: smooth; }

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    overflow-x: hidden;
    text-rendering: optimizeLegibility;
}

/* Display typography — Orbitron is geometric and reads best with a
   touch more line-height and slight letter-spacing on large sizes. */
.font-display {
    font-feature-settings: "ss01", "kern";
    line-height: 1.08;
}

/* Eyebrow / uppercase pills — slightly tighter for Orbitron */
.font-display.uppercase,
.uppercase.font-display {
    letter-spacing: 0.06em;
}

/* Selection */
::selection {
    background: rgba(14, 165, 233, 0.35);
    color: #fff;
}

/* Custom scrollbar (WebKit) */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: #0B0F19; }
::-webkit-scrollbar-thumb {
    background: #161F36;
    border-radius: 8px;
    border: 2px solid #0B0F19;
}
::-webkit-scrollbar-thumb:hover { background: rgba(14, 165, 233, 0.4); }

/* Firefox scrollbar */
html { scrollbar-color: #161F36 #0B0F19; scrollbar-width: thin; }

/* Focus rings — accessible, on-brand */
:focus-visible {
    outline: 2px solid #0EA5E9;
    outline-offset: 2px;
    border-radius: 4px;
}

/* Form controls */
input, select, textarea {
    background-color: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(148, 163, 220, 0.18);
    color: #E6EAF5;
    font-family: inherit;
    transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}
input::placeholder, textarea::placeholder { color: rgba(230, 234, 245, 0.40); }

input:focus, select:focus, textarea:focus {
    outline: none;
    border-color: #0EA5E9;
    background-color: rgba(255, 255, 255, 0.05);
    box-shadow: 0 0 0 3px rgba(14, 165, 233, 0.18);
}

select option { background: #10172A; color: #E6EAF5; }

/* Gradient text fix — Orbitron + bg-clip-text can clip descenders on
   some browsers; pad slightly so glyphs aren't cropped. */
.bg-clip-text {
    padding-bottom: 0.05em;
}

/* Reduced motion respect */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after {
        animation-duration: 0.001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.001ms !important;
        scroll-behavior: auto !important;
    }
}

/* Anchor offset for sticky nav */
section[id] { scroll-margin-top: 80px; }
