@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@300;400;500&family=Manrope:wght@300;400;500;600&family=Newsreader:opsz,wght@6..72,400;6..72,500&display=swap');

:root {
  --ink: #050608;
  --night: #080a0d;
  --night-soft: #0d1115;
  --line: rgba(236, 207, 153, .16);
  --gold: #e8c47e;
  --gold-bright: #f4d69d;
  --cream: #eee6d8;
  --muted: #938d83;
  --paper: #f0efe9;
  --paper-2: #e9e7df;
  --paper-ink: #181814;
  --paper-muted: #69685f;
  --sans: 'Manrope', Arial, sans-serif;
  --mono: 'DM Mono', ui-monospace, monospace;
  --serif: 'Newsreader', Georgia, serif;
}

* { box-sizing: border-box; }
html { background: var(--ink); scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--cream);
  background:
    radial-gradient(circle at 50% 0%, rgba(42, 53, 61, .18), transparent 26rem),
    var(--ink);
  font-family: var(--sans);
  font-weight: 400;
  -webkit-font-smoothing: antialiased;
}
button, input { font: inherit; }
button { touch-action: manipulation; }
a { color: inherit; }

.evidence-page { overflow: hidden; }
.evidence-intro {
  position: relative;
  min-height: min(760px, 82vh);
  padding: clamp(22px, 3vw, 42px) clamp(20px, 5vw, 78px) 80px;
  display: grid;
  grid-template-columns: minmax(160px, .7fr) minmax(320px, 1.6fr) minmax(170px, .7fr);
  align-items: center;
  gap: 36px;
  border-bottom: 1px solid rgba(232, 196, 126, .08);
}
.evidence-intro::before {
  content: '';
  position: absolute;
  left: 50%; top: 16%; bottom: 8%;
  width: 1px;
  background: linear-gradient(to bottom, transparent, rgba(232,196,126,.18) 20%, rgba(232,196,126,.05) 84%, transparent);
  pointer-events: none;
}
.evidence-intro::after {
  content: '';
  position: absolute;
  left: calc(50% - 4px); top: 34%;
  width: 9px; height: 9px;
  border: 1px solid rgba(232,196,126,.35);
  transform: rotate(45deg);
  box-shadow: 0 0 28px rgba(232,196,126,.11);
}
.evidence-signature {
  align-self: start;
  display: inline-flex;
  flex-direction: column;
  gap: 5px;
  text-decoration: none;
  color: rgba(238,230,216,.83);
  font-size: .78rem;
  letter-spacing: .02em;
}
.evidence-signature small {
  color: rgba(238,230,216,.38);
  font-size: .56rem;
  letter-spacing: .08em;
}
.evidence-intro-copy { position: relative; z-index: 2; max-width: 760px; justify-self: center; }
.eyebrow, .evidence-type, .detail-kicker {
  margin: 0 0 18px;
  color: rgba(232,196,126,.65);
  font-family: var(--mono);
  font-size: .63rem;
  letter-spacing: .17em;
  text-transform: uppercase;
}
.evidence-intro h1 {
  margin: 0;
  max-width: 9ch;
  color: #f6f0e5;
  font-family: var(--serif);
  font-size: clamp(4rem, 9vw, 9rem);
  font-weight: 400;
  line-height: .82;
  letter-spacing: -.055em;
}
.evidence-intro-copy > p:last-child {
  max-width: 39ch;
  margin: 28px 0 0;
  color: rgba(238,230,216,.55);
  font-size: clamp(.96rem, 1.3vw, 1.2rem);
  line-height: 1.55;
}
.evidence-note {
  align-self: end;
  margin: 0;
  color: rgba(238,230,216,.34);
  font-family: var(--mono);
  font-size: .58rem;
  line-height: 1.55;
  letter-spacing: .03em;
}

.evidence-vitrine {
  position: relative;
  padding: clamp(72px, 9vw, 138px) clamp(18px, 5vw, 78px);
}
.vitrine-heading {
  width: min(1360px, 100%);
  margin: 0 auto 34px;
  display: grid;
  grid-template-columns: 1fr minmax(280px, .7fr);
  align-items: end;
  gap: 42px;
}
.vitrine-heading h2 {
  margin: 0;
  font-family: var(--serif);
  font-size: clamp(2.4rem, 5vw, 5.6rem);
  font-weight: 400;
  line-height: .95;
  letter-spacing: -.038em;
}
.vitrine-heading > p {
  max-width: 52ch;
  margin: 0;
  color: rgba(238,230,216,.48);
  font-size: .82rem;
  line-height: 1.55;
}
.evidence-type { margin-bottom: 14px; }

