:root{--jade-900:#0a3526;--jade-800:#0f4b35;--jade-700:#155c42;--jade-600:#1d7050;--jade-100:#e6efe9;--gold:#c8a252;--gold-soft:#eadcb4;--red:#c0462a;--ivory:#faf6ec;--paper:#fffdf7;--ink:#1d2521;--muted:#5f6b65;--line:#e8dfca;--radius:16px;--serif:"Libre Caslon Text", Georgia, "Times New Roman", serif;color:var(--ink);background:var(--ivory);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*,:before,:after{box-sizing:border-box}body{margin:0}#app{flex-direction:column;min-height:100vh;display:flex}a{color:var(--jade-700)}h1,h2,h3{font-family:var(--serif);color:var(--jade-800);font-weight:700;line-height:1.25}:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.site-header{z-index:10;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:inset 0 -3px 0 var(--gold-soft);padding:10px 20px;padding-top:max(10px, env(safe-area-inset-top));position:sticky;top:0}.brand{color:var(--jade-800);font-family:var(--serif);align-items:center;gap:10px;font-size:20px;font-weight:700;text-decoration:none;display:inline-flex}.emblem{object-fit:cover;border-radius:50%;flex:none;width:40px;height:40px}.site-main{flex:1;width:100%;max-width:960px;margin:0 auto;padding:24px 20px 48px}.site-footer{border-top:1px solid var(--line);text-align:center;color:var(--muted);padding:20px;font-size:13px}.footer-links{flex-wrap:wrap;justify-content:center;gap:0 12px;display:flex}.footer-links a{min-height:44px;color:var(--muted);align-items:center;padding:0 8px;display:inline-flex}.btn{background:var(--jade-800);min-height:48px;color:var(--ivory);font:inherit;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 22px;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{background:var(--jade-900)}.btn.ghost{color:var(--jade-800);box-shadow:inset 0 0 0 1.5px var(--jade-800);background:0 0}.btn.ghost:hover{background:var(--jade-100)}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.muted{color:var(--muted)}:root{--mj-surface:#f5efe2;--mj-surface-raised:#fffaf0;--mj-surface-sunken:#ebe3d1;--mj-felt:#1e3a28;--mj-felt-edge:#143020;--mj-ink:#231a10;--mj-ink-soft:#6b5d4e;--mj-ink-on-felt:#f2eada;--mj-bamboo:#3f6a33;--mj-bamboo-soft:#e4edd1;--mj-dragon-red:#b23026;--mj-dragon-jade:#2a6a4c;--mj-gold:#8e6324;--mj-gold-text:#6b4a1b;--mj-line:#e5dbc8;--mj-line-strong:#c8bba0;--mj-radius-sm:6px;--mj-radius-md:12px;--mj-radius-lg:18px;--mj-radius-pill:999px;--mj-shadow-tile:0 1px 0 #00000014, 0 2px 4px #0000000f;--mj-shadow-tile-lifted:0 2px 0 #0000001a, 0 6px 12px #00000014;--mj-shadow-card:0 4px 16px #0000000f}:root[data-theme=dark]{--mj-surface:#17130e;--mj-surface-raised:#231d16;--mj-surface-sunken:#120f0b;--mj-felt:#0b1a11;--mj-felt-edge:#06110a;--mj-ink:#f2eada;--mj-ink-soft:#b5a99a;--mj-ink-on-felt:#f2eada;--mj-bamboo:#8ec176;--mj-bamboo-soft:#2b3a1f;--mj-dragon-red:#e8695a;--mj-dragon-jade:#5eb088;--mj-gold:#e6ba6a;--mj-gold-text:#f0ca85;--mj-line:#3a3025;--mj-line-strong:#574a3a;--mj-shadow-tile:0 1px 0 #0000004d, 0 2px 4px #0000004d;--mj-shadow-tile-lifted:0 2px 0 #0006, 0 6px 12px #0000004d;--mj-shadow-card:0 4px 16px #0000004d}.site-header[data-v-2be1f5aa]{justify-content:space-between;align-items:center;gap:12px;display:flex}.account-nav[data-v-2be1f5aa]{flex-wrap:nowrap;align-items:center;gap:8px;display:flex}.btn[data-v-2be1f5aa]{white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;padding:8px 14px;font-size:14px;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.btn.ghost[data-v-2be1f5aa]{color:var(--jade-800,#154e3c);border:1px solid var(--line,#d7d2c4);background:0 0}.btn.ghost[data-v-2be1f5aa]:hover{background:var(--paper,#faf7ef)}.btn.primary[data-v-2be1f5aa]{color:#fff;background:var(--jade-800,#154e3c);border:1px solid var(--jade-800,#154e3c)}.btn.primary[data-v-2be1f5aa]:hover{filter:brightness(1.08)}@media (width<=480px){.btn[data-v-2be1f5aa]{padding:7px 10px;font-size:13px}.brand span[data-v-2be1f5aa]{font-size:16px}.emblem[data-v-2be1f5aa]{width:32px;height:32px}}
