
:root {
  --ink: #18181b;
  --muted: #52525b;
  --font-heading: Georgia, "Times New Roman", serif;
  --lime: #a3ff49;
  --yellow: #ffe84a;
  --pink: #ff4ab8;
  --aqua: #54f3df;
  --paper: #f7fee7;
  --line: rgba(24,24,27,.12);
}
html { scroll-behavior: smooth; }
body { background:#f7fee7; color:var(--ink); }
::selection { background:#f5d0fe; color:#18181b; }
a, button, summary { -webkit-tap-highlight-color: transparent; }
a:focus-visible, button:focus-visible, summary:focus-visible { outline: 3px solid #18181b; outline-offset: 4px; border-radius:.75rem; }
.skip-link { position:fixed; left:1rem; top:-6rem; z-index:100; background:#18181b; color:white; padding:.75rem 1rem; border-radius:1rem; transition:top .2s ease; }
.skip-link:focus { top:1rem; }
.site-mesh {
  background-image:
    radial-gradient(900px 650px at 5% -5%, rgba(84,243,223,.48), transparent 60%),
    radial-gradient(780px 620px at 92% 8%, rgba(255,232,74,.44), transparent 58%),
    radial-gradient(850px 660px at 72% 88%, rgba(255,74,184,.28), transparent 62%),
    linear-gradient(180deg, #ecfccb 0%, #f0fdfa 34%, #fffbeb 70%, #fff7ed 100%);
}
.soft-mesh {
  background-image:
    radial-gradient(520px 360px at 10% 10%, rgba(163,255,73,.25), transparent 60%),
    radial-gradient(520px 360px at 90% 20%, rgba(84,243,223,.25), transparent 60%),
    radial-gradient(520px 360px at 65% 90%, rgba(255,74,184,.15), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.58));
}
.grain { position:relative; }
.grain::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.055; mix-blend-mode:multiply; border-radius:inherit; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E"); }
.glass { background:rgba(255,255,255,.62); border:1px solid rgba(255,255,255,.78); box-shadow:0 20px 55px rgba(24,24,27,.08); backdrop-filter: blur(18px); }
.card { background:rgba(255,255,255,.7); border:1px solid rgba(24,24,27,.10); border-radius:2rem; box-shadow:0 14px 40px rgba(24,24,27,.06); }
.card-hover { transition:transform .25s ease, box-shadow .25s ease, background .25s ease; }
.card-hover:hover { transform:translateY(-4px); box-shadow:0 24px 60px rgba(24,24,27,.12); background:rgba(255,255,255,.88); }
.pill { display:inline-flex; align-items:center; gap:.45rem; border-radius:999px; background:rgba(255,255,255,.72); border:1px solid rgba(24,24,27,.1); padding:.42rem .75rem; font-weight:700; font-size:.75rem; }
.dot { width:.45rem; height:.45rem; border-radius:999px; background:#65a30d; box-shadow:0 0 0 5px rgba(163,255,73,.26); }
.glow-ring { position:relative; isolation:isolate; }
.glow-ring::after { content:""; position:absolute; inset:-2px; z-index:-1; border-radius:inherit; background:conic-gradient(from 180deg, transparent, rgba(163,255,73,.9), rgba(255,232,74,.9), rgba(255,74,184,.8), rgba(84,243,223,.9), transparent); filter:blur(12px); opacity:.75; }
.shine { position:relative; overflow:hidden; }
.shine::before { content:""; position:absolute; top:-70%; left:-80%; width:55%; height:250%; transform:rotate(18deg); background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent); opacity:.5; animation:sweep 7s ease-in-out infinite; }
@keyframes sweep { 0%,100%{transform:translateX(0) rotate(18deg)} 50%{transform:translateX(440%) rotate(18deg)} }
.hero-cursor { position:absolute; inset:0; pointer-events:none; overflow:hidden; }
.hero-cursor::before { content:""; position:absolute; width:520px; height:520px; transform:translate3d(var(--x,-9999px),var(--y,-9999px),0); border-radius:999px; background:radial-gradient(circle,rgba(84,243,223,.25),rgba(163,255,73,.14),rgba(255,74,184,.08),transparent 64%); filter:blur(8px); }
.token-orbit { position:absolute; border:1px solid rgba(24,24,27,.12); border-radius:50%; animation:spin 20s linear infinite; }
.token-orbit::before,.token-orbit::after { content:"$"; position:absolute; display:grid; place-items:center; width:2.75rem; height:2.75rem; border-radius:1rem; font-weight:900; background:rgba(255,255,255,.82); border:1px solid rgba(24,24,27,.12); box-shadow:0 14px 30px rgba(24,24,27,.12); }
.token-orbit::before { left:7%; top:8%; }
.token-orbit::after { right:2%; bottom:13%; content:"◎"; background:rgba(255,232,74,.9); }
@keyframes spin { to{transform:rotate(360deg)} }
.float { animation:floaty 7s ease-in-out infinite; }
.float-2 { animation:floaty 9s ease-in-out infinite reverse; }
@keyframes floaty { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-11px)} }
.ticker-mask { overflow:hidden; -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); }
.ticker-track { display:flex; width:max-content; gap:.75rem; animation:ticker 34s linear infinite; }
@keyframes ticker { to{transform:translateX(-50%)} }
.reveal { opacity:0; transform:translateY(18px); transition:opacity .65s ease, transform .65s ease; }
.reveal.is-visible { opacity:1; transform:none; }
.article-prose { font-size:1.0625rem; line-height:1.82; color:#3f3f46; }
.article-prose > * + * { margin-top:1.25rem; }
.article-prose h2 { scroll-margin-top:7rem; margin-top:3.25rem; font-family:ui-sans-serif,system-ui,sans-serif; font-size:1.85rem; line-height:1.18; letter-spacing:-.025em; font-weight:750; color:#18181b; }
.article-prose h3 { scroll-margin-top:7rem; margin-top:2.25rem; font-family:ui-sans-serif,system-ui,sans-serif; font-size:1.28rem; line-height:1.3; font-weight:750; color:#18181b; }
.article-prose p { max-width:74ch; }
.article-prose ul,.article-prose ol { max-width:72ch; padding-left:1.4rem; }
.article-prose ul { list-style:disc; }
.article-prose ol { list-style:decimal; }
.article-prose li + li { margin-top:.65rem; }
.article-prose a { color:#3f6212; font-weight:700; text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:3px; }
.article-prose blockquote { max-width:72ch; border-left:5px solid #a3ff49; background:rgba(236,252,203,.65); border-radius:0 1.4rem 1.4rem 0; padding:1.2rem 1.4rem; color:#27272a; font-weight:600; }
.article-prose .callout { max-width:74ch; border-radius:1.6rem; border:1px solid rgba(24,24,27,.1); background:linear-gradient(135deg,rgba(84,243,223,.15),rgba(255,232,74,.18),rgba(255,74,184,.10)); padding:1.35rem 1.5rem; }
.article-prose table { width:100%; border-collapse:separate; border-spacing:0; overflow:hidden; border:1px solid rgba(24,24,27,.12); border-radius:1.25rem; font-size:.94rem; }
.article-prose th,.article-prose td { padding:.85rem 1rem; border-bottom:1px solid rgba(24,24,27,.1); text-align:left; vertical-align:top; }
.article-prose th { background:rgba(236,252,203,.7); color:#18181b; }
.article-prose tr:last-child td { border-bottom:0; }
.toc a { display:block; border-radius:.8rem; padding:.55rem .75rem; color:#3f3f46; font-weight:650; }
.toc a:hover { background:rgba(236,252,203,.8); color:#18181b; }
.image-frame { border-radius:2rem; padding:.45rem; background:repeating-linear-gradient(90deg,#a3ff49 0 4px,#54f3df 4px 8px,#ffe84a 8px 12px,#ff4ab8 12px 16px); box-shadow:0 18px 55px rgba(24,24,27,.14); }
.image-frame img { display:block; width:100%; height:auto; border-radius:1.65rem; background:white; }
.nav-link[aria-current="page"] { color:#18181b; background:rgba(255,255,255,.74); box-shadow:inset 0 0 0 1px rgba(24,24,27,.1); }
.breadcrumbs { font-size:.78rem; color:#71717a; }
.breadcrumbs a { font-weight:700; color:#3f6212; }
.stat-number { font-family:Georgia,"Times New Roman",serif; font-size:2rem; line-height:1; }
.check-list li { position:relative; padding-left:1.8rem; }
.check-list li::before { content:"✓"; position:absolute; left:0; top:0; width:1.2rem; height:1.2rem; display:grid; place-items:center; border-radius:.45rem; background:#d9f99d; color:#365314; font-size:.75rem; font-weight:900; }
@media (max-width:1023px) { .desktop-nav{display:none!important;} .mobile-only{display:inline-flex!important;} }
@media (min-width:1024px) { .desktop-nav{display:flex!important;} .mobile-only{display:none!important;} }
@media (max-width:767px) { .article-prose{font-size:1rem}.article-prose h2{font-size:1.55rem}.article-prose table{display:block;overflow-x:auto;white-space:normal}.token-orbit{display:none}.hero-cursor{display:none} }
@media (prefers-reduced-motion:reduce) { html{scroll-behavior:auto}.shine::before,.float,.float-2,.ticker-track,.token-orbit{animation:none!important}.reveal{opacity:1;transform:none;transition:none} }
