/* ==========================================================
   v0.8.17 — ZGK VISUAL SYNC
   Paleta i rytm zaczerpnięte z aktualnej strony ZGK Psary v30.
   ========================================================== */
:root{
  --zgk-blue:#0873b7;
  --zgk-blue-2:#0b5f98;
  --zgk-blue-3:#07456f;
  --zgk-green:#58b61e;
  --zgk-green-2:#3b9417;
  --zgk-ink:#202c33;
  --zgk-text:#44525b;
  --zgk-muted:#73818a;
  --zgk-line:#e6edf1;
  --zgk-soft:#f5f8fa;
  --zgk-soft-2:#edf5f8;
  --zgk-danger:#db4e47;
  --zgk-shadow:0 22px 60px rgba(23,72,98,.12);
}

html,body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;color:var(--zgk-ink)!important;}
body{background:var(--zgk-soft)!important;}

/* Górna belka – ten sam język co nagłówek zgk.pages.dev */
#topbar.topbar{
  background:rgba(255,255,255,.97)!important;
  border-color:var(--zgk-line)!important;
  box-shadow:0 12px 36px rgba(23,72,98,.09)!important;
}
#topbar.topbar::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:0!important;right:0!important;top:0!important;
  height:3px!important;
  background:linear-gradient(90deg,var(--zgk-blue) 0 34%,#4b5358 34% 67%,var(--zgk-green) 67% 100%)!important;
  border-radius:inherit!important;
  border-bottom-left-radius:0!important;
  border-bottom-right-radius:0!important;
  pointer-events:none!important;
}
.topnav{background:transparent!important;border:0!important;box-shadow:none!important;}
.topnav-link{color:#41505a!important;font-weight:850!important;}
.topnav-link:hover,.topnav-link.active{color:var(--zgk-blue)!important;}
.topnav-link.active::after{
  content:""!important;position:absolute!important;left:12px!important;right:12px!important;bottom:4px!important;height:3px!important;
  background:var(--zgk-green)!important;border-radius:3px!important;
}
.login-button,.btn-primary,.detail-main-cta,.detail-expand-button{
  background:var(--zgk-blue)!important;border-color:var(--zgk-blue)!important;color:#fff!important;
}
.login-button:hover,.btn-primary:hover,.detail-main-cta:hover,.detail-expand-button:hover{background:var(--zgk-blue-2)!important;border-color:var(--zgk-blue-2)!important;}

/* Tekst i obramowania */
.sidebar-hero h1,.list-heading h2,.detail-panel h2,.admin-heading h2,.admin-section h3,.about-modal h2,.info-modal h2{color:var(--zgk-ink)!important;}
.sidebar-hero p,.list-meta,.card-location,.detail-row span,.admin-lead,.admin-section-header p,.info-lead{color:var(--zgk-muted)!important;}
.public-sidebar,.detail-panel,.map-top-controls,.investment-card,.admin-section,.about-modal,.info-modal,.contact-card,.filters-card{
  border-color:var(--zgk-line)!important;
}

/* Subtelny wspólny pattern identyfikacji ZGK bez dokładania kolejnej „wyspy”. */
.sidebar-hero{position:relative!important;overflow:hidden!important;background:#fff!important;}
.sidebar-hero::before{
  content:""!important;display:block!important;position:absolute!important;right:-20px!important;top:-28px!important;width:140px!important;height:120px!important;
  background:url('assets/zgk-brand-pattern.svg') center/120px repeat!important;opacity:.045!important;pointer-events:none!important;
}
.sidebar-hero h1,.sidebar-hero p{position:relative!important;z-index:1!important;}
.sidebar-hero h1::before{
  content:"";display:inline-block;width:25px;height:3px;margin:0 8px 5px 0;background:var(--zgk-green);border-radius:4px;
}

/* Pasek wyszukiwarki i kategorie */
.map-top-controls{background:rgba(255,255,255,.97)!important;box-shadow:0 14px 34px rgba(23,72,98,.08)!important;}
.map-search input{color:var(--zgk-ink)!important;}
.map-search input::placeholder{color:#8a969d!important;}
.category-chip{font-weight:820!important;}
.category-chip[data-category-chip=""].active{background:var(--zgk-blue)!important;border-color:var(--zgk-blue)!important;color:#fff!important;}
.category-chip[data-category-chip="Wodociągi"]{color:var(--zgk-blue)!important;}
.category-chip[data-category-chip="Środowisko"]{color:var(--zgk-green-2)!important;}

/* Lista: lżejsze karty, zgodne z kartami aktualności/usług na stronie ZGK. */
.investment-card{background:#fff!important;border-color:var(--zgk-line)!important;box-shadow:0 8px 24px rgba(23,72,98,.055)!important;}
.investment-card:hover{border-color:#d2e0e7!important;box-shadow:0 13px 30px rgba(23,72,98,.09)!important;}
.investment-card.active{background:#f7fbfd!important;border-color:#a7d3ed!important;box-shadow:0 12px 28px rgba(8,115,183,.10)!important;}
.text-button{color:var(--zgk-blue)!important;}
.sort-filter-button,.close-filters-button,.btn-ghost{background:#fff!important;border-color:#dbe5ea!important;color:var(--zgk-blue)!important;}
.sort-filter-button:hover,.close-filters-button:hover,.btn-ghost:hover{border-color:var(--zgk-blue)!important;background:#f8fbfc!important;}

/* Szczegóły i formularze */
.detail-progress-fill,.progress-fill{background:linear-gradient(90deg,var(--zgk-blue),var(--zgk-green))!important;}
.detail-row{border-color:var(--zgk-line)!important;}
.detail-extra-grid>div,.contact-card,.about-grid>div,.license-box,.feature-item{background:#fff!important;border-color:var(--zgk-line)!important;}
.admin-section-eyebrow,.eyebrow{color:var(--zgk-blue)!important;}
.admin-section::before{background:linear-gradient(180deg,var(--zgk-blue),var(--zgk-green))!important;}
input,select,textarea{border-color:#cfdde6!important;color:var(--zgk-ink)!important;}
input:focus,select:focus,textarea:focus{border-color:var(--zgk-blue)!important;box-shadow:0 0 0 3px rgba(8,115,183,.10)!important;outline:none!important;}

/* Modale: spójny akcent zielony jak na tytułach sekcji strony ZGK. */
.about-modal,.info-modal,.login-modal{border-top:3px solid var(--zgk-green)!important;}
.about-modal .eyebrow,.info-modal .eyebrow,.login-modal .eyebrow{letter-spacing:.14em!important;font-weight:900!important;}

/* Kolorowe, smukłe paski przewijania pozostają elementem systemu mapy. */
.public-sidebar,.investment-list,.detail-panel,.admin-sidebar,.about-modal,.info-modal{
  scrollbar-width:thin!important;
  scrollbar-color:var(--zgk-blue) transparent!important;
}
.public-sidebar::-webkit-scrollbar,.investment-list::-webkit-scrollbar,.detail-panel::-webkit-scrollbar,.admin-sidebar::-webkit-scrollbar,.about-modal::-webkit-scrollbar,.info-modal::-webkit-scrollbar{width:5px!important;height:5px!important;}
.public-sidebar::-webkit-scrollbar-thumb,.investment-list::-webkit-scrollbar-thumb,.detail-panel::-webkit-scrollbar-thumb,.admin-sidebar::-webkit-scrollbar-thumb,.about-modal::-webkit-scrollbar-thumb,.info-modal::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,var(--zgk-blue) 0%,#1687c8 48%,var(--zgk-green) 100%)!important;border-radius:999px!important;border:0!important;
}
.public-sidebar::-webkit-scrollbar-track,.investment-list::-webkit-scrollbar-track,.detail-panel::-webkit-scrollbar-track,.admin-sidebar::-webkit-scrollbar-track,.about-modal::-webkit-scrollbar-track,.info-modal::-webkit-scrollbar-track{background:transparent!important;}

@media(max-width:900px){
  .topnav-link.active::after{display:none!important;}
  .sidebar-hero h1::before{width:18px;}
}
