:root{--hm-green:#146b3a;--hm-light:#f3f7f1;--hm-dark:#17351f}body{background:var(--hm-light);color:#1d2b22}.navbar-brand img{max-width:210px}.card-soft{background:#fff;border-radius:22px;padding:24px;box-shadow:0 10px 30px rgba(22,74,38,.08);border:1px solid rgba(20,107,58,.08)}.metric{background:#fff;border-radius:22px;padding:24px;box-shadow:0 10px 30px rgba(22,74,38,.08);border-left:7px solid var(--hm-green)}.metric.accent{background:linear-gradient(135deg,#fff,#eaf4e7)}.metric span{display:block;color:#66766b}.metric strong{font-size:42px;color:var(--hm-green)}#crm-map{height:560px;border-radius:18px;overflow:hidden}.login-bg{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top left,#dcebd7,#f8fbf7 45%,#fff)}.login-card{width:min(440px,92vw);background:#fff;border-radius:28px;padding:42px;text-align:center}.login-card h1{color:var(--hm-green);font-weight:800}.btn-success{background:var(--hm-green);border-color:var(--hm-green)}.nav-link{font-weight:600}.follow{padding:12px 0;border-bottom:1px solid #edf2ec}.follow a{float:right}.dot{display:inline-block;width:12px;height:12px;border-radius:50%;margin-left:12px}.dot.lead{background:#198754}.dot.offer{background:#ffc107}.leaflet-popup-content strong{color:var(--hm-green)}

.map-filter{min-width:220px;max-width:280px}.map-filter select{border-radius:12px}

.check-dropdown{position:relative;min-width:250px}.check-dropdown-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fff;border:1px solid #d9e5d7;border-radius:14px;padding:10px 13px;font-weight:700;color:#17351f;box-shadow:0 6px 18px rgba(22,74,38,.06)}.check-dropdown-toggle:hover{border-color:var(--hm-green)}.check-dropdown.open .check-dropdown-toggle{outline:3px solid rgba(20,107,58,.13);border-color:var(--hm-green)}.chevron{color:var(--hm-green);font-size:14px}.check-dropdown-menu{display:none;position:absolute;right:0;top:calc(100% + 8px);z-index:1001;width:100%;max-height:290px;overflow:auto;background:#fff;border:1px solid rgba(20,107,58,.14);border-radius:16px;box-shadow:0 18px 45px rgba(22,74,38,.18);padding:8px}.check-dropdown.open .check-dropdown-menu{display:block}.check-option{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:12px;cursor:pointer;font-weight:600;margin:0}.check-option:hover{background:#f3f7f1}.check-option input{accent-color:var(--hm-green);width:16px;height:16px}.check-all{color:var(--hm-green)}.check-divider{height:1px;background:#edf2ec;margin:6px 4px}.map-filter small{display:block;margin-top:6px}

.lead-filter-input{border-radius:14px;border-color:#d9e5d7}.lead-table tbody tr{transition:background .15s ease}.lead-table tbody tr:hover{background:#f8fbf7}.company-link{border:0;background:transparent;color:var(--hm-green);font-weight:800;text-decoration:none;padding:0}.company-link:hover{text-decoration:underline}.lead-modal{position:fixed;inset:0;z-index:2000}.lead-modal-backdrop{position:absolute;inset:0;background:rgba(12,31,18,.48);backdrop-filter:blur(2px)}.lead-modal-dialog{position:relative;margin:5vh auto;background:#fff;width:min(860px,94vw);max-height:90vh;overflow:auto;border-radius:26px;padding:28px;box-shadow:0 28px 80px rgba(0,0,0,.25);border:1px solid rgba(20,107,58,.12)}.lead-modal-close{position:absolute;right:18px;top:14px;border:0;background:#f3f7f1;color:var(--hm-dark);width:38px;height:38px;border-radius:50%;font-size:26px;line-height:1}.lead-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;border-bottom:1px solid #edf2ec;padding-bottom:16px;margin-bottom:18px}.lead-modal-header h2{margin:0;color:var(--hm-green);font-weight:800}.lead-modal-header p{margin:4px 0 0;color:#66766b}.lead-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.lead-detail-grid div{background:#f8fbf7;border:1px solid #edf2ec;border-radius:16px;padding:14px}.lead-detail-grid span{display:block;color:#66766b;font-size:.86rem;margin-bottom:4px}.lead-detail-grid strong{font-weight:700;word-break:break-word}.lead-detail-notes{margin-top:18px}.lead-detail-notes h3{font-size:1rem;color:var(--hm-green);font-weight:800;margin-top:16px}.lead-detail-notes p{background:#fff;border:1px solid #edf2ec;border-radius:16px;padding:14px;min-height:52px}.lead-modal-actions{display:flex;justify-content:flex-end;margin-top:18px}@media(max-width:720px){.lead-detail-grid{grid-template-columns:1fr}.lead-modal-dialog{padding:22px}.lead-modal-header{flex-direction:column}}

.followup-section-title{display:inline-flex;align-items:center;gap:8px;margin:6px 0 8px;padding:6px 10px;border-radius:999px;font-weight:800;font-size:.88rem}.followup-section-title.overdue{background:#fff2f2;color:#9b1c1c}.followup-section-title.soon{background:#fff8df;color:#7a5a00}

.followup-open-btn{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:999px;background:linear-gradient(135deg,var(--hm-green),#1d874d);color:#fff!important;text-decoration:none!important;font-weight:800;font-size:.86rem;box-shadow:0 8px 18px rgba(20,107,58,.18);transition:transform .12s ease,box-shadow .12s ease}.followup-open-btn::before{content:"↗";font-weight:900}.followup-open-btn:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(20,107,58,.24);color:#fff!important}.follow:has(.followup-open-btn) a{float:none}
