@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap";:root{--font-sans:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, sans-serif;--color-sidebar-bg:#0f172a;--color-sidebar-hover:#1e293b;--color-sidebar-active:#2563eb;--color-sidebar-border:#1e293b;--color-sidebar-text:#94a3b8;--color-sidebar-text-active:#fff;--color-bg:#f8fafc;--color-header-bg:#fff;--color-card-bg:#fff;--color-accent-blue:#1d4ed8;--color-accent-orange:#ea580c;--color-border:#e2e8f0;--color-border-hover:#cbd5e1;--color-text-primary:#0f172a;--color-text-secondary:#475569;--color-text-muted:#64748b;--badge-approved-bg:#dcfce7;--badge-approved-text:#15803d;--badge-pending-bg:#fef9c3;--badge-pending-text:#854d0e;--badge-rejected-bg:#fef2f2;--badge-rejected-text:#991b1b;--radius-md:8px;--radius-sm:6px;--transition:all .2s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--color-bg);color:var(--color-text-primary);letter-spacing:-.01em;-webkit-font-smoothing:antialiased;font-size:13.5px;line-height:1.5}.app-container{height:100vh;display:flex;overflow:hidden}.sidebar{background-color:var(--color-sidebar-bg);border-right:1px solid var(--color-sidebar-border);color:#fff;flex-direction:column;flex-shrink:0;width:260px;display:flex}.sidebar-header{border-bottom:1px solid var(--color-sidebar-border);padding:24px 20px}.sidebar-title{letter-spacing:.5px;color:#fff;text-transform:uppercase;font-size:16px;font-weight:800}.sidebar-subtitle{color:#38bdf8;letter-spacing:1px;margin-top:2px;font-size:10px;font-weight:600;display:block}.sidebar-menu{flex:1;padding:16px 0;overflow-y:auto}.menu-label{text-transform:uppercase;color:#475569;letter-spacing:.8px;padding:14px 20px 6px;font-size:10px;font-weight:700}.menu-item{color:var(--color-sidebar-text);cursor:pointer;transition:var(--transition);align-items:center;gap:12px;padding:10px 20px;font-size:13.5px;font-weight:600;text-decoration:none;display:flex}.menu-item:hover{background-color:var(--color-sidebar-hover);color:var(--color-sidebar-text-active)}.menu-item.active{background-color:var(--color-sidebar-hover);color:var(--color-sidebar-text-active);border-left:4px solid var(--color-sidebar-active)}.submenu-container{margin:4px 0;padding-left:24px;position:relative}.submenu-container:before{content:"";background-color:var(--color-sidebar-border);width:1px;position:absolute;top:0;bottom:0;left:20px}.submenu-item{color:var(--color-sidebar-text);cursor:pointer;align-items:center;gap:8px;padding:6px 12px;font-size:12px;font-weight:500;text-decoration:none;display:flex;position:relative}.submenu-item:before{content:"";background-color:var(--color-sidebar-border);width:4px;height:1px;position:absolute;top:50%;left:-4px}.submenu-item:hover,.submenu-item.active{color:var(--color-sidebar-text-active)}.submenu-item.active{color:#38bdf8;font-weight:700}.sidebar-footer{border-top:1px solid var(--color-sidebar-border);background-color:#0003;align-items:center;gap:12px;padding:16px 20px;display:flex}.avatar-square{background-color:var(--color-sidebar-active);color:#fff;border-radius:var(--radius-sm);justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:flex}.user-details{font-size:12px}.user-name{font-weight:700}.main-content{flex-direction:column;flex:1;min-width:0;height:100vh;display:flex;overflow:hidden}.header{background-color:var(--color-header-bg);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;height:56px;padding:0 24px;display:flex}.header-title-section{align-items:center;gap:12px;display:flex}.institute-badge{background-color:var(--color-accent-blue);color:#fff;border-radius:var(--radius-sm);letter-spacing:.5px;padding:4px 8px;font-size:10px;font-weight:700}.header-user-badge{color:var(--color-text-secondary);align-items:center;gap:8px;font-size:12px;font-weight:500;display:flex}.workspace{flex:1;padding:24px;overflow-y:auto}.view-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.view-title{color:var(--color-text-primary);letter-spacing:-.02em;font-size:20px;font-weight:800}.view-subtitle{color:var(--color-text-muted);font-size:12.5px}.erp-card{background-color:var(--color-card-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:20px;overflow:hidden;box-shadow:0 1px 3px #00000005}.erp-card-header{border-bottom:1px solid var(--color-border);background-color:#f8fafc;justify-content:space-between;align-items:center;padding:12px 18px;display:flex}.erp-card-title{text-transform:uppercase;color:var(--color-text-primary);letter-spacing:.5px;font-size:12px;font-weight:800}.erp-card-body{padding:18px}.table-container{overflow-x:auto}.erp-table{border-collapse:collapse;text-align:left;width:100%;font-size:13px}.erp-table th{border:1px solid var(--color-border);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;background-color:#f8fafc;padding:10px 14px;font-size:11px;font-weight:700}.erp-table td{border:1px solid var(--color-border);color:var(--color-text-primary);padding:10px 14px}.erp-table tr:nth-child(2n) td{background-color:#fdfdfe}.erp-table tr:hover td{background-color:#f1f5f9}.erp-badge{text-transform:uppercase;border-radius:var(--radius-sm);border:1px solid #0000;padding:3px 8px;font-size:10.5px;font-weight:700;display:inline-block}.badge-approved{background-color:var(--badge-approved-bg);color:var(--badge-approved-text);border-color:#bbf7d0}.badge-pending{background-color:var(--badge-pending-bg);color:var(--badge-pending-text);border-color:#fef08a}.badge-rejected{background-color:var(--badge-rejected-bg);color:var(--badge-rejected-text);border-color:#fecaca}.form-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}@media (width<=1024px){.form-grid{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){.form-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.form-grid{grid-template-columns:1fr}}.form-group{flex-direction:column;gap:6px;display:flex}.form-group.col-span-2{grid-column:span 2}.form-group label{color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.3px;font-size:11px;font-weight:700}.form-group input,.form-group select,input[type=text],select{border-radius:var(--radius-sm);height:38px;font-family:var(--font-sans);color:var(--color-text-primary);appearance:none;background-color:#f8fafc;border:1px solid #cbd5e1;padding:0 14px;font-size:13.5px;transition:all .15s cubic-bezier(.4,0,.2,1);box-shadow:inset 0 1px 2px #0f172a05}.form-group select,select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='2.5' stroke='%23475569'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19.5 8.25l-7.5 7.5-7.5-7.5'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:12px;padding-right:36px}.form-group input:focus,.form-group select:focus,input[type=text]:focus,select:focus{border-color:var(--color-sidebar-active);background-color:#fff;outline:none;box-shadow:0 0 0 3px #2563eb26,inset 0 1px 2px #00000003}.form-group input::placeholder,input[type=text]::placeholder{color:#94a3b8}.erp-btn{height:36px;font-family:var(--font-sans);border-radius:var(--radius-sm);cursor:pointer;text-transform:uppercase;letter-spacing:.5px;transition:var(--transition);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:12px;font-weight:700;display:inline-flex}.btn-primary{background-color:var(--color-accent-blue);color:#fff}.btn-primary:hover{background-color:#1d4ed8}.btn-finalize{background-color:var(--color-accent-orange);color:#fff}.btn-finalize:hover{background-color:#c2410c}.btn-outline{border-color:var(--color-border);color:var(--color-text-secondary);background-color:#fff}.btn-outline:hover{border-color:var(--color-border-hover);background-color:#f8fafc}.tabs-row{border:1px solid var(--color-border);border-radius:var(--radius-md) var(--radius-md) 0 0;background-color:#f8fafc;border-bottom:none;display:flex;overflow-x:auto}.erp-tab{font-family:var(--font-sans);color:var(--color-text-secondary);text-transform:uppercase;cursor:pointer;border:none;border-right:1px solid var(--color-border);transition:var(--transition);background:0 0;border-bottom:2px solid #0000;padding:12px 20px;font-size:11.5px;font-weight:700}.erp-tab:hover{background-color:#e2e8f0}.erp-tab.active{color:var(--color-accent-blue);border-bottom-color:var(--color-accent-blue);background-color:#fff}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background-color:#0f172a66;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content{border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:#fff;width:100%;max-width:410px;padding:24px}.id-card-layout{border:2px solid var(--color-accent-blue);border-radius:var(--radius-sm);background-color:#fff;padding:18px;position:relative}.id-card-header{background-color:var(--color-accent-blue);color:#fff;text-align:center;border-radius:var(--radius-sm);margin-bottom:16px;padding:12px}.id-card-header h3{text-transform:uppercase;font-size:14px;font-weight:800}.id-card-header span{opacity:.9;font-size:9.5px}.id-card-body{gap:20px;display:flex}.id-card-photo-box{border:1px solid var(--color-border);background-color:var(--color-bg);width:85px;height:105px;color:var(--color-accent-blue);border-radius:var(--radius-sm);justify-content:center;align-items:center;font-size:24px;font-weight:800;display:flex}.id-card-details{flex:1;font-size:12px}.id-card-details h4{color:var(--color-accent-blue);margin-bottom:10px;font-size:14px;font-weight:800}.id-card-detail-row{border-bottom:1px dotted var(--color-border);margin-bottom:5px;padding-bottom:3px}.id-card-detail-row strong{color:var(--color-text-secondary)}.id-card-footer{text-align:center;color:var(--color-text-muted);border-top:1px solid var(--color-border);margin-top:14px;padding-top:8px;font-size:9.5px;font-weight:600}.toast-container{z-index:1100;flex-direction:column;gap:10px;display:flex;position:fixed;top:20px;right:20px}.toast{background-color:var(--color-sidebar-bg);color:#fff;border-radius:var(--radius-sm);border-left:4px solid var(--color-accent-blue);align-items:center;gap:10px;padding:12px 18px;font-size:12.5px;font-weight:600;display:flex;box-shadow:0 4px 12px #0000001a}.toast-success{border-left-color:#10b981}.toast-error{border-left-color:#ef4444}.file-upload-cell{align-items:center;gap:10px;display:flex}.file-upload-input{font-size:11.5px}.metrics-row{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px;display:grid}@media (width<=1024px){.metrics-row{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.metrics-row{grid-template-columns:1fr}}.metric-box{border:1px solid var(--color-border);border-radius:var(--radius-md);transition:var(--transition);background-color:#fff;justify-content:space-between;align-items:center;padding:16px;display:flex;box-shadow:0 1px 3px #00000003}.metric-box:hover{border-color:var(--color-border-hover);transform:translateY(-2px);box-shadow:0 4px 12px #0f172a0d}.quick-action-btn{cursor:pointer;background-color:#fff;border:1px solid #e2e8f0cc;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:22px 16px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 4px 12px #0f172a05}.quick-action-btn:hover{border-color:var(--color-sidebar-active);background-color:#fff;transform:translateY(-4px);box-shadow:0 12px 24px -6px #0f172a14}.quick-action-btn .btn-label{color:var(--color-text-secondary);transition:var(--transition);font-size:12.5px;font-weight:700}.quick-action-btn:hover .btn-label{color:var(--color-sidebar-active)}.icon-blue{color:#2563eb}.icon-green{color:#16a34a}.icon-orange{color:#ea580c}.icon-purple{color:#7c3aed}.icon-teal{color:#0d9488}::-webkit-scrollbar{width:0!important;height:0!important;display:none!important}*{scrollbar-width:none!important;-ms-overflow-style:none!important}.api-playground-container{flex-direction:column;height:calc(100vh - 110px);display:flex}.api-workspace-grid{flex:1;grid-template-columns:280px 1fr;gap:20px;min-height:0;display:grid}.api-sidebar-panel{flex-direction:column;height:100%;display:flex;overflow:hidden}.api-sidebar-search{border-bottom:1px solid var(--color-border);padding:12px;position:relative}.search-icon-api{color:var(--color-text-muted);position:absolute;top:50%;left:20px;transform:translateY(-50%)}.api-search-input{border:1px solid var(--color-border);border-radius:var(--radius-sm);width:100%;transition:var(--transition);outline:none;padding:8px 12px 8px 32px;font-size:12.5px}.api-search-input:focus{border-color:var(--color-sidebar-active);box-shadow:0 0 0 2px #2563eb26}.api-endpoints-tree{flex:1;padding:8px;overflow-y:auto}.api-tree-folder{margin-bottom:6px}.api-tree-folder-header{color:var(--color-text-primary);cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition);align-items:center;gap:6px;padding:8px 10px;font-size:12px;font-weight:700;display:flex}.api-tree-folder-header:hover{background-color:var(--color-bg)}.folder-title{flex:1}.folder-count{color:var(--color-text-muted);background-color:var(--color-bg);border-radius:10px;padding:1px 6px;font-size:10.5px;font-weight:600}.api-tree-items{border-left:1px dashed var(--color-border);margin-top:2px;margin-left:6px;padding-left:14px}.api-tree-item{color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:var(--transition);align-items:center;gap:8px;padding:6px 10px;font-size:12px;display:flex}.api-tree-item:hover{background-color:var(--color-bg);color:var(--color-text-primary)}.api-tree-item.selected{color:var(--color-sidebar-active);background-color:#eff6ff;font-weight:600}.api-method-tag{flex-shrink:0;width:46px;font-family:monospace;font-size:9.5px;font-weight:800;display:inline-block}.api-name-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.api-console-panel{flex-direction:column;gap:16px;height:100%;display:flex;overflow-y:auto}.url-console-bar{background-color:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);align-items:center;gap:8px;padding:6px;display:flex}.url-method-badge{color:#fff;border-radius:var(--radius-sm);padding:6px 12px;font-family:monospace;font-size:11px;font-weight:800}.url-readonly-input{color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;padding:0 4px;font-family:monospace;font-size:12.5px}.send-api-btn{height:32px!important}.api-tab-headers{border-bottom:1px solid var(--color-border);border-top-left-radius:var(--radius-md);border-top-right-radius:var(--radius-md);background-color:#f8fafc;padding:0 8px;display:flex}.api-tab-btn{color:var(--color-text-secondary);cursor:pointer;transition:var(--transition);background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 16px;font-size:12px;font-weight:600}.api-tab-btn:hover{color:var(--color-text-primary)}.api-tab-btn.active{border-bottom-color:var(--color-sidebar-active);color:var(--color-sidebar-active)}.api-no-body{height:100%;color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.api-body-textarea{border:1px solid var(--color-border);border-radius:var(--radius-sm);resize:none;color:#1c1917;background-color:#fafaf9;outline:none;width:100%;padding:10px;font-family:monospace}.api-body-textarea:focus{border-color:var(--color-sidebar-active)}.header-table th,.header-table td{padding:8px 12px!important}.response-box{border-bottom-left-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md);position:relative}.api-response-loading{flex-direction:column;justify-content:center;align-items:center;gap:12px;height:100%;display:flex}.api-spinner{border:3px solid #334155;border-top-color:#38bdf8;border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.api-response-empty,.api-response-placeholder{color:#64748b;flex-direction:column;justify-content:center;align-items:center;height:100%;font-size:12.5px;display:flex}.api-no-selection{text-align:center;height:100%;color:var(--color-text-muted);flex-direction:column;justify-content:center;align-items:center;padding:40px;display:flex}
