:root{
  --bg:#0B1020;
  --bg-2:#121A2E;
  --bg-3:#0E1626;
  --panel:#16203A;
  --signal:#21D4C0;
  --signal-d:#16A89A;
  --amber:#F2A23C;
  --line:#2A3550;
  --line-soft:#1E2840;
  --text:#E6EDF5;
  --text-dim:#9FB0C6;
  --header-h:64px;
  --container-pad:24px;
  --h2-inset:0px;
  --maxw:1180px;
  --radius:12px;
  --mono:"SFMono-Regular",Consolas,"Liberation Mono",Menlo,monospace;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  line-height:1.75;
  font-size:16px;
  padding-top:var(--header-h);
}
a{color:var(--signal);text-decoration:none;}
a:hover{color:var(--amber);}
img{max-width:100%;height:auto;}
h1,h2,h3,h4,h5,h6{line-height:1.35;font-weight:700;color:var(--text);}
h2{margin:2rem 0 1rem;padding-bottom:.4rem;border-bottom:1px solid var(--line-soft);}
h3{margin:1.6rem 0 .8rem;color:var(--signal);}

/* ===== Header / Nav ===== */
.rct-header{
  position:fixed;top:0;left:0;right:0;height:var(--header-h);
  background:rgba(11,16,32,.92);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);z-index:1000;
}
.rct-header-inner{
  max-width:var(--maxw);margin:0 auto;height:100%;
  display:flex;align-items:center;gap:16px;padding:0 var(--container-pad);
}
.rct-logo{font-size:18px;font-weight:800;color:var(--text);white-space:nowrap;}
.rct-logo:hover{color:var(--signal);}
.rct-nav-toggle{
  display:none;background:none;border:1px solid var(--line);color:var(--text);
  font-size:22px;width:42px;height:38px;border-radius:8px;cursor:pointer;margin-left:auto;
}
.rct-nav > ul{list-style:none;display:flex;gap:4px;margin:0;padding:0;align-items:center;}
.rct-nav-item{position:relative;}
.rct-nav-item>a,.rct-nav-link{
  display:block;padding:8px 14px;color:var(--text-dim);background:none;border:none;
  font-size:15px;cursor:pointer;border-radius:8px;font-family:inherit;
}
.rct-nav-item>a:hover,.rct-nav-link:hover{color:var(--text);background:var(--bg-2);}
.rct-has-sub{position:relative;}
.rct-nav-sub{
  display:none;position:absolute;top:100%;left:0;min-width:160px;
  background:var(--bg-2);border:1px solid var(--line);border-radius:10px;
  padding:6px;list-style:none;z-index:1001;box-shadow:0 10px 30px rgba(0,0,0,.4);
}
.rct-has-sub:hover .rct-nav-sub,.rct-has-sub.open .rct-nav-sub{display:block;}
.rct-nav-sub li a{display:block;padding:8px 12px;color:var(--text-dim);border-radius:6px;font-size:14px;white-space:nowrap;}
.rct-nav-sub li a:hover{background:var(--panel);color:var(--signal);}

/* ===== Container ===== */
.rct-container{max-width:var(--maxw);margin:0 auto;padding:28px var(--container-pad) 56px;}

/* ===== Breadcrumb ===== */
.rct-breadcrumb{font-size:13px;color:var(--text-dim);margin:0 0 18px;padding-left:var(--h2-inset);}
.rct-breadcrumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;}
.rct-breadcrumb li{display:inline-flex;align-items:center;}
.rct-breadcrumb li:not(:last-child)::after{content:"›";margin:0 6px;color:var(--line);}
.rct-breadcrumb a{color:var(--text-dim);}
.rct-breadcrumb a:hover{color:var(--signal);}
.rct-breadcrumb li[aria-current="page"]{color:var(--signal);}

