/* actuaria+ App — capa neumórfica (se carga después de app.css)
   Base DS §34: superficie fría compartida, doble sombra, sin bordes, hundido al presionar */
:root{
  --surf:#f4f5f9; --surf-2:#f7f8fb;
  --neu-dark:#dfe2ec; --neu-light:#ffffff;
  --neu-r:5px 5px 12px var(--neu-dark),-5px -5px 12px var(--neu-light);
  --neu-r-sm:3px 3px 7px var(--neu-dark),-3px -3px 7px var(--neu-light);
  --neu-r-lg:9px 9px 20px var(--neu-dark),-9px -9px 20px var(--neu-light);
  --neu-in:inset 3px 3px 6px var(--neu-dark),inset -3px -3px 6px var(--neu-light);
  --neu-in-sm:inset 2px 2px 4px var(--neu-dark),inset -2px -2px 4px var(--neu-light);
  --paper:var(--surf); --card:var(--surf); --card-2:var(--surf-2);
  --line:rgba(21,31,71,.09); --stroke-weak:rgba(21,31,71,.1);
  --text-strong:#1b2340; --text-weak:#4d5570; --text-mute:#8a92ad;
  --shadow-sm:none;
  --shadow-overlay:0 18px 40px -14px rgba(21,31,71,.28),0 6px 16px -8px rgba(21,31,71,.16);
}
html,body{background:var(--surf)}

/* shell */
.sb{background:var(--surf);border-right:none;box-shadow:6px 0 16px -12px rgba(21,31,71,.16)}
.sb__item{border:none}
.sb__item:hover{background:rgba(21,31,71,.045)}
.sb__item.on{background:var(--surf);border:none;box-shadow:var(--neu-in-sm);color:var(--blue-deep)}
.sb__toggle:hover{background:rgba(21,31,71,.05)}
.tb{background:rgba(235,238,246,.86);border-bottom:none;box-shadow:0 10px 24px -18px rgba(21,31,71,.3)}
.tb__search{background:var(--surf);border:none;box-shadow:var(--neu-in-sm);border-radius:10px}
.tb__search kbd{background:var(--surf);border:none;box-shadow:var(--neu-r-sm);border-radius:5px}
.tb__navia{border:none;background:var(--surf);box-shadow:var(--neu-r-sm);border-radius:10px}
.tb__navia:hover{background:var(--surf);color:var(--blue)}
.tb__navia:active{box-shadow:var(--neu-in-sm)}
.tb__bell,.tb__co{background:var(--surf);border:none;box-shadow:var(--neu-r-sm);border-radius:10px}
.tb__bell:hover,.tb__co:hover{border:none;color:var(--text-strong)}
.tb__bell:active,.tb__co:active{box-shadow:var(--neu-in-sm)}
.tb__menu{background:var(--surf-2);border:none;box-shadow:var(--shadow-overlay);border-radius:14px}
.tb__menu .it:hover{background:rgba(21,31,71,.05)}

/* botones — planos se vuelven soft: el primario mantiene tinta con elevación real */
.btn{border-radius:10px}
.btn-primary{box-shadow:0 8px 18px -8px rgba(21,31,71,.45);border-color:transparent}
.btn-primary:active{transform:translateY(1px);box-shadow:0 4px 10px -6px rgba(21,31,71,.4)}
.btn-secondary{background:var(--surf);border:none;box-shadow:var(--neu-r-sm)}
.btn-secondary:hover{background:var(--surf);border:none;color:var(--blue-deep)}
.btn-secondary:active{box-shadow:var(--neu-in-sm)}

/* tarjetas */
.card{background:var(--surf);border:none;box-shadow:var(--neu-r);border-radius:16px}
.mod{background:var(--surf);border:none;box-shadow:var(--neu-r);border-radius:16px}
.mod:hover{border:none;box-shadow:var(--neu-r-lg)}
.mod__icon{background:var(--surf);border:none;box-shadow:var(--neu-in-sm);border-radius:10px}
.modw{background:var(--surf);border:none;box-shadow:var(--neu-r);border-radius:16px}
.modw:hover{border:none;box-shadow:var(--neu-r-lg)}
.modw__icon{background:var(--surf);border:none;box-shadow:var(--neu-in-sm);border-radius:10px}
.mkpi,.exB .k,.exB .mk{background:var(--surf);border:none;box-shadow:var(--neu-r);border-radius:14px}
.exA{background:transparent;border:none;gap:14px;overflow:visible}
.exA .k{background:var(--surf);box-shadow:var(--neu-r);border-radius:16px}
.omni{background:var(--surf);border:none;box-shadow:var(--neu-r);border-radius:16px}
.omni__chip{background:var(--surf);border:none;box-shadow:var(--neu-r-sm);border-radius:999px}
.omni__chip:hover{background:var(--surf);border:none}
.omni__chip:active{box-shadow:var(--neu-in-sm)}
.omni__kbd{background:var(--surf);border:none;box-shadow:var(--neu-r-sm)}
.helpband{background:var(--surf);border:none;box-shadow:var(--neu-r);border-radius:16px}
.helpband .ic{background:var(--surf);border:none;box-shadow:var(--neu-in-sm)}
.empty .ic{box-shadow:var(--neu-in-sm);background:var(--surf);color:var(--blue)}

