@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap";:root{--bg-body: #f8fafc;--bg-sidebar: #0f172a;--bg-card: #ffffff;--text-primary: #1e293b;--text-secondary: #64748b;--text-muted: #94a3b8;--primary: #4f46e5;--primary-hover: #4338ca;--primary-light: #e0e7ff;--success: #10b981;--success-bg: #d1fae5;--danger: #ef4444;--danger-bg: #fee2e2;--warning: #f59e0b;--warning-bg: #fef3c7;--border: #e2e8f0;--sidebar-width: 250px;--header-height: 64px}.dark-theme{--bg-body: #0f172a;--bg-sidebar: #1e293b;--bg-card: #1e293b;--text-primary: #f8fafc;--text-secondary: #cbd5e1;--border: #334155}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Plus Jakarta Sans,system-ui,-apple-system,sans-serif;background-color:var(--bg-body);color:var(--text-primary);line-height:1.5;font-size:.95rem;overflow-x:hidden}#root{height:100vh;display:flex;overflow-x:hidden;width:100%}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:8px;font-weight:500;font-size:.875rem;transition:all .2s;cursor:pointer;border:1px solid transparent}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{background-color:var(--primary-hover)}.btn-secondary{background-color:#fff;border-color:var(--border);color:var(--text-primary)}.btn-secondary:hover{background-color:#f1f5f9}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:24px;box-shadow:0 1px 3px #0000000d;max-width:100%}.responsive-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.input{width:100%;min-width:0;padding:10px 12px;border-radius:8px;border:1px solid var(--border);font-size:.95rem;transition:border-color .2s;-webkit-appearance:none;appearance:none;min-height:44px;box-sizing:border-box}.input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-light)}.data-table{width:100%;border-collapse:collapse;font-size:.875rem}.data-table th{text-align:left;padding:12px 16px;color:var(--text-secondary);border-bottom:1px solid var(--border);font-weight:600;background-color:#f8fafc}.data-table td{padding:12px 16px;border-bottom:1px solid var(--border);vertical-align:middle}.data-table tr:hover td{background-color:#f8fafc}.badge{display:inline-flex;padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:600;line-height:1}.badge-success{background:var(--success-bg);color:var(--success)}.badge-pending{background:var(--warning-bg);color:var(--warning)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);color:#cbd5e1;display:flex;flex-direction:column;position:fixed;height:100%;top:0;left:0;z-index:100;transition:transform .3s ease}.main-content{margin-left:var(--sidebar-width);flex:1;display:flex;flex-direction:column;min-height:100vh;transition:margin-left .3s ease}.top-header{height:var(--header-height);border-bottom:1px solid var(--border);background:var(--bg-card);display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:40}.page-content{padding:32px;flex:1;background-color:var(--bg-body);max-width:100%;overflow-x:hidden}.table-container{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:1rem}.sidebar-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:90;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.menu-toggle{display:none;background:none;border:none;color:var(--text-primary);cursor:pointer;padding:8px;margin-right:12px}@media(max-width:1024px){:root{--sidebar-width: 280px}.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main-content{margin-left:0}.sidebar-overlay.show{display:block}.main-content{margin-left:0;width:100%;max-width:100vw}.top-header{padding:0 16px}.page-content{padding:16px}}@media(max-width:640px){.responsive-grid{grid-template-columns:1fr}.card{padding:16px}.header-actions{gap:8px!important}}.flex-between{display:flex;justify-content:space-between;align-items:center}.text-sm{font-size:.875rem}.text-muted{color:var(--text-muted)}.mb-4{margin-bottom:1rem}.mt-4{margin-top:1rem}.gap-4{gap:1rem}