/* ===== Detail layout ===== */
.rct-detail-layout{
  display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:40px;align-items:start;
}
.rct-content-main{padding:0;min-width:0;}
.rct-article,.rct-product{max-width:820px;}
.rct-h1{font-size:30px;margin:0 0 18px;letter-spacing:.2px;}
.rct-article-body{font-size:16px;}
.rct-article-body p{margin:0 0 1.1rem;}
.rct-article-body ul,.rct-article-body ol{padding-left:1.4rem;margin:0 0 1.1rem;}
.rct-article-body li{margin:.35rem 0;}
.rct-article-body blockquote{
  border-left:3px solid var(--signal);background:var(--bg-2);
  margin:1.2rem 0;padding:12px 16px;border-radius:0 8px 8px 0;color:var(--text-dim);
}
.rct-article-body strong{color:var(--text);}
.rct-summary{font-size:15px;color:var(--text-dim);}

/* keywords line */
.rct-article-body p strong:first-child{color:var(--signal);}

/* ===== Tables (M26: cover all tables) ===== */
.rct-content-main table,table.rct-spec{
  width:100%;border-collapse:collapse;margin:1.2rem 0;font-size:14.5px;
  border:1px solid var(--line);
}
.rct-content-main table th,.rct-content-main table td,
table.rct-spec th,table.rct-spec td{
  border:1px solid var(--line);padding:9px 12px;text-align:left;vertical-align:top;
}
.rct-content-main table th,table.rct-spec th{
  background:var(--signal-d);color:#04121A;font-weight:700;
}
.rct-content-main table tr:nth-child(even) td,table.rct-spec tr:nth-child(even) td{
  background:var(--bg-2);
}

/* ===== TOC panel ===== */
.rct-toc-aside{position:sticky;top:calc(var(--header-h) + 24px);max-height:calc(100vh - 100px);overflow-y:auto;}
.rct-toc-panel{
  background:var(--bg-2);border:1px solid var(--line);border-radius:10px;padding:10px 14px;
}
.rct-toc-summary{cursor:pointer;font-weight:700;color:var(--text);list-style:none;}
.rct-toc-summary::-webkit-details-marker{display:none;}
.rct-toc-summary::after{content:"▾";float:right;color:var(--signal);}
.rct-toc-panel:not([open]) .rct-toc-summary::after{content:"▸";}
.rct-toc-nav ol{list-style:none;margin:10px 0 0;padding:0;counter-reset:toc;}
.rct-toc-nav li{counter-increment:toc;margin:.3rem 0;font-size:13.5px;padding-left:1.4rem;position:relative;}
.rct-toc-nav li::before{content:counter(toc) ".";position:absolute;left:0;color:var(--signal);}
.rct-toc-nav a{color:var(--text-dim);}
.rct-toc-nav a:hover{color:var(--signal);}

/* ===== FAQ ===== */
.rct-faq-section{margin-top:2.4rem;}
.rct-faq-h{font-size:22px;}
.rct-faq{margin-top:1rem;border:1px solid var(--line);border-radius:10px;overflow:hidden;}
.rct-faq-item{border-top:1px solid var(--line);}
.rct-faq-item:first-child{border-top:none;}
.rct-faq-item summary{
  cursor:pointer;padding:14px 16px;font-weight:600;color:var(--text);background:var(--bg-2);list-style:none;
}
.rct-faq-item summary::-webkit-details-marker{display:none;}
.rct-faq-item summary::after{content:"+";float:right;color:var(--signal);font-size:18px;}
.rct-faq-item[open] summary::after{content:"−";}
.rct-faq-item>div{padding:12px 16px;color:var(--text-dim);font-size:15px;}

/* Related reading */
.rct-related{margin-top:2.2rem;border-top:1px solid var(--line-soft);padding-top:1.2rem;}
.rct-related h2{font-size:20px;border:none;}
.rct-related ul{list-style:none;padding:0;margin:0;}
.rct-related li{margin:.5rem 0;}
.rct-related a{color:var(--signal);}
.rct-related span{color:var(--text-dim);font-size:14px;margin-left:6px;}

