.roulette-page-container *{box-sizing:border-box;margin:0;padding:0}.roulette-page-container{flex-direction:column;justify-content:center;align-items:center;min-height:calc(100vh - 64px);padding:20px;display:flex;position:relative}#roulette-app{background:#1a1a1a;border:2px solid #444;border-radius:8px;flex-direction:row;width:100%;max-width:1400px;height:80vh;max-height:800px;display:flex;position:relative;overflow:hidden}#roulette-game-area{flex:1;position:relative;overflow:hidden}#roulette-canvas{cursor:pointer;background:#1a1a1a;width:100%;height:100%;display:block}.fullscreen-btn{color:#fff;cursor:pointer;z-index:10;background:#4caf50;border:none;border-radius:8px;align-items:center;gap:8px;margin:16px auto 0;padding:12px 30px;font-size:16px;font-weight:700;transition:all .3s;display:flex;position:relative}.fullscreen-btn:hover{background:#45a049;transform:translateY(-2px);box-shadow:0 5px 15px rgba(76,175,80,.4)}.fullscreen-btn:active{transform:translateY(0)}#roulette-app:-webkit-full-screen{border:none;border-radius:0;max-width:100%;height:100vh;max-height:100%}#roulette-app:fullscreen{border:none;border-radius:0;max-width:100%;height:100vh;max-height:100%}.roulette-page-container:has(#roulette-app:-webkit-full-screen) .fullscreen-btn{display:none}.roulette-page-container:has(#roulette-app:fullscreen) .fullscreen-btn{display:none}
#roulette-winner-display{z-index:500;background:rgba(0,0,0,.9);border:3px solid gold;border-radius:15px;justify-content:center;align-items:center;min-width:300px;padding:30px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 10px 30px rgba(0,0,0,.5)}#roulette-winner-display.hidden{display:none}#roulette-winner-content{text-align:center;color:#fff;z-index:501}#roulette-winner-content h1{margin-bottom:20px;font-size:3rem;animation:1s ease-in-out infinite alternate bounce}#roulette-winner-name{color:gold;margin-bottom:30px;font-size:2rem;font-weight:700}#roulette-winner-buttons{justify-content:center;gap:15px;display:flex}.roulette-winner-btn{color:#fff;cursor:pointer;background:#4caf50;border:none;border-radius:8px;min-width:150px;padding:12px 24px;font-size:16px;font-weight:700;transition:all .3s}.roulette-winner-btn:hover{background:#45a049;transform:translateY(-2px);box-shadow:0 5px 15px rgba(0,0,0,.3)}.roulette-winner-btn.secondary{background:#ff9800}.roulette-winner-btn.secondary:hover{background:#f57c00}.roulette-settings-popup{background:#2d2d2d;border-right:2px solid #444;flex-direction:column;width:300px;min-width:280px;max-width:320px;height:100%;display:flex;overflow-y:auto}.roulette-settings-header{background:#333;border-bottom:1px solid #444;border-radius:8px 8px 0 0;padding:8px 15px}.roulette-settings-header h4{color:#fff;margin:0;font-size:16px}.roulette-settings-content{flex-direction:column;gap:15px;padding:12px;display:flex}.roulette-setting-group{margin-bottom:8px}.roulette-setting-group label{color:#ccc;margin-bottom:8px;font-size:14px;display:block}.roulette-setting-group textarea,.roulette-setting-group select,.roulette-setting-group input{color:#fff;background:#1a1a1a;border:1px solid #555;border-radius:5px;width:100%;padding:10px;font-size:14px}.roulette-setting-group textarea{resize:vertical;height:400px;font-family:inherit}.roulette-utility-buttons{gap:8px;margin-bottom:8px;display:flex}.roulette-utility-btn{color:#fff;cursor:pointer;background:#444;border:1px solid #555;border-radius:4px;flex:1;padding:6px 12px;font-size:16px;transition:all .2s}.roulette-utility-btn:hover{background:#555;transform:translateY(-1px)}.roulette-utility-btn:active{transform:translateY(0)}.roulette-setting-group textarea.valid{border-color:#4caf50}.roulette-setting-group textarea.invalid{border-color:#f44336}.roulette-control-buttons{gap:10px;display:flex}.roulette-control-btn{color:#fff;cursor:pointer;background:#444;border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;height:50px;padding:12px 20px;font-size:18px;transition:all .2s;display:flex}.roulette-control-btn:hover{background:#555;transform:translateY(-2px)}.roulette-control-btn:active{transform:translateY(0)}.roulette-control-btn.primary{background:#4caf50}.roulette-control-btn.primary:hover{background:#45a049}.roulette-control-btn:disabled{color:#666;cursor:not-allowed;background:#333;transform:none}.roulette-speed-selector{background:rgba(255,255,255,.05);border-radius:6px;justify-content:center;gap:15px;padding:10px;display:flex}.roulette-speed-option{color:#ccc;cursor:pointer;align-items:center;gap:6px;transition:color .2s;display:flex}.roulette-speed-option:hover{color:#fff}.roulette-speed-option input[type=radio]{cursor:pointer;width:auto}.roulette-speed-option input[type=radio]:checked+label{color:#4caf50;font-weight:700}#roulette-toast-container{z-index:1100;flex-direction:column;gap:10px;display:flex;position:absolute;top:20px;right:20px}.toast{color:#fff;background:#333;border-left:4px solid #4caf50;border-radius:8px;min-width:200px;padding:12px 20px;animation:.3s ease-out slideIn;box-shadow:0 4px 12px rgba(0,0,0,.3)}.toast.error{border-left-color:#f44336}.toast.success{border-left-color:#4caf50}.toast.info{border-left-color:#2196f3}#roulette-fireworks-container{pointer-events:none;z-index:500;position:absolute;top:0;bottom:0;left:0;right:0}.firework{border-radius:50%;width:6px;height:6px;animation:1s ease-out forwards explode;position:absolute}@media (max-width:768px){#roulette-app{flex-direction:column}.roulette-settings-popup{border-bottom:2px solid #444;border-right:none;width:100%;max-width:100%;height:auto}.roulette-control-btn{height:45px;padding:10px 15px;font-size:16px}#roulette-winner-content h1{font-size:2rem}#roulette-winner-name{font-size:1.5rem}.roulette-speed-selector{flex-direction:row;gap:10px}}@media (max-width:500px){.roulette-control-buttons{flex-wrap:wrap}.roulette-control-btn{flex:45%}}
@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-20px)}}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes explode{0%{opacity:1;transform:scale(0)}to{opacity:0;transform:scale(20)}}
