:root{--color-magenta:#fb0793;--color-cyan:#00bbc1;--color-bg:#fff;--color-bg-subtle:#f7f7f8;--color-text:#1a1a1a;--color-text-muted:#767676;--color-border:#e5e4e7;--font-heading:"Fjalla One", system-ui, sans-serif;--font-body:"Noto Sans", system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--color-text);background:var(--color-bg);font:16px/1.5 var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:before,:after{box-sizing:border-box}body{margin:0}#root{min-height:100svh}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--color-text);margin:0;font-weight:400}button{font-family:var(--font-body)}@media (width<=900px){input,select,textarea{font-size:16px!important}select{min-width:0;max-width:100%}.panel-content .fincas-form-sticky,.panel-content .contactos-form-sticky,.panel-content .arquitectos-form-sticky,.panel-content .presupuestos-eco-form-sticky{position:static}}.input-mayusculas{text-transform:uppercase}.loading-screen{background:var(--color-bg-subtle);justify-content:center;align-items:center;min-height:100svh;display:flex}.loading-screen p{color:var(--color-text-muted);font-size:15px}.login-page{background:var(--color-bg-subtle);justify-content:center;align-items:center;min-height:100svh;padding:24px;display:flex}.login-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;flex-direction:column;gap:16px;width:100%;max-width:360px;padding:32px;display:flex}.login-logo{width:100%;max-width:200px;height:auto;margin:0 auto 8px;display:block}.login-card h1{text-align:center;margin-bottom:8px;font-size:22px}.login-field{color:var(--color-text-muted);flex-direction:column;gap:6px;font-size:14px;font-weight:500;display:flex}.login-field input{font-family:var(--font-body);color:var(--color-text);border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;padding:10px 12px;font-size:15px}.login-field input:focus{border-color:var(--color-magenta);outline:none}.login-error{color:var(--color-magenta);margin:0;font-size:14px}.login-submit{font-family:var(--font-body);color:#fff;background:var(--color-magenta);cursor:pointer;border:none;border-radius:6px;padding:12px;font-size:15px;font-weight:600;transition:opacity .15s}.login-submit:hover{opacity:.92}.login-submit:disabled{opacity:.6;cursor:not-allowed}.login-info{color:var(--color-text);margin:0;font-size:14px;line-height:1.5}.login-enlace{font-family:var(--font-body);color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;align-self:center;padding:0;font-size:13px}.login-enlace:hover{color:var(--color-magenta);text-decoration:underline}.login-ok{color:#1c6b47;margin:0;font-size:14px}.ir-exp{padding:14px 16px 6px;position:relative}.ir-exp-campo{box-sizing:border-box;border:1px solid var(--color-border);width:100%;font-family:var(--font-body);background:var(--color-bg-subtle);color:var(--color-text);border-radius:8px;padding:9px 12px;font-size:14px}.ir-exp-campo:focus{border-color:var(--color-cyan);background:var(--color-bg);outline:none;box-shadow:0 0 0 3px #00bbc126}.ir-exp-lista{z-index:50;background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;max-height:60vh;padding:6px;position:absolute;top:calc(100% - 2px);left:12px;right:12px;overflow-y:auto;box-shadow:0 10px 28px #0000001f}.ir-exp-titulo{letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-muted);margin:4px 8px 6px;font-size:11.5px}.ir-exp-nada{color:var(--color-text-muted);margin:8px;font-size:13px}.ir-exp-item{text-align:left;cursor:pointer;width:100%;font-family:var(--font-body);color:var(--color-text);background:0 0;border:none;border-radius:7px;align-items:flex-start;gap:10px;padding:8px;display:flex}.ir-exp-item-marcado{background:var(--color-bg-subtle)}.ir-exp-num{min-width:34px;color:var(--color-magenta);flex-shrink:0;font-size:14px;font-weight:600}.ir-exp-texto{flex-direction:column;min-width:0;display:flex}.ir-exp-lugar{font-size:13.5px;line-height:1.3}.ir-exp-inc{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.3;overflow:hidden}.ir-exp-arch{color:var(--color-text-muted);flex-shrink:0;margin-left:auto;font-size:11px}@media (width<=900px){.ir-exp-campo{padding:11px 12px;font-size:16px}}.sidebar{background:var(--color-bg);border-right:1px solid var(--color-border);flex-direction:column;flex-shrink:0;align-self:flex-start;width:240px;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-logo{border-bottom:1px solid var(--color-border);align-items:center;gap:12px;padding:24px 20px;display:flex}.sidebar-logo img{flex:1;width:100%;min-width:0;height:auto;display:block}.sidebar-cerrar{display:none}.sidebar-nav{flex:1;padding:12px 0 20px}.sidebar-grupo+.sidebar-grupo{border-top:1px solid var(--color-border);margin-top:14px;padding-top:14px}.sidebar-grupo-titulo{font-family:var(--font-heading);letter-spacing:.06em;text-transform:uppercase;color:var(--color-text);align-items:center;gap:8px;margin:0;padding:0 24px 8px;font-size:16px;font-weight:400;display:flex}.sidebar-grupo-titulo:before{content:"";background:var(--color-magenta);border-radius:2px;width:4px;height:16px}.sidebar-nav ul{flex-direction:column;gap:1px;margin:0;padding:0 12px 0 20px;list-style:none;display:flex}.sidebar-link{text-align:left;width:100%;font-family:var(--font-body);color:var(--color-text);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:8px 14px;font-size:14.5px;font-weight:400;transition:background-color .15s,color .15s}.sidebar-link:hover{background:var(--color-bg-subtle)}.sidebar-link-active{background:var(--color-magenta);color:#fff}.sidebar-link-active:hover{background:var(--color-magenta)}.sidebar-footer{border-top:1px solid var(--color-border);padding:12px}.sidebar-logout{text-align:left;width:100%;font-family:var(--font-body);color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:10px 14px;font-size:14px;font-weight:500;transition:background-color .15s,color .15s}.sidebar-logout:hover{background:var(--color-bg-subtle);color:var(--color-magenta)}@media (width<=900px){.sidebar{z-index:40;visibility:hidden;border-right:none;align-self:auto;width:min(290px,85vw);height:100svh;transition:transform .22s,visibility 0s linear .22s;position:fixed;top:0;bottom:0;left:0;transform:translate(-105%);box-shadow:4px 0 24px #00000026}.sidebar-abierta{visibility:visible;transition:transform .22s,visibility;transform:translate(0)}.sidebar-logo{padding:14px 12px 14px 20px}.sidebar-logo img{max-width:170px}.sidebar-cerrar{width:44px;height:44px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;margin-left:auto;font-size:20px;display:flex}.sidebar-link{padding:12px 14px;font-size:16px}.sidebar-logout{padding:14px;font-size:15px}}.panel-layout{background:var(--color-bg-subtle);min-height:100svh;display:flex}.panel-content{flex:1;min-width:0;padding:32px 40px}.panel-movil-cabecera,.panel-movil-fondo{display:none}@media (width<=900px){.panel-layout{flex-direction:column;padding-top:56px}.panel-movil-cabecera{z-index:20;background:var(--color-bg);border-bottom:1px solid var(--color-border);align-items:center;gap:12px;height:56px;padding:0 12px;display:flex;position:fixed;top:0;left:0;right:0}.panel-movil-menu{cursor:pointer;background:0 0;border:none;border-radius:8px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;display:flex}.panel-movil-menu span{background:var(--color-text);border-radius:1px;width:22px;height:2px;display:block}.panel-movil-menu:active{background:var(--color-bg-subtle)}.panel-movil-titulo{min-width:0;font-family:var(--font-heading);letter-spacing:.02em;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:19px;overflow:hidden}.panel-movil-fondo{z-index:30;background:#0006;display:block;position:fixed;inset:0}.panel-content{padding:16px 16px 48px}}.eco2-page{--ink:#1a1a1a;--ink-soft:#6e6e6e;--rule:#dddce1;--rule-soft:#edecef;--wash:#f6f5f7;--magenta:#fb0793;--blue:#002cc0;--cian:#00bbc1;box-sizing:border-box;width:210mm;min-height:297mm;color:var(--ink);background:#fff;flex-direction:column;font-family:Noto Sans,sans-serif;display:flex;position:relative;overflow:visible}.eco2-page,.eco2-page *{box-sizing:border-box}.eco2-content{flex-direction:column;flex:1;padding:12mm 13mm 0;display:flex}.eco2-header{justify-content:space-between;align-items:flex-start;display:flex}.eco2-header-left{align-items:flex-start;gap:3mm;display:flex}.eco2-symbol{object-fit:contain;flex-shrink:0;width:15mm;height:15mm}.eco2-brand-name{color:var(--ink);margin:0;font-family:Fjalla One,sans-serif;font-size:23pt;line-height:1}.eco2-brand-tagline{text-transform:uppercase;letter-spacing:.13em;color:var(--ink-soft);margin:1.8mm 0 0;font-size:6.6pt}.eco2-header-right{text-align:right;flex-shrink:0}.eco2-doc-kind{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);margin:0;font-size:7pt}.eco2-doc-numero{color:var(--blue);margin:1mm 0;font-family:Fjalla One,sans-serif;font-size:26pt;line-height:1}.eco2-doc-meta{color:var(--ink-soft);margin:0;font-size:7.6pt;line-height:1.4}.eco2-spectrum{background:linear-gradient(90deg,#fb0793,#a100d9,#002cc0,#00bbc1,#35bb02,#ffd400,#fd8401,#fc4601);height:2.2mm;margin:4mm -13mm}.eco2-header-compact+.eco2-strip-fine{width:auto;margin:3.5mm -13mm 4mm}.eco2-strip-fine{background:linear-gradient(90deg,#fb0793,#a100d9,#002cc0,#00bbc1,#35bb02,#ffd400,#fd8401,#fc4601);width:100%;height:1.1mm}.eco2-header-compact{justify-content:space-between;align-items:center;display:flex}.eco2-header-compact-left{align-items:center;gap:2.5mm;display:flex}.eco2-symbol-sm{object-fit:contain;flex-shrink:0;width:8.5mm;height:8.5mm}.eco2-brand-name-sm{color:var(--ink);font-family:Fjalla One,sans-serif;font-size:12pt}.eco2-header-compact-right{text-align:right}.eco2-header-compact-line{color:var(--ink-soft);margin:0;font-size:7.6pt;line-height:1.4}.eco2-parties{grid-template-columns:1fr 1.25fr;gap:6mm;margin-top:6mm;display:grid}.eco2-party-label{text-transform:uppercase;letter-spacing:.17em;color:var(--blue);margin:0 0 1.5mm;font-size:6.6pt;font-weight:700}.eco2-party-line{color:var(--ink);margin:0;font-size:8pt;line-height:1.4}.eco2-party-line+.eco2-party-label{margin-top:2.5mm}.eco2-objeto{border-left:1.1mm solid var(--magenta);background:linear-gradient(90deg,#fb079312,#fb079300);margin-top:6mm;padding:3mm 4mm 3mm 5mm}.eco2-objeto-title{color:var(--ink);margin:0 0 1.5mm;font-family:Fjalla One,sans-serif;font-size:13.5pt}.eco2-objeto-text{color:var(--ink);margin:0;font-size:8.5pt;line-height:1.4}.eco2-objeto-dato{color:var(--ink);margin:1.2mm 0 0;font-size:8.5pt;line-height:1.4}.eco2-objeto-text+.eco2-objeto-dato{margin-top:2mm}.eco2-observaciones{border-left:1.1mm solid var(--magenta);margin-top:5mm;padding:2.5mm 4mm 2.5mm 5mm}.eco2-observaciones-title{color:var(--ink);margin:0 0 1mm;font-family:Fjalla One,sans-serif;font-size:11pt}.eco2-observaciones-linea{color:var(--ink);margin:.8mm 0 0;font-size:8.5pt;line-height:1.4}.eco2-works-title{text-transform:uppercase;color:var(--ink);margin:6mm 0 1mm;font-family:Fjalla One,sans-serif;font-size:13.5pt}.eco2-work-item{border-bottom:1px solid var(--rule-soft);grid-template-columns:11mm 1fr;padding:2.6mm 0;display:grid}.eco2-work-item:last-child{border-bottom:none}.eco2-work-item-solo{grid-template-columns:1fr}.eco2-work-num{color:var(--blue);font-family:Fjalla One,sans-serif;font-size:12pt}.eco2-work-title{text-transform:uppercase;color:var(--ink);margin:0 0 1.5mm;font-family:Fjalla One,sans-serif;font-size:10.5pt}.eco2-work-line{color:var(--ink);align-items:flex-start;gap:2mm;margin:.8mm 0;font-size:8.2pt;line-height:1.4;display:flex}.eco2-work-line-encabezado{margin-top:1.6mm;font-weight:600}.eco2-work-line-encabezado+.eco2-work-line{margin-top:0}.eco2-work-line-sub{padding-left:3.5mm}.eco2-work-line-bullet{background:var(--cian);width:1.5mm;min-width:1.5mm;height:1.5mm;margin-top:1.1mm}.eco2-work-item-partida{justify-content:space-between;align-items:baseline;gap:3mm;display:flex}.eco2-work-partida-concepto{color:var(--ink);font-size:8.2pt}.eco2-work-partida-concepto-titulo{font-weight:600}.eco2-work-partida-importe{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:8.2pt}.eco2-totales-wrap{justify-content:flex-end;margin-top:4mm;display:flex}.eco2-totales{width:82mm}.eco2-totales-row{color:var(--ink);justify-content:space-between;padding:1.6mm 0;font-size:8.6pt;display:flex}.eco2-totales-total{background:var(--magenta);color:#fff;justify-content:space-between;align-items:center;margin-top:1mm;padding:2.2mm 3mm;display:flex}.eco2-totales-total-label{text-transform:uppercase;letter-spacing:.05em;font-size:7.4pt}.eco2-totales-total-value{font-family:Fjalla One,sans-serif;font-size:15pt}.eco2-tot{border:.35mm solid var(--magenta);background:#fff0f8;width:82mm;padding:2.4mm 3.5mm}.eco2-tot-row{justify-content:space-between;align-items:baseline;padding:1.3mm 0;display:flex}.eco2-tot-row+.eco2-tot-row{border-top:.25mm solid #fb079340}.eco2-tot-label{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);font-size:7.4pt}.eco2-tot-value{color:var(--ink);font-family:Fjalla One,sans-serif;font-size:11pt}.eco2-tot-base .eco2-tot-label{color:var(--magenta);font-size:8pt}.eco2-tot-base .eco2-tot-value{color:var(--magenta);font-size:13.5pt}.eco2-pay-line{text-align:right;color:var(--ink-soft);margin-top:2mm;font-size:7.6pt}.eco2-spacer{flex:1}.eco2-footer{flex:none}.eco2-footer-row{color:var(--ink-soft);justify-content:space-between;align-items:center;padding:2mm 13mm 4mm;font-size:6.6pt;display:flex}.eco2-photos-title{color:var(--ink);margin:6mm 0 1mm;font-family:Fjalla One,sans-serif;font-size:12pt}.eco2-photos-subtitle{color:var(--ink-soft);margin:0 0 4mm;font-size:7.6pt}.eco2-photo-item{flex-direction:column;flex:1 1 0;min-width:0;min-height:0;display:flex}.eco2-photo-marco{flex:1 1 0;min-height:0;position:relative;overflow:hidden}.eco2-photo-img{width:100%;height:100%;display:block;position:absolute;top:0;left:0}.eco2-photo-caption{flex:none;gap:1.5mm;margin-top:1.5mm;font-size:7pt;display:flex}.eco2-photo-num{color:var(--blue);flex-shrink:0;font-family:Fjalla One,sans-serif;font-size:8pt}.eco2-photo-desc{color:var(--ink-soft)}.eco2-photos-single{min-height:0;display:flex}.eco2-photos-two-side{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4mm;min-height:0;display:grid}.eco2-photos-two-stack{grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-template-columns:minmax(0,1fr);gap:4mm;min-height:0;display:grid}.eco2-photos-three-side{grid-template-rows:minmax(0,1fr);grid-template-columns:repeat(3,minmax(0,1fr));gap:4mm;min-height:0;display:grid}.eco2-photos-three{grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4mm;min-height:0;display:grid}.eco2-photos-three .eco2-photo-item:first-child{grid-area:1/1/auto/3}.eco2-photos-three .eco2-photo-item:nth-child(2){grid-area:2/1}.eco2-photos-three .eco2-photo-item:nth-child(3){grid-area:2/2}.eco2-photos-grid2{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-auto-rows:minmax(0,1fr);gap:4mm;min-height:0;display:grid}.legal-body{flex-direction:column;flex:1;justify-content:space-between;display:flex}.lblock{flex-direction:column;gap:2mm;display:flex}.lblock:first-child{margin-top:5.5mm}.legal-h{text-transform:uppercase;color:var(--ink);margin:0;font-family:Fjalla One,sans-serif;font-size:10pt}.breathe{flex:none;height:4.5mm}.accept{column-count:2;column-fill:auto;column-gap:7mm;margin:0;padding:0;font-size:7pt;line-height:1.32;list-style:none;overflow:hidden}.accept li{break-inside:avoid;margin-bottom:1.1mm;padding-left:3mm;position:relative}.accept li:before{content:"";background:var(--cian);width:1.5mm;height:1.5mm;position:absolute;top:.7mm;left:0}.general{column-count:3;column-fill:auto;text-align:justify;-webkit-hyphens:none;hyphens:none;column-gap:5mm;font-size:5.4pt;line-height:1.3;overflow:hidden}.general p{margin:0 0 1.5mm}.general .clause-label{color:var(--blue);font-weight:700}.privacy{background:var(--wash);border-left:.8mm solid var(--cian);padding:2.6mm 3.2mm}.privacy-title{color:var(--ink);margin:0 0 1mm;font-size:7pt;font-weight:700}.privacy-text{text-align:justify;color:var(--ink);margin:0;font-size:6.6pt;line-height:1.3}.privacy-note{text-align:justify;color:var(--ink-soft);margin:1.5mm 0 0;font-size:6.6pt;font-style:italic;line-height:1.3}.signs{grid-template-columns:1fr 1fr;gap:4mm;display:grid}.sign-box{border:1px solid var(--rule);flex-direction:column;gap:1.4mm;min-height:20mm;padding:2.6mm 3.2mm;display:flex}.sign-title{color:var(--ink);margin:0;font-size:9.2pt;font-weight:700}.sign-line{color:var(--ink);margin:0;font-size:7pt}.copyline{text-align:right;color:var(--ink-soft);font-size:7pt;font-style:italic}.cita-overlay{z-index:50;background:#14141873;justify-content:center;align-items:flex-start;padding:40px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.cita{background:#fff;border-radius:10px;width:100%;min-width:0;max-width:680px;padding:20px 24px 22px;box-shadow:0 12px 40px #0003}.cita-cabecera{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.cita-cabecera h2{margin:0;font-size:20px}.cita-cerrar{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;font-size:26px;line-height:1}.cita-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;display:grid}.cita-campo{min-width:0;color:var(--color-text-muted);flex-direction:column;gap:5px;font-size:13px;display:flex}.cita-campo input,.cita-campo select,.cita-campo textarea{box-sizing:border-box;width:100%;font:14px/1.4 var(--font-body);border:1px solid var(--color-border);color:var(--color-text);background:#fff;border-radius:6px;padding:8px 10px}.cita-ancho{grid-column:1/-1}.cita-buscar{grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:8px;display:grid}.cita-fijo{color:var(--color-text);padding:8px 0;font-size:14px}.cita-horas{flex-direction:row;gap:10px}.cita-horas label{flex-direction:column;flex:1;gap:5px;display:flex}.cita-presupuestos{border:1px solid var(--color-border);background:var(--color-bg-subtle);border-radius:8px;margin:0;padding:10px 14px}.cita-presupuestos legend{padding:0 4px}.cita-check{color:var(--color-text);cursor:pointer;align-items:flex-start;gap:10px;padding:6px 0;font-size:14px;display:flex}.cita-check input{width:auto;margin-top:3px}.cita-nota{color:var(--color-text-muted);font-size:12px;display:block}.cita-alerta{color:#8a4b00}.cita-aviso{color:#6b3a00;background:#fff4e5;border:1px solid #e08a00;border-radius:8px;margin-top:16px;padding:10px 14px;font-size:14px}.cita-aviso ul{margin:6px 0;padding-left:18px}.cita-error{color:var(--color-magenta);margin:14px 0 0}.cita-acciones{align-items:center;gap:16px;margin-top:18px;display:flex}.cita-borrar{margin-left:auto;font-size:13px}.cita-boton{border:1px solid var(--color-magenta);background:var(--color-magenta);color:#fff;font:14px/1.4 var(--font-body);cursor:pointer;border-radius:6px;padding:8px 18px}.cita-boton:disabled{opacity:.55;cursor:not-allowed}.cita-enlace{font:13px/1.4 var(--font-body);color:#00777b;cursor:pointer;background:0 0;border:none;padding:0;font-weight:600}.cita-enlace:hover:not(:disabled){text-decoration:underline}.cita-enlace-suave{color:var(--color-text-muted);font-weight:400}.cita-enlace-peligro{color:var(--color-magenta)}@media (width<=640px){.cita-grid,.cita-buscar{grid-template-columns:minmax(0,1fr)}}.cita-abrir-exp{color:var(--color-magenta);background:#fff;margin-left:auto;margin-right:12px;padding:6px 14px}.cita-abrir-exp:hover{background:#fff0f8}.cita-whatsapp{background:#f3fbf6;border:1px solid #b7e4c7;border-radius:8px;flex-direction:column;gap:8px;margin-top:16px;padding:12px 14px;display:flex}.cita-whatsapp h3{margin:0;font-size:15px}.cita-whatsapp textarea{font:14px/1.4 var(--font-body);border:1px solid var(--color-border);resize:vertical;border-radius:6px;padding:8px 10px}.cita-whatsapp-lista{flex-direction:column;display:flex}.cita-whatsapp-fila{border-top:1px solid #d8efe0;justify-content:space-between;align-items:center;gap:12px;padding:6px 0;font-size:14px;display:flex}.cita-whatsapp-boton{color:#fff;white-space:nowrap;background:#25d366;border-radius:6px;padding:6px 14px;font-size:13px;font-weight:600;text-decoration:none}.cita-whatsapp-boton:hover{background:#1ebe5b}.cita-wa-plantillas{border:1px solid #25a55f;border-radius:8px;display:flex;overflow:hidden}.cita-wa-plantilla{color:#1b7a45;font:600 13px/1.3 var(--font-body);cursor:pointer;background:#fff;border:none;border-left:1px solid #25a55f;flex:1;padding:8px 6px}.cita-wa-plantilla:first-child{border-left:none}.cita-wa-plantilla-activa{color:#fff;background:#25a55f}.cita-wa-cambio{background:#fff;border:1px dashed #b7e4c7;border-radius:8px;flex-direction:column;gap:10px;padding:10px 12px;display:flex}.cita-wa-opcion{grid-template-columns:auto minmax(0,1fr) minmax(0,1fr);align-items:end;gap:10px;display:grid}.cita-wa-opcion-num{color:var(--color-text);white-space:nowrap;padding-bottom:9px;font-size:13px;font-weight:700}@media (width<=480px){.cita-wa-opcion{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.cita-wa-opcion-num{grid-column:1/-1;padding-bottom:0}}@media (width<=900px){.cita-overlay{background:#fff;padding:0}.cita{max-width:none;min-height:100%;box-shadow:none;border-radius:0;padding:0 16px 16px}.cita-cabecera{z-index:2;border-bottom:1px solid var(--color-border);background:#fff;gap:10px;margin:0 -16px 14px;padding:10px 8px 10px 16px;position:sticky;top:0}.cita-cabecera h2{flex:1;min-width:0;font-size:20px}.cita-abrir-exp{white-space:nowrap;margin:0;padding:8px 10px;font-size:13px}.cita-cerrar{flex-shrink:0;width:44px;height:44px;font-size:30px}.cita-campo input,.cita-campo select,.cita-campo textarea{min-width:0;padding:10px 12px}.cita-horas label{min-width:0}.cita-aviso,.cita-whatsapp-fila{overflow-wrap:anywhere}.cita-acciones{z-index:2;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--color-border);background:#fff;flex-wrap:wrap;margin:18px -16px -16px;position:sticky;bottom:0}.cita-boton{padding:11px 20px;font-size:15px}.cita-enlace{padding:8px 0;font-size:14px}}.cita-vecino{flex-wrap:wrap;align-items:baseline;gap:2px 6px;min-width:0;display:flex}.cita-vecino-nombre{color:var(--color-text);text-underline-offset:3px;font-weight:700;-webkit-text-decoration:underline #b7e4c7;text-decoration:underline #b7e4c7}.cita-vecino-tels{flex-wrap:wrap;gap:2px 14px;width:100%;display:flex}.cita-vecino-tel{color:#00777b;white-space:nowrap;font-weight:600;text-decoration:none}.cita-vecino-tel:hover{text-decoration:underline}.cita-vecino-tel em{color:var(--color-text-muted);font-style:normal;font-weight:400}.ficha{flex-direction:column;gap:28px;display:flex}.ficha-volver{font:15px/1.4 var(--font-body);color:var(--color-magenta);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0}.ficha-titulo{flex-wrap:wrap;align-items:center;gap:12px;margin:0;font-size:28px;display:flex}.ficha-estado{font-family:var(--font-body);color:#00777b;background:#00bbc11f;border-radius:999px;padding:4px 12px;font-size:13px;font-weight:600}.ficha-mensaje{border-radius:8px;margin:0;padding:12px 40px 12px 16px;font-size:15px;line-height:1.4;position:relative}.ficha-mensaje button{color:inherit;cursor:pointer;background:0 0;border:none;font-size:20px;line-height:1;position:absolute;top:6px;right:10px}.ficha-mensaje-ok{color:#1c6b47;background:#e8f7f0;border:1px solid #2e9e6b}.ficha-mensaje-error{border:1px solid var(--color-magenta);color:#a8055f;background:#fdeaf4}.ficha-aviso{color:#8a4b00;background:#fff4e5;border:1px solid #e08a00;border-radius:8px;margin:12px 0 0;padding:10px 14px;font-size:14px;line-height:1.4}.ficha-bloque h2{margin:0 0 12px;font-size:18px}.ficha-bloque-cabecera{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.ficha-bloque-cabecera h2{margin:0}.ficha-vacio{color:var(--color-text-muted);margin:0;font-size:15px}.ficha-datos{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 20px;margin:0;padding:16px 20px;display:grid}.ficha-datos dt{text-transform:uppercase;letter-spacing:.3px;color:var(--color-text-muted);font-size:12px}.ficha-datos dd{color:var(--color-text);white-space:pre-line;margin:2px 0 0;font-size:15px}.ficha-datos-ancho{grid-column:1/-1}.ficha-tabla{table-layout:fixed;min-width:900px}.expedientes-table.ficha-tabla thead th,.expedientes-table.ficha-tabla tbody td{text-align:center;padding-left:14px;padding-right:14px}.ficha-tabla td{vertical-align:middle;overflow-wrap:anywhere}.ficha-tabla .ficha-num{white-space:nowrap;font-variant-numeric:tabular-nums}.ficha-enlaces-columna{flex-direction:column;align-items:center;gap:4px}.ficha-sub{color:var(--color-text-muted);margin-top:2px;font-size:12px;display:block}.ficha-chip{white-space:nowrap;color:#555;background:#eeeeef;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-block}.ficha-chip-aprobado,.ficha-chip-pagada{color:#1c6b47;background:#e8f7f0}.ficha-chip-enviado,.ficha-chip-enviada{color:#00777b;background:#00bbc11f}.ficha-chip-rechazado,.ficha-chip-abonada{color:#a8055f;background:#fdeaf4}.ficha-chip-pendiente{color:#8a4b00;background:#fff4e5}.ficha-falta{color:#b45f00;font-size:13px;font-weight:600}.ficha-completa{color:#1c6b47;font-size:13px;font-weight:600}.ficha-enlaces{flex-wrap:wrap;align-items:center;gap:4px 14px;display:flex}.ficha-enlace-accion{font:13px/1.4 var(--font-body);color:#00777b;cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;font-weight:600}.ficha-enlace-accion:hover:not(:disabled){text-decoration:underline}.ficha-enlace-accion:disabled{opacity:.55;cursor:not-allowed}.ficha-enlace-suave{color:var(--color-text-muted);font-weight:400}.ficha-enlace-peligro{color:#b91c1c}.ficha-confirmar{color:var(--color-text);align-items:center;gap:10px;font-size:13px;display:inline-flex}.ficha-recibida-form{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:8px;margin-bottom:20px;padding:20px}.ficha-importes{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end;gap:16px;margin-top:20px;display:grid}.ficha-total{border:1px solid var(--color-border);background:#fff;border-radius:6px;flex-direction:column;gap:2px;padding:8px 12px;display:flex}.ficha-total span{color:var(--color-text-muted);font-size:13px}.ficha-total strong{font-variant-numeric:tabular-nums;font-size:20px}.ficha-total small{color:var(--color-text-muted);font-size:12px}.ficha-archivos{margin-top:20px}.ficha-check{color:var(--color-text);cursor:pointer;align-items:center;gap:8px;display:flex}.ficha-nota{color:var(--color-text-muted);margin:8px 0 0;font-size:13px}.ficha-enlace{font:12px/1.4 var(--font-body);color:var(--color-magenta);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;text-decoration:underline}@media (width<=800px){.ficha-datos{grid-template-columns:repeat(2,minmax(0,1fr))}}.ficha-cubiertas{border:1px solid var(--color-border);background:#fff;border-radius:8px;margin:20px 0 0;padding:12px 16px}.ficha-cubiertas legend{color:var(--color-text);padding:0 6px;font-size:14px;font-weight:600}.ficha-cubierta{border-bottom:1px solid var(--color-border);cursor:pointer;grid-template-columns:24px 100px 1fr auto;align-items:center;gap:10px;padding:6px 0;font-size:14px;display:grid}.ficha-cubierta input{width:17px;height:17px;accent-color:var(--color-magenta)}.ficha-cubierta-num{font-variant-numeric:tabular-nums;font-weight:600}.ficha-cubierta-obra em{color:var(--color-text-muted);font-size:13px;font-style:normal}.ficha-cubierta-esta{color:var(--color-magenta)!important}.ficha-cubierta-base{font-variant-numeric:tabular-nums}.ficha-cubiertas-suma{margin:10px 0 0;font-size:14px}.ficha-contactos{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.ficha-contacto{border:1px solid var(--color-border);border-left:3px solid var(--color-cyan);background:#fff;border-radius:8px;flex-direction:column;gap:3px;padding:12px 14px;display:flex}.ficha-contacto-papel{text-transform:uppercase;letter-spacing:.3px;color:var(--color-text-muted);font-size:11px}.ficha-contacto-nombre{color:var(--color-text);font-size:15px}.ficha-contacto-detalle{color:var(--color-text-muted);font-size:13px}.ficha-contacto-link{color:#00777b;overflow-wrap:anywhere;font-size:14px;font-weight:600;text-decoration:none}.ficha-contacto-link:hover{text-decoration:underline}.ficha-agenda{border:1px solid var(--color-border);background:#fff;border-radius:8px;margin:0;padding:0;list-style:none}.ficha-agenda li{grid-template-columns:170px 200px minmax(0,1fr) 100px auto;align-items:center;gap:12px;padding:10px 14px;font-size:14px;display:grid}.ficha-agenda li+li{border-top:1px solid var(--color-border)}.ficha-agenda-tipo{font-weight:600}.ficha-agenda-cuando{white-space:nowrap}.ficha-agenda-detalle{color:var(--color-text-muted)}.ficha-agenda-estado{text-align:center;font-size:12px;font-weight:600}.ficha-agenda-hecha{opacity:.6}.ficha-agenda-cancelada{opacity:.5;text-decoration:line-through}@media (width<=900px){.ficha-agenda li{grid-template-columns:1fr 1fr}}.urg-resumen{border:1px solid var(--color-border);background:#fff;border-radius:6px;margin:18px 0 0;padding:10px 14px;font-size:15px}.urg-acciones{align-items:center;gap:16px;margin-top:16px;display:flex}.urg-confirmar{color:#6b3a00;background:#fff4e5;border:1px solid #e08a00;border-radius:8px;margin-top:16px;padding:12px 16px}.urg-confirmar p{margin:0}.ficha-urgencia{color:#fff;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.04em;background:#d7263d;border-radius:999px;margin-left:8px;padding:4px 12px;font-size:13px;font-weight:700}.ficha-fotos-nota{margin-top:8px;font-size:13px}.ficha-registrar{border:1px solid #00777b;border-radius:6px;margin:2px auto 0;padding:5px 10px;display:block}.ficha-registrar:hover{background:#e6f4f4}.ficha-archivar{border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text-muted);font:14px/1.4 var(--font-body);cursor:pointer;border-radius:6px;margin-left:auto;padding:6px 14px}.ficha-archivar:hover{border-color:var(--color-text-muted);color:var(--color-text)}.ficha-archivado-chip{font-family:var(--font-body);color:#555;background:#eeeeef;border-radius:999px;padding:4px 12px;font-size:13px;font-weight:600}.ficha-archivado{color:#444;background:#f4f4f5;border:1px solid #c9c9cc;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin:12px 0 0;padding:12px 16px;font-size:14px;display:flex}.ficha-archivado p{margin:0}.ficha-boton-nuevo{border:1px solid var(--color-magenta);background:var(--color-bg);color:var(--color-magenta);font:600 14px/1.4 var(--font-body);cursor:pointer;white-space:nowrap;border-radius:6px;padding:7px 14px}.ficha-boton-nuevo:hover{background:var(--color-magenta);color:#fff}.ficha-nuevo-eco{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ficha-nuevo-eco select{border:1px solid var(--color-border);background:var(--color-bg);max-width:360px;font:14px/1.4 var(--font-body);border-radius:6px;padding:7px 10px}.ficha-nota-nuevo{color:var(--color-text-muted);font-size:13px}.ficha-boton-enviar{background:var(--color-magenta);color:#fff;font:600 13px/1.3 var(--font-body);cursor:pointer;white-space:nowrap;border:none;border-radius:6px;margin:6px auto 0;padding:6px 12px;display:block}.ficha-terminada{color:#1d6b3a;background:#e7f6ec;border:1px solid #9fd6b2;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin:12px 0 0;padding:12px 16px;font-size:14px;display:flex}.ficha-terminada p{margin:0}.ficha-terminada a{color:#1d6b3a;font-weight:600}.ficha-boton-confirmar{color:#fff;font:600 14px/1.4 var(--font-body);cursor:pointer;white-space:nowrap;background:#1d8a4a;border:none;border-radius:6px;padding:8px 16px}.ficha-marcar-pagada{margin:6px auto 0;display:block}.ficha-pago-rapido{flex-direction:column;align-items:center;gap:6px;margin-top:6px;display:flex}.ficha-pago-rapido input[type=date]{border:1px solid var(--color-border);font:13px var(--font-body);border-radius:6px;padding:4px 6px}.ficha-pago-rapido .ficha-boton-confirmar{padding:5px 12px;font-size:13px}.ficha-por-facturar{flex-direction:column;gap:8px;margin:0 0 14px;display:flex}.ficha-por-facturar-fila{border:1px solid var(--color-border);border-left:4px solid var(--color-magenta);background:#fff;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;padding:12px 16px;font-size:14px;display:flex}.ficha-por-facturar-datos{flex-direction:column;gap:3px;display:flex}.ficha-por-facturar-check{color:var(--color-text-muted);align-items:center;gap:6px;font-size:13px;display:inline-flex}.ficha-por-facturar-botones{flex-wrap:wrap;gap:8px;display:flex}.ficha-garantia-chip{font-family:var(--font-body);letter-spacing:.04em;text-transform:uppercase;color:#fff;background:#6a1b9a;border-radius:999px;padding:4px 12px;font-size:13px;font-weight:700}.ficha-titulo-acciones{flex-wrap:wrap;gap:8px;margin-left:auto;display:inline-flex}.ficha-titulo-acciones .ficha-archivar{margin-left:0}.ficha-falta-factura{color:#5c3700;background:#fff4e5;border-left:4px solid #f5a623;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;padding:12px 16px;font-size:15px;display:flex}.ficha-falta-factura p{flex-direction:column;gap:4px;margin:0;display:flex}.ficha-falta-factura-linea{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.ficha-falta-factura-no{color:#8a5300;font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;text-decoration:underline}.ficha-falta-factura-nota{color:#8a5300;font-size:13px}.ficha-recibida-pdf{border:1px dashed var(--color-magenta);background:var(--color-bg);border-radius:8px;flex-direction:column;gap:8px;margin-bottom:16px;padding:12px 14px;display:flex}.ficha-recibida-pdf ul{margin:4px 0 0;padding-left:18px}.ficha-leyendo{color:var(--color-magenta);font-weight:600}.ficha-leida{color:#1c6b47}.ficha-tramo{flex-wrap:wrap;align-items:flex-end;gap:8px 16px;margin:4px 0 16px;display:flex}.ficha-tramo .expedientes-form-field{flex:0 220px}.ficha-tramo-pct{max-width:140px}.ficha-tramo-toca{flex-basis:100%;margin:0}.ficha-tramo-chip{color:#8a5300;white-space:nowrap;background:#fff4e5;border:1px solid #f5c27a;border-radius:999px;margin-left:6px;padding:1px 8px;font-size:12px;font-weight:700;display:inline-block}.ficha-numero-operario{color:#002cc0;font-size:11px}.ficha-titulo-acciones .ficha-abrir-garantia{color:#6a1b9a;border-color:#6a1b9a}.tel-caja{display:inline-block;position:relative}.tel-numero{font:inherit;color:#00777b;cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;padding:0;font-weight:600}.tel-numero:hover{text-decoration:underline}.tel-menu{z-index:50;background:#fff;border:1px solid #e5e4e7;border-radius:8px;flex-direction:column;min-width:150px;padding:4px;display:flex;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 6px 18px #0000001f}.tel-opcion{color:#1a1a1a;white-space:nowrap;border-radius:6px;padding:8px 10px;font-size:14px;font-weight:500;text-decoration:none;display:block}.tel-opcion:hover{background:#f2f2f4}.tel-opcion-wa:hover{background:#e7f8ee}.tel-varios{flex-wrap:wrap;align-items:baseline;gap:2px 14px;display:inline-flex}a.tel-numero{text-decoration:none;display:inline-block}.tel-fijo:after{content:" · fijo";color:var(--color-text-muted);font-size:.8em;font-weight:400}.recorte-fondo{z-index:100;background:#1a1a1a8c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.recorte-caja{background:#fff;border-radius:10px;flex-direction:column;gap:10px;width:min(760px,100%);max-height:90vh;padding:18px;display:flex;overflow:auto}.recorte-cabecera{justify-content:space-between;align-items:center;display:flex}.recorte-cabecera h3{margin:0;font-size:1rem}.recorte-cerrar{cursor:pointer;color:#6e6e6e;background:0 0;border:none;font-size:1.1rem}.recorte-instruccion,.recorte-cargando{color:#6e6e6e;margin:0;font-size:.82rem;line-height:1.45}.recorte-error{color:#7a1414;background:#fdecec;border-left:3px solid #d92020;border-radius:6px;margin:0;padding:.7rem .85rem;font-size:.82rem}.recorte-lienzo{background:#f6f5f7;border-radius:6px;justify-content:center;align-items:center;min-height:120px;padding:8px;display:flex}.recorte-marco{cursor:crosshair;-webkit-user-select:none;user-select:none;line-height:0;display:inline-block;position:relative}.recorte-marco img{max-width:100%;max-height:55vh;display:block}.recorte-seleccion{pointer-events:none;background:#fb079324;border:2px solid #fb0793;position:absolute}.recorte-aviso{color:#7a4a00;background:#fff6e8;border-left:3px solid #fd8401;border-radius:6px;margin:0;padding:.6rem .8rem;font-size:.78rem}.recorte-acciones{justify-content:flex-end;gap:8px;display:flex}.recorte-acciones button{cursor:pointer;background:#fff;border:1px solid #d7d6db;border-radius:6px;padding:.45rem .95rem;font-size:.85rem}.recorte-guardar{color:#fff;background:#002cc0!important;border-color:#002cc0!important}.recorte-acciones button:disabled{opacity:.5;cursor:default}.bandeja{flex-direction:column;gap:8px;display:flex}.bandeja-con-fotos{background:#f5f7ff;border:1px dashed #002cc0;border-radius:8px;margin:8px 0 12px;padding:10px 12px}.bandeja-titulo{color:#002cc0;margin:0;font-size:.85rem;font-weight:600}.bandeja-miniaturas{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px;display:grid}.bandeja-miniatura{aspect-ratio:1;background:#e8e8ec;border-radius:6px;margin:0;position:relative;overflow:hidden}.bandeja-miniatura img{object-fit:cover;width:100%;height:100%;display:block}.bandeja-quitar{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;width:26px;height:26px;padding:0;font-size:18px;line-height:26px;position:absolute;top:3px;right:3px}.bandeja-acciones{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bandeja-boton{color:#002cc0;font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #002cc0;border-radius:6px;padding:.5rem .95rem;font-size:.9rem}.bandeja-boton:disabled,.bandeja-descartar:disabled{opacity:.55;cursor:not-allowed}.bandeja-boton-principal{color:#fff;background:#002cc0;font-weight:600}.bandeja-descartar{color:#6e6e6e;font:inherit;cursor:pointer;background:0 0;border:none;font-size:.85rem;text-decoration:underline}.fotos-bloque{background:#fff;border:1px solid #e4e3e8;border-radius:8px;margin:20px 0;padding:14px}.fotos-cabecera{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.fotos-titulo{letter-spacing:.09em;text-transform:uppercase;color:#fb0793;margin:0;font-size:.78rem}.fotos-boton-subir{color:#002cc0;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;border:1px solid #002cc0;border-radius:6px;padding:.45rem .95rem;font-size:.85rem}.fotos-boton-subir:hover{background:#f2f4ff}.fotos-aviso{color:#6e6e6e;margin:0;font-size:.8rem;line-height:1.45}.fotos-error{color:#7a1414;background:#fdecec;border-left:3px solid #d92020;border-radius:6px;margin:0 0 10px;padding:.7rem .85rem;font-size:.82rem;line-height:1.45}.fotos-lista{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.fotos-item{border:1px solid #f0eff2;border-radius:6px;grid-template-columns:1.6rem 84px 1fr auto;align-items:center;gap:10px;padding:8px;display:grid}.fotos-num{color:#002cc0;text-align:center;font-weight:700}.fotos-miniatura{background:#f6f5f7;border-radius:4px;justify-content:center;align-items:center;width:84px;height:60px;display:flex;overflow:hidden}.fotos-miniatura img{object-fit:cover;width:100%;height:100%}.fotos-miniatura-vacia{color:#b5b4ba}.fotos-pie{width:100%;font:inherit;border:1px solid #d7d6db;border-radius:5px;min-width:0;padding:.4rem .55rem;font-size:.85rem}.fotos-acciones{gap:4px;display:flex}.fotos-acciones button{cursor:pointer;background:#fff;border:1px solid #d7d6db;border-radius:5px;width:28px;height:28px;line-height:1}.fotos-acciones button:disabled{opacity:.35;cursor:default}.fotos-eliminar{color:#d92020;border-color:#f0c9c9!important}.fotos-contador{color:#6e6e6e;margin-left:auto;margin-right:10px;font-size:.76rem}.fotos-casilla{cursor:pointer;accent-color:#002cc0;justify-self:center;width:17px;height:17px}.fotos-item-fuera{opacity:.45}.fotos-item-fuera .fotos-miniatura img{filter:grayscale()}.fotos-boton-descargar{color:inherit;font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d7d6db;border-radius:6px;margin-left:auto;padding:6px 12px;font-size:.85rem}.fotos-boton-descargar:disabled{opacity:.55;cursor:default}.fotos-mover{background:#fff;border:1px solid #d9d7de;border-radius:6px;max-width:170px;padding:4px 6px;font-size:12px}.fotos-barra-mover{background:#f3fafc;border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 10px;padding:8px 10px;display:flex}.fotos-marca{cursor:pointer;align-items:center;gap:4px;display:flex}.fotos-lista{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;display:grid}.fotos-item{background:#fff;border:1px solid #ebeaee;border-radius:10px;flex-direction:column;gap:8px;padding:8px;display:flex;position:relative}.fotos-item>.fotos-num,.fotos-item>.fotos-marca,.fotos-item>.fotos-casilla{z-index:1;position:absolute;top:14px;left:14px}.fotos-item>.fotos-num,.fotos-item>.fotos-marca .fotos-num{background:#ffffffeb;border-radius:999px;min-width:24px;height:24px;padding:0 6px;font-size:13px;line-height:24px}.fotos-item>.fotos-marca{background:#ffffffeb;border-radius:999px;padding:2px 4px 2px 6px}.fotos-item>.fotos-casilla{width:20px;height:20px}.fotos-miniatura{aspect-ratio:4/3;border-radius:6px;width:100%;height:auto}.fotos-pie{resize:vertical;min-height:2.6rem;line-height:1.35}.fotos-acciones{flex-wrap:wrap;justify-content:flex-end}@media (width<=900px){.fotos-lista{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.fotos-acciones button{width:32px;height:32px}}.trabajos-ayuda{color:#767676;margin:0 0 10px;font-size:13px}.trabajo{background:#fff;border:1px solid #e5e4e7;border-left:3px solid #00a6c7;border-radius:8px;margin:0 0 10px;padding:10px 12px}.trabajo-revisar{background:#fffaf0;border-left-color:#e6a100}.trabajo-nuevo{border-left-color:#d6006f;flex-direction:column;gap:8px;display:flex}.trabajo-cabecera{align-items:center;gap:8px;display:flex}.trabajo-numero{color:#fff;text-align:center;background:#00a6c7;border-radius:50%;flex:none;width:24px;height:24px;font-size:13px;font-weight:700;line-height:24px}.trabajo-titulo{flex:1;min-width:0}.trabajo-acciones{gap:4px;display:flex}.trabajo-aviso{color:#8a5a00;flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0 0;font-size:13px;display:flex}.trabajo-descripcion,.trabajo-linea{white-space:pre-line;margin:6px 0 0 32px;font-size:14px}.trabajo-estado{flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0 0 32px;font-size:14px;display:flex}.trabajo-sin{color:#b3261e;font-weight:600}.trabajo-form{flex-direction:column;gap:8px;margin:8px 0 0 32px;display:flex}.trabajo-campo{flex-direction:column;gap:4px;font-size:13px;display:flex}.trabajo-botones{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.trabajo-quitar{color:#b3261e}.trabajo-fotos{margin:10px 0 0 32px}.ficha-trabajo{background:#fbfeff;border:1px solid #dceef3;border-left:4px solid #00a6c7;border-radius:12px;margin:0 0 28px;padding:20px 24px 24px 28px;box-shadow:0 1px 3px #003c500d}@media (width<=900px){.ficha-trabajo{padding:14px 12px 16px 16px}}.trabajo-cab{margin:0 0 12px}.trabajo-cab.trabajo-revisar{background:#fffaf0;border-radius:8px;padding:8px 10px}.trabajo-cab .trabajo-titulo{margin:0;font-size:20px}.ficha-trabajo h3{margin:14px 0 8px;font-size:16px}.trabajo-mover{max-width:180px;margin-top:4px;font-size:12px}.trabajos-barra{justify-content:space-between;align-items:center;gap:10px;display:flex}.ficha-trabajo-parte{border-top:1px solid #eeedf0;margin-top:16px;padding-top:12px}.inf-garantia{background:#f5ecfa;border-left:4px solid #6a1b9a;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin:0 0 12px;padding:10px 14px;font-size:14px;display:flex}.inf-garantia p{margin:0}.inf-tuvo{color:var(--color-text-muted);margin:0 0 12px;font-size:14px}.inf-aviso{margin-bottom:12px}.inf-error{border:1px solid var(--color-magenta);color:#a8055f;background:#fdeaf4;border-radius:8px;margin:0 0 12px;padding:10px 14px;font-size:14px}.inf-chip{letter-spacing:.03em;text-transform:uppercase;color:#444;white-space:nowrap;background:#eeeeef;border-radius:999px;padding:2px 9px;font-size:12px;font-weight:700;display:inline-block}.inf-chip-garantia{color:#fff;background:#6a1b9a}.inf-chip-sin_actuacion{color:#00777b;background:#e6f8f8;border:1px solid #9fdfe0}.inf-form{border:1px solid var(--color-border);background:var(--color-bg-subtle);border-radius:8px;flex-direction:column;gap:12px;margin:0 0 16px;padding:14px 16px;display:flex}.inf-tipos{border:none;flex-wrap:wrap;gap:8px;margin:0;padding:0;display:flex}.inf-tipos legend{color:var(--color-text-muted);margin-bottom:6px;font-size:13px}.inf-tipo{border:1px solid var(--color-border);background:var(--color-bg);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:7px 12px;font-size:14px;display:inline-flex}.inf-tipo-activo{border-color:var(--color-magenta);color:var(--color-magenta);font-weight:600}.inf-nota{color:var(--color-text-muted);margin:0;font-size:13px}.inf-campo{flex-direction:column;gap:4px;font-size:13px;display:flex}.inf-campo>span{color:var(--color-text-muted)}.inf-campo input,.inf-campo select,.inf-campo textarea{font:14px/1.45 var(--font-body);border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);border-radius:6px;min-width:0;max-width:100%;padding:7px 9px}.inf-campo textarea{resize:vertical}.inf-buscar{flex-wrap:wrap;gap:8px;display:flex}.inf-buscar input{flex:0 220px}.inf-buscar select{flex:280px}.inf-acciones{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.inf-boton{border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font:14px/1.4 var(--font-body);cursor:pointer;white-space:nowrap;border-radius:6px;padding:7px 14px}.inf-boton:disabled{opacity:.55;cursor:not-allowed}.inf-boton-principal{background:var(--color-magenta);border-color:var(--color-magenta);color:#fff;font-weight:600}.inf-enlace{color:#002cc0;font:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.inf-enlace-suave{color:var(--color-text-muted);font-size:13px}.inf-enlace-peligro{color:#b42318;font-size:13px}.inf-lista{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.inf-item{border:1px solid var(--color-border);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;padding:10px 14px;display:flex}.inf-item-datos{flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-width:0;display:flex}.inf-item-datos strong{overflow-wrap:anywhere}.inf-sub{color:var(--color-text-muted);flex-basis:100%;font-size:13px}.inf-item-acciones{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inf-overlay{z-index:60;background:#14141e73;justify-content:center;align-items:flex-start;padding:40px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.inf-dialogo{background:var(--color-bg);border-radius:10px;flex-direction:column;gap:12px;width:100%;max-width:620px;padding:18px 20px;display:flex;box-shadow:0 12px 40px #0003}.inf-dialogo-cabecera{justify-content:space-between;align-items:center;display:flex}.inf-dialogo-cabecera h3{margin:0}.inf-cerrar{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;font-size:24px;line-height:1}.inf-para{flex-wrap:wrap;gap:4px 10px;margin:0;font-size:14px;display:flex}.inf-para>span{color:var(--color-text-muted)}@media (width<=700px){.inf-overlay{padding:0}.inf-dialogo{border-radius:0;min-height:100%}.inf-item-acciones{width:100%}}.inf-chip-presupuesto_antiguo{color:#8a5300;background:#fff4e5;border:1px solid #f5c27a}.unir-overlay{z-index:60;background:#14141e73;justify-content:center;align-items:flex-start;padding:40px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.unir-dialogo{background:var(--color-bg);border-radius:10px;flex-direction:column;gap:12px;width:100%;max-width:640px;padding:18px 20px;display:flex;box-shadow:0 12px 40px #0003}.unir-cabecera{justify-content:space-between;align-items:center;display:flex}.unir-cabecera h3{margin:0}.unir-cerrar{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;font-size:24px;line-height:1}.unir-nota{color:var(--color-text-muted);margin:0;font-size:14px}.unir-lista{flex-direction:column;gap:6px;max-height:260px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.unir-opcion{border:1px solid var(--color-border);cursor:pointer;border-radius:8px;align-items:flex-start;gap:10px;padding:8px 12px;font-size:14px;display:flex}.unir-opcion input{margin-top:3px}.unir-opcion-activa{border-color:var(--color-magenta);background:#fff3f9}.unir-sub{color:var(--color-text-muted);white-space:pre-line;font-size:13px;display:block}.unir-resumen{border-left:4px solid var(--color-magenta);background:var(--color-bg-subtle);border-radius:8px;padding:12px 14px;font-size:14px}.unir-resumen p{margin:0 0 10px}.unir-datos{grid-template-columns:110px 1fr;gap:8px 12px;margin:0;display:grid}.unir-datos dt{color:var(--color-text-muted)}.unir-datos dd{flex-direction:column;gap:2px;margin:0;display:flex}.unir-error{border:1px solid var(--color-magenta);color:#a8055f;background:#fdeaf4;border-radius:8px;margin:0;padding:10px 14px;font-size:14px}.unir-acciones{flex-wrap:wrap;gap:10px;display:flex}.unir-boton{border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font:14px/1.4 var(--font-body);cursor:pointer;border-radius:6px;padding:7px 14px}.unir-boton:disabled{opacity:.55;cursor:not-allowed}.unir-boton-principal{background:var(--color-magenta);border-color:var(--color-magenta);color:#fff;font-weight:600}@media (width<=700px){.unir-overlay{padding:0}.unir-dialogo{border-radius:0;min-height:100%}.unir-datos{grid-template-columns:1fr}}.registrar-fondo{z-index:100;background:#1a1a1a8c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.registrar-caja{background:#fff;border-radius:10px;flex-direction:column;gap:12px;width:min(520px,100%);max-height:90vh;padding:18px;display:flex;overflow:auto}.registrar-cabecera{justify-content:space-between;align-items:center;gap:12px;display:flex}.registrar-cabecera h3{margin:0;font-size:1rem}.registrar-cabecera button{cursor:pointer;color:#6e6e6e;background:0 0;border:none;font-size:1.1rem}.registrar-nota{color:#6e6e6e;margin:0;font-size:.82rem;line-height:1.45}.registrar-decision{gap:10px;display:flex}.registrar-decision label{cursor:pointer;border:1px solid #d7d6db;border-radius:8px;flex:1;align-items:center;gap:8px;padding:10px 12px;font-size:.9rem;display:flex}.registrar-decision label.activa.aprobar{background:#f2fbf4;border-color:#35bb02}.registrar-decision label.activa.rechazar{background:#fdecec;border-color:#d92020}.registrar-campo{color:#6e6e6e;flex-direction:column;gap:4px;font-size:.78rem;display:flex}.registrar-campo input,.registrar-campo select,.registrar-campo textarea{font:inherit;color:#1a1a1a;border:1px solid #d7d6db;border-radius:6px;padding:8px 10px;font-size:.9rem}.registrar-campo small{color:#9a99a0;line-height:1.4}.registrar-acciones{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.registrar-acciones button{cursor:pointer;background:#fff;border:1px solid #d7d6db;border-radius:6px;padding:.5rem 1rem;font-size:.88rem}.registrar-aprobar{color:#fff;background:#35bb02!important;border-color:#35bb02!important}.registrar-rechazar{color:#fff;background:#d92020!important;border-color:#d92020!important}.registrar-acciones button:disabled{opacity:.55;cursor:default}.registrar-situacion{border:1px solid var(--color-border);border-radius:8px;flex-direction:column;gap:8px;margin:0 0 14px;padding:10px 12px 12px;display:flex}.registrar-situacion legend{color:var(--color-text-muted);padding:0 4px;font-size:13px}.registrar-situacion-opcion{border:1px solid var(--color-border);cursor:pointer;border-radius:6px;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.registrar-situacion-opcion.activa{background:#f1faf1;border-color:#3aa845}.registrar-situacion-opcion span{flex-direction:column;font-size:14px;display:flex}.registrar-situacion-opcion em{color:var(--color-text-muted);font-size:12px;font-style:normal}.enviar-presupuesto-boton{color:#fff;background:var(--color-magenta)!important;border-color:var(--color-magenta)!important}.enviar-finca-lista{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.enviar-finca-lista label{cursor:pointer;border:1px solid #d7d6db;border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.enviar-finca-lista input[type=checkbox]{accent-color:var(--color-magenta);margin-top:3px}.enviar-finca-datos{flex-direction:column;gap:2px;min-width:0;font-size:.88rem;line-height:1.4;display:flex}.enviar-finca-datos small{color:#6e6e6e}div.personas-grupo{gap:10px}.personas-contador{color:var(--color-magenta);font-weight:600}.personas-linea+.personas-linea{border-top:1px dashed var(--color-border);padding-top:12px}.personas-linea-pie{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.personas-quitar{font:13px/1.4 var(--font-body);color:var(--color-text-muted,#6b6b6b);cursor:pointer;background:0 0;border:none;margin-top:8px;padding:4px 0;text-decoration:underline}.personas-quitar:hover{color:var(--color-magenta)}.personas-anadir{color:var(--color-magenta);border:1px dashed var(--color-magenta);font:600 13px/1.4 var(--font-body);cursor:pointer;background:#fff;border-radius:6px;align-self:flex-start;padding:6px 14px}.personas-anadir:hover{background:var(--color-magenta);color:#fff;border-style:solid}.personas-limite{color:var(--color-text-muted,#6b6b6b);margin:0;font-size:13px}.vecinos-sugeridos{background:#fff;border:1px solid #00777b;border-radius:8px;flex-direction:column;max-height:280px;margin-top:6px;display:flex;overflow-y:auto;box-shadow:0 6px 18px #00000014}.vecinos-sugeridos-titulo{color:#00777b;background:#e6f4f4;padding:6px 12px;font-size:12px;font-weight:600}.vecinos-sugerido{border:none;border-top:1px solid var(--color-border);font:14px/1.4 var(--font-body);text-align:left;cursor:pointer;background:#fff;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:8px 12px;display:flex}.vecinos-sugerido:hover,.vecinos-sugerido:focus{background:#fdf1f8}.vecinos-sugerido strong{min-width:90px}.vecinos-sugerido-tel{color:var(--color-text-muted,#6b6b6b)}.vecinos-sugerido-pres{color:var(--color-magenta);background:#fde7f3;border-radius:999px;padding:0 6px;font-size:11px;font-weight:600}.expedientes-section h1{margin-bottom:20px;font-size:28px}.expedientes-form{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:8px;margin-bottom:32px;padding:20px}.expedientes-form h2{margin-bottom:16px;font-size:18px}.expedientes-portal-box{border:1px solid var(--color-cyan);color:#1a1a1a;background:#00bbc11a;border-radius:8px;margin-bottom:20px;padding:14px 16px}.expedientes-portal-box-title{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.3px;color:#1a1a1a;margin:0 0 8px;font-size:14px;font-weight:400}.expedientes-portal-box p{color:#1a1a1a;margin:0;font-size:14px}.expedientes-portal-box p+p{margin-top:4px}.expedientes-form-section{margin-bottom:28px}.expedientes-form-section:last-of-type{margin-bottom:0}.expedientes-form-section-title{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.4px;color:var(--color-magenta);border-bottom:1px solid var(--color-border);margin:0 0 14px;padding-bottom:8px;font-size:15px;font-weight:400}.expedientes-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.expedientes-form-field{color:var(--color-text-muted);flex-direction:column;gap:6px;font-size:14px;display:flex}.expedientes-form-field-full{grid-column:1/-1}.expedientes-input{font:15px/1.4 var(--font-body);color:#1a1a1a;border:1px solid var(--color-border);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border-radius:6px;width:100%;padding:10px 12px}textarea.expedientes-input{resize:vertical;font-family:var(--font-body)}.expedientes-input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.expedientes-finca-filter,.expedientes-admin-filter{margin-bottom:2px}.expedientes-suggested-admins{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.expedientes-suggested-admins-label{color:var(--color-text-muted);font-size:13px}.expedientes-suggested-chip{color:var(--color-magenta);border:1px solid var(--color-magenta);font:13px/1.4 var(--font-body);cursor:pointer;white-space:nowrap;background:#fff;border-radius:999px;padding:4px 12px}.expedientes-group-label{color:var(--color-text);font-size:14px;font-weight:600}.expedientes-group-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.expedientes-form-error{color:var(--color-magenta);margin:16px 0 0;font-size:14px}.expedientes-form-actions{gap:12px;margin-top:20px;display:flex}.expedientes-form-submit{background:var(--color-magenta);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:10px 20px;font-size:15px}.expedientes-form-submit:disabled{opacity:.6;cursor:not-allowed}.expedientes-form-cancel{color:var(--color-text-muted);border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:6px;padding:10px 20px;font-size:15px}.expedientes-form-cancel:disabled{opacity:.6;cursor:not-allowed}.expedientes-list-title{margin-bottom:16px;font-size:18px}.expedientes-status{color:var(--color-text-muted);font-size:15px}.expedientes-status-error{color:var(--color-magenta)}.expedientes-table-wrapper{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;overflow-x:auto}.expedientes-table{border-collapse:collapse;width:100%;font-size:15px}.expedientes-table thead th{text-align:left;background:var(--color-magenta);color:#fff;font-family:var(--font-heading);letter-spacing:.3px;text-transform:uppercase;white-space:nowrap;padding:12px 20px;font-size:14px;font-weight:400}.expedientes-table tbody td{border-top:1px solid var(--color-border);padding:10px 20px}.expedientes-table tbody tr:nth-child(2n){background:var(--color-bg-subtle)}.expedientes-table-actions{flex-wrap:wrap;gap:8px;display:flex}.expedientes-table-edit{color:var(--color-magenta);border:1px solid var(--color-magenta);font:14px/1.4 var(--font-body);cursor:pointer;white-space:nowrap;background:#fff;border-radius:6px;padding:6px 12px}.expedientes-orden{font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:none;align-items:center;gap:6px;padding:0;display:inline-flex}.expedientes-orden-flecha{opacity:.45;font-size:11px}.expedientes-orden-flecha.activa{opacity:1}.expedientes-fecha{white-space:nowrap;font-variant-numeric:tabular-nums}.expedientes-numero{color:var(--color-text-muted);font-size:12px;display:block}.expedientes-acciones-col{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.expedientes-acciones-sec{gap:12px;display:flex}.expedientes-enlace{font:13px/1.4 var(--font-body);color:#00777b;cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;font-weight:600}.expedientes-enlace:hover{text-decoration:underline}.expedientes-enlace-suave{color:var(--color-text-muted);font-weight:400}.expedientes-table-open{background:var(--color-magenta);color:#fff;border:1px solid var(--color-magenta);font:14px/1.4 var(--font-body);cursor:pointer;white-space:nowrap;border-radius:6px;padding:6px 12px}.expedientes-table-delete{color:#b91c1c;font:14px/1.4 var(--font-body);cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #b91c1c;border-radius:6px;padding:6px 12px}.expedientes-modal-overlay{z-index:100;background:#00000073;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.expedientes-modal{color:#1a1a1a;background:#fff;border-radius:10px;width:100%;max-width:440px;padding:24px}.expedientes-modal h3{margin:0 0 12px;font-size:18px}.expedientes-modal-warning{color:#1a1a1a;margin:0 0 16px;font-size:15px}.expedientes-modal-details{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:8px;margin-bottom:16px;padding:12px 14px}.expedientes-modal-details p{color:#1a1a1a;margin:0;font-size:14px}.expedientes-modal-details p+p{margin-top:6px}.expedientes-modal-actions{justify-content:flex-end;gap:12px;display:flex}.expedientes-modal-delete{color:#fff;cursor:pointer;background:#b91c1c;border:none;border-radius:6px;padding:10px 20px;font-size:15px}.expedientes-modal-delete:disabled{opacity:.6;cursor:not-allowed}.expedientes-check{cursor:pointer;align-items:center;gap:8px;margin-top:8px;font-size:13px;display:flex}.expedientes-check input[type=checkbox]{accent-color:#fb0793;cursor:pointer;width:16px;height:16px}.expedientes-check input[type=checkbox]:disabled{cursor:not-allowed}.expedientes-check input[type=checkbox]:disabled+span{opacity:.45}.expedientes-check-nota{color:#6e6e6e;margin:6px 0 0;font-size:12px}.expedientes-alta-finca-abrir{color:#00bbc1;cursor:pointer;background:#fff;border:1px solid #00bbc1;border-radius:8px;margin-top:10px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:600}.expedientes-alta-finca-abrir:hover{color:#fff;background:#00bbc1}.expedientes-alta-finca{background:#fff;border:1px solid #00bbc1;border-radius:10px;margin-top:14px;padding:14px}.expedientes-alta-finca-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.expedientes-alta-finca-acciones{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.expedientes-alta-finca-crear{color:#fff;cursor:pointer;background:#fb0793;border:none;border-radius:8px;padding:9px 18px;font-family:inherit;font-size:14px;font-weight:600}.expedientes-alta-finca-crear:disabled{opacity:.6;cursor:not-allowed}.expedientes-alta-finca-cancelar{color:#6e6e6e;cursor:pointer;background:#fff;border:1px solid #dddce1;border-radius:8px;padding:9px 18px;font-family:inherit;font-size:14px}.expedientes-alta-finca-aviso{color:#6e6e6e;margin:0 0 10px;font-size:12px}.expedientes-alta-finca-aviso:last-child{margin:10px 0 0}.expedientes-finca{font-weight:600}.expedientes-finca .expedientes-numero{font-weight:400}.expedientes-buscar{flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 12px;display:flex}.expedientes-buscar .expedientes-input{max-width:520px}.expedientes-buscar-total{color:var(--color-text-muted);white-space:nowrap;font-size:13px}.ex-estado-chip{font:inherit}.expedientes-nuevo-movil{border:1px solid var(--color-magenta);background:var(--color-bg);width:100%;color:var(--color-magenta);font:600 15px/1.3 var(--font-body);cursor:pointer;border-radius:8px;margin:0 0 16px;padding:12px 16px}@media (width<=900px){.expedientes-section h1{font-size:24px}.expedientes-form-grid{grid-template-columns:minmax(0,1fr)}.expedientes-buscar .expedientes-input{max-width:none}.expedientes-lista-wrapper{background:0 0;border:none;border-radius:0;overflow:visible}.expedientes-lista,.expedientes-lista tbody{display:block}.expedientes-lista thead{display:none}.expedientes-lista tbody tr{background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"finca fecha""incidencia incidencia""admin admin""operario operario""estado acciones";align-items:center;column-gap:12px;margin-bottom:10px;padding:12px 14px;display:grid}.expedientes-lista tbody tr:nth-child(2n){background:var(--color-bg)}.expedientes-lista tbody td{border:none;min-width:0;padding:0;font-size:14px;display:block}.expedientes-lista td.expedientes-fecha{text-align:right;color:var(--color-text-muted);grid-area:fecha;align-self:start;font-size:12px}.expedientes-lista td.ex-finca{grid-area:finca;font-size:16px;font-weight:700;line-height:1.3}.expedientes-lista td.ex-finca .expedientes-numero{font-weight:400}.expedientes-lista td.ex-incidencia{grid-area:incidencia;margin:6px 0 4px}.expedientes-lista td.ex-admin{color:var(--color-text-muted);grid-area:admin;font-size:13px}.expedientes-lista td.ex-operario{color:var(--color-text-muted);grid-area:operario;font-size:13px}.expedientes-lista td[data-label]:before{content:attr(data-label) ": "}.expedientes-lista td.ex-estado{grid-area:estado;margin-top:10px}.ex-estado-chip{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.expedientes-lista td.ex-acciones{grid-area:acciones;margin-top:10px}.expedientes-acciones-col{align-items:flex-end}.expedientes-lista .expedientes-table-open{padding:9px 18px}.expedientes-enlace{padding:4px 0;font-size:14px}}.expedientes-cliente-cab{justify-content:space-between;align-items:center;gap:12px;min-height:20px;display:flex}.expedientes-cliente-info{color:#00777b;cursor:help;margin-left:6px}.expedientes-cliente-tipo{border:1px solid var(--color-magenta);border-radius:999px;margin:-4px 0;display:inline-flex;overflow:hidden}.expedientes-cliente-opcion{color:var(--color-magenta);font:600 12px/1.5 var(--font-body);cursor:pointer;background:#fff;border:none;padding:2px 12px}.expedientes-cliente-opcion+.expedientes-cliente-opcion{border-left:1px solid var(--color-magenta)}.expedientes-cliente-opcion-activa{background:var(--color-magenta);color:#fff}.expedientes-particular{grid-template-columns:1fr 1fr;gap:6px 8px;display:grid}@media (width<=900px){.expedientes-particular{grid-template-columns:1fr}}.expedientes-ver-archivados{color:var(--color-text-muted);white-space:nowrap;align-items:center;gap:6px;font-size:14px;display:inline-flex}.ex-archivado-chip{color:#555;background:#eeeeef;border-radius:999px;margin-left:6px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.fincas-status{color:var(--color-text-muted);font-size:15px}.fincas-status-error{color:var(--color-magenta)}.fincas-table-wrapper{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.fincas-table{border-collapse:collapse;width:100%;font-size:15px}.fincas-table thead th{text-align:left;background:var(--color-magenta);color:#fff;font-family:var(--font-heading);letter-spacing:.3px;text-transform:uppercase;padding:12px 20px;font-size:14px;font-weight:400}.fincas-table tbody td{border-top:1px solid var(--color-border);padding:10px 20px}.fincas-table tbody tr:nth-child(2n){background:var(--color-bg-subtle)}.fincas-sin-asignar{color:var(--color-text-muted);font-style:italic}.fincas-table-edit{font:14px/1.4 var(--font-body);background:var(--color-bg);color:var(--color-magenta);border:1px solid var(--color-magenta);cursor:pointer;border-radius:6px;padding:6px 12px}.fincas-falta-nif{color:#9a5a00;white-space:nowrap;background:#fff2df;border:1px solid #f0b95c;border-radius:999px;padding:2px 8px;font-size:12px;display:inline-block}.fincas-sub-movil{display:none}.fincas-buscar{align-items:center;gap:12px;margin:0 0 12px;display:flex}.fincas-buscar input{border:1px solid var(--color-border);background:var(--color-bg);min-width:0;max-width:480px;font:15px/1.3 var(--font-body);border-radius:8px;flex:1;padding:9px 12px}.fincas-buscar input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.fincas-buscar-total{color:var(--color-text-muted);white-space:nowrap;font-size:13px}@media (width<=900px){.fincas-table-wrapper{background:0 0;border:none;border-radius:0;overflow:visible}.fincas-table thead{display:none}.fincas-table,.fincas-table tbody{display:block}.fincas-table tbody tr,.fincas-table tbody tr:nth-child(2n){border:1px solid var(--color-border);background:#fff;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;gap:0 12px;margin-bottom:12px;padding:14px 16px;display:grid}.fincas-table tbody td{overflow-wrap:anywhere;border:none;min-width:0;padding:0;display:block}.fincas-table tbody td:before{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:11px;display:block}.fincas-table tbody td:first-child{font-family:var(--font-heading);color:var(--color-magenta);grid-area:1/1;font-size:17px}.fincas-table tbody td:nth-child(2){grid-area:1/2;font-size:16px;font-weight:600}.fincas-table tbody td:nth-child(8){grid-area:1/3;align-self:start}.fincas-table tbody td:nth-child(7){grid-area:4/1/auto/-1;margin-top:10px}.fincas-table tbody tr.fincas-fila-abierta{border-bottom-right-radius:0;border-bottom-left-radius:0;margin-bottom:0}.fincas-table tbody tr.fincas-detalle{border:1px solid var(--color-border);background:#fbfbfc;border-top:none;border-radius:0 0 10px 10px;margin:0 0 12px;padding:12px 16px 14px;display:block}.fincas-table tbody tr.fincas-detalle td{font-family:var(--font-body);color:var(--color-text);font-size:14px;display:block}.fincas-table-edit{min-height:40px}.fincas-table tbody td:nth-child(3),.fincas-table tbody td:nth-child(4){display:none}.fincas-sub-movil{color:var(--color-text-muted);margin-top:2px;font-size:14px;font-weight:400;display:block}.fincas-table tbody td:nth-child(5),.fincas-table tbody td:nth-child(6){grid-column:1/-1}.fincas-table tbody td:nth-child(5){border-top:1px solid var(--color-border);grid-row:2;margin-top:12px;padding-top:10px}.fincas-table tbody td:nth-child(6){grid-row:3;margin-top:8px}.fincas-table tbody td:nth-child(5):before{content:"Nombre fiscal"}.fincas-table tbody td:nth-child(6):before{content:"NIF"}}.fincas-solo-obras{color:var(--color-text-muted);white-space:nowrap;align-items:center;gap:6px;font-size:14px;display:inline-flex}.fincas-exp-boton{border:1px solid var(--color-border);font:13px/1.3 var(--font-body);color:var(--color-text);cursor:pointer;white-space:nowrap;background:#fff;border-radius:999px;align-items:center;gap:8px;padding:5px 10px;display:inline-flex}.fincas-exp-boton:hover,.fincas-exp-boton-abierto{border-color:var(--color-magenta)}.fincas-exp-obras{color:#fff;background:#1d8a4a;border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600}.fincas-exp-flecha{color:var(--color-text-muted);font-size:11px}.fincas-table tbody tr.fincas-detalle,.fincas-table tbody tr.fincas-detalle:nth-child(2n){background:#fbfbfc}.fincas-detalle>td{padding:12px 20px 16px}.fincas-detalle-titulo{color:var(--color-text-muted);margin:0 0 8px;font-size:13px;font-weight:600}.fincas-exp-lista{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.fincas-exp{border:1px solid var(--color-border);border-left:4px solid var(--color-border);width:100%;font:14px/1.35 var(--font-body);color:var(--color-text);text-align:left;cursor:pointer;background:#fff;border-radius:6px;grid-template-columns:70px 90px minmax(0,1fr) auto;align-items:center;gap:4px 14px;padding:8px 12px;display:grid}.fincas-exp:hover{border-color:var(--color-magenta)}.fincas-exp-num{font-weight:600}.fincas-exp-fecha{color:var(--color-text-muted);font-size:13px}.fincas-exp-texto{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.fincas-exp-estado{color:var(--color-text-muted);white-space:nowrap;font-size:12px}.fincas-exp-realizada{background:#e7f6ec;border-color:#9fd6b2 #9fd6b2 #9fd6b2 #1d8a4a}.fincas-exp-realizada .fincas-exp-estado{color:#1d6b3a;font-weight:700}.fincas-exp-archivado{opacity:.6}@media (width<=900px){.fincas-buscar{flex-wrap:wrap}.fincas-exp{grid-template-columns:auto minmax(0,1fr)}.fincas-exp-texto,.fincas-exp-estado{white-space:normal;grid-column:1/-1}}.fincas-section h1{margin-bottom:20px;font-size:28px}.fincas-form-sticky{z-index:5;background:var(--color-bg);margin:0 0 20px;position:sticky;top:0}.fincas-form{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-bottom:2px solid var(--color-magenta);border-radius:8px;padding:10px 14px}.fincas-form-row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.fincas-form-title{font-family:var(--font-heading);color:var(--color-magenta);white-space:nowrap;padding-bottom:8px;font-size:14px}.fincas-form-field{color:var(--color-text-muted);flex-direction:column;flex:140px;gap:3px;min-width:0;font-size:11px;display:flex}.fincas-form-field-codi{flex:0 80px}.fincas-form-field-cp{flex:0 90px}.fincas-form-field input{font:14px/1.3 var(--font-body);color:var(--color-text);border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;width:100%;padding:6px 8px}.fincas-form-field input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.fincas-form-field input:disabled{color:var(--color-text-muted);background:var(--color-border);cursor:not-allowed}.fincas-form-error{color:var(--color-magenta);margin:8px 0 0;font-size:13px}.fincas-form-actions{gap:8px;display:flex}.fincas-form-submit{background:var(--color-magenta);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:7px 16px;font-size:14px}.fincas-form-cancel{background:var(--color-bg);color:var(--color-text-muted);border:1px solid var(--color-border);cursor:pointer;white-space:nowrap;border-radius:6px;padding:7px 16px;font-size:14px}.fincas-form-submit:disabled,.fincas-form-cancel:disabled{opacity:.6;cursor:not-allowed}@media (width<=640px){.fincas-form{padding:8px 10px}.fincas-form-row{gap:6px}.fincas-form-title{flex:1 0 100%;padding-bottom:2px}.fincas-form-field,.fincas-form-field-codi,.fincas-form-field-cp{flex:46%}.fincas-form-actions{flex:1 0 100%}.fincas-form-submit,.fincas-form-cancel{flex:1}}.fincas-form-field-nif{max-width:140px}.fincas-nuevo-movil{border:1px solid var(--color-magenta);background:var(--color-bg);width:100%;color:var(--color-magenta);font:600 15px/1.3 var(--font-body);cursor:pointer;border-radius:8px;margin:0 0 14px;padding:12px 16px}@media (width<=900px){.fincas-section h1{margin-bottom:14px;font-size:24px}.fincas-form-field-nif{max-width:none}}.administradores-section h1{margin-bottom:20px;font-size:28px}.admin-form{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:8px;margin-bottom:32px;padding:20px}.admin-form h2{margin-bottom:16px;font-size:18px}.admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.admin-form-field{color:var(--color-text-muted);flex-direction:column;gap:6px;font-size:14px;display:flex}.admin-form-field input{font:15px/1.4 var(--font-body);color:var(--color-text);border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;padding:10px 12px}.admin-form-field input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.admin-form-error{color:var(--color-magenta);margin:16px 0 0;font-size:14px}.admin-form-botones{gap:8px;margin-top:20px;display:flex}.admin-form-submit{background:var(--color-magenta);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:10px 20px;font-size:15px}.admin-form-submit:disabled{opacity:.6;cursor:not-allowed}.admin-list-title{margin-bottom:16px;font-size:18px}.admin-status{color:var(--color-text-muted);font-size:15px}.admin-status-error{color:var(--color-magenta)}.admin-table-wrapper{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.admin-table{border-collapse:collapse;width:100%;font-size:15px}.admin-table thead th{text-align:left;background:var(--color-magenta);color:#fff;font-family:var(--font-heading);letter-spacing:.3px;text-transform:uppercase;padding:12px 20px;font-size:14px;font-weight:400}.admin-table tbody td{border-top:1px solid var(--color-border);padding:10px 20px}.admin-table tbody tr:nth-child(2n),.admin-table-row-editing{background:var(--color-bg-subtle)}.admin-table-input{width:100%;font:14px/1.4 var(--font-body);color:var(--color-text);border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;padding:6px 8px}.admin-table-input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.admin-table-actions{flex-wrap:wrap;gap:8px;display:flex}.admin-table-edit,.admin-table-save,.admin-table-cancel{font:14px/1.4 var(--font-body);cursor:pointer;border:1px solid #0000;border-radius:6px;padding:6px 12px}.admin-table-edit{background:var(--color-bg);color:var(--color-magenta);border-color:var(--color-magenta)}.admin-table-save{background:var(--color-magenta);color:#fff}.admin-table-cancel{background:var(--color-bg);color:var(--color-text-muted);border-color:var(--color-border)}.admin-table-save:disabled,.admin-table-cancel:disabled{opacity:.6;cursor:not-allowed}.admin-table-actions~.admin-form-error{margin-top:8px;font-size:13px}.admin-falta-nif{color:#fb0793;background:#fff0f8;border:1px solid #fb0793;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.admin-fiscal-ok{color:#6e6e6e;flex-direction:column;gap:2px;font-size:12px;line-height:1.4;display:flex}.admin-fiscal-ok strong{color:#1a1a1a;font-size:13px}.admin-table-fiscal{flex-direction:column;gap:4px;display:flex}.admin-buscar{align-items:center;gap:12px;margin:0 0 12px;display:flex}.admin-buscar input{border:1px solid var(--color-border);background:var(--color-bg);min-width:0;max-width:480px;font:15px/1.3 var(--font-body);border-radius:8px;flex:1;padding:9px 12px}.admin-buscar input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.admin-buscar-total{color:var(--color-text-muted);white-space:nowrap;font-size:13px}.admin-nuevo-movil{border:1px solid var(--color-magenta);background:var(--color-bg);width:100%;color:var(--color-magenta);font:600 15px/1.3 var(--font-body);cursor:pointer;border-radius:8px;margin:0 0 20px;padding:12px 16px}@media (width<=900px){.administradores-section h1{margin-bottom:14px;font-size:24px}.admin-form{margin-bottom:24px;padding:16px}.admin-form-grid{grid-template-columns:minmax(0,1fr);gap:12px}.admin-form-botones>button{flex:1;min-height:44px}.admin-table-wrapper{background:0 0;border:none;border-radius:0;overflow:visible}.admin-table thead{display:none}.admin-table,.admin-table tbody{display:block}.admin-table tbody tr,.admin-table tbody tr:nth-child(2n){border:1px solid var(--color-border);background:#fff;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;gap:0 12px;margin-bottom:12px;padding:14px 16px;display:grid}.admin-table tbody td{overflow-wrap:anywhere;border:none;min-width:0;padding:0;display:block}.admin-table tbody td:empty{display:none}.admin-table tbody td:before{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:11px;display:block}.admin-table tbody tr:not(.admin-table-row-editing) td:first-child{grid-area:1/1;font-size:16px;font-weight:600}.admin-table tbody tr:not(.admin-table-row-editing) td:nth-child(6){grid-area:1/2/3;align-self:start}.admin-table tbody tr:not(.admin-table-row-editing) td:nth-child(2){color:var(--color-text-muted);grid-area:2/1;font-size:14px}.admin-table tbody tr:not(.admin-table-row-editing) td:nth-child(3){grid-area:3/1/auto/-1;margin-top:12px;font-size:14px}.admin-table tbody tr:not(.admin-table-row-editing) td:nth-child(4){grid-area:4/1/auto/-1;margin-top:8px}.admin-table tbody tr:not(.admin-table-row-editing) td:nth-child(5){border-top:1px solid var(--color-border);grid-area:5/1/auto/-1;margin-top:12px;padding-top:10px}.admin-table tbody tr td:nth-child(3):before{content:"Email"}.admin-table tbody tr td:nth-child(4):before{content:"Teléfono"}.admin-table tbody tr td:nth-child(5):before{content:"Datos fiscales";margin-bottom:4px}.admin-table-edit{min-height:40px}.admin-table tbody tr.admin-table-row-editing{border-color:var(--color-magenta);background:var(--color-bg-subtle);grid-template-columns:minmax(0,1fr);gap:12px}.admin-table tbody tr.admin-table-row-editing td:first-child:before{content:"Nombre *"}.admin-table tbody tr.admin-table-row-editing td:nth-child(2):before{content:"Empresa"}.admin-table tbody tr.admin-table-row-editing td:before{margin-bottom:4px}.admin-table-row-editing .admin-table-input{padding:9px 10px}.admin-table-row-editing .admin-table-fiscal{gap:8px}.admin-table-row-editing .admin-table-actions>button{flex:1;min-height:44px}}.finca-buscador{flex-direction:column;gap:4px;display:flex}.finca-buscador-filter,.finca-buscador-select{font:14px/1.3 var(--font-body);color:var(--color-text);border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;width:100%;padding:6px 8px}.finca-buscador-filter:focus,.finca-buscador-select:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.contactos-status{color:var(--color-text-muted);font-size:15px}.contactos-status-error{color:var(--color-magenta)}.contactos-table-wrapper{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.contactos-table{border-collapse:collapse;width:100%;font-size:15px}.contactos-table thead th{text-align:left;background:var(--color-magenta);color:#fff;font-family:var(--font-heading);letter-spacing:.3px;text-transform:uppercase;padding:12px 20px;font-size:14px;font-weight:400}.contactos-table tbody td{border-top:1px solid var(--color-border);padding:10px 20px}.contactos-table tbody tr:nth-child(2n){background:var(--color-bg-subtle)}.contactos-table-edit{font:14px/1.4 var(--font-body);background:var(--color-bg);color:var(--color-magenta);border:1px solid var(--color-magenta);cursor:pointer;border-radius:6px;padding:6px 12px}.contactos-presi-badge{color:#fff;background:#00bbc1;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.contactos-particular-badge{color:#fff;background:#fb0793;border-radius:999px;margin-right:6px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.contactos-orden{font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:none;align-items:center;gap:6px;padding:0;display:inline-flex}.contactos-orden-flecha{opacity:.45;font-size:11px}.contactos-orden-flecha.activa{opacity:1}.contactos-buscar{align-items:center;gap:12px;margin:0 0 12px;display:flex}.contactos-buscar input{border:1px solid var(--color-border);background:var(--color-bg);min-width:0;max-width:480px;font:15px/1.3 var(--font-body);border-radius:8px;flex:1;padding:9px 12px}.contactos-buscar input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.contactos-buscar-total{color:var(--color-text-muted);white-space:nowrap;font-size:13px}@media (width<=900px){.contactos-table-wrapper{background:0 0;border:none;border-radius:0;overflow:visible}.contactos-table,.contactos-table tbody{display:block}.contactos-table thead{display:none}.contactos-table tbody tr{background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"nombre etiqueta""finca finca""vivienda vivienda""empresa empresa""email email""tel acciones";align-items:center;column-gap:12px;margin-bottom:10px;padding:12px 14px;display:grid}.contactos-table tbody tr:nth-child(2n){background:var(--color-bg)}.contactos-table tbody td{border:none;min-width:0;padding:0;font-size:14px;display:block}.contactos-table tbody td.ct-vacio{display:none}.contactos-table td.ct-nombre{grid-area:nombre;font-size:16px;font-weight:700}.contactos-table td.ct-etiqueta{text-align:right;grid-area:etiqueta}.contactos-table td.ct-finca{color:var(--color-text-muted);grid-area:finca;margin-top:2px}.contactos-table td.ct-vivienda{grid-area:vivienda}.contactos-table td.ct-empresa{grid-area:empresa}.contactos-table td.ct-email{overflow-wrap:anywhere;grid-area:email}.contactos-table td[data-label]:before{content:attr(data-label) ": ";color:var(--color-text-muted)}.contactos-table td.ct-tel{grid-area:tel;margin-top:8px}.contactos-table td.ct-tel .tel-numero{padding:8px 0;font-size:17px}.contactos-table td.ct-acciones{grid-area:acciones;justify-self:end;margin-top:8px}.contactos-table-edit{padding:9px 16px}.contactos-buscar input{max-width:none;padding:11px 12px}}.contactos-section h1{margin-bottom:20px;font-size:28px}.contactos-form-sticky{z-index:5;background:var(--color-bg);margin:0 0 20px;position:sticky;top:0}.contactos-form{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-bottom:2px solid var(--color-magenta);border-radius:8px;padding:10px 14px}.contactos-form-row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.contactos-form-title{font-family:var(--font-heading);color:var(--color-magenta);white-space:nowrap;padding-bottom:8px;font-size:14px}.contactos-form-field{color:var(--color-text-muted);flex-direction:column;flex:150px;gap:3px;min-width:0;font-size:11px;display:flex}.contactos-form-field-rol{flex:260px}.contactos-form-field-finca{flex:220px}.contactos-form-field input{font:14px/1.3 var(--font-body);color:var(--color-text);border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;width:100%;padding:6px 8px}.contactos-form-field input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.contactos-rol-chip-list{flex-wrap:wrap;gap:6px;display:flex}.contactos-rol-chip-button{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);font:13px/1.3 var(--font-body);cursor:pointer;white-space:nowrap;border-radius:6px;padding:5px 10px}.contactos-rol-chip-button-selected{background:var(--color-magenta);color:#fff;border-color:var(--color-magenta)}.contactos-form-error{color:var(--color-magenta);margin:8px 0 0;font-size:13px}.contactos-form-actions{gap:8px;display:flex}.contactos-form-submit{background:var(--color-magenta);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:7px 16px;font-size:14px}.contactos-form-cancel{background:var(--color-bg);color:var(--color-text-muted);border:1px solid var(--color-border);cursor:pointer;white-space:nowrap;border-radius:6px;padding:7px 16px;font-size:14px}.contactos-form-submit:disabled,.contactos-form-cancel:disabled{opacity:.6;cursor:not-allowed}@media (width<=640px){.contactos-form{padding:8px 10px}.contactos-form-row{gap:6px}.contactos-form-title{flex:1 0 100%;padding-bottom:2px}.contactos-form-field,.contactos-form-field-rol,.contactos-form-field-finca{flex:100%}.contactos-form-actions{flex:1 0 100%}.contactos-form-submit,.contactos-form-cancel{flex:1}}.contactos-check{cursor:pointer;align-self:flex-end;align-items:center;gap:8px;padding-bottom:8px;font-size:13px;display:flex}.contactos-check input[type=checkbox]{accent-color:#fb0793;cursor:pointer;width:16px;height:16px}.contactos-nuevo-movil{border:1px solid var(--color-magenta);background:var(--color-bg);width:100%;color:var(--color-magenta);font:600 15px/1.3 var(--font-body);cursor:pointer;border-radius:8px;margin:0 0 14px;padding:12px 16px}@media (width<=900px){.contactos-section h1{margin-bottom:14px;font-size:24px}}.arquitectos-status{color:var(--color-text-muted);font-size:15px}.arquitectos-status-error{color:var(--color-magenta)}.arquitectos-table-wrapper{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.arquitectos-table{border-collapse:collapse;width:100%;font-size:15px}.arquitectos-table thead th{text-align:left;background:var(--color-magenta);color:#fff;font-family:var(--font-heading);letter-spacing:.3px;text-transform:uppercase;padding:12px 20px;font-size:14px;font-weight:400}.arquitectos-table tbody td{border-top:1px solid var(--color-border);padding:10px 20px}.arquitectos-table tbody tr:nth-child(2n){background:var(--color-bg-subtle)}.arquitectos-table-edit{font:14px/1.4 var(--font-body);background:var(--color-bg);color:var(--color-magenta);border:1px solid var(--color-magenta);cursor:pointer;border-radius:6px;padding:6px 12px}.arquitectos-buscar{align-items:center;gap:12px;margin:0 0 12px;display:flex}.arquitectos-buscar input{border:1px solid var(--color-border);background:var(--color-bg);min-width:0;max-width:480px;font:15px/1.3 var(--font-body);border-radius:8px;flex:1;padding:9px 12px}.arquitectos-buscar input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.arquitectos-buscar-total{color:var(--color-text-muted);white-space:nowrap;font-size:13px}@media (width<=900px){.arquitectos-table-wrapper{background:0 0;border:none;border-radius:0;overflow:visible}.arquitectos-table thead{display:none}.arquitectos-table,.arquitectos-table tbody{display:block}.arquitectos-table tbody tr,.arquitectos-table tbody tr:nth-child(2n){border:1px solid var(--color-border);background:#fff;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;gap:0 12px;margin-bottom:12px;padding:14px 16px;display:grid}.arquitectos-table tbody td{overflow-wrap:anywhere;border:none;min-width:0;padding:0;display:block}.arquitectos-table tbody td.arquitectos-vacio{display:none}.arquitectos-table tbody td:before{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:11px;display:block}.arquitectos-table tbody td:first-child{grid-area:1/1;font-size:16px;font-weight:600}.arquitectos-table tbody td:nth-child(4){color:var(--color-text-muted);grid-area:2/1;font-size:14px}.arquitectos-table tbody td:nth-child(6){grid-area:1/2/3;align-self:start}.arquitectos-table-edit{min-height:40px}.arquitectos-table tbody td:nth-child(2){grid-area:3/1/auto/-1;margin-top:12px}.arquitectos-table tbody td:nth-child(3){grid-area:4/1/auto/-1;margin-top:8px;font-size:14px}.arquitectos-table tbody td:nth-child(2):before{content:"Teléfono"}.arquitectos-table tbody td:nth-child(3):before{content:"Email"}.arquitectos-table tbody td:nth-child(5){border-top:1px solid var(--color-border);grid-area:5/1/auto/-1;margin-top:12px;padding-top:10px;font-size:14px}.arquitectos-table tbody td:nth-child(5):before{content:"Notas"}}.arquitectos-section h1{margin-bottom:20px;font-size:28px}.arquitectos-form-sticky{z-index:5;background:var(--color-bg);margin:0 0 20px;position:sticky;top:0}.arquitectos-form{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-bottom:2px solid var(--color-magenta);border-radius:8px;padding:10px 14px}.arquitectos-form-row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.arquitectos-form-title{font-family:var(--font-heading);color:var(--color-magenta);white-space:nowrap;padding-bottom:8px;font-size:14px}.arquitectos-form-field{color:var(--color-text-muted);flex-direction:column;flex:150px;gap:3px;min-width:0;font-size:11px;display:flex}.arquitectos-form-field-rol{flex:260px}.arquitectos-form-field-finca{flex:220px}.arquitectos-form-field input{font:14px/1.3 var(--font-body);color:var(--color-text);border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;width:100%;padding:6px 8px}.arquitectos-form-field input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.arquitectos-rol-chip-list{flex-wrap:wrap;gap:6px;display:flex}.arquitectos-rol-chip-button{background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);font:13px/1.3 var(--font-body);cursor:pointer;white-space:nowrap;border-radius:6px;padding:5px 10px}.arquitectos-rol-chip-button-selected{background:var(--color-magenta);color:#fff;border-color:var(--color-magenta)}.arquitectos-form-error{color:var(--color-magenta);margin:8px 0 0;font-size:13px}.arquitectos-form-actions{gap:8px;display:flex}.arquitectos-form-submit{background:var(--color-magenta);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:7px 16px;font-size:14px}.arquitectos-form-cancel{background:var(--color-bg);color:var(--color-text-muted);border:1px solid var(--color-border);cursor:pointer;white-space:nowrap;border-radius:6px;padding:7px 16px;font-size:14px}.arquitectos-form-submit:disabled,.arquitectos-form-cancel:disabled{opacity:.6;cursor:not-allowed}@media (width<=640px){.arquitectos-form{padding:8px 10px}.arquitectos-form-row{gap:6px}.arquitectos-form-title{flex:1 0 100%;padding-bottom:2px}.arquitectos-form-field,.arquitectos-form-field-rol,.arquitectos-form-field-finca{flex:100%}.arquitectos-form-actions{flex:1 0 100%}.arquitectos-form-submit,.arquitectos-form-cancel{flex:1}}.arquitectos-nuevo-movil{border:1px solid var(--color-magenta);background:var(--color-bg);width:100%;color:var(--color-magenta);font:600 15px/1.3 var(--font-body);cursor:pointer;border-radius:8px;margin:0 0 14px;padding:12px 16px}@media (width<=900px){.arquitectos-section h1{margin-bottom:14px;font-size:24px}}.especialidad-selector{flex-direction:column;gap:10px;display:flex}.especialidad-chip-list{flex-wrap:wrap;gap:8px;display:flex}.especialidad-chip-button{color:#1a1a1a;border:1px solid var(--color-border);font:14px/1.4 var(--font-body);cursor:pointer;background:#fff;border-radius:6px;padding:6px 12px}.especialidad-chip-button-selected{color:#fff;background:#fb0793;border-color:#fb0793}.especialidad-custom-row{gap:8px;display:flex}.especialidad-custom-input{font:15px/1.4 var(--font-body);color:#1a1a1a;border:1px solid var(--color-border);background:#fff;border-radius:6px;flex:1;padding:10px 12px}.especialidad-custom-input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.especialidad-custom-add{color:#fb0793;font:14px/1.4 var(--font-body);cursor:pointer;background:#fff;border:1px solid #fb0793;border-radius:6px;padding:0 16px}.operarios-section h1{margin-bottom:20px;font-size:28px}.operarios-form{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:8px;margin-bottom:32px;padding:20px}.operarios-form h2{margin-bottom:16px;font-size:18px}.operarios-form-columns{align-items:flex-start;gap:24px;display:flex}.operarios-form-col-left,.operarios-form-col-right{flex-direction:column;flex:1 1 0;gap:16px;display:flex}@media (width<=640px){.operarios-form-columns{flex-direction:column}}.operarios-form-field{color:var(--color-text-muted);flex-direction:column;gap:6px;font-size:14px;display:flex}.operarios-form-field>input,.operarios-form-field>select{font:15px/1.4 var(--font-body);color:var(--color-text);border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;padding:10px 12px}.operarios-form-field>select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%23767676' stroke-width='1.6' stroke-linecap='round'/></svg>");background-position:right 14px center;background-repeat:no-repeat;height:44px;padding-right:36px}.operarios-form-field>input:focus,.operarios-form-field>select:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.operarios-form-error{color:var(--color-magenta);margin:16px 0 0;font-size:14px}.operarios-form-submit{background:var(--color-magenta);color:#fff;cursor:pointer;border:none;border-radius:6px;margin-top:20px;padding:10px 20px;font-size:15px}.operarios-form-submit:disabled{opacity:.6;cursor:not-allowed}.operarios-list-title{margin-bottom:16px;font-size:18px}.operarios-status{color:var(--color-text-muted);font-size:15px}.operarios-status-error{color:var(--color-magenta)}.operarios-table-wrapper{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;overflow-x:auto}.operarios-table{border-collapse:collapse;width:100%;font-size:15px}.operarios-table thead th{text-align:left;background:var(--color-magenta);color:#fff;font-family:var(--font-heading);letter-spacing:.3px;text-transform:uppercase;padding:12px 20px;font-size:14px;font-weight:400}.operarios-table tbody td{border-top:1px solid var(--color-border);padding:10px 20px}.operarios-table tbody tr:nth-child(2n),.operarios-table-row-editing{background:var(--color-bg-subtle)}.operarios-table-chips{flex-wrap:wrap;gap:6px;display:flex}.operarios-table-chip{color:#fff;white-space:nowrap;background:#fb0793;border-radius:999px;align-items:center;padding:3px 10px;font-size:12px;font-weight:500;display:inline-flex}.operarios-table-input{width:100%;font:14px/1.4 var(--font-body);color:var(--color-text);border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;padding:6px 8px}.operarios-table-input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.operarios-table-actions{flex-wrap:wrap;gap:8px;display:flex}.operarios-table-edit,.operarios-table-save,.operarios-table-cancel{font:14px/1.4 var(--font-body);cursor:pointer;border:1px solid #0000;border-radius:6px;padding:6px 12px}.operarios-table-edit{background:var(--color-bg);color:var(--color-magenta);border-color:var(--color-magenta)}.operarios-table-save{background:var(--color-magenta);color:#fff}.operarios-table-cancel{background:var(--color-bg);color:var(--color-text-muted);border-color:var(--color-border)}.operarios-table-save:disabled,.operarios-table-cancel:disabled{opacity:.6;cursor:not-allowed}.operarios-table-actions~.operarios-form-error{margin-top:8px;font-size:13px}.operarios-form-nota{color:var(--color-text-muted);background:var(--color-bg-subtle);border-left:3px solid var(--color-magenta);border-radius:0 6px 6px 0;margin:0;padding:8px 12px;font-size:13px}.operarios-table-row-equipo td:first-child{padding-left:22px}.operarios-rama{color:var(--color-magenta);margin-right:6px}.operarios-form-editando{border-color:var(--color-magenta);box-shadow:0 0 0 2px #fb07931f}.operarios-form-cancel{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;margin-top:20px;margin-left:12px;font-size:14px}.operarios-form-cancel:hover:not(:disabled){text-decoration:underline}.operarios-table-row-editando td{background:#fdeaf4}.operarios-acceso{flex-direction:column;gap:2px;min-width:180px;display:flex}.operarios-acceso-si{color:#067647;word-break:break-all;font-weight:600}.operarios-acceso-ultimo{color:var(--color-text-muted);font-size:12px}.operarios-acceso-botones{gap:10px;margin-top:2px;display:flex}.operarios-acceso-link{color:var(--color-cyan);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;text-decoration:underline}.operarios-acceso-quitar{color:#b00020}.operarios-acceso-dar{border:1px solid var(--color-magenta);background:var(--color-bg);color:var(--color-magenta);cursor:pointer;white-space:nowrap;border-radius:6px;padding:6px 10px;font-size:13px}.operarios-acceso-dar:disabled,.operarios-acceso-link:disabled{opacity:.5;cursor:default}.operarios-botones{flex-direction:column;align-items:stretch;gap:6px;display:flex}.operarios-ver-zona{font:14px/1.4 var(--font-body);background:var(--color-bg);color:#00777b;cursor:pointer;white-space:nowrap;border:1px solid #00777b;border-radius:6px;padding:6px 12px}.operarios-sub-movil{display:none}.operarios-buscar{align-items:center;gap:12px;margin:0 0 12px;display:flex}.operarios-buscar input{border:1px solid var(--color-border);background:var(--color-bg);min-width:0;max-width:480px;font:15px/1.3 var(--font-body);border-radius:8px;flex:1;padding:9px 12px}.operarios-buscar input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.operarios-buscar-total{color:var(--color-text-muted);white-space:nowrap;font-size:13px}.operarios-nuevo-movil{border:1px solid var(--color-magenta);background:var(--color-bg);width:100%;color:var(--color-magenta);font:600 15px/1.3 var(--font-body);cursor:pointer;border-radius:8px;margin:0 0 20px;padding:12px 16px}@media (width<=900px){.operarios-section h1{margin-bottom:14px;font-size:24px}.operarios-form{margin-bottom:24px;padding:16px}.operarios-form-columns{flex-direction:column;gap:14px;display:flex}.operarios-form-col-left,.operarios-form-col-right{display:contents}.operarios-form-error{order:98;margin:0}.operarios-form-submit,.operarios-form-cancel{order:99;min-height:44px;margin:0}.operarios-form-cancel{border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px}.operarios-table-wrapper{background:0 0;border:none;border-radius:0;overflow:visible}.operarios-table thead{display:none}.operarios-table,.operarios-table tbody{display:block}.operarios-table tbody tr,.operarios-table tbody tr:nth-child(2n){border:1px solid var(--color-border);background:#fff;border-radius:10px;grid-template-columns:minmax(0,1fr) auto;gap:0 12px;margin-bottom:12px;padding:14px 16px;display:grid}.operarios-table tbody tr.operarios-table-row-equipo{border-left:3px solid var(--color-magenta);margin-left:20px}.operarios-rama{display:none}.operarios-table tbody tr.operarios-table-row-editando{border-color:var(--color-magenta);background:#fdeaf4}.operarios-table tbody tr td,.operarios-table tbody tr.operarios-table-row-equipo td:first-child,.operarios-table tbody tr.operarios-table-row-editando td{overflow-wrap:anywhere;background:0 0;border:none;min-width:0;padding:0;display:block}.operarios-table tbody tr td.operarios-vacio,.operarios-table tbody tr td:nth-child(5),.operarios-table tbody tr td:nth-child(6){display:none}.operarios-sub-movil{color:var(--color-text-muted);font-size:14px;display:block}.operarios-table tbody td:before{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:11px;display:block}.operarios-table tbody td:first-child{grid-area:1/1;font-size:16px;font-weight:600}.operarios-table tbody td:nth-child(2){color:var(--color-text-muted);grid-area:2/1;font-size:14px}.operarios-table tbody td:nth-child(11){grid-area:1/2/3;align-self:start}.operarios-table-edit,.operarios-ver-zona{min-height:40px}.operarios-table tbody td:nth-child(7){grid-area:3/1/auto/-1;margin-top:10px}.operarios-table tbody td:nth-child(9){grid-area:4/1/auto/-1;margin-top:12px}.operarios-table tbody td:nth-child(8){grid-area:5/1/auto/-1;margin-top:8px;font-size:14px}.operarios-table tbody td:nth-child(9):before{content:"Teléfono"}.operarios-table tbody td:nth-child(8):before{content:"Email"}.operarios-table tbody td:nth-child(3){grid-area:6/1/auto/-1;margin-top:12px;font-size:14px}.operarios-table tbody td:nth-child(4){grid-area:7/1/auto/-1;margin-top:8px;font-size:14px}.operarios-table tbody td:nth-child(3):before{content:"NIF"}.operarios-table tbody td:nth-child(4):before{content:"Dirección fiscal"}.operarios-table tbody tr td:nth-child(10){border-top:1px solid var(--color-border);grid-area:8/1/auto/-1;margin-top:14px;padding-top:12px}.operarios-table tbody td:nth-child(10):before{content:"Acceso a la app";margin-bottom:4px}.operarios-acceso{min-width:0}.operarios-acceso-botones{gap:20px;margin-top:6px}.operarios-acceso-link{min-height:32px;font-size:14px}.operarios-acceso-dar{min-height:40px;padding:8px 14px;font-size:14px}}.presupuestos-section h1{margin-bottom:20px;font-size:28px}.presupuestos-form{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:8px;margin-bottom:32px;padding:20px}.presupuestos-form h2{margin-bottom:16px;font-size:18px}.presupuestos-form-section{margin-bottom:28px}.presupuestos-form-section:last-of-type{margin-bottom:0}.presupuestos-form-section-title{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.4px;color:var(--color-magenta);border-bottom:1px solid var(--color-border);margin:0 0 14px;padding-bottom:8px;font-size:15px;font-weight:400}.presupuestos-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.presupuestos-form-field{color:var(--color-text-muted);flex-direction:column;gap:6px;font-size:14px;display:flex}.presupuestos-form-field-full{grid-column:1/-1}.presupuestos-input{font:15px/1.4 var(--font-body);color:#1a1a1a;border:1px solid var(--color-border);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border-radius:6px;width:100%;padding:10px 12px}textarea.presupuestos-input{resize:vertical;font-family:var(--font-body)}.presupuestos-input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.presupuestos-input[readonly]{background:var(--color-bg-subtle);color:var(--color-text-muted)}.presupuestos-warning{color:var(--color-magenta);margin:0 0 8px;font-size:14px}.presupuestos-info-box{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;padding:12px 14px}.presupuestos-info-box p{color:#1a1a1a;margin:0;font-size:14px}.presupuestos-info-box p+p{margin-top:4px}.presupuestos-ia-button{color:#fff;font:15px/1.4 var(--font-body);cursor:pointer;background:#1b2a4a;border:none;border-radius:6px;margin-top:16px;padding:10px 20px}.presupuestos-ia-button:disabled{opacity:.6;cursor:not-allowed}.presupuestos-ia-separador{color:var(--color-text-muted);text-align:center;margin:14px 0;font-size:13px}.presupuestos-import-button{color:#1b2a4a;background:#fff;border:1px solid #1b2a4a}.presupuestos-file-input{display:none}.presupuestos-estilo-field{max-width:260px;margin-bottom:16px}.presupuestos-capitols{flex-direction:column;gap:12px;display:flex}.presupuestos-capitol-row{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;align-items:flex-start;gap:12px;padding:12px;display:flex}.presupuestos-capitol-fields{flex-direction:column;flex:1;gap:8px;display:flex}.presupuestos-partides-table-wrapper{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;margin-bottom:12px;overflow-x:auto}.presupuestos-partides-table{border-collapse:collapse;width:100%;font-size:14px}.presupuestos-partides-table thead th{text-align:left;background:var(--color-magenta);color:#fff;font-family:var(--font-heading);letter-spacing:.3px;text-transform:uppercase;white-space:nowrap;padding:10px 12px;font-size:13px;font-weight:400}.presupuestos-partides-table tbody td{border-top:1px solid var(--color-border);min-width:110px;padding:8px 10px}.presupuestos-partida-importe{color:#1a1a1a;white-space:nowrap;font-weight:600}.presupuestos-add-row{color:var(--color-magenta);border:1px solid var(--color-magenta);font:14px/1.4 var(--font-body);cursor:pointer;background:#fff;border-radius:6px;align-self:flex-start;padding:8px 16px}.presupuestos-remove-row{color:#b91c1c;font:13px/1.4 var(--font-body);cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #b91c1c;border-radius:6px;padding:6px 12px}.presupuestos-remove-row:disabled{opacity:.4;cursor:not-allowed}.presupuestos-resumen{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;max-width:340px;margin-top:16px;padding:14px 16px}.presupuestos-resumen-line{color:#1a1a1a;justify-content:space-between;align-items:center;padding:4px 0;font-size:14px;display:flex}.presupuestos-resumen-total{border-top:1px solid var(--color-border);margin-top:6px;padding-top:10px;font-size:16px}.presupuestos-form-error{color:var(--color-magenta);margin:16px 0 0;font-size:14px}.presupuestos-form-actions{gap:12px;margin-top:20px;display:flex}.presupuestos-form-submit{background:var(--color-magenta);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:10px 20px;font-size:15px}.presupuestos-form-submit:disabled{opacity:.6;cursor:not-allowed}.presupuestos-form-cancel{color:var(--color-text-muted);border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:6px;padding:10px 20px;font-size:15px}.presupuestos-form-cancel:disabled{opacity:.6;cursor:not-allowed}.presupuestos-list-title{margin-bottom:16px;font-size:18px}.presupuestos-status{color:var(--color-text-muted);font-size:15px}.presupuestos-status-error{color:var(--color-magenta)}.presupuestos-table-wrapper{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;overflow-x:auto}.presupuestos-table{border-collapse:collapse;width:100%;font-size:15px}.presupuestos-table thead th{text-align:left;background:var(--color-magenta);color:#fff;font-family:var(--font-heading);letter-spacing:.3px;text-transform:uppercase;white-space:nowrap;padding:12px 20px;font-size:14px;font-weight:400}.presupuestos-table tbody td{border-top:1px solid var(--color-border);padding:10px 20px}.presupuestos-table tbody tr:nth-child(2n){background:var(--color-bg-subtle)}.presupuestos-table-actions{flex-wrap:wrap;gap:8px;display:flex}.presupuestos-table-edit{color:var(--color-magenta);border:1px solid var(--color-magenta);font:14px/1.4 var(--font-body);cursor:pointer;white-space:nowrap;background:#fff;border-radius:6px;padding:6px 12px}.presupuestos-table-delete{color:#b91c1c;font:14px/1.4 var(--font-body);cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #b91c1c;border-radius:6px;padding:6px 12px}.presupuestos-table-pdf{color:#1b2a4a;font:14px/1.4 var(--font-body);cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #1b2a4a;border-radius:6px;padding:6px 12px}.presupuestos-table-pdf:disabled{opacity:.6;cursor:not-allowed}.presupuestos-modal-overlay{z-index:100;background:#00000073;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.presupuestos-modal{color:#1a1a1a;background:#fff;border-radius:10px;width:100%;max-width:440px;padding:24px}.presupuestos-modal h3{margin:0 0 12px;font-size:18px}.presupuestos-modal-warning{color:#1a1a1a;margin:0 0 16px;font-size:15px}.presupuestos-modal-details{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:8px;margin-bottom:16px;padding:12px 14px}.presupuestos-modal-details p{color:#1a1a1a;margin:0;font-size:14px}.presupuestos-modal-details p+p{margin-top:6px}.presupuestos-modal-actions{justify-content:flex-end;gap:12px;display:flex}.presupuestos-modal-delete{color:#fff;cursor:pointer;background:#b91c1c;border:none;border-radius:6px;padding:10px 20px;font-size:15px}.presupuestos-modal-delete:disabled{opacity:.6;cursor:not-allowed}@media (width<=640px){.presupuestos-form-grid{grid-template-columns:1fr}}.presupuestos-form-hint{color:#6e6e6e;margin-top:.35rem;font-size:.75rem;line-height:1.35;display:block}.presupuestos-numero-provisional{color:#9a99a0;font-size:12px;font-style:italic}.presupuestos-numero-nota{color:#9a99a0;font-size:11px;display:block}.presupuestos-table-numerar{font:14px/1.4 var(--font-body);background:var(--color-bg);color:#002cc0;cursor:pointer;white-space:nowrap;border:1px solid #002cc0;border-radius:6px;padding:6px 12px}.presupuestos-table-numerar:disabled{opacity:.55;cursor:default}.presupuestos-numero-propio{color:#002cc0;font-size:11px;display:block}.presupuestos-table-numero-manual{font:13px/1.4 var(--font-body);color:var(--color-text-muted);border:1px dashed var(--color-border);cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;padding:5px 10px}.presupuestos-table-numero-manual:hover:not(:disabled){border-style:solid;border-color:var(--color-magenta);color:var(--color-magenta)}.presupuestos-table-numero-manual:disabled{opacity:.5;cursor:not-allowed}.presupuestos-partides-table{table-layout:fixed}.presupuestos-partides-table tbody td{vertical-align:top;min-width:0}.presupuestos-partides-table th:first-child,.presupuestos-partides-table td:first-child{width:48%}.presupuestos-partides-table th:nth-child(2),.presupuestos-partides-table td:nth-child(2),.presupuestos-partides-table th:nth-child(3),.presupuestos-partides-table td:nth-child(3),.presupuestos-partides-table th:nth-child(4),.presupuestos-partides-table td:nth-child(4),.presupuestos-partides-table th:nth-child(5),.presupuestos-partides-table td:nth-child(5){width:11%}.presupuestos-partides-table th:nth-child(6),.presupuestos-partides-table td:nth-child(6){width:8%}.presupuestos-partides-table td:nth-child(2) .presupuestos-input,.presupuestos-partides-table td:nth-child(3) .presupuestos-input,.presupuestos-partides-table td:nth-child(4) .presupuestos-input{width:100%;padding-left:8px;padding-right:4px}.presupuestos-partida-concepto{resize:vertical;width:100%;line-height:1.4;font-family:var(--font-body)}.presupuestos-partida-importe{text-align:right}.presupuestos-partides-table .presupuestos-remove-row{width:100%;padding:6px 4px}.presupuestos-material-row{align-items:center;gap:8px;margin-bottom:6px;display:flex}.presupuestos-material-row .presupuestos-input:first-child{flex:1}.presupuestos-material-coste{flex:0 0 130px}.presupuestos-buscar{align-items:center;gap:12px;margin:0 0 12px;display:flex}.presupuestos-buscar .presupuestos-input{max-width:520px}.presupuestos-buscar-total{color:var(--color-text-muted);white-space:nowrap;font-size:13px}.presupuestos-nuevo-movil{border:1px solid var(--color-magenta);background:var(--color-bg);width:100%;color:var(--color-magenta);font:600 15px/1.3 var(--font-body);cursor:pointer;border-radius:8px;margin:0 0 16px;padding:12px 16px}@media (width<=900px){.presupuestos-section h1{font-size:24px}.presupuestos-form-grid{grid-template-columns:minmax(0,1fr)}.presupuestos-buscar .presupuestos-input{max-width:none}.presupuestos-lista-wrapper{background:0 0;border:none;border-radius:0;overflow:visible}.presupuestos-lista,.presupuestos-lista tbody{display:block}.presupuestos-lista thead{display:none}.presupuestos-lista tbody tr{background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"numero estado""direccion direccion""operario operario""base total""acciones acciones";align-items:center;column-gap:12px;margin-bottom:10px;padding:12px 14px;display:grid}.presupuestos-lista tbody tr:nth-child(2n){background:var(--color-bg)}.presupuestos-lista tbody td{border:none;min-width:0;padding:0;font-size:14px;display:block}.presupuestos-lista td.pl-numero{grid-area:numero;font-size:16px}.presupuestos-lista td.pl-estado{text-align:right;grid-area:estado;align-self:start;font-size:12px;font-weight:600}.presupuestos-lista td.pl-direccion{grid-area:direccion;margin-top:4px;font-weight:600}.presupuestos-lista td.pl-operario{color:var(--color-text-muted);grid-area:operario;font-size:13px}.presupuestos-lista td.pl-base{color:var(--color-text-muted);grid-area:base;margin-top:6px}.presupuestos-lista td.pl-total{text-align:right;grid-area:total;margin-top:6px;font-weight:700}.presupuestos-lista td[data-label]:before{content:attr(data-label) " ";color:var(--color-text-muted);font-weight:400}.presupuestos-lista td.pl-acciones{border-top:1px solid var(--color-border);grid-area:acciones;margin-top:10px;padding-top:10px}.presupuestos-lista .presupuestos-table-actions{gap:8px}.presupuestos-lista .presupuestos-table-actions button{padding:9px 12px}.presupuestos-partides-table-wrapper{background:0 0;border:none;overflow:visible}.presupuestos-partides-table,.presupuestos-partides-table tbody{display:block}.presupuestos-partides-table thead{display:none}.presupuestos-partides-table tbody tr{border:1px solid var(--color-border);background:var(--color-bg);border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:10px;padding:10px;display:grid}.presupuestos-partides-table tbody td,.presupuestos-partides-table th:nth-child(n),.presupuestos-partides-table td:nth-child(n){border:none;width:auto;padding:0}.presupuestos-partides-table td:first-child{grid-column:1/-1}.presupuestos-partides-table td:nth-child(5){text-align:left;grid-column:1/3;align-self:center;font-weight:700}.presupuestos-partides-table td:nth-child(6){grid-column:3}}.pf{flex-direction:column;max-width:760px;display:flex}.pf-campo{color:var(--color-text-muted);flex-direction:column;gap:4px;min-width:0;margin-bottom:12px;font-size:14px;display:flex}.pf-linea-info{color:var(--color-text);margin:-4px 0 12px;font-size:14px}.pf-linea-suave{color:var(--color-text-muted)}.pf-subtitulo{margin:20px 0 10px;font-size:18px}.pf-boton{background:var(--color-magenta);color:#fff;width:100%;font:600 15px/1.3 var(--font-body);cursor:pointer;border:none;border-radius:8px;margin:0;padding:12px;display:block}.pf-boton:disabled{opacity:.6;cursor:default}.pf-boton-secundario{background:var(--color-bg);color:var(--color-magenta);border:1px solid var(--color-magenta)}.pf-fila-botones{gap:10px;display:flex}.pf-eleccion{border:1px solid var(--color-magenta);background:var(--color-bg);border-radius:10px;padding:12px}.pf-eleccion-pregunta{text-align:center;margin:0 0 10px;font-weight:600}.pf-enlace{font:600 15px/1.3 var(--font-body);color:var(--color-magenta);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:4px 0 14px}.pf-enlace-centrado{color:var(--color-text-muted);align-self:center;margin:8px auto 0;padding-bottom:0;font-weight:400;display:block}.pf-divisoria{color:var(--color-text-muted);align-items:center;gap:12px;margin:22px 0 6px;font-size:14px;display:flex}.pf-divisoria:before,.pf-divisoria:after{content:"";border-top:1px solid var(--color-border);flex:1}.pf-fila-material{align-items:center;gap:8px;margin-bottom:6px;display:flex}.pf-fila-material .presupuestos-input:first-child{flex:1;min-width:0}.pf-coste{flex:0 0 110px}.pf-quitar-x{background:var(--color-bg-subtle);height:32px;color:var(--color-text-muted);cursor:pointer;border:none;border-radius:50%;flex:0 0 32px;font-size:20px;line-height:1}.pf-linea{background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;flex-direction:column;gap:6px;margin-bottom:10px;padding:12px;display:flex}.pf-fila-partida{gap:10px;display:flex}.pf-fila-partida .presupuestos-input:first-child{flex:1;min-width:0}.pf-fila-partida .presupuestos-input:nth-child(2){flex:0 0 96px}.pf-fila-partida .presupuestos-input:nth-child(3){flex:1.2;min-width:0}.pf-linea-pie{justify-content:space-between;align-items:center;display:flex}.pf-quitar{color:#b00020;cursor:pointer;background:0 0;border:none;align-self:flex-end;padding:4px 0;font-size:14px}.pf-totales{border:1px solid var(--color-border);background:var(--color-bg);border-radius:10px;margin:8px 0 12px;padding:10px 14px}.pf-totales>div{justify-content:space-between;padding:3px 0;font-size:15px;display:flex}.pf-total-final{border-top:1px solid var(--color-border);margin-top:4px;font-weight:700;padding-top:8px!important;font-size:17px!important}.pf-partida-detalle{color:var(--color-text-muted);margin-top:6px;font-size:13px}.pmat-overlay{z-index:80;background:#14141e73;justify-content:center;align-items:flex-start;padding:40px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.pmat{color:#1a1a1a;background:#fff;border-radius:10px;width:100%;max-width:560px;padding:18px 20px;box-shadow:0 12px 40px #0003}.pmat h3{margin:0 0 6px;font-size:18px}.pmat-nota{color:#767676;margin:0 0 14px;font-size:14px}.pmat-pregunta{border:1px solid #e5e4e7;border-radius:8px;margin:0 0 12px;padding:10px 12px}.pmat-pregunta legend{padding:0 4px;font-size:14px;font-weight:600}.pmat-opcion{cursor:pointer;align-items:flex-start;gap:8px;padding:5px 0;font-size:14px;display:flex}.pmat-opcion input{margin-top:3px}.pmat-recomendada{color:#1c6b47;background:#e8f6ee;border-radius:999px;margin-left:8px;padding:1px 7px;font-size:11px;font-style:normal;font-weight:700}.pmat-otro{width:100%;font:inherit;box-sizing:border-box;border:1px solid #e5e4e7;border-radius:6px;margin-top:4px;padding:7px 9px;font-size:14px}.pmat-error{color:#a8055f;margin:0 0 10px;font-size:14px}.pmat-acciones{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.pmat-boton{color:#fff;font:inherit;cursor:pointer;background:#fb0793;border:none;border-radius:6px;padding:9px 16px;font-weight:600}.pmat-enlace{color:#767676;font:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.pmat-seccion{letter-spacing:.04em;text-transform:uppercase;color:#767676;margin:6px 0 8px;font-size:12px;font-weight:700}.pmat-medida-campo{flex-direction:column;gap:4px;font-size:14px;font-weight:600;display:flex}.pmat-medida-fila{align-items:center;gap:8px;font-weight:400;display:flex}.pmat-medida-fila .pmat-otro{max-width:260px;margin-top:0}.pmat-unidad{color:#767676}.pmat-opcion.pmat-opcion-otro{align-items:center}.pmat-opcion-otro>span{white-space:nowrap}.pmat-opcion .pmat-otro-linea{flex:1;min-width:0;margin:0}.pmat-ayuda{color:#767676;margin:0 0 4px;font-size:12px}.trad-bloque{background:#fff;border:1px solid #e4e3e8;border-radius:8px;margin:0 0 20px;padding:14px}.trad-titulo{letter-spacing:.09em;text-transform:uppercase;color:#fb0793;margin:0 0 .7rem;font-size:.78rem}.trad-tabs{flex-wrap:wrap;gap:.4rem;margin-bottom:.9rem;display:flex}.trad-tab{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:999px;align-items:center;gap:.4rem;padding:.4rem .85rem;font-size:.85rem;display:inline-flex}.trad-tab-activa{color:#fff;background:#002cc0;border-color:#002cc0}.trad-tab-aviso{background:#fd8401;border-radius:50%;width:7px;height:7px}.trad-panel{flex-direction:column;gap:.8rem;display:flex}.trad-nota,.trad-vacio,.trad-estado{color:#6e6e6e;margin:0;font-size:.78rem;line-height:1.4}.trad-vacio{color:#4a4a4a;background:#fff6e8;border-left:3px solid #fd8401;border-radius:6px;padding:.7rem .85rem}.trad-error{color:#7a1414;background:#fdecec;border-left:3px solid #d92020;border-radius:6px;margin:0;padding:.7rem .85rem;font-size:.82rem}.trad-barra{flex-wrap:wrap;align-items:center;gap:.8rem;display:flex}.trad-boton-traducir{color:#002cc0;cursor:pointer;background:#fff;border:1px solid #002cc0;border-radius:6px;padding:.45rem .95rem;font-size:.85rem}.trad-boton-traducir:disabled{opacity:.55;cursor:default}.trad-campo{flex-direction:column;gap:.25rem;display:flex}.trad-label{letter-spacing:.06em;text-transform:uppercase;color:#6e6e6e;font-size:.72rem}.trad-input,.trad-textarea{width:100%;font:inherit;border:1px solid #d7d6db;border-radius:5px;padding:.45rem .6rem;font-size:.85rem}.trad-input-titulo{font-weight:600}.trad-textarea{resize:vertical;line-height:1.45}.trad-original-inline{color:#9a99a0;font-size:.72rem;line-height:1.35}.trad-item{border-top:1px solid #f0eff2;grid-template-columns:1.6rem 1fr;gap:.6rem;padding-top:.7rem;display:grid}.trad-num{color:#002cc0;font-weight:700}.trad-item-cuerpo{flex-direction:column;gap:.3rem;min-width:0;display:flex}.trad-lectura{white-space:pre-wrap;margin:0;font-size:.85rem;line-height:1.45}.trad-lectura-titulo{font-weight:600}.trad-lectura-detalle{color:#4a4a4a}.trad-comparar summary{color:#6e6e6e;cursor:pointer;font-size:.75rem}.situacion-aprobado{border-top:1px dashed var(--color-border);margin-top:8px;padding-top:8px;display:block}.situacion-aprobado-pregunta{color:#7a4a00;margin-bottom:5px;font-size:11px;display:block}.situacion-aprobado-botones{flex-wrap:wrap;gap:5px;display:flex}.situacion-aprobado-botones button{font:11px/1.3 var(--font-body);background:var(--color-bg);color:var(--color-text-muted);border:1px solid var(--color-border);cursor:pointer;white-space:nowrap;border-radius:999px;padding:4px 10px}.situacion-aprobado-botones button:hover:not(:disabled){color:#002cc0;border-color:#002cc0}.situacion-aprobado-botones button.activa{color:#fff;background:#002cc0;border-color:#002cc0}.situacion-aprobado-botones button:disabled{opacity:.55;cursor:default}.situacion-aprobado-fecha{color:var(--color-text-muted);align-items:center;gap:6px;margin-top:6px;font-size:11px;display:flex}.situacion-aprobado-fecha input{font:11px/1.3 var(--font-body);border:1px solid var(--color-border);color:var(--color-text);background:var(--color-bg);border-radius:6px;padding:3px 6px}.presupuestos-eco-status{color:var(--color-text-muted);font-size:15px}.presupuestos-eco-status-error{color:var(--color-magenta)}.presupuestos-eco-table-wrapper{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;overflow:hidden}.presupuestos-eco-table{border-collapse:collapse;width:100%;font-size:15px}.presupuestos-eco-table thead th{text-align:left;background:var(--color-magenta);color:#fff;font-family:var(--font-heading);letter-spacing:.3px;text-transform:uppercase;padding:12px 20px;font-size:14px;font-weight:400}.presupuestos-eco-table tbody td{border-top:1px solid var(--color-border);padding:10px 20px}.presupuestos-eco-table tbody tr:nth-child(2n){background:var(--color-bg-subtle)}.presupuestos-eco-table-edit{font:14px/1.4 var(--font-body);background:var(--color-bg);color:var(--color-magenta);border:1px solid var(--color-magenta);cursor:pointer;border-radius:6px;padding:6px 12px}.presupuestos-eco-pdf-cell{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.presupuestos-eco-pdf-idioma{font:13px/1.4 var(--font-body);background:var(--color-bg);color:var(--color-text);border:1px solid var(--color-border);cursor:pointer;border-radius:6px;padding:6px 8px}.presupuestos-eco-pdf-idioma:disabled{opacity:.6;cursor:not-allowed}.presupuestos-eco-pdf-button{font:700 13px/1.4 var(--font-body);text-transform:uppercase;letter-spacing:.4px;background:var(--color-magenta);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:999px;padding:8px 16px;box-shadow:0 1px 3px #fb079366}.presupuestos-eco-pdf-button:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.presupuestos-eco-table-actions{gap:6px;display:flex}.presupuestos-eco-table-delete{font:14px/1.4 var(--font-body);background:var(--color-bg);color:#d92020;cursor:pointer;white-space:nowrap;border:1px solid #f0c9c9;border-radius:6px;padding:6px 12px}.presupuestos-eco-table-delete:hover{background:#fdecec}.presupuestos-eco-table-delete:disabled{opacity:.55;cursor:default}.presupuestos-eco-estado{white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:12px;display:inline-block}.presupuestos-eco-estado-borrador{color:#6e6e6e;background:#f0eff2}.presupuestos-eco-estado-enviado{color:#7a4a00;background:#fff6e8}.presupuestos-eco-estado-aprobado{color:#1d6b02;background:#f2fbf4}.presupuestos-eco-estado-rechazado{color:#7a1414;background:#fdecec}.presupuestos-eco-estado-nota{color:#9a99a0;margin-top:3px;font-size:11px;display:block}.presupuestos-eco-enviar-button{font:13px/1.4 var(--font-body);background:var(--color-bg);color:#002cc0;cursor:pointer;white-space:nowrap;border:1px solid #002cc0;border-radius:6px;padding:6px 12px}.presupuestos-eco-enviar-button:disabled{opacity:.55;cursor:default}.presupuestos-eco-table-registrar{font:14px/1.4 var(--font-body);background:var(--color-bg);color:#7a4a00;cursor:pointer;white-space:nowrap;border:1px solid #f0d3a8;border-radius:6px;padding:6px 12px}.presupuestos-eco-table-registrar:hover{background:#fff6e8}.presupuestos-eco-aceptado{background:#f2fbf4;border-left:3px solid #1d6b02;border-radius:0 6px 6px 0;margin-top:6px;padding:6px 9px;display:block}.presupuestos-eco-aceptado-titulo{color:#1d6b02;font-size:12px;font-weight:700;display:block}.presupuestos-eco-aceptado-linea{color:#4a6b47;margin-top:2px;font-size:11px;line-height:1.35;display:block}.presupuestos-eco-congelado{color:#1d6b02;background:#f2fbf4;border:1px solid #cbe6cd;border-radius:6px;padding:6px 10px;font-size:12px}.presupuestos-eco-fila{cursor:pointer}.presupuestos-eco-fila:hover{background:var(--color-bg-subtle)}.presupuestos-eco-fila-abierta{background:#fdf0f8}.presupuestos-eco-origen{font-weight:600}.presupuestos-eco-accion-principal{background:var(--color-magenta);color:#fff;font-family:var(--font-body);cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:8px 14px;font-size:13px;font-weight:600}.presupuestos-eco-accion-principal:hover{background:#d90680}.presupuestos-eco-accion-principal:disabled{opacity:.6;cursor:default}.presupuestos-eco-accion-secundaria{border:1px solid var(--color-border);font-family:var(--font-body);color:var(--color-text);cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;padding:8px 14px;font-size:13px;font-weight:500}.presupuestos-eco-accion-secundaria:hover{border-color:var(--color-magenta);color:var(--color-magenta)}.presupuestos-eco-velo{z-index:40;background:#14121957;position:fixed;inset:0}.presupuestos-eco-panel{border-left:1px solid var(--color-border);z-index:41;background:#fff;flex-direction:column;width:min(440px,94vw);display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-12px 0 34px #14121924}.presupuestos-eco-panel-cabecera{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 22px 16px;display:flex}.presupuestos-eco-panel-titulo{color:var(--color-text);margin:0 0 8px;font-size:16px;font-weight:700;line-height:1.35}.presupuestos-eco-panel-cerrar{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;flex:none;padding:0 4px;font-size:26px;line-height:1}.presupuestos-eco-panel-cerrar:hover{color:var(--color-magenta)}.presupuestos-eco-panel-cuerpo{flex-direction:column;flex:1;gap:20px;padding:18px 22px 24px;display:flex;overflow-y:auto}.presupuestos-eco-bloque h3{letter-spacing:.07em;text-transform:uppercase;color:var(--color-text-muted);margin:0 0 8px;font-size:12px;font-weight:700}.presupuestos-eco-bloque p{color:var(--color-text);margin:0 0 4px;font-size:14px;line-height:1.5}.presupuestos-eco-bloque-aceptado{background:#eef8ea;border:1px solid #cfe6c6;border-radius:8px;padding:14px 16px}.presupuestos-eco-bloque-aceptado h3{color:#1d6b02}.presupuestos-eco-cita{color:var(--color-text-muted);font-style:italic}.presupuestos-eco-nota{color:var(--color-text-muted);font-size:12px!important}.presupuestos-eco-datos{grid-template-columns:auto 1fr;gap:6px 16px;margin:0;font-size:14px;display:grid}.presupuestos-eco-datos dt{color:var(--color-text-muted)}.presupuestos-eco-datos dd{margin:0;font-weight:600}.presupuestos-eco-panel-doc{align-items:center;gap:8px;margin-bottom:10px;display:flex}.presupuestos-eco-panel-pie{border-top:1px solid var(--color-border);background:var(--color-bg-subtle);gap:8px;padding:14px 22px;display:flex}.presupuestos-eco-menu{vertical-align:middle;margin-left:6px;display:inline-block;position:relative}.presupuestos-eco-menu-boton{vertical-align:middle;border:1px solid var(--color-border);width:34px;height:32px;color:var(--color-text-muted);cursor:pointer;background:#fff;border-radius:6px;margin-left:6px;font-size:15px;line-height:1}.presupuestos-eco-menu-boton:hover{border-color:var(--color-magenta);color:var(--color-magenta)}.presupuestos-eco-menu-velo{z-index:30;position:fixed;inset:0}.presupuestos-eco-menu-lista{z-index:31;border:1px solid var(--color-border);background:#fff;border-radius:8px;flex-direction:column;min-width:158px;padding:5px;display:flex;position:fixed;box-shadow:0 10px 26px #14121929}.presupuestos-eco-menu-lista button{text-align:left;font-family:var(--font-body);color:var(--color-text);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:5px;padding:9px 11px;font-size:13px}.presupuestos-eco-menu-lista button:hover{background:var(--color-bg-subtle)}.presupuestos-eco-menu-borrar{color:#c0392b!important}.presupuestos-eco-menu-borrar:hover{background:#fdecea!important}.presupuestos-eco-menu-lista button:disabled{opacity:.6;cursor:default}.presupuestos-eco-titulo{color:var(--color-text-muted);margin-top:3px;font-size:13px;display:block}@media (width<=900px){.presupuestos-eco-table-wrapper{box-shadow:none;background:0 0;border:none;overflow:visible}.presupuestos-eco-table thead{display:none}.presupuestos-eco-table,.presupuestos-eco-table tbody{display:block}.presupuestos-eco-table tr.presupuestos-eco-fila{border:1px solid var(--color-border);background:#fff;border-radius:10px;grid-template-columns:1fr 1fr;gap:4px 12px;margin-bottom:12px;padding:14px 16px;display:grid}.presupuestos-eco-table tr.presupuestos-eco-fila td{border:none;padding:0;font-size:14px;display:block}.presupuestos-eco-table td.pe-origen{grid-column:1/-1;font-weight:600}.presupuestos-eco-table td.pe-operario,.presupuestos-eco-table td.pe-base,.presupuestos-eco-table td.pe-fecha{color:var(--color-text-muted)}.presupuestos-eco-table td[data-label]:before{content:attr(data-label) " ";text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:11px;display:block}.presupuestos-eco-table td.pe-base{color:var(--color-text);font-weight:600}.presupuestos-eco-table td.pe-estado{align-self:end}.presupuestos-eco-table td.pe-acciones{grid-column:1/-1;margin-top:8px}.presupuestos-eco-table td.pe-acciones button{min-height:40px}}.presupuestos-eco-section h1{margin-bottom:20px;font-size:28px}.presupuestos-eco-list-title{margin:24px 0 16px;font-size:18px}.presupuestos-eco-form-sticky{z-index:5;background:var(--color-bg);margin:0 0 20px;position:sticky;top:0}.presupuestos-eco-form{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-bottom:2px solid var(--color-magenta);border-radius:8px;padding:10px 14px}.presupuestos-eco-form-row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.presupuestos-eco-form-title{font-family:var(--font-heading);color:var(--color-magenta);white-space:nowrap;flex:1 0 100%;padding-bottom:8px;font-size:14px}.presupuestos-eco-form-field{color:var(--color-text-muted);flex-direction:column;flex:150px;gap:3px;min-width:0;font-size:11px;display:flex}.presupuestos-eco-form-field-origen{flex:2 300px}.presupuestos-eco-form-field-margen{flex:0 110px}.presupuestos-eco-form-field input,.presupuestos-eco-form-field select{font:14px/1.3 var(--font-body);color:var(--color-text);border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;width:100%;padding:6px 8px}.presupuestos-eco-form-field input:focus,.presupuestos-eco-form-field select:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.presupuestos-eco-form-field select:disabled{color:var(--color-text-muted);background:var(--color-border);cursor:not-allowed}.presupuestos-eco-apply-button{background:var(--color-bg);color:var(--color-magenta);border:1px solid var(--color-magenta);cursor:pointer;white-space:nowrap;border-radius:6px;padding:7px 14px;font-size:13px}.presupuestos-eco-apply-button:disabled{opacity:.6;cursor:not-allowed}.presupuestos-eco-totales{background:var(--color-bg);border:1px solid var(--color-border);border-radius:6px;flex-direction:column;gap:2px;padding:4px 12px;display:flex}.presupuestos-eco-totales-label{color:var(--color-text-muted);white-space:nowrap;font-size:10px}.presupuestos-eco-totales-value{font-family:var(--font-heading);color:var(--color-text);white-space:nowrap;font-size:16px}.presupuestos-eco-form-error{color:var(--color-magenta);margin:8px 0 0;font-size:13px}.presupuestos-eco-form-actions{gap:8px;display:flex}.presupuestos-eco-form-submit{background:var(--color-magenta);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:7px 16px;font-size:14px}.presupuestos-eco-form-cancel{background:var(--color-bg);color:var(--color-text-muted);border:1px solid var(--color-border);cursor:pointer;white-space:nowrap;border-radius:6px;padding:7px 16px;font-size:14px}.presupuestos-eco-form-submit:disabled,.presupuestos-eco-form-cancel:disabled{opacity:.6;cursor:not-allowed}.presupuestos-eco-capitols-wrapper{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;margin-bottom:12px;padding:16px 20px}.presupuestos-eco-capitols-list{flex-direction:column;gap:10px;margin:0;padding-left:20px;display:flex}.presupuestos-eco-capitols-list li strong{color:var(--color-magenta);font-size:14px}.presupuestos-eco-capitols-list li p{color:var(--color-text);white-space:pre-wrap;margin:4px 0 0;font-size:13px;line-height:1.4}.presupuestos-eco-capitol-total-row{flex-wrap:wrap;gap:16px;margin-bottom:12px;display:flex}.presupuestos-eco-capitol-total-row .presupuestos-eco-form-field{flex:220px;font-size:13px}.presupuestos-eco-capitol-total-row .presupuestos-eco-form-field input{padding:8px 10px;font-size:15px}.presupuestos-eco-col-interno-block{border:1px solid var(--color-border);background:#fff7fb;border-radius:6px;padding:6px 10px}.presupuestos-eco-lineas-wrapper{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;margin-bottom:12px;overflow:hidden}.presupuestos-eco-lineas-table{border-collapse:collapse;width:100%;font-size:14px}.presupuestos-eco-lineas-table thead th{text-align:left;background:var(--color-magenta);color:#fff;font-family:var(--font-heading);letter-spacing:.3px;text-transform:uppercase;padding:10px 14px;font-size:13px;font-weight:400}.presupuestos-eco-lineas-table tbody td{border-top:1px solid var(--color-border);padding:8px 14px}.presupuestos-eco-lineas-table tbody tr:nth-child(2n){background:var(--color-bg-subtle)}.presupuestos-eco-lineas-table input{width:100%;font:14px/1.3 var(--font-body);color:var(--color-text);border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;padding:5px 7px}.presupuestos-eco-lineas-table input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.presupuestos-eco-precio-input{color:var(--color-magenta);font-weight:700}.presupuestos-eco-col-interno{background:#fff7fb}.presupuestos-eco-panel-interno{border:1px dashed var(--color-magenta);background:#fff7fb;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;padding:10px 16px;display:flex}.presupuestos-eco-panel-interno-label{color:var(--color-text-muted);font-size:13px}.presupuestos-eco-panel-interno-value{font-family:var(--font-heading);color:var(--color-magenta);font-size:18px}@media (width<=640px){.presupuestos-eco-form{padding:8px 10px}.presupuestos-eco-form-row{gap:6px}.presupuestos-eco-form-field,.presupuestos-eco-form-field-origen,.presupuestos-eco-form-field-margen,.presupuestos-eco-apply-button,.presupuestos-eco-totales{flex:100%}.presupuestos-eco-form-actions{flex:1 0 100%}.presupuestos-eco-form-submit,.presupuestos-eco-form-cancel{flex:1}}.presupuestos-eco-iva{border-left:3px solid;border-radius:6px;flex-direction:column;gap:.15rem;padding:.55rem .75rem;display:flex}.presupuestos-eco-iva-pct{font-size:.95rem;font-weight:700}.presupuestos-eco-iva-motivo{color:#4a4a4a;font-size:.75rem;line-height:1.35}.presupuestos-eco-iva-10{background:#f2fbf4;border-left-color:#35bb02}.presupuestos-eco-iva-21{background:#fff6e8;border-left-color:#fd8401}.presupuestos-eco-enlace{background:#f2f4ff;border:1px solid #c9d2ff;border-radius:8px;margin:0 0 16px;padding:14px}.presupuestos-eco-enlace-titulo{color:#002cc0;margin:0 0 8px;font-size:.82rem;font-weight:700}.presupuestos-eco-enlace-fila{flex-wrap:wrap;gap:8px;display:flex}.presupuestos-eco-enlace-fila input{font:inherit;background:#fff;border:1px solid #c9d2ff;border-radius:6px;flex:320px;min-width:0;padding:8px 10px;font-size:.85rem}.presupuestos-eco-enlace-fila button{color:#002cc0;cursor:pointer;background:#fff;border:1px solid #002cc0;border-radius:6px;padding:8px 14px;font-size:.85rem}.presupuestos-eco-enlace-nota{color:#4a4a4a;margin:8px 0 0;font-size:.76rem;line-height:1.45}.presupuestos-eco-form-row{align-items:flex-end}.presupuestos-eco-form-field input,.presupuestos-eco-form-field select{box-sizing:border-box;height:36px}.presupuestos-eco-totales{background:0 0;border:none;border-radius:0;flex:150px;gap:3px;min-width:0;padding:0}.presupuestos-eco-totales-label{font-size:11px}.presupuestos-eco-totales-value{box-sizing:border-box;border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;align-items:center;height:36px;padding:0 10px;font-size:15px;display:flex}.presupuestos-eco-apply-button{box-sizing:border-box;align-self:flex-end;height:36px}.presupuestos-eco-form-actions{align-self:flex-end}.presupuestos-eco-form-submit,.presupuestos-eco-form-cancel{box-sizing:border-box;height:36px}.presupuestos-eco-iva-campo{flex:0 120px}.presupuestos-eco-iva-valor{box-sizing:border-box;border:1px solid var(--color-border);background:var(--color-bg);height:36px;color:var(--color-text);border-left-width:3px;border-radius:6px;align-items:center;padding:0 10px;font-size:15px;font-weight:700;display:flex}.presupuestos-eco-iva-10 .presupuestos-eco-iva-valor{background:#f2fbf4;border-left-color:#35bb02}.presupuestos-eco-iva-21 .presupuestos-eco-iva-valor{background:#fff6e8;border-left-color:#fd8401}.presupuestos-eco-iva-motivo{color:var(--color-text-muted);flex:1 0 100%;margin:2px 0 0;font-size:12px;line-height:1.4}.presupuestos-eco-form-actions{flex:1 0 100%;margin-top:4px}.presupuestos-eco-iva-campo.presupuestos-eco-iva-10,.presupuestos-eco-iva-campo.presupuestos-eco-iva-21{background:0 0;border:none;border-radius:0;padding:0}.presupuestos-eco-enlace-fallo{color:#9a5a00;background:#fff2df;border:1px solid #f0b95c;border-radius:6px;margin:6px 0 10px;padding:8px 12px;font-size:13px;line-height:1.45}.presupuestos-eco-form-field-precio{max-width:150px}.presupuestos-eco-margen-real{color:var(--color-text-muted);flex-basis:100%;margin:6px 0 0;font-size:13px}.presupuestos-eco-margen-real strong{color:var(--color-text)}.presupuestos-eco-buscar{border:1px solid var(--color-border);width:100%;max-width:480px;font:15px/1.4 var(--font-body);background:#fff;border-radius:8px;margin:8px 0 14px;padding:10px 12px}.presupuestos-eco-nuevo-movil{border:1px dashed var(--color-magenta);width:100%;color:var(--color-magenta);font:600 15px/1.3 var(--font-body);cursor:pointer;background:#fff;border-radius:8px;margin:0 0 16px;padding:12px}.presupuestos-eco-detalle{color:var(--color-text-muted);white-space:pre-line;margin-top:4px;font-size:12px;line-height:1.45}.presupuestos-eco-total-iva .presupuestos-eco-totales-value{border-color:var(--color-magenta);color:var(--color-magenta);font-weight:700}.presupuestos-eco-enlace-copia{color:#1d6b3a;margin:0 0 8px;font-size:13px}.presupuestos-eco-composicion{border:1px solid var(--color-border);background:var(--color-bg-subtle);border-radius:10px;flex-direction:column;gap:12px;margin:16px 0;padding:14px 16px;display:flex}.presupuestos-eco-composicion-fila{flex-wrap:wrap;align-items:flex-end;gap:10px 16px;display:flex}.presupuestos-eco-composicion-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;flex-basis:100%;font-size:12px;font-weight:600}.presupuestos-eco-origenes{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.presupuestos-eco-origen-chip{background:var(--color-bg);border:1px solid var(--color-border);border-left:3px solid var(--color-cyan);border-radius:8px;align-items:center;gap:8px;padding:6px 10px;font-size:13px;display:flex}.presupuestos-eco-origen-chip span{color:var(--color-text-muted)}.presupuestos-eco-origen-chip em{color:var(--color-cyan);font-size:11px;font-style:normal}.presupuestos-eco-origen-quitar{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:13px}.presupuestos-eco-origen-quitar:hover{color:var(--color-magenta)}.presupuestos-eco-juntar,.presupuestos-eco-objeto{flex-direction:column;gap:4px;font-size:13px;display:flex}.presupuestos-eco-juntar span,.presupuestos-eco-objeto span{color:var(--color-text-muted)}.presupuestos-eco-juntar select,.presupuestos-eco-objeto input{font:14px/1.3 var(--font-body);border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);border-radius:6px;max-width:100%;padding:7px 9px}.presupuestos-eco-objeto input{text-transform:uppercase}.presupuestos-eco-composicion-nota{color:var(--color-text-muted);margin:0;font-size:13px}.presupuestos-eco-unificar{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.presupuestos-eco-unificar-boton{background:var(--color-magenta);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 14px;font-size:14px}.presupuestos-eco-unificar-boton:disabled{opacity:.6;cursor:wait}.presupuestos-eco-unificar-ayuda,.presupuestos-eco-unificar-ok{color:var(--color-text-muted);font-size:13px}.presupuestos-eco-unificar-deshacer{border:1px solid var(--color-border);cursor:pointer;background:0 0;border-radius:6px;padding:5px 10px;font-size:13px}.presupuestos-eco-col-concepto{min-width:320px}.presupuestos-eco-linea-origen{background:var(--color-bg);border:1px solid var(--color-cyan);color:var(--color-cyan);border-radius:999px;margin-bottom:4px;padding:1px 7px;font-size:11px;display:inline-block}.presupuestos-eco-lineas-table .presupuestos-eco-concepto-input{font-weight:600}.presupuestos-eco-detalle-input{box-sizing:border-box;width:100%;font:13px/1.45 var(--font-body);color:var(--color-text);border:1px solid var(--color-border);resize:vertical;border-radius:6px;margin-top:6px;padding:6px 8px;display:block}.presupuestos-eco-detalle-input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}@media (width<=700px){.presupuestos-eco-col-concepto{min-width:0}}.presupuestos-eco-intro{flex-direction:column;gap:4px;margin:0 0 16px;display:flex}.presupuestos-eco-intro>span{color:var(--color-text-muted);font-size:13px}.presupuestos-eco-intro-texto{border-left:3px solid var(--color-magenta);background:var(--color-bg-subtle);white-space:pre-line;margin:0;padding:8px 12px;font-size:14px;line-height:1.5}.presupuestos-eco-intro-vacio{color:var(--color-text-muted);margin:0;font-size:14px}.presupuestos-eco-intro small{color:var(--color-text-muted);font-size:12px}.presupuestos-eco-enviar-finca{border:1px solid var(--color-magenta);color:var(--color-magenta);font:600 15px/1.3 var(--font-body);cursor:pointer;background:#fff;border-radius:8px;margin:8px 0 4px;padding:10px 16px;display:block}.presupuestos-eco-enviar-finca:disabled{opacity:.6;cursor:default}@media (width<=640px){.presupuestos-eco-enviar-finca{width:100%}}.presupuestos-eco-aviso-amianto{color:#8a5200;background:#fff4e0;border-radius:6px;margin:8px 0;padding:8px 12px;font-size:13px}.tablero{flex-direction:column;gap:18px;height:100%;display:flex}.tablero-cabecera{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.tablero-cabecera h1{margin:0}.tablero-subtitulo{max-width:620px;color:var(--color-text-muted);margin:6px 0 0;font-size:14px;line-height:1.5}.tablero-acciones-cabecera{align-items:center;gap:14px;display:flex}.tablero-check{color:var(--color-text-muted);cursor:pointer;align-items:center;gap:7px;font-size:14px;display:flex}.tablero-check input{width:16px;height:16px;accent-color:var(--color-magenta)}.tablero-boton-recargar{border:1px solid var(--color-border);font-family:var(--font-body);color:var(--color-text);cursor:pointer;background:0 0;border-radius:6px;padding:9px 16px;font-size:14px;font-weight:500}.tablero-boton-recargar:hover{border-color:var(--color-magenta);color:var(--color-magenta)}.tablero-error{color:#a5045f;background:#fdecf5;border-radius:8px;margin:0;padding:12px 14px;font-size:14px}.tablero-estado{color:var(--color-text-muted)}.tablero-columnas{align-items:flex-start;gap:14px;padding-bottom:14px;display:flex;overflow-x:auto}.tablero-columna{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:10px;flex-direction:column;flex:0 0 268px;gap:10px;padding:12px;display:flex}.tablero-columna-cabecera h2{color:var(--color-text);justify-content:space-between;align-items:center;gap:8px;margin:0;font-size:14px;font-weight:700;line-height:1.35;display:flex}.tablero-contador{text-align:center;background:var(--color-magenta);color:#fff;border-radius:11px;flex:none;min-width:22px;padding:1px 7px;font-size:12px;font-weight:700}.tablero-columna-cabecera p{color:var(--color-text-muted);margin:4px 0 0;font-size:12px;line-height:1.4}.tablero-lista{flex-direction:column;gap:9px;display:flex}.tablero-vacio{text-align:center;color:var(--color-text-muted);margin:0;padding:14px 0;font-size:13px}.tablero-tarjeta{border:1px solid var(--color-border);border-left:3px solid var(--color-border);background:#fff;border-radius:8px;flex-direction:column;gap:6px;padding:11px 12px;display:flex}.tablero-tarjeta-urgente{border-left-color:var(--color-magenta)}.tablero-tarjeta-alto{justify-content:space-between;align-items:center;gap:8px;display:flex}.tablero-numero{color:var(--color-text-muted);font-size:12px;font-weight:700}.tablero-apertura{font-variant-numeric:tabular-nums;margin-left:4px;font-weight:400}.tablero-numero{white-space:nowrap}.tablero-chip{background:var(--color-bg-subtle);border:1px solid var(--color-border);color:var(--color-text);white-space:nowrap;border-radius:10px;padding:2px 8px;font-size:11px;font-weight:600}.tablero-finca{color:var(--color-text);margin:0;font-size:14px;font-weight:600;line-height:1.35}.tablero-incidencia{color:var(--color-text-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:13px;line-height:1.4;display:-webkit-box;overflow:hidden}.tablero-pie{color:var(--color-text-muted);margin:0;font-size:12px}.tablero-aviso{color:#14636b;background:#eef9fa;border-radius:6px;margin:2px 0 0;padding:6px 8px;font-size:12px;line-height:1.4}.tablero-aviso-espera{color:#4f2f8f;background:#f1ecfb}.tablero-aviso-derrama{color:#8a5200;background:#fff4e0}.tablero-tarjeta-acciones{align-items:center;gap:8px;margin-top:4px;display:flex}.tablero-boton-abrir{border:1px solid var(--color-border);font-family:var(--font-body);color:var(--color-text);cursor:pointer;background:0 0;border-radius:6px;padding:6px 12px;font-size:13px;font-weight:500}.tablero-boton-abrir:hover{border-color:var(--color-magenta);color:var(--color-magenta)}.tablero-select{border:1px solid var(--color-border);min-width:0;font-family:var(--font-body);color:var(--color-text);cursor:pointer;background:#fff;border-radius:6px;flex:1;padding:6px 8px;font-size:13px}.tablero-select:disabled{opacity:.6}.tablero-chips{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:inline-flex}.tablero-chip-urgencia{color:#fff;text-transform:uppercase;letter-spacing:.04em;background:#d7263d;font-weight:700}.tablero-tarjeta.tablero-tarjeta-urgente{background:#fff5f6;border-left-color:#d7263d}.tablero-pestanas{display:none}@media (width<=900px){.tablero{gap:14px}.tablero-cabecera h1{font-size:24px}.tablero-subtitulo{display:none}.tablero-acciones-cabecera{justify-content:space-between;width:100%}.tablero-boton-recargar{padding:10px 16px}.tablero-pestanas{scrollbar-width:none;gap:8px;margin:0 -16px;padding:2px 16px 6px;display:flex;overflow-x:auto}.tablero-pestanas::-webkit-scrollbar{display:none}.tablero-pestana{border:1px solid var(--color-border);font:600 14px/1.2 var(--font-body);color:var(--color-text);white-space:nowrap;cursor:pointer;background:#fff;border-radius:20px;flex:none;align-items:center;gap:8px;padding:9px 12px;display:inline-flex}.tablero-pestana-activa{border-color:var(--color-magenta);color:#a5045f;background:#fff0f8}.tablero-columnas{padding-bottom:0;overflow-x:visible}.tablero-columna{flex:auto;min-width:0;padding:10px}.tablero-incidencia{-webkit-line-clamp:4}.tablero-boton-abrir,.tablero-select{padding:10px 12px;font-size:14px}}.tablero-aviso-archivado{color:#555;background:#eeeeef}.tablero-tarjeta-partida{border-left:4px solid var(--color-cyan)}.tablero-presupuestos{background:var(--color-bg-subtle);border-radius:6px;margin:4px 0 2px;padding:6px 8px}.tablero-presupuesto{margin:0;font-size:13px;line-height:1.4}.tablero-presupuesto-nota{color:var(--color-text-muted);margin:4px 0 0;font-size:12px}.tablero-chip-pendiente{color:#8a4b00;background:#fff4e5}.tablero-chip-aprobado{color:#1c6b47;background:#e8f7f0}.tablero-chip-rechazado{color:#555;background:#eeeeef}.tablero-aviso-terminada{color:#1d6b3a;background:#e7f6ec}.tablero-boton-confirmar{color:#fff;font-family:var(--font-body);cursor:pointer;background:#1d8a4a;border:none;border-radius:6px;margin-top:8px;padding:6px 12px;font-size:13px;font-weight:600;display:block}.tablero-boton-confirmar:disabled{opacity:.6;cursor:default}.tablero-por-confirmar{color:#1d6b3a;background:#e7f6ec;border:1px solid #9fd6b2;border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:0 0 14px;padding:10px 14px;font-size:14px;display:flex}.tablero-por-confirmar button{color:#1d6b3a;font-family:var(--font-body);cursor:pointer;background:#fff;border:1px solid #1d8a4a;border-radius:999px;padding:4px 10px;font-size:13px}.tablero-aviso-reprogramar{color:#9a4d00;background:#fff1e0;border-left:3px solid #fd8401}.tablero-tarjeta-arrastrable{cursor:grab}.tablero-tarjeta-arrastrable:active{cursor:grabbing}.tablero-tarjeta-arrastrable button,.tablero-tarjeta-arrastrable select{cursor:pointer}.tablero-tarjeta-arrastrando{opacity:.45}.tablero-columna-destino{border-color:var(--color-magenta);box-shadow:inset 0 0 0 2px var(--color-magenta);background:#fff0f7}.tablero-chip-garantia{color:#fff;text-transform:uppercase;letter-spacing:.04em;background:#6a1b9a;font-weight:700}.tablero-chip-falta-factura{color:#8a5300;background:#fff4e5;border:1px solid #f5a623;font-weight:700}.avisos-contratos{color:#6b3a00;background:#fff4e5;border:1px solid #e08a00;border-radius:8px;flex-direction:column;gap:6px;margin-bottom:18px;padding:12px 16px;font-size:14px;display:flex}.avisos-contratos p{flex-wrap:wrap;align-items:center;gap:4px 10px;margin:0;display:flex}.avisos-contratos button{font:inherit;color:var(--color-magenta);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}.fpdf-page{--ink:#1a1a1a;--ink-soft:#6e6e6e;--rule:#dddce1;--rule-soft:#edecef;--wash:#f6f5f7;--magenta:#fb0793;--blue:#002cc0;--cian:#00bbc1;box-sizing:border-box;width:210mm;min-height:297mm;color:var(--ink);background:#fff;flex-direction:column;font-family:Noto Sans,sans-serif;display:flex;position:relative;overflow:visible}.fpdf-page,.fpdf-page *{box-sizing:border-box}.fpdf-content{flex-direction:column;flex:1;padding:12mm 13mm 0;display:flex}.fpdf-header{justify-content:space-between;align-items:flex-start;display:flex}.fpdf-header-left{align-items:center;gap:4mm;display:flex}.fpdf-symbol{width:16mm;height:auto}.fpdf-brand-name{letter-spacing:1px;margin:0;font-family:Fjalla One,sans-serif;font-size:20pt;line-height:1.05}.fpdf-brand-tagline{color:var(--ink-soft);letter-spacing:.2px;margin:1mm 0 0;font-size:7.5pt}.fpdf-header-right{text-align:right}.fpdf-doc-kind{letter-spacing:1.5px;color:var(--ink);margin:0;font-family:Fjalla One,sans-serif;font-size:15pt}.fpdf-doc-kind-abono{background:var(--magenta);color:#fff;padding:.8mm 2.5mm;font-size:12pt;display:inline-block}.fpdf-doc-numero{color:var(--blue);letter-spacing:.5px;margin:1mm 0 0;font-family:Fjalla One,sans-serif;font-size:17pt}.fpdf-doc-meta{color:var(--ink-soft);margin:1mm 0 0;font-size:8.5pt}.fpdf-strip{background:linear-gradient(90deg, var(--magenta) 0%, var(--cian) 100%);height:1.2mm;margin:5mm 0 0}.fpdf-parties{grid-template-columns:1fr 1fr;gap:8mm;margin-top:6mm;display:grid}.fpdf-party{min-width:0}.fpdf-party-label{letter-spacing:.8px;text-transform:uppercase;color:var(--blue);margin:0 0 1.5mm;font-family:Fjalla One,sans-serif;font-size:9pt}.fpdf-party-name{margin:0;font-size:10.5pt;font-weight:700;line-height:1.35}.fpdf-party-line{color:var(--ink);margin:.6mm 0 0;font-size:9.5pt;line-height:1.35}.fpdf-tabla{border-collapse:collapse;width:100%;margin-top:8mm;font-size:9.5pt}.fpdf-tabla thead th{background:var(--wash);border-top:.4mm solid var(--rule);border-bottom:.4mm solid var(--rule);letter-spacing:.6px;text-transform:uppercase;text-align:left;color:var(--ink);padding:2.5mm 3mm;font-family:Fjalla One,sans-serif;font-size:9pt;font-weight:400}.fpdf-th-importe{text-align:right;width:38mm}.fpdf-tabla tbody td{border-bottom:.25mm solid var(--rule-soft);vertical-align:top;padding:4mm 3mm}.fpdf-td-importe{text-align:right;white-space:nowrap;font-size:11pt;font-weight:700}.fpdf-concepto-titulo{margin:0;font-size:10.5pt;font-weight:700;line-height:1.4}.fpdf-concepto-linea{color:var(--ink);margin:1.2mm 0 0;font-size:9.5pt;line-height:1.4}.fpdf-concepto-ref{letter-spacing:.02em;text-transform:uppercase;color:var(--blue);margin:0 0 1.5mm;font-size:9.5pt;font-weight:700}.fpdf-rectifica{border-left:1mm solid var(--magenta);background:var(--wash);margin-top:5mm;padding:3mm 4mm}.fpdf-rectifica-titulo{margin:0;font-size:9.5pt;font-weight:700}.fpdf-rectifica-motivo{color:var(--ink);margin:1.2mm 0 0;font-size:9pt;line-height:1.4}.fpdf-totales-wrap{justify-content:flex-end;margin-top:6mm;display:flex}.fpdf-totales{width:82mm}.fpdf-totales-row{border-bottom:.25mm solid var(--rule-soft);justify-content:space-between;padding:2mm 3mm;font-size:9.5pt;display:flex}.fpdf-totales-total{background:var(--magenta);color:#fff;justify-content:space-between;align-items:baseline;margin-top:1.5mm;padding:3mm;display:flex}.fpdf-totales-total-label{letter-spacing:.6px;text-transform:uppercase;font-family:Fjalla One,sans-serif;font-size:10pt}.fpdf-totales-total-value{letter-spacing:.5px;font-family:Fjalla One,sans-serif;font-size:15pt}.fpdf-pago{border-top:.25mm solid var(--rule);margin-top:6mm;padding-top:3mm}.fpdf-pago-linea{color:var(--ink);margin:0 0 1mm;font-size:9pt}.fpdf-footer{margin-top:auto;padding:0 13mm 8mm}.fpdf-strip-fine{background:linear-gradient(90deg, var(--magenta) 0%, var(--cian) 100%);height:.5mm;margin-bottom:2.5mm}.fpdf-footer-row{color:var(--ink-soft);justify-content:center;font-size:7.5pt;display:flex}.fpdf-marca-agua{letter-spacing:3px;color:#fb079324;white-space:nowrap;pointer-events:none;z-index:0;font-family:Fjalla One,sans-serif;font-size:34pt;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-30deg)}.fpdf-marca-agua~.fpdf-content,.fpdf-marca-agua~.fpdf-footer{z-index:1;position:relative}.rfe{border:1px solid var(--color-border);background:var(--color-bg-subtle);border-radius:8px;margin-bottom:16px;padding:18px 20px}.rfe-titulo{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.3px;color:var(--color-magenta);margin:0 0 4px;font-size:16px;font-weight:400}.rfe-ayuda{color:var(--color-text-muted);margin:0 0 14px;font-size:13px}.rfe-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:14px 16px;display:grid}.rfe-campo{color:var(--color-text-muted);flex-direction:column;gap:5px;font-size:13px;display:flex}.rfe-campo input:not([type=file]),.rfe-campo select{font:14px/1.4 var(--font-body);border:1px solid var(--color-border);color:var(--color-text);background:#fff;border-radius:6px;padding:8px 10px}.rfe-ancho{grid-column:span 2}.rfe-total{border:1px solid var(--color-border);background:#fff;border-radius:6px;flex-direction:column;padding:6px 12px;display:flex}.rfe-total span,.rfe-total small{color:var(--color-text-muted);font-size:12px}.rfe-total strong{font-variant-numeric:tabular-nums;font-size:18px}.rfe-error{color:var(--color-magenta);margin:12px 0 0;font-size:14px}.rfe-acciones{align-items:center;gap:16px;margin-top:16px;display:flex}@media (width<=900px){.rfe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.fact-seccion{flex-direction:column;gap:32px;display:flex}.fact-saltos{z-index:10;background:var(--color-bg-subtle);gap:8px;margin:-12px 0 -16px;padding:12px 0;display:flex;position:sticky;top:0}.fact-salto{border:1px solid var(--color-magenta);color:var(--color-magenta);font:600 14px/1.3 var(--font-body);cursor:pointer;background:#fff;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:8px 18px;display:inline-flex}.fact-salto-activo{background:var(--color-magenta);color:#fff}.fact-salto-n{background:#fb07931f;border-radius:999px;min-width:22px;padding:1px 7px;font-size:12px}.fact-salto-activo .fact-salto-n{background:#ffffff40}.fact-bloque{scroll-margin-top:76px}@media (width<=900px){.fact-saltos{padding:10px 0;top:56px}.fact-salto{flex:1;min-height:44px;padding:8px 10px}.fact-bloque{scroll-margin-top:130px}}.fact-status{color:var(--color-text-muted);font-size:15px}.fact-status-error{color:var(--color-magenta)}.fact-aviso{border-radius:8px;margin:0;padding:12px 40px 12px 16px;font-size:15px;line-height:1.4;position:relative}.fact-aviso-ok{color:#1c6b47;background:#e8f7f0;border:1px solid #2e9e6b}.fact-aviso-error{border:1px solid var(--color-magenta);color:#a8055f;background:#fdeaf4}.fact-aviso-cerrar{cursor:pointer;color:inherit;opacity:.6;background:0 0;border:none;font-size:20px;line-height:1;position:absolute;top:6px;right:8px}.fact-aviso-cerrar:hover{opacity:1}.fact-bloque-cabecera h2{font-family:var(--font-heading);color:var(--color-text);margin:0 0 4px;font-size:22px;font-weight:400}.fact-bloque-cabecera p{color:var(--color-text-muted);max-width:780px;margin:0 0 12px;font-size:14px;line-height:1.5}.fact-toggle{color:var(--color-text-muted);cursor:pointer;align-items:center;gap:8px;margin-bottom:12px;font-size:14px;display:inline-flex}.fact-tabla-wrapper{background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;overflow-x:auto}.fact-tabla{border-collapse:collapse;width:100%;font-size:15px}.fact-tabla thead th{text-align:left;background:var(--color-magenta);color:#fff;font-family:var(--font-heading);letter-spacing:.3px;text-transform:uppercase;white-space:nowrap;padding:12px 16px;font-size:13px;font-weight:400}.fact-tabla tbody td{border-top:1px solid var(--color-border);vertical-align:top;padding:12px 16px}.fact-tabla tbody tr:nth-child(2n){background:var(--color-bg-subtle)}.fact-fila-abono{background:#fff7ec!important}.fact-obra{color:var(--color-text);font-weight:600;display:block}.fact-numero{font-family:var(--font-heading);letter-spacing:.5px;color:var(--color-text);font-size:17px;display:block}.fact-total{white-space:nowrap;font-weight:700}.fact-titulo{color:var(--color-text);margin-top:2px;font-size:13px;display:block}.fact-nota{color:var(--color-text-muted);margin-top:3px;font-size:12px;line-height:1.35;display:block}.fact-importe-previsto{color:var(--color-text-muted);margin-top:5px;font-size:12px;display:block}.fact-alerta{color:#9a5a00;background:#fff2df;border:1px solid #f0b95c;border-radius:6px;max-width:260px;margin-top:6px;padding:5px 8px;font-size:12px;line-height:1.35;display:block}.fact-estado{white-space:nowrap;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.fact-estado-emitida{color:#46536b;background:#eef1f6}.fact-estado-enviada{color:#04767a;background:#e0f5f6}.fact-estado-pagada{color:#1c6b47;background:#e8f7f0}.fact-estado-abonada{color:#a8055f;background:#fdeaf4}.fact-accion-principal{font:14px/1.4 var(--font-body);background:var(--color-magenta);color:#fff;border:1px solid var(--color-magenta);cursor:pointer;white-space:nowrap;border-radius:6px;padding:7px 14px}.fact-accion-principal:hover:not(:disabled){filter:brightness(1.08)}.fact-accion-principal:disabled{opacity:.55;cursor:not-allowed}.fact-acciones{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.fact-accion-pdf{font:13px/1.4 var(--font-body);background:var(--color-bg);color:var(--color-magenta);border:1px solid var(--color-magenta);cursor:pointer;white-space:nowrap;border-radius:6px;margin-right:10px;padding:6px 12px}.fact-acciones .fact-accion-pdf{margin-right:0}.fact-accion-pdf:hover:not(:disabled){background:var(--color-magenta);color:#fff}.fact-accion-pdf:disabled{opacity:.55;cursor:not-allowed}.fact-acciones-col{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.fact-acciones-sec{flex-wrap:wrap;align-items:center;gap:4px 14px;display:flex}.fact-enlace{font:13px/1.4 var(--font-body);color:#00777b;cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;font-weight:600}.fact-enlace:hover:not(:disabled){text-decoration:underline}.fact-enlace:disabled{opacity:.55;cursor:not-allowed}.fact-enlace-aviso{color:var(--color-magenta)}.fact-enlace-peligro{color:var(--color-text-muted);font-weight:400}.fact-col-check{text-align:center;width:56px}.fact-col-check input{width:18px;height:18px;accent-color:var(--color-magenta);cursor:pointer}.fact-fila-marcada{background:#fb07930f}.fact-cobro{border:1px solid var(--color-magenta);background:#fff5fb;border-radius:8px;flex-wrap:wrap;align-items:flex-end;gap:14px 20px;margin-bottom:14px;padding:14px 18px;display:flex}.fact-cobro-resumen{flex-direction:column;gap:2px;min-width:220px;display:flex}.fact-cobro-resumen span{color:var(--color-text-muted);font-size:13px}.fact-cobro-campo{color:var(--color-text-muted);flex-direction:column;gap:4px;font-size:13px;display:flex}.fact-cobro-campo input[type=date],.fact-cobro-campo input[type=text]{font:14px/1.4 var(--font-body);border:1px solid var(--color-border);color:var(--color-text);background:#fff;border-radius:6px;padding:7px 10px}.fact-cobro-notas{flex:200px}.fact-cobro-acciones{align-items:center;gap:14px;display:flex}.fact-subir{cursor:pointer;position:relative}.fact-subir input{opacity:0;cursor:pointer;position:absolute;inset:0}.fact-registrar-externa{margin-bottom:12px;font-size:14px;display:block}.fact-forma{border:1px solid var(--color-border);border-radius:6px;margin-bottom:8px;font-size:12px;display:inline-flex;overflow:hidden}.fact-forma label{color:var(--color-text-muted);cursor:pointer;white-space:nowrap;background:#fff;align-items:center;gap:5px;padding:5px 10px;display:inline-flex}.fact-forma label+label{border-left:1px solid var(--color-border)}.fact-forma input{accent-color:var(--color-magenta);margin:0}.fact-forma-activa{font-weight:600;color:var(--color-text)!important;background:#fff0f8!important}@media (width<=900px){.fact-tabla-wrapper{background:0 0;border:none;overflow:visible}.fact-tabla thead{display:none}.fact-tabla,.fact-tabla tbody{display:block}.fact-tabla tbody tr{border:1px solid var(--color-border);background:#fff;border-radius:10px;grid-template-columns:1fr 1fr;gap:6px 12px;margin-bottom:12px;padding:14px 16px;display:grid}.fact-tabla tbody tr td{overflow-wrap:anywhere;border:none;min-width:0;padding:0;font-size:14px;display:block}.fact-tabla tbody td:before{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:11px;display:block}.fact-tabla-pendientes tbody td:first-child{grid-column:1/-1;font-weight:600}.fact-tabla-pendientes tbody td:nth-child(2){grid-column:1/-1}.fact-tabla-pendientes tbody td:nth-child(2):before{content:"Cliente"}.fact-tabla-pendientes tbody td:nth-child(3):before{content:"Base"}.fact-tabla-pendientes tbody td:nth-child(4):before{content:"IVA"}.fact-tabla-pendientes tbody td:nth-child(5){grid-column:1/-1;margin-top:6px}.fact-tabla-emitidas tbody tr{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 12px}.fact-tabla-emitidas tbody td.fact-col-check{text-align:left;grid-area:1/1;width:auto;padding-top:1px}.fact-tabla-emitidas tbody td:nth-child(2){grid-area:1/1/auto/3;padding-left:30px}.fact-tabla-emitidas tbody td.fact-col-check:empty+td{padding-left:0}.fact-tabla-emitidas tbody td:nth-child(3){text-align:right;color:var(--color-text-muted);grid-area:1/3}.fact-tabla-emitidas tbody td:nth-child(4){grid-area:2/1/auto/-1;margin-top:12px}.fact-tabla-emitidas tbody td:nth-child(5){color:var(--color-text-muted);grid-area:3/1/auto/-1;margin-top:2px;font-size:13px}.fact-tabla-emitidas tbody td:nth-child(6),.fact-tabla-emitidas tbody td:nth-child(7),.fact-tabla-emitidas tbody td:nth-child(8){border-top:1px solid var(--color-border);grid-row:4;margin-top:14px;padding-top:12px}.fact-tabla-emitidas tbody td:nth-child(6){grid-column:1}.fact-tabla-emitidas tbody td:nth-child(7){grid-column:2}.fact-tabla-emitidas tbody td:nth-child(8){grid-column:3;font-weight:700}.fact-tabla-emitidas tbody td:nth-child(6):before{content:"Base"}.fact-tabla-emitidas tbody td:nth-child(7):before{content:"IVA"}.fact-tabla-emitidas tbody td:nth-child(8):before{content:"Total";font-weight:400}.fact-tabla-emitidas tbody td:nth-child(7) .fact-nota{margin:0 0 0 4px;display:inline}.fact-tabla-emitidas tbody td:nth-child(9){grid-area:5/1/auto/-1;margin-top:16px}.fact-tabla-emitidas tbody td:nth-child(9) .fact-nota{margin-top:6px}.fact-tabla-emitidas tbody td:nth-child(10){grid-area:6/1/auto/-1;margin-top:16px}.fact-tabla-emitidas .fact-acciones-col{gap:14px}.fact-tabla tbody td button,.fact-tabla tbody td select{max-width:100%;min-height:40px}.fact-cobro>*{flex:100%;min-width:0}.fact-cobro-resumen{min-width:0}}.fact-bloque-titulo{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-bottom:4px;display:flex}.fact-bloque-titulo h2{margin:0}@media (width<=900px){.fact-enviar-todas{width:100%;min-height:44px}}.fact-subtitulo{border-bottom:2px solid var(--color-magenta);margin:22px 0 4px;padding-bottom:4px;font-size:18px}.fact-nota-bloque{color:var(--color-text-muted);margin:0 0 10px;font-size:13px}.fact-bloque-faltan{border-left:4px solid #f5a623;padding-left:14px}.fact-lote{border:1px solid var(--color-magenta);background:#fff5fb;border-radius:8px;margin-bottom:14px;padding:14px 18px}.fact-lote-titulo{margin:0 0 10px;font-size:14px}.fact-lote-lista{flex-direction:column;gap:6px;margin:0 0 12px;padding:0;list-style:none;display:flex}.fact-lote-lista label{cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:4px 12px;font-size:14px;display:flex}.fact-lote-obra{overflow-wrap:anywhere;flex:220px;min-width:0}.fact-lote-total{white-space:nowrap;font-weight:600}.fact-lote-acciones{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.con{flex-direction:column;gap:24px;display:flex}.con-cabecera{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.con-cabecera h1{margin:0 0 6px;font-size:28px}.con-cabecera p{max-width:720px;color:var(--color-text-muted);margin:0;font-size:14px}.con-cabecera-acciones{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.con-status{color:var(--color-text-muted)}.con-status-error,.con-error{color:var(--color-magenta)}.con-boton{border:1px solid var(--color-magenta);background:var(--color-magenta);color:#fff;font:14px/1.4 var(--font-body);cursor:pointer;white-space:nowrap;border-radius:6px;padding:8px 16px}.con-boton:disabled{opacity:.55;cursor:not-allowed}.con-enlace{font:13px/1.4 var(--font-body);color:#00777b;cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;font-weight:600}.con-enlace:hover:not(:disabled){text-decoration:underline}.con-enlace-suave{color:var(--color-text-muted);font-weight:400}.con-enlaces{flex-wrap:wrap;gap:4px 12px;display:flex}.con-aviso{border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0;padding:12px 40px 12px 16px;font-size:15px;display:flex;position:relative}.con-aviso-ok{color:#1c6b47;background:#e8f7f0;border:1px solid #2e9e6b}.con-aviso-error{border:1px solid var(--color-magenta);color:#a8055f;background:#fdeaf4}.con-aviso-alerta{color:#6b3a00;background:#fff4e5;border:1px solid #e08a00}.con-aviso-cerrar{color:inherit;cursor:pointer;background:0 0;border:none;font-size:20px;position:absolute;top:6px;right:10px}.con-bloque h2{margin:0 0 12px;font-size:18px}.con-form{border:1px solid var(--color-border);background:var(--color-bg-subtle);border-radius:8px;padding:18px 20px}.con-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:14px 16px;display:grid}.con-campo{color:var(--color-text-muted);flex-direction:column;gap:5px;font-size:13px;display:flex}.con-campo input,.con-campo select{font:14px/1.4 var(--font-body);border:1px solid var(--color-border);color:var(--color-text);background:#fff;border-radius:6px;padding:8px 10px}.con-ancho{grid-column:span 2}.con-ancho3{grid-column:span 3}.con-ipc{max-width:260px;margin-bottom:14px}.con-acciones{align-items:center;gap:16px;margin-top:16px;display:flex}.con-nota{color:var(--color-text-muted);margin-top:2px;font-size:12px;display:block}.con-lista-cabecera{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.con-toggle{color:var(--color-text-muted);align-items:center;gap:8px;font-size:14px;display:inline-flex}.con-tabla-wrapper{border:1px solid var(--color-border);background:#fff;border-radius:8px;overflow-x:auto}.con-tabla{border-collapse:collapse;width:100%;font-size:14px}.con-tabla thead th{background:var(--color-magenta);color:#fff;font-family:var(--font-heading);letter-spacing:.3px;text-transform:uppercase;text-align:left;white-space:nowrap;padding:12px 14px;font-size:13px;font-weight:400}.con-tabla tbody td{border-top:1px solid var(--color-border);vertical-align:top;padding:10px 14px}.con-tabla .con-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.con-fila-apagada{opacity:.6}.con-precio{border:1px solid var(--color-border);text-align:right;width:110px;font:14px/1.4 var(--font-body);border-radius:6px;padding:6px 8px}.con-chip{white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-block}.con-chip-activo{color:#1c6b47;background:#e8f7f0}.con-chip-pausa{color:#8a4b00;background:#fff4e5}.con-chip-finalizado{color:#555;background:#eeeeef}.con-visitas{background:#fff9f0;border:1px solid #e08a00;border-radius:8px;padding:14px 18px}.con-visita{border-top:1px solid #f1dcc0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;display:flex}.con-visita:first-of-type{border-top:none}.con-visita-form{align-items:flex-end;gap:12px;display:flex}.con-visita-form label{color:var(--color-text-muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.con-visita-form input{border:1px solid var(--color-border);font:14px/1.4 var(--font-body);border-radius:6px;padding:6px 8px}@media (width<=900px){.con-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.con-ancho3{grid-column:span 2}}.con-visita-estado{color:#6b3a00;font-weight:600}.con-visita-acciones{align-items:center;gap:8px 16px}.con-buscar{align-items:center;gap:12px;margin:4px 0 12px;display:flex}.con-buscar input{border:1px solid var(--color-border);background:var(--color-bg);min-width:0;max-width:480px;font:15px/1.3 var(--font-body);border-radius:8px;flex:1;padding:9px 12px}.con-buscar input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.con-buscar-total{white-space:nowrap;margin:0}@media (width<=900px){.con-cabecera h1{font-size:24px}.con-cabecera-acciones{align-items:stretch;gap:12px;width:100%}.con-cabecera-acciones .con-enlace{align-self:flex-start}.con-visita{padding:12px 0}.con-visita>*{width:100%}.con-visita-acciones{justify-content:space-between}.con-visita-form{flex-wrap:wrap}.con-lista-wrapper{background:0 0;border:none;overflow:visible}.con-tabla-lista thead{display:none}.con-tabla-lista,.con-tabla-lista tbody{display:block}.con-tabla-lista tbody tr{border:1px solid var(--color-border);background:#fff;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px;margin-bottom:12px;padding:14px 16px;display:grid}.con-tabla-lista tbody td{overflow-wrap:anywhere;border:none;min-width:0;padding:0;display:block}.con-tabla-lista .con-num{text-align:left;white-space:normal}.con-tabla-lista tbody td:before{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:11px;display:block}.con-tabla-lista tbody td:first-child{grid-area:1/1/auto/-1;padding-right:96px;font-size:15px}.con-tabla-lista tbody td:nth-child(7){grid-area:1/2;place-self:start end}.con-tabla-lista tbody td:nth-child(2){grid-area:2/1/auto/-1;margin-top:12px}.con-tabla-lista tbody td:nth-child(2):before{content:"Cliente"}.con-tabla-lista tbody td:nth-child(3){grid-area:3/1;margin-top:12px}.con-tabla-lista tbody td:nth-child(4){grid-area:3/2;margin-top:12px;font-weight:700}.con-tabla-lista tbody td:nth-child(3):before{content:"Tipo"}.con-tabla-lista tbody td:nth-child(4):before{content:"Importe";font-weight:400}.con-tabla-lista tbody td:nth-child(4) .con-nota{font-weight:400}.con-tabla-lista tbody td:nth-child(5){grid-area:4/1;margin-top:12px}.con-tabla-lista tbody td:nth-child(6){grid-area:4/2;margin-top:12px}.con-tabla-lista tbody td:nth-child(5):before{content:"Cada"}.con-tabla-lista tbody td:nth-child(6):before{content:"Próxima factura"}.con-tabla-lista tbody td:nth-child(8){border-top:1px solid var(--color-border);grid-area:5/1/auto/-1;margin-top:14px;padding-top:12px}.con-tabla-lista .con-enlaces{gap:8px 24px}.con-tabla-lista .con-enlace{min-height:32px;font-size:14px}}.ruta-fondo{z-index:60;background:#14141873;justify-content:center;align-items:flex-start;padding:40px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.ruta-caja{background:var(--color-bg,#fff);width:100%;max-width:640px;color:var(--color-text,#1a1a1a);border-radius:14px;padding:22px 24px 24px;box-shadow:0 18px 50px #0003}.ruta-cab{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.ruta-cab h2{font-family:var(--font-heading);margin:0;font-size:26px;font-weight:400}.ruta-fecha{color:var(--color-text-muted,#767676);text-transform:capitalize;margin:2px 0 0}.ruta-cerrar{cursor:pointer;color:var(--color-text-muted,#767676);background:0 0;border:none;padding:4px 8px;font-size:20px}.ruta-grupos{flex-wrap:wrap;gap:6px;margin:14px 0 4px;display:flex}.ruta-grupo{border:1px solid var(--color-border,#e5e4e7);background:var(--color-bg,#fff);font:13.5px/1.2 var(--font-body);cursor:pointer;border-radius:999px;padding:6px 12px}.ruta-grupo-activo{background:var(--color-magenta,#fb0793);border-color:var(--color-magenta,#fb0793);color:#fff}.ruta-grupo-num{opacity:.75;margin-left:4px}.ruta-cargando,.ruta-error{color:var(--color-text-muted,#767676);margin:18px 0 4px}.ruta-error{color:#b3261e}.ruta-resumen{margin:16px 0 10px;font-size:15px}.ruta-aviso{background:#fff7e0;border:1px solid #f3d27a;border-radius:8px;margin:8px 0;padding:9px 12px;font-size:13.5px}.ruta-aviso-grave{background:#fdecea;border-color:#f2b8b5}.ruta-lista{margin:14px 0 0;padding:0;list-style:none}.ruta-punto{grid-template-columns:34px 1fr;column-gap:12px;padding:2px 0 12px;display:grid}.ruta-tramo{color:var(--color-text-muted,#767676);flex-wrap:wrap;grid-column:2;align-items:baseline;gap:4px 12px;margin:0 0 8px;padding-left:2px;font-size:12.5px;display:flex}.ruta-tramo a{color:var(--color-cyan,#00bbc1);font-weight:600;text-decoration:none}.ruta-num{background:var(--color-magenta,#fb0793);color:#fff;border-radius:50%;grid-column:1;justify-content:center;align-items:center;width:30px;height:30px;font-size:14px;font-weight:600;display:inline-flex}.ruta-punto-central .ruta-num{background:var(--color-text,#1a1a1a)}.ruta-punto-tarde .ruta-num{background:#b3261e}.ruta-dir{margin:4px 0 2px;font-weight:600}.ruta-aprox{color:var(--color-text-muted,#767676);font-size:12px;font-weight:400}.ruta-linea{flex-wrap:wrap;align-items:center;gap:6px 10px;margin:0 0 4px;font-size:14px;display:flex}.ruta-chip{color:#1565c0;background:#e8f1fb;border-radius:999px;padding:2px 8px;font-size:11.5px;font-weight:600}.ruta-chip-fija{color:#c2006f;background:#fde7f3}.ruta-dur{border:1px dashed var(--color-border,#e5e4e7);font:12.5px/1.4 var(--font-body);color:var(--color-text-muted,#767676);cursor:pointer;background:0 0;border-radius:6px;padding:1px 7px}.ruta-tarde{color:#b3261e;font-size:12.5px;font-weight:600}.ruta-cita{color:var(--color-text-muted,#767676);margin:0;font-size:13px}.ruta-cita-hecha{text-decoration:line-through}.ruta-mapas{flex-direction:column;gap:8px;margin-top:10px;display:flex}.ruta-boton{text-align:center;background:var(--color-magenta,#fb0793);color:#fff;border-radius:8px;padding:11px 14px;font-weight:600;text-decoration:none;display:block}.ruta-pie{color:var(--color-text-muted,#767676);margin:14px 0 0;font-size:12px}@media (width<=640px){.ruta-fondo{padding:0}.ruta-caja{border-radius:0;min-height:100%;padding:18px 16px 28px}}.cal{flex-direction:column;gap:18px;display:flex}.cal-cabecera{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.cal-cabecera h1{margin:0 0 6px;font-size:28px}.cal-cabecera p{max-width:720px;color:var(--color-text-muted);margin:0;font-size:14px}.cal-boton{border:1px solid var(--color-magenta);background:var(--color-magenta);color:#fff;font:14px/1.4 var(--font-body);cursor:pointer;white-space:nowrap;border-radius:6px;padding:8px 16px}.cal-enlace{font:13px/1.4 var(--font-body);color:#00777b;cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:0;font-weight:600}.cal-enlace:hover{text-decoration:underline}.cal-enlace-suave{color:var(--color-text);font-weight:600}.cal-aviso{color:#1c6b47;background:#e8f7f0;border:1px solid #2e9e6b;border-radius:8px;margin:0;padding:12px 40px 12px 16px;font-size:15px;position:relative}.cal-aviso button{color:inherit;cursor:pointer;background:0 0;border:none;font-size:20px;position:absolute;top:6px;right:10px}.cal-error{color:var(--color-magenta)}.cal-estado,.cal-nota{color:var(--color-text-muted);margin:0;font-size:13px}.cal-barra{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 20px;display:flex}.cal-nav{align-items:center;gap:10px;display:flex}.cal-nav h2{text-align:center;text-transform:capitalize;min-width:170px;margin:0;font-size:20px}.cal-flecha{border:1px solid var(--color-border);cursor:pointer;background:#fff;border-radius:6px;width:32px;height:32px;font-size:20px;line-height:1}.cal-vistas{border:1px solid var(--color-magenta);border-radius:6px;display:inline-flex;overflow:hidden}.cal-vista{color:var(--color-magenta);font:14px/1.4 var(--font-body);cursor:pointer;background:#fff;border:none;padding:6px 14px}.cal-vista-activa{background:var(--color-magenta);color:#fff}.cal-filtros{align-items:center;gap:14px;display:flex}.cal-filtros select{border:1px solid var(--color-border);font:14px/1.4 var(--font-body);background:#fff;border-radius:6px;padding:7px 10px}.cal-toggle{color:var(--color-text-muted);align-items:center;gap:6px;font-size:14px;display:inline-flex}.cal-chip{border:1px solid color-mix(in srgb, var(--cal-color) 35%, #fff);border-left:4px solid var(--cal-color);background:color-mix(in srgb, var(--cal-tipo,var(--cal-color)) 9%, #fff);width:100%;min-width:0;color:var(--color-text);font:13px/1.35 var(--font-body);text-align:left;white-space:normal;overflow-wrap:anywhere;cursor:pointer;border-radius:5px;flex-direction:column;gap:1px;padding:4px 6px 4px 8px;display:flex}.cal-chip:hover{background:color-mix(in srgb, var(--cal-tipo,var(--cal-color)) 17%, #fff)}.cal-chip-cab{color:var(--color-text);font-weight:700}.cal-chip-tipo-linea{flex-wrap:wrap;align-items:center;gap:4px 6px;margin-bottom:2px;display:flex}.cal-tipo{background:var(--cal-tipo,#5f6368);color:#fff;letter-spacing:.06em;border-radius:4px;padding:2px 7px;font-size:11px;font-weight:800;line-height:1.3;display:inline-block}.cal-tipo-previsto{color:#2e7d32;background:#fff;border:1px dashed #2e7d32}.cal-chip-hora{font-size:13px;font-weight:700}.cal-chip-hecha-marca{color:#2e7d32;font-size:11px;font-weight:700}.cal-chip-operario{color:var(--color-text-muted);font-size:12px}.cal-chip-titulo{font-weight:600}.cal-chip-notas{white-space:pre-line;-webkit-line-clamp:6;-webkit-box-orient:vertical;font-size:12px;font-style:italic;display:-webkit-box;overflow:hidden}.cal-chip-hecha{opacity:.65}.cal-chip-cancelada{color:var(--color-text-muted);border-color:var(--color-border);background:#fff;text-decoration:line-through}.cal-chip-previsto{color:var(--cal-color);background:#fff;border-style:dashed}.cal-mes{border-top:1px solid var(--color-border);border-left:1px solid var(--color-border);background:#fff;border-radius:8px;grid-template-columns:repeat(7,minmax(0,1fr));display:grid;overflow:hidden}.cal-mes-laborables{grid-template-columns:repeat(5,minmax(0,1fr))}.cal-aviso-finde{color:#7a5200;background:#fff7e6;border:1px solid #f3d8a0;border-radius:8px;margin:0 0 10px;padding:8px 12px;font-size:14px}.cal-mes-dia-semana{border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:var(--color-magenta);color:#fff;font-family:var(--font-heading);text-align:center;padding:8px 0;font-size:14px}.cal-celda{border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);cursor:pointer;flex-direction:column;gap:4px;min-height:150px;padding:6px 6px 8px;display:flex}.cal-celda:hover{background:#fbf3f8}.cal-celda-finde{background:var(--color-bg-subtle)}.cal-celda-fuera{background:#f6f6f7}.cal-celda-fuera .cal-numero{color:#b5b5ba}.cal-numero{color:var(--color-text-muted);align-self:flex-end;font-size:15px;font-weight:600}.cal-celda-cab{justify-content:space-between;align-items:center;gap:6px;display:flex}.cal-celda-cab .cal-numero{margin-left:auto}.cal-tiempo{align-items:center;gap:3px;font-size:15px;line-height:1;display:inline-flex}.cal-tiempo-pct{color:var(--color-text-muted);font-size:11px;font-weight:600}.cal-tiempo-lluvia .cal-tiempo-pct{color:#1f5fa8}.cal-chip-lluvia{box-shadow:inset 0 0 0 2px #1f5fa8}.cal-chip-lluvia-marca{color:#1f5fa8;white-space:nowrap;background:#e3eefb;border-radius:999px;margin-left:auto;padding:0 5px;font-size:11px;font-weight:700}.cal-ope-tiempo{font-size:13px;line-height:1.2;display:block}.cal-dia-tiempo{color:var(--color-text-muted);margin:2px 0 0;font-size:13px}.cal-dia-tiempo.cal-tiempo-lluvia{color:#1f5fa8;font-weight:600}.cal-fuente-tiempo{color:var(--color-text-muted);margin:0 0 8px;font-size:12px}.cal-celda-hoy .cal-numero{background:var(--color-magenta);color:#fff;border-radius:999px;padding:0 7px}.cal-chips{flex-direction:column;gap:3px;min-width:0;display:flex}.cal-ope-wrapper{border:1px solid var(--color-border);background:#fff;border-radius:8px;overflow-x:auto}.cal-ope{border-collapse:collapse;font-size:12px}.cal-ope thead th{background:var(--color-magenta);color:#fff;min-width:38px;font-family:var(--font-heading);text-align:center;padding:6px 2px;font-weight:400}.cal-ope thead th.cal-ope-finde{background:#a8055f}.cal-ope thead th.cal-ope-hoy{background:#00777b}.cal-ope-letra{opacity:.85;font-size:10px;display:block}.cal-ope-nombre{z-index:1;border-right:1px solid var(--color-border);text-align:left;white-space:nowrap;background:#fff;min-width:150px;padding:6px 10px;font-size:13px;position:sticky;left:0}.cal-ope thead .cal-ope-nombre{background:var(--color-magenta)}.cal-ope tbody th,.cal-ope-celda{border-top:1px solid var(--color-border)}.cal-ope-celda{vertical-align:middle;text-align:center;cursor:pointer;border-left:1px solid #f0f0f2;height:38px;padding:2px}.cal-ope-celda:hover{background:#fbf3f8}.cal-ope-celda.cal-ope-finde{background:var(--color-bg-subtle)}.cal-ope-celda.cal-ope-hoy{box-shadow:inset 0 0 0 2px #00777b}.cal-bloque{border:1px solid var(--cal-color);background:var(--cal-color);color:#fff;width:100%;font:11px/1.2 var(--font-body);cursor:pointer;border-radius:3px;margin:1px 0;padding:2px 0;display:block}.cal-pie{flex-direction:column;gap:12px;display:flex}.cal-leyenda{flex-wrap:wrap;gap:6px 18px;font-size:13px;display:flex}.cal-leyenda>span{align-items:center;display:inline-flex}.cal-punto{vertical-align:middle;border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-right:6px;display:inline-block}.cal-lista summary{cursor:pointer;font-weight:600}.cal-lista ul{margin:8px 0 0;padding:0;font-size:14px;list-style:none}.cal-lista li{border-top:1px solid var(--color-border);padding:5px 0}.cal-puntos,.cal-dia{display:none}@media (width<=900px){.cal{gap:14px}.cal-cabecera{align-items:center}.cal-cabecera h1{margin:0;font-size:24px}.cal-cabecera p{display:none}.cal-boton,.cal-boton-sec{padding:10px 16px}.cal-nav{width:100%}.cal-nav h2{flex:1;min-width:0;font-size:19px}.cal-flecha{width:44px;height:44px}.cal-vistas{flex:1}.cal-vista{flex:1;padding:9px 10px}.cal-filtros{flex-wrap:wrap;gap:10px 14px;width:100%}.cal-filtros select{flex:100%;width:100%;min-width:0;padding:9px 10px}.cal-mes-dia-semana{padding:6px 0;font-size:12px}.cal-celda{align-items:center;gap:4px;min-height:54px;padding:5px 2px 6px}.cal-celda:hover{background:inherit}.cal-numero{text-align:center;align-self:center;min-width:26px;font-size:14px}.cal-celda .cal-tiempo{font-size:12px}.cal-celda-elegida{box-shadow:inset 0 0 0 2px var(--color-magenta);background:#fff0f8!important}.cal-puntos{flex-wrap:wrap;justify-content:center;align-items:center;gap:3px;max-width:100%;display:flex}.cal-mini{background:var(--cal-color);border-radius:50%;width:7px;height:7px}.cal-mini-cancelada{background:#c9c9ce}.cal-mini-hecha{opacity:.5}.cal-mini-previsto{border:1.5px dashed var(--cal-color);background:#fff}.cal-mini-nota{background:#d9a400;border-radius:2px}.cal-mini-mas{color:var(--color-text-muted);font-size:10px;font-weight:700;line-height:1}.cal-dia{border:1px solid var(--color-border);background:#fff;border-radius:10px;flex-direction:column;gap:10px;padding:14px;display:flex}.cal-dia-cab{justify-content:space-between;align-items:center;gap:12px;display:flex}.cal-dia-cab h3{text-transform:capitalize;font-size:19px}.cal-dia-lista{flex-direction:column;gap:8px;display:flex}.cal-dia .cal-chip{padding:8px 10px 8px 12px;font-size:14px}.cal-dia .cal-chip-caja .cal-chip{padding-right:44px}.cal-dia .cal-chip-exp{width:34px;height:34px;font-size:16px;top:6px;right:6px}.cal-dia .cal-chip-operario{font-size:13px}.cal-dia .cal-chip-notas{-webkit-line-clamp:10;font-size:13px}.cal-ope-semana{font-family:var(--font-heading);justify-content:space-between;align-items:center;gap:10px;font-size:17px;display:flex}.cal-ope-wrapper{overflow-x:visible}.cal-ope{table-layout:fixed;width:100%}.cal-ope thead th{min-width:0;padding:6px 0;font-size:14px}.cal-ope-nombre{white-space:normal;overflow-wrap:anywhere;width:92px;min-width:0;padding:6px;font-size:12px;line-height:1.25}.cal-ope thead .cal-ope-nombre{font-size:12px}.cal-ope-celda{height:48px;padding:2px 1px}.cal-bloque{padding:4px 0;font-size:10px}.cal-ope-wrapper .cal-nota{padding:8px 10px}}.cal-chip-nota{--cal-color:#b8860b;color:#6b5200;background:#fff8e1;border:1px dashed #d9a400;font-style:italic}.cal-chip-nota:hover{background:#fff2cc}.cal-chip-nota .cal-chip-cab{color:#6b5200}.cal-boton-sec{border:1px solid var(--color-magenta);color:var(--color-magenta);font:14px/1.4 var(--font-body);cursor:pointer;white-space:nowrap;background:#fff;border-radius:6px;padding:7px 14px}.cal-boton-sec:hover:not(:disabled){background:#fff0f8}.cal-boton-sec:disabled{opacity:.6;cursor:default}.cal-exportar{max-width:520px}.cal-exportar-opciones{border:none;flex-direction:column;gap:8px;margin:0 0 14px;padding:0;display:flex}.cal-exportar-opciones legend{margin-bottom:8px;font-weight:600}.cal-exportar-opcion{border:1px solid var(--color-border);cursor:pointer;border-radius:8px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.cal-exportar-opcion:has(input:checked){border-color:var(--color-magenta);background:#fff0f8}.cal-exportar-opcion input{accent-color:var(--color-magenta);margin-top:3px}.cal-exportar-opcion span{flex-direction:column;gap:2px;display:flex}.cal-exportar-opcion small{color:var(--color-text-muted);font-size:13px}.cal-exportar-check{align-items:center;gap:8px;margin-bottom:10px;font-size:14px;display:flex}.cal-exportar-check input{accent-color:var(--color-magenta)}.cal-chip-caja{min-width:0;position:relative}.cal-chip-caja .cal-chip{padding-right:26px}.cal-chip-exp{border:1px solid color-mix(in srgb, var(--cal-color) 45%, #fff);width:22px;height:22px;color:var(--cal-color);font:700 13px/1 var(--font-body);cursor:pointer;background:#fff;border-radius:4px;padding:0;position:absolute;top:3px;right:3px}.cal-chip-exp:hover{background:var(--cal-color);color:#fff}.cal-ruta{border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font:12px/1.4 var(--font-body);cursor:pointer;white-space:nowrap;border-radius:999px;padding:2px 9px}.cal-ruta:hover{border-color:var(--color-magenta);color:var(--color-magenta)}.cal-dia-botones{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.cal-boton-ruta{background:var(--color-bg);color:var(--color-magenta);border:1px solid var(--color-magenta)}.his{flex-direction:column;gap:20px;display:flex}.his-cabecera{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.his-cabecera h1{margin:0 0 6px;font-size:28px}.his-cabecera p{max-width:720px;color:var(--color-text-muted);margin:0;font-size:14px}.his-boton{border:1px solid var(--color-magenta);background:var(--color-magenta);color:#fff;font:14px/1.4 var(--font-body);cursor:pointer;white-space:nowrap;border-radius:6px;padding:8px 16px}.his-boton:disabled{opacity:.55;cursor:not-allowed}.his-enlace{font:13px/1.4 var(--font-body);color:#00777b;cursor:pointer;white-space:nowrap;text-align:left;background:0 0;border:none;padding:0;font-weight:600}.his-enlace:hover:not(:disabled){text-decoration:underline}.his-enlace-suave{color:var(--color-text-muted);font-weight:400}.his-enlaces{flex-wrap:wrap;gap:4px 12px;display:flex}.his-nota{color:var(--color-text-muted);font-size:12px}.his-nota-form{margin:-6px 0 14px;display:block}.his-error{color:var(--color-magenta)}.his-aviso{border-radius:8px;margin:0;padding:12px 40px 12px 16px;font-size:15px;position:relative}.his-aviso-ok{color:#1c6b47;background:#e8f7f0;border:1px solid #2e9e6b}.his-aviso-error{border:1px solid var(--color-magenta);color:#a8055f;background:#fdeaf4}.his-aviso-cerrar{color:inherit;cursor:pointer;background:0 0;border:none;font-size:20px;position:absolute;top:6px;right:10px}.his-boton-secundario{color:var(--color-magenta);background:#fff}.his-bloque h2,.his-falta h2{margin:0 0 12px;font-size:18px}.his-form{border:1px solid var(--color-border);background:var(--color-bg-subtle);border-radius:8px;padding:18px 20px}.his-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:14px 16px;display:grid}.his-campo{color:var(--color-text-muted);flex-direction:column;gap:5px;font-size:13px;display:flex}.his-campo input:not([type=checkbox]):not([type=file]),.his-campo select{font:14px/1.4 var(--font-body);border:1px solid var(--color-border);color:var(--color-text);background:#fff;border-radius:6px;padding:8px 10px}.his-campo-linea{flex-direction:row;align-items:center;gap:8px}.his-ancho{grid-column:span 2}.his-ancho3{grid-column:span 3}.his-ancho4{grid-column:span 4}.his-check{color:var(--color-text);align-items:center;gap:8px;font-size:14px;display:inline-flex}.his-total strong{color:var(--color-text);font-size:20px}.his-acciones{align-items:center;gap:16px;margin-top:16px;display:flex}.his-falta{background:#fff9f0;border:1px solid #e08a00;border-radius:8px;padding:14px 18px}.his-falta h2{margin-bottom:2px}.his-falta-fila{border-top:1px solid #f1dcc0;grid-template-columns:90px minmax(0,1fr) auto auto;align-items:center;gap:8px 16px;padding:8px 0;font-size:14px;display:grid}.his-falta-fila:first-of-type{margin-top:10px}.his-falta-fecha{font-variant-numeric:tabular-nums;color:var(--color-text-muted)}.his-falta-chips{flex-wrap:wrap;gap:4px;display:flex}.his-falta-texto{color:#8a4b00}.his-periodo{flex-wrap:wrap;align-items:center;gap:12px 20px;display:flex}.his-segmentos{border:1px solid var(--color-border);border-radius:8px;display:inline-flex;overflow:hidden}.his-segmento{border:none;border-left:1px solid var(--color-border);font:14px/1.4 var(--font-body);color:var(--color-text);cursor:pointer;background:#fff;padding:7px 16px}.his-segmento:first-child{border-left:none}.his-segmento-activo{background:var(--color-magenta);color:#fff}.his-totales{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.his-tarjeta{border:1px solid var(--color-border);background:#fff;border-radius:8px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.his-tarjeta-titulo{font-family:var(--font-heading);letter-spacing:.3px;text-transform:uppercase;color:var(--color-text-muted);font-size:12px}.his-tarjeta strong{font-variant-numeric:tabular-nums;font-size:22px}.his-negativo{color:var(--color-magenta)}.his-pestanas{border-bottom:2px solid var(--color-border);gap:4px;display:flex}.his-pestana{font:15px/1.4 var(--font-body);color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:8px 16px}.his-pestana-activa{border-bottom-color:var(--color-magenta);color:var(--color-text);font-weight:600}.his-pestana-n{background:var(--color-bg-subtle);border-radius:999px;min-width:20px;padding:0 6px;font-size:12px;font-weight:400;display:inline-block}.his-tabla-wrapper{border:1px solid var(--color-border);background:#fff;border-radius:8px;overflow-x:auto}.his-tabla{border-collapse:collapse;width:100%;font-size:14px}.his-tabla thead th{background:var(--color-magenta);color:#fff;font-family:var(--font-heading);letter-spacing:.3px;text-transform:uppercase;text-align:left;white-space:nowrap;padding:12px 14px;font-size:13px;font-weight:400}.his-tabla tbody td{border-top:1px solid var(--color-border);vertical-align:top;padding:10px 14px}.his-tabla .his-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.his-nowrap{white-space:nowrap}.his-sub{color:var(--color-text-muted);font-size:12px;display:block}.his-sentido{font-weight:700}.his-sentido-entrada{color:#1c6b47}.his-sentido-salida{color:var(--color-magenta)}.his-chip{white-space:nowrap;border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-block}.his-chip-pendiente{color:#8a4b00;background:#fff4e5}.his-chip-neutro{color:#555;background:#eeeeef}.his-chip-falta{color:#a8055f;background:#fdeaf4}.his-buscar{align-items:center;gap:12px;display:flex}.his-buscar input{border:1px solid var(--color-border);background:var(--color-bg);min-width:0;max-width:480px;font:15px/1.3 var(--font-body);border-radius:8px;flex:1;padding:9px 12px}.his-buscar input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}@media (width<=1100px){.his-totales{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.his-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.his-ancho3,.his-ancho4{grid-column:span 2}.his-falta-fila{grid-template-columns:1fr}.his-cabecera h1{font-size:24px}.his-cabecera .his-boton,.his-periodo .his-boton{width:100%}.his-segmentos{flex:1}.his-segmento{flex:1;padding:8px 0}.his-tarjeta{padding:12px}.his-tarjeta strong{font-size:19px}.his-tarjeta:last-child{grid-column:1/-1}.his-pestana{flex:1;padding:8px 4px}.his-tabla-wrapper{background:0 0;border:none;overflow:visible}.his-tabla thead{display:none}.his-tabla,.his-tabla tbody{display:block}.his-tabla tbody tr{border:1px solid var(--color-border);background:#fff;border-left:4px solid #2e9e6b;border-radius:10px;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 12px;margin-bottom:12px;padding:14px 16px;display:grid}.his-tabla tbody tr.his-fila-salida{border-left-color:var(--color-magenta)}.his-tabla tbody td{overflow-wrap:anywhere;border:none;min-width:0;padding:0;display:block}.his-tabla tbody td:empty{display:none}.his-tabla .his-num{text-align:left}.his-tabla tbody td:before{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);font-size:11px;display:block}.his-tabla tbody td:nth-child(3){grid-area:1/1/auto/3;font-weight:600}.his-tabla tbody td:first-child{text-align:right;color:var(--color-text-muted);grid-area:1/3}.his-tabla tbody td:nth-child(4){grid-area:2/1/auto/3}.his-tabla tbody td:nth-child(2){text-align:right;color:var(--color-text-muted);grid-area:2/3}.his-tabla tbody td:nth-child(5){color:var(--color-text-muted);grid-area:3/1/auto/-1}.his-tabla tbody td:nth-child(6){grid-area:4/1;margin-top:4px}.his-tabla tbody td:nth-child(7){grid-area:4/2;margin-top:4px}.his-tabla tbody td:nth-child(8){grid-area:4/3;margin-top:4px;font-weight:700}.his-tabla tbody td:nth-child(6):before{content:"Base"}.his-tabla tbody td:nth-child(7):before{content:"IVA"}.his-tabla tbody td:nth-child(8):before{content:"Total";font-weight:400}.his-tabla tbody td:nth-child(9){grid-area:5/1/auto/3;margin-top:4px}.his-tabla tbody td:nth-child(10){text-align:right;grid-area:5/3;margin-top:4px}.his-tabla tbody td:nth-child(11){grid-area:6/1/auto/-1}.his-tabla tbody td:nth-child(11) .his-enlaces{justify-content:flex-end;gap:4px 20px}}.his-botones-cabecera{flex-wrap:wrap;gap:8px;display:flex}.his-comision-pdf{flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0 14px;display:flex}.his-comision-facturas{border:1px solid var(--color-border);border-radius:8px;flex-direction:column;gap:6px;margin:14px 0;padding:10px 14px;display:flex}.his-comision-factura{cursor:pointer;border-radius:6px;grid-template-columns:auto 90px minmax(0,1fr) auto auto;align-items:center;gap:4px 12px;padding:6px 8px;font-size:14px;display:grid}.his-comision-factura-marcada{background:#e7f6ec}.his-comision-num{font-weight:600}.his-comision-base{font-variant-numeric:tabular-nums;text-align:right}@media (width<=900px){.his-comision-factura{grid-template-columns:auto minmax(0,1fr) auto}}.his-comision-checks{flex-wrap:wrap;grid-column:2/-1;gap:6px;display:flex}.his-chip-ok,.his-chip-mal{border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600}.his-chip-ok{color:#1d6b3a;background:#d9f2e1}.his-chip-mal{color:#a12020;background:#fde3e3}.his-comision-resumen-ok{color:#1d6b3a;margin:6px 0 0;font-size:14px;font-weight:600}.his-marcar-pagada{margin-top:4px;font-size:13px;display:block}.his-pago-rapido{flex-direction:column;gap:6px;min-width:180px;margin-top:6px;display:flex}.his-pago-rapido input[type=date]{border:1px solid var(--color-border);font:13px var(--font-body);border-radius:6px;padding:4px 6px}.his-pago-rapido input[type=file]{max-width:200px;margin-top:2px;font-size:12px;display:block}.his-lectura{border:1px dashed var(--color-border);background:var(--color-bg);border-radius:10px;grid-template-columns:minmax(180px,240px) minmax(220px,1fr);align-items:end;gap:12px 16px;margin:4px 0 16px;padding:12px 14px;display:grid}.his-lectura>p{grid-column:1/-1;margin:0}.his-nota-ok{color:#1b7f3b;font-weight:600}@media (width<=700px){.his-lectura{grid-template-columns:1fr}}.vin-kind-orientativo{color:var(--blue);font-weight:700}.vin-pay-plazo{white-space:nowrap}.vin-objeto-aviso{font-style:italic;color:var(--ink-soft)!important;margin-top:1.6mm!important;font-size:7.6pt!important}.vin-bloque{border-bottom:1px solid var(--rule-soft);padding:2.4mm 0 1.6mm}.vin-bloque:last-of-type{border-bottom:none}.vin-bloque-cabecera{grid-template-columns:9mm 1fr auto;align-items:baseline;margin-bottom:1.2mm;display:grid}.vin-bloque-num{color:var(--blue);font-family:Fjalla One,sans-serif;font-size:12pt}.vin-bloque-nombre{text-transform:uppercase;color:var(--ink);font-family:Fjalla One,sans-serif;font-size:10.5pt}.vin-bloque-nombre em{text-transform:none;color:var(--ink-soft);font-family:Noto Sans,sans-serif;font-size:7pt;font-style:normal}.vin-bloque-subtotal{color:var(--blue);font-variant-numeric:tabular-nums;white-space:nowrap;font-family:Fjalla One,sans-serif;font-size:10.5pt}.vin-partida{color:var(--ink);grid-template-columns:3.5mm 1fr auto;align-items:flex-start;margin:.9mm 0 .9mm 9mm;font-size:8.2pt;line-height:1.4;display:grid}.vin-partida .eco2-work-line-bullet{margin-top:1.1mm}.vin-partida-texto{flex-direction:column;display:flex}.vin-partida-detalle{color:var(--ink-soft);font-size:7.4pt}.vin-partida-unidades{color:var(--blue);font-variant-numeric:tabular-nums;font-size:7.4pt}.vin-partida-incluido{color:var(--ink-soft);font-style:italic}.vin-partida-importe{font-variant-numeric:tabular-nums;white-space:nowrap;padding-left:4mm}.vin-pay-line{margin-top:1.2mm}.vin-condiciones{border-top:1px solid var(--rule);margin-top:2mm}.vin-condicion{border-bottom:1px solid var(--rule-soft);grid-template-columns:42mm 1fr;gap:4mm;padding:2.2mm 3mm;font-size:8.2pt;line-height:1.45;display:grid}.vin-condicion-resaltada{border-left:1.1mm solid var(--magenta);background:linear-gradient(90deg,#fb079314,#fb079303)}.vin-condicion-label{letter-spacing:.12em;text-transform:uppercase;color:var(--blue);padding-top:.4mm;font-size:6.8pt;font-weight:700}.vin-condicion-texto{color:var(--ink)}.vin-plazos-nota{color:var(--ink-soft);margin:0 0 2mm;font-size:7.4pt}.vin-plazos{flex-direction:column;gap:1.6mm;display:flex}.vin-plazo{color:var(--ink);grid-template-columns:6mm 48mm 30mm 1fr;align-items:center;font-size:8.2pt;display:grid}.vin-plazo-num{color:var(--blue);font-family:Fjalla One,sans-serif;font-size:10pt}.vin-plazo-dias{color:var(--ink-soft);font-size:7.6pt}.vin-plazo-pista{background:var(--wash);height:4mm;position:relative}.vin-plazo-barra{background:#00bbc1;position:absolute;top:0;bottom:0}.vin-plazo-total{margin-top:4mm}.vinilos{flex-direction:column;gap:18px;display:flex}.vin-cabecera{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.vin-cabecera h1{margin:0 0 4px;font-size:28px}.vin-subtitulo{color:var(--color-text-muted);margin:0;font-size:14px}.vin-pestanas{border-bottom:1px solid var(--color-border);gap:4px;display:flex}.vin-pestana{font:14px/1.4 var(--font-body);color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;padding:8px 16px}.vin-pestana-activa{color:var(--color-text);border-bottom-color:var(--color-magenta);font-weight:600}.vin-barra{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.vin-buscador{border:1px solid var(--color-border);max-width:420px;font:14px/1.4 var(--font-body);border-radius:6px;flex:260px;padding:8px 12px}.vin-boton{border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);font:13px/1.4 var(--font-body);cursor:pointer;white-space:nowrap;border-radius:6px;padding:7px 14px}.vin-boton:disabled{opacity:.55;cursor:not-allowed}.vin-boton-principal{background:var(--color-magenta);border-color:var(--color-magenta);color:#fff;font-size:14px}.vin-boton-suave{color:#00777b;border-style:dashed;align-self:flex-start}.vin-boton-peligro{color:#b42318}.vin-icono{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:4px 6px;font-size:12px}.vin-icono:hover{color:var(--color-magenta)}.vin-error{color:#b42318;background:#fdecec;border-radius:6px;margin:0;padding:10px 14px;font-size:14px}.vin-vacio{color:var(--color-text-muted);font-size:14px}.vin-ayuda{color:var(--color-text-muted);font-size:13px}.vin-tabla-wrapper{overflow-x:auto}.vin-tabla{border-collapse:collapse;width:100%;font-size:14px}.vin-tabla thead th{text-align:left;background:var(--color-magenta);color:#fff;font-family:var(--font-heading);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;padding:10px 12px;font-weight:400}.vin-tabla tbody td{border-top:1px solid var(--color-border);vertical-align:top;padding:10px 12px}.vin-tabla tbody tr:nth-child(2n){background:var(--color-bg-subtle)}.vin-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.vin-numero{color:#002cc0}.vin-sub{color:var(--color-text-muted);font-size:12px;display:block}.vin-celda-acciones{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.vin-chip{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:999px;padding:2px 9px;font-size:12px;font-weight:600;display:inline-block}.vin-chip-enviado{color:#8a5300;background:#fff4e5;border-color:#f5c27a}.vin-chip-aprobado{color:#17663a;background:#e8f7ee;border-color:#9bd6b0}.vin-chip-rechazado{color:#b42318;background:#fdecec;border-color:#f2b1ab}.vin-estado-select{font:12px/1.3 var(--font-body);border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;margin-top:6px;padding:3px 6px;display:block}.vin-tarjeta{border:1px solid var(--color-border);background:var(--color-bg);border-radius:10px;flex-direction:column;gap:14px;padding:18px 20px;display:flex}.vin-tarjeta h2,.vin-tarjeta h3{margin:0}.vin-subtarjeta{background:var(--color-bg-subtle);border:1px solid var(--color-border);border-radius:8px;padding:14px 16px}.vin-titulo{border-bottom:2px solid var(--color-magenta);margin:8px 0 0;padding-bottom:4px;font-size:18px}.vin-rejilla{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px 14px;display:grid}.vin-campo{flex-direction:column;gap:4px;font-size:13px;display:flex}.vin-campo>span{color:var(--color-text-muted)}.vin-campo-ancho{grid-column:1/-1}.vin-campo-check{flex-direction:row;align-items:center;gap:8px}.vin-campo-check>span{color:var(--color-text)}.vin-campo-inline{flex-direction:row;align-items:center;gap:8px}.vin-campo input,.vin-campo select,.vin-campo textarea,.vin-bloque-edit input,.vin-plazo-edit input,.vin-plazo-edit select{font:14px/1.4 var(--font-body);border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);border-radius:6px;min-width:0;padding:7px 9px}.vin-campo textarea{resize:vertical}.vin-cliente-elegir{flex-wrap:wrap;gap:8px;display:flex}.vin-cliente-elegir select{flex:260px}.vin-acciones{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.vin-acciones-final{border-top:1px solid var(--color-border);padding-top:8px}.vin-ia{border-left:4px solid var(--color-magenta);background:#fff3f9;border-radius:8px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.vin-aviso-propuesto{color:#8a5300;background:#fff4e5;border-radius:6px;margin:0;padding:8px 12px;font-size:13px}.vin-bloque-edit{border:1px solid var(--color-border);background:var(--color-bg-subtle);border-radius:8px;flex-direction:column;gap:8px;padding:12px 14px;display:flex}.vin-bloque-edit-cabecera{grid-template-columns:28px 1fr auto auto;align-items:center;gap:10px;display:grid}.vin-bloque-edit-num{font-family:var(--font-heading);color:#002cc0;font-size:20px}.vin-bloque-edit-nombre{text-transform:uppercase;font-family:var(--font-heading)!important;font-size:16px!important}.vin-bloque-edit-subtotal{color:#002cc0;font-variant-numeric:tabular-nums;font-weight:700}.vin-partida-edit{grid-template-columns:1fr auto auto;align-items:start;gap:8px;padding-left:38px;display:grid}.vin-partida-edit-textos{flex-direction:column;gap:4px;display:flex}.vin-partida-edit-detalle{font:13px/1.4 var(--font-body);color:var(--color-text-muted);border:1px solid var(--color-border);background:var(--color-bg);resize:vertical;border-radius:6px;padding:6px 9px}.vin-partida-edit-numeros{align-items:flex-end;gap:8px;display:flex}.vin-partida-edit-numeros label{color:var(--color-text-muted);flex-direction:column;gap:2px;font-size:11px;display:flex}.vin-partida-edit-numeros label:first-child input{width:70px}.vin-partida-edit-numeros label:nth-child(2) input{width:110px}.vin-partida-edit-total{text-align:right;font-variant-numeric:tabular-nums;color:#002cc0;min-width:96px;padding-bottom:8px;font-weight:700}.vin-partida-edit-importe{text-align:right;font-weight:600}.vin-propuesto{color:#8a5300!important;background:#fff4e5!important;border-color:#f5a623!important}.vin-partida-edit-botones{display:flex}.vin-totales{flex-wrap:wrap;justify-content:flex-end;gap:24px;font-size:14px;display:flex}.vin-totales>div{flex-direction:column;align-items:flex-end;display:flex}.vin-totales span{color:var(--color-text-muted);font-size:12px}.vin-totales-total{background:var(--color-magenta);color:#fff;border-radius:6px;padding:6px 14px}.vin-totales-total span{color:#fff}.vin-totales-total strong{font-family:var(--font-heading);font-size:22px;font-weight:400}.vin-pago{flex-wrap:wrap;align-items:flex-end;gap:18px;display:flex}.vin-plazos-pago{flex-wrap:wrap;gap:8px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.vin-plazos-pago li{background:#e6f8f8;border:1px solid #9fdfe0;border-radius:6px;padding:6px 10px}.vin-plazo-edit{grid-template-columns:1fr 70px auto 70px 150px auto;align-items:center;gap:8px;font-size:13px;display:grid}@media (width<=700px){.vin-partida-edit{grid-template-columns:1fr;padding-left:0}.vin-partida-edit-botones{grid-column:1/-1;justify-content:flex-end}.vin-plazo-edit{grid-template-columns:1fr 60px auto 60px}.vin-plazo-edit select{grid-column:1/4}}.vin-envio{background:#e8f7ee;border-left:4px solid #17663a;border-radius:8px;flex-direction:column;gap:8px;padding:12px 16px;font-size:14px;display:flex}.vin-envio p{margin:0}.vin-envio-fallo{background:#fff4e5;border-left-color:#b42318}.vin-envio-enlace{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.vin-envio-enlace input{font:13px/1.4 var(--font-body);border:1px solid var(--color-border);background:var(--color-bg);border-radius:6px;flex:320px;padding:6px 9px}.vin-cita{color:#7b1fa2;margin-top:4px;font-weight:600}.coming-soon h1{margin-bottom:8px;font-size:28px}.coming-soon p{color:var(--color-text-muted);margin:0}.op-panel{background:var(--color-bg-subtle);flex-direction:column;min-height:100svh;display:flex}.op-cabecera{z-index:5;background:var(--color-bg);border-bottom:1px solid var(--color-border);align-items:center;gap:12px;padding:10px 16px;display:flex;position:sticky;top:0}.op-logo{width:auto;height:34px}.op-quien{flex-direction:column;flex:1;min-width:0;line-height:1.25;display:flex}.op-nombre{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.op-titular{color:var(--color-text-muted);font-size:12px}.op-salir{border:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text);cursor:pointer;border-radius:8px;padding:8px 12px;font-size:14px}.op-contenido{flex:1;width:100%;max-width:640px;margin:0 auto;padding:16px 16px 96px}.op-pestanas{z-index:5;background:var(--color-bg);border-top:1px solid var(--color-border);padding-bottom:env(safe-area-inset-bottom);display:flex;position:fixed;bottom:0;left:0;right:0}.op-pestana{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-top:3px solid #0000;flex:1;padding:14px 4px;font-size:14px}.op-pestana-activa{color:var(--color-magenta);border-top-color:var(--color-magenta);font-weight:600}.op-estado,.op-vacio p{color:var(--color-text-muted);text-align:center;margin:32px 0}.op-error{color:#b00020;background:#fdecee;border-radius:8px;padding:12px}.op-bloque{margin-bottom:20px}.op-bloque h2,.op-dia{margin-bottom:8px;font-size:20px}.op-dia-hoy{color:var(--color-magenta)}.op-bloque-aviso{background:#fff7e6;border:1px solid #f3d8a0;border-radius:12px;padding:12px}.op-bloque-ayuda{color:var(--color-text-muted);margin:-4px 0 10px;font-size:13px}.op-dia-mini{color:var(--color-text-muted);margin:8px 0 4px;font-size:13px;font-weight:600}.op-cita{background:var(--color-bg);border:1px solid var(--color-border);border-left:4px solid var(--color-cyan);border-radius:10px;margin-bottom:10px;padding:12px 14px}.op-cita-obra{border-left-color:var(--color-magenta)}.op-cita-mantenimiento{border-left-color:#7a5af8}.op-cita-hecha{opacity:.7}.op-cita-cabecera{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.op-cita-tipo{text-transform:uppercase;letter-spacing:.03em;font-size:13px;font-weight:700}.op-cita-hora{font-size:14px;font-weight:600}.op-urgente{color:#fff;background:#d92d20;border-radius:999px;padding:1px 8px;font-size:12px;font-weight:700}.op-hecha{color:#067647;font-size:12px;font-weight:600}.op-cita-direccion{margin:2px 0;font-size:16px;font-weight:600}.op-cita-linea{margin:2px 0;font-size:14px}.op-cita-nota{color:var(--color-text-muted);white-space:pre-line;margin:6px 0 0;font-size:14px}.op-boton{background:var(--color-magenta);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;margin-top:10px;padding:12px;font-size:15px;font-weight:600;display:block}.op-boton:disabled{opacity:.6;cursor:default}.op-obra{text-align:left;background:var(--color-bg);border:1px solid var(--color-border);border-left:4px solid var(--color-magenta);width:100%;font:inherit;color:inherit;cursor:pointer;border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;margin-bottom:10px;padding:12px 14px;display:flex}.op-obra:disabled{cursor:default;border-left-color:var(--color-border);opacity:.75}.op-obra-cabecera{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.op-obra-incidencia{color:var(--color-text-muted)}.op-obra-ver{color:var(--color-magenta);margin-top:4px;font-size:14px;font-weight:600}.op-volver{color:var(--color-magenta);cursor:pointer;background:0 0;border:none;margin-bottom:12px;padding:0;font-size:15px}.op-cita-ficha{margin-bottom:20px}.op-subtitulo{font-size:18px!important}.op-fotos{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px;display:grid}.op-foto{margin:0;position:relative}.op-foto img,.op-foto-vacia{aspect-ratio:1;object-fit:cover;background:var(--color-border);border-radius:8px;width:100%;display:block}.op-foto-borrar{color:#fff;cursor:pointer;background:#000000a6;border:none;border-radius:6px;padding:3px 8px;font-size:12px;position:absolute;bottom:4px;right:4px}.op-boton-secundario{text-align:center;background:var(--color-bg);color:var(--color-magenta);border:1px solid var(--color-magenta);display:block}.op-boton-ocupado{opacity:.6;pointer-events:none}.op-boton-arriba{margin:0 0 16px}.op-chip{background:var(--color-border);color:var(--color-text);border-radius:999px;margin-bottom:4px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-block}.op-chip-borrador{color:#555;background:#eef0f3}.op-chip-enviado{color:#007a7e;background:#e0f6f7}.op-chip-aprobado{color:#1e7b34;background:#e6f6ea}.op-chip-rechazado{color:#b00020;background:#fdecee}.op-inline{margin:0;display:inline}.op-campo{color:var(--color-text-muted);flex-direction:column;flex:1;gap:4px;min-width:0;margin-bottom:12px;font-size:14px;display:flex}.op-campo>.op-cita-linea{color:var(--color-text);font-size:15px}.op-input{box-sizing:border-box;border:1px solid var(--color-border);background:var(--color-bg);width:100%;color:var(--color-text);font:inherit;border-radius:8px;padding:10px 12px;font-size:16px}textarea.op-input{resize:vertical}.op-fila-campos{gap:10px;display:flex}.op-fila-partida .op-input:first-child{flex:1}.op-fila-partida .op-input:nth-child(2){flex:0 0 96px}.op-fila-partida .op-input:nth-child(3){flex:1.2}.op-fila-botones{gap:10px;display:flex}.op-fila-botones .op-boton{margin-top:0}.op-subtitulo-form{margin:20px 0 10px}.op-linea-form{background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;flex-direction:column;gap:6px;margin-bottom:10px;padding:12px;display:flex}.op-linea-pie{justify-content:space-between;align-items:center;display:flex}.op-quitar{color:#b00020;cursor:pointer;background:0 0;border:none;align-self:flex-end;padding:4px 0;font-size:14px}.op-enlace{color:var(--color-magenta);cursor:pointer;background:0 0;border:none;padding:4px 0 14px;font-size:15px;font-weight:600}.op-totales{background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;margin:8px 0 12px;padding:10px 14px}.op-totales>div{justify-content:space-between;padding:3px 0;font-size:15px;display:flex}.op-total-final{border-top:1px solid var(--color-border);margin-top:4px;font-weight:700;padding-top:8px!important;font-size:17px!important}.op-linea-pres{border-bottom:1px solid var(--color-border);justify-content:space-between;gap:12px;padding:10px 0;font-size:15px;display:flex}.op-capitulo-ver{border-bottom:1px solid var(--color-border);padding:10px 0}.op-aviso{background:#fff7e6;border:1px solid #f3d8a0;border-radius:8px;padding:10px 12px;font-size:14px}.op-estado-corto{margin:8px 0}.op-boton-peligro{background:var(--color-bg);color:#b00020;border:1px solid #e3a3ad}.op-ayuda{color:var(--color-text-muted);font-size:12px;line-height:1.35}.op-separador{text-align:center;color:var(--color-text-muted);margin:8px 0;font-size:13px}.op-boton-sin-margen{margin-top:0}.op-divisoria{color:var(--color-text-muted);align-items:center;gap:12px;margin:24px 0 20px;font-size:14px;display:flex}.op-divisoria:before,.op-divisoria:after{content:"";border-top:1px solid var(--color-border);flex:1}.op-eleccion{background:var(--color-bg);border:1px solid var(--color-magenta);border-radius:10px;padding:12px}.op-eleccion-pregunta{text-align:center;margin:0 0 10px;font-weight:600}.op-enlace-centrado{color:var(--color-text-muted);margin:8px auto 0;padding-bottom:0;font-weight:400;display:block}.op-subtitulo-sin-margen{margin-top:0}.op-fila-material{align-items:center;gap:8px;margin-bottom:6px;display:flex}.op-fila-material .op-input:first-child{flex:1}.op-input-coste{flex:0 0 100px}.op-quitar-x{color:#b00020;cursor:pointer;background:#fdecee;border:none;border-radius:50%;flex:0 0 32px;height:32px;font-size:20px;line-height:1}.op-conmutador{background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;margin-bottom:16px;padding:4px;display:flex}.op-conmutador button{font:inherit;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:7px;flex:1;padding:10px 6px;font-size:14px}.op-conmutador .op-conmutador-activo{background:var(--color-magenta);color:#fff;font-weight:600}.op-chip-pendiente{color:#9a5b00;background:#fff4e0}.op-nota-arriba{margin:0 0 12px}.op-vista-aviso{color:#6b3a00;background:#fff4e5;border-bottom:1px solid #e08a00;margin:0;padding:10px 16px;font-size:14px;line-height:1.4}.op-numeros{color:var(--color-text-muted);flex-wrap:wrap;gap:2px 14px;margin-top:4px;font-size:13px;display:flex}.op-numeros strong{color:var(--color-text);font-weight:600}.op-pendiente-presupuestar{border-left:4px solid #e08a00}.op-siguiente-paso{color:#00777b;font-weight:600}.op-fechas-obra{margin:0 0 4px;font-size:16px}.op-finalizada{color:#1c6b47;background:#e8f7f0;border-radius:8px;margin:0 0 8px;padding:10px 12px;font-size:15px;line-height:1.4}.op-nuevo-presupuesto .op-boton{margin-top:4px}.op-expediente{background:var(--color-bg);border:1px solid var(--color-border);border-left:4px solid var(--color-magenta);border-radius:10px;margin-bottom:14px;padding:12px 14px}.op-expediente-cabecera{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:6px;display:flex}.op-expediente-cabecera p{margin:0}.op-expediente-mas{border:1px solid var(--color-magenta);background:var(--color-bg);width:34px;height:34px;color:var(--color-magenta);cursor:pointer;border-radius:50%;flex:none;font-size:22px;line-height:1}.op-expediente-mas:hover{background:var(--color-magenta);color:#fff}.op-expediente-presupuesto{border:none;border-top:1px solid var(--color-border);text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 0 4px;display:flex}.op-expediente-titulo{font-size:15px;font-weight:600}.op-fechas{border-radius:8px;width:100%;margin:10px 0 4px;padding:10px 12px;font-size:15px;line-height:1.35}.op-fechas-si{color:#1c6b47;background:#e8f7f0;border:1px solid #2e9e6b;align-items:center;gap:10px;display:flex}.op-fechas-no{color:#6b3a00;background:#fff4e5;border:1px solid #e08a00;flex-direction:column;gap:10px;display:flex}.op-fechas-cabecera{align-items:center;gap:10px;display:flex}.op-fechas-icono{font-size:22px;line-height:1}.op-fechas strong{font-size:16px;display:block}.op-fechas-nota{opacity:.85;font-size:13px;display:block}.op-fechas .op-campo{color:inherit}.op-obra-curso{cursor:default}.op-obra-abrir{color:var(--color-magenta);margin-top:6px;font-size:15px}.op-fechas .op-fila-campos .op-campo{flex:1;min-width:0;margin:0}.op-obra-curso .op-obra-abrir{padding:4px 0 0}.op-agenda-modos{border:1px solid var(--color-border);background:var(--color-bg);border-radius:999px;margin:0 0 14px;padding:3px;display:inline-flex}.op-modo{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:6px 18px;font-size:14px}.op-modo-activo{background:var(--color-magenta);color:#fff;font-weight:600}.op-aviso-pendientes{background:#fff7e6;border:1px solid #f3d8a0;border-radius:10px;margin:0 0 12px;padding:10px 12px;font-size:14px}.op-aviso-pendientes .op-enlace{padding:0;font-size:14px}.op-mes-barra{align-items:center;gap:8px;margin:0 0 10px;display:flex}.op-mes-titulo{text-align:center;min-width:150px;margin:0;font-size:17px}.op-mes-flecha{border:1px solid var(--color-border);background:var(--color-bg);width:36px;height:36px;color:var(--color-text);cursor:pointer;border-radius:8px;font-size:20px;line-height:1}.op-mes-hoy{margin-left:auto;padding:4px 0}.op-mes{border:1px solid var(--color-border);background:var(--color-border);border-radius:10px;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.op-mes-laborables{grid-template-columns:repeat(5,minmax(0,1fr))}.op-mes-semana{background:var(--color-bg);text-align:center;color:var(--color-text-muted);padding:6px 0;font-size:12px;font-weight:600}.op-celda{background:var(--color-bg);min-height:52px;font:inherit;color:var(--color-text);cursor:pointer;border:none;flex-direction:column;align-items:center;gap:4px;padding:6px 2px;display:flex}.op-celda-finde{background:#fafafa}.op-celda-fuera{color:#b5b5b8}.op-celda-numero{text-align:center;border-radius:999px;min-width:22px;font-size:13px;line-height:22px}.op-celda-hoy .op-celda-numero{background:var(--color-magenta);color:#fff;font-weight:600}.op-celda-elegida{box-shadow:inset 0 0 0 2px var(--color-magenta)}.op-puntos{flex-wrap:wrap;justify-content:center;align-items:center;gap:3px;display:flex}.op-punto{background:var(--op-color);border-radius:999px;width:7px;height:7px;display:inline-block}.op-punto-hecha{box-shadow:inset 0 0 0 1.5px var(--op-color);background:0 0}.op-puntos-mas{color:var(--color-text-muted);font-size:10px}.op-leyenda{color:var(--color-text-muted);flex-wrap:wrap;gap:6px 14px;margin:10px 0 14px;font-size:12px;display:flex}.op-leyenda-item{align-items:center;gap:5px;display:inline-flex}.op-celda-citas{flex-direction:column;gap:3px;width:100%;display:flex}.op-mini{border-left:3px solid var(--op-color);text-align:left;white-space:nowrap;text-overflow:ellipsis;background:#f4f4f6;border-radius:3px;padding:2px 5px;font-size:11px;line-height:1.35;display:block;overflow:hidden}.op-mini-hecha{opacity:.55;text-decoration:line-through}.op-mini-mas{color:var(--color-text-muted);text-align:left;padding-left:5px;font-size:11px}@media (width>=901px){.op-cabecera{padding:12px 32px}.op-pestanas{border-top:none;border-bottom:1px solid var(--color-border);order:1;justify-content:center;gap:8px;padding:0 32px;position:sticky;top:59px;bottom:auto}.op-vista-aviso{order:2}.op-contenido{order:3;max-width:1120px;padding:24px 32px 48px}.op-pestana{border-top:none;border-bottom:3px solid #0000;flex:none;padding:14px 22px;font-size:15px}.op-pestana-activa{border-bottom-color:var(--color-magenta)}.op-rejilla{grid-template-columns:minmax(0,1fr);align-items:start;gap:14px;display:grid}.op-rejilla>:not(article):not(button.op-obra){grid-column:1/-1}.op-rejilla>article,.op-rejilla>button.op-obra{margin:0}.op-celda{align-items:stretch;min-height:96px;padding:6px}.op-celda-numero{align-self:flex-end}}.op-partida-detalle{white-space:pre-line;margin:2px 0;display:block}.op-garantia{color:#fff;text-transform:uppercase;background:#6a1b9a;border-radius:999px;padding:1px 8px;font-size:12px;font-weight:700}.op-intro-obra{white-space:pre-line}.op-cita-acciones{flex-wrap:wrap;gap:8px;margin:10px 0 4px;display:flex}.op-accion{color:#1a1a1a;font:inherit;cursor:pointer;background:#fff;border:1px solid #d9d7de;border-radius:999px;align-items:center;gap:4px;padding:8px 12px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.op-devuelto{background:#fdeeee;border-color:#e8a0a0;margin:0 0 14px}.op-devuelto p{white-space:pre-line;margin:4px 0}.op-devuelto-linea{color:#b3261e;margin-top:4px;display:block}.op-instalar{background:#eef9fc;border:1px solid #b9e3ec;border-radius:10px;margin:0 0 14px;padding:12px 40px 12px 14px;font-size:14px;position:relative}.op-instalar strong{margin-bottom:4px;display:block}.op-instalar ol{margin:6px 0 0;padding-left:20px}.op-instalar-cerrar{color:#5f6368;cursor:pointer;background:0 0;border:0;font-size:20px;line-height:1;position:absolute;top:6px;right:8px}.op-buscador{margin:0 0 12px}.op-seccion-pres{margin:0 0 14px}.op-seccion-titulo{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #e5e4e7;justify-content:space-between;align-items:center;padding:10px 2px;font-size:15px;font-weight:700;display:flex}.op-seccion-corregir{color:#b3261e}.op-seccion-cuenta{text-align:center;background:#f1f0f3;border-radius:999px;min-width:22px;margin-left:6px;padding:1px 7px;font-size:12px;display:inline-block}.op-pres-fila{width:100%;font:inherit;text-align:left;cursor:pointer;background:#fff;border:1px solid #e5e4e7;border-left:3px solid #d6006f;border-radius:8px;flex-direction:column;gap:4px;margin:8px 0 0;padding:12px 14px;display:flex}.op-filtros{flex-wrap:wrap;gap:6px;margin:0 0 10px;display:flex}.op-filtro{font:inherit;cursor:pointer;background:#fff;border:1px solid #d9d7de;border-radius:999px;padding:7px 12px;font-size:14px}.op-filtro-activo{color:#fff;background:#d6006f;border-color:#d6006f}.op-filtro-activo .op-seccion-cuenta{color:#fff;background:#ffffff40}.op-filtro-corregir:not(.op-filtro-activo){color:#b3261e;border-color:#e8a0a0}.op-proximas{margin-top:18px}.op-bloque-elegido{border-radius:8px;outline:2px solid #d6006f33}.op-mas-opciones{background:#fff;border:1px solid #e5e4e7;border-radius:8px;margin:12px 0;padding:8px 12px}.op-mas-opciones summary{cursor:pointer;color:#5f6368;font-size:14px;font-weight:600}.op-casilla{cursor:pointer;align-items:center;gap:8px;padding:6px 0;font-size:14px;display:flex}.op-cabecera-seccion{justify-content:space-between;align-items:center;gap:8px;display:flex}.op-enviar-facturas{background:#eef9fc;border:1px solid #b9e3ec;border-radius:10px;padding:12px 14px}.op-pres-tarjeta{position:relative}.op-pres-tarjeta .op-pres-fila{padding-right:48px}.op-pres-mas{z-index:1;position:absolute;top:18px;right:10px}.op-fotos{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.op-foto{background:#fff;border:1px solid #ebeaee;border-radius:10px;flex-direction:column;gap:6px;padding:6px;display:flex}.op-foto img,.op-foto .op-foto-vacia{aspect-ratio:4/3}.op-foto-pie{box-sizing:border-box;width:100%;font:inherit;resize:vertical;border:1px solid #d9d7de;border-radius:6px;padding:6px 8px;font-size:14px;line-height:1.3}.op-foto-botones{flex-wrap:wrap;justify-content:space-between;gap:6px;display:flex}.op-foto-ia{font:inherit;cursor:pointer;background:#fff;border:1px solid #d9d7de;border-radius:999px;padding:4px 8px;font-size:12px}.op-foto .op-foto-borrar{position:static}.op-dia-cab{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.op-dia-cab .op-dia{margin-bottom:0}.op-ruta{border:1px solid var(--color-magenta);background:var(--color-bg);color:var(--color-magenta);font:600 13.5px/1.3 var(--font-body);cursor:pointer;border-radius:999px;padding:6px 12px}.op-avisos{border:1px solid var(--color-magenta);background:#fff5fa;border-radius:12px;margin:0 0 14px;padding:14px 16px}.op-avisos-titulo{margin:0 0 6px;font-weight:600}.op-avisos-texto{margin:0 0 10px;font-size:14px;line-height:1.45}.op-avisos-boton{background:var(--color-magenta);color:#fff;width:100%;font:600 15px/1.2 var(--font-body);cursor:pointer;border:none;border-radius:8px;padding:12px}.op-avisos-boton:disabled{opacity:.6}.op-avisos-linea{color:var(--color-text-muted);margin:0 0 12px;font-size:13px}.op-avisos-mensaje{color:var(--color-text-muted);margin:8px 0 0;font-size:13px}.panel-volver-expediente{font:15px/1.4 var(--font-body);color:var(--color-magenta);cursor:pointer;background:0 0;border:none;margin:0 0 14px;padding:0;display:inline-block}.panel-volver-expediente:hover{text-decoration:underline}.inicio-sin-acceso{background:var(--color-bg-subtle);justify-content:center;align-items:center;min-height:100svh;padding:16px;display:flex}.inicio-sin-acceso-caja{background:var(--color-bg);border:1px solid var(--color-border);text-align:center;border-radius:12px;width:100%;max-width:420px;padding:28px 24px}.inicio-sin-acceso-caja h1{margin-bottom:12px;font-size:26px}.inicio-sin-acceso-caja p{color:var(--color-text);margin:0 0 12px}.inicio-sin-acceso-email{font-size:14px;color:var(--color-text-muted)!important}.inicio-sin-acceso-caja button{border:1px solid var(--color-magenta);background:var(--color-bg);color:var(--color-magenta);cursor:pointer;border-radius:8px;margin-top:8px;padding:10px 18px;font-size:15px}.aprob-page{background:#f6f5f7;flex-direction:column;min-height:100svh;display:flex}.aprob-header{background:#fff;border-bottom:1px solid #e4e3e8;align-items:center;gap:16px;padding:18px 24px;display:flex}.aprob-logo{width:auto;height:40px}.aprob-header h1{margin:0;font-size:20px}.aprob-header p{color:#6e6e6e;margin:2px 0 0;font-size:12px}.aprob-main{flex:1;justify-content:center;padding:28px 16px 56px;display:flex}.aprob-tarjeta{background:#fff;border:1px solid #e4e3e8;border-radius:10px;flex-direction:column;gap:20px;width:min(680px,100%);padding:22px;display:flex}.aprob-estado{color:#6e6e6e}.aprob-cabecera-doc{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.aprob-etiqueta{letter-spacing:.12em;text-transform:uppercase;color:#6e6e6e;font-size:11px}.aprob-numero{color:#002cc0;letter-spacing:.02em;margin:2px 0 0;font-size:26px;font-weight:700}.aprob-cabecera-derecha p{color:#6e6e6e;text-align:right;margin:0;font-size:12px}.aprob-datos{grid-template-columns:auto 1fr;gap:6px 16px;margin:0;font-size:14px;display:grid}.aprob-datos dt{color:#6e6e6e;white-space:nowrap}.aprob-datos dd{margin:0}.aprob-importes{border:1px solid #e4e3e8;border-radius:8px;overflow:hidden}.aprob-importe-fila{justify-content:space-between;padding:9px 14px;font-size:14px;display:flex}.aprob-importe-fila+.aprob-importe-fila{border-top:1px solid #f0eff2}.aprob-importe-total{color:#fff;background:#fb0793;justify-content:space-between;padding:12px 14px;font-size:17px;font-weight:700;display:flex}.aprob-descarga{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.aprob-boton-pdf{color:#fff;text-align:center;background:#002cc0;border-radius:8px;width:100%;padding:15px 18px;font-size:16px;font-weight:600;text-decoration:none;display:block}.aprob-boton-pdf:hover{background:#0022a0}.aprob-nota{color:#6e6e6e;margin:0;font-size:13px;line-height:1.5}.aprob-error{color:#7a1414;background:#fdecec;border-left:3px solid #d92020;border-radius:6px;margin:0;padding:12px 14px;font-size:14px;line-height:1.5}.aprob-respuesta{border-top:1px solid #e4e3e8;flex-direction:column;gap:10px;padding-top:18px;display:flex}.aprob-respuesta h2{margin:0;font-size:16px}.aprob-botones{flex-wrap:wrap;gap:10px;display:flex}.aprob-boton-aprobar,.aprob-boton-rechazar{cursor:pointer;border:1px solid;border-radius:8px;flex:180px;padding:12px 16px;font-size:15px}.aprob-boton-aprobar{color:#fff;background:#35bb02;border-color:#35bb02}.aprob-boton-rechazar{color:#d92020;background:#fff;border-color:#d92020}.aprob-boton-aprobar:disabled,.aprob-boton-rechazar:disabled{opacity:.6;cursor:default}.aprob-form{background:#f9f9fa;border-radius:8px;flex-direction:column;gap:12px;padding:16px;display:flex}.aprob-form-titulo{margin:0;font-weight:700}.aprob-form label{color:#4a4a4a;flex-direction:column;gap:4px;font-size:13px;display:flex}.aprob-form input,.aprob-form textarea{font:inherit;border:1px solid #d7d6db;border-radius:6px;padding:9px 11px;font-size:15px}.aprob-form-acciones{justify-content:flex-end;gap:10px;display:flex}.aprob-form-acciones button[type=button]{cursor:pointer;background:#fff;border:1px solid #d7d6db;border-radius:8px;padding:12px 16px;font-size:15px}.aprob-resultado{border-radius:8px;padding:16px;font-size:14px;line-height:1.5}.aprob-resultado p{margin:0 0 6px}.aprob-resultado-titulo{font-size:16px;font-weight:700}.aprob-resultado-aprobado{background:#f2fbf4;border-left:3px solid #35bb02}.aprob-resultado-rechazado{background:#fdecec;border-left:3px solid #d92020}.aprob-resultado-comentario{color:#4a4a4a;font-style:italic}.aprob-aceptar{border-top:1px solid #e4e3e8;flex-direction:column;gap:14px;padding-top:20px;display:flex}.aprob-aceptar h2{font-size:18px}.aprob-boton-aceptar{color:#fff;width:100%;font:600 17px/1.3 var(--font-body,inherit);cursor:pointer;background:#fb0793;border:none;border-radius:8px;padding:16px 18px;display:block}.aprob-boton-aceptar:hover{background:#d90680}.aprob-boton-aceptar:disabled{opacity:.6;cursor:default}.aprob-form-codigo{flex-direction:column;gap:14px;display:flex}.aprob-campo-codigo,.aprob-campo-nombre{color:#4a4a4a;flex-direction:column;gap:6px;font-size:13px;display:flex}.aprob-campo-nombre input{font:inherit;border:1px solid #d7d6db;border-radius:8px;padding:12px 14px;font-size:16px}.aprob-input-codigo{font:700 30px/1.2 var(--font-body,inherit);letter-spacing:.35em;text-align:center;color:#1a1a1a;background:#f6fdfd;border:2px solid #00bbc1;border-radius:10px;padding:14px 10px}.aprob-input-codigo:focus{outline-offset:1px;outline:2px solid #00bbc1}.aprob-enlace-secundario{color:#00838a;cursor:pointer;background:0 0;border:none;align-self:center;padding:10px 12px;font-size:14px;text-decoration:underline}.aprob-enlace-secundario:disabled{opacity:.6;cursor:default}.aprob-aceptacion-ok{color:#1a5c1a;background:#f2fbf4;border-left:3px solid #35bb02;border-radius:8px;margin:0;padding:16px;font-size:15px;font-weight:600;line-height:1.5}.aprob-footer{text-align:center;color:#9a99a0;padding:18px 24px 28px;font-size:11px}.aprob-derrama{border:1px solid #d7d6db;border-radius:10px;flex-direction:column;gap:10px;margin:0;padding:14px;display:flex}.aprob-derrama legend{font:600 15px/1.3 var(--font-body,inherit);color:#1a1a1a;padding:0 6px}.aprob-derrama .aprob-nota{margin:0}.aprob-opcion{cursor:pointer;background:#fff;border:1px solid #d7d6db;border-radius:8px;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.aprob-opcion:hover{border-color:#00bbc1}.aprob-opcion input{accent-color:#fb0793;flex:none;width:18px;height:18px;margin-top:2px}.aprob-opcion strong{color:#1a1a1a;font-size:15px;display:block}.aprob-opcion em{color:#4a4a4a;margin-top:2px;font-size:13px;font-style:normal;display:block}.aprob-opcion-activa{background:#fff5fb;border-color:#fb0793}.aprob-campo-fecha input{max-width:220px}.incidencia-page{background:var(--color-bg-subtle);min-height:100svh}.incidencia-header{background:var(--color-bg);border-bottom:1px solid var(--color-border);align-items:center;gap:16px;padding:20px 24px;display:flex}.incidencia-logo{width:auto;height:40px;display:block}.incidencia-header h1{font-size:22px}.incidencia-main{justify-content:center;padding:32px 20px 64px;display:flex}.incidencia-form,.incidencia-confirmation{background:var(--color-bg);border:1px solid var(--color-border);border-radius:10px;width:100%;max-width:720px;padding:28px 28px 36px}.incidencia-confirmation{text-align:center}.incidencia-confirmation h2{color:var(--color-magenta);margin-bottom:12px;font-size:22px}.incidencia-confirmation p{color:var(--color-text);margin:0;font-size:16px}.incidencia-form-section{margin-bottom:28px}.incidencia-form-section:last-of-type{margin-bottom:0}.incidencia-form-section-title{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.4px;color:var(--color-magenta);border-bottom:1px solid var(--color-border);margin:0 0 14px;padding-bottom:8px;font-size:15px;font-weight:400}.incidencia-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.incidencia-form-field{color:var(--color-text-muted);flex-direction:column;gap:6px;font-size:14px;display:flex}.incidencia-form-field-full{grid-column:1/-1}.incidencia-input{font:15px/1.4 var(--font-body);color:#1a1a1a;border:1px solid var(--color-border);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fff;border-radius:6px;width:100%;padding:10px 12px}textarea.incidencia-input{resize:vertical;font-family:var(--font-body)}.incidencia-input:focus{outline:2px solid var(--color-cyan);outline-offset:1px}.incidencia-group-label{color:var(--color-text);font-size:14px;font-weight:600}.incidencia-group-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.incidencia-form-error{color:var(--color-magenta);margin:0 0 16px;font-size:14px}.incidencia-form-submit{background:var(--color-magenta);color:#fff;cursor:pointer;border:none;border-radius:6px;margin-top:32px;padding:12px 24px;font-size:15px;display:block}.incidencia-form-submit:disabled{opacity:.6;cursor:not-allowed}@media (width<=640px){.incidencia-form-grid,.incidencia-group-fields{grid-template-columns:1fr}}.incidencia-quien{flex-wrap:wrap;gap:12px;display:flex}.incidencia-quien-chip{color:#1a1a1a;cursor:pointer;background:#fff;border:2px solid #dddce1;border-radius:10px;flex:200px;padding:14px 18px;font-family:inherit;font-size:15px;font-weight:600;transition:border-color .15s,background .15s}.incidencia-quien-chip:hover{border-color:#00bbc1}.incidencia-quien-chip-selected{color:#fb0793;background:#fff0f8;border-color:#fb0793}.incidencia-desplegar{color:#00bbc1;cursor:pointer;text-align:left;background:0 0;border:none;align-self:flex-start;padding:10px 0;font-family:inherit;font-size:14px;font-weight:600}.incidencia-desplegar:hover{text-decoration:underline}.incidencia-check{cursor:pointer;align-items:center;gap:8px;margin-top:8px;font-size:13px;display:flex}.incidencia-check input[type=checkbox]{accent-color:#fb0793;cursor:pointer;width:16px;height:16px}.incidencia-input-codigo{letter-spacing:4px;text-transform:uppercase;text-align:center;max-width:220px;font-family:Fjalla One,system-ui,sans-serif;font-size:22px}.incidencia-codigo-estado{color:#6e6e6e;margin:10px 0 0;font-size:14px}.incidencia-codigo-mail{color:#002cc0;word-break:break-all;font-weight:600;text-decoration:underline}.incidencia-codigo-ok{color:#00bbc1;font-weight:700}.incidencia-codigo-mal{color:#fb0793;font-weight:700}
