:root {
    --bs-blue: #0d6efd;
    --bs-indigo: #6610f2;
    --bs-purple: #6f42c1;
    --bs-pink: #d63384;
    --bs-red: #dc3545;
    --bs-orange: #fd7e14;
    --bs-yellow: #ffc107;
    --bs-green: #198754;
    --bs-teal: #20c997;
    --bs-cyan: #0dcaf0;
    --bs-white: #fff;
    --bs-gray-dark: #343a40;
    --bs-gray-100: #f8f9fa;
    --bs-gray-200: #e9ecef;
    --bs-gray-300: #dee2e6;
    --bs-gray-700: #495057;
    --bs-gray-800: #343a40;
    --bs-gray-900: #212529;
    --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
    
    --bs-body-bg: #ffffff;
    --bs-gray: #6c757d;
    --bs-gray-400: #ced4da;
    --bs-gray-500: #adb5bd;
    --bs-gray-600: #6c757d;
    --bs-success: #00c853;
    --bs-success-lighter: #00d057;
    --bs-info: #0076FF;
    --bs-warning: #ffc107;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #212529;
}


:root {
    --bs-primary: #0d6efd; 
    --bs-primary-bg: #ffffff; 
    --bs-primary-text: #212529;
    --bs-secondary-bg: #eeeeee; 
    --bs-secondary-text: #212529; 
    --bs-accent: #07c152; 
    --bs-footer-bg: #ffffff; 
    --bs-footer-text: #212529; 
    
    --bs-preloader-second: #f21559; 
    --heading-prices-choose: #d63384;
    --bs-delete-lighter: #ff5e85;
    
    --bs-primary-lighter: #6AA4FF;
    --bs-primary-darker: #004CCB;
    --bs-secondary-lighter: #eeeeee;
    --bs-secondary-darker: #eee;
    --bs-primary-bg-lighter: #ffffff;
    --bs-primary-bg-darker: #f9f8fa;
    --bs-secondary-bg-lighter: #fff;
    --bs-secondary-bg-darker: #15161b;
    --bs-success-lighter: #00d057;
    --bs-accent-lighter: #00d057;
    --bs-gray: #6c757d;
    --bs-gray-400: #ced4da;
    --bs-gray-500: #adb5bd;
    --bs-gray-600: #6c757d;
    --bs-success: #00c853;
    --bs-info: #0076FF;
    --bs-warning: #ffc107;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #212529;
    
    --bs-body-color: #212529;
    --ip-btn-primary-background: #0d6efd;
    --ip-btn-primary-text: #ffffff;
    --ip-radio-primary-background: #ffffff;
    --ip-radio-primary-text: #212529;
    --ip-radio-primary-border: #0d6efd;
    --ip-radio-checked-background: #0d6efd;
    --ip-radio-checked-text: #ffffff;
    --ip-prices-chosen-background: #f9f8fa;
    --ip-prices-btn-color-text: #ffffff;
    --ip-prices-btn-secondary-background: #00d057;
    --ip-modal-primary-background: #ffffff;
    
    --ip-header-main-bg: #ffffff; 
    --ip-product-icons-text-color: #212529;
    --ip-header-menu-text-color: #6c757d;
    --ip-header-menu-text-color-active: #0d6efd;
    --ip-product-tab-list-nav-link-color: #212529;
    --ip-product-tab-list-nav-link-color-active: #0d6efd;
    --ip-btn-outlined-background: #ffffff;
    --ip-btn-outlined-text: #0d6efd;
    --ip-btn-outlined-secondary-background: #ffffff;
    --ip-btn-outlined-secondary-text: #0d6efd;
    --ip-product-icons-background-color: #ffffff;
    --ip-banner-text: #212529;
    --ip-input-text: #212529; 
    --ip-input-background: #ffffff; 
    --ip-carousel-button-color: #0d6efd;
    --ip-border-radius-boxes: 8px;
    --ip-border-radius-buttons: 50px;
    --ip-border-radius-inputs: 16px;
    --ip-box-shadow-boxes: 0 3px 24px rgba(0, 0, 0, .09);
    --page-max-width: 1200px; 
    --base-font-size: 16px; 
    --base-font-family: 'Arial', sans-serif; 
    --heading-font-family: 'Roboto', sans-serif; 
    --product-box-size: 250px; 


    
    --ip-icon-primary-1: #7f6eff;
    --ip-icon-primary-2: #7e37ff;
    --ip-icon-primary-3: #7c00ff;
    --ip-icon-primary-4: #6120de;
    --ip-icon-primary-5: #4300c4;

    --ip-icon-primary-accent: #f5a8f5;

    --ip-icon-secondary-1: #fff;
    --ip-icon-secondary-2: #f3f3f3;
    --ip-icon-secondary-3: #e9e9e9;
    --ip-icon-secondary-4: #e4e4e4;
    --ip-icon-secondary-5: #ccc;

    --ip-icon-eco-1: #f4e3d3;
    --ip-icon-eco-2: #f4e0ce;
    --ip-icon-eco-3: #dbccbd;

    --ip-icon-darkest: #3a3a3a;
}