/* listados, filtros, tablas */
.ltb__tabs{background:var(--surf);border:none;box-shadow:var(--neu-in-sm);border-radius:12px;padding:4px}
.ltb__tab.on{background:var(--surf);box-shadow:var(--neu-r-sm);border-radius:9px}
.ltb__search{background:var(--surf);border:none;box-shadow:var(--neu-in-sm);border-radius:10px}
.sel{background:var(--surf);border:none;box-shadow:var(--neu-r-sm);border-radius:10px}
.sel:active{box-shadow:var(--neu-in-sm)}
.fils{background:var(--surf);border:none;box-shadow:var(--neu-r);border-radius:14px}
.tblft button{background:var(--surf);border:none;box-shadow:var(--neu-r-sm);border-radius:8px}
.tblft button:disabled{box-shadow:none;background:rgba(21,31,71,.05)}
.tbl tr:hover td{background:rgba(255,255,255,.45)}
.scen .row{background:var(--surf);border:none;box-shadow:var(--neu-r-sm);border-radius:12px}
.scen .row:hover{border:none}
.scen .row.hl{border:none;background:var(--surf);box-shadow:var(--neu-in-sm)}
.bmk .track{background:var(--surf);box-shadow:var(--neu-in-sm)}
.stepper i.cur{background:var(--surf)}

/* drawer NavIA */
.ndrawer{background:var(--surf-2);border-left:none;box-shadow:-28px 0 60px -24px rgba(21,31,71,.3)}
.nmsg .bub{background:var(--surf);border:none;box-shadow:var(--neu-r-sm);border-radius:14px}
.nmsg.user .bub{background:var(--surf);box-shadow:var(--neu-in-sm);color:var(--blue-deep)}
.nmsg .bub .ref{background:var(--surf);border:none;box-shadow:var(--neu-r-sm)}
.ndrawer__ctx{background:var(--surf);border:none;box-shadow:var(--neu-in-sm);border-radius:10px}
.ndrawer__in{border:none;background:var(--surf);box-shadow:var(--neu-in-sm);border-radius:12px}
.ndrawer__in:focus-within{border:none;box-shadow:var(--neu-in-sm),0 0 0 3px rgba(30,86,227,.14)}
.ndrawer__in button{box-shadow:0 5px 10px -5px rgba(21,31,71,.4);border-radius:8px}

/* login */
.lg2{background:var(--surf)}
.lg2__card{background:var(--surf);border:none;box-shadow:var(--neu-r-lg);border-radius:20px}
.lg2__side{background:var(--surf-2);border-right:1px solid var(--line)}
.cf input{background:var(--surf);border:none;box-shadow:var(--neu-in-sm);border-radius:10px}
.cf input:focus{border:none;box-shadow:var(--neu-in-sm),0 0 0 3px rgba(30,86,227,.14)}

/* planes y pago */
.plan{background:var(--surf);border:none;box-shadow:var(--neu-r);border-radius:16px}
.plan--feat{border:none;box-shadow:var(--neu-r-lg),0 0 0 2px rgba(30,86,227,.28)}
.brow{background:var(--surf);border:none;box-shadow:var(--neu-r-sm);border-radius:12px}
.brow--base{background:var(--surf);box-shadow:var(--neu-in-sm)}
.brow--on{border:none;box-shadow:var(--neu-in-sm),0 0 0 2px rgba(30,86,227,.22);background:var(--surf)}
/* plan seleccionado: el borde plano se traduce en relieve más anillo */
.plan--pick:hover{border:none;box-shadow:var(--neu-r-lg),0 0 0 1px rgba(21,31,71,.08)}
.plan--pick.is-sel,.plan--feat.plan--pick.is-sel{border:none;box-shadow:var(--neu-r-lg),0 0 0 2px rgba(30,86,227,.34)}
.resumen.is-sel{border:none;box-shadow:var(--neu-r),0 0 0 2px rgba(30,86,227,.34)}
.pbar{background:rgba(235,238,246,.9);border-top:none;box-shadow:0 -12px 28px -20px rgba(21,31,71,.4)}
.sw{background:var(--surf);box-shadow:var(--neu-in-sm)}
.sw i{box-shadow:2px 2px 5px var(--neu-dark),-1px -1px 3px var(--neu-light)}
.sw.on{background:var(--blue);box-shadow:inset 2px 2px 4px rgba(0,0,0,.22)}
.cyc__opt{background:var(--surf);border:none;box-shadow:var(--neu-r-sm);border-radius:12px}
.cyc__opt.on{border:none;box-shadow:var(--neu-in-sm),0 0 0 2px rgba(30,86,227,.24)}
.mets__opt{background:var(--surf);border:none;box-shadow:var(--neu-r-sm);border-radius:10px}
.mets__opt.on{background:var(--surf);border:none;box-shadow:var(--neu-in-sm);color:var(--blue-deep)}
.sizeseg{background:var(--surf);border:none;box-shadow:var(--neu-in-sm);border-radius:14px}
.sizeseg button.on{background:var(--surf);box-shadow:var(--neu-r-sm);outline:none;border-radius:10px}
.upl{background:var(--surf);box-shadow:var(--neu-in-sm);border:1.5px dashed rgba(21,31,71,.16);border-radius:14px}
.upl:hover{border-color:rgba(30,86,227,.4)}
.uplfile{background:var(--surf);border:none;box-shadow:var(--neu-r-sm);border-radius:12px}
.valbox{box-shadow:var(--neu-in-sm);background:var(--surf)}
.avisobox{box-shadow:var(--neu-in-sm)}

/* landing interna de módulo, modales, tour */
.mlp{background:var(--surf-2);border:none;box-shadow:var(--neu-r-lg);border-radius:16px}
.mlvid{background:var(--surf);border:none;box-shadow:var(--neu-in);border-radius:16px}
.mlvid__play{box-shadow:0 12px 24px -10px rgba(21,31,71,.5)}
.mdl__card{background:var(--surf-2);border:none;box-shadow:var(--shadow-overlay);border-radius:16px}
.coach__card{background:var(--surf-2);border:none;box-shadow:var(--shadow-overlay);border-radius:16px}
.coach__who .ic{background:var(--surf);box-shadow:var(--neu-in-sm)}
