*{box-sizing:border-box}body{margin:0;background:#092d37;color:#f4f4df;font-family:ui-rounded,'Trebuchet MS',system-ui,sans-serif;background-image:radial-gradient(ellipse at 70% 40%,#25565e,transparent 65%)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;border:0}button:focus-visible,a:focus-visible{outline:3px solid #fff;outline-offset:4px}header{max-width:1180px;margin:auto;padding:24px 30px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;font-weight:1000;font-size:36px;color:#d9ef87;text-decoration:none}.brand span{font-size:17px;color:#f7f6e2}nav{display:flex;gap:20px;align-items:center}nav a{color:#e2ebd6;text-decoration:none;font-size:14px}nav button{background:#ffffff16;padding:12px;border-radius:50%}main{max-width:1050px;margin:12px auto 40px;display:grid;grid-template-columns:1fr 440px;gap:70px;padding:0 25px}.intro{padding-top:55px}.eyebrow{font-size:11px;letter-spacing:3px;color:#b7d3c5;font-weight:800}h1{font-size:clamp(45px,6vw,76px);line-height:1.01;letter-spacing:-3px;margin:22px 0}h1 em{color:#e9c968;font-style:normal}.intro>p{font-size:24px;line-height:1.45;color:#d2dfd8}.modes{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}.modes button{padding:14px;border-radius:14px;background:#ffffff12;color:#e7eddf;font-size:13px;font-weight:800}.modes [aria-pressed=true]{background:#d9ef87;color:#183f36}.intro p.help{font-size:15px;line-height:1.6;max-width:320px}.instructions{margin-top:34px;border-top:1px solid #ffffff26;padding-top:22px;font-size:15px;line-height:1.65;color:#bed1c9}.instructions b{font-size:10px;letter-spacing:2px;color:#f0d28a}.instructions small{font-size:11px}.machine{width:100%;border-radius:28px;background:#163e43;padding:10px;box-shadow:0 22px 70px #00141999,inset 0 1px #ffffff44;border:2px solid #447477}.scoreboard{display:flex;justify-content:space-around;padding:12px 10px 16px;text-align:center;background:#092d31;border-radius:18px 18px 6px 6px}.scoreboard small{display:block;font-size:9px;letter-spacing:2px;color:#9fbfaf}.scoreboard output{display:block;font-size:27px;font-weight:900;font-variant-numeric:tabular-nums;color:#f9dc83}.table{position:relative}canvas{display:block;width:100%;height:auto;border-radius:5px;touch-action:none}.controls{display:grid;grid-template-columns:1fr .9fr 1fr;gap:7px;padding-top:10px}.controls button{min-height:62px;border-radius:12px;background:#d9ef87;color:#173d36;font-size:14px;font-weight:1000;touch-action:none;user-select:none;box-shadow:0 5px #758f46}.controls #launch{background:#efcb72;box-shadow:0 5px #997b3f;font-size:12px}.controls button:active,.controls button.held{transform:translateY(3px);box-shadow:0 2px #758f46}.under{display:flex;align-items:center;gap:8px;padding:9px 3px 0;min-height:44px}.under p{margin:0;font-size:12px;color:#c5dcc9;flex:1}.under button{background:transparent;color:#e9edda;padding:10px;font-size:12px}#startCard{position:absolute;top:38%;left:8%;right:8%;text-align:center;border:1px solid #fff6;background:#123d3df2;border-radius:22px;padding:20px;box-shadow:0 18px 30px #001a2766}#startCard[hidden]{display:none}#startCard>span{font-size:40px}h2{margin:5px 0;font-size:24px}#startCard p{font-size:13px;color:#cfdfcb}#startCard button{padding:15px 23px;border-radius:12px;background:#e9cb75;font-weight:900;color:#234038}@media(max-width:760px){header{padding:12px 16px}.brand span{font-size:13px}nav a{font-size:12px}main{display:flex;flex-direction:column;gap:10px;margin-top:0;padding:0 10px;max-width:460px}.intro{padding:4px 4px 0}.eyebrow,.intro>p:not(.help),.instructions{display:none}h1{font-size:31px;letter-spacing:-1px;margin:5px 0}h1 br{display:none}h1 em{margin-left:5px}.modes{margin:10px 0 0}.modes button{padding:10px}.intro p.help{font-size:12px;margin:8px 0;max-width:none}.machine{border-radius:20px}.scoreboard{padding:8px}.scoreboard output{font-size:22px}.controls button{min-height:64px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* Keep the flippers on screen, including on small phones. */
@media(min-width:761px){main{grid-template-columns:1fr min(440px,calc((100svh - 315px)*.568 + 24px));gap:50px}.intro{padding-top:20px}h1{font-size:clamp(44px,6vw,70px)}.instructions{margin-top:18px}.intro>p{font-size:20px}.modes{margin-top:20px}}
@media(max-width:760px){.table{display:flex;justify-content:center;background:#103e45}.table canvas{width:auto;max-width:100%;height:min(740px,calc(100svh - 425px));min-height:250px;object-fit:contain}.under{min-height:36px}.controls button{min-height:54px}.scoreboard output{font-size:20px}}
