#rcMaterialesModal[hidden],#rcMaterialesModal [hidden]{display:none!important}#rcMaterialesModal{position:fixed!important;inset:auto 0!important;top:var(--mat-top,0px) !important;height:var(--mat-height,100dvh) !important;z-index:2147483300!important;display:flex!important;justify-content:center;align-items:center;background:#162a46a6;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom));box-sizing:border-box;color:#17324d!important}#rcMaterialesModal *{box-sizing:border-box}#rcMaterialesModal .mat-dialog{display:flex;flex-direction:column;width:min(1120px,100%);max-height:100%;min-height:0;background:#f5f8fc;border-radius:20px;overflow:hidden;box-shadow:0 22px 75px #0005}#rcMaterialesModal .mat-head{display:flex;align-items:center;gap:16px;background:#12385c;padding:16px 20px;color:white;flex-shrink:0}#rcMaterialesModal .mat-head h2{margin:0;color:white!important;font-size:22px}#rcMaterialesModal .mat-head small{display:block;color:#dfecfa;margin-top:4px}#rcMaterialesModal .mat-body{overflow:auto;min-height:0;padding:20px;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch}#rcMaterialesModal button{min-height:44px;padding:10px 16px;border-radius:10px;background:#087c78;color:#fff;border:1px solid transparent;cursor:pointer;font-size:15px;white-space:normal}#rcMaterialesModal button.secondary{background:#e8eff7;color:#17324d;border-color:#c7d6e5}#rcMaterialesModal button:disabled{opacity:.55;cursor:default}#rcMaterialesModal button:focus-visible,#rcMaterialesModal input:focus-visible,#rcMaterialesModal select:focus-visible{outline:3px solid #e4a11d;outline-offset:2px}#rcMaterialesModal .mat-tabs{display:flex;gap:8px;flex-wrap:wrap}#rcMaterialesModal .mat-tabs button[aria-pressed=false]{background:#e8eff7;color:#17324d}#rcMaterialesModal .mat-help{line-height:1.5;color:#4b6077}#rcMaterialesModal label{display:grid;gap:6px;color:#17324d;font-size:14px;font-weight:700}#rcMaterialesModal input,#rcMaterialesModal select{width:100%;max-width:100%;min-width:0;padding:12px;border:1px solid #b6c9dd;border-radius:9px;background:white;color:#17324d;font-size:16px;min-height:46px}#rcMaterialesModal .mat-filtros{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:12px;align-items:end}#rcMaterialesModal .mat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}#rcMaterialesModal .mat-card{padding:17px;border:1px solid #d6e2ef;border-radius:13px;background:white;display:flex;flex-direction:column;gap:8px}#rcMaterialesModal .mat-card h3{font-size:16px;margin:0;overflow-wrap:anywhere;line-height:1.4;color:#17324d!important}#rcMaterialesModal .mat-card small{display:block;color:#58708a;font-size:12px}#rcMaterialesModal .mat-card strong{font-size:21px;color:#07665f}#rcMaterialesModal .mat-card strong small{display:inline;font-weight:500}#rcMaterialesModal .mat-card p{margin:0;font-weight:700}#rcMaterialesModal .mat-card button{margin-top:auto}#rcMaterialesModal .mat-list-head,#rcMaterialesModal .mat-paginas{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:16px 0}#rcMaterialesModal .mat-totales{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}#rcMaterialesModal .mat-totales article{background:#e7f4f1;border:1px solid #bbdcd5;border-radius:12px;padding:16px}#rcMaterialesModal .mat-totales small,#rcMaterialesModal .mat-line small{display:block;color:#516780;margin:4px 0}#rcMaterialesModal .mat-totales strong{font-size:24px;color:#08685c}#rcMaterialesModal .mat-line{display:grid;grid-template-columns:1fr auto;gap:12px;padding:16px;margin-top:12px;border:1px solid #d6e2ef;background:white;border-radius:12px}#rcMaterialesModal .mat-line>strong{font-size:20px}#rcMaterialesModal .mat-actions{display:flex;gap:10px;flex-wrap:wrap}#rcMaterialesModal #matFormulario{background:#fff;padding:20px;border:2px solid #298f85;border-radius:14px;margin:16px 0;scroll-margin-top:16px}#rcMaterialesModal .mat-campos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#rcMaterialesModal .mat-wide{grid-column:1/-1}#rcMaterialesModal #matError{padding:12px;border-radius:9px;background:#fff0ef;color:#a92e23;font-weight:700}#rcMaterialesModal #matEstado{color:#08685c;font-weight:700}#rcMaterialesModal #matObras{margin:16px 0;padding:16px;border-radius:12px;background:#e8eff7}#presCostesAbrir{margin:10px 0}@media(max-width:850px){#rcMaterialesModal .mat-filtros{grid-template-columns:1fr 1fr}#rcMaterialesModal .mat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){#rcMaterialesModal{padding:0!important}#rcMaterialesModal .mat-dialog{height:100%;border-radius:0}#rcMaterialesModal .mat-head{padding:12px;gap:10px}#rcMaterialesModal .mat-head h2{font-size:18px}#rcMaterialesModal .mat-body{padding:12px 12px 24px}#rcMaterialesModal .mat-filtros,#rcMaterialesModal .mat-grid,#rcMaterialesModal .mat-campos{grid-template-columns:1fr}#rcMaterialesModal .mat-wide{grid-column:auto}#rcMaterialesModal .mat-totales{grid-template-columns:1fr}#rcMaterialesModal .mat-line{grid-template-columns:1fr}#rcMaterialesModal .mat-actions button{flex:1}#rcMaterialesModal .mat-list-head{align-items:flex-start;flex-direction:column}#rcMaterialesModal .mat-tabs button{flex:1}#rcMaterialesModal #matFormulario{padding:14px}}@media print{#rcMaterialesModal{display:none!important}}#rcMaterialesModal #matVolver{width:auto!important;flex:0 0 auto}#rcMaterialesModal .mat-head>div{min-width:0}#rcMaterialesModal .mat-head small{overflow-wrap:anywhere}#panelGestionRC126 #gestionCostes{background:#e7f4f1!important;color:#17324d!important;border:1px solid #bbdcd5!important}#panelGestionRC126 #gestionCostes strong{color:#17324d!important}#panelGestionRC126 #gestionCostes small{color:#456477!important}/* R448: biblioteca clara, compacta y adaptable. */#rcMaterialesModal{background:#0b1c36b8;backdrop-filter:blur(5px)}#rcMaterialesModal .mat-dialog{background:#f3f6fa;border:1px solid #ffffff8c;border-radius:24px;box-shadow:0 30px 90px #071c3966}#rcMaterialesModal .mat-head{padding:22px 26px;background:linear-gradient(115deg,#0f233e,#184969);gap:20px}#rcMaterialesModal .mat-head h2{font-size:25px;font-weight:800;letter-spacing:-.5px}#rcMaterialesModal .mat-head small{font-size:13px;line-height:1.5;color:#cee3f1}#rcMaterialesModal #matVolver{background:#ffffff16!important;color:#fff!important;border-color:#ffffff40!important;box-shadow:none}#rcMaterialesModal .mat-body{padding:24px}#rcMaterialesModal .mat-tabs{display:grid;grid-template-columns:1fr 1fr;padding:5px;background:#e2e9f1;border:1px solid #d6e0ec;border-radius:14px;gap:5px}#rcMaterialesModal .mat-tabs button{width:100%!important;min-height:48px;border-radius:10px;background:transparent!important;color:#52677f!important;border:0!important;box-shadow:none!important;font-weight:750}#rcMaterialesModal .mat-tabs button[aria-pressed=true]{background:#fff!important;color:#0f6170!important;box-shadow:0 2px 7px #213f5918!important}#rcMaterialesModal .mat-help{font-size:13px;line-height:1.6;margin:18px 2px;color:#5a6c82}#rcMaterialesModal .mat-filtros{background:white;padding:18px;border:1px solid #dce5ef;border-radius:16px;box-shadow:0 4px 16px #12314f05;grid-template-columns:2fr 1fr 1fr auto;gap:14px}#rcMaterialesModal label{font-size:12px;letter-spacing:.15px;color:#425a73;font-weight:750;gap:8px}#rcMaterialesModal input,#rcMaterialesModal select{border:1px solid #cfdbe8;background:#f8fafc;border-radius:10px;min-height:48px;color:#17324d;box-shadow:none!important}#rcMaterialesModal input:focus,#rcMaterialesModal select:focus{background:#fff;border-color:#087c78}#rcMaterialesModal button{font-weight:750;box-shadow:none!important}#rcMaterialesModal .mat-list-head{margin:22px 0 16px;align-items:center;flex-wrap:wrap}#rcMaterialesModal #matCuenta{font-size:14px;color:#405b76;white-space:nowrap;background:#e6edf5;border-radius:30px;padding:9px 14px}#rcMaterialesModal #matPropio{width:auto!important;margin-left:auto;background:#123b5c;min-height:44px;padding:10px 18px}#rcMaterialesModal .mat-grid{gap:16px;align-items:stretch}#rcMaterialesModal .mat-card{padding:20px;gap:12px;border:1px solid #dce5ef;border-radius:18px;box-shadow:0 5px 16px #12314f06;position:relative}#rcMaterialesModal .mat-card>small:first-child{align-self:flex-start;background:#eaf2f8;color:#42647e;padding:5px 9px;border-radius:7px;font-size:11px;font-weight:750;line-height:1.4}#rcMaterialesModal .mat-card h3{font-size:16px;font-weight:750;line-height:1.45;letter-spacing:-.15px}#rcMaterialesModal .mat-card p{font-size:13px;font-weight:500;color:#526b82;line-height:1.45;padding-bottom:10px;border-bottom:1px solid #edf1f6}#rcMaterialesModal .mat-card strong{font-size:27px;letter-spacing:-.6px;color:#08736b;font-weight:800}#rcMaterialesModal .mat-card strong small{font-size:11px;color:#486b73;letter-spacing:0;margin-left:4px}#rcMaterialesModal .mat-card>small{font-size:11px;color:#657c91;line-height:1.5}#rcMaterialesModal .mat-card button{background:#edf7f5;color:#076e65;border:1px solid #c8e4de;border-radius:10px;min-height:44px;margin-top:auto}#rcMaterialesModal .mat-card button:hover{background:#dcefe9}#rcMaterialesModal .mat-paginas{padding:16px 0 0;border-top:1px solid #dce5ef;font-size:13px;color:#506880}#rcMaterialesModal .mat-paginas button{width:auto!important;min-width:100px}#rcMaterialesModal .mat-totales article{background:#fff;border:1px solid #d8e5e3;border-radius:16px;padding:20px;box-shadow:0 4px 14px #12314f05}#rcMaterialesModal .mat-totales article:last-child{background:#e8f5f0;border-color:#bddcd1}#rcMaterialesModal .mat-totales strong{font-size:29px;letter-spacing:-.5px}#rcMaterialesModal .mat-line{border-radius:16px;padding:20px;box-shadow:0 4px 12px #12314f05}#rcMaterialesModal .mat-line .mat-actions{grid-column:1/-1;justify-content:flex-end;padding-top:8px;border-top:1px solid #edf1f6}#rcMaterialesModal .mat-actions button{width:auto!important;min-width:100px}#rcMaterialesModal #matFormulario{border:1px solid #a8cec5;border-top:4px solid #087c78;border-radius:16px;padding:22px;box-shadow:0 8px 24px #12314f0a}#rcMaterialesModal #matFormTitulo{margin:0 0 20px;font-size:20px;color:#17324d}#rcMaterialesModal #matFormato{color:#526b82;font-size:13px;line-height:1.5}#rcMaterialesModal #matPreview{display:block;background:#eaf5f1;border-radius:10px;padding:14px;color:#086c61;font-size:16px;line-height:1.5}#rcMaterialesModal #matEstado{font-size:13px;line-height:1.5}@media(max-width:1000px){#rcMaterialesModal .mat-filtros{grid-template-columns:1fr 1fr}#rcMaterialesModal .mat-filtros>label:first-child{grid-column:1/-1}#rcMaterialesModal #matLimpiar{width:auto!important;justify-self:end;grid-column:1/-1}#rcMaterialesModal .mat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){#rcMaterialesModal .mat-dialog{border-radius:0;border:0}#rcMaterialesModal .mat-head{padding:16px 12px;gap:12px}#rcMaterialesModal .mat-head h2{font-size:19px}#rcMaterialesModal .mat-head small{font-size:11px}#rcMaterialesModal .mat-body{padding:16px 12px 24px}#rcMaterialesModal .mat-tabs button{font-size:12px;padding:9px;line-height:1.4}#rcMaterialesModal .mat-filtros{padding:14px;gap:12px}#rcMaterialesModal .mat-filtros>label:nth-child(2),#rcMaterialesModal .mat-filtros>label:nth-child(3){min-width:0}#rcMaterialesModal .mat-grid{grid-template-columns:1fr}#rcMaterialesModal .mat-list-head{flex-direction:row;gap:8px}#rcMaterialesModal #matPropio{padding:10px 12px;font-size:13px}#rcMaterialesModal .mat-card{padding:18px}#rcMaterialesModal #matFormulario{padding:16px}#rcMaterialesModal .mat-actions button{flex:1;min-width:0}}/* R450: mediciones y capítulos. */#rcMaterialesModal #matCambiarObra{width:auto!important;margin-left:auto;flex:0 0 auto;background:#ffffff16;color:white;border-color:#ffffff40;font-size:12px}#rcMaterialesModal .mat-grupo{margin-top:24px}#rcMaterialesModal .mat-grupo>h3{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 16px;border-radius:12px;background:#e3edf4;color:#17324d;font-size:16px}#rcMaterialesModal .mat-grupo h3 span{white-space:nowrap;color:#08685c}#rcMaterialesModal .mat-grupo h3 small{font-size:10px;font-weight:500}#rcMaterialesModal .mat-calculadora{background:#f1f7fb;border:1px solid #c6dce9;border-radius:14px;padding:18px;margin:16px 0}#rcMaterialesModal .mat-calculadora h4{font-size:17px;margin:0 0 16px;color:#17324d}#rcMaterialesModal #matCalcResultado{background:#fff;padding:14px;border-radius:10px;line-height:1.6;font-weight:700;color:#08685c}#rcMaterialesModal #matAbrirCalculo{width:auto!important}#rcMaterialesModal .mat-medicion{padding:8px;background:#edf7f5;border-radius:8px}#rcMaterialesModal .mat-comparacion{display:grid;gap:8px;padding:16px;background:#eaf0f7;border-radius:12px;margin:18px 0}#rcMaterialesModal .mat-comparacion small{font-size:12px;line-height:1.5;color:#516780}#rcMaterialesModal #matResumenDocumento{margin:20px 0;padding:20px;border-radius:14px;background:#fff;border:1px solid #cfdae6}#rcMaterialesModal #matHojaResumen{padding:20px 0;color:#17324d}#rcMaterialesModal #matHojaResumen table{width:100%;border-collapse:collapse;font-size:12px}#rcMaterialesModal #matHojaResumen th,#rcMaterialesModal #matHojaResumen td{text-align:left;padding:10px 6px;border-bottom:1px solid #dce5ef;vertical-align:top;overflow-wrap:anywhere}#rcMaterialesModal #matHojaResumen td small{display:block;font-size:10px;color:#526b82;margin-top:5px}#rcMaterialesModal .mat-doc-total{margin-top:24px;padding:16px;background:#e8f5f0;line-height:1.8;text-align:right}@media(max-width:520px){#rcMaterialesModal .mat-head{flex-wrap:wrap}#rcMaterialesModal #matCambiarObra{min-height:36px;padding:6px 12px}#rcMaterialesModal .mat-head>div{flex:1}#rcMaterialesModal .mat-grupo>h3{font-size:14px;flex-wrap:wrap}#rcMaterialesModal .mat-calculadora{padding:12px}#rcMaterialesModal #matResumenDocumento{padding:10px;overflow:auto}}@media print{body.mat-imprimiendo>*:not(#rcMaterialesModal){display:none!important}body.mat-imprimiendo #rcMaterialesModal{display:block!important;position:static!important;height:auto!important;padding:0!important;background:white!important;backdrop-filter:none!important;overflow:visible!important}body.mat-imprimiendo #rcMaterialesModal .mat-dialog{display:block!important;width:100%!important;max-height:none!important;border:0!important;box-shadow:none!important;overflow:visible!important}body.mat-imprimiendo #rcMaterialesModal .mat-head,body.mat-imprimiendo #rcMaterialesModal .mat-body>*:not(#matResumenDocumento),body.mat-imprimiendo #matResumenDocumento>.mat-actions{display:none!important}body.mat-imprimiendo #rcMaterialesModal .mat-body{overflow:visible!important;padding:0!important}body.mat-imprimiendo #matResumenDocumento{border:0!important;padding:0!important}body.mat-imprimiendo #matHojaResumen tr{break-inside:avoid}body.mat-imprimiendo #matHojaResumen thead{display:table-header-group}body.mat-imprimiendo #matHojaResumen h3{break-after:avoid}body.mat-imprimiendo .mat-doc-total{break-inside:avoid}@page{size:A4;margin:15mm}}/* R451: el resumen ocupa una vista propia, sin formularios debajo. */#rcMaterialesModal.mat-modo-resumen .mat-body>*:not(#matResumenDocumento):not(#matError):not(#matEstado){display:none!important}#rcMaterialesModal.mat-modo-resumen #matCambiarObra{display:none!important}#rcMaterialesModal.mat-modo-resumen #matResumenDocumento{margin:0;padding:20px}#rcMaterialesModal.mat-modo-resumen .mat-actions{position:sticky;top:-24px;background:#fff;padding:12px 0;border-bottom:1px solid #e3ebf3;z-index:2}#rcMaterialesModal.mat-modo-resumen #matHojaResumen{padding-bottom:12px}#rcVisorPresupuesto{z-index:2147483500!important}#rcMaterialesModal .mat-desglose{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}#rcMaterialesModal .mat-desglose article{padding:14px;background:white;border:1px solid #cfe2df;border-radius:10px}#rcMaterialesModal .mat-desglose small{display:block;font-size:11px;line-height:1.5;color:#516780}#rcMaterialesModal .mat-desglose strong{display:block;font-size:19px;color:#08685c;margin-top:5px}#rcMaterialesModal .mat-desglose article:last-child{background:#e2f3ed}@media(max-width:520px){#rcMaterialesModal .mat-desglose{grid-template-columns:1fr}}/* R490: acceso al catálogo completo, paginado para conservar fluidez. */#rcMaterialesModal .mat-filtros-acciones{display:flex;gap:10px;flex-wrap:wrap;grid-column:1/-1;justify-content:flex-end}#rcMaterialesModal .mat-filtros-acciones #matLimpiar{grid-column:auto;justify-self:auto}@media(max-width:520px){#rcMaterialesModal .mat-filtros-acciones button{flex:1;min-width:0}}