*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
  --accent:     #0f766e;
  --accent-bg:  #ccfbf1;
  --accent-text:#0f766e;
  --success:    #15803d;
  --success-bg: #dcfce7;
  --text:       #1c1917;
  --muted:      #78716c;
  --subtle:     #a8a29e;
  --border:     #e7e5e4;
  --border-md:  #d6d3d1;
  --surface:    #fafaf9;
  --surface-2:  #f5f5f4;
  --white:      #ffffff;
  --radius:     8px;
  --radius-lg:  12px;
}
body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; color: var(--text); background: var(--white); line-height: 1.6; }
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }
nav { height: 56px; padding: 0 32px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--border); background: var(--white); position: sticky; top: 0; z-index: 100; }
.nav-logo { display: flex; align-items: center; gap: 10px; font-size: 15px; font-weight: 600; color: var(--text); text-decoration: none; }
.nav-dot { width: 9px; height: 9px; border-radius: 50%; background: var(--accent); }
.nav-links { display: flex; align-items: center; gap: 24px; }
.nav-links a { font-size: 14px; color: var(--muted); }
.nav-links a:hover { color: var(--text); text-decoration: none; }
.nav-btn { padding: 7px 16px; border-radius: var(--radius); border: 1px solid var(--border-md); background: var(--white); font-size: 13px; font-weight: 500; color: var(--text); cursor: pointer; }
.nav-btn:hover { background: var(--surface); }
.lang-switch { font-size: 13px; color: var(--subtle); white-space: nowrap; }
.lang-switch strong { color: var(--text); }
.lang-switch a { color: var(--muted); }
main { max-width: 720px; margin: 0 auto; padding: 56px 32px 80px; }
main h1 { font-size: 30px; font-weight: 700; margin-bottom: 8px; }
main .page-sub { font-size: 15px; color: var(--muted); margin-bottom: 40px; }
main h2 { font-size: 19px; font-weight: 700; margin: 36px 0 12px; }
main h3 { font-size: 15px; font-weight: 700; margin: 22px 0 8px; }
main p { font-size: 15px; color: var(--text); margin-bottom: 14px; }
main p.muted { color: var(--muted); font-size: 14px; }
main ul, main ol { margin: 0 0 16px 22px; font-size: 15px; }
main li { margin-bottom: 6px; }
main code { background: var(--surface-2); border: 1px solid var(--border); border-radius: 4px; padding: 1px 6px; font-size: 13px; }
.callout { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 18px 22px; margin: 20px 0; font-size: 14px; color: var(--muted); }
.callout strong { color: var(--text); }
.changelog-version { border-left: 3px solid var(--border-md); padding-left: 18px; margin-bottom: 32px; }
.changelog-version h2 { margin-top: 0; display: flex; align-items: baseline; gap: 10px; }
.changelog-date { font-size: 13px; font-weight: 400; color: var(--subtle); }
.tag-new { color: var(--success); font-weight: 600; }
.tag-fix { color: #b45309; font-weight: 600; }
.tag-sec { color: #b91c1c; font-weight: 600; }
.acc-form { background: var(--surface); border: 1px solid var(--border); border-radius: var(--radius-lg); padding: 24px; margin: 24px 0; }
.acc-form label { display: block; font-size: 13px; font-weight: 600; margin-bottom: 6px; }
.acc-form input { width: 100%; padding: 9px 12px; border: 1px solid var(--border-md); border-radius: var(--radius); font-size: 14px; margin-bottom: 14px; }
.acc-form button { padding: 9px 18px; border-radius: var(--radius); font-size: 14px; font-weight: 600; background: var(--text); color: var(--white); border: none; cursor: pointer; }
.acc-form button:hover { opacity: .85; }
#acc-result { font-size: 14px; margin-top: 12px; }
footer { background: var(--surface); border-top: 1px solid var(--border); padding: 28px 32px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px; }
.footer-left p { font-size: 13px; color: var(--muted); line-height: 1.9; }
.footer-right { display: flex; gap: 20px; }
.footer-right a { font-size: 13px; color: var(--subtle); }
.footer-right a:hover { color: var(--text); text-decoration: none; }
@media (max-width: 640px) {
  nav { padding: 0 16px; }
  .nav-links { gap: 14px; }
  main { padding: 40px 20px 60px; }
  footer { flex-direction: column; align-items: flex-start; padding: 20px; }
}
