
/* Property Intelligence $100B upgrade */
#propintel { background: #f0f2f7 !important; color: #111827 !important; padding: 28px 30px 60px !important; }
#propintel * { color: #111827 !important; -webkit-text-fill-color: #111827 !important; }

/* Filter panel — glass card with blue glow */
#propintel [class*="filter"], #propintel [id*="filter"],
#propintel [class*="Filter"], #propintel [id*="Filter"] {
  background: rgba(255,255,255,0.98) !important;
  border: 0.5px solid rgba(0,101,241,0.15) !important;
  border-radius: 20px !important;
  box-shadow: 0 0 30px rgba(0,101,241,0.12), 0 0 60px rgba(0,101,241,0.06), 0 8px 32px rgba(0,101,241,0.08) !important;
  padding: 24px !important;
  color: #111827 !important;
}

/* Blue glow animation behind filter popup */
@keyframes z100bFilterGlow {
  0%, 100% { box-shadow: 0 0 30px rgba(0,101,241,0.12), 0 0 60px rgba(0,101,241,0.06), 0 8px 32px rgba(0,101,241,0.08); }
  33% { box-shadow: 0 0 30px rgba(0,200,255,0.14), 0 0 60px rgba(0,200,255,0.07), 0 8px 32px rgba(0,200,255,0.08); }
  66% { box-shadow: 0 0 30px rgba(124,58,237,0.12), 0 0 60px rgba(124,58,237,0.06), 0 8px 32px rgba(124,58,237,0.08); }
}

#propintel [class*="filter"], #propintel [id*="filter"] {
  animation: z100bFilterGlow 6s ease-in-out infinite !important;
}

/* Filter labels */
#propintel label, #propintel [class*="filter"] label {
  color: #374151 !important;
  -webkit-text-fill-color: #374151 !important;
  font-weight: 600 !important;
  font-size: 0.75rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
}

/* Filter inputs/selects */
#propintel input, #propintel select, #propintel textarea {
  background: #fff !important;
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  border: 0.5px solid rgba(0,101,241,0.15) !important;
  border-radius: 12px !important;
  padding: 10px 14px !important;
}
#propintel input:focus, #propintel select:focus {
  border-color: #0065f1 !important;
  box-shadow: 0 0 0 3px rgba(0,101,241,0.10) !important;
}
#propintel select option { background: #fff !important; color: #111827 !important; }

/* Filter buttons */
#propintel button, #propintel .btn {
  border-radius: 12px !important;
}

/* Dark containers → glass */
#propintel [style*="background:#0"], #propintel [style*="background: #0"],
#propintel [style*="background:#1"], #propintel [style*="background: #1"],
#propintel [style*="background:var(--black"], #propintel [style*="background:rgba(0,0,0"] {
  background: rgba(255,255,255,0.92) !important;
  border: 0.5px solid rgba(0,101,241,0.10) !important;
  border-radius: 16px !important;
  box-shadow: 0 1px 3px rgba(0,101,241,0.05), 0 6px 24px rgba(0,101,241,0.06) !important;
}

/* Gold → blue */
#propintel [style*="color:#c9a84c"], #propintel [style*="color:var(--gold"],
#propintel [style*="#00C864"], #propintel [style*="#00c864"] {
  color: #0065f1 !important;
  -webkit-text-fill-color: #0065f1 !important;
}

/* White text → dark */
#propintel [style*="color:#fff"], #propintel [style*="color:white"],
#propintel [style*="color: #fff"] {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
}

/* Muted text */
#propintel [style*="rgba(255,255,255,0.5"], #propintel [style*="rgba(255,255,255,0.4"] {
  color: #6b7280 !important;
  -webkit-text-fill-color: #6b7280 !important;
}

/* Tabs */
#propintel [class*="tab"].active, #propintel .inner-tab.active {
  background: linear-gradient(135deg, #0065f1, #2d7af8) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 4px 14px rgba(0,101,241,0.25) !important;
}
#propintel [class*="tab"]:not(.active), #propintel .inner-tab:not(.active) {
  background: rgba(255,255,255,0.6) !important;
  color: #6b7280 !important;
  -webkit-text-fill-color: #6b7280 !important;
  border: 0.5px solid rgba(0,101,241,0.10) !important;
}

/* Map container */
#propintel [id*="map"], #propintel [class*="map"] {
  border-radius: 18px !important;
  border: 0.5px solid rgba(0,101,241,0.10) !important;
  overflow: hidden !important;
  box-shadow: 0 1px 3px rgba(0,101,241,0.05), 0 6px 24px rgba(0,101,241,0.08) !important;
}

