.ctsl-wrap{max-width:1100px;margin:28px auto;padding:34px;border:1px solid #dedede;border-radius:18px;background:#fff;box-shadow:0 10px 24px rgba(15,23,42,.04)}
.ctsl-form label{display:block;font-weight:700;margin:0 0 8px}.ctsl-form input[type=text],.ctsl-form input[type=email],.ctsl-form input[type=tel],.ctsl-form input[type=file],.ctsl-form input[type=date],.ctsl-form input[type=time],.ctsl-form input[type=number],.ctsl-form textarea,.ctsl-form select{width:100%;max-width:100%;padding:14px 16px;border:1px solid #d1d5db;border-radius:12px;box-sizing:border-box;font-size:16px}.ctsl-field{margin:0 0 22px}.ctsl-checks label{display:flex;gap:10px;align-items:flex-start;font-weight:600;margin:12px 0}.ctsl-button,.ctsl-form button[type=submit]{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:15px 24px;border:none;border-radius:14px;background:#0b0b0e;color:#fff;font-size:18px;font-weight:800;cursor:pointer;text-decoration:none;min-width:210px;transition:transform .15s ease,opacity .15s ease,box-shadow .2s ease}.ctsl-button:hover,.ctsl-form button[type=submit]:hover{transform:translateY(-1px)}.ctsl-button[disabled],.ctsl-form button[disabled]{opacity:.72;cursor:not-allowed}.ctsl-button-secondary{background:#2563eb}
.ctsl-alert{padding:16px 20px;border-radius:16px;margin:0 0 22px;line-height:1.55}.ctsl-alert p:last-child{margin-bottom:0}.ctsl-alert-success{background:#eefaf0;border:1px solid #b7dfbe}.ctsl-alert-warning{background:#fff8e7;border:1px solid #ecd27b}.ctsl-alert-error{background:#fff0f0;border:1px solid #efb3b3}.ctsl-alert-info{background:#f4f7fb;border:1px solid #c8d4e5}
.ctsl-roulette-wrap{padding-top:10px}.ctsl-roulette-wrap h2{font-size:clamp(34px,5vw,76px);line-height:1.02;color:#58a6bc;text-align:center;margin:0 0 18px}.ctsl-roulette-intro{text-align:center;font-size:18px;font-weight:700;margin:6px auto 22px;max-width:760px}.ctsl-roulette{max-width:860px;margin:0 auto;text-align:center;position:relative}.ctsl-wheel-stage{position:relative;width:min(620px,100%);margin:0 auto 26px;padding-top:18px}.ctsl-wheel{display:block;width:100%;height:auto;transition:transform 4.2s cubic-bezier(.17,.83,.19,1);will-change:transform}.ctsl-wheel-pointer{position:absolute;left:50%;transform:translateX(-50%);top:-2px;width:0;height:0;border-left:18px solid transparent;border-right:18px solid transparent;border-bottom:48px solid #7c2d12;z-index:4;filter:drop-shadow(0 4px 3px rgba(0,0,0,.25))}.ctsl-spin-button{background:#7c2d12;border-radius:999px;box-shadow:0 8px 0 #4a1d06,0 14px 24px rgba(124,45,18,.18)}.ctsl-spin-button:hover{filter:brightness(1.05)}.ctsl-spin-result{max-width:760px;margin:18px auto 0}
.ctsl-roulette-theme-paella_rusa .ctsl-wheel-stage:before{content:"";position:absolute;left:50%;top:4px;z-index:3;transform:translateX(-50%) rotate(12deg);width:18px;height:74px;border-radius:12px;background:linear-gradient(#9a5a2e,#5b341a);box-shadow:0 4px 8px rgba(0,0,0,.22);pointer-events:none}.ctsl-roulette-theme-paella_rusa .ctsl-wheel-stage:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:118px;height:118px;border-radius:50%;background:radial-gradient(circle,#fff7c2 0,#facc15 52%,#92400e 55%,#92400e 61%,#fff7c2 64%);box-shadow:0 5px 14px rgba(68,32,5,.28);pointer-events:none;z-index:2}
.ctsl-paella-reveal{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%) scale(.7);opacity:0;pointer-events:none;z-index:5;transition:all .55s ease;display:flex;flex-direction:column;align-items:center;gap:10px}.ctsl-paella-reveal.is-active{opacity:1;transform:translate(-50%,-62%) scale(1)}.ctsl-paella-reveal.is-winner .ctsl-paella-reveal-card{border-color:#22c55e}.ctsl-paella-reveal-canvas{width:150px;height:150px;filter:drop-shadow(0 14px 18px rgba(0,0,0,.22))}.ctsl-paella-reveal-card{background:#fffef8;border:3px solid #f59e0b;border-radius:18px;padding:14px 16px;min-width:min(320px,82vw);box-shadow:0 18px 34px rgba(0,0,0,.16)}.ctsl-paella-reveal-card strong{display:block;font-size:22px;color:#7c2d12}.ctsl-paella-reveal-card .ctsl-paella-reveal-prize{display:block;margin-top:8px;font-size:19px;font-weight:800;color:#111827}
@media(max-width:640px){.ctsl-wrap{padding:18px;margin:16px auto;border-radius:10px}.ctsl-button,.ctsl-form button[type=submit]{width:100%}.ctsl-wheel-stage{width:min(380px,100%)}.ctsl-wheel-pointer{border-left-width:14px;border-right-width:14px;border-bottom-width:34px}.ctsl-spin-button{font-size:16px}.ctsl-roulette-theme-paella_rusa .ctsl-wheel-stage:before{height:58px;width:15px}.ctsl-paella-reveal-canvas{width:120px;height:120px}.ctsl-paella-reveal-card{min-width:240px;padding:12px 14px}}
.ctsl-multi-summary .ctsl-session-url{width:100%;max-width:760px;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;background:#fff;font-size:14px}
.ctsl-help{font-size:14px;opacity:.78;margin:7px 0 0}.ctsl-barcode-status{font-size:14px;margin-top:8px;font-weight:700}.ctsl-barcode-status-info{color:#1d4ed8}.ctsl-barcode-status-success{color:#15803d}.ctsl-barcode-status-warning{color:#a16207}.ctsl-barcode-status-error{color:#b91c1c}

.ctsl-wrap{position:relative}
.ctsl-processing-overlay{position:absolute;inset:0;display:none;align-items:center;justify-content:center;padding:22px;background:rgba(255,255,255,.92);backdrop-filter:blur(3px);z-index:30;border-radius:18px}.ctsl-is-processing .ctsl-processing-overlay{display:flex}.ctsl-processing-card{width:min(460px,92%);text-align:center;background:#fffdf8;border:1px solid #ead8ae;border-radius:24px;padding:28px 22px;box-shadow:0 18px 50px rgba(0,0,0,.14)}.ctsl-processing-card strong{display:block;font-size:24px;color:#7c2d12;margin:6px 0 10px}.ctsl-processing-card p{margin:0;color:#3f3f46;font-size:16px;line-height:1.5}.ctsl-processing-dots{display:flex;gap:8px;justify-content:center;margin-top:16px}.ctsl-processing-dots span{width:10px;height:10px;border-radius:50%;background:#d9a441;animation:ctslDotPulse 1.2s infinite ease-in-out}.ctsl-processing-dots span:nth-child(2){animation-delay:.15s}.ctsl-processing-dots span:nth-child(3){animation-delay:.3s}
.ctsl-mini-paella{position:relative;width:128px;height:128px;margin:0 auto 14px;animation:ctslPaellaSpin 2.6s linear infinite}.ctsl-mini-paella-pan{position:absolute;inset:10px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#e7cf6c 0,#d3b74e 58%,#b48320 100%);border:10px solid #1f2430;box-shadow:inset 0 0 0 5px #8a4b16}.ctsl-mini-paella-handle{position:absolute;top:50%;width:18px;height:42px;border:6px solid #1f2430;border-left:none;border-radius:0 16px 16px 0;transform:translateY(-50%)}.ctsl-mini-paella-handle-left{left:-2px;transform:translateY(-50%) scaleX(-1)}.ctsl-mini-paella-handle-right{right:-2px}.ctsl-mini-paella-ingredient{position:absolute;display:block;border-radius:50%}.ctsl-mini-paella-ingredient.ing-1{left:30px;top:38px;width:20px;height:20px;background:#5a82d6;box-shadow:16px 10px 0 0 #5a82d6}.ctsl-mini-paella-ingredient.ing-2{right:28px;top:34px;width:26px;height:14px;border-radius:18px;background:#ef8a73;transform:rotate(40deg)}.ctsl-mini-paella-ingredient.ing-3{left:48px;bottom:28px;width:28px;height:18px;border-radius:18px;background:#5b8e44;transform:rotate(-14deg)}.ctsl-mini-paella-ingredient.ing-4{right:34px;bottom:32px;width:18px;height:28px;border-radius:16px;background:#1f2937;box-shadow:inset 0 0 0 6px #d9864a}
@keyframes ctslPaellaSpin{from{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes ctslDotPulse{0%,80%,100%{transform:scale(.65);opacity:.45}40%{transform:scale(1);opacity:1}}
@media(max-width:640px){.ctsl-processing-card{padding:22px 16px;border-radius:18px}.ctsl-processing-card strong{font-size:21px}.ctsl-mini-paella{width:112px;height:112px}}
