:root{--ds-color-primary: #7c3aed;--ds-color-primary-hover: #6d28d9;--ds-color-primary-light: rgba(124, 58, 237, .1);--ds-color-primary-dark: #5b21b6;--ds-gradient-brand-from: #7c3aed;--ds-gradient-brand-to: #273de3;--ds-gradient-brand: linear-gradient(135deg, var(--ds-gradient-brand-from), var(--ds-gradient-brand-to));--ds-color-error: #dc2626;--ds-color-error-hover: #b91c1c;--ds-color-error-light: #fee2e2;--ds-color-error-dark: #991b1b;--ds-color-success: #16a34a;--ds-color-success-hover: #15803d;--ds-color-success-light: #dcfce7;--ds-color-success-dark: #166534;--ds-color-warning: #d97706;--ds-color-warning-hover: #b45309;--ds-color-warning-light: #fef3c7;--ds-color-warning-dark: #92400e;--ds-color-info: #2563eb;--ds-color-info-hover: #1d4ed8;--ds-color-info-light: #dbeafe;--ds-color-info-dark: #1e40af;--ds-color-purple: #9f7aea;--ds-color-purple-hover: #805ad5;--ds-color-purple-light: #e9d8fd;--ds-color-purple-dark: #6b46c1;--ds-color-whatsapp: #25d366;--ds-color-whatsapp-hover: #1da851;--ds-text-primary: #1a202c;--ds-text-secondary: #6b7280;--ds-text-tertiary: #9ca3af;--ds-text-muted: #9ca3af;--ds-text-disabled: #d1d5db;--ds-text-inverse: #ffffff;--ds-text-link: var(--ds-color-primary);--ds-text-link-hover: var(--ds-color-primary-hover);--ds-bg-primary: #ffffff;--ds-bg-secondary: #f9fafb;--ds-bg-tertiary: #f3f4f6;--ds-bg-hover: rgba(0, 0, 0, .04);--ds-bg-active: rgba(0, 0, 0, .08);--ds-bg-selected: var(--ds-color-primary-light);--ds-bg-overlay: rgba(0, 0, 0, .5);--ds-border-color: #e5e7eb;--ds-border-light: #f3f4f6;--ds-border-dark: #d1d5db;--ds-border-focus: var(--ds-color-primary);--ds-space-0: 0;--ds-space-1: .25rem;--ds-space-2: .5rem;--ds-space-3: .75rem;--ds-space-4: 1rem;--ds-space-5: 1.25rem;--ds-space-6: 1.5rem;--ds-space-8: 2rem;--ds-space-10: 2.5rem;--ds-space-12: 3rem;--ds-space-16: 4rem;--ds-space-xs: var(--ds-space-1);--ds-space-sm: var(--ds-space-2);--ds-space-md: var(--ds-space-4);--ds-space-lg: var(--ds-space-6);--ds-space-xl: var(--ds-space-8);--ds-font-family: "Geist", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--ds-font-2xs: .6875rem;--ds-font-xs: .75rem;--ds-font-sm: .875rem;--ds-font-md: 1rem;--ds-font-lg: 1.125rem;--ds-font-xl: 1.25rem;--ds-font-2xl: 1.5rem;--ds-font-3xl: 1.875rem;--ds-leading-tight: 1.25;--ds-leading-normal: 1.5;--ds-leading-relaxed: 1.75;--ds-weight-normal: 400;--ds-weight-medium: 500;--ds-weight-semibold: 600;--ds-weight-bold: 700;--ds-radius-none: 0;--ds-radius-sm: .25rem;--ds-radius-md: .375rem;--ds-radius-lg: .5rem;--ds-radius-xl: .75rem;--ds-radius-2xl: 1rem;--ds-radius-full: 9999px;--ds-shadow-xs: 0 1px 2px rgba(0, 0, 0, .05);--ds-shadow-sm: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--ds-shadow-md: 0 4px 6px rgba(0, 0, 0, .1), 0 2px 4px rgba(0, 0, 0, .06);--ds-shadow-lg: 0 10px 15px rgba(0, 0, 0, .1), 0 4px 6px rgba(0, 0, 0, .05);--ds-shadow-xl: 0 20px 25px rgba(0, 0, 0, .1), 0 10px 10px rgba(0, 0, 0, .04);--ds-shadow-focus: 0 0 0 3px var(--ds-color-primary-light);--ds-shadow-focus-error: 0 0 0 3px var(--ds-color-error-light);--ds-z-base: 0;--ds-z-dropdown: 100;--ds-z-sticky: 200;--ds-z-fixed: 300;--ds-z-modal-backdrop: 400;--ds-z-modal: 500;--ds-z-popover: 600;--ds-z-tooltip: 700;--ds-z-toast: 800;--ds-duration-fast: .1s;--ds-duration-normal: .2s;--ds-duration-slow: .3s;--ds-easing-default: cubic-bezier(.4, 0, .2, 1);--ds-easing-in: cubic-bezier(.4, 0, 1, 1);--ds-easing-out: cubic-bezier(0, 0, .2, 1);--ds-control-height: 2rem;--ds-btn-padding-x: var(--ds-space-4);--ds-btn-padding-y: var(--ds-space-2);--ds-btn-radius: var(--ds-radius-md);--ds-btn-font-size: var(--ds-font-sm);--ds-btn-font-weight: var(--ds-weight-medium);--ds-input-padding-x: var(--ds-space-3);--ds-input-padding-y: var(--ds-space-2);--ds-input-radius: var(--ds-radius-md);--ds-input-border: var(--ds-border-color);--ds-input-border-focus: var(--ds-color-primary);--ds-input-bg: var(--ds-bg-primary);--ds-card-padding: var(--ds-space-4);--ds-card-radius: var(--ds-radius-xl);--ds-card-shadow: var(--ds-shadow-sm);--ds-card-border: var(--ds-border-color);--ds-card-bg: var(--ds-bg-primary);--ds-modal-radius: var(--ds-radius-xl);--ds-modal-shadow: var(--ds-shadow-xl);--ds-modal-padding: var(--ds-space-6);--ds-confidence-very-high: #16a34a;--ds-confidence-very-high-bg: #dcfce7;--ds-confidence-high: #22c55e;--ds-confidence-high-bg: #dcfce7;--ds-confidence-medium: #eab308;--ds-confidence-medium-bg: #fef9c3;--ds-confidence-low: #f97316;--ds-confidence-low-bg: #ffedd5;--ds-confidence-very-low: #ef4444;--ds-confidence-very-low-bg: #fee2e2;--ds-content-width: 960px;--ds-layout-gap: 8px;--ds-nav-icon-size: 24px;--ds-nav-item-padding: 8px;--ds-nav-gap: 4px;--ds-header-height: 64px;--ds-header-padding: 16px;--ds-header-logo-size: 24px;--ds-header-title-size: 20px;--ds-header-search-width: 400px}*,*:before,*:after{box-sizing:border-box}h1,h2,h3,h4,h5,h6{line-height:1.25}input,select,textarea,button{font:inherit}.card{background-color:var(--ds-bg-primary);border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-lg);box-shadow:none;transition:box-shadow .15s}.card:hover{box-shadow:0 2px 16px #0000000d}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--ds-bg-secondary);border-radius:5px}::-webkit-scrollbar-thumb{background:#c1c1c9;border-radius:5px;border:2px solid var(--ds-bg-secondary)}::-webkit-scrollbar-thumb:hover{background:#a1a1aa}*{scrollbar-width:thin;scrollbar-color:#c1c1c9 var(--ds-bg-secondary)}body{margin:0;min-height:100vh;background-color:var(--ds-bg-secondary);color:var(--ds-text-primary);font-family:var(--ds-font-family);font-size:var(--ds-font-md);line-height:1.5;-webkit-font-smoothing:antialiased}:focus-visible{outline:2px solid var(--ds-color-primary);outline-offset:2px}button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:2px solid var(--ds-color-primary);outline-offset:2px;box-shadow:var(--ds-shadow-focus)}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:none;border-color:var(--ds-color-primary);box-shadow:var(--ds-shadow-focus)}:focus:not(:focus-visible){outline:none}.btn,.header-action-btn,.primary-button,.secondary-button,.back-button,.action-button,.merge-button,.keep-separate-button,.cancel-button,.confirm-button,.merge-all-button,.pagination-button,.delete-selected-button,.cleanup-action-button,.contact-action-button,.archive-selected-button,.merge-selected-button,.export-button,.restore-button,.save-button,.danger-button,.file-input-label,.geocode-button,.remove-all-button,.search-button,.address-skip-button,.address-apply-button,.normalize-skip-button,.normalize-remove-button,.address-subtab,.edit-button-primary,.add-item-btn,.fix-all-button,.mode-pill,.cleanup-mode-pill,.cleanup-filter-chip,.geocoding-edit-actions button,.geocoding-filter-btn,.geocoding-bulk-btn,.geocoding-action-btn,.social-links-tab,.icon-button,.merge-modal-header .close-button,.remove-item-btn,.edit-input,.confirm-input,.patterns-input,.map-search-input,.threshold-select,.confidence-filter select,.settings-form input,.geocoding-edit-fields input{height:var(--ds-control-height);box-sizing:border-box}.btn--icon,.icon-button,.merge-modal-header .close-button,.remove-item-btn{width:var(--ds-control-height)}.btn,.primary-button,.secondary-button,.danger-button,.cancel-button,.confirm-button,.back-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--ds-space-2);padding:0 var(--ds-btn-padding-x);border:1px solid transparent;border-radius:var(--ds-btn-radius);font-size:var(--ds-btn-font-size);font-weight:var(--ds-btn-font-weight);line-height:1;white-space:nowrap;cursor:pointer;transition:background-color var(--ds-duration-fast) var(--ds-easing-default),border-color var(--ds-duration-fast) var(--ds-easing-default),color var(--ds-duration-fast) var(--ds-easing-default),opacity var(--ds-duration-fast) var(--ds-easing-default)}.btn [class*=fa-],.primary-button [class*=fa-],.secondary-button [class*=fa-],.danger-button [class*=fa-],.cancel-button [class*=fa-],.confirm-button [class*=fa-],.back-button [class*=fa-]{font-size:var(--ds-font-lg)}.btn:disabled,.btn.disabled{opacity:.5;cursor:not-allowed}.btn--primary,.primary-button,.confirm-button{background-color:var(--ds-color-primary);color:var(--ds-text-inverse);border-color:transparent}.btn--primary:hover:not(:disabled),.primary-button:hover:not(:disabled),.confirm-button:hover:not(:disabled){background-color:var(--ds-color-primary-hover)}.btn--secondary,.secondary-button,.cancel-button,.back-button{background-color:var(--ds-bg-primary);color:var(--ds-text-primary);border-color:var(--ds-border-color)}.btn--secondary:hover:not(:disabled),.secondary-button:hover:not(:disabled),.cancel-button:hover:not(:disabled),.back-button:hover:not(:disabled){background-color:var(--ds-bg-secondary);border-color:var(--ds-border-dark)}.btn--danger,.confirm-button.danger{background-color:var(--ds-color-error);color:var(--ds-text-inverse);border-color:transparent}.btn--danger:hover:not(:disabled),.confirm-button.danger:hover:not(:disabled){background-color:var(--ds-color-error-hover)}.btn--ghost{background-color:transparent;color:var(--ds-text-secondary);border-color:transparent}.btn--ghost:hover:not(:disabled){background-color:var(--ds-bg-hover);color:var(--ds-text-primary)}.btn--icon{display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-md);background-color:var(--ds-bg-primary);color:var(--ds-text-secondary);cursor:pointer;transition:background-color var(--ds-duration-fast) var(--ds-easing-default),border-color var(--ds-duration-fast) var(--ds-easing-default)}.btn--icon:hover:not(:disabled){background-color:var(--ds-bg-secondary);border-color:var(--ds-border-dark)}.btn--icon [class*=fa-]{font-size:var(--ds-font-lg)}.badge,.confidence-badge,.cleanup-badge,.normalize-badge,.geocoding-status-badge,.geocoding-badge,.address-cleanup-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px var(--ds-space-2);border-radius:var(--ds-radius-sm);font-size:var(--ds-font-xs);font-weight:var(--ds-weight-medium);line-height:1.4;white-space:nowrap}.badge--neutral{background:var(--ds-bg-tertiary);color:var(--ds-text-secondary)}.badge--brand{background:var(--ds-color-primary-light);color:var(--ds-color-primary)}.badge--success{background:var(--ds-color-success-light);color:var(--ds-color-success-dark)}.badge--warning{background:var(--ds-color-warning-light);color:var(--ds-color-warning)}.badge--error{background:var(--ds-color-error-light);color:var(--ds-color-error-dark)}.badge--info{background:var(--ds-color-info-light);color:var(--ds-color-info-dark)}.badge--count,.subtab-badge,.groups-count-badge,.archived-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;padding:2px var(--ds-space-2);border-radius:var(--ds-radius-full);background:var(--ds-text-secondary);color:var(--ds-text-inverse);font-size:var(--ds-font-xs);font-weight:var(--ds-weight-medium);line-height:1.4}.loading-spinner-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ds-space-4);padding:var(--ds-space-12)}.loading-spinner-fullscreen{min-height:100vh;background:var(--ds-bg-secondary)}.loading-spinner{width:40px;height:40px;border:3px solid var(--ds-border-color);border-top-color:var(--ds-color-primary);border-radius:50%;animation:spin 1s linear infinite}.loading-spinner-message{color:var(--ds-text-secondary);margin:0;font-size:var(--ds-font-sm)}@keyframes spin{to{transform:rotate(360deg)}}.app-layout{display:flex;flex-direction:column;min-height:100vh;background:#fff}.app-body{display:flex;flex:1;gap:var(--ds-layout-gap);padding-top:var(--ds-header-height)}.app-body-spacer{flex:1;min-width:0}.page-header{position:fixed;top:0;left:0;width:100%;height:var(--ds-header-height);display:flex;align-items:center;justify-content:space-between;padding:0 var(--ds-header-padding);flex-shrink:0;background:var(--ds-bg-primary);z-index:var(--ds-z-fixed)}.page-header-row{display:flex;align-items:center;justify-content:space-between;width:100%;height:100%}.page-header-col-left{flex:1;display:flex;align-items:center;height:100%}.page-header-logo{height:var(--ds-header-logo-size);width:auto}.page-header-col-center{width:var(--ds-content-width);flex-shrink:0}.page-header-center-row{display:flex;align-items:center;gap:var(--ds-space-6);width:100%;min-width:0}.page-header-title{font-size:var(--ds-header-title-size);font-weight:var(--ds-weight-bold);color:var(--ds-text-primary);margin:0;white-space:nowrap;line-height:20px}.search-bar{position:relative;display:flex;align-items:center;height:var(--ds-control-height);padding:0 var(--ds-space-2);background:var(--ds-bg-secondary);border:1px solid var(--ds-border-dark);border-radius:var(--ds-radius-lg);box-sizing:border-box}.search-bar--header{max-width:var(--ds-header-search-width);flex:1;min-width:200px}.search-bar--plain{height:auto;gap:var(--ds-space-3);padding:var(--ds-space-4);background:transparent;border:none;border-radius:0;border-bottom:1px solid var(--ds-border-color)}.search-bar-icon{font-size:var(--ds-font-md);color:var(--ds-text-muted);flex-shrink:0}input.search-bar-input{flex:1;min-width:0;height:auto;width:auto;border:none;border-radius:0;background:transparent;box-shadow:none;font-size:var(--ds-font-sm);color:var(--ds-text-primary);outline:none;padding:0 var(--ds-space-2);margin:0}.search-bar--plain input.search-bar-input{font-size:var(--ds-font-md);padding:0}.search-bar-input::placeholder{color:var(--ds-text-muted)}.search-bar-clear{background:none;border:none;cursor:pointer;padding:0;margin:0;color:var(--ds-text-muted);display:flex;align-items:center;flex-shrink:0}.search-bar-clear:hover{color:var(--ds-text-primary)}.search-bar-clear [class*=fa-]{font-size:var(--ds-font-md)}.page-header-info{flex-shrink:1;font-size:var(--ds-font-sm);color:var(--ds-text-secondary);text-align:right;white-space:nowrap;line-height:20px;min-width:0;overflow:hidden;text-overflow:ellipsis}.page-header-col-right{flex:1;display:flex;align-items:center;justify-content:flex-end}.page-header-actions{display:flex;align-items:center;gap:var(--ds-space-2)}.page-header-sub{padding:var(--ds-space-2) 0}.nav-rail{position:fixed;left:0;top:var(--ds-header-height);height:calc(100vh - var(--ds-header-height));display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:var(--ds-nav-gap);padding-left:16px;padding-right:16px;min-width:0;z-index:var(--ds-z-fixed)}.nav-rail-item{display:flex;align-items:center;justify-content:flex-start;width:40px;height:40px;border-radius:var(--ds-radius-lg);color:var(--ds-text-muted);text-decoration:none;cursor:pointer;background:none;border:none;padding:var(--ds-nav-item-padding);transition:background-color .15s,color .15s,width .15s;position:relative;gap:var(--ds-space-2);overflow:hidden}.nav-rail-item [class*=fa-]{font-size:var(--ds-nav-icon-size);flex-shrink:0}.nav-rail-label{display:none;font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);white-space:nowrap;color:var(--ds-color-primary)}.nav-rail-item:hover{color:var(--ds-color-primary);width:auto}.nav-rail-item:hover .nav-rail-label{display:inline}.nav-rail-item.active,a.nav-rail-item.active{background-color:var(--ds-color-primary-light);color:var(--ds-color-primary)}.nav-rail-item:focus-visible{outline:2px solid var(--ds-color-primary);outline-offset:-2px}.nav-rail-avatar-btn{overflow:hidden}.nav-rail-avatar-img{width:var(--ds-nav-icon-size);height:var(--ds-nav-icon-size);border-radius:50%;object-fit:cover}.nav-rail-avatar-initials{width:var(--ds-nav-icon-size);height:var(--ds-nav-icon-size);border-radius:50%;background:var(--ds-bg-tertiary);color:var(--ds-text-secondary);display:flex;align-items:center;justify-content:center;font-size:var(--ds-font-sm);font-weight:var(--ds-weight-semibold)}.header-action-btn{display:inline-flex;align-items:center;gap:var(--ds-space-2);padding:0 12px;border-radius:var(--ds-radius-lg);font-size:var(--ds-font-sm);font-weight:var(--ds-weight-bold);cursor:pointer;border:none;background:var(--ds-color-primary);color:#fff;white-space:nowrap;transition:background-color .15s}.header-action-btn:hover{background:var(--ds-color-primary-hover)}.header-action-btn.secondary{background:var(--ds-bg-primary);color:var(--ds-text-primary);border:1px solid var(--ds-border-color)}.header-action-btn.secondary:hover{background:var(--ds-bg-secondary);border-color:var(--ds-border-dark)}.header-action-btn.danger{background:transparent;color:var(--ds-color-error);border:1px solid var(--ds-color-error)}.header-action-btn.danger:hover{background:#dc262614}.header-action-btn [class*=fa-]{font-size:var(--ds-font-md)}.main-content{width:var(--ds-content-width);flex-shrink:0;display:flex;flex-direction:column;min-width:0;margin:0 auto;padding:0}.main-content:has(.map-view){width:100%}.header-actions{display:flex;align-items:center;gap:var(--ds-space-2)}.icon-button{display:flex;align-items:center;justify-content:center;border-radius:var(--ds-radius-md);border:1px solid var(--ds-border-color);background-color:var(--ds-bg-primary);color:var(--ds-text-secondary);cursor:pointer;transition:background-color .15s,border-color .15s}.icon-button:hover{background-color:var(--ds-bg-secondary);border-color:var(--ds-border-dark)}.icon-button [class*=fa-]{font-size:var(--ds-font-lg)}.page-content{flex:1;padding:1.5rem 0;overflow-y:auto}.page-header{margin-bottom:var(--ds-space-6)}.page-header h1{margin:0 0 .25rem;font-size:1.75rem;font-weight:var(--ds-weight-bold);color:var(--ds-text-primary)}.page-header p{margin:0;color:var(--ds-text-secondary);font-size:.9375rem}.contact-list{display:flex;flex-direction:column;gap:var(--ds-space-3);padding:0}.contact-count{font-size:var(--ds-font-sm);color:var(--ds-text-secondary);margin-bottom:var(--ds-space-2)}.contact-card{display:flex;align-items:center;padding:0;cursor:pointer;transition:background-color .15s;overflow:hidden;margin:0}.contact-card-main{display:flex;align-items:center;gap:var(--ds-space-4);flex:1;min-width:0}.contact-info{flex:1;min-width:0}.contact-name{margin:0;font-size:var(--ds-font-md);font-weight:var(--ds-weight-bold);color:var(--ds-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-role{margin:.125rem 0 0;font-size:var(--ds-font-sm);color:var(--ds-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-details{display:flex;flex-direction:row;gap:var(--ds-space-8);margin-right:var(--ds-space-6);flex-shrink:0}.contact-detail-item{display:flex;align-items:center;gap:var(--ds-space-2);font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.contact-details>.contact-detail-item{width:220px;overflow:hidden}.contact-details>.contact-detail-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-detail-item [class*=fa-]{font-size:var(--ds-font-md);color:var(--ds-text-secondary)}.contact-card-actions{display:flex;align-items:center;gap:var(--ds-space-4);border-left:1px solid var(--ds-border-color);padding-left:17px;align-self:stretch;flex-shrink:0}.contact-action-icon{display:flex;align-items:center;justify-content:center;width:16px;color:var(--ds-text-secondary);background:none;border:none;padding:0;cursor:pointer;text-decoration:none}.contact-action-icon a{display:flex;color:inherit;text-decoration:none}.contact-action-icon a:hover{color:var(--ds-text-primary)}.contact-action-icon [class*=fa-]{font-size:var(--ds-font-md)}.contact-action-icon:hover{color:var(--ds-text-primary)}[class*=fa-]{font-size:var(--ds-font-md);line-height:1;display:inline-block;vertical-align:middle}.avatar{border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:var(--ds-weight-semibold);color:#fff;flex-shrink:0;overflow:hidden}.avatar img{display:block;width:100%;height:100%;object-fit:cover}.contact-detail-panel{position:fixed;top:0;right:0;bottom:0;width:min(400px,100vw - 2rem);background-color:var(--ds-bg-primary);box-shadow:-4px 0 20px #0000001a;overflow:auto;z-index:100}.contact-detail-header{padding:1rem 1.5rem;border-bottom:1px solid var(--ds-border-color);display:flex;justify-content:space-between;align-items:center}.contact-detail-header h3{margin:0;font-size:var(--ds-font-lg);font-weight:var(--ds-weight-semibold)}.contact-detail-body{padding:var(--ds-space-6)}.contact-detail-profile{text-align:center;margin-bottom:var(--ds-space-6)}.contact-detail-profile h2{margin:1rem 0 .25rem;font-size:var(--ds-font-2xl)}.contact-detail-profile .subtitle{color:var(--ds-text-secondary);margin:0}.contact-detail-section{margin-bottom:var(--ds-space-6)}.contact-detail-section h4{margin:0 0 .5rem;font-size:var(--ds-font-xs);font-weight:var(--ds-weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--ds-text-secondary)}.contact-detail-section a{color:var(--ds-color-primary);text-decoration:none}.contact-detail-section a:hover{text-decoration:underline}.contact-detail-item{margin-bottom:var(--ds-space-2)}.contact-detail-item .type{margin-left:var(--ds-space-2);font-size:var(--ds-font-xs);color:var(--ds-text-secondary)}.loading-state,.error-state{padding:var(--ds-space-12);text-align:center;color:var(--ds-text-secondary)}.error-state{color:var(--ds-color-error)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ds-space-4);padding:var(--ds-space-12);text-align:center;color:var(--ds-text-secondary)}.empty-state-icon{font-size:3rem;color:var(--ds-text-muted)}.empty-state-title{margin:0;color:var(--ds-text-primary);font-size:var(--ds-font-xl);font-weight:var(--ds-weight-semibold)}.empty-state-description{margin:0;max-width:340px}.empty-state-action{margin-top:var(--ds-space-2)}.dedup-view{display:flex;flex-direction:column;height:100vh}.dedup-header{background-color:var(--ds-bg-primary);border-bottom:1px solid var(--ds-border-color);padding:1rem 1.5rem}.back-button{display:flex;align-items:center;gap:var(--ds-space-2);padding:0 .75rem;border-radius:var(--ds-radius-lg);border:1px solid var(--ds-border-color);background-color:transparent;color:var(--ds-text-secondary);font-size:var(--ds-font-sm);cursor:pointer;transition:background-color .15s,color .15s}.back-button:hover{background-color:var(--ds-bg-secondary);color:var(--ds-text-primary)}.back-button [class*=fa-]{font-size:var(--ds-font-xl)}.merge-all-button{display:flex;align-items:center;gap:.375rem;padding:0 1rem;background:var(--ds-color-info);color:#fff;border:none;border-radius:var(--ds-radius-md);font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);cursor:pointer;transition:opacity .2s}.merge-all-button:hover:not(:disabled){opacity:.9}.merge-buttons{display:flex;gap:var(--ds-space-2)}.merge-all-button.merge-all-global{background:var(--ds-color-error)}.merge-all-button.merge-all-global:hover:not(:disabled){background:var(--ds-color-error-hover)}.mode-selector{display:flex;gap:var(--ds-space-2);margin-bottom:var(--ds-space-4)}.mode-pill{display:flex;align-items:center;gap:var(--ds-space-2);padding:0 1rem;border-radius:2rem;border:1px solid var(--ds-border-color);background-color:var(--ds-bg-primary);color:var(--ds-text-secondary);font-weight:var(--ds-weight-medium);font-size:var(--ds-font-sm);cursor:pointer;transition:all .15s}.mode-pill:hover:not(:disabled){border-color:var(--ds-color-primary);color:var(--ds-color-primary)}.mode-pill.active{background-color:var(--ds-color-primary);border-color:var(--ds-color-primary);color:#fff}.mode-pill [class*=fa-]{font-size:var(--ds-font-lg)}.mode-pill .mode-count{background-color:#0000001a;padding:.125rem .5rem;border-radius:1rem;font-size:var(--ds-font-xs)}.mode-pill.active .mode-count{background-color:#fff3}.dedup-stats-row{display:flex;align-items:center;justify-content:space-between;gap:var(--ds-space-4)}.dedup-stats{font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.dedup-stats .hidden-count{margin-left:var(--ds-space-2);font-style:italic}.dedup-content{flex:1;overflow:hidden}.dedup-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--ds-text-secondary)}.dedup-loading [class*=fa-]{font-size:3rem;margin-bottom:var(--ds-space-4)}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.duplicate-group-list{height:100%;display:flex;flex-direction:column}.duplicate-group-list-content{flex:1;overflow-y:auto;padding:var(--ds-space-6)}.duplicate-group-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--ds-text-secondary)}.duplicate-group-list-empty [class*=fa-]{font-size:3rem;margin-bottom:var(--ds-space-4);color:var(--ds-color-success)}.loading-more{text-align:center;padding:var(--ds-space-4);color:var(--ds-text-secondary)}.duplicate-group{margin-bottom:var(--ds-space-4);overflow:hidden}.duplicate-group-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background-color:var(--ds-bg-secondary);border-bottom:1px solid var(--ds-border-color)}.duplicate-group-info{display:flex;align-items:center;gap:var(--ds-space-4)}.match-indicator{display:flex;align-items:center;gap:var(--ds-space-2);color:var(--ds-color-primary);font-weight:var(--ds-weight-medium)}.match-indicator [class*=fa-]{font-size:var(--ds-font-xl)}.match-value{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-count{font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.duplicate-group-actions{display:flex;gap:var(--ds-space-2)}.merge-button{padding:0 1rem;border-radius:var(--ds-radius-lg);border:none;background-color:var(--ds-color-primary);color:#fff;font-weight:var(--ds-weight-semibold);font-size:var(--ds-font-sm);cursor:pointer;transition:opacity .15s}.merge-button:hover:not(:disabled){opacity:.9}.merge-button:disabled{opacity:.5;cursor:not-allowed}.keep-separate-button{padding:0 1rem;border-radius:var(--ds-radius-lg);border:1px solid var(--ds-border-color);background-color:var(--ds-bg-primary);color:var(--ds-text-secondary);font-weight:var(--ds-weight-medium);font-size:var(--ds-font-sm);cursor:pointer;transition:background-color .15s,border-color .15s}.keep-separate-button:hover:not(:disabled){background-color:var(--ds-bg-secondary);border-color:var(--ds-text-secondary)}.keep-separate-button:disabled{opacity:.5;cursor:not-allowed}.duplicate-group-cards{display:flex;gap:var(--ds-space-4);padding:1rem 1.25rem;overflow-x:auto}.duplicate-card-wrapper{flex-shrink:0;position:relative;cursor:pointer;border-radius:var(--ds-radius-lg);transition:transform .15s}.duplicate-card-wrapper:hover{transform:translateY(-2px)}.duplicate-card-wrapper.primary{box-shadow:0 0 0 2px var(--ds-color-primary)}.primary-badge{position:absolute;top:-.5rem;left:50%;transform:translate(-50%);background-color:var(--ds-color-primary);color:#fff;font-size:.625rem;font-weight:var(--ds-weight-semibold);padding:.125rem .5rem;border-radius:1rem;text-transform:uppercase;letter-spacing:.05em;z-index:1}.duplicate-card{width:220px;background-color:var(--ds-bg-secondary);border-radius:var(--ds-radius-lg);padding:var(--ds-space-4);border:1px solid var(--ds-border-color)}.duplicate-card-header{display:flex;align-items:center;gap:var(--ds-space-3);margin-bottom:var(--ds-space-3)}.duplicate-card-name{min-width:0}.duplicate-card-name .name{display:block;font-weight:var(--ds-weight-semibold);font-size:.9375rem;color:var(--ds-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.duplicate-card-name .company{display:block;font-size:.8125rem;color:var(--ds-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.duplicate-card-fields{display:flex;flex-direction:column;gap:.375rem}.duplicate-card-field{display:flex;align-items:center;gap:var(--ds-space-2);font-size:.8125rem;color:var(--ds-text-secondary);padding:.25rem .5rem;border-radius:var(--ds-radius-sm)}.duplicate-card-field [class*=fa-]{font-size:var(--ds-font-md);flex-shrink:0}.duplicate-card-field .value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.duplicate-card-field.matching{background-color:var(--ds-color-primary-light);color:var(--ds-color-primary)}.duplicate-card-field.matching [class*=fa-]{color:var(--ds-color-primary)}.duplicate-card-field.empty{font-style:italic}.toast{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:var(--ds-space-3);padding:.75rem 1rem;background-color:#333;color:#fff;border-radius:var(--ds-radius-lg);box-shadow:0 4px 12px #0003;z-index:1000;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translate(-50%) translateY(1rem)}to{opacity:1;transform:translate(-50%) translateY(0)}}.toast [class*=fa-]{font-size:var(--ds-font-xl);color:var(--ds-color-success)}.toast .message{font-size:.9375rem}.toast .dismiss{background:transparent;border:none;color:#ffffffb3;cursor:pointer;padding:var(--ds-space-1);display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .15s,color .15s}.toast .dismiss:hover{background-color:#ffffff1a;color:#fff}.toast .dismiss [class*=fa-]{font-size:var(--ds-font-lg);color:inherit}.toast .toast-action{background:transparent;border:none;color:#fff;font-weight:var(--ds-weight-semibold);font-size:var(--ds-font-sm);cursor:pointer;padding:.25rem .5rem;border-radius:var(--ds-radius-sm);transition:background-color .15s}.toast .toast-action:hover{background-color:#ffffff26}.toast.error [class*=fa-]{color:var(--ds-color-error)}.modal-overlay{position:fixed;inset:0;background:var(--ds-bg-overlay);display:flex;align-items:center;justify-content:center;z-index:var(--ds-z-modal)}.modal-content{background:var(--ds-bg-primary);border-radius:var(--ds-modal-radius);padding:var(--ds-modal-padding);box-shadow:var(--ds-modal-shadow);max-width:calc(100vw - 2rem)}.confirm-dialog{max-width:400px;text-align:left}.confirm-dialog h3{margin:0 0 .75rem;font-size:var(--ds-font-lg)}.confirm-dialog p{margin:0 0 1.25rem;color:var(--ds-text-secondary);line-height:1.5}.confirm-dialog .warning-text{color:var(--ds-color-error);font-weight:var(--ds-weight-medium);font-size:var(--ds-font-sm)}.confirm-actions{display:flex;justify-content:space-between}.import-modal{max-width:500px;width:100%}.import-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--ds-space-4)}.import-modal-header h3{margin:0;font-size:var(--ds-font-lg)}.import-modal-close{background:none;border:none;font-size:var(--ds-font-2xl);cursor:pointer;color:var(--ds-text-secondary);padding:0;line-height:1}.import-modal-close:hover{color:var(--ds-text-primary)}.contact-card.expanded{flex-direction:column;align-items:stretch;padding:0;cursor:default}.contact-card.expanded:hover{box-shadow:0 2px 16px #0000000d;transform:none}.contact-card .collapsed-content{display:flex;align-items:center;padding:13px;cursor:pointer;width:100%}.contact-card.expanded .collapsed-content{border-bottom:0;background-color:var(--ds-bg-primary);border-radius:8px 8px 0 0}.contact-card.expanded.selected .collapsed-content{box-shadow:inset 0 2px 0 0 var(--ds-color-info-light),inset 2px 0 0 0 var(--ds-color-info-light),inset -2px 0 0 0 var(--ds-color-info-light)}.expanded-content{display:flex;flex-direction:column;gap:var(--ds-space-4);padding:13px}.expanded-top-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--ds-space-2)}.expanded-actions{display:flex;gap:var(--ds-space-2)}.action-button{display:flex;align-items:center;gap:.375rem;padding:0 1rem;border-radius:var(--ds-radius-lg);background-color:var(--ds-color-primary);color:#fff;font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);text-decoration:none;transition:opacity .15s}.action-button:hover{opacity:.9;color:#fff;text-decoration:none}.action-button [class*=fa-]{font-size:var(--ds-font-lg)}.expanded-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--ds-space-8)}.expanded-row-notes{grid-template-columns:2fr 1fr}.expanded-column{display:flex;flex-direction:column;gap:var(--ds-space-3)}.expanded-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--ds-space-6)}.expanded-section{display:flex;flex-direction:column;min-width:0}.section-header{font-size:var(--ds-font-2xs);font-weight:var(--ds-weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--ds-text-secondary);padding-bottom:.5rem;border-bottom:1px solid var(--ds-border-color);margin-bottom:var(--ds-space-3)}.expanded-section-view{display:flex;flex-direction:column;gap:var(--ds-space-3)}.expanded-section-view.gap-lg{gap:var(--ds-space-4)}.section-heading{padding-top:8px;border-top:1px solid var(--ds-border-color)}.section-heading-row{display:flex;align-items:center;gap:10px}.section-heading-row [class*=fa-]{font-size:var(--ds-font-md);color:var(--ds-text-muted)}.section-heading-row .zodiac-icon{width:16px;height:16px;flex-shrink:0;opacity:.6}.section-heading-label{font-size:8px;font-weight:var(--ds-weight-semibold);color:var(--ds-text-muted);text-transform:uppercase;letter-spacing:.5px}.info-field{display:flex;gap:var(--ds-space-1);align-items:center}.info-field-icon{display:flex;align-items:center;justify-content:center;height:26px;width:20px;flex-shrink:0}.info-field-icon [class*=fa-]{font-size:var(--ds-font-md);color:var(--ds-text-secondary)}.info-field-icon .flag-emoji{font-size:var(--ds-font-md);line-height:1}.info-field-value{padding:8px 6px;border-radius:var(--ds-radius-sm);font-size:var(--ds-font-sm);color:var(--ds-text-primary);min-width:0;overflow:hidden;text-overflow:ellipsis}.info-field-value a{color:var(--ds-text-primary);text-decoration:none}.info-field-value a:hover{text-decoration:underline}a.whatsapp-link{display:inline-flex;align-items:center;margin-left:var(--ds-space-2);color:var(--ds-color-whatsapp);font-size:var(--ds-font-md);vertical-align:middle}a.whatsapp-link:hover{color:var(--ds-color-whatsapp-hover);text-decoration:none}.info-field-value .address-lines{display:flex;flex-direction:column;line-height:1.3}.show-more-link{padding-left:26px;border-top:1px solid var(--ds-border-color);padding-top:8px}.show-more-button{font-size:8px;font-weight:var(--ds-weight-semibold);color:#616189;text-transform:uppercase;letter-spacing:.5px;background:none;border:none;cursor:pointer;padding:0}.show-more-button:hover{color:var(--ds-color-primary)}.notes-field{background:var(--ds-bg-secondary);border:1px solid var(--ds-border-dark);border-radius:var(--ds-radius-sm);padding:8px 12px;min-height:64px;font-size:var(--ds-font-sm);color:var(--ds-text-primary);white-space:pre-wrap;line-height:1.5}.metadata-row{display:flex;gap:var(--ds-space-4)}.metadata-pair{font-size:8px}.metadata-pair-label{color:#616189}.metadata-pair-value{color:#111118}.edit-button-primary{background:var(--ds-color-primary);color:#fff;font-weight:var(--ds-weight-bold);font-size:var(--ds-font-sm);padding:0 12px;border-radius:var(--ds-radius-lg);border:none;cursor:pointer;transition:opacity .15s}.edit-button-primary:hover{opacity:.9}.expanded-bottom-actions{display:flex;justify-content:flex-end}.contact-photo-gallery{display:flex;align-items:center;gap:var(--ds-space-2);padding:.25rem 0}.photo-gallery-label{font-size:var(--ds-font-xs);color:var(--ds-text-secondary);white-space:nowrap}.photo-gallery-thumbnails{display:flex;gap:var(--ds-space-2)}.photo-gallery-thumb{display:flex;flex-direction:column;align-items:center;gap:2px;background:none;border:2px solid transparent;border-radius:var(--ds-radius-lg);padding:2px;cursor:pointer;transition:border-color .15s}.photo-gallery-thumb:hover:not(:disabled){border-color:var(--ds-color-primary)}.photo-gallery-thumb.is-primary{border-color:var(--ds-color-primary)}.photo-gallery-thumb img{width:32px;height:32px;border-radius:50%;object-fit:cover}.photo-gallery-placeholder{width:32px;height:32px;border-radius:50%;background:var(--ds-bg-secondary);display:flex;align-items:center;justify-content:center;font-size:.7rem;color:var(--ds-text-secondary)}.photo-gallery-source{font-size:.6rem;color:var(--ds-text-secondary);line-height:1}.section-content{display:flex;flex-direction:column;gap:var(--ds-space-2)}.expanded-item{display:flex;align-items:flex-start;gap:var(--ds-space-2)}.expanded-item [class*=fa-]{font-size:var(--ds-font-lg);color:var(--ds-text-secondary);margin-top:.125rem}.zodiac-icon{width:20px;height:20px;flex-shrink:0;margin-top:.125rem}.expanded-item-content{flex:1;min-width:0;display:flex;flex-direction:column}.expanded-item-content a{color:var(--ds-color-primary);text-decoration:none;font-size:.9375rem}.expanded-item-content a:hover{text-decoration:underline}.expanded-item-content .address-text{font-size:.9375rem;color:var(--ds-text-primary);line-height:1.4}.item-type{font-size:var(--ds-font-xs);color:var(--ds-text-secondary);text-transform:capitalize;opacity:0;transition:opacity .15s ease}.expanded-item:hover .item-type,.expanded-item:focus-within .item-type{opacity:1}.edit-section-content .item-type{opacity:1}.metadata-section{margin-top:auto}.metadata-item{display:flex;justify-content:space-between;font-size:.8125rem;padding:.25rem 0}.metadata-label{color:var(--ds-text-secondary)}.metadata-value{color:var(--ds-text-primary)}.linkedin-section{background:linear-gradient(135deg,#0a66c20d,#0a66c205);border-radius:var(--ds-radius-lg);padding:var(--ds-space-3);margin-bottom:var(--ds-space-4);border:1px solid rgba(10,102,194,.1)}.linkedin-section .section-header{display:flex;align-items:center;gap:var(--ds-space-2);color:#0a66c2}.linkedin-icon{color:#0a66c2}.linkedin-headline{font-size:.9375rem;font-weight:var(--ds-weight-medium);color:var(--ds-text-primary);margin-bottom:var(--ds-space-3);line-height:1.4;white-space:pre-wrap}.linkedin-profile-photo{margin-bottom:var(--ds-space-3)}.linkedin-avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;border:2px solid rgba(10,102,194,.2)}.linkedin-content .expanded-item{padding:.375rem 0}.linkedin-about{margin:.75rem 0}.linkedin-about summary{cursor:pointer;font-size:.8125rem;font-weight:var(--ds-weight-medium);color:var(--ds-text-secondary);padding:.25rem 0}.linkedin-about p{font-size:var(--ds-font-sm);color:var(--ds-text-primary);line-height:1.5;margin:.5rem 0 0;white-space:pre-wrap}.linkedin-skills .skills-list{display:flex;flex-wrap:wrap;gap:.375rem}.skill-tag{display:inline-block;padding:.1875rem .5rem;background-color:#0a66c21a;color:#0a66c2;border-radius:var(--ds-radius-xl);font-size:var(--ds-font-xs);font-weight:var(--ds-weight-medium)}.education-list{margin:0;padding-left:1rem;font-size:var(--ds-font-sm)}.education-list li{margin-bottom:var(--ds-space-1)}.linkedin-footer{display:flex;align-items:center;gap:.375rem;font-size:var(--ds-font-xs);color:var(--ds-text-tertiary);margin-top:var(--ds-space-3);padding-top:.5rem;border-top:1px solid rgba(10,102,194,.1)}.linkedin-footer [class*=fa-]{font-size:var(--ds-font-sm)}.linkedin-sub-detail{font-size:.8rem;color:var(--ds-text-tertiary)}.notes-box{background:var(--ds-color-warning-light);border:1px solid var(--ds-color-warning-light);border-radius:var(--ds-radius-xl);padding:var(--ds-space-4)}.notes-content{font-size:.9375rem;color:var(--ds-text-primary);white-space:pre-wrap;line-height:1.5}@media(max-width:1024px){.expanded-row{grid-template-columns:1fr 1fr}.expanded-row-notes{grid-template-columns:1fr}.expanded-grid{grid-template-columns:1fr 1fr}}@media(max-width:640px){.contact-details,.contact-card-actions,.contact-role{display:none}.expanded-row,.expanded-grid{grid-template-columns:1fr}.expanded-top-row{flex-direction:column;align-items:flex-start;gap:var(--ds-space-4)}}.confidence-filter{display:flex;gap:var(--ds-space-2);margin-bottom:var(--ds-space-4)}.confidence-chip{padding:.375rem .75rem;border-radius:1rem;font-size:.8125rem;font-weight:var(--ds-weight-medium);cursor:pointer;border:1px solid;transition:all .15s;background:transparent}.confidence-chip:hover{opacity:.8}.confidence-chip.very-high{border-color:#bbf7d0;color:#166534}.confidence-chip.very-high.active{background:var(--ds-color-success-light);border-color:#86efac}.confidence-chip.high{border-color:#bfdbfe;color:#1e40af}.confidence-chip.high.active{background:var(--ds-color-info-light);border-color:#93c5fd}.confidence-chip.medium{border-color:var(--ds-border-color);color:#4b5563}.confidence-chip.medium.active{background:var(--ds-bg-tertiary);border-color:var(--ds-border-dark)}.confidence-badge.very-high{background:var(--ds-color-success-light);color:#166534}.confidence-badge.high{background:var(--ds-color-info-light);color:#1e40af}.confidence-badge.medium{background:var(--ds-bg-tertiary);color:#4b5563}.nickname-indicator,.name-match-indicator{font-size:var(--ds-font-2xs);color:#9333ea;margin-left:var(--ds-space-1);font-style:italic}.matched-criteria{display:flex;align-items:center;gap:var(--ds-space-2);flex-wrap:wrap}.criteria-tag{font-size:var(--ds-font-xs);padding:.125rem .5rem;border-radius:var(--ds-radius-sm);background:var(--ds-color-primary-light);color:var(--ds-color-primary)}.pagination{display:flex;align-items:center;justify-content:center;gap:var(--ds-space-4);padding:var(--ds-space-6);border-top:1px solid var(--ds-border-color);background-color:var(--ds-bg-primary)}.pagination-button{display:flex;align-items:center;gap:var(--ds-space-1);padding:0 1rem;border-radius:var(--ds-radius-lg);border:1px solid var(--ds-border-color);background-color:var(--ds-bg-primary);color:var(--ds-text-primary);font-weight:var(--ds-weight-medium);font-size:var(--ds-font-sm);cursor:pointer;transition:background-color .15s,border-color .15s}.pagination-button:hover:not(:disabled){background-color:var(--ds-bg-secondary);border-color:var(--ds-text-secondary)}.pagination-button:disabled{opacity:.5;cursor:not-allowed}.pagination-button [class*=fa-]{font-size:var(--ds-font-xl)}.pagination-indicator{font-size:var(--ds-font-sm);color:var(--ds-text-secondary);font-weight:var(--ds-weight-medium);min-width:100px;text-align:center}.cleanup-view{display:flex;flex-direction:column;height:100vh}.cleanup-header{background-color:var(--ds-bg-primary);border-bottom:1px solid var(--ds-border-color);padding:1rem 1.5rem}.cleanup-mode-selector{display:flex;gap:var(--ds-space-2);margin-bottom:var(--ds-space-4)}.cleanup-mode-pill{display:flex;align-items:center;gap:var(--ds-space-2);padding:0 1rem;border-radius:2rem;border:1px solid var(--ds-border-color);background-color:var(--ds-bg-primary);color:var(--ds-text-secondary);font-weight:var(--ds-weight-medium);font-size:var(--ds-font-sm);cursor:pointer;transition:all .15s}.cleanup-mode-pill:hover:not(:disabled){border-color:var(--ds-color-primary);color:var(--ds-color-primary)}.cleanup-mode-pill.active{background-color:var(--ds-color-primary);border-color:var(--ds-color-primary);color:#fff}.cleanup-mode-pill [class*=fa-]{font-size:var(--ds-font-lg)}.cleanup-mode-pill .cleanup-mode-count{background-color:#0000001a;padding:.125rem .5rem;border-radius:1rem;font-size:var(--ds-font-xs)}.cleanup-mode-pill.active .cleanup-mode-count{background-color:#fff3}.cleanup-controls{display:flex;align-items:center;gap:var(--ds-space-6);margin-bottom:var(--ds-space-4);flex-wrap:wrap}.threshold-selector{display:flex;align-items:center;gap:var(--ds-space-2)}.threshold-selector label{font-size:var(--ds-font-sm);color:var(--ds-text-secondary);font-weight:var(--ds-weight-medium)}.threshold-select{padding:0 .75rem;border-radius:var(--ds-radius-md);border:1px solid var(--ds-border-color);background-color:var(--ds-bg-primary);color:var(--ds-text-primary);font-size:var(--ds-font-sm);cursor:pointer}.threshold-select:focus-visible{outline:none;border-color:var(--ds-color-primary);box-shadow:var(--ds-shadow-focus)}.cleanup-filters{display:flex;gap:var(--ds-space-2)}.cleanup-filter-chip{padding:0 .75rem;border-radius:1rem;font-size:.8125rem;font-weight:var(--ds-weight-medium);cursor:pointer;border:1px solid var(--ds-border-color);background:transparent;color:var(--ds-text-secondary);transition:all .15s}.cleanup-filter-chip:hover{border-color:var(--ds-color-primary);color:var(--ds-color-primary)}.cleanup-filter-chip.active{background:var(--ds-color-primary-light);border-color:var(--ds-color-primary);color:var(--ds-color-primary)}.cleanup-stats-row{display:flex;align-items:center;justify-content:space-between;gap:var(--ds-space-4)}.cleanup-stats{font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.delete-selected-button{display:flex;align-items:center;gap:.375rem;padding:0 1rem;background:var(--ds-color-error);color:#fff;border:none;border-radius:var(--ds-radius-md);font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);cursor:pointer;transition:opacity .2s}.delete-selected-button:hover:not(:disabled){opacity:.9}.delete-selected-button:disabled{opacity:.6;cursor:not-allowed}.delete-selected-button [class*=fa-]{font-size:var(--ds-font-lg)}.cleanup-content{flex:1;overflow:hidden}.cleanup-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--ds-text-secondary)}.cleanup-loading [class*=fa-]{font-size:3rem;margin-bottom:var(--ds-space-4)}.cleanup-list{height:100%;display:flex;flex-direction:column}.cleanup-list-actions{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;background-color:var(--ds-bg-primary);border-bottom:1px solid var(--ds-border-color)}.cleanup-selection-actions{display:flex;gap:var(--ds-space-2)}.cleanup-action-button{display:flex;align-items:center;gap:.375rem;padding:0 .75rem;border-radius:var(--ds-radius-md);border:1px solid var(--ds-border-color);background-color:var(--ds-bg-primary);color:var(--ds-text-secondary);font-size:.8125rem;cursor:pointer;transition:all .15s}.cleanup-action-button:hover:not(:disabled){background-color:var(--ds-bg-secondary);border-color:var(--ds-text-secondary)}.cleanup-action-button:disabled{opacity:.5;cursor:not-allowed}.cleanup-action-button [class*=fa-]{font-size:var(--ds-font-md)}.cleanup-selection-count{font-size:var(--ds-font-sm);color:var(--ds-color-primary);font-weight:var(--ds-weight-medium)}.cleanup-list-content{flex:1;overflow-y:auto;padding:var(--ds-space-6)}.cleanup-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--ds-text-secondary)}.cleanup-list-empty [class*=fa-]{font-size:3rem;margin-bottom:var(--ds-space-4);color:var(--ds-color-success)}.cleanup-card{display:flex;align-items:flex-start;gap:var(--ds-space-4);padding:1rem 1.25rem;margin-bottom:var(--ds-space-3)}.cleanup-card.selected{box-shadow:0 0 0 2px var(--ds-color-primary)}.cleanup-card-checkbox{padding-top:.25rem}.cleanup-card-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--ds-color-primary)}.cleanup-card-content{flex:1;min-width:0}.cleanup-card-header{display:flex;align-items:center;gap:var(--ds-space-3);margin-bottom:var(--ds-space-2)}.cleanup-card-name{flex:1;min-width:0}.cleanup-card-name .name{display:block;font-weight:var(--ds-weight-semibold);font-size:.9375rem;color:var(--ds-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cleanup-card-name .company{display:block;font-size:.8125rem;color:var(--ds-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cleanup-badge.badge-empty{background:var(--ds-color-error-light);color:var(--ds-color-error-dark)}.cleanup-badge.badge-name-only{background:var(--ds-color-warning-light);color:var(--ds-color-warning)}.cleanup-badge.badge-many-domains{background:#faf5ff;color:var(--ds-color-primary)}.cleanup-badge.badge-same-domain{background:#eff6ff;color:var(--ds-color-info-dark)}.cleanup-card-issue{display:flex;align-items:center;gap:var(--ds-space-2);padding:.5rem .75rem;background-color:var(--ds-bg-secondary);border-radius:var(--ds-radius-md);font-size:.8125rem;color:var(--ds-text-secondary);margin-bottom:var(--ds-space-2)}.cleanup-card-issue [class*=fa-]{font-size:var(--ds-font-md);color:var(--ds-text-secondary)}.cleanup-card-emails{display:flex;flex-direction:column;gap:var(--ds-space-1)}.cleanup-card-email{display:flex;align-items:center;gap:var(--ds-space-2);font-size:.8125rem;color:var(--ds-text-secondary);padding:.25rem 0}.cleanup-card-email [class*=fa-]{font-size:var(--ds-font-md);color:var(--ds-text-secondary)}.cleanup-card-email .value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cleanup-card-email .type{font-size:var(--ds-font-2xs);color:var(--ds-text-secondary);text-transform:capitalize}.cleanup-card-summary{display:flex;flex-direction:column;gap:var(--ds-space-1)}.cleanup-card-field{display:flex;align-items:center;gap:var(--ds-space-2);font-size:.8125rem;color:var(--ds-text-secondary);padding:.25rem 0}.cleanup-card-field [class*=fa-]{font-size:var(--ds-font-md);color:var(--ds-text-secondary)}.cleanup-card-field .notes-preview{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:300px}.cleanup-card-field.empty{font-style:italic}.categories-container{display:flex;flex-wrap:wrap;gap:.375rem}.category-tag{display:inline-block;padding:.25rem .625rem;background-color:var(--ds-color-primary-light);color:var(--ds-color-primary);border-radius:1rem;font-size:.8125rem;font-weight:var(--ds-weight-medium)}.social-links-cleanup{display:flex;flex-direction:column;height:100%}.social-links-description{padding:1rem 1.5rem;background-color:var(--ds-bg-primary);border-bottom:1px solid var(--ds-border-color);color:var(--ds-text-secondary);font-size:var(--ds-font-sm)}.social-links-description p{margin:0}.social-links-tabs{display:flex;gap:var(--ds-space-2);padding:1rem 1.5rem;background-color:var(--ds-bg-primary);border-bottom:1px solid var(--ds-border-color)}.social-links-tab{display:flex;align-items:center;gap:var(--ds-space-2);padding:0 1rem;border-radius:var(--ds-radius-lg);border:1px solid var(--ds-border-color);background-color:var(--ds-bg-primary);color:var(--ds-text-secondary);font-weight:var(--ds-weight-medium);font-size:var(--ds-font-sm);cursor:pointer;transition:all .15s}.social-links-tab:hover:not(:disabled){border-color:var(--ds-color-primary);color:var(--ds-color-primary)}.social-links-tab.active{background-color:var(--ds-color-primary);border-color:var(--ds-color-primary);color:#fff}.social-links-tab [class*=fa-]{font-size:var(--ds-font-lg)}.social-links-tab .tab-count{background-color:#0000001a;padding:.125rem .5rem;border-radius:1rem;font-size:var(--ds-font-xs)}.social-links-tab.active .tab-count{background-color:#fff3}.social-links-content{flex:1;overflow-y:auto}.social-links-loading,.social-links-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:300px;color:var(--ds-text-secondary)}.social-links-loading [class*=fa-],.social-links-empty [class*=fa-]{font-size:3rem;margin-bottom:var(--ds-space-4)}.social-links-empty [class*=fa-]{color:var(--ds-color-success)}.social-links-cross-contact{padding:1rem 1.5rem}.social-links-stats{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--ds-space-3);font-size:var(--ds-font-sm);color:var(--ds-text-secondary);margin-bottom:var(--ds-space-4)}.merge-all-button{display:flex;align-items:center;gap:var(--ds-space-2);padding:0 1rem;border-radius:var(--ds-radius-lg);background-color:var(--ds-color-primary);color:#fff;border:none;font-weight:var(--ds-weight-medium);font-size:var(--ds-font-sm);cursor:pointer;transition:all .15s}.merge-all-button:hover:not(:disabled){background-color:var(--ds-color-primary-hover)}.merge-all-button:disabled{opacity:.6;cursor:not-allowed}.merge-all-button [class*=fa-]{font-size:var(--ds-font-lg)}.social-links-within-contact{padding:1rem 1.5rem}.social-links-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--ds-space-4)}.fix-all-button{display:flex;align-items:center;gap:var(--ds-space-2);padding:0 1rem;border-radius:var(--ds-radius-lg);background-color:var(--ds-color-primary);color:#fff;border:none;font-weight:var(--ds-weight-medium);font-size:var(--ds-font-sm);cursor:pointer;transition:all .15s}.fix-all-button:hover:not(:disabled){background-color:var(--ds-color-primary-hover)}.fix-all-button:disabled{opacity:.6;cursor:not-allowed}.fix-all-button [class*=fa-]{font-size:var(--ds-font-lg)}.within-contact-list{display:flex;flex-direction:column;gap:var(--ds-space-3);margin-bottom:var(--ds-space-4)}.within-contact-item{display:flex;align-items:center;justify-content:space-between;gap:var(--ds-space-4);padding:.875rem 1rem;background-color:var(--ds-bg-primary);border-radius:var(--ds-radius-lg);box-shadow:0 1px 3px #0000000d}.within-contact-info{display:flex;align-items:center;gap:var(--ds-space-3);min-width:200px}.within-contact-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover}.within-contact-avatar.placeholder{display:flex;align-items:center;justify-content:center;background-color:var(--ds-bg-secondary);color:var(--ds-text-secondary)}.within-contact-avatar.placeholder [class*=fa-]{font-size:var(--ds-font-2xl)}.within-contact-name{font-weight:var(--ds-weight-medium);font-size:.9375rem;color:var(--ds-text-primary)}.within-contact-urls{display:flex;flex-wrap:wrap;gap:var(--ds-space-2)}.social-url-chip{display:flex;align-items:center;gap:.375rem;padding:.25rem .625rem;border-radius:1rem;background-color:var(--ds-bg-secondary);font-size:.8125rem;color:var(--ds-text-secondary)}.social-url-chip [class*=fa-]{font-size:var(--ds-font-md)}.social-url-chip .platform-name{font-weight:var(--ds-weight-medium);color:var(--ds-text-primary);text-transform:capitalize}.social-url-chip .username{color:var(--ds-text-secondary)}.note-text{font-size:var(--ds-font-sm);color:var(--ds-text-secondary);margin-top:var(--ds-space-2)}.archive-selected-button{display:flex;align-items:center;gap:.375rem;padding:0 1rem;background:var(--ds-color-primary);color:#fff;border:none;border-radius:var(--ds-radius-md);font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);cursor:pointer;transition:opacity .2s}.archive-selected-button:hover:not(:disabled){opacity:.9}.archive-selected-button:disabled{opacity:.6;cursor:not-allowed}.archive-selected-button [class*=fa-]{font-size:var(--ds-font-lg)}.merge-selected-button{display:flex;align-items:center;gap:.375rem;padding:0 1rem;background:var(--ds-color-primary);color:#fff;border:none;border-radius:var(--ds-radius-md);font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);cursor:pointer;transition:opacity .2s}.merge-selected-button:hover:not(:disabled){opacity:.9}.merge-selected-button:disabled{opacity:.6;cursor:not-allowed}.merge-selected-button [class*=fa-]{font-size:var(--ds-font-lg)}.merge-conflict-modal{max-width:700px;width:90vw;max-height:85vh;display:flex;flex-direction:column}.merge-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--ds-border-color)}.merge-modal-header h3{margin:0;font-size:var(--ds-font-xl);font-weight:var(--ds-weight-semibold)}.merge-modal-header .close-button{display:flex;align-items:center;justify-content:center;padding:0;background:transparent;border:none;border-radius:var(--ds-radius-md);color:var(--ds-text-secondary);cursor:pointer;transition:all .15s}.merge-modal-header .close-button:hover{background:var(--ds-bg-secondary);color:var(--ds-text-primary)}.merge-modal-body{flex:1;overflow-y:auto;padding:var(--ds-space-6)}.merge-section-label{margin:0 0 .75rem;font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);color:var(--ds-text-secondary)}.merge-primary-section{margin-bottom:var(--ds-space-6)}.merge-contact-cards{display:flex;flex-wrap:wrap;gap:var(--ds-space-3)}.merge-contact-card{position:relative;display:flex;align-items:center;gap:var(--ds-space-3);padding:.75rem 1rem;background:var(--ds-bg-secondary);border:2px solid var(--ds-border-color);border-radius:var(--ds-radius-lg);cursor:pointer;transition:all .15s;min-width:150px}.merge-contact-card:hover{border-color:var(--ds-text-secondary)}.merge-contact-card.primary{border-color:var(--ds-color-primary);background:color-mix(in srgb,var(--ds-color-primary) 5%,var(--ds-bg-secondary))}.merge-contact-card .primary-badge{position:absolute;top:-.5rem;left:10px;padding:2px .5rem;background:var(--ds-color-primary);color:#fff;font-size:var(--ds-font-2xs);font-weight:var(--ds-weight-semibold);border-radius:var(--ds-radius-sm);text-transform:uppercase}.merge-contact-avatar{width:40px;height:40px;border-radius:50%;background:var(--ds-border-color);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.merge-contact-avatar img{width:100%;height:100%;object-fit:cover}.merge-contact-avatar [class*=fa-]{font-size:var(--ds-font-2xl);color:var(--ds-text-secondary)}.merge-contact-info{min-width:0}.merge-contact-name{font-weight:var(--ds-weight-medium);font-size:var(--ds-font-sm);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.merge-contact-company{font-size:var(--ds-font-xs);color:var(--ds-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.merge-conflicts-section{border-top:1px solid var(--ds-border-color);padding-top:1.5rem}.merge-conflict-field{margin-bottom:var(--ds-space-5)}.merge-conflict-field:last-child{margin-bottom:0}.conflict-field-name{font-weight:var(--ds-weight-semibold);font-size:var(--ds-font-sm);margin-bottom:var(--ds-space-2);color:var(--ds-text-primary)}.conflict-options{display:flex;flex-direction:column;gap:var(--ds-space-2)}.conflict-option{display:flex;align-items:center;gap:var(--ds-space-2);padding:.5rem .75rem;background:var(--ds-bg-secondary);border-radius:var(--ds-radius-md);cursor:pointer;transition:background .15s}.conflict-option:hover{background:var(--ds-border-color)}.conflict-option input[type=radio]{width:1rem;height:1rem;accent-color:var(--ds-color-primary);cursor:pointer}.conflict-option .option-value{font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium)}.conflict-option .option-value.empty{color:var(--ds-text-secondary);font-style:italic}.conflict-option .option-source{font-size:var(--ds-font-xs);color:var(--ds-text-secondary)}.merge-no-conflicts{display:flex;flex-direction:column;align-items:center;padding:var(--ds-space-8);text-align:center;color:var(--ds-text-secondary)}.merge-no-conflicts [class*=fa-]{font-size:48px;color:var(--ds-color-success);margin-bottom:var(--ds-space-3)}.merge-no-conflicts p{margin:0;font-size:var(--ds-font-sm)}.merge-modal-footer{display:flex;justify-content:flex-end;gap:var(--ds-space-3);padding:1rem 1.5rem;border-top:1px solid var(--ds-border-color)}.cleanup-action-buttons{display:flex;gap:var(--ds-space-2)}.archived-view{display:flex;flex-direction:column;height:100vh}.archived-actions{display:flex;gap:var(--ds-space-2);flex-wrap:wrap}.export-button{display:flex;align-items:center;gap:.375rem;padding:0 1rem;background:var(--ds-bg-primary);color:var(--ds-text-primary);border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-md);font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);cursor:pointer;transition:background-color .15s,border-color .15s}.export-button:hover{background-color:var(--ds-bg-secondary);border-color:var(--ds-text-secondary)}.export-button [class*=fa-]{font-size:var(--ds-font-lg)}.restore-button{display:flex;align-items:center;gap:.375rem;padding:0 1rem;background:var(--ds-color-success);color:#fff;border:none;border-radius:var(--ds-radius-md);font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);cursor:pointer;transition:opacity .2s}.restore-button:hover:not(:disabled){opacity:.9}.restore-button:disabled{opacity:.6;cursor:not-allowed}.restore-button [class*=fa-]{font-size:var(--ds-font-lg)}.archived-content{flex:1;overflow:hidden}.archived-loading,.archived-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--ds-text-secondary)}.archived-loading [class*=fa-],.archived-empty [class*=fa-]{font-size:3rem;margin-bottom:var(--ds-space-4)}.archived-empty [class*=fa-]{color:var(--ds-text-secondary)}.archived-empty h3{margin:0 0 .5rem;font-size:var(--ds-font-lg);color:var(--ds-text-primary)}.archived-empty p{margin:0;font-size:.9375rem}.archived-list{height:100%;display:flex;flex-direction:column}.archived-list-actions{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;background-color:var(--ds-bg-primary);border-bottom:1px solid var(--ds-border-color)}.archived-selection-actions{display:flex;gap:var(--ds-space-2)}.archived-selection-count{font-size:var(--ds-font-sm);color:var(--ds-color-primary);font-weight:var(--ds-weight-medium)}.archived-list-content{flex:1;overflow-y:auto;padding:var(--ds-space-6)}.archived-card{display:flex;align-items:flex-start;gap:var(--ds-space-4);padding:1rem 1.25rem;margin-bottom:var(--ds-space-3)}.archived-card.selected{box-shadow:0 0 0 2px var(--ds-color-primary)}.archived-card-checkbox{padding-top:.25rem}.archived-card-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--ds-color-primary)}.archived-card-content{flex:1;min-width:0}.archived-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--ds-space-4);margin-bottom:var(--ds-space-2)}.archived-card-name{flex:1;min-width:0}.archived-card-name .name{display:block;font-weight:var(--ds-weight-semibold);font-size:.9375rem;color:var(--ds-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.archived-card-name .company{display:block;font-size:.8125rem;color:var(--ds-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.archived-date{font-size:var(--ds-font-xs);color:var(--ds-text-secondary);white-space:nowrap}.archived-card-emails,.archived-card-phones{display:flex;flex-direction:column;gap:var(--ds-space-1)}.archived-card-email,.archived-card-phone{display:flex;align-items:center;gap:var(--ds-space-2);font-size:.8125rem;color:var(--ds-text-secondary)}.archived-card-email [class*=fa-],.archived-card-phone [class*=fa-]{font-size:var(--ds-font-md)}.archived-card-email .value,.archived-card-phone .value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.more-emails{font-size:var(--ds-font-xs);color:var(--ds-text-secondary);font-style:italic;margin-left:var(--ds-space-6)}.contact-list-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--ds-space-4)}.view-toggle{display:flex}.view-toggle .contact-action-button{border-radius:0}.view-toggle .contact-action-button:first-child{border-radius:.375rem 0 0 .375rem}.view-toggle .contact-action-button:last-child{border-radius:0 .375rem .375rem 0;border-left:none}.view-toggle .contact-action-button.active+.contact-action-button{border-left:none}.contact-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--ds-space-4);padding:.5rem 4px}.contact-grid-card{display:flex;flex-direction:column;align-items:center;padding:1.5rem 1rem;cursor:pointer;text-align:center}.contact-grid-card-info{margin-top:var(--ds-space-3);width:100%}.contact-grid-card-name{font-weight:var(--ds-weight-semibold);font-size:var(--ds-font-md);color:var(--ds-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-grid-card-company{font-size:var(--ds-font-sm);color:var(--ds-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:.125rem}.contact-grid-card-details{margin-top:var(--ds-space-3);width:100%;display:flex;flex-direction:column;gap:.375rem}.contact-grid-card-detail{display:flex;align-items:center;justify-content:center;gap:var(--ds-space-2);font-size:.8125rem;color:var(--ds-text-secondary)}.contact-grid-card-detail [class*=fa-]{font-size:var(--ds-font-md)}.contact-grid-card-detail .value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.contact-list-actions{display:flex;align-items:center;gap:var(--ds-space-2);flex-wrap:wrap;padding:.75rem 0;margin-bottom:var(--ds-space-2);border-bottom:1px solid var(--ds-border-color);position:sticky;top:var(--ds-header-height);z-index:var(--ds-z-sticky);background:var(--ds-bg-primary)}.contact-selection-actions{display:flex;gap:var(--ds-space-2);margin-left:auto}.contact-sort-select{height:2rem;padding:0 .5rem;border-radius:var(--ds-radius-md);border:1px solid var(--ds-border-color);background-color:var(--ds-bg-primary);color:var(--ds-text-secondary);font-size:.8125rem;cursor:pointer}.contact-sort-select:hover{border-color:var(--ds-text-secondary)}.contact-filters-container{position:relative}.filter-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.125rem;height:1.125rem;padding:0 .3rem;border-radius:var(--ds-radius-full);background-color:var(--ds-color-primary);color:#fff;font-size:var(--ds-font-2xs);font-weight:var(--ds-weight-semibold);line-height:1}.filter-popover{position:absolute;top:calc(100% + 4px);left:0;z-index:var(--ds-z-dropdown);background:var(--ds-bg-primary);border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-lg);box-shadow:var(--ds-shadow-md);min-width:240px;padding:.5rem 0}.filter-popover-header{display:flex;align-items:center;justify-content:space-between;padding:.375rem .75rem .5rem;font-size:.8125rem;font-weight:var(--ds-weight-semibold);color:var(--ds-text-primary);border-bottom:1px solid var(--ds-border-color);margin-bottom:var(--ds-space-1)}.filter-clear-btn{background:none;border:none;color:var(--ds-color-primary);font-size:var(--ds-font-xs);cursor:pointer;padding:0}.filter-clear-btn:hover{text-decoration:underline}.filter-group{padding:.25rem 0}.filter-group+.filter-group{border-top:1px solid var(--ds-border-color)}.filter-group-title{font-size:var(--ds-font-2xs);font-weight:var(--ds-weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--ds-text-tertiary);padding:.375rem .75rem .125rem}.filter-row{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.375rem .75rem;background:none;border:none;cursor:pointer;font-size:.8125rem;color:var(--ds-text-primary)}.filter-row:hover{background-color:var(--ds-bg-secondary)}.filter-row-label{flex:1;text-align:left}.filter-state{font-size:var(--ds-font-xs);font-weight:var(--ds-weight-medium);padding:.125rem .5rem;border-radius:var(--ds-radius-full)}.filter-state-any{color:var(--ds-text-tertiary)}.filter-state-has{color:var(--ds-color-success);background-color:#16a34a1a}.filter-state-no{color:var(--ds-color-error);background-color:#dc26261a}.filter-chips{display:flex;flex-wrap:wrap;gap:.375rem}.filter-chip{display:inline-flex;align-items:center;gap:var(--ds-space-1);padding:.1875rem .5rem;background-color:var(--ds-bg-secondary);border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-full);font-size:var(--ds-font-xs);color:var(--ds-text-secondary)}.filter-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;padding:0;border:none;background:none;color:var(--ds-text-tertiary);cursor:pointer;border-radius:50%}.filter-chip-remove:hover{color:var(--ds-color-error);background-color:#dc26261a}.contact-action-button{display:flex;align-items:center;gap:.375rem;padding:0 .75rem;border-radius:var(--ds-radius-md);border:1px solid var(--ds-border-color);background-color:var(--ds-bg-primary);color:var(--ds-text-secondary);font-size:.8125rem;cursor:pointer;transition:all .15s}.contact-action-button:hover:not(:disabled):not(.active){background-color:var(--ds-bg-secondary);border-color:var(--ds-text-secondary)}.contact-action-button:disabled{opacity:.5;cursor:not-allowed}.contact-action-button.active{background-color:var(--ds-color-primary);color:#fff;border-color:var(--ds-color-primary)}.contact-action-buttons{display:flex;gap:var(--ds-space-2)}.contact-card.selected{box-shadow:inset 0 0 0 2px var(--ds-color-info-light)}.contact-grid-card{position:relative}.contact-grid-card.selected{box-shadow:inset 0 0 0 2px var(--ds-color-info-light)}.avatar-wrapper{position:relative;flex-shrink:0;cursor:pointer}.avatar-wrapper:focus-visible{outline:2px solid var(--ds-color-info);outline-offset:-1px;border-radius:50%}.avatar-select-badge{position:absolute;top:-2px;left:-3.5px;width:16px;height:16px;opacity:0;transition:opacity .15s;color:var(--ds-text-muted);font-size:var(--ds-font-md);line-height:1;z-index:1;pointer-events:none;background-color:#fff;border-radius:16px}.contact-card:hover .avatar-select-badge,.contact-grid-card:hover .avatar-select-badge{opacity:1}.avatar-wrapper.selected .avatar-select-badge{opacity:1;color:var(--ds-color-info)}.duplicate-card-checkbox{position:absolute;top:-.375rem;right:-.375rem;z-index:2;background:#fff;border-radius:50%;padding:2px;box-shadow:0 1px 3px #0003}.duplicate-card-checkbox input[type=checkbox]{width:1rem;height:1rem;cursor:pointer;accent-color:var(--ds-color-primary)}.duplicate-card-wrapper.selected .duplicate-card{box-shadow:0 0 0 2px var(--ds-color-primary)}.dedup-action-buttons{display:flex;gap:var(--ds-space-2)}.phone-display{display:inline-flex;align-items:center;gap:.375rem}.phone-flag{font-size:var(--ds-font-md);line-height:1;cursor:help}.groups-view{display:flex;flex-direction:column;height:100vh;overflow-y:auto;padding:1.5rem 0}.groups-loading,.groups-empty,.groups-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--ds-text-secondary)}.groups-loading [class*=fa-],.groups-empty [class*=fa-],.groups-error [class*=fa-]{font-size:3rem;margin-bottom:var(--ds-space-4)}.groups-empty h3{margin:0 0 .5rem;font-size:var(--ds-font-lg);color:var(--ds-text-primary)}.groups-empty p,.groups-error p{margin:0;font-size:.9375rem}.groups-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--ds-space-4)}.group-card{display:flex;align-items:center;gap:var(--ds-space-4);padding:1rem 1.25rem;cursor:pointer}.group-card-icon{width:48px;height:48px;border-radius:var(--ds-radius-xl);background-color:var(--ds-color-primary-light);display:flex;align-items:center;justify-content:center;flex-shrink:0}.group-card-icon [class*=fa-]{font-size:var(--ds-font-2xl);color:var(--ds-color-primary)}.group-card-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--ds-space-1)}.group-name{font-weight:var(--ds-weight-semibold);font-size:var(--ds-font-md);color:var(--ds-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-count{font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.group-card-arrow{color:var(--ds-text-secondary);flex-shrink:0}.groups-filtered{padding:0}.groups-filtered .contact-list{flex:1;display:flex;flex-direction:column}.back-button{display:inline-flex;align-items:center;gap:.375rem;padding:0 .75rem;background:transparent;color:var(--ds-text-secondary);border:none;border-radius:var(--ds-radius-md);font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);cursor:pointer;margin-left:-.5rem;transition:color .15s,background-color .15s}.back-button:hover{color:var(--ds-text-primary);background-color:var(--ds-bg-secondary)}.back-button [class*=fa-]{font-size:var(--ds-font-lg)}.action-button.secondary{background-color:var(--ds-bg-secondary);color:var(--ds-text-primary);border:1px solid var(--ds-border-color)}.action-button.secondary:hover{background-color:var(--ds-border-color)}.action-button.primary{background-color:var(--ds-color-primary);color:#fff}.action-button:disabled{opacity:.6;cursor:not-allowed}.edit-name-fields{display:flex;flex-wrap:wrap;gap:var(--ds-space-2);flex:1;min-width:0}.edit-name-fields .edit-input{flex:1;min-width:120px}.edit-input{padding:0 .75rem;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-md);font-size:var(--ds-font-sm);background-color:var(--ds-bg-primary);color:var(--ds-text-primary);width:100%;transition:border-color .15s,box-shadow .15s}.edit-input:focus-visible{outline:none;border-color:var(--ds-color-primary);box-shadow:var(--ds-shadow-focus)}.edit-input::placeholder{color:var(--ds-text-secondary)}.edit-section-content{display:flex;flex-direction:column;gap:var(--ds-space-3)}.editable-array-item{display:flex;align-items:flex-start;gap:var(--ds-space-2);padding:var(--ds-space-3);background-color:var(--ds-bg-secondary);border-radius:var(--ds-radius-lg);border:1px solid var(--ds-border-color)}.editable-array-item>[class*=fa-]{font-size:var(--ds-font-lg);color:var(--ds-text-secondary);margin-top:.625rem;flex-shrink:0}.draggable-array-item{transition:opacity .2s ease,border-color .2s ease;border-top:3px solid transparent}.draggable-array-item.dragging{opacity:.4}.draggable-array-item.drag-over{border-top-color:var(--ds-color-primary)}.draggable-array-item[draggable=true]{cursor:grab}.draggable-array-item.dragging{cursor:grabbing}.draggable-array-item .editable-array-item{pointer-events:auto}.edit-field-group{flex:1;display:flex;flex-direction:column;gap:var(--ds-space-2);min-width:0}.edit-field-group.address-fields{gap:var(--ds-space-2)}.address-row{display:flex;gap:var(--ds-space-2)}.address-row .edit-input{flex:1}.remove-item-btn{display:flex;align-items:center;justify-content:center;border:none;background-color:transparent;color:var(--ds-text-secondary);border-radius:var(--ds-radius-sm);cursor:pointer;flex-shrink:0;transition:background-color .15s,color .15s;margin-top:.375rem}.remove-item-btn:hover{background-color:var(--ds-color-error-light);color:var(--ds-color-error)}.remove-item-btn [class*=fa-]{font-size:var(--ds-font-md)}.add-item-btn{display:flex;align-items:center;gap:.375rem;padding:0 .75rem;border:1px dashed var(--ds-border-color);border-radius:var(--ds-radius-lg);background-color:transparent;color:var(--ds-text-secondary);font-size:.8125rem;font-weight:var(--ds-weight-medium);cursor:pointer;transition:all .15s;width:100%;justify-content:center}.add-item-btn:hover{border-color:var(--ds-color-primary);color:var(--ds-color-primary);background-color:var(--ds-color-primary-light)}.add-item-btn [class*=fa-]{font-size:var(--ds-font-md)}.edit-notes-box{padding:0;background:transparent;border:none}.edit-notes-textarea{width:100%;padding:var(--ds-space-4);border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-xl);font-size:.9375rem;font-family:inherit;color:var(--ds-text-primary);background-color:var(--ds-color-warning-light);resize:vertical;min-height:100px;transition:border-color .15s,box-shadow .15s}.edit-notes-textarea:focus-visible{outline:none;border-color:var(--ds-color-primary);box-shadow:var(--ds-shadow-focus)}.edit-notes-textarea::placeholder{color:var(--ds-text-secondary)}.edit-item-with-suffix{display:flex;align-items:flex-start;gap:var(--ds-space-2)}.edit-item-with-suffix>.editable-array-item{flex:1}.edit-item-with-suffix>.expanded-item{flex:1}.edit-item-with-suffix>.edit-notes-textarea{flex:1}.name-field-with-toggle{display:flex;align-items:center;gap:var(--ds-space-1);flex:1;min-width:120px}.name-field-with-toggle .edit-input{flex:1}.name-field-with-toggle .visibility-toggle{margin-top:0;width:28px;height:28px}.edit-error{display:flex;align-items:center;gap:var(--ds-space-2);padding:.75rem 1rem;background-color:var(--ds-color-error-light);border:1px solid var(--ds-color-error-light);border-radius:var(--ds-radius-lg);color:var(--ds-color-error);font-size:var(--ds-font-sm);margin-bottom:var(--ds-space-4)}.edit-error [class*=fa-]{font-size:var(--ds-font-lg)}.settings-view{width:100%;max-width:800px;padding:var(--ds-space-8);margin:0 auto;box-sizing:border-box}.settings-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:var(--ds-text-secondary)}.settings-content{display:flex;flex-direction:column;align-items:stretch;width:100%;gap:var(--ds-space-8)}.settings-group{display:flex;flex-direction:column;gap:var(--ds-space-3)}.settings-group-title{margin:0 0 var(--ds-space-1);padding:0 var(--ds-space-1);font-size:var(--ds-font-xs);font-weight:var(--ds-weight-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--ds-text-secondary)}.settings-nav{display:flex;flex-direction:column;gap:0}.settings-nav .collapsible-card{border-radius:0;border-bottom:none}.settings-nav .collapsible-card:first-child{border-radius:8px 8px 0 0}.settings-nav .collapsible-card:last-child{border-radius:0 0 8px 8px;border-bottom:1px solid var(--ds-border-color)}.settings-nav-link{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;text-decoration:none;color:inherit;cursor:pointer;transition:background .15s}.settings-nav-link:hover{background:var(--ds-bg-secondary)}.settings-nav-link .settings-section-header{padding:0;background:none;border:none}.nav-link-arrow{color:var(--ds-text-secondary)}.settings-section{width:100%;background:var(--ds-bg-primary);border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-lg);overflow:hidden;box-sizing:border-box}.settings-section-header{display:flex;align-items:center;gap:var(--ds-space-3);padding:1rem 1.5rem;background:var(--ds-bg-secondary);border-bottom:1px solid var(--ds-border-color)}.settings-section-header [class*=fa-]{font-size:var(--ds-font-2xl);color:var(--ds-text-primary)}.settings-section-header h2{margin:0;font-size:var(--ds-font-xl);font-weight:var(--ds-weight-bold);color:var(--ds-text-primary)}.settings-section-content{padding:var(--ds-space-6)}.settings-description{margin:0 0 1rem;color:var(--ds-text-secondary);font-size:var(--ds-font-sm)}.settings-form{display:flex;flex-direction:column;gap:var(--ds-space-4)}.settings-form .form-group{display:flex;flex-direction:column;gap:.375rem}.settings-form label{font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);color:var(--ds-text-secondary)}.settings-form input{padding:0 .875rem;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-md);font-size:.9375rem;background:var(--ds-bg-primary);color:var(--ds-text-primary)}.settings-form input:focus-visible{outline:none;border-color:var(--ds-color-primary);box-shadow:var(--ds-shadow-focus)}.save-button{align-self:flex-start;display:flex;align-items:center;gap:var(--ds-space-2);padding:0 1.25rem;background:var(--ds-color-primary);color:#fff;border:none;border-radius:var(--ds-radius-md);font-size:.9375rem;font-weight:var(--ds-weight-medium);cursor:pointer;transition:opacity .15s;margin-top:var(--ds-space-2)}.save-button:hover:not(:disabled){opacity:.9}.save-button:disabled{opacity:.6;cursor:not-allowed}.settings-section .export-button{display:inline-flex;align-items:center;gap:var(--ds-space-2);padding:0 1.25rem;background:var(--ds-bg-primary);color:var(--ds-text-primary);border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-md);font-size:.9375rem;font-weight:var(--ds-weight-medium);cursor:pointer;transition:all .15s}.settings-section .export-button:hover{background:var(--ds-bg-secondary);border-color:var(--ds-text-secondary)}.photo-fetch-progress{margin-bottom:var(--ds-space-4);padding:var(--ds-space-4);background:var(--ds-bg-secondary);border-radius:var(--ds-radius-lg);border:1px solid var(--ds-border-color)}.progress-bar-container{height:8px;background:var(--ds-border-color);border-radius:var(--ds-radius-sm);overflow:hidden;margin-bottom:var(--ds-space-3)}.progress-bar-fill{height:100%;background:var(--ds-color-primary);border-radius:var(--ds-radius-sm);transition:width .3s ease}.progress-text{font-size:var(--ds-font-sm);color:var(--ds-text-primary);margin-bottom:var(--ds-space-2)}.progress-stats{display:flex;gap:var(--ds-space-4);font-size:.8125rem}.progress-stats .stat{display:flex;align-items:center;gap:var(--ds-space-1)}.progress-stats .stat.downloaded{color:var(--ds-color-success)}.progress-stats .stat.skipped{color:#a3a3a3}.progress-stats .stat.failed{color:var(--ds-color-error)}.settings-section.danger-zone{border-color:var(--ds-color-error-light)}.settings-section.danger-zone .settings-section-header{border-bottom-color:var(--ds-color-error-light)}.settings-section.danger-zone .settings-section-header [class*=fa-],.settings-section.danger-zone .settings-section-header h2{color:var(--ds-color-error)}.danger-item{display:flex;align-items:center;justify-content:space-between;gap:var(--ds-space-4)}.danger-info h3{margin:0 0 .25rem;font-size:.9375rem;font-weight:var(--ds-weight-semibold)}.danger-info p{margin:0;font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.danger-button{flex-shrink:0;padding:0 1rem;background:#fff;color:var(--ds-color-error);border:1px solid var(--ds-color-error);border-radius:var(--ds-radius-md);font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);cursor:pointer;transition:all .15s}.danger-button:hover{background:var(--ds-color-error);color:#fff}.confirm-dialog.danger h3{color:var(--ds-color-error)}.confirm-instruction{margin:1rem 0 .5rem;font-size:var(--ds-font-sm)}.confirm-input{width:100%;padding:0 .875rem;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-md);font-size:.9375rem;margin-bottom:var(--ds-space-4)}.confirm-input:focus-visible{outline:none;border-color:var(--ds-color-error);box-shadow:var(--ds-shadow-focus-error)}.confirm-button:disabled{opacity:.5;cursor:not-allowed}.toast.error{background-color:#2a1215;border:1px solid var(--ds-color-error)}.collapsible-card{width:100%;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-lg);background:var(--ds-bg-primary);overflow:hidden}.collapsible-header{display:flex;align-items:center;justify-content:space-between;width:100%;box-sizing:border-box;padding:1rem 1.5rem;background:var(--ds-bg-primary);border:none;cursor:pointer;transition:background .15s;text-align:left}.collapsible-header:hover{background:var(--ds-bg-secondary)}.collapsible-header .settings-section-header{padding:0;background:none;border:none}.expand-icon{color:var(--ds-text-secondary);transition:transform .2s ease}.expand-icon.rotated{transform:rotate(180deg)}.collapsible-content{padding:1rem 1.5rem 1.5rem;border-top:1px solid var(--ds-border-color)}.linkedin-import-controls{display:flex;flex-direction:column;gap:var(--ds-space-3);margin-top:var(--ds-space-4)}.file-input-row{display:flex;align-items:center}.file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.file-input-label{display:inline-flex;align-items:center;gap:var(--ds-space-2);padding:0 1rem;background:var(--ds-bg-primary);border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-md);font-size:var(--ds-font-sm);color:var(--ds-text-primary);cursor:pointer;transition:all .15s}.file-input-label:hover{background:var(--ds-bg-secondary);border-color:var(--ds-text-secondary)}.file-input-label [class*=fa-]{font-size:var(--ds-font-lg);color:var(--ds-text-primary)}.linkedin-import-status{margin-top:var(--ds-space-4);padding:var(--ds-space-4);background:var(--ds-bg-secondary);border-radius:var(--ds-radius-lg);border:1px solid var(--ds-border-color)}.import-complete{margin-bottom:var(--ds-space-3)}.import-complete-header{display:flex;align-items:center;gap:var(--ds-space-2);font-weight:var(--ds-weight-medium);color:var(--ds-color-success)}.import-complete-header .success-icon{font-size:var(--ds-font-xl)}.import-error{display:flex;align-items:center;gap:var(--ds-space-2);color:var(--ds-color-error);font-weight:var(--ds-weight-medium)}.import-error [class*=fa-]{font-size:var(--ds-font-xl)}.import-stats{display:flex;flex-wrap:wrap;gap:var(--ds-space-4);margin-top:var(--ds-space-3)}.import-stats .stat{display:flex;flex-direction:column;align-items:center;min-width:60px;padding:.5rem .75rem;background:var(--ds-bg-primary);border-radius:var(--ds-radius-md);border:1px solid var(--ds-border-color)}.import-stats .stat-value{font-size:var(--ds-font-xl);font-weight:var(--ds-weight-semibold);line-height:1.2}.import-stats .stat-label{font-size:var(--ds-font-xs);color:var(--ds-text-secondary);text-transform:uppercase;letter-spacing:.025em}.import-stats .stat.created .stat-value{color:var(--ds-color-success)}.import-stats .stat.updated .stat-value{color:var(--ds-color-info)}.import-stats .stat.skipped .stat-value{color:var(--ds-color-warning)}.import-stats .stat.failed .stat-value{color:var(--ds-color-error)}.map-view{display:flex;flex-direction:column;height:100%;background:var(--ds-bg-secondary)}.map-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:var(--ds-bg-primary);border-bottom:1px solid var(--ds-border-color)}.map-header h1{display:flex;align-items:center;gap:var(--ds-space-2);font-size:var(--ds-font-2xl);font-weight:var(--ds-weight-semibold);margin:0;color:var(--ds-text-primary)}.map-header h1 [class*=fa-]{color:var(--ds-color-primary)}.map-header-stats{display:flex;align-items:center;gap:var(--ds-space-4)}.map-stat{font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.geocode-button{display:flex;align-items:center;gap:var(--ds-space-2);padding:0 1rem;background:var(--ds-bg-secondary);border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-lg);color:var(--ds-text-primary);font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);cursor:pointer;transition:all .15s}.geocode-button:hover:not(:disabled){background:var(--ds-color-primary-light);border-color:var(--ds-color-primary);color:var(--ds-color-primary)}.geocode-button:disabled{opacity:.6;cursor:not-allowed}.geocode-button.primary{background:var(--ds-color-primary);border-color:var(--ds-color-primary);color:#fff}.geocode-button.primary:hover:not(:disabled){background:var(--ds-color-primary)}.geocode-button [class*=fa-]{font-size:var(--ds-font-lg)}.geocode-button .spinning{animation:spin 1s linear infinite}.map-search-bar{display:flex;align-items:center;padding:.75rem 1.5rem;background:var(--ds-bg-primary);border-bottom:1px solid var(--ds-border-color);position:relative}.map-search-bar .search-icon{position:absolute;left:2rem;color:var(--ds-text-secondary);font-size:var(--ds-font-xl)}.map-search-input{width:100%;max-width:400px;padding:0 1rem 0 2.5rem;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-lg);font-size:.9375rem;background:var(--ds-bg-secondary);color:var(--ds-text-primary)}.map-search-input:focus-visible{outline:none;border-color:var(--ds-color-primary);box-shadow:var(--ds-shadow-focus)}.map-search-bar .clear-search{position:absolute;left:calc(400px + 1rem);background:none;border:none;padding:var(--ds-space-1);cursor:pointer;color:var(--ds-text-secondary);display:flex;align-items:center}.map-search-bar .clear-search:hover{color:var(--ds-text-primary)}.map-container{flex:1;position:relative}.leaflet-map{width:100%;height:100%;z-index:1}.map-loading,.map-error,.map-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:var(--ds-space-4);color:var(--ds-text-secondary)}.map-loading [class*=fa-],.map-error [class*=fa-],.map-empty [class*=fa-]{font-size:3rem}.map-error [class*=fa-]{color:var(--ds-color-error)}.map-empty h3{margin:0;color:var(--ds-text-primary);font-size:var(--ds-font-xl)}.map-empty p{margin:0;max-width:300px;text-align:center}.map-avatar-icon{background:none;border:none}.map-avatar-marker{width:40px;height:40px;border-radius:50%;overflow:hidden;border:3px solid var(--ds-color-primary);background:var(--ds-bg-primary);box-shadow:0 2px 8px #0003}.map-avatar-marker img{width:100%;height:100%;object-fit:cover}.map-avatar-marker.map-avatar-initials{display:flex;align-items:center;justify-content:center;background:var(--ds-color-primary);color:#fff;font-weight:var(--ds-weight-semibold);font-size:var(--ds-font-sm)}.map-cluster-icon{background:none;border:none}.map-cluster-marker{width:44px;height:44px;border-radius:50%;background:var(--ds-color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:var(--ds-weight-bold);font-size:var(--ds-font-md);box-shadow:0 2px 8px #1313ec66;border:3px solid white}.map-popup{display:flex;align-items:center;gap:var(--ds-space-3);padding:var(--ds-space-1);min-width:180px}.map-popup-avatar{width:44px;height:44px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--ds-color-primary-light)}.map-popup-avatar img{width:100%;height:100%;object-fit:cover}.map-popup-initials{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--ds-color-primary);color:#fff;font-weight:var(--ds-weight-semibold);font-size:var(--ds-font-md)}.map-popup-info{flex:1;min-width:0}.map-popup-name{font-weight:var(--ds-weight-semibold);color:var(--ds-text-primary);font-size:.9375rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-popup-location{font-size:.8125rem;color:var(--ds-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.leaflet-popup-content-wrapper{border-radius:var(--ds-radius-xl);box-shadow:0 4px 16px #0000001f}.leaflet-popup-content{margin:var(--ds-space-3)}.leaflet-popup-tip{box-shadow:0 4px 16px #0000001f}.invalid-links-cleanup{display:flex;flex-direction:column;gap:var(--ds-space-4);padding:var(--ds-space-4)}.invalid-links-search{display:flex;flex-direction:column;gap:var(--ds-space-3)}.search-input-row{display:flex;gap:var(--ds-space-2)}.patterns-input{flex:1;padding:0 .875rem;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-lg);font-size:var(--ds-font-sm);background:var(--ds-bg-primary);color:var(--ds-text-primary)}.patterns-input:focus-visible{outline:none;border-color:var(--ds-color-info);box-shadow:0 0 0 3px var(--ds-color-info-light)}.patterns-input:disabled{background:var(--ds-bg-tertiary);cursor:not-allowed}.search-button{display:flex;align-items:center;gap:.375rem;padding:0 1rem;background:var(--ds-color-info);color:#fff;border:none;border-radius:var(--ds-radius-lg);font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);cursor:pointer;transition:background .2s}.search-button:hover:not(:disabled){background:var(--ds-color-info-dark)}.search-button:disabled{opacity:.6;cursor:not-allowed}.search-results-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--ds-border-color)}.results-count{font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.remove-all-button{display:flex;align-items:center;gap:.375rem;padding:0 .875rem;background:var(--ds-color-error);color:#fff;border:none;border-radius:var(--ds-radius-md);font-size:.8125rem;font-weight:var(--ds-weight-medium);cursor:pointer;transition:background .2s}.remove-all-button:hover:not(:disabled){background:var(--ds-color-error-dark)}.remove-all-button:disabled{opacity:.6;cursor:not-allowed}.no-matches{display:flex;flex-direction:column;align-items:center;gap:var(--ds-space-2);padding:40px 20px;color:var(--ds-text-secondary)}.no-matches [class*=fa-]{font-size:48px;color:var(--ds-color-success)}.matches-list{display:flex;flex-direction:column;gap:var(--ds-space-3)}.match-group{background:var(--ds-bg-primary);border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-lg);overflow:hidden}.match-contact-name{padding:10px .875rem;font-weight:var(--ds-weight-medium);background:var(--ds-bg-tertiary);border-bottom:1px solid var(--ds-border-color)}.match-items{display:flex;flex-direction:column}.match-item{display:flex;align-items:center;gap:var(--ds-space-3);padding:10px .875rem;border-bottom:1px solid var(--ds-border-color)}.match-item:last-child{border-bottom:none}.match-source{display:flex;align-items:center;gap:var(--ds-space-1);min-width:100px;font-size:var(--ds-font-xs);color:var(--ds-text-secondary);text-transform:capitalize}.match-source [class*=fa-]{font-size:var(--ds-font-md)}.match-value{flex:1;font-size:.8125rem;color:var(--ds-text-primary);word-break:break-all}.success-message{display:flex;align-items:center;gap:var(--ds-space-2);padding:.75rem 1rem;background:var(--ds-color-success-light);color:var(--ds-color-success);border-radius:var(--ds-radius-lg);font-size:var(--ds-font-sm)}.success-message [class*=fa-]{font-size:var(--ds-font-xl)}.address-cleanup{padding:0;height:100%;overflow-y:auto;display:flex;flex-direction:column}.address-cleanup-description{padding:0 1.5rem;margin-bottom:var(--ds-space-4)}.address-cleanup-description p{color:var(--ds-text-secondary);font-size:var(--ds-font-sm);line-height:1.5;margin:0}.address-cleanup-loading,.address-cleanup-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--ds-space-12);gap:var(--ds-space-4);color:var(--ds-text-secondary)}.address-cleanup-loading [class*=fa-],.address-cleanup-empty [class*=fa-]{font-size:3rem}.address-cleanup-empty [class*=fa-]{color:var(--ds-color-success)}.address-cleanup-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--ds-border-color)}.address-cleanup-stats{font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.address-cleanup-list{display:flex;flex-direction:column;gap:var(--ds-space-4);padding:var(--ds-space-6)}.address-cleanup-card{overflow:hidden}.address-cleanup-card-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--ds-border-color);background:var(--ds-bg-secondary)}.address-cleanup-contact-info{display:flex;align-items:center;gap:var(--ds-space-3)}.address-cleanup-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover}.address-cleanup-avatar.placeholder{display:flex;align-items:center;justify-content:center;background:var(--ds-border-color);color:var(--ds-text-secondary)}.address-cleanup-avatar.placeholder [class*=fa-]{font-size:var(--ds-font-xl)}.address-cleanup-contact-details{display:flex;flex-direction:column;gap:.125rem}.address-cleanup-contact-name{font-weight:var(--ds-weight-medium);color:var(--ds-text-primary)}.address-cleanup-contact-company{font-size:.8125rem;color:var(--ds-text-secondary)}.address-cleanup-badge{background:var(--ds-color-warning-light);color:var(--ds-color-warning-dark)}.address-cleanup-groups{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:var(--ds-space-4)}.address-group{display:flex;flex-direction:column;gap:var(--ds-space-2)}.address-group-label{display:flex;align-items:center;gap:var(--ds-space-2);font-size:.8125rem;color:var(--ds-text-secondary)}.address-group-label [class*=fa-]{font-size:var(--ds-font-md)}.confidence-badge{margin-left:auto;text-transform:uppercase;letter-spacing:.02em}.confidence-badge.confidence-high{background-color:#3b82f61a;color:var(--ds-color-info)}.confidence-badge.confidence-medium{background-color:#f59e0b1a;color:var(--ds-color-warning)}.address-options{display:flex;flex-direction:column;gap:var(--ds-space-2)}.address-option{display:flex;align-items:flex-start;gap:var(--ds-space-3);padding:.75rem 1rem;border-radius:var(--ds-radius-lg);border:1px solid var(--ds-border-color);cursor:pointer;transition:all .15s ease}.address-option:hover:not(.to-remove){border-color:var(--ds-color-primary);background:var(--ds-color-primary-light)}.address-option.selected{border-color:var(--ds-color-primary);background:var(--ds-color-primary-light)}.address-option.to-remove{background:var(--ds-color-error-light);border-color:var(--ds-color-error-light);cursor:default}.address-radio{display:flex;align-items:center;justify-content:center;padding-top:2px}.address-radio [class*=fa-]{font-size:var(--ds-font-xl);color:var(--ds-text-secondary)}.address-option.selected .address-radio [class*=fa-]{color:var(--ds-color-primary)}.address-content{flex:1;display:flex;flex-direction:column;gap:var(--ds-space-1)}.address-text{font-size:var(--ds-font-sm);color:var(--ds-text-primary);line-height:1.4}.address-meta{display:flex;flex-wrap:wrap;gap:var(--ds-space-2);align-items:center}.address-type{font-size:var(--ds-font-xs);padding:.125rem .5rem;border-radius:var(--ds-radius-sm);background:var(--ds-bg-secondary);color:var(--ds-text-secondary);text-transform:capitalize}.address-issue{font-size:var(--ds-font-2xs);padding:.125rem .5rem;border-radius:var(--ds-radius-sm);font-weight:var(--ds-weight-medium)}.address-issue.issue-no-street{background:var(--ds-color-error-light);color:var(--ds-color-error)}.address-issue.issue-duplicate{background:var(--ds-color-warning-light);color:var(--ds-color-warning-dark)}.address-recommended{display:flex;align-items:center;gap:var(--ds-space-1);font-size:var(--ds-font-2xs);color:#059669;font-weight:var(--ds-weight-medium)}.address-recommended [class*=fa-]{font-size:var(--ds-font-sm)}.address-cleanup-actions{display:flex;justify-content:flex-end;gap:var(--ds-space-3);padding:1rem 1.25rem;border-top:1px solid var(--ds-border-color);background:var(--ds-bg-secondary)}.address-skip-button{padding:0 1rem;border-radius:var(--ds-radius-md);border:1px solid var(--ds-border-color);background:var(--ds-bg-primary);color:var(--ds-text-secondary);font-size:var(--ds-font-sm);cursor:pointer;transition:all .15s ease}.address-skip-button:hover:not(:disabled){border-color:var(--ds-text-secondary)}.address-skip-button:disabled{opacity:.5;cursor:not-allowed}.address-apply-button{display:flex;align-items:center;gap:var(--ds-space-2);padding:0 1rem;border-radius:var(--ds-radius-md);border:none;background:var(--ds-color-primary);color:#fff;font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);cursor:pointer;transition:all .15s ease}.address-apply-button:hover:not(:disabled){filter:brightness(1.1)}.address-apply-button:disabled{opacity:.5;cursor:not-allowed}.address-apply-button [class*=fa-]{font-size:var(--ds-font-lg)}.address-cleanup .fix-all-details,.normalize-view .fix-all-details,.duplicates-view .fix-all-details{margin:1rem 0;padding-left:1.5rem;color:var(--ds-text-secondary);font-size:var(--ds-font-sm);line-height:1.6}.address-cleanup .fix-all-details li,.normalize-view .fix-all-details li,.duplicates-view .fix-all-details li{margin-bottom:var(--ds-space-2)}.address-subtabs{display:flex;gap:var(--ds-space-2);padding:0 1.5rem 1rem;border-bottom:1px solid var(--ds-border-color)}.address-subtab{display:flex;align-items:center;gap:var(--ds-space-2);padding:0 1rem;border-radius:var(--ds-radius-lg);border:1px solid var(--ds-border-color);background:var(--ds-bg-primary);color:var(--ds-text-secondary);font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);cursor:pointer;transition:all .15s ease}.address-subtab:hover{border-color:var(--ds-color-primary);color:var(--ds-text-primary)}.address-subtab.active{border-color:var(--ds-color-primary);background:var(--ds-color-primary-light);color:var(--ds-color-primary)}.address-subtab [class*=fa-]{font-size:var(--ds-font-lg)}.subtab-badge{height:20px;background:var(--ds-color-primary);color:var(--ds-text-inverse)}.address-subtab.active .subtab-badge{background:var(--ds-color-primary)}.address-subtab-content{flex:1;overflow-y:auto}.normalize-view{display:flex;flex-direction:column}.normalize-loading,.normalize-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--ds-space-12);gap:var(--ds-space-4);color:var(--ds-text-secondary)}.normalize-loading [class*=fa-],.normalize-empty [class*=fa-]{font-size:3rem}.normalize-empty [class*=fa-]{color:var(--ds-color-success)}.normalize-description{padding:1rem 1.5rem 0}.normalize-description p{color:var(--ds-text-secondary);font-size:var(--ds-font-sm);line-height:1.5;margin:0}.normalize-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--ds-border-color)}.normalize-stats{font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.normalize-list{display:flex;flex-direction:column;gap:var(--ds-space-4);padding:var(--ds-space-6)}.normalize-card{overflow:hidden}.normalize-card-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--ds-border-color);background:var(--ds-bg-secondary)}.normalize-contact-info{display:flex;align-items:center;gap:var(--ds-space-3)}.normalize-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover}.normalize-avatar.placeholder{display:flex;align-items:center;justify-content:center;background:var(--ds-border-color);color:var(--ds-text-secondary)}.normalize-avatar.placeholder [class*=fa-]{font-size:var(--ds-font-xl)}.normalize-contact-details{display:flex;flex-direction:column;gap:.125rem}.normalize-contact-name{font-weight:var(--ds-weight-medium);color:var(--ds-text-primary)}.normalize-contact-company{font-size:.8125rem;color:var(--ds-text-secondary)}.normalize-badge{background:var(--ds-color-error-light);color:var(--ds-color-error)}.normalize-addresses{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:var(--ds-space-2)}.normalize-address-item{display:flex;align-items:center;gap:var(--ds-space-3);padding:.75rem 1rem;border-radius:var(--ds-radius-lg);background:var(--ds-color-error-light);border:1px solid var(--ds-color-error-light)}.normalize-address-content{flex:1;display:flex;flex-direction:column;gap:var(--ds-space-1)}.normalize-address-text{font-size:var(--ds-font-sm);color:var(--ds-text-primary);line-height:1.4}.normalize-address-meta{display:flex;flex-wrap:wrap;gap:var(--ds-space-2);align-items:center}.normalize-address-type{font-size:var(--ds-font-xs);padding:.125rem .5rem;border-radius:var(--ds-radius-sm);background:#ffffff80;color:var(--ds-text-secondary);text-transform:capitalize}.normalize-address-issue{font-size:var(--ds-font-2xs);padding:.125rem .5rem;border-radius:var(--ds-radius-sm);font-weight:var(--ds-weight-medium)}.normalize-address-issue.issue-no-street{background:var(--ds-color-error-light);color:var(--ds-color-error)}.normalize-address-issue.issue-empty{background:var(--ds-color-warning-light);color:var(--ds-color-warning-dark)}.normalize-address-issue.issue-placeholder{background:#e0e7ff;color:#4338ca}.normalize-remove-single{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--ds-radius-md);border:none;background:transparent;color:var(--ds-color-error);cursor:pointer;transition:all .15s ease}.normalize-remove-single:hover:not(:disabled){background:#dc26261a}.normalize-remove-single:disabled{opacity:.5;cursor:not-allowed}.normalize-remove-single [class*=fa-]{font-size:var(--ds-font-lg)}.normalize-address-buttons{display:flex;gap:var(--ds-space-1);flex-shrink:0}.normalize-edit-single{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--ds-radius-md);border:none;background:transparent;color:var(--ds-color-primary);cursor:pointer;transition:all .15s ease}.normalize-edit-single:hover:not(:disabled){background:var(--ds-color-primary-light)}.normalize-edit-single:disabled{opacity:.5;cursor:not-allowed}.normalize-edit-single [class*=fa-]{font-size:var(--ds-font-sm)}.address-edit-form{display:flex;flex-direction:column;gap:var(--ds-space-2);width:100%;padding:.5rem 0}.address-edit-row{display:flex;gap:var(--ds-space-2)}.address-edit-input{flex:1;padding:.5rem .75rem;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-md);font-size:.8125rem;font-family:inherit;background:var(--ds-bg-primary);color:var(--ds-text-primary);transition:border-color .15s ease}.address-edit-input:focus{outline:none;border-color:var(--ds-color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--ds-color-primary) 15%,transparent)}.address-edit-input::placeholder{color:var(--ds-text-muted)}.address-edit-short{flex:0 0 35%}.address-edit-actions{display:flex;justify-content:flex-end;gap:var(--ds-space-2);margin-top:var(--ds-space-1)}.address-edit-cancel{padding:.375rem .75rem;border-radius:var(--ds-radius-md);border:1px solid var(--ds-border-color);background:var(--ds-bg-primary);color:var(--ds-text-secondary);font-size:.8125rem;cursor:pointer;transition:all .15s ease}.address-edit-cancel:hover:not(:disabled){background:var(--ds-bg-secondary)}.address-edit-save{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:var(--ds-radius-md);border:none;background:var(--ds-color-primary);color:#fff;font-size:.8125rem;cursor:pointer;transition:all .15s ease}.address-edit-save:hover:not(:disabled){opacity:.9}.address-edit-save:disabled,.address-edit-cancel:disabled{opacity:.5;cursor:not-allowed}.address-edit-save [class*=fa-]{font-size:var(--ds-font-xs)}.address-option .address-text [class*=fa-]{margin-right:var(--ds-space-1);font-size:var(--ds-font-xs)}.address-options .address-edit-form{padding:.5rem 1rem .75rem 2.25rem}.normalize-card-actions{display:flex;justify-content:flex-end;gap:var(--ds-space-3);padding:1rem 1.25rem;border-top:1px solid var(--ds-border-color);background:var(--ds-bg-secondary)}.normalize-skip-button{padding:0 1rem;border-radius:var(--ds-radius-md);border:1px solid var(--ds-border-color);background:var(--ds-bg-primary);color:var(--ds-text-secondary);font-size:var(--ds-font-sm);cursor:pointer;transition:all .15s ease}.normalize-skip-button:hover:not(:disabled){border-color:var(--ds-text-secondary)}.normalize-skip-button:disabled{opacity:.5;cursor:not-allowed}.normalize-remove-button{display:flex;align-items:center;gap:var(--ds-space-2);padding:0 1rem;border-radius:var(--ds-radius-md);border:none;background:var(--ds-color-error);color:#fff;font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);cursor:pointer;transition:all .15s ease}.normalize-remove-button:hover:not(:disabled){filter:brightness(1.1)}.normalize-remove-button:disabled{opacity:.5;cursor:not-allowed}.normalize-remove-button [class*=fa-]{font-size:var(--ds-font-lg)}.duplicates-view{display:flex;flex-direction:column}.duplicates-loading,.duplicates-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--ds-space-12);gap:var(--ds-space-4);color:var(--ds-text-secondary)}.duplicates-loading [class*=fa-],.duplicates-empty [class*=fa-]{font-size:3rem}.duplicates-empty [class*=fa-]{color:var(--ds-color-success)}.duplicates-description{padding:1rem 1.5rem 0}.duplicates-description p{color:var(--ds-text-secondary);font-size:var(--ds-font-sm);line-height:1.5;margin:0}.duplicates-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--ds-border-color)}.duplicates-stats{font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.duplicates-actions{display:flex;align-items:center;gap:var(--ds-space-4)}.confidence-filter{display:flex;align-items:center;gap:var(--ds-space-2);font-size:var(--ds-font-sm)}.confidence-filter label{color:var(--ds-text-secondary);white-space:nowrap}.confidence-filter select{padding:0 .75rem;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-md);background-color:var(--ds-bg-secondary);color:var(--ds-text-primary);font-size:.8125rem;cursor:pointer}.confidence-filter select:focus-visible{outline:none;border-color:var(--ds-color-primary);box-shadow:var(--ds-shadow-focus)}.duplicates-list{display:flex;flex-direction:column;gap:var(--ds-space-4);padding:var(--ds-space-6)}.add-contact-content{max-width:900px;margin:0 auto}.add-contact-content .expanded-section{background:var(--ds-bg-primary);border-radius:var(--ds-radius-xl);padding:1rem 1.5rem;margin-bottom:var(--ds-space-4);box-shadow:0 1px 3px #0000000d}.add-contact-content .edit-name-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--ds-space-3)}.back-button{display:flex;align-items:center;justify-content:center;width:var(--ds-control-height);border-radius:var(--ds-radius-lg);border:none;background-color:transparent;color:var(--ds-text-secondary);cursor:pointer;transition:background-color .15s;margin-right:var(--ds-space-2)}.back-button:hover{background-color:var(--ds-bg-secondary)}.back-button [class*=fa-]{font-size:var(--ds-font-2xl)}.contact-detail-back{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .5rem;margin-bottom:var(--ds-space-3);background:transparent;border:none;border-radius:var(--ds-radius-md);color:var(--ds-text-secondary);font-size:var(--ds-font-sm);cursor:pointer;transition:color .15s,background-color .15s}.contact-detail-back:hover{color:var(--ds-text-primary);background-color:var(--ds-bg-tertiary)}.contact-detail-content{background-color:var(--ds-bg-primary);border-radius:var(--ds-radius-xl);padding:var(--ds-space-6);box-shadow:0 1px 3px #0000000d}.contact-detail-identity{display:flex;align-items:center;gap:var(--ds-space-6);margin-bottom:var(--ds-space-6);padding-bottom:1.5rem;border-bottom:1px solid var(--ds-border-color)}.contact-detail-name-section{display:flex;flex-direction:column;gap:var(--ds-space-1)}.contact-detail-name{margin:0;font-size:var(--ds-font-2xl);font-weight:var(--ds-weight-semibold);color:var(--ds-text-primary)}.contact-detail-company{margin:0;font-size:var(--ds-font-md);color:var(--ds-text-secondary)}.contact-detail-content .expanded-content{padding:0}.contact-detail-content .expanded-top-row{padding-top:0}.email-history-section{border-top:1px solid var(--ds-border-color);padding-top:1rem}.email-history-count{background:var(--ds-bg-tertiary);color:var(--ds-text-secondary);font-size:var(--ds-font-xs);font-weight:var(--ds-weight-semibold);padding:.125rem .5rem;border-radius:var(--ds-radius-full);margin-left:var(--ds-space-1)}.email-history-stats{display:flex;align-items:center;gap:var(--ds-space-2);font-size:.8125rem;color:var(--ds-text-secondary)}.email-history-stats-sep{color:var(--ds-text-muted)}.email-history-sync-status{display:flex;align-items:center;gap:.375rem;font-size:var(--ds-font-xs);color:var(--ds-text-muted)}.email-history-refresh-btn{background:none;border:none;padding:.125rem;cursor:pointer;color:var(--ds-text-muted);font-size:var(--ds-font-xs);line-height:1;border-radius:var(--ds-radius-sm);transition:color .15s}.email-history-refresh-btn:hover{color:var(--ds-text-secondary)}.email-history-cta{text-align:center;padding:1rem 0}.email-history-cta p{margin:0 0 .75rem;font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.email-history-sync-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem 1rem;border-radius:var(--ds-radius-md);border:1px solid var(--ds-color-primary);background:var(--ds-color-primary);color:var(--ds-text-inverse);font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);cursor:pointer;transition:opacity .15s}.email-history-sync-btn:hover:not(:disabled){opacity:.9}.email-history-sync-btn:disabled{opacity:.6;cursor:not-allowed}.email-history-loading{text-align:center;padding:1rem 0;color:var(--ds-text-muted)}.email-history-list{display:flex;flex-direction:column}.email-history-item{display:flex;align-items:center;gap:var(--ds-space-2);padding:.375rem .5rem;border-radius:var(--ds-radius-sm);text-decoration:none;color:var(--ds-text-primary);font-size:.8125rem;transition:background-color .1s;cursor:pointer}.email-history-item:hover{background-color:var(--ds-bg-hover)}.email-history-direction{flex-shrink:0;font-size:.625rem;width:1.25rem;text-align:center}.email-history-direction.inbound{color:var(--ds-color-info)}.email-history-direction.outbound{color:var(--ds-color-success)}.email-history-subject{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-history-date{flex-shrink:0;font-size:var(--ds-font-xs);color:var(--ds-text-muted);white-space:nowrap}.email-history-empty{text-align:center;padding:.75rem 0;font-size:.8125rem;color:var(--ds-text-muted)}.email-history-load-more{display:block;width:100%;padding:.375rem 0;margin-top:var(--ds-space-1);background:none;border:none;color:var(--ds-color-primary);font-size:.8125rem;cursor:pointer;text-align:center;border-radius:var(--ds-radius-sm);transition:background-color .1s}.email-history-load-more:hover{background-color:var(--ds-bg-hover)}.email-history-load-more:disabled{color:var(--ds-text-muted);cursor:not-allowed}.geocoding-view{display:flex;flex-direction:column}.geocoding-loading,.geocoding-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--ds-space-12);gap:var(--ds-space-4);color:var(--ds-text-secondary)}.geocoding-loading [class*=fa-],.geocoding-empty [class*=fa-]{font-size:3rem}.geocoding-empty [class*=fa-]{color:var(--ds-text-secondary)}.geocoding-description{padding:1rem 1.5rem 0}.geocoding-description p{color:var(--ds-text-secondary);font-size:var(--ds-font-sm);line-height:1.5;margin:0}.geocoding-summary{display:flex;align-items:center;gap:var(--ds-space-2);padding:.75rem 1.5rem;font-size:var(--ds-font-sm)}.geocoding-summary-item{font-weight:var(--ds-weight-medium)}.geocoding-summary-item.pending{color:var(--ds-text-secondary)}.geocoding-summary-item.failed{color:var(--ds-color-error)}.geocoding-summary-item.geocoded{color:var(--ds-color-success)}.geocoding-summary-separator{color:var(--ds-border-color)}.geocoding-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.5rem;border-bottom:1px solid var(--ds-border-color);flex-wrap:wrap;gap:var(--ds-space-4)}.geocoding-filters{display:flex;gap:var(--ds-space-2)}.geocoding-filter-btn{display:flex;align-items:center;gap:.375rem;padding:0 .875rem;border-radius:var(--ds-radius-md);border:1px solid var(--ds-border-color);background:var(--ds-bg-primary);color:var(--ds-text-secondary);font-size:.8125rem;font-weight:var(--ds-weight-medium);cursor:pointer;transition:all .15s ease}.geocoding-filter-btn:hover{border-color:var(--ds-text-secondary)}.geocoding-filter-btn.active{background:var(--ds-color-primary);border-color:var(--ds-color-primary);color:#fff}.geocoding-filter-btn .filter-count{font-size:var(--ds-font-2xs);padding:.125rem .375rem;border-radius:var(--ds-radius-full);background:#0000001a}.geocoding-filter-btn.active .filter-count{background:#fff3}.geocoding-bulk-btn{display:flex;align-items:center;gap:var(--ds-space-2);padding:0 1rem;border-radius:var(--ds-radius-md);border:none;background:var(--ds-color-primary);color:#fff;font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);cursor:pointer;transition:all .15s ease}.geocoding-bulk-btn:hover:not(:disabled){filter:brightness(1.1)}.geocoding-bulk-btn:disabled{opacity:.5;cursor:not-allowed}.geocoding-bulk-btn [class*=fa-]{font-size:var(--ds-font-lg)}.geocoding-list{display:flex;flex-direction:column;gap:var(--ds-space-4);padding:var(--ds-space-6)}.geocoding-card{overflow:hidden}.geocoding-card-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--ds-border-color);background:var(--ds-bg-secondary)}.geocoding-contact-info{display:flex;align-items:center;gap:var(--ds-space-3)}.geocoding-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover}.geocoding-avatar.placeholder{display:flex;align-items:center;justify-content:center;background:var(--ds-border-color);color:var(--ds-text-secondary)}.geocoding-avatar.placeholder [class*=fa-]{font-size:var(--ds-font-xl)}.geocoding-contact-details{display:flex;flex-direction:column;gap:.125rem}.geocoding-contact-name{font-weight:var(--ds-weight-medium);color:var(--ds-text-primary)}.geocoding-contact-company{font-size:.8125rem;color:var(--ds-text-secondary)}.geocoding-badge{background:var(--ds-bg-secondary);color:var(--ds-text-secondary);border:1px solid var(--ds-border-color)}.geocoding-addresses{padding:1rem 1.25rem;display:flex;flex-direction:column;gap:var(--ds-space-2)}.geocoding-address-item{display:flex;align-items:flex-start;gap:var(--ds-space-3);padding:.75rem 1rem;border-radius:var(--ds-radius-lg);border:1px solid var(--ds-border-color);background:var(--ds-bg-primary)}.geocoding-address-item.status-pending{background:var(--ds-bg-tertiary);border-color:var(--ds-border-color)}.geocoding-address-item.status-failed{background:var(--ds-color-error-light);border-color:var(--ds-color-error-light)}.geocoding-address-item.status-geocoded{background:var(--ds-color-success-light);border-color:var(--ds-color-success-light)}.geocoding-address-item.editing{padding:var(--ds-space-4);background:var(--ds-bg-secondary)}.geocoding-address-content{flex:1;display:flex;flex-direction:column;gap:var(--ds-space-1);min-width:0}.geocoding-address-text{font-size:var(--ds-font-sm);color:var(--ds-text-primary);line-height:1.4}.geocoding-address-meta{display:flex;flex-wrap:wrap;gap:var(--ds-space-2);align-items:center}.geocoding-address-type{font-size:var(--ds-font-xs);padding:.125rem .5rem;border-radius:var(--ds-radius-sm);background:#0000000d;color:var(--ds-text-secondary);text-transform:capitalize}.geocoding-status-badge.pending{background:var(--ds-bg-tertiary);color:var(--ds-text-secondary)}.geocoding-status-badge.failed{background:var(--ds-color-error-light);color:var(--ds-color-error)}.geocoding-status-badge.geocoded{background:var(--ds-color-success-light);color:var(--ds-color-success)}.geocoding-coordinates{font-size:var(--ds-font-xs);color:var(--ds-text-secondary);font-family:monospace}.geocoding-error{font-size:var(--ds-font-xs);color:var(--ds-color-error)}.geocoding-address-actions{display:flex;gap:var(--ds-space-2);flex-shrink:0}.geocoding-action-btn{display:flex;align-items:center;gap:.375rem;padding:0 .75rem;border-radius:var(--ds-radius-md);border:1px solid var(--ds-border-color);background:var(--ds-bg-primary);color:var(--ds-text-secondary);font-size:.8125rem;cursor:pointer;transition:all .15s ease}.geocoding-action-btn:hover:not(:disabled){border-color:var(--ds-color-primary);color:var(--ds-color-primary)}.geocoding-action-btn:disabled{opacity:.5;cursor:not-allowed}.geocoding-action-btn [class*=fa-]{font-size:var(--ds-font-md)}.geocoding-action-btn .btn-text{display:none}@media(min-width:640px){.geocoding-action-btn .btn-text{display:inline}}.geocoding-edit-form{display:flex;flex-direction:column;gap:var(--ds-space-3);width:100%}.geocoding-edit-fields{display:flex;flex-direction:column;gap:var(--ds-space-2)}.geocoding-edit-fields input{padding:0 .75rem;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-md);font-size:var(--ds-font-sm);background:var(--ds-bg-primary)}.geocoding-edit-fields input:focus-visible{outline:none;border-color:var(--ds-color-primary);box-shadow:var(--ds-shadow-focus)}.geocoding-edit-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--ds-space-2)}.geocoding-edit-actions{display:flex;justify-content:flex-end;gap:var(--ds-space-2);margin-top:var(--ds-space-1)}.geocoding-edit-actions button{padding:0 1rem;border-radius:var(--ds-radius-md);border:1px solid var(--ds-border-color);background:var(--ds-bg-primary);color:var(--ds-text-secondary);font-size:var(--ds-font-sm);cursor:pointer;transition:all .15s ease}.geocoding-edit-actions button:hover:not(:disabled){border-color:var(--ds-text-secondary)}.geocoding-edit-actions button:disabled{opacity:.5;cursor:not-allowed}.geocoding-edit-actions button.primary{background:var(--ds-color-primary);border-color:var(--ds-color-primary);color:#fff}.geocoding-edit-actions button.primary:hover:not(:disabled){filter:brightness(1.1)}.geocoding-progress-modal{max-width:400px;width:90%}.geocoding-progress-modal h3{margin:0 0 1.5rem;font-size:var(--ds-font-lg);font-weight:var(--ds-weight-semibold)}.geocoding-progress-bar{height:.5rem;background:var(--ds-border-color);border-radius:var(--ds-radius-sm);overflow:hidden;margin-bottom:var(--ds-space-3)}.geocoding-progress-fill{height:100%;background:var(--ds-color-primary);border-radius:var(--ds-radius-sm);transition:width .3s ease}.geocoding-progress-count{text-align:center;font-size:var(--ds-font-sm);color:var(--ds-text-secondary);margin-bottom:var(--ds-space-4)}.geocoding-progress-stats{display:flex;justify-content:center;gap:var(--ds-space-6);margin-bottom:var(--ds-space-6)}.geocoding-stat{display:flex;align-items:center;gap:.375rem;font-size:var(--ds-font-sm)}.geocoding-stat [class*=fa-]{font-size:var(--ds-font-lg)}.geocoding-stat.success{color:var(--ds-color-success)}.geocoding-stat.error{color:var(--ds-color-error)}.geocoding-progress-actions{display:flex;justify-content:center}.geocoding-progress-actions button{padding:.5rem 1.5rem;border-radius:var(--ds-radius-md);border:1px solid var(--ds-border-color);background:var(--ds-bg-primary);color:var(--ds-text-secondary);font-size:var(--ds-font-sm);cursor:pointer;transition:all .15s ease}.geocoding-progress-actions button:hover{border-color:var(--ds-text-secondary)}@media(max-width:768px){.nav-rail,.app-body-spacer{display:none}.main-content{width:100%;flex-shrink:1;padding:0 1rem calc(56px + env(safe-area-inset-bottom))}.page-header{height:auto;min-height:48px;padding:8px 12px}.page-header-col-left{display:none}.page-header-col-center{width:100%;flex-shrink:1}.page-header-center-row{gap:var(--ds-space-3)}.search-bar--header{width:auto;flex:1;flex-shrink:1}.page-header-info{display:none}.page-header-col-right{flex:0}.page-content{padding:1rem 0}}.bottom-tab-bar{display:none}@media(max-width:768px){.bottom-tab-bar{display:flex;align-items:flex-end;justify-content:space-around;position:fixed;bottom:0;left:0;right:0;height:calc(56px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--ds-bg-primary);border-top:1px solid var(--ds-border-color);box-shadow:0 -2px 10px #0000000d;z-index:1000}.tab-item{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;height:56px;padding:.375rem 0;text-decoration:none;color:var(--ds-text-secondary);-webkit-tap-highlight-color:transparent;transition:color .15s ease}.tab-item [class*=fa-]{font-size:var(--ds-font-2xl)}.tab-label{font-size:10px;margin-top:2px;font-weight:var(--ds-weight-medium)}.tab-item.active{color:var(--ds-color-primary)}.tab-add-button{display:flex;align-items:center;justify-content:center;width:56px;height:56px;margin-top:-.75rem;border:none;border-radius:50%;background:var(--ds-color-primary);color:#fff;cursor:pointer;box-shadow:0 4px 12px color-mix(in srgb,var(--ds-color-primary) 30%,transparent);-webkit-tap-highlight-color:transparent;transition:transform .15s ease,box-shadow .15s ease}.tab-add-button:active{transform:scale(.95);box-shadow:0 2px 8px color-mix(in srgb,var(--ds-color-primary) 30%,transparent)}.tab-add-button [class*=fa-]{font-size:1.75rem}}@media(max-width:768px){.contact-row{min-height:56px;padding:.75rem 1rem}.tab-item,.tab-add-button{user-select:none;-webkit-user-select:none}body{overscroll-behavior:contain}}.icloud-import-view{padding:var(--ds-space-4);max-width:800px;margin:0 auto}.icloud-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 1rem;gap:var(--ds-space-3)}.icloud-empty-state>i{font-size:2.5rem;color:var(--ds-text-secondary)}.icloud-empty-state h3{margin:0;font-size:var(--ds-font-xl)}.icloud-empty-state p{margin:0;color:var(--ds-text-secondary);max-width:400px}.icloud-spinner{width:2rem;height:2rem;border:3px solid var(--ds-border-color);border-top-color:var(--ds-color-primary);border-radius:50%;animation:icloud-spin .8s linear infinite}@keyframes icloud-spin{to{transform:rotate(360deg)}}.icloud-import-summary,.icloud-import-summary-bar{display:flex;gap:var(--ds-space-6);justify-content:center;padding:var(--ds-space-4)}.icloud-import-summary-bar{background:var(--ds-bg-secondary);border-radius:var(--ds-radius-lg);margin-bottom:var(--ds-space-4)}.icloud-summary-stat{display:flex;flex-direction:column;align-items:center;gap:var(--ds-space-1)}.icloud-summary-number{font-size:var(--ds-font-2xl);font-weight:700;color:var(--ds-color-primary)}.icloud-summary-label{font-size:var(--ds-font-xs);color:var(--ds-text-secondary);text-transform:uppercase;letter-spacing:.05em}.icloud-section{margin-bottom:var(--ds-space-6)}.icloud-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--ds-space-3)}.icloud-section-header h3{margin:0;font-size:var(--ds-font-md)}.icloud-bulk-actions{display:flex;gap:var(--ds-space-2)}.icloud-bulk-btn{padding:.25rem .75rem;font-size:var(--ds-font-xs);border:1px solid var(--ds-border-color);background:var(--ds-bg-primary);border-radius:var(--ds-radius-md);cursor:pointer;color:var(--ds-text-secondary)}.icloud-bulk-btn:hover{background:var(--ds-bg-secondary);color:var(--ds-text-primary)}.icloud-match-list{display:flex;flex-direction:column;gap:var(--ds-space-3)}.icloud-match-card{border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-lg);padding:var(--ds-space-4);background:var(--ds-bg-primary);transition:opacity .2s}.icloud-match-card.skipped{opacity:.5}.icloud-match-header{display:flex;align-items:center;gap:var(--ds-space-2);margin-bottom:var(--ds-space-3);flex-wrap:wrap}.icloud-confidence-badge{font-size:.7rem;padding:.15rem .5rem;border-radius:var(--ds-radius-full);color:#fff;font-weight:var(--ds-weight-semibold);text-transform:uppercase;letter-spacing:.03em}.icloud-match-reasons{display:flex;gap:.375rem;flex-wrap:wrap}.icloud-reason-tag{font-size:var(--ds-font-xs);padding:.125rem .5rem;background:var(--ds-bg-secondary);border-radius:var(--ds-radius-sm);color:var(--ds-text-secondary)}.icloud-match-comparison{display:flex;align-items:flex-start;gap:var(--ds-space-4);margin-bottom:var(--ds-space-3)}.icloud-match-side{flex:1;min-width:0}.icloud-match-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ds-text-secondary);margin-bottom:var(--ds-space-1)}.icloud-match-name{font-weight:var(--ds-weight-semibold);font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icloud-match-detail{font-size:.8rem;color:var(--ds-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icloud-match-divider{display:flex;align-items:center;color:var(--ds-text-secondary);font-size:var(--ds-font-xs);padding-top:1rem}.icloud-match-actions{display:flex;gap:var(--ds-space-2)}.icloud-action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.375rem;padding:.375rem .5rem;font-size:.8rem;border:1px solid var(--ds-border-color);background:var(--ds-bg-primary);border-radius:var(--ds-radius-md);cursor:pointer;color:var(--ds-text-secondary);transition:all .15s}.icloud-action-btn:hover{background:var(--ds-bg-secondary)}.icloud-action-btn.active{border-color:var(--ds-color-primary);color:var(--ds-color-primary);background:color-mix(in srgb,var(--ds-color-primary) 8%,transparent)}.icloud-new-contacts-list{display:flex;flex-direction:column;gap:var(--ds-space-1);max-height:400px;overflow-y:auto}.icloud-new-contact-card{display:flex;align-items:center;gap:var(--ds-space-3);padding:.5rem .75rem;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-md);cursor:pointer;transition:opacity .2s}.icloud-new-contact-card.deselected{opacity:.5}.icloud-new-contact-card:hover{background:var(--ds-bg-secondary)}.icloud-new-contact-info{min-width:0}.icloud-import-footer{position:sticky;bottom:0;display:flex;justify-content:space-between;align-items:center;padding:var(--ds-space-4);background:var(--ds-bg-primary);border-top:1px solid var(--ds-border-color);margin:1rem -1rem -1rem}.icloud-import-summary-text{font-size:.85rem;color:var(--ds-text-secondary)}@media(max-width:600px){.icloud-match-comparison{flex-direction:column;gap:var(--ds-space-2)}.icloud-match-divider{display:none}.icloud-match-actions{flex-direction:column}.icloud-import-footer{flex-direction:column;gap:var(--ds-space-3);text-align:center}.icloud-import-summary,.icloud-import-summary-bar{gap:var(--ds-space-4)}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(46deg,var(--ds-gradient-brand-from) 7.03%,var(--ds-gradient-brand-to) 94.08%);padding:var(--ds-space-5)}.login-container{background:#fff;border-radius:16px;padding:var(--ds-space-12);max-width:400px;width:100%;box-shadow:0 25px 50px -12px #00000040;text-align:center}.login-header{margin-bottom:var(--ds-space-8)}.login-logo{height:40px;width:auto;margin-bottom:var(--ds-space-2)}.login-header p{color:var(--ds-text-secondary);margin:0;font-size:var(--ds-font-sm)}.login-content{margin-bottom:var(--ds-space-8)}.google-login-btn{display:flex;align-items:center;justify-content:center;gap:var(--ds-space-3);width:100%;padding:14px 24px;background:#fff;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-lg);font-size:var(--ds-font-md);font-weight:var(--ds-weight-medium);color:var(--ds-text-primary);cursor:pointer;transition:all .2s ease}.google-login-btn:hover:not(:disabled){background:var(--ds-bg-secondary);border-color:var(--ds-border-dark);box-shadow:0 2px 4px #0000000d}.google-login-btn:disabled{opacity:.6;cursor:not-allowed}.google-icon{flex-shrink:0}.login-divider{display:flex;align-items:center;gap:var(--ds-space-3);margin:16px 0;color:var(--ds-text-muted);font-size:.8125rem}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--ds-border-color)}.demo-btn{width:100%;padding:14px 24px;background:linear-gradient(46deg,var(--ds-gradient-brand-from) 7.03%,var(--ds-gradient-brand-to) 94.08%);border:none;border-radius:var(--ds-radius-lg);font-size:var(--ds-font-md);font-weight:var(--ds-weight-medium);color:#fff;cursor:pointer;transition:all .2s ease}.demo-btn:hover:not(:disabled){opacity:.9;box-shadow:0 2px 8px #7c3aed4d}.demo-btn:disabled{opacity:.6;cursor:not-allowed}.login-footer{color:var(--ds-text-muted);font-size:var(--ds-font-xs)}.login-footer p{margin:0}.dashboard-view{display:flex;flex-direction:column;height:100%;overflow:hidden}.dashboard-content{flex:1;overflow-y:auto;padding:24px 0}.dashboard-section{margin-bottom:var(--ds-space-6)}.stat-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--ds-space-4)}.stat-card{display:flex;align-items:center;gap:var(--ds-space-4);padding:var(--ds-space-5);cursor:pointer}.stat-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--ds-color-primary);border-radius:var(--ds-radius-xl);color:var(--ds-text-inverse)}.stat-icon i{font-size:var(--ds-font-2xl)}.stat-icon.countries{background:var(--ds-color-success)}.stat-icon.cities{background:var(--ds-color-warning)}.stat-icon.photos{background:var(--ds-color-purple)}.stat-icon.birthdays{background:var(--ds-color-error)}.stat-info{flex:1}.stat-value{font-size:28px;font-weight:var(--ds-weight-bold);color:var(--ds-text-primary);line-height:1.2}.stat-label{font-size:.8125rem;color:var(--ds-text-secondary);margin-top:2px}.activity-grid,.geography-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--ds-space-6)}.dashboard-card{overflow:hidden}.card-header{display:flex;align-items:center;gap:var(--ds-space-3);padding:16px 20px;border-bottom:1px solid var(--ds-border-color)}.card-header i{font-size:22px;color:var(--ds-color-primary)}.card-header h2{margin:0;font-size:var(--ds-font-md);font-weight:var(--ds-weight-semibold);color:var(--ds-text-primary)}.card-content{padding:8px 0}.dash-activity-list{list-style:none;margin:0;padding:0}.contact-item{display:flex;align-items:center;gap:var(--ds-space-3);padding:12px 20px;cursor:pointer;transition:background-color .2s}.contact-item:hover{background:var(--ds-bg-secondary)}.contact-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--ds-border-color)}.contact-avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:var(--ds-color-primary);color:var(--ds-text-inverse);font-weight:var(--ds-weight-semibold);font-size:var(--ds-font-md)}.dash-activity-info{flex:1;min-width:0}.dash-activity-name{font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);color:var(--ds-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contact-meta{font-size:var(--ds-font-xs);color:var(--ds-text-secondary);margin-top:2px}.contact-badge{font-size:var(--ds-font-2xs);padding:4px 8px;border-radius:var(--ds-radius-xl);white-space:nowrap}.birthday-badge{background:var(--ds-color-error-light);color:var(--ds-color-error)}.geography-list{list-style:none;margin:0;padding:0}.geography-item{display:flex;align-items:center;gap:var(--ds-space-3);padding:12px 20px}.geography-item:not(:last-child){border-bottom:1px solid var(--ds-border-light)}.geography-rank{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--ds-border-color);border-radius:50%;font-size:var(--ds-font-xs);font-weight:var(--ds-weight-semibold);color:var(--ds-text-secondary)}.geography-name{flex:1;font-size:var(--ds-font-sm);color:var(--ds-text-primary)}.geography-country{color:var(--ds-text-secondary)}.geography-count{font-size:var(--ds-font-sm);font-weight:var(--ds-weight-semibold);color:var(--ds-color-primary)}.dashboard-loading,.dashboard-error{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ds-space-4);color:var(--ds-text-secondary)}.dashboard-error i{font-size:48px;color:var(--ds-color-error)}@media(max-width:768px){.dashboard-content{padding:16px 0}.stat-cards-grid{grid-template-columns:repeat(2,1fr)}.stat-card{padding:var(--ds-space-4);gap:var(--ds-space-3)}.stat-icon{width:40px;height:40px}.stat-icon i{font-size:var(--ds-font-xl)}.stat-value{font-size:22px}.activity-grid,.geography-grid{grid-template-columns:1fr}}.admin-view{padding:var(--ds-space-6);max-width:1200px;margin:0 auto}.admin-loading,.admin-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ds-space-3);padding:64px 0;color:var(--ds-text-secondary)}.admin-error i{font-size:var(--ds-font-2xl);color:var(--ds-color-error)}.admin-summary{margin-bottom:var(--ds-space-4);font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.admin-summary-count{font-weight:var(--ds-weight-semibold);color:var(--ds-text-primary)}.admin-table-wrapper{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:var(--ds-font-sm)}.admin-table th{text-align:left;padding:10px 12px;font-weight:var(--ds-weight-semibold);font-size:var(--ds-font-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--ds-text-secondary);border-bottom:1px solid var(--ds-border-color);white-space:nowrap}.admin-table th.num,.admin-table td.num{text-align:right}.admin-table td{padding:var(--ds-space-3);border-bottom:1px solid var(--ds-border-color);white-space:nowrap;color:var(--ds-text-primary)}.admin-table tbody tr:hover{background:var(--ds-bg-secondary)}.admin-user-cell{display:flex;align-items:center;gap:var(--ds-space-3)}.admin-user-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0}.admin-user-avatar-placeholder{width:36px;height:36px;border-radius:50%;background:var(--ds-bg-secondary);display:flex;align-items:center;justify-content:center;font-weight:var(--ds-weight-semibold);font-size:var(--ds-font-sm);color:var(--ds-text-secondary);flex-shrink:0}.admin-user-info{display:flex;flex-direction:column;gap:2px;min-width:0}.admin-user-name{font-weight:var(--ds-weight-medium)}.admin-user-email{font-size:var(--ds-font-xs);color:var(--ds-text-secondary)}.admin-photo-size{color:var(--ds-text-secondary);font-size:var(--ds-font-xs)}.enrich-view{display:flex;flex-direction:column;height:100%;overflow:hidden}.enrich-header{padding:24px 32px;border-bottom:1px solid var(--ds-border-color);background:var(--ds-bg-primary)}.enrich-header h1{margin:0 0 4px;font-size:var(--ds-font-2xl);font-weight:var(--ds-weight-semibold);color:var(--ds-text-primary)}.enrich-subtitle{margin:0;font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.enrich-content{flex:1;overflow-y:auto;padding:24px 32px;display:flex;flex-direction:column;gap:var(--ds-space-4)}.config-warning{display:flex;gap:var(--ds-space-3);padding:var(--ds-space-4);background:#fbbf241a;border:1px solid rgba(251,191,36,.3);border-radius:var(--ds-radius-lg);margin-bottom:var(--ds-space-5)}.config-warning i{color:#f59e0b;font-size:var(--ds-font-2xl)}.config-warning strong{display:block;color:var(--ds-text-primary);margin-bottom:var(--ds-space-1)}.config-warning p{margin:0;font-size:.8125rem;color:var(--ds-text-secondary)}.config-warning code{background:#0000001a;padding:2px 6px;border-radius:var(--ds-radius-sm);font-family:monospace;font-size:var(--ds-font-xs)}.enrich-stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--ds-space-3);margin-bottom:var(--ds-space-5)}.enrich-stat-card{display:flex;flex-direction:column;align-items:center;gap:var(--ds-space-1);padding:var(--ds-space-4);border-radius:var(--ds-radius-lg);border:1px solid var(--ds-border-color);background:var(--ds-bg-primary);cursor:pointer;transition:all .15s}.enrich-stat-card:hover{border-color:var(--ds-text-secondary);background:var(--ds-bg-secondary)}.enrich-stat-card.expanded{border-color:var(--ds-color-primary);box-shadow:0 0 0 1px var(--ds-color-primary)}.enrich-stat-count{font-size:var(--ds-font-2xl);font-weight:var(--ds-weight-bold);line-height:1}.enrich-stat-label{font-size:var(--ds-font-2xs);color:var(--ds-text-secondary)}.enrich-stat-enriched .enrich-stat-count{color:var(--ds-color-success)}.enrich-stat-ready .enrich-stat-count{color:var(--ds-color-primary)}.enrich-stat-failed .enrich-stat-count{color:var(--ds-color-error)}.enrich-stat-no-linkedin .enrich-stat-count{color:var(--ds-text-tertiary)}.enrich-category-panel{border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-lg);margin-bottom:var(--ds-space-5);overflow:hidden}.enrich-category-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--ds-bg-secondary);border-bottom:1px solid var(--ds-border-color)}.enrich-category-header h4{margin:0;font-size:var(--ds-font-sm)}.enrich-category-close{background:none;border:none;color:var(--ds-text-tertiary);cursor:pointer;padding:var(--ds-space-1)}.enrich-category-close:hover{color:var(--ds-text-primary)}.enrich-category-loading{padding:var(--ds-space-6);display:flex;justify-content:center}.enrich-category-list{max-height:400px;overflow-y:auto}.enrich-category-contact{display:flex;align-items:center;gap:var(--ds-space-2);width:100%;padding:10px 16px;border:none;border-bottom:1px solid var(--ds-border-color);background:none;text-align:left;cursor:pointer;transition:background .1s;font-size:.8125rem;color:var(--ds-text-primary)}.enrich-category-contact:last-child{border-bottom:none}.enrich-category-contact:hover{background:var(--ds-bg-secondary)}.enrich-category-contact-name{font-weight:var(--ds-weight-medium)}.enrich-category-contact-company{color:var(--ds-text-secondary)}.enrich-category-contact-error{color:var(--ds-color-error);font-size:var(--ds-font-xs);margin-left:auto}.enrich-category-contact-date{color:var(--ds-text-tertiary);font-size:var(--ds-font-xs);margin-left:auto}.enrich-category-contact-arrow{color:var(--ds-text-tertiary);font-size:var(--ds-font-xs);flex-shrink:0}.enrich-category-empty{padding:var(--ds-space-8);text-align:center;color:var(--ds-text-tertiary);font-size:var(--ds-font-sm)}.enrichment-options{margin-bottom:var(--ds-space-5)}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:var(--ds-font-sm);color:var(--ds-text-primary)}.checkbox-label input{width:16px;height:16px;cursor:pointer}.limit-input-group{display:flex;align-items:center;gap:var(--ds-space-2);margin-top:var(--ds-space-3);font-size:var(--ds-font-sm);color:var(--ds-text-primary)}.limit-input{width:80px;padding:6px 10px;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-md);font-size:var(--ds-font-sm);background:var(--ds-bg-primary);color:var(--ds-text-primary)}.limit-input:focus{outline:none;border-color:var(--ds-color-primary);box-shadow:0 0 0 2px var(--ds-color-primary-light)}.limit-input::placeholder{color:var(--ds-text-tertiary)}.limit-input:disabled{opacity:.5;cursor:not-allowed}.limit-hint{color:var(--ds-text-secondary);font-size:.8125rem}.enrichment-progress{background:var(--ds-bg-secondary);border-radius:var(--ds-radius-lg);padding:var(--ds-space-4);margin-bottom:var(--ds-space-5)}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--ds-space-3)}.progress-status{display:flex;align-items:center;gap:var(--ds-space-2);font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);color:var(--ds-text-primary)}.progress-count{font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.progress-current{font-size:.8125rem;color:var(--ds-text-secondary);margin-bottom:var(--ds-space-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progress-stats{display:flex;gap:var(--ds-space-4)}.progress-stats .stat{display:flex;align-items:center;gap:var(--ds-space-1);font-size:.8125rem}.progress-stats .stat i{font-size:var(--ds-font-md)}.progress-stats .stat.success{color:var(--ds-color-success)}.progress-stats .stat.error{color:var(--ds-color-error)}.enrichment-result{background:#16a34a1a;border:1px solid rgba(22,163,74,.2);border-radius:var(--ds-radius-lg);padding:var(--ds-space-4);margin-bottom:var(--ds-space-5)}.result-header{display:flex;align-items:center;gap:var(--ds-space-2);font-size:var(--ds-font-md);font-weight:var(--ds-weight-semibold);color:var(--ds-color-success);margin-bottom:var(--ds-space-4)}.result-header .success-icon{font-size:var(--ds-font-2xl)}.result-stats{display:flex;gap:var(--ds-space-6);margin-bottom:var(--ds-space-4)}.result-stats .stat-item{display:flex;flex-direction:column;align-items:center}.result-stats .stat-item .stat-value{font-size:var(--ds-font-2xl);font-weight:var(--ds-weight-bold)}.result-stats .stat-item.success .stat-value{color:var(--ds-color-success)}.result-stats .stat-item.error .stat-value{color:var(--ds-color-error)}.result-stats .stat-item .stat-label{font-size:var(--ds-font-xs);color:var(--ds-text-secondary)}.result-errors{margin-top:var(--ds-space-4);padding-top:16px;border-top:1px solid rgba(22,163,74,.2)}.result-errors h4{margin:0 0 8px;font-size:var(--ds-font-sm);color:var(--ds-text-primary)}.result-errors ul{margin:0;padding:0 0 0 20px;font-size:.8125rem;color:var(--ds-text-secondary)}.result-errors li{margin-bottom:var(--ds-space-1)}.result-errors .more-errors{font-style:italic;color:var(--ds-text-tertiary)}.enriched-contacts-section{margin-top:var(--ds-space-4);padding-top:16px;border-top:1px solid rgba(22,163,74,.2)}.enriched-contacts-section h4{margin:0 0 12px;font-size:var(--ds-font-sm);color:var(--ds-text-primary)}.enriched-contacts-list{display:flex;flex-direction:column;gap:var(--ds-space-2)}.enriched-contact-card{padding:12px 16px;background:var(--ds-bg-primary);border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-lg)}.enriched-contact-card .enrich-contact-name{display:block;font-size:var(--ds-font-sm);font-weight:var(--ds-weight-semibold);color:var(--ds-color-primary);text-decoration:none;margin-bottom:var(--ds-space-1)}.enriched-contact-card .enrich-contact-name:hover{text-decoration:underline}.enriched-contact-card .contact-details{font-size:.8125rem;color:var(--ds-text-secondary)}.enrichment-error{display:flex;align-items:center;gap:var(--ds-space-2);padding:12px 16px;background:#dc26261a;border:1px solid rgba(220,38,38,.2);border-radius:var(--ds-radius-lg);margin-bottom:var(--ds-space-5);color:var(--ds-color-error);font-size:var(--ds-font-sm)}.enrichment-actions{display:flex;gap:var(--ds-space-3)}.primary-button .button-badge{background:#ffffff4d;padding:2px 8px;border-radius:var(--ds-radius-xl);font-size:var(--ds-font-xs)}.recovery-section{margin-top:var(--ds-space-6);padding-top:24px;border-top:1px solid var(--ds-border-color)}.recovery-heading{margin:0 0 8px;font-size:.9375rem;font-weight:var(--ds-weight-semibold);color:var(--ds-text-primary)}.recovery-description{margin:0 0 12px;font-size:.8125rem;color:var(--ds-text-secondary);line-height:1.4}.recovery-description a{color:var(--ds-color-primary)}.recovery-input-row{display:flex;gap:var(--ds-space-2);align-items:center}.recovery-input{flex:1;width:auto}.strategy-select{padding:6px 10px;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-md);font-size:var(--ds-font-sm);background:var(--ds-bg-primary);color:var(--ds-text-primary);cursor:pointer;min-width:200px}.strategy-select:focus{outline:none;border-color:var(--ds-color-primary);box-shadow:0 0 0 2px var(--ds-color-primary-light)}.strategy-select:disabled{opacity:.5;cursor:not-allowed}.gmail-discovery-results{background:var(--ds-bg-secondary);border-radius:var(--ds-radius-lg);padding:var(--ds-space-4);margin-bottom:var(--ds-space-5)}.gmail-discovery-header{font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);color:var(--ds-text-primary);margin-bottom:var(--ds-space-3)}.gmail-discovery-list{display:flex;flex-direction:column;gap:var(--ds-space-1)}.gmail-discovery-item{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:.8125rem;border-bottom:1px solid var(--ds-border-color)}.gmail-discovery-item:last-child{border-bottom:none}.gmail-discovery-name{color:var(--ds-text-primary);font-weight:var(--ds-weight-medium)}.gmail-discovery-detail{color:var(--ds-text-secondary);font-size:var(--ds-font-xs)}.gmail-discovery-more{font-size:var(--ds-font-xs);color:var(--ds-text-tertiary);font-style:italic;padding-top:8px}@media(max-width:768px){.enrich-header,.enrich-content{padding:16px 20px}.enrich-stats-row{grid-template-columns:repeat(2,1fr)}.enrichment-actions{flex-direction:column}.enrichment-actions .primary-button,.enrichment-actions .secondary-button{width:100%;justify-content:center}}.public-card-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--ds-gradient-brand);padding:var(--ds-space-6);box-sizing:border-box}.public-card-wrapper{width:100%;max-width:380px}.public-card{background:var(--ds-bg-primary);border-radius:24px;padding:40px 32px;text-align:center;box-shadow:var(--ds-shadow-xl)}.public-card-loading,.public-card-error{background:var(--ds-bg-primary);border-radius:24px;padding:48px 32px;text-align:center;max-width:380px;width:100%}.public-card-loading .loading-spinner{width:40px;height:40px;border:3px solid var(--ds-border-color);border-top-color:var(--ds-color-primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.public-card-loading p{color:var(--ds-text-secondary);margin:0}.public-card-error h1{font-size:var(--ds-font-2xl);color:var(--ds-text-primary);margin:0 0 12px}.public-card-error p{color:var(--ds-text-secondary);margin:0}.profile-avatar-container{position:relative;display:inline-block;margin-bottom:var(--ds-space-5)}.profile-avatar{width:150px;height:150px;border-radius:50%;background-size:cover;background-position:center;background-repeat:no-repeat;display:flex;align-items:center;justify-content:center;font-size:48px;color:var(--ds-text-inverse);font-weight:var(--ds-weight-semibold);border:4px solid var(--ds-bg-primary);box-shadow:var(--ds-shadow-md)}.avatar-initials{text-shadow:0 1px 2px rgba(0,0,0,.2)}.qr-toggle-btn{position:absolute;bottom:4px;right:4px;width:36px;height:36px;border-radius:50%;background:var(--ds-bg-primary);border:2px solid var(--ds-border-color);cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--ds-color-primary);transition:all .2s ease;box-shadow:var(--ds-shadow-sm)}.qr-toggle-btn:hover{background:var(--ds-color-primary);color:var(--ds-text-inverse);border-color:var(--ds-color-primary);transform:scale(1.05)}.profile-name{display:flex;flex-direction:column;align-items:center;gap:2px;margin-bottom:var(--ds-space-2)}.profile-name .first-name,.profile-name .last-name{font-size:28px;font-weight:var(--ds-weight-bold);color:var(--ds-text-primary);line-height:1.2}.profile-tagline{font-size:var(--ds-font-md);color:var(--ds-color-primary);font-style:italic;margin:0 0 8px;font-weight:var(--ds-weight-medium)}.profile-location{font-size:var(--ds-font-sm);color:var(--ds-text-muted);margin:0 0 24px}.public-card-contact-info{display:flex;flex-direction:column;gap:var(--ds-space-3);margin-bottom:var(--ds-space-6)}.contact-item{display:flex;align-items:center;gap:var(--ds-space-3);padding:12px 16px;background:var(--ds-bg-secondary);border-radius:var(--ds-radius-xl);text-decoration:none;color:var(--ds-text-primary);font-size:var(--ds-font-sm);transition:background .2s ease}a.contact-item:hover{background:var(--ds-bg-tertiary)}.contact-item svg{flex-shrink:0;color:var(--ds-color-primary)}.contact-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-item.location-item{cursor:default}.social-links{display:flex;justify-content:center;gap:var(--ds-space-4);margin-bottom:28px}.social-link{width:48px;height:48px;border-radius:50%;background:var(--ds-bg-tertiary);display:flex;align-items:center;justify-content:center;color:var(--ds-text-secondary);transition:all .2s ease}.social-link:hover{transform:translateY(-2px);box-shadow:var(--ds-shadow-md)}.social-link.whatsapp:hover{background:#25d366;color:var(--ds-text-inverse)}.social-link.linkedin:hover{background:#0a66c2;color:var(--ds-text-inverse)}.social-link.instagram:hover{background:linear-gradient(45deg,#f09433,#e6683c,#dc2743,#cc2366,#bc1888);color:var(--ds-text-inverse)}.social-link svg{width:22px;height:22px}.add-to-contacts-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 24px;background:var(--ds-gradient-brand);color:var(--ds-text-inverse);border:none;border-radius:var(--ds-radius-xl);font-size:var(--ds-font-md);font-weight:var(--ds-weight-semibold);cursor:pointer;transition:all .2s ease;box-shadow:0 4px 14px color-mix(in srgb,var(--ds-color-primary) 40%,transparent)}.add-to-contacts-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px color-mix(in srgb,var(--ds-color-primary) 50%,transparent)}.add-to-contacts-btn:disabled{opacity:.7;cursor:not-allowed}.add-to-contacts-btn svg{flex-shrink:0}@media(max-width:440px){.public-card-page{padding:var(--ds-space-4)}.public-card{padding:32px 24px}.profile-avatar{width:120px;height:120px;font-size:40px}.profile-name .first-name,.profile-name .last-name{font-size:var(--ds-font-2xl)}}.logout-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:none;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-lg);font-size:.8125rem;color:var(--ds-text-secondary);cursor:pointer;transition:all .15s ease}.logout-btn:hover:not(:disabled){background:var(--ds-bg-secondary);color:var(--ds-text-primary);border-color:var(--ds-border-dark)}.logout-btn:disabled{opacity:.5;cursor:not-allowed}.profile-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:var(--ds-space-4);color:var(--ds-text-secondary)}.unlinked-profile-state{max-width:500px;margin:48px auto;text-align:center;padding:var(--ds-space-6)}.setup-icon{width:80px;height:80px;margin:0 auto 24px;display:flex;align-items:center;justify-content:center;background:var(--ds-color-primary-light);border-radius:50%}.setup-icon i{font-size:40px;color:var(--ds-color-primary)}.unlinked-profile-state h2{margin:0 0 8px;font-size:var(--ds-font-2xl)}.unlinked-profile-state>p{color:var(--ds-text-secondary);margin:0 0 32px}.setup-options{display:flex;flex-direction:column;gap:var(--ds-space-4)}.setup-option{display:flex;align-items:center;gap:var(--ds-space-4);padding:var(--ds-space-5);background:var(--ds-bg-primary);border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-xl);cursor:pointer;text-align:left;transition:all .2s}.setup-option:hover{border-color:var(--ds-color-primary);box-shadow:0 4px 12px color-mix(in srgb,var(--ds-color-primary) 15%,transparent)}.option-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--ds-border-color);border-radius:var(--ds-radius-xl);flex-shrink:0}.option-icon i{font-size:var(--ds-font-2xl);color:var(--ds-color-primary)}.option-content{display:flex;flex-direction:column;gap:var(--ds-space-1)}.option-content strong{font-size:var(--ds-font-md)}.option-content span{font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.create-input-wrapper{padding:var(--ds-space-5);background:var(--ds-bg-primary);border:1px solid var(--ds-color-primary);border-radius:var(--ds-radius-xl)}.create-name-input{width:100%;padding:12px 16px;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-lg);font-size:var(--ds-font-md);margin-bottom:var(--ds-space-4)}.create-actions{display:flex;gap:var(--ds-space-3);justify-content:flex-end}.linked-profile-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--ds-color-primary-light);border:1px solid color-mix(in srgb,var(--ds-color-primary) 20%,transparent);border-radius:var(--ds-radius-xl);margin-bottom:var(--ds-space-6)}.header-content{display:flex;align-items:center;gap:var(--ds-space-4)}.header-info h3{margin:0;font-size:var(--ds-font-lg)}.header-info p{margin:4px 0 0;font-size:.8125rem;color:var(--ds-text-secondary)}.unlink-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:transparent;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-lg);cursor:pointer;color:var(--ds-text-secondary);font-size:var(--ds-font-sm);transition:all .2s}.unlink-btn:hover{border-color:var(--ds-color-error);color:var(--ds-color-error)}.unlink-confirm{display:flex;align-items:center;gap:var(--ds-space-3)}.unlink-confirm p{margin:0;font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.profile-confirm-actions{display:flex;gap:var(--ds-space-2)}.profile-danger-button{padding:8px 16px;background:var(--ds-color-error);color:#fff;border:none;border-radius:var(--ds-radius-md);cursor:pointer;font-size:var(--ds-font-sm)}.profile-danger-button:hover{background:var(--ds-color-error-hover)}.contact-search-autocomplete{max-width:600px;margin:24px auto;background:var(--ds-bg-primary);border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-xl);overflow:hidden}.search-results{max-height:400px;overflow-y:auto}.search-loading,.no-results{padding:var(--ds-space-6);text-align:center;color:var(--ds-text-secondary)}.results-list{list-style:none;margin:0;padding:0}.result-item{display:flex;align-items:center;gap:var(--ds-space-3);width:100%;padding:12px 16px;background:transparent;border:none;cursor:pointer;text-align:left;transition:background .2s}.result-item:hover{background:var(--ds-border-color)}.result-info{display:flex;flex-direction:column}.result-info strong{font-size:.9375rem}.result-detail{font-size:.8125rem;color:var(--ds-text-secondary)}.profile-page-layout{max-width:1200px;margin:0 auto;padding:var(--ds-space-6);display:flex;flex-direction:column;gap:var(--ds-space-8)}@media(max-width:768px){.profile-page-layout{padding:var(--ds-space-4)}}.profile-public-settings{display:grid;grid-template-columns:1fr 400px;gap:var(--ds-space-8);align-items:start}.public-settings-controls{display:flex;flex-direction:column;gap:var(--ds-space-6)}.public-settings-preview{position:sticky;top:24px;height:fit-content}@media(max-width:1024px){.profile-public-settings{grid-template-columns:1fr}.public-settings-preview{position:static;order:-1}}.profile-contact-details{display:flex;flex-direction:column;gap:var(--ds-space-6)}.profile-contact-details .contact-detail-content{background:var(--ds-bg-primary);border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-xl);padding:var(--ds-space-5)}.profile-contact-details .contact-detail-content .expanded-content{padding:0}.profile-contact-details .expanded-bottom-actions{display:flex;justify-content:flex-end;padding:16px 0;gap:var(--ds-space-2)}.profile-edit-button-primary{display:flex;align-items:center;gap:var(--ds-space-2);padding:10px 24px;background:var(--ds-color-primary);color:#fff;border:none;border-radius:var(--ds-radius-lg);cursor:pointer;font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);transition:all .2s}.profile-edit-button-primary:hover{background:var(--ds-color-primary-hover)}.profile-action-button{display:flex;align-items:center;gap:6px;padding:10px 20px;border-radius:var(--ds-radius-lg);cursor:pointer;font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);transition:all .2s}.profile-action-button.primary{background:var(--ds-color-primary);color:#fff;border:none}.profile-action-button.primary:hover:not(:disabled){background:var(--ds-color-primary-hover)}.profile-action-button.primary:disabled{opacity:.6;cursor:not-allowed}.profile-action-button.secondary{background:transparent;color:var(--ds-text-secondary);border:1px solid var(--ds-border-color)}.profile-action-button.secondary:hover{background:var(--ds-border-color)}.profile-name-fields .name-field-with-toggle .visibility-toggle{margin-top:0}.profile-section{background:var(--ds-bg-primary);border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-xl);padding:var(--ds-space-5)}.section-title{font-size:var(--ds-font-md);font-weight:var(--ds-weight-semibold);margin:0 0 16px;color:var(--ds-text-primary)}.public-card-controls{background:var(--ds-color-primary-light);border-color:color-mix(in srgb,var(--ds-color-primary) 20%,transparent)}.public-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:var(--ds-space-4)}.public-toggle-label{display:flex;align-items:center;gap:var(--ds-space-3)}.public-toggle-label i{font-size:28px;color:var(--ds-color-primary)}.public-toggle-label strong{display:block;font-size:.9375rem}.public-toggle-label p{margin:2px 0 0;font-size:.8125rem;color:var(--ds-text-secondary)}.hide-all-btn{display:flex;align-items:center;gap:6px;margin-top:var(--ds-space-4);padding:8px 16px;background:transparent;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-lg);cursor:pointer;color:var(--ds-text-secondary);font-size:var(--ds-font-sm);transition:all .2s}.hide-all-btn:hover{border-color:var(--ds-color-primary);color:var(--ds-color-primary);background:color-mix(in srgb,var(--ds-color-primary) 5%,transparent)}.hide-all-btn i{font-size:var(--ds-font-lg)}.toggle-switch{position:relative;display:inline-block;width:52px;height:28px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--ds-border-color);transition:.3s;border-radius:28px}.toggle-slider:before{position:absolute;content:"";height:22px;width:22px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:var(--ds-color-primary)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px)}.public-url-row{display:flex;align-items:center;gap:var(--ds-space-2);margin-top:var(--ds-space-4);padding-top:16px;border-top:1px solid var(--ds-border-color)}.public-url-display{flex:1;display:flex;align-items:center;gap:var(--ds-space-2);padding:8px 12px;background:var(--ds-bg-primary);border-radius:var(--ds-radius-lg);overflow:hidden}.public-url-display code{font-size:.8125rem;color:var(--ds-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.public-url-actions{display:flex;gap:var(--ds-space-2)}.view-card-btn,.copy-url-btn{padding:var(--ds-space-2);background:var(--ds-bg-primary);border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-lg);cursor:pointer;color:var(--ds-text-secondary);transition:all .2s;display:flex;align-items:center;justify-content:center;text-decoration:none}.view-card-btn:hover,.copy-url-btn:hover{background:var(--ds-color-primary);color:#fff;border-color:var(--ds-color-primary)}.visibility-toggle{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--ds-radius-lg);cursor:pointer;transition:all .2s;margin-top:var(--ds-space-5)}.visibility-toggle.visible{background:var(--ds-color-primary-light);color:var(--ds-color-primary)}.visibility-toggle.hidden{background:var(--ds-border-color);color:var(--ds-text-secondary)}.visibility-toggle.disabled{opacity:.5;cursor:not-allowed}.visibility-toggle:hover:not(.disabled){transform:scale(1.05)}.preview-panel-header{margin-bottom:var(--ds-space-4)}.preview-panel-header h3{margin:0;font-size:var(--ds-font-md);font-weight:var(--ds-weight-semibold)}.preview-panel-header p{margin:4px 0 0;font-size:.8125rem;color:var(--ds-text-secondary)}.public-card-preview{background:var(--ds-bg-primary);border:1px solid var(--ds-border-color);border-radius:16px;overflow:hidden}.public-card-preview.disabled{background:var(--ds-border-color)}.preview-disabled-message{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;color:var(--ds-text-secondary)}.preview-disabled-message i{font-size:48px;margin-bottom:var(--ds-space-4);opacity:.5}.preview-disabled-message p{margin:4px 0;font-size:var(--ds-font-sm)}.preview-card{padding:var(--ds-space-6)}.preview-avatar{display:flex;justify-content:center;margin-bottom:var(--ds-space-4)}.preview-header{text-align:center;margin-bottom:var(--ds-space-5)}.preview-name{margin:0;font-size:var(--ds-font-2xl);font-weight:var(--ds-weight-semibold)}.preview-tagline{margin:4px 0 0;font-size:var(--ds-font-sm);color:var(--ds-color-primary);font-style:italic}.preview-title,.preview-company{margin:4px 0 0;font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.preview-contact-info{display:flex;flex-direction:column;gap:var(--ds-space-2);margin-bottom:var(--ds-space-4)}.preview-item{display:flex;align-items:center;gap:var(--ds-space-2);font-size:var(--ds-font-sm)}.preview-item i{font-size:var(--ds-font-lg);color:var(--ds-text-secondary)}.preview-social{display:flex;justify-content:center;gap:var(--ds-space-3);padding-top:16px;border-top:1px solid var(--ds-border-color)}.preview-social-link{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--ds-border-color);border-radius:50%;color:var(--ds-text-secondary);transition:all .2s}.preview-social-link:hover{background:var(--ds-color-primary);color:#fff}.preview-birthday{display:flex;align-items:center;justify-content:center;gap:var(--ds-space-2);margin-top:var(--ds-space-4);padding-top:16px;border-top:1px solid var(--ds-border-color);font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.save-success{display:flex;align-items:center;gap:var(--ds-space-1);color:var(--ds-color-success);font-size:var(--ds-font-sm)}.mobile-save-bar{position:fixed;bottom:60px;left:0;right:0;padding:var(--ds-space-4);background:var(--ds-bg-primary);border-top:1px solid var(--ds-border-color);z-index:100}.mobile-save-bar .full-width{width:100%}.primary-button{display:flex;align-items:center;gap:6px;padding:10px 20px;background:var(--ds-color-primary);color:#fff;border:none;border-radius:var(--ds-radius-lg);cursor:pointer;font-size:var(--ds-font-sm);font-weight:var(--ds-weight-medium);transition:all .2s}.primary-button:hover:not(:disabled){background:var(--ds-color-primary-hover)}.primary-button:disabled{opacity:.6;cursor:not-allowed}.profile-secondary-button{padding:8px 16px;background:transparent;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-md);cursor:pointer;font-size:var(--ds-font-sm);color:var(--ds-text-secondary);transition:all .2s}.profile-secondary-button:hover{background:var(--ds-border-color)}.account-section{border-color:var(--ds-border-color)}.account-info{display:flex;align-items:center;justify-content:space-between;gap:var(--ds-space-4)}.account-email{display:flex;align-items:center;gap:var(--ds-space-2);margin:0;font-size:var(--ds-font-sm);color:var(--ds-text-secondary)}.logout-button{display:flex;align-items:center;gap:var(--ds-space-2);padding:10px 20px;background:transparent;border:1px solid var(--ds-border-color);border-radius:var(--ds-radius-lg);cursor:pointer;font-size:var(--ds-font-sm);color:var(--ds-text-secondary);transition:all .2s}.logout-button:hover:not(:disabled){border-color:var(--ds-color-error);color:var(--ds-color-error)}.logout-button:disabled{opacity:.6;cursor:not-allowed}@media(max-width:640px){.account-info{flex-direction:column;align-items:flex-start}}.demo-prompt-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000}.demo-prompt-modal{background:#fff;border-radius:var(--ds-radius-xl);padding:var(--ds-space-8);max-width:400px;width:90%;text-align:center;box-shadow:0 25px 50px -12px #00000040}.demo-prompt-modal h3{margin:0 0 8px;font-size:var(--ds-font-xl)}.demo-prompt-modal p{margin:0 0 24px;color:var(--ds-text-secondary);font-size:var(--ds-font-sm)}.demo-prompt-actions{display:flex;flex-direction:column;gap:var(--ds-space-2)}.demo-prompt-primary{padding:var(--ds-space-3);background:linear-gradient(46deg,var(--ds-gradient-brand-from) 7.03%,var(--ds-gradient-brand-to) 94.08%);color:#fff;border:none;border-radius:var(--ds-radius-lg);font-size:.9375rem;font-weight:var(--ds-weight-medium);cursor:pointer}.demo-prompt-primary:hover{opacity:.9}.demo-prompt-secondary{padding:var(--ds-space-3);background:none;border:none;color:var(--ds-text-muted);font-size:var(--ds-font-sm);cursor:pointer}.demo-prompt-secondary:hover{color:var(--ds-text-primary)}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.leaflet-cluster-anim .leaflet-marker-icon,.leaflet-cluster-anim .leaflet-marker-shadow{-webkit-transition:-webkit-transform .3s ease-out,opacity .3s ease-in;-moz-transition:-moz-transform .3s ease-out,opacity .3s ease-in;-o-transition:-o-transform .3s ease-out,opacity .3s ease-in;transition:transform .3s ease-out,opacity .3s ease-in}.leaflet-cluster-spider-leg{-webkit-transition:-webkit-stroke-dashoffset .3s ease-out,-webkit-stroke-opacity .3s ease-in;-moz-transition:-moz-stroke-dashoffset .3s ease-out,-moz-stroke-opacity .3s ease-in;-o-transition:-o-stroke-dashoffset .3s ease-out,-o-stroke-opacity .3s ease-in;transition:stroke-dashoffset .3s ease-out,stroke-opacity .3s ease-in}.marker-cluster-small{background-color:#b5e28c99}.marker-cluster-small div{background-color:#6ecc3999}.marker-cluster-medium{background-color:#f1d35799}.marker-cluster-medium div{background-color:#f0c20c99}.marker-cluster-large{background-color:#fd9c7399}.marker-cluster-large div{background-color:#f1801799}.leaflet-oldie .marker-cluster-small{background-color:#b5e28c}.leaflet-oldie .marker-cluster-small div{background-color:#6ecc39}.leaflet-oldie .marker-cluster-medium{background-color:#f1d357}.leaflet-oldie .marker-cluster-medium div{background-color:#f0c20c}.leaflet-oldie .marker-cluster-large{background-color:#fd9c73}.leaflet-oldie .marker-cluster-large div{background-color:#f18017}.marker-cluster{background-clip:padding-box;border-radius:20px}.marker-cluster div{width:30px;height:30px;margin-left:5px;margin-top:5px;text-align:center;border-radius:15px;font:12px Helvetica Neue,Arial,Helvetica,sans-serif}.marker-cluster span{line-height:30px}.onboarding-container{max-width:640px;margin:0 auto;padding:2rem 1rem}.onboarding-header{text-align:center;margin-bottom:2rem;position:relative}.onboarding-header h2{margin-bottom:.5rem}.onboarding-header p{color:var(--ds-text-secondary);margin-bottom:0}.skip-link{cursor:pointer;font-size:.875rem;color:var(--ds-text-secondary)}.skip-link:hover{color:var(--ds-color-primary)}.onboarding-section{padding:1rem 0}.onboarding-success{text-align:center;color:var(--ds-color-success);font-weight:600;margin-bottom:1rem}.onboarding-footer{text-align:center;margin-top:2rem}.onboarding-footer button{min-width:200px}.onboarding-profile{display:flex;flex-direction:column;align-items:center;gap:1rem}.profile-preview{display:flex;flex-direction:column;align-items:center;gap:.5rem}.profile-info{display:flex;flex-direction:column;align-items:center}.profile-info strong{font-size:1.1rem}.profile-info span{color:var(--ds-text-secondary);font-size:.875rem}.error-text{color:var(--ds-color-error);font-size:.875rem}.onboarding-instructions{margin-bottom:1rem;font-size:.9rem}.onboarding-instructions ul{margin-top:.5rem}.import-result{padding:.75rem;background:var(--ds-bg-secondary);border-radius:var(--ds-radius-md);text-align:center}.muted-text{color:var(--ds-text-secondary);font-size:.875rem}.import-progress{text-align:center}.import-progress progress{width:100%;margin-top:.5rem}