/* ==========================================================================
   KalendarzeFOTO.pl — CSS motywu (Setting "theme-css")       v1 · 2026-10-01
   Wklejany w panelu admina resellera → ustawienia motywu (theme CSS).
   Doklejany przez /api/themeCss PO colours.css IP8, więc :root nadpisuje zmienne.
   ========================================================================== */

:root {
  /* --- marka --- */
  --kf-ink: #26302A;
  --kf-text: #4A524C;
  --kf-muted: #6B736D;
  --kf-line: #E4E9E5;
  --kf-green: #2F6B4F;
  --kf-green-dark: #245640;
  --kf-mint: #93C1B0;
  --kf-mint-bg: #EAF3EE;
  --kf-mist: #F6F8F5;
  --kf-warm: #F8F4EE;
  --kf-gold: #E2BE7C;

  /* --- zmienne IP8 (colours.css) --- */
  --base-font-family: 'Karla', Arial, sans-serif;
  --heading-font-family: 'Lora', Georgia, serif;

  --bs-primary: #2F6B4F;
  --bs-primary-darker: #1F4D38;
  --bs-primary-lighter: #93C1B0;
  --bs-primary-text: #26302A;
  --bs-primary-bg: #FFFFFF;
  --bs-primary-bg-darker: #F6F8F5;
  --bs-primary-bg-lighter: #FFFFFF;
  --bs-secondary-bg: #F6F8F5;
  --bs-secondary-bg-darker: #EAF3EE;
  --bs-secondary-bg-lighter: #F8F4EE;
  --bs-body-color: #4A524C;
  --bs-body-bg: #FFFFFF;
  --bs-accent: #E2BE7C;
  --bs-accent-lighter: #F3E3C3;
  --bs-success: #2F6B4F;
  --bs-footer-bg: #26302A;
  --bs-footer-text: #C8D0CA;

  --ip-btn-primary-background: #2F6B4F;
  --ip-btn-primary-text: #FFFFFF;
  --ip-btn-outlined-background: #FFFFFF;
  --ip-btn-outlined-text: #26302A;
  --ip-radio-primary-background: #FFFFFF;
  --ip-radio-primary-text: #26302A;
  --ip-radio-primary-border: #D5DDD7;
  --ip-radio-checked-background: #2F6B4F;
  --ip-radio-checked-text: #FFFFFF;
  --ip-prices-chosen-background: #EAF3EE;
  --ip-prices-btn-secondary-background: #2F6B4F;
  --ip-header-main-bg: #FFFFFF;
  --ip-header-menu-text-color: #26302A;
  --ip-header-menu-text-color-active: #2F6B4F;
  --ip-product-tab-list-nav-link-color: #4A524C;
  --ip-product-tab-list-nav-link-color-active: #2F6B4F;
  --ip-carousel-button-color: #2F6B4F;
  --ip-banner-text: #26302A;
  --ip-input-text: #26302A;
  --ip-input-background: #FFFFFF;
  --ip-border-radius-boxes: 16px;
  --ip-border-radius-buttons: 999px;
  --ip-border-radius-inputs: 12px;
  --ip-box-shadow-boxes: 0 8px 24px rgba(38, 48, 42, .08);

  --ip-icon-primary-1: #B9D9CC;
  --ip-icon-primary-2: #93C1B0;
  --ip-icon-primary-3: #5E9A7C;
  --ip-icon-primary-4: #2F6B4F;
  --ip-icon-primary-5: #1F4D38;
  --ip-icon-primary-accent: #E2BE7C;
}

