:root{--sl-primary-50: #fff7ed;--sl-primary-100: #ffedd5;--sl-primary-200: #fed7aa;--sl-primary-300: #fdba74;--sl-primary-400: #fb923c;--sl-primary-500: #f97316;--sl-primary-600: #ea580c;--sl-primary-700: #c2410c;--sl-primary-800: #9a3412;--sl-primary-900: #7c2d12;--sl-gradient: linear-gradient(135deg, #ff6600 0%, #ff3300 100%);--sl-success: #34C759;--sl-warning: #FF9500;--sl-error: #FF3B30;--sl-info: #007AFF;--sl-gray-50: #fafafa;--sl-gray-100: #f5f5f7;--sl-gray-200: #e5e5ea;--sl-gray-300: #d1d1d6;--sl-gray-400: #aeaeb2;--sl-gray-500: #8e8e93;--sl-gray-600: #636366;--sl-gray-700: #48484a;--sl-gray-800: #2c2c2e;--sl-gray-900: #1d1d1f;--sl-radius-sm: 4px;--sl-radius-md: 6px;--sl-radius-lg: 8px;--sl-radius-xl: 12px;--sl-shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--sl-shadow-sm: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--sl-shadow-md: 0 4px 12px rgba(0, 0, 0, .08), 0 1px 4px rgba(0, 0, 0, .04);--sl-shadow-lg: 0 8px 32px rgba(0, 0, 0, .12), 0 2px 8px rgba(0, 0, 0, .06);--sl-shadow-xl: 0 16px 48px rgba(0, 0, 0, .16), 0 4px 16px rgba(0, 0, 0, .08);--sl-shadow-primary: 0 4px 16px rgba(249, 115, 22, .25);--sl-font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--sl-sidebar-width: 260px;--sl-sidebar-collapsed-width: 56px;--sl-header-height: 56px;--sl-transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--sl-transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--sl-transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--sl-glass-bg: rgba(255, 255, 255, .72);--sl-glass-border: rgba(255, 255, 255, .18)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes progressShrink{0%{width:100%}to{width:0%}}@keyframes checkmark{0%{stroke-dashoffset:24}to{stroke-dashoffset:0}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;font-family:var(--sl-font);font-size:14px;color:var(--sl-gray-900);background:var(--sl-gray-100);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--sl-primary-600);text-decoration:none}a:hover{color:var(--sl-primary-700)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border:none;border-radius:var(--sl-radius-md);font-size:14px;font-weight:500;font-family:var(--sl-font);cursor:pointer;transition:all var(--sl-transition-fast);white-space:nowrap}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:disabled:active{transform:none}.btn-primary{background:var(--sl-primary-500);color:#fff}.btn-primary:hover:not(:disabled){background:var(--sl-primary-600)}.btn-secondary{background:#fff;color:var(--sl-gray-700);border:1px solid var(--sl-gray-200)}.btn-secondary:hover:not(:disabled){background:var(--sl-gray-50);border-color:var(--sl-gray-300)}.btn-danger{background:var(--sl-error);color:#fff}.btn-danger:hover:not(:disabled){background:#e0342b}.btn-ghost{background:transparent;color:var(--sl-gray-600)}.btn-ghost:hover:not(:disabled){background:var(--sl-gray-50);color:var(--sl-gray-800)}.btn-sm{padding:5px 10px;font-size:13px}.btn-lg{padding:10px 20px;font-size:15px}.btn-icon{padding:6px;border-radius:var(--sl-radius-md)}.btn-icon svg{width:18px;height:18px}.card{background:#fff;border-radius:var(--sl-radius-lg);box-shadow:var(--sl-shadow-sm);padding:24px;border:1px solid var(--sl-gray-200);transition:box-shadow var(--sl-transition-normal)}.card:hover{box-shadow:var(--sl-shadow-md)}.card--flat:hover{box-shadow:var(--sl-shadow-sm)}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;font-weight:500;color:var(--sl-gray-700);margin-bottom:6px}.form-group.has-error .form-control{border-color:var(--sl-error)}.form-group.has-error .form-error{display:block}.form-error{display:none;font-size:12px;color:var(--sl-error);margin-top:4px}.form-control{width:100%;padding:8px 12px;border:1px solid var(--sl-gray-200);border-radius:var(--sl-radius-md);font-size:14px;font-family:var(--sl-font);color:var(--sl-gray-900);background:#fff;transition:border-color var(--sl-transition-fast),box-shadow var(--sl-transition-fast)}.form-control:focus{outline:none;border-color:var(--sl-primary-500);box-shadow:0 0 0 3px #f9731614}.form-control::placeholder{color:var(--sl-gray-400)}.form-control:disabled{background:var(--sl-gray-50);color:var(--sl-gray-500)}select.form-control{appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%238e8e93' d='M6 8L1 3h10z'/%3E%3C/svg%3E") no-repeat right 12px center;padding-right:32px}textarea.form-control{resize:vertical;min-height:80px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:10px 16px;text-align:left;border-bottom:1px solid var(--sl-gray-200)}.data-table td{font-size:13px}.data-table th{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--sl-gray-500);background:var(--sl-gray-50);-webkit-user-select:none;user-select:none}.data-table th.sortable{cursor:pointer}.data-table th.sortable:hover{color:var(--sl-gray-700)}.data-table th.sorted{color:var(--sl-primary-600)}.data-table tbody tr{transition:background var(--sl-transition-fast)}.data-table tbody tr:hover td{background:var(--sl-gray-50)}.data-table tbody tr:last-child td{border-bottom:none}.row-actions{display:flex;gap:4px;opacity:0;transition:opacity var(--sl-transition-fast)}tr:hover .row-actions{opacity:1}.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:500;white-space:nowrap}.badge-sm{padding:2px 6px;font-size:10px}.badge-prospect{background:#f0f4ff;color:#3b82f6}.badge-active{background:#f0fdf4;color:#15803d}.badge-inactive{background:var(--sl-gray-100);color:var(--sl-gray-500)}.badge-churned{background:#fef2f2;color:#dc2626}.badge-open{background:#f0f4ff;color:#3b82f6}.badge-in-progress{background:#fefce8;color:#ca8a04}.badge-completed{background:#f0fdf4;color:#16a34a}.badge-cancelled{background:var(--sl-gray-100);color:var(--sl-gray-500)}.badge-low{background:var(--sl-gray-100);color:var(--sl-gray-600)}.badge-medium{background:#fffbeb;color:#d97706}.badge-high{background:#fff7ed;color:#ea580c}.badge-urgent{background:#fef2f2;color:#dc2626}.badge-default{background:var(--sl-primary-50);color:var(--sl-primary-700)}.badge-pending{background:#f9731614;color:#ea580c}.badge-approved{background:#22c55e14;color:#15803d}.badge-paid{background:#3b82f614;color:#1d4ed8}.badge-comm-cancelled{background:#ef444414;color:#dc2626}.badge-stage-change{background:#8b5cf614;color:#7c3aed}.badge-recurring{background:#3b82f614;color:#2563eb}.badge-manual{background:#6b728014;color:#4b5563}.badge-invoice-based{background:#f59e0b14;color:#b45309}.badge-gray{background:var(--sl-gray-100);color:var(--sl-gray-600)}.badge-blue{background:#3b82f614;color:#2563eb}.badge-green{background:#22c55e14;color:#15803d}.badge-yellow{background:#f59e0b14;color:#d97706}.badge-red{background:#ef444414;color:#dc2626}.badge-purple{background:#8b5cf614;color:#7c3aed}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-header h1{font-size:24px;font-weight:600;color:var(--sl-gray-900);letter-spacing:-.3px}.filter-bar{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap;align-items:center}.empty-state{text-align:center;padding:48px 24px;color:var(--sl-gray-500)}.empty-state h3{font-size:16px;margin-bottom:8px;color:var(--sl-gray-700)}.empty-state p{font-size:14px}.text-error{color:var(--sl-error)!important}.text-muted{color:var(--sl-gray-500)}.text-success{color:var(--sl-success)!important}.pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:16px;font-size:14px;color:var(--sl-gray-600)}.modal-backdrop{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .15s ease}.modal-content{background:#fff;border-radius:var(--sl-radius-xl);box-shadow:var(--sl-shadow-xl);padding:24px;max-width:560px;width:90%;max-height:90vh;overflow-y:auto;animation:scaleIn .2s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-header h2{font-size:18px;font-weight:600}.modal-footer{display:flex;justify-content:flex-end;gap:8px;margin-top:24px}.overdue td{background:#fff8f8!important}.back-link{display:inline-flex;align-items:center;gap:4px;font-size:13px;color:var(--sl-gray-500);margin-bottom:16px;transition:color var(--sl-transition-fast)}.back-link:hover{color:var(--sl-primary-600)}.detail-grid{max-width:720px}.detail-row{display:flex;padding:12px 0;border-bottom:1px solid var(--sl-gray-100)}.detail-row:last-child{border-bottom:none}.detail-label{width:180px;font-size:13px;font-weight:500;color:var(--sl-gray-500);flex-shrink:0}.detail-value{font-size:14px;color:var(--sl-gray-900)}.skeleton{background:linear-gradient(90deg,var(--sl-gray-100) 25%,var(--sl-gray-200) 50%,var(--sl-gray-100) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--sl-radius-md)}.skeleton--text{height:14px;width:80%;margin-bottom:8px;border-radius:4px}.skeleton--title{height:24px;width:60%;margin-bottom:12px;border-radius:4px}.skeleton--avatar{width:40px;height:40px;border-radius:50%}.skeleton--card{height:120px;border-radius:var(--sl-radius-lg)}.skeleton--table-row{height:48px;margin-bottom:1px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--sl-gray-300);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--sl-gray-400)}.animate-fade-in{animation:fadeIn var(--sl-transition-normal) ease}.animate-slide-up{animation:slideUp var(--sl-transition-normal) ease}.animate-scale-in{animation:scaleIn var(--sl-transition-normal) ease}@media(max-width:1024px){:root{--sl-sidebar-width: var(--sl-sidebar-collapsed-width)}}@media(max-width:768px){.form-row{grid-template-columns:1fr}}
