/* =================================================================
   ARKLIGHT — Long-form essay / research detail page styles
   Used by: research/*.html and content/*.html
   ================================================================= */

body{background:#05080E;}

/* ============== ARTICLE HEAD ============== */
.rs-head{position:relative;padding:140px 72px 72px;background:radial-gradient(ellipse 60% 60% at 0% 0%, rgba(245,161,74,.1) 0%, transparent 60%),#05080E;border-bottom:1px solid rgba(200,217,228,.08);overflow:hidden;}
.rs-back{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:rgba(200,217,228,.55);text-decoration:none;margin-bottom:36px;transition:color .2s;}
.rs-back:hover{color:var(--amber-400);}
.rs-head-meta{display:flex;align-items:center;gap:12px;margin-bottom:28px;flex-wrap:wrap;}
.rs-head-meta .tag{font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--amber-400);padding:5px 9px;border:1px solid rgba(245,161,74,.4);border-radius:2px;background:rgba(245,161,74,.06);}
.rs-head-meta .date,.rs-head-meta .id{font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:rgba(200,217,228,.5);}
.rs-head h1{font-family:var(--font-display);font-size:clamp(38px,5.2vw,68px);line-height:1;letter-spacing:-.035em;color:#F4F8FB;margin:0 0 24px;font-weight:500;max-width:1100px;}
.rs-head h1 em{font-style:normal;color:rgba(200,217,228,.78);font-weight:300;}
.rs-head .lead{font-size:19px;line-height:1.55;color:rgba(232,241,246,.78);max-width:760px;margin:0 0 40px;}
.rs-byline{display:flex;align-items:center;gap:24px;padding-top:24px;border-top:1px solid rgba(200,217,228,.08);max-width:760px;flex-wrap:wrap;}
.rs-byline .author{font-family:var(--font-display);font-size:15px;color:#F4F8FB;font-weight:500;}
.rs-byline .role{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--amber-400);margin-top:4px;}
.rs-byline .read-time{margin-left:auto;font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:rgba(200,217,228,.5);}
.rs-byline .original{font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:rgba(200,217,228,.55);text-decoration:none;border:1px solid rgba(200,217,228,.18);padding:8px 12px;border-radius:2px;transition:all .2s;display:inline-flex;align-items:center;gap:8px;}
.rs-byline .original:hover{color:#F4F8FB;border-color:rgba(200,217,228,.4);}
.rs-byline .original svg{width:12px;height:12px;}
@media (max-width:900px){.rs-head{padding:120px 32px 56px;}}

/* ============== ARTICLE BODY ============== */
.rs-body{max-width:780px;margin:0 auto;padding:80px 32px;}
.rs-body p{font-size:18px;line-height:1.7;color:rgba(232,241,246,.84);margin:0 0 24px;font-weight:400;}
.rs-body p.lede{font-size:21px;line-height:1.55;color:#F4F8FB;font-weight:400;}
.rs-body p.tldr{font-family:var(--font-mono);font-size:14px;line-height:1.6;color:rgba(232,241,246,.78);background:rgba(245,161,74,.06);border-left:3px solid var(--amber-400);padding:18px 22px;margin:0 0 36px;letter-spacing:0;text-transform:none;}
.rs-body p.tldr::before{content:'TL;DR · ';font-family:var(--font-mono);letter-spacing:.22em;color:var(--amber-400);font-weight:500;}
.rs-body h2{font-family:var(--font-display);font-size:32px;font-weight:500;letter-spacing:-.025em;color:#F4F8FB;margin:64px 0 24px;line-height:1.1;}
.rs-body h3{font-family:var(--font-display);font-size:22px;font-weight:500;letter-spacing:-.015em;color:#F4F8FB;margin:48px 0 16px;}
.rs-body strong{color:var(--amber-400);font-weight:500;}
.rs-body em{color:#F4F8FB;font-style:italic;}
.rs-body a.inline{color:var(--amber-400);text-decoration:none;border-bottom:1px solid rgba(245,161,74,.3);transition:border-color .2s;}
.rs-body a.inline:hover{border-bottom-color:var(--amber-400);}
.rs-body blockquote{margin:36px 0;padding:20px 24px;border-left:3px solid var(--amber-400);background:rgba(245,161,74,.06);font-family:var(--font-display);font-size:22px;line-height:1.4;color:#F4F8FB;letter-spacing:-.01em;}
.rs-body ul{padding-left:0;list-style:none;margin:24px 0;}
.rs-body ul li{display:grid;grid-template-columns:24px 1fr;gap:12px;padding:10px 0;font-size:17px;line-height:1.55;color:rgba(232,241,246,.82);border-bottom:1px solid rgba(200,217,228,.08);}
.rs-body ul li::before{content:'◆';color:var(--amber-400);font-size:10px;padding-top:6px;}
.rs-body ul li:last-child{border-bottom:0;}
.rs-body ol{counter-reset:item;list-style:none;padding-left:0;margin:24px 0;}
.rs-body ol li{counter-increment:item;display:grid;grid-template-columns:32px 1fr;gap:12px;padding:10px 0;font-size:17px;line-height:1.55;color:rgba(232,241,246,.82);border-bottom:1px solid rgba(200,217,228,.08);}
.rs-body ol li::before{content:counter(item, decimal-leading-zero);font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;color:var(--amber-400);padding-top:6px;}
.rs-body ol li:last-child{border-bottom:0;}

/* ============== EMBEDDED TWEET / QUOTE CARD ============== */
.rs-tweet{margin:36px 0;padding:24px 28px;background:rgba(14,28,48,.5);border:1px solid rgba(200,217,228,.14);border-radius:6px;position:relative;}
.rs-tweet::before{content:'';position:absolute;top:-1px;left:-1px;width:12px;height:12px;border-top:1px solid rgba(200,217,228,.4);border-left:1px solid rgba(200,217,228,.4);}
.rs-tweet-head{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
.rs-tweet-platform{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:rgba(200,217,228,.6);}
.rs-tweet-platform svg{width:14px;height:14px;color:rgba(200,217,228,.7);}
.rs-tweet-author{font-family:var(--font-display);font-size:15px;color:#F4F8FB;font-weight:500;letter-spacing:-.005em;}
.rs-tweet-handle{font-family:var(--font-mono);font-size:11px;color:rgba(200,217,228,.55);letter-spacing:.04em;}
.rs-tweet-date{margin-left:auto;font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:rgba(200,217,228,.45);}
.rs-tweet-body{font-family:var(--font-display);font-size:17px;line-height:1.45;color:#F4F8FB;letter-spacing:-.005em;margin:0;}
.rs-tweet-body em{color:rgba(200,217,228,.78);font-style:normal;}

/* ============== KEY STATS BAR ============== */
.rs-keystats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid rgba(200,217,228,.1);background:rgba(14,28,48,.3);margin:48px -64px;}
.rs-keystats .cell{padding:32px 24px;border-right:1px solid rgba(200,217,228,.08);}
.rs-keystats .cell:last-child{border-right:0;}
.rs-keystats .k{font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:rgba(200,217,228,.5);margin-bottom:12px;}
.rs-keystats .v{font-family:var(--font-display);font-size:32px;font-weight:500;letter-spacing:-.025em;color:#F4F8FB;line-height:1;}
.rs-keystats .v.amber{color:var(--amber-400);}
.rs-keystats .sub{font-family:var(--font-body);font-size:12px;color:rgba(232,241,246,.6);margin-top:8px;line-height:1.4;}
@media (max-width:900px){.rs-keystats{grid-template-columns:repeat(2,1fr);margin:32px 0;}.rs-keystats .cell:nth-child(2){border-right:0;}}

/* ============== EMBEDDED CHARTS (used in research detail pages) ============== */
.rs-chart{position:relative;margin:48px -64px;padding:32px;background:rgba(14,28,48,.5);border:1px solid rgba(200,217,228,.14);border-radius:6px;}
.rs-chart::before,.rs-chart::after{content:'';position:absolute;width:12px;height:12px;border:1px solid rgba(200,217,228,.4);}
.rs-chart::before{top:-1px;left:-1px;border-right:0;border-bottom:0;}
.rs-chart::after{bottom:-1px;right:-1px;border-left:0;border-top:0;}
.rs-chart-head{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:18px;margin-bottom:20px;border-bottom:1px solid rgba(200,217,228,.1);gap:16px;}
.rs-chart-fig{font-family:var(--font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--amber-400);margin-bottom:8px;}
.rs-chart-title{font-family:var(--font-display);font-size:17px;font-weight:500;color:#F4F8FB;letter-spacing:-.01em;}
.rs-chart-sub{font-family:var(--font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:rgba(200,217,228,.55);margin-top:6px;}
.rs-chart-source{font-family:var(--font-mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:rgba(200,217,228,.4);text-align:right;line-height:1.6;}
.rs-chart-canvas{position:relative;height:320px;}
.rs-chart-cap{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:rgba(200,217,228,.55);margin-top:18px;padding-top:14px;border-top:1px solid rgba(200,217,228,.08);line-height:1.5;}
@media (max-width:900px){.rs-chart{margin:32px 0;}.rs-body{padding:56px 24px;}}

/* ============== CTA ============== */
.rs-cta{padding:96px 72px;background:radial-gradient(ellipse 60% 50% at 80% 50%, rgba(245,161,74,.1) 0%, transparent 60%),#06090F;border-top:1px solid rgba(200,217,228,.08);}
.rs-cta-inner{max-width:880px;margin:0 auto;text-align:center;}
.rs-cta .num{font-family:var(--font-mono);font-size:11px;letter-spacing:.24em;color:var(--amber-400);text-transform:uppercase;margin-bottom:22px;}
.rs-cta h3{font-family:var(--font-display);font-size:clamp(32px,4.2vw,52px);font-weight:500;line-height:1.05;letter-spacing:-.025em;color:#F4F8FB;margin:0 0 22px;}
.rs-cta h3 em{font-style:normal;color:rgba(200,217,228,.7);font-weight:300;}
.rs-cta p{font-size:16px;line-height:1.6;color:rgba(232,241,246,.7);margin:0 0 36px;}
.rs-cta-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}
@media (max-width:900px){.rs-cta{padding:64px 32px;}}

/* ============== KICKER (sign-off line shared by all essays) ============== */
.rs-kicker{margin-top:64px;padding:24px 28px;background:rgba(74,115,154,.06);border:1px solid rgba(74,115,154,.18);border-radius:6px;font-family:var(--font-display);font-size:16px;line-height:1.6;color:rgba(232,241,246,.82);font-weight:400;letter-spacing:-.005em;}
.rs-kicker strong{color:#F4F8FB;font-weight:500;}

[data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1);}
[data-reveal].in{opacity:1;transform:none;}
