:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;font-weight:400;color:#213547;background-color:#f5f5f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%}.admin-page{padding:20px;max-width:1200px;margin:0 auto}.admin-header{display:flex;align-items:center;gap:20px;margin-bottom:20px}.admin-header h1{margin:0;font-size:24px;color:var(--text-color)}.back-button{padding:10px 20px;background:#ffffff1a;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:12px;cursor:pointer;color:var(--text-color);font-size:14px;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1)}.back-button:hover{background:#2196f31a;border-color:#2196f3;color:#2196f3;transform:translateY(-2px);box-shadow:0 4px 12px #2196f333}[data-theme=dark] .back-button:hover{background:#4facfe1a;border-color:#4facfe;color:#4facfe;box-shadow:0 4px 12px #4facfe33}.admin-tabs{display:flex;gap:10px;margin-bottom:20px;border-bottom:2px solid var(--border-color);padding-bottom:10px}.tab-button{padding:12px 24px;min-width:140px;text-align:center;background:transparent;border:none;cursor:pointer;font-size:15px;font-weight:500;color:var(--text-secondary);border-radius:12px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.tab-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(33,150,243,.1),transparent);transition:left .5s ease}.tab-button:hover:before{left:100%}.tab-button:hover{color:var(--text-color);background:var(--bg-secondary);transform:translateY(-2px)}.tab-button.active{color:#fff;background:linear-gradient(135deg,#2196f3,#1565c0);box-shadow:0 4px 15px #2196f366}[data-theme=dark] .tab-button.active{background:linear-gradient(135deg,#4facfe,#00f2fe);box-shadow:0 4px 15px #4facfe66}.admin-error{padding:12px;background:#f8d7da;color:#721c24;border-radius:4px;margin-bottom:20px}[data-theme=dark] .admin-error{background:#4a1f1f;color:#f8d7da}.admin-section{background:var(--bg-secondary);border-radius:8px;padding:20px;min-height:400px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h2{margin:0;font-size:18px;color:var(--text-color)}.add-button{padding:12px 24px;background:linear-gradient(135deg,#2196f3,#1565c0);color:#fff;border:none;border-radius:12px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #2196f366;position:relative;overflow:hidden}.add-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.add-button:hover:before{left:100%}.add-button:hover{transform:translateY(-3px);box-shadow:0 8px 25px #2196f380}[data-theme=dark] .add-button{background:linear-gradient(135deg,#4facfe,#00f2fe);box-shadow:0 4px 15px #4facfe66}[data-theme=dark] .add-button:hover{box-shadow:0 8px 25px #4facfe80}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:12px;text-align:left;border-bottom:1px solid var(--border-color)}.admin-table th{background:var(--bg-color);font-weight:600;color:var(--text-color)}.admin-table tbody tr:hover{background:var(--bg-hover)}.admin-table td{color:var(--text-color)}.role-badge{display:inline-block;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;letter-spacing:.3px}.role-badge.role-admin{background:linear-gradient(135deg,#ff6b6b,#ee5a5a);color:#fff;box-shadow:0 2px 8px #ee5a5a4d}.role-badge.role-manager{background:linear-gradient(135deg,#2196f3,#1565c0);color:#fff;box-shadow:0 2px 8px #2196f34d}.role-badge.role-logist{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff;box-shadow:0 2px 8px #4facfe4d}.actions{display:flex;gap:8px}.edit-btn,.delete-btn{padding:8px 16px;border:none;border-radius:10px;cursor:pointer;font-size:13px;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.edit-btn:before,.delete-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.edit-btn:hover:before,.delete-btn:hover:before{left:100%}.edit-btn{background:linear-gradient(135deg,#2196f3,#1565c0);color:#fff;box-shadow:0 3px 10px #2196f34d}.edit-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #2196f366}[data-theme=dark] .edit-btn{background:linear-gradient(135deg,#4facfe,#00f2fe);box-shadow:0 3px 10px #4facfe4d}[data-theme=dark] .edit-btn:hover{box-shadow:0 5px 15px #4facfe66}.delete-btn{background:linear-gradient(135deg,#ff6b6b,#ee5a5a);color:#fff;box-shadow:0 3px 10px #ee5a5a4d}.delete-btn:hover{transform:translateY(-2px);box-shadow:0 5px 15px #ee5a5a66}.dict-selector{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.dict-button{padding:10px 20px;background:var(--bg-color);border:1px solid var(--border-color);border-radius:12px;cursor:pointer;font-size:14px;font-weight:500;color:var(--text-color);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.dict-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(33,150,243,.1),transparent);transition:left .5s ease}.dict-button:hover:before{left:100%}.dict-button:hover{border-color:#2196f3;color:#2196f3;transform:translateY(-2px)}.dict-button.active{background:linear-gradient(135deg,#2196f3,#1565c0);color:#fff;border-color:transparent;box-shadow:0 4px 15px #2196f366}[data-theme=dark] .dict-button:hover{border-color:#4facfe;color:#4facfe}[data-theme=dark] .dict-button.active{background:linear-gradient(135deg,#4facfe,#00f2fe);box-shadow:0 4px 15px #4facfe66}.dict-content{background:var(--bg-color);border-radius:8px;padding:16px}.dict-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.dict-header h3{margin:0;font-size:16px;color:var(--text-color)}.loading{text-align:center;padding:20px;color:var(--text-secondary);min-height:200px;display:flex;align-items:center;justify-content:center}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:var(--bg-color);border-radius:8px;padding:24px;width:100%;max-width:400px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #0003}.modal h2{margin:0 0 20px;font-size:18px;color:var(--text-color)}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-size:14px;color:var(--text-secondary)}.form-group input,.form-group select{width:100%;padding:10px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;background:var(--bg-secondary);color:var(--text-color);box-sizing:border-box}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-color)}.modal-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--border-color);position:sticky;bottom:-24px;background:var(--bg-color);margin:20px -24px -24px;padding:16px 24px}.cancel-btn{padding:12px 24px;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:12px;cursor:pointer;font-size:14px;font-weight:500;color:var(--text-color);transition:all .3s cubic-bezier(.4,0,.2,1)}.cancel-btn:hover{background:#2196f31a;border-color:#2196f3;color:#2196f3;transform:translateY(-2px)}[data-theme=dark] .cancel-btn:hover{background:#4facfe1a;border-color:#4facfe;color:#4facfe}.save-btn{padding:12px 24px;background:linear-gradient(135deg,#2196f3,#1565c0);color:#fff;border:none;border-radius:12px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #2196f366;position:relative;overflow:hidden}.save-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.save-btn:hover:before{left:100%}.save-btn:hover{transform:translateY(-3px);box-shadow:0 8px 25px #2196f380}[data-theme=dark] .save-btn{background:linear-gradient(135deg,#4facfe,#00f2fe);box-shadow:0 4px 15px #4facfe66}[data-theme=dark] .save-btn:hover{box-shadow:0 8px 25px #4facfe80}.color-preview{display:inline-block;width:24px;height:24px;border-radius:4px;border:1px solid var(--border-color)}.color-picker-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.color-input{width:50px;height:36px;padding:2px;border:1px solid var(--border-color);border-radius:4px;cursor:pointer;background:var(--bg-secondary)}.color-text-input{width:90px;padding:8px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;background:var(--bg-secondary);color:var(--text-color);font-family:monospace}.color-presets{display:flex;gap:6px}.color-preset{width:28px;height:28px;border-radius:4px;border:2px solid transparent;cursor:pointer;transition:transform .1s,border-color .1s}.color-preset:hover{transform:scale(1.1);border-color:var(--text-color)}.notification-rules-list{display:flex;flex-direction:column;gap:16px}.notification-rule-card{background:var(--bg-color);border:1px solid var(--border-color);border-radius:8px;padding:16px;transition:all .2s}.notification-rule-card:hover{border-color:var(--primary-color)}.notification-rule-card.inactive{opacity:.6}.rule-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.rule-status{display:flex;align-items:center;gap:12px}.toggle-btn{width:28px;height:28px;border-radius:50%;border:2px solid var(--border-color);background:var(--bg-secondary);cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:all .2s}.toggle-btn.active{background:#28a745;border-color:#28a745;color:#fff}.toggle-btn:hover{border-color:var(--primary-color)}.rule-name{font-weight:600;font-size:16px;color:var(--text-color)}.rule-actions{display:flex;gap:8px}.rule-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px}.rule-detail{display:flex;gap:8px;font-size:14px}.detail-label{color:var(--text-secondary)}.detail-value{color:var(--text-color)}.empty-state{text-align:center;padding:40px 20px;color:var(--text-secondary)}.empty-state p:first-child{font-size:16px;margin-bottom:8px}.modal-large{max-width:600px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group textarea{width:100%;padding:10px;border:1px solid var(--border-color);border-radius:4px;font-size:14px;background:var(--bg-secondary);color:var(--text-color);box-sizing:border-box;resize:vertical;font-family:monospace}.form-group textarea:focus{outline:none;border-color:var(--primary-color)}.form-group small{display:block;margin-top:4px;font-size:12px;color:var(--text-secondary)}.checkbox-label{display:flex!important;align-items:center;gap:8px;cursor:pointer}.checkbox-label input[type=checkbox]{width:auto}@media(max-width:768px){.admin-page{padding:10px}.admin-header{flex-direction:column;align-items:flex-start;gap:10px}.admin-tabs{flex-wrap:wrap}.dict-selector{flex-direction:column}.dict-button{width:100%}.admin-table{font-size:13px}.admin-table th,.admin-table td{padding:8px 6px}.actions{flex-direction:column;gap:4px}.edit-btn,.delete-btn{padding:4px 8px;font-size:12px}.modal{margin:10px;max-width:calc(100% - 20px)}.form-row{grid-template-columns:1fr}.rule-header{flex-direction:column;align-items:flex-start;gap:12px}.rule-details{grid-template-columns:1fr}}.multi-select-container{display:flex;flex-wrap:wrap;gap:6px;padding:12px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-color);max-height:180px;overflow-y:auto}.multi-select-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.multi-select-actions{display:flex;gap:8px}.multi-select-actions button{padding:2px 8px;font-size:11px;background:transparent;border:1px solid var(--border-color);border-radius:4px;cursor:pointer;color:var(--text-secondary)}.multi-select-actions button:hover{background:var(--bg-hover);color:var(--text-color)}.checkbox-item{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-secondary);border:1px solid transparent;border-radius:16px;font-size:13px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .15s ease}.checkbox-item:hover{background:var(--bg-hover);border-color:var(--border-color)}.checkbox-item.selected{background:#e3f2fd;border-color:#2196f3;color:#1565c0}.checkbox-item.selected:hover{background:#bbdefb}.checkbox-item input[type=checkbox]{display:none}.checkbox-item .check-icon{width:14px;height:14px;border:2px solid var(--border-color);border-radius:3px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.checkbox-item.selected .check-icon{background:#2196f3;border-color:#2196f3}.checkbox-item.selected .check-icon:after{content:"✓";color:#fff;font-size:10px;font-weight:700}.status-badge{padding:2px 8px;border-radius:4px;font-size:12px;font-weight:500}.status-badge.active{background:#d4edda;color:#155724}.status-badge.inactive{background:#f8d7da;color:#721c24}.inline-edit-input{width:100%;padding:6px 8px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--text-color);font-size:inherit}.inline-edit-input:hover{border-color:var(--border-color)}.inline-edit-input:focus{outline:none;border-color:var(--primary-color);background:var(--bg-secondary)}.inline-color-picker{display:inline-block;cursor:pointer}.inline-color-picker input[type=color]{position:absolute;opacity:0;width:0;height:0}.inline-color-picker .color-preview{cursor:pointer;transition:transform .1s}.inline-color-picker:hover .color-preview{transform:scale(1.1)}.delete-icon-btn{padding:6px;background:transparent;border:none;border-radius:4px;cursor:pointer;color:#dc3545;transition:background .2s}.delete-icon-btn:hover{background:#dc35451a}.weekdays-selector{display:flex;flex-direction:column;gap:10px}.weekdays-buttons{display:flex;gap:6px;flex-wrap:wrap}.weekday-btn{width:40px;height:36px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-secondary);color:var(--text-color);cursor:pointer;font-size:13px;font-weight:500;transition:all .2s}.weekday-btn:hover{border-color:var(--primary-color)}.weekday-btn.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.weekdays-presets{display:flex;gap:8px;flex-wrap:wrap}.preset-btn{padding:4px 12px;border:1px solid var(--border-color);border-radius:4px;background:var(--bg-color);color:var(--text-secondary);cursor:pointer;font-size:12px;transition:all .2s}.preset-btn:hover{background:var(--bg-hover);color:var(--text-color)}html{overflow-y:scroll}*{box-sizing:border-box}:root{--bg-primary: #f5f5f5;--bg-secondary: #ffffff;--bg-tertiary: #fafafa;--text-primary: #333333;--text-secondary: #666666;--text-muted: #999999;--border-color: #e0e0e0;--border-light: #eeeeee;--accent: #1976d2;--accent-hover: #1565c0;--danger: #d32f2f;--danger-hover: #c62828;--shadow: rgba(0,0,0,.1);--shadow-strong: rgba(0,0,0,.2);--input-bg: #ffffff;--hover-bg: #f8f8f8;--bg-color: #ffffff;--text-color: #333333;--primary-color: #1976d2;--primary-hover: #1565c0}[data-theme=dark]{--bg-primary: #1c2128;--bg-secondary: #242a33;--bg-tertiary: #2d343d;--text-primary: #e6eaf0;--text-secondary: #9ba4b0;--text-muted: #6b7585;--border-color: #3a424e;--border-light: #333b45;--accent: #5c9fd4;--accent-hover: #4a8fc4;--danger: #e86a6a;--danger-hover: #d85555;--shadow: rgba(0,0,0,.25);--shadow-strong: rgba(0,0,0,.4);--input-bg: #2d343d;--hover-bg: #323a45;--bg-color: #242a33;--text-color: #e6eaf0;--primary-color: #5c9fd4;--primary-hover: #4a8fc4}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-primary);color:var(--text-primary);transition:background .3s,color .3s}.app{min-height:100vh;display:flex;flex-direction:column}.header{background:linear-gradient(135deg,#2196f3,#1565c0);color:#fff;padding:0 32px;height:80px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 4px 20px #2196f366;position:relative;overflow:hidden}.header:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#ffffff1a,#fff0,#ffffff1a);pointer-events:none}.header:after{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 60%);animation:headerShine 8s ease-in-out infinite;pointer-events:none}@keyframes headerShine{0%,to{transform:translate(-30%,-30%)}50%{transform:translate(30%,30%)}}[data-theme=dark] .header{background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);box-shadow:0 4px 20px #00000080}[data-theme=dark] .header:before{background:linear-gradient(90deg,#ffffff08,#fff0,#ffffff08)}.header-left{display:flex;align-items:center;gap:16px;z-index:1}.header-title{display:flex;align-items:center;gap:0;white-space:nowrap;-webkit-user-select:none;user-select:none}.header-title-crm{font-size:28px;font-weight:900;color:#fff;letter-spacing:2px;background:linear-gradient(180deg,#fff 30%,#ffffffb3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-title-divider{width:1.5px;height:24px;background:#fff6;margin:0 12px;border-radius:1px}.header-title-divider+*{font-size:16px;font-weight:500;color:#ffffffd9;letter-spacing:1px}.header-logo{height:70px;width:auto;object-fit:contain;filter:drop-shadow(0 0 8px rgba(255,255,255,.8)) drop-shadow(0 0 20px rgba(255,255,255,.6)) drop-shadow(0 0 40px rgba(255,255,255,.4));transition:transform .3s ease,filter .3s ease}.header-logo:hover{transform:scale(1.05);filter:drop-shadow(0 0 12px rgba(255,255,255,1)) drop-shadow(0 0 30px rgba(255,255,255,.8)) drop-shadow(0 0 50px rgba(255,255,255,.5))}.header-right{display:flex;align-items:center;gap:24px;z-index:1}.header-user{display:flex;align-items:center;gap:12px;padding:8px 16px;background:#ffffff26;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:50px;border:1px solid rgba(255,255,255,.2);transition:all .3s ease}.header-user:hover{background:#ffffff40;transform:translateY(-2px);box-shadow:0 4px 15px #0003}.user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#42a5f5,#1976d2);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem;text-transform:uppercase;box-shadow:0 2px 10px #2196f366;transition:transform .3s ease}[data-theme=dark] .user-avatar{background:linear-gradient(135deg,#4facfe,#00f2fe);box-shadow:0 2px 10px #4facfe66}.header-user:hover .user-avatar{transform:rotate(10deg) scale(1.1)}.user-info{display:flex;flex-direction:column;gap:2px}.user-name{font-size:.95rem;font-weight:600;letter-spacing:.3px}.user-role{font-size:.75rem;opacity:.8;font-weight:400}.header-actions{display:flex;align-items:center;gap:8px}.header-btn{width:44px;height:44px;border-radius:12px;border:1px solid rgba(255,255,255,.2);background:#ffffff1a;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.header-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.header-btn:hover:before{left:100%}.header-btn:hover{background:#ffffff40;transform:translateY(-3px);box-shadow:0 6px 20px #00000040;border-color:#fff6}.header-btn:active{transform:translateY(-1px)}.header-btn svg{transition:transform .3s ease}.header-btn:hover svg{transform:scale(1.15)}.header-btn-logout:hover{background:#ff52524d;border-color:#ff525280}.header-btn-logout:hover svg{transform:translate(3px)}.main{flex:1;padding:24px;max-width:100%;overflow-x:auto}.toolbar{margin-bottom:16px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.export-dropdown{position:relative}.btn-export{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);padding:10px 18px;border-radius:10px;cursor:pointer;font-size:.9rem;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:8px}.btn-export:hover{border-color:#2196f3;color:#2196f3;transform:translateY(-2px);box-shadow:0 4px 12px #2196f333}[data-theme=dark] .btn-export:hover{border-color:#4facfe;color:#4facfe;box-shadow:0 4px 12px #4facfe33}.export-arrow{transition:transform .2s ease}.export-arrow.open{transform:rotate(180deg)}.export-menu{position:absolute;top:calc(100% + 4px);right:0;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 8px 24px #00000026;z-index:1000;min-width:120px;overflow:hidden}.export-menu button{display:block;width:100%;padding:10px 16px;background:none;border:none;text-align:left;cursor:pointer;font-size:.9rem;color:var(--text-primary);transition:background-color .2s}.export-menu button:hover{background:var(--hover-bg)}.export-menu button:not(:last-child){border-bottom:1px solid var(--border-color)}.btn-primary{background:linear-gradient(135deg,#2196f3,#1565c0);color:#fff;border:none;padding:12px 24px;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;letter-spacing:.3px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #2196f366;position:relative;overflow:hidden}.btn-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.btn-primary:hover:before{left:100%}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 8px 25px #2196f380}.btn-primary:active{transform:translateY(-1px)}.btn-primary:disabled{background:linear-gradient(135deg,#9ca3af,#6b7280);cursor:not-allowed;box-shadow:none;transform:none}.btn-primary:disabled:before{display:none}[data-theme=dark] .btn-primary{background:linear-gradient(135deg,#4facfe,#00f2fe);box-shadow:0 4px 15px #4facfe66}[data-theme=dark] .btn-primary:hover{box-shadow:0 8px 25px #4facfe80}.btn-secondary{background:#ffffff1a;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--text-primary);border:1px solid var(--border-color);padding:10px 20px;border-radius:12px;cursor:pointer;font-size:.95rem;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-secondary:hover{background:#2196f31a;border-color:#2196f3;color:#2196f3;transform:translateY(-2px);box-shadow:0 4px 12px #2196f333}[data-theme=dark] .btn-secondary:hover{background:#4facfe1a;border-color:#4facfe;color:#4facfe;box-shadow:0 4px 12px #4facfe33}.btn-danger{background:linear-gradient(135deg,#ff6b6b,#ee5a5a);color:#fff;border:none;padding:10px 20px;border-radius:12px;cursor:pointer;font-size:.95rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #ee5a5a66;position:relative;overflow:hidden}.btn-danger:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.btn-danger:hover:before{left:100%}.btn-danger:hover{transform:translateY(-3px);box-shadow:0 8px 25px #ee5a5a80}.filters{background:var(--bg-secondary);padding:16px;border-radius:8px;margin-bottom:16px;box-shadow:0 1px 3px var(--shadow)}.filters-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.filters-row:last-child{margin-bottom:0}.filter-group{display:flex;flex-direction:column;min-width:150px;flex:1}.filter-group label{font-size:.75rem;color:var(--text-secondary);margin-bottom:4px}.filter-group input,.filter-group select{padding:8px;border:1px solid var(--border-color);border-radius:4px;font-size:.9rem;background:var(--input-bg);color:var(--text-primary)}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:var(--accent)}.filter-actions{justify-content:flex-end;align-self:flex-end}.checkbox-filter{align-self:flex-end;padding-bottom:8px}.checkbox-filter .checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;white-space:nowrap}.checkbox-filter input[type=checkbox]{width:16px;height:16px;cursor:pointer}.table-container{background:var(--bg-secondary);border-radius:8px;overflow-x:auto;box-shadow:0 1px 3px var(--shadow)}.clients-table{width:100%;border-collapse:collapse;font-size:.875rem}.clients-table th{background:var(--bg-tertiary);padding:12px 8px;text-align:left;font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--border-color);white-space:nowrap;position:sticky;top:0}.clients-table td{padding:10px 8px;border-bottom:1px solid var(--border-light);color:var(--text-primary)}.clients-table tr:hover{background:var(--hover-bg)}.clients-table tr.clickable-row{cursor:pointer}.empty-row{text-align:center;color:var(--text-muted);padding:40px!important}.table-actions{display:flex;gap:8px}.btn-edit,.btn-delete{width:32px;height:32px;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-edit{background:linear-gradient(135deg,#2196f326,#764ba226);color:#2196f3;border:1px solid rgba(33,150,243,.3)}.btn-edit:hover{background:linear-gradient(135deg,#2196f34d,#764ba24d);transform:translateY(-2px) scale(1.1);box-shadow:0 4px 12px #2196f34d}[data-theme=dark] .btn-edit{background:linear-gradient(135deg,#4facfe26,#00f2fe26);color:#4facfe;border:1px solid rgba(79,172,254,.3)}[data-theme=dark] .btn-edit:hover{background:linear-gradient(135deg,#4facfe4d,#00f2fe4d);box-shadow:0 4px 12px #4facfe4d}.btn-delete{background:linear-gradient(135deg,#ff6b6b26,#ee5a5a26);color:#ff6b6b;border:1px solid rgba(255,107,107,.3)}.btn-delete:hover{background:linear-gradient(135deg,#ff6b6b4d,#ee5a5a4d);transform:translateY(-2px) scale(1.1);box-shadow:0 4px 12px #ff6b6b4d}.btn-telegram{width:32px;height:32px;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);background:linear-gradient(135deg,#0088cc26,#00b4db26);color:#08c;text-decoration:none;border:1px solid rgba(0,136,204,.3)}.btn-telegram:hover{background:linear-gradient(135deg,#0088cc4d,#00b4db4d);transform:translateY(-2px) scale(1.1);box-shadow:0 4px 12px #0088cc4d}.messenger-buttons{display:flex;gap:4px;align-items:center}.btn-whatsapp{width:32px;height:32px;border:none;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);background:linear-gradient(135deg,#25d36626,#128c4026);color:#25d366;text-decoration:none;border:1px solid rgba(37,211,102,.3)}.btn-whatsapp:hover{background:linear-gradient(135deg,#25d3664d,#128c404d);transform:translateY(-2px) scale(1.1);box-shadow:0 4px 12px #25d3664d}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding:16px;background:var(--bg-secondary);border-radius:8px;box-shadow:0 1px 3px var(--shadow);flex-wrap:wrap;gap:12px}.pagination-info{color:var(--text-secondary);font-size:.9rem}.pagination-controls{display:flex;align-items:center;gap:4px}.btn-page{min-width:36px;height:36px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);border-radius:4px;cursor:pointer;font-size:.9rem;transition:all .2s}.btn-page:hover:not(:disabled){background:var(--hover-bg)}.btn-page:disabled{color:var(--text-muted);cursor:not-allowed}.btn-page.active{background:var(--accent);color:#fff;border-color:var(--accent)}.page-ellipsis{padding:0 8px;color:var(--text-muted)}.page-size{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--text-secondary)}.page-size select{padding:6px 8px;border:1px solid var(--border-color);border-radius:4px;background:var(--input-bg);color:var(--text-primary)}.login-overlay{position:fixed;inset:0;background:linear-gradient(135deg,#1976d2,#1565c0);display:flex;align-items:center;justify-content:center;padding:16px}[data-theme=dark] .login-overlay{background:linear-gradient(135deg,#3a4a5c,#242a33)}.login-modal{background:var(--bg-secondary);padding:40px;border-radius:12px;width:100%;max-width:400px;box-shadow:0 10px 40px var(--shadow-strong)}.login-modal h2{margin:0 0 24px;text-align:center;color:var(--text-primary)}.login-modal .form-group{margin-bottom:16px}.login-modal label{display:block;margin-bottom:6px;font-size:.9rem;color:var(--text-secondary)}.login-modal input{width:100%;padding:12px;border:1px solid var(--border-color);border-radius:6px;font-size:1rem;background:var(--input-bg);color:var(--text-primary)}.login-modal input:focus{outline:none;border-color:var(--accent)}.login-modal .btn-primary{width:100%;padding:12px;font-size:1rem;margin-top:8px}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}[data-theme=dark] .modal-overlay{background:#000000b3}.modal-content{background:var(--bg-secondary);border-radius:12px;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px var(--shadow-strong)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid var(--border-light)}.modal-header h2{margin:0;font-size:1.25rem;color:var(--text-primary)}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-muted);padding:0;line-height:1}.modal-close:hover{color:var(--text-primary)}.modal-content form{padding:24px}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.form-group{display:flex;flex-direction:column}.form-group label{font-size:.85rem;color:var(--text-secondary);margin-bottom:6px}.form-group input,.form-group select,.form-group textarea{padding:10px;border:1px solid var(--border-color);border-radius:6px;font-size:.95rem;background:var(--input-bg);color:var(--text-primary)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent)}.form-group.full-width{grid-column:1 / -1;margin-top:8px}.checkbox-group label{flex-direction:row;align-items:center;gap:8px;cursor:pointer}.checkbox-group input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:16px;border-top:1px solid var(--border-light)}.confirm-modal{max-width:400px;padding:24px}.confirm-modal h3{margin:0 0 16px;color:var(--text-primary)}.confirm-modal p{color:var(--text-secondary);margin:0 0 24px}.error-message{background:#d32f2f26;color:var(--danger);padding:12px;border-radius:6px;margin-top:16px;font-size:.9rem}.loading{display:flex;align-items:center;justify-content:center;padding:40px;color:var(--text-secondary);font-size:1rem}@media(max-width:768px){.header{padding:0 16px;height:64px}.header-logo{height:40px}.header-right{gap:12px}.header-user{padding:6px 12px}.user-info{display:none}.user-avatar{width:36px;height:36px;font-size:1rem}.header-actions{gap:6px}.header-btn{width:38px;height:38px;border-radius:10px}.header-btn svg{width:18px;height:18px}.main{padding:16px}.toolbar{flex-direction:column;align-items:stretch;gap:12px}.toolbar .btn-primary,.export-dropdown{width:100%}.export-dropdown .btn-export{width:100%;justify-content:center}.filters{padding:12px}.filters-row{flex-direction:column;gap:8px}.filter-group{min-width:100%}.filter-actions{margin-top:8px}.filter-actions .btn-secondary{width:100%}.table-container{border-radius:8px;position:relative}.clients-table{font-size:.8rem}.clients-table th,.clients-table td{padding:8px 6px}.pagination{flex-direction:column;align-items:center;gap:12px;padding:12px}.pagination-info{order:1}.pagination-controls{order:2;flex-wrap:wrap;justify-content:center}.page-size{order:3}.btn-page{min-width:32px;height:32px;font-size:.85rem}.modal-content{max-width:100%;max-height:95vh;margin:8px;border-radius:8px}.modal-header{padding:16px}.modal-header h2{font-size:1.1rem}.modal-content form{padding:16px}.form-grid{grid-template-columns:1fr;gap:12px}.modal-actions{flex-direction:column}.modal-actions button{width:100%}.confirm-modal{padding:16px}.login-modal{padding:24px;margin:16px}}@media(max-width:480px){.header{padding:0 12px;height:60px}.header-logo{height:36px}.header-user{padding:4px 8px;border-radius:30px}.user-avatar{width:32px;height:32px;font-size:.9rem}.header-btn{width:34px;height:34px;border-radius:8px}.header-btn svg{width:16px;height:16px}.pagination-controls .btn-page{min-width:28px;height:28px;font-size:.8rem}.page-ellipsis{padding:0 4px}}.table-checkbox{width:18px;height:18px;cursor:pointer;accent-color:var(--accent)}.status-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;white-space:nowrap}.phone-duplicate{margin-top:4px;font-size:.75rem;display:flex;align-items:center;gap:8px;color:#e65100;background:#e651001a;padding:4px 8px;border-radius:4px}[data-theme=dark] .phone-duplicate{color:#ffb74d;background:#ffb74d26}.phone-duplicate button{background:#e65100;color:#fff;border:none;padding:2px 8px;border-radius:3px;font-size:.7rem;cursor:pointer;white-space:nowrap}.phone-duplicate button:hover{background:#bf360c}[data-theme=dark] .phone-duplicate button{background:#ff9800;color:#1c2128}[data-theme=dark] .phone-duplicate button:hover{background:#ffb74d}.phone-checking{margin-top:4px;font-size:.7rem;color:var(--text-muted)}.column-header-wrapper{position:relative}.column-header-filterable{cursor:pointer;display:flex;align-items:center;gap:4px;padding:4px 0;border-radius:4px;transition:color .2s;-webkit-user-select:none;user-select:none}.column-header-filterable:hover{color:var(--accent)}.filter-icon{width:14px;height:14px;opacity:.4;transition:opacity .2s,transform .2s;flex-shrink:0}.column-header-filterable:hover .filter-icon{opacity:.8}.column-header-filterable--active{color:var(--accent)}.column-header-filterable--active .filter-icon{opacity:1;color:var(--accent)}.filter-active-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0}.filter-dropdown{min-width:220px;max-height:300px;overflow-y:auto;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 20px #00000026;padding:8px;z-index:9999;animation:filterDropdownAppear .15s ease-out}@keyframes filterDropdownAppear{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}[data-theme=dark] .filter-dropdown{box-shadow:0 4px 20px #0006}.select-filter{display:flex;flex-direction:column;gap:2px}.filter-option{padding:8px 12px;border-radius:6px;cursor:pointer;transition:background .15s;font-size:.9rem}.filter-option:hover{background:var(--hover-bg)}.filter-option--selected{background:#1976d21a;color:var(--accent)}[data-theme=dark] .filter-option--selected{background:#5c9fd426}.filter-option .status-badge{display:inline-block}.text-filter{position:relative}.text-filter-input{width:100%;padding:10px 32px 10px 12px;border:1px solid var(--border-color);border-radius:6px;font-size:.9rem;background:var(--input-bg);color:var(--text-primary);box-sizing:border-box}.text-filter-input:focus{outline:none;border-color:var(--accent)}.text-filter-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;font-size:.8rem;line-height:1}.text-filter-clear:hover{color:var(--text-primary)}.boolean-filter{display:flex;flex-direction:column;gap:4px}.boolean-option{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:6px;cursor:pointer;transition:background .15s;font-size:.9rem}.boolean-option:hover{background:var(--hover-bg)}.boolean-option--selected{background:#1976d21a;color:var(--accent)}[data-theme=dark] .boolean-option--selected{background:#5c9fd426}.boolean-option input[type=radio]{accent-color:var(--accent)}.date-filter{position:relative}.date-filter-input{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;font-size:.9rem;background:var(--input-bg);color:var(--text-primary);box-sizing:border-box}.date-filter-input:focus{outline:none;border-color:var(--accent)}.date-filter-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;font-size:.8rem;line-height:1}.date-filter-clear:hover{color:var(--text-primary)}.date-range-filter{display:flex;flex-direction:column;gap:8px}.date-range-row{display:flex;align-items:center;gap:8px}.date-range-row label{font-size:.85rem;color:var(--text-secondary);min-width:30px}.date-range-row .date-filter-input{flex:1}.date-range-clear{width:100%;padding:8px;background:none;border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:.85rem;transition:all .2s}.date-range-clear:hover{background:var(--hover-bg);color:var(--text-primary)}.number-range-filter{display:flex;align-items:center;gap:4px}.number-range-inputs{display:flex;align-items:center;gap:4px;flex:1}.number-range-input{width:60px;padding:6px 8px;border:1px solid var(--border-color);border-radius:6px;font-size:.85rem;background:var(--input-bg);color:var(--text-primary)}.number-range-input:focus{outline:none;border-color:var(--accent-color)}.number-range-input::-webkit-inner-spin-button,.number-range-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.number-range-input{-moz-appearance:textfield}.number-range-separator{color:var(--text-secondary);font-size:.85rem}.filters-toolbar{display:flex;align-items:center;gap:16px;padding:12px 16px;background:var(--bg-secondary);border-radius:8px;margin-bottom:16px;box-shadow:0 1px 3px var(--shadow);min-height:48px}.toolbar-checkbox{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.9rem;color:var(--text-primary)}.toolbar-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}.toolbar-filter-info{display:flex;align-items:center;gap:12px;margin-left:auto}.active-filters-count{font-size:.85rem;color:var(--text-secondary);padding:4px 10px;background:#1976d21a;border-radius:12px;color:var(--accent)}[data-theme=dark] .active-filters-count{background:#5c9fd426}.btn-reset-filters{padding:6px 14px;background:none;border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:.85rem;transition:all .2s}.btn-reset-filters:hover{background:var(--hover-bg);border-color:var(--danger);color:var(--danger)}.btn-schedule-toggle{background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff;border:none;padding:10px 20px;border-radius:12px;cursor:pointer;font-size:.95rem;font-weight:600;letter-spacing:.3px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #ff980066;position:relative;overflow:hidden;white-space:nowrap}.btn-schedule-toggle:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff980080}.btn-schedule-toggle:active{transform:translateY(-1px)}.btn-schedule-toggle:disabled{background:linear-gradient(135deg,#9ca3af,#6b7280);cursor:not-allowed;box-shadow:none;transform:none}[data-theme=dark] .btn-schedule-toggle{background:linear-gradient(135deg,#ffb74d,#ff9800);box-shadow:0 4px 15px #ffb74d66}[data-theme=dark] .btn-schedule-toggle:hover{box-shadow:0 6px 20px #ffb74d80}.schedule-picker{display:flex;flex-direction:row;align-items:center;gap:8px}.schedule-picker input[type=date],.schedule-picker input[type=time]{padding:8px 10px;border:1px solid var(--border-color);border-radius:8px;background:var(--input-bg);color:var(--text-primary);font-size:.9rem}.pending-clients-bar{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:12px 16px;margin-bottom:16px}.pending-clients-title{font-weight:600;font-size:.9rem;color:#f57c00;margin-bottom:8px}[data-theme=dark] .pending-clients-title{color:#ffb74d}.pending-clients-list{display:flex;flex-wrap:wrap;gap:8px}.pending-client-card{display:flex;align-items:center;gap:10px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-left:4px solid #ff9800;border-radius:8px;padding:8px 12px}[data-theme=dark] .pending-client-card{border-left-color:#ffb74d}.pending-client-info{display:flex;flex-direction:column;gap:2px}.pending-client-name{font-weight:600;font-size:.85rem;color:var(--text-primary)}.pending-client-date{font-size:.75rem;color:var(--text-secondary)}.btn-cancel-pending{background:none;border:none;color:var(--danger);cursor:pointer;font-size:.8rem;font-weight:500;padding:4px 8px;border-radius:6px;transition:background .2s}.btn-cancel-pending:hover{background:#d32f2f1a}[data-theme=dark] .btn-cancel-pending:hover{background:#e86a6a26}@media(max-width:768px){.filter-dropdown{min-width:180px;left:auto;right:0}.filters-toolbar{padding:10px 12px;flex-wrap:wrap}.toolbar-filter-info{width:100%;justify-content:space-between;margin-left:0;margin-top:8px}.schedule-picker{flex-direction:column}}
