.header{background:var(--color-sidebar);box-shadow:0 2px 8px #00000040;color:#fff;justify-content:space-between;padding:10px 20px;z-index:10}.header,.header-left{align-items:center;display:flex}.header-left{gap:12px}.hamburger{background:none;border:none;border-radius:6px;color:#cbd5e1;cursor:pointer;font-size:20px;padding:4px 8px}.hamburger:hover{background:var(--color-sidebar-hover)}.header-logo{font-size:26px}.header-title{font-size:16px;font-weight:700}.header-subtitle{color:#94a3b8;font-size:11px}.header-right{align-items:center;display:flex;gap:16px}.header-user{text-align:right}.header-user-name{font-size:13px;font-weight:600}.header-user-roles{color:#94a3b8;font-size:11px}.logout-btn{background:#0000;border:1px solid #475569;border-radius:6px;color:#cbd5e1;cursor:pointer;font-size:12px;padding:6px 14px}.logout-btn:hover{background:var(--color-sidebar-hover);color:#fff}.sidebar{background:var(--color-sidebar);color:#cbd5e1;flex-shrink:0;overflow-y:auto;padding:16px 12px;transition:width .2s;width:240px}.sidebar.collapsed{padding:16px 8px;width:60px}.module-item,.nav-item{align-items:center;border-radius:8px;cursor:pointer;display:flex;font-size:14px;gap:10px;margin-bottom:4px;padding:10px 12px}.module-item:hover,.nav-item:hover{background:var(--color-sidebar-hover)}.module-item.active,.nav-item.active{background:var(--color-primary);color:#fff}.modules-section h3{color:#64748b;font-size:11px;letter-spacing:1px;margin:20px 8px 8px}.module-icon{font-size:18px}.module-name{font-size:13px;font-weight:600}.module-desc{color:#94a3b8;font-size:11px}.module-item.active .module-desc{color:#dbeafe}.collapsed-item{justify-content:center;margin-top:12px}.no-modules{color:#94a3b8;font-size:12px;padding:16px 8px;text-align:center}.no-modules-icon{font-size:28px;margin-bottom:6px}.no-modules .hint{font-style:italic}.projects{margin:0 auto;max-width:1080px}.projects-top{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin:8px 0 12px}.projects-top h2{margin:0}.projects-actions{align-items:center;display:flex;gap:14px}.project-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.project-card{cursor:pointer;margin-bottom:0;transition:transform .1s,box-shadow .1s}.project-card:hover{box-shadow:0 4px 14px #0000001f;transform:translateY(-2px)}.project-card.inactivo{opacity:.6}.project-card-head{align-items:center;display:flex;gap:10px}.project-card-head h3{flex:1 1;font-size:16px;margin:0}.project-icon{font-size:22px}.project-card-foot{margin-top:10px}.vacio{padding:40px;text-align:center}.story-title{color:var(--color-primary);cursor:pointer;font-weight:600}.story-title:hover{text-decoration:underline}.story-actions{display:flex;gap:6px;white-space:nowrap}.modal-backdrop{align-items:center;background:#0f172a8c;display:flex;inset:0;justify-content:center;position:fixed;z-index:100}.modal{background:var(--color-surface);border-radius:12px;box-shadow:0 20px 50px #00000059;max-height:88vh;max-width:92vw;overflow-y:auto;padding:24px 28px;width:480px}.modal.modal-ancho{width:680px}.modal h3{margin-top:0}.modal-label{color:var(--color-text-muted);display:block;font-size:13px;font-weight:600;margin:14px 0 4px}.modal-spacer{flex:1 1}.adjuntos-lista{list-style:none;margin:8px 0 0;padding:0}.adjuntos-lista li{align-items:center;background:#fafbfc;border:1px solid var(--color-border);border-radius:var(--radius);display:flex;font-size:13px;gap:10px;justify-content:space-between;margin-bottom:6px;padding:6px 10px}.dashboard{margin:0 auto;max-width:1080px}.hero h2{margin-top:0}.hero p{color:var(--color-text-muted)}.flow{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 22px}.flow-step{background:#f0f6ff;border:1px solid #bfdbfe;border-radius:999px;font-size:14px;font-weight:600;padding:8px 16px}.flow-arrow{color:var(--color-text-muted);font-size:13px}.dash-cols{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}@media (max-width:800px){.dash-cols{grid-template-columns:1fr}}.dash-list{list-style:none;margin:0;padding:0}.dash-list li{border-bottom:1px solid var(--color-border);border-radius:6px;cursor:pointer;padding:9px 10px}.dash-list li:hover{background:#f0f6ff}.jobs-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.jobs-header h3{margin:0}.jobs-actions{gap:14px}.check-line,.jobs-actions{align-items:center;display:flex}.check-line{color:var(--color-text-muted);cursor:pointer;font-size:13px;gap:6px}.pipeline{margin:0 auto;max-width:1080px}.pipeline-top{align-items:center;display:flex;justify-content:space-between}.pipeline-top h2{margin:0 0 4px}.stepper{margin:16px 0 4px}.stepper,.stepper-step{align-items:center;display:flex;gap:8px}.stepper-step{background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px;box-shadow:var(--shadow);color:var(--color-text-muted);cursor:pointer;font-size:14px;font-weight:600;padding:8px 18px 8px 10px}.stepper-step.active{border-color:var(--color-primary);color:var(--color-primary)}.stepper-step.done{color:var(--color-ok)}.stepper-dot{align-items:center;background:#eef2f7;border-radius:50%;display:inline-flex;font-size:13px;height:26px;justify-content:center;width:26px}.stepper-step.active .stepper-dot{background:var(--color-primary);color:#fff}.stepper-step.done .stepper-dot{background:var(--color-ok);color:#fff}.stepper-line{background:var(--color-border);flex:0 0 28px;height:2px}.checkpoint-hint{font-size:13px;margin:4px 0 16px}.adjuntos-chips{gap:8px;margin-top:10px}.adjuntos-chips,.result-header{align-items:center;display:flex;flex-wrap:wrap}.result-header{gap:12px;justify-content:space-between}.result-header h3{margin:0}.meta-line{align-items:center;color:var(--color-text-muted);display:flex;flex-wrap:wrap;font-size:12px;gap:14px;margin:8px 0 14px}.btn-xs{font-size:12px;padding:4px 10px}.narrativa{background:#f0f6ff;border-left:4px solid var(--color-primary);border-radius:0 var(--radius) var(--radius) 0;font-style:italic;margin:12px 0;padding:10px 16px}.muted{color:var(--color-text-muted)}.pequeno{font-size:12px}.bloque-details{margin:12px 0}.bloque-details summary{cursor:pointer;font-size:14px;font-weight:600}.preguntas-bloque h4{margin-bottom:4px}.pregunta-card{background:#fafbfc;border:1px solid var(--color-border);border-radius:var(--radius);margin:10px 0;padding:12px 16px}.pregunta-card p{margin:6px 0}.pregunta-head{align-items:center;display:flex;font-size:12px;gap:10px}.input-text.full{width:100%}textarea.input-area.corta{min-height:80px}.acciones{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.run-status{margin-top:14px}.run-status-row{align-items:center;display:flex;font-size:14px;gap:10px}.loading-spinner.small{border-width:3px;flex-shrink:0;height:18px;width:18px}.progress-bar{background:var(--color-border);border-radius:999px;height:6px;margin-top:8px;overflow:hidden}.progress-bar div{background:var(--color-primary);border-radius:999px;height:100%;transition:width 1s linear}.caso-card{border:1px solid var(--color-border);border-radius:var(--radius);margin:8px 0;padding:10px 16px}.caso-card summary{align-items:center;cursor:pointer;display:flex;flex-wrap:wrap;font-size:14px;font-weight:600;gap:10px}.caso-card pre{margin:10px 0}.file-browser{grid-gap:14px;display:grid;gap:14px;grid-template-columns:280px 1fr;margin-top:14px}.file-list{border:1px solid var(--color-border);border-radius:var(--radius);font-family:Consolas,monospace;font-size:12px;list-style:none;margin:0;max-height:480px;overflow-y:auto;padding:0}.file-list li{border-bottom:1px solid var(--color-border);cursor:pointer;padding:7px 12px;word-break:break-all}.file-list li:hover{background:#f0f6ff}.file-list li.active{background:var(--color-primary);color:#fff}.file-preview{margin:0}@media (max-width:800px){.file-browser{grid-template-columns:1fr}}.admin{margin:0 auto;max-width:1080px}.admin h2{margin-top:0}.stats-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));margin:14px 0}.stat-card{background:#f8fafc;border:1px solid var(--color-border);border-radius:var(--radius);padding:14px;text-align:center}.stat-card.ok{background:#f0fdf4;border-color:#bbf7d0}.stat-card.error{background:#fef2f2;border-color:#fecaca}.stat-num{font-size:26px;font-weight:700}.stat-label{color:var(--color-text-muted);font-size:12px}.audit-filtros{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}.audit-filtros .input-text{flex:1 1;min-width:180px}.app{display:flex;flex-direction:column;height:100vh}.app-body{display:flex;flex:1 1;overflow:hidden}.main-content{flex:1 1;overflow-y:auto;padding:24px 32px}.no-access{background:var(--color-surface);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--color-text-muted);margin:60px auto;max-width:420px;padding:32px;text-align:center}.login-screen{align-items:center;background:linear-gradient(135deg,#1a2332,#2d3e5e);display:flex;height:100vh;justify-content:center}.login-card{background:var(--color-surface);border-radius:12px;box-shadow:0 20px 50px #0000004d;max-width:420px;padding:48px 56px;text-align:center}.login-logo{font-size:56px;margin-bottom:8px}.login-card h1{font-size:26px;margin:0 0 8px}.login-card p{color:var(--color-text-muted);font-size:14px;margin:0 0 28px}.login-btn{background:var(--color-primary);border:none;border-radius:var(--radius);color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 28px;transition:background .15s}.login-btn:hover{background:var(--color-primary-dark)}.loading-screen{align-items:center;color:var(--color-text-muted);display:flex;flex-direction:column;gap:16px;height:100vh;justify-content:center}.loading-spinner{animation:spin .8s linear infinite;border:4px solid var(--color-border);border-radius:50%;border-top-color:var(--color-primary);height:42px;width:42px}@keyframes spin{to{transform:rotate(1turn)}}.card{background:var(--color-surface);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px;padding:20px 24px}.btn{align-items:center;border:none;border-radius:var(--radius);cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:6px;padding:9px 18px;transition:opacity .15s,background .15s}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.btn-secondary{background:#eef2f7;color:var(--color-text)}.btn-secondary:hover:not(:disabled){background:#e2e8f0}.btn-success{background:var(--color-ok);color:#fff}.badge{border-radius:999px;display:inline-block;font-size:12px;font-weight:600;padding:3px 10px}.badge-ok{background:#dcfce7;color:#166534}.badge-warn{background:#fef3c7;color:#92400e}.badge-error{background:#fee2e2;color:#991b1b}.badge-info{background:#dbeafe;color:#1e40af}.alert{border-radius:var(--radius);font-size:14px;margin:12px 0;padding:12px 16px}.alert-error{background:#fee2e2;border:1px solid #fecaca;color:#991b1b}.alert-info{background:#dbeafe;border:1px solid #bfdbfe;color:#1e40af}textarea.input-area{border:1px solid var(--color-border);border-radius:var(--radius);font-family:Cascadia Code,Consolas,monospace;font-size:13px;min-height:180px;padding:12px;resize:vertical;width:100%}textarea.input-area:focus{border-color:#0000;outline:2px solid var(--color-primary)}input.input-text,select.input-select{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius);font-size:14px;padding:8px 12px}pre.code-block{background:#0f172a;border-radius:var(--radius);color:#e2e8f0;max-height:480px;overflow-x:auto;padding:16px;white-space:pre-wrap;word-break:break-word}table.data-table{border-collapse:collapse;font-size:13px;width:100%}.data-table th{background:#f8fafc;border-bottom:2px solid var(--color-border);padding:8px 10px;text-align:left;white-space:nowrap}.data-table td{border-bottom:1px solid var(--color-border);padding:8px 10px;vertical-align:top}.data-table tr:hover td{background:#f8fafc}:root{--color-bg:#f4f6f9;--color-surface:#fff;--color-sidebar:#1a2332;--color-sidebar-hover:#243044;--color-primary:#2563eb;--color-primary-dark:#1d4ed8;--color-text:#1f2937;--color-text-muted:#6b7280;--color-border:#e5e7eb;--color-ok:#16a34a;--color-warn:#d97706;--color-error:#dc2626;--radius:8px;--shadow:0 1px 3px #00000014,0 1px 2px #0000000a}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;background:#f4f6f9;background:var(--color-bg);color:#1f2937;color:var(--color-text);font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,sans-serif;margin:0}code,pre{font-family:Cascadia Code,Consolas,Courier New,monospace;font-size:13px}button{font-family:inherit}
/*# sourceMappingURL=main.27476186.css.map*/