/* --- typografia --- */
body {
  font-family: var(--base-font-family);
  color: var(--kf-text);
}
h1, h2, h3, .h1, .h2, .h3 {
  font-family: var(--heading-font-family);
  font-weight: 600;
  color: var(--kf-ink);
  letter-spacing: -0.01em;
}
a { color: var(--kf-green); }
a:hover { color: var(--kf-green-dark); }

/* --- przyciski IP8 --- */
.ip-btn-primary,
.btn.ip-btn-primary {
  background: var(--kf-green);
  border-color: var(--kf-green);
  color: #FFFFFF;
  font-weight: 700;
}
.ip-btn-primary:hover,
.btn.ip-btn-primary:hover {
  background: var(--kf-green-dark);
  border-color: var(--kf-green-dark);
  color: #FFFFFF;
}

/* --- pasek nad headerem (wstrzykiwany przez widok Head) --- */
.kf-topbar {
  background: var(--kf-green);
  color: #FFFFFF;
  font: 500 14px/1 var(--base-font-family);
}
.kf-topbar__in {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 32px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
  box-sizing: border-box;
}
.kf-topbar__item { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; }
.kf-topbar svg { flex-shrink: 0; }
/* header IP8 jest position:fixed, a #header-fixer dostaje inline padding = wysokość #headerMain,
   więc wysokość paska dokładamy marginesem (nie kolidujemy z JS IP8) */
body.kf-has-topbar #header-fixer { margin-top: 40px; }

@media (max-width: 767px) {
  .kf-topbar__in { height: 34px; padding: 0 12px; font-size: 13px; }
  .kf-topbar__item--hide-sm { display: none; }
  body.kf-has-topbar #header-fixer { margin-top: 34px; }
}

/* --- header IP8: biały pasek na pełną szerokość zamiast pływającej karty --- */
.headerWrapper {
  background: #FFFFFF;
  box-shadow: 0 1px 0 var(--kf-line);
}
#headerMain {
  background: #FFFFFF;
  border-radius: 0;
  box-shadow: none;
}
/* ikony IP8 mają wpisany na sztywno kolor #0076ff / #78909c */
#headerMain svg [fill="#0076ff"],
#headerMain svg.ip-svg-primary-path-fill path { fill: var(--kf-green); }
#headerMain svg [stroke="#0076ff"],
#headerMain svg.ip-svg-primary-path-stroke path { stroke: var(--kf-green); }
#headerMain svg [fill="#78909c"] { fill: currentColor; }
.headerWrapper .ip-text-info { color: var(--kf-ink) !important; }

/* górny wiersz: Logowanie / Panel / linki z menu CMS */
.headerNavbar .custom-navbar .nav-link {
  color: var(--kf-ink);
  font-weight: 700;
  font-size: 15px;
}
.headerNavbar .custom-navbar .nav-link:hover { color: var(--kf-green); }

/* przycisk "Produkty" (otwiera menu produktów) */
.desktop-bot-header .produkty-button {
  height: 46px;
  padding: 0 22px;
  background: var(--kf-mint-bg) !important;
  border: 0 !important;
  color: #1F4D38 !important;
  font-weight: 700;
}
.desktop-bot-header .produkty-button:hover,
.desktop-bot-header .produkty-button[aria-expanded="true"] { background: #DCEBE2 !important; }

/* wyszukiwarka */
#searchPrintingHouse,
.headerWrapper input[name="phrase"] {
  height: 46px;
  border-radius: 999px !important;
  border: 1.5px solid #D5DDD7 !important;
  background: var(--kf-mist);
  color: var(--kf-ink);
}
#searchPrintingHouse:focus,
.headerWrapper input[name="phrase"]:focus {
  background: #FFFFFF;
  border-color: var(--kf-green) !important;
  box-shadow: 0 0 0 3px rgba(47, 107, 79, .15);
}

/* koszyk */
header-cart .cart-btn {
  height: 46px;
  background: var(--kf-mint-bg) !important;
  border: 0 !important;
  color: var(--kf-ink) !important;
  font-weight: 700;
}
header-cart .cart-btn:hover { background: #DCEBE2 !important; }

/* rozwijane menu produktów */
#main-top-menu {
  border-radius: 16px;
  box-shadow: 0 16px 40px rgba(38, 48, 42, .14);
}
#main-top-menu a { color: var(--kf-ink); }
#main-top-menu a:hover { color: var(--kf-green); }

/* hamburger (mobile) */
.hamburgerWrap span { background: var(--kf-ink) !important; }
