:root{--color-green-primary:#16a34a;--color-green-light:#22c55e;--color-green-dark:#15803d;--color-orange-primary:#ff9800;--color-orange-light:#ffa726;--color-orange-dark:#f57c00;--color-blue-primary:#2196f3;--color-blue-light:#42a5f5;--color-blue-dark:#1976d2;--color-slate-50:#f8fafc;--color-slate-100:#f1f5f9;--color-slate-200:#e2e8f0;--color-slate-700:#334155;--color-slate-800:#1e293b;--color-slate-900:#0f172a;--gradient-sidebar:linear-gradient(180deg,var(--color-slate-800) 0%,var(--color-slate-900) 100%);--gradient-green:linear-gradient(135deg,var(--color-green-primary) 0%,var(--color-green-light) 100%);--gradient-orange:linear-gradient(135deg,var(--color-orange-primary) 0%,var(--color-orange-light) 100%);--shadow-sm:0 1px 2px 0 rgba(0,0,0,.05);--shadow-md:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -2px rgba(0,0,0,.1);--shadow-lg:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -4px rgba(0,0,0,.1);--shadow-xl:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1)}.tooltip-container:hover .tooltip-content{transform:translateY(0)}.tooltip-content{position:relative}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-subtle{0%,to{opacity:1}50%{opacity:.8}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-fadeIn{animation:fadeIn .3s ease-out}.animate-scaleIn{animation:scaleIn .2s ease-out forwards}.animate-slideUp{animation:slideUp .3s ease-out}.scrollbar-thin::-webkit-scrollbar{width:6px}.scrollbar-thin::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.scrollbar-thin::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.scrollbar-thin::-webkit-scrollbar-thumb:hover{background:#94a3b8}.scrollbar-dark{scrollbar-width:thin;scrollbar-color:rgba(148,163,184,.35) transparent}.scrollbar-dark::-webkit-scrollbar{width:6px}.scrollbar-dark::-webkit-scrollbar-track{background:transparent}.scrollbar-dark::-webkit-scrollbar-thumb{background:rgba(148,163,184,.35);border-radius:4px}.scrollbar-dark:hover::-webkit-scrollbar-thumb{background:rgba(148,163,184,.55)}.responsive-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.compact-text{font-size:.875rem;line-height:1.25rem}@media (max-width:768px){.compact-text{font-size:.75rem;line-height:1rem}}.accordion-content{transition:max-height .3s ease-in-out}.accordion-expanded{max-height:1000px}.accordion-collapsed{max-height:0}.viewport-container{height:100vh;overflow:hidden}.scrollable-content{height:100%;overflow-y:auto;overflow-x:hidden}.tooltip-container{position:relative;z-index:10}.tooltip-content{position:absolute;z-index:9999!important;bottom:100%;left:50%;transform:translateX(-50%);margin-bottom:.5rem;padding:.5rem .75rem;background-color:#374151;color:#fff;font-size:.75rem;border-radius:.375rem;white-space:normal;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s}.tooltip-container:hover .tooltip-content{opacity:1;visibility:visible}.tooltip-arrow{position:absolute;top:100%;left:50%;transform:translateX(-50%);width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid #374151}.bg-calcular-sidebar{background:var(--gradient-sidebar)}.bg-calcular-green{background:var(--gradient-green)}.bg-calcular-orange{background:var(--gradient-orange)}.text-calcular-green{color:var(--color-green-primary)}.text-calcular-orange{color:var(--color-orange-primary)}.border-calcular-green{border-color:var(--color-green-primary)}.shadow-calcular{box-shadow:var(--shadow-lg)}.btn-calcular-primary{background:var(--gradient-green);color:#fff;border-radius:.75rem;padding:.75rem 1.5rem;font-weight:600;transition:all .2s ease-in-out;box-shadow:var(--shadow-md)}.btn-calcular-primary:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg)}@keyframes shimmer-intro{0%{background-position:-200%}to{background-position:200%}}.btn-calcular-ready-intro{position:relative;overflow:hidden;background:linear-gradient(90deg,#16a34a,#16a34a 40%,#86efac 50%,#16a34a 60%,#16a34a);background-size:200% 100%;animation:shimmer-intro 2s ease-in-out 3}.btn-calcular-ready{position:relative;overflow:hidden;background:linear-gradient(90deg,#16a34a,#16a34a 45%,#4ade80 50%,#16a34a 55%,#16a34a);background-size:200% 100%;animation:shimmer 4s ease-in-out infinite}.btn-calcular-secondary{background:var(--gradient-orange);color:#fff;border-radius:.75rem;padding:.75rem 1.5rem;font-weight:600;transition:all .2s ease-in-out;box-shadow:var(--shadow-md)}.btn-calcular-secondary:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg)}.card-calcular{background:#fff;border-radius:1rem;box-shadow:var(--shadow-md);border:1px solid var(--color-slate-200);transition:all .2s ease-in-out}.card-calcular:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-calcular-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-radius:.75rem;padding:.75rem 1.5rem;font-weight:600;transition:all .2s ease-in-out;box-shadow:var(--shadow-md);border:none}.btn-calcular-success:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg);background:linear-gradient(135deg,#059669,#047857)}.btn-calcular-success:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-calcular-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border-radius:.75rem;padding:.75rem 1.5rem;font-weight:600;transition:all .2s ease-in-out;box-shadow:var(--shadow-md);border:none}.btn-calcular-danger:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg);background:linear-gradient(135deg,#dc2626,#b91c1c)}.btn-calcular-danger:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-calcular-info{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border-radius:.75rem;padding:.75rem 1.5rem;font-weight:600;transition:all .2s ease-in-out;box-shadow:var(--shadow-md);border:none}.btn-calcular-info:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg);background:linear-gradient(135deg,#2563eb,#1d4ed8)}.btn-calcular-info:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-calcular-ghost{background:transparent;color:var(--color-slate-700);border:2px solid var(--color-slate-300);border-radius:.75rem;padding:.75rem 1.5rem;font-weight:600;transition:all .2s ease-in-out}.btn-calcular-ghost:hover{background:var(--color-slate-100);border-color:var(--color-slate-400);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-calcular-ghost:active{transform:translateY(0);background:var(--color-slate-200)}.input-calcular{width:100%;padding:.75rem 1rem;border:1.5px solid var(--color-slate-200);border-radius:.75rem;font-size:.875rem;transition:all .2s ease-in-out;background-color:#fff;text-align:center}.input-calcular::placeholder{color:var(--color-slate-300);font-style:italic}.input-calcular:focus{outline:none;border-color:var(--color-green-primary);ring:2px;ring-color:rgba(108,192,74,.2);box-shadow:0 0 0 3px rgba(108,192,74,.1);text-align:left}.input-calcular:focus::placeholder{opacity:0}.input-calcular:hover{border-color:var(--color-slate-300)}.input-calcular:disabled{background-color:var(--color-slate-50);color:var(--color-slate-400);cursor:not-allowed}.btn-calcular-premium{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;border-radius:.75rem;padding:.75rem 1.5rem;font-weight:600;transition:all .2s ease-in-out;box-shadow:var(--shadow-md);border:none}.btn-calcular-premium:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg);background:linear-gradient(135deg,#7c3aed,#6d28d9)}.btn-calcular-premium:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-nav{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 2rem;font-weight:600;border-radius:.75rem;transition:all .2s ease-in-out;box-shadow:var(--shadow-md);text-decoration:none;border:none;cursor:pointer}.btn-nav-back{background:var(--color-slate-200);color:var(--color-slate-700)}.btn-nav-back:hover{background:var(--color-slate-300);transform:translateY(-1px);box-shadow:var(--shadow-lg)}.btn-nav-next{background:var(--gradient-green);color:#fff}.btn-nav-next:hover{transform:translateY(-1px);box-shadow:var(--shadow-lg);filter:brightness(1.05)}.btn-ambiente{width:3rem;height:3rem;border-radius:.75rem;font-weight:700;transition:all .2s ease-in-out;border:2px solid transparent;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.btn-ambiente:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent,hsla(0,0%,100%,.2));border-radius:inherit;opacity:0;transition:opacity .2s ease-in-out}.btn-ambiente:hover:before{opacity:1}.btn-ambiente-selected{background:var(--gradient-green);color:#fff;transform:scale(1.05);box-shadow:var(--shadow-lg);border-color:var(--color-green-light)}.btn-ambiente-blocked{background:var(--color-slate-100);color:var(--color-slate-400);cursor:not-allowed}.btn-ambiente-blocked:hover{transform:none;box-shadow:none}.btn-ambiente-available{background:#fff;color:var(--color-slate-700);border-color:var(--color-slate-300)}.btn-ambiente-available:hover{background:var(--color-slate-50);border-color:var(--color-green-primary);transform:translateY(-1px);box-shadow:var(--shadow-md)}.container-calcular{background:#fff;border-radius:1.25rem;box-shadow:var(--shadow-lg);border:1px solid var(--color-slate-200);overflow:hidden;transition:all .3s ease-in-out}.container-calcular:hover{box-shadow:var(--shadow-xl);transform:translateY(-2px);border-color:var(--color-green-primary)}.card-calcular-feature{background:#fff;border-radius:1rem;padding:1.5rem;box-shadow:var(--shadow-md);border:1px solid var(--color-slate-200);transition:all .2s ease-in-out;position:relative;overflow:hidden}.card-calcular-feature:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:var(--gradient-green);opacity:0;transition:opacity .2s ease-in-out}.card-calcular-feature:hover:before{opacity:1}.card-calcular-feature:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px);border-color:var(--color-green-light)}.card-calcular-stats{background:linear-gradient(135deg,#fff,#f8fafc);border-radius:1rem;padding:1.5rem;box-shadow:var(--shadow-md);border:1px solid var(--color-slate-200);transition:all .2s ease-in-out}.card-calcular-stats:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-calcular-highlight{background:var(--gradient-green);border-radius:1rem;padding:1.5rem;color:#fff;box-shadow:var(--shadow-lg);border:none;transition:all .2s ease-in-out}.card-calcular-highlight:hover{box-shadow:var(--shadow-xl);transform:translateY(-3px);filter:brightness(1.05)}.card-calcular-info{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:1rem;padding:1.5rem;box-shadow:var(--shadow-sm);border:1px solid #7dd3fc;transition:all .2s ease-in-out}.card-calcular-info:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.card-calcular-warning{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-radius:1rem;padding:1.5rem;box-shadow:var(--shadow-sm);border:1px solid #fbbf24;transition:all .2s ease-in-out}.card-calcular-warning:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.card-calcular-success{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-radius:1rem;padding:1.5rem;box-shadow:var(--shadow-sm);border:1px solid #4ade80;transition:all .2s ease-in-out}.card-calcular-success:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.accordion-calcular{background:#fff;border-radius:1rem;box-shadow:var(--shadow-md);border:1px solid var(--color-slate-200);overflow:hidden;transition:all .2s ease-in-out}.accordion-calcular:hover{box-shadow:var(--shadow-lg);border-color:var(--color-green-light)}.accordion-header{background:linear-gradient(135deg,#f8fafc,#f1f5f9);padding:1.25rem;cursor:pointer;transition:all .2s ease-in-out;border-bottom:1px solid var(--color-slate-200)}.accordion-header:hover{background:linear-gradient(135deg,#f1f5f9,#e2e8f0)}.accordion-content{padding:1.25rem;transition:all .3s ease-in-out;overflow:hidden}.modal-calcular{background:#fff;border-radius:1.5rem;box-shadow:var(--shadow-xl);border:none;overflow:hidden;max-width:90vw;max-height:90vh}.modal-header{background:var(--gradient-green);color:#fff;border-bottom:none}.modal-content,.modal-header{padding:1.5rem}.progress-calcular{background:var(--color-slate-200);border-radius:1rem;height:.75rem;overflow:hidden;box-shadow:inset 0 2px 4px rgba(0,0,0,.1)}.progress-bar{background:var(--gradient-green);height:100%;border-radius:inherit;transition:width .5s ease-in-out;position:relative}@media (min-width:1024px){.stepper-container{padding:0 2rem}.stepper-container,.stepper-steps{display:flex;justify-content:center;align-items:center;width:100%}.stepper-steps{position:relative;max-width:900px;margin:0 auto}.stepper-wrapper{display:flex;justify-content:center;width:100%}}.progress-bar:after{content:"";position:absolute;top:0;left:0;bottom:0;right:0;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.animate-fadeInUp{animation:fadeInUp .6s ease-out forwards;opacity:0}.animate-slideInUp{animation:slideInUp .8s ease-out forwards;opacity:0}.animate-pulse-subtle{animation:pulse-subtle 2s ease-in-out infinite}.calcular-app *{scrollbar-width:thin;scrollbar-color:rgba(108,192,74,.3) transparent}.calcular-app ::-webkit-scrollbar{width:6px;height:6px}.calcular-app ::-webkit-scrollbar-track{background:transparent}.calcular-app ::-webkit-scrollbar-thumb{background:rgba(108,192,74,.25);border-radius:10px;border:none}.calcular-app ::-webkit-scrollbar-thumb:hover{background:rgba(108,192,74,.4)}.calcular-app ::-webkit-scrollbar-thumb:active{background:rgba(108,192,74,.6)}.calcular-app ::-webkit-scrollbar-corner{background:transparent}.scrollbar-minimal{scrollbar-width:thin;scrollbar-color:rgba(108,192,74,.2) transparent}.scrollbar-minimal::-webkit-scrollbar{width:4px;height:4px}.scrollbar-minimal::-webkit-scrollbar-track{background:transparent}.scrollbar-minimal::-webkit-scrollbar-thumb{background:rgba(108,192,74,.15);border-radius:10px}.scrollbar-minimal::-webkit-scrollbar-thumb:hover{background:rgba(108,192,74,.3)}.scrollbar-ghost{scrollbar-width:thin;scrollbar-color:transparent transparent}.scrollbar-ghost::-webkit-scrollbar{width:6px;height:6px}.scrollbar-ghost::-webkit-scrollbar-track{background:transparent}.scrollbar-ghost::-webkit-scrollbar-thumb{background:transparent;border-radius:10px}.scrollbar-ghost:hover{scrollbar-color:rgba(108,192,74,.3) transparent}.scrollbar-ghost:hover::-webkit-scrollbar-thumb{background:rgba(108,192,74,.25)}.scrollbar-ghost:hover::-webkit-scrollbar-thumb:hover{background:rgba(108,192,74,.4)}.scrollbar-dark-minimal{scrollbar-width:thin;scrollbar-color:rgba(108,192,74,.4) transparent}.scrollbar-dark-minimal::-webkit-scrollbar{width:5px;height:5px}.scrollbar-dark-minimal::-webkit-scrollbar-track{background:transparent}.scrollbar-dark-minimal::-webkit-scrollbar-thumb{background:rgba(108,192,74,.3);border-radius:10px}.scrollbar-dark-minimal::-webkit-scrollbar-thumb:hover{background:rgba(108,192,74,.5)}.scrollbar-ghost-neutral{scrollbar-width:thin;scrollbar-color:transparent transparent}.scrollbar-ghost-neutral::-webkit-scrollbar{width:6px;height:6px}.scrollbar-ghost-neutral::-webkit-scrollbar-track{background:transparent}.scrollbar-ghost-neutral::-webkit-scrollbar-thumb{background:transparent;border-radius:10px}.scrollbar-ghost-neutral:hover{scrollbar-color:rgba(148,163,184,.3) transparent}.scrollbar-ghost-neutral:hover::-webkit-scrollbar-thumb{background:rgba(148,163,184,.25)}.scrollbar-ghost-neutral:hover::-webkit-scrollbar-thumb:hover{background:rgba(148,163,184,.4)}.hover-scale-102:hover,.scale-102{transform:scale(1.02)}.green-25{background-color:rgba(108,192,74,.05)}.incentive-toast{position:fixed;bottom:24px;right:24px;max-width:400px;min-width:320px;background:#fff;border-radius:12px;padding:16px 16px 16px 20px;box-shadow:0 10px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);border:1px solid rgba(16,185,129,.2);border-left:4px solid var(--color-green-primary);z-index:45;opacity:0;transform:translateY(20px);transition:opacity .3s ease,transform .3s ease}.incentive-toast-enter{opacity:1;transform:translateY(0);animation:slideInUp .4s cubic-bezier(.16,1,.3,1)}.incentive-toast-exit{animation:fadeOut .3s ease forwards}.incentive-toast-progress-bar{position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-green-primary),var(--color-green-light));border-radius:0 0 12px 12px;animation:toast-progress 5s linear forwards;transform-origin:left}@keyframes toast-progress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@media (max-width:640px){.incentive-toast{bottom:88px;right:16px;left:16px;max-width:none;min-width:auto}}@keyframes subtle-glow{0%,to{box-shadow:0 0 20px rgba(34,197,94,.3),0 4px 6px -1px rgba(0,0,0,.1)}50%{box-shadow:0 0 30px rgba(34,197,94,.5),0 10px 15px -3px rgba(0,0,0,.1)}}.animate-subtle-glow{animation:subtle-glow 3s ease-in-out infinite}:root{--mobile-max:768px;--tablet-max:1024px}.safe-area-top{padding-top:max(1rem,env(safe-area-inset-top))}.safe-area-bottom{padding-bottom:max(1rem,env(safe-area-inset-bottom))}.safe-area-left{padding-left:max(1rem,env(safe-area-inset-left))}.safe-area-right{padding-right:max(1rem,env(safe-area-inset-right))}.safe-area-bottom-nav{padding-bottom:env(safe-area-inset-bottom)}@media (max-width:768px){input,select,textarea{font-size:16px!important}body{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}a,button{-webkit-tap-highlight-color:rgba(0,0,0,.1);-webkit-touch-callout:none}}.mobile-bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:40;background:linear-gradient(180deg,#1e293b,#0f172a);border-top:1px solid rgba(148,163,184,.2);box-shadow:0 -2px 10px rgba(0,0,0,.3)}.mobile-bottom-nav-grid{display:grid;grid-template-columns:repeat(5,1fr);height:64px}.mobile-bottom-nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;padding:.5rem;transition:all .2s ease-in-out;position:relative;cursor:pointer;border:none;background:transparent;color:#94a3b8}.mobile-bottom-nav-item:active{transform:scale(.95);opacity:.7}.mobile-bottom-nav-item.active{color:#60a5fa}.mobile-bottom-nav-item.primary{color:#6cc04a;transform:scale(1.1)}.mobile-bottom-nav-indicator{position:absolute;top:0;left:50%;transform:translateX(-50%);width:48px;height:4px;background:#60a5fa;border-radius:0 0 4px 4px}.mobile-bottom-nav-badge{position:absolute;top:4px;right:8px;min-width:20px;height:20px;padding:0 6px;background:#ef4444;color:#fff;font-size:11px;font-weight:600;border-radius:10px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px rgba(0,0,0,.2)}.mobile-bottom-nav-pulse{position:absolute;top:4px;right:8px;width:10px;height:10px;background:#3b82f6;border-radius:50%;animation:pulse-badge 2s ease-in-out infinite}@keyframes pulse-badge{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}.mobile-drawer-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;transition:opacity .3s ease-in-out}.mobile-drawer-backdrop.hidden{opacity:0;pointer-events:none}.mobile-drawer{position:fixed;top:0;right:0;bottom:0;width:320px;max-width:85vw;background:linear-gradient(180deg,#1e293b,#0f172a);box-shadow:-4px 0 20px rgba(0,0,0,.3);z-index:50;overflow-y:auto;overflow-x:hidden;transition:transform .3s cubic-bezier(.4,0,.2,1);-webkit-overflow-scrolling:touch}.mobile-drawer.closed{transform:translateX(100%)}.mobile-drawer.open{transform:translateX(0)}.mobile-drawer-header{position:-webkit-sticky;position:sticky;top:0;background:linear-gradient(180deg,#1e293b,#0f172a);display:flex;align-items:center;justify-content:space-between;z-index:10}.mobile-drawer-header,.mobile-drawer-user-card{border-bottom:1px solid rgba(148,163,184,.2);padding:1rem}.mobile-drawer-user-card{background:rgba(30,41,59,.5)}.mobile-drawer-menu-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;width:100%;border:none;background:transparent;text-align:left;cursor:pointer;transition:background-color .15s ease-in-out;color:#e2e8f0}.mobile-drawer-menu-item:hover{background:rgba(51,65,85,.5)}.mobile-drawer-menu-item.active,.mobile-drawer-menu-item.primary{background:rgba(59,130,246,.2);color:#60a5fa;border-left:3px solid #3b82f6}.mobile-drawer-menu-item.primary{font-weight:600}@media (max-width:768px){.stepper-container{padding:.25rem 0!important;margin-bottom:.5rem!important}.stepper-steps{justify-content:center;gap:0;padding:.25rem .5rem!important}.stepper-steps,.stepper-steps>div{flex-direction:row;align-items:center}.stepper-steps>div{gap:.5rem;padding:0;background:transparent;box-shadow:none}.stepper-steps>div>div:last-child{display:none}.stepper-steps>div>div:first-child{min-width:32px!important;width:32px!important;height:32px!important;min-height:32px!important}.stepper-steps>div>div:first-child svg{width:16px!important;height:16px!important}.stepper-steps .absolute{display:block;top:16px!important;height:2px!important}.stepper-steps .absolute:first-of-type{width:calc(100% - 80px)!important;left:40px!important}input[type=email],input[type=number],input[type=text],select,textarea{min-height:44px!important;padding:.75rem!important;font-size:16px!important;border-radius:.5rem!important}label{font-size:.875rem!important;margin-bottom:.5rem!important}.space-y-2>*+*{margin-top:1rem!important}button{min-height:44px;padding:.75rem 1rem}.ambiente-selector-grid{grid-template-columns:repeat(3,1fr)!important;gap:.75rem!important}.ambiente-selector-grid button{width:100%!important;height:64px!important}.bg-white.rounded-xl{border-radius:.75rem}button[type=button].w-full.p-4{padding:1rem!important}.nivel-peca-buttons{flex-wrap:nowrap!important;gap:.25rem!important;min-width:0!important}.nivel-peca-buttons button{flex:1!important;flex-shrink:1!important;min-width:0!important;padding:.4rem .35rem!important;font-size:.75rem!important;white-space:nowrap!important}.nivel-peca-buttons button span{display:flex!important;align-items:center!important;gap:.15rem!important;justify-content:center!important}.nivel-peca-buttons button span .ml-1{margin-left:0!important;font-size:.625rem!important}.ambientes-progress-header{position:-webkit-sticky;position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 1px 3px rgba(0,0,0,.1)}.ambientes-progress-header .overflow-x-auto{-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#cbd5e0 transparent}}@media (max-width:768px){.ambientes-progress-header .overflow-x-auto::-webkit-scrollbar{height:4px}.ambientes-progress-header .overflow-x-auto::-webkit-scrollbar-track{background:transparent}.ambientes-progress-header .overflow-x-auto::-webkit-scrollbar-thumb{background-color:#cbd5e0;border-radius:2px}.ambiente-column{transition:all .2s ease-in-out}.ambiente-progress-card{flex-shrink:0!important;white-space:normal!important}@media (max-width:374px){.ambiente-column{min-width:90px!important;max-width:90px!important}.ambiente-column h4{font-size:.6875rem!important}.ambiente-column span{font-size:.625rem!important}.ambiente-progress-card{min-width:90px!important;max-width:90px!important}}}@media (max-width:768px){.container-calcular{padding:0!important;margin:0!important;overflow-x:hidden!important}.bg-white.rounded-lg.shadow-sm{border-radius:.75rem;margin-bottom:1rem}table{font-size:.875rem}td,th{padding:.5rem!important}.gantt-container,.overflow-x-auto{-webkit-overflow-scrolling:touch}.gantt-container{overflow-x:auto;min-width:100%}.gantt-container>div{min-width:600px}canvas{max-width:100%;height:auto!important}.modal-overlay{padding:0!important}.modal-content,[role=dialog]:not(.mobile-drawer){width:100vw!important;height:100vh!important;max-width:100vw!important;max-height:100vh!important;margin:0!important;border-radius:0!important}.modal-header{position:-webkit-sticky;position:sticky;top:0;background:#fff;z-index:10;border-bottom:1px solid #e5e7eb;padding:1rem}.modal-body{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:1rem}.modal-footer{position:-webkit-sticky;position:sticky;bottom:0;background:#fff;border-top:1px solid #e5e7eb;padding:1rem 1rem max(1rem,env(safe-area-inset-bottom))}.mobile-drawer{width:320px!important;max-width:85vw!important}h1{font-size:1.75rem!important;line-height:1.2!important}h2{font-size:1.5rem!important;line-height:1.3!important}h3{font-size:1.25rem!important;line-height:1.4!important}p{font-size:.9375rem!important;line-height:1.5!important}.text-xs{font-size:.75rem!important}.text-sm{font-size:.875rem!important}.space-y-8>*+*{margin-top:1.5rem!important}.space-y-6>*+*{margin-top:1rem!important}.space-y-4>*+*{margin-top:.75rem!important}.container-calcular{padding-left:0!important;padding-right:0!important}.flex.space-x-4{width:100%;gap:.75rem}.bg-gray-500,.btn-calcular-primary,button[class*=px-6],button[class*=px-8]{width:100%;padding:.875rem 1.5rem!important;font-size:1rem!important;font-weight:600!important}.bg-gray-500{flex:0 0 auto;width:auto!important;min-width:120px}.btn-calcular-primary{flex:1}}@media (max-width:768px){.md\\:text-5xl,.text-4xl{font-size:2rem!important}.text-xl{font-size:1.125rem!important}.flex.items-center.space-x-2{flex-direction:row;align-items:center}.flex-row.space-x-8{display:grid!important;grid-template-columns:1fr;gap:1.25rem;justify-items:center;padding:0 1rem;max-width:100%}.flex-row.space-x-8>div{width:100%;max-width:320px;display:flex!important;justify-content:flex-start;align-items:center}.flex-row.space-x-8 .text-sm{font-size:.8125rem;line-height:1.3}}@media (max-width:374px){.flex-row.space-x-8{gap:1rem}.flex-row.space-x-8>div{max-width:280px}}@media (max-width:768px){.divide-y>div{padding:1rem!important}.space-x-2{flex-wrap:wrap;gap:.5rem}.space-x-2 a,.space-x-2 button{font-size:.75rem!important;padding:.5rem .75rem!important}.flex.gap-2{flex-wrap:wrap}}@media (max-width:768px){.grid.lg\\:grid-cols-4,.grid.md\\:grid-cols-3{grid-template-columns:1fr!important;gap:1rem!important}.plan-card{max-width:100%}.grid.grid-cols-2.md\\:grid-cols-4{grid-template-columns:repeat(2,1fr)!important;gap:.75rem!important}}@media (max-width:768px){.flex-1.flex.items-center.justify-center{padding:2rem 1rem}.budget-animation{scale:.9}.flex.items-center.justify-between.mb-6{flex-direction:column!important;align-items:flex-start!important;gap:1rem!important}.flex.items-center.justify-between.mb-6 button{width:100%!important}.flex.justify-between.items-start{flex-direction:column!important;gap:1rem!important}.flex.gap-2.ml-4{width:100%!important;margin-left:0!important;flex-direction:column!important;gap:.5rem!important}.flex.gap-2.ml-4 button{width:100%!important;justify-content:center!important}.flex-1.bg-white.rounded-lg.border.shadow-sm.p-6.overflow-y-auto{max-height:calc(100vh - 200px)!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important}.min-h-screen.flex.items-center.justify-center{min-height:100%!important;height:100%!important}.flex.items-start.justify-between.mb-8{flex-direction:column!important;align-items:center!important;gap:1rem!important;margin-bottom:1.5rem!important}.flex.items-start.justify-between.mb-8 .flex-1{width:100%!important}.flex.items-start.justify-between.mb-8 button{width:100%!important;margin-left:0!important}.flex.items-start.justify-between.mb-8 h1{font-size:1.5rem!important;line-height:1.25!important}.inline-flex.items-center.justify-center{flex-wrap:nowrap!important;white-space:nowrap!important}.inline-flex.items-center.justify-center span{white-space:nowrap!important}.flex.items-center.space-x-2{flex-wrap:nowrap!important}.flex.items-center.space-x-2 span{white-space:nowrap!important}.space-y-2>div[class*=border],.space-y-3>div[class*=border],.space-y-4>div[class*=border]{padding:1rem!important;min-height:auto!important}[class*=accordion],[class*=collapsible]{padding:.75rem!important}[class*=alert],[class*=balloon],[class*=notification],[class*=toast]{padding:.75rem 1rem!important;max-width:100%!important;word-wrap:break-word!important;overflow-wrap:break-word!important}[class*=balloon][class*=green],[class*=notification][class*=green]{min-height:auto!important;height:auto!important;display:flex!important;align-items:center!important}[class*=gantt]{overflow-x:auto!important;max-width:100%!important}[class*=chart-legend],[class*=legend]{flex-wrap:wrap!important;gap:.5rem!important}[class*=chart-legend]>div,[class*=legend]>div{max-width:none!important;overflow:visible!important;text-overflow:clip!important;white-space:normal!important}}@media (max-width:374px){h1{font-size:1.375rem!important;line-height:1.15!important}h2{font-size:1.125rem!important;line-height:1.25!important}h3{font-size:1rem!important;line-height:1.35!important}p{font-size:.8125rem!important;line-height:1.4!important}.text-xs{font-size:.6875rem!important}.text-sm{font-size:.8125rem!important}.text-xl{font-size:1rem!important}.md\\:text-5xl,.text-4xl{font-size:1.625rem!important;line-height:1.2!important}.space-y-8>*+*{margin-top:1rem!important}.space-y-6>*+*{margin-top:.75rem!important}.space-y-4>*+*{margin-top:.5rem!important}.container-calcular{padding-left:0!important;padding-right:0!important}button{min-height:40px!important;padding:.625rem .875rem!important;font-size:.875rem!important}.btn-calcular-primary{padding:.75rem 1rem!important}.stepper-container{padding:.25rem 0!important;margin-bottom:.5rem!important}.stepper-steps>div>div:first-child{min-width:28px!important;width:28px!important;height:28px!important;min-height:28px!important}.stepper-steps>div>div:first-child svg{width:14px!important;height:14px!important}input[type=email],input[type=number],input[type=text],select,textarea{min-height:40px!important;padding:.625rem!important}label{font-size:.8125rem!important}.plan-card{padding:.75rem!important}.grid button[class*=w-16]{height:48px!important;font-size:1rem!important}.mobile-drawer{width:280px!important;max-width:90vw!important}}@keyframes slideInRight{0%{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes slideOutRight{0%{transform:translateX(0)}to{transform:translateX(100%)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@media (max-width:768px){.content-with-bottom-nav{padding-bottom:80px}.mobile-typography h1{font-size:1.75rem;line-height:2rem}.mobile-typography h2{font-size:1.5rem;line-height:1.75rem}.mobile-typography h3{font-size:1.25rem;line-height:1.5rem}.mobile-card-compact{padding:.75rem}.mobile-touch-target{min-width:44px;min-height:44px}}.hide-mobile{@media (max-width:768px){display:none!important}}.show-mobile{display:none;@media (max-width:768px){display:block}}.no-scroll{overflow:hidden;position:fixed;width:100%}.no-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.no-scrollbar::-webkit-scrollbar{display:none}