:root{
  --bg:#ffffff; --ink:#12211A; --sub:#6E7A70; --line:#E6EDE6;
  --green:#1CD176; --greenText:#12A35B; --card:#F7FAF8; --maxw:760px;
}
@media (prefers-color-scheme:dark){
  :root{ --bg:#0E1512; --ink:#EAF2EC; --sub:#93A099; --line:#22302A; --greenText:#3FDD8C; --card:#131C18; }
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  line-height:1.65; font-size:16px; -webkit-font-smoothing:antialiased;
}
a{color:var(--greenText); text-decoration:none}
a:hover{text-decoration:underline}

/* Header */
.top{
  display:flex; align-items:center; justify-content:space-between;
  max-width:var(--maxw); margin:0 auto; padding:20px 24px;
}
.brand{font-weight:800; font-size:22px; color:var(--ink); letter-spacing:-.5px}
.brand span{color:var(--green)}
.back{font-size:14px; font-weight:600}

/* Document */
.doc{max-width:var(--maxw); margin:0 auto; padding:8px 24px 64px}
.doc h1{font-size:30px; line-height:1.2; letter-spacing:-.5px; text-wrap:balance; margin:12px 0 8px}
.doc h2{font-size:20px; margin:38px 0 12px; padding-bottom:6px; border-bottom:2px solid var(--green)}
.doc h3{font-size:16px; margin:24px 0 8px}
.doc p{margin:12px 0}
.doc ul,.doc ol{margin:12px 0; padding-left:22px}
.doc li{margin:6px 0}
.doc strong{font-weight:700}
.doc hr{border:0; border-top:1px solid var(--line); margin:28px 0}
.doc blockquote{
  margin:16px 0; padding:12px 16px; background:var(--card);
  border-left:3px solid var(--green); border-radius:0 8px 8px 0; color:var(--sub);
}
.doc code{background:var(--card); padding:1px 6px; border-radius:6px; font-size:.9em}
.doc table{
  width:100%; border-collapse:collapse; margin:16px 0; font-size:14.5px;
  display:block; overflow-x:auto;
}
.doc th,.doc td{border:1px solid var(--line); padding:8px 12px; text-align:left; vertical-align:top}
.doc th{background:var(--card); font-weight:700}

/* Footer */
.foot{max-width:var(--maxw); margin:0 auto; padding:28px 24px 48px; border-top:1px solid var(--line); color:var(--sub); font-size:14px}
.foot nav{display:flex; flex-wrap:wrap; gap:18px; margin-bottom:12px}
.foot p{margin:0}

/* Home */
body.home{display:flex; min-height:100dvh; align-items:center; justify-content:center}
.hero{text-align:center; padding:32px 24px; max-width:520px}
.hero .logo{width:96px; height:96px; margin:0 auto 22px; background:var(--green); border-radius:28px; display:flex; align-items:center; justify-content:center; box-shadow:0 14px 40px rgba(28,209,118,.28)}
.hero h1{font-size:48px; font-weight:800; letter-spacing:-1px; margin:0}
.hero h1 span{color:var(--green)}
.hero .tag{font-size:18px; color:var(--ink); margin:14px 0 6px}
.hero .soon{color:var(--sub); margin:0 0 28px}
.hero .links{display:flex; flex-wrap:wrap; gap:18px; justify-content:center; font-size:14px}
