/* ==========================================
   FORCE OVERRIDE - Milk & Orange Theme
   Maximum Priority Styles
   ========================================== */

/* ==================== CORE VARIABLE OVERRIDE ====================
   The base css/style.css still defines --color-primary etc. as the
   OLD emerald-green theme. Many pages (katalog, o-nas, kontakt,
   szczegoly) and shared components (navbar .admin-link, active nav
   underline) reference var(--color-primary) / var(--shadow-green)
   directly, so simply overriding specific selectors below is not
   enough — the variables themselves must be repointed to orange,
   otherwise green accents and glows keep leaking through. */
:root {
    --color-primary: #FF6B35 !important;
    --color-primary-dark: #FF5722 !important;
    --color-primary-light: #FF8A65 !important;
    --color-black: #2D2D2D !important;
    --shadow-green: 0 0 20px rgba(255, 107, 53, 0.3), 0 0 40px rgba(255, 107, 53, 0.1) !important;
}

/* ==================== ULTRA PRIORITY ==================== */

/* BODY - FORCE WHITE BACKGROUND (structural containers only, NOT every element
   inside body — forcing background on every single text element fragments
   sections into mismatched rectangles instead of one clean background) */
html,
body,
#root,
.app,
.container,
.wrapper {
    background-color: #FFFEF9 !important;
    background: #FFFEF9 !important;
}

body {
    color: #2D2D2D !important;
}

/* NAVIGATION - FORCE CREAM (structural containers only — NOT "nav *", which
   would also force the cream background onto the orange logo-icon badge
   and the orange Admin button, wiping out their intentional accent color) */
nav,
.nav,
.navbar,
header,
.header,
.navbar-container {
    background: #FFF9F0 !important;
    background-color: #FFF9F0 !important;
    border-bottom: 2px solid #E8E1D5 !important;
}

.navbar-brand,
.logo,
.logo-text {
    color: #2D2D2D !important;
}

.nav-link,
.nav-menu a,
nav a {
    color: #2D2D2D !important;
}

.nav-link:hover,
nav a:hover {
    color: #FF6B35 !important;
    background-color: #FFF3EC !important;
}

.nav-link.active {
    color: #FF6B35 !important;
    background-color: #FFE9DE !important;
}

/* Logo icon badge & Admin button keep their orange accent — explicitly
   re-assert (higher specificity than the generic "nav a" color rule above) */
