/* Layout: one readable column on the game's yellow, ink outlines like the game. */
:root{--ink:#17151c;--paper:#ffffff;--yellow:#ffe100;--pink:#ff3fa4;--red:#e8203a;--f-head:"Mochiy Pop One","Hiragino Maru Gothic ProN","Yu Gothic",sans-serif;--f-body:"Zen Kaku Gothic New","Hiragino Sans","Yu Gothic",system-ui,sans-serif;color-scheme:light}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--yellow);color:var(--ink);font-family:var(--f-body);font-size:16px;line-height:1.85;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:0}
.wrap{max-width:42rem;margin:0 auto;padding-block:28px 40px;display:flex;flex-direction:column;gap:22px}
header{display:flex;flex-direction:column;gap:6px}
header a.back{align-self:flex-start;font-weight:900;font-size:14px;color:var(--ink)}
h1{margin:0;font-family:var(--f-head);font-weight:400;font-size:clamp(28px,7vw,40px);line-height:1.25;text-wrap:balance}
h2{margin:0 0 4px;font-family:var(--f-head);font-weight:400;font-size:clamp(20px,5vw,24px);line-height:1.35;text-wrap:balance}
h3{margin:0;font-size:17px;font-weight:900}
section{background:var(--paper);border:3px solid var(--ink);box-shadow:5px 5px 0 var(--ink);padding:16px 18px;display:flex;flex-direction:column;gap:10px}
p{margin:0}
ul,ol{margin:0;padding-left:1.3em;display:flex;flex-direction:column;gap:4px}
.games{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));gap:10px}
.games li{border:2px solid var(--ink);padding:10px 12px;display:flex;flex-direction:column;gap:2px;min-width:0}
.games b{font-family:var(--f-head);font-weight:400;font-size:17px}
.games span{font-size:13px;font-weight:900;color:var(--red)}
.games p{font-size:14px;line-height:1.7}
.play{align-self:flex-start;font-family:var(--f-head);font-size:20px;color:var(--ink);background:var(--yellow);border:3px solid var(--ink);box-shadow:5px 5px 0 var(--ink);padding:10px 22px;text-decoration:none}
table{border-collapse:collapse;width:100%;font-size:14px}
th,td{border:2px solid var(--ink);padding:6px 8px;text-align:left;vertical-align:top}
th{background:#fff6a8;white-space:nowrap}
.scroll{overflow-x:auto}
footer{text-align:center;font-size:13px;display:flex;flex-direction:column;gap:4px}
footer nav{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
footer a{color:var(--ink);font-weight:900}
a:focus-visible{outline:3px solid #2350ff;outline-offset:3px}
