:root{font-family:ui-rounded,'Trebuchet MS',system-ui,sans-serif;color:#382419;background:#b77041;color-scheme:light}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,select{font:inherit}button{cursor:pointer;border:3px solid #492e20;border-radius:12px;padding:14px 24px;font-weight:800;box-shadow:0 5px 0 #492e20;color:#382419;background:#fff3d5;transition:transform .12s}button:hover{filter:brightness(1.07);transform:translateY(-2px)}button:active{transform:translateY(3px);box-shadow:0 2px 0 #492e20}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,select:focus-visible,summary:focus-visible{outline:4px solid #175cbe;outline-offset:4px}[hidden]{display:none!important}.restaurant{position:fixed;inset:0;z-index:-1;background:repeating-linear-gradient(0deg,transparent 0 75px,#8d4c3029 75px 80px),repeating-linear-gradient(90deg,#bd7546 0 120px,#b16a3f 120px 128px);border-top:20px solid #643921}.restaurant:after{content:'';position:absolute;bottom:0;height:27%;width:100%;background:conic-gradient(#f7c8ac 25%,#d97f67 0 50%,#f7c8ac 0 75%,#d97f67 0);background-size:70px 70px;border-top:14px solid #633720}.window{position:absolute;right:4%;top:26%;height:230px;width:190px;border:14px solid #673e28;box-shadow:0 0 0 6px #e2a263;background:linear-gradient(90deg,transparent 46%,#673e28 46% 54%,transparent 54%),linear-gradient(0deg,#9ac681 0 20%,#9ed3df 20% 47%,#673e28 47% 53%,#9ed3df 53%)}.shelf{position:absolute;top:35%;left:3%;width:210px;height:20px;background:#633720;box-shadow:0 100px #633720}.counter{position:absolute;left:0;top:54%;width:26%;height:100px;background:#75432d;border-top:15px solid #e6a76b}header{max-width:1400px;margin:auto;display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:24px 30px}h1{margin:0;background:#694027;color:#ffe7a0;border:6px solid #43291c;box-shadow:0 5px #2e2017;padding:12px 28px;text-shadow:3px 3px #2e2017;font-size:clamp(24px,3.5vw,44px);line-height:1.05;transform:rotate(-1deg)}h1 span{display:block;font-size:.7em;color:#fff3dd}#players{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.player-card{display:flex;align-items:center;gap:10px;padding:10px;background:#fff1d2;border:4px solid #6e4933;border-radius:12px;box-shadow:0 4px #472c20;font-size:13px}.player-card.active{border-color:#235d9a;background:#e9f6ff}.player-card.out{filter:grayscale(1);opacity:.65}.player-card small{display:block;font-size:11px;margin-top:3px}.score{font-weight:900;font-size:22px}.avatar{display:flex;align-items:center;flex-direction:column}.avatar span{font-size:34px}.avatar b{background:#3376b7;color:white;text-align:center;min-width:38px;border-radius:8px 8px 3px 3px;font-size:25px;border:2px solid #263d56}.p2 .avatar b{background:#be4b42}.p3 .avatar b{background:#408c50}main{max-width:900px;margin:15px auto 35px;padding:0 20px}.paper{background:#fff6df;border:4px solid #6b4028;border-radius:14px;box-shadow:0 7px 0 #422a20;padding:28px}.paper h2{font-size:clamp(22px,3vw,32px);margin:8px 0 16px}.eyebrow{text-transform:uppercase;letter-spacing:.1em;font-size:12px;font-weight:900;color:#815537;margin:0 0 12px}p{line-height:1.55}.settings{display:flex;gap:24px;margin:22px 0}.settings label,.player-row label{display:flex;gap:8px;align-items:center}select{padding:10px;border:2px solid #bba381;background:#fffdf6;border-radius:8px;color:#382419}.player-row{display:flex;align-items:center;gap:25px;border-top:1px solid #d9c9a6;padding:16px 0}.player-row strong{margin-right:auto}.primary{background:#f4c462}.small{font-size:14px;color:#6e5844}details{margin-top:22px;border-top:1px solid #cdbb9a;padding-top:15px;font-size:14px}summary{cursor:pointer;font-weight:bold}.status{margin:0 auto 18px;background:#fff1cf;border:4px solid #66452a;box-shadow:0 4px #462e20;border-radius:9px;padding:10px 16px;text-align:center;font-weight:900;width:fit-content}.status span{margin:0 8px}.timer{color:#9b281f;white-space:nowrap}.stage{text-align:center;max-width:650px;min-height:250px;margin:0 auto;background:#fff8e9f5}.stage p:last-child{margin-bottom:0}.plate{width:270px;height:180px;max-width:100%;margin:12px auto 25px;border-radius:50%;background:#fff;border:12px solid #ece8e0;box-shadow:0 10px #c4b7a6,inset 0 0 0 4px #ddd4c7;display:grid;place-items:center}.plate span{font-size:110px;line-height:1;filter:drop-shadow(0 6px 1px #0002)}.actions{display:flex;justify-content:center;gap:20px;margin:18px 0 26px;flex-wrap:wrap}.actions button{min-width:180px;font-size:24px}.healthy{background:#238546;color:#fff;border-color:#174e2a;box-shadow:0 5px #174e2a}.unhealthy{background:#be3536;color:white;border-color:#692526;box-shadow:0 5px #692526}.feedback{background:#fff4db;border-radius:8px;text-align:center;max-width:650px;margin:14px auto 0;padding:10px 14px;font-weight:bold}.feedback:empty{display:none}.utilities{display:flex;justify-content:center;gap:20px}.quiet{font-size:13px;padding:8px 13px;box-shadow:none;background:#fff4db}.wheel{margin:18px auto;width:150px;height:150px;display:grid;place-content:center;border:8px solid #60391d;border-radius:50%;background:conic-gradient(#f4d87a 0 120deg,#abd9b0 120deg 240deg,#e9a78d 240deg);font-weight:bold;animation:spin 1s ease-out}footer{text-align:center;font-size:12px;padding:15px;color:#462c1d}#results ol{line-height:2;padding-left:25px}@keyframes spin{from{transform:rotate(0)}to{transform:rotate(1080deg)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}@media(max-width:700px){header{padding:16px;flex-direction:column;align-items:center}#players{justify-content:center}.player-card{padding:6px;gap:5px;font-size:11px}.player-card small{font-size:10px}.avatar span{font-size:25px}.avatar b{font-size:20px;min-width:28px}.score{font-size:18px}main{padding:0 12px}.paper{padding:20px}.settings,.player-row{flex-wrap:wrap;gap:12px}.player-row strong{width:100%}.settings{flex-direction:column}.actions{gap:12px}.actions button{min-width:130px;font-size:20px;padding:14px}.status{font-size:13px}.plate{width:220px;height:150px}.plate span{font-size:90px}.window{right:0}.stage{min-height:200px}}

/* Setup includes independently assigned human/computer controls. */
.player-row{flex-wrap:wrap;gap:12px}.player-row label{font-size:14px}

.site-return{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 24px;background:#fff3dc;color:#382419;font-size:14px}.site-return a{color:inherit;font-weight:bold}.site-return a:focus-visible{outline:3px solid #175cbe;outline-offset:3px}