/* ===== List layout ===== */
.rct-list-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:36px;align-items:start;}
.rct-cat-side{position:sticky;top:calc(var(--header-h) + 24px);}
.rct-cat-panel{background:var(--bg-2);border:1px solid var(--line);border-radius:10px;padding:10px 14px;}
.rct-cat-summary{cursor:pointer;font-weight:700;list-style:none;}
.rct-cat-summary::-webkit-details-marker{display:none;}
.rct-cat-summary::after{content:"▾";float:right;color:var(--signal);}
.rct-cat-panel:not([open]) .rct-cat-summary::after{content:"▸";}
.rct-category-list{list-style:none;margin:10px 0 0;padding:0;}
.rct-category-list li{margin:.2rem 0;}
.rct-category-list a{display:block;padding:8px 12px;border-radius:6px;color:var(--text-dim);}
.rct-category-list a:hover{background:var(--panel);color:var(--signal);}
.rct-category-list li.active a{background:var(--signal-d);color:#04121A;font-weight:700;}
.rct-cat-content{min-width:0;}
.rct-list-h1{font-size:28px;margin:0 0 .6rem;}
.rct-list-intro{color:var(--text-dim);margin:0 0 1.6rem;}

/* ===== Cards ===== */
.rct-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;}
.rct-card{
  display:block;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);
  padding:18px 18px 16px;transition:border-color .2s,transform .2s;color:var(--text);
}
.rct-card:hover{border-color:var(--signal);transform:translateY(-3px);color:var(--text);}
.rct-card-h{font-size:18px;margin:0 0 .5rem;color:var(--text);}
.rct-card:hover .rct-card-h{color:var(--signal);}
.rct-card-desc{color:var(--text-dim);font-size:14px;margin:0 0 .8rem;}
.rct-card-cat{display:inline-block;font-size:12px;color:var(--signal);border:1px solid var(--line);border-radius:999px;padding:2px 10px;}

/* ===== Page layout ===== */
.rct-page-layout{display:block;}
.rct-page-main{max-width:860px;margin:0 auto;}
.rct-page-article .rct-article-body{max-width:none;}

/* ===== Home ===== */
.rct-hero{
  background:linear-gradient(135deg,var(--bg-3),var(--panel));
  border:1px solid var(--line);border-radius:18px;padding:54px 40px;margin-bottom:36px;
}
.rct-hero-h{font-size:36px;margin:0 0 12px;background:linear-gradient(90deg,var(--signal),var(--amber));-webkit-background-clip:text;background-clip:text;color:transparent;}
.rct-hero-sub{font-size:17px;color:var(--text-dim);max-width:760px;margin:0 0 22px;}
.rct-hero-cta{display:flex;gap:14px;flex-wrap:wrap;}
.rct-btn{display:inline-block;padding:11px 22px;border-radius:10px;border:1px solid var(--line);color:var(--text);background:var(--bg-2);font-weight:600;}
.rct-btn:hover{color:var(--text);border-color:var(--signal);}
.rct-btn-primary{background:var(--signal-d);color:#04121A;border-color:var(--signal-d);}
.rct-btn-primary:hover{background:var(--signal);color:#04121A;}
.rct-section{margin-bottom:40px;}
.rct-section-h{font-size:24px;margin:0 0 18px;padding-bottom:.4rem;border-bottom:1px solid var(--line-soft);}
.rct-tagcloud{display:flex;flex-wrap:wrap;gap:10px;}
.rct-tag{background:var(--bg-2);border:1px solid var(--line);border-radius:999px;padding:7px 15px;font-size:14px;color:var(--text-dim);}
.rct-baseline{list-style:none;padding:0;margin:0;display:grid;gap:12px;}
.rct-baseline li{padding:14px 18px;background:var(--bg-2);border-left:3px solid var(--amber);border-radius:0 10px 10px 0;color:var(--text-dim);}
.rct-scenario-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;}
.rct-scenario{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--radius);padding:18px;}
.rct-scenario-h{font-size:17px;margin:0 0 .5rem;color:var(--signal);}
.rct-scenario-desc{color:var(--text-dim);font-size:14px;margin:0;}
.rct-contact-cta{background:var(--bg-2);border:1px solid var(--line);border-radius:16px;padding:32px;text-align:center;}
.rct-contact-cta p{max-width:680px;margin:0 auto 18px;color:var(--text-dim);}

