/* Light default and NOIR dark - the same values as apps/web/src/app/globals.css.
   The theme attribute is restored from localStorage by the inline script in
   each page's <head>, so these pages follow the choice made on the site. */
:root {
  --bg: #ffffff;
  --s2: #f1f1f4;
  --s3: #e9e9ee;
  --border: #e3e3e9;
  --border-hi: #c8c8d1;
  --t1: #0a0a0c;
  --t2: #2b2b31;
  --t3: #6a6a74;
  --t4: #9b9ba4;
  color-scheme: light;
}
:root[data-theme="dark"] {
  --bg: #000000;
  --s2: #111214;
  --s3: #17181c;
  --border: #2a2c31;
  --border-hi: #3a3d44;
  --t1: #ffffff;
  --t2: #c9cdd3;
  --t3: #8b9098;
  --t4: #5c6168;
  color-scheme: dark;
}
* { box-sizing: border-box; }
body {
  margin: 0;
  padding: 0 20px 80px;
  background: var(--bg);
  color: var(--t2);
  font: 16px/1.65 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}
.wrap { max-width: 760px; margin: 0 auto; }
header { padding: 48px 0 24px; border-bottom: 1px solid var(--border); margin-bottom: 32px; }
.logo { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; color: var(--t1); }
.mark {
  width: 34px;
  height: 34px;
  border-radius: 10px;
  border: 1px solid var(--border-hi);
  background: var(--s3) url("/icon.png") center/cover no-repeat;
  filter: grayscale(1);
}
.logo span { font-weight: 700; font-size: 18px; }
h1 { font-size: 32px; line-height: 1.25; margin: 24px 0 8px; color: var(--t1); letter-spacing: -0.02em; }
h2 { font-size: 20px; margin: 36px 0 8px; color: var(--t1); }
.updated { color: var(--t3); font-size: 14px; margin: 0 0 8px; }
p, li { color: var(--t2); }
ul { padding-left: 20px; }
a { color: var(--t1); text-decoration-color: var(--border-hi); }
a:hover { text-decoration-color: var(--t1); }
footer { margin-top: 56px; padding-top: 20px; border-top: 1px solid var(--border); color: var(--t4); font-size: 14px; }
.note { background: var(--s2); border: 1px solid var(--border); border-radius: 16px; padding: 16px 18px; }
