/*! INVERTIS Core 5.7.0 · Esencia: componentes compartidos, sin dependencias del laboratorio. */
:root[data-theme] { --inv-canvas:#f4f7f9; --inv-surface:#fff; --inv-surface-2:#f3f6fa; --inv-field:#f8fafc; --inv-field-bg:#f8fafc; --inv-field-border:#c4d1e1; --inv-field-edge:#7a91ad; --inv-ink:#1e293b; --inv-ink-2:#4d617c; --inv-ink-3:#596d86; --inv-border:#dce4ed; --inv-border-strong:#a0b2ca; --inv-accent:var(--inv-org-accent,#2563eb); --inv-accent-text:#1d4ed8; --inv-accent-soft:#eaf1ff; --inv-sidebar-w:224px; --inv-control-h:38px; --inv-grid-row-h:36px; --inv-grid-line:#c8d5e4; --inv-grid-head:#e9eef5; --inv-grid-money:#f0faf5; --inv-grid-money-ink:#176044; --inv-grid-commission:#f3f2fe; --inv-grid-commission-ink:#494297; --inv-grid-focus:#087f66; --inv-shadow-soft:0 6px 20px #243c5710,0 1px 3px #243c5708; }
:root[data-theme=dark] { --inv-canvas:#111722; --inv-surface:#1a2331; --inv-surface-2:#202d3e; --inv-field:#202d3e; --inv-field-bg:#202d3e; --inv-field-border:#536783; --inv-field-edge:#8197b4; --inv-ink:#edf3fd; --inv-ink-2:#bfccde; --inv-ink-3:#afbdd2; --inv-border:#3d4d64; --inv-border-strong:#8197b4; --inv-accent:var(--inv-org-accent-dark,#75a4ff); --inv-accent-text:#9cbeff; --inv-accent-soft:#223759; --inv-grid-line:#4f617a; --inv-grid-head:#2b3a4f; --inv-grid-money:#18382f; --inv-grid-money-ink:#a6e3c7; --inv-grid-commission:#2b2946; --inv-grid-commission-ink:#d0caff; --inv-grid-focus:#62ddba; }
@media(prefers-color-scheme:dark) { :root[data-theme=auto] { --inv-canvas:#111722; --inv-surface:#1a2331; --inv-surface-2:#202d3e; --inv-field:#202d3e; --inv-field-bg:#202d3e; --inv-field-border:#536783; --inv-field-edge:#8197b4; --inv-ink:#edf3fd; --inv-ink-2:#bfccde; --inv-ink-3:#afbdd2; --inv-border:#3d4d64; --inv-border-strong:#8197b4; --inv-accent:var(--inv-org-accent-dark,#75a4ff); --inv-accent-text:#9cbeff; --inv-accent-soft:#223759; --inv-grid-line:#4f617a; --inv-grid-head:#2b3a4f; --inv-grid-money:#18382f; --inv-grid-money-ink:#a6e3c7; --inv-grid-commission:#2b2946; --inv-grid-commission-ink:#d0caff; --inv-grid-focus:#62ddba; } }
[hidden] { display:none!important; }
.inv-sidebar,.inv-topbar { background:#1e2330; color:#edf2fc; --inv-ink:#edf2fc; --inv-ink-2:#c0ccde; --inv-ink-3:#b3c1d7; --inv-border:#39455b; --inv-surface:#293244; --inv-surface-2:#303c50; }
.inv-sidebar .crm-nav-link:is(.active,[aria-current=page]) { background:var(--inv-org-accent,#2563eb); color:#fff; box-shadow:0 4px 14px #143c9a44; }
.inv-sidebar .crm-nav-link:is(.active,[aria-current=page]) :is(svg,.inv-nav__count) { color:#fff; opacity:1; }
.inv-sidebar .inv-brandimg--light,.inv-topbar .inv-logo.inv-only-light { display:none!important; }
.inv-sidebar img.inv-logo--sidebar.inv-brandimg--dark,.inv-topbar .inv-logo.inv-only-dark { display:block!important; }
.inv-sidebar img.inv-logo-mark { display:none!important; }
.inv-sidebar .inv-orgchip__logo .inv-only-light { display:none!important; }
.inv-sidebar .inv-orgchip__logo .inv-only-dark { display:block!important; }
.inv-sidebar { width:224px; }
.inv-content { padding:24px 28px 40px; }
.inv-content > * { max-width:none; }
.inv-topbar { min-height:54px; height:54px; padding:8px 24px; }
.inv-pagehead { margin-bottom:18px; gap:12px; }
.inv-pagehead__title { font-size:clamp(25px,2.1vw,32px); line-height:1.15; letter-spacing:-.035em; }
.inv-input,.inv-select,.inv-textarea { background:linear-gradient(165deg,var(--inv-field-bg),var(--inv-surface)); border:1px solid var(--inv-field-border); border-bottom-color:var(--inv-field-edge); border-radius:9px; box-shadow:inset 0 1px 2px #23394e07,0 2px 5px #23394e07; color:var(--inv-ink); min-height:var(--inv-control-h); }
.inv-input:hover,.inv-select:hover,.inv-textarea:hover { border-bottom-color:var(--inv-accent); }
.inv-input:focus,.inv-select:focus,.inv-textarea:focus { border-color:var(--inv-accent); box-shadow:0 0 0 3px color-mix(in srgb,var(--inv-accent) 15%,transparent); background:var(--inv-surface); }
:is(input,select,textarea,button,a,summary):focus-visible { outline:3px solid var(--inv-accent); outline-offset:3px; }
.inv-label { color:var(--inv-ink-2); font-size:12px; margin-bottom:5px; }
.inv-filters { gap:12px; margin-bottom:16px; }
.inv-btn { min-height:36px; padding:7px 12px; border-radius:8px; }
.inv-btn--secondary { border:1px solid var(--inv-border); background:linear-gradient(var(--inv-surface),var(--inv-surface-2)); box-shadow:0 2px 5px #273c5510,inset 0 1px #ffffff20; }
.inv-segmented { border:1px solid var(--inv-border); border-radius:10px; background:var(--inv-surface-2); padding:4px; overflow-x:auto; max-width:100%; box-shadow:inset 0 1px 3px #293f5810; }
.inv-segmented__opt { border-radius:7px; color:var(--inv-ink-2); white-space:nowrap; }
.inv-segmented__opt.is-active { background:var(--inv-surface); color:var(--inv-accent-text); box-shadow:0 1px 3px #00000015; }
.inv-check { border-radius:4px; appearance:auto; accent-color:var(--inv-accent); }
.inv-kpi { border-left:3px solid var(--inv-accent); background:var(--inv-grid-money); }
.inv-kpi:nth-child(2n) { border-left-color:var(--inv-tone-purple); background:var(--inv-grid-commission); }
.inv-pagehead--hero { padding:24px 28px; border:1px solid var(--inv-border); border-radius:22px; background:linear-gradient(110deg,var(--inv-surface) 50%,var(--inv-accent-soft)); box-shadow:var(--inv-shadow-soft); margin-bottom:26px; }
.inv-pagehead--hero .inv-pagehead__title { font-size:clamp(26px,2.5vw,40px); }
.inv-grid--areas { grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.inv-area { min-height:194px; padding:18px; border-radius:18px; box-shadow:var(--inv-shadow-soft); }
.inv-area__title { font-size:18px; margin-top:14px; }
.inv-area__desc { display:none; }
.inv-area__foot { padding-top:16px; gap:5px; }
.inv-area__names { display:none; }
.inv-area--empty { display:flex; flex-direction:column; justify-content:center; gap:10px; background:var(--inv-surface-2); box-shadow:inset 0 1px 4px #263d5510; }
.inv-area--empty .inv-area__desc { display:block; color:var(--inv-ink-2); margin:0; font-size:13px; }
.inv-area--empty .inv-area__title { margin:0; }
.inv-card { border-radius:18px; box-shadow:var(--inv-shadow-soft); }
/* Servicio de diálogo nativo compartido por addons. No duplica autorización ni operaciones. */
.inv-dialog { width:min(650px,calc(100% - 32px)); max-height:calc(100dvh - 40px); padding:0; border:1px solid var(--inv-border-strong); border-radius:18px; color:var(--inv-ink); background:var(--inv-surface); box-shadow:0 18px 70px #0005; }
.inv-dialog:not([open]) { display:none; }
.inv-dialog::backdrop { background:#10192a77; }
.inv-dialog__head { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:18px 22px; border-bottom:1px solid var(--inv-border); }
.inv-dialog__head h2 { margin:0; font-size:20px; }
.inv-dialog__body { padding:20px 22px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.inv-dialog__body > label { display:flex; flex-direction:column; gap:6px; font-size:13px; color:var(--inv-ink-2); }
.inv-dialog__body :is(input,select) { min-width:0; width:100%; }
.inv-dialog__foot { padding:14px 22px; border-top:1px solid var(--inv-border); display:flex; justify-content:space-between; gap:12px; align-items:center; }
.inv-dialog__foot p { font-size:12px; color:var(--inv-ink-2); margin:0; }
/* La navegación se mantiene en el DOM por compatibilidad; el modo procede de una vista autorizada. */
[data-presentation=standalone] :is(.inv-sidebar,.inv-topbar,.inv-tabbar) { display:none!important; }
[data-presentation=standalone] .inv-layout { grid-template-columns:minmax(0,1fr); }
[data-presentation=standalone] .inv-main { margin-left:0!important; }
[data-presentation=standalone] .inv-content { padding:14px 16px 24px; }
@media(max-width:1279px) { .inv-grid--areas { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:1024px) and (min-width:641px) { .inv-sidebar { width:72px; }.inv-sidebar:not(.open) img.inv-logo--sidebar { display:none!important; }.inv-sidebar:not(.open) img.inv-logo-mark.inv-brandimg--dark { display:block!important; } }
@media(max-width:767px) {
 :root[data-theme] { --inv-control-h:44px; }.inv-sidebar { width:100%; }.inv-content { padding:18px 14px 90px; }
 .inv-input,.inv-select,.inv-textarea { font-size:16px; }.inv-btn,.inv-iconbtn { min-height:44px; }
 .inv-pagehead--hero { padding:20px; border-radius:16px; }.inv-pagehead__title { font-size:26px; }
 .inv-area { min-height:158px; padding:14px; }.inv-area__title { font-size:15px; }
 .inv-dialog { width:100%; max-width:none; height:92dvh; max-height:92dvh; margin:auto 0 0; border-radius:18px 18px 0 0; }
 .inv-dialog__body { grid-template-columns:1fr; }.inv-dialog__head { position:sticky; top:0; background:var(--inv-surface); z-index:1; }.inv-dialog__foot { position:sticky; bottom:0; background:var(--inv-surface); }
 [data-presentation=standalone] .inv-content { padding:14px 12px 30px; }
}
@media(prefers-contrast:more) { :root[data-theme] { --inv-field-border:var(--inv-ink-2); --inv-grid-line:var(--inv-ink-2); } }
@media(prefers-reduced-motion:reduce) { *,*::before { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
