/* =========================================================================
   BRODEUR'S BISTRO — Games page redesign
   Keeps the black topbar + dark "0/4 PLAYED" hero. Restyles the body:
   a dark "Today's Table" spotlight card + a richer All-Games grid.

   Additive + reversible. Prefixed .bb-g-*. Depends on the --bb-* tokens.
   1. Copy to  bbistro/static/css/bb-games.css
   2. base.html:  <link rel="stylesheet" href="{{ url_for('static', filename='css/bb-games.css') }}">
   3. Replace the games body below the hero with games.snippet.html.
   Preview: handoff/preview-games.html
   ========================================================================= */

.bb-g-sec{display:flex;align-items:center;gap:9px;margin:26px 0 14px;}
.bb-g-sec .fl{color:var(--bb-red);font-size:16px;}
.bb-g-sec h2{margin:0;font-size:14px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--bb-red);}
.bb-g-sec .aside{margin-left:10px;font-size:12px;font-style:italic;color:var(--bb-muted);}
.bb-g-sec .link{margin-left:auto;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--bb-muted);text-decoration:none;}

/* featured "today's table" */
.bb-g-feat{position:relative;overflow:hidden;display:flex;gap:22px;align-items:center;
  background:linear-gradient(135deg,#1f1f1f,var(--bb-black));color:#fff;border-radius:var(--bb-r);
  padding:24px 26px;box-shadow:var(--bb-shadow-md);}
.bb-g-feat-ico{width:72px;height:72px;border-radius:var(--bb-r);background:var(--bb-red);
  display:grid;place-items:center;font-size:34px;flex-shrink:0;box-shadow:0 6px 16px -6px rgba(200,16,46,.7);}
.bb-g-feat-body{flex:1;min-width:0;}
.bb-g-feat-eye{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#e8a0aa;margin-bottom:6px;}
.bb-g-feat h3{margin:0 0 6px;font-family:var(--bb-font-logo,"Bronzetti",Georgia,serif);font-weight:700;font-size:30px;letter-spacing:.01em;}
.bb-g-feat p{margin:0 0 12px;font-size:13.5px;color:#cfcac2;line-height:1.5;max-width:60ch;}
.bb-g-feat-meta{display:flex;flex-wrap:wrap;gap:7px;}
.bb-g-chip{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#f0ece5;padding:5px 10px;border-radius:var(--bb-r-pill);}
.bb-g-feat-cta{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0;}
.bb-g-play{display:inline-flex;align-items:center;gap:8px;padding:13px 26px;background:var(--bb-red);color:#fff;
  border:none;border-radius:var(--bb-r);font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:13px;text-decoration:none;cursor:pointer;transition:background .12s;}
.bb-g-play:hover{background:var(--bb-red-dark);}
.bb-g-play:active{transform:translateY(1px);}
.bb-g-feat-best{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:#b7b1a6;}
.bb-g-feat-fleur{position:absolute;right:14px;bottom:-6px;font-size:76px;line-height:1;color:#fff;opacity:.07;pointer-events:none;}

/* all-games grid */
.bb-g-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.bb-g-card{display:flex;flex-direction:column;background:var(--bb-paper);border:1px solid var(--bb-line);
  border-radius:var(--bb-r);box-shadow:var(--bb-shadow-sm);overflow:hidden;text-decoration:none;transition:border-color .12s,box-shadow .12s,transform .12s;}
.bb-g-card:hover{border-color:var(--bb-red);box-shadow:var(--bb-shadow-md);transform:translateY(-1px);}
.bb-g-card-top{display:flex;align-items:flex-start;gap:13px;padding:18px 18px 0;}
.bb-g-card-ico{width:48px;height:48px;border-radius:var(--bb-r);background:var(--bb-cream);border:1px solid var(--bb-line);
  display:grid;place-items:center;font-size:22px;flex-shrink:0;}
.bb-g-card-fmt{margin-left:auto;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  color:var(--bb-muted);background:#f2ede4;border:1px solid var(--bb-line);padding:4px 8px;border-radius:var(--bb-r-sm);}
.bb-g-card-body{padding:14px 18px 0;flex:1;}
.bb-g-card h4{margin:0 0 5px;font-size:16.5px;font-weight:700;color:var(--bb-ink);}
.bb-g-card p{margin:0;font-size:13px;line-height:1.5;color:var(--bb-muted);}
.bb-g-card-tags{display:flex;gap:6px;flex-wrap:wrap;padding:12px 18px 0;}
.bb-g-tag{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--bb-red);
  background:rgba(200,16,46,.07);border:1px solid rgba(200,16,46,.25);padding:4px 9px;border-radius:var(--bb-r-pill);}
.bb-g-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;padding:13px 18px;border-top:1px solid var(--bb-line);}
.bb-g-card-best{font-size:11px;color:var(--bb-muted);}
.bb-g-card-best b{color:var(--bb-ink);font-weight:700;}
.bb-g-card-best.new{color:var(--bb-red);font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-size:10px;}
.bb-g-play-sm{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;background:var(--bb-black);color:#fff;
  border:none;border-radius:var(--bb-r);font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:11px;text-decoration:none;cursor:pointer;transition:background .12s;}
.bb-g-play-sm:hover{background:var(--bb-red);}
.bb-g-note{text-align:center;font-size:12.5px;font-style:italic;color:var(--bb-muted);margin:26px 0 0;}

@media (max-width:820px){
  .bb-g-grid{grid-template-columns:1fr;}
  .bb-g-feat{flex-direction:column;align-items:flex-start;gap:16px;}
  .bb-g-feat-cta{align-items:flex-start;}
}
