  :root{
    --navy:#151A33; --gold:#E8BD3A; --gold-light:#FCE559; --gold-dark:#A06A0F; --tint:#F5F5FA; --ink:#1A1B3D; --sub:#54566e;
    --gold-gradient:linear-gradient(180deg, #F5DD6E 0%, #D9AE3E 36%, #C79424 46%, #FBF3DE 55%, #8A7530 66%, #5C4A20 100%);
  }
  *{box-sizing:border-box;margin:0;padding:0;}
  html{scroll-behavior:smooth;font-size:20px;}
  body{font-family:'Work Sans',sans-serif;color:var(--ink);background:#fff;}
  a{color:inherit;}
  img{max-width:100%;display:block;}

  header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:0 6vw;height:88px;background:var(--navy);}
  header .logo{height:38px;flex-shrink:0;}
  header .back{font-family:'Work Sans',sans-serif;font-weight:600;font-size:.85rem;color:#fff;text-decoration:none;padding:8px 16px;border-radius:20px;transition:background .15s ease;}
  header .back:hover{background:rgba(255,255,255,.12);}

  main{max-width:820px;margin:0 auto;padding:60px 6vw 100px;}
  main .updated{font-family:'Space Mono',monospace;font-size:.72rem;color:var(--sub);letter-spacing:.03em;margin-bottom:8px;}
  main h1{font-family:'Zilla Slab',serif;font-weight:700;font-size:2rem;color:var(--ink);margin-bottom:6px;}
  main h2{font-family:'Zilla Slab',serif;font-weight:600;font-size:1.3rem;color:var(--ink);margin:44px 0 14px;padding-top:14px;border-top:1px solid #E6E6F0;}
  main h2:first-of-type{border-top:none;padding-top:0;margin-top:36px;}
  main h3{font-family:'Work Sans',sans-serif;font-weight:700;font-size:.98rem;color:var(--ink);margin:22px 0 8px;}
  main p{font-family:'Karla',sans-serif;font-size:.95rem;line-height:1.7;color:var(--sub);margin-bottom:12px;}
  main p.emph{color:var(--ink);font-weight:600;}
  main p em{font-style:italic;color:var(--ink);}
  main ul{margin:0 0 14px 20px;}
  main li{font-family:'Karla',sans-serif;font-size:.95rem;line-height:1.7;color:var(--sub);margin-bottom:6px;}
  main a.link{color:var(--gold-dark);text-decoration:underline;}
  main table{width:100%;border-collapse:collapse;margin:14px 0 20px;font-family:'Karla',sans-serif;font-size:.88rem;}
  main th, main td{text-align:left;padding:10px 12px;border-bottom:1px solid #E6E6F0;color:var(--sub);}
  main th{font-family:'Work Sans',sans-serif;font-weight:700;color:var(--ink);}
  .toc{background:var(--tint);border-radius:10px;padding:22px 24px;margin:32px 0 8px;}
  .toc h2{margin:0 0 10px;border:none;padding:0;font-size:1.05rem;}
  .toc ol{margin:0 0 0 20px;}
  .toc li{font-family:'Work Sans',sans-serif;font-size:.88rem;line-height:2;}
  .toc a{color:var(--ink);text-decoration:none;}
  .toc a:hover{color:var(--gold-dark);text-decoration:underline;}

  footer{padding:36px 6vw;background:var(--navy);border-top:1px solid rgba(255,255,255,.08);text-align:center;}
  footer img{height:40px;margin:0 auto 10px;}
  footer .footer-social{display:flex;justify-content:center;gap:16px;margin-bottom:18px;}
  footer .footer-social a{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;transition:background .15s ease;}
  footer .footer-social a:hover{background:rgba(255,255,255,.18);}
  footer .footer-links{display:flex;justify-content:center;flex-wrap:wrap;gap:8px 22px;margin-bottom:16px;}
  footer .footer-links a{font-family:'Work Sans',sans-serif;font-size:.78rem;color:#c9cae0;text-decoration:none;}
  footer .footer-links a:hover{color:#fff;text-decoration:underline;}
  footer .f{font-family:'Space Mono',monospace;font-size:.66rem;color:#7274a0;letter-spacing:.04em;}

  @media (max-width:700px){
    header{padding:0 5vw;height:76px;}
    header .logo{height:30px;}
    main{padding:44px 5vw 80px;}
    main h1{font-size:1.5rem;}
    main h2{font-size:1.1rem;}
  }
