*,:after,:before{box-sizing:border-box;margin:0;padding:0}body{background:#f8fafc;color:#1e293b;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px;line-height:1.6}a{color:inherit;text-decoration:none}button{cursor:pointer}button,input,select,textarea{font-family:inherit}::-webkit-scrollbar{height:6px;width:6px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.app-layout,.sidebar{display:flex;min-height:100vh}.sidebar{background:#1a1a2e;bottom:0;color:#e2e8f0;flex-direction:column;left:0;position:fixed;top:0;width:230px;z-index:100}.sidebar-brand{align-items:center;border-bottom:1px solid #ffffff14;display:flex;gap:10px;padding:26px 22px 22px}.brand-icon{color:#f97316;font-size:22px}.brand-name{color:#fff;font-size:17px;font-weight:700;letter-spacing:.3px}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:2px;overflow-y:auto;padding:14px 0 20px}.nav-section-label{color:#94a3b873;font-size:10px;font-weight:700;letter-spacing:1.2px;padding:16px 22px 5px;text-transform:uppercase}.nav-item{align-items:center;border-left:none;border-radius:8px;color:#94a3b8;display:flex;font-size:13.5px;gap:11px;margin:0 10px;padding:10px 22px;text-decoration:none;transition:background .15s,color .15s}.nav-item:hover{background:#ffffff0f;color:#e2e8f0}.nav-item.active{background:#f973161a;color:#f97316;font-weight:600}.sidebar-nav a{border-radius:8px;color:#94a3b8;font-size:13.5px;margin:0 10px;padding:10px 22px;transition:background .15s,color .15s}.sidebar-nav a:hover{background:#ffffff0f;color:#e2e8f0}.sidebar-nav a.active{background:#f973161a;color:#f97316;font-weight:600}.main-content{background:#f5f5f7;flex:1 1;margin-left:230px;min-height:100vh;padding:0}.page-header{align-items:center;background:#fff;border-bottom:1px solid #e8e8ec;display:flex;justify-content:space-between;padding:28px 36px 22px}.page-header h1{color:#1a1a2e;font-size:22px;font-weight:700}.page-body{padding:28px 36px}.data-table{background:#fff;border:1px solid #eee;border-collapse:collapse;border-radius:12px;box-shadow:0 1px 4px #0000000d;font-size:13.5px;overflow:hidden;width:100%}.data-table thead th{background:#fafafa;border-bottom:1px solid #eee;color:#888;font-size:11px;font-weight:700;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase}.data-table tbody tr{border-bottom:1px solid #f3f3f5;transition:background .1s}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody tr:hover{background:#fafafa}.data-table tbody td{color:#333;padding:12px 16px}.btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:13.5px;font-weight:500;gap:6px;padding:9px 18px;transition:background .15s,opacity .15s,transform .1s}.btn:active{transform:scale(.98)}.btn-primary{background:#f97316;color:#fff}.btn-primary:hover{background:#ea6c0b}.btn-secondary{background:#f0f0f3;color:#444}.btn-secondary:hover{background:#e4e4e8}.btn-danger{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.btn-danger:hover{background:#fee2e2}.btn-sm{font-size:12.5px;padding:6px 12px}.form-group{margin-bottom:16px}.form-group label{color:#444;display:block;font-size:12.5px;font-weight:600;margin-bottom:6px}.form-control{background:#fff;border:1px solid #ddd;border-radius:8px;color:#1a1a2e;font-size:13.5px;outline:none;padding:9px 13px;transition:border-color .15s,box-shadow .15s;width:100%}.form-control:focus{border-color:#f97316;box-shadow:0 0 0 3px #f973161a}.modal-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.modal{background:#fff;border-radius:14px;box-shadow:0 20px 60px #0003;max-height:90vh;max-width:520px;overflow-y:auto;padding:28px;width:100%}.modal h2{color:#1a1a2e;font-size:16px;font-weight:700;margin-bottom:20px}.modal-footer{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.card{background:#fff;border:1px solid #eee;border-radius:14px;box-shadow:0 1px 4px #0000000d;margin-bottom:20px;padding:22px 26px}.card h2{color:#1a1a2e;font-size:15px;font-weight:700;margin-bottom:16px}.badge{border-radius:9999px;display:inline-block;font-size:11px;font-weight:600;padding:3px 10px}.badge-green{background:#dcfce7;color:#16a34a}.badge-red{background:#fee2e2;color:#b91c1c}.badge-blue{background:#dbeafe;color:#1d4ed8}.badge-gray{background:#f1f5f9;color:#64748b}.badge-yellow{background:#fef9c3;color:#a16207}.alert{border-radius:10px;font-size:13.5px;margin-bottom:16px;padding:12px 16px}.alert-success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.alert-error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.alert-info{background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8}.metric-card{background:#fff;border:1px solid #eee;border-radius:14px;box-shadow:0 1px 4px #0000000d;display:flex;flex-direction:column;justify-content:space-between;min-height:100px;padding:22px 24px;position:relative}.metric-card-label{color:#888;font-size:12px;font-weight:600;letter-spacing:.3px}.metric-card-value{color:#1a1a2e;font-size:32px;font-weight:800;line-height:1;margin-top:8px}.metric-card-unit{color:#888;font-size:16px;font-weight:600;margin-left:2px}.metric-card-icon{align-items:center;border-radius:12px;display:flex;font-size:20px;height:44px;justify-content:center;position:absolute;right:20px;top:20px;width:44px}.sub-tabs{border-bottom:2px solid #eee;display:flex;gap:0}.sub-tab-btn{background:#0000;border:none;border-bottom:2px solid #0000;color:#888;cursor:pointer;font-size:13px;font-weight:500;margin-bottom:-2px;padding:9px 20px;transition:color .15s,border-color .15s}.sub-tab-btn:hover{color:#1a1a2e}.sub-tab-btn.active{border-bottom-color:#f97316;color:#f97316;font-weight:600}.slide-overlay{background:#00000059;inset:0;position:fixed;z-index:900}.slide-panel{animation:slideIn .2s ease-out;background:#fff;bottom:0;box-shadow:-6px 0 30px #0000002e;display:flex;flex-direction:column;position:fixed;right:0;top:0;width:440px;z-index:1000}@keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}.slide-panel-header{align-items:center;border-bottom:1px solid #eee;display:flex;flex-shrink:0;justify-content:space-between;padding:20px 24px}
/*# sourceMappingURL=main.62e24f66.css.map*/