@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap";:root{--teal: #5BC0BE;--teal-dark: #3A9896;--teal-light: #8ED4D2;--coral: #E85A4F;--coral-dark: #D64940;--coral-light: #F08B83;--gray-50: #F9FAFB;--gray-100: #F3F4F6;--gray-200: #E5E7EB;--gray-300: #D1D5DB;--gray-400: #9CA3AF;--gray-500: #6B7280;--gray-600: #4B5563;--gray-700: #374151;--gray-800: #1F2937;--gray-900: #111827;--success: #10B981;--warning: #F59E0B;--error: #EF4444;--info: #3B82F6;--sidebar-width: 240px;--header-height: 64px;--font-sans: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "SF Mono", "Fira Code", monospace;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--radius-sm: 6px;--radius: 8px;--radius-lg: 12px;--radius-xl: 16px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-sans);font-size:14px;line-height:1.5;color:var(--gray-800);background:var(--gray-50);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}button{font-family:inherit;font-size:inherit;cursor:pointer;border:none;background:none}input,textarea,select{font-family:inherit;font-size:inherit}.page-header{margin-bottom:24px}.page-header h1{font-size:24px;font-weight:700;color:var(--gray-900);margin-bottom:4px}.page-header p{color:var(--gray-500);font-size:14px}.page-header-actions{display:flex;align-items:center;gap:12px;margin-top:16px}.card{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--gray-200);box-shadow:var(--shadow-sm)}.card-header{padding:16px 20px;border-bottom:1px solid var(--gray-200);display:flex;align-items:center;justify-content:space-between}.card-header h2{font-size:16px;font-weight:600}.card-body{padding:20px}.card-footer{padding:16px 20px;border-top:1px solid var(--gray-200);background:var(--gray-50);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:#fff;border-radius:var(--radius-lg);padding:20px;border:1px solid var(--gray-200)}.stat-card-icon{width:40px;height:40px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;margin-bottom:12px}.stat-card-icon.teal{background:#5bc0be26;color:var(--teal)}.stat-card-icon.coral{background:#e85a4f26;color:var(--coral)}.stat-card-icon.purple{background:#6366f126;color:#6366f1}.stat-card-icon.amber{background:#f59e0b26;color:var(--warning)}.stat-card-value{font-size:28px;font-weight:700;color:var(--gray-900);margin-bottom:4px}.stat-card-label{font-size:13px;color:var(--gray-500)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border-radius:var(--radius);font-weight:500;font-size:14px;transition:all .15s ease;white-space:nowrap}.btn-primary{background:var(--teal);color:#fff}.btn-primary:hover{background:var(--teal-dark)}.btn-secondary{background:#fff;color:var(--gray-700);border:1px solid var(--gray-300)}.btn-secondary:hover{background:var(--gray-50);border-color:var(--gray-400)}.btn-danger{background:var(--error);color:#fff}.btn-danger:hover{background:#dc2626}.btn-ghost{color:var(--gray-600)}.btn-ghost:hover{background:var(--gray-100);color:var(--gray-900)}.btn-sm{padding:6px 12px;font-size:13px}.btn-lg{padding:12px 20px;font-size:15px}.form-group{margin-bottom:20px}.form-label{display:block;font-weight:500;margin-bottom:6px;color:var(--gray-700)}.form-label-optional{color:var(--gray-400);font-weight:400;font-size:12px;margin-left:4px}.form-input{width:100%;padding:10px 12px;border:1px solid var(--gray-300);border-radius:var(--radius);font-size:14px;color:var(--gray-900);background:#fff;transition:all .15s ease}.form-input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px #5bc0be26}.form-input::-moz-placeholder{color:var(--gray-400)}.form-input::placeholder{color:var(--gray-400)}.form-input-error{border-color:var(--error)}.form-input-error:focus{box-shadow:0 0 0 3px #ef444426}.form-hint{font-size:12px;color:var(--gray-500);margin-top:4px}.form-error{font-size:12px;color:var(--error);margin-top:4px}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:40px}textarea.form-input{min-height:100px;resize:vertical}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-checkbox{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.form-checkbox input{width:18px;height:18px;margin-top:2px;accent-color:var(--teal)}.form-checkbox-label{font-size:14px;color:var(--gray-700)}.table-container{overflow-x:auto}.table{width:100%;border-collapse:collapse}.table th{text-align:left;padding:12px 16px;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--gray-500);background:var(--gray-50);border-bottom:1px solid var(--gray-200)}.table td{padding:14px 16px;border-bottom:1px solid var(--gray-100);vertical-align:middle}.table tr:hover td{background:var(--gray-50)}.table-actions{display:flex;align-items:center;gap:8px}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:100px;font-size:12px;font-weight:500}.badge-success{background:#10b98126;color:var(--success)}.badge-warning{background:#f59e0b26;color:var(--warning)}.badge-error{background:#ef444426;color:var(--error)}.badge-info{background:#3b82f626;color:var(--info)}.badge-gray{background:var(--gray-100);color:var(--gray-600)}.badge-teal{background:#5bc0be26;color:var(--teal-dark)}.badge-purple{background:#8b5cf626;color:#7c3aed}.badge-coral{background:#e85a4f26;color:var(--coral)}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--gray-200);margin-bottom:24px}.tab{padding:12px 16px;font-weight:500;color:var(--gray-500);border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s ease}.tab:hover{color:var(--gray-700)}.tab.active{color:var(--teal);border-bottom-color:var(--teal)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.modal{background:#fff;border-radius:var(--radius-xl);max-width:600px;width:100%;max-height:calc(100vh - 48px);overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.modal-lg{max-width:800px}.modal-header{padding:20px 24px;border-bottom:1px solid var(--gray-200);display:flex;align-items:center;justify-content:space-between}.modal-header h2{font-size:18px;font-weight:600}.modal-close{width:32px;height:32px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;color:var(--gray-500)}.modal-close:hover{background:var(--gray-100);color:var(--gray-700)}.modal-body{padding:24px;overflow-y:auto;flex:1}.modal-footer{padding:16px 24px;border-top:1px solid var(--gray-200);display:flex;justify-content:flex-end;gap:12px;background:var(--gray-50)}.toggle{position:relative;width:44px;height:24px;background:var(--gray-300);border-radius:12px;cursor:pointer;transition:all .2s ease}.toggle.active{background:var(--teal)}.toggle:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:all .2s ease;box-shadow:var(--shadow-sm)}.toggle.active:after{left:22px}.empty-state{text-align:center;padding:48px 24px}.empty-state-icon{width:64px;height:64px;background:var(--gray-100);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;color:var(--gray-400)}.empty-state h3{font-size:16px;font-weight:600;margin-bottom:8px}.empty-state p{color:var(--gray-500);margin-bottom:16px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}@media (max-width: 1024px){.form-row{grid-template-columns:1fr}}@media (max-width: 768px){:root{--sidebar-width: 0}.stats-grid{grid-template-columns:repeat(2,1fr)}}
