:root{--papel:#f7f6f4;--papel-2:#f2f0ed;--papel-3:#e9e6e2;--tarjeta:#fff;--tinta:#17110d;--grafito:#5c544d;--grafito-2:#8a8179;--linea:#17110d17;--linea-lapiz:#17110d17;--violeta:#9f6bb2;--violeta-tinta:#6e4480;--violeta-suave:#f5eef8;--violeta-borde:#9f6bb252;--menta:#65bdaf;--menta-suave:#d9f5ec;--arena:#dfbe8e;--miel:#ffd37a;--ok:#146b34;--ok-bg:#e7f2e9;--alerta:#a34a08;--alerta-bg:#fdf3e6;--riesgo:#b91c1c;--riesgo-bg:#fdeceb;--lapiz-sm:0 1px 2px #17110d0d,0 1px 3px #17110d0a;--lapiz-md:0 2px 4px #17110d0d,0 4px 12px #17110d0d;--lapiz-lg:0 4px 8px #17110d0d,0 12px 28px #17110d12;--f-titulo:var(--font-fraunces);--f-mano:var(--font-inter);--f-ui:var(--font-inter);--t-xs:.8125rem;--t-sm:.875rem;--t-md:1rem;--t-lg:1.25rem;--t-xl:1.5rem;--t-2xl:1.875rem;--t-3xl:2.25rem;--t-hand-title:.875rem;--e1:.25rem;--e2:.5rem;--e3:.75rem;--e4:1rem;--e5:1.25rem;--e6:1.5rem;--e8:2rem;--e10:2.5rem;--e12:3rem;--r-sm:.5rem;--r-md:.625rem;--r-lg:.875rem;--r-xl:1rem;--r-pill:62.5rem;--sidebar:248px}*{box-sizing:border-box}html{background:var(--papel);min-width:0;font-size:16px}body{--f-titulo:var(--font-fraunces);--f-mano:var(--font-inter);--f-ui:var(--font-inter);color:var(--tinta);background:var(--papel);font-family:var(--f-ui),system-ui,sans-serif;font-size:var(--t-md);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;margin:0}small{font-size:1rem}button,input,select,textarea{color:inherit;font:inherit;font-variant-numeric:tabular-nums}a{color:inherit}button,a,input,select,textarea,summary{outline:none}:where(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--violeta);outline-offset:2px}.num,[data-number]{font-family:var(--f-ui),system-ui,sans-serif;font-variant-numeric:tabular-nums}.app-shell{min-height:100vh;display:flex}.page-header{gap:var(--e10);margin-bottom:var(--e8);justify-content:space-between;align-items:flex-start;display:flex}.page-eyebrow,.eyebrow{margin-bottom:var(--e1);color:var(--violeta-tinta);font-family:var(--f-mano),cursive;font-size:var(--t-hand-title);display:block}.page-header h1{font-family:var(--f-titulo);font-size:var(--t-3xl);letter-spacing:-.02em;margin:0;font-weight:600;line-height:1.05}.page-header p{max-width:52ch;margin:var(--e2) 0 0;color:var(--grafito);line-height:1.55}.page-actions{gap:var(--e3);padding-top:var(--e6);align-items:center;display:flex}.button{gap:var(--e2);min-height:44px;padding:var(--e3) var(--e5);color:var(--tinta);background:var(--tarjeta);border:1px solid var(--linea-lapiz);border-radius:var(--r-md);box-shadow:var(--lapiz-sm);cursor:pointer;font-size:var(--t-sm);justify-content:center;align-items:center;font-weight:600;text-decoration:none;transition:background .12s,border-color .12s,box-shadow .12s;display:inline-flex}.button:hover:not(:disabled){transform:translate(-1px,-1px);box-shadow:4px 4px #1e1a1629}.button:active:not(:disabled){transform:translate(1px,1px);box-shadow:1px 1px #1e1a1629}.button:disabled{color:var(--grafito-2);background:var(--papel-3);border-color:var(--linea);box-shadow:none;cursor:not-allowed}.button-loader{border-radius:var(--r-pill);border:2px solid;border-right-color:#0000;width:14px;height:14px;animation:.7s linear infinite spin}.card,.panel,.tarjeta{padding:var(--e6);background:var(--tarjeta);border:1px solid var(--linea-lapiz);border-radius:var(--r-xl);box-shadow:var(--lapiz-sm)}.card-important{border-color:var(--tinta);box-shadow:var(--lapiz-md);border-style:solid}.field{gap:var(--e2);display:grid}.field+.field{margin-top:var(--e5)}.field label,.field-label-row{font-size:1rem;font-weight:600}.field-label-row{gap:var(--e2);align-items:center;display:flex}.field-help-copy{margin:0 0 var(--e2);color:var(--grafito);font-family:var(--f-ui),system-ui,sans-serif;font-size:1rem;font-weight:400;line-height:1.5}.input{width:100%;min-height:46px;padding:var(--e3) var(--e4);color:var(--tinta);background:var(--tarjeta);border-radius:var(--r-md);font-size:var(--t-md);font-variant-numeric:tabular-nums;border:1px solid #17110d29;transition:border-color .12s,box-shadow .12s}textarea.input{border-radius:var(--r-lg);resize:vertical;min-height:112px}.input:focus{border-color:var(--tinta);outline:3px solid var(--violeta);outline-offset:2px}.input:disabled{color:var(--grafito-2);background:var(--papel-3);cursor:not-allowed}.field.has-error .input,.input[aria-invalid=true]{border-color:var(--riesgo)}p.field-error{margin:var(--e1) 0 0;color:var(--riesgo);font-size:var(--t-sm);font-weight:600;line-height:1.45}.input.field-error{border-color:var(--riesgo)}.field-suggestion{gap:var(--e2);flex-wrap:wrap;align-items:center;display:flex}.help-button,.field-help>summary{isolation:isolate;width:1.25rem;height:1.25rem;color:var(--grafito);border-radius:var(--r-pill);cursor:pointer;font-family:var(--f-ui),system-ui,sans-serif;background:0 0;border:0;flex:0 0 1.25rem;place-items:center;padding:0;font-size:1rem;font-weight:700;list-style:none;display:inline-grid;position:relative}.help-button:before,.field-help>summary:before{z-index:-1;background:var(--tarjeta);border:1.5px solid var(--grafito-2);border-radius:var(--r-pill);content:"";width:1.25rem;height:1.25rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.help-button:after,.field-help>summary:after{content:"";width:44px;height:44px;position:absolute;top:50%;left:auto;right:0;transform:translateY(-50%)}.field-help{position:relative}.field-help>summary::-webkit-details-marker{display:none}.field-help-popover{z-index:30;top:calc(100% + var(--e2));right:min(0px,calc(100vw - 100% - var(--e5)));width:min(18rem,calc(100vw - var(--e10)));padding:var(--e3);color:var(--papel);background:var(--tinta);border-radius:var(--r-md);box-shadow:var(--lapiz-lg);font-size:var(--t-sm);pointer-events:none;border:0;line-height:1.5;position:absolute}.field-help-popover p{margin:var(--e1) 0 0}.chip,.tab{gap:var(--e2);min-height:44px;padding:var(--e2) var(--e3);color:var(--grafito);background:var(--papel-2);border:1px solid var(--linea-lapiz);border-radius:var(--r-pill);cursor:pointer;font-size:var(--t-sm);white-space:nowrap;justify-content:center;align-items:center;font-weight:600;text-decoration:none;display:inline-flex}.chip:hover{color:var(--tinta);background:var(--tarjeta)}.chip.is-selected,.chip[aria-pressed=true],.tab.activa{color:var(--violeta-tinta);background:var(--violeta-suave);border-color:var(--violeta-borde);border-style:solid}.status-dot,.punto{border-radius:var(--r-pill);background:currentColor;flex:0 0 7px;width:7px;height:7px}.note{gap:var(--e3);padding:var(--e4) var(--e5);background:var(--papel-2);border:1px solid var(--linea-lapiz);border-radius:var(--r-lg);align-items:flex-start;gap:var(--e1);display:grid}.note>div{min-width:0}.note strong{font-size:1rem;display:block}.note p{color:var(--grafito);margin:0;font-size:1rem;line-height:1.5}.step-progress{max-width:880px;margin:0 0 var(--e6);align-items:center;padding:0;list-style:none;display:flex}.step-progress li{flex:1;align-items:center;display:flex}.step-progress li:after{content:"";border-top:1px solid var(--linea-lapiz);width:100%}.step-progress li:last-child{flex:none}.step-progress li:last-child:after{display:none}.step-progress li>span{width:28px;height:28px;color:var(--grafito);background:var(--tarjeta);border:1px solid var(--linea-lapiz);border-radius:var(--r-pill);font-family:var(--f-ui),system-ui,sans-serif;font-size:var(--t-xs);flex:0 0 28px;place-items:center;font-weight:700;display:grid}.step-progress li.is-complete>span{color:var(--tarjeta);background:var(--violeta-tinta);border-color:var(--violeta-tinta)}.step-progress li.is-complete:after{border-color:var(--violeta);border-style:solid}.step-progress li.is-current>span{color:var(--violeta-tinta);border-color:var(--violeta-tinta)}.table-region{width:100%;overflow:visible}.data-table{border-collapse:collapse;width:100%;font-size:1rem}.data-table th{padding:0 var(--e3) var(--e2);color:var(--grafito);border-bottom:2px solid var(--linea);font-family:var(--f-mano),cursive;font-size:var(--t-hand-title);text-align:left;white-space:nowrap;font-weight:600}.data-table td{padding:var(--e4) var(--e3);border-bottom:1px solid var(--linea);vertical-align:middle}.data-table tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:var(--papel)}.data-table .number,.data-table th.number{text-align:right}.price-block{padding:var(--e8) var(--e6);background:var(--tarjeta);border:2px solid var(--tinta);border-radius:var(--r-xl);box-shadow:var(--lapiz-lg);text-align:center}.price-label{color:var(--grafito);font-family:var(--f-mano),cursive;font-size:var(--t-hand-title)}.price-value{margin:var(--e2) 0 var(--e1);font-family:var(--f-titulo);letter-spacing:-.035em;font-size:4.5rem;font-weight:600;line-height:1;display:block}.price-value small{margin-right:var(--e1);color:var(--grafito);font-family:var(--f-ui),system-ui,sans-serif;font-size:var(--t-2xl);vertical-align:.36em;font-weight:600}.price-summary{gap:var(--e8);margin-top:var(--e6);padding-top:var(--e5);border-top:1px solid var(--linea-lapiz);justify-content:center;display:flex}.price-summary span{gap:var(--e1);display:grid}.price-summary small{color:var(--grafito);font-family:var(--f-mano),cursive;font-size:var(--t-hand-title)}.price-summary strong{font-family:var(--f-titulo);font-size:var(--t-xl);font-weight:600}.screen-reader-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.brand{gap:var(--e3);margin-bottom:var(--e6);font-family:var(--f-titulo);font-size:var(--t-lg);align-items:center;font-weight:600;text-decoration:none;display:flex}.header-search{width:min(260px,34vw);display:block}.header-search .input{min-height:44px}.help-popover{flex:none;display:inline-flex;position:relative}.help-popover .field-help-popover{left:auto;right:0;transform:none}.help-popover .field-help-popover>span{margin-top:var(--e1);font-weight:400;display:block}input[type=number]{appearance:textfield}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.help-popover-heading{gap:var(--e3);justify-content:space-between;align-items:start;display:flex}.help-popover-close{pointer-events:auto;width:44px;height:44px;color:var(--papel);border-radius:var(--r-pill);cursor:pointer;background:#ffffff1f;border:0;flex:0 0 44px;place-items:center;padding:0;font-size:1.25rem;line-height:1;display:grid}.mobile-step-menu{display:none}[id^=product-section-],#business-step-heading,[id^=personal-expense-row-],[id^=business-expense-row-],[id^=equipment-row-],[id^=selected-material-]{scroll-margin-top:var(--e6)}@container (max-width:60rem){.two-column-layout{grid-template-columns:minmax(0,1fr)}}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (max-width:760px){.page-header{margin-bottom:var(--e6);display:block}.page-header h1{font-size:2rem}.page-actions{padding-top:var(--e4);flex-wrap:wrap}.page-actions .button{flex:auto}.header-search{width:100%}.card,.panel,.tarjeta{padding:var(--e4);border-radius:var(--r-lg)}.table-region>.data-table{display:none}.price-value{font-size:3.5rem}.help-popover .field-help-popover{top:auto;right:var(--e3);bottom:92px;left:var(--e3);width:auto;max-height:40vh;position:fixed;overflow-y:auto;transform:none}.chip,.filter-link,.tab{min-height:44px}.help-popover{justify-content:center;align-items:center;min-width:44px;min-height:44px}}.field-help-copy{font-family:var(--f-ui),system-ui,sans-serif}@media (max-width:760px){.mobile-step-menu{margin-bottom:var(--e4);background:var(--tarjeta);border:1px solid var(--linea-lapiz);border-radius:var(--r-lg);box-shadow:var(--lapiz-sm);display:block}.mobile-step-menu>summary{gap:var(--e2);min-height:44px;padding:var(--e3) var(--e4);cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;font-weight:600;list-style:none;display:grid}.mobile-step-menu>summary::-webkit-details-marker{display:none}.mobile-step-menu[open]>summary>svg{transform:rotate(180deg)}.mobile-step-meter{gap:var(--e1);grid-column:1/-1;display:flex}.mobile-step-meter i{background:var(--papel-3);border:1px solid var(--linea-lapiz);border-radius:var(--r-pill);flex:1;height:.375rem}.mobile-step-meter i.is-filled{background:var(--violeta-tinta);border-color:var(--violeta-tinta)}.mobile-step-list{gap:var(--e2);padding:0 var(--e3) var(--e3);border-top:1px solid var(--linea);display:grid}.mobile-step-list button{gap:var(--e3);min-height:44px;padding:var(--e2) var(--e3);background:var(--papel);border:1px solid var(--linea-lapiz);border-radius:var(--r-pill);text-align:left;align-items:center;display:flex}.mobile-step-list button[aria-current=step]{color:var(--violeta-tinta);background:var(--violeta-suave);border-color:var(--violeta-tinta);border-style:solid}.mobile-step-list button:disabled{color:var(--grafito);opacity:.7}.mobile-step-list button>span:last-child{gap:var(--e1);display:grid}.mobile-step-list small{color:var(--grafito);font-size:var(--t-sm)}}.page-eyebrow,.eyebrow,.price-label,.data-table th,.admin-table th,.price-summary small{font-family:var(--f-ui),system-ui,sans-serif;font-size:var(--t-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:600;line-height:1.4}.page-eyebrow,.eyebrow{color:var(--grafito)}.price-label,.data-table th{color:var(--grafito-2)}.soft-empty,.empty-state{font-family:var(--f-ui),system-ui,sans-serif;font-size:var(--t-md);background:var(--papel-2);letter-spacing:0;text-transform:none;border:0;line-height:1.55}.card,.panel,.tarjeta{border:1px solid var(--linea);box-shadow:var(--lapiz-sm)}.card-important{border-color:var(--violeta-borde);box-shadow:var(--lapiz-md)}.note{background:var(--papel-2);border:0}.chip,.tab{background:var(--papel-2);font-size:var(--t-sm);border:1px solid #0000}.chip.is-selected,.chip[aria-pressed=true],.tab.activa{background:var(--violeta-suave);border-color:var(--violeta-borde)}.data-table th{border-bottom:1px solid var(--linea)}.button:hover:not(:disabled){background:var(--papel-2);box-shadow:var(--lapiz-md);transform:none}.button:active:not(:disabled){background:var(--papel-3);box-shadow:none;transform:none}.button:disabled{box-shadow:none;border-color:#0000}.button-primary{color:#fff;background:var(--violeta-tinta);border-color:var(--violeta-tinta)}.button-primary:hover:not(:disabled){background:#5c3a6b;border-color:#5c3a6b}.button-primary:active:not(:disabled){background:#4e3159}.input::placeholder{color:var(--grafito-2)}.input:hover{border-color:#17110d4d}.input:focus{border-color:var(--violeta);box-shadow:0 0 0 3px var(--violeta-suave)}textarea.input{border-radius:var(--r-md)}.page-eyebrow,.eyebrow{font-size:var(--t-sm);letter-spacing:normal;text-transform:none}@media (max-width:900px){.page-actions{padding-top:var(--e4);flex-wrap:wrap;justify-content:flex-start}}.price-block{padding:var(--e6);color:#fff;background:var(--tinta);border-radius:var(--r-xl);box-shadow:var(--lapiz-lg);text-align:left;border:0}.price-block .price-label{color:#ffffff94}.price-block .price-value{margin:var(--e2) 0 var(--e1);font-family:var(--f-ui),system-ui,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:-.035em;font-size:3.25rem;font-weight:700;line-height:1}.price-block .price-value small{color:#ffffff80;font-size:var(--t-lg);vertical-align:.42em;font-weight:600}.price-block .price-caption{color:#ffffff94;max-width:34ch;font-size:var(--t-sm);line-height:1.5}.price-block .price-summary{justify-content:flex-start;gap:var(--e10);border-top:1px solid #ffffff29}.price-block .price-summary small{color:#ffffff80}.price-block .price-summary strong{color:#fff;font-family:var(--f-ui),system-ui,sans-serif;font-size:var(--t-lg);font-variant-numeric:tabular-nums;font-weight:650}@media (max-width:900px){.price-block .price-value{font-size:2.75rem}}:root{--miel:#17a38c}::selection{color:var(--tinta);background:var(--menta-suave)}.help-popover .field-help-popover>.help-popover-heading{gap:var(--e3);justify-content:space-between;align-items:flex-start;margin-top:0;display:flex}@media (pointer:fine){.help-popover-close{flex-basis:28px;width:28px;height:28px;font-size:1rem}}.field-help-popover{border:1px solid var(--linea);box-shadow:var(--lapiz-lg)}@media (max-width:900px){.help-popover{min-width:0;min-height:0}}.field-help-popover{font-size:max(13px,.875rem)}
