/* =============================================================================
   GENESIS DESIGN SYSTEM — CANONICAL STYLESHEET
   PBTG-CJM-GENESIS-CSS-CANONICAL-v1.0
   Constitutional Anchor: fa39bbe8 · Genesis Block: b1c57f72
   Architecture Fingerprint: PBTG-22DB7AD3FFCF886B
   © 2026 Point Break Trading Group LLC — All Rights Reserved
   Watermark: PBTG-CJM-OMEGA-v3-CANONICAL-LIVE
   ============================================================================= */

/* CANONICAL TOKENS — DO NOT MODIFY WITHOUT ROOT AUTHORIZATION */
:root {
  /* Backgrounds — sovereign black through deep blue-violet */
  --bg-primary:      #010104;
  --bg-secondary:    #06060d;
  --bg-elevated:     #0c0c1a;
  --bg-card:         #0f0f1f;
  --bg-overlay:      rgba(6, 6, 13, 0.85);

  /* Surface colors — for borders, dividers, low-emphasis elements */
  --surface-1:       #14142a;
  --surface-2:       #1c1c38;
  --surface-3:       #262647;

  /* Sovereign palette — locked semantic colors */
  --sovereign-gold:  #c8a44a;     /* Authority, watermarks, canonical labels */
  --live-green:      #00f090;     /* Active, verified, live signals */
  --proof-blue:      #5090ff;     /* Proofs, receipts, anchors */
  --enforcement-red: #ff3d5a;     /* Violations, failures, denials */
  --pending-amber:   #ffaa3d;     /* Pending, in-progress, awaiting verification */

  /* Text */
  --text-primary:    #f0f0f5;
  --text-secondary:  #a8a8c0;
  --text-muted:      #6a6a85;
  --text-anchor:     var(--sovereign-gold);

  /* Typography — locked */
  --font-display:  'Cinzel', 'Trajan Pro', Georgia, serif;
  --font-body:     'Cormorant Garamond', 'EB Garamond', Georgia, serif;
  --font-mono:     'IBM Plex Mono', 'JetBrains Mono', 'Courier New', monospace;

  /* Spacing scale — 8px base */
  --sp-1:  4px;
  --sp-2:  8px;
  --sp-3:  16px;
  --sp-4:  24px;
  --sp-5:  32px;
  --sp-6:  48px;
  --sp-7:  64px;
  --sp-8:  96px;

  /* Borders & radii */
  --border-thin:   1px solid var(--surface-2);
  --border-strong: 1px solid var(--surface-3);
  --border-gold:   1px solid var(--sovereign-gold);
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;

  /* Motion */
  --ease-default: cubic-bezier(0.4, 0, 0.2, 1);
  --dur-fast: 150ms;
  --dur-med:  300ms;
}

/* RESET */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  font-family: var(--font-body);
  font-size: 18px;
  line-height: 1.6;
  background: var(--bg-primary);
  color: var(--text-primary);
  font-feature-settings: "kern", "liga", "onum";
  min-height: 100vh;
  text-rendering: optimizeLegibility;
}
img { max-width: 100%; display: block; }
a { color: var(--proof-blue); text-decoration: none; transition: color var(--dur-fast) var(--ease-default); }
a:hover { color: var(--live-green); }
hr { border: 0; border-top: var(--border-thin); margin: var(--sp-5) 0; }

/* TYPOGRAPHY */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-display);
  font-weight: 500;
  letter-spacing: 0.02em;
  margin: var(--sp-5) 0 var(--sp-3);
  color: var(--text-primary);
}
h1 { font-size: clamp(2.4rem, 5vw, 4rem); line-height: 1.1; letter-spacing: 0.04em; }
h2 { font-size: clamp(1.8rem, 3.5vw, 2.6rem); line-height: 1.2; }
h3 { font-size: clamp(1.4rem, 2.5vw, 1.8rem); line-height: 1.3; color: var(--sovereign-gold); }
h4 { font-size: 1.2rem; line-height: 1.4; }
.eyebrow {
  font-family: var(--font-mono);
  font-size: 0.75rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--sovereign-gold);
  display: inline-block;
  margin-bottom: var(--sp-2);
}
.mono { font-family: var(--font-mono); }
.gold { color: var(--sovereign-gold); }
.live { color: var(--live-green); }
.proof { color: var(--proof-blue); }
.enf { color: var(--enforcement-red); }
.pending { color: var(--pending-amber); }

/* LAYOUT */
.canonical-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 var(--sp-4);
}
.narrow {
  max-width: 760px;
  margin: 0 auto;
  padding: 0 var(--sp-4);
}

