/* ═══════════════════════════════════════
   HFSP LABS — Global Design System
   ═══════════════════════════════════════ */
:root {
  --bg:    #08080C;
  --bg2:   #0F0F14;
  --bg3:   #14141A;
  --bg4:   #1A1A22;

  /* BTC = Bitcoin orange — mining, hashrate, yield, MinerOps */
  --btc:        #F7931A;
  --btc-dim:    rgba(247,147,26,0.08);
  --btc-border: rgba(247,147,26,0.22);
  --btc-glow:   rgba(247,147,26,0.28);

  /* RED = OpenClaw — AI, ClawDrop, agents */
  --red:        #E8372B;
  --red-dim:    rgba(232,55,43,0.08);
  --red-border: rgba(232,55,43,0.22);
  --red-glow:   rgba(232,55,43,0.28);

  /* GREEN = RWA/GRID — tokenization, STO, compliance */
  --green:        #C8FF00;
  --green-dim:    rgba(200,255,0,0.06);
  --green-border: rgba(200,255,0,0.18);
  --green-glow:   rgba(200,255,0,0.22);

  --white:   #FFFFFF;
  --grey:    #7A7A8C;
  --grey2:   #4A4A5C;
  --border:  rgba(255,255,255,0.06);
  --border2: rgba(255,255,255,0.11);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }

body {
  background: var(--bg);
  color: var(--white);
  font-family: 'DM Sans', sans-serif;
  font-weight: 300;
  overflow-x: hidden;
}

body::before {
  content: '';
  position: fixed; inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,0.013) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.013) 1px, transparent 1px);
  background-size: 64px 64px;
  pointer-events: none; z-index: 0;
}

/* ── Typography ── */
h1,h2,h3,h4 { font-family: 'Syne', sans-serif; font-weight: 800; letter-spacing: -0.02em; line-height: 1; }

/* ── Utils ── */
.z1 { position: relative; z-index: 1; }
.container { max-width: 1100px; margin: 0 auto; padding: 0 32px; }

.glass {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.07);
  backdrop-filter: blur(12px);
  box-shadow: 0 1px 0 rgba(255,255,255,0.05) inset, 0 8px 32px rgba(0,0,0,0.4);
}

/* ── Tags ── */
.tag { display:inline-flex;align-items:center;gap:8px;font-family:'DM Mono',monospace;font-size:10px;letter-spacing:0.12em;text-transform:uppercase;padding:5px 14px;border-radius:2px; }
.tag.green { color:var(--green);border:1px solid var(--green-border);background:var(--green-dim); }
.tag.red   { color:var(--red);border:1px solid var(--red-border);background:var(--red-dim); }
.tag.btc   { color:var(--btc);border:1px solid var(--btc-border);background:var(--btc-dim); }

/* ── Pulse dot ── */
.pdot { width:6px;height:6px;border-radius:50%;animation:pulse 2s infinite;flex-shrink:0; }
.pdot.green{background:var(--green);} .pdot.red{background:var(--red);} .pdot.btc{background:var(--btc);}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.3;transform:scale(.7);}}