/* #4: List view surfaces. The #pi-list-view container is hardcoded near-black (rgba(6,7,10,0.95)), which the
   dark->glass override above does NOT match, while cell text is force-darkened to #111827 -> dark-on-dark =
   unreadable. Force the list container/header/rows light so the dark text reads, matching the light theme. */
#propintel #pi-list-view,
#propintel #pi-list-view thead tr,
#propintel #pi-list-view th { background: #fff !important; }
#propintel #pi-list-view tr { border-color: rgba(0,101,241,0.08) !important; }

/* H: My Farms saved-farm dropdown. Same class as #4 -- the container is a hardcoded near-black gradient
   (rgba(6,7,10)/rgba(10,14,26)) the dark->glass override does not match, with light card text force-darkened
   -> dark-on-dark. Scope it light; re-allow the Hot/Warm count chips' red/amber accents on the white surface. */
#propintel #pi-farms-dropdown { background: #fff !important; border: 0.5px solid rgba(0,101,241,0.12) !important; }
#propintel #pi-farms-dropdown > div { border-bottom-color: rgba(0,101,241,0.06) !important; }
#propintel #pi-farms-dropdown [style*="#ef4444"] { color: #dc2626 !important; -webkit-text-fill-color: #dc2626 !important; }
#propintel #pi-farms-dropdown [style*="#f59e0b"] { color: #d97706 !important; -webkit-text-fill-color: #d97706 !important; }

/* Coming soon badges */
#propintel [class*="coming-soon"], #propintel [style*="coming soon"] {
  color: #9ca3af !important;
  -webkit-text-fill-color: #9ca3af !important;
  font-style: italic !important;
}

