/* CFB.gg Rivals - full-width grid + modal. Matches the site's neutral dark grey theme. */

.cfbgg-rivals-wrap{
  --rv-blue:#3d7bff; --rv-blue2:#2a5fd6;
  --rv-base:#1a1a1a;            /* the real site background */
  --rv-panel:#242424;          /* cards / tabs: a step up from base */
  --rv-panel2:#1f1f1f;          /* modal solid bg */
  --rv-hover:#2e2e2e;          /* hover state */
  --rv-line:#383838;           /* neutral grey hairline */
  --rv-ink:#f2f2f2; --rv-mut:#9a9a9a;
  max-width:1180px;margin:0 auto;padding:8px 0 40px;color:var(--rv-ink);
  font-family:Inter,system-ui,-apple-system,sans-serif;
}
.cfbgg-rivals-wrap *{box-sizing:border-box}

/* search box */
.cfbgg-rv-box{position:relative;margin:0 0 16px}
.cfbgg-rv-input{width:100%;font-family:Oswald,sans-serif;font-weight:500;font-size:19px;letter-spacing:.4px;
  background:#202020 !important;color:var(--rv-ink) !important;-webkit-text-fill-color:var(--rv-ink) !important;
  caret-color:var(--rv-blue);border:1px solid var(--rv-line);border-radius:12px;
  padding:16px 18px 16px 54px !important;outline:none;
  transition:border-color .15s,box-shadow .15s,background .15s}