/* ── Buttons ── */
.btn{display:inline-flex;align-items:center;gap:8px;font-family:'DM Mono',monospace;font-size:11px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;padding:13px 28px;border:none;cursor:pointer;text-decoration:none;transition:all 0.2s;border-radius:2px;}
.btn-green{background:var(--green);color:#000;}
.btn-green:hover{background:#d4ff33;transform:translateY(-1px);}
.btn-red{background:var(--red);color:#fff;box-shadow:0 0 24px var(--red-glow);}
.btn-red:hover{background:#d42e22;transform:translateY(-1px);box-shadow:0 0 40px var(--red-glow);}
.btn-btc{background:var(--btc);color:#000;}
.btn-btc:hover{background:#e8851a;transform:translateY(-1px);}
.btn-ghost{background:transparent;color:var(--white);border:1px solid rgba(255,255,255,0.14);}
.btn-ghost:hover{background:rgba(255,255,255,0.05);border-color:rgba(255,255,255,0.25);}

/* ── Section labels ── */
.slabel{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:0.15em;text-transform:uppercase;display:block;margin-bottom:16px;}
.slabel.green{color:var(--green);} .slabel.red{color:var(--red);} .slabel.btc{color:var(--btc);}

/* ── Scroll reveal ── */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease;}
.reveal.in{opacity:1;transform:none;}
.d1{transition-delay:.1s;}.d2{transition-delay:.2s;}.d3{transition-delay:.3s;}
.d4{transition-delay:.4s;}.d5{transition-delay:.5s;}.d6{transition-delay:.6s;}

/* ── BlurText ── */
.blur-text span{display:inline-block;opacity:0;filter:blur(12px);transform:translateY(16px);animation:blurIn .6s ease forwards;}
@keyframes blurIn{to{opacity:1;filter:blur(0);transform:none;}}

/* ── Marquee ── */
@keyframes marqueeL{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}
@keyframes marqueeR{0%{transform:translateX(-50%);}100%{transform:translateX(0);}}

/* ── NAV ── */
.nav-main{position:fixed;top:0;left:0;right:0;z-index:200;border-bottom:1px solid var(--border);background:rgba(8,8,12,.88);backdrop-filter:blur(20px);transition:background .3s;}
.nav-inner{max-width:1100px;margin:0 auto;padding:0 32px;height:60px;display:flex;align-items:center;justify-content:space-between;}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;}
.nav-grid-icon{width:26px;height:26px;border:1px solid rgba(200,255,0,.35);display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:5px;}
.nav-grid-icon span{background:var(--green);display:block;}
.nav-logo-text{font-family:'Syne',sans-serif;font-weight:700;font-size:13px;letter-spacing:.06em;color:var(--white);}
.nav-links{display:flex;gap:28px;list-style:none;}
.nav-links a{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--grey);text-decoration:none;transition:color .2s;}
.nav-links a:hover,.nav-links a.active{color:var(--white);}

/* ── FOOTER ── */
.footer-main{position:relative;z-index:1;border-top:1px solid var(--border);padding:60px 0 32px;}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px;}
.footer-ct{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--green);margin-bottom:16px;display:block;}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:10px;}
.footer-col a{font-size:12px;color:var(--grey);text-decoration:none;transition:color .2s;}
.footer-col a:hover{color:var(--white);}
.footer-bot{border-top:1px solid var(--border);padding-top:24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;}
.footer-bot span{font-family:'DM Mono',monospace;font-size:10px;color:var(--grey2);}
.status-pill{display:inline-flex;align-items:center;gap:6px;font-family:'DM Mono',monospace;font-size:10px;color:var(--green);}
.status-pill::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--green);animation:pulse 2s infinite;display:inline-block;}

/* ── Partners marquee ── */
.partners{border-top:1px solid var(--border);border-bottom:1px solid var(--border);overflow:hidden;position:relative;z-index:1;}
.partner-track{display:flex;animation:marqueeL 22s linear infinite;width:max-content;}
.partner-item{display:flex;align-items:center;gap:10px;padding:13px 32px;border-right:1px solid var(--border);white-space:nowrap;flex-shrink:0;}
.partner-item span{font-family:'DM Mono',monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--grey);}
.p-dot{width:4px;height:4px;background:var(--green);opacity:.5;border-radius:50%;flex-shrink:0;}

/* ── Terminal ── */
.terminal{border:1px solid var(--border);border-radius:2px;background:var(--bg2);overflow:hidden;}
.t-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--bg3);}
.tdot{width:10px;height:10px;border-radius:50%;}
.tdot.r{background:#FF5F57;}.tdot.y{background:#FEBC2E;}.tdot.g{background:#28C840;}
.t-title{font-family:'DM Mono',monospace;font-size:10px;color:var(--grey);margin-left:auto;letter-spacing:.08em;}
.t-body{padding:24px;}
.t-row{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.03);opacity:0;animation:rowIn .4s forwards;}
.t-row:last-child{border-bottom:none;}
@keyframes rowIn{from{opacity:0;transform:translateX(-8px);}to{opacity:1;transform:none;}}
.t-key{font-family:'DM Mono',monospace;font-size:11px;color:var(--grey);}
.t-val{font-family:'DM Mono',monospace;font-size:11px;font-weight:500;}
.t-val.green{color:var(--green);}.t-val.white{color:var(--white);}.t-val.btc{color:var(--btc);}.t-val.red{color:var(--red);}
.t-cursor{display:inline-block;width:8px;height:13px;background:var(--green);margin-top:14px;animation:cur 1s step-end infinite;}
@keyframes cur{0%,100%{opacity:1;}50%{opacity:0;}}

