.rf{position:relative;min-height:100vh;overflow:hidden;isolation:isolate;background:#020202;color:#fff}.rf__halo{position:absolute;border-radius:50%;filter:blur(120px);z-index:0;pointer-events:none}.rf__halo--red{width:600px;height:600px;top:-10%;right:-5%;background:radial-gradient(circle,rgba(221,51,51,.2),transparent 70%);animation:rf-halo-drift 12s ease-in-out infinite alternate}.rf__halo--orange{width:500px;height:500px;bottom:-5%;left:-5%;background:radial-gradient(circle,rgba(232,115,74,.15),transparent 70%);animation:rf-halo-drift 14s ease-in-out infinite alternate-reverse}@keyframes rf-halo-drift{0%{transform:translate(0) scale(1)}to{transform:translate(40px,-30px) scale(1.15)}}.rf__grid{position:absolute;inset:0;z-index:0;pointer-events:none;background-image:repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0px,rgba(255,255,255,.04) 1px,transparent 1px,transparent 80px),repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0px,rgba(255,255,255,.025) 1px,transparent 1px,transparent 80px);-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 15%,black 85%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,black 15%,black 85%,transparent 100%)}.rf__inner{position:relative;z-index:10;max-width:720px;margin:0 auto;padding:clamp(120px,14vh,160px) clamp(20px,5vw,40px) clamp(80px,10vh,120px);display:flex;flex-direction:column;gap:40px}.rf__header{text-align:center;display:flex;flex-direction:column;align-items:center;gap:16px}.rf__eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.8rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#d33;padding:8px 20px;border:1px solid rgba(221,51,51,.3);border-radius:999px;background:#dd333314}.rf__pulse{width:8px;height:8px;border-radius:50%;background:#d33;animation:rf-pulse 2s ease-in-out infinite}@keyframes rf-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.rf__title{margin:0;font-size:clamp(2.5rem,6vw,4.5rem);font-weight:800;line-height:1.1;letter-spacing:-.03em;background:linear-gradient(90deg,#ed8e00,#d33);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.rf__stats{margin:0;font-size:.95rem;color:#ffffff80;font-weight:500;min-height:1.4em}.rf__input-area{background:#111;border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:24px}.rf__input-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.rf__input-title{margin:0;font-size:1.1rem;font-weight:700;letter-spacing:-.01em}.rf__collapse-btn{width:32px;height:32px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;color:#ffffff80;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.rf__collapse-btn:hover{background:#ffffff14;color:#fff}.rf__collapse-btn.is-collapsed svg{transform:rotate(180deg)}.rf__input-body{display:flex;flex-direction:column;gap:12px;overflow:hidden;transition:max-height .35s ease,opacity .25s ease}.rf__input-body.is-collapsed{max-height:0!important;opacity:0;margin-top:-16px}.rf__hint{margin:0;font-size:.82rem;color:#fff6;line-height:1.5}.rf__hint code{background:#ffffff14;padding:2px 6px;border-radius:4px;font-size:.78rem}.rf__textarea{width:100%;padding:14px 16px;background:#0a0a0a;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#fff;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:.9rem;line-height:1.6;resize:vertical;outline:none;transition:border-color .2s ease}.rf__textarea::-moz-placeholder{color:#fff3}.rf__textarea::placeholder{color:#fff3}.rf__textarea:focus{border-color:#dd333380}.rf__input-actions{display:flex;align-items:center;gap:16px}.rf__load-btn{padding:14px 28px;border-radius:10px;border:none;background:#ffffff14;color:#fff;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:.875rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:all .2s ease}.rf__load-btn:hover{background:#ffffff24}.rf__error{font-size:.82rem;color:#fb4141}.rf__machine{display:flex;flex-direction:column;align-items:center;gap:32px}.rf__slot-wrapper{position:relative;width:100%}.rf__glow{position:absolute;inset:-40px;border-radius:24px;background:radial-gradient(ellipse at center,rgba(221,51,51,.15),transparent 70%);opacity:0;z-index:0;pointer-events:none;transition:opacity .5s ease}.rf__glow.is-active{opacity:1;animation:rf-glow-pulse 1.5s ease-in-out infinite alternate}@keyframes rf-glow-pulse{0%{transform:scale(1);opacity:.7}to{transform:scale(1.05);opacity:1}}.rf__slot{position:relative;z-index:1;height:100px;overflow:hidden;border-radius:16px;background:#0a0a0a;border:1px solid rgba(255,255,255,.08)}.rf__slot:before,.rf__slot:after{content:"";position:absolute;left:0;right:0;height:20px;z-index:5;pointer-events:none}.rf__slot:before{top:0;background:linear-gradient(to bottom,#0A0A0A,transparent)}.rf__slot:after{bottom:0;background:linear-gradient(to top,#0A0A0A,transparent)}.rf__slot-strip{display:flex;flex-direction:column;transition:none}.rf__slot-card{height:100px;display:flex;align-items:center;justify-content:center;gap:12px;padding:0 24px;font-size:clamp(1.1rem,2.5vw,1.5rem);font-weight:700;letter-spacing:-.01em;color:#fff;flex-shrink:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rf__slot-card--idle{color:#ffffff4d;font-weight:500}.rf__slot-card--winner{animation:rf-lock-bounce .4s ease-out}.rf__tier-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:6px;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;flex-shrink:0}.rf__tier-badge--t1{background:#ffffff14;color:#fff9}.rf__tier-badge--t2{background:#d4882b26;color:#d4882b}@keyframes rf-lock-bounce{0%{transform:scale(1)}40%{transform:scale(1.06)}to{transform:scale(1)}}.rf__draw-btn{padding:22px 56px;border-radius:14px;border:none;background:linear-gradient(180deg,#d33,#ba1616);color:#fff;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-weight:800;font-size:1rem;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;white-space:nowrap;box-shadow:0 10px 30px #dd333359,inset 0 0 0 1px #ffffff14;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,opacity .2s ease}.rf__draw-btn:hover:not(:disabled){background:linear-gradient(180deg,#fb4141,#d33);box-shadow:0 16px 50px #dd33338c,inset 0 0 0 1px #ffffff1a;transform:translateY(-2px)}.rf__draw-btn:active:not(:disabled){transform:translateY(0)}.rf__draw-btn:disabled{opacity:.4;cursor:not-allowed}.rf__confetti{position:absolute;inset:0;z-index:10;pointer-events:none;overflow:visible}.rf__confetti-particle{position:absolute;top:50%;left:50%;width:var(--size, 8px);height:var(--size, 8px);border-radius:var(--br, 2px);background:var(--color);animation:rf-confetti-burst var(--dur, 1s) cubic-bezier(.25,.46,.45,.94) forwards;animation-delay:var(--delay, 0s);opacity:0}@keyframes rf-confetti-burst{0%{opacity:1;transform:translate(0) rotate(0) scale(1)}80%{opacity:1}to{opacity:0;transform:translate(var(--tx),var(--ty)) rotate(var(--rot)) scale(.2)}}.rf__slot-card--reveal-t1{background:linear-gradient(135deg,#dd333326,#ba16161a)}.rf__slot-card--reveal-t2{background:linear-gradient(135deg,#d4882b26,#dd33331a)}.rf__winners{display:flex;flex-direction:column;gap:16px}.rf__winners-title{margin:0;font-weight:700;color:#fff9;text-transform:uppercase;letter-spacing:.1em;font-size:.78rem}.rf__winners-list{display:flex;flex-direction:column;gap:8px}.rf__winner-card{display:flex;align-items:center;gap:16px;padding:16px 20px;background:#111;border:1px solid rgba(255,255,255,.08);border-radius:12px;animation:rf-winner-enter .4s ease-out}.rf__winner-number{width:32px;height:32px;border-radius:8px;background:#dd33331f;color:#d33;font-size:.82rem;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rf__winner-name{flex:1;font-weight:600;font-size:.95rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes rf-winner-enter{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.rf__reset-btn{align-self:flex-start;margin-top:8px;padding:10px 20px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:transparent;color:#ffffff80;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:.8rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:all .2s ease}.rf__reset-btn:hover{border-color:#d336;color:#d33;background:#dd33330f}@media(max-width:640px){.rf__inner{gap:28px}.rf__input-area{padding:18px}.rf__draw-btn{width:100%;padding:20px 28px}}
