body{font-family:Inter,Arial,sans-serif}.auth-screen{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:#f5f6f1}.auth-story{background:#193e34;color:white;padding:10vw 6vw;display:flex;flex-direction:column;justify-content:center}.auth-story h1{font-size:clamp(32px,4vw,58px);line-height:1.08;max-width:540px;font-weight:500}.auth-story p{line-height:1.8;color:#c4d3c8;max-width:380px}.auth-form{padding:50px;display:flex;align-items:center;justify-content:center}.auth-card{max-width:380px;width:100%}.auth-card h2{font-size:28px;margin:24px 0 8px}.auth-card form{margin-top:26px}.field{margin-bottom:16px}.field input,.field select,.field textarea{width:100%}.field textarea{min-height:100px}.auth-card .btn{width:100%;margin-top:10px}.error-box{color:#9d342a;background:#fff0e9;border-radius:8px;padding:12px;margin:12px 0;font-size:13px;line-height:1.5}.error-box:empty{display:none}.auth-brands{display:flex;gap:25px;margin-top:40px;color:#d1e39e}.loading-screen{padding:25vh 15%;color:#214d40}.sync-status{font-size:12px;color:#637469;display:flex;align-items:center;gap:8px}.sync-status i{width:7px;height:7px;border-radius:50%;background:#659967}.map-production{height:560px;min-height:350px;z-index:1;border-radius:0 0 14px 14px;background:#edf1eb}.leaflet-container{font-family:Arial,sans-serif}.leaflet-popup-content{line-height:1.7}.leaflet-popup-content button{color:#214d40;border:1px solid #ccd4ce;padding:6px 10px;background:white;border-radius:5px;cursor:pointer}.leaflet-marker-icon .pin{width:26px;height:26px;border:3px solid white;border-radius:50%;background:#477658;box-shadow:0 2px 8px #0003}.leaflet-marker-icon .pin.blocked{background:#c2a274}.leaflet-marker-icon .pin.selected{background:#cde291;border-color:#244e3f}.map-toolbar{flex-wrap:wrap}.map-count{padding:12px 18px;font-size:12px;color:#637469;border-top:1px solid #e0e6dd}.radius-input{width:75px;padding:8px;border-radius:7px;border:1px solid #ced8d1}.toolbar-wrap{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.search-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:18px}.search-row input{flex:1;min-width:160px}.search-row input,.search-row select{padding:11px;border:1px solid #d6ded5;border-radius:8px;background:white;font:inherit;font-size:13px}.page-count{font-size:12px;color:#6b7c70}.pagination{display:flex;justify-content:space-between;align-items:center;padding:18px}.call-actions{display:flex;gap:9px;flex-wrap:wrap}.badge{white-space:normal}.pipeline-board{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:16px;overflow:auto;padding-bottom:12px}.pipeline-column{background:#edf1eb;padding:16px;border-radius:12px;min-height:250px}.pipeline-column h3{font-size:14px;margin:0 0 18px}.lead-card{background:white;border:1px solid #dce4da;border-radius:12px;padding:16px;margin-bottom:12px}.lead-card h4{margin:0 0 8px;font-size:15px}.lead-card p{font-size:12px;color:#6a7b6d;line-height:1.6}.bar-row{display:grid;grid-template-columns:130px 1fr 35px;gap:15px;align-items:center;margin:18px 0;font-size:13px}.bar-track{height:9px;background:#ecf1e6;border-radius:9px;overflow:hidden}.bar-fill{height:100%;background:#6f9267}.panel-body{padding:24px}.role-grid{display:grid;grid-template-columns:1fr repeat(3,80px);gap:12px;font-size:13px;align-items:center;margin:15px 0}.role-grid input{width:auto}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:13px}.checkbox-label input{width:auto}.small-copy{font-size:12px;line-height:1.7;color:#687c6e}.note-text{white-space:pre-wrap;overflow-wrap:anywhere}.activity-list{padding:20px}.activity-row{border-left:2px solid #dce5d7;padding:0 0 24px 20px;margin-left:8px}.activity-row strong{font-size:14px}.activity-row p{font-size:14px;line-height:1.6;margin:8px 0}.activity-row small{color:#697d6c}.mini-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.table-wrap td{max-width:340px;overflow-wrap:anywhere}.empty{line-height:1.8}.form-grid{gap:12px}.modal textarea{font:inherit;font-size:14px}.tagline{flex-wrap:wrap}.permission-note{background:#f6f2e6;border:1px solid #eee4c9;padding:14px;border-radius:8px;font-size:13px;line-height:1.7}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.notice svg{flex-shrink:0}.import-summary{padding:15px;border-bottom:1px solid #e3e8dd}.modal-backdrop{z-index:10000}.overlay{z-index:10000}.modal{max-height:90vh;overflow:auto}.form-grid .full{grid-column:1/-1}.status-label{padding:8px 12px;background:#e9f0e4;border-radius:25px;font-size:11px;color:#405a42}.no-map{padding:30px}.break{overflow-wrap:anywhere}.action-link{color:#285b43;text-decoration:underline;cursor:pointer}.spinner{opacity:.6;pointer-events:none}.sidebar .profile{cursor:default}.view-foot{gap:15px}.map-side .map-list-row button{white-space:normal}.table-checkbox{width:18px;height:18px}.leaflet-control-layers-toggle{background-size:20px}.feedback-link{font-size:12px}.settings-team td small{display:block}.source-list{font-size:12px;line-height:1.8}.live-pill{background:#e8f1e2;color:#466440;font-size:11px;padding:6px 10px;border-radius:16px}.chart-total{font-size:44px;color:#214d40;font-weight:600}.btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #8ea97b;outline-offset:3px}#toast{z-index:20000}.check-summary{margin:15px 0}.timeline-content p{white-space:pre-wrap}.form-success{color:#214d40}.modal-head h2{font-size:24px}.save-state{font-size:12px;color:#657864}.app-notice{margin-bottom:20px}
@media(max-width:1000px){.settings-grid{grid-template-columns:1fr}.map-production{height:450px}}@media(max-width:680px){.auth-screen{grid-template-columns:1fr}.auth-story{padding:35px}.auth-story h1{font-size:32px}.auth-form{padding:30px}.auth-brands{margin-top:20px}.map-production{height:420px}.sync-status{display:none}.role-grid{grid-template-columns:1fr repeat(3,58px);font-size:11px}.pipeline-board{grid-template-columns:repeat(4,230px)}.map-toolbar{gap:10px}.settings-grid{display:block}.settings-grid>.panel{margin-bottom:18px}.topbar{gap:8px}.page-head h1{font-size:30px}.org-control select{max-width:150px}.search-row{gap:6px}.search-row select{max-width:100%}}

.modalback{z-index:10000}.selection-number #selected-count{font-size:44px;font-weight:700;color:white}

.selection-card .btn.lime{background:#d6e7a3;color:#1d3f35;border:0;width:100%;margin:18px 0}.selection-card .btn.lime:disabled{opacity:.45}

.google-signin{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:44px;margin-top:25px;border:1px solid #747775;border-radius:6px;background:#fff;color:#1f1f1f;text-decoration:none;font:500 14px Arial,sans-serif;padding:11px 16px;box-sizing:border-box}.google-signin:hover{background:#f2f5f3}.google-signin svg{width:20px;height:20px;flex:none}.auth-divider{display:flex;align-items:center;gap:12px;color:#687c6e;font-size:12px;margin:20px 0 0}.auth-divider:before,.auth-divider:after{content:'';flex:1;height:1px;background:#d8dfd7}.auth-divider+form{margin-top:18px}

.radius-center-marker{background:#fff;border:3px solid #214d40;border-radius:50%;box-shadow:0 2px 8px #0004;color:#214d40;text-align:center;font:bold 25px/26px Arial;cursor:grab}.radius-center-marker:active{cursor:grabbing}.map-production.drawing-mode{cursor:crosshair}.map-list[aria-busy="true"]{opacity:.6}.map-count{min-height:55px;box-sizing:border-box}

[hidden]{display:none!important}

.map-context{padding:12px 18px;border-top:1px solid #e0e6dd;font-size:13px;line-height:1.6}.unlocated-row{display:flex;gap:12px;justify-content:space-between;padding:10px 0}.unlocated-row button{text-align:left;color:#214d40}.quality-score{font-size:36px;font-weight:600;color:#214d40}.quality-score small{font-size:12px;font-weight:400;margin-left:5px}.info-panel progress{width:100%;height:8px;accent-color:#567d4a}.location-editor{border:1px solid #d9e3d6;padding:16px;border-radius:10px}#location-picker{height:320px;z-index:1;background:#edf1eb}#location-feedback{font-size:12px;line-height:1.6;color:#285b43}.sidebar{overflow-y:auto}.sidebar-foot{flex-shrink:0}

.channel-strip{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 20px}.channel-strip>div{display:grid;gap:8px;padding:15px;background:white;border:1px solid #dce4da;border-radius:10px;min-width:200px}.channel-strip span{font-size:12px}.message-list{padding:10px 20px}.message-row{display:grid;gap:9px;width:100%;text-align:left;background:white;border:0;border-bottom:1px solid #e1e7de;padding:20px 0;cursor:pointer;color:#244238}.message-row:hover{background:#f8faf5}.message-row small{color:#6b7e70}.message-preview{font-size:13px;color:#53695a;white-space:pre-wrap;overflow-wrap:anywhere}.routing-guide{margin-top:20px}.role-grid{grid-template-columns:1fr repeat(4,85px)}@media(max-width:700px){.role-grid{grid-template-columns:1fr repeat(4,55px);font-size:10px}}

/* Shared form controls also apply to page-level filters, not only modal fields. */
.page-head select,.panel-heading select,.org-control select{appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23214d40' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center;border:1px solid #d6ded5;border-radius:9px;color:#29483b;padding:11px 36px 11px 13px;min-height:42px;max-width:100%;font:500 13px Inter,Arial,sans-serif;cursor:pointer}.page-head select:hover,.panel-heading select:hover{border-color:#8ca58f}.communication-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid #dce5d7;margin:0 0 26px;padding:0 0 12px}.communication-tabs button{border:0;border-radius:8px;color:#667a6a;padding:11px 16px;font-size:13px;cursor:pointer}.communication-tabs button:hover{background:#eaf0e4}.communication-tabs button.active{background:#214d40;color:white}.contact-workflow{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}.contact-workflow>section{background:#f6f8f2;border:1px solid #e0e7d9;border-radius:12px;padding:20px}.contact-workflow h3{display:flex;align-items:center;gap:8px;font-size:15px;margin:0 0 10px}.contact-workflow h3 svg{width:18px;height:18px}.contact-workflow p{font-size:12px;line-height:1.7;color:#687c6e}.contact-workflow .actions{flex-wrap:wrap;gap:8px}.external-contact{margin-top:16px;font-size:12px;color:#687c6e}.external-contact summary{cursor:pointer;text-decoration:underline}.secondary-actions{padding-top:18px;border-top:1px solid #e0e7d9}.bulk-toolbar{padding:14px 18px;display:flex;gap:12px;align-items:center;flex-wrap:wrap;border-bottom:1px solid #e0e7d9;font-size:12px}.bulk-toolbar>span{margin-right:auto}.location-search{display:flex;align-items:flex-end;padding-bottom:4px}#location-picker.dedicated-picker{height:min(44vh,400px);min-height:250px;border:1px solid #d6ded5;border-radius:10px;margin-top:14px}.location-candidate{display:block;text-align:left;width:100%;padding:9px 12px;border:1px solid #d6ded5;border-radius:7px;margin-bottom:5px;font-size:12px;cursor:pointer;background:#f5f8f0}.location-candidate:hover{background:#e8efdc}.connection-step{border:1px solid #dde6d7;border-radius:10px;padding:14px;margin:12px 0}.connection-step small{display:block;margin:8px 0 0 24px}.provider-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.provider-grid p{font-size:13px;line-height:1.7}.provider-grid a{color:#285b43;text-decoration:underline}.provider-grid .panel{padding:22px}.provider-guide{margin-top:20px}.provider-guide summary{padding:18px;font-weight:600;cursor:pointer}.setup-list{font-size:13px;line-height:1.9;padding-left:20px}.modal select{min-height:42px}input[type=checkbox]{accent-color:#214d40}.connection-progress{font-size:11px;color:#687c6e;display:block;margin-top:7px}
@media(max-width:1100px){.contact-workflow{grid-template-columns:1fr}}@media(max-width:700px){.provider-grid{grid-template-columns:1fr}.communication-tabs{gap:4px}.communication-tabs button{font-size:12px;padding:10px}.page-head .actions{width:100%;justify-content:flex-start}.page-head select{flex:1;min-width:150px}.contact-workflow>section{padding:16px}}
/* Keep confirm/cancel visible even when a form or map is taller than the screen. */
.modal{display:flex;flex-direction:column;overflow:hidden;max-height:90vh}.modalhead{flex:none}.modal>form{display:flex;flex-direction:column;min-height:0}.modalbody{overflow-y:auto;min-height:0}.modalfoot{position:static;flex:none}#location-picker.dedicated-picker{height:32vh;min-height:240px}
.location-address{grid-template-columns:2fr 1fr 100px}.location-address .location-search{grid-column:1/-1;justify-content:flex-end}.location-address .field{margin-bottom:0}@media(max-width:700px){.location-address{grid-template-columns:1fr 1fr}.location-address .field:first-child{grid-column:1/-1}}
