body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:#f3f7fc;min-height:100vh;margin:0;padding:0}.app-container{position:relative;width:100%;min-height:100vh;background-size:cover;background-repeat:no-repeat;background-position:center;display:flex;align-items:flex-start;justify-content:center;padding-top:80px;padding-bottom:40px}.spin-inner{width:70%;max-width:900px;text-align:center;background:transparent;border-radius:0;box-shadow:none;padding:32px 40px 40px}h1{color:#2c3e50;margin:0 0 20px}.main-content{display:flex;align-items:flex-start;justify-content:center;gap:40px;margin-top:24px;flex-wrap:nowrap}.wheel-section{flex:0 0 auto}.legend-section{flex:0 0 260px;text-align:left}.legend-title{margin:0 0 10px;font-size:16px;font-weight:700;color:#333}.legend-list{list-style:none;padding:0;margin:0}.legend-item{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px}.legend-color{width:16px;height:16px;border-radius:3px;border:1px solid #999;flex-shrink:0}.legend-name{color:#222}.tnc-box{max-width:520px;margin:32px auto 0;padding:16px 20px;background:#fff;border:1px dashed #000000;border-radius:16px;box-shadow:0 3px 10px #0000000f}.tnc-title{font-size:13px;font-weight:700;color:#333;text-align:center;margin-bottom:6px}.tnc-list{font-size:12px;color:#555;line-height:1.45;padding-left:18px;text-align:left}.tnc-list li{margin-bottom:4px}@media(max-width:900px){.spin-inner{width:90%;padding:24px 16px 32px}.main-content{flex-direction:column;align-items:center;gap:24px}.legend-section{width:100%;max-width:360px;text-align:left}.legend-title{text-align:center}.legend-list{padding:0 8px}.legend-item{font-size:12px}}@media(max-width:600px){h1{font-size:20px;line-height:1.25}.spin-inner{padding-top:20px}}@media(max-width:640px){.spin-inner{width:86%;padding:24px 16px}.main-content{gap:24px;margin-top:20px}}.winner-announcement{position:relative;display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 12px;padding:10px 20px;margin-top:24px;background:#fffbe6;border:2px solid #000;border-radius:999px;font-size:16px;font-weight:700;color:#222;box-shadow:0 4px #0003;transform:rotate(-1.2deg)}.winner-announcement:before,.winner-announcement:after{content:"";position:absolute;width:26px;height:10px;background:#ffe4a3;opacity:.9;top:-8px;transform:rotate(-6deg)}.winner-announcement:before{left:18px}.winner-announcement:after{right:18px;transform:rotate(6deg)}.winner-label{padding:4px 10px;border-radius:999px;background:#ff6b6b;color:#fff;font-size:12px;letter-spacing:.06em;text-transform:uppercase}.winner-text{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px}.winner-prize{padding:4px 10px;border-radius:999px;background:#ffe66d;border:1px solid #00000066;font-weight:800}@media(max-width:600px){.winner-announcement{font-size:14px;padding:8px 14px;border-radius:18px;transform:rotate(0)}.winner-announcement:before,.winner-announcement:after{display:none}}.tnc-overlay{position:fixed;inset:0;background:#000000a6;display:flex;justify-content:center;align-items:center;z-index:99999;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.tnc-popup{background:#fff;width:90%;max-width:360px;padding:24px;border-radius:14px;box-shadow:0 12px 40px #00000040;animation:popupIn .25s ease}.tnc-popup h2{margin:0 0 12px;font-size:20px;font-weight:700;text-align:center}.tnc-popup ul{margin:0 0 20px;padding-left:18px;font-size:14px;line-height:1.5;color:#444}.tnc-popup button{width:100%;padding:12px 0;background:#000;color:#fff;border:none;border-radius:8px;font-size:15px;cursor:pointer;transition:.1s}.tnc-popup button:active{transform:scale(.97)}@keyframes popupIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.wheel-container{position:relative;width:400px;height:400px;display:flex;justify-content:center;align-items:center;margin:auto}.wheel-svg{position:relative;border-radius:50%;display:block;overflow:visible}.wheel-pointer{position:absolute;top:-22px;left:50%;transform:translate(-50%);width:0;height:0;border-left:22px solid transparent;border-right:22px solid transparent;border-top:40px solid #e74c3c;z-index:10}.spin-button{position:absolute;width:110px;height:110px;border-radius:50%;background-color:#f1c40f;border:8px solid #e67e22;font-weight:800;font-size:24px;color:#fff;cursor:pointer;z-index:11;box-shadow:0 10px 25px #00000040;text-transform:uppercase;letter-spacing:1px;transition:transform .15s ease-in-out,background-color .15s ease-in-out}.spin-button:hover:not(:disabled){background-color:#f39c12;transform:scale(1.05)}.spin-button:disabled{cursor:not-allowed}.wheel-rotor.wheel-infinite{animation:spin-forever 1.2s linear infinite}@keyframes spin-forever{to{transform:rotate(360deg)}}.dialog-backdrop{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:9999}.dialog-card{background:#fff;color:#2c3e50;width:min(92vw,420px);border-radius:14px;padding:22px;box-shadow:0 12px 36px #00000040;text-align:center}.dialog-card h3{margin:0 0 8px}.dialog-card p{margin:0 0 16px;line-height:1.45}.dialog-btn{background:#4361ee;color:#fff;border:none;border-radius:10px;padding:10px 18px;font-weight:700;cursor:pointer}.dialog-btn:hover{filter:brightness(1.05)}@keyframes pulse{0%,to{transform:scale(1);text-shadow:0 0 0 rgba(255,255,255,0)}50%{transform:scale(1.15);text-shadow:0 0 14px rgba(255,255,255,.9)}}.spin-label.pulse{animation:pulse .9s ease-in-out infinite;letter-spacing:.5px}.spin-logo{width:52px;height:52px;object-fit:contain;display:block;margin-left:auto;margin-right:auto;-webkit-user-select:none;user-select:none;pointer-events:none;filter:drop-shadow(0 2px 4px rgba(0,0,0,.25))}@keyframes logoPulse{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@keyframes logoGlow{0%,to{box-shadow:0 0 #fff0}50%{box-shadow:0 0 18px #ffffffa6}}.spin-button.spinning .spin-logo{animation:logoPulse .9s ease-in-out infinite}@keyframes spin360{to{transform:rotate(360deg)}}
