/* Opt-in presentation system. Never loaded by company_analysis or image renderers.
   Existing virtual-row dimensions and financial state classes remain authoritative. */
body.nc-ui {
  --nc-canvas:var(--bg-canvas); --nc-surface:var(--bg-surface); --nc-secondary:var(--bg-surface-secondary); --nc-wash:var(--bg-brand);
  --nc-ink:var(--text-primary); --nc-muted:var(--text-secondary); --nc-meta:var(--text-muted); --nc-border:var(--border-default);
  --nc-brand:var(--brand-primary); --nc-focus:var(--focus-ring); --nc-soft-border:var(--border-subtle);
  --nc-xs:4px; --nc-sm:8px; --nc-md:16px; --nc-lg:24px; --nc-xl:32px; --nc-section:48px;
  --nc-radius-sm:10px; --nc-radius:16px; --nc-radius-lg:24px;
  --nc-shadow:var(--shadow-md);
  color:var(--nc-ink); background:var(--nc-canvas); font-family:Vazirmatn,Tahoma,sans-serif;
  line-height:1.75; margin:0;
}
html[data-market-theme="dark"] body.nc-ui {
  --nc-canvas:var(--bg-canvas); --nc-surface:var(--bg-surface); --nc-secondary:var(--bg-surface-secondary); --nc-wash:var(--bg-brand);
  --nc-ink:var(--text-primary); --nc-muted:var(--text-secondary); --nc-meta:var(--text-muted); --nc-border:var(--border-default);
  --nc-soft-border:var(--border-subtle); --nc-brand:var(--brand-primary); --nc-focus:var(--focus-ring); --nc-shadow:var(--shadow-md);
}
/* Narrow compatibility bridge for legacy market-ui !important declarations.
   Do not change market-ui itself: it is also consumed by protected analysis. */