/* ── Dual scroll testimonials ── */
.scroll-row{overflow:hidden;margin-bottom:14px;}
.scroll-row:last-child{margin-bottom:0;}
.scroll-track{display:flex;gap:14px;width:max-content;}
.scroll-track.left{animation:marqueeL 38s linear infinite;}
.scroll-track.right{animation:marqueeR 38s linear infinite;}
.sc-card{flex-shrink:0;width:290px;padding:18px 20px;background:var(--bg3);border:1px solid var(--border);border-radius:2px;}
.sc-top{display:flex;align-items:center;gap:8px;margin-bottom:10px;}
.sc-av{width:26px;height:26px;border-radius:50%;background:var(--bg4);display:flex;align-items:center;justify-content:center;font-family:'DM Mono',monospace;font-size:9px;color:var(--grey);flex-shrink:0;}
.sc-handle{font-family:'DM Mono',monospace;font-size:10px;color:var(--grey);}
.sc-x{margin-left:auto;font-size:10px;color:var(--grey2);}
.sc-card p{font-size:12px;color:rgba(255,255,255,.65);line-height:1.6;font-style:italic;}
.scroll-mask{-webkit-mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,black 8%,black 92%,transparent 100%);}

/* ── Product cards ── */
.product-card{padding:36px;background:var(--bg3);border:1px solid var(--border);border-radius:2px;position:relative;overflow:hidden;transition:all .25s;text-decoration:none;display:block;cursor:pointer;}
.product-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;opacity:0;transition:opacity .3s;}
.product-card.grn-c::before{background:var(--green);}
.product-card.red-c::before{background:var(--red);}
.product-card.btc-c::before{background:var(--btc);}
.product-card:hover{background:var(--bg4);border-color:var(--border2);}
.product-card:hover::before{opacity:1;}
.product-card::after{content:'→';position:absolute;bottom:32px;right:32px;font-size:18px;color:var(--grey2);transition:all .2s;}
.product-card:hover::after{color:var(--white);transform:translate(4px,-2px);}

/* ── Metric strip ── */
.metric-strip{width:100%;overflow:hidden;border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.metric-track{display:flex;animation:marqueeL 32s linear infinite;width:max-content;}
.metric-item{display:flex;align-items:center;gap:14px;padding:16px 36px;border-right:1px solid var(--border);white-space:nowrap;flex-shrink:0;}
.m-val{font-family:'DM Mono',monospace;font-size:20px;font-weight:500;}
.m-val.green{color:var(--green);}.m-val.btc{color:var(--btc);}.m-val.red{color:var(--red);}
.m-info{display:flex;flex-direction:column;gap:2px;}
.m-lbl{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--grey);}
.m-src{font-family:'DM Mono',monospace;font-size:8px;letter-spacing:.1em;text-transform:uppercase;color:var(--grey2);}

/* ── Stats row ── */
.stats-row{display:flex;border:1px solid var(--border);width:fit-content;margin:0 auto;border-radius:2px;overflow:hidden;}
.stat-item{padding:18px 40px;text-align:center;border-right:1px solid var(--border);}
.stat-item:last-child{border-right:none;}
.stat-val{font-family:'DM Mono',monospace;font-size:22px;font-weight:500;display:block;margin-bottom:4px;}
.stat-val.green{color:var(--green);}.stat-val.btc{color:var(--btc);}.stat-val.red{color:var(--red);}
.stat-lbl{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--grey);}

/* ── Thesis cards ── */
.thesis-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border);border-radius:2px;overflow:hidden;margin-top:48px;}
.thesis-card{padding:40px 32px;border-right:1px solid var(--border);transition:background .2s;position:relative;overflow:hidden;}
.thesis-card:last-child{border-right:none;}
.thesis-card:hover{background:rgba(255,255,255,.02);}
.thesis-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;opacity:0;transition:opacity .3s;}
.thesis-card.btc-c::before{background:var(--btc);}
.thesis-card.red-c::before{background:var(--red);}
.thesis-card.grn-c::before{background:var(--green);}
.thesis-card:hover::before{opacity:1;}
.thesis-num{font-family:'DM Mono',monospace;font-size:11px;letter-spacing:.1em;color:var(--grey2);margin-bottom:20px;display:block;}
.thesis-card h3{font-size:20px;margin-bottom:14px;line-height:1.2;}
.thesis-card p{font-size:13px;color:var(--grey);line-height:1.75;}
.thesis-big{font-family:'Syne',sans-serif;font-weight:800;font-size:38px;display:block;margin-top:20px;}
.thesis-big.btc{color:var(--btc);}.thesis-big.red{color:var(--red);}.thesis-big.grn{color:var(--green);}