/* ===== Archive ===== */
.rct-archive-group{margin-bottom:28px;}
.rct-archive-cat{font-size:20px;color:var(--signal);}
.rct-archive-list{list-style:none;padding:0;margin:0;}
.rct-archive-list li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line-soft);}
.rct-archive-meta{color:var(--text-dim);font-size:13px;white-space:nowrap;}

/* ===== Footer ===== */
.rct-footer{background:var(--bg-3);border-top:1px solid var(--line);margin-top:40px;}
.rct-footer-inner{max-width:var(--maxw);margin:0 auto;padding:36px var(--container-pad);}
.rct-footer-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.rct-footer-h{font-size:15px;color:var(--signal);margin:0 0 12px;}
.rct-footer-col ul{list-style:none;padding:0;margin:0;}
.rct-footer-col li{margin:.4rem 0;}
.rct-footer-col a{color:var(--text-dim);font-size:14px;}
.rct-footer-col a:hover{color:var(--signal);}
.rct-footer-bottom{margin-top:28px;padding-top:18px;border-top:1px solid var(--line-soft);color:var(--text-dim);font-size:13px;}

/* ===== Floating capsule ===== */
.rct-float{position:fixed;right:18px;top:50%;transform:translateY(-50%);z-index:1100;display:flex;flex-direction:column;gap:10px;}
.rct-float-btn{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
  width:54px;height:54px;border-radius:30px;border:1px solid var(--signal);
  background:linear-gradient(135deg,var(--signal-d),var(--amber));color:#04121A;
  font-size:11px;font-weight:700;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.4);
}
.rct-float-btn:hover{transform:scale(1.06);color:#04121A;}
.rct-float-ico{font-size:18px;line-height:1;}
.rct-card-pop{position:fixed;inset:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:1200;}
.rct-card-pop[hidden]{display:none;}
.rct-card-pop-inner{position:relative;background:var(--bg-2);padding:10px;border-radius:12px;}
.rct-card-img{display:block;border-radius:8px;width:300px;height:500px;object-fit:contain;}
.rct-card-close{position:absolute;top:-12px;right:-12px;width:32px;height:32px;border-radius:50%;border:none;background:var(--amber);color:#04121A;font-size:20px;cursor:pointer;}

/* ===== 404 ===== */
.rct-404{text-align:center;padding:60px 0;}

/* ===== Responsive (breakpoint 1024, matches skeleton_contract) ===== */
@media (max-width:1024px){
  .rct-nav-toggle{display:block;}
  .rct-nav{
    display:none;position:absolute;top:var(--header-h);left:0;right:0;
    background:var(--bg-2);border-bottom:1px solid var(--line);padding:10px var(--container-pad);
  }
  .rct-nav.open{display:block;}
  .rct-nav > ul{flex-direction:column;align-items:stretch;gap:2px;}
  .rct-nav-sub{position:static;box-shadow:none;border:none;background:var(--bg-3);margin-left:12px;}
  .rct-has-sub.open .rct-nav-sub{display:block;}
  .rct-detail-layout{grid-template-columns:1fr;}
  .rct-toc-aside{position:static;max-height:none;margin-top:24px;}
  .rct-list-layout{grid-template-columns:1fr;}
  .rct-cat-side{position:static;margin-bottom:20px;}
  .rct-hero{padding:38px 22px;}
  .rct-hero-h{font-size:28px;}
}
@media (max-width:560px){
  .rct-footer-cols{grid-template-columns:1fr;}
  .rct-container{padding:20px 16px 40px;}
  .rct-card-grid,.rct-scenario-grid{grid-template-columns:1fr;}
  .rct-float{right:10px;}
}
