/* SalesPro ERP 3.2.6.40 - Base visual consolidada del panel */
:root{
  --sp-admin-bg:#f6f7fb;
  --sp-admin-surface:#fff;
  --sp-admin-surface-soft:#f8fafc;
  --sp-admin-text:#111827;
  --sp-admin-muted:#64748b;
  --sp-admin-border:#e2e8f0;
  --sp-admin-primary:#4f46e5;
  --sp-admin-primary-strong:#312e81;
  --sp-admin-danger:#dc2626;
  --sp-admin-success:#059669;
  --sp-admin-warning:#d97706;
  --sp-admin-radius-sm:10px;
  --sp-admin-radius:16px;
  --sp-admin-radius-lg:24px;
  --sp-admin-shadow:0 12px 32px rgba(15,23,42,.07);
  --sp-admin-header:72px;
  --sp-admin-content:1500px;
}
html{background:var(--sp-admin-bg);scroll-behavior:smooth}
body.spds-admin{margin:0;min-height:100vh;background:var(--sp-admin-bg);color:var(--sp-admin-text);overflow-x:hidden}
body.spds-admin,body.spds-admin button,body.spds-admin input,body.spds-admin select,body.spds-admin textarea{font-family:'Gilroy',Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.global-header{height:var(--sp-admin-header)!important;min-height:var(--sp-admin-header)!important;padding:0 clamp(14px,2vw,28px)!important;border-bottom:1px solid rgba(226,232,240,.92)!important;background:rgba(255,255,255,.92)!important;backdrop-filter:blur(18px)!important;box-shadow:0 6px 24px rgba(15,23,42,.05)!important}
.header-brand strong{font-size:15px!important;line-height:1.1!important;color:#0f172a!important}.header-brand small{margin-top:4px!important;color:#64748b!important;font-size:11px!important}.user-pill{max-width:min(230px,34vw)!important;min-height:40px!important;padding:0 14px!important;border:1px solid var(--sp-admin-border)!important;border-radius:999px!important;background:#fff!important;color:#334155!important;box-shadow:none!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.header-menu-btn{width:44px!important;height:44px!important;border:1px solid var(--sp-admin-border)!important;border-radius:13px!important;background:#fff!important;box-shadow:none!important}.header-menu-btn:hover{background:#f8fafc!important;border-color:#cbd5e1!important}
.app-shell{min-height:100vh!important}.main{min-width:0!important;width:100%!important;padding-top:var(--sp-admin-header)!important;overflow:visible!important}.content-area{width:min(100%,var(--sp-admin-content))!important;max-width:var(--sp-admin-content)!important;margin:0 auto!important;padding:clamp(18px,2.5vw,34px)!important;overflow:visible!important}
.sidebar{width:min(292px,88vw)!important;background:#0f172a!important;border-right:1px solid rgba(255,255,255,.08)!important;box-shadow:24px 0 60px rgba(15,23,42,.24)!important}.sp-sidebar-head{min-height:76px!important;padding:16px!important;border-bottom:1px solid rgba(255,255,255,.08)!important}.sp-sidebar-scroll{padding:12px 10px 24px!important}.sidebar .nav{gap:3px!important}.sidebar .nav-title{margin:20px 10px 7px!important;color:#94a3b8!important;font-size:10px!important;letter-spacing:.13em!important}.sidebar .nav a{min-height:44px!important;padding:0 12px!important;border-radius:12px!important;color:#cbd5e1!important;font-size:13px!important;font-weight:650!important}.sidebar .nav a:hover{background:rgba(255,255,255,.07)!important;color:#fff!important;transform:none!important}.sidebar .nav a.active{background:linear-gradient(135deg,rgba(99,102,241,.96),rgba(79,70,229,.92))!important;color:#fff!important;box-shadow:0 10px 24px rgba(79,70,229,.22)!important}.sidebar .nav a.active:after{display:none!important}.sp-nav-icon{width:34px!important;height:34px!important;border-radius:10px!important;background:rgba(255,255,255,.06)!important}.sidebar .nav a.active .sp-nav-icon{background:rgba(255,255,255,.16)!important}.sp-sidebar-foot{padding:12px!important;border-top:1px solid rgba(255,255,255,.08)!important}.sp-sidebar-company{border-radius:14px!important;background:rgba(255,255,255,.05)!important}
body.sidebar-open{overflow:hidden!important}.sidebar-backdrop{background:rgba(15,23,42,.52)!important;backdrop-filter:blur(3px)!important}
/* Base común de componentes */
body.spds-admin :where(.card,.panel,.data-card,.quote-card,.catalog-card){border:1px solid var(--sp-admin-border);border-radius:var(--sp-admin-radius);background:var(--sp-admin-surface);box-shadow:var(--sp-admin-shadow)}
body.spds-admin :where(h1,h2,h3,h4){color:#0f172a;letter-spacing:-.025em}body.spds-admin :where(p,.muted,.help-text,small){color:var(--sp-admin-muted)}
body.spds-admin :where(input:not([type=checkbox]):not([type=radio]),select,textarea){max-width:100%;min-height:44px;padding:10px 13px;border:1px solid #cbd5e1;border-radius:11px;background:#fff;color:#0f172a;outline:none;box-shadow:none;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
body.spds-admin textarea{min-height:110px;resize:vertical}body.spds-admin :where(input,select,textarea):focus{border-color:#818cf8;box-shadow:0 0 0 3px rgba(99,102,241,.13)}body.spds-admin :where(input,select,textarea):disabled{background:#f1f5f9;color:#94a3b8;cursor:not-allowed}
body.spds-admin :where(.btn,button.btn,a.btn){min-height:42px;padding:0 15px;border:1px solid transparent;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:750;text-decoration:none;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease}body.spds-admin :where(.btn,button.btn,a.btn):hover{transform:translateY(-1px)}body.spds-admin :where(.btn-primary,.btn.primary){background:var(--sp-admin-primary);color:#fff;box-shadow:0 8px 18px rgba(79,70,229,.2)}body.spds-admin :where(.btn-secondary,.btn.secondary){background:#fff;color:#334155;border-color:var(--sp-admin-border)}body.spds-admin :where(.btn-danger,.btn.danger){background:#fff1f2;color:#be123c;border-color:#fecdd3}
body.spds-admin :where(.table-wrap,.table-responsive){max-width:100%;overflow-x:auto;border:1px solid var(--sp-admin-border);border-radius:var(--sp-admin-radius);background:#fff}body.spds-admin table{width:100%;border-collapse:separate;border-spacing:0}body.spds-admin th{padding:13px 14px;background:#f8fafc;color:#475569;font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid var(--sp-admin-border);white-space:nowrap}body.spds-admin td{padding:13px 14px;color:#334155;border-bottom:1px solid #edf2f7;vertical-align:middle}body.spds-admin tbody tr:last-child td{border-bottom:0}body.spds-admin tbody tr:hover td{background:#fafbff}
body.spds-admin .alert{margin:0 0 18px;padding:13px 15px;border-radius:12px;border:1px solid}body.spds-admin .alert.success{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}body.spds-admin .alert.error{background:#fff1f2;border-color:#fecdd3;color:#9f1239}
/* Evita recortes globales; cada tabla gestiona su propio desplazamiento */
body.spds-admin .main,body.spds-admin .content-area,body.spds-admin .card,body.spds-admin .panel{overflow:visible}
body.spds-admin :where(.modal,.dialog,[role=dialog]){max-width:calc(100vw - 24px)}
.sp-pos-fab{right:clamp(14px,2vw,26px)!important;bottom:clamp(14px,2vw,26px)!important}
@media(max-width:900px){:root{--sp-admin-header:66px}.global-header{padding:0 12px!important}.header-brand small{display:none}.content-area{padding:16px 12px 88px!important}.user-pill{max-width:34vw!important;font-size:12px!important}.sidebar{width:min(306px,92vw)!important}}
@media(max-width:560px){.header-brand strong{font-size:13px!important}.user-pill{max-width:28vw!important;padding:0 10px!important}.content-area{padding-inline:10px!important}body.spds-admin :where(.card,.panel,.data-card,.quote-card,.catalog-card){border-radius:14px}body.spds-admin th,body.spds-admin td{padding:11px 10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
/* Hotfix 3.2.6.41: el fondo claro del botón requiere icono oscuro */
.header-menu-btn{color:#172033!important}
.header-menu-btn span{background:currentColor!important}
