:root{--primary: #25D366;--primary-rgb: 37, 211, 102;--primary-dark: #1da851;--accent: #128C7E;--bg-deep: #f1f5f9;--bg-surface: #ffffff;--bg-card: rgba(255, 255, 255, .85);--text-primary: #25D366;--text-strong: #0f172a;--text-main: #334155;--text-muted: #64748b;--text-subtle: #94a3b8;--glass-border: rgba(0, 0, 0, .08);--glass-shadow: 0 10px 40px -10px rgba(15, 23, 42, .1);--glass-overlay: rgba(255, 255, 255, .1);--header-bg: rgba(255, 255, 255, .8);--sidebar-bg: rgba(248, 250, 252, .95);--sidebar-border: rgba(0, 0, 0, .06);--input-bg: rgba(0, 0, 0, .03);--input-border: rgba(0, 0, 0, .1);--error: #ef4444;--success: #10b981;--warning: #f59e0b;--info: #0ea5e9;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.6;font-weight:400;letter-spacing:-.01em}.dark{--bg-deep: #000000;--bg-surface: #0a0a0f;--bg-card: #0d0d14;--text-primary: #25D366;--text-strong: #ffffff;--text-main: #cbd5e1;--text-muted: #94a3b8;--text-subtle: #64748b;--glass-border: rgba(255, 255, 255, .08);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .6);--glass-overlay: rgba(255, 255, 255, .04);--header-bg: #05050a;--sidebar-bg: #030305;--sidebar-border: rgba(255, 255, 255, .08);--primary-dark: #1da851;--input-bg: rgba(255, 255, 255, .03);--input-border: rgba(255, 255, 255, .1)}*{margin:0;padding:0;box-sizing:border-box}html,body{height:auto;min-height:100vh;width:100vw;margin:0;padding:0;position:relative}#root{min-height:100vh;width:100vw;margin:0;padding:0;position:relative}body{background-color:var(--bg-deep);color:var(--text-main);font-family:Inter,system-ui,-apple-system,sans-serif;position:relative;-webkit-font-smoothing:antialiased}.dashboard.loading,.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;min-height:280px;padding:2rem;color:var(--text-muted)}.spinner{width:40px;height:40px;border:3px solid var(--glass-border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app-grid{display:grid!important;grid-template-rows:72px 1fr!important;height:100vh!important;width:100vw!important;overflow:hidden!important}.app-content-wrapper{grid-row:2!important;display:flex!important;height:100%!important;width:100%!important;overflow:hidden!important}.sidebar-aside{height:100%!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;background-color:var(--sidebar-bg)!important;border-right:1px solid var(--sidebar-border)!important;transition:width .4s cubic-bezier(.16,1,.3,1)!important;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.main-content{flex:1!important;min-width:0!important;min-height:0!important;height:100%!important;overflow-y:auto!important;position:relative!important;background-color:var(--bg-deep)!important}.sidebar-scroll-area{flex:1!important;overflow-y:auto!important;overflow-x:hidden!important;padding:1.25rem .875rem!important}.sidebar-footer{flex-shrink:0!important;padding:1rem .875rem!important;border-top:1px solid var(--sidebar-border)!important;background:transparent!important}.nav-section-title{font-size:.7rem!important;font-weight:800!important;color:var(--text-subtle)!important;text-transform:uppercase!important;letter-spacing:1.8px!important;padding:0 12px!important;margin-bottom:14px!important}.nav-item{width:100%!important;display:flex!important;align-items:center!important;gap:14px!important;padding:12px 14px!important;background:transparent!important;color:var(--text-main)!important;border-radius:12px!important;border:1px solid transparent!important;font-size:.9375rem!important;font-weight:500!important;cursor:pointer!important;transition:all .2s cubic-bezier(.16,1,.3,1)!important;position:relative!important;text-decoration:none!important}.nav-item:hover{background:rgba(var(--primary-rgb),.06)!important;color:var(--text-strong)!important}.nav-item-active{background:rgba(var(--primary-rgb),.12)!important;color:var(--primary)!important;font-weight:700!important;border:1px solid rgba(var(--primary-rgb),.2)!important;border-left:3px solid var(--primary)!important;padding-left:13px!important}.nav-item-active:hover{background:rgba(var(--primary-rgb),.14)!important}.sub-nav-container{display:flex;flex-direction:column;gap:2px;margin-top:4px;padding-left:2.25rem;border-left:1px solid var(--sidebar-border);margin-left:1.5rem}.sub-nav-item{width:100%!important;text-align:left!important;padding:8px 12px!important;background:transparent!important;border:none!important;color:var(--text-muted)!important;font-size:.875rem!important;cursor:pointer!important;border-radius:8px!important;transition:all .2s!important;text-decoration:none!important}.sub-nav-item:hover{color:var(--text-strong)!important;background:var(--input-bg)!important}.sub-nav-item-active{color:var(--primary)!important;font-weight:600!important;background:rgba(var(--primary-rgb),.05)!important}.header-icon-btn:hover{background:rgba(var(--primary-rgb),.08)!important;border-color:rgba(var(--primary-rgb),.2)!important;color:var(--primary)!important}.header-user-btn:hover{background:rgba(var(--primary-rgb),.06)!important;border-color:rgba(var(--primary-rgb),.15)!important}.sidebar-logout-btn:hover{background:#ef444414!important;border-color:#ef444433!important}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .8s cubic-bezier(.16,1,.3,1) forwards}.glass-card{background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:0 1px 3px #0000000a,0 6px 16px -4px #0000000f;border-radius:16px;transition:box-shadow .2s ease,border-color .2s ease}.glass-card:hover{box-shadow:0 2px 6px #0000000a,0 12px 24px -6px #00000014}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:12px;border:none;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);font-size:.9rem}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 2px 8px rgba(var(--primary-rgb),.35)}.btn-primary:hover{background:var(--primary-dark);box-shadow:0 4px 12px rgba(var(--primary-rgb),.4);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:#25d3661f;color:var(--primary);border:1px solid rgba(37,211,102,.3)}.btn-secondary:hover:not(:disabled){background:#25d3662e;border-color:#25d36666}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.app-page,.dashboard-page,.scheduled-messages-page,.contacts-page,.settings-page{width:100%;max-width:1400px;margin-left:auto;margin-right:auto;padding:2rem;box-sizing:border-box}.app-page-header,.dashboard-page-header{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap;margin-bottom:2rem}.app-page-header-icon{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#25d3661f;border:1px solid rgba(37,211,102,.2);color:var(--primary)}.dashboard-page-header-icon{width:56px;height:56px;object-fit:contain;border-radius:14px}.dashboard-page-title{font-size:1.875rem;font-weight:800;letter-spacing:-.03em;color:var(--text-strong);margin:0 0 .25rem}.dashboard-page-subtitle{font-size:1.05rem;color:var(--text-muted);margin:0}.app-page{padding:2rem;max-width:1400px;margin:0 auto}.app-page-header{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap;margin-bottom:2rem}.app-page-header-icon-wrap{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:#25d3661f;border:1px solid rgba(37,211,102,.2);color:var(--primary)}.app-page-title{font-size:1.875rem;font-weight:800;letter-spacing:-.03em;color:var(--text-strong);margin:0 0 .25rem}.app-page-subtitle{font-size:1.05rem;color:var(--text-muted);margin:0}.contacts-content{padding:1.5rem!important}.settings-content{min-height:320px}.settings-grid--centered{display:flex!important;flex-direction:column;align-items:center;justify-content:center;min-height:calc(100vh - 72px - 4rem);width:100%}.settings-grid--centered .settings-create-card{flex-shrink:0}.settings-create-card{padding:2rem 2rem 2.5rem!important;max-width:560px;margin:0 auto;width:100%}.settings-create-intro{text-align:center;margin-bottom:2rem}.settings-create-title{font-size:1.5rem;font-weight:800;margin:0 0 .5rem;color:var(--text-strong)}.settings-create-desc{color:var(--text-muted);font-size:1rem;line-height:1.5;margin:0 auto;max-width:420px}.settings-create-steps{background:#25d3660f;border:1px solid rgba(37,211,102,.15);border-radius:12px;padding:1.25rem 1.5rem;margin-bottom:2rem}.settings-create-steps-title{font-size:.875rem;font-weight:700;color:var(--text-strong);margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.04em}.settings-create-steps-list{margin:0;padding-left:1.25rem;color:var(--text-main);font-size:.9375rem;line-height:1.8}.settings-create-steps-list li{margin-bottom:.25rem}.instance-config-form{margin-top:0}.instance-config-section{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--glass-border)}.instance-config-section-title{font-size:1.125rem;font-weight:700;color:var(--text-strong);margin:0 0 .35rem}.instance-config-section-desc{font-size:.9rem;color:var(--text-muted);margin:0;line-height:1.5}.instance-config-form-fields .form-group{margin-bottom:1.25rem}.instance-config-form-fields .form-label{display:block;font-size:.875rem;font-weight:600;color:var(--text-strong);margin-bottom:.5rem}.instance-config-form-fields .instance-name-input{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--input-border);background:var(--input-bg);color:var(--text-muted);font-size:.95rem}.instance-config-form-fields .form-help{display:block;font-size:.8rem;color:var(--text-subtle);margin-top:.35rem}.instance-config-error{background:#ef44441a;border:1px solid rgba(239,68,68,.25);color:var(--error);padding:10px 14px;border-radius:10px;font-size:.9rem;margin-bottom:1rem}.instance-config-submit{width:100%;padding:14px 20px;font-size:1rem;border-radius:12px}.settings-grid{display:grid;grid-template-columns:1fr;gap:24px;align-items:start}@media(min-width:900px){.settings-grid{grid-template-columns:1fr 1fr}}.dashboard-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:28px}@media(max-width:1024px){.dashboard-summary-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.dashboard-summary-grid{grid-template-columns:1fr}}.dashboard-stat-card{min-height:160px}.dashboard-stat-card:hover{border-color:#25d36626}.dashboard-quick-action-link{border-radius:12px!important}.dashboard-quick-action-link:hover{background:#25d36614!important;border-color:#25d36640!important;transform:translate(2px)}.dashboard-stat-icon-wrap{flex-shrink:0}.dashboard-bottom-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px;align-items:stretch}.dashboard-bottom-grid .glass-card{display:flex;flex-direction:column;min-height:320px}.dashboard-card-recent,.dashboard-card-actions{padding:1.5rem!important}.dashboard-card-body{flex:1;display:flex;flex-direction:column;min-height:0;overflow:auto}.dashboard-card-title{font-size:1.125rem!important;font-weight:700!important;margin-bottom:1.25rem!important;color:var(--text-strong)!important}.dashboard-empty-recent{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem 1.5rem!important;color:var(--text-muted);background:#25d3660f;border-radius:12px;border:1px dashed var(--glass-border);min-height:200px}.dashboard-empty-recent-icon{width:56px;height:56px;border-radius:14px;margin-bottom:1rem;display:flex;align-items:center;justify-content:center;background:#25d3661f;border:1px solid rgba(37,211,102,.2);color:var(--primary)}.dashboard-empty-recent-text{font-size:.95rem;font-weight:500;margin-bottom:1rem}.dashboard-empty-recent .btn-primary{margin-top:0}@media(max-width:900px){.dashboard-bottom-grid{grid-template-columns:1fr}.dashboard-bottom-grid .glass-card{min-height:240px}}.card-view-all-link{padding:6px 10px;border-radius:8px;transition:background .2s,color .2s}.card-view-all-link:hover{background:#25d3661a;color:var(--primary-dark)!important}@media(max-width:1024px){.app-page,.dashboard-page,.scheduled-messages-page,.contacts-page,.settings-page{padding:1.5rem 1.25rem}.app-page-header,.dashboard-page-header{gap:1rem;margin-bottom:1.5rem}.app-page-title,.dashboard-page-title{font-size:1.5rem}.app-page-subtitle,.dashboard-page-subtitle{font-size:1rem}.settings-create-card{padding:1.5rem 1.25rem 2rem!important}.settings-create-title{font-size:1.35rem}.dashboard-card-recent,.dashboard-card-actions{padding:1.25rem!important}}@media(max-width:768px){.app-page,.dashboard-page,.scheduled-messages-page,.contacts-page,.settings-page{padding:1rem}.app-page-header,.dashboard-page-header{flex-direction:column;align-items:flex-start;gap:.75rem;margin-bottom:1.25rem}.app-page-header-icon-wrap,.dashboard-page-header-icon{width:48px;height:48px}.app-page-title,.dashboard-page-title{font-size:1.35rem}.app-page-subtitle,.dashboard-page-subtitle{font-size:.9375rem}.settings-create-card{padding:1.25rem 1rem 1.75rem!important;max-width:100%}.settings-grid--centered{min-height:calc(100vh - 72px - 2rem)}.settings-create-intro{margin-bottom:1.5rem}.settings-create-title{font-size:1.25rem}.settings-create-desc{font-size:.9375rem}.settings-create-steps{padding:1rem 1.25rem;margin-bottom:1.5rem}.settings-create-steps-list{font-size:.875rem}.instance-config-section-title{font-size:1rem}.instance-config-submit{padding:12px 16px}.dashboard-page-header-icon{width:48px;height:48px}.dashboard-summary-grid{gap:1rem;margin-bottom:1.5rem}.dashboard-bottom-grid{gap:1rem}.dashboard-bottom-grid .glass-card{min-height:260px}.dashboard-stat-card{min-height:140px}.scheduled-toolbar{width:100%;justify-content:flex-start!important}.contacts-toolbar{flex-direction:column;align-items:stretch!important}.contacts-toolbar .search-box{width:100%!important;max-width:100%}.table-scroll-container{margin:0 -1rem;border-radius:0}}@media(min-width:1400px){.app-page,.dashboard-page,.scheduled-messages-page,.contacts-page,.settings-page{padding-left:2.5rem;padding-right:2.5rem}}@media(max-width:768px){.app-header{padding-left:1rem!important;padding-right:1rem!important}}
