:root{--night-900:#0b1220;--night-800:#1b2638;--violet-900:#3a2758;--parchment-100:#fffaf0;--parchment-200:#fff6e0;--parchment-300:#e9d6b0;--gold-300:#ffe08a;--gold-500:#e3a635;--gold-700:#c99a22;--gold-ink:#7a4c0e;--ink-brown:#3a2412;--on-gold:#2a1c05;--mana-500:#2c63d6;--mana-300:#5fc9ff;--hp-vital:#8e1b2a;--hp-vital-edge:#e7899a;--hp-grace:#a8822b;--hp-grace-edge:#d9b06a;--hp-ethereal:#6a4bd1;--hp-ethereal-edge:#b9b2e6;--danger:#e63946;--heal:#9ff0c8;--surface:var(--night-900);--surface-raised:var(--night-800);--ink:var(--parchment-100);--ink-muted:var(--parchment-300);--accent-text:var(--gold-300);--focus:var(--mana-300);--line:rgba(255, 224, 138, 0.22);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-20:80px;--space-30:120px;--radius-sm:6px;--radius-md:12px;--radius-card:14px;--radius-pill:999px;--shadow-focus:0 0 0 3px #5fc9ff;--shadow-glow-gold:0 0 0 4px #ffe08a;--shadow-lift:0 18px 40px rgba(0, 0, 0, 0.55);--display:'Chonburi', 'Taviraj', Georgia, serif;--latin:'Cinzel', 'Bodoni Moda', 'Taviraj', Georgia, serif;--serif:'Taviraj', Georgia, serif;--sans:'Anuphan', 'Noto Sans Thai', 'Segoe UI', Tahoma, sans-serif;--num:'Kanit', 'Anuphan', sans-serif;--raised:var(--surface-raised);--muted:var(--ink-muted);--gold3:var(--gold-300);--gold5:var(--gold-500);--gold7:var(--gold-700);--mana3:var(--mana-300);--mana5:var(--mana-500);--vital:var(--hp-vital);--vital-e:var(--hp-vital-edge);--grace:var(--hp-grace);--grace-e:var(--hp-grace-edge);--eth:var(--hp-ethereal);--eth-e:var(--hp-ethereal-edge);--violet:var(--violet-900);color-scheme:dark}
@font-face{font-family:'Anuphan';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/anuphan-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2190-21FF}
@font-face{font-family:'Anuphan';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/anuphan-thai-400-normal.woff2') format('woff2');unicode-range:U+0E00-0E7F,U+200C-200D,U+25CC}
@font-face{font-family:'Anuphan';font-style:normal;font-weight:500;font-display:swap;src:url('../assets/fonts/anuphan-latin-500-normal.woff2') format('woff2');unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2190-21FF}
@font-face{font-family:'Anuphan';font-style:normal;font-weight:500;font-display:swap;src:url('../assets/fonts/anuphan-thai-500-normal.woff2') format('woff2');unicode-range:U+0E00-0E7F,U+200C-200D,U+25CC}
@font-face{font-family:'Anuphan';font-style:normal;font-weight:600;font-display:swap;src:url('../assets/fonts/anuphan-latin-600-normal.woff2') format('woff2');unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2190-21FF}
@font-face{font-family:'Anuphan';font-style:normal;font-weight:600;font-display:swap;src:url('../assets/fonts/anuphan-thai-600-normal.woff2') format('woff2');unicode-range:U+0E00-0E7F,U+200C-200D,U+25CC}
@font-face{font-family:'Anuphan';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/fonts/anuphan-latin-700-normal.woff2') format('woff2');unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2190-21FF}
@font-face{font-family:'Anuphan';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/fonts/anuphan-thai-700-normal.woff2') format('woff2');unicode-range:U+0E00-0E7F,U+200C-200D,U+25CC}
@font-face{font-family:'Chonburi';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/chonburi-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2190-21FF}
@font-face{font-family:'Chonburi';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/chonburi-thai-400-normal.woff2') format('woff2');unicode-range:U+0E00-0E7F,U+200C-200D,U+25CC}
@font-face{font-family:'Taviraj';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/taviraj-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2190-21FF}
@font-face{font-family:'Taviraj';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/taviraj-thai-400-normal.woff2') format('woff2');unicode-range:U+0E00-0E7F,U+200C-200D,U+25CC}
@font-face{font-family:'Taviraj';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/fonts/taviraj-latin-700-normal.woff2') format('woff2');unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2190-21FF}
@font-face{font-family:'Taviraj';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/fonts/taviraj-thai-700-normal.woff2') format('woff2');unicode-range:U+0E00-0E7F,U+200C-200D,U+25CC}
@font-face{font-family:'Taviraj';font-style:normal;font-weight:900;font-display:swap;src:url('../assets/fonts/taviraj-latin-900-normal.woff2') format('woff2');unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2190-21FF}
@font-face{font-family:'Taviraj';font-style:normal;font-weight:900;font-display:swap;src:url('../assets/fonts/taviraj-thai-900-normal.woff2') format('woff2');unicode-range:U+0E00-0E7F,U+200C-200D,U+25CC}
@font-face{font-family:'Kanit';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/kanit-latin-400-normal.woff2') format('woff2');unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2190-21FF}
@font-face{font-family:'Kanit';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/kanit-thai-400-normal.woff2') format('woff2');unicode-range:U+0E00-0E7F,U+200C-200D,U+25CC}
@font-face{font-family:'Kanit';font-style:normal;font-weight:600;font-display:swap;src:url('../assets/fonts/kanit-latin-600-normal.woff2') format('woff2');unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2190-21FF}
@font-face{font-family:'Kanit';font-style:normal;font-weight:600;font-display:swap;src:url('../assets/fonts/kanit-thai-600-normal.woff2') format('woff2');unicode-range:U+0E00-0E7F,U+200C-200D,U+25CC}
@font-face{font-family:'Kanit';font-style:normal;font-weight:800;font-display:swap;src:url('../assets/fonts/kanit-latin-800-normal.woff2') format('woff2');unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2190-21FF}
@font-face{font-family:'Kanit';font-style:normal;font-weight:800;font-display:swap;src:url('../assets/fonts/kanit-thai-800-normal.woff2') format('woff2');unicode-range:U+0E00-0E7F,U+200C-200D,U+25CC}
@font-face{font-family:'Kanit';font-style:normal;font-weight:900;font-display:swap;src:url('../assets/fonts/kanit-latin-900-normal.woff2') format('woff2');unicode-range:U+0000-024F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF,U+2190-21FF}
@font-face{font-family:'Kanit';font-style:normal;font-weight:900;font-display:swap;src:url('../assets/fonts/kanit-thai-900-normal.woff2') format('woff2');unicode-range:U+0E00-0E7F,U+200C-200D,U+25CC}
