.predict-page .vote-main{width:min(980px,100%)}
.prediction-tabs{display:flex;gap:9px;overflow-x:auto;margin-bottom:16px;padding:3px;scrollbar-width:thin}
.prediction-tabs a{min-width:150px;padding:11px 13px;border:1px solid #d9d2e1;border-radius:13px;background:#fff;color:#413849;text-decoration:none;font-size:12px;font-weight:850;box-shadow:0 3px 12px #21152e0a}
.prediction-tabs a small{display:block;margin-top:3px;color:#817787;font-size:10px;font-weight:700}
.prediction-tabs a.active{border-color:var(--public-purple);background:var(--public-purple);color:#fff}.prediction-tabs a.active small{color:#e9ddff}
.prediction-card{overflow:hidden;border:1px solid var(--public-border);border-radius:20px;background:var(--public-surface);box-shadow:0 12px 34px #21152e10}
.prediction-feature{display:grid;grid-template-columns:minmax(250px,.82fr) minmax(0,1fr);background:linear-gradient(135deg,#f2edf7,#fff)}
.prediction-feature>img,.prediction-placeholder{width:100%;height:100%;min-height:280px;max-height:390px;object-fit:cover;background:#e9e2ef}
.prediction-feature>img.prediction-feature-logo{object-fit:contain;padding:clamp(34px,7vw,72px);background:radial-gradient(circle at 78% 18%,#7c3aed,#251132 72%)}
.prediction-placeholder{display:grid;place-items:center;color:#7d6f89;font-size:64px}
.prediction-feature-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(25px,5vw,54px)}
.prediction-feature-copy h2{margin:4px 0 0;color:#241c2b;font-size:clamp(31px,5vw,50px);line-height:1;letter-spacing:-.045em}
.prediction-feature-copy>p{margin:8px 0 0;color:#655b6d;font-size:14px}.prediction-badges{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}.prediction-badges span{padding:6px 9px;border-radius:999px;background:#fff;color:#5b5262;font-size:10px;font-weight:850;box-shadow:0 2px 7px #21152e10}.prediction-badges .prediction-status{background:#fff4e5;color:#a15c00;text-transform:uppercase}.prediction-badges .is-open{background:#dcfae6;color:#067647}.prediction-badges .is-result{background:#eee6ff;color:#6d28d9}.prediction-sponsor{font-weight:850;color:#5b239f!important}.prediction-prize{padding:10px 12px;border-radius:10px;background:#fff;color:#3f3447!important;font-weight:800}
.prediction-form{padding:clamp(20px,4vw,38px);border-top:1px solid #e6e0ea}.prediction-question h3{margin:4px 0 0;font-size:clamp(24px,4vw,34px);letter-spacing:-.025em}.prediction-question p{max-width:700px;margin:8px 0 0;color:var(--public-muted);font-size:13px;line-height:1.5}
.prediction-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0}.prediction-choice label{position:relative;cursor:pointer}.prediction-choice input{position:absolute;opacity:0;pointer-events:none}.prediction-choice span{display:block;min-height:84px;padding:17px;border:2px solid #d9d2e1;border-radius:14px;background:#fff;transition:.15s}.prediction-choice strong,.prediction-choice small{display:block}.prediction-choice strong{color:#31283a;font-size:16px}.prediction-choice small{margin-top:4px;color:#766d7e;font-size:11px}.prediction-choice input:checked+span{border-color:var(--public-purple);background:#faf7ff;box-shadow:0 0 0 4px #7f56d916}.prediction-choice input:focus-visible+span{outline:3px solid #9b66ef;outline-offset:2px}
.distance-entry{margin-bottom:22px;padding:18px;border-radius:15px;background:#1a1124;color:#fff}.distance-entry>label{display:block;margin-bottom:8px;font-size:12px;font-weight:850}.distance-control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center}.distance-control input{width:100%;height:68px;padding:0 16px;border:0;border-radius:12px;background:#fff;color:#241c2b;font-size:31px;font-weight:900;outline:0}.distance-control input:focus{box-shadow:0 0 0 4px #a970ff}.distance-control span{font-size:16px;font-weight:850}
.participant-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.participant-grid .wide{grid-column:1/-1}.participant-grid label{display:block;margin-bottom:7px;color:#302738;font-size:12px;font-weight:850}.participant-grid input{width:100%;height:50px;padding:0 13px;border:1px solid #cbc3d2;border-radius:11px;background:#fff;font:inherit;outline:0}.participant-grid input:focus{border-color:var(--public-purple);box-shadow:0 0 0 4px #7f56d918}.participant-grid small{display:block;margin-top:5px;color:#7a7280;font-size:10px}
.selfie-box{margin-top:20px;padding:18px;border:1px dashed #9b6ec5;border-radius:15px;background:#faf7ff}.selfie-box p{margin:4px 0 13px;color:#6d6375;font-size:11px}.selfie-box input[type=file]{max-width:100%;font-size:12px}.selfie-preview{display:flex;align-items:center;gap:12px;margin-top:12px}.selfie-preview img{width:78px;height:78px;object-fit:cover;border-radius:12px}.selfie-preview span{overflow-wrap:anywhere;color:#5d5265;font-size:11px;font-weight:750}
.privacy-layer{margin-top:20px;padding:16px;border:1px solid #d9c9e8;border-radius:14px;background:#fbf9fd;color:#55485f;font-size:11px;line-height:1.55}.privacy-layer strong{display:block;color:#382b43;font-size:13px}.privacy-layer p{margin:5px 0}.privacy-layer a{color:var(--public-purple-deep);font-weight:800}
.prediction-check{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;align-items:start;margin-top:14px;color:#5d5464;font-size:11px;line-height:1.5}.prediction-check input{width:19px;height:19px;margin:0;accent-color:var(--public-purple)}.selfie-consent{margin-top:14px;padding-top:12px;border-top:1px solid #e5dcec}.prediction-submit{margin-top:20px;min-height:56px;font-size:15px}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.prediction-recorded,.prediction-closed,.prediction-result{padding:clamp(28px,5vw,50px);border-top:1px solid #e6e0ea}.prediction-recorded{display:grid;grid-template-columns:64px minmax(0,1fr);gap:17px;align-items:center;background:#f2fbf6}.recorded-mark{display:grid;width:62px;height:62px;place-items:center;border-radius:50%;background:#12b76a;color:#fff;font-size:28px;font-weight:900}.prediction-recorded h3,.prediction-result h3{margin:3px 0 0;font-size:clamp(28px,5vw,46px);letter-spacing:-.04em}.prediction-recorded p,.prediction-closed p,.prediction-result>p{margin:7px 0 0;color:#655d6c;font-size:12px;line-height:1.5}.prediction-closed{text-align:center;background:#faf9fb}.prediction-closed h3{margin:0;font-size:25px}.prediction-result{background:linear-gradient(135deg,#f8f2ff,#fff)}.prediction-result>h3{color:#6d28d9}.public-winner{display:flex;align-items:center;gap:16px;margin-top:20px;padding:16px;border:1px solid #d9c5ef;border-radius:16px;background:#fff}.public-winner img{width:100px;height:100px;object-fit:cover;border-radius:13px}.public-winner span,.public-winner strong{display:block}.public-winner span{color:#776c80;font-size:10px;font-weight:850;text-transform:uppercase}.public-winner strong{margin-top:3px;font-size:22px}.public-winner p{margin:4px 0 0;color:#625869;font-size:12px}.state-action{max-width:260px;margin:18px auto 0;text-decoration:none}
.privacy-page{padding-top:4px}.privacy-document{margin-top:18px;padding:clamp(22px,5vw,46px);border:1px solid var(--public-border);border-radius:20px;background:#fff;box-shadow:0 10px 30px #21152e0d}.privacy-document h2{margin:28px 0 7px;font-size:21px}.privacy-document h2:first-child{margin-top:0}.privacy-document p{margin:0;color:#5d5563;font-size:13px;line-height:1.65}.privacy-document a{color:var(--public-purple-deep);font-weight:800}.privacy-version{margin-top:30px!important;padding-top:16px;border-top:1px solid #e9e4ed;font-size:11px!important}
@media(max-width:720px){.prediction-feature{grid-template-columns:1fr}.prediction-feature>img,.prediction-placeholder{min-height:0;height:250px}.prediction-choice,.participant-grid{grid-template-columns:1fr}.participant-grid .wide{grid-column:auto}.prediction-feature-copy{padding:24px}.prediction-form{padding:20px 16px}.distance-control input{height:60px;font-size:27px}}
@media(max-width:420px){.prediction-feature>img,.prediction-placeholder{height:220px}.distance-control{grid-template-columns:1fr}.distance-control span{font-size:12px}.prediction-recorded{grid-template-columns:48px minmax(0,1fr)}.recorded-mark{width:46px;height:46px}.public-winner{align-items:flex-start}.public-winner img{width:76px;height:76px}}

.entry-reference{display:inline-flex;flex-direction:column;gap:3px;margin:8px 0 6px;padding:10px 14px;border:1px solid #c9b4e8;border-radius:12px;background:#faf7ff}
.entry-reference small{color:#6c6473;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.entry-reference strong{color:var(--public-purple-deep);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:20px;letter-spacing:.06em}

.prediction-entrant-picker{margin:22px 0;padding:18px;border:1px solid #d9c9e8;border-radius:15px;background:#faf7ff}
.prediction-entrant-picker label{display:block;margin-bottom:8px;color:#302738;font-size:13px;font-weight:900}
.prediction-entrant-picker select{width:100%;min-height:54px;padding:0 42px 0 13px;border:2px solid #cbb9df;border-radius:11px;background:#fff;color:#241c2b;font:inherit;font-weight:800;outline:0}
.prediction-entrant-picker select:focus{border-color:var(--public-purple);box-shadow:0 0 0 4px #7f56d918}
.prediction-entrant-picker small{display:block;margin-top:7px;color:#756b7d;font-size:10px;font-weight:750}
.recorded-tractor-label{display:block;margin-top:2px;color:#667085;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
.recorded-distance{margin-top:6px!important;color:#067647!important;font-size:16px!important}

/* Build 24: guided continuation after a completed prediction */
.prediction-next-step{margin:0;padding:22px clamp(20px,4vw,38px);border-top:1px solid #d8c7ea;background:linear-gradient(135deg,#fff8ef,#fff)}
.prediction-next-step>span{display:block;color:#a13b0e;font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.prediction-next-step h3{margin:4px 0 0;color:#2e2535;font-size:23px}
.prediction-next-step p{margin:6px 0 0;color:#675e70;font-size:12px;line-height:1.5}
.prediction-next-step a{display:flex;min-height:52px;align-items:center;justify-content:center;gap:10px;margin-top:14px;padding:11px 15px;border-radius:11px;background:linear-gradient(135deg,#087a54,#065f46);color:#fff!important;font-size:14px;font-weight:900;text-decoration:none}
.prediction-next-step a b{color:#fff!important;font-size:20px}