/* ── FAQ Accordion ── */
.faq-item{border-bottom:1px solid var(--border);}
.faq-q{display:flex;justify-content:space-between;align-items:center;padding:20px 0;cursor:pointer;font-family:'Syne',sans-serif;font-size:15px;font-weight:700;user-select:none;transition:color .2s;}
.faq-q:hover{color:var(--green);}
.faq-icon{font-size:20px;color:var(--red);transition:transform .3s;flex-shrink:0;}
.faq-item.open .faq-icon{transform:rotate(45deg);}
.faq-a{display:none;padding:0 0 20px;font-size:14px;color:var(--grey);line-height:1.75;}
.faq-item.open .faq-a{display:block;}

/* ── Infra nodes ── */
.infra-nodes{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.infra-node{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--bg3);border:1px solid var(--border);border-radius:2px;transition:all .2s;}
.infra-node:hover{border-color:var(--border2);background:var(--bg4);}
.node-l{display:flex;align-items:center;gap:12px;}
.node-dot{width:8px;height:8px;border-radius:50%;animation:pulse 2s infinite;flex-shrink:0;}
.node-dot.green{background:var(--green);}.node-dot.btc{background:var(--btc);}
.node-name{font-family:'DM Mono',monospace;font-size:12px;color:var(--white);}
.node-sub{font-family:'DM Mono',monospace;font-size:9px;color:var(--grey);display:block;margin-top:2px;}
.node-status{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:.1em;text-transform:uppercase;}
.node-status.green{color:var(--green);}.node-status.btc{color:var(--btc);}

/* ── CTA section ── */
.cta-section{padding:100px 0;position:relative;overflow:hidden;}
.cta-section::before{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(-45deg,transparent,transparent 40px,rgba(232,55,43,.012) 40px,rgba(232,55,43,.012) 41px);animation:threadsDrift 20s linear infinite;}
@keyframes threadsDrift{0%{background-position:0 0;}100%{background-position:80px 80px;}}
.cta-box{max-width:800px;margin:0 auto;padding:80px 64px;text-align:center;background:var(--bg2);border:1px solid var(--red-border);border-radius:2px;position:relative;overflow:hidden;box-shadow:0 0 100px rgba(232,55,43,.06);z-index:1;}
.cta-box::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--red),transparent);}
.cta-box::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(200,255,0,.3),transparent);}
.cta-box h2{font-size:clamp(32px,5vw,56px);margin:20px 0 16px;}
.cta-box p{font-size:14px;color:var(--grey);max-width:420px;margin:0 auto 36px;line-height:1.75;}
.cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-bottom:24px;}
.cta-note{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--grey2);}

/* ── Roadmap ── */
.roadmap-list{border:1px solid var(--border);border-radius:2px;}
.rm-item{display:grid;grid-template-columns:150px 1fr;border-bottom:1px solid var(--border);transition:background .2s;}
.rm-item:last-child{border-bottom:none;}
.rm-item:hover{background:var(--green-dim);}
.rm-date{padding:28px 24px;border-right:1px solid var(--border);font-family:'DM Mono',monospace;font-size:11px;color:var(--grey);display:flex;align-items:flex-start;gap:10px;flex-shrink:0;}
.rm-dot{width:8px;height:8px;border-radius:50%;border:1px solid var(--green);flex-shrink:0;margin-top:2px;}
.rm-dot.filled{background:var(--green);}
.rm-content{padding:28px 32px;}
.rm-milestone{font-family:'Syne',sans-serif;font-size:15px;font-weight:700;margin-bottom:6px;}
.rm-desc{font-size:13px;color:var(--grey);line-height:1.65;}

