/* Almaneo design tokens — single source of truth (SSOT). Prefix --al-. Light by default; dark only per-section via .al-dark */
:root{
  --al-ink:#23272B;
  --al-ink-soft:#5B6169;
  --al-ink-faint:#8B9199;
  --al-paper:#F7F7F5;
  --al-paper-deep:#ECECE9;
  --al-surface:#FFFFFF; /* card / white section surface */
  --al-line:#DBDBD7;
  --al-accent:#0F6E68;
  --al-accent-deep:#0A4F4B;

  --al-font-sans-kr:"Wanted Sans Variable","Wanted Sans","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
  --al-font-sans-en:Inter,"Wanted Sans Variable","Wanted Sans",sans-serif;
  --al-font-mono:"IBM Plex Mono","Wanted Sans Variable","Wanted Sans",ui-monospace,monospace; /* Hangul falls back to Wanted Sans */

  --al-radius:2px;
  --al-space-1:4px;
  --al-space-2:8px;
  --al-space-3:12px;
  --al-space-4:16px;
  --al-space-5:24px;
  --al-space-6:32px;
  --al-space-7:48px;
  --al-space-8:80px;

  --al-shadow-1:0 1px 2px rgba(35,39,43,.06);
  --al-shadow-2:0 4px 16px rgba(35,39,43,.08);
}
.al-dark{
  --al-ink:#F7F7F5;
  --al-ink-soft:#B8BDC3;
  --al-ink-faint:#8B9199;
  --al-paper:#23272B;
  --al-paper-deep:#1B1E21;
  --al-surface:#23272B;
  --al-line:#3A3F45;
  --al-accent:#3FA39B;
  --al-accent-deep:#0F6E68;
  background:var(--al-paper);color:var(--al-ink);
}
@layer base{
  html{background:var(--al-paper);color:var(--al-ink);font-family:var(--al-font-sans-kr);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;word-break:keep-all;overflow-wrap:anywhere}
  :lang(en) body{font-family:var(--al-font-sans-en)}
  body{margin:0}
  h1,h2,h3,h4{margin:0;font-weight:600;letter-spacing:-0.02em;line-height:1.2;text-wrap:pretty}
  h1{font-size:40px}h2{font-size:28px}h3{font-size:20px}h4{font-size:16px}
  p{margin:0}
  a{color:var(--al-accent);text-decoration:none}
  a:hover{color:var(--al-accent-deep);text-decoration:underline}
  code,kbd,samp,.al-num{font-family:var(--al-font-mono);font-variant-numeric:tabular-nums}
  hr{border:0;border-top:1px solid var(--al-line)}
  button,input,select,textarea{font:inherit;color:inherit}
}
