/* Mahimn Patel — shared tokens & chrome for child pages */
:root{
  --bg:#0B0B0B;--bg-2:#121212;--ink:#F2EFE8;--ink-2:#9A958B;--ink-3:#5A554D;
  --rule:#2A2723;--accent:#FF4B1F;--accent-2:#FFE9DF;
  --ok:#00E0A4;--warn:#F5D547;--down:#FF5A7A;
  --serif:"Instrument Serif","Times New Roman",serif;
  --mono:"JetBrains Mono",ui-monospace,Menlo,monospace;
  --sans:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;
  --grain-op:0.12;
}
body.light{--bg:#F2EFE8;--bg-2:#E9E5DB;--ink:#0B0B0B;--ink-2:#4A463E;--ink-3:#8A857B;--rule:#D6D1C5}
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{transition:background .4s,color .4s}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
.mono{font-family:var(--mono)}
.serif{font-family:var(--serif)}
em{font-style:italic}
#grain{position:fixed;inset:0;pointer-events:none;z-index:100;opacity:var(--grain-op);mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.9 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}
/* top nav */
.nav{position:sticky;top:0;z-index:80;height:52px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 24px;background:color-mix(in oklab,var(--bg) 80%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--rule);font-family:var(--mono);font-size:11px;letter-spacing:.04em}
.nav-mark{display:flex;gap:14px;align-items:center}
.mark-mono{font-family:var(--serif);font-size:22px;font-style:italic;line-height:1;padding:2px 8px;border:1px solid var(--ink)}
.mark-meta{color:var(--ink-2)}
.blink{color:var(--accent);animation:blink 1.4s infinite}
@keyframes blink{50%{opacity:.25}}
.nav-links{display:flex;gap:22px;justify-content:center}
.nav-links a{color:var(--ink-2);transition:color .2s;position:relative}
.nav-links a:hover{color:var(--ink)}
.nav-links a::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .3s}
.nav-links a:hover::after{transform:scaleX(1)}
.nav-cta{display:flex;gap:10px;align-items:center;justify-content:flex-end;color:var(--ink-2)}
.dot-green{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 10px var(--ok)}
/* page shell */
.page{padding:48px 6vw 120px;max-width:1600px;margin:0 auto}
.crumbs{display:flex;gap:10px;align-items:center;font-family:var(--mono);font-size:11px;color:var(--ink-2);letter-spacing:.08em;margin-bottom:34px}
.crumbs a:hover{color:var(--accent)}
.crumbs .sep{color:var(--ink-3)}
.page-head{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:end;padding-bottom:24px;border-bottom:1px solid var(--rule);margin-bottom:42px}
.page-kicker{font-family:var(--mono);font-size:11px;color:var(--accent);letter-spacing:.2em;margin-bottom:14px;display:flex;gap:12px;align-items:center}
.page-kicker .dash{width:30px;height:1px;background:var(--accent)}
.page-title{font-family:var(--serif);font-weight:400;font-size:clamp(44px,6vw,96px);line-height:.95;letter-spacing:-.02em;max-width:18ch}
.page-title em{font-style:italic;color:var(--accent)}
.page-meta{font-family:var(--mono);font-size:11px;color:var(--ink-2);letter-spacing:.08em;display:flex;flex-direction:column;gap:6px;text-align:right}
.page-meta b{color:var(--ink);font-weight:400}
.prose{font-family:var(--serif);font-size:20px;line-height:1.55;max-width:68ch;color:var(--ink)}
.prose p{margin-bottom:1.3em}
.prose p.dek{font-size:26px;color:var(--ink-2);font-style:italic;border-left:2px solid var(--accent);padding-left:20px;margin-left:-22px}
.prose h2{font-family:var(--serif);font-style:italic;font-size:36px;font-weight:400;margin:2em 0 .6em;letter-spacing:-.01em}
.prose h3{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--accent);margin:2.4em 0 .6em}
.prose a{border-bottom:1px solid var(--accent);color:var(--accent)}
.prose blockquote{font-family:var(--serif);font-style:italic;font-size:24px;color:var(--ink-2);border-left:2px solid var(--rule);padding-left:22px;margin:1.4em 0}
.prose code{font-family:var(--mono);font-size:.75em;background:var(--bg-2);padding:2px 6px;border:1px solid var(--rule);color:var(--accent-2)}
.prose pre{font-family:var(--mono);font-size:12.5px;line-height:1.6;background:var(--bg-2);border:1px solid var(--rule);padding:18px 22px;overflow-x:auto;margin:1.4em 0}
.prose ul,.prose ol{margin:0 0 1.3em 1.2em;color:var(--ink)}
.prose li{margin-bottom:.4em}
.prose hr{border:0;border-top:1px solid var(--rule);margin:3em 0}
/* sidebar layouts */
.layout-3{display:grid;grid-template-columns:220px 1fr 220px;gap:56px;align-items:start}
.side{font-family:var(--mono);font-size:11px;color:var(--ink-2);letter-spacing:.06em;position:sticky;top:80px;display:flex;flex-direction:column;gap:18px}
.side h5{color:var(--accent);margin-bottom:4px;letter-spacing:.18em}
.side-block{padding:10px 0;border-top:1px solid var(--rule)}
.side-block ul{list-style:none;display:flex;flex-direction:column;gap:4px;margin-top:4px}
.side-block a:hover{color:var(--accent)}
@media (max-width:1100px){.layout-3{grid-template-columns:1fr}.side{position:static}}
/* related strip */
.related{margin-top:100px;padding-top:40px;border-top:1px solid var(--rule)}
.related h4{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--accent);margin-bottom:24px}
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--rule)}
.related-card{padding:22px 24px 28px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);display:flex;flex-direction:column;gap:10px;transition:.2s;min-height:180px}
.related-card:last-child{border-right:0}
.related-card:hover{background:var(--accent);color:#0B0B0B}
.related-card:hover .rc-meta{color:#0B0B0B;opacity:.7}
.related-card h5{font-family:var(--serif);font-size:26px;font-weight:400;line-height:1.1}
.related-card h5 em{font-style:italic}
.rc-meta{font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--ink-2)}
@media (max-width:800px){.related-grid{grid-template-columns:1fr}.related-card{border-right:0}}
/* footer */
.site-foot{border-top:1px solid var(--rule);margin-top:80px;padding:40px 6vw;display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;font-family:var(--mono);font-size:11px;color:var(--ink-2);letter-spacing:.06em}
.site-foot a:hover{color:var(--accent)}
/* kbd stack */
.kbd{font-family:var(--mono);font-size:10px;padding:2px 6px;border:1px solid var(--rule);background:var(--bg-2);color:var(--ink-2)}
/* pills */
.tag{font-family:var(--mono);font-size:10px;letter-spacing:.12em;padding:4px 9px;border:1px solid var(--rule);color:var(--ink-2)}
.tag.accent{border-color:var(--accent);color:var(--accent)}
/* data */
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--rule);margin:30px 0}
.stat-grid .stat{padding:18px 20px;border-right:1px solid var(--rule)}
.stat-grid .stat:last-child{border-right:0}
.stat-grid .k{font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--ink-2)}
.stat-grid .v{font-family:var(--serif);font-size:36px;line-height:1;margin-top:6px}
.stat-grid .v em{font-style:italic;color:var(--accent)}
.stat-grid .v.small{font-size:22px}
@media (max-width:800px){.stat-grid{grid-template-columns:repeat(2,1fr)}.stat-grid .stat{border-bottom:1px solid var(--rule)}}
/* ASCII chart */
.ascii{font-family:var(--mono);font-size:11px;line-height:1.15;color:var(--ink);background:var(--bg-2);border:1px solid var(--rule);padding:22px;white-space:pre;overflow-x:auto}
.ascii .up{color:var(--ok)}.ascii .dn{color:var(--down)}.ascii .hl{color:var(--accent)}
