.sidebar{width:260px;height:100vh;background:linear-gradient(180deg,#1a1a1a,#0a0a0a);color:#fff;display:flex;flex-direction:column;position:fixed;left:0;top:0;overflow-y:auto;border-right:1px solid #2a2a2a;z-index:1000}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:#1a1a1a}.sidebar::-webkit-scrollbar-thumb{background:#5a189a;border-radius:3px}.sidebar-header{padding:20px;border-bottom:1px solid #2a2a2a}.logo{display:flex;align-items:center;gap:12px;margin-bottom:5px}.logo-icon{width:36px;height:36px;background:linear-gradient(135deg,#5a189a,#9d4edd);border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;color:#fff}.logo-text{font-size:22px;font-weight:700;color:#fff}.logo-subtitle{font-size:11px;color:#999;margin-left:48px;text-transform:uppercase;letter-spacing:.5px}.sidebar-nav{flex:1;padding:20px 0}.nav-section{margin-bottom:25px}.nav-section-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:1.5px;color:#666;padding:0 20px 10px}.nav-item{display:flex;align-items:center;gap:12px;padding:11px 20px;color:#ccc;text-decoration:none;transition:all .2s;position:relative;border-left:3px solid transparent}.nav-item:hover:not(.disabled){background:#5a189a26;color:#fff;border-left-color:#5a189a}.nav-item.active{background:#5a189a33;color:#fff;border-left-color:#5a189a}.nav-item.disabled{opacity:.4;cursor:not-allowed}.nav-icon{font-size:14px;width:18px;text-align:center;color:#5a189a}.nav-item.active .nav-icon{color:#9d4edd}.nav-label{font-size:13px;font-weight:500;flex:1;letter-spacing:.3px}.nav-badge{font-size:9px;padding:3px 8px;background:#ffc85733;color:#ffc857;border-radius:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.sidebar-footer{padding:15px 20px;border-top:1px solid #2a2a2a;display:flex;justify-content:space-between;align-items:center}.version,.phase{font-size:10px;color:#666;text-transform:uppercase;letter-spacing:.5px}@media (max-width: 768px){.sidebar{width:70px}.logo-text,.logo-subtitle,.nav-section-title,.nav-label,.nav-badge,.version,.phase{display:none}.nav-item{justify-content:center}.nav-icon{font-size:18px}}.topbar{background:#fff;border-bottom:1px solid #e0e0e0;padding:0 30px;height:65px;display:flex;align-items:center;position:sticky;top:0;z-index:100;box-shadow:0 1px 3px #0000000d}.topbar-content{display:flex;justify-content:space-between;align-items:center;width:100%}.topbar-left{flex:1}.page-title{font-size:18px;font-weight:600;color:#1a1a1a;margin:0;letter-spacing:.3px}.topbar-right,.user-menu{display:flex;align-items:center;gap:20px}.user-info{display:flex;flex-direction:column;align-items:flex-end}.user-name{font-size:13px;font-weight:600;color:#1a1a1a}.user-role{font-size:11px;color:#666;text-transform:uppercase;letter-spacing:.5px}.logout-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#fff;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;color:#666;transition:all .2s}.logout-btn:hover{background:#fee2e2;border-color:#fca5a5;color:#dc2626}.logout-btn svg{width:16px;height:16px}@media (max-width: 768px){.topbar{padding:0 15px}.page-title{font-size:16px}.user-name,.logout-btn span{display:none}}.app-layout{display:flex;min-height:100vh;background:#f5f5f5}.main-content{flex:1;margin-left:260px;display:flex;flex-direction:column;min-height:100vh}.content-area{flex:1;padding:20px;overflow-y:auto}@media (max-width: 768px){.main-content{margin-left:70px}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0a0a0a,#1a1a1a);padding:20px}.login-box{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0000004d;padding:40px;width:100%;max-width:420px}.login-header{text-align:center;margin-bottom:30px}.login-logo{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:10px}.login-logo-icon{width:48px;height:48px;background:linear-gradient(135deg,#5a189a,#9d4edd);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;color:#fff}.login-logo h1{font-size:28px;font-weight:700;color:#1a1a1a;margin:0}.login-subtitle{font-size:13px;color:#666;text-transform:uppercase;letter-spacing:1px;margin:0}.login-form,.form-group{margin-bottom:20px}.form-group input{width:100%;padding:12px 16px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;transition:all .2s;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#5a189a;box-shadow:0 0 0 3px #5a189a1a}.error-message{padding:12px 16px;background:#fee2e2;border:1px solid #FCA5A5;border-radius:8px;color:#dc2626;font-size:13px;margin-bottom:20px}.login-btn{width:100%;padding:14px;background:linear-gradient(135deg,#5a189a,#7b2cbf);color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s}.login-btn:hover:not(:disabled){background:linear-gradient(135deg,#7b2cbf,#9d4edd);transform:translateY(-1px);box-shadow:0 4px 12px #5a189a4d}.login-btn:disabled{opacity:.6;cursor:not-allowed}.login-footer{text-align:center;padding-top:20px;border-top:1px solid #e0e0e0}.login-footer p{font-size:11px;color:#999;margin:0}@media (max-width: 480px){.login-box{padding:30px 20px}}.applications-page{padding:0}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.page-header h1{font-size:24px;font-weight:600;color:#1a1a1a;margin:0 0 5px;letter-spacing:-.3px}.page-description{font-size:14px;color:#666;margin:0}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:#fff;padding:20px;border-radius:10px;box-shadow:0 1px 3px #00000014;display:flex;justify-content:space-between;align-items:center;transition:all .2s;border:1px solid #f0f0f0}.stat-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.stat-label{font-size:12px;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.stat-value{font-size:28px;font-weight:700;color:#1a1a1a}.stat-icon{font-size:40px;opacity:.3}.stat-icon.default{color:#666}.stat-icon.warning{color:#ffc857}.stat-icon.success{color:#10b981}.stat-icon.danger{color:#dc2626}.filters-section{margin-bottom:20px}.filters-bar{display:flex;gap:15px}.search-input{flex:1;padding:12px 16px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;transition:all .2s}.status-filter{padding:12px 16px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;min-width:180px;cursor:pointer;transition:all .2s}.status-filter:focus{outline:none;border-color:#5a189a}.table-card{background:#fff;border-radius:10px;box-shadow:0 1px 3px #00000014;overflow:hidden;border:1px solid #f0f0f0}.data-table thead{background:#fafafa;border-bottom:2px solid #f0f0f0}.data-table th{text-align:left;padding:16px;font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.data-table td{padding:16px;border-bottom:1px solid #f5f5f5;font-size:14px;color:#1a1a1a}.data-table tbody tr{transition:background .2s}.data-table tbody tr:hover{background:#fafafa}.applicant-info{display:flex;flex-direction:column;gap:4px}.applicant-name{font-weight:600;color:#1a1a1a}.applicant-email{font-size:12px;color:#666}.contact-info{display:flex;flex-direction:column;gap:3px}.secondary-phone{font-size:12px;color:#666}.date-info{font-size:13px;color:#666}.status-badge{display:inline-block;padding:6px 12px;border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.success{background:#d1fae5;color:#065f46}.status-badge.warning{background:#fef3c7;color:#92400e}.status-badge.danger{background:#fee2e2;color:#991b1b}.status-badge.default{background:#f3f4f6;color:#374151}.btn-action{padding:8px 14px;border:1px solid;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px}.btn-view{background:#fff;border-color:#e0e0e0;color:#666}.btn-view:hover{background:#fafafa;border-color:#5a189a;color:#5a189a}.btn-approve{background:#d1fae5;border-color:#10b981;color:#065f46}.btn-approve:hover{background:#10b981;color:#fff}.btn-reject{background:#fee2e2;border-color:#dc2626;color:#991b1b}.btn-reject:hover{background:#dc2626;color:#fff}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:15px}.spinner{width:40px;height:40px;border:3px solid #f3f3f3;border-top:3px solid #5A189A;border-radius:50%;animation:spin 1s linear infinite}.empty-icon{font-size:60px;color:#e0e0e0}.empty-state h3{margin:0;font-size:18px;color:#1a1a1a}.empty-state p{margin:0;font-size:14px;color:#666}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.modal-content{background:#fff;border-radius:12px;max-width:700px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #f0f0f0}.modal-header h2{margin:0;font-size:20px;font-weight:600;color:#1a1a1a}.close-btn{background:none;border:none;font-size:32px;color:#999;cursor:pointer;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:all .2s}.close-btn:hover{color:#1a1a1a}.application-details{display:flex;flex-direction:column;gap:24px}.detail-section h3{font-size:14px;font-weight:600;color:#1a1a1a;margin:0 0 16px;text-transform:uppercase;letter-spacing:.5px}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.detail-item label{display:block;font-size:11px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.detail-item p{margin:0;font-size:14px;color:#1a1a1a;font-weight:500}.detail-item.full-width{grid-column:1 / -1}.message-box{padding:16px;background:#fafafa;border-radius:8px;border:1px solid #f0f0f0;font-size:14px;color:#1a1a1a;line-height:1.6}.status-info{display:flex;align-items:center;gap:12px}.confirmation-content{text-align:center}.confirmation-icon{width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;margin:0 auto 20px}.confirmation-icon.success{background:#d1fae5;color:#065f46}.confirmation-icon.danger{background:#fee2e2;color:#991b1b}.confirmation-content h3{margin:0 0 12px;font-size:20px;font-weight:600;color:#1a1a1a}.confirmation-content p{margin:0 0 24px;font-size:14px;color:#666;line-height:1.6}.confirmation-actions{display:flex;gap:12px;justify-content:center}.btn-cancel{padding:12px 24px;background:#fff;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel:hover{background:#fafafa}.btn-confirm{padding:12px 24px;border:none;border-radius:8px;font-size:14px;font-weight:600;color:#fff;cursor:pointer;transition:all .2s}.btn-confirm.success{background:#10b981}.btn-confirm.success:hover{background:#059669}.btn-confirm.danger{background:#dc2626}.btn-confirm.danger:hover{background:#b91c1c}.btn-confirm:disabled{opacity:.6;cursor:not-allowed}.rejection-form{text-align:center}.form-group{margin:24px 0;text-align:left}.form-group label{display:block;font-size:13px;font-weight:600;color:#1a1a1a;margin-bottom:8px}.form-group textarea{width:100%;padding:12px;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;font-family:inherit;resize:vertical;transition:all .2s;box-sizing:border-box}.form-group textarea:focus{outline:none;border-color:#5a189a;box-shadow:0 0 0 3px #5a189a1a}@media (max-width: 768px){.stats-grid{grid-template-columns:1fr}.filters-bar,.action-buttons{flex-direction:column}.detail-grid{grid-template-columns:1fr}}.dashboard{padding:20px;max-width:1400px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.dashboard-header h1{font-size:28px;color:#1a1a1a;margin:0}.time-range-selector{display:flex;gap:10px}.time-range-selector button{padding:8px 16px;border:1px solid #ddd;background:#fff;border-radius:6px;cursor:pointer;transition:all .3s}.time-range-selector button.active{background:#5a189a;color:#fff;border-color:#5a189a}.time-range-selector button:hover:not(.active){border-color:#5a189a;color:#5a189a}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 8px #0000001a;border-left:4px solid;display:flex;align-items:center;gap:15px;transition:transform .2s,box-shadow .2s}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.stat-icon{font-size:36px}.stat-content{flex:1}.stat-content h4{margin:0 0 8px;font-size:14px;color:#666;font-weight:500}.stat-value{margin:0;font-size:28px;font-weight:700;color:#1a1a1a}.stat-subtitle{margin:4px 0 0;font-size:12px;color:#10b981}.charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));gap:20px;margin-bottom:30px}.chart-card{background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.chart-card h3{margin:0 0 20px;font-size:18px;color:#1a1a1a}.dashboard-section{background:#fff;padding:20px;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px}.dashboard-section h3{margin:0 0 20px;font-size:18px;color:#1a1a1a}.table-container{overflow-x:auto}.data-table th{text-align:left;padding:12px;background:#f8f9fa;font-weight:600;color:#1a1a1a;border-bottom:2px solid #e0e0e0}.data-table td{padding:12px;border-bottom:1px solid #f0f0f0}.activity-list{display:flex;flex-direction:column;gap:15px}.activity-item{display:flex;gap:15px;padding:15px;background:#f8f9fa;border-radius:8px}.activity-icon{font-size:24px;flex-shrink:0}.activity-details{flex:1}.activity-description{margin:0 0 5px;font-size:14px;color:#1a1a1a}.activity-meta{margin:0;font-size:12px;color:#666}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:20px}.spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #5A189A;border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 768px){.stats-grid,.charts-grid{grid-template-columns:1fr}.dashboard-header{flex-direction:column;align-items:flex-start;gap:15px}}.stores-page{padding:20px;max-width:1400px;margin:0 auto}.page-header{margin-bottom:30px}.filters-bar{display:flex;gap:15px;margin-bottom:20px}.status-filter{padding:10px 15px;border:1px solid #ddd;border-radius:8px;font-size:14px;min-width:150px}.table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow-x:auto}.data-table th{text-align:left;padding:15px;background:#f8f9fa;font-weight:600;color:#1a1a1a;border-bottom:2px solid #e0e0e0;white-space:nowrap}.data-table td{padding:15px;border-bottom:1px solid #f0f0f0}.data-table tr:hover{background:#f8f9fa}.store-info{display:flex;flex-direction:column;gap:5px}.featured-badge{font-size:11px;color:#ffc857}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.action-buttons{display:flex;gap:8px}.action-buttons button{padding:6px 10px;border:none;border-radius:6px;cursor:pointer;font-size:16px;transition:all .2s}.btn-view{background:#e0f2fe}.btn-view:hover{background:#bae6fd}.btn-edit{background:#fef3c7}.btn-edit:hover{background:#fde68a}.btn-feature{background:#fefce8}.btn-feature:hover{background:#fef08a}.btn-suspend{background:#fee2e2}.btn-suspend:hover{background:#fecaca}.btn-activate{background:#d1fae5}.btn-activate:hover{background:#a7f3d0}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:20px;padding:20px}.pagination button{padding:8px 16px;border:1px solid #ddd;background:#fff;border-radius:6px;cursor:pointer;transition:all .3s}.pagination button:hover:not(:disabled){background:#5a189a;color:#fff;border-color:#5a189a}.pagination button:disabled{opacity:.5;cursor:not-allowed}.modal-content{background:#fff;border-radius:12px;max-width:800px;width:100%;max-height:90vh;overflow-y:auto}.modal-content.small{max-width:500px}.modal-header h2{margin:0;font-size:20px}.store-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;margin-bottom:20px}.detail-group label{display:block;font-size:12px;color:#666;margin-bottom:5px}.detail-group p{margin:0;font-size:14px;color:#1a1a1a;font-weight:500}.recent-orders{margin-top:30px}.recent-orders h3{margin:0 0 15px;font-size:16px}.mini-table{width:100%;font-size:13px}.mini-table th,.mini-table td{padding:10px;text-align:left}.mini-table th{background:#f8f9fa;font-weight:600}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500}.form-group input{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;font-size:14px}.form-actions{display:flex;gap:10px;justify-content:flex-end}.btn-cancel{padding:10px 20px;border:1px solid #ddd;background:#fff;border-radius:6px;cursor:pointer}.btn-submit{padding:10px 20px;border:none;background:#5a189a;color:#fff;border-radius:6px;cursor:pointer}.page-header{display:flex;justify-content:space-between;align-items:center}.btn-add-store{padding:10px 20px;background:#5a189a;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.btn-add-store:hover{background:#7b2cbf}.modal-content.wide{max-width:700px}.form-section-title{font-size:16px;color:#1a1a1a;margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid #f0f0f0}.form-section-title:not(:first-child){margin-top:24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:4px}.form-group select{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;font-size:14px;background:#fff}.form-hint{font-size:13px;color:#888;margin:8px 0 16px;font-style:italic}@media (max-width: 768px){.filters-bar{flex-direction:column}.action-buttons{flex-wrap:wrap}.store-details,.form-row{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:flex-start;gap:12px}}.payouts-page{padding:20px;max-width:1400px;margin:0 auto}.stat-card.red{border-left-color:#ef4444}.status-filter{padding:10px 15px;border:1px solid #ddd;border-radius:8px;font-size:14px;min-width:150px;background:#fff}.alert-bar{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:10px;margin-bottom:20px;font-size:14px}.alert-bar.warning{background:#fef3c7;border:1px solid #FDE68A;color:#92400e}.alert-bar .alert-icon{flex-shrink:0;margin-top:1px}.alert-bar .alert-title{font-weight:600;margin:0 0 2px}.alert-bar .alert-subtitle{font-size:12px;opacity:.8;margin:0}.data-table .amount{font-weight:600;color:#1a1a1a}.data-table .date{color:#888;font-size:13px}.status-requested{background:#fef3c7;color:#92400e}.status-approved{background:#dbeafe;color:#1e40af}.status-processing{background:#ede9fe;color:#5b21b6}.status-paid,.status-completed{background:#d1fae5;color:#065f46}.status-rejected{background:#f3f4f6;color:#6b7280}.entity-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:6px;font-size:12px;font-weight:500}.entity-store{background:#ede9fe;color:#5a189a}.entity-affiliate{background:#dbeafe;color:#1e40af}.action-buttons button{padding:6px 8px;border:none;border-radius:6px;cursor:pointer;background:transparent;color:#888;transition:all .2s;display:flex;align-items:center}.action-buttons .btn-approve-icon:hover{color:#059669;background:#d1fae5}.action-buttons .btn-reject-icon:hover{color:#dc2626;background:#fee2e2}.amount-display{background:#f8f9fa;border-radius:12px;padding:24px;text-align:center;margin-bottom:20px}.amount-display .value{font-size:32px;font-weight:700;color:#1a1a1a;margin:0}.rejection-reason{padding:12px 0}.rejection-reason .label{font-size:14px;color:#888;margin-bottom:4px}.rejection-reason .value{color:#dc2626;font-size:14px}.btn-approve{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background:#059669;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.btn-approve:hover{background:#047857}.btn-reject{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background:#dc2626;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.btn-reject:hover{background:#b91c1c}.btn-process{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background:#5a189a;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.btn-process:hover{background:#7b2cbf}.btn-retry{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.btn-retry:hover{background:#2563eb}.reject-warning{display:flex;align-items:flex-start;gap:12px;padding:14px;background:#fee2e2;border:1px solid #FECACA;border-radius:10px;margin-bottom:16px}.reject-warning .icon{color:#dc2626;flex-shrink:0;margin-top:2px}.reject-warning .text{font-size:14px;font-weight:600;color:#991b1b;margin:0}.reject-warning .subtext{font-size:13px;color:#991b1b;opacity:.7;margin:4px 0 0}.form-group textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:8px;font-size:14px;resize:none;box-sizing:border-box;font-family:inherit}.form-group textarea:focus{border-color:#5a189a;outline:none;box-shadow:0 0 0 3px #5a189a1a}.reject-actions{display:flex;gap:12px}.btn-cancel{flex:1;padding:10px 16px;background:#fff;border:1px solid #ddd;border-radius:8px;font-size:14px;cursor:pointer;transition:all .2s}.btn-reject-confirm{flex:1;padding:10px 16px;background:#dc2626;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.btn-reject-confirm:hover{background:#b91c1c}.btn-reject-confirm:disabled{opacity:.5;cursor:not-allowed}.transactions-page{padding:20px;max-width:1400px;margin:0 auto}.btn-export{display:flex;align-items:center;gap:8px;padding:10px 16px;background:#fff;border:1px solid #ddd;border-radius:8px;color:#333;font-size:14px;cursor:pointer;transition:all .2s}.btn-export:hover{background:#f8f9fa;border-color:#5a189a;color:#5a189a}.info-bar{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-radius:10px;margin-bottom:20px;background:#eff6ff;border:1px solid #BFDBFE;color:#1e40af;font-size:14px}.info-bar .info-icon{flex-shrink:0;margin-top:1px;font-size:16px}.info-bar .info-title{font-weight:600;margin:0 0 2px}.info-bar .info-subtitle{font-size:12px;opacity:.8;margin:0}.data-table .entity-sub{font-size:12px;color:#888;margin-top:2px}.data-table .time-sub{font-size:11px;color:#aaa}.amount-positive{color:#059669;font-weight:600}.amount-negative{color:#dc2626;font-weight:600}.type-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.type-order_payment{background:#d1fae5;color:#065f46}.type-seller_earning{background:#dbeafe;color:#1e40af}.type-affiliate_commission{background:#ede9fe;color:#5b21b6}.type-platform_fee{background:#fef3c7;color:#92400e}.type-refund{background:#fee2e2;color:#991b1b}.type-payout{background:#ffedd5;color:#9a3412}.type-adjustment{background:#f3f4f6;color:#6b7280}.status-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:10px;font-size:11px;font-weight:600;text-transform:uppercase}.status-completed{background:#d1fae5;color:#065f46}.status-reversed{background:#f3f4f6;color:#6b7280}.action-buttons{display:flex;justify-content:center}.action-buttons button:hover{background:#f0f0f0;color:#5a189a}.close-btn{background:none;border:none;font-size:28px;cursor:pointer;color:#666;line-height:1;padding:0;width:30px;height:30px}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #f0f0f0}.detail-row:last-child{border-bottom:none}.amount-display{background:#f8f9fa;border-radius:12px;padding:24px;text-align:center;margin:16px 0}.amount-display .label{font-size:13px;color:#888;margin:0 0 6px}.amount-display .value{font-size:32px;font-weight:700;margin:0 0 8px}.description-block{padding:12px 0;border-bottom:1px solid #f0f0f0}.description-block .label{font-size:14px;color:#888;margin-bottom:4px}.description-block .value{color:#1a1a1a;font-size:14px}.metadata-block{padding:12px 0}.metadata-block .label{font-size:14px;color:#888;margin-bottom:8px}.metadata-block pre{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:12px;font-size:12px;color:#333;overflow-x:auto;margin:0}.info-notice{background:#eff6ff;border:1px solid #BFDBFE;border-radius:10px;padding:14px 16px;margin-top:16px;font-size:13px;color:#1e40af}.affiliates-page{padding:20px;max-width:1400px;margin:0 auto}.stat-card.yellow{border-left-color:#f59e0b}.data-table th.text-right{text-align:right}.data-table td.text-right{text-align:right}.data-table .mono{font-family:SF Mono,Consolas,monospace;font-size:13px}.status-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.tier-badge{display:inline-flex;padding:3px 10px;border-radius:6px;font-size:12px;font-weight:600;text-transform:capitalize}.tier-bronze{background:#fed7aa;color:#9a3412}.tier-silver{background:#e5e7eb;color:#374151}.tier-gold{background:#fef3c7;color:#92400e}.tier-platinum{background:#ede9fe;color:#5b21b6}.modal-content{background:#fff;border-radius:12px;max-width:700px;width:100%;max-height:90vh;overflow-y:auto}.balances-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}.balance-card{background:#f8f9fa;border-radius:10px;padding:16px;text-align:center}.balance-card .label{font-size:12px;color:#888;margin:0 0 4px}.balance-card .value{font-size:20px;font-weight:700;color:#1a1a1a;margin:0}@media (max-width: 1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}.balances-grid{grid-template-columns:1fr}}@media (max-width: 768px){.stats-grid{grid-template-columns:1fr}.filters-bar{flex-direction:column}.page-header{flex-direction:column;align-items:flex-start;gap:12px}}.admin-users-page{padding:20px;max-width:1400px;margin:0 auto}.page-header h1{font-size:28px;color:#1a1a1a;margin:0}.page-description{color:#666;font-size:14px;margin:4px 0 0}.btn-add-admin{padding:10px 20px;background:#5a189a;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.btn-add-admin:hover{background:#7b2cbf}.stat-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 3px #00000014;border-left:4px solid transparent}.stat-card.green{border-left-color:#10b981}.stat-card.blue{border-left-color:#3b82f6}.stat-card-title{font-size:13px;color:#888;margin:0 0 8px}.stat-card-value{font-size:22px;font-weight:700;color:#1a1a1a;margin:0}.filters-bar{display:flex;gap:12px;margin-bottom:20px}.search-input{flex:1;padding:10px 15px;border:1px solid #ddd;border-radius:8px;font-size:14px}.search-input:focus{border-color:#5a189a;outline:none;box-shadow:0 0 0 3px #5a189a1a}.filter-select{padding:10px 15px;border:1px solid #ddd;border-radius:8px;font-size:14px;min-width:140px;background:#fff}.table-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;overflow:hidden}.data-table th{text-align:left;padding:14px 16px;background:#f8f9fa;font-weight:600;font-size:12px;color:#888;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e0e0e0;white-space:nowrap}.data-table th.text-center{text-align:center}.data-table td{padding:14px 16px;border-bottom:1px solid #f0f0f0;font-size:14px;color:#333}.data-table td.text-center{text-align:center}.data-table tr:hover{background:#fafafa}.status-badge{display:inline-flex;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.status-deactivated{background:#f3f4f6;color:#6b7280}.role-badge{display:inline-flex;padding:3px 10px;border-radius:6px;font-size:12px;font-weight:600;background:#ede9fe;color:#5a189a;text-transform:capitalize}.action-buttons{display:flex;align-items:center;justify-content:center;gap:4px}.action-buttons button{padding:6px 8px;border:none;border-radius:6px;cursor:pointer;background:transparent;color:#888;transition:all .2s}.action-buttons button:hover{background:#f0f0f0;color:#333}.pagination{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-top:1px solid #f0f0f0}.pagination-info{font-size:13px;color:#888}.pagination-buttons button{padding:6px 12px;border:1px solid #ddd;background:#fff;border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s}.pagination-buttons button:hover:not(:disabled){background:#5a189a;color:#fff;border-color:#5a189a}.pagination-buttons button:disabled{opacity:.4;cursor:not-allowed}.modal-content{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #e0e0e0}.modal-header h2{margin:0;font-size:20px;color:#1a1a1a}.close-btn{background:none;border:none;font-size:28px;cursor:pointer;color:#666;line-height:1;padding:0}.close-btn:hover{color:#000}.modal-body{padding:20px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:14px;font-weight:500;color:#333;margin-bottom:6px}.form-group input,.form-group select{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;box-sizing:border-box}.form-group input:focus,.form-group select:focus{border-color:#5a189a;outline:none;box-shadow:0 0 0 3px #5a189a1a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.btn-cancel{padding:10px 20px;background:#fff;border:1px solid #ddd;border-radius:8px;cursor:pointer;font-size:14px}.btn-cancel:hover{background:#f5f5f5}.btn-submit{padding:10px 20px;background:#5a189a;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer}.btn-submit:hover{background:#7b2cbf}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #f0f0f0}.detail-label{font-size:14px;color:#888}.detail-value{font-size:14px;color:#1a1a1a;font-weight:500}.section-title{font-size:16px;color:#1a1a1a;margin:20px 0 12px;padding-top:12px;border-top:1px solid #f0f0f0}.mini-table{width:100%;border-collapse:collapse;font-size:13px}.mini-table th,.mini-table td{padding:8px 10px;text-align:left}.mini-table th{background:#f8f9fa;font-weight:600;color:#888;font-size:11px;text-transform:uppercase}.mini-table td{border-bottom:1px solid #f5f5f5}.modal-actions{display:flex;gap:12px;padding-top:20px;border-top:1px solid #f0f0f0;margin-top:16px}.btn-suspend{flex:1;padding:10px 16px;background:#dc2626;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer}.btn-activate{flex:1;padding:10px 16px;background:#059669;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer}.loading-container{text-align:center;padding:60px 20px;color:#888}.spinner{width:36px;height:36px;border:3px solid #f0f0f0;border-top-color:#5a189a;border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 12px}.empty-state{text-align:center;padding:60px 20px;color:#888}@media (max-width: 768px){.stats-grid{grid-template-columns:1fr}.filters-bar{flex-direction:column}.page-header{flex-direction:column;align-items:flex-start;gap:12px}.form-row{grid-template-columns:1fr}}.products-page{padding:0}.search-input{flex:1;min-width:200px;padding:10px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;background:#fff;transition:border-color .2s}.product-cell{display:flex;align-items:center;gap:12px}.product-thumb{width:40px;height:40px;border-radius:6px;object-fit:cover;background:#f3f4f6;border:1px solid #e5e7eb}.product-thumb-placeholder{width:40px;height:40px;border-radius:6px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;font-size:16px;color:#9ca3af;border:1px solid #e5e7eb}.product-name{font-weight:600;color:#1a1a1a}.product-code{font-size:12px;color:#9ca3af;font-family:monospace}.status-inactive{background:#f3f4f6;color:#6b7280}.status-archived{background:#e5e7eb;color:#374151}.status-draft{background:#dbeafe;color:#1e40af}.price-current{font-weight:600;color:#1a1a1a}.price-sale{font-weight:600;color:#dc2626}.price-original{font-size:12px;color:#9ca3af;text-decoration:line-through;margin-left:4px}.inventory-low{color:#dc2626;font-weight:600}.inventory-ok{color:#374151}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:700px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.image-gallery{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.gallery-img{width:80px;height:80px;border-radius:8px;object-fit:cover;border:2px solid #e5e7eb;cursor:pointer}.gallery-img.primary{border-color:#5a189a}.modal-actions{display:flex;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid #f3f4f6;flex-wrap:wrap}.btn-status{padding:8px 16px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;cursor:pointer;font-size:13px;font-weight:500}.btn-status:hover{background:#f3f4f6}.btn-status.active{color:#059669;border-color:#059669}.btn-status.inactive{color:#6b7280;border-color:#6b7280}.btn-status.pending{color:#d97706;border-color:#d97706}.btn-status.archived{color:#374151;border-color:#374151}.description-block{margin:12px 0;padding:12px;background:#f9fafb;border-radius:8px;font-size:14px;color:#374151;line-height:1.6;max-height:120px;overflow-y:auto}.featured-badge{display:inline-block;padding:2px 8px;background:#fef3c7;color:#92400e;border-radius:10px;font-size:11px;font-weight:600}@media (max-width: 768px){.stats-grid{grid-template-columns:1fr}.page-header{flex-direction:column;gap:12px;align-items:flex-start}.filters-bar{flex-direction:column}.filter-select{min-width:unset}}.orders-page{padding:0}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat-card.yellow{border-left-color:#d97706}.search-input{flex:1;min-width:180px;padding:10px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;background:#fff}.filter-select{padding:10px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;background:#fff;cursor:pointer;min-width:140px}.date-input{padding:10px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;background:#fff}.date-input:focus{outline:none;border-color:#5a189a}.order-number{font-weight:600;color:#5a189a;font-family:monospace;font-size:13px}.status-processing{background:#dbeafe;color:#1e40af}.status-shipped{background:#e0e7ff;color:#3730a3}.status-delivered{background:#d1fae5;color:#065f46}.status-cancelled{background:#fee2e2;color:#991b1b}.status-returned{background:#fce7f3;color:#9d174d}.status-refunded{background:#f3f4f6;color:#374151}.payment-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize}.payment-paid{background:#d1fae5;color:#065f46}.payment-pending{background:#fef3c7;color:#92400e}.payment-partially_paid{background:#dbeafe;color:#1e40af}.payment-failed{background:#fee2e2;color:#991b1b}.payment-refunded{background:#f3f4f6;color:#374151}.amount{font-weight:600;color:#1a1a1a}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:750px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.detail-value{font-size:14px;color:#1a1a1a;text-align:right;max-width:60%;word-break:break-word}.address-block{margin:8px 0;padding:12px;background:#f9fafb;border-radius:8px;font-size:14px;color:#374151;line-height:1.6}.amount-summary{margin:16px 0;padding:16px;background:#f9fafb;border-radius:8px}.amount-row{display:flex;justify-content:space-between;padding:4px 0;font-size:14px;color:#374151}.amount-row.total{border-top:1px solid #e5e7eb;margin-top:8px;padding-top:10px;font-weight:700;font-size:16px;color:#1a1a1a}.modal-actions{display:flex;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid #f3f4f6;flex-wrap:wrap}.btn-status-change{padding:8px 16px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;cursor:pointer;font-size:13px;font-weight:500;transition:all .2s}.btn-status-change:hover{background:#f3f4f6}.btn-status-change.processing{color:#1e40af;border-color:#1e40af}.btn-status-change.shipped{color:#3730a3;border-color:#3730a3}.btn-status-change.delivered{color:#059669;border-color:#059669}.btn-status-change.cancelled{color:#dc2626;border-color:#dc2626}@media (max-width: 1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.stats-grid{grid-template-columns:1fr}.page-header{flex-direction:column;gap:12px;align-items:flex-start}.filters-bar{flex-direction:column}}.customers-page{padding:0}.page-header h1{font-size:24px;font-weight:700;color:#1a1a1a;margin:0}.page-description{color:#6b7280;font-size:14px;margin:4px 0 0}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.stat-card{background:#fff;border-radius:10px;padding:20px;box-shadow:0 1px 3px #00000014;border-left:4px solid #e5e7eb}.stat-card.purple{border-left-color:#5a189a}.stat-card.green{border-left-color:#059669}.stat-card.blue{border-left-color:#2563eb}.stat-card-title{font-size:13px;color:#6b7280;margin:0 0 8px;text-transform:uppercase;letter-spacing:.5px}.stat-card-value{font-size:28px;font-weight:700;color:#1a1a1a;margin:0}.filters-bar{display:flex;gap:12px;margin-bottom:20px;flex-wrap:wrap}.search-input{flex:1;min-width:200px;padding:10px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;background:#fff}.search-input:focus{outline:none;border-color:#5a189a;box-shadow:0 0 0 3px #5a189a1a}.filter-select{padding:10px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;background:#fff;cursor:pointer;min-width:150px}.filter-select:focus{outline:none;border-color:#5a189a}.table-card{background:#fff;border-radius:10px;box-shadow:0 1px 3px #00000014;overflow:hidden}.data-table{width:100%;border-collapse:collapse}.data-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #f3f4f6;background:#fafafa}.data-table td{padding:12px 16px;font-size:14px;color:#374151;border-bottom:1px solid #f3f4f6;vertical-align:middle}.data-table tbody tr:hover{background:#f9fafb}.text-right{text-align:right}.text-center{text-align:center}.status-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize}.status-active{background:#d1fae5;color:#065f46}.status-suspended{background:#fee2e2;color:#991b1b}.status-pending{background:#fef3c7;color:#92400e}.status-{background:#f3f4f6;color:#6b7280}.verified-badge{display:inline-block;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:600}.verified-yes{background:#d1fae5;color:#065f46}.verified-no{background:#fee2e2;color:#991b1b}.action-buttons{display:flex;gap:6px;justify-content:center}.action-buttons button{background:none;border:1px solid #e5e7eb;border-radius:6px;padding:4px 8px;cursor:pointer;font-size:14px;transition:all .2s}.action-buttons button:hover{background:#f3f4f6;border-color:#d1d5db}.pagination{display:flex;justify-content:space-between;align-items:center;padding:16px;border-top:1px solid #f3f4f6}.pagination-info{font-size:14px;color:#6b7280}.pagination-buttons{display:flex;gap:8px}.pagination-buttons button{padding:8px 16px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;cursor:pointer;font-size:13px}.pagination-buttons button:hover:not(:disabled){background:#f3f4f6}.pagination-buttons button:disabled{opacity:.5;cursor:not-allowed}.loading-container{display:flex;flex-direction:column;align-items:center;padding:48px 20px;color:#6b7280}.spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#5a189a;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:12px}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:48px 20px;color:#6b7280;font-size:15px}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:680px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #f9fafb}.detail-label{font-size:13px;color:#6b7280;font-weight:500}.detail-value{font-size:14px;color:#1a1a1a;text-align:right}.customer-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}.customer-stat{background:#f9fafb;border-radius:8px;padding:14px;text-align:center}.customer-stat .label{font-size:12px;color:#6b7280;margin:0 0 4px;text-transform:uppercase}.customer-stat .value{font-size:20px;font-weight:700;color:#1a1a1a;margin:0}.section-title{font-size:15px;font-weight:600;color:#1a1a1a;margin:20px 0 12px;padding-top:16px;border-top:1px solid #f3f4f6}.mini-table{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:12px}.mini-table th{padding:8px 10px;text-align:left;font-weight:600;color:#6b7280;background:#f9fafb;border-bottom:1px solid #e5e7eb;font-size:11px;text-transform:uppercase}.mini-table td{padding:8px 10px;border-bottom:1px solid #f3f4f6;color:#374151}.mono{font-family:SF Mono,Fira Code,monospace;font-size:13px}.modal-actions{display:flex;gap:10px;margin-top:20px;padding-top:16px;border-top:1px solid #f3f4f6}.btn-activate{padding:8px 20px;background:#059669;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.btn-activate:hover{background:#047857}.btn-suspend{padding:8px 20px;background:#dc2626;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500}.btn-suspend:hover{background:#b91c1c}@media (max-width: 1024px){.stats-grid,.customer-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.stats-grid,.customer-stats{grid-template-columns:1fr}.page-header{flex-direction:column;gap:12px;align-items:flex-start}.filters-bar{flex-direction:column}}.marketing-page{padding:0}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.btn-create{padding:10px 20px;background:#5a189a;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:background .2s}.btn-create:hover{background:#7b2cbf}.channel-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize}.channel-email{background:#dbeafe;color:#1e40af}.channel-sms{background:#d1fae5;color:#065f46}.channel-whatsapp{background:#dcfce7;color:#166534}.status-draft{background:#e5e7eb;color:#374151}.status-scheduled{background:#dbeafe;color:#1e40af}.status-sending{background:#fef3c7;color:#92400e}.status-sent{background:#d1fae5;color:#065f46}.status-failed{background:#fee2e2;color:#991b1b}.status-cancelled{background:#f3f4f6;color:#6b7280}.audience-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize;background:#f3f4f6;color:#374151}.selection-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:12px 0 20px}.selection-card{border:2px solid #e5e7eb;border-radius:10px;padding:16px;cursor:pointer;text-align:center;transition:all .2s;background:#fff}.selection-card:hover{border-color:#c4b5fd;background:#faf5ff}.selection-card.selected{border-color:#5a189a;background:#faf5ff;box-shadow:0 0 0 3px #5a189a1a}.selection-card-icon{font-size:28px;margin-bottom:8px}.selection-card-title{font-size:14px;font-weight:600;color:#1a1a1a;margin-bottom:4px}.selection-card-desc{font-size:12px;color:#6b7280}.step-indicator{display:flex;justify-content:center;gap:32px;margin-bottom:28px;padding-bottom:20px;border-bottom:1px solid #f3f4f6}.step{display:flex;align-items:center;gap:8px;font-size:13px;color:#9ca3af;font-weight:500}.step.active{color:#5a189a}.step.completed{color:#059669}.step-number{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;background:#f3f4f6;color:#9ca3af}.step.active .step-number{background:#5a189a;color:#fff}.step.completed .step-number{background:#059669;color:#fff}.form-group{margin-bottom:18px}.form-group label{display:block;font-size:13px;font-weight:600;color:#374151;margin-bottom:6px}.form-group input,.form-group textarea,.form-group select{width:100%;padding:10px 14px;border:1px solid #e5e7eb;border-radius:8px;font-size:14px;background:#fff;transition:border-color .2s;box-sizing:border-box}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#5a189a;box-shadow:0 0 0 3px #5a189a1a}.form-group textarea{min-height:160px;resize:vertical;font-family:inherit}.form-group textarea.mono-textarea{font-family:SF Mono,Fira Code,monospace;font-size:13px}.char-count{font-size:12px;color:#9ca3af;text-align:right;margin-top:4px}.char-count.warning{color:#d97706}.char-count.over{color:#dc2626;font-weight:600}.audience-preview{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#faf5ff;border:1px solid #e9d5ff;border-radius:8px;margin:12px 0;font-size:14px;color:#5a189a;font-weight:500}.audience-preview .count{font-size:20px;font-weight:700}.review-summary{background:#f9fafb;border-radius:10px;padding:20px;margin-bottom:20px}.review-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f3f4f6;font-size:14px}.review-row:last-child{border-bottom:none}.review-label{color:#6b7280;font-weight:500}.review-value{color:#1a1a1a;font-weight:600;text-align:right;max-width:60%;word-break:break-word}.schedule-options{display:flex;gap:16px;margin:12px 0}.schedule-option{display:flex;align-items:center;gap:8px;font-size:14px;color:#374151;cursor:pointer}.schedule-option input[type=radio]{accent-color:#5A189A;width:auto}.modal-footer{display:flex;justify-content:space-between;padding:16px 24px;border-top:1px solid #f3f4f6;gap:10px}.btn-back{padding:10px 20px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;cursor:pointer;font-size:14px;font-weight:500;color:#374151}.btn-back:hover{background:#f3f4f6}.btn-next{padding:10px 24px;background:#5a189a;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600}.btn-next:hover{background:#7b2cbf}.btn-next:disabled{background:#d1d5db;cursor:not-allowed}.btn-send{padding:10px 24px;background:#059669;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600}.btn-send:hover{background:#047857}.btn-send:disabled{background:#d1d5db;cursor:not-allowed}.progress-bar-container{width:100%;height:8px;background:#f3f4f6;border-radius:4px;overflow:hidden;margin:8px 0}.progress-bar-fill{height:100%;background:#5a189a;border-radius:4px;transition:width .3s}.recipients-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0}.recipient-stat{text-align:center;padding:12px;background:#f9fafb;border-radius:8px}.recipient-stat-value{font-size:22px;font-weight:700;color:#1a1a1a}.recipient-stat-label{font-size:12px;color:#6b7280;margin-top:4px;text-transform:uppercase;letter-spacing:.3px}.content-preview{padding:16px;background:#f9fafb;border-radius:8px;font-size:14px;color:#374151;line-height:1.6;max-height:200px;overflow-y:auto;white-space:pre-wrap;word-break:break-word}@media (max-width: 768px){.selection-cards{grid-template-columns:1fr}.step-indicator{gap:16px}.step span:not(.step-number){display:none}.recipients-stats{grid-template-columns:repeat(2,1fr)}.schedule-options{flex-direction:column}}.whatsapp-page{padding:0;display:flex;flex-direction:column;height:calc(100vh - 105px)}.wa-setup-banner{padding:12px 20px;background:#fef3c7;border:1px solid #FDE68A;border-radius:8px;margin-bottom:16px;display:flex;align-items:center;justify-content:space-between;font-size:14px;color:#92400e;flex-shrink:0}.wa-setup-banner button{padding:6px 16px;background:#92400e;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500}.wa-setup-banner button:hover{background:#78350f}.wa-chat-container{display:flex;flex:1;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 1px 3px #00000014;min-height:0}.wa-sidebar{width:340px;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;background:#fff;flex-shrink:0}.wa-sidebar-header{padding:16px;border-bottom:1px solid #f3f4f6}.wa-sidebar-header h2{font-size:16px;font-weight:700;color:#1a1a1a;margin:0 0 12px;display:flex;align-items:center;justify-content:space-between}.wa-sidebar-header .wa-total-unread{background:#5a189a;color:#fff;font-size:11px;font-weight:700;padding:2px 8px;border-radius:10px;min-width:20px;text-align:center}.wa-search-input{width:100%;padding:9px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;background:#f9fafb;transition:border-color .2s;box-sizing:border-box}.wa-search-input:focus{outline:none;border-color:#5a189a;background:#fff;box-shadow:0 0 0 2px #5a189a1a}.wa-filter-row{display:flex;align-items:center;gap:8px;margin-top:8px;font-size:13px;color:#6b7280}.wa-filter-row label{display:flex;align-items:center;gap:4px;cursor:pointer}.wa-filter-row input[type=checkbox]{accent-color:#5A189A}.wa-conversation-list{flex:1;overflow-y:auto}.wa-conversation-item{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;border-bottom:1px solid #f9fafb;transition:background .15s;border-left:3px solid transparent}.wa-conversation-item:hover{background:#f9fafb}.wa-conversation-item.active{background:#5a189a0f;border-left-color:#5a189a}.wa-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#5a189a,#9d4edd);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;flex-shrink:0}.wa-convo-info{flex:1;min-width:0}.wa-convo-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px}.wa-convo-name{font-weight:600;font-size:14px;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wa-convo-time{font-size:11px;color:#9ca3af;flex-shrink:0;margin-left:8px}.wa-convo-preview{font-size:13px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;justify-content:space-between}.wa-convo-preview-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wa-unread-badge{min-width:20px;height:20px;border-radius:10px;background:#5a189a;color:#fff;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 6px;flex-shrink:0;margin-left:8px}.wa-convo-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#9ca3af;font-size:14px;padding:40px 20px;text-align:center}.wa-thread{flex:1;display:flex;flex-direction:column;background:#f0f2f5;min-width:0}.wa-thread-header{padding:12px 20px;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;gap:12px;flex-shrink:0}.wa-thread-header .wa-avatar{width:38px;height:38px;font-size:14px}.wa-thread-name{font-weight:600;font-size:15px;color:#1a1a1a}.wa-thread-phone{font-size:12px;color:#6b7280}.wa-messages-area{flex:1;overflow-y:auto;padding:16px 40px;display:flex;flex-direction:column;gap:4px}.wa-date-separator{text-align:center;margin:16px 0 8px}.wa-date-separator span{background:#e2e8f0;padding:4px 12px;border-radius:6px;font-size:12px;color:#64748b;font-weight:500}.wa-bubble{max-width:65%;padding:8px 12px;font-size:14px;line-height:1.5;word-wrap:break-word;white-space:pre-wrap}.wa-bubble.incoming{align-self:flex-start;background:#fff;border:1px solid #e5e7eb;border-radius:2px 8px 8px}.wa-bubble.outgoing{align-self:flex-end;background:#dcf8c6;border-radius:8px 2px 8px 8px}.wa-bubble-meta{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-top:4px}.wa-bubble-time{font-size:11px;color:#8696a0}.wa-bubble-status{font-size:12px}.wa-bubble-status.sent,.wa-bubble-status.delivered{color:#9ca3af}.wa-bubble-status.read{color:#53bdeb}.wa-bubble-status.failed{color:#dc2626}.wa-media-image{max-width:300px;border-radius:6px;cursor:pointer;display:block;width:100%;height:auto}.wa-bubble.incoming .wa-media-image,.wa-bubble.outgoing .wa-media-image{margin-bottom:4px}.wa-bubble.has-media{padding:4px;overflow:hidden}.wa-bubble.has-media .wa-bubble-text{padding:4px 8px 0}.wa-bubble.has-media .wa-bubble-meta{padding:0 8px 4px}.wa-media-video{max-width:300px;width:100%;border-radius:6px;display:block;margin-bottom:4px;background:#000}.wa-audio-player{display:flex;align-items:center;gap:10px;padding:8px 4px;min-width:240px}.wa-audio-play-btn{width:36px;height:36px;border-radius:50%;background:#5a189a;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:14px}.wa-audio-play-btn:hover{background:#7b2cbf}.wa-audio-waveform{flex:1;display:flex;flex-direction:column;gap:4px}.wa-audio-progress{height:4px;background:#d1d5db;border-radius:2px;overflow:hidden;cursor:pointer}.wa-audio-progress-bar{height:100%;background:#5a189a;border-radius:2px;transition:width .1s linear}.wa-audio-duration{font-size:11px;color:#8696a0}.wa-document-card{display:flex;align-items:center;gap:10px;padding:10px;background:#0000000a;border-radius:6px;cursor:pointer;min-width:200px;margin-bottom:4px;text-decoration:none;color:inherit}.wa-document-card:hover{background:#00000014}.wa-doc-icon{width:40px;height:40px;border-radius:6px;background:#5a189a;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;flex-shrink:0;text-transform:uppercase}.wa-doc-info{flex:1;min-width:0}.wa-doc-name{font-size:13px;font-weight:500;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wa-doc-type{font-size:11px;color:#8696a0;text-transform:uppercase}.wa-sticker-img{max-width:160px;max-height:160px}.wa-bubble.sticker-bubble{background:transparent!important;border:none!important;padding:4px!important;box-shadow:none}.wa-location-card{border-radius:6px;overflow:hidden;margin-bottom:4px;min-width:200px}.wa-location-map{width:100%;height:140px;background:#e5e7eb;display:flex;align-items:center;justify-content:center;font-size:32px;cursor:pointer;text-decoration:none;color:#374151}.wa-location-map:hover{background:#d1d5db}.wa-location-info{padding:8px 4px}.wa-location-name{font-size:13px;font-weight:500;color:#1a1a1a}.wa-location-coords{font-size:11px;color:#8696a0}.wa-contact-card{display:flex;align-items:center;gap:10px;padding:8px;background:#0000000a;border-radius:6px;min-width:180px;margin-bottom:4px}.wa-contact-card-avatar{width:36px;height:36px;border-radius:50%;background:#9d4edd;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0}.wa-contact-card-name{font-size:13px;font-weight:500;color:#1a1a1a}.wa-contact-card-phone{font-size:11px;color:#8696a0}.wa-lightbox{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:2000;cursor:pointer}.wa-lightbox img{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:4px}.wa-lightbox-close{position:absolute;top:20px;right:20px;background:#ffffff26;border:none;color:#fff;font-size:28px;width:44px;height:44px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center}.wa-lightbox-close:hover{background:#ffffff4d}.wa-window-warning{padding:8px 16px;background:#fef3c7;border:1px solid #FDE68A;font-size:12px;color:#92400e;text-align:center;flex-shrink:0}.wa-input-area{padding:12px 16px;background:#fff;border-top:1px solid #e5e7eb;display:flex;align-items:flex-end;gap:8px;flex-shrink:0}.wa-input-area textarea{flex:1;border:1px solid #e5e7eb;border-radius:20px;padding:10px 16px;font-size:14px;resize:none;max-height:120px;font-family:inherit;outline:none;line-height:1.4}.wa-input-area textarea:focus{border-color:#5a189a;box-shadow:0 0 0 2px #5a189a1a}.wa-attach-btn,.wa-voice-btn{width:40px;height:40px;border-radius:50%;background:transparent;color:#6b7280;border:1px solid #e5e7eb;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px;transition:all .2s}.wa-attach-btn:hover,.wa-voice-btn:hover{background:#f3f4f6;color:#5a189a;border-color:#5a189a}.wa-voice-btn.recording{background:#dc2626;color:#fff;border-color:#dc2626;animation:wa-pulse 1.5s ease-in-out infinite}@keyframes wa-pulse{0%,to{box-shadow:0 0 #dc262666}50%{box-shadow:0 0 0 8px #dc262600}}.wa-send-btn{width:40px;height:40px;border-radius:50%;background:#5a189a;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:18px;transition:background .2s}.wa-send-btn:hover{background:#7b2cbf}.wa-send-btn:disabled{background:#d1d5db;cursor:not-allowed}.wa-attach-menu-wrap{position:relative}.wa-attach-menu{position:absolute;bottom:50px;left:0;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 4px 20px #00000026;overflow:hidden;min-width:180px;z-index:100}.wa-attach-menu-item{display:flex;align-items:center;gap:10px;padding:12px 16px;cursor:pointer;font-size:14px;color:#374151;border:none;background:none;width:100%;text-align:left}.wa-attach-menu-item:hover{background:#f3f4f6}.wa-attach-menu-item .wa-attach-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.wa-attach-icon.photo{background:#dbeafe;color:#2563eb}.wa-attach-icon.video{background:#fce7f3;color:#db2777}.wa-attach-icon.doc{background:#f3e8ff;color:#7c3aed}.wa-attach-icon.location{background:#d1fae5;color:#059669}.wa-file-preview{padding:10px 16px;background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;align-items:center;gap:12px;flex-shrink:0}.wa-file-preview-thumb{width:48px;height:48px;border-radius:6px;object-fit:cover;background:#e5e7eb}.wa-file-preview-info{flex:1;min-width:0}.wa-file-preview-name{font-size:13px;font-weight:500;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wa-file-preview-size{font-size:11px;color:#8696a0}.wa-file-preview-cancel{width:28px;height:28px;border-radius:50%;background:none;border:1px solid #e5e7eb;color:#9ca3af;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.wa-file-preview-cancel:hover{background:#fee2e2;color:#dc2626;border-color:#dc2626}.wa-recording-bar{padding:10px 16px;background:#fee2e2;border-top:1px solid #FECACA;display:flex;align-items:center;gap:12px;flex-shrink:0;font-size:14px;color:#991b1b}.wa-recording-dot{width:10px;height:10px;border-radius:50%;background:#dc2626;animation:wa-blink 1s ease-in-out infinite}@keyframes wa-blink{0%,to{opacity:1}50%{opacity:.3}}.wa-recording-time{font-family:SF Mono,Fira Code,monospace;font-size:14px;font-weight:500}.wa-recording-cancel{margin-left:auto;background:none;border:none;color:#991b1b;cursor:pointer;font-size:13px;text-decoration:underline}.wa-caption-input{width:100%;padding:8px 12px;border:1px solid #e5e7eb;border-radius:8px;font-size:13px;margin-top:8px;outline:none;font-family:inherit;box-sizing:border-box}.wa-caption-input:focus{border-color:#5a189a}.wa-file-preview-send{width:36px;height:36px;border-radius:50%;background:#5a189a;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:16px}.wa-file-preview-send:hover{background:#7b2cbf}.wa-file-preview-send:disabled{background:#d1d5db;cursor:not-allowed}.wa-location-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1500;padding:20px}.wa-location-modal-content{background:#fff;border-radius:12px;padding:24px;width:100%;max-width:400px;box-shadow:0 20px 60px #0000004d}.wa-location-modal-content h3{font-size:16px;font-weight:600;margin:0 0 16px}.wa-location-modal-content label{display:block;font-size:13px;color:#6b7280;margin-bottom:4px;margin-top:12px}.wa-location-modal-content input{width:100%;padding:8px 12px;border:1px solid #e5e7eb;border-radius:6px;font-size:14px;box-sizing:border-box}.wa-location-modal-content input:focus{outline:none;border-color:#5a189a}.wa-location-modal-actions{display:flex;gap:10px;margin-top:20px;justify-content:flex-end}.wa-location-modal-actions button{padding:8px 20px;border-radius:6px;font-size:14px;cursor:pointer;border:none}.wa-location-modal-actions .wa-loc-cancel{background:#f3f4f6;color:#374151}.wa-location-modal-actions .wa-loc-send{background:#5a189a;color:#fff}.wa-location-modal-actions .wa-loc-send:hover{background:#7b2cbf}.wa-unsupported{padding:8px 12px;background:#0000000a;border-radius:6px;font-style:italic;font-size:13px;color:#8696a0}.wa-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#9ca3af;gap:12px;background:#f0f2f5}.wa-empty-state-icon{font-size:64px;opacity:.3}.wa-empty-state p{font-size:15px;margin:0}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:640px;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #f3f4f6}.modal-header h2{font-size:18px;font-weight:700;margin:0;color:#1a1a1a}.close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:#9ca3af;padding:4px}.close-btn:hover{color:#374151}.modal-body{padding:24px}.setup-step{display:flex;gap:14px;margin-bottom:20px}.setup-step-number{width:28px;height:28px;border-radius:50%;background:#5a189a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex-shrink:0;margin-top:2px}.setup-step-content h3{font-size:14px;font-weight:600;color:#1a1a1a;margin:0 0 4px}.setup-step-content p{font-size:13px;color:#6b7280;margin:0;line-height:1.5}.setup-step-content code{background:#f3f4f6;padding:2px 6px;border-radius:4px;font-size:12px;font-family:SF Mono,Fira Code,monospace;color:#5a189a}.config-status{background:#f9fafb;border-radius:8px;padding:16px;margin:20px 0}.config-status h3{font-size:14px;font-weight:600;margin:0 0 12px;color:#1a1a1a}.config-row{display:flex;justify-content:space-between;padding:6px 0;font-size:13px;border-bottom:1px solid #f3f4f6}.config-row:last-child{border-bottom:none}.config-label{color:#6b7280}.config-value{font-weight:500;color:#1a1a1a;font-family:monospace;font-size:12px}.config-value.set{color:#059669}.config-value.not-set{color:#dc2626}.btn-test{padding:8px 20px;background:#5a189a;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;margin-top:12px}.btn-test:hover{background:#7b2cbf}.btn-test:disabled{background:#d1d5db;cursor:not-allowed}.test-result{margin-top:12px;padding:12px;border-radius:8px;font-size:13px}.test-result.success{background:#d1fae5;color:#065f46}.test-result.error{background:#fee2e2;color:#991b1b}.wa-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;color:#6b7280}.wa-spinner{width:28px;height:28px;border:3px solid #e5e7eb;border-top-color:#5a189a;border-radius:50%;animation:wa-spin .8s linear infinite;margin-bottom:8px}@keyframes wa-spin{to{transform:rotate(360deg)}}@media (max-width: 768px){.wa-sidebar{width:100%}.wa-chat-container{flex-direction:column}.wa-messages-area{padding:12px 16px}.wa-bubble{max-width:85%}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #7B2CBF;--primary-dark: #5A189A;--primary-light: #9D4EDD;--accent: #FFC857;--background: #FFFFFF;--surface: #F8F9FA;--border: #E0E0E0;--text: #212529;--text-secondary: #6C757D;--error: #DC3545;--success: #28A745;--warning: #FFC107;--info: #17A2B8;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow: 0 1px 3px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 30px rgba(0, 0, 0, .1);--transition: all .2s ease}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--background);color:var(--text);line-height:1.6}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--surface)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.spinner{border:3px solid var(--border);border-top:3px solid var(--primary);border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.text-primary{color:var(--primary)}.text-success{color:var(--success)}.text-error{color:var(--error)}.text-warning{color:var(--warning)}.text-secondary{color:var(--text-secondary)}.bg-primary{background-color:var(--primary)}.bg-surface{background-color:var(--surface)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease}@media (max-width: 768px){body{font-size:14px}}
