:root{
  --bg:#fafaf9;
  --bg-section:#f2f1ee;
  --ink:#0e0e0e;
  --ink-2:#333331;
  --ink-3:#6a6a67;
  --line:#dcdad5;
  --gold:#a8741a;
  --nav-bg:rgba(250,250,249,0.85);
  --card-bg:#ffffff;
  --easing:cubic-bezier(0.28, 0.11, 0.32, 1);
}
[data-theme="dark"]{
  --bg:#0e0e0e;
  --bg-section:#161614;
  --ink:#fafaf9;
  --ink-2:#c9c7c0;
  --ink-3:#8a8780;
  --line:#2a2a28;
  --gold:#d49640;
  --nav-bg:rgba(14,14,14,0.85);
  --card-bg:#1a1a18;
}

*{margin:0; padding:0; box-sizing:border-box;}
html{scroll-behavior:smooth; transition:background-color 0.3s var(--easing);}
body{
  background:var(--bg);
  color:var(--ink);
  font-family:'Inter', -apple-system, sans-serif;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  letter-spacing:-0.003em;
  transition:background-color 0.3s var(--easing), color 0.3s var(--easing);
}

nav{
  position:fixed; top:0; left:0; right:0; height:56px;
  background:var(--nav-bg);
  backdrop-filter:saturate(180%) blur(20px);
  -webkit-backdrop-filter:saturate(180%) blur(20px);
  z-index:9999;
  border-bottom:1px solid transparent;
  display:flex; align-items:center; justify-content:center;
  transition:border-color 0.3s var(--easing), background-color 0.3s var(--easing);
}
nav.scrolled{border-bottom-color:var(--line);}
.nav-inner{
  width:100%; max-width:1100px; padding:0 24px;
  display:flex; justify-content:space-between; align-items:center; height:100%;
}
.logo{
  font-weight:700; font-size:1.05rem; letter-spacing:-0.04em;
  color:var(--ink); text-decoration:none;
  display:flex; align-items:center; gap:0.4rem;
}
.logo-mark{
  width:22px; height:22px; background:var(--ink); color:var(--bg);
  border-radius:5px; display:flex; align-items:center; justify-content:center;
  font-size:0.62rem; font-weight:700;
}
.back-link{
  font-size:0.82rem; color:var(--ink-2); text-decoration:none;
  transition:color 0.2s var(--easing);
}
.back-link:hover{color:var(--ink);}

.theme-toggle{
  background:none; border:1px solid var(--line); border-radius:99px;
  width:32px; height:32px;
  display:flex; align-items:center; justify-content:center;
  cursor:pointer; color:var(--ink);
  transition:all 0.2s var(--easing);
}
.theme-toggle:hover{border-color:var(--ink); background:var(--bg-section);}
.theme-toggle svg{width:15px; height:15px;}
.theme-toggle .icon-sun{display:none;}
[data-theme="dark"] .theme-toggle .icon-sun{display:block;}
[data-theme="dark"] .theme-toggle .icon-moon{display:none;}

.nav-right{display:flex; align-items:center; gap:1.2rem;}

/* PAGE */
.page{
  max-width:780px;
  margin:0 auto;
  padding:8rem 24px 4rem;
}
.page-eyebrow{
  display:inline-flex; align-items:center; gap:0.5rem;
  font-size:0.8rem; color:var(--ink-3);
  margin-bottom:1.2rem; letter-spacing:0.02em;
}
.page-eyebrow::before{content:''; width:14px; height:1px; background:var(--ink-3);}

h1{
  font-weight:600;
  font-size:clamp(2.4rem, 5vw, 3.5rem);
  letter-spacing:-0.045em;
  line-height:1.05;
  margin-bottom:1.5rem;
}
h1 .italic{font-style:italic; font-weight:400; color:var(--gold);}

.page-lead{
  font-size:1.1rem; color:var(--ink-2);
  line-height:1.6; margin-bottom:3rem;
}

h2{
  font-weight:600; font-size:1.5rem;
  letter-spacing:-0.025em;
  margin-top:3rem; margin-bottom:1rem;
}
h3{
  font-weight:600; font-size:1.1rem;
  letter-spacing:-0.02em;
  margin-top:1.8rem; margin-bottom:0.6rem;
}

p{color:var(--ink-2); margin-bottom:1rem; line-height:1.65;}
strong{color:var(--ink); font-weight:600;}

a{
  color:var(--gold); text-decoration:none;
  border-bottom:1px solid transparent;
  transition:border-color 0.2s var(--easing);
}
a:hover{border-bottom-color:var(--gold);}

ul{margin:1rem 0; padding-left:1.5rem; color:var(--ink-2);}
ul li{margin-bottom:0.5rem; line-height:1.6;}

code{
  font-family:'SF Mono', Monaco, monospace;
  font-size:0.88em;
  background:var(--bg-section);
  padding:0.12rem 0.4rem;
  border-radius:4px;
  border:1px solid var(--line);
}

.info-card{
  background:var(--card-bg);
  border:1px solid var(--line);
  border-radius:14px;
  padding:1.8rem 2rem;
  margin:1.5rem 0;
}
.info-row{
  display:flex;
  justify-content:space-between;
  align-items:baseline;
  padding:0.55rem 0;
  border-bottom:1px solid var(--line);
  gap:1rem;
}
.info-row:last-child{border-bottom:none;}
.info-label{
  font-size:0.82rem; color:var(--ink-3);
  font-weight:500; letter-spacing:0.01em;
  flex-shrink:0;
}
.info-value{
  font-size:0.95rem; color:var(--ink);
  font-weight:500; text-align:right;
}

.last-update{
  margin-top:4rem;
  padding-top:1.5rem;
  border-top:1px solid var(--line);
  font-size:0.82rem;
  color:var(--ink-3);
}

footer{
  background:var(--bg);
  border-top:1px solid var(--line);
  padding:2.5rem 24px;
  text-align:center;
  font-size:0.78rem;
  color:var(--ink-3);
}
footer a{color:inherit; border:none;}
.footer-links{
  display:flex; gap:1.5rem; justify-content:center;
  margin-bottom:1rem; flex-wrap:wrap;
}

@media (max-width: 600px){
  .info-row{flex-direction:column; gap:0.2rem;}
  .info-value{text-align:left;}
}
