
/* HUB Giuleștean — Rapid Predictor v1.0 */
.rapid-predictor-card{
  position:relative;
  grid-column:1/-1;
  margin-top:20px;
  padding:24px;
  overflow:hidden;
  border:1px solid rgba(111,21,48,.12);
  border-radius:24px;
  background:
    radial-gradient(circle at 88% 8%,rgba(141,30,61,.08),transparent 31%),
    linear-gradient(145deg,rgba(255,255,255,.98),rgba(251,244,247,.95));
  box-shadow:0 20px 52px rgba(62,19,34,.09);
}
.rapid-predictor-card::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(115deg,transparent 0 42%,rgba(255,255,255,.58) 49%,transparent 56%);
  transform:translateX(-120%);
  opacity:.45;
}
.rapid-predictor-card.is-ready::before{animation:rapidPredictorShine 1.15s ease .2s both}
.rapid-predictor-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.rapid-predictor-copy{min-width:0}
.rapid-predictor-badge{
  display:inline-flex;align-items:center;gap:8px;
  min-height:38px;padding:0 18px;border-radius:999px;
  background:linear-gradient(135deg,#9d173d,#6f1530);
  color:#fff;font-size:11px;font-weight:950;letter-spacing:.08em;
  box-shadow:0 9px 21px rgba(111,21,48,.16)
}
.rapid-predictor-badge>span{font-size:17px;line-height:1}
.rapid-predictor-copy h3{margin:18px 0 5px;font-size:31px;line-height:1.03;letter-spacing:-.04em;color:var(--ink)}
.rapid-predictor-copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}
.rapid-predictor-copy-actions{display:flex;align-items:center;gap:14px;margin-top:10px}
.rapid-predictor-share-button{border:0;background:transparent;color:var(--muted);font:inherit;font-size:10px;font-weight:900;padding:0;cursor:pointer;transition:color .18s ease,transform .18s ease}
.rapid-predictor-share-button span{display:inline-block;margin-left:4px;transition:transform .18s ease}
.rapid-predictor-share-button:hover{color:var(--wine);transform:translateY(-1px)}
.rapid-predictor-share-button:hover span{transform:translate(2px,-2px)}
.rapid-predictor-live-dot{width:11px;height:11px;margin:10px 7px 0 0;border-radius:50%;background:var(--wine);box-shadow:0 0 0 7px rgba(111,21,48,.07);animation:rapidPredictorPulse 2s ease-in-out infinite}

