:root { color-scheme: dark; font-family: "Hiragino Kaku Gothic ProN", "Yu Gothic", "Noto Sans JP", system-ui, sans-serif; font-synthesis: none; -webkit-font-smoothing: antialiased; line-height: 1.65; background: #10141a; color: #f5f0eb; }
* { box-sizing: border-box; }
html, body { margin: 0; min-width: 320px; min-height: 100%; }
body { position: relative; overflow-x: hidden; }
button, input { font: inherit; }
button { cursor: pointer; }
button:disabled { cursor: wait; opacity: .55; }
button:focus-visible, a:focus-visible, label:focus-within, input:focus-visible { outline: 2px solid #efd5a3; outline-offset: 3px; }
[hidden] { display: none !important; }
::selection { background: #bc8d9b; color: #10141a; }
