/* NEXAKOR ONE V4.27 — Premium Visual System & Shell Geometry Assurance */
:root{
  --nx-radius-xs:8px;--nx-radius-sm:10px;--nx-radius-md:14px;--nx-radius-lg:18px;--nx-radius-xl:24px;
  --nx-shadow-sm:0 1px 2px rgba(15,23,42,.06),0 4px 14px rgba(15,23,42,.04);
  --nx-shadow-md:0 12px 34px rgba(15,23,42,.10);--nx-shadow-lg:0 28px 70px rgba(15,23,42,.18);
  --nx-focus:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent);
}
html[data-nexakor-theme="veltria-claro"]{
  --bg:#f5f7f9;--surface:#ffffff;--surface2:#eef2f4;--surface3:#e7ecef;--panel:#ffffff;--input:#ffffff;
  --ink:#14211b;--text:#14211b;--muted:#5d6a64;--border:#d6dfdb;--line:#d6dfdb;--line2:#becbc5;
  --nav:#10291f;--nav2:#173b2c;--primary:#1b5c43;--primary2:#23835c;--accent:#bd8b27;--accent2:#e0b75b;
  --good:#13734b;--warn:#8a640f;--bad:#b42318;--theme-title:#123126;--theme-table:#163a2c;--theme-table-text:#f8fffb;
  --nx-canvas:linear-gradient(135deg,#f9fafb 0%,#f1f5f3 52%,#edf1f4 100%);--nx-glow:rgba(27,92,67,.10)
}
html[data-nexakor-theme="veltria-oscuro"]{
  color-scheme:dark;--bg:#091217;--surface:#101d23;--surface2:#14252c;--surface3:#192d35;--panel:#0d1b21;--input:#0d1a20;
  --ink:#eef8f4;--text:#eef8f4;--muted:#a8bbb3;--border:#29414a;--line:#29414a;--line2:#3a5660;
  --nav:#071711;--nav2:#0d2a20;--primary:#78d4aa;--primary2:#43b882;--accent:#e7bd59;--accent2:#ffe08b;
  --good:#7dd9ab;--warn:#f0c766;--bad:#ff9d94;--theme-title:#f4fbf8;--theme-table:#17352b;--theme-table-text:#f5fffb;
  --nx-canvas:radial-gradient(circle at 80% 0%,rgba(44,154,111,.11),transparent 30%),linear-gradient(145deg,#071116,#0b171c 48%,#0d1d22);--nx-glow:rgba(81,205,151,.12)
}
html[data-nexakor-theme="industrial"]{
  --bg:#eef2f6;--surface:#ffffff;--surface2:#e8eef3;--surface3:#dfe7ee;--panel:#ffffff;--input:#ffffff;
  --ink:#17212b;--text:#17212b;--muted:#596773;--border:#cbd7e1;--line:#cbd7e1;--line2:#b4c4d0;
  --nav:#102b43;--nav2:#17476c;--primary:#165784;--primary2:#1c7fb9;--accent:#e86f1b;--accent2:#f4a15e;
  --good:#147a4b;--warn:#a45d05;--bad:#b42318;--theme-title:#12344e;--theme-table:#153f5f;--theme-table-text:#f7fbff;
  --nx-canvas:linear-gradient(135deg,#f7f9fb,#edf2f6 58%,#e8eef3);--nx-glow:rgba(22,87,132,.11)
}
html[data-nexakor-theme="ejecutivo"]{
  --bg:#f4f1eb;--surface:#fffdf9;--surface2:#eeeae2;--surface3:#e6e0d6;--panel:#fffdf9;--input:#fffefb;
  --ink:#151b2a;--text:#151b2a;--muted:#626979;--border:#d5cec1;--line:#d5cec1;--line2:#beb4a4;
  --nav:#0c1830;--nav2:#142c53;--primary:#162d55;--primary2:#21558e;--accent:#a47b2c;--accent2:#d1ad63;
  --good:#1c6540;--warn:#7f611c;--bad:#a72d25;--theme-title:#111f3a;--theme-table:#142d55;--theme-table-text:#f8fbff;
  --nx-canvas:radial-gradient(circle at 100% 0%,rgba(164,123,44,.09),transparent 28%),linear-gradient(145deg,#faf8f3,#f2eee6 55%,#ebe6dc);--nx-glow:rgba(22,45,85,.10)
}

/* Entire ERP follows the selected theme, not only navigation. */
html[data-nexakor-theme] body,html[data-nexakor-theme] #app,html[data-nexakor-theme] .app-shell,html[data-nexakor-theme] .main,html[data-nexakor-theme] .content{background:var(--nx-canvas)!important;color:var(--ink)!important}
html[data-nexakor-theme] .content{background-attachment:fixed!important}
html[data-nexakor-theme] .topbar{background:color-mix(in srgb,var(--surface) 94%,transparent)!important;color:var(--ink)!important;border-bottom:1px solid var(--border)!important;box-shadow:0 7px 24px rgba(15,23,42,.04);backdrop-filter:blur(16px)}
html[data-nexakor-theme] .card,html[data-nexakor-theme] .modal,html[data-nexakor-theme] .data-grid,html[data-nexakor-theme] .nx-worklist-records,html[data-nexakor-theme] .doc-header,html[data-nexakor-theme] .line-editor,html[data-nexakor-theme] .finance-master-hero,html[data-nexakor-theme] .finance-assurance-hero,html[data-nexakor-theme] .pro-chart-card,html[data-nexakor-theme] .payroll-kpi,html[data-nexakor-theme] .payroll-alert{background:linear-gradient(160deg,var(--surface),color-mix(in srgb,var(--surface) 95%,var(--primary) 5%))!important;color:var(--ink)!important;border-color:var(--border)!important;box-shadow:var(--nx-shadow-sm)!important}
html[data-nexakor-theme] .card{border-radius:var(--nx-radius-md)!important}
html[data-nexakor-theme] .card-head,html[data-nexakor-theme] .dg-toolbar,html[data-nexakor-theme] .dg-footer,html[data-nexakor-theme] .tabs,html[data-nexakor-theme] .form-section,html[data-nexakor-theme] .nx-worklist-toolbar,html[data-nexakor-theme] .nx-worklist-filters{background:color-mix(in srgb,var(--surface2) 76%,var(--surface) 24%)!important;color:var(--ink)!important;border-color:var(--border)!important}
html[data-nexakor-theme] h1,html[data-nexakor-theme] h2,html[data-nexakor-theme] h3,html[data-nexakor-theme] h4,html[data-nexakor-theme] h5,html[data-nexakor-theme] .page-title h1,html[data-nexakor-theme] .card-head h3,html[data-nexakor-theme] .smart-kpi-value,html[data-nexakor-theme] .payroll-kpi .v{color:var(--theme-title)!important}
html[data-nexakor-theme] p,html[data-nexakor-theme] .muted,html[data-nexakor-theme] small,html[data-nexakor-theme] .hint{color:var(--muted)}
html[data-nexakor-theme] .kpi{background:linear-gradient(150deg,var(--surface),color-mix(in srgb,var(--surface) 91%,var(--accent) 9%))!important;color:var(--ink)!important;border-color:var(--border)!important;box-shadow:var(--nx-shadow-sm)}
html[data-nexakor-theme] .kpi .value,html[data-nexakor-theme] .kpi .label{color:var(--theme-title)!important}
html[data-nexakor-theme] .field label{color:color-mix(in srgb,var(--ink) 72%,var(--muted) 28%)!important}
html[data-nexakor-theme] input,html[data-nexakor-theme] select,html[data-nexakor-theme] textarea,html[data-nexakor-theme] .context-select,html[data-nexakor-theme] .top-search,html[data-nexakor-theme] .line-editor input,html[data-nexakor-theme] .line-editor select{background:var(--input)!important;color:var(--ink)!important;border-color:var(--line2)!important}
html[data-nexakor-theme] input::placeholder,html[data-nexakor-theme] textarea::placeholder{color:color-mix(in srgb,var(--muted) 78%,transparent)}
html[data-nexakor-theme] input:focus,html[data-nexakor-theme] select:focus,html[data-nexakor-theme] textarea:focus{border-color:var(--primary)!important;box-shadow:var(--nx-focus)!important}
html[data-nexakor-theme] .btn{border-radius:var(--nx-radius-sm);font-weight:750}
html[data-nexakor-theme] .btn-secondary,html[data-nexakor-theme] .btn-ghost{background:var(--surface)!important;color:var(--ink)!important;border-color:var(--border)!important}
html[data-nexakor-theme] .btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary2))!important;color:#fff!important;border-color:transparent!important;box-shadow:0 6px 18px color-mix(in srgb,var(--primary) 24%,transparent)}
html[data-nexakor-theme="veltria-oscuro"] .btn-primary{color:#07150f!important}
html[data-nexakor-theme] .dg-table th,html[data-nexakor-theme] table thead th{background:var(--theme-table)!important;color:var(--theme-table-text)!important;border-color:color-mix(in srgb,var(--theme-table) 72%,#fff 28%)!important}
html[data-nexakor-theme] .dg-table td,html[data-nexakor-theme] table tbody td{color:var(--ink);border-color:var(--border)}
html[data-nexakor-theme] .dg-table tbody tr:nth-child(even),html[data-nexakor-theme] table tbody tr:nth-child(even){background:color-mix(in srgb,var(--surface) 93%,var(--primary) 7%)!important}
html[data-nexakor-theme] .dg-table tbody tr:hover,html[data-nexakor-theme] table tbody tr:hover{background:color-mix(in srgb,var(--surface) 86%,var(--accent) 14%)!important}
html[data-nexakor-theme] .assistant-panel{background:var(--surface)!important;color:var(--ink)!important;border-color:var(--border)!important;box-shadow:var(--nx-shadow-lg)}
html[data-nexakor-theme] .assistant-log{background:var(--surface2)!important}
html[data-nexakor-theme] .assistant-head{background:linear-gradient(135deg,var(--nav),var(--primary))!important}
html[data-nexakor-theme] .totals-box{background:linear-gradient(135deg,var(--nav),var(--primary))!important;color:#fff!important}
html[data-nexakor-theme] .tab{color:var(--muted)!important}html[data-nexakor-theme] .tab.active{color:var(--primary)!important;border-bottom-color:var(--accent)!important}

/* The V4.26 geometry bug: hidden sidebar must remove its GRID TRACK, not just the element. */
html[data-nav-mode="command_center"] .app-shell,html[data-nav-mode="launchpad"] .app-shell,html[data-nav-mode="flowdock"] .app-shell{grid-template-columns:minmax(0,1fr)!important}
html[data-nav-mode="command_center"] .main,html[data-nav-mode="launchpad"] .main,html[data-nav-mode="flowdock"] .main{grid-column:1!important;width:100%!important;max-width:none!important;margin:0!important;min-width:0!important}
html[data-nav-mode="command_center"] .content,html[data-nav-mode="launchpad"] .content,html[data-nav-mode="flowdock"] .content{width:100%!important;max-width:none!important;min-width:0!important}
html[data-nav-mode="command_center"] .page,html[data-nav-mode="launchpad"] .page,html[data-nav-mode="flowdock"] .page{width:min(100%,1920px)!important;max-width:1920px!important;margin-inline:auto!important}

/* Premium shell surfaces */
.nx-v426-home{left:18px!important;bottom:18px!important;padding:10px 14px!important;border-radius:999px!important;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--border))!important;background:linear-gradient(135deg,color-mix(in srgb,var(--nav) 96%,transparent),color-mix(in srgb,var(--primary) 88%,transparent))!important;color:#fff!important;box-shadow:0 14px 38px rgba(8,18,36,.22),inset 0 1px rgba(255,255,255,.10)!important;backdrop-filter:blur(18px)}
.nx-v426-home svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.8}.nx-v426-home b{font-size:12px;letter-spacing:.08em}
.nx-v426-command-panel{background:linear-gradient(150deg,color-mix(in srgb,var(--panel) 98%,var(--primary) 2%),color-mix(in srgb,var(--surface2) 92%,var(--nav) 8%))!important;color:var(--text)!important;border:1px solid color-mix(in srgb,var(--border) 78%,var(--accent) 22%)!important;border-radius:24px!important;box-shadow:0 34px 90px rgba(8,18,36,.28)!important;padding:20px!important}
.nx-v426-command-panel:before{content:"";display:block;position:absolute;inset:0 0 auto;height:3px;border-radius:24px 24px 0 0;background:linear-gradient(90deg,var(--accent),var(--primary2),transparent 84%)}
.nx-v426-command-head button,.nx-v426-launchpad button,.nx-v426-palette-trigger,.nx-v426-ai{border:1px solid var(--border)!important;background:var(--surface)!important;color:var(--ink)!important;border-radius:12px!important}
.nx-v426-module{position:relative;background:linear-gradient(150deg,var(--surface),color-mix(in srgb,var(--surface2) 85%,var(--surface) 15%))!important;color:var(--ink)!important;border:1px solid var(--border)!important;border-radius:16px!important;box-shadow:0 5px 16px rgba(15,23,42,.05)!important;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease!important}
.nx-v426-module:hover,.nx-v426-module:focus-visible{transform:translateY(-2px);border-color:color-mix(in srgb,var(--primary) 45%,var(--border))!important;box-shadow:0 13px 30px color-mix(in srgb,var(--primary) 10%,transparent)!important;outline:none}
.nx-v426-icon{display:grid!important;place-items:center;min-width:34px!important;width:34px;height:34px;border-radius:10px;background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--primary);font-size:0!important}.nx-v426-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.nx-v426-launchpad{background:var(--nx-canvas)!important;color:var(--ink)!important}
.nx-v426-launchpad header{background:color-mix(in srgb,var(--surface) 90%,transparent)!important;border-bottom:1px solid var(--border);box-shadow:0 8px 24px rgba(15,23,42,.05)}
.nx-v426-launchpad main{max-width:1680px!important}.nx-v426-module.tile{min-height:126px!important;padding:18px!important;justify-content:space-between!important;background:linear-gradient(145deg,var(--surface),color-mix(in srgb,var(--surface) 88%,var(--primary) 12%))!important}
.nx-v426-module.tile .nx-v426-icon{width:42px;height:42px}.nx-v426-module.tile .nx-v426-icon svg{width:23px;height:23px}
.nx-v426-dock{border:1px solid color-mix(in srgb,var(--border) 72%,var(--accent) 28%)!important;background:color-mix(in srgb,var(--panel) 87%,transparent)!important;box-shadow:0 22px 60px rgba(8,18,36,.22),inset 0 1px rgba(255,255,255,.12)!important;border-radius:22px!important;backdrop-filter:blur(20px) saturate(130%)!important}
.nx-v426-dock .nx-v426-module{width:50px!important;height:50px!important;border:0!important;background:transparent!important;box-shadow:none!important}.nx-v426-dock .nx-v426-module:hover{background:color-mix(in srgb,var(--primary) 13%,transparent)!important}.nx-v426-dock .nx-v426-icon{background:transparent!important;width:34px!important;height:34px!important}
.nx-v426-palette section{background:linear-gradient(160deg,var(--panel),color-mix(in srgb,var(--surface2) 88%,var(--nav) 12%))!important;color:var(--ink)!important;border-color:var(--border)!important;box-shadow:var(--nx-shadow-lg)!important}
.nx-v426-palette [data-results]>button,.nx-v426-palette [data-mode-pick]{color:var(--ink)!important}.nx-v426-palette [data-results]>button:hover,.nx-v426-palette [data-mode-pick]:hover{background:color-mix(in srgb,var(--primary) 9%,var(--surface))!important}

/* Legacy is still supported, therefore it must also be premium and readable. */
html[data-nav-mode="legacy"] .sidebar{background:linear-gradient(180deg,var(--nav) 0%,color-mix(in srgb,var(--nav2) 90%,#000 10%) 62%,color-mix(in srgb,var(--nav) 88%,#000 12%))!important;color:#f6fbff!important;border-right:1px solid rgba(255,255,255,.10)!important;box-shadow:10px 0 32px rgba(8,18,36,.12)}
html[data-nav-mode="legacy"] .sidebar .nav-group{background:rgba(255,255,255,.055)!important;border:1px solid rgba(255,255,255,.08)!important;box-shadow:none!important}
html[data-nav-mode="legacy"] .sidebar .nav-group-toggle,html[data-nav-mode="legacy"] .sidebar .nav-item,html[data-nav-mode="legacy"] .sidebar .nav-item span,html[data-nav-mode="legacy"] .sidebar .sidebar-foot,html[data-nav-mode="legacy"] .sidebar .user-mini-copy strong{color:#f3f8fb!important;text-shadow:none!important}
html[data-nav-mode="legacy"] .sidebar .nav-group-toggle{font-weight:800!important}.sidebar .nav-group-title,.sidebar .nav-group-toggle small,html[data-nav-mode="legacy"] .sidebar .user-mini-copy span{color:#b8cad3!important}
html[data-nav-mode="legacy"] .sidebar .nav-item:hover{background:rgba(255,255,255,.10)!important}html[data-nav-mode="legacy"] .sidebar .nav-item.active{background:linear-gradient(90deg,color-mix(in srgb,var(--primary2) 60%,transparent),color-mix(in srgb,var(--accent) 18%,transparent))!important;color:#fff!important;border-left:3px solid var(--accent)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)!important}
html[data-nav-mode="legacy"] .sidebar .nav-icon,html[data-nav-mode="legacy"] .sidebar .nx-v398-nav-icon{color:#d8f7ea!important}.sidebar .nav-icon svg,.sidebar .nx-v398-nav-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
html[data-sidebar-variant="minimal"][data-nav-mode="legacy"] .sidebar{background:#fff!important;color:#17212b!important;border-right-color:#d8e0e7!important;box-shadow:8px 0 24px rgba(15,23,42,.06)}
html[data-sidebar-variant="minimal"][data-nav-mode="legacy"] .sidebar .nav-group{background:#f8fafc!important;border-color:#e4eaf0!important}
html[data-sidebar-variant="minimal"][data-nav-mode="legacy"] .sidebar .nav-group-toggle,html[data-sidebar-variant="minimal"][data-nav-mode="legacy"] .sidebar .nav-item,html[data-sidebar-variant="minimal"][data-nav-mode="legacy"] .sidebar .nav-item span,html[data-sidebar-variant="minimal"][data-nav-mode="legacy"] .sidebar .sidebar-foot,html[data-sidebar-variant="minimal"][data-nav-mode="legacy"] .sidebar .user-mini-copy strong{color:#24313c!important}
html[data-sidebar-variant="minimal"][data-nav-mode="legacy"] .sidebar .nav-group-toggle small,html[data-sidebar-variant="minimal"][data-nav-mode="legacy"] .sidebar .user-mini-copy span{color:#667684!important}

/* Strong focus/accessibility */
.nx-v426-home:focus-visible,.nx-v426-module:focus-visible,.nx-v426-command-head button:focus-visible,.nx-v426-palette button:focus-visible,.sidebar button:focus-visible,.btn:focus-visible{outline:2px solid var(--accent)!important;outline-offset:2px!important}
@media(max-width:1023px){html[data-nav-mode="command_center"] .page,html[data-nav-mode="launchpad"] .page,html[data-nav-mode="flowdock"] .page{width:100%!important}.nx-v426-launch-grid{grid-template-columns:repeat(3,minmax(140px,1fr))!important}}
@media(max-width:767px){.content{padding:12px 12px 86px!important}.nx-v426-launch-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.nx-v426-home{bottom:78px!important}.nx-v426-dock{bottom:max(8px,env(safe-area-inset-bottom))!important}.nx-v426-module.tile{min-height:108px!important;padding:14px!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
