:root{color-scheme:light;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#142634}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;touch-action:none}body{background:#7ac6ef}#scene{position:fixed;inset:0;width:100%;height:100%;display:block}.overlay{position:fixed;inset:0;pointer-events:none}.screen{position:absolute;inset:0;display:none;pointer-events:none}.screen.active{display:block}.screen>*{pointer-events:auto}button{border:0;border-radius:14px;padding:15px 17px;background:#f8fbff;color:#0b344f;font-size:15px;font-weight:750;box-shadow:0 8px 24px #001c3d33;cursor:pointer}button:active{transform:translateY(1px)}.bottom-actions{position:absolute;bottom:max(26px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;flex-direction:column;gap:10px;width:min(90vw,340px)}.bottom-actions button:not(.subtle){display:flex;justify-content:space-between;text-align:left;background:#f6fbffec;backdrop-filter:blur(15px)}.bottom-actions .subtle{background:#203c50bb;color:white;padding:10px;font-size:12px}.board,.modal,.pill,.prompt,.feedback{background:#f5fbffe0;backdrop-filter:blur(16px);border:1px solid #fff9;box-shadow:0 12px 50px #001f3f2a}.board{position:absolute;top:max(22px,env(safe-area-inset-top));right:4%;width:min(44vw,225px);max-height:49vh;overflow:hidden;border-radius:18px;padding:14px}.eyebrow{font-size:10px;letter-spacing:.15em;color:#32617d;font-weight:800}.board h2{font-size:14px;margin:4px 0 8px}.board ol{list-style:none;counter-reset:rank;padding:0;margin:0;font-size:11px}.board li{counter-increment:rank;display:flex;justify-content:space-between;gap:8px;padding:3px 0;border-bottom:1px solid #ffffff87}.board li:before{content:counter(rank)'.';font-weight:750;color:#3e728a}.board li span:first-child{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hud{position:absolute;top:max(22px,env(safe-area-inset-top));left:14px;right:14px;display:flex;justify-content:space-between;gap:8px}.pill{padding:9px 13px;border-radius:30px;font-weight:850;font-size:16px}.prompt{position:absolute;top:80px;left:50%;transform:translateX(-50%);width:min(92vw,620px);border-radius:13px;padding:13px 15px;text-align:center;font-weight:800;font-size:clamp(14px,3.7vw,20px)}.feedback{position:absolute;top:160px;left:50%;transform:translateX(-50%);width:min(87vw,470px);border-radius:12px;padding:12px;text-align:center;font-size:13px}.feedback.ok{border:2px solid #3b9c5d}.feedback.bad{border:2px solid #df625b}.hidden{display:none!important}.bottom-help{position:absolute;bottom:max(8px,env(safe-area-inset-bottom));width:100%;text-align:center;font-size:10px;font-weight:700;letter-spacing:.07em;color:white;text-shadow:0 2px 5px #132a40}.modal{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(92vw,430px);max-height:86vh;overflow:auto;border-radius:22px;padding:24px}.modal h2{font-size:24px;margin:8px 0 16px}.stat{font-size:14px;line-height:1.8;margin:12px 0}.modal label{display:block;font-weight:750;font-size:12px;margin:13px 0 6px}.modal input{width:100%;font:inherit;padding:12px;border:1px solid #9dbac8;border-radius:10px;margin-bottom:8px}.modal>button:not(.text-button){width:100%;margin-top:8px}.modal button.secondary{background:#e1edf3;box-shadow:none}.row-buttons{display:flex;gap:8px;margin-top:8px}.row-buttons button{flex:1;box-shadow:none;background:#e1edf3}.caption{font-size:12px;color:#3c6478}.text-button{background:none;box-shadow:none;text-decoration:underline;padding:9px}.score-list{padding-left:22px;line-height:2;min-height:80px}.score-list li{padding:2px 0;border-bottom:1px solid #c6dce7}.score-list span{float:right}.review-modal{max-height:82vh}.review-item{border-bottom:1px solid #b8d2df;padding:12px 0;font-size:13px}.review-item strong{display:block;margin-bottom:5px}@media(min-width:700px){.board{right:6%;width:230px}.bottom-actions{bottom:38px}}

/* Mobile legibility and visual polish */
body{background:#b5ddeb}
.board,.modal,.pill,.prompt,.feedback{border:1px solid rgba(255,255,255,.87);box-shadow:0 16px 48px rgba(9,33,52,.28)}
.board{background:rgba(244,250,252,.81)}
.pill{background:rgba(255,255,255,.89);font-size:17px}
.prompt{top:max(84px,calc(env(safe-area-inset-top) + 69px));width:min(94vw,620px);padding:17px 18px;border:2px solid rgba(255,255,255,.96);border-radius:18px;background:rgba(250,253,255,.97);color:#082c44;font-size:clamp(17px,4.4vw,22px);line-height:1.3;letter-spacing:-.01em;box-shadow:0 16px 38px rgba(0,20,40,.35)}
.feedback{top:auto;bottom:max(72px,calc(env(safe-area-inset-bottom) + 68px));background:rgba(250,253,255,.96);color:#153448;font-size:14px;font-weight:650;line-height:1.35;box-shadow:0 10px 30px rgba(0,20,40,.28)}
.bottom-help{bottom:max(12px,env(safe-area-inset-bottom));font-size:11px;letter-spacing:.1em;text-shadow:0 2px 8px #0b1b30}
.bottom-actions button:not(.subtle){background:rgba(247,252,255,.92);border:1px solid rgba(255,255,255,.96);min-height:54px;box-shadow:0 8px 28px rgba(5,24,40,.24)}
.modal{background:rgba(250,253,255,.96)}
@media(max-width:390px){.prompt{font-size:17px;padding:13px 14px}.board{padding:10px}.board ol{font-size:10px}}