/* --- Vitrine A / operational explorer --- */
.evidence-vitrine-explorer {
  background:
    radial-gradient(circle at 78% 15%, rgba(50,72,85,.13), transparent 31rem),
    linear-gradient(180deg, #060709, #090c0f 70%, #07080a);
}
.explorer-shell {
  width: min(1360px, 100%);
  min-height: 650px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 190px minmax(430px, 1fr) 300px;
  overflow: hidden;
  border: 1px solid rgba(232,196,126,.18);
  border-radius: 16px;
  background: #090d11;
  box-shadow:
    0 40px 120px rgba(0,0,0,.35),
    inset 0 1px 0 rgba(255,255,255,.025);
}
.explorer-sidebar {
  padding: 20px 16px;
  border-right: 1px solid rgba(232,196,126,.09);
  background: linear-gradient(180deg, #0c1115, #080b0e);
}
.explorer-brand { display: flex; align-items: center; gap: 10px; margin-bottom: 36px; }
.explorer-mark {
  width: 24px; height: 24px;
  border: 1px solid rgba(232,196,126,.38);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(232,196,126,.28) 0 7%, transparent 9% 43%, rgba(232,196,126,.13) 44% 46%, transparent 48%);
  box-shadow: 0 0 18px rgba(232,196,126,.07);
}
.explorer-brand strong { display:block; font-family: var(--mono); color: rgba(238,230,216,.72); font-size:.62rem; letter-spacing:.08em; }
.explorer-brand small { display:block; margin-top:3px; color:rgba(238,230,216,.3); font-family:var(--mono); font-size:.48rem; }
.explorer-search span {
  display:block;
  margin-bottom:7px;
  color:rgba(238,230,216,.32);
  font-family:var(--mono);
  font-size:.5rem;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.explorer-search input {
  width:100%;
  height:36px;
  padding:0 10px;
  border:1px solid rgba(238,230,216,.09);
  border-radius:7px;
  outline:none;
  background:#06090b;
  color:rgba(238,230,216,.78);
  font-family:var(--mono);
  font-size:.58rem;
  transition:border-color 180ms ease, box-shadow 180ms ease;
}
.explorer-search input::placeholder { color:rgba(238,230,216,.22); }
.explorer-search input:focus { border-color:rgba(232,196,126,.38); box-shadow:0 0 0 3px rgba(232,196,126,.045); }
.explorer-filters { display:grid; gap:5px; margin-top:18px; }
.explorer-filters button {
  appearance:none;
  width:100%;
  padding:8px 9px;
  border:1px solid transparent;
  border-radius:6px;
  background:transparent;
  color:rgba(238,230,216,.39);
  text-align:left;
  font-family:var(--mono);
  font-size:.55rem;
  cursor:pointer;
  transition:background 160ms ease, color 160ms ease, border-color 160ms ease;
}
.explorer-filters button:hover { color:rgba(238,230,216,.72); background:rgba(255,255,255,.02); }
.explorer-filters button[aria-pressed="true"] { color:var(--gold-bright); border-color:rgba(232,196,126,.16); background:rgba(232,196,126,.055); }
.explorer-count { margin-top:34px; padding-top:16px; border-top:1px solid rgba(238,230,216,.06); }
.explorer-count b { display:block; color:rgba(238,230,216,.8); font-family:var(--serif); font-size:2rem; font-weight:400; line-height:1; }
.explorer-count span { display:block; margin-top:5px; color:rgba(238,230,216,.26); font-family:var(--mono); font-size:.46rem; }

.explorer-content { min-width:0; display:flex; flex-direction:column; }
.explorer-table-head,
.explorer-row {
  display:grid;
  grid-template-columns:74px minmax(170px, 1fr) 110px 90px;
  gap:12px;
  align-items:center;
}
.explorer-table-head {
  height:49px;
  padding:0 15px;
  border-bottom:1px solid rgba(238,230,216,.06);
  color:rgba(238,230,216,.23);
  font-family:var(--mono);
  font-size:.45rem;
  letter-spacing:.1em;
}
.explorer-list { min-height:0; max-height:600px; overflow:auto; scrollbar-width:thin; scrollbar-color:rgba(232,196,126,.2) transparent; }
.explorer-row {
  appearance:none;
  width:100%;
  min-height:56px;
  padding:9px 15px;
  border:0;
  border-bottom:1px solid rgba(238,230,216,.045);
  background:transparent;
  color:rgba(238,230,216,.55);
  text-align:left;
  cursor:pointer;
  transition:background 150ms ease, color 150ms ease, box-shadow 150ms ease;
}
.explorer-row:hover { background:rgba(255,255,255,.018); color:rgba(238,230,216,.72); }
.explorer-row[aria-pressed="true"] { background:linear-gradient(90deg, rgba(232,196,126,.065), rgba(232,196,126,.015)); box-shadow:inset 2px 0 0 rgba(232,196,126,.58); color:rgba(247,238,222,.85); }
.explorer-row:focus-visible { outline:1px solid rgba(232,196,126,.58); outline-offset:-2px; }
.record-id { color:rgba(232,196,126,.55); font-family:var(--mono); font-size:.5rem; }
.record-title { min-width:0; }
.record-title b { display:block; overflow:hidden; color:inherit; font-size:.61rem; font-weight:500; white-space:nowrap; text-overflow:ellipsis; }
.record-title small { display:block; margin-top:3px; color:rgba(238,230,216,.24); font-family:var(--mono); font-size:.43rem; }
.record-type { overflow:hidden; color:rgba(238,230,216,.34); font-family:var(--mono); font-size:.47rem; white-space:nowrap; text-overflow:ellipsis; }
.record-status { display:flex; align-items:center; gap:5px; color:rgba(238,230,216,.42); font-family:var(--mono); font-size:.46rem; }
.record-status i { width:5px; height:5px; border-radius:50%; background:rgba(238,230,216,.25); }
.record-status-active i { background:#74a993; box-shadow:0 0 8px rgba(116,169,147,.3); }
.record-status-review i { background:#d0ad6c; box-shadow:0 0 8px rgba(208,173,108,.27); }
.record-status-ready i { background:#a7b2c8; }

.explorer-detail {
  position:relative;
  padding:26px 22px;
  border-left:1px solid rgba(232,196,126,.09);
  background:
    radial-gradient(circle at 70% 10%, rgba(232,196,126,.05), transparent 16rem),
    #070a0d;
}
.detail-kicker { margin-bottom:28px; font-size:.48rem; }
.detail-index { color:rgba(232,196,126,.46); font-family:var(--mono); font-size:.62rem; letter-spacing:.1em; }
.explorer-detail h3 { margin:13px 0 10px; color:#f1eade; font-family:var(--serif); font-size:1.65rem; font-weight:400; line-height:1.05; }
.explorer-detail > p:not(.detail-kicker) { margin:0; color:rgba(238,230,216,.4); font-size:.66rem; line-height:1.55; }
.explorer-detail dl { margin:34px 0 0; }
.explorer-detail dl div { display:flex; justify-content:space-between; gap:15px; padding:11px 0; border-top:1px solid rgba(238,230,216,.06); }
.explorer-detail dt { color:rgba(238,230,216,.26); font-family:var(--mono); font-size:.48rem; }
.explorer-detail dd { margin:0; color:rgba(238,230,216,.58); font-family:var(--mono); font-size:.49rem; text-align:right; }
.detail-trace { position:absolute; left:22px; right:22px; bottom:25px; height:42px; display:flex; align-items:end; gap:4px; opacity:.45; }
.detail-trace i { flex:1; height:var(--h, 30%); border-top:1px solid rgba(232,196,126,.4); background:linear-gradient(to bottom, rgba(232,196,126,.07), transparent); }
.detail-trace i:nth-child(1){--h:28%}.detail-trace i:nth-child(2){--h:73%}.detail-trace i:nth-child(3){--h:48%}.detail-trace i:nth-child(4){--h:88%}
.surface-status { width:min(1360px,100%); min-height:1em; margin:10px auto 0; color:rgba(238,230,216,.25); font-family:var(--mono); font-size:.48rem; }

/* --- Vitrine B / intentionally light visual inventory --- */
.evidence-vitrine-inventory {
  color:var(--paper-ink);
  background:
    linear-gradient(135deg, rgba(255,255,255,.45), transparent 40%),
    var(--paper);
}
.light-heading .evidence-type { color:#8b6d39; }
.light-heading h2 { color:var(--paper-ink); }
.light-heading > p { color:var(--paper-muted); }
.inventory-shell {
  width:min(1360px,100%);
  min-height:720px;
  margin:0 auto;
  overflow:hidden;
  border:1px solid rgba(24,24,20,.15);
  border-radius:4px;
  background:#f7f6f1;
  box-shadow:0 30px 90px rgba(25,23,17,.12);
}
.inventory-toolbar {
  min-height:70px;
  padding:0 22px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:20px;
  border-bottom:1px solid rgba(24,24,20,.12);
  background:rgba(255,255,255,.55);
}
.inventory-wordmark span { display:block; font-family:var(--serif); font-size:1.15rem; letter-spacing:.08em; }
.inventory-wordmark small { display:block; margin-top:2px; color:#88867d; font-family:var(--mono); font-size:.44rem; letter-spacing:.08em; }
.inventory-toolbar nav { display:flex; gap:4px; }
.inventory-toolbar nav button {
  appearance:none;
  padding:8px 11px;
  border:1px solid transparent;
  border-radius:99px;
  background:transparent;
  color:#77756d;
  font-size:.58rem;
  cursor:pointer;
  transition:color 160ms ease, background 160ms ease, border-color 160ms ease;
}
.inventory-toolbar nav button:hover { color:#22221e; }
.inventory-toolbar nav button[aria-pressed="true"] { color:#171713; border-color:rgba(24,24,20,.16); background:#fff; }
.inventory-toolbar nav button:focus-visible { outline:2px solid rgba(124,96,49,.35); outline-offset:2px; }
.inventory-demo-label { justify-self:end; padding:6px 8px; border:1px solid rgba(24,24,20,.13); color:#77756d; font-family:var(--mono); font-size:.43rem; letter-spacing:.08em; }
.inventory-workspace { min-height:650px; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr); }
.inventory-grid { padding:18px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-content:start; gap:12px; }
.inventory-card {
  appearance:none;
  min-width:0;
  padding:0;
  display:grid;
  grid-template-columns:118px minmax(0,1fr);
  grid-template-rows:1fr auto;
  overflow:hidden;
  border:1px solid rgba(24,24,20,.12);
  border-radius:2px;
  background:#fff;
  color:var(--paper-ink);
  text-align:left;
  cursor:pointer;
  transition:transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}
.inventory-card:hover { transform:translateY(-2px); border-color:rgba(24,24,20,.23); box-shadow:0 8px 24px rgba(24,24,20,.07); }
.inventory-card[aria-pressed="true"] { border-color:rgba(117,88,41,.48); box-shadow:0 0 0 1px rgba(117,88,41,.12), 0 10px 26px rgba(24,24,20,.07); }
.inventory-card:focus-visible { outline:2px solid rgba(117,88,41,.45); outline-offset:2px; }
.inventory-card-image {
  grid-row:1 / 3;
  min-height:132px;
  background:
    linear-gradient(180deg, rgba(16,16,13,.02), rgba(16,16,13,.17)),
    var(--inventory-image) center / cover no-repeat,
    #d6d4cb;
}
.inventory-card-meta { min-width:0; padding:15px 14px 6px; }
.inventory-card-meta small { display:block; color:#97948a; font-family:var(--mono); font-size:.42rem; letter-spacing:.05em; text-transform:uppercase; }
.inventory-card-meta b { display:block; margin-top:8px; overflow:hidden; font-family:var(--serif); font-size:1rem; font-weight:500; white-space:nowrap; text-overflow:ellipsis; }
.inventory-card-meta i { display:block; margin-top:5px; overflow:hidden; color:#77756d; font-size:.5rem; font-style:normal; white-space:nowrap; text-overflow:ellipsis; }
.inventory-card-price { align-self:end; padding:0 14px 14px; color:#2b2b25; font-size:.58rem; font-weight:600; }
.inventory-detail { min-width:0; border-left:1px solid rgba(24,24,20,.12); background:#efeee8; }
.inventory-detail-image { height:330px; background:linear-gradient(180deg, transparent 60%, rgba(15,15,12,.18)), var(--inventory-image) center / cover no-repeat, #d6d4cb; }
.inventory-detail-copy { padding:28px; }
.inventory-detail-copy > p:first-child { margin:0; color:#8b6d39; font-family:var(--mono); font-size:.48rem; letter-spacing:.08em; text-transform:uppercase; }
.inventory-detail h3 { margin:9px 0 5px; font-family:var(--serif); font-size:2rem; font-weight:500; line-height:1; }
.inventory-detail-copy > p:nth-of-type(2) { margin:0; color:#77756d; font-size:.62rem; }
.inventory-detail-facts { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:27px; padding-top:17px; border-top:1px solid rgba(24,24,20,.12); }
.inventory-detail-facts span { display:flex; flex-direction:column; gap:4px; }
.inventory-detail-facts small { color:#959288; font-family:var(--mono); font-size:.42rem; }
.inventory-detail-facts b { font-size:.66rem; font-weight:500; }
.inventory-price { display:block; margin-top:24px; font-family:var(--serif); font-size:1.45rem; font-weight:500; }
.inventory-action {
  appearance:none;
  width:100%;
  margin-top:18px;
  padding:11px 14px;
  border:1px solid #22221d;
  border-radius:0;
  background:#22221d;
  color:#f6f4ed;
  font-size:.58rem;
  cursor:pointer;
  transition:background 160ms ease, color 160ms ease;
}
.inventory-action:hover:not(:disabled) { background:#3a392f; }
.inventory-action:disabled { opacity:.32; cursor:default; }
.light-status { color:#8f8c82; }

.evidence-footer {
  min-height:260px;
  padding:70px clamp(20px,5vw,78px);
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:30px;
  border-top:1px solid rgba(232,196,126,.08);
  background:#050608;
}
.evidence-footer p { max-width:50ch; margin:0; color:rgba(238,230,216,.3); font-size:.66rem; line-height:1.55; }
.evidence-footer a { padding-bottom:4px; color:rgba(238,230,216,.7); border-bottom:1px solid rgba(232,196,126,.3); text-decoration:none; font-size:.7rem; }

@media (max-width: 1100px) {
  .evidence-intro { grid-template-columns:1fr 2fr; }
  .evidence-note { grid-column:2; }
  .explorer-shell { grid-template-columns:170px minmax(390px,1fr); }
  .explorer-detail { grid-column:1 / -1; min-height:260px; border-left:0; border-top:1px solid rgba(232,196,126,.09); }
  .detail-trace { left:auto; width:180px; }
  .inventory-workspace { grid-template-columns:1fr; }
  .inventory-detail { display:grid; grid-template-columns:minmax(280px,.85fr) 1fr; border-left:0; border-top:1px solid rgba(24,24,20,.12); }
  .inventory-detail-image { height:auto; min-height:300px; }
}

@media (max-width: 760px) {
  .evidence-intro { min-height:680px; padding:22px 18px 70px; grid-template-columns:1fr; align-content:space-between; gap:24px; }
  .evidence-intro::before { left:20px; top:120px; bottom:80px; }
  .evidence-intro::after { left:16px; top:210px; }
  .evidence-signature { position:relative; z-index:2; }
  .evidence-intro-copy { padding-left:34px; }
  .evidence-intro h1 { font-size:clamp(4.3rem,22vw,7rem); }
  .evidence-note { grid-column:auto; padding-left:34px; }
  .evidence-vitrine { padding:70px 12px; }
  .vitrine-heading { grid-template-columns:1fr; gap:14px; padding:0 6px; }
  .vitrine-heading > p { font-size:.72rem; }

  .explorer-shell { min-height:0; grid-template-columns:1fr; border-radius:11px; }
  .explorer-sidebar { border-right:0; border-bottom:1px solid rgba(232,196,126,.09); }
  .explorer-brand { margin-bottom:18px; }
  .explorer-filters { grid-template-columns:repeat(4,1fr); }
  .explorer-filters button { padding:7px 5px; text-align:center; font-size:.46rem; }
  .explorer-count { margin-top:15px; display:flex; align-items:end; gap:8px; }
  .explorer-count b { font-size:1.4rem; }
  .explorer-table-head { display:none; }
  .explorer-list { max-height:380px; }
  .explorer-row { grid-template-columns:55px minmax(130px,1fr) 68px; min-height:54px; padding:8px 10px; gap:7px; }
  .record-type { display:none; }
  .record-status { justify-self:end; }
  .record-status { font-size:.41rem; }
  .explorer-detail { min-height:270px; padding:21px 16px; }
  .detail-trace { width:110px; right:16px; }

  .inventory-shell { border-radius:2px; }
  .inventory-toolbar { padding:14px 12px; grid-template-columns:1fr auto; gap:10px; }
  .inventory-toolbar nav { grid-row:2; grid-column:1 / -1; display:grid; grid-template-columns:repeat(4,1fr); width:100%; }
  .inventory-toolbar nav button { padding:7px 4px; }
  .inventory-demo-label { font-size:.36rem; }
  .inventory-grid { grid-template-columns:1fr; padding:10px; gap:8px; }
  .inventory-card { grid-template-columns:105px minmax(0,1fr); }
  .inventory-card-image { min-height:120px; }
  .inventory-detail { grid-template-columns:1fr; }
  .inventory-detail-image { min-height:260px; }
  .inventory-detail-copy { padding:22px 18px; }
  .evidence-footer { min-height:240px; padding:55px 18px; flex-direction:column; align-items:flex-start; justify-content:flex-end; }
}

@media (max-width: 390px) {
  .explorer-filters button { font-size:.42rem; }
  .record-title b { font-size:.56rem; }
  .inventory-card-meta { padding:12px 10px 5px; }
  .inventory-card-price { padding:0 10px 11px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior:auto !important; animation:none !important; transition:none !important; }
}
