/* pc-listing-icons-v69 — theme-accent icons (homepage + agent + detail) */
.pc-ico{
  width:40px;height:40px;flex:0 0 auto;
  color:var(--pc-accent,#D02121);
  display:inline-flex;align-items:center;justify-content:center;
}
.pc-ico svg{width:100%;height:100%;display:block}
.pc-ico svg [fill]:not([fill="none"]){fill:currentColor}
.pc-ico svg [stroke]:not([stroke="none"]){stroke:currentColor}

.pc-mask-ico{
  width:40px;height:40px;flex:0 0 auto;display:inline-block;
  background:var(--pc-accent,#D02121);
  -webkit-mask:var(--ico) center/contain no-repeat;
  mask:var(--ico) center/contain no-repeat;
}

.pc-spec-grid,.fac-icon-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(104px,1fr));
  gap:10px;
  margin:10px 0 18px;
}
.pc-spec-item,.fac-icon-grid .fac-item{
  display:flex;flex-direction:column;align-items:center;gap:6px;
  text-align:center;font-size:11px;font-weight:650;
  color:var(--pc-text,#2A1212);line-height:1.25;
  padding:8px 6px;border:1px solid var(--pc-border,#F0C8C4);
  border-radius:12px;background:var(--pc-surface,#FFFCFB);
}
.pc-spec-item .pc-spec-val{
  font-size:10px;font-weight:600;color:var(--pc-secondary,#B01E1E);
  max-width:110px;word-break:break-word;
}
.pc-spec-item span,.fac-icon-grid .fac-item span{max-width:110px}
.pc-spec-cat,.fac-cat-note{
  grid-column:1/-1;margin:8px 0 2px;font-size:12px;font-weight:800;
  letter-spacing:.04em;text-transform:uppercase;color:var(--pc-secondary,#B01E1E);
}

.checks.fac-icon-checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px}
.checks.fac-icon-checks label.fac-tile{
  position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;
  padding:10px 6px;border:1px solid var(--pc-border,#F0C8C4);border-radius:12px;
  background:var(--pc-surface,#FFFCFB);cursor:pointer;text-align:center;
  font-size:11px;font-weight:650;color:var(--pc-text,#2A1212);
}
.checks.fac-icon-checks label.fac-tile:has(input:checked){
  border-color:var(--pc-accent,#D02121);
  background:var(--pc-tint,#FFE6E3);
  box-shadow:0 0 0 1px var(--pc-accent,#D02121) inset;
}
.checks.fac-icon-checks label.fac-tile input{position:absolute;opacity:0;pointer-events:none}
.checks.fac-icon-checks label.fac-tile .pc-ico,
.checks.fac-icon-checks label.fac-tile .pc-mask-ico{width:36px;height:36px}

.pc-field-ico{display:inline-flex;align-items:center;gap:6px}
.pc-field-ico .pc-ico,.pc-field-ico .pc-mask-ico{width:18px;height:18px}
