/* ==========================================================================
   VST Kisan Mitra — Shared chrome styles (ticker, header, sub-nav, footer)
   Loaded by all sub-pages so the top announcement bar + navigation render
   consistently. Brand tokens are defined per-page in :root; sensible
   fallbacks are provided here so the file also works standalone.
   ========================================================================== */

:root {
    --vst-primary: #1F7A3D;
    --vst-primary-dark: #155A2B;
    --vst-primary-light: #E6F2EA;
    --vst-gold: #F5A623;
    --vst-saffron: #E87722;
    --vst-border: #E1E6E2;
    --vst-text: #0E1B14;
    --vst-text-muted: #4B5A52;
}

/* --------------------------------------------------------------------------
   1. TOP FLASH ANNOUNCEMENT TICKER
   -------------------------------------------------------------------------- */
.top-flash-bar {
    background: linear-gradient(90deg, #0E3F1E 0%, #1F7A3D 50%, #0E3F1E 100%);
    color: #ffffff;
    overflow: hidden;
    white-space: nowrap;
    height: 38px;
    display: flex;
    align-items: center;
    position: relative;
    font-size: 13px;
    font-weight: 700;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
}
.flash-ticker-wrapper {
    display: inline-flex;
    align-items: center;
    gap: 40px;
    white-space: nowrap;
    animation: vst-marquee 30s linear infinite;
    will-change: transform;
}
.top-flash-bar:hover .flash-ticker-wrapper {
    animation-play-state: paused;
}
.flash-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #fff;
    text-decoration: none !important;
}
.flash-item i { color: var(--vst-gold); }
@keyframes vst-marquee {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
    .flash-ticker-wrapper { animation-duration: 90s; }
}

/* --------------------------------------------------------------------------
   2. MAIN HEADER (sticky) + LIVE SEARCH FIELD
   -------------------------------------------------------------------------- */
.top-main-header {
    background: #ffffff;
    position: sticky;
    top: 0;
    z-index: 1000;
    box-shadow: 0 4px 20px rgba(14, 27, 20, 0.06);
    border-bottom: 1px solid var(--vst-border);
}
.search-field input {
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.search-field input:focus {
    border-color: var(--vst-primary) !important;
    box-shadow: 0 0 0 3px rgba(31, 122, 61, 0.12);
}

/* --------------------------------------------------------------------------
   3. SECONDARY NAVIGATION BAR
   -------------------------------------------------------------------------- */
.desktop-sub-nav {
    position: sticky;
    top: 70px;
    z-index: 999;
}
.sub-nav-item {
    display: inline-flex;
    align-items: center;
    color: var(--vst-text-muted);
    font-size: 13.5px;
    font-weight: 700;
    padding: 8px 14px;
    border-radius: 10px;
    text-decoration: none !important;
    transition: all 0.2s ease;
    white-space: nowrap;
}
.sub-nav-item:hover {
    color: var(--vst-primary);
    background: var(--vst-primary-light);
}
.sub-nav-item.active {
    color: #ffffff;
    background: var(--vst-primary);
    box-shadow: 0 4px 12px rgba(31, 122, 61, 0.28);
}
.sub-nav-item.active i { color: #ffffff !important; }

/* --------------------------------------------------------------------------
   4. SHARED FOOTER
   -------------------------------------------------------------------------- */
.vst-footer {
    background: #0E1B14;
    color: #ffffff;
}
.vst-footer a { color: #C9D6CD; text-decoration: none; transition: color 0.2s; }
/* --------------------------------------------------------------------------
   4B. SHARED FOOTER HOVER (kept)
   -------------------------------------------------------------------------- */
.vst-footer a:hover { color: var(--vst-gold); }

/* --------------------------------------------------------------------------
   5. SHARED TYPOGRAPHY & UTILITY SCALE (unified with index.html)
      Ensures categories / spares / dealers / profile pages use the exact
      same font-sizes and weights as the homepage product cards.
   -------------------------------------------------------------------------- */
.f-10 { font-size: 10px; }
.f-11 { font-size: 11px; }
.f-12 { font-size: 12px; }
.f-13 { font-size: 13px; }
.f-14 { font-size: 14px; }
.f-15 { font-size: 15px; }
.f-16 { font-size: 16px; }
.f-17 { font-size: 17px; }
.f-18 { font-size: 18px; }
.f-20 { font-size: 20px; }
.f-22 { font-size: 22px; }
.f-24 { font-size: 24px; }
.f-28 { font-size: 28px; }
.f-32 { font-size: 32px; }
.f-36 { font-size: 36px; }
.w-500 { font-weight: 500; }
.w-600 { font-weight: 600; }
.w-700 { font-weight: 700; }
.w-800 { font-weight: 800; }
.w-900 { font-weight: 900; }
.text-vst { color: var(--vst-primary) !important; }
.bg-vst { background-color: var(--vst-primary) !important; }
.text-gold { color: var(--vst-gold) !important; }
.text-vst-muted { color: var(--vst-text-muted) !important; }
.rounded-xl { border-radius: 16px; }
.line-height-120 { line-height: 1.2; }
.line-height-130 { line-height: 1.3; }
.cart-qty-btn { width: 28px; height: 28px; border: 1.5px solid #C9D6CD; border-radius: 8px; background: #fff; color: #0E1B14; font-weight: 800; font-size: 14px; line-height: 0; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; }

