/* Noble R43 consolidated release layer. Additive: legacy components remain intact. */
:root {
  --r43-gold: #e8c963;
  --r43-cyan: #68d8ff;
  --r43-green: #54e38e;
  --r43-amber: #ffd166;
  --r43-red: #ff6b6b;
  --r43-panel: rgba(8, 14, 20, .94);
  --r43-line: rgba(232, 201, 99, .38);
}

body[data-build="2026.08.23-R43"] { background: #03070b; }

.r43-ticker-fallback { position: absolute; z-index: 3; left: 0; right: 0; bottom: 0; overflow: hidden; height: 18px; padding: 2px 0 0 72px; color: #edf5f8; background: rgba(3,7,11,.84); white-space: nowrap; pointer-events: none; font-size: .68rem; }
.r43-ticker-fallback > div { display: inline-flex; gap: 2rem; min-width: max-content; animation: r43Ticker 75s linear infinite; }
.r43-ticker-fallback span { font-weight: 700; }
.r43-ticker-fallback small { color: var(--r43-cyan); font-size: .6rem; margin-left: .25rem; }
@keyframes r43Ticker { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .r43-ticker-fallback > div { animation: none; } }

/* Required first-read order: Biomatrix control, tickers, showroom, then content. */
main { display: flex; flex-direction: column; }
main > .regional-market-tapes { order: -1000 !important; }
main > .noblesse-coin-tape { order: -999 !important; }
main > #showroom { order: -998 !important; }
main > .access-login-ribbon { order: -997 !important; }
main > #r43-command-hub { order: -996 !important; }
main > #biomatrix-technology,
main > #planet-simulation,
main > #investor-access,
main > #formation { order: 0 !important; }

#scientificControlDeck { position: relative; z-index: 7; }
#scientificControlDeck summary { cursor: pointer; }
#scientificControlDeck #scientificControlTitle > span::before { content: "BIOMATRIX CONFIGURATION · "; color: var(--r43-gold); }

.r43-hub,
.r43-suite {
  width: min(calc(100% - 2rem), 1600px);
  margin: 1rem auto;
  color: #eef7ff;
}

.r43-shell {
  border: 1px solid var(--r43-line);
  background: linear-gradient(145deg, rgba(7,17,24,.97), rgba(3,7,11,.97));
  box-shadow: 0 22px 80px rgba(0,0,0,.35), inset 0 1px rgba(255,255,255,.03);
  padding: clamp(.85rem, 1.5vw, 1.35rem);
}

.r43-heading { display: flex; gap: 1rem; align-items: start; justify-content: space-between; flex-wrap: wrap; }
.r43-heading h2, .r43-heading h3 { margin: .15rem 0 .35rem; }
.r43-kicker { color: var(--r43-gold); text-transform: uppercase; letter-spacing: .08em; font-weight: 800; font-size: .76rem; }
.r43-muted { color: #a9bac8; }
.r43-boundary { border-left: 3px solid var(--r43-amber); background: rgba(255,209,102,.07); padding: .8rem 1rem; margin: .8rem 0; }
.r43-boundary strong { color: var(--r43-amber); }

.r43-theme-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: .65rem; margin-top: .9rem; }
.r43-theme { border: 1px solid rgba(104,216,255,.3); background: rgba(3,9,14,.78); }
.r43-theme[open] { border-color: var(--r43-gold); box-shadow: 0 0 24px rgba(232,201,99,.09); }
.r43-theme > summary { list-style: none; display: grid; grid-template-columns: auto 1fr auto; gap: .65rem; align-items: center; cursor: pointer; padding: .85rem; }
.r43-theme > summary::-webkit-details-marker { display: none; }
.r43-theme > summary::before { content: "+"; color: var(--r43-gold); font: 800 1.25rem/1 monospace; }
.r43-theme[open] > summary::before { content: "−"; }
.r43-theme > summary small { color: #8fa8ba; }
.r43-theme-body { padding: 0 .85rem .85rem; }
.r43-link-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .4rem; }
.r43-link-grid button, .r43-link-grid a { border: 1px solid rgba(255,255,255,.14); color: #dcebf6; background: rgba(255,255,255,.035); padding: .5rem .6rem; text-align: left; text-decoration: none; cursor: pointer; }
.r43-link-grid button:hover, .r43-link-grid a:hover { border-color: var(--r43-gold); color: var(--r43-gold); }

.r43-section-bar { width: min(calc(100% - 2rem),1600px); margin: .45rem auto; display: flex; gap: 1rem; justify-content: space-between; align-items: center; border: 1px solid var(--r43-line); background: #050b10; padding: .7rem .85rem; cursor: pointer; color: #edf7ff; }
.r43-section-bar strong::before { content: "▸ "; color: var(--r43-gold); }
.r43-collapsible[data-r43-collapsed="false"] > .r43-section-bar strong::before { content: "▾ "; }
.r43-collapsible[data-r43-collapsed="true"] > :not(.r43-section-bar) { display: none !important; }
.r43-section-bar small { color: #9db0bd; }

.r43-tabs { display: flex; gap: .45rem; flex-wrap: wrap; margin: .75rem 0; }
.r43-tabs button, .r43-button { border: 1px solid var(--r43-line); background: rgba(255,255,255,.04); color: #f1f7fa; padding: .58rem .76rem; cursor: pointer; }
.r43-tabs button[aria-selected="true"], .r43-button.primary { background: linear-gradient(135deg,#f1d774,#b98b24); color: #101010; font-weight: 800; }

.r43-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .65rem; }
.r43-grid.two { grid-template-columns: repeat(2,minmax(0,1fr)); }
.r43-card { border: 1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.025); padding: .8rem; min-width: 0; }
.r43-card h3, .r43-card h4 { margin: 0 0 .45rem; }
.r43-card .metric { font-size: clamp(1.2rem,2vw,2rem); color: var(--r43-gold); font-weight: 800; }
.r43-card[data-state="green1"], .r43-zone.green1 { border-color: #57d68d; }
.r43-card[data-state="green2"], .r43-zone.green2 { border-color: #86d46b; }
.r43-card[data-state="green3"], .r43-zone.green3 { border-color: #b5d153; }
.r43-card[data-state="yellow"], .r43-zone.yellow { border-color: #ffd166; }
.r43-card[data-state="red"], .r43-zone.red { border-color: #ff6b6b; }
.r43-card[data-state="black"], .r43-zone.black { border-color: #e8e8e8; background: #000; }

.r43-form-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .6rem; }
.r43-field { display: grid; gap: .3rem; color: #b7c7d3; font-size: .78rem; }
.r43-field input, .r43-field select { min-width: 0; border: 1px solid rgba(255,255,255,.18); background: #03070b; color: #fff; padding: .62rem; }

.r43-table-wrap { overflow: auto; max-height: 580px; border: 1px solid rgba(255,255,255,.12); }
.r43-table { width: 100%; border-collapse: collapse; font-size: .78rem; }
.r43-table th, .r43-table td { padding: .5rem .55rem; border-bottom: 1px solid rgba(255,255,255,.09); vertical-align: top; }
.r43-table th { position: sticky; top: 0; z-index: 2; background: #0c151c; color: var(--r43-gold); text-align: left; cursor: pointer; }
.r43-table th[data-sort]::after { content: " ⇅"; opacity: .65; }
.r43-table tbody tr:hover { background: rgba(104,216,255,.045); }
.r43-status { display: inline-block; border: 1px solid rgba(255,255,255,.17); border-radius: 999px; padding: .18rem .42rem; font-size: .68rem; white-space: nowrap; }
.r43-status.ok { color: var(--r43-green); border-color: rgba(84,227,142,.45); }
.r43-status.warn { color: var(--r43-amber); border-color: rgba(255,209,102,.45); }
.r43-status.block { color: var(--r43-red); border-color: rgba(255,107,107,.45); }

.r43-ai-grid { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: .45rem; }
.r43-ai-card { border: 1px solid rgba(104,216,255,.26); background: rgba(4,12,18,.92); padding: .65rem; }
.r43-ai-card b { display: block; color: var(--r43-cyan); }
.r43-ai-card small { display: block; min-height: 3.6em; color: #9fb2bf; }
.r43-led { display: inline-block; width: .55rem; height: .55rem; border-radius: 50%; background: var(--r43-green); box-shadow: 0 0 10px currentColor; margin-right: .35rem; }

.r43-weather-strip { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: .4rem; }
.r43-weather-strip span { border: 1px solid rgba(104,216,255,.22); padding: .55rem; }
.r43-weather-strip b { color: var(--r43-gold); display: block; }

.r43-render-stage { min-height: 300px; display: grid; place-items: center; border: 1px solid rgba(104,216,255,.24); background: radial-gradient(circle at 50% 40%,#12364b 0,#07121a 38%,#020508 75%); overflow: hidden; }
.r43-render-stage canvas { width: 100%; max-height: 430px; }
.r43-progress { height: .55rem; background: #111820; overflow: hidden; }
.r43-progress > span { display: block; height: 100%; width: var(--p,0%); background: linear-gradient(90deg,var(--r43-cyan),var(--r43-gold)); }

.r43-source-list { columns: 2; column-gap: 1.2rem; }
.r43-source-list li { break-inside: avoid; margin: 0 0 .45rem; color: #b8c7d1; }
.r43-source-list a { color: #8edfff; }

@media (max-width: 1180px) {
  .r43-theme-grid, .r43-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .r43-ai-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .r43-form-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .r43-weather-strip { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
@media (max-width: 720px) {
  .r43-theme-grid, .r43-grid, .r43-grid.two, .r43-form-grid { grid-template-columns: 1fr; }
  .r43-ai-grid, .r43-weather-strip { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .r43-source-list { columns: 1; }
  .r43-section-bar { align-items: flex-start; }
}

@media print {
  .r43-section-bar, .r43-theme-grid, .site-header, .regional-market-tapes { display: none !important; }
  .r43-collapsible[data-r43-collapsed="true"] > :not(.r43-section-bar) { display: block !important; }
  .r43-shell, .r43-card, .r43-table-wrap { background: #fff !important; color: #111 !important; box-shadow: none; }
  .r43-table-wrap { max-height: none; overflow: visible; }
}