.logo-icon {
    background: linear-gradient(135deg, #FF6B35, #FF5722) !important;
    color: #FFFFFF !important;
}

.admin-link,
.admin-link i,
nav a.admin-link {
    color: #FFFFFF !important;
    background: linear-gradient(135deg, #FF6B35, #FF5722) !important;
}

.admin-link:hover,
nav a.admin-link:hover {
    color: #FFFFFF !important;
    background: linear-gradient(135deg, #FF5722, #E64A19) !important;
}

/* BUTTONS - FORCE ORANGE */
button,
.btn,
.button,
.btn-primary,
input[type="submit"],
input[type="button"],
.cta-button,
a.btn {
    background: linear-gradient(135deg, #FF6B35 0%, #FF5722 100%) !important;
    background-color: #FF6B35 !important;
    color: #FFFFFF !important;
    border: none !important;
    border-color: #FF6B35 !important;
}

button:hover,
.btn:hover,
.btn-primary:hover {
    background: linear-gradient(135deg, #FF5722 0%, #E64A19 100%) !important;
    background-color: #FF5722 !important;
}

.btn-outline,
.btn-secondary {
    background: transparent !important;
    background-color: transparent !important;
    color: #FF6B35 !important;
    border: 2px solid #FF6B35 !important;
}

.btn-outline:hover {
    background: #FF6B35 !important;
    background-color: #FF6B35 !important;
    color: #FFFFFF !important;
}

/* SECTIONS - FORCE WHITE/CREAM */
section,
.section,
main,
.main-content {
    background: #FFFEF9 !important;
    background-color: #FFFEF9 !important;
    color: #2D2D2D !important;
}

/* NOTE: intentionally no automatic even/odd section alternation here —
   each section defines its own intentional background color; forcing an
   arbitrary alternation ignores that design and clashes with it. */

/* HERO SECTION */
.hero,
.hero-section,
.hero-content {
    background: linear-gradient(135deg, #FFF9F0 0%, #FFF5E6 100%) !important;
    color: #2D2D2D !important;
}

.hero h1,
.hero-title {
    color: #2D2D2D !important;
}

.hero p {
    color: #5A5A5A !important;
}

/* CARDS - FORCE WHITE */
.card,
.car-card,
.product-card,
.card-body {
    background: #FFFFFF !important;
    background-color: #FFFFFF !important;
    border: 2px solid #E8E1D5 !important;
    color: #2D2D2D !important;
}

.card:hover,
.car-card:hover {
    border-color: #FFE0D6 !important;
}

.car-card h3,
.card-title,
.card h3 {
    color: #2D2D2D !important;
}

.car-card p,
.card-text,
.card p {
    color: #5A5A5A !important;
}

/* PRICES - FORCE ORANGE */
.price,
.car-price,
.product-price,
.cena {
    color: #FF6B35 !important;
}

/* FORMS - FORCE WHITE INPUTS */
input,
textarea,
select,
.form-control,
.input {
    background: #FFFFFF !important;
    background-color: #FFFFFF !important;
    color: #2D2D2D !important;
    border: 2px solid #D4C9B8 !important;
}

input::placeholder,
textarea::placeholder {
    color: #8B8B8B !important;
}

input:focus,
textarea:focus,
select:focus {
    border-color: #FF6B35 !important;
    box-shadow: 0 0 0 4px #FFE0D6 !important;
}

label {
    color: #2D2D2D !important;
}

/* MODAL - FORCE WHITE */
.modal,
.modal-content,
.modal-dialog {
    background: #FFFFFF !important;
    background-color: #FFFFFF !important;
    color: #2D2D2D !important;
}

.modal-header {
    background: #FFF9F0 !important;
    background-color: #FFF9F0 !important;
}

.modal-title {
    color: #2D2D2D !important;
}

/* FOOTER - FORCE BEIGE */
footer,
.footer {
    background: #F5EFE7 !important;
    background-color: #F5EFE7 !important;
    color: #2D2D2D !important;
    border-top: 3px solid #FF6B35 !important;
}

footer a {
    color: #5A5A5A !important;
}

footer a:hover {
    color: #FF6B35 !important;
}

/* TEXT COLORS */
h1, h2, h3, h4, h5, h6 {
    color: #2D2D2D !important;
}

p,
span,
div,
li {
    color: #2D2D2D !important;
}

/* LINKS */
a {
    color: #FF6B35 !important;
}

a:hover {
    color: #FF5722 !important;
}

/* BUTTON-LIKE LINKS/ELEMENTS keep WHITE text on their orange background —
   the generic "a { color: orange }" rule above would otherwise make button
   labels orange-on-orange (invisible) on every <a> styled as a solid button. */
a.hero-btn-primary,
a.hero-btn-secondary:hover,
a.btn-new-primary,
a.admin-link,
a.btn,
a.button,
a.cta-button,
.hero-btn-primary,
.btn-new-primary,
.btn-filter,
.btn-submit {
    color: #FFFFFF !important;
}

a.hero-btn-primary i,
a.btn-new-primary i,
.hero-btn-primary i,
.btn-new-primary i,
.btn-filter i,
.btn-submit i,
.admin-link i,
button i,
.btn i,
.button i {
    color: inherit !important;
}

/* .cta-btn has an intentionally WHITE background with ORANGE text (contrast
   button on a solid-orange CTA section) — must stay orange, not white */
a.cta-btn,
.cta-btn {
    color: #FF6B35 !important;
    background: #FFFFFF !important;
}

a.cta-btn:hover,
.cta-btn:hover {
    color: #FF5722 !important;
    background: #FFFFFF !important;
}

a.cta-btn i,
.cta-btn i {
    color: inherit !important;
}

/* Outline-style buttons/links keep the orange text on transparent bg */
a.hero-btn-secondary,
a.btn-new-secondary,
a.btn-new-outline,
.hero-btn-secondary,
.btn-new-secondary,
.btn-new-outline,
.btn-reset {
    color: #FF6B35 !important;
}

a.hero-btn-secondary:hover,
.hero-btn-secondary:hover {
    color: #FFFFFF !important;
}

/* BADGES */
.badge,
.tag {
    background: #FF6B35 !important;
    background-color: #FF6B35 !important;
    color: #FFFFFF !important;
}

/* STATS */
.stat-number,
.counter {
    color: #FF6B35 !important;
}

.stat-label {
    color: #5A5A5A !important;
}

/* ICONS */
.icon,
i.fa,
i.fas,
i.far {
    color: #FF6B35 !important;
}

/* ...but icons inside solid-orange buttons must inherit the button's WHITE
   text color, otherwise they render orange-on-orange (invisible) */
a.hero-btn-primary i.fas,
a.btn-new-primary i.fas,
a.admin-link i.fas,
button i.fas,
.btn i.fas,
.button i.fas,
.btn-filter i.fas,
.btn-submit i.fas,
.hero-btn-primary i.fas,
.btn-new-primary i.fas {
    color: #FFFFFF !important;
}

/* .cta-btn icon stays orange (white background button) */
a.cta-btn i.fas,
.cta-btn i.fas {
    color: #FF6B35 !important;
}

/* TABLES */
table {
    background: #FFFFFF !important;
}

thead {
    background: #FFF9F0 !important;
}

th {
    color: #2D2D2D !important;
}

td {
    color: #5A5A5A !important;
}

/* TESTIMONIALS */
.testimonial,
.review-card {
    background: #FFFFFF !important;
    border-left: 4px solid #FF6B35 !important;
}

/* PAGINATION */
.pagination a {
    background: #FFFFFF !important;
    border: 2px solid #D4C9B8 !important;
    color: #2D2D2D !important;
}

.pagination a.active {
    background: #FF6B35 !important;
    color: #FFFFFF !important;
}

/* DROPDOWN */
.dropdown-menu {
    background: #FFFFFF !important;
}

.dropdown-item {
    color: #2D2D2D !important;
}

.dropdown-item:hover {
    background: #FFE0D6 !important;
    color: #FF6B35 !important;
}

/* ALERTS */
.alert {
    background: #FFF5E6 !important;
    color: #2D2D2D !important;
}

/* BREADCRUMBS */
.breadcrumb {
    background: #FFF9F0 !important;
}

/* PROGRESS BAR */
.progress {
    background: #FFF5E6 !important;
}

.progress-bar {
    background: linear-gradient(90deg, #FF6B35 0%, #FF8A65 100%) !important;
}

/* CAROUSEL CONTROLS */
.carousel-control-prev,
.carousel-control-next {
    background: rgba(255, 107, 53, 0.8) !important;
}

.carousel-indicators button {
    background: #FF6B35 !important;
}

/* SCROLLBAR */
::-webkit-scrollbar-track {
    background: #FFF9F0 !important;
}

::-webkit-scrollbar-thumb {
    background: #FF6B35 !important;
}

/* LEFTOVER DARK-THEME CARDS/SECTIONS (o-nas.html and any other page using
   the old dark component classes from css/new-layout.css / css/harmony.css:
   .process-step-content, .stats-banner, .service-item-new, etc. still have
   a dark navy background from the old theme, while the generic "TEXT COLORS"
   rule above forces dark text on top of them — resulting in illegible
   dark-on-dark text). Force these onto light cream/white cards instead. */
.process-step-content,
.stats-banner,
.service-item-new,
.featured-new {
    background: #FFFFFF !important;
    border: 2px solid #E8E1D5 !important;
}

.process-step-title,
.service-item-new h3,
.service-item-new h4 {
    color: #2D2D2D !important;
}

.process-step-description,
.stat-banner-number,
.stat-banner-label,
.service-item-new p {
    color: #5A5A5A !important;
}

.stat-banner-number {
    color: #2D2D2D !important;
}

.process-step-icon i,
.stat-banner-icon i {
    color: #FF6B35 !important;
}

/* RESET DARK COLORS */
[class*="dark"],
[class*="black"],
[class*="gray-900"],
[class*="gray-800"] {
    background: #FFFEF9 !important;
    color: #2D2D2D !important;
}

/* RESET GREEN COLORS */
[class*="green"],
[class*="emerald"],
.btn-success {
    background: #FF6B35 !important;
    color: #FFFFFF !important;
}
