:root { --bg:#fffaf3; --fg:#2b2622; --muted:#6f655c; --line:#eadfce; --accent:#e07a3f; }
@media (prefers-color-scheme: dark) { :root { --bg:#1d1a17; --fg:#f3ece4; --muted:#b5a99c; --line:#3a332c; --accent:#f0955c; } }
* { box-sizing:border-box; }
body { margin:0; background:var(--bg); color:var(--fg); font:16px/1.65 -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "PingFang SC", sans-serif; }
main { max-width:760px; margin:0 auto; padding:40px 16px 80px; }
h1 { font-size:1.9rem; margin:0 0 4px; }
h2 { font-size:1.25rem; margin:40px 0 8px; padding-top:16px; border-top:1px solid var(--line); }
h3 { font-size:1.05rem; margin:22px 0 4px; }
p, li { color:var(--fg); }
.muted { color:var(--muted); font-size:.92rem; }
nav { display:flex; gap:14px; flex-wrap:wrap; margin:12px 0 8px; }
a { color:var(--accent); }
ul { padding-left:1.2em; }
/* intro pages */
:root { --card:#fffdf9; --sage:#e2ecde; --lav:#e9e4f2; --apri:#f6e6da; --pow:#e0eaf3; --ivory:#f1ece4; }
@media (prefers-color-scheme: dark) { :root { --card:#26211d; --sage:#26302a; --lav:#2c2836; --apri:#352a22; --pow:#232c35; --ivory:#2b2621; } }
.lead { font-size:1.15rem; color:var(--muted); margin-top:4px; }
.chars { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:16px; margin-top:20px; }
.char { border-radius:14px; padding:18px 18px 20px; display:grid; gap:6px; justify-items:center; text-align:center; min-width:0; }
.char img { height:180px; width:auto; max-width:100%; }
.char h3 { margin:6px 0 0; font-size:1.2rem; }
.char .tag { color:var(--accent); font-weight:600; font-size:.95rem; }
.char p { margin:0; font-size:.95rem; }
.char .ko { color:var(--muted); font-size:.9rem; }
.c-mongsil{background:var(--ivory)} .c-saebom{background:var(--sage)} .c-daljam{background:var(--lav)} .c-morang{background:var(--apri)} .c-sobok{background:var(--pow)}
.features { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:14px; margin-top:16px; }
.feature { background:var(--card); border:1px solid var(--line); border-radius:12px; padding:16px; min-width:0; }
.feature h3 { margin:0 0 4px; font-size:1.05rem; }
.feature p { margin:0; color:var(--muted); font-size:.95rem; }
.video { width:100%; aspect-ratio:16/9; border-radius:12px; background:var(--card); border:1px solid var(--line); display:block; }
.status { display:inline-block; font-size:.85rem; font-weight:600; color:var(--accent); border:1px solid var(--accent); border-radius:999px; padding:2px 10px; }
.chars.small { grid-template-columns:repeat(auto-fit,minmax(120px,1fr)); gap:10px; }
.chars.small .char { padding:12px 8px 14px; }
.chars.small img { height:120px; }
.chars.small h3 { font-size:1rem; }
.chars.small .tag { font-size:.8rem; }
.char { align-content:start; }
/* Shared brand styling for the existing legal/support documents; their HTML text is untouched. */
@font-face{font-family:Jua;src:url('/fonts/Jua-Regular.ttf') format('truetype');font-display:swap}
:root{--bg:#f5f0e6;--fg:#293d33;--muted:#647267;--line:#d9ddcf;--accent:#8b5435;--card:#fffcf6}
body{background:var(--bg);color:var(--fg)}main{max-width:850px;padding-top:55px;padding-bottom:90px}h1,h2{font-family:Jua,sans-serif;font-weight:400}h1{font-size:2.4rem}h2{font-size:1.5rem}nav{padding:16px 0;border-bottom:1px solid var(--line);gap:18px}section{scroll-margin-top:25px}p,li{line-height:1.85}a{text-underline-offset:4px}a:focus-visible{outline:2px solid #8b5435;outline-offset:4px}
