body{background-color:#f8fafc;color:#334155;font-family:'Inter', system-ui, -apple-system, sans-serif;font-size:0.95rem}.admin-sidebar{background-color:#1e293b;min-height:100vh;color:white;width:260px;position:fixed;left:0;top:0}.admin-sidebar .nav-link{color:#94a3b8;padding:0.8rem 1.5rem;display:flex;align-items:center;border-radius:0;transition:all 0.2s}.admin-sidebar .nav-link i{margin-right:12px;font-size:1.1rem}.admin-sidebar .nav-link:hover{background-color:#334155;color:white}.admin-sidebar .nav-link.active{background-color:#2563eb;color:white}.admin-sidebar .sidebar-header{padding:1.5rem;font-weight:700;font-size:1.2rem;border-bottom:1px solid rgba(255,255,255,0.1)}.admin-main-content{margin-left:260px;padding:2rem}.card{border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,0.05);margin-bottom:1.5rem}.card .card-header{background-color:white;border-bottom:1px solid #e2e8f0;padding:1rem;font-weight:600}.btn{border-radius:6px;font-weight:500;padding:0.5rem 1rem}.btn-primary{background-color:#2563eb;border-color:#2563eb}.form-control{border-color:#e2e8f0;padding:0.6rem;border-radius:6px}.form-control:focus{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,0.1)}.alert{border-radius:8px;border:none;font-weight:500}.text-navy-dark{color:#1e293b}.min-vh-100{min-height:100vh}.input-group-text{background-color:#f8fafc;border-color:#e2e8f0;color:#64748b}.pagination-container div.pagination{display:flex;gap:5px;padding:1rem 0;justify-content:center}.pagination-container div.pagination a,.pagination-container div.pagination span,.pagination-container div.pagination em{padding:8px 14px;border-radius:6px;border:1px solid #e2e8f0;text-decoration:none;color:#475569;background-color:white;font-size:0.9rem;font-weight:500;transition:all 0.2s ease}.pagination-container div.pagination em{background-color:#2563eb;color:white;border-color:#2563eb;font-style:normal}.pagination-container div.pagination a:hover{background-color:#f1f5f9;border-color:#cbd5e1;color:#1e293b}.pagination-container div.pagination .disabled{color:#cbd5e1;pointer-events:none;background-color:#f8fafc}.admin-search-bar{max-width:500px}.admin-search-bar .input-group{background-color:white;border-radius:8px;overflow:hidden;border:1px solid #e2e8f0;transition:all 0.2s ease}.admin-search-bar .input-group:focus-within{border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,0.1)}.admin-search-bar .input-group-text{background-color:transparent;border:none;color:#94a3b8;padding-left:1rem}.admin-search-bar .form-control{border:none;padding:0.6rem 0.75rem;font-size:0.95rem}.admin-search-bar .form-control:focus{box-shadow:none}.admin-search-bar .btn-clear{background:transparent;border:none;color:#cbd5e1;display:flex;align-items:center;padding:0 10px}.admin-search-bar .btn-clear:hover{color:#64748b}.admin-search-bar .btn-primary{border-radius:0;font-weight:600;font-size:0.9rem;border:none}.badge{font-weight:500;padding:0.4em 0.8em}.bg-success-subtle{background-color:#d1fae5 !important;color:#065f46 !important}.bg-warning-subtle{background-color:#fef3c7 !important;color:#92400e !important}.bg-danger-subtle{background-color:#fee2e2 !important;color:#991b1b !important}.bg-info-subtle{background-color:#e0f2fe !important;color:#075985 !important}.json-viewer{background-color:#1e293b;color:#38bdf8;padding:1.5rem;border-radius:8px;font-size:0.85rem;max-height:400px;min-height:400px;overflow-y:auto;font-family:'Fira Code', 'Courier New', monospace;border:1px solid #334155}.json-viewer::-webkit-scrollbar{width:8px}.json-viewer::-webkit-scrollbar-thumb{background:#475569;border-radius:4px}.json-viewer{white-space:pre;line-height:1.55}.json-viewer .j-key{color:#7dd3fc}.json-viewer .j-str{color:#a7f3d0}.json-viewer .j-num{color:#fbbf24}.json-viewer .j-punct{color:#64748b}.json-viewer .j-bool{color:#f472b6}.json-viewer.json-compact{min-height:0;max-height:340px;padding:1rem 1.1rem}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.page-head h2{font-size:1.4rem;font-weight:700;margin:0}.page-head .sub{color:#64748b;font-size:.85rem;margin-top:.15rem}.kpi{border-left:4px solid #e2e8f0;transition:.12s}.kpi .kpi-label{color:#64748b;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.kpi .kpi-value{font-size:2rem;font-weight:700;line-height:1.05}.kpi .kpi-foot{font-size:.78rem;color:#94a3b8}a.kpi-link{text-decoration:none;color:inherit;display:block}a.kpi-link .kpi{cursor:pointer}a.kpi-link:hover .kpi{box-shadow:0 4px 12px rgba(15,23,42,0.08);transform:translateY(-1px)}.border-start-primary{border-left-color:#2563eb !important}.border-start-danger{border-left-color:#ef4444 !important}.border-start-warn{border-left-color:#f59e0b !important}.border-start-ok{border-left-color:#10b981 !important}.badge-subtle{font-weight:600;font-size:.72rem;padding:.32em .6em;border-radius:6px}.bs-green{background:#d1fae5;color:#065f46}.bs-amber{background:#fef3c7;color:#92400e}.bs-red{background:#fee2e2;color:#991b1b}.bs-blue{background:#e0f2fe;color:#075985}.bs-gray{background:#f1f5f9;color:#475569}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:.35rem}.dot-green{background:#10b981}.dot-amber{background:#f59e0b}.dot-red{background:#ef4444}.mono{font-family:"SFMono-Regular", ui-monospace, Menlo, Consolas, monospace;font-size:.8rem}.help{color:#94a3b8;font-size:.78rem}code.kbd{background:#f1f5f9;padding:.05rem .4rem;border-radius:4px;color:#0f172a;font-size:.8rem}.nav-pills .nav-link{color:#475569;font-weight:600;font-size:.85rem;border-radius:7px}.nav-pills .nav-link.active{background:#2563eb;color:#fff}.ops-panel{position:sticky;top:1rem}.pipeline-step{display:flex;gap:.8rem;padding:.7rem 0;position:relative}.pipeline-step:not(:last-child)::before{content:"";position:absolute;left:13px;top:34px;bottom:-8px;width:2px;background:#e2e8f0}.pipeline-step .ico{width:28px;height:28px;border-radius:50%;flex:none;display:grid;place-items:center;font-size:.85rem;z-index:1}.pipeline-step .step-title{font-weight:600;font-size:.85rem}.pipeline-step .step-sub{font-size:.78rem;color:#64748b}.ico-ok{background:#d1fae5;color:#065f46}.ico-bad{background:#fee2e2;color:#991b1b}.ico-pending{background:#f1f5f9;color:#94a3b8}.ico-warn{background:#fef3c7;color:#92400e}.wizard-steps{display:flex;gap:0;margin-bottom:1.5rem}.wizard-steps .ws{flex:1;text-align:center;position:relative;padding-bottom:.6rem}.wizard-steps .ws .num{width:34px;height:34px;border-radius:50%;display:inline-grid;place-items:center;background:#e2e8f0;color:#64748b;font-weight:700;margin-bottom:.4rem}.wizard-steps .ws .lbl{font-size:.8rem;font-weight:600;color:#64748b;display:block}.wizard-steps .ws.active .num{background:#2563eb;color:#fff}.wizard-steps .ws.active .lbl{color:#0f172a}.wizard-steps .ws.done .num{background:#10b981;color:#fff}.wizard-steps .ws::after{content:"";position:absolute;top:17px;left:60%;right:-40%;height:2px;background:#e2e8f0;z-index:0}.wizard-steps .ws:last-child::after{display:none}.wizard-steps .ws.done::after{background:#10b981}.admin-sidebar{display:flex;flex-direction:column}.admin-sidebar .nav-section{padding:1rem 1.25rem .4rem;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:#475569;font-weight:700}.admin-sidebar .nav-link .badge{margin-left:auto}.admin-sidebar .sidebar-footer{margin-top:auto;padding:1rem 1.25rem;border-top:1px solid #334155;display:flex;align-items:center;gap:.6rem;font-size:.8rem;color:#cbd5e1}.admin-sidebar .sidebar-footer .avatar{width:32px;height:32px;border-radius:50%;background:#334155;display:grid;place-items:center;color:#e2e8f0;font-weight:600;flex:none}
