*{box-sizing:border-box}html,body,#app{background:#101010;min-height:100%;margin:0}body{font-family:Arial,sans-serif;overflow:hidden}.game-page{background:radial-gradient(#353535,#090909);place-items:center;min-height:100vh;display:grid}.game-host{aspect-ratio:2/3;touch-action:none;-webkit-user-select:none;user-select:none;width:min(100vw,66.6667vh);box-shadow:0 0 42px #000}canvas{image-rendering:auto;width:100%;height:100%;display:block}.theme-picker{color:#fff3df;background:#080808;height:100vh;min-height:100vh;padding:2.5rem 1.25rem;position:relative;overflow:auto}.theme-picker__hero{object-fit:cover;object-position:center;opacity:0;pointer-events:none;width:100%;height:100%;transition:opacity .85s;position:fixed;inset:0}.theme-picker.is-hero-ready .theme-picker__hero{opacity:1}.theme-picker__content{z-index:1;opacity:0;pointer-events:none;width:min(1120px,100%);margin:0 auto;transition:opacity .42s;position:relative}.theme-picker.is-ready .theme-picker__content{opacity:1;pointer-events:auto}.theme-picker__home{color:#ffd478;margin-bottom:1.25rem;font-weight:700;text-decoration:none;display:inline-block}.theme-picker__home:hover{color:#fff3df;text-decoration:underline}.theme-picker__home:focus-visible{outline-offset:3px;outline:3px solid #ffd478}.theme-picker__eyebrow{color:#ffd478;letter-spacing:.12em;text-transform:uppercase;margin:0;font-family:OCRAEXT,monospace;font-size:.9rem}.theme-picker h1{margin:.35rem 0 1.5rem;font-size:clamp(2rem,5vw,3.5rem)}.theme-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;display:grid}.theme-card{cursor:pointer;color:#fff3df;font:inherit;text-align:left;background:#160b09;border:2px solid #8e2d22;border-radius:.5rem;padding:0;transition:border-color .16s,transform .16s;overflow:hidden;box-shadow:0 6px 20px #0006}.theme-card:hover{border-color:#ffd478;transform:translateY(-3px)}.theme-card:focus-visible,.button:focus-visible{outline-offset:3px;outline:3px solid #ffd478}.theme-card img{aspect-ratio:1200/630;object-fit:cover;width:100%;display:block}.theme-card span{padding:.85rem 1rem 1rem;font-weight:700;display:block}.theme-dialog-backdrop{z-index:20;background:#000000b8;place-items:center;padding:1.25rem;display:grid;position:fixed;inset:0}.theme-dialog{color:#fff3df;background:#160b09;border:2px solid #8e2d22;border-radius:.5rem;width:min(28rem,100%);padding:1.5rem;box-shadow:0 10px 35px #0009}.theme-dialog h2{color:#ffd478;margin:0}.theme-dialog p{margin:.75rem 0 1.25rem}.theme-dialog__actions{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;display:flex}.button{cursor:pointer;color:#1a0906;font:inherit;background:#d35b2f;border:1px solid #ffd478;border-radius:.25rem;padding:.65rem .85rem;font-weight:700}.button--quiet{color:#fff3df;background:0 0}@media (width<=640px){.theme-picker{padding:1.5rem 1rem 2rem}.theme-grid{grid-template-columns:1fr}}
