/* Nexus unified interface refinement v1.96.98
   Shared visual consistency and responsive safety; does not change application behavior. */
:root{
  --nx-bg:#060a10;--nx-surface:#0a131c;--nx-surface-raised:#0e1b26;
  --nx-line:#213744;--nx-line-strong:#315260;--nx-text:#edf7fa;
  --nx-muted:#9ab0bc;--nx-cyan:#73e4ed;--nx-green:#75e5b2;
  --nx-amber:#e9bc72;--nx-red:#ff9299;--nx-radius:12px;
  --nx-shadow:0 14px 36px rgba(0,0,0,.18);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-padding-top:96px;text-size-adjust:100%;-webkit-text-size-adjust:100%}
body{min-width:320px;overflow-wrap:anywhere}
img,svg,video,canvas{max-width:100%}
:where(main,section,article,aside,header,footer,nav,form,fieldset,.wrap,.container,.panel,.card,.content-card,.metric-card,.module-card,.workspace,.page-content,.content-wrap){min-width:0}
:where(input,select,textarea){max-width:100%;min-width:0}
:where(input,select,textarea):focus-visible,:where(button,a,[role=button],[tabindex]):focus-visible{outline:2px solid var(--nx-cyan);outline-offset:3px}
::selection{background:#23616c;color:#fff}
:where(button,.btn,[role=button]){transition:background-color .16s ease,border-color .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease}
:where(button,.btn,[role=button]):active{transform:translateY(1px)}
:where(input,select,textarea){accent-color:var(--nx-cyan)}
:where(input:not([type=checkbox]):not([type=radio]),select,textarea){border-radius:8px}
:where(label){line-height:1.55}
:where(table){width:100%;border-collapse:collapse}
:where(th){text-align:left;color:#b9cbd4;font-weight:650}
:where(td,th){overflow-wrap:anywhere}
:where(pre,code){overflow-wrap:anywhere;white-space:pre-wrap}
:where(.table-wrap,.tablewrap,.table-scroll,.table-responsive){max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}
:where(.card,.panel,.content-card,.metric-card,.module-card,.template-card,.platform-card,.platform-note){box-shadow:var(--nx-shadow)}
:where(.eyebrow,.eyeline,.section-label,.overline){letter-spacing:.11em}
:where(.status,.badge,.pill,.tag){max-width:100%;overflow-wrap:anywhere}
:where(.empty-state,.error-state,.success-state,.notice,[role=status],[role=alert]){overflow-wrap:anywhere}
/* Public-site header/footer consistency across the landing, product, business and developer pages. */
:where(.nexus-site-footer,.site-footer,.footer){margin-top:clamp(38px,6vw,76px)}
:where(.footer-columns,.footer-grid,.footer-links){align-content:start}
:where(.nav a,.public-nav a,.workspace-nav a){text-decoration:none}
:where(.nav a,.public-nav a,.workspace-nav a):focus-visible{text-decoration:underline;text-underline-offset:4px}
/* Keep long operational tables readable without allowing page-wide overflow. */
:where(.data-table,.activity-table,.audit-table,.procurement-table){font-variant-numeric:tabular-nums}
:where(.data-table,.activity-table,.audit-table,.procurement-table) :where(td,th){padding:10px 12px;vertical-align:top}
@media(max-width:760px){
  html{scroll-padding-top:78px}
  :where(.action-row,.toolbar-actions,.filter-row,.form-actions,.button-row){flex-wrap:wrap}
  :where(button,.btn,[role=button]){max-width:100%;white-space:normal}
  :where(.table-wrap,.tablewrap,.table-scroll,.table-responsive){margin-inline:0}
  :where(.data-table,.activity-table,.audit-table,.procurement-table) :where(td,th){padding:9px 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}}

/* v1.96.99 — progressive-disclosure workspace navigation: five everyday actions first. */
.primary-nav .nav-more{display:block;min-width:0;margin-top:4px;border-top:1px solid var(--border,#213744);padding-top:7px}
.primary-nav .nav-more>summary{display:flex;align-items:center;gap:10px;min-height:42px;padding:8px 10px;border-radius:7px;color:var(--muted,#9ab0bc);font-size:12px;font-weight:650;cursor:pointer;list-style:none;touch-action:manipulation}
.primary-nav .nav-more>summary::-webkit-details-marker{display:none}
.primary-nav .nav-more>summary::after{content:none!important;display:none!important}
.primary-nav .nav-more>summary:hover,.primary-nav .nav-more>summary:focus-visible{background:var(--surface-2,#101720);color:var(--text,#edf7fa)}
.primary-nav .nav-more-count{margin-left:auto;color:var(--muted,#9ab0bc);font:9px "DM Mono",monospace;opacity:.8}
.primary-nav .nav-more[open] .nav-more-count{display:none}
.primary-nav .nav-more-links{display:grid;gap:3px;padding:5px 0 3px 9px}
.primary-nav .nav-more-links .nav-item{width:100%;min-width:0}
.primary-nav .nav-more-links .nav-item.active{border-color:var(--border-strong,#315260)}
@media(max-width:700px){.primary-nav .nav-more{grid-column:1/-1}.primary-nav .nav-more>summary{min-height:46px}.primary-nav .nav-more-links{padding-left:4px}.primary-nav .nav-more-links .nav-item{min-height:44px}}

/* Nexus navigation icon system: crisp inline SVG, consistent alignment, no external dependency. */
.nav-icon-svg{display:inline-flex!important;align-items:center;justify-content:center;width:19px;height:19px;flex:0 0 19px;color:var(--muted,#9ab0bc)}
.nav-icon-svg svg{display:block;width:18px;height:18px}
.nav-item:hover .nav-icon-svg,.nav-item.active .nav-icon-svg{color:var(--accent,var(--nx-cyan,#00d9ff))}
.nx-nav-icon{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;margin-right:7px;vertical-align:-4px;color:currentColor;opacity:.9}
.nx-nav-icon svg{display:block;width:16px;height:16px}
.nx-admin-icon{display:inline-flex!important;align-items:center;justify-content:center;width:20px;height:20px}
.nx-admin-icon svg{width:18px;height:18px;display:block}
@media(prefers-reduced-motion:reduce){.nav-icon-svg,.nx-nav-icon{transition:none!important}}

/* nexus-brand-core harmony (v1.146.0) — converge accents, surfaces and headline
   discipline across every shell with the homepage execution-core palette. */
:root{
  --nx-bg:#05080f;--nx-surface:#0a121b;--nx-surface-raised:#0e1b26;
  --nx-cyan:#62e9f5;--nx-green:#83f0bd;
  --nx-shadow:0 16px 40px rgba(0,0,0,.2);
  --nexus-cyan:#5fe8f3;--nexus-mint:#6cf2b1;--nexus-focus:rgba(98,233,245,.15);
  --cyan:#62e9f5;--mint:#83f0bd;
}
:where(h1,h2,h3){text-wrap:balance}
:where(h1,h2){letter-spacing:-.04em}
:where(.btn,.btn-primary,[role=button]){border-radius:10px}
