@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:'DM Sans','Segoe UI',sans-serif;color:#352635;background:#faf7fa;--pink:#9d365f;--border:#eadfe7;--muted:#746977;--green:#386758}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}a{color:var(--pink);text-decoration:none}button{cursor:pointer;background:#fff;color:#463344;border:1px solid var(--border);border-radius:10px;padding:10px 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:600;transition:background .15s}button:hover{background:#fff1f6}button:disabled{opacity:.5;cursor:not-allowed}.primary{background:var(--pink);color:#fff;border-color:var(--pink)}.primary:hover{background:#7e294a}.subtle{background:transparent;border:0}.icon-btn{padding:8px}.lucide{width:19px;height:19px;stroke-width:1.7;flex-shrink:0}aside{position:fixed;width:238px;height:100vh;background:#fff;border-right:1px solid var(--border);padding:30px 18px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;padding:0 10px 36px;color:#432c3e;font-family:Manrope,sans-serif;font-weight:800;font-size:23px}.brand small{display:block;font:12px 'DM Sans',sans-serif;color:var(--muted);margin-top:5px;letter-spacing:.3px}.brand-icon{width:42px;height:46px;border-radius:14px;background:#f7dce9;display:grid;place-items:center;color:var(--pink)}.brand-icon .lucide{width:24px;height:24px}nav{display:grid;gap:7px}nav a{padding:12px 15px;display:flex;align-items:center;gap:12px;color:#786575;border-radius:11px;font-size:15px}nav a.active{color:var(--pink);background:#fae9f1;font-weight:700}nav a:hover{background:#faf2f7}.sidebar-end{margin-top:auto}.demo-note{background:#f5f0fb;border-radius:14px;padding:18px;font-size:14px;line-height:1.5}.demo-note .lucide{color:#8666a1;margin-bottom:9px}.demo-note strong{display:block;font-weight:600}.demo-note p{color:var(--muted);margin-bottom:0}.profile{border:0;border-top:1px solid var(--border);border-radius:0;margin-top:20px;width:100%;padding:22px 4px 0;justify-content:start;text-align:left;gap:11px}.profile small{display:block;color:var(--muted);font-size:12px;font-weight:400;margin-top:3px}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#f2d6e3;color:var(--pink)}.profile>.lucide{margin-left:auto}.shell{margin-left:238px}header{height:85px;padding:0 36px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;background:#fffdff;gap:15px}.eyebrow{font-size:12px;letter-spacing:1.5px;font-weight:700;color:#91758a}.demo-chip{background:#f3ecf9;border:1px solid #e6d9f0;color:#755187;border-radius:20px;font-size:12px;padding:5px 10px;margin-left:14px}.header-actions{display:flex;gap:12px;align-items:center}.currency-label{display:flex;gap:10px;align-items:center;font-size:14px;color:var(--muted)}header select{width:85px}main{max-width:1600px;margin:auto;padding:34px 36px 45px}.page-title{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.page-title h1{font-family:Manrope,sans-serif;font-size:30px;letter-spacing:-1px;margin:0 0 8px;font-weight:800}.page-title p{margin:0;color:var(--muted);font-size:15px;line-height:1.5}.title-actions{display:flex;gap:8px;flex-wrap:wrap}.layout{display:grid;grid-template-columns:minmax(0,1fr) 345px;gap:24px}.card{background:#fff;border:1px solid var(--border);border-radius:17px;padding:23px;margin-bottom:20px;box-shadow:0 3px 14px #59344503}.card-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:10px}.card-title h2{display:flex;align-items:center;gap:10px;font:700 17px Manrope,sans-serif;margin:0}.card-title h2 .lucide{color:var(--pink)}.step{font-size:11px;color:#967489;letter-spacing:1px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field label{display:block;font-weight:500;font-size:14px;margin-bottom:8px}.field small,small.muted{display:block;margin-top:6px;font-size:12px;color:var(--muted);line-height:1.5}input,select{width:100%;background:#fffdff;border:1px solid #e1d6df;border-radius:9px;padding:11px 12px;color:#403440;min-width:0}input:focus,select:focus{border-color:#b56a8e}input[type=checkbox]{width:auto;accent-color:var(--pink)}.check{display:flex;gap:9px;align-items:center;font-size:14px;margin:12px 0}.section-label{font-size:12px;color:#94758a;font-weight:700;text-transform:uppercase;letter-spacing:1px;margin:20px 0 12px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th{color:var(--muted);font-weight:500;text-align:left;padding:0 8px 13px;border-bottom:1px solid var(--border);white-space:nowrap}td{padding:14px 8px;border-bottom:1px solid #f0e8ee;vertical-align:middle}td:first-child,th:first-child{padding-left:0}td:last-child,th:last-child{padding-right:0}.name-cell strong{display:block;font-size:14px;font-weight:600;max-width:260px}.name-cell small{display:block;font-size:12px;color:var(--muted);margin-top:5px}.number{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}td input{padding:8px;min-width:65px;max-width:95px}td select{padding:8px;min-width:130px}.tag{display:inline-block;border-radius:20px;background:#f4edf9;color:#745685;padding:5px 9px;font-size:12px;white-space:nowrap}.tag.green{background:#e6f2ec;color:#386758}.tag.pink{background:#f9e6ee;color:#9d365f}.muted{color:var(--muted)}.help{font-size:13px;line-height:1.6;color:var(--muted);margin:15px 0 0}.alert{background:#fff0e7;border:1px solid #f1d2bd;color:#874721;padding:14px;border-radius:12px;font-size:14px;line-height:1.5}.notice{background:#f3eef9;border:1px solid #e5d9f0;color:#6e547f;border-radius:12px;padding:14px;font-size:14px;line-height:1.5}.summary{position:sticky;top:22px;align-self:start}.price-card{background:#fae5ee;border:1px solid #eed0dd;border-radius:18px;padding:26px;margin-bottom:16px}.price-card>.eyebrow{color:#995772;font-size:11px}.price-value{font-family:Manrope,sans-serif;font-weight:800;font-size:36px;letter-spacing:-1px;line-height:1.3;margin:13px 0 5px;color:#773650;overflow-wrap:anywhere}.price-value small{font-size:16px;font-weight:500;letter-spacing:0}.price-sub{font-size:13px;color:#995772}.price-card button{width:100%;margin-top:22px}.summary .card{padding:20px}.breakdown-row{display:flex;justify-content:space-between;gap:12px;font-size:14px;padding:9px 0;align-items:center}.breakdown-row span:first-child{display:flex;align-items:center;gap:9px;color:var(--muted)}.breakdown-row .lucide{width:16px;height:16px}.breakdown-row.total{border-top:1px solid var(--border);margin-top:9px;padding-top:16px;font-weight:700}.gain{background:#e8f2ed;border-radius:12px;padding:17px;margin-top:16px}.gain small{font-size:12px;color:var(--green)}.gain strong{display:block;font:800 24px Manrope,sans-serif;color:#386758;margin:7px 0}.gain p{font-size:12px;color:var(--green);margin:0;line-height:1.5}.gain.negative{background:#fae5e7}.gain.negative strong,.gain.negative p,.gain.negative small{color:#993844}.cost-bar{display:flex;gap:3px;height:7px;margin:17px 0;border-radius:20px;overflow:hidden}.cost-bar span{min-width:2px}.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:22px}.stat{background:#fff;border:1px solid var(--border);border-radius:16px;padding:22px}.stat .lucide{color:var(--pink);margin-bottom:12px}.stat small{display:block;color:var(--muted);font-size:13px}.stat strong{display:block;font:800 25px Manrope,sans-serif;margin-top:9px}.two-columns{display:grid;grid-template-columns:1fr 1fr;gap:23px}.empty{padding:30px;text-align:center;color:var(--muted)}footer{padding:20px 36px;font-size:12px;color:var(--muted);border-top:1px solid var(--border);display:flex;justify-content:space-between;gap:12px}dialog{border:1px solid var(--border);border-radius:18px;padding:26px;width:min(580px,calc(100vw - 28px));max-height:90vh;box-shadow:0 22px 80px #4c254c33}dialog::backdrop{background:#33203360}.dialog-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.dialog-title h2{font:700 22px Manrope,sans-serif;margin:0}.dialog-title button{border:0;padding:6px}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.dialog-actions button{flex:1}.profile-choice{display:flex;width:100%;padding:18px;justify-content:flex-start;text-align:left;margin:10px 0}.profile-choice small{display:block;color:var(--muted);font-weight:400;margin-top:5px}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);border-radius:12px;padding:14px 22px;color:#fff;background:#493347;opacity:0;pointer-events:none;transition:.2s;z-index:5;max-width:90vw;font-size:14px}#toast.show{opacity:1;transform:translate(-50%,0)}.paper-preview{margin-top:15px;background:#f9f5fb;border-radius:12px;padding:16px;display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:13px;color:#6f567d}.paper-preview .lucide{width:30px;height:30px}.paper-preview strong{display:block;font-size:16px;margin-bottom:5px}.print-only{display:none}.switcher{display:flex;gap:7px;flex-wrap:wrap}.switcher button.active{background:#fae5ee;color:var(--pink);border-color:#dfadc3}.no-print{display:initial}@media(max-width:1150px){aside{width:200px;padding:25px 12px}.shell{margin-left:200px}main,header{padding-left:24px;padding-right:24px}.layout{grid-template-columns:minmax(0,1fr) 300px}.brand{font-size:20px}.grid.three{grid-template-columns:1fr 1fr}}@media(max-width:920px){aside{position:static;width:auto;height:auto;padding:15px 20px;border-right:0;border-bottom:1px solid var(--border)}.brand{padding:0 0 14px}.brand small{display:none}nav{display:flex;overflow:auto;gap:2px}nav a{padding:10px;white-space:nowrap;font-size:13px}.sidebar-end{display:none}.shell{margin-left:0}.layout{grid-template-columns:minmax(0,1fr) 300px}header{height:70px}.eyebrow{font-size:10px}.demo-chip{display:none}}@media(max-width:700px){main{padding:24px 16px}.page-title{align-items:flex-start;flex-direction:column}.page-title h1{font-size:27px}.layout,.two-columns{grid-template-columns:1fr}.summary{position:static;grid-row:1}.summary .card{display:block}.price-card{padding:20px}.price-value{font-size:32px}.price-card button{margin-top:15px}.stat-grid{grid-template-columns:1fr}.stat{padding:16px}.stat strong{font-size:21px}.grid.three{grid-template-columns:1fr 1fr}.card{padding:18px}.header-actions{gap:5px}.currency-label{font-size:12px}header{padding:0 16px}.card-title h2{font-size:16px}footer{padding:18px;flex-direction:column}}@media print{aside,header,footer,main,.no-print,dialog,#toast{display:none!important}.shell{margin:0}.print-only{display:block!important;color:#222;padding:30px;font-family:'Segoe UI',sans-serif}.print-only h1{font-size:25px}.print-only table{margin-top:25px}.print-only .amount{font-size:28px;font-weight:700}body{background:#fff}}

