/* Tooltip styling */
.simpliplot-tooltip {
    position: absolute; background: rgba(30, 41, 59, 0.95); color: #fff;
    padding: 10px 14px; border-radius: 6px; font-size: 14px; font-family: sans-serif;
    pointer-events: none; z-index: 9999; box-shadow: 0 4px 10px rgba(0,0,0,0.2);
    transform: translate(-50%, -100%); margin-top: -10px; opacity: 0; transition: opacity 0.2s ease; white-space: nowrap;
}
.simpliplot-tooltip.show { opacity: 1; }
.simpliplot-tooltip strong { display: block; font-size: 16px; margin-bottom: 5px; border-bottom: 1px solid rgba(255,255,255,0.2); padding-bottom: 5px; }
.simpliplot-tooltip .plot-meta { display: block; font-size: 12px; color: #cbd5e1; margin-top: 3px; }
.simpliplot-tooltip .plot-status { font-weight: bold; margin-top: 5px; display: inline-block; }

/* Filter Buttons */
.simpliplot-filter-btn { padding: 6px 15px; cursor: pointer; border: 1px solid #ccc; background: #fff; border-radius: 20px; transition: all 0.2s ease; margin-bottom: 5px; }
.simpliplot-filter-btn:hover { background-color: #f1f5f9; }

/* SVG Polygons */
.simpliplot-frontend-svg .simpliplot-plot-polygon { stroke-width: 0.5; cursor: pointer; transition: all 0.3s ease; vector-effect: non-scaling-stroke; }

/* Highlight animation */
@keyframes simpliplotPulse { 
    0% { stroke-width: 1; filter: drop-shadow(0 0 0px rgba(255,255,255,0)); } 
    50% { stroke-width: 3; filter: drop-shadow(0 0 8px rgba(255,255,255,0.8)); } 
    100% { stroke-width: 1; filter: drop-shadow(0 0 0px rgba(255,255,255,0)); } 
}
.simpliplot-frontend-svg .simpliplot-plot-polygon.is-highlighted { animation: simpliplotPulse 2s infinite; stroke: #f1c40f !important; }

/* Summary Dashboard */
.simpliplot-summary-dashboard { display: flex; gap: 15px; flex-wrap: wrap; margin-bottom: 20px; }
.simpliplot-summary-box { flex: 1; min-width: 120px; padding: 15px; border-radius: 6px; display: flex; flex-direction: column; align-items: center; box-shadow: 0 2px 4px rgba(0,0,0,0.05); }
.simpliplot-summary-box .simpliplot-count { font-size: 28px; font-weight: bold; line-height: 1; margin-bottom: 5px; color: #1e293b; }
.simpliplot-summary-box .simpliplot-label { font-size: 13px; text-transform: uppercase; letter-spacing: 0.5px; color: #64748b; font-weight: 600; text-align: center; }

/* Modal Lead Capture */
.simpliplot-modal-overlay { display: none; position: fixed; z-index: 99999; left: 0; top: 0; width: 100%; height: 100%; overflow: auto; background-color: rgba(15, 23, 42, 0.7); backdrop-filter: blur(4px); }
.simpliplot-modal-content { background-color: #fefefe; margin: 5% auto; padding: 30px; border-radius: 8px; width: 90%; max-width: 500px; box-shadow: 0 10px 25px rgba(0,0,0,0.2); position: relative; animation: simpliplotModalFadeIn 0.3s; }
.simpliplot-modal-close { color: #94a3b8; float: right; font-size: 28px; font-weight: bold; cursor: pointer; line-height: 1; }
.simpliplot-modal-close:hover, .simpliplot-modal-close:focus { color: #000; text-decoration: none; cursor: pointer; }
@keyframes simpliplotModalFadeIn { from { opacity: 0; transform: translateY(-20px); } to { opacity: 1; transform: translateY(0); } }