:root{--fondo:#f7f5fc;--superficie:#fff;--texto:#1e1b2e;--texto-suave:#5b5670;--borde:#ddd8ea;--primario:#6d28d9;--primario-hover:#5b21b6;--primario-suave:#ede9fe;--rosa:#db2777;--celeste:#0ea5e9;--peligro:#b91c1c;--exito:#15803d;--radio:10px;color:var(--texto);background:var(--fondo);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5}*{box-sizing:border-box}body{margin:0}h1{margin:0 0 1rem;font-size:1.6rem}h2{margin:0 0 .75rem;font-size:1.2rem}a{color:var(--primario)}.suave{color:var(--texto-suave)}input,select,textarea,button,.boton{font:inherit;border-radius:var(--radio);min-height:44px}input,select,textarea{border:1px solid var(--borde);background:var(--superficie);width:100%;color:var(--texto);padding:.5rem .75rem}input:focus,select:focus,textarea:focus{outline:2px solid var(--celeste);outline-offset:1px;border-color:var(--celeste)}button,.boton{border:1px solid var(--primario);background:var(--primario);color:#fff;cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;padding:.5rem 1.1rem;font-weight:600;text-decoration:none;display:inline-flex}button:hover:not(:disabled),.boton:hover{background:var(--primario-hover)}button:disabled{opacity:.5;cursor:not-allowed}button.secundario,.boton.secundario{background:var(--superficie);color:var(--texto);border-color:var(--borde)}button.secundario:hover:not(:disabled),.boton.secundario:hover{background:var(--fondo)}label{flex-direction:column;gap:.25rem;font-weight:500;display:flex}.acciones{flex-wrap:wrap;gap:.75rem;display:flex}.layout{flex-direction:column;min-height:100vh;display:flex}.barra{background:var(--superficie);border-bottom:3px solid #0000;border-image:linear-gradient(90deg, var(--primario), var(--rosa), var(--celeste)) 1;flex-wrap:wrap;align-items:center;gap:.5rem 1.5rem;padding:.5rem 1rem;display:flex}.marca{color:var(--primario);font-size:1.2rem;font-weight:800;text-decoration:none}.marca-zona{color:var(--rosa);font-weight:600}.menu{flex-wrap:wrap;flex:1;gap:.25rem;display:flex}.menu a,.menu .deshabilitado{border-radius:var(--radio);color:var(--texto-suave);padding:.5rem .75rem;text-decoration:none}.menu a.active{background:var(--primario-suave);color:var(--primario-hover);font-weight:600}.menu .deshabilitado{opacity:.55;cursor:not-allowed}.menu .deshabilitado small{color:var(--rosa);font-size:.7rem}.usuario{color:var(--texto-suave);align-items:center;gap:.75rem;display:flex}.rol{color:#0369a1;background:#e0f2fe;border-radius:999px;padding:.1rem .5rem;font-size:.75rem;font-weight:600}.contenido{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:1.5rem 1rem 3rem}.pie{text-align:center;color:var(--texto-suave);padding:1rem;font-size:.85rem}.tarjeta{background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);margin-bottom:1rem;padding:1.25rem}.aviso{border-radius:var(--radio);margin:0 0 1rem;padding:.75rem 1rem}.aviso-error{color:var(--peligro);background:#fef2f2;border:1px solid #fecaca}.aviso-exito{color:var(--exito);background:#f0fdf4;border:1px solid #bbf7d0}.cargando{text-align:center;color:var(--texto-suave);padding:2rem}.etiqueta{color:var(--rosa);background:#fce7f3;border-radius:999px;margin:0 0 .5rem;padding:.15rem .6rem;font-size:.8rem;font-weight:700;display:inline-block}.portada{max-width:640px;padding:2rem 0}.portada h1{background:linear-gradient(90deg, var(--primario), var(--rosa));color:#0000;-webkit-background-clip:text;background-clip:text;font-size:2rem}.login{background:linear-gradient(135deg, var(--primario-suave), #fce7f3 55%, #e0f2fe);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.login .tarjeta{flex-direction:column;gap:1rem;width:100%;max-width:380px;display:flex}.login h1{margin:0}.marca-login{color:var(--rosa);letter-spacing:.05em;text-transform:uppercase;margin:0;font-size:.85rem;font-weight:800}.pie-login{text-align:center;color:var(--texto-suave);margin:0;font-size:.9rem}.cabecera{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.cabecera h1,.cabecera h2,.cabecera h3{margin:0}.separado{margin-top:1.5rem}.bloque{display:block}.aviso-info{color:#075985;background:#e0f2fe;border:1px solid #bae6fd}button.peligro{background:var(--peligro);border-color:var(--peligro)}button.peligro:hover:not(:disabled){background:#991b1b}fieldset{border:0;min-width:0;margin:0;padding:0}fieldset.tarjeta{border:1px solid var(--borde);padding:1.25rem}fieldset:disabled input,fieldset:disabled select,fieldset:disabled textarea{background:var(--fondo);color:var(--texto)}.grilla{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem 1rem;margin-bottom:.75rem;display:grid}.campo-ancho{grid-column:1/-1}.campo+.campo{margin-top:.75rem}.grilla .campo+.campo{margin-top:0}.campo-con-error input,.campo-con-error select,.campo-con-error textarea{border-color:var(--peligro)}.error-campo{color:var(--peligro);font-size:.85rem;font-weight:500;display:block}.casilla{flex-direction:row;align-items:center;gap:.5rem;margin:.5rem 0 1rem}.casilla input{width:auto;min-height:auto}.filtros{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.filtros label{flex:180px}.fila-formulario{flex-wrap:wrap;align-items:flex-end;gap:.75rem;display:flex}.fila-formulario .campo{flex:220px}.formulario-angosto{flex-direction:column;gap:.75rem;max-width:420px;display:flex}.formulario-angosto .campo+.campo{margin-top:0}.subformulario{border-top:1px dashed var(--borde);margin-top:1rem;padding-top:1rem}.precio-calculado{color:var(--texto-suave);margin:0}.tabla-scroll{background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);margin-bottom:1rem;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.95rem}caption{text-align:left;padding:.75rem .75rem 0;font-weight:600}th,td{text-align:left;border-bottom:1px solid var(--borde);vertical-align:top;padding:.6rem .75rem}th{text-transform:uppercase;letter-spacing:.03em;color:var(--texto-suave);white-space:nowrap;font-size:.8rem}tbody tr:last-child td{border-bottom:0}.numero{text-align:right;white-space:nowrap}tr.inactivo,li.inactivo{opacity:.6}tr.fila-con-error td{background:#fef2f2}.input-corto{text-align:right;max-width:7rem}.acciones-fila{flex-wrap:nowrap;gap:.4rem}.acciones-fila button{padding:.4rem .7rem}.estado{white-space:nowrap;color:#334155;background:#f1f5f9;border-radius:999px;padding:.15rem .6rem;font-size:.8rem;font-weight:600;display:inline-block}.estado-publicado,.estado-activo{color:var(--exito);background:#dcfce7}.estado-borrador{background:var(--primario-suave);color:var(--primario-hover)}.estado-cerrado,.estado-agotado{color:#92400e;background:#fef3c7}.estado-suspendido{color:var(--peligro);background:#fee2e2}.ocupacion{font-variant-numeric:tabular-nums;flex-direction:column;gap:.2rem;min-width:5rem;display:inline-flex}.barra-ocupacion{background:var(--borde);border-radius:999px;height:6px;display:block;overflow:hidden}.barra-ocupacion span{background:linear-gradient(90deg, var(--primario), var(--rosa));height:100%;display:block}.lista-eventos,.lista-ordenada,.lista-fechas{margin:0;padding:0;list-style:none}.tarjeta-evento{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.tarjeta-evento p{margin:.25rem 0 0}.titulo-evento{font-size:1.05rem;font-weight:700}.lado-evento{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.fila-rubro{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem;padding:.6rem 1rem;display:flex}.dos-columnas{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;display:grid}.calendario{max-width:420px}.calendario-cabecera{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.calendario-mes:first-letter{text-transform:uppercase}.calendario-grilla{grid-template-columns:repeat(7,1fr);gap:.25rem;display:grid}.calendario-dia-semana{text-align:center;color:var(--texto-suave);text-transform:uppercase;font-size:.75rem}button.calendario-dia{background:var(--superficie);min-height:42px;color:var(--texto);border-color:var(--borde);padding:0;font-weight:500}button.calendario-dia.fin-de-semana{color:var(--primario);font-weight:700}button.calendario-dia:hover:not(:disabled){background:var(--primario-suave)}button.calendario-dia.marcada,button.calendario-dia.marcada:hover:not(:disabled){background:var(--primario);border-color:var(--primario);color:#fff}.lista-fechas li{border-bottom:1px solid var(--borde);grid-template-columns:7.5rem 1fr auto;align-items:center;gap:.5rem;padding:.35rem 0;display:grid}.lista-fechas .error-campo{grid-column:1/-1}.fondo-dialogo{z-index:10;background:#1e1b2e73;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.dialogo{width:100%;max-width:460px;margin:0}@media (width<=600px){.contenido{padding:1rem .75rem 2rem}.tarjeta{padding:1rem}.lista-fechas li{grid-template-columns:1fr auto}.lista-fechas li select{grid-area:2/1/auto/-1}}.aviso-con-accion{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;display:flex}.visualmente-oculto{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.boton-archivo{position:relative}.boton-archivo:focus-within{outline:2px solid var(--celeste);outline-offset:2px}.login .tarjeta:has(.formulario-acceso){max-width:440px}.formulario-acceso{flex-direction:column;gap:.9rem;display:flex}.formulario-acceso .campo+.campo{margin-top:0}.casilla-legal{flex-direction:column;gap:.15rem;display:flex}.casilla-legal .casilla{align-items:flex-start;margin:0}.casilla-legal .casilla input{min-width:1.2rem;min-height:1.2rem;margin-top:.3rem}.casilla-legal>a{margin-left:1.9rem;font-size:.9rem}.texto-legal{max-width:72ch}.texto-legal h2,.texto-legal h3{margin-top:1.25rem}.caja-legal{border:1px solid var(--borde);border-radius:var(--radio);background:var(--fondo);max-height:50vh;margin-bottom:.75rem;padding:.75rem 1rem;overflow-y:auto}.caja-legal:focus{outline:2px solid var(--celeste)}.estado-revision{color:#075985;background:#e0f2fe}.observaciones{border-left:4px solid var(--rosa);border-radius:var(--radio);background:#fdf2f8;margin:0 0 1rem;padding:.75rem 1rem}.observaciones p{white-space:pre-line;margin:.25rem 0}.faltantes{margin:0 0 1rem;padding-left:1.25rem}legend{padding:0 .25rem;font-size:1.1rem;font-weight:700}.grupo-opciones{flex-wrap:wrap;gap:0 1.5rem;display:flex}.grupo-opciones legend{padding:0;font-size:1rem;font-weight:500}.grupo-opciones .casilla{margin:.25rem 0}.grupo-opciones .error-campo{flex-basis:100%}.barra-acciones{z-index:5;background:var(--fondo);align-items:center;padding:.75rem 0;position:sticky;bottom:0}.diferencias summary{cursor:pointer;margin-bottom:.5rem;font-weight:700}.galeria{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin:0 0 1rem;padding:0;list-style:none;display:grid}.miniatura{flex-direction:column;gap:.4rem;margin:0;display:flex;position:relative}.miniatura img{aspect-ratio:1;object-fit:cover;border-radius:var(--radio);border:1px solid var(--borde);background:var(--fondo);width:100%}figure.miniatura{max-width:160px}.miniatura .etiqueta{position:absolute;top:.4rem;left:.4rem}.etiqueta-quita{color:var(--peligro);background:#fee2e2}.miniatura .acciones-fila button{flex:1;padding:.3rem}.fila-logo{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.subidas{margin-top:1rem}.subidas progress{width:100%;height:.75rem;accent-color:var(--primario)}.subidas ul{margin:.5rem 0 0;padding-left:1.25rem;font-size:.9rem}.tabla-revision th[scope=row]{white-space:normal;text-transform:none;letter-spacing:0;color:var(--texto);font-size:.9rem}.fila-seccion th{background:var(--fondo);color:var(--primario)}.fila-cambio td,.fila-cambio th{background:#fef9c3}.marca-cambio{color:#78350f;text-transform:uppercase;vertical-align:middle;background:#fde68a;border-radius:999px;margin-left:.4rem;padding:.05rem .45rem;font-size:.7rem;font-weight:700;display:inline-block}.pie a{color:var(--texto-suave)}.estado-aprobada{color:#075985;background:#e0f2fe}.estado+.estado{margin-left:.3rem}.pestanas{border-bottom:2px solid var(--borde);flex-wrap:wrap;gap:.25rem;margin:0 0 1rem;display:flex}.pestanas a{color:var(--texto-suave);border-bottom:3px solid #0000;margin-bottom:-2px;padding:.5rem .9rem;font-weight:600;text-decoration:none}.pestanas a[aria-current=page]{color:var(--primario);border-bottom-color:var(--rosa)}.pestanas a:focus-visible{outline:2px solid var(--celeste);outline-offset:2px}.lista-oferta,.lista-simple,.lineas-resumen,.historial{margin:0;padding:0;list-style:none}.lista-oferta li{border-bottom:1px solid var(--borde);flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;padding:.75rem 0;display:flex}.lista-oferta li:last-child{border-bottom:0}.lista-oferta li>div:first-child{flex:16rem}.lista-oferta p{margin:.2rem 0 0}.lista-oferta li.agotado{opacity:.65}.lado-oferta{flex-direction:column;align-items:flex-end;gap:.25rem;display:flex}.precio{color:var(--primario-hover);font-weight:700}.lista-simple li,.historial li{padding:.3rem 0}.historial li{border-left:3px solid var(--primario-suave);margin-bottom:.4rem;padding-left:.75rem}.historial p{margin:.2rem 0 0}.lineas-resumen li{justify-content:space-between;gap:1rem;padding:.2rem 0;display:flex}.tabla-montos{width:100%;max-width:26rem}.tabla-montos th{text-align:left;font-weight:500}.tabla-montos .fila-total th,.tabla-montos .fila-total td{font-weight:700}.resumen-postulacion{border:2px solid var(--primario-suave)}.tarjeta-destacada{border-left:4px solid var(--rosa)}.plazo{margin:.5rem 0}.plazo-urgente{color:#9d174d;font-weight:600}.montos-linea{font-variant-numeric:tabular-nums;margin:.25rem 0}.pendientes-pago{margin-bottom:1.5rem}.barra-pago{border-top:3px solid var(--primario);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex;position:sticky;bottom:0}.total-pago{margin:0;font-size:1.1rem}.fila-atencion{background:#fff1f2}.bloque-pequeno{display:block}.texto-con-saltos{white-space:pre-line}.datos{grid-template-columns:max-content 1fr;gap:.3rem 1rem;margin:0 0 1rem;display:grid}.datos dt{color:var(--texto-suave)}.datos dd{margin:0}button.enlace{color:var(--primario);cursor:pointer;background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}.formulario-postulacion fieldset{min-width:0}.formulario-postulacion legend{padding:0 .25rem;font-weight:700}@media (width<=600px){.datos{grid-template-columns:1fr}.datos dd{margin-bottom:.4rem}.lado-oferta{flex-direction:row;align-items:center}.barra-pago button{width:100%}}
