/* ============================================================
   THE UNIVERSAL FORCE OF TIME — shared site stylesheet
   One font family (Noto = "no tofu": full π ² ³ × · → ₂ coverage),
   one nav, one palette. Link this on every page:
   <link rel="stylesheet" href="ufot_site.css">
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Noto+Serif:ital,wght@0,400;0,500;0,600;0,700;1,400&family=Noto+Sans:wght@400;500;600;700&family=Noto+Sans+Mono:wght@400;500;700&display=swap');

:root{
  --blue:#0047AB; --blue-light:#1a6edd; --navy:#1a2744;
  --ink:#14181f; --grey:#566; --grey-light:#8a93a0; --line:#e7ebf2;
  --bg:#ffffff; --bg-soft:#f6f8fc; --gold:#c8a951;
  --serif:'Noto Serif', Georgia, 'Times New Roman', serif;
  --sans:'Noto Sans', system-ui, -apple-system, sans-serif;
  --mono:'Noto Sans Mono', 'DejaVu Sans Mono', monospace;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;font-size:18px;}
body{font-family:var(--serif);color:var(--ink);background:var(--bg);line-height:1.75;-webkit-font-smoothing:antialiased;}

/* ---- NAV (identical on every page — no dead ends) ---- */
.ufot-nav{position:sticky;top:0;z-index:1000;display:flex;align-items:center;gap:.4rem;
  height:60px;padding:0 1.4rem;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);overflow-x:auto;}
.ufot-nav .brand{font-family:var(--serif);font-weight:700;font-size:1.25rem;color:var(--blue);
  text-decoration:none;white-space:nowrap;margin-right:1rem;flex-shrink:0;letter-spacing:-.01em;}
.ufot-nav .brand span{display:block;font-family:var(--mono);font-size:.52rem;letter-spacing:.18em;
  color:var(--grey-light);text-transform:uppercase;margin-top:-3px;}
.ufot-nav a.lnk{font-family:var(--sans);font-size:.72rem;font-weight:600;letter-spacing:.04em;
  text-transform:uppercase;color:var(--grey);text-decoration:none;padding:.4rem .7rem;border-radius:4px;
  white-space:nowrap;flex-shrink:0;transition:.15s;}
.ufot-nav a.lnk:hover{color:var(--blue);background:var(--bg-soft);}
.ufot-nav a.home{color:var(--blue);}

/* ---- LAYOUT ---- */
.wrap{max-width:880px;margin:0 auto;padding:3.5rem 1.4rem 5rem;}
.eyebrow{font-family:var(--mono);font-size:.64rem;letter-spacing:.22em;text-transform:uppercase;color:var(--grey-light);margin-bottom:.8rem;}
h1{font-family:var(--serif);font-weight:700;font-size:clamp(1.9rem,4vw,2.8rem);line-height:1.12;color:var(--navy);margin-bottom:.6rem;letter-spacing:-.01em;}
h2{font-family:var(--serif);font-weight:600;font-size:1.5rem;color:var(--blue);margin:2.6rem 0 .9rem;}
h3{font-family:var(--serif);font-weight:600;font-size:1.12rem;color:var(--navy);margin:1.6rem 0 .5rem;}
p{margin-bottom:1.15em;}
.lead{font-size:1.18rem;color:#33404e;font-style:italic;line-height:1.85;margin-bottom:1.6rem;}
a{color:var(--blue);}
hr.rule{border:none;border-top:1px solid var(--line);margin:1.4rem 0;}

/* ---- FORMULAS & TABLES — mono with full glyph coverage (no black squares) ---- */
.formula{font-family:var(--mono);font-size:.92rem;line-height:1.7;background:var(--bg-soft);
  border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:6px;
  padding:.9rem 1.1rem;margin:1.1rem 0;color:var(--ink);overflow-x:auto;}
.formula .hi{color:var(--blue);font-weight:700;}
table.data{width:100%;border-collapse:collapse;margin:1.2rem 0;font-size:.9rem;}
table.data th{font-family:var(--sans);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;
  color:var(--grey);text-align:left;border-bottom:2px solid var(--line);padding:.55rem .7rem;}
table.data td{border-bottom:1px solid var(--line);padding:.55rem .7rem;vertical-align:top;}
table.data td.mono{font-family:var(--mono);font-size:.84rem;}
.ppm{font-family:var(--mono);color:#1a8a4a;font-size:.82rem;}

/* ---- PROPOSITION CARD ---- */
.prop{border:1px solid var(--line);border-radius:7px;padding:1rem 1.2rem;margin:.9rem 0;background:#fff;}
.prop .pid{font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;color:var(--blue);text-transform:uppercase;margin-bottom:.35rem;}
.prop p{font-size:.95rem;margin:0;}

/* ---- FOOTER ---- */
.ufot-foot{border-top:1px solid var(--line);background:var(--navy);color:rgba(255,255,255,.6);
  text-align:center;padding:2.4rem 1.4rem;font-family:var(--mono);font-size:.62rem;letter-spacing:.1em;line-height:2;}
.ufot-foot .tau{font-family:var(--serif);font-size:2rem;color:var(--gold);display:block;margin-bottom:.4rem;}

@media(max-width:640px){html{font-size:16px;}.ufot-nav{padding:0 .8rem;}.wrap{padding:2.4rem 1.1rem 3.5rem;}}

/* ============================================================
   LEGACY-VARIABLE OVERRIDE — loaded after each page's inline
   <style>, so it re-points the old font variables at Noto and
   kills black squares site-wide without touching any layout.
   ============================================================ */
:root{
  --font-head:'Noto Serif', Georgia, 'Times New Roman', serif;
  --font-body:'Noto Serif', Georgia, 'Times New Roman', serif;
  --font-mono:'Noto Sans Mono','DejaVu Sans Mono', monospace;
}
.mono,.nuc-table .mono,.formula-box,.f-highlight,[class*="mono"]{font-family:'Noto Sans Mono','DejaVu Sans Mono',monospace !important;}
