@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_246ccd{font-family:Geist,Geist Fallback;font-style:normal}.__variable_246ccd{--font-geist-sans:"Geist","Geist Fallback"}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/013b72fa676f92e0-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b9408752a0c24fb9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/65f03d54ccadf4a8-s.woff2) format("woff2");unicode-range:u+2000-2001,u+2004-2008,u+200a,u+23b8-23bd,u+2500-259f}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e038a29029a234f2-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/2b5b02fc7e511755-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7d4881bb7e1bf84d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Mono Fallback;src:local("Arial");ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.00%;size-adjust:134.59%}.__className_c29908{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.__variable_c29908{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}:root{--bg:#0f1419;--bg-elevated:#1a222c;--surface:#243040;--border:rgba(255,255,255,0.08);--text:#f0f4f8;--text-muted:#94a3b8;--accent:#f59e0b;--accent-hover:#fbbf24;--accent-muted:rgba(245,158,11,0.15);--radius:12px;--font-sans:var(--font-geist-sans),system-ui,sans-serif}html{height:100%}*{box-sizing:border-box;margin:0;padding:0}body{min-height:100%;font-family:var(--font-sans);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-header{border-bottom:1px solid var(--border);background:rgba(15,20,25,.85);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:50}.app-header__inner{max-width:95%;margin:0 auto;padding:1rem 0;display:flex;align-items:center;justify-content:space-between;gap:1rem}.app-logo{display:inline-flex;align-items:center;gap:.6rem;font-weight:700;font-size:1.15rem;letter-spacing:-.02em}.app-logo__mark{width:10px;height:28px;border-radius:3px;background:linear-gradient(180deg,var(--accent) 0,#d97706 100%);box-shadow:0 0 20px rgba(245,158,11,.35)}.app-nav{display:flex;align-items:center;gap:1.25rem;font-size:.9rem}.app-nav a{color:var(--text-muted);transition:color .15s}.app-nav a:hover{color:var(--text)}.app-nav__cta{padding:.45rem 1rem;border-radius:10px;background:var(--accent-muted);color:var(--accent)!important;border:1px solid rgba(245,158,11,.35);font-weight:600;cursor:pointer}.app-nav__cta:hover{background:rgba(245,158,11,.22);color:var(--accent-hover)!important}.app-nav__icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;padding:0;border-radius:10px;border:1px solid var(--border);background:transparent;color:var(--text-muted);cursor:pointer;transition:color .15s,border-color .15s,background .15s}.app-nav__icon-btn:hover{color:var(--text);border-color:rgba(245,158,11,.35);background:rgba(245,158,11,.08)}.form-success{color:#34d399;font-size:.875rem;margin:.5rem 0 0}.app-main{flex:1 1;width:100%;max-width:95%;margin:0 auto;padding:2.5rem 0 4rem}.app-footer{border-top:1px solid var(--border);padding:1.25rem .75rem;text-align:center;font-size:.8rem;color:var(--text-muted)}.hero{margin-bottom:2.5rem}.hero__eyebrow{display:inline-block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin-bottom:.75rem}.hero h1{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;letter-spacing:-.03em;line-height:1.15;margin-bottom:.75rem;max-width:32ch}.hero p{color:var(--text-muted);font-size:1.05rem;line-height:1.55;max-width:52ch}.grid-modules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}@media (max-width:920px){.grid-modules{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.grid-modules{grid-template-columns:1fr}}.module-card{display:flex;flex-direction:column;padding:1.35rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .15s,transform .15s;cursor:pointer}.module-card:hover{border-color:rgba(245,158,11,.25);transform:translateY(-2px)}.module-card:focus-visible{outline:none;border-color:rgba(245,158,11,.55);box-shadow:0 0 0 3px rgba(245,158,11,.15)}.module-card h2{font-size:1.05rem;font-weight:600;margin-bottom:.35rem;color:var(--text);text-transform:uppercase;letter-spacing:.04em}.module-card p{font-size:.875rem;color:var(--text-muted);line-height:1.45;flex:1 1;margin-bottom:0}.login-page{max-width:400px;margin:0 auto}.login-page h1{font-size:1.5rem;margin-bottom:.5rem}.login-page>p{color:var(--text-muted);font-size:.95rem;margin-bottom:1.75rem}.form-field{margin-bottom:1rem}.form-field>label{display:block;font-size:.8rem;font-weight:600;margin-bottom:.35rem;color:var(--text-muted)}.autocomplete-field .autocomplete-wrap>input,.form-field .input-stepper__field,.form-field>input:not([type=checkbox]):not([type=radio]),.form-field>select,.select-trigger{box-sizing:border-box;width:100%;min-height:2.75rem;height:2.75rem;padding:0 .85rem;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:1rem;line-height:1.25;font-family:inherit}.select-trigger{margin:0;text-align:left;display:inline-flex;align-items:center;justify-content:space-between;gap:.75rem;cursor:pointer}.select-trigger:disabled{opacity:.65;cursor:not-allowed}.select-trigger--compact{min-height:2.25rem;height:2.25rem;font-size:.9rem}.grid-2>.autocomplete-field,.grid-2>.form-field{min-width:0}.autocomplete-field .autocomplete-wrap>input:focus,.form-field .input-stepper__field:focus,.form-field>input:not([type=checkbox]):not([type=radio]):focus,.select-trigger:focus{outline:none;border-color:rgba(245,158,11,.5);box-shadow:0 0 0 3px rgba(245,158,11,.12)}.autocomplete-field .autocomplete-wrap>input:disabled,.form-field .input-stepper__field:disabled,.form-field>input:not([type=checkbox]):not([type=radio]):disabled{opacity:.65;cursor:not-allowed}.form-field>textarea{width:100%;padding:.65rem .85rem;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:1rem;font-family:inherit;line-height:1.45;resize:vertical;min-height:4.5rem}.form-field>select:focus,.form-field>textarea:focus{outline:none;border-color:rgba(245,158,11,.5);box-shadow:0 0 0 3px rgba(245,158,11,.12)}.form-field>select{appearance:none}.date-input{position:relative;width:100%}.date-input__trigger{width:100%}.date-input__value{color:var(--text)}.date-input__placeholder,.date-input__value{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-input__placeholder{color:var(--text-muted)}.date-input__popover{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:60;padding:.75rem;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);box-shadow:0 12px 40px rgba(0,0,0,.35)}.date-input__header{display:flex;align-items:center;justify-content:space-between;gap:.35rem;margin-bottom:.65rem}.date-input__nav-group{display:flex;align-items:center;gap:.2rem;flex-shrink:0}.date-input__month{flex:1 1;text-align:center;font-weight:600;font-size:.95rem;text-transform:capitalize;min-width:0}.date-input__nav{width:2rem;height:2rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-elevated);color:var(--text);cursor:pointer;font-size:1.1rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,border-color .15s ease,color .15s ease}.date-input__nav:hover{background:var(--accent-muted);border-color:rgba(245,158,11,.45);color:var(--accent)}.date-input__nav--year{font-size:.95rem;letter-spacing:-.05em}.date-input__weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:.15rem;margin-bottom:.35rem}.date-input__weekday{text-align:center;font-size:.75rem;font-weight:600;color:var(--text-muted);padding:.15rem 0}.date-input__grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.15rem}.date-input__day{min-height:2rem;border:none;border-radius:8px;background:transparent;color:var(--text);font-size:.9rem;cursor:pointer;transition:background .15s ease,color .15s ease}.date-input__day:hover:not(.date-input__day--empty){background:var(--accent-muted);color:var(--accent)}.date-input__day--today{border:1px solid rgba(245,158,11,.35)}.date-input__day--selected{background:rgba(245,158,11,.22);color:var(--accent);font-weight:700}.date-input__day--empty{cursor:default;pointer-events:none}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration,input[type=search]::-webkit-search-results-button,input[type=search]::-webkit-search-results-decoration{appearance:none;display:none}input[type=search]::-moz-search-clear-button{display:none}.input--sm-placeholder::placeholder{font-size:.85em}.btn-primary{width:100%;margin-top:.5rem;padding:.75rem 1rem;border:none;border-radius:8px;background:var(--accent);color:#0f1419;font-weight:700;font-size:.95rem;cursor:pointer;transition:background .15s}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.form-error{margin-top:.75rem;padding:.65rem;border-radius:8px;background:rgba(239,68,68,.12);color:#fca5a5;font-size:.85rem}.form-hint{margin-top:1.25rem;font-size:.85rem;color:var(--text-muted)}.presupuesto-layout{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:1.25rem;align-items:start;margin-top:1.25rem}@media (max-width:960px){.presupuesto-layout{grid-template-columns:1fr}}.presupuesto-panel{position:sticky;top:1rem}.presupuesto-panel__tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.panel-tabs{display:flex;gap:0;border-bottom:1px solid var(--border);margin-bottom:1rem}.panel-tabs__tab{flex:1 1;min-width:0;padding:.6rem .75rem;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;background:transparent;color:var(--text-muted);font-family:inherit;font-size:.88rem;font-weight:500;line-height:1.25;text-align:center;cursor:pointer;transition:color .15s ease,border-color .15s ease,background .15s ease}.panel-tabs__tab:hover:not(:disabled):not(.panel-tabs__tab--active){color:var(--text);background:rgba(255,255,255,.03)}.panel-tabs__tab--active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.panel-tabs__tab:disabled{opacity:.45;cursor:not-allowed}.panel-segments{display:flex;flex-wrap:wrap;gap:.2rem;padding:.22rem;margin-bottom:.85rem;border:1px solid var(--border);border-radius:10px;background:rgba(0,0,0,.18)}.panel-segments__tab{flex:1 1 auto;min-width:0;padding:.42rem .55rem;border:none;border-radius:7px;background:transparent;color:var(--text-muted);font-family:inherit;font-size:.8rem;font-weight:500;line-height:1.25;text-align:center;cursor:pointer;transition:color .15s ease,background .15s ease,box-shadow .15s ease}.panel-segments__tab:hover:not(:disabled):not(.panel-segments__tab--active){color:var(--text);background:rgba(255,255,255,.04)}.panel-segments__tab--active{background:var(--surface);color:var(--text);font-weight:600;box-shadow:0 1px 3px rgba(0,0,0,.22)}.panel-segments__tab--disabled,.panel-segments__tab:disabled{opacity:.45;cursor:not-allowed}.obra-modulos-nav{margin-top:.85rem;margin-bottom:.25rem}.obra-modulos-nav .panel-segments__tab{font-size:.88rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;padding:.52rem .7rem}.obra-modulos-nav a.panel-segments__tab{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.pago-plan{margin-top:.35rem;border:1px solid var(--border);border-radius:10px;background:rgba(0,0,0,.14);overflow:hidden}.pago-plan__title{font-size:.82rem;font-weight:600;margin:0 0 .35rem;color:var(--text)}.pago-plan__head,.pago-plan__row{display:grid;grid-template-columns:2.25rem minmax(9rem,1fr) minmax(7rem,1fr) 2.25rem;gap:.5rem;align-items:center;padding:.45rem .65rem}.pago-plan__head{font-size:.72rem;font-weight:600;letter-spacing:.01em;color:var(--text-muted);border-bottom:1px solid var(--border);background:rgba(0,0,0,.1)}.pago-plan__row+.pago-plan__row{border-top:1px solid rgba(255,255,255,.04)}.pago-plan__nro{display:flex;align-items:center;justify-content:center;min-height:2.25rem;font-size:.82rem;font-weight:600;color:var(--text-muted);border-radius:7px;background:rgba(255,255,255,.04)}.pago-plan__input{box-sizing:border-box;width:100%;min-height:2.25rem;height:2.25rem;padding:0 .65rem;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:.9rem;font-family:inherit;line-height:1.25}.pago-plan__input::placeholder{color:var(--text-muted);opacity:.75}.pago-plan__input:focus{outline:none;border-color:rgba(245,158,11,.5);box-shadow:0 0 0 3px rgba(245,158,11,.12)}.pago-plan__input:disabled{opacity:.65;cursor:not-allowed}.pago-plan__input--monto{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pago-plan__remove{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;margin:0;padding:0;border-radius:8px;border:1px solid var(--border);background:rgba(239,68,68,.08);color:#f87171;font-size:1.1rem;line-height:1;cursor:pointer;transition:background .15s ease,border-color .15s ease}.pago-plan__remove:hover:not(:disabled){background:rgba(239,68,68,.16);border-color:rgba(239,68,68,.35)}.pago-plan__remove:disabled{opacity:.35;cursor:not-allowed}.pago-plan__toolbar{display:flex;flex-wrap:wrap;gap:.65rem;align-items:flex-end;padding:.65rem;border-top:1px solid var(--border);background:rgba(0,0,0,.08)}.pago-plan__calc{display:flex;flex-direction:column;gap:.28rem;min-width:0}.pago-plan__calc label{font-size:.72rem;font-weight:600;color:var(--text-muted)}.pago-plan__calc .pago-plan__input{width:5.5rem}.pago-plan__calc--date .pago-plan__input{width:10.5rem}@media (max-width:560px){.pago-plan__head{display:none}.pago-plan__row{grid-template-columns:2.25rem 1fr 2.25rem;grid-template-areas:"nro fecha remove" "nro monto remove";row-gap:.35rem}.pago-plan__nro{grid-area:nro;align-self:stretch}.pago-plan__row .pago-plan__input[type=date]{grid-area:fecha}.pago-plan__row .pago-plan__input--monto{grid-area:monto}.pago-plan__remove{grid-area:remove;align-self:center}}.presupuesto-panel__fields{display:flex;flex-direction:column;gap:0}.presupuesto-panel__fields .autocomplete-field,.presupuesto-panel__fields .form-field{margin-bottom:.85rem}.presupuesto-header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.75rem 1.5rem;margin-top:.75rem}.presupuesto-header__aside{display:flex;flex-direction:column;align-items:flex-end;gap:.65rem}.presupuesto-header__tc.form-field{margin-bottom:0;display:flex;flex-direction:column;align-items:flex-end}.presupuesto-header__tc.form-field>label{text-align:right}.presupuesto-header__tc.form-field .input-stepper{width:9.5rem}.input-stepper{position:relative;display:inline-flex;width:100%}.input-stepper__field{width:100%;padding-right:2.15rem!important;text-align:right;appearance:textfield}.input-stepper__field::-webkit-inner-spin-button,.input-stepper__field::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input-stepper__controls{position:absolute;right:1px;top:1px;bottom:1px;width:1.75rem;display:flex;flex-direction:column;border-left:1px solid var(--border);border-radius:0 7px 7px 0;overflow:hidden}.input-stepper__btn{flex:1 1;display:flex;align-items:center;justify-content:center;border:none;background:var(--bg-elevated);color:var(--text-muted);padding:0;cursor:pointer;min-height:0;transition:background .15s ease,color .15s ease}.input-stepper__btn+.input-stepper__btn{border-top:1px solid var(--border)}.input-stepper__btn:hover:not(:disabled){background:var(--accent-muted);color:var(--accent)}.input-stepper__btn:active:not(:disabled){background:rgba(245,158,11,.25)}.input-stepper__btn:disabled{opacity:.45;cursor:not-allowed}.input-stepper__btn svg{pointer-events:none}.presupuesto-header__total{font-size:1.15rem;font-weight:700;color:var(--accent);text-align:right}.presupuesto-header__total-equiv{margin-top:.2rem;font-size:.85rem;font-weight:500;color:var(--text-muted)}.presupuesto-nodo{margin-bottom:.75rem}.presupuesto-nodo--nested{margin-left:1.25rem}.presupuesto-nodo>.presupuesto-nodo--nested{margin-top:1rem}.presupuesto-item-list+.presupuesto-nodo--nested{margin-top:1.1rem}.presupuesto-row{display:flex;align-items:stretch;gap:.35rem;border-radius:8px;border:1px solid var(--border);background:var(--surface);overflow:hidden}.presupuesto-row--selected{border-color:rgba(245,158,11,.55);background:rgba(245,158,11,.1)}.presupuesto-nodo--selected-context>.presupuesto-row{border-color:rgba(245,158,11,.35)}.presupuesto-row__main{flex:1 1;text-align:left;padding:.65rem .85rem;border:none;background:transparent;color:var(--text);cursor:pointer;font:inherit;min-width:0}.presupuesto-row__head{display:flex;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.presupuesto-row__total{color:var(--accent);font-weight:600;white-space:nowrap;text-align:right}.presupuesto-row__meta{font-size:.8rem;margin-top:.25rem}.presupuesto-list-actions{display:flex;align-items:center;justify-content:flex-end;gap:.25rem;flex:0 0 5.25rem;padding:.35rem .5rem .35rem 0;box-sizing:border-box}.presupuesto-item-list{margin:.5rem 0 .15rem;padding:0;list-style:none}.presupuesto-item-list>.presupuesto-item-row+.presupuesto-item-row{margin-top:.35rem}.presupuesto-item-row{display:flex;align-items:center;gap:.5rem;font-size:.9rem}.presupuesto-item-row--selected{background:rgba(245,158,11,.12);outline:1px solid rgba(245,158,11,.55);border-radius:6px;padding-right:.35rem}.presupuesto-item-row--selected .presupuesto-item-row__content{border-left-color:var(--accent)}.presupuesto-item-row__content{flex:1 1;min-width:0;border-left:2px solid var(--border);margin-left:.5rem;padding:.45rem .85rem}button.presupuesto-item-row__content{width:100%;text-align:left;background:none;border-top:none;border-right:none;border-bottom:none;cursor:pointer;color:inherit;font:inherit}.presupuesto-item-row__pct{flex-shrink:0;font-weight:600;color:var(--accent);padding-left:.5rem}.presupuesto-item-empty{font-size:.8rem;margin:.35rem 0 0 .85rem}.page-placeholder h1{font-size:1.35rem;margin-bottom:.5rem}.page-placeholder p{color:var(--text-muted);line-height:1.5}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.grid-2{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width:900px){.grid-2{grid-template-columns:360px 1fr;align-items:start}.grid-2.grid-2--balanced{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.grid-2.grid-2--create-collapsed{grid-template-columns:minmax(0,10rem) minmax(0,1fr);gap:.75rem}}.card--create-snug{padding:.55rem .65rem}.table{width:100%;border-collapse:collapse;font-size:.9rem}.table td,.table th{border-bottom:1px solid var(--border);padding:.7rem .6rem;text-align:left;vertical-align:top}.table th{color:var(--text-muted);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.btn-secondary{padding:.55rem .75rem;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text);cursor:pointer}.btn-secondary:hover{border-color:rgba(245,158,11,.25)}.btn-icon{padding:.45rem;width:34px;height:34px;justify-content:center}.btn-icon,.btn-with-icon{display:inline-flex;align-items:center}.btn-with-icon{gap:.35rem}.btn-with-icon svg{flex-shrink:0;pointer-events:none}.btn-primary.btn-with-icon,.btn-secondary.btn-with-icon{width:auto;margin-top:0}.lic-proveedor-edit{width:18px;height:18px;min-width:18px;padding:0;margin-top:.1rem;flex-shrink:0;border-radius:4px;border-color:transparent;background:transparent;color:var(--text-muted)}.lic-proveedor-edit:hover{color:var(--text);border-color:rgba(245,158,11,.25);background:rgba(245,158,11,.08)}.btn-danger{padding:.45rem .65rem;border-radius:8px;border:1px solid rgba(239,68,68,.6);background:rgba(239,68,68,.4);color:#ffffff;cursor:pointer}.btn-danger:hover{background:rgba(239,68,68,.18)}.muted{color:var(--text-muted)}.modal-overlay{position:fixed;inset:0;background:rgba(15,20,25,.7);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:100;overflow:auto}.modal{width:100%;max-width:720px;max-height:calc(100vh - 3rem);border-radius:var(--radius);border:1px solid var(--border);box-shadow:0 30px 80px rgba(0,0,0,.45);flex-direction:column}.modal,.modal__header{background:var(--bg-elevated);display:flex}.modal__header{justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:1}.modal__header h3{font-size:1rem}.modal__body{padding:1rem 1.25rem 1.25rem;overflow:auto;flex:1 1 auto;min-height:0}.modal__footer{padding:.85rem 1.25rem 1.15rem;border-top:1px solid var(--border);background:var(--bg-elevated);flex-shrink:0}.inversores-list{list-style:none;padding:0}.inversores-list__item--selected{border-color:var(--accent);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}.inversores-list__header{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;width:100%;padding:0;margin:0;border:none;background:transparent;color:inherit;text-align:left;font:inherit}.inversores-list__header--clickable{cursor:pointer}.inversores-list__header--clickable:hover{opacity:.92}.inversores-list__panel{margin-top:1rem;border-top:1px solid var(--border);padding-top:1rem}.modal--composition{width:100%;max-width:min(980px,calc(100vw - 2rem));max-height:min(92vh,920px);position:relative;overflow:visible}.modal--composition .modal__body--composition{overflow:visible;flex:1 1;min-height:0;display:flex;flex-direction:column;gap:.75rem}.modal--composition .composition-autocomplete-wrap{position:relative;z-index:30}.modal--composition .composition-autocomplete-panel{z-index:40;box-shadow:0 12px 40px rgba(0,0,0,.35)}.modal--composition .composition-modal__list{position:relative;z-index:0;overflow:auto;max-height:min(42vh,400px);border-radius:8px;border:1px solid var(--border)}.modal--composition .composition-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem 1rem;margin-bottom:1rem}.modal--composition .composition-toolbar__field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:0;min-width:0}.modal--composition .composition-toolbar__field--grow{flex:1 1 320px}.modal--composition .composition-toolbar__field--narrow{flex:0 0 auto}.modal--composition .composition-toolbar__label-spacer{display:block;font-size:.8rem;font-weight:600;margin-bottom:.35rem;min-height:1.15em;visibility:hidden;-webkit-user-select:none;user-select:none}.modal--composition .composition-toolbar__control{box-sizing:border-box;min-height:2.75rem;height:2.75rem;padding:0 .85rem;border-radius:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:1rem;line-height:1.25}.modal--composition .composition-toolbar__control:focus{outline:none;border-color:rgba(245,158,11,.5)}.modal--composition .composition-autocomplete-wrap>.composition-toolbar__control{width:100%}.modal--composition .composition-toolbar__row{display:flex;align-items:stretch;gap:.5rem}.modal--composition .composition-toolbar__row .composition-toolbar__control{width:7.5rem;flex-shrink:0}.modal--composition .composition-toolbar__chip-slot{box-sizing:border-box;width:3.75rem;min-height:2.75rem;height:2.75rem;flex-shrink:0;border-radius:999px;border:1px dashed transparent;visibility:hidden}.modal--composition .composition-toolbar__btn{box-sizing:border-box;min-height:2.75rem;height:2.75rem;padding:0 1rem}.chip,.modal--composition .composition-toolbar__btn{display:inline-flex;align-items:center;justify-content:center}.chip{gap:.4rem;padding:.25rem .55rem;border-radius:999px;border:1px solid var(--border);background:rgba(255,255,255,.03);color:#ffffff;font-size:.6rem;text-align:center}.chip input[type=checkbox]{appearance:none;-webkit-appearance:none;width:16px;height:16px;border-radius:4px;border:1px solid var(--border);background:var(--surface);display:inline-grid;place-content:center}.chip input[type=checkbox]:before{content:"";width:10px;height:10px;border-radius:2px;background:var(--accent);transform:scale(0);transition:transform .08s ease-in-out}.chip input[type=checkbox]:checked{border-color:rgba(245,158,11,.6)}.chip input[type=checkbox]:checked:before{transform:scale(1)}.chip input[type=checkbox]:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(245,158,11,.18)}.chip--material{border-color:rgba(34,211,238,.55);background:rgba(34,211,238,.36)}.chip--mano_obra,.chip--material{text-transform:uppercase;text-align:center;width:92px}.chip--mano_obra{border-color:rgba(168,85,247,.55);background:rgba(168,85,247,.39)}.chip--maquinaria{border-color:rgba(245,158,11,.6);background:rgba(245,158,11,.39);width:92px}.chip--maquinaria,.chip--subcontrato{text-transform:uppercase;text-align:center}.chip--subcontrato{border-color:rgba(96,165,250,.55);background:rgba(96,165,250,.32);min-width:92px;width:auto;padding:0 .35rem}.chip--compuesto{border-color:rgba(34,197,94,.55);background:rgba(34,197,94,.32);text-transform:uppercase;text-align:center;width:92px}.autocomplete-field .autocomplete-wrap{position:relative}.autocomplete-field .autocomplete-wrap>input::placeholder{color:var(--text-muted);opacity:.85}.autocomplete-field .autocomplete-wrap--filled>input{padding-right:2.5rem}.autocomplete-field .autocomplete-wrap--loading>input{padding-right:5.5rem}.autocomplete-clear{right:6px;width:28px;height:28px;min-width:28px;min-height:28px;padding:0;border-radius:6px}.autocomplete-clear,.autocomplete-loading{position:absolute;top:50%;transform:translateY(-50%)}.autocomplete-loading{right:38px;font-size:.8rem;pointer-events:none;white-space:nowrap}.autocomplete-panel{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:40;margin:0;padding:.35rem 0;list-style:none;max-height:min(40vh,280px);overflow-y:auto;border-radius:8px;border:1px solid var(--border);background:var(--surface);box-shadow:0 12px 40px rgba(0,0,0,.35)}.autocomplete-panel button{width:100%;text-align:left;padding:.5rem .85rem;border:none;background:transparent;color:var(--text);cursor:pointer;font:inherit}.autocomplete-panel button:hover{background:rgba(245,158,11,.12)}.ejecucion-gantt{margin-top:.25rem;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface)}.ejecucion-gantt__scroll{overflow:auto;max-height:min(70vh,640px)}.ejecucion-gantt__canvas{position:relative}.ejecucion-gantt__header{top:0;z-index:5;border-bottom:1px solid var(--border)}.ejecucion-gantt__header,.ejecucion-gantt__label-head{position:sticky;display:flex;background:var(--surface)}.ejecucion-gantt__label-head{left:0;z-index:6;flex-shrink:0;align-items:center;padding:0 .85rem;font-size:.78rem;font-weight:600;color:var(--text-muted);border-right:1px solid var(--border);box-shadow:4px 0 8px rgba(0,0,0,.06)}.ejecucion-gantt__timeline-head{position:relative;flex-shrink:0;height:100%}.ejecucion-gantt__tick{position:absolute;top:0;bottom:0;padding:.35rem .25rem;font-size:.68rem;color:var(--text-muted);border-left:1px solid var(--border);white-space:nowrap}.ejecucion-gantt__tick--major{font-weight:600;font-size:.72rem;color:var(--text)}.ejecucion-gantt__today{position:absolute;z-index:2;width:2px;background:rgba(239,68,68,.65);pointer-events:none}.ejecucion-gantt__deps{position:absolute;z-index:1;pointer-events:none}.ejecucion-gantt__row{position:absolute;left:0;right:0;display:flex;border-bottom:1px solid var(--border)}.ejecucion-gantt__row--pending{background:rgba(245,158,11,.04)}.ejecucion-gantt__row--selected{background:rgba(59,130,246,.12);outline:1px solid rgba(59,130,246,.5);outline-offset:-1px;z-index:2}.ejecucion-gantt__label{position:sticky;left:0;z-index:3;flex-shrink:0;padding:0 .65rem 0 0;border-right:1px solid var(--border);background:inherit;box-shadow:4px 0 8px rgba(0,0,0,.04)}.ejecucion-gantt__label,.ejecucion-gantt__label-main{display:flex;align-items:center;gap:.35rem;min-width:0;color:inherit}.ejecucion-gantt__label-main{flex:1 1;padding:0;border:none;background:transparent;font:inherit;text-align:left;cursor:pointer}.ejecucion-gantt__row--selected .ejecucion-gantt__label{box-shadow:4px 0 8px rgba(59,130,246,.18)}.ejecucion-gantt__label-text{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem}.ejecucion-gantt__label-pct{flex-shrink:0;font-size:.75rem;font-weight:600;color:var(--accent)}.ejecucion-gantt__flag{flex-shrink:0;font-size:.62rem;font-weight:700;padding:.1rem .3rem;border-radius:999px}.ejecucion-gantt__flag--nc{background:rgba(234,179,8,.15);color:#ca8a04}.ejecucion-gantt__flag--np{background:rgba(239,68,68,.12);color:#dc2626}.ejecucion-gantt__flag--sc{background:rgba(59,130,246,.12);color:#2563eb}.ejecucion-gantt__flag--si{background:rgba(16,185,129,.12);color:#059669}.ejecucion-gantt__track{position:relative;flex-shrink:0;height:100%}.ejecucion-gantt__grid{position:absolute;inset:0;background-image:repeating-linear-gradient(to right,transparent,transparent calc(22px - 1px),var(--border) calc(22px - 1px),var(--border) 22px);opacity:.35;pointer-events:none}.ejecucion-gantt__bar{position:absolute;top:50%;transform:translateY(-50%);height:22px;padding:0;border:1px solid rgba(245,158,11,.45);border-radius:4px;background:rgba(245,158,11,.15);cursor:pointer;overflow:hidden}.ejecucion-gantt__bar--item{height:16px;border-color:rgba(59,130,246,.45);background:rgba(59,130,246,.12)}.ejecucion-gantt__bar-fill{display:block;height:100%;background:var(--accent);opacity:.85;border-radius:3px 0 0 3px}.ejecucion-gantt__bar--item .ejecucion-gantt__bar-fill{background:#3b82f6}.ejecucion-gantt__bar-extra{position:absolute;right:2px;top:50%;transform:translateY(-50%);font-size:.6rem;font-weight:600;color:var(--text-muted);pointer-events:none}.ejecucion-gantt__bar:hover{filter:brightness(1.05)}.ejecucion-lista{display:flex;flex-direction:column;gap:.75rem}.ejecucion-lista .presupuesto-row--selected{border-color:rgba(59,130,246,.55);background:rgba(59,130,246,.12)}.ejecucion-lista .presupuesto-nodo--selected-context>.presupuesto-row{border-color:rgba(59,130,246,.35)}.ejecucion-lista .presupuesto-item-row--selected{background:rgba(59,130,246,.12);outline:1px solid rgba(59,130,246,.55)}.ejecucion-lista .presupuesto-item-row--selected .presupuesto-item-row__content{border-left-color:#3b82f6}.ejecucion-lista__row-actions{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:.35rem;flex-shrink:0;padding:.5rem .65rem .5rem 0}.ejecucion-lista__row-actions--item{padding-right:.35rem}.ejecucion-lista__nodo--no-contratado .presupuesto-row__main,.presupuesto-item-row--no-contratado .presupuesto-item-row__content{opacity:.72}.ejecucion-gantt__row--no-contratado .ejecucion-gantt__label-text,.presupuesto-item-row--no-contratado .presupuesto-item-row__content span:first-child{text-decoration:line-through;text-decoration-color:rgba(202,138,4,.65)}.ejecucion-gantt__row--no-contratado .ejecucion-gantt__label-text{opacity:.85;cursor:help}.ejecucion-lista__nodo--no-contratado .presupuesto-row__head>span:first-child,.presupuesto-item-row--no-contratado .presupuesto-item-row__content span:first-child{cursor:help}.ejecucion-gantt__bar--no-contratado{opacity:.55;border-style:dashed}.ejecucion-nc-toggle{flex-shrink:0;border:1px solid var(--border);border-radius:999px;padding:.12rem .45rem;font-size:.68rem;font-weight:700;background:var(--surface);color:var(--text-muted);cursor:pointer}.ejecucion-nc-toggle--on{border-color:rgba(202,138,4,.55);background:rgba(234,179,8,.15);color:#ca8a04}.ejecucion-nc-toggle:disabled{opacity:.5;cursor:not-allowed}.obra-dashboard{display:flex;flex-direction:column;gap:1.25rem;margin-top:1.35rem}.obra-dashboard__kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem}.obra-dashboard-kpi{padding:.85rem 1rem;border-radius:10px;border:1px solid var(--border);background:var(--surface)}.obra-dashboard-kpi--blue{border-color:rgba(59,130,246,.35);background:rgba(59,130,246,.06)}.obra-dashboard-kpi--green{border-color:rgba(34,197,94,.35);background:rgba(34,197,94,.06)}.obra-dashboard-kpi--amber{border-color:rgba(234,179,8,.4);background:rgba(234,179,8,.08)}.obra-dashboard-kpi__label{font-size:.78rem;color:var(--text-muted);margin-bottom:.25rem}.obra-dashboard-kpi__value{font-size:1.35rem;font-weight:700;line-height:1.2}.obra-dashboard-kpi__hint{font-size:.75rem;color:var(--text-muted);margin-top:.35rem;line-height:1.35}.obra-dashboard__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.obra-dashboard__panel{padding:1rem 1.15rem;border-radius:10px;border:1px solid var(--border);background:var(--surface)}.obra-dashboard__panel--wide{grid-column:1/-1}.obra-dashboard__panel-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:.75rem}.obra-dashboard__panel-title{margin:0;font-size:.95rem}.obra-dashboard__link{font-size:.82rem;color:var(--accent);text-decoration:none;white-space:nowrap}.obra-dashboard__link:hover{text-decoration:underline}.obra-dashboard__desvio{font-size:.85rem;margin:0 0 .75rem;color:var(--text-muted)}.obra-dashboard__footnote{font-size:.8rem;margin:.75rem 0 0}.obra-dashboard-tipo-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.65rem}.obra-dashboard-tipo-list__head{display:flex;justify-content:space-between;gap:.5rem;font-size:.88rem;margin-bottom:.3rem}.obra-dashboard-tipo-list__amount{font-weight:600;color:var(--accent);white-space:nowrap}.obra-dashboard-tipo-list__bar-track{height:6px;border-radius:999px;background:rgba(148,163,184,.2);overflow:hidden}.obra-dashboard-tipo-list__bar{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),rgba(59,130,246,.55));min-width:2px;transition:width .3s ease}.obra-evolucion-chart svg{width:100%;max-width:560px;min-height:180px;height:auto;display:block}.obra-evolucion-chart__grid{stroke:var(--border);stroke-width:1;stroke-dasharray:4 4}.obra-evolucion-chart__axis{fill:var(--text-muted);font-size:10px}.obra-evolucion-chart__line{stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.obra-evolucion-chart__line--fisico{stroke:#16a34a}.obra-evolucion-chart__line--economico{stroke:#d97706}.obra-evolucion-chart__legend{display:flex;gap:1rem;flex-wrap:wrap;margin-top:.5rem;font-size:.8rem;color:var(--text-muted)}.obra-evolucion-chart__legend span{display:inline-flex;align-items:center;gap:.35rem}.obra-evolucion-chart__dot{width:10px;height:10px;border-radius:999px;display:inline-block}.obra-evolucion-chart__dot--fisico{background:#16a34a}.obra-evolucion-chart__dot--economico{background:#d97706}.finanzas-dashboard{display:flex;flex-direction:column;gap:1.25rem}.finanzas-dashboard__cajas{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}.finanzas-caja{padding:.85rem 1rem;border-radius:10px;border:1px solid var(--border);display:flex;flex-direction:column;gap:.35rem}.finanzas-caja--a{background:rgba(59,130,246,.08);border-color:rgba(59,130,246,.35)}.finanzas-caja--b{background:rgba(168,85,247,.08);border-color:rgba(168,85,247,.35)}.finanzas-caja__tag{font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.finanzas-caja__saldo{font-size:1.25rem;font-weight:700}.finanzas-flujo-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.finanzas-flujo-period-toggle{display:inline-flex;gap:.25rem;padding:.2rem;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg)}.finanzas-flujo-period-toggle__btn{border:none;background:transparent;color:var(--text-muted);font-size:.78rem;font-weight:600;padding:.35rem .65rem;border-radius:calc(var(--radius) - 2px);cursor:pointer}.finanzas-flujo-period-toggle__btn:hover:not(:disabled){color:var(--text)}.finanzas-flujo-period-toggle__btn--active{background:var(--accent);color:#fff}.finanzas-flujo-period-toggle__btn:disabled{opacity:.6;cursor:wait}.finanzas-flujo-chart{display:flex;gap:.35rem;align-items:flex-end;min-height:120px;margin-bottom:.75rem;overflow-x:auto;padding-bottom:.25rem}.finanzas-flujo-chart__col{flex:1 1 48px;min-width:48px;display:flex;flex-direction:column;align-items:center;gap:.35rem}.finanzas-flujo-chart__bars{display:flex;gap:3px;align-items:flex-end;height:100px;width:100%;justify-content:center}.finanzas-flujo-chart__bar{width:10px;min-height:2px;border-radius:3px 3px 0 0;transition:height .25s ease}.finanzas-flujo-chart__bar--cobrar{background:#16a34a}.finanzas-flujo-chart__bar--pagar{background:#dc2626}.finanzas-flujo-chart__label{font-size:.65rem;color:var(--text-muted);text-align:center;line-height:1.2;max-width:64px}.finanzas-flujo-legend{display:flex;gap:1rem;font-size:.8rem;color:var(--text-muted);margin-bottom:1rem}.finanzas-flujo-legend span{display:inline-flex;align-items:center;gap:.35rem}.finanzas-flujo-legend__dot{width:10px;height:10px;border-radius:999px;display:inline-block}.finanzas-flujo-legend__dot--cobrar{background:#16a34a}.finanzas-flujo-legend__dot--pagar{background:#dc2626}.finanzas-flujo-table-wrap{overflow-x:auto}.finanzas-flujo-table{width:100%;border-collapse:collapse;font-size:.85rem}.finanzas-flujo-table td,.finanzas-flujo-table th{padding:.45rem .5rem;text-align:left;border-bottom:1px solid var(--border)}.finanzas-flujo-table th{color:var(--text-muted);font-weight:600;font-size:.78rem}.finanzas-flujo-table__cobrar{color:#16a34a;font-weight:600}.finanzas-flujo-table__pagar{color:#dc2626;font-weight:600}.finanzas-flujo-table__neg td{background:rgba(220,38,38,.06)}.variacion-costo-panel__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-bottom:.85rem}.variacion-costo-panel__filter{display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;color:var(--text-muted)}.variacion-detalle-table{font-size:.8rem}.variacion-detalle-table__path{max-width:280px;line-height:1.35;word-break:break-word}.variacion-detalle-table__nivel{display:inline-block;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;color:var(--text-muted);margin-right:.25rem}.variacion-detalle-table__badge{display:inline-block;margin-left:.25rem;padding:.05rem .3rem;border-radius:4px;font-size:.68rem;font-weight:700}.variacion-detalle-table__badge--nc{background:rgba(148,163,184,.25);color:var(--text-muted)}.variacion-detalle-table__badge--np{background:rgba(245,158,11,.2);color:#b45309}.variacion-detalle-table__desvio td{background:rgba(245,158,11,.05)}.kpi-grid{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.kpi-card,.obra-dashboard-kpi.kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:.85rem 1rem;color:var(--text)}.kpi-card__label{display:block;font-size:.78rem;color:var(--text-muted);margin-bottom:.25rem}.kpi-card__value{display:block;font-size:1.25rem;font-weight:700;line-height:1.2;color:var(--text)}.file-input{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.file-input__native{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.file-input__btn{display:inline-flex;align-items:center;justify-content:center;width:auto;margin:0;padding:.45rem .85rem;font-size:.85rem;cursor:pointer}.file-input__btn--disabled{opacity:.55;cursor:not-allowed;pointer-events:none}.file-input__name{font-size:.85rem;color:var(--text-muted);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hitos-table,.tramites-table{width:100%;border-collapse:collapse;font-size:.88rem}.hitos-table td,.hitos-table th,.tramites-table td,.tramites-table th{border-bottom:1px solid var(--border);padding:.5rem .4rem;text-align:left;vertical-align:top}.hitos-table th,.tramites-table th{color:var(--text-muted);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.plan-chip-list{display:flex;flex-direction:column;gap:.35rem;margin-top:.35rem}.plan-chip{display:flex;align-items:flex-start;gap:.45rem;font-size:.85rem;cursor:pointer}.plan-chip input{margin-top:.2rem}.semaforo{width:14px;height:14px;border-radius:50%;flex-shrink:0}.semaforo--verde{background:#16a34a}.semaforo--amarillo{background:#f59e0b}.semaforo--rojo{background:#dc2626}.progress-bar{height:6px;background:var(--border);border-radius:999px;overflow:hidden}.progress-bar__fill{height:100%;background:var(--accent);border-radius:999px}.btn-link{background:none;border:none;color:var(--accent);cursor:pointer;font-size:inherit;padding:0;text-decoration:underline}.split-panel{display:grid;grid-template-columns:minmax(280px,380px) 1fr;gap:1.25rem;align-items:start}@media (max-width:900px){.split-panel{grid-template-columns:1fr}}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 1rem}.form-grid--single{grid-template-columns:1fr}.tramites-table__row--selected td{background:rgba(245,158,11,.08)}.collapsible-panel__header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;padding:0;margin:0;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;font:inherit}.collapsible-panel__header:hover{opacity:.92}.collapsible-panel__chevron{flex-shrink:0;font-size:2rem;line-height:1;color:var(--text-muted);transition:transform .15s ease;min-width:1.25rem;text-align:center}.collapsible-panel__chevron--open{transform:rotate(90deg)}.collapsible-panel__body{margin-top:.75rem}