

:root{
  --ink:#0C1018;
  --ink-2:#131A26;
  --steel:#1B2536;
  --steel-2:#22304A;
  --surface:#F7F5EF;
  --panel:#FFFFFF;
  --line:#E6E1D3;
  --line-2:#2C3A54;
  --bronze:#C9A227;
  --bronze-2:#E3C468;
  --teal:#2F6B5E;
  --teal-2:#4F8B7C;
  --text:#191B20;
  --text-muted:#63666D;
  --text-inverse:#ECEAE2;
  --text-inverse-muted:#9CA3AE;
  --good:#3E7A5C;
  --warn:#B0793A;
  --crit:#A94C4C;
}

*{scroll-behavior:smooth;}
body{
  font-family:'Inter',sans-serif;
  background:var(--surface);
  color:var(--text);
}
.font-display{font-family:'Newsreader',serif;}
.font-mono{font-family:'JetBrains Mono',monospace;}

/* Focus visibility */
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible{
  outline:2px solid var(--bronze);
  outline-offset:2px;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  *{animation:none !important; transition:none !important;}
}

/* Grain / layered background for dark sections */
.bg-ink-layered{
  background-color:var(--ink);
  background-image:
    radial-gradient(circle at 12% 8%, rgba(169,131,76,0.14), transparent 42%),
    radial-gradient(circle at 88% 82%, rgba(62,107,125,0.18), transparent 45%),
    linear-gradient(180deg, var(--ink) 0%, var(--ink-2) 100%);
}

.bg-steel-layered{
  background-color:var(--steel);
  background-image:
    radial-gradient(circle at 90% 10%, rgba(199,160,107,0.10), transparent 40%),
    linear-gradient(160deg, var(--steel) 0%, var(--steel-2) 100%);
}

.hairline{border-color:var(--line);}
.hairline-dark{border-color:var(--line-2);}

/* Glass panel */
.glass{
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.10);
  backdrop-filter:blur(10px);
}
.glass-light{
  background:rgba(255,255,255,0.72);
  border:1px solid rgba(255,255,255,0.6);
  backdrop-filter:blur(8px);
}

/* Ledger strip — signature element */
.ledger-row{
  display:grid;
  grid-template-columns:auto 1fr auto auto;
  gap:1rem;
  align-items:center;
  padding:0.85rem 1rem;
  border-bottom:1px solid var(--line);
  font-family:'JetBrains Mono',monospace;
  font-size:0.78rem;
}
.ledger-row:last-child{border-bottom:none;}
.ledger-dot{
  width:8px;height:8px;border-radius:999px;flex:0 0 auto;
}
.dot-good{background:var(--good);}
.dot-warn{background:var(--warn);}
.dot-crit{background:var(--crit);}
.dot-neutral{background:var(--teal);}

/* Status pill */
.pill{
  display:inline-flex;align-items:center;gap:0.4rem;
  font-family:'JetBrains Mono',monospace;
  font-size:0.7rem;letter-spacing:0.04em;text-transform:uppercase;
  padding:0.3rem 0.65rem;border-radius:999px;
  border:1px solid var(--line);
}

/* Small card icon/heading centered rule */
.card-centered{display:flex;flex-direction:column;align-items:center;text-align:center;}

/* Section number / eyebrow tick (used only where sequence is real) */
.tick{
  width:28px;height:2px;background:var(--bronze);display:inline-block;
}

/* Table styling */
table.gov-table{width:100%;border-collapse:collapse;font-size:0.9rem;}
table.gov-table th{
  text-align:left;font-family:'JetBrains Mono',monospace;font-size:0.72rem;
  letter-spacing:0.05em;text-transform:uppercase;color:var(--text-muted);
  padding:0.75rem 1rem;border-bottom:2px solid var(--line);
}
table.gov-table td{padding:0.9rem 1rem;border-bottom:1px solid var(--line);vertical-align:top;}
table.gov-table tr:last-child td{border-bottom:none;}

/* Panel gradient accent bar */
.accent-bar{height:3px;background:linear-gradient(90deg, var(--bronze) 0%, var(--teal) 100%);}

/* Mobile menu */
#mobile-menu{transition:max-height 0.25s ease, opacity 0.2s ease;}


/* Hide Scrollbar */
html,
body{
    overflow-x: hidden;
    scrollbar-width: none;      
    -ms-overflow-style: none;
    padding-top: 1rem;
}

html::-webkit-scrollbar,
body::-webkit-scrollbar{
    display: none;              
}