.sw-root{--navy:#1b2044;--navy-deep:#11142e;--navy-soft:#2a3060;--blush:#f9d6c8;--blush-deep:#e9a98f;--cream:#f7f5f2;--dusk:#6e74a8;--flag:#f2c14e;--font-display:"Outfit", "Segoe UI", system-ui, sans-serif;--font-body:"Karla", "Segoe UI", system-ui, sans-serif;--maxw:720px}.sw-root *{box-sizing:border-box}.sw-root{font-family:var(--font-body);color:var(--cream);background:radial-gradient(ellipse 120% 80% at 50% -10%, #2a3060 0%, transparent 60%), var(--navy-deep);-webkit-font-smoothing:antialiased;padding:clamp(20px,5vw,56px) clamp(16px,4vw,32px);line-height:1.6}.sw-root *{max-width:100%}.sw-shell{max-width:var(--maxw);margin:0 auto}.sw-root h1,.sw-root h2,.sw-root h3{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 .5em;font-weight:800;line-height:1.1}.sw-root h1{font-size:clamp(30px,6.5vw,50px)}.sw-root h2{font-size:clamp(22px,4.6vw,32px)}.sw-root h3{font-size:clamp(17px,3vw,21px);font-weight:700}.sw-root p{margin:0 0 1em}.sw-eyebrow{font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;color:var(--blush-deep);margin:0 0 14px;font-size:12px;font-weight:700}.sw-lede{color:#d8d9ea;font-size:clamp(16px,2.4vw,19px)}.sw-fine{color:var(--dusk);font-size:13.5px;line-height:1.55}.sw-btn{font-family:var(--font-display);background:var(--blush);color:var(--navy-deep);cursor:pointer;border:0;border-radius:999px;padding:15px 34px;font-size:16px;font-weight:700;transition:transform .15s,background .15s}.sw-btn:hover{background:#fff;transform:translateY(-1px)}.sw-btn:focus-visible{outline:3px solid var(--blush);outline-offset:3px}.sw-btn--ghost{color:var(--blush);background:0 0;border:1.5px solid #f9d6c859;padding:11px 22px;font-size:14px}.sw-btn--ghost:hover{color:#fff;background:#f9d6c81a}.sw-intro{text-align:center;padding:clamp(16px,4vw,40px) 0}.sw-intro h1{margin-bottom:.35em}.sw-intro .sw-lede{max-width:30em;margin:0 auto 2em}.sw-meta{color:var(--dusk);flex-wrap:wrap;justify-content:center;gap:26px;margin-top:26px;font-size:13.5px;display:flex}.sw-meta span{align-items:center;gap:7px;display:flex}.sw-meta span:before{content:"";background:var(--blush-deep);border-radius:50%;width:5px;height:5px}.sw-progress{margin-bottom:30px}.sw-progress-track{background:#ffffff1f;border-radius:2px;height:3px;overflow:hidden}.sw-progress-fill{background:var(--blush);width:0;height:100%;transition:width .35s cubic-bezier(.4,0,.2,1)}.sw-progress-label{font-size:14px;font-family:var(--font-display);justify-content:space-between;align-items:baseline;margin-bottom:11px;font-weight:600;display:flex}.sw-progress-label .sw-pillar{color:var(--blush-deep)}.sw-progress-label .sw-count{color:var(--dusk)}.sw-q h2{margin-bottom:1.1em}.sw-opts{flex-direction:column;gap:11px;margin:0;padding:0;list-style:none;display:flex}.sw-opt{text-align:left;width:100%;font-family:var(--font-body);color:var(--cream);cursor:pointer;background:#ffffff0d;border:1.5px solid #ffffff1c;border-radius:13px;padding:16px 19px;font-size:16px;transition:background .14s,border-color .14s,transform .14s;display:block}.sw-opt:hover{background:#f9d6c81c;border-color:#f9d6c873;transform:translate(3px)}.sw-opt:focus-visible{outline:3px solid var(--blush);outline-offset:2px}.sw-back{margin-top:24px}.sw-scoreblock{text-align:center;padding:8px 0 4px}.sw-score{font-family:var(--font-display);color:var(--blush);letter-spacing:-.04em;font-size:clamp(64px,17vw,110px);font-weight:800;line-height:.9}.sw-score sub{color:var(--dusk);vertical-align:baseline;margin-left:4px;font-size:.28em;font-weight:500}.sw-band{font-family:var(--font-display);color:#fff;margin-top:10px;font-size:19px;font-weight:700}.sw-band-note{color:var(--dusk);max-width:26em;margin:8px auto 0;font-size:14.5px}.sw-hypno{background:#ffffff09;border:1px solid #ffffff14;border-radius:16px;margin:34px 0 8px;padding:24px 6px 8px}.sw-hypno-title{font-family:var(--font-display);letter-spacing:.13em;text-transform:uppercase;color:var(--blush-deep);text-align:center;margin-bottom:4px;font-size:13px;font-weight:700}.sw-hypno-sub{text-align:center;color:var(--dusk);margin:0 0 14px;padding:0 14px;font-size:13px}.sw-hypno svg{width:100%;height:auto;display:block}.sw-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;margin-bottom:16px;padding:22px 24px}.sw-card h3{color:#fff;margin-bottom:.4em}.sw-card p:last-child{margin-bottom:0}.sw-card--win{border-left:3px solid var(--blush-deep)}.sw-card--tonight{background:var(--blush);color:var(--navy-deep);border:0}.sw-card--tonight h3{color:var(--navy-deep)}.sw-card--tonight .sw-kicker{color:var(--navy-soft)}.sw-kicker{font-family:var(--font-display);letter-spacing:.16em;text-transform:uppercase;color:var(--dusk);margin-bottom:9px;font-size:11.5px;font-weight:700;display:block}.sw-flag{background:#f2c14e17;border:1.5px solid #f2c14e66;border-radius:16px;margin-bottom:22px;padding:22px 24px}.sw-flag .sw-kicker,.sw-flag h3{color:var(--flag)}.sw-flag ul{margin:0;padding-left:19px}.sw-flag li{margin-bottom:9px}.sw-flag a{color:#fff;text-underline-offset:3px;text-decoration:underline}.sw-flag a:hover{color:var(--flag)}.sw-gate{background:linear-gradient(#f9d6c81a,#f9d6c808);border:1.5px solid #f9d6c847;border-radius:18px;margin-top:28px;padding:clamp(22px,4vw,34px)}.sw-gate h2{color:#fff}.sw-fields{flex-direction:column;gap:11px;margin:20px 0 16px;display:flex}.sw-row{flex-wrap:wrap;gap:11px;display:flex}.sw-row>*{flex:160px}.sw-gate input{width:100%;font-family:var(--font-body);color:var(--cream);background:#00000047;border:1.5px solid #ffffff29;border-radius:11px;padding:14px 16px;font-size:16px}.sw-gate input::placeholder{color:#7d82ae}.sw-gate input:focus{border-color:var(--blush);background:#0006;outline:none}.sw-err{color:var(--flag);margin:0 0 12px;font-size:14px;display:none}.sw-plan{counter-reset:d;margin:18px 0 0;padding:0;list-style:none}.sw-plan li{border-top:1px solid #ffffff17;align-items:baseline;gap:15px;padding:13px 0;display:flex}.sw-plan li:first-child{border-top:0}.sw-plan .sw-day{font-family:var(--font-display);letter-spacing:.1em;text-transform:uppercase;color:var(--blush-deep);flex:0 0 46px;font-size:12px;font-weight:800}.sw-footnote{border-top:1px solid #ffffff17;margin-top:34px;padding-top:20px}@media (prefers-reduced-motion:reduce){.sw-root *{transition:none!important;animation:none!important}}.sw-fade{animation:.32s cubic-bezier(.4,0,.2,1) swIn}@keyframes swIn{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}.sw-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}
