:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}*{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #f5f7fa;--bg-secondary: #ffffff;--bg-gradient: linear-gradient(135deg, #0e192d 0%, #e8ecf1 50%, #0e192d 100%);--accent-primary: #d4af37;--accent-secondary: #1a3a5c;--accent-tertiary: #b8860b;--accent-light: #f4e4c1;--accent-gradient: linear-gradient(135deg, #d4af37 0%, #b8860b 50%, #d4af37 100%);--text-primary: #1a3a5c;--text-secondary: #4a5f7f;--text-muted: #8a9db6;--border-color: rgba(212, 175, 55, .15);--glass-bg: rgba(255, 255, 255, .75);--glass-border: rgba(212, 175, 55, .2);--shadow-sm: 0 2px 8px rgba(26, 58, 92, .08);--shadow-md: 0 8px 20px rgba(26, 58, 92, .12);--shadow-lg: 0 15px 35px rgba(26, 58, 92, .15)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-gradient);color:var(--text-primary);overflow-x:hidden;position:relative}body:before{content:"";position:fixed;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(212,175,55,.08) 0%,transparent 70%);animation:float 20s ease-in-out infinite;pointer-events:none;z-index:0}body:after{content:"";position:fixed;bottom:-50%;left:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(26,58,92,.05) 0%,transparent 70%);animation:float 25s ease-in-out infinite reverse;pointer-events:none;z-index:0}@keyframes float{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-30px) scale(1.1)}66%{transform:translate(-20px,20px) scale(.9)}}#root{width:100%;min-height:100vh;position:relative;z-index:1}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.login-page{display:flex;min-height:100vh;background:#0a0a0f}.login-branding{flex:1.2;position:relative;display:flex;flex-direction:column;justify-content:center;padding:60px;overflow:hidden}.branding-bg{position:absolute;inset:0;z-index:0}.bg-gradient{position:absolute;inset:0;background:linear-gradient(135deg,#0f0f1a,#1a1a2e,#16213e 60%,#0f0f1a)}.bg-pattern{position:absolute;inset:0;background-image:radial-gradient(circle at 25% 25%,rgba(212,175,55,.03) 0%,transparent 50%),radial-gradient(circle at 75% 75%,rgba(212,175,55,.03) 0%,transparent 50%);background-size:100px 100px}.bg-glow{position:absolute;border-radius:50%;filter:blur(80px);animation:glowPulse 8s ease-in-out infinite}.bg-glow-1{top:10%;left:20%;width:400px;height:400px;background:radial-gradient(circle,rgba(212,175,55,.2) 0%,transparent 70%);animation-delay:0s}.bg-glow-2{bottom:20%;right:10%;width:350px;height:350px;background:radial-gradient(circle,rgba(184,134,11,.15) 0%,transparent 70%);animation-delay:2s}.bg-glow-3{top:50%;left:50%;transform:translate(-50%,-50%);width:500px;height:500px;background:radial-gradient(circle,rgba(212,175,55,.08) 0%,transparent 60%);animation-delay:4s}@keyframes glowPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.floating-lines{position:absolute;inset:0;overflow:hidden}.line{position:absolute;height:1px;background:linear-gradient(90deg,transparent,rgba(212,175,55,.4),transparent);animation:floatLine 20s linear infinite}.line-1{top:15%;width:200px;left:-200px;animation-delay:0s}.line-2{top:35%;width:300px;left:-300px;animation-delay:4s}.line-3{top:55%;width:250px;left:-250px;animation-delay:8s}.line-4{top:75%;width:180px;left:-180px;animation-delay:12s}.line-5{top:90%;width:220px;left:-220px;animation-delay:16s}@keyframes floatLine{0%{transform:translate(0)}to{transform:translate(calc(100vw + 300px))}}.particles{position:absolute;inset:0}.particle{position:absolute;width:4px;height:4px;background:#d4af37;border-radius:50%;opacity:0;animation:particleFloat 15s infinite;box-shadow:0 0 10px #d4af3780}.particle:nth-child(1){left:10%;top:20%;animation-delay:0s}.particle:nth-child(2){left:25%;top:60%;animation-delay:2s}.particle:nth-child(3){left:45%;top:30%;animation-delay:4s}.particle:nth-child(4){left:60%;top:70%;animation-delay:6s}.particle:nth-child(5){left:75%;top:40%;animation-delay:8s}.particle:nth-child(6){left:85%;top:80%;animation-delay:10s}@keyframes particleFloat{0%{opacity:0;transform:translateY(0) scale(0)}10%{opacity:1;transform:translateY(-20px) scale(1)}90%{opacity:1;transform:translateY(-100px) scale(1)}to{opacity:0;transform:translateY(-120px) scale(0)}}.branding-content{position:relative;z-index:10;max-width:500px}.brand-logo{display:flex;align-items:center;gap:16px;margin-bottom:48px}.logo-icon{width:80px;height:80px;background:linear-gradient(135deg,#d4af37,#b8860b);border-radius:20px;display:flex;align-items:center;justify-content:center;box-shadow:0 20px 40px #d4af374d,0 0 60px #d4af3733;animation:logoFloat 6s ease-in-out infinite}@keyframes logoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.logo-icon svg{color:#fff}.brand-logo h1{font-size:42px;font-weight:800;background:linear-gradient(135deg,#d4af37,#f4e4a6,#d4af37);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-1px;text-shadow:0 0 40px rgba(212,175,55,.3)}.brand-tagline{margin-bottom:24px}.brand-tagline h2{font-size:48px;font-weight:700;color:#fff;line-height:1.1;margin:0}.brand-tagline h2:last-child{background:linear-gradient(135deg,#d4af37,#f4e4a6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.brand-description{font-size:17px;color:#ffffffb3;line-height:1.7;margin-bottom:40px;max-width:420px}.brand-features{display:flex;flex-direction:column;gap:16px}.feature{display:flex;align-items:center;gap:14px;padding:14px 20px;background:#ffffff08;border:1px solid rgba(212,175,55,.15);border-radius:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease}.feature:hover{background:#d4af3714;border-color:#d4af374d;transform:translate(8px)}.feature-icon{width:40px;height:40px;background:linear-gradient(135deg,#d4af3733,#b8860b1a);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#d4af37}.feature span{color:#ffffffe6;font-size:15px;font-weight:500}.branding-footer{position:absolute;bottom:40px;left:60px;z-index:10}.branding-footer p{color:#fff6;font-size:13px;margin:0}.login-form-side{flex:.8;display:flex;align-items:center;justify-content:center;padding:40px;background:linear-gradient(180deg,#fafafa,#f5f5f5);position:relative}.login-form-side:before{content:"";position:absolute;left:0;top:10%;bottom:10%;width:1px;background:linear-gradient(180deg,transparent,rgba(212,175,55,.3),transparent)}.login-card{width:100%;max-width:400px;padding:48px 40px;background:#fff;border-radius:24px;box-shadow:0 25px 60px #00000014,0 0 0 1px #d4af371a;animation:cardAppear .6s cubic-bezier(.16,1,.3,1)}@keyframes cardAppear{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.card-header{text-align:center;margin-bottom:36px}.welcome-badge{display:inline-block;padding:8px 16px;background:linear-gradient(135deg,#d4af371a,#b8860b0d);border:1px solid rgba(212,175,55,.2);border-radius:20px;font-size:12px;font-weight:600;color:#b8860b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:20px}.card-header h3{font-size:28px;font-weight:700;color:#1a1a2e;margin:0 0 8px}.card-header p{font-size:14px;color:#64748b;margin:0}.login-form{display:flex;flex-direction:column;gap:20px}.login-field{display:flex;flex-direction:column;gap:8px}.login-field label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#374151}.login-field label svg{color:#d4af37}.login-field input{padding:14px 16px;background:#f8f9fa;border:2px solid #e5e7eb;border-radius:12px;font-size:15px;color:#1a1a2e;transition:all .3s ease;outline:none}.login-field input::placeholder{color:#9ca3af}.login-field input:focus{background:#fff;border-color:#d4af37;box-shadow:0 0 0 4px #d4af371a}.login-field input:disabled{opacity:.6;cursor:not-allowed}.login-error{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:10px;color:#dc2626;font-size:13px;font-weight:500;animation:shake .4s ease-out}.login-error svg{flex-shrink:0}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}.login-submit{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 24px;background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:8px;box-shadow:0 8px 24px #d4af3759;position:relative;overflow:hidden}.login-submit:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.login-submit:hover:not(:disabled):before{left:100%}.login-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 32px #d4af3773}.login-submit:active:not(:disabled){transform:translateY(0)}.login-submit:disabled{opacity:.7;cursor:not-allowed}.login-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.card-footer{margin-top:32px;text-align:center;padding-top:24px;border-top:1px solid rgba(212,175,55,.15)}.card-footer p{margin:0;font-size:12px;color:#9ca3af}@media(max-width:1024px){.login-page{flex-direction:column}.login-branding{flex:none;padding:40px 30px;min-height:50vh}.branding-content{text-align:center;margin:0 auto}.brand-logo{justify-content:center;margin-bottom:32px}.brand-tagline h2{font-size:36px}.brand-description{margin:0 auto 32px}.brand-features{align-items:center}.feature{width:100%;max-width:300px;justify-content:center}.branding-footer{display:none}.login-form-side{flex:none;padding:40px 24px}.login-form-side:before{display:none}.login-card{padding:36px 28px}}@media(max-width:480px){.login-branding{padding:30px 20px;min-height:45vh}.logo-icon{width:60px;height:60px}.logo-icon svg{width:36px;height:36px}.brand-logo h1{font-size:32px}.brand-tagline h2{font-size:28px}.brand-description{font-size:14px;display:none}.brand-features{display:none}.login-card{padding:32px 24px;border-radius:20px}.card-header h3{font-size:24px}}.whatsapp-preview-container{display:flex;flex-direction:column;gap:20px;transition:all .3s ease}.whatsapp-phone{background:#ffffff4d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:32px;overflow:hidden;box-shadow:0 20px 60px #d4af3740,0 8px 32px #d4af3726,0 0 0 2px #ffffff80,inset 0 1px #fff9;border:3px solid var(--glass-border);max-width:100%;position:relative;transition:all .3s ease}.whatsapp-phone:hover{box-shadow:0 24px 70px #d4af374d,0 12px 40px #d4af3733,0 0 0 2px #fff9,inset 0 1px #ffffffb3;transform:translateY(-2px)}.whatsapp-phone:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:140px;height:28px;background:#fff6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:0 0 20px 20px;z-index:100;box-shadow:inset 0 -2px 4px #0000001a}.whatsapp-header{background:#1a3a5c;padding:34px 16px 10px;display:flex;justify-content:space-between;align-items:center;min-height:70px}.header-left{display:flex;align-items:center;gap:12px;flex:1}.back-button{background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center}.contact-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;box-shadow:0 2px 4px #0003}.contact-info{display:flex;flex-direction:column;gap:2px}.contact-name{color:#fff;font-size:16px;font-weight:500}.contact-status{color:#ffffffb3;font-size:13px}.header-right{display:flex;gap:20px}.header-icon{background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;opacity:.9;transition:opacity .2s}.header-icon:hover{opacity:1}.whatsapp-chat{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="260" height="260" viewBox="0 0 260 260"><rect fill="%23e5ddd5" width="260" height="260"/><g fill="%23d9d9d9" fill-opacity="0.3"><circle cx="130" cy="65" r="1.5"/><circle cx="195" cy="65" r="1.5"/><circle cx="65" cy="130" r="1.5"/><circle cx="130" cy="130" r="1.5"/><circle cx="195" cy="130" r="1.5"/><circle cx="65" cy="195" r="1.5"/><circle cx="130" cy="195" r="1.5"/><circle cx="195" cy="195" r="1.5"/></g></svg>');background-color:#e5ddd5;padding:16px;min-height:450px;max-height:550px;overflow-y:auto;display:flex;flex-direction:column;gap:12px}.chat-date{display:flex;justify-content:center;margin:12px 0}.chat-date span{background:#ffffffe6;padding:6px 12px;border-radius:8px;font-size:12px;color:#667781;box-shadow:0 1px 2px #0000001a}.message-container{display:flex;margin:4px 0}.message-container.sent{justify-content:flex-end}.message-bubble{max-width:75%;padding:8px 12px;border-radius:8px;position:relative;box-shadow:0 1px 2px #0000001a}.message-bubble.sent{background:#fef5e7;border-bottom-right-radius:2px}.message-bubble.sent:after{content:"";position:absolute;bottom:0;right:-8px;width:0;height:0;border-style:solid;border-width:0 0 13px 8px;border-color:transparent transparent #fef5e7 transparent}.message-media{margin-bottom:8px;border-radius:8px;overflow:hidden;background:#fff}.preview-media-image,.preview-media-video{width:100%;max-width:280px;height:auto;display:block;border-radius:8px}.preview-media-video{max-height:200px}.message-text{font-size:14.2px;line-height:19px;color:#111;word-wrap:break-word;white-space:pre-wrap;margin-bottom:4px}.placeholder-text{color:#667781;font-style:italic}.message-meta{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-top:4px}.message-time{font-size:11px;color:#667781}.message-status{display:flex;align-items:center}.whatsapp-input{background:#f0f0f0;padding:8px 16px;display:flex;align-items:center;gap:8px;min-height:56px}.input-icon{background:none;border:none;padding:4px;cursor:pointer;display:flex;align-items:center;opacity:.7;transition:opacity .2s}.input-icon:hover{opacity:1}.whatsapp-input input{flex:1;padding:10px 12px;border:none;border-radius:20px;background:#fff;font-size:15px;outline:none}.send-button{background:#d4af37;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #0003}.send-button:hover{background:#b8860b;transform:scale(1.05)}.preview-info{background:linear-gradient(135deg,#d4af3714,#b8860b14);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:2px solid rgba(212,175,55,.2);border-radius:14px;padding:16px;text-align:center;box-shadow:0 4px 15px #d4af371a;transition:all .3s ease;position:relative;overflow:hidden}.preview-info:hover{background:linear-gradient(135deg,#d4af371f,#b8860b1f);transform:translateY(-2px);box-shadow:0 6px 20px #d4af3726}.preview-info p{font-size:13px;color:#1a3a5c;margin:0;font-weight:600;position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:8px}.preview-info p:before{content:"👁️";font-size:16px}.whatsapp-chat::-webkit-scrollbar{width:6px}.whatsapp-chat::-webkit-scrollbar-track{background:transparent}.whatsapp-chat::-webkit-scrollbar-thumb{background:#0003;border-radius:3px}.whatsapp-chat::-webkit-scrollbar-thumb:hover{background:#0000004d}.contact-importer{max-width:900px;margin:0 auto;padding:20px}.importer-header{text-align:center;margin-bottom:30px}.importer-header h2{font-size:28px;margin-bottom:8px;color:#1a1a1a}.importer-header p{color:#666;font-size:14px}.importer-body{background:#fff;border-radius:12px;padding:30px;box-shadow:0 2px 8px #0000001a}.file-upload-section{margin-bottom:30px}.file-upload-label{display:block;cursor:pointer}.file-upload-label input[type=file]{display:none}.file-upload-area{border:2px dashed #ddd;border-radius:12px;padding:40px 20px;text-align:center;transition:all .3s ease;background:#fafafa}.cleaning-results{margin-top:30px;padding:25px;background:linear-gradient(135deg,#f5f7fa,#e8ecf1);border-radius:12px;border:2px solid #d1d9e6}.cleaning-header{text-align:center;margin-bottom:25px}.cleaning-header h3{font-size:22px;color:#2d3748;margin:0}.cleaning-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-bottom:25px}.stat-card{background:#fff;border-radius:10px;padding:18px;display:flex;align-items:center;gap:12px;box-shadow:0 2px 8px #00000014;transition:transform .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.stat-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:12px;flex-shrink:0}.stat-icon svg{width:24px;height:24px}.stat-total .stat-icon{background:linear-gradient(135deg,#e9d5ff,#ddd6fe);color:#8b5cf6}.stat-valid .stat-icon{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#10b981}.stat-duplicate-file .stat-icon{background:linear-gradient(135deg,#fed7aa,#fde68a);color:#f59e0b}.stat-duplicate-db .stat-icon{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#3b82f6}.stat-invalid .stat-icon{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#ef4444}.stat-content{display:flex;flex-direction:column;gap:2px}.stat-value{font-size:28px;font-weight:700;color:#2d3748;line-height:1}.stat-label{font-size:12px;color:#718096;font-weight:500}.stat-valid{border-left:4px solid #48bb78}.stat-duplicate-file{border-left:4px solid #ed8936}.stat-duplicate-db{border-left:4px solid #4299e1}.stat-invalid{border-left:4px solid #f56565}.stat-total{border-left:4px solid #805ad5}.details-section{background:#fff;border-radius:10px;padding:20px;margin-bottom:20px}.details-section h4{font-size:16px;color:#2d3748;margin-bottom:15px;padding-bottom:10px;border-bottom:2px solid #e2e8f0}.details-list{display:flex;flex-direction:column;gap:10px}.detail-item{display:flex;align-items:center;gap:12px;padding:12px;background:#f7fafc;border-radius:8px;font-size:14px}.detail-item.duplicate{border-left:3px solid #ed8936}.detail-item.invalid{border-left:3px solid #f56565}.detail-phone{font-family:Courier New,monospace;font-weight:600;color:#2d3748}.detail-name{color:#4a5568;flex:1}.detail-count{color:#ed8936;font-weight:600}.detail-row{background:#e2e8f0;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:600;color:#4a5568}.detail-reason{color:#f56565;font-style:italic;font-size:13px}.detail-item-more{text-align:center;color:#718096;font-style:italic;padding:8px}.cleaning-actions{display:flex;justify-content:space-between;gap:15px;margin-top:25px}.btn-secondary{padding:12px 24px;background:#fff;color:#4a5568;border:2px solid #cbd5e0;border-radius:8px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#f7fafc;border-color:#a0aec0;transform:translateY(-1px)}.clean-btn{background:linear-gradient(135deg,#667eea,#764ba2)}.clean-btn:hover:not(:disabled){box-shadow:0 6px 16px #667eea66}.file-upload-area:hover{border-color:#4caf50;background:#f0f9f0}.file-upload-area svg{color:#4caf50;margin-bottom:10px}.file-upload-text{display:block;font-size:16px;font-weight:500;color:#333;margin-bottom:5px}.file-upload-hint{display:block;font-size:12px;color:#999}.import-error{background:#ffebee;color:#c62828;padding:12px 16px;border-radius:8px;margin-bottom:20px;display:flex;align-items:center;gap:10px}.import-error svg{flex-shrink:0}.mapping-section{margin-top:30px}.mapping-section h3{font-size:18px;margin-bottom:8px;color:#1a1a1a}.preview-section{margin-top:30px;border:2px solid #e0e0e0;border-radius:12px;overflow:hidden}.preview-header{background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;padding:16px 20px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.preview-header h3{margin:0;font-size:18px;font-weight:600}.preview-stats{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.preview-stat-badge{display:inline-flex;align-items:center;gap:8px;background:#fff3;padding:6px 12px;border-radius:20px;font-size:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.preview-stat-badge svg{flex-shrink:0}.preview-stat-badge strong{font-size:18px;font-weight:700}.preview-stat-info{font-size:13px;opacity:.9}.preview-table-container{overflow-x:auto;max-height:400px;background:#fff}.preview-table{width:100%;border-collapse:collapse;font-size:13px}.preview-table thead{position:sticky;top:0;background:#f7fafc;z-index:10}.preview-table th{padding:12px;text-align:left;font-weight:600;color:#4a5568;border-bottom:2px solid #e2e8f0;white-space:nowrap}.preview-table td{padding:12px;border-bottom:1px solid #f0f0f0;color:#2d3748}.preview-row-number{width:40px;text-align:center;font-weight:600;color:#a0aec0;background:#f7fafc}.phone-cell{font-family:Courier New,monospace;color:#2b6cb0;font-weight:500}.normalized-phone{font-family:Courier New,monospace;background:#e6fffa;color:#047857;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:600;white-space:nowrap}.phone-normalized{display:inline-block;background:#d1fae5;color:#065f46;padding:4px 8px;border-radius:6px;font-family:Courier New,monospace;font-size:12px;font-weight:600}.empty-value{color:#cbd5e0;font-style:italic}.column-badge{display:inline-block;margin-left:8px;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:500;white-space:nowrap}.phone-badge{background:#bee3f8;color:#2c5282}.name-badge{background:#fed7d7;color:#742a2a}.preview-footer{background:#f7fafc;padding:12px 20px;border-top:1px solid #e2e8f0;display:flex;align-items:center;gap:8px;color:#4a5568;font-size:13px}.preview-footer svg{color:#4299e1;flex-shrink:0}.preview-footer strong{color:#2d3748}.mapping-description{color:#666;font-size:14px;margin-bottom:20px}.mapping-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.mapping-field{display:flex;flex-direction:column;gap:8px}.mapping-field label{font-size:14px;font-weight:500;color:#333}.mapping-field select,.mapping-field input{padding:10px 12px;border:1px solid #ddd;border-radius:8px;font-size:14px;transition:border-color .2s}.mapping-field select:focus,.mapping-field input:focus{outline:none;border-color:#4caf50}.mapping-field select:disabled,.mapping-field input:disabled{background:#f5f5f5;cursor:not-allowed}.group-section{margin-bottom:30px;padding:20px;background:#f9f9f9;border-radius:8px}.group-section h3{font-size:18px;margin-bottom:15px;color:#1a1a1a}.group-selector{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:end}.group-divider{font-weight:600;color:#999;padding-bottom:10px}.preview-section{margin-bottom:30px}.preview-section h3{font-size:18px;margin-bottom:15px;color:#1a1a1a}.preview-table-container{overflow-x:auto;border-radius:8px;border:1px solid #e0e0e0}.preview-table{width:100%;border-collapse:collapse;font-size:14px}.preview-table thead{background:#f5f5f5}.preview-table th{padding:12px;text-align:left;font-weight:600;color:#333;border-bottom:2px solid #e0e0e0}.preview-table td{padding:10px 12px;border-bottom:1px solid #f0f0f0;color:#666}.preview-table tbody tr:hover{background:#fafafa}.import-actions{display:flex;justify-content:center;margin-bottom:20px}.import-btn{padding:12px 32px;background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #d4af374d}.import-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 16px #d4af3766}.import-btn:disabled{background:#ccc;cursor:not-allowed;box-shadow:none}.progress-section{text-align:center}.progress-bar{width:100%;height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden;margin-bottom:8px}.progress-fill{height:100%;background:linear-gradient(90deg,#d4af37,#8bc34a);transition:width .3s ease}.progress-text{font-size:14px;color:#666;font-weight:500}.importer-instructions{margin-top:30px;padding:20px;background:#f9f9f9;border-radius:8px;border-left:4px solid #4CAF50}.importer-instructions h3{font-size:16px;margin-bottom:12px;color:#1a1a1a}.importer-instructions ul{list-style:none;padding:0;margin:0}.importer-instructions li{padding:8px 0;color:#666;font-size:14px;line-height:1.5}.importer-instructions li:before{content:"✓ ";color:#4caf50;font-weight:700;margin-right:8px}.importer-instructions pre{background:#fff;padding:12px;border-radius:4px;font-size:12px;overflow-x:auto;margin-top:8px;border:1px solid #e0e0e0}@media(max-width:768px){.group-selector{grid-template-columns:1fr}.group-divider{text-align:center;padding:10px 0}.mapping-fields{grid-template-columns:1fr}}:root{--kummi-gold: #d4af37;--kummi-gold-light: #e8d896;--kummi-gold-dark: #b8860b;--kummi-navy: #1a3a5c;--kummi-navy-dark: #0e192d;--kummi-red: #c67070;--text-primary: #1a1a1a;--text-secondary: #4a5f7f;--text-muted: #9ca3af;--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--bg-tertiary: #f5f7fa;--border-light: rgba(212, 175, 55, .12);--border-medium: rgba(212, 175, 55, .2);--border-dark: rgba(212, 175, 55, .4);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .06);--shadow-md: 0 4px 15px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .12);--shadow-gold: 0 4px 15px rgba(212, 175, 55, .3);--transition-fast: .2s ease;--transition-normal: .3s ease;--transition-smooth: .3s cubic-bezier(.4, 0, .2, 1)}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.animate-fade-in{animation:fadeIn .5s ease-out}.animate-slide-down{animation:slideDown .3s ease-out}.animate-slide-up{animation:slideUp .3s ease-out}.card{background:var(--bg-primary);border-radius:16px;border:2px solid var(--border-light);box-shadow:var(--shadow-sm);transition:all var(--transition-smooth)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-elevated{background:var(--bg-primary);border-radius:20px;border:2px solid var(--border-light);box-shadow:var(--shadow-lg);padding:32px}.btn{padding:12px 24px;border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all var(--transition-smooth);display:inline-flex;align-items:center;gap:8px;justify-content:center}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:linear-gradient(135deg,var(--kummi-gold) 0%,var(--kummi-gold-dark) 100%);color:#fff;box-shadow:var(--shadow-gold)}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #d4af3766}.btn-secondary{background:var(--bg-primary);color:var(--text-secondary);border:2px solid var(--border-medium)}.btn-secondary:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--kummi-gold);transform:translateY(-1px)}.btn-danger{background:#ef444426;color:#ef4444;border:2px solid rgba(239,68,68,.4)}.btn-danger:hover:not(:disabled){background:#ef4444;color:#fff;border-color:#ef4444;transform:translateY(-1px)}.btn-icon{width:40px;height:40px;padding:0;border-radius:10px}.badge{display:inline-block;padding:6px 14px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.badge-primary{background:linear-gradient(135deg,var(--kummi-gold) 0%,var(--kummi-gold-dark) 100%);color:#fff;box-shadow:var(--shadow-gold)}.badge-success{background:linear-gradient(135deg,var(--kummi-navy) 0%,#2a5a8f 100%);color:#fff}.badge-warning{background:#f4e4c1;color:var(--kummi-gold-dark)}.badge-danger{background:linear-gradient(135deg,var(--kummi-red) 0%,#9f4f4f 100%);color:#fff}.badge-neutral{background:#f1f5f9;color:#475569}.status-running{background:linear-gradient(135deg,var(--kummi-gold) 0%,var(--kummi-gold-dark) 100%);color:#fff;animation:pulse 2s infinite}.status-completed{background:linear-gradient(135deg,var(--kummi-navy) 0%,#2a5a8f 100%);color:#fff}.status-failed{background:linear-gradient(135deg,var(--kummi-red) 0%,#9f4f4f 100%);color:#fff}.input{width:100%;padding:14px 18px;border:2px solid var(--border-medium);border-radius:12px;font-size:15px;font-weight:500;background:var(--bg-primary);color:var(--text-primary);transition:all var(--transition-smooth);font-family:inherit}.input::placeholder{color:var(--text-muted);font-weight:400}.input:focus{outline:none;border-color:var(--kummi-gold);box-shadow:0 0 0 4px #d4af3726}.input:disabled{background:var(--bg-secondary);cursor:not-allowed}.spinner{width:40px;height:40px;border:4px solid #f0f0f0;border-top-color:var(--kummi-gold);border-radius:50%;animation:spin .8s linear infinite}.spinner-sm{width:20px;height:20px;border-width:3px}.spinner-lg{width:56px;height:56px;border-width:5px}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:20px}.loading-text{color:var(--text-secondary);font-size:16px;font-weight:600}.empty-state svg{margin-bottom:24px;color:var(--text-muted);opacity:.3}.empty-state h4{font-size:22px;font-weight:800;color:var(--text-primary);margin-bottom:10px}.empty-state p{color:var(--text-secondary);font-size:15px;font-weight:500;max-width:400px}.skeleton{pointer-events:none;-webkit-user-select:none;user-select:none;opacity:.7}.skeleton-shimmer{background:linear-gradient(90deg,#f0f0f0,#e0e0e0 20%,#f0f0f0 40% 100%);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:8px}.avatar{display:flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,var(--kummi-gold),var(--kummi-gold-dark));color:#fff;font-weight:800;text-transform:uppercase;box-shadow:0 2px 8px #d4af374d;flex-shrink:0}.avatar-sm{width:36px;height:36px;font-size:14px}.avatar-md{width:44px;height:44px;font-size:16px}.avatar-lg{width:56px;height:56px;font-size:20px}.modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.modal{background:#fff;border-radius:20px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:2px solid #f0f0f0}.modal-header h2{margin:0;font-size:24px;color:var(--text-primary);font-weight:700}.modal-body{padding:24px}.modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px;border-top:2px solid #f0f0f0}.btn-close{background:#f1f5f9;border:none;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:10px;cursor:pointer;color:var(--text-muted);transition:all var(--transition-fast)}.btn-close:hover{background:#e2e8f0;color:var(--text-primary)}.table-container{width:100%;overflow-x:auto;border-radius:12px;border:1px solid var(--border-light);background:var(--bg-primary);box-shadow:var(--shadow-sm)}.table{width:100%;border-collapse:separate;border-spacing:0;font-size:14px}.table thead{background:linear-gradient(to bottom,#fafafa,#f5f5f5);position:sticky;top:0;z-index:10}.table th{padding:16px 20px;text-align:left;font-weight:700;color:var(--kummi-gold);text-transform:uppercase;font-size:11px;letter-spacing:1px;border-bottom:2px solid var(--border-light)}.table tbody tr{transition:all var(--transition-fast);border-bottom:1px solid #f3f4f6}.table tbody tr:hover{background:#fafbff}.table td{padding:20px;vertical-align:middle;color:var(--text-primary)}.progress-bar{position:relative;height:8px;background:#f1f5f9;border-radius:999px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--kummi-gold) 0%,var(--kummi-gold-dark) 100%);transition:width .5s cubic-bezier(.4,0,.2,1);border-radius:999px;box-shadow:0 0 10px #d4af3766}.custom-scrollbar::-webkit-scrollbar{width:8px;height:8px}.custom-scrollbar::-webkit-scrollbar-track{background:#f0f0f0;border-radius:4px}.custom-scrollbar::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px;transition:background var(--transition-fast)}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#999}.alert{padding:16px 20px;border-radius:12px;display:flex;align-items:center;gap:12px;margin-bottom:20px;animation:slideDown .4s ease-out}.alert svg{flex-shrink:0}.alert-success{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border:2px solid #4CAF50;color:#1b5e20}.alert-warning{background:linear-gradient(135deg,#fff8e1,#ffecb3);border:2px solid #ff9800;color:#e65100}.alert-error{background:linear-gradient(135deg,#ffebee,#ffcdd2);border:2px solid #f44336;color:#b71c1c}.alert-info{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border:2px solid #2196F3;color:#0d47a1}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-bottom:20px;border-bottom:2px solid var(--border-light)}.section-title{font-size:20px;font-weight:800;color:var(--text-primary);margin:0;letter-spacing:-.3px}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-auto{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.text-left{text-align:left}.text-right{text-align:right}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-primary{color:var(--text-primary)}.text-gold{color:var(--kummi-gold)}.font-bold{font-weight:700}.font-semibold{font-weight:600}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}.mb-4{margin-bottom:32px}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mt-4{margin-top:32px}.p-1{padding:8px}.p-2{padding:16px}.p-3{padding:24px}.p-4{padding:32px}@media(max-width:1024px){.grid-2,.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.card-elevated{padding:20px;border-radius:16px}.modal{width:95%;border-radius:16px}.grid-2,.grid-3,.grid-4,.grid-auto{grid-template-columns:1fr}.btn{padding:10px 18px;font-size:13px}}@media(max-width:480px){.section-header{flex-direction:column;align-items:flex-start;gap:12px}}.contact-list{width:100%;max-width:100%;padding:0;background:transparent}.contact-stats{display:flex;gap:16px;margin-bottom:32px;flex-wrap:wrap}.stat-card{background:#fff;border-radius:16px;padding:24px;display:flex;align-items:center;gap:16px;box-shadow:0 2px 8px #0000000f;border:2px solid rgba(156,163,175,.2);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;flex:0 0 auto;min-width:200px}.stat-card:before{content:"";position:absolute;top:-20px;right:-20px;width:80px;height:80px;background:radial-gradient(circle,var(--hover-bg) 0%,transparent 70%);border-radius:50%}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #d4af374d;border-color:#d4af3799}.stat-card.main{background:linear-gradient(135deg,#190e2d 0% 100%);color:#4619cf;border-color:transparent;box-shadow:-1px 0 3px #d4af374d}.stat-card.main:before{background:radial-gradient(circle,rgba(255,255,255,.12) 0%,transparent 70%)}.stat-icon{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#9ca3af26;flex-shrink:0;color:#9ca3af;transition:all .3s ease}.stat-icon svg{width:28px;height:28px}.stat-card:hover .stat-icon{transform:scale(1.08);background:#d4af3733;color:#d4af37}.stat-card:hover .stat-value,.stat-card:hover .stat-label{color:#d4af37}.stat-card.main .stat-icon{background:#ffffff40;color:#fff}.stat-content{flex:1;z-index:1}.stat-value{font-size:32px;font-weight:800;line-height:1;margin-bottom:6px;color:#6b7280;letter-spacing:-.5px;transition:color .3s ease}.stat-card.main .stat-value{color:#fff}.stat-label{font-size:12px;color:#9ca3af;opacity:.9;font-weight:600;text-transform:uppercase;letter-spacing:.5px;line-height:1.2;white-space:nowrap;transition:color .3s ease}.skeleton{pointer-events:none;-webkit-user-select:none;user-select:none;position:relative}.skeleton-shimmer{background:linear-gradient(110deg,#d4af3714,#d4af3726,#ffffff4d,#d4af3726 60%,#d4af3714);background-size:300% 100%;animation:shimmer 2s ease-in-out infinite;border-radius:8px;position:relative;overflow:hidden}.skeleton-shimmer:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);animation:shine 2s ease-in-out infinite}@keyframes shimmer{0%{background-position:300% 0}to{background-position:-300% 0}}@keyframes shine{0%{left:-100%}50%,to{left:100%}}.stat-card.skeleton{border-color:#d4af3726;background:linear-gradient(135deg,#d4af3708,#fff);animation:pulse-soft 2s ease-in-out infinite}.stat-card.skeleton .stat-icon{background:linear-gradient(135deg,#d4af371a,#b8860b1a)}.group-card.skeleton{border-color:#d4af3726;background:linear-gradient(135deg,#d4af3708,#fff);cursor:default;animation:pulse-soft 2s ease-in-out infinite}.group-card.skeleton:nth-child(1){animation-delay:0s}.group-card.skeleton:nth-child(2){animation-delay:.15s}.group-card.skeleton:nth-child(3){animation-delay:.3s}.group-card.skeleton:hover{transform:none;box-shadow:0 2px 8px #0000000f;border-color:#d4af3726}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.7}}.contacts-table tbody tr.skeleton-row{animation:fade-in-row .5s ease-out forwards;opacity:0}.contacts-table tbody tr.skeleton-row:nth-child(1){animation-delay:0s}.contacts-table tbody tr.skeleton-row:nth-child(2){animation-delay:.08s}.contacts-table tbody tr.skeleton-row:nth-child(3){animation-delay:.16s}.contacts-table tbody tr.skeleton-row:nth-child(4){animation-delay:.24s}.contacts-table tbody tr.skeleton-row:nth-child(5){animation-delay:.32s}.contacts-table tbody tr.skeleton-row:nth-child(6){animation-delay:.4s}@keyframes fade-in-row{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.skeleton-avatar{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#d4af3726,#b8860b1a);position:relative;overflow:hidden}.skeleton-avatar:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.5) 50%,transparent 100%);animation:shine 2s ease-in-out infinite}.skeleton-text{height:14px;border-radius:6px;background:linear-gradient(110deg,#d4af371a,#d4af372e,#fff6,#d4af372e,#d4af371a);background-size:300% 100%;animation:shimmer 2s ease-in-out infinite}.skeleton-text.short{width:60px}.skeleton-text.medium{width:100px}.skeleton-text.long{width:150px}.skeleton-text.full{width:100%}.group-avatar-skeleton{flex-shrink:0}.skeleton-badge{height:28px;width:90px;border-radius:8px;background:linear-gradient(110deg,#d4af3714,#d4af3726,#ffffff59,#d4af3726,#d4af3714);background-size:300% 100%;animation:shimmer 2s ease-in-out infinite}.skeleton-button{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#d4af371a,#b8860b1a);position:relative;overflow:hidden}.skeleton-button:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);animation:shine 2s ease-in-out infinite}.contact-controls{display:flex;gap:16px;margin-bottom:32px;flex-wrap:wrap;align-items:center}.search-box{flex:1;min-width:300px;position:relative}.search-box svg{position:absolute;left:18px;top:50%;transform:translateY(-50%);color:var(--primary-color);z-index:1;transition:all .3s ease}.search-box input:focus+svg,.search-box:hover svg{color:var(--primary-color);transform:translateY(-50%) scale(1.1)}.search-box input{width:100%;padding:16px 20px 16px 52px;border:2px solid var(--border-color);border-radius:16px;font-size:15px;background:#fff;transition:all .3s cubic-bezier(.4,0,.2,1);color:var(--text-primary);box-shadow:0 4px 15px #0000000d;font-weight:500}.search-box input::placeholder{color:#a0a0a0;font-weight:400}.search-box input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 4px #8b5cf626,0 8px 20px #8b5cf626;transform:translateY(-1px)}.filter-group{display:flex;align-items:center;gap:12px;background:#fff;padding:8px 16px;border-radius:16px;box-shadow:0 4px 15px #0000000d}.filter-group label{font-size:12px;font-weight:700;color:var(--primary-color);white-space:nowrap;text-transform:uppercase;letter-spacing:.8px}.filter-group select{padding:12px 16px;border:2px solid var(--border-color);border-radius:12px;font-size:14px;min-width:220px;background:#fff;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);color:var(--text-primary);font-weight:600}.filter-group select:hover{border-color:var(--primary-color);background:var(--hover-bg)}.filter-group select:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 4px #8b5cf626}.groups-section{margin-bottom:32px}.groups-section h3{font-size:13px;font-weight:800;margin-bottom:18px;color:var(--primary-color);text-transform:uppercase;letter-spacing:1.5px;display:flex;align-items:center;gap:8px}.groups-section h3:before{content:"";width:4px;height:16px;background:linear-gradient(135deg,var(--primary-color) 0%,var(--primary-dark) 100%);border-radius:4px}.groups-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.group-card{background:linear-gradient(145deg,#fffffffa,#fafafaf2);border:2px solid rgba(212,175,55,.12);border-radius:20px;padding:28px 24px;cursor:pointer;transition:all .35s cubic-bezier(.4,0,.2,1);display:flex;justify-content:space-between;align-items:center;box-shadow:0 4px 12px #00000014,0 2px 4px #d4af370d,inset 0 1px #fffc;position:relative;overflow:hidden;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.group-card:before{content:"";position:absolute;top:0;left:0;right:0;height:35%;background:linear-gradient(180deg,rgba(212,175,55,.08) 0%,transparent 100%);opacity:0;transition:opacity .35s ease;pointer-events:none}.group-card:after{content:"●";position:absolute;font-size:120px;opacity:.03;right:-15px;bottom:-20px;color:#d4af37;font-weight:900;transition:all .35s cubic-bezier(.4,0,.2,1);pointer-events:none}.group-card:hover{border-color:#d4af3759;box-shadow:0 12px 32px #0000001f,0 4px 16px #d4af3733,inset 0 1px #fff;transform:translateY(-6px) scale(1.02)}.group-card:hover:before{opacity:1}.group-card:hover:after{opacity:.06;transform:scale(1.15) rotate(15deg);right:-20px;bottom:-25px}.group-card.active{background:linear-gradient(145deg,#d4af37,#b8860b);border-color:#ffffff40;color:#fff;box-shadow:0 12px 40px #d4af3773,0 4px 16px #b8860b59,inset 0 1px #ffffff4d;transform:translateY(-4px)}.group-card.active:before{background:linear-gradient(180deg,rgba(255,255,255,.15) 0%,transparent 100%);opacity:1}.group-card.active:after{content:"●";opacity:.12;color:#fff;font-size:140px;transform:rotate(-10deg)}.group-info{flex:1;padding-right:20px;z-index:1;position:relative;min-width:0;overflow:hidden}.group-name{font-size:18px;font-weight:800;margin-bottom:10px;display:flex;align-items:center;gap:12px;letter-spacing:-.5px;transition:all .3s ease;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-name:before{content:"";width:10px;height:10px;background:linear-gradient(135deg,#d4af37,#b8860b);border-radius:50%;flex-shrink:0;box-shadow:0 2px 8px #d4af3766;transition:all .3s ease}.group-card:hover .group-name{letter-spacing:-.3px;transform:translate(2px)}.group-card:hover .group-name:before{transform:scale(1.2);box-shadow:0 3px 12px #d4af3799}.group-card.active .group-name:before{background:#fff;box-shadow:0 3px 12px #fff9}.group-count{font-size:14px;opacity:.75;font-weight:600;padding-left:22px;transition:all .3s ease}.group-card:hover .group-count{opacity:.9;transform:translate(2px)}.group-card.active .group-count{opacity:.95}.delete-group-btn{background:#ef4444;border:2px solid #dc2626;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);color:#fff;flex-shrink:0;z-index:10;position:relative;box-shadow:0 4px 12px #ef444466,inset 0 1px #fff3;font-size:28px;font-weight:300;line-height:1;padding:0 0 4px}.delete-group-btn:hover{background:#dc2626;transform:scale(1.12);box-shadow:0 8px 28px #ef44448c,inset 0 1px #ffffff4d;border-color:#b91c1c}.delete-group-btn:hover svg{transform:scale(1.1) rotate(-5deg)}.delete-group-btn:active{transform:scale(1.05);box-shadow:0 4px 16px #ef444466,inset 0 1px #fff3}.group-card.active .delete-group-btn{background:#ffffff40;color:#fff;border-color:#fff6;box-shadow:0 4px 16px #00000040,inset 0 1px #ffffff4d}.group-card.active .delete-group-btn:hover{background:#fff6;transform:scale(1.12);box-shadow:0 8px 28px #00000059,inset 0 1px #fff6;border-color:#fff9}.contacts-section{background:#fff;border-radius:20px;border:2px solid rgba(102,126,234,.1);padding:32px;box-shadow:0 4px 20px #00000014;position:relative;overflow:hidden}.contacts-section:before{content:"";position:absolute;top:-50px;right:-50px;width:200px;height:200px;background:radial-gradient(circle,rgba(102,126,234,.05) 0%,transparent 70%);border-radius:50%;pointer-events:none}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;padding-bottom:20px;border-bottom:2px solid rgba(102,126,234,.1);position:relative;z-index:1}.section-header h3{font-size:20px;font-weight:800;color:#1a1a1a;display:flex;align-items:center;gap:12px;letter-spacing:-.3px}.count-badge{background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;padding:8px 18px;border-radius:24px;font-size:14px;font-weight:800;box-shadow:0 4px 15px #d4af3759;letter-spacing:.3px}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px}.spinner{width:48px;height:48px;border:5px solid rgba(212,175,55,.15);border-top:5px solid #d4af37;border-radius:50%;animation:spin 1s cubic-bezier(.68,-.55,.265,1.55) infinite;margin-bottom:20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-state p{color:#d4af37;font-size:16px;font-weight:600}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;text-align:center}.empty-state svg{margin-bottom:24px;color:#667eea4d}.empty-state h4{font-size:22px;font-weight:800;color:#1a1a1a;margin-bottom:10px;letter-spacing:-.3px}.empty-state p{color:#d4af37;font-size:15px;font-weight:500;max-width:400px}.contacts-table-container{width:100%;overflow:visible;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.contacts-table{width:100%;border-collapse:separate;border-spacing:0;font-size:14px;background:#fff}.contacts-table thead{background:linear-gradient(to bottom,#faf9ff,#f5f3ff);position:sticky;top:0;z-index:10}.contacts-table th{padding:18px 20px;text-align:left;font-weight:700;color:#d4af37;text-transform:uppercase;font-size:11px;letter-spacing:1px;border-bottom:2px solid #e9e4ff}.contacts-table th:first-child{padding-left:24px;border-radius:12px 0 0}.contacts-table th:last-child{border-radius:0 12px 0 0;text-align:center}.contacts-table tbody tr{transition:all .2s ease;border-bottom:1px solid #f3f4f6}.contacts-table tbody tr:hover{background:#fafbff}.contacts-table tbody tr:last-child{border-bottom:none}.contacts-table td{padding:20px;vertical-align:middle;color:var(--text-primary)}.contacts-table td:first-child{padding-left:24px}.contacts-table td:last-child{text-align:center}.contact-name{display:flex;align-items:center;gap:12px}.avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px;flex-shrink:0;text-transform:uppercase;box-shadow:0 2px 8px #d4af374d;transition:transform .2s ease}.contacts-table tbody tr:hover .avatar{transform:scale(1.05)}.contact-name span{font-weight:600;color:var(--text-primary);font-size:14px;white-space:nowrap}.phone-link{color:#d4af37;text-decoration:none;font-weight:600;font-size:13px;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;transition:all .2s ease;white-space:nowrap}.phone-link:hover{background:#d4af371a;transform:translate(2px)}.phone-link svg{width:16px;height:16px;flex-shrink:0}.contacts-table td:nth-child(3){color:var(--text-secondary);font-size:13px}.group-badge{display:inline-block;padding:6px 14px;background:linear-gradient(135deg,#f0edff,#e9e4ff);color:#d4af37;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.date-text{color:var(--text-secondary);font-size:12px;font-weight:500;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.date-text:before{content:"📅";font-size:14px}.action-buttons{display:flex;gap:8px;justify-content:center}.action-btn{width:38px;height:32px;padding:0;border:none;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;background:transparent}.action-btn.delete{color:#ef4444;background:#fef2f2;border:1px solid #fecaca}.action-btn.delete:hover{background:#ef4444;color:#fff;border-color:#ef4444;transform:translateY(-1px);box-shadow:0 2px 8px #ef44444d}.action-btn svg{width:18px;height:18px;flex-shrink:0}.pagination{display:flex;align-items:center;justify-content:space-between;margin-top:32px;padding-top:24px;border-top:2px solid var(--border-color);flex-wrap:wrap;gap:16px}.pagination-btn{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#fff;border:2px solid var(--border-color);border-radius:12px;color:#d4af37;font-weight:600;font-size:14px;cursor:pointer;transition:all .3s ease}.pagination-btn:hover:not(:disabled){background:#d4af37;color:#fff;border-color:#d4af37;transform:translateY(-2px);box-shadow:0 4px 12px #d4af3740}.pagination-btn:disabled{opacity:.4;cursor:not-allowed;background:#f5f5f5;color:#999;border-color:#e0e0e0}.pagination-numbers{display:flex;align-items:center;gap:8px}.pagination-number{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#fff;border:2px solid var(--border-color);border-radius:10px;color:var(--text-primary);font-weight:600;font-size:14px;cursor:pointer;transition:all .3s ease}.pagination-number:hover{background:var(--hover-bg);border-color:var(--primary-color);color:var(--primary-color);transform:translateY(-2px)}.pagination-number.active{background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;border-color:transparent;box-shadow:0 4px 12px #d4af374d;transform:scale(1.1)}.pagination-dots{color:var(--text-secondary);font-weight:600;padding:0 4px}.pagination-info{color:var(--text-secondary);font-size:14px;font-weight:600;padding:8px 16px;background:var(--hover-bg);border-radius:10px}@media(max-width:1024px){.contact-stats{gap:12px}.stat-card{padding:20px;min-width:180px}.contacts-table{font-size:13px}.contacts-table th,.contacts-table td{padding:16px}.avatar{width:40px;height:40px;font-size:15px}.groups-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}}@media(max-width:768px){.contact-stats{flex-direction:column}.stat-card{width:100%;min-width:unset}.contact-controls{flex-direction:column;align-items:stretch}.search-box{min-width:100%}.filter-group{width:100%;padding:12px 16px}.filter-group select{width:100%;min-width:unset}.groups-grid{grid-template-columns:1fr}.contacts-section{padding:20px;border-radius:16px}.section-header h3{font-size:16px}.count-badge{padding:6px 12px;font-size:12px}.contacts-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.contacts-table{min-width:700px;font-size:12px}.contacts-table th,.contacts-table td{padding:14px 12px}.contacts-table th:first-child,.contacts-table td:first-child{padding-left:16px}.avatar{width:36px;height:36px;font-size:14px}.contact-name span{font-size:13px}.phone-link{font-size:12px;padding:5px 8px}.group-badge{font-size:10px;padding:5px 10px}.action-btn{width:34px;height:34px}.pagination{flex-direction:column;gap:12px}.pagination-btn{width:100%;justify-content:center}.pagination-numbers{order:-1}.pagination-info{width:100%;text-align:center}}@media(max-width:480px){.stat-card{flex-direction:column;text-align:center;gap:12px}.stat-value{font-size:28px}.groups-section h3{font-size:12px}.group-card{padding:16px}.contacts-table{min-width:650px}}.stat-card,.group-card,.contacts-table tbody tr{animation:fadeIn .5s ease-out backwards}.stat-card:nth-child(1){animation-delay:.1s}.stat-card:nth-child(2){animation-delay:.2s}.stat-card:nth-child(3){animation-delay:.3s}.recipient-selector{background:#fff;border-radius:20px;padding:28px;box-shadow:0 4px 20px #00000014;border:2px solid rgba(102,126,234,.1);display:flex;flex-direction:column;gap:24px;box-sizing:border-box;width:100%;max-width:100%;overflow:hidden}.recipient-selector *{box-sizing:border-box;max-width:100%}.selection-mode-tabs{display:flex;gap:12px;padding:6px;background:#667eea0d;border-radius:16px;overflow-x:auto;flex-shrink:0}.mode-tab{flex:1;min-width:fit-content;padding:12px 20px;border:2px solid transparent;border-radius:12px;background:transparent;color:#0e192d;font-weight:600;font-size:14px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}.mode-tab:hover{background:#667eea14;transform:translateY(-1px)}.mode-tab.active{background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;box-shadow:0 4px 15px #d4af3759;transform:translateY(-1px)}.mode-tab svg{width:20px;height:20px}.selection-content{min-height:280px;overflow:hidden;width:100%;box-sizing:border-box}.manual-input{display:flex;flex-direction:column;gap:12px;min-height:260px}.manual-input label{font-weight:700;color:#1a1a1a;font-size:15px}.input-with-button{display:flex;gap:12px}.input-with-button input{flex:1;padding:14px 18px;border:2px solid rgba(212,175,55,.2);border-radius:12px;font-size:15px;font-weight:500;transition:all .3s ease}.input-with-button input:focus{outline:none;border-color:#d4af37;box-shadow:0 0 0 4px #d4af371a}.add-btn{padding:14px 24px;background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;border:none;border-radius:12px;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:8px;white-space:nowrap;box-shadow:0 4px 15px #d4af374d}.add-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #d4af3766}.add-btn:active{transform:translateY(0)}.helper-text{font-size:13px;color:#9ca3af;font-weight:500;margin:0;line-height:1.6}.manual-form{display:flex;flex-direction:column;gap:16px;background:#d4af370a;padding:20px;border-radius:12px;border:1px solid rgba(212,175,55,.15)}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:13px;font-weight:600;color:#1a1a1a}.form-group input,.form-group select{padding:12px 16px;border:2px solid rgba(212,175,55,.2);border-radius:10px;font-size:14px;font-weight:500;transition:all .3s ease;background:#fff;color:#1a1a1a}.form-group select option{color:#1a1a1a;background:#fff}.form-group input:focus,.form-group select:focus{outline:none;border-color:#d4af37;box-shadow:0 0 0 3px #d4af371a}.manual-actions{display:flex;gap:12px;margin-top:8px}.add-btn-temp,.add-btn-save{flex:1;padding:12px 20px;border:none;border-radius:10px;font-weight:700;font-size:14px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:8px}.add-btn-temp{background:#fff;color:#d4af37;border:2px solid #d4af37}.add-btn-temp:hover:not(:disabled){background:#d4af371a;transform:translateY(-1px)}.add-btn-save{background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;box-shadow:0 4px 15px #d4af374d}.add-btn-save:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #d4af3766}.add-btn-temp:disabled,.add-btn-save:disabled{opacity:.5;cursor:not-allowed;transform:none}.add-btn-temp:active:not(:disabled),.add-btn-save:active:not(:disabled){transform:translateY(0)}.search-contacts{display:flex;flex-direction:column;gap:16px;overflow:hidden;width:100%;box-sizing:border-box;min-height:260px}.search-input-wrapper{position:relative;display:flex;align-items:center;width:100%;max-width:100%;box-sizing:border-box}.search-input-wrapper svg{position:absolute;left:16px;color:#d4af37;pointer-events:none}.search-input-wrapper input{width:100%;padding:14px 18px 14px 48px;border:2px solid rgba(212,175,55,.2);border-radius:12px;font-size:15px;font-weight:500;transition:all .3s ease;box-sizing:border-box}.search-input-wrapper input:focus{outline:none;border-color:#d4af37;box-shadow:0 0 0 4px #d4af371a}.contacts-list{max-height:350px;overflow-y:auto;overflow-x:hidden;display:block;padding:4px;width:100%;box-sizing:border-box;scrollbar-width:thin;scrollbar-color:#d4af37 rgba(212,175,55,.15)}.contacts-list::-webkit-scrollbar{width:10px}.contacts-list::-webkit-scrollbar-track{background:#d4af3726;border-radius:10px}.contacts-list::-webkit-scrollbar-thumb{background:#d4af37;border-radius:10px}.contacts-list::-webkit-scrollbar-thumb:hover{background:#b8860b}.contact-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border:2px solid rgba(212,175,55,.15);border-radius:14px;cursor:pointer;transition:all .2s ease;background:#fff;overflow:hidden;box-sizing:border-box;margin-bottom:8px}.contact-item:hover{border-color:#d4af37;box-shadow:0 4px 15px #d4af3726}.contact-item.selected{background:linear-gradient(135deg,#d4af371a,#b8860b1a);border-color:#d4af37;box-shadow:0 4px 15px #d4af3733}.contact-avatar-mini{width:36px;height:36px;min-width:36px;border-radius:10px;background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;flex-shrink:0}.contact-info-mini{flex:1;min-width:0;overflow:hidden}.contact-name-mini{font-weight:700;color:#1a1a1a;font-size:14px;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contact-phone-mini{font-size:12px;color:#d4af37;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contact-check{width:24px;height:24px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#d4af37;font-size:18px;font-weight:700}.group-selection{display:flex;flex-direction:column;gap:16px;min-height:260px}.group-selection label{font-weight:700;color:#1a1a1a;font-size:15px}.groups-grid-selector{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}.group-selector-card{display:flex;align-items:center;gap:14px;padding:16px;border:2px solid rgba(212,175,55,.2);border-radius:14px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);background:#fff}.group-selector-card:hover{border-color:#d4af37;transform:translateY(-2px);box-shadow:0 6px 20px #d4af3733}.group-selector-card.selected{border-color:#d4af37;background:linear-gradient(135deg,#d4af3714,#b8860b14);box-shadow:0 4px 15px #d4af3733}.group-icon{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#d4af3726,#b8860b26);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:24px}.group-info-selector{flex:1}.group-name-selector{font-weight:700;color:#1a1a1a;font-size:15px;margin-bottom:4px}.group-count-selector{font-size:13px;color:#d4af37;font-weight:600}.add-group-btn{width:38px;height:38px;border-radius:12px;border:none;background:#d4af3726;color:#d4af37;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;flex-shrink:0;font-size:24px;font-weight:700}.group-selector-card:hover .add-group-btn,.group-selector-card.selected .add-group-btn{background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;transform:scale(1.1)}.random-selection{display:flex;flex-direction:column;gap:20px;min-height:260px}.random-config{display:flex;flex-direction:column;gap:20px}.random-field{display:flex;flex-direction:column;gap:12px}.random-field label{font-weight:700;color:#1a1a1a;font-size:15px}.random-field input[type=number]{width:100%;max-width:200px;padding:14px 18px;border:2px solid rgba(212,175,55,.2);border-radius:12px;font-size:16px;font-weight:700;color:#d4af37;transition:all .3s ease}.random-field input[type=number]:focus{outline:none;border-color:#d4af37;box-shadow:0 0 0 4px #d4af371a}.groups-checkboxes{display:flex;flex-direction:column;gap:10px;max-height:250px;overflow-y:auto;padding:4px}.group-checkbox{display:flex;align-items:center;gap:12px;padding:12px 16px;border:2px solid rgba(212,175,55,.15);border-radius:12px;cursor:pointer;transition:all .3s ease;background:#fff}.group-checkbox:hover{border-color:#d4af37;background:#d4af370d}.group-checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#d4af37}.group-checkbox span{font-weight:600;color:#1a1a1a}.group-count-badge{margin-left:auto;padding:4px 12px;background:#d4af3726;color:#b8860b;border-radius:8px;font-size:12px;font-weight:700}.random-btn{padding:16px 28px;background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;border:none;border-radius:14px;font-weight:700;font-size:16px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 6px 20px #d4af3759;align-self:flex-start}.random-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 25px #d4af3773}.random-btn:active:not(:disabled){transform:translateY(-1px)}.random-btn:disabled{opacity:.5;cursor:not-allowed}.selected-recipients{border-top:2px solid rgba(212,175,55,.15);padding-top:24px;display:flex;flex-direction:column;gap:16px}.selected-header{display:flex;align-items:center;justify-content:space-between}.selected-header h3{font-size:18px;font-weight:800;color:#1a1a1a;margin:0;display:flex;align-items:center;gap:8px}.clear-btn{padding:10px 18px;background:#ef44441a;color:#ef4444;border:2px solid rgba(239,68,68,.2);border-radius:10px;font-weight:700;font-size:13px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:6px}.clear-btn:hover{background:#ef4444;color:#fff;border-color:transparent;transform:scale(1.05)}.empty-selection{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px 20px;text-align:center;color:#d4af3780}.empty-icon{font-size:60px;margin-bottom:16px;opacity:.4}.empty-selection p{margin:4px 0;font-weight:600;color:#1a1a1a}.empty-selection .hint{font-size:13px;color:#9ca3af}.selected-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;max-height:300px;overflow-y:auto;padding:4px}.selected-contact{display:flex;align-items:center;gap:12px;padding:12px 14px;background:linear-gradient(135deg,#d4af3714,#b8860b14);border:2px solid rgba(212,175,55,.2);border-radius:12px;transition:all .3s ease}.selected-contact:hover{transform:translateY(-2px);box-shadow:0 4px 15px #d4af3733}.selected-avatar{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;flex-shrink:0;box-shadow:0 4px 12px #d4af3740}.selected-info{flex:1;min-width:0}.selected-name{font-weight:700;color:#1a1a1a;font-size:14px;margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.selected-phone{font-size:12px;color:#d4af37;font-weight:600}.remove-btn{width:30px;height:30px;border-radius:8px;border:none;background:#ef44441a;color:#ef4444;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);flex-shrink:0;font-size:16px;font-weight:700}.remove-btn:hover{background:#ef4444;color:#fff;transform:scale(1.1);box-shadow:0 4px 12px #ef444459}.remove-btn:active{transform:scale(.95)}.loading-message,.empty-message{padding:30px;text-align:center;color:#d4af37;font-weight:600;font-size:15px}.empty-message{color:#9ca3af}.contacts-list::-webkit-scrollbar,.groups-checkboxes::-webkit-scrollbar,.selected-list::-webkit-scrollbar{width:8px}.contacts-list::-webkit-scrollbar-track,.groups-checkboxes::-webkit-scrollbar-track,.selected-list::-webkit-scrollbar-track{background:#d4af371a;border-radius:10px}.contacts-list::-webkit-scrollbar-thumb,.groups-checkboxes::-webkit-scrollbar-thumb,.selected-list::-webkit-scrollbar-thumb{background:#d4af37;border-radius:10px}.contacts-list::-webkit-scrollbar-thumb:hover,.groups-checkboxes::-webkit-scrollbar-thumb:hover,.selected-list::-webkit-scrollbar-thumb:hover{background:#b8860b}@media(max-width:768px){.recipient-selector{padding:20px}.selection-mode-tabs{flex-wrap:wrap}.mode-tab{font-size:13px;padding:10px 16px}.groups-grid-selector,.selected-list{grid-template-columns:1fr}.input-with-button{flex-direction:column}.add-btn{width:100%;justify-content:center}}.campaign-creator-overlay{position:fixed;inset:0;background:#0f172ab3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease-out;padding:20px}.campaign-creator-modal{background:#fff;border-radius:24px;width:100%;max-width:580px;max-height:90vh;overflow:hidden;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #d4af371a;animation:modalSlide .4s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column}@keyframes modalSlide{0%{transform:translateY(30px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.modal-header-premium{position:relative;padding:28px 28px 24px;background:linear-gradient(135deg,#1a1a2e,#16213e);overflow:hidden}.header-decoration{position:absolute;top:-50%;right:-20%;width:300px;height:300px;background:radial-gradient(circle,rgba(212,175,55,.15) 0%,transparent 70%);pointer-events:none}.header-content{display:flex;align-items:center;gap:16px;position:relative;z-index:1}.header-icon{width:56px;height:56px;background:linear-gradient(135deg,#d4af37,#b8860b);border-radius:16px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 8px 24px #d4af374d}.header-text h2{margin:0;font-size:22px;font-weight:700;color:#fff;letter-spacing:-.3px}.header-text p{margin:4px 0 0;font-size:14px;color:#fff9}.close-button-premium{position:absolute;top:20px;right:20px;width:36px;height:36px;border:none;background:#ffffff1a;color:#ffffffb3;border-radius:10px;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:2}.close-button-premium:hover:not(:disabled){background:#fff3;color:#fff;transform:rotate(90deg)}.close-button-premium:disabled{opacity:.3;cursor:not-allowed}.campaign-form-premium{padding:24px 28px 28px;overflow-y:auto;flex:1}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:20px}.stat-card-mini{display:flex;align-items:center;gap:10px;padding:12px 14px;background:linear-gradient(135deg,#f8f9fa,#fff);border:1px solid rgba(212,175,55,.15);border-radius:12px;transition:all .3s ease}.stat-card-mini:hover{border-color:#d4af374d;box-shadow:0 4px 12px #d4af371a}.stat-icon-mini{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon-mini svg{width:18px;height:18px}.stat-icon-mini.contacts{background:linear-gradient(135deg,#d4af3726,#b8860b26);color:#d4af37}.stat-icon-mini.message{background:linear-gradient(135deg,#3b82f626,#2563eb26);color:#3b82f6}.stat-icon-mini.time{background:linear-gradient(135deg,#10b98126,#05966926);color:#10b981}.stat-icon-mini.media{background:linear-gradient(135deg,#a855f726,#8b5cf626);color:#a855f7}.stat-icon-mini.media.video{background:linear-gradient(135deg,#ef444426,#dc262626);color:#ef4444}.media-warning{display:flex;gap:12px;padding:14px 16px;border-radius:12px;margin-bottom:20px;border:1px solid;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.media-warning.image-warning{background:linear-gradient(135deg,#a855f714,#8b5cf60d);border-color:#a855f733}.media-warning.video-warning{background:linear-gradient(135deg,#ef444414,#dc26260d);border-color:#ef444433}.media-warning .warning-icon{flex-shrink:0;width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center}.media-warning .warning-icon svg{width:20px;height:20px}.image-warning .warning-icon{background:linear-gradient(135deg,#a855f7,#8b5cf6);color:#fff}.video-warning .warning-icon{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.media-warning .warning-content{flex:1;min-width:0}.media-warning .warning-content strong{display:block;font-size:13px;font-weight:600;color:#1a1a2e;margin-bottom:3px}.media-warning .warning-content p{font-size:11.5px;color:#64748b;line-height:1.45;margin:0 0 10px}.media-warning .warning-details{display:flex;flex-wrap:wrap;gap:6px}.media-warning .detail-item{display:inline-flex;align-items:center;gap:4px;font-size:10.5px;font-weight:500;padding:4px 8px;border-radius:5px;background:#ffffffb3;color:#64748b}.media-warning .detail-item svg{opacity:.7;width:12px;height:12px}.image-warning .detail-item.highlight{background:#a855f726;color:#7c3aed}.video-warning .detail-item.highlight{background:#ef444426;color:#dc2626}.media-warning .detail-item.total{background:linear-gradient(135deg,#d4af3733,#b8860b26);color:#92710c;font-weight:600}.stat-info-mini{display:flex;flex-direction:column;gap:1px;min-width:0;overflow:hidden}.stat-number{font-size:16px;font-weight:700;color:#1a1a2e;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-label-mini{font-size:10px;color:#64748b;font-weight:500;text-transform:uppercase;letter-spacing:.2px;white-space:nowrap}.form-grid{display:flex;flex-direction:column;gap:20px;margin-bottom:24px}.form-field-premium{display:flex;flex-direction:column;gap:8px}.form-field-premium.full-width{width:100%}.form-field-premium label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#1a1a2e}.label-icon{font-size:16px}.required{color:#ef4444;font-weight:700}.optional{color:#94a3b8;font-weight:400;font-size:12px;margin-left:4px}.input-premium{width:100%;padding:14px 16px;background:#f8f9fa;border:2px solid transparent;border-radius:12px;font-size:15px;font-family:inherit;color:#1a1a2e;transition:all .2s ease;box-sizing:border-box}.input-premium::placeholder{color:#94a3b8}.input-premium:focus{outline:none;background:#fff;border-color:#d4af37;box-shadow:0 0 0 4px #d4af371a}.input-premium:disabled{background:#e2e8f0;color:#64748b;cursor:not-allowed}textarea.input-premium{resize:none;min-height:70px}.char-count{align-self:flex-end;font-size:12px;color:#94a3b8;font-weight:500}.delay-input-group{display:flex;align-items:center;gap:8px}.delay-btn{width:40px;height:40px;border:none;background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;border-radius:10px;font-size:20px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.delay-btn:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 12px #d4af374d}.delay-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.delay-input{width:70px;padding:10px 12px;background:#f8f9fa;border:2px solid transparent;border-radius:10px;font-size:18px;font-weight:600;text-align:center;color:#1a1a2e;font-family:inherit}.delay-input:focus{outline:none;background:#fff;border-color:#d4af37}.delay-unit{font-size:14px;color:#64748b;font-weight:500}.field-hint{font-size:12px;color:#94a3b8;margin-top:4px}.preview-section{background:#f8f9fa;border:1px solid #e2e8f0;border-radius:16px;padding:16px;margin-bottom:24px}.preview-header{margin-bottom:12px}.preview-title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.5px}.whatsapp-preview-container{border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.whatsapp-chat-bg{background:linear-gradient(#e5ddd5f2,#e5ddd5f2),url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23c8bfb6' fill-opacity='0.3'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");padding:16px;min-height:80px;display:flex;justify-content:flex-end}.whatsapp-bubble-out{background:#d9fdd3;border-radius:8px 8px 0;padding:8px 10px 6px;max-width:85%;min-width:120px;position:relative;box-shadow:0 1px 2px #0000001a}.bubble-text{font-size:14px;line-height:1.5;color:#111b21;word-wrap:break-word;white-space:pre-wrap;margin-bottom:4px}.bubble-meta{display:flex;align-items:center;justify-content:flex-end;gap:4px}.bubble-time-wa{font-size:11px;color:#667781}.bubble-check{color:#53bdeb;flex-shrink:0}.bubble-tail{position:absolute;bottom:0;right:-8px;width:0;height:0;border-style:solid;border-width:0 0 10px 10px;border-color:transparent transparent transparent #d9fdd3}.modal-actions-premium{display:flex;gap:12px;justify-content:flex-end;padding-top:20px;border-top:1px solid #e2e8f0}.btn-cancel-premium{padding:14px 28px;background:#f1f5f9;color:#475569;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-cancel-premium:hover:not(:disabled){background:#e2e8f0;color:#1e293b}.btn-cancel-premium:disabled{opacity:.5;cursor:not-allowed}.btn-create-premium{padding:14px 32px;background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:10px;transition:all .3s ease;box-shadow:0 4px 16px #d4af374d}.btn-create-premium:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #d4af3766}.btn-create-premium:disabled{opacity:.6;cursor:not-allowed;transform:none}.spinner-premium{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.campaign-form-premium::-webkit-scrollbar,.preview-bubble::-webkit-scrollbar{width:6px}.campaign-form-premium::-webkit-scrollbar-track,.preview-bubble::-webkit-scrollbar-track{background:transparent}.campaign-form-premium::-webkit-scrollbar-thumb,.preview-bubble::-webkit-scrollbar-thumb{background:#d4af374d;border-radius:3px}.campaign-form-premium::-webkit-scrollbar-thumb:hover,.preview-bubble::-webkit-scrollbar-thumb:hover{background:#d4af3780}@media(max-width:640px){.campaign-creator-overlay{padding:12px;align-items:flex-end}.campaign-creator-modal{max-height:95vh;border-radius:24px 24px 0 0}.modal-header-premium{padding:24px 20px 20px}.header-icon{width:48px;height:48px}.header-text h2{font-size:18px}.campaign-form-premium{padding:20px}.stats-row{flex-wrap:wrap}.stat-card-mini{min-width:calc(50% - 6px);flex:unset}.modal-actions-premium{flex-direction:column-reverse}.btn-cancel-premium,.btn-create-premium{width:100%;justify-content:center}}.media-upload-container{margin-top:8px}.media-upload-label{display:block;cursor:pointer}.media-upload-area{border:2px dashed #d0d0d0;border-radius:12px;padding:32px 24px;text-align:center;background:#fafafa;transition:all .2s}.media-upload-area:hover{border-color:#667eea;background:#f5f7ff}.media-upload-area svg{margin:0 auto 16px;color:#999}.media-upload-text{display:flex;flex-direction:column;gap:4px}.media-upload-text strong{color:#333;font-size:14px}.media-upload-text span{color:#666;font-size:12px}.media-uploading{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px;background:#f8f9fa;border-radius:12px;border:2px solid #e0e0e0}.upload-spinner{width:40px;height:40px;border:4px solid #f0f0f0;border-top-color:#d4af37;border-radius:50%;animation:spin .8s linear infinite}.upload-progress-bar{width:100%;height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden}.upload-progress-fill{height:100%;background:linear-gradient(90deg,#d4af37,#b8860b);transition:width .3s ease}.media-uploading span{font-size:14px;color:#666;font-weight:500}.media-preview{border:2px solid #e0e0e0;border-radius:12px;overflow:hidden;background:#fff}.media-preview-name{display:flex;align-items:center;gap:8px;font-size:14px;color:#333;font-weight:500;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-preview-name svg{flex-shrink:0;color:#d4af37}.media-remove-btn{background:none;border:none;cursor:pointer;padding:6px;color:#999;border-radius:6px;transition:all .2s;flex-shrink:0}.media-remove-btn:hover:not(:disabled){background:#fee;color:#e53e3e}.media-remove-btn:disabled{opacity:.5;cursor:not-allowed}.media-preview-image,.media-preview-video{padding:16px;display:flex;justify-content:center;align-items:center;background:#fafafa;min-height:150px}.media-preview-image img{max-width:100%;max-height:300px;border-radius:8px;object-fit:contain;box-shadow:0 2px 8px #0000001a}.media-preview-video video{max-width:100%;border-radius:8px;box-shadow:0 2px 8px #0000001a}.media-preview-info{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f8f9fa;border-top:1px solid #e0e0e0}.media-info-badge{font-size:12px;font-weight:600;padding:4px 8px;border-radius:4px}.media-info-badge.success{background:#d4edda;color:#155724}.media-info-size{font-size:12px;color:#666;font-weight:500}.media-upload-error{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fee;border:1px solid #fcc;border-radius:8px;color:#c53030;font-size:14px;margin-top:8px}.media-upload-error svg{flex-shrink:0}.campaign-stats-container{width:100%;max-width:1600px;margin:0 auto;padding:32px 24px;min-height:100vh}.stats-layout{display:flex;gap:24px;align-items:flex-start}.stats-sidebar{width:300px;flex-shrink:0;display:flex;flex-direction:column;gap:12px;position:sticky;top:24px}.stat-card{background:#fff;border-radius:16px;padding:24px;display:flex;flex-direction:column;box-shadow:0 2px 8px #00000014;border:1px solid #e2e8f0;transition:all .2s;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--card-accent)}.stat-card:hover{transform:translate(-4px);box-shadow:0 4px 16px #0000001f}.stat-card-primary{--card-accent: linear-gradient(180deg, #d4af37 0%, #b8860b 100%)}.stat-card-success{--card-accent: linear-gradient(180deg, #1a3a5c 0%, #2a5a8f 100%)}.stat-card-warning{--card-accent: linear-gradient(180deg, #d4af37 0%, #b8860b 100%)}.stat-card-danger{--card-accent: linear-gradient(180deg, #c67070 0%, #9f4f4f 100%)}.stat-card-primary .stat-value{color:#d4af37}.stat-card-success .stat-value{color:#1a3a5c}.stat-card-warning .stat-value{color:#d4af37}.stat-card-danger .stat-value{color:#9f4f4f}.stat-icon{display:none}.stat-content{flex:1;padding-left:4px}.stat-label{font-size:12px;color:#fff;font-weight:600;text-transform:uppercase;letter-spacing:.8px;margin-bottom:8px;display:block}.stat-value{font-size:40px;font-weight:700;line-height:1;margin-bottom:12px;display:block}.stat-meta{display:flex;flex-wrap:wrap;gap:6px;font-size:12px;margin-top:0}.stat-meta span{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:8px;font-weight:600;font-size:11px}.meta-running{background:#f4e4c1;color:#d4af37}.meta-completed,.meta-success{background:#e8ecf1;color:#1a3a5c}.meta-warning{background:#f4e4c1;color:#b8860b}.meta-danger{background:#f0e5e5;color:#9f4f4f}.campaign-stats-loading,.campaign-stats-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:100px 20px;min-height:60vh}.spinner-large{width:56px;height:56px;border:4px solid #f1f5f9;border-top-color:#d4af37;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:24px}.campaign-stats-loading p{color:#64748b;font-size:16px;font-weight:500}.btn-retry{margin-top:20px;padding:12px 28px;background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;border:none;border-radius:12px;cursor:pointer;font-weight:600;font-size:15px;transition:all .3s;box-shadow:0 4px 12px #d4af374d}.btn-retry:hover{transform:translateY(-2px);box-shadow:0 6px 20px #d4af3766}.campaigns-list-section{flex:1;min-width:0}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e2e8f0}.section-header h2{margin:0;font-size:26px;color:#0f172a;font-weight:700;display:flex;align-items:center;gap:12px}.section-header h2 svg{stroke-width:2;color:#64748b}.btn-refresh{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#d4af37,#b8860b);border:none;border-radius:12px;cursor:pointer;font-size:14px;font-weight:600;color:#fff;transition:all .3s;box-shadow:0 4px 12px #d4af374d}.btn-refresh svg{transition:transform .3s ease}.btn-refresh:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #d4af3766}.btn-refresh:hover:not(:disabled) svg{transform:rotate(180deg)}.btn-refresh:disabled{opacity:.7;cursor:not-allowed;transform:none}.btn-refresh:disabled svg{animation:spin 1s linear infinite}.no-campaigns{text-align:center;padding:80px 20px;background:linear-gradient(135deg,#d4af3708,#b8860b08);border-radius:16px;border:2px dashed rgba(212,175,55,.2)}.no-campaigns-icon{width:80px;height:80px;margin:0 auto 24px;color:#d4af37;opacity:.5}.no-campaigns-icon svg{width:100%;height:100%}.no-campaigns h3{margin:0 0 12px;color:#0f172a;font-size:22px;font-weight:700}.no-campaigns p{font-size:15px;color:#64748b;max-width:400px;margin:0 auto;line-height:1.6}.campaigns-table-container{overflow-x:auto;border-radius:16px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 2px 8px #00000014}.campaigns-table{width:100%;border-collapse:collapse}.campaigns-table thead{background:linear-gradient(to bottom,#f8fafc,#f1f5f9)}.campaigns-table th{padding:16px 20px;text-align:left;font-size:12px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.8px;border-bottom:2px solid #e2e8f0;white-space:nowrap}.campaigns-table tbody tr{border-bottom:1px solid #f1f5f9;transition:all .2s}.campaigns-table tbody tr:hover{background:linear-gradient(to right,#d4af370d,#b8860b0d)}.campaigns-table tbody tr.campaign-running{background:linear-gradient(to right,#d4af3714,#b8860b14)}.campaigns-table tbody tr.campaign-running:hover{background:linear-gradient(to right,#d4af371f,#b8860b1f)}.campaigns-table td{padding:20px;font-size:14px;color:#334155}.campaign-name strong{display:block;margin-bottom:4px;color:#0f172a;font-weight:600;font-size:15px}.campaign-name small{display:block;color:#64748b;font-size:13px}.text-center{text-align:center}.text-muted{color:#64748b;font-size:13px}.text-success{color:#10b981;font-weight:600}.text-danger{color:#ef4444;font-weight:600}.text-warning{color:#f59e0b;font-weight:600}.status-badge{display:inline-block;padding:6px 16px;border-radius:20px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-draft{background:#f1f5f9;color:#475569}.badge-running{background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.85}}.badge-paused,.badge-completed{background:linear-gradient(135deg,#1a3a5c,#2a5a8f);color:#fff}.badge-failed{background:linear-gradient(135deg,#c67070,#9f4f4f);color:#fff}.progress-bar-container{position:relative;height:8px;background:#f1f5f9;border-radius:999px;overflow:visible;min-width:120px}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#d4af37,#b8860b);transition:width .5s cubic-bezier(.4,0,.2,1);border-radius:999px;box-shadow:0 0 10px #d4af3766;position:relative}.progress-bar-fill:after{content:"";position:absolute;top:0;right:0;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.4) 50%,transparent 100%);animation:shimmer 2s infinite}.progress-text{position:absolute;top:-24px;right:0;font-size:12px;font-weight:600;color:#475569}.btn-view-details{padding:8px 16px;background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;border:none;border-radius:10px;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:6px;font-weight:500;font-size:13px}.btn-view-details:hover{transform:translateY(-2px);box-shadow:0 4px 12px #d4af374d}.campaign-details-modal{position:fixed;inset:0;background:#1a3a5c99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s}.campaign-details-modal .modal-content{background:#fff;border-radius:20px;width:90%;max-width:600px;max-height:80vh;overflow-y:auto;animation:slideUp .3s;box-shadow:0 20px 60px #0000004d}.campaign-details-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:28px 32px;border-bottom:1px solid #e2e8f0;background:linear-gradient(to bottom,#fafafa,#fff);border-radius:20px 20px 0 0}.campaign-details-modal .modal-header h3{margin:0;font-size:22px;color:#0f172a;font-weight:700}.btn-close{background:#f1f5f9;border:none;font-size:24px;color:#64748b;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:10px;transition:all .2s;font-weight:300}.btn-close:hover{background:#e2e8f0;color:#334155;transform:scale(1.05)}.campaign-details-modal .modal-body{padding:32px}.detail-row{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 0;border-bottom:1px solid #f1f5f9;gap:20px}.detail-row:last-child{border-bottom:none}.detail-label{font-weight:600;color:#64748b;font-size:14px;min-width:140px}.detail-row>span:last-child{text-align:right;color:#0f172a;font-size:14px;flex:1}@media(max-width:1024px){.stats-layout{flex-direction:column-reverse}.stats-sidebar{width:100%;position:static;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}}@media(max-width:768px){.campaign-stats-container{padding:20px 16px}.stats-layout{gap:16px}.stats-sidebar{grid-template-columns:repeat(2,1fr);gap:12px}.stat-card{padding:16px 18px}.stat-value{font-size:28px}.stat-label{font-size:11px}.stat-meta{font-size:10px}.campaigns-list-section{padding:20px;border-radius:16px}.section-header{flex-direction:column;gap:16px;align-items:flex-start}.section-header h2{font-size:20px}.btn-refresh{width:100%;justify-content:center}.campaigns-table{font-size:13px}.campaigns-table th,.campaigns-table td{padding:12px}.campaign-name strong{font-size:14px}.campaign-name small{font-size:12px}.campaign-details-modal .modal-content{width:95%;border-radius:16px}.campaign-details-modal .modal-header,.campaign-details-modal .modal-body{padding:20px}}.media-selector{border:2px solid #e0e0e0;border-radius:12px;overflow:hidden;background:#fff}.media-selector-tabs{display:flex;border-bottom:2px solid #e0e0e0;background:#f8f9fa}.tab-button{flex:1;padding:12px 16px;border:none;background:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:500;color:#666;transition:all .2s;position:relative}.tab-button:hover{background:#f0f0f0;color:#333}.tab-button.active{color:#d4af37;background:#fff}.tab-button.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:#d4af37}.tab-button svg{width:20px;height:20px}.media-gallery{padding:16px;min-height:300px;max-height:400px;overflow-y:auto}.gallery-loading,.gallery-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:48px 24px;color:#666}.gallery-empty svg{color:#ccc}.gallery-empty p{margin:0;font-size:14px}.btn-upload-first{margin-top:8px;padding:10px 20px;background:#d4af37;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-upload-first:hover{background:#b8860b;transform:translateY(-1px)}.spinner-ring{width:40px;height:40px;border:4px solid #f0f0f0;border-top-color:#d4af37;border-radius:50%;animation:spin .8s linear infinite}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.media-item{position:relative;border:2px solid #e0e0e0;border-radius:8px;overflow:hidden;cursor:pointer;transition:all .2s;background:#fff}.media-item:hover{border-color:#d4af37;transform:translateY(-2px);box-shadow:0 4px 12px #d4af3726}.media-item:hover .btn-delete-file{opacity:1}.btn-delete-file{position:absolute;top:8px;right:8px;width:32px;height:32px;border:none;border-radius:6px;background:#ffffffe6;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .2s ease;z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.btn-delete-file:hover{background:#701515;transform:scale(1.1)}.btn-delete-file:active{transform:scale(.95)}.media-item.selected{border-color:#d4af37;border-width:3px;box-shadow:0 4px 16px #d4af3740}.selected-badge{position:absolute;top:8px;right:8px;width:28px;height:28px;background:#d4af37;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:10;box-shadow:0 2px 8px #d4af3766}.selected-badge svg{color:#fff}.media-thumbnail{aspect-ratio:1;background:#f5f5f5;display:flex;align-items:center;justify-content:center;overflow:hidden}.media-thumbnail img{width:100%;height:100%;object-fit:cover}.video-thumbnail{position:relative;width:100%;height:100%}.video-thumbnail video{width:100%;height:100%;object-fit:cover}.video-overlay{position:absolute;inset:0;background:#0000004d;display:flex;align-items:center;justify-content:center;pointer-events:none}.media-info{padding:8px;background:#fafafa;border-top:1px solid #e0e0e0;display:flex;flex-direction:column;gap:2px}.media-name{font-size:12px;font-weight:500;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.media-size{font-size:11px;color:#999}.media-upload-view{padding:24px;min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center}.upload-drop-zone{width:100%;max-width:400px;padding:48px 24px;border:2px dashed #d0d0d0;border-radius:12px;background:#fafafa;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:16px}.upload-drop-zone:hover{border-color:#667eea;background:#f5f7ff}.upload-drop-zone svg{color:#999}.upload-text{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.upload-text strong{color:#333;font-size:16px}.upload-text span{color:#666;font-size:14px}.upload-formats{font-size:12px;color:#999;padding:8px 16px;background:#fff;border-radius:6px}.upload-progress{display:flex;flex-direction:column;align-items:center;gap:16px;padding:48px 24px}.upload-progress span{font-size:14px;color:#666;font-weight:500}.upload-error{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fee;border:1px solid #fcc;border-radius:8px;color:#c53030;font-size:14px;margin-top:16px;max-width:400px}.upload-error svg{flex-shrink:0}.media-selector-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f8f9fa;border-top:2px solid #e0e0e0}.btn-remove-media{display:flex;align-items:center;gap:6px;padding:8px 12px;background:none;border:1px solid #ddd;border-radius:6px;color:#666;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.btn-remove-media:hover{background:#fee;border-color:#fcc;color:#e53e3e}.selected-info{display:flex;align-items:center;gap:6px;font-size:13px;color:#667eea;font-weight:500}.selected-info svg{color:#667eea}.media-gallery::-webkit-scrollbar{width:8px}.media-gallery::-webkit-scrollbar-track{background:#f0f0f0}.media-gallery::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.media-gallery::-webkit-scrollbar-thumb:hover{background:#999}.compression-progress{width:100%;max-width:420px;padding:28px;background:linear-gradient(135deg,#fffdf5,#fef9e7);border:2px solid rgba(212,175,55,.3);border-radius:16px;display:flex;flex-direction:column;gap:16px;animation:fadeIn .3s ease}.compression-progress.success{background:linear-gradient(135deg,#f0f9ff,#e6f4ff);border-color:#1a3a5c4d}.compression-progress.uploading{background:linear-gradient(135deg,#fffdf5,#fef9e7);border-color:#d4af3766}.compression-header{display:flex;align-items:center;gap:16px}.compression-header svg{color:#d4af37;flex-shrink:0;animation:pulse 1.5s ease-in-out infinite}.compression-progress.success .compression-header svg{color:#1a3a5c;animation:none}.compression-progress.uploading .compression-header svg{color:#d4af37}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.95)}}.compression-title{font-size:18px;font-weight:600;color:#1a1a1a}.compression-bar-container{width:100%;height:12px;background:#d4af3726;border-radius:6px;overflow:hidden;box-shadow:inset 0 1px 3px #0000001a}.compression-bar{height:100%;background:linear-gradient(90deg,#d4af37,#b8860b);border-radius:6px;transition:width .3s ease;position:relative;overflow:hidden}.compression-bar:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);animation:shimmer 1.5s infinite}.compression-progress.success .compression-bar{background:linear-gradient(90deg,#1a3a5c,#2a5a8f)}.compression-progress.uploading .compression-bar{background:linear-gradient(90deg,#d4af37,#e8d896)}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.compression-details{display:flex;justify-content:space-between;align-items:center;gap:12px}.compression-percent{font-size:24px;font-weight:700;color:#d4af37;font-variant-numeric:tabular-nums}.compression-progress.success .compression-percent{color:#1a3a5c}.compression-progress.uploading .compression-percent{color:#b8860b}.compression-message{font-size:14px;color:#4a5f7f;text-align:right;flex:1}.compression-sizes{display:flex;align-items:center;justify-content:center;gap:12px;padding:12px;background:#fff;border-radius:10px;box-shadow:0 2px 6px #0000000f;border:1px solid rgba(212,175,55,.12)}.size-item{display:flex;flex-direction:column;align-items:center;gap:4px}.size-label{font-size:11px;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px}.size-item.original .size-value{color:#c67070;font-weight:600}.size-item.new .size-value{color:#1a3a5c;font-weight:600}.size-value{font-size:16px;font-weight:600;color:#1a1a1a}.size-arrow{font-size:20px;color:#9ca3af}.size-reduction{padding:6px 12px;background:linear-gradient(135deg,#1a3a5c,#2a5a8f);color:#fff;border-radius:20px;font-size:13px;font-weight:600}.compression-time{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;background:#d4af371a;border-radius:8px;font-size:13px;color:#b8860b}.compression-time svg{color:#d4af37;animation:none}.compression-quality{text-align:center;font-size:12px;color:#9ca3af;padding:4px 0}@media(max-width:640px){.media-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px}.media-gallery{padding:12px}.upload-drop-zone{padding:32px 16px}.compression-progress{padding:20px}.compression-header svg{width:36px;height:36px}.compression-title{font-size:16px}.compression-sizes{flex-wrap:wrap;gap:8px}.size-arrow{display:none}}.change-password-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.change-password-modal{background:linear-gradient(145deg,#190e2dfa,#0e192dfa);border:2px solid rgba(212,175,55,.3);border-radius:20px;padding:0;width:90%;max-width:420px;box-shadow:0 20px 60px #00000080,0 0 40px #d4af371a;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.change-password-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid rgba(212,175,55,.2)}.change-password-header h2{display:flex;align-items:center;gap:12px;margin:0;font-size:1.3rem;font-weight:700;color:#d4af37}.change-password-header h2 svg{color:#d4af37}.close-btn{background:transparent;border:none;color:#9ca3af;cursor:pointer;padding:8px;border-radius:8px;transition:all .2s;display:flex;align-items:center;justify-content:center}.close-btn:hover{background:#ffffff1a;color:#fff}.change-password-form{padding:24px;display:flex;flex-direction:column;gap:20px}.password-field{display:flex;flex-direction:column;gap:8px}.password-field label{font-size:.9rem;font-weight:600;color:#d1d5db}.password-field input{padding:14px 16px;background:#0000004d;border:1.5px solid rgba(156,163,175,.3);border-radius:12px;color:#fff;font-size:1rem;transition:all .2s}.password-field input:focus{outline:none;border-color:#d4af37;box-shadow:0 0 0 3px #d4af3733}.password-field input::placeholder{color:#6b7280}.password-error{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:10px;color:#fca5a5;font-size:.9rem}.password-error svg{color:#ef4444;flex-shrink:0}.password-success{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#22c55e26;border:1px solid rgba(34,197,94,.3);border-radius:10px;color:#86efac;font-size:.9rem}.password-success svg{color:#22c55e;flex-shrink:0}.password-actions{display:flex;gap:12px;margin-top:8px}.cancel-btn{flex:1;padding:14px 20px;background:#6b728033;border:1.5px solid rgba(107,114,128,.4);border-radius:12px;color:#d1d5db;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.cancel-btn:hover{background:#6b72804d;border-color:#6b728099}.submit-btn{flex:1;padding:14px 20px;background:linear-gradient(135deg,#d4af37,#b8860b);border:none;border-radius:12px;color:#1a1a2e;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:8px}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #d4af3766}.submit-btn:disabled{opacity:.7;cursor:not-allowed}.spinner{width:18px;height:18px;border:2px solid rgba(26,26,46,.3);border-top-color:#1a1a2e;border-radius:50%;animation:spin .8s linear infinite}@media(max-width:480px){.change-password-modal{width:95%;margin:20px}.change-password-header{padding:16px 20px}.change-password-form{padding:20px}.password-actions{flex-direction:column}}.dashboard-stats-section{width:100%;max-width:100%;margin:0 0 24px;background:var(--glass-bg);border-radius:28px;border:2px solid var(--glass-border);box-shadow:0 8px 32px #ff8a801a,0 0 0 1px #fff6 inset;padding:32px 24px 24px;display:flex;flex-direction:column;align-items:center;gap:18px}.campaign-success-banner{position:fixed;top:20px;left:50%;transform:translate(-50%);z-index:1500;background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;padding:16px 24px;border-radius:12px;box-shadow:0 8px 24px #d4af3766;display:flex;align-items:center;gap:16px;animation:slideDown .4s ease-out;max-width:500px;width:90%}@keyframes slideDown{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.success-icon{font-size:32px;line-height:1}.success-content strong{display:block;font-size:16px;margin-bottom:4px}.success-content p{margin:0;font-size:14px;opacity:.95}.stats-title{font-size:1.5rem;font-weight:800;color:var(--accent-secondary);margin-bottom:10px;letter-spacing:-1px}.stats-metrics{display:flex;gap:24px;margin-bottom:10px;width:100%;justify-content:center;flex-wrap:wrap}.metric-block{background:#0e192d;border-radius:14px;border:1.5px solid rgba(156,163,175,.2);box-shadow:0 2px 8px #9ca3af1a;padding:16px 24px;display:flex;flex-direction:column;align-items:center;min-width:100px;flex:1;transition:transform .3s ease,box-shadow .3s ease,border .3s ease}.metric-block:hover{transform:translateY(-4px);box-shadow:0 8px 24px #d4af374d;border-color:#d4af3799}.metric-label{font-size:.9rem;color:#d1d5db;font-weight:600;margin-bottom:2px;transition:color .2s}.metric-value{font-size:1.8rem;font-weight:800;color:#f3f4f6;letter-spacing:-1px;transition:color .2s}.metric-block:hover .metric-label,.metric-block:hover .metric-value{color:#d4af37}.stats-graph{width:100%;max-width:280px;display:flex;justify-content:center;align-items:flex-end;margin-top:8px}@media(max-width:700px){.dashboard-stats-section{max-width:98vw;padding:18px 4vw 14px}.stats-metrics{gap:8px}.metric-block{min-width:60px;padding:7px}.stats-title{font-size:1.1rem}}.sidebar-stats{width:100%;display:flex;flex-direction:column;align-items:center;gap:20px;margin-top:40px;margin-bottom:24px;padding:0 12px}.stat-card{width:100%;max-width:72px;background:linear-gradient(145deg,#190e2df2,#0e192dfa);border-radius:20px;border:2px solid rgba(212,175,55,.15);box-shadow:0 4px 16px #0000004d,0 2px 8px #d4af371a,inset 0 1px #ffffff1a;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px 8px 12px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden;cursor:pointer}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:40%;background:linear-gradient(180deg,rgba(255,255,255,.1) 0%,transparent 100%);border-radius:20px 20px 0 0;opacity:0;transition:opacity .3s ease}.stat-card:hover{transform:translateY(-4px) scale(1.05);border-color:#d4af3766;box-shadow:0 8px 24px #0006,0 4px 16px #d4af374d,inset 0 1px #fff3}.stat-card:hover:before{opacity:1}.stat-card:active{transform:translateY(-2px) scale(1.02)}.stat-icon{margin-bottom:6px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;z-index:1}.stat-card:hover .stat-icon{transform:scale(1.15) translateY(-2px)}.stat-value{font-size:1.25rem;font-weight:800;color:#fff;margin-bottom:2px;letter-spacing:-1.2px;line-height:1;text-shadow:0 2px 8px rgba(0,0,0,.3);transition:all .3s ease;position:relative;z-index:1}.stat-card:hover .stat-value{color:#d4af37;transform:scale(1.08);text-shadow:0 0 12px rgba(212,175,55,.6)}.stat-label{font-size:.7rem;color:#d4af37e6;font-weight:600;text-transform:uppercase;letter-spacing:.5px;opacity:.85;transition:all .3s ease;position:relative;z-index:1;text-align:center}.stat-card:hover .stat-label{opacity:1;color:#d4af37;transform:translateY(-1px)}.stat-icon-green svg{filter:drop-shadow(0 0 8px rgba(168,255,182,.6));transition:filter .3s ease}.stat-card:hover .stat-icon-green svg{filter:drop-shadow(0 0 16px rgba(168,255,182,.9))}.stat-icon-blue svg{filter:drop-shadow(0 0 8px rgba(128,216,255,.6));transition:filter .3s ease}.stat-card:hover .stat-icon-blue svg{filter:drop-shadow(0 0 16px rgba(128,216,255,.9))}.stat-icon-orange svg{filter:drop-shadow(0 0 8px rgba(255,209,128,.6));transition:filter .3s ease}.stat-card:hover .stat-icon-orange svg{filter:drop-shadow(0 0 16px rgba(255,209,128,.9))}@media(max-width:700px){.sidebar-stats{gap:14px;margin-top:24px;padding:0 8px}.stat-card{max-width:56px;padding:10px 6px 8px;border-radius:16px}.stat-icon{width:24px;height:24px;margin-bottom:4px}.stat-value{font-size:1rem;letter-spacing:-.8px}.stat-label{font-size:.6rem;letter-spacing:.3px}}.sidebar-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;transition:transform .22s cubic-bezier(.4,2,.6,1),filter .22s}.sidebar-btn:hover .sidebar-icon,.sidebar-btn.active .sidebar-icon{transform:scale(1.18) rotate(-6deg);filter:drop-shadow(0 0 8px #d4af37cc)}.sidebar-glow{position:absolute;left:0;bottom:0;width:100%;height:80px;background:radial-gradient(ellipse at center,#d4af37,#fff0 80%);opacity:.18;pointer-events:none;z-index:1;animation:sidebarGlowPulse 3.5s infinite alternate cubic-bezier(.4,2,.6,1)}@keyframes sidebarGlowPulse{0%{opacity:.13;filter:blur(0px)}to{opacity:.28;filter:blur(6px)}}.dashboard-creative-bg{min-height:100vh;display:flex;background:var(--bg-gradient);position:relative}.dashboard-sidebar{width:240px;min-width:240px;background:#0e192d;-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);border-right:2px solid var(--glass-border);display:flex;flex-direction:column;padding:32px 0;z-index:10;box-shadow:2px 0 32px #ff8a801a;transition:width .3s cubic-bezier(.4,2,.6,1);position:relative}.sidebar-header{padding:0 24px;margin-bottom:48px}.sidebar-logo{font-size:2rem;font-weight:900;color:#fff;letter-spacing:-2px;background:#fff;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:4px}.sidebar-subtitle{font-size:.85rem;color:#fff;opacity:1;font-weight:500;letter-spacing:.5px}.user-info{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,138,128,.15)}.user-info small{font-size:.75rem;color:var(--accent-secondary);opacity:0;font-weight:400}.sidebar-nav{display:flex;flex-direction:column;gap:8px;width:100%;padding:0 16px}.sidebar-btn{background:transparent;border:none;padding:14px 16px;display:flex;align-items:center;gap:14px;cursor:pointer;transition:all .3s ease;border-radius:12px;color:#9ca3af;font-size:.95rem;font-weight:500;position:relative}.sidebar-btn:hover{background:#d4af371a;transform:translate(4px);color:#d4af37}.sidebar-btn.active{background:linear-gradient(135deg,#d4af3726,#b8860b26);color:#d4af37;box-shadow:0 2px 8px #d4af3726}.sidebar-btn.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:70%;background:#d4af37;border-radius:0 4px 4px 0}.sidebar-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;color:currentColor}.sidebar-label{flex:1;text-align:left;font-weight:500}.sidebar-divider{height:1px;background:var(--glass-border);margin:16px 0}.logout-btn{margin-top:auto;color:#d32f2f}.logout-btn:hover{background:#d32f2f14}@media(max-width:900px){.dashboard-sidebar{width:80px;min-width:80px}.sidebar-header{padding:0 12px;margin-bottom:32px}.sidebar-logo{font-size:1.5rem}.sidebar-subtitle,.sidebar-label{display:none}.sidebar-btn{justify-content:center;padding:12px}.sidebar-nav{padding:0 12px}}.dashboard-creative-main{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:60px 40px;gap:48px;min-height:100vh}.view-container{width:100%;max-width:1200px;animation:fadeIn .4s ease-out}.view-header{margin-bottom:32px}.view-header h1{font-size:2.5rem;font-weight:800;color:#fff;margin-bottom:8px;letter-spacing:-1.5px}.view-header p{font-size:1.1rem;color:#fff;opacity:.7}.view-tabs{display:flex;gap:12px;margin-top:24px}.view-tab{display:flex;align-items:center;gap:8px;padding:12px 24px;background:#ffffffb3;border:2px solid rgba(102,126,234,.2);border-radius:12px;font-size:15px;font-weight:600;color:#666;cursor:pointer;transition:all .2s}.view-tab:hover{background:#667eea1a;border-color:#667eea66;transform:translateY(-2px)}.view-tab.active{background:linear-gradient(135deg,#d4af37,#b8860b);border-color:#d4af37;color:#fff;box-shadow:0 4px 12px #d4af374d}.view-tab svg{flex-shrink:0}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 40px;text-align:center;background:var(--glass-bg);border-radius:28px;border:2px solid var(--glass-border)}.empty-state h3{font-size:1.5rem;font-weight:700;color:var(--accent-secondary);margin:24px 0 8px}.empty-state p{font-size:1rem;color:var(--accent-secondary);opacity:.6}.import-success-banner{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border:2px solid #4CAF50;border-radius:12px;padding:16px 20px;margin-bottom:24px;display:flex;align-items:center;gap:16px;animation:slideInDown .4s ease-out;box-shadow:0 4px 12px #4caf5026}.import-success-banner svg{color:#2e7d32;flex-shrink:0}.import-success-banner strong{display:block;color:#1b5e20;font-size:16px;margin-bottom:4px}.import-success-banner p{color:#2e7d32;font-size:14px;margin:0;opacity:1}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.metric-change{font-size:.75rem;font-weight:600;margin-top:4px;padding:2px 8px;border-radius:6px}.metric-change.positive{color:#2e7d32;background:#2e7d321a}.metric-change.negative{color:#d32f2f;background:#d32f2f1a}.metric-change.neutral{color:#757575;background:#7575751a}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.dashboard-creative-main{flex-direction:column;align-items:center;gap:32px;padding:32px 20px}.view-header h1{font-size:2rem}}.creative-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-radius:32px;border:2px solid var(--glass-border);box-shadow:0 8px 32px #ff8a801a,0 0 0 1px #fff6 inset;padding:48px 40px 40px;min-width:340px;max-width:420px;width:100%;display:flex;flex-direction:column;align-items:stretch;z-index:2}.creative-card h2{font-size:2rem;font-weight:800;margin-bottom:32px;color:var(--accent-secondary);letter-spacing:-1px;text-align:left}.creative-form{display:flex;flex-direction:column;gap:28px}.creative-field{display:flex;flex-direction:column;gap:8px}.creative-field-full{display:flex;flex-direction:column;gap:12px;width:100%;max-width:100%;overflow:hidden}.creative-field label{font-size:1rem;font-weight:600;color:var(--accent-secondary);margin-bottom:2px;display:flex;align-items:center}.creative-field input,.creative-field textarea{padding:14px 18px;background:#ffffffb3;border:2px solid var(--glass-border);border-radius:14px;font-size:1rem;color:var(--text-primary);font-family:inherit;transition:border .2s,box-shadow .2s;outline:none;resize:vertical}.creative-field input:focus,.creative-field textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 4px #ff8a8021}.message-stats{display:flex;justify-content:space-between;margin-top:8px;font-size:13px;color:#d4af37;font-weight:600}.form-header{margin-bottom:24px;border-bottom:2px solid rgba(102,126,234,.1);padding-bottom:16px}.form-header h2{font-size:24px;font-weight:800;color:#1a1a1a;margin:0 0 8px;letter-spacing:-.5px}.form-subtitle{font-size:14px;color:#000;margin:0;font-weight:600}.message-form-section{max-width:900px;width:100%;overflow:hidden}.creative-send-btn{margin-top:12px;padding:16px 28px;background:linear-gradient(135deg,#d4af37,#b8860b);color:#fff;border:none;border-radius:14px;font-size:1.1rem;font-weight:700;cursor:pointer;box-shadow:0 8px 24px #d4af3759;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:10px}.creative-send-btn:hover:not(:disabled){background:linear-gradient(135deg,#b8860b,#d4af37);transform:translateY(-3px) scale(1.02);box-shadow:0 12px 32px #d4af3773}.creative-send-btn:active:not(:disabled){transform:translateY(-1px) scale(1.01)}.creative-send-btn:disabled{opacity:.5;cursor:not-allowed;background:#9ca3af;box-shadow:none}.creative-preview{min-width:340px;max-width:400px;width:100%;margin-top:24px;z-index:10;display:flex;flex-direction:column;align-items:center;position:sticky;top:24px;align-self:flex-start;transition:all .3s ease}.creative-preview:before{content:"";position:absolute;top:-20px;left:50%;transform:translate(-50%);width:90%;height:20px;background:linear-gradient(to bottom,#667eea00,#667eea0d);opacity:0;transition:opacity .3s ease;pointer-events:none;border-radius:10px 10px 0 0}@media(max-width:900px){.creative-preview{margin-top:0;max-width:100vw;min-width:0;position:static}.creative-preview:before{display:none}}.media-upload-wrapper{margin-top:8px}.media-upload-box{display:block;cursor:pointer;border:2px dashed #d0d0d0;border-radius:12px;padding:24px;text-align:center;background:#fafafa;transition:all .2s ease}.media-upload-box:hover{border-color:#667eea;background:#f5f7ff}.media-upload-content{display:flex;flex-direction:column;align-items:center;gap:12px}.media-upload-content svg{color:#999}.upload-text{display:flex;flex-direction:column;gap:4px}.upload-text strong{color:#333;font-size:14px}.upload-text span{color:#666;font-size:12px}.media-uploading-state{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px 24px;background:#f8f9fa;border-radius:12px;border:2px solid #e0e0e0}.upload-spinner-ring{width:40px;height:40px;border:4px solid #f0f0f0;border-top-color:#d4af37;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.media-uploading-state span{font-size:14px;color:#666;font-weight:500}.media-preview-box{border:2px solid #e0e0e0;border-radius:12px;overflow:hidden;background:#fff}.media-preview-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f8f9fa;border-bottom:1px solid #e0e0e0}.media-file-name{display:flex;align-items:center;gap:8px;font-size:14px;color:#333;font-weight:500;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-file-name svg{flex-shrink:0;color:#d4af37}.media-remove-button{background:none;border:none;cursor:pointer;padding:6px;color:#999;border-radius:6px;transition:all .2s;flex-shrink:0}.media-remove-button:hover{background:#fee;color:#e53e3e}.media-thumbnail{padding:16px;display:flex;justify-content:center;align-items:center;background:#fafafa;min-height:150px}.media-thumbnail img{max-width:100%;max-height:300px;border-radius:8px;object-fit:contain;box-shadow:0 2px 8px #0000001a}.media-thumbnail video{max-width:100%;max-height:300px;border-radius:8px;box-shadow:0 2px 8px #0000001a}.media-info-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f8f9fa;border-top:1px solid #e0e0e0}.success-badge{font-size:12px;font-weight:600;padding:4px 8px;border-radius:4px;background:#d4edda;color:#155724}.file-size{font-size:12px;color:#666;font-weight:500}.upload-error-message{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fee;border:1px solid #fcc;border-radius:8px;color:#c53030;font-size:14px;margin-top:8px}.upload-error-message svg{flex-shrink:0}
