:root{color-scheme:light;--bg:#f6f1e8;--bg-elev:#fffdf8;--bg-sunken:#ece5d8;--ink:#17141d;--ink-2:#4a4453;--ink-3:#7d7686;--line:#17141d1f;--accent:#e63b2e;--accent-ink:#fff;--neon-cyan:#0aa9cf;--neon-pink:#d81b74;--glass:#fffdf8b8;--shadow:0 10px 30px -12px #17141d40;--shadow-sm:0 2px 8px -2px #17141d2e;--sub-otaku:#ff4fa3;--sub-gaming:#7c5cff;--sub-fashion:#ff7a1a;--sub-music:#1fb6a6;--sub-food:#e63b2e;--sub-traditional:#b8860b;--sub-architecture:#4b5563;--sub-nightlife:#a21caf;--sub-nature:#2f9e44;--sub-kawaii:#ff8fcf;--sub-retro:#c2410c;--sub-art:#0ea5e9;--font-display:"Tokyopin Display", "Syne", "Helvetica Neue", Arial, sans-serif;--font-body:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;--font-cjk-ja:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Noto Sans CJK JP", "Yu Gothic", Meiryo, system-ui, sans-serif;--font-cjk-zh:"PingFang SC", "Hiragino Sans GB", "Noto Sans SC", "Noto Sans CJK SC", "Microsoft YaHei", system-ui, sans-serif;--fs-0:.8125rem;--fs-1:.9375rem;--fs-2:1.0625rem;--fs-3:1.25rem;--fs-4:1.5rem;--fs-5:clamp(1.75rem, 1.2rem + 2vw, 2.5rem);--fs-6:clamp(2.25rem, 1.4rem + 4vw, 4rem);--fs-hero:clamp(3rem, 1rem + 9vw, 7.5rem);--lh-tight:1.1;--lh-body:1.6;--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.5rem;--s-6:2rem;--s-7:3rem;--s-8:4rem;--s-9:6rem;--r-1:6px;--r-2:12px;--r-3:20px;--r-pill:999px;--container:76rem;--gutter:1rem;--nav-h:3.5rem;--bottom-nav-h:3.75rem;--ease:cubic-bezier(.2, .7, .2, 1);--t-fast:.16s;--t-med:.32s}:root[data-theme=dark],:root:not([data-theme=light]){@media (prefers-color-scheme:dark){color-scheme:dark;--bg:#0e0b16;--bg-elev:#17122a;--bg-sunken:#090712;--ink:#f2ecff;--ink-2:#c3b9d8;--ink-3:#8a7fa3;--line:#f2ecff1f;--accent:#ff5a4c;--accent-ink:#0e0b16;--neon-cyan:#39d9ff;--neon-pink:#ff4fa3;--glass:#17122ab3;--shadow:0 10px 40px -10px #0009;--shadow-sm:0 2px 10px -2px #00000080}}:root[data-theme=dark]{color-scheme:dark;--bg:#0e0b16;--bg-elev:#17122a;--bg-sunken:#090712;--ink:#f2ecff;--ink-2:#c3b9d8;--ink-3:#8a7fa3;--line:#f2ecff1f;--accent:#ff5a4c;--accent-ink:#0e0b16;--neon-cyan:#39d9ff;--neon-pink:#ff4fa3;--glass:#17122ab3;--shadow:0 10px 40px -10px #0009;--shadow-sm:0 2px 10px -2px #00000080}@media (width>=48em){:root{--gutter:1.5rem}}@media (width>=64em){:root{--gutter:2.5rem}}*,:before,:after{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:var(--fs-2);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;padding-bottom:var(--bottom-nav-h);margin:0}@media (width>=64em){body{padding-bottom:0}}:lang(ja){font-family:var(--font-cjk-ja)}:lang(zh){font-family:var(--font-cjk-zh)}:lang(ja) .display,:lang(zh) .display{letter-spacing:0;font-family:inherit;font-weight:800}img,svg,video{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-underline-offset:.15em}a:hover{text-decoration-color:currentColor}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}:focus-visible{outline:3px solid var(--neon-cyan);outline-offset:3px;border-radius:4px}h1,h2,h3,h4{line-height:var(--lh-tight);margin:0 0 var(--s-4);letter-spacing:-.02em;font-weight:800}h1{font-size:var(--fs-6)}h2{font-size:var(--fs-5)}h3{font-size:var(--fs-4)}h4{font-size:var(--fs-3)}p{margin:0 0 var(--s-4)}.display{font-family:var(--font-display);letter-spacing:-.03em;font-weight:800}.muted{color:var(--ink-2)}.small{font-size:var(--fs-0)}.eyebrow{font-size:var(--fs-0);text-transform:uppercase;letter-spacing:.14em;color:var(--ink-3);font-weight:700}.container{width:min(100% - 2 * var(--gutter), var(--container));margin-inline:auto}.container--wide{width:min(100% - 2 * var(--gutter), 96rem);margin-inline:auto}.section{padding-block:var(--s-7)}@media (width>=64em){.section{padding-block:var(--s-8)}}.section__head{justify-content:space-between;align-items:end;gap:var(--s-4);margin-bottom:var(--s-5);display:flex}.section__head h2{margin:0}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.skip{left:var(--s-4);background:var(--accent);color:var(--accent-ink);padding:var(--s-2) var(--s-4);border-radius:var(--r-1);z-index:100;position:absolute;top:-4rem}.skip:focus{top:var(--s-4)}.btn{align-items:center;gap:var(--s-2);border-radius:var(--r-pill);border:1.5px solid var(--line);background:var(--bg-elev);transition:transform var(--t-fast) var(--ease), background var(--t-fast);padding:.75em 1.25em;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn--primary{background:var(--accent);color:var(--accent-ink);border-color:#0000}.btn--ghost{background:0 0}.chip{border-radius:var(--r-pill);font-size:var(--fs-0);border:1.5px solid var(--line);background:var(--bg-elev);white-space:nowrap;align-items:center;gap:.4em;padding:.35em .8em;font-weight:600;text-decoration:none;display:inline-flex}.chip__dot{background:var(--c,var(--accent));width:.6em;height:.6em;box-shadow:0 0 0 2px color-mix(in srgb, var(--c,var(--accent)) 25%, transparent);border-radius:50%}.chip[aria-pressed=true],.chip.is-active{background:var(--c,var(--accent));color:#fff;border-color:#0000}.grid{gap:var(--s-4);display:grid}.grid--2{grid-template-columns:repeat(auto-fill,minmax(18rem,1fr))}.grid--3{grid-template-columns:repeat(auto-fill,minmax(15rem,1fr))}.card{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-3);box-shadow:var(--shadow-sm);overflow:hidden}.prose{max-width:42rem}.prose h2{margin-top:var(--s-7);font-size:var(--fs-4)}.prose h3{margin-top:var(--s-6);font-size:var(--fs-3)}.prose ul,.prose ol{padding-left:1.25em}.prose li{margin-bottom:var(--s-2)}.prose blockquote{margin:var(--s-5) 0;padding:var(--s-4) var(--s-5);border-left:4px solid var(--accent);background:var(--bg-sunken);border-radius:0 var(--r-2) var(--r-2) 0}.prose table{border-collapse:collapse;width:100%;font-size:var(--fs-1)}.prose th,.prose td{text-align:left;padding:var(--s-2) var(--s-3);border-bottom:1px solid var(--line)}.prose img{border-radius:var(--r-2)}hr{border:0;border-top:1px solid var(--line);margin:var(--s-6) 0}
