.two-column{grid-template-columns:minmax(18rem,.78fr) minmax(26rem,1.22fr);align-items:start}
.panel{border-radius:16px}
.result-panel{min-width:0}
.wheel-stage{grid-template-columns:minmax(0,1fr);gap:14px;min-height:590px;padding:clamp(14px,2.5vw,24px)}
.catalogue-wheel-shell{position:relative;width:min(100%,420px);max-width:100%;min-width:0;aspect-ratio:1;margin:12px auto 0}
.catalogue-wheel{width:100%;border-width:10px;transition:none;will-change:transform}
.catalogue-wheel::before{inset:7px}
.catalogue-wheel .wheel-labels span{width:20%;gap:1px;overflow-wrap:normal;transform:translate(-50%,-50%) rotate(var(--label-rotate))}
.catalogue-wheel .wheel-labels strong{font-size:clamp(11px,5.3cqw,22px);line-height:.9;white-space:nowrap}
.catalogue-wheel .wheel-labels small{font-size:clamp(7px,2.5cqw,11px);line-height:1;white-space:nowrap}
.wheel-segment-icon{font-size:clamp(10px,3.6cqw,16px);line-height:1}
.catalogue-wheel-pointer{position:absolute;top:-12px;left:50%;z-index:8;width:36px;height:42px;transform:translateX(-50%);filter:drop-shadow(0 5px 6px rgba(0,0,0,.42))}
.catalogue-wheel-pointer::before{position:absolute;inset:0;content:"";background:linear-gradient(145deg,#ffdf59,#f3a715);clip-path:polygon(50% 100%,4% 0,96% 0);border-radius:4px}
.catalogue-wheel-pointer::after{position:absolute;top:5px;left:50%;width:14px;height:14px;content:"";background:#e31348;border-radius:50%;transform:translateX(-50%)}
.wheel-state-copy{display:grid;gap:3px;text-align:center}
.wheel-state-copy strong{font-size:1.05rem;color:#fff}
.wheel-state-copy span{font-size:.82rem;color:var(--muted)}
.spin-action{min-width:min(100%,260px)}
.landed-result{display:grid;grid-template-columns:minmax(0,1fr);width:min(100%,310px);max-width:100%;min-width:0;box-sizing:border-box;overflow-wrap:anywhere;gap:4px;justify-items:center;padding:18px 22px;text-align:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,201,74,.3);border-radius:14px;box-shadow:0 18px 38px rgba(0,0,0,.2)}
.landed-result .prize-icon{font-size:48px;line-height:1.1}
.landed-result span{color:var(--gold-2);font-size:.76rem;font-weight:800;text-transform:uppercase}
.landed-result h3{margin:2px 0 4px;font-size:clamp(1.35rem,3vw,1.85rem)}
.landed-result p,.landed-result small{margin:0;color:var(--muted)}
.landed-result small{overflow-wrap:anywhere}
.banner-catalogue-wheel{position:relative;container-type:inline-size;width:100%;aspect-ratio:1;overflow:hidden;border:clamp(7px,1vw,11px) solid #f7bd27;border-radius:50%;box-shadow:0 26px 58px rgba(0,0,0,.38),inset 0 0 0 3px #7b2a08,inset 0 0 0 6px #ffd65f;transform:rotate(-8deg)}
.banner-catalogue-wheel::after{position:absolute;inset:42%;z-index:4;display:grid;place-items:center;content:"";background:conic-gradient(#fff1a6,#d78605,#ffd45b,#9f5200,#fff1a6);border:2px solid #ffd65f;border-radius:50%}
.banner-catalogue-wheel .wheel-labels{position:absolute;inset:0}
.banner-catalogue-wheel .wheel-labels span{position:absolute;top:calc(50% + var(--label-y));left:calc(50% + var(--label-x));display:grid;width:20%;justify-items:center;color:#fff;line-height:1;text-align:center;text-shadow:0 2px 3px rgba(0,0,0,.45);transform:translate(-50%,-50%) rotate(var(--label-rotate))}
.banner-catalogue-wheel strong{font-size:clamp(8px,5cqw,17px);white-space:nowrap}
.banner-catalogue-wheel small{font-size:clamp(5px,2.4cqw,9px);white-space:nowrap}
.banner-catalogue-wheel .wheel-segment-icon{font-size:clamp(7px,3.2cqw,12px)}
.privacy-admin-message {padding:18px;margin-bottom:16px;white-space:pre-wrap;}
.record {padding:16px;border-bottom:1px solid #ffffff24;overflow-wrap:anywhere;display:flex;gap:12px;align-items:center;justify-content:space-between;}
@media(max-width:860px){.two-column{grid-template-columns:1fr}.claim-panel{order:1}.result-panel{order:2}.wheel-stage{min-height:0}}
@media(max-width:430px){.wheel-stage{padding:12px 8px}.catalogue-wheel{border-width:8px}.catalogue-wheel .wheel-labels strong{font-size:clamp(10px,5.2cqw,18px)}.catalogue-wheel .wheel-labels small{font-size:clamp(6px,2.4cqw,9px)}.catalogue-wheel-pointer{top:-10px;width:30px;height:35px}.landed-result{padding:14px 12px}}
@media(max-width:375px){.catalogue-wheel .wheel-labels strong{font-size:clamp(9px,5cqw,16px)}.catalogue-wheel .wheel-labels small{font-size:clamp(6px,2.3cqw,8px)}.wheel-segment-icon{font-size:clamp(8px,3.2cqw,12px)}}
@media(prefers-reduced-motion:reduce){.catalogue-wheel{transition:none!important}}
