:root{
  --bg:#0f1221;
  --card:#171a2f;
  --ink:#e8eaf6;
  --muted:#a7accb;
  --accent:#8ea8ff;
  --accent-2:#ffc36a;
  --ring: rgba(142,168,255,0.35);
  --shadow: 0 10px 30px rgba(0,0,0,0.35);
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font:16px/1.6 system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  color:var(--ink);
  background: radial-gradient(1200px 800px at 80% -10%, #25306a 0%, var(--bg) 60%);
  overflow-y:scroll;
}
a{color:var(--accent); text-decoration:none}
a:hover{text-decoration:underline}
.header{
  position:sticky; top:0; backdrop-filter: blur(8px);
  z-index:50; background:rgba(15,18,33,0.8); border-bottom:1px solid rgba(255,255,255,0.06);
}
.container{max-width:1100px; margin:0 auto; padding:16px 20px;}
.brand{display:flex; align-items:center; gap:12px;}
.brand .dot{width:10px; height:10px; border-radius:50%; background:linear-gradient(120deg,var(--accent),var(--accent-2)); box-shadow:0 0 0 6px var(--ring)}
h1{font-size:26px; margin:0}
main{display:grid; grid-template-columns: 260px 1fr; gap:24px; max-width:1100px; margin:0 auto; padding:24px 20px}
.nav{
  position:sticky; top:74px; align-self:start; padding:12px; border:1px solid rgba(255,255,255,0.07);
  background:linear-gradient(180deg, rgba(23,26,47,0.9), rgba(23,26,47,0.8)); border-radius:16px; box-shadow:var(--shadow);
}
.nav h3{margin:6px 10px 10px; font-size:14px; color:var(--muted); letter-spacing:.04em; text-transform:uppercase}
.nav a{
  display:block; padding:10px 12px; border-radius:10px; color:var(--ink);
}
.nav a.active{background:rgba(142,168,255,0.12); outline:1px solid rgba(142,168,255,0.25)}
.section{
  scroll-margin-top:80px;
  background:linear-gradient(180deg, rgba(23,26,47,0.85), rgba(23,26,47,0.7));
  border:1px solid rgba(255,255,255,0.07); border-radius:18px; padding:18px 18px 8px; margin-bottom:18px; box-shadow:var(--shadow);
}
.section h2{margin:6px 0 8px; font-size:22px}
.pill{
  display:inline-flex; gap:8px; align-items:center; font-size:12px; padding:6px 10px;
  background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.08); border-radius:999px; color:var(--muted)
}
.grid{display:grid; gap:10px}
.card{
  background:rgba(0,0,0,0.15); border:1px solid rgba(255,255,255,0.06); border-radius:14px; padding:12px;
}
.card ul{margin:6px 0 0 18px}
.footer{
  max-width:1100px; margin:30px auto 60px; padding:0 20px; color:var(--muted);
}
.buttons{display:flex; gap:10px; flex-wrap:wrap; margin:10px 0 0}
button, .btn{
  appearance:none; border:none; cursor:pointer; font:inherit; color:var(--ink);
  background:linear-gradient(120deg, rgba(142,168,255,0.15), rgba(255,195,106,0.15));
  border:1px solid rgba(255,255,255,0.12); padding:10px 14px; border-radius:12px; box-shadow:var(--shadow);
}
.btn-ghost{background:transparent}
kbd{border:1px solid rgba(255,255,255,0.18); padding:2px 6px; border-radius:6px; font-size:12px; color:var(--muted)}
hr{border:none; height:1px; background:rgba(255,255,255,0.08); margin:10px 0 16px}
.small{font-size:14px; color:var(--muted)}
.timeline-line{
  position:absolute; left:6px; top:0; bottom:0; width:2px; background:linear-gradient(180deg,var(--accent), transparent);
}
.marker{
  position:absolute; left:-3px; width:8px; height:8px; border-radius:50%; background:var(--accent-2); box-shadow:0 0 0 6px var(--ring);
}
.section .head{position:relative; padding-left:24px}
.section .head .marker{top:10px}
.chips{display:flex; flex-wrap:wrap; gap:8px; margin-top:8px}
.chips a{font-size:12px; padding:6px 10px; border-radius:999px; background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.08)}
.alert{border-left:3px solid var(--accent); padding-left:10px; color:var(--muted)}