.cfbgg-rv-input:hover{border-color:#4a4a4a}
.cfbgg-rv-input:focus{background:#242424 !important;border-color:var(--rv-blue);
  box-shadow:0 0 0 3px rgba(61,123,255,.18)}
.cfbgg-rv-input::placeholder{color:var(--rv-mut) !important;-webkit-text-fill-color:var(--rv-mut) !important;
  opacity:1;font-weight:400}
.cfbgg-rv-input:focus::placeholder{color:#777 !important;-webkit-text-fill-color:#777 !important}
.cfbgg-rv-mag{position:absolute;left:20px;top:50%;transform:translateY(-50%);width:19px;height:19px;
  color:var(--rv-mut);pointer-events:none;z-index:1;transition:color .15s}
.cfbgg-rv-input:focus ~ .cfbgg-rv-mag{color:var(--rv-blue)}

/* conference tabs */
.cfbgg-rv-confs{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 18px}
.cfbgg-rv-conf{font-family:Oswald,sans-serif;font-weight:600;font-size:12px;letter-spacing:.6px;text-transform:uppercase;
  padding:9px 15px;border-radius:9px;cursor:pointer;border:1px solid var(--rv-line);background:var(--rv-panel);
  color:var(--rv-mut);transition:.15s}
.cfbgg-rv-conf:hover{color:var(--rv-ink);border-color:#4a4a4a}
.cfbgg-rv-conf.on{background:linear-gradient(180deg,var(--rv-blue),var(--rv-blue2));border-color:transparent;color:#fff}

/* team grid */
.cfbgg-rv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.cfbgg-rv-card{display:flex;align-items:center;gap:12px;width:100%;text-align:left;-webkit-appearance:none;appearance:none;
  background:var(--rv-panel) !important;border:1px solid var(--rv-line) !important;
  border-radius:12px;padding:13px 15px;cursor:pointer;transition:transform .15s,box-shadow .15s,background .15s,border-color .15s;
  color:var(--rv-ink);font-family:inherit}
.cfbgg-rv-card:hover{transform:translateY(-2px);background:rgba(61,123,255,.16) !important;border-color:var(--rv-blue) !important;box-shadow:0 8px 20px rgba(0,0,0,.35)}
.cfbgg-rv-card:focus-visible{outline:2px solid var(--rv-blue);outline-offset:2px}
.cfbgg-rv-clogo{width:50px;height:32px;flex:none;position:relative;display:block}
.cfbgg-rv-clogo img{width:100%;height:100%;object-fit:contain;border-radius:6px;background:#fff;display:block}
.cfbgg-rv-cfall{display:none;width:50px;height:32px;border-radius:6px;place-items:center;
  font-family:Oswald,sans-serif;font-weight:700;font-size:13px;background:#333;color:var(--rv-ink)}
.cfbgg-rv-cname{font-family:Oswald,sans-serif;font-weight:600;font-size:16px;line-height:1.15;flex:1}
.cfbgg-rv-ccount{font-size:12px;color:var(--rv-mut);font-family:Inter,sans-serif}
.cfbgg-rv-none{color:var(--rv-mut);padding:24px;text-align:center;font-size:15px;grid-column:1/-1}

/* modal overlay (rendered outside .cfbgg-rivals-wrap, so redeclare tokens here) */
.cfbgg-rv-overlay{
  --rv-blue:#3d7bff; --rv-blue2:#2a5fd6;
  --rv-base:#1a1a1a; --rv-panel:#242424; --rv-panel2:#1f1f1f; --rv-hover:#2e2e2e; --rv-line:#383838;
  --rv-ink:#f2f2f2; --rv-mut:#9a9a9a;
  position:fixed;inset:0;background:rgba(0,0,0,.7);display:none;
  align-items:center;justify-content:center;z-index:100000;padding:24px;
  font-family:Inter,system-ui,-apple-system,sans-serif}
.cfbgg-rv-overlay *{box-sizing:border-box}
.cfbgg-rv-overlay.open{display:flex}
.cfbgg-rv-modal{position:relative;background:var(--rv-panel2);border:1px solid var(--rv-line);border-radius:16px;
  padding:26px;max-width:560px;width:100%;max-height:86vh;overflow-y:auto;-webkit-overflow-scrolling:touch;
  box-shadow:0 30px 80px rgba(0,0,0,.6);color:var(--rv-ink)}
.cfbgg-rv-close{position:absolute;top:16px;right:16px;background:transparent;border:none;
  color:var(--rv-mut);width:32px;height:32px;border-radius:8px;cursor:pointer;font-size:26px;line-height:1;
  display:grid;place-items:center;padding:0;transition:.13s}
.cfbgg-rv-close:hover{background:var(--rv-hover);color:var(--rv-ink)}
.cfbgg-rv-mhead{display:flex;align-items:center;gap:16px;margin-bottom:4px;padding-right:44px}
.cfbgg-rv-mlogo{width:74px;height:48px;border-radius:9px;object-fit:contain;background:#fff;flex:none}
.cfbgg-rv-mfall{width:74px;height:48px;border-radius:9px;display:none;place-items:center;
  font-family:Oswald,sans-serif;font-weight:700;font-size:22px;background:#333;color:var(--rv-ink);flex:none}
.cfbgg-rv-mname{font-family:Oswald,sans-serif;font-weight:700;font-size:30px;letter-spacing:.4px;line-height:1.05}
.cfbgg-rv-mmeta{color:var(--rv-mut);font-size:13px;margin-top:4px}
.cfbgg-rv-msub{font-family:Oswald,sans-serif;font-weight:600;font-size:12px;letter-spacing:1.5px;
  text-transform:uppercase;color:var(--rv-blue);margin:20px 0 12px}
.cfbgg-rv-mrivals{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.cfbgg-rv-rival{display:flex;align-items:center;gap:10px;width:100%;text-align:left;-webkit-appearance:none;appearance:none;
  background:var(--rv-panel) !important;border:1px solid var(--rv-line) !important;
  border-radius:11px;padding:10px 13px;cursor:pointer;transition:.14s;color:var(--rv-ink);font-family:inherit;
  animation:cfbggPop .2s ease backwards}
.cfbgg-rv-rival:hover{background:rgba(61,123,255,.16) !important;border-color:var(--rv-blue) !important}
.cfbgg-rv-rival:focus-visible{outline:2px solid var(--rv-blue);outline-offset:2px}
@keyframes cfbggPop{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.cfbgg-rv-rlogo{width:42px;height:27px;border-radius:5px;object-fit:contain;background:#fff;flex:none}
.cfbgg-rv-rfall{width:42px;height:27px;border-radius:5px;display:none;place-items:center;
  font-family:Oswald,sans-serif;font-weight:700;font-size:11px;background:#333;color:var(--rv-ink);flex:none}
.cfbgg-rv-rname{font-family:Oswald,sans-serif;font-weight:600;font-size:15px}

body.cfbgg-rv-lock{overflow:hidden}

@media (max-width:560px){
  .cfbgg-rv-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
  .cfbgg-rv-input{font-size:18px;padding:14px 16px 14px 48px !important}
  .cfbgg-rv-mag{left:17px;width:18px;height:18px}
  .cfbgg-rv-conf{font-size:12px;padding:8px 12px}
  .cfbgg-rv-modal{padding:20px;max-height:90vh}
  .cfbgg-rv-mname{font-size:25px}
  .cfbgg-rv-mlogo,.cfbgg-rv-mfall{width:64px;height:42px}
}
