@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');
/* Shared visual language, based on the Cotizaciones workspace. */
:root{--bmi-green:#116348;--bmi-green-deep:#084a36;--bmi-green-soft:#e8f4ed;--bmi-canvas:#f7faf8;--bmi-ink:#172c2a;--bmi-muted:#6e817c;--bmi-line:#e6eeeb;--bmi-shadow:0 5px 22px #193d3009;--green:var(--bmi-green);--g:var(--bmi-green);--ink:var(--bmi-ink);--muted:var(--bmi-muted);--mut:var(--bmi-muted);--line:var(--bmi-line);--canvas:var(--bmi-canvas);--surface:#fff;--soft:#e8f4ed;--shadow:var(--bmi-shadow)}
html{background:var(--bmi-canvas)}body.bmi-unified{margin:0;background:var(--bmi-canvas);color:var(--bmi-ink);font-family:'DM Sans',Arial,sans-serif}
.bmi-unified :is(button,input,select,textarea){font-family:inherit}
.bmi-unified :is(h1,h2,h3){font-family:Manrope,'DM Sans',Arial,sans-serif}
.bmi-unified h1{font-size:clamp(25px,3vw,32px);line-height:1.2;letter-spacing:-.8px}
.bmi-unified :is(.topbar,.top,.bmi-module-header){min-height:72px;height:auto;padding:12px 28px;gap:14px;background:#fff!important;box-shadow:none!important;border-bottom:1px solid var(--bmi-line)!important}
.bmi-unified :is(.card,.panel,.metric,.area,.hero,.loginCard){border-color:var(--bmi-line);border-radius:12px;box-shadow:var(--bmi-shadow)}
.bmi-unified .area{min-height:200px}.bmi-unified .area h3{font-size:20px}.bmi-unified .area:hover{transform:translateY(-2px);border-color:#b7d6c5}
.bmi-unified :is(.areaIcon,.version){background:#e8f4ed;color:var(--bmi-green)}
.bmi-unified :is(.shell,main){padding-top:32px}.bmi-unified .intro{margin-bottom:28px}.bmi-unified .intro p{font-size:14px}
.bmi-unified .statusPanel{background:#e8f4ed;color:#084a36;box-shadow:none;border:1px solid #d6e9de;border-radius:12px}.bmi-unified .statusPanel :is(span,small){color:#557565}
.bmi-unified :is(.primary,.btn.primary){background:var(--bmi-green)}
.bmi-unified :is(table th){background:#f8fbf9;color:#60786c}
.bmi-unified :is(button,a,input,select,textarea):focus-visible{outline:3px solid #87bda4;outline-offset:3px}
.bmi-shell-panel{box-sizing:border-box;font-family:'DM Sans',Arial,sans-serif;padding:24px 16px;background:#fff}.bmi-shell-head{gap:10px;padding-bottom:22px}.bmi-shell-head strong{font-family:Manrope,Arial,sans-serif}.bmi-shell-head img{object-fit:contain}
.bmi-shell-nav{display:flex;flex-direction:column;white-space:normal;overflow:visible;gap:4px;margin:0;padding:18px 0}.bmi-shell-nav a{font-size:13px;font-weight:600;min-height:42px;line-height:1.35;border-radius:8px;padding:10px 12px}.bmi-shell-nav a.active{background:#e8f4ed;color:#116348;box-shadow:inset 3px 0 #116348}.bmi-shell-nav .sub{font-size:12px;margin-left:12px}.bmi-shell-nav [hidden]{display:none!important}
.bmi-shell-logout{font:600 13px 'DM Sans',Arial,sans-serif}.bmi-shell-panel a:focus-visible{outline:3px solid #87bda4;outline-offset:-2px}
@media(max-width:760px){.bmi-unified :is(.topbar,.top,.bmi-module-header){padding:10px 12px}.bmi-unified :is(.shell,main){padding-top:22px}.bmi-shell-panel{padding:18px 14px}}
@media(prefers-reduced-motion:reduce){.bmi-shell-panel,.bmi-shell-backdrop,.bmi-unified .area{transition:none}}
@media print{body.bmi-unified{padding-left:0!important}.bmi-shell-drawer,.bmi-menu-toggle{display:none!important}}

/* Compact, balanced entry cards for Desarrollo Humano. */
.loginGate .loginCardMinimal{width:min(360px,100%);padding:0;border:0;box-shadow:none;background:transparent}
.loginCardMinimal .primary{width:100%;min-height:48px;border-radius:10px;background:var(--bmi-green);font:700 15px 'DM Sans',Arial,sans-serif;box-shadow:var(--bmi-shadow)}
.loginCardMinimal .primary:hover{background:var(--bmi-green-deep)}
.bmi-human-home .shell{width:min(1080px,calc(100% - 64px));padding:36px 0}
.bmi-human-home .shell>h1{margin:8px 0 10px}
.bmi-human-home .shell>p{font-size:14px;margin:0}
.bmi-human-home .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:26px}
.bmi-human-home .app{display:grid;grid-template-columns:40px minmax(0,1fr);grid-template-rows:auto 1fr auto;column-gap:14px;row-gap:10px;min-height:176px;padding:22px;border-radius:12px;border-color:var(--bmi-line);box-shadow:var(--bmi-shadow)}
.bmi-human-home .app .icon{width:40px;height:40px;border-radius:10px;font-size:13px;grid-column:1;grid-row:1}
.bmi-human-home .app h2{grid-column:2;align-self:center;font-size:19px;line-height:1.3;margin:0;letter-spacing:-.3px}
.bmi-human-home .app p{grid-column:2;font-size:14px;line-height:1.5;margin:0}
.bmi-human-home .app .open{grid-column:2;font-size:13px;padding-top:6px;gap:16px}
@media(max-width:760px){.bmi-human-home .shell{width:calc(100% - 32px);padding:24px 0}.bmi-human-home .grid{grid-template-columns:1fr;gap:12px;margin-top:20px}.bmi-human-home .app{padding:18px;min-height:152px}.bmi-human-home .app h2{font-size:18px}}
