.hub-filters{display:grid;grid-template-columns:1.5fr 1fr auto auto;gap:1rem;align-items:end;background:var(--wash);padding:1rem;margin-bottom:1.8rem}.hub-filters[hidden],.hub-game-card[hidden]{display:none}.hub-filters label{display:flex;flex-direction:column;gap:.4rem;font-size:.8rem}.hub-filters input,.hub-filters select{background:var(--paper);color:var(--ink);border:1px solid #9eaf9d;border-radius:3px;padding:.6rem;font:inherit;min-height:46px;width:100%}.hub-filters button{min-height:46px;font:inherit;font-size:.8rem;cursor:pointer}.hub-filters p{margin:0;font-size:.8rem;min-height:46px;display:flex;align-items:center}.hub-game-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 3rem}.hub-game-card{padding-block:1.6rem;border-top:1px solid var(--line);min-width:0}.hub-game-card h2{font-size:1.35rem;margin-bottom:.6rem}.hub-game-card h2 a{text-decoration:none}.hub-game-card>p:not(.eyebrow){font-size:.9rem;color:var(--muted)}.hub-game-card .button{padding:.5rem 1rem;min-height:44px}.runner-intro{padding-bottom:1rem}.runner-intro h1{font-size:clamp(1.8rem,3vw,2.8rem)}.runner-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:3rem;align-items:start;padding-bottom:3rem}.runner-layout aside{font-size:.82rem;color:var(--muted)}.runner-layout aside h2{font-size:1.1rem}.game-host{background:var(--wash);padding:1.5rem;border-radius:4px;min-width:0}.game-host h2{font-size:1.4rem}.game-host h3{font-size:1.1rem}.game-host button{font:inherit;min-height:48px;min-width:48px;cursor:pointer;border:1px solid var(--forest);border-radius:4px;background:var(--paper);color:var(--forest);padding:.5rem .8rem;max-width:100%;overflow-wrap:anywhere}.game-host button:hover:not(:disabled){background:#d9e1d4}.game-host button:disabled{cursor:default;opacity:.7}.game-host button:focus-visible,.hub-filters :focus-visible{outline:3px solid var(--clay);outline-offset:4px}.game-host p{font-size:.94rem}.game-host .kg-row{display:flex;gap:.65rem;flex-wrap:wrap;align-items:center;margin-block:1rem}.game-host .kg-choice{background:var(--paper);color:var(--forest);font-weight:600;min-height:50px}.game-host .kg-status{font-size:.9rem;min-height:3em;padding-block:.7rem;margin-bottom:.7rem}.game-host .kg-big{font-size:2.4rem;line-height:1.8;text-align:center;overflow-wrap:anywhere}.game-host .kg-tile{display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;padding:.5rem;background:var(--paper);border:1px solid var(--line);border-radius:3px}.game-host .kg-board{margin-block:1rem;min-width:0;max-width:100%}.game-host .kg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;max-width:440px;margin-block:1rem}.game-host .kg-cell{display:flex;align-items:center;justify-content:center;min-height:55px;min-width:0;text-align:center;border:1px solid #b6c2b1;border-radius:3px;padding:.45rem;background:var(--paper)}.game-host .kg-restart{background:var(--forest);color:var(--paper);margin-block:.8rem}.game-host .kg-restart:hover:not(:disabled){background:#2c5143}.game-host .kg-swatch{min-width:72px;min-height:64px}.game-host [hidden]{display:none!important}#related-games{margin-top:1.5rem;border-top:1px solid var(--line);padding-top:1rem}#related-games a{display:flex;align-items:center;min-height:44px;font-size:.8rem}.runner-error{border:1px solid var(--clay);padding:1rem}.kg-row>span,.kg-row>div{max-width:100%}
@media(max-width:960px){.runner-layout{grid-template-columns:1fr;gap:1.5rem}.runner-layout aside{border-top:1px solid var(--line);padding-top:1rem}.hub-filters{grid-template-columns:1fr 1fr}.hub-filters label:first-child{grid-column:1/-1}}
@media(max-width:720px){.hub-game-list{grid-template-columns:1fr}.hub-filters{gap:.8rem}.hub-filters button{width:100%}.game-host{padding:1rem}.game-host .kg-big{font-size:2rem}.game-host .kg-row{gap:.5rem}.game-host button{font-size:.9rem}.game-host .kg-grid{gap:.35rem}.game-host .kg-cell{min-height:48px}.hub-game-card h2{font-size:1.2rem}.runner-intro h1{font-size:1.8rem}.runner-intro .text-link{font-size:.8rem}}
@media print{.hub-filters,.game-host button,.runner-layout aside{display:none}.hub-game-list{display:block}.hub-game-card{break-inside:avoid}.hub-game-card .button{display:none}.runner-layout{display:block}}
