:root{--bg: #fff8ee;--surface: #ffffff;--text: #24202f;--muted: #5d566b;--border: #eadfce;--accent: #c7281e;--accent-2: #ffc93c;--on-accent: #ffffff;--shadow: 0 2px 10px rgba(36, 32, 47, .08);--header-h: 52px;--bar-h: 52px;--radius: 14px;--gutter: 16px;color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--bg: #16141f;--surface: #221f2e;--text: #f3eefc;--muted: #b8b0c8;--border: #353047;--accent: #ff6b5e;--on-accent: #1b0d0b;--shadow: 0 2px 10px rgba(0, 0, 0, .4)}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html.no-scroll,html.no-scroll body{overflow:hidden}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.55 system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow-x:hidden}img{max-width:100%;display:block}a{color:var(--accent)}:focus-visible{outline:3px solid var(--accent-2);outline-offset:2px;border-radius:6px}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--surface);color:var(--text);padding:8px 12px}.skip:focus{left:8px}.site-header{height:var(--header-h);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 var(--gutter);padding-left:max(var(--gutter),env(safe-area-inset-left));padding-right:max(var(--gutter),env(safe-area-inset-right));border-bottom:1px solid var(--border);background:var(--surface)}.brand{display:flex;align-items:center;gap:8px;font-weight:800;font-size:1.1rem;color:var(--text);text-decoration:none;white-space:nowrap}.site-header nav{display:flex;gap:4px}.site-header nav a,.site-footer nav a{color:var(--text);text-decoration:none;padding:10px;border-radius:8px;font-weight:600}.site-header nav a:hover,.site-footer nav a:hover{background:var(--bg)}main{display:block;max-width:1180px;margin:0 auto;padding:0 var(--gutter) 32px}main:focus{outline:none}h1{font-size:clamp(1.45rem,4.5vw,2.2rem);line-height:1.2;margin:20px 0 8px}h2{font-size:1.2rem;margin:28px 0 12px}.hero{padding:8px 0 0}.hero p{color:var(--muted);margin:0}.grid{list-style:none;margin:0;padding:0;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}@media(min-width:700px){.grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:18px}}.card{display:flex;flex-direction:column;gap:4px;color:var(--text);text-decoration:none}.thumb{position:relative;display:block;aspect-ratio:3 / 4;border-radius:var(--radius);overflow:hidden;background:linear-gradient(135deg,#e8392e,#7a2bd6);box-shadow:var(--shadow)}.thumb img{width:100%;height:100%;object-fit:cover;transition:transform .2s}.card:hover .thumb img{transform:scale(1.03)}.badge{position:absolute;top:8px;left:8px;background:var(--accent-2);color:#24202f;font-size:.75rem;font-weight:800;padding:2px 8px;border-radius:999px}.card-title{font-size:1rem;font-weight:700;margin:4px 0 0}.card-tags{font-size:.8rem;color:var(--muted)}.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-block;padding:6px 12px;min-height:36px;border-radius:999px;background:var(--surface);border:1px solid var(--border);color:var(--text);text-decoration:none;font-weight:600;font-size:.9rem}.chip:hover{border-color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text);font:inherit;font-weight:700;font-size:.9rem;text-decoration:none;cursor:pointer;white-space:nowrap}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn-ghost{background:transparent}.page-game main{padding-top:0}.player{margin:0 calc(-1 * var(--gutter))}.stage{position:relative;width:100%;background:#000;height:max(280px,calc(100dvh - var(--header-h) - var(--bar-h)))}.stage iframe{display:block;width:100%;height:100%;border:0;background:#000}.player-bar{display:flex;align-items:center;gap:8px;min-height:var(--bar-h);padding:6px var(--gutter);background:var(--surface);border-bottom:1px solid var(--border);overflow-x:auto}.player-title{flex:1;min-width:0;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-status{margin:0;padding:0 var(--gutter);min-height:0;font-weight:600;color:var(--muted)}.share-status:not(:empty){padding:8px var(--gutter)}@media(max-width:420px){.player-title{display:none}.player-bar{justify-content:space-between}.player-bar .btn{padding:0 10px;font-size:.85rem}}@media(min-width:700px),(orientation:landscape){.player{margin:16px 0 0}.player[data-orientation=portrait] .stage{height:max(280px,calc(100dvh - var(--header-h) - var(--bar-h) - 32px));max-width:max(420px,calc((100dvh - var(--header-h) - var(--bar-h) - 32px) * .5625));margin:0 auto;border-radius:var(--radius) var(--radius) 0 0;overflow:hidden}.player[data-orientation=portrait] .player-bar{max-width:max(420px,calc((100dvh - var(--header-h) - var(--bar-h) - 32px) * .5625));margin:0 auto;border:1px solid var(--border);border-top:0;border-radius:0 0 var(--radius) var(--radius)}.player[data-orientation=portrait] .player-title{display:none}}.fs-exit{display:none;position:absolute;top:max(8px,env(safe-area-inset-top));right:max(8px,env(safe-area-inset-right));z-index:2;width:44px;height:44px;border-radius:50%;border:0;background:#0000008c;color:#fff;font-size:28px;line-height:1;cursor:pointer}.stage[data-fs=on] .fs-exit{display:block}.stage:fullscreen{width:100vw;height:100vh;max-width:none;border-radius:0}.stage.pseudo-fs{position:fixed;inset:0;z-index:1000;width:100vw;height:100dvh;max-width:none!important;margin:0;border-radius:0}.prose{max-width:70ch}.prose ol{padding-left:1.3em}.prose li{margin:4px 0}.lede{font-size:1.1rem;font-weight:600}.muted{color:var(--muted)}.game-info{margin-top:8px}.game-info .chips{margin-top:16px}.notfound{padding:24px 0 8px}.site-footer{border-top:1px solid var(--border);padding:16px var(--gutter) 32px;text-align:center;color:var(--muted);font-size:.9rem}.site-footer nav{display:flex;flex-wrap:wrap;justify-content:center;gap:4px}
