/* ==========================================================================
   Mi cuenta (innovarhlatam.com/cuenta) — hoja escrita a mano, fuera del build.

   El Tailwind del sitio esta PURGADO: una clase que no este ya en uso no
   existe. Todo lo de estas paginas empieza con `cta-` y usa las variables
   HSL del sitio (--primary, --foreground, --border, --radius...), asi el
   color y la tipografia son los de siempre. Se carga despues del CSS del
   build y de motion.css.
   ========================================================================== */

.cta-body{background:hsl(var(--background));color:hsl(var(--foreground))}
.cta-main{padding:7.5rem 1.25rem 4rem;margin:0 auto;width:100%}
.cta-main-angosto{max-width:30rem}
.cta-main-medio{max-width:44rem}
.cta-main-ancho{max-width:72rem}
@media (min-width:640px){.cta-main{padding-left:2rem;padding-right:2rem}}

/* ------------------------------ tipografia ----------------------------- */
.cta-title{font-family:var(--font-serif,"Source Serif 4",Georgia,serif);font-size:clamp(1.7rem,1.2rem + 1.6vw,2.3rem);font-weight:700;line-height:1.15;letter-spacing:-.01em;margin:0 0 .6rem}
.cta-h2{font-size:1.05rem;font-weight:700;margin:0 0 .6rem}
.cta-lead{margin:0 0 1.25rem;font-size:1rem;line-height:1.55;color:hsl(var(--muted-foreground))}
.cta-muted{color:hsl(var(--muted-foreground));line-height:1.55;font-size:.94rem}
.cta-small{font-size:.82rem}
.cta-strong{font-weight:700;margin:0 0 .15rem;word-break:break-word}
.cta-center{text-align:center}
.cta-link{color:hsl(var(--primary));font-weight:600;text-decoration:underline;text-underline-offset:.15em}
.cta-link:hover{color:hsl(var(--primary) / .85)}
.cta-tag{display:inline-block;margin:.4rem 0 0;border:1px solid hsl(var(--border));border-radius:999px;padding:.1rem .6rem;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:hsl(var(--muted-foreground))}