/* HEADER — VERIFICATION HEADER (always present on every Tier 5 surface) */
.verification-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: var(--bg-overlay);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: var(--border-thin);
  padding: var(--sp-2) 0;
  font-family: var(--font-mono);
  font-size: 0.78rem;
}
.verification-header__inner {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 var(--sp-4);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--sp-4);
  flex-wrap: wrap;
}
.verification-header__cell {
  display: flex;
  align-items: center;
  gap: var(--sp-2);
  color: var(--text-secondary);
}
.verification-header__cell .label {
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 0.68rem;
}
.verification-header__cell .value {
  color: var(--text-primary);
}
.live-pulse {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--live-green);
  box-shadow: 0 0 10px var(--live-green);
  animation: pulse 2s var(--ease-default) infinite;
}
@keyframes pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.4; transform: scale(0.85); }
}

/* TIER 5 RECEIPT STREAM */
.receipt-stream {
  background: var(--bg-elevated);
  border: var(--border-thin);
  border-radius: var(--radius-md);
  padding: 0;
  overflow: hidden;
  margin: var(--sp-5) 0;
}
.receipt-stream__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--sp-3) var(--sp-4);
  border-bottom: var(--border-thin);
  background: var(--bg-card);
}
.receipt-stream__head h3 {
  margin: 0;
  font-size: 1.1rem;
  font-family: var(--font-mono);
  color: var(--sovereign-gold);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.receipt-stream__feed {
  max-height: 480px;
  overflow-y: auto;
  font-family: var(--font-mono);
  font-size: 0.82rem;
}
.receipt-row {
  display: grid;
  grid-template-columns: 100px 1fr 140px 90px 100px;
  gap: var(--sp-3);
  padding: var(--sp-3) var(--sp-4);
  border-bottom: 1px solid var(--surface-1);
  align-items: center;
  transition: background var(--dur-fast);
}
.receipt-row:hover {
  background: var(--bg-card);
}
.receipt-row__time {
  color: var(--text-muted);
  font-size: 0.74rem;
}
.receipt-row__hash {
  color: var(--proof-blue);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.receipt-row__type {
  color: var(--sovereign-gold);
  font-size: 0.74rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.receipt-row__verdict {
  font-size: 0.74rem;
  padding: 2px 8px;
  border-radius: var(--radius-sm);
  text-align: center;
}
.receipt-row__verdict--ok {
  background: rgba(0, 240, 144, 0.12);
  color: var(--live-green);
  border: 1px solid rgba(0, 240, 144, 0.3);
}
.receipt-row__verdict--deny {
  background: rgba(255, 61, 90, 0.12);
  color: var(--enforcement-red);
  border: 1px solid rgba(255, 61, 90, 0.3);
}
.receipt-row__verdict--pending {
  background: rgba(255, 170, 61, 0.12);
  color: var(--pending-amber);
  border: 1px solid rgba(255, 170, 61, 0.3);
}
.receipt-row__verify {
  color: var(--proof-blue);
  font-size: 0.74rem;
  cursor: pointer;
  text-decoration: underline;
  text-decoration-style: dotted;
}

/* CARD */
.card {
  background: var(--bg-elevated);
  border: var(--border-thin);
  border-radius: var(--radius-md);
  padding: var(--sp-5);
  margin: var(--sp-4) 0;
}
.card--gold { border-color: var(--sovereign-gold); }
.card--proof { border-left: 3px solid var(--proof-blue); }
.card--enf { border-left: 3px solid var(--enforcement-red); }

/* BUTTONS */
.btn {
  display: inline-block;
  font-family: var(--font-mono);
  font-size: 0.85rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: var(--sp-3) var(--sp-5);
  border: 1px solid var(--surface-3);
  background: transparent;
  color: var(--text-primary);
  border-radius: var(--radius-sm);
  cursor: pointer;
  transition: all var(--dur-fast) var(--ease-default);
  text-decoration: none;
}
.btn:hover {
  border-color: var(--sovereign-gold);
  color: var(--sovereign-gold);
}
.btn--primary {
  background: var(--sovereign-gold);
  color: var(--bg-primary);
  border-color: var(--sovereign-gold);
}
.btn--primary:hover {
  background: transparent;
  color: var(--sovereign-gold);
}
.btn--proof {
  border-color: var(--proof-blue);
  color: var(--proof-blue);
}
.btn--proof:hover {
  background: var(--proof-blue);
  color: var(--bg-primary);
}

/* SECTION DIVIDERS */
.section {
  padding: var(--sp-7) 0;
  border-bottom: var(--border-thin);
}
.section--hero {
  padding: var(--sp-8) 0;
  text-align: center;
}

/* WATERMARK FOOTER */
.canonical-footer {
  padding: var(--sp-6) 0;
  text-align: center;
  font-family: var(--font-mono);
  font-size: 0.74rem;
  color: var(--text-muted);
  border-top: var(--border-thin);
  margin-top: var(--sp-7);
}
.canonical-footer .anchor {
  color: var(--sovereign-gold);
  letter-spacing: 0.12em;
}

/* RESPONSIVE */
@media (max-width: 768px) {
  body { font-size: 16px; }
  .receipt-row {
    grid-template-columns: 1fr 80px;
    gap: var(--sp-2);
  }
  .receipt-row__time, .receipt-row__type { display: none; }
  .verification-header__cell {
    font-size: 0.68rem;
  }
}
