@font-face{font-family:Cinzel Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(./cinzel-latin-ext-wght-normal-CG36JvV6.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cinzel Variable;font-style:normal;font-display:swap;font-weight:400 900;src:url(./cinzel-latin-wght-normal-DMUuCU8H.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:EB Garamond Variable;font-style:normal;font-display:swap;font-weight:400 800;src:url(./eb-garamond-cyrillic-ext-wght-normal-Bt3rCdHq.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:EB Garamond Variable;font-style:normal;font-display:swap;font-weight:400 800;src:url(./eb-garamond-cyrillic-wght-normal-DBa2mnKT.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:EB Garamond Variable;font-style:normal;font-display:swap;font-weight:400 800;src:url(./eb-garamond-greek-ext-wght-normal-CW-BywWH.woff2) format("woff2-variations");unicode-range:U+1F00-1FFF}@font-face{font-family:EB Garamond Variable;font-style:normal;font-display:swap;font-weight:400 800;src:url(./eb-garamond-greek-wght-normal-DCPER7xl.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:EB Garamond Variable;font-style:normal;font-display:swap;font-weight:400 800;src:url(./eb-garamond-vietnamese-wght-normal-DvUmmjCN.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:EB Garamond Variable;font-style:normal;font-display:swap;font-weight:400 800;src:url(./eb-garamond-latin-ext-wght-normal-B6IpcvL2.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:EB Garamond Variable;font-style:normal;font-display:swap;font-weight:400 800;src:url(./eb-garamond-latin-wght-normal-CRpggXlh.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#0E1412;--surface:#18221F;--ink:#EDE6D3;--ink-muted:#9AA59A;--line:#2C3A35;--accent:#D9A441;--accent-ink:#1A1308;--accent-soft:rgba(217,164,65,.16);--success:#7FB88A;--warning:#E0A04A;--danger:#C4524A;--font-display:"Cinzel Variable",Georgia,serif;--font-body:"EB Garamond Variable",Georgia,serif;--text-xs:12px;--text-sm:14px;--text-md:17px;--text-lg:22px;--text-xl:30px;--text-display:48px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-pill:999px;--shadow-1:0 2px 8px rgba(0,0,0,.35);--shadow-2:0 10px 30px rgba(0,0,0,.5);--dur-fast:.12s;--dur:.24s;--dur-slow:.48s;--content-max:960px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:var(--text-md)}h1,h2,h3{font-family:var(--font-display);letter-spacing:.04em;margin:0}.container{max-width:var(--content-max);margin:0 auto;padding:0 var(--space-4)}.screen{animation:screen-in var(--dur-slow) ease both}@keyframes screen-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.btn,.icon-btn,.tab,.chip,.list-row{font:inherit;color:var(--ink);cursor:pointer;border:1px solid transparent;transition:background var(--dur-fast),transform var(--dur-fast),opacity var(--dur-fast)}.btn{height:48px;padding:0 var(--space-5);border-radius:var(--radius-md);white-space:nowrap;font-family:var(--font-display);letter-spacing:.06em;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2)}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover{filter:brightness(1.1)}.btn-secondary{background:var(--surface);border-color:var(--line)}.btn-secondary:hover{background:var(--line)}.btn-tertiary{background:transparent;color:var(--ink-muted)}.btn-tertiary:hover{color:var(--ink);background:var(--accent-soft)}.btn-danger{background:var(--danger);color:#fff}.btn:active,.icon-btn:active,.tab:active,.chip:active,.list-row:active{transform:scale(.97)}.btn:focus-visible,.icon-btn:focus-visible,.tab:focus-visible,.chip:focus-visible,.list-row:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:disabled,.icon-btn:disabled,.tab:disabled,.chip:disabled,.list-row:disabled{opacity:.4;cursor:not-allowed;transform:none}.icon-btn{width:44px;height:44px;border-radius:var(--radius-pill);background:var(--surface);border-color:var(--line);display:inline-grid;place-items:center}.icon-btn:hover{background:var(--line)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-1)}.list-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--surface);border-radius:var(--radius-md);width:100%;text-align:left}.list-row:hover{background:var(--line)}.field{width:100%;height:44px;padding:0 var(--space-3);background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:var(--radius-md);font:inherit}.field:focus-visible{outline:2px solid var(--accent)}.field-error{border-color:var(--danger);color:var(--danger);font-size:var(--text-sm)}.chip{height:32px;padding:0 var(--space-3);border-radius:var(--radius-pill);background:var(--surface);border-color:var(--line);font-size:var(--text-sm)}.chip:hover{background:var(--line)}.tabbar{display:flex;gap:var(--space-2);padding:var(--space-2);background:var(--surface);border-radius:var(--radius-pill)}.tab{height:40px;padding:0 var(--space-4);border-radius:var(--radius-pill);background:transparent}.tab:hover{background:var(--line)}.tab[aria-current]{background:var(--accent);color:var(--accent-ink)}.empty{display:grid;justify-items:center;gap:var(--space-3);text-align:center;padding:var(--space-7) var(--space-4);color:var(--ink-muted)}.empty .empty-icon{width:72px;height:72px;border-radius:50%;background:var(--accent-soft);display:grid;place-items:center;color:var(--accent)}.skeleton{background:linear-gradient(90deg,var(--surface),var(--line),var(--surface));background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:var(--radius-md)}@keyframes shimmer{to{background-position:-200% 0}}.toast{position:fixed;left:50%;bottom:var(--space-6);transform:translate(-50%);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-pill);padding:var(--space-3) var(--space-5);box-shadow:var(--shadow-2)}.char-select{position:fixed;inset:0;z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-5);padding:max(var(--space-4),env(safe-area-inset-top)) var(--space-4) max(var(--space-4),env(safe-area-inset-bottom));background:var(--bg);color:var(--ink);overflow:auto;animation:screen-in var(--dur-slow) ease both}.char-select h1{font-size:clamp(24px,5vw,var(--text-xl));text-align:center;line-height:1.2}.char-select .char-sub{color:var(--ink-muted);text-align:center;margin:0;font-size:var(--text-md)}.char-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4);width:100%;max-width:640px}.char-card{font:inherit;color:var(--ink);cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--surface);border:2px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-1);transition:border-color var(--dur-fast),background var(--dur-fast),transform var(--dur-fast)}.char-card:hover{background:#1e2b27}.char-card:active{transform:scale(.97)}.char-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.char-card[aria-checked=true],.char-card.selected{border-color:var(--accent);background:var(--accent-soft)}.char-card canvas{width:100%;max-width:240px;aspect-ratio:3/4;border-radius:var(--radius-md);background:var(--bg);display:block}.char-name{font-family:var(--font-display);font-size:var(--text-lg);letter-spacing:.06em}.char-desc{color:var(--ink-muted);font-size:var(--text-sm);text-align:center;line-height:1.5}.char-start{min-width:200px}@media(max-width:420px){.char-cards{gap:var(--space-2)}.char-card{padding:var(--space-3)}}@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
