:root{
    --bg:#0a1c38;
    --bg-alt:#0d2242;
    --fg:#eef2f8;
    --fg-dim:#a9bbd6;
    --accent:#8fb8ff;
    --accent-dim:#5580b8;
    --rule:rgba(255,255,255,0.16);
  }
  *{box-sizing:border-box;}
  html{background:var(--bg);}
  body{
    margin:0;
    min-height:100vh;
    background:var(--bg);
    color:var(--fg);
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
    font-size:16px;
    line-height:1.5;
  }
  a{color:var(--accent);text-decoration:underline;}
  a:hover{color:#c3dbff;}
  a:focus-visible, button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}

  .wrap{max-width:960px;margin:0 auto;padding:0 24px 80px;}

  nav.topbar{
    padding:14px 24px;
    border-bottom:1px solid var(--rule);
    font-size:14px;
  }
  nav.topbar a{margin-right:6px;}

  header.hero{
    display:flex;
    align-items:baseline;
    gap:16px;
    flex-wrap:wrap;
    padding:36px 0 8px;
  }
  header.hero h1{
    font-family:Georgia,"Times New Roman",serif;
    font-style:italic;
    font-weight:700;
    font-size:52px;
    margin:0;
    color:var(--fg);
  }
  header.hero .tagline{
    font-family:Georgia,"Times New Roman",serif;
    font-style:italic;
    color:var(--fg-dim);
    font-size:18px;
  }
  .btn{
    display:inline-block;
    margin-left:auto;
    padding:8px 18px;
    border:1px solid var(--accent-dim);
    border-radius:4px;
    color:var(--fg);
    text-decoration:none;
    font-size:14px;
    letter-spacing:.02em;
  }
  .btn:hover{border-color:var(--accent);color:var(--accent);}

  .download{
    display:flex;
    align-items:center;
    gap:16px;
    flex-wrap:wrap;
    margin:8px 0 4px;
    padding:14px 16px;
    border:1px solid var(--accent-dim);
    border-radius:6px;
  }
  .btn-download{
    display:inline-block;
    padding:9px 18px;
    border:1px solid var(--accent);
    border-radius:4px;
    background:var(--accent);
    color:var(--bg);
    text-decoration:none;
    font-size:14px;
    letter-spacing:.02em;
    white-space:nowrap;
  }
  .btn-download:hover{background:transparent;color:var(--accent);}
  .download .meta{
    font-size:13px;
    color:var(--fg-dim);
    line-height:1.7;
    min-width:0;
  }
  .download .meta code{
    font-size:12px;
    overflow-wrap:anywhere;
  }

  .top-grid{
    display:flex;
    gap:32px;
    padding:24px 0 8px;
    flex-wrap:wrap;
  }
  .pages{min-width:150px;font-size:15px;}
  .pages p{margin:0 0 8px;color:var(--fg-dim);}
  .pages ul{list-style:none;margin:0;padding:0;}
  .pages li{margin:4px 0;}
  .pages li::before{content:"› ";color:var(--accent-dim);}

  .art{
    flex:1;
    min-width:280px;
    display:flex;
    justify-content:center;
  }
  .art pre{
    font-family:"JetBrains Mono","Fira Code",ui-monospace,Menlo,Consolas,monospace;
    font-size:13px;
    line-height:1.05;
    color:var(--accent);
    margin:0;
    white-space:pre;
  }

  section{padding:22px 0;border-top:1px solid var(--rule);}
  section:first-of-type{border-top:none;}
  section h2{
    font-size:17px;
    margin:0 0 10px;
    color:var(--fg);
  }
  section p{margin:0 0 10px;color:var(--fg);}
  section ul{margin:0;padding-left:20px;}
  section li{margin:4px 0;}

  .status-line{
    font-size:14px;
    letter-spacing:.02em;
    color:var(--fg-dim);
  }
  .status-line strong{color:var(--fg);}

  table.libc-compare{
    width:100%;
    border-collapse:collapse;
    font-size:14px;
    margin:4px 0 6px;
  }
  table.libc-compare th, table.libc-compare td{
    text-align:left;
    padding:6px 10px 6px 0;
    border-bottom:1px solid var(--rule);
  }
  table.libc-compare th{color:var(--fg-dim);font-weight:600;}
  table.libc-compare code{color:var(--accent);}

  pre.code{
    background:var(--bg-alt);
    border:1px solid var(--rule);
    padding:14px 16px;
    overflow-x:auto;
    font-family:"JetBrains Mono","Fira Code",ui-monospace,Menlo,Consolas,monospace;
    font-size:13px;
    color:var(--fg);
    line-height:1.5;
  }
  pre.code .c{color:var(--fg-dim);} /* comments */

  footer{
    padding:24px 0 0;
    border-top:1px solid var(--rule);
    font-size:13px;
    color:var(--fg-dim);
  }

  @media (max-width:600px){
    header.hero h1{font-size:40px;}
    .top-grid{flex-direction:column;}
    .art{justify-content:flex-start;}
    .art pre{font-size:11px;}
    table.libc-compare{font-size:13px;}
  }

/* releases-specific */
.release{
  border:1px solid var(--accent-dim);
  border-radius:6px;
  padding:18px 20px;
  margin:0 0 18px;
}
.release h3{
  margin:0 0 4px;
  font-size:19px;
}
.release .when{
  color:var(--fg-dim);
  font-size:13px;
  margin:0 0 12px;
}
.release ul{
  margin:0 0 14px;
  padding-left:18px;
}
.release li{
  margin:3px 0;
  font-size:14px;
}
.release .sha{
  font-size:12px;
  color:var(--fg-dim);
  word-break:break-all;
  margin-top:10px;
}
.latest{
  border-color:var(--accent);
}
.tag{
  display:inline-block;
  font-size:11px;
  padding:2px 8px;
  border-radius:3px;
  background:var(--accent);
  color:var(--bg);
  margin-left:8px;
  vertical-align:middle;
}
