/* Nexus design system — module visibility, preserved from the existing router. */
/* Navegação modular: cada URL mostra apenas a funcionalidade ativa. */
.nexus-page .shell > .ss-kpi,
.nexus-page .shell > .ss-action-band,
.nexus-page .shell > .nexus-grid-main,
.nexus-page .shell > #console-hub,
.nexus-page .shell > #hub-protocol-timeline,
.nexus-page .shell > #tarefas-internas,
.nexus-page .shell > #carteira-crm,
.nexus-page .shell > #hub-notifications,
.nexus-page .shell > .ss-split,
.nexus-page .shell > #akad-gateway,
.nexus-page .shell > #allseg-gateway,
.nexus-page .shell > #monitor-integracoes,
.nexus-page .shell > #ss-regulatory-2050,
.nexus-page .shell > .nexus-integration-note,
.nexus-page .shell > #nexus-inter-console,
.nexus-page .shell > .nexus-smoke-test,
.nexus-page .shell > .grid.grid-2.nexus-section,
.nexus-page .shell > .card:has(#hub-out-operations-summary),
.nexus-page .shell > .card:has(#hub-docs),
.nexus-page .shell > .card:has(#hub-out-errors),
.nexus-page .shell > .card:has(#hub-out-regulatory),
.nexus-page .shell > .card:has(#hub-out-360),
.nexus-page .shell > .card:has(#hub-out-vault),
.nexus-page .shell > .card:has(#hub-out-vault-alerts),
.nexus-page .shell > .card:has(#hub-knowledge-q),
.nexus-page .shell > .card:has(#hub-out-automation){
  display:none !important;
}

.nexus-mod-painel .shell > .ss-kpi,
.nexus-mod-painel .shell > .ss-action-band,
.nexus-mod-painel .shell > .nexus-grid-main{
  display:grid !important;
}

.nexus-mod-central .shell > #console-hub,
.nexus-mod-central .shell > #hub-notifications,
.nexus-mod-central .shell > .ss-split,
.nexus-mod-central .shell > .card:has(#hub-docs),
.nexus-mod-central .shell > .card:has(#hub-out-errors),
.nexus-mod-central .shell > .card:has(#hub-out-regulatory),
.nexus-mod-central .shell > .card:has(#hub-out-360){
  display:block !important;
}
.nexus-mod-central .shell > .ss-split{
  display:grid !important;
}

.nexus-mod-protocolos .shell > .card:has(#hub-out-operations-summary),
.nexus-mod-protocolos .shell > #hub-protocol-timeline{
  display:block !important;
}

.nexus-mod-tarefas .shell > #tarefas-internas,
.nexus-mod-tarefas .shell > .card:has(#hub-out-automation){
  display:block !important;
}

.nexus-mod-crm .shell > #carteira-crm{
  display:block !important;
}

.nexus-mod-integracoes .shell > .card:has(#hub-out-vault),
.nexus-mod-integracoes .shell > .card:has(#hub-out-vault-alerts),
.nexus-mod-integracoes .shell > #akad-gateway,
.nexus-mod-integracoes .shell > #allseg-gateway,
.nexus-mod-integracoes .shell > #monitor-integracoes,
.nexus-mod-integracoes .shell > .card:has(#hub-knowledge-q),
.nexus-mod-integracoes .shell > .nexus-integration-note,
.nexus-mod-integracoes .shell > .grid.grid-2.nexus-section,
.nexus-mod-integracoes .shell > .nexus-smoke-test{
  display:block !important;
}
.nexus-mod-integracoes .shell > .grid.grid-2.nexus-section{
  display:grid !important;
}

.nexus-mod-regulatorio .shell > #ss-regulatory-2050{
  display:block !important;
}

.nexus-page .shell > #financeiro-inter-pj{
  display:none !important;
}
.nexus-mod-inter .shell > #nexus-inter-console{
  display:block !important;
}



/* One shared visual language for the entire Nexus workspace. */
body.nexus-page {
  --nx-bg:#f5f6f8; --nx-panel:#fff; --nx-panel-soft:#f8fafc; --nx-ink:#172033;
  --nx-muted:#6c778b; --nx-line:#e6e9ef; --nx-accent:#f4cf55; --nx-accent-ink:#172033;
  --nx-blue:#3369e8; --nx-sidebar:#111a2c; --nx-shadow:0 3px 16px rgba(21,32,52,.035);
  --bg:var(--nx-bg); --card:var(--nx-panel); --ink:var(--nx-ink); --muted:var(--nx-muted); --line:var(--nx-line); --gold:var(--nx-accent); --sky:var(--nx-blue);
  margin:0!important; background:var(--nx-bg)!important; color:var(--nx-ink)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif; font-size:14px; line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
[data-theme="dark"] body.nexus-page {
  --nx-bg:#0c1321; --nx-panel:#141e30; --nx-panel-soft:#19253a; --nx-ink:#eef2f9;
  --nx-muted:#99a8c0; --nx-line:#25334a; --nx-blue:#91b6ff; --nx-shadow:0 3px 16px rgba(0,0,0,.08);
}
body.nexus-page::before {display:none!important}
body.nexus-page * {box-sizing:border-box}
body.nexus-page svg {width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
body.nexus-page a {color:var(--nx-blue);text-decoration:none;font-weight:600}
body.nexus-page a:hover {text-decoration:none}
body.nexus-page button {font-family:inherit;cursor:pointer}
body.nexus-page :focus-visible {outline:3px solid #638ef4;outline-offset:3px}
body.nexus-page [hidden] {display:none!important}
.nx-skip {position:fixed;top:-60px;left:280px;padding:10px 18px;background:var(--nx-panel);z-index:110}
.nx-skip:focus {top:12px}
body.nexus-page .nx-sidebar {
  position:fixed;inset:16px auto 16px 16px;z-index:60;width:244px;max-width:none;min-height:0;
  display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;gap:0;
  padding:22px 14px 12px;margin:0;border:0;border-radius:18px;
  background:var(--nx-sidebar);box-shadow:none;backdrop-filter:none;color:#a1afc4;overflow-y:auto;overflow-x:hidden;
  scrollbar-width:thin;scrollbar-color:#354059 transparent;
}
body.nexus-page .nx-brand {display:flex;gap:11px;padding:0 12px 24px;color:#fff;flex-shrink:0;align-items:center}
.nx-brand-symbol {position:relative;display:grid;place-items:center;font-weight:850;font-size:29px;width:37px;height:37px;color:#fff;line-height:1}
.nx-brand-symbol>span {position:absolute;right:-5px;top:-4px;font-size:32px;color:var(--nx-accent);font-weight:800}
.nx-brand-word {font-size:23px;font-weight:800;letter-spacing:.08em;line-height:1.1}
.nx-brand-word small {display:block;font-size:8px;letter-spacing:.19em;color:#8496b0;font-weight:650;margin-top:5px}
.nx-workspace-switch {display:flex;align-items:center;gap:10px;padding:12px 10px;background:#1c273b;border:1px solid #2a3549;border-radius:10px;margin:0 4px 25px;color:#e3e9f3;font-size:12px;flex-shrink:0}
.nx-workspace-switch small {display:block;color:#8595af;font-size:10px;margin-top:1px}
.nx-workspace-icon {display:grid;place-items:center;background:#35435b;width:28px;height:28px;border-radius:7px;color:#dae5f8;font-weight:750}
.nx-live-dot {width:6px;height:6px;background:#5ecdaf;border-radius:50%;margin-left:auto}
.nx-nav-label {font-size:9px;letter-spacing:.13em;font-weight:700;color:#5f7290;padding:0 14px 10px}
.nx-navigation {display:flex;flex-direction:column;flex-wrap:nowrap;gap:4px;flex-shrink:0}
body.nexus-page .nx-nav-link {position:relative;display:flex;align-items:center;gap:11px;min-height:42px;padding:10px 13px;border:1px solid transparent;border-radius:9px;font-size:12px;font-weight:550;color:#95a6bf;white-space:nowrap;transition:background .15s,color .15s}
.nx-nav-link svg {width:18px!important;height:18px!important;color:#8192ad}
body.nexus-page .nx-nav-link:hover {background:#202c42;color:#fff}
body.nexus-page .nx-nav-link.is-active {background:var(--nx-accent);color:#182039;font-weight:700}
.nx-nav-link.is-active svg {color:#182039}
.nx-sidebar-bottom {margin-top:auto;padding:22px 4px 0;flex-shrink:0}
body.nexus-page .nx-help-link {display:flex;align-items:center;gap:12px;padding:10px;color:#8697b0;font-size:11px;font-weight:500}
.nx-help-link>span:first-child {width:18px;height:18px;border:1px solid #657792;border-radius:50%;display:grid;place-items:center;font-size:11px}
.nx-profile {display:flex;align-items:center;gap:9px;border-top:1px solid #27334a;margin-top:12px;padding:18px 6px 4px}
.nx-profile>div {min-width:0;flex:1}
.nx-profile strong {display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:10px;font-weight:600;color:#e9eef6}
.nx-profile small {display:block;color:#7185a3;font-size:9px;margin-top:2px}
body.nexus-page .nx-profile>a {color:#7185a3;display:flex}
.nx-avatar {display:grid;place-items:center;flex-shrink:0;width:33px;height:33px;background:#e8edfa;color:#455f98;border-radius:9px;font-size:13px;font-weight:700}
.nx-profile .nx-avatar {background:#29384f;color:#a9bbd6}
.nx-avatar--small {width:32px;height:32px;border-radius:50%;font-size:11px}
.nx-topbar {position:sticky;top:0;z-index:35;height:78px;margin:0 28px 0 288px;border-bottom:1px solid var(--nx-line);background:var(--nx-bg);display:flex;align-items:center;justify-content:space-between;gap:20px}
.nx-topbar-context,.nx-topbar-actions {display:flex;align-items:center;gap:16px;min-width:0}
.nx-breadcrumb {font-size:11px;white-space:nowrap;color:var(--nx-muted)}
.nx-breadcrumb>span {margin:0 10px;color:#b9c2d1}
.nx-breadcrumb strong {color:var(--nx-ink);font-weight:550}
.nx-icon-button {width:30px;height:30px;display:grid;place-items:center;border:0;background:transparent;color:var(--nx-muted);padding:4px;border-radius:7px;cursor:pointer;font-size:10px}
.nx-icon-button:hover {background:var(--nx-panel-soft);color:var(--nx-ink)}
body.nexus-page .theme-toggle.nx-icon-button {min-width:38px;width:38px;height:30px;border:1px solid var(--nx-line);background:var(--nx-panel);color:var(--nx-muted);font-size:9px;box-shadow:none;padding:0;border-radius:7px}
.nx-command-trigger {display:flex;align-items:center;gap:9px;margin-left:auto;background:var(--nx-panel);border:1px solid var(--nx-line);border-radius:8px;padding:9px 11px;min-width:240px;max-width:320px;color:var(--nx-muted);font-size:11px}
.nx-command-trigger svg {width:15px!important;height:15px!important}
.nx-command-trigger kbd {margin-left:auto;white-space:nowrap;border:1px solid var(--nx-line);border-radius:4px;font-size:9px;padding:0 5px;background:var(--nx-panel-soft);font-family:inherit;color:var(--nx-muted)}
.nx-date {font-size:10px;white-space:nowrap;color:var(--nx-muted)}
body.nexus-page .shell {width:auto;max-width:none;margin:0 28px 0 288px;padding:30px 0 0;font-size:14px;line-height:1.6;min-width:0}
body.nexus-page .shell::before {display:none}
.nx-footer {margin-top:48px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--nx-line);padding:20px 0 24px;font-size:10px;color:var(--nx-muted)}
body.nexus-page .nx-footer a {font-size:10px;color:var(--nx-muted)}
body.nexus-page .nexus-dashboard-head,body.nexus-page .projects-heading {display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 25px;padding:0;background:none;border:0;box-shadow:none;min-height:0}
body.nexus-page h1 {font-size:28px!important;line-height:1.25!important;letter-spacing:-.045em!important;font-weight:700!important;color:var(--nx-ink)!important;margin:6px 0 10px!important}
body.nexus-page h2 {font-size:17px;line-height:1.4;font-weight:650;letter-spacing:-.025em;color:var(--nx-ink);margin:0 0 12px}
body.nexus-page h3 {font-size:13px;line-height:1.45;font-weight:650;color:var(--nx-ink)}
body.nexus-page p {line-height:1.65}
body.nexus-page .ss-muted {color:var(--nx-muted)!important;font-size:12px!important;font-weight:400}
body.nexus-page .nexus-subtitle,body.nexus-page .pill,body.nexus-page .nexus-inter-kicker {display:inline-flex;align-items:center;color:var(--nx-muted);font-size:9px;font-weight:650;letter-spacing:.09em;text-transform:uppercase;background:transparent;border:0;box-shadow:none;padding:0;line-height:1.5;border-radius:0}
body.nexus-page .nexus-dashboard-head p {margin:0;max-width:750px;font-size:12px}
body.nexus-page .nexus-head-metrics {display:none}
body.nexus-page .ss-hero {display:none}
body.nexus-page .card,body.nexus-page .nexus-card,body.nexus-page .reg-console,body.nexus-page .nexus-inter-card,body.nexus-page .nexus-inter-form,body.nexus-page .nexus-inter-stat {
  background:var(--nx-panel)!important;color:var(--nx-ink)!important;border:1px solid var(--nx-line)!important;border-radius:13px!important;padding:24px;box-shadow:var(--nx-shadow)!important;backdrop-filter:none!important;min-width:0;
}
body.nexus-page .card:before,body.nexus-page .nexus-card:before {display:none}
body.nexus-page .nexus-section {margin-top:20px}
body.nexus-page .nexus-grid-main {display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:20px;margin-top:20px;align-items:start}
body.nexus-page .nexus-stack {display:grid;gap:20px;min-width:0}
body.nexus-page .ss-kpi {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
body.nexus-page .ss-kpi article {padding:18px;background:var(--nx-panel-soft);border:1px solid var(--nx-line);border-radius:10px;box-shadow:none;min-width:0}
body.nexus-page .ss-kpi article>span {font-size:10px;color:var(--nx-muted);font-weight:500;letter-spacing:0;text-transform:none}
body.nexus-page .ss-kpi article>strong {display:block;font-size:25px;margin:8px 0;font-weight:650;line-height:1.2;letter-spacing:-.04em;overflow-wrap:anywhere}
body.nexus-page .ss-kpi article p {font-size:10px!important;line-height:1.55;margin-bottom:0}
body.nexus-page .ss-grid,body.nexus-page .ss-split,body.nexus-page .grid-2 {gap:16px;min-width:0}
body.nexus-page .ss-toolbar {display:flex;align-items:center;gap:8px;flex-wrap:wrap}
body.nexus-page .btn,body.nexus-page .submit,body.nexus-page .nexus-inter-btn,body.nexus-page .nexus-painel-aluguel-cta__btn {
  display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;padding:9px 16px!important;background:var(--nx-accent)!important;color:var(--nx-accent-ink)!important;border:1px solid #e7bf43!important;border-radius:8px!important;font-size:11px!important;font-weight:650!important;box-shadow:none!important;line-height:1.4;text-decoration:none;transform:none;letter-spacing:0;
}
body.nexus-page .btn:hover {background:#f7d873!important;box-shadow:0 3px 8px rgba(190,152,24,.10)!important}
body.nexus-page .btn-ghost,body.nexus-page .nexus-inter-btn--soft,body.nexus-page .nexus-inter-tabs button {
  display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:8px 13px!important;border:1px solid var(--nx-line)!important;border-radius:8px!important;background:var(--nx-panel)!important;color:var(--nx-ink)!important;font-size:11px!important;font-family:inherit;font-weight:550!important;box-shadow:none!important;line-height:1.4;letter-spacing:0;text-decoration:none;
}
body.nexus-page .btn-ghost:hover {background:var(--nx-panel-soft)!important;border-color:#c4cede!important}
body.nexus-page button:disabled {opacity:.48;cursor:not-allowed}
body.nexus-page input:not([type=checkbox]):not([type=radio]):not([type=hidden]),body.nexus-page select,body.nexus-page textarea {
  width:100%;max-width:100%;min-width:0;min-height:39px;font:inherit;font-size:12px!important;border:1px solid var(--nx-line)!important;border-radius:8px!important;background:var(--nx-panel)!important;color:var(--nx-ink)!important;padding:9px 11px!important;box-shadow:none;outline-offset:0;
}
body.nexus-page input:focus,body.nexus-page select:focus,body.nexus-page textarea:focus {outline:2px solid #84a7f5;border-color:#84a7f5!important}
body.nexus-page input::placeholder,body.nexus-page textarea::placeholder {color:#a0aabd;font-weight:400}
body.nexus-page label {font-size:11px!important;font-weight:550!important;color:var(--nx-muted);margin-bottom:6px}
body.nexus-page textarea {line-height:1.6;resize:vertical}
body.nexus-page input[type=checkbox],body.nexus-page input[type=radio] {accent-color:var(--nx-blue)}
body.nexus-page fieldset {border:1px solid var(--nx-line);border-radius:10px;padding:16px;min-width:0}
body.nexus-page legend {font-size:11px;color:var(--nx-muted);font-weight:600;padding:0 6px}
body.nexus-page table {width:100%;border-collapse:collapse;font-size:11px;display:block;overflow-x:auto;border-radius:8px}
body.nexus-page th {color:var(--nx-muted);font-weight:550;background:var(--nx-panel-soft);font-size:10px;text-align:left;white-space:nowrap;padding:12px 14px;border-bottom:1px solid var(--nx-line)}
body.nexus-page td {padding:13px 14px;border-bottom:1px solid var(--nx-line);color:var(--nx-ink);vertical-align:top}
body.nexus-page tr:hover td {background:var(--nx-panel-soft)}
body.nexus-page pre {white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;background:var(--nx-panel-soft)!important;border:1px solid var(--nx-line)!important;border-radius:8px!important;color:var(--nx-muted)!important;font-size:11px!important;padding:14px!important;max-height:350px;overflow:auto}
body.nexus-page code {font-size:11px;overflow-wrap:anywhere}
body.nexus-page details {background:var(--nx-panel-soft);border:1px solid var(--nx-line);padding:12px 14px;border-radius:9px;margin:12px 0}
body.nexus-page summary {cursor:pointer;font-size:11px;font-weight:600;color:var(--nx-muted)}
body.nexus-page details[open]>summary {color:var(--nx-ink);margin-bottom:12px}
body.nexus-page .ss-doc,body.nexus-page .ss-event,body.nexus-page .ss-timeline-item {border-color:var(--nx-line);background:var(--nx-panel-soft);box-shadow:none;border-radius:9px}
body.nexus-page .ss-badge,body.nexus-page .projects-badge,body.nexus-page .nexus-inter-badge {display:inline-flex;border:0;border-radius:5px;padding:4px 8px;font-size:9px;background:#eef2fa;color:#49618e;font-weight:550;letter-spacing:0;text-transform:none}
[data-theme=dark] body.nexus-page .ss-badge,[data-theme=dark] body.nexus-page .projects-badge {background:#273956;color:#b8cced}
body.nexus-page progress {height:5px;border:0;border-radius:10px;overflow:hidden;accent-color:#507fea;background:var(--nx-line)}
body.nexus-page progress::-webkit-progress-bar {background:var(--nx-line);border-radius:10px}
body.nexus-page progress::-webkit-progress-value {background:#507fea;border-radius:10px}
body.nexus-page .nexus-painel-aluguel-cta {grid-column:1/-1;background:var(--nx-panel)!important;padding:18px 22px!important;border-left:3px solid var(--nx-accent)!important}
.nx-welcome {display:grid;grid-template-columns:1.6fr 1fr;gap:20px;margin-bottom:20px}
.nx-welcome-copy {position:relative;overflow:hidden;background:#15233e;border-radius:14px;padding:28px 30px;color:#dce6f7;min-height:192px;display:flex;flex-direction:column;justify-content:center}
.nx-welcome-copy::after {content:"";position:absolute;right:-22px;top:-80px;width:280px;height:280px;border:1px solid #39486a;border-radius:50%;box-shadow:0 0 0 40px #1a2a47,0 0 0 41px #2c3d5d;pointer-events:none;opacity:.5}
.nx-welcome-copy>div {position:relative;z-index:1;max-width:440px}
.nx-welcome-label {font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:#96a9c7}
body.nexus-page .nx-welcome-copy h2 {font-size:27px;color:#fff;letter-spacing:-.045em;margin:10px 0}
.nx-welcome-copy p {font-size:12px;color:#96a9c7;max-width:330px;margin:0 0 20px}
body.nexus-page .nx-welcome-copy a {display:inline-flex;align-items:center;gap:10px;font-size:11px;color:var(--nx-accent)}
.nx-shortcuts {display:grid;gap:9px;align-content:stretch}
body.nexus-page .nx-shortcut {display:flex;align-items:center;gap:14px;padding:15px 18px;background:var(--nx-panel);border:1px solid var(--nx-line);border-radius:11px;color:var(--nx-ink);box-shadow:var(--nx-shadow);transition:border-color .15s,transform .15s}
.nx-shortcut:hover {border-color:#b4c3db!important;transform:translateY(-1px)}
.nx-shortcut>span:first-child {width:35px;height:35px;display:grid;place-items:center;border-radius:10px;background:#edf2ff;color:#5376cb;font-size:17px}
.nx-shortcut:nth-child(2)>span:first-child {background:#eef7f1;color:#55956f}
.nx-shortcut:nth-child(3)>span:first-child {background:#fcf6e5;color:#b79a41}
.nx-shortcut>div {flex:1}
.nx-shortcut strong {display:block;font-size:12px;font-weight:600}
.nx-shortcut small {display:block;font-size:10px;color:var(--nx-muted);font-weight:400}
.nx-shortcut>span:last-child {color:#a0aabd;font-size:15px}
body.nexus-page .nexus-inter-hero {background:var(--nx-panel);border:1px solid var(--nx-line);box-shadow:none;border-radius:13px;padding:24px}
body.nexus-page .nexus-inter-hero h2 {font-size:23px;letter-spacing:-.03em}
body.nexus-page .nexus-inter-hero p {color:var(--nx-muted)}
body.nexus-page .nexus-inter-tabs {background:var(--nx-panel-soft);border:1px solid var(--nx-line);border-radius:9px;padding:5px}
body.nexus-page .nexus-inter-tabs button.is-active {background:var(--nx-panel)!important;color:var(--nx-blue)!important;border-color:var(--nx-line)!important;box-shadow:var(--nx-shadow)!important}
body.nexus-page .nexus-inter-card p,body.nexus-page .nexus-inter-stat span {color:var(--nx-muted)}
body.nexus-page .nexus-inter-card strong,body.nexus-page .nexus-inter-stat strong {color:var(--nx-ink)}
body.nexus-page .integration-module {scroll-margin-top:95px;border-radius:13px!important;box-shadow:none!important}
body.nexus-page .projects-filters {padding:18px 20px!important;gap:16px;margin-bottom:22px}
body.nexus-page .projects-workspace {grid-template-columns:minmax(230px,300px) minmax(0,1fr);gap:20px}
body.nexus-page .projects-project {background:var(--nx-panel);border:1px solid var(--nx-line);border-radius:11px;padding:17px;box-shadow:none}
body.nexus-page .projects-project[aria-pressed=true] {border-color:#80a1ed;box-shadow:0 0 0 2px #e4edff}
[data-theme=dark] body.nexus-page .projects-project[aria-pressed=true] {box-shadow:0 0 0 2px #243960}
body.nexus-page .projects-project h3 {font-size:13px}
body.nexus-page .projects-detail {padding:22px!important}
body.nexus-page .projects-column {background:var(--nx-panel-soft);border:1px solid var(--nx-line);padding:12px;border-radius:10px}
body.nexus-page .projects-column h3 {font-size:10px;color:var(--nx-muted);font-weight:600;letter-spacing:.02em}
body.nexus-page .projects-task {background:var(--nx-panel);border:1px solid var(--nx-line);border-radius:9px;box-shadow:0 2px 4px rgba(0,0,0,.015);padding:13px}
body.nexus-page .projects-task h4 {font-size:12px;font-weight:600;line-height:1.5}
body.nexus-page .projects-task p {font-size:10px!important}
body.nexus-page .projects-task select {font-size:10px!important;min-height:32px}
body.nexus-page .projects-dialog {width:min(610px,calc(100% - 32px));border:1px solid var(--nx-line);background:var(--nx-panel);color:var(--nx-ink);border-radius:14px;padding:26px;box-shadow:0 30px 90px rgba(14,25,45,.2)}
body.nexus-page .metagal-dialog {width:min(900px,calc(100% - 32px))}
body.nexus-page dialog::backdrop {background:rgba(11,20,37,.48);backdrop-filter:blur(3px)}
body.nexus-page .metagal-phases article {background:var(--nx-panel-soft);border-color:var(--nx-line);border-radius:10px;padding:14px}
body.nexus-page .metagal-phases h3 {font-size:11px;min-height:44px}
body.nexus-page .metagal-record h3 {font-size:12px;font-weight:600}
body.nexus-page .metagal-record p {font-size:10px!important;color:var(--nx-muted)}
body.nexus-page .projects-empty {background:var(--nx-panel-soft);border:1px dashed #d6deeb;border-radius:10px;padding:28px!important;text-align:center;font-size:12px;color:var(--nx-muted)}
body.nexus-page #projects-message {font-size:11px;padding:10px 13px;border-radius:8px;background:#edf3ff;color:#5970a6;min-height:35px}
body.nexus-page #projects-message[data-error=true],body.nexus-page .projects-form-error:not(:empty) {color:#b73a42;background:#fff0f1;border:1px solid #fadce0;padding:10px 13px;border-radius:8px}
[data-theme=dark] body.nexus-page #projects-message {background:#1c2c49;color:#b3c8ed}
[data-theme=dark] body.nexus-page #projects-message[data-error=true] {background:#3b202a;color:#f2b4bd;border-color:#5e3041}
.nx-command-dialog {width:min(560px,calc(100% - 32px));border:1px solid var(--nx-line);background:var(--nx-panel);color:var(--nx-ink);border-radius:14px;padding:0;box-shadow:0 25px 80px rgba(15,23,42,.25);margin-top:min(16vh,140px)}
.nx-command-head {display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid var(--nx-line)}
body.nexus-page #nx-command-input {border:0!important;padding:0!important;background:transparent!important;outline:none!important}
#nx-command-results {padding:8px;max-height:400px;overflow-y:auto}
body.nexus-page .nx-command-result {display:flex;gap:14px;padding:11px 13px;align-items:center;color:var(--nx-ink);border-radius:8px;font-size:12px}
.nx-command-result[aria-selected=true] {background:var(--nx-panel-soft)}
.nx-command-result small {margin-left:auto;font-size:10px;color:var(--nx-muted)}
.nx-command-hint {padding:12px 16px;border-top:1px solid var(--nx-line);font-size:10px;color:var(--nx-muted);margin:0}
.nx-mobile-scrim {position:fixed;inset:0;background:rgba(10,19,34,.45);z-index:55;backdrop-filter:blur(2px)}
body.nexus-page.nx-nav-collapsed .nx-sidebar {width:76px;padding-left:10px;padding-right:10px}
.nx-nav-collapsed .nx-brand-word,.nx-nav-collapsed .nx-workspace-switch,.nx-nav-collapsed .nx-nav-label,.nx-nav-collapsed .nx-nav-link>span,.nx-nav-collapsed .nx-help-link>span:last-child,.nx-nav-collapsed .nx-profile>div,.nx-nav-collapsed .nx-profile>a {display:none}
body.nexus-page.nx-nav-collapsed .nx-brand {padding-left:7px;padding-right:0}
.nx-nav-collapsed .nx-nav-link {justify-content:center}
.nx-nav-collapsed .nx-profile {justify-content:center;padding-left:0;padding-right:0}
.nx-nav-collapsed .nx-help-link {justify-content:center;padding-left:0;padding-right:0}
body.nexus-page.nx-nav-collapsed .shell,.nx-nav-collapsed .nx-topbar {margin-left:120px}
@media(min-width:1800px) {body.nexus-page .shell {padding-right:20px;padding-left:20px}.nx-topbar {padding:0 20px}}
@media(max-width:1200px) {body.nexus-page .nexus-grid-main{grid-template-columns:1fr}.nx-command-trigger{min-width:180px}.nx-date{display:none}body.nexus-page .projects-workspace{grid-template-columns:1fr}body.nexus-page .projects-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px) {
 body.nexus-page .nx-sidebar {transform:translateX(-280px);inset:12px auto 12px 12px;width:244px;transition:transform .2s ease}
 body.nexus-page.nx-nav-open .nx-sidebar {transform:translateX(0)}
 body.nexus-page .shell,body.nexus-page.nx-nav-collapsed .shell {margin:0 20px;padding-top:24px}
 .nx-topbar,body.nexus-page.nx-nav-collapsed .nx-topbar {margin:0 20px;height:64px}
 body.nexus-page.nx-nav-collapsed .nx-sidebar {width:244px;padding:22px 14px 12px}
 .nx-welcome {grid-template-columns:1fr}.nx-shortcuts{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
 body.nexus-page .nx-shortcut{padding:14px;align-items:start;flex-direction:column;gap:10px}.nx-shortcut>span:last-child{display:none}
 .nx-breadcrumb {font-size:10px}.nx-command-trigger {min-width:0;padding:8px}.nx-command-trigger>span,.nx-command-trigger kbd{display:none}.nx-topbar-actions{gap:10px}
 .nx-command-trigger{margin-left:auto}.nx-topbar{gap:10px}.nx-topbar-context{gap:9px}
}
@media(max-width:600px) {
 body.nexus-page .shell{margin:0 16px;padding-top:20px}.nx-topbar{margin:0 16px}.nx-breadcrumb{max-width:190px;overflow:hidden;text-overflow:ellipsis}.nx-breadcrumb>span{margin:0 5px}
 body.nexus-page h1{font-size:24px!important}body.nexus-page .nexus-dashboard-head,body.nexus-page .projects-heading{align-items:flex-start;gap:14px;flex-direction:column}
 body.nexus-page .card,body.nexus-page .nexus-card,body.nexus-page .reg-console{padding:18px!important}
 body.nexus-page .ss-kpi{grid-template-columns:repeat(2,minmax(0,1fr))}.nx-welcome-copy{padding:24px;min-height:190px}.nx-shortcuts{grid-template-columns:1fr}body.nexus-page .nx-shortcut{flex-direction:row;align-items:center;padding:14px}.nx-shortcut>span:last-child{display:block}
 body.nexus-page .projects-filters{flex-direction:column;align-items:stretch}body.nexus-page .projects-filters label{min-width:0}
 body.nexus-page .projects-list,body.nexus-page .projects-board,body.nexus-page .projects-form-grid,body.nexus-page .ss-split,body.nexus-page .grid-2{grid-template-columns:1fr!important}
 body.nexus-page .nexus-inter-hero{grid-template-columns:1fr;padding:18px}body.nexus-page .nexus-inter-hero h2{font-size:21px}
 body.nexus-page .nexus-inter-grid{grid-template-columns:1fr}body.nexus-page .nexus-inter-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.nexus-page .ss-grid{grid-template-columns:1fr!important}.nx-footer{flex-wrap:wrap;font-size:9px}.nx-footer>span:nth-child(2){display:none}
 body.nexus-page .projects-dialog{padding:20px}.nx-topbar-actions .nx-avatar{display:none}
}
@media(prefers-reduced-motion:reduce) {body.nexus-page *,body.nexus-page *::before,body.nexus-page *::after {animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Nexus access: authentication stays in the existing PHP security flow. */
body.nx-auth,body.nx-support {--nx-bg:#f6f7f9;--nx-panel:#fff;--nx-ink:#172033;--nx-muted:#798399;--nx-line:#e5e9f0;--nx-accent:#f4cf55;--nx-blue:#3d69c7;margin:0;background:var(--nx-bg);color:var(--nx-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.6;-webkit-font-smoothing:antialiased}
.nx-auth *,.nx-support * {box-sizing:border-box}
body.nx-auth {display:grid;grid-template-columns:minmax(400px,1fr) minmax(480px,1fr);min-height:100vh}
.nx-auth a {text-decoration:none;color:var(--nx-blue)}
.nx-auth-story {position:relative;overflow:hidden;background:#131f36;padding:45px 60px;display:flex;flex-direction:column;color:#c5d2e5;min-height:100vh}
.nx-auth-story::after {content:"";position:absolute;right:-240px;bottom:-380px;width:750px;height:750px;border:1px solid #344560;border-radius:50%;box-shadow:0 0 0 65px #16243d,0 0 0 66px #2b3c58,0 0 0 140px #142039,0 0 0 141px #2a3952;opacity:.65;pointer-events:none}
.nx-auth .nx-auth-brand {position:relative;z-index:1;font-size:30px;letter-spacing:.04em;font-weight:850;color:#fff;width:fit-content;line-height:1}
.nx-auth-brand>span {color:var(--nx-accent);font-size:31px;letter-spacing:-.2em;margin-right:5px}
.nx-auth-brand small {display:block;font-size:8px;letter-spacing:.25em;color:#879cba;margin-top:10px}
.nx-auth-story-copy {position:relative;z-index:1;margin:auto 0;padding:65px 0}
.nx-auth-story-copy>span {font-size:9px;letter-spacing:.17em;color:#7d94b6;font-weight:600}
.nx-auth-story-copy h1 {font-size:clamp(34px,3.8vw,62px);line-height:1.15;letter-spacing:-.05em;font-weight:600;color:#fff;margin:22px 0}
.nx-auth-story-copy h1 em {font-style:normal;color:var(--nx-accent)}
.nx-auth-story-copy p {color:#8fa4c1;font-size:14px;line-height:1.7;max-width:350px}
.nx-auth-tags {display:flex;gap:8px;flex-wrap:wrap;margin-top:30px}
.nx-auth-tags span {border:1px solid #3b4a60;padding:6px 11px;border-radius:6px;color:#b0c1d8;font-size:10px}
.nx-auth-story>footer {position:relative;z-index:1;font-size:10px;color:#7187a8}
.nx-auth-main {padding:40px 50px 25px;display:flex;flex-direction:column;min-height:100vh;background:#fff}
.nx-auth-back {font-size:11px;color:#8390a5!important;align-self:flex-end}
.nx-auth-form {width:100%;max-width:360px;margin:auto;align-self:center;padding:60px 0}
.nx-auth-eyebrow {font-size:9px;letter-spacing:.14em;font-weight:650;color:#98a2b4}
.nx-auth-form h2 {font-size:29px;line-height:1.3;letter-spacing:-.035em;font-weight:650;margin:12px 0 6px}
.nx-auth-form>p {font-size:12px;color:#8791a2;margin:0 0 30px}
.nx-auth label {font-size:11px;font-weight:600;display:block;margin-bottom:8px;color:#526078}
.nx-auth input:not([type=hidden]) {width:100%;min-height:44px;padding:11px 13px;background:#fff;border:1px solid #dfe5ee;border-radius:8px;color:#172033;font:inherit;font-size:12px;outline-offset:0}
.nx-auth input:not([type=hidden]):focus {outline:2px solid #9ab5f0;border-color:#9ab5f0}
.nx-auth input::placeholder {color:#a3adbd}
.nx-auth-password-label {display:flex;align-items:center;justify-content:space-between;margin-top:22px}
.nx-auth-password-label a {font-size:10px;margin-bottom:8px;color:#728099}
.nx-auth-password {position:relative}
.nx-auth-password input {padding-right:70px!important}
.nx-auth-password button {position:absolute;right:10px;top:12px;border:0;background:transparent;color:#8793a8;font-size:10px;cursor:pointer;padding:3px}
.nx-auth-submit {width:100%;margin-top:26px;min-height:44px;border:1px solid #e7bf43;background:var(--nx-accent);color:#222b3e;border-radius:8px;font:inherit;font-size:12px;font-weight:650;display:flex;align-items:center;justify-content:space-between;padding:11px 15px;cursor:pointer}
.nx-auth-submit:hover {background:#f6d773}
.nx-auth-access-note {display:flex;gap:9px;margin-top:24px;padding:12px;border-radius:8px;background:#f7f9fc;border:1px solid #edf0f5;color:#8c97aa}
.nx-auth-access-note p {margin:0;font-size:10px;line-height:1.65;color:#8791a4}
.nx-auth-access-note a {color:#627dab;font-size:10px}
.nx-auth-client {display:flex;justify-content:space-between;font-size:11px;margin-top:28px;padding-top:22px;border-top:1px solid #edf0f5;color:#8791a4!important}
.nx-auth-main>footer {display:flex;justify-content:space-between;gap:20px;color:#a0a9b8;font-size:9px}
.nx-auth-form>p.nx-auth-error {font-size:11px;background:#fff0f2;color:#b2404b;border:1px solid #f3dce1;border-radius:8px;padding:12px;line-height:1.5;margin-top:20px}
.nx-auth :focus-visible {outline:3px solid #82a5ed;outline-offset:3px}
body.nx-support {background:var(--nx-bg)!important;padding:40px 20px!important;display:grid;place-items:center;min-height:100vh}
body.nx-support .wrap {width:min(560px,100%);margin:0;padding:35px;background:#fff!important;border:1px solid var(--nx-line)!important;border-radius:16px!important;box-shadow:0 10px 35px rgba(15,23,42,.04)!important;color:var(--nx-ink)!important}
body.nx-support .wrap>img {width:140px;max-width:50%;height:auto;margin-bottom:22px}
body.nx-support h1 {font-size:27px;letter-spacing:-.035em;margin:10px 0}
body.nx-support h2 {font-size:14px;font-weight:650;margin-top:0;color:var(--nx-ink)!important}
body.nx-support p,body.nx-support .muted {font-size:12px!important;line-height:1.7;color:#8791a4!important}
body.nx-support .kicker {font-size:9px;letter-spacing:.1em;color:#8492aa!important;background:none;border:0;padding:0;border-radius:0}
body.nx-support .box {padding:18px!important;background:#f8fafd!important;border:1px solid #e7edf5!important;border-radius:10px!important;margin:14px 0!important}
body.nx-support a {color:#5679be;font-size:11px;text-decoration:none}
body.nx-support .cta {display:flex;justify-content:center;gap:7px;background:#f4cf55!important;color:#263045!important;border:0!important;border-radius:8px!important;padding:12px!important;font-size:11px!important}
body.nx-support .theme-toggle {display:none}
@media(max-width:900px) {.nx-auth-story{padding:32px}.nx-auth-main{padding:30px}.nx-auth-story-copy h1{font-size:38px}body.nx-auth{grid-template-columns:1fr 1fr}}
@media(max-width:650px) {body.nx-auth{display:block}.nx-auth-story{min-height:0;padding:25px 24px}.nx-auth-story-copy{padding:24px 0 0}.nx-auth-story-copy h1{font-size:25px;line-height:1.2;margin:12px 0}.nx-auth-story-copy h1 br{display:none}.nx-auth-story-copy h1 em{display:block}.nx-auth-story-copy>span{display:none}.nx-auth-story-copy p,.nx-auth-tags,.nx-auth-story>footer{display:none}.nx-auth .nx-auth-brand{font-size:24px}.nx-auth-main{min-height:calc(100vh - 210px);padding:22px}.nx-auth-form{padding:28px 0 45px;max-width:400px}.nx-auth-form h2{font-size:26px}.nx-auth-back{display:none}.nx-auth-main>footer{font-size:8px}.nx-auth-main>footer>span{display:none}body.nx-support{padding:20px 14px!important}body.nx-support .wrap{padding:25px}}

/* Integration forms belong to their module, not the overview. */
.nexus-page:not(.nexus-mod-integracoes) .shell > #hub-integrations-workspace,
.nexus-page:not(.nexus-mod-integracoes) .shell > .integration-module { display: none !important; }
@media (max-width: 900px) {
  .nexus-page .integration-hub-grid { grid-template-columns: 1fr !important; }
  .nexus-page .ss-ai-panel { width: min(340px, calc(100vw - 32px)); max-width: calc(100vw - 32px); }
}

.nexus-page .projects-connection { margin-bottom: 20px; }
.nexus-page #projects-recovery:not([hidden]) { display: flex; align-items: center; flex-wrap: wrap; gap: 16px; margin-top: 12px; }
.nexus-page .projects-empty strong { display: block; color: var(--nx-ink); font-size: 16px; }
.nexus-page .projects-empty p { margin-bottom: 0; }

.nx-inline-arrow svg, .nx-brand-symbol svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.8; }
body.nexus-page .ss-step { background: var(--nx-panel-soft); color: var(--nx-muted); border: 1px solid var(--nx-line); }
body.nexus-page .ss-step--on { background: color-mix(in srgb, var(--nx-blue) 10%, var(--nx-panel)); color: var(--nx-blue); border-color: var(--nx-blue); }
body.nexus-page .ss-step--gold { background: color-mix(in srgb, var(--nx-accent) 15%, var(--nx-panel)); color: var(--nx-ink); border-color: var(--nx-accent); }

.nx-auth-brand svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 2.5; }
body.nexus-page .theme-toggle.nx-icon-button span { font-size: 9px; letter-spacing: 0; line-height: 1; }
