/* CFB PR4 — canonical recommendation propagation.
   Presentation only; all values come from CFB_BETTING_IQ schema 2.3. */
.cfb-canonical-decision{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(118px,1fr));
  gap:7px;
  width:100%;
  margin:12px 0;
  padding:9px;
  border:1px solid rgba(88,232,178,.18);
  border-radius:12px;
  background:linear-gradient(135deg,rgba(8,26,39,.9),rgba(9,20,35,.82));
}
.cfb-canonical-decision>span{
  display:flex;
  min-width:0;
  flex-direction:column;
  padding:8px;
  border-radius:9px;
  background:rgba(148,163,184,.07);
}
.cfb-canonical-decision small{
  font-size:8px;
  font-weight:900;
  letter-spacing:.1em;
  opacity:.55;
}
.cfb-canonical-decision b{
  overflow-wrap:anywhere;
  margin-top:3px;
  font-size:11px;
  line-height:1.25;
}
.cfb-canonical-decision em{
  overflow-wrap:anywhere;
  margin-top:3px;
  font-size:9px;
  font-style:normal;
  line-height:1.3;
  opacity:.65;
}
.cfb-canonical-decision .why{grid-column:span 2}
.cfb-canonical-decision>button{
  min-height:48px;
  align-self:stretch;
  border:1px solid rgba(88,232,178,.28);
  border-radius:9px;
  background:rgba(88,232,178,.1);
  color:inherit;
  font:inherit;
  font-size:10px;
  font-weight:900;
  cursor:pointer;
}
.cfb-canonical-decision>button:hover,
.cfb-canonical-decision>button:focus-visible{
  border-color:#58e8b2;
  background:rgba(88,232,178,.17);
  outline:none;
}
.football-command-picks .cfb-canonical-decision,
.cfb-ranked-strip .cfb-canonical-decision{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
/* The shared command strip is itself a grid. Keep the nested CFB decision
   component in one full-width grid cell and reset inherited placement rules. */
.cfb-command-strip .football-command-picks>article>.cfb-canonical-decision{
  grid-column:1/-1;
  grid-row:auto;
  min-width:0;
}
.cfb-command-strip .cfb-canonical-decision>span{
  grid-column:auto;
  color:inherit;
  font-size:inherit;
}
.cfb-command-strip .cfb-canonical-decision>.why{grid-column:1/-1}
.cfb-command-strip .cfb-canonical-decision>button{
  grid-column:auto;
  grid-row:auto;
  justify-self:stretch;
  margin-top:0;
}
.football-command-picks .cfb-canonical-decision .why,
.cfb-ranked-strip .cfb-canonical-decision .why{grid-column:1/-1}
@media(max-width:700px){
  .cfb-canonical-decision{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cfb-canonical-decision .why{grid-column:1/-1}
}
@media(max-width:420px){
  .cfb-canonical-decision{grid-template-columns:1fr}
  .cfb-canonical-decision .why{grid-column:auto}
}

/* CFB Weekly IQ — compact betting-board front door. */
.cfb-weekly-purpose,
.cfb-weekly-feature,
.cfb-weekly-board,
.cfb-weekly-explainer{
  border:1px solid rgba(94,224,255,.24);
  border-radius:14px;
  background:#0f2031;
  color:#f8fbff;
}
.cfb-weekly-purpose{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:18px 20px;
}
.cfb-weekly-purpose h1,
.cfb-weekly-feature h2,
.cfb-weekly-board h2,
.cfb-weekly-purpose b,
.cfb-weekly-feature b,
.cfb-weekly-board b,
.cfb-weekly-explainer b{
  color:#f8fbff!important;
}
.cfb-weekly-purpose h1{margin:4px 0 5px;font-size:28px;line-height:1.08}
.cfb-weekly-purpose p,
.cfb-weekly-board header p,
.cfb-weekly-feature p,
.cfb-weekly-explainer p{margin:0;color:#c9d5e0;line-height:1.45}
.cfb-weekly-purpose>div:first-child{max-width:760px}
.cfb-weekly-freshness{
  display:grid;
  flex:0 0 auto;
  gap:3px;
  padding-left:20px;
  border-left:1px solid rgba(148,163,184,.28);
  color:#c9d5e0;
  font-size:12px;
}
.cfb-weekly-freshness b{color:#75e4b7!important;letter-spacing:.05em}
.cfb-weekly-feature{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);
  margin-top:13px;
  overflow:hidden;
}
.cfb-weekly-feature-main{padding:18px 20px}
.cfb-weekly-feature-matchup,
.cfb-weekly-matchup{display:flex;align-items:center;gap:11px;min-width:0}
.cfb-weekly-feature-matchup{margin:10px 0}
.cfb-weekly-logos{display:flex;align-items:center;flex:0 0 auto}
.cfb-weekly-logos img,
.cfb-weekly-logos .cfb-team-fallback{
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  object-fit:contain;
  border-radius:0;
  background:transparent;
  color:#f8fbff;
  filter:drop-shadow(0 4px 5px rgba(0,0,0,.28));
}
.cfb-weekly-logos img+img,
.cfb-weekly-logos .cfb-team-fallback+.cfb-team-fallback{margin-left:6px}
.cfb-weekly-feature-matchup>span,
.cfb-weekly-matchup>span{display:grid;gap:3px;min-width:0}
.cfb-weekly-feature-matchup b{font-size:16px}
.cfb-weekly-feature-matchup small,
.cfb-weekly-matchup small,
.cfb-weekly-pick span,
.cfb-weekly-metric span{color:#c9d5e0;font-size:11px}
.cfb-weekly-feature-pick{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.cfb-weekly-feature-pick h2{margin:0;font-size:27px;line-height:1.1}
.cfb-weekly-feature-pick>span{
  padding:5px 9px;
  border-radius:999px;
  background:#433613;
  color:#ffd166;
  font-size:11px;
  font-weight:900;
}
.cfb-weekly-feature-main>p{margin-top:7px}
.cfb-weekly-evidence{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:13px}
.cfb-weekly-evidence>span{display:grid;gap:4px;padding:11px 12px;border-radius:9px;background:#172c40}
.cfb-weekly-evidence small,
.cfb-weekly-feature-facts small{color:#c9d5e0;font-size:10px;font-weight:900;letter-spacing:.06em}
.cfb-weekly-feature-facts{display:grid;grid-template-columns:1fr 1fr;border-left:1px solid rgba(148,163,184,.28)}
.cfb-weekly-feature-facts>span{display:grid;align-content:center;gap:5px;padding:16px;border-bottom:1px solid rgba(148,163,184,.24)}
.cfb-weekly-feature-facts>span:nth-child(odd){border-right:1px solid rgba(148,163,184,.24)}
.cfb-weekly-feature-facts>span:nth-last-child(-n+2){border-bottom:0}
.cfb-weekly-feature-facts b{font-size:17px}
.cfb-weekly-feature-facts em{color:#c9d5e0;font-size:11px;font-style:normal}
.cfb-weekly-board{margin-top:13px;overflow:hidden}
.cfb-weekly-board>header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid rgba(148,163,184,.28)}
.cfb-weekly-board h2{margin:0;font-size:18px}
.cfb-weekly-board>header>span{color:#c9d5e0;font-size:12px}
.cfb-weekly-rec-row{
  display:grid;
  grid-template-columns:minmax(220px,1.25fr) minmax(175px,.9fr) minmax(100px,.55fr) minmax(92px,.48fr) 84px;
  gap:12px;
  align-items:center;
  padding:12px 15px;
  border-bottom:1px solid rgba(148,163,184,.24);
}
.cfb-weekly-rec-row:last-child{border-bottom:0}
.cfb-weekly-rec-row .cfb-weekly-logos img,
.cfb-weekly-rec-row .cfb-weekly-logos .cfb-team-fallback{width:36px;height:36px}
.cfb-weekly-pick,
.cfb-weekly-metric{display:grid;gap:3px}
.cfb-weekly-metric b{overflow-wrap:anywhere}
.cfb-weekly-rec-row>button,
.cfb-weekly-actions button{
  min-height:38px;
  border:1px solid #6fe4f2;
  border-radius:8px;
  background:rgba(111,228,242,.08);
  color:#dffbff;
  font:inherit;
  font-weight:900;
  cursor:pointer;
}
.cfb-weekly-rec-row>button:hover,
.cfb-weekly-rec-row>button:focus-visible,
.cfb-weekly-actions button:hover,
.cfb-weekly-actions button:focus-visible{background:rgba(111,228,242,.18);outline:2px solid #6fe4f2;outline-offset:2px}
.cfb-weekly-explainer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:11px;padding:12px 15px;background:#172c40}
.cfb-weekly-actions{display:flex;gap:8px;flex:0 0 auto}
.cfb-weekly-actions button{padding:8px 12px;white-space:nowrap}
.cfb-secondary-intel{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:900px){
  .cfb-weekly-feature{grid-template-columns:1fr}
  .cfb-weekly-feature-facts{border-top:1px solid rgba(148,163,184,.28);border-left:0}
  .cfb-weekly-rec-row{grid-template-columns:minmax(200px,1.15fr) minmax(165px,1fr) 110px 84px}
  .cfb-weekly-fair{display:none}
}
@media(max-width:650px){
  .cfb-weekly-purpose,
  .cfb-weekly-board>header,
  .cfb-weekly-explainer{align-items:flex-start;flex-direction:column}
  .cfb-weekly-freshness{padding:10px 0 0;border-top:1px solid rgba(148,163,184,.28);border-left:0}
  .cfb-weekly-purpose h1{font-size:24px}
  .cfb-weekly-evidence{grid-template-columns:1fr}
  .cfb-weekly-rec-row{grid-template-columns:1fr auto}
  .cfb-weekly-rec-row .cfb-weekly-pick{grid-column:1}
  .cfb-weekly-rec-row .cfb-weekly-metric{display:none}
  .cfb-weekly-rec-row>button{grid-column:2;grid-row:1 / span 2}
  .cfb-weekly-actions{width:100%;flex-direction:column}
  .cfb-weekly-actions button{width:100%}
  .cfb-secondary-intel{grid-template-columns:1fr}
}

/* CFB PR2 — recommendation-first card hierarchy */
.cfb-recommendation-first{display:grid;gap:14px}
.cfb-rec-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.cfb-rec-summary article{
  display:grid;
  gap:4px;
  min-height:104px;
  padding:15px;
  border:1px solid rgba(148,163,184,.28);
  border-radius:10px;
  background:#14283a;
  color:#f8fbff;
}
.cfb-rec-summary article.official{border-color:rgba(88,226,151,.55);background:linear-gradient(145deg,#12352d,#14283a)}
.cfb-rec-summary article.lean{border-color:rgba(255,209,102,.52);background:linear-gradient(145deg,#392f18,#14283a)}
.cfb-rec-summary article.pass{border-color:rgba(148,163,184,.4)}
.cfb-rec-summary small{color:#c9d5e0;font-size:10px;font-weight:900;letter-spacing:.08em}
.cfb-rec-summary b{color:#fff;font-size:29px;line-height:1}
.cfb-rec-summary span{color:#dce6ef;font-size:11px}
.cfb-rec-lane{
  overflow:hidden;
  border:1px solid rgba(148,163,184,.28);
  border-radius:12px;
  background:#0f2132;
}
.cfb-rec-lane>header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:15px 17px;
  border-bottom:1px solid rgba(148,163,184,.24);
}
.cfb-rec-lane>header>div{display:flex;align-items:center;gap:10px}
.cfb-rec-lane>header>div>span{
  display:grid;
  place-items:center;
  width:31px;
  height:31px;
  border-radius:999px;
  background:#294158;
  color:#fff;
  font-size:13px;
  font-weight:900;
}
.cfb-rec-lane-official>header>div>span{background:#1d694f;color:#e7fff5}
.cfb-rec-lane-lean>header>div>span{background:#725715;color:#fff1bf}
.cfb-rec-lane h2{margin:0;color:#fff;font-size:19px}
.cfb-rec-lane>header p{max-width:650px;margin:0;color:#c9d5e0;font-size:12px;text-align:right}
.cfb-rec-lane .cfb-weekly-card-grid{padding:14px}
.cfb-rec-card{
  border-color:rgba(148,163,184,.28)!important;
  background:#14283a!important;
  color:#f8fbff!important;
}
.cfb-rec-card-official{border-color:rgba(88,226,151,.48)!important}
.cfb-rec-card-lean{border-color:rgba(255,209,102,.42)!important}
.cfb-rec-card header h3,
.cfb-rec-card header small,
.cfb-rec-card .cfb-bet-meta,
.cfb-rec-card .cfb-bet-meta span,
.cfb-rec-card .cfb-bet-meta b{color:#f8fbff}
.cfb-rec-tier{display:block;margin-bottom:5px;color:#9fe8ff;font-size:10px;font-weight:900;letter-spacing:.07em}
.cfb-rec-card-official .cfb-rec-tier{color:#77edb4}
.cfb-rec-card-lean .cfb-rec-tier{color:#ffd166}
.cfb-rec-reason{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
  margin:12px 0;
}
.cfb-rec-reason p{
  display:grid;
  gap:5px;
  margin:0;
  padding:11px 12px;
  border-radius:9px;
  background:#1a3146;
  color:#eaf2f8;
}
.cfb-rec-reason p:last-child{background:#2b2630}
.cfb-rec-reason b{color:#bdefff;font-size:10px;letter-spacing:.06em}
.cfb-rec-reason p:last-child b{color:#ffd1bc}
.cfb-rec-reason span{color:#edf4fa;font-size:12px;line-height:1.45}
.cfb-rec-card .cfb-card-actions button{min-height:40px}
@media(max-width:900px){
  .cfb-rec-summary{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
  .cfb-rec-summary{grid-template-columns:1fr 1fr}
  .cfb-rec-lane>header{align-items:flex-start;flex-direction:column}
  .cfb-rec-lane>header p{text-align:left}
  .cfb-rec-reason{grid-template-columns:1fr}
}
