:root{color-scheme:dark;--accent:#8b5cf6;--muted:#ccc;--border:#26222e}*{box-sizing:border-box}body{margin:0;background:#000;color:#fff;font-family:system-ui,-apple-system,sans-serif}a{color:inherit}button,input{font:inherit}button{cursor:pointer}button,a,input{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #a78bfa;outline-offset:4px}[hidden]{display:none!important}.site-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px max(20px,calc((100% - 1132px)/2));border-bottom:1px solid var(--border)}.brand{font-weight:800;letter-spacing:.08em;text-decoration:none;white-space:nowrap}.site-header nav{display:flex;gap:20px}.site-header nav a{text-decoration:none;color:#ddd}body>main{max-width:1180px;margin:auto;padding:24px}h1{font-size:clamp(28px,4vw,42px);line-height:1.15}h2{font-size:24px}.intro,.copy p,.play-note{color:var(--muted);line-height:1.7;max-width:850px}.breadcrumbs{font-size:13px;color:#aaa;line-height:1.8}.player{margin:24px auto;border:1px solid var(--border);border-radius:16px;background:#101010;overflow:hidden;max-width:min(100%,max(380px,var(--frame-width)))}.play-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:#141218}.play-toolbar span{font-size:14px}.play-toolbar button,.play-note button{background:#25183e;border:1px solid #634195;border-radius:8px;color:white;padding:8px 12px}.frame{position:relative;width:100%;aspect-ratio:var(--game-ratio);background:#080808}.frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.player.expanded{position:fixed;inset:0;max-width:none;width:100%;height:var(--play-height,100dvh);border:0;border-radius:0;z-index:100;display:flex;flex-direction:column;margin:0;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.player.expanded .frame{flex:1;min-height:0;aspect-ratio:auto}.player.expanded .play-toolbar{flex-shrink:0}.game-expanded{overflow:hidden}.copy{margin:32px 0 40px}.source{font-size:13px}.catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.catalog-card{display:block;min-width:0;background:#101010;border:1px solid var(--border);border-radius:12px;overflow:hidden;text-decoration:none;transition:border-color .15s,transform .15s}.catalog-card:hover{border-color:var(--accent);transform:translateY(-2px)}.catalog-card img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.catalog-card span{display:block;padding:12px 14px;font-size:15px;font-weight:600;line-height:1.35}.catalog-tools{margin:28px 0}.catalog-tools label{display:block;max-width:480px;font-size:14px}.catalog-tools input{display:block;width:100%;margin:8px 0 20px;padding:12px 14px;border:1px solid #494051;border-radius:8px;background:#131017;color:white}.filters{display:flex;flex-wrap:wrap;gap:9px}.filters button{border:1px solid #44384e;border-radius:20px;padding:9px 14px;background:#121014;color:#ddd}.filters button[aria-pressed=true]{background:#6d28d9;color:#fff;border-color:#8b5cf6}#result-count{font-size:14px;color:#aaa}footer{display:flex;flex-wrap:wrap;justify-content:center;gap:24px;border-top:1px solid var(--border);padding:28px;margin-top:48px;font-size:14px;color:#bbb}.section-card .catalog-grid{margin-top:22px;grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:700px){body>main{padding:20px 16px}.site-header{padding:15px 16px;gap:12px}.site-header nav{gap:12px;font-size:12px}.brand{font-size:13px}.catalog-grid,.section-card .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.catalog-card span{padding:10px;font-size:14px}.player{max-width:100%}.play-toolbar{padding:8px 10px}.play-toolbar span{max-width:55%}.play-note{font-size:13px}}
.riot-screenshot-cover{position:relative;aspect-ratio:4/3;overflow:hidden}.catalog-card .riot-screenshot-cover img{position:absolute;width:200%;height:150%;max-width:none;left:-50%;top:-22.5%;aspect-ratio:auto;object-fit:fill}
.frame iframe.fixed-game-viewport{inset:auto;left:50%;top:50%;max-width:none;max-height:none;transform-origin:center}
.device-note{padding:12px 16px;border-left:3px solid #a78bfa;background:#191223;color:#e8dcf6;line-height:1.6;border-radius:0 8px 8px 0}.guide-links{margin:28px 0;padding:18px 20px;background:#18121f;border:1px solid #443451;border-radius:12px}.guide-links h2{font-size:18px;margin:0 0 10px}.guide-links a{color:#d6b8ff;line-height:1.6}.rules-guide{max-width:900px;margin:0 auto;line-height:1.7}.rules-guide h1{max-width:800px}.rules-guide h2{margin-top:32px}.rules-table{overflow-x:auto;border:1px solid #443451;border-radius:12px}.rules-table table{width:100%;border-collapse:collapse;text-align:left}.rules-table th,.rules-table td{padding:14px 16px;border-bottom:1px solid #33263e;vertical-align:top}.rules-table thead{background:#21162d}.rules-table tbody th{font-weight:600}.rules-table tbody tr:last-child>*{border-bottom:0}.chess-diagrams{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.chess-diagram{margin:0;padding:16px;background:#17111e;border:1px solid #443451;border-radius:14px}.chess-diagram h3{margin:0 0 10px}.chess-diagram svg{display:block;width:100%;height:auto}.chess-diagram figcaption{color:#d6c9df;font-size:14px;line-height:1.6;margin-top:12px}.guide-game{margin:32px 0;padding:24px;border:1px solid #443451;border-radius:14px}.guide-game h2{margin-top:0}.guide-game-link{display:flex;align-items:center;gap:20px;font-weight:600;color:#d6b8ff;text-decoration:none}.guide-game-link img{width:160px;height:auto;border-radius:10px}.guide-game-link span{line-height:1.6}@media(max-width:700px){.chess-diagrams{grid-template-columns:1fr}.rules-table th,.rules-table td{padding:10px 8px;font-size:13px}.guide-game{padding:18px}.guide-game-link{align-items:flex-start;flex-direction:column}.guide-game-link img{width:100%;max-width:256px}.rules-guide h1{font-size:30px}}
.game-faq{margin:28px 0}.game-faq details{margin:12px 0;padding:14px 16px;border:1px solid var(--border);border-radius:10px;max-width:850px}.game-faq summary{cursor:pointer;font-weight:600;line-height:1.5;overflow-wrap:anywhere}.game-faq summary:focus-visible{outline:2px solid #a78bfa;outline-offset:4px}.game-faq details p{margin-bottom:0;overflow-wrap:anywhere}