.summary{width:auto;height:auto;padding:0;background:transparent;border:0;display:block;min-width:0}.price-value{font-size:clamp(25px,2.4vw,36px);overflow-wrap:normal}.summary .breakdown-row strong{white-space:nowrap}.card:has(>table){overflow-x:auto}@media(max-width:700px){.summary{width:100%;padding:0}.price-value{font-size:32px}}
.layout>*{min-width:0}.shell,main{min-width:0}.summary{max-width:100%}@media(max-width:700px){.layout,.two-columns{grid-template-columns:minmax(0,1fr)}.grid{grid-template-columns:minmax(0,1fr)}.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.breakdown-row{font-size:13px}}

.printer-reference{border:1px solid #eadde5;border-radius:16px;padding:18px;margin:14px 0;background:#fffafd}.printer-reference h3{margin:0 0 6px}.printer-reference small{color:#786776}.reference-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.reference-actions a{color:#9c426c;font-weight:600}

button.danger{color:#a52c4d;background:#fff0f3;border:1px solid #eab9c6}button.danger:hover{background:#ffe1e9}

.quote-paper{background:white;padding:24px;border:1px solid #eadde5;border-radius:14px;margin:18px 0}.quote-logo{max-width:180px;max-height:90px;object-fit:contain}.metrics h2{font-size:26px;overflow-wrap:anywhere}#nav{max-height:calc(100vh - 320px);overflow-y:auto}.metrics .card{margin-bottom:18px}#dialog{max-width:1000px;width:90vw}#dialog table{width:100%}.quote-paper small,td small{display:block}@media print{.print-only .quote-paper{border:0;margin:0;padding:0}}

.info-button{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;min-width:20px;border:1px solid #cc8ca8;border-radius:50%;padding:0;margin-left:7px;font-family:serif;font-style:italic;font-weight:bold;font-size:13px;line-height:1;color:#95395f;background:#fff4f8;vertical-align:middle;cursor:pointer}.info-button:hover,.info-button:focus-visible{background:#f8d9e7;outline:2px solid #95395f;outline-offset:2px}.help-dialog{max-width:570px;width:calc(100% - 40px);border:1px solid #e3cbd8;border-radius:20px;padding:26px;color:#382d40}.help-dialog p{line-height:1.65}.help-dialog::backdrop{background:#30203366}.help-dialog input{max-width:100%;margin:8px 0}.help-dialog button{margin:5px}
[hidden]{display:none!important}
.price-card .info-button{display:inline-flex!important;width:20px!important;height:20px!important;padding:0!important;margin:0 0 0 7px!important;min-width:20px!important;color:#95395f!important;background:#fff4f8!important;font-size:13px!important}

/* Responsive workspace */
.mobile-menu{display:none}.title-actions{flex-wrap:wrap}.grid>*,.two-columns>*,.stat-grid>*{min-width:0}.card-title{flex-wrap:wrap}.card-title h2{min-width:0;flex-wrap:wrap}.info-button{flex-shrink:0}fieldset{min-width:0}.table-wrap{max-width:100%;overscroll-behavior-x:contain}.table-wrap table,.card>table{min-width:570px}.card:has(>table){max-width:100%}.help,dialog p{overflow-wrap:anywhere}.paper-preview{flex-wrap:wrap}.dialog-title h2{min-width:0}.dialog-title>button{flex-shrink:0}
@media(max-width:1100px){.layout,.two-columns{grid-template-columns:minmax(0,1fr)}.summary{position:static;grid-row:auto}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:920px){#sidebar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;height:auto}.brand{padding:0}.mobile-menu{display:inline-flex;align-items:center;gap:10px;min-height:44px}#nav{display:none;grid-column:1/-1;max-height:none;overflow:visible}#sidebar.menu-open #nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}#nav a{white-space:normal;min-height:44px}.sidebar-end{grid-column:1/-1}#sidebar.menu-open .sidebar-end{display:block}.sidebar-end .demo-note{display:none}.sidebar-end .profile{width:100%}header{height:auto;min-height:70px;flex-wrap:wrap;gap:12px;padding-top:14px;padding-bottom:14px}.header-actions{flex-wrap:wrap}.summary{grid-row:auto}}
@media(max-width:600px){#sidebar{padding:14px 16px}.brand{font-size:20px}.grid,.grid.three,.stat-grid{grid-template-columns:minmax(0,1fr)}.title-actions{width:100%;display:flex;gap:8px}.title-actions>button{flex:1 1 140px;min-height:44px}.card-title>button{min-height:44px}.card{padding:16px}input,select,textarea{font-size:16px;min-height:44px}button{min-height:40px}button.info-button{min-height:24px}.header-actions{gap:6px}.currency-label{gap:6px}header .eyebrow{font-size:10px}.price-card{padding:20px}.price-value{font-size:30px}.breakdown-row{flex-wrap:wrap}.breakdown-row>strong{margin-left:auto}#dialog,.help-dialog{width:calc(100vw - 24px);max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:16px;box-sizing:border-box}dialog h2{font-size:21px}.dialog-actions button{width:100%;min-height:44px}.quote-paper{padding:12px}.table-wrap::before{content:'Deslizá para ver todas las columnas';display:block;font-size:12px;color:#726879;margin-bottom:12px}.table-wrap{padding-bottom:8px}#toast{left:12px;right:12px;bottom:12px;max-width:calc(100vw - 24px);box-sizing:border-box}.printer-reference{padding:14px}}
@media print{.mobile-menu{display:none!important}}

.brand>span:last-child{min-width:0;line-height:1.25}.brand{align-items:center}.brand-icon{flex-shrink:0}
@media(max-width:600px){.brand{font-size:18px}}

#cloudStatus{font-size:14px;max-width:230px;white-space:normal}#cloudStatus[data-state="error"]{color:#a21936;font-weight:700}.account-bar{display:none}.account-bar form{display:inline}@media(max-width:700px){header{flex-wrap:wrap}#cloudStatus{max-width:100%;order:3;width:100%}}