.rapid-predictor-match{
  position:relative;
  margin-top:22px;
  min-height:300px;
  border:1px solid rgba(111,21,48,.11);
  border-radius:21px;
  overflow:hidden;
  background:
    linear-gradient(rgba(251,241,244,.87),rgba(251,241,244,.92)),
    url('/background-site.jpg') center 48%/cover no-repeat;
}
.rapid-predictor-match::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    linear-gradient(90deg,rgba(255,255,255,.35),transparent 27%,transparent 73%,rgba(255,255,255,.35)),
    radial-gradient(circle at 50% 90%,rgba(111,21,48,.1),transparent 45%);
}
.rapid-predictor-loading,.rapid-predictor-empty{
  position:relative;z-index:1;min-height:300px;display:grid;place-items:center;
  padding:30px;text-align:center;color:var(--muted);font-size:12px;font-weight:800
}
.rapid-predictor-match-inner{position:relative;z-index:1;padding:20px 24px 18px}
.rapid-predictor-fixture-meta{text-align:center;color:#4d4448;font-size:11px;font-weight:750}
.rapid-predictor-teams{display:grid;grid-template-columns:1fr 68px 1fr;align-items:center;gap:14px;margin-top:12px}
.rapid-predictor-team{display:grid;justify-items:center;gap:6px;min-width:0}
.rapid-predictor-team-logo{
  width:94px;height:94px;object-fit:contain;
  filter:drop-shadow(0 8px 10px rgba(60,20,35,.12));
  transition:transform .3s cubic-bezier(.2,.8,.2,1),filter .3s ease
}
.rapid-predictor-team:hover .rapid-predictor-team-logo{transform:translateY(-4px) scale(1.04);filter:drop-shadow(0 12px 13px rgba(60,20,35,.18))}
.rapid-predictor-team strong{max-width:210px;text-align:center;font-size:14px;line-height:1.18;color:#161316;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rapid-predictor-vs{display:grid;place-items:center;color:var(--wine);font-size:23px;font-style:italic;font-weight:950}
.rapid-predictor-vs::before,.rapid-predictor-vs::after{content:"";width:35px;height:1px;background:rgba(111,21,48,.13)}
.rapid-predictor-vs::before{margin-bottom:6px}.rapid-predictor-vs::after{margin-top:6px}

.rapid-predictor-countdown{
  width:min(610px,92%);margin:16px auto 0;padding:10px 13px 12px;border-radius:18px;
  background:rgba(255,250,252,.87);border:1px solid rgba(111,21,48,.08);
  box-shadow:0 10px 28px rgba(80,25,43,.07);backdrop-filter:blur(8px)
}
.rapid-predictor-countdown-label{display:flex;align-items:center;justify-content:center;gap:7px;color:var(--wine);font-size:11px;font-weight:900}
.rapid-predictor-countdown-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:8px}
.rapid-predictor-time-box{padding:8px 7px 7px;border-radius:12px;background:rgba(151,23,61,.055);text-align:center}
.rapid-predictor-time-box strong{display:block;color:var(--wine);font-size:28px;line-height:1;font-weight:950;font-variant-numeric:tabular-nums}
.rapid-predictor-time-box span{display:block;margin-top:3px;color:#6f1530;font-size:8px;font-weight:750}
.rapid-predictor-time-tbd{padding:8px 4px 3px;text-align:center;color:#5f5559;font-size:11px;font-weight:800}

.rapid-predictor-score-editor{display:grid;grid-template-columns:1fr 1px 1fr;align-items:end;gap:20px;margin:18px 9px 0}
.rapid-predictor-score-team{min-width:0}
.rapid-predictor-score-team>strong{display:block;margin-bottom:7px;text-align:center;font-size:11px;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rapid-predictor-score-divider{width:1px;height:54px;background:rgba(111,21,48,.12);align-self:end}
.rapid-predictor-stepper{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;max-width:270px;margin:auto;border:1px solid rgba(111,21,48,.16);border-radius:17px;background:#fff;overflow:hidden;box-shadow:0 7px 18px rgba(55,17,29,.05)}
.rapid-predictor-stepper button{height:52px;border:0;background:rgba(111,21,48,.035);color:#181316;font-size:25px;cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease}
.rapid-predictor-stepper button:hover{background:rgba(111,21,48,.09);color:var(--wine)}
.rapid-predictor-stepper button:active{transform:scale(.93)}
.rapid-predictor-stepper span{text-align:center;color:var(--wine);font-size:29px;font-weight:950;font-variant-numeric:tabular-nums}
.rapid-predictor-stepper button:disabled{opacity:.35;cursor:not-allowed}

.rapid-predictor-quick-wrap{margin-top:17px}
.rapid-predictor-mini-label{display:block;margin:0 2px 7px;color:#665b60;font-size:8px;letter-spacing:.16em;font-weight:900}
.rapid-predictor-quick{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
.rapid-predictor-quick button{min-height:43px;border:1px solid rgba(111,21,48,.13);border-radius:999px;background:rgba(255,255,255,.86);color:#171316;font-size:15px;font-weight:850;cursor:pointer;transition:transform .18s ease,background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease}
.rapid-predictor-quick button:hover{transform:translateY(-2px);border-color:rgba(111,21,48,.35)}
.rapid-predictor-quick button.is-selected{color:var(--wine);border-color:rgba(111,21,48,.55);background:linear-gradient(145deg,#fff,#f7e8ed);box-shadow:0 7px 16px rgba(111,21,48,.07)}

.rapid-predictor-community{margin-top:14px;border:1px solid rgba(111,21,48,.12);border-radius:18px;background:rgba(255,255,255,.72);overflow:hidden}
.rapid-predictor-community-head{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px 15px;color:#20181b;font-size:11px}
.rapid-predictor-community-head strong{font-weight:850}
.rapid-predictor-people{color:var(--wine);font-size:18px}.rapid-predictor-chevron{font-size:25px;color:#2a2024}
.rapid-predictor-popular{padding:12px 15px 14px;background:linear-gradient(135deg,rgba(247,228,234,.58),rgba(255,255,255,.5))}
.rapid-predictor-popular-title{display:flex;align-items:center;gap:7px;color:var(--wine);font-size:10px;font-weight:850}
.rapid-predictor-popular-title>span{font-size:15px}.rapid-predictor-popular-title strong{font-size:16px}
.rapid-predictor-bars{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-top:11px}
.rapid-predictor-bar-item{min-width:0}
.rapid-predictor-bar-label{display:flex;align-items:center;justify-content:space-between;gap:5px;font-size:9px;font-weight:850;color:#282023}
.rapid-predictor-bar-track{height:9px;margin-top:5px;border-radius:999px;background:rgba(111,21,48,.08);overflow:hidden}
.rapid-predictor-bar-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#8d1538,#b31749);transform-origin:left;animation:rapidPredictorBar .65s cubic-bezier(.2,.8,.2,1) both}

.rapid-predictor-submit{
  position:relative;width:100%;min-height:55px;margin-top:15px;border:0;border-radius:999px;overflow:hidden;
  background:linear-gradient(135deg,#9c173e,#6d102d);color:#fff;
  font-size:14px;font-weight:950;cursor:pointer;box-shadow:0 12px 26px rgba(111,21,48,.18);
  transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease
}
.rapid-predictor-submit::after{content:"";position:absolute;top:0;bottom:0;width:110px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.17),transparent);transform:skewX(-20deg) translateX(-230px)}
.rapid-predictor-submit:hover{transform:translateY(-2px);box-shadow:0 16px 31px rgba(111,21,48,.24)}
.rapid-predictor-submit:hover::after{animation:rapidPredictorButtonShine .75s ease}
.rapid-predictor-submit>span:first-child{display:inline-block;margin-right:9px;font-size:18px;transform:rotate(-20deg)}
.rapid-predictor-submit:disabled{opacity:.52;cursor:not-allowed;transform:none;box-shadow:none}
.rapid-predictor-message{min-height:19px;padding:7px 5px 0;text-align:center;color:var(--muted);font-size:9px;line-height:1.4}
.rapid-predictor-message.is-success{color:#3e6d4b}.rapid-predictor-message.is-error{color:#9b2035}
.rapid-predictor-card.is-locked .rapid-predictor-stepper,
.rapid-predictor-card.is-locked .rapid-predictor-quick{opacity:.55}

@keyframes rapidPredictorPulse{0%,100%{transform:scale(1);box-shadow:0 0 0 7px rgba(111,21,48,.06)}50%{transform:scale(1.08);box-shadow:0 0 0 10px rgba(111,21,48,.02)}}
@keyframes rapidPredictorShine{to{transform:translateX(120%)}}
@keyframes rapidPredictorButtonShine{to{transform:skewX(-20deg) translateX(850px)}}
@keyframes rapidPredictorBar{from{transform:scaleX(0)}to{transform:scaleX(1)}}

@media(max-width:650px){
  .rapid-predictor-card{margin-top:14px;padding:17px 14px 15px;border-radius:19px}
  .rapid-predictor-badge{min-height:34px;padding:0 14px;font-size:9px}
  .rapid-predictor-copy h3{margin-top:14px;font-size:25px}
  .rapid-predictor-copy p{font-size:10.5px}
  .rapid-predictor-live-dot{width:8px;height:8px;margin-top:8px}
  .rapid-predictor-match{margin-top:17px;min-height:270px;border-radius:17px}
  .rapid-predictor-match-inner{padding:16px 10px 13px}
  .rapid-predictor-fixture-meta{font-size:9px}
  .rapid-predictor-teams{grid-template-columns:1fr 44px 1fr;gap:5px;margin-top:10px}
  .rapid-predictor-team-logo{width:72px;height:72px}
  .rapid-predictor-team strong{max-width:120px;font-size:11px}
  .rapid-predictor-vs{font-size:18px}
  .rapid-predictor-vs::before,.rapid-predictor-vs::after{width:20px}
  .rapid-predictor-countdown{width:94%;margin-top:13px;padding:9px 9px 10px}
  .rapid-predictor-countdown-label{font-size:10px}
  .rapid-predictor-time-box strong{font-size:24px}
  .rapid-predictor-score-editor{gap:8px;margin:14px 0 0}
  .rapid-predictor-score-team>strong{font-size:9px}
  .rapid-predictor-stepper{grid-template-columns:39px 1fr 39px;border-radius:14px}
  .rapid-predictor-stepper button{height:49px;font-size:22px}
  .rapid-predictor-stepper span{font-size:25px}
  .rapid-predictor-score-divider{height:49px}
  .rapid-predictor-quick{gap:5px}
  .rapid-predictor-quick button{min-height:39px;font-size:13px}
  .rapid-predictor-community-head{padding:11px 12px;font-size:9.5px}
  .rapid-predictor-popular{padding:10px 12px 12px}
  .rapid-predictor-bars{gap:8px}
  .rapid-predictor-bar-label{font-size:8px}
  .rapid-predictor-submit{min-height:51px;font-size:12px}
}
@media(max-width:390px){
  .rapid-predictor-team-logo{width:64px;height:64px}
  .rapid-predictor-quick{grid-template-columns:repeat(2,1fr)}
  .rapid-predictor-bars{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .rapid-predictor-card::before,.rapid-predictor-live-dot,.rapid-predictor-bar-fill{animation:none!important}
  .rapid-predictor-submit:hover::after{animation:none!important}
}

.rapid-predictor-xp-rewards{display:flex;flex-wrap:wrap;gap:5px 7px;align-items:center;margin-top:9px;color:rgba(255,255,255,.62);font-size:8px;font-weight:750}
.rapid-predictor-xp-rewards span{display:inline-flex;align-items:center;padding:4px 7px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.08);color:#fff;font-size:8px;font-weight:950}