/* ── Tier cards ── */
.tiers-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--green-border);border:1px solid var(--green-border);}
.tier-card{background:var(--bg2);padding:32px 24px;display:flex;flex-direction:column;transition:background .2s;position:relative;}
.tier-card:hover{background:#0c0c0c;}
.tier-card.featured{background:#080d00;}
.tier-card.featured::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--green);}
.tier-name{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--green);margin-bottom:12px;}
.tier-amount{font-family:'DM Mono',monospace;font-size:28px;font-weight:500;color:var(--white);line-height:1;margin-bottom:2px;}
.tier-unit{font-family:'DM Mono',monospace;font-size:11px;color:var(--grey);margin-bottom:24px;}
.tier-divider{height:1px;background:var(--green-border);margin-bottom:20px;}
.tier-perks{list-style:none;display:flex;flex-direction:column;gap:10px;flex:1;}
.tier-perks li{font-size:12px;color:var(--grey);padding-left:14px;position:relative;line-height:1.5;}
.tier-perks li::before{content:'→';position:absolute;left:0;color:var(--green);font-size:10px;top:1px;}
.tier-badge{margin-top:20px;font-family:'DM Mono',monospace;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--grey);padding-top:14px;border-top:1px solid var(--green-border);}
.tier-card.featured .tier-badge{color:var(--green);}

/* ── Scenario cards ── */
.scenario-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:48px;}
.scenario-card{padding:32px;background:var(--bg2);border:1px solid var(--border);border-radius:2px;}
.scenario-card.featured{background:rgba(200,255,0,.02);border-color:var(--green-border);}
.scenario-card.featured::before{content:'';display:block;height:2px;background:var(--green);margin:-32px -32px 28px;}
.sc-badge{display:inline-block;font-family:'DM Mono',monospace;font-size:9px;padding:3px 8px;border-radius:2px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px;}
.sc-badge.green{background:var(--green-dim);color:var(--green);border:1px solid var(--green-border);}
.sc-badge.grey{background:var(--bg3);color:var(--grey);border:1px solid var(--border);}
.sc-btc-price{font-family:'DM Mono',monospace;font-size:11px;color:var(--grey);margin-bottom:16px;}
.sc-btc-val{color:var(--btc);}
.sc-yield{font-family:'DM Mono',monospace;font-size:32px;font-weight:500;color:var(--white);display:block;margin-bottom:4px;}
.sc-yield.green{color:var(--green);}
.sc-yield-lbl{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--grey);}

/* ── Data rows (deal structure) ── */
.data-row{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid rgba(255,255,255,.03);font-family:'DM Mono',monospace;font-size:12px;}
.data-row:last-child{border-bottom:none;}
.data-key{color:var(--grey);}
.data-val{color:var(--white);text-align:right;}
.data-val.green{color:var(--green);}.data-val.btc{color:var(--btc);}.data-val.red{color:var(--red);}

/* ── MinerOps specific ── */
.mo-panel{background:var(--bg2);border:1px solid var(--border);border-radius:2px;padding:24px;margin-bottom:20px;}
.mo-panel-title{font-family:'DM Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--btc);margin-bottom:20px;display:flex;align-items:center;gap:8px;}
.mo-input{background:var(--bg3);border:1px solid var(--border);color:var(--btc);font-family:'DM Mono',monospace;font-size:13px;padding:8px 12px;border-radius:2px;outline:none;transition:border .2s;width:130px;text-align:right;}
.mo-input:focus{border-color:var(--btc);}
.mo-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border);gap:12px;}
.mo-row:last-child{border-bottom:none;}
.mo-label{font-family:'DM Sans',sans-serif;font-size:13px;color:var(--grey);}
.mo-unit{font-family:'DM Mono',monospace;font-size:10px;color:var(--grey2);}
.mo-result{font-family:'DM Mono',monospace;font-size:22px;font-weight:500;}
.mo-result.btc{color:var(--btc);}.mo-result.green{color:var(--green);}.mo-result.red{color:var(--red);}

