:root{--fondo:#f4f5f7;--superficie:#fff;--texto:#1d232b;--suave:#5f6b7a;--borde:#dde1e6;--acento:#003288;--acento-claro:#e6ecf7;--peligro:#b42318;--ok:#1a7f4b;--radio:10px;color:var(--texto);background:var(--fondo);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.45}*{box-sizing:border-box}body{background:var(--fondo);margin:0}h1,h2,h3,h4{margin:0;line-height:1.2}h3{color:var(--suave);text-transform:uppercase;letter-spacing:.04em;margin:1.25rem 0 .6rem;font-size:.95rem}h4{margin-bottom:.6rem;font-size:.95rem}button{font:inherit;border:1px solid var(--borde);background:var(--superficie);color:var(--texto);cursor:pointer;border-radius:8px;padding:.5rem .9rem}button:hover:not(:disabled){border-color:var(--acento)}button:disabled{opacity:.5;cursor:not-allowed}button.primario{background:var(--acento);color:#fff;border-color:var(--acento);font-weight:600}button.primario:hover:not(:disabled){filter:brightness(1.1)}button.peligro{color:var(--peligro)}button.enlace{color:var(--acento);background:0 0;border:none;padding:.3rem 0;font-weight:500}button.icono{color:var(--suave);background:0 0;border:none;padding:0 .4rem;font-size:1.2rem;line-height:1}button.icono:hover{color:var(--peligro)}button.ancho{width:100%;margin-top:1rem}input,select,textarea{font:inherit;color:inherit;border:1px solid var(--borde);background:var(--superficie);border-radius:8px;width:100%;min-width:0;padding:.5rem .65rem}input:focus,select:focus,textarea:focus{outline:2px solid var(--acento-claro);border-color:var(--acento)}input[type=checkbox]{width:auto;accent-color:var(--acento)}textarea{resize:vertical}.pagina{max-width:1200px;margin:0 auto;padding:1.5rem 1rem 4rem}.tarjeta{background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);padding:1.25rem}.tarjeta>h3:first-child{margin-top:0}.ayuda{color:var(--suave);margin:0 0 .8rem;font-size:.9rem}.vacio{text-align:center;color:var(--suave);padding:3rem 1rem}.vacio h2{color:var(--texto);margin-bottom:.5rem}.vacio .primario{margin-top:1rem}.login{place-items:center;min-height:100vh;padding:1rem;display:grid}.login form{gap:.6rem;width:100%;max-width:380px;display:grid}.login h1{margin-bottom:.1rem}.error{color:var(--peligro);margin:0;font-size:.9rem}.estado-guardado{color:var(--suave);white-space:nowrap;align-items:center;gap:.4rem;font-size:.8rem;display:inline-flex}.estado-guardado i{background:var(--ok);border-radius:50%;width:.5rem;height:.5rem}.estado-guardado.pendiente i,.estado-guardado.guardando i{background:#d4a017}.estado-guardado.error{color:var(--peligro)}.estado-guardado.error i{background:var(--peligro)}.estado-guardado .enlace{font-size:.8rem}.encabezado-acciones{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:1rem;display:flex}.usuario{color:var(--suave);align-items:center;gap:.5rem;font-size:.85rem;display:inline-flex}.aviso{border-radius:var(--radio);background:#fff7e0;border:1px solid #f0d58a;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem;display:flex}.aviso-inactividad{z-index:10;background:#0f172a73;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.aviso-inactividad .tarjeta{gap:.75rem;max-width:400px;display:grid}.aviso-inactividad p{margin:0}.etiqueta.alerta{color:#8a5a00;background:#fff4d6}.aviso.ok{color:var(--ok);background:#eef7f1;border-color:#b9e0c6}.clave-copiable{flex-shrink:0;align-items:center;gap:.5rem;display:inline-flex}.clave-copiable code{letter-spacing:.04em;color:var(--texto);-webkit-user-select:all;user-select:all;background:#fff;border:1px solid #b9e0c6;border-radius:6px;padding:.3rem .6rem;font-size:1.05rem;font-weight:700}.acciones-fila{white-space:nowrap;justify-content:flex-end;gap:.4rem;display:flex}.acciones-fila button{padding:.35rem .6rem;font-size:.85rem}.bloque-texto{color:var(--suave);display:block}.seccion-precios{margin-bottom:1rem}.seccion-precios h2{margin-bottom:.25rem;font-size:1.1rem}.tabla tr.cambiado td{background:#fff8e1}.tabla .detalle{color:var(--suave);font-size:.82rem}form.tarjeta+form.tarjeta,section.tarjeta+form.tarjeta{margin-top:1rem}.cuenta-pagina{align-content:start;gap:1rem;max-width:560px;display:grid}.cuenta-pagina .volver{justify-self:start}.cuenta-pagina>section.tarjeta+form.tarjeta{margin-top:0}.perfil{align-items:center;gap:1rem;display:flex}.perfil h1{overflow-wrap:anywhere;font-size:1.3rem}.perfil .correo{color:var(--suave);overflow-wrap:anywhere;margin:.15rem 0 0}.perfil .rol{color:var(--suave);flex-wrap:wrap;align-items:center;gap:.5rem;margin:.6rem 0 0;font-size:.85rem;display:flex}.perfil .rol .etiqueta{margin:0}.avatar{background:var(--acento);color:#fff;border-radius:50%;flex-shrink:0;place-items:center;width:3.5rem;height:3.5rem;font-size:1.5rem;font-weight:700;display:grid}.clave-form{gap:.9rem;display:grid}.clave-form h2{font-size:1.1rem}.clave-form .ayuda{margin:-.4rem 0 0}.con-ojo{display:block;position:relative}.con-ojo input{padding-right:5.5rem}.ojo{background:var(--acento-claro);color:var(--acento);border:none;padding:.3rem .6rem;font-size:.8rem;font-weight:600;position:absolute;top:50%;right:.35rem;transform:translateY(-50%)}.requisitos{background:var(--fondo);color:var(--suave);border-radius:8px;grid-template-columns:1fr 1fr;gap:.45rem 1rem;margin:0;padding:.75rem .9rem;font-size:.85rem;list-style:none;display:grid}.requisitos li{align-items:center;gap:.5rem;display:flex}.requisitos i{border:1.5px solid var(--borde);border-radius:50%;place-items:center;width:1.1rem;height:1.1rem;font-size:.7rem;font-style:normal;font-weight:800;display:grid}.requisitos li.cumple{color:var(--ok)}.requisitos li.cumple i{background:var(--ok);border-color:var(--ok);color:#fff}@media (width<=480px){.requisitos{grid-template-columns:1fr}}.portal{grid-template-columns:268px minmax(0,1fr);min-height:100vh;display:grid}.portal-barra{display:none}.portal-menu{background:var(--superficie);border-right:1px solid var(--borde);flex-direction:column;gap:1rem;height:100vh;padding:1.1rem .75rem;display:flex;position:sticky;top:0;overflow-y:auto}.portal-logo{width:100%;max-width:210px;height:auto;margin:.2rem .5rem .4rem}.portal-menu nav{flex:1;align-content:start;gap:1rem;display:grid}.grupo-menu{gap:.15rem;display:grid}.titulo-grupo{letter-spacing:.06em;text-transform:uppercase;color:var(--suave);margin:0 0 .25rem .6rem;font-size:.72rem;font-weight:700}.item-menu{width:100%;color:var(--texto);text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:.65rem;padding:.55rem .65rem;font-weight:500;display:flex}.item-menu:hover:not(.deshabilitado){background:var(--fondo)}.item-menu.activo{background:var(--acento-claro);color:var(--acento);font-weight:700}.item-menu.deshabilitado{color:#9aa4b0;cursor:default}.item-menu em{background:var(--fondo);color:var(--suave);border-radius:999px;margin-left:auto;padding:.05rem .4rem;font-size:.68rem;font-style:normal;font-weight:700}.icono-menu{flex-shrink:0;width:1.15rem;height:1.15rem}.portal-usuario{border-top:1px solid var(--borde);gap:.15rem;padding-top:.75rem;display:grid}.quien{align-items:center;gap:.6rem;min-width:0;padding:.3rem .6rem .5rem;display:flex}.quien>span:last-child{flex-direction:column;min-width:0;display:flex}.quien strong{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.quien small{color:var(--suave);font-size:.75rem}.avatar.chico{width:2rem;height:2rem;font-size:.9rem}.portal-contenido{min-width:0}.velo{display:none}@media (width<=900px){.portal{grid-template-columns:minmax(0,1fr)}.portal-barra{z-index:5;background:var(--superficie);border-bottom:1px solid var(--borde);align-items:center;gap:.75rem;padding:.6rem 1rem;display:flex;position:sticky;top:0}.portal-barra img{width:auto;height:26px}.hamburguesa{place-items:center;padding:.35rem;display:grid}.portal-menu{z-index:20;width:min(280px,85vw);transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-100%);box-shadow:0 0 24px #00000026}.menu-abierto .portal-menu{transform:none}.velo{z-index:15;background:#0f172a59;display:block;position:fixed;inset:0}}@media print{.portal{display:block}}.estado-cot{color:#4b5563;background:#eef0f3;border-radius:999px;padding:.05rem .5rem;font-size:.72rem;font-weight:700;display:inline-block}.estado-cot.enviada{color:#1d4ed8;background:#e6efff}.estado-cot.aprobada{color:#15803d;background:#e3f5ea}.estado-cot.rechazada{color:#b42318;background:#fdecea}.filtros{flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem;display:flex}.filtros button{border-radius:999px;align-items:center;gap:.4rem;padding:.35rem .75rem;font-size:.85rem;display:inline-flex}.filtros button span{color:var(--suave);font-size:.75rem}.filtros button.activo{background:var(--acento);border-color:var(--acento);color:#fff}.filtros button.activo span{color:#dbe4f5}.centrado{text-align:center;padding:2rem 0}.barra-acciones{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.selector-estado{color:var(--suave);align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;display:flex}.selector-estado select{width:auto;padding:.45rem .6rem;font-weight:600}.selector-estado.aprobada select{color:#15803d;border-color:#86c59d}.selector-estado.enviada select{color:#1d4ed8;border-color:#93b4f0}.selector-estado.rechazada select{color:#b42318;border-color:#f1a7a0}.aviso.conflicto{background:#fff4e5;border-color:#f5c27a;flex-wrap:wrap;align-items:flex-start;margin-bottom:1rem}.aviso.conflicto p{margin:.25rem 0 0}.acciones-conflicto{flex-wrap:wrap;gap:.5rem;display:flex}.selector-cliente{position:relative}.sugerencias{z-index:10;background:var(--superficie);border:1px solid var(--borde);border-radius:8px;margin:0;padding:.3rem;list-style:none;position:absolute;top:4.2rem;left:0;right:0;box-shadow:0 8px 20px #0000001a}.sugerencias button{text-align:left;border:none;flex-direction:column;width:100%;padding:.45rem .6rem;display:flex}.sugerencias button:hover{background:var(--fondo)}.sugerencias small{color:var(--suave)}.estado-cliente{color:var(--suave);margin:.15rem 0 0;font-size:.8rem}.estado-cliente .ok{color:var(--ok)}.estado-cliente .enlace{padding:0;font-size:.8rem}.ficha-cliente{align-content:start;gap:1rem;max-width:900px;display:grid}.ficha-cliente .volver{justify-self:start}.ficha-cliente>section.tarjeta,.ficha-cliente>form.tarjeta{margin-top:0}.ficha-titulo{align-items:center;gap:.8rem;margin-bottom:1rem;display:flex}.ficha-titulo h1{font-size:1.3rem}.acciones-ficha{justify-content:flex-end;gap:.6rem;margin-top:.75rem;display:flex}.fila.fila-cliente{grid-template-columns:auto 1fr auto}.lista.compacta .fila{grid-template-columns:6rem 1fr auto}.encabezado{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.25rem;display:flex}.logo-lista{width:260px;max-width:100%;height:auto;margin-bottom:.6rem;display:block}.logo-login{width:100%;height:auto;margin-bottom:.8rem}.buscador{margin-bottom:1rem}.lista{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.lista li{background:var(--superficie);border:1px solid var(--borde);border-radius:var(--radio);align-items:stretch;display:flex;overflow:hidden}.fila{text-align:left;border:none;border-radius:0;flex:1;grid-template-columns:6rem 1fr auto;align-items:center;gap:1rem;min-width:0;padding:.9rem 1rem;display:grid}.fila .num{color:var(--acento);font-weight:700}.fila .cliente,.fila .meta{flex-direction:column;min-width:0;display:flex}.fila .cliente small,.fila .meta small{color:var(--suave)}.fila .meta{text-align:right}.lista .acciones{border-left:1px solid var(--borde);flex-direction:column;display:flex}.lista .acciones button{border:none;border-radius:0;flex:1;font-size:.85rem}.lista .acciones button+button{border-top:1px solid var(--borde)}.barra{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.barra .titulo{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:.4rem;display:flex}.barra .titulo small,.barra .titulo span{color:var(--suave)}.pestanas{border-bottom:1px solid var(--borde);gap:.25rem;margin-bottom:1rem;display:flex;overflow-x:auto}.pestanas button{color:var(--suave);white-space:nowrap;background:0 0;border:none;border-bottom:3px solid #0000;border-radius:0;padding:.65rem 1rem;font-weight:500}.pestanas button.activa{color:var(--acento);border-bottom-color:var(--acento)}.columnas{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:1.25rem;display:grid}.contenido{grid-template-columns:minmax(0,1fr);gap:.8rem;min-width:0;display:grid}.resumen{gap:.8rem;display:grid;position:sticky;top:1rem}.rejilla{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.75rem;margin-bottom:.75rem;display:grid}.rejilla.dos{grid-template-columns:1fr 1fr}.rejilla.tres{grid-template-columns:repeat(3,1fr)}.campo{flex-direction:column;gap:.3rem;margin-bottom:.25rem;display:flex}.campo>span,.campo>label{color:var(--suave);font-size:.8rem;font-weight:600}.campo.largo{grid-column:span 2}.numero{align-items:center;gap:.3rem;display:flex}.numero input{text-align:right}.numero em{color:var(--suave);white-space:nowrap;font-size:.85rem;font-style:normal}.con-check{align-items:center;gap:.5rem;display:flex}.interruptor{border:1px solid var(--borde);border-radius:8px;margin-bottom:.9rem;display:inline-flex;overflow:hidden}.interruptor button{border:none;border-radius:0;padding:.45rem 1.1rem}.interruptor button.activa{background:var(--acento);color:#fff}.cifras{grid-template-columns:1fr auto;gap:.35rem 1rem;margin:0;display:grid}.cifras dt{color:var(--suave)}.cifras dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.cifras .fuerte{color:var(--texto);border-top:1px solid var(--borde);padding-top:.35rem;font-weight:700}.cifras .total{color:var(--acento);border-top:2px solid var(--acento);padding-top:.4rem;font-size:1.1rem;font-weight:800}.margen{color:var(--ok);background:#eef7f1;border-radius:8px;margin:.9rem 0 0;padding:.6rem .75rem;font-size:.88rem}.margen.negativo{color:var(--peligro);background:#fdecea}.linea-texto{gap:.4rem;margin-bottom:.4rem;display:flex}.notas{gap:.5rem;display:grid}.nota{cursor:pointer;align-items:flex-start;gap:.6rem;font-size:.88rem;display:flex}.nota input{margin-top:.2rem}.agregar{border:2px dashed var(--borde);border-radius:var(--radio);flex-wrap:wrap;align-items:center;gap:.6rem;padding:1rem;display:flex}.grupo-ventanas{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.grupo-ventanas span{color:var(--suave);margin-right:.2rem;font-weight:500}.ayuda-agregar{color:var(--suave);flex-basis:100%}.item{padding:0}.item>header{cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.9rem;padding:.9rem 1rem;display:grid}.item>header .num{background:var(--acento-claro);width:2rem;height:2rem;color:var(--acento);border-radius:50%;place-items:center;font-weight:700;display:grid}.item .desc{flex-direction:column;min-width:0;display:flex}.item .desc strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.item .desc small,.item .precio small{color:var(--suave)}.item .precio{text-align:right;flex-direction:column;display:flex}.etiqueta{background:var(--acento-claro);color:var(--acento);border-radius:999px;margin-left:.5rem;padding:0 .45rem;font-size:.75rem;font-weight:600;display:inline-block}.chevron{color:var(--suave)}.item.abierto>header{border-bottom:1px solid var(--borde)}.item .cuerpo{padding:1rem}.rejilla.medidas{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.dato{flex-direction:column;justify-content:flex-end;gap:.3rem;padding-bottom:.6rem;display:flex}.dato span{color:var(--suave);font-size:.8rem;font-weight:600}.bloque{border-top:1px solid var(--borde);margin-top:.5rem;padding-top:1rem}.capa{background:var(--fondo);border-radius:8px;gap:.4rem;padding:.75rem;display:grid}.capa>span{font-size:.85rem;font-weight:600}.subtotal{text-align:right;color:var(--suave);margin:.5rem 0 0}.subtotal strong{color:var(--texto)}.desglose .cifras{max-width:360px;margin-left:auto}.acciones-item{border-top:1px solid var(--borde);flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:1rem;padding-top:1rem;display:flex}.tabla{border-collapse:collapse;width:100%;font-size:.9rem}.tabla th{text-align:left;color:var(--suave);border-bottom:1px solid var(--borde);padding:.4rem;font-size:.78rem;font-weight:600}.tabla td{vertical-align:middle;border-bottom:1px solid #eef0f3;padding:.3rem .4rem}.tabla .n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.tabla td.n .numero{min-width:6rem}.tabla input.ref{width:6rem}.tabla tr.automatica td{color:var(--suave);background:#fafbfc}.por-area{color:var(--suave);align-items:center;gap:.25rem;margin-right:.5rem;font-size:.8rem;display:inline-flex}.cantidad-mo{justify-content:flex-end;align-items:center;display:flex}.indirectos tr.activo td:first-child{font-weight:600}.indirectos .opcion{gap:.4rem;display:flex}.indirectos .corto{max-width:9rem}.indirectos .detalle{color:var(--suave);white-space:normal;font-size:.82rem}.indirectos tfoot td{border:none;padding-top:.7rem;font-weight:700}.documento-pantalla{padding:1rem}.documento-pantalla>.barra{max-width:820px;margin:0 auto 1rem}.documento-pantalla .interruptor{margin:0}.hoja{background:#fff;max-width:820px;margin:0 auto;padding:2.2rem 2.5rem;font-size:.88rem;box-shadow:0 2px 12px #00000014}.membrete{border-bottom:3px solid var(--acento);justify-content:space-between;gap:1rem;margin-bottom:1.2rem;padding-bottom:.9rem;display:flex}.logo{align-self:center;width:330px;max-width:100%;height:auto}.contacto{text-align:right;color:var(--suave);flex-direction:column;font-size:.78rem;display:flex}.fecha{margin:0 0 .9rem}.destinatario p{margin:.1rem 0}.destinatario span{width:5.5rem;color:var(--suave);display:inline-block}.titulo-doc{text-align:center;letter-spacing:.04em;margin:1.2rem 0 .9rem;font-size:1.15rem}.condiciones{grid-template-columns:9.5rem 1fr;gap:.2rem .8rem;margin:.8rem 0;display:grid}.condiciones dt{font-weight:700}.condiciones dd{margin:0}.alcance{margin:.4rem 0 1rem;padding-left:1.1rem}.desplazable{overflow-x:auto}.items-doc{border-collapse:collapse;width:100%;margin:1rem 0 .5rem}.items-doc th{background:var(--acento);color:#fff;text-align:left;padding:.45rem .5rem;font-size:.78rem}.items-doc td{border-bottom:1px solid var(--borde);vertical-align:top;padding:.45rem .5rem}.items-doc .n{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.items-doc .medida{white-space:nowrap}.totales{border-collapse:collapse;min-width:55%;margin-left:auto}.totales th{text-align:right;padding:.25rem 1rem;font-weight:500}.totales td{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;padding:.25rem .5rem}.totales .total th,.totales .total td{border-top:2px solid var(--acento);color:var(--acento);padding-top:.45rem;font-weight:800}.firma{break-inside:avoid;flex-direction:column;margin-top:2.5rem;display:flex}.firma p{margin:0 0 2.5rem}.linea-firma{border-top:1px solid var(--texto);width:220px;margin-bottom:.3rem}.firma span{color:var(--suave);font-size:.82rem}.notas-doc{color:#3d4652;margin-top:1.8rem;font-size:.76rem}.notas-doc h2{margin-bottom:.4rem;font-size:.85rem}.notas-doc ul{margin:0;padding-left:1rem}.notas-doc li{margin-bottom:.25rem}@media (width<=900px){.columnas{grid-template-columns:minmax(0,1fr)}.resumen{position:static}}@media (width<=640px){.pagina{padding:1rem 1rem 3rem}.barra{flex-wrap:wrap}.barra .titulo{order:-1;justify-content:flex-start;width:100%}.fila{grid-template-columns:1fr;gap:.3rem}.fila .meta{text-align:left}.campo.largo{grid-column:auto}.item>header{grid-template-columns:auto minmax(0,1fr) auto}.item .chevron{display:none}.bloque{overflow-x:auto}.hoja{padding:1.2rem}.membrete{flex-direction:column}.contacto{text-align:left}.condiciones{grid-template-columns:1fr}.documento-pantalla{padding:0}.documento-pantalla>.barra{padding:.75rem 1rem 0}.items-doc{font-size:.75rem}}@page{size:letter;margin:14mm}@media print{:root,body,.documento-pantalla{background:#fff;padding:0}.no-imprimir{display:none!important}.hoja{box-shadow:none;max-width:none;padding:0}.items-doc th{-webkit-print-color-adjust:exact;print-color-adjust:exact}.items-doc tr{break-inside:avoid}}.estado-cot.tono-gris{color:#4b5563;background:#eef0f3}.estado-cot.tono-azul{color:#1d4ed8;background:#e6efff}.estado-cot.tono-ambar{color:#8a5a00;background:#fff4d6}.estado-cot.tono-verde{color:#15803d;background:#e3f5ea}.estado-cot.tono-rojo{color:#b42318;background:#fdecea}.selector-estado.tono-azul select{color:#1d4ed8;border-color:#93b4f0}.selector-estado.tono-ambar select{color:#8a5a00;border-color:#f0d58a}.selector-estado.tono-verde select{color:#15803d;border-color:#86c59d}.selector-estado.tono-rojo select{color:#b42318;border-color:#f1a7a0}.positivo{color:var(--ok)}.negativo{color:var(--peligro)}.avance{background:#e5e7eb;border-radius:999px;width:9rem;height:.45rem;margin-left:auto;display:block;overflow:hidden}.avance i{background:var(--acento);height:100%;display:block}.ficha-obra>.aviso,.ficha-obra>.error{margin-bottom:1rem}.ficha-obra .contenido>.tarjeta h3:first-child,.ficha-obra .resumen>.tarjeta h3:first-child{margin-top:0}.ficha-obra>section.tarjeta,.ficha-obra>fieldset.tarjeta{margin-bottom:1rem}fieldset.tarjeta{min-width:0;margin:0}fieldset.tarjeta:disabled{opacity:.85}.checklist{gap:.35rem;margin:0 0 .5rem;padding:0;list-style:none;display:grid}.checklist li{border:1px solid var(--borde);border-radius:8px;padding:.5rem .6rem}.checklist label,.checklist li>span{cursor:pointer;align-items:flex-start;gap:.6rem;display:flex}.checklist label>span,.checklist li>span{flex-direction:column;display:flex}.checklist small{color:var(--suave)}.checklist li.hecho strong{color:var(--suave);text-decoration:line-through}.checklist.solo-lectura li>span{cursor:default}.bitacora{gap:.6rem;margin:.75rem 0 0;padding:0;list-style:none;display:grid}.bitacora li{border-left:3px solid var(--acento-claro);padding-left:.75rem}.bitacora small{color:var(--suave)}.bitacora p{white-space:pre-wrap;margin:.15rem 0 0}.mini-lista{gap:.45rem;margin:0 0 .75rem;padding:0;font-size:.88rem;list-style:none;display:grid}.mini-lista li{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.mini-lista li strong{margin-left:auto}.mini-lista .enlace{padding:0;font-weight:700}.nuevo-desde{margin-bottom:1rem}.nuevo-desde .lista{margin-bottom:.75rem}.acciones-ficha.inicio{justify-content:flex-start;margin:0 0 1rem}.kpis{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.75rem;margin-bottom:1rem;display:grid}.kpi{gap:.3rem;display:grid}.kpi span{color:var(--suave);font-size:.8rem;font-weight:600}.kpi strong{font-variant-numeric:tabular-nums;font-size:1.35rem}.tabla-finanzas td{vertical-align:top}.firma-pad canvas{aspect-ratio:3;border:2px dashed var(--borde);touch-action:none;cursor:crosshair;background:#fff;border-radius:8px;width:100%;max-width:600px;display:block}.firma-pad.deshabilitado canvas{cursor:default;border-style:solid}.firma-acciones{max-width:600px;color:var(--suave);justify-content:space-between;align-items:center;margin-top:.3rem;font-size:.8rem;display:flex}.firmas-acta{break-inside:avoid;grid-template-columns:1fr 1fr;gap:2rem;display:grid}.imagen-firma{border-bottom:1px solid var(--texto);width:220px;height:auto;margin-bottom:.3rem}.firmas-acta .firma p{margin-bottom:.5rem}.firmas-acta .linea-firma{margin-top:4.5rem}@media (width<=640px){.firmas-acta{grid-template-columns:1fr}.avance{margin-left:0}}.encabezado-seccion{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.encabezado-seccion h3{margin:0}.importar,.editar-producto{background:var(--fondo);border-radius:8px;margin-bottom:.9rem;padding:.9rem}.importar textarea{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem}.filtros-catalogo{gap:.5rem;margin-bottom:.75rem;display:flex}.filtros-catalogo .buscador{margin:0}.filtros-catalogo select{width:auto}.tabla tr.inactivo td{color:var(--suave);text-decoration:line-through}.catalogo{margin-bottom:1rem}.tabla td select[aria-label="Producto del catálogo"]{min-width:14rem}.tabla td input:not(.ref){min-width:9rem}.corte-columnas{gap:1.25rem;display:grid}.corte-entrada{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1rem;display:grid}.corte-ajustes{grid-column:1/-1}@media (width<=760px){.corte-entrada{grid-template-columns:minmax(0,1fr)}}.corte-salida{align-content:start;gap:1rem;display:grid}.corte-salida .plan-corte{justify-items:center;display:grid}.corte-salida .plan-cabecera{width:100%}.corte-tabla th,.corte-tabla td{padding:.35rem .4rem}.corte-tabla td.centro,.corte-tabla th{text-align:center}.corte-tabla td .ref{width:100%;min-width:0}.corte-tabla td.n .numero,.corte-tabla .numero{min-width:0}.corte-tabla .numero{align-items:center;gap:.15rem;display:inline-flex}.corte-tabla .numero input{width:3.4rem;min-width:0}.corte-tabla .numero em{color:var(--suave);font-size:.72rem}.corte-tabla .quitar{color:var(--suave);cursor:pointer;background:0 0;border:none;padding:0 .25rem;font-size:1.2rem;line-height:1}.corte-tabla .quitar:hover{color:var(--peligro)}.opcion-veta{justify-content:space-between}.opcion-veta input{align-self:flex-start}.tile-corte{border:1px solid var(--borde);border-radius:var(--radio);background:var(--superficie);flex-direction:column;gap:.15rem;padding:.75rem .85rem;display:flex}.tile-corte strong{color:var(--acento);font-size:1.4rem}.tile-corte span{color:var(--suave);font-size:.82rem}.plan-corte .plan-cabecera{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.6rem;display:flex}.plan-corte .plan-cabecera h3{margin:0}.plan-corte .veces{color:var(--acento)}.lienzo-corte{border-radius:4px;max-width:100%;height:auto;display:block}.medida-lamina{margin:.4rem 0 0;font-size:.8rem}.solo-imprimir{display:none!important}.titulo-corte{justify-content:space-between;align-items:baseline;gap:1rem;margin:.25rem 0 1rem;display:flex}.titulo-corte h2{margin:0}@media print{.membrete.solo-imprimir,.titulo-corte.solo-imprimir{display:flex!important}.corte-columnas,.corte-salida{display:block}.corte-salida>*{margin-bottom:1.1rem}.corte .rejilla{page-break-inside:avoid}.plan-corte{break-inside:avoid;page-break-inside:avoid;border:none;padding:0}.lienzo-corte{max-height:11cm;max-width:14cm!important}.tile-corte{padding:.5rem .6rem}.tile-corte strong{font-size:1.15rem}.tile-corte,.lienzo-corte rect,.lienzo-corte text{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.login .enlace.centrado{color:var(--acento);cursor:pointer;background:0 0;border:none;margin:.2rem auto 0;font-size:.9rem;display:block}.login .enlace.centrado:hover{text-decoration:underline}.login .verificacion-2fa{gap:.6rem;width:100%;max-width:400px;display:grid}.inscribir-2fa{gap:.6rem;display:grid}.pasos-2fa{gap:.3rem;margin:0;padding-left:1.2rem;font-size:.92rem;display:grid}.qr-2fa{border:1px solid var(--borde);border-radius:var(--radio);background:#fff;justify-self:center;width:180px;height:180px;padding:8px}.codigo-2fa{letter-spacing:.4em;text-align:center;font-variant-numeric:tabular-nums;font-size:1.6rem}.correo-2fa{overflow-wrap:anywhere;margin:0;font-weight:600}.secreto-2fa code{overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.estado-2fa{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem;display:flex}
