:root{--color-primary: #2563eb;--color-primary-dark: #1d4ed8;--color-primary-light: #dbeafe;--color-secondary: #64748b;--color-success: #059669;--color-success-light: #d1fae5;--color-warning: #d97706;--color-warning-light: #fef3c7;--color-error: #dc2626;--color-error-light: #fee2e2;--overlay-background: rgba(0, 0, 0, .5);--overlay-success: rgba(5, 150, 105, .1);--overlay-warning: rgba(217, 119, 6, .1);--overlay-secondary: rgba(100, 116, 139, .1);--overlay-primary: rgba(37, 99, 235, .1);--surface-primary: #ffffff;--surface-secondary: #f8fafc;--surface-tertiary: #f1f5f9;--border-color: #e2e8f0;--font-family-base: system-ui, -apple-system, sans-serif;--font-family-mono: "SF Mono", "Monaco", "Inconsolata", "Roboto Mono", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.5rem;--font-size-micro: .8rem;--font-size-detail: .95rem;--font-size-display: 2rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-container: 1rem;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-full: 50%;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-card: 0 2px 4px rgba(0, 0, 0, .1);--shadow-card-hover: 0 4px 6px -1px rgba(0, 0, 0, .1);--z-dropdown: 1000;--z-modal: 1050;--z-tooltip: 1100;--z-sidebar: 100;--sidebar-width: calc(var(--spacing-2xl) * 7);--sidebar-collapsed-width: calc( var(--spacing-2xl) + var(--spacing-sm) );--size-icon-xs: 8px;--size-icon-sm: 14px;--size-icon-md: 16px;--size-icon-lg: 20px;--size-icon-xl: 24px;--size-icon-2xl: 28px;--size-avatar-sm: 32px;--size-avatar-md: 40px;--size-avatar-lg: 48px;--size-button-height: calc(var(--spacing-xl) + var(--spacing-xs));--size-border-xs: calc(var(--spacing-xs) * .75);--size-content-min: calc(var(--spacing-2xl) * 1.3);--size-content-width: calc(var(--spacing-2xl) * 3.3);--size-modal-max: calc(var(--spacing-2xl) * 10);--size-content-sm: 200px;--size-content-md: 400px;--size-content-lg: 600px;--size-content-xl: 800px;--size-content-2xl: 1200px;--size-container-sm: 500px;--size-container-md: 600px;--size-divider: 1px;--size-badge-width: calc(var(--spacing-2xl) * 2);--breakpoint-sm: 480px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--map-height: 600px;--map-height-mobile: 400px;--marker-bg: var(--surface-primary);--marker-border: var(--border-color);--marker-hover-scale: 1.1;--marker-selected-bg: var(--color-primary);--marker-selected-text: var(--surface-primary);--popup-max-width: 400px;--popup-border-radius: var(--radius-lg);--popup-shadow: var(--shadow-lg)}:root[data-theme=dark]{--color-primary: #60a5fa;--color-primary-dark: #3b82f6;--color-primary-light: #1e3a8a;--color-secondary: #94a3b8;--color-success: #10b981;--color-success-light: #064e3b;--color-warning: #f59e0b;--color-warning-light: #78350f;--color-error: #ef4444;--color-error-light: #7f1d1d;--surface-primary: #1e293b;--surface-secondary: #0f172a;--surface-tertiary: #334155;--border-color: #475569;--text-primary: #f1f5f9;--text-secondary: #cbd5e1;--text-tertiary: #94a3b8;--overlay-background: rgba(0, 0, 0, .75);--overlay-primary: rgba(96, 165, 250, .15);--overlay-success: rgba(16, 185, 129, .15);--overlay-warning: rgba(245, 158, 11, .15);--overlay-secondary: rgba(148, 163, 184, .15);--shadow-sm: 0 1px 2px 0 rgba(255, 255, 255, .05);--shadow-md: 0 4px 6px -1px rgba(255, 255, 255, .1);--shadow-lg: 0 20px 25px -5px rgba(255, 255, 255, .1), 0 10px 10px -5px rgba(255, 255, 255, .04);--shadow-card: 0 2px 4px rgba(255, 255, 255, .05);--shadow-card-hover: 0 4px 6px -1px rgba(255, 255, 255, .1)}*{box-sizing:border-box}html{line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}body{margin:0;font-family:var(--font-family-base);font-size:var(--font-size-base);color:var(--color-secondary);background-color:var(--surface-secondary);overflow-x:hidden;min-height:100vh;width:100%;max-width:100vw}.main-container{min-height:100vh;padding:0 var(--spacing-container);transition:margin-left var(--transition-normal);width:100%;overflow-x:hidden}@media (min-width: 769px){.main-container{margin-left:var(--sidebar-width);max-width:calc(100vw - var(--sidebar-width))}body.sidebar-collapsed .main-container{margin-left:var(--sidebar-collapsed-width);max-width:calc(100vw - var(--sidebar-collapsed-width))}}.full-width-container{width:100%;max-width:100%}.app-layout{min-height:100vh;width:100%;max-width:100vw;overflow-x:hidden;position:relative}.content-section{background:var(--surface-primary);border-radius:var(--radius-md);border:1px solid var(--border-color);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);width:100%;max-width:100%;overflow-x:auto}.card-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--surface-tertiary);border-bottom:1px solid var(--border-color)}@media (max-width: 768px){.main-container{margin-left:0;padding:0 var(--spacing-md);padding-top:calc(var(--size-avatar-md) + var(--spacing-xl));width:100%;max-width:100%}.content-section{padding:var(--spacing-md);margin-bottom:var(--spacing-md);border-radius:var(--radius-sm)}.card-header{padding:var(--spacing-sm);flex-wrap:wrap;gap:var(--spacing-sm)}}@media (max-width: var(--breakpoint-sm)){.main-container{padding:0 var(--spacing-sm);padding-top:calc(var(--size-avatar-md) + var(--spacing-lg))}.content-section{padding:var(--spacing-sm)}}.sidebar{display:block;height:100vh;width:var(--sidebar-width);background:var(--surface-primary);border-right:1px solid var(--border-color);transition:width var(--transition-normal);position:fixed;left:0;top:0;z-index:var(--z-sidebar);display:flex;flex-direction:column}.sidebar.collapsed{width:var(--sidebar-collapsed-width)}.sidebar.collapsed .sidebar-header{justify-content:center;padding:var(--spacing-md) var(--spacing-sm) var(--spacing-lg) var(--spacing-sm);position:relative;flex-direction:column;align-items:center}.sidebar.collapsed .company-logo{margin-right:0;margin-top:var(--spacing-lg)}.sidebar.collapsed .sidebar-minimize-btn{position:absolute;top:var(--spacing-xs);right:var(--spacing-xs);width:var(--size-icon-xl);height:var(--size-icon-xl)}.sidebar.collapsed .minimize-icon{width:var(--size-icon-sm);height:var(--size-icon-sm)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color);min-height:var(--size-content-min);position:relative}.sidebar-minimize-btn{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);width:var(--size-icon-2xl);height:var(--size-icon-2xl);border:none;background:none;color:var(--color-secondary);cursor:pointer;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);z-index:1}.sidebar-minimize-btn:hover{background:var(--surface-tertiary);color:var(--color-primary)}.minimize-icon{width:var(--size-icon-md);height:var(--size-icon-md)}.company-logo{width:var(--size-avatar-md);height:var(--size-avatar-md);border-radius:var(--radius-md);background:var(--color-primary);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:var(--font-size-lg);margin-right:var(--spacing-md);flex-shrink:0}.company-logo-image{width:var(--size-avatar-md);height:var(--size-avatar-md);border-radius:var(--radius-md);object-fit:contain;margin-right:var(--spacing-md);flex-shrink:0;background:#fff;padding:2px}.sidebar.collapsed .company-logo-image{margin-right:0;margin-top:var(--spacing-lg)}.company-name{font-weight:600;font-size:var(--font-size-lg);color:var(--color-secondary);white-space:nowrap;overflow:hidden;transition:opacity var(--transition-fast)}.quick-actions{position:relative;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--border-color)}.quick-actions-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.quick-actions-trigger:hover{background:var(--color-primary-dark)}.quick-actions-trigger--collapsed{width:var(--size-avatar-md);height:var(--size-avatar-md);padding:var(--spacing-sm);justify-content:center;margin:0 auto}.sidebar.collapsed .quick-actions{padding:var(--spacing-md) var(--spacing-xs);display:flex;justify-content:center;align-items:center}.quick-actions-icon{width:var(--size-icon-lg);height:var(--size-icon-lg);transition:transform var(--transition-fast)}.rotate-180{transform:rotate(180deg)}.quick-actions-dropdown{position:absolute;top:100%;left:var(--spacing-lg);right:var(--spacing-lg);background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 4px 6px -1px #0000001a;z-index:var(--z-dropdown);margin-top:var(--spacing-xs)}.sidebar.collapsed .quick-actions-dropdown{left:calc(var(--sidebar-collapsed-width) + var(--spacing-xs));right:auto;width:var(--size-content-width);z-index:var(--z-modal)}.quick-action-item{display:flex;align-items:center;width:100%;padding:var(--spacing-sm) var(--spacing-md);border:none;background:none;text-align:left;color:var(--color-secondary);cursor:pointer;transition:background var(--transition-fast)}.quick-action-item:hover{background:var(--surface-tertiary)}.sidebar-content{flex:1;overflow-y:auto;padding:var(--spacing-md) 0}.navigation-section{margin-bottom:.3rem}.sidebar .section-title{padding:0 var(--spacing-lg) .0375rem;margin-bottom:0;font-size:.6rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-secondary);opacity:.7;border-bottom:none}.navigation-list{list-style:none;margin:0;padding:0}.navigation-item{margin:0}.navigation-link{display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-lg);color:var(--color-secondary);text-decoration:none;transition:all var(--transition-fast);position:relative}.navigation-link:hover{background:var(--surface-tertiary);color:var(--color-primary)}.navigation-link.active{background:var(--overlay-primary);color:var(--color-primary);font-weight:500}.navigation-link.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--size-border-xs);background:var(--color-primary)}.navigation-icon{width:var(--size-icon-lg);height:var(--size-icon-lg);margin-right:var(--spacing-md);flex-shrink:0}.navigation-label{white-space:nowrap;overflow:hidden}.sidebar-footer{padding:var(--spacing-lg);border-top:1px solid var(--border-color);margin-top:auto}.user-profile{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.user-avatar{width:var(--size-avatar-md);height:var(--size-avatar-md);border-radius:var(--radius-full);background:var(--color-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-initial{color:#fff;font-weight:600;font-size:var(--font-size-base)}.user-info{flex:1;min-width:0}.user-name{font-weight:600;font-size:var(--font-size-sm);color:var(--color-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-tenant{font-size:var(--font-size-xs);color:var(--color-secondary);opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.logout-form{margin:0}.logout-btn{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--surface-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--color-secondary);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.logout-btn:hover{background:var(--color-error-light);border-color:var(--color-error);color:var(--color-error)}.logout-icon{width:var(--size-icon-md);height:var(--size-icon-md);flex-shrink:0}.sidebar.collapsed .sidebar-footer{padding:var(--spacing-md) var(--spacing-xs)}.sidebar.collapsed .user-profile{justify-content:center}.sidebar.collapsed .logout-btn{justify-content:center;padding:var(--spacing-sm)}.mobile-menu-toggle{display:none;position:fixed;top:var(--spacing-md);left:var(--spacing-md);z-index:calc(var(--z-sidebar) + 1);width:var(--size-avatar-md);height:var(--size-avatar-md);border:none;background:var(--color-primary);border-radius:var(--radius-md);cursor:pointer;padding:var(--spacing-sm);box-shadow:var(--shadow-md);transition:all var(--transition-fast)}.mobile-menu-toggle:hover{background:var(--color-primary-dark);box-shadow:var(--shadow-lg)}.mobile-menu-toggle:active{transform:scale(.95)}.hamburger-icon{display:block;width:100%;height:2px;background:#fff;position:relative;transition:all var(--transition-fast)}.hamburger-icon:before,.hamburger-icon:after{content:"";display:block;width:100%;height:2px;background:#fff;position:absolute;left:0;transition:all var(--transition-fast)}.hamburger-icon:before{top:-8px}.hamburger-icon:after{bottom:-8px}.mobile-overlay{position:fixed;inset:0;background:var(--overlay-background);z-index:calc(var(--z-sidebar) - 1);transition:all var(--transition-normal)}.theme-toggle-btn{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-sm);background:var(--surface-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--color-secondary);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.theme-toggle-btn:hover{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.theme-toggle-btn--collapsed{justify-content:center;padding:var(--spacing-sm)}.theme-toggle-icon{flex-shrink:0}.theme-toggle-text{white-space:nowrap}.theme-toggle-btn[disabled]{opacity:.5;cursor:not-allowed}.sidebar.collapsed .theme-toggle-btn{justify-content:center;padding:var(--spacing-sm)}@media (max-width: 768px){.mobile-menu-toggle{display:flex;align-items:center;justify-content:center}.sidebar{transform:translate(-100%);box-shadow:none;transition:transform var(--transition-normal),box-shadow var(--transition-normal);position:fixed;left:0;top:0;z-index:var(--z-sidebar)}.sidebar:not(.open){transform:translate(-100%);visibility:hidden}.sidebar.open{transform:translate(0);box-shadow:var(--shadow-lg);visibility:visible}}@media (min-width: 769px){.sidebar{transform:translate(0)}}.btn{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:1px solid transparent;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;text-decoration:none;cursor:pointer;transition:all var(--transition-fast)}.btn-primary:hover{background:var(--color-primary-dark)}.btn-secondary{background:var(--surface-primary);color:var(--color-secondary);border-color:var(--border-color)}.btn-secondary:hover{background:var(--surface-tertiary)}.btn-with-icon{display:inline-flex;align-items:center;gap:var(--spacing-xs)}.btn-svg-icon{vertical-align:middle}@media (max-width: var(--breakpoint-md)){.btn{min-height:44px;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-base)}.btn-icon{min-width:44px;min-height:44px;padding:var(--spacing-sm)}}.form-label{display:block;margin-bottom:var(--spacing-xs);font-weight:500;color:var(--color-secondary)}.form-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-base);transition:border-color var(--transition-fast)}.loading-text{display:flex;align-items:center;gap:var(--spacing-xs)}.loading-text:after{content:"";width:var(--size-icon-md);height:var(--size-icon-md);border:2px solid transparent;border-top:2px solid currentColor;border-radius:var(--radius-full);animation:spin 1s linear infinite}.site-header{background:var(--surface-primary);border-bottom:1px solid var(--border-color);padding:var(--spacing-md) 0}.main-navigation{display:flex;align-items:center;gap:var(--spacing-lg)}.nav-link{text-decoration:none;color:var(--color-secondary);font-weight:500;transition:color var(--transition-fast)}.nav-link:hover,.nav-link.active{color:var(--color-primary)}.skip-link{position:absolute;top:-40px;left:var(--spacing-xs);background:var(--color-primary);color:#fff;padding:var(--size-icon-xs);text-decoration:none;border-radius:var(--radius-md);z-index:var(--z-tooltip)}.skip-link:focus{top:var(--spacing-xs)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background:var(--surface-primary);border-radius:var(--radius-md);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);width:100%;max-width:100%;box-sizing:border-box}.page-header hgroup{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1;min-width:0}.page-header h1{font-size:var(--font-size-2xl);font-weight:600;color:var(--color-secondary);margin:0;line-height:1.2;word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.page-header .page-description{color:var(--color-secondary);font-size:var(--font-size-sm);opacity:.7;margin:0;line-height:1.4;word-wrap:break-word;overflow-wrap:break-word;white-space:normal}.page-actions{display:flex;gap:var(--spacing-sm);align-items:center;flex-shrink:0}.page-header-actions{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0}@media (max-width: 768px){.page-header{flex-direction:column;align-items:stretch;gap:var(--spacing-md);padding:var(--spacing-md)}.page-header hgroup{width:100%;min-width:0}.page-header h1{font-size:var(--font-size-xl);white-space:normal;word-break:normal}.page-header .page-description{white-space:normal;word-break:normal}.page-actions{width:100%;flex-direction:column}.page-actions .btn{width:100%;justify-content:center}.page-header-actions{width:100%;flex-direction:column;align-items:stretch}}@media (max-width: 480px){.page-header h1{font-size:var(--font-size-lg)}.page-header .page-description{font-size:var(--font-size-xs)}}.form-section{margin-bottom:var(--spacing-xl)}.section-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-secondary);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-color)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.form-group{margin-bottom:var(--spacing-md)}.form-label{display:block;margin-bottom:var(--spacing-xs);font-weight:500;color:var(--color-secondary);font-size:var(--font-size-sm)}.required-indicator{color:var(--color-error)}.form-input,.form-textarea,.form-select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-base);transition:border-color var(--transition-fast);background:var(--surface-primary)}.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--overlay-primary)}.form-input--error,.form-textarea--error,.form-select--error{border-color:var(--color-error)}.form-error{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-error)}@media (max-width: var(--breakpoint-md)){.form-row{grid-template-columns:1fr;gap:0}}.modal{position:fixed;inset:0;background:var(--overlay-background);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);opacity:0;visibility:hidden;transition:all var(--transition-normal)}.modal--open{opacity:1;visibility:visible}.modal__content{background:var(--surface-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-height:90vh;overflow-y:auto;transform:scale(.95);transition:transform var(--transition-normal)}.modal--open .modal__content{transform:scale(1)}.modal__content--sm{width:90%;max-width:var(--size-content-md)}.modal__content--md{width:90%;max-width:var(--size-content-lg)}.modal__content--lg{width:90%;max-width:var(--size-content-xl)}.modal__content--xl{width:90%;max-width:var(--size-content-2xl)}.modal__header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.modal__header h2{margin:0;font-size:var(--font-size-xl);color:var(--color-secondary)}.modal__close{background:none;border:none;font-size:var(--font-size-2xl);color:var(--color-secondary);cursor:pointer;padding:var(--spacing-xs);line-height:1;transition:color var(--transition-fast)}.modal__close:hover{color:var(--color-error)}.modal__body{padding:var(--spacing-lg)}.modal__footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-lg);border-top:1px solid var(--border-color)}.modal-section{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.modal-section-title{font-size:var(--font-size-lg);font-weight:600;margin:0 0 var(--spacing-sm) 0;color:var(--color-primary);padding-bottom:var(--spacing-xs);border-bottom:1px solid var(--border-color)}.modal-two-column{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);border:none;padding:0;margin:0}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.form-label{font-weight:600;font-size:var(--font-size-sm);color:var(--color-primary);display:block}.required-asterisk{color:var(--color-error);margin-left:2px}.form-input,.form-select,.form-textarea{width:100%;padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-md);transition:border-color var(--transition-fast);background:var(--surface-primary);font-family:var(--font-family-base)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--overlay-primary)}.form-input--error,.form-select--error,.form-textarea--error{border-color:var(--color-error)}.form-textarea{resize:vertical;min-height:80px;line-height:1.5}.form-error{color:var(--color-error);font-size:var(--font-size-xs);margin-top:var(--spacing-xs);display:block}.form-help-text{font-size:var(--font-size-xs);color:var(--color-secondary);margin-top:var(--spacing-xs);opacity:.8}@media (max-width: var(--breakpoint-md)){.modal-two-column,.form-row{grid-template-columns:1fr}}.email-compose-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;pointer-events:none}.email-compose-modal .modal-layout{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;pointer-events:none}.email-compose-modal .modal-overlay{display:none!important}.modal-content{position:relative;background:var(--surface-primary);border-radius:var(--radius-lg);box-shadow:0 20px 60px #0000004d;max-height:90vh;overflow-y:auto;width:100%;max-width:var(--size-content-xl);pointer-events:auto}.modal-content--lg{max-width:var(--size-content-xl)}.modal-close-btn{background:none;border:none;cursor:pointer;padding:var(--spacing-xs);line-height:1;transition:color var(--transition-fast)}.modal-close-icon{font-size:var(--font-size-2xl);color:var(--color-secondary);transition:color var(--transition-fast)}.modal-close-btn:hover .modal-close-icon{color:var(--color-error)}.modal-footer{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-top:1px solid var(--border-color);gap:var(--spacing-md)}.modal-footer-info{flex:1}.modal-footer-actions{display:flex;gap:var(--spacing-sm)}.form-textarea--tall{min-height:200px}.form-loading{padding:var(--spacing-sm);color:var(--color-secondary);font-size:var(--font-size-sm)}.form-error-banner{background:var(--color-error-light);border:1px solid var(--color-error);color:var(--color-error-dark);padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-md)}.gmail-status{font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm)}.gmail-status--connected{background:var(--color-success-light);color:var(--color-success-dark)}@media (max-width: var(--breakpoint-md)){.modal__content{width:95%;max-height:90vh;margin:var(--spacing-sm)}.modal__header{padding:var(--spacing-md)}.modal__header h2{font-size:var(--font-size-lg)}.modal__body{padding:var(--spacing-md)}.modal__footer{padding:var(--spacing-md);flex-direction:column-reverse;gap:var(--spacing-sm)}.modal__footer .btn{width:100%;justify-content:center}.form-grid{grid-template-columns:1fr}.modal-section{margin-bottom:var(--spacing-md)}.modal-section-title{font-size:var(--font-size-base)}.modal-content{width:95%;margin:var(--spacing-sm)}.modal-header,.modal-body{padding:var(--spacing-md)}.modal-footer{padding:var(--spacing-md);flex-direction:column-reverse}.modal-footer-actions{width:100%;flex-direction:column-reverse}.modal-footer-actions .btn{width:100%}}@media (max-width: var(--breakpoint-sm)){.modal__content,.modal-content{width:98%;max-height:95vh}.modal__header,.modal__body,.modal__footer,.modal-header,.modal-body,.modal-footer{padding:var(--spacing-sm)}.modal__header h2,.modal-header h2{font-size:var(--font-size-base)}.form-group{margin-bottom:var(--spacing-sm)}}.confirm-dialog-overlay{position:fixed;inset:0;background:var(--overlay-background);z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);opacity:0;transition:opacity var(--transition-normal)}.confirm-dialog-overlay.confirm-dialog--visible{opacity:1}.confirm-dialog-overlay.confirm-dialog--dismissing{opacity:0}.confirm-dialog{background:var(--surface-primary);border-radius:var(--radius-lg);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:500px;width:100%;display:flex;flex-direction:column;transform:scale(.95);transition:transform var(--transition-normal)}.confirm-dialog--visible .confirm-dialog{transform:scale(1)}.confirm-dialog__header{padding:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.confirm-dialog__title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-secondary);margin:0}.confirm-dialog__body{padding:var(--spacing-lg);color:var(--color-secondary);line-height:1.6}.confirm-dialog__footer{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding:var(--spacing-lg);border-top:1px solid var(--border-color);background:var(--surface-secondary)}.confirm-dialog__cancel,.confirm-dialog__confirm{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.confirm-dialog__cancel{background:var(--surface-tertiary);color:var(--color-secondary);border:1px solid var(--border-color)}.confirm-dialog__cancel:hover{background:var(--surface-secondary)}.confirm-dialog__confirm{background:var(--color-primary);color:#fff;border:none}.confirm-dialog__confirm:hover{background:var(--color-primary-dark)}.task-card{background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);transition:box-shadow .2s ease}.task-card:hover{box-shadow:0 2px 8px #0000001a}.task-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-xs)}.task-title{font-size:var(--font-size-md);font-weight:600;margin:0;color:var(--color-primary)}.task-priority{padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.task-priority--low{background:var(--color-success-light);color:var(--color-success)}.task-priority--medium{background:var(--color-info-light);color:var(--color-info)}.task-priority--high{background:var(--color-warning-light);color:var(--color-warning)}.task-priority--urgent{background:var(--color-error-light);color:var(--color-error)}.task-status{padding:2px 6px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;text-transform:capitalize}.task-status--pending{background:var(--color-info-light);color:var(--color-info)}.task-status--in_progress{background:var(--color-warning-light);color:var(--color-warning)}.task-status--completed{background:var(--color-success-light);color:var(--color-success)}.task-status--cancelled{background:var(--color-error-light);color:var(--color-error)}.task-meta{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-secondary)}.task-type{text-transform:capitalize;font-weight:500}.task-description{font-size:var(--font-size-sm);color:var(--color-secondary);margin-bottom:var(--spacing-sm);line-height:1.5}.task-dates{display:flex;gap:var(--spacing-sm);align-items:center;font-size:var(--font-size-xs);margin-bottom:var(--spacing-sm);flex-wrap:wrap}.task-due{display:flex;gap:var(--spacing-xs);align-items:center}.date-label{font-weight:600;color:var(--color-primary)}.task-overdue{color:var(--color-error);font-weight:600}.task-due-soon{color:var(--color-warning);font-weight:600}.task-actions{display:flex;gap:var(--spacing-xs);margin-top:var(--spacing-sm)}.task-actions .btn{font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-sm)}.task-card-body,.content-section{margin-bottom:var(--spacing-sm)}.task-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-sm);border-top:1px solid var(--border-color);font-size:var(--font-size-xs);color:var(--color-secondary)}.task-list-empty{text-align:center;padding:var(--spacing-xl);color:var(--color-secondary);font-size:var(--font-size-sm)}.task-list-loading{display:flex;justify-content:center;align-items:center;padding:var(--spacing-xl);color:var(--color-secondary)}.task-modal-wrapper{display:contents}.task-modal{position:fixed;inset:0;z-index:calc(var(--z-modal, 1050) + 100)}.task-modal .modal-layout{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.task-modal .modal-overlay{position:absolute;inset:0;background:var(--overlay-background);z-index:1}.task-modal .main-container{position:relative;z-index:2;max-width:800px;width:90%;background:var(--surface-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-height:90vh;overflow-y:auto}.task-modal .modal-content{position:relative;z-index:2;max-width:800px;width:90%;background:var(--surface-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-height:90vh;display:flex;flex-direction:column}.task-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color);flex-shrink:0}.task-modal .modal-header h2{margin:0;font-size:var(--font-size-xl);color:var(--color-secondary)}.task-modal .modal-close-btn{background:none;border:none;font-size:var(--font-size-2xl);color:var(--color-secondary);cursor:pointer;padding:var(--spacing-xs);line-height:1;transition:color var(--transition-fast)}.task-modal .modal-close-btn:hover{color:var(--color-error)}.task-modal .modal-close-icon{display:block}.task-modal .modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-lg);border-top:1px solid var(--border-color);flex-shrink:0;background:var(--surface-primary)}.task-form{padding:var(--spacing-lg)}.task-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.task-contact{font-size:var(--font-size-xs);color:var(--color-secondary);font-style:italic}.view-task-body{padding:var(--spacing-md);max-height:70vh;overflow-y:auto}.task-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xs) var(--spacing-sm)}.task-detail-group{display:flex;flex-direction:column}.task-detail-group--full{grid-column:1 / -1}.task-detail-label{font-size:10px;font-weight:600;color:var(--color-secondary);margin-bottom:2px;text-transform:uppercase;letter-spacing:.5px}.task-detail-value{margin:0;font-size:var(--font-size-sm);color:var(--color-primary);line-height:1.3;word-break:break-word}.task-detail-value--title{font-weight:600;font-size:var(--font-size-base)}.task-detail-value--small{font-size:11px}.task-priority--compact{font-size:10px;padding:2px 6px}.view-task-actions{display:flex;gap:var(--spacing-sm);justify-content:space-between}.view-task-actions .btn{flex:1}.btn-success{background:var(--color-success);color:#fff;border:1px solid var(--color-success)}.btn-success:hover:not(:disabled){background:var(--color-success-dark, #059669);border-color:var(--color-success-dark, #059669)}.btn-danger{background:var(--color-error);color:#fff;border:1px solid var(--color-error)}.btn-danger:hover:not(:disabled){background:var(--color-error-dark, #dc2626);border-color:var(--color-error-dark, #dc2626)}.btn:disabled{opacity:.6;cursor:not-allowed}.contact-modal-wrapper{display:contents}.contact-modal{position:fixed;inset:0;z-index:calc(var(--z-modal, 1050) + 50)}.contact-modal .modal-layout{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.contact-modal .modal-overlay{position:absolute;inset:0;background:var(--overlay-background);z-index:1}.contact-modal .modal-content{position:relative;z-index:2;max-width:800px;width:90%;background:var(--surface-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-height:90vh;display:flex;flex-direction:column}.contact-modal .modal-content--wide{max-width:1200px}.contact-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color);flex-shrink:0}.contact-modal .modal-header h2{margin:0;font-size:var(--font-size-xl);color:var(--color-secondary)}.contact-modal .modal-close-btn{background:none;border:none;font-size:var(--font-size-2xl);color:var(--color-secondary);cursor:pointer;padding:var(--spacing-xs);line-height:1;transition:color var(--transition-fast)}.contact-modal .modal-close-btn:hover{color:var(--color-error)}.contact-modal .modal-close-icon{display:block}.contact-modal .modal-body{flex:1;overflow-y:auto;padding:0}.contact-modal .modal-body--two-column{display:grid;grid-template-columns:1fr 400px;gap:var(--spacing-lg)}.contact-modal .main-container{padding:var(--spacing-md);overflow-y:auto;margin-left:0;min-height:auto}.contact-modal .modal-main-content{padding:var(--spacing-lg);overflow-y:auto}.contact-modal .tasks-sidebar{background:var(--surface-primary);border-left:1px solid var(--border-color);padding:var(--spacing-lg);display:flex;flex-direction:column;overflow:hidden}.contact-modal .tasks-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.contact-modal .tasks-header h2{margin:0;font-size:var(--font-size-lg);color:var(--color-primary)}.contact-modal .tasks-count{color:var(--color-secondary);font-size:var(--font-size-sm)}.contact-modal .tasks-list{flex:1;overflow-y:auto}.contact-modal .task-item{padding:var(--spacing-md);background:var(--surface-secondary);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);transition:transform var(--transition-fast);cursor:pointer}.contact-modal .task-item:hover{transform:translate(4px);box-shadow:var(--shadow-sm)}.contact-modal .task-item--completed{background:var(--color-success-light);border-left:3px solid var(--color-success)}.contact-modal .task-item--cancelled{background:var(--color-error-light);border-left:3px solid var(--color-error)}.contact-modal .task-item--cancelled .task-title,.contact-modal .task-item--cancelled .task-due,.contact-modal .task-item--cancelled .task-description,.contact-modal .task-item--cancelled .task-contact{text-decoration:line-through;opacity:.7}.contact-modal .task-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-xs)}.contact-modal .task-title{margin:0;font-size:var(--font-size-base);font-weight:500;color:var(--color-primary)}.contact-modal .task-due{font-size:var(--font-size-sm);color:var(--color-secondary)}.contact-modal .task-description{margin:0;font-size:var(--font-size-sm);color:var(--color-secondary);line-height:1.4}.contact-modal .tasks-empty{text-align:center;padding:var(--spacing-xl)}.contact-modal .tasks-empty p{color:var(--color-secondary);margin-bottom:var(--spacing-md)}.contact-modal .tasks-footer{padding-top:var(--spacing-md);margin-top:var(--spacing-md);border-top:1px solid var(--border-color);flex-shrink:0}.contact-modal .modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-lg);border-top:1px solid var(--border-color);flex-shrink:0;background:var(--surface-primary)}.contact-modal .modal-footer--fixed{position:sticky;bottom:0}.contact-modal .section-title{font-size:var(--font-size-lg);font-weight:600;margin:0 0 var(--spacing-sm) 0;color:var(--color-primary)}.contact-modal .contact-form{display:flex;flex-direction:column;gap:var(--spacing-sm)}.contact-modal .form-section{background:var(--surface-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-sm)}.contact-modal .form-group{margin-bottom:0;gap:4px}.contact-modal .form-row,.contact-modal fieldset.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-sm);border:none;padding:0}.contact-modal .form-row:last-child,.contact-modal fieldset.form-row:last-child{margin-bottom:0}.contact-modal .form-label{font-weight:500;font-size:var(--font-size-sm);color:var(--color-primary);letter-spacing:.01em}.contact-modal .form-input::placeholder,.contact-modal .form-select::placeholder,.contact-modal .form-textarea::placeholder{color:var(--color-secondary);opacity:.6}.contact-modal .form-input,.contact-modal .form-select{height:42px;padding:var(--spacing-sm) var(--spacing-md);border:1.5px solid var(--border-color);transition:all var(--transition-fast)}.contact-modal .form-textarea{padding:var(--spacing-sm) var(--spacing-md);border:1.5px solid var(--border-color);transition:all var(--transition-fast)}.contact-modal .form-input:focus,.contact-modal .form-select:focus,.contact-modal .form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--overlay-primary);background:var(--surface-primary)}@media (max-width: var(--breakpoint-lg)){.contact-modal .modal-body--two-column{grid-template-columns:1fr}.contact-modal .modal-sidebar{border-left:none;border-top:1px solid var(--border-color)}}.opportunity-modal-wrapper{display:contents}.opportunity-modal{position:fixed;inset:0;z-index:calc(var(--z-modal, 1050) + 50)}.opportunity-modal .modal-layout{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.opportunity-modal .modal-overlay{position:absolute;inset:0;background:var(--overlay-background);z-index:1}.opportunity-modal .modal-content{position:relative;z-index:2;max-width:800px;width:90%;background:var(--surface-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-height:90vh;display:flex;flex-direction:column}.opportunity-modal .modal-content--wide{max-width:1200px}.opportunity-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color);flex-shrink:0}.opportunity-modal .modal-header h2{margin:0;font-size:var(--font-size-xl);color:var(--color-secondary)}.opportunity-modal .modal-close-btn{background:none;border:none;font-size:var(--font-size-2xl);color:var(--color-secondary);cursor:pointer;padding:var(--spacing-xs);line-height:1;transition:color var(--transition-fast)}.opportunity-modal .modal-close-btn:hover{color:var(--color-error)}.opportunity-modal .modal-close-icon{display:block}.opportunity-modal .modal-body{flex:1;overflow-y:auto;padding:0}.opportunity-modal .modal-body--two-column{display:grid;grid-template-columns:1fr 400px;gap:var(--spacing-lg)}.opportunity-modal .main-container{padding:var(--spacing-md);overflow-y:auto;margin-left:0;min-height:auto}.opportunity-modal .modal-main-content{padding:var(--spacing-lg);overflow-y:auto}.opportunity-modal .tasks-sidebar{background:var(--surface-primary);border-left:1px solid var(--border-color);padding:var(--spacing-lg);display:flex;flex-direction:column;overflow:hidden}.opportunity-modal .tasks-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.opportunity-modal .tasks-header h2{margin:0;font-size:var(--font-size-lg);color:var(--color-primary)}.opportunity-modal .tasks-count{color:var(--color-secondary);font-size:var(--font-size-sm)}.opportunity-modal .tasks-list{flex:1;overflow-y:auto}.opportunity-modal .tasks-empty{text-align:center;padding:var(--spacing-xl)}.opportunity-modal .tasks-empty p{color:var(--color-secondary);margin-bottom:var(--spacing-md)}.opportunity-modal .tasks-footer{padding-top:var(--spacing-md);margin-top:var(--spacing-md);border-top:1px solid var(--border-color);flex-shrink:0}.opportunity-modal .modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-lg);border-top:1px solid var(--border-color);flex-shrink:0;background:var(--surface-primary)}.opportunity-modal .modal-footer--fixed{position:sticky;bottom:0}.opportunity-modal .section-title{font-size:var(--font-size-lg);font-weight:600;margin:0 0 var(--spacing-sm) 0;color:var(--color-primary)}.opportunity-modal .opportunity-form{display:flex;flex-direction:column;gap:var(--spacing-sm)}.opportunity-modal .form-section{background:var(--surface-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-sm)}.opportunity-modal .form-group{margin-bottom:0;gap:4px}.opportunity-modal .form-row,.opportunity-modal fieldset.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-sm);border:none;padding:0}.opportunity-modal .form-row--three,.opportunity-modal fieldset.form-row--three{grid-template-columns:1fr 1fr 1fr}.opportunity-modal .form-row:last-child,.opportunity-modal fieldset.form-row:last-child{margin-bottom:0}.opportunity-modal .form-label{font-weight:500;font-size:var(--font-size-sm);color:var(--color-primary);letter-spacing:.01em}.opportunity-modal .form-input::placeholder,.opportunity-modal .form-select::placeholder,.opportunity-modal .form-textarea::placeholder{color:var(--color-secondary);opacity:.6}.opportunity-modal .form-input,.opportunity-modal .form-select{height:42px;padding:var(--spacing-sm) var(--spacing-md);border:1.5px solid var(--border-color);transition:all var(--transition-fast)}.opportunity-modal .form-textarea{padding:var(--spacing-sm) var(--spacing-md);border:1.5px solid var(--border-color);transition:all var(--transition-fast)}.opportunity-modal .form-input:focus,.opportunity-modal .form-select:focus,.opportunity-modal .form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--overlay-primary);background:var(--surface-primary)}.opportunity-modal .address-section{display:flex;flex-direction:column;gap:var(--spacing-sm)}.priority-stars{display:flex;gap:var(--spacing-xs);align-items:center;padding:var(--spacing-xs) 0}.priority-star{background:none;border:none;padding:0;cursor:pointer;color:var(--border-color);transition:color var(--transition-fast),transform var(--transition-fast);display:flex;align-items:center;justify-content:center}.priority-star:hover{color:var(--color-warning);transform:scale(1.1)}.priority-star--active{color:var(--color-warning)}.priority-star svg{width:24px;height:24px;pointer-events:none}.opportunity-modal .task-item{padding:var(--spacing-md);background:var(--surface-secondary);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);transition:transform var(--transition-fast);cursor:pointer}.opportunity-modal .task-item:hover{transform:translate(4px);box-shadow:var(--shadow-sm)}.opportunity-modal .task-item--completed{background:var(--color-success-light);border-left:3px solid var(--color-success)}.opportunity-modal .task-item--cancelled{background:var(--color-error-light);border-left:3px solid var(--color-error)}.opportunity-modal .task-item--cancelled .task-title,.opportunity-modal .task-item--cancelled .task-due,.opportunity-modal .task-item--cancelled .task-description,.opportunity-modal .task-item--cancelled .task-contact{text-decoration:line-through;opacity:.7}.opportunity-modal .task-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-xs)}.opportunity-modal .task-title{margin:0;font-size:var(--font-size-base);font-weight:500;color:var(--color-primary)}.opportunity-modal .task-due{font-size:var(--font-size-sm);color:var(--color-secondary)}.opportunity-modal .task-description{margin:0;font-size:var(--font-size-sm);color:var(--color-secondary);line-height:1.4}.opportunity-modal .mls-linked-container{margin-bottom:var(--spacing-md)}.opportunity-modal .mls-linked-display{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);background:var(--surface-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);gap:var(--spacing-md)}.opportunity-modal .mls-linked-number{font-weight:600;color:var(--color-primary);font-size:var(--font-size-base)}.opportunity-modal .mls-linked-display .btn-sm{white-space:nowrap}.opportunity-modal .mls-search-container{position:relative;margin-bottom:var(--spacing-md)}.opportunity-modal .mls-search-wrapper{position:relative;display:flex;align-items:center}.opportunity-modal .mls-search-wrapper .form-input{flex:1;padding-right:var(--spacing-xl)}.opportunity-modal .mls-search-loading{position:absolute;right:var(--spacing-md);pointer-events:none;font-size:var(--font-size-sm);color:var(--color-primary);font-weight:500;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.opportunity-modal .mls-search-results{position:absolute;top:calc(100% + var(--spacing-xs));left:0;right:0;background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);max-height:400px;overflow-y:auto;z-index:10}.opportunity-modal .mls-result-item{width:100%;padding:var(--spacing-md);background:none;border:none;border-bottom:1px solid var(--border-color);cursor:pointer;text-align:left;transition:background-color var(--transition-fast)}.opportunity-modal .mls-result-item:last-child{border-bottom:none}.opportunity-modal .mls-result-item:hover{background:var(--surface-secondary)}.opportunity-modal .mls-result-content{display:flex;flex-direction:column;gap:var(--spacing-xs)}.opportunity-modal .mls-result-address{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm)}.opportunity-modal .mls-result-street{font-weight:500;color:var(--color-primary);font-size:var(--font-size-base)}.opportunity-modal .mls-result-number{font-size:var(--font-size-sm);color:var(--color-secondary);background:var(--surface-secondary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm)}.opportunity-modal .mls-result-details{display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-sm);color:var(--color-secondary)}.opportunity-modal .mls-result-price{font-weight:600;color:var(--color-primary)}.opportunity-modal .mls-no-results{padding:var(--spacing-md);text-align:center;color:var(--color-secondary);font-size:var(--font-size-sm);background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);position:absolute;top:calc(100% + var(--spacing-xs));left:0;right:0;z-index:10}@media (max-width: var(--breakpoint-lg)){.opportunity-modal .modal-body--two-column{grid-template-columns:1fr}.opportunity-modal .modal-sidebar{border-left:none;border-top:1px solid var(--border-color)}}.property-details-overlay.modal-overlay{position:fixed;inset:0;background:var(--overlay-background);z-index:calc(var(--z-modal, 1050) + 200);display:flex;align-items:center;justify-content:center;overflow-y:auto}.property-modal{background:var(--surface-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);max-width:1200px;width:90%;max-height:90vh;display:flex;flex-direction:column;position:relative;margin:auto}.property-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg) var(--spacing-xl);border-bottom:1px solid var(--border-color);background:var(--surface-primary);border-radius:var(--radius-lg) var(--radius-lg) 0 0;gap:var(--spacing-md);flex-shrink:0}.property-modal-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-secondary);margin:0}.modal-header-actions{display:flex;gap:var(--spacing-sm);align-items:center}.modal-action-btn,.property-modal-close{background:none;border:none;color:var(--color-secondary);cursor:pointer;padding:var(--spacing-sm);border-radius:var(--radius-md);transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.property-modal-close{font-size:var(--font-size-2xl);margin:calc(-1 * var(--spacing-xs))}.modal-action-btn:hover,.property-modal-close:hover{background:var(--surface-tertiary);color:var(--color-primary)}.modal-loading,.modal-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);min-height:400px}.modal-loading .loading-spinner{width:50px;height:50px;border:4px solid var(--border-color);border-top-color:var(--color-primary);border-radius:var(--radius-full);animation:spin 1s linear infinite}.property-modal-body{overflow-y:auto;flex:1}.property-carousel{position:relative;width:100%;height:400px;overflow:hidden;background:var(--color-secondary)}.carousel-container,.carousel-image-container{position:relative;width:100%;height:100%}.carousel-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.carousel-fallback,.image-fallback{display:none;flex-direction:column;align-items:center;justify-content:center;background:var(--surface-secondary);color:var(--color-secondary);height:100%;width:100%}.carousel-fallback{height:300px}.fallback-text{font-size:48px;margin-bottom:var(--spacing-sm)}.carousel-controls{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);display:flex;justify-content:space-between;padding:0 var(--spacing-md);pointer-events:none}.carousel-btn{background:#000000b3;color:#fff;border:none;width:var(--size-avatar-lg);height:var(--size-avatar-lg);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);pointer-events:auto;font-size:var(--font-size-2xl);display:flex;align-items:center;justify-content:center;line-height:1}.carousel-btn:hover{background:#000000e6;transform:scale(1.1)}.carousel-btn:disabled{opacity:.3;cursor:not-allowed;transform:none}.carousel-btn:disabled:hover{background:#000000b3;transform:none}.carousel-btn--prev{margin-right:auto}.carousel-btn--next{margin-left:auto}.carousel-indicators{position:absolute;bottom:var(--spacing-md);left:50%;transform:translate(-50%);display:flex;gap:var(--spacing-xs)}.carousel-indicator{width:var(--spacing-md);height:var(--spacing-md);border-radius:var(--radius-full);background:#ffffff80;border:none;cursor:pointer;transition:all var(--transition-fast)}.carousel-indicator:hover,.indicator-active{background:#fff;transform:scale(1.2)}.property-modal-content,.content-section{padding:var(--spacing-xl)}.property-modal-content h3{font-size:var(--font-size-lg);font-weight:600;color:var(--color-primary);margin:var(--spacing-lg) 0 var(--spacing-md) 0;padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--border-color)}.property-modal-content h4{font-size:var(--font-size-base);font-weight:600;color:var(--color-primary);margin:var(--spacing-md) 0 var(--spacing-sm) 0}.property-modal-content h5{font-size:var(--font-size-sm);font-weight:600;color:var(--color-primary);margin:var(--spacing-sm) 0 var(--spacing-xs) 0}.property-details-grid{display:flex;flex-direction:column;gap:var(--spacing-lg)}.property-pricing{margin-bottom:var(--spacing-md)}.price-status-row{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.property-price{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-primary)}.property-status-badge{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:600;background:var(--surface-tertiary);color:var(--color-secondary)}.property-address{font-size:var(--font-size-lg);color:var(--color-secondary);margin:0}.property-specs-detailed,.property-features,.property-financial,.property-agents,.property-market,.property-schools,.property-rooms,.property-construction,.property-utilities,.property-additional,.property-legal,.property-marketing,.property-description{margin-bottom:var(--spacing-lg)}.specs-grid,.financial-grid,.agents-grid,.construction-grid,.utilities-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.spec-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.spec-label{font-size:var(--font-size-sm);color:var(--color-secondary);font-weight:500}.spec-value{font-size:var(--font-size-base);color:var(--color-primary);font-weight:600}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-md)}.feature-group{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--surface-secondary);border-radius:var(--radius-md)}.feature-icon{font-size:var(--font-size-xl)}.feature-label{font-size:var(--font-size-sm);color:var(--color-primary)}.feature-list{margin-top:var(--spacing-md)}.features-list{list-style:none;padding:0;margin:var(--spacing-sm) 0 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-xs)}.features-list li{padding:var(--spacing-xs) var(--spacing-sm);background:var(--surface-secondary);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-primary)}.financial-section{margin-bottom:var(--spacing-md)}.agent-card{padding:var(--spacing-md);background:var(--surface-secondary);border-radius:var(--radius-md)}.agent-details{margin-top:var(--spacing-sm)}.agent-name{font-weight:600;color:var(--color-primary);margin-bottom:var(--spacing-xs)}.agent-contact,.agent-brokerage{font-size:var(--font-size-sm);color:var(--color-secondary);margin-bottom:var(--spacing-xs)}.room-section{margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:var(--surface-secondary);border-radius:var(--radius-md)}.energy-section,.legal-text,.marketing-text{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--surface-secondary);border-radius:var(--radius-md)}.legal-text p,.marketing-text p{font-size:var(--font-size-sm);color:var(--color-secondary);line-height:1.6;margin:0}.property-description p{font-size:var(--font-size-base);color:var(--color-secondary);line-height:1.6;margin:0}.link-primary{color:var(--color-primary);text-decoration:underline;transition:color var(--transition-fast)}.link-primary:hover{color:var(--color-primary-dark)}@media (max-width: var(--breakpoint-lg)){.property-modal{max-width:100%;margin:var(--spacing-md);max-height:calc(100vh - calc(var(--spacing-md) * 2))}.modal-overlay{padding:var(--spacing-md)}.property-carousel{height:300px}.carousel-btn{width:var(--size-avatar-md);height:var(--size-avatar-md);font-size:var(--font-size-lg)}.specs-grid{grid-template-columns:1fr}}@media (max-width: var(--breakpoint-md)){.property-modal-header{padding:var(--spacing-md) var(--spacing-lg)}.property-modal-content{padding:var(--spacing-lg)}.property-carousel{height:250px}.price-status-row{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.property-price{font-size:var(--font-size-xl)}.carousel-controls{padding:0 var(--spacing-sm)}}@media (max-width: var(--breakpoint-sm)){.modal-overlay{align-items:flex-start;padding-top:var(--spacing-lg)}.property-modal{margin:0;border-radius:var(--radius-md)}.property-modal-header{padding:var(--spacing-sm) var(--spacing-md)}.property-modal-content{padding:var(--spacing-md)}.property-carousel{height:200px}.property-modal-title{font-size:var(--font-size-lg)}.carousel-btn{width:var(--size-avatar-sm);height:var(--size-avatar-sm);font-size:var(--font-size-base)}.features-grid{grid-template-columns:1fr}}.content-header{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.content-controls{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--spacing-lg)}.search-container{flex:1;max-width:var(--size-content-md)}.search-label{display:block;margin-bottom:var(--spacing-xs);font-weight:500;color:var(--color-secondary);font-size:var(--font-size-sm)}.search-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-base);transition:border-color var(--transition-fast)}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--overlay-primary)}.search-help{display:block;margin-top:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--color-secondary);opacity:.7}.list-stats{font-size:var(--font-size-sm);color:var(--color-secondary);font-weight:500}.loading-state,.error-state,.empty-state,.no-results-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);text-align:center;background:var(--surface-primary);border-radius:var(--radius-lg);border:1px solid var(--border-color)}.loading-state{min-height:var(--size-content-sm)}.loading-spinner{width:var(--size-avatar-sm);height:var(--size-avatar-sm);border:3px solid var(--border-color);border-top:3px solid var(--color-primary);border-radius:var(--radius-full);animation:spin 1s linear infinite;margin-bottom:var(--spacing-md)}.error-state h3,.empty-state h3,.no-results-state h3{margin:0 0 var(--spacing-sm) 0;color:var(--color-secondary);font-size:var(--font-size-lg)}.empty-state-description{margin-bottom:var(--spacing-lg);color:var(--color-secondary);opacity:.7}.contacts-list-container{background:var(--surface-primary);border-radius:var(--radius-lg);border:1px solid var(--border-color);overflow:hidden}.contacts-list{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.contacts-list thead{background:var(--surface-tertiary)}.list-header{padding:var(--spacing-md) var(--spacing-lg);text-align:left;font-weight:600;color:var(--color-secondary);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color)}.list-header--actions{text-align:center;width:var(--size-badge-width)}.contact-row{transition:background-color var(--transition-fast)}.contact-row:not(:last-child){border-bottom:1px solid var(--border-color)}.contact-name,.contact-email,.contact-phone{padding:var(--spacing-md) var(--spacing-lg);vertical-align:middle;cursor:pointer}.contact-actions{padding:var(--spacing-md) var(--spacing-lg);vertical-align:middle;text-align:center}.contact-full-name{font-weight:500;color:var(--color-secondary)}.contact-email-link{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}.contact-email-link:hover{color:var(--color-primary-dark);text-decoration:underline}.contact-phone-number{color:var(--color-secondary);font-family:var(--font-family-mono)}.action-buttons{display:flex;justify-content:center;gap:var(--spacing-xs)}.btn-action{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--surface-primary);color:var(--color-secondary);font-size:var(--font-size-xs);font-weight:500;text-decoration:none;cursor:pointer;transition:all var(--transition-fast)}.btn-action:hover{background:var(--surface-tertiary);border-color:var(--color-primary);color:var(--color-primary)}.btn-action--danger:hover{background:var(--color-error);border-color:var(--color-error);color:#fff}.action-icon{width:var(--size-icon-sm);height:var(--size-icon-sm);flex-shrink:0}.btn-icon{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-xs);border:none;background:transparent;color:var(--color-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.btn-icon:hover{background:var(--surface-tertiary);color:var(--color-primary)}.btn-icon svg{display:block}@media (max-width: var(--breakpoint-md)){.content-controls{flex-direction:column;align-items:stretch}.search-container{max-width:none}.contacts-list-container{overflow-x:auto}.contacts-list{min-width:var(--size-content-lg)}.list-header,.contact-name,.contact-email,.contact-phone,.contact-actions{padding:var(--spacing-sm) var(--spacing-md)}.action-buttons{flex-direction:column;gap:var(--spacing-xs)}.btn-action{font-size:var(--font-size-xs);padding:var(--spacing-xs)}}@media (max-width: var(--breakpoint-sm)){.content-header{gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.loading-state,.error-state,.empty-state,.no-results-state{padding:var(--spacing-lg)}.contacts-list{min-width:var(--size-container-sm)}}.ai-chat-widget{position:fixed;bottom:var(--spacing-lg);right:var(--spacing-lg);z-index:9999;font-family:var(--font-family-base)}.ai-chat-widget--collapsed .ai-chat-button{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;border:none;box-shadow:0 4px 12px #00000026,0 8px 24px #0000001a;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;display:flex;align-items:center;justify-content:center;position:relative}.ai-chat-widget--collapsed .ai-chat-button:hover{transform:scale(1.05);box-shadow:0 6px 16px #0003,0 10px 30px #00000026}.ai-chat-widget--collapsed .ai-chat-button:active{transform:scale(.95)}.ai-chat-button-icon{width:24px;height:24px}.ai-chat-unread-badge{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;background:var(--color-error);color:#fff;border-radius:10px;font-size:11px;font-weight:600;display:flex;align-items:center;justify-content:center;padding:0 6px;border:2px solid white}.ai-chat-widget--chat .ai-chat-container{display:flex;flex-direction:column;width:400px;height:600px;background:#fff;border-radius:var(--border-radius-lg);box-shadow:0 8px 32px #0000001f,0 16px 64px #00000014;overflow:hidden;animation:slideUp .3s ease-out}.ai-chat-widget--maximized .ai-chat-container{display:flex;flex-direction:column;position:fixed;top:var(--spacing-md);left:var(--spacing-md);right:var(--spacing-md);bottom:var(--spacing-md);width:auto;height:auto;background:#fff;border-radius:var(--border-radius-lg);box-shadow:0 12px 48px #00000026;z-index:10000;animation:fadeIn .2s ease-out}.ai-chat-widget--chat .ai-chat-button,.ai-chat-widget--maximized .ai-chat-button,.ai-chat-widget--collapsed .ai-chat-container{display:none}.ai-chat-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}.ai-chat-header-title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-lg);font-weight:600}.ai-chat-header-actions{display:flex;gap:var(--spacing-xs)}.ai-chat-header-button{background:transparent;border:none;color:#fff;cursor:pointer;padding:var(--spacing-xs);border-radius:var(--border-radius-sm);display:flex;align-items:center;justify-content:center;transition:background-color .2s ease}.ai-chat-header-button:hover{background:#ffffff26}.ai-chat-header-button:active{background:#ffffff40}.ai-chat-context-banner{background:var(--color-info-light);border-bottom:1px solid var(--color-info);padding:var(--spacing-sm) var(--spacing-md);display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-sm);color:var(--color-info-dark)}.ai-chat-context-text{display:flex;align-items:center;gap:var(--spacing-xs)}.ai-chat-context-clear{background:transparent;border:none;color:var(--color-info-dark);cursor:pointer;padding:var(--spacing-xxs) var(--spacing-xs);border-radius:var(--border-radius-sm);font-size:var(--font-size-xs);text-decoration:underline}.ai-chat-context-clear:hover{color:var(--color-error)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.ai-chat-widget--chat .ai-chat-container{position:fixed;inset:0;width:100%;height:100%;border-radius:0}.ai-chat-widget{bottom:var(--spacing-md);right:var(--spacing-md)}}.ai-chat-messages{flex:1;overflow-y:auto;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md);background:var(--color-background)}.ai-chat-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--color-text-secondary);text-align:center;padding:var(--spacing-xl)}.ai-chat-empty-icon{width:64px;height:64px;margin-bottom:var(--spacing-md);opacity:.3}.ai-chat-empty-title{font-size:var(--font-size-lg);font-weight:600;margin-bottom:var(--spacing-sm)}.ai-chat-empty-text{font-size:var(--font-size-sm);max-width:300px}.ai-chat-message{display:flex;gap:var(--spacing-sm);animation:messageSlideIn .2s ease-out}.ai-chat-message--user{flex-direction:row-reverse}.ai-chat-message-avatar{width:32px;height:32px;border-radius:50%;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:600;flex-shrink:0}.ai-chat-message--ai .ai-chat-message-avatar{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%)}.ai-chat-message-content{max-width:75%;display:flex;flex-direction:column;gap:var(--spacing-xxs)}.ai-chat-message-bubble{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-md);font-size:var(--font-size-base);line-height:1.5;white-space:pre-wrap;word-wrap:break-word}.ai-chat-message--user .ai-chat-message-bubble{background:var(--color-primary);color:#fff;border-bottom-right-radius:var(--border-radius-xs)}.ai-chat-message--ai .ai-chat-message-bubble{background:#fff;color:var(--color-text);border:1px solid var(--color-border);border-bottom-left-radius:var(--border-radius-xs)}.ai-chat-message-meta{font-size:var(--font-size-xs);color:var(--color-text-secondary);padding:0 var(--spacing-sm)}.ai-chat-message--user .ai-chat-message-meta{text-align:right}.ai-chat-typing{display:flex;align-items:center;gap:var(--spacing-sm)}.ai-chat-typing-avatar{display:flex;align-items:center;justify-content:center;gap:3px}.ai-chat-typing-avatar .ai-chat-typing-dot{width:6px;height:6px;border-radius:50%;background:#fff;animation:typingDot 1.4s infinite}.ai-chat-typing-avatar .ai-chat-typing-dot:nth-child(2){animation-delay:.2s}.ai-chat-typing-avatar .ai-chat-typing-dot:nth-child(3){animation-delay:.4s}.ai-chat-typing-bubble{padding:var(--spacing-sm) var(--spacing-md);background:#fff;border:1px solid var(--color-border);border-radius:var(--border-radius-md);border-bottom-left-radius:var(--border-radius-xs)}.ai-chat-typing-text{color:var(--color-text-secondary);font-size:var(--font-size-sm);font-style:italic}.ai-chat-typing-dots{display:flex;gap:4px;padding:var(--spacing-sm) var(--spacing-md);background:#fff;border:1px solid var(--color-border);border-radius:var(--border-radius-md)}.ai-chat-typing-dots .ai-chat-typing-dot{width:8px;height:8px;border-radius:50%;background:var(--color-text-secondary);animation:typingDot 1.4s infinite}.ai-chat-typing-dots .ai-chat-typing-dot:nth-child(2){animation-delay:.2s}.ai-chat-typing-dots .ai-chat-typing-dot:nth-child(3){animation-delay:.4s}@keyframes typingDot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.ai-chat-scroll-button{position:absolute;bottom:var(--spacing-lg);right:var(--spacing-md);width:36px;height:36px;border-radius:50%;background:#fff;border:1px solid var(--color-border);box-shadow:0 2px 8px #0000001a;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease;z-index:10}.ai-chat-scroll-button:hover{transform:scale(1.05)}.ai-chat-input-area{padding:var(--spacing-md);background:#fff;border-top:1px solid var(--color-border)}.ai-chat-input-wrapper{display:flex;gap:var(--spacing-sm);align-items:flex-end}.ai-chat-input{flex:1;min-height:44px;max-height:120px;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--border-radius-md);font-size:var(--font-size-base);font-family:var(--font-family-base);resize:none;transition:border-color .2s ease}.ai-chat-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.ai-chat-input::placeholder{color:var(--color-text-secondary)}.ai-chat-send-button{min-width:44px;height:44px;border-radius:var(--border-radius-md);background:var(--color-primary);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,transform .1s ease}.ai-chat-send-button:hover:not(:disabled){background:var(--color-primary-dark)}.ai-chat-send-button:active:not(:disabled){transform:scale(.95)}.ai-chat-send-button:disabled{background:var(--color-border);cursor:not-allowed;opacity:.6}.ai-chat-error{background:var(--color-error-light);border:1px solid var(--color-error);border-radius:var(--border-radius-md);padding:var(--spacing-sm) var(--spacing-md);margin:var(--spacing-sm) var(--spacing-md);color:var(--color-error-dark);font-size:var(--font-size-sm);display:flex;align-items:center;gap:var(--spacing-sm)}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ai-chat-spinner{width:20px;height:20px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .6s linear infinite}.listings-map{width:100%;height:var(--map-height);position:relative;border-radius:var(--radius-lg);overflow:hidden;background-color:var(--surface-secondary)}.listings-map__container{width:100%;height:100%}.listings-map__loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-color:#fffffff2;z-index:var(--z-dropdown)}.listings-map__error{padding:var(--spacing-lg);text-align:center;color:var(--color-error);background-color:var(--color-error-light);border-radius:var(--radius-md)}@media (max-width: 768px){.listings-map{height:var(--map-height-mobile)}}.custom-marker-label{background-color:#fff;border:2px solid #3b82f6;border-radius:6px;padding:6px 12px;font-size:14px;font-weight:700;color:#1e40af;box-shadow:0 2px 8px #00000026;white-space:nowrap;transition:all .2s ease;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.custom-marker-label:hover{transform:scale(1.1);box-shadow:0 4px 12px #3b82f666;z-index:10;background-color:#3b82f6;color:#fff;border-color:#2563eb}.custom-marker-label--selected{background-color:#3b82f6;color:#fff;border-color:#2563eb;box-shadow:0 4px 12px #3b82f699;transform:scale(1.1)}.marker-cluster{background-color:var(--color-primary);border-radius:var(--radius-full);color:var(--surface-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);text-align:center;box-shadow:var(--shadow-md)}.marker-cluster__count{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.property-popup{position:fixed;bottom:var(--spacing-lg);left:50%;transform:translate(-50%);z-index:var(--z-modal);max-width:var(--popup-max-width);width:90%}.property-popup--hidden{display:none}.property-popup__card{background-color:var(--surface-primary);border-radius:var(--popup-border-radius);box-shadow:var(--popup-shadow);overflow:hidden;animation:slideUp var(--transition-normal)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.property-popup__image{width:100%;height:200px;object-fit:cover;background-color:var(--surface-tertiary)}.property-popup__content{padding:var(--spacing-md)}.property-popup__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-sm)}.property-popup__price{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary)}.property-popup__close{background:none;border:none;cursor:pointer;font-size:var(--font-size-xl);color:var(--color-secondary);padding:0;line-height:1;transition:color var(--transition-fast)}.property-popup__close:hover{color:var(--color-error)}.property-popup__address{font-size:var(--font-size-base);color:var(--color-secondary);margin-bottom:var(--spacing-sm)}.property-popup__details{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-secondary)}.property-popup__actions{display:flex;gap:var(--spacing-sm)}.property-popup__button{flex:1;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);border:none}.property-popup__button--primary{background-color:var(--color-primary);color:var(--surface-primary)}.property-popup__button--primary:hover{background-color:var(--color-primary-dark)}.property-popup__button--secondary{background-color:var(--surface-primary);color:var(--color-secondary);border:1px solid var(--border-color)}.property-popup__button--secondary:hover{background-color:var(--surface-secondary)}@media (max-width: 768px){.property-popup{width:95%;bottom:var(--spacing-md)}.property-popup__image{height:150px}.property-popup__price{font-size:var(--font-size-xl)}}.social-login-divider{position:relative;text-align:center;margin:var(--spacing-lg) 0}.social-login-divider:before,.social-login-divider:after{content:"";position:absolute;top:50%;width:45%;height:1px;background-color:var(--border-color, #dee2e6)}.social-login-divider:before{left:0}.social-login-divider:after{right:0}.social-login-divider span{background-color:var(--background-color, #fff);padding:0 var(--spacing-md, 1rem);color:var(--text-muted, #6c757d);font-size:var(--font-size-sm, .875rem)}.btn-google-signin{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm, .5rem);width:100%;padding:var(--spacing-md, 1rem);border:1px solid var(--border-color, #dee2e6);border-radius:var(--border-radius, .375rem);background-color:var(--background-color, #fff);color:var(--text-color, #212529);text-decoration:none;font-weight:500;transition:all .2s ease}.btn-google-signin:hover{background-color:var(--background-hover, #f8f9fa);border-color:var(--primary-color, #0d6efd);text-decoration:none}.btn-google-signin:focus{outline:2px solid var(--primary-color, #0d6efd);outline-offset:2px}.btn-google-signin .google-logo{width:20px;height:20px}.social-login-notice{margin-top:var(--spacing-md, 1rem);padding:var(--spacing-sm, .5rem) var(--spacing-md, 1rem);background-color:var(--info-background, #cff4fc);border-left:3px solid var(--info-color, #0dcaf0);font-size:var(--font-size-sm, .875rem);color:var(--text-muted, #6c757d);line-height:1.5}.dashboard-content{padding:0}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-lg)}.dashboard-card{background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-fast)}.dashboard-card:hover{box-shadow:var(--shadow-md)}.dashboard-card h3{font-size:var(--font-size-base);font-weight:600;color:var(--color-secondary);margin:0 0 var(--spacing-md) 0;text-transform:uppercase;letter-spacing:.05em}.stat-number{font-size:var(--font-size-4xl);font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-sm)}.stat-label{color:var(--color-secondary);opacity:.7;font-size:var(--font-size-sm);margin:0}.activity-list{min-height:var(--size-content-sm);display:flex;align-items:center;justify-content:center}.no-activity{color:var(--color-secondary);opacity:.7;font-style:italic;margin:0}.page-header{margin-bottom:var(--spacing-md)}.page-header h1{font-size:var(--font-size-2xl);font-weight:600;color:var(--color-secondary);margin:0;line-height:1.2}.page-description{color:var(--color-secondary);font-size:var(--font-size-sm);opacity:.7;margin:0;line-height:1.4}.visually-hidden{position:absolute;width:var(--size-divider);height:var(--size-divider);padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.dashboard-sections{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);margin-top:var(--spacing-xl)}.dashboard-section{background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.dashboard-section h2{font-size:var(--font-size-lg);font-weight:600;color:var(--color-secondary);margin:0 0 var(--spacing-md) 0}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.section-header h2{margin:0}.task-toggle{display:flex;gap:var(--spacing-xs)}.toggle-btn{padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--border-color);background:var(--surface-primary);color:var(--color-secondary);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.toggle-btn:hover{background:var(--surface-tertiary)}.toggle-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.section-content{min-height:100px}.placeholder-text{color:var(--color-secondary);opacity:.7;font-style:italic;text-align:center;padding:var(--spacing-lg)}.task-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.task-item{padding:var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--surface-secondary);cursor:pointer;transition:all var(--transition-fast)}.task-item:hover{background:var(--surface-tertiary);border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.task-main{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs)}.task-title{font-weight:600;color:var(--color-secondary)}.task-type{font-size:var(--font-size-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--overlay-primary);color:var(--color-primary);border-radius:var(--radius-sm)}.task-details{display:flex;gap:var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-secondary);opacity:.8}@media (max-width: 768px){.dashboard-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.dashboard-card{padding:var(--spacing-md)}.stat-number{font-size:var(--font-size-3xl)}.dashboard-sections{grid-template-columns:1fr;gap:var(--spacing-md);margin-top:var(--spacing-lg)}.dashboard-section{padding:var(--spacing-md)}.section-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.task-toggle{width:100%}.toggle-btn{flex:1;justify-content:center}.task-main{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.task-details{flex-direction:column;gap:var(--spacing-xs)}}@media (max-width: var(--breakpoint-sm)){.stat-number{font-size:var(--font-size-2xl)}.dashboard-card h3{font-size:var(--font-size-sm)}.stat-label{font-size:var(--font-size-xs)}}.dashboard-metric{display:flex;flex-direction:column;gap:var(--spacing-sm)}.dashboard-metric__value{font-size:var(--font-size-3xl);font-weight:700;color:var(--color-primary)}.dashboard-metric__label{font-size:var(--font-size-sm);color:var(--color-secondary);text-transform:uppercase;letter-spacing:.05em}.dashboard-actions{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.recent-activity{background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.activity-item{padding:var(--spacing-md);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.activity-item:last-child{border-bottom:none}.activity-item__content{flex:1}.activity-item__time{font-size:var(--font-size-sm);color:var(--color-secondary)}.task-item.priority-urgent{border-left-color:#dc2626}.task-item.priority-urgent .task-type{background:#dc2626}.task-item.priority-high{border-left-color:#ea580c}.task-item.priority-high .task-type{background:#ea580c}.task-item.priority-medium{border-left-color:#2563eb}.task-item.priority-medium .task-type{background:#2563eb}.task-item.priority-low{border-left-color:#64748b}.task-item.priority-low .task-type{background:#64748b}.calendar-layout{display:grid;grid-template-columns:1fr 320px;gap:var(--spacing-lg);height:calc(100vh - 200px)}.calendar-main{overflow:hidden}.calendar-container{background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);height:100%;display:flex;flex-direction:column}.calendar-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.calendar-navigation{display:flex;gap:var(--spacing-md);align-items:center}.calendar-current-date{font-size:var(--font-size-lg);font-weight:600;color:var(--color-primary);margin:0 var(--spacing-lg);min-width:200px;text-align:center}.calendar-view-switcher{display:flex;gap:var(--spacing-sm)}.calendar-view-btn{padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--color-secondary);cursor:pointer;transition:all var(--transition-fast)}.calendar-view-btn:hover{background:var(--surface-secondary)}.calendar-view-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.calendar-grid{flex:1;display:flex;flex-direction:column}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:1px;background:var(--border-color);border:1px solid var(--border-color);border-bottom:2px solid var(--border-color)}.calendar-weekday{background:var(--surface-secondary);padding:var(--spacing-sm);text-align:center;font-weight:600;font-size:var(--font-size-sm);color:var(--color-secondary)}.calendar-days{flex:1;display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(6,1fr);gap:1px;background:var(--border-color);border:1px solid var(--border-color);border-top:none}.calendar-day{background:var(--surface-primary);padding:var(--spacing-sm);min-height:80px;position:relative;transition:background var(--transition-fast)}.calendar-day:hover{background:var(--surface-secondary)}.calendar-day--other-month{background:var(--surface-tertiary);opacity:.5}.calendar-day--today{background:var(--color-primary-light)}.calendar-day--selected{background:var(--color-primary);border:2px solid var(--color-primary-dark, #1e40af)}.calendar-day--clickable{cursor:pointer}.calendar-day--selected .calendar-day-number{color:#fff;font-weight:700}.calendar-day--selected .calendar-task-count{background:#fff3;color:#fff}.calendar-day--has-tasks{border-left:3px solid var(--color-primary)}.calendar-day--today .calendar-day-number{color:var(--color-primary);font-weight:700;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--surface-primary)}.calendar-task-count{position:absolute;top:var(--spacing-xs);right:var(--spacing-xs);background:var(--color-primary);color:#fff;font-size:var(--font-size-xs);font-weight:600;padding:2px 6px;border-radius:var(--radius-sm);min-width:16px;text-align:center;line-height:1.2}.calendar-day-number{font-size:var(--font-size-sm);font-weight:500;color:var(--color-secondary)}.calendar-day-events{margin-top:var(--spacing-xs)}.calendar-week-view,.calendar-day-view{flex:1;display:flex;align-items:center;justify-content:center;background:var(--surface-secondary);border-radius:var(--radius-md)}.placeholder-text{color:var(--color-secondary);font-size:var(--font-size-lg)}.tasks-sidebar{background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;overflow:hidden}.tasks-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.tasks-header h2{margin:0;font-size:var(--font-size-lg);color:var(--color-primary)}.tasks-count{color:var(--color-secondary);font-size:var(--font-size-sm)}.tasks-selected-date{font-size:var(--font-size-sm);color:var(--color-secondary);font-style:italic;margin-bottom:var(--spacing-md);padding:var(--spacing-sm);background:var(--surface-secondary);border-radius:var(--radius-md);text-align:center}.tasks-list{flex:1;overflow-y:auto}.task-item{padding:var(--spacing-md);background:var(--surface-secondary);border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);transition:transform var(--transition-fast);cursor:pointer}.task-item:hover{transform:translate(4px);box-shadow:var(--shadow-sm)}.task-item--completed{background:var(--color-success-light);border-left:3px solid var(--color-success)}.task-item--cancelled{background:var(--color-error-light);border-left:3px solid var(--color-error)}.task-item--cancelled .task-title,.task-item--cancelled .task-due,.task-item--cancelled .task-description,.task-item--cancelled .task-contact{text-decoration:line-through;opacity:.7}.task-item-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-xs)}.task-title{margin:0;font-size:var(--font-size-base);font-weight:500;color:var(--color-primary)}.task-due{font-size:var(--font-size-sm);color:var(--color-secondary)}.task-description{margin:0;font-size:var(--font-size-sm);color:var(--color-secondary);line-height:1.4}.tasks-empty{text-align:center;padding:var(--spacing-xl)}.tasks-empty p{color:var(--color-secondary);margin-bottom:var(--spacing-md)}.btn-icon{margin-right:var(--spacing-xs)}@media (max-width: 1200px){.calendar-layout{grid-template-columns:1fr;grid-template-rows:1fr auto;height:auto}.tasks-sidebar{max-height:400px}}@media (max-width: var(--breakpoint-md)){.calendar-container{padding:var(--spacing-md)}.calendar-controls{flex-direction:column;gap:var(--spacing-md);align-items:stretch}.calendar-navigation{width:100%;justify-content:space-between}.calendar-navigation .btn{min-width:44px;min-height:44px}.calendar-current-date{margin:0 var(--spacing-sm);min-width:auto;font-size:var(--font-size-base)}.calendar-view-switcher{width:100%;justify-content:stretch}.calendar-view-btn{flex:1;min-height:44px}.calendar-layout{gap:var(--spacing-md);height:auto}.calendar-day{min-height:60px;padding:var(--spacing-xs)}.calendar-day-number{font-size:var(--font-size-xs)}.calendar-weekday{font-size:var(--font-size-xs);padding:var(--spacing-xs)}.tasks-sidebar{padding:var(--spacing-md);max-height:350px}.task-item{padding:var(--spacing-sm)}.task-title{font-size:var(--font-size-sm)}.task-meta{flex-direction:column;gap:var(--spacing-xs)}}@media (max-width: var(--breakpoint-sm)){.calendar-current-date{font-size:var(--font-size-sm)}.calendar-day{min-height:50px;padding:2px}.calendar-day-number{font-size:.625rem}.calendar-task-count{font-size:.5rem;padding:1px 4px;min-width:12px}.calendar-weekday{font-size:.625rem;padding:4px 2px}.tasks-sidebar{max-height:300px}}.contacts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.contacts-search{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.contacts-search input{flex:1;max-width:var(--size-content-md)}.contacts-table{width:100%;background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.contacts-table th,.contacts-table td{padding:var(--spacing-md);text-align:left;border-bottom:1px solid var(--border-color)}.contacts-table th{background:var(--surface-tertiary);font-weight:600;color:var(--color-secondary)}.contacts-table tbody tr:hover{background:var(--surface-secondary)}.contact-row{cursor:pointer;transition:background var(--transition-fast)}.contact-row:hover{background:var(--surface-secondary)}.contact-email-text{color:var(--color-secondary)}.contact-avatar{width:var(--size-avatar-md);height:var(--size-avatar-md);border-radius:var(--radius-full);background:var(--color-primary);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600}.contact-info{display:flex;align-items:center;gap:var(--spacing-md)}.contact-name{font-weight:500;color:var(--color-secondary)}.contact-email{font-size:var(--font-size-sm);color:var(--color-secondary);opacity:.7}.contact-status{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;text-transform:uppercase}.contact-status--active{background:var(--overlay-success);color:var(--color-success)}.contact-status--inactive{background:var(--overlay-secondary);color:var(--color-secondary)}.contact-actions{display:flex;gap:var(--spacing-xs)}.contact-actions button{padding:var(--spacing-xs);background:none;border:none;color:var(--color-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.contact-actions button:hover{background:var(--surface-tertiary)}@media (max-width: var(--breakpoint-md)){.contacts-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.contacts-search{flex-direction:column;width:100%}.contacts-search input{max-width:none}.contacts-table{overflow-x:auto;display:block}.contacts-table table{min-width:600px}.contacts-table th,.contacts-table td{padding:var(--spacing-sm);font-size:var(--font-size-sm)}.contact-info{gap:var(--spacing-sm)}.contact-avatar{width:var(--size-avatar-sm);height:var(--size-avatar-sm);font-size:var(--font-size-xs)}.contact-actions{flex-direction:column}.contact-actions button{min-height:44px;min-width:44px}.modal-content--wide{max-width:95%}.modal-body--two-column{grid-template-columns:1fr;grid-template-rows:1fr auto;gap:var(--spacing-lg)}.modal-sidebar{max-height:400px}}@media (max-width: var(--breakpoint-sm)){.contacts-table table{min-width:500px}.modal-content--wide{width:95%;margin:var(--spacing-sm)}.modal-body--two-column{gap:var(--spacing-md)}.sidebar-header{padding:var(--spacing-md)}.tasks-list,.task-card{padding:var(--spacing-sm)}}.kanban-board{width:100%;overflow-x:auto;padding:var(--spacing-md) 0}.kanban-columns{display:flex;gap:var(--spacing-xs);min-width:max-content;padding:0 var(--spacing-md)}.kanban-column{flex:0 0 280px;background:var(--surface-primary);border-radius:var(--radius-lg);border:1px solid var(--border-color);height:fit-content;max-height:80vh;display:flex;flex-direction:column}.kanban-column-header{padding:var(--spacing-md) var(--spacing-sm);border-bottom:2px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;background:linear-gradient(to bottom,#f8f9fa,#f1f3f5);border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:0 1px 3px #0000000d}.kanban-column-header-content{display:flex;align-items:center;gap:var(--spacing-xs);flex:1}.kanban-column-title{font-size:.75rem;font-weight:700;color:var(--color-secondary);margin:0;text-transform:uppercase;letter-spacing:.025em}.kanban-column-count{background:#ffffffe6;color:var(--color-secondary);font-size:.625rem;font-weight:700;padding:.25rem .5rem;border-radius:var(--radius-full);min-width:1.25rem;text-align:center;border:1px solid var(--border-color);box-shadow:0 1px 2px #0000000d}.kanban-column-toggle{background:transparent;border:none;padding:var(--spacing-xs);cursor:pointer;color:var(--color-secondary);opacity:.6;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.kanban-column-toggle:hover{opacity:1;background:#0000000d}.kanban-column-toggle:active{transform:scale(.95)}.kanban-column-toggle svg{display:block;transition:transform var(--transition-fast)}.kanban-column.collapsed{flex:0 0 60px;min-width:60px;transition:all var(--transition-normal)}.kanban-column.collapsed .kanban-column-header{writing-mode:vertical-rl;text-orientation:mixed;padding:var(--spacing-md) var(--spacing-sm);border-bottom:none;border-right:2px solid var(--border-color);border-radius:var(--radius-lg) 0 0 var(--radius-lg);flex-direction:row;height:100%;min-height:300px;cursor:pointer;justify-content:center}.kanban-column.collapsed .kanban-column-header:hover{background:linear-gradient(to bottom,#e2e8f0,#f1f3f5)}.kanban-column.collapsed .kanban-column-header-content{flex-direction:row;writing-mode:vertical-rl;gap:var(--spacing-xs);flex:0;transform:rotate(180deg);align-items:center}.kanban-column.collapsed .kanban-column-title,.kanban-column.collapsed .kanban-column-count{white-space:nowrap}.kanban-column.collapsed .kanban-column-toggle{transform:rotate(180deg)}.kanban-cards{flex:1;padding:var(--spacing-sm);overflow-y:auto;display:flex;flex-direction:column;gap:var(--spacing-sm);transition:all var(--transition-normal)}.kanban-card{background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all var(--transition-normal);cursor:pointer;overflow:hidden}.kanban-card:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.kanban-card:active:not(.dragging){transform:translateY(0);box-shadow:0 2px 8px #00000014}.kanban-card.dragging{opacity:.5;transform:rotate(2deg);cursor:grab;box-shadow:0 8px 16px #00000026}.kanban-column.drag-over{background:#3b82f60d;border-color:var(--color-primary);box-shadow:inset 0 0 0 2px var(--color-primary)}.kanban-column.drag-over .kanban-column-header{background:linear-gradient(to bottom,#3b82f626,#f1f3f5)}.kanban-card-header{padding:var(--spacing-sm) var(--spacing-sm) var(--spacing-xs);border-bottom:none;display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-xs)}.kanban-card-title{font-size:var(--font-size-sm);font-weight:600;color:var(--color-secondary);margin:0;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex:1}.kanban-card-priority{display:flex;gap:2px;align-items:center;flex-shrink:0}.priority-star--small{background:none;border:none;padding:0;cursor:pointer;color:var(--border-color);transition:color var(--transition-fast),transform var(--transition-fast);display:flex;align-items:center;justify-content:center}.priority-star--small:hover{color:var(--color-warning);transform:scale(1.15)}.priority-star--small.priority-star--active{color:var(--color-warning)}.priority-star--small svg{width:16px;height:16px;pointer-events:none}.kanban-card-content{padding:0 var(--spacing-sm) var(--spacing-sm);display:grid;grid-template-columns:auto 1fr;gap:.375rem var(--spacing-xs);align-items:baseline}.kanban-card-field{display:contents}.field-label{font-size:var(--font-size-xs);font-weight:500;color:var(--color-secondary);opacity:.6;text-transform:none;letter-spacing:0}.field-value{font-size:var(--font-size-xs);color:var(--color-secondary);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.field-value--amount{font-weight:700;color:var(--color-success);font-size:var(--font-size-sm)}.field-value--address{font-size:var(--font-size-xs);color:var(--color-secondary);opacity:.8;line-height:1.3;white-space:normal;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.field-value--type{font-size:.625rem;padding:.125rem .375rem;background:var(--surface-tertiary);color:var(--color-secondary);border-radius:var(--radius-sm);width:fit-content;text-transform:capitalize;font-weight:500}.kanban-card-footer{padding:var(--spacing-xs) var(--spacing-sm) var(--spacing-sm);border-top:1px solid var(--border-color);background:var(--surface-secondary);margin-top:var(--spacing-xs)}.card-notes{font-size:.625rem;color:var(--color-secondary);opacity:.7;line-height:1.4;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-style:italic}.kanban-column-empty{padding:var(--spacing-xl);text-align:center}.empty-column-message{color:var(--color-secondary);opacity:.5;font-size:var(--font-size-sm);font-style:italic;margin:0}.kanban-column[data-stage=lead] .kanban-column-header,.kanban-column[data-stage=qualified_listed] .kanban-column-header{background:linear-gradient(to bottom,#dbeafe,#f1f3f5)}.kanban-column[data-stage=offers_made] .kanban-column-header{background:linear-gradient(to bottom,#fef3c7,#f1f3f5)}.kanban-column[data-stage=contingent] .kanban-column-header{background:linear-gradient(to bottom,#f8f9fa,#f1f3f5)}.kanban-column[data-stage=closed_won] .kanban-column-header{background:linear-gradient(to bottom,#d1fae5,#f1f3f5)}.kanban-column[data-stage=closed_lost] .kanban-column-header{background:linear-gradient(to bottom,#fee2e2,#f1f3f5)}@media (max-width: var(--breakpoint-md)){.kanban-board{padding:var(--spacing-sm) 0}.kanban-columns{flex-direction:column;gap:var(--spacing-md);padding:0 var(--spacing-sm)}.kanban-column{flex:none;width:100%;max-height:60vh}.kanban-column.collapsed{flex:none;width:100%;min-width:auto}.kanban-column.collapsed .kanban-column-header{writing-mode:horizontal-tb;text-orientation:mixed;flex-direction:row;height:auto;min-height:auto;border-right:none;border-bottom:2px solid var(--border-color);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.kanban-column.collapsed .kanban-column-header-content{writing-mode:horizontal-tb;transform:none;flex:1}.kanban-column.collapsed .kanban-column-toggle{transform:none}.kanban-column-toggle svg{width:var(--size-icon-lg);height:var(--size-icon-lg)}.kanban-card{touch-action:manipulation}.kanban-card-title{font-size:var(--font-size-base)}.field-label,.field-value{font-size:var(--font-size-sm)}}@media (max-width: var(--breakpoint-sm)){.kanban-board{overflow-x:visible}.kanban-column{max-height:50vh}.kanban-card-content{gap:.25rem var(--spacing-xs)}}.deals-kanban{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg)}.deals-column{background:var(--surface-secondary);border-radius:var(--radius-md);padding:var(--spacing-md)}.deals-column__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--surface-primary);border-radius:var(--radius-sm)}.deals-column__title{font-weight:600;color:var(--color-secondary)}.deals-column__count{background:var(--color-primary);color:#fff;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500}.deal-card{background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-sm);cursor:grab;transition:box-shadow var(--transition-fast)}.deal-card:hover{box-shadow:var(--shadow-card)}.deal-card:active{cursor:grabbing}.deal-card__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-sm)}.deal-card__title{font-weight:500;color:var(--color-secondary);margin:0}.deal-card__value{font-size:var(--font-size-lg);font-weight:700;color:var(--color-primary)}.deal-card__property{font-size:var(--font-size-sm);color:var(--color-secondary);margin-bottom:var(--spacing-sm)}.deal-card__footer{display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-xs);color:var(--color-secondary)}.deal-card__agent{display:flex;align-items:center;gap:var(--spacing-xs)}.deal-card__date{opacity:.7}.properties-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--spacing-lg)}.property-card{background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;transition:box-shadow var(--transition-fast)}.property-card:hover{box-shadow:var(--shadow-card-hover)}.property-image{width:100%;height:var(--size-content-sm);background:var(--surface-tertiary);display:flex;align-items:center;justify-content:center;color:var(--color-secondary)}.property-content{padding:var(--spacing-lg)}.property-price{font-size:var(--font-size-xl);font-weight:700;color:var(--color-primary);margin-bottom:var(--spacing-sm)}.property-address{color:var(--color-secondary);margin-bottom:var(--spacing-md)}.property-details{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.property-detail{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-secondary)}.property-status{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;text-transform:uppercase}.property-status--available{background:var(--overlay-success);color:var(--color-success)}.property-status--pending{background:var(--overlay-warning);color:var(--color-warning)}.property-status--sold{background:var(--overlay-secondary);color:var(--color-secondary)}.loading-container{padding:var(--spacing-xl)}.skeleton-card{pointer-events:none;user-select:none}.skeleton-image,.skeleton-title,.skeleton-price,.skeleton-specs,.skeleton-address,.skeleton-type,.skeleton-button{background:linear-gradient(90deg,var(--color-bg-muted) 25%,var(--color-bg-subtle) 50%,var(--color-bg-muted) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:var(--radius-md)}.skeleton-image{width:100%;height:200px;margin-bottom:var(--spacing-sm)}.skeleton-title{height:1.2em;width:80%;margin-bottom:var(--spacing-xs)}.skeleton-price{height:1.5em;width:60%;margin-bottom:var(--spacing-sm)}.skeleton-specs{height:1em;width:100%;margin-bottom:var(--spacing-xs)}.skeleton-address{height:1em;width:90%;margin-bottom:var(--spacing-xs)}.skeleton-type{height:1em;width:50%;margin-bottom:var(--spacing-sm)}.skeleton-button{height:2.5em;width:100%;margin-top:var(--spacing-sm)}@keyframes skeleton-loading{0%{background-position:-200% 0}to{background-position:200% 0}}.image-fallback{display:none;flex-direction:column;align-items:center;justify-content:center;height:200px;background:var(--color-bg-muted);border:1px dashed var(--border-color);border-radius:var(--radius-md);color:var(--color-secondary);text-align:center}.image-fallback.show{display:flex}.image-fallback small{font-size:var(--font-size-sm);color:var(--color-muted)}.modal-loading,.modal-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-2xl);text-align:center;min-height:300px}.modal-loading .loading-spinner{width:var(--size-avatar-md);height:var(--size-avatar-md);border:3px solid var(--border-color);border-top:3px solid var(--color-primary);border-radius:var(--radius-full);animation:spin 1s linear infinite;margin-bottom:var(--spacing-md)}.modal-error{color:var(--color-error)}.error-container{padding:var(--spacing-xl);text-align:center}.error-message{background:var(--color-error-light);border:1px solid var(--color-error);border-radius:var(--radius-lg);padding:var(--spacing-lg);max-width:500px;margin:0 auto}.error-message h3{color:var(--color-error);margin:0 0 var(--spacing-sm);font-size:var(--font-size-lg)}.error-message p{color:var(--color-secondary);margin:0 0 var(--spacing-lg)}.listings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.listing-card{background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card);transition:all var(--transition-fast);display:flex;flex-direction:column;height:100%;position:relative}.listing-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.listing-card--selected{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light)}.listing-card-select{position:absolute;top:var(--spacing-sm);left:var(--spacing-sm);z-index:10;background:#fff;border-radius:var(--radius-sm);padding:4px;box-shadow:0 2px 8px #00000026;display:flex;align-items:center;justify-content:center}.listing-checkbox{width:20px;height:20px;cursor:pointer;accent-color:var(--color-primary);margin:0}.listing-card-image{position:relative;width:100%;height:200px;overflow:hidden}.property-image{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-normal)}.listing-card:hover .property-image{transform:scale(1.05)}.listing-status-badge{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-badge--active{background:var(--color-success);color:#fff}.status-badge--warning{background:var(--color-warning);color:#fff}.status-badge--success{background:var(--color-success);color:#fff}.status-badge--error{background:var(--color-error);color:#fff}.status-badge--default{background:var(--color-secondary);color:#fff}.listing-card-content{padding:var(--spacing-lg);flex:1;display:flex;flex-direction:column}.listing-header{margin-bottom:var(--spacing-md)}.listing-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-secondary);margin:0 0 var(--spacing-xs);line-height:1.3}.listing-price{font-size:var(--font-size-xl);font-weight:700;color:var(--color-primary);margin:0}.listing-details{flex:1}.property-specs{display:flex;align-items:center;margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--color-secondary)}.spec-item{display:inline-flex;align-items:baseline;gap:2px}.spec-value{font-weight:600;color:var(--color-secondary)}.spec-label{font-size:var(--font-size-xs);color:var(--color-secondary);opacity:.8}.spec-divider{margin:0 var(--spacing-xs);opacity:.5}.listing-address{font-size:var(--font-size-sm);color:var(--color-secondary);margin:0 0 var(--spacing-xs);opacity:.9}.listing-type{font-size:var(--font-size-xs);color:var(--color-secondary);text-transform:capitalize;margin:0;opacity:.7}.listing-card-footer{padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--border-color);background:var(--surface-secondary)}.btn-view-details{width:100%;justify-content:center}.empty-state{text-align:center;padding:var(--spacing-2xl)}.empty-state-content{max-width:400px;margin:0 auto}.empty-state h3{font-size:var(--font-size-xl);color:var(--color-secondary);margin:0 0 var(--spacing-md)}.empty-state p{color:var(--color-secondary);opacity:.8;margin:0 0 var(--spacing-lg)}@media (max-width: var(--breakpoint-lg)){.listings-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-md)}}@media (max-width: var(--breakpoint-md)){.listings-grid{grid-template-columns:1fr;gap:var(--spacing-md)}}@media (max-width: var(--breakpoint-sm)){.listing-card-image{height:180px}.listing-card-content{padding:var(--spacing-md)}.listing-card-footer{padding:var(--spacing-sm) var(--spacing-md)}}.pagination-nav{display:flex;flex-direction:column;gap:var(--spacing-md);align-items:center;padding:var(--spacing-xl) 0}.pagination-nav--top{border-bottom:1px solid var(--border-color);margin-bottom:var(--spacing-lg);padding:0 0 var(--spacing-lg) 0}.pagination-nav--bottom{border-top:1px solid var(--border-color);margin-top:var(--spacing-lg);padding:var(--spacing-lg) 0 0 0}.pagination-info{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-secondary)}.pagination-count{opacity:.7}.pagination-controls{display:flex;align-items:center;gap:var(--spacing-sm)}.pagination-btn{min-width:100px}.pagination-pages{display:flex;gap:var(--spacing-xs)}.pagination-page{min-width:var(--size-avatar-md);justify-content:center}.pagination-current{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.pagination-current:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark)}.btn-disabled{opacity:.5;pointer-events:none}@media (max-width: var(--breakpoint-md)){.pagination-controls{flex-direction:column;gap:var(--spacing-md)}.pagination-pages{order:-1}.pagination-nav--top{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md)}.pagination-nav--bottom{margin-top:var(--spacing-md);padding-top:var(--spacing-md)}}.search-filter-section{margin-bottom:var(--spacing-xl);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.search-filter-bar{display:flex;gap:var(--spacing-md);align-items:center;flex-wrap:wrap}.search-input-wrapper{display:flex;gap:var(--spacing-sm);flex:1;min-width:300px}.search-input{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-md);color:var(--color-secondary);background:var(--surface-primary);transition:all var(--transition-fast)}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.search-btn{white-space:nowrap}.filter-toggle-btn{display:flex;align-items:center;gap:var(--spacing-xs);white-space:nowrap}.filter-toggle-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.filter-icon{flex-shrink:0}.filter-panel{margin-top:var(--spacing-lg);padding:var(--spacing-lg);background:var(--surface-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-lg)}.filter-grid>.filter-group:nth-child(1){grid-column:1 / -1;max-width:400px}.filter-grid>.filter-group:nth-child(2){max-width:150px}.filter-grid>.filter-group:nth-child(3){max-width:150px}.filter-grid>.filter-group:nth-child(4){max-width:200px}.filter-grid>.filter-group:nth-child(5){min-width:180px}.filter-grid>.filter-group:nth-child(6){min-width:180px}.filter-grid>.filter-group:nth-child(7){min-width:180px}.filter-grid>.filter-group:nth-child(8){min-width:180px}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-xs);min-width:0}.filter-label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-secondary);margin-bottom:var(--spacing-xs)}.filter-range{display:flex;align-items:center;gap:var(--spacing-sm)}.range-separator{color:var(--color-secondary);opacity:.5;font-weight:500}.filter-input{flex:1;min-width:0;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-secondary);background:var(--surface-primary);transition:all var(--transition-fast)}.filter-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.filter-input::placeholder{color:var(--color-muted);opacity:.6}.filter-select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-secondary);background:var(--surface-primary);transition:all var(--transition-fast);cursor:pointer}.filter-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.filter-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}@media (max-width: var(--breakpoint-lg)){.filter-grid{grid-template-columns:repeat(4,1fr)}.filter-grid>.filter-group:nth-child(1){grid-column:span 2}.filter-grid>.filter-group:nth-child(2){grid-column:span 1}.filter-grid>.filter-group:nth-child(3){grid-column:span 1}.filter-grid>.filter-group:nth-child(4){grid-column:span 2}.filter-grid>.filter-group:nth-child(5){grid-column:span 2}.filter-grid>.filter-group:nth-child(6){grid-column:span 2}.filter-grid>.filter-group:nth-child(7){grid-column:span 4}}@media (max-width: var(--breakpoint-md)){.search-filter-bar{flex-direction:column;align-items:stretch}.search-input-wrapper{min-width:100%}.filter-toggle-btn{justify-content:center}.filter-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.filter-grid>.filter-group:nth-child(1),.filter-grid>.filter-group:nth-child(2),.filter-grid>.filter-group:nth-child(3),.filter-grid>.filter-group:nth-child(4),.filter-grid>.filter-group:nth-child(5),.filter-grid>.filter-group:nth-child(6),.filter-grid>.filter-group:nth-child(7){grid-column:span 1}.filter-actions{flex-direction:column}.filter-actions .btn{width:100%}}@media (max-width: var(--breakpoint-sm)){.search-filter-section{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md)}.filter-panel{padding:var(--spacing-md)}.filter-grid{gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.filter-actions{padding-top:var(--spacing-md)}}.page-header-actions{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:nowrap}.header-selection-info{display:flex;align-items:center;gap:var(--spacing-sm)}.btn-icon{flex-shrink:0}.ai-prompts-dropdown{background:#fff;border:1px solid var(--color-border);border-radius:var(--border-radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md);box-shadow:0 4px 12px #0000001a}.ai-prompts-dropdown h3{margin-bottom:var(--spacing-sm);font-size:var(--font-size-base);font-weight:600}.ai-prompts-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.ai-prompt-button{text-align:left}@media (max-width: 768px){.page-header-actions{flex-direction:column;align-items:stretch;width:100%;gap:var(--spacing-sm)}.header-selection-info{width:100%;flex-direction:column;align-items:stretch}.header-selection-info .btn{width:100%}}.listings-page{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-lg)}.listings-page__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.listings-page__title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-primary)}.listings-page__view-toggle{display:flex;gap:.5rem;background-color:#f1f5f9;padding:.5rem;border-radius:.5rem;flex-shrink:0}.view-toggle__button{display:flex;align-items:center;gap:.25rem;padding:.5rem 1rem;border:none;background-color:#fff;cursor:pointer;border-radius:.25rem;font-size:.875rem;font-weight:500;color:#64748b;transition:all .2s ease;white-space:nowrap}.view-toggle__button:hover{background-color:#f8fafc}.view-toggle__button--active{background-color:#3b82f6;color:#fff}.listings-page__controls{position:absolute;top:var(--spacing-md);left:50%;transform:translate(-50%);z-index:1000;display:flex;justify-content:center;align-items:center;gap:var(--spacing-md)}.listings-page__filters{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.listings-page__search-area-btn{padding:var(--spacing-sm) var(--spacing-md);background-color:var(--color-primary);color:var(--surface-primary);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-fast);box-shadow:0 2px 8px #0003}.listings-page__search-area-btn:hover{background-color:var(--color-primary-dark);box-shadow:0 4px 12px #0000004d}.listings-page__map-view{display:flex;flex-direction:column;gap:var(--spacing-lg);width:100%}.listings-page__map-container{position:relative;width:100%;min-height:500px;height:500px;flex-shrink:0}.listings-page__map-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:1000;background-color:#fffffff2;padding:var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.listings-page__map-loading p{margin:0;font-size:var(--font-size-md);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.loading-spinner{width:40px;height:40px;border:4px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.map-controls{position:absolute;top:var(--spacing-md);right:var(--spacing-md);z-index:var(--z-dropdown);display:flex;flex-direction:column;gap:var(--spacing-sm)}.map-controls__button{background-color:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-sm);cursor:pointer;box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.map-controls__button:hover{box-shadow:var(--shadow-md);background-color:var(--surface-secondary)}@media (max-width: 768px){.listings-page{padding:var(--spacing-md)}.listings-page__header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.listings-page__title{font-size:var(--font-size-2xl)}.listings-page__view-toggle{width:100%;justify-content:stretch}.view-toggle__button{flex:1;justify-content:center}.listings-page__controls{flex-direction:column;align-items:stretch}.listings-page__filters{width:100%}.map-controls{top:var(--spacing-sm);right:var(--spacing-sm)}}.preset-controls{display:flex;gap:var(--spacing-sm);align-items:center;flex-wrap:wrap}.preset-dropdown-wrapper{position:relative}.preset-dropdown-btn{display:flex;align-items:center;gap:var(--spacing-xs);min-width:180px;justify-content:space-between}.preset-dropdown-btn--active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.dropdown-chevron{opacity:.6;transition:transform var(--transition-fast)}.preset-dropdown-btn[aria-expanded=true] .dropdown-chevron{transform:rotate(180deg)}.preset-dropdown-menu{position:absolute;top:calc(100% + var(--spacing-xs));left:0;min-width:280px;max-width:400px;background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100;max-height:400px;overflow-y:auto}.preset-dropdown-empty{padding:var(--spacing-lg);text-align:center;color:var(--color-muted)}.preset-dropdown-empty p{margin:0 0 var(--spacing-xs);font-weight:500;color:var(--color-secondary)}.preset-dropdown-empty small{font-size:var(--font-size-sm)}.preset-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-color);transition:background var(--transition-fast)}.preset-item:last-child{border-bottom:none}.preset-item:hover{background:var(--surface-secondary)}.preset-item--active{background:var(--color-primary-light)}.preset-item-button{flex:1;display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs);background:none;border:none;color:var(--color-secondary);cursor:pointer;text-align:left;font-size:var(--font-size-sm)}.preset-name{font-weight:500}.preset-default-icon{color:var(--color-warning);flex-shrink:0}.preset-item-actions{display:flex;gap:var(--spacing-xs);opacity:.6;transition:opacity var(--transition-fast)}.preset-item:hover .preset-item-actions{opacity:1}.preset-action-btn{padding:var(--spacing-xs);background:none;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--color-muted);cursor:pointer;transition:all var(--transition-fast)}.preset-action-btn:hover{background:var(--surface-primary);border-color:var(--border-color);color:var(--color-secondary)}.preset-action-btn--active{color:var(--color-warning)}.preset-action-btn--delete:hover{color:var(--color-error);border-color:var(--color-error)}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md)}.modal-dialog{background:var(--surface-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);max-width:500px;width:100%;max-height:80vh;overflow-y:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.modal-close-btn{padding:var(--spacing-xs);background:none;border:none;color:var(--color-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.modal-close-btn:hover{background:var(--surface-secondary);color:var(--color-secondary)}.modal-body{padding:var(--spacing-lg)}.modal-footer{display:flex;gap:var(--spacing-md);justify-content:flex-end;padding:var(--spacing-lg);border-top:1px solid var(--border-color)}.form-group{margin-bottom:var(--spacing-lg)}.form-label{display:block;margin-bottom:var(--spacing-xs);font-weight:600;font-size:var(--font-size-sm);color:var(--color-secondary)}.form-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-md);color:var(--color-secondary);background:var(--surface-primary);transition:all var(--transition-fast)}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.form-error{margin:var(--spacing-xs) 0 0;font-size:var(--font-size-sm);color:var(--color-error)}.preset-summary{padding:var(--spacing-md);background:var(--surface-secondary);border-radius:var(--radius-md);border:1px solid var(--border-color)}.preset-summary h3{margin:0 0 var(--spacing-sm);font-size:var(--font-size-md);font-weight:600;color:var(--color-secondary)}.filter-summary-list{list-style:none;padding:0;margin:0}.filter-summary-list li{padding:var(--spacing-xs) 0;font-size:var(--font-size-sm);color:var(--color-secondary)}.filter-summary-list li span{font-weight:500;color:var(--color-primary)}@media (max-width: var(--breakpoint-md)){.preset-controls{width:100%;flex-direction:column}.preset-dropdown-btn,.preset-dropdown-menu{width:100%}.modal-dialog{max-height:90vh}}@media (max-width: var(--breakpoint-sm)){.modal-overlay{padding:0}.modal-dialog{max-height:100vh;border-radius:0}}.listings-content{padding:0}.listings-header{margin-bottom:var(--spacing-xl)}@media (max-width: var(--breakpoint-md)){.listings-header{margin-bottom:var(--spacing-lg)}.search-filter-bar{flex-direction:column;align-items:stretch}.search-input-wrapper{min-width:100%;width:100%}.search-btn,.filter-toggle-btn{width:100%;justify-content:center;min-height:44px}.filter-panel{padding:var(--spacing-md)}.filter-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.filter-grid>.filter-group{max-width:none;min-width:100%}.filter-range{flex-wrap:wrap}.listings-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.listing-card{max-width:100%}.listing-card-content{padding:var(--spacing-md)}.listing-title{font-size:var(--font-size-base)}.listing-price{font-size:var(--font-size-lg)}.map-container{height:400px}.ai-button{width:100%;justify-content:center}}@media (max-width: var(--breakpoint-sm)){.filter-panel{padding:var(--spacing-sm)}.listing-card-image{height:180px}.listing-card-content{padding:var(--spacing-sm)}.property-specs{flex-wrap:wrap}.map-container{height:300px}}.tabs-nav{display:flex;border-bottom:2px solid var(--border-color);background:var(--surface-secondary)}.tab-button{flex:1;padding:var(--spacing-md) var(--spacing-lg);background:transparent;border:none;border-bottom:3px solid transparent;color:var(--color-secondary);font-size:var(--font-size-base);font-weight:500;cursor:pointer;transition:all var(--transition-fast);position:relative}.tab-button:hover{background:var(--surface-primary);color:var(--color-primary)}.tab-button.active{color:var(--color-primary);background:var(--surface-primary);border-bottom-color:var(--color-primary);font-weight:600}.tabs-content{padding:var(--spacing-xl);min-height:400px}.tab-panel{animation:fadeIn var(--transition-normal)}.tab-panel h2{margin:0 0 var(--spacing-lg) 0;font-size:var(--font-size-xl);color:var(--color-primary)}.tab-panel p{color:var(--color-secondary);font-size:var(--font-size-base);line-height:1.6}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.tabs-nav{flex-wrap:wrap}.tab-button{flex:1 1 50%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm)}.tabs-content{padding:var(--spacing-md)}.tab-panel h2{font-size:var(--font-size-lg)}}.templates-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);flex-wrap:wrap}.templates-filters{display:flex;gap:var(--spacing-md);flex:1;min-width:300px}.search-box{flex:1}.templates-list{overflow-x:auto}.templates-table{width:100%;border-collapse:collapse;background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-md)}.templates-table thead{background:var(--surface-secondary)}.templates-table th{padding:var(--spacing-md);text-align:left;font-size:var(--font-size-sm);font-weight:600;color:var(--color-secondary);border-bottom:2px solid var(--border-color)}.templates-table tbody tr{border-bottom:1px solid var(--border-color);transition:background var(--transition-fast)}.templates-table tbody tr:hover{background:var(--surface-secondary)}.templates-table tbody tr:last-child{border-bottom:none}.templates-table td{padding:var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-secondary);vertical-align:middle}.template-name{font-weight:600;color:var(--color-primary);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-category-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-primary-light);color:var(--color-primary);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;white-space:nowrap}.template-subject{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-description{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-actions{display:flex;gap:var(--spacing-xs);white-space:nowrap}.btn-icon-small{background:transparent;border:none;padding:var(--spacing-xs);cursor:pointer;font-size:var(--font-size-lg);transition:transform var(--transition-fast)}.btn-icon-small:hover{transform:scale(1.2)}.template-status-active{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-success-light, #d1fae5);color:var(--color-success);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600}.template-status-inactive{padding:var(--spacing-xs) var(--spacing-sm);background:var(--surface-tertiary);color:var(--color-secondary);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600}.loading-state,.error-state,.empty-state{text-align:center;padding:var(--spacing-xl);color:var(--color-secondary)}.error-state{color:var(--color-error)}@media (max-width: 768px){.templates-header{flex-direction:column;align-items:stretch}.templates-filters{flex-direction:column}.templates-table{font-size:var(--font-size-xs)}.templates-table th,.templates-table td{padding:var(--spacing-sm)}.template-name,.template-subject,.template-description{max-width:150px}}.template-modal{position:fixed;inset:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center}.modal-overlay{position:absolute;inset:0;background:var(--overlay-background);z-index:1}.modal-content{position:relative;z-index:2;max-width:900px;width:90%;background:var(--surface-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.modal-header h2{margin:0;font-size:var(--font-size-xl);color:var(--color-secondary)}.modal-close-btn{background:none;border:none;font-size:var(--font-size-2xl);color:var(--color-secondary);cursor:pointer;padding:var(--spacing-xs);line-height:1;transition:color var(--transition-fast)}.modal-close-btn:hover{color:var(--color-error)}.modal-close-icon{display:block}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-lg);border-top:1px solid var(--border-color)}.template-form{padding:var(--spacing-lg)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.form-group--full{grid-column:1 / -1}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-label{font-size:var(--font-size-sm);font-weight:600;color:var(--color-secondary)}.form-input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-base);background:var(--surface-primary);transition:border-color var(--transition-fast)}.form-input:focus{outline:none;border-color:var(--color-primary)}.form-input--error{border-color:var(--color-error)}.form-select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-base);background:var(--surface-primary);cursor:pointer}.form-textarea{width:100%;min-height:80px;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-base);font-family:inherit;resize:vertical;transition:border-color var(--transition-fast)}.form-textarea:focus{outline:none;border-color:var(--color-primary)}.form-textarea--error{border-color:var(--color-error)}.form-error{color:var(--color-error);font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}.form-checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer}.form-checkbox{width:18px;height:18px;cursor:pointer}.required-asterisk{color:var(--color-error)}.dynamic-fields-list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);padding:var(--spacing-sm);background:var(--surface-secondary);border-radius:var(--radius-md);max-height:200px;overflow-y:auto}.dynamic-field-btn{padding:var(--spacing-xs) var(--spacing-sm);background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-family:monospace;cursor:pointer;transition:all var(--transition-fast)}.dynamic-field-btn:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}@media (max-width: 768px){.form-grid{grid-template-columns:1fr}.modal-content{width:95%}}.lists-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.lists-header h2{margin:0;font-size:var(--font-size-xl);color:var(--color-primary)}.mailing-lists-table-container{overflow-x:auto}.mailing-lists-table{width:100%;border-collapse:collapse;background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-md)}.mailing-lists-table thead{background:var(--surface-secondary)}.mailing-lists-table th{padding:var(--spacing-md);text-align:left;font-size:var(--font-size-sm);font-weight:600;color:var(--color-secondary);border-bottom:2px solid var(--border-color)}.mailing-lists-table tbody tr{border-bottom:1px solid var(--border-color);transition:background var(--transition-fast)}.mailing-lists-table tbody tr:hover{background:var(--surface-secondary)}.mailing-lists-table tbody tr:last-child{border-bottom:none}.mailing-lists-table td{padding:var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-secondary);vertical-align:middle}.list-name{font-weight:600;color:var(--color-primary)}.list-description{max-width:400px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-count{font-weight:600}.list-actions{display:flex;gap:var(--spacing-xs);white-space:nowrap}.list-status-active{padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-success-light, #d1fae5);color:var(--color-success);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600}.list-status-inactive{padding:var(--spacing-xs) var(--spacing-sm);background:var(--surface-tertiary);color:var(--color-secondary);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600}.contacts-selection-header{display:flex;gap:var(--spacing-sm);align-items:center;margin-bottom:var(--spacing-sm);padding:var(--spacing-sm);background:var(--surface-secondary);border-radius:var(--radius-md)}.btn-sm{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm)}.selected-count{margin-left:auto;font-size:var(--font-size-sm);color:var(--color-secondary);font-weight:600}.contacts-list{max-height:400px;overflow-y:auto;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-xs);background:var(--surface-primary)}.contact-checkbox-label{display:flex;align-items:flex-start;gap:8px;padding:4px 8px;margin-bottom:0;cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.contact-checkbox-label:hover{background:var(--surface-secondary)}.form-checkbox{margin-top:2px;flex-shrink:0}.contact-info{display:flex;flex-direction:row;gap:8px;align-items:center;line-height:1.2;flex:1}.contact-name{font-size:14px;font-weight:600;color:var(--color-primary);margin:0;padding:0}.contact-email{font-size:12px;color:var(--color-secondary);margin:0;padding:0}.empty-state-small{text-align:center;padding:var(--spacing-md);color:var(--color-secondary)}@media (max-width: 768px){.lists-header{flex-direction:column;align-items:stretch;gap:var(--spacing-sm)}.mailing-lists-table{font-size:var(--font-size-xs)}.mailing-lists-table th,.mailing-lists-table td{padding:var(--spacing-sm)}.list-description{max-width:150px}.contacts-selection-header{flex-wrap:wrap}}.email-templates-container{background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.team-content{padding:0}.team-sections{display:flex;flex-direction:column;gap:var(--spacing-xl)}.team-section{background:var(--surface-primary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm)}.team-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-color)}.team-section h2{font-size:var(--font-size-lg);font-weight:600;color:var(--color-secondary);margin:0}.invite-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.invite-btn:hover{opacity:.9;transform:translateY(-1px)}.invite-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.team-table{width:100%;border-collapse:collapse}.team-table thead{background:var(--surface-secondary)}.team-table th{text-align:left;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:600;color:var(--color-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--border-color)}.team-table tbody tr{border-bottom:1px solid var(--border-color);transition:background var(--transition-fast)}.team-table tbody tr:hover{background:var(--surface-secondary)}.team-table td{padding:var(--spacing-md);font-size:var(--font-size-sm);color:var(--color-secondary)}.member-name{font-weight:500;color:var(--color-primary)}.member-email{color:var(--color-secondary);opacity:.7;font-size:var(--font-size-xs)}.admin-badge{display:inline-block;padding:2px var(--spacing-xs);background:var(--color-primary);color:#fff;font-size:var(--font-size-xs);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.permission-select{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--surface-primary);color:var(--color-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast)}.permission-select:hover{border-color:var(--color-primary)}.permission-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1a}.invite-form{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--surface-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.form-field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-field.full-width{grid-column:1 / -1}.form-label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-secondary)}.form-label.required:after{content:" *";color:#dc2626}.form-input,.form-select{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--surface-primary);color:var(--color-secondary);font-size:var(--font-size-sm);transition:all var(--transition-fast)}.form-input:hover,.form-select:hover{border-color:var(--color-primary)}.form-input:focus,.form-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1a}.form-error{color:#dc2626;font-size:var(--font-size-xs);margin-top:var(--spacing-xs)}.form-input.error{border-color:#dc2626}.form-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end}.btn-primary,.btn-secondary{padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{opacity:.9}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--surface-tertiary);color:var(--color-secondary);border:1px solid var(--border-color)}.btn-secondary:hover{background:var(--surface-secondary)}.loading-message,.error-message{padding:var(--spacing-lg);text-align:center;color:var(--color-secondary);font-size:var(--font-size-sm)}.error-message{color:#dc2626;background:#dc26261a;border:1px solid #dc2626;border-radius:var(--radius-md);margin-bottom:var(--spacing-md)}.empty-state{padding:var(--spacing-xl);text-align:center;color:var(--color-secondary);opacity:.7;font-style:italic}@media (max-width: var(--breakpoint-md)){.form-grid{grid-template-columns:1fr}.team-table{font-size:var(--font-size-xs)}.team-table th,.team-table td{padding:var(--spacing-sm)}.team-section-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.invite-btn{width:100%}}@media (max-width: var(--breakpoint-sm)){.team-table thead{display:none}.team-table tbody tr{display:block;margin-bottom:var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md)}.team-table td{display:block;text-align:right;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-color)}.team-table td:last-child{border-bottom:none}.team-table td:before{content:attr(data-label);float:left;font-weight:600;text-transform:uppercase;font-size:var(--font-size-xs)}}.page-subtitle{color:var(--text-secondary);font-size:.95rem;margin-top:var(--spacing-xs)}.settings-container{display:flex;flex-direction:column;gap:var(--spacing-lg);max-width:900px}.settings-card{background:var(--surface-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);overflow:hidden}.settings-card-header{padding:var(--spacing-lg);border-bottom:1px solid var(--border-primary)}.settings-card-title-group{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.settings-card-title-group h2{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0}.settings-icon{color:var(--primary-color);flex-shrink:0}.settings-card-description{color:var(--text-secondary);font-size:.9rem;margin:0}.settings-card-content{padding:var(--spacing-lg)}.settings-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl) var(--spacing-lg);gap:var(--spacing-md)}.settings-loading .spinner{width:40px;height:40px;border:3px solid var(--border-primary);border-top-color:var(--primary-color);border-radius:50%;animation:spin .8s linear infinite}.settings-loading p{color:var(--text-secondary);margin:0}@keyframes spin{to{transform:rotate(360deg)}}.connection-status{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);font-weight:500;margin-bottom:var(--spacing-md)}.connection-status svg{flex-shrink:0}.connection-status--success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.connection-status--warning{background:#fff3cd;color:#856404;border:1px solid #ffeaa7}.gmail-info{margin-bottom:var(--spacing-lg)}.gmail-email{padding:var(--spacing-md);background:var(--surface-secondary);border-radius:var(--radius-sm);margin-bottom:var(--spacing-md)}.gmail-email strong{display:block;margin-bottom:var(--spacing-xs);color:var(--text-primary);font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.gmail-email span{color:var(--text-primary);font-size:1rem}.gmail-description{color:var(--text-secondary);font-size:.9rem;margin:0 0 var(--spacing-md) 0;line-height:1.5}.feature-list{list-style:none;padding:0;margin:var(--spacing-md) 0 0 0}.feature-list li{position:relative;padding-left:var(--spacing-lg);margin-bottom:var(--spacing-sm);color:var(--text-secondary);font-size:.9rem}.feature-list li:before{content:"✓";position:absolute;left:0;color:var(--success-color);font-weight:700}.btn-connect-gmail{display:inline-flex;align-items:center;gap:var(--spacing-sm)}.btn-connect-gmail svg{fill:none}.btn-disconnect{min-width:160px}.btn-disconnect:disabled{opacity:.6;cursor:not-allowed}.account-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg)}.info-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.info-label{font-size:.85rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-weight:500}.info-value{font-size:1rem;color:var(--text-primary);font-weight:400}@media (max-width: var(--breakpoint-md)){.settings-container{max-width:100%}.settings-card-header,.settings-card-content{padding:var(--spacing-md)}.settings-card-title-group h2{font-size:var(--font-size-lg)}.settings-card-description{font-size:var(--font-size-sm)}.account-info-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.btn-connect-gmail,.btn-disconnect,.btn-connect-calendar{width:100%;justify-content:center;min-height:44px}.feature-list li,.connection-status{font-size:var(--font-size-sm)}.gmail-email,.calendar-email{padding:var(--spacing-sm)}}@media (max-width: var(--breakpoint-sm)){.settings-card-header,.settings-card-content{padding:var(--spacing-sm)}.settings-loading{padding:var(--spacing-lg) var(--spacing-sm)}}.calendar-connected,.calendar-disconnected{display:flex;flex-direction:column}.calendar-info{margin-bottom:var(--spacing-lg)}.calendar-email{padding:var(--spacing-md);background:var(--surface-secondary);border-radius:var(--radius-sm);margin-bottom:var(--spacing-md)}.calendar-email strong{display:block;margin-bottom:var(--spacing-xs);color:var(--text-primary);font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.calendar-email span{color:var(--text-primary);font-size:1rem}.calendar-description{color:var(--text-secondary);font-size:.9rem;margin:0 0 var(--spacing-md) 0;line-height:1.5}.btn-connect-calendar{display:inline-flex;align-items:center;gap:var(--spacing-sm)}.btn-connect-calendar svg{fill:none}.sync-toggle-container{padding:var(--spacing-md);background:var(--surface-secondary);border-radius:var(--radius-sm);margin-top:var(--spacing-md)}.sync-toggle-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;user-select:none}.sync-toggle-checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--primary-color)}.sync-toggle-checkbox:disabled{opacity:.6;cursor:not-allowed}.sync-toggle-text{color:var(--text-primary);font-weight:500;font-size:.95rem}.sync-toggle-description{color:var(--text-secondary);font-size:.85rem;margin:var(--spacing-xs) 0 0 26px;line-height:1.4}@media (max-width: var(--breakpoint-md)){.sync-toggle-container{padding:var(--spacing-sm)}.sync-toggle-checkbox{width:20px;height:20px}.sync-toggle-description{margin-left:0;margin-top:var(--spacing-sm);font-size:var(--font-size-xs)}}.logo-preview,.logo-placeholder{display:flex;align-items:center;gap:var(--spacing-md)}.branding-logo-preview{width:64px;height:64px;border-radius:var(--radius-md);object-fit:contain;background:#fff;padding:4px;border:1px solid var(--border-primary)}.logo-upload-container{display:flex;flex-direction:column;gap:var(--spacing-md)}.logo-preview-container{display:flex;align-items:center;padding:var(--spacing-md);background:var(--surface-secondary);border-radius:var(--radius-sm);max-width:fit-content}.branding-logo-preview-large{width:100px;height:100px;border-radius:var(--radius-md);object-fit:contain;background:#fff;padding:8px;border:1px solid var(--border-primary)}.form-actions-top,.alert-top-spacing{margin-top:var(--spacing-md)}.full-width-info{grid-column:1 / -1}.hidden{display:none}.visible{display:block}.loading{opacity:.6;pointer-events:none}.progress-bar{width:var(--progress-width, 0%);height:var(--bar-height, var(--size-icon-xs));background:var(--color-primary);border-radius:var(--radius-sm);transition:width var(--transition-normal)}.progress-container{width:100%;height:var(--bar-height, var(--size-icon-xs));background:var(--surface-tertiary);border-radius:var(--radius-sm);overflow:hidden}.fade-in{opacity:var(--fade-opacity, 1);transition:opacity var(--transition-normal)}.fade-out{opacity:var(--fade-opacity, 0);transition:opacity var(--transition-normal)}.slide-panel{transform:translate(var(--slide-distance, 0));transition:transform var(--transition-normal)}.status-indicator{width:var(--size-icon-xs);height:var(--size-icon-xs);border-radius:var(--radius-full);background:var(--status-color, var(--color-secondary));display:inline-block}.loading-spinner{width:var(--spinner-size, 20px);height:var(--spinner-size, 20px);border:2px solid var(--surface-tertiary);border-top:2px solid var(--color-primary);border-radius:var(--radius-full);animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dynamic-grid{display:grid;grid-template-columns:repeat(var(--grid-columns, 1),1fr);gap:var(--grid-gap, var(--spacing-md))}@media (min-width: var(--breakpoint-md)){.dynamic-grid{grid-template-columns:repeat(var(--grid-columns-md, var(--grid-columns, 1)),1fr)}}@media (min-width: var(--breakpoint-lg)){.dynamic-grid{grid-template-columns:repeat(var(--grid-columns-lg, var(--grid-columns-md, var(--grid-columns, 1))),1fr)}}img,svg,video,canvas,iframe{max-width:100%;height:auto}.contacts-table,.listings-grid,.kanban-board{max-width:100%}@media (max-width: var(--breakpoint-md)){:root{font-size:16px}body,.app-layout,.main-container,.content-section,.page-header,.dashboard-grid,.contacts-list-container,.kanban-board,.calendar-container,.listings-grid,.settings-container{max-width:100vw;overflow-x:hidden}.page-header,.content-section,.dashboard-card,.listing-card,.kanban-column{box-sizing:border-box;width:100%}.modal-overlay{padding:var(--spacing-md)}.modal__content{max-height:85vh;margin:var(--spacing-md)}.modal__header,.modal__body,.modal__footer{padding:var(--spacing-md)}.page-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md)}.page-header h1{font-size:var(--font-size-xl)}.page-actions{width:100%;display:flex;flex-direction:column;gap:var(--spacing-sm)}.page-actions .btn{width:100%;justify-content:center}.btn{min-height:44px;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-base)}.btn-icon{min-width:44px;min-height:44px}.content-section{padding:var(--spacing-md);margin-bottom:var(--spacing-md);border-radius:var(--radius-md)}.form-input,.form-select,.form-textarea{min-height:44px;font-size:16px}.dashboard-grid{grid-template-columns:1fr;gap:var(--spacing-md)}.desktop-only{display:none}}@media (max-width: var(--breakpoint-sm)){.main-container{padding-left:var(--spacing-sm);padding-right:var(--spacing-sm)}.content-section{padding:var(--spacing-sm)}.page-header h1{font-size:var(--font-size-lg)}.modal__content{margin:var(--spacing-sm)}.action-buttons{flex-direction:column;width:100%}.action-buttons .btn{width:100%}}[x-cloak]{display:none!important}.modal-overlay{position:fixed;inset:0;background:var(--overlay-background);z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg)}.modal-content{background:var(--surface-primary);border-radius:var(--radius-lg);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:var(--size-modal-max);width:100%;max-height:90vh;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color);flex-shrink:0}.modal-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-secondary);margin:0}.modal-close-button{width:var(--size-avatar-sm);height:var(--size-avatar-sm);border:none;background:none;color:var(--color-secondary);cursor:pointer;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.modal-close-button:hover{background:var(--surface-tertiary);color:var(--color-primary)}.close-icon{width:var(--size-icon-lg);height:var(--size-icon-lg)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding:var(--spacing-lg);border-top:1px solid var(--border-color);background:var(--surface-secondary);flex-shrink:0}.modal-body{overflow-y:auto;flex:1 1 auto}