html body.nc-ui,html[data-market-theme] body.nc-ui {background:var(--nc-canvas)!important;color:var(--nc-ink)!important}
html body.nc-ui>header,.nc-ui .nc-navigation {background:var(--nc-surface)!important;box-shadow:none!important;border-color:var(--nc-border)!important}
html body.nc-account :is(input,select,textarea),html body.nc-ui .nc-navigation input,
html body.nc-ui .asset-input-card input {background:var(--nc-secondary)!important;color:var(--nc-ink)!important;border-color:var(--nc-border)!important;box-shadow:none}
html body.nc-ui .nc-navigation .ti-global-search {background:var(--nc-secondary)!important}
/* Map the established terminal palette only outside approved asset previews. */
body.nc-ui:not(.asset-calculator-page),html[data-market-theme] body.nc-ui:not(.asset-calculator-page) {
  --ti-bg:var(--nc-canvas); --ti-bg-deep:var(--nc-secondary); --ti-panel:var(--nc-surface);
  --ti-panel-solid:var(--nc-surface); --ti-panel-alt:var(--nc-secondary); --ti-ink:var(--nc-ink);
  --ti-muted:var(--nc-meta); --ti-line:var(--nc-soft-border); --ti-line-strong:var(--nc-border);
  --ti-brand:var(--nc-brand); --ti-shadow:var(--nc-shadow);
}
.nc-ui :where(a,button,input,select,textarea,summary) {scroll-margin-block:160px}
.nc-ui :where(a,button,input,select,textarea,summary):focus-visible {outline:3px solid var(--nc-focus);outline-offset:3px}
.nc-ui :where(input,select,textarea) {font-variant-numeric:tabular-nums}
.nc-ui :where(button,a,summary) {transition-property:background-color,color,border-color,box-shadow;transition-duration:160ms}
.nc-ui button:disabled {cursor:not-allowed;opacity:.55}
.nc-ui .nc-skip {position:fixed;inset-block-start:8px;inset-inline-start:16px;transform:translateY(-150%);padding:12px 20px;background:var(--nc-surface);color:var(--nc-brand);z-index:9999;border-radius:10px}
.nc-ui .nc-skip:focus {transform:none}
.nc-ui .nc-navigation {background:var(--nc-canvas);box-shadow:none;backdrop-filter:none}
.nc-ui .nc-navigation .ti-command-bar {background:var(--nc-surface);border:1px solid var(--nc-border);box-shadow:var(--nc-shadow);border-radius:var(--nc-radius);gap:16px}
.nc-ui .nc-navigation .ti-command-nav a {min-height:42px;display:inline-flex;align-items:center;padding-inline:8px;font-size:.75rem;color:var(--nc-muted)}
.nc-ui .nc-navigation .ti-command-nav a[aria-current] {background:var(--nc-wash);color:var(--nc-brand);box-shadow:inset 0 -2px var(--nc-brand)}
.nc-ui .nc-navigation .ti-command-nav .ti-command-cta {background:var(--brand-action);color:var(--brand-on)}
.nc-ui .nc-navigation .ti-brand strong {color:var(--nc-ink)}
.nc-ui .nc-navigation .ti-brand small,.nc-ui .nc-navigation .ti-context-strip {color:var(--nc-meta)}
.nc-ui .nc-navigation .ti-global-search {background:var(--nc-secondary);border-color:var(--nc-border)}
.nc-ui .nc-navigation .ti-global-search input {color:var(--nc-ink)}
html[data-market-theme] body.nc-ui .nc-navigation .ti-global-search input {background:transparent!important;color:var(--nc-ink)!important;box-shadow:none;border:0!important}
.nc-ui .nc-navigation .ti-brand-logo {object-fit:contain;flex-shrink:0}
.nc-ui .nc-footer {max-width:1420px;margin:48px auto 0;padding:32px 24px 80px;border-top:1px solid var(--nc-border);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:24px;color:var(--nc-muted);background:var(--nc-canvas)}
.nc-ui .nc-footer-brand {display:flex;align-items:center;gap:12px}
.nc-ui .nc-footer-brand img {object-fit:contain}
.nc-ui .nc-footer-brand strong {color:var(--nc-ink)}
.nc-ui .nc-footer p {margin:4px 0 0;font-size:.75rem}
.nc-ui .nc-footer nav {display:flex;gap:8px;flex-wrap:wrap}
.nc-ui .nc-footer nav a {padding:10px;text-decoration:none;color:var(--nc-muted);font-size:.8rem}
.nc-ui .nc-footer nav a:hover {color:var(--nc-brand)}
.nc-ui .nc-footer-note {flex-basis:100%;padding-block-start:16px;border-top:1px solid var(--nc-soft-border)}
.nc-ui.nc-error .box {background:var(--nc-surface);border-color:var(--nc-border);color:var(--nc-ink);box-shadow:var(--nc-shadow);width:min(540px,calc(100% - 32px));margin:16px;padding:clamp(24px,5vw,48px);box-sizing:border-box}
.nc-ui.nc-error .muted,.nc-ui.nc-error .ref {color:var(--nc-muted);overflow-wrap:anywhere}
/* Home: editorial rhythm, restrained imagery and clear pathways. */
.nc-ui.terminal-home .terminal-grid {opacity:.15}
.nc-ui.terminal-home .command-bar {border-radius:16px;box-shadow:var(--nc-shadow)}
.nc-ui.terminal-home .terminal-hero {border:1px solid var(--nc-border);border-radius:24px;box-shadow:none}
.nc-ui.terminal-home .hero-copy h1 {font-size:clamp(2rem,4.6vw,4.25rem);line-height:1.35;letter-spacing:-.035em}
.nc-ui.terminal-home .hero-copy p {font-size:clamp(.9rem,1.2vw,1.05rem);line-height:2}
.nc-ui.terminal-home .hero-banner {background:var(--nc-surface);min-height:560px;padding-block:64px}
.nc-ui.terminal-home .hero-banner::before {background:linear-gradient(90deg,transparent,var(--nc-surface) 65%);box-shadow:none}
.nc-ui.terminal-home .hero-banner::after {background:none}
.nc-ui.terminal-home .hero-banner-image {opacity:.16;filter:grayscale(.6);object-fit:cover}
.nc-ui.terminal-home .hero-copy h1 {color:var(--nc-ink);text-shadow:none}
.nc-ui.terminal-home .hero-copy h1 strong {color:var(--nc-brand);background:none;-webkit-text-fill-color:var(--nc-brand)}
.nc-ui.terminal-home .hero-copy>p,.nc-ui.terminal-home .hero-proof small {color:var(--nc-muted);text-shadow:none}
.nc-ui.terminal-home .hero-proof b {color:var(--nc-ink);text-shadow:none}
.nc-ui.terminal-home .hero-banner .eyebrow {color:var(--nc-brand);text-shadow:none}
.nc-ui.terminal-home .hero-banner .eyebrow em {color:var(--nc-muted);border-color:var(--nc-border)}
.nc-ui.terminal-home .hero-banner .primary-cta {background:var(--brand-action);color:var(--brand-on)!important;box-shadow:none}
.nc-ui.terminal-home .hero-banner .ghost-cta {background:var(--nc-secondary);color:var(--nc-ink)!important;border-color:var(--nc-border);backdrop-filter:none;box-shadow:none}
.nc-ui.terminal-home .hero-banner .hero-trust span {color:var(--nc-muted);background:var(--nc-secondary);border-color:var(--nc-border)}
.nc-ui.terminal-home .command-search input {background:var(--nc-secondary)!important;color:var(--nc-ink)!important;border:0!important}
.nc-ui.terminal-home .section-heading h2 {font-size:clamp(1.25rem,2vw,1.9rem);line-height:1.6}
.nc-ui.terminal-home .reveal {opacity:1;transform:none;transition:none}
.nc-ui.terminal-home :is(.radar-sweep,.live-dot,.brand-mark i,.system-status i) {animation:none}
.nc-ui .nc-pathways {max-width:1420px;margin:32px auto;padding:0 24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.nc-ui .nc-pathway {border:1px solid var(--nc-border);border-radius:16px;background:var(--nc-surface);padding:24px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--nc-shadow)}
.nc-ui .nc-pathway small {font-size:.7rem;letter-spacing:.08em;color:var(--nc-brand)}
.nc-ui .nc-pathway h2 {font-size:1.1rem;color:var(--nc-ink);margin:0}
.nc-ui .nc-pathway p {font-size:.85rem;line-height:1.9;color:var(--nc-muted);margin:0}
.nc-ui .nc-pathway a {margin-top:auto;align-self:flex-start;padding-block:10px;color:var(--nc-brand);font-weight:700;font-size:.8rem}
/* Discovery and reports: stronger hierarchy, without altering table geometry. */
.nc-ui .company-directory-card {border-radius:16px;box-shadow:none;transform:none;transition:background-color 160ms,border-color 160ms}
.nc-ui .company-directory-card:hover {transform:none;box-shadow:var(--nc-shadow);border-color:var(--nc-brand)}
body.nc-ui .company-directory-card,body.nc-ui .company-directory-card:hover {box-shadow:var(--nc-shadow)!important;transform:none!important}
html[data-market-theme] body.nc-ui .company-directory-card .company-symbol {background:var(--nc-wash)!important;color:var(--nc-brand)!important;border-color:var(--nc-border)!important}
.nc-ui .company-directory-card h2 {font-size:.95rem;min-height:3em}
.nc-ui .company-directory-card .company-symbol {font-size:.95rem;background:var(--nc-wash);color:var(--nc-brand)}
.nc-ui .company-directory-main>nav {padding:16px;border:1px solid var(--nc-border);border-radius:16px;background:var(--nc-surface)}
.nc-ui .company-directory-main>nav a {min-height:42px;display:inline-flex;align-items:center}
.nc-ui .company-summary-panel {border-radius:20px;box-shadow:var(--nc-shadow)}
.nc-ui.nc-reports main>section {border-radius:16px;box-shadow:none}
.nc-ui.nc-reports main>section:first-child {border-inline-start:3px solid var(--nc-brand)}
.nc-ui.nc-reports main>section:first-child h2 {font-size:1rem;line-height:2}
.nc-ui.nc-reports th {font-variant-numeric:tabular-nums}
/* Market Watch: retain 86px virtual rows and every existing sizing contract. */
.nc-ui.market-watch-page .market-watch-header {box-shadow:none;background:var(--nc-surface);border-bottom:1px solid var(--nc-border)}
.nc-ui.market-watch-page .market-watch-tabs {gap:8px;border-bottom:1px solid var(--nc-border);padding-block-end:12px}
.nc-ui.market-watch-page .market-watch-tabs button {min-height:44px;border-radius:10px}
.nc-ui.market-watch-page :is(.market-watch-toolbar,.market-watch-card,.industry-card) {border-color:var(--nc-border);box-shadow:var(--nc-shadow)}
.nc-ui.market-watch-page .market-watch-toolbar {background:var(--nc-surface);border-radius:16px}
.nc-ui.market-watch-page .industry-card {border-radius:16px}
.nc-ui.market-watch-page .market-watch-account-nav,.nc-ui.asset-calculator-page .asset-account-nav {display:none}
html body.nc-ui.market-watch-page .industry-card>header {background:var(--nc-secondary)!important;border-color:var(--nc-border)!important;box-shadow:none!important}
html body.nc-ui.market-watch-page :is(thead,th) {background:var(--nc-secondary)!important;color:var(--nc-muted)!important}
.nc-ui.market-watch-page .industry-members summary {min-height:44px}
/* Assets: ONLY form/navigation shell; no output/preview/canvas selectors. */
.nc-ui.asset-calculator-page .asset-hero {background:var(--nc-surface);border:1px solid var(--nc-border);border-radius:20px;box-shadow:var(--nc-shadow);padding:24px}
.nc-ui.asset-calculator-page .asset-hero h1 {color:var(--nc-ink);font-size:clamp(1.5rem,2.7vw,2.25rem)}
.nc-ui.asset-calculator-page .asset-hero p {color:var(--nc-muted)}
.nc-ui.asset-calculator-page .asset-tabs {gap:12px}
.nc-ui.asset-calculator-page .asset-tab {min-height:58px;border-radius:12px;box-shadow:none}
.nc-ui.asset-calculator-page .asset-input-card {background:var(--nc-surface);border:1px solid var(--nc-border);border-radius:16px;box-shadow:var(--nc-shadow)}
.nc-ui.asset-calculator-page .asset-input-card :is(h2,label) {color:var(--nc-ink)}
.nc-ui.asset-calculator-page .asset-input-card input {min-height:44px;background:var(--nc-secondary);color:var(--nc-ink);border-color:var(--nc-border);border-radius:10px}
html[data-market-theme] body.nc-ui.asset-calculator-page .asset-hero {background:var(--nc-surface)!important;border-color:var(--nc-border)!important;box-shadow:var(--nc-shadow)!important}
html[data-market-theme] body.nc-ui.asset-calculator-page .asset-input-card input {background:var(--nc-secondary)!important;color:var(--nc-ink)!important;border-color:var(--nc-border)!important}
.nc-ui.asset-calculator-page .asset-input-card input:disabled {opacity:.45;cursor:not-allowed}
.nc-ui.asset-calculator-page .asset-tabs {background:transparent;border:0;padding-block:12px}
.nc-ui.asset-calculator-page .asset-tab {background:var(--nc-surface);color:var(--nc-muted);border-color:var(--nc-border)}
.nc-ui.asset-calculator-page .asset-tab.is-active {background:var(--nc-wash);color:var(--nc-brand);border-color:var(--nc-brand)}
/* Operations: calm, readable controls. The branding studio is excluded. */
.nc-ui.nc-operations main>section:not(.branding-studio) {border-radius:16px;box-shadow:none}
.nc-ui.nc-operations main>section:not(.branding-studio)>summary {padding-block:16px}
.nc-ui.nc-operations #admin-section-search {min-height:48px}
@media(max-width:1100px) {
 .nc-ui .nc-navigation .ti-command-bar {display:flex;flex-wrap:wrap}
 .nc-ui .nc-navigation .ti-global-search {flex:1;min-width:180px}
 .nc-ui .nc-navigation .ti-command-nav {display:flex;flex:1 1 100%;width:100%;min-width:0;max-width:100%;flex-wrap:wrap;justify-content:flex-start;gap:4px}
}
@media(max-width:600px) {
 .nc-ui .nc-navigation {position:relative}
 .nc-ui .nc-navigation .ti-command-nav a {display:inline-flex;padding:8px;font-size:.72rem}
 .nc-ui .nc-navigation .ti-brand small {display:none}
 .nc-ui .nc-pathways {grid-template-columns:1fr;padding-inline:16px;margin-block:24px}
 .nc-ui .nc-pathway {padding:20px}
 .nc-ui .nc-footer {padding-inline:16px;margin-top:24px}
 .nc-ui .nc-footer-brand {width:100%}
 .nc-ui.nc-reports main>section:first-child .grid-cols-4 {grid-template-columns:repeat(2,minmax(0,1fr))}
 .nc-ui.asset-calculator-page .asset-hero {padding:16px}
 .nc-ui.asset-calculator-page .asset-tabs {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
 .nc-ui.asset-calculator-page .asset-tab {min-width:0;padding:10px 6px;gap:4px;flex-wrap:wrap;justify-content:center}
}
@media(prefers-reduced-motion:reduce) {
 .nc-ui *, .nc-ui *::before, .nc-ui *::after {animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
