:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}body{display:flex;justify-content:center;align-items:center;background-color:#2d424d;font-family:Segoe UI,sans-serif;padding:0;min-height:100vh}.login-wrapper{height:100vh;display:flex;justify-content:center;align-items:center}.login-container{background-color:#fff;padding:2.5rem;border-radius:1.5rem;box-shadow:0 0 25px #0003;text-align:center;width:100%;max-width:420px}.login-container img{width:180px;margin-bottom:1.5rem}.login-container input,.login-container select{width:60%;padding:.8rem;border-radius:.5rem;border:1px solid #ccc;background-color:#f8f3e7;margin-bottom:1rem;font-family:Segoe UI,sans-serif}.login-container input:focus,.login-container select:focus{border:2px solid #4a7c3a;outline:none}.login-container button{width:60%;padding:.8rem;border-radius:.5rem;border:none;background-color:#4a7c3a;color:#fff;font-weight:700;cursor:pointer;transition:background .2s ease}.login-container button:hover{background-color:#3a632e}.login-container .error{color:red;font-size:.9rem;margin-top:.5rem}.dashboard-container{width:60vw;max-width:1400px;margin:2rem auto;padding:2rem;background-color:#f8f3e7;border-radius:1.2rem;display:flex;flex-direction:column;align-items:center}.titulo-dashboard{color:#2d424d;font-size:1.5rem;margin-bottom:1rem;text-align:center}.nombre{color:#4a7c3a}.filtros-barra{display:flex;gap:1rem;margin-bottom:1.5rem;width:100%;max-width:900px;justify-content:center}.filtros-barra input,.filtros-barra select{flex:1;padding:.7rem;border-radius:.5rem;border:1px solid #ccc}.panel-proyectos{display:flex;gap:2rem;justify-content:center;width:100%}.panel-lateral{display:flex;flex-direction:column;gap:.5rem}.panel-lateral button{background-color:#4a7c3a;color:#fff;border:none;padding:.6rem 1rem;border-radius:.8rem;cursor:pointer}.panel-lateral button.activo{background-color:#2f5a2f}.panel-central{background-color:#f8f3e7;width:100%;max-width:1300px;padding:2rem;border-radius:1rem;flex:1}.meses-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:1.5rem}.meses-grid button{background-color:#4a7c3a;color:#fff;padding:.5rem;border-radius:.8rem;border:none;cursor:pointer}.meses-grid button.activo{background-color:#2f5a2f}.resultados-proyectos{display:flex;flex-direction:column;gap:1rem}.proyecto-item{background-color:#f8f3e7;color:#2d424d;padding:1rem;border-radius:.8rem;box-shadow:0 2px 5px #0000001a;cursor:pointer;transition:transform .2s ease}.proyecto-item:hover{transform:scale(1.01);background-color:#e9e3d8}.sin-resultados{color:#999;font-style:italic}.encabezado-dashboard{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:1rem}.btn-agregar{background-color:transparent;color:#4a7c3a;border:1.5px solid #4a7c3a;border-radius:.5rem;padding:.45rem 1.2rem;font-size:.9rem;cursor:pointer;transition:all .2s ease}.btn-agregar:hover{background-color:#4a7c3a;color:#fff}.crearproyecto-container{max-width:1000px;margin:auto;padding:2rem;background-color:#f8f3e7;border-radius:1rem;text-align:center}.titulo-crear{font-size:1.6rem;color:#2d424d;margin-bottom:1.5rem}.formulario-crear{display:flex;flex-direction:column;gap:1rem;align-items:center}.formulario-crear input,.formulario-crear select{padding:.8rem;width:80%;border-radius:.5rem;border:1px solid #ccc}.btn-principal{background-color:#4a7c3a;color:#fff;padding:.7rem 1.5rem;border:none;border-radius:.5rem;cursor:pointer}.btn-secundario{background-color:#ccc;color:#2d424d;padding:.5rem 1rem;border:none;border-radius:.5rem}.crear-container{max-width:900px;margin:2rem auto;background-color:#f8f3e7;padding:2rem;border-radius:1rem;text-align:center}.crear-titulo{font-size:1.7rem;color:#2d424d;margin-bottom:1.5rem}.crear-form input,.crear-form select{padding:.8rem;margin-bottom:1rem;border-radius:.5rem;border:1px solid #ccc;width:100%;max-width:400px}.etapas-section{display:flex;justify-content:center;gap:1rem;margin-bottom:1rem}.etapas-lista{list-style:none;padding:0;margin-bottom:1rem}.etapas-lista li{background-color:#fff;margin:.3rem 0;padding:.5rem;border-radius:.4rem;color:#2d424d}.btn-principal{background-color:#4a7c3a;color:#fff;padding:.8rem 1.5rem;border:none;border-radius:.5rem;font-size:1rem;cursor:pointer;margin-top:1rem}.btn-principal:hover{background-color:#3c6b2d}.btn-secundario{background-color:#ccc;color:#2d424d;padding:.5rem 1rem;border:none;border-radius:.5rem;cursor:pointer}input[type=file],.preview-container{margin-top:1rem}.preview-item{margin-bottom:.5rem}.preview-item img{width:100px;height:auto;border-radius:8px;box-shadow:0 0 4px #0003}.input-usuario{width:62%!important;padding:.8rem;border-radius:.5rem;border:1px solid #ccc;background-color:#f8f3e7;margin-bottom:1rem;font-family:Segoe UI,sans-serif}.input-usuario:focus{border:2px solid #4a7c3a;outline:none}.input-contraseña{width:60%!important;padding:.8rem;border-radius:.5rem;height:10px;border:1px solid #ccc;background-color:#f8f3e7;margin-bottom:1rem;font-family:Segoe UI,sans-serif}h2,h3,h4{text-align:center;margin-bottom:1.5rem;color:#254f42}.etapas-section{display:flex;justify-content:center;flex-wrap:wrap;gap:1rem;margin-bottom:2rem}.tabla-archivos table{width:100%;border-collapse:collapse;margin-bottom:2rem;text-align:left}button{margin:.25rem;padding:.5rem 1.2rem;background-color:#4a7c3a;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background-color .3s ease}input[type=file],input[type=text],select{width:100%;padding:.5rem;margin:.5rem 0;border:1px solid #ccc;border-radius:6px}input[type=file]{border:none}select{background-color:#fff}ul{list-style:disc;margin-left:2rem}a{text-decoration:none;color:#254f42;font-weight:700}a:hover{text-decoration:underline}.subproceso-completado{color:green;font-weight:700}.subproceso-pendiente{color:orange;font-weight:700}.etapa-container{border:1px solid #ccc;border-radius:8px;padding:1rem;margin-bottom:1.5rem;background-color:#fff}.tarea-container{margin-left:1.5rem;padding:.5rem 0;border-left:2px solid #254f42}.subproceso-container{margin-left:2rem;padding:.25rem 0}input[type=text]::placeholder{color:#999}.subir-archivo{margin-top:2rem;text-align:center}.separator{border-top:1px solid #ccc;margin:2rem 0}.crear-container{max-width:900px;margin:2rem auto;padding:2rem;background-color:#f8f3e7;border-radius:12px;box-shadow:0 4px 12px #0000001a;color:#2d424d;font-family:Arial,sans-serif;text-align:center}h2,h3,h4{color:#254f42;margin-bottom:1rem}.etapas-section{display:flex;justify-content:center;gap:1rem;margin-bottom:2rem}.btn-principal,.btn-secundario{padding:.5rem 1.5rem;border:none;border-radius:8px;cursor:pointer;font-weight:700;transition:background-color .3s ease}.btn-principal{background-color:#254f42;color:#fff}.btn-principal:hover{background-color:#1e3b34}.btn-secundario{background-color:#ddd;color:#2d424d}.btn-secundario:hover{background-color:silver}.tabla-archivos table{width:100%;border-collapse:collapse;margin:1rem 0}.tabla-archivos th,.tabla-archivos td{border:1px solid #ccc;padding:.75rem}.tabla-archivos th{background-color:#254f42;color:#fff}.etapa-card{background:#fff;padding:1rem;margin:1rem 0;border:1px solid #ddd;border-radius:8px}.tarea-card{margin:1rem 0;text-align:left}.subproceso{margin:.5rem 0}.subproceso.completado{color:green;font-weight:700}.subproceso.pendiente{color:orange;font-weight:700}button{margin:.3rem;padding:.5rem 1rem;border:none;border-radius:6px;cursor:pointer;font-weight:700;background-color:#4a7c3a;color:#fff;transition:background-color .3s ease}.btn-accion-mini{padding:.3rem .8rem;font-size:.8rem}.btn-enlace{background:none;color:#254f42;cursor:pointer}.btn-enlace:hover{text-decoration:underline}.btn-volver{background-color:#254f42}.btn-volver:hover{background-color:#1e3b34}.input-campo{width:80%;padding:.5rem;margin:.5rem 0;border:1px solid #ccc;border-radius:6px}.acciones-proyecto{margin-top:1.5rem;display:flex;justify-content:center;gap:1rem}.etapa-card{background-color:#fff;padding:1rem;border-radius:8px;box-shadow:0 2px 6px #0000001a;margin-bottom:1.5rem}.etapa-header{display:flex;justify-content:space-between;align-items:center}.btn-nueva-tarea{background-color:#254f42;color:#fff;border:none;border-radius:6px;padding:.4rem 1rem;cursor:pointer;font-weight:700}.btn-nueva-tarea:hover{background-color:#1e3b34}.tarea-card{margin-top:1rem;margin-left:1rem}.btn-cambiar-estado{background-color:#4a7c3a;color:#fff;border:none;border-radius:6px;margin-left:1rem;padding:.3rem .8rem;cursor:pointer}.btn-cambiar-estado:hover{background-color:#3a5f2a}.etapas-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.crear-container{max-width:900px;margin:2rem auto;padding:2rem;background-color:#f8f3e7;border-radius:12px;box-shadow:0 4px 12px #0000001a;color:#2d424d;font-family:Arial,sans-serif}h2{text-align:center;margin-bottom:2rem;color:#254f42}input,select{padding:.5rem;margin:.3rem .5rem;border:1px solid #ccc;border-radius:6px;width:200px}button{padding:.5rem 1rem;background-color:#4a7c3a;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:background-color .3s}button:hover{background-color:#3a5f2a}table{width:100%;border-collapse:collapse;margin-top:1rem}th,td{border:1px solid #ccc;padding:.75rem;text-align:center}th{background-color:#254f42;color:#fff}.accordion-content{background-color:#eee;padding:1rem;border-radius:8px;margin-top:.5rem}.accordion-toggle{background:none;border:none;color:#254f42;font-weight:700;cursor:pointer;padding:.5rem}.accordion-toggle:hover{text-decoration:underline}