/* ── Guide ── */
.guide-layout{display:grid;grid-template-columns:260px 1fr;min-height:calc(100vh - 60px);}
.guide-sidebar{border-right:1px solid var(--border);padding:32px 0;position:sticky;top:60px;height:calc(100vh - 60px);overflow-y:auto;}
.guide-main{padding:48px 56px 80px;max-width:900px;}
.sidebar-link{display:flex;align-items:flex-start;gap:10px;padding:8px 24px;text-decoration:none;color:#777;font-size:13px;transition:all .15s;line-height:1.4;}
.sidebar-link:hover{color:var(--white);background:var(--bg3);}
.sidebar-link.active{color:var(--green);background:rgba(200,255,0,.05);border-right:2px solid var(--green);}
.ch-num{font-family:'DM Mono',monospace;font-size:10px;color:var(--grey2);min-width:22px;padding-top:1px;}
.sidebar-heading{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--grey2);padding:0 24px 10px;border-bottom:1px solid var(--border);margin-bottom:8px;}
.chapter-card{border:1px solid var(--border);border-radius:2px;margin-bottom:16px;overflow:hidden;transition:border-color .2s;}
.chapter-card:hover{border-color:var(--border2);}
.chapter-card.expanded{border-color:rgba(200,255,0,.2);}
.chapter-header{display:flex;align-items:flex-start;gap:20px;padding:20px 24px;cursor:pointer;background:var(--bg2);transition:background .15s;user-select:none;}
.chapter-header:hover{background:var(--bg3);}
.ch-index{font-family:'DM Mono',monospace;font-size:11px;color:var(--green);min-width:30px;padding-top:3px;}
.ch-info{flex:1;}
.ch-title{font-family:'Syne',sans-serif;font-weight:600;font-size:15px;margin-bottom:4px;line-height:1.3;}
.ch-outcome{font-size:12px;color:#777;}
.ch-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;}
.ch-tag{font-family:'DM Mono',monospace;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--grey);background:var(--bg);border:1px solid var(--border);padding:2px 8px;border-radius:2px;}
.ch-toggle{color:var(--grey);font-size:18px;line-height:1;padding-top:2px;transition:transform .2s;}
.chapter-card.expanded .ch-toggle{transform:rotate(45deg);color:var(--green);}
.chapter-body{display:none;padding:0 24px 24px 74px;background:var(--bg);border-top:1px solid var(--border);}
.chapter-card.expanded .chapter-body{display:block;}
.ch-x-link{display:inline-flex;align-items:center;gap:5px;font-family:'DM Mono',monospace;font-size:10px;color:var(--grey);text-decoration:none;border:1px solid var(--border);padding:3px 9px 3px 7px;border-radius:2px;margin-top:10px;transition:all .15s;width:fit-content;}
.ch-x-link:hover{color:var(--green);border-color:var(--green-border);background:var(--green-dim);}

/* ── ClawDrop chat UI ── */
.chat-ui{border:1px solid var(--border);border-radius:2px;background:var(--bg2);overflow:hidden;max-width:480px;margin:0 auto;}
.chat-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--bg3);}
.chat-area{padding:20px;display:flex;flex-direction:column;gap:12px;}
.chat-msg{max-width:85%;border-radius:2px;padding:12px 16px;font-size:13px;line-height:1.6;}
.chat-msg.bot{background:var(--bg3);border:1px solid var(--border);align-self:flex-start;}
.chat-msg.user{background:var(--red-dim);border:1px solid var(--red-border);align-self:flex-end;}
.chat-terminal{background:var(--bg);border:1px solid var(--border);border-radius:2px;padding:12px;font-family:'DM Mono',monospace;font-size:11px;}
.chat-terminal .ct-line{color:var(--green);margin-bottom:4px;}
.chat-terminal .ct-line:last-child{margin-bottom:0;}
.chat-input-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;border-top:1px solid var(--border);background:var(--bg3);}
.chat-input-placeholder{font-family:'DM Mono',monospace;font-size:11px;color:var(--grey2);flex:1;}
.chat-send{width:28px;height:28px;background:var(--red);border:none;border-radius:2px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#fff;font-size:14px;}

/* ── Responsive ── */
@media(max-width:1024px){
  .guide-layout{grid-template-columns:1fr;}
  .guide-sidebar{display:none;}
  .tiers-grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:900px){
  .thesis-grid,.infra-nodes,.scenario-cards{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .container{padding:0 20px;}
  .cta-box{padding:48px 24px;}
  .stats-row{flex-direction:column;width:100%;}
  .stat-item{border-right:none;border-bottom:1px solid var(--border);}
  .stat-item:last-child{border-bottom:none;}
}
@media(max-width:768px){
  .nav-links{display:none;}
  .tiers-grid{grid-template-columns:1fr;}
  .rm-item{grid-template-columns:1fr;}
  .rm-date{border-right:none;border-bottom:1px solid var(--border);}
}
