:root{--bg-color: #f5f5f0;--panel-bg: #ffffff;--text-color: #333;--accent-gold: #ffd700;--p1-color: #228b22;--p2-color: #d32f2f;--shadow: 0 4px 6px rgba(0, 0, 0, .1)}body{margin:0;padding:0;font-family:Inter,sans-serif;background-color:var(--bg-color);display:flex;justify-content:center;align-items:center;min-height:100vh;color:var(--text-color)}#app{display:flex;flex-direction:column;align-items:center;gap:20px}.header{text-align:center}h1{font-size:2rem;margin-bottom:.5rem;color:#444}.scores{display:flex;gap:20px;font-size:1.2rem;font-weight:700}.score.green{color:var(--p1-color)}.score.red{color:var(--p2-color)}.game-container{display:flex;gap:30px;align-items:flex-start;padding:20px;background:var(--panel-bg);border-radius:20px;box-shadow:0 10px 25px #0000001a}canvas{border-radius:50%;box-shadow:inset 0 0 20px #0003,0 5px 15px #0003;cursor:pointer}.dashboard{width:250px;padding:20px;background:#fdfdfd;border-radius:15px;border:1px solid #eee;display:flex;flex-direction:column;gap:15px}.dashboard h2{font-size:1.2rem;margin:0 0 10px;border-bottom:2px solid var(--accent-gold);padding-bottom:5px}.chance-item{display:flex;justify-content:space-between;font-size:1rem}.chance-value{font-weight:700}.controls{margin-top:20px;display:flex;flex-direction:column;gap:10px;align-items:center}#restartBtn,#passBtn{background-color:#444;color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:1rem;transition:background .2s}#restartBtn:hover,#passBtn:hover{background-color:#666}#passBtn:disabled{background-color:#ccc;cursor:not-allowed;color:#888}#statusMsg{font-weight:700;font-size:1.1rem;color:#555;margin:0}.splash-image{max-width:100%;max-height:200px;border-radius:12px;margin-bottom:20px;box-shadow:0 4px 12px #0003}.modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:100;opacity:1;transition:opacity .5s}.modal.hidden{opacity:0;pointer-events:none}.modal-content{background:#fff;padding:40px;border-radius:15px;text-align:center;box-shadow:0 10px 30px #0000004d;z-index:101;animation:popIn .5s cubic-bezier(.175,.885,.32,1.275)}.modal-content h2{font-size:2.5rem;color:#228b22;margin-bottom:10px}.modal-content button{margin-top:20px;padding:10px 25px;font-size:1.2rem;background:#228b22;color:#fff;border:none;border-radius:5px;cursor:pointer}@keyframes popIn{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.balloons{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none}.balloon{position:absolute;bottom:-100px;width:50px;height:60px;background:var(--c);opacity:.8;box-shadow:inset -5px -5px 10px #0000001a;border-radius:50%;left:calc(10% + 15% * var(--i, 0))}.balloon:after{content:"";position:absolute;bottom:-10px;left:24px;width:2px;height:20px;background:#555}.balloon:nth-child(1){left:10%;animation:floatUp 4s ease-in infinite var(--d)}.balloon:nth-child(2){left:30%;animation:floatUp 5s ease-in infinite var(--d)}.balloon:nth-child(3){left:50%;animation:floatUp 4.5s ease-in infinite var(--d)}.balloon:nth-child(4){left:70%;animation:floatUp 5.5s ease-in infinite var(--d)}.setup-content{background:#fff;min-width:300px}.form-group{margin:15px 0;text-align:left}.form-group label{display:block;margin-bottom:5px;font-weight:700;color:#333}.form-group input{width:100%;padding:8px;border:1px solid #ccc;border-radius:5px;font-size:1rem}.history-panel{margin-top:20px;background:#fffc;padding:10px;border-radius:10px;max-height:200px;overflow-y:auto}.history-panel h3{margin-top:0;font-size:1rem;color:#333;display:flex;justify-content:space-between;align-items:center}#historyList{list-style:none;padding:0;margin:0;font-size:.85rem}#historyList li{padding:5px 0;border-bottom:1px solid #eee}.small-btn{padding:2px 6px;font-size:.7rem;background:#ccc;color:#fff}.bubble{position:absolute;background:#fff;border:3px solid #ffd700;border-radius:12px;padding:10px 15px;box-shadow:0 4px 15px #0003;z-index:200;pointer-events:none;min-width:120px;text-align:center;transform:translate(-50%,-120%);transition:opacity .3s,transform .3s}.bubble:after{content:"";position:absolute;top:100%;left:50%;margin-left:-8px;border-width:8px;border-style:solid;border-color:#ffd700 transparent transparent transparent}.bubble.hidden{opacity:0;transform:translate(-50%,-100%) scale(.8)}.bubble h3{margin:0;color:#ff8f00;font-size:1rem}.bubble p{margin:5px 0 0;font-size:.85rem;color:#555;font-weight:700}.balloon:nth-child(5){left:90%;animation:floatUp 4s ease-in infinite var(--d)}@keyframes floatUp{0%{transform:translateY(0) rotate(0);opacity:0}10%{opacity:1}to{transform:translateY(-100vh) rotate(20deg);opacity:0}}
