:root{--color-black: #000000;--color-white: #ffffff;--color-gray-900: #111827;--color-gray-800: #1f2937;--color-gray-700: #374151;--color-gray-600: #4b5563;--color-gray-500: #6b7280;--color-gray-400: #9ca3af;--color-gray-300: #d1d5db;--color-gray-200: #e5e7eb;--color-gray-100: #f3f4f6;--color-gray-50: #f9fafb;--color-success: #16a34a;--color-success-bg: #dcfce7;--color-success-light: #bbf7d0;--color-info: #2563eb;--color-info-bg: #dbeafe;--color-info-light: #bfdbfe;--color-warning: #d97706;--color-warning-bg: #fef3c7;--color-warning-light: #fde68a;--color-error: #dc2626;--color-error-bg: #fee2e2;--color-error-light: #fecaca;--color-purple: #7c3aed;--color-purple-bg: #ede9fe;--color-purple-light: #ddd6fe;--color-indigo: #4f46e5;--color-indigo-bg: #e0e7ff;--color-indigo-light: #c7d2fe;--color-primary: #667eea;--color-primary-hover: #5a6fd6;--color-primary-light: rgba(102, 126, 234, .1);--font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--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-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--spacing-0: 0;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-2xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--z-dropdown: 1000;--z-sticky: 1020;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--sidebar-width: 240px;--sidebar-collapsed-width: 64px;--header-height: 64px;--content-max-width: 1280px}*,*:before,*:after{box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;padding:0;min-height:100vh;font-family:var(--font-family, "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);font-size:var(--font-size-base, 1rem);line-height:var(--line-height-normal, 1.5);color:var(--color-gray-900, #111827);background-color:var(--color-gray-50, #f9fafb)}a{color:var(--color-primary, #667eea);text-decoration:none}a:hover{text-decoration:underline}button{font-family:inherit}ul,ol{list-style:none;margin:0;padding:0}h1,h2,h3,h4,h5,h6,p{margin:0}img{max-width:100%;height:auto}.auth-container{min-height:100vh;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;background:#fff;padding:1.5rem 1rem;font-family:Inter,system-ui,sans-serif;overflow-y:auto;box-sizing:border-box}.auth-logo-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;margin-bottom:.5rem;flex-shrink:0}.auth-logo-icon svg,.auth-logo-icon img{width:80px;height:80px;color:#111827}.auth-brand-name{font-size:1.5rem;font-weight:700;color:#111827;margin:0 0 1rem;text-align:center;flex-shrink:0}.auth-card{background:#fff;border-radius:10px;border:1px solid #E5E7EB;padding:1.25rem;width:100%;max-width:380px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;flex-shrink:0}.auth-card h2{text-align:center;color:#111827;font-size:1rem;font-weight:600;margin:0 0 .75rem}.auth-description{text-align:center;color:#6b7280;font-size:.875rem;margin:-.25rem 0 1rem;line-height:1.5}.auth-form{display:flex;flex-direction:column;gap:.5rem}.form-group{display:flex;flex-direction:column;gap:.125rem}.form-group label{font-size:.8125rem;font-weight:500;color:#374151}.form-group input{padding:.5rem .625rem;border:1px solid #D1D5DB;border-radius:6px;font-size:.8125rem;transition:border-color .15s,box-shadow .15s;font-family:Inter,system-ui,sans-serif}.form-group input::placeholder{color:#9ca3af}.form-group input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f6}.form-group input:disabled{background:#f3f4f6;cursor:not-allowed}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{flex:1;padding-right:2.5rem}.password-toggle{position:absolute;right:.75rem;background:none;border:none;padding:0;cursor:pointer;color:#9ca3af;display:flex;align-items:center;justify-content:center}.password-toggle:hover{color:#6b7280}.password-toggle svg{width:1.25rem;height:1.25rem}.form-link{text-align:left;margin-top:-.25rem}.form-link a{font-size:.875rem;color:#3b82f6;text-decoration:none}.form-link a:hover{text-decoration:underline}.auth-container .btn-primary{padding:.5rem 1rem!important;background:#000!important;background-color:#000!important;color:#fff!important;border:none!important;border-radius:6px!important;font-size:.8125rem!important;font-weight:500!important;cursor:pointer;transition:background-color .15s;font-family:Inter,system-ui,sans-serif;width:100%;margin-top:.25rem;text-align:center;display:flex;align-items:center;justify-content:center}.auth-container .btn-primary:hover:not(:disabled){background:#1f2937!important;background-color:#1f2937!important}.auth-container .btn-primary:disabled{background:#9ca3af!important;background-color:#9ca3af!important;cursor:not-allowed}.auth-divider{display:flex;align-items:center;margin:.5rem 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:#e5e7eb}.auth-divider span{padding:0 .75rem;color:#6b7280;font-size:.75rem}.auth-container .btn-google{display:flex;align-items:center;justify-content:center;gap:.375rem;width:100%;padding:.5rem 1rem;background:#fff!important;background-color:#fff!important;color:#374151!important;border:1px solid #D1D5DB!important;border-radius:6px!important;font-size:.8125rem;font-weight:500;cursor:pointer;transition:background-color .15s,border-color .15s;font-family:Inter,system-ui,sans-serif}.auth-container .btn-google:hover:not(:disabled){background:#f9fafb!important;background-color:#f9fafb!important;border-color:#9ca3af}.auth-container .btn-google:disabled{opacity:.6;cursor:not-allowed}.btn-google svg{width:18px;height:18px;flex-shrink:0}.auth-footer{text-align:center;margin-top:.5rem;color:#6b7280;font-size:.75rem}.auth-footer a{color:#3b82f6;text-decoration:none;font-weight:500}.auth-footer a:hover{text-decoration:underline}.auth-error{background:#fee2e2;color:#dc2626;padding:.75rem 1rem;border-radius:8px;font-size:.875rem;margin-bottom:1rem}.auth-success{background:#dcfce7;color:#16a34a;padding:.75rem 1rem;border-radius:8px;font-size:.875rem;margin-bottom:1rem}.password-checklist{margin-top:.25rem;padding:.375rem .5rem;background:#f8f9fa;border-radius:4px}.password-checklist-item{display:flex;align-items:center;gap:.25rem;font-size:.625rem;margin-bottom:.0625rem;line-height:1.3}.password-checklist-item:last-child{margin-bottom:0}.password-checklist-item.valid{color:#16a34a}.password-checklist-item.invalid{color:#9ca3af}.password-checklist-item svg{width:10px;height:10px;flex-shrink:0}.deliveries-page{width:100%}.page-header{margin-bottom:1.5rem}.page-header h1{font-size:1.5rem;font-weight:600;color:#1a1a2e;margin:0}.toolbar-left{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.toolbar-right{display:flex;gap:.5rem}.search-input{padding:.5rem .75rem;border:1px solid #ddd;border-radius:6px;font-size:.875rem;min-width:250px}.date-filters{display:flex;gap:.75rem;align-items:center}.date-filters label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#666}.date-input{padding:.5rem .75rem;border:1px solid #ddd;border-radius:6px;font-size:.875rem}.date-input.invalid{border-color:#c62828}.date-error{color:#c62828;font-size:.75rem;margin-left:.5rem}.deliveries-page .btn-primary{padding:.5rem 1rem;background:#1a1a2e;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s;display:inline-flex;align-items:center}.deliveries-page .btn-primary:hover{background:#2d2d44}.deliveries-page .btn-secondary{padding:.5rem 1rem;background:#fff;color:#333;border:1px solid #ddd;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s;display:inline-flex;align-items:center}.deliveries-page .btn-secondary:hover{background:#f5f5f5}.deliveries-page .export-dropdown{position:relative;display:inline-block}.deliveries-page .export-dropdown .dropdown-menu{display:none;position:absolute;top:100%;right:0;margin-top:2px;background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:1000;min-width:140px;padding:4px 0}.deliveries-page .export-dropdown:hover .dropdown-menu,.deliveries-page .export-dropdown:focus-within .dropdown-menu{display:block}.deliveries-page .dropdown-menu button{display:block;width:100%;padding:.625rem 1rem;border:none;background:#fff;text-align:left;cursor:pointer;font-size:.875rem;color:#333}.deliveries-page .dropdown-menu button:hover{background:#f5f5f5}.deliveries-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.deliveries-table th,.deliveries-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #eee}.deliveries-table th{background:#f8f9fa;font-weight:600;font-size:.75rem;text-transform:uppercase;color:#666}.deliveries-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.deliveries-table th.sortable:hover{background:#eee}.deliveries-table td{font-size:.875rem;color:#333}.campaign-link{color:#667eea;text-decoration:none}.campaign-link:hover{text-decoration:underline}.deliveries-table tr:hover{background:#f8f9fa}.status-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.badge-pending{background:#f5f5f5;color:#666}.badge-sent{background:#e3f2fd;color:#1565c0}.badge-delivered{background:#e8f5e9;color:#2e7d32}.badge-failed{background:#ffebee;color:#c62828}.badge-bounced{background:#fff3e0;color:#ef6c00}.error-cell{color:#c62828;font-size:.8125rem;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-size{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#666}.page-size select{padding:.25rem .5rem;border:1px solid #ddd;border-radius:4px;font-size:.875rem}.skeleton-table{display:flex;flex-direction:column;gap:.5rem}.skeleton-row{height:48px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px}.tabs{display:flex;gap:var(--spacing-1, 4px);border-bottom:1px solid var(--color-gray-200, #e5e7eb);margin-bottom:var(--spacing-4, 16px)}.tabs__tab{padding:var(--spacing-3, 12px) var(--spacing-4, 16px);font-size:14px;font-weight:500;color:var(--color-gray-500, #6b7280);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .15s ease;margin-bottom:-1px}.tabs__tab:hover{color:var(--color-gray-700, #374151)}.tabs__tab--active{color:var(--color-gray-900, #111827);border-bottom-color:var(--color-gray-900, #111827)}.tabs__count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;margin-left:var(--spacing-2, 8px);font-size:12px;font-weight:500;color:var(--color-gray-600, #4b5563);background-color:var(--color-gray-100, #f3f4f6);border-radius:10px}.tabs__tab--active .tabs__count{color:var(--color-white, #ffffff);background-color:var(--color-gray-900, #111827)}.metrics-sidebar{background:#fff;border-radius:8px;padding:1.25rem;box-shadow:0 1px 3px #0000001a}.metrics-sidebar-title{font-size:1rem;font-weight:600;color:#1a1a2e;margin:0 0 1rem}.metrics-list{display:flex;flex-direction:column;gap:.25rem}.metric-row{display:flex;align-items:flex-start;gap:.75rem;padding:.5rem 0;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background .2s}.metric-row:hover{background:#fafafa;margin:0 -.5rem;padding-left:.5rem;padding-right:.5rem}.metric-row:last-child{border-bottom:none}.metric-checkbox{width:16px;height:16px;margin-top:2px;cursor:pointer;accent-color:#1a1a2e}.metric-indicator{width:12px;height:12px;border-radius:2px;flex-shrink:0;margin-top:4px}.metric-indicator--green{background-color:#10b981}.metric-indicator--red{background-color:#ef4444}.metric-indicator--yellow{background-color:#f59e0b}.metric-details{flex:1;min-width:0}.metric-name-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.metric-name{font-size:.875rem;font-weight:500;color:#1a1a2e}.metric-count{font-size:.875rem;font-weight:600;color:#1a1a2e}.metric-percentage{font-size:.75rem;color:#6b7280;margin-top:.125rem}.metric-learn-link{display:inline-block;font-size:.75rem;color:#3b82f6;text-decoration:none;margin-top:.25rem}.metric-learn-link:hover{text-decoration:underline}.total-created{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb;font-size:.875rem;font-weight:600;color:#1a1a2e}.vertical-funnel{display:flex;align-items:flex-end;justify-content:center;gap:0;padding:1rem 0;min-height:320px}.funnel-step-container{display:flex;align-items:flex-end}.funnel-step{display:flex;flex-direction:column;align-items:center;height:280px}.funnel-bar-metrics{display:flex;flex-direction:column;align-items:center;margin-bottom:.75rem;flex-shrink:0}.funnel-bar-value{font-size:1.5rem;font-weight:700;color:#1a1a2e}.funnel-bar-percent{font-size:.875rem;color:#6b7280;margin-top:.125rem}.funnel-bar-change{display:flex;align-items:center;gap:.25rem;font-size:.75rem;margin-top:.25rem}.funnel-bar-change--positive{color:#10b981}.funnel-bar-change--negative{color:#ef4444}.funnel-bar-change--neutral{color:#6b7280}.change-arrow{font-size:.625rem}.funnel-bar-change--negative .change-arrow{transform:rotate(180deg)}.funnel-bar{width:80px;background:#1a1a2e;border-radius:6px 6px 0 0;flex-grow:1;min-height:40px;transition:height .3s ease}.funnel-label{font-size:.875rem;color:#6b7280;margin-top:.75rem;text-align:center}.funnel-arrow{display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:1.25rem;padding:0 .5rem;margin-bottom:80px;font-weight:300}@media(max-width:900px){.funnel-bar{width:60px}.funnel-bar-value{font-size:1.25rem}.funnel-arrow{padding:0 .25rem}}@media(max-width:640px){.vertical-funnel{flex-wrap:wrap;gap:1rem;justify-content:space-around}.funnel-arrow{display:none}.funnel-step{height:auto;min-height:200px}.funnel-bar{width:50px;min-height:60px;max-height:120px}}.select-container{display:flex;flex-direction:column;gap:var(--spacing-1)}.select-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-700)}.select-wrapper{position:relative;display:flex;align-items:center}.select{width:100%;font-family:var(--font-family);border:1px solid var(--color-gray-300);border-radius:var(--radius-lg);background-color:var(--color-white);color:var(--color-gray-900);cursor:pointer;appearance:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none;padding-right:calc(var(--spacing-3) + 16px + var(--spacing-2))}.select:hover:not(:disabled){border-color:var(--color-gray-400)}.select:focus{border-color:var(--color-black);box-shadow:0 0 0 1px var(--color-black)}.select:disabled{background-color:var(--color-gray-50);color:var(--color-gray-500);cursor:not-allowed}.select-wrapper--sm .select{padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-xs);height:32px}.select-wrapper--md .select{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm);height:40px}.select-wrapper--lg .select{padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-base);height:48px}.select-icon{position:absolute;right:var(--spacing-3);display:flex;align-items:center;justify-content:center;color:var(--color-gray-400);pointer-events:none}.select-wrapper--error .select{border-color:var(--color-error)}.select-wrapper--error .select:focus{border-color:var(--color-error);box-shadow:0 0 0 1px var(--color-error)}.select-error{font-size:var(--font-size-xs);color:var(--color-error)}.select-wrapper--disabled{opacity:.7}.select-wrapper--disabled .select-icon{color:var(--color-gray-300)}.filter-bar{display:flex;justify-content:flex-end;align-items:center;gap:.75rem;margin-bottom:1.5rem}.filter-bar-filters{display:flex;gap:.5rem}.filter-bar-export{padding:.5rem 1rem;background:#1a1a1a;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s}.filter-bar-export:hover{background:#333}.filter-bar-export:focus{outline:none;box-shadow:0 0 0 3px #0003}@media(max-width:768px){.filter-bar{flex-direction:column;align-items:stretch}.filter-bar-filters{flex-wrap:wrap}.filter-bar-export{width:100%}}.campaigns-tab{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.campaigns-filters{display:flex;gap:.75rem;margin-bottom:1rem}.campaigns-search{flex:1;max-width:300px;padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:6px;font-size:.875rem}.campaigns-search:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.campaigns-channel-filter,.campaigns-type-filter{padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:6px;font-size:.875rem;background:#fff;cursor:pointer}.campaigns-channel-filter:focus,.campaigns-type-filter:focus{outline:none;border-color:#667eea}.campaigns-table-wrapper{overflow-x:auto}.campaigns-table{width:100%;border-collapse:collapse;font-size:.875rem}.campaigns-table th{text-align:left;padding:.75rem 1rem;background:#f9fafb;font-weight:600;font-size:.75rem;text-transform:uppercase;color:#6b7280;border-bottom:1px solid #e5e7eb;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none}.campaigns-table th:hover{background:#f3f4f6}.campaigns-table td{padding:.75rem 1rem;border-bottom:1px solid #f3f4f6;color:#1a1a2e}.campaigns-table tbody tr:hover{background:#fafafa}.sort-icon{margin-left:.25rem;font-size:.625rem;color:#9ca3af}.campaign-name a{color:#1a1a2e;text-decoration:none;font-weight:500}.campaign-name a:hover{color:#667eea;text-decoration:underline}.channel-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:uppercase}.type-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.type-journey{background:#f3e5f5;color:#7b1fa2}.type-broadcast{background:#e0f7fa;color:#00838f}.metric-cell{display:flex;flex-direction:column;gap:.125rem}.metric-percent{font-size:.75rem;color:#6b7280}.campaign-date{color:#6b7280;white-space:nowrap}.campaigns-empty{text-align:center;color:#6b7280;padding:2rem 1rem}.campaigns-summary{margin-top:1rem;font-size:.875rem;color:#6b7280}.campaigns-loading{text-align:center;padding:3rem 1rem;color:#6b7280}.campaigns-error{text-align:center;padding:2rem 1rem;color:#dc2626;background:#fef2f2;border-radius:6px}.campaigns-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.pagination-btn{padding:.5rem 1rem;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:.875rem;cursor:pointer;transition:all .15s}.pagination-btn:hover:not(:disabled){background:#f9fafb;border-color:#667eea}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-info{font-size:.875rem;color:#6b7280}@media(max-width:768px){.campaigns-filters{flex-direction:column}.campaigns-search{max-width:none}}.custom-report-tab{display:grid;grid-template-columns:320px 1fr;gap:1.5rem}@media(max-width:1024px){.custom-report-tab{grid-template-columns:1fr}}.report-builder{background:#fff;border-radius:8px;padding:1.25rem;box-shadow:0 1px 3px #0000001a;height:fit-content}.builder-section{margin-bottom:1.5rem}.builder-section:last-of-type{margin-bottom:1rem}.builder-section-title{font-size:.875rem;font-weight:600;color:#1a1a2e;margin:0 0 .75rem}.metrics-grid{display:grid;grid-template-columns:1fr;gap:.5rem}.metric-checkbox-item,.dimension-radio-item,.chart-type-item{display:flex;align-items:center;gap:.5rem;padding:.375rem 0;font-size:.875rem;color:#374151;cursor:pointer}.metric-checkbox-item:hover,.dimension-radio-item:hover,.chart-type-item:hover{color:#1a1a2e}.metric-checkbox-item input,.dimension-radio-item input,.chart-type-item input{cursor:pointer;accent-color:#667eea}.dimensions-list,.chart-type-list{display:flex;flex-direction:column;gap:.25rem}.chart-type-list{flex-direction:row;gap:1rem}.builder-actions{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}.generate-btn{width:100%;padding:.75rem 1rem;background:#667eea;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s}.generate-btn:hover:not(:disabled){background:#5a6fd6}.generate-btn:disabled{background:#9ca3af;cursor:not-allowed}.report-results{background:#fff;border-radius:8px;padding:1.25rem;box-shadow:0 1px 3px #0000001a}.report-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.report-title{font-size:1rem;font-weight:600;color:#1a1a2e;margin:0}.export-btn{padding:.5rem 1rem;background:#fff;color:#374151;border:1px solid #e5e7eb;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.export-btn:hover{background:#f9fafb;border-color:#d1d5db}.report-table-wrapper{overflow-x:auto}.report-table{width:100%;border-collapse:collapse;font-size:.875rem}.report-table th{text-align:left;padding:.75rem 1rem;background:#f9fafb;font-weight:600;font-size:.75rem;text-transform:uppercase;color:#6b7280;border-bottom:1px solid #e5e7eb}.report-table td{padding:.75rem 1rem;border-bottom:1px solid #f3f4f6;color:#1a1a2e}.report-table tbody tr:hover{background:#fafafa}.chart-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center;color:#6b7280}.chart-placeholder-icon{font-size:3rem;margin-bottom:1rem}.chart-placeholder-note{font-size:.75rem;color:#9ca3af}.report-empty{background:#fff;border-radius:8px;padding:3rem;box-shadow:0 1px 3px #0000001a;text-align:center;color:#6b7280}.report-empty-icon{font-size:3rem;margin-bottom:1rem}.report-empty p{margin:0;font-size:.875rem}.analytics-page{width:100%}.analytics-header{margin-bottom:1rem}.header-pills{display:flex;gap:.5rem}.header-pill{display:inline-flex;align-items:center;padding:.5rem 1rem;background:#f3f4f6;border-radius:9999px;font-size:.875rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s}.header-pill:hover{background:#e5e7eb}.header-pill--active{background:#1a1a2e;color:#fff}.header-pill--active:hover{background:#2d2d44}.analytics-tabs-wrapper{margin-bottom:1rem}.analytics-main{display:grid;grid-template-columns:320px 1fr;gap:1.5rem;margin-bottom:1.5rem}@media(max-width:1024px){.analytics-main{grid-template-columns:1fr}}.funnel-section{background:#fff;border-radius:8px;padding:1.25rem;box-shadow:0 1px 3px #0000001a}.funnel-section h3{font-size:1rem;font-weight:600;color:#1a1a2e;margin:0 0 1rem}.trends-section,.geo-section{margin-bottom:1.5rem}.chart-card h3{font-size:1rem;font-weight:600;color:#1a1a2e;margin:0 0 1rem}.trends-legend{display:flex;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;cursor:pointer;text-transform:capitalize}.legend-color{width:12px;height:12px;border-radius:2px}.geo-table{width:100%;border-collapse:collapse}.geo-table th,.geo-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #eee}.geo-table th{font-weight:600;font-size:.75rem;text-transform:uppercase;color:#666;background:#f8f9fa}.geo-table td{font-size:.875rem}.geo-table tbody tr:hover{background:#fafafa}.country-cell{display:flex;align-items:center;gap:.5rem}.country-flag{font-size:1.125rem}.no-data{text-align:center;color:#666;padding:2rem}.channel-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.channel-email{background:#e3f2fd;color:#1565c0}.channel-sms{background:#e8f5e9;color:#2e7d32}.channel-push{background:#fff3e0;color:#ef6c00}.skeleton-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.btn-primary{padding:.5rem 1rem;background:#667eea;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer}@media(max-width:768px){.header-pills{flex-wrap:wrap}.analytics-main{grid-template-columns:1fr}.trends-legend{justify-content:center}.geo-table{font-size:.8125rem}.geo-table th,.geo-table td{padding:.5rem}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);font-family:var(--font-family);font-weight:var(--font-weight-medium);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;border:1px solid transparent;outline:none}.btn:focus-visible{box-shadow:0 0 0 2px var(--color-white),0 0 0 4px var(--color-primary)}.btn--sm{padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-xs);height:32px}.btn--md{padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);height:40px}.btn--lg{padding:var(--spacing-3) var(--spacing-6);font-size:var(--font-size-base);height:48px}.btn--primary{background-color:var(--color-black);color:var(--color-white);border-color:var(--color-black)}.btn--primary:hover:not(:disabled){background-color:var(--color-gray-800);border-color:var(--color-gray-800)}.btn--secondary{background-color:var(--color-white);color:var(--color-gray-700);border-color:var(--color-gray-300)}.btn--secondary:hover:not(:disabled){background-color:var(--color-gray-50);border-color:var(--color-gray-400)}.btn--outline{background-color:transparent;color:var(--color-gray-700);border-color:var(--color-gray-300)}.btn--outline:hover:not(:disabled){background-color:var(--color-gray-50)}.btn--ghost{background-color:transparent;color:var(--color-gray-600);border-color:transparent}.btn--ghost:hover:not(:disabled){background-color:var(--color-gray-100);color:var(--color-gray-900)}.btn--danger{background-color:var(--color-error);color:var(--color-white);border-color:var(--color-error)}.btn--danger:hover:not(:disabled){background-color:#b91c1c;border-color:#b91c1c}.btn__icon{display:inline-flex;align-items:center;justify-content:center}.btn__icon svg{width:16px;height:16px}.btn--lg .btn__icon svg{width:20px;height:20px}.btn--loading{position:relative}.btn__spinner{display:inline-flex;align-items:center;justify-content:center}.btn__spinner-icon{width:16px;height:16px;animation:btn-spin 1s linear infinite}.btn__spinner-circle{opacity:.25}.btn__spinner-circle{stroke-dasharray:60;stroke-dashoffset:45;opacity:1}@keyframes btn-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.input-container{display:flex;flex-direction:column;gap:var(--spacing-1)}.input-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-700)}.input-wrapper{position:relative;display:flex;align-items:center}.input{width:100%;font-family:var(--font-family);border:1px solid var(--color-gray-300);border-radius:var(--radius-lg);background-color:var(--color-white);color:var(--color-gray-900);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none}.input::placeholder{color:var(--color-gray-400)}.input:hover:not(:disabled){border-color:var(--color-gray-400)}.input:focus{border-color:var(--color-black);box-shadow:0 0 0 1px var(--color-black)}.input:disabled{background-color:var(--color-gray-50);color:var(--color-gray-500);cursor:not-allowed}.input-wrapper--sm .input{padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-xs);height:32px}.input-wrapper--md .input{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm);height:40px}.input-wrapper--lg .input{padding:var(--spacing-3) var(--spacing-4);font-size:var(--font-size-base);height:48px}.input-icon{position:absolute;display:flex;align-items:center;justify-content:center;color:var(--color-gray-400);pointer-events:none}.input-icon svg{width:16px;height:16px}.input-icon--left{left:var(--spacing-3)}.input-icon--right{right:var(--spacing-3)}.input-wrapper--has-left-icon .input{padding-left:calc(var(--spacing-3) + 16px + var(--spacing-2))}.input-wrapper--has-right-icon .input{padding-right:calc(var(--spacing-3) + 16px + var(--spacing-2))}.input-wrapper--error .input{border-color:var(--color-error)}.input-wrapper--error .input:focus{border-color:var(--color-error);box-shadow:0 0 0 1px var(--color-error)}.input-error{font-size:var(--font-size-xs);color:var(--color-error)}.input-wrapper--disabled{opacity:.7}.badge{display:inline-flex;align-items:center;font-family:var(--font-family);font-weight:var(--font-weight-medium);border-radius:var(--radius-full);white-space:nowrap}.badge--sm{padding:0 var(--spacing-2);font-size:.6875rem;height:20px}.badge--md{padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-xs);height:24px}.badge--default{background-color:var(--color-gray-100);color:var(--color-gray-700)}.badge--primary{background-color:var(--color-primary-light);color:var(--color-primary)}.badge--success{background-color:var(--color-success-bg);color:var(--color-success)}.badge--warning{background-color:var(--color-warning-bg);color:var(--color-warning)}.badge--error{background-color:var(--color-error-bg);color:var(--color-error)}.badge--info{background-color:var(--color-info-bg);color:var(--color-info)}.badge--purple{background-color:var(--color-purple-bg);color:var(--color-purple)}.data-table-container{width:100%;overflow-x:auto;border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);background-color:var(--color-white)}.data-table{width:100%;border-collapse:collapse;font-family:var(--font-family)}.data-table__head{background-color:var(--color-gray-50);border-bottom:1px solid var(--color-gray-200)}.data-table__header-cell{padding:var(--spacing-3) var(--spacing-6);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.05em;color:var(--color-gray-500);text-align:left;white-space:nowrap}.data-table__header-cell--sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.data-table__header-cell--sortable:hover{color:var(--color-gray-700)}.data-table__header-content{display:inline-flex;align-items:center;gap:var(--spacing-1)}.sort-icon{display:inline-flex;align-items:center;color:var(--color-gray-400)}.sort-icon--active{color:var(--color-gray-700)}.data-table__body{background-color:var(--color-white)}.data-table__row{border-bottom:1px solid var(--color-gray-200);transition:background-color var(--transition-fast)}.data-table__row:last-child{border-bottom:none}.data-table__row:hover{background-color:var(--color-gray-50)}.data-table__row--clickable{cursor:pointer}.data-table__cell{padding:var(--spacing-4) var(--spacing-6);font-size:var(--font-size-sm);color:var(--color-gray-900);vertical-align:middle}.data-table__empty{padding:var(--spacing-16) var(--spacing-6);text-align:center}.skeleton{background:linear-gradient(90deg,var(--color-gray-100) 25%,var(--color-gray-200) 50%,var(--color-gray-100) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:var(--radius-sm)}.skeleton--text{height:16px;width:80%}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.pagination{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-4) 0;gap:var(--spacing-4);flex-wrap:wrap}.pagination__info{flex-shrink:0}.pagination__text{font-size:var(--font-size-sm);color:var(--color-gray-600)}.pagination__text strong{color:var(--color-gray-900);font-weight:var(--font-weight-medium)}.pagination__controls{display:flex;align-items:center;gap:var(--spacing-6)}.pagination__page-size{display:flex;align-items:center;gap:var(--spacing-2)}.pagination__page-size .select-wrapper{width:70px}.pagination__nav,.pagination__pages{display:flex;align-items:center;gap:var(--spacing-1)}.pagination__page{display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 var(--spacing-2);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-600);background-color:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.pagination__page:hover{background-color:var(--color-gray-100);color:var(--color-gray-900)}.pagination__page--active{background-color:var(--color-black);color:var(--color-white)}.pagination__page--active:hover{background-color:var(--color-gray-800);color:var(--color-white)}.pagination__ellipsis{display:flex;align-items:center;justify-content:center;min-width:32px;height:32px;color:var(--color-gray-400);font-size:var(--font-size-sm)}@media(max-width:640px){.pagination{flex-direction:column;align-items:flex-start}.pagination__controls{width:100%;justify-content:space-between}}.search-input{position:relative;display:flex;align-items:center;width:100%;max-width:320px}.search-input__icon{position:absolute;left:var(--spacing-3);display:flex;align-items:center;justify-content:center;color:var(--color-gray-400);pointer-events:none}.search-input__field{width:100%;height:40px;padding:var(--spacing-2) var(--spacing-3);padding-left:calc(var(--spacing-3) + 16px + var(--spacing-2));padding-right:calc(var(--spacing-3) + 16px + var(--spacing-2));font-family:var(--font-family);font-size:var(--font-size-sm);color:var(--color-gray-900);background-color:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-lg);outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.search-input__field::placeholder{color:var(--color-gray-400)}.search-input__field:hover{border-color:var(--color-gray-400)}.search-input__field:focus{border-color:var(--color-black);box-shadow:0 0 0 1px var(--color-black)}.search-input__clear{position:absolute;right:var(--spacing-2);display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background-color:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-gray-400);cursor:pointer;transition:all var(--transition-fast)}.search-input__clear:hover{background-color:var(--color-gray-100);color:var(--color-gray-600)}.search-input__clear:focus{outline:none;box-shadow:0 0 0 2px var(--color-primary)}.modal-backdrop{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background-color:#00000080;z-index:var(--z-modal-backdrop);animation:modal-backdrop-fade-in .15s ease-out}@keyframes modal-backdrop-fade-in{0%{opacity:0}to{opacity:1}}.modal{display:flex;flex-direction:column;max-height:calc(100vh - 64px);background-color:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);z-index:var(--z-modal);animation:modal-slide-in .2s ease-out;outline:none}@keyframes modal-slide-in{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal--sm{width:100%;max-width:400px}.modal--md{width:100%;max-width:500px}.modal--lg{width:100%;max-width:640px}.modal--xl{width:100%;max-width:800px}.modal__header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-6);border-bottom:1px solid var(--color-gray-200)}.modal__title{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}.modal__close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background-color:transparent;border:none;border-radius:var(--radius-md);color:var(--color-gray-400);cursor:pointer;transition:all var(--transition-fast)}.modal__close:hover{background-color:var(--color-gray-100);color:var(--color-gray-600)}.modal__close:focus{outline:none;box-shadow:0 0 0 2px var(--color-primary)}.modal__body{flex:1;overflow-y:auto;padding:var(--spacing-6)}.modal__footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--spacing-3);padding:var(--spacing-4) var(--spacing-6);border-top:1px solid var(--color-gray-200);background-color:var(--color-gray-50);border-radius:0 0 var(--radius-xl) var(--radius-xl)}@media(max-width:640px){.modal{margin:var(--spacing-4);max-height:calc(100vh - 32px)}.modal--sm,.modal--md,.modal--lg,.modal--xl{max-width:calc(100vw - 32px)}}.confirm-dialog__content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--spacing-4)}.confirm-dialog__icon{width:48px;height:48px;flex-shrink:0}.confirm-dialog__icon--danger{color:var(--color-error)}.confirm-dialog__icon--warning{color:var(--color-warning, #f59e0b)}.confirm-dialog__icon--info{color:var(--color-primary)}.confirm-dialog__message{margin:0;font-size:var(--font-size-base);color:var(--color-gray-600);line-height:1.5}.confirm-dialog__actions{display:flex;gap:var(--spacing-3);width:100%;justify-content:flex-end}.dropdown-menu{position:relative;display:inline-flex}.dropdown-menu__trigger{display:inline-flex;align-items:center;justify-content:center;padding:var(--spacing-1);background-color:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;color:var(--color-gray-500);transition:all var(--transition-fast)}.dropdown-menu__trigger:hover{background-color:var(--color-gray-100);color:var(--color-gray-700)}.dropdown-menu__trigger:focus{outline:none;box-shadow:0 0 0 2px var(--color-primary)}.dropdown-menu__content{min-width:160px;padding:var(--spacing-1);background-color:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown);animation:dropdown-fade-in .15s ease-out}@keyframes dropdown-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dropdown-menu__item{display:flex;align-items:center;gap:var(--spacing-2);width:100%;padding:var(--spacing-2) var(--spacing-3);font-family:var(--font-family);font-size:var(--font-size-sm);color:var(--color-gray-700);background-color:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;text-align:left;transition:all var(--transition-fast)}.dropdown-menu__item:hover{background-color:var(--color-gray-100);color:var(--color-gray-900)}.dropdown-menu__item:focus{outline:none;background-color:var(--color-gray-100)}.dropdown-menu__item--danger{color:var(--color-error)}.dropdown-menu__item--danger:hover{background-color:var(--color-error-bg);color:var(--color-error)}.dropdown-menu__item--disabled{opacity:.5;cursor:not-allowed}.dropdown-menu__item--disabled:hover{background-color:transparent}.dropdown-menu__item-icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px}.dropdown-menu__item-icon svg{width:16px;height:16px}.dropdown-menu__item-label{flex:1}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-12) var(--spacing-6);text-align:center}.empty-state__icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin-bottom:var(--spacing-4);background-color:var(--color-gray-100);border-radius:var(--radius-full);color:var(--color-gray-400)}.empty-state__icon svg{width:32px;height:32px}.empty-state__icon--emoji{font-size:2rem;background-color:transparent}.empty-state__title{margin:0 0 var(--spacing-2);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}.empty-state__description{margin:0 0 var(--spacing-6);max-width:360px;font-size:var(--font-size-sm);color:var(--color-gray-500);line-height:var(--line-height-relaxed)}.empty-state__actions{display:flex;align-items:center;gap:var(--spacing-3)}.ai-analytics-page{width:100%}.page-header{margin-bottom:1rem}.page-header h1{font-size:1.5rem;font-weight:600;color:#1a1a2e;margin:0 0 .25rem}.subtitle{font-size:.875rem;color:#666;margin:0}.tabs{display:flex;gap:0;border-bottom:1px solid #ddd;margin-bottom:1.5rem}.tab{padding:.75rem 1.25rem;border:none;background:none;font-size:.875rem;font-weight:500;color:#666;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .2s,border-color .2s}.tab:hover{color:#333}.tab.active{color:#667eea;border-bottom-color:#667eea}.coming-soon{padding:4rem 2rem;text-align:center;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.coming-soon h3{font-size:1.25rem;color:#333;margin:0 0 .5rem}.coming-soon p{color:#666;margin:0}.ai-analytics-content{display:flex;flex-direction:column;gap:1.5rem}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.kpi-card{background:#fff;border-radius:8px;padding:1.25rem;box-shadow:0 1px 3px #0000001a;display:flex;align-items:flex-start;gap:1rem}.kpi-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.kpi-icon-blue{background:#e0e7ff;color:#4f46e5}.kpi-icon-yellow{background:#fef3c7;color:#d97706}.kpi-icon-green{background:#d1fae5;color:#059669}.kpi-icon-purple{background:#ede9fe;color:#7c3aed}.kpi-content{flex:1;min-width:0}.kpi-label{font-size:.75rem;font-weight:500;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem}.kpi-value{font-size:1.5rem;font-weight:700;color:#1a1a2e;line-height:1.2}.kpi-subtitle{font-size:.75rem;color:#888;margin-top:.25rem}.risk-distribution-value{display:flex;align-items:baseline;gap:.125rem;font-size:1.25rem}.risk-num{font-weight:700}.risk-sep{color:#ccc;font-weight:400;margin:0 .25rem}.risk-low,.risk-badge.risk-low{color:#16a34a}.risk-medium,.risk-badge.risk-medium{color:#ca8a04}.risk-high,.risk-badge.risk-high{color:#dc2626}.chart-card{background:#fff;border-radius:8px;padding:1.25rem;box-shadow:0 1px 3px #0000001a}.chart-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.chart-card h3{font-size:1rem;font-weight:600;color:#1a1a2e;margin:0}.chart-subtitle{font-size:.8125rem;color:#666;margin:.25rem 0 0}.chart-footer{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:.75rem;border-top:1px solid #eee}.chart-help-text,.chart-count{font-size:.75rem;color:#888;margin:0}.scatter-legend{display:flex;gap:1.5rem;margin-bottom:1rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#666}.legend-dot{width:10px;height:10px;border-radius:50%}.risk-low-dot{background:#16a34a}.risk-medium-dot{background:#ca8a04}.risk-high-dot{background:#dc2626}.scatter-preview{padding:2rem;background:#f8f9fa;border-radius:4px;text-align:center;color:#666}.predictions-table{width:100%;border-collapse:collapse}.predictions-table th,.predictions-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #eee}.predictions-table th{font-weight:600;font-size:.6875rem;text-transform:uppercase;color:#666;background:#f8f9fa;letter-spacing:.5px}.predictions-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.predictions-table th.sortable:hover{background:#eee}.predictions-table td{font-size:.875rem}.predictions-table tr:hover{background:#f8f9fa}.risk-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.risk-badge.risk-low{background:#dcfce7;color:#16a34a}.risk-badge.risk-medium{background:#fef3c7;color:#ca8a04}.risk-badge.risk-high{background:#fee2e2;color:#dc2626}.risk-percent{margin-left:.5rem;font-size:.75rem;color:#888}.ltv-cell{display:flex;align-items:center;gap:.5rem}.ltv-value{font-weight:500}.trend-icon{flex-shrink:0}.trend-up{color:#16a34a}.trend-down{color:#dc2626}.trend-stable{color:#888}.send-time-cell{line-height:1.4}.send-time-main{font-weight:500;color:#1a1a2e}.send-time-day{font-size:.75rem;color:#666}.send-time-confidence{font-size:.6875rem;color:#888}.toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.toolbar-left{display:flex;gap:.75rem;align-items:center}.toolbar-right{display:flex;gap:.5rem;align-items:center}.search-input{padding:.5rem .75rem;border:1px solid #ddd;border-radius:6px;font-size:.875rem;min-width:200px}.filter-select{padding:.5rem .75rem;border:1px solid #ddd;border-radius:6px;font-size:.875rem;background:#fff;cursor:pointer}.btn-primary{padding:.5rem 1rem;background:#667eea;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:.5rem}.btn-secondary{padding:.5rem 1rem;background:#fff;color:#333;border:1px solid #ddd;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer}.btn-secondary:hover{background:#f5f5f5}.btn-icon{padding:.5rem;background:#fff;color:#666;border:1px solid #ddd;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center}.btn-icon:hover{background:#f5f5f5;color:#333}.export-dropdown{position:relative}.export-dropdown .dropdown-menu{display:none;position:absolute;top:100%;right:0;background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 4px 12px #0000001a;z-index:10;min-width:120px;margin-top:4px}.export-dropdown:hover .dropdown-menu{display:block}.dropdown-menu button{display:block;width:100%;padding:.5rem 1rem;border:none;background:none;text-align:left;cursor:pointer;font-size:.875rem}.dropdown-menu button:hover{background:#f5f5f5}.pagination{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;margin-top:1rem}.page-info{font-size:.875rem;color:#666}.page-nav{display:flex;align-items:center;gap:.5rem}.page-nav button{padding:.5rem .75rem;border:1px solid #ddd;background:#fff;border-radius:4px;font-size:.875rem;cursor:pointer}.page-nav button:disabled{opacity:.5;cursor:not-allowed}.page-nav button:hover:not(:disabled){background:#f5f5f5}.page-nav span{font-size:.875rem;color:#666;padding:0 .5rem}.loading-state,.empty-state,.error-state{padding:3rem;text-align:center;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.skeleton-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.skeleton-card{height:100px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:8px}.empty-icon{font-size:3rem;margin-bottom:1rem}.empty-state h3,.error-state h3{font-size:1.125rem;font-weight:600;color:#333;margin:0 0 .5rem}.empty-state p,.error-state p{color:#666;margin:0 0 1rem}.settings-tab{display:flex;flex-direction:column;gap:1.5rem}.settings-section{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #0000001a}.settings-section h3{font-size:1.125rem;font-weight:600;color:#1a1a2e;margin:0 0 .5rem}.settings-description{font-size:.875rem;color:#666;margin:0 0 1.5rem;line-height:1.5}.settings-form{display:flex;flex-direction:column;gap:1.5rem}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.setting-item{display:flex;flex-direction:column;gap:.5rem}.setting-item label{font-size:.875rem;font-weight:500;color:#333}.setting-item input{padding:.625rem .75rem;border:1px solid #ddd;border-radius:6px;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.setting-item input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.setting-hint{font-size:.75rem;color:#888}.settings-actions{display:flex;align-items:center;gap:1rem;padding-top:.5rem}.success-message{font-size:.875rem;color:#16a34a}.error-message{font-size:.875rem;color:#dc2626}.info-message{font-size:.875rem;color:#666}.btn-primary:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.chat-tab{display:flex;flex-direction:column;gap:1.5rem}.chat-suggestions{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.suggestion-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;cursor:pointer;transition:border-color .2s,box-shadow .2s}.suggestion-card:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea1a}.suggestion-card p{margin:0;font-size:.875rem;color:#333}.chat-container{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;height:500px}.chat-messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:1rem}.chat-message{max-width:80%;padding:.75rem 1rem;border-radius:8px;font-size:.875rem;line-height:1.5}.chat-message.user{background:#667eea;color:#fff;align-self:flex-end;border-bottom-right-radius:2px}.chat-message.assistant{background:#f3f4f6;color:#333;align-self:flex-start;border-bottom-left-radius:2px}.chat-message-visualization{margin-top:.75rem;padding:.75rem;background:#fff;border-radius:6px;overflow-x:auto}.chat-input-container{display:flex;gap:.5rem;padding:1rem;border-top:1px solid #eee}.chat-input{flex:1;padding:.75rem 1rem;border:1px solid #ddd;border-radius:8px;font-size:.875rem;resize:none}.chat-input:focus{outline:none;border-color:#667eea}.chat-send-btn{padding:.75rem 1.5rem;background:#667eea;color:#fff;border:none;border-radius:8px;font-weight:500;cursor:pointer}.chat-send-btn:hover{background:#5a6fd6}.chat-send-btn:disabled{opacity:.6;cursor:not-allowed}.predictions-tab{display:flex;flex-direction:column;gap:1.5rem}.predictions-search{display:flex;gap:.75rem}.predictions-search input{flex:1;padding:.75rem 1rem;border:1px solid #ddd;border-radius:8px;font-size:.875rem}.customer-detail-card{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;padding:1.5rem}.customer-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #eee}.customer-info h3{margin:0 0 .25rem;font-size:1.125rem;font-weight:600;color:#1a1a2e}.customer-info p{margin:0;font-size:.875rem;color:#666}.customer-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.detail-section h4{font-size:.75rem;font-weight:600;text-transform:uppercase;color:#666;margin:0 0 .75rem}.detail-value{font-size:1.5rem;font-weight:700;color:#1a1a2e}.detail-subtitle{font-size:.75rem;color:#888;margin-top:.25rem}.heatmap-container{margin-top:1.5rem}.heatmap-grid{display:grid;grid-template-columns:auto repeat(24,1fr);gap:2px;font-size:.625rem}.heatmap-header{text-align:center;color:#888;padding:.25rem}.heatmap-row-label{display:flex;align-items:center;justify-content:flex-end;padding-right:.5rem;color:#666;font-size:.6875rem}.heatmap-cell{aspect-ratio:1;border-radius:2px;min-width:16px}.heatmap-intensity-0{background:#f3f4f6}.heatmap-intensity-1{background:#dbeafe}.heatmap-intensity-2{background:#93c5fd}.heatmap-intensity-3{background:#3b82f6}.heatmap-intensity-4{background:#1d4ed8}.btn-primary:hover{background:#1f2937}.btn-secondary{background:#f5f5f5;color:#333;border:1px solid #ddd}.btn-secondary:hover{background:#e5e5e5}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state-icon{display:flex;align-items:center;justify-content:center;margin-bottom:16px;color:#9ca3af}.empty-state-title{font-size:18px;font-weight:600;color:#333;margin:0 0 8px}.empty-state-description{font-size:14px;color:#666;margin:0 0 24px}.pagination{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-top:1px solid #e0e0e0;margin-top:16px}.pagination-info{font-size:14px;color:#666}.pagination-controls{display:flex;align-items:center;gap:16px}.page-size-select{padding:6px 12px;border:1px solid #ddd;border-radius:4px;font-size:14px}.page-buttons{display:flex;align-items:center;gap:8px}.page-btn{padding:6px 12px;border:1px solid #ddd;border-radius:4px;background:#fff;cursor:pointer;font-size:14px;transition:all .2s}.page-btn:hover:not(:disabled){border-color:#667eea;color:#667eea}.page-btn:disabled{opacity:.5;cursor:not-allowed}.page-indicator{font-size:14px;color:#666;min-width:60px;text-align:center}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:12px;font-size:14px;color:#999}.search-input{width:100%;padding:8px 36px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s}.search-input:focus{outline:none;border-color:#667eea}.search-clear{position:absolute;right:8px;background:none;border:none;font-size:18px;color:#999;cursor:pointer;padding:4px}.search-clear:hover{color:#666}.status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.badge-default{background:#f0f0f0;color:#666}.badge-success{background:#dcfce7;color:#16a34a}.badge-warning{background:#fef9c3;color:#ca8a04}.badge-error{background:#fee2e2;color:#dc2626}.action-menu{position:relative}.action-menu-trigger{background:transparent;border:none;font-size:18px;cursor:pointer;padding:4px 8px;color:#666;border-radius:4px;transition:background .2s}.action-menu-trigger:hover{background:#f0f0f0}.action-menu-dropdown{position:absolute;right:0;top:100%;background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 4px 12px #0000001a;min-width:150px;z-index:100;overflow:hidden}.action-menu-item{display:block;width:100%;padding:10px 16px;border:none;background:transparent;text-align:left;font-size:14px;cursor:pointer;transition:background .2s}.action-menu-item:hover:not(:disabled){background:#f5f5f5}.action-menu-item.danger{color:#dc2626}.action-menu-item.disabled{opacity:.5;cursor:not-allowed}.data-table-container{overflow-x:auto;background:#fff;border-radius:8px;border:1px solid #e0e0e0}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #e0e0e0}.data-table th{background:#f8f9fa;font-weight:600;font-size:13px;color:#666;text-transform:uppercase;letter-spacing:.5px}.data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.data-table th.sortable:hover{background:#f0f0f0}.sort-indicator{margin-left:4px}.data-table tbody tr:hover{background:#f8f9fa}.data-table tbody tr:last-child td{border-bottom:none}.skeleton-row td{padding:16px}.skeleton{height:16px;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.copy-btn{background:transparent;border:none;cursor:pointer;padding:4px;color:#666;font-size:14px;transition:color .2s}.copy-btn:hover{color:#667eea}.copy-btn.copied{color:#16a34a}.content-page{width:100%}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.page-header h1{margin:0;font-size:24px;font-weight:600;color:#1a1a2e}.page-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:16px}.toolbar-left{display:flex;align-items:center;gap:12px}.toolbar-left .search-input-wrapper{width:300px}.status-filter{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;background:#fff;cursor:pointer}.status-filter:focus{outline:none;border-color:#667eea}.template-name{font-weight:500;color:#1a1a2e}.content-preview{color:#666;font-size:13px}.short-url-cell{display:flex;align-items:center;gap:8px}.short-url{font-family:monospace;font-size:13px;color:#667eea}.original-url{color:#666;font-size:13px}.click-count{font-weight:600;color:#1a1a2e}.btn{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-primary{background:#667eea;color:#fff}.btn-primary:hover{background:#5a6fd6}.email-editor-page{display:flex;flex-direction:column;height:100vh;background:var(--color-gray-50);overflow:hidden}.email-editor-loading{display:flex;align-items:center;justify-content:center;height:100vh;font-size:var(--font-size-lg);color:var(--color-gray-500)}.email-editor-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-4);padding:var(--spacing-4);background:var(--color-white);border-bottom:1px solid var(--color-gray-200);min-height:72px}.email-editor-header__left{display:flex;align-items:center;gap:var(--spacing-3);flex:1;max-width:400px}.email-editor-header__back{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:none;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);color:var(--color-gray-600);cursor:pointer;transition:all var(--transition-fast)}.email-editor-header__back:hover{background:var(--color-gray-50);color:var(--color-gray-900);border-color:var(--color-gray-400)}.email-editor-header__left .input-wrapper{flex:1}.email-editor-header__error{padding:var(--spacing-2) var(--spacing-3);background-color:var(--color-error-bg);color:var(--color-error);font-size:var(--font-size-sm);border-radius:var(--radius-md)}.email-editor-header__actions{display:flex;gap:var(--spacing-2)}.email-editor-container{flex:1;overflow:hidden}.email-editor-container iframe{border:none!important}.email-editor-import-modal{display:flex;flex-direction:column;gap:var(--spacing-4)}.email-editor-import-modal__description{font-size:var(--font-size-sm);color:var(--color-gray-600);margin:0}.email-editor-import-modal__upload{display:flex;justify-content:center}.email-editor-import-modal__upload-label{display:inline-flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);background:var(--color-gray-50);border:2px dashed var(--color-gray-300);border-radius:var(--radius-md);color:var(--color-gray-700);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.email-editor-import-modal__upload-label:hover{background:var(--color-gray-100);border-color:var(--color-primary);color:var(--color-primary)}.email-editor-import-modal__upload-input{display:none}.email-editor-import-modal__divider{display:flex;align-items:center;gap:var(--spacing-3);color:var(--color-gray-400);font-size:var(--font-size-sm)}.email-editor-import-modal__divider:before,.email-editor-import-modal__divider:after{content:"";flex:1;height:1px;background:var(--color-gray-200)}.email-editor-import-modal__textarea{width:100%;min-height:300px;padding:var(--spacing-3);font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:var(--font-size-sm);line-height:1.5;color:var(--color-gray-900);background:var(--color-gray-50);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);resize:vertical;transition:border-color var(--transition-fast)}.email-editor-import-modal__textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.email-editor-import-modal__textarea::placeholder{color:var(--color-gray-400)}.email-editor-import-modal__footer{display:flex;justify-content:flex-end;gap:var(--spacing-2)}.iphone-preview{transform:scale(.7);transform-origin:center}.iphone-frame{width:375px;height:812px;background:#fff;border-radius:47px;border:12px solid #1a1a1a;box-shadow:0 0 0 3px #3a3a3a,0 20px 60px #0000004d,inset 0 0 1px 1px #ffffff1a;position:relative;overflow:hidden;display:flex;flex-direction:column}.iphone-dynamic-island{position:absolute;top:12px;left:50%;transform:translate(-50%);width:126px;height:37px;background:#1a1a1a;border-radius:24px;z-index:10}.iphone-status-bar{display:flex;justify-content:space-between;align-items:center;padding:16px 28px 0;height:54px;font-size:15px;font-weight:600;color:#000;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,sans-serif}.iphone-status-bar__time{width:54px;text-align:left}.iphone-status-bar__notch-space{flex:1}.iphone-status-bar__icons{display:flex;align-items:center;gap:5px;width:70px;justify-content:flex-end}.iphone-status-bar__icons svg{color:#000}.iphone-messages-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:#f6f6f6;border-bottom:.5px solid rgba(0,0,0,.1)}.iphone-messages-header__back{display:flex;align-items:center;gap:4px;color:#007aff;font-size:17px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,sans-serif}.iphone-messages-header__title{font-size:17px;font-weight:600;color:#000;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,sans-serif}.iphone-messages-header__avatar{width:32px;height:32px;background:linear-gradient(135deg,#c7c7cc,#8e8e93);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;font-weight:600}.iphone-chat-area{flex:1;padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:8px;background:#fff}.sms-bubble{max-width:75%;padding:10px 14px;background:linear-gradient(180deg,#34c759,#30d158);color:#fff;border-radius:18px 18px 4px;font-size:16px;line-height:1.4;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,sans-serif;word-wrap:break-word;white-space:pre-wrap;align-self:flex-end;box-shadow:0 1px 2px #0000001a}.sms-bubble--empty{opacity:.5;font-style:italic}.sms-timestamp{font-size:12px;color:#8e8e93;text-align:center;margin-bottom:8px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,sans-serif}.iphone-input-bar{display:flex;align-items:center;gap:8px;padding:8px 12px 34px;background:#f6f6f6;border-top:.5px solid rgba(0,0,0,.1)}.iphone-input-bar__plus{width:32px;height:32px;background:none;border:none;color:#007aff;display:flex;align-items:center;justify-content:center}.iphone-input-bar__field{flex:1;height:36px;background:#fff;border:.5px solid rgba(0,0,0,.15);border-radius:18px;padding:0 12px;font-size:16px;color:#8e8e93;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,sans-serif;display:flex;align-items:center}.iphone-home-indicator{width:134px;height:5px;background:#000;border-radius:3px;margin:8px auto;position:absolute;bottom:8px;left:50%;transform:translate(-50%)}.sms-editor-page{display:flex;flex-direction:column;height:100vh;background:var(--color-gray-50);overflow:hidden}.sms-editor-loading{display:flex;align-items:center;justify-content:center;height:100vh;font-size:var(--font-size-lg);color:var(--color-gray-500)}.sms-editor-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-4);padding:var(--spacing-4);background:var(--color-white);border-bottom:1px solid var(--color-gray-200);min-height:72px}.sms-editor-header__left{display:flex;align-items:center;gap:var(--spacing-3);flex:1;max-width:400px}.sms-editor-header__back{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:none;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);color:var(--color-gray-600);cursor:pointer;transition:all var(--transition-fast)}.sms-editor-header__back:hover{background:var(--color-gray-50);color:var(--color-gray-900);border-color:var(--color-gray-400)}.sms-editor-header__left .input-wrapper{flex:1}.sms-editor-header__error{padding:var(--spacing-2) var(--spacing-3);background-color:var(--color-error-bg);color:var(--color-error);font-size:var(--font-size-sm);border-radius:var(--radius-md)}.sms-editor-header__actions{display:flex;gap:var(--spacing-2)}.sms-editor-container{display:flex;flex:1;overflow:hidden}.sms-editor-left{flex:1;padding:var(--spacing-6);overflow-y:auto;display:flex;flex-direction:column;gap:var(--spacing-4);background:var(--color-white);border-right:1px solid var(--color-gray-200)}.sms-editor-field{display:flex;flex-direction:column;gap:var(--spacing-2)}.sms-editor-label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700)}.sms-editor-textarea{width:100%;min-height:300px;padding:var(--spacing-3);font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:1.6;color:var(--color-gray-900);background:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);resize:vertical;transition:border-color var(--transition-fast)}.sms-editor-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.sms-editor-textarea::placeholder{color:var(--color-gray-400)}.sms-editor-counter{display:flex;justify-content:flex-end}.sms-editor-info{display:flex;align-items:flex-start;gap:var(--spacing-2);padding:var(--spacing-3);background:var(--color-info-bg);border-radius:var(--radius-md);color:var(--color-info);font-size:var(--font-size-sm);line-height:1.5}.sms-editor-info svg{flex-shrink:0;margin-top:2px}.sms-editor-right{flex:1;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f5f7fa,#e4e8eb);min-width:400px}.shorten-links-modal__description{font-size:var(--font-size-sm);color:var(--color-gray-600);margin:0 0 var(--spacing-4)}.shorten-links-modal__list{display:flex;flex-direction:column;gap:var(--spacing-3);margin-bottom:var(--spacing-4)}.shorten-links-modal__item{display:flex;align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-3);background:var(--color-gray-50);border-radius:var(--radius-md)}.shorten-links-modal__item input[type=checkbox]{margin-top:4px;flex-shrink:0}.shorten-links-modal__url{font-size:var(--font-size-sm);color:var(--color-gray-700);word-break:break-all;flex:1}.shorten-links-modal__no-urls{padding:var(--spacing-4);text-align:center;color:var(--color-gray-500);font-size:var(--font-size-sm);background:var(--color-gray-50);border-radius:var(--radius-md)}.shorten-links-modal__footer{display:flex;justify-content:flex-end;gap:var(--spacing-2)}.push-preview{display:flex;align-items:center;justify-content:center;padding:var(--spacing-4)}.push-preview-frame{position:relative;width:300px;height:620px;background:linear-gradient(180deg,#1a1a2e,#16213e,#0f0f1a);border-radius:44px;padding:12px;box-shadow:0 0 0 2px #2a2a3e,0 0 0 6px #1a1a2e,0 25px 50px -12px #00000080;overflow:hidden}.push-preview-dynamic-island{position:absolute;top:16px;left:50%;transform:translate(-50%);width:100px;height:28px;background:#000;border-radius:20px;z-index:10}.push-preview-status-bar{display:flex;justify-content:space-between;align-items:center;padding:16px 24px 8px;color:#fff;font-size:14px;font-weight:500}.push-preview-status-bar__time{font-variant-numeric:tabular-nums}.push-preview-status-bar__notch-space{width:120px}.push-preview-status-bar__icons{display:flex;align-items:center;gap:5px}.push-preview-status-bar__icons svg{opacity:.9}.push-preview-lockscreen{flex:1;display:flex;flex-direction:column;padding:var(--spacing-4);padding-top:100px}.push-notification-card{background:#ffffffe6;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:16px;padding:12px;box-shadow:0 2px 8px #00000026}.push-notification-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.push-notification-app-icon{width:20px;height:20px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:4px;display:flex;align-items:center;justify-content:center;color:#fff}.push-notification-app-icon svg{width:12px;height:12px}.push-notification-app-name{font-size:12px;font-weight:500;color:#6b7280;flex:1}.push-notification-timestamp{font-size:11px;color:#9ca3af}.push-notification-content{display:flex;gap:10px}.push-notification-text{flex:1;min-width:0}.push-notification-title{font-size:14px;font-weight:600;color:#111827;line-height:1.3;margin-bottom:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.push-notification-body{font-size:13px;color:#4b5563;line-height:1.4;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.push-notification-image{width:44px;height:44px;border-radius:8px;overflow:hidden;flex-shrink:0}.push-notification-image img{width:100%;height:100%;object-fit:cover}.push-preview-home-indicator{position:absolute;bottom:8px;left:50%;transform:translate(-50%);width:120px;height:4px;background:#fff9;border-radius:2px}.push-editor-page{display:flex;flex-direction:column;height:100vh;background:var(--color-gray-50);overflow:hidden}.push-editor-loading{display:flex;align-items:center;justify-content:center;height:100vh;font-size:var(--font-size-lg);color:var(--color-gray-500)}.push-editor-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-4);padding:var(--spacing-4);background:var(--color-white);border-bottom:1px solid var(--color-gray-200);min-height:72px}.push-editor-header__left{display:flex;align-items:center;gap:var(--spacing-3);flex:1;max-width:400px}.push-editor-header__back{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:none;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);color:var(--color-gray-600);cursor:pointer;transition:all var(--transition-fast)}.push-editor-header__back:hover{background:var(--color-gray-50);color:var(--color-gray-900);border-color:var(--color-gray-400)}.push-editor-header__left .input-wrapper{flex:1}.push-editor-header__error{padding:var(--spacing-2) var(--spacing-3);background-color:var(--color-error-bg);color:var(--color-error);font-size:var(--font-size-sm);border-radius:var(--radius-md)}.push-editor-header__actions{display:flex;gap:var(--spacing-2)}.push-editor-container{display:flex;flex:1;overflow:hidden}.push-editor-left{flex:1;padding:var(--spacing-6);overflow-y:auto;display:flex;flex-direction:column;gap:var(--spacing-5);background:var(--color-white);border-right:1px solid var(--color-gray-200)}.push-editor-field{display:flex;flex-direction:column;gap:var(--spacing-2)}.push-editor-label{font-size:var(--font-size-sm);font-weight:500;color:var(--color-gray-700)}.push-editor-hint{font-size:var(--font-size-xs);color:var(--color-gray-500)}.push-editor-textarea{width:100%;min-height:180px;padding:var(--spacing-3);font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:1.6;color:var(--color-gray-900);background:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);resize:vertical;transition:border-color var(--transition-fast)}.push-editor-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.push-editor-textarea::placeholder{color:var(--color-gray-400)}.push-editor-right{flex:1;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f5f7fa,#e4e8eb);min-width:400px}.push-modal-description{font-size:var(--font-size-sm);color:var(--color-gray-600);margin:0 0 var(--spacing-4)}.push-modal-list{display:flex;flex-direction:column;gap:var(--spacing-3);margin-bottom:var(--spacing-4)}.push-modal-item{display:flex;align-items:flex-start;gap:var(--spacing-3);padding:var(--spacing-3);background:var(--color-gray-50);border-radius:var(--radius-md)}.push-modal-item input[type=checkbox]{margin-top:4px;flex-shrink:0}.push-modal-url{font-size:var(--font-size-sm);color:var(--color-gray-700);word-break:break-all;flex:1}.push-modal-empty{padding:var(--spacing-4);text-align:center;color:var(--color-gray-500);font-size:var(--font-size-sm);background:var(--color-gray-50);border-radius:var(--radius-md)}.push-modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-2)}.push-test-result{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3);border-radius:var(--radius-md);font-size:var(--font-size-sm);margin-top:var(--spacing-4)}.push-test-result--success{background:var(--color-success-bg);color:var(--color-success)}.push-test-result--error{background:var(--color-error-bg);color:var(--color-error)}.link-form{display:flex;flex-direction:column;gap:var(--spacing-4)}.link-form__error{padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-error-bg);color:var(--color-error);font-size:var(--font-size-sm);border-radius:var(--radius-md)}.link-form__field{display:flex;flex-direction:column;gap:var(--spacing-1)}.link-form__hint{font-size:var(--font-size-xs);color:var(--color-gray-500);margin-top:var(--spacing-1)}.link-form__toggle{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) 0;background:none;border:none;color:var(--color-gray-600);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:color var(--transition-fast)}.link-form__toggle:hover{color:var(--color-gray-900)}.link-form__toggle-icon{transition:transform var(--transition-fast)}.link-form__toggle-icon--open{transform:rotate(180deg)}.link-form__advanced{display:flex;flex-direction:column;gap:var(--spacing-4);padding:var(--spacing-4);background-color:var(--color-gray-50);border-radius:var(--radius-md);border:1px solid var(--color-gray-200)}.link-form__actions{display:flex;justify-content:flex-end;gap:var(--spacing-3);padding-top:var(--spacing-4);border-top:1px solid var(--color-gray-200)}.snippet-name{font-weight:500;color:#1a1a2e}.snippet-name-link{font-weight:500;color:#1a1a2e;background:none;border:none;padding:0;cursor:pointer;text-align:left;transition:color .15s}.snippet-name-link:hover{color:#667eea}.snippet-key{font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:12px;color:#667eea;background:#f0f1ff;padding:4px 8px;border-radius:4px}.snippet-value-preview{color:#666;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px;display:block}.snippet-form{display:flex;flex-direction:column;gap:16px}.form-error{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:12px;border-radius:6px;font-size:14px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:8px}.label-hint{font-weight:400;font-size:12px;color:#9ca3af}.form-group input,.form-group textarea{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled{background:#f3f4f6;color:#6b7280;cursor:not-allowed}.form-group textarea{resize:vertical;min-height:100px;font-family:inherit}.field-hint{font-size:12px;color:#9ca3af}.snippet-editor-page{display:flex;flex-direction:column;height:100%;background:#fff;overflow:hidden}.snippet-editor-loading{display:flex;align-items:center;justify-content:center;height:100%;font-size:16px;color:#6b7280}.snippet-editor-breadcrumb{display:flex;align-items:center;gap:8px;padding:16px 24px;font-size:14px;border-bottom:1px solid #e5e7eb}.snippet-editor-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;border-bottom:1px solid #e5e7eb}.snippet-editor-header__left{display:flex;align-items:center;gap:12px}.snippet-editor-header__back{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .15s}.snippet-editor-header__back:hover{background:#f3f4f6;color:#111827;border-color:#d1d5db}.snippet-editor-title{font-size:18px;font-weight:600;color:#111827}.snippet-editor-header__actions{display:flex;align-items:center;gap:12px}.snippet-editor-header__error{padding:8px 12px;background-color:#fef2f2;color:#dc2626;font-size:13px;border-radius:6px}.snippet-editor-content{display:flex;flex:1;overflow:hidden}.snippet-editor-main{flex:1;padding:24px;overflow-y:auto;display:flex;flex-direction:column;gap:20px}.snippet-editor-row{display:flex;gap:24px}.snippet-editor-row .snippet-editor-field{flex:1}.snippet-editor-field{display:flex;flex-direction:column;gap:8px}.snippet-editor-field--full{flex:1;min-height:0}.snippet-editor-label{font-size:14px;font-weight:500;color:#374151}.snippet-editor-label-row{display:flex;justify-content:space-between;align-items:center}.snippet-editor-label-hint{font-size:13px;color:#9ca3af}.snippet-editor-input{padding:10px 12px;font-size:14px;color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:8px;transition:border-color .15s,box-shadow .15s}.snippet-editor-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.snippet-editor-input:disabled{background:#f9fafb;color:#6b7280;cursor:not-allowed}.snippet-editor-input::placeholder{color:#9ca3af}.editor-container{display:flex;flex:1;min-height:300px;background:#1e1e1e;border-radius:8px;overflow:hidden;font-family:SF Mono,Monaco,Inconsolata,Fira Code,Consolas,monospace;font-size:14px;line-height:1.6}.editor-line-numbers{display:flex;flex-direction:column;padding:12px 0;background:#252526;color:#858585;text-align:right;-webkit-user-select:none;user-select:none;overflow:hidden;min-width:50px}.editor-line-number{padding:0 12px;height:22.4px;display:flex;align-items:center;justify-content:flex-end}.editor-textarea{flex:1;padding:12px 16px;margin:0;background:transparent;color:#d4d4d4;border:none;outline:none;resize:none;font-family:inherit;font-size:inherit;line-height:inherit;overflow-y:auto}.editor-textarea::placeholder{color:#6b6b6b}.editor-textarea::-webkit-scrollbar{width:14px}.editor-textarea::-webkit-scrollbar-track{background:#1e1e1e}.editor-textarea::-webkit-scrollbar-thumb{background:#424242;border:3px solid #1e1e1e;border-radius:7px}.editor-textarea::-webkit-scrollbar-thumb:hover{background:#4f4f4f}.snippet-editor-preview{width:50%;min-width:400px;display:flex;flex-direction:column;background:#f9fafb;border-left:1px solid #e5e7eb}.snippet-editor-preview__header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #e5e7eb;background:#fff;font-weight:500;color:#374151}.snippet-editor-preview__live{font-size:13px;font-weight:400;color:#9ca3af}.snippet-editor-preview__content{flex:1;padding:24px;overflow-y:auto;font-size:14px;line-height:1.6;color:#111827;white-space:pre-wrap;word-break:break-word}.snippet-editor-preview__placeholder{color:#9ca3af;font-style:normal}.layout-name-cell{display:flex;align-items:center;gap:8px}.layout-name-link{font-weight:500;color:#1a1a2e;background:none;border:none;padding:0;cursor:pointer;text-align:left;transition:color .15s}.layout-name-link:hover{color:#667eea}.layout-default-badge{display:inline-flex;align-items:center;padding:2px 8px;font-size:11px;font-weight:500;color:#667eea;background:#f0f1ff;border-radius:10px;text-transform:uppercase;letter-spacing:.5px}.layout-description{color:#6b7280;font-size:14px;max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.layout-editor-page{display:flex;flex-direction:column;height:100%;background:#fff;overflow:hidden}.layout-editor-loading{display:flex;align-items:center;justify-content:center;height:100%;font-size:16px;color:#6b7280}.layout-editor-breadcrumb{display:flex;align-items:center;gap:8px;padding:16px 24px;font-size:14px;border-bottom:1px solid #e5e7eb}.breadcrumb-link{color:#6b7280;text-decoration:none;transition:color .15s}.breadcrumb-link:hover{color:#111827}.breadcrumb-separator{color:#d1d5db}.breadcrumb-current{color:#111827}.layout-picker-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px;border-bottom:1px solid #e5e7eb}.layout-picker-header__left{display:flex;flex-direction:column;gap:4px}.layout-picker-title{font-size:24px;font-weight:600;color:#111827;margin:0}.layout-picker-subtitle{font-size:14px;color:#6b7280;margin:0}.layout-picker-content{flex:1;padding:24px;overflow-y:auto}.layout-picker-loading{display:flex;align-items:center;justify-content:center;height:200px;color:#6b7280}.layout-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}.layout-starter-card{display:flex;flex-direction:column;background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;cursor:pointer;transition:border-color .15s,box-shadow .15s}.layout-starter-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea1a}.layout-starter-card__preview{display:flex;align-items:center;justify-content:center;height:160px;background:#f9fafb;border-bottom:1px solid #e5e7eb;position:relative}.layout-starter-card__preview--scratch{background:#fff}.layout-starter-card__preview--scratch svg{color:#9ca3af}.layout-starter-card:hover .layout-starter-card__preview--scratch svg{color:#667eea}.layout-starter-card__category{font-size:14px;color:#9ca3af}.layout-starter-card__info{padding:16px}.layout-starter-card__name{font-size:16px;font-weight:600;color:#111827;margin:0 0 4px}.layout-starter-card__description{font-size:13px;color:#6b7280;margin:0;line-height:1.4}.layout-editor-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 24px;border-bottom:1px solid #e5e7eb}.layout-editor-header__left{display:flex;align-items:center;gap:12px;flex:1}.layout-editor-header__back{display:flex;align-items:center;gap:6px;padding:8px 12px;background:none;border:1px solid #e5e7eb;border-radius:6px;color:#6b7280;font-size:14px;cursor:pointer;transition:all .15s}.layout-editor-header__back:hover{background:#f3f4f6;color:#111827;border-color:#d1d5db}.layout-editor-name-input{flex:1;max-width:300px;padding:8px 12px;font-size:16px;font-weight:500;color:#111827;background:#fff;border:1px solid transparent;border-radius:6px;transition:border-color .15s,background-color .15s}.layout-editor-name-input:hover{background:#f9fafb}.layout-editor-name-input:focus{outline:none;border-color:#667eea;background:#fff}.layout-editor-header__right{display:flex;align-items:center;gap:12px}.layout-editor-header__error{padding:8px 12px;background-color:#fef2f2;color:#dc2626;font-size:13px;border-radius:6px}.layout-editor-content{display:flex;flex:1;overflow:hidden}.layout-editor-main{flex:1;display:flex;flex-direction:column;padding:24px;overflow-y:auto;gap:16px}.layout-editor-section{display:flex;flex-direction:column;flex:1;min-height:0}.layout-editor-section__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.layout-editor-section__title{font-size:14px;font-weight:500;color:#374151}.layout-editor-section__hint{font-size:13px;color:#9ca3af}.layout-editor-code-container{display:flex;flex:1;min-height:300px;background:#1e1e1e;border-radius:8px;overflow:hidden;font-family:SF Mono,Monaco,Inconsolata,Fira Code,Consolas,monospace;font-size:14px;line-height:1.6}.layout-editor-line-numbers{display:flex;flex-direction:column;padding:12px 0;background:#252526;color:#858585;text-align:right;-webkit-user-select:none;user-select:none;overflow:hidden;min-width:50px}.layout-editor-line-number{padding:0 12px;height:22.4px;display:flex;align-items:center;justify-content:flex-end}.layout-editor-textarea{flex:1;padding:12px 16px;margin:0;background:transparent;color:#d4d4d4;border:none;outline:none;resize:none;font-family:inherit;font-size:inherit;line-height:inherit;overflow-y:auto}.layout-editor-textarea::placeholder{color:#6b6b6b}.layout-editor-textarea::-webkit-scrollbar{width:14px}.layout-editor-textarea::-webkit-scrollbar-track{background:#1e1e1e}.layout-editor-textarea::-webkit-scrollbar-thumb{background:#424242;border:3px solid #1e1e1e;border-radius:7px}.layout-editor-textarea::-webkit-scrollbar-thumb:hover{background:#4f4f4f}.layout-editor-variables{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.layout-editor-variables__label{font-size:13px;color:#6b7280}.layout-editor-variables__list{display:flex;flex-wrap:wrap;gap:8px}.layout-editor-variable-chip{display:inline-flex;align-items:center;padding:6px 12px;font-size:13px;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;color:#374151;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .15s}.layout-editor-variable-chip:hover{background:#e5e7eb;border-color:#d1d5db}.layout-editor-description{display:flex;flex-direction:column;gap:6px}.layout-editor-description__label{font-size:13px;color:#6b7280}.layout-editor-description__input{padding:10px 12px;font-size:14px;color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:6px;transition:border-color .15s,box-shadow .15s}.layout-editor-description__input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.layout-editor-description__input::placeholder{color:#9ca3af}.layout-editor-preview{width:50%;min-width:400px;display:flex;flex-direction:column;background:#f9fafb;border-left:1px solid #e5e7eb}.layout-editor-preview__header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #e5e7eb;background:#fff;font-weight:500;color:#374151}.layout-editor-preview__live{font-size:13px;font-weight:400;color:#9ca3af}.layout-editor-preview__content{flex:1;padding:24px;overflow:auto}.layout-editor-preview__iframe{width:100%;height:100%;min-height:500px;background:#fff;border:1px solid #e5e7eb;border-radius:8px}.sidebar{display:flex;flex-direction:column;width:var(--sidebar-width);height:100vh;background-color:var(--color-white);border-right:1px solid var(--color-gray-200);position:sticky;top:0;flex-shrink:0;transition:width var(--transition-normal)}.sidebar--collapsed{width:var(--sidebar-collapsed-width)}.sidebar__header{padding:var(--spacing-1);padding-top:var(--spacing-1);padding-left:calc(var(--spacing-2) + var(--spacing-3))}.sidebar__logo{display:flex;align-items:center;gap:var(--spacing-3)}.sidebar__logo-icon{display:flex;align-items:center;justify-content:center;width:50px;height:50px;color:var(--color-gray-900);flex-shrink:0}.sidebar__logo-text{font-size:1rem;font-weight:var(--font-weight-semibold);color:var(--color-gray-900);white-space:nowrap}.sidebar__nav{flex:1;overflow-y:auto;padding:0 var(--spacing-2)}.sidebar__item{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-2) var(--spacing-3);color:var(--color-gray-600);font-family:var(--font-family);font-size:var(--font-size-sm);text-decoration:none;border-radius:var(--radius-md);transition:all var(--transition-fast);margin-bottom:var(--spacing-1)}.sidebar__item:hover{background-color:var(--color-gray-100);color:var(--color-gray-900)}.sidebar__item--active{background-color:var(--color-gray-100);color:var(--color-gray-900);font-weight:var(--font-weight-medium)}.sidebar__item-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.sidebar__item-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:var(--font-weight-medium)}.sidebar__group{margin-bottom:var(--spacing-1)}.sidebar__group-header{display:flex;align-items:center;gap:var(--spacing-3);width:100%;padding:var(--spacing-2) var(--spacing-3);background-color:transparent;border:none;border-radius:var(--radius-md);color:var(--color-gray-600);font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.sidebar__group-header:hover{background-color:var(--color-gray-100);color:var(--color-gray-900)}.sidebar__group-header--active{color:var(--color-gray-900)}.sidebar__group-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.sidebar__group-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:var(--font-weight-medium)}.sidebar__group-chevron{display:flex;align-items:center;justify-content:center;color:var(--color-gray-400);transition:transform var(--transition-fast)}.sidebar__group-chevron--open{transform:rotate(180deg)}.sidebar__group-items{margin-top:var(--spacing-1);padding-left:calc(var(--spacing-3) + 20px + var(--spacing-3))}.sidebar__subitem{display:flex;align-items:center;padding:var(--spacing-2) var(--spacing-3);color:var(--color-gray-600);font-family:var(--font-family);font-size:var(--font-size-sm);text-decoration:none;border-radius:var(--radius-md);transition:all var(--transition-fast)}.sidebar__subitem:hover{background-color:var(--color-gray-100);color:var(--color-gray-900)}.sidebar__subitem--active{background-color:var(--color-gray-100);color:var(--color-gray-900);font-weight:var(--font-weight-medium)}.sidebar__subitem-label{flex:1;font-weight:var(--font-weight-medium)}.sidebar__footer{display:flex;flex-direction:column;gap:var(--spacing-2);padding:var(--spacing-3);border-top:1px solid var(--color-gray-200)}.sidebar__toggle{display:flex;align-items:center;justify-content:flex-end;width:100%;padding:var(--spacing-2);padding-right:var(--spacing-3);background-color:transparent;border:none;border-radius:var(--radius-md);color:var(--color-gray-400);cursor:pointer;transition:all var(--transition-fast)}.sidebar__toggle:hover{background-color:var(--color-gray-100);color:var(--color-gray-600)}.sidebar__user-menu{position:relative}.sidebar__user-trigger{display:flex;align-items:center;gap:var(--spacing-2);width:100%;padding:var(--spacing-2);background:transparent;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.sidebar__user-trigger:hover{background:var(--color-gray-100)}.sidebar__user-avatar{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background-color:var(--color-gray-200);color:var(--color-gray-700);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);border-radius:var(--radius-full);flex-shrink:0}.sidebar__user-name{flex:1;font-size:var(--font-size-sm);color:var(--color-gray-700);font-weight:var(--font-weight-medium);text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar__user-dropdown{position:absolute;bottom:calc(100% + var(--spacing-1));left:0;right:0;background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--spacing-1);z-index:100}.sidebar__user-dropdown--collapsed{left:calc(100% + var(--spacing-1));bottom:0;right:auto;min-width:180px}.sidebar__user-item{display:flex;align-items:center;gap:var(--spacing-2);width:100%;padding:var(--spacing-2) var(--spacing-3);background:transparent;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-gray-700);cursor:pointer;transition:background var(--transition-fast);text-decoration:none}.sidebar__user-item:hover{background:var(--color-gray-100)}.sidebar__user-item--logout{color:var(--color-red-600)}.sidebar__user-item--logout:hover{background:var(--color-red-50)}.sidebar--collapsed .sidebar__logo-text{display:none}.sidebar--collapsed .sidebar__item{justify-content:center;padding:var(--spacing-2)}.sidebar--collapsed .sidebar__item-label{display:none}.sidebar--collapsed .sidebar__group-header{justify-content:center;padding:var(--spacing-2)}.sidebar--collapsed .sidebar__group-label,.sidebar--collapsed .sidebar__group-chevron,.sidebar--collapsed .sidebar__group-items{display:none}.sidebar--collapsed .sidebar__user-trigger{justify-content:center}.sidebar--collapsed .sidebar__user-name{display:none}.sidebar--collapsed .sidebar__header{padding:var(--spacing-3);display:flex;justify-content:center}.sidebar--collapsed .sidebar__logo{justify-content:center}.app-layout{display:flex;min-height:100vh;background-color:var(--color-gray-50)}.app-main{flex:1;display:flex;flex-direction:column;min-width:0}.app-content{flex:1;padding:var(--spacing-6);overflow-y:auto}@media(max-width:768px){.app-layout{flex-direction:column}.app-content{padding:var(--spacing-4)}}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-4);margin-bottom:var(--spacing-6)}.page-header__content{flex:1;min-width:0}.page-header__back{display:inline-flex;align-items:center;gap:var(--spacing-2);margin-bottom:var(--spacing-2);font-size:var(--font-size-sm);color:var(--color-gray-500);text-decoration:none;transition:color var(--transition-fast)}.page-header__back:hover{color:var(--color-gray-700)}.page-header__title{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}.page-header__description{margin:var(--spacing-1) 0 0;font-size:var(--font-size-sm);color:var(--color-gray-500)}.page-header__actions{display:flex;align-items:center;gap:var(--spacing-3);flex-shrink:0}@media(max-width:640px){.page-header{flex-direction:column;align-items:stretch}.page-header__actions{flex-wrap:wrap}}.person-form{display:flex;flex-direction:column;gap:var(--spacing-6)}.person-form__error{padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-error-bg);color:var(--color-error);font-size:var(--font-size-sm);border-radius:var(--radius-md)}.person-form__section{display:flex;flex-direction:column;gap:var(--spacing-4)}.person-form__section-title{margin:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}.person-form__section-description{margin:calc(-1 * var(--spacing-2)) 0 0;font-size:var(--font-size-xs);color:var(--color-gray-500)}.person-form__field{flex:1}.person-form__row{display:flex;gap:var(--spacing-4)}.person-form__actions{display:flex;justify-content:flex-end;gap:var(--spacing-3);padding-top:var(--spacing-4);border-top:1px solid var(--color-gray-200)}.upload-step__dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;padding:var(--spacing-8);border:2px dashed var(--color-gray-300);border-radius:var(--radius-lg);background-color:var(--color-gray-50);cursor:pointer;transition:all var(--transition-fast)}.upload-step__dropzone:hover{border-color:var(--color-gray-400);background-color:var(--color-gray-100)}.upload-step__dropzone--dragging{border-color:var(--color-primary);background-color:var(--color-primary-light)}.upload-step__dropzone--has-file{border-style:solid;border-color:var(--color-success);background-color:var(--color-success-bg)}.upload-step__input{display:none}.upload-step__placeholder{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-3);color:var(--color-gray-400);text-align:center}.upload-step__placeholder-text{margin:0;font-size:var(--font-size-sm);color:var(--color-gray-600)}.upload-step__placeholder-hint{margin:0;font-size:var(--font-size-xs);color:var(--color-gray-400)}.upload-step__file{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-2);color:var(--color-success)}.upload-step__file-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-900)}.upload-step__file-size{font-size:var(--font-size-xs);color:var(--color-gray-500)}.upload-step__error{margin-top:var(--spacing-4);padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-error-bg);color:var(--color-error);font-size:var(--font-size-sm);border-radius:var(--radius-md)}.preview-step__info{display:flex;gap:var(--spacing-6);margin-bottom:var(--spacing-6);padding:var(--spacing-4);background-color:var(--color-gray-50);border-radius:var(--radius-md)}.preview-step__info-item{display:flex;flex-direction:column;gap:var(--spacing-1)}.preview-step__info-label{font-size:var(--font-size-xs);color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.05em}.preview-step__info-value{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}.preview-step__table-wrapper{overflow-x:auto;border:1px solid var(--color-gray-200);border-radius:var(--radius-md)}.preview-step__table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.preview-step__table th,.preview-step__table td{padding:var(--spacing-2) var(--spacing-3);text-align:left;border-bottom:1px solid var(--color-gray-200);white-space:nowrap}.preview-step__table th{background-color:var(--color-gray-50);font-weight:var(--font-weight-medium);color:var(--color-gray-700)}.preview-step__table tr:last-child td{border-bottom:none}.preview-step__hint{margin-top:var(--spacing-3);font-size:var(--font-size-xs);color:var(--color-gray-500);text-align:center}.mapping-step__description{margin:0 0 var(--spacing-6);font-size:var(--font-size-sm);color:var(--color-gray-600)}.mapping-step__list{display:flex;flex-direction:column;gap:var(--spacing-3)}.mapping-step__row{display:flex;align-items:center;gap:var(--spacing-4)}.mapping-step__header{flex:1;padding:var(--spacing-2) var(--spacing-3);background-color:var(--color-gray-100);border-radius:var(--radius-md)}.mapping-step__header-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-700)}.mapping-step__arrow{color:var(--color-gray-400);flex-shrink:0}.mapping-step__field{flex:1}.mapping-step__field .select-wrapper{width:100%}.mapping-step__warning{display:flex;align-items:center;gap:var(--spacing-2);margin-top:var(--spacing-4);padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-warning-bg);color:var(--color-warning);font-size:var(--font-size-sm);border-radius:var(--radius-md)}.confirm-step{display:flex;flex-direction:column;align-items:center;text-align:center}.confirm-step__icon{margin-bottom:var(--spacing-4);color:var(--color-success)}.confirm-step__icon svg{width:48px;height:48px}.confirm-step__title{margin:0 0 var(--spacing-6);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}.confirm-step__stats{display:flex;gap:var(--spacing-6);margin-bottom:var(--spacing-6)}.confirm-step__stat{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-1);padding:var(--spacing-4);background-color:var(--color-gray-50);border-radius:var(--radius-md);min-width:80px}.confirm-step__stat--success{background-color:var(--color-success-bg)}.confirm-step__stat--info{background-color:var(--color-info-bg)}.confirm-step__stat--warning{background-color:var(--color-warning-bg)}.confirm-step__stat-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900)}.confirm-step__stat-label{font-size:var(--font-size-xs);color:var(--color-gray-500)}.confirm-step__errors{width:100%;margin-top:var(--spacing-6);text-align:left}.confirm-step__errors-title{margin:0 0 var(--spacing-3);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}.confirm-step__errors-list{display:flex;flex-direction:column;gap:var(--spacing-2);padding:var(--spacing-4);background-color:var(--color-error-bg);border-radius:var(--radius-md);max-height:200px;overflow-y:auto}.confirm-step__error-item{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);color:var(--color-gray-700)}.confirm-step__errors-more{font-size:var(--font-size-sm);color:var(--color-gray-500);font-style:italic}.csv-wizard__steps{display:flex;align-items:center;justify-content:center;padding:var(--spacing-4) 0;margin-bottom:var(--spacing-6);border-bottom:1px solid var(--color-gray-200)}.csv-wizard__step{display:flex;align-items:center;gap:var(--spacing-2);position:relative}.csv-wizard__step-indicator{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-full);background-color:var(--color-gray-200);color:var(--color-gray-500);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);flex-shrink:0}.csv-wizard__step--active .csv-wizard__step-indicator{background-color:var(--color-black);color:var(--color-white)}.csv-wizard__step--completed .csv-wizard__step-indicator{background-color:var(--color-success);color:var(--color-white)}.csv-wizard__step-label{font-size:var(--font-size-sm);color:var(--color-gray-500)}.csv-wizard__step--active .csv-wizard__step-label{color:var(--color-gray-900);font-weight:var(--font-weight-medium)}.csv-wizard__step--completed .csv-wizard__step-label{color:var(--color-gray-700)}.csv-wizard__step-connector{width:32px;height:2px;background-color:var(--color-gray-200);margin:0 var(--spacing-3)}.csv-wizard__step--completed+.csv-wizard__step .csv-wizard__step-connector,.csv-wizard__step--completed .csv-wizard__step-connector{background-color:var(--color-success)}.csv-wizard__content{min-height:300px}.csv-wizard__actions{display:flex;justify-content:space-between;gap:var(--spacing-3);margin-top:var(--spacing-6);padding-top:var(--spacing-4);border-top:1px solid var(--color-gray-200)}.csv-wizard__actions--end{justify-content:flex-end}.duplicates-modal{display:flex;flex-direction:column;gap:16px;min-height:400px}.duplicates-modal__toolbar{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid var(--color-border)}.duplicates-modal__filter{display:flex;align-items:center;gap:8px}.duplicates-modal__filter-label{font-size:14px;color:var(--color-text-secondary)}.duplicates-modal__filter-select{padding:6px 12px;font-size:14px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-background);color:var(--color-text-primary);cursor:pointer}.duplicates-modal__loading,.duplicates-modal__error,.duplicates-modal__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px;color:var(--color-text-secondary);text-align:center}.duplicates-modal__spinner{width:32px;height:32px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.duplicates-modal__empty svg{color:var(--color-success)}.duplicates-modal__empty span{font-size:13px;color:var(--color-text-tertiary)}.duplicates-modal__summary{font-size:14px;color:var(--color-text-secondary);margin:0 0 16px}.duplicates-modal__list{display:flex;flex-direction:column;gap:12px}.duplicate-group{padding:16px;background:var(--color-background-subtle);border:1px solid var(--color-border);border-radius:8px}.duplicate-group__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.duplicate-group__match{display:flex;align-items:center;gap:8px}.duplicate-group__match-value{font-weight:500;color:var(--color-text-primary)}.duplicate-group__count{font-size:13px;color:var(--color-text-tertiary)}.duplicate-group__customers{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.duplicate-group__customer{display:flex;flex-direction:column;gap:2px;padding:8px;background:var(--color-background);border-radius:4px}.duplicate-group__customer-name{font-size:14px;font-weight:500;color:var(--color-text-primary)}.duplicate-group__customer-meta{font-size:12px;color:var(--color-text-tertiary)}.duplicate-group__more{font-size:13px;color:var(--color-text-tertiary);text-align:center;padding:4px}.duplicate-group__actions{display:flex;justify-content:flex-end}.merge-wizard{display:flex;flex-direction:column;gap:20px}.merge-wizard__header{text-align:center}.merge-wizard__title{margin:0 0 8px;font-size:18px;font-weight:600;color:var(--color-text-primary)}.merge-wizard__subtitle{margin:0;font-size:14px;color:var(--color-text-secondary)}.merge-wizard__customers{display:flex;flex-direction:column;gap:12px}.merge-wizard__customer{padding:16px;background:var(--color-background-subtle);border:2px solid var(--color-border);border-radius:8px;cursor:pointer;transition:all .15s}.merge-wizard__customer:hover{border-color:var(--color-border-hover)}.merge-wizard__customer--primary{border-color:var(--color-primary);background:var(--color-primary-light)}.merge-wizard__customer-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.merge-wizard__customer-header input[type=radio]{width:18px;height:18px;cursor:pointer}.merge-wizard__customer-info{display:flex;align-items:center;gap:8px}.merge-wizard__customer-name{font-size:16px;font-weight:500;color:var(--color-text-primary)}.merge-wizard__customer-details{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding-left:30px}.merge-wizard__detail{display:flex;flex-direction:column;gap:2px}.merge-wizard__detail-label{font-size:11px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.5px}.merge-wizard__detail-value{font-size:13px;color:var(--color-text-primary)}.merge-wizard__preview{padding:16px;background:var(--color-warning-light);border:1px solid var(--color-warning);border-radius:8px}.merge-wizard__preview-title{margin:0 0 8px;font-size:14px;font-weight:600;color:var(--color-warning-dark)}.merge-wizard__preview-text{margin:0 0 12px;font-size:14px;color:var(--color-text-primary)}.merge-wizard__preview-list{margin:0;padding-left:20px;font-size:13px;color:var(--color-text-secondary)}.merge-wizard__preview-list li{margin-bottom:4px}.merge-wizard__actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid var(--color-border)}.merge-wizard__error{padding:12px 16px;font-size:13px;color:var(--color-danger);background:var(--color-danger-light);border-radius:6px;text-align:center}.people-page{display:flex;flex-direction:column;gap:var(--spacing-6)}.people-toolbar{display:flex;align-items:center;gap:var(--spacing-4)}.people-toolbar .search-input{flex:1;max-width:400px}.people-toolbar .select-wrapper{width:180px}.people-table-container{background-color:var(--color-white);border-radius:var(--radius-lg);overflow:hidden}.people-table__email{color:var(--color-gray-900);font-weight:var(--font-weight-medium)}.people-table__segments{display:flex;flex-wrap:wrap;gap:var(--spacing-1)}.people-table__no-segments{color:var(--color-gray-400)}.people-table__actions-trigger{display:flex;align-items:center;justify-content:center;width:28px;height:28px;color:var(--color-gray-400);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast)}.people-table__actions-trigger:hover{background-color:var(--color-gray-100);color:var(--color-gray-600)}@media(max-width:768px){.people-toolbar{flex-direction:column;align-items:stretch}.people-toolbar .search-input{max-width:none}.people-toolbar .select-wrapper{width:100%}}.event-timeline{display:flex;flex-direction:column}.event-timeline--loading,.event-timeline--error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;color:var(--color-text-secondary)}.event-timeline__spinner{width:32px;height:32px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.event-timeline__spinner--small{width:20px;height:20px}.event-timeline__toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--color-background-subtle);border-bottom:1px solid var(--color-border)}.event-timeline__stats{font-size:14px;color:var(--color-text-secondary)}.event-timeline__filters{display:flex;gap:8px}.event-timeline__filter-select{padding:6px 12px;font-size:13px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-background);color:var(--color-text-primary);cursor:pointer}.event-timeline__filter-select:hover{border-color:var(--color-border-hover)}.event-timeline__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px;color:var(--color-text-secondary)}.event-timeline__list{position:relative;padding:16px 0}.event-timeline__list:before{content:"";position:absolute;top:0;left:31px;bottom:0;width:2px;background:var(--color-border)}.event-timeline__item{position:relative;display:flex;gap:16px;padding:0 16px 24px}.event-timeline__item:last-child{padding-bottom:0}.event-timeline__marker{position:relative;z-index:1;flex-shrink:0;width:12px;height:12px;margin-top:4px;background:var(--color-background);border:2px solid var(--color-primary);border-radius:50%}.event-timeline__content{flex:1;min-width:0}.event-timeline__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:4px}.event-timeline__meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.event-timeline__name{font-weight:500;color:var(--color-text-primary)}.event-timeline__time{font-size:12px;color:var(--color-text-tertiary);white-space:nowrap}.event-timeline__toggle{display:inline-flex;align-items:center;gap:4px;padding:4px 0;font-size:12px;color:var(--color-primary);background:none;border:none;cursor:pointer}.event-timeline__toggle:hover{text-decoration:underline}.event-timeline__toggle-icon{transition:transform .2s}.event-timeline__toggle-icon--expanded{transform:rotate(180deg)}.event-timeline__properties{margin-top:8px;padding:12px;background:var(--color-background-subtle);border-radius:6px;overflow-x:auto}.event-timeline__properties pre{margin:0;font-size:12px;font-family:var(--font-mono);color:var(--color-text-secondary);white-space:pre-wrap;word-break:break-all}.event-timeline__source{margin-top:4px;font-size:11px;color:var(--color-text-tertiary)}.event-timeline__load-more{display:flex;justify-content:center;padding:16px;min-height:52px}.delivery-history{display:flex;flex-direction:column}.delivery-history--loading,.delivery-history--error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px;color:var(--color-text-secondary)}.delivery-history__spinner{width:32px;height:32px;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.delivery-history__toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--color-background-subtle);border-bottom:1px solid var(--color-border)}.delivery-history__stats{font-size:14px;color:var(--color-text-secondary)}.delivery-history__filters{display:flex;gap:8px}.delivery-history__filter-select{padding:6px 12px;font-size:13px;border:1px solid var(--color-border);border-radius:6px;background:var(--color-background);color:var(--color-text-primary);cursor:pointer}.delivery-history__filter-select:hover{border-color:var(--color-border-hover)}.delivery-history__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px;color:var(--color-text-secondary)}.delivery-history__table-wrapper{overflow-x:auto}.delivery-history__table{width:100%;border-collapse:collapse}.delivery-history__header{padding:12px 16px;font-size:12px;font-weight:600;text-align:left;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;background:var(--color-background-subtle);border-bottom:1px solid var(--color-border)}.delivery-history__row{cursor:pointer;transition:background-color .15s}.delivery-history__row:hover{background:var(--color-background-subtle)}.delivery-history__cell{padding:12px 16px;font-size:14px;color:var(--color-text-primary);border-bottom:1px solid var(--color-border);vertical-align:middle}.delivery-history__cell--date{white-space:nowrap;color:var(--color-text-secondary)}.delivery-history__cell--actions{width:40px;padding-right:8px}.delivery-history__channel{display:flex;align-items:center}.delivery-history__campaign{display:flex;flex-direction:column;gap:2px}.delivery-history__campaign-name{font-weight:500}.delivery-history__journey-name{font-size:12px;color:var(--color-text-tertiary)}.delivery-history__subject{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.delivery-history__expand-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:none;border-radius:4px;cursor:pointer;color:var(--color-text-tertiary);transition:background-color .15s}.delivery-history__expand-btn:hover{background:var(--color-background-subtle);color:var(--color-text-primary)}.delivery-history__expand-icon{transition:transform .2s}.delivery-history__expand-icon--expanded{transform:rotate(180deg)}.delivery-history__details-row{background:var(--color-background-subtle)}.delivery-history__details-row td{padding:0;border-bottom:1px solid var(--color-border)}.delivery-history__details{padding:16px}.delivery-history__detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.delivery-history__detail-item{display:flex;flex-direction:column;gap:2px}.delivery-history__detail-item--error{grid-column:1 / -1}.delivery-history__detail-label{font-size:11px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.5px}.delivery-history__detail-value{font-size:13px;color:var(--color-text-primary);font-family:var(--font-mono);word-break:break-all}.delivery-history__detail-item--error .delivery-history__detail-value{color:var(--color-danger)}.delivery-history__pagination{display:flex;align-items:center;justify-content:center;gap:16px;padding:16px;border-top:1px solid var(--color-border)}.delivery-history__page-info{font-size:14px;color:var(--color-text-secondary)}.attributes-editor{display:flex;flex-direction:column}.attributes-editor__header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:var(--color-background-subtle);border-bottom:1px solid var(--color-border)}.attributes-editor__title{margin:0;font-size:14px;font-weight:600;color:var(--color-text-primary)}.attributes-editor__actions{display:flex;gap:8px}.attributes-editor__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:32px;color:var(--color-text-secondary)}.attributes-editor__table{display:flex;flex-direction:column}.attributes-editor__table-header{display:flex;padding:8px 16px;background:var(--color-background-subtle);border-bottom:1px solid var(--color-border)}.attributes-editor__table-header .attributes-editor__col{font-size:11px;font-weight:600;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.5px}.attributes-editor__row{display:flex;padding:8px 16px;border-bottom:1px solid var(--color-border)}.attributes-editor__row:hover{background:var(--color-background-subtle)}.attributes-editor__col{display:flex;align-items:flex-start;padding:4px}.attributes-editor__col--key{flex:0 0 180px}.attributes-editor__col--type{flex:0 0 100px}.attributes-editor__col--value{flex:1;min-width:200px}.attributes-editor__col--actions{flex:0 0 40px;justify-content:center}.attributes-editor__input,.attributes-editor__select,.attributes-editor__textarea{width:100%;padding:6px 10px;font-size:13px;font-family:var(--font-mono);border:1px solid var(--color-border);border-radius:4px;background:var(--color-background);color:var(--color-text-primary)}.attributes-editor__input:focus,.attributes-editor__select:focus,.attributes-editor__textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light)}.attributes-editor__textarea{resize:vertical;min-height:60px;font-family:var(--font-mono)}.attributes-editor__select{cursor:pointer}.attributes-editor__remove-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:none;border-radius:4px;cursor:pointer;color:var(--color-text-tertiary);transition:all .15s}.attributes-editor__remove-btn:hover{background:var(--color-danger-light);color:var(--color-danger)}.attributes-editor__footer{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;background:var(--color-background-subtle);border-top:1px solid var(--color-border)}.attributes-editor__error{padding:12px 16px;font-size:13px;color:var(--color-danger);background:var(--color-danger-light);border-top:1px solid var(--color-danger)}.person-detail-page{display:flex;flex-direction:column;gap:var(--spacing-6)}.person-detail__stats-bar{display:flex;gap:var(--spacing-8);padding:var(--spacing-4) var(--spacing-6);background-color:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg)}.person-detail__stat{display:flex;flex-direction:column;gap:var(--spacing-1)}.person-detail__stat-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}.person-detail__stat-label{font-size:var(--font-size-xs);color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.05em}.person-detail__tabs{display:flex;gap:var(--spacing-1);padding:var(--spacing-1);background-color:var(--color-gray-100);border-radius:var(--radius-lg)}.person-detail__tab{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-600);background:none;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.person-detail__tab:hover{color:var(--color-gray-900);background-color:var(--color-white)}.person-detail__tab--active{color:var(--color-gray-900);background-color:var(--color-white);box-shadow:var(--shadow-sm)}.person-detail__tab-badge{padding:2px 6px;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-gray-600);background-color:var(--color-gray-100);border-radius:var(--radius-full)}.person-detail__tab--active .person-detail__tab-badge{background-color:var(--color-primary-100);color:var(--color-primary-700)}.person-detail__tab-content{min-height:400px}.person-detail__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-6)}.person-detail__card{background-color:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);padding:var(--spacing-6)}.person-detail__card--wide{grid-column:span 2}.person-detail__card--no-padding{padding:0;overflow:hidden}.person-detail__card-title{margin:0 0 var(--spacing-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-900);text-transform:uppercase;letter-spacing:.05em}.person-detail__info-list{margin:0;display:flex;flex-direction:column;gap:var(--spacing-3)}.person-detail__info-item{display:flex;justify-content:space-between;gap:var(--spacing-4)}.person-detail__info-item dt{font-size:var(--font-size-sm);color:var(--color-gray-500)}.person-detail__info-item dd{margin:0;font-size:var(--font-size-sm);color:var(--color-gray-900);text-align:right;word-break:break-all}.person-detail__id{font-family:monospace;font-size:var(--font-size-xs);color:var(--color-gray-500)}.person-detail__segments{display:flex;flex-wrap:wrap;gap:var(--spacing-2)}.person-detail__segment-link{text-decoration:none;transition:opacity var(--transition-fast)}.person-detail__segment-link:hover{opacity:.8}.person-detail__empty-text{margin:0;font-size:var(--font-size-sm);color:var(--color-gray-400)}.person-detail__attributes{margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--spacing-4)}.person-detail__attribute{display:flex;flex-direction:column;gap:var(--spacing-1)}.person-detail__attribute dt{font-size:var(--font-size-xs);color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.05em}.person-detail__attribute dd{margin:0;font-size:var(--font-size-sm);color:var(--color-gray-900);word-break:break-all}@media(max-width:768px){.person-detail__grid{grid-template-columns:1fr}.person-detail__card--wide{grid-column:span 1}}.segments-page{display:flex;flex-direction:column;gap:var(--spacing-6)}.segments-page__actions{display:flex;align-items:center;gap:var(--spacing-3)}.segments-page__actions .btn svg{margin-right:var(--spacing-2)}.dropdown-menu:has(.segments-page__create-trigger) .dropdown-menu__trigger{padding:0;background-color:transparent}.dropdown-menu:has(.segments-page__create-trigger) .dropdown-menu__trigger:hover{background-color:transparent}.segments-page__create-trigger{display:inline-flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);background-color:var(--color-gray-900);color:var(--color-white);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition-fast)}.segments-page__create-trigger:hover{background-color:var(--color-gray-800)}.segments-page__create-trigger svg{flex-shrink:0}.segments-toolbar{display:flex;align-items:center;gap:var(--spacing-4)}.segments-toolbar .search-input{flex:1;max-width:400px}.segments-toolbar .select-wrapper{width:150px}.segments-table-container{background-color:var(--color-white);border-radius:var(--radius-lg);overflow:hidden}.segments-table__name{font-weight:var(--font-weight-medium);color:var(--color-gray-900)}.segments-table__actions-trigger{display:flex;align-items:center;justify-content:center;width:28px;height:28px;color:var(--color-gray-400);cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast)}.segments-table__actions-trigger:hover{background-color:var(--color-gray-100);color:var(--color-gray-600)}@media(max-width:768px){.segments-toolbar{flex-direction:column;align-items:stretch}.segments-toolbar .search-input{max-width:none}.segments-toolbar .select-wrapper{width:100%}}.simple-condition-builder{display:flex;flex-direction:column;gap:16px}.simple-condition-builder__header{margin-bottom:8px}.simple-condition-builder__eligible{font-size:16px;color:var(--text-primary, #111827)}.simple-condition-builder__eligible strong{font-weight:600}.simple-condition-builder__combinator-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.simple-condition-builder__combinator-select{padding:8px 12px;font-size:14px;color:var(--text-primary, #111827);background:var(--surface-primary, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:6px;cursor:pointer}.simple-condition-builder__combinator-text{font-size:14px;color:var(--text-secondary, #6b7280)}.simple-condition-builder__conditions{display:flex;flex-direction:column;gap:0}.condition-row-wrapper{display:flex;flex-direction:column}.condition-row{display:flex;align-items:center;gap:8px;padding:12px 0}.condition-row__and-badge{display:inline-flex;align-items:center;justify-content:center;min-width:48px;padding:6px 12px;font-size:12px;font-weight:600;color:#fff;background:#3b82f6;border-radius:4px;text-transform:uppercase}.field-type-selector{position:relative}.field-type-selector__trigger{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:14px;color:var(--text-primary, #111827);background:var(--surface-primary, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:6px;cursor:pointer;white-space:nowrap}.field-type-selector__trigger:hover{border-color:var(--border-hover, #d1d5db)}.field-type-selector__arrow{font-size:10px;color:var(--text-tertiary, #9ca3af)}.field-type-selector__dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:180px;background:var(--surface-primary, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;box-shadow:0 4px 12px #0000001a;z-index:100;overflow:hidden}.field-type-selector__group{padding:8px 0}.field-type-selector__group:not(:last-child){border-bottom:1px solid var(--border-color, #e5e7eb)}.field-type-selector__group-label{padding:4px 12px 8px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary, #9ca3af)}.field-type-selector__option{display:block;width:100%;padding:8px 12px;font-size:14px;color:var(--text-primary, #111827);background:transparent;border:none;text-align:left;cursor:pointer}.field-type-selector__option:hover{background:var(--surface-secondary, #f9fafb)}.field-type-selector__option--selected{background:var(--primary-light, #eef2ff);color:var(--primary-color, #6366f1)}.condition-row__field-name{flex:1;min-width:180px;max-width:240px;padding:8px 12px;font-size:14px;color:var(--text-primary, #111827);background:var(--surface-primary, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:6px}.condition-row__field-name:focus{outline:none;border-color:var(--primary-color, #6366f1);box-shadow:0 0 0 2px var(--primary-light, rgba(99, 102, 241, .1))}.condition-row__field-name::placeholder{color:var(--text-tertiary, #9ca3af)}.field-name-autocomplete{position:relative;flex:1;min-width:180px;max-width:240px}.field-name-autocomplete__input{width:100%;padding:8px 32px 8px 12px;font-size:14px;color:var(--text-primary, #111827);background:var(--surface-primary, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:6px;box-sizing:border-box}.field-name-autocomplete__input:focus{outline:none;border-color:var(--primary-color, #6366f1);box-shadow:0 0 0 2px var(--primary-light, rgba(99, 102, 241, .1))}.field-name-autocomplete__input::placeholder{color:var(--text-tertiary, #9ca3af)}.field-name-autocomplete__arrow{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:10px;color:var(--text-tertiary, #9ca3af);cursor:pointer}.field-name-autocomplete__dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;max-height:280px;overflow-y:auto;background:var(--surface-primary, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:100}.field-name-autocomplete__option{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;cursor:pointer;transition:background .1s ease}.field-name-autocomplete__option:hover{background:var(--surface-secondary, #f9fafb)}.field-name-autocomplete__option--selected{background:var(--primary-light, #eef2ff)}.field-name-autocomplete__option-label{font-size:14px;color:var(--text-primary, #111827)}.field-name-autocomplete__option-type{font-size:11px;padding:2px 6px;border-radius:4px;background:var(--surface-tertiary, #e5e7eb);color:var(--text-secondary, #6b7280);text-transform:lowercase}.field-name-autocomplete__empty{padding:16px 12px;text-align:center;font-size:14px;color:var(--text-tertiary, #9ca3af)}.condition-row__operator{min-width:140px;padding:8px 12px;font-size:14px;color:var(--text-primary, #111827);background:var(--surface-primary, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:6px;cursor:pointer}.condition-row__operator:focus{outline:none;border-color:var(--primary-color, #6366f1)}.condition-row__value{min-width:100px;max-width:160px;padding:8px 12px;font-size:14px;color:var(--text-primary, #111827);background:var(--surface-primary, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:6px}.condition-row__value:focus{outline:none;border-color:var(--primary-color, #6366f1);box-shadow:0 0 0 2px var(--primary-light, rgba(99, 102, 241, .1))}.condition-row__value--select{cursor:pointer}.condition-row__value-group{display:flex;align-items:center;gap:8px}.condition-row__value-suffix{font-size:14px;color:var(--text-secondary, #6b7280)}.condition-row__delete{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;color:var(--text-tertiary, #9ca3af);background:transparent;border:1px solid var(--border-color, #e5e7eb);border-radius:6px;cursor:pointer;transition:all .15s ease}.condition-row__delete:hover{color:var(--danger-color, #ef4444);border-color:var(--danger-color, #ef4444);background:var(--danger-light, #fef2f2)}.condition-row__delete svg{width:16px;height:16px}.condition-row__preview{display:flex;align-items:center;gap:8px;padding:8px 12px;margin-left:56px;margin-bottom:8px;font-size:13px;color:var(--text-secondary, #6b7280);background:var(--surface-secondary, #f9fafb);border-radius:6px;max-width:fit-content}.condition-row__preview-icon{color:var(--primary-color, #6366f1)}.condition-row__preview-percent{font-weight:600;color:var(--primary-color, #6366f1)}.condition-row__preview-text{color:var(--text-secondary, #6b7280)}.simple-condition-builder__actions{display:flex;align-items:center;gap:16px;padding-top:8px}.simple-condition-builder__add-btn{padding:8px 16px;font-size:14px;font-weight:500;color:var(--text-primary, #111827);background:var(--surface-primary, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:6px;cursor:pointer;transition:all .15s ease}.simple-condition-builder__add-btn:hover{background:var(--surface-secondary, #f9fafb);border-color:var(--border-hover, #d1d5db)}.simple-condition-builder__add-group-link{padding:0;font-size:14px;color:var(--primary-color, #6366f1);background:transparent;border:none;cursor:pointer;text-decoration:none}.simple-condition-builder__add-group-link:hover{text-decoration:underline}@media(max-width:768px){.condition-row{flex-wrap:wrap}.condition-row__field-name{min-width:100%;max-width:none;order:2;margin-top:8px}.condition-row__and-badge{order:0}.field-type-selector{order:1}.condition-row__operator{order:3;flex:1;margin-top:8px}.condition-row__value{order:4;flex:1;max-width:none;margin-top:8px}.condition-row__delete{order:5;margin-top:8px}.condition-row__preview{margin-left:0}}.segment-builder-page{display:flex;flex-direction:column;height:100%;background:var(--color-bg-secondary, #f9fafb)}.segment-builder-loading{display:flex;align-items:center;justify-content:center;height:200px;color:var(--color-text-secondary, #6b7280)}.segment-builder-actions{display:flex;gap:8px}.segment-builder-error{padding:12px 16px;margin:0 24px 16px;background:var(--color-error-bg, #fef2f2);border:1px solid var(--color-error-border, #fecaca);border-radius:8px;color:var(--color-error, #dc2626);font-size:14px;max-width:700px}.segment-builder-content{display:flex;flex-direction:column;gap:24px;padding:24px;flex:1;overflow:auto;width:100%;max-width:1200px}.segment-builder-main{display:flex;flex-direction:column;gap:24px}.segment-builder-form{display:flex;flex-direction:column;gap:16px;padding:20px;background:#fff;border-radius:8px;border:1px solid var(--color-border, #e5e7eb)}.segment-builder-field{display:flex;flex-direction:column;gap:6px}.segment-builder-field label{font-size:14px;font-weight:500;color:var(--color-text-primary, #111827)}.segment-builder-field textarea{padding:8px 12px;border:1px solid var(--color-border, #e5e7eb);border-radius:6px;font-size:14px;resize:vertical;min-height:60px}.segment-builder-field textarea:focus{outline:none;border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 3px var(--color-primary-light, rgba(59, 130, 246, .1))}.segment-builder-query{padding:20px;background:#fff;border-radius:8px;border:1px solid var(--color-border, #e5e7eb);flex:1}.segment-builder-query h3{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--color-text-primary, #111827)}.segment-query-builder{--rqb-spacing: 8px;--rqb-border-radius: 6px;--rqb-border-color: var(--color-border, #e5e7eb);--rqb-background-color: var(--color-bg-secondary, #f9fafb)}.segment-query-builder .ruleGroup{border:1px solid var(--rqb-border-color);border-radius:var(--rqb-border-radius);background:var(--rqb-background-color);padding:12px;margin-bottom:8px}.segment-query-builder .ruleGroup-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.segment-query-builder .ruleGroup-body{display:flex;flex-direction:column;gap:8px}.segment-query-builder .rule{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fff;border-radius:6px;border:1px solid var(--rqb-border-color)}.segment-query-builder select,.segment-query-builder input{padding:6px 10px;border:1px solid var(--rqb-border-color);border-radius:4px;font-size:14px;background:#fff}.segment-query-builder select:focus,.segment-query-builder input:focus{outline:none;border-color:var(--color-primary, #3b82f6)}.segment-query-builder button{padding:6px 12px;border:1px solid var(--rqb-border-color);border-radius:4px;background:#fff;font-size:13px;cursor:pointer;transition:all .15s ease}.segment-query-builder button:hover{background:var(--rqb-background-color)}.segment-query-builder .ruleGroup-addRule,.segment-query-builder .ruleGroup-addGroup{color:var(--color-primary, #3b82f6);border-color:var(--color-primary, #3b82f6)}.segment-query-builder .ruleGroup-addRule:hover,.segment-query-builder .ruleGroup-addGroup:hover{background:var(--color-primary-light, rgba(59, 130, 246, .1))}.segment-query-builder .rule-remove,.segment-query-builder .ruleGroup-remove{color:var(--color-error, #dc2626);border-color:var(--color-error, #dc2626);padding:4px 8px}.segment-query-builder .rule-remove:hover,.segment-query-builder .ruleGroup-remove:hover{background:var(--color-error-bg, #fef2f2)}.segment-preview-inline{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--color-bg-secondary, #f9fafb);border-radius:6px;font-size:14px;color:var(--color-text-secondary, #6b7280)}.segment-preview-inline .segment-preview-icon{width:16px;height:16px;color:var(--color-text-tertiary, #9ca3af)}.segment-preview-inline .segment-preview-percent{font-weight:600;color:var(--color-text-primary, #111827)}.segment-preview-inline .segment-preview-count{color:var(--color-text-tertiary, #9ca3af)}.segment-preview-loading{font-size:14px;color:var(--color-text-secondary, #6b7280)}.segment-builder-form-actions{display:flex;gap:12px;padding-top:16px;border-top:1px solid var(--color-border, #e5e7eb);margin-top:8px}.segment-import-page{display:flex;flex-direction:column;gap:var(--spacing-6)}.segment-import-content{background-color:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-6)}.segment-import-steps{display:flex;justify-content:center;gap:var(--spacing-8);margin-bottom:var(--spacing-8);padding-bottom:var(--spacing-6);border-bottom:1px solid var(--color-gray-200)}.segment-import-step{display:flex;align-items:center;gap:var(--spacing-2);color:var(--color-gray-400)}.segment-import-step.active{color:var(--color-primary-600)}.segment-import-step.completed{color:var(--color-green-600)}.step-number{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background-color:var(--color-gray-100);font-weight:var(--font-weight-medium);font-size:var(--font-size-sm)}.segment-import-step.active .step-number{background-color:var(--color-primary-100);color:var(--color-primary-700)}.segment-import-step.completed .step-number{background-color:var(--color-green-100);color:var(--color-green-700)}.step-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.segment-import-error{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-red-50);color:var(--color-red-700);border-radius:var(--radius-md);margin-bottom:var(--spacing-4);font-size:var(--font-size-sm)}.segment-import-upload-step{display:flex;flex-direction:column;gap:var(--spacing-6)}.upload-form{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-4)}.upload-form .form-field label{display:block;margin-bottom:var(--spacing-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-700)}.upload-form .form-field input{border:1px solid var(--color-gray-400);border-radius:var(--radius-md);padding:var(--spacing-2) var(--spacing-3);width:100%;font-size:var(--font-size-sm)}.upload-form .form-field input:focus{border-color:var(--color-primary-500);outline:none;box-shadow:0 0 0 2px var(--color-primary-100)}.preview-info{border:1px solid var(--color-gray-300)}.segment-import-upload{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-12);border:2px dashed var(--color-gray-300);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);text-align:center}.segment-import-upload:hover{border-color:var(--color-primary-400);background-color:var(--color-primary-50)}.segment-import-upload .upload-icon{color:var(--color-gray-400);margin-bottom:var(--spacing-4)}.segment-import-upload h3{margin:0 0 var(--spacing-2);font-size:var(--font-size-lg);color:var(--color-gray-900)}.segment-import-upload p{margin:0;color:var(--color-gray-500);font-size:var(--font-size-sm)}.segment-import-upload .upload-hint{margin-top:var(--spacing-4);color:var(--color-gray-400);font-size:var(--font-size-xs)}.segment-import-upload.uploading{cursor:wait;pointer-events:none}.upload-spinner{width:48px;height:48px;border:3px solid var(--color-gray-200);border-top-color:var(--color-primary-500);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:var(--spacing-4)}@keyframes spin{to{transform:rotate(360deg)}}.segment-import-preview{display:flex;flex-direction:column;gap:var(--spacing-6)}.preview-header{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-gray-50);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.preview-header svg{color:var(--color-gray-500)}.preview-count{margin-left:auto;color:var(--color-gray-500)}.preview-info{display:flex;flex-direction:column;gap:var(--spacing-1);padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-gray-50);border-radius:var(--radius-md)}.preview-segment-name{font-size:var(--font-size-sm);color:var(--color-gray-600)}.preview-segment-name strong{color:var(--color-gray-900)}.preview-description{font-size:var(--font-size-xs);color:var(--color-gray-500)}.preview-form{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-4)}.form-field--full{grid-column:1 / -1}.form-field label{display:block;margin-bottom:var(--spacing-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-700)}.column-select{width:100%;padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:var(--font-size-sm);background-color:var(--color-white)}.preview-table{overflow-x:auto;border:1px solid var(--color-gray-200);border-radius:var(--radius-md)}.preview-table table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.preview-table th,.preview-table td{padding:var(--spacing-2) var(--spacing-3);text-align:left;border-bottom:1px solid var(--color-gray-200)}.preview-table th{background-color:var(--color-gray-50);font-weight:var(--font-weight-medium);color:var(--color-gray-700)}.preview-table th.selected,.preview-table td.selected{background-color:var(--color-primary-50)}.preview-more{text-align:center;padding:var(--spacing-3);color:var(--color-gray-500);font-size:var(--font-size-sm);margin:0}.preview-actions{display:flex;justify-content:flex-end;gap:var(--spacing-3);padding-top:var(--spacing-4);border-top:1px solid var(--color-gray-200)}.segment-import-result{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--spacing-8)}.result-icon{width:80px;height:80px;display:flex;align-items:center;justify-content:center;border-radius:50%;margin-bottom:var(--spacing-4)}.result-icon.success{background-color:var(--color-green-100);color:var(--color-green-600)}.segment-import-result h3{margin:0 0 var(--spacing-2);font-size:var(--font-size-xl);color:var(--color-gray-900)}.segment-import-result p{margin:0;color:var(--color-gray-600)}.result-warning{margin-top:var(--spacing-2)!important;color:var(--color-orange-600)!important;font-size:var(--font-size-sm)}.result-actions{display:flex;gap:var(--spacing-3);margin-top:var(--spacing-6)}.result-errors{margin-top:var(--spacing-4);padding:var(--spacing-3);background-color:var(--color-red-50);border-radius:var(--radius-md);text-align:left;font-size:var(--font-size-sm);color:var(--color-red-700)}.result-errors p{margin:0 0 var(--spacing-2);font-weight:var(--font-weight-medium)}.result-errors ul{margin:0;padding-left:var(--spacing-4)}.result-errors li{margin-bottom:var(--spacing-1)}.segment-upload-step__description{margin:0 0 var(--spacing-6);font-size:var(--font-size-sm);color:var(--color-gray-600);line-height:1.6}.segment-upload-step__link{color:var(--color-primary);text-decoration:none}.segment-upload-step__link:hover{text-decoration:underline}.segment-upload-step__form{display:flex;flex-direction:column;gap:var(--spacing-4);margin-bottom:var(--spacing-6)}.segment-upload-step__field{display:flex;flex-direction:column;gap:var(--spacing-2)}.segment-upload-step__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-700)}.segment-upload-step__dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:160px;padding:var(--spacing-8);border:2px dashed var(--color-gray-300);border-radius:var(--radius-lg);background-color:var(--color-gray-50);cursor:pointer;transition:all var(--transition-fast)}.segment-upload-step__dropzone:hover{border-color:var(--color-gray-400);background-color:var(--color-gray-100)}.segment-upload-step__dropzone--dragging{border-color:var(--color-primary);background-color:var(--color-primary-light)}.segment-upload-step__dropzone--has-file{border-style:solid;border-color:var(--color-success);background-color:var(--color-success-bg)}.segment-upload-step__input{display:none}.segment-upload-step__placeholder{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-3);color:var(--color-gray-400);text-align:center}.segment-upload-step__placeholder-text{margin:0;font-size:var(--font-size-sm);color:var(--color-gray-600);font-weight:var(--font-weight-medium)}.segment-upload-step__placeholder-hint{margin:0;font-size:var(--font-size-xs);color:var(--color-gray-500);line-height:1.5}.segment-upload-step__file{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-2);color:var(--color-success)}.segment-upload-step__file-name{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-gray-900)}.segment-upload-step__file-size{font-size:var(--font-size-xs);color:var(--color-gray-500)}.segment-upload-step__textarea{width:100%;padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-family:inherit;resize:vertical;min-height:80px}.segment-upload-step__textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light)}.segment-upload-step__textarea::placeholder{color:var(--color-gray-400)}.segment-upload-step__error{margin-top:var(--spacing-4);padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-error-bg);color:var(--color-error);font-size:var(--font-size-sm);border-radius:var(--radius-md)}.segment-mapping-step__description{margin:0 0 var(--spacing-6);font-size:var(--font-size-sm);color:var(--color-gray-600);line-height:1.6}.segment-mapping-step__table-wrapper{overflow-x:auto;border:1px solid var(--color-gray-200);border-radius:var(--radius-md)}.segment-mapping-step__table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.segment-mapping-step__table th,.segment-mapping-step__table td{padding:var(--spacing-3) var(--spacing-4);text-align:left;border-bottom:1px solid var(--color-gray-200)}.segment-mapping-step__table th{background-color:var(--color-gray-50);font-weight:var(--font-weight-medium);color:var(--color-gray-700);white-space:nowrap}.segment-mapping-step__table tr:last-child td{border-bottom:none}.segment-mapping-step__column-name{font-weight:var(--font-weight-medium);color:var(--color-gray-900)}.segment-mapping-step__sample-value{color:var(--color-gray-500);max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.segment-mapping-step__radio{display:flex;align-items:center;gap:var(--spacing-2);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-gray-700)}.segment-mapping-step__radio input{cursor:pointer}.segment-mapping-step__warning{display:flex;align-items:center;gap:var(--spacing-2);margin-top:var(--spacing-4);padding:var(--spacing-3) var(--spacing-4);background-color:var(--color-warning-bg);color:var(--color-warning);font-size:var(--font-size-sm);border-radius:var(--radius-md)}.segment-completion-step__report{padding:var(--spacing-6);background-color:var(--color-gray-50);border-radius:var(--radius-lg);margin-bottom:var(--spacing-6)}.segment-completion-step__report-title{margin:0 0 var(--spacing-4);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}.segment-completion-step__stats{display:flex;gap:var(--spacing-4)}.segment-completion-step__stat{flex:1;display:flex;flex-direction:column;padding:var(--spacing-4);background-color:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-md)}.segment-completion-step__stat--highlight{background-color:var(--color-success-bg);border-color:var(--color-success)}.segment-completion-step__stat-label{font-size:var(--font-size-xs);color:var(--color-gray-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-1)}.segment-completion-step__stat-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-gray-900)}.segment-completion-step__errors{margin-bottom:var(--spacing-6)}.segment-completion-step__errors-title{margin:0 0 var(--spacing-3);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-gray-900)}.segment-completion-step__errors-list{display:flex;flex-direction:column;gap:var(--spacing-2);padding:var(--spacing-4);background-color:var(--color-error-bg);border-radius:var(--radius-md);max-height:200px;overflow-y:auto}.segment-completion-step__error-item{display:flex;gap:var(--spacing-2);font-size:var(--font-size-sm);color:var(--color-gray-700)}.segment-completion-step__error-row{font-weight:var(--font-weight-medium);color:var(--color-error)}.segment-completion-step__error-message{color:var(--color-gray-600)}.segment-completion-step__errors-more{margin:var(--spacing-2) 0 0;font-size:var(--font-size-sm);color:var(--color-gray-500);font-style:italic}.segment-csv-upload-page{padding:var(--spacing-6);max-width:900px;margin:0 auto}.segment-csv-upload__container{background-color:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-6);box-shadow:var(--shadow-sm)}.segment-csv-wizard__steps{display:flex;align-items:center;justify-content:center;padding:var(--spacing-4) 0;margin-bottom:var(--spacing-6);border-bottom:1px solid var(--color-gray-200)}.segment-csv-wizard__step{display:flex;align-items:center;gap:var(--spacing-2);position:relative}.segment-csv-wizard__step-indicator{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-full);background-color:var(--color-gray-200);color:var(--color-gray-500);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);flex-shrink:0}.segment-csv-wizard__step--active .segment-csv-wizard__step-indicator{background-color:var(--color-black);color:var(--color-white)}.segment-csv-wizard__step--completed .segment-csv-wizard__step-indicator{background-color:var(--color-success);color:var(--color-white)}.segment-csv-wizard__step-label{font-size:var(--font-size-sm);color:var(--color-gray-500)}.segment-csv-wizard__step--active .segment-csv-wizard__step-label{color:var(--color-gray-900);font-weight:var(--font-weight-medium)}.segment-csv-wizard__step--completed .segment-csv-wizard__step-label{color:var(--color-gray-700)}.segment-csv-wizard__step-connector{width:80px;height:2px;background-color:var(--color-gray-200);margin:0 var(--spacing-3)}.segment-csv-wizard__step--completed+.segment-csv-wizard__step .segment-csv-wizard__step-connector,.segment-csv-wizard__step--completed .segment-csv-wizard__step-connector{background-color:var(--color-success)}.segment-csv-wizard__content{min-height:400px}.segment-csv-wizard__actions{display:flex;justify-content:space-between;gap:var(--spacing-3);margin-top:var(--spacing-6);padding-top:var(--spacing-4);border-top:1px solid var(--color-gray-200)}.segment-csv-wizard__actions--end{justify-content:flex-end}.journeys-page{display:flex;flex-direction:column;gap:var(--spacing-6, 24px)}.journeys-toolbar{display:flex;align-items:center;gap:var(--spacing-4, 16px)}.journeys-toolbar .search-input{flex:1;max-width:400px}.journeys-table-container{background-color:var(--color-white, #ffffff);border-radius:var(--radius-lg, 8px);overflow:hidden}.journeys-table__name{font-weight:500;color:var(--color-gray-900, #111827)}.journeys-table__actions-trigger{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md, 6px);cursor:pointer;color:var(--color-gray-500, #6b7280);transition:background-color .15s ease}.journeys-table__actions-trigger:hover{background-color:var(--color-gray-100, #f3f4f6);color:var(--color-gray-700, #374151)}.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}.journey-node{min-width:180px;background-color:var(--color-white, #ffffff);border:1px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-lg, 8px);box-shadow:0 1px 3px #0000001a;transition:box-shadow .15s ease,border-color .15s ease}.journey-node:hover{box-shadow:0 4px 6px #0000001a}.journey-node--selected{border-color:var(--color-gray-900, #111827);box-shadow:0 0 0 2px var(--color-gray-200, #e5e7eb)}.journey-node__header{display:flex;align-items:center;gap:8px;padding:8px 12px;border-bottom:1px solid var(--color-gray-100, #f3f4f6);border-radius:var(--radius-lg, 8px) var(--radius-lg, 8px) 0 0}.journey-node__header--trigger{background-color:#fef3c7;color:#92400e}.journey-node__header--message{background-color:#dbeafe;color:#1e40af}.journey-node__header--delay{background-color:#e0e7ff;color:#3730a3}.journey-node__header--branch{background-color:#d1fae5;color:#065f46}.journey-node__icon{display:flex;align-items:center;justify-content:center}.journey-node__title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.journey-node__body{padding:12px}.journey-node__label{font-size:13px;color:var(--color-gray-600, #4b5563)}.journey-node__handle{width:12px;height:12px;background-color:var(--color-gray-400, #9ca3af);border:2px solid var(--color-white, #ffffff);border-radius:50%}.journey-node__handle:hover{background-color:var(--color-gray-600, #4b5563)}.journey-node__handle--target{top:-6px}.journey-node__handle--source{bottom:-6px}.journey-node__branch-handles{display:flex;justify-content:space-around;padding:8px 12px 16px;border-top:1px solid var(--color-gray-100, #f3f4f6)}.journey-node__branch-path{display:flex;flex-direction:column;align-items:center;gap:4px;position:relative}.journey-node__branch-label{font-size:11px;font-weight:500;color:var(--color-gray-500, #6b7280)}.journey-node__handle--yes{background-color:#10b981}.journey-node__handle--no{background-color:#ef4444}.journey-node__header--random-split{background-color:#fce7f3;color:#9d174d}.journey-node__split-handles{display:flex;justify-content:space-around;padding:8px 12px 16px;border-top:1px solid var(--color-gray-100, #f3f4f6);flex-wrap:wrap;gap:4px}.journey-node__split-path{display:flex;flex-direction:column;align-items:center;gap:4px;position:relative;min-width:60px}.journey-node__split-label{font-size:10px;font-weight:500;color:var(--color-gray-500, #6b7280);white-space:nowrap}.journey-node__handle--path-0{background-color:#8b5cf6}.journey-node__handle--path-1{background-color:#06b6d4}.journey-node__handle--path-2{background-color:#f59e0b}.journey-node__handle--path-3{background-color:#ec4899}.journey-node__header--multisplit,.journey-node__header--wait-until{background-color:#fef3c7;color:#92400e}.journey-node__header--time-window{background-color:#dbeafe;color:#1e40af}.journey-node__header--randomized-delay{background-color:#fce7f3;color:#9d174d}.sidebar-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.sidebar-panel__header{padding:16px;border-bottom:1px solid var(--color-gray-200, #e5e7eb)}.sidebar-panel__title{font-size:14px;font-weight:600;color:var(--color-gray-900, #111827);margin:0 0 4px}.sidebar-panel__subtitle{font-size:12px;color:var(--color-gray-500, #6b7280);margin:0}.sidebar-panel__content{flex:1;overflow-y:auto;padding:16px}.palette__section{margin-bottom:20px}.palette__section:last-child{margin-bottom:0}.palette__section-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-gray-500, #6b7280);margin:0 0 8px}.palette__items{display:flex;flex-direction:column;gap:8px}.palette__item{display:flex;align-items:flex-start;gap:12px;padding:12px;background:var(--color-white, #ffffff);border:1px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-md, 6px);cursor:pointer;text-align:left;transition:all .15s ease}.palette__item:hover:not(:disabled){border-color:var(--color-gray-400, #9ca3af);box-shadow:0 1px 3px #00000014}.palette__item:disabled{opacity:.5;cursor:not-allowed}.palette__item-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;background-color:var(--node-color, #f3f4f6);border-radius:var(--radius-sm, 4px);color:var(--color-gray-700, #374151)}.palette__item-content{display:flex;flex-direction:column;gap:2px;min-width:0}.palette__item-label{font-size:13px;font-weight:500;color:var(--color-gray-900, #111827)}.palette__item-description{font-size:11px;color:var(--color-gray-500, #6b7280);line-height:1.4}.properties-panel{display:flex;flex-direction:column;height:100%}.properties-panel__header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--color-gray-200, #e5e7eb)}.properties-panel__header-info{display:flex;align-items:center;gap:10px}.properties-panel__node-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-md, 6px)}.properties-panel__node-icon--trigger{background-color:#fef3c7;color:#92400e}.properties-panel__node-icon--message{background-color:#dbeafe;color:#1e40af}.properties-panel__node-icon--delay{background-color:#e0e7ff;color:#3730a3}.properties-panel__node-icon--branch{background-color:#d1fae5;color:#065f46}.properties-panel__node-info{display:flex;flex-direction:column}.properties-panel__node-type{font-size:14px;font-weight:600;color:var(--color-gray-900, #111827)}.properties-panel__node-id{font-size:11px;color:var(--color-gray-400, #9ca3af);font-family:monospace}.properties-panel__delete-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-md, 6px);color:var(--color-gray-500, #6b7280);cursor:pointer;transition:all .15s ease}.properties-panel__delete-btn:hover:not(:disabled){background-color:#fef2f2;border-color:#fecaca;color:#ef4444}.properties-panel__delete-btn:disabled{opacity:.5;cursor:not-allowed}.properties-panel__content{flex:1;overflow-y:auto;padding:16px}.form-group{margin-bottom:16px}.form-group:last-child{margin-bottom:0}.form-group__label{display:block;font-size:12px;font-weight:500;color:var(--color-gray-700, #374151);margin-bottom:6px}.form-group__input,.form-group__select{width:100%;padding:8px 12px;font-size:13px;border:1px solid var(--color-gray-300, #d1d5db);border-radius:var(--radius-md, 6px);background-color:var(--color-white, #ffffff);color:var(--color-gray-900, #111827);transition:border-color .15s ease}.form-group__input:focus,.form-group__select:focus{outline:none;border-color:var(--color-gray-500, #6b7280)}.form-group__input:disabled,.form-group__select:disabled{background-color:var(--color-gray-100, #f3f4f6);cursor:not-allowed}.form-group__input::placeholder{color:var(--color-gray-400, #9ca3af)}.form-group__help{font-size:11px;color:var(--color-gray-500, #6b7280);margin-top:4px}.duration-input{display:flex;gap:8px}.duration-input__value{flex:1}.duration-input__unit{width:100px}.conditions-builder{border:1px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-md, 6px);overflow:hidden}.conditions-builder__header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background-color:var(--color-gray-50, #f9fafb);border-bottom:1px solid var(--color-gray-200, #e5e7eb)}.conditions-builder__title{font-size:12px;font-weight:500;color:var(--color-gray-700, #374151)}.conditions-builder__add-btn{display:flex;align-items:center;gap:4px;padding:4px 8px;font-size:11px;font-weight:500;color:var(--color-gray-600, #4b5563);background:var(--color-white, #ffffff);border:1px solid var(--color-gray-300, #d1d5db);border-radius:var(--radius-sm, 4px);cursor:pointer;transition:all .15s ease}.conditions-builder__add-btn:hover:not(:disabled){background-color:var(--color-gray-50, #f9fafb)}.conditions-builder__add-btn:disabled{opacity:.5;cursor:not-allowed}.conditions-builder__list{padding:8px}.conditions-builder__empty{padding:16px;text-align:center;font-size:12px;color:var(--color-gray-400, #9ca3af)}.condition-row{display:flex;align-items:center;gap:8px;padding:8px;background-color:var(--color-white, #ffffff);border:1px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-sm, 4px);margin-bottom:8px}.condition-row:last-child{margin-bottom:0}.condition-row__field{flex:1;min-width:0}.condition-row__field input,.condition-row__field select{width:100%;padding:6px 8px;font-size:12px;border:1px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-sm, 4px)}.condition-row__remove{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;color:var(--color-gray-400, #9ca3af);cursor:pointer;border-radius:var(--radius-sm, 4px)}.condition-row__remove:hover:not(:disabled){background-color:#fef2f2;color:#ef4444}.condition-row__remove:disabled{opacity:.5;cursor:not-allowed}.properties-panel__node-icon--random_split{background-color:#fce7f3;color:#9d174d}.properties-panel__node-icon--multisplit{background-color:#fef3c7;color:#92400e}.form-group__static{padding:8px 12px;font-size:13px;background-color:var(--color-gray-100, #f3f4f6);border:1px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-md, 6px);color:var(--color-gray-700, #374151)}.form-group__error{font-size:11px;color:#ef4444;margin-top:6px}.split-paths__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.split-paths__actions{display:flex;gap:8px}.split-paths__action-btn{padding:4px 8px;font-size:11px;font-weight:500;color:var(--color-gray-600, #4b5563);background:var(--color-white, #ffffff);border:1px solid var(--color-gray-300, #d1d5db);border-radius:var(--radius-sm, 4px);cursor:pointer;transition:all .15s ease}.split-paths__action-btn:hover:not(:disabled){background-color:var(--color-gray-50, #f9fafb)}.split-paths__action-btn:disabled{opacity:.5;cursor:not-allowed}.split-paths__list{display:flex;flex-direction:column;gap:8px}.split-path-row{display:flex;align-items:center;gap:8px;padding:8px;background-color:var(--color-white, #ffffff);border:1px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-md, 6px)}.split-path-row__label{flex:1;padding:6px 8px;font-size:12px;border:1px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-sm, 4px)}.split-path-row__percentage{display:flex;align-items:center;gap:4px}.split-path-row__percentage input{width:60px;padding:6px 8px;font-size:12px;text-align:right;border:1px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-sm, 4px)}.split-path-row__percentage span{font-size:12px;color:var(--color-gray-500, #6b7280)}.split-path-row__remove{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;font-size:16px;color:var(--color-gray-400, #9ca3af);cursor:pointer;border-radius:var(--radius-sm, 4px)}.split-path-row__remove:hover:not(:disabled){background-color:#fef2f2;color:#ef4444}.multisplit-paths__list{display:flex;flex-direction:column;gap:12px}.multisplit-path{padding:12px;background-color:var(--color-white, #ffffff);border:1px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-md, 6px)}.multisplit-path__header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.multisplit-path__label{flex:1;padding:6px 8px;font-size:12px;font-weight:500;border:1px solid var(--color-gray-200, #e5e7eb);border-radius:var(--radius-sm, 4px)}.multisplit-path__default{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--color-gray-600, #4b5563);cursor:pointer}.multisplit-path__default input{margin:0}.multisplit-path__remove{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;font-size:16px;color:var(--color-gray-400, #9ca3af);cursor:pointer;border-radius:var(--radius-sm, 4px)}.multisplit-path__remove:hover:not(:disabled){background-color:#fef2f2;color:#ef4444}.properties-panel__node-icon--wait_until{background-color:#fef3c7;color:#92400e}.properties-panel__node-icon--time_window{background-color:#dbeafe;color:#1e40af}.properties-panel__node-icon--randomized_delay{background-color:#fce7f3;color:#9d174d}.form-group__checkbox{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-gray-700, #374151);cursor:pointer}.form-group__checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer}.day-picker{display:flex;gap:4px;flex-wrap:wrap}.day-picker__day{padding:6px 10px;font-size:12px;font-weight:500;color:var(--color-gray-600, #4b5563);background:var(--color-white, #ffffff);border:1px solid var(--color-gray-300, #d1d5db);border-radius:var(--radius-sm, 4px);cursor:pointer;transition:all .15s ease}.day-picker__day:hover:not(:disabled){background-color:var(--color-gray-50, #f9fafb)}.day-picker__day--selected{background-color:var(--color-gray-900, #111827);border-color:var(--color-gray-900, #111827);color:var(--color-white, #ffffff)}.day-picker__day--selected:hover:not(:disabled){background-color:var(--color-gray-800, #1f2937)}.day-picker__day:disabled{opacity:.5;cursor:not-allowed}.time-range{display:flex;align-items:center;gap:8px}.time-range span{font-size:12px;color:var(--color-gray-500, #6b7280)}.time-range select{width:100px}.segment-selector{position:relative;width:100%}.segment-selector__trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:8px 12px;font-size:13px;line-height:1.5;color:var(--color-gray-900);background-color:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.segment-selector__trigger:hover:not(:disabled){border-color:var(--color-gray-400)}.segment-selector__trigger:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.segment-selector__trigger:disabled{opacity:.6;cursor:not-allowed;background-color:var(--color-gray-50)}.segment-selector__trigger--open{border-color:var(--color-gray-500)}.segment-selector__trigger-text{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.segment-selector__chevron{flex-shrink:0;margin-left:8px;color:var(--color-gray-500);transition:transform .15s ease}.segment-selector__chevron--open{transform:rotate(180deg)}.segment-selector__dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;max-height:320px;display:flex;flex-direction:column;background-color:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown, 100);animation:segment-selector-fade-in .15s ease-out}@keyframes segment-selector-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.segment-selector__search{padding:8px;border-bottom:1px solid var(--color-gray-200)}.segment-selector__search-input{width:100%;padding:6px 10px;font-size:13px;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);outline:none;transition:border-color .15s ease}.segment-selector__search-input:focus{border-color:var(--color-primary)}.segment-selector__search-input::placeholder{color:var(--color-gray-400)}.segment-selector__list{flex:1;overflow-y:auto;padding:4px 0}.segment-selector__loading,.segment-selector__error,.segment-selector__empty{display:flex;align-items:center;justify-content:center;gap:8px;padding:24px 16px;font-size:13px;color:var(--color-gray-500)}.segment-selector__error{color:var(--color-error)}.segment-selector__spinner{width:16px;height:16px;border:2px solid var(--color-gray-200);border-top-color:var(--color-primary);border-radius:50%;animation:segment-selector-spin .6s linear infinite}@keyframes segment-selector-spin{to{transform:rotate(360deg)}}.segment-selector__option{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:10px 12px;font-size:13px;text-align:left;background:none;border:none;cursor:pointer;transition:background-color .1s ease}.segment-selector__option:hover{background-color:var(--color-gray-50)}.segment-selector__option--selected{background-color:var(--color-gray-100)}.segment-selector__option-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.segment-selector__option-name{font-weight:500;color:var(--color-gray-900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.segment-selector__option-desc{font-size:12px;color:var(--color-gray-500);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.segment-selector__option-meta{flex-shrink:0}.segment-selector__option-count{display:inline-flex;align-items:center;padding:2px 8px;font-size:11px;font-weight:500;color:var(--color-gray-600);background-color:var(--color-gray-100);border-radius:var(--radius-full)}.template-selector{position:relative;width:100%}.template-selector__trigger{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;font-size:13px;line-height:1.5;color:var(--color-gray-900);background-color:var(--color-white);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.template-selector__trigger:hover:not(:disabled){border-color:var(--color-gray-400)}.template-selector__trigger:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.template-selector__trigger:disabled{opacity:.6;cursor:not-allowed;background-color:var(--color-gray-50)}.template-selector__trigger--open{border-color:var(--color-gray-500)}.template-selector__trigger-icon{flex-shrink:0;color:var(--color-gray-500)}.template-selector__trigger-text{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-selector__chevron{flex-shrink:0;color:var(--color-gray-500);transition:transform .15s ease}.template-selector__chevron--open{transform:rotate(180deg)}.template-selector__dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;max-height:320px;display:flex;flex-direction:column;background-color:var(--color-white);border:1px solid var(--color-gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:var(--z-dropdown, 100);animation:template-selector-fade-in .15s ease-out}@keyframes template-selector-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.template-selector__search{padding:8px;border-bottom:1px solid var(--color-gray-200)}.template-selector__search-input{width:100%;padding:6px 10px;font-size:13px;border:1px solid var(--color-gray-300);border-radius:var(--radius-md);outline:none;transition:border-color .15s ease}.template-selector__search-input:focus{border-color:var(--color-primary)}.template-selector__search-input::placeholder{color:var(--color-gray-400)}.template-selector__list{flex:1;overflow-y:auto;padding:4px 0}.template-selector__loading,.template-selector__error,.template-selector__empty{display:flex;align-items:center;justify-content:center;gap:8px;padding:24px 16px;font-size:13px;color:var(--color-gray-500)}.template-selector__error{color:var(--color-error)}.template-selector__spinner{width:16px;height:16px;border:2px solid var(--color-gray-200);border-top-color:var(--color-primary);border-radius:50%;animation:template-selector-spin .6s linear infinite}@keyframes template-selector-spin{to{transform:rotate(360deg)}}.template-selector__option{display:flex;align-items:center;width:100%;padding:10px 12px;font-size:13px;text-align:left;background:none;border:none;cursor:pointer;transition:background-color .1s ease}.template-selector__option:hover{background-color:var(--color-gray-50)}.template-selector__option--selected{background-color:var(--color-gray-100)}.template-selector__option-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.template-selector__option-name{font-weight:500;color:var(--color-gray-900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.template-selector__option-preview{font-size:12px;color:var(--color-gray-500);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journey-settings-modal__content{display:flex;flex-direction:column;gap:1.5rem}.journey-settings-modal__section{display:flex;flex-direction:column;gap:.75rem}.journey-settings-modal__section-title{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary)}.journey-settings-modal__section-description{margin:0;font-size:.875rem;color:var(--text-secondary)}.journey-settings-modal__policy-description{margin:0;padding:.75rem;font-size:.8125rem;color:var(--text-secondary);background-color:var(--surface-hover);border-radius:6px;line-height:1.5}.journey-settings-modal__period-input{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.journey-settings-modal__hint{margin:0;font-size:.75rem;color:var(--text-tertiary)}.journey-settings-modal__footer{display:flex;justify-content:flex-end;gap:.75rem}.journey-editor{display:flex;flex-direction:column;height:100vh;background-color:var(--color-gray-50, #f9fafb)}.journey-editor--loading{align-items:center;justify-content:center}.journey-editor__loading{font-size:16px;color:var(--color-gray-500, #6b7280)}.journey-editor__topbar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background-color:var(--color-white, #ffffff);border-bottom:1px solid var(--color-gray-200, #e5e7eb);gap:16px}.journey-editor__topbar-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.journey-editor__topbar-right{display:flex;align-items:center;gap:8px}.journey-editor__back{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;border-radius:var(--radius-md, 6px);cursor:pointer;color:var(--color-gray-500, #6b7280);transition:all .15s ease}.journey-editor__back:hover{background-color:var(--color-gray-100, #f3f4f6);color:var(--color-gray-700, #374151)}.journey-editor__breadcrumb{display:flex;align-items:center;gap:8px;font-size:14px}.journey-editor__breadcrumb-item{color:var(--color-gray-500, #6b7280)}.journey-editor__breadcrumb-separator{color:var(--color-gray-300, #d1d5db)}.journey-editor__name-input{font-size:14px;font-weight:600;color:var(--color-gray-900, #111827);border:none;background:transparent;padding:4px 8px;border-radius:var(--radius-md, 6px);min-width:150px;max-width:300px}.journey-editor__name-input:hover{background-color:var(--color-gray-100, #f3f4f6)}.journey-editor__name-input:focus{outline:none;background-color:var(--color-gray-100, #f3f4f6);box-shadow:0 0 0 2px var(--color-gray-300, #d1d5db)}.journey-editor__dirty-indicator{font-size:12px;color:var(--color-gray-500, #6b7280);font-style:italic}.journey-editor__main{display:flex;flex:1;overflow:hidden}.journey-editor__canvas{flex:1;height:100%}.journey-editor__sidebar{width:320px;background-color:var(--color-white, #ffffff);border-left:1px solid var(--color-gray-200, #e5e7eb);overflow-y:auto}.react-flow__node{cursor:pointer}.react-flow__node.selected{box-shadow:0 0 0 2px var(--color-gray-900, #111827)}.react-flow__edge-path{stroke:var(--color-gray-400, #9ca3af)}.react-flow__edge.selected .react-flow__edge-path{stroke:var(--color-gray-900, #111827)}.react-flow__controls{box-shadow:0 1px 3px #0000001a;border-radius:var(--radius-md, 6px)}.react-flow__minimap{border-radius:var(--radius-md, 6px);overflow:hidden}.journey-toast{position:fixed;bottom:1.5rem;right:1.5rem;padding:.75rem 1rem;border-radius:6px;font-size:.875rem;max-width:400px;z-index:10000;animation:journey-toast-slide-in .2s ease}.journey-toast--error{background:#fef2f2;color:#dc2626;border:1px solid #dc2626}.journey-toast--success{background:#f0fdf4;color:#16a34a;border:1px solid #16a34a}@keyframes journey-toast-slide-in{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.broadcasts-page .btn-primary{background:#000;color:#fff;border:none;padding:.5rem 1rem;border-radius:.375rem;font-weight:500;cursor:pointer;transition:background-color .15s ease}.broadcasts-page .btn-primary:hover{background:#1f2937}.broadcasts-page{display:flex;flex-direction:column;gap:var(--spacing-6, 24px)}.broadcasts-toolbar{display:flex;align-items:center;gap:var(--spacing-4, 16px)}.broadcasts-toolbar .search-input{flex:1;max-width:400px}.broadcasts-table-container{background-color:var(--color-white, #ffffff);border-radius:var(--radius-lg, 8px);overflow:hidden}.broadcasts-table__name{font-weight:500;color:var(--color-gray-900, #111827)}.broadcasts-table__actions-trigger{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md, 6px);cursor:pointer;color:var(--color-gray-500, #6b7280);transition:background-color .15s ease}.broadcasts-table__actions-trigger:hover{background-color:var(--color-gray-100, #f3f4f6);color:var(--color-gray-700, #374151)}:root{--rqb-spacing: .5rem;--rqb-border-width: 1px;--rqb-branch-indent: var(--rqb-spacing);--rqb-branch-width: var(--rqb-border-width);--rqb-base-color: #004bb8;--rqb-background-color: color-mix(in srgb, transparent, #004bb8 20%);--rqb-border-color: #8081a2;--rqb-border-style: solid;--rqb-border-radius: .25rem;--rqb-dnd-drop-indicator-color: rebeccapurple;--rqb-dnd-drop-indicator-style: dashed;--rqb-dnd-drop-indicator-width: 2px;--rqb-dnd-drop-indicator-copy-color: #693;--rqb-dnd-drop-indicator-copy-style: dashed;--rqb-dnd-drop-indicator-copy-width: 2px;--rqb-dnd-drop-indicator-group-color: #369;--rqb-dnd-drop-indicator-group-style: dashed;--rqb-dnd-drop-indicator-group-width: 2px;--rqb-dnd-drop-not-allowed-cursor: not-allowed;--rqb-branch-color: var(--rqb-border-color);--rqb-branch-radius: var(--rqb-border-radius);--rqb-branch-style: var(--rqb-border-style)}.ruleGroup{display:flex;flex-direction:column;gap:var(--rqb-spacing);padding:var(--rqb-spacing);border-width:var(--rqb-border-width)}.ruleGroup .ruleGroup-body{display:flex;flex-direction:column;gap:var(--rqb-spacing)}.ruleGroup .ruleGroup-body:empty{display:none}.ruleGroup .ruleGroup-header,.ruleGroup .rule{display:flex;gap:var(--rqb-spacing);align-items:center}.ruleGroup .rule .rule-value:has(.rule-value-list-item){display:flex;gap:var(--rqb-spacing);align-items:baseline}.ruleGroup .rule.rule-hasSubQuery{flex-wrap:wrap;padding:var(--rqb-spacing);border-width:var(--rqb-border-width)}.ruleGroup .rule.rule-hasSubQuery .ruleGroup-body{flex-basis:100%}.ruleGroup .betweenRules{display:flex}.ruleGroup .shiftActions{display:flex;flex-direction:column}.ruleGroup .shiftActions>*{padding:0}.dndOver.rule,.dndOver.ruleGroup-header{padding-bottom:var(--rqb-spacing)}.dndOver.betweenRules{padding-top:var(--rqb-spacing)}.dndGroup.rule.dndOver,.dndGroup.ruleGroup:has(.ruleGroup-header.dndOver){padding:var(--rqb-spacing)}.queryBuilder-branches:dir(ltr) .ruleGroup-body{margin-left:calc(2*var(--rqb-branch-indent))}.queryBuilder-branches:dir(ltr) .rule,.queryBuilder-branches:dir(ltr) .ruleGroup .ruleGroup{position:relative}.queryBuilder-branches:dir(ltr) .rule:before,.queryBuilder-branches:dir(ltr) .rule:after,.queryBuilder-branches:dir(ltr) .ruleGroup .ruleGroup:before,.queryBuilder-branches:dir(ltr) .ruleGroup .ruleGroup:after{content:"";width:var(--rqb-branch-indent);left:calc(-1*(var(--rqb-branch-indent) + var(--rqb-branch-width)));border-radius:0;position:absolute}.queryBuilder-branches:dir(ltr) .rule:before,.queryBuilder-branches:dir(ltr) .ruleGroup .ruleGroup:before{top:calc(-1*var(--rqb-spacing));height:calc(50% + var(--rqb-spacing));border-width:0 0 var(--rqb-branch-width) var(--rqb-branch-width)}.queryBuilder-branches:dir(ltr) .rule:after,.queryBuilder-branches:dir(ltr) .ruleGroup .ruleGroup:after{top:50%;height:50%;border-width:0 0 0 var(--rqb-branch-width)}.queryBuilder-branches:dir(ltr) .rule:last-child:after,.queryBuilder-branches:dir(ltr) .ruleGroup .ruleGroup:last-child:after{display:none}.queryBuilder-branches:dir(ltr) .rule-hasSubQuery:before,.queryBuilder-branches:dir(ltr) .rule-hasSubQuery:after,.queryBuilder-branches:dir(ltr) .ruleGroup .ruleGroup:before,.queryBuilder-branches:dir(ltr) .ruleGroup .ruleGroup:after{left:calc(-1*(var(--rqb-branch-indent) + var(--rqb-branch-width) + var(--rqb-border-width)))}.queryBuilder-branches:dir(ltr) .rule-hasSubQuery:before,.queryBuilder-branches:dir(ltr) .ruleGroup .ruleGroup:before{top:calc(-1*(var(--rqb-spacing) + var(--rqb-border-width)));height:calc(50% + var(--rqb-spacing) + var(--rqb-border-width))}.queryBuilder-branches:dir(ltr) .rule-hasSubQuery:after,.queryBuilder-branches:dir(ltr) .ruleGroup .ruleGroup:after{height:calc(50% + var(--rqb-border-width))}.queryBuilder-branches:dir(ltr) .betweenRules:before{content:"";width:var(--rqb-branch-indent);left:calc(-1*(var(--rqb-branch-indent) + var(--rqb-branch-width)));border-radius:0;position:absolute;top:calc(-1*var(--rqb-spacing));height:calc(100% + var(--rqb-spacing));border-width:0 0 0 var(--rqb-branch-width)}.queryBuilder-branches:dir(rtl) .ruleGroup-body{margin-right:calc(2*var(--rqb-branch-indent))}.queryBuilder-branches:dir(rtl) .rule,.queryBuilder-branches:dir(rtl) .ruleGroup .ruleGroup{position:relative}.queryBuilder-branches:dir(rtl) .rule:before,.queryBuilder-branches:dir(rtl) .rule:after,.queryBuilder-branches:dir(rtl) .ruleGroup .ruleGroup:before,.queryBuilder-branches:dir(rtl) .ruleGroup .ruleGroup:after{content:"";width:var(--rqb-branch-indent);right:calc(-1*(var(--rqb-branch-indent) + var(--rqb-branch-width)));border-radius:0;position:absolute}.queryBuilder-branches:dir(rtl) .rule:after,.queryBuilder-branches:dir(rtl) .ruleGroup .ruleGroup:after{top:calc(-1*var(--rqb-spacing));height:calc(50% + var(--rqb-spacing));border-width:0 var(--rqb-branch-width) var(--rqb-branch-width) 0}.queryBuilder-branches:dir(rtl) .rule:before,.queryBuilder-branches:dir(rtl) .ruleGroup .ruleGroup:before{top:50%;height:50%;border-width:0 var(--rqb-branch-width) 0 0}.queryBuilder-branches:dir(rtl) .rule:last-child:before,.queryBuilder-branches:dir(rtl) .ruleGroup .ruleGroup:last-child:before{display:none}.queryBuilder-branches:dir(rtl) .rule-hasSubQuery:before,.queryBuilder-branches:dir(rtl) .rule-hasSubQuery:after,.queryBuilder-branches:dir(rtl) .ruleGroup .ruleGroup:before,.queryBuilder-branches:dir(rtl) .ruleGroup .ruleGroup:after{right:calc(-1*(var(--rqb-branch-indent) + var(--rqb-branch-width) + var(--rqb-border-width)))}.queryBuilder-branches:dir(rtl) .rule-hasSubQuery:after,.queryBuilder-branches:dir(rtl) .ruleGroup .ruleGroup:after{top:calc(-1*(var(--rqb-spacing) + var(--rqb-border-width)));height:calc(50% + var(--rqb-spacing) + var(--rqb-border-width))}.queryBuilder-branches:dir(rtl) .rule-hasSubQuery:before,.queryBuilder-branches:dir(rtl) .ruleGroup .ruleGroup:before{height:calc(50% + var(--rqb-border-width))}.queryBuilder-branches:dir(rtl) .betweenRules:after{content:"";width:var(--rqb-branch-indent);right:calc(-1*(var(--rqb-branch-indent) + var(--rqb-branch-width)));border-radius:0;position:absolute;top:calc(-1*var(--rqb-spacing));height:calc(100% + var(--rqb-spacing));border-width:0 var(--rqb-branch-width) 0 0}.queryBuilder-justified:dir(ltr) .ruleGroup-combinators+.ruleGroup-addRule,.queryBuilder-justified:dir(ltr) .ruleGroup-combinators+.ruleGroup-addGroup,.queryBuilder-justified:dir(ltr) .ruleGroup-combinators+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(ltr) .ruleGroup-combinators+.ruleGroup-lock,.queryBuilder-justified:dir(ltr) .ruleGroup-combinators+.ruleGroup-remove,.queryBuilder-justified:dir(ltr) .ruleGroup-combinators+.rule-cloneRule,.queryBuilder-justified:dir(ltr) .ruleGroup-combinators+.rule-lock,.queryBuilder-justified:dir(ltr) .ruleGroup-combinators+.rule-remove,.queryBuilder-justified:dir(ltr) .ruleGroup-notToggle+.ruleGroup-addRule,.queryBuilder-justified:dir(ltr) .ruleGroup-notToggle+.ruleGroup-addGroup,.queryBuilder-justified:dir(ltr) .ruleGroup-notToggle+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(ltr) .ruleGroup-notToggle+.ruleGroup-lock,.queryBuilder-justified:dir(ltr) .ruleGroup-notToggle+.ruleGroup-remove,.queryBuilder-justified:dir(ltr) .ruleGroup-notToggle+.rule-cloneRule,.queryBuilder-justified:dir(ltr) .ruleGroup-notToggle+.rule-lock,.queryBuilder-justified:dir(ltr) .ruleGroup-notToggle+.rule-remove,.queryBuilder-justified:dir(ltr) .shiftActions+.ruleGroup-addRule,.queryBuilder-justified:dir(ltr) .shiftActions+.ruleGroup-addGroup,.queryBuilder-justified:dir(ltr) .shiftActions+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(ltr) .shiftActions+.ruleGroup-lock,.queryBuilder-justified:dir(ltr) .shiftActions+.ruleGroup-remove,.queryBuilder-justified:dir(ltr) .shiftActions+.rule-cloneRule,.queryBuilder-justified:dir(ltr) .shiftActions+.rule-lock,.queryBuilder-justified:dir(ltr) .shiftActions+.rule-remove,.queryBuilder-justified:dir(ltr) .queryBuilder-dragHandle+.ruleGroup-addRule,.queryBuilder-justified:dir(ltr) .queryBuilder-dragHandle+.ruleGroup-addGroup,.queryBuilder-justified:dir(ltr) .queryBuilder-dragHandle+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(ltr) .queryBuilder-dragHandle+.ruleGroup-lock,.queryBuilder-justified:dir(ltr) .queryBuilder-dragHandle+.ruleGroup-remove,.queryBuilder-justified:dir(ltr) .queryBuilder-dragHandle+.rule-cloneRule,.queryBuilder-justified:dir(ltr) .queryBuilder-dragHandle+.rule-lock,.queryBuilder-justified:dir(ltr) .queryBuilder-dragHandle+.rule-remove,.queryBuilder-justified:dir(ltr) .ruleGroup-header+.ruleGroup-addRule,.queryBuilder-justified:dir(ltr) .ruleGroup-header+.ruleGroup-addGroup,.queryBuilder-justified:dir(ltr) .ruleGroup-header+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(ltr) .ruleGroup-header+.ruleGroup-lock,.queryBuilder-justified:dir(ltr) .ruleGroup-header+.ruleGroup-remove,.queryBuilder-justified:dir(ltr) .ruleGroup-header+.rule-cloneRule,.queryBuilder-justified:dir(ltr) .ruleGroup-header+.rule-lock,.queryBuilder-justified:dir(ltr) .ruleGroup-header+.rule-remove,.queryBuilder-justified:dir(ltr) .rule-operators+.ruleGroup-addRule,.queryBuilder-justified:dir(ltr) .rule-operators+.ruleGroup-addGroup,.queryBuilder-justified:dir(ltr) .rule-operators+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(ltr) .rule-operators+.ruleGroup-lock,.queryBuilder-justified:dir(ltr) .rule-operators+.ruleGroup-remove,.queryBuilder-justified:dir(ltr) .rule-operators+.rule-cloneRule,.queryBuilder-justified:dir(ltr) .rule-operators+.rule-lock,.queryBuilder-justified:dir(ltr) .rule-operators+.rule-remove,.queryBuilder-justified:dir(ltr) .rule-value+.ruleGroup-addRule,.queryBuilder-justified:dir(ltr) .rule-value+.ruleGroup-addGroup,.queryBuilder-justified:dir(ltr) .rule-value+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(ltr) .rule-value+.ruleGroup-lock,.queryBuilder-justified:dir(ltr) .rule-value+.ruleGroup-remove,.queryBuilder-justified:dir(ltr) .rule-value+.rule-cloneRule,.queryBuilder-justified:dir(ltr) .rule-value+.rule-lock,.queryBuilder-justified:dir(ltr) .rule-value+.rule-remove,.queryBuilder-justified:dir(ltr) .control+.ruleGroup-addRule,.queryBuilder-justified:dir(ltr) .control+.ruleGroup-addGroup,.queryBuilder-justified:dir(ltr) .control+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(ltr) .control+.ruleGroup-lock,.queryBuilder-justified:dir(ltr) .control+.ruleGroup-remove,.queryBuilder-justified:dir(ltr) .control+.rule-cloneRule,.queryBuilder-justified:dir(ltr) .control+.rule-lock,.queryBuilder-justified:dir(ltr) .control+.rule-remove,.queryBuilder-justified:dir(ltr) .chakra-select__wrapper+.ruleGroup-addRule,.queryBuilder-justified:dir(ltr) .chakra-select__wrapper+.ruleGroup-addGroup,.queryBuilder-justified:dir(ltr) .chakra-select__wrapper+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(ltr) .chakra-select__wrapper+.ruleGroup-lock,.queryBuilder-justified:dir(ltr) .chakra-select__wrapper+.ruleGroup-remove,.queryBuilder-justified:dir(ltr) .chakra-select__wrapper+.rule-cloneRule,.queryBuilder-justified:dir(ltr) .chakra-select__wrapper+.rule-lock,.queryBuilder-justified:dir(ltr) .chakra-select__wrapper+.rule-remove,.queryBuilder-justified:dir(ltr) input[type=hidden]+.ruleGroup-addRule,.queryBuilder-justified:dir(ltr) input[type=hidden]+.ruleGroup-addGroup,.queryBuilder-justified:dir(ltr) input[type=hidden]+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(ltr) input[type=hidden]+.ruleGroup-lock,.queryBuilder-justified:dir(ltr) input[type=hidden]+.ruleGroup-remove,.queryBuilder-justified:dir(ltr) input[type=hidden]+.rule-cloneRule,.queryBuilder-justified:dir(ltr) input[type=hidden]+.rule-lock,.queryBuilder-justified:dir(ltr) input[type=hidden]+.rule-remove{margin-left:auto!important}.queryBuilder-justified:dir(ltr) .ruleGroup-addRule:first-child,.queryBuilder-justified:dir(ltr) .ruleGroup-addGroup:first-child{margin-left:auto!important}.queryBuilder-justified:dir(rtl) .ruleGroup-combinators+.ruleGroup-addRule,.queryBuilder-justified:dir(rtl) .ruleGroup-combinators+.ruleGroup-addGroup,.queryBuilder-justified:dir(rtl) .ruleGroup-combinators+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(rtl) .ruleGroup-combinators+.ruleGroup-lock,.queryBuilder-justified:dir(rtl) .ruleGroup-combinators+.ruleGroup-remove,.queryBuilder-justified:dir(rtl) .ruleGroup-combinators+.rule-cloneRule,.queryBuilder-justified:dir(rtl) .ruleGroup-combinators+.rule-lock,.queryBuilder-justified:dir(rtl) .ruleGroup-combinators+.rule-remove,.queryBuilder-justified:dir(rtl) .ruleGroup-notToggle+.ruleGroup-addRule,.queryBuilder-justified:dir(rtl) .ruleGroup-notToggle+.ruleGroup-addGroup,.queryBuilder-justified:dir(rtl) .ruleGroup-notToggle+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(rtl) .ruleGroup-notToggle+.ruleGroup-lock,.queryBuilder-justified:dir(rtl) .ruleGroup-notToggle+.ruleGroup-remove,.queryBuilder-justified:dir(rtl) .ruleGroup-notToggle+.rule-cloneRule,.queryBuilder-justified:dir(rtl) .ruleGroup-notToggle+.rule-lock,.queryBuilder-justified:dir(rtl) .ruleGroup-notToggle+.rule-remove,.queryBuilder-justified:dir(rtl) .shiftActions+.ruleGroup-addRule,.queryBuilder-justified:dir(rtl) .shiftActions+.ruleGroup-addGroup,.queryBuilder-justified:dir(rtl) .shiftActions+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(rtl) .shiftActions+.ruleGroup-lock,.queryBuilder-justified:dir(rtl) .shiftActions+.ruleGroup-remove,.queryBuilder-justified:dir(rtl) .shiftActions+.rule-cloneRule,.queryBuilder-justified:dir(rtl) .shiftActions+.rule-lock,.queryBuilder-justified:dir(rtl) .shiftActions+.rule-remove,.queryBuilder-justified:dir(rtl) .queryBuilder-dragHandle+.ruleGroup-addRule,.queryBuilder-justified:dir(rtl) .queryBuilder-dragHandle+.ruleGroup-addGroup,.queryBuilder-justified:dir(rtl) .queryBuilder-dragHandle+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(rtl) .queryBuilder-dragHandle+.ruleGroup-lock,.queryBuilder-justified:dir(rtl) .queryBuilder-dragHandle+.ruleGroup-remove,.queryBuilder-justified:dir(rtl) .queryBuilder-dragHandle+.rule-cloneRule,.queryBuilder-justified:dir(rtl) .queryBuilder-dragHandle+.rule-lock,.queryBuilder-justified:dir(rtl) .queryBuilder-dragHandle+.rule-remove,.queryBuilder-justified:dir(rtl) .ruleGroup-header+.ruleGroup-addRule,.queryBuilder-justified:dir(rtl) .ruleGroup-header+.ruleGroup-addGroup,.queryBuilder-justified:dir(rtl) .ruleGroup-header+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(rtl) .ruleGroup-header+.ruleGroup-lock,.queryBuilder-justified:dir(rtl) .ruleGroup-header+.ruleGroup-remove,.queryBuilder-justified:dir(rtl) .ruleGroup-header+.rule-cloneRule,.queryBuilder-justified:dir(rtl) .ruleGroup-header+.rule-lock,.queryBuilder-justified:dir(rtl) .ruleGroup-header+.rule-remove,.queryBuilder-justified:dir(rtl) .rule-operators+.ruleGroup-addRule,.queryBuilder-justified:dir(rtl) .rule-operators+.ruleGroup-addGroup,.queryBuilder-justified:dir(rtl) .rule-operators+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(rtl) .rule-operators+.ruleGroup-lock,.queryBuilder-justified:dir(rtl) .rule-operators+.ruleGroup-remove,.queryBuilder-justified:dir(rtl) .rule-operators+.rule-cloneRule,.queryBuilder-justified:dir(rtl) .rule-operators+.rule-lock,.queryBuilder-justified:dir(rtl) .rule-operators+.rule-remove,.queryBuilder-justified:dir(rtl) .rule-value+.ruleGroup-addRule,.queryBuilder-justified:dir(rtl) .rule-value+.ruleGroup-addGroup,.queryBuilder-justified:dir(rtl) .rule-value+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(rtl) .rule-value+.ruleGroup-lock,.queryBuilder-justified:dir(rtl) .rule-value+.ruleGroup-remove,.queryBuilder-justified:dir(rtl) .rule-value+.rule-cloneRule,.queryBuilder-justified:dir(rtl) .rule-value+.rule-lock,.queryBuilder-justified:dir(rtl) .rule-value+.rule-remove,.queryBuilder-justified:dir(rtl) .control+.ruleGroup-addRule,.queryBuilder-justified:dir(rtl) .control+.ruleGroup-addGroup,.queryBuilder-justified:dir(rtl) .control+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(rtl) .control+.ruleGroup-lock,.queryBuilder-justified:dir(rtl) .control+.ruleGroup-remove,.queryBuilder-justified:dir(rtl) .control+.rule-cloneRule,.queryBuilder-justified:dir(rtl) .control+.rule-lock,.queryBuilder-justified:dir(rtl) .control+.rule-remove,.queryBuilder-justified:dir(rtl) .chakra-select__wrapper+.ruleGroup-addRule,.queryBuilder-justified:dir(rtl) .chakra-select__wrapper+.ruleGroup-addGroup,.queryBuilder-justified:dir(rtl) .chakra-select__wrapper+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(rtl) .chakra-select__wrapper+.ruleGroup-lock,.queryBuilder-justified:dir(rtl) .chakra-select__wrapper+.ruleGroup-remove,.queryBuilder-justified:dir(rtl) .chakra-select__wrapper+.rule-cloneRule,.queryBuilder-justified:dir(rtl) .chakra-select__wrapper+.rule-lock,.queryBuilder-justified:dir(rtl) .chakra-select__wrapper+.rule-remove,.queryBuilder-justified:dir(rtl) input[type=hidden]+.ruleGroup-addRule,.queryBuilder-justified:dir(rtl) input[type=hidden]+.ruleGroup-addGroup,.queryBuilder-justified:dir(rtl) input[type=hidden]+.ruleGroup-cloneGroup,.queryBuilder-justified:dir(rtl) input[type=hidden]+.ruleGroup-lock,.queryBuilder-justified:dir(rtl) input[type=hidden]+.ruleGroup-remove,.queryBuilder-justified:dir(rtl) input[type=hidden]+.rule-cloneRule,.queryBuilder-justified:dir(rtl) input[type=hidden]+.rule-lock,.queryBuilder-justified:dir(rtl) input[type=hidden]+.rule-remove{margin-right:auto!important}.queryBuilder-justified:dir(rtl) .ruleGroup-addRule:first-child,.queryBuilder-justified:dir(rtl) .ruleGroup-addGroup:first-child{margin-right:auto!important}.ruleGroup,.rule-hasSubQuery{border-color:var(--rqb-border-color);border-style:var(--rqb-border-style);border-radius:var(--rqb-border-radius);background:var(--rqb-background-color)}.ruleGroup .shiftActions>*,.rule-hasSubQuery .shiftActions>*{background-color:#0000;border:none;cursor:pointer}.dndOver.rule,.dndOver.ruleGroup-header:not(.dndGroup .ruleGroup-header){border-bottom-width:var(--rqb-dnd-drop-indicator-width);border-bottom-style:var(--rqb-dnd-drop-indicator-style);border-bottom-color:var(--rqb-dnd-drop-indicator-color)}.dndOver.rule.dndCopy,.dndOver.ruleGroup-header:not(.dndGroup .ruleGroup-header).dndCopy{border-bottom-width:var(--rqb-dnd-drop-indicator-copy-width);border-bottom-style:var(--rqb-dnd-drop-indicator-copy-style);border-bottom-color:var(--rqb-dnd-drop-indicator-copy-color)}.dndOver.betweenRules{border-top-width:var(--rqb-dnd-drop-indicator-width);border-top-style:var(--rqb-dnd-drop-indicator-style);border-top-color:var(--rqb-dnd-drop-indicator-color)}.dndOver.betweenRules.dndCopy{border-top-width:var(--rqb-dnd-drop-indicator-copy-width);border-top-style:var(--rqb-dnd-drop-indicator-copy-style);border-top-color:var(--rqb-dnd-drop-indicator-copy-color)}.dndDropNotAllowed{cursor:var(--rqb-dnd-drop-not-allowed-cursor)}.dndGroup.rule.dndOver,.dndGroup.ruleGroup:has(>.ruleGroup-header.dndOver){border-width:var(--rqb-dnd-drop-indicator-group-width);border-style:var(--rqb-dnd-drop-indicator-group-style);border-color:var(--rqb-dnd-drop-indicator-group-color);border-radius:var(--rqb-border-radius)}.dndGroup.rule.dndOver.dndCopy,.dndGroup.ruleGroup:has(>.ruleGroup-header.dndOver).dndCopy{border-color:var(--rqb-dnd-drop-indicator-copy-color);border-width:var(--rqb-dnd-drop-indicator-copy-width);border-style:var(--rqb-dnd-drop-indicator-copy-style)}.ruleGroup.dndDragging,.rule.dndDragging{opacity:.5}.ruleGroup .queryBuilder-dragHandle,.rule .queryBuilder-dragHandle{cursor:move}.ruleGroup.queryBuilder-disabled .queryBuilder-dragHandle,.rule.queryBuilder-disabled .queryBuilder-dragHandle{cursor:not-allowed;opacity:.5}.queryBuilder-branches:dir(ltr) .rule:before,.queryBuilder-branches:dir(ltr) .rule:after,.queryBuilder-branches:dir(ltr) .ruleGroup .ruleGroup:before,.queryBuilder-branches:dir(ltr) .ruleGroup .ruleGroup:after{border-color:var(--rqb-branch-color);border-style:var(--rqb-branch-style)}.queryBuilder-branches:dir(ltr) .rule:last-child:before,.queryBuilder-branches:dir(ltr) .ruleGroup .ruleGroup:last-child:before{border-bottom-left-radius:var(--rqb-branch-radius)}.queryBuilder-branches:dir(ltr) .betweenRules{position:relative}.queryBuilder-branches:dir(ltr) .betweenRules:before{border-color:var(--rqb-branch-color);border-style:var(--rqb-branch-style)}.queryBuilder-branches:dir(rtl) .rule:before,.queryBuilder-branches:dir(rtl) .rule:after,.queryBuilder-branches:dir(rtl) .ruleGroup .ruleGroup:before,.queryBuilder-branches:dir(rtl) .ruleGroup .ruleGroup:after{border-color:var(--rqb-branch-color);border-style:var(--rqb-branch-style)}.queryBuilder-branches:dir(rtl) .rule:last-child:after,.queryBuilder-branches:dir(rtl) .ruleGroup .ruleGroup:last-child:after{border-bottom-right-radius:var(--rqb-branch-radius)}.queryBuilder-branches:dir(rtl) .betweenRules{position:relative}.queryBuilder-branches:dir(rtl) .betweenRules:after{border-color:var(--rqb-branch-color);border-style:var(--rqb-branch-style)}.grouped-field-selector{padding:6px 10px;border:1px solid var(--color-border, #e5e7eb);border-radius:4px;font-size:14px;background:#fff;min-width:120px;cursor:pointer}.grouped-field-selector:focus{outline:none;border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 2px var(--color-primary-light, rgba(59, 130, 246, .1))}.grouped-field-selector:disabled{background:var(--color-bg-secondary, #f9fafb);cursor:not-allowed;opacity:.6}.grouped-field-selector optgroup{font-weight:600;color:var(--color-text-secondary, #6b7280);font-size:12px;text-transform:uppercase;letter-spacing:.025em;padding:8px 0 4px}.grouped-field-selector option{font-weight:400;color:var(--color-text-primary, #111827);font-size:14px;padding:6px 12px}.grouped-field-selector option:hover{background:var(--color-bg-secondary, #f9fafb)}.broadcast-wizard{display:flex;flex-direction:column;min-height:100vh;height:100%;background:var(--bg-primary, #fff)}.wizard-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid var(--border-color, #e5e7eb)}.wizard-header h1{margin:0;font-size:1.5rem;font-weight:600;color:var(--text-primary, #111827)}.wizard-close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary, #6b7280);cursor:pointer;padding:.5rem;line-height:1}.wizard-close:hover{color:var(--text-primary, #111827)}.wizard-loading{display:flex;justify-content:center;align-items:center;height:100%;font-size:1rem;color:var(--text-secondary, #6b7280)}.wizard-content{flex:1;overflow-y:auto;padding:2rem}.wizard-footer{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;border-top:1px solid var(--border-color, #e5e7eb);background:var(--bg-secondary, #f9fafb);position:sticky;bottom:0;z-index:10}.wizard-footer-right{display:flex;gap:.75rem;margin-left:auto}.wizard-stepper{display:flex;justify-content:center;padding:1.5rem 2rem;border-bottom:1px solid var(--border-color, #e5e7eb);background:var(--bg-secondary, #f9fafb)}.stepper-steps{display:flex;align-items:center;gap:0}.stepper-step{display:flex;align-items:center;cursor:pointer}.stepper-step-content{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.5rem;transition:background .2s}.stepper-step-content:hover{background:var(--bg-hover, #f3f4f6)}.stepper-step-number{display:flex;justify-content:center;align-items:center;width:2rem;height:2rem;border-radius:50%;font-size:.875rem;font-weight:600;background:var(--bg-tertiary, #e5e7eb);color:var(--text-secondary, #6b7280)}.stepper-step.active .stepper-step-number{background:var(--primary, #3b82f6);color:#fff}.stepper-step.completed .stepper-step-number{background:var(--success, #10b981);color:#fff}.stepper-step-label{font-size:.875rem;color:var(--text-secondary, #6b7280)}.stepper-step.active .stepper-step-label{color:var(--text-primary, #111827);font-weight:500}.stepper-connector{width:3rem;height:2px;background:var(--border-color, #e5e7eb);margin:0 .5rem}.stepper-step.completed+.stepper-connector,.stepper-connector.completed{background:var(--success, #10b981)}.step-section{margin-bottom:2rem}.step-section h2{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:var(--text-primary, #111827)}.step-section p{margin:0 0 1rem;font-size:.875rem;color:var(--text-secondary, #6b7280)}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:var(--text-primary, #111827)}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem;border:1px solid var(--border-color, #d1d5db);border-radius:.5rem;font-size:.875rem;background:var(--bg-primary, #fff);color:var(--text-primary, #111827)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--primary, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.form-group textarea{min-height:100px;resize:vertical}.audience-summary{margin-top:1rem;padding:.75rem 1rem;background:#10b9811a;border:1px solid rgba(16,185,129,.2);border-radius:.5rem;font-size:.875rem;color:var(--text-primary, #111827)}.audience-summary-count{font-weight:600;color:var(--success, #10b981)}.radio-group{display:flex;flex-direction:column;gap:.75rem}.radio-option{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border:1px solid var(--border-color, #e5e7eb);border-radius:.5rem;cursor:pointer;transition:all .2s}.radio-option:hover{background:var(--bg-secondary, #f9fafb)}.radio-option.selected{border-color:var(--primary, #3b82f6);background:#3b82f60d}.radio-option input[type=radio]{margin-top:.25rem}.radio-option-content{flex:1}.radio-option-label{font-weight:500;color:var(--text-primary, #111827)}.radio-option-description{font-size:.875rem;color:var(--text-secondary, #6b7280);margin-top:.25rem}.channel-selector{display:flex;gap:.75rem}.channel-card{flex:1;max-width:180px;padding:.875rem 1rem;border:2px solid var(--border-color, #e5e7eb);border-radius:.5rem;cursor:pointer;text-align:center;transition:all .2s}.channel-card:hover{border-color:var(--primary, #3b82f6)}.channel-card.selected{border-color:var(--primary, #3b82f6);background:#3b82f60d}.channel-name{font-weight:600;font-size:.9375rem;color:var(--text-primary, #111827)}.channel-description{font-size:.75rem;color:var(--text-secondary, #6b7280);margin-top:.25rem}.toggle-group{display:flex;justify-content:space-between;align-items:center;padding:1rem;border:1px solid var(--border-color, #e5e7eb);border-radius:.5rem;margin-bottom:1rem}.toggle-label{flex:1}.toggle-label-text{font-weight:500;color:var(--text-primary, #111827)}.toggle-label-description{font-size:.875rem;color:var(--text-secondary, #6b7280);margin-top:.25rem}.toggle-switch{position:relative;width:3rem;height:1.5rem;background:var(--bg-tertiary, #e5e7eb);border-radius:1rem;cursor:pointer;transition:background .2s}.toggle-switch.active{background:var(--primary, #3b82f6)}.toggle-switch:after{content:"";position:absolute;top:.125rem;left:.125rem;width:1.25rem;height:1.25rem;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #0000001a}.toggle-switch.active:after{transform:translate(1.5rem)}.info-banner{display:flex;gap:.75rem;padding:1rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:.5rem;margin-bottom:1.5rem}.info-banner-icon{color:var(--primary, #3b82f6);font-size:1.25rem}.info-banner-text{flex:1;font-size:.875rem;color:var(--text-primary, #111827)}.review-section{margin-bottom:1.5rem}.review-card{border:1px solid var(--border-color, #e5e7eb);border-radius:.75rem;overflow:hidden}.review-card-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-secondary, #f9fafb);border-bottom:1px solid var(--border-color, #e5e7eb)}.review-card-header h3{margin:0;font-size:.875rem;font-weight:600;color:var(--text-primary, #111827)}.review-card-edit{font-size:.75rem;color:var(--primary, #3b82f6);cursor:pointer}.review-card-edit:hover{text-decoration:underline}.review-card-body{padding:1rem}.review-item{display:flex;justify-content:space-between;padding:.5rem 0}.review-item:not(:last-child){border-bottom:1px solid var(--border-color, #f3f4f6)}.review-item-label{font-size:.875rem;color:var(--text-secondary, #6b7280)}.review-item-value{font-size:.875rem;font-weight:500;color:var(--text-primary, #111827)}.broadcast-wizard .btn{padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .15s ease;border:none}.broadcast-wizard .btn--primary{background:#000;color:#fff}.broadcast-wizard .btn--primary:hover:not(:disabled){background:#1f2937}.broadcast-wizard .btn--primary:disabled{opacity:.5;cursor:not-allowed}.broadcast-wizard .btn--secondary{background:#e5e7eb;color:#111827;border:1px solid #d1d5db}.broadcast-wizard .btn--secondary:hover:not(:disabled){background:#d1d5db}.broadcast-wizard .btn-primary,.broadcast-wizard .wizard-footer .btn-primary,.broadcast-wizard .wizard-footer-right .btn-primary{background:#000!important;background-color:#000!important;color:#fff!important}.broadcast-wizard .btn-primary:hover:not(:disabled),.broadcast-wizard .wizard-footer .btn-primary:hover:not(:disabled){background:#1f2937!important;background-color:#1f2937!important}.broadcast-wizard .btn-primary:disabled,.broadcast-wizard .wizard-footer .btn-primary:disabled{opacity:.5;cursor:not-allowed;background:#000!important;background-color:#000!important}.broadcast-wizard .btn-secondary,.broadcast-wizard .wizard-footer .btn-secondary{background:#e5e7eb!important;background-color:#e5e7eb!important;color:#111827!important;border:1px solid #d1d5db!important}.broadcast-wizard .btn-secondary:hover:not(:disabled),.broadcast-wizard .wizard-footer .btn-secondary:hover:not(:disabled){background:#d1d5db!important;background-color:#d1d5db!important}.audience-mode-toggle{display:flex;gap:1.5rem;margin-bottom:1.5rem}.audience-mode-option{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;color:var(--text-secondary, #6b7280)}.audience-mode-option.selected{color:var(--text-primary, #111827);font-weight:500}.audience-mode-option input[type=radio]{width:1rem;height:1rem;accent-color:var(--primary, #3b82f6)}.create-segment-inline{border:1px solid var(--border-color, #e5e7eb);border-radius:.75rem;padding:1.5rem;background:var(--bg-primary, #fff);margin-bottom:1.5rem}.conditions-section{margin-top:1.5rem}.conditions-section h3{margin:0 0 1rem;font-size:.9375rem;font-weight:600;color:var(--text-primary, #111827)}.create-segment-actions{display:flex;gap:.75rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color, #e5e7eb)}.inline-query-builder{background:var(--bg-secondary, #f9fafb);border-radius:.5rem;padding:1rem}.inline-query-builder .ruleGroup{background:transparent;border:none;padding:0}.inline-query-builder .ruleGroup-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.inline-query-builder .ruleGroup-combinators{padding:.375rem .75rem;border:1px solid var(--border-color, #d1d5db);border-radius:.375rem;background:var(--bg-primary, #fff);font-size:.875rem}.inline-query-builder .ruleGroup-addRule,.inline-query-builder .ruleGroup-addGroup{padding:.375rem .75rem;border:1px solid var(--border-color, #d1d5db);border-radius:.375rem;background:var(--bg-primary, #fff);font-size:.8125rem;cursor:pointer;color:var(--text-primary, #111827)}.inline-query-builder .ruleGroup-addRule:hover,.inline-query-builder .ruleGroup-addGroup:hover{background:var(--bg-tertiary, #f3f4f6)}.inline-query-builder .rule{display:flex;align-items:center;gap:.5rem;padding:.5rem 0}.inline-query-builder .rule select,.inline-query-builder .rule input{padding:.375rem .75rem;border:1px solid var(--border-color, #d1d5db);border-radius:.375rem;font-size:.875rem;background:var(--bg-primary, #fff)}.inline-query-builder .rule-remove{padding:.25rem .5rem;border:none;background:none;color:var(--text-secondary, #6b7280);cursor:pointer;font-size:1rem}.inline-query-builder .rule-remove:hover{color:#dc2626}.segment-actions{display:flex;gap:.75rem;margin-bottom:1rem}.content-mode-selector{display:flex;gap:.75rem;margin-bottom:1.5rem}.content-mode-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color, #e5e7eb)}.content-mode-header span{font-weight:500;color:var(--text-primary, #111827)}.template-selector{border:1px solid var(--border-color, #e5e7eb);border-radius:.75rem;background:var(--bg-primary, #fff);margin-bottom:1.5rem}.template-selector-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--border-color, #e5e7eb);background:var(--bg-secondary, #f9fafb);border-radius:.75rem .75rem 0 0}.template-selector-header h3{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary, #111827)}.template-selector-close{background:none;border:none;font-size:1.25rem;color:var(--text-secondary, #6b7280);cursor:pointer;padding:.25rem;line-height:1}.template-selector-close:hover{color:var(--text-primary, #111827)}.template-selector-search{padding:1rem;border-bottom:1px solid var(--border-color, #e5e7eb)}.template-selector-loading,.template-selector-error,.template-selector-empty{padding:2rem;text-align:center;color:var(--text-secondary, #6b7280)}.template-selector-empty button{margin-top:.5rem;background:none;border:none;color:var(--primary, #3b82f6);cursor:pointer;text-decoration:underline}.template-selector-empty a{color:var(--primary, #3b82f6)}.template-list{max-height:400px;overflow-y:auto}.template-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--border-color, #f3f4f6);cursor:pointer;transition:background .15s ease}.template-item:last-child{border-bottom:none}.template-item:hover{background:var(--bg-secondary, #f9fafb)}.template-item.selected{background:#3b82f60d;border-left:3px solid var(--primary, #3b82f6)}.template-item-content{flex:1;min-width:0}.template-item-name{font-weight:500;color:var(--text-primary, #111827);margin-bottom:.25rem}.template-item-subject,.template-item-preview{font-size:.8125rem;color:var(--text-secondary, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.template-item-meta{font-size:.75rem;color:var(--text-secondary, #6b7280);white-space:nowrap;margin-left:1rem}.template-selector-pagination{padding:.75rem 1rem;border-top:1px solid var(--border-color, #e5e7eb);background:var(--bg-secondary, #f9fafb);border-radius:0 0 .75rem .75rem}.template-preview{border:1px solid var(--border-color, #e5e7eb);border-radius:.75rem;background:var(--bg-primary, #fff);margin-bottom:1.5rem;overflow:hidden}.template-preview-loading,.template-preview-error{padding:2rem;text-align:center;color:var(--text-secondary, #6b7280)}.template-preview-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-secondary, #f9fafb);border-bottom:1px solid var(--border-color, #e5e7eb)}.template-preview-info{display:flex;flex-direction:column;gap:.25rem}.template-preview-label{font-size:.75rem;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em}.template-preview-name{font-weight:600;color:var(--text-primary, #111827)}.template-preview-actions{display:flex;gap:.5rem}.template-preview-content{padding:1rem}.template-preview-subject{padding:.75rem;background:var(--bg-tertiary, #f3f4f6);border-radius:.375rem;margin-bottom:1rem;font-size:.875rem}.template-preview-body{border:1px solid var(--border-color, #e5e7eb);border-radius:.5rem;overflow:hidden}.template-preview-iframe{width:100%;height:300px;border:none;background:#fff}.template-preview-sms{background:var(--bg-tertiary, #f3f4f6);border-radius:.5rem;padding:1rem}.template-preview-sms-content{font-size:.9375rem;line-height:1.5;color:var(--text-primary, #111827);white-space:pre-wrap}.template-preview-sms-meta{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border-color, #e5e7eb);font-size:.75rem;color:var(--text-secondary, #6b7280)}.template-preview-empty{padding:2rem;text-align:center;color:var(--text-secondary, #6b7280)}.form-error{padding:.75rem 1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:.5rem;color:#dc2626;font-size:.875rem;margin-bottom:1rem}.modal-footer-actions{display:flex;justify-content:flex-end;gap:.75rem}.broadcast-detail{padding:2rem;max-width:1200px;margin:0 auto}.detail-loading,.detail-error{text-align:center;padding:4rem 2rem}.detail-error h2{margin:0 0 .5rem;color:var(--text-primary, #111827)}.detail-error p{margin:0 0 1.5rem;color:var(--text-secondary, #6b7280)}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;gap:1rem;flex-wrap:wrap}.detail-header-left{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.btn-back{background:none;border:none;color:var(--text-secondary, #6b7280);cursor:pointer;font-size:.875rem;padding:0}.btn-back:hover{color:var(--text-primary, #111827)}.detail-header h1{margin:0;font-size:1.5rem;font-weight:600;color:var(--text-primary, #111827)}.detail-header-actions{display:flex;gap:.5rem;flex-wrap:wrap}.status-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:500;text-transform:capitalize}.badge-gray{background:var(--bg-tertiary, #e5e7eb);color:var(--text-secondary, #6b7280)}.badge-blue{background:#3b82f61a;color:#3b82f6}.badge-yellow{background:#eab3081a;color:#ca8a04}.badge-orange{background:#f973161a;color:#ea580c}.badge-green{background:#10b9811a;color:#059669}.badge-red{background:#ef44441a;color:#dc2626}.detail-content{display:grid;gap:1.5rem}.detail-card{background:var(--bg-primary, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:.75rem;padding:1.5rem}.detail-card h3{margin:0 0 1rem;font-size:.875rem;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--border-color, #f3f4f6)}.detail-row:last-child{border-bottom:none;padding-bottom:0}.detail-row:first-of-type{padding-top:0}.detail-label{font-size:.875rem;color:var(--text-secondary, #6b7280)}.detail-value{font-size:.875rem;font-weight:500;color:var(--text-primary, #111827)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.stat-item{text-align:center;padding:1rem;background:var(--bg-secondary, #f9fafb);border-radius:.5rem}.stat-value{font-size:1.5rem;font-weight:600;color:var(--text-primary, #111827)}.stat-label{font-size:.75rem;color:var(--text-secondary, #6b7280);margin-top:.25rem}.success-banner{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#10b9811a;border:1px solid rgba(16,185,129,.2);border-radius:.5rem;color:#059669;font-weight:500}.error-banner{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:.5rem;color:#dc2626}.btn{padding:.5rem 1rem;border:none;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:#000;color:#fff}.btn-primary:hover:not(:disabled){background:#1f2937}.btn-secondary{background:var(--bg-tertiary, #e5e7eb);color:var(--text-primary, #111827)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover, #d1d5db)}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626}@media(max-width:640px){.stats-grid{grid-template-columns:repeat(2,1fr)}.detail-header{flex-direction:column}.detail-header-left,.detail-header-actions{width:100%}}.settings-page{padding:1.5rem;max-width:800px}.settings-page h1{font-size:1.5rem;font-weight:600;color:var(--color-gray-900);margin-bottom:1.5rem}.settings-section{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #0000001a;margin-bottom:1.5rem}.settings-section h2{font-size:1.125rem;font-weight:600;color:var(--color-gray-900);margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-gray-200)}.settings-form{display:flex;flex-direction:column;gap:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group label{font-size:.875rem;font-weight:500;color:var(--color-gray-700)}.form-group input{padding:.5rem .75rem;border:1px solid var(--color-gray-300);border-radius:6px;font-size:.875rem;transition:border-color .15s}.form-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a}.form-group input:disabled{background-color:var(--color-gray-100);cursor:not-allowed}.form-group input.error{border-color:var(--color-error)}.form-group .error-message{color:var(--color-error);font-size:.75rem}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.avatar-upload{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.avatar-preview{width:80px;height:80px;border-radius:50%;overflow:hidden;background:var(--color-gray-200);display:flex;align-items:center;justify-content:center}.avatar-preview img{width:100%;height:100%;object-fit:cover}.avatar-preview .avatar-placeholder{font-size:2rem;color:var(--color-gray-500)}.avatar-actions{display:flex;flex-direction:column;gap:.5rem}.avatar-actions input[type=file]{display:none}.password-strength{margin-top:.5rem}.password-strength-bar{height:4px;background:var(--color-gray-200);border-radius:2px;margin-bottom:.5rem;overflow:hidden}.password-strength-fill{height:100%;transition:width .2s,background-color .2s}.password-strength-fill.weak{width:33%;background:var(--color-error)}.password-strength-fill.medium{width:66%;background:var(--color-warning)}.password-strength-fill.strong{width:100%;background:var(--color-success)}.password-checklist{display:flex;flex-direction:column;gap:.25rem}.password-checklist-item{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--color-gray-600)}.password-checklist-item.valid{color:var(--color-success)}.password-checklist-item .check-icon{width:14px;height:14px}.settings-toast{position:fixed;bottom:1.5rem;right:1.5rem;padding:.75rem 1rem;border-radius:6px;font-size:.875rem;animation:slideIn .2s ease;z-index:1000}.settings-toast.success{background:var(--color-success-light);color:var(--color-success);border:1px solid var(--color-success)}.settings-toast.error{background:var(--color-error-light);color:var(--color-error);border:1px solid var(--color-error)}@keyframes slideIn{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.integrations-page{padding:24px;width:100%}.integrations-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.integrations-page .page-header h1{font-size:24px;font-weight:600;color:var(--text-primary);margin:0}.tabs-container{margin-bottom:24px;border-bottom:1px solid var(--border-color)}.tabs{display:flex;gap:4px}.tab{padding:12px 16px;font-size:14px;font-weight:500;color:var(--text-secondary);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .2s ease;margin-bottom:-1px}.tab:hover{color:var(--text-primary)}.tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.tab-content{display:flex;flex-direction:column;gap:32px}.connected-channels-section{background:var(--bg-secondary);border-radius:8px;padding:20px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header h2{font-size:16px;font-weight:600;color:var(--text-primary);margin:0}.channels-table{width:100%;border-collapse:collapse}.channels-table th,.channels-table td{padding:12px;text-align:left;border-bottom:1px solid var(--border-color)}.channels-table th{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.channels-table td{font-size:14px;color:var(--text-primary)}.channel-name-cell{display:flex;align-items:center;gap:12px}.channel-icon{width:32px;height:32px;border-radius:6px;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;font-size:16px}.channel-info{display:flex;flex-direction:column}.channel-name{font-weight:500}.channel-provider{font-size:12px;color:var(--text-secondary)}.type-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;text-transform:capitalize}.type-badge.email{background:#3b82f61a;color:#3b82f6}.type-badge.sms{background:#10b9811a;color:#10b981}.type-badge.push{background:#f59e0b1a;color:#f59e0b}.status-badge.connected{background:#10b9811a;color:#10b981}.status-badge.disconnected{background:#6b72801a;color:#6b7280}.default-checkbox{width:16px;height:16px;accent-color:var(--primary-color);cursor:pointer}.actions-cell{position:relative}.supported-channels-section{margin-top:8px}.supported-channels-section h2{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:16px}.provider-type-group{margin-bottom:24px}.provider-type-group h3{font-size:14px;font-weight:600;color:var(--text-secondary);margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.providers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.provider-card{display:flex;align-items:center;gap:12px;padding:16px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s ease}.provider-card:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #0000001a}.provider-card.connected{opacity:.7}.provider-card-icon{width:40px;height:40px;border-radius:8px;background:var(--bg-tertiary);display:flex;align-items:center;justify-content:center;font-size:20px}.provider-card-info{flex:1}.provider-card-name{font-weight:500;color:var(--text-primary);margin-bottom:2px}.provider-card-description{font-size:12px;color:var(--text-secondary)}.provider-card-status{font-size:12px;color:#10b981;font-weight:500}.provider-card-arrow{color:var(--text-secondary);font-size:18px}.connect-modal-content{padding:20px}.connect-modal-header{display:flex;align-items:center;gap:12px;margin-bottom:24px}.connect-modal-icon{width:48px;height:48px;border-radius:12px;background:var(--bg-secondary);display:flex;align-items:center;justify-content:center;font-size:24px}.connect-modal-title h2{font-size:18px;font-weight:600;margin:0 0 4px}.connect-modal-title p{font-size:13px;color:var(--text-secondary);margin:0}.connect-modal-form{display:flex;flex-direction:column;gap:16px}.form-field label{font-size:13px;font-weight:500;color:var(--text-primary)}.form-field label .required{color:#ef4444}.form-field input,.form-field select,.form-field textarea{padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;font-size:14px;color:var(--text-primary);background:var(--bg-primary);transition:border-color .2s ease}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--primary-color)}.form-field textarea{min-height:100px;resize:vertical;font-family:monospace}.form-field input::placeholder,.form-field textarea::placeholder{color:var(--text-muted)}.connect-modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:16px;border-top:1px solid var(--border-color)}.btn{padding:10px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px}.btn-secondary{background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-primary)}.btn-secondary:hover{background:var(--bg-tertiary)}.btn-primary{background:var(--primary-color);border:1px solid var(--primary-color);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-test{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.btn-test:hover{border-color:var(--primary-color);color:var(--primary-color)}.test-result{padding:12px;border-radius:6px;font-size:13px;margin-top:8px}.test-result.success{background:#10b9811a;color:#10b981;border:1px solid rgba(16,185,129,.2)}.test-result.error{background:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.2)}.skeleton{background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--bg-tertiary) 50%,var(--bg-secondary) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:4px}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-row{display:flex;gap:16px;padding:12px}.skeleton-cell{height:20px}.skeleton-cell.name{width:200px}.skeleton-cell.type{width:60px}.skeleton-cell.status{width:80px}.skeleton-cell.default{width:40px}.skeleton-cell.actions{width:32px}.api-key-section{margin-bottom:32px}.api-key-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:24px}.api-key-header{display:flex;align-items:center;gap:16px;margin-bottom:20px}.api-key-icon{width:48px;height:48px;border-radius:12px;background:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center}.api-key-info h3{font-size:18px;font-weight:600;margin:0 0 4px;color:var(--text-primary)}.api-key-info p{font-size:14px;color:var(--text-secondary);margin:0}.api-key-value-container{display:flex;align-items:center;gap:12px;padding:16px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;margin-bottom:16px}.api-key-value{flex:1;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:14px;color:var(--text-primary);word-break:break-all}.api-key-skeleton{height:24px;flex:1}.api-key-actions{display:flex;gap:8px}.icon-btn{width:36px;height:36px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.icon-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.icon-btn:disabled{opacity:.5;cursor:not-allowed}.icon-btn .text-success{color:#10b981}.api-key-meta{display:flex;gap:32px}.meta-item{display:flex;flex-direction:column;gap:4px}.meta-label{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.meta-value{font-size:14px;color:var(--text-primary)}.code-samples-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:24px}.code-samples-section h2{font-size:18px;font-weight:600;margin:0 0 8px;color:var(--text-primary)}.section-description{font-size:14px;color:var(--text-secondary);margin:0 0 20px}.code-tabs{display:flex;gap:4px;margin-bottom:16px;border-bottom:1px solid var(--border-color)}.code-tab{padding:10px 16px;font-size:14px;font-weight:500;color:var(--text-secondary);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .2s ease;margin-bottom:-1px}.code-tab:hover{color:var(--text-primary)}.code-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.code-block{position:relative;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.code-block pre{margin:0;padding:16px;overflow-x:auto}.code-block code{font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:13px;line-height:1.6;color:var(--text-primary);white-space:pre}.copy-code-btn{position:absolute;top:8px;right:8px;width:32px;height:32px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:all .2s ease}.code-block:hover .copy-code-btn{opacity:1}.copy-code-btn:hover{border-color:var(--primary-color);color:var(--primary-color)}.rotate-modal-content{padding:20px}.warning-text{font-size:14px;color:var(--text-secondary);line-height:1.6;margin:0 0 24px}.modal-actions{display:flex;justify-content:flex-end;gap:12px}.btn-danger{background:#ef4444;border:1px solid #ef4444;color:#fff}.btn-danger:hover{background:#dc2626}.btn-danger:disabled{opacity:.6;cursor:not-allowed}.event-providers-page{padding:24px;max-width:1200px;margin:0 auto}.event-providers-page .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.event-providers-page .page-header h1{font-size:24px;font-weight:600;color:var(--color-gray-900);margin:0 0 8px}.page-description{font-size:14px;color:var(--color-gray-500);margin:0}.providers-table-container{background:var(--color-white);border:1px solid var(--color-gray-200);border-radius:8px;overflow:hidden}.provider-name{font-weight:500;color:var(--color-gray-900)}.type-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.type-badge.game_platform{background:#8b5cf61a;color:#8b5cf6}.type-badge.payment{background:#10b9811a;color:#10b981}.type-badge.crm{background:#3b82f61a;color:#3b82f6}.type-badge.custom{background:#6b72801a;color:#6b7280}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.status-badge.active{background:#10b9811a;color:#10b981}.status-badge.paused{background:#f59e0b1a;color:#f59e0b}.status-badge.error{background:#ef44441a;color:#ef4444}.status-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.events-count{font-variant-numeric:tabular-nums}.last-event{color:var(--color-gray-500)}.action-menu-trigger{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--color-gray-500);border-radius:4px;cursor:pointer;transition:all .2s ease}.action-menu-trigger:hover{background:var(--color-gray-100);color:var(--color-gray-900)}.create-provider-form{padding:20px;display:flex;flex-direction:column;gap:16px}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{font-size:13px;font-weight:500;color:var(--color-gray-900)}.form-field .required{color:#ef4444}.form-field input,.form-field select{padding:10px 12px;border:1px solid var(--color-gray-300);border-radius:6px;font-size:14px;color:var(--color-gray-900);background:var(--color-white);transition:border-color .2s ease}.form-field input:focus,.form-field select:focus{outline:none;border-color:var(--color-primary)}.form-field input::placeholder{color:var(--color-gray-400)}.provider-details{padding:20px}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--color-gray-200)}.detail-row:last-of-type{border-bottom:none}.detail-row label{font-size:13px;color:var(--color-gray-500)}.detail-row span{font-size:14px;color:var(--color-gray-900)}.detail-section{margin-top:20px;padding-top:20px;border-top:1px solid var(--color-gray-200)}.detail-section h3{font-size:13px;font-weight:600;color:var(--color-gray-900);margin:0 0 8px}.copyable-field{display:flex;align-items:center;gap:8px;padding:12px;background:var(--color-gray-50);border:1px solid var(--color-gray-200);border-radius:6px;margin-bottom:8px}.copyable-field code{flex:1;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:13px;color:var(--color-gray-900);word-break:break-all}.copy-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-gray-200);border-radius:4px;background:var(--color-white);color:var(--color-gray-500);cursor:pointer;transition:all .2s ease;flex-shrink:0}.copy-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.field-hint{font-size:12px;color:var(--color-gray-500);margin:0}.delete-modal-content{padding:20px}.delete-modal-content p{font-size:14px;color:var(--color-gray-600);line-height:1.6;margin:0 0 24px}.delete-modal-content strong{color:var(--color-gray-900)}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:16px;border-top:1px solid var(--color-gray-200)}.event-providers-page .btn{padding:10px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px}.event-providers-page .btn-secondary{background:var(--color-white, #ffffff);border:1px solid var(--color-gray-300, #d1d5db);color:var(--color-gray-700, #374151)}.event-providers-page .btn-secondary:hover{background:var(--color-gray-50, #f9fafb)}.event-providers-page .btn-primary{background:var(--color-black, #000000);border:1px solid var(--color-black, #000000);color:#fff}.event-providers-page .btn-primary:hover{background:var(--color-gray-800, #1f2937);border-color:var(--color-gray-800, #1f2937)}.event-providers-page .btn-primary:disabled,.event-providers-page .btn-secondary:disabled{opacity:.6;cursor:not-allowed}.event-providers-page .btn-danger{background:var(--color-error, #dc2626);border:1px solid var(--color-error, #dc2626);color:#fff}.event-providers-page .btn-danger:hover{background:#b91c1c;border-color:#b91c1c}.event-providers-page .btn-danger:disabled{opacity:.6;cursor:not-allowed}.create-provider-form .btn,.provider-details .btn,.delete-modal-content .btn{padding:10px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;gap:8px}.create-provider-form .btn-secondary,.provider-details .btn-secondary,.delete-modal-content .btn-secondary{background:var(--color-white, #ffffff);border:1px solid var(--color-gray-300, #d1d5db);color:var(--color-gray-700, #374151)}.create-provider-form .btn-secondary:hover,.provider-details .btn-secondary:hover,.delete-modal-content .btn-secondary:hover{background:var(--color-gray-50, #f9fafb)}.create-provider-form .btn-primary,.provider-details .btn-primary,.delete-modal-content .btn-primary{background:var(--color-black, #000000);border:1px solid var(--color-black, #000000);color:#fff}.create-provider-form .btn-primary:hover,.provider-details .btn-primary:hover,.delete-modal-content .btn-primary:hover{background:var(--color-gray-800, #1f2937);border-color:var(--color-gray-800, #1f2937)}.create-provider-form .btn-primary:disabled,.create-provider-form .btn-secondary:disabled,.provider-details .btn-primary:disabled,.provider-details .btn-secondary:disabled,.delete-modal-content .btn-primary:disabled,.delete-modal-content .btn-secondary:disabled{opacity:.6;cursor:not-allowed}.delete-modal-content .btn-danger{background:var(--color-error, #dc2626);border:1px solid var(--color-error, #dc2626);color:#fff}.delete-modal-content .btn-danger:hover{background:#b91c1c;border-color:#b91c1c}.delete-modal-content .btn-danger:disabled{opacity:.6;cursor:not-allowed}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinning{animation:spin 1s linear infinite}.channel-config-page{display:flex;flex-direction:column;height:100%;background:#fff;overflow:auto}.channel-config-loading{display:flex;align-items:center;justify-content:center;height:100%;font-size:16px;color:#6b7280}.channel-config-breadcrumb{display:flex;align-items:center;gap:8px;padding:16px 24px;font-size:14px;border-bottom:1px solid #e5e7eb}.channel-config-breadcrumb .breadcrumb-link{color:#6b7280;text-decoration:none;transition:color .15s}.channel-config-breadcrumb .breadcrumb-link:hover{color:#111827}.channel-config-breadcrumb .breadcrumb-separator{color:#d1d5db}.channel-config-breadcrumb .breadcrumb-current{color:#111827}.channel-config-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;border-bottom:1px solid #e5e7eb;flex-wrap:wrap}.channel-config-header__left{display:flex;align-items:center;gap:12px}.channel-config-header__back{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .15s}.channel-config-header__back:hover{background:#f3f4f6;color:#111827;border-color:#d1d5db}.channel-config-title{font-size:18px;font-weight:600;color:#111827}.channel-config-header__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.channel-config-header__error{padding:8px 12px;background-color:#fef2f2;color:#dc2626;font-size:13px;border-radius:6px}.channel-config-header__test-result{padding:8px 12px;font-size:13px;border-radius:6px}.channel-config-header__test-result.success{background-color:#f0fdf4;color:#16a34a}.channel-config-header__test-result.error{background-color:#fef2f2;color:#dc2626}.channel-config-content{flex:1;padding:24px;overflow:auto}.channel-config-form{max-width:800px}.channel-config-section{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #e5e7eb}.channel-config-section:last-child{border-bottom:none}.channel-config-section__title{font-size:16px;font-weight:600;color:#111827;margin:0 0 16px}.channel-config-section__description{font-size:14px;color:#6b7280;margin:0 0 16px}.channel-config-field{display:flex;flex-direction:column;gap:6px;flex:1;margin-bottom:16px}.channel-config-field:last-child{margin-bottom:0}.channel-config-field.full-width{grid-column:1 / -1}.channel-config-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:640px){.channel-config-fields-grid{grid-template-columns:1fr}}.channel-config-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:640px){.channel-config-row{grid-template-columns:1fr}}.channel-config-label{font-size:14px;font-weight:500;color:#374151}.channel-config-label .required{color:#dc2626;margin-left:2px}.channel-config-input{padding:10px 12px;font-size:14px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#111827;transition:all .15s}.channel-config-input:hover{border-color:#9ca3af}.channel-config-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.channel-config-input:disabled{background:#f9fafb;cursor:not-allowed}.channel-config-input::placeholder{color:#9ca3af}.channel-config-textarea{min-height:120px;font-family:monospace;resize:vertical}.channel-config-senders-list{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.channel-config-sender-row{display:flex;align-items:flex-end;gap:12px;padding:16px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px}.channel-config-sender-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;flex:1}@media(max-width:640px){.channel-config-sender-fields{grid-template-columns:1fr}}.channel-config-sender-remove{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:none;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .15s;flex-shrink:0}.channel-config-sender-remove:hover:not(:disabled){background:#fef2f2;border-color:#fecaca;color:#dc2626}.channel-config-sender-remove:disabled{opacity:.4;cursor:not-allowed}.channel-config-add-sender{display:flex;align-items:center;justify-content:center;width:100%;padding:12px 16px;font-size:14px;font-weight:500;color:#6366f1;background:#fff;border:1px dashed #d1d5db;border-radius:8px;cursor:pointer;transition:all .15s}.channel-config-add-sender:hover:not(:disabled){background:#f5f3ff;border-color:#a5b4fc}.channel-config-add-sender:disabled{opacity:.5;cursor:not-allowed}.activity-logs-page{width:100%}.activity-logs-page .page-header{margin-bottom:1.5rem}.activity-logs-page .page-header h1{font-size:1.5rem;font-weight:600;color:#1a1a2e;margin:0}.activity-logs-page .tabs{display:flex;gap:0;margin-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.activity-logs-page .tab{padding:.75rem 1rem;border:none;background:transparent;font-size:.875rem;font-weight:500;color:#6b7280;cursor:pointer;position:relative;transition:color .2s}.activity-logs-page .tab:hover,.activity-logs-page .tab.active{color:#1a1a2e}.activity-logs-page .tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:#1a1a2e}.activity-logs-page .filters-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.activity-logs-page .filters-left{display:flex;gap:.75rem}.activity-logs-page .filters-right{display:flex;align-items:center;gap:1.5rem}.activity-logs-page .type-select{padding:.5rem .75rem;border:1px solid #ddd;border-radius:6px;font-size:.875rem;background:#fff;cursor:pointer;min-width:140px}.activity-logs-page .last-updated{font-size:.75rem;color:#6b7280}.activity-logs-page .auto-refresh{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#374151;cursor:pointer;position:relative}.activity-logs-page .auto-refresh input{position:absolute;opacity:0;width:0;height:0}.activity-logs-page .toggle-slider{width:40px;height:20px;background:#d1d5db;border-radius:10px;position:relative;transition:background .2s}.activity-logs-page .toggle-slider:after{content:"";position:absolute;width:16px;height:16px;border-radius:50%;background:#fff;top:2px;left:2px;transition:transform .2s}.activity-logs-page .auto-refresh input:checked+.toggle-slider{background:#1a1a2e}.activity-logs-page .auto-refresh input:checked+.toggle-slider:after{transform:translate(20px)}.activity-logs-page .search-row{display:flex;gap:.75rem;margin-bottom:1.5rem}.activity-logs-page .search-input-wrapper{position:relative;flex:1;max-width:250px}.activity-logs-page .search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);font-size:.875rem;opacity:.5}.activity-logs-page .search-input{width:100%;padding:.5rem .75rem .5rem 2.25rem;border:1px solid #ddd;border-radius:6px;font-size:.875rem}.activity-logs-page .search-input:focus{outline:none;border-color:#1a1a2e}.activity-logs-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.activity-logs-table th,.activity-logs-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #eee}.activity-logs-table th{background:#f8f9fa;font-weight:600;font-size:.75rem;text-transform:uppercase;color:#666}.activity-logs-table td{font-size:.875rem;color:#333}.activity-logs-table tr:hover{background:#f8f9fa}.activity-logs-table .empty-row{text-align:center;color:#6b7280;padding:2rem}.event-type-filter{position:relative;display:inline-block}.event-type-trigger{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .75rem;min-width:160px;border:1px solid #ddd;border-radius:6px;background:#fff;font-size:.875rem;color:#6b7280;cursor:pointer;transition:border-color .2s,box-shadow .2s}.event-type-trigger:hover{border-color:#9ca3af}.event-type-trigger.open{border-color:#1a1a2e;box-shadow:0 0 0 2px #1a1a2e1a}.event-type-trigger.has-value{color:#1a1a2e}.trigger-label{flex:1;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trigger-chevron{font-size:.625rem;color:#9ca3af}.event-type-dropdown{position:absolute;top:calc(100% + 4px);left:0;min-width:280px;max-height:400px;overflow-y:auto;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 16px #0000001f;z-index:1000}.clear-filter{display:block;width:100%;padding:.625rem 1rem;border:none;border-bottom:1px solid #e5e7eb;background:#f9fafb;font-size:.8125rem;color:#667eea;text-align:left;cursor:pointer}.clear-filter:hover{background:#f3f4f6}.event-category{border-bottom:1px solid #f3f4f6}.event-category:last-child{border-bottom:none}.category-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.75rem 1rem;border:none;background:transparent;cursor:pointer;transition:background .15s}.category-header:hover:not(:disabled){background:#f9fafb}.category-header:disabled{cursor:default;opacity:.5}.category-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;color:#9ca3af}.category-header.expanded .category-label{color:#1a1a2e}.category-chevron{font-size:.5rem;color:#9ca3af;transition:transform .2s}.category-items{padding:0 0 .5rem}.category-item{display:block;width:100%;padding:.5rem 1rem .5rem 1.5rem;border:none;background:transparent;font-size:.875rem;color:#374151;text-align:left;cursor:pointer;transition:background .15s,color .15s}.category-item:hover{background:#f3f4f6}.category-item.selected{background:#eef2ff;color:#667eea;font-weight:500}.dashboard-layout{display:flex;min-height:100vh;background:var(--color-gray-50)}.main-area{flex:1;display:flex;flex-direction:column;min-width:0}.main-content{flex:1;padding:var(--spacing-6);overflow-y:auto}@media(max-width:768px){.dashboard-layout{flex-direction:column}.main-content{padding:var(--spacing-4)}}
