/* PROFILIO – Wyszukiwarka wizytówek (profilio-search.css)
   Dopasowane do klas z PHP (pdir-*)
   Font: Poppins (ale NIE nadpisujemy Font Awesome!)
*/

/* =========================
   BASE
========================= */
.pdir,
.pdir * { box-sizing: border-box !important; }

.pdir{
  font-family: "Poppins", sans-serif !important;
  background:#f9fafb !important;
  color:#0f172a !important;
  padding:48px 0 40px !important;
}
.pdir a{ text-decoration:none !important; }

.pdir button,
.pdir input,
.pdir select,
.pdir textarea{
  font-family:inherit !important;
  outline:none !important;
}

/* Fix: Font Awesome nie może dostać Poppins */
.pdir i.fa,
.pdir i[class^="fa-"],
.pdir i[class*=" fa-"],
.pdir .fa-solid,
.pdir .fa-regular,
.pdir .fa-brands{
  font-family: var(--fa-style-family, "Font Awesome 6 Free") !important;
}
.pdir .fa-solid{ font-weight:900 !important; }
.pdir .fa-regular{ font-weight:400 !important; }
.pdir .fa-brands{ font-family:"Font Awesome 6 Brands" !important; font-weight:400 !important; }

.pdir :focus-visible{
  outline:none !important;
  box-shadow:0 0 0 4px rgba(16,185,129,0.18) !important;
  border-color:#10b981 !important;
}
.pdir input::placeholder{ color:#9ca3af !important; }

/* LOADING */
.pdir.pdir-is-loading{ opacity:.78 !important; }
.pdir.pdir-is-loading *{ cursor:progress !important; }

/* =========================
   HEADER
========================= */
.pdir-header{
  position:sticky !important;
  top:var(--pdir-sticky-offset, 0px) !important;
  z-index:25 !important;
  background:rgba(255,255,255,.72) !important;
  backdrop-filter:blur(18px) !important;
  -webkit-backdrop-filter:blur(18px) !important;
  border-bottom:1px solid #e5e7eb !important;
}
.pdir-header__inner{
  max-width:1280px !important;
  margin:0 auto !important;
  padding:14px 16px 12px !important;
}
.pdir-brand{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:14px !important;
}
.pdir-logo{
  width:44px !important; height:44px !important;
  border-radius:14px !important;
  display:grid !important;
  place-items:center !important;
  color:#fff !important;
  background:linear-gradient(135deg,#06b6d4,#22c55e) !important;
  box-shadow:0 10px 24px rgba(2,132,199,.14) !important;
  flex:0 0 auto !important;
}
.pdir-brand__txt{
  display:flex !important;
  flex-direction:column !important;
  gap:4px !important;
  min-width:0 !important;
}
.pdir-brand__row{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  flex-wrap:wrap !important;
}
.pdir-brand__title{
  font-size:14px !important;
  font-weight:600 !important;
  letter-spacing:-.01em !important;
  line-height:1.15 !important;
  margin:0 !important;
}
.pdir-pill{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  padding:6px 10px !important;
  border-radius:999px !important;
  background:#ecfdf5 !important;
  color:#047857 !important;
  font-size:12px !important;
  font-weight:600 !important;
  border:1px solid rgba(16,185,129,.25) !important;
  white-space:nowrap !important;
}
.pdir-brand__sub{
  font-size:12px !important;
  font-weight:500 !important;
  color:#6b7280 !important;
  line-height:1.3 !important;
}

/* top controls */
.pdir-topControls{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  flex:0 0 auto !important;
}
.pdir-viewToggle{
  display:inline-flex !important;
  border:1px solid #e5e7eb !important;
  background:#fff !important;
  border-radius:14px !important;
  padding:4px !important;
  box-shadow:0 2px 10px rgba(15,23,42,.06) !important;
}
.pdir-viewBtn{
  width:40px !important; height:36px !important;
  border:0 !important;
  background:transparent !important;
  border-radius:12px !important;
  display:grid !important;
  place-items:center !important;
  color:#0f172a !important;
  cursor:pointer !important;
}
.pdir-viewBtn.is-active{ background:#0b1220 !important; color:#fff !important; }

.pdir-btnTop{
  border:1px solid #e5e7eb !important;
  background:#fff !important;
  padding:9px 12px !important;
  border-radius:14px !important;
  font-size:13px !important;
  font-weight:600 !important;
  color:#6b7280 !important;
  cursor:pointer !important;
  box-shadow:0 2px 10px rgba(15,23,42,.06) !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
  white-space:nowrap !important;
}
.pdir-btnTop:hover{ background:#f9fafb !important; color:#111827 !important; }

.pdir-miniCount{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:18px !important;
  height:18px !important;
  padding:0 6px !important;
  border-radius:999px !important;
  background:#0b1220 !important;
  color:#fff !important;
  font-size:11px !important;
  font-weight:600 !important;
}

/* Search row */
.pdir-searchRow{
  max-width:1280px !important;
  margin:12px auto 0 !important;
  padding:0 16px !important;
  display:grid !important;
  grid-template-columns:1fr auto !important;
  gap:12px !important;
  align-items:center !important;
}
.pdir-search{
  position:relative !important;
  background:#fff !important;
  border:1px solid #e5e7eb !important;
  border-radius:18px !important;
  box-shadow:0 2px 12px rgba(15,23,42,.06) !important;
  height:44px !important;
}
.pdir-search__icon{
  position:absolute !important;
  left:14px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  color:#9ca3af !important;
  font-size:14px !important;
}
.pdir-search__input{
  width:100% !important;
  height:44px !important;
  border:0 !important;
  background:transparent !important;
  padding:0 110px 0 40px !important;
  font-size:14px !important;
  font-weight:500 !important;
  color:#111827 !important;
  border-radius:18px !important;
}
.pdir-search__meta{
  position:absolute !important;
  right:10px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  border:1px solid #e5e7eb !important;
  background:#f9fafb !important;
  padding:5px 10px !important;
  border-radius:999px !important;
  font-size:12px !important;
  font-weight:600 !important;
  color:#6b7280 !important;
}

/* Sort */
.pdir-sort{ position:relative !important; display:flex !important; align-items:center !important; gap:10px !important; }
.pdir-sort__btn{
  height:44px !important;
  border-radius:18px !important;
  border:1px solid #e5e7eb !important;
  background:#fff !important;
  box-shadow:0 2px 12px rgba(15,23,42,.06) !important;
  padding:0 14px !important;
  min-width:210px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  cursor:pointer !important;
  font-size:14px !important;
  font-weight:600 !important;
  color:#0f172a !important;
}
.pdir-sort__menu{
  position:absolute !important;
  right:0 !important;
  top:calc(100% + 10px) !important;
  width:300px !important;
  border-radius:18px !important;
  border:1px solid #e5e7eb !important;
  background:#fff !important;
  box-shadow:0 22px 60px rgba(15,23,42,.16) !important;
  padding:10px !important;
  z-index:80 !important;
}
.pdir-sort__opt{
  width:100% !important;
  border:0 !important;
  background:transparent !important;
  padding:10px 10px !important;
  border-radius:14px !important;
  cursor:pointer !important;
  text-align:left !important;
}
.pdir-sort__opt:hover{ background:#f9fafb !important; }
.pdir-sort__optT{
  font-size:14px !important;
  font-weight:600 !important;
  color:#0f172a !important;
  margin:0 !important;
  line-height:1.1 !important;
}
.pdir-sort__optS{
  margin-top:2px !important;
  font-size:11px !important;
  font-weight:600 !important;
  color:#6b7280 !important;
}
.pdir-sort__opt.is-active{ background:#0b1220 !important; }
.pdir-sort__opt.is-active .pdir-sort__optT,
.pdir-sort__opt.is-active .pdir-sort__optS{ color:#fff !important; }

.pdir-countMobile{ display:none !important; }

/* Active filters */
.pdir-activeFilters{
  max-width:1280px !important;
  margin:0 auto !important;
  padding:0 16px 12px !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
}
.pdir-afChip{
  border:1px solid #e5e7eb !important;
  background:#fff !important;
  box-shadow:0 2px 8px rgba(15,23,42,.05) !important;
  border-radius:999px !important;
  padding:6px 10px !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  cursor:pointer !important;
  font-size:12px !important;
  font-weight:600 !important;
  color:#111827 !important;
}
.pdir-afChip i{ color:#6b7280 !important; }

/* =========================
   LAYOUT
========================= */
.pdir-layout{
  max-width:1280px !important;
  margin:46px auto 0 !important;
  padding:0 16px !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:16px !important;
}
@media (min-width:1024px){
  .pdir-layout{
    grid-template-columns:340px 1fr !important;
    gap:18px !important;
    align-items:start !important;
  }
}
.pdir-filters{
  background:#fff !important;
  border:1px solid #e5e7eb !important;
  border-radius:18px !important;
  box-shadow:0 2px 12px rgba(15,23,42,.06) !important;
  overflow:hidden !important;
}
.pdir-results{ min-height:300px !important; }

/* =========================
   FILTERS
========================= */
.pdir-sec{
  padding:14px !important;
  border-top:1px solid #eef2f7 !important;
}
.pdir-sec:first-child{ border-top:0 !important; }

.pdir-sec__head{
  width:100% !important;
  border:0 !important;
  background:transparent !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  cursor:pointer !important;
  padding:0 !important;
}
.pdir-sec__head span{
  font-size:13px !important;
  font-weight:600 !important;
  color:#0f172a !important;
}
.pdir-sec__head i{
  width:30px !important; height:30px !important;
  border-radius:999px !important;
  display:grid !important;
  place-items:center !important;
  background:#f9fafb !important;
  border:1px solid #e5e7eb !important;
  color:#111827 !important;
  flex:0 0 auto !important;
}
.pdir-sec__body{ margin-top:12px !important; }

.pdir-label{
  display:block !important;
  font-size:12px !important;
  font-weight:600 !important;
  color:#111827 !important;
  margin:0 0 6px !important;
}
.pdir-input{
  width:100% !important;
  height:40px !important;
  border-radius:14px !important;
  border:1px solid #d1d5db !important;
  background:#fff !important;
  padding:0 12px !important;
  font-size:13px !important;
  font-weight:500 !important;
  color:#111827 !important;
}
.pdir-help{
  margin-top:6px !important;
  font-size:11px !important;
  font-weight:500 !important;
  color:#6b7280 !important;
  line-height:1.35 !important;
}
.pdir-row{
  margin-top:10px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
}
.pdir-row__l{
  font-size:12px !important;
  font-weight:600 !important;
  color:#111827 !important;
}
.pdir-row__r{
  font-size:12px !important;
  font-weight:600 !important;
  color:#6b7280 !important;
}
.pdir-range{ width:100% !important; }

.pdir-chipsGrid{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
}

/* >>> FIX: kategorie nie mogą być „za wysokie” – robimy scroll na liście <<< */
.pdir-sec[data-sec="cats"] .js-pdir-catList{
  max-height:210px !important;
  overflow:auto !important;
  padding-right:6px !important;
  scrollbar-gutter: stable !important;
}
.pdir-sec[data-sec="cats"] .js-pdir-catList::-webkit-scrollbar{ width:10px !important; }
.pdir-sec[data-sec="cats"] .js-pdir-catList::-webkit-scrollbar-thumb{
  background:#e5e7eb !important;
  border-radius:999px !important;
  border:3px solid #fff !important;
}

.pdir-chipBtn{
  border:1px solid rgba(16,185,129,.35) !important;
  background:#ecfdf5 !important;
  color:#065f46 !important;
  padding:7px 10px !important;
  border-radius:999px !important;
  font-size:12px !important;
  font-weight:600 !important;
  cursor:pointer !important;
  user-select:none !important;
}
.pdir-chipBtn:hover{ background:#d1fae5 !important; border-color:rgba(16,185,129,.6) !important; }
.pdir-chipBtn.is-active{
  background:#0b1220 !important;
  border-color:#0b1220 !important;
  color:#fff !important;
}

.pdir-miniSearch{ margin-top:10px !important; position:relative !important; }
.pdir-miniSearch i{
  position:absolute !important;
  left:12px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  color:#9ca3af !important;
}
.pdir-miniSearch input{
  width:100% !important;
  height:38px !important;
  border-radius:14px !important;
  border:1px solid #e5e7eb !important;
  background:#fff !important;
  padding:0 12px 0 36px !important;
  font-size:12px !important;
  font-weight:500 !important;
  color:#111827 !important;
}
.pdir-miniEmpty{
  margin-top:8px !important;
  font-size:12px !important;
  font-weight:600 !important;
  color:#6b7280 !important;
}

/* Country dropdown */
.pdir-country{ position:relative !important; margin-top:6px !important; }
.pdir-country__btn{
  width:100% !important;
  height:42px !important;
  border-radius:14px !important;
  border:2px solid rgba(16,185,129,.45) !important;
  background:#fff !important;
  padding:0 12px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  cursor:pointer !important;
}
.pdir-country__flag{ font-size:14px !important; }
.pdir-country__name{
  font-weight:600 !important;
  font-size:14px !important;
  color:#111827 !important;
}
.pdir-country__menu{
  position:absolute !important;
  left:0 !important;
  top:calc(100% + 10px) !important;
  width:100% !important;
  border-radius:18px !important;
  border:1px solid #e5e7eb !important;
  background:#fff !important;
  box-shadow:0 22px 60px rgba(15,23,42,.16) !important;
  padding:10px !important;
  z-index:90 !important;
}
.pdir-country__search{ position:relative !important; margin-bottom:10px !important; }
.pdir-country__search i{
  position:absolute !important;
  left:12px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  color:#9ca3af !important;
}
.pdir-country__search input{
  width:100% !important;
  height:38px !important;
  border-radius:14px !important;
  border:1px solid #e5e7eb !important;
  padding:0 12px 0 36px !important;
  font-size:12px !important;
  font-weight:600 !important;
}
.pdir-country__list{
  max-height:260px !important;
  overflow:auto !important;
  border-radius:14px !important;
}
.pdir-country__opt{
  width:100% !important;
  border:0 !important;
  background:transparent !important;
  padding:10px 10px !important;
  border-radius:14px !important;
  cursor:pointer !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
}
.pdir-country__opt:hover{ background:#f9fafb !important; }

/* Switches */
.pdir-switchRow{ padding:10px 0 !important; }
.pdir-switch{
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
  cursor:pointer !important;
  user-select:none !important;
}
.pdir-switch input{
  position:absolute !important;
  opacity:0 !important;
  pointer-events:none !important;
}
.pdir-switch__ui{
  width:44px !important;
  height:26px !important;
  border-radius:999px !important;
  border:1px solid #e5e7eb !important;
  background:#f3f4f6 !important;
  position:relative !important;
  flex:0 0 auto !important;
}
.pdir-switch__ui::after{
  content:"" !important;
  width:20px !important;
  height:20px !important;
  border-radius:999px !important;
  background:#fff !important;
  border:1px solid #e5e7eb !important;
  position:absolute !important;
  top:50% !important;
  left:3px !important;
  transform:translateY(-50%) !important;
  transition:all .18s ease !important;
}
.pdir-switch input:checked + .pdir-switch__ui{
  background:#0b1220 !important;
  border-color:#0b1220 !important;
}
.pdir-switch input:checked + .pdir-switch__ui::after{
  left:21px !important;
  border-color:rgba(255,255,255,.3) !important;
}
.pdir-switch__txt{
  font-size:12px !important;
  font-weight:600 !important;
  color:#111827 !important;
}

/* Aura filter buttons */
.pdir-auraGrid{ display:flex !important; flex-wrap:wrap !important; gap:8px !important; margin-top:10px !important; }
.pdir-auraBtn{
  border:1px solid #e5e7eb !important;
  background:#fff !important;
  padding:8px 10px !important;
  border-radius:12px !important;
  font-size:12px !important;
  font-weight:600 !important;
  cursor:pointer !important;
}
.pdir-auraBtn.is-active{
  background:#0b1220 !important;
  color:#fff !important;
  border-color:#0b1220 !important;
}

.pdir-link{
  border:0 !important;
  background:transparent !important;
  color:#2563eb !important;
  font-weight:600 !important;
  cursor:pointer !important;
  padding:0 !important;
}
.pdir-link:hover{ text-decoration:underline !important; }

/* =========================
   RESULTS GRID
========================= */
.pdir-grid{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:14px !important;
}
@media (min-width:640px){
  .pdir-grid{ grid-template-columns:repeat(2,1fr) !important; }
}
@media (min-width:1280px){
  .pdir-grid{ grid-template-columns:repeat(3,1fr) !important; }
}

/* =========================
   CARD – FIX ROZJECHANIA (AVATAR + TEKST)
========================= */
.pdir-card{
  background:#fff !important;
  border:1px solid #e5e7eb !important;
  border-radius:18px !important;
  box-shadow:0 2px 12px rgba(15,23,42,.06) !important;
  overflow:hidden !important;

  /* ważne: motyw czasem nadaje article display:flex — kasujemy to */
  display:block !important;
  position:relative !important;
}

.pdir-cover{
  height:128px !important;
  width:100% !important;
  background:linear-gradient(135deg,#06b6d4,#22c55e) !important;
  display:block !important;
}
.pdir-cover--featured{ background:linear-gradient(135deg,#0ea5e9,#22c55e) !important; }
.pdir-cover--default{ background:linear-gradient(135deg,#06b6d4,#22c55e) !important; }

.pdir-badge{
  position:absolute !important;
  top:10px !important;
  right:10px !important;
  left:auto !important;
  transform:none !important;
  background:#0b1220 !important;
  color:#fff !important;
  font-size:11px !important;
  font-weight:600 !important;
  padding:6px 10px !important;
  border-radius:999px !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  z-index:3 !important;
}

/* avatar: absolutnie, a body ma padding-left -> tekst NIE wchodzi pod avatar */
.pdir-avaWrap{
  position:absolute !important;
  left:18px !important;
  top:74px !important; /* overlap cover */
  width:96px !important;
  height:96px !important;
  margin:0 !important;
  z-index:4 !important;
}
.pdir-ava{
  width:96px !important;
  height:96px !important;
  border-radius:999px !important;
  border:5px solid #fff !important;
  box-shadow:0 10px 24px rgba(15,23,42,.10) !important;
  background:#f3f4f6 !important;
  object-fit:cover !important;
  display:block !important;
}

/* WERYFIKACJA – bez FA (mask SVG) */
.pdir-verify{
  position:absolute !important;
  left:-10px !important;
  top:-10px !important;
  width:40px !important;
  height:40px !important;
  border-radius:999px !important;
  border:4px solid #fff !important;
  box-shadow:0 10px 20px rgba(15,23,42,.18) !important;
  display:grid !important;
  place-items:center !important;
  cursor:pointer !important;
  background:#2563eb !important;
  padding:0 !important;
}
.pdir-verify i{ display:none !important; } /* nawet jak jest <i>, chowamy */

.pdir-verify::before{
  content:"" !important;
  width:24px !important;
  height:24px !important;
  background:#fff !important;

  -webkit-mask-repeat:no-repeat !important;
  -webkit-mask-position:center !important;
  -webkit-mask-size:contain !important;
  mask-repeat:no-repeat !important;
  mask-position:center !important;
  mask-size:contain !important;

  /* shield-check */
  -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l7 4v6c0 5-3.1 9.4-7 10-3.9-.6-7-5-7-10V6l7-4z'/%3E%3Cpath d='M10.2 12.7l-1.4-1.4-1.4 1.4 2.8 2.8 6-6-1.4-1.4z'/%3E%3C/svg%3E") !important;
  mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l7 4v6c0 5-3.1 9.4-7 10-3.9-.6-7-5-7-10V6l7-4z'/%3E%3Cpath d='M10.2 12.7l-1.4-1.4-1.4 1.4 2.8 2.8 6-6-1.4-1.4z'/%3E%3C/svg%3E") !important;
}
.pdir-verify--document{ background:#16a34a !important; }
.pdir-verify--mob{ background:#2563eb !important; }
.pdir-verify--other{ background:#0b1220 !important; }

/* AURA – wrapper na SVG z get_aura_pictogram(...,32) */
.pdir-aura{
  position:absolute !important;
  left:50% !important;
  bottom:-14px !important;
  transform:translateX(-50%) !important;
  width:40px !important;
  height:40px !important;
  border-radius:999px !important;
  background:#fff !important;
  border:4px solid #fff !important;
  box-shadow:0 8px 16px rgba(15,23,42,.14) !important;
  display:grid !important;
  place-items:center !important;
  overflow:hidden !important;
}
.pdir-aura svg{
  width:32px !important;
  height:32px !important;
  display:block !important;
}

/* body przesunięte w prawo od avatar */
.pdir-body{
  padding:16px 16px 14px 132px !important; /* 18 + 96 + ~18 */
  display:block !important;
}

/* Name + city w kolumnie (jak na projekcie) */
.pdir-nameRow{
  margin-top:0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  gap:4px !important;
}
.pdir-name{
  font-size:16px !important;
  font-weight:600 !important;
  color:#0f172a !important;
  margin:0 !important;
  line-height:1.2 !important;
}
.pdir-loc{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  color:#6b7280 !important;
  font-size:12px !important;
  font-weight:500 !important;
  white-space:nowrap !important;
}
.pdir-flag{
  width:16px !important;
  height:16px !important;
  border-radius:999px !important;
  background:#f3f4f6 !important;
  border:1px solid #e5e7eb !important;
  display:grid !important;
  place-items:center !important;
  font-size:11px !important;
}

/* rating + price */
.pdir-subrow{
  margin-top:10px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
}
.pdir-rating{
  display:inline-flex !important;
  align-items:center !important;
  gap:10px !important;
}
.pdir-score{
  font-size:13px !important;
  font-weight:600 !important;
  color:#111827 !important;
}
.pdir-stars{
  display:inline-flex !important;
  gap:2px !important;
  align-items:center !important;
}
.pdir-stars i{ color:#f59e0b !important; font-size:12px !important; }
.pdir-count{
  font-size:12px !important;
  font-weight:600 !important;
  color:#6b7280 !important;
}
.pdir-price{
  font-size:13px !important;
  font-weight:600 !important;
  color:#111827 !important;
  white-space:nowrap !important;
}

/* chips */
.pdir-chips{
  margin-top:10px !important;
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
}
.pdir-chip{
  border:1px solid rgba(16,185,129,.40) !important;
  background:#ecfdf5 !important;
  color:#065f46 !important;
  padding:6px 10px !important;
  border-radius:999px !important;
  font-size:12px !important;
  font-weight:600 !important;
  display:inline-flex !important;
  align-items:center !important;
  gap:6px !important;
}
.pdir-chip__sub{
  font-style:normal !important;
  font-size:10px !important;
  font-weight:600 !important;
  opacity:.9 !important;
}
.pdir-chip--role{
  border-color:rgba(59,130,246,.30) !important;
  background:#eff6ff !important;
  color:#1d4ed8 !important;
}
.pdir-chip--more{
  border:1px solid #e5e7eb !important;
  background:#fff !important;
  color:#111827 !important;
}

/* meta */
.pdir-meta{
  margin-top:10px !important;
  font-size:13px !important;
  font-weight:600 !important;
  color:#0f172a !important;
}
.pdir-dot{ color:#9ca3af !important; padding:0 6px !important; }

/* actions */
.pdir-actions{
  margin-top:12px !important;
  display:flex !important;
  gap:10px !important;
}
.pdir-btn{
  border-radius:14px !important;
  height:40px !important;
  padding:0 14px !important;
  font-size:13px !important;
  font-weight:600 !important;
  border:1px solid #e5e7eb !important;
  background:#fff !important;
  cursor:pointer !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  white-space:nowrap !important;
}
.pdir-btn:hover{ background:#f9fafb !important; }
.pdir-btn--solid{
  background:#0b1220 !important;
  border-color:#0b1220 !important;
  color:#fff !important;
}
.pdir-btn--solid:hover{ background:#060b16 !important; }
.pdir-btn--ghost{ background:#fff !important; color:#111827 !important; }

/* LIST VIEW – prosty, stabilny układ */
.pdir-card--list{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:16px !important;
  padding:14px !important;
}
.pdir-card--list .pdir-cover{ display:none !important; }
.pdir-card--list .pdir-listLeft{
  display:flex !important;
  align-items:flex-start !important;
  gap:16px !important;
  flex:1 1 auto !important;
}
.pdir-card--list .pdir-avaWrap{
  position:relative !important;
  left:auto !important;
  top:auto !important;
  width:84px !important;
  height:84px !important;
  flex:0 0 auto !important;
}
.pdir-card--list .pdir-ava{
  width:84px !important;
  height:84px !important;
  border:4px solid #fff !important;
}
.pdir-card--list .pdir-aura{
  width:36px !important;
  height:36px !important;
  bottom:-12px !important;
}
.pdir-card--list .pdir-aura svg{
  width:28px !important;
  height:28px !important;
}
.pdir-card--list .pdir-head{ flex:1 1 auto !important; min-width:0 !important; }
.pdir-card--list .pdir-nameRow{ flex-direction:row !important; align-items:center !important; gap:10px !important; }
.pdir-card--list .pdir-loc{ margin-left:auto !important; }
.pdir-card--list .pdir-actions--list{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  flex:0 0 auto !important;
}

/* Pager */
.pdir-pager{
  margin-top:14px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  flex-wrap:wrap !important;
}
.pdir-pageBtn{
  height:36px !important;
  min-width:36px !important;
  padding:0 10px !important;
  border-radius:12px !important;
  border:1px solid #e5e7eb !important;
  background:#fff !important;
  cursor:pointer !important;
  font-weight:600 !important;
}
.pdir-pageBtn.is-active{
  background:#0b1220 !important;
  border-color:#0b1220 !important;
  color:#fff !important;
}
.pdir-pageBtn.is-disabled{ opacity:.5 !important; cursor:not-allowed !important; }
.pdir-pageDots{ color:#6b7280 !important; font-weight:700 !important; }

/* EMPTY */
.pdir-empty{
  background:#fff !important;
  border:1px solid #e5e7eb !important;
  border-radius:18px !important;
  padding:18px !important;
  box-shadow:0 2px 12px rgba(15,23,42,.06) !important;
}
.pdir-empty__title{
  font-size:14px !important;
  font-weight:600 !important;
  color:#111827 !important;
}
.pdir-empty__sub{
  margin-top:6px !important;
  font-size:12px !important;
  font-weight:500 !important;
  color:#6b7280 !important;
}

/* Drawer + Modal + Tooltip */
.pdir-drawer{ position:fixed !important; inset:0 !important; z-index:120 !important; }
.pdir-drawer__overlay{ position:absolute !important; inset:0 !important; background:rgba(0,0,0,.35) !important; }
.pdir-drawer__panel{
  position:absolute !important;
  left:0 !important; top:0 !important; bottom:0 !important;
  width:min(92vw,420px) !important;
  background:#fff !important;
  border-right:1px solid #e5e7eb !important;
  box-shadow:0 30px 90px rgba(15,23,42,.22) !important;
  display:flex !important;
  flex-direction:column !important;
}
.pdir-drawer__head{
  padding:14px !important;
  border-bottom:1px solid #eef2f7 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
}
.pdir-drawer__title{ font-size:16px !important; font-weight:600 !important; color:#111827 !important; }
.pdir-iconBtn{
  width:38px !important; height:38px !important;
  border-radius:999px !important;
  border:0 !important;
  background:transparent !important;
  cursor:pointer !important;
  display:grid !important;
  place-items:center !important;
  color:#111827 !important;
}
.pdir-iconBtn:hover{ background:#f3f4f6 !important; }
.pdir-drawer__body{ padding:14px !important; overflow:auto !important; flex:1 1 auto !important; }
.pdir-drawer__foot{ padding:12px 14px !important; border-top:1px solid #eef2f7 !important; display:flex !important; gap:10px !important; }

/* Modal */
.pdir-modal{
  position:fixed !important;
  inset:0 !important;
  z-index:140 !important;
  display:grid;
  place-items:center !important;
  padding:28px 14px !important;
}
.pdir-modal__overlay{ position:absolute !important; inset:0 !important; background:rgba(0,0,0,.35) !important; }
.pdir-modal__panel{
  position:relative !important;
  width:92vw !important;
  max-width:980px !important;
  background:#fff !important;
  border-radius:18px !important;
  border:1px solid #e5e7eb !important;
  box-shadow:0 30px 90px rgba(15,23,42,.22) !important;
  overflow:hidden !important;
  z-index:2 !important;
}

.pdir-tip{
  position:fixed !important;
  min-width:220px !important;
  max-width:300px !important;
  padding:12px !important;
  border-radius:18px !important;
  background:#0b1220 !important;
  color:#f8fafc !important;
  font-size:11px !important;
  font-weight:600 !important;
  box-shadow:0 18px 50px rgba(0,0,0,.35) !important;
  z-index:160 !important;
}

/* responsive */
@media (max-width:820px){
  .pdir-sort__btn{ min-width:170px !important; }
}
@media (max-width:640px){
  .pdir-searchRow{ grid-template-columns:1fr !important; }
  .pdir-countMobile{
    display:block !important;
    font-size:12px !important;
    font-weight:600 !important;
    color:#6b7280 !important;
    padding-left:2px !important;
  }
  .pdir-search__meta{ display:none !important; }

  /* mniejszy avatar + mniejszy padding-left w body */
  .pdir-avaWrap{ width:84px !important; height:84px !important; top:78px !important; }
  .pdir-ava{ width:84px !important; height:84px !important; border-width:4px !important; }
  .pdir-body{ padding-left:118px !important; }
}




/* ===============================
   PROFILIO – PATCH CARD LAYOUT
   (wklej na koniec pliku)
================================ */

/* 1) Header też musi być odsunięty od avatara (tak jak .pdir-body) */
.pdir-cardHead{
  position:relative !important;
  padding:14px 16px 0 132px !important; /* miejsce na avatar */
  display:block !important;
}

/* headInfo nie może "wchodzić" pod avatar */
.pdir-headInfo{
  min-width:0 !important;
}

/* 2) Body – zostaje odsunięte, ale wyrównujemy odstępy */
.pdir-body{
  padding:12px 16px 14px 132px !important;
  display:block !important;
}

/* 3) Aura – masz w HTML .pdir-auraSvg (nie .pdir-aura) */
.pdir-avaWrap{ position:absolute !important; } /* zostawiamy prowadzenie absolutne */

.pdir-auraSvg{
  position:absolute !important;
  left:50% !important;
  bottom:-14px !important;
  transform:translateX(-50%) !important;

  width:32px !important;
  height:32px !important;
  border-radius:999px !important;

  background:#fff !important;
  border:4px solid #fff !important;
  box-shadow:0 8px 16px rgba(15,23,42,.14) !important;

  display:grid !important;
  place-items:center !important;
  overflow:hidden !important;
}
.pdir-auraSvg svg{
  width:24px !important;
  height:24px !important;
  display:block !important;
}

/* 4) Weryfikacja – używamy SVG, wyłączamy maskę */
.pdir-verify::before{ content:none !important; display:none !important; }
.pdir-verify .pdir-ico,
.pdir-verify svg{
  display:block !important;
  width:24px !important;
  height:24px !important;
  color:#fff !important; /* stroke="currentColor" w SVG */
}

/* 5) Akcje – na wąskich kartach nie mogą się nachodzić */
.pdir-actions{
  margin-top:12px !important;
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:10px !important;
}
.pdir-btn{
  width:100% !important;
  justify-content:center !important;
}

/* list-view nadal flex (żeby było “jak lista”) */
.pdir-card--list .pdir-actions,
.pdir-card--list .pdir-actions--list{
  display:flex !important;
  width:auto !important;
}
.pdir-card--list .pdir-btn{ width:auto !important; }

/* 6) Chip pomarańczowy (rodzaje prac) – brakowało stylu */
.pdir-chip--work{
  border-color:rgba(245,158,11,.35) !important;
  background:#fffbeb !important;
  color:#92400e !important;
}

/* 7) Mobile: header też musi mieć mniejszy padding-left jak body */
@media (max-width:640px){
  .pdir-cardHead{ padding-left:118px !important; }
  .pdir-body{ padding-left:118px !important; }

  .pdir-avaWrap{ width:84px !important; height:84px !important; top:78px !important; }
  .pdir-ava{ width:84px !important; height:84px !important; border-width:4px !important; }

  .pdir-auraSvg{
    width:36px !important;
    height:36px !important;
    bottom:-12px !important;
  }
  .pdir-auraSvg svg{ width:28px !important; height:28px !important; }
}
/* ===============================
   PATCH #2 – overlap avatara + akcje jak na projekcie
   (wklej na koniec pliku)
================================ */

/* avatar wyżej, żeby nachodził na gradient */
.pdir-avaWrap{
  top:-30px !important; /* było ~74/78 => za nisko */
}

/* cover zostaje 128px, ale wizualnie overlap będzie większy */
.pdir-cover{ height:128px !important; }

/* treść nie może być "centrowana" przez motyw */
.pdir-cardHead,
.pdir-body{
  text-align:left !important;
}

/* header + body odsunięte od avatara, ale minimalnie szerzej */
.pdir-cardHead{ padding:14px 16px 0 124px !important; }
.pdir-body{ padding:16px !important; }

/* AKCJE: zawsze 2 kolumny, ale pozwalamy łamać tekst (jak na screen 3) */
.pdir-actions{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:12px !important;
  align-items:stretch !important;
}

.pdir-btn{
  width:100% !important;
  min-width:0 !important;
  white-space:normal !important;     /* KLUCZ: nie uciekają poza kartę */
  line-height:1.15 !important;
  padding:10px 12px !important;
  text-align:center !important;
}

/* ikonka w szybkim podglądzie wyrównana */
.pdir-btn i{
  margin-left:6px !important;
}

/* MOBILE: avatar jeszcze odrobinę wyżej + dopasowanie paddingu */
@media (max-width:640px){
  .pdir-avaWrap{ top:62px !important; }
  .pdir-cardHead{ padding-left:112px !important; }
  .pdir-body{ padding-left:112px !important; }
}