/* -------------------------------- tarjetas ------------------------------ */
.cta-card{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:calc(var(--radius,.5rem) * 2);padding:1.6rem;box-shadow:0 10px 30px -18px hsl(222 32% 12% / .25)}
.cta-card + .cta-card{margin-top:1.25rem}
.cta-card-sm{padding:1.2rem}
.cta-card-danger{border-color:hsl(var(--destructive) / .45);margin-top:2rem}
.cta-card-admin{border-color:hsl(var(--primary) / .4);background:linear-gradient(180deg,hsl(var(--card)) 0%,hsl(var(--primary) / .05) 100%)}
.cta-card-admin .cta-tag{margin:0 0 .6rem}
.cta-grid{display:grid;gap:1.1rem;margin-top:1rem}
@media (min-width:768px){.cta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.cta-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.cta-modulo-bloqueado{opacity:.7}

/* Un modulo con vista propia se ofrece como enlace; el resto es una tarjeta
   muerta que solo anuncia. La diferencia tiene que verse antes del click. */
a.cta-modulo-abierto{display:block;text-decoration:none;color:inherit;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}
a.cta-modulo-abierto:hover,a.cta-modulo-abierto:focus-visible{border-color:hsl(var(--primary) / .5);transform:translateY(-2px);box-shadow:0 10px 24px hsl(var(--foreground) / .07)}
.cta-tag-abierto{border-color:hsl(var(--primary) / .45);color:hsl(var(--primary));font-weight:700}
.cta-grid-kpis{margin-bottom:.4rem}
.cta-kpi{margin:0;font-family:var(--font-serif,"Source Serif 4",Georgia,serif);font-size:2rem;font-weight:700;line-height:1.1}
.cta-frase{margin:.5rem 0 0;font-family:var(--font-serif,"Source Serif 4",Georgia,serif);font-size:1.05rem;font-style:italic;line-height:1.5}

/* El padron de la empresa. */
.cta-usuarios{list-style:none;margin:.6rem 0 0;padding:0;display:grid;gap:.75rem}
.cta-usuario{display:grid;gap:.4rem;padding:.85rem 0;border-top:1px solid hsl(var(--border))}
.cta-usuario:first-child{border-top:0;padding-top:.2rem}
@media (min-width:640px){
  .cta-usuario{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.9rem}
}
.cta-usuario-estado{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}
.cta-usuario-acciones{display:flex;gap:.4rem;flex-wrap:wrap}
.cta-usuario .cta-tag{margin:0}

/* --------------------------------- panel -------------------------------- */
.cta-panel{display:grid;gap:1.5rem}
@media (min-width:900px){.cta-panel{grid-template-columns:15rem minmax(0,1fr);align-items:start}}
.cta-sidebar{background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:calc(var(--radius,.5rem) * 2);padding:1.1rem}
.cta-sidebar-nombre{margin:0;font-weight:700;word-break:break-word}
.cta-sidebar-email{margin:.1rem 0 .9rem;font-size:.82rem;color:hsl(var(--muted-foreground));word-break:break-all}
.cta-sidebar-nav{display:flex;flex-direction:column;gap:.15rem;border-top:1px solid hsl(var(--border));padding-top:.75rem}
.cta-sidebar-nav a{display:block;padding:.5rem .6rem;border-radius:var(--radius,.5rem);font-size:.92rem;font-weight:600;color:hsl(var(--foreground) / .8);text-decoration:none}
.cta-sidebar-nav a:hover{background:hsl(var(--muted) / .6);color:hsl(var(--foreground))}
.cta-sidebar-nav a[aria-current="page"]{background:hsl(var(--primary) / .1);color:hsl(var(--primary))}
.cta-sidebar-salir{margin-top:.9rem;border-top:1px solid hsl(var(--border));padding-top:.75rem}
@media (max-width:899px){.cta-sidebar-nav{flex-direction:row;flex-wrap:wrap;gap:.25rem}}

/* ------------------------------ formularios ----------------------------- */
.cta-form{display:grid;gap:1rem;margin-top:.25rem}
.cta-fieldset{border:0;margin:0;padding:0;display:grid;gap:1rem;min-width:0}
.cta-fieldset legend{font-weight:700;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--muted-foreground));margin-bottom:.25rem}
.cta-field{display:grid;gap:.35rem;min-width:0}
.cta-field label,.cta-check{font-size:.9rem;font-weight:600}
.cta-field input:not([type=checkbox]){width:100%;min-height:2.75rem;border:1px solid hsl(var(--input));border-radius:var(--radius,.5rem);background:hsl(var(--background));padding:.55rem .8rem;font:inherit;color:inherit}
.cta-field input:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:1px}
.cta-field input[type=file]{padding:.45rem .6rem;font-size:.9rem}
.cta-field input:disabled{opacity:.7;background:hsl(var(--muted) / .4)}
.cta-field-error input{border-color:hsl(var(--destructive))}
.cta-error{margin:0;font-size:.82rem;font-weight:600;color:hsl(var(--destructive))}
.cta-help{margin:0;font-size:.8rem;color:hsl(var(--muted-foreground))}
.cta-check{display:flex;gap:.6rem;align-items:flex-start;font-weight:500;line-height:1.45}
.cta-check input{margin-top:.25rem;flex:none;width:1.05rem;height:1.05rem;accent-color:hsl(var(--primary))}
.cta-form-links{margin:-.4rem 0 0;text-align:right;font-size:.85rem}
.cta-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cta-details{border:1px solid hsl(var(--border));border-radius:var(--radius,.5rem);padding:.6rem .8rem;font-size:.85rem}
.cta-details summary{cursor:pointer;font-weight:600;color:hsl(var(--primary))}
.cta-details-body{margin-top:.6rem;max-height:16rem;overflow:auto;line-height:1.55;color:hsl(var(--muted-foreground))}
.cta-inline-form{display:inline;margin-left:.4rem}
.cta-password-wrap{position:relative}
.cta-password-wrap input{padding-right:4.2rem}
.cta-password-toggle{position:absolute;right:.4rem;top:50%;transform:translateY(-50%);border:0;background:transparent;font:inherit;font-size:.78rem;font-weight:700;color:hsl(var(--primary));cursor:pointer;padding:.3rem .4rem}
.cta-strength{height:.35rem;border-radius:999px;background:hsl(var(--muted));overflow:hidden;margin-top:.2rem}
.cta-strength span{display:block;height:100%;width:0;transition:width .3s var(--ihr-ease,ease),background .3s}
.cta-strength-1 span{width:25%;background:#dc2626}
.cta-strength-2 span{width:50%;background:#f59e0b}
.cta-strength-3 span{width:75%;background:#84cc16}
.cta-strength-4 span{width:100%;background:#16a34a}

/* --------------------------------- botones ------------------------------ */
.cta-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:2.75rem;border-radius:var(--radius,.5rem);border:1px solid transparent;padding:.55rem 1.1rem;font:inherit;font-size:.92rem;font-weight:600;cursor:pointer;text-decoration:none;transition:background .2s,color .2s,border-color .2s}
.cta-btn:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:2px}
.cta-btn[disabled],.cta-btn[aria-busy="true"]{opacity:.6;cursor:progress}
.cta-btn-primary{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}
.cta-btn-primary:hover{background:hsl(var(--primary) / .9)}
.cta-btn-secondary{background:hsl(var(--secondary));color:hsl(var(--secondary-foreground))}
.cta-btn-secondary:hover{background:hsl(var(--secondary) / .9)}
.cta-btn-ghost{background:transparent;border-color:hsl(var(--border));color:hsl(var(--foreground))}
.cta-btn-ghost:hover{background:hsl(var(--muted) / .6)}
.cta-btn-danger{background:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}
.cta-btn-danger:hover{background:hsl(var(--destructive) / .9)}
.cta-btn-block{width:100%}
.cta-btn-sm{min-height:2.25rem;padding:.35rem .8rem;font-size:.84rem}
.cta-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:.8rem 0 0}

/* --------------------------------- avisos ------------------------------- */
.cta-alert{border:1px solid hsl(var(--border));border-radius:var(--radius,.5rem);padding:.75rem 1rem;margin:0 0 1rem;font-size:.92rem;line-height:1.5}
.cta-alert-ok{border-color:#a7f3d0;background:#ecfdf5;color:#065f46}
.cta-alert-error{border-color:#fecaca;background:#fef2f2;color:#991b1b}
.cta-alert-info{border-color:#bfdbfe;background:#eff6ff;color:#1e3a8a}

/* ------------------------------- listas/datos --------------------------- */
.cta-dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.3rem .9rem;margin:0;font-size:.92rem}
.cta-dl dt{color:hsl(var(--muted-foreground));font-weight:600}
.cta-dl dd{margin:0;word-break:break-word}
.cta-list{margin:0;padding-left:1.1rem;line-height:1.7;font-size:.92rem}

/* ------------------------------- movimiento ----------------------------- */
@media (prefers-reduced-motion:no-preference){
  .cta-card,.cta-sidebar{animation:cta-rise .55s var(--ihr-ease,cubic-bezier(.22,.61,.36,1)) both}
  .cta-card:nth-child(2){animation-delay:.06s}
  .cta-card:nth-child(3){animation-delay:.12s}
  @keyframes cta-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
}

/* --------------------------- chrome compartido -------------------------- */
/* /cuenta usa el header/footer de site-chrome.php pero, a diferencia de
   insights.php, NO carga el bundle de Insights. Por eso el posicionamiento de
   los dropdowns de escritorio y la rotación del chevron del menú móvil (que en
   Insights vienen en assets/insights-*.css) se replican aquí, con los MISMOS
   valores del bundle. El wiring de JS lo agrega site_render_header_script(). */
.ins-site-dropdown{position:relative}
.ins-site-dropdown-panel{position:absolute;top:calc(100% + .5rem);left:0;z-index:60;opacity:0;pointer-events:none;transform:translateY(-.375rem);transition:opacity .18s ease,transform .18s ease}
.ins-site-dropdown-panel[hidden]{display:none}
.ins-site-dropdown[data-open=true] .ins-site-dropdown-panel{opacity:1;pointer-events:auto;transform:translateY(0)}
[data-disclosure][data-open=true] [data-disclosure-trigger] svg{transform:rotate(180deg)}