/* Mobile */
@media (max-width: 900px) {
  #propintel [style*="grid-template-columns"] {
    grid-template-columns: 1fr !important;
  }
}

  .pi-filter-pill{padding:5px 12px;background:rgba(0,101,241,0.06);border:0.5px solid rgba(0,101,241,0.15);border-radius:20px;color:rgba(255,255,255,0.6);font-size:0.7rem;font-weight:600;cursor:pointer;transition:all 0.2s;font-family:'Plus Jakarta Sans',sans-serif;}
  .pi-filter-pill:hover{background:rgba(0,101,241,0.12);}
  .pi-filter-pill.pi-pill-active{background:rgba(0,101,241,0.2);border-color:#0065f1;color:#4d94ff;}
  .pi-check{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:0.78rem;color:rgba(255,255,255,0.6);cursor:pointer;}
  .pi-check input[type="checkbox"]{accent-color:#0065f1;width:16px;height:16px;}
  @media(max-width:768px){
    #pi-filter-panel{position:fixed!important;top:auto!important;bottom:0!important;left:0!important;right:0!important;width:100%!important;max-height:60vh!important;border-radius:16px 16px 0 0!important;z-index:500!important;}
  }
  /* Property Intelligence: Contact Info panel */
  .pi-contact-section { margin-top: 16px; }
  .pi-contact-empty { padding: 16px; background: rgba(0,101,241,0.04); border: 1px solid rgba(0,101,241,0.12); border-radius: 12px; text-align: center; }
  .pi-contact-empty-text { color: #4b5563; font-size: 0.85rem; margin-bottom: 12px; }
  .pi-contact-btn-primary { background: linear-gradient(135deg, #0065f1, #0052c7); color: #fff; border: none; padding: 10px 20px; border-radius: 8px; font-weight: 600; cursor: pointer; font-size: 0.85rem; font-family: 'Plus Jakarta Sans', sans-serif; transition: transform 0.15s, box-shadow 0.15s; }
  .pi-contact-btn-primary:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0,101,241,0.25); }
  .pi-contact-person { background: rgba(255,255,255,0.98); border: 1px solid rgba(0,101,241,0.12); border-radius: 12px; padding: 14px; margin-bottom: 12px; }
  .pi-contact-person-header { margin-bottom: 10px; }
  .pi-contact-person-name { font-weight: 700; color: #111827; font-size: 0.95rem; }
  .pi-contact-person-tags { margin-top: 6px; display: flex; flex-wrap: wrap; gap: 4px; }
  .pi-tag { font-size: 0.7rem; padding: 2px 8px; border-radius: 6px; font-weight: 600; }
  .pi-tag-owner { background: rgba(0,101,241,0.1); color: #0052c7; }
  .pi-tag-age { background: rgba(107,114,128,0.1); color: #4b5563; }
  .pi-tag-deceased { background: rgba(107,114,128,0.15); color: #374151; }
  .pi-tag-litigator { background: rgba(239,68,68,0.1); color: #b91c1c; }
  .pi-contact-mailing { font-size: 0.78rem; color: #6b7280; margin-bottom: 10px; padding: 6px 8px; background: rgba(0,0,0,0.02); border-radius: 6px; }
  .pi-contact-section-label { font-size: 0.7rem; font-weight: 700; color: #6b7280; text-transform: uppercase; letter-spacing: 0.08em; margin: 10px 0 6px 0; }
  .pi-contact-phones, .pi-contact-emails { display: flex; flex-direction: column; gap: 4px; }
  .pi-contact-phone-row { display: flex; align-items: center; gap: 8px; padding: 8px 10px; background: rgba(255,255,255,0.6); border: 1px solid rgba(0,101,241,0.08); border-radius: 8px; }
  .pi-contact-phone-row.pi-phone-dnc { background: rgba(239,68,68,0.04); border-color: rgba(239,68,68,0.2); }
  .pi-contact-phone-num a { color: #0052c7; font-weight: 600; text-decoration: none; font-size: 0.9rem; font-variant-numeric: tabular-nums; }
  .pi-contact-phone-num a:hover { text-decoration: underline; }
  .pi-contact-phone-meta { flex: 1; display: flex; gap: 6px; font-size: 0.72rem; color: #6b7280; }
  .pi-phone-type { font-weight: 600; }
  .pi-phone-carrier { color: #9ca3af; }
  .pi-phone-badge { font-size: 0.68rem; padding: 2px 8px; border-radius: 6px; font-weight: 700; }
  .pi-phone-badge-ok { background: rgba(16,185,129,0.12); color: #047857; }
  .pi-phone-badge-dnc { background: rgba(239,68,68,0.15); color: #b91c1c; }
  .pi-phone-badge-unknown { background: rgba(107,114,128,0.15); color: #4b5563; }
  .pi-contact-email-row { padding: 8px 10px; background: rgba(255,255,255,0.6); border: 1px solid rgba(0,101,241,0.08); border-radius: 8px; }
  .pi-contact-email-row a { color: #0052c7; text-decoration: none; font-size: 0.85rem; word-break: break-all; }
  .pi-contact-email-row a:hover { text-decoration: underline; }
  .pi-contact-footer { margin-top: 10px; padding-top: 10px; border-top: 1px solid rgba(0,101,241,0.08); }
  .pi-contact-footer-meta { font-size: 0.7rem; color: #9ca3af; margin-bottom: 4px; }
  .pi-contact-footer-legend { font-size: 0.7rem; color: #6b7280; }
  .pi-contact-footer-legend .pi-phone-badge { margin-right: 4px; }
  
      .pifs{margin-bottom:8px;border:0.5px solid rgba(255,255,255,0.04);border-radius:10px;overflow:hidden;}
      .pifs-h{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:rgba(255,255,255,0.02);cursor:pointer;user-select:none;}
      .pifs-h:hover{background:rgba(255,255,255,0.04);}
      .pifs-t{font-size:0.72rem;font-weight:700;color:#e8eaf0;}
      .pifs-a{font-size:0.6rem;color:rgba(255,255,255,0.2);transition:transform 0.2s;}
      .pifs-b{display:none;padding:10px 12px;border-top:0.5px solid rgba(255,255,255,0.04);}
      .pifs-b.open{display:block;}
      .pifs-r{display:flex;gap:8px;align-items:center;margin-bottom:8px;}
      .pifs-l{font-size:0.68rem;color:rgba(255,255,255,0.4);min-width:80px;}
      .pifs-i{flex:1;padding:6px 10px;background:rgba(255,255,255,0.04);border:0.5px solid rgba(0,101,241,0.1);border-radius:6px;color:#e8eaf0;font-size:0.72rem;font-family:'Plus Jakarta Sans',sans-serif;outline:none;}
      .pifs-i:focus{border-color:rgba(0,101,241,0.3);}
      .pifs-s{flex:1;padding:6px 10px;background:rgba(255,255,255,0.04);border:0.5px solid rgba(0,101,241,0.1);border-radius:6px;color:#e8eaf0;font-size:0.72rem;font-family:'Plus Jakarta Sans',sans-serif;outline:none;-webkit-appearance:none;}
      .pi-cs{opacity:0.4;pointer-events:none;position:relative;}
      .pi-cs::after{content:'Coming Soon';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:0.55rem;color:#c9a84c;font-weight:700;text-transform:uppercase;letter-spacing:0.15em;background:rgba(6,7,10,0.85);padding:2px 8px;border-radius:4px;white-space:nowrap;z-index:1;}
      .pi-cs-label{display:flex;align-items:center;gap:6px;padding:6px 8px;background:rgba(255,255,255,0.02);border-radius:6px;font-size:0.68rem;color:rgba(255,255,255,0.35);cursor:not-allowed;}
      