.theme-toggle-container{position:relative}.theme-toggle-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;border:1px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast)}.theme-toggle-button:hover{background:var(--bg-surface);border-color:var(--color-primary)}.theme-icon{width:20px;height:20px;transition:transform var(--transition-fast)}.theme-toggle-button:hover .theme-icon{transform:scale(1.1)}.theme-dropdown{position:absolute;bottom:calc(100% + 8px);right:0;min-width:150px;background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);overflow:hidden;z-index:1000;animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.theme-option{display:flex;align-items:center;gap:var(--spacing-sm);width:100%;padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast);font-size:14px;text-align:left}.theme-option:hover{background:var(--bg-surface)}.theme-option.active{background:var(--bg-surface);color:var(--color-primary)}.theme-option-icon{width:18px;height:18px;flex-shrink:0}.theme-option span{flex-grow:1}.check-icon{width:16px;height:16px;flex-shrink:0;color:var(--color-primary)}@media (max-width: 768px){.theme-dropdown{right:0;min-width:120px}}.navigation-sidebar{position:relative;width:260px;height:125vh;background:var(--bg-surface);border-right:1px solid var(--border-color);display:flex;flex-direction:column}.nav-header{padding:var(--spacing-lg);border-bottom:1px solid var(--border-color);background:var(--bg-primary)}.nav-header-top{display:flex;justify-content:space-between;align-items:center}.nav-branding{display:flex;flex-direction:column;gap:4px}.nav-logo{margin:0;color:var(--text-primary);font-size:1.7rem;font-weight:700;letter-spacing:.28em;font-family:Chakra Petch,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;line-height:1;text-transform:uppercase;background:linear-gradient(135deg,var(--text-primary) 0%,var(--text-primary) 100%);-webkit-background-clip:text;background-clip:text}.nav-tagline{font-size:.6875rem;color:var(--text-secondary);font-weight:500;letter-spacing:.08em;text-transform:uppercase;opacity:.7}.selected-project{margin-top:var(--spacing-sm);padding:var(--spacing-sm);background:var(--bg-surface);border-radius:var(--border-radius);font-size:.875rem}.project-label{color:var(--text-secondary);margin-right:var(--spacing-xs)}.project-name{color:var(--text-primary);font-weight:600}.nav-sections{flex:1;padding:var(--spacing-md);overflow-y:auto;min-height:0}.nav-section{margin-bottom:var(--spacing-sm)}.nav-section-header{width:100%;display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;border-radius:var(--border-radius);color:var(--text-primary);font-size:.9375rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.nav-section-header:hover{background:var(--bg-elevated)}.nav-section-header.active{color:var(--text-primary);font-weight:700}.nav-icon{margin-right:var(--spacing-sm);font-size:1.125rem;display:inline-flex;align-items:center}.nav-label{flex:1;text-align:left;color:var(--text-primary)}[data-theme=light] .nav-section-header:not(.active) .nav-label{color:#212529;opacity:.9}.nav-chevron{font-size:.75rem;color:var(--text-secondary);transition:transform var(--transition-fast)}.nav-section-children{margin-top:var(--spacing-xs);margin-left:var(--spacing-lg);padding-left:var(--spacing-sm);border-left:1px solid var(--border-color-light)}.nav-item{width:100%;display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);margin-bottom:2px;background:transparent;border:none;border-radius:var(--border-radius);color:var(--text-primary);font-size:.875rem;cursor:pointer;transition:all var(--transition-fast);text-align:left;opacity:1}.nav-item:hover{background:var(--bg-elevated);color:var(--text-primary);opacity:1}.nav-item.active{background:var(--sidebar-active-bg);color:var(--sidebar-active-text);font-weight:600;position:relative;opacity:1}.nav-item.active:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--text-primary)}.nav-badge{margin-left:auto;flex-shrink:0}.nav-badge-count{background:var(--accent-color, #3b82f6);color:#fff;font-size:.6875rem;font-weight:600;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center;line-height:1.2}.nav-badge-dot{width:8px;height:8px;background:var(--danger-color, #ef4444);border-radius:50%;animation:badge-pulse 2s ease-in-out infinite}@keyframes badge-pulse{0%,to{opacity:1}50%{opacity:.5}}[data-theme=dark] .nav-section-children{border-left-color:var(--border-color)}[data-theme=dark] .nav-item.active{background:var(--sidebar-active-bg)}.nav-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:999;display:none}@media (max-width: 768px){.navigation-sidebar{width:280px;position:fixed;left:-280px;z-index:1000;transition:left var(--transition-base);box-shadow:var(--shadow-lg)}.navigation-sidebar.mobile-open{left:0}.nav-overlay{display:block}}.nav-user-section{margin-top:auto;padding:var(--spacing-md);border-top:1px solid var(--border-color);background:var(--bg-primary);width:100%}.nav-user-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-sm);padding:var(--spacing-sm)}.nav-user-info{flex:1}.nav-user-name{font-weight:600;color:var(--text-primary);font-size:.875rem}.nav-user-email{font-size:.75rem;color:var(--text-secondary);margin-top:var(--spacing-xs)}.nav-theme-toggle{display:flex;align-items:center}.nav-logout-btn{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-secondary);font-size:.875rem;cursor:pointer;display:flex;align-items:center;gap:var(--spacing-sm);transition:all var(--transition-fast)}.nav-logout-btn:hover{background:var(--bg-surface);color:var(--text-primary)}.nav-logo-container{position:relative;display:inline-block}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--bg-overlay);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn var(--transition-fast);padding:var(--spacing-md)}.modal{background:var(--bg-primary);border-radius:var(--border-radius);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:90vh;animation:slideUp var(--transition-base)}.modal-small{width:90%;max-width:400px}.modal-medium{width:90%;max-width:600px}.modal-large{width:90%;max-width:800px}.modal-xlarge{width:90%;max-width:1200px}.modal-header{padding:var(--spacing-lg);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.modal-title{margin:0;color:var(--text-primary);font-size:1.25rem;font-weight:600}.modal-close-button{background:transparent;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius);transition:all var(--transition-fast)}.modal-close-button:hover{background:var(--bg-surface);color:var(--text-primary)}.modal-body{padding:var(--spacing-lg);overflow-y:auto;flex:1}.modal-body.no-padding{padding:0}@media (max-width: 768px){.modal-overlay{padding:0;align-items:flex-end}.modal{width:100%;max-width:100%;max-height:95vh;border-radius:var(--border-radius) var(--border-radius) 0 0}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);border-radius:var(--border-radius);font-weight:500;cursor:pointer;transition:all var(--transition-fast);border:none;position:relative;white-space:nowrap}.btn-primary{background:var(--btn-primary-bg)!important;color:var(--btn-primary-text)!important;border:1px solid transparent}.btn-primary:hover:not(:disabled){background:var(--btn-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--bg-surface);border-color:var(--border-color-light)}.btn-danger{background:var(--color-danger);color:var(--text-inverse)}.btn-danger:hover:not(:disabled){background:var(--color-danger);filter:brightness(1.1)}.btn-ghost{background:transparent;color:var(--text-primary)}.btn-ghost:hover:not(:disabled){background:var(--bg-surface)}.btn-link{background:transparent;color:var(--color-primary);text-decoration:none}.btn-link:hover:not(:disabled){text-decoration:underline}.btn-text{background:transparent;color:var(--text-secondary);border:none;padding:var(--spacing-xs)}.btn-text:hover:not(:disabled){background:var(--bg-surface);color:var(--text-primary)}.btn-small{padding:var(--spacing-xs) var(--spacing-sm);font-size:.875rem}.btn-medium{padding:var(--spacing-sm) var(--spacing-lg);font-size:.9375rem}.btn-large{padding:var(--spacing-md) var(--spacing-xl);font-size:1rem}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-full-width{width:100%}.btn-loading{color:transparent}.btn-spinner{position:absolute;width:16px;height:16px;border:2px solid var(--border-color);border-top-color:var(--color-primary);border-radius:50%;animation:spin .6s linear infinite}.btn-primary .btn-spinner,.btn-danger .btn-spinner{border-color:#ffffff4d;border-top-color:#fff}.card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);transition:all var(--transition-fast)}.card-padding-none{padding:0}.card-padding-small{padding:var(--spacing-sm)}.card-padding-medium{padding:var(--spacing-md)}.card-padding-large{padding:var(--spacing-lg)}.card-hoverable:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.card-clickable{cursor:pointer}.card-selected{border-color:var(--color-primary);background:var(--bg-elevated);box-shadow:0 0 0 3px #0066cc1a}.card-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color-light)}.card-header-content{flex:1}.card-title{margin:0;color:var(--text-primary);font-size:1.125rem;font-weight:600;line-height:1.4}.card-subtitle{margin:var(--spacing-xs) 0 0 0;color:var(--text-secondary);font-size:.875rem;line-height:1.5}.card-actions{display:flex;gap:var(--spacing-sm);flex-shrink:0}.card-body{color:var(--text-primary)}.card-header.no-border{border-bottom:none;padding-bottom:0;margin-bottom:var(--spacing-sm)}[data-theme=dark] .card-selected{box-shadow:0 0 0 3px #4d94ff33}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-surface);position:relative}.theme-toggle-wrapper{position:absolute;top:var(--spacing-lg);right:var(--spacing-lg);z-index:100}.login-container{width:100%;max-width:400px;padding:var(--spacing-md)}.login-card{padding:var(--spacing-xl)}.login-header{margin-bottom:var(--spacing-xl);display:flex;flex-direction:column;align-items:flex-start}.login-branding{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.login-logo{color:var(--text-primary);font-size:1.7rem;font-weight:700;letter-spacing:.28em;font-family:Chakra Petch,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;line-height:1;text-transform:uppercase;margin:0}.login-tagline{font-size:.6875rem;color:var(--text-secondary);font-weight:500;letter-spacing:.08em;text-transform:uppercase;opacity:.7}.login-separator{width:100%;height:1px;background:var(--border-color);margin:var(--spacing-lg) 0}.login-subtitle{color:var(--text-secondary);margin:0;font-size:.875rem}.login-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.login-error{background-color:var(--bg-surface);color:var(--color-danger);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius);border:1px solid var(--color-danger);font-size:.875rem}.form-group label{color:var(--text-primary);font-size:.875rem;font-weight:500}.form-group input[type=email],.form-group input[type=password]{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--border-radius);font-size:1rem;transition:border-color var(--transition-fast);background:var(--bg-primary);color:var(--text-primary)}.form-group input[type=email]:focus,.form-group input[type=password]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0066cc1a}.form-group input:disabled{background-color:var(--bg-surface);cursor:not-allowed;opacity:.7}.checkbox-group{flex-direction:row}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;font-size:.875rem;color:var(--text-secondary);font-weight:400}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.checkbox-label span{-webkit-user-select:none;user-select:none}.login-button{width:100%;padding:var(--spacing-md) var(--spacing-lg);font-size:1rem;margin-top:var(--spacing-sm);font-weight:600;background:var(--btn-primary-bg)!important;color:var(--btn-primary-text)!important;border:none!important}.login-page.animating{overflow:hidden}.login-page.animating .login-separator,.login-page.animating .login-subtitle,.login-page.animating .login-form,.login-page.animating .theme-toggle-wrapper{opacity:0;transition:opacity .15s ease-out}.login-page.flying .login-card{background:transparent!important;box-shadow:none!important;border:none!important}.login-branding.fly-to-sidebar{position:fixed!important;top:var(--branding-start-top);left:var(--branding-start-left);z-index:1000;animation:flyBranding .7s ease-in-out forwards}@keyframes flyBranding{0%{top:var(--branding-start-top);left:var(--branding-start-left);opacity:1}to{top:24px;left:24px;opacity:1}}.unauthorized-page{display:flex;align-items:center;justify-content:center;min-height:100vh;width:100%;padding:var(--spacing-lg);background:var(--bg-primary)}.unauthorized-content{text-align:center;max-width:500px}.unauthorized-icon{font-size:64px;margin-bottom:var(--spacing-lg);opacity:.7}.unauthorized-page h1{font-size:32px;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-md)}.unauthorized-page p{font-size:16px;color:var(--text-secondary);margin-bottom:var(--spacing-md);line-height:1.5}.unauthorized-hint{font-size:14px;color:var(--text-tertiary);font-style:italic}.unauthorized-actions{display:flex;gap:var(--spacing-md);justify-content:center;margin-top:var(--spacing-xl)}.tab-navigation{background:var(--bg-primary);border-bottom:2px solid var(--border-color);padding:0 var(--spacing-xl);margin-bottom:0;box-shadow:0 1px 3px #0000000d}.tab-list{display:flex;gap:4px;align-items:center;height:48px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}.tab-list::-webkit-scrollbar{height:4px}.tab-list::-webkit-scrollbar-track{background:transparent}.tab-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:2px}.tab-list::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.tab-button{display:flex;align-items:center;gap:8px;padding:8px 16px;background:transparent;border:none;border-radius:6px 6px 0 0;color:var(--text-primary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;height:calc(100% - 4px);position:relative;white-space:nowrap;margin-top:4px;border-bottom:3px solid transparent;opacity:1}.tab-button:hover{color:var(--text-primary);background:var(--bg-hover);opacity:1}.tab-button.active{color:var(--color-primary);font-weight:600;background:var(--bg-surface);border-bottom:3px solid var(--color-primary);box-shadow:0 -2px 8px #0000000d;opacity:1}.tab-button.active .tab-icon{transform:scale(1.1)}.tab-icon{font-size:1.125rem;display:inline-flex;align-items:center;transition:transform .2s ease}.tab-label{font-weight:inherit;letter-spacing:.01em}@media (max-width: 1200px){.tab-navigation{padding:0 var(--spacing-md)}.tab-list{gap:3px;height:44px}.tab-button{padding:6px 12px;font-size:.8125rem;gap:6px}.tab-icon{font-size:1rem}}@media (max-width: 768px){.tab-navigation{padding:0 var(--spacing-sm)}.tab-list{gap:2px;height:42px}.tab-button{padding:6px 10px;font-size:.75rem;gap:4px}.tab-icon{font-size:.875rem}}.page-layout{height:100%;display:flex;flex-direction:column}.page-header{padding:var(--spacing-lg) var(--spacing-xl);background:var(--bg-primary);display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-lg);border-bottom:1px solid var(--border-color-light)}.page-header-content{display:flex;align-items:baseline;gap:var(--spacing-lg)}.page-header-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.page-header h1{margin:0;color:var(--text-primary);font-size:1.5rem;font-weight:600}.page-description{margin:0;color:var(--text-secondary);font-size:.9375rem}.tab-content,.page-content{flex:1;padding:var(--spacing-xl);background:var(--bg-surface);overflow-y:auto}.tab-content::-webkit-scrollbar,.page-content::-webkit-scrollbar{width:12px;height:12px}.tab-content::-webkit-scrollbar-track,.page-content::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:10px;margin:4px}.tab-content::-webkit-scrollbar-thumb,.page-content::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--border-color) 0%,var(--text-tertiary) 100%);border-radius:10px;border:2px solid var(--bg-secondary);transition:background .2s ease}.tab-content::-webkit-scrollbar-thumb:hover,.page-content::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--text-tertiary) 0%,var(--text-secondary) 100%)}.tab-content::-webkit-scrollbar-thumb:active,.page-content::-webkit-scrollbar-thumb:active{background:var(--primary-color)}.tab-content,.page-content{scrollbar-width:thin;scrollbar-color:var(--border-color) var(--bg-secondary)}.tab-content.no-padding,.page-content.no-padding{padding:0!important;margin:0!important;overflow-y:auto;width:100%!important;max-width:100%!important;box-sizing:border-box!important}@media (max-width: 768px){.page-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs);padding-left:calc(var(--spacing-xl) + 50px);position:relative;z-index:1}.tab-content:not(.no-padding){padding:var(--spacing-md)}.page-content:not(.no-padding){padding:var(--spacing-md)}}.toast{display:flex;align-items:center;gap:var(--spacing-sm);min-width:300px;max-width:500px;padding:var(--spacing-md);background:var(--bg-surface);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;border:1px solid var(--border-color);animation:slideIn .3s ease-out;position:relative}@keyframes slideOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.toast.toast-exiting{animation:slideOut .3s ease-in}.toast-icon{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;border-radius:50%}.toast-success .toast-icon{background:rgba(40,167,69,.1);color:var(--color-success)}.toast-error .toast-icon{background:rgba(220,53,69,.1);color:var(--color-error)}.toast-warning .toast-icon{background:rgba(255,193,7,.1);color:var(--color-warning)}.toast-info .toast-icon{background:rgba(13,110,253,.1);color:var(--color-info)}.toast-content{flex:1;display:flex;align-items:center;gap:var(--spacing-md)}.toast-message{flex:1;color:var(--text-primary);font-size:.875rem;line-height:1.4}.toast-action{padding:var(--spacing-xs) var(--spacing-sm);background:transparent;border:1px solid currentColor;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.toast-success .toast-action{color:var(--color-success)}.toast-error .toast-action{color:var(--color-error)}.toast-warning .toast-action{color:var(--color-warning)}.toast-info .toast-action{color:var(--color-info)}.toast-action:hover{background:currentColor;color:var(--bg-surface)}.toast-close{flex-shrink:0;width:24px;height:24px;padding:0;background:transparent;border:none;color:var(--text-secondary);font-size:24px;line-height:1;cursor:pointer;transition:color var(--transition-fast);display:flex;align-items:center;justify-content:center}.toast-close:hover{color:var(--text-primary)}.toast-container{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:var(--spacing-sm);pointer-events:none}.toast-container>*{pointer-events:auto}@media (max-width: 768px){.toast-container{top:10px;right:10px;left:10px}.toast-container .toast{min-width:auto;max-width:100%}}.selector{position:relative;width:100%}.selector-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl)}.selector-spinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.selector-loading p{margin-top:var(--spacing-md);color:var(--text-secondary);font-size:.875rem}.selector-button{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-size-base);cursor:pointer;transition:all .2s ease;text-align:left}.selector-button:hover:not(:disabled){background:var(--bg-hover);border-color:var(--primary-color)}.selector-button:disabled{opacity:.6;cursor:not-allowed}.selector-button-open{border-color:var(--primary-color);box-shadow:var(--input-focus-shadow)}.selector-selected-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.selector-arrow{margin-left:var(--spacing-sm);font-size:.75rem;color:var(--text-secondary);transition:transform .2s ease}.selector-dropdown{position:absolute;top:calc(100% + 8px);left:0;right:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-lg);z-index:1000;max-height:400px;display:flex;flex-direction:column;animation:dropdownSlideIn .3s cubic-bezier(.34,1.56,.64,1);overflow:hidden}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}60%{transform:translateY(5px) scale(1.01)}to{opacity:1;transform:translateY(0) scale(1)}}.selector-search{padding:16px;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.selector-search-input{width:100%;padding:12px 16px;border:1px solid var(--border-color);border-radius:6px;font-size:var(--font-size-sm);background:var(--bg-primary);color:var(--text-primary);outline:none;transition:all .2s ease}.selector-search-input:focus{border-color:var(--primary-color);box-shadow:var(--input-focus-shadow)}.selector-search-input::placeholder{color:var(--text-muted);font-weight:400}.selector-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding:16px;max-height:300px}.selector-list::-webkit-scrollbar{width:10px}.selector-list::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:10px;margin:8px 0}.selector-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:10px}.selector-list::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.selector-item{padding:14px 16px;border-radius:6px;cursor:pointer;transition:all .2s ease;background:var(--bg-secondary);border:1px solid var(--border-color);-webkit-user-select:none;user-select:none;line-height:1.5;min-height:44px;display:flex;align-items:center}.selector-item:hover{background:var(--bg-hover);border-color:var(--primary-color)}.selector-item:active{transform:scale(.98)}.selector-item-selected{background:var(--btn-primary-bg);border-color:var(--btn-primary-bg)}.selector-item-selected .selector-item-default{color:var(--btn-primary-text);font-weight:600}.selector-item-selected:hover{background:var(--btn-primary-hover);border-color:var(--btn-primary-hover)}.selector-item-default{color:var(--text-primary);font-size:var(--font-size-sm);line-height:1.5;position:relative;z-index:1;width:100%}.selector-empty{padding:var(--spacing-xl);text-align:center;background:var(--bg-secondary);border-radius:6px;border:1px dashed var(--border-color);margin:8px}.selector-empty p{color:var(--text-muted);font-size:var(--font-size-sm);font-style:italic;margin:0}/*!
 * Quill Editor v1.3.7
 * https://quilljs.com/
 * Copyright (c) 2014, Jason Chen
 * Copyright (c) 2013, salesforce.com
 */.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container.ql-disabled .ql-editor ul[data-checked]>li:before{pointer-events:none}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor ul,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0;counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol,.ql-editor ul{padding-left:1.5em}.ql-editor ol>li,.ql-editor ul>li{list-style-type:none}.ql-editor ul>li:before{content:"•"}.ql-editor ul[data-checked=true],.ql-editor ul[data-checked=false]{pointer-events:none}.ql-editor ul[data-checked=true]>li *,.ql-editor ul[data-checked=false]>li *{pointer-events:all}.ql-editor ul[data-checked=true]>li:before,.ql-editor ul[data-checked=false]>li:before{color:#777;cursor:pointer;pointer-events:all}.ql-editor ul[data-checked=true]>li:before{content:"☑"}.ql-editor ul[data-checked=false]>li:before{content:"☐"}.ql-editor li:before{display:inline-block;white-space:nowrap;width:1.2em}.ql-editor li:not(.ql-direction-rtl):before{margin-left:-1.5em;margin-right:.3em;text-align:right}.ql-editor li.ql-direction-rtl:before{margin-left:.3em;margin-right:-1.5em}.ql-editor ol li:not(.ql-direction-rtl),.ql-editor ul li:not(.ql-direction-rtl){padding-left:1.5em}.ql-editor ol li.ql-direction-rtl,.ql-editor ul li.ql-direction-rtl{padding-right:1.5em}.ql-editor ol li{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;counter-increment:list-0}.ql-editor ol li:before{content:counter(list-0,decimal) ". "}.ql-editor ol li.ql-indent-1{counter-increment:list-1}.ql-editor ol li.ql-indent-1:before{content:counter(list-1,lower-alpha) ". "}.ql-editor ol li.ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-2{counter-increment:list-2}.ql-editor ol li.ql-indent-2:before{content:counter(list-2,lower-roman) ". "}.ql-editor ol li.ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-3{counter-increment:list-3}.ql-editor ol li.ql-indent-3:before{content:counter(list-3,decimal) ". "}.ql-editor ol li.ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-4{counter-increment:list-4}.ql-editor ol li.ql-indent-4:before{content:counter(list-4,lower-alpha) ". "}.ql-editor ol li.ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-5{counter-increment:list-5}.ql-editor ol li.ql-indent-5:before{content:counter(list-5,lower-roman) ". "}.ql-editor ol li.ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}.ql-editor ol li.ql-indent-6{counter-increment:list-6}.ql-editor ol li.ql-indent-6:before{content:counter(list-6,decimal) ". "}.ql-editor ol li.ql-indent-6{counter-reset:list-7 list-8 list-9}.ql-editor ol li.ql-indent-7{counter-increment:list-7}.ql-editor ol li.ql-indent-7:before{content:counter(list-7,lower-alpha) ". "}.ql-editor ol li.ql-indent-7{counter-reset:list-8 list-9}.ql-editor ol li.ql-indent-8{counter-increment:list-8}.ql-editor ol li.ql-indent-8:before{content:counter(list-8,lower-roman) ". "}.ql-editor ol li.ql-indent-8{counter-reset:list-9}.ql-editor ol li.ql-indent-9{counter-increment:list-9}.ql-editor ol li.ql-indent-9:before{content:counter(list-9,decimal) ". "}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:"";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media (pointer: coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:"";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor pre{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor pre{white-space:pre-wrap;margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor pre.ql-syntax{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=""]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=""]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="1"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{content:"Heading 1"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="2"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{content:"Heading 2"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="3"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{content:"Heading 3"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="4"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{content:"Heading 4"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="5"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{content:"Heading 5"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value="6"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{content:"Heading 6"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="1"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="3"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="4"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="5"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value="6"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:"Sans Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:"Serif"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:"Monospace"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:"Normal"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:"Small"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:"Large"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:"Huge"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0px}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:"Visit URL:";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:"Edit";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:"Remove";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0px;content:"Save";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:"Enter link:"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:"Enter formula:"}.ql-snow .ql-tooltip[data-mode=video]:before{content:"Enter video:"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}.campaign-create-page{height:100%;width:100%;background:var(--bg-primary);padding:0;margin:0;overflow:hidden;box-sizing:border-box}.campaign-create-container{width:100%;height:100%;display:flex;flex-direction:column}.campaign-compose-card{height:100%;display:flex;flex-direction:column;background:var(--bg-surface);border:none;border-radius:0;overflow:hidden}.campaign-compose-header{position:relative;flex:0 0 auto;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between}.header-left,.header-controls{display:flex;align-items:center;gap:.75rem}.campaign-compose-header h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.schedule-note{font-size:.8rem;color:var(--text-secondary);font-style:italic}.campaign-info-separator{display:none}.campaign-info-row{display:flex;align-items:center;gap:1.5rem;padding:.25rem 0 0;margin:0;flex-wrap:wrap}.campaign-info-row .info-item{flex:0 0 auto}.campaign-info-row .info-text{font-size:.75rem;color:var(--text-secondary);font-style:normal}.campaign-info-row .info-text strong{color:var(--text-primary);font-weight:600}.campaign-compose-body{flex:1;padding:1rem 1.5rem;display:flex;flex-direction:column;gap:.75rem;overflow-y:auto}.error-message{padding:.75rem;background:var(--color-danger-bg);border:1px solid var(--color-danger);border-radius:6px;color:var(--color-danger);font-size:.9rem}.campaign-fields-row{display:flex;align-items:flex-start;gap:.75rem;padding-bottom:.5rem;margin-bottom:0;flex-wrap:wrap}.field-with-info{flex:1;min-width:200px;display:flex;flex-direction:column;gap:.25rem}.field-info-label{font-size:.75rem;color:var(--text-secondary);padding-left:.25rem}.field-info-label strong{color:var(--text-primary);font-weight:600}.campaign-story-title-row{display:flex;width:100%;padding-top:1rem}.story-title-input{width:100%}.compose-input,.compose-select{flex:1;min-width:200px;padding:.5rem .75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.95rem;transition:all .2s}.compose-input:focus,.compose-select:focus{outline:none;border-color:var(--primary-color)}.compose-select{cursor:pointer}.compose-select-wrapper{flex:1;min-width:200px}.compose-select-wrapper .selector-button{width:100%;padding:.5rem .75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:.95rem;text-align:left;cursor:pointer;transition:all .2s}.compose-select-wrapper .selector-button:hover,.compose-select-wrapper .selector-button-open{border-color:var(--primary-color)}.datetime-input{flex:0 0 auto;width:100%;max-width:220px;height:33px}.datetime-input.input-disabled{opacity:.5;cursor:not-allowed;background:var(--bg-tertiary)}.schedule-label{flex:0 0 auto;color:var(--text-secondary);font-size:.9rem;font-weight:500}.schedule-error{color:var(--status-error);font-size:.8rem;margin-left:.5rem}.header-separator{color:var(--border-color);margin:0 .75rem;font-weight:300}.send-emails-toggle{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:var(--text-secondary);font-size:.9rem}.datetime-input.input-error{border-color:var(--status-error);background:var(--bg-error-subtle, rgba(220, 53, 69, .1))}.uk-flag-indicator{font-size:1.2rem;flex:0 0 auto}.press-release-textarea{width:100%;padding:.75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-family:system-ui,-apple-system,sans-serif;font-size:.95rem;line-height:1.6;resize:vertical;min-height:150px;max-height:300px}.press-release-textarea:focus{outline:none;border-color:var(--primary-color);background:var(--bg-surface)}.compose-footer{width:100%;padding:.75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-family:system-ui,-apple-system,sans-serif;font-size:.75rem;line-height:1.5;resize:vertical}.compose-footer:focus{outline:none;border-color:var(--primary-color)}.editor-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;gap:1rem}.editor-mode-toggle{display:flex;gap:.5rem}.editor-container{flex:1;display:flex;flex-direction:column;min-height:150px;max-height:250px;overflow:hidden;border-radius:6px}.html-textarea{flex:1;width:100%;padding:.75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-family:Courier New,monospace;font-size:.9rem;line-height:1.5;resize:vertical;min-height:150px;max-height:250px;overflow-y:auto}.plain-textarea{flex:1;width:100%;padding:.75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-family:system-ui,-apple-system,sans-serif;font-size:.95rem;line-height:1.6;resize:vertical;min-height:150px;max-height:250px;overflow-y:auto}.html-editor .ql-editor{min-height:120px;max-height:200px;color:var(--text-primary);padding:.75rem}.greeting-note{margin-top:.5rem;padding:.5rem .75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px}.send-button{padding:.5rem 2rem!important;min-width:140px!important;font-weight:600!important;font-size:.95rem!important;background:#28a745!important;color:#fff!important;border:none!important;border-radius:6px!important;cursor:pointer!important;transition:all .2s!important;flex:0 0 auto!important;margin-left:auto!important;box-shadow:0 2px 4px #00000026!important}.input-wrapper{display:flex;flex-direction:column;gap:var(--spacing-xs)}.input-label{display:block;color:var(--text-primary);font-weight:500;font-size:.875rem}.input-label.required:after{content:" *";color:var(--color-danger)}.input-field{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--input-border);border-radius:var(--border-radius);background:var(--input-bg);color:var(--text-primary);font-size:1rem;font-family:inherit;transition:all var(--transition-fast)}.input-field:hover:not(:disabled){border-color:var(--input-focus-border)}.input-field:focus{outline:none;border-color:var(--input-focus-border);box-shadow:var(--input-focus-shadow)}.input-field:disabled{background:var(--bg-disabled);color:var(--text-disabled);cursor:not-allowed}.input-field.error{border-color:var(--color-danger)}.input-field.error:focus{box-shadow:0 0 0 3px var(--focus-ring-danger)}.input-error{color:var(--color-danger);font-size:.875rem;margin-top:var(--spacing-xs)}.input-hint{color:var(--text-secondary);font-size:.875rem;margin-top:var(--spacing-xs)}.input-field.small{padding:var(--spacing-xs) var(--spacing-sm);font-size:.875rem}.input-field.large{padding:var(--spacing-md) var(--spacing-lg);font-size:1.125rem}.input-field[type=date],.input-field[type=time],.input-field[type=datetime-local]{cursor:pointer}[data-theme=dark] .input-field[type=date]::-webkit-calendar-picker-indicator,[data-theme=dark] .input-field[type=time]::-webkit-calendar-picker-indicator,[data-theme=dark] .input-field[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert(.7);opacity:.8;cursor:pointer}[data-theme=dark] .input-field[type=date]::-webkit-calendar-picker-indicator:hover,[data-theme=dark] .input-field[type=time]::-webkit-calendar-picker-indicator:hover,[data-theme=dark] .input-field[type=datetime-local]::-webkit-calendar-picker-indicator:hover{opacity:1}.input-field[type=number]{-moz-appearance:textfield}.input-field[type=number]::-webkit-outer-spin-button,.input-field[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.alert-modal .modal-content,.confirm-modal .modal-content{padding:0}.alert-modal-content{padding:var(--spacing-xl);display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--spacing-lg)}.alert-modal-icon{font-size:3rem;line-height:1}.alert-modal-message{color:var(--text-primary);font-size:1rem;line-height:1.5;max-width:400px}.alert-modal-actions{padding:var(--spacing-lg);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.confirm-modal .alert-modal-actions{justify-content:space-between}.alert-modal-error .alert-modal-icon{color:var(--color-error)}.alert-modal-success .alert-modal-icon{color:var(--color-success)}.alert-modal-warning .alert-modal-icon{color:var(--color-warning)}.alert-modal-info .alert-modal-icon{color:var(--color-info)}.campaign-edit-modal{display:flex;flex-direction:column;gap:20px;padding:10px 0}.edit-form-group{display:flex;flex-direction:column;gap:8px}.schedule-group{background:var(--bg-secondary);padding:16px;border-radius:8px;border:1px solid var(--border-color)}.schedule-label{display:flex;align-items:center;gap:8px;font-weight:500;color:var(--text-primary);margin-bottom:8px}.uk-flag{font-size:16px}.schedule-inputs{display:flex;gap:12px}.schedule-inputs>*{flex:1}.schedule-hint{margin:8px 0 0;font-size:12px;color:var(--text-secondary)}.body-label{font-weight:500;color:var(--text-primary);margin-bottom:4px}.email-body-textarea{width:100%;min-height:250px;padding:12px;font-family:inherit;font-size:14px;line-height:1.5;color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border-color);border-radius:6px;resize:vertical;transition:border-color .2s ease}.email-body-textarea:focus{outline:none;border-color:var(--color-primary)}.modal-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid var(--border-color);margin-top:10px}.campaigns-history{height:100%;width:100%;display:flex;flex-direction:column;padding:1.5rem;margin:0;overflow:hidden;gap:1.25rem}.summary-header{flex-shrink:0;padding:16px 20px;background:var(--bg-surface);border-radius:8px;box-shadow:var(--shadow-sm);display:flex;align-items:center;justify-content:space-between}.summary-stats{flex-shrink:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}.summary-stats .stat-card .stat-value{font-size:28px;font-weight:700;color:var(--text-primary);margin-bottom:4px;text-align:center}.campaigns-table{flex:1;background:var(--bg-surface);border-radius:var(--radius-md);border:1px solid var(--border-color);min-height:0;overflow:hidden;display:flex;flex-direction:column}.campaign-table{width:100%;border-collapse:collapse;table-layout:fixed;display:block;overflow-y:auto;height:100%}.campaign-table::-webkit-scrollbar{width:10px}.campaign-table::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:10px;margin:4px 0}.campaign-table::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:10px;border:2px solid var(--bg-secondary);transition:background .2s ease}.campaign-table::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.campaign-table{scrollbar-width:thin;scrollbar-color:var(--border-color) var(--bg-secondary)}.campaign-table thead{display:table;width:100%;table-layout:fixed;position:sticky;top:0;z-index:10;background:var(--bg-secondary)}.campaign-table tbody{display:table;width:100%;table-layout:fixed}.campaign-table tbody tr{border-bottom:1px solid var(--border-color);transition:all .2s ease;cursor:pointer}.campaign-table tbody tr:hover{background:var(--bg-hover);box-shadow:inset 0 0 0 1px var(--border-color)}.campaign-table th{padding:14px 16px;text-align:left;font-weight:600;color:var(--text-secondary);font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:var(--bg-secondary);border-bottom:2px solid var(--border-color)}.campaign-table td{padding:12px 16px;font-size:.875rem;color:var(--text-primary);vertical-align:middle;white-space:nowrap}.campaign-table td:nth-child(8){overflow:visible!important}.campaign-table th:nth-child(1),.campaign-table td:nth-child(1){width:13%}.campaign-table th:nth-child(2),.campaign-table td:nth-child(2){width:26%}.campaign-table th:nth-child(3),.campaign-table td:nth-child(3){width:12%}.campaign-table th:nth-child(4),.campaign-table td:nth-child(4){width:8%;text-align:center}.campaign-table th:nth-child(5),.campaign-table td:nth-child(5){width:10%;text-align:center}.campaign-table th:nth-child(6),.campaign-table td:nth-child(6){width:8%;text-align:center}.campaign-table th:nth-child(7),.campaign-table td:nth-child(7){width:8%;text-align:center}.campaign-table th:nth-child(8),.campaign-table td:nth-child(8){width:auto;text-align:center;overflow:visible;white-space:normal}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:var(--radius-full);font-size:.75rem;font-weight:600;white-space:nowrap}.status-created{background:rgba(108,117,125,.1);color:var(--text-secondary)}.status-waiting{background:rgba(245,158,11,.2);color:#b45309}.status-emailing{background:rgba(59,130,246,.2);color:#1d4ed8;animation:pulse 2s infinite}.status-paused{background:rgba(245,158,11,.2);color:#d97706}[data-theme=dark] .status-waiting,[data-theme=dark] .status-emailing,[data-theme=dark] .status-paused{color:#1f2937}.story-title-cell{display:flex;align-items:center;gap:8px;max-width:100%;overflow:hidden}.subject-text{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:500;color:var(--text-primary);font-size:.875rem;line-height:1.5}.info-icon-btn-table{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:50%;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;color:var(--text-secondary);transition:all .2s ease;flex-shrink:0}.info-icon-btn-table:hover{background:var(--btn-primary-bg);color:var(--btn-primary-text);border-color:var(--btn-primary-bg);transform:scale(1.1)}.progress-cell,.journalists-cell{font-size:.875rem;font-weight:600;color:var(--text-primary);white-space:nowrap;font-variant-numeric:tabular-nums}.campaign-table td:nth-child(3){font-weight:500;color:var(--text-primary)}.country-cell{font-size:.875rem;font-weight:500;color:var(--text-secondary);white-space:nowrap;text-transform:uppercase}.time-cell{white-space:nowrap;font-size:.8125rem;font-weight:500;color:var(--text-secondary);font-variant-numeric:tabular-nums}.actions-cell{padding:8px!important}.campaign-actions{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap}.campaign-actions button,.campaign-actions .btn{flex:0 0 auto;height:32px;min-width:unset;padding:6px 10px;font-size:1.125rem;transition:all .2s ease;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-color);background:var(--bg-surface);cursor:pointer}.campaign-actions button:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a;border-color:var(--primary-color)}.campaign-actions button:active{transform:translateY(0);box-shadow:0 1px 2px #0000001a}.campaign-actions button[title*=View]{color:var(--primary-color)}.campaign-actions button[title*=View]:hover{background:rgba(59,130,246,.1);border-color:var(--primary-color)}.campaign-actions button[title*=Edit]{color:#f59e0b}.campaign-actions button[title*=Edit]:hover{background:rgba(245,158,11,.1);border-color:#f59e0b}.campaign-actions button[title*=Delete]{color:var(--status-red)}.campaign-actions button[title*=Delete]:hover{background:rgba(239,68,68,.1);border-color:var(--status-red)}.campaign-actions button[title*=Stop]{color:#f59e0b}.campaign-actions button[title*=Stop]:hover{background:rgba(245,158,11,.1);border-color:#f59e0b}.campaign-actions button[title*=Trigger]{color:var(--status-green);font-weight:600}.campaign-actions button[title*=Trigger]:hover{background:rgba(16,185,129,.1);border-color:var(--status-green)}.campaign-actions button[title*=Resend]{color:#8b5cf6;font-weight:600}.campaign-actions button[title*=Resend]:hover{background:rgba(139,92,246,.1);border-color:#8b5cf6}.campaign-detail-row:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.campaign-detail-row>div{color:var(--text-primary);font-size:15px;line-height:1.6;font-weight:500}.load-more{display:flex;justify-content:center;padding:20px}.resend-modal-content{padding:16px}.resend-info{font-size:15px;color:var(--text-primary);line-height:1.6;margin-bottom:12px}.resend-note{font-size:13px;color:var(--text-secondary);margin-bottom:20px;padding:12px;background:var(--bg-secondary);border-radius:8px;border-left:3px solid #8b5cf6}.time-with-flag{display:flex;align-items:flex-end;gap:8px}.uk-flag-indicator{font-size:20px;padding-bottom:10px}@media (max-width: 768px){.summary-stats{grid-template-columns:repeat(2,1fr)}.campaigns-table{overflow-x:auto}.campaign-table{min-width:800px}.action-buttons{flex-wrap:wrap}}.textarea-wrapper{display:flex;flex-direction:column;gap:var(--spacing-xs)}.textarea-label{display:block;color:var(--text-primary);font-weight:500;font-size:.875rem}.textarea-label.required:after{content:" *";color:var(--color-danger)}.textarea-field{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--input-border);border-radius:var(--border-radius);background:var(--input-bg);color:var(--text-primary);font-size:1rem;font-family:inherit;resize:vertical;min-height:80px;transition:all var(--transition-fast)}.textarea-field:hover:not(:disabled){border-color:var(--input-focus-border)}.textarea-field:focus{outline:none;border-color:var(--input-focus-border);box-shadow:var(--input-focus-shadow)}.textarea-field:disabled{background:var(--bg-disabled);color:var(--text-disabled);cursor:not-allowed;resize:none}.textarea-field.error{border-color:var(--color-danger)}.textarea-field.error:focus{box-shadow:0 0 0 3px var(--focus-ring-danger)}.textarea-error{color:var(--color-danger);font-size:.875rem;margin-top:var(--spacing-xs)}.textarea-hint{color:var(--text-secondary);font-size:.875rem;margin-top:var(--spacing-xs)}.textarea-field.small{padding:var(--spacing-xs) var(--spacing-sm);font-size:.875rem;min-height:60px}.textarea-field.large{padding:var(--spacing-md) var(--spacing-lg);font-size:1.125rem;min-height:120px}.textarea-field.resize-none{resize:none}.textarea-field.resize-horizontal{resize:horizontal}.textarea-field.resize-both{resize:both}.select-wrapper{display:flex;flex-direction:column;gap:var(--spacing-xs)}.select-label{display:block;color:var(--text-primary);font-weight:500;font-size:.875rem}.select-label.required:after{content:" *";color:var(--color-danger)}.select-field{width:100%;padding:var(--spacing-sm) var(--spacing-md);padding-right:calc(var(--spacing-md) * 3);border:1px solid var(--input-border);border-radius:var(--border-radius);background:var(--input-bg);color:var(--text-primary);font-size:1rem;font-family:inherit;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23999' d='M10.293 3.293L6 7.586 1.707 3.293A1 1 0 00.293 4.707l5 5a1 1 0 001.414 0l5-5a1 1 0 10-1.414-1.414z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--spacing-md) center;transition:all var(--transition-fast)}.select-field:hover:not(:disabled){border-color:var(--input-focus-border)}.select-field:focus{outline:none;border-color:var(--input-focus-border);box-shadow:var(--input-focus-shadow)}.select-field:disabled{background:var(--bg-disabled);color:var(--text-disabled);cursor:not-allowed;opacity:.6}.select-field.error{border-color:var(--color-danger)}.select-field.error:focus{box-shadow:0 0 0 3px var(--focus-ring-danger)}.select-error{color:var(--color-danger);font-size:.875rem;margin-top:var(--spacing-xs)}.select-hint{color:var(--text-secondary);font-size:.875rem;margin-top:var(--spacing-xs)}.select-field.small{padding:var(--spacing-xs) var(--spacing-sm);padding-right:calc(var(--spacing-sm) * 3);font-size:.875rem}.select-field.large{padding:var(--spacing-md) var(--spacing-lg);padding-right:calc(var(--spacing-lg) * 2);font-size:1.125rem}[data-theme=dark] .select-field{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23ccc' d='M10.293 3.293L6 7.586 1.707 3.293A1 1 0 00.293 4.707l5 5a1 1 0 001.414 0l5-5a1 1 0 10-1.414-1.414z'/%3E%3C/svg%3E")}.table-container{width:100%;overflow-x:auto;background:var(--bg-surface);border-radius:var(--radius-md);border:1px solid var(--border-color);margin:0;padding:0}table.table{width:100%;border-collapse:collapse;font-size:var(--font-sm);display:table}table.table thead{background:var(--bg-secondary);display:table-header-group}table.table tbody{display:table-row-group}table.table tr{display:table-row}table.table th.table-header{padding:var(--spacing-md) var(--spacing-lg);text-align:left;font-weight:600;color:var(--text-secondary);background:var(--bg-secondary);border-bottom:1px solid var(--border-color);text-transform:uppercase;font-size:var(--font-xs);letter-spacing:.5px;display:table-cell}table.table td.table-cell{padding:var(--spacing-md) var(--spacing-lg);color:var(--text-primary);border-bottom:1px solid var(--border-color);display:table-cell}.table tbody tr:last-child td.table-cell{border-bottom:none}.table-striped tbody tr:nth-child(2n){background:var(--bg-secondary)}.table-hover tbody tr{transition:background var(--transition-fast)}.table-hover tbody tr:hover{background:var(--bg-hover);cursor:pointer}.table-row-clickable{cursor:pointer}.table-empty{padding:var(--spacing-xl);text-align:center;color:var(--text-secondary);font-style:italic}.table-compact .table-header,.table-compact .table-cell{padding:var(--spacing-sm) var(--spacing-md)}.table-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);gap:var(--spacing-md);color:var(--text-secondary)}.loading-spinner{width:24px;height:24px;border:2px solid var(--border-color);border-top-color:var(--text-primary);border-radius:50%;animation:spin .8s linear infinite}.table-actions{display:flex;gap:var(--spacing-xs);align-items:center}.table-status{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius);font-size:.75rem;font-weight:600;text-transform:uppercase}.status-running{background:rgba(255,193,7,.1);color:var(--color-warning)}.status-completed{background:rgba(40,167,69,.1);color:var(--color-success)}.status-scheduled{background:rgba(13,110,253,.1);color:var(--color-info)}.status-draft{background:rgba(108,117,125,.1);color:var(--text-secondary)}.status-failed{background:rgba(220,53,69,.1);color:var(--color-error)}@media (max-width: 768px){.table-container{border-radius:0}.table-header,.table-cell{padding:var(--spacing-sm) var(--spacing-md)}}.campaigns-sandbox{display:flex;flex-direction:column;gap:var(--spacing-lg);height:100%;overflow-y:auto;padding:var(--spacing-xl)}.variable-pill{transition:all .2s ease}.variable-pill:hover{background:var(--bg-hover)!important;transform:translateY(-1px)}.sandbox-card{padding:var(--spacing-xl)}.sandbox-header{margin-bottom:var(--spacing-xl)}.sandbox-header h2{margin:0 0 var(--spacing-sm) 0;color:var(--text-primary)}.sandbox-description{color:var(--text-secondary);line-height:1.6}.section-container{margin-top:var(--spacing-xl);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);overflow:hidden}.section-header{padding:var(--spacing-lg);background:var(--bg-secondary);border-bottom:1px solid var(--border-color);transition:background .2s}.section-header.clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.section-header.clickable:hover{background:var(--bg-hover)}.section-header h3{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);display:flex;align-items:center;gap:var(--spacing-sm)}.section-icon{display:inline-block;width:20px;font-size:var(--font-size-sm);color:var(--text-secondary);transition:transform .2s}.section-content{padding:var(--spacing-xl);animation:slideDown .3s ease-out}.live-indicator{display:inline-block;margin-left:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-danger);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);border-radius:var(--border-radius-sm);animation:pulse 1.5s infinite}@keyframes pulse{0%{opacity:1}50%{opacity:.6}to{opacity:1}}.input-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.input-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.input-group.full-width{grid-column:1 / -1}.input-group label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.ai-config-container{display:flex;flex-direction:column;gap:var(--spacing-lg)}.ai-config-actions{display:flex;justify-content:center;padding:var(--spacing-md) 0}.ai-config-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-xl);position:relative}.ai-config-grid:before{content:"VS";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--bg-surface);color:var(--text-secondary);font-weight:var(--font-weight-bold);font-size:var(--font-size-sm);padding:var(--spacing-sm);border:2px solid var(--border-color);border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;z-index:1}.config-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);overflow:hidden;transition:box-shadow .2s}.config-card:hover{box-shadow:var(--shadow-md)}.config-header{padding:var(--spacing-lg);background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.config-title{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xs)}.config-badge{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--color-primary);color:#fff;font-weight:var(--font-weight-bold);font-size:var(--font-size-md);border-radius:var(--border-radius)}.config-badge.config-b{background:var(--color-secondary)}.config-title h4{margin:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.config-subtitle{font-size:var(--font-size-sm);color:var(--text-secondary);margin-left:36px}.config-body{padding:var(--spacing-xl)}.config-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.config-field{display:flex;flex-direction:column;gap:var(--spacing-sm)}.config-field.full-width{grid-column:1 / -1}.config-field label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.model-field,.prompt-field{grid-column:span 1}.prompt-label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.char-count{font-size:var(--font-size-xs);color:var(--text-tertiary)}.prompt-textarea{font-family:Monaco,Consolas,monospace;font-size:var(--font-size-sm);line-height:1.6;resize:vertical}.config-actions{display:flex;justify-content:flex-end;margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.model-select,.template-select{width:100%}.test-actions{display:flex;justify-content:center;gap:var(--spacing-md);flex-wrap:wrap}.campaigns-sandbox .test-actions .btn{min-width:200px}.campaigns-sandbox .test-actions .btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text);border:1px solid transparent}.campaigns-sandbox .test-actions .btn-primary:hover:not(:disabled){background:var(--btn-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.results-card{margin-top:var(--spacing-xl)}.sandbox-results-table.table-container{width:100%!important;max-width:100%!important;overflow-x:hidden!important;overflow-y:visible!important}.sandbox-results-table table.table{table-layout:fixed!important;width:100%!important}.sandbox-results-table th.table-header,.sandbox-results-table td.table-cell{overflow:hidden!important;word-wrap:break-word!important;overflow-wrap:break-word!important;padding:var(--spacing-sm) var(--spacing-md)!important}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.results-header h3{margin:0;color:var(--text-primary)}.execution-info{display:flex;gap:var(--spacing-lg);font-size:var(--font-size-sm);color:var(--text-secondary)}.config-result{display:flex;flex-direction:column;gap:var(--spacing-xs);max-width:100%;overflow:hidden}.config-result .status{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);display:inline-block;width:fit-content;white-space:nowrap}.config-result .status.selected{background-color:var(--success-bg);color:var(--success-text);border:1px solid var(--success-border)}.config-result .status.not-selected{background-color:var(--error-bg);color:var(--error-text);border:1px solid var(--error-border)}.config-result .rationale{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.5;padding:var(--spacing-xs) 0;max-width:100%;word-wrap:break-word;overflow-wrap:break-word}.config-result .rationale.truncated{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;max-height:3em}.results-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.results-empty{text-align:center;padding:var(--spacing-xl);color:var(--text-secondary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--bg-surface);border-radius:var(--border-radius-lg);padding:var(--spacing-xl);min-width:400px;box-shadow:var(--shadow-xl)}.modal-content h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--spacing-lg)}.diff-modal{background:var(--bg-surface);border-radius:var(--border-radius-lg);width:90vw;max-width:1000px;height:80vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl)}.diff-modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.diff-modal-header h3{margin:0;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.diff-legend{display:flex;gap:var(--spacing-lg);font-size:var(--font-size-sm)}.legend-item{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--text-secondary)}.legend-box{width:16px;height:16px;border-radius:var(--border-radius-sm)}.legend-box.base{background:var(--bg-surface);border:1px solid var(--border-color)}.legend-box.removed{background:#fee2e2;border:1px solid #ef4444}.legend-box.added{background:#dcfce7;border:1px solid #22c55e}.diff-modal-subheader{padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.diff-model-info{display:flex;gap:var(--spacing-md)}.model-tag{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.model-tag.base{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color)}.model-tag.compare{color:var(--text-secondary);font-weight:var(--font-weight-bold)}.model-tag.target{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--color-primary)}.diff-modal-body{flex:1;overflow-y:auto;background:var(--bg-surface);padding:var(--spacing-xl)}.diff-container{font-family:Monaco,Consolas,monospace;font-size:var(--font-size-sm);line-height:1.8;max-width:100%}.diff-text{white-space:pre-wrap;word-wrap:break-word;color:var(--text-primary);background:white;padding:var(--spacing-lg);border:1px solid var(--border-color);border-radius:var(--border-radius)}.diff-same{color:var(--text-primary);background:transparent}.diff-added{background:#bbf7d0;color:#14532d;padding:2px 4px;border-radius:3px;text-decoration:none;font-weight:500}.diff-removed{background:#fecaca;color:#7f1d1d;padding:2px 4px;border-radius:3px;text-decoration:line-through;font-weight:500}.diff-modal-footer{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-top:1px solid var(--border-color);background:var(--bg-secondary)}.diff-stats{display:flex;gap:var(--spacing-lg);font-size:var(--font-size-sm)}.stat-item{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--text-secondary)}.stat-added{color:#22c55e;font-weight:var(--font-weight-semibold)}.stat-removed{color:#ef4444;font-weight:var(--font-weight-semibold)}.stat-same{color:var(--text-primary);font-weight:var(--font-weight-semibold)}.header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.header-top>div{display:flex;align-items:center;gap:var(--spacing-md)}.save-status{font-size:var(--font-size-sm);color:var(--text-secondary);padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-secondary);border-radius:var(--border-radius-sm)}.progress-content{padding:var(--spacing-lg) 0}.progress-percentage{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-primary)}.progress-bar-container{width:100%;height:8px;background-color:var(--bg-secondary);border-radius:var(--border-radius);overflow:hidden;margin-bottom:var(--spacing-md)}.progress-bar{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-dark));transition:width .3s ease}.progress-message{color:var(--text-secondary);margin-bottom:var(--spacing-md)}.progress-stats{display:flex;gap:var(--spacing-xl);font-size:var(--font-size-sm);color:var(--text-secondary)}.progress-stats span{display:flex;gap:var(--spacing-xs)}.results-progress-header{padding:var(--spacing-md) var(--spacing-lg);background-color:var(--color-info-bg);border:1px solid var(--color-info);border-radius:var(--border-radius);margin-bottom:var(--spacing-lg)}.progress-header-message{font-size:var(--font-size-md);color:var(--color-info);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-sm)}.results-progress-header .progress-bar-container{background-color:#007bff1a;border-radius:var(--border-radius-sm);height:8px;overflow:hidden}.results-progress-header .progress-bar{background:var(--color-info);height:100%;transition:width .3s ease}.results-summary{display:flex;gap:var(--spacing-xl);padding:var(--spacing-lg);background-color:var(--bg-secondary);border-radius:var(--border-radius);margin-bottom:var(--spacing-lg)}.summary-stat{display:flex;flex-direction:column;gap:var(--spacing-xs)}.stat-label{font-size:var(--font-size-sm);color:var(--text-secondary)}.stat-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.agreement-badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.agreement-badge.agree{background-color:var(--success-bg);color:var(--success-text);border:1px solid var(--success-border)}.agreement-badge.disagree{background-color:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning-border)}.status-indicator{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius);font-size:.75rem;font-weight:600;text-transform:uppercase}.status-success{background:rgba(40,167,69,.1);color:var(--color-success)}.status-error{background:rgba(220,53,69,.1);color:var(--color-danger)}.status-running{background:rgba(0,123,255,.1);color:var(--color-primary)}@media (max-width: 1024px){.ai-config-grid{grid-template-columns:1fr}.ai-config-grid:before{display:none}.input-grid,.config-row{grid-template-columns:1fr}}@media (max-width: 768px){.test-actions{flex-direction:column}.test-actions .btn{width:100%}.results-header{flex-direction:column;gap:var(--spacing-md);align-items:flex-start}.execution-info{flex-direction:column;gap:var(--spacing-xs)}.results-actions{flex-direction:column}.results-actions .btn{width:100%}.modal-content{min-width:90%;margin:var(--spacing-md)}.diff-modal{width:95vw;height:90vh}.diff-legend{display:none}.diff-stats{flex-direction:column;gap:var(--spacing-xs)}.diff-modal-footer{flex-direction:column;gap:var(--spacing-md)}}.rationale-modal{max-width:800px;max-height:80vh;overflow-y:auto}.rationale-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.rationale-modal .modal-header h3{margin:0;color:var(--text-primary);font-size:1.25rem}.rationale-modal .modal-close{background:none;border:none;font-size:2rem;color:var(--text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--border-radius-md);transition:all .2s}.rationale-modal .modal-close:hover{background:var(--bg-hover);color:var(--text-primary)}.rationale-modal .modal-body{padding:var(--spacing-xl)}.rationale-section{margin-bottom:var(--spacing-lg)}.rationale-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.rationale-header h4{margin:0;color:var(--text-primary);font-size:1.1rem}.rationale-header .status-badge{padding:4px 12px;border-radius:var(--border-radius-md);font-size:.875rem;font-weight:500}.rationale-header .status-badge.selected{background:var(--success-bg);color:var(--success)}.rationale-header .status-badge.not-selected{background:var(--error-bg);color:var(--error)}.rationale-content{padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--border-radius-md);border:1px solid var(--border-color);color:var(--text-primary);line-height:1.6;white-space:pre-wrap;word-wrap:break-word}.rationale-divider{height:1px;background:var(--border-color);margin:var(--spacing-xl) 0}.rationale-agreement{margin-top:var(--spacing-xl);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--border-radius-md);display:flex;align-items:center;gap:var(--spacing-md)}.rationale-agreement strong{color:var(--text-primary)}.rationale-modal .modal-footer{padding:var(--spacing-lg);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:500;color:var(--text-primary)}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--primary-color)}.checkbox-label span{font-size:.95rem}.input-hint{margin-top:var(--spacing-xs);font-size:.85rem;color:var(--text-secondary);line-height:1.4}.results-controls{display:flex;flex-direction:column;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-lg);background:var(--bg-secondary);border-radius:var(--border-radius);border:1px solid var(--border-color)}.search-control{width:100%}.search-input{width:100%;max-width:400px}.filter-controls{display:flex;flex-direction:column;gap:var(--spacing-sm)}.filter-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.filter-buttons{display:flex;gap:var(--spacing-xs);flex-wrap:wrap}.filter-btn{padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--border-color);background:var(--bg-surface);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);cursor:pointer;transition:all .2s}.filter-btn:hover{background:var(--bg-hover);border-color:var(--primary-color);color:var(--text-primary)}.filter-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.no-results-message{text-align:center;padding:var(--spacing-xl);color:var(--text-secondary);font-size:var(--font-size-md);background:var(--bg-secondary);border-radius:var(--border-radius);margin-top:var(--spacing-md)}.campaign-details{display:flex;flex-direction:column;gap:16px;padding:24px 24px 10px;height:100%;background:var(--bg-primary);overflow:hidden}.details-header{background:var(--bg-surface);border-radius:12px;padding:16px;box-shadow:0 1px 3px #0000001a;display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border:1px solid var(--border-color);flex-shrink:0}.header-content{display:flex;flex-direction:column;gap:12px;flex:1}.header-content>button{align-self:flex-start}.header-actions{display:flex;gap:12px;align-items:flex-start;flex-shrink:0}.campaign-details-header-info h1{margin:0 0 8px;color:var(--text-primary);font-size:20px;font-weight:600;display:flex;align-items:center;gap:8px;line-height:1.3}.info-icon-btn{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:50%;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;color:var(--text-secondary);transition:all .2s ease;margin-left:6px}.info-icon-btn:hover{background:var(--btn-primary-bg);color:var(--btn-primary-text);border-color:var(--btn-primary-bg);transform:scale(1.1)}.header-meta{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.refresh-indicator{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;animation:spin 1s linear infinite;color:var(--text-secondary);font-size:14px}.meta-item{color:var(--text-secondary);font-size:14px;font-weight:500}.schedule-item{display:flex;align-items:center;gap:8px;padding:6px 14px;background:rgba(59,130,246,.1);border:1px solid rgba(59,130,246,.3);border-radius:8px;font-weight:600;color:var(--text-primary);font-size:14px}.time-with-flag{display:flex;align-items:flex-end;gap:var(--spacing-sm)}.time-with-flag .input-wrapper{flex:1}.uk-flag-indicator{font-size:1.5rem;margin-bottom:var(--spacing-sm);cursor:help;-webkit-user-select:none;user-select:none}.meta-item:after{content:"•";margin-left:var(--spacing-md);color:var(--text-tertiary)}.meta-item:last-child:after{display:none}.status-badge{display:inline-block;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border:2px solid}.status-running,.status-processing{background:rgba(245,158,11,.15);color:#d97706;border-color:#f59e0b4d}.status-completed{background:rgba(16,185,129,.15);color:#059669;border-color:#10b9814d}.status-scheduled{background:rgba(59,130,246,.15);color:#2563eb;border-color:#3b82f64d}.status-draft{background:rgba(107,114,128,.15);color:#6b7280;border-color:#6b72804d}.status-failed,.status-stopped{background:rgba(239,68,68,.15);color:#dc2626;border-color:#ef44444d}.status-cancelled,.status-created{background:rgba(107,114,128,.15);color:#6b7280;border-color:#6b72804d}.status-matching,.status-evaluating{background:rgba(245,158,11,.15);color:#d97706;border-color:#f59e0b4d}.status-emailing,.status-sending_email{background:rgba(59,130,246,.15);color:#2563eb;border-color:#3b82f64d;animation:pulse 2s infinite}.status-awaiting_schedule{background:rgba(59,130,246,.15);color:#2563eb;border-color:#3b82f64d}.status-sending_email{background:rgba(245,158,11,.15);color:#d97706;border-color:#f59e0b4d}.details-section{padding:24px;background:var(--bg-surface);border-radius:12px;box-shadow:0 1px 3px #0000001a;border:1px solid var(--border-color);display:flex;flex-direction:column}.journalists-section{flex:1;min-height:0;overflow:hidden;background:var(--bg-surface);border-radius:12px;box-shadow:0 1px 3px #0000001a;border:1px solid var(--border-color);padding:24px 24px 0;display:flex;flex-direction:column}.details-section h2{margin:0 0 20px;color:var(--text-primary);font-size:20px;font-weight:700;border-bottom:2px solid var(--border-color);padding-bottom:12px}.section-header-with-action{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;border-bottom:2px solid var(--border-color);padding-bottom:12px;flex-shrink:0}.section-header-with-action h2{margin:0;border-bottom:none;padding-bottom:0}.details-section h3{margin:24px 0 16px;color:var(--text-primary);font-size:16px;font-weight:600}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:16px;flex-shrink:0}.stat-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:16px;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%);border-radius:12px;border:1px solid var(--border-color);transition:all .3s ease}.stat-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:var(--btn-primary-bg)}.stat-value{font-size:28px;font-weight:700;color:var(--text-primary);transition:all .3s ease}.stat-label{font-size:13px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.8px;font-weight:600}.stats-inline{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:12px;padding:12px 16px;background:var(--bg-secondary);border-radius:8px;flex-shrink:0}.stat-inline-item{display:flex;align-items:center;gap:6px;flex:1;justify-content:center}.stat-inline-label{font-size:13px;color:var(--text-secondary);font-weight:600}.stat-inline-value{font-size:16px;font-weight:700;color:var(--text-primary)}.journalist-search-wrapper{margin-bottom:16px}.search-results-info{margin-top:8px;font-size:14px;color:var(--text-secondary);font-style:italic}.journalists-table-wrapper{flex:1;min-height:0;overflow:hidden;margin:0 -24px;padding:0;display:flex;flex-direction:column}.journalists-table{width:100%;border-collapse:collapse;table-layout:fixed;display:block;overflow-y:auto;height:100%}.journalists-table::-webkit-scrollbar{width:10px}.journalists-table::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:10px;margin:4px 0}.journalists-table::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:10px;border:2px solid var(--bg-secondary);transition:background .2s ease}.journalists-table::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.journalists-table{scrollbar-width:thin;scrollbar-color:var(--border-color) var(--bg-secondary)}.journalists-table thead{display:table;width:100%;table-layout:fixed;position:sticky;top:0;z-index:10;background:var(--bg-surface);border-bottom:2px solid var(--border-color)}.journalists-table tbody{display:table;width:100%;table-layout:fixed}.journalists-table tbody tr:hover{background:var(--bg-hover)}.journalists-table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text-primary);font-size:13px;text-transform:uppercase;letter-spacing:.5px;background:var(--bg-surface)}.journalists-table td{padding:12px 16px;font-size:14px;color:var(--text-primary);vertical-align:middle}.journalists-table th:nth-child(1),.journalists-table td:nth-child(1){width:25%}.journalists-table th:nth-child(2),.journalists-table td:nth-child(2){width:15%}.journalists-table th:nth-child(3),.journalists-table td:nth-child(3){width:60%}.journalists-table-wrapper .empty-state{flex:1;display:flex;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary)}.journalist-status{display:inline-block;padding:4px 12px;border-radius:12px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.journalist-status.selected{background:rgba(16,185,129,.15);color:#059669;border:1px solid rgba(16,185,129,.3)}.journalist-status.not-selected{background:rgba(107,114,128,.15);color:#6b7280;border:1px solid rgba(107,114,128,.3)}.show-more{display:flex;justify-content:center;margin-top:20px;padding-top:16px;border-top:1px solid var(--border-color);flex-shrink:0}.rate-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:20px}.rate-item{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%);border-radius:12px;border:1px solid var(--border-color);transition:all .3s ease}.rate-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:var(--btn-primary-bg)}.rate-label{font-size:13px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.8px;font-weight:600}.rate-value{font-size:28px;font-weight:800;color:var(--text-primary)}.links-list{margin-top:var(--spacing-lg)}.link-url{color:var(--link-color);text-decoration:none;transition:color var(--transition-fast);max-width:400px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block}.link-url:hover{color:var(--link-hover-color);text-decoration:underline}.simple-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .2s ease}.simple-modal{background:var(--bg-primary);border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:700px;width:90%;max-height:85vh;overflow-y:auto;position:relative;border:1px solid var(--border-color);animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.simple-modal-header{padding:24px;border-bottom:2px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;background:var(--bg-surface);border-radius:16px 16px 0 0}.simple-modal-header h2{margin:0;font-size:22px;font-weight:700;color:var(--text-primary)}.simple-modal-close{background:var(--bg-primary);border:1px solid var(--border-color);font-size:20px;cursor:pointer;color:var(--text-secondary);padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s}.simple-modal-close:hover{background:var(--color-error);color:#fff;border-color:var(--color-error);transform:scale(1.05)}.campaign-info-card{animation:slideDown .3s ease}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:24px}.info-item{display:flex;flex-direction:column;gap:10px;padding:16px;background:var(--bg-surface);border-radius:10px;border:1px solid var(--border-color);transition:all .2s ease}.info-item:hover{box-shadow:0 2px 8px #0000001a;border-color:var(--btn-primary-bg)}.info-item.full-width{grid-column:span 2}.info-item label{font-weight:700;color:var(--text-secondary);font-size:12px;text-transform:uppercase;letter-spacing:.8px}.info-item>div{color:var(--text-primary);font-size:15px;line-height:1.6;font-weight:500}.content-display{background:var(--bg-secondary);padding:16px;border-radius:10px;border:1px solid var(--border-color);white-space:pre-wrap;max-height:250px;overflow-y:auto;font-size:14px;line-height:1.7;box-shadow:inset 0 2px 4px #0000000d}.campaign-details-modal{padding:24px}.detail-row{display:grid;grid-template-columns:180px 1fr;gap:20px;margin-bottom:20px;align-items:flex-start;padding-bottom:20px;border-bottom:1px solid var(--border-color)}.detail-row label{font-weight:700;color:var(--text-secondary);font-size:13px;text-transform:uppercase;letter-spacing:.5px}.detail-value{color:var(--text-primary);font-size:15px;word-break:break-word;line-height:1.6}.detail-value.content-box{max-height:250px;overflow-y:auto;padding:16px;background:var(--bg-secondary);border-radius:10px;border:1px solid var(--border-color);white-space:pre-wrap;font-size:14px;line-height:1.7}.modal-footer{padding:20px 24px;border-top:2px solid var(--border-color);display:flex;justify-content:flex-end;background:var(--bg-surface);border-radius:0 0 16px 16px}@media (max-width: 1024px){.stats-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}}.campaign-details-modal-content{padding:20px}.campaign-detail-row{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border-color)}.campaign-detail-row:last-child{border-bottom:none}.campaign-detail-row label{display:block;font-weight:700;color:var(--text-secondary);font-size:13px;text-transform:uppercase;letter-spacing:.8px;margin-bottom:10px}.campaign-detail-row>div{color:var(--text-primary);font-size:15px;line-height:1.6}.campaign-detail-content-box{background:var(--bg-secondary);padding:16px;border-radius:10px;border:1px solid var(--border-color);max-height:400px;overflow-y:auto;font-size:14px;line-height:1.7;box-shadow:inset 0 2px 4px #0000000d}.campaign-detail-content-box>div{word-wrap:break-word;overflow-wrap:break-word}.loading-skeleton{background:linear-gradient(90deg,var(--bg-secondary) 25%,var(--bg-surface) 50%,var(--bg-secondary) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:8px;height:20px}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.journalist-item{display:flex;justify-content:space-between;align-items:center;padding:16px;border:1px solid var(--border-color);border-radius:10px;margin-bottom:12px;transition:all .2s ease;background:var(--bg-surface)}.journalist-item:hover{box-shadow:0 2px 8px #0000001a;border-color:var(--btn-primary-bg);transform:translate(4px)}.journalist-name{font-weight:600;color:var(--text-primary);font-size:15px}.journalist-outlet{color:var(--text-secondary);font-size:13px;margin-top:4px}button{transition:all .2s ease}button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #00000026}button:active:not(:disabled){transform:translateY(0)}.simple-modal::-webkit-scrollbar,.content-display::-webkit-scrollbar,.detail-value.content-box::-webkit-scrollbar{width:8px;height:8px}.simple-modal::-webkit-scrollbar-track,.content-display::-webkit-scrollbar-track,.detail-value.content-box::-webkit-scrollbar-track{background:var(--bg-primary);border-radius:4px}.simple-modal::-webkit-scrollbar-thumb,.content-display::-webkit-scrollbar-thumb,.detail-value.content-box::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.simple-modal::-webkit-scrollbar-thumb:hover,.content-display::-webkit-scrollbar-thumb:hover,.detail-value.content-box::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.empty-state{text-align:center;padding:60px 20px;color:var(--text-secondary)}.empty-state-icon{font-size:48px;margin-bottom:16px;opacity:.5}.empty-state-text{font-size:16px;font-weight:500;color:var(--text-secondary)}@media (max-width: 1024px){.info-grid{grid-template-columns:1fr}.info-item.full-width{grid-column:span 1}.detail-row{grid-template-columns:150px 1fr;gap:16px}}@media (max-width: 768px){.campaign-details{padding:16px;gap:16px}.details-header{flex-direction:column;padding:20px;gap:20px}.header-actions{width:100%;flex-direction:row;justify-content:flex-start}.header-info h1{font-size:22px}.details-section{padding:20px}.details-section h2{font-size:18px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:12px}.stat-value{font-size:24px}.stat-label{font-size:11px}.rate-stats{grid-template-columns:1fr}.rate-item{flex-direction:row;justify-content:space-between;align-items:center}.rate-label{text-align:left}.rate-value{font-size:24px}.info-grid{grid-template-columns:1fr;gap:16px}.info-item.full-width{grid-column:span 1}.detail-row{grid-template-columns:1fr;gap:12px}.detail-row label{font-size:12px}.simple-modal{width:95%;max-height:90vh;border-radius:12px}.simple-modal-header{padding:20px}.simple-modal-header h2{font-size:18px}.campaign-details-modal{padding:20px}.modal-footer{padding:16px 20px}}@media (max-width: 480px){.campaign-details{padding:12px}.details-header{padding:16px}.header-info h1{font-size:20px}.header-actions{flex-direction:column;width:100%}.header-actions button{width:100%}.stats-grid{grid-template-columns:1fr;gap:10px}.stat-item{padding:16px}.stat-value{font-size:28px}.details-section{padding:16px}.details-section h2{font-size:16px}.simple-modal-header,.campaign-details-modal{padding:16px}}.pipeline-overview{display:flex;gap:24px;padding:28px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;margin-bottom:32px;flex-wrap:wrap;box-shadow:0 2px 4px #0000000a,0 1px 2px #0000000f;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.pipeline-overview:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary, var(--accent-primary)));opacity:.8}.pipeline-overview:hover{box-shadow:0 8px 16px #00000014,0 3px 6px #0000000a;transform:translateY(-1px)}.overview-item{display:flex;flex-direction:column;justify-content:space-between;flex:1;min-width:160px;min-height:80px;padding:16px;background:var(--bg-primary);border-radius:8px;border:1px solid var(--border-light, transparent);transition:all .2s ease}.overview-item:hover{background:var(--bg-hover, var(--bg-primary));transform:translateY(-2px);box-shadow:0 4px 8px #0000000f}.overview-label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-weight:500;opacity:.8}.overview-value{font-size:20px;color:var(--text-primary);font-weight:600;letter-spacing:-.02em;line-height:1.1;display:flex;align-items:center;gap:8px}@media (max-width: 1024px){.pipeline-overview{gap:16px;padding:20px}.overview-item{min-width:calc(50% - 8px)}}@media (max-width: 768px){.pipeline-overview{flex-direction:column;gap:12px;padding:16px}.overview-item{flex-direction:row;justify-content:space-between;align-items:center;min-width:100%;min-height:auto;padding:12px}.overview-value{font-size:18px}}.processor-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;padding:24px;display:flex;flex-direction:column;gap:20px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0000000a,0 1px 2px #0000000f;position:relative;overflow:hidden;height:100%;min-height:280px}.processor-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary, var(--accent-primary)));opacity:0;transition:opacity .3s ease}.processor-card:hover{transform:translateY(-2px);box-shadow:0 12px 24px #00000014,0 4px 8px #0000000a;border-color:var(--accent-primary)}.processor-card:hover:before{opacity:1}.processor-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--border-light, var(--border-color))}.processor-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary);letter-spacing:-.02em;line-height:1.2}.status-container{display:flex;align-items:center;gap:8px}.status-text{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);opacity:.8}.status-indicator{width:16px;height:16px;border-radius:50%;animation:pulse 2s infinite;box-shadow:0 0 0 3px #0000000d,0 0 8px #0000001a;flex-shrink:0;border:2px solid var(--bg-surface)}@keyframes pulse{0%,to{opacity:1;transform:scale(1);box-shadow:0 0 0 3px #0000000d,0 0 8px currentColor}50%{opacity:.8;transform:scale(.95);box-shadow:0 0 0 3px #0000000d,0 0 16px currentColor}}.processor-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;flex:1}.metric{display:flex;flex-direction:column;gap:6px;padding:12px;background:var(--bg-primary);border-radius:8px;border:1px solid var(--border-light, transparent);transition:all .2s ease}.metric:hover{background:var(--bg-hover, var(--bg-primary));transform:translate(2px)}.metric .label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-weight:500;opacity:.8}.metric .value{font-size:20px;color:var(--text-primary);font-weight:600;letter-spacing:-.02em;line-height:1.1}@media (max-width: 480px){.processor-card{padding:16px;min-height:240px}.processor-metrics{gap:12px}.metric{padding:8px}.metric .value{font-size:18px}}.database-metrics{margin-top:32px}.database-metrics h2{color:var(--text-primary);font-size:20px;font-weight:600;margin:0 0 16px}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:24px}.metric-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;overflow:hidden;box-shadow:0 2px 4px #0000000a,0 1px 2px #0000000f;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative}.metric-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary, var(--accent-primary)));opacity:0;transition:opacity .3s ease}.metric-card:hover{transform:translateY(-2px);box-shadow:0 12px 24px #00000014,0 4px 8px #0000000a}.metric-card:hover:before{opacity:1}.metric-header{padding:24px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background-color .2s ease;background:var(--bg-surface)}.metric-header:hover{background:var(--bg-hover, var(--bg-surface))}.metric-title{display:flex;flex-direction:column;gap:8px}.metric-title h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary);letter-spacing:-.02em}.primary-value{font-size:32px;font-weight:700;color:var(--accent-primary);letter-spacing:-.03em;line-height:1}.expand-icon{color:var(--text-secondary);font-size:16px;transition:transform .2s ease}.metric-details{padding:0 24px 24px;animation:slideDown .3s ease;background:var(--bg-primary);border-top:1px solid var(--border-light, var(--border-color))}.metric-details h4{margin:16px 0 12px;color:var(--text-secondary);font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:500;opacity:.8}.status-breakdown{margin-bottom:20px}.status-item,.stat-item,.rate-item,.distribution-item,.country-item{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;margin:4px 0;background:var(--bg-surface);border-radius:6px;border:1px solid var(--border-light, transparent);transition:all .2s ease}.status-item:hover,.stat-item:hover,.rate-item:hover,.distribution-item:hover,.country-item:hover{background:var(--bg-hover, var(--bg-surface));transform:translate(4px)}.pipeline-flow{margin-bottom:24px;padding:16px;background:var(--bg-surface);border-radius:8px;border:1px solid var(--border-light, transparent)}.flow-stage{margin-bottom:20px}.flow-stage:last-child{margin-bottom:0}.flow-header{display:flex;justify-content:space-between;margin-bottom:8px;color:var(--text-primary);font-size:13px;font-weight:500}.flow-bar{height:28px;background:var(--bg-primary);border-radius:6px;overflow:hidden;position:relative;box-shadow:inset 0 1px 3px #0000000d}.flow-fill{height:100%;transition:width .5s cubic-bezier(.4,0,.2,1);border-radius:6px;position:relative;overflow:hidden}.flow-fill:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{left:-100%}to{left:100%}}.flow-fill.discovered{background:var(--accent-primary)}.flow-fill.fetched{background:var(--status-info)}.flow-fill.cleaned{background:var(--status-warning)}.flow-fill.validated{background:var(--status-success)}.country-list,.distribution-list{max-height:300px;overflow-y:auto}.country-list::-webkit-scrollbar,.distribution-list::-webkit-scrollbar{width:6px}.country-list::-webkit-scrollbar-track,.distribution-list::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:var(--radius-sm)}.country-list::-webkit-scrollbar-thumb,.distribution-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--radius-sm)}@media (max-width: 768px){.metrics-grid{grid-template-columns:1fr}}.processing-chart{display:flex;flex-direction:column;height:100%}.processing-chart h3{margin:0 0 var(--space-md) 0;color:var(--text-primary);font-size:var(--text-lg)}.recharts-tooltip-wrapper{outline:none!important}.recharts-default-tooltip{background-color:var(--bg-surface)!important;border:1px solid var(--border-color)!important;border-radius:var(--radius-sm)!important;box-shadow:0 2px 8px #0000001a}.recharts-tooltip-label{color:var(--text-primary)!important;font-weight:600;margin-bottom:var(--space-xs)}.recharts-tooltip-item{color:var(--text-primary)!important}.recharts-legend-wrapper{font-size:var(--text-sm)}.recharts-legend-item-text{color:var(--text-primary)!important}.queue-chart{display:flex;flex-direction:column;height:100%}.queue-chart h3{margin:0 0 var(--space-md) 0;color:var(--text-primary);font-size:var(--text-lg)}.no-data{display:flex;justify-content:center;align-items:center;height:350px;color:var(--text-secondary);font-size:var(--text-md)}.custom-tooltip{background-color:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);box-shadow:0 2px 8px #0000001a}.custom-tooltip .label{margin:0;color:var(--text-primary);font-weight:600;font-size:var(--text-sm)}.custom-tooltip .value{margin:var(--space-xs) 0 0 0;color:var(--text-secondary);font-size:var(--text-sm)}.queue-summary{display:flex;gap:var(--space-lg);margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border-light)}.summary-item{display:flex;gap:var(--space-sm);align-items:center}.summary-item .label{color:var(--text-secondary);font-size:var(--text-sm)}.summary-item .value{color:var(--text-primary);font-weight:600;font-size:var(--text-sm)}.recharts-bar-rectangle:hover{opacity:.8}.error-log{margin-top:var(--space-xl);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-lg)}.error-log h2{margin:0;color:var(--text-primary);font-size:var(--text-xl)}.error-log-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-lg);flex-wrap:wrap;gap:var(--space-md)}.error-filters{display:flex;gap:var(--space-sm);flex-wrap:wrap}.error-filters button{padding:var(--space-xs) var(--space-sm);background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--text-sm);cursor:pointer;transition:all .2s ease}.error-filters button:hover{background:var(--bg-hover);color:var(--text-primary)}.error-filters button.active{background:var(--accent-primary);color:var(--text-on-accent);border-color:var(--accent-primary)}.no-errors{padding:var(--space-xl);text-align:center;color:var(--text-secondary);font-size:var(--text-md)}.error-list{display:flex;flex-direction:column;gap:var(--space-md)}.error-item{display:flex;gap:var(--space-md);padding:var(--space-md);background:var(--bg-secondary);border-radius:var(--radius-sm);border-left:3px solid var(--status-warning);transition:transform .2s ease}.error-item:hover{transform:translate(2px)}.error-icon{font-size:var(--text-lg);flex-shrink:0}.error-content{flex:1;min-width:0}.error-header{display:flex;gap:var(--space-sm);align-items:center;margin-bottom:var(--space-xs);flex-wrap:wrap}.error-processor{font-weight:600;color:var(--text-primary);text-transform:capitalize;font-size:var(--text-sm)}.error-type{padding:2px var(--space-xs);background:var(--bg-surface);border-radius:var(--radius-xs);color:var(--text-secondary);font-size:var(--text-xs);font-family:var(--font-mono)}.error-count{padding:2px var(--space-xs);background:var(--status-warning);color:var(--text-on-accent);border-radius:var(--radius-xs);font-size:var(--text-xs);font-weight:600}.error-message{color:var(--text-primary);font-size:var(--text-sm);line-height:1.5;word-break:break-word}.error-domain{margin-top:var(--space-xs);color:var(--text-secondary);font-size:var(--text-xs);font-family:var(--font-mono)}.error-time{flex-shrink:0;color:var(--text-secondary);font-size:var(--text-xs)}.expand-button{margin-top:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--text-sm);cursor:pointer;transition:all .2s ease;width:100%}.expand-button:hover{background:var(--bg-hover);border-color:var(--border-color)}@media (max-width: 768px){.error-log-header{flex-direction:column;align-items:flex-start}.error-item{flex-direction:column}.error-time{align-self:flex-start}}.config-panel{margin-top:var(--space-xl);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--space-lg)}.config-panel h2{margin:0 0 var(--space-sm) 0;color:var(--text-primary);font-size:var(--text-xl)}.config-description{color:var(--text-secondary);font-size:var(--text-sm);margin-bottom:var(--space-lg)}.processor-configs{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-lg);margin-bottom:var(--space-lg)}.config-item{background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--space-md)}.config-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-md)}.config-header h3{margin:0;font-size:var(--text-md);color:var(--text-primary)}.edit-button{padding:var(--space-xs) var(--space-sm);background:var(--accent-primary);color:var(--text-on-accent);border:none;border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;transition:opacity .2s ease}.edit-button:hover{opacity:.9}.config-display{display:flex;flex-direction:column;gap:var(--space-xs)}.config-value{display:flex;justify-content:space-between;padding:var(--space-xs) 0;border-bottom:1px solid var(--border-light);font-size:var(--text-sm)}.config-value:last-child{border-bottom:none}.config-key{color:var(--text-secondary);text-transform:capitalize}.config-val{color:var(--text-primary);font-family:var(--font-mono);font-weight:500}.config-editor{display:flex;flex-direction:column;gap:var(--space-md)}.config-field{display:flex;flex-direction:column;gap:var(--space-xs)}.config-field label{color:var(--text-secondary);font-size:var(--text-sm);text-transform:capitalize}.config-field input{padding:var(--space-sm);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-sm)}.config-field input:focus{outline:none;border-color:var(--accent-primary)}.config-actions{display:flex;gap:var(--space-sm);margin-top:var(--space-md)}.save-button,.cancel-button{padding:var(--space-sm) var(--space-md);border:none;border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;transition:opacity .2s ease}.save-button{background:var(--status-success);color:#fff}.cancel-button{background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-color)}.save-button:hover,.cancel-button:hover{opacity:.9}.save-button:disabled,.cancel-button:disabled{opacity:.5;cursor:not-allowed}.config-note{padding:var(--space-md);background:var(--bg-warning);border-radius:var(--radius-sm);color:var(--text-warning);font-size:var(--text-sm);line-height:1.5}.config-note strong{color:var(--text-primary)}@media (max-width: 768px){.processor-configs{grid-template-columns:1fr}}.pipeline-dashboard{display:flex;flex-direction:column;gap:24px;padding:0;max-width:1400px;margin:0 auto;width:100%}.journalist-profile{padding:var(--spacing-lg);max-width:1200px;margin:0 auto;width:100%;box-sizing:border-box;overflow-x:hidden}.profile-header{margin-bottom:var(--spacing-md)}.journalist-profile-loading,.journalist-profile-error{padding:var(--spacing-xl);text-align:center}.journalist-info-card{margin-bottom:var(--spacing-lg);overflow-wrap:break-word;word-break:break-word;overflow:hidden}.journalist-header{display:flex;gap:var(--spacing-lg);align-items:flex-start;margin-bottom:var(--spacing-lg)}.journalist-avatar{width:80px;height:80px;border-radius:50%;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;flex-shrink:0}.journalist-details{flex:1;min-width:0;overflow-wrap:break-word}.journalist-details h1{margin:0 0 var(--spacing-sm) 0;font-size:28px;color:var(--text-primary);word-break:break-word;overflow-wrap:break-word}.journalist-meta{display:flex;flex-wrap:wrap;gap:var(--spacing-md);color:var(--text-secondary);font-size:14px}.meta-item{display:flex;align-items:center;gap:var(--spacing-xs);word-break:break-word;overflow-wrap:break-word;max-width:100%}.journalist-bio{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.journalist-bio h3{margin:0 0 var(--spacing-sm) 0;font-size:18px;color:var(--text-primary)}.journalist-bio p{margin:0;line-height:1.6;color:var(--text-secondary)}.snippet-item{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-color);word-break:break-word;overflow-wrap:break-word}.snippet-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.high-yield-insights{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.high-yield-insights h3{margin:0 0 var(--spacing-md) 0;font-size:18px;color:var(--text-primary)}.insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--spacing-md)}.insight-card{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-color);text-align:center}.insight-value{font-size:24px;font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.insight-value.yield-score,.insight-value.trend-increasing{color:var(--success-color)}.insight-value.trend-stable{color:var(--info-color, #0284c7)}.insight-value.trend-declining{color:var(--warning-color)}.insight-value.trend-stopped{color:var(--error-color)}.insight-value.trend-insufficient_data,.insight-value.trend-unknown{color:var(--text-tertiary);font-size:18px}.insight-label{font-size:12px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px}.snippet-item h4{margin:0 0 var(--spacing-sm) 0;font-size:16px;font-weight:600;color:var(--text-primary);word-break:break-word;overflow-wrap:break-word}.snippet-item p{margin:0;line-height:1.6;color:var(--text-secondary);font-size:14px;word-break:break-word;overflow-wrap:break-word}.journalist-social{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.journalist-social h3{margin:0 0 var(--spacing-sm) 0;font-size:18px;color:var(--text-primary)}.social-links{display:flex;gap:var(--spacing-md)}.social-links a{color:var(--color-primary);text-decoration:none;padding:var(--spacing-xs) var(--spacing-md);border:1px solid var(--color-primary);border-radius:var(--radius-sm);transition:all .2s}.social-links a:hover{background:var(--color-primary);color:#fff}.articles-card{margin-bottom:var(--spacing-lg);overflow-wrap:break-word;word-break:break-word;overflow:hidden}.articles-header{margin-bottom:var(--spacing-lg)}.articles-header-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.articles-header h2{margin:0;font-size:24px;color:var(--text-primary)}.search-count{color:var(--text-secondary);font-size:18px;font-weight:400}.articles-controls{display:flex;align-items:center;gap:var(--spacing-md)}.articles-search-input{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:14px;min-width:250px;transition:all .2s}.articles-search-input::placeholder{color:var(--text-tertiary)}.articles-search-input:hover{border-color:var(--color-primary)}.articles-search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-alpha)}.items-per-page-select{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:14px;cursor:pointer;transition:all .2s}.items-per-page-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-alpha)}.no-articles{padding:var(--spacing-xl);text-align:center;color:var(--text-secondary)}.articles-list{display:flex;flex-direction:column;gap:var(--spacing-lg)}.article-item{padding:var(--spacing-lg);background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-color);transition:all .2s;word-break:break-word;overflow-wrap:break-word;overflow:hidden}.article-item:hover{border-color:var(--color-primary);box-shadow:0 2px 8px #0000001a}.article-content{display:flex;flex-direction:column;gap:var(--spacing-sm);min-width:0}.article-title{margin:0;font-size:18px;color:var(--text-primary);word-break:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.article-link{color:var(--color-primary);text-decoration:none;transition:color .2s;word-break:break-word;overflow-wrap:break-word}.article-link:hover{text-decoration:underline;color:var(--color-primary-dark)}.article-snippet{margin:0;color:var(--text-secondary);line-height:1.6;font-size:14px;word-break:break-word;overflow-wrap:break-word}.article-meta{display:flex;flex-wrap:wrap;gap:var(--spacing-md);color:var(--text-tertiary);font-size:13px;margin-top:var(--spacing-sm);word-break:break-word;overflow-wrap:break-word}.article-url{color:var(--color-primary);text-decoration:none;word-break:break-all}.article-url:hover{text-decoration:underline}.articles-pagination{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:var(--spacing-md)}.pagination-info{text-align:center;color:var(--text-secondary);font-size:14px}.pagination{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.pagination-pages{display:flex;align-items:center;gap:var(--spacing-xs)}.pagination-page{min-width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s;font-size:14px;padding:0 var(--spacing-xs)}.pagination-page:hover:not(.active){border-color:var(--color-primary);background:var(--bg-hover)}.pagination-page.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);font-weight:600;cursor:default}.pagination-ellipsis{color:var(--text-tertiary);padding:0 var(--spacing-xs);-webkit-user-select:none;user-select:none}@media (max-width: 1024px){.journalist-profile{padding:var(--spacing-md)}.journalist-details h1{font-size:24px}.articles-header h2{font-size:20px}}@media (max-width: 768px){.journalist-profile{padding:var(--spacing-sm)}.journalist-header{flex-direction:column;align-items:center;text-align:center;gap:var(--spacing-md)}.insights-grid{grid-template-columns:repeat(3,1fr)}.insight-value{font-size:20px}.insight-label{font-size:10px}.journalist-avatar{width:64px;height:64px;font-size:24px}.journalist-details h1{font-size:22px}.journalist-meta{justify-content:center;font-size:13px}.articles-header-content{flex-direction:column;align-items:flex-start}.articles-header h2{font-size:18px}.articles-controls{flex-direction:column;width:100%}.articles-search-input{width:100%;min-width:unset}.article-item{padding:var(--spacing-md)}.article-title{font-size:16px}.article-meta{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.pagination{flex-wrap:wrap}.pagination-btn{min-width:80px;font-size:13px}.pagination-page{min-width:32px;height:32px;font-size:13px}}@media (max-width: 480px){.journalist-profile{padding:var(--spacing-xs)}.journalist-header{gap:var(--spacing-sm)}.journalist-avatar{width:56px;height:56px;font-size:20px}.journalist-details h1{font-size:20px}.journalist-meta{font-size:12px;gap:var(--spacing-sm)}.meta-item{font-size:12px}.articles-header-content,.articles-controls{width:100%}.articles-search-input,.items-per-page-select{width:100%;font-size:13px}.articles-header h2{font-size:16px}.search-count{font-size:14px}.article-item{padding:var(--spacing-sm);border-radius:8px}.article-title{font-size:15px}.article-snippet{font-size:13px}.article-meta{font-size:12px}.snippet-item h4{font-size:15px}.snippet-item p{font-size:13px}.pagination{gap:var(--spacing-xs)}.pagination-btn{min-width:70px;font-size:12px;padding:var(--spacing-xs)}.pagination-page{min-width:28px;height:28px;font-size:12px}.pagination-info{font-size:12px}}.prv2-container{display:flex;flex-direction:column;height:100%;min-height:0;flex:1;padding:20px;box-sizing:border-box;overflow:hidden}.prv2-filters{flex-shrink:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:16px 20px;margin-bottom:16px}.filter-row{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:6px;min-width:150px}.filter-group label{font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px}.filter-group select{padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--bg-primary);color:var(--text-primary);font-size:14px;cursor:pointer;min-width:160px}.filter-group select:focus{outline:none;border-color:var(--accent-color, var(--primary-color))}.search-group{flex:1;min-width:200px;max-width:280px}.search-input{padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--bg-primary);color:var(--text-primary);font-size:14px;width:100%}.search-input:focus{outline:none;border-color:var(--accent-color, var(--primary-color))}.search-input::placeholder{color:var(--text-tertiary)}.filter-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.btn-reset{padding:8px 14px;border:1px solid var(--border-color);border-radius:var(--border-radius);background:transparent;color:var(--text-secondary);font-size:13px;cursor:pointer;transition:all .15s ease}.btn-reset:hover{background:var(--bg-tertiary);color:var(--text-primary)}.result-count{font-size:14px;color:var(--text-secondary);white-space:nowrap;font-weight:500}.btn-action{padding:8px 16px;border:none;border-radius:var(--border-radius);background:var(--btn-primary-bg)!important;color:var(--btn-primary-text)!important;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease}.btn-action:hover{background:var(--btn-primary-hover)!important;transform:translateY(-1px)}.prv2-results{flex:1;display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);overflow:hidden;min-height:0}.loading-state,.empty-state{padding:60px 20px;text-align:center;color:var(--text-secondary)}.empty-state p{margin-bottom:16px}.results-table-container{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.results-header{flex-shrink:0;display:flex;align-items:center;justify-content:flex-end;padding:10px 16px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.time-window-indicator{font-size:12px;color:var(--text-secondary);background:var(--bg-primary);padding:4px 10px;border-radius:4px;border:1px solid var(--border-color)}.results-table{width:100%;border-collapse:collapse;display:flex;flex-direction:column;flex:1;min-height:0}.results-table thead{flex-shrink:0;display:table;width:100%;table-layout:fixed}.results-table tbody{flex:1;overflow-y:auto;overflow-x:hidden;display:block}.results-table tbody tr{display:table;width:100%;table-layout:fixed}.results-table th{padding:12px 16px;text-align:left;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:1}.results-table td{padding:14px 16px;border-bottom:1px solid var(--border-color-light, var(--border-color));vertical-align:middle}.results-table tbody tr:hover{background:var(--bg-hover)}.results-table tbody tr:last-child td{border-bottom:none}.results-table tbody tr.row-selected{background:var(--primary-bg, rgba(59, 130, 246, .08))}.results-table tbody tr.row-selected:hover{background:var(--primary-bg-hover, rgba(59, 130, 246, .12))}.col-checkbox{width:40px;min-width:40px;max-width:40px;text-align:center}.col-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--primary-color)}.col-journalist{min-width:220px}.journalist-info{display:flex;flex-direction:column;gap:3px}.journalist-name{font-weight:600;color:var(--text-primary);font-size:14px;text-decoration:none;transition:color .15s ease}.journalist-name:hover{color:var(--primary-color);text-decoration:underline}.journalist-meta{font-size:12px;color:var(--text-tertiary)}.col-publication{min-width:180px}.publication-info{display:flex;flex-direction:column;gap:3px}.publication-name{font-weight:500;color:var(--text-primary);font-size:13px}.publication-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.media-group{font-size:11px;color:var(--text-tertiary)}.more-domains{font-size:11px;color:var(--text-tertiary);font-style:italic}.col-score{min-width:130px}.score-cell{display:flex;align-items:center;gap:8px}.yield-badge{display:inline-flex;align-items:center;justify-content:center;min-width:48px;padding:5px 10px;border-radius:6px;font-size:14px;font-weight:700}.yield-label{font-size:12px;color:var(--text-secondary)}.badge-exceptional{background:linear-gradient(135deg,#f3e8ff 0%,#e9d5ff 100%);color:#7c3aed}.badge-very-high{background:var(--success-bg);color:var(--success-color)}.badge-high{background:var(--info-bg, #e0f2fe);color:var(--info-color, #0284c7)}.badge-moderate{background:var(--warning-bg);color:var(--warning-color)}.badge-low{background:var(--bg-tertiary);color:var(--text-tertiary)}.col-syndication{min-width:170px}.syndication-badge{display:inline-block;padding:5px 12px;border-radius:6px;font-size:13px;font-weight:600}.syndication-high{background:linear-gradient(135deg,#f3e8ff 0%,#e9d5ff 100%);color:#7c3aed}.syndication-medium{background:var(--info-bg, #e0f2fe);color:var(--info-color, #0284c7)}.syndication-normal{background:var(--bg-tertiary);color:var(--text-secondary)}.col-domains{min-width:100px}.domain-count{font-weight:700;font-size:18px;color:var(--text-primary);margin-right:4px}.domain-label{font-size:12px;color:var(--text-tertiary)}.col-links{min-width:120px}.links-info{display:flex;flex-direction:column;gap:2px}.links-total{font-weight:600;color:var(--text-primary);font-size:15px}.links-recent{font-size:12px;color:var(--text-tertiary)}.col-sponsored{min-width:90px}.sponsored-badge{display:inline-block;padding:5px 10px;border-radius:6px;font-size:13px;font-weight:600;min-width:45px;text-align:center}.sponsored-none{background:var(--success-bg);color:var(--success-color)}.sponsored-low{background:var(--info-bg, #e0f2fe);color:var(--info-color, #0284c7)}.sponsored-medium{background:var(--warning-bg);color:var(--warning-color)}.sponsored-high{background:var(--error-bg);color:var(--error-color)}.col-trend{min-width:120px}.trend-indicator{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:6px;font-size:13px;font-weight:500}.trend-up{background:var(--success-bg);color:var(--success-color)}.trend-stable{background:var(--info-bg, #e0f2fe);color:var(--info-color, #0284c7)}.trend-down{background:var(--warning-bg);color:var(--warning-color)}.trend-stopped{background:var(--error-bg);color:var(--error-color)}.trend-unknown{background:var(--bg-tertiary);color:var(--text-tertiary)}.pagination{flex-shrink:0;display:flex;align-items:center;justify-content:center;gap:16px;padding:16px;border-top:1px solid var(--border-color);background:var(--bg-tertiary)}.btn-page{padding:8px 16px;border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--bg-primary);color:var(--text-primary);font-size:14px;cursor:pointer;transition:all .15s ease}.btn-page:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--accent-color, var(--primary-color))}.btn-page:disabled{opacity:.5;cursor:not-allowed}.page-info{font-size:14px;color:var(--text-secondary)}.btn-secondary{padding:10px 20px;border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--bg-primary);color:var(--text-primary);font-size:14px;cursor:pointer}.btn-secondary:hover{background:var(--bg-tertiary)}.ideation-header{margin-bottom:24px}.ideation-intro h2{font-size:20px;font-weight:600;color:var(--text-primary);margin:0 0 8px}.ideation-intro p{font-size:14px;color:var(--text-secondary);margin:0}.ideation-layout{display:grid;grid-template-columns:350px 1fr;gap:24px;flex:1;min-height:0}.ideation-panel{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);display:flex;flex-direction:column;overflow:hidden}.panel-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-color);background:var(--bg-tertiary)}.panel-header h3{font-size:14px;font-weight:600;color:var(--text-primary);margin:0}.btn-text{background:none;border:none;color:var(--primary-color);font-size:13px;cursor:pointer;padding:0}.btn-text:hover{text-decoration:underline}.btn-prompt-editor{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-secondary);font-size:13px;cursor:pointer;transition:all .15s ease}.btn-prompt-editor:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--primary-color)}.btn-prompt-editor svg{flex-shrink:0}.panel-empty{padding:40px 20px;text-align:center;color:var(--text-secondary)}.panel-empty p{margin:0 0 16px}.panel-loading{padding:40px 20px;text-align:center;color:var(--text-secondary)}.journalists-panel .journalist-list{flex:1;overflow-y:auto;padding:12px}.journalist-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:12px;margin-bottom:8px}.journalist-card:last-child{margin-bottom:0}.journalist-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.journalist-card-info{display:flex;flex-direction:column;gap:2px;min-width:0}.journalist-card-name{font-weight:600;font-size:14px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.journalist-card-pub{font-size:12px;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-remove{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:var(--text-tertiary);font-size:18px;cursor:pointer;border-radius:4px;transition:all .15s ease}.btn-remove:hover{background:var(--error-bg);color:var(--error-color)}.journalist-card-stats{display:flex;gap:12px;margin-top:8px;font-size:12px;color:var(--text-secondary)}.context-panel{display:flex;flex-direction:column}.context-form{flex:1;padding:20px;overflow-y:auto}.form-group label{display:block;font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.form-group input,.form-group textarea{width:100%;padding:10px 14px;border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--bg-primary);color:var(--text-primary);font-size:14px;font-family:inherit}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-tertiary)}.form-group textarea{resize:vertical;min-height:100px}.form-actions{margin-top:24px;margin-bottom:24px}.btn-generate{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:12px 24px;border:none;border-radius:var(--border-radius);background:var(--btn-primary-bg)!important;color:var(--btn-primary-text)!important;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s ease}.btn-generate:hover:not(:disabled){background:var(--btn-primary-hover)!important;transform:translateY(-1px)}.ideation-info{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:16px}.ideation-info h4{font-size:13px;font-weight:600;color:var(--text-primary);margin:0 0 12px}.ideation-info ol{margin:0;padding-left:20px}.ideation-info li{font-size:13px;color:var(--text-secondary);margin-bottom:8px;line-height:1.5}.ideation-info li:last-child{margin-bottom:0}.ideation-info li strong{color:var(--text-primary)}.cost-estimate{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-color);font-size:12px;color:var(--text-tertiary)}.generation-progress{margin-top:16px;padding:16px;border-radius:var(--border-radius);background:var(--bg-tertiary);border:1px solid var(--border-color)}.generation-progress.starting{border-color:var(--primary-color);background:var(--bg-surface)}.generation-progress.completed{border-color:var(--success-color);background:var(--bg-surface)}.generation-progress.error{border-color:var(--error-color);background:var(--bg-surface)}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.progress-status{font-weight:500;color:var(--text-primary)}.generation-progress.starting .progress-status{color:var(--primary-color)}.generation-progress.completed .progress-status{color:var(--success-color)}.generation-progress.error .progress-status{color:var(--error-color)}.progress-cost{font-size:12px;color:var(--text-secondary)}.progress-bar-container{height:4px;background:var(--bg-primary);border-radius:2px;overflow:hidden}.progress-bar{height:100%;background:var(--primary-color);border-radius:2px;transition:width .3s ease}.progress-bar.indeterminate{width:30%;animation:indeterminate 1.5s infinite ease-in-out}@keyframes indeterminate{0%{transform:translate(-100%)}to{transform:translate(400%)}}.progress-actions{font-size:13px;color:var(--success-color)}.ideation-layout-v2{display:grid;grid-template-columns:320px 1fr;gap:20px;flex:1;min-height:0;overflow:hidden;height:100%}.sessions-panel{display:flex;flex-direction:column;min-height:0;height:100%;overflow:hidden}.session-user-filter{padding:12px 16px;border-bottom:1px solid var(--border-color);flex-shrink:0}.user-filter-select{width:100%;padding:8px 12px;border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--bg-primary);color:var(--text-primary);font-size:13px;cursor:pointer}.user-filter-select:focus{outline:none;border-color:var(--primary-color)}.sessions-list{flex:1 1 auto;overflow-y:auto;padding:12px;min-height:0;height:0}.session-item{padding:12px;border:1px solid var(--border-color);border-radius:var(--border-radius);margin-bottom:8px;cursor:pointer;background:var(--bg-primary);transition:all .15s ease}.session-item:hover{border-color:var(--primary-color);background:var(--bg-tertiary)}.session-item.selected{border-color:var(--primary-color);background:var(--bg-tertiary);box-shadow:0 0 0 1px var(--primary-color)}.session-item:last-child{margin-bottom:0}.session-title{font-weight:600;font-size:13px;color:var(--text-primary);margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-meta{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text-tertiary);margin-bottom:6px}.session-user{font-weight:500;color:var(--text-secondary)}.session-date{color:var(--text-tertiary)}.session-stats{display:flex;gap:12px}.session-stat{font-size:11px;color:var(--text-secondary);padding:2px 6px;background:var(--bg-tertiary);border-radius:4px}.session-stat-go{color:var(--success-color);background:var(--success-bg)}.context-panel-v2{display:flex;flex-direction:column;min-height:0;height:100%;overflow:hidden}.context-form-v2{flex:1;padding:20px;overflow-y:auto;display:flex;flex-direction:column}.context-form-v2 .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.context-form-v2 .form-group{margin-bottom:16px}.context-form-v2 .form-group textarea{min-height:60px}.context-form-v2 .form-actions{margin-top:16px;margin-bottom:16px}.selected-journalists-section{flex:1;min-height:150px;display:flex;flex-direction:column;border-top:1px solid var(--border-color);padding-top:16px;margin-top:8px}.journalists-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;flex-shrink:0}.journalists-title{font-size:13px;font-weight:600;color:var(--text-primary)}.journalists-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--text-secondary);padding:20px}.journalists-empty p{margin:0 0 12px}.journalists-loading{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.journalists-grid{flex:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;overflow-y:auto;align-content:start;padding-right:4px}.journalist-square-card{position:relative;padding:12px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);text-align:center;transition:all .15s ease}.journalist-square-card:hover{border-color:var(--primary-color)}.card-remove-btn{position:absolute;top:4px;right:4px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border:none;border-radius:4px;color:var(--text-tertiary);font-size:14px;cursor:pointer;opacity:0;transition:all .15s ease}.journalist-square-card:hover .card-remove-btn{opacity:1}.card-remove-btn:hover{background:var(--error-bg);color:var(--error-color)}.card-name{font-weight:600;font-size:12px;color:var(--text-primary);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-pub{font-size:11px;color:var(--text-tertiary);margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-score{font-size:10px;color:var(--text-secondary);padding:2px 6px;background:var(--bg-tertiary);border-radius:4px;display:inline-block}@media (max-width: 900px){.ideation-layout-v2{grid-template-columns:1fr}.sessions-panel{max-height:250px}.context-form-v2 .form-row{grid-template-columns:1fr}}@media (max-width: 900px){.ideation-layout{grid-template-columns:1fr}.journalists-panel{max-height:300px}}@media (max-width: 1024px){.filter-row{flex-wrap:wrap}.filter-group{min-width:140px}.search-group{max-width:100%;flex-basis:100%}}@media (max-width: 768px){.filter-row{flex-direction:column;align-items:stretch}.filter-group{min-width:100%}.search-group{max-width:100%}.filter-actions{margin-left:0;justify-content:space-between}.results-table th,.results-table td{padding:10px 12px}}.research-header,.drafts-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:16px 20px;margin-bottom:16px;flex-shrink:0}.research-stats,.drafts-stats{display:flex;gap:24px}.stat-item{display:flex;flex-direction:column;align-items:center;gap:4px}.stat-value.stat-pending{color:var(--warning-color)}.stat-value.stat-go,.stat-value.stat-ready{color:var(--success-color)}.stat-value.stat-no-go{color:var(--error-color)}.stat-label{font-size:12px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px}.research-actions,.drafts-filter{display:flex;align-items:center;gap:12px}.research-list,.drafts-list{display:flex;flex-direction:column;gap:12px;flex:1 1 0;min-height:0;overflow-y:auto;overflow-x:hidden;padding-bottom:20px;padding-right:8px}.research-card,.draft-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);overflow:hidden;transition:border-color .15s ease;flex-shrink:0}.research-card:hover,.draft-card:hover{border-color:var(--primary-color)}.research-card.card-go{border-left:4px solid var(--success-color)}.research-card.card-no-go{border-left:4px solid var(--error-color)}.research-card-header,.draft-card-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);cursor:pointer}.research-card-header .journalist-info{display:flex;align-items:center;gap:12px}.research-card-header .journalist-name{font-weight:600;color:var(--text-primary);text-decoration:none}.research-card-header .journalist-name:hover{color:var(--primary-color);text-decoration:underline}.research-card-header .journalist-pub{color:var(--text-secondary);font-size:13px}.research-card-header .journalist-score{color:var(--text-tertiary);font-size:12px;background:var(--bg-primary);padding:2px 8px;border-radius:4px}.status-badge{display:inline-flex;align-items:center;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600}.status-pending{background:var(--bg-tertiary);color:var(--text-secondary)}.status-researching{background:var(--primary-bg, var(--info-bg, #e0f2fe));color:var(--color-info, var(--info-color, #0284c7));border:1px solid var(--primary-border, var(--info-color, #0284c7))}.status-go{background:var(--success-bg, #d4edda);color:var(--success-text, var(--success-color, #28a745));border:1px solid var(--success-border, var(--success-color, #28a745))}.status-no-go{background:var(--danger-bg, var(--error-bg, #f8d7da));color:var(--danger-text, var(--error-color, #dc3545));border:1px solid var(--danger-border, var(--error-color, #dc3545))}.status-ready{background:var(--primary-bg, var(--info-bg, #e0f2fe));color:var(--color-info, var(--info-color, #0284c7));border:1px solid var(--primary-border, var(--info-color, #0284c7))}.status-failed{background:var(--danger-bg, var(--error-bg, #f8d7da));color:var(--danger-text, var(--error-color, #dc3545));border:1px solid var(--danger-border, var(--error-color, #dc3545))}[data-theme=dark] .status-go{background:#1e3a1e;color:#4ade80;border:1px solid #2e5a2e}[data-theme=dark] .status-no-go{background:#3a1e1e;color:#f87171;border:1px solid #5a2e2e}[data-theme=dark] .status-pending{background:#383838;color:#9ca3af;border:1px solid #4a4a4a}[data-theme=dark] .status-researching,[data-theme=dark] .status-ready{background:#1e2a3a;color:#3abff8;border:1px solid #2e4a5a}[data-theme=dark] .status-failed{background:#3a1e1e;color:#f87171;border:1px solid #5a2e2e}.idea-section{padding:16px 20px;border-bottom:1px solid var(--border-color)}.idea-section.idea-primary{padding:20px 24px;background:var(--bg-surface)}.idea-meta-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.idea-label{font-size:11px;font-weight:600;text-transform:uppercase;color:var(--text-tertiary);letter-spacing:.5px}.idea-headline-large{font-size:20px;font-weight:700;color:var(--text-primary);margin:0 0 8px;line-height:1.35}.idea-summary{font-size:14px;color:var(--text-secondary);margin:0 0 12px;line-height:1.5}.idea-scores-row{display:flex;gap:8px;flex-wrap:wrap}.score-pill{font-size:12px;color:var(--text-secondary);background:var(--bg-tertiary);padding:4px 10px;border-radius:12px}.journalist-bar{display:flex;align-items:center;gap:8px;padding:12px 24px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);font-size:13px}.journalist-name-link{color:var(--text-primary);text-decoration:none;font-weight:500}.journalist-name-link:hover{color:var(--primary-color);text-decoration:underline}.journalist-divider{color:var(--text-tertiary)}.journalist-bar .journalist-pub{color:var(--text-secondary)}.journalist-bar .journalist-score{color:var(--text-tertiary);font-size:12px}.idea-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.idea-scores{font-size:12px;color:var(--text-secondary)}.idea-headline{font-size:16px;font-weight:600;color:var(--text-primary);margin:0;line-height:1.4}.research-results{padding:16px 20px;background:var(--bg-primary)}.results-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.results-header h5{font-size:13px;font-weight:600;color:var(--text-primary);margin:0}.sufficiency-badge{font-size:11px;font-weight:600;padding:4px 8px;border-radius:4px}.sufficiency-1,.sufficiency-2{background:var(--danger-bg, var(--error-bg, #f8d7da));color:var(--danger-text, var(--error-color, #dc3545));border:1px solid var(--danger-border, var(--error-color, #dc3545))}.sufficiency-3{background:var(--warning-bg, #fff3cd);color:var(--warning-text, var(--warning-color, #856404));border:1px solid var(--warning-border, var(--warning-color, #ffc107))}.sufficiency-4,.sufficiency-5{background:var(--success-bg, #d4edda);color:var(--success-text, var(--success-color, #28a745));border:1px solid var(--success-border, var(--success-color, #28a745))}[data-theme=dark] .sufficiency-1,[data-theme=dark] .sufficiency-2{background:#3a1e1e;color:#f87171;border:1px solid #5a2e2e}[data-theme=dark] .sufficiency-3{background:#3a3a1e;color:#fbbf24;border:1px solid #5a5a2e}[data-theme=dark] .sufficiency-4,[data-theme=dark] .sufficiency-5{background:#1e3a1e;color:#4ade80;border:1px solid #2e5a2e}[data-theme=dark] .research-results{background:#1e1e2e!important;border-top:1px solid #3a3a5e!important;display:block!important;visibility:visible!important;opacity:1!important}[data-theme=dark] .results-header{display:flex!important;visibility:visible!important}[data-theme=dark] .results-header h5{color:#fff!important;visibility:visible!important}[data-theme=dark] .findings-list,[data-theme=dark] .finding-item{display:flex!important;visibility:visible!important}[data-theme=dark] .finding-text{color:#fff!important}[data-theme=dark] .finding-source{color:#b0b0b0!important}[data-theme=dark] .finding-content{display:flex!important;visibility:visible!important}[data-theme=dark] .recommendation{background:#2a2a4e!important;color:#fff!important;border:1px solid #4a4a6e!important;display:block!important;visibility:visible!important}[data-theme=dark] .data-gaps{background:#3a3a1e!important;border:1px solid #5a5a2e!important;display:block!important;visibility:visible!important}[data-theme=dark] .data-gaps h6{color:#fbbf24!important}[data-theme=dark] .data-gaps ul{display:block!important;visibility:visible!important}[data-theme=dark] .data-gaps li{color:#e0e0e0!important}.findings-list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.finding-item{display:flex;align-items:flex-start;gap:10px}.credibility-dot{flex-shrink:0;width:8px;height:8px;border-radius:50%;margin-top:6px}.credibility-high{background:var(--success-color)}.credibility-medium{background:var(--warning-color)}.credibility-low{background:var(--error-color)}.finding-content{display:flex;flex-direction:column;gap:2px}.finding-text{font-size:14px;color:var(--text-primary)}.finding-source{font-size:12px;color:var(--text-tertiary)}.data-gaps{background:var(--warning-bg);padding:12px;border-radius:var(--border-radius);margin-bottom:12px}.data-gaps h6{font-size:12px;font-weight:600;color:var(--warning-color);margin:0 0 8px}.data-gaps ul{margin:0;padding-left:16px}.data-gaps li{font-size:13px;color:var(--text-secondary)}.recommendation{font-size:13px;font-weight:500;color:var(--text-primary);padding:12px;background:var(--bg-tertiary);border-radius:var(--border-radius)}.research-card-actions{display:flex;align-items:center;gap:12px;padding:16px 20px;border-top:1px solid var(--border-color)}.research-button-container{padding:12px 20px;border-top:1px solid var(--border-color)}.btn-show-research{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:var(--primary-color);color:#fff;border:none;border-radius:var(--border-radius);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s ease}.btn-show-research:hover{background:var(--primary-hover)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.research-modal{background:var(--bg-surface);border-radius:12px;width:100%;max-width:700px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.research-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-color);background:var(--bg-tertiary)}.research-modal-title{display:flex;align-items:center;gap:12px}.research-modal-title h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.modal-close-btn{background:none;border:none;font-size:20px;color:var(--text-secondary);cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .15s ease}.modal-close-btn:hover{background:var(--bg-primary);color:var(--text-primary)}.research-modal-meta{display:flex;align-items:center;gap:12px;padding:16px 24px;background:var(--bg-primary);border-bottom:1px solid var(--border-color)}.modal-journalist{font-size:14px;color:var(--text-secondary)}.research-modal-idea{padding:16px 24px;border-bottom:1px solid var(--border-color)}.research-modal-idea h4{margin:0 0 8px;font-size:16px;font-weight:600;color:var(--text-primary)}.research-modal-idea p{margin:0;font-size:14px;color:var(--text-secondary);line-height:1.5}.research-modal-content{padding:24px;overflow-y:auto;flex:1}.research-modal-content h5{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px}.modal-findings-list{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.modal-finding-item{display:flex;align-items:flex-start;gap:12px;padding:12px;background:var(--bg-primary);border-radius:var(--border-radius);border:1px solid var(--border-color)}.modal-finding-content{display:flex;flex-direction:column;gap:4px;flex:1}.modal-finding-text{font-size:14px;color:var(--text-primary);line-height:1.4}.modal-finding-source{font-size:12px;color:var(--text-tertiary)}.modal-data-gaps{background:var(--warning-bg);padding:16px;border-radius:var(--border-radius);margin-bottom:24px;border:1px solid var(--warning-border, var(--warning-color))}.modal-data-gaps h5{color:var(--warning-color);margin-bottom:8px}.modal-data-gaps ul{margin:0;padding-left:20px}.modal-data-gaps li{font-size:13px;color:var(--text-secondary);margin-bottom:4px}.modal-recommendation{background:var(--bg-tertiary);padding:16px;border-radius:var(--border-radius);border:1px solid var(--border-color)}.modal-recommendation h5{margin-bottom:8px}.modal-recommendation p{margin:0;font-size:14px;color:var(--text-primary);line-height:1.5}.research-modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--border-color);background:var(--bg-tertiary)}[data-theme=dark] .research-modal{background:#1a1a2e;border:1px solid #2a2a4e}[data-theme=dark] .research-modal-header{background:#151525}[data-theme=dark] .research-modal-title h3{color:#fff}[data-theme=dark] .research-modal-meta{background:#12121f}[data-theme=dark] .modal-journalist{color:#a0a0a0}[data-theme=dark] .research-modal-idea h4{color:#fff}[data-theme=dark] .research-modal-idea p{color:#b0b0b0}[data-theme=dark] .research-modal-content h5{color:#fff}[data-theme=dark] .modal-finding-item{background:#151525;border-color:#2a2a4e}[data-theme=dark] .modal-finding-text{color:#fff}[data-theme=dark] .modal-finding-source{color:gray}[data-theme=dark] .modal-data-gaps{background:#2a2a1e;border-color:#4a4a2e}[data-theme=dark] .modal-data-gaps h5{color:#fbbf24}[data-theme=dark] .modal-data-gaps li{color:#d0d0d0}[data-theme=dark] .modal-recommendation{background:#151525;border-color:#2a2a4e}[data-theme=dark] .modal-recommendation p{color:#e0e0e0}[data-theme=dark] .research-modal-actions{background:#151525}.draft-card{transition:all .2s ease}.draft-card.expanded{box-shadow:0 4px 12px #0000001a;position:relative;z-index:10}.draft-card.expanded .draft-card-content{padding:24px 28px;max-height:calc(100vh - 300px);overflow-y:auto}.draft-card.expanded .draft-story{gap:24px}.draft-card.expanded .story-header{padding-bottom:16px;border-bottom:1px solid var(--border-color)}.draft-card.expanded .story-headline{font-size:24px;line-height:1.3}.draft-card.expanded .story-subheadline{font-size:17px;margin-top:8px}.draft-card.expanded .story-body{font-size:16px;line-height:1.8}.draft-card.expanded .story-body p{font-size:16px;line-height:1.8;margin-bottom:20px}.draft-card.expanded .draft-actions{position:sticky;bottom:0;background:var(--bg-surface);padding:16px 0;margin-top:20px;border-top:1px solid var(--border-color)}.draft-card.card-approved{border-left:4px solid var(--success-color)}.draft-journalist-info{flex:1;min-width:0}.draft-journalist-info .journalist-main{display:flex;align-items:center;gap:10px;margin-bottom:4px}.draft-journalist-info .journalist-name{font-weight:600;color:var(--text-primary)}.draft-journalist-info .journalist-pub{color:var(--text-secondary);font-size:13px}.draft-idea-preview{font-size:14px;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:600px}.draft-header-right{display:flex;align-items:center;gap:12px}.expand-icon{color:var(--text-tertiary);font-size:10px}.draft-card-content{padding:20px}.draft-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border-color);flex-wrap:wrap}.draft-toolbar .btn-view-prompt{padding:8px 14px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;font-size:13px;font-weight:500;color:var(--text-primary);cursor:pointer;transition:all .15s ease}.draft-toolbar .btn-view-prompt:hover{background:var(--bg-tertiary);border-color:var(--primary-color)}.draft-meta-info{display:flex;gap:16px;font-size:13px;color:var(--text-secondary);flex-wrap:wrap}.draft-meta-info strong{color:var(--text-primary);margin-right:4px}.draft-pending{display:flex;flex-direction:column;gap:16px}.pending-info h4{font-size:13px;font-weight:600;color:var(--text-secondary);margin:0 0 8px}.pending-info .idea-text{font-size:16px;font-weight:500;color:var(--text-primary);margin:0 0 16px}.findings-preview{margin:0;padding-left:20px}.findings-preview li{font-size:14px;color:var(--text-primary);margin-bottom:6px}.findings-preview .source{color:var(--text-tertiary);font-size:12px}.btn-generate{align-self:flex-start}.draft-story{display:flex;flex-direction:column;gap:20px}.story-header{border-bottom:1px solid var(--border-color);padding-bottom:16px}.story-headline{font-size:22px;font-weight:700;color:var(--text-primary);margin:0 0 8px;line-height:1.3}.story-subheadline{font-size:16px;color:var(--text-secondary);margin:0;line-height:1.5}.story-body{padding-right:8px}.story-body p{font-size:15px;line-height:1.7;color:var(--text-primary);margin:0 0 16px}.story-body p:last-child{margin-bottom:0}.story-sources{background:var(--bg-tertiary);padding:16px;border-radius:var(--border-radius)}.story-sources h4{font-size:12px;font-weight:600;text-transform:uppercase;color:var(--text-tertiary);margin:0 0 12px}.story-sources ul{margin:0;padding:0;list-style:none}.story-sources li{margin-bottom:6px}.story-sources a{color:var(--primary-color);text-decoration:none;font-size:14px}.story-sources a:hover{text-decoration:underline}.story-meta{display:flex;gap:16px;padding-top:12px;border-top:1px solid var(--border-color)}.meta-item{font-size:12px;color:var(--text-tertiary)}.draft-actions{display:flex;gap:12px;padding-top:16px;border-top:1px solid var(--border-color)}.btn-approve{padding:10px 20px;border:none;border-radius:var(--border-radius);background:var(--success-color)!important;color:#fff!important;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s ease}.btn-approve:hover{filter:brightness(1.1);transform:translateY(-1px)}.btn-reject{padding:10px 20px;border:1px solid var(--error-color);border-radius:var(--border-radius);background:transparent;color:var(--error-color);font-size:14px;font-weight:600;cursor:pointer;transition:all .15s ease}.btn-reject:hover{background:var(--error-bg)}.draft-approved-info,.draft-rejected-info{display:flex;align-items:center;gap:16px;padding:16px;border-radius:var(--border-radius);margin-top:16px}.draft-approved-info{background:var(--success-bg)}.draft-approved-info p{margin:0;color:var(--success-color);font-weight:500}.draft-rejected-info{background:var(--error-bg)}.draft-rejected-info p{margin:0;color:var(--error-color)}.diagnostic-details{margin-top:16px;border-top:1px solid var(--border-color);padding-top:16px}.diagnostic-details summary{font-size:13px;color:var(--text-secondary);cursor:pointer;padding:8px 0}.diagnostic-details summary:hover{color:var(--text-primary)}.diagnostic-content{padding:16px;background:var(--bg-tertiary);border-radius:var(--border-radius);margin-top:8px}.diagnostic-content h5{font-size:12px;font-weight:600;text-transform:uppercase;color:var(--text-tertiary);margin:0 0 8px}.diagnostic-content p{font-size:13px;color:var(--text-secondary);margin:0 0 4px}.diagnostic-content pre{font-size:11px;background:var(--bg-primary);padding:12px;border-radius:4px;overflow-x:auto;color:var(--text-secondary);margin-top:12px}.empty-hint{color:var(--text-tertiary);font-size:13px;margin-top:4px}@media (max-width: 768px){.research-header,.drafts-header{flex-direction:column;align-items:stretch}.research-stats,.drafts-stats{justify-content:space-around}.research-actions,.drafts-filter{justify-content:stretch}.research-actions .btn-action,.research-actions .btn-secondary{flex:1}.draft-idea-preview{max-width:100%}.draft-actions{flex-direction:column}.draft-actions button{width:100%}}.prompt-details-modal{max-width:800px;width:90vw;max-height:85vh;overflow-y:auto}.prompt-meta-bar{display:flex;gap:16px;font-size:13px;color:var(--text-secondary);padding:8px 0 16px;border-bottom:1px solid var(--border-color);margin-bottom:16px;flex-wrap:wrap}.prompt-details-body details{margin-bottom:12px;border:1px solid var(--border-color);border-radius:6px;overflow:hidden}.prompt-section-title{cursor:pointer;padding:10px 14px;font-weight:500;font-size:13px;background:var(--bg-secondary);-webkit-user-select:none;user-select:none}.prompt-section-title:hover{background:var(--bg-hover, #f0f0f0)}.prompt-pre{margin:0;padding:14px;font-family:Courier New,monospace;font-size:12px;line-height:1.5;white-space:pre-wrap;word-break:break-word;background:var(--bg-primary);max-height:400px;overflow-y:auto}.prompt-text{max-height:500px}.btn-view-prompt{padding:6px 12px;font-size:13px;border:1px solid var(--border-color);border-radius:4px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:background .15s;white-space:nowrap}.btn-view-prompt:hover{background:var(--bg-secondary);color:var(--text-primary)}.prompt-chain-details{margin-top:12px;border:1px solid var(--border-color);border-radius:6px;overflow:hidden}.prompt-chain-details>summary{padding:10px 14px;cursor:pointer;font-weight:500;font-size:13px;background:var(--bg-secondary)}.prompt-chain-details>summary:hover{background:var(--bg-hover, #f0f0f0)}.prompt-chain-viewer{padding:16px;display:flex;flex-direction:column;gap:12px}.prompt-stage-card{border:1px solid var(--border-color);border-left-width:3px;border-radius:6px;overflow:hidden}.prompt-stage-header{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:var(--bg-secondary);font-weight:500;font-size:13px}.prompt-stage-meta{font-size:12px;color:var(--text-secondary);font-weight:400}.prompt-stage-empty{padding:12px 14px;color:var(--text-secondary);font-size:13px;font-style:italic}.prompt-stage-card details{border-top:1px solid var(--border-color)}.prompt-chain-totals{text-align:right;font-size:13px;font-weight:600;color:var(--text-secondary);padding-top:8px;border-top:1px solid var(--border-color)}.session-results-container{padding:20px;overflow-y:auto;flex:1}.journalist-results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.journalist-result-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:16px;display:flex;flex-direction:column;gap:12px;transition:all .2s ease}.journalist-result-card:hover{border-color:var(--accent-color, var(--primary-color));box-shadow:0 2px 8px #00000014}.result-card-header h4{margin:0 0 4px;font-size:16px;font-weight:600;color:var(--text-primary)}.result-publication{font-size:13px;color:var(--text-tertiary)}.result-card-body{flex:1;display:flex;flex-direction:column;gap:8px}.result-ideas-count{font-size:13px;font-weight:600;color:var(--text-secondary);background:var(--bg-primary);padding:6px 10px;border-radius:4px;width:fit-content}.result-top-idea{font-size:13px;color:var(--text-secondary);line-height:1.5}.result-top-idea strong{color:var(--text-primary)}.result-card-actions{display:flex;gap:8px;padding-top:8px;border-top:1px solid var(--border-color)}.prompt-cog-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-secondary);cursor:pointer;transition:all .15s ease;flex-shrink:0}.prompt-cog-btn:hover{background:var(--bg-tertiary);color:var(--primary-color);border-color:var(--primary-color)}.prompt-cog-btn svg{width:14px;height:14px}.prompt-viewer-modal{background:var(--bg-primary);border-radius:12px;width:90%;max-width:800px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.prompt-viewer-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-color);flex-shrink:0}.prompt-viewer-header h3{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.prompt-viewer-meta{display:flex;gap:12px;padding:12px 20px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);flex-shrink:0;flex-wrap:wrap}.prompt-viewer-meta .meta-tag{font-size:12px;color:var(--text-secondary);padding:4px 8px;background:var(--bg-primary);border-radius:4px}.prompt-viewer-tabs{display:flex;gap:0;padding:0 20px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);flex-shrink:0}.prompt-tab{padding:12px 20px;border:none;background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s ease}.prompt-tab:hover{color:var(--text-primary)}.prompt-tab.active{color:var(--primary-color);border-bottom-color:var(--primary-color);background:var(--bg-primary)}.prompt-viewer-content{flex:1;overflow-y:auto;padding:0}.prompt-tab-content{padding:20px}.prompt-section{margin-bottom:20px}.prompt-section:last-child{margin-bottom:0}.prompt-section h4{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary);margin:0 0 10px}.prompt-code{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;padding:14px;font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:12px;line-height:1.6;color:var(--text-primary);overflow-x:auto;white-space:pre-wrap;word-break:break-word;margin:0;max-height:400px;overflow-y:auto}.prompt-code.prompt-text{white-space:pre-wrap;font-family:inherit;font-size:13px;line-height:1.7}.prompt-empty{text-align:center;padding:40px 20px;color:var(--text-tertiary)}.prompt-empty p{margin:0 0 8px}.prompt-empty-hint{font-size:13px}*{margin:0;padding:0;box-sizing:border-box}html{height:100%;transition:background-color var(--transition-base),color var(--transition-base)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100%;transition:background-color var(--transition-base),color var(--transition-base)}#root{height:100vh;width:100vw;overflow:hidden}.app{display:flex;height:100%;width:100%;overflow:hidden;zoom:.8}.main-content{flex:1 1 0;height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-primary)}.page-content{padding:var(--spacing-xl)}.page-content h1{color:var(--text-primary);font-size:2rem;font-weight:600;margin-bottom:var(--spacing-lg)}.page-content p{color:var(--text-secondary);font-size:1rem;line-height:1.6}.no-project-selected{text-align:center;padding:var(--spacing-xl);background:var(--bg-surface);border-radius:var(--border-radius);border:1px solid var(--border-color);margin-top:var(--spacing-xl)}.no-project-selected h2{color:var(--text-primary);font-size:1.5rem;margin-bottom:var(--spacing-md)}.no-project-selected p{color:var(--text-secondary)}.loading-spinner{display:inline-block;width:20px;height:20px;border:2px solid var(--border-color);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.text-center{text-align:center}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.mobile-menu-btn{display:none;position:fixed;top:var(--spacing-md);left:var(--spacing-md);z-index:998;background:var(--btn-primary-bg);border:none;border-radius:var(--border-radius);padding:var(--spacing-sm);cursor:pointer;box-shadow:var(--shadow-md);transition:all var(--transition-fast)}.mobile-menu-btn:hover{background:var(--btn-primary-hover);transform:scale(1.05)}.mobile-menu-btn:active{transform:scale(.95)}.hamburger-icon{display:flex;flex-direction:column;gap:4px;width:24px;height:18px}.hamburger-icon span{display:block;width:100%;height:3px;background:white;border-radius:2px;transition:all var(--transition-fast)}@media (max-width: 768px){.app{flex-direction:column}.mobile-menu-btn{display:block}.main-content{width:100%}.page-content{padding:var(--spacing-md);padding-top:calc(var(--spacing-md) + 50px)}.page-content h1{font-size:1.5rem}}.dashboard-container{display:flex;flex-direction:column;height:100%;overflow:hidden}.dashboard-header{padding:var(--spacing-xl);padding-bottom:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px}.dashboard-header>div:first-child{justify-self:start}.dashboard-header h1{margin:0;font-size:2rem;font-weight:600;color:var(--text-primary)}.dashboard-header p{margin:4px 0 0;font-size:1rem;color:var(--text-secondary)}.dashboard-content{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.dashboard-view-toggle{flex-shrink:0;justify-self:center;width:fit-content;display:flex;gap:0;border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.dashboard-view-btn{padding:12px 28px;font-size:15px;font-weight:600;border:none;background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.dashboard-view-btn:first-child{border-right:1px solid var(--border-color)}.dashboard-view-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.dashboard-view-btn.active{background:#000000;color:#fff}[data-theme=dark] .dashboard-view-btn.active{background:#ffffff;color:#000}@media (max-width: 768px){.dashboard-container{overflow-y:auto}.dashboard-content{overflow:visible;flex:none}.dashboard-header{grid-template-columns:1fr;gap:12px;text-align:center;padding:var(--spacing-md);padding-bottom:0}.dashboard-header>div:first-child{justify-self:center}.dashboard-view-toggle{justify-self:center}}.dashboard-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;padding:var(--spacing-xl);align-content:start}.dashboard-btn{padding:32px 24px;font-size:16px;font-weight:500;height:auto;width:100%;min-height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border-radius:12px;border:none;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease;box-shadow:0 2px 8px #0000001a}.dashboard-btn:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00000026}.dashboard-btn:active{transform:translateY(0)}.dashboard-btn-1,.dashboard-btn-2,.dashboard-btn-3,.dashboard-btn-4{background:var(--bg-surface);color:var(--text-primary);border:2px solid var(--border-color)}.dashboard-btn-1:hover,.dashboard-btn-2:hover,.dashboard-btn-3:hover,.dashboard-btn-4:hover{background:var(--bg-hover);border-color:var(--text-secondary)}.dashboard-btn-icon{font-size:32px;line-height:1}.dashboard-btn-label{font-size:16px;font-weight:500;line-height:1.2}@media (max-width: 768px){.dashboard-header{padding:var(--spacing-md);padding-bottom:0}.dashboard-actions{grid-template-columns:1fr;gap:16px;padding:var(--spacing-md)}.dashboard-btn{min-height:100px;padding:24px 20px;font-size:15px}.dashboard-btn-icon{font-size:28px}.dashboard-btn-label{font-size:15px}}.leaderboard-container{margin:var(--spacing-xl);margin-top:0;margin-bottom:var(--spacing-xl);background:var(--bg-surface);border-radius:12px;border:1px solid var(--border-color);overflow:hidden}.leaderboard-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color);background:var(--bg-primary)}.leaderboard-header h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.leaderboard-period{font-size:.875rem;color:var(--text-secondary);font-weight:500}.leaderboard-loading,.leaderboard-error,.leaderboard-empty{padding:var(--spacing-xl);text-align:center;color:var(--text-secondary)}.leaderboard-error{color:var(--color-danger)}.leaderboard-list{display:flex;flex-direction:column}.leaderboard-entry{border-bottom:1px solid var(--border-color)}.leaderboard-entry:last-child{border-bottom:none}.leaderboard-entry-main{display:flex;align-items:center;padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;transition:background-color var(--transition-fast)}.leaderboard-entry-main:hover{background:var(--bg-hover)}.leaderboard-rank{width:48px;flex-shrink:0}.rank-medal{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#ffd700,#ffb300);color:#5d4e00;font-weight:700;font-size:.75rem;box-shadow:0 2px 4px #00000026}.rank-medal.silver{background:linear-gradient(135deg,#e8e8e8,#c0c0c0);color:#4a4a4a}.rank-medal.bronze{background:linear-gradient(135deg,#cd7f32,#a0522d);color:#fff}.rank-number{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--bg-tertiary);color:var(--text-secondary);font-weight:600;font-size:.875rem}.leaderboard-user{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.user-name{font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-stats{font-size:.75rem;color:var(--text-secondary)}.leaderboard-points{display:flex;align-items:baseline;gap:4px;margin-right:var(--spacing-md)}.points-value{font-size:1.25rem;font-weight:700;color:var(--color-primary)}.points-label{font-size:.75rem;color:var(--text-secondary)}.expand-icon{color:var(--text-secondary);font-size:.75rem;transition:transform var(--transition-fast)}.expand-icon.expanded{transform:rotate(180deg)}.leaderboard-breakdown{background:var(--bg-secondary);padding:var(--spacing-sm) var(--spacing-lg);padding-left:calc(var(--spacing-lg) + 48px)}.breakdown-item{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) 0;font-size:.875rem;border-bottom:1px solid var(--border-color-light)}.breakdown-item:last-child{border-bottom:none}.breakdown-client{flex:1;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.breakdown-multiplier{color:var(--text-secondary);font-size:.75rem;background:var(--bg-tertiary);padding:2px 10px;border-radius:9999px}.breakdown-links{color:var(--text-secondary);min-width:60px;text-align:right}.breakdown-points{color:var(--color-primary);font-weight:600;min-width:60px;text-align:right}.breakdown-details{display:flex;align-items:center;width:260px;min-width:260px;font-size:.7rem;white-space:nowrap;border-radius:4px;overflow:hidden;border:1px solid var(--border-color)}.payout-col{text-align:center;padding:4px 6px}.payout-start,.payout-mid{width:33.33%;border-right:1px solid var(--border-color)}.payout-end{width:33.33%}.payout-col.unlocked{background:#22c55e;color:#fff}.payout-col.locked{background:var(--bg-tertiary);color:var(--text-secondary)}.payout-separator{color:var(--text-tertiary);opacity:.5;margin:0 4px}.breakdown-links{color:var(--text-tertiary);font-size:.7rem;white-space:nowrap}@media (max-width: 768px){.leaderboard-container{margin:var(--spacing-md);margin-top:0}.leaderboard-header{padding:var(--spacing-md)}.leaderboard-header h2{font-size:1.1rem}.leaderboard-entry-main{padding:var(--spacing-sm) var(--spacing-md)}.leaderboard-rank{width:40px}.rank-medal,.rank-number{width:32px;height:32px;font-size:.7rem}.points-value{font-size:1.1rem}.leaderboard-breakdown{padding-left:calc(var(--spacing-md) + 40px)}.breakdown-item{flex-wrap:wrap;gap:var(--spacing-sm)}.breakdown-client{width:100%;flex:none}.breakdown-details{width:100%;flex:none;justify-content:flex-start}.breakdown-links,.breakdown-points{min-width:auto}}.dashboard-accordion{display:flex;flex-direction:column;gap:0;margin:0 var(--spacing-xl);margin-bottom:var(--spacing-xl);flex:1;min-height:0;overflow:hidden}.dashboard-section{background:var(--bg-surface);border:1px solid var(--border-color);overflow:hidden;display:flex;flex-direction:column;min-height:0}.dashboard-section:first-child{border-radius:12px 12px 0 0}.dashboard-section:last-child{border-radius:0 0 12px 12px;border-top:none}.dashboard-section.expanded{flex:1}.dashboard-section.collapsed{flex-shrink:0}.dashboard-section-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;background:var(--bg-primary);transition:background-color var(--transition-fast);-webkit-user-select:none;user-select:none}.dashboard-section-header:hover{background:var(--bg-hover)}.dashboard-section-header h2{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.section-header-right{display:flex;align-items:center;gap:var(--spacing-md)}.section-toggle{color:var(--text-secondary);font-size:.75rem;transition:transform var(--transition-fast)}.leaderboard-period-collapsed{font-size:.8rem;color:var(--text-secondary)}.leaderboard-period-header{display:flex;justify-content:flex-end;padding:8px 12px;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.leaderboard-month-select{padding:6px 12px;font-size:13px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-surface);color:var(--text-primary);cursor:pointer;min-width:160px}.leaderboard-month-select:hover{border-color:var(--border-hover)}.leaderboard-month-select:focus{outline:none;border-color:var(--accent-primary)}.dashboard-section-content{border-top:1px solid var(--border-color);flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.section-loading,.section-error{padding:var(--spacing-xl);text-align:center;color:var(--text-secondary)}.section-error{color:var(--color-danger)}.tasks-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);padding:var(--spacing-lg);flex-shrink:0}.metric-card{background:var(--bg-secondary);border-radius:8px;padding:var(--spacing-md);text-align:center;border:1px solid var(--border-color);transition:all var(--transition-fast)}.metric-card.clickable{cursor:pointer}.metric-card.clickable:hover{background:var(--bg-hover);border-color:var(--text-secondary);transform:translateY(-1px)}.metric-value{font-size:1.75rem;font-weight:700;color:var(--text-primary);line-height:1.2}.metric-done{color:var(--color-primary)}.metric-separator{color:var(--text-secondary);margin:0 2px}.metric-total{color:var(--text-secondary)}.metric-label{font-size:.8rem;color:var(--text-secondary);margin-top:var(--spacing-xs)}.metric-progress{height:4px;background:var(--bg-tertiary);border-radius:2px;margin-top:var(--spacing-sm);overflow:hidden}.metric-progress-bar{height:100%;background:var(--color-primary);border-radius:2px;transition:width .3s ease}.campaigns-attention-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--border-color);flex:1;min-height:0;overflow:hidden}.campaign-table-section{background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-color);display:flex;flex-direction:column;min-height:0;overflow:hidden}.campaign-table-section h3{margin:0;padding:var(--spacing-sm) var(--spacing-md);font-size:.85rem;font-weight:600;border-bottom:1px solid var(--border-color)}.campaign-table-section.critical h3{background:rgba(220,38,38,.1);color:#dc2626}.campaign-table-section.urgent h3{background:rgba(245,158,11,.1);color:#b45309}[data-theme=dark] .campaign-table-section.critical h3{background:rgba(239,68,68,.2);color:#f87171}[data-theme=dark] .campaign-table-section.urgent h3{background:rgba(251,191,36,.2);color:#fbbf24}.campaign-table{width:100%;border-collapse:collapse;font-size:.8rem;table-layout:fixed;display:flex;flex-direction:column;flex:1;min-height:0}.campaign-table thead{background:var(--bg-tertiary);flex-shrink:0}.campaign-table thead{display:block;padding-right:8px}.campaign-table thead tr{display:table;width:100%;table-layout:fixed}.campaign-table tbody{flex:1;overflow-y:auto;display:block}.campaign-table tbody tr{display:table;width:100%;table-layout:fixed}.campaign-table th{padding:var(--spacing-xs) var(--spacing-sm);text-align:left;font-weight:600;color:var(--text-secondary);font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid var(--border-color)}.campaign-table colgroup .col-campaign{width:40%}.campaign-table colgroup .col-date{width:15%}.campaign-table colgroup .col-links{width:12%}.campaign-table colgroup .col-responsible{width:18%}.campaign-table th.col-campaign,.campaign-table td.col-campaign{width:40%;min-width:40%}.campaign-table th.col-date,.campaign-table td.col-date{width:15%;min-width:70px;text-align:center}.campaign-table th.col-links,.campaign-table td.col-links{width:12%;min-width:50px;text-align:center}.campaign-table th.col-responsible,.campaign-table td.col-responsible{width:18%;min-width:80px;text-align:center}.campaign-table tbody tr{transition:background-color var(--transition-fast)}.campaign-table td{padding:var(--spacing-xs) var(--spacing-sm);color:var(--text-primary);border-bottom:1px solid var(--border-color-light);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.campaign-table tbody tr:last-child td{border-bottom:none}.campaign-link{color:var(--text-primary);text-decoration:none;font-weight:500}.campaign-link:hover{color:var(--color-primary);text-decoration:underline}[data-theme=dark] .campaign-table td,[data-theme=dark] .campaign-link{color:var(--text-primary)}[data-theme=dark] .campaign-link:hover{color:var(--color-primary-light, #60a5fa)}.campaign-table-empty{padding:var(--spacing-lg);text-align:center;color:var(--text-secondary);font-size:.85rem}.campaign-meta{margin-top:4px}.meta-dates{font-size:.75rem;color:var(--text-secondary)}.campaign-table th.col-progress,.campaign-table td.col-progress{width:55%;min-width:300px;white-space:normal;overflow:visible}.progress-option{padding:8px 0;width:100%}.progress-label{font-size:.7rem;color:var(--text-secondary);margin-bottom:6px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.bar-track{height:8px;background:var(--bg-tertiary, #e5e7eb);border-radius:4px;position:relative;overflow:visible}.bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.dual-bar-container{display:flex;flex-direction:column;gap:4px}.dual-bar-row{display:flex;align-items:center;gap:8px}.dual-bar-row .bar-label{font-size:.65rem;color:var(--text-secondary);width:50px;text-align:right}.dual-bar-row .bar-track{flex:1;height:6px}.dual-bar-row .bar-value{font-size:.7rem;color:var(--text-primary);width:45px;font-weight:500}.dual-bar-row .bar-fill.expected{background:var(--bg-quaternary, #9ca3af)}.marker-bar-container{width:100%}.marker-bar-container .bar-track{height:12px;margin-bottom:6px;margin-right:5px;transform:translateZ(0);backface-visibility:hidden}.status-text{font-size:.75rem;font-weight:600;text-align:right}.status-text.ahead{color:#10b981}.status-text.complete{color:var(--text-primary)}.status-text.behind{color:#f59e0b}.status-text.critical{color:#ef4444}.times-up{color:#ef4444;font-weight:600}.target-marker{position:absolute;top:-4px;transform:translate(-50%) translateZ(0);z-index:10;backface-visibility:hidden;will-change:transform}.marker-line{width:2px;height:20px;background:var(--text-primary)}.marker-label{font-size:.6rem;color:var(--text-secondary);position:absolute;top:-14px;left:50%;transform:translate(-50%);white-space:nowrap}.bar-info{display:grid;grid-template-columns:70px 1fr 70px;align-items:center;font-size:.75rem;width:100%;gap:10px}.days-remaining{text-align:center;display:inline-flex;align-items:center;gap:4px}.days-info-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;font-size:10px;font-weight:600;font-style:italic;color:var(--text-secondary);background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:50%;cursor:pointer;transition:all .15s ease}.days-info-icon:hover{background:var(--bg-hover);color:var(--text-primary)}.days-info-wrapper{position:relative;display:inline-flex;align-items:center}.days-info-tooltip{position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%);background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-color);border-radius:4px;padding:4px 8px;font-size:11px;font-style:normal;white-space:nowrap;box-shadow:0 2px 8px #00000026;z-index:100}.days-info-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--border-color)}.bullet-chart{position:relative;height:24px}.bullet-ranges{display:flex;height:20px;border-radius:3px;overflow:hidden}.bullet-ranges .range{height:100%}.bullet-ranges .range.poor{background:rgba(239,68,68,.15)}.bullet-ranges .range.ok{background:rgba(245,158,11,.15)}.bullet-ranges .range.good{background:rgba(16,185,129,.15)}.bullet-bar{position:absolute;top:6px;left:0;height:8px;border-radius:2px;z-index:2}.bullet-target{position:absolute;top:2px;width:3px;height:16px;background:var(--text-primary);z-index:3;transform:translate(-50%)}.bullet-info{margin-top:4px;font-size:.75rem;display:flex;gap:2px;align-items:baseline}.bullet-actual{font-weight:600;color:var(--text-primary)}.bullet-sep{color:var(--text-tertiary)}.bullet-target-val{color:var(--text-secondary)}.bullet-goal{color:var(--text-tertiary);font-size:.7rem}.overlap-bar-container .bar-track{height:16px;position:relative}.overlap-bar-container .bar-fill{position:absolute;top:0;left:0;height:100%}.overlap-bar-container .bar-fill.expected-bg{background:rgba(156,163,175,.3);z-index:1}.overlap-bar-container .bar-fill.actual-overlay{z-index:2;opacity:.9}.overlap-legend{display:flex;gap:12px;margin-top:6px;font-size:.7rem;color:var(--text-secondary)}.legend-item{display:flex;align-items:center;gap:4px}.legend-dot{width:8px;height:8px;border-radius:2px}.legend-dot.actual{background:var(--color-primary)}.legend-dot.expected{background:rgba(156,163,175,.5)}.compact-progress{display:flex;align-items:center;gap:12px}.compact-bar{flex:1;min-width:100px}.compact-bar .bar-track{height:10px}.time-indicator{position:absolute;top:-2px;width:2px;height:14px;background:rgba(0,0,0,.5);transform:translate(-50%);z-index:5}.time-indicator:after{content:"";position:absolute;top:-3px;left:-3px;width:8px;height:8px;background:var(--text-primary);border-radius:50%}.compact-stats{display:flex;gap:10px;align-items:baseline;font-size:.8rem}.stat-links{font-weight:600;color:var(--text-primary)}.stat-dim{font-weight:400;color:var(--text-tertiary)}.stat-diff{font-weight:500;font-size:.75rem}.stat-diff.positive{color:#10b981}.stat-diff.negative{color:#ef4444}.stat-days{color:var(--text-secondary);font-size:.7rem}[data-theme=dark] .bar-track{background:var(--bg-tertiary, #374151)}[data-theme=dark] .marker-line,[data-theme=dark] .bullet-target{background:var(--text-primary)}[data-theme=dark] .time-indicator{background:rgba(255,255,255,.5)}[data-theme=dark] .time-indicator:after{background:var(--text-primary)}@media (max-width: 768px){.dashboard-accordion{margin:0 var(--spacing-md);margin-bottom:var(--spacing-md)}.tasks-metrics{grid-template-columns:1fr;gap:var(--spacing-sm);padding:var(--spacing-md)}.metric-value{font-size:1.5rem}.campaigns-attention-grid{grid-template-columns:1fr;padding:var(--spacing-md)}.campaign-table td{max-width:80px;font-size:.75rem}.campaign-table th{font-size:.7rem}}.add-domain-form{display:flex;flex-direction:column;gap:2rem}.form-section{display:flex;flex-direction:column;gap:1rem;width:100%}.form-section-header{display:flex;align-items:flex-start;gap:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color);width:100%}.form-section-header>div:last-child{flex:1}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;width:100%}.form-group{display:flex;flex-direction:column;gap:.5rem;width:100%;min-width:0}.form-input,.form-select{padding:.75rem;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-surface);color:var(--text-primary);font-size:.875rem;transition:all .2s ease}.form-input:focus,.form-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-input:disabled,.form-select:disabled{opacity:.6;cursor:not-allowed}.form-select{cursor:pointer}.media-groups-loading{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:2rem;background:var(--bg-tertiary);border:1px dashed var(--border-color);border-radius:6px;color:var(--text-secondary);font-size:.875rem}.create-media-group-btn{margin-top:.5rem;align-self:flex-start}.input-with-action{display:flex;gap:.5rem;align-items:flex-start}.input-with-action .form-input{flex:1}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color);width:100%}.reactivate-prompt{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1.5rem;gap:1rem}.reactivate-icon{font-size:3rem;line-height:1}.reactivate-prompt h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.reactivate-prompt p{margin:0;font-size:.9375rem;color:var(--text-secondary);line-height:1.5}.reactivate-prompt p strong{color:var(--text-primary)}.reactivate-question{margin-top:.5rem;color:var(--text-primary)!important}.reactivate-actions{display:flex;gap:.75rem;margin-top:1rem}.db-stats{display:flex;flex-direction:column;gap:1.5rem}.summary-cards-container{display:flex;flex-direction:column;gap:1rem;flex-shrink:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;box-shadow:0 1px 3px #0000000d}.stats-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none;padding:.75rem 1rem;margin:-.5rem -.5rem .5rem;border-radius:12px;transition:all .2s ease;background:var(--bg-base);border:1px solid transparent}.stats-header:hover{background:var(--bg-hover);border-color:var(--border-color);transform:translateY(-1px);box-shadow:0 2px 8px #0000000d}.stats-title{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.stats-title:before{content:"📊";font-size:1.25rem}.collapse-icon{font-size:1rem;color:var(--text-secondary);transition:transform .3s ease;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;background:var(--bg-surface)}.summary-cards-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.summary-card{transition:all .3s ease;border-radius:12px;border:1px solid var(--border-color);background:var(--bg-base);box-shadow:0 1px 3px #0000000d;position:relative;overflow:hidden;height:100%;display:flex;flex-direction:column}.summary-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary));opacity:0;transition:opacity .3s ease}.summary-card:hover{background:var(--bg-hover);border-color:var(--color-primary);transform:translate(2px)}.summary-card:hover:before{opacity:0}.highlight-card{background:var(--bg-base);border-color:var(--border-color)}.highlight-card:before{opacity:0}.highlight-card:hover{background:var(--bg-hover);border-color:var(--color-primary);transform:translate(2px)}.highlight-card:hover:before{opacity:0}.stat-content{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:.875rem .75rem;flex:1}.stat-label{font-size:.75rem;color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.75px;text-align:center;line-height:1.4}.stat-value{font-size:2rem;font-weight:700;color:var(--text-primary);line-height:1;font-variant-numeric:tabular-nums}.stat-highlight{color:var(--color-primary);text-shadow:0 0 20px rgba(59,130,246,.2)}.stat-value-with-total{display:flex;flex-direction:column;align-items:center;gap:.5rem}.stat-value-main{font-size:1.875rem;font-weight:700;color:var(--text-primary);line-height:1;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.stat-value-secondary{font-size:.875rem;font-weight:600;color:var(--text-secondary);padding:.25rem .625rem;background:var(--bg-surface);border-radius:16px;border:1px solid var(--border-color)}.stat-multi{display:flex;flex-direction:column;gap:.5rem;width:100%}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:.625rem .875rem;background:var(--bg-surface);border-radius:8px;border:1px solid var(--border-color);transition:all .2s ease}.stat-row:hover{background:var(--bg-hover);border-color:var(--color-primary);transform:translate(2px)}.stat-row-label{font-size:.8rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.stat-row-value{font-size:1.125rem;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.stat-percentage,.stat-comparison{font-size:.8rem;color:var(--text-muted);margin-left:.5rem;font-weight:500}.controls-card{padding:.75rem!important;flex-shrink:0}.db-stats-controls{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}.search-container{position:relative;flex:1;min-width:250px;max-width:450px;display:flex;align-items:center}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);font-size:1.125rem;pointer-events:none;opacity:.5}.search-input{width:100%;padding:.875rem 3rem .875rem 2.75rem;border:2px solid var(--border-color);border-radius:12px;font-size:.9375rem;background:var(--bg-primary);color:var(--text-primary);transition:all .2s ease;position:relative;z-index:0}.search-input::placeholder{color:var(--text-muted)}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 4px #3b82f61a;background:var(--bg-surface)}.clear-search-btn{position:absolute;right:.75rem;background:var(--bg-hover);border:none;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary);font-size:1rem;transition:all .2s ease}.clear-search-btn:hover{background:var(--border-color);color:var(--text-primary)}.controls-right{display:flex;gap:1rem;align-items:center;margin-left:auto}.domain-count-display{display:flex;align-items:center;gap:.375rem;font-size:.875rem;font-weight:500;white-space:nowrap}.domain-count-filtered{color:var(--color-primary);font-weight:600}.domain-count-separator{color:var(--text-tertiary)}.domain-count-total{color:var(--text-secondary)}.items-per-page-select{padding:.625rem .875rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-surface);color:var(--text-primary);font-size:.875rem;cursor:pointer;transition:all .2s ease}.items-per-page-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #3b82f61a}.table-card-wrapper{display:flex;flex-direction:column}.table-card{overflow:hidden;display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px}.table-responsive{max-height:600px;overflow-y:auto;overflow-x:auto}.db-stats-table{width:100%;border-collapse:collapse;table-layout:fixed;min-width:1200px}.db-stats-table thead{background:var(--bg-hover);border-bottom:2px solid var(--border-color);position:sticky;top:0;z-index:10}.db-stats-table th{padding:1rem 1.25rem;text-align:left;font-size:.8125rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.db-stats-table th:nth-child(1),.db-stats-table td:nth-child(1){width:16%}.db-stats-table th:nth-child(2),.db-stats-table td:nth-child(2){width:20%}.db-stats-table th:nth-child(3),.db-stats-table td:nth-child(3){width:10%}.db-stats-table th:nth-child(4),.db-stats-table td:nth-child(4){width:8%}.db-stats-table th:nth-child(5),.db-stats-table td:nth-child(5){width:10%}.db-stats-table th:nth-child(6),.db-stats-table td:nth-child(6){width:11%}.db-stats-table th:nth-child(7),.db-stats-table td:nth-child(7){width:11%}.db-stats-table th:nth-child(8),.db-stats-table td:nth-child(8){width:12%}.db-stats-table th.text-right{text-align:right}.sortable-header{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease;position:relative}.sortable-header:hover{color:var(--text-primary);background:var(--bg-hover)}.sortable-header:active{background:var(--bg-surface)}.sort-arrow{display:inline-block;margin-left:6px;font-size:14px;color:var(--primary);font-weight:700;opacity:.6;transition:all .2s ease;vertical-align:middle}.sortable-header:hover .sort-arrow{color:var(--primary);opacity:1;transform:scale(1.2)}.db-stats-table tbody tr{border-bottom:1px solid var(--border-color);transition:background-color .2s ease}.db-stats-table tbody tr:hover{background:var(--bg-hover)}.db-stats-table td{padding:1rem 1.25rem;font-size:.9375rem;color:var(--text-primary);vertical-align:middle}.publication-cell{font-weight:600;color:var(--text-primary)}.domain-cell{color:var(--text-secondary)}.domain-cell span[style*="cursor: pointer"]{color:var(--color-primary);font-weight:500;transition:all .2s ease;padding:.25rem .5rem;border-radius:4px;display:inline-block}.domain-cell span[style*="cursor: pointer"]:hover{color:var(--color-primary-dark);background:var(--bg-hover);text-decoration:underline}.domain-link{color:var(--color-primary);text-decoration:none;transition:all .2s ease;font-weight:500}.domain-link:hover{color:var(--color-primary-dark);text-decoration:underline}.text-right{text-align:right}.number-cell{font-variant-numeric:tabular-nums;font-weight:500}.highlight-number{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .5rem;background:var(--color-success-light, rgba(34, 197, 94, .1));color:var(--color-success);border-radius:4px;font-weight:600}.zero-badge{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .5rem;background:var(--bg-hover);color:var(--text-muted);border-radius:4px;font-weight:500}.da-score{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .625rem;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-color);border-radius:6px;font-weight:600;font-size:.875rem;min-width:2.5rem}.traffic-estimate{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .625rem;background:var(--bg-surface);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:6px;font-weight:600;font-size:.875rem;min-width:3rem}.no-data{text-align:center!important;padding:4rem 2rem;width:100%!important}.db-stats-table tbody tr:has(td[colspan]){display:table-row}.db-stats-table td[colspan]{display:table-cell!important;text-align:center!important;width:100%!important;max-width:none!important}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;width:100%;margin:0 auto}.empty-state h3{margin:0;color:var(--text-primary);font-size:1.25rem;font-weight:600;text-align:center}.empty-state p{margin:0;color:var(--text-secondary);font-size:.9375rem;text-align:center}.pagination-card{padding:.75rem 1.25rem!important;flex-shrink:0}.footer-info{color:var(--text-secondary);font-size:.875rem;font-weight:500;flex-shrink:0}.pagination-controls{display:flex;align-items:center;gap:1rem;margin-left:auto}.pagination{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.pagination-btn{min-width:100px}.pagination-pages{display:flex;align-items:center;gap:.375rem}.pagination-page{min-width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-primary);border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.pagination-page:hover:not(.active){background:var(--bg-hover);border-color:var(--color-primary);color:var(--color-primary)}.pagination-page.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);cursor:default}.pagination-ellipsis{padding:0 .25rem;color:var(--text-muted);-webkit-user-select:none;user-select:none}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;min-height:400px}.spinner{width:48px;height:48px;border:4px solid var(--border-color);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1.5rem}.loading-state p{color:var(--text-secondary);font-size:1rem}.error-state p{color:var(--color-danger);margin-bottom:1.5rem;font-size:1rem}@media (max-width: 1024px){.summary-cards-row{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.db-stats{gap:1rem}.summary-cards-row{grid-template-columns:1fr;gap:.5rem}.stat-value{font-size:1.5rem}.stat-label{font-size:.7rem}.db-stats-controls{flex-direction:column;width:100%}.search-container{width:100%;min-width:100%}.controls-right{width:100%;justify-content:stretch}.items-per-page-select{flex:1}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}.db-stats-table{min-width:650px}.db-stats-table th,.db-stats-table td{padding:.75rem .875rem;font-size:.875rem}.db-stats-table th{font-size:.75rem}.stat-label{font-size:.8125rem}.pagination{gap:.375rem}.pagination-btn{min-width:80px;font-size:.8125rem}.pagination-page{min-width:32px;height:32px;font-size:.8125rem}}@media (max-width: 480px){.stat-value{font-size:1.75rem}.db-stats-table{min-width:550px}.db-stats-table th,.db-stats-table td{padding:.625rem .75rem;font-size:.8125rem}.highlight-number{padding:.2rem .4rem;font-size:.8125rem}}.process-method-cell{padding:.75rem 1.25rem;vertical-align:middle;text-align:center}.process-badge{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;padding:.375rem .875rem;border-radius:16px;font-size:.75rem;font-weight:600;letter-spacing:.3px;text-transform:uppercase;min-width:80px;transition:all .2s ease;box-shadow:0 1px 2px #0000000d}.process-badge:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor}.process-badge.process-rss{background:var(--color-success-light);color:var(--color-success-dark);border:1px solid var(--color-success)}.process-badge.process-spider{background:var(--color-primary-light);color:var(--color-primary-dark);border:1px solid var(--color-primary)}.process-badge.process-sitemap{background:var(--color-warning-light);color:var(--color-warning-dark);border:1px solid var(--color-warning)}.actions-header{width:80px;text-align:center;padding:.75rem}.actions-cell{width:80px;text-align:center;padding:.5rem;vertical-align:middle}.crawler-action-wrapper{position:relative;display:flex;flex-direction:column;align-items:flex-end}.crawler-action-button{background:var(--bg-surface);border:1.5px solid var(--border-color);border-radius:6px;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;font-size:1.125rem;padding:0;box-shadow:0 1px 2px #0000000d}.crawler-action-button:hover:not(:disabled){background:var(--bg-hover);border-color:var(--color-primary);border-width:1.5px;transform:translateY(-2px) scale(1.05);box-shadow:0 4px 8px #0000001f}.crawler-action-button:active:not(:disabled){transform:translateY(0) scale(1);box-shadow:0 1px 2px #0000000d}.crawler-action-button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.crawler-action-menu-fixed{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 6px 16px #00000026,0 2px 4px #0000001a;min-width:150px;overflow:hidden;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.crawler-action-menu-item{padding:.75rem 1rem;cursor:pointer;transition:all .15s ease;font-size:.875rem;font-weight:500;color:var(--text-primary);white-space:nowrap;text-align:left;display:flex;align-items:center;gap:.5rem}.crawler-action-menu-item:hover{background-color:var(--bg-hover);padding-left:1.125rem}.crawler-action-menu-item:active{background-color:var(--bg-active)}.crawler-action-menu-item:not(:last-child){border-bottom:1px solid var(--border-color)}.status-cell{font-size:.75rem;min-width:120px;max-width:150px}.crawler-status-container{display:flex;flex-direction:column;align-items:flex-end;gap:.375rem;margin-top:.375rem;min-width:160px}.crawler-fallback-sequence{display:flex;align-items:center;gap:.25rem;font-size:.625rem;font-weight:500;padding:.1875rem .375rem;background:var(--bg-base);border:1px solid var(--border-color);border-radius:4px}.method-step{color:var(--text-tertiary);opacity:.5;transition:all .3s ease;text-transform:uppercase;letter-spacing:.02em;font-size:.5625rem}.method-step.active{opacity:1;font-weight:600}.method-step.active.trying{color:var(--color-info)}.method-step.active.success,.method-step.active.completed{color:var(--color-success)}.method-step.active.failed{color:var(--color-warning)}.method-arrow{color:var(--text-tertiary);opacity:.3;font-size:.5625rem}.crawler-status-message{display:flex;align-items:center;font-size:.6875rem;font-weight:500;padding:.25rem .5rem;border-radius:4px;border:1px solid;transition:all .3s ease}.crawler-status-message.trying{background:rgba(59,130,246,.08);border-color:#3b82f633;color:var(--color-info)}.crawler-status-message.success,.crawler-status-message.completed{background:rgba(34,197,94,.08);border-color:#22c55e33;color:var(--color-success)}.crawler-status-message.failed{background:rgba(239,68,68,.08);border-color:#ef444433;color:var(--color-error)}.crawler-status-message .status-text{white-space:nowrap;font-weight:500}.spinner{display:inline-block;animation:spin 2s linear infinite}.articles-tab{display:flex;flex-direction:column;gap:1rem}.articles-controls{display:flex;align-items:center;gap:1rem;justify-content:space-between}.articles-table{width:100%;border-collapse:collapse}.articles-table thead{background:var(--bg-tertiary);border-bottom:2px solid var(--border-color)}.articles-table th{text-align:left;padding:.75rem 1rem;font-weight:600;font-size:.875rem;color:var(--text-secondary);white-space:nowrap}.articles-table th:nth-child(1):not([colspan]){width:45%}.articles-table th:nth-child(2):not([colspan]){width:35%}.articles-table th:nth-child(3):not([colspan]){width:20%}.articles-table td:nth-child(1):not([colspan]){width:45%}.articles-table td:nth-child(2):not([colspan]){width:35%}.articles-table td:nth-child(3):not([colspan]){width:20%}.articles-table tbody tr{border-bottom:1px solid var(--border-color);transition:background-color .15s ease}.articles-table tbody tr:hover{background:var(--bg-secondary)}.articles-table tbody tr:last-child{border-bottom:none}.articles-table td{padding:.75rem 1rem;font-size:.875rem;color:var(--text-primary);text-align:left}.articles-table td[colspan]{text-align:center!important;width:100%!important}.articles-table .no-data{width:100%!important;display:table-cell!important}.title-cell{max-width:400px}.article-link{color:var(--color-primary);text-decoration:none;transition:all .2s ease;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.article-link:hover{color:var(--color-primary-dark);text-decoration:underline}.journalist-cell{max-width:300px;text-align:left;vertical-align:top}.table-journalists{display:flex;flex-direction:column;gap:.25rem}.table-journalist-row{line-height:1.4}.article-journalist-link{color:var(--color-primary);cursor:pointer;font-weight:500}.article-journalist-link:hover{color:var(--color-primary-dark);text-decoration:underline}.no-journalist{color:var(--text-secondary)}.journalist-email{font-size:.875rem;color:var(--color-primary);text-decoration:none;transition:all .2s ease}.journalist-email:hover{color:var(--color-primary-dark);text-decoration:underline}.email-cell{max-width:250px}.status-cell{text-align:center}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:500;text-transform:capitalize}.status-validated{background:var(--color-success-light);color:var(--color-success-dark)}.status-cleaned{background:var(--color-info-light);color:var(--color-info-dark)}.articles-table tbody tr td.no-data{text-align:center!important}.actions-cell{width:60px;text-align:center}.action-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;padding:.5rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s ease;color:var(--text-secondary)}.action-btn:hover{background:var(--bg-secondary);border-color:var(--color-danger);color:var(--color-danger);transform:translateY(-1px)}.action-btn:active{transform:translateY(0)}.action-btn svg{display:block}.add-url-form{display:flex;flex-direction:column;gap:2rem}.form-section{display:flex;flex-direction:column;gap:1rem}.form-section-header{display:flex;align-items:flex-start;gap:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.section-icon{font-size:1.5rem;line-height:1}.form-section-header h4{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary)}.form-section-header p{margin:.25rem 0 0;font-size:.8125rem;color:var(--text-secondary)}.field-hint{font-size:.75rem;color:var(--text-secondary);margin-top:-.25rem}.form-input:disabled{opacity:.6;cursor:not-allowed}.journalists-loading,.no-journalists{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:2rem;background:var(--bg-tertiary);border:1px dashed var(--border-color);border-radius:6px;color:var(--text-secondary);font-size:.875rem}.spinner-small{width:20px;height:20px;border:2px solid var(--border-color);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.selected-journalists{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.selected-label{font-size:.8125rem;font-weight:500;color:var(--text-secondary)}.selected-chips{display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;max-height:150px;overflow-y:auto}.journalist-chip{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--color-primary-light);border:1px solid var(--color-primary);border-radius:20px;transition:all .2s ease}.chip-content{display:flex;flex-direction:column;gap:.125rem;min-width:0}.chip-name{font-size:.8125rem;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.chip-email{font-size:.6875rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.chip-remove{background:none;border:none;color:var(--text-secondary);font-size:1.25rem;line-height:1;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;flex-shrink:0}.chip-remove:hover{background:var(--color-danger);color:#fff}.chip-remove:disabled{opacity:.5;cursor:not-allowed}.journalist-search-wrapper{display:flex;flex-direction:column;gap:.5rem}.journalist-search-wrapper label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.journalist-search-wrapper .search-container{position:relative;width:100%}.journalist-search-input{width:100%;padding:.75rem 2.5rem .75rem .75rem;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-surface);color:var(--text-primary);font-size:.875rem;transition:all .2s ease}.journalist-search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.journalist-search-wrapper .clear-search-btn{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1rem;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .2s ease;z-index:1}.journalist-search-wrapper .clear-search-btn:hover{color:var(--text-primary)}.journalists-list{max-height:300px;overflow-y:auto;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-tertiary)}.journalist-item{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:.75rem;background:var(--bg-surface);border-bottom:1px solid var(--border-color);cursor:pointer;transition:all .2s ease}.journalist-item:last-child{border-bottom:none}.journalist-item:hover{background:var(--bg-secondary)}.journalist-item.selected{background:var(--color-primary-light);border-color:var(--color-primary)}.journalist-item input[type=checkbox]{display:none}.journalist-item-info{display:flex;flex-direction:column;gap:.25rem;min-width:0;overflow:hidden}.journalist-item-name{font-size:.875rem;font-weight:500;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}.journalist-item-email{font-size:.75rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}.checkbox-indicator-compact{width:18px;height:18px;border:2px solid var(--border-color);border-radius:3px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;background:var(--bg-surface)}.journalist-item.selected .checkbox-indicator-compact{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.no-results{display:flex;align-items:center;justify-content:center;padding:2rem;color:var(--text-secondary);font-size:.875rem}.delete-confirmation{display:flex;flex-direction:column;gap:1.25rem;padding:.5rem 0;text-align:center}.delete-icon-wrapper{display:flex;justify-content:center;margin-bottom:.5rem}.delete-confirmation h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0}.delete-confirmation p{color:var(--text-secondary);font-size:.875rem;margin:0;line-height:1.5}.article-to-delete{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;padding:1rem;display:flex;flex-direction:column;gap:.5rem;text-align:left}.article-to-delete strong{color:var(--text-primary);font-size:.9375rem;font-weight:500;display:block;word-break:break-word}.article-url{color:var(--text-secondary);font-size:.8125rem;word-break:break-all;opacity:.8}.warning-text{color:var(--color-danger);font-weight:500;font-size:.875rem}.delete-confirmation .modal-actions{margin-top:.5rem;justify-content:center}.journalists-tab{display:flex;flex-direction:column;gap:1rem}.controls-card{padding:1rem}.journalists-controls{display:flex;align-items:center;gap:1rem;justify-content:space-between}.search-container{position:relative;flex:1;max-width:450px}.search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);font-size:1rem;color:var(--text-secondary)}.search-input{width:100%;padding:.75rem 2.5rem;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-surface);color:var(--text-primary);font-size:.875rem;transition:all .2s ease}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.clear-search-btn{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:1rem;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .2s ease;z-index:1}.clear-search-btn:hover{color:var(--text-primary)}.controls-right{display:flex;align-items:center;gap:1rem}.result-count{font-size:.875rem;color:var(--text-secondary);white-space:nowrap}.items-per-page-select{padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-surface);color:var(--text-primary);font-size:.875rem;cursor:pointer;transition:all .2s ease}.items-per-page-select:hover{border-color:var(--color-primary)}.table-card-wrapper{margin:0}.table-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.table-responsive{overflow-x:auto}.journalists-table{width:100%;border-collapse:collapse}.journalists-table thead{background:var(--bg-tertiary);border-bottom:2px solid var(--border-color)}.journalists-table th{text-align:left;padding:.75rem 1rem;font-weight:600;font-size:.875rem;color:var(--text-secondary);white-space:nowrap}.journalists-table th.text-center{text-align:center}.journalists-table tbody tr{border-bottom:1px solid var(--border-color);transition:background-color .15s ease}.journalists-table tbody tr:hover{background:var(--bg-secondary)}.journalists-table tbody tr:last-child{border-bottom:none}.journalists-table td{padding:.75rem 1rem;font-size:.875rem;color:var(--text-primary);text-align:left}.journalists-table td.text-center{text-align:center}.journalists-table td[colspan]{text-align:center!important;width:100%!important}.journalists-table .no-data{width:100%!important;display:table-cell!important}.name-cell{font-weight:500}.journalist-name-link{color:var(--color-primary);cursor:pointer;transition:all .2s ease;padding:.25rem .5rem;border-radius:4px;display:inline-block;font-weight:600}.journalist-name-link:hover{color:var(--color-primary-dark);background:var(--bg-hover);text-decoration:underline}.journalist-name-link:active{transform:translateY(1px)}.email-cell{max-width:300px}.email-link{color:var(--color-primary);text-decoration:none;transition:all .2s ease;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-link:hover{color:var(--color-primary-dark);text-decoration:underline}.count-cell{text-align:center}.article-count-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:600;background:var(--color-primary-light);color:var(--color-primary-dark)}.date-cell{white-space:nowrap;color:var(--text-secondary);font-size:.813rem}.no-data{text-align:center!important;padding:3rem 1rem}.journalists-table tbody tr td.no-data{text-align:center!important}.no-data .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;width:100%;max-width:400px;margin:0 auto;text-align:center}.empty-icon{font-size:3rem;opacity:.5}.empty-state h3{margin:0;font-size:1.125rem;color:var(--text-primary)}.empty-state p{margin:0;font-size:.875rem;color:var(--text-secondary)}.pagination-card{padding:1rem}.table-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem}.footer-info{font-size:.875rem;color:var(--text-secondary)}.pagination{display:flex;align-items:center;gap:.5rem}.pagination-pages{display:flex;align-items:center;gap:.25rem}.pagination-page{min-width:2.25rem;height:2.25rem;padding:.5rem;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-surface);color:var(--text-primary);font-size:.875rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.pagination-page:hover:not(.active){background:var(--bg-secondary);border-color:var(--color-primary)}.pagination-page.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);font-weight:600}.pagination-ellipsis{padding:0 .25rem;color:var(--text-secondary)}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:3rem}.spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.actions-cell{width:120px}.action-buttons{display:flex;gap:.5rem;justify-content:center;align-items:center}.action-btn{padding:.5rem;border:none;border-radius:4px;background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.action-btn:hover{background:var(--bg-tertiary);color:var(--text-primary);transform:translateY(-1px)}.action-btn.debounce-action:hover{background:var(--color-primary-light);color:var(--color-primary)}.action-btn.email-action:hover{background:var(--color-info-light);color:var(--color-info)}.action-btn.delete-action:hover{background:var(--color-danger-light);color:var(--color-danger)}.action-btn.disabled,.action-btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.action-btn.disabled:hover,.action-btn:disabled:hover{background:var(--bg-secondary);color:var(--text-secondary);transform:none}.delete-confirmation,.debounce-confirmation{display:flex;flex-direction:column;gap:1.25rem;padding:.5rem 0;text-align:center}.delete-icon-wrapper,.debounce-icon-wrapper{display:flex;justify-content:center;margin-bottom:.5rem}.delete-confirmation h3,.debounce-confirmation h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0}.delete-confirmation p,.debounce-confirmation p{color:var(--text-secondary);font-size:.875rem;margin:0;line-height:1.5}.journalist-to-delete,.journalist-info-box{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;padding:1rem;display:flex;flex-direction:column;gap:.5rem}.journalist-info{display:flex;flex-direction:column;gap:.25rem}.journalist-info .journalist-name{font-size:1rem;font-weight:600;color:var(--text-primary)}.journalist-info .journalist-email{font-size:.875rem;color:var(--text-secondary)}.email-form{display:flex;flex-direction:column;gap:1.25rem;padding:.5rem 0}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:500;color:var(--text-primary)}.form-input{padding:.75rem;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-surface);color:var(--text-primary);font-size:.875rem;transition:all .2s ease}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-input.disabled{background:var(--bg-tertiary);color:var(--text-secondary);cursor:not-allowed}.form-help{font-size:.75rem;color:var(--text-secondary);font-style:italic}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.debounce-status-row{background:var(--bg-surface);border-top:none!important}.debounce-status-row:hover{background:var(--bg-surface)!important}.debounce-status-row td{padding:0!important;border-bottom:1px solid var(--border-color)!important}.debounce-status-badge{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;font-size:.875rem;transition:all .3s ease;animation:slideIn .3s ease;width:100%;box-sizing:border-box;flex-wrap:wrap}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.debounce-status-badge.started,.debounce-status-badge.generating,.debounce-status-badge.validating{background:var(--primary-bg);border:1px solid var(--primary-border);color:var(--text-primary)}.debounce-status-badge.completed{background:var(--success-bg);border:1px solid var(--success-border);color:var(--success-text)}.debounce-status-badge.failed,.debounce-status-badge.no_candidates{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger-text)}.debounce-status-badge.skipped{background:var(--warning-bg);border:1px solid var(--warning-border);color:var(--warning-text)}.status-icon{font-size:1.125rem;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.status-icon.spinner{width:20px;height:20px;border:3px solid var(--border-color);border-top-color:var(--color-primary);border-right-color:var(--color-primary);border-radius:50%;animation:rotate .8s linear infinite;font-size:0}.status-icon.spinner:before{content:""}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.status-text{flex:1;font-weight:500;line-height:1.5;min-width:0}.progress-bar{width:100%;height:8px;background:rgba(0,0,0,.1);border-radius:4px;overflow:hidden;margin-top:.5rem;min-width:200px;border:1px solid var(--border-color)}[data-theme=dark] .progress-bar{background:rgba(255,255,255,.1)}.progress-fill{height:100%;background:linear-gradient(90deg,#0066cc 0%,#3b82f6 100%);border-radius:4px;transition:width .3s ease;position:relative;overflow:hidden}[data-theme=dark] .progress-fill{background:linear-gradient(90deg,#3b82f6 0%,#60a5fa 100%)}.progress-fill:after{content:"";position:absolute;top:0;left:0;bottom:0;right:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.domain-header-actions{display:flex;align-items:center;gap:.75rem;height:40px}.domain-header-actions .btn{height:36px!important;line-height:1!important;padding:.5rem .875rem!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;margin:0!important;box-sizing:border-box!important;flex-shrink:0!important;font-weight:500!important;font-size:.875rem!important;border-radius:6px!important;transition:all .15s ease!important}.domain-header-actions .btn-secondary{background:var(--bg-surface)!important;color:var(--text-primary)!important;border:1px solid var(--border-color)!important}.domain-header-actions .btn-secondary:hover:not(:disabled){background:var(--bg-hover)!important;border-color:var(--border-color-light)!important;transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.domain-header-actions .btn-primary{background:var(--btn-primary-bg)!important;color:var(--btn-primary-text)!important;border:1px solid transparent!important}.domain-header-actions .btn-primary:hover:not(:disabled){background:var(--btn-primary-hover)!important;transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.back-button{min-width:85px}.crawler-status-wrapper{position:relative;display:flex;flex-direction:column;gap:.5rem}.run-crawler-button{min-width:140px}.crawler-status{position:absolute;top:calc(100% + .25rem);left:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:6px;padding:.5rem .75rem;font-size:.75rem;color:var(--text-secondary);white-space:nowrap;box-shadow:0 2px 8px #0000001a;z-index:1000;min-width:200px;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.crawler-status .urls-found{color:var(--text-success);font-weight:600}.crawler-result{position:absolute;top:calc(100% + .25rem);left:0;background:var(--bg-success);border:1px solid var(--border-success);border-radius:6px;padding:.5rem .75rem;font-size:.75rem;color:var(--text-success);white-space:nowrap;box-shadow:0 2px 8px #0000001a;z-index:1000;min-width:200px;font-weight:600;animation:slideDown .2s ease}.visit-website-button{min-width:140px}.client-form{display:flex;flex-direction:column;gap:24px}.client-form--compact{gap:16px}.client-form--compact .form-group{margin-bottom:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-section{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;padding:20px}.form-section-title{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--text-primary);padding-bottom:12px;border-bottom:1px solid var(--border-color)}.ai-profile-section{background:var(--bg-hover);border-color:var(--accent-primary)}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.form-group:last-child{margin-bottom:0}.form-group label{font-size:13px;font-weight:600;color:var(--text-primary)}.form-group input,.form-group select,.form-group textarea{padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-surface);color:var(--text-primary);font-size:14px;font-family:inherit}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-primary)}.form-hint{font-size:12px;color:var(--text-secondary);font-style:italic;margin-top:2px}.form-error{font-size:12px;color:var(--error);font-weight:500;margin-top:2px;display:block}.form-group input[aria-invalid=true],.form-group textarea[aria-invalid=true],.form-group select[aria-invalid=true]{border-color:var(--error)}.form-group input[aria-invalid=true]:focus,.form-group textarea[aria-invalid=true]:focus,.form-group select[aria-invalid=true]:focus{border-color:var(--error);outline-color:var(--error)}.ai-profile-trigger{display:flex;flex-direction:column;gap:8px;padding:16px;background:var(--bg-hover);border:1px dashed var(--accent-primary);border-radius:6px;margin-bottom:8px}.array-item{display:flex;gap:8px;align-items:center;margin-bottom:8px}.array-item:last-child{margin-bottom:0}.array-item input{flex:1}.remove-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-surface);color:var(--error);font-size:20px;font-weight:700;cursor:pointer;transition:all .2s;padding:0}.remove-btn:hover{background:var(--error);color:var(--btn-primary-text);border-color:var(--error)}.add-item-btn{padding:8px 12px;border:1px dashed var(--border-color);border-radius:4px;background:transparent;color:var(--accent-primary);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;margin-top:4px}.add-item-btn:hover{background:var(--bg-hover);border-color:var(--accent-primary)}.company-search-container{position:relative}.company-search-container input{width:100%;padding-right:36px}.company-search-container input.has-selection{background:var(--bg-hover);border-color:var(--accent-primary)}.company-clear-btn{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:24px;height:24px;border:none;background:var(--bg-tertiary);color:var(--text-secondary);border-radius:50%;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.company-clear-btn:hover{background:var(--error);color:var(--btn-primary-text)}.company-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:6px;box-shadow:var(--shadow-lg);z-index:100;max-height:200px;overflow-y:auto;margin-top:4px}.company-option{padding:10px 12px;cursor:pointer;display:flex;flex-direction:column;gap:2px;transition:background .1s}.company-option:hover{background:var(--bg-hover)}.company-option.no-results{color:var(--text-secondary);font-style:italic;cursor:default}.company-option.no-results:hover{background:transparent}.company-name{font-weight:500;color:var(--text-primary)}.company-domain{font-size:12px;color:var(--text-secondary)}.entity-company{font-size:11px;color:var(--accent-primary);font-style:italic;margin-top:2px}.company-searching{position:absolute;right:40px;top:50%;transform:translateY(-50%);font-size:12px;color:var(--text-secondary)}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:8px;padding-top:20px;border-top:1px solid var(--border-color)}.client-form--compact .form-actions{margin-top:4px;padding-top:16px}.client-form::-webkit-scrollbar{width:8px}.client-form::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:4px}.client-form::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.client-form::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}@media (max-width: 768px){.client-form{gap:var(--spacing-md);max-height:70vh;padding:4px 8px 4px 4px}.client-form--compact{gap:var(--spacing-sm)}.form-row{grid-template-columns:1fr;gap:var(--spacing-sm)}.form-section{padding:var(--spacing-md);border-radius:6px}.form-section-title{font-size:.9375rem;margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-xs)}.form-group{gap:4px;margin-bottom:var(--spacing-sm)}.form-group label{font-size:.8125rem}.form-group input,.form-group select,.form-group textarea{padding:8px 10px;font-size:.875rem}.form-hint{font-size:.6875rem}.ai-profile-trigger{padding:var(--spacing-sm);gap:var(--spacing-xs)}.array-item{gap:var(--spacing-xs);margin-bottom:var(--spacing-xs)}.remove-btn{width:28px;height:28px;font-size:18px}.add-item-btn{padding:6px 10px;font-size:.8125rem}.form-actions{flex-direction:column;gap:var(--spacing-xs);padding-top:var(--spacing-md)}.form-actions button{width:100%}}.export-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.export-modal{background:var(--bg-surface);border-radius:8px;width:400px;max-width:90vw;box-shadow:0 4px 20px #00000026}.export-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-color)}.export-modal-header h3{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.export-modal-header .close-btn{background:none;border:none;font-size:24px;color:var(--text-secondary);cursor:pointer;padding:0;line-height:1}.export-modal-header .close-btn:hover{color:var(--text-primary)}.export-modal-body{padding:20px}.export-modal-body .client-name{margin:0 0 16px;font-size:14px;font-weight:500;color:var(--text-primary)}.export-modal-body .loading,.export-modal-body .no-campaigns{color:var(--text-secondary);font-size:14px;text-align:center;padding:20px 0}.campaign-selectors{display:flex;gap:16px}.selector-group{flex:1;display:flex;flex-direction:column;gap:6px}.selector-group label{font-size:13px;font-weight:500;color:var(--text-secondary)}.selector-group select{padding:8px 12px;font-size:14px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-surface);color:var(--text-primary);cursor:pointer}.selector-group select:focus{outline:none;border-color:var(--accent-primary)}.export-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:16px 20px;border-top:1px solid var(--border-color)}.export-modal-footer .btn-cancel{padding:8px 16px;font-size:14px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-surface);color:var(--text-primary);cursor:pointer}.export-modal-footer .btn-cancel:hover{background:var(--bg-secondary)}.export-modal-footer .btn-export{padding:8px 16px;font-size:14px;border:none;border-radius:6px;background:#3b82f6;color:#fff;cursor:pointer}.export-modal-footer .btn-export:hover:not(:disabled){opacity:.9}.export-modal-footer .btn-export:disabled{opacity:.5;cursor:not-allowed}.clients-tab{padding:20px;background-color:var(--bg-primary);height:100%;overflow:hidden;display:flex;flex-direction:column}.clients-tab .virtual-table-container{flex:1;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border-color);background:var(--bg-surface);position:relative}.clients-tab .virtual-table-header{flex-shrink:0;background:#000000!important;border-bottom:1px solid #000000!important;position:relative;z-index:100}.clients-tab .virtual-table-header .virtual-row{display:flex;align-items:center;width:100%;background:#000000!important}.clients-tab .virtual-table-header .virtual-cell{padding:4px 8px;font-size:12px;font-weight:700;color:#fff!important;text-transform:uppercase;letter-spacing:.5px;border-right:1px solid #333333;display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;position:relative;background:#000000!important}.clients-tab .virtual-cell.col-row-number{width:50px;flex:0 0 50px;justify-content:center;background-color:#000!important;color:#fff!important;font-weight:700;border-color:#000!important;border-bottom:1px solid #ffffff!important}.virtual-cell.col-client-name{width:200px;flex:0 0 200px;justify-content:flex-start}.virtual-cell.col-active-camp,.virtual-cell.col-total-camp{width:100px;flex:0 0 100px;justify-content:center}.virtual-cell.col-website{width:300px;flex:0 0 300px;justify-content:flex-start}.virtual-cell.col-anchor{width:200px;flex:0 0 200px;justify-content:flex-start}.virtual-cell.col-user{width:150px;flex:0 0 150px;justify-content:flex-start}.virtual-cell.col-multiplier{width:130px;flex:0 0 130px;justify-content:center}.virtual-cell.col-actions{width:140px;flex:0 0 140px;justify-content:center}[data-theme=dark] .clients-tab .virtual-cell .client-name-link,[data-theme=dark] .clients-tab .virtual-cell .anchor-text{color:#212529!important}[data-theme=dark] .clients-tab .user-select{background:#ffffff!important;color:#212529!important;border-color:#dee2e6!important}[data-theme=dark] .clients-tab .user-select:hover{border-color:#06c!important;background:#f5f5f5!important}.clients-header{display:flex;align-items:center;gap:24px;padding:16px 0;border-bottom:1px solid var(--border-color);flex-shrink:0;margin-bottom:16px}.clients-stats{display:flex;align-items:center;gap:8px}.stat-label{font-size:12px;color:var(--text-secondary);font-weight:500}.stat-value{font-size:14px;color:var(--text-primary);font-weight:600}.clients-filters{display:flex;gap:12px;flex:1}.filter-select{padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-surface);color:var(--text-primary);font-size:13px;cursor:pointer;min-width:140px}.filter-select:focus{outline:none;border-color:var(--primary-color)}.search-input{flex:1;max-width:400px;padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-surface);color:var(--text-primary);font-size:13px}.search-input:focus{outline:none;border-color:var(--primary-color)}.btn-create{padding:8px 16px;background-color:var(--btn-primary-bg);color:var(--btn-primary-text);border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background-color .2s ease;margin-left:auto}.btn-create:hover{background-color:var(--btn-primary-hover)}.clients-table-wrapper{flex:1;min-height:0;display:flex;flex-direction:column;gap:16px;overflow:hidden}.clients-table-container{flex:1;overflow:auto;background:var(--bg-surface);border:1px solid var(--border-color);position:relative;min-height:0}.clients-table{border-collapse:collapse;table-layout:fixed}.clients-table thead{position:sticky;top:0;z-index:10;background:var(--bg-header-inverted);border-bottom:1px solid var(--border-color)}.clients-table th{padding:12px 16px;text-align:center;font-size:13px;font-weight:700;color:var(--text-header-inverted);text-transform:uppercase;letter-spacing:.5px;background-color:var(--bg-header-inverted);position:sticky;top:0;z-index:10;border:1px solid var(--border-color);border-top:none}.clients-table th:nth-child(2){text-align:left}.clients-table thead th>span{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px;white-space:nowrap;flex-wrap:nowrap}.clients-table .col-row-number{width:60px;background-color:#000;color:#fff;text-align:center;font-weight:700;font-size:14px}[data-theme=dark] .clients-table .col-row-number{background-color:#000;color:#fff}.clients-table .row-number{width:60px;background-color:#000!important;color:#fff!important;text-align:center;font-weight:600;font-size:14px}[data-theme=dark] .clients-table .row-number{background-color:#000!important;color:#fff!important}.clients-table th:nth-child(2),.clients-table td:nth-child(2){width:300px;text-align:left}.clients-table th:nth-child(3),.clients-table td:nth-child(3){width:150px}.clients-table th:nth-child(4),.clients-table td:nth-child(4){width:150px}.clients-table th:nth-child(5),.clients-table td:nth-child(5){width:400px;text-align:left}.clients-table th:nth-child(6),.clients-table td:nth-child(6){width:150px}.clients-table th:nth-child(7),.clients-table td:nth-child(7){width:300px;text-align:left}.clients-table th:nth-child(8),.clients-table td:nth-child(8){width:200px;text-align:left}.clients-table th:nth-child(9),.clients-table td:nth-child(9){width:200px}.clients-table tbody tr{border-bottom:1px solid var(--border-color);transition:background-color .2s ease}.clients-table tbody tr:nth-child(2n) td{background-color:var(--bg-tertiary)!important}.clients-table tbody tr:nth-child(2n) td.row-number{background-color:#000!important;color:#fff!important}[data-theme=dark] .clients-table tbody tr:nth-child(2n) td.row-number{background-color:#000!important;color:#fff!important}.clients-table tbody tr:hover{background-color:var(--bg-hover)}.clients-table td{padding:14px 16px;font-size:15px;font-weight:500;color:var(--text-primary);border:1px solid var(--border-color)}.client-name{font-weight:600}.client-name-link{color:var(--text-primary);cursor:pointer;transition:all .2s}.client-name-link:hover{color:var(--text-primary);text-decoration:underline}.campaign-count{font-weight:600;color:var(--text-primary);font-size:15px}.client-website a{color:var(--primary-color);text-decoration:none}.client-website a:hover{text-decoration:underline}.anchor-keywords-cell{max-width:300px;overflow:hidden}.anchor-text{font-size:15px;font-weight:500;color:var(--text-primary);display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.no-anchor-text{font-size:15px;font-weight:500;color:var(--text-secondary);font-style:italic}.clients-tab .virtual-cell .status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;line-height:1.2;background:#E8EAED!important;width:65px;text-align:center;color:#000!important}.clients-tab .virtual-cell .status-badge.status-active,.clients-tab .virtual-cell .status-badge.status-inactive{color:#000!important}.col-user{text-align:left}.clients-tab .responsible-display{font-size:11px;font-weight:500;color:#212529;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;max-width:100%}.clients-tab .responsible-display .no-users{color:#6c757d}.clients-tab .user-select{width:100%;padding:2px 6px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-surface);color:var(--text-primary);font-size:11px;font-weight:500;cursor:pointer;transition:all .2s ease}.user-select:hover{border-color:var(--primary-color);background:var(--bg-hover)}.user-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #6366f11a}.multi-user-select{position:relative;width:100%}.multi-user-select-trigger{width:100%;padding:2px 6px;border:1px solid #dee2e6;border-radius:4px;background:#ffffff;color:#212529;font-size:11px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:space-between;gap:4px;text-align:left;min-height:20px}.multi-user-select-trigger:hover{border-color:var(--primary-color);background:#f5f5f5}.multi-user-select-trigger:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #6366f11a}.multi-user-select-trigger.open{border-color:var(--primary-color)}.multi-user-select-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.multi-user-select-arrow{font-size:9px;color:#6c757d;flex-shrink:0}.multi-user-select-dropdown{background:#ffffff;border:1px solid #dee2e6;border-radius:4px;box-shadow:0 4px 12px #00000026;max-height:200px;overflow-y:auto;min-width:150px}.multi-user-select-option{display:flex;align-items:center;gap:8px;padding:6px 10px;font-size:12px;color:#212529;cursor:pointer;transition:background-color .15s ease}.multi-user-select-option:hover{background-color:#f5f5f5}.multi-user-select-option input[type=checkbox]{width:14px;height:14px;cursor:pointer;accent-color:var(--primary-color)}.multi-user-select-option span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.multi-user-select-empty{padding:10px;text-align:center;color:#6c757d;font-size:12px}[data-theme=dark] .multi-user-select-trigger{background:#ffffff;color:#212529;border-color:#dee2e6}[data-theme=dark] .multi-user-select-trigger:hover{border-color:#06c;background:#f5f5f5}[data-theme=dark] .multi-user-select-dropdown{background:#ffffff;border-color:#dee2e6}[data-theme=dark] .multi-user-select-option{color:#212529}[data-theme=dark] .multi-user-select-option:hover{background-color:#f5f5f5}.clients-tab .multiplier-select{width:100%;padding:2px 6px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-surface);color:var(--text-primary);font-size:11px;font-weight:500;cursor:pointer;transition:all .2s ease}.multiplier-select:hover{border-color:var(--primary-color);background:var(--bg-hover)}.multiplier-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #6366f11a}[data-theme=dark] .clients-tab .multiplier-select{background:#ffffff!important;color:#212529!important;border-color:#dee2e6!important}[data-theme=dark] .clients-tab .multiplier-select:hover{border-color:#06c!important;background:#f5f5f5!important}.clients-tab .multiplier-standard{background-color:#d4edda!important;border-color:#28a745!important;color:#155724!important}.clients-tab .multiplier-medium{background-color:#fff3cd!important;border-color:#ffc107!important;color:#856404!important}.clients-tab .multiplier-hard{background-color:#f8d7da!important;border-color:#dc3545!important;color:#721c24!important}.clients-tab .multiplier-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500;text-align:center}[data-theme=dark] .clients-tab .multiplier-standard{background-color:#d4edda!important;border-color:#28a745!important;color:#155724!important}[data-theme=dark] .clients-tab .multiplier-medium{background-color:#fff3cd!important;border-color:#ffc107!important;color:#856404!important}[data-theme=dark] .clients-tab .multiplier-hard{background-color:#f8d7da!important;border-color:#dc3545!important;color:#721c24!important}.col-actions{text-align:center;white-space:nowrap}.actions-menu{display:flex;flex-direction:row;flex-wrap:nowrap;gap:4px;justify-content:center;align-items:center}.action-btn{padding:6px 10px;border:none;border-radius:4px;font-size:14px;cursor:pointer;transition:all .2s ease;background-color:transparent}.action-btn.btn-profile{color:var(--primary-color)}.action-btn.btn-profile:hover{background-color:#6366f11a}.action-btn.btn-edit{color:var(--primary-color)}.action-btn.btn-edit:hover{background-color:#6366f11a}.action-btn.btn-toggle{color:var(--text-secondary)}.action-btn.btn-toggle:hover{background-color:var(--bg-hover)}.action-btn.btn-delete{color:var(--danger-color)}.action-btn.btn-delete:hover{background-color:#ef44441a}.clients-tab .action-icon-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:4px;background:#f3f4f6;color:#374151;cursor:pointer;transition:all .15s ease}.clients-tab .action-icon-btn:hover{background:#e5e7eb;color:#111827}.clients-tab .action-icon-btn.action-activate{background:#dcfce7;color:#16a34a}.clients-tab .action-icon-btn.action-activate:hover{background:#bbf7d0;color:#15803d}.clients-tab .action-icon-btn.action-deactivate{background:#fef3c7;color:#d97706}.clients-tab .action-icon-btn.action-deactivate:hover{background:#fde68a;color:#b45309}.clients-tab .action-icon-btn.action-delete{background:#fee2e2;color:#dc2626}.clients-tab .action-icon-btn.action-delete:hover{background:#fecaca;color:#b91c1c}.clients-tab .action-icon-btn.action-export{background:#dbeafe;color:#2563eb}.clients-tab .action-icon-btn.action-export:hover{background:#bfdbfe;color:#1d4ed8}.clients-tab .action-icon-btn svg{flex-shrink:0}.clients-tab-loading,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary);flex:1;margin-top:20px}.empty-state p{font-size:16px;font-weight:500;margin-bottom:8px;color:var(--text-primary)}.empty-subtitle{font-size:13px;color:var(--text-secondary);margin-bottom:16px}.clients-table-container::-webkit-scrollbar{width:8px;height:8px}.clients-table-container::-webkit-scrollbar-track{background:var(--bg-secondary)}.clients-table-container::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.clients-table-container::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}[data-theme=dark] .clients-table-container{background:#ffffff;border-color:#dee2e6}[data-theme=dark] .clients-table{background:#ffffff}[data-theme=dark] .clients-table thead{background:#1a1a1a}[data-theme=dark] .clients-table th{background-color:#1a1a1a;color:#f8f9fa;border-color:#dee2e6}[data-theme=dark] .clients-table thead th:hover{background:#2a2a2a!important}[data-theme=dark] .clients-table tbody tr{border-color:#dee2e6}[data-theme=dark] .clients-table tbody tr:nth-child(2n) td{background-color:#e9ecef!important}[data-theme=dark] .clients-table tbody tr:hover{background-color:#f5f5f5}[data-theme=dark] .clients-table td{color:#212529;border-color:#dee2e6;background-color:#fff}[data-theme=dark] .clients-table .client-name,[data-theme=dark] .clients-table .client-name-link,[data-theme=dark] .clients-table .campaign-count,[data-theme=dark] .clients-table .anchor-text{color:#212529}[data-theme=dark] .clients-table .no-anchor-text{color:#6c757d}[data-theme=dark] .clients-table .client-website a{color:#212529}[data-theme=dark] .clients-table .status-active{background-color:#10b98126;color:#0d9668}[data-theme=dark] .clients-table .status-inactive{background-color:#6b728026;color:#4b5563}[data-theme=dark] .clients-table .user-select{background:#ffffff;color:#212529;border-color:#dee2e6}[data-theme=dark] .clients-table .user-select:hover{border-color:#06c;background:#f5f5f5}[data-theme=dark] .clients-table .action-btn.btn-profile,[data-theme=dark] .clients-table .action-btn.btn-edit{color:#06c}[data-theme=dark] .clients-table .action-btn.btn-delete{color:#dc3545}[data-theme=dark] .clients-table .action-btn.btn-toggle{color:#6c757d}[data-theme=dark] .clients-table .action-btn:hover{background-color:#f5f5f5}[data-theme=dark] .clients-table-container::-webkit-scrollbar-track{background:#f8f9fa}[data-theme=dark] .clients-table-container::-webkit-scrollbar-thumb{background:#dee2e6}[data-theme=dark] .clients-table-container::-webkit-scrollbar-thumb:hover{background:#adb5bd}@media (max-width: 768px){.clients-tab{padding:var(--spacing-sm)}.clients-header{flex-direction:column;gap:var(--spacing-sm);align-items:stretch;margin-bottom:var(--spacing-md)}.clients-filters{flex-direction:column;width:100%}.filter-select{width:100%;font-size:.875rem}.search-input{max-width:100%;width:100%;font-size:.875rem}.clients-header button{width:100%}.clients-table-container{-webkit-overflow-scrolling:touch}.clients-table{font-size:.875rem}.clients-table th,.clients-table td{padding:var(--spacing-sm);white-space:nowrap}.client-name,.client-website{max-width:150px;overflow:hidden;text-overflow:ellipsis}.anchor-keywords-cell{max-width:200px}.actions-menu{flex-direction:row!important;flex-wrap:nowrap!important;gap:2px}.action-btn{font-size:.75rem;padding:4px 8px}.empty-state{padding:var(--spacing-lg)}.empty-state p{font-size:.875rem;margin-bottom:var(--spacing-sm)}.clients-tab-loading{padding:var(--spacing-xl);font-size:.875rem}}.filter-summary-bar{background:var(--bg-hover);border:1px solid var(--border-color);border-radius:8px;padding:12px 16px;margin-bottom:16px;display:flex;flex-direction:column;gap:12px}.filter-summary-header{display:flex;align-items:center;justify-content:space-between}.filter-summary-title{font-size:13px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:6px}.btn-clear-all-filters{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);padding:4px 12px;border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s}.btn-clear-all-filters:hover{background:var(--danger-color);color:#fff;border-color:var(--danger-color)}.filter-summary-badges{display:flex;flex-wrap:wrap;gap:8px}.filter-badge{display:inline-flex;align-items:center;gap:6px;background:var(--primary-color);color:#fff;padding:6px 10px;border-radius:16px;font-size:12px;font-weight:500;animation:filterBadgeAppear .2s ease-out}@keyframes filterBadgeAppear{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.filter-badge-column{opacity:.9;font-weight:600}.filter-badge-value{font-weight:500}.filter-badge-remove{background:rgba(255,255,255,.2);border:none;color:#fff;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;line-height:1;padding:0;margin-left:2px;transition:all .2s}.filter-badge-remove:hover{background:rgba(255,255,255,.3);transform:scale(1.1)}.filter-badge-remove:active{transform:scale(.95)}.dashboard-tab{height:100%;overflow:hidden;display:flex;flex-direction:column}.virtual-table-container{flex:1;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border-color);background:var(--bg-surface);position:relative}.virtual-table-header{flex-shrink:0;background:#000000!important;border-bottom:1px solid #000000!important;position:relative;z-index:100;overflow-x:hidden;overflow-y:visible}.virtual-table-header .virtual-row{display:flex;align-items:center;width:max-content;min-width:100%;background:#000000!important}.virtual-table-header .virtual-cell{padding:4px 8px;font-size:12px;font-weight:700;color:#fff!important;text-transform:uppercase;letter-spacing:.5px;border-right:1px solid #333333;display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;position:relative;background:#000000!important;overflow:visible}.virtual-table-body>div{overflow:auto!important;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.3) transparent}.virtual-table-body>div>div{min-width:max-content}.virtual-table-body>div::-webkit-scrollbar{width:8px;height:8px}.virtual-row{display:flex;align-items:center;border-bottom:1px solid #dee2e6;background:#ffffff;width:max-content;min-width:100%;height:28px;box-sizing:border-box}.virtual-cell.col-row-number{width:50px;flex:0 0 50px;justify-content:center;background-color:#000!important;color:#fff!important;font-weight:700;border-color:#000!important;border-bottom:1px solid #ffffff!important}.virtual-cell.col-client{width:180px;flex:0 0 180px;justify-content:flex-start}.virtual-cell.col-campaign{width:100px;flex:0 0 100px;justify-content:center;border-right:3px solid #000000!important}.dashboard-tab .virtual-cell.col-start-date,.dashboard-tab .virtual-cell.col-end-date{width:150px;flex:0 0 150px;justify-content:center}.dashboard-tab .virtual-cell.col-75-date{width:130px;flex:0 0 130px;justify-content:center;background-color:#e3f2fd!important;color:#000!important}.dashboard-tab .virtual-table-header .virtual-cell.col-75-date{background-color:#e3f2fd!important;color:#000!important}.dashboard-tab .virtual-row .virtual-cell.col-75-date,.dashboard-tab .virtual-row.row-green .virtual-cell.col-75-date,.dashboard-tab .virtual-row.row-dark-red .virtual-cell.col-75-date,.dashboard-tab .virtual-row.row-red .virtual-cell.col-75-date,.dashboard-tab .virtual-row.row-orange .virtual-cell.col-75-date,.dashboard-tab .virtual-row.row-peach .virtual-cell.col-75-date,[data-theme=dark] .dashboard-tab .virtual-row .virtual-cell.col-75-date,[data-theme=dark] .dashboard-tab .virtual-row.row-green .virtual-cell.col-75-date,[data-theme=dark] .dashboard-tab .virtual-row.row-dark-red .virtual-cell.col-75-date,[data-theme=dark] .dashboard-tab .virtual-row.row-red .virtual-cell.col-75-date,[data-theme=dark] .dashboard-tab .virtual-row.row-orange .virtual-cell.col-75-date,[data-theme=dark] .dashboard-tab .virtual-row.row-peach .virtual-cell.col-75-date{color:#000!important;background-color:#e3f2fd!important}.dashboard-tab .virtual-cell.col-75-date.past-cutoff{color:#c00!important;font-weight:600}.dashboard-tab.payout-view .virtual-table-header .virtual-cell.col-75-date,.dashboard-tab.payout-view .virtual-table-body .virtual-cell.col-75-date,.dashboard-tab.payout-view .virtual-row .virtual-cell.col-75-date,.dashboard-tab.payout-view .virtual-table-header .virtual-cell.col-required-lpd,.dashboard-tab.payout-view .virtual-table-body .virtual-cell.col-required-lpd,.dashboard-tab.payout-view .virtual-row .virtual-cell.col-required-lpd{border-right:3px solid #000000!important}.dashboard-tab .virtual-cell.col-days-left{width:150px;flex:0 0 150px;justify-content:center;border-right:3px solid #000000!important}.dashboard-tab .virtual-cell.col-min-links,.dashboard-tab .virtual-cell.col-links-added{width:100px;flex:0 0 100px;justify-content:center}.virtual-row.row-green{background:#B7E1CD!important;border-color:#000!important}.virtual-row.row-green:hover{background:#a3d4bc!important}.virtual-row.row-green .virtual-cell{color:#000!important;border-color:#000!important}.virtual-row.row-green .campaign-link{color:#000!important}.virtual-row.row-dark-red{background:#CC0000!important;border-color:#000!important}.virtual-row.row-dark-red:hover{background:#b30000!important}.virtual-row.row-dark-red .virtual-cell{color:#000!important;border-color:#000!important}.virtual-row.row-dark-red .campaign-link{color:#000!important}.virtual-row.row-red{background:#E06666!important;border-color:#000!important}.virtual-row.row-red:hover{background:#d45555!important}.virtual-row.row-red .virtual-cell{color:#000!important;border-color:#000!important}.virtual-row.row-red .campaign-link{color:#000!important}.virtual-row.row-orange{background:#F6B26B!important;border-color:#000!important}.virtual-row.row-orange:hover{background:#f4a352!important}.virtual-row.row-orange .virtual-cell{color:#000!important;border-color:#000!important}.virtual-row.row-orange .campaign-link{color:#000!important}.virtual-row.row-peach{background:#FCE5CD!important;border-color:#000!important}.virtual-row.row-peach:hover{background:#fadcba!important}.virtual-row.row-peach .virtual-cell{color:#000!important;border-color:#000!important}.virtual-row.row-peach .campaign-link{color:#000!important}[data-theme=dark] .virtual-row.row-green{background:#B7E1CD!important;border-color:#000!important}[data-theme=dark] .virtual-row.row-green:hover{background:#a3d4bc!important}[data-theme=dark] .virtual-row.row-green .virtual-cell{color:#000!important;border-color:#000!important}[data-theme=dark] .virtual-row.row-green .campaign-link{color:#000!important}[data-theme=dark] .virtual-row.row-dark-red{background:#CC0000!important;border-color:#000!important}[data-theme=dark] .virtual-row.row-dark-red:hover{background:#b30000!important}[data-theme=dark] .virtual-row.row-dark-red .virtual-cell{color:#000!important;border-color:#000!important}[data-theme=dark] .virtual-row.row-dark-red .campaign-link{color:#000!important}[data-theme=dark] .virtual-row.row-red{background:#E06666!important;border-color:#000!important}[data-theme=dark] .virtual-row.row-red:hover{background:#d45555!important}[data-theme=dark] .virtual-row.row-red .virtual-cell{color:#000!important;border-color:#000!important}[data-theme=dark] .virtual-row.row-red .campaign-link{color:#000!important}[data-theme=dark] .virtual-row.row-orange{background:#F6B26B!important;border-color:#000!important}[data-theme=dark] .virtual-row.row-orange:hover{background:#f4a352!important}[data-theme=dark] .virtual-row.row-orange .virtual-cell{color:#000!important;border-color:#000!important}[data-theme=dark] .virtual-row.row-orange .campaign-link{color:#000!important}[data-theme=dark] .virtual-row.row-peach{background:#FCE5CD!important;border-color:#000!important}[data-theme=dark] .virtual-row.row-peach:hover{background:#fadcba!important}[data-theme=dark] .virtual-row.row-peach .virtual-cell{color:#000!important;border-color:#000!important}[data-theme=dark] .virtual-row.row-peach .campaign-link{color:#000!important}.virtual-row.row-green .virtual-cell.col-row-number,.virtual-row.row-dark-red .virtual-cell.col-row-number,.virtual-row.row-red .virtual-cell.col-row-number,.virtual-row.row-orange .virtual-cell.col-row-number,.virtual-row.row-peach .virtual-cell.col-row-number,[data-theme=dark] .virtual-row.row-green .virtual-cell.col-row-number,[data-theme=dark] .virtual-row.row-dark-red .virtual-cell.col-row-number,[data-theme=dark] .virtual-row.row-red .virtual-cell.col-row-number,[data-theme=dark] .virtual-row.row-orange .virtual-cell.col-row-number,[data-theme=dark] .virtual-row.row-peach .virtual-cell.col-row-number{color:#fff!important;background-color:#000!important;border-color:#000!important;border-bottom:1px solid #ffffff!important}.dashboard-header{padding:20px 24px;background:var(--bg-surface);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;gap:16px}.status-legend{display:flex;gap:24px;align-items:center}.legend-item{display:flex;align-items:center;gap:6px}.legend-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.legend-dot.green{background-color:#b7e1cd;border:2px solid #8fd4ad}.legend-dot.dark-red{background-color:#c00;border:2px solid #990000}.legend-dot.red{background-color:#e06666;border:2px solid #cc4444}.legend-dot.orange{background-color:#f6b26b;border:2px solid #e89a4a}.legend-dot.peach{background-color:#fce5cd;border:2px solid #f4cda5}.legend-label{font-size:12px;color:var(--text-secondary);font-weight:500;white-space:nowrap}.active-campaigns-wrapper{flex:1;display:flex;flex-direction:column;overflow:hidden}.active-campaigns-container{flex:1;overflow:auto}.active-campaigns-container::-webkit-scrollbar{width:12px;height:12px}.active-campaigns-container::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:6px}.active-campaigns-table{width:100%;border-collapse:collapse;border:1px solid var(--border-color);background:var(--bg-primary)}.active-campaigns-table thead{position:sticky;top:0;z-index:10;background:var(--bg-header-inverted);border-bottom:1px solid var(--border-color)}.active-campaigns-table th{padding:12px 16px;text-align:center;font-size:13px;font-weight:700;color:var(--text-header-inverted);text-transform:uppercase;letter-spacing:.5px;background-color:var(--bg-header-inverted);position:sticky;top:0;z-index:10;border:1px solid var(--border-color);border-top:none}.active-campaigns-table th:nth-child(2){text-align:left}.active-campaigns-table th:last-child{text-align:center}.active-campaigns-table th>span{display:flex;align-items:center;justify-content:space-between;width:100%}.active-campaigns-table .col-row-number{width:60px;background-color:#000;color:#fff;text-align:center;font-weight:700;font-size:14px}[data-theme=dark] .active-campaigns-table .col-row-number{background-color:#000;color:#fff}.active-campaigns-table .row-number{width:60px;background-color:#000!important;color:#fff!important;text-align:center;font-weight:600;font-size:14px}[data-theme=dark] .active-campaigns-table .row-number{background-color:#000!important;color:#fff!important}.campaigns-table .actions-header{text-align:center!important}.active-campaigns-table .col-client{width:300px!important}.active-campaigns-table th:nth-child(2){width:300px!important}.active-campaigns-table td:nth-child(2){width:300px!important}.active-campaigns-table th:nth-child(3),.active-campaigns-table td:nth-child(3){width:150px;border-right:3px solid #000000!important}[data-theme=dark] .active-campaigns-table td:nth-child(3){border-right:3px solid #000000!important}.active-campaigns-table thead th:nth-child(3){border-right:none!important;position:relative}.active-campaigns-table thead th:nth-child(3):after{content:"";position:absolute;right:0;top:0;bottom:0;width:3px;background-color:#fff;z-index:1}[data-theme=dark] .active-campaigns-table thead th:nth-child(3):after{background-color:#000}.active-campaigns-table th:nth-child(4),.active-campaigns-table td:nth-child(4){width:150px}.active-campaigns-table th:nth-child(5),.active-campaigns-table td:nth-child(5){width:150px}.active-campaigns-table th:nth-child(6),.active-campaigns-table td:nth-child(6){width:150px;border-right:3px solid #000000!important}[data-theme=dark] .active-campaigns-table td:nth-child(6){border-right:3px solid #000000!important}.active-campaigns-table thead th:nth-child(6){border-right:none!important;position:relative}.active-campaigns-table thead th:nth-child(6):after{content:"";position:absolute;right:0;top:0;bottom:0;width:3px;background-color:#fff;z-index:1}[data-theme=dark] .active-campaigns-table thead th:nth-child(6):after{background-color:#000}.active-campaigns-table th:nth-child(7),.active-campaigns-table td:nth-child(7){width:150px}.active-campaigns-table th:nth-child(8),.active-campaigns-table td:nth-child(8){width:150px}.active-campaigns-table th:nth-child(9),.active-campaigns-table td:nth-child(9){width:180px}.active-campaigns-table tbody tr{transition:background-color .2s ease}.active-campaigns-table tbody tr:hover{background:var(--bg-hover)}.active-campaigns-table td{padding:14px 16px;font-size:15px;font-weight:500;color:var(--text-primary);text-align:center;border:1px solid var(--border-color);background:var(--bg-primary)}.active-campaigns-table td:nth-child(2){text-align:left}.active-campaigns-table tbody tr:nth-child(2n) td:not(.row-number){background-color:var(--bg-tertiary)!important}.active-campaigns-table .client-name{font-weight:600;text-align:left}.active-campaigns-table .client-name .campaign-link,.active-campaigns-table .client-name .campaign-link:hover{color:var(--text-primary);text-decoration:none}.active-campaigns-table .campaign-number{color:var(--text-primary);font-weight:500}.active-campaigns-table .campaign-number .campaign-link,.active-campaigns-table .campaign-number .campaign-link:hover{color:var(--text-primary);text-decoration:none}.active-campaigns-table .text-center{text-align:center}.active-campaigns-table .delivered{font-weight:600;color:var(--success-color)}.active-campaigns-table .remaining{color:var(--text-secondary)}.actions-cell{text-align:center!important;white-space:nowrap;vertical-align:middle;padding:14px 16px!important}.action-buttons{display:flex;gap:6px;justify-content:center!important;align-items:center}.action-buttons .btn{padding:6px 10px;font-size:12px}.action-buttons .btn-edit{width:32px;min-width:32px;height:32px;padding:6px;display:flex;align-items:center;justify-content:center;font-size:14px;background:#0066cc;color:#fff;border:1px solid #0066cc}.action-buttons .btn-edit:hover{background:#0052a3;border-color:#0052a3}[data-theme=dark] .action-buttons .btn-edit{background:#3b82f6;color:#fff;border:1px solid #3b82f6}[data-theme=dark] .action-buttons .btn-edit:hover{background:#2563eb;border-color:#2563eb}.btn-complete{background:#22c55e;color:#fff;border:1px solid #22c55e;font-weight:600}.btn-complete:hover{background:#16a34a;border-color:#16a34a}[data-theme=dark] .active-campaigns-table .btn-complete{background:#212529!important;color:#fff!important;border:1px solid #212529!important}[data-theme=dark] .active-campaigns-table .btn-complete:hover{background:#000000!important;border-color:#000!important}.no-campaigns{text-align:center;padding:60px;color:var(--text-secondary);font-size:14px}.dashboard-loading{display:flex;align-items:center;justify-content:center;padding:60px;color:var(--text-secondary)}.days-remaining{display:inline-block;padding:4px 8px;border-radius:4px;font-size:15px;font-weight:500;white-space:nowrap}.days-remaining.red{background:rgba(239,68,68,.2);color:#000}.days-remaining.amber{background:rgba(245,158,11,.2);color:#000}.days-remaining.green{background:rgba(34,197,94,.2);color:#000}.active-campaigns-table tbody tr.row-red td.client-name{border-right:10px solid rgba(239,68,68,.5)!important}.active-campaigns-table tbody tr.row-amber td.client-name{border-right:10px solid rgba(245,158,11,.5)!important}.active-campaigns-table tbody tr.row-green td.client-name{border-right:10px solid rgba(34,197,94,.5)!important}.status-dot{width:12px;height:12px;border-radius:50%;display:inline-block}.status-dot.row-red{background-color:var(--status-red)}.status-dot.row-amber{background-color:var(--status-amber)}.status-dot.row-green{background-color:var(--status-green)}.filter-icon{display:inline-block;font-size:.6rem;color:var(--text-header-inverted);opacity:.6;cursor:pointer;transition:all .15s ease;flex-shrink:0}.filter-icon.active{color:var(--btn-primary-bg);opacity:1;font-weight:900}.active-campaigns-table thead th:hover .filter-icon{opacity:.9;color:var(--text-header-inverted)}.dashboard-tab .filter-dropdown{position:fixed;min-width:220px;background:#ffffff;border:1px solid #dee2e6;border-radius:4px;box-shadow:0 4px 12px #00000026;z-index:9999}.active-campaigns-pagination{padding:12px;border-top:1px solid var(--border-color);background:var(--bg-surface);flex-shrink:0}.dashboard-tab .campaign-link{color:var(--text-primary)!important;text-decoration:none!important;font-weight:500;cursor:pointer;transition:all .2s}.dashboard-tab .campaign-link:hover{color:var(--text-primary)!important;text-decoration:underline!important}.dashboard-tab .assigned-users-section{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-color)}.dashboard-tab .assigned-users-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.dashboard-tab .assigned-users-header label{font-weight:600;font-size:14px;color:var(--text-primary)}.dashboard-tab .fifty-percent-date{font-size:12px;color:var(--text-secondary);background:var(--bg-hover);padding:4px 8px;border-radius:4px}.dashboard-tab .assigned-users-list{background:var(--bg-hover);border-radius:6px;padding:8px;min-height:60px;margin-bottom:8px}.dashboard-tab .no-users-message{text-align:center;color:var(--text-secondary);font-size:13px;padding:16px}.dashboard-tab .assigned-user-row{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--bg-surface);border-radius:4px;margin-bottom:4px}.dashboard-tab .assigned-user-row:last-child{margin-bottom:0}.dashboard-tab .user-icon{font-size:14px;opacity:.7}.dashboard-tab .user-name{flex:1;font-size:13px;font-weight:500;color:var(--text-primary)}.dashboard-tab .user-added-date{font-size:12px;color:var(--text-secondary)}.dashboard-tab .role-badge{font-size:11px;font-weight:600;padding:3px 8px;border-radius:12px;text-transform:uppercase}.dashboard-tab .role-badge.role-responsible{background:var(--bg-success-light, #d4edda);color:var(--text-success, #155724)}.dashboard-tab .role-badge.role-support{background:var(--bg-info-light, #d1ecf1);color:var(--text-info, #0c5460)}.dashboard-tab .remove-user-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:14px;padding:4px 6px;border-radius:4px;transition:all .15s ease}.dashboard-tab .remove-user-btn:hover{color:var(--btn-danger-bg);background:var(--bg-hover)}.dashboard-tab .add-user-row{margin-top:8px}.dashboard-tab .add-user-select{width:100%;padding:8px 12px;border:1px dashed var(--border-color);border-radius:4px;background:var(--bg-surface);color:var(--text-secondary);font-size:13px;cursor:pointer}.dashboard-tab .add-user-select:hover{border-color:var(--btn-primary-bg);color:var(--btn-primary-bg)}.dashboard-tab .add-user-select:focus{outline:none;border-color:var(--btn-primary-bg)}[data-theme=dark] .dashboard-tab .role-badge.role-responsible{background:rgba(40,167,69,.2);color:#75d38f}[data-theme=dark] .dashboard-tab .role-badge.role-support{background:rgba(23,162,184,.2);color:#63d5e5}.confirmation-modal{background-color:var(--bg-surface);border-radius:8px;box-shadow:var(--shadow-md);max-width:500px;width:90%;animation:slideDown .2s ease}.confirmation-stats{margin-top:6px}.confirmation-stats small{font-size:12px;color:var(--text-secondary);line-height:1.4}@media (max-width: 1024px){.dashboard-header{flex-direction:column;align-items:stretch}.campaigns-table-container{overflow-x:auto}.campaigns-table{min-width:800px}}[data-theme=dark] .active-campaigns-wrapper,[data-theme=dark] .active-campaigns-container{background:#ffffff}[data-theme=dark] .active-campaigns-table{background:#ffffff;border-color:#dee2e6}[data-theme=dark] .active-campaigns-table thead{background:#1a1a1a}[data-theme=dark] .active-campaigns-table th{background-color:#1a1a1a;color:#f8f9fa;border-color:#dee2e6}[data-theme=dark] .active-campaigns-table th .filter-icon,[data-theme=dark] .active-campaigns-table thead th:hover .filter-icon{color:#f8f9fa}[data-theme=dark] .active-campaigns-table thead th:hover{background:#2a2a2a!important}[data-theme=dark] .active-campaigns-table tbody tr{border-color:#dee2e6}[data-theme=dark] .active-campaigns-table tbody tr:hover{background:#f5f5f5}[data-theme=dark] .active-campaigns-table td{color:#212529;border-color:#dee2e6;background:#ffffff}[data-theme=dark] .active-campaigns-table .client-name,[data-theme=dark] .active-campaigns-table .client-name .campaign-link,[data-theme=dark] .active-campaigns-table .campaign-number,[data-theme=dark] .active-campaigns-table .campaign-number .campaign-link{color:#212529}[data-theme=dark] .active-campaigns-table .remaining{color:#6c757d}[data-theme=dark] .active-campaigns-table tbody tr:nth-child(2n) td:not(.row-number){background-color:#e9ecef!important}[data-theme=dark] .active-campaigns-table tbody tr:nth-child(odd) td:not(.row-number){background-color:#fff!important}[data-theme=dark] .active-campaigns-table tbody tr.row-red td.client-name{border-right:10px solid rgba(248,113,113,.5)!important}[data-theme=dark] .active-campaigns-table tbody tr.row-amber td.client-name{border-right:10px solid rgba(251,191,36,.5)!important}[data-theme=dark] .active-campaigns-table tbody tr.row-green td.client-name{border-right:10px solid rgba(74,222,128,.5)!important}[data-theme=dark] .dashboard-tab .filter-dropdown{background:#ffffff;border-color:#dee2e6}[data-theme=dark] .dashboard-tab .filter-dropdown-header{background:#f8f9fa;color:#212529;border-color:#dee2e6}[data-theme=dark] .dashboard-tab .filter-dropdown-search{background:#ffffff;border-color:#dee2e6}[data-theme=dark] .dashboard-tab .filter-dropdown-content{background:#ffffff}[data-theme=dark] .dashboard-tab .filter-option{color:#212529}[data-theme=dark] .dashboard-tab .filter-option:hover{background:#f5f5f5}[data-theme=dark] .dashboard-tab .filter-option.selected{background:transparent}[data-theme=dark] .dashboard-tab .filter-option span{color:#212529}[data-theme=dark] .dashboard-tab .filter-search-input{background:#ffffff;color:#212529;border-color:#dee2e6}[data-theme=dark] .active-campaigns-container::-webkit-scrollbar-track{background:#f8f9fa}[data-theme=dark] .active-campaigns-container::-webkit-scrollbar-thumb{background:#dee2e6}[data-theme=dark] .active-campaigns-container::-webkit-scrollbar-thumb:hover{background:#adb5bd}.dashboard-tab .action-buttons{display:flex;gap:8px;align-items:center;justify-content:center}.dashboard-tab .action-icon-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:4px;background:#f3f4f6;color:#374151;cursor:pointer;transition:all .15s ease}.dashboard-tab .action-icon-btn:hover{background:#e5e7eb;color:#111827}.dashboard-tab .action-icon-btn.action-complete{background:#dcfce7;color:#16a34a}.dashboard-tab .action-icon-btn.action-complete:hover{background:#bbf7d0;color:#15803d}.dashboard-tab .action-icon-btn.action-delete{background:#fee2e2;color:#dc2626}.dashboard-tab .action-icon-btn.action-delete:hover{background:#fecaca;color:#b91c1c}.dashboard-tab .action-icon-btn svg{flex-shrink:0}.view-mode-toggle{display:flex;gap:0;border:1px solid var(--border-color);border-radius:6px;overflow:hidden;flex-shrink:0}.view-mode-btn{padding:8px 16px;font-size:12px;font-weight:600;border:none;background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;transition:all .15s ease;text-transform:uppercase;letter-spacing:.5px}.view-mode-btn:first-child{border-right:1px solid var(--border-color)}.view-mode-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.view-mode-btn.active{background:#000000;color:#fff}[data-theme=dark] .view-mode-btn.active{background:#ffffff;color:#000}.dashboard-tab .virtual-cell.col-target-lpd,.dashboard-tab .virtual-cell.col-current-lpd,.dashboard-tab .virtual-cell.col-required-lpd{width:70px;flex:0 0 70px;justify-content:center}.dashboard-tab .virtual-cell.col-multiplier{width:60px;flex:0 0 60px;justify-content:center;font-weight:600}.dashboard-tab .virtual-table-header .virtual-cell.col-multiplier{background-color:#000!important;color:#fff!important}.dashboard-tab .virtual-cell.col-expected-payout{width:90px;flex:0 0 90px;justify-content:center;font-weight:600;background-color:#e3f2fd!important}.dashboard-tab .virtual-table-header .virtual-cell.col-expected-payout{background-color:#e3f2fd!important;color:#000!important}.dashboard-tab .virtual-cell.col-start-payout{width:70px;flex:0 0 70px;justify-content:center;font-weight:500}.dashboard-tab .virtual-cell.col-middle-payout{width:80px;flex:0 0 80px;justify-content:center;font-weight:500}.dashboard-tab .virtual-cell.col-end-payout{width:70px;flex:0 0 70px;justify-content:center;font-weight:500}.dashboard-tab .virtual-cell.col-current-payout{width:90px;flex:0 0 90px;justify-content:center;font-weight:600;background-color:#e3f2fd!important}.dashboard-tab .virtual-table-header .virtual-cell.col-current-payout{background-color:#e3f2fd!important;color:#000!important}.dashboard-tab .virtual-cell.unlocked{color:#16a34a;font-weight:600}.dashboard-tab .virtual-cell.locked{color:#9ca3af;font-style:italic}.dashboard-tab .totals-row{display:flex;align-items:center;background:#d4d4d4!important;border-top:2px solid #000000;border-bottom:none!important;height:28px;box-sizing:border-box}.dashboard-tab .totals-row .virtual-cell{font-weight:700;font-size:12px;color:#000!important;border:none!important;border-bottom:none!important;background:#d4d4d4!important}.dashboard-tab .totals-row .totals-label{font-weight:800;text-transform:uppercase;letter-spacing:.5px}.dashboard-tab .totals-row .col-row-number,.dashboard-tab .totals-row .col-responsible,.dashboard-tab .totals-row .col-client,.dashboard-tab .totals-row .col-campaign,.dashboard-tab .totals-row .col-start-date,.dashboard-tab .totals-row .col-end-date{background:#d4d4d4!important;border:none!important}.dashboard-tab .totals-row .col-75-date-empty{width:130px;flex:0 0 130px;background:#d4d4d4!important;border:none!important}.dashboard-tab .totals-row .col-target-lpd,.dashboard-tab .totals-row .col-current-lpd,.dashboard-tab .totals-row .col-required-lpd,.dashboard-tab .totals-row .col-multiplier,.dashboard-tab .totals-row .col-start-payout,.dashboard-tab .totals-row .col-middle-payout,.dashboard-tab .totals-row .col-end-payout{background:#d4d4d4!important;border:none!important;border-right:1px solid #999999!important;border-bottom:none!important}.dashboard-tab .totals-row .col-expected-payout,.dashboard-tab .totals-row .col-current-payout{background-color:#b8d4e8!important;border:none!important;border-right:1px solid #999999!important;border-bottom:none!important}.all-campaigns-tab{height:100%;overflow:hidden;display:flex;flex-direction:column}.all-campaigns-tab .virtual-table-container{flex:1;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border-color);background:var(--bg-surface);position:relative}.all-campaigns-tab .virtual-table-header{flex-shrink:0;background:#000000!important;border-bottom:1px solid #000000!important;position:relative;z-index:100}.all-campaigns-tab .virtual-table-header .virtual-row{display:flex;align-items:center;width:100%;background:#000000!important}.all-campaigns-tab .virtual-table-header .virtual-cell{padding:4px 8px;font-size:12px;font-weight:700;color:#fff!important;text-transform:uppercase;letter-spacing:.5px;border-right:1px solid #333333;display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;position:relative;background:#000000!important}.all-campaigns-tab .filter-dropdown{position:fixed;min-width:220px;background:#ffffff;border:1px solid #dee2e6;border-radius:4px;box-shadow:0 4px 12px #00000026;z-index:9999}.virtual-table-header .virtual-cell:last-child{border-right:none}.virtual-table-header .virtual-cell>span{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px}.virtual-table-body{flex:1;overflow:hidden;background:#ffffff;width:100%}.virtual-table-body>div{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.3) transparent}.virtual-table-body>div::-webkit-scrollbar{width:8px}.virtual-table-body>div::-webkit-scrollbar-track{background:transparent}.virtual-table-body>div::-webkit-scrollbar-thumb{background:rgba(0,0,0,.2);border-radius:4px}.virtual-table-body>div::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.4)}.virtual-row{display:flex;align-items:center;border-bottom:1px solid #dee2e6;background:#ffffff;width:100%}.virtual-row.data-row{cursor:pointer}.virtual-row.data-row:hover{background:#f5f5f5}.virtual-row.even{background:#ffffff}.virtual-row.odd{background:#f8f9fa}.virtual-cell{padding:4px 8px;font-size:12px;font-weight:500;color:#212529;border-right:1px solid #dee2e6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;height:100%}.virtual-cell.col-row-number{width:50px;flex:0 0 50px;justify-content:center;background-color:#000;color:#fff;font-weight:700}.virtual-cell.col-responsible{width:120px;flex:0 0 120px;justify-content:flex-start}.virtual-cell.col-client{width:200px;flex:0 0 200px;justify-content:flex-start}.virtual-cell.col-campaign{width:100px;flex:0 0 100px;justify-content:center}.all-campaigns-tab .virtual-header-cell.col-start-date,.all-campaigns-tab .virtual-cell.col-start-date{width:130px;flex:0 0 130px;justify-content:center}.all-campaigns-tab .virtual-header-cell.col-end-date,.all-campaigns-tab .virtual-cell.col-end-date{width:130px;flex:0 0 130px}.all-campaigns-tab .virtual-header-cell.col-75-date,.all-campaigns-tab .virtual-cell.col-75-date{width:130px;flex:0 0 130px;justify-content:center}.all-campaigns-tab .virtual-cell.col-75-date.past-cutoff{color:#c00!important;font-weight:600}.all-campaigns-tab .virtual-header-cell.col-days-left,.all-campaigns-tab .virtual-cell.col-days-left{width:80px;flex:0 0 80px;justify-content:center;border-right:3px solid #000000!important}.all-campaigns-tab .virtual-cell.col-min-links,.all-campaigns-tab .virtual-cell.col-links-added{width:110px;flex:0 0 110px;justify-content:center}.virtual-cell.col-status{width:100px;flex:0 0 100px;justify-content:center}.virtual-cell.col-actions{flex:1 1 auto;min-width:150px;justify-content:center}.virtual-table-footer{padding:12px 16px;background:var(--bg-surface);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;align-items:center}.record-count{font-size:13px;color:var(--text-secondary);font-weight:500}.no-campaigns-message{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary)}.btn-clear-filters{margin-top:16px;padding:8px 16px;background:var(--primary-color);color:#fff;border:none;border-radius:4px;cursor:pointer}.virtual-table-header .filter-icon{display:inline-block;font-size:.7rem;color:#fff;opacity:.6;cursor:pointer;transition:all .15s ease;flex-shrink:0}.virtual-table-header .filter-icon.active{color:#4fc3f7;opacity:1;font-weight:900}.virtual-table-header .virtual-cell:hover .filter-icon{opacity:.9;color:#fff}[data-theme=dark] .virtual-table-container{background:#ffffff;border-color:#dee2e6}[data-theme=dark] .virtual-row.data-row:hover{background:#f5f5f5}[data-theme=dark] .virtual-cell.col-row-number{background-color:#000;color:#fff}.campaigns-header{padding:20px 24px;background:var(--bg-surface);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;gap:16px}.campaigns-stats{display:flex;align-items:center;gap:8px}.campaigns-stats .stat-label{font-size:12px;color:var(--text-secondary);font-weight:500}.campaigns-stats .stat-value{font-size:32px;font-weight:600;color:var(--text-primary)}.archive-toggle{display:flex;align-items:center;gap:8px;margin-left:16px}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px;cursor:pointer}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border-color);transition:.3s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:var(--bg-primary);transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:var(--btn-primary-bg)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.toggle-label{font-size:14px;color:var(--text-primary);font-weight:500}.campaigns-filters{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.campaigns-filters .user-filter-selector,.campaigns-filters .client-filter-selector{width:200px;min-width:200px;max-width:200px}.campaigns-filters .user-filter-selector .selector-button,.campaigns-filters .client-filter-selector .selector-button{font-size:13px;padding:8px 12px;width:200px;border-radius:6px}.campaigns-filters .user-filter-selector .selector-selected-text,.campaigns-filters .client-filter-selector .selector-selected-text,.campaigns-filters .user-filter-selector .selector-item-default,.campaigns-filters .client-filter-selector .selector-item-default{font-size:13px}.status-filter{padding:8px 12px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:6px;font-size:13px;color:var(--text-primary);cursor:pointer;transition:border-color .2s ease;min-width:160px}.status-filter:hover{border-color:var(--btn-primary-bg)}.status-filter:focus{outline:none;border-color:var(--btn-primary-bg)}.all-campaigns-table-wrapper{flex:1;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-surface)}.all-campaigns-table-container{flex:1;overflow:auto;background:var(--bg-surface);margin:0}.all-campaigns-table-container::-webkit-scrollbar{width:12px;height:12px}.all-campaigns-table-container::-webkit-scrollbar-track{background:var(--bg-secondary)}.all-campaigns-table-container::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:6px}.all-campaigns-table-container::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.all-campaigns-table{border-collapse:collapse;table-layout:fixed;border:1px solid var(--border-color)}.all-campaigns-table thead{position:sticky;top:0;z-index:10;background:var(--bg-header-inverted);border-bottom:1px solid var(--border-color)}.all-campaigns-table th{padding:0 8px;text-align:center;font-size:11px;font-weight:700;color:var(--text-header-inverted);text-transform:uppercase;letter-spacing:.5px;background-color:var(--bg-header-inverted);position:sticky;top:0;z-index:10;border:1px solid var(--border-color);border-top:none;white-space:nowrap;vertical-align:middle;height:32px;line-height:32px}.all-campaigns-table th:nth-child(2){text-align:left}.all-campaigns-table th>span{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px;white-space:nowrap;flex-wrap:nowrap}.all-campaigns-table .col-row-number{width:50px;background-color:#000;color:#fff;text-align:center;font-weight:700;font-size:12px}[data-theme=dark] .all-campaigns-table .col-row-number{background-color:#000;color:#fff}.all-campaigns-table .row-number{width:50px;background-color:#000!important;color:#fff!important;text-align:center;font-weight:600;font-size:11px;line-height:36px}[data-theme=dark] .all-campaigns-table .row-number{background-color:#000!important;color:#fff!important}.all-campaigns-table th:nth-child(3),.all-campaigns-table td:nth-child(3){text-align:center!important}.all-campaigns-table .actions-header{text-align:center!important}.all-campaigns-table .col-client{width:180px!important}.all-campaigns-table th:nth-child(2),.all-campaigns-table td:nth-child(2){width:180px!important}.all-campaigns-table th:nth-child(3),.all-campaigns-table td:nth-child(3){width:115px!important;border-right:3px solid #000000!important}[data-theme=dark] .all-campaigns-table td:nth-child(3){border-right:3px solid #000000!important}.all-campaigns-table thead th:nth-child(3){border-right:none!important;position:relative}.all-campaigns-table thead th:nth-child(3):after{content:"";position:absolute;right:0;top:0;bottom:0;width:3px;background-color:#fff;z-index:1}[data-theme=dark] .all-campaigns-table thead th:nth-child(3):after{background-color:#000}.all-campaigns-table th:nth-child(4),.all-campaigns-table td:nth-child(4){width:100px}.all-campaigns-table th:nth-child(5),.all-campaigns-table td:nth-child(5){width:100px}.all-campaigns-table th:nth-child(6),.all-campaigns-table td:nth-child(6){width:120px;border-right:3px solid #000000!important}[data-theme=dark] .all-campaigns-table td:nth-child(6){border-right:3px solid #000000!important}.all-campaigns-table thead th:nth-child(6){border-right:none!important;position:relative}.all-campaigns-table thead th:nth-child(6):after{content:"";position:absolute;right:0;top:0;bottom:0;width:3px;background-color:#fff;z-index:1}[data-theme=dark] .all-campaigns-table thead th:nth-child(6):after{background-color:#000}.all-campaigns-table th:nth-child(7),.all-campaigns-table td:nth-child(7){width:80px}.all-campaigns-table th:nth-child(8),.all-campaigns-table td:nth-child(8){width:80px}.all-campaigns-table th:nth-child(9),.all-campaigns-table td:nth-child(9){width:100px}.all-campaigns-table th:nth-child(10),.all-campaigns-table td:nth-child(10){width:180px}.all-campaigns-table tbody tr{transition:background-color .2s ease;height:36px;max-height:36px}.all-campaigns-table tbody tr:nth-child(2n) td:not(.row-number){background-color:var(--bg-tertiary)!important}.all-campaigns-table tbody tr:hover{background:var(--bg-hover)}.all-campaigns-table td{padding:0 8px;font-size:13px;font-weight:500;color:var(--text-primary);text-align:center;border:1px solid var(--border-color);vertical-align:middle;height:36px;line-height:36px}.all-campaigns-table td:nth-child(2){text-align:left}.all-campaigns-table td:nth-child(3){text-align:center!important}.all-campaigns-table .client-name{font-weight:500;font-size:13px}.all-campaigns-table .client-name .campaign-link,.all-campaigns-table .client-name .campaign-link:hover{color:var(--text-primary);text-decoration:none}.all-campaigns-table .campaign-number{color:var(--text-primary);font-weight:500;font-size:13px;text-align:center!important}.all-campaigns-table tbody td.campaign-number{text-align:center!important}.all-campaigns-table .campaign-number a,.all-campaigns-table .campaign-number .campaign-link{display:inline-block;text-align:center;width:100%;text-decoration:none;color:inherit}.all-campaigns-table .text-center{text-align:center}.all-campaigns-table .delivered{font-weight:500;font-size:13px;color:var(--success-color)}.all-campaigns-table .remaining{font-size:13px;color:var(--text-secondary)}.progress-cell{min-width:150px;line-height:normal!important}.progress-wrapper{display:flex;align-items:center;gap:6px;height:100%}.progress-bar-container{flex:1;height:6px;background:var(--bg-hover);border-radius:3px;overflow:hidden}.progress-bar-fill{height:100%;border-radius:4px;transition:width .3s ease,background-color .3s ease}.progress-text{font-size:11px;font-weight:600;color:var(--text-secondary);min-width:32px;text-align:right}.no-campaigns{text-align:center;padding:60px;color:var(--text-secondary);font-size:14px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px}.no-campaigns-row td{padding:60px 20px!important;text-align:center;height:100vh;vertical-align:middle}.no-campaigns-message{display:flex!important;flex-direction:column!important;align-items:center!important;gap:16px!important;color:var(--text-secondary);font-size:14px}.btn-clear-filters{margin-top:16px;padding:8px 16px;background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:13px;cursor:pointer;transition:all .2s ease}.btn-clear-filters:hover{background:var(--bg-surface-hover);border-color:var(--primary);color:var(--primary)}.all-campaigns-loading{display:flex;align-items:center;justify-content:center;padding:60px;color:var(--text-secondary)}.all-campaigns-table thead th{position:relative}.all-campaigns-table thead th .filter-icon{display:inline-block;font-size:.7rem;color:#fff;opacity:.6;cursor:pointer;transition:all .15s ease;flex-shrink:0;margin-left:auto}.all-campaigns-table thead th .filter-icon.active{color:#4fc3f7;opacity:1;font-weight:900}.all-campaigns-table thead th:hover .filter-icon{opacity:.9;color:#fff}.all-campaigns-table thead th:hover .filter-icon.active{opacity:1;color:#4fc3f7}.filter-dropdown{position:absolute;top:100%;left:0;min-width:220px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:4px;box-shadow:var(--shadow-md);z-index:1000;margin-top:4px}.filter-search-input:focus{border-color:var(--btn-primary-bg);box-shadow:var(--input-focus-shadow)}.pagination-wrapper{padding:12px;border-top:1px solid var(--border-color);background:var(--bg-surface);flex-shrink:0}.actions-cell{text-align:center!important;white-space:nowrap;line-height:normal!important}.action-buttons{display:flex;flex-direction:row;flex-wrap:nowrap;gap:3px;justify-content:center!important;align-items:center}.action-buttons .btn{padding:2px 5px;font-size:10px;min-width:55px;width:auto;height:22px;line-height:1;border-radius:3px}.action-buttons .btn-edit{width:22px;min-width:22px;height:22px;padding:2px;display:flex;align-items:center;justify-content:center;font-size:11px}.btn-complete{background:var(--status-green);color:#fff;border:1px solid var(--status-green)}.btn-complete:hover{background:var(--color-success);border-color:var(--color-success)}.btn-archive{background:var(--status-gray);color:#fff;border:1px solid var(--status-gray)}.btn-archive:hover{background:var(--text-secondary);border-color:var(--text-secondary)}.btn-reactivate{background:var(--status-blue);color:#fff;border:1px solid var(--status-blue)}.btn-reactivate:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.confirmation-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:var(--bg-overlay);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.confirmation-modal{background-color:var(--bg-surface);border-radius:8px;box-shadow:var(--shadow-md);max-width:600px;width:90%;max-height:90vh;overflow-y:auto;animation:slideDown .2s ease}@keyframes slideDown{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.confirmation-header{padding:20px 24px;border-bottom:1px solid var(--border-color)}.confirmation-header h3{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.confirmation-body{padding:24px}.confirmation-message{margin:0 0 16px;font-size:15px;color:var(--text-primary);line-height:1.5}.confirmation-campaign-preview{padding:12px;background-color:var(--bg-hover);border-radius:6px;border-left:3px solid var(--btn-primary-bg);margin-bottom:16px}.confirmation-campaign-preview strong{font-size:14px;color:var(--text-primary)}.confirmation-stats{margin-top:8px;display:flex;flex-direction:column;gap:4px}.confirmation-stats small{font-size:12px;color:var(--text-secondary);line-height:1.6}.confirmation-note{margin:0;font-size:13px;color:var(--text-secondary);line-height:1.5}.confirmation-note.warning{color:#dc2626;font-weight:500}.confirmation-note-final{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-color)}.confirmation-actions{padding:var(--spacing-md) var(--spacing-lg);border-top:1px solid var(--border-color);display:flex;gap:var(--spacing-sm);justify-content:flex-end;align-items:center}.confirmation-body .form-group{margin-bottom:0}.confirmation-body .form-group.reactivation-field{margin-top:16px}.confirmation-body .form-group label{display:block;margin-bottom:8px;font-size:13px;color:var(--text-primary)}.confirmation-body .form-group label.warning-label{color:var(--warning-color);font-weight:600}.confirmation-body .form-group label.success-label{color:var(--success-color);font-weight:600}.confirmation-body .form-group input[type=date],.confirmation-body .form-group input[type=number]{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;background-color:var(--bg-primary);color:var(--text-primary);font-size:14px;transition:border-color .2s ease}.confirmation-body .form-group input[type=date]:focus,.confirmation-body .form-group input[type=number]:focus{outline:none;border-color:var(--btn-primary-bg)}.confirmation-body .form-group input[type=date]::placeholder,.confirmation-body .form-group input[type=number]::placeholder{color:var(--text-tertiary)}.confirmation-mention-counts{margin:12px 0;padding:12px;background-color:var(--bg-hover);border-radius:6px;font-size:14px;color:var(--text-primary);text-align:center}@media (max-width: 768px){.confirmation-modal{max-width:95%;width:95%;max-height:95vh}.confirmation-header{padding:16px 20px}.confirmation-header h3{font-size:16px}.confirmation-body{padding:20px}.confirmation-actions{flex-direction:column-reverse;padding:16px 20px}.confirmation-actions .btn{width:100%}.confirmation-body .form-group input[type=date],.confirmation-body .form-group input[type=number]{padding:12px;font-size:16px}}@media (max-width: 1024px){.campaigns-header{flex-direction:column;align-items:stretch}.campaigns-stats{justify-content:center;margin-bottom:8px}.campaigns-filters{flex-direction:column;align-items:stretch}.campaigns-filters .user-filter-selector,.campaigns-filters .client-filter-selector,.status-filter{width:100%;max-width:100%}.all-campaigns-table-container{overflow-x:auto}.all-campaigns-table{min-width:800px}}.campaign-link{color:var(--primary-color);text-decoration:none;font-weight:500;transition:color .2s}.campaign-link:hover{color:var(--primary-color-hover);text-decoration:underline}.campaigns-actions{display:flex;gap:12px;align-items:center}.btn-add-campaign{padding:8px 16px;background:var(--btn-primary-bg);color:var(--btn-primary-text);border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-add-campaign:hover{background:var(--btn-primary-hover);transform:translateY(-1px)}.campaign-modal-large{max-width:600px;height:700px;display:flex;flex-direction:column;overflow:visible}.campaign-modal-large form{flex:1;display:flex;flex-direction:column;overflow:visible}.campaign-modal-large .modal-actions{margin-top:auto;padding-top:16px}.campaign-modal-large .modal-actions .btn-primary{width:160px}.modal-content.modal-wide{max-width:720px}.modal-content h2{margin:0;font-size:18px;color:var(--text-primary)}.form-split-container{display:flex;gap:0;flex:1}.form-split-left{flex:2;padding-right:20px}.form-split-separator{width:1px;background:var(--border-color);margin:0 20px}.form-split-right{flex:1;display:flex;flex-direction:column}.form-split-left .form-row:last-child,.form-split-left .form-row:last-child .form-group{margin-bottom:11px}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--btn-primary-bg)}.form-row.form-row-three{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.form-row.form-row-three .form-group{margin-bottom:0}.modal-tab.active{color:var(--btn-primary-bg);border-bottom-color:var(--btn-primary-bg);opacity:1}.status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;line-height:1.2;background:#e5e7eb;color:#374151}.status-badge.status-active,.status-badge.status-completed,.status-badge.status-inactive,.status-badge.status-archived{background:#e5e7eb;color:#374151}.all-campaigns-tab .virtual-cell .status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;line-height:1.2;background:#E8EAED!important;width:75px;text-align:center}.all-campaigns-tab .virtual-cell .status-badge.status-active,.all-campaigns-tab .virtual-cell .status-badge.status-completed,.all-campaigns-tab .virtual-cell .status-badge.status-inactive,.all-campaigns-tab .virtual-cell .status-badge.status-archived{color:#000!important}.all-campaigns-tab .action-buttons{display:flex;gap:8px;align-items:center;justify-content:center}.all-campaigns-tab .action-icon-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;border-radius:4px;background:#f3f4f6;color:#374151;cursor:pointer;transition:all .15s ease}.all-campaigns-tab .action-icon-btn:hover{background:#e5e7eb;color:#111827}.all-campaigns-tab .action-icon-btn.action-complete{background:#dcfce7;color:#16a34a}.all-campaigns-tab .action-icon-btn.action-complete:hover{background:#bbf7d0;color:#15803d}.all-campaigns-tab .action-icon-btn.action-reactivate{background:#dbeafe;color:#2563eb}.all-campaigns-tab .action-icon-btn.action-reactivate:hover{background:#bfdbfe;color:#1d4ed8}.all-campaigns-tab .action-icon-btn.action-archive{background:#fef3c7;color:#d97706}.all-campaigns-tab .action-icon-btn.action-archive:hover{background:#fde68a;color:#b45309}.all-campaigns-tab .action-icon-btn.action-delete{background:#fee2e2;color:#dc2626}.all-campaigns-tab .action-icon-btn.action-delete:hover{background:#fecaca;color:#b91c1c}.all-campaigns-tab .action-icon-btn svg{flex-shrink:0}.all-campaigns-table td .status-badge{vertical-align:middle}[data-theme=dark] .all-campaigns-table-wrapper{background:#ffffff;border-color:#dee2e6}[data-theme=dark] .all-campaigns-table-container{background:#ffffff}[data-theme=dark] .all-campaigns-table{background:#ffffff;border-color:#dee2e6}[data-theme=dark] .all-campaigns-table thead{background:#1a1a1a}[data-theme=dark] .all-campaigns-table th{background-color:#1a1a1a;color:#f8f9fa;border-color:#dee2e6}[data-theme=dark] .all-campaigns-table thead th .filter-icon{color:#fff}[data-theme=dark] .all-campaigns-table thead th .filter-icon.active{color:#4fc3f7}[data-theme=dark] .all-campaigns-table thead th:hover .filter-icon{color:#fff}[data-theme=dark] .all-campaigns-table thead th:hover{background:#2a2a2a!important}[data-theme=dark] .all-campaigns-table tbody tr{border-color:#dee2e6}[data-theme=dark] .all-campaigns-table tbody tr:nth-child(2n) td:not(.row-number){background-color:#e9ecef!important}[data-theme=dark] .all-campaigns-table tbody tr:hover{background:#f5f5f5}[data-theme=dark] .all-campaigns-table td{color:#212529;border-color:#dee2e6;background-color:#fff}[data-theme=dark] .all-campaigns-table .client-name,[data-theme=dark] .all-campaigns-table .client-name .campaign-link,[data-theme=dark] .all-campaigns-table .campaign-number,[data-theme=dark] .all-campaigns-table .campaign-number .campaign-link{color:#212529}[data-theme=dark] .all-campaigns-table .remaining{color:#6c757d}[data-theme=dark] .all-campaigns-table .progress-bar-container{background:#f5f5f5}[data-theme=dark] .all-campaigns-table .progress-text{color:#6c757d}[data-theme=dark] .all-campaigns-table .status-badge.status-completed{background-color:#22c55e33!important;color:#22c55e!important}[data-theme=dark] .all-campaigns-table .status-badge.status-inactive{background-color:#f59e0b33!important;color:#f59e0b!important}[data-theme=dark] .all-campaigns-table .status-badge.status-archived{background-color:#6b728033!important;color:#6b7280!important}[data-theme=dark] .all-campaigns-table .btn-complete{background:#212529!important;color:#fff!important;border:1px solid #212529!important}[data-theme=dark] .all-campaigns-table .btn-complete:hover{background:#000000!important;border-color:#000!important}[data-theme=dark] .all-campaigns-table .btn-archive{background:#6c757d!important;color:#fff!important;border:1px solid #6c757d!important}[data-theme=dark] .all-campaigns-table .btn-archive:hover{background:#5a6268!important;border-color:#5a6268!important}[data-theme=dark] .all-campaigns-table .btn-reactivate{background:#0066cc!important;color:#fff!important;border:1px solid #0066cc!important}[data-theme=dark] .all-campaigns-table .btn-reactivate:hover{background:#0052a3!important;border-color:#0052a3!important}[data-theme=dark] .all-campaigns-tab .filter-dropdown{background:#ffffff;border-color:#dee2e6}[data-theme=dark] .all-campaigns-tab .filter-dropdown-header{background:#f8f9fa;color:#212529;border-color:#dee2e6}[data-theme=dark] .all-campaigns-tab .filter-dropdown-search{background:#ffffff;border-color:#dee2e6}[data-theme=dark] .all-campaigns-tab .filter-dropdown-content{background:#ffffff}[data-theme=dark] .all-campaigns-tab .filter-option{color:#212529}[data-theme=dark] .all-campaigns-tab .filter-option:hover{background:#f5f5f5}[data-theme=dark] .all-campaigns-tab .filter-option.selected{background:transparent}[data-theme=dark] .all-campaigns-tab .filter-option span{color:#212529}[data-theme=dark] .all-campaigns-tab .filter-search-input{background:#ffffff;color:#212529;border-color:#dee2e6}[data-theme=dark] .all-campaigns-table-container::-webkit-scrollbar-track{background:#f8f9fa}[data-theme=dark] .all-campaigns-table-container::-webkit-scrollbar-thumb{background:#dee2e6}[data-theme=dark] .all-campaigns-table-container::-webkit-scrollbar-thumb:hover{background:#adb5bd}.all-campaigns-tab .virtual-cell.col-row-number{background-color:#000!important;color:#fff!important;font-weight:700;border-color:#000!important;border-bottom:1px solid #ffffff!important}.all-campaigns-tab .virtual-row.row-green{background:#B7E1CD!important;border-color:#000!important}.all-campaigns-tab .virtual-row.row-green .virtual-cell{color:#000!important;border-color:#000!important}.all-campaigns-tab .virtual-row.row-green .campaign-link{color:#000!important}.all-campaigns-tab .virtual-row.row-dark-red{background:#CC0000!important;border-color:#000!important}.all-campaigns-tab .virtual-row.row-dark-red .virtual-cell{color:#000!important;border-color:#000!important}.all-campaigns-tab .virtual-row.row-dark-red .campaign-link{color:#000!important}.all-campaigns-tab .virtual-row.row-red{background:#E06666!important;border-color:#000!important}.all-campaigns-tab .virtual-row.row-red .virtual-cell{color:#000!important;border-color:#000!important}.all-campaigns-tab .virtual-row.row-red .campaign-link{color:#000!important}.all-campaigns-tab .virtual-row.row-orange{background:#F6B26B!important;border-color:#000!important}.all-campaigns-tab .virtual-row.row-orange .virtual-cell{color:#000!important;border-color:#000!important}.all-campaigns-tab .virtual-row.row-orange .campaign-link{color:#000!important}.all-campaigns-tab .virtual-row.row-peach{background:#FCE5CD!important;border-color:#000!important}.all-campaigns-tab .virtual-row.row-peach .virtual-cell{color:#000!important;border-color:#000!important}.all-campaigns-tab .virtual-row.row-peach .campaign-link{color:#000!important}.all-campaigns-tab .virtual-row.row-green .virtual-cell.col-row-number,.all-campaigns-tab .virtual-row.row-dark-red .virtual-cell.col-row-number,.all-campaigns-tab .virtual-row.row-red .virtual-cell.col-row-number,.all-campaigns-tab .virtual-row.row-orange .virtual-cell.col-row-number,.all-campaigns-tab .virtual-row.row-peach .virtual-cell.col-row-number{color:#fff!important;background-color:#000!important;border-color:#000!important;border-bottom:1px solid #ffffff!important}[data-theme=dark] .all-campaigns-tab .virtual-row.row-green{background:#B7E1CD!important}[data-theme=dark] .all-campaigns-tab .virtual-row.row-green .virtual-cell,[data-theme=dark] .all-campaigns-tab .virtual-row.row-green .campaign-link{color:#000!important}[data-theme=dark] .all-campaigns-tab .virtual-row.row-dark-red{background:#CC0000!important}[data-theme=dark] .all-campaigns-tab .virtual-row.row-dark-red .virtual-cell,[data-theme=dark] .all-campaigns-tab .virtual-row.row-dark-red .campaign-link{color:#000!important}[data-theme=dark] .all-campaigns-tab .virtual-row.row-red{background:#E06666!important}[data-theme=dark] .all-campaigns-tab .virtual-row.row-red .virtual-cell,[data-theme=dark] .all-campaigns-tab .virtual-row.row-red .campaign-link{color:#000!important}[data-theme=dark] .all-campaigns-tab .virtual-row.row-orange{background:#F6B26B!important}[data-theme=dark] .all-campaigns-tab .virtual-row.row-orange .virtual-cell,[data-theme=dark] .all-campaigns-tab .virtual-row.row-orange .campaign-link{color:#000!important}[data-theme=dark] .all-campaigns-tab .virtual-row.row-peach{background:#FCE5CD!important}[data-theme=dark] .all-campaigns-tab .virtual-row.row-peach .virtual-cell,[data-theme=dark] .all-campaigns-tab .virtual-row.row-peach .campaign-link{color:#000!important}[data-theme=dark] .all-campaigns-tab .virtual-row.row-green .virtual-cell.col-row-number,[data-theme=dark] .all-campaigns-tab .virtual-row.row-dark-red .virtual-cell.col-row-number,[data-theme=dark] .all-campaigns-tab .virtual-row.row-red .virtual-cell.col-row-number,[data-theme=dark] .all-campaigns-tab .virtual-row.row-orange .virtual-cell.col-row-number,[data-theme=dark] .all-campaigns-tab .virtual-row.row-peach .virtual-cell.col-row-number{color:#fff!important;background-color:#000!important}.all-campaigns-tab .assigned-users-section{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-color)}.all-campaigns-tab .assigned-users-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.all-campaigns-tab .assigned-users-header label{font-weight:600;font-size:14px;color:var(--text-primary)}.all-campaigns-tab .fifty-percent-date{font-size:12px;color:var(--text-secondary);background:var(--bg-hover);padding:4px 8px;border-radius:4px}.all-campaigns-tab .assigned-users-list{background:var(--bg-hover);border-radius:6px;padding:8px;min-height:60px;margin-bottom:8px}.all-campaigns-tab .no-users-message{text-align:center;color:var(--text-secondary);font-size:13px;padding:16px;font-style:italic}.all-campaigns-tab .assigned-user-row{display:flex;align-items:center;gap:12px;padding:8px 10px;background:var(--bg-surface);border-radius:4px;margin-bottom:6px}.all-campaigns-tab .assigned-user-row:last-child{margin-bottom:0}.all-campaigns-tab .user-icon{font-size:14px}.all-campaigns-tab .user-name{flex:1;font-size:13px;font-weight:500;color:var(--text-primary)}.all-campaigns-tab .user-added-date{font-size:12px;color:var(--text-secondary)}.all-campaigns-tab .role-badge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;text-transform:uppercase;letter-spacing:.3px}.all-campaigns-tab .role-badge.role-responsible{background:#d4edda;color:#155724}.all-campaigns-tab .role-badge.role-support{background:#fff3cd;color:#856404}.all-campaigns-tab .remove-user-btn{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;font-size:14px;padding:4px 8px;border-radius:4px;transition:all .15s}.all-campaigns-tab .remove-user-btn:hover{background:#f8d7da;color:#721c24}.all-campaigns-tab .add-user-row{margin-top:8px}.all-campaigns-tab .add-user-select{width:100%;padding:8px 12px;font-size:13px;border:1px dashed var(--border-color);border-radius:4px;background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;transition:border-color .15s}.all-campaigns-tab .add-user-select:hover{border-color:var(--primary-color)}.all-campaigns-tab .add-user-select:focus{outline:none;border-color:var(--primary-color);border-style:solid}[data-theme=dark] .all-campaigns-tab .role-badge.role-responsible{background:#1e4d2b;color:#a3d9a5}[data-theme=dark] .all-campaigns-tab .role-badge.role-support{background:#5c4813;color:#ffc107}[data-theme=dark] .all-campaigns-tab .remove-user-btn:hover{background:#5c2226;color:#f5c6cb}.multi-select-dropdown{position:relative}.multi-select-display{padding:8px 12px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-surface);color:var(--text-primary);cursor:pointer;font-size:13px;min-height:36px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.multi-select-display:hover{border-color:var(--primary-color)}.multi-select-options{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:4px;box-shadow:0 4px 12px #00000026;z-index:1000;max-height:200px;overflow-y:auto;margin-top:2px;padding:4px 0}.multi-select-options.show{display:block}.multi-select-option{display:flex;align-items:center;gap:6px;padding:5px 10px;cursor:pointer;font-size:13px;line-height:1.2}.multi-select-option:hover{background:var(--bg-hover)}.multi-select-option input[type=checkbox]{margin:0;cursor:pointer;width:14px;height:14px;flex-shrink:0}.multi-select-option span{white-space:nowrap}.client-users-display{padding:8px 12px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-hover);color:var(--text-secondary);font-size:13px;min-height:36px}.add-link-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.add-link-form .form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.add-link-form .form-group label{font-size:.9rem;font-weight:600;color:var(--text-primary)}.add-link-form .form-group input,.add-link-form .form-group select{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.95rem;transition:border-color .2s,box-shadow .2s}.add-link-form .form-group input:hover,.add-link-form .form-group select:hover{border-color:var(--primary-color)}.add-link-form .form-group input:focus,.add-link-form .form-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.add-link-form .form-group input[type=number]{text-align:center}.add-link-form .form-group select:disabled,.add-link-form .form-group input:disabled{background:var(--bg-secondary);color:var(--text-secondary);cursor:not-allowed}.add-link-form .form-row{display:flex;gap:var(--spacing-md)}.add-link-form .disabled-input{background:var(--bg-secondary);color:var(--text-secondary);cursor:not-allowed}.searchable-dropdown{position:absolute;top:100%;left:0;right:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);z-index:100;max-height:200px;overflow-y:auto;margin-top:4px}.searchable-dropdown-item{padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:background .2s}.searchable-dropdown-empty{padding:var(--spacing-sm) var(--spacing-md);color:var(--text-secondary);font-style:italic}.link-check-message{display:block;margin-top:var(--spacing-xs);font-size:.85rem;font-weight:500}.link-check-loading{color:var(--text-secondary)}.link-check-success{color:var(--status-green)}.link-check-warning{color:var(--status-orange)}.link-check-error{color:var(--status-red)}.add-link-form .modal-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.add-link-form.multi-link{min-width:700px}.shared-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.shared-fields .form-group{margin-bottom:0}.url-rows-section{margin-top:var(--spacing-md)}.url-rows-header{display:grid;grid-template-columns:1fr 80px 80px 50px 40px;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em}.url-rows-list{max-height:300px;overflow-y:auto;margin-top:var(--spacing-sm)}.url-row{display:grid;grid-template-columns:1fr 80px 80px 50px 40px;gap:var(--spacing-sm);padding:var(--spacing-sm);border-bottom:1px solid var(--border-color-light);align-items:start}.url-row:last-child{border-bottom:none}.url-row.blocked{background:rgba(239,68,68,.05)}.url-row .col-url{display:flex;flex-direction:column;gap:4px}.url-row .col-url input{width:100%;padding:var(--spacing-xs) var(--spacing-sm);font-size:.85rem;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary)}.url-row .col-url input:focus{outline:none;border-color:var(--primary-color)}.url-row .col-linked input,.url-row .col-unlinked input{width:100%;padding:var(--spacing-xs);font-size:.85rem;text-align:center;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary)}.url-row .col-linked input:focus,.url-row .col-unlinked input:focus{outline:none;border-color:var(--primary-color)}.url-row .col-status{display:flex;align-items:center;justify-content:center;padding-top:6px}.url-row .col-actions{display:flex;align-items:center;justify-content:center;padding-top:4px}.status-icon{font-size:1.1rem;font-weight:700}.status-icon.checking{color:var(--text-secondary);animation:spin 1s linear infinite}.status-icon.success{color:#10b981}.status-icon.warning{color:#f59e0b}.status-icon.error{color:#ef4444}.check-message{font-size:.75rem;line-height:1.3}.check-message.success{color:#10b981}.check-message.warning{color:#f59e0b}.check-message.error{color:#ef4444}.remove-row-btn{width:28px;height:28px;border:none;background:transparent;color:var(--text-secondary);font-size:1.2rem;cursor:pointer;border-radius:var(--radius-sm);transition:all .2s;display:flex;align-items:center;justify-content:center}.remove-row-btn:hover:not(:disabled){background:rgba(239,68,68,.1);color:#ef4444}.remove-row-btn:disabled{opacity:.3;cursor:not-allowed}.add-row-btn{width:100%;padding:var(--spacing-sm);margin-top:var(--spacing-sm);background:transparent;border:2px dashed var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s}.add-row-btn:hover{border-color:var(--primary-color);color:var(--primary-color);background:rgba(59,130,246,.05)}.submit-summary{display:flex;gap:var(--spacing-md);padding:var(--spacing-sm) 0;font-size:.85rem;font-weight:500}.summary-checking{color:var(--text-secondary)}.summary-ready{color:#10b981}.summary-blocked{color:#ef4444}[data-theme=dark] .url-row.blocked{background:rgba(239,68,68,.1)}[data-theme=dark] .add-row-btn:hover{background:rgba(59,130,246,.1)}@media (max-width: 800px){.add-link-form.multi-link{min-width:auto}.shared-fields{grid-template-columns:1fr}.url-rows-header,.url-row{grid-template-columns:1fr 60px 60px 40px 32px}}.link-attribution-modal .modal-body{padding:0}.attribution-content{padding:var(--spacing-lg)}.attribution-url{margin-bottom:var(--spacing-lg);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--border-radius-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attribution-url a{color:var(--text-link);text-decoration:none;font-size:var(--font-size-sm)}.attribution-url a:hover{text-decoration:underline}.attribution-section{margin-bottom:var(--spacing-lg)}.attribution-section:last-of-type{margin-bottom:var(--spacing-xl)}.section-title{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0 0 var(--spacing-sm) 0}.section-content{padding:var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--border-radius-md)}.section-content.mismatch{border-color:var(--color-error);background:var(--bg-error-subtle, rgba(220, 53, 69, .05))}.section-content.highlight{background:var(--bg-warning-subtle, rgba(255, 193, 7, .1))}.current-value{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.current-value .label{color:var(--text-secondary);font-size:var(--font-size-sm)}.current-value .value{font-weight:500;color:var(--text-primary)}.badge.override{font-size:var(--font-size-xs);padding:2px 6px;background:var(--bg-info-subtle, rgba(13, 110, 253, .1));color:var(--color-info, #0d6efd);border-radius:var(--border-radius-sm)}.user-select select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:var(--font-size-md)}.user-select select:focus{outline:none;border-color:var(--color-primary)}.section-content.sender{display:flex;align-items:center;justify-content:space-between}.section-content.sender .value{font-weight:500;color:var(--text-primary)}.section-content.campaign{display:flex;flex-direction:column;gap:var(--spacing-sm)}.campaign-subject{font-weight:500;color:var(--text-primary)}.campaign-meta{display:flex;gap:var(--spacing-lg);font-size:var(--font-size-sm);color:var(--text-secondary)}.campaign-meta strong{color:var(--text-primary)}.section-content.recipient{display:flex;flex-direction:column;gap:var(--spacing-xs)}.journalist-name{font-weight:500;color:var(--text-primary)}.journalist-email{font-size:var(--font-size-sm);color:var(--text-secondary)}.no-attribution{padding:var(--spacing-lg);text-align:center;color:var(--text-secondary);background:var(--bg-tertiary);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-lg)}.no-attribution-message{margin-bottom:var(--spacing-md);font-weight:500}.no-attribution-actions{display:flex;gap:var(--spacing-sm);justify-content:center;flex-wrap:wrap}.manual-campaign-select{margin-top:var(--spacing-md);text-align:left}.manual-campaign-select .section-title{text-align:left;margin-bottom:var(--spacing-sm)}.manual-campaign-select .loading,.manual-campaign-select .no-campaigns{padding:var(--spacing-md);color:var(--text-muted);font-size:var(--font-size-sm);text-align:center}.campaign-select{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--border-radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:var(--font-size-md);margin-bottom:var(--spacing-sm)}.campaign-select:focus{outline:none;border-color:var(--color-primary)}.manual-select-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end}.user-select label{display:block;font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.attribution-actions{display:flex;align-items:center;gap:var(--spacing-sm);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.action-spacer{flex:1}.aws-links-tab,.completed-links-tab{height:100%;overflow:hidden;display:flex;flex-direction:column}.aws-header{padding:20px 24px;background:var(--bg-surface);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;gap:24px}.links-stats{display:flex;align-items:center;gap:8px;flex-shrink:0;width:180px}.stat-label{font-size:12px;color:var(--text-secondary);font-weight:500;white-space:nowrap}.stat-value{font-size:14px;color:var(--text-primary);font-weight:600;min-width:70px;text-align:left}.header-left{display:flex;align-items:center;flex:1}.header-right{display:flex;align-items:center;flex-shrink:0}.switch{position:relative;display:inline-block;width:46px;height:24px;background-color:var(--border-color);border-radius:22px;transition:all .3s;cursor:pointer}.switch:after{content:"";position:absolute;width:22px;height:22px;border-radius:22px;background-color:var(--text-primary);top:1px;left:1px;transition:all .3s;box-shadow:0 2px 4px #0003}input[type=checkbox]:checked+.switch:after{transform:translate(22px)}input[type=checkbox]:checked+.switch{background-color:var(--btn-primary-bg)}.offscreen{position:absolute;left:-9999px}.toggle-label{font-size:.875rem;font-weight:500;color:var(--text-primary);white-space:nowrap;margin-left:12px;display:inline-block;vertical-align:middle}.aws-table-wrapper{flex:1;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border-color);background:var(--bg-surface);width:100%;max-width:100%}.virtual-table-scroll-container{flex:1;display:flex;flex-direction:column;overflow:hidden;width:100%;max-width:100%;min-height:0}.virtual-table-header{display:flex;align-items:center;background:var(--bg-header-inverted);border-bottom:1px solid var(--border-color);flex-shrink:0;width:100%;box-sizing:border-box;overflow:visible;position:relative;z-index:10}.header-scrollbar-spacer{width:12px;flex-shrink:0}.virtual-header-cell{padding:4px 8px;font-size:12px;font-weight:700;color:var(--text-header-inverted);text-transform:uppercase;letter-spacing:.5px;border-right:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between;gap:6px;white-space:nowrap;position:relative;overflow:visible}.virtual-header-cell:last-child{border-right:none}.virtual-header-cell.sortable{cursor:pointer}.virtual-header-cell.sortable:hover{background:rgba(255,255,255,.1)}.virtual-header-cell .filter-icon,.virtual-header-cell .sort-icon{display:inline-block;font-size:.7rem;color:#fff;opacity:.6;cursor:pointer;transition:all .15s ease;flex-shrink:0;margin-left:auto}.virtual-header-cell .filter-icon.active{color:#4fc3f7;opacity:1;font-weight:900}.virtual-header-cell:hover .filter-icon{opacity:.9;color:#fff}[data-theme=dark] .virtual-header-cell .filter-icon,[data-theme=dark] .virtual-header-cell .sort-icon{color:#fff}[data-theme=dark] .virtual-header-cell .filter-icon.active{color:#4fc3f7}[data-theme=dark] .virtual-header-cell:hover .filter-icon,[data-theme=dark] .virtual-header-cell:hover .sort-icon{color:#fff}.virtual-table-body{flex:1;overflow-y:auto;overflow-x:hidden;background:#ffffff;width:100%;position:relative;min-height:0;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.3) transparent}.virtual-table-body::-webkit-scrollbar{width:12px}.virtual-table-body::-webkit-scrollbar-track{background:rgba(0,0,0,.05)}.virtual-table-body::-webkit-scrollbar-thumb{background:rgba(0,0,0,.25);border-radius:6px}.virtual-table-body::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.4)}.virtual-row{display:flex;align-items:center;border-bottom:1px solid #dee2e6;background:#ffffff;width:100%!important;max-width:100%!important;overflow:hidden!important;box-sizing:border-box}.virtual-row:hover{background:#f5f5f5}.virtual-row.loading-row{opacity:.5}.virtual-cell{padding:2px 8px;font-size:14px;font-weight:500;color:#212529;border-right:1px solid #dee2e6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;height:100%;min-width:0}.virtual-cell:last-child{border-right:none}.virtual-header-cell.col-row-number,.virtual-cell.col-row-number{width:60px;flex:0 0 60px;justify-content:center;background-color:#000;color:#fff;font-weight:700}.virtual-header-cell.col-client,.virtual-cell.col-client{width:180px;flex:0 0 180px}.virtual-header-cell.col-url{flex:1 1 0;min-width:0;max-width:none;overflow:visible;position:relative}.virtual-cell.col-url{flex:1 1 0;min-width:0;max-width:none;overflow:hidden;position:relative}.virtual-cell.col-url a{display:block;position:absolute;left:8px;right:8px;top:50%;transform:translateY(-50%);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.virtual-cell.col-url a,.sheets-table .col-url a,.sheets-table td:nth-child(3) a,.sheets-table td:nth-child(4) a{font-family:Arial,sans-serif;font-size:15px;color:#15c;text-decoration:underline}.virtual-cell.col-url a:hover,.sheets-table .col-url a:hover,.sheets-table td:nth-child(3) a:hover,.sheets-table td:nth-child(4) a:hover{color:#15c;text-decoration:underline}[data-theme=dark] .virtual-cell.col-url a,[data-theme=dark] .sheets-table .col-url a,[data-theme=dark] .sheets-table td:nth-child(3) a,[data-theme=dark] .sheets-table td:nth-child(4) a{font-family:Arial,sans-serif;color:#15c}.virtual-row.row-has-completed-domain{background-color:#22c55e1a!important}.virtual-header-cell.col-date,.virtual-cell.col-date{width:140px;flex:0 0 140px;justify-content:center}.virtual-header-cell.col-status,.virtual-cell.col-status{width:120px;flex:0 0 120px;justify-content:center}.virtual-header-cell.col-mentions,.virtual-cell.col-mentions{width:180px;flex:0 0 180px;justify-content:center}.virtual-header-cell.col-action,.virtual-cell.col-action{width:130px;flex:0 0 130px;justify-content:center}.completed-links-tab .virtual-header-cell.col-row-number,.completed-links-tab .virtual-cell.col-row-number{width:50px;flex:0 0 50px;justify-content:center}.aws-links-tab .virtual-header-cell.col-campaign,.aws-links-tab .virtual-cell.col-campaign{width:90px;flex:0 0 90px;justify-content:center}.virtual-cell.col-campaign.campaign-number-cell{position:relative;overflow:visible!important;border-right:1px solid #dee2e6!important}.virtual-cell .campaign-number-badge{cursor:pointer;padding:4px 12px;border-radius:4px;background-color:#e9ecef;color:#212529;display:inline-flex;align-items:center;justify-content:space-between;min-width:85px;width:95px}.virtual-cell .campaign-number-badge:after{content:"▾";font-size:14px;color:#6c757d;margin-left:8px}.virtual-cell .campaign-number-badge:hover{background-color:#dee2e6}.virtual-cell .campaign-number-badge.empty{background-color:#f8f9fa}.campaign-dropdown-fixed{background-color:#fff;border:2px solid #dee2e6;border-radius:6px;box-shadow:0 4px 16px #00000040;min-width:200px;max-height:300px;overflow-y:auto}.virtual-row.dropdown-active{background-color:#e3f2fd!important;box-shadow:inset 0 0 0 2px #2196f3}.virtual-header-cell.col-da,.virtual-cell.col-da{width:60px;flex:0 0 60px;justify-content:center}.virtual-header-cell.col-traffic,.virtual-cell.col-traffic{width:80px;flex:0 0 80px;justify-content:center}.virtual-header-cell.col-user,.virtual-cell.col-user{width:120px;flex:0 0 120px}.virtual-table-body .empty-state{display:flex;align-items:center;justify-content:center;height:100%;min-height:400px;color:var(--text-secondary);font-size:1rem;font-weight:500;background:#ffffff}[data-theme=dark] .virtual-table-header{background:#1a1a1a}[data-theme=dark] .virtual-header-cell{color:#f8f9fa}[data-theme=dark] .virtual-table-body,[data-theme=dark] .virtual-row{background:#ffffff}[data-theme=dark] .virtual-row:hover{background:#f5f5f5}[data-theme=dark] .virtual-cell{color:#212529}[data-theme=dark] .virtual-header-cell.col-row-number,[data-theme=dark] .virtual-cell.col-row-number{background-color:#000;color:#fff}[data-theme=dark] .virtual-cell .mention-input{background:#ffffff;color:#212529;border-color:#dee2e6}[data-theme=dark] .virtual-cell .mention-input:focus{border-color:#06c}[data-theme=dark] .virtual-cell .mention-input:hover{border-color:#6c757d}.sheets-table-container{flex:1;overflow:auto;background:var(--bg-surface);margin:0}.sheets-table{width:100%;border-collapse:collapse;font-size:.875rem;background:var(--bg-surface);table-layout:auto}.aws-links-tab .sheets-table{table-layout:fixed}.sheets-table thead{position:sticky;top:0;z-index:10;background:var(--bg-header-inverted);border-bottom:1px solid var(--border-color)}.sheets-table thead th{padding:4px 8px;text-align:center;font-size:12px;font-weight:700;color:var(--text-header-inverted);text-transform:uppercase;letter-spacing:.5px;background-color:var(--bg-header-inverted);position:sticky;top:0;z-index:10;border:1px solid var(--border-color);border-top:none;white-space:nowrap;vertical-align:middle}.sheets-table thead th>span{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px;white-space:nowrap;flex-wrap:nowrap}.sheets-table thead th:last-child{border-right:none}.sheets-table thead th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.sheets-table thead th.sortable:hover{background:var(--bg-header-inverted)!important;opacity:.9}.sheets-table thead th .sort-icon{display:inline-block;font-size:.6rem;color:var(--text-header-inverted);opacity:.6;cursor:pointer;transition:all .15s ease;flex-shrink:0}.sheets-table thead th.sortable:hover .sort-icon{opacity:.9;color:var(--text-header-inverted)}.sheets-table thead th .filter-icon{display:inline-block;font-size:.6rem;color:#fff;opacity:.6;cursor:pointer;transition:all .15s ease;flex-shrink:0}.sheets-table thead th .filter-icon.active{color:#4fc3f7;opacity:1;font-weight:900}.sheets-table thead th:hover .filter-icon{opacity:.9;color:#fff}.sheets-table .col-row-number{width:60px;background-color:#000;color:#fff;text-align:center;font-weight:700;font-size:14px}[data-theme=dark] .sheets-table .col-row-number{background-color:#000;color:#fff}.sheets-table .row-number{width:60px;background-color:#000!important;color:#fff!important;text-align:center;font-weight:600;font-size:14px}[data-theme=dark] .sheets-table .row-number{background-color:#000!important;color:#fff!important}.aws-links-tab .sheets-table .col-client{width:150px}.aws-links-tab .sheets-table .col-campaign{width:100px}.aws-links-tab .sheets-table th:nth-child(3),.aws-links-tab .sheets-table td:nth-child(3){width:750px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aws-links-tab .sheets-table .col-date{width:150px;white-space:nowrap}.aws-links-tab .sheets-table .col-status{width:150px}.aws-links-tab .sheets-table .col-mentions{width:200px}.aws-links-tab .sheets-table .col-user{width:120px}.aws-links-tab .sheets-table .col-action{width:150px;text-align:center}.completed-links-tab .sheets-table{table-layout:fixed}.completed-links-tab .sheets-table .col-client{width:150px}.completed-links-tab .sheets-table .col-campaign{width:110px}.completed-links-tab .sheets-table th:nth-child(4),.completed-links-tab .sheets-table td:nth-child(4){width:600px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.completed-links-tab .sheets-table .col-date{width:150px;white-space:nowrap}.completed-links-tab .sheets-table .col-mentions{width:200px}.completed-links-tab .sheets-table .col-da{width:80px}.completed-links-tab .sheets-table .col-traffic,.completed-links-tab .sheets-table .col-user{width:150px}.completed-links-tab .sheets-table .col-action{width:150px;text-align:center}.sheets-table .col-client{width:140px}.sheets-table .col-campaign{width:100px}.sheets-table th:nth-child(4),.sheets-table td:nth-child(4){max-width:350px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sheets-table .col-date{width:130px;white-space:nowrap}.sheets-table .col-mentions{width:160px}.sheets-table .col-user{width:120px}.sheets-table .col-action{width:90px;text-align:center}.sheets-table tbody tr{border-bottom:1px solid var(--border-color);transition:background .1s ease}.sheets-table tbody tr:hover{background:var(--bg-hover)}.sheets-table tbody td{padding:2px 8px;border-right:1px solid var(--border-color);color:var(--text-primary);vertical-align:middle;font-size:14px;font-weight:500;line-height:1.3}.sheets-table tbody td:last-child{border-right:none}.sheets-table a{color:#15c;text-decoration:underline;font-family:Arial,sans-serif}.sheets-table a:hover{text-decoration:underline;color:#15c}.virtual-cell .status-badge{display:inline-block;font-size:13px;font-weight:600;text-transform:capitalize;padding:0;border-radius:0;background:none;border:none}.virtual-cell .status-badge.status-discovered{color:#856404;background:none}.virtual-cell .status-badge.status-valid,.virtual-cell .status-badge.status-valid-ef,.virtual-cell .status-badge.status-valid-nmf{color:#22c55e;background:none}.virtual-cell .status-badge.status-invalid{color:#ef4444;background:none}.virtual-cell .status-badge.status-matched{color:#3b82f6;background:none}.virtual-cell .status-badge.status-linked{color:#22c55e;background:none}.virtual-cell .status-badge.status-unlinked{color:#f59e0b;background:none}.virtual-cell .status-badge.status-complete{color:#28a745;background:none}.virtual-cell .status-badge.status-rejected{color:#dc3545;background:none}.ai-tag-text{font-weight:600;text-transform:capitalize}.ai-tag-discovered{color:#856404!important}.ai-tag-valid,.ai-tag-valid-ef,.ai-tag-valid-nmf{color:#22c55e!important}.ai-tag-invalid{color:#ef4444!important}.ai-tag-matched{color:#3b82f6!important}.ai-tag-complete{color:#28a745!important}.ai-tag-rejected{color:#dc3545!important}.sheets-table-container::-webkit-scrollbar{width:12px;height:12px}.sheets-table-container::-webkit-scrollbar-track{background:var(--bg-secondary)}.sheets-table-container::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:6px}.sheets-table-container::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.mentions-container{display:flex;gap:8px;align-items:center}.mention-group{display:flex;align-items:center;gap:4px}.mention-group label{font-size:.875rem;line-height:1}.mention-input{width:50px;padding:4px 6px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-primary);color:var(--text-primary);font-size:.8125rem;text-align:center;transition:border-color .15s ease}.mention-input:focus{outline:none;border-color:var(--btn-primary-bg);box-shadow:0 0 0 2px #0066cc1a}.mention-input:hover{border-color:var(--text-secondary)}.mention-input::-webkit-inner-spin-button,.mention-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.mention-input[type=number]{-moz-appearance:textfield}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary)}.sheets-table tbody tr.empty-state-row td{width:auto!important;max-width:none!important;min-width:0!important}.sheets-table tbody tr.empty-state-row td[colspan]{display:table-cell!important}.aws-table-wrapper .pagination-container{flex-shrink:0;border-top:1px solid var(--border-color);background:var(--bg-secondary)}.sheets-table thead th{position:relative;overflow:visible!important}.filter-dropdown{position:absolute;top:100%;left:0;min-width:220px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:4px;box-shadow:0 4px 12px #00000026;z-index:1000;margin-top:4px}.filter-dropdown-header{padding:10px 12px;font-size:.8125rem;font-weight:600;color:var(--text-primary);border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.filter-dropdown-search{padding:8px 12px;border-bottom:1px solid var(--border-color);background:var(--bg-surface)}.filter-dropdown-content{max-height:300px;overflow-y:auto;padding:4px 0}.filter-option{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;transition:background .1s ease;font-size:.8125rem}.filter-option:hover,.filter-option.selected{background:var(--bg-hover)}.filter-option input[type=checkbox]{margin:0;cursor:pointer}.filter-option span{flex:1;color:var(--text-primary)}.filter-option .status-text{text-transform:capitalize}.filter-search-input{width:100%;padding:6px 8px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-primary);color:var(--text-primary);font-size:.8125rem;outline:none}.filter-dropdown-content .filter-search-input{width:calc(100% - 24px);margin:8px 12px}.filter-search-input:focus{border-color:var(--btn-primary-bg);box-shadow:0 0 0 2px #0066cc1a}.filter-dropdown-actions{padding:8px 12px;border-top:1px solid var(--border-color);background:var(--bg-secondary);display:flex;gap:8px}.filter-apply-btn{flex:1;padding:8px 16px;background:var(--btn-primary-bg);color:var(--btn-primary-color);border:none;border-radius:4px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .15s ease}.filter-apply-btn:hover{background:var(--btn-primary-hover)}.filter-info{padding:12px;color:var(--text-secondary);font-size:.8125rem;text-align:center}.validation-confirmation{display:flex;flex-direction:column;gap:24px}.confirmation-section{display:flex;flex-direction:column;gap:12px}.confirmation-section h3{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary);padding-bottom:8px;border-bottom:1px solid var(--border-color)}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;gap:16px}.detail-row .label{font-size:.875rem;font-weight:500;color:var(--text-secondary);min-width:140px}.detail-row .value{font-size:.875rem;color:var(--text-primary);text-align:right;flex:1}.detail-row .link-url a{color:var(--link-color);text-decoration:none;word-break:break-all}.detail-row .link-url a:hover{text-decoration:underline}.detail-row .mention-count{font-weight:600;font-size:1rem;color:var(--text-primary)}.detail-row.total-row{padding-top:12px;border-top:1px solid var(--border-color);margin-top:4px}.detail-row.total-row .label{font-weight:600;color:var(--text-primary)}.detail-row.total-row .mention-count{font-size:1.125rem;color:var(--btn-primary-bg)}.confirmation-warning{padding:12px 16px;background:var(--warning-bg);border-left:3px solid var(--color-warning);border-radius:4px;font-size:.875rem;color:var(--text-primary)}.confirmation-warning strong{font-weight:600}.modal-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:8px}.aws-links-header{padding:20px 24px;background:var(--bg-surface);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;gap:12px}.header-spacer{flex:1}.btn-add-campaign{padding:8px 16px;background:var(--accent-primary);color:var(--text-primary);border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-add-campaign:hover{background:var(--accent-secondary);transform:translateY(-1px)}.add-link-form{display:flex;flex-direction:column;gap:20px;padding:4px 0}.add-link-form .form-group{display:flex;flex-direction:column;gap:8px}.add-link-form .form-group label{font-size:14px;font-weight:500;color:var(--text-primary)}.add-link-form .form-group input,.add-link-form .form-group select{padding:10px 12px;font-size:14px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-input);color:var(--text-primary);transition:border-color .2s}.add-link-form .form-group input:focus,.add-link-form .form-group select:focus{outline:none;border-color:var(--primary-color)}.add-link-form .form-group input[type=number]{max-width:150px}.add-link-form .form-group select:disabled{opacity:.5;cursor:not-allowed;background:var(--bg-disabled)}.searchable-select{position:relative}.searchable-dropdown{position:absolute;top:100%;left:0;right:0;max-height:200px;overflow-y:auto;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:6px;margin-top:4px;box-shadow:0 4px 12px #00000026;z-index:1000}.searchable-dropdown-item{padding:10px 12px;cursor:pointer;color:var(--text-primary);transition:background-color .15s}.searchable-dropdown-item:hover{background:var(--bg-hover)}.searchable-dropdown-empty{padding:10px 12px;color:var(--text-secondary);text-align:center;font-style:italic}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--bg-overlay);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;padding:24px;width:100%;max-width:500px;box-shadow:var(--shadow-lg)}.campaign-modal-large{max-width:600px}.modal-content h2{margin:0 0 20px;font-size:20px;color:var(--text-primary)}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-size:13px;font-weight:500;color:var(--text-secondary)}.form-group input,.form-group select{width:100%;padding:10px 12px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;font-size:14px;color:var(--text-primary);transition:border-color .2s ease}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--accent-primary)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.modal-actions{display:flex;gap:var(--spacing-sm);justify-content:flex-end;margin-top:var(--spacing-lg)}.modal-tabs{display:flex;gap:8px;margin-bottom:20px;border-bottom:2px solid var(--border-color)}.modal-tab{padding:10px 20px;background:transparent;border:none;border-bottom:3px solid transparent;color:var(--text-primary);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:-2px;opacity:.7}.modal-tab:hover{color:var(--text-primary);background:var(--bg-hover);opacity:1}.modal-tab.active{color:var(--accent-primary);border-bottom-color:var(--accent-primary);opacity:1}.date-filter-inputs{display:flex;flex-direction:column;gap:12px;padding:8px 0}.date-input-group{display:flex;flex-direction:column;gap:6px}.date-input-group label{font-size:12px;font-weight:500;color:var(--text-secondary)}.filter-date-input{width:100%;padding:8px 10px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:13px;transition:border-color .2s}.filter-date-input:focus{outline:none;border-color:var(--accent-primary)}.filter-clear-btn{padding:8px 16px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.filter-clear-btn:hover{background:var(--bg-hover);border-color:var(--text-secondary)}[data-theme=dark] .aws-table-wrapper{background:#ffffff;border-color:#dee2e6}[data-theme=dark] .sheets-table-container,[data-theme=dark] .sheets-table{background:#ffffff}[data-theme=dark] .sheets-table thead{background:#1a1a1a}[data-theme=dark] .sheets-table thead th{background-color:#1a1a1a;color:#f8f9fa;border-color:#dee2e6}[data-theme=dark] .sheets-table thead th .sort-icon{color:#f8f9fa}[data-theme=dark] .sheets-table thead th .filter-icon{color:#fff}[data-theme=dark] .sheets-table thead th .filter-icon.active{color:#4fc3f7}[data-theme=dark] .sheets-table thead th:hover .sort-icon{color:#f8f9fa}[data-theme=dark] .sheets-table thead th:hover .filter-icon{color:#fff}[data-theme=dark] .sheets-table thead th.sortable:hover{background:#2a2a2a!important}[data-theme=dark] .sheets-table tbody tr{border-color:#dee2e6}[data-theme=dark] .sheets-table tbody tr:hover{background:#f5f5f5}[data-theme=dark] .sheets-table tbody td{color:#212529;border-color:#dee2e6;background-color:#fff}[data-theme=dark] .sheets-table a{color:#15c;font-family:Arial,sans-serif}[data-theme=dark] .virtual-cell .status-badge{background:none;border:none}[data-theme=dark] .virtual-cell .status-badge.status-discovered{color:#856404;background:none}[data-theme=dark] .virtual-cell .status-badge.status-valid,[data-theme=dark] .virtual-cell .status-badge.status-valid-ef,[data-theme=dark] .virtual-cell .status-badge.status-valid-nmf{color:#22c55e;background:none}[data-theme=dark] .virtual-cell .status-badge.status-invalid{color:#ef4444;background:none}[data-theme=dark] .virtual-cell .status-badge.status-matched{color:#3b82f6;background:none}[data-theme=dark] .virtual-cell .status-badge.status-linked{color:#22c55e;background:none}[data-theme=dark] .virtual-cell .status-badge.status-unlinked{color:#f59e0b;background:none}[data-theme=dark] .virtual-cell .status-badge.status-complete{color:#28a745;background:none}[data-theme=dark] .virtual-cell .status-badge.status-rejected{color:#dc3545;background:none}.sheets-table .campaign-number-badge{cursor:pointer;padding:4px 12px;border-radius:4px;background-color:#e9ecef;color:#212529;display:inline-block;min-width:60px;text-align:center}.sheets-table .campaign-number-badge:hover{background-color:#dee2e6}.sheets-table .campaign-number-badge.empty{background-color:#f8f9fa}.campaign-dropdown{position:absolute;top:100%;left:0;z-index:1000;background-color:#fff;border:2px solid #dee2e6;border-radius:6px;box-shadow:0 4px 16px #00000040;min-width:200px;max-height:300px;overflow-y:auto;margin-top:4px}.campaign-dropdown-item{padding:8px 12px;cursor:pointer;color:#212529}.campaign-dropdown-item:hover{background-color:#f5f5f5}.campaign-dropdown-item.selected{background-color:#e9ecef}.campaign-dropdown-item.with-border{border-bottom:1px solid #dee2e6}.campaign-dropdown-header{padding:6px 12px;font-size:.75rem;font-weight:600;color:#6c757d;background-color:#e9ecef;text-transform:uppercase}.campaign-dropdown-loading{padding:12px;text-align:center;color:#6c757d}[data-theme=dark] .sheets-table .mention-input{background:#ffffff;color:#212529;border-color:#dee2e6}[data-theme=dark] .sheets-table .mention-input:focus{border-color:#06c}[data-theme=dark] .sheets-table .mention-input:hover{border-color:#6c757d}[data-theme=dark] .filter-dropdown{background:#ffffff;border-color:#dee2e6}[data-theme=dark] .filter-dropdown-header{background:#f8f9fa;color:#212529;border-color:#dee2e6}[data-theme=dark] .filter-dropdown-search{background:#ffffff;border-color:#dee2e6}[data-theme=dark] .filter-dropdown-content{background:#ffffff}[data-theme=dark] .filter-option{color:#212529}[data-theme=dark] .filter-option:hover{background:#f5f5f5}[data-theme=dark] .filter-option.selected{background:transparent}[data-theme=dark] .filter-option span{color:#212529}[data-theme=dark] .filter-search-input{background:#ffffff;color:#212529;border-color:#dee2e6}[data-theme=dark] .filter-dropdown-actions{background:#f8f9fa;border-color:#dee2e6}[data-theme=dark] .sheets-table-container::-webkit-scrollbar-track{background:#f8f9fa}[data-theme=dark] .sheets-table-container::-webkit-scrollbar-thumb{background:#dee2e6}[data-theme=dark] .sheets-table-container::-webkit-scrollbar-thumb:hover{background:#adb5bd}.responsible-user-select{padding:8px 12px;font-size:.875rem;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-primary);color:var(--text-primary);min-width:200px;cursor:pointer}.responsible-user-select option{background:var(--bg-primary);color:var(--text-primary)}.responsible-user-select:focus{outline:none;border-color:var(--btn-primary-bg);box-shadow:0 0 0 2px #0066cc1a}.responsible-user-select.selection-required{border-color:var(--color-warning);background:rgba(245,158,11,.05)}.required-indicator{color:var(--color-error);font-weight:600;margin-left:4px}.validation-message{font-size:.75rem;color:var(--color-warning);margin-top:8px;padding:6px 10px;background:rgba(245,158,11,.1);border-radius:4px;border-left:3px solid var(--color-warning)}.validation-message.warning{color:var(--color-info);background:rgba(59,130,246,.1);border-left-color:var(--color-info)}.assignment-note{font-size:.75rem;color:var(--color-info);background:rgba(59,130,246,.1);padding:8px 12px;border-radius:4px;border-left:3px solid var(--color-info);margin-top:8px}.virtual-cell .user-badge{cursor:pointer;padding:4px 8px;border-radius:4px;background-color:#e9ecef!important;color:#212529!important;display:inline-flex;align-items:center;justify-content:space-between;width:calc(100% - 4px);font-size:12px;box-sizing:border-box;border:none!important}.virtual-cell .user-badge .user-name{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#212529!important;font-weight:500!important;font-size:12px!important}.virtual-cell .user-badge:after{content:"▾";font-size:14px;color:#6c757d!important;margin-left:8px}.virtual-cell .user-badge:hover{background-color:#dee2e6!important}.virtual-cell .user-badge.overridden{background-color:#e9ecef!important;border:none!important}.virtual-cell .user-badge.mismatch{background-color:#dc35451a!important;border:1px solid var(--color-error, #dc3545)!important}.virtual-cell .user-badge.mismatch:hover{background-color:#dc354533!important}.virtual-cell .user-badge .mismatch-indicator{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;margin-left:4px;background-color:var(--color-error, #dc3545);color:#fff;font-size:10px;font-weight:700;border-radius:50%}.campaign-dropdown-item.is-default{background-color:#f8f9fa}.link-check-message{display:block;margin-top:6px;font-size:12px;line-height:1.4}.link-check-loading{color:var(--text-secondary);font-style:italic}.link-check-success{color:#198754}.link-check-warning{color:#dc3545}.link-check-error{color:#dc3545;font-weight:500}.add-link-form .form-row{display:flex;gap:16px}.add-link-form .form-row .form-group{flex:1}.btn-action{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border:1px solid #dee2e6;border-radius:4px;background:#ffffff;cursor:pointer;font-size:14px;transition:all .15s ease}.btn-action:hover{background:#f8f9fa;border-color:#6366f1;transform:scale(1.05)}.btn-scores{color:#374151}.btn-scores:hover{border-color:#3b82f6;background:rgba(59,130,246,.15)}.unlink-recovery-tab{display:flex;flex-direction:column;height:100%;background:var(--bg-primary);overflow:hidden}.recovery-topbar{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:var(--bg-surface);border-bottom:1px solid var(--border-color);flex-shrink:0}.recovery-topbar-left{display:flex;flex-direction:column;gap:4px}.recovery-title{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.recovery-subtitle{font-size:13px;color:var(--text-secondary)}.recovery-topbar-right{display:flex;align-items:center;gap:12px}.recovery-modal.modal{min-height:700px;max-height:85vh}.recovery-modal .modal-body{padding:0;display:flex;flex-direction:column;flex:1;overflow:hidden}.modal-parameters{padding:20px;display:flex;flex-direction:column;height:100%;overflow-y:auto}.modal-parameters .modal-actions button{border-top:none;border-bottom:none}.parameters-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.parameter-field{display:flex;flex-direction:column;gap:6px}.parameter-field-full{margin-bottom:16px}.parameter-label{font-size:13px;font-weight:500;color:var(--text-secondary)}.parameter-hint{font-weight:400;color:var(--text-tertiary);font-size:12px}.parameter-input{padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;font-size:14px;background:var(--bg-primary);color:var(--text-primary);transition:border-color .2s,box-shadow .2s}.parameter-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-alpha)}.parameter-input::placeholder{color:var(--text-tertiary)}.parameter-selector{width:100%}.parameter-selector .selector-button{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;font-size:14px;background:var(--bg-primary);color:var(--text-primary);text-align:left;justify-content:space-between}.parameter-selector .selector-button:hover{border-color:var(--color-primary)}.parameter-selector .selector-button-open{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-alpha)}.parameter-selector .selector-dropdown{width:100%;max-height:250px;border:1px solid var(--border-color);border-radius:6px;margin-top:4px;background:var(--bg-surface);box-shadow:0 4px 12px #00000026;z-index:1000}.parameter-selector .selector-search-input{border:none;border-bottom:1px solid var(--border-color);border-radius:6px 6px 0 0}.parameter-selector .selector-item{padding:10px 12px;font-size:14px}.parameter-selector .selector-item:hover{background:var(--bg-hover)}.parameter-selector .selector-item-selected{background:var(--color-primary-alpha);border-color:var(--color-primary)}.parameter-selector .selector-item-selected .selector-item-default{color:var(--color-primary)!important}.parameter-selector .selector-item-selected:hover{background:var(--color-primary-alpha)}.parameter-selector .selector-item-selected:hover .selector-item-default{color:var(--color-primary)!important}.written-piece-section{margin-bottom:20px;border:none}.written-piece-label{display:block;font-size:13px;font-weight:500;color:var(--text-secondary);margin-bottom:8px;flex-shrink:0}.written-piece-container{border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);height:280px;min-height:280px;max-height:280px;overflow-y:auto}.written-piece-content{padding:16px}.written-piece-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--border-color)}.written-piece-title{margin:0;font-size:16px;font-weight:600;color:var(--text-primary);flex:1}.written-piece-date{font-size:12px;color:var(--text-tertiary);flex-shrink:0;margin-left:12px}.written-piece-body{font-size:14px;line-height:1.6;color:var(--text-secondary);white-space:pre-wrap}.written-piece-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:20px;text-align:center}.written-piece-placeholder .placeholder-icon{font-size:40px;margin-bottom:12px;opacity:.5}.written-piece-placeholder .placeholder-title{font-size:15px;font-weight:600;color:var(--text-secondary);margin:0 0 6px}.written-piece-placeholder .placeholder-description{font-size:13px;color:var(--text-tertiary);margin:0;max-width:300px;line-height:1.4}.step2-campaign-summary{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;padding:12px 16px;margin-bottom:16px;display:flex;align-items:center;gap:8px}.summary-label{font-size:13px;font-weight:500;color:var(--text-secondary)}.summary-value{font-size:14px;font-weight:600;color:var(--text-primary)}.step2-journalist-hint{background:var(--bg-info);border:1px solid var(--border-info);border-radius:6px;padding:10px 14px;margin-bottom:16px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.step2-journalist-hint .hint-label{font-size:12px;color:var(--text-secondary)}.step2-journalist-hint .hint-value{font-size:13px;font-weight:600;color:var(--text-primary)}.step2-journalist-hint .hint-badge{font-size:11px;font-weight:500;padding:2px 8px;border-radius:10px;background:var(--bg-success);color:var(--text-success)}.journalist-search-container{margin-bottom:16px}.journalist-search-input{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;font-size:14px;background:var(--bg-primary);color:var(--text-primary)}.journalist-search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-alpha)}.journalist-search-input::placeholder{color:var(--text-tertiary)}.journalists-list-container{border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);height:280px;min-height:280px;max-height:280px;overflow-y:auto;margin-bottom:16px}.journalists-loading,.journalists-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:280px;color:var(--text-tertiary)}.loading-spinner{width:24px;height:24px;border:2px solid var(--border-color);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:12px}.journalists-list{padding:8px}.journalist-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-radius:6px;cursor:pointer;transition:background .15s;margin-bottom:4px}.journalist-item:last-child{margin-bottom:0}.journalist-item:hover{background:var(--bg-hover)}.journalist-item-selected{background:var(--color-primary-alpha);border:1px solid var(--color-primary)}.journalist-item-selected:hover{background:var(--color-primary-alpha)}.journalist-info{display:flex;flex-direction:column;gap:2px}.journalist-name{font-size:14px;font-weight:500;color:var(--text-primary)}.journalist-email{font-size:12px;color:var(--text-secondary)}.journalist-score{font-size:12px;color:var(--text-tertiary);text-align:right;padding:4px 8px;background:var(--bg-surface);border-radius:4px}.step3-summary{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;padding:16px;margin-bottom:20px}.summary-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.summary-row:last-child{margin-bottom:0}.article-link-section{margin-bottom:20px}.field-description{font-size:13px;color:var(--text-tertiary);margin:4px 0 10px}.article-link-input{width:100%}.modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:16px 0 0;margin-top:auto;flex-shrink:0;border:none;background:transparent}.modal-actions:before,.modal-actions:after{display:none}.selected-context-bar{display:flex;align-items:center;gap:16px;padding:12px 16px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;margin-bottom:16px;flex-wrap:wrap}.context-item{display:flex;align-items:center;gap:6px}.context-label{font-size:13px;color:var(--text-secondary)}.context-value{font-size:14px;font-weight:500;color:var(--text-primary)}.context-badge{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.context-badge-warning{background:var(--color-warning-alpha, rgba(255, 193, 7, .15));color:var(--color-warning, #ffc107)}.context-badge-success{background:var(--color-success-alpha, rgba(40, 167, 69, .15));color:var(--color-success, #28a745)}.context-change-btn{margin-left:auto}.email-preview-section{flex:1;padding:20px;overflow-y:auto;display:flex;flex-direction:column}.email-preview-container{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;flex:1;display:flex;flex-direction:column;overflow:hidden}.email-header-fields{padding:16px 20px;border-bottom:1px solid var(--border-color);background:var(--bg-primary)}.email-field{display:flex;align-items:center;padding:8px 0;border-bottom:1px solid var(--border-subtle)}.email-field:last-child{border-bottom:none}.email-field-label{width:70px;font-size:13px;font-weight:600;color:var(--text-secondary);flex-shrink:0}.email-field-value{flex:1;font-size:14px;color:var(--text-primary)}.email-field-input{flex:1;padding:8px 12px;font-size:14px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-primary);color:var(--text-primary);outline:none;transition:border-color .2s ease}.email-field-input:focus{border-color:var(--color-primary)}.email-field-input::placeholder{color:var(--text-tertiary)}.email-field-selector{flex:1}.placeholder-text{color:var(--text-tertiary);font-style:italic}.email-body-section{flex:1;display:flex;flex-direction:column;padding:16px 20px;overflow:hidden}.email-body-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-shrink:0;flex-wrap:wrap;gap:8px}.email-body-label{font-size:13px;font-weight:600;color:var(--text-secondary);margin-bottom:0}.placeholder-warning{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--color-warning-bg, rgba(255, 193, 7, .15));border:1px solid var(--color-warning, #ffc107);border-radius:4px;font-size:12px;color:var(--color-warning-text, #856404)}.placeholder-warning .warning-icon{font-size:14px}.email-body-textarea.has-placeholders{border:2px solid var(--color-warning, #ffc107);border-radius:6px}.email-body-container{flex:1;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);overflow-y:auto;min-height:200px}.email-body-content{padding:16px;font-size:14px;line-height:1.6;color:var(--text-primary);white-space:pre-wrap}.email-body-textarea{width:100%;height:100%;min-height:200px;padding:16px;border:none;background:transparent;font-size:14px;line-height:1.6;color:var(--text-primary);font-family:inherit;resize:none}.email-body-textarea:focus{outline:none}.email-body-textarea::placeholder{color:var(--text-tertiary)}.email-body-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:200px;padding:40px 20px;text-align:center}.placeholder-icon{font-size:48px;margin-bottom:16px;opacity:.5}.placeholder-title{font-size:16px;font-weight:600;color:var(--text-secondary);margin:0 0 8px}.placeholder-description{font-size:14px;color:var(--text-tertiary);margin:0;max-width:400px;line-height:1.5}.email-actions{padding:16px 20px;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:12px;background:var(--bg-primary);flex-shrink:0}@media (max-width: 600px){.parameters-row{grid-template-columns:1fr}.email-field{flex-direction:column;align-items:flex-start;gap:4px}.email-field-label{width:auto}.written-piece-header{flex-direction:column;gap:8px}.written-piece-date{margin-left:0}.journalist-item{flex-direction:column;align-items:flex-start;gap:8px}.journalist-score{text-align:left}}.analyzing-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:1000}.analyzing-content{background:var(--bg-surface);padding:32px 48px;border-radius:12px;text-align:center;box-shadow:0 8px 32px #0000004d}.analyzing-content p{margin:16px 0 0;font-size:16px;font-weight:500;color:var(--text-primary)}.analyzing-content .analyzing-subtitle{margin-top:8px;font-size:13px;font-weight:400;color:var(--text-secondary)}.confirm-header{text-align:center;margin-bottom:24px}.confirm-header .confirm-icon{width:48px;height:48px;margin:0 auto 12px;background:var(--status-success-bg);color:var(--status-success);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700}.confirm-header h3{margin:0 0 8px;font-size:18px;font-weight:600;color:var(--text-primary)}.confirm-header p{margin:0;font-size:14px;color:var(--text-secondary)}.confirm-section{margin-bottom:16px}.confirm-section-label{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.confirm-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:12px 16px}.confirm-card-title{font-size:14px;font-weight:500;color:var(--text-primary)}.confirm-card-meta{display:flex;align-items:center;gap:12px;margin-top:4px;font-size:12px;color:var(--text-secondary)}.confirm-card-empty{font-size:13px;color:var(--text-tertiary);font-style:italic}.confirm-card-warning{font-size:13px;color:var(--status-warning)}.extraction-badge{display:inline-flex;align-items:center;padding:2px 8px;background:var(--bg-tertiary);border-radius:4px;font-size:11px;color:var(--text-secondary)}.confidence-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500;text-transform:capitalize}.confidence-badge.confidence-high{background:var(--status-success-bg);color:var(--status-success)}.confidence-badge.confidence-medium{background:var(--status-warning-bg);color:var(--status-warning)}.confidence-badge.confidence-low{background:var(--status-info-bg);color:var(--status-info)}.auto-match-banner{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:12px 16px;margin-bottom:16px}.auto-match-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.auto-match-icon{font-size:16px}.auto-match-title{font-size:13px;font-weight:600;color:var(--text-primary)}.auto-match-details{display:flex;flex-direction:column;gap:4px}.auto-match-details span{font-size:12px;display:flex;align-items:center;gap:6px}.match-found{color:var(--status-success)}.match-partial{color:var(--status-warning)}.match-not-found{color:var(--text-tertiary)}.campaign-details-page{height:100%;overflow:hidden;display:flex;flex-direction:column;background:var(--bg-primary)}.campaign-details-header{padding:20px 32px;background:var(--bg-surface);border-bottom:1px solid var(--border-color);display:flex;flex-direction:column;gap:12px;flex-shrink:0}.header-top-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.campaign-title-center{flex:1;display:flex;align-items:center;justify-content:center}.campaign-title-center h1{margin:0;font-size:20px;font-weight:700;color:var(--text-primary);line-height:1.2}.header-status-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center}.header-status-row:before,.header-status-row:after{content:""}.header-status-row .status-badge{justify-self:center}.header-progress-row{display:flex;align-items:center;justify-content:space-between;gap:24px}.progress-section{display:flex;align-items:center;gap:16px;flex:1;max-width:500px}.progress-percentage{font-size:1rem;font-weight:600;color:var(--text-primary);min-width:45px}.back-button,.campaign-action-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.9rem;cursor:pointer;transition:all .2s;min-width:140px}.back-button:hover,.campaign-action-button:hover{background:var(--bg-secondary);border-color:var(--primary-color)}.header-details-row{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.header-main-info{flex:1;display:flex;flex-direction:column;gap:12px;min-width:0}.campaign-header-info{display:flex;align-items:center;gap:var(--spacing-md);flex-wrap:wrap}.campaign-header-info h1{margin:0;font-size:20px;font-weight:700;color:var(--text-primary);line-height:1.2}.campaign-stats-inline{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:20px 32px;margin-top:4px}.stat-item{display:flex;flex-direction:column;gap:4px}.stat-item.stat-center{align-items:center;text-align:center}.stat-item.stat-center .stat-label,.stat-item.stat-center .stat-value{text-align:center}.stat-label{font-size:.75rem;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:1.125rem;color:var(--text-primary);font-weight:600}.stat-value.delivered{color:var(--status-green)}.header-actions-group{display:flex;flex-direction:column;align-items:flex-end;gap:12px}.header-progress-visual{width:240px}.export-buttons-group{display:flex;gap:8px}.export-button{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.export-button:hover{background:var(--bg-hover);border-color:var(--accent-primary);transform:translateY(-1px)}.export-excel:hover{border-color:#10b981;color:#10b981}.export-pdf:hover{border-color:#ef4444;color:#ef4444}.add-link-button{background:var(--primary-color);color:#fff;border-color:var(--primary-color);font-weight:600}.add-link-button:hover{background:var(--primary-color-hover);border-color:var(--primary-color-hover);color:#fff}.status-badge{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);font-size:.85rem;font-weight:500;text-transform:capitalize}.status-badge.status-active{background:#10b98120;color:#10b981}.status-badge.status-completed{background:#3b82f620;color:#3b82f6}.status-badge.status-paused{background:#f59e0b20;color:#f59e0b}.status-badge.status-archived{background:#6b728020;color:#6b7280}.progress{background:rgba(59,130,246,.15);justify-content:flex-start;border-radius:100px;align-items:center;position:relative;padding:0 5px;display:flex;height:40px;width:240px}.progress-value{box-shadow:0 10px 40px -10px #3b82f6cc;border-radius:100px;background:#3b82f6;height:30px;min-width:8%;transition:width .4s ease}.campaign-links-section{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-surface)}.link-tabs-header{padding:12px 24px;background:var(--bg-surface);border-bottom:1px solid var(--border-color);flex-shrink:0}.link-tabs{display:flex;gap:0}.link-tab{padding:10px 20px;background:transparent;border:1px solid var(--border-color);border-bottom:none;color:var(--text-secondary);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;position:relative;margin-bottom:-1px}.link-tab:first-child{border-radius:var(--radius-sm) 0 0 0}.link-tab:last-child{border-radius:0 var(--radius-sm) 0 0;border-left:none}.link-tab:hover:not(.active){background:var(--bg-secondary);color:var(--text-primary)}.link-tab.active{background:var(--bg-surface);color:var(--primary-color);font-weight:600;border-bottom:2px solid var(--bg-surface);z-index:1}.campaign-links-section h2{padding:12px 24px;margin:0;font-size:1.1rem;color:var(--text-primary);background:var(--bg-surface);border-bottom:1px solid var(--border-color);flex-shrink:0}.no-links-message{padding:3rem var(--spacing-xl);text-align:center;color:var(--text-secondary);font-size:.95rem;background:var(--bg-surface);border-radius:var(--radius-md);margin:var(--spacing-md) 0}.links-table-container{flex:1;overflow:auto;padding:0 24px 12px}.links-table{width:100%;border-collapse:collapse}.links-table thead{position:sticky;top:0;z-index:10;background:var(--bg-secondary)}.links-table th{padding:10px 12px;text-align:left;font-size:13px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--border-color);background:var(--bg-secondary);position:sticky;top:0;z-index:10}.links-table th.center-align,.links-table td.center-align{text-align:center!important}.links-table tbody tr{border-bottom:1px solid var(--border-color);transition:background-color .2s}.links-table tbody tr:hover{background:var(--bg-secondary)}.links-table td{padding:10px 12px;color:var(--text-primary);font-size:15px;font-weight:500}.url-cell{max-width:350px}.actions-cell{width:200px;min-width:200px;text-align:center!important;vertical-align:middle}.link-url{color:var(--primary-color);text-decoration:none;word-break:break-all;transition:color .2s}.link-url:hover{color:var(--primary-color-hover);text-decoration:underline}.domain-cell{font-weight:500;color:var(--text-primary);max-width:120px}.da-cell,.traffic-cell{text-align:center}.metric-placeholder{color:var(--text-tertiary);font-style:italic;cursor:help}.date-cell{color:var(--text-secondary);font-size:15px;font-weight:500}.link-status{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.8rem;font-weight:500;text-transform:capitalize}.link-status-matched{background:#10b98120;color:#10b981}.link-status-valid{background:#3b82f620;color:#3b82f6}.link-status-discovered{background:#f59e0b20;color:#f59e0b}.campaign-details-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:var(--spacing-md)}.loading-spinner{width:50px;height:50px;border:4px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.campaign-details-loading p{color:var(--text-secondary);font-size:.95rem}.campaign-details-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:var(--spacing-md)}.campaign-details-error p{color:var(--text-secondary);font-size:1.1rem}.btn-action{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid #dee2e6;background:#ffffff;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s;font-size:1.1rem;display:inline-block;margin:0 auto}.btn-action:hover{background:#f8f9fa;border-color:#6366f1;transform:scale(1.1)}.btn-reshuffle,.btn-edit{color:#374151}.btn-edit:hover{border-color:#3b82f6;background:rgba(59,130,246,.15)}.btn-recovery{color:#374151}.btn-recovery:hover{border-color:#f59e0b;background:rgba(245,158,11,.15)}.btn-reject{color:#374151}.btn-reject:hover{border-color:#ef4444;background:rgba(239,68,68,.15)}.action-buttons-inline{display:flex;align-items:center;justify-content:center;gap:4px}.reshuffle-modal{max-width:600px;width:100%}.modal-body{padding:var(--spacing-md) 0}.link-preview{margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-sm)}.link-preview label{display:block;font-size:.85rem;font-weight:600;color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.preview-url{display:block;color:var(--primary-color);text-decoration:none;word-break:break-all;font-size:.9rem}.preview-url:hover{text-decoration:underline}.campaign-select{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.9rem;font-family:Courier New,Courier,monospace;cursor:pointer;transition:border-color .2s}.campaign-select:hover{border-color:var(--primary-color)}.campaign-select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.no-campaigns-message{display:block;margin-top:var(--spacing-sm);color:var(--text-secondary);font-size:.85rem;font-style:italic}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-md)}.modal-content{background:var(--bg-surface);border-radius:var(--radius-md);padding:var(--spacing-xl);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:90vw;max-height:90vh;overflow-y:auto}.modal-content h2{margin:0 0 var(--spacing-lg) 0;font-size:1.25rem;color:var(--text-primary)}.modal-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-lg)}.edit-mentions-modal{max-width:500px;width:100%}.edit-mentions-modal .form-row{display:flex;gap:var(--spacing-lg)}.edit-mentions-modal .form-group{flex:1}.edit-mentions-modal .form-group label{display:block;font-size:.9rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.mentions-input{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:1rem;font-weight:500;text-align:center;transition:border-color .2s,box-shadow .2s}.mentions-input:hover{border-color:var(--primary-color)}.mentions-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.mentions-input::-webkit-inner-spin-button,.mentions-input::-webkit-outer-spin-button{opacity:1;height:28px}.mentions-hint{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-sm);border-left:3px solid var(--primary-color)}.mentions-hint small{color:var(--text-secondary);font-size:.85rem}.notes-button{background:var(--bg-surface);color:var(--text-primary);border-color:var(--border-color)}.notes-button:hover{border-color:var(--primary-color);background:var(--bg-hover);color:var(--primary-color)}.notes-modal{max-width:560px;width:100%;padding:0;overflow:hidden;border-radius:var(--radius-lg)}.notes-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.notes-modal-header h2{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.modal-close-button{background:transparent;border:none;font-size:1.5rem;color:var(--text-tertiary);cursor:pointer;padding:4px 8px;line-height:1;transition:color .2s;border-radius:var(--radius-sm)}.modal-close-button:hover{color:var(--text-primary);background:var(--bg-hover)}.notes-modal .modal-body{padding:24px}.notes-modal-content{position:relative}.notes-modal-textarea{width:100%;height:220px;padding:16px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.95rem;font-family:inherit;line-height:1.7;resize:none;transition:border-color .2s,box-shadow .2s}.notes-modal-textarea:hover{border-color:var(--primary-color)}.notes-modal-textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.notes-modal-textarea::placeholder{color:var(--text-tertiary)}.notes-saving-indicator{position:absolute;bottom:12px;right:12px;font-size:.75rem;color:var(--primary-color);background:var(--bg-surface);padding:4px 10px;border-radius:var(--radius-full);border:1px solid var(--primary-color);font-weight:500}.notes-modal-hint{margin-top:16px;font-size:.8rem;color:var(--text-tertiary);text-align:center}.notes-modal .modal-actions{padding:16px 24px;background:var(--bg-secondary);border-top:1px solid var(--border-color);margin-top:0}.notes-modal .modal-actions .btn{min-width:100px}.modal-content.notes-modal{overflow:visible;max-height:none}@media (max-width: 768px){.campaign-stats{grid-template-columns:1fr}.progress-card{grid-column:span 1}.links-table{font-size:.85rem}.links-table th,.links-table td{padding:var(--spacing-sm)}.modal-content{padding:var(--spacing-lg)}}.video-player{position:relative;background:var(--bg-tertiary);border-radius:var(--radius-lg);overflow:hidden;aspect-ratio:16 / 9;width:100%}.video-player.fullscreen{border-radius:0}.video-container{position:relative;width:100%;height:100%;cursor:pointer}.video-container video{width:100%;height:100%;object-fit:contain;background:#000}.video-player-empty,.video-player-error{display:flex;align-items:center;justify-content:center}.video-empty-state,.video-error-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);color:var(--text-muted);text-align:center;padding:var(--space-6)}.video-empty-state svg,.video-error-state svg{opacity:.4}.video-empty-state p,.video-error-state p{margin:0;font-size:var(--text-base);color:var(--text-secondary)}.video-empty-state span{font-size:var(--text-sm)}.video-retry-btn{margin-top:var(--space-2);padding:var(--space-2) var(--space-4);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font-size:var(--text-sm);transition:all .15s ease}.video-retry-btn:hover{background:var(--bg-hover)}.video-play-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.4)}.video-play-button{width:72px;height:72px;border:none;border-radius:50%;background:rgba(255,255,255,.95);color:#1a1a1a;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 20px #0000004d}.video-play-button:hover{transform:scale(1.08);box-shadow:0 6px 28px #0006}.video-play-button svg{margin-left:4px;width:32px;height:32px;color:#1a1a1a;fill:#1a1a1a}.video-pause-overlay{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;gap:24px;background:rgba(0,0,0,.3);opacity:0;transition:opacity .2s ease}.video-container:hover .video-pause-overlay{opacity:1}.video-pause-button{width:72px;height:72px;border:none;border-radius:50%;background:rgba(255,255,255,.95);color:#1a1a1a;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,box-shadow .2s ease;box-shadow:0 4px 20px #0000004d}.video-pause-button:hover{transform:scale(1.08);box-shadow:0 6px 28px #0006}.video-pause-button svg{width:32px;height:32px}.video-center-btn{width:64px;height:64px;border:none;border-radius:50%;background:rgba(255,255,255,.9);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,background .15s ease}.video-center-btn:hover{transform:scale(1.1);background:rgba(255,255,255,1)}.video-center-btn-small{width:48px;height:48px}.video-controls{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(0,0,0,.7));padding:var(--space-4);opacity:0;transition:opacity .2s ease}.video-controls.visible{opacity:1}.video-progress{position:relative;width:100%;height:6px;background:rgba(255,255,255,.3);border-radius:3px;cursor:pointer;margin-bottom:var(--space-3);transition:height .15s ease}.video-progress:hover{height:8px}.video-buffered-bar{position:absolute;top:0;left:0;height:100%;background:rgba(255,255,255,.4);border-radius:3px;pointer-events:none}.video-progress-bar{position:absolute;top:0;left:0;height:100%;background:#3b82f6;border-radius:3px;pointer-events:none}.video-controls-row{display:flex;align-items:center;gap:var(--space-3)}.video-control-btn{width:36px;height:36px;border:none;background:transparent;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:background .15s ease}.video-control-btn:hover{background:rgba(255,255,255,.2)}.video-time{font-size:var(--text-sm);color:#fff;font-variant-numeric:tabular-nums}.video-controls-spacer{flex:1}.video-volume-slider{width:80px;height:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:rgba(255,255,255,.3);border-radius:2px;cursor:pointer}.video-volume-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;border-radius:50%;background:#fff;cursor:pointer}.video-volume-slider::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#fff;cursor:pointer;border:none}.video-player.fullscreen .video-controls{padding:var(--space-6)}.video-player.fullscreen .video-play-button{width:100px;height:100px}.video-player.fullscreen .video-play-button svg{width:60px;height:60px}@media (max-width: 768px){.video-play-button{width:60px;height:60px}.video-play-button svg{width:32px;height:32px}.video-controls{padding:var(--space-3)}.video-volume-slider{display:none}}.client-profile-page{height:100%;display:flex;flex-direction:column;padding:var(--space-6);overflow-y:auto;background:var(--bg-primary)}.client-profile-page .client-profile-loading,.client-profile-page .client-profile-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:var(--space-5);color:var(--text-secondary)}.client-profile-page .loading-spinner{width:48px;height:48px;border:3px solid var(--border-color);border-top-color:var(--accent-primary);border-radius:50%;animation:client-profile-spin .8s linear infinite}@keyframes client-profile-spin{to{transform:rotate(360deg)}}.client-profile-page .profile-header{display:flex;align-items:center;justify-content:center;position:relative;margin:7px 0;flex-shrink:0}.client-profile-page .back-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;transition:all .2s ease;flex-shrink:0;position:absolute;left:0}.client-profile-page .back-button:hover{background:var(--bg-hover);color:var(--accent-primary);border-color:var(--accent-primary)}.client-profile-page .profile-header h1{font-size:var(--text-xl);font-weight:600;color:var(--text-primary);margin:0;text-align:center}.client-profile-page .profile-content{display:flex;gap:5px;flex:1;min-height:0}.client-profile-page .profile-left{flex:1;display:flex;flex-direction:column;gap:var(--space-5);min-width:0}.client-profile-page .video-section{overflow:visible;background:var(--bg-tertiary);box-shadow:0 2px 12px #00000014;border:1px solid var(--border-color);border-radius:8px}.client-profile-page .video-section .video-player{border-radius:8px}.client-profile-page .video-actions{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.client-profile-page .action-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.client-profile-page .action-btn svg{flex-shrink:0;width:16px;height:16px;color:var(--text-secondary)}.client-profile-page .action-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--accent-primary)}.client-profile-page .action-btn:hover:not(:disabled) svg{color:var(--accent-primary)}.client-profile-page .action-btn:disabled{opacity:.5;cursor:not-allowed}.client-profile-page .btn-spinner{width:16px;height:16px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:client-profile-spin .8s linear infinite}.client-profile-page .profile-left>.client-notes-card{margin-top:var(--space-4);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 2px 8px #0000000a}.client-profile-page .profile-left>.client-notes-card>.client-notes-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border-color)}.client-profile-page .profile-left>.client-notes-card>.client-notes-header>.client-notes-title{margin:0;font-size:14px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:10px}.client-profile-page .profile-left>.client-notes-card>.client-notes-header>.client-notes-title:before{display:none}.client-profile-page .profile-left>.client-notes-card>.client-notes-header>.client-notes-title>.client-notes-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:rgba(245,158,11,.12);color:#f59e0b;flex-shrink:0}.client-profile-page .profile-left>.client-notes-card>.client-notes-header>.client-notes-status{font-size:11px;color:var(--text-muted);padding:3px 8px;background:var(--bg-secondary);border-radius:4px}.client-profile-page .profile-left>.client-notes-card>.client-notes-body{padding:16px 18px;position:relative}.client-profile-page .profile-left>.client-notes-card>.client-notes-body>textarea.client-notes-input{width:100%;padding:12px 14px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;line-height:1.6;resize:vertical;font-family:inherit;min-height:100px;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.client-profile-page .profile-left>.client-notes-card>.client-notes-body>textarea.client-notes-input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #3b82f61a}.client-profile-page .profile-left>.client-notes-card>.client-notes-body>textarea.client-notes-input::placeholder{color:var(--text-muted);font-size:13px}.client-profile-page .profile-right{flex:1;display:flex;flex-direction:column;gap:10px;min-width:0;overflow-y:auto;overflow-x:hidden;padding-right:4px}.client-profile-page .profile-right::-webkit-scrollbar{width:4px}.client-profile-page .profile-right::-webkit-scrollbar-thumb{background:transparent}.client-profile-page .profile-right:hover::-webkit-scrollbar-thumb{background:var(--border-color)}.client-profile-page .profile-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 2px 8px #0000000a;flex-shrink:0;transition:box-shadow .2s ease}.client-profile-page .profile-card:hover{box-shadow:0 4px 16px #00000014}.client-profile-page .card-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-bottom:1px solid var(--border-color);flex-shrink:0}.client-profile-page .card-header h3{margin:0;font-size:14px;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:10px}.client-profile-page .card-header h3:before{display:none}.client-profile-page .card-header .card-icon{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:6px;flex-shrink:0}.client-profile-page .card-header .card-icon svg{width:14px;height:14px}.client-profile-page .card-header .card-icon.icon-ai{background:linear-gradient(135deg,rgba(139,92,246,.15),rgba(236,72,153,.15));color:#8b5cf6}.client-profile-page .card-header .card-icon.icon-brief{background:rgba(59,130,246,.12);color:#3b82f6}.client-profile-page .card-header .card-icon.icon-services{background:rgba(16,185,129,.12);color:#10b981}.client-profile-page .card-header .card-icon.icon-stats{background:rgba(245,158,11,.12);color:#f59e0b}.client-profile-page .card-header .card-icon.icon-info{background:linear-gradient(135deg,rgba(139,92,246,.15),rgba(236,72,153,.15));color:#8b5cf6}.client-profile-page .card-header .card-icon.icon-keywords{background:rgba(168,85,247,.12);color:#a855f7}.client-profile-page .card-header .card-icon.icon-spokesperson{background:rgba(236,72,153,.12);color:#ec4899}.client-profile-page .edit-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#3b82f6;border:none;border-radius:6px;color:#fff;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease}.client-profile-page .edit-btn:hover{background:#2563eb}.client-profile-page .card-content{padding:10px 14px}.client-profile-page .card-content p{margin:0;font-size:14px;color:var(--text-primary);line-height:1.7;white-space:pre-wrap;word-wrap:break-word}.client-profile-page .card-content p.empty-text{color:var(--text-muted);font-style:normal;padding:12px;background:var(--bg-secondary);border-radius:6px;text-align:center;font-size:12px;border:1px dashed var(--border-color)}.client-profile-page .markdown-content{font-size:14px;color:var(--text-primary);line-height:1.6}.client-profile-page .markdown-content p{margin:0 0 12px}.client-profile-page .markdown-content p:last-child{margin-bottom:0}.client-profile-page .markdown-content strong{font-weight:600;color:var(--text-primary)}.client-profile-page .markdown-content em{font-style:italic}.client-profile-page .markdown-content ul,.client-profile-page .markdown-content ol{margin:8px 0;padding-left:20px}.client-profile-page .markdown-content li{margin:4px 0}.client-profile-page .markdown-content h1,.client-profile-page .markdown-content h2,.client-profile-page .markdown-content h3,.client-profile-page .markdown-content h4{margin:16px 0 8px;font-weight:600;color:var(--text-primary)}.client-profile-page .markdown-content h1:first-child,.client-profile-page .markdown-content h2:first-child,.client-profile-page .markdown-content h3:first-child,.client-profile-page .markdown-content h4:first-child{margin-top:0}.client-profile-page .markdown-content h1{font-size:18px}.client-profile-page .markdown-content h2{font-size:16px}.client-profile-page .markdown-content h3{font-size:15px}.client-profile-page .markdown-content h4{font-size:14px}.client-profile-page .markdown-content a{color:var(--accent-primary);text-decoration:none}.client-profile-page .markdown-content a:hover{text-decoration:underline}.client-profile-page .markdown-content code{background:var(--bg-secondary);padding:2px 6px;border-radius:4px;font-size:13px;font-family:monospace}.client-profile-page .markdown-content blockquote{margin:12px 0;padding:8px 16px;border-left:3px solid var(--accent-primary);background:var(--bg-secondary);color:var(--text-secondary)}.client-profile-page .edit-field{display:flex;flex-direction:column;gap:16px;padding:16px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-color)}.client-profile-page .edit-field textarea{width:100%;padding:14px 16px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-surface);color:var(--text-primary);font-size:14px;line-height:1.6;resize:vertical;font-family:inherit;min-height:140px;transition:border-color .2s ease,box-shadow .2s ease}.client-profile-page .edit-field textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.client-profile-page .edit-field textarea::placeholder{color:var(--text-muted)}.client-profile-page .edit-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:16px;border-top:1px solid var(--border-color)}.client-profile-page .save-btn,.client-profile-page .cancel-btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;justify-content:center;gap:8px}.client-profile-page .save-btn{background:#3b82f6;border:none;color:#fff;min-width:120px}.client-profile-page .save-btn:hover:not(:disabled){background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.client-profile-page .save-btn:active:not(:disabled){transform:translateY(0)}.client-profile-page .save-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.client-profile-page .cancel-btn{background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-primary);min-width:100px}.client-profile-page .cancel-btn:hover{background:var(--bg-hover);border-color:var(--text-muted)}.client-profile-page .profile-card.thick-card .card-content{padding:16px 18px}.client-profile-page .keywords-display{display:flex;flex-wrap:wrap;gap:5px}.client-profile-page .keyword-tag{display:inline-flex;padding:2px 8px;background:rgba(168,85,247,.08);border:1px solid rgba(168,85,247,.2);border-radius:10px;font-size:11px;color:#a855f7;font-weight:500}.client-profile-page .keywords-input{font-family:inherit;min-height:50px;font-size:12px}.client-profile-page .profile-card-inline{display:flex;align-items:center;gap:12px;padding:10px 16px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;flex-shrink:0}.client-profile-page .inline-card-label{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:var(--text-primary);flex-shrink:0}.client-profile-page .inline-card-label .card-icon{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:6px;flex-shrink:0}.client-profile-page .inline-card-label .card-icon svg{width:14px;height:14px}.client-profile-page .inline-card-label .card-icon.icon-spokesperson{background:rgba(236,72,153,.12);color:#ec4899}.client-profile-page .inline-card-content{flex:1;display:flex;align-items:center;gap:8px;min-width:0}.client-profile-page .spokesperson-value{font-size:13px;color:var(--text-secondary);flex:1}.client-profile-page .inline-edit-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#3b82f6;border:none;border-radius:6px;color:#fff;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease}.client-profile-page .inline-edit-btn:hover{background:#2563eb}.client-profile-page .inline-edit{flex:1;display:flex;align-items:center;gap:6px}.client-profile-page .spokesperson-input{flex:1;padding:6px 10px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-primary);color:var(--text-primary);font-size:13px;font-family:inherit}.client-profile-page .spokesperson-input:focus{outline:none;border-color:#3b82f6}.client-profile-page .inline-save-btn{padding:6px 12px;background:#3b82f6;border:none;border-radius:4px;color:#fff;font-size:12px;font-weight:500;cursor:pointer}.client-profile-page .inline-save-btn:hover:not(:disabled){background:#2563eb}.client-profile-page .inline-cancel-btn{padding:4px 8px;background:transparent;border:none;color:var(--text-muted);font-size:14px;cursor:pointer}.client-profile-page .inline-cancel-btn:hover{color:var(--text-primary)}.client-profile-page .services-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.client-profile-page .services-list li{display:flex;align-items:center;gap:8px;padding:5px 10px;background:var(--bg-secondary);border-radius:14px;font-size:12px;color:var(--text-primary);font-weight:500;border:1px solid var(--border-color)}.client-profile-page .services-list li:before{content:"";width:6px;height:6px;background:var(--accent-primary);border-radius:50%;flex-shrink:0}.client-profile-page .services-list.editable li{justify-content:space-between}.client-profile-page .services-list.editable li:before{display:none}.client-profile-page .remove-btn{padding:var(--space-1);background:transparent;border:none;color:var(--text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all .2s ease;display:flex;align-items:center;justify-content:center}.client-profile-page .remove-btn:hover{color:var(--error);background:rgba(239,68,68,.1)}.client-profile-page .add-service-btn{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;padding:var(--space-3) var(--space-4);background:transparent;border:1px dashed var(--border-color);border-radius:var(--radius-md);color:var(--text-muted);font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:all .2s ease;margin-top:var(--space-3)}.client-profile-page .add-service-btn:hover{border-color:var(--accent-primary);color:var(--accent-primary);background:rgba(59,130,246,.05)}.client-profile-page .stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.client-profile-page .stat-item{display:flex;flex-direction:column;gap:4px;padding:12px;background:var(--bg-secondary);border-radius:6px;border:1px solid transparent;transition:all .15s ease}.client-profile-page .stat-item:hover{border-color:var(--border-color);background:var(--bg-primary)}.client-profile-page .stat-item.full-width{grid-column:1 / -1}.client-profile-page .stat-label{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.client-profile-page .stat-value{font-size:13px;font-weight:600;color:var(--text-primary);word-break:break-all}.client-profile-page .stat-value.stat-number{font-size:20px;font-weight:700;color:var(--accent-primary);line-height:1}.client-profile-page .stat-item.stat-item-centered{align-items:center;justify-content:center}.client-profile-page .stat-item-centered .stat-label,.client-profile-page .stat-item-centered .stat-value{text-align:center;width:100%}.client-profile-page .stat-value.link{color:var(--accent-primary);text-decoration:none;font-size:13px;word-break:break-word}.client-profile-page .stat-value.link:hover{text-decoration:underline}.client-profile-page .stat-value.status-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:20px;font-size:12px;font-weight:600;width:fit-content}.client-profile-page .stat-value.status-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.client-profile-page .stat-value.status-badge.status-active{background:rgba(34,197,94,.12);color:#16a34a}.client-profile-page .stat-value.status-badge.status-inactive{background:rgba(156,163,175,.15);color:var(--text-muted)}.client-profile-page .modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4)}.client-profile-page .modal-content{width:100%;max-width:500px;padding:0;background:var(--bg-surface);border-radius:6px;box-shadow:0 20px 40px #0003;border:1px solid var(--border-color)}.client-profile-page .modal-content.modal-small{max-width:420px}.client-profile-page .modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-color)}.client-profile-page .modal-header h3{margin:0;font-size:var(--text-lg);font-weight:600;color:var(--text-primary)}.client-profile-page .modal-header h3:before{display:none}.client-profile-page .modal-close{padding:8px;background:transparent;border:none;color:var(--text-muted);cursor:pointer;border-radius:4px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.client-profile-page .modal-close:hover{color:var(--text-primary);background:var(--bg-hover)}.client-profile-page .modal-body{padding:24px}.client-profile-page .modal-body label{display:block;margin-bottom:8px;font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.client-profile-page .modal-body input{width:100%;padding:14px 16px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-primary);color:var(--text-primary);font-size:var(--text-base);transition:border-color .2s ease}.client-profile-page .modal-body input:focus{outline:none;border-color:var(--accent-primary)}.client-profile-page .modal-body input::placeholder{color:var(--text-muted)}.client-profile-page .modal-hint{margin:12px 0 0;font-size:var(--text-sm);color:var(--text-muted);line-height:1.5}.client-profile-page .modal-body input.input-error{border-color:var(--error)}.client-profile-page .modal-body input.input-error:focus{border-color:var(--error)}.client-profile-page .modal-error{margin:8px 0 0;font-size:var(--text-sm);color:var(--error);display:flex;align-items:center;gap:6px}.client-profile-page .modal-error:before{content:"⚠";font-size:12px}.client-profile-page .modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid var(--border-color);background:var(--bg-secondary);border-radius:0 0 6px 6px}.client-profile-page .modal-footer .cancel-btn,.client-profile-page .modal-footer .save-btn{padding:12px 24px;border-radius:4px;font-size:var(--text-sm);font-weight:600}.client-profile-page .modal-footer .cancel-btn{background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-primary)}.client-profile-page .modal-footer .cancel-btn:hover{background:var(--bg-hover)}.client-profile-page .modal-footer .save-btn{background:#3b82f6;border:none;color:#fff}.client-profile-page .modal-footer .save-btn:hover:not(:disabled){opacity:.9}.client-profile-page .modal-footer .save-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 1024px){.client-profile-page{padding:var(--space-5)}.client-profile-page .profile-content{flex-direction:column;gap:var(--space-6)}.client-profile-page .profile-left,.client-profile-page .profile-right{flex:none;width:100%}.client-profile-page .profile-right{overflow:visible}}@media (max-width: 640px){.client-profile-page{padding:var(--space-4)}.client-profile-page .profile-header{gap:var(--space-3)}.client-profile-page .back-button{width:36px;height:36px}.client-profile-page .profile-header h1{font-size:var(--text-lg)}.client-profile-page .profile-content{gap:var(--space-5)}.client-profile-page .video-section{overflow:visible;margin:0 -4px;border-radius:0;border-left:none;border-right:none}.client-profile-page .video-section .video-player{border-radius:0}.client-profile-page .video-actions{grid-template-columns:1fr;gap:var(--space-2)}.client-profile-page .stats-grid{grid-template-columns:1fr}.client-profile-page .card-content{padding:var(--space-4)}.client-profile-page .card-header{padding:var(--space-3) var(--space-4)}.client-profile-page .edit-actions{flex-direction:column-reverse}.client-profile-page .save-btn,.client-profile-page .cancel-btn{width:100%;text-align:center;justify-content:center}.client-profile-page .modal-content{margin:var(--space-4);max-height:calc(100vh - var(--space-8));overflow-y:auto}.client-profile-page .modal-body{padding:var(--space-5)}.client-profile-page .modal-header,.client-profile-page .modal-footer{padding:var(--space-4) var(--space-5)}}@media (max-width: 400px){.client-profile-page{padding:var(--space-3)}.client-profile-page .profile-header h1{font-size:var(--text-base)}.client-profile-page .stat-item{padding:var(--space-3)}}.content-wrapper{padding:var(--spacing-lg) var(--spacing-xl);background:var(--bg-base);overflow:hidden}.search-section{margin-bottom:var(--spacing-lg);overflow:visible}.keyword-input-container{display:flex;flex-direction:column;gap:var(--spacing-xs)}.keyword-label{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);margin-bottom:2px}.keywords-input-box{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:12px;background:var(--bg-surface);border:2px solid var(--border-color);border-radius:var(--radius-md);min-height:56px;transition:all .2s ease;cursor:text}.keywords-input-box:hover{border-color:var(--text-muted)}.keywords-input-box:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.keyword-chip{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background:var(--primary-color);color:#fff;border-radius:100px;font-size:var(--font-size-sm);font-weight:600;letter-spacing:.01em;box-shadow:0 4px 12px #3b82f659,0 2px 4px #8b5cf633;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;min-height:36px}.keyword-chip:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 20px #3b82f666,0 4px 8px #8b5cf64d}.keyword-chip:active{transform:translateY(0) scale(.98);box-shadow:0 2px 8px #3b82f64d,0 1px 4px #8b5cf633}.chip-remove{background:rgba(255,255,255,.2);border:none;color:#fff;font-size:16px;font-weight:700;line-height:1;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.chip-remove:hover{background:rgba(255,255,255,.35);transform:rotate(90deg) scale(1.1)}.chip-remove:active{transform:rotate(90deg) scale(.9)}.keyword-input-field{flex:1;min-width:200px;border:none;background:transparent;padding:6px 4px;font-size:var(--font-size-base);color:var(--text-primary);outline:none;font-family:inherit}.keyword-input-field::placeholder{color:var(--text-muted);font-weight:400}.keyword-hint{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-muted);margin-top:4px;padding-left:2px}.last-search-time{color:var(--text-muted);font-weight:500}.keyword-suggestions-dropdown{position:absolute;top:calc(100% + 8px);left:0;width:600px;max-width:100%;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-lg);z-index:1000;max-height:500px;display:flex;flex-direction:column;overflow:hidden}.suggestions-header{padding:16px;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.suggestions-search{width:100%;padding:12px 16px;border:2px solid rgba(59,130,246,.25);border-radius:12px;font-size:var(--font-size-sm);background:var(--bg-surface);color:var(--text-primary);outline:none;transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:500;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 2px 8px #0000000d}.suggestions-search:focus{border-color:var(--primary-color);box-shadow:0 0 0 4px #3b82f626,0 4px 12px #3b82f633;transform:translateY(-1px);background:var(--bg-surface)}.suggestions-search::placeholder{color:var(--text-muted);font-weight:400}.suggestions-list{flex:1;overflow-y:auto;padding:16px;max-height:350px;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;align-content:start}.suggestions-list::-webkit-scrollbar{width:6px}.suggestions-list::-webkit-scrollbar-track{background:rgba(59,130,246,.05);border-radius:10px;margin:4px 0}.suggestions-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:10px;transition:all .2s ease}.suggestions-list::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.suggestion-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:12px 14px;border-radius:6px;cursor:pointer;transition:all .2s ease;background:var(--bg-secondary);border:1px solid var(--border-color);position:relative}.suggestion-item:hover{background:var(--bg-hover);border-color:var(--primary-color)}.suggestion-item:active{transform:scale(.98)}.suggestion-icon{font-size:18px;flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(59,130,246,.2));z-index:1}.suggestion-text{flex:1;font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);letter-spacing:.01em;z-index:1}.suggestion-add{display:flex;align-items:center;justify-content:center;width:26px;height:26px;background:var(--primary-color);color:#fff;border-radius:50%;font-size:20px;font-weight:400;line-height:0;opacity:0;transition:all .2s ease;box-shadow:var(--shadow-sm);z-index:1;flex-shrink:0;margin-left:auto}.suggestion-item:hover .suggestion-add{opacity:1;transform:scale(1.15) rotate(90deg)}.no-suggestions{grid-column:1 / -1;padding:var(--spacing-xl);text-align:center;color:var(--text-muted);font-size:var(--font-size-sm);font-style:italic;background:var(--bg-secondary);border-radius:6px;border:1px dashed var(--border-color)}.suggestions-footer{padding:12px 16px;border-top:1px solid var(--border-color);background:var(--bg-secondary);font-size:var(--font-size-xs);color:var(--text-secondary);text-align:center;font-weight:600;letter-spacing:.02em;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.keyword-input-container{display:flex;flex-direction:column;gap:var(--spacing-xs);position:relative}.filters-bar{display:flex;flex-direction:column;padding:var(--spacing-lg);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;margin-bottom:var(--spacing-md);box-shadow:var(--shadow-sm);overflow:visible}.filters-left{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);align-items:center}.filters-label{font-size:var(--font-size-sm);font-weight:700;color:var(--text-primary);margin-right:var(--spacing-sm);letter-spacing:.02em;text-transform:uppercase;opacity:.8}.filter-tag{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:var(--primary-color);color:#fff;border:none;border-radius:100px;font-size:var(--font-size-sm);font-weight:600;letter-spacing:.01em;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #3b82f64d,0 2px 4px #8b5cf633;position:relative;overflow:hidden}.filter-tag:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 20px #3b82f666,0 4px 8px #8b5cf64d}.tag-remove{background:rgba(255,255,255,.25);border:none;color:#fff;font-size:18px;font-weight:700;line-height:1;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .25s cubic-bezier(.4,0,.2,1);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.tag-remove:hover{background:rgba(255,255,255,.4);transform:rotate(90deg) scale(1.15)}.tag-remove:active{transform:rotate(90deg) scale(.9)}.edit-filters-btn{padding:8px 16px;background:var(--bg-secondary);color:var(--primary-color);border:1px solid var(--border-color);border-radius:6px;font-size:var(--font-size-sm);font-weight:700;cursor:pointer;transition:all .2s ease}.edit-filters-btn:hover{background:var(--bg-hover);border-color:var(--primary-color)}.filters-panel{width:100%;padding:var(--spacing-lg);margin-top:var(--spacing-lg);border-top:2px solid rgba(59,130,246,.15);background:var(--bg-secondary);border-radius:12px;overflow:visible;position:relative;z-index:50}.filter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg);overflow:visible}.filter-column{display:flex;flex-direction:column;gap:10px;padding:16px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:visible;z-index:100}.filter-column:hover{border-color:#3b82f659;box-shadow:0 4px 16px #3b82f626;z-index:200}.filter-column:focus-within{z-index:200}.filter-column .selector{position:relative;overflow:visible!important}.filter-column .selector-dropdown{max-height:280px!important;overflow-y:auto!important}.filter-column .selector-dropdown .suggestions-list{max-height:220px!important}.filter-label{font-size:var(--font-size-sm);font-weight:700;color:var(--text-primary);letter-spacing:.03em;text-transform:uppercase;opacity:.9;margin-bottom:4px}.instructions-section{margin-bottom:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-xs)}.instructions-label{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);margin-bottom:2px}.instructions-description{font-size:var(--font-size-sm);color:var(--text-muted);line-height:1.5;margin-bottom:6px}.instructions-input{width:100%;padding:var(--spacing-md);border:2px solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-base);background:var(--bg-surface);color:var(--text-primary);font-family:inherit;resize:vertical;transition:all .2s ease;line-height:1.5;min-height:120px}.instructions-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.instructions-input::placeholder{color:var(--text-muted)}.action-bar-section{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);margin-top:var(--spacing-lg);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-sm);position:relative;overflow:visible;flex-wrap:wrap}.action-bar-left{display:flex;gap:var(--spacing-md);align-items:center;flex-wrap:wrap;position:relative;z-index:1}.action-bar-right{display:flex;gap:var(--spacing-sm);align-items:center;position:relative;z-index:100}.action-bar-right .selector{position:relative;z-index:100}.action-bar-right .selector-dropdown{z-index:1000}.top-count-label{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);white-space:nowrap}.top-count-selector .selector-dropdown{bottom:calc(100% + 8px);top:auto}.clear-all-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:var(--bg-secondary);border:1px solid var(--error-color);border-radius:6px;color:var(--error-color);font-size:18px;cursor:pointer;transition:all .2s ease;flex-shrink:0}.clear-all-btn:hover{background:var(--error-color);color:#fff;border-color:var(--error-color)}.clear-all-btn:active{transform:scale(.95)}.results-wrapper{padding:0 var(--spacing-xl)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl) var(--spacing-xl);margin:var(--spacing-xl) 0;background:var(--bg-surface);border:2px dashed rgba(59,130,246,.2);border-radius:20px;position:relative;overflow:hidden}.empty-state-icon{font-size:64px;margin-bottom:var(--spacing-lg);filter:drop-shadow(0 4px 12px rgba(59,130,246,.3))}.empty-state-title{font-size:var(--font-size-xl);font-weight:700;color:var(--primary-color);margin-bottom:var(--spacing-sm);position:relative;z-index:1}.empty-state-description{font-size:var(--font-size-base);color:var(--text-muted);text-align:center;line-height:1.6;margin-bottom:var(--spacing-xl);max-width:600px;position:relative;z-index:1}.empty-state-features{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);width:100%;max-width:600px;position:relative;z-index:1}.feature-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.feature-item:hover{background:var(--bg-hover);border-color:#3b82f659;transform:translateY(-2px);box-shadow:0 8px 20px #3b82f626,0 2px 6px #8b5cf61a}.feature-icon{font-size:24px;flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(59,130,246,.3))}.feature-text{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary)}@media (max-width: 768px){.empty-state-features{grid-template-columns:1fr}}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-3xl) var(--spacing-xl);margin:var(--spacing-xl) 0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:20px;position:relative;overflow:hidden}.loading-spinner{width:64px;height:64px;border:4px solid rgba(59,130,246,.1);border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:var(--spacing-lg);box-shadow:0 4px 12px #3b82f64d}.loading-title{font-size:var(--font-size-xl);font-weight:700;color:var(--primary-color);margin-bottom:var(--spacing-sm)}.loading-description{font-size:var(--font-size-base);color:var(--text-muted);text-align:center;line-height:1.6;margin-bottom:var(--spacing-xl);max-width:600px}.loading-steps{display:flex;gap:var(--spacing-lg);flex-wrap:wrap;justify-content:center}.loading-step{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px}.loading-step .step-icon{font-size:20px;filter:drop-shadow(0 2px 4px rgba(59,130,246,.3))}.loading-step .step-text{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary)}@media (max-width: 768px){.loading-steps{flex-direction:column;width:100%}.loading-step{width:100%;justify-content:center}}.search-btn-primary{flex:1;min-width:220px;padding:14px 28px!important;font-size:var(--font-size-base)!important;font-weight:700!important;background:var(--primary-color)!important;border:none!important;border-radius:12px!important;color:#fff!important;box-shadow:0 8px 24px #3b82f659,0 4px 12px #8b5cf640,inset 0 1px #fff3!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important;position:relative!important;overflow:hidden!important;cursor:pointer!important}.search-btn-primary:hover:not(:disabled){background:var(--primary-color-dark)!important;transform:translateY(-2px) scale(1.02)!important;box-shadow:0 12px 32px #3b82f673,0 6px 16px #8b5cf659,inset 0 1px #ffffff40!important}.search-btn-primary:active:not(:disabled){transform:translateY(0) scale(.98)!important;box-shadow:0 4px 16px #3b82f64d,0 2px 8px #8b5cf633!important}.search-btn-primary:disabled{opacity:.5!important;cursor:not-allowed!important;transform:none!important}.top-count-selector{min-width:120px}.action-btn{padding:8px 16px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:600;cursor:pointer;transition:all .2s ease;background:var(--bg-surface);color:var(--text-primary)}.action-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #0000001a}.action-btn.secondary{background:var(--bg-subtle);color:var(--text-secondary)}.action-btn.secondary:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.results-header-bar{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-lg);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);margin:var(--spacing-lg) var(--spacing-xl);margin-bottom:var(--spacing-md);flex-wrap:wrap;gap:var(--spacing-sm)}.results-stats-inline{display:flex;align-items:center;gap:var(--spacing-xs);flex-wrap:wrap}.ai-idea-stat-badge{display:flex;align-items:center;gap:4px;padding:4px 10px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);transition:all .2s ease}.ai-idea-stat-badge:hover{background:var(--bg-hover)}.ai-idea-stat-icon{font-size:14px}.ai-idea-stat-label,.ai-idea-stat-value{font-size:14px;font-weight:500;color:var(--text-secondary)}.results-actions{display:flex;gap:var(--spacing-sm);align-items:center}.sort-selector{min-width:180px}.results-list{padding:0 var(--spacing-xl) var(--spacing-xl);display:flex;flex-direction:column;gap:var(--spacing-lg)}.result-card{background:var(--bg-surface);border:2px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all .3s ease}.result-card:hover{border-color:var(--primary-color);box-shadow:0 8px 24px #00000014;transform:translateY(-2px)}.card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.rank-and-title{flex:1;display:flex;align-items:flex-start;gap:var(--spacing-md)}.rank-number{display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:40px;background:var(--bg-subtle);color:var(--text-primary);border-radius:var(--radius-md);font-size:var(--font-size-lg);font-weight:700;flex-shrink:0}.article-title-main{margin:0;font-size:var(--font-size-xl);font-weight:600;line-height:1.4;flex:1}.article-title-main a{color:var(--text-primary);text-decoration:none;transition:color .2s ease}.article-title-main a:hover{color:var(--primary-color)}.score-badge{display:inline-flex;align-items:center;gap:4px;padding:8px 16px;border-radius:var(--radius-full);font-size:var(--font-size-base);font-weight:700;white-space:nowrap;box-shadow:0 2px 8px #0000001a}.score-badge-excellent{background:var(--success-color);color:#fff}.score-badge-good{background:var(--warning-color);color:var(--text-primary)}.score-badge-average{background:#f97316;color:#fff}.score-badge-low{background:var(--error-color);color:#fff}.card-meta{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--spacing-md)}.meta-item{display:inline-flex;align-items:center;gap:4px}.meta-separator{color:var(--text-muted)}.card-divider{height:1px;background:var(--border-color);margin:var(--spacing-md) 0}.card-reasoning{padding:var(--spacing-md);background:var(--bg-info-subtle);border-left:3px solid var(--primary-color);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.6;margin-bottom:var(--spacing-md)}.card-reasoning strong{color:var(--text-primary);font-weight:600}.card-snippet{padding:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.6;margin-bottom:var(--spacing-md)}.card-snippet strong{color:var(--text-primary);margin-right:4px}.card-actions{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.action-btn-small{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all .2s ease;background:var(--bg-surface);color:var(--text-primary);text-decoration:none}.action-btn-small:hover{transform:translateY(-1px);box-shadow:0 2px 6px #0000001a}.action-btn-small.success{background:var(--bg-success-subtle);border-color:var(--border-success);color:var(--success-color)}.action-btn-small.success:hover{background:var(--success-color);color:#fff}.action-btn-small.danger{background:var(--bg-error-subtle);border-color:var(--border-error);color:var(--error-color)}.action-btn-small.danger:hover{background:var(--error-color);color:#fff}.action-btn-small.secondary{background:var(--bg-subtle);color:var(--text-secondary)}.action-btn-small.secondary:hover{background:var(--bg-hover);color:var(--text-primary)}.action-btn-small.primary{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.action-btn-small.primary:hover{background:var(--primary-color-dark);border-color:var(--primary-color-dark)}@media (max-width: 768px){.content-wrapper{padding:var(--spacing-md)}.keyword-input-field{min-width:100%}.filters-bar{flex-direction:column;align-items:flex-start}.filter-grid{grid-template-columns:1fr}.action-bar{flex-direction:column;align-items:stretch}.search-btn-primary{width:100%}.results-header-bar{flex-direction:column;align-items:flex-start}.results-stats-inline{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.results-list{padding:0 var(--spacing-md) var(--spacing-md)}.rank-and-title,.card-actions{flex-direction:column}.action-btn-small{width:100%;justify-content:center}}.empty-results{padding:var(--spacing-xxl);text-align:center;color:var(--text-muted)}.empty-results-icon{font-size:64px;margin-bottom:var(--spacing-lg);opacity:.3}.empty-results-text{font-size:var(--font-size-lg);color:var(--text-secondary);margin:0}.article-optimizer-page{display:flex;height:100%;gap:0;padding:0;box-sizing:border-box}.drafts-sidebar{width:240px;flex-shrink:0;display:flex;flex-direction:column;background:var(--bg-surface);border-right:1px solid var(--border-color);overflow:hidden}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--border-color);background:var(--bg-primary)}.sidebar-header h3{margin:0;font-size:.9rem;font-weight:600;color:var(--text-primary)}.new-draft-btn{padding:.25rem .75rem;background:var(--primary-color);color:#fff;border:none;border-radius:4px;font-size:.75rem;font-weight:600;cursor:pointer;transition:background-color .2s}.new-draft-btn:hover{background:var(--primary-color-dark)}.drafts-list{flex:1;overflow-y:auto;padding:.5rem}.loading-drafts,.no-drafts{padding:2rem 1rem;text-align:center;color:var(--text-secondary);font-size:.875rem}.draft-item{position:relative;padding:.75rem;margin-bottom:.5rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:all .2s}.draft-item:hover{border-color:var(--primary-color);background:var(--bg-hover)}.draft-item.active{border-color:var(--primary-color);background:rgba(var(--primary-color-rgb),.1)}.draft-headline{font-size:.8rem;font-weight:500;color:var(--text-primary);margin-bottom:.5rem;line-height:1.3;word-break:break-word}.draft-meta{display:flex;align-items:center;gap:.5rem;font-size:.7rem}.draft-date{color:var(--text-secondary)}.draft-score{padding:.125rem .375rem;border-radius:3px;font-weight:600}.draft-score.score-excellent{background:rgba(34,197,94,.15);color:var(--success-color)}.draft-score.score-good{background:rgba(59,130,246,.15);color:var(--info-color)}.draft-score.score-fair{background:rgba(251,146,60,.15);color:var(--warning-color)}.draft-score.score-poor{background:rgba(239,68,68,.15);color:var(--danger-color)}.delete-draft-btn{position:absolute;top:.5rem;right:.5rem;width:18px;height:18px;padding:0;background:transparent;border:none;color:var(--text-secondary);font-size:.75rem;cursor:pointer;opacity:0;transition:opacity .2s,color .2s;display:flex;align-items:center;justify-content:center;border-radius:3px}.draft-item:hover .delete-draft-btn{opacity:1}.delete-draft-btn:hover{color:var(--danger-color);background:rgba(239,68,68,.1)}.editor-panel,.results-panel{display:flex;flex-direction:column;background:var(--bg-surface);border-right:1px solid var(--border-color);overflow:hidden;min-height:0}.editor-panel{flex:0 0 40%}.results-panel{flex:1;border-right:none}.results-panel>.panel-header{flex-shrink:0}.results-panel>.scores-section{flex-shrink:0}.results-panel>.analysis-section{flex:1;min-height:0}.results-panel>.analysis-actions{flex-shrink:0}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--border-color);background:var(--bg-primary);gap:1rem}.panel-header h2{margin:0;font-size:1.1rem;color:var(--text-primary);display:flex;align-items:center;gap:.25rem}.unsaved-indicator{color:var(--warning-color);font-weight:700}.header-actions{display:flex;align-items:center;gap:.75rem}.version-selector{display:flex;align-items:center;gap:.5rem}.version-selector label{font-size:.8rem;color:var(--text-secondary)}.version-selector select{padding:.3rem .5rem;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-surface);color:var(--text-primary);font-size:.8rem}.save-btn{padding:.3rem .75rem;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:4px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s}.save-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--primary-color)}.save-btn:disabled{opacity:.5;cursor:not-allowed}.editor-fields{flex:1;display:flex;flex-direction:column;padding:1rem;gap:1rem;overflow:hidden;min-height:0}.field-group{display:flex;flex-direction:column;gap:.5rem}.field-group.headline-group{flex-shrink:0}.field-group.content-group{flex:1;min-height:0;display:flex;flex-direction:column}.field-group label{font-weight:600;color:var(--text-primary);font-size:.875rem}.headline-input,.content-input{padding:.75rem;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-primary);color:var(--text-primary);font-family:inherit;font-size:.875rem;transition:border-color .2s}.headline-input{resize:none;height:70px;font-size:.95rem;font-weight:600}.content-input{flex:1;resize:none;min-height:0}.headline-input:focus,.content-input:focus{outline:none;border-color:var(--primary-color)}.analyze-button{flex-shrink:0;padding:.75rem 1.5rem;background:var(--primary-color);color:#fff;border:none;border-radius:4px;font-weight:600;cursor:pointer;transition:background-color .2s}.analyze-button:hover:not(:disabled){background:var(--primary-color-dark)}.analyze-button:disabled{opacity:.5;cursor:not-allowed}.scores-section{display:flex;justify-content:center;padding:1rem}.score-card{padding:1.25rem;border-radius:8px;text-align:center;border:2px solid transparent;transition:all .3s;min-width:160px}.score-card.score-excellent{background:rgba(34,197,94,.1);border-color:var(--success-color)}.score-card.score-good{background:rgba(59,130,246,.1);border-color:var(--info-color)}.score-card.score-fair{background:rgba(251,146,60,.1);border-color:var(--warning-color)}.score-card.score-poor{background:rgba(239,68,68,.1);border-color:var(--danger-color)}.score-label{font-size:.8rem;color:var(--text-secondary);margin-bottom:.25rem}.score-value{font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:.125rem}.score-status{font-size:.8rem;font-weight:600}.score-card.score-excellent .score-status{color:var(--success-color)}.score-card.score-good .score-status{color:var(--info-color)}.score-card.score-fair .score-status{color:var(--warning-color)}.score-card.score-poor .score-status{color:var(--danger-color)}.analysis-section{display:flex;flex-direction:column;padding:1rem;overflow:hidden}.analysis-section .section-title{margin:0 0 .75rem;font-size:.95rem;color:var(--text-primary);font-weight:600;flex-shrink:0}.analysis-content{flex:1;min-height:0;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.25rem;overflow-y:auto}.markdown-content{color:var(--text-primary);line-height:1.6;font-size:.85rem}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4{color:var(--text-primary);margin-top:1.25rem;margin-bottom:.5rem;font-weight:600}.markdown-content h1:first-child,.markdown-content h2:first-child,.markdown-content h3:first-child{margin-top:0}.markdown-content h1{font-size:1.3rem}.markdown-content h2{font-size:1.15rem}.markdown-content h3{font-size:1rem}.markdown-content h4{font-size:.9rem}.markdown-content p{margin:0 0 .75rem}.markdown-content p:last-child{margin-bottom:0}.markdown-content ul,.markdown-content ol{margin:0 0 .75rem;padding-left:1.25rem}.markdown-content li{margin-bottom:.375rem}.markdown-content strong{font-weight:600;color:var(--text-primary)}.markdown-content em{font-style:italic}.markdown-content code{background:var(--bg-secondary);padding:.15rem .35rem;border-radius:3px;font-size:.8em;font-family:monospace}.markdown-content blockquote{margin:.75rem 0;padding:.5rem .75rem;border-left:3px solid var(--primary-color);background:var(--bg-secondary);color:var(--text-secondary)}.markdown-content hr{border:none;border-top:1px solid var(--border-color);margin:1rem 0}.analysis-actions{padding:1rem;display:flex;justify-content:center;gap:.75rem}.apply-button{padding:.5rem 1.25rem;background:var(--success-color);color:#fff;border:none;border-radius:4px;font-weight:600;cursor:pointer;transition:background-color .2s}.apply-button:hover:not(:disabled){background:var(--success-color-dark)}.apply-button:disabled{opacity:.5;cursor:not-allowed}.clear-button{padding:.5rem 1.25rem;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;transition:background-color .2s}.clear-button:hover{background:var(--bg-hover)}.empty-state{padding:2rem 1.5rem;text-align:center;color:var(--text-secondary)}.empty-state p{margin-bottom:1.5rem;font-size:.9rem;line-height:1.5}.tips{max-width:400px;margin:0 auto;text-align:left;padding:1.25rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px}.tips h3{margin:0 0 .75rem;font-size:.9rem;color:var(--text-primary)}.tips ul{margin:0;padding-left:1.25rem}.tips li{margin-bottom:.375rem;color:var(--text-secondary);line-height:1.4;font-size:.8rem}.tips li:last-child{margin-bottom:0}.prompt-editor-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;justify-content:flex-end;z-index:1000}.prompt-editor-panel{width:900px;max-width:90vw;height:100%;background:var(--bg-surface);display:flex;flex-direction:column;box-shadow:-4px 0 20px #0003}.prompt-editor-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color);background:var(--bg-primary)}.header-title{display:flex;align-items:center;gap:1rem}.header-title h2{margin:0;font-size:1.25rem;color:var(--text-primary)}.current-version-badge{padding:.25rem .75rem;background:var(--success-color);color:#fff;border-radius:12px;font-size:.75rem;font-weight:600}.close-btn{width:32px;height:32px;border:none;background:transparent;color:var(--text-secondary);font-size:1.5rem;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s}.prompt-editor-loading{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.prompt-editor-content{flex:1;display:flex;overflow:hidden}.versions-sidebar{width:220px;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid var(--border-color);background:var(--bg-primary)}.versions-sidebar h3{margin:0;padding:1rem;font-size:.875rem;font-weight:600;color:var(--text-primary);border-bottom:1px solid var(--border-color)}.versions-list{flex:1;overflow-y:auto;padding:.5rem}.version-item{padding:.75rem;margin-bottom:.5rem;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;transition:all .2s}.version-item:hover{border-color:var(--primary-color)}.version-item.active{border-color:var(--primary-color);background:rgba(var(--primary-color-rgb),.1)}.version-item.live{border-left:3px solid var(--success-color)}.version-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.version-number{font-weight:600;color:var(--text-primary);font-size:.875rem}.live-badge{padding:.125rem .375rem;background:var(--success-color);color:#fff;border-radius:3px;font-size:.625rem;font-weight:700}.version-notes{font-size:.75rem;color:var(--text-secondary);margin-bottom:.25rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.version-date{font-size:.7rem;color:var(--text-muted)}.restore-btn{margin-top:.5rem;padding:.25rem .5rem;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:4px;font-size:.7rem;cursor:pointer;transition:all .2s}.restore-btn:hover:not(:disabled){background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.restore-btn:disabled{opacity:.5;cursor:not-allowed}.reset-default-btn{margin:.5rem;padding:.5rem;background:transparent;color:var(--text-secondary);border:1px dashed var(--border-color);border-radius:4px;font-size:.75rem;cursor:pointer;transition:all .2s}.reset-default-btn:hover:not(:disabled){color:var(--warning-color);border-color:var(--warning-color)}.reset-default-btn:disabled{opacity:.5;cursor:not-allowed}.editor-area{flex:1;display:flex;flex-direction:column;padding:1rem;overflow:hidden}.editor-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;flex-wrap:wrap;gap:.5rem}.viewing-info{display:flex;align-items:center;gap:.75rem;font-size:.8rem;color:var(--text-secondary)}.unsaved-badge{padding:.125rem .5rem;background:var(--warning-color);color:#fff;border-radius:3px;font-size:.7rem;font-weight:600}.placeholders-info{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--text-muted)}.placeholders-info code{padding:.125rem .375rem;background:var(--bg-secondary);border-radius:3px;font-family:monospace;font-size:.7rem}.template-editor{flex:1;width:100%;padding:1rem;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.8rem;line-height:1.5;resize:none;min-height:0}.template-editor:focus{outline:none;border-color:var(--primary-color)}.save-section{display:flex;gap:.75rem;margin-top:1rem}.change-notes-input{flex:1;padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-primary);color:var(--text-primary);font-size:.85rem}.change-notes-input:focus{outline:none;border-color:var(--primary-color)}.save-section .save-btn{padding:.5rem 1.25rem;background:var(--primary-color);color:#fff;border:none;border-radius:4px;font-weight:600;font-size:.85rem;cursor:pointer;white-space:nowrap;transition:background-color .2s}.save-section .save-btn:hover:not(:disabled){background:var(--primary-color-dark)}.save-section .save-btn:disabled{opacity:.5;cursor:not-allowed}.usage-stats{display:flex;gap:1.5rem;margin-top:.75rem;font-size:.75rem;color:var(--text-muted)}.ai-idea-tabs{display:flex;flex-direction:column;height:100%;min-height:0}.tab-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--bg-surface);border-bottom:1px solid var(--border-color)}.tab-buttons{display:flex;gap:.5rem}.prompt-settings-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:4px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s}.prompt-settings-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--primary-color)}.prompt-settings-btn svg{width:14px;height:14px}.tab-button{padding:.5rem 1.5rem;background:transparent;border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-weight:500;cursor:pointer;transition:all .2s}.tab-button:hover{background:var(--bg-hover);color:var(--text-primary)}.tab-button.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.tab-content{flex:1;overflow:hidden;min-height:0}.analytics-view{display:flex;flex-direction:column;height:100%;padding:16px 20px;gap:12px;overflow:hidden}.analytics-section{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.section-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-color);flex-shrink:0}.section-header h2{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.section-controls{display:flex;gap:10px}.section-select{padding:6px 12px;font-size:13px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-surface);color:var(--text-primary);cursor:pointer;min-width:140px}.section-select:focus{outline:none;border-color:var(--accent-primary)}.campaigns-by-user-section{flex-shrink:0}.campaigns-table-container{max-height:180px;overflow:auto}.table-loading{display:flex;align-items:center;justify-content:center;padding:24px}.overview-section{flex-shrink:0}.stats-loading{display:flex;align-items:center;justify-content:center;padding:24px}.chart-section{flex:1 1 0;min-height:200px;display:flex;flex-direction:column}.chart-section .chart-area{flex:1 1 0;min-height:0;padding:12px}.analytics-stats-grid{display:grid;grid-template-columns:1fr 1fr auto 1fr 1fr auto 1fr;gap:12px;flex-shrink:0;align-items:stretch;padding:12px 16px}.stats-separator{width:1px;background:var(--border-color);margin:8px 4px}.stat-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;padding:14px 12px;display:flex;flex-direction:column;align-items:center;text-align:center}.stat-value{font-size:24px;font-weight:700;color:var(--text-primary);line-height:1.2;text-align:center}.stat-label{font-size:11px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px;margin-top:4px}.chart-area{flex:1 1 0;min-height:0;min-width:0;display:flex;overflow:hidden}.animated-chart-container{flex:1 1 0;min-width:0;min-height:0;position:relative;overflow:hidden}.responsive-chart-wrapper{width:100%;height:100%;position:relative}.animated-chart-container svg,.responsive-chart-wrapper svg{display:block}.animated-chart-container .no-chart-data{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted)}.analytics-table{width:100%;border-collapse:collapse}.analytics-table th,.analytics-table td{padding:10px 16px;text-align:left;border-bottom:1px solid var(--border-color);white-space:nowrap}.analytics-table th{font-size:13px;font-weight:600;color:var(--text-secondary);background:var(--bg-secondary);position:sticky;top:0;z-index:1}.analytics-table th:not(:first-child){text-align:center}.analytics-table td{font-size:14px;color:var(--text-primary)}.analytics-table td:first-child{font-weight:500}.analytics-table .count-cell{text-align:center;font-weight:600}.analytics-table tbody tr:hover{background-color:var(--bg-secondary)}.analytics-table tbody tr:last-child td{border-bottom:none}.chart-loading{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.no-chart-data{color:var(--text-muted);font-size:14px;text-align:center}.chart-tooltip{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:6px;padding:8px 12px;box-shadow:0 2px 8px #00000026;z-index:10}.chart-tooltip .tooltip-date{margin:0 0 4px;font-size:12px;color:var(--text-secondary)}.chart-tooltip .tooltip-value{margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.analytics-loading,.analytics-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:12px;color:var(--text-secondary)}.analytics-loading .loading-spinner,.chart-loading .loading-spinner,.table-loading .loading-spinner,.stats-loading .loading-spinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--accent-primary);border-radius:50%;animation:analytics-spin .8s linear infinite}@keyframes analytics-spin{to{transform:rotate(360deg)}}.analytics-error button{padding:6px 14px;background:var(--accent-primary);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:13px}.no-data{color:var(--text-muted);font-size:14px;text-align:center;margin:0;flex:1;display:flex;align-items:center;justify-content:center}@media (max-width: 1200px){.analytics-stats-grid{grid-template-columns:repeat(4,1fr)}.stats-separator{display:none}}@media (max-width: 768px){.analytics-view{padding:12px;gap:10px;overflow-y:auto;height:auto}.analytics-stats-grid{grid-template-columns:repeat(2,1fr)}.stats-separator{display:none}.stat-value{font-size:20px}.campaigns-table-container{max-height:none;overflow:visible}.analytics-table th,.analytics-table td{padding:8px 10px}.section-header{flex-direction:column;align-items:flex-start;gap:10px}.section-controls{width:100%}.section-select{flex:1}.chart-section{min-height:200px}}@media (max-width: 480px){.analytics-stats-grid{grid-template-columns:1fr 1fr}.stat-card{padding:10px 8px}.stat-value{font-size:18px}.stat-label{font-size:10px}}.email-inbox{display:flex;flex-direction:column;height:100%;background:var(--bg-surface);overflow:hidden}.email-topbar{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:var(--bg-primary);border-bottom:1px solid var(--border-color);gap:20px;flex-shrink:0}.email-topbar-left{display:flex;align-items:center;gap:16px}.compose-btn{background:var(--btn-primary-bg);color:var(--btn-primary-text)!important;padding:8px 20px;border-radius:6px;font-weight:500;display:flex;align-items:center;gap:8px;border:none;cursor:pointer;transition:background .2s}.compose-btn:hover{background:var(--btn-primary-hover)}.compose-icon{font-size:18px;font-weight:300}.refresh-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:transparent;border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;transition:background .2s}.refresh-btn:hover:not(:disabled){background:var(--bg-surface)}.refresh-btn:disabled{opacity:.6;cursor:not-allowed}.refresh-btn.refreshing{background:var(--bg-surface)}.refresh-icon{font-size:16px;display:inline-block;transition:transform .3s}.refresh-icon.spinning{animation:spin 1s linear infinite}.refresh-status{padding:4px 12px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:13px;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.email-topbar-right{display:flex;align-items:center;gap:12px}.view-toggle,.grid-view{padding:8px;background:transparent;border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;width:36px;height:36px;transition:background .2s}.view-toggle:hover,.grid-view:hover{background:var(--bg-surface)}.search-container{position:relative;display:flex;align-items:center;gap:12px;flex-wrap:nowrap}.search-icon{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-secondary);pointer-events:none;font-size:14px}.email-search{padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-surface);color:var(--text-primary);width:400px;transition:border-color .2s}.email-count{font-size:13px;color:var(--text-secondary);white-space:nowrap;flex-shrink:0}.campaign-filter-checkbox{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;font-size:13px;color:var(--text-primary);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:6px;transition:all .2s ease}.campaign-filter-checkbox:hover{background:var(--bg-hover);border-color:var(--border-color-light)}.campaign-filter-checkbox input[type=checkbox]{appearance:none;-webkit-appearance:none;-moz-appearance:none;position:relative;width:18px;height:18px;margin:0;cursor:pointer;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:4px;transition:all .2s ease}.campaign-filter-checkbox input[type=checkbox]:hover{border-color:var(--text-secondary)}.campaign-filter-checkbox span{font-weight:500;font-size:13px;line-height:1}.email-content{display:flex;flex:1;overflow:hidden;background:var(--bg-surface);min-height:0}.email-list{width:400px;min-width:400px;max-width:400px;background:var(--bg-primary);border-right:1px solid var(--border-color);overflow-y:auto;flex-shrink:0}.email-list::-webkit-scrollbar,.email-detail::-webkit-scrollbar{width:10px;height:10px}.email-list::-webkit-scrollbar-track,.email-detail::-webkit-scrollbar-track{background:var(--bg-primary);border-radius:5px}.email-list::-webkit-scrollbar-thumb,.email-detail::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:5px;border:2px solid var(--bg-primary)}.email-list::-webkit-scrollbar-thumb:hover,.email-detail::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}[data-theme=dark] .email-list::-webkit-scrollbar-track,[data-theme=dark] .email-detail::-webkit-scrollbar-track{background:var(--bg-surface)}[data-theme=dark] .email-list::-webkit-scrollbar-thumb,[data-theme=dark] .email-detail::-webkit-scrollbar-thumb{background:#4a4a4a;border:2px solid var(--bg-surface)}[data-theme=dark] .email-list::-webkit-scrollbar-thumb:hover,[data-theme=dark] .email-detail::-webkit-scrollbar-thumb:hover{background:#5a5a5a}.email-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;gap:12px;min-width:0}.email-actions{display:flex;gap:8px;align-items:center}.action-btn{padding:6px 12px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);cursor:pointer;display:flex;align-items:center;gap:4px;font-size:13px;transition:all .2s}.action-btn:hover{background:var(--bg-surface);border-color:var(--color-primary)}.delete-btn:hover{background:rgba(220,53,69,.1);border-color:var(--color-danger)}.more-actions{padding:6px 8px;background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;font-size:16px;border-radius:4px;transition:all .2s;display:flex;align-items:center;justify-content:center}.more-actions:hover{background:var(--bg-surface)}.email-title{font-size:20px;font-weight:500;color:var(--text-primary);margin-bottom:16px;display:flex;justify-content:space-between;align-items:center}.email-meta{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--bg-surface);border-radius:6px;margin-bottom:20px}.sender-info{display:flex;flex-direction:column;gap:2px}.recipient-info{font-size:13px;color:var(--text-secondary)}.expand-btn{padding:4px 8px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;font-size:16px;border-radius:4px;transition:background .2s}.expand-btn:hover{background:var(--bg-surface)}.email-body{background:transparent;padding:20px;border-radius:6px;min-height:300px;line-height:1.6;color:var(--text-primary);border:1px solid var(--border-color);flex:1;overflow-wrap:break-word;word-break:break-word;overflow-x:auto;overflow-y:visible;max-width:100%}.email-body *{max-width:100%;box-sizing:border-box}.email-body p{margin-bottom:12px;color:var(--text-primary)!important;overflow-wrap:break-word;word-break:break-word}.email-body div,.email-body span,.email-body td,.email-body th,.email-body li,.email-body p,.email-body font,.email-body strong,.email-body em,.email-body b,.email-body i{color:var(--text-primary)!important;background-color:transparent!important}.email-body[style],.email-body *[style]{background-color:transparent!important}.email-body img,.email-detail img{max-width:100%;height:auto;display:inline-block;margin:8px 0;border-radius:4px}.email-body a,.email-detail a{color:var(--color-primary);text-decoration:underline;opacity:.9}.email-body a:hover,.email-detail a:hover{opacity:1;text-decoration:underline}.email-body blockquote,.email-detail blockquote{border-left:2px solid var(--border-color);padding-left:12px;margin-left:0;color:var(--text-secondary);opacity:.8}.thread-message .email-body{color:var(--text-secondary)}.thread-message .thread-body{overflow-wrap:break-word;word-break:break-word;max-width:100%}.thread-message .thread-body *{max-width:100%;box-sizing:border-box}.thread-message{color:var(--text-primary);max-width:100%;overflow-wrap:break-word}.thread-message .message-header{color:var(--text-primary)}.compose-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.compose-modal{background:var(--bg-surface);border-radius:12px;width:90%;max-width:700px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.compose-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-color)}.compose-header h3{font-size:18px;font-weight:500;color:var(--text-primary)}.close-btn{padding:4px 8px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;font-size:24px;border-radius:4px;transition:background .2s}.close-btn:hover{background:var(--bg-surface)}.compose-body{padding:24px;flex:1;overflow-y:auto}.compose-field{display:flex;align-items:flex-start;margin-bottom:16px}.compose-field label{width:60px;padding:8px 0;color:var(--text-secondary);font-size:14px}.compose-field input,.compose-field textarea{flex:1;padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;transition:border-color .2s}.compose-field input:focus,.compose-field textarea:focus{outline:none;border-color:var(--color-primary)}.compose-field textarea{resize:vertical;font-family:inherit;line-height:1.5}.compose-footer{display:flex;gap:12px;padding:20px 24px;border-top:1px solid var(--border-color)}.send-btn{background:var(--btn-primary-bg);color:var(--btn-primary-text);padding:10px 24px;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:background .2s}.send-btn:hover{background:var(--btn-primary-hover)}[data-theme=dark] .email-inbox{background:var(--bg-primary)}[data-theme=dark] .email-search,[data-theme=dark] .email-body{background:var(--bg-surface)}@media (max-width: 768px){.email-list{width:100%}.email-detail{display:none}.email-item.selected~.email-detail{display:flex;position:fixed;top:0;left:0;right:0;bottom:0;z-index:100}.search-container{display:none}}.filter-indicator{font-size:12px;padding:2px 4px;background:var(--bg-secondary);border-radius:4px;cursor:help;flex-shrink:0}.email-item.filtered{border-left:3px solid var(--primary-color)}.email-tags{display:flex;gap:6px;margin-top:4px}.email-tag{display:inline-block;padding:2px 8px;background:var(--bg-secondary);color:var(--text-secondary);border-radius:12px;font-size:11px;font-weight:500}.bulk-email-page{height:100%;width:100%;background:var(--bg-primary);padding:0;margin:0;overflow:hidden;box-sizing:border-box}.bulk-email-container{width:100%;height:100%;display:flex;flex-direction:column}.bulk-compose-card{height:100%;display:flex;flex-direction:column;background:var(--bg-surface);border:none;border-radius:0;overflow:hidden}.bulk-compose-header{flex:0 0 auto;padding:1rem 1.5rem;border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between}.bulk-compose-header h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary)}.account-info{font-size:.85rem;color:var(--text-secondary)}.sending-status{font-size:.95rem;color:var(--text-primary);font-weight:500;display:flex;align-items:center;gap:.5rem}.status-indicator{width:8px;height:8px;border-radius:50%;background:var(--color-success);display:inline-block;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.failed-count{color:var(--color-danger);font-weight:400}.bulk-compose-body{flex:1;padding:1rem 1.5rem;display:flex;flex-direction:column;gap:.75rem;overflow-y:auto}.recipients-row{display:flex;align-items:center;padding-bottom:1rem;border-bottom:1px solid var(--border-light);width:100%}.csv-upload-inline{display:flex;align-items:center;flex:0 0 auto;gap:1rem}#csv-upload{position:absolute;opacity:0;width:0;height:0}label.csv-upload-button{display:inline-flex!important;align-items:center!important;gap:.4rem!important;padding:.5rem 1rem!important;background:var(--bg-primary)!important;border:1px solid var(--border-color)!important;border-radius:6px!important;cursor:pointer!important;font-size:.95rem!important;color:var(--text-primary)!important;transition:all .2s!important;font-weight:500!important}label.csv-upload-button:hover{background:var(--bg-hover)!important;border-color:var(--primary-color)!important}.recipient-count{font-size:.9rem;color:var(--success-color);font-weight:500;flex:1;margin-left:1rem}.csv-format-hint{font-size:.85rem;color:var(--text-secondary);margin-left:1rem;flex:1}.compose-subject{width:100%;padding:.75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:1rem;transition:border-color .2s}.compose-subject:focus{outline:none;border-color:var(--primary-color)}.greeting-option{padding:.75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;margin-bottom:.5rem}.greeting-checkbox{display:flex;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none}.greeting-checkbox input[type=checkbox]{margin-right:.5rem;width:16px;height:16px;cursor:pointer}.checkbox-label{color:var(--text-primary);font-size:.95rem;font-weight:500}.greeting-info{margin-top:.5rem;padding-left:1.5rem}.greeting-info small{color:var(--text-secondary);font-size:.85rem;line-height:1.4;display:block}.editor-mode-toggle{display:flex;gap:.5rem;padding:.5rem 0}.mode-btn{padding:.4rem .8rem;background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;font-size:.85rem;border-radius:4px;transition:all .2s;display:flex;align-items:center;gap:.4rem}.mode-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary);border-color:var(--primary-color)}.mode-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.mode-btn:disabled{opacity:.5;cursor:not-allowed}.mode-icon{font-size:.9rem}.editor-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;gap:1rem}.editor-settings{display:flex;align-items:center}.unsubscribe-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:var(--text-secondary);font-size:.9rem}.unsubscribe-checkbox input[type=checkbox]{cursor:pointer;width:16px;height:16px}.unsubscribe-checkbox:hover{color:var(--text-primary)}.editor-container{flex:1;display:flex;flex-direction:column;min-height:200px;max-height:400px;overflow:hidden;border-radius:6px}.html-textarea{flex:1;width:100%;padding:.75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-family:Courier New,monospace;font-size:.9rem;line-height:1.5;resize:vertical;min-height:200px;max-height:400px;overflow-y:auto}.html-textarea:focus{outline:none;border-color:var(--primary-color);background:var(--bg-surface)}.html-textarea::placeholder{color:var(--text-secondary);opacity:.6}.plain-textarea{flex:1;width:100%;padding:.75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-family:system-ui,-apple-system,sans-serif;font-size:.95rem;line-height:1.6;resize:vertical;min-height:200px;max-height:400px;overflow-y:auto}.plain-textarea:focus{outline:none;border-color:var(--primary-color);background:var(--bg-surface)}.plain-textarea::placeholder{color:var(--text-secondary);opacity:.6}.format-note{padding:.5rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;margin-top:.5rem;opacity:.8}.config-button.mode-btn{margin-left:1rem;border-left:2px solid var(--border-color);padding-left:1rem}.config-modal .modal-body{padding:0}.config-tabs{display:flex;border-bottom:2px solid var(--border-color);padding:0 1.5rem;background:var(--bg-surface)}.config-tab{padding:1rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;color:var(--text-secondary);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:-2px}.config-tab:hover{color:var(--text-primary);background:var(--bg-secondary)}.config-tab.active{color:var(--accent-color);border-bottom-color:var(--accent-color);background:var(--bg-primary)}.config-content{padding:1.5rem;min-height:250px}.config-field{margin-bottom:1.5rem}.config-field label{display:block;margin-bottom:.5rem;color:var(--text-primary);font-weight:500;font-size:.95rem}.config-input{width:100%;padding:.5rem .75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:.95rem;transition:all .2s ease}.config-input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 2px rgba(var(--accent-rgb),.1)}.config-input[type=number]{width:120px}.config-help{display:block;margin-top:.25rem;color:var(--text-secondary);font-size:.85rem}.config-checkbox{display:flex;align-items:center;cursor:pointer;font-weight:500}.config-checkbox input[type=checkbox]{margin-right:.5rem;width:18px;height:18px;cursor:pointer}.schedule-datetime{margin-top:1rem;padding-left:1.5rem}.schedule-datetime .config-input{max-width:300px}.domains-config{display:flex;flex-direction:column;min-height:200px}.domains-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.domains-title{font-size:.95rem;font-weight:500;color:var(--text-primary)}.domains-actions{display:flex;gap:.5rem}.domain-action-btn{padding:.25rem .75rem;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:.85rem;cursor:pointer;transition:all .2s ease}.domain-action-btn:hover{background:var(--bg-secondary);border-color:var(--accent-color)}.no-domains{display:flex;align-items:center;justify-content:center;min-height:150px;color:var(--text-secondary);font-style:italic}.domains-list{display:flex;flex-direction:column;gap:.5rem;max-height:300px;overflow-y:auto;padding:.5rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px}.domain-item{display:flex;align-items:center;padding:.5rem;background:var(--bg-surface);border-radius:4px;cursor:pointer;transition:all .2s ease}.domain-item:hover{background:var(--bg-secondary)}.domain-checkbox{width:18px;height:18px;margin-right:.75rem;cursor:pointer}.domain-name{flex:1;color:var(--text-primary);font-size:.95rem}.domain-count{color:var(--text-secondary);font-size:.85rem;margin-left:.5rem}.domain-tags{display:flex;gap:.375rem;margin-left:.5rem;flex-wrap:wrap;align-items:center}.domain-tag{padding:.125rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500;white-space:nowrap}.domains-summary{margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border-color);text-align:center;color:var(--text-secondary);font-size:.9rem}.domains-list::-webkit-scrollbar{width:6px}.domains-list::-webkit-scrollbar-track{background:var(--bg-surface);border-radius:3px}.domains-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.domains-list::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.config-actions{display:flex;justify-content:flex-end;gap:1rem;padding:1rem 1.5rem;border-top:1px solid var(--border-color);background:var(--bg-surface)}.config-actions button{padding:.5rem 1.25rem;border-radius:4px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease}.config-actions .btn-secondary{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary)}.config-actions .btn-secondary:hover{background:var(--bg-secondary)}.config-actions .btn-primary{background:var(--accent-color);border:1px solid var(--accent-color);color:var(--text-on-accent)}.config-actions .btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.html-editor{flex:1;display:flex;flex-direction:column;background:var(--bg-primary);border-radius:6px}.html-editor .ql-toolbar{background:var(--bg-surface);border:1px solid var(--border-color);border-bottom:none;border-top-left-radius:6px;border-top-right-radius:6px}.html-editor .ql-container{flex:1;background:var(--bg-primary);border:1px solid var(--border-color);border-bottom-left-radius:6px;border-bottom-right-radius:6px;font-family:inherit;font-size:.95rem;overflow-y:auto}.html-editor .ql-editor{min-height:150px;max-height:300px;color:var(--text-primary);padding:.75rem}.html-editor .ql-editor.ql-blank:before{color:var(--text-secondary);font-style:normal;opacity:.6}.html-editor .ql-toolbar button{color:var(--text-secondary)}.html-editor .ql-toolbar button:hover{color:var(--text-primary)}.html-editor .ql-toolbar button.ql-active{color:var(--primary-color)}.html-editor .ql-toolbar .ql-stroke{stroke:var(--text-secondary)}.html-editor .ql-toolbar .ql-stroke:hover{stroke:var(--text-primary)}.html-editor .ql-toolbar .ql-active .ql-stroke{stroke:var(--primary-color)}.html-editor .ql-toolbar .ql-fill{fill:var(--text-secondary)}.html-editor .ql-toolbar .ql-active .ql-fill{fill:var(--primary-color)}.html-editor .ql-toolbar .ql-picker-label{color:var(--text-secondary)}.html-editor .ql-toolbar .ql-picker-options{background:var(--bg-surface);border-color:var(--border-color)}.greeting-note{margin-top:.75rem;padding:.75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px}.greeting-note small{color:var(--text-secondary);font-size:.85rem;line-height:1.5}.greeting-note strong{color:var(--text-primary);font-weight:600}.bulk-compose-footer{flex:0 0 auto;padding:.75rem 1.5rem;border-top:1px solid var(--border-color);display:flex;align-items:center;justify-content:flex-end;gap:1rem;background:var(--bg-primary)}.progress-inline{display:flex;align-items:center;gap:1rem;margin-right:auto}.progress-bar-small{width:200px;height:6px;background:var(--bg-surface);border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary-color),var(--primary-hover));transition:width .3s ease}.progress-text{font-size:.85rem;color:var(--text-secondary)}.send-button{padding:.5rem 2rem!important;min-width:120px!important;font-weight:600!important;font-size:.95rem!important;background:#28a745!important;color:#fff!important;border:none!important;border-radius:6px!important;cursor:pointer!important;transition:all .2s!important;flex:0 0 auto!important;margin-left:auto!important;box-shadow:0 2px 4px #00000026!important;display:inline-block!important;white-space:nowrap!important;text-transform:none!important;text-decoration:none!important;line-height:1.5!important}.send-button:hover:not(:disabled){background:#218838!important;box-shadow:0 3px 6px #0003!important;transform:translateY(-1px)!important}.send-button:active:not(:disabled){transform:translateY(0)!important;box-shadow:0 1px 3px #00000026!important}.send-button:disabled{opacity:.5!important;cursor:not-allowed!important;background:#6c757d!important}@media (max-width: 768px){.bulk-compose-body{padding:1rem}.compose-body{min-height:150px}.progress-bar-small{width:120px}}.filters-page{height:100%;display:flex;flex-direction:column;background:var(--bg-primary)}.filters-tabs-container{background:var(--bg-surface);border-bottom:1px solid var(--border-color);padding:0 1rem}.filters-tabs{display:flex;align-items:center;gap:.5rem;height:48px;overflow-x:auto;scrollbar-width:thin}.filter-tab{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .2s;font-size:.875rem;color:var(--text-secondary);white-space:nowrap;height:100%;position:relative}.filter-tab:hover{color:var(--text-primary);background:var(--bg-hover)}.filter-tab:hover .tab-count{background:var(--bg-tertiary);color:var(--text-primary)}.filter-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);background:var(--bg-active)}.tab-icon{font-size:1.125rem}.tab-label{font-weight:500}.tab-count{background:var(--bg-secondary);color:var(--text-secondary);padding:.125rem .375rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:600;min-width:1.25rem;text-align:center}.filter-tab.active .tab-count{background:var(--color-primary);color:#fff;font-weight:700}.filters-actions{margin-left:auto;display:flex;align-items:center;padding-left:1rem}.refresh-btn{padding:.375rem .75rem;font-size:.875rem}.bounce-subcategory-toggle{display:flex;gap:.5rem;padding:.75rem 1rem;background:var(--bg-surface);border-bottom:1px solid var(--border-color);align-items:center}.subcategory-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all .2s;font-size:.875rem;font-weight:500;color:var(--text-secondary);white-space:nowrap}.subcategory-btn:hover{background:var(--bg-hover);border-color:var(--color-primary);color:var(--text-primary)}.subcategory-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:600}.subcategory-count{background:rgba(255,255,255,.2);padding:.125rem .375rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:600;min-width:1.25rem;text-align:center}.subcategory-btn:not(.active) .subcategory-count{background:var(--bg-tertiary);color:var(--text-secondary)}.filters-content{flex:1;display:flex;overflow:hidden;background:var(--border-color);gap:1px}.filters-email-list{width:400px;background:var(--bg-surface);display:flex;flex-direction:column;border-right:1px solid var(--border-color)}.search-input{width:100%;padding:.5rem 1rem;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-primary);font-size:.875rem}.email-count{margin-top:.5rem;color:var(--text-muted);font-size:.875rem;display:block;white-space:nowrap}.email-list{flex:1;overflow-y:auto}.email-sender{font-size:14px;color:var(--text-primary);font-weight:500}.email-subject{font-size:14px;color:var(--text-primary);margin-bottom:4px;display:flex;align-items:center;gap:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.loading-state,.error-state,.empty-state{display:flex;align-items:center;justify-content:center;height:300px;color:var(--text-muted);font-size:.9rem;padding:2rem;text-align:center}.error-state{flex-direction:column;gap:1rem}.error-state p{margin:0}.filters-tabs::-webkit-scrollbar{height:4px}.filters-tabs::-webkit-scrollbar-track{background:var(--bg-primary)}.filters-tabs::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:2px}.filters-tabs::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@media (max-width: 1024px){.filters-email-list{width:350px}}@media (max-width: 768px){.filters-content{flex-direction:column}.filters-email-list{width:100%;border-right:none;border-bottom:1px solid var(--border-color);max-height:50vh}.filters-email-detail{min-height:50vh}.filter-tab{padding:.5rem .75rem;font-size:.8rem}.tab-icon{font-size:1rem}.email-item.selected{background:var(--bg-active)}}@media (max-width: 480px){.filters-tabs-container{padding:0 .5rem}.filter-tab{padding:.375rem .5rem}.tab-label{display:none}.tab-count{margin-left:.25rem}.email-detail-header,.email-detail-body{padding:1rem}}.user-overview-container{padding:20px;background-color:var(--bg-primary);height:calc(100vh - 140px);overflow:hidden;display:flex;flex-direction:column}.system-overview{margin-bottom:var(--spacing-xl)}.system-overview h3{margin:0 0 var(--spacing-lg) 0;color:var(--text-primary);font-size:var(--font-lg)}.overview-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-md)}.overview-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-md)}.overview-icon{font-size:var(--font-xxl)}.overview-content{display:flex;flex-direction:column;gap:var(--spacing-xs)}.overview-value{font-size:var(--font-xl);font-weight:600;color:var(--text-primary)}.overview-label{font-size:var(--font-sm);color:var(--text-secondary)}.user-stats-section{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.stats-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-shrink:0}.stats-header h3{margin:0;color:var(--text-primary);font-size:var(--font-lg)}.time-range-selector{display:flex;gap:var(--spacing-xs);background:var(--bg-secondary);padding:var(--spacing-xs);border-radius:var(--radius-md)}.time-range-btn{padding:var(--spacing-xs) var(--spacing-md);background:transparent;border:none;color:var(--text-secondary);font-size:var(--font-sm);font-weight:500;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.time-range-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.time-range-btn.active{background:var(--bg-surface);color:var(--primary);box-shadow:var(--shadow-sm)}.user-stats-table-card{flex:1;overflow:visible;display:flex;flex-direction:column;min-height:0}.user-stats-table-wrapper{width:100%;overflow:hidden;flex:1;display:flex;flex-direction:column}.user-stats-table{width:100%;border-collapse:collapse}.user-stats-table thead{position:sticky;top:0;z-index:10}.user-stats-table th{background-color:var(--bg-tertiary);color:var(--text-primary);padding:12px;text-align:left;font-weight:500;font-size:13px;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border-color)}.user-stats-table td{padding:12px;border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:14px;vertical-align:middle}.user-stats-table tbody{display:block;max-height:calc(100vh - 320px);overflow-y:auto;width:100%}.user-stats-table thead,.user-stats-table tbody tr{display:table;width:100%;table-layout:fixed}.user-stats-table tbody::-webkit-scrollbar{width:8px}.user-stats-table tbody::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:4px}.user-stats-table tbody::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:4px}.user-stats-table tbody::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.clickable-row{cursor:pointer}.clickable-row:hover{background:var(--bg-hover)}.user-info-cell{display:flex;flex-direction:column;gap:var(--spacing-xs)}.user-name{font-weight:600;color:var(--text-primary)}.accounts-info{display:flex;flex-direction:column;gap:var(--spacing-xs)}.account-count{font-weight:500;color:var(--text-primary)}.account-status{font-size:var(--font-sm);color:var(--text-secondary)}.utilization-cell{display:flex;flex-direction:column;gap:var(--spacing-xs)}.utilization-value{font-weight:500}.utilization-value.low{color:var(--success)}.utilization-value.medium{color:var(--warning)}.utilization-value.high{color:var(--danger)}.utilization-bar-small{width:60px;height:4px;background:var(--bg-secondary);border-radius:var(--radius-xs);overflow:hidden}.utilization-fill{height:100%;transition:width var(--transition-normal)}.utilization-fill.low{background:var(--success)}.utilization-fill.medium{background:var(--warning)}.utilization-fill.high{background:var(--danger)}.metric-value{font-weight:500;color:var(--text-primary)}.no-accounts{color:var(--text-secondary);font-style:italic}.empty-cell{text-align:center;color:var(--text-muted);padding:40px;font-size:14px}.performance-badge{display:inline-flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-sm);font-weight:500}.performance-badge.excellent{background:var(--success-light);color:var(--success);border:1px solid var(--success)}.performance-badge.good{background:var(--info-light);color:var(--info);border:1px solid var(--info)}.performance-badge.warning{background:var(--warning-light);color:var(--warning);border:1px solid var(--warning)}.performance-badge.critical{background:var(--danger-light);color:var(--danger);border:1px solid var(--danger)}.user-recommendation{padding:var(--spacing-sm);background:var(--info-light);color:var(--info);border:1px solid var(--info);border-radius:var(--radius-sm);font-size:var(--font-sm)}.unassigned-alert{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--warning-light);border:2px solid var(--warning);border-radius:var(--radius-md);margin-top:var(--spacing-xl)}.alert-icon{font-size:var(--font-xxl)}.alert-content h4{margin:0 0 var(--spacing-xs) 0;color:var(--text-primary);font-size:var(--font-md)}.alert-content p{margin:0;color:var(--text-secondary);font-size:var(--font-sm);line-height:1.5}@media (max-width: 768px){.overview-cards{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.utilization-bar-small{width:40px}}.domain-details-modal{display:flex;flex-direction:column;min-height:500px}.domain-tabs{display:flex;gap:10px;border-bottom:2px solid var(--border-color);margin-bottom:20px;flex-shrink:0}.domain-tab{padding:10px 20px;background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;border-bottom:2px solid transparent;margin-bottom:-2px}.domain-tab:hover{color:var(--text-primary)}.domain-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.domain-tab-content{padding:20px 0}.overview-tab{display:flex;flex-direction:column;gap:20px}.domain-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.info-field{display:flex;flex-direction:column;gap:5px}.info-field label{font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:14px;color:var(--text-primary);font-weight:500}.verified-badge{color:var(--success);margin-right:5px}.status-badge{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize}.status-badge.active{background-color:var(--success-bg);color:var(--success)}.status-badge.blocked{background-color:var(--danger-bg);color:var(--danger)}.domain-notes{display:flex;flex-direction:column;gap:10px}.notes-input,.template-input{padding:10px;border:1px solid var(--border-color);border-radius:4px;background-color:var(--bg-primary);color:var(--text-primary);font-size:14px;resize:vertical}.notes-text{padding:10px;background-color:var(--bg-tertiary);border-radius:4px;color:var(--text-secondary);min-height:80px}.domain-tags-section{display:flex;flex-direction:column;gap:10px}.tags-grid{display:flex;flex-wrap:wrap;gap:8px}.tag-option{padding:6px 12px;border:2px solid;border-radius:16px;cursor:pointer;font-size:12px;font-weight:500;transition:all .2s ease;display:inline-flex;align-items:center;gap:4px;-webkit-user-select:none;user-select:none}.tag-option.selected{transform:scale(1.05)}.overview-actions{display:flex;gap:10px;margin-top:20px;padding:15px;background-color:var(--warning-bg);border-radius:6px;border:1px solid var(--warning);animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.accounts-tab{display:flex;flex-direction:column;gap:20px}.accounts-summary{display:flex;gap:20px;padding:15px;background:var(--bg-tertiary);border-radius:8px;border:1px solid var(--border-color)}.summary-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:5px}.summary-stat .stat-label{font-size:12px;color:var(--text-muted);text-transform:uppercase}.summary-stat .stat-value{font-size:24px;font-weight:600;color:var(--text-primary)}.summary-stat .stat-value.success{color:var(--success)}.summary-stat .stat-value.warning{color:var(--warning)}.summary-stat .stat-value.danger{color:var(--danger)}.accounts-table-wrapper{background:var(--bg-tertiary);border-radius:8px;border:1px solid var(--border-color);overflow-x:auto;max-height:500px;overflow-y:auto}.accounts-table{width:100%;border-collapse:collapse}.accounts-table thead{background:var(--bg-secondary);position:sticky;top:0;z-index:1}.accounts-table th{padding:12px 15px;text-align:left;font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border-color)}.accounts-table td{padding:12px 15px;font-size:13px;color:var(--text-primary);border-bottom:1px solid var(--border-color)}.accounts-table tbody tr:last-child td{border-bottom:none}.accounts-table tbody tr:hover{background:var(--bg-secondary)}.accounts-table tbody tr.needs-reauth{background:var(--danger-bg)}.accounts-table tbody tr.needs-reauth:hover{background:var(--danger-bg);opacity:.9}.email-cell{font-weight:500;color:var(--text-primary)}.last-activity-cell{font-size:12px;color:var(--text-muted)}.text-muted{color:var(--text-muted)}.contacts-tab{display:flex;flex-direction:column;gap:20px}.contacts-list{display:flex;flex-direction:column;gap:15px;max-height:400px;overflow-y:auto}.contact-item{padding:15px;background-color:var(--bg-tertiary);border-radius:6px}.contact-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.contact-header strong{color:var(--text-primary);font-size:14px}.decision-maker-badge{padding:3px 8px;background-color:var(--warning-bg);color:var(--warning);border-radius:10px;font-size:11px;font-weight:600}.contact-details{color:var(--text-secondary);font-size:13px;margin-bottom:8px}.contact-stats{display:flex;gap:15px;font-size:12px;color:var(--text-muted)}.statistics-tab{display:flex;flex-direction:column;gap:20px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.stat-card{padding:15px;background-color:var(--bg-tertiary);border-radius:6px;text-align:center}.stat-label{font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;display:block}.activity-timeline{display:flex;flex-direction:column;gap:15px;padding:20px;background-color:var(--bg-tertiary);border-radius:6px}.timeline-item{display:flex;justify-content:space-between;align-items:center;padding-bottom:10px;border-bottom:1px solid var(--border-color)}.timeline-item:last-child{border-bottom:none;padding-bottom:0}.timeline-item label{font-size:13px;color:var(--text-muted)}.timeline-item span{font-size:13px;color:var(--text-primary);font-weight:500}.history-tab{display:flex;flex-direction:column;gap:20px}.history-list{display:flex;flex-direction:column;gap:10px;max-height:400px;overflow-y:auto}.history-item{padding:12px;background-color:var(--bg-tertiary);border-radius:4px;border-left:3px solid var(--primary)}.history-time{font-size:11px;color:var(--text-muted);margin-bottom:5px}.history-event{font-size:13px;color:var(--text-primary)}.event-type{font-weight:500;text-transform:capitalize}.event-user{color:var(--text-secondary)}.history-data{margin-top:8px;padding:8px;background-color:var(--bg-secondary);border-radius:4px;font-size:11px;color:var(--text-muted);font-family:monospace;word-break:break-all}.settings-tab{display:flex;flex-direction:column;gap:30px}.setting-group{display:flex;flex-direction:column;gap:15px}.setting-group h4{color:var(--text-primary);font-size:16px;font-weight:600;margin-bottom:10px}.setting-item{display:flex;flex-direction:column;gap:10px}.setting-item label{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--text-primary);cursor:pointer}.setting-item input[type=checkbox]{cursor:pointer}.danger-zone{padding:20px;background-color:var(--danger-bg);border-radius:6px;border:1px solid var(--danger)}.danger-zone h4{color:var(--danger)}.settings-actions{display:flex;gap:10px}.empty-state{padding:40px;text-align:center;color:var(--text-muted);font-size:14px}.notes-input:focus,.tag-option:hover{outline:2px solid var(--primary);outline-offset:2px}.tag-option{transition:all .2s ease}.tag-option:active{transform:scale(.95)}.configuration-tab{display:flex;flex-direction:column;gap:25px}.configuration-tab h3{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:10px}.smtp-configs,.microsoft-config{display:flex;flex-direction:column;gap:15px}.config-card{background:var(--bg-tertiary);border-radius:8px;padding:20px;border:1px solid var(--border-color)}.config-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid var(--border-color)}.config-provider{font-size:15px;font-weight:600;color:var(--text-primary)}.config-accounts{font-size:13px;color:var(--text-muted);background:var(--bg-secondary);padding:4px 8px;border-radius:12px}.config-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:15px}.config-item{display:flex;flex-direction:column;gap:5px}.config-item label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.config-item span{font-size:14px;color:var(--text-primary);font-weight:500}.mono-text{font-family:Courier New,monospace;font-size:12px;background:var(--bg-secondary);padding:2px 6px;border-radius:4px}.status-active{color:var(--success);font-weight:600}.status-inactive{color:var(--text-muted)}.improvmx-config{margin-top:20px}.config-actions{margin-top:15px;padding-top:15px;border-top:1px solid var(--border-color);display:flex;gap:10px}.loading-state{text-align:center;padding:20px;color:var(--text-muted);font-size:14px}.health-summary{display:flex;justify-content:space-around;gap:20px;padding:20px;background:var(--bg-tertiary);border-radius:8px;border:1px solid var(--border-color)}.health-stat{display:flex;flex-direction:column;align-items:center;gap:5px}.health-stat .stat-label{font-size:12px;color:var(--text-muted);text-transform:uppercase}.health-stat .stat-value{font-size:24px;font-weight:600}.health-stat .stat-value.success{color:var(--success)}.health-stat .stat-value.warning{color:var(--warning)}.health-stat .stat-value.info{color:var(--info)}.performance-tab{display:flex;flex-direction:column;gap:25px}.performance-tab h3{font-size:16px;font-weight:600;color:var(--text-primary);margin-bottom:10px}.account-status{padding:3px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase}.account-status.active,.status-badge.active{background:var(--success-bg);color:var(--success)}.account-status.warming_up,.status-badge.warming_up{background:var(--warning-bg);color:var(--warning)}.account-status.inactive,.status-badge.inactive{background:var(--bg-secondary);color:var(--text-muted)}.warmup-badge{padding:3px 8px;border-radius:12px;font-size:11px;font-weight:600;background:var(--warning-bg);color:var(--warning)}.warmup-summary{background:var(--bg-tertiary);border-radius:8px;padding:20px;border:1px solid var(--border-color)}.warmup-stats{display:flex;flex-direction:column;gap:15px}.warmup-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border-color)}.warmup-item:last-child{border-bottom:none}.warmup-item label{font-size:13px;color:var(--text-muted)}.warmup-item span{font-size:15px;color:var(--text-primary);font-weight:600}.warmup-progress{margin-top:15px}.warmup-progress label{display:block;font-size:13px;color:var(--text-muted);margin-bottom:8px}.progress-bar{width:100%;height:10px;background:var(--bg-secondary);border-radius:5px;overflow:hidden;box-shadow:inset 0 1px 3px #0000001a}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary),var(--primary-hover));transition:width .3s ease;box-shadow:0 1px 3px #0003}@media (max-width: 768px){.domain-tabs{overflow-x:auto;white-space:nowrap}.domain-tab{padding:8px 15px;font-size:13px}.domain-info-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.accounts-summary{flex-wrap:wrap}.summary-stat{min-width:45%}.accounts-table{font-size:12px}.accounts-table th,.accounts-table td{padding:8px 10px;white-space:nowrap}.accounts-table-wrapper{max-height:400px}}.tag-management-modal{max-height:70vh;overflow-y:auto}.tag-tabs{display:flex;gap:10px;border-bottom:2px solid var(--border-color);margin-bottom:20px}.tag-tab{padding:10px 20px;background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:14px;font-weight:500;transition:all .2s ease;border-bottom:2px solid transparent;margin-bottom:-2px}.tag-tab:hover{color:var(--text-primary)}.tag-tab.active{color:var(--primary);border-bottom-color:var(--primary)}.tag-tab-content{padding:20px 0}.tab-description{color:var(--text-secondary);font-size:14px;margin-bottom:20px;line-height:1.5}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.tags-list{display:flex;flex-direction:column;gap:15px}.tag-item{display:flex;align-items:center;gap:15px;padding:15px;background-color:var(--bg-tertiary);border-radius:8px;transition:background-color .2s ease}.tag-item:hover{background-color:var(--bg-hover)}.tag-item.system-tag{background-color:var(--bg-secondary);opacity:.9}.tag-preview{min-width:120px}.tag-badge{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border-radius:16px;color:#fff;font-size:12px;font-weight:600;white-space:nowrap}.tag-badge.large{padding:8px 16px;font-size:14px}.tag-info{flex:1}.tag-name{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:5px}.tag-description{font-size:13px;color:var(--text-secondary);margin-bottom:8px}.tag-meta{display:flex;gap:15px;font-size:12px;color:var(--text-muted)}.tag-meta span{display:inline-flex;align-items:center;gap:3px}.tag-actions{display:flex;gap:5px}.tag-form{background-color:var(--bg-tertiary);padding:20px;border-radius:8px}.tag-form h3{color:var(--text-primary);font-size:16px;font-weight:600;margin-bottom:20px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-field{display:flex;flex-direction:column;gap:8px}.form-field label{font-size:13px;font-weight:500;color:var(--text-primary)}.color-picker{display:flex;flex-direction:column;gap:10px}.color-input{width:60px;height:40px;border:2px solid var(--border-color);border-radius:4px;cursor:pointer}.predefined-colors{display:flex;flex-wrap:wrap;gap:8px}.color-swatch{width:30px;height:30px;border:2px solid var(--border-color);border-radius:4px;cursor:pointer;transition:transform .2s ease}.color-swatch:hover{transform:scale(1.1);border-color:var(--primary)}.icon-picker{display:flex;flex-direction:column;gap:10px}.selected-icon{width:60px;height:40px;display:flex;align-items:center;justify-content:center;font-size:24px;background-color:var(--bg-secondary);border:2px solid var(--border-color);border-radius:4px}.predefined-icons{display:flex;flex-wrap:wrap;gap:5px}.icon-option{width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:18px;background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;transition:all .2s ease}.icon-option:hover{background-color:var(--primary-bg);transform:scale(1.1)}.checkbox-group{display:flex;flex-direction:column;gap:10px}.checkbox-group label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-primary);cursor:pointer}.checkbox-group input[type=checkbox]{cursor:pointer}.tag-preview-section{padding:20px;background-color:var(--bg-secondary);border-radius:6px;margin-bottom:20px}.tag-preview-section label{display:block;font-size:12px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.tag-preview-display{display:flex;justify-content:center}.form-actions{display:flex;gap:10px}.empty-state{padding:40px;text-align:center;color:var(--text-muted);font-size:14px;background-color:var(--bg-tertiary);border-radius:8px}@media (max-width: 768px){.tag-tabs{overflow-x:auto;white-space:nowrap}.tag-tab{padding:8px 15px;font-size:13px}.tag-item{flex-direction:column;align-items:flex-start}.form-grid,.form-row{grid-template-columns:1fr}.predefined-colors,.predefined-icons{max-width:100%}}.domain-management{padding:20px;background-color:var(--bg-primary);height:calc(100vh - 140px);overflow:hidden}.domain-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px}.domain-search-bar{display:flex;gap:10px;flex:1;min-width:300px}.domain-search-input{flex:1;min-width:200px}.domain-actions{display:flex;gap:10px}.domain-analytics{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:20px}.analytics-card{padding:15px;background-color:var(--bg-surface);border:1px solid var(--border-color)}.analytics-card .stat{display:flex;flex-direction:column;align-items:center;text-align:center}.stat-label{font-size:12px;color:var(--text-muted);margin-bottom:5px;text-transform:uppercase}.stat-value{font-size:24px;font-weight:700;color:var(--text-primary)}.domains-table-card{margin-bottom:20px;overflow:visible}.domains-table-wrapper{width:100%;overflow:hidden}.domains-table{width:100%;border-collapse:collapse}.domains-table thead{position:sticky;top:0;z-index:10}.domains-table tbody{display:block;max-height:calc(100vh - 320px);overflow-y:auto;width:100%}.domains-table thead,.domains-table tbody tr{display:table;width:100%;table-layout:fixed}.domains-table tbody::-webkit-scrollbar{width:8px}.domains-table tbody::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:4px}.domains-table tbody::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:4px}.domains-table tbody::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.domains-table th{background-color:var(--bg-tertiary);color:var(--text-primary);padding:12px;text-align:center!important;font-weight:500;font-size:13px;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border-color)}.domains-table td{padding:12px;border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:14px;text-align:center;vertical-align:middle}.domains-table th:first-child,.domains-table td:first-child{text-align:left!important}.domains-table th:nth-child(2),.domains-table td:nth-child(2),.domains-table th:nth-child(3),.domains-table td:nth-child(3),.domains-table th:nth-child(4),.domains-table td:nth-child(4),.domains-table th:nth-child(5),.domains-table td:nth-child(5),.domains-table th:nth-child(6),.domains-table td:nth-child(6){text-align:center!important}.domains-table tbody tr:hover{background-color:var(--bg-hover)}.domains-table .blocked-domain{opacity:.6;background-color:var(--bg-danger-subtle)}.domain-name{display:flex;align-items:center;gap:5px;color:var(--link-color);cursor:pointer;font-weight:500}.domain-name:hover{text-decoration:underline}.verified-icon{color:var(--success);font-size:16px}.domain-type{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:4px;background-color:var(--bg-tertiary);font-size:12px;text-transform:capitalize}.account-type-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:13px;font-weight:500;background-color:var(--bg-secondary);color:var(--text-primary);white-space:nowrap}.relationship-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize}.relationship-badge.vip{background-color:var(--warning-bg);color:var(--warning)}.relationship-badge.client{background-color:var(--primary-bg);color:var(--primary)}.relationship-badge.partner{background-color:var(--secondary-bg);color:var(--secondary)}.relationship-badge.prospect{background-color:var(--info-bg);color:var(--info)}.relationship-badge.neutral{background-color:var(--bg-tertiary);color:var(--text-muted)}.relationship-badge.blocked{background-color:var(--danger-bg);color:var(--danger)}.domain-tags{display:flex;flex-wrap:wrap;gap:5px;justify-content:center}.tag-chip{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;border-radius:12px;font-size:11px;font-weight:500;color:#fff;white-space:nowrap}.tag-chip.small{padding:2px 6px;font-size:10px}.email-count{font-weight:500;color:var(--text-primary)}.reputation-cell{text-align:center!important}.reputation-text{font-weight:500;color:var(--text-primary)}.priority-badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.priority-badge.priority-urgent{background-color:var(--danger-bg);color:var(--danger)}.priority-badge.priority-high{background-color:var(--warning-bg);color:var(--warning)}.priority-badge.priority-normal{background-color:var(--bg-tertiary);color:var(--text-muted)}.priority-badge.priority-low{background-color:var(--success-bg);color:var(--success)}.domain-actions-cell{display:flex;gap:5px;justify-content:center}.loading-cell,.empty-cell{text-align:center;color:var(--text-muted);padding:40px;font-size:14px}.top-domains-card{margin-top:20px}.top-domains-card h3{margin-bottom:15px;color:var(--text-primary);font-size:16px;font-weight:600}.top-domains-list{display:flex;flex-direction:column;gap:10px}.top-domain-item{display:flex;align-items:center;gap:10px;padding:10px;background-color:var(--bg-tertiary);border-radius:6px}.domain-rank{font-weight:700;color:var(--text-muted);min-width:30px}.top-domain-item .domain-name{font-weight:500;color:var(--text-primary);cursor:default}.top-domain-item .company-name{color:var(--text-muted);font-size:13px}.top-domain-item .email-count{margin-left:auto;color:var(--text-secondary);font-size:13px}.bulk-actions-content{padding:20px}.bulk-actions-content h4{margin-bottom:15px;color:var(--text-primary);font-size:14px;font-weight:600}.tag-selection{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}.bulk-update-options{display:flex;gap:10px}@media (max-width: 1200px){.domains-table{font-size:13px}.domains-table th,.domains-table td{padding:8px}.reputation-bar{width:40px}}@media (max-width: 768px){.domain-header{flex-direction:column;align-items:stretch}.domain-search-bar{flex-direction:column}.domain-analytics{grid-template-columns:1fr 1fr}.domains-table{font-size:12px}.domains-table th:nth-child(3),.domains-table td:nth-child(3),.domains-table th:nth-child(7),.domains-table td:nth-child(7){display:none}}.toggle-switch-container{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md)}.toggle-switch{position:relative;width:52px;height:28px;flex-shrink:0}.toggle-switch.toggle-small{width:40px;height:22px}.toggle-switch.toggle-large{width:64px;height:34px}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--bg-tertiary);transition:all .3s ease;border-radius:34px;border:2px solid var(--border-color)}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:2px;bottom:2px;background-color:#fff;transition:all .3s ease;border-radius:50%;box-shadow:0 2px 4px #0003}.toggle-small .toggle-slider:before{height:16px;width:16px;left:1px;bottom:1px}.toggle-large .toggle-slider:before{height:26px;width:26px;left:2px;bottom:2px}.toggle-switch input:checked+.toggle-slider{background-color:var(--primary);border-color:var(--primary);box-shadow:0 0 10px var(--primary-light)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px);background-color:#fff;box-shadow:0 2px 8px #0003}.toggle-small input:checked+.toggle-slider:before{transform:translate(18px)}.toggle-large input:checked+.toggle-slider:before{transform:translate(30px)}.toggle-switch input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.toggle-label{display:flex;flex-direction:column;gap:var(--spacing-xs)}.toggle-label-text{font-size:var(--font-md);font-weight:500;color:var(--text-primary)}.toggle-help-text{font-size:var(--font-sm);color:var(--text-secondary);line-height:1.4}.toggle-switch input:not(:disabled)+.toggle-slider:hover{border-color:var(--primary-light)}.toggle-switch input:focus+.toggle-slider{outline:2px solid var(--primary);outline-offset:2px}.email-import-modal{max-width:520px;width:90%}.email-import-modal .modal-body{padding:20px}.assignment-info{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border-color)}.assignment-info p{margin:0 0 12px;color:var(--text-secondary);font-size:14px}.user-card{display:flex;align-items:center;gap:12px;padding:12px;background:var(--bg-surface);border-radius:8px;border:1px solid var(--border-color)}.user-avatar{width:40px;height:40px;border-radius:50%;background:var(--btn-primary-bg);color:var(--btn-primary-text);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:18px}.user-details{flex:1}.user-name{font-weight:600;color:var(--text-primary);margin-bottom:2px}.user-email{font-size:13px;color:var(--text-secondary)}.import-options h3{margin:0 0 8px;font-size:16px;font-weight:600;color:var(--text-primary)}.import-description{margin:0 0 16px;font-size:14px;color:var(--text-secondary)}.option-group{display:flex;flex-direction:column;gap:12px}.option-item{display:flex;align-items:flex-start;padding:12px;border:1px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s ease}.option-item:hover{background:var(--bg-surface);border-color:var(--color-primary)}.option-item input[type=radio]{margin-right:12px;margin-top:2px;cursor:pointer}.option-item input[type=radio]:checked+.option-content{color:var(--color-primary)}.option-content{display:flex;flex-direction:column;gap:4px;flex:1}.option-title{font-weight:500;color:var(--text-primary);font-size:14px}.option-description{font-size:13px;color:var(--text-secondary)}.days-selector{margin-left:32px;padding:12px;background:var(--bg-surface);border-radius:6px;border:1px solid var(--border-color)}.days-selector label{display:block;margin-bottom:8px;font-size:13px;font-weight:500;color:var(--text-primary)}.days-selector input[type=number]{width:100px;padding:6px 10px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-primary);color:var(--text-primary);font-size:14px}.days-selector input[type=number]:focus{outline:none;border-color:var(--color-primary)}.quick-options{display:flex;gap:8px;margin-top:8px}.quick-option{padding:4px 12px;font-size:12px;background:var(--bg-primary);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;transition:all .2s ease}.quick-option:hover{background:var(--bg-surface);color:var(--color-primary);border-color:var(--color-primary)}.import-note{display:flex;align-items:flex-start;gap:8px;margin-top:16px;padding:12px;background:var(--info-bg, rgba(33, 150, 243, .1));border:1px solid var(--info-border, rgba(33, 150, 243, .3));border-radius:6px;font-size:13px;color:var(--text-primary)}.info-icon{flex-shrink:0;color:var(--info-color, #2196F3)}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid var(--border-color)}.cancel-button,.confirm-button{padding:8px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.cancel-button{background:transparent;color:var(--text-secondary);border:1px solid var(--border-color)}.cancel-button:hover:not(:disabled){background:var(--bg-surface);color:var(--text-primary)}.confirm-button{background:var(--btn-primary-bg);color:var(--btn-primary-text);border:none}.confirm-button:hover:not(:disabled){background:var(--btn-primary-hover)}.cancel-button:disabled,.confirm-button:disabled{opacity:.5;cursor:not-allowed}.smtp-account-form{padding:20px}.form-group{margin-bottom:20px}.form-row{display:flex;gap:15px}.flex-1{flex:1}.flex-2{flex:2}.smtp-settings-section{margin-top:30px;padding-top:20px;border-top:1px solid var(--border-color)}.smtp-settings-section h4{margin-bottom:20px;color:var(--text-primary);font-size:16px;font-weight:600}.webhook-instructions{padding:20px}.success-badge{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--success-light);color:var(--success);border-radius:8px;margin-bottom:25px;font-weight:500}.success-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:var(--success);color:#fff;border-radius:50%;font-weight:700}.instruction-section{margin-bottom:20px}.instruction-section h4{margin-bottom:15px;color:var(--text-primary);font-size:18px;font-weight:600}.instruction-section p{margin-bottom:20px;color:var(--text-secondary);line-height:1.5}.webhook-url-container{display:flex;align-items:center;gap:10px;padding:12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;margin:20px 0}.webhook-url{flex:1;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:13px;color:var(--text-primary);word-break:break-all;background:transparent;padding:0;margin:0}.setup-steps{margin:25px 0;padding-left:20px;color:var(--text-secondary);line-height:1.8}.setup-steps li{margin-bottom:8px}.status-note{padding:15px;background:var(--bg-tertiary);border-left:3px solid var(--warning);border-radius:4px;margin-top:20px}.status-note.success{border-left-color:var(--success);background:var(--success-light)}.status-note strong{color:var(--text-primary)}.status-note small{display:block;margin-top:5px;color:var(--text-secondary)}.info-box{padding:15px;background:var(--bg-secondary);border-radius:6px;margin:20px 0}.info-box strong{display:block;margin-bottom:10px;color:var(--text-primary);font-size:14px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:30px;padding-top:20px;border-top:1px solid var(--border-color)}.account-actions{display:flex;gap:10px}.email-accounts-container{padding:20px;background-color:var(--bg-primary);height:calc(100vh - 140px);overflow:hidden;display:flex;flex-direction:column}.accounts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:10px;flex-wrap:wrap;flex-shrink:0}.header-left{display:flex;align-items:center;gap:10px;flex:1;min-width:300px}.header-left .select-wrapper{margin:0}.header-left .select-field{min-width:200px}.unassigned-warning{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--warning-light);border:1px solid var(--warning);border-radius:var(--radius-md)}.warning-icon{font-size:var(--font-lg);color:var(--warning)}.warning-text{color:var(--text-primary);font-size:var(--font-sm);font-weight:500}.accounts-table-container{flex:1;overflow:auto;min-height:0;max-height:calc(100vh - 240px);padding:0!important;position:relative}.accounts-table-container thead th{position:sticky;top:0;z-index:10;background-color:var(--bg-surface)}.accounts-table-container .table-hover tbody tr:hover{cursor:default}.account-email{display:flex;flex-direction:column;gap:var(--spacing-xs)}.email-address{font-weight:500;color:var(--text-primary)}.email-provider{font-size:var(--font-sm);color:var(--text-secondary)}.status-badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-sm);font-weight:500}.status-badge.warming{background:var(--warning-light);color:var(--warning);border:1px solid var(--warning)}.status-badge.live{background:var(--success-light);color:var(--success);border:1px solid var(--success)}.status-badge.paused{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color)}.status-badge.inactive{background:var(--danger-light);color:var(--danger);border:1px solid var(--danger)}.status-icon{font-size:var(--font-xs)}.performance-metrics{display:flex;flex-direction:column;gap:var(--spacing-xs)}.performance-metrics-compact{display:flex;flex-direction:column;gap:2px;line-height:1.3}.metric-line{display:flex;align-items:center;gap:4px;font-size:.85rem}.metric{display:flex;gap:var(--spacing-xs);font-size:var(--font-sm)}.metric-label{color:var(--text-secondary);font-size:.8rem}.metric-value{font-weight:600;font-size:.85rem}.metric-value.good{color:var(--success)}.metric-value.bad{color:var(--danger)}.actions-header{display:inline-flex;align-items:center;gap:var(--spacing-xs)}.warmup-sync-indicator{display:inline-block;font-size:var(--font-sm);color:var(--primary);animation:spin 1s linear infinite;opacity:.7}.assigned-user{display:flex;align-items:center;gap:var(--spacing-sm)}.assigned-user span{color:var(--text-primary)}.sending-limits{display:flex;flex-direction:column;gap:var(--spacing-xs)}.sending-limits>span{font-size:var(--font-sm);color:var(--text-primary)}.limit-progress{width:100px;height:4px;background:var(--bg-secondary);border-radius:var(--radius-xs);overflow:hidden}.limit-progress-bar{height:100%;background:var(--primary);transition:width var(--transition-normal)}.accounts-header .account-actions{display:flex;gap:10px;align-items:center}.account-actions{display:flex;gap:var(--spacing-xs);align-items:center}.table-row{cursor:default}.account-actions button{cursor:pointer}.account-actions .warmup-active{background:var(--success-light)!important;border-color:var(--success)!important;color:var(--success-dark)!important;font-weight:500}.account-actions .warmup-active:hover{background:var(--success)!important;color:var(--text-on-primary)!important;transform:translateY(-1px)}.account-actions .campaigns-active{background:var(--primary-light)!important;border-color:var(--primary)!important;color:var(--primary-dark)!important;font-weight:500}.account-actions .campaigns-active:hover{background:var(--primary)!important;color:var(--text-on-primary)!important;transform:translateY(-1px)}.icon-button{width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-surface);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast);font-size:16px;position:relative}.icon-button:hover{background:var(--bg-hover);border-color:var(--primary);transform:translateY(-1px)}.icon-button.pause:hover{background:var(--warning-light);border-color:var(--warning)}.icon-button.play:hover{background:var(--success-light);border-color:var(--success)}.icon-button.delete:hover{background:var(--danger-light);border-color:var(--danger)}.icon-button[title]:hover:after{content:attr(title);position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;padding:6px 12px;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-xs);white-space:nowrap;box-shadow:0 2px 8px #0000001a;z-index:1000;pointer-events:none}.icon-button[title]:hover:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:2px;border:6px solid transparent;border-top-color:var(--border-color);z-index:1001;pointer-events:none}.add-account-modal{display:flex;flex-direction:column;gap:var(--spacing-lg)}.modal-description{color:var(--text-secondary);line-height:1.5}.oauth-info{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md)}.info-item{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text-primary)}.info-icon{font-size:var(--font-lg)}.warmup-settings-modal,.campaigns-settings-modal{display:flex;flex-direction:column;gap:var(--spacing-lg)}.warmup-settings-modal .toggle-switch-container,.campaigns-settings-modal .toggle-switch-container{margin-bottom:var(--spacing-lg)}.setting-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.setting-group h4{color:var(--text-primary);margin:0;font-size:var(--font-md);font-weight:600}.setting-label{display:flex;flex-direction:column;gap:var(--spacing-xs);color:var(--text-primary);font-weight:500}.setting-label input[type=checkbox]{margin-right:var(--spacing-sm);width:auto}.setting-label input[type=number]{width:100%;padding:var(--spacing-sm);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-md)}.setting-label input[type=number]:focus{outline:none;border-color:var(--primary)}.setting-label input[type=number]:disabled{opacity:.5;cursor:not-allowed}.schedule-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.schedule-header h4{margin:0}.daily-schedule{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:var(--spacing-md);margin-top:var(--spacing-sm)}.schedule-day{display:flex;flex-direction:column}.schedule-day label{display:flex;flex-direction:column;gap:var(--spacing-xs);font-size:var(--font-sm);color:var(--text-secondary);font-weight:500}.schedule-day input{padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-sm)}.warmup-status-indicator{background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.status-badge{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-md);font-weight:600;color:var(--text-primary)}.status-icon{font-size:var(--font-lg)}.status-note{margin-top:var(--spacing-sm);padding:var(--spacing-sm);background:var(--success-light);color:var(--success);border-radius:var(--radius-sm);font-size:var(--font-sm)}.status-note.warning{background:var(--warning-light);color:var(--warning)}.warmup-score{color:var(--text-secondary);font-weight:400;font-size:var(--font-sm)}.warmup-history-section{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.analytics-summary{display:flex;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md)}.analytics-summary .stat-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.analytics-summary .stat-label{font-size:var(--font-sm);color:var(--text-secondary);font-weight:500}.analytics-summary .stat-value{font-size:var(--font-lg);color:var(--text-primary);font-weight:600}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.history-header h5{margin:0;color:var(--text-primary);font-size:var(--font-md);font-weight:600}.time-range-selector{display:flex;gap:var(--spacing-xs)}.range-btn{padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--font-sm);cursor:pointer;transition:all var(--transition-normal)}.range-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.range-btn.active{background:var(--primary);color:var(--text-on-primary);border-color:var(--primary)}.warmup-chart{display:flex;align-items:flex-end;gap:8px;height:150px;padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-sm);position:relative;width:100%}.history-bar{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:var(--spacing-xs);min-width:0}.bar-container{width:100%;height:120px;position:relative;background:rgba(0,0,0,.05);border-radius:4px;margin-bottom:4px;cursor:pointer}.bar-container:hover .bar-tooltip{display:block}.bar-tooltip{display:none;position:absolute;bottom:125px;left:50%;transform:translate(-50%);background:rgba(0,0,0,.9);color:#fff;padding:8px 12px;border-radius:4px;font-size:12px;white-space:nowrap;z-index:100;pointer-events:none}.bar-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#000000e6}.history-bar .bar{width:100%;border-radius:var(--radius-xs) var(--radius-xs) 0 0;transition:height var(--transition-normal);min-height:2px}.history-bar .bar.success{background:var(--success)}.history-bar .bar.warning{background:var(--warning)}.bar-segment{border-radius:var(--radius-xs) var(--radius-xs) 0 0;transition:height .3s ease}.bar-segment.inbox{background-color:var(--success)!important}.bar-segment.spam{background-color:var(--danger)!important}.target-line{position:absolute;left:-2px;right:-2px;height:2px;background:var(--text-secondary);border-top:2px dashed var(--text-secondary);opacity:.5}.history-bar .bar-value{font-size:10px;color:var(--text-secondary);font-weight:600}.history-bar .day-label{font-size:9px;color:var(--text-tertiary)}.no-history{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm);color:var(--text-tertiary)}.no-history-icon{font-size:32px;opacity:.5}.no-history p{margin:0;font-size:var(--font-sm)}.no-history .hint{font-size:var(--font-xs);color:var(--text-tertiary)}.history-legend{display:flex;gap:var(--spacing-lg);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color);justify-content:center}.legend-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-sm);color:var(--text-secondary)}.legend-color.success{background:var(--success)}.legend-color.warning{background:var(--warning)}.legend-line{width:20px;height:2px;border-top:2px dashed var(--text-secondary);opacity:.5}.schedule-preview{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-color)}.schedule-preview h5{margin:0 0 var(--spacing-md) 0;color:var(--text-secondary);font-size:var(--font-sm);font-weight:500}.preview-chart{display:flex;align-items:flex-end;gap:var(--spacing-sm);height:120px;padding:var(--spacing-sm);background:var(--bg-secondary);border-radius:var(--radius-sm)}.preview-bar{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:var(--spacing-xs);position:relative}.preview-bar .bar{width:100%;background:var(--primary);border-radius:var(--radius-xs) var(--radius-xs) 0 0;transition:height var(--transition-normal);min-height:4px}.preview-bar .bar-label{position:absolute;bottom:100%;margin-bottom:var(--spacing-xs);font-size:var(--font-xs);color:var(--text-primary);font-weight:500}.preview-bar .day-label{font-size:var(--font-xs);color:var(--text-secondary)}.assign-user-modal{display:flex;flex-direction:column;gap:var(--spacing-lg)}.user-list{display:flex;flex-direction:column;gap:var(--spacing-sm);max-height:300px;overflow-y:auto}.user-item{display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.user-item:hover{background:var(--bg-hover);border-color:var(--primary)}.user-item.unassign-option{border-color:var(--warning);margin-bottom:var(--spacing-sm)}.user-item.unassign-option:hover{background:var(--warning-light);border-color:var(--warning)}.user-info{display:flex;flex-direction:column;gap:var(--spacing-xs);text-align:left}.user-email{font-size:var(--font-sm);color:var(--text-secondary)}.modal-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.limits-settings-modal{display:flex;flex-direction:column;gap:var(--spacing-lg)}.current-performance{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.current-performance h4{margin:0 0 var(--spacing-md) 0;color:var(--text-primary);font-size:var(--font-md)}.performance-stats{display:flex;gap:var(--spacing-lg);justify-content:space-around}.performance-stats .stat{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.performance-stats .stat-label{font-size:var(--font-sm);color:var(--text-secondary)}.performance-stats .stat-value{font-size:var(--font-lg);font-weight:600;color:var(--text-primary)}.performance-stats .stat-value.good{color:var(--success)}.performance-stats .stat-value.bad{color:var(--danger)}.limit-setting{display:flex;flex-direction:column;gap:var(--spacing-sm)}.limit-setting label{display:flex;flex-direction:column;gap:var(--spacing-xs);color:var(--text-primary);font-weight:500}.limit-setting input{padding:var(--spacing-sm);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--font-md)}.limit-setting input:focus{outline:none;border-color:var(--primary)}.help-text{font-size:var(--font-sm);color:var(--text-secondary);font-weight:400}.delete-confirm-modal{display:flex;flex-direction:column;gap:var(--spacing-md)}.delete-confirm-modal .account-info{padding:var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);text-align:center;color:var(--text-primary)}.delete-confirm-modal .warning-text{color:var(--danger);font-size:var(--font-sm);line-height:1.5}.warmup-day-indicator{font-size:11px;color:var(--text-secondary);margin-top:2px;font-weight:500}.unsubscribes-management{height:100%;display:flex;flex-direction:column;background:var(--bg-primary);padding:20px}.unsubscribes-header{padding:16px 20px;background:var(--bg-surface);border-radius:8px;margin-bottom:20px;box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:1rem}.unsubscribes-header h3{margin:0;font-size:20px;color:var(--text-primary)}.header-stats{margin-left:auto;display:flex;gap:20px}.stat-item{font-size:14px;color:var(--text-secondary);padding:4px 12px;background:var(--bg-primary);border-radius:20px}.unsubscribes-filters{display:flex;gap:12px;align-items:center;padding:16px 20px;background:var(--bg-surface);border-radius:8px;margin-bottom:20px;box-shadow:var(--shadow-sm)}.search-input{flex:1;max-width:400px;padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font-size:14px}.domain-filter{padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;cursor:pointer}.result-count{color:var(--text-secondary);font-size:14px;margin-left:auto}.unsubscribes-table{flex:1;background:var(--bg-surface);border-radius:8px;overflow:auto;box-shadow:var(--shadow-sm)}.unsubscribe-table{width:100%;border-collapse:collapse}.unsubscribe-table thead{background:var(--bg-primary);border-bottom:2px solid var(--border-color);position:sticky;top:0;z-index:10}.unsubscribe-table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text-primary);font-size:13px;text-transform:uppercase;letter-spacing:.5px}.unsubscribe-table tbody tr{border-bottom:1px solid var(--border-light);transition:background-color .15s ease}.unsubscribe-table tbody tr:hover{background:var(--bg-hover)}.unsubscribe-table td{padding:16px;font-size:14px;color:var(--text-primary)}.email-cell{font-weight:500}.email-address{color:var(--text-primary)}.global-badge{margin-left:8px;padding:2px 8px;background:var(--color-error);color:#fff;font-size:11px;font-weight:600;border-radius:4px}.domains-cell{min-width:200px}.domain-list{display:flex;flex-direction:column;gap:8px}.domain-item{display:inline-flex;align-items:center;gap:8px;padding:4px 8px;background:var(--bg-primary);border-radius:6px;max-width:fit-content}.domain-name{color:var(--text-secondary);font-size:13px}.resubscribe-btn{padding:2px 6px;background:var(--color-primary);color:#fff;border:none;border-radius:4px;font-size:12px;cursor:pointer;transition:opacity .15s ease}.resubscribe-btn:hover{opacity:.8}.no-domains{color:var(--text-tertiary)}.method-cell{text-align:center}.method-badge{padding:4px 10px;background:var(--bg-primary);color:var(--text-secondary);font-size:12px;border-radius:12px;display:inline-block}.date-cell{color:var(--text-secondary);font-size:13px;white-space:nowrap}.actions-cell{display:flex;gap:8px;white-space:nowrap}.action-btn{font-size:12px}.delete-btn{color:var(--color-error);border-color:var(--color-error)}.delete-btn:hover{background:var(--color-error);color:#fff}.email-list{width:400px;min-width:400px;max-width:400px;background:var(--bg-primary);border-right:1px solid var(--border-color);overflow-y:auto;flex-shrink:0;display:flex;flex-direction:column}.email-list-header{padding:1rem;border-bottom:1px solid var(--border-color);background:var(--bg-surface)}.email-search{width:100%;padding:.5rem 1rem;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-primary);font-size:.875rem;color:var(--text-primary)}.email-search:focus{outline:none;border-color:var(--color-primary)}.email-count{display:block;margin-top:.5rem;color:var(--text-muted);font-size:.875rem}.email-items{flex:1;overflow-y:auto}.email-item{display:flex;gap:12px;padding:12px 16px;cursor:pointer;border-bottom:1px solid var(--border-color);transition:background .2s;position:relative}.email-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.email-sender{font-size:14px;color:var(--text-primary);font-weight:500;display:flex;align-items:center;gap:8px}.user-badge{font-size:11px;background:var(--bg-tertiary);color:var(--text-secondary);padding:2px 6px;border-radius:var(--radius-sm)}.email-time{font-size:12px;color:var(--text-secondary)}.email-preview{font-size:13px;color:var(--text-secondary);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.4}.email-account{font-size:11px;color:var(--text-muted);margin-top:4px}.email-detail{flex:1;display:flex;flex-direction:column;background:var(--bg-surface);overflow-y:auto;border-radius:0}.email-detail-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--border-color);font-size:20px;font-weight:500;color:var(--text-primary)}.email-actions{display:flex;gap:8px}.email-actions button{font-size:13px}.delete-btn{color:var(--color-danger)}.email-meta{padding:16px 20px;border-bottom:1px solid var(--border-color);display:flex;align-items:center;gap:12px}.email-meta-left{display:flex;align-items:center;gap:12px}.sender-avatar{width:40px;height:40px;border-radius:50%;background:var(--bg-surface);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;font-weight:500;color:var(--text-primary)}.sender-name{font-size:14px;font-weight:500;color:var(--text-primary)}.sender-email{font-size:14px;color:var(--text-secondary);margin-left:4px}.user-info{font-size:12px;color:var(--color-primary)}.email-body{background:transparent;padding:20px;border-radius:6px;min-height:300px;line-height:1.6;color:var(--text-primary);border:1px solid var(--border-color);flex:1;margin:20px}.email-body p{margin-bottom:12px}.email-body a{color:var(--color-primary);text-decoration:underline;opacity:.9}.email-body a:hover{opacity:1;text-decoration:underline}.email-body blockquote{border-left:2px solid var(--border-color);padding-left:12px;margin-left:0;color:var(--text-secondary);opacity:.8}.no-email-selected{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);font-size:16px}.loading-state,.error-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:300px;color:var(--text-secondary);font-size:.9rem;gap:1rem}@media (max-width: 1024px){.email-list{width:350px;min-width:350px;max-width:350px}}.add-unsubscribe-form{display:flex;flex-direction:column;gap:20px;padding:10px 0}.form-group label{font-size:14px;color:var(--text-primary);font-weight:500}.form-group input[type=checkbox]{margin-right:8px;cursor:pointer}.form-input{padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font-size:14px}.form-input:focus{outline:none;border-color:var(--color-primary)}.form-hint{font-size:12px;color:var(--text-secondary);margin-top:4px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:10px;padding-top:20px;border-top:1px solid var(--border-color)}.domain-checkbox-list{border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);padding:8px;max-height:300px;display:flex;flex-direction:column}.select-all-wrapper{padding:8px 4px;border-bottom:1px solid var(--border-color);margin-bottom:8px}.domains-scroll-container{flex:1;overflow-y:auto;padding:4px}.domain-checkbox-item{display:flex;align-items:center;padding:6px 4px;cursor:pointer;transition:background-color .15s ease;border-radius:4px;font-size:14px;color:var(--text-primary)}.domain-checkbox-item:hover{background:var(--bg-hover)}.domain-checkbox-item input[type=checkbox]{margin-right:10px;cursor:pointer;width:16px;height:16px}.no-domains-message{padding:20px;text-align:center;color:var(--text-secondary);font-size:14px}@media (max-width: 768px){.unsubscribes-content{flex-direction:column}.email-list{width:100%;max-width:100%;border-right:none;border-bottom:1px solid var(--border-color);max-height:50vh}.email-detail{min-height:50vh}}.bulk-campaigns-summary{height:100%;display:flex;flex-direction:column;background:var(--bg-primary);padding:20px}.summary-header{padding:16px 20px;background:var(--bg-surface);border-radius:8px;margin-bottom:20px;box-shadow:var(--shadow-sm);display:flex;align-items:center;justify-content:space-between}.summary-header h3{margin:0;font-size:20px;color:var(--text-primary)}.header-controls{display:flex;align-items:center;gap:16px}.auto-refresh-toggle{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:14px;cursor:pointer}.auto-refresh-toggle input{cursor:pointer}.summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:20px}.stat-card{background:var(--bg-surface);padding:16px;border-radius:8px;box-shadow:var(--shadow-sm);text-align:center}.stat-card.processing{border-left:4px solid var(--color-warning)}.stat-card.paused{border-left:4px solid #8b5cf6}.stat-card.scheduled{border-left:4px solid #3b82f6}.stat-card.failed{border-left:4px solid var(--color-error)}.stat-card.cancelled{border-left:4px solid #6b7280}.stat-value{font-size:24px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.stat-label{font-size:13px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.campaigns-table{flex:1;background:var(--bg-surface);border-radius:8px;overflow:auto;box-shadow:var(--shadow-sm)}.campaign-table{width:100%;border-collapse:collapse}.campaign-table thead{background:var(--bg-primary);border-bottom:2px solid var(--border-color);position:sticky;top:0;z-index:10}.campaign-table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text-primary);font-size:13px;text-transform:uppercase;letter-spacing:.5px}.campaign-table tbody tr{border-bottom:1px solid var(--border-light);transition:background-color .15s ease}.campaign-table tbody tr:hover{background:var(--bg-hover)}.campaign-table td{padding:16px;font-size:14px;color:var(--text-primary)}.status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600}.status-processing{background:var(--color-warning-bg);color:var(--color-warning);animation:pulse 2s infinite}.status-completed{background:var(--color-success-bg);color:var(--color-success)}.status-failed{background:var(--color-error-bg);color:var(--color-error)}.status-scheduled{background:rgba(59,130,246,.1);color:#3b82f6}.status-cancelled{background:rgba(107,114,128,.1);color:#6b7280}.user-info{display:flex;flex-direction:column;gap:2px}.user-name{font-weight:500;color:var(--text-primary)}.user-email{font-size:12px;color:var(--text-secondary)}.progress-cell{font-size:14px;font-weight:500;color:var(--text-primary);white-space:nowrap}.format-cell{font-size:13px;color:var(--text-secondary);white-space:nowrap}.count-cell{font-size:14px;font-weight:500;text-align:center}.count-cell.success{color:var(--color-success)}.count-cell.error{color:var(--color-error)}.count-cell.warning{color:var(--color-warning)}.time-cell{white-space:nowrap;font-size:13px;color:var(--text-secondary)}.loading-state,.error-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:300px;color:var(--text-secondary);font-size:14px;gap:16px}:root{--color-warning: #f59e0b;--color-warning-bg: rgba(245, 158, 11, .1);--color-success: #10b981;--color-success-bg: rgba(16, 185, 129, .1);--color-error: #ef4444;--color-error-bg: rgba(239, 68, 68, .1);--bg-hover: rgba(0, 0, 0, .02);--border-light: rgba(0, 0, 0, .05)}.subject-cell{display:flex;align-items:center;gap:8px}.info-icon-btn{background:transparent;border:none;cursor:pointer;font-size:16px;padding:4px;border-radius:4px;transition:background-color .2s ease;display:flex;align-items:center;justify-content:center}.info-icon-btn:hover{background:var(--bg-hover)}.subject-text{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.campaign-detail-modal{display:flex;flex-direction:column;gap:24px;max-height:70vh;overflow-y:auto;padding:4px}.detail-section{background:var(--bg-surface);padding:16px;border-radius:8px;border:1px solid var(--border-color)}.detail-section h4{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--border-color);padding-bottom:8px}.detail-row{display:flex;gap:12px;padding:8px 0;border-bottom:1px solid var(--border-light)}.detail-label{font-weight:600;color:var(--text-secondary);min-width:180px;font-size:14px}.detail-value{color:var(--text-primary);font-size:14px;flex:1}.email-body-preview{background:var(--bg-primary);padding:16px;border-radius:6px;border:1px solid var(--border-light);max-height:300px;overflow-y:auto;font-size:14px;line-height:1.6}.email-body-preview .no-body{color:var(--text-secondary);font-style:italic;text-align:center;margin:0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.stat-item{display:flex;flex-direction:column;gap:4px;padding:12px;background:var(--bg-primary);border-radius:6px;border-left:3px solid var(--border-color)}.stat-item.success{border-left-color:var(--color-success)}.stat-item.error{border-left-color:var(--color-error)}.stat-item.warning{border-left-color:var(--color-warning)}.stat-item .stat-label{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.stat-item .stat-value{font-size:20px;font-weight:600;color:var(--text-primary)}.actions-cell{text-align:center}.action-buttons{display:flex;align-items:center;justify-content:center;gap:8px}.action-buttons button{min-width:36px;padding:6px 10px;font-size:16px;transition:transform .2s ease,background-color .2s ease}.action-buttons button:hover{transform:scale(1.05)}.action-buttons button:active{transform:scale(.95)}@media (max-width: 768px){.summary-stats{grid-template-columns:repeat(2,1fr)}.campaigns-table{overflow-x:auto}.campaign-table{min-width:900px}.detail-label{min-width:120px}.stats-grid{grid-template-columns:1fr}.action-buttons{flex-wrap:wrap}}.campaign-edit-modal{padding:20px 0}.edit-form{display:flex;flex-direction:column;gap:20px}.form-group label{font-weight:500;color:var(--text-primary);font-size:14px}.form-input,.form-textarea{padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font-size:14px;font-family:inherit;transition:border-color .2s}.form-input:focus,.form-textarea:focus{outline:none;border-color:var(--primary-color)}.form-textarea{resize:vertical;min-height:120px}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:10px;padding-top:20px;border-top:1px solid var(--border-color)}.bulk-auth-upload{max-width:800px;margin:0 auto;padding:var(--spacing-xl)}.upload-header{text-align:center;margin-bottom:var(--spacing-xl)}.upload-header h2{color:var(--text-primary);margin-bottom:var(--spacing-sm)}.upload-header p{color:var(--text-secondary)}.format-notice{background:var(--bg-warning-subtle);border:1px solid var(--border-warning);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-lg)}.format-notice strong{color:var(--text-primary);display:block;margin-bottom:var(--spacing-xs)}.format-notice p{color:var(--text-secondary);margin:var(--spacing-xs) 0}.format-example{background:var(--bg-surface);border-radius:var(--radius-sm);padding:var(--spacing-sm);margin-top:var(--spacing-sm);font-family:var(--font-mono);font-size:.875rem}.upload-drop-zone{border:2px dashed var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-xl);text-align:center;transition:all .3s ease;cursor:pointer;background:var(--bg-surface)}.upload-drop-zone:hover{border-color:var(--color-primary);background:var(--bg-hover)}.upload-drop-zone.drag-active{border-color:var(--color-primary);background:var(--bg-primary-subtle)}.upload-drop-zone.has-file{cursor:default;background:var(--bg-success-subtle);border-color:var(--border-success)}.upload-prompt{padding:var(--spacing-lg) 0}.upload-icon{font-size:3rem;margin-bottom:var(--spacing-md)}.upload-prompt p{color:var(--text-primary);margin-bottom:var(--spacing-xs);font-weight:500}.upload-prompt small{color:var(--text-secondary)}.file-selected{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-md)}.file-icon{font-size:2.5rem}.file-info{display:flex;flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.file-info strong{color:var(--text-primary)}.file-info span{color:var(--text-secondary);font-size:.875rem}.remove-file{background:var(--bg-error);color:var(--color-error);border:1px solid var(--border-error);border-radius:var(--radius-sm);padding:var(--spacing-xs) var(--spacing-sm);cursor:pointer;transition:all .2s ease;font-weight:700}.remove-file:hover{background:var(--color-error);color:var(--bg-primary)}.upload-actions{display:flex;justify-content:center;margin-top:var(--spacing-lg)}.btn-upload{background:var(--color-primary);color:var(--bg-primary);border:none;border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-xl);font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:var(--spacing-sm)}.btn-upload:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px var(--shadow-color-primary)}.btn-upload:disabled{background:var(--bg-disabled);color:var(--text-disabled);cursor:not-allowed}.spinner{width:16px;height:16px;border:2px solid var(--bg-primary);border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}.upload-results{animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.upload-results h3{color:var(--text-primary);margin-bottom:var(--spacing-lg)}.results-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.stat-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-lg);text-align:center}.stat-card.success{background:var(--bg-success-subtle);border-color:var(--border-success)}.stat-card.error{background:var(--bg-error-subtle);border-color:var(--border-error)}.stat-card.warning{background:var(--bg-warning-subtle);border-color:var(--border-warning)}.stat-number{font-size:2rem;font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.stat-card.success .stat-number{color:var(--color-success)}.stat-card.error .stat-number{color:var(--color-error)}.stat-card.warning .stat-number{color:var(--color-warning)}.stat-label{color:var(--text-secondary);font-size:.875rem;text-transform:uppercase;letter-spacing:.05em}.account-type-breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.breakdown-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-lg)}.breakdown-card h4{color:var(--text-primary);margin-bottom:var(--spacing-md);font-weight:600}.breakdown-card p{color:var(--text-secondary);margin:var(--spacing-xs) 0;font-size:.95rem}.results-details{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-lg);max-height:400px;overflow-y:auto;margin-bottom:var(--spacing-lg)}.detail-section{margin-bottom:var(--spacing-lg)}.detail-section:last-child{margin-bottom:0}.detail-section h4{margin-bottom:var(--spacing-sm);font-weight:600}.detail-section h4.success{color:var(--color-success)}.detail-section h4.error{color:var(--color-error)}.detail-section h4.warning{color:var(--color-warning)}.detail-section ul{list-style:none;padding:0;margin:0}.detail-section li{padding:var(--spacing-xs) 0;color:var(--text-secondary);border-bottom:1px solid var(--border-subtle)}.detail-section li:last-child{border-bottom:none}.error-message{color:var(--color-error);font-size:.875rem;font-style:italic}.more-items{color:var(--text-secondary);font-style:italic;margin-top:var(--spacing-sm);font-size:.875rem}.btn-reset{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-lg);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:block;margin:0 auto}.btn-reset:hover{background:var(--bg-hover);border-color:var(--border-hover)}.master-inbox{display:flex;flex-direction:column;height:100%;background:var(--bg-surface);overflow:hidden}.master-inbox-topbar{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:var(--bg-primary);border-bottom:1px solid var(--border-color);gap:20px;flex-shrink:0}.topbar-left{display:flex;align-items:center;gap:16px}.topbar-right{display:flex;align-items:center;gap:12px}.folder-tabs{display:flex;gap:4px}.folder-tab{padding:8px 16px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;border-radius:6px;transition:all .2s;font-size:14px}.folder-tab:hover{background:var(--bg-surface)}.folder-tab.active{background:var(--bg-surface);color:var(--color-primary);font-weight:500}.search-container{display:flex;align-items:center;gap:12px}.master-inbox-search{padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-surface);color:var(--text-primary);width:400px;transition:border-color .2s}.master-inbox-search:focus{outline:none;border-color:var(--color-primary)}.email-count{font-size:13px;color:var(--text-secondary);white-space:nowrap}.campaign-filter-checkbox{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;font-size:13px;color:var(--text-primary);cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:6px}.campaign-filter-checkbox:hover{background:var(--bg-hover)}.campaign-filter-checkbox input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:16px;height:16px;margin:0;cursor:pointer;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:4px;transition:all .2s}.campaign-filter-checkbox input[type=checkbox]:checked{background:var(--text-primary);border-color:var(--text-primary)}.campaign-filter-checkbox input[type=checkbox]:checked:after{content:"";position:absolute;left:5px;top:2px;width:4px;height:8px;border:solid var(--bg-primary);border-width:0 2px 2px 0;transform:rotate(45deg)}.master-inbox-content{display:flex;flex:1;overflow:hidden;background:var(--bg-surface);min-height:0}.master-inbox-list{width:420px;min-width:420px;max-width:420px;background:var(--bg-primary);border-right:1px solid var(--border-color);overflow-y:auto;flex-shrink:0}.master-inbox-list::-webkit-scrollbar{width:10px}.master-inbox-list::-webkit-scrollbar-track{background:var(--bg-primary);border-radius:5px}.master-inbox-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:5px;border:2px solid var(--bg-primary)}.master-inbox-list::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.email-item{display:flex;gap:12px;padding:12px 16px;cursor:pointer;border-bottom:1px solid var(--border-color);transition:background .2s}.email-item:hover{background:var(--bg-surface)}.email-item.selected{background:var(--bg-surface);border-left:3px solid var(--color-primary);padding-left:13px}.email-item.unread{font-weight:600}.email-item.unread .email-subject{color:var(--text-primary);font-weight:600}.email-avatar{width:40px;height:40px;border-radius:50%;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;font-weight:500;flex-shrink:0}.email-info{flex:1;min-width:0}.email-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px;gap:12px}.email-sender{font-size:14px;color:var(--text-primary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.sent-indicator{color:var(--text-secondary);font-weight:400;margin-right:4px}.thread-count{margin-left:8px;padding:2px 6px;background:var(--bg-secondary);border-radius:10px;font-size:11px;color:var(--text-secondary)}.email-time{font-size:12px;color:var(--text-secondary);white-space:nowrap;flex-shrink:0}.email-subject{font-size:14px;color:var(--text-primary);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.email-preview{font-size:13px;color:var(--text-secondary);overflow:hidden;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;line-height:1.4;margin-bottom:4px}.email-account-badge{font-size:11px;color:var(--text-secondary);padding:2px 6px;background:var(--bg-secondary);border-radius:4px;display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.loading-state,.error-state,.empty-state{padding:40px 20px;text-align:center;color:var(--text-secondary)}.error-detail,.empty-detail{font-size:12px;margin-top:8px;opacity:.8}.loading-more,.no-more-emails{padding:20px;text-align:center;color:var(--text-secondary);font-size:13px}.master-inbox-detail{flex:1;display:flex;flex-direction:column;background:var(--bg-surface);overflow-y:auto}.master-inbox-detail::-webkit-scrollbar{width:10px}.master-inbox-detail::-webkit-scrollbar-track{background:var(--bg-primary);border-radius:5px}.master-inbox-detail::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:5px;border:2px solid var(--bg-primary)}.email-detail-content{padding:20px;flex:1;display:flex;flex-direction:column}.email-title{font-size:20px;font-weight:500;color:var(--text-primary);margin-bottom:16px}.email-meta{display:flex;justify-content:space-between;align-items:flex-start;padding:12px 16px;background:var(--bg-surface);border-radius:6px;margin-bottom:20px;border:1px solid var(--border-color)}.email-meta-left{display:flex;gap:12px}.sender-avatar{width:40px;height:40px;border-radius:50%;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;font-weight:500;font-size:16px;flex-shrink:0}.sender-info{display:flex;flex-direction:column;gap:4px}.sender-name{font-weight:500;color:var(--text-primary);font-size:14px}.sent-arrow{color:var(--text-secondary);font-weight:400}.sender-email{color:var(--text-secondary);font-weight:400;margin-left:6px}.sender-details{font-size:12px;color:var(--text-secondary)}.account-info-badge{font-size:11px;color:var(--text-secondary);padding:4px 8px;background:var(--bg-secondary);border-radius:4px;display:inline-flex;align-items:center;gap:8px;margin-top:4px}.campaign-badge{padding:2px 6px;background:var(--color-primary);color:#fff;border-radius:3px;font-size:10px;font-weight:500;text-transform:uppercase}.email-body{background:transparent;padding:20px;border-radius:6px;min-height:300px;line-height:1.6;color:var(--text-primary);border:1px solid var(--border-color);flex:1;overflow-wrap:break-word;word-break:break-word;overflow-x:auto}.email-body p{margin-bottom:12px;color:var(--text-primary)!important}.email-body div,.email-body span,.email-body td,.email-body th,.email-body li,.email-body font,.email-body strong,.email-body em{color:var(--text-primary)!important;background-color:transparent!important}.email-body a{color:var(--color-primary);text-decoration:underline}.email-body img{max-width:100%;height:auto;display:inline-block;margin:8px 0;border-radius:4px}.email-thread{margin-top:30px;border-top:1px solid var(--border-color);padding-top:20px}.thread-header{font-size:12px;color:var(--text-secondary);margin-bottom:15px;text-transform:uppercase;letter-spacing:.5px}.thread-message{margin-bottom:20px;padding:15px;background:var(--bg-secondary);border-radius:8px}.thread-message-header{display:flex;justify-content:space-between;margin-bottom:10px;font-size:13px;color:var(--text-secondary)}.thread-message-body{font-size:14px;color:var(--text-primary);opacity:.9;line-height:1.5}.thread-message-body p{margin-bottom:8px}.no-email-selected{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);font-size:16px;gap:8px}.no-email-selected .sub-text{font-size:13px;opacity:.7}[data-theme=dark] .master-inbox{background:var(--bg-primary)}[data-theme=dark] .master-inbox-search,[data-theme=dark] .email-body{background:var(--bg-surface)}[data-theme=dark] .master-inbox-list::-webkit-scrollbar-track,[data-theme=dark] .master-inbox-detail::-webkit-scrollbar-track{background:var(--bg-surface)}[data-theme=dark] .master-inbox-list::-webkit-scrollbar-thumb,[data-theme=dark] .master-inbox-detail::-webkit-scrollbar-thumb{background:#4a4a4a;border:2px solid var(--bg-surface)}@media (max-width: 768px){.master-inbox-list{width:100%}.master-inbox-detail,.search-container{display:none}}/**
* Copyright (c) 2014 The xterm.js authors. All rights reserved.
* Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
* https://github.com/chjj/term.js
* @license MIT
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*
* Originally forked from (with the author's permission):
*   Fabrice Bellard's javascript vt100 for jslinux:
*   http://bellard.org/jslinux/
*   Copyright (c) 2011 Fabrice Bellard
*   The original design remains. The terminal itself
*   has been extended to include xterm CSI codes, among
*   other features.
*/.xterm{cursor:text;position:relative;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{padding:0;border:0;margin:0;position:absolute;opacity:0;left:-9999em;top:0;width:0;height:0;z-index:-5;white-space:nowrap;overflow:hidden;resize:none}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;overflow-y:scroll;cursor:default;position:absolute;right:0;left:0;top:0;bottom:0}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;left:0;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;visibility:hidden;position:absolute;top:0;left:-9999em;line-height:normal}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{position:absolute;left:0;top:0;bottom:0;right:0;z-index:10;color:transparent;pointer-events:none}.xterm .xterm-accessibility-tree:not(.debug) *::selection{color:transparent}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre}.xterm .live-region{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{text-decoration:double underline}.xterm-underline-3{text-decoration:wavy underline}.xterm-underline-4{text-decoration:dotted underline}.xterm-underline-5{text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{text-decoration:overline double underline}.xterm-overline.xterm-underline-3{text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;position:absolute;top:0;right:0;pointer-events:none}.xterm-decoration-top{z-index:2;position:relative}.terminal-chat-container{display:flex;flex-direction:column;height:600px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;overflow:hidden;box-shadow:0 8px 32px #0000001a;font-family:Cascadia Code,Fira Code,JetBrains Mono,SF Mono,Monaco,Roboto Mono,Consolas,Courier New,monospace;transition:all .3s ease}.terminal-chat-container.fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;height:100vh;border-radius:0;z-index:1000}.terminal-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);min-height:44px}.header-left{display:flex;align-items:center;gap:12px}.window-controls{display:flex;gap:8px}.control{width:12px;height:12px;border-radius:50%;cursor:pointer;transition:all .2s ease}.control.close{background:#ff5f57}.control.minimize{background:#ffbd2e}.control.maximize{background:#28ca42}.control:hover{transform:scale(1.1);box-shadow:0 2px 8px #0003}.terminal-title{font-weight:600;color:var(--text-primary);font-size:14px}.header-center{display:flex;align-items:center}.model-selector{display:flex;align-items:center;gap:8px;padding:4px 12px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:6px}.model-selector label{font-size:12px;color:var(--text-secondary);font-weight:500}.model-selector select{background:transparent;border:none;color:var(--text-primary);font-size:13px;font-weight:500;cursor:pointer;outline:none;font-family:inherit}.model-selector select:disabled{opacity:.6;cursor:not-allowed}.header-right{display:flex;align-items:center;gap:16px}.status-indicators{display:flex;align-items:center;gap:12px}.connection-status{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;padding:4px 8px;border-radius:4px;background:var(--bg-surface)}.connection-status.connected{color:var(--success-color)}.connection-status.disconnected{color:var(--error-color)}.interrupt-btn{display:flex;align-items:center;justify-content:center;padding:6px;background:var(--error-color);color:var(--white);border:none;border-radius:4px;cursor:pointer;transition:all .2s ease;font-size:12px;font-weight:500}.interrupt-btn:hover{background:var(--error-color-hover);transform:translateY(-1px)}.action-buttons button{display:flex;align-items:center;justify-content:center;padding:6px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);cursor:pointer;transition:all .2s ease}.action-buttons button:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--border-color-hover)}.terminal-container{flex:1;position:relative;background:#1e1e1e;overflow:hidden}.terminal{width:100%;height:100%;padding:16px}.terminal .xterm{height:100%!important}.terminal .xterm-viewport,.terminal .xterm-screen{background:transparent!important}.terminal .xterm-viewport::-webkit-scrollbar{width:12px}.terminal .xterm-viewport::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:6px}.terminal .xterm-viewport::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:6px;border:2px solid transparent;background-clip:content-box}.terminal .xterm-viewport::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3);background-clip:content-box}.terminal-footer{display:flex;align-items:center;justify-content:space-between;padding:6px 16px;background:var(--bg-secondary);border-top:1px solid var(--border-color);font-size:11px;color:var(--text-secondary);min-height:32px}.footer-left{display:flex;align-items:center}.current-input{font-family:inherit;font-style:italic;opacity:.8}.footer-right{display:flex;align-items:center}.session-info{font-family:inherit;opacity:.8}@media (max-width: 768px){.terminal-chat-container{height:500px;border-radius:8px}.terminal-header{padding:6px 12px;min-height:40px}.header-center{display:none}.status-indicators{gap:8px}.connection-status{font-size:11px;padding:2px 6px}.terminal{padding:12px}.terminal-footer{padding:4px 12px;font-size:10px}.action-buttons{gap:4px}.action-buttons button{padding:4px}}@media (max-width: 480px){.terminal-chat-container{height:400px;border-radius:6px}.header-left .terminal-title,.footer-left{display:none}.session-info{font-size:10px}}.terminal-loading{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);font-style:italic}.terminal-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--error-color);text-align:center;padding:20px}.terminal-error h3{margin-bottom:8px;font-size:16px}.terminal-error p{margin-bottom:16px;opacity:.8}.retry-button{padding:8px 16px;background:var(--primary-color);color:var(--white);border:none;border-radius:6px;cursor:pointer;font-weight:500;transition:all .2s ease}.retry-button:hover{background:var(--primary-color-hover);transform:translateY(-1px)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.terminal-chat-container{animation:fadeIn .3s ease-out}.connection-status.disconnected{animation:pulse 2s infinite}@media (prefers-contrast: high){.terminal-chat-container{border-width:2px}.terminal-header{border-bottom-width:2px}.terminal-footer{border-top-width:2px}.model-selector,.action-buttons button{border-width:2px}}@media (prefers-reduced-motion: reduce){.terminal-chat-container,.control,.interrupt-btn,.action-buttons button,.retry-button{transition:none;animation:none}.connection-status.disconnected{animation:none}}.terminal-demo-container{min-height:100vh;padding:0}.demo-landing{max-width:1200px;margin:0 auto;padding:2rem}.demo-hero{text-align:center;padding:4rem 0;background:linear-gradient(135deg,var(--primary-color-light) 0%,var(--primary-color) 100%);border-radius:16px;margin-bottom:4rem;color:var(--white)}.hero-icon{margin-bottom:1.5rem}.demo-hero h1{font-size:3rem;font-weight:700;margin-bottom:1rem;text-shadow:0 2px 4px rgba(0,0,0,.1)}.hero-subtitle{font-size:1.25rem;margin-bottom:2.5rem;opacity:.9;max-width:600px;margin-left:auto;margin-right:auto;line-height:1.6}.start-demo-btn{display:inline-flex;align-items:center;gap:12px;padding:16px 32px;background:var(--white);color:var(--primary-color);border:none;border-radius:12px;font-size:1.125rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #0000001a}.start-demo-btn:hover{transform:translateY(-2px);box-shadow:0 8px 30px #00000026}.demo-features{margin-bottom:4rem}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.feature-card{background:var(--bg-surface);padding:2rem;border-radius:12px;border:1px solid var(--border-color);text-align:center;transition:all .3s ease}.feature-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000001a;border-color:var(--primary-color-light)}.feature-icon{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;background:var(--primary-color-light);color:var(--white);border-radius:16px;margin-bottom:1.5rem}.feature-card h3{font-size:1.5rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.feature-card p{color:var(--text-secondary);line-height:1.6}.demo-info{background:var(--bg-surface);padding:3rem;border-radius:16px;border:1px solid var(--border-color);margin-bottom:4rem}.demo-info h2{font-size:2rem;font-weight:600;margin-bottom:2rem;color:var(--text-primary);text-align:center}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.info-section h3{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:var(--primary-color)}.info-section ul{list-style:none;padding:0}.info-section li{position:relative;padding:.5rem 0 .5rem 1.5rem;color:var(--text-secondary)}.info-section li:before{content:"✓";position:absolute;left:0;color:var(--success-color);font-weight:700}.demo-usage{background:var(--bg-secondary);padding:3rem;border-radius:16px;border:1px solid var(--border-color)}.demo-usage h2{font-size:2rem;font-weight:600;margin-bottom:2rem;color:var(--text-primary);text-align:center}.usage-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.step{display:flex;align-items:flex-start;gap:1rem}.step-number{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--primary-color);color:var(--white);border-radius:50%;font-weight:600;flex-shrink:0}.step-content h4{font-size:1.125rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.step-content p{color:var(--text-secondary);line-height:1.5}.demo-terminal{height:100vh;display:flex;flex-direction:column}.demo-terminal .terminal-chat-container.fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000}@media (max-width: 768px){.demo-landing{padding:1rem}.demo-hero{padding:2rem 1rem;margin-bottom:2rem}.demo-hero h1{font-size:2rem}.hero-subtitle{font-size:1rem;margin-bottom:2rem}.start-demo-btn{padding:12px 24px;font-size:1rem}.feature-grid{grid-template-columns:1fr;gap:1.5rem}.feature-card{padding:1.5rem}.demo-info,.demo-usage{padding:2rem 1rem;margin-bottom:2rem}.info-grid,.usage-steps{grid-template-columns:1fr;gap:1.5rem}}@media (max-width: 480px){.demo-hero h1{font-size:1.75rem}.feature-icon{width:48px;height:48px}.feature-card h3{font-size:1.25rem}.demo-info h2,.demo-usage h2{font-size:1.5rem}.step{flex-direction:column;text-align:center}.step-number{width:32px;height:32px;font-size:14px}}@media (prefers-color-scheme: dark){.demo-hero{background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-color-dark) 100%)}.feature-card:hover{box-shadow:0 12px 40px #ffffff0d}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.demo-landing>*{animation:fadeInUp .6s ease-out}.demo-landing>*:nth-child(2){animation-delay:.1s}.demo-landing>*:nth-child(3){animation-delay:.2s}.demo-landing>*:nth-child(4){animation-delay:.3s}@media (prefers-reduced-motion: reduce){.start-demo-btn,.feature-card{transition:none}.demo-landing>*{animation:none}}.users-tab-container{display:flex;flex-direction:column;background:var(--bg-primary);overflow:hidden;height:100%;min-height:calc(100vh - 200px)}.users-tab{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:32px 40px}.users-tab ::-webkit-scrollbar{width:10px;height:10px}.users-tab ::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:10px}.users-tab ::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:10px;border:2px solid var(--bg-secondary)}.users-tab ::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.users-tab{scrollbar-width:thin;scrollbar-color:var(--border-color) var(--bg-secondary)}.users-header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:32px;padding-bottom:24px;border-bottom:2px solid var(--border-color)}.users-stats{display:flex;gap:20px;flex-wrap:wrap}.stat-card{background:var(--bg-surface);border:2px solid var(--border-color);border-radius:12px;padding:20px 24px;min-width:140px;transition:all .2s ease}.stat-card:hover{border-color:var(--primary-color);transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.stat-value{font-size:2.5rem;font-weight:700;color:var(--text-primary);line-height:1;letter-spacing:-.03em}.user-stat-value{font-size:2.5rem;font-weight:700;color:var(--text-primary);line-height:1;letter-spacing:-.03em;text-align:center}.stat-label{font-size:.875rem;color:var(--text-secondary);margin-top:8px;font-weight:500;text-align:center;text-transform:uppercase;letter-spacing:.05em}.users-table-container{overflow:hidden;display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px}.table-responsive{max-height:600px;overflow-y:auto;overflow-x:hidden}.table-responsive::-webkit-scrollbar{width:8px;height:8px}.table-responsive::-webkit-scrollbar-track{background:var(--bg-surface);border-radius:4px}.table-responsive::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px;transition:background .2s ease}.table-responsive::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.table-responsive{scrollbar-width:thin;scrollbar-color:var(--border-color) var(--bg-surface)}.users-table{width:100%;border-collapse:collapse}.users-table thead{background:var(--bg-hover);border-bottom:2px solid var(--border-color);position:sticky;top:0;z-index:10}.users-table th{padding:16px 20px;text-align:left;font-weight:700;color:var(--text-primary);font-size:.8rem;text-transform:uppercase;letter-spacing:.08em}.users-table td{padding:18px 20px;border-top:1px solid var(--border-color);color:var(--text-primary);font-size:.95rem}.users-table tbody tr{transition:all .2s ease}.users-table tbody tr:hover{background:var(--bg-hover);transform:scale(1.001)}.user-roles{display:flex;flex-wrap:wrap;gap:6px}.role-badge{padding:4px 10px;border-radius:6px;font-size:.7rem;font-weight:600;text-transform:capitalize;letter-spacing:.02em;background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.role-badge[data-role=admin]{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.role-badge[data-role=pr_manager]{background:rgba(16,185,129,.15);color:#10b981;border-color:#10b9814d}.role-badge[data-role=pr_user]{background:rgba(16,185,129,.08);color:#059669;border-color:#10b98133}.role-badge[data-role=email_manager]{background:rgba(99,102,241,.15);color:#6366f1;border-color:#6366f14d}.role-badge[data-role=email_user]{background:rgba(99,102,241,.08);color:#4f46e5;border-color:#6366f133}.role-badge.no-role{background:var(--bg-secondary);color:var(--text-muted);border:1px dashed var(--border-color);font-style:italic}.action-buttons{display:flex;gap:8px}.action-btn{background:none;border:none;cursor:pointer;font-size:1.3rem;padding:8px;border-radius:8px;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.action-btn:hover{background:var(--bg-hover);transform:scale(1.15)}.action-btn.password:hover{background:rgba(59,130,246,.1);color:#3b82f6}.action-btn.delete:hover{background:rgba(220,38,38,.1);color:#dc2626}.loading-state{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);font-size:15px;font-weight:500;flex-direction:column;gap:12px}.user-form{display:flex;flex-direction:column;gap:24px;padding:24px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:600;color:var(--text-primary);font-size:.9rem;letter-spacing:-.01em}.form-group input[type=text],.form-group input[type=email],.form-group input[type=password]{padding:12px 14px;border:2px solid var(--border-color);border-radius:8px;background:var(--bg-surface);color:var(--text-primary);font-size:.95rem;transition:all .2s ease}.form-group input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-alpha)}.form-group.checkbox{flex-direction:row;align-items:center;gap:12px}.form-group.checkbox label{display:flex;align-items:center;gap:10px;cursor:pointer}.form-group.checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--primary-color)}.form-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:20px;border-top:2px solid var(--border-color)}@media (max-width: 1400px){.users-page-container{left:260px}.users-page{padding:24px 32px}}@media (max-width: 1024px){.users-page-container{left:0;top:60px}.users-page{padding:20px 24px}.users-header{flex-direction:column}.users-stats{width:100%}.stat-card{flex:1;min-width:120px}}@media (max-width: 768px){.users-page{padding:16px}.users-table th,.users-table td{padding:12px 14px;font-size:.85rem}.stat-value{font-size:2rem}}.permissions-tab{display:flex;flex-direction:column;background:var(--bg-primary);padding:0;height:100%;min-height:calc(100vh - 200px)}.permission-layout{display:grid;grid-template-columns:380px 1fr;gap:0;flex:1;overflow:hidden}.permission-management ::-webkit-scrollbar{width:10px;height:10px}.permission-management ::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:10px}.permission-management ::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:10px;border:2px solid var(--bg-secondary)}.permission-management ::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.permissions-tab{scrollbar-width:thin;scrollbar-color:var(--border-color) var(--bg-secondary)}.user-list-panel{display:flex;flex-direction:column;background:var(--bg-surface);border-right:1px solid var(--border-color);overflow:hidden;height:100%}.user-list-header{padding:24px 20px 16px;border-bottom:1px solid var(--border-color);background:var(--bg-surface)}.user-list-header h3{margin:0 0 16px;font-size:18px;font-weight:600;color:var(--text-primary);letter-spacing:-.02em}.user-search{width:100%;padding:10px 14px;background:var(--bg-input);border:1px solid var(--border-color);border-radius:6px;font-size:14px;color:var(--text-primary);transition:all .2s}.user-search::placeholder{color:var(--text-tertiary)}.user-search:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px var(--primary-color-alpha)}.permission-user-list{flex:1;overflow-y:auto;padding:12px;height:100%;min-height:0}.user-list-item{width:100%;padding:16px 18px;margin-bottom:8px;background:var(--bg-primary);border:1.5px solid var(--border-color);border-radius:12px;text-align:left;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 1px 3px #00000008}.user-list-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--primary-color);transform:scaleY(0);transition:transform .2s ease}.user-list-item:hover:before{transform:scaleY(1)}.user-list-item:hover{background:var(--bg-surface);border-color:var(--primary-color);transform:translate(4px);box-shadow:0 3px 12px #00000014}.user-list-item.selected{background:linear-gradient(135deg,var(--primary-color-alpha) 0%,rgba(var(--primary-color-rgb),.08) 100%);border-color:var(--primary-color);border-width:2px;box-shadow:0 4px 16px rgba(var(--primary-color-rgb),.15);transform:translate(4px)}.user-list-item.selected:before{transform:scaleY(1)}.user-info{margin-bottom:10px}.user-name{font-size:15px;font-weight:700;color:var(--text-primary);margin-bottom:4px;letter-spacing:-.02em;line-height:1.3}.user-list-item.selected .user-name{color:var(--primary-color)}.user-email{font-size:12px;color:var(--text-tertiary);font-weight:500;font-family:SF Mono,Monaco,Courier New,monospace;letter-spacing:-.01em}.user-roles-preview{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.role-badge{font-size:11px;padding:4px 12px;border-radius:16px;font-weight:600;text-transform:capitalize;letter-spacing:.02em;white-space:nowrap;border:1.5px solid}.role-badge[data-role=admin]{background:linear-gradient(135deg,#8B5CF6 0%,#6D28D9 100%);color:#fff;border-color:#7c3aed;box-shadow:0 2px 4px #8b5cf633}.role-badge[data-role=pr_manager],.role-badge[data-role="pr manager"]{background:linear-gradient(135deg,#3B82F6 0%,#2563EB 100%);color:#fff;border-color:#3b82f6;box-shadow:0 2px 4px #3b82f633}.role-badge[data-role=pr_user],.role-badge[data-role="pr user"]{background:var(--bg-surface);color:#3b82f6;border-color:#93c5fd}.role-badge[data-role=email_manager],.role-badge[data-role="email manager"]{background:linear-gradient(135deg,#10B981 0%,#059669 100%);color:#fff;border-color:#10b981;box-shadow:0 2px 4px #10b98133}.role-badge[data-role=email_user],.role-badge[data-role="email user"]{background:var(--bg-surface);color:#10b981;border-color:#6ee7b7}.role-badge.counter{background:var(--bg-tertiary);color:var(--text-tertiary);border-color:var(--border-color);font-weight:700}.permission-panel{background:var(--bg-primary);overflow:hidden;display:flex;flex-direction:column;height:100%}.permission-content{flex:1;overflow-y:auto;padding:32px 40px}.permission-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:40px;padding-bottom:24px;border-bottom:2px solid var(--border-color)}.permission-header h3{margin:0;font-size:24px;font-weight:700;color:var(--text-primary);letter-spacing:-.03em}.user-email-display{margin:6px 0 0;font-size:15px;color:var(--text-secondary);font-weight:400}.saving-indicator{font-size:14px;color:var(--primary-color);font-weight:600;padding:8px 16px;background:var(--primary-color-alpha);border-radius:6px}.permission-section{margin-bottom:48px}.permission-section h4{margin:0 0 14px;font-size:19px;font-weight:700;color:var(--text-primary);letter-spacing:-.03em;display:flex;align-items:center;gap:10px}.permission-section h4:before{content:"";width:4px;height:24px;background:linear-gradient(to bottom,var(--primary-color),var(--primary-color-dark));border-radius:2px}.section-description{margin:0 0 28px;font-size:15px;color:var(--text-secondary);line-height:1.6;padding-left:14px;border-left:2px solid var(--border-color)}.role-chips{display:flex;flex-wrap:wrap;gap:12px}.role-chip{padding:12px 20px;background:var(--bg-surface);border:2px solid var(--border-color);border-radius:28px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:8px;text-transform:capitalize;box-shadow:0 1px 3px #0000000d;position:relative;overflow:hidden}.role-chip:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent 0%,rgba(255,255,255,.1) 100%);opacity:0;transition:opacity .2s ease}.role-chip:hover:before{opacity:1}.role-chip:hover{background:var(--bg-hover);border-color:var(--primary-color);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.role-chip.active{background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-color-dark) 100%);color:#fff;border-color:var(--primary-color);box-shadow:0 2px 8px rgba(var(--primary-color-rgb),.3)}.role-chip.active:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(var(--primary-color-rgb),.4)}.chip-check{font-size:13px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:rgba(255,255,255,.25);border-radius:50%}.role-grid,.role-card{display:none}.role-card:hover{background:var(--bg-hover);border-color:var(--primary-color);transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.role-card.assigned{background:var(--primary-color-alpha);border-color:var(--primary-color);box-shadow:0 2px 12px #00000014}.role-card:disabled{opacity:.5;cursor:not-allowed;transform:none}.role-card-header{display:flex;align-items:center;gap:14px;margin-bottom:12px}.role-checkbox{width:22px;height:22px;border:2px solid var(--border-color);border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;transition:all .2s ease;background:var(--bg-primary)}.role-card.assigned .role-checkbox{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.role-name{font-size:16px;font-weight:700;color:var(--text-primary);text-transform:capitalize;letter-spacing:-.01em}.role-description{font-size:14px;color:var(--text-secondary);margin-bottom:12px;line-height:1.5}.role-access-info{font-size:14px;color:var(--text-secondary);margin-bottom:12px;line-height:1.5;min-height:42px}.role-stats{display:flex;justify-content:space-between;align-items:center;gap:8px}.role-permission-count{font-size:12px;color:var(--text-tertiary);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.role-status-badge{font-size:11px;padding:3px 10px;background:var(--success-color);color:#fff;border-radius:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.permission-group{margin-bottom:40px;padding:20px;background:var(--bg-surface);border-radius:12px;border:1px solid var(--border-color);box-shadow:0 1px 3px #0000000a}.group-title{margin:0 0 20px;font-size:17px;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:10px;padding-bottom:12px;border-bottom:2px solid var(--border-color)}.permission-checkboxes{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px;padding:8px 0}.permission-checkbox-label{display:flex;align-items:center;gap:14px;cursor:pointer;padding:14px 16px;border-radius:10px;transition:all .2s cubic-bezier(.4,0,.2,1);border:1px solid transparent;position:relative}.permission-checkbox-label:hover{background:var(--bg-hover);border-color:var(--border-color);transform:translate(4px)}.permission-checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--primary-color);border-radius:4px;transition:all .2s ease}.permission-checkbox-label input[type=checkbox]:checked{transform:scale(1.1)}.permission-checkbox-label input[type=checkbox]:disabled{cursor:not-allowed;opacity:.4}.checkbox-text{font-size:15px;font-weight:500;color:var(--text-primary);display:flex;align-items:center;gap:10px;flex:1;line-height:1.4}.source-indicator{font-size:11px;font-weight:600;color:var(--text-tertiary);background:var(--bg-base);padding:3px 10px;border-radius:12px;text-transform:uppercase;letter-spacing:.03em;border:1px solid var(--border-color)}.source-indicator.custom{color:var(--warning-color);background:var(--warning-color-alpha);border-color:var(--warning-color)}.permission-grid,.permission-card{display:none}.permission-card:hover{background:var(--bg-hover);border-color:var(--primary-color);transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.permission-card.granted{background:var(--primary-color-alpha);border-color:var(--primary-color)}.permission-card.custom{border-color:var(--warning-color);border-width:2px}.permission-card.from-role{opacity:.7;cursor:not-allowed}.permission-card.from-role:hover{background:var(--bg-surface);border-color:var(--border-color);transform:none;box-shadow:none}.permission-card:disabled{cursor:not-allowed;opacity:.7}.permission-card:disabled{opacity:.5;cursor:not-allowed;transform:none}.permission-card-header{display:flex;align-items:center;gap:12px;margin-bottom:10px}.permission-checkbox{width:20px;height:20px;border:2px solid var(--border-color);border-radius:5px;display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0;transition:all .2s ease;background:var(--bg-primary)}.permission-card.granted .permission-checkbox{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.permission-page-name{font-size:14px;font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.permission-source{display:flex;gap:6px;flex-wrap:wrap}.custom-badge{font-size:10px;padding:3px 8px;background:var(--warning-color);color:#fff;border-radius:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.role-badge-small{font-size:10px;padding:3px 8px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:10px;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.05em}.denied-badge{font-size:10px;padding:3px 8px;background:var(--bg-tertiary);color:var(--text-tertiary);border-radius:10px;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.no-permissions{padding:48px;text-align:center;color:var(--text-secondary);background:var(--bg-surface);border-radius:12px;border:2px dashed var(--border-color);font-size:15px}.page-access-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.access-section{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;overflow:hidden;transition:all .2s}.access-section:hover{border-color:var(--primary-color);box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.access-section-header{display:flex;align-items:center;gap:12px;padding:20px 20px 16px;border-bottom:1px solid var(--border-color);background:var(--bg-hover)}.access-icon{font-size:24px;line-height:1}.access-section-header h5{margin:0;font-size:16px;font-weight:700;color:var(--text-primary);flex:1;letter-spacing:-.01em}.access-count{font-size:12px;padding:4px 10px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:12px;color:var(--text-secondary);font-weight:600}.access-list{list-style:none;margin:0;padding:12px}.access-list li{display:flex;align-items:center;gap:12px;padding:4px 6px;margin-bottom:4px;border-radius:6px;transition:all .15s}.access-list li:hover{background:var(--bg-hover)}.page-link{flex:1;text-align:left;padding:6px;background:none;border:none;font-size:14px;color:var(--text-primary);font-weight:500;cursor:pointer;border-radius:4px;transition:all .15s}.page-link:hover{color:var(--primary-color);background:var(--primary-color-alpha);text-decoration:underline}.check-icon{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:4px;background:var(--success-color);color:#fff;font-size:12px;font-weight:700;flex-shrink:0}.loading-state,.empty-state{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);font-size:15px;font-weight:500}.loading-state{flex-direction:column;gap:12px}.loading-state:after{content:"";width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin .8s linear infinite}@media (max-width: 1400px){.permissions-tab{left:260px}.permission-layout{grid-template-columns:340px 1fr}.permission-content{padding:24px 32px}}@media (max-width: 1024px){.permissions-tab{left:0;top:60px}.permission-layout{grid-template-columns:300px 1fr}.role-grid{grid-template-columns:1fr}.permission-content{padding:20px 24px}}@media (max-width: 768px){.permission-layout{grid-template-columns:1fr;height:auto}.user-list-panel{max-height:300px;border-right:none;border-bottom:1px solid var(--border-color)}.permission-panel{min-height:500px}.permission-content{padding:20px}}.system-tab{display:flex;flex-direction:column;gap:var(--spacing-xl)}.system-section{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-lg)}.section-title{margin:0 0 var(--spacing-lg) 0;color:var(--text-primary);font-size:1.25rem;font-weight:600}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.info-card{padding:var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm)}.info-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-xs)}.info-value{font-size:1.125rem;font-weight:600;color:var(--text-primary)}.info-value.status-good{color:var(--success-color)}.info-value.status-warning{color:var(--warning-color)}.info-value.status-error{color:var(--error-color)}.action-grid{display:flex;flex-direction:column;gap:var(--spacing-md)}.action-card{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm)}.action-info h3{margin:0 0 var(--spacing-xs) 0;font-size:1rem;color:var(--text-primary)}.action-info p{margin:0;font-size:.875rem;color:var(--text-secondary)}.settings-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.setting-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm)}.setting-info{flex:1}.setting-info label{display:block;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.setting-info p{margin:0;font-size:.875rem;color:var(--text-secondary)}.setting-input{width:120px;padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:.875rem}.setting-input:focus{outline:none;border-color:var(--accent-primary)}.toggle-switch{position:relative;display:inline-block;width:50px;height:26px}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--bg-tertiary);border:1px solid var(--border-color);transition:.3s;border-radius:26px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider{background-color:var(--accent-primary);border-color:var(--accent-primary)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px)}.toggle-slider:hover{opacity:.9}.settings-actions{display:flex;justify-content:flex-end;padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md)}.stat-item{padding:var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);text-align:center}.stat-label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-xs)}.stat-value{font-size:1.5rem;font-weight:600;color:var(--text-primary)}.container-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.container-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--border-color);background:var(--bg-elevated)}.container-info{display:flex;flex-direction:column;gap:8px}.container-name{font-size:18px;font-weight:600;color:var(--text-primary)}.container-meta{display:flex;align-items:center;gap:12px}.status-badge{padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;text-transform:capitalize}.status-badge.running{background:var(--success-bg);color:var(--success-text)}.status-badge.exited{background:var(--error-bg);color:var(--error-text)}.uptime{font-size:13px;color:var(--text-secondary)}.container-stats{display:flex;gap:24px}.stat{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.stat-label{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:16px;font-weight:600;color:var(--text-primary);font-family:Monaco,Menlo,Courier New,monospace}.container-section{border-top:1px solid var(--border-color)}.section-header{padding:16px 20px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}.section-header:hover{background:var(--bg-hover)}.section-header h3{font-size:15px;font-weight:600;color:var(--text-primary);margin:0}.process-table-container{padding:0 20px 20px;overflow-x:auto}.process-table{width:100%;border-collapse:collapse}.process-table th{text-align:left;padding:8px;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color)}.process-table td{padding:12px 8px;font-size:14px;border-bottom:1px solid var(--border-color)}.process-table tbody tr:last-child td{border-bottom:none}.process-table tbody tr:hover{background:var(--bg-hover)}.process-table .pid{font-family:Monaco,Menlo,Courier New,monospace;color:var(--text-secondary);font-size:13px}.type-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:16px;background:var(--bg-elevated)}.type-badge.continuous{color:var(--info-text)}.type-badge.cron-related{color:var(--warning-text)}.process-table .command code{font-size:13px;color:var(--text-primary);background:transparent}.process-table .cpu,.process-table .memory{font-family:Monaco,Menlo,Courier New,monospace;font-size:13px;color:var(--text-secondary);text-align:right}.cron-jobs-list{padding:16px 20px 20px;display:flex;flex-direction:column;gap:12px}.cron-job-card{background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:6px;padding:16px;display:flex;flex-direction:column;gap:12px}.cron-job-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.cron-job-info{display:flex;flex-direction:column;gap:4px;flex:1}.cron-job-id{font-size:14px;font-weight:600;color:var(--text-primary);font-family:Monaco,Menlo,Courier New,monospace}.cron-job-description{font-size:13px;color:var(--text-secondary);text-transform:capitalize}.cron-job-details{display:flex;flex-direction:column;gap:8px;padding:12px;background:var(--bg-surface);border-radius:4px}.cron-detail{display:flex;gap:8px;font-size:13px}.detail-label{font-weight:600;color:var(--text-secondary);min-width:80px}.detail-value{color:var(--text-primary)}.detail-value code{background:transparent;font-size:13px}.cron-job-command{padding:8px 12px;background:var(--bg-surface);border-radius:4px;overflow-x:auto}.cron-job-command code{font-size:12px;color:var(--text-secondary);white-space:pre-wrap;word-break:break-all}@media (max-width: 768px){.container-header{flex-direction:column;align-items:flex-start;gap:16px}.container-stats{width:100%;justify-content:flex-start}.process-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.cron-job-header{flex-direction:column}.cron-job-header button{width:100%}}.cron-editor{display:flex;flex-direction:column;gap:24px;padding:4px}.cron-editor-info{display:flex;flex-direction:column;gap:8px;padding:16px;background:var(--bg-elevated);border-radius:6px}.info-row{display:flex;gap:12px;font-size:14px}.info-label{font-weight:600;color:var(--text-secondary);min-width:120px}.info-value{color:var(--text-primary)}.info-value code{background:var(--bg-surface);padding:2px 6px;border-radius:3px;font-size:13px}.cron-editor-input{display:flex;flex-direction:column;gap:8px}.cron-hint{font-size:12px;color:var(--text-secondary);font-family:Monaco,Menlo,Courier New,monospace}.validation-status{display:flex;align-items:flex-start;gap:12px;padding:16px;border-radius:6px;font-size:14px}.validation-status.validating{background:var(--info-bg);color:var(--info-text)}.validation-status.valid{background:var(--success-bg);color:var(--success-text)}.validation-status.invalid{background:var(--error-bg);color:var(--error-text)}.validation-icon{font-size:20px;font-weight:700;flex-shrink:0}.validation-details{flex:1;display:flex;flex-direction:column;gap:4px}.validation-human{font-weight:600}.validation-next{font-size:13px;opacity:.9}.validation-error{flex:1}.cron-presets{display:flex;flex-direction:column;gap:12px}.presets-label{font-size:14px;font-weight:600;color:var(--text-primary)}.presets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}.preset-button{padding:8px 12px;background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:6px;font-size:13px;color:var(--text-primary);cursor:pointer;transition:all .2s;text-align:left}.preset-button:hover{background:var(--bg-hover);border-color:var(--bg-primary)}.preset-button.active{background:var(--bg-primary);color:var(--text-on-primary);border-color:var(--bg-primary)}.cron-editor-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:8px;border-top:1px solid var(--border-color)}.cron-mode-toggle{display:flex;gap:8px;padding:4px;background:var(--bg-elevated);border-radius:8px}.mode-button{flex:1;padding:10px 16px;background:transparent;border:none;border-radius:6px;font-size:14px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .2s}.mode-button:hover{background:var(--bg-hover);color:var(--text-primary)}.mode-button.active{background:var(--bg-primary);color:var(--text-on-primary)}.time-builder{display:flex;flex-direction:column;gap:20px;padding:20px;background:var(--bg-elevated);border-radius:8px}.time-builder-section{display:flex;flex-direction:column;gap:10px}.builder-label{font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.time-inputs{display:flex;align-items:center;gap:8px}.time-input{width:70px;padding:12px;font-size:24px;font-weight:600;text-align:center;background:var(--bg-surface);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-family:Monaco,Menlo,Courier New,monospace}.time-input:focus{outline:none;border-color:var(--bg-primary)}.time-separator{font-size:28px;font-weight:700;color:var(--text-secondary)}.frequency-buttons{display:flex;gap:8px}.freq-button{flex:1;padding:12px 16px;background:var(--bg-surface);border:2px solid var(--border-color);border-radius:8px;font-size:14px;font-weight:600;color:var(--text-primary);cursor:pointer;transition:all .2s}.freq-button:hover{border-color:var(--bg-primary);background:var(--bg-hover)}.freq-button.active{background:var(--bg-primary);color:var(--text-on-primary);border-color:var(--bg-primary)}.day-buttons{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.day-button{padding:10px 8px;background:var(--bg-surface);border:2px solid var(--border-color);border-radius:6px;font-size:12px;font-weight:600;color:var(--text-primary);cursor:pointer;transition:all .2s;text-align:center}.day-button:hover{border-color:var(--bg-primary);background:var(--bg-hover)}.day-button.active{background:var(--bg-primary);color:var(--text-on-primary);border-color:var(--bg-primary)}.generated-cron{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--bg-surface);border-radius:6px;font-size:14px}.generated-cron code{font-family:Monaco,Menlo,Courier New,monospace;color:var(--text-primary);font-weight:600}@media (max-width: 768px){.presets-grid{grid-template-columns:1fr}.cron-editor-actions{flex-direction:column-reverse}.cron-editor-actions button{width:100%}.frequency-buttons{flex-direction:column}.day-buttons{grid-template-columns:repeat(4,1fr)}}.processes-tab{display:flex;flex-direction:column;gap:24px}.processes-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.stat-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;padding:20px;display:flex;flex-direction:column;gap:8px}.stat-card.controls{flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.stat-label{font-size:14px;color:var(--text-secondary);font-weight:500;text-align:center}.stat-value{font-size:32px;font-weight:600;color:var(--text-primary)}.process-stat-value{font-size:32px;font-weight:600;color:var(--text-primary);text-align:center}.auto-refresh-toggle{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.auto-refresh-toggle input[type=checkbox]{cursor:pointer}.auto-refresh-toggle span{font-size:14px;color:var(--text-primary)}.refresh-button{padding:8px 16px;background:var(--bg-primary);color:var(--text-on-primary);border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;transition:opacity .2s}.refresh-button:hover{opacity:.9}.refresh-button:active{transform:scale(.98)}.processes-containers{display:flex;flex-direction:column;gap:20px}.no-containers{text-align:center;padding:60px 20px;color:var(--text-secondary)}.processes-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px}.spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top-color:var(--bg-primary);border-radius:50%;animation:spin .8s linear infinite}.processes-loading p{color:var(--text-secondary);font-size:14px}@media (max-width: 768px){.processes-stats{grid-template-columns:1fr}.stat-card.controls{flex-direction:column;align-items:stretch}.refresh-button{width:100%}}.schedules-tab{max-width:1400px;margin:0 auto}.schedules-header{margin-bottom:var(--spacing-xl);display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-lg)}.header-content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-md)}.accordion-controls{display:flex;gap:var(--spacing-sm)}.btn-accordion-control{padding:var(--spacing-xs) var(--spacing-md);background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-accordion-control:hover{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.schedules-header h1{font-size:2rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-sm)}.btn-restart-workers{padding:var(--spacing-md) var(--spacing-lg);background:var(--warning-color, #ff9800);color:#fff;border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .2s;animation:pulse 2s infinite}.btn-restart-workers:hover:not(:disabled){background:var(--warning-hover, #f57c00);transform:translateY(-2px);box-shadow:0 4px 12px #ff98004d}.btn-restart-workers:disabled{opacity:.6;cursor:not-allowed;animation:none}@keyframes pulse{0%,to{box-shadow:0 0 #ff9800b3}50%{box-shadow:0 0 0 8px #ff980000}}.schedules-meta{display:flex;gap:var(--spacing-md);align-items:center;flex-wrap:wrap}.jobs-count{color:var(--text-secondary);font-size:.875rem;font-weight:500}.environment-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background:var(--accent-color);color:#fff;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase}.timezone-info{color:var(--text-secondary);font-size:.875rem}.schedules-loading,.schedules-error{text-align:center;padding:var(--spacing-xl);color:var(--text-secondary)}.schedule-category{margin-bottom:var(--spacing-lg)}.schedule-category:last-child{margin-bottom:0}.category-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-surface);border:2px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.category-header:hover{background:var(--bg-tertiary);border-color:var(--accent-color);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.category-header:active{transform:translateY(0)}.category-title{display:flex;align-items:center;gap:var(--spacing-md);flex:1}.category-icon{font-size:1.5rem;line-height:1}.category-header h2{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0}.category-count{background:var(--bg-tertiary);color:var(--text-secondary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600}.accordion-arrow{font-size:.875rem;color:var(--text-secondary);transition:transform .3s ease;display:inline-block}.accordion-arrow.expanded{transform:rotate(180deg)}.accordion-content{animation:slideDown .3s ease-out;margin-top:var(--spacing-md)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.schedules-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:var(--spacing-lg)}.schedule-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-lg);transition:all .2s}.schedule-card:hover{border-color:var(--accent-color);box-shadow:0 4px 12px #0000001a}.schedule-card.disabled{opacity:.6;background:var(--bg-tertiary)}.schedule-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-md)}.schedule-title{flex:1}.schedule-title h3{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.status-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase}.status-badge.enabled{background:var(--success-bg);color:var(--success-color)}.status-badge.disabled{background:var(--error-bg);color:var(--error-color)}.btn-edit{padding:var(--spacing-xs) var(--spacing-md);background:var(--accent-color);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.875rem;cursor:pointer;transition:background .2s}.btn-edit:hover:not(:disabled){background:var(--accent-hover)}.btn-edit:disabled{opacity:.5;cursor:not-allowed}.schedule-description{color:var(--text-secondary);font-size:.875rem;margin-bottom:var(--spacing-md);line-height:1.5}.schedule-details{display:flex;flex-direction:column;gap:var(--spacing-sm)}.detail-row{display:flex;justify-content:space-between;padding:var(--spacing-xs) 0;border-bottom:1px solid var(--border-light)}.detail-row:last-child{border-bottom:none}.detail-label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.detail-value{color:var(--text-primary);font-size:.875rem;font-family:monospace}.detail-value.notes{font-family:inherit;font-style:italic;color:var(--text-secondary)}.edit-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg)}.edit-modal{background:var(--bg-surface);border-radius:var(--radius-lg);width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--border-color)}.modal-header h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0}.btn-close{background:none;border:none;font-size:2rem;color:var(--text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all .2s}.btn-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.modal-body{padding:var(--spacing-lg)}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;font-weight:500;color:var(--text-primary);margin-bottom:var(--spacing-sm);font-size:.875rem}.form-group select{width:100%;padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:.875rem}.form-group select:focus{outline:none;border-color:var(--accent-color)}.toggle-group{display:flex;gap:var(--spacing-md)}.toggle-option{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer}.toggle-option input[type=radio]{cursor:pointer}.toggle-option span{color:var(--text-primary);font-size:.875rem}.form-group-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.btn-add-time{padding:var(--spacing-xs) var(--spacing-sm);background:var(--success-color);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.75rem;cursor:pointer;transition:opacity .2s}.btn-add-time:hover{opacity:.9}.run-times-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.run-time-item{display:flex;gap:var(--spacing-sm);align-items:center;padding:var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-sm)}.time-selectors{display:flex;gap:var(--spacing-xs);align-items:flex-end;flex:1}.time-selector-group{display:flex;flex-direction:column;gap:4px}.time-selector-group label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;font-weight:600;margin:0}.time-selector-group select{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:.875rem;min-width:70px}.time-separator{font-size:1.5rem;font-weight:600;color:var(--text-primary);padding-bottom:6px}.btn-remove-time{padding:var(--spacing-xs) var(--spacing-sm);background:var(--error-color);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.75rem;cursor:pointer;white-space:nowrap;transition:opacity .2s}.btn-remove-time:hover:not(:disabled){opacity:.9}.btn-remove-time:disabled{opacity:.4;cursor:not-allowed}.cron-preview{background:var(--bg-tertiary);padding:var(--spacing-md);border-radius:var(--radius-sm);margin-top:var(--spacing-md)}.cron-preview label{display:block;font-size:.75rem;color:var(--text-secondary);margin-bottom:var(--spacing-xs);font-weight:500;text-transform:uppercase}.cron-preview code{display:block;font-family:monospace;color:var(--text-primary);font-size:.875rem}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-sm);padding:var(--spacing-lg);border-top:1px solid var(--border-color)}.btn-secondary,.btn-primary,.btn-success{padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary)}.btn-secondary:hover{background:var(--border-color)}.btn-primary{background:var(--accent-color);color:#fff}.btn-primary:hover{background:var(--accent-hover)}.btn-success{background:var(--success-color);color:#fff}.btn-success:hover:not(:disabled){opacity:.9}.btn-success:disabled{opacity:.6;cursor:not-allowed}.pipeline-tab{display:flex;flex-direction:column;gap:24px;padding:0;max-width:1400px;margin:0 auto;width:100%}.loading-container,.error-container{display:flex;justify-content:center;align-items:center;min-height:400px}.loading{color:var(--text-secondary);font-size:18px}.error-message{color:var(--status-error);background:var(--bg-surface);padding:16px;border-radius:8px;border:1px solid var(--status-error)}.processors-section{display:flex;flex-direction:column;gap:16px}.processors-section h2{color:var(--text-primary);font-size:20px;font-weight:600;margin:0 0 8px}.processors-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.charts-section{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:8px}.chart-container{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;padding:24px;min-height:400px;box-shadow:0 1px 3px #0000000d}@media (max-width: 1200px){.charts-section{grid-template-columns:1fr}}@media (max-width: 768px){.processors-grid{grid-template-columns:1fr}}.company-search-compact{position:relative;flex:0 0 auto;width:200px}.company-search-input-row{position:relative;display:flex;align-items:center}.company-search-input{width:100%;padding:.5rem 2rem .5rem .75rem;border:1px solid var(--input-border);border-radius:var(--radius-sm);background:var(--input-bg);color:var(--text-primary);font-size:.875rem;transition:border-color var(--transition-fast)}.company-search-input:focus{outline:none;border-color:var(--input-focus-border);box-shadow:var(--input-focus-shadow)}.company-search-input::placeholder{color:var(--text-tertiary)}.company-search-spinner{position:absolute;right:.5rem;width:14px;height:14px;border:2px solid var(--border-color);border-top-color:var(--color-primary);border-radius:50%;animation:company-search-spin .6s linear infinite}@keyframes company-search-spin{to{transform:rotate(360deg)}}.company-search-dropdown{position:absolute;top:100%;left:0;right:0;z-index:1000;margin-top:4px;padding:0;list-style:none;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);max-height:280px;overflow-y:auto}.company-search-item{padding:.625rem .75rem;cursor:pointer;border-bottom:1px solid var(--border-color-light);transition:background-color var(--transition-fast)}.company-search-item:last-child{border-bottom:none}.company-search-item:hover{background:var(--bg-hover)}.company-search-item-title{font-weight:500;color:var(--text-primary);font-size:.875rem;margin-bottom:2px}.company-search-item-meta{font-size:.75rem;color:var(--text-secondary);display:flex;flex-wrap:wrap;gap:.5rem}.company-number{font-family:monospace;background:var(--bg-tertiary);padding:1px 5px;border-radius:var(--radius-sm);font-size:.7rem}.company-address{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.company-search-no-results{position:absolute;top:100%;left:0;right:0;margin-top:4px;padding:.625rem .75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-md);color:var(--text-secondary);font-size:.8125rem;text-align:center;z-index:1000}.company-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--bg-overlay);display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem}.company-modal{background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;max-width:480px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.company-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color)}.company-modal-header h3{margin:0;font-size:1.125rem;font-weight:600;color:var(--text-primary)}.company-modal-close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;padding:0;line-height:1;transition:color var(--transition-fast)}.company-modal-close:hover{color:var(--text-primary)}.company-modal-company{padding:.75rem 1.25rem;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.company-modal-company strong{color:var(--text-primary);font-size:.9375rem}.company-modal-body{flex:1;overflow-y:auto;padding:1rem 1.25rem}.company-modal-loading,.company-modal-empty{text-align:center;color:var(--text-secondary);padding:2rem 1rem;font-size:.875rem}.company-officer-list{display:flex;flex-direction:column;gap:.5rem}.company-officer-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;text-align:left;transition:all var(--transition-fast)}.company-officer-item:hover{background:var(--bg-hover);border-color:var(--color-primary)}.officer-name{font-weight:500;color:var(--text-primary);font-size:.9375rem}.officer-role{font-size:.75rem;color:var(--text-secondary);background:var(--bg-tertiary);padding:3px 8px;border-radius:var(--radius-sm)}.company-modal-footer{padding:.75rem 1.25rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end}.btn-skip{padding:.5rem 1rem;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.875rem;cursor:pointer;transition:all var(--transition-fast)}.btn-skip:hover{background:var(--bg-hover);color:var(--text-primary)}.payments-page{display:flex;flex-direction:column;height:100%;background:var(--bg-primary);overflow-x:hidden}.brand-toggle{display:flex;align-items:center;gap:var(--spacing-sm);position:absolute;left:50%;transform:translate(-50%)}.brand-label{color:var(--text-secondary);font-size:var(--font-sm);font-weight:500}.brand-toggle-btn{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);background:var(--brand-color, var(--color-primary));color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-base);font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #00000026;width:210px}.brand-toggle-btn:hover{box-shadow:0 4px 12px #0003}.brand-toggle-btn:active{transform:translate(-50%) scale(.98)}.brand-name{letter-spacing:.02em}.shuffle-icon{font-size:var(--font-lg);opacity:.9;transition:transform .3s ease}.brand-toggle-btn:hover .shuffle-icon{transform:rotate(180deg)}.payments-loading{display:flex;align-items:center;justify-content:center;padding:var(--spacing-2xl);color:var(--text-secondary)}.payments-error{padding:var(--spacing-lg);margin:var(--spacing-lg);background:var(--danger-bg);border-radius:var(--radius-md);color:var(--danger);display:flex;align-items:center;gap:var(--spacing-md)}.retry-btn{padding:var(--spacing-xs) var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;color:var(--text-primary)}.retry-btn:hover{background:var(--bg-hover)}.payments-header{display:flex;align-items:center;background:var(--bg-primary);border-bottom:2px solid var(--border-color);padding:0 var(--spacing-xl);height:48px;box-shadow:0 1px 3px #0000000d;position:relative;overflow:hidden}.payments-tabs{display:flex;gap:4px;align-items:center;height:100%}.payments-tabs .tab{display:flex;align-items:center;gap:8px;padding:8px 16px;background:transparent;border:none;border-radius:6px 6px 0 0;color:var(--text-primary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;height:calc(100% - 4px);position:relative;white-space:nowrap;margin-top:4px;border-bottom:3px solid transparent}.payments-tabs .tab:hover{color:var(--text-primary);background:var(--bg-hover)}.payments-tabs .tab.active{color:var(--color-primary);font-weight:600;background:var(--bg-surface);border-bottom:3px solid var(--color-primary);box-shadow:0 -2px 8px #0000000d}.payments-tabs .tab.active .tab-icon{transform:scale(1.1)}.payments-tabs .tab-icon{font-size:1.125rem;display:inline-flex;align-items:center;transition:transform .2s ease}.payments-tabs .tab-label{font-weight:inherit;letter-spacing:.01em}.mode-toggle{display:flex;align-items:center;gap:var(--spacing-sm);margin-left:auto}.mode-label{color:var(--text-secondary);font-size:var(--font-sm);font-weight:500}.mode-button{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);font-weight:600;font-size:var(--font-sm);cursor:pointer;transition:all .2s;border:none}.mode-button.test{background:var(--warning-bg);color:var(--warning)}.mode-button.live{background:var(--success-bg);color:var(--success)}.mode-button:hover{opacity:.8}.payments-content{flex:1;overflow-x:hidden;overflow-y:auto;padding:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-lg)}.collapsible-section{background:var(--bg-surface);border-radius:var(--radius-md);border:1px solid var(--border-color);overflow:hidden}.collapsible-header{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}.collapsible-header:hover{background:var(--bg-hover)}.collapsible-header h3{margin:0;font-size:var(--font-base);font-weight:600;color:var(--text-primary);flex:1}.collapsible-icon{font-size:var(--font-sm);color:var(--text-secondary);width:16px}.collapsible-section.collapsed .collapsible-header{border-bottom:none}.collapsible-section.expanded .collapsible-header{border-bottom:1px solid var(--border-color)}.collapsible-content{padding:var(--spacing-md)}.form-card{background:var(--bg-surface);border-radius:var(--radius-md);border:1px solid var(--border-color);padding:var(--spacing-lg)}.form-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);gap:var(--spacing-lg)}.form-card-header .agreement-first-checkbox{flex-shrink:0;margin:0;padding:0}.form-card-header h2{margin:0;font-size:var(--font-lg);color:var(--text-primary)}.customer-company-select-row{display:flex;align-items:center;gap:var(--spacing-sm)}.or-separator{color:var(--text-tertiary);font-size:var(--font-sm);font-weight:500;flex-shrink:0;margin:0 var(--spacing-xs)}.customer-select-group{display:flex!important;flex-direction:row!important;align-items:center;gap:var(--spacing-sm);margin:0!important;padding:0!important}.customer-select-group label{font-size:var(--font-sm);font-weight:600;color:var(--text-primary);white-space:nowrap;min-width:fit-content}.customer-select-group select{width:200px;max-width:200px;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-sm);background:var(--bg-primary);color:var(--text-primary)}.brand-logo-container{height:40px;min-width:100px;display:flex;align-items:center;justify-content:flex-end}.brand-logo{height:32px;width:auto;object-fit:contain;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm)}[data-theme=dark] .brand-logo{background:white}.brand-logo-fourpillarseo{height:45px}.form-card h2{margin:0 0 var(--spacing-lg) 0;font-size:var(--font-lg);color:var(--text-primary)}.subscription-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-sections{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.form-section{display:flex;flex-direction:column;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-elevated);border-radius:var(--radius-md);border:1px solid var(--border-color)}.form-section-title{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-sm);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.form-row-compact{display:flex;flex-direction:row;gap:var(--spacing-lg);align-items:flex-start}.form-row-with-gap{margin-bottom:var(--spacing-lg)}.form-row-compact+.form-row-compact{margin-top:var(--spacing-md)}.form-row-compact+.form-group{margin-top:var(--spacing-md)}.form-row-compact .form-group{flex:1;margin:0!important;padding:0!important}.form-row-compact .form-group-spacer{flex:1}.form-row-compact .form-group label{line-height:32px;height:32px;padding:0!important;margin:0!important}.form-row-compact .form-group input{height:32px;margin:0!important}.agreement-type-tabs{display:flex;gap:0;border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden;background:var(--bg-secondary)}.agreement-type-tab{flex:1;padding:var(--spacing-xs) var(--spacing-sm);background:transparent;border:none;color:var(--text-secondary);font-size:var(--font-sm);font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.agreement-type-tab:not(:last-child){border-right:1px solid var(--border-color)}.agreement-type-tab:hover{background:var(--bg-tertiary);color:var(--text-primary)}.agreement-type-tab.active{background:var(--color-primary);color:#fff}.field-hint{font-size:var(--font-xs);color:var(--text-tertiary);margin-top:var(--spacing-xs)}.field-hint.validation-loading,.field-hint.validation-success,.field-hint.validation-error{font-size:11px;margin-top:2px;line-height:1.2;flex-basis:100%;margin-left:155px;padding-left:var(--spacing-sm)}.field-hint.validation-loading{color:var(--text-secondary)}.field-hint.validation-success{color:var(--success-color)}.field-hint.validation-error{color:var(--error-color)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}@media (max-width: 900px){.form-sections{grid-template-columns:1fr}}@media (max-width: 768px){.form-row,.form-row-compact{grid-template-columns:1fr}}.payments-page .form-section .form-group,.payments-page .form-row-compact .form-group{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;gap:var(--spacing-sm)}.payments-page .form-section .form-group label,.payments-page .form-row-compact .form-group label{font-size:var(--font-sm);font-weight:500;color:var(--text-secondary);width:110px;min-width:110px;flex-shrink:0;white-space:nowrap;margin:0!important;display:inline-block}.payments-page .form-section .form-group input,.payments-page .form-section .form-group select,.payments-page .form-row-compact .form-group input,.payments-page .form-row-compact .form-group select{flex:1;min-width:0;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-sm);background:var(--bg-primary);color:var(--text-primary);transition:border-color .2s,box-shadow .2s}.payments-page .form-group input:focus,.payments-page .form-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--accent-bg)}.payments-page .form-group input::placeholder{color:var(--text-tertiary)}.form-group-with-subtext{flex:1;position:relative}.form-group-with-subtext .form-group{flex:none}.vat-notice{position:absolute;right:0;top:100%;color:#b45309;font-size:11px;font-weight:500;text-align:right;margin-top:2px;line-height:1.2;white-space:nowrap}[data-theme=dark] .vat-notice{color:var(--status-amber)}.checkbox-group{display:flex;align-items:center;margin-bottom:4px}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:var(--text-primary)}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-primary)}.checkbox-group+.form-group{margin-top:-4px}.btn-toggle-group{display:inline-flex;position:relative;border-radius:var(--radius-sm);overflow:hidden;border:1px solid var(--border-color)}.btn-toggle-group input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.btn-toggle-group label{display:inline-flex;align-items:center;justify-content:center;padding:6px 14px;font-size:var(--font-sm);font-weight:500;color:var(--text-primary);background:var(--bg-primary);border:none;border-right:1px solid var(--border-color);cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none;min-width:auto!important;width:auto!important}.btn-toggle-group label:last-of-type{border-right:none}.btn-toggle-group label:hover{background:var(--bg-hover)}.btn-toggle-group input[type=radio]:checked+label{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-toggle-group input[type=radio]:focus+label{box-shadow:0 0 0 2px rgba(var(--color-primary-rgb, 59, 130, 246),.25)}.payments-page .form-row-compact .form-group.project-type-group,.payments-page .form-section .form-group.project-type-group{display:flex!important;flex-direction:row!important;align-items:center!important}.payments-page .form-row-compact .form-group.project-type-group>label:first-child,.payments-page .form-section .form-group.project-type-group>label:first-child{width:110px!important;min-width:110px!important;flex-shrink:0!important}.payments-page .form-row-compact .form-group.project-type-group .btn-toggle-group label,.payments-page .form-section .form-group.project-type-group .btn-toggle-group label{width:auto!important;min-width:auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:6px 14px!important;font-size:var(--font-sm)!important;font-weight:500!important;color:var(--text-primary)!important;background:var(--bg-primary)!important;border:none!important;border-right:1px solid var(--border-color)!important;cursor:pointer!important;margin:0!important;transition:all .15s ease!important}.payments-page .form-group.project-type-group .btn-toggle-group label:last-of-type{border-right:none!important}.payments-page .form-group.project-type-group .btn-toggle-group label:hover{background:var(--bg-hover)!important}.payments-page .form-group.project-type-group .btn-toggle-group input[type=radio]:checked+label{background:var(--color-primary)!important;color:#fff!important;border-color:var(--color-primary)!important}.payment-type-group{flex-direction:column!important;align-items:flex-start!important;margin-bottom:var(--spacing-md)!important}.payment-type-group>label{margin-bottom:var(--spacing-xs);width:auto!important;min-width:auto!important}.payment-type-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-sm);width:100%}.payment-type-option{display:flex!important;flex-direction:column!important;align-items:flex-start!important;padding:var(--spacing-sm) var(--spacing-md)!important;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all .2s ease;width:100%!important;min-width:0!important}.payment-type-option:hover{background:var(--bg-hover);border-color:var(--color-primary)}.payment-type-option.selected{background:var(--accent-bg);border-color:var(--color-primary)}.payment-type-option input[type=radio]{position:absolute;opacity:0;width:0;height:0}.payment-type-label{font-weight:600!important;font-size:var(--font-sm)!important;color:var(--text-primary)!important;margin-bottom:2px}.payment-type-option.selected .payment-type-label{color:var(--color-primary)!important}.payment-type-desc{font-size:var(--font-xs)!important;color:var(--text-tertiary)!important;font-weight:400!important}.form-hint{font-size:var(--font-xs);color:var(--text-tertiary);margin-top:4px;display:block}.info-icon{margin-left:6px;cursor:help;color:var(--text-tertiary);font-size:var(--font-xs);position:relative;display:inline-block}.info-icon:hover:after{content:attr(title);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:var(--bg-elevated);color:var(--text-primary);padding:6px 10px;border-radius:var(--radius-sm);font-size:var(--font-xs);white-space:nowrap;box-shadow:0 2px 8px #00000026;border:1px solid var(--border-color);z-index:100;margin-bottom:4px}.info-icon:hover:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--border-color);z-index:100}.project-type-row{display:flex;align-items:center;justify-content:space-between;flex:1}.form-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-xs)}.form-section-header .form-section-title{margin:0}.checkbox-inline{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:var(--font-sm);font-weight:500;color:var(--text-secondary);-webkit-user-select:none;user-select:none}.checkbox-inline input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-primary)}.checkbox-inline:hover{color:var(--text-primary)}.flow-toggle-btn{padding:4px 8px;font-size:11px;font-weight:600;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s;white-space:nowrap}.flow-toggle-btn.payment-first{background:var(--bg-elevated);color:var(--text-secondary);border:1px solid var(--border-color)}.flow-toggle-btn.agreement-first{background:var(--accent-bg);color:var(--color-primary);border:1px solid var(--color-primary)}.flow-toggle-btn:hover{opacity:.8}.form-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.btn-primary{padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--font-sm);font-weight:500;cursor:pointer;transition:opacity .2s}.btn-primary:hover{opacity:.9}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{padding:var(--spacing-sm) var(--spacing-lg);background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-sm);font-weight:500;cursor:pointer;transition:background .2s}.btn-secondary:hover{background:var(--bg-hover)}.btn-sm{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-xs)}.btn-xs{padding:2px 8px;font-size:11px}.status-signed{color:var(--success);font-weight:700;font-size:16px}.result-box{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);min-height:44px;display:flex;align-items:center}.result-box.empty{background:var(--bg-elevated);border:1px dashed var(--border-color)}.result-box.success{background:var(--success-bg);border:1px solid var(--success)}.result-box.error{background:var(--danger-bg);border:1px solid var(--danger)}.result-url-row,.result-error-row,.result-placeholder{display:flex;align-items:center;gap:var(--spacing-sm);width:100%}.result-label{font-weight:500;color:var(--text-secondary);font-size:var(--font-sm);white-space:nowrap}.result-url{flex:1;word-break:break-all}.error-label{font-weight:600;color:var(--danger);font-size:var(--font-sm)}.placeholder-text{color:var(--text-tertiary)}.result-box .mono{font-family:var(--font-mono);font-size:var(--font-sm)}.data-table{background:var(--bg-surface);border-radius:var(--radius-md);border:1px solid var(--border-color);overflow-x:auto;max-width:100%}.table-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--border-color)}.table-header h3{margin:0;font-size:var(--font-base);font-weight:600;color:var(--text-primary)}.data-table table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--border-color)}.data-table th{background:var(--bg-elevated);color:var(--text-secondary);font-size:var(--font-xs);font-weight:600;text-transform:uppercase}.data-table td{font-size:var(--font-sm);color:var(--text-primary)}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:var(--bg-hover)}.data-table .mono{font-family:var(--font-mono);font-size:var(--font-xs)}.data-table .empty-state{text-align:center;color:var(--text-secondary);padding:var(--spacing-xl)}.data-table-inner{width:100%;border-collapse:collapse}.data-table-inner th,.data-table-inner td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--border-color)}.data-table-inner th{background:var(--bg-elevated);color:var(--text-secondary);font-size:var(--font-xs);font-weight:600;text-transform:uppercase}.data-table-inner td{font-size:var(--font-sm);color:var(--text-primary)}.data-table-inner tr:last-child td{border-bottom:none}.data-table-inner tr:hover td{background:var(--bg-hover)}.data-table-inner .empty-state{text-align:center;color:var(--text-secondary);padding:var(--spacing-xl)}.status-badge{display:inline-block;padding:var(--spacing-2xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--font-xs);font-weight:500;text-transform:capitalize}.status-badge.status-active,.status-badge.status-completed,.status-badge.status-signed{background:var(--success-bg);color:var(--success)}.status-badge.status-pending,.status-badge.status-created{background:var(--warning-bg);color:var(--warning)}.status-badge.status-cancelled{background:var(--danger-bg);color:var(--danger)}.mode-badge{display:inline-block;padding:var(--spacing-2xs) var(--spacing-xs);border-radius:var(--radius-sm);font-size:var(--font-xs);font-weight:600;text-transform:uppercase}.mode-badge.test{background:var(--warning-bg);color:var(--warning)}.mode-badge.live{background:var(--success-bg);color:var(--success)}@media (max-width: 1200px){.payments-header{padding:0 var(--spacing-md);height:44px}.payments-tabs{gap:3px}.payments-tabs .tab{padding:6px 12px;font-size:.8125rem;gap:6px}.payments-tabs .tab-icon{font-size:1rem}}@media (max-width: 768px){.payments-header{padding:0 var(--spacing-sm);height:42px}.payments-tabs{gap:2px}.payments-tabs .tab{padding:6px 10px;font-size:.75rem;gap:4px}.payments-tabs .tab-icon{font-size:.875rem}.mode-label{display:none}}.projects-tab{height:100%;display:flex;flex-direction:column}.loading-state{padding:var(--spacing-xl);text-align:center;color:var(--text-secondary)}.projects-toolbar{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border-bottom:1px solid var(--border-color);background:var(--bg-surface);flex-shrink:0}.toolbar-spacer{flex:1}.stage-legend{display:flex;gap:var(--spacing-lg)}.legend-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--text-secondary)}.legend-dot{width:10px;height:10px;border-radius:50%}.legend-item.completed .legend-dot{background:var(--success-color, #10b981)}.legend-item.in-progress .legend-dot{background:var(--warning-color, #f59e0b)}.legend-item.not-started .legend-dot{background:var(--text-tertiary, #6b7280)}.projects-list{flex:1;overflow-y:auto;padding:var(--spacing-md);padding-bottom:100px}.projects-table{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md)}.table-header{display:grid;grid-template-columns:200px 1fr 40px;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-secondary);border-bottom:1px solid var(--border-color);font-weight:600;font-size:var(--font-size-sm);color:var(--text-secondary)}.table-row{display:grid;grid-template-columns:200px 1fr 40px;gap:var(--spacing-md);padding:var(--spacing-md);border-bottom:1px solid var(--border-color);align-items:center;position:relative}.table-row:last-child{border-bottom:none}.table-row:hover{background:var(--bg-secondary)}.col-project{min-width:0}.project-name{font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-website{font-size:var(--font-size-sm);color:var(--text-tertiary);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.project-website:hover{color:var(--accent-primary)}.col-stages,.table-header .col-stages{display:flex;gap:var(--spacing-sm);justify-content:space-between}.col-stage{flex:1;text-align:center;font-size:var(--font-size-xs)}.stage-indicator{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}.stage-dot{width:16px;height:16px;border-radius:50%;transition:transform .2s ease}.stage-indicator:hover .stage-dot{transform:scale(1.2)}.stage-indicator.completed .stage-dot{background:var(--success-color, #10b981);box-shadow:0 0 8px #10b98166}.stage-indicator.in-progress .stage-dot{background:var(--warning-color, #f59e0b);box-shadow:0 0 8px #f59e0b66;animation:pulse 2s infinite}.stage-indicator.not-started .stage-dot{background:var(--text-tertiary, #6b7280);opacity:.5}.stage-label{display:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.col-menu,.action-menu{position:relative}.menu-trigger{background:none;border:none;padding:var(--spacing-xs) var(--spacing-sm);cursor:pointer;color:var(--text-secondary);font-size:var(--font-size-lg);border-radius:var(--radius-sm);line-height:1}.menu-trigger:hover{background:var(--bg-tertiary);color:var(--text-primary)}.menu-dropdown{position:absolute;top:100%;right:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:100;min-width:120px;overflow:hidden}.menu-dropdown button{display:block;width:100%;padding:var(--spacing-sm) var(--spacing-md);border:none;background:none;text-align:left;cursor:pointer;font-size:var(--font-size-sm);color:var(--text-primary)}.menu-dropdown button:hover{background:var(--bg-secondary)}.menu-dropdown button.delete{color:var(--error-color, #ef4444)}.menu-dropdown button.delete:hover{background:rgba(239,68,68,.1)}.empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--spacing-xxl);color:var(--text-secondary)}.empty-state p{margin-bottom:var(--spacing-lg)}.new-project-form{display:flex;flex-direction:column;gap:var(--spacing-md);padding:var(--spacing-md)}.form-group label{font-weight:500;color:var(--text-primary);font-size:var(--font-size-sm)}.form-group input{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:var(--font-size-base)}.form-group input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px rgba(var(--accent-primary-rgb),.2)}.form-group input::placeholder{color:var(--text-tertiary)}@media (max-width: 900px){.table-header,.table-row{grid-template-columns:150px 1fr 40px}.col-stage{font-size:10px}}@media (max-width: 600px){.projects-header{flex-direction:column;gap:var(--spacing-md)}.table-header,.table-row{grid-template-columns:1fr;gap:var(--spacing-sm)}.col-stages{order:2}.col-progress{order:3}}.audit-setup{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.audit-toolbar{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--border-color);background:var(--bg-surface);flex-shrink:0;margin:0;width:100%;box-sizing:border-box}.project-select:disabled{opacity:.6;cursor:not-allowed}.toolbar-separator{width:1px;height:24px;background:var(--border-color);margin:0 var(--spacing-sm)}.toolbar-label{font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary)}.crawl-status{font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm)}.crawl-status.crawling{color:var(--accent-primary)}.crawl-status.completed{color:var(--text-secondary)}.crawl-status.classifying{color:var(--accent-primary)}.crawl-status.loading{color:var(--text-secondary)}.crawl-status.fetching,.crawl-status.generating{color:var(--accent-primary)}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:currentColor;margin-right:var(--spacing-xs);vertical-align:middle}.status-dot.pulsing{animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.audit-tabs{display:flex;align-items:center;gap:.5rem;height:48px;padding:0 var(--spacing-lg);background:var(--bg-surface);border-bottom:1px solid var(--border-color);flex-shrink:0;margin:0;width:100%;box-sizing:border-box}.tab-btn.active .tab-count{background:var(--accent-primary);color:#fff;font-weight:700}.audit-content{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0}.tab-content{flex:1;display:flex;flex-direction:column;padding:var(--spacing-lg);background:var(--bg-primary);min-height:0;overflow:hidden}.performance-table-container{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;overflow:auto;flex:1;display:flex;flex-direction:column}.performance-table-container .data-table{background:var(--bg-surface)}.performance-table-container .data-table thead,.performance-table-container .data-table th,.performance-table-container .data-table tbody tr:hover td{background:var(--bg-hover)}.empty-state{color:var(--text-tertiary);font-size:var(--font-size-sm);padding:var(--spacing-xl);text-align:center}.processing-state{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-xl);color:var(--text-secondary);font-size:var(--font-size-sm)}.spinner{width:20px;height:20px;border:2px solid var(--border-color);border-top-color:var(--accent-primary);border-radius:50%;animation:spin .8s linear infinite}.col-num{width:50px;color:var(--text-tertiary)}.col-url{min-width:350px;word-break:break-all}.col-url a{color:var(--text-primary);text-decoration:none}.col-url a:hover{color:var(--accent-primary);text-decoration:underline}.col-title{max-width:250px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.col-status{width:60px}.col-class{width:100px}.col-conf{width:60px;text-align:right}.col-type{width:120px;color:var(--text-secondary)}.col-tier{width:80px;text-align:center}.tier-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:var(--font-size-xs);font-weight:500;text-transform:capitalize}.tier-badge.tier-primary{background:var(--bg-success-subtle);color:var(--text-success)}.tier-badge.tier-secondary{background:var(--bg-info-subtle);color:var(--text-info)}.tier-badge.tier-free{background:var(--bg-warning-subtle);color:var(--text-warning)}.offerings-table .offering-row{cursor:pointer;transition:background-color .15s ease}.offerings-table .offering-row:hover{background:var(--bg-hover)}.offerings-table .offering-row.selected{background:var(--accent-primary-subtle, rgba(59, 130, 246, .1));border-left:3px solid var(--accent-primary)}.offerings-table .offering-row.selected td:first-child{padding-left:calc(var(--spacing-sm) - 3px)}.select-offering-prompt{display:flex;align-items:center;justify-content:center;height:200px;color:var(--text-tertiary);font-size:var(--font-size-sm);text-align:center}.select-offering-prompt p{margin:0;padding:var(--spacing-lg);background:var(--bg-secondary);border-radius:var(--radius-md);border:1px dashed var(--border-color)}.selected-offering-name{font-size:var(--font-size-xs);color:var(--text-secondary);background:var(--bg-secondary);padding:2px 8px;border-radius:var(--radius-sm);margin-left:auto}.col-select{width:32px;text-align:center;padding:4px 8px!important}.keyword-checkbox{width:16px;height:16px;cursor:pointer;accent-color:var(--accent-primary)}.keywords-table tr.row-selected,.keywords-table tr.row-selected:hover{background:var(--bg-success-subtle)}.col-entities{max-width:250px}.col-intent{color:var(--text-secondary);max-width:150px}.col-query{color:var(--text-secondary);font-style:italic}.col-indexed{width:45px;text-align:center}.index-icon{font-size:var(--font-size-sm)}.index-icon.yes{color:#10b981}.index-icon.no{color:#ef4444}.col-priority{width:45px;text-align:center}.priority-badge{display:inline-block;min-width:20px;padding:2px 6px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;text-align:center}.priority-badge.priority-high{background:rgba(16,185,129,.2);color:#10b981}.priority-badge.priority-medium{background:rgba(59,130,246,.2);color:#3b82f6}.priority-badge.priority-low{background:rgba(245,158,11,.2);color:#f59e0b}.priority-badge.priority-minimal{background:rgba(239,68,68,.15);color:#ef4444}.priority-badge.priority-none{color:var(--text-tertiary)}.type-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;text-transform:capitalize}.type-badge.type-pending{color:var(--text-tertiary)}.type-badge.type-product{background:rgba(16,185,129,.15);color:#10b981}.type-badge.type-category{background:rgba(139,92,246,.15);color:#8b5cf6}.type-badge.type-service{background:rgba(59,130,246,.15);color:#3b82f6}.type-badge.type-blog{background:rgba(245,158,11,.15);color:#f59e0b}.type-badge.type-landing{background:rgba(236,72,153,.15);color:#ec4899}.type-badge.type-info{background:rgba(107,114,128,.15);color:#6b7280}.type-badge.type-legal,.type-badge.type-login,.type-badge.type-contact,.type-badge.type-utility,.type-badge.type-other{background:rgba(107,114,128,.1);color:#9ca3af}.col-seo-relevant{width:100px;text-align:center}.seo-indicator{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500}.seo-indicator.seo-yes{background:rgba(16,185,129,.15);color:#10b981}.seo-indicator.seo-no{background:rgba(239,68,68,.15);color:#ef4444}.seo-indicator.seo-pending{color:var(--text-tertiary)}.row-not-seo-relevant{opacity:.6}.row-not-seo-relevant:hover{opacity:1}.tree-container{height:100%;display:flex;flex-direction:column}.tree-legend{display:flex;align-items:center;gap:var(--spacing-md);margin-left:auto}.tree-legend .legend-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--text-secondary)}.tree-legend .legend-divider{color:var(--border-color);margin:0 var(--spacing-xs)}.tree-legend .legend-title{font-weight:500;font-size:var(--font-size-xs)}.tree-legend .legend-title.seo-relevant{color:#10b981}.tree-legend .legend-title.seo-not-relevant{color:var(--text-tertiary)}.tree-header-url{width:250px;text-align:right}.tree-header-status{width:45px;text-align:center}.tree-content{flex:1;overflow-y:auto;padding:var(--spacing-md);font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace}.tree-row{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);cursor:pointer;transition:background .15s ease}.tree-row.selected{background:rgba(59,130,246,.15)}.tree-row.selected:hover{background:rgba(59,130,246,.2)}.tree-row.not-relevant{opacity:.5}.tree-row.not-relevant:hover{opacity:.8}.tree-prefix{white-space:pre;color:var(--text-tertiary);font-size:var(--font-size-sm);-webkit-user-select:none;user-select:none;flex-shrink:0}.tree-seo-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.tree-seo-dot.seo-relevant{background:#10b981}.tree-seo-dot.seo-not-relevant{background:#ef4444}.tree-seo-dot.seo-unknown{background:var(--bg-tertiary);border:1px solid var(--border-color)}.tree-title{flex:1;font-size:var(--font-size-sm);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.tree-meta{display:flex;align-items:center;gap:var(--spacing-md);flex-shrink:0;margin-left:var(--spacing-md)}.tree-url{font-size:var(--font-size-xs);color:var(--text-tertiary);width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}.tree-index-icon{width:36px;text-align:center;font-size:var(--font-size-sm)}.tree-index-icon.yes{color:#10b981}.tree-index-icon.no{color:#ef4444}.tree-type{font-size:var(--font-size-xs);color:var(--text-secondary);text-transform:capitalize;width:70px}.tree-priority{width:28px;height:20px;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xs);font-weight:600;border-radius:var(--radius-sm);flex-shrink:0}.tree-priority.priority-minimal{background:rgba(239,68,68,.15);color:#ef4444}.tree-priority.priority-none{color:var(--text-tertiary)}.tree-status{width:45px;font-size:var(--font-size-xs);text-align:center}.tree-status.status-2xx{color:#10b981}.tree-status.status-3xx{color:#3b82f6}.tree-status.status-4xx,.tree-status.status-5xx{color:#ef4444}.status-code{display:inline-block;padding:2px 6px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500}.status-2xx{background:rgba(16,185,129,.15);color:#10b981}.status-3xx{background:rgba(59,130,246,.15);color:#3b82f6}.status-4xx{background:rgba(245,158,11,.15);color:#f59e0b}.status-5xx{background:rgba(239,68,68,.15);color:#ef4444}.class-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500}.class-category{background:rgba(139,92,246,.15);color:#8b5cf6}.class-product{background:rgba(16,185,129,.15);color:#10b981}.class-service{background:rgba(59,130,246,.15);color:#3b82f6}.class-blog{background:rgba(245,158,11,.15);color:#f59e0b}.class-info{background:rgba(107,114,128,.15);color:#6b7280}.class-other{background:rgba(107,114,128,.1);color:#9ca3af}.entity-tag{display:inline-block;padding:1px 6px;margin-right:4px;margin-bottom:2px;background:var(--bg-tertiary);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--text-secondary)}.summary-container{display:flex;flex-direction:column;gap:var(--spacing-lg)}.summary-section{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md)}.section-title{font-size:var(--font-size-md);font-weight:600;color:var(--text-primary);margin:0 0 var(--spacing-md) 0}.stats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--spacing-md)}.stat-card{text-align:center;padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md)}.stat-value{font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary)}.stat-label{font-size:var(--font-size-xs);color:var(--text-secondary);margin-top:var(--spacing-xs)}.summary-table{margin-bottom:var(--spacing-sm)}.summary-table .col-icon{width:40px;text-align:center}.summary-table .col-product{font-weight:500}.product-row.product-top{background:rgba(16,185,129,.05)}.product-row.product-healthy{background:transparent}.product-row.product-needs_work{background:rgba(245,158,11,.05)}.product-row.product-poor{background:rgba(239,68,68,.05)}.legend{display:flex;gap:var(--spacing-lg);margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--border-color)}.legend-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--text-secondary)}.legend-icon{font-size:var(--font-size-sm)}.summary-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.summary-section.half{height:fit-content}.breakdown-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.breakdown-item{display:grid;grid-template-columns:100px 1fr 80px;align-items:center;gap:var(--spacing-sm)}.breakdown-label{font-size:var(--font-size-sm);color:var(--text-secondary)}.breakdown-bar{height:8px;background:var(--bg-tertiary);border-radius:var(--radius-sm);overflow:hidden}.bar-fill{height:100%;background:var(--accent-primary);border-radius:var(--radius-sm);transition:width .3s ease}.bar-fill.product{background:#10b981}.bar-fill.category{background:#8b5cf6}.bar-fill.service{background:#3b82f6}.bar-fill.blog{background:#f59e0b}.bar-fill.info{background:#6b7280}.bar-fill.other{background:#9ca3af}.bar-fill.healthy{background:#10b981}.bar-fill.redirect{background:#3b82f6}.bar-fill.error{background:#ef4444}.breakdown-value{font-size:var(--font-size-sm);color:var(--text-primary);text-align:right}.ranking-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md)}.ranking-card{text-align:center;padding:var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--border-color)}.ranking-card.top3{background:rgba(16,185,129,.1);border-color:#10b9814d}.ranking-card.top10{background:rgba(59,130,246,.1);border-color:#3b82f64d}.ranking-card.top20{background:rgba(245,158,11,.1);border-color:#f59e0b4d}.ranking-card.below20{background:rgba(239,68,68,.1);border-color:#ef44444d}.ranking-value{font-size:var(--font-size-xl);font-weight:700;color:var(--text-primary)}.ranking-label{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);margin-top:var(--spacing-xs)}.ranking-desc{font-size:var(--font-size-xs);color:var(--text-secondary);margin-top:2px}.opportunities-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.opportunity-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);border-left:3px solid var(--border-color)}.opportunity-item.impact-high{border-left-color:#ef4444}.opportunity-item.impact-medium{border-left-color:#f59e0b}.opportunity-item.impact-low{border-left-color:#3b82f6}.opportunity-num{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border-radius:50%;font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);flex-shrink:0}.opportunity-text{flex:1;font-size:var(--font-size-sm);color:var(--text-primary)}.opportunity-impact{font-size:var(--font-size-xs);font-weight:500;padding:2px 8px;border-radius:var(--radius-sm);text-transform:uppercase}.opportunity-impact.high{background:rgba(239,68,68,.15);color:#ef4444}.opportunity-impact.medium{background:rgba(245,158,11,.15);color:#f59e0b}.opportunity-impact.low{background:rgba(59,130,246,.15);color:#3b82f6}.findings-list{margin:0;padding-left:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-sm)}.findings-list li{font-size:var(--font-size-sm);color:var(--text-primary);line-height:1.5}.recommendations-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md)}.recommendation-card{padding:var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--border-color)}.recommendation-card h4{font-size:var(--font-size-sm);font-weight:600;margin:0 0 var(--spacing-sm) 0;padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-color)}.recommendation-card.quick-wins{background:rgba(16,185,129,.05);border-color:#10b98133}.recommendation-card.quick-wins h4{color:#10b981;border-bottom-color:#10b98133}.recommendation-card.content-gaps{background:rgba(59,130,246,.05);border-color:#3b82f633}.recommendation-card.content-gaps h4{color:#3b82f6;border-bottom-color:#3b82f633}.recommendation-card.strategic{background:rgba(139,92,246,.05);border-color:#8b5cf633}.recommendation-card.strategic h4{color:#8b5cf6;border-bottom-color:#8b5cf633}.recommendation-card ul{margin:0;padding-left:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-xs)}.recommendation-card li{font-size:var(--font-size-sm);color:var(--text-primary);line-height:1.4}.competitors-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.competitor-item{display:grid;grid-template-columns:180px 1fr 2fr;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-color)}.competitor-name{font-weight:600;color:var(--text-primary)}.competitor-website{font-size:var(--font-size-sm)}.competitor-website a{color:var(--accent-primary);text-decoration:none}.competitor-website a:hover{text-decoration:underline}.competitor-reason{font-size:var(--font-size-sm);color:var(--text-secondary)}@media (max-width: 1200px){.stats-grid{grid-template-columns:repeat(3,1fr)}.ranking-grid{grid-template-columns:repeat(2,1fr)}.recommendations-grid{grid-template-columns:1fr}}@media (max-width: 800px){.summary-row{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}}.keywords-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.keywords-header-left{flex:1}.keywords-header-actions{display:flex;gap:var(--spacing-sm)}.keywords-desc{margin:0;color:var(--text-secondary);font-size:var(--font-size-sm)}.keywords-add-form{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.keyword-input{flex:1;max-width:400px;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);font-size:var(--font-size-sm)}.keyword-input:focus{outline:none;border-color:var(--accent-primary)}.keyword-input:disabled{opacity:.6;cursor:not-allowed}.keywords-summary{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.keywords-total{font-size:var(--font-size-md);font-weight:600;color:var(--text-primary)}.keywords-relevant{font-size:var(--font-size-sm);color:var(--accent-primary);padding:var(--spacing-xs) var(--spacing-sm);background:rgba(59,130,246,.1);border-radius:var(--radius-sm)}.col-keyword{max-width:400px;word-break:break-word}.col-relevant{width:70px;text-align:center}.relevance-toggle{position:relative;display:inline-block;width:36px;height:20px;cursor:pointer}.relevance-toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;top:0;left:0;right:0;bottom:0;background-color:var(--bg-tertiary);border-radius:20px;transition:.2s}.toggle-slider:before{position:absolute;content:"";height:14px;width:14px;left:3px;bottom:3px;background-color:var(--text-tertiary);border-radius:50%;transition:.2s}.relevance-toggle input:checked+.toggle-slider{background-color:var(--accent-primary)}.relevance-toggle input:checked+.toggle-slider:before{transform:translate(16px);background-color:#fff}.relevant-badge{display:inline-block;margin-left:var(--spacing-sm);padding:2px 6px;font-size:var(--font-size-xs);font-weight:500;color:var(--accent-primary);background:rgba(59,130,246,.1);border-radius:var(--radius-sm)}.keyword-row-relevant{background:rgba(59,130,246,.05)}.keywords-table tbody tr:hover{background:var(--bg-secondary)}.keyword-row-relevant:hover{background:rgba(59,130,246,.1)}.col-actions{width:40px;text-align:center}.delete-btn{width:24px;height:24px;border:none;background:transparent;color:var(--text-tertiary);font-size:16px;cursor:pointer;border-radius:var(--radius-sm);opacity:0;transition:all .15s ease}.data-table tbody tr:hover .delete-btn{opacity:1}.delete-btn:hover{background:rgba(239,68,68,.1);color:#ef4444}.crawler-tab{display:flex;flex-direction:column;height:100%;gap:var(--spacing-md)}.crawler-header{display:flex;align-items:center;justify-content:space-between}.crawler-table-container{flex:1;display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.crawler-table-scroll{flex:1;overflow-y:auto}.crawler-tab .data-table{width:100%;background:var(--bg-surface)}.crawler-tab .data-table thead{background:var(--bg-hover);position:sticky;top:0;z-index:1}.crawler-tab .data-table th{background:var(--bg-hover);padding:14px 16px;font-weight:600;text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:.05em;color:var(--text-secondary)}.crawler-tab .data-table td{padding:14px 16px;background:var(--bg-surface)}.crawler-tab .data-table tbody tr:hover td{background:var(--bg-hover)}.crawler-tab .tree-container{flex:1;display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.tree-switch{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer}.tree-switch input{display:none}.switch-slider{position:relative;width:36px;height:20px;background:var(--border-color);border-radius:10px}.switch-slider:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:white;border-radius:50%;transition:transform .2s,background .2s}.tree-switch input:checked+.switch-slider:after{transform:translate(16px);background:#10b981}.switch-label{font-size:var(--font-size-sm);color:var(--text-secondary)}.tree-switch input:checked~.switch-label{color:var(--text-primary)}.audit-tab-content{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:0!important}.audit-two-panel{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);min-height:0;height:100%;overflow:hidden;padding:var(--spacing-md);box-sizing:border-box}.audit-left-panel{display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;min-height:0;height:100%}.audit-left-panel .panel-header{display:flex;align-items:center;justify-content:space-between;padding:0 var(--spacing-md);background:var(--bg-elevated);border-bottom:1px solid var(--border-color);height:48px;flex-shrink:0}.audit-left-panel .panel-header h3{margin:0;font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary)}.audit-left-panel .panel-count{font-size:var(--font-size-xs);font-weight:600;background:var(--bg-secondary);color:var(--text-secondary);padding:2px 8px;border-radius:10px}.audit-left-panel .panel-content{flex:1;overflow-y:auto;min-height:0}.audit-left-panel .panel-content .data-table{width:100%}.audit-left-panel .panel-content .data-table thead{position:sticky;top:0;z-index:1;background:var(--bg-secondary)}.audit-right-panel{display:flex;flex-direction:column;gap:var(--spacing-sm);min-height:0;height:100%;overflow:hidden}.ducking-section{display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;transition:flex .2s ease}.ducking-section.expanded{flex:1;min-height:0}.ducking-section.collapsed{flex:0 0 auto}.ducking-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:0 var(--spacing-md);background:var(--bg-elevated);border-bottom:1px solid var(--border-color);height:44px;flex-shrink:0;cursor:pointer;transition:background .15s ease}.ducking-header:hover{background:var(--bg-hover)}.ducking-section.collapsed .ducking-header{border-bottom:none}.ducking-icon{font-size:10px;color:var(--text-tertiary);width:12px;text-align:center}.ducking-header h3{margin:0;font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);flex:1}.ducking-header h3 .header-count{font-weight:400;color:var(--text-secondary)}.ducking-header h3 .selected-count{margin-left:var(--spacing-sm);font-size:var(--font-size-xs);font-weight:500;color:var(--accent-primary);background:rgba(59,130,246,.1);padding:2px 8px;border-radius:var(--radius-sm)}.ducking-content{flex:1;overflow-y:auto;min-height:0;display:flex;flex-direction:column}.ducking-content .table-wrapper{flex:1;overflow-y:auto;min-height:0}.ducking-content .data-table{width:100%}.ducking-content .data-table thead{position:sticky;top:0;z-index:1;background:var(--bg-secondary)}.ducking-content .no-data{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg)}.ducking-content .select-offering-prompt{flex:1;display:flex;align-items:center;justify-content:center}.audit-split-view{flex:1;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr;gap:var(--spacing-md);min-height:0;height:100%;overflow:hidden;padding:var(--spacing-md);box-sizing:border-box}.audit-column{display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;min-height:0;height:100%}.audit-column .column-header{display:flex;align-items:center;justify-content:space-between;padding:0 var(--spacing-md);background:var(--bg-elevated);border-bottom:1px solid var(--border-color);height:48px;flex-shrink:0;box-sizing:border-box}.audit-column .column-header h3{margin:0;font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary)}.audit-column .column-header h3 .header-count{font-weight:400;color:var(--text-secondary)}.keywords-add-form.header-form{display:flex;gap:var(--spacing-xs);margin:0;padding:0;background:none}.keywords-add-form.header-form .keyword-input{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs);min-width:120px}.audit-column .column-actions{display:flex;gap:var(--spacing-xs)}.audit-column .column-content{flex:1;overflow:hidden;padding:0;min-height:0;max-height:none;display:flex;flex-direction:column}.audit-column .column-content .table-wrapper{flex:1;overflow-y:auto;min-height:0}.audit-column .column-content .table-wrapper .data-table{width:100%}.audit-column .column-content .table-wrapper .data-table thead{position:sticky;top:0;z-index:1;background:var(--bg-secondary)}.audit-column .column-content .no-data{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-secondary);font-size:var(--font-size-sm);margin:0;height:100%;text-align:center;padding:var(--spacing-md)}.audit-column .column-content .no-data .hint{font-size:var(--font-size-xs);color:var(--text-tertiary);margin-top:var(--spacing-xs)}.column-header-actions{display:flex;gap:var(--spacing-sm)}.btn-find-competitors{padding:6px 12px;background:var(--accent-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:600;cursor:pointer;transition:all .15s ease;box-shadow:0 1px 2px #0000001a}.btn-find-competitors:hover:not(:disabled){background:var(--accent-primary-hover);box-shadow:0 2px 4px #00000026;transform:translateY(-1px)}.btn-find-competitors:active:not(:disabled){transform:translateY(0);box-shadow:0 1px 2px #0000001a}.btn-find-competitors:disabled{opacity:.6;cursor:not-allowed}.column-hint{margin:0;padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-info-subtle);color:var(--text-secondary);font-size:var(--font-size-xs);border-bottom:1px solid var(--border-color)}.row-selected-competitor{background:var(--bg-info-subtle)!important}.row-selected-competitor td{color:var(--text-primary)}.competitors-table .col-domain{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.competitors-table .col-domain a{color:var(--accent-primary);text-decoration:none}.competitors-table .col-domain a:hover{text-decoration:underline}.keywords-add-form.compact{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-sm);padding:var(--spacing-xs);background:var(--bg-elevated);border-radius:var(--radius-sm)}.keywords-add-form.compact .keyword-input{flex:1;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-xs)}.keywords-summary.compact{display:flex;gap:var(--spacing-md);padding:var(--spacing-xs) 0;font-size:var(--font-size-xs);color:var(--text-secondary)}.keywords-summary.compact .relevant-count{color:var(--color-success)}.processing-state.small{padding:var(--spacing-sm);font-size:var(--font-size-xs)}.processing-state.small .spinner{width:14px;height:14px}.col-toggle{width:40px;text-align:center}.relevance-toggle.small{transform:scale(.8)}.no-data{padding:var(--spacing-md);text-align:center;color:var(--text-secondary);font-size:var(--font-size-sm)}.col-action{width:40px;text-align:center}.detail-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-sm);transition:all .15s ease}.detail-btn:hover{background:var(--bg-hover);color:var(--accent-primary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg)}.url-detail-modal{background:var(--bg-surface);border-radius:var(--radius-lg);width:100%;max-width:800px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 50px #0000004d}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--border-color);background:var(--bg-hover)}.modal-header h3{margin:0;font-size:var(--font-size-md);font-weight:600;color:var(--text-primary)}.modal-close{width:32px;height:32px;border:none;background:transparent;color:var(--text-secondary);font-size:24px;cursor:pointer;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:all .15s ease}.modal-close:hover{background:var(--bg-secondary);color:var(--text-primary)}.modal-content{padding:var(--spacing-lg);overflow-y:auto}.detail-line{display:flex;align-items:baseline;gap:var(--spacing-sm);padding:var(--spacing-sm) 0;border-bottom:1px solid var(--border-color)}.detail-line:last-of-type{border-bottom:none;margin-bottom:var(--spacing-md)}.detail-label{font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);flex-shrink:0;min-width:100px}.detail-text{font-size:var(--font-size-sm);color:var(--text-primary);word-break:break-word}.detail-text.detail-small{font-size:var(--font-size-xs);color:var(--text-secondary)}.detail-link{font-size:var(--font-size-sm);color:var(--accent-primary);text-decoration:none;word-break:break-all}.detail-chars{font-size:var(--font-size-xs);color:var(--text-tertiary);flex-shrink:0}.detail-card{margin-top:var(--spacing-md);background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.detail-card-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-hover);border-bottom:1px solid var(--border-color)}.detail-card-title{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary)}.detail-card-hint{font-size:var(--font-size-xs);color:var(--text-tertiary)}.detail-card-content{margin:0;padding:var(--spacing-md);font-size:var(--font-size-sm);color:var(--text-primary);line-height:1.6;white-space:pre-wrap;word-break:break-word}.detail-content-preview{max-height:200px;overflow-y:auto}.detail-missing{color:var(--text-tertiary);font-style:italic}.performance-notice{max-width:500px;margin:0 auto;text-align:center;padding:var(--spacing-xl)!important}.performance-notice .notice-icon{font-size:48px;margin-bottom:var(--spacing-md)}.performance-notice h3{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary)}.performance-notice p{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.6}.performance-notice .notice-suggestion{background:var(--bg-hover);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);font-size:var(--font-size-sm);color:var(--text-secondary);text-align:left}.performance-notice .notice-suggestion strong{color:var(--text-primary)}.performance-notice .notice-suggestion code{display:inline-block;margin-top:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-family:monospace;font-size:var(--font-size-xs);color:var(--text-primary);word-break:break-all}.performance-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-hover);border-bottom:1px solid var(--border-color)}.performance-count{font-size:var(--font-size-sm);color:var(--text-secondary)}.performance-actions{display:flex;gap:var(--spacing-sm)}.col-status{width:80px;text-align:center!important}.offerings-table th.col-status,.offerings-table td.col-status{text-align:center!important}.status-dot{display:inline-block;width:10px;height:10px;border-radius:50%;cursor:help}.status-dot.status-gray{background-color:var(--text-muted, #999)}.status-dot.status-amber{background-color:var(--warning-color, #f59e0b)}.status-dot.status-green{background-color:var(--success-color, #22c55e)}.client-audit-tab,.competitor-analysis-tab{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.loading-state{padding:var(--spacing-lg);color:var(--text-secondary)}.empty-state{padding:var(--spacing-xl);text-align:center;color:var(--text-secondary)}.ca-toolbar{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--border-color);background:var(--bg-surface);flex-shrink:0}.project-select{min-width:200px;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);font-size:var(--font-size-sm);cursor:pointer}.project-select:focus{outline:none;border-color:var(--accent-primary)}.toolbar-separator{width:1px;height:24px;background:var(--border-color)}.project-website{color:var(--text-secondary);text-decoration:none;font-size:var(--font-size-sm)}.project-website:hover{color:var(--accent-primary);text-decoration:underline}.ca-tabs{display:flex;align-items:center;gap:.5rem;height:48px;padding:0 var(--spacing-lg);background:var(--bg-surface);border-bottom:1px solid var(--border-color);flex-shrink:0}.tab-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;height:100%;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--text-secondary);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.tab-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.tab-btn.active{color:var(--accent-primary);border-bottom-color:var(--accent-primary);background:var(--bg-active)}.tab-count{background:var(--bg-secondary);color:var(--text-secondary);padding:.125rem .5rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:600;min-width:1.25rem;text-align:center}.tab-btn.active .tab-count{background:var(--accent-primary);color:#fff}.ca-content{flex:1;overflow:auto;padding:var(--spacing-lg);background:var(--bg-primary)}.table-container{flex:1;display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.table-scroll{flex:1;overflow-y:auto}.competitors-tab .data-table{width:100%;background:var(--bg-surface)}.competitors-tab .data-table thead{background:var(--bg-hover);position:sticky;top:0;z-index:1}.competitors-tab .data-table th{background:var(--bg-hover);padding:14px 16px;font-weight:600;text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:.05em;color:var(--text-secondary)}.competitors-tab .data-table td{padding:14px 16px;background:var(--bg-surface)}.competitors-tab .data-table tbody tr:hover td{background:var(--bg-hover)}.universe-tab .data-table{width:100%;background:var(--bg-surface)}.universe-tab .data-table thead{background:var(--bg-hover);position:sticky;top:0;z-index:1}.universe-tab .data-table th{background:var(--bg-hover);padding:14px 16px;font-weight:600;text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:.05em;color:var(--text-secondary)}.universe-tab .data-table td{padding:14px 16px;background:var(--bg-surface)}.universe-tab .data-table tbody tr:hover td{background:var(--bg-hover)}.url-structure-tab{padding:0!important;display:flex;flex-direction:column}.url-structure-layout{flex:1;display:flex;min-height:0;overflow:hidden}.competitor-list-panel{width:220px;flex-shrink:0;display:flex;flex-direction:column;background:var(--bg-surface);border-right:1px solid var(--border-color)}.competitor-list-panel .panel-header{padding:14px 16px;font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);background:var(--bg-hover);border-bottom:1px solid var(--border-color)}.competitor-list-panel .panel-content{flex:1;overflow-y:auto}.competitor-item{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;cursor:pointer;border-bottom:1px solid var(--border-color);transition:background .15s ease}.competitor-item:hover{background:var(--bg-secondary)}.competitor-item.selected{background:rgba(59,130,246,.15);border-left:3px solid var(--accent-primary);padding-left:13px}.competitor-domain{font-size:var(--font-size-sm);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.competitor-count{font-size:var(--font-size-xs);color:var(--text-secondary);background:var(--bg-secondary);padding:2px 8px;border-radius:var(--radius-full)}.tree-panel{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--bg-surface)}.tree-placeholder{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.tree-container{flex:1;display:flex;flex-direction:column;min-height:0}.tree-header{display:flex;align-items:center;padding:14px 16px;background:var(--bg-hover);border-bottom:1px solid var(--border-color);font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.tree-header-url{flex:1;text-align:left}.tree-header-type{width:80px;text-align:center}.tree-content{flex:1;overflow-y:auto;padding:var(--spacing-md);font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:var(--font-size-sm)}.tree-empty{padding:var(--spacing-lg);text-align:center;color:var(--text-secondary)}.tree-row{display:flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);transition:background .15s ease}.tree-row:hover{background:var(--bg-secondary)}.tree-prefix{white-space:pre;color:var(--text-tertiary);-webkit-user-select:none;user-select:none;flex-shrink:0}.tree-url{font-size:var(--font-size-sm);color:var(--text-primary)}.tree-type{width:80px;margin-left:auto;flex-shrink:0;text-align:center;font-size:var(--font-size-xs);color:var(--text-secondary);text-transform:capitalize}.section-header{margin-bottom:var(--spacing-md)}.section-header h3{margin:0;font-size:var(--font-size-lg);font-weight:600}.section-desc{margin:var(--spacing-xs) 0 0 0;font-size:var(--font-size-sm);color:var(--text-secondary)}.empty-hint{margin-top:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-tertiary)}.data-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.data-table th,.data-table td{text-align:left;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-color)}.data-table th{font-weight:600;color:var(--text-secondary);background:var(--bg-secondary);position:sticky;top:0;z-index:1}.data-table tbody tr:hover{background:var(--bg-secondary)}.data-table.compact{font-size:var(--font-size-xs)}.data-table.compact th,.data-table.compact td{padding:var(--spacing-xs) var(--spacing-sm)}.col-metric{width:100px;text-align:right}.col-domain{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-domain a{color:var(--accent-primary);text-decoration:none}.col-domain a:hover{text-decoration:underline}.col-offerings{font-size:var(--font-size-xs);color:var(--text-secondary)}.col-num{width:80px;text-align:right}.pagination{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding:var(--spacing-sm) 0}.pagination-btn{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;transition:all .15s ease}.pagination-btn:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--accent-primary)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-info{font-size:var(--font-size-sm);color:var(--text-secondary)}.opportunities-tab{display:flex;flex-direction:column;gap:var(--spacing-md)}.opportunities-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md)}.header-info{display:flex;flex-direction:column;gap:var(--spacing-xs)}.header-title{font-size:var(--font-size-md);font-weight:600;color:var(--text-primary)}.header-desc{font-size:var(--font-size-sm);color:var(--text-secondary)}.filter-progress{padding:var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md)}.progress-info{display:flex;justify-content:space-between;margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-secondary)}.progress-stats{color:var(--accent-primary)}.progress-bar{height:8px;background:var(--bg-secondary);border-radius:var(--radius-full);overflow:hidden}.opportunities-summary{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;align-items:stretch}.summary-stat{flex:1;min-width:80px;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center}.summary-stat.highlight{background:var(--accent-primary);border-color:var(--accent-primary)}.summary-stat.highlight .stat-value,.summary-stat.highlight .stat-label{color:#fff}.summary-divider{width:1px;background:var(--border-color);margin:0 var(--spacing-xs)}.summary-stat.clickable{cursor:pointer;transition:all .2s ease}.summary-stat.clickable:hover{border-color:var(--accent-primary);background:var(--bg-hover)}.summary-stat.active{border-color:var(--accent-primary);box-shadow:0 0 0 2px #3b82f633}.summary-stat.highlight.clickable:not(.active){opacity:.7}.summary-stat.highlight.clickable:not(.active):hover{opacity:1}.stat-label{display:block;font-size:var(--font-size-xs);color:var(--text-secondary);margin-top:var(--spacing-xs)}.opportunities-tab .data-table{width:100%;background:var(--bg-surface)}.opportunities-tab .data-table thead{background:var(--bg-hover);position:sticky;top:0;z-index:1}.opportunities-tab .data-table th{background:var(--bg-hover);padding:14px 16px;font-weight:600;text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:.05em;color:var(--text-secondary)}.opportunities-tab .data-table td{padding:14px 16px;background:var(--bg-surface)}.opportunities-tab .data-table tbody tr:hover td{background:var(--bg-hover)}.col-keyword{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.col-offering{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-xs);color:var(--text-secondary)}.col-match{font-size:var(--font-size-xs);text-transform:capitalize}.col-match span{padding:2px 8px;border-radius:var(--radius-full);display:inline-block}.col-match .match-exact{background:rgba(34,197,94,.15);color:#22c55e}.col-match .match-synonym{background:rgba(59,130,246,.15);color:#3b82f6}.col-match .match-related{background:rgba(168,85,247,.15);color:#a855f7}.col-match .match-partial{background:rgba(251,191,36,.15);color:#fbbf24}.col-match .match-no_match{background:rgba(239,68,68,.15);color:#ef4444}.col-intent{font-size:var(--font-size-xs);text-transform:capitalize}.intent-transactional{color:#22c55e}.intent-commercial{color:#3b82f6}.intent-informational{color:#a855f7}.intent-navigational{color:#fbbf24}.intent-mixed{color:var(--text-secondary)}.header-actions{display:flex;gap:var(--spacing-sm);align-items:center}.serp-progress .progress-fill.serp{background:#a855f7}.page-type-summary{padding:var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md)}.summary-section-header{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.page-type-summary .section-title{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary)}.page-type-summary .section-desc{font-size:var(--font-size-xs);color:var(--text-secondary);margin:0}.page-type-stats{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.page-type-stat{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);min-width:80px}.page-type-stat.clickable{cursor:pointer;transition:all .2s ease}.page-type-stat.clickable:hover{border-color:var(--accent-primary);background:var(--bg-hover)}.page-type-stat.active{border-color:var(--accent-primary);box-shadow:0 0 0 2px #3b82f633}.page-type-icon{font-size:var(--font-size-xs);font-weight:600;padding:2px 8px;border-radius:var(--radius-sm);text-transform:capitalize}.page-type-count{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary)}.page-type-volume{font-size:var(--font-size-xs);color:var(--text-secondary)}.page-type-icon.page-type-service,.col-page-type.page-type-service{background:rgba(34,197,94,.15);color:#22c55e}.page-type-icon.page-type-blog,.col-page-type.page-type-blog{background:rgba(251,191,36,.15);color:#fbbf24}.page-type-icon.page-type-category,.col-page-type.page-type-category{background:rgba(59,130,246,.15);color:#3b82f6}.page-type-icon.page-type-product,.col-page-type.page-type-product{background:rgba(168,85,247,.15);color:#a855f7}.page-type-icon.page-type-landing,.col-page-type.page-type-landing{background:rgba(236,72,153,.15);color:#ec4899}.page-type-icon.page-type-local,.col-page-type.page-type-local{background:rgba(20,184,166,.15);color:#14b8a6}.page-type-icon.page-type-directory,.col-page-type.page-type-directory{background:rgba(249,115,22,.15);color:#f97316}.page-type-icon.page-type-comparison,.col-page-type.page-type-comparison{background:rgba(239,68,68,.15);color:#ef4444}.col-page-type{font-size:var(--font-size-xs);text-transform:capitalize;padding:2px 8px;border-radius:var(--radius-sm);display:inline-block}.site-planning-tab{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.sp-toolbar{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--border-color);background:var(--bg-surface);flex-shrink:0}.sp-toolbar .project-select{min-width:200px;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);font-size:var(--font-size-sm);cursor:pointer}.sp-toolbar .toolbar-separator{width:1px;height:24px;background:var(--border-color)}.site-planning-tab .empty-state{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);padding:var(--spacing-xl)}.sp-content{flex:1;display:flex;flex-direction:column;padding:var(--spacing-lg);gap:var(--spacing-md);overflow:hidden}.cluster-progress{padding:var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md)}.cluster-progress .progress-info{margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-secondary)}.cluster-progress .progress-bar{height:8px;background:var(--bg-secondary);border-radius:var(--radius-full);overflow:hidden}.cluster-progress .progress-fill{height:100%;background:var(--accent-primary);transition:width .3s ease}.cluster-stats{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.cluster-stats .stat-item{flex:1;min-width:100px;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center}.cluster-stats .stat-value{display:block;font-size:var(--font-size-xl);font-weight:600;color:var(--text-primary)}.cluster-stats .stat-label{display:block;font-size:var(--font-size-xs);color:var(--text-secondary);margin-top:var(--spacing-xs)}.sp-panels{flex:1;display:flex;gap:var(--spacing-md);min-height:0;overflow:hidden}.cluster-list-panel{width:350px;flex-shrink:0;display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.cluster-list-panel .panel-header{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);background:var(--bg-hover);border-bottom:1px solid var(--border-color)}.cluster-list-panel .panel-content{flex:1;overflow-y:auto}.cluster-list-panel .empty-hint{padding:var(--spacing-lg);text-align:center;color:var(--text-tertiary);font-size:var(--font-size-sm)}.cluster-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-color);cursor:pointer;transition:background .15s ease}.cluster-item:hover{background:var(--bg-secondary)}.cluster-item.selected{background:rgba(59,130,246,.1);border-left:3px solid var(--accent-primary);padding-left:calc(var(--spacing-md) - 3px)}.cluster-info{display:flex;flex-direction:column;gap:2px;min-width:0}.cluster-name{font-size:var(--font-size-sm);font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cluster-meta{font-size:var(--font-size-xs);color:var(--text-secondary)}.cluster-type{font-size:var(--font-size-xs);padding:2px 8px;border-radius:var(--radius-sm);text-transform:capitalize;flex-shrink:0}.type-service{background:rgba(34,197,94,.15);color:#22c55e}.type-blog{background:rgba(251,191,36,.15);color:#fbbf24}.type-category{background:rgba(59,130,246,.15);color:#3b82f6}.type-product{background:rgba(168,85,247,.15);color:#a855f7}.type-landing{background:rgba(236,72,153,.15);color:#ec4899}.type-local{background:rgba(20,184,166,.15);color:#14b8a6}.cluster-detail-panel{flex:1;display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;min-width:0}.cluster-detail-panel .panel-header{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary);background:var(--bg-hover);border-bottom:1px solid var(--border-color)}.cluster-detail-panel .panel-placeholder{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary)}.cluster-detail-content{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding:var(--spacing-md)}.detail-section{margin-bottom:var(--spacing-md)}.detail-row-3col{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.detail-row-3col .detail-section{margin-bottom:0}.detail-section label{display:block;font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);margin-bottom:var(--spacing-xs);text-transform:uppercase;letter-spacing:.05em}.detail-section p{margin:0;font-size:var(--font-size-sm);color:var(--text-primary)}.primary-keyword{font-weight:600;color:var(--accent-primary)}.page-type-badge,.intent-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);text-transform:capitalize}.intent-transactional{background:rgba(34,197,94,.15);color:#22c55e}.intent-commercial{background:rgba(59,130,246,.15);color:#3b82f6}.intent-informational{background:rgba(168,85,247,.15);color:#a855f7}.mapped-offering-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);background:rgba(249,115,22,.15);color:#f97316}.keywords-section{flex:1;display:flex;flex-direction:column;min-height:200px}.keywords-table{flex:1;display:flex;flex-direction:column;gap:0;border:1px solid var(--border-color);border-radius:var(--radius-sm);overflow:hidden}.keywords-header{display:flex;padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-elevated);border-bottom:1px solid var(--border-color);font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase}.keywords-list{flex:1;overflow-y:auto;margin:0;padding:0}.keyword-item{display:flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);border-bottom:1px solid var(--border-color);font-size:var(--font-size-sm)}.keyword-item:last-child{border-bottom:none}.keyword-item.primary{background:rgba(59,130,246,.1);font-weight:500}.kw-col-keyword{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.kw-col-volume,.kw-col-kd,.kw-col-cpc,.kw-col-match{width:70px;text-align:right;flex-shrink:0;color:var(--text-secondary);font-size:var(--font-size-xs)}.kw-col-match{width:80px;text-transform:capitalize}.site-structure-tab{padding:var(--spacing-md);height:100%;display:flex;flex-direction:column;gap:var(--spacing-md)}.structure-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.header-left{display:flex;align-items:center;gap:var(--spacing-sm)}.project-selector{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-surface);color:var(--text-primary);font-size:var(--font-size-sm);min-width:200px}.btn-generate{padding:var(--spacing-xs) var(--spacing-md);background:var(--accent-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer;transition:background .2s}.btn-generate:hover:not(:disabled){background:var(--accent-primary-hover)}.btn-generate:disabled{opacity:.5;cursor:not-allowed}.btn-export{padding:var(--spacing-xs) var(--spacing-md);background:var(--bg-elevated);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-sm);cursor:pointer}.btn-export:hover{background:var(--bg-surface-hover)}.header-right{display:flex;gap:var(--spacing-sm);align-items:center}.btn-chat-toggle{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md);background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:all .2s}.btn-chat-toggle:hover{filter:brightness(1.1)}.btn-chat-toggle .chat-icon{display:flex;align-items:center;justify-content:center;width:18px;height:18px;background:rgba(255,255,255,.2);border-radius:var(--radius-sm);font-size:9px;font-weight:700}.progress-container{display:flex;align-items:center;gap:var(--spacing-sm)}.progress-bar{flex:1;height:8px;background:var(--bg-elevated);border-radius:var(--radius-sm);overflow:hidden}.progress-fill{height:100%;background:var(--accent-primary);transition:width .3s ease}.progress-text{font-size:var(--font-size-xs);color:var(--text-secondary);min-width:120px}.stats-row{display:flex;gap:var(--spacing-sm)}.stat-card{flex:1;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);text-align:center;cursor:pointer;transition:all .2s}.stat-card:hover{border-color:var(--text-secondary)}.stat-card.active{border-color:var(--accent-primary);background:rgba(59,130,246,.1)}.stat-value{display:block;font-size:var(--font-size-xl);font-weight:600;color:var(--text-primary)}.stat-label{font-size:var(--font-size-xs);color:var(--text-secondary);text-transform:uppercase}.stat-retain .stat-value{color:#22c55e}.stat-protect .stat-value{color:#f59e0b}.stat-migrate .stat-value{color:#3b82f6}.stat-create .stat-value{color:#a855f7}.structure-table-container{flex:1;overflow:auto;border:1px solid var(--border-color);border-radius:var(--radius-sm)}.structure-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm);table-layout:fixed}.structure-table th{position:sticky;top:0;background:var(--bg-elevated);padding:var(--spacing-xs) var(--spacing-sm);text-align:left;font-weight:600;font-size:var(--font-size-xs);text-transform:uppercase;color:var(--text-secondary);border-bottom:1px solid var(--border-color);white-space:nowrap}.structure-table th:nth-child(1){width:18%}.structure-table th:nth-child(2){width:16%}.structure-table th:nth-child(3){width:16%}.structure-table th:nth-child(4){width:12%}.structure-table th:nth-child(5){width:8%}.structure-table th:nth-child(6){width:30%}.structure-table td{padding:var(--spacing-xs) var(--spacing-sm);border-bottom:1px solid var(--border-color);vertical-align:middle;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:16px}.structure-table tbody tr{height:32px}.structure-table tbody tr:hover{background:var(--bg-surface-hover)}.structure-table-compact td{font-size:var(--font-size-xs)}.row-create{background:rgba(168,85,247,.05)}.row-migrate{background:rgba(59,130,246,.05)}.structure-table td span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:16px;max-height:16px}.cluster-name{font-weight:500;color:var(--text-primary)}.current-url,.new-url{font-family:monospace;font-size:var(--font-size-xs);color:var(--text-primary)}.no-url{color:var(--text-tertiary)}.new-url{color:var(--accent-primary);font-weight:500}.col-performance{white-space:nowrap}.performance-inline{color:var(--text-secondary)}.no-data{color:var(--text-tertiary)}.col-action{white-space:nowrap}.action-badge{display:inline-block!important;padding:2px 6px;border-radius:var(--radius-sm);font-size:10px;font-weight:600;text-transform:uppercase;overflow:visible!important;line-height:12px;max-height:none!important}.action-reason{color:var(--text-secondary)}.badge-retain{background:rgba(34,197,94,.15);color:#22c55e}.badge-protect{background:rgba(245,158,11,.15);color:#f59e0b}.badge-migrate{background:rgba(59,130,246,.15);color:#3b82f6}.badge-create{background:rgba(168,85,247,.15);color:#a855f7}.empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text-secondary);text-align:center;gap:var(--spacing-xs)}.empty-state p{margin:0}.strategy-chat-panel{position:fixed;bottom:20px;right:20px;width:520px;max-height:650px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:0 8px 32px #0003;display:flex;flex-direction:column;z-index:1000;overflow:hidden}.strategy-chat-panel.minimized{max-height:auto}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-elevated);border-bottom:1px solid var(--border-color)}.chat-title{display:flex;align-items:center;gap:var(--spacing-sm);font-weight:600;color:var(--text-primary)}.chat-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff;border-radius:var(--radius-sm);font-size:10px;font-weight:700}.chat-actions{display:flex;gap:var(--spacing-xs)}.chat-action-btn{padding:4px 8px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.chat-action-btn:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.chat-action-btn.close:hover{background:rgba(239,68,68,.1);color:#ef4444}.chat-messages{flex:1;overflow-y:auto;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm);min-height:300px;max-height:450px}.chat-welcome{color:var(--text-secondary);font-size:var(--font-size-sm)}.chat-welcome p{margin:0 0 var(--spacing-sm)}.chat-welcome ul{margin:0;padding-left:var(--spacing-md)}.chat-welcome li{margin-bottom:var(--spacing-xs);font-family:monospace;font-size:var(--font-size-xs);color:var(--text-tertiary)}.chat-message{max-width:90%;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-sm);line-height:1.4}.chat-message.user{align-self:flex-end;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}@media (prefers-color-scheme: light){.chat-message.user{background:#e0e7ff;color:#1e1b4b}}.chat-message.assistant{align-self:flex-start;background:var(--bg-elevated);border:1px solid var(--border-color);color:var(--text-primary)}.chat-message.system{align-self:center;background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.3);color:#22c55e;font-size:var(--font-size-xs);text-align:center}.chat-message.error{background:rgba(239,68,68,.1);border-color:#ef44444d;color:#ef4444}.message-content{word-break:break-word}.chat-message.assistant .message-content p{margin:0 0 var(--spacing-sm)}.chat-message.assistant .message-content p:last-child{margin-bottom:0}.chat-message.assistant .message-content ul,.chat-message.assistant .message-content ol{margin:var(--spacing-xs) 0;padding-left:var(--spacing-md)}.chat-message.assistant .message-content li{margin-bottom:4px}.chat-message.assistant .message-content strong{font-weight:600;color:var(--text-primary)}.chat-message.assistant .message-content code{background:var(--bg-surface);padding:2px 6px;border-radius:var(--radius-sm);font-family:monospace;font-size:.9em}.chat-message.assistant .message-content pre{background:var(--bg-surface);padding:var(--spacing-sm);border-radius:var(--radius-sm);overflow-x:auto;margin:var(--spacing-sm) 0}.chat-message.assistant .message-content pre code{background:none;padding:0}.chat-message.user .message-content{white-space:pre-wrap}.message-preview{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--border-color);font-size:var(--font-size-xs)}.message-preview strong{display:block;margin-bottom:var(--spacing-xs);color:var(--text-secondary)}.preview-list{display:flex;flex-direction:column;gap:2px}.preview-item{padding:2px 6px;background:var(--bg-surface);border-radius:var(--radius-sm);font-family:monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-more{color:var(--text-tertiary);font-style:italic}.chat-message.loading{background:transparent;border:none;padding:var(--spacing-xs)}.typing-indicator{display:flex;gap:4px}.typing-indicator span{width:8px;height:8px;background:var(--text-tertiary);border-radius:50%;animation:typing 1.4s infinite ease-in-out}.typing-indicator span:nth-child(1){animation-delay:0s}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}.chat-confirm-bar{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:rgba(59,130,246,.1);border-top:1px solid rgba(59,130,246,.3);font-size:var(--font-size-sm);color:var(--text-primary)}.confirm-actions{display:flex;gap:var(--spacing-sm)}.btn-cancel,.btn-apply{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;cursor:pointer;transition:all .15s}.btn-cancel:hover:not(:disabled){background:var(--bg-surface-hover);color:var(--text-primary)}.btn-apply{background:var(--accent-primary);border:none;color:#fff}.btn-apply:hover:not(:disabled){background:var(--accent-primary-hover)}.btn-cancel:disabled,.btn-apply:disabled{opacity:.5;cursor:not-allowed}.chat-input-container{display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-top:1px solid var(--border-color);background:var(--bg-surface)}.chat-input{flex:1;padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-elevated);color:var(--text-primary);font-size:var(--font-size-sm)}.chat-input:focus{outline:none;border-color:var(--accent-primary)}.chat-input::placeholder{color:var(--text-tertiary)}.chat-send-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--accent-primary);border:none;border-radius:var(--radius-sm);color:#fff;font-size:var(--font-size-sm);font-weight:500;cursor:pointer;transition:background .15s}.chat-send-btn:hover:not(:disabled){background:var(--accent-primary-hover)}.chat-send-btn:disabled{opacity:.5;cursor:not-allowed}.sessions-panel{background:var(--bg-elevated);border-bottom:1px solid var(--border-color);max-height:200px;overflow-y:auto}.sessions-header{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color)}.sessions-list{display:flex;flex-direction:column}.session-item{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:background .15s;border-bottom:1px solid var(--border-subtle)}.session-item:last-child{border-bottom:none}.session-item:hover{background:var(--bg-surface-hover)}.session-item.active{background:rgba(99,102,241,.1);border-left:3px solid var(--accent-primary)}.session-info{flex:1;min-width:0}.session-title{font-size:var(--font-size-sm);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-date{font-size:var(--font-size-xs);color:var(--text-tertiary)}.session-delete{background:transparent;border:none;color:var(--text-tertiary);cursor:pointer;padding:4px 8px;font-size:16px;border-radius:var(--radius-sm);opacity:0;transition:all .15s}.session-item:hover .session-delete{opacity:1}.session-delete:hover{background:rgba(239,68,68,.1);color:#ef4444}.no-sessions{padding:var(--spacing-md);text-align:center;color:var(--text-tertiary);font-size:var(--font-size-sm)}.loading-session{display:flex;align-items:center;justify-content:center;padding:var(--spacing-lg);color:var(--text-secondary);font-size:var(--font-size-sm)}@media (max-width: 600px){.strategy-chat-panel{width:calc(100% - 20px);right:10px;bottom:10px}}.under-construction{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-xl);min-height:400px;gap:var(--spacing-lg)}.construction-tape{display:flex;width:100%;max-width:400px;height:24px;overflow:hidden;border-radius:var(--radius-sm)}.tape-stripe{flex:1;background:repeating-linear-gradient(45deg,var(--warning-color, #f59e0b),var(--warning-color, #f59e0b) 10px,var(--bg-tertiary, #1a1a1a) 10px,var(--bg-tertiary, #1a1a1a) 20px)}.construction-content{text-align:center;padding:var(--spacing-xl)}.construction-content h2{color:var(--text-primary);margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-xl)}.construction-content p{color:var(--text-secondary);margin:0;font-size:var(--font-size-base)}.content-generator-tab,.export-tab{padding:var(--spacing-lg)}.workflow-sidebar{display:flex;flex-direction:column;height:100%;background:var(--bg-surface);border-right:1px solid var(--border-color);min-width:200px}.sidebar-header{padding:var(--spacing-md);border-bottom:1px solid var(--border-color)}.sidebar-title{font-size:11px;font-weight:600;color:var(--text-secondary);letter-spacing:.5px;text-transform:uppercase}.task-list{flex:1;overflow-y:auto;padding:var(--spacing-sm) 0}.task-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);cursor:not-allowed;transition:all var(--transition-fast)}.task-item.pending{opacity:.4}.task-item.clickable{cursor:pointer;opacity:1}.task-item.clickable:hover{background:var(--bg-hover)}.task-item.current{background:var(--primary-color-alpha);opacity:1;cursor:pointer}.task-item.completed,.task-item.in_progress,.task-item.processing,.task-item.waiting{opacity:1;cursor:pointer}.task-item.warning{opacity:1;cursor:pointer;background:var(--warning-color-alpha)}.task-item.always-active,.task-item.always-active.pending,.task-item.always-active.completed{opacity:1!important;cursor:pointer!important}.task-item.always-active:hover{background:var(--bg-hover)}.task-status-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1}.task-status-icon.pending{color:var(--text-tertiary)}.task-status-icon.in_progress{color:var(--status-blue)}.task-status-icon.processing{color:var(--status-amber);animation:spin 1.5s linear infinite}.task-status-icon.waiting{color:var(--warning-color)}.task-status-icon.completed{color:var(--status-green);font-weight:600}.task-status-icon.warning,.task-status-icon.changed{color:var(--status-amber);font-weight:600}.task-item.changed{opacity:1;cursor:pointer;background:var(--warning-color-alpha)}.task-info{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.task-label{font-size:13px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-item.pending .task-label{color:var(--text-tertiary)}.task-item.always-active .task-label{color:var(--text-primary)}.task-item.always-active .task-status-icon{color:var(--status-blue)}.task-item.completed .task-label{color:var(--text-secondary)}.task-time{font-size:11px;color:var(--status-amber);font-style:italic}.action-needed{margin:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--warning-color-alpha);border:1px solid var(--warning-border);border-radius:var(--radius-md)}.action-needed-header{display:flex;align-items:center;gap:var(--spacing-xs);font-size:12px;font-weight:600;color:var(--warning-text);margin-bottom:4px}.action-icon{font-size:12px}.action-message{font-size:12px;color:var(--text-secondary);padding-left:20px}.action-bar{flex-shrink:0;background:var(--bg-surface);border-top:1px solid var(--border-color);padding:var(--spacing-sm) var(--spacing-md);z-index:100}.action-bar-content{display:flex;align-items:center;justify-content:space-between;max-width:100%}.action-bar-left,.action-bar-center,.action-bar-right{display:flex;align-items:center}.action-bar-left{flex:1;justify-content:flex-start}.action-bar-center{flex:0 0 auto;justify-content:center}.action-bar-right{flex:1;justify-content:flex-end}.action-btn{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);font-size:14px;font-weight:500;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:none}.action-btn-secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--border-color)}.action-btn-secondary:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.action-btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.action-btn-primary:hover:not(:disabled){background:var(--btn-primary-hover)}.btn-icon{font-size:12px}.processing-message{display:flex;align-items:center;gap:var(--spacing-sm);color:var(--text-secondary);font-size:13px}.processing-spinner{width:16px;height:16px;border:2px solid var(--border-color);border-top-color:var(--status-blue);border-radius:50%;animation:spin 1s linear infinite}.seo-workflow-layout{display:flex;flex-direction:column;flex:1 1 0;min-height:0;overflow:hidden;background:var(--bg-primary)}.workflow-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-surface);border-bottom:1px solid var(--border-color);flex-shrink:0}.header-left,.header-right{display:flex;align-items:center}.workflow-title{font-size:18px;font-weight:600;color:var(--text-primary);margin:0}.progress-indicator{display:flex;align-items:center;gap:var(--spacing-md)}.progress-bar-container{width:200px;height:8px;background:var(--bg-tertiary);border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;background:var(--status-green);border-radius:4px;transition:width .3s ease}.progress-text{font-size:13px;color:var(--text-secondary);white-space:nowrap}.workflow-body{display:flex;flex:1 1 0;min-height:0;overflow:hidden}.workflow-sidebar-container{width:220px;flex:0 0 220px;overflow-y:auto}.workflow-content{flex:1 1 0;min-width:0;min-height:0;overflow:hidden;background:var(--bg-primary);display:flex;flex-direction:column}.workflow-content-inner{flex:1 1 0;min-height:0;padding:var(--spacing-lg);display:flex;flex-direction:column;overflow:hidden}@media (max-width: 768px){.workflow-header{flex-direction:column;gap:var(--spacing-md);align-items:flex-start}.workflow-sidebar-container{width:180px}.progress-bar-container{width:150px}}@media (max-width: 600px){.workflow-body{flex-direction:column}.workflow-sidebar-container{width:100%;max-height:200px;border-right:none;border-bottom:1px solid var(--border-color)}}.site-extraction-step{display:flex;flex-direction:column;gap:var(--spacing-lg);flex:1;min-height:0;overflow:hidden}.step-header{flex-shrink:0}.stats-row{display:flex;gap:var(--spacing-md);flex-wrap:wrap;flex-shrink:0}.stat-card{flex:1;min-width:100px;padding:var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center}.stat-card.stat-success{border-left:3px solid var(--status-green)}.stat-card.stat-redirect{border-left:3px solid var(--status-amber)}.stat-card.stat-error{border-left:3px solid var(--status-red)}.stat-card.clickable{cursor:pointer;transition:all var(--transition-fast)}.stat-card.clickable:hover{background:var(--bg-hover);transform:translateY(-1px)}.stat-card.selected{background:var(--bg-surface-raised);box-shadow:0 0 0 2px var(--accent-color)}.stat-card.stat-success.selected{box-shadow:0 0 0 2px var(--status-green)}.stat-card.stat-redirect.selected{box-shadow:0 0 0 2px var(--status-amber)}.stat-card.stat-error.selected{box-shadow:0 0 0 2px var(--status-red)}.toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md);flex-shrink:0}.site-extraction-step .view-toggle{display:flex;width:auto;height:auto;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.site-extraction-step .view-toggle button{padding:var(--spacing-sm) var(--spacing-lg);min-width:100px;background:transparent;border:none;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.site-extraction-step .view-toggle button:hover{background:var(--bg-hover)}.site-extraction-step .view-toggle button.active{background:var(--accent-color);color:#fff}.filters{display:flex;gap:var(--spacing-sm)}.search-input{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-primary);min-width:200px}.status-filter{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-primary)}.tree-controls{display:flex;gap:var(--spacing-sm)}.tree-controls button{padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-size:12px}.tree-controls button:hover{background:var(--bg-hover)}.content-area{flex:1;min-height:0;display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.content-area>div{flex:1;min-height:0}.url-table-container{flex:1;min-height:0;overflow:auto}.url-table thead{position:sticky;top:0;z-index:10;background:var(--bg-surface)}.url-table thead th{background:var(--bg-surface);border-bottom:2px solid var(--border-color)}.url-table th{background:var(--bg-elevated);font-weight:600;font-size:12px;color:var(--text-secondary);text-transform:uppercase;position:sticky;top:0}.title-cell{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:11px;font-weight:500}.status-badge.status-200{background:var(--status-green-bg);color:var(--status-green)}.status-badge.status-301,.status-badge.status-302{background:var(--status-amber-bg);color:var(--status-amber)}.status-badge.status-404{background:var(--status-red-bg);color:var(--status-red)}.col-idx{width:50px}.col-title,.col-url{min-width:200px}.col-status{width:80px}.col-type{width:100px}.col-priority{width:80px}.col-info{width:40px}.title-cell{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.idx-cell{color:var(--text-tertiary);font-size:12px}.info-cell{text-align:center}.detail-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast)}.detail-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--text-tertiary)}.detail-btn svg{flex-shrink:0}.priority-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:11px;font-weight:500}.priority-badge.priority-high{background:var(--status-green-bg);color:var(--status-green)}.priority-badge.priority-medium{background:var(--status-amber-bg);color:var(--status-amber)}.priority-badge.priority-low{background:var(--bg-surface-raised);color:var(--text-tertiary)}.details-cell{max-width:300px}.page-details{display:flex;flex-direction:column;gap:2px}.detail-title{font-size:13px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-meta{font-size:11px;color:var(--text-tertiary)}.tree-container{flex:1;min-height:0;display:flex;flex-direction:column;border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.tree-header{display:flex;align-items:center;padding:12px 16px;background:var(--bg-hover);border-bottom:1px solid var(--border-color);font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.tree-header-title{flex:1}.tree-header-meta{display:flex;align-items:center;gap:var(--spacing-md);margin-left:var(--spacing-md)}.tree-header-url{width:200px;text-align:right}.tree-header-index{width:36px;text-align:center}.tree-header-type{width:70px}.tree-header-priority{width:28px;text-align:center}.tree-header-status{width:50px;text-align:center}.tree-header-info{width:32px}.tree-content{flex:1;min-height:0;overflow-y:auto;padding:var(--spacing-md);font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace}.site-extraction-step .tree-row{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);cursor:pointer;transition:background .15s ease}.site-extraction-step .tree-row:hover{background:var(--bg-secondary)}.site-extraction-step .tree-row.selected{background:rgba(59,130,246,.15)}.tree-prefix{white-space:pre;color:var(--text-tertiary);font-size:12px;-webkit-user-select:none;user-select:none;flex-shrink:0}.tree-title{flex:1;font-size:13px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.site-extraction-step .tree-meta{display:flex;align-items:center;gap:var(--spacing-md);flex-shrink:0;margin-left:var(--spacing-md)}.tree-url{font-size:11px;color:var(--text-tertiary);width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}.tree-index-icon{width:36px;text-align:center;font-size:12px}.tree-index-icon.yes{color:var(--status-green)}.tree-index-icon.no{color:var(--status-red)}.tree-type{font-size:11px;color:var(--text-secondary);text-transform:capitalize;width:70px}.tree-priority{width:28px;height:20px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;border-radius:var(--radius-sm);flex-shrink:0}.tree-priority.priority-high{background:rgba(16,185,129,.2);color:#10b981}.tree-priority.priority-medium{background:rgba(59,130,246,.2);color:#3b82f6}.tree-priority.priority-low{background:rgba(245,158,11,.2);color:#f59e0b}.tree-status{width:50px;text-align:center;font-size:11px;font-weight:500;padding:2px 6px;border-radius:var(--radius-sm)}.tree-status.status-2xx{background:var(--status-green-bg);color:var(--status-green)}.tree-status.status-3xx{background:var(--status-amber-bg);color:var(--status-amber)}.tree-status.status-4xx,.tree-status.status-5xx{background:var(--status-red-bg);color:var(--status-red)}.tree-info-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-tertiary);cursor:pointer;transition:all var(--transition-fast)}.tree-info-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--text-tertiary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000}.url-detail-modal{background:var(--bg-surface);border-radius:var(--radius-lg);width:90%;max-width:600px;max-height:80vh;overflow:hidden;box-shadow:0 4px 20px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--border-color)}.modal-header h3{margin:0;font-size:16px;color:var(--text-primary)}.modal-close{background:none;border:none;font-size:24px;color:var(--text-tertiary);cursor:pointer;padding:0;line-height:1}.modal-close:hover{color:var(--text-primary)}.modal-content{padding:var(--spacing-lg);overflow-y:auto;max-height:calc(80vh - 60px)}.detail-line{display:flex;align-items:baseline;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);font-size:13px}.detail-label{color:var(--text-secondary);min-width:100px;flex-shrink:0}.detail-text{color:var(--text-primary)}.detail-link{color:var(--accent-color);text-decoration:none;word-break:break-all}.detail-link:hover{text-decoration:underline}.detail-chars{color:var(--text-tertiary);font-size:11px;margin-left:var(--spacing-xs)}.detail-card{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-surface-raised);border-radius:var(--radius-md);border:1px solid var(--border-color)}.detail-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.detail-card-title{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase}.detail-card-hint{font-size:11px;color:var(--text-tertiary)}.detail-card-content{margin:0;font-size:13px;color:var(--text-primary);line-height:1.5}.detail-content-preview{max-height:150px;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.detail-content-full{max-height:300px;overflow-y:auto;white-space:pre-wrap;word-break:break-word;font-size:12px;line-height:1.6;background:var(--bg-elevated);padding:var(--spacing-sm);border-radius:var(--radius-sm)}.performance-step{display:flex;flex-direction:column;gap:var(--spacing-lg);flex:1;min-height:0;overflow:hidden}.performance-step .step-header{flex-shrink:0}.step-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md)}.data-source-badge{display:inline-flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);font-size:11px;font-weight:500;border-radius:var(--radius-sm);white-space:nowrap}.data-source-badge.gsc{background:var(--status-green-bg);color:var(--status-green)}.data-source-badge.dfseo{background:var(--status-blue-bg, rgba(59, 130, 246, .15));color:var(--status-blue, #3b82f6)}.gsc-notice strong{display:block;margin-bottom:4px;color:var(--text-primary)}.gsc-notice p{margin:0;font-size:13px;color:var(--text-secondary)}.performance-step .stats-row{display:flex;gap:var(--spacing-md);flex-wrap:wrap;flex-shrink:0}.stat-card{flex:1;min-width:120px;padding:var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center}.performance-table-container{flex:1;min-height:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:auto}.performance-table{width:100%;border-collapse:collapse}.performance-table thead{position:sticky;top:0;z-index:10;background:var(--bg-surface)}.performance-table thead th{background:var(--bg-surface);border-bottom:2px solid var(--border-color)}.performance-table th,.performance-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--border-color)}.performance-table th{background:var(--bg-elevated);font-weight:600;font-size:12px;color:var(--text-secondary);text-transform:uppercase;position:sticky;top:0}.performance-table th.sortable{cursor:pointer}.performance-table th.sortable:hover{color:var(--text-primary)}.performance-table td{font-size:13px;color:var(--text-primary)}.url-cell a{color:var(--accent-color);text-decoration:none;word-break:break-all}.url-cell a:hover{text-decoration:underline}.keyword-cell{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary)}.no-results{padding:var(--spacing-xl);text-align:center;color:var(--text-secondary)}.no-data-warning{display:flex;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--warning-color-alpha);border:1px solid var(--warning-border);border-radius:var(--radius-md);margin-top:var(--spacing-md)}.no-data-warning .warning-icon{flex-shrink:0;font-size:32px;color:var(--status-amber)}.no-data-warning .warning-content h3{margin:0 0 var(--spacing-sm);color:var(--text-primary);font-size:16px}.no-data-warning .warning-content p{margin:0 0 var(--spacing-sm);color:var(--text-secondary);font-size:14px}.no-data-warning .warning-content ul{margin:0 0 var(--spacing-md);padding-left:var(--spacing-lg);color:var(--text-secondary);font-size:14px}.no-data-warning .warning-content li{margin-bottom:var(--spacing-xs)}.no-data-warning .warning-action{margin:var(--spacing-md) 0 0;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-surface);border-radius:var(--radius-sm);color:var(--text-primary)}.products-services-step{height:100%;display:flex;flex-direction:column}.products-services-step .step-header{padding-bottom:16px}.step-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.btn-rerun{padding:8px 16px;background:var(--status-amber);color:var(--bg-surface);border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .2s}.btn-rerun:hover:not(:disabled){background:var(--status-amber-dark, #d97706)}.btn-rerun:disabled{opacity:.6;cursor:not-allowed}.changes-banner{display:flex;align-items:center;gap:8px;padding:10px 14px;margin-top:12px;background:var(--warning-color-alpha);border:1px solid var(--warning-border);border-radius:6px;font-size:13px;color:var(--text-primary)}.changes-icon{font-size:16px;color:var(--status-amber)}.refresh-competitors-prompt{display:flex;align-items:flex-start;gap:16px;padding:24px;background:var(--warning-color-alpha);border:1px solid var(--warning-border);border-radius:8px;margin:16px}.refresh-competitors-prompt .prompt-icon{font-size:24px;color:var(--status-amber);flex-shrink:0}.refresh-competitors-prompt .prompt-content{flex:1}.refresh-competitors-prompt .prompt-title{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:4px}.refresh-competitors-prompt .prompt-message{font-size:13px;color:var(--text-secondary);margin-bottom:12px}.btn-fetch-competitors{padding:8px 16px;background:var(--status-amber);color:var(--bg-surface);border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s}.btn-fetch-competitors:hover:not(:disabled){background:var(--status-amber-dark, #d97706)}.btn-fetch-competitors:disabled{opacity:.6;cursor:not-allowed}.step-header h2{margin:0 0 4px;color:var(--text-primary);font-size:20px}.step-loading{display:flex;align-items:center;justify-content:center;padding:32px;color:var(--text-secondary)}.products-layout{flex:1;display:flex;gap:16px;overflow:hidden}.products-sidebar{width:280px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;display:flex;flex-direction:column;overflow:hidden}.sidebar-header{padding:8px 16px;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;border-bottom:1px solid var(--border-color)}.products-list{flex:1;overflow-y:auto;padding:4px}.product-item{display:flex;align-items:flex-start;gap:8px;padding:8px 16px;border-radius:4px;cursor:pointer}.product-item:hover{background:var(--bg-hover)}.product-item.selected{background:var(--primary-color-alpha);border-left:3px solid var(--accent-color)}.status-indicator{width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:11px;font-weight:600;margin-top:2px}.status-indicator.status-green{background:var(--status-green-bg);color:var(--status-green)}.status-indicator.status-amber{background:var(--status-amber-bg);color:var(--status-amber)}.status-indicator.status-grey{background:var(--bg-elevated);color:var(--text-tertiary)}.status-indicator.status-warning{background:var(--status-amber-bg);color:var(--status-amber)}.product-item.needs-refresh{background:var(--warning-color-alpha)}.needs-refresh-badge{font-size:11px;color:var(--status-amber);font-weight:500}.product-info{flex:1}.product-name{font-size:14px;font-weight:500;color:var(--text-primary);margin-bottom:4px}.product-meta{display:flex;flex-wrap:wrap;gap:4px 8px;font-size:12px;color:var(--text-secondary)}.competitor-count{color:var(--text-tertiary)}.no-products{padding:16px;text-align:center;color:var(--text-secondary);font-size:13px}.keywords-panel{flex:1;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;display:flex;flex-direction:column;overflow:hidden}.panel-header{padding:16px;border-bottom:1px solid var(--border-color)}.panel-header h3{margin:0 0 4px;font-size:16px;color:var(--text-primary)}.product-description{margin:0;font-size:13px;color:var(--text-secondary)}.data-sections{flex:1;display:flex;overflow:hidden}.table-section{flex:1;display:flex;flex-direction:column;overflow:hidden}.table-section-header{padding:8px 16px;font-size:12px;font-weight:600;color:var(--text-secondary);background:var(--bg-elevated);border-bottom:1px solid var(--border-color)}.table-section-body{flex:1;overflow:auto}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:8px 12px;border-bottom:1px solid var(--border-color);text-align:left;vertical-align:middle}.data-table th{font-weight:600;font-size:11px;color:var(--text-secondary);text-transform:uppercase;background:var(--bg-surface);position:sticky;top:0;z-index:1}.data-table td{font-size:13px;color:var(--text-primary)}.data-table .col-select{width:50px;text-align:center}.data-table .col-name{text-align:left}.data-table .col-number{width:70px;text-align:center}.data-table tr.row-selected{background:var(--primary-color-alpha)}.cell-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.section-divider{width:1px;background:var(--border-color)}.empty-state{padding:32px;text-align:center;color:var(--text-secondary)}.no-selection{display:flex;align-items:center;justify-content:center;flex:1;color:var(--text-secondary)}.difficulty-badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500}.difficulty-badge.easy{background:var(--status-green-bg);color:var(--status-green)}.difficulty-badge.medium{background:var(--status-amber-bg);color:var(--status-amber)}.difficulty-badge.hard{background:var(--status-red-bg);color:var(--status-red)}.data-table .col-rank{width:50px;text-align:center}.rank-badge{display:inline-block;padding:2px 6px;border-radius:4px;font-size:11px;font-weight:600;background:var(--bg-elevated);color:var(--text-secondary);cursor:help}.rank-badge.top-rank{background:var(--status-green-bg);color:var(--status-green)}.toggle-switch{position:relative;display:inline-block;width:36px;height:20px;cursor:pointer}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;top:0;left:0;right:0;bottom:0;background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:20px;transition:.2s}.toggle-slider:before{content:"";position:absolute;width:14px;height:14px;left:2px;bottom:2px;background:var(--text-tertiary);border-radius:50%;transition:.2s}.toggle-switch input:checked+.toggle-slider{background:var(--status-green-bg);border-color:var(--status-green)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(16px);background:var(--status-green)}.competitors-step{display:flex;flex-direction:column;gap:var(--spacing-lg)}.step-header h2{margin:0 0 var(--spacing-xs);color:var(--text-primary);font-size:20px}.step-header p{margin:0;color:var(--text-secondary);font-size:14px}.step-loading{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);color:var(--text-secondary)}.stats-row{display:flex;gap:var(--spacing-md)}.stat-card{padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center}.stat-value{display:block;font-size:24px;font-weight:600;color:var(--text-primary)}.stat-label{font-size:12px;color:var(--text-secondary)}.competitors-table-container{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.competitors-table{width:100%;border-collapse:collapse}.competitors-table th,.competitors-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--border-color)}.competitors-table th{background:var(--bg-elevated);font-weight:600;font-size:12px;color:var(--text-secondary);text-transform:uppercase}.competitors-table td{font-size:13px;color:var(--text-primary)}.domain-cell a{color:var(--accent-color);text-decoration:none;font-weight:500}.domain-cell a:hover{text-decoration:underline}.btn-view-urls{padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:12px;cursor:pointer;transition:all var(--transition-fast)}.btn-view-urls:hover{background:var(--bg-hover);border-color:var(--accent-color)}.no-data{text-align:center;color:var(--text-secondary);padding:var(--spacing-xl)!important}.url-modal-content{max-height:500px;overflow-y:auto}.modal-loading,.modal-empty{padding:var(--spacing-xl);text-align:center;color:var(--text-secondary)}.url-list{padding:0}.url-table{width:100%;border-collapse:collapse}.url-table th,.url-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--border-color)}.url-table th{font-weight:600;font-size:12px;color:var(--text-secondary);text-transform:uppercase;background:var(--bg-elevated);position:sticky;top:0}.url-table td{font-size:13px;color:var(--text-primary)}.url-path{font-family:monospace;font-size:12px;word-break:break-all;max-width:400px}.url-title{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sitemap-action-bar{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-elevated);border:1px solid var(--border-color);border-radius:var(--radius-md)}.action-hint{font-size:13px;color:var(--text-secondary)}.url-count{color:var(--accent-color);font-weight:500}.no-sitemap{color:var(--text-tertiary);font-style:italic;font-size:12px}.pending{color:var(--text-tertiary)}.url-list-header{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-surface);border-bottom:1px solid var(--border-color);font-size:13px;color:var(--text-secondary)}.modal-empty{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-xl);text-align:center}.modal-empty p{margin:0;color:var(--text-secondary)}.keyword-universe-step{display:flex;flex-direction:column;gap:var(--spacing-lg);flex:1 1 0;min-height:0;overflow:hidden}.keyword-universe-step .step-header{flex-shrink:0}.keyword-universe-step .step-header h2{margin:0 0 var(--spacing-xs);color:var(--text-primary);font-size:20px}.keyword-universe-step .step-header p{margin:0;color:var(--text-secondary);font-size:14px}.keyword-universe-step .step-loading{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);color:var(--text-secondary)}.keyword-universe-step .stats-row{display:flex;gap:var(--spacing-md);flex-wrap:wrap;flex-shrink:0}.keyword-universe-step .stat-card{flex:1;min-width:100px;padding:var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center}.keyword-universe-step .stat-value{display:block;font-size:24px;font-weight:600;color:var(--text-primary)}.keyword-universe-step .stat-label{font-size:12px;color:var(--text-secondary)}.keyword-universe-step .toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md);flex-shrink:0}.keyword-universe-step .filters{display:flex;gap:var(--spacing-sm)}.keyword-universe-step .search-input{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-primary);min-width:200px}.keyword-universe-step .result-count{font-size:13px;color:var(--text-secondary)}.keyword-universe-step .table-wrapper{flex:1 1 0;min-height:0;display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.keyword-universe-step .table-header{flex-shrink:0;background:var(--bg-elevated);border-bottom:1px solid var(--border-color)}.keyword-universe-step .header-row{display:flex;align-items:center;padding-right:8px}.keyword-universe-step .header-row>div{padding:6px 8px;font-weight:600;font-size:11px;color:var(--text-secondary);text-transform:uppercase;line-height:1.2}.keyword-universe-step .header-row .sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--transition-fast),background var(--transition-fast)}.keyword-universe-step .header-row .sortable:hover{color:var(--text-primary);background:var(--bg-hover)}.keyword-universe-step .table-body{flex:1 1 0;min-height:0;overflow-y:auto;overflow-x:hidden}.keyword-universe-step .body-row{display:flex;align-items:center;border-bottom:1px solid var(--border-color);transition:background var(--transition-fast)}.keyword-universe-step .body-row:hover{background:var(--bg-hover)}.keyword-universe-step .body-row>div{padding:6px 8px;font-size:13px;color:var(--text-primary);line-height:1.2}.keyword-universe-step .col-idx{width:50px;flex:0 0 50px;text-align:center}.keyword-universe-step .col-keyword{flex:1 1 auto;min-width:200px;text-align:left}.keyword-universe-step .col-volume,.keyword-universe-step .col-difficulty{width:100px;flex:0 0 100px;text-align:center}.keyword-universe-step .col-cpc{width:80px;flex:0 0 80px;text-align:center}.keyword-universe-step .col-intent{width:100px;flex:0 0 100px;text-align:center}.keyword-universe-step .idx-cell{color:var(--text-tertiary);font-size:12px}.keyword-universe-step .keyword-cell{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.keyword-universe-step .intent-cell{color:var(--text-secondary);text-transform:capitalize;font-size:12px}.keyword-universe-step .difficulty-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:11px;font-weight:500}.keyword-universe-step .difficulty-badge.diff-easy{background:var(--status-green-bg);color:var(--status-green)}.keyword-universe-step .difficulty-badge.diff-medium{background:var(--status-amber-bg);color:var(--status-amber)}.keyword-universe-step .difficulty-badge.diff-hard{background:var(--status-red-bg);color:var(--status-red)}.keyword-universe-step .no-results{padding:var(--spacing-xl);text-align:center;color:var(--text-secondary)}.keyword-universe-step .pagination{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);flex-shrink:0;padding:var(--spacing-sm) 0}.keyword-universe-step .pagination button{padding:var(--spacing-xs) var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;font-size:13px;transition:all var(--transition-fast)}.keyword-universe-step .pagination button:hover:not(:disabled){background:var(--bg-hover)}.keyword-universe-step .pagination button:disabled{opacity:.5;cursor:not-allowed}.keyword-universe-step .page-info{font-size:13px;color:var(--text-secondary)}.shortlisted-keywords-step{display:flex;flex-direction:column;gap:var(--spacing-lg);flex:1 1 0;min-height:0;overflow:hidden}.shortlisted-keywords-step .step-header{flex-shrink:0}.shortlisted-keywords-step .step-header h2{margin:0 0 var(--spacing-xs);color:var(--text-primary);font-size:20px}.shortlisted-keywords-step .step-header p{margin:0;color:var(--text-secondary);font-size:14px}.shortlisted-keywords-step .step-loading{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);color:var(--text-secondary)}.shortlisted-keywords-step .stats-row{display:flex;gap:var(--spacing-md);flex-wrap:wrap;flex-shrink:0}.shortlisted-keywords-step .stat-card{flex:1;min-width:100px;padding:var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center}.shortlisted-keywords-step .stat-card.stat-verified{border-left:3px solid var(--status-green)}.shortlisted-keywords-step .stat-value{display:block;font-size:24px;font-weight:600;color:var(--text-primary)}.shortlisted-keywords-step .stat-label{font-size:12px;color:var(--text-secondary)}.shortlisted-keywords-step .toolbar{display:flex;gap:var(--spacing-md);align-items:center;flex-wrap:wrap;flex-shrink:0}.shortlisted-keywords-step .search-input{flex:1;max-width:250px;padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-primary)}.shortlisted-keywords-step .intent-filter{padding:var(--spacing-sm);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-primary)}.shortlisted-keywords-step .result-count{margin-left:auto;font-size:13px;color:var(--text-secondary)}.shortlisted-keywords-step .table-wrapper{flex:1 1 0;min-height:0;display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.shortlisted-keywords-step .table-header{flex-shrink:0;background:var(--bg-elevated);border-bottom:1px solid var(--border-color)}.shortlisted-keywords-step .header-row{display:flex;align-items:center;padding-right:8px}.shortlisted-keywords-step .header-row>div{padding:6px 8px;font-weight:600;font-size:11px;color:var(--text-secondary);text-transform:uppercase;line-height:1.2}.shortlisted-keywords-step .table-body{flex:1 1 0;min-height:0;overflow-y:auto;overflow-x:hidden}.shortlisted-keywords-step .body-row{display:flex;align-items:center;border-bottom:1px solid var(--border-color);transition:background var(--transition-fast)}.shortlisted-keywords-step .body-row:hover{background:var(--bg-hover)}.shortlisted-keywords-step .body-row>div{padding:6px 8px;font-size:13px;color:var(--text-primary);line-height:1.2}.shortlisted-keywords-step .col-keyword{flex:1 1 auto;min-width:200px;text-align:left}.shortlisted-keywords-step .col-volume,.shortlisted-keywords-step .col-priority{width:80px;flex:0 0 80px;text-align:center}.shortlisted-keywords-step .col-intent,.shortlisted-keywords-step .col-pagetype{width:100px;flex:0 0 100px;text-align:center}.shortlisted-keywords-step .col-match{width:90px;flex:0 0 90px;text-align:center}.shortlisted-keywords-step .keyword-cell{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shortlisted-keywords-step .intent-cell{color:var(--text-secondary);text-transform:capitalize;font-size:12px}.shortlisted-keywords-step .priority-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:11px;font-weight:500}.shortlisted-keywords-step .priority-badge.priority-high{background:var(--status-green-bg);color:var(--status-green)}.shortlisted-keywords-step .priority-badge.priority-medium{background:var(--status-amber-bg);color:var(--status-amber)}.shortlisted-keywords-step .priority-badge.priority-low{background:var(--bg-surface-raised);color:var(--text-tertiary)}.shortlisted-keywords-step .match-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:11px;background:var(--bg-elevated);color:var(--text-secondary)}.shortlisted-keywords-step .match-badge.exact{background:var(--status-green-bg);color:var(--status-green)}.shortlisted-keywords-step .match-badge.semantic{background:var(--status-blue-bg);color:var(--status-blue)}.shortlisted-keywords-step .no-results{padding:var(--spacing-xl);text-align:center;color:var(--text-secondary)}.shortlisted-keywords-step .pagination{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md);flex-shrink:0;padding:var(--spacing-sm) 0}.shortlisted-keywords-step .pagination button{padding:var(--spacing-xs) var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;font-size:13px;transition:all var(--transition-fast)}.shortlisted-keywords-step .pagination button:hover:not(:disabled){background:var(--bg-hover)}.shortlisted-keywords-step .pagination button:disabled{opacity:.5;cursor:not-allowed}.shortlisted-keywords-step .page-info{font-size:13px;color:var(--text-secondary)}.clusters-step{display:flex;flex-direction:column;gap:var(--spacing-lg);flex:1 1 0;min-height:0;overflow:hidden}.clusters-step .step-header{flex-shrink:0}.clusters-step .step-header h2{margin:0 0 var(--spacing-xs);color:var(--text-primary);font-size:20px}.clusters-step .step-header p{margin:0;color:var(--text-secondary);font-size:14px}.clusters-step .step-loading{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);color:var(--text-secondary)}.clusters-step .stats-row{display:flex;gap:var(--spacing-md);flex-wrap:wrap;flex-shrink:0}.clusters-step .stat-card{flex:1;min-width:120px;padding:var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center}.clusters-step .stat-value{display:block;font-size:24px;font-weight:600;color:var(--text-primary)}.clusters-step .stat-label{font-size:12px;color:var(--text-secondary)}.clusters-step .clusters-layout{display:flex;gap:var(--spacing-md);flex:1 1 0;min-height:0;overflow:hidden}.clusters-step .clusters-sidebar{flex:1 1 50%;min-width:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-direction:column;overflow:hidden}.clusters-step .sidebar-header{padding:6px 8px;font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;border-bottom:1px solid var(--border-color);background:var(--bg-elevated);flex-shrink:0}.clusters-step .clusters-list{flex:1 1 0;min-height:0;overflow-y:auto;padding:var(--spacing-xs)}.clusters-step .cluster-item{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast)}.clusters-step .cluster-item:hover{background:var(--bg-hover)}.clusters-step .cluster-item.selected{background:var(--primary-color-alpha);border-left:3px solid var(--accent-color)}.clusters-step .cluster-name{font-size:14px;font-weight:500;color:var(--text-primary);margin-bottom:4px}.clusters-step .cluster-meta{display:flex;gap:var(--spacing-sm);font-size:12px;color:var(--text-secondary)}.clusters-step .volume-badge{color:var(--status-blue)}.clusters-step .no-clusters{padding:var(--spacing-md);text-align:center;color:var(--text-secondary);font-size:13px}.clusters-step .cluster-detail-panel{flex:1 1 50%;min-width:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-direction:column;overflow:hidden}.clusters-step .panel-header{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-color);flex-shrink:0}.clusters-step .panel-header h3{margin:0 0 var(--spacing-xs);font-size:16px;color:var(--text-primary)}.clusters-step .recommended-url{display:flex;align-items:center;gap:var(--spacing-sm);font-size:13px}.clusters-step .recommended-url .label{color:var(--text-secondary)}.clusters-step .recommended-url code{background:var(--bg-elevated);padding:2px 8px;border-radius:var(--radius-sm);font-family:monospace;font-size:12px;color:var(--accent-color)}.clusters-step .keywords-section{flex:1 1 0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.clusters-step .section-title{padding:6px 8px;font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;background:var(--bg-elevated);flex-shrink:0}.clusters-step .keywords-loading,.clusters-step .no-keywords{padding:var(--spacing-xl);text-align:center;color:var(--text-secondary)}.clusters-step .table-wrapper{flex:1 1 0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.clusters-step .table-header{flex-shrink:0;background:var(--bg-elevated);border-bottom:1px solid var(--border-color)}.clusters-step .header-row{display:flex;align-items:center;padding-right:8px}.clusters-step .header-row>div{padding:6px 8px;font-weight:600;font-size:11px;color:var(--text-secondary);text-transform:uppercase;line-height:1.2}.clusters-step .table-body{flex:1 1 0;min-height:0;overflow-y:auto;overflow-x:hidden}.clusters-step .body-row{display:flex;align-items:center;border-bottom:1px solid var(--border-color);transition:background var(--transition-fast)}.clusters-step .body-row:hover{background:var(--bg-hover)}.clusters-step .body-row>div{padding:6px 8px;font-size:13px;color:var(--text-primary);line-height:1.2}.clusters-step .col-keyword{width:200px;flex:0 0 200px;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clusters-step .col-volume,.clusters-step .col-difficulty{width:80px;flex:0 0 80px;text-align:center}.clusters-step .keyword-name{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clusters-step .no-selection{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary)}.proposed-structure-step{display:flex;flex-direction:column;gap:var(--spacing-lg);flex:1 1 0;min-height:0;overflow:hidden}.proposed-structure-step .step-header{flex-shrink:0}.proposed-structure-step .step-header h2{margin:0 0 var(--spacing-xs);color:var(--text-primary);font-size:20px}.proposed-structure-step .step-header p{margin:0;color:var(--text-secondary);font-size:14px}.proposed-structure-step .step-loading{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);color:var(--text-secondary)}.proposed-structure-step .stats-row{display:flex;gap:var(--spacing-md);flex-wrap:wrap;flex-shrink:0}.proposed-structure-step .stat-card{flex:1;min-width:100px;padding:var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center;cursor:pointer;transition:all var(--transition-fast)}.proposed-structure-step .stat-card.clickable:hover{border-color:var(--accent-color)}.proposed-structure-step .stat-card.active{border-color:var(--accent-color);background:var(--primary-color-alpha)}.proposed-structure-step .stat-card.stat-retain{border-left:3px solid var(--status-blue)}.proposed-structure-step .stat-card.stat-protect{border-left:3px solid var(--status-purple)}.proposed-structure-step .stat-card.stat-migrate{border-left:3px solid var(--status-orange)}.proposed-structure-step .stat-card.stat-create{border-left:3px solid var(--status-green)}.proposed-structure-step .stat-value{display:block;font-size:24px;font-weight:600;color:var(--text-primary)}.proposed-structure-step .stat-label{font-size:12px;color:var(--text-secondary)}.proposed-structure-step .toolbar{display:flex;align-items:center;gap:var(--spacing-md);flex-shrink:0}.proposed-structure-step .view-toggle{display:flex;width:auto;height:auto;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.proposed-structure-step .view-toggle button{padding:var(--spacing-sm) var(--spacing-lg);min-width:80px;background:transparent;border:none;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.proposed-structure-step .view-toggle button:hover{background:var(--bg-hover)}.proposed-structure-step .view-toggle button.active{background:var(--accent-color);color:#fff}.proposed-structure-step .tree-controls{display:flex;gap:var(--spacing-xs)}.proposed-structure-step .tree-controls button{padding:6px 12px;border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-secondary);font-size:12px;cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.proposed-structure-step .tree-controls button:hover{border-color:var(--accent-color);color:var(--text-primary)}.proposed-structure-step .btn-chat{margin-left:auto;display:flex;align-items:center;gap:var(--spacing-xs);padding:6px 12px;border:1px solid var(--accent-color);background:transparent;color:var(--accent-color);font-size:13px;cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.proposed-structure-step .btn-chat:hover{background:var(--accent-color);color:#fff}.proposed-structure-step .chat-icon{font-weight:600;font-size:11px}.proposed-structure-step .table-wrapper{flex:1 1 0;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md)}.proposed-structure-step .table-header{flex-shrink:0;background:var(--bg-elevated);border-bottom:1px solid var(--border-color)}.proposed-structure-step .header-row{display:flex;align-items:center;padding-right:8px}.proposed-structure-step .header-row>div{padding:6px 8px;font-weight:600;font-size:11px;color:var(--text-secondary);text-transform:uppercase;line-height:1.2}.proposed-structure-step .table-body{flex:1 1 0;min-height:0;overflow-y:auto;overflow-x:hidden}.proposed-structure-step .body-row{display:flex;align-items:center;border-bottom:1px solid var(--border-color);transition:background var(--transition-fast)}.proposed-structure-step .body-row:hover{background:var(--bg-hover)}.proposed-structure-step .body-row>div{padding:6px 8px;font-size:13px;color:var(--text-primary);line-height:1.2}.proposed-structure-step .body-row.row-retain{border-left:3px solid var(--status-blue)}.proposed-structure-step .body-row.row-protect{border-left:3px solid var(--status-purple)}.proposed-structure-step .body-row.row-migrate{border-left:3px solid var(--status-orange)}.proposed-structure-step .body-row.row-create{border-left:3px solid var(--status-green)}.proposed-structure-step .col-cluster{width:180px;flex:0 0 180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.proposed-structure-step .col-new-url{width:200px;flex:0 0 200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:monospace;font-size:12px;color:var(--accent-color)}.proposed-structure-step .col-current-url{width:180px;flex:0 0 180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:monospace;font-size:12px;color:var(--text-secondary)}.proposed-structure-step .col-performance{width:120px;flex:0 0 120px;text-align:center;font-size:12px;color:var(--text-secondary)}.proposed-structure-step .col-action{width:80px;flex:0 0 80px;text-align:center;font-size:10px;font-weight:600;text-transform:uppercase}.proposed-structure-step .col-reason{flex:1 1 auto;min-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--text-secondary)}.proposed-structure-step .col-action.action-retain{color:var(--status-blue)}.proposed-structure-step .col-action.action-protect{color:var(--status-purple)}.proposed-structure-step .col-action.action-migrate{color:var(--status-orange)}.proposed-structure-step .col-action.action-create{color:var(--status-green)}.proposed-structure-step .no-results{padding:var(--spacing-xl);text-align:center;color:var(--text-secondary)}.proposed-structure-step .tree-comparison{flex:1 1 0;min-height:0;display:flex;gap:var(--spacing-md);overflow:hidden}.proposed-structure-step .tree-panel{flex:1 1 50%;min-width:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-direction:column;overflow:hidden}.proposed-structure-step .panel-title{padding:8px 12px;font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;background:var(--bg-elevated);border-bottom:1px solid var(--border-color);flex-shrink:0}.proposed-structure-step .tree-container{flex:1 1 0;min-height:0;overflow-y:auto;padding:var(--spacing-sm)}.proposed-structure-step .tree-node{-webkit-user-select:none;user-select:none}.proposed-structure-step .tree-row{display:flex;align-items:center;gap:var(--spacing-xs);padding:4px 8px;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast)}.proposed-structure-step .tree-row:hover{background:var(--bg-hover)}.proposed-structure-step .tree-row.leaf{cursor:default}.proposed-structure-step .tree-toggle{width:12px;font-size:10px;color:var(--text-secondary);flex-shrink:0}.proposed-structure-step .tree-spacer{width:12px;flex-shrink:0}.proposed-structure-step .tree-name{font-size:13px;color:var(--text-primary);font-family:monospace}.proposed-structure-step .tree-children{margin-left:0}.proposed-structure-step .action-bar{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);flex-shrink:0}.proposed-structure-step .completion-status{font-size:13px}.proposed-structure-step .status-complete{color:var(--status-green);font-weight:500}.proposed-structure-step .btn-confirm{padding:10px 24px;background:var(--accent-color);border:none;border-radius:var(--radius-md);color:#fff;font-size:14px;font-weight:500;cursor:pointer}.proposed-structure-step .btn-confirm:hover{opacity:.9}.proposed-structure-step .btn-confirm:disabled{opacity:.5;cursor:not-allowed}.content-generation-step{display:flex;flex-direction:column;gap:var(--spacing-lg);flex:1 1 0;min-height:0;overflow:hidden}.content-generation-step .step-header{flex-shrink:0}.content-generation-step .step-header h2{margin:0 0 var(--spacing-xs);color:var(--text-primary);font-size:20px}.content-generation-step .step-header p{margin:0;color:var(--text-secondary);font-size:14px}.content-generation-step .step-loading{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);color:var(--text-secondary)}.content-generation-step .stats-row{display:flex;gap:var(--spacing-md);flex-wrap:wrap;flex-shrink:0}.content-generation-step .stat-card{flex:1;min-width:80px;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center}.content-generation-step .stat-card.stat-generated{border-left:3px solid var(--status-green)}.content-generation-step .stat-card.stat-optimize{border-left:3px solid var(--status-blue)}.content-generation-step .stat-card.stat-new{border-left:3px solid var(--status-purple)}.content-generation-step .stat-value{display:block;font-size:20px;font-weight:600;color:var(--text-primary)}.content-generation-step .stat-label{font-size:11px;color:var(--text-secondary)}.generation-progress{padding:var(--spacing-lg);background:var(--bg-surface);border:1px solid var(--accent-color);border-radius:var(--radius-md);text-align:center}.progress-header{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);font-size:14px;color:var(--text-primary)}.progress-icon{font-size:18px;animation:pulse 1.5s ease-in-out infinite}.progress-bar{height:8px;background:var(--bg-elevated);border-radius:4px;overflow:hidden;margin-bottom:var(--spacing-sm)}.progress-fill{height:100%;background:var(--accent-color);border-radius:4px;transition:width .3s ease}.progress-text{font-size:12px;color:var(--text-secondary)}.content-generation-step .toolbar{display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.content-generation-step .filter-buttons{display:flex;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.content-generation-step .filter-buttons button{padding:6px 12px;background:transparent;border:none;color:var(--text-secondary);font-size:12px;cursor:pointer;transition:all var(--transition-fast)}.content-generation-step .filter-buttons button:hover{background:var(--bg-hover)}.content-generation-step .filter-buttons button.active{background:var(--accent-color);color:#fff}.btn-regenerate-all{padding:8px 16px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:13px;cursor:pointer}.btn-regenerate-all:hover{border-color:var(--accent-color)}.btn-regenerate-all:disabled{opacity:.5;cursor:not-allowed}.content-editor-layout{display:flex;gap:var(--spacing-md);flex:1 1 0;min-height:0;overflow:hidden}.page-list-panel{flex:0 0 350px;display:flex;flex-direction:column;overflow:hidden}.page-list-panel .table-wrapper{flex:1 1 0;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md)}.page-list-panel .table-header{flex-shrink:0;background:var(--bg-elevated);border-bottom:1px solid var(--border-color)}.page-list-panel .header-row{display:flex;align-items:center}.page-list-panel .header-row>div{padding:6px 8px;font-weight:600;font-size:11px;color:var(--text-secondary);text-transform:uppercase;line-height:1.2}.page-list-panel .table-body{flex:1 1 0;min-height:0;overflow-y:auto}.page-list-panel .body-row{display:flex;align-items:center;border-bottom:1px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast)}.page-list-panel .body-row:hover{background:var(--bg-hover)}.page-list-panel .body-row.selected{background:var(--primary-color-alpha)}.page-list-panel .body-row.generated{border-left:3px solid var(--status-green)}.page-list-panel .body-row>div{padding:6px 8px;font-size:13px;line-height:1.2}.page-list-panel .col-page{flex:1 1 auto;min-width:0;overflow:hidden}.page-list-panel .page-name{font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.page-list-panel .page-url{font-size:11px;color:var(--text-secondary);font-family:monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.page-list-panel .col-status{flex:0 0 50px;text-align:center}.status-icon.done{color:var(--status-green);font-weight:600}.status-icon.pending{color:var(--text-muted)}.editor-panel{flex:1 1 auto;min-width:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;display:flex;flex-direction:column}.content-form{display:flex;flex-direction:column;height:100%}.form-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);border-bottom:1px solid var(--border-color);background:var(--bg-elevated)}.page-info{display:flex;align-items:center;gap:var(--spacing-sm)}.page-info h3{margin:0;font-size:14px;color:var(--text-primary)}.action-badge{padding:2px 8px;font-size:10px;font-weight:600;text-transform:uppercase;border-radius:var(--radius-sm)}.action-badge.action-retain{background:rgba(59,130,246,.15);color:var(--status-blue)}.action-badge.action-protect{background:rgba(139,92,246,.15);color:var(--status-purple)}.action-badge.action-migrate{background:rgba(249,115,22,.15);color:var(--status-orange)}.action-badge.action-create{background:rgba(34,197,94,.15);color:var(--status-green)}.btn-regenerate{padding:6px 12px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:12px;cursor:pointer}.btn-regenerate:hover{border-color:var(--accent-color);color:var(--accent-color)}.form-fields{flex:1;padding:var(--spacing-md);overflow-y:auto}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase}.form-input{width:100%;padding:var(--spacing-sm);background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:13px}.form-textarea{width:100%;padding:var(--spacing-sm);background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:13px;resize:vertical;font-family:inherit}.form-textarea.brief{font-family:monospace;font-size:12px;line-height:1.5}.char-count{display:block;margin-top:4px;font-size:11px;color:var(--text-muted);text-align:right}.suggestions-list{margin:0;padding-left:var(--spacing-lg)}.suggestions-list li{margin-bottom:var(--spacing-xs);font-size:13px;color:var(--text-secondary)}.form-actions{padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.btn-save{padding:8px 16px;background:var(--accent-color);border:none;border-radius:var(--radius-sm);color:#fff;font-size:13px;font-weight:500;cursor:pointer}.no-content,.no-selection{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:var(--spacing-xl);text-align:center;color:var(--text-secondary)}.btn-generate{margin-top:var(--spacing-md);padding:8px 16px;background:var(--accent-color);border:none;border-radius:var(--radius-sm);color:#fff;font-size:13px;cursor:pointer}.action-bar{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);flex-shrink:0}.completion-status{font-size:13px}.status-complete{color:var(--status-green);font-weight:500}.status-incomplete{color:var(--text-secondary)}.btn-confirm{padding:10px 24px;background:var(--accent-color);border:none;border-radius:var(--radius-md);color:#fff;font-size:14px;font-weight:500;cursor:pointer}.btn-confirm:hover{opacity:.9}.btn-confirm:disabled{opacity:.5;cursor:not-allowed}.start-generation{flex:1;display:flex;align-items:center;justify-content:center}.empty-state{text-align:center;padding:var(--spacing-xl)}.empty-icon{font-size:48px;display:block;margin-bottom:var(--spacing-md)}.empty-state h4{margin:0 0 var(--spacing-sm);color:var(--text-primary)}.empty-state>p{margin:0 0 var(--spacing-lg);color:var(--text-secondary);font-size:14px}.btn-start{padding:12px 32px;background:var(--accent-color);border:none;border-radius:var(--radius-md);color:#fff;font-size:14px;font-weight:500;cursor:pointer}.code-generation-step{display:flex;flex-direction:column;gap:var(--spacing-lg);flex:1 1 0;min-height:0;overflow:hidden}.code-generation-step .step-header{flex-shrink:0}.code-generation-step .step-header h2{margin:0 0 var(--spacing-xs);color:var(--text-primary);font-size:20px}.code-generation-step .step-header p{margin:0;color:var(--text-secondary);font-size:14px}.code-generation-step .step-loading{display:flex;align-items:center;justify-content:center;padding:var(--spacing-xl);color:var(--text-secondary)}.code-generation-step .stats-row{display:flex;gap:var(--spacing-md);flex-wrap:wrap;flex-shrink:0}.code-generation-step .stat-card{flex:1;min-width:80px;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);text-align:center}.code-generation-step .stat-card.stat-content{border-left:3px solid var(--status-green)}.code-generation-step .stat-card.stat-files{border-left:3px solid var(--status-blue)}.code-generation-step .stat-value{display:block;font-size:20px;font-weight:600;color:var(--text-primary)}.code-generation-step .stat-label{font-size:11px;color:var(--text-secondary)}.code-generation-step .generation-progress{padding:var(--spacing-lg);background:var(--bg-surface);border:1px solid var(--accent-color);border-radius:var(--radius-md);text-align:center}.code-generation-step .progress-header{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);font-size:14px;color:var(--text-primary)}.code-generation-step .progress-icon{font-size:18px;animation:spin 2s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.code-generation-step .progress-bar{height:8px;background:var(--bg-elevated);border-radius:4px;overflow:hidden;margin-bottom:var(--spacing-sm)}.code-generation-step .progress-fill{height:100%;background:var(--accent-color);border-radius:4px;transition:width .3s ease}.code-generation-step .progress-text{font-size:12px;color:var(--text-secondary)}.code-preview-layout{display:flex;gap:var(--spacing-md);flex:1 1 0;min-height:0;overflow:hidden}.file-list-panel{flex:0 0 280px;display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.file-list-panel .panel-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-elevated);border-bottom:1px solid var(--border-color)}.file-list-panel .panel-header h3{margin:0;font-size:12px;font-weight:600;color:var(--text-primary);text-transform:uppercase}.file-list-panel .file-count{font-size:11px;color:var(--text-secondary)}.file-tree{flex:1;overflow-y:auto;padding:var(--spacing-xs)}.file-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast)}.file-item:hover{background:var(--bg-hover)}.file-item.selected{background:var(--primary-color-alpha)}.file-item .file-icon{font-size:14px}.file-item .file-name{font-size:13px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-panel{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-elevated);border-bottom:1px solid var(--border-color)}.preview-header .file-info{display:flex;align-items:center;gap:var(--spacing-sm)}.preview-header .file-icon{font-size:14px}.preview-header .file-path{font-size:12px;font-family:monospace;color:var(--text-secondary)}.file-type-badge{padding:2px 8px;font-size:10px;font-weight:600;text-transform:uppercase;background:var(--accent-color-alpha);color:var(--accent-color);border-radius:var(--radius-sm)}.code-content{flex:1;overflow:auto;padding:var(--spacing-md);background:var(--bg-elevated)}.code-content pre{margin:0;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px;line-height:1.5}.code-content code{color:var(--text-primary);white-space:pre}.preview-panel .no-selection{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary);font-size:14px}.code-generation-step .action-bar{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);flex-shrink:0}.generation-info{font-size:13px}.generation-info .status-complete{color:var(--status-green);font-weight:500}.action-buttons{display:flex;gap:var(--spacing-sm)}.btn-regenerate{padding:8px 16px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:13px;cursor:pointer}.btn-regenerate:hover{border-color:var(--accent-color)}.btn-regenerate:disabled{opacity:.5;cursor:not-allowed}.code-generation-step .btn-confirm{padding:10px 24px;background:var(--accent-color);border:none;border-radius:var(--radius-md);color:#fff;font-size:14px;font-weight:500;cursor:pointer}.code-generation-step .btn-confirm:hover{opacity:.9}.code-generation-step .start-generation{flex:1;display:flex;align-items:center;justify-content:center}.code-generation-step .empty-state{text-align:center;padding:var(--spacing-xl)}.code-generation-step .empty-icon{font-size:48px;display:block;margin-bottom:var(--spacing-md)}.code-generation-step .empty-state h4{margin:0 0 var(--spacing-sm);color:var(--text-primary)}.code-generation-step .empty-state>p{margin:0 0 var(--spacing-lg);color:var(--text-secondary);font-size:14px}.code-generation-step .btn-start{padding:12px 32px;background:var(--accent-color);border:none;border-radius:var(--radius-md);color:#fff;font-size:14px;font-weight:500;cursor:pointer}.code-generation-step .btn-start:hover{opacity:.9}.seo-builder-page{flex:1 1 0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.setup-content{width:100%}.setup-header{margin-bottom:var(--spacing-xl)}.setup-header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-lg)}.setup-header h2{margin:0 0 var(--spacing-sm);color:var(--text-primary);font-size:24px}.setup-header p{margin:0;color:var(--text-secondary)}.btn-add-project{padding:var(--spacing-sm) var(--spacing-lg);background:var(--accent-color);border:none;border-radius:var(--radius-md);color:#fff;font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast)}.btn-add-project:hover{opacity:.9}.selected-project-card{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);background:var(--primary-bg);border:1px solid var(--primary-border);border-radius:var(--radius-lg);margin-bottom:var(--spacing-xl)}.project-info h3{margin:0 0 var(--spacing-xs);color:var(--text-primary);font-size:18px}.project-info a{color:var(--accent-color);text-decoration:none;font-size:14px}.project-info a:hover{text-decoration:underline}.project-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.btn-change{padding:var(--spacing-xs) var(--spacing-md);background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;font-size:13px}.btn-change:hover{background:var(--bg-hover);color:var(--text-primary)}.kebab-menu{position:relative}.kebab-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:18px;cursor:pointer;transition:all var(--transition-fast)}.kebab-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.kebab-dropdown{position:absolute;top:100%;right:0;margin-top:4px;min-width:150px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100;overflow:hidden}.kebab-item{display:block;width:100%;padding:var(--spacing-sm) var(--spacing-md);background:none;border:none;text-align:left;font-size:13px;color:var(--text-primary);cursor:pointer;transition:background var(--transition-fast)}.kebab-item:hover{background:var(--bg-hover)}.kebab-item.archive{color:var(--status-red)}.kebab-item.archive:hover{background:var(--status-red-bg)}.project-list{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl)}.project-item{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-lg);padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.project-item:hover{background:var(--bg-hover);border-color:var(--accent-color)}.project-item-info{flex-shrink:0;min-width:200px}.project-item-progress{flex:1;display:flex;justify-content:flex-end}.project-name{font-weight:500;color:var(--text-primary);margin-bottom:4px}.project-website{font-size:13px;color:var(--text-secondary)}.project-progress{display:flex;align-items:flex-start}.stage-item{display:flex;flex-direction:column;align-items:center;min-width:60px}.stage-icon{width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:12px;border-radius:50%;flex-shrink:0}.stage-icon.pending{color:var(--text-tertiary)}.stage-icon.in-progress{color:var(--status-blue)}.stage-icon.completed{color:var(--status-green);font-weight:600}.stage-icon.failed{color:var(--status-red);font-weight:600}.stage-connector{width:30px;height:2px;background:var(--border-color);flex-shrink:0;align-self:flex-start;margin-top:8px}.stage-label{display:block;font-size:11px;color:var(--text-secondary);margin-top:6px;text-align:center;white-space:nowrap;line-height:1.2}.stage-item.completed .stage-label{color:var(--status-green)}.stage-item.in_progress .stage-label,.stage-item.processing .stage-label{color:var(--status-blue)}.stage-item.failed .stage-label{color:var(--status-red)}.no-projects{padding:var(--spacing-xl);text-align:center;background:var(--bg-surface);border:1px dashed var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary)}.setup-next{padding:var(--spacing-lg);background:var(--status-green-bg);border:1px solid var(--status-green);border-radius:var(--radius-md);text-align:center}.setup-next p{margin:0 0 var(--spacing-md);color:var(--text-primary)}.btn-start{padding:var(--spacing-sm) var(--spacing-xl);background:var(--status-green);border:none;border-radius:var(--radius-md);color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:opacity var(--transition-fast)}.btn-start:hover{opacity:.9}.keywords-review-content{max-width:800px}.review-header{margin-bottom:var(--spacing-lg)}.review-header h2{margin:0 0 var(--spacing-sm);color:var(--text-primary);font-size:24px}.review-header p{margin:0;color:var(--text-secondary)}.review-notice{display:flex;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--status-amber-bg);border:1px solid var(--status-amber);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg)}.notice-icon{font-size:20px;flex-shrink:0}.notice-text strong{display:block;margin-bottom:4px;color:var(--text-primary)}.notice-text p{margin:0;font-size:13px;color:var(--text-secondary)}.review-placeholder{padding:var(--spacing-xl);background:var(--bg-surface);border:1px dashed var(--border-color);border-radius:var(--radius-md);text-align:center;color:var(--text-secondary)}.review-placeholder p{margin:0 0 var(--spacing-sm)}.review-placeholder p:last-child{margin:0}.no-project-selected{display:flex;align-items:center;justify-content:center;height:200px;color:var(--text-secondary)}.unknown-task{padding:var(--spacing-xl);text-align:center;color:var(--text-secondary)}.selected-project-details{display:flex;flex-direction:column;gap:var(--spacing-lg)}.project-details-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg)}.project-details-card .card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-color)}.project-details-card .card-header h3{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.card-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.btn-edit,.btn-cancel,.btn-save{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);font-size:13px;cursor:pointer;transition:all var(--transition-fast)}.btn-edit{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.btn-edit:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-cancel{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.btn-cancel:hover{background:var(--bg-hover);color:var(--text-primary)}.btn-save{background:var(--accent-color);border:none;color:#fff}.btn-save:hover{opacity:.9}.btn-save:disabled{opacity:.5;cursor:not-allowed}.btn-start-top{padding:var(--spacing-sm) var(--spacing-lg);background:var(--status-green);border:none;border-radius:var(--radius-sm);color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:opacity var(--transition-fast)}.btn-start-top:hover{opacity:.9}.form-fields{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.form-fields-left{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-fields-right{display:flex;flex-direction:column}.form-fields-right .context-group{flex:1;display:flex;flex-direction:column}.form-fields-right .form-textarea{flex:1;min-height:80px}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label{font-size:12px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.form-input{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:14px;color:var(--text-primary);transition:border-color var(--transition-fast)}.form-value{font-size:14px;color:var(--text-primary);padding:var(--spacing-sm) 0}.form-value a{color:var(--accent-color);text-decoration:none}.form-value a:hover{text-decoration:underline}.data-source-badge{display:flex;align-items:center}.badge{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:12px;font-weight:500}.badge.gsc{background:var(--status-green-bg);color:var(--status-green)}.badge.dfseo{background:var(--status-amber-bg);color:var(--status-amber)}.gsc-status-section{display:flex;flex-direction:column;gap:var(--spacing-md)}.status-row{display:flex;align-items:center;gap:var(--spacing-sm);font-size:14px;color:var(--text-primary)}.status-icon{font-size:16px;width:20px;text-align:center;flex-shrink:0}.status-icon.checking{color:var(--text-secondary)}.status-icon.connected{color:var(--status-green);font-weight:600}.status-icon.not-connected{color:var(--text-tertiary)}.status-icon.error{color:var(--status-red);font-weight:600}.gsc-not-connected{display:flex;flex-direction:column;gap:var(--spacing-md)}.gsc-instruction{margin:0;font-size:13px;color:var(--text-secondary);padding-left:28px}.service-account-box{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);margin-left:28px;max-width:fit-content}.service-account-box code{font-family:var(--font-mono);font-size:13px;color:var(--text-primary);word-break:break-all}.btn-copy{padding:var(--spacing-xs);background:transparent;border:none;cursor:pointer;font-size:14px;opacity:.7;transition:opacity var(--transition-fast)}.btn-copy:hover{opacity:1}.btn-check-gsc{padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px solid var(--accent-color);border-radius:var(--radius-sm);color:var(--accent-color);font-size:13px;cursor:pointer;margin-left:28px;max-width:fit-content;transition:all var(--transition-fast)}.btn-check-gsc:hover{background:var(--accent-color);color:#fff}.btn-check-gsc:disabled{opacity:.5;cursor:not-allowed}.label-hint{font-size:12px;color:var(--text-tertiary);font-weight:400}.context-group{position:relative}.form-textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text-primary);font-size:14px;font-family:inherit;line-height:1.4;resize:none}.form-textarea::placeholder{color:var(--text-tertiary)}.form-textarea:focus{outline:none;border-color:var(--accent-color)}.btn-save-inline{position:absolute;right:8px;bottom:8px;padding:4px 12px;background:var(--accent-color);border:none;border-radius:var(--radius-sm);color:#fff;font-size:12px;font-weight:500;cursor:pointer;transition:opacity var(--transition-fast)}.btn-save-inline:hover{opacity:.9}.btn-save-inline:disabled{opacity:.5;cursor:not-allowed}.performance-status-section,.performance-missing{display:flex;flex-direction:column;gap:var(--spacing-md)}.performance-instruction{margin:0;font-size:13px;color:var(--text-secondary);padding-left:28px}.setup-next.success{background:var(--status-green-bg);border:1px solid var(--status-green)}.setup-next.blocked{background:var(--status-red-bg);border:1px solid var(--status-red)}.btn-discovery{padding:var(--spacing-sm) var(--spacing-xl);background:var(--accent-color);border:none;border-radius:var(--radius-md);color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:opacity var(--transition-fast)}.btn-discovery:hover{opacity:.9}.new-project-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.new-project-form .form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.new-project-form .form-input{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:14px;color:var(--text-primary)}.new-project-form .form-input:focus{outline:none;border-color:var(--accent-color)}.form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.step-error{padding:var(--spacing-xl);text-align:center;color:var(--text-secondary)}.step-error h3{color:var(--danger-color);margin-bottom:var(--spacing-md)}.step-error p{margin-bottom:var(--spacing-lg);font-family:monospace;background:var(--bg-surface-raised);padding:var(--spacing-md);border-radius:var(--radius-sm);word-break:break-word}.step-error button{padding:var(--spacing-sm) var(--spacing-lg);background:var(--accent-color);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer}.message.assistant .message-avatar{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;box-shadow:0 2px 8px #667eea66;font-size:16px}.message-bubble{display:flex;flex-direction:column;gap:4px}.message.user .message-content{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border-top-right-radius:4px;box-shadow:0 2px 8px #667eea4d}.message-content em{font-style:italic}.message-content code{background:var(--bg-tertiary);padding:2px 6px;border-radius:4px;font-family:SF Mono,Monaco,monospace;font-size:13px}.message-content .para-break{height:12px}.message-content ol,.message-content ul{margin:8px 0;padding-left:24px}.message-content li{margin:4px 0}.message-time{font-size:11px;color:var(--text-tertiary);padding:0 4px}.message.user .message-time{text-align:right}.progress-message{display:flex;gap:12px;max-width:500px;width:100%}.progress-message-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0;background:linear-gradient(135deg,var(--accent-color) 0%,var(--accent-color-dark, #4a90d9) 100%)}.progress-message-content{flex:1;padding:16px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:4px 12px 12px}.progress-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.progress-title{font-weight:600;color:var(--text-primary);font-size:14px}.progress-spinner{width:14px;height:14px;border:2px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin 1s linear infinite}.progress-steps{display:flex;flex-direction:column;gap:8px}.progress-step{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--text-secondary);padding:4px 0}.progress-step.complete{color:var(--text-primary)}.progress-step.running{color:var(--accent-color)}.progress-step.error{color:var(--status-red)}.step-icon{width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;flex-shrink:0}.step-icon.complete{color:var(--status-green)}.step-icon.running{color:var(--accent-color);animation:pulse 1.5s ease-in-out infinite}.step-icon.pending{color:var(--text-tertiary)}.step-icon.error{color:var(--status-red)}.step-name{flex:1}.step-result{font-size:12px;color:var(--text-tertiary);background:var(--bg-hover);padding:2px 8px;border-radius:4px}.step-error{font-size:12px;color:var(--status-red);background:var(--status-red-bg);padding:2px 8px;border-radius:4px}.progress-actions{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-color)}.progress-actions:empty{display:none}.progress-btn{padding:6px 12px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.progress-btn.cancel{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.progress-btn.cancel:hover{background:var(--bg-hover);color:var(--text-primary)}.progress-btn.retry{background:var(--accent-color);border:none;color:#fff}.progress-btn.retry:hover{opacity:.9}.chat-interface{flex:1;height:100%;display:flex;flex-direction:column;background:var(--bg-primary);overflow:hidden}.chat-header{flex-shrink:0;padding:16px 24px;background:var(--bg-surface);border-bottom:1px solid var(--border-color);display:flex;align-items:center;justify-content:space-between}.chat-header .header-left{display:flex;align-items:center;gap:16px}.chat-header .project-info h2{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.chat-header .entity-badge{display:inline-block;margin-top:4px;padding:2px 8px;background:rgba(74,144,226,.1);color:var(--primary, #4a90e2);border-radius:4px;font-size:12px}.chat-header .header-right .phase-indicator{padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;text-transform:uppercase}.phase-indicator.project,.phase-indicator.context{background:var(--bg-tertiary);color:var(--text-secondary)}.phase-indicator.autorun{background:var(--status-amber-bg);color:var(--status-amber)}.phase-indicator.review,.phase-indicator.finalize{background:var(--accent-color-subtle);color:var(--accent-color)}.phase-indicator.complete{background:var(--status-green-bg);color:var(--status-green)}.chat-interface .chat-messages{flex:1;min-height:0;max-height:none;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:16px}.chat-messages::-webkit-scrollbar{width:8px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.loading-indicator{display:flex;justify-content:center;padding:20px}.loading-dots,.typing-dots{display:flex;gap:4px}.loading-dots span,.typing-dots span{width:8px;height:8px;background:var(--text-tertiary);border-radius:50%;animation:bounce 1.4s ease-in-out infinite}.loading-dots span:nth-child(1),.typing-dots span:nth-child(1){animation-delay:-.32s}.loading-dots span:nth-child(2),.typing-dots span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.message{display:flex;gap:12px;max-width:800px}.message.user{flex-direction:row-reverse;margin-left:auto}.message-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;flex-shrink:0}.message.assistant .message-avatar{background:linear-gradient(135deg,#4a90e2,#4a90d9);color:#fff}.message.user .message-avatar{background:var(--bg-tertiary);color:var(--text-secondary)}.message-content{padding:12px 16px;border-radius:12px;line-height:1.5;font-size:14px}.message.assistant .message-content{background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-primary);border-top-left-radius:4px}.message.user .message-content{background:var(--primary, #4a90e2);color:#fff;border-top-right-radius:4px}.message-content.typing{padding:16px 20px}.message-content strong{font-weight:600}.message-content code{background:var(--bg-tertiary);padding:2px 6px;border-radius:4px;font-family:monospace;font-size:13px}.message.user .message-content code{background:rgba(255,255,255,.2)}.suggestions-bar{flex-shrink:0;display:flex;flex-wrap:wrap;gap:8px;padding:12px 24px;background:var(--bg-surface);border-top:1px solid var(--border-color)}.suggestion-chip{padding:8px 16px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:20px;font-size:13px;color:var(--text-primary);cursor:pointer}.suggestion-chip:hover{background:var(--bg-hover);border-color:var(--primary, #4a90e2);color:var(--primary, #4a90e2)}.chat-input-area{flex-shrink:0;padding:12px 24px;background:var(--bg-surface);border-top:1px solid var(--border-color)}.input-container{display:flex;align-items:flex-end;gap:12px;max-width:800px;margin:0 auto}.input-container textarea{flex:1;padding:12px 16px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px;font-size:14px;font-family:inherit;color:var(--text-primary);resize:none;min-height:44px;max-height:124px;line-height:1.4}.input-container textarea:focus{outline:none;border-color:var(--primary, #4a90e2)}.input-container textarea::placeholder{color:var(--text-tertiary)}.input-container textarea::-webkit-scrollbar{width:6px}.input-container textarea::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.input-container textarea{scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}.send-button{width:44px;height:44px;border:none;background:var(--primary, #4a90e2);border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;flex-shrink:0}.send-button:hover:not(:disabled){opacity:.9}.send-button:disabled{opacity:.5;cursor:not-allowed}.date-separator{display:flex;align-items:center;justify-content:center;padding:8px 0;margin:8px 0}.date-separator span{padding:6px 16px;background:var(--bg-tertiary);border-radius:8px;font-size:12px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px}.current-structure-review{display:flex;flex-direction:column;height:100%;overflow:hidden}.current-structure-review.loading,.current-structure-review.error,.current-structure-review.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 24px;color:var(--text-secondary)}.current-structure-review .loading-spinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin 1s linear infinite}.current-structure-review .error-icon{width:40px;height:40px;background:var(--status-error-bg);color:var(--status-error);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600}.current-structure-review .empty-icon{font-size:48px;opacity:.5}.current-structure-review .review-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-color);flex-shrink:0}.current-structure-review .stats{display:flex;gap:16px}.current-structure-review .stat{font-size:12px;color:var(--text-secondary)}.current-structure-review .stat strong{color:var(--text-primary);font-weight:600}.current-structure-review .tree-container{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.current-structure-review .tree-header{display:flex;align-items:center;padding:8px 12px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.current-structure-review .tree-header-title{flex:1}.current-structure-review .tree-header-meta{display:flex;align-items:center;gap:8px}.current-structure-review .tree-header-url{width:140px;text-align:right}.current-structure-review .tree-header-type{width:60px}.current-structure-review .tree-header-impressions{width:50px;text-align:right}.current-structure-review .tree-header-position{width:36px;text-align:center}.current-structure-review .tree-content{flex:1;min-height:0;overflow-y:auto;padding:4px 8px;font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace}.current-structure-review .tree-content::-webkit-scrollbar{width:8px}.current-structure-review .tree-content::-webkit-scrollbar-track{background:transparent}.current-structure-review .tree-content::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.current-structure-review .tree-content::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.current-structure-review .tree-row{display:flex;align-items:center;gap:4px;padding:3px 6px;border-radius:3px;cursor:pointer;transition:background .1s ease;font-size:12px}.current-structure-review .tree-row:hover{background:var(--bg-hover)}.current-structure-review .tree-row.selected{background:var(--accent-bg)}.current-structure-review .tree-row.not-relevant{opacity:.5}.current-structure-review .tree-prefix{white-space:pre;color:var(--text-muted);font-size:11px;-webkit-user-select:none;user-select:none;flex-shrink:0}.current-structure-review .tree-title{flex:1;font-size:12px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.current-structure-review .tree-meta{display:flex;align-items:center;gap:8px;flex-shrink:0}.current-structure-review .tree-url{font-size:10px;color:var(--text-muted);width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}.current-structure-review .tree-type{font-size:10px;color:var(--text-secondary);text-transform:capitalize;width:60px}.current-structure-review .tree-impressions{font-size:10px;color:var(--text-secondary);width:50px;text-align:right}.current-structure-review .tree-position{font-size:10px;color:var(--accent-color);width:36px;text-align:center;font-weight:500}.current-structure-review .no-results{padding:24px;text-align:center;color:var(--text-muted);font-family:var(--font-sans)}.offerings-review{display:flex;flex-direction:column;height:100%;overflow:hidden}.offerings-review.loading,.offerings-review.error,.offerings-review.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 24px;color:var(--text-secondary)}.offerings-review .loading-spinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin 1s linear infinite}.offerings-review .error-icon{width:40px;height:40px;background:var(--status-error-bg);color:var(--status-error);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600}.offerings-review .empty-icon{font-size:48px;opacity:.5}.offerings-review.master-detail{flex-direction:row;height:100%}.master-pane{width:280px;min-width:240px;display:flex;flex-direction:column;border-right:1px solid var(--border-color);background:var(--bg-surface);flex-shrink:0}.pane-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-color);background:var(--bg-tertiary);flex-shrink:0}.pane-title{font-size:12px;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.03em}.pane-count{font-size:11px;color:var(--text-muted);background:var(--bg-primary);padding:2px 8px;border-radius:10px}.offerings-list{flex:1;overflow-y:auto;padding:8px}.offerings-list::-webkit-scrollbar{width:8px}.offerings-list::-webkit-scrollbar-track{background:transparent}.offerings-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.offerings-list::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.offering-item{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-radius:6px;cursor:pointer;transition:all .15s ease;margin-bottom:4px}.offering-item:hover{background:var(--bg-hover)}.offering-item.selected{background:var(--accent-color-subtle);border-left:3px solid var(--accent-color);padding-left:9px}.offering-main{display:flex;align-items:center;justify-content:space-between;gap:8px}.offering-name{font-size:13px;font-weight:500;color:var(--text-primary);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.offering-type{font-size:10px;padding:2px 6px;border-radius:4px;text-transform:capitalize;background:var(--bg-tertiary);color:var(--text-muted);flex-shrink:0}.offering-type.product{background:var(--status-success-bg);color:var(--status-success)}.offering-type.service{background:var(--status-info-bg);color:var(--status-info)}.offering-stats{font-size:11px;color:var(--text-muted)}.offering-stats .keyword-count strong{color:var(--accent-color)}.detail-pane{flex:1;display:flex;flex-direction:column;min-width:0;background:var(--bg-primary)}.detail-pane .pane-header{background:var(--bg-surface)}.selected-offering-info{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.selected-offering-info .pane-title{text-transform:none;letter-spacing:normal;font-size:14px}.offering-description{font-size:12px;color:var(--text-secondary);font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-pane .pane-count{white-space:nowrap}.keywords-list{flex:1;overflow-y:auto;padding:8px 12px}.keywords-list::-webkit-scrollbar{width:8px}.keywords-list::-webkit-scrollbar-track{background:transparent}.keywords-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.keywords-list::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.keyword-row{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:6px;margin-bottom:4px;transition:background .15s ease}.keyword-row:hover{background:var(--bg-hover)}.keyword-row.selected{background:var(--status-success-bg)}.keyword-toggle{position:relative;display:inline-block;width:36px;height:20px;flex-shrink:0}.keyword-toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:20px;transition:.2s}.toggle-slider:before{position:absolute;content:"";height:14px;width:14px;left:2px;bottom:2px;background-color:#fff;border-radius:50%;transition:.2s;box-shadow:0 1px 3px #0003}.keyword-toggle input:checked+.toggle-slider{background-color:var(--status-green);border-color:var(--status-green)}.keyword-toggle input:checked+.toggle-slider:before{transform:translate(16px)}.keyword-info{flex:1;min-width:0}.keyword-text{font-size:13px;color:var(--text-primary);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.keyword-metrics{display:flex;align-items:center;gap:8px;flex-shrink:0}.metric{font-size:11px;padding:2px 6px;border-radius:4px;font-weight:500}.metric.volume{background:var(--bg-tertiary);color:var(--text-secondary)}.metric.difficulty{min-width:28px;text-align:center}.metric.difficulty.easy{background:var(--status-success-bg);color:var(--status-success)}.metric.difficulty.medium{background:var(--status-amber-bg);color:var(--status-amber)}.metric.difficulty.hard{background:var(--status-error-bg);color:var(--status-error)}.no-keywords,.no-selection{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted);font-size:13px}.competitors-review{display:flex;flex-direction:column;height:100%;overflow:hidden}.competitors-review.loading,.competitors-review.error,.competitors-review.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 24px;color:var(--text-secondary)}.competitors-review .loading-spinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin 1s linear infinite}.competitors-review .error-icon{width:40px;height:40px;background:var(--status-error-bg);color:var(--status-error);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600}.competitors-review .empty-icon{font-size:48px;opacity:.5}.competitors-review .analyze-btn{margin-top:16px;padding:10px 20px;background:var(--accent-color);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .15s ease}.competitors-review .analyze-btn:hover:not(:disabled){opacity:.9}.competitors-review .analyze-btn:disabled{opacity:.6;cursor:not-allowed}.competitors-review .review-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border-color);background:var(--bg-tertiary);flex-shrink:0}.competitors-review .stats{display:flex;gap:16px}.competitors-review .stat{font-size:12px;color:var(--text-secondary)}.competitors-review .stat strong{color:var(--text-primary);font-weight:600}.competitors-review .fetch-sitemaps-btn{padding:6px 12px;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-color);border-radius:4px;font-size:12px;font-weight:500;cursor:pointer;transition:background .15s ease}.competitors-review .fetch-sitemaps-btn:hover:not(:disabled){background:var(--bg-hover)}.competitors-review .fetch-sitemaps-btn:disabled{opacity:.6;cursor:not-allowed}.competitors-review .fetching-status{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--status-info-bg);color:var(--status-info);font-size:12px;border-bottom:1px solid var(--border-color)}.competitors-review .status-spinner{width:14px;height:14px;border:2px solid var(--status-info);border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}.competitors-review .table-container{flex:1;overflow:auto}.competitors-review .table-container::-webkit-scrollbar{width:8px;height:8px}.competitors-review .table-container::-webkit-scrollbar-track{background:transparent}.competitors-review .table-container::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.competitors-review .table-container::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.competitors-table{width:100%;border-collapse:collapse;font-size:13px}.competitors-table thead{position:sticky;top:0;z-index:10}.competitors-table th{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);padding:10px 12px;text-align:left;font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.competitors-table td{padding:10px 12px;border-bottom:1px solid var(--border-color);color:var(--text-primary);vertical-align:middle}.competitor-row:hover{background:var(--bg-hover)}.competitor-row.selected{background:var(--status-success-bg)}.col-select{width:60px;text-align:center}.col-domain{min-width:200px}.col-position,.col-appearances{width:100px;text-align:center}.col-urls{width:80px;text-align:center}.select-cell{text-align:center}.domain-cell .domain-name{font-weight:500}.position-cell{text-align:center}.position-value{font-weight:500;color:var(--text-primary)}.position-none{color:var(--text-muted)}.appearances-cell{text-align:center;color:var(--text-secondary)}.urls-cell{text-align:center}.urls-cell .urls-count{font-weight:500;color:var(--text-primary)}.urls-cell .urls-none{color:var(--text-muted)}.toggle-label{position:relative;display:inline-block;width:36px;height:20px}.toggle-label input{opacity:0;width:0;height:0}.toggle-label .toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:20px;transition:.2s}.toggle-label .toggle-slider:before{position:absolute;content:"";height:14px;width:14px;left:2px;bottom:2px;background-color:#fff;border-radius:50%;transition:.2s;box-shadow:0 1px 3px #0003}.toggle-label input:checked+.toggle-slider{background-color:var(--status-green);border-color:var(--status-green)}.toggle-label input:checked+.toggle-slider:before{transform:translate(16px)}.clusters-review{display:flex;flex-direction:column;height:100%;overflow:hidden}.clusters-review.loading,.clusters-review.error,.clusters-review.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;color:var(--text-secondary);gap:12px}.clusters-review .loading-spinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin 1s linear infinite}.clusters-review .error-icon,.clusters-review .empty-icon{font-size:32px}.clusters-review .review-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px;border-bottom:1px solid var(--border-color);flex-shrink:0}.clusters-review .stats{display:flex;gap:16px}.clusters-review .stat{font-size:13px;color:var(--text-secondary)}.clusters-review .stat strong{color:var(--text-primary)}.clusters-review .sort-select{display:flex;align-items:center;gap:8px}.clusters-review .sort-select label{font-size:12px;color:var(--text-secondary)}.clusters-review .sort-select select{padding:6px 10px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:4px;font-size:12px;color:var(--text-primary);cursor:pointer}.clusters-review .sort-select select:focus{outline:none;border-color:var(--accent-color)}.clusters-review .audit-panel{margin:0 16px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-surface);overflow:hidden}.clusters-review .audit-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;cursor:pointer;transition:background .15s ease}.clusters-review .audit-header:hover{background:var(--bg-hover)}.clusters-review .audit-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:var(--text-primary)}.clusters-review .audit-icon{font-size:14px}.clusters-review .audit-icon.loading{animation:pulse 1.5s infinite}.clusters-review .audit-icon.success{color:var(--status-green)}.clusters-review .audit-icon.warning{color:var(--status-amber)}.clusters-review .audit-icon.error{color:var(--status-red)}.clusters-review .audit-badge{padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600}.clusters-review .audit-badge.success{background:var(--status-green-bg);color:var(--status-green)}.clusters-review .audit-badge.warning{background:var(--status-amber-bg);color:var(--status-amber)}.clusters-review .audit-badge.error{background:var(--status-red-bg);color:var(--status-red)}.clusters-review .fix-btn{padding:4px 12px;background:var(--accent-color);border:none;border-radius:4px;font-size:11px;font-weight:600;color:#fff;cursor:pointer;transition:all .15s ease}.clusters-review .fix-btn:hover:not(:disabled){background:var(--accent-color-hover, #0052a3);transform:translateY(-1px)}.clusters-review .fix-btn:disabled{opacity:.7;cursor:not-allowed}.clusters-review .fix-btn.fixing{animation:pulse 1s infinite}.clusters-review .audit-toggle{font-size:10px;color:var(--text-secondary)}.clusters-review .audit-content{padding:16px;border-top:1px solid var(--border-color);background:var(--bg-primary)}.clusters-review .audit-loading,.clusters-review .audit-empty{text-align:center;color:var(--text-secondary);font-size:13px;padding:16px}.clusters-review .audit-success{text-align:center;color:var(--status-green)}.clusters-review .audit-success p{margin:0;font-size:14px;font-weight:500}.clusters-review .audit-success .audit-stats{margin-top:8px;font-size:12px;font-weight:400;color:var(--text-secondary)}.clusters-review .audit-issues{display:flex;flex-direction:column;gap:16px}.clusters-review .audit-issue{padding:12px;border-radius:6px;border-left:3px solid}.clusters-review .audit-issue.high{background:var(--status-red-bg);border-left-color:var(--status-red)}.clusters-review .audit-issue.medium{background:var(--status-amber-bg);border-left-color:var(--status-amber)}.clusters-review .issue-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.clusters-review .issue-header h4{margin:0;font-size:13px;font-weight:600;color:var(--text-primary)}.clusters-review .severity-badge{padding:2px 6px;border-radius:4px;font-size:10px;font-weight:600}.clusters-review .severity-badge.high{background:var(--status-red);color:#fff}.clusters-review .severity-badge.medium{background:var(--status-amber);color:#fff}.clusters-review .issue-description{margin:0 0 12px;font-size:12px;color:var(--text-secondary)}.clusters-review .issue-items{display:flex;flex-direction:column;gap:6px;max-height:200px;overflow-y:auto}.clusters-review .issue-item{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:8px;background:var(--bg-surface);border-radius:4px;font-size:12px}.clusters-review .issue-item .keyword{font-weight:600;color:var(--text-primary)}.clusters-review .issue-item .info,.clusters-review .issue-item .similarity{color:var(--text-secondary)}.clusters-review .issue-item .clusters{color:var(--accent-color);font-style:italic}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.clusters-review .clusters-list{flex:1;display:flex;flex-direction:column;gap:8px;overflow-y:auto;padding:16px}.clusters-review .clusters-list::-webkit-scrollbar{width:8px}.clusters-review .clusters-list::-webkit-scrollbar-track{background:transparent}.clusters-review .clusters-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.clusters-review .clusters-list::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.clusters-review .cluster-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px}.clusters-review .cluster-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;gap:12px}.clusters-review .cluster-info{display:flex;align-items:flex-start;gap:8px;flex:1;min-width:0}.clusters-review .cluster-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.clusters-review .cluster-name{margin:0;font-size:14px;font-weight:600;color:var(--text-primary)}.clusters-review .primary-keyword{font-size:12px;color:var(--text-secondary)}.clusters-review .cluster-metrics{display:flex;align-items:center;gap:8px;flex-shrink:0}.clusters-review .details-btn,.clusters-review .action-badge{width:60px;text-align:center}.clusters-review .metric{min-width:55px;text-align:right}.clusters-review .action-badge{padding:4px 0;border-radius:4px;font-size:10px;font-weight:600;text-transform:uppercase}.clusters-review .action-badge.create{background:var(--status-green-bg);color:var(--status-green)}.clusters-review .action-badge.update{background:var(--accent-color-subtle, rgba(0, 102, 204, .1));color:var(--accent-color)}.clusters-review .action-badge.retain,.clusters-review .action-badge.protect{background:var(--bg-tertiary);color:var(--text-secondary)}.clusters-review .action-badge.redirect,.clusters-review .action-badge.migrate{background:var(--status-amber-bg);color:var(--status-amber)}.clusters-review .action-badge.pending{background:var(--bg-tertiary);color:var(--text-tertiary)}.clusters-review .metric{font-size:11px;color:var(--text-secondary);white-space:nowrap}.clusters-review .metric.difficulty{padding:2px 6px;border-radius:4px}.clusters-review .metric.difficulty.easy{background:var(--status-green-bg);color:var(--status-green)}.clusters-review .metric.difficulty.medium{background:var(--status-amber-bg);color:var(--status-amber)}.clusters-review .metric.difficulty.hard{background:var(--status-red-bg);color:var(--status-red)}.clusters-review .details-btn{padding:4px 0;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;font-size:11px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.clusters-review .details-btn:hover{background:var(--bg-hover);border-color:var(--accent-color);color:var(--accent-color)}.clusters-review .cluster-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.clusters-review .cluster-modal{background:var(--bg-primary);border-radius:12px;width:100%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 40px #0003}.clusters-review .modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-color);flex-shrink:0}.clusters-review .modal-header h2{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.clusters-review .modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.clusters-review .modal-close:hover{background:var(--bg-hover);color:var(--text-primary)}.clusters-review .modal-content{padding:20px;overflow-y:auto;flex:1}.clusters-review .modal-section{margin-bottom:20px}.clusters-review .modal-section:last-child{margin-bottom:0}.clusters-review .modal-section h4{margin:0 0 10px;font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em}.clusters-review .url-link{display:block;padding:10px 12px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:6px;color:var(--accent-color);text-decoration:none;font-size:13px;word-break:break-all}.clusters-review .url-link:hover{background:var(--bg-hover);text-decoration:underline}.clusters-review .keywords-grid{display:flex;flex-wrap:wrap;gap:8px;max-height:200px;overflow-y:auto;padding:12px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:6px}.clusters-review .keywords-grid .keyword-tag{padding:4px 10px;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:4px;font-size:12px;color:var(--text-primary)}.clusters-review .no-keywords,.clusters-review .loading-keywords{color:var(--text-tertiary);font-style:italic;font-size:13px}.clusters-review .modal-stats{display:flex;gap:16px;padding:16px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:6px}.clusters-review .stat-item{display:flex;flex-direction:column;gap:4px}.clusters-review .stat-label{font-size:11px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.03em}.clusters-review .stat-value{font-size:16px;font-weight:600;color:var(--text-primary)}.clusters-review .stat-value.difficulty.easy{color:var(--status-green)}.clusters-review .stat-value.difficulty.medium{color:var(--status-amber)}.clusters-review .stat-value.difficulty.hard{color:var(--status-red)}.new-structure-review{display:flex;flex-direction:column;height:100%;overflow:hidden}.new-structure-review.loading,.new-structure-review.error,.new-structure-review.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 24px;color:var(--text-secondary)}.new-structure-review .loading-spinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin 1s linear infinite}.new-structure-review .error-icon{width:40px;height:40px;background:var(--status-error-bg);color:var(--status-error);border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600}.new-structure-review .empty-icon{font-size:48px;opacity:.5}.new-structure-review .review-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid var(--border-color);gap:16px;flex-wrap:wrap}.new-structure-review .stats{display:flex;gap:16px;flex-wrap:wrap}.new-structure-review .stat{font-size:13px;color:var(--text-secondary);display:flex;align-items:center;gap:6px}.new-structure-review .stat strong{color:var(--text-primary);font-weight:600}.new-structure-review .action-dot{width:8px;height:8px;border-radius:50%;background:var(--bg-tertiary)}.new-structure-review .action-dot.create{background:var(--status-success)}.new-structure-review .action-dot.update{background:var(--status-warning)}.new-structure-review .action-dot.retain,.new-structure-review .action-dot.protect{background:var(--status-info)}.new-structure-review .action-dot.redirect,.new-structure-review .action-dot.migrate{background:var(--accent-color)}.new-structure-review .filters{display:flex;gap:12px}.new-structure-review .filter-select{padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-surface);color:var(--text-primary);font-size:13px;cursor:pointer}.new-structure-review .pages-list{flex:1;overflow-y:auto;padding:8px 16px}.new-structure-review .pages-list::-webkit-scrollbar{width:8px}.new-structure-review .pages-list::-webkit-scrollbar-track{background:transparent}.new-structure-review .pages-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}.new-structure-review .pages-list::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.new-structure-review .page-card{margin-bottom:8px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.new-structure-review .page-card:hover{border-color:var(--border-hover)}.new-structure-review .page-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;cursor:pointer;gap:12px}.new-structure-review .page-main{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.new-structure-review .expand-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:16px;font-weight:500;flex-shrink:0}.new-structure-review .action-badge{padding:4px 8px;border-radius:4px;font-size:11px;font-weight:500;text-transform:uppercase;flex-shrink:0;background:var(--bg-tertiary);color:var(--text-secondary)}.new-structure-review .action-badge.create{background:var(--status-success-bg);color:var(--status-success)}.new-structure-review .action-badge.update{background:var(--status-warning-bg);color:var(--status-warning)}.new-structure-review .action-badge.retain{background:var(--status-info-bg);color:var(--status-info)}.new-structure-review .action-badge.protect{background:var(--accent-bg);color:var(--accent-color)}.new-structure-review .action-badge.redirect{background:var(--status-error-bg);color:var(--status-error)}.new-structure-review .action-badge.migrate{background:var(--bg-tertiary);color:var(--text-secondary)}.new-structure-review .page-info{display:flex;flex-direction:column;gap:2px;min-width:0}.new-structure-review .page-url{font-size:13px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.new-structure-review .cluster-name{font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.new-structure-review .page-metrics{display:flex;gap:8px;flex-shrink:0}.new-structure-review .metric{font-size:11px;color:var(--text-secondary);padding:4px 8px;background:var(--bg-tertiary);border-radius:4px}.new-structure-review .page-details{padding:12px 16px 12px 48px;border-top:1px solid var(--border-color);background:var(--bg-secondary)}.new-structure-review .detail-row{display:flex;gap:12px;margin-bottom:8px;font-size:13px}.new-structure-review .detail-row:last-child{margin-bottom:0}.new-structure-review .detail-row .label{color:var(--text-muted);flex-shrink:0;min-width:120px}.new-structure-review .detail-row .value{color:var(--text-primary)}.new-structure-review .detail-row .value.link{color:var(--accent-color);text-decoration:none}.new-structure-review .detail-row .value.link:hover{text-decoration:underline}.new-structure-review .no-results{text-align:center;padding:32px;color:var(--text-muted)}.content-editor-review{display:flex;height:100%;min-height:500px}.content-editor-review.loading,.content-editor-review.error,.content-editor-review.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px;color:var(--text-secondary)}.content-editor-review.loading .loading-spinner{width:24px;height:24px;border:2px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin .8s linear infinite}.content-editor-review.error .error-icon,.content-editor-review.empty .empty-icon{font-size:32px}.content-editor-review.error button,.content-editor-review.empty button{margin-top:8px;padding:8px 16px;background:var(--accent-color);color:#fff;border:none;border-radius:6px;cursor:pointer}.page-tree-panel{width:280px;min-width:220px;border-right:1px solid var(--border-color);display:flex;flex-direction:column;background:var(--bg-secondary)}.page-tree-header{padding:16px;border-bottom:1px solid var(--border-color)}.page-tree-header h4{margin:0 0 8px;font-size:14px;font-weight:600;color:var(--text-primary)}.page-stats{display:flex;gap:12px;font-size:12px;color:var(--text-secondary)}.page-stats .stat.approved{color:var(--success-color, #22c55e)}.page-tree-list{flex:1;overflow-y:auto;padding:8px}.page-tree-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:none;border:none;border-radius:6px;text-align:left;cursor:pointer;font-size:13px;color:var(--text-primary);transition:background .15s}.page-tree-item:hover{background:var(--bg-hover)}.page-tree-item.selected{background:var(--accent-color-light, rgba(59, 130, 246, .1));color:var(--accent-color)}.page-icon{flex-shrink:0}.page-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.page-status-dot.status-draft{background:var(--text-tertiary)}.page-status-dot.status-reviewed{background:var(--warning-color, #f59e0b)}.page-status-dot.status-approved{background:var(--success-color, #22c55e)}.page-children{margin-left:0}.page-tree-footer{padding:12px;border-top:1px solid var(--border-color)}.approve-all-btn{width:100%;padding:10px;background:var(--accent-color);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:opacity .15s}.approve-all-btn:hover{opacity:.9}.content-editor-panel{flex:1;overflow-y:auto;padding:24px}.no-page-selected{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-secondary)}.content-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.content-header-info h3{margin:0 0 4px;font-size:18px;font-weight:600;color:var(--text-primary)}.content-url{font-size:13px;color:var(--accent-color);font-family:monospace}.status-badge{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.status-badge.status-draft{background:var(--bg-tertiary);color:var(--text-secondary)}.status-badge.status-reviewed{background:rgba(245,158,11,.1);color:var(--warning-color, #f59e0b)}.status-badge.status-approved{background:rgba(34,197,94,.1);color:var(--success-color, #22c55e)}.content-section{margin-bottom:20px;padding:16px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-color)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-header h4{margin:0;font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.edit-btn{padding:4px 10px;background:transparent;border:1px solid var(--border-color);border-radius:4px;font-size:12px;color:var(--text-secondary);cursor:pointer;transition:all .15s}.edit-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.field-value{margin:0;font-size:15px;color:var(--text-primary);line-height:1.5}.edit-field input,.edit-field textarea{width:100%;padding:10px 12px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:6px;font-size:14px;color:var(--text-primary);resize:vertical}.edit-field input:focus,.edit-field textarea:focus{outline:none;border-color:var(--accent-color)}.edit-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.edit-actions button{padding:6px 14px;border-radius:6px;font-size:13px;cursor:pointer;transition:all .15s}.edit-actions button:not(.primary){background:transparent;border:1px solid var(--border-color);color:var(--text-secondary)}.edit-actions button:not(.primary):hover{background:var(--bg-hover)}.edit-actions button.primary{background:var(--accent-color);border:none;color:#fff}.edit-actions button.primary:hover{opacity:.9}.edit-actions button:disabled{opacity:.5;cursor:not-allowed}.char-count{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:11px;color:var(--text-tertiary)}.char-bar{height:3px;background:var(--accent-color);border-radius:2px;max-width:100px;transition:width .2s}.outline-list{display:flex;flex-direction:column;gap:8px}.outline-item{display:flex;align-items:flex-start;gap:8px;font-size:14px;color:var(--text-primary)}.outline-marker{color:var(--accent-color);flex-shrink:0}.brief-content{font-size:14px;color:var(--text-primary);line-height:1.6;white-space:pre-wrap}.brief-meta{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-color);font-size:12px;color:var(--text-secondary)}.suggestions-list{margin:0;padding:0 0 0 20px;list-style:disc}.suggestions-list li{margin-bottom:6px;font-size:14px;color:var(--text-primary);line-height:1.5}.links-list{margin:0;padding:0;list-style:none}.links-list li{padding:6px 0;font-size:13px;color:var(--accent-color);border-bottom:1px solid var(--border-subtle)}.links-list li:last-child{border-bottom:none}.keywords-info{font-size:14px;color:var(--text-primary)}.primary-keyword{font-weight:500}.content-actions{display:flex;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--border-color)}.action-btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s}.action-btn.secondary{background:transparent;border:1px solid var(--border-color);color:var(--text-primary)}.action-btn.secondary:hover{background:var(--bg-hover)}.action-btn.primary{background:var(--success-color, #22c55e);border:none;color:#fff}.action-btn.primary:hover{opacity:.9}.action-btn:disabled{opacity:.5;cursor:not-allowed}.review-panel-overlay{display:flex;flex-direction:column;width:55%;min-width:500px;max-width:800px;height:100%;border-left:1px solid var(--border-color);flex-shrink:0;animation:slideIn .3s ease-out}.review-panel{width:100%;height:100%;background:var(--bg-primary);display:flex;flex-direction:column}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.review-panel-header{display:flex;align-items:flex-start;justify-content:space-between;padding:12px 16px;background:var(--bg-surface);border-bottom:1px solid var(--border-color);flex-shrink:0;gap:12px}.header-tabs{display:flex;flex-wrap:wrap;gap:6px;flex:1;min-width:0}.tab-btn{display:flex;align-items:center;gap:6px;padding:6px 10px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:11px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.tab-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.tab-btn.active{background:var(--accent-color-subtle);color:var(--accent-color);border-color:var(--accent-color)}.tab-icon{width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;background:var(--bg-tertiary);border-radius:50%;color:var(--text-muted);flex-shrink:0}.tab-btn.active .tab-icon{background:var(--accent-color);color:#fff}.tab-label{display:inline}.close-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.close-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.review-panel-content{flex:1;overflow:hidden;display:flex;flex-direction:column}.review-panel-footer{display:flex;flex-direction:column;gap:12px;padding:16px;background:var(--bg-surface);border-top:1px solid var(--border-color);flex-shrink:0}.footer-message{margin:0;font-size:13px;color:var(--text-secondary);text-align:center}.continue-btn{padding:12px 24px;background:var(--accent-color);border:none;border-radius:var(--radius-md);font-size:14px;font-weight:600;color:#fff;cursor:pointer;transition:all var(--transition-fast)}.continue-btn:hover:not(:disabled){background:var(--accent-color-hover);transform:translateY(-1px)}.continue-btn:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 1024px){.review-panel-overlay{position:fixed;top:0;right:0;bottom:0;width:100%;min-width:100%;max-width:100%;z-index:1000;border-left:none;background:var(--bg-primary)}}.seo-builder-2-page.v2{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-primary)}.page-header-minimal{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;background:var(--bg-surface);border-bottom:1px solid var(--border-color);min-height:56px}.page-header-minimal .header-left{display:flex;align-items:center;gap:16px}.page-header-minimal h1{margin:0;font-size:18px;font-weight:600;color:var(--text-primary)}.project-badge{padding:4px 10px;background:var(--accent-color-subtle);color:var(--accent-color);border-radius:6px;font-size:12px;font-weight:500}.header-center{display:flex;justify-content:center;gap:8px}.phase-indicator{display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--bg-hover);border-radius:6px}.phase-icon{font-size:14px}.phase-label{font-size:12px;font-weight:500;color:var(--text-secondary);text-transform:uppercase}.header-status{display:flex;align-items:center;gap:8px;padding:6px 14px;background:var(--status-blue-bg, #eff6ff);border:1px solid var(--status-blue, #3b82f6);border-radius:6px;margin-right:12px}.header-status .status-spinner{width:14px;height:14px;border:2px solid var(--status-blue, #3b82f6);border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite}.header-status .status-text{font-size:12px;font-weight:500;color:var(--status-blue, #3b82f6)}.page-header-minimal .header-right{display:flex;align-items:center;gap:8px}.btn-export{padding:6px 12px;background:var(--status-green, #22c55e);border:1px solid var(--status-green, #22c55e);border-radius:6px;font-size:12px;font-weight:500;color:#fff;cursor:pointer}.btn-export:hover{opacity:.9}.btn-review{padding:6px 12px;background:var(--accent-color);border:1px solid var(--accent-color);border-radius:6px;font-size:12px;font-weight:500;color:#fff;cursor:pointer}.btn-review:hover{opacity:.9}.btn-change-project{padding:6px 12px;background:transparent;border:1px solid var(--border-color);border-radius:6px;font-size:12px;color:var(--text-secondary);cursor:pointer}.btn-change-project:hover{background:var(--bg-hover);color:var(--text-primary)}.page-main{flex:1;height:100%;display:flex;overflow:hidden}.project-selection-container{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.selection-toolbar{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:var(--bg-surface);border-bottom:1px solid var(--border-color);flex-shrink:0}.toolbar-left{display:flex;align-items:center;gap:12px}.toolbar-left h2{margin:0;font-size:16px;font-weight:600;color:var(--text-primary)}.project-count{padding:2px 10px;background:var(--bg-tertiary);color:var(--text-secondary);border-radius:12px;font-size:12px;font-weight:500}.toolbar-right{display:flex;align-items:center;gap:12px}.selection-content{flex:1;overflow-y:auto;padding:24px}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:64px;color:var(--text-secondary)}.loading-spinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state-container{display:flex;justify-content:center;padding:48px 24px}.empty-state-card{max-width:400px;padding:48px 32px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;text-align:center}.empty-state-icon{display:flex;justify-content:center;margin-bottom:20px;color:var(--text-tertiary)}.empty-state-card h3{margin:0 0 8px;font-size:18px;font-weight:600;color:var(--text-primary)}.empty-state-card p{margin:0 0 24px;font-size:14px;color:var(--text-secondary);line-height:1.5}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.project-card{display:flex;flex-direction:column;padding:20px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;cursor:pointer;transition:all .15s ease}.project-card:hover{border-color:var(--accent-color);box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;border-bottom:none;padding-bottom:0}.card-title{margin:0;font-size:15px;font-weight:600;color:var(--text-primary);line-height:1.3}.stage-pill{flex-shrink:0;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:500;white-space:nowrap}.stage-pill.stage-gray{background:var(--status-gray-bg);color:var(--status-gray)}.stage-pill.stage-blue{background:var(--status-blue-bg);color:var(--status-blue)}.stage-pill.stage-yellow{background:var(--status-amber-bg);color:var(--status-amber)}.stage-pill.stage-purple{background:rgba(168,85,247,.15);color:#a855f7}.stage-pill.stage-orange{background:rgba(249,115,22,.15);color:#f97316}.stage-pill.stage-green{background:var(--status-green-bg);color:var(--status-green)}.card-website{font-size:13px;color:var(--text-tertiary);text-decoration:none;margin-bottom:16px;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-website:hover{color:var(--accent-color);text-decoration:underline}.card-progress{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:16px}.projects-grid .progress-bar{width:100%;height:8px;background-color:#d1d5db;border-radius:4px;overflow:visible}.projects-grid .progress-fill{height:8px;background-color:#10b981;border-radius:4px;transition:width .3s ease}.progress-text{font-size:11px;color:var(--text-secondary);text-align:center}.card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:8px;border-top:1px solid var(--border-color)}.card-date{font-size:12px;color:var(--text-tertiary)}.card-actions{display:flex;gap:8px;border:none;box-shadow:none}.card-action{padding:4px 10px;font-size:11px;font-weight:500;cursor:pointer;border-radius:4px;transition:all .15s}.card-action.open{background:var(--accent-color);color:#fff}.card-action.open:hover{background:var(--accent-color-dark, #0055b3)}.card-action.export{background:var(--status-green);color:#fff}.card-action.export:hover{opacity:.85}.card-action.archive{background:var(--bg-tertiary);color:var(--text-secondary)}.card-action.archive:hover{background:var(--bg-hover)}.project-card.add-new-card{border-style:dashed;background:transparent;min-height:180px}.project-card.add-new-card:hover{background:var(--bg-surface);border-style:solid}.add-new-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-tertiary)}.add-new-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:300;border:2px dashed var(--border-color);border-radius:50%}.project-card.add-new-card:hover .add-new-content{color:var(--accent-color)}.project-card.add-new-card:hover .add-new-icon{border-color:var(--accent-color)}@media (max-width: 768px){.selection-toolbar{flex-direction:column;gap:12px;align-items:stretch}.toolbar-left{justify-content:space-between}.toolbar-right{justify-content:flex-end}.projects-grid{grid-template-columns:1fr}.selection-content{padding:16px}}.chat-main{flex:1;min-width:0;height:100%;display:flex;overflow:hidden;transition:flex .3s ease}.page-main.with-review-panel .chat-main{flex:1}.error-container{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px}.error-container h3{margin:0 0 16px;color:var(--status-red)}.error-container p{margin:0 0 24px;color:var(--text-secondary);font-family:monospace;background:var(--bg-surface);padding:16px;border-radius:8px}.error-container button{padding:10px 20px;background:var(--accent-color);color:#fff;border:none;border-radius:8px;cursor:pointer}.new-project-form{display:flex;flex-direction:column;gap:20px}.new-project-form .form-group{display:flex;flex-direction:column;gap:6px}.new-project-form .form-group label{font-size:13px;font-weight:500;color:var(--text-primary)}.form-input{padding:10px 14px;background:var(--bg-input);border:1px solid var(--border-color);border-radius:8px;font-size:14px;color:var(--text-primary)}.form-input:focus{outline:none;border-color:var(--accent-color)}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px;padding-top:16px;border-top:1px solid var(--border-color)}.company-search-field,.search-input-container{position:relative}.search-field-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-tertiary);pointer-events:none}.search-input-field{padding-left:36px!important}.search-field-spinner{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:14px;height:14px;border:2px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;animation:spin .8s linear infinite}.selected-company{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:var(--status-blue-bg);border:1px solid var(--status-blue);border-radius:8px}.selected-company-info{display:flex;flex-direction:column;gap:2px}.selected-company-name{font-size:14px;font-weight:500;color:var(--text-primary)}.selected-via{font-size:12px;color:var(--text-secondary)}.clear-company-btn{padding:4px;background:transparent;border:none;border-radius:4px;color:var(--text-tertiary);cursor:pointer}.clear-company-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.search-results-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px #00000026;max-height:240px;overflow-y:auto;z-index:100}.search-result-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;background:transparent;text-align:left;cursor:pointer;transition:background .1s ease}.search-result-item:hover{background:var(--bg-hover)}.search-result-item:not(:last-child){border-bottom:1px solid var(--border-color)}.result-icon{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.result-icon.icon-company{background:var(--status-blue-bg);color:var(--status-blue)}.result-icon.icon-person{background:var(--status-green-bg);color:var(--status-green);border-radius:50%}.result-details{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.result-primary{font-size:13px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-secondary{font-size:11px;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-company-tag{display:inline-flex;align-items:center;gap:4px;font-size:10px;color:var(--status-blue)}.result-badge{padding:2px 6px;border-radius:3px;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0}.result-badge.badge-company{background:var(--status-blue-bg);color:var(--status-blue)}.result-badge.badge-person{background:var(--status-green-bg);color:var(--status-green)}.no-results-message{padding:16px;text-align:center;font-size:13px;color:var(--text-secondary)}.form-hint{margin:6px 0 0;font-size:12px;color:var(--text-tertiary)}.optional-label{font-weight:400;color:var(--text-tertiary)}.status-label-text{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:500;color:var(--text-primary)}.status-info-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-left:4px;cursor:help;color:var(--text-tertiary);font-size:12px;font-weight:700;transition:color .2s}.status-info-icon:hover{color:var(--primary-color)}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:500;position:relative;cursor:help;transition:transform .2s;white-space:nowrap;max-width:fit-content;z-index:1}.status-badge:hover{transform:translateY(-1px)}.status-badge.has-tooltip{z-index:10001}.status-blue{background:var(--primary-bg);color:var(--text-primary);border:1px solid var(--primary-border)}.status-green{background:var(--success-bg);color:var(--success-text);border:1px solid var(--success-border)}.status-red{background:var(--danger-bg);color:var(--danger-text);border:1px solid var(--danger-border)}.status-purple{background:var(--warning-bg);color:var(--warning-text);border:1px solid var(--warning-border)}.status-gray{background:var(--bg-hover);color:var(--text-secondary);border:1px solid var(--border-color)}.status-tooltip{position:absolute;width:280px;padding:10px 12px;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-color);border-radius:6px;font-size:12px;font-weight:400;line-height:1.5;box-shadow:0 4px 12px #00000040;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10000;pointer-events:none;white-space:normal;text-align:left;left:50%;transform:translate(-50%);opacity:.98}.tooltip-bottom{top:calc(100% + 8px);animation:tooltipFadeInDown .2s ease-out}.tooltip-top{bottom:calc(100% + 8px);animation:tooltipFadeInUp .2s ease-out}.tooltip-bottom:after{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-bottom-color:var(--border-color)}.tooltip-bottom:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-bottom-color:var(--bg-surface);z-index:1}.tooltip-top:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:var(--border-color)}.tooltip-top:before{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--bg-surface);z-index:1}.status-info-icon .status-tooltip{left:auto;right:0;transform:none;bottom:calc(100% + 8px)}.status-info-icon .status-tooltip:after,.status-info-icon .status-tooltip:before{left:auto;right:8px;transform:none}@keyframes tooltipFadeInDown{0%{opacity:0;transform:translate(-50%) translateY(-4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes tooltipFadeInUp{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media (max-width: 768px){.status-tooltip{width:220px;font-size:11px}}.connector-card{display:flex;flex-direction:column;padding:var(--spacing-lg)}.connector-header{display:flex;align-items:flex-start;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.connector-icon{font-size:32px;line-height:1}.connector-info{flex:1}.connector-info h3{margin:0;font-size:var(--text-md);font-weight:600;color:var(--text-primary)}.connector-info p{margin:var(--spacing-xs) 0 0 0;font-size:var(--text-sm);color:var(--text-secondary)}.connector-connections{display:flex;flex-direction:column;gap:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.connection-item{padding:var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-sm)}.connection-details{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs)}.connection-name{font-weight:500;color:var(--text-primary)}.connection-meta{display:flex;gap:var(--spacing-md);font-size:var(--text-xs);color:var(--text-secondary)}.connection-meta .meta-item{display:flex;align-items:center;gap:var(--spacing-xs)}.webhook-url{margin-top:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-surface);border-radius:var(--radius-sm);overflow-x:auto}.webhook-url code{font-size:var(--text-xs);color:var(--text-secondary);white-space:nowrap}.connection-error{margin-top:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background:var(--color-error-subtle);color:var(--color-error);border-radius:var(--radius-sm);font-size:var(--text-xs)}.connection-actions{display:flex;justify-content:flex-end;margin-top:var(--spacing-sm)}.add-connection-button{align-self:flex-start}.connector-empty{padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.sync-log-table{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.sync-log-header{display:flex;justify-content:flex-end;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.sync-log-table table{width:100%;border-collapse:collapse}.sync-log-table th,.sync-log-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;border-bottom:1px solid var(--border-color)}.sync-log-table th{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;color:var(--text-secondary);background:var(--bg-tertiary)}.sync-log-table td{font-size:var(--text-sm);color:var(--text-primary)}.sync-log-table tr:last-child td{border-bottom:none}.sync-log-table tr:hover{background:var(--bg-tertiary)}.source-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:500;text-transform:capitalize}.invoice-id{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-primary)}.time-cell{white-space:nowrap;color:var(--text-secondary)}.sync-log-empty{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-xl);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary)}.connectors-tab{display:flex;flex-direction:column;gap:var(--spacing-xl)}.connectors-loading{display:flex;justify-content:center;align-items:center;min-height:300px;color:var(--text-secondary)}.connectors-error{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-error-subtle);color:var(--color-error);border-radius:var(--radius-md)}.connectors-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-lg)}.sync-logs-section{margin-top:var(--spacing-lg)}.sync-logs-section h3{margin:0 0 var(--spacing-md) 0;font-size:var(--text-md);font-weight:600;color:var(--text-primary)}.connect-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.connect-form p{color:var(--text-secondary);margin:0}.connect-form .form-note{font-size:var(--text-sm);color:var(--text-tertiary);font-style:italic}.connect-form .form-warning{font-size:var(--text-sm);color:var(--color-warning);background:var(--color-warning-subtle);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm)}.connect-form .form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.pnl-chart{display:flex;flex-direction:column;gap:var(--spacing-lg)}.pnl-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.pnl-card{padding:var(--spacing-lg)}.pnl-label{display:block;font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.pnl-value{display:block;font-size:var(--text-2xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-md)}.pnl-card.revenue .pnl-value{color:var(--color-success)}.pnl-card.expenses .pnl-value{color:var(--color-error)}.pnl-card.profit .pnl-value{color:var(--color-primary)}.pnl-card.excluded .pnl-value{color:var(--text-secondary)}.pnl-bar{height:8px;background:var(--bg-tertiary);border-radius:var(--radius-full);overflow:hidden}.pnl-bar .bar-fill{height:100%;border-radius:var(--radius-full);transition:width .3s ease}.pnl-card.revenue .bar-fill{background:var(--color-success)}.pnl-card.expenses .bar-fill{background:var(--color-error)}.pnl-card.profit .bar-fill{background:var(--color-primary)}.pnl-breakdown{padding:var(--spacing-lg)}.pnl-breakdown h4{margin:0 0 var(--spacing-md) 0;font-size:var(--text-md);font-weight:600}.breakdown-table{width:100%;border-collapse:collapse}.breakdown-table th,.breakdown-table td{padding:var(--spacing-sm);text-align:left;border-bottom:1px solid var(--border-color)}.breakdown-table th{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;color:var(--text-secondary)}.breakdown-table td{font-size:var(--text-sm)}.breakdown-table .positive{color:var(--color-success)}.breakdown-table .negative{color:var(--color-error)}.org-label{display:inline-block;margin-left:var(--spacing-xs);padding:2px 6px;background:var(--color-primary-subtle);color:var(--color-primary);border-radius:var(--radius-sm);font-size:var(--text-xs)}.org-currency{display:inline-block;margin-left:var(--spacing-xs);font-size:var(--text-xs);color:var(--text-tertiary)}.pnl-monthly{padding:var(--spacing-lg)}.pnl-monthly h4{margin:0 0 var(--spacing-md) 0;font-size:var(--text-md);font-weight:600}.monthly-chart{display:flex;align-items:flex-end;gap:var(--spacing-sm);height:200px;padding:var(--spacing-md) 0}.month-bar{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}.bar-container{flex:1;display:flex;align-items:flex-end;gap:2px;width:100%}.month-bar .bar{flex:1;border-radius:var(--radius-sm) var(--radius-sm) 0 0;min-height:4px;cursor:pointer}.month-bar .bar.revenue{background:var(--color-success)}.month-bar .bar.expenses{background:var(--color-error)}.month-label{margin-top:var(--spacing-xs);font-size:var(--text-xs);color:var(--text-secondary);white-space:nowrap}.pnl-errors{padding:var(--spacing-lg);background:var(--color-error-subtle)}.pnl-errors h4{margin:0 0 var(--spacing-sm) 0;color:var(--color-error)}.error-item{font-size:var(--text-sm);color:var(--color-error);margin-bottom:var(--spacing-xs)}.forecast-chart{display:flex;flex-direction:column;gap:var(--spacing-lg)}.forecast-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.forecast-card{padding:var(--spacing-lg)}.forecast-label{display:block;font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.forecast-value{display:block;font-size:var(--text-2xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-xs)}.forecast-note{display:block;font-size:var(--text-xs);color:var(--text-tertiary)}.forecast-card.recurring .forecast-value{color:var(--color-primary)}.forecast-card.oneoff .forecast-value{color:var(--color-secondary)}.forecast-card.total .forecast-value{color:var(--color-success)}.forecast-monthly{padding:var(--spacing-lg)}.forecast-monthly h4{margin:0 0 var(--spacing-md) 0;font-size:var(--text-md);font-weight:600}.monthly-forecast{display:flex;align-items:flex-end;gap:var(--spacing-md);height:200px;padding:var(--spacing-md) 0}.forecast-month{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}.month-bars{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center}.stacked-bar{width:40px;display:flex;flex-direction:column-reverse}.stacked-bar .bar{width:100%;min-height:4px;cursor:pointer;transition:opacity .15s}.stacked-bar .bar:hover{opacity:.8}.stacked-bar .bar.recurring{background:var(--color-primary);border-radius:0 0 var(--radius-sm) var(--radius-sm)}.stacked-bar .bar.oneoff{background:var(--color-secondary);border-radius:var(--radius-sm) var(--radius-sm) 0 0}.month-total{margin-top:var(--spacing-xs);font-size:var(--text-xs);font-weight:600;color:var(--text-primary)}.forecast-month .month-label{font-size:var(--text-xs);color:var(--text-secondary)}.forecast-legend{display:flex;gap:var(--spacing-lg);margin-top:var(--spacing-md);justify-content:center}.legend-item{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--text-sm);color:var(--text-secondary)}.legend-color{width:12px;height:12px;border-radius:var(--radius-xs)}.legend-color.recurring{background:var(--color-primary)}.legend-color.oneoff{background:var(--color-secondary)}.forecast-stages{padding:var(--spacing-lg)}.forecast-stages h4{margin:0 0 var(--spacing-md) 0;font-size:var(--text-md);font-weight:600}.stages-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.stage-item{padding:var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-sm)}.stage-header{display:flex;justify-content:space-between;margin-bottom:var(--spacing-xs)}.stage-name{font-weight:500;color:var(--text-primary)}.stage-count{font-size:var(--text-sm);color:var(--text-secondary)}.stage-values{display:flex;justify-content:space-between;margin-bottom:var(--spacing-xs)}.stage-value{font-size:var(--text-lg);font-weight:600;color:var(--text-primary)}.stage-weighted{font-size:var(--text-sm);color:var(--color-success)}.stage-bar{height:6px;background:var(--bg-surface);border-radius:var(--radius-full);overflow:hidden}.stage-bar .bar-fill{height:100%;background:var(--color-primary);border-radius:var(--radius-full)}.networth-chart{display:flex;flex-direction:column;gap:var(--spacing-lg)}.networth-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-md)}.networth-card{padding:var(--spacing-lg)}.networth-label{display:block;font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.networth-value{display:block;font-size:var(--text-3xl);font-weight:700;color:var(--text-primary);margin-bottom:var(--spacing-md)}.networth-breakdown{display:flex;gap:var(--spacing-lg);font-size:var(--text-sm)}.breakdown-item.positive{color:var(--color-success)}.breakdown-item.negative{color:var(--color-error)}.cashflow-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);margin-top:var(--spacing-md)}.cashflow-item{text-align:center}.cf-label{display:block;font-size:var(--text-xs);color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.cf-value{display:block;font-size:var(--text-lg);font-weight:600;color:var(--text-primary)}.cf-value.positive{color:var(--color-success)}.cf-value.negative{color:var(--color-error)}.networth-trend{padding:var(--spacing-lg)}.networth-trend h4{margin:0 0 var(--spacing-md) 0;font-size:var(--text-md);font-weight:600}.trend-chart{display:flex;flex-direction:column;gap:var(--spacing-sm)}.chart-area{display:flex;align-items:flex-end;height:150px;gap:2px;padding:var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-md)}.trend-point{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;background:linear-gradient(to top,var(--color-primary-subtle),transparent);border-radius:var(--radius-sm) var(--radius-sm) 0 0;cursor:pointer;transition:background .15s}.trend-point:hover{background:linear-gradient(to top,var(--color-primary),var(--color-primary-subtle))}.point-marker{width:8px;height:8px;background:var(--color-primary);border-radius:50%;margin-bottom:-4px}.chart-labels{display:flex;justify-content:space-between;padding:0 var(--spacing-sm)}.chart-label{font-size:var(--text-xs);color:var(--text-secondary)}.trend-range{display:flex;justify-content:space-between;font-size:var(--text-xs);color:var(--text-tertiary);padding:0 var(--spacing-sm)}.spending-breakdown{padding:var(--spacing-lg)}.spending-breakdown h4{margin:0 0 var(--spacing-md) 0;font-size:var(--text-md);font-weight:600}.spending-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.spending-item{display:grid;grid-template-columns:1fr auto;gap:var(--spacing-xs);align-items:center}.spending-header{display:flex;justify-content:space-between;grid-column:1 / -1}.spending-category{font-size:var(--text-sm);color:var(--text-primary)}.spending-amount{font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.spending-bar{height:6px;background:var(--bg-tertiary);border-radius:var(--radius-full);overflow:hidden}.spending-bar .bar-fill{height:100%;background:var(--color-primary);border-radius:var(--radius-full)}.spending-percentage{font-size:var(--text-xs);color:var(--text-secondary);text-align:right}.last-sync{text-align:center;font-size:var(--text-xs);color:var(--text-tertiary)}.dashboard-tab{display:flex;flex-direction:column;gap:var(--spacing-lg)}.dashboard-loading{display:flex;justify-content:center;align-items:center;min-height:300px;color:var(--text-secondary)}.dashboard-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.view-tabs{display:flex;gap:var(--spacing-xs);background:var(--bg-tertiary);padding:var(--spacing-xs);border-radius:var(--radius-md)}.view-tab{padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.view-tab:hover{color:var(--text-primary)}.view-tab.active{background:var(--bg-surface);color:var(--text-primary);box-shadow:var(--shadow-sm)}.dashboard-actions{display:flex;gap:var(--spacing-sm)}.overview-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md)}.stat-card{display:flex;flex-direction:column;padding:var(--spacing-md);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md)}.stat-label{font-size:var(--text-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:var(--text-xl);font-weight:600;color:var(--text-primary);margin-top:var(--spacing-xs)}.stat-value.error{color:var(--color-error)}.summary-view{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg)}.summary-section{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-lg)}.summary-section h3{margin:0 0 var(--spacing-md) 0;font-size:var(--text-md);font-weight:600;color:var(--text-primary)}.summary-grid{display:flex;flex-direction:column;gap:var(--spacing-md)}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm);border-radius:var(--radius-sm)}.summary-item.highlight{background:var(--bg-tertiary)}.summary-label{font-size:var(--text-sm);color:var(--text-secondary)}.summary-value{font-size:var(--text-lg);font-weight:600;color:var(--text-primary)}.summary-value.positive{color:var(--color-success)}.summary-value.negative{color:var(--color-error)}.summary-section.combined{grid-column:1 / -1;text-align:center}.combined-metric{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm)}.combined-value{font-size:var(--text-3xl);font-weight:700;color:var(--text-primary)}.combined-label{font-size:var(--text-sm);color:var(--text-secondary)}.view-controls{margin-bottom:var(--spacing-md)}.view-controls select{min-width:200px}.no-data{display:flex;justify-content:center;align-items:center;min-height:200px;color:var(--text-secondary)}@media (max-width: 768px){.dashboard-header{flex-direction:column;align-items:stretch}.view-tabs{overflow-x:auto;flex-wrap:nowrap}.view-tab{white-space:nowrap}}.two-factor-setup{max-width:600px;margin:0 auto;padding:var(--spacing-lg)}.two-factor-setup .setup-card{padding:var(--spacing-xl)}.two-factor-setup h2{margin:0 0 var(--spacing-sm) 0;font-size:var(--text-xl);font-weight:600;color:var(--text-primary)}.two-factor-setup .setup-description{color:var(--text-secondary);margin-bottom:var(--spacing-xl)}.two-factor-setup .setup-step{display:flex;flex-direction:column;gap:var(--spacing-lg)}.two-factor-setup .step-content{display:flex;flex-direction:column;gap:var(--spacing-md)}.two-factor-setup h3{margin:var(--spacing-md) 0 var(--spacing-sm) 0;font-size:var(--text-md);font-weight:600;color:var(--text-primary)}.two-factor-setup ul{margin:0;padding-left:var(--spacing-lg);color:var(--text-secondary)}.two-factor-setup li{margin-bottom:var(--spacing-xs)}.two-factor-setup .setup-button{align-self:flex-start}.two-factor-setup .qr-container{display:flex;justify-content:center;padding:var(--spacing-lg);background:var(--bg-surface);border-radius:var(--radius-md);border:1px solid var(--border-color)}.two-factor-setup .qr-code{width:200px;height:200px;border-radius:var(--radius-sm)}.two-factor-setup .manual-entry{background:var(--bg-tertiary);padding:var(--spacing-md);border-radius:var(--radius-md)}.two-factor-setup .secret-code{display:flex;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.two-factor-setup .secret-code code{flex:1;font-family:var(--font-mono);font-size:var(--text-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-surface);border-radius:var(--radius-sm);word-break:break-all}.two-factor-setup .recovery-codes{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-md)}.two-factor-setup .recovery-code{font-family:var(--font-mono);font-size:var(--text-sm);padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-surface);border-radius:var(--radius-sm);text-align:center}.two-factor-setup .download-button{align-self:flex-start}.two-factor-setup .verification-input{display:flex;gap:var(--spacing-md);align-items:flex-end}.two-factor-setup .code-input{width:150px;font-family:var(--font-mono);font-size:var(--text-lg);letter-spacing:.2em;text-align:center}.two-factor-setup .setup-complete{text-align:center;padding:var(--spacing-xl)}.two-factor-setup .success-icon{width:64px;height:64px;margin:0 auto var(--spacing-lg);display:flex;align-items:center;justify-content:center;font-size:32px;background:var(--color-success-subtle);color:var(--color-success);border-radius:50%}.two-factor-gate{display:flex;justify-content:center;align-items:center;min-height:400px;padding:var(--spacing-lg)}.two-factor-gate.loading{color:var(--text-secondary)}.two-factor-gate .gate-card{max-width:400px;padding:var(--spacing-xl);text-align:center}.two-factor-gate .gate-icon{font-size:48px;margin-bottom:var(--spacing-lg)}.two-factor-gate h2{margin:0 0 var(--spacing-sm) 0;font-size:var(--text-xl);font-weight:600;color:var(--text-primary)}.two-factor-gate>p{color:var(--text-secondary);margin-bottom:var(--spacing-lg)}.two-factor-gate .code-input-group{margin:var(--spacing-lg) 0}.two-factor-gate .code-input,.two-factor-gate .recovery-input{width:180px;margin:0 auto;font-family:var(--font-mono);font-size:var(--text-xl);letter-spacing:.2em;text-align:center}.two-factor-gate .code-hint{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--spacing-lg)}.two-factor-gate .gate-actions{margin-bottom:var(--spacing-md)}.two-factor-gate .verify-button{min-width:120px}.two-factor-gate .toggle-recovery{background:none;border:none;color:var(--color-primary);font-size:var(--text-sm);cursor:pointer;padding:var(--spacing-sm)}.two-factor-gate .toggle-recovery:hover{text-decoration:underline}.two-factor-gate .session-info{margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--border-color);font-size:var(--text-xs);color:var(--text-tertiary)}.finance-page{display:flex;flex-direction:column;gap:var(--spacing-lg)}.finance-2fa-setup{max-width:600px;margin:var(--spacing-xl) auto}.finance-2fa-setup .setup-steps{display:flex;flex-direction:column;gap:var(--spacing-lg)}.finance-2fa-setup .qr-container{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--bg-tertiary);border-radius:var(--radius-md)}.finance-2fa-setup .secret-code{font-family:var(--font-mono);font-size:var(--text-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-surface);border-radius:var(--radius-sm);word-break:break-all;text-align:center}.finance-2fa-setup .recovery-codes{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-md)}.finance-2fa-setup .recovery-code{font-family:var(--font-mono);font-size:var(--text-sm);padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-surface);border-radius:var(--radius-sm);text-align:center}.finance-loading{display:flex;justify-content:center;align-items:center;min-height:300px;color:var(--text-secondary)}:root{--color-primary: #0066cc;--color-primary-hover: #0052a3;--primary-color: #0066cc;--primary-color-dark: #0052a3;--primary-color-rgb: 0, 102, 204;--primary-color-alpha: rgba(0, 102, 204, .1);--btn-primary-bg: #0066cc;--btn-primary-hover: #0052a3;--btn-primary-text: #ffffff;--color-secondary: #6c757d;--color-success: #28a745;--color-danger: #dc3545;--color-danger-hover: #c82333;--color-warning: #ffc107;--color-info: #17a2b8;--accent-color: #0066cc;--accent-hover: #0052a3;--success-color: #28a745;--error-color: #dc3545;--error-bg: #f8d7da;--warning-color: #ffc107;--warning-color-alpha: rgba(255, 193, 7, .1);--bg-hover: #f5f5f5;--success-bg: #d4edda;--success-text: #155724;--success-border: #c3e6cb;--warning-bg: #fff3cd;--warning-text: #856404;--warning-border: #ffeaa7;--danger-bg: #f8d7da;--danger-text: #721c24;--danger-border: #f5c6cb;--primary-bg: #e7f3ff;--primary-border: #b3d9ff;--border-light: #f1f3f4;--status-green: #22c55e;--status-green-bg: rgba(34, 197, 94, .2);--status-amber: #f59e0b;--status-amber-bg: rgba(245, 158, 11, .2);--status-red: #ef4444;--status-red-bg: rgba(239, 68, 68, .2);--status-blue: #3b82f6;--status-blue-bg: rgba(59, 130, 246, .15);--status-blue-border: rgba(59, 130, 246, .3);--status-gray: #9ca3af;--status-gray-bg: rgba(156, 163, 175, .15);--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--bg-surface: #f8f9fa;--bg-tertiary: #e9ecef;--bg-base: #ffffff;--bg-input: #ffffff;--bg-elevated: #ffffff;--bg-overlay: rgba(0, 0, 0, .5);--bg-header-inverted: #1a1a1a;--text-primary: #212529;--text-secondary: #6c757d;--text-tertiary: #adb5bd;--text-muted: #adb5bd;--text-disabled: #adb5bd;--text-inverse: #ffffff;--text-header-inverted: #f8f9fa;--border-color: #dee2e6;--border-color-light: #e9ecef;--border-radius: .25rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--input-border: #ced4da;--input-bg: #ffffff;--input-focus-border: #80bdff;--input-focus-shadow: 0 0 0 .2rem rgba(0, 123, 255, .25);--selection-bg: #f0f0f0;--selection-text: #212529;--active-bg: #f0f0f0;--sidebar-active-bg: #e8e8e8;--sidebar-active-text: #212529;--tab-active-border: #666666;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--transition-fast: .15s ease-in-out;--transition-base: .25s ease-in-out}[data-theme=dark]{--color-primary: #3b82f6;--color-primary-hover: #2563eb;--primary-color: #3b82f6;--primary-color-dark: #2563eb;--primary-color-rgb: 59, 130, 246;--primary-color-alpha: rgba(59, 130, 246, .15);--btn-primary-bg: #3b82f6;--btn-primary-hover: #2563eb;--btn-primary-text: #ffffff;--color-secondary: #8b939b;--color-success: #34ce57;--color-danger: #ff4757;--color-danger-hover: #ff6b7a;--color-warning: #ffc107;--color-info: #3abff8;--accent-color: #3b82f6;--accent-hover: #2563eb;--success-color: #34ce57;--error-color: #ff4757;--error-bg: #3a1e1e;--warning-color: #ffc107;--warning-color-alpha: rgba(255, 193, 7, .15);--bg-hover: #3a3a3a;--success-bg: #1e3a1e;--success-text: #4caf50;--success-border: #2e5a2e;--warning-bg: #3a3a1e;--warning-text: #ffc107;--warning-border: #5a5a2e;--danger-bg: #3a1e1e;--danger-text: #ff4757;--danger-border: #5a2e2e;--primary-bg: #1e2a3a;--primary-border: #2e4a5a;--border-light: #404040;--status-green: #4ade80;--status-green-bg: rgba(74, 222, 128, .2);--status-amber: #fbbf24;--status-amber-bg: rgba(251, 191, 36, .2);--status-red: #f87171;--status-red-bg: rgba(248, 113, 113, .2);--status-blue: #3b82f6;--status-blue-bg: rgba(59, 130, 246, .25);--status-blue-border: rgba(59, 130, 246, .4);--status-gray: #9ca3af;--status-gray-bg: rgba(156, 163, 175, .25);--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--bg-surface: #2d2d2d;--bg-tertiary: #383838;--bg-base: #1a1a1a;--bg-input: #2d2d2d;--bg-elevated: #434343;--bg-overlay: rgba(0, 0, 0, .7);--bg-header-inverted: #f8f9fa;--text-primary: #f8f9fa;--text-secondary: #adb5bd;--text-tertiary: #6c757d;--text-muted: #6c757d;--text-disabled: #6c757d;--text-inverse: #212529;--text-header-inverted: #212529;--border-color: #404040;--border-color-light: #353535;--input-border: #4a4a4a;--input-bg: #2d2d2d;--input-focus-border: #5a7ca0;--input-focus-shadow: 0 0 0 .2rem rgba(77, 148, 255, .15);--selection-bg: #3a3a3a;--selection-text: #f8f9fa;--active-bg: #3a3a3a;--sidebar-active-bg: #3a3a3a;--sidebar-active-text: #f8f9fa;--tab-active-border: #999999;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 6px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .4)}
