html { background: #0c0a12; }
body { max-width: 760px; margin: 0 auto; padding: 32px 20px 64px; color: #e8e4d8; font-family: "Hiragino Sans", "Yu Gothic", "Meiryo", sans-serif; font-size: 16px; line-height: 1.8; }
h1, h2, h3, h4, .back { font-family: "DotGothic16", "MS Gothic", monospace; font-weight: normal; }
h1 { margin: 16px 0 8px; font-size: 32px; line-height: 1.3; color: #ffe27a; }
h2 { margin: 40px 0 8px; padding-bottom: 4px; font-size: 22px; color: #fff; border-bottom: 2px solid #ffb020; }
h3 { margin: 24px 0 4px; font-size: 18px; color: #ffe27a; }
a { color: #ffb020; }
table { width: 100%; border-collapse: collapse; }
th, td { padding: 6px 10px; border: 1px solid #445; text-align: left; vertical-align: top; }
th { color: #b6bccb; background: #1b1622; font-weight: normal; white-space: nowrap; }
.lead { color: #b6bccb; }
.notice { padding: 8px 12px; color: #b6bccb; background: #1b1622; border: 1px solid #445; font-size: 14px; }
.notice[hidden], #shelves[hidden] { display: none; }
.shop-items { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 10px; }
.shop-item { padding: 10px 14px; background: #1b1622; border: 1px solid #445; }
.shop-item h4 { margin: 0; font-size: 16px; color: #fff; }
.shop-item p { margin: 2px 0 8px; color: #b6bccb; font-size: 14px; }
.shop-link img { max-width: 100%; height: auto; }
footer { margin-top: 48px; padding-top: 12px; border-top: 1px solid #445; font-size: 14px; }
footer a { margin-right: 14px; }
