/* ENROOT DESIGN SYSTEM — v2.7 REBUILD
   Recurso compartido regenerado desde cero.
*/
:root{
  --en-bg:#F7F8FA;
  --en-surface:#FFFFFF;
  --en-surface-subtle:#F1F3F6;
  --en-surface-strong:#E7EAF0;

  --en-ink:#000000;
  --en-ink-2:#25282D;
  --en-muted:#5E626B;
  --en-line:#D9DDE5;
  --en-line-strong:#B8BEC9;

  --en-brand-900:#002FA7;
  --en-brand-800:#002B99;
  --en-brand-700:#0038C7;
  --en-brand-100:#DDE7FF;
  --en-brand-050:#F2F6FF;

  --en-anthracite:#2B2D31;
  --en-black:#000000;
  --en-white:#FFFFFF;

  --en-success:#285C45;
  --en-success-bg:#EAF3EE;
  --en-warning:#6C5317;
  --en-warning-bg:#FBF4DF;
  --en-danger:#842F35;
  --en-danger-bg:#FAECEE;
  --en-info:#2E5070;
  --en-info-bg:#EAF1F7;

  --en-radius-xs:6px;
  --en-radius-sm:9px;
  --en-radius-md:14px;
  --en-radius-lg:18px;
  --en-radius-xl:24px;
  --en-radius-pill:999px;

  --en-space-1:4px;
  --en-space-2:8px;
  --en-space-3:12px;
  --en-space-4:16px;
  --en-space-5:20px;
  --en-space-6:24px;
  --en-space-8:32px;
  --en-space-10:40px;
  --en-space-12:48px;
  --en-space-16:64px;
  --en-space-20:80px;

  --en-shadow-1:0 1px 2px rgba(0,0,0,.04),0 3px 10px rgba(0,0,0,.04);
  --en-shadow-2:0 10px 34px rgba(0,47,167,.10);

  --en-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Helvetica,Arial,sans-serif;
  --en-mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;
  --en-ease:cubic-bezier(.2,.8,.2,1);
  --en-fast:140ms;
  --en-normal:220ms;
}
*{box-sizing:border-box}
html{color-scheme:light;scroll-behavior:smooth}
body{font-family:var(--en-font)!important;color:var(--en-ink)!important;background:var(--en-bg)!important;line-height:1.5;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
::selection{background:var(--en-brand-100);color:var(--en-ink)}
a{color:var(--en-brand-800)}
h1,h2,h3,h4,h5,h6{color:var(--en-ink);text-wrap:balance}
h1{font-weight:760;letter-spacing:-.045em}h2{font-weight:720;letter-spacing:-.032em}h3{font-weight:680;letter-spacing:-.018em}
p{max-width:75ch}.lead{color:var(--en-ink-2)!important;line-height:1.55}.small,.note,.sub{color:var(--en-muted)!important}
.eyebrow{color:var(--en-muted)!important;font-size:11px!important;line-height:1.3;font-weight:750!important;letter-spacing:.11em!important}
.brand{color:var(--en-brand-900)!important;font-weight:820!important;letter-spacing:.11em!important}
.card,.modal,.scenario,.tpoint,.action-card,.ev-card,.benefit,.qbox,.unc,.meta,.box{border-color:var(--en-line)!important}
.card,.box{border-radius:var(--en-radius-md)!important;box-shadow:var(--en-shadow-1)}
.card:hover{border-color:var(--en-line-strong)!important}.soft{background:var(--en-surface-subtle)!important}
.sidebar,.topbar,.nav{background:rgba(255,255,255,.97)!important;border-color:var(--en-line)!important}
.navitem{border-radius:var(--en-radius-sm)!important;transition:background var(--en-fast) var(--en-ease),color var(--en-fast) var(--en-ease)}
.navitem:hover{background:var(--en-brand-050)!important}.navitem.active{background:var(--en-brand-900)!important;color:#fff!important}.navlabel{color:var(--en-muted)!important}
.btn,button.btn{min-height:40px;border-radius:var(--en-radius-sm)!important;background:var(--en-brand-900)!important;border:1px solid var(--en-brand-900)!important;color:#fff!important;font-weight:700!important;box-shadow:none!important;transition:transform var(--en-fast) var(--en-ease),background var(--en-fast) var(--en-ease),border-color var(--en-fast) var(--en-ease)}
.btn:hover{background:var(--en-brand-800)!important;border-color:var(--en-brand-800)!important;transform:translateY(-1px)}.btn:active{transform:none}
.btn.secondary,.btn.ghost{background:#fff!important;color:var(--en-brand-900)!important;border-color:var(--en-line-strong)!important}
.btn.secondary:hover,.btn.ghost:hover{background:var(--en-brand-050)!important;border-color:var(--en-brand-700)!important}
button:disabled,.btn:disabled{opacity:.45!important;cursor:not-allowed!important;transform:none!important}
input,select,textarea{min-height:42px;border:1px solid var(--en-line-strong)!important;border-radius:var(--en-radius-sm)!important;background:#fff!important;color:var(--en-ink)!important}
input:hover,select:hover,textarea:hover{border-color:#8EA29A!important}input::placeholder,textarea::placeholder{color:#82908A}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid #2B7562!important;outline-offset:3px!important;box-shadow:0 0 0 2px #fff!important}
.badge,.chip{border-radius:var(--en-radius-pill)!important;border-color:var(--en-line)!important;background:var(--en-surface-subtle);color:var(--en-ink-2);font-weight:720}
.badge.high{background:var(--en-danger-bg)!important;color:var(--en-danger)!important}.badge.med{background:var(--en-warning-bg)!important;color:var(--en-warning)!important}
.delta.pos,.up,.ok{color:var(--en-success)!important}.delta.neg,.down,.err{color:var(--en-danger)!important}.warn{color:var(--en-warning)!important}
.metric .value,.big,.score,.index-inner strong,.pct-ring strong{font-variant-numeric:tabular-nums;color:var(--en-ink)}
.table,.dim-table,.trade-table,.preview{border-color:var(--en-line)!important;border-radius:var(--en-radius-md)!important;box-shadow:var(--en-shadow-1)}
.tr.head,.dim-row.head{background:var(--en-surface-subtle)!important}.tr,.dim-row{border-color:var(--en-line)!important}
.modal-bg{backdrop-filter:blur(3px);background:rgba(10,24,19,.48)!important}.modal{border:1px solid var(--en-line)!important;border-radius:var(--en-radius-lg)!important;box-shadow:var(--en-shadow-2)!important}
.close{width:40px;height:40px;min-height:40px;border-radius:var(--en-radius-sm)!important;display:inline-grid;place-items:center;color:var(--en-ink)!important}
.close:hover{background:var(--en-surface-subtle)!important}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.enroot-legal-mini{margin-top:14px;padding-top:14px;border-top:1px solid var(--en-line);font-size:10.5px;line-height:1.45;color:var(--en-muted)}
.enroot-legal-mini a{color:inherit;text-decoration:underline;text-underline-offset:2px}.enroot-legal-mini>div{margin-top:5px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
@media(max-width:900px){.btn,button,.navitem,.option,.check,a.navitem{min-height:44px}}
@media(max-width:640px){body{font-size:15px}.content{padding-left:16px!important;padding-right:16px!important}}
/* ENROOT v2.9.1 — visual normalization only */
html,body{
  background:var(--en-bg)!important;
  color:var(--en-ink)!important;
}

body,
p,
li,
td,
th,
label,
span{
  color:inherit;
}

h1,h2,h3,h4,h5,h6{
  color:var(--en-black)!important;
}

a{
  color:var(--en-brand-900)!important;
}

.eyebrow,
.small,
.note,
.sub,
.navlabel{
  color:var(--en-muted)!important;
}

.sidebar,
.topbar,
.nav,
.card,
.box,
.modal,
.preview,
.scenario,
.table,
.preview,
.result-box,
.calc-box{
  background:var(--en-white)!important;
}

.sidebar,
.topbar,
.nav,
.card,
.box,
.modal,
.preview,
.scenario,
.table,
.result-box,
.calc-box,
input,
select,
textarea{
  border-color:var(--en-line)!important;
}

.brand,
.logo{
  color:var(--en-brand-900)!important;
}

.navitem{
  color:var(--en-anthracite)!important;
}

.navitem:hover{
  background:var(--en-brand-050)!important;
  color:var(--en-brand-900)!important;
}

.navitem.active{
  background:var(--en-brand-900)!important;
  color:var(--en-white)!important;
}

.btn,
button.btn,
a.btn,
input[type="submit"],
input[type="button"]{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:42px!important;
  height:auto!important;
  line-height:1.2!important;
  padding:10px 16px!important;
  border-radius:10px!important;
  border:1px solid var(--en-brand-900)!important;
  background:var(--en-brand-900)!important;
  color:var(--en-white)!important;
  font-family:var(--en-font)!important;
  font-size:14px!important;
  font-weight:700!important;
  text-align:center!important;
  text-decoration:none!important;
  vertical-align:middle!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  box-shadow:none!important;
  cursor:pointer;
}

.btn:hover,
button.btn:hover,
a.btn:hover,
input[type="submit"]:hover,
input[type="button"]:hover{
  background:var(--en-brand-800)!important;
  border-color:var(--en-brand-800)!important;
  color:var(--en-white)!important;
  transform:translateY(-1px);
}

.btn:active,
button.btn:active,
a.btn:active{
  transform:none!important;
}

.btn.secondary,
.btn.ghost,
button.btn.secondary,
button.btn.ghost,
a.btn.secondary,
a.btn.ghost{
  background:var(--en-white)!important;
  color:var(--en-brand-900)!important;
  border-color:var(--en-brand-900)!important;
}

.btn.secondary:hover,
.btn.ghost:hover,
button.btn.secondary:hover,
button.btn.ghost:hover,
a.btn.secondary:hover,
a.btn.ghost:hover{
  background:var(--en-brand-050)!important;
  color:var(--en-brand-900)!important;
  border-color:var(--en-brand-900)!important;
}

button:disabled,
.btn:disabled{
  opacity:.45!important;
  cursor:not-allowed!important;
  transform:none!important;
}

input,
select,
textarea{
  background:var(--en-white)!important;
  color:var(--en-black)!important;
}

input:focus-visible,
select:focus-visible,
textarea:focus-visible,
button:focus-visible,
a:focus-visible,
[tabindex]:focus-visible{
  outline:3px solid var(--en-brand-900)!important;
  outline-offset:3px!important;
  box-shadow:0 0 0 2px var(--en-white)!important;
}

.metric,
.tr.head,
.dim-row.head,
.soft,
.badge,
.chip{
  background:var(--en-surface-subtle)!important;
}

.callout,
.explain{
  border-left-color:var(--en-brand-900)!important;
  background:var(--en-brand-050)!important;
}

.bar span{
  background:var(--en-brand-900)!important;
}

.ask{
  background:var(--en-anthracite)!important;
}

.ask h1,
.ask h2,
.ask h3,
.ask p,
.ask .eyebrow{
  color:var(--en-white)!important;
}

footer,
.footer{
  background:var(--en-white)!important;
  color:var(--en-anthracite)!important;
}

.enroot-legal-mini{
  color:var(--en-muted)!important;
}

.enroot-legal-mini a{
  color:var(--en-brand-900)!important;
}

@media(max-width:640px){
  .btn,
  button.btn,
  a.btn{
    width:100%;
    min-height:44px!important;
    padding:11px 14px!important;
  }
}


/* ENROOT cookie consent — v2.9.3 */
.enroot-consent-banner{position:fixed;left:18px;right:18px;bottom:18px;z-index:9999;background:var(--en-white);border:1px solid var(--en-line);border-radius:14px;box-shadow:var(--en-shadow-2);padding:18px}
.enroot-consent-inner{max-width:1180px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px}
.enroot-consent-copy{max-width:720px}
.enroot-consent-copy strong{display:block;margin-bottom:5px;color:var(--en-black)}
.enroot-consent-copy p{margin:0 0 4px;font-size:13px;line-height:1.5;color:var(--en-anthracite)}
.enroot-consent-copy a,.enroot-consent-modal a{font-size:12px;color:var(--en-brand-900)!important}
.enroot-consent-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.enroot-consent-modal{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(0,0,0,.48);backdrop-filter:blur(3px)}
.enroot-consent-modal-card{width:min(680px,100%);max-height:min(760px,calc(100vh - 40px));overflow:auto;background:var(--en-white);border:1px solid var(--en-line);border-radius:18px;padding:26px;box-shadow:var(--en-shadow-2)}
.enroot-consent-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}
.enroot-consent-modal-head h2{margin:5px 0 0}
.enroot-consent-close{width:40px;height:40px;min-height:40px;padding:0;border:1px solid var(--en-line);border-radius:10px;background:var(--en-white);color:var(--en-black);font-size:24px;line-height:1;cursor:pointer}
.enroot-consent-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:17px 0;border-top:1px solid var(--en-line)}
.enroot-consent-row strong{display:block;margin-bottom:4px}
.enroot-consent-row p{margin:0;font-size:13px;color:var(--en-muted)}
.enroot-consent-always{white-space:nowrap;font-size:12px;font-weight:700;color:var(--en-muted)}
.enroot-consent-toggle-row{cursor:pointer}
.enroot-consent-toggle-row input{flex:0 0 auto;width:22px;height:22px;min-height:22px;accent-color:var(--en-brand-900)}
.enroot-consent-modal-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:20px;border-top:1px solid var(--en-line)}
@media(max-width:720px){
  .enroot-consent-banner{left:10px;right:10px;bottom:10px}
  .enroot-consent-inner,.enroot-consent-row,.enroot-consent-modal-actions{align-items:stretch;flex-direction:column}
  .enroot-consent-actions{display:grid;grid-template-columns:1fr;width:100%}
  .enroot-consent-actions .btn,.enroot-consent-modal-actions .btn{width:100%}
}



/* ENROOT UI spacing + organization control — v2.9.4 */
.btn,
button.btn,
a.btn{
  min-height:44px!important;
  padding:11px 18px!important;
  line-height:1.25!important;
  gap:8px!important;
}

.cta-row,
.footer-actions,
.right-actions,
.issue-actions,
.login-actions,
.enroot-consent-actions,
.upload{
  gap:12px!important;
}

.card > .btn,
.card > a.btn,
.box > .btn,
.box > a.btn,
.result-box > .btn,
.result-box > a.btn{
  margin-top:12px;
}

.topin{
  min-height:68px;
  padding-top:10px!important;
  padding-bottom:10px!important;
}

.org-switcher{
  appearance:none;
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:36px;
  max-width:min(420px,62vw);
  padding:4px 7px 4px 0;
  border:0;
  background:transparent;
  color:var(--en-black);
  font:inherit;
  font-weight:750;
  line-height:1.25;
  text-align:left;
  cursor:pointer;
  border-radius:8px;
}

.org-switcher:hover{
  color:var(--en-brand-900);
}

.org-switcher:focus-visible{
  outline:3px solid var(--en-brand-900)!important;
  outline-offset:3px!important;
}

.org-switcher [data-org-name]{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.org-chevron{
  flex:0 0 auto;
  color:var(--en-muted);
  font-size:15px;
}

.enroot-org-modal{
  position:fixed;
  inset:0;
  z-index:10020;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(0,0,0,.48);
  backdrop-filter:blur(3px);
}

.enroot-org-card{
  width:min(560px,100%);
  background:var(--en-white);
  border:1px solid var(--en-line);
  border-radius:18px;
  padding:28px;
  box-shadow:var(--en-shadow-2);
}

.enroot-org-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}

.enroot-org-head h2{
  margin:5px 0 0;
}

.enroot-org-close{
  flex:0 0 auto;
  width:40px;
  height:40px;
  border:1px solid var(--en-line);
  border-radius:10px;
  background:var(--en-white);
  color:var(--en-black);
  font-size:24px;
  line-height:1;
  cursor:pointer;
}

.enroot-org-field{
  display:grid;
  gap:7px;
  margin-top:20px;
  font-size:13px;
  font-weight:700;
}

.enroot-org-field input{
  width:100%;
  min-height:44px;
  padding:10px 12px;
}

.enroot-org-actions{
  display:flex;
  justify-content:flex-end;
  gap:12px;
  margin-top:22px;
}

@media(max-width:640px){
  .topin{
    padding-top:8px!important;
    padding-bottom:8px!important;
  }

  .org-switcher{
    max-width:72vw;
  }

  .enroot-org-card{
    padding:22px;
  }

  .enroot-org-actions{
    flex-direction:column-reverse;
  }

  .enroot-org-actions .btn{
    width:100%;
  }

  .cta-row,
  .footer-actions,
  .right-actions,
  .issue-actions,
  .login-actions,
  .upload{
    row-gap:10px!important;
  }
}

