.post-breadcrumb{
  font-family:'Inter','Helvetica Neue',Arial,sans-serif;
  font-size:12.5px;
  color:#9a9890;
  margin:0 0 18px;
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}
.post-breadcrumb a{
  color:#79776f;
  text-decoration:none;
  font-weight:600;
}
.post-breadcrumb a:hover{color:#e2231a;}
.post-breadcrumb-current{
  color:#9a9890;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  /* min() rather than a flat 320px: on a 360px phone a 320px crumb plus the
     trail in front of it is wider than the screen, and the whole breadcrumb
     row was what pushed those pages sideways. */
  max-width:min(320px, 60vw);
  min-width:0;
}

.post-article{
  font-family:'Inter','Helvetica Neue',Arial,sans-serif;
}

.post-title{
  font-size:24px;
  font-weight:800;
  color:#181818;
  line-height:1.3;
  margin:0 0 18px;
}

.post-meta{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  padding-bottom:18px;
  margin-bottom:20px;
  border-bottom:1px solid #eceae5;
}
.post-meta-avatar-demo{
  width:36px; height:36px;
  border-radius:50%;
  background:#e2231a;
  color:#fff;
  font-size:13px;
  font-weight:700;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
}
.post-meta-text{flex:1; min-width:0;}
.post-meta-name-row{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.post-meta-author{
  font-size:13.5px;
  font-weight:700;
  color:#181818;
  text-decoration:none;
}
.post-meta-author:hover{color:#e2231a;}
.post-meta-category{
  font-size:11px;
  font-weight:600;
  color:#e2231a;
  background:#fdeceb;
  padding:2px 8px;
  border-radius:20px;
}
.post-meta-sub{
  display:block;
  font-size:12px;
  color:#9a9890;
  margin-top:3px;
}

.post-inline-ad{
  float:left;
  width:300px;
  max-width:40%;
  margin:2px 20px 12px 0;
}
.post-inline-ad-label{
  font-size:10px;
  font-weight:700;
  letter-spacing:0.6px;
  text-transform:uppercase;
  color:#9a9890;
  text-align:center;
  margin:0 0 6px;
}
.post-inline-ad-slot{
  width:100%;
  height:250px;
  background:#f3f1ec;
  border:1px dashed #e5e3de;
  border-radius:6px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#9a9890;
  font-size:12px;
  font-weight:600;
}

.post-readmore{
  border:1px solid #eceae5;
  border-top:3px solid #e2231a;
  border-radius:8px;
  margin:24px 0;
  overflow:hidden;
  background:#fff;
}
.post-readmore-label{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:11.5px;
  font-weight:800;
  letter-spacing:0.6px;
  text-transform:uppercase;
  color:#e2231a;
  margin:0;
  padding:12px 16px 8px;
}
.post-readmore-label svg{width:14px; height:14px;}
.post-readmore-item{
  display:flex;
  align-items:center;
  gap:12px;
  text-decoration:none;
  padding:10px 16px;
  transition:background .15s;
}
.post-readmore-item:hover{background:#fafaf8;}
.post-readmore-item + .post-readmore-item{border-top:1px solid #f2f0ea;}
.post-readmore-thumb{
  flex-shrink:0;
  width:52px; height:52px;
  border-radius:6px;
  background:#e7e5df;
}
.post-readmore-title{
  flex:1;
  font-size:13.5px;
  font-weight:700;
  color:#181818;
  line-height:1.35;
  transition:color .15s;
}
.post-readmore-item:hover .post-readmore-title{color:#e2231a;}
.post-readmore-arrow{
  flex-shrink:0;
  width:18px; height:18px;
  color:#e2231a;
}
.post-share{display:flex; gap:8px; flex-shrink:0;}
.post-share-btn{
  width:32px; height:32px;
  border-radius:50%;
  border:1px solid #eceae5;
  background:#fff;
  color:#79776f;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition:border-color .15s, color .15s;
}
.post-share-btn svg{width:14px; height:14px;}
.post-share-btn:hover{border-color:#e2231a; color:#e2231a;}

.post-thumb{
  width:100%;
  height:400px;
  background:#e7e5df;
  border-radius:10px 10px 0 0;
}
.post-thumb-credit{
  display:flex;
  align-items:center;
  gap:6px;
  padding:9px 14px;
  border:1px solid #eceae5;
  border-top:none;
  border-radius:0 0 8px 8px;
  background:#fafaf8;
  color:#79776f;
  font-size:12px;
  font-weight:500;
  margin-bottom:24px;
}
.post-thumb-credit svg{width:13px; height:13px; flex-shrink:0; opacity:0.75;}

.post-body{
  font-size:16px;
  line-height:1.75;
  color:#2b2a27;
  max-width:720px;
}
.post-body p{margin:0 0 18px;}
.post-body h2{
  font-size:20px;
  font-weight:800;
  color:#181818;
  margin:28px 0 14px;
}

.post-quote{
  position:relative;
  margin:28px 0;
  padding:28px 28px 24px;
  background:linear-gradient(180deg, #fdeceb 0%, #fdf3f2 100%);
  border-radius:12px;
  border-left:4px solid #e2231a;
}
.post-quote-icon{
  width:28px; height:28px;
  color:#e2231a;
  opacity:0.9;
  margin-bottom:10px;
}
.post-quote p{
  font-family:Georgia,'Times New Roman',serif;
  font-style:italic;
  font-weight:500;
  font-size:19px;
  line-height:1.55;
  color:#181818;
  margin:0 0 14px;
}
.post-quote cite{
  display:flex;
  align-items:center;
  gap:8px;
  font-style:normal;
  font-size:12.5px;
  font-weight:700;
  letter-spacing:0.2px;
  color:#a32d2d;
}
.post-quote cite::before{
  content:'';
  width:18px; height:2px;
  background:#e2231a;
  border-radius:2px;
}

.post-google-pill{
  flex-shrink:0;
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 14px;
  border:1px solid #eceae5;
  border-radius:20px;
  text-decoration:none;
  font-size:13px;
  font-weight:600;
  color:#3d3c39;
  white-space:nowrap;
  transition:border-color .15s, box-shadow .15s;
}
.post-google-pill:hover{border-color:#c7c5bd; box-shadow:0 1px 4px rgba(0,0,0,0.08);}

.post-share-sep{
  width:1px; height:18px;
  background:#eceae5;
  margin:0 2px;
}

.post-navpair{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:28px;
}
.post-navlink{
  display:flex;
  align-items:center;
  gap:10px;
  padding:14px;
  border:1px solid #eceae5;
  border-radius:8px;
  text-decoration:none;
  transition:border-color .15s, background .15s;
}
.post-navlink:hover{border-color:#e2231a; background:#fdeceb;}
.post-navlink svg{flex-shrink:0; width:18px; height:18px; color:#e2231a;}
.post-navlink-next{justify-content:flex-end; text-align:right;}
.post-navlink-label{
  display:block;
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:0.4px;
  color:#9a9890;
  margin-bottom:3px;
}
.post-navlink-title{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-size:13px;
  font-weight:700;
  color:#181818;
  line-height:1.35;
}

.post-author-card{
  display:flex;
  gap:14px;
  margin-top:24px;
  padding:18px;
  background:#f9f8f5;
  border-radius:10px;
}
.post-author-card-avatar{
  flex-shrink:0;
  width:48px; height:48px;
  border-radius:50%;
  background:#e2231a;
  color:#fff;
  font-size:14px;
  font-weight:700;
  display:flex;
  align-items:center;
  justify-content:center;
}
.post-author-card-name{
  display:block;
  font-size:14px;
  font-weight:700;
  color:#181818;
  text-decoration:none;
  margin-bottom:4px;
}
.post-author-card-name:hover{color:#e2231a;}
.post-author-card-bio{
  font-size:13px;
  color:#79776f;
  line-height:1.55;
  margin:0;
}

.post-helpful{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  margin-top:24px;
  padding:16px 18px;
  background:#f9f8f5;
  border-radius:10px;
}
.post-helpful-label{
  font-size:13.5px;
  font-weight:700;
  color:#181818;
}
.post-helpful-btns{display:flex; gap:8px;}
.post-helpful-btn{
  display:flex;
  align-items:center;
  gap:6px;
  padding:7px 14px;
  border:1px solid #d9d7cf;
  border-radius:20px;
  background:#fff;
  font-family:'Inter','Helvetica Neue',Arial,sans-serif;
  font-size:12.5px;
  font-weight:700;
  color:#5f5e5a;
  cursor:pointer;
  transition:border-color .15s, background .15s, color .15s;
}
.post-helpful-btn svg{width:15px; height:15px;}
.post-helpful-btn:hover:not(:disabled){border-color:#e2231a; color:#e2231a;}
.post-helpful-btn:disabled{cursor:default; opacity:0.55;}
.post-helpful-btn.is-selected{background:#e2231a; border-color:#e2231a; color:#fff; opacity:1;}
.post-helpful-thanks{
  font-size:12.5px;
  font-weight:600;
  color:#9a9890;
  display:none;
}
.post-helpful-thanks.show{display:inline;}

.post-comments{
  margin-top:32px;
  padding-top:24px;
  border-top:1px solid #eceae5;
}
.post-comments-heading{
  display:flex;
  align-items:baseline;
  gap:8px;
  font-size:18px;
  font-weight:800;
  color:#181818;
  margin:0 0 18px;
}
.post-comments-count{font-size:13px; font-weight:600; color:#9a9890;}
.post-comment-form{
  display:flex;
  gap:12px;
  margin-bottom:22px;
}
.post-comment-form-avatar{
  flex-shrink:0;
  width:34px; height:34px;
  border-radius:50%;
  background:#e5e3de;
  color:#5f5e5a;
  font-size:11px;
  font-weight:700;
  display:flex;
  align-items:center;
  justify-content:center;
}
.post-comment-form-input{
  flex:1;
  min-width:0;
  border:1px solid #eceae5;
  border-radius:8px;
  padding:10px 12px;
  font-family:'Inter','Helvetica Neue',Arial,sans-serif;
  font-size:13.5px;
  resize:vertical;
}
.post-comment-form-input:focus{outline:none; border-color:#e2231a;}
.post-comment{
  display:flex;
  gap:12px;
  padding:14px 0;
  border-top:1px solid #f2f0ea;
}
.post-comment-avatar{
  flex-shrink:0;
  width:34px; height:34px;
  border-radius:50%;
  background:#5f5e5a;
  color:#fff;
  font-size:11px;
  font-weight:700;
  display:flex;
  align-items:center;
  justify-content:center;
}
.post-comment-body{flex:1; min-width:0;}
.post-comment-head{
  display:flex;
  align-items:baseline;
  gap:8px;
  margin-bottom:3px;
}
.post-comment-author{font-size:13px; font-weight:700; color:#181818;}
.post-comment-time{font-size:11.5px; color:#9a9890;}
.post-comment-text{font-size:13.5px; color:#3d3c39; line-height:1.55; margin:0 0 8px;}

.post-comment-reply-btn{
  display:inline-flex;
  align-items:center;
  gap:5px;
  background:none;
  border:none;
  padding:0;
  font-family:'Inter','Helvetica Neue',Arial,sans-serif;
  font-size:12px;
  font-weight:700;
  color:#79776f;
  cursor:pointer;
}
.post-comment-reply-btn svg{width:13px; height:13px;}
.post-comment-reply-btn:hover{color:#e2231a;}

.post-comment-replyform{
  display:none;
  gap:10px;
  margin-top:12px;
}
.post-comment-replyform.is-open{display:flex;}
.post-comment-replyform-form{display:flex; gap:10px; width:100%;}
.post-comment-replyform-input-wrap{
  flex:1;
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:8px;
}
.post-comment-replyform .post-comment-form-input{width:100%;}
.post-comment-replyform-post{
  border:none;
  background:#e2231a;
  color:#fff;
  font-family:'Inter','Helvetica Neue',Arial,sans-serif;
  font-size:12.5px;
  font-weight:700;
  padding:7px 16px;
  border-radius:6px;
  cursor:pointer;
}
.post-comment-replyform-post:hover{background:#c41d15;}

/* ---- reader identity: flash messages, sign-in prompt, submit button,
   sign-out link -- all new, everything else above is unchanged ---- */
.post-comment-flash{
  padding:10px 14px; border-radius:8px; margin-bottom:14px;
  font-size:13px; font-weight:600; border:1px solid;
}
.post-comment-flash-ok{background:#eaf6ee; border-color:#c6e6d2; color:#1b7a3f;}
.post-comment-flash-error{background:#fdeceb; border-color:#f5c6c2; color:#8e1b13;}

.post-comment-form-input-wrap{flex:1; min-width:0; display:flex; flex-direction:column; gap:8px;}
.post-comment-form-foot{display:flex; align-items:center; justify-content:space-between; gap:10px;}
.post-comment-form-as{font-size:11.5px; color:#9a9890;}
.post-comment-form-post{
  border:none; background:#e2231a; color:#fff;
  font-family:'Inter','Helvetica Neue',Arial,sans-serif;
  font-size:12.5px; font-weight:700; padding:7px 16px; border-radius:6px; cursor:pointer;
  flex-shrink:0;
}
.post-comment-form-post:hover{background:#c41d15;}

.post-comment-form-avatar-img{width:34px; height:34px; border-radius:50%; object-fit:cover; flex-shrink:0;}

.post-comment-signout{margin:-10px 0 22px 46px;}
.post-comment-signout-btn{
  background:none; border:none; padding:0; font-family:inherit;
  font-size:11.5px; color:#9a9890; text-decoration:underline; cursor:pointer;
}
.post-comment-signout-btn:hover{color:#e2231a;}

.post-comment-signin{
  display:flex; align-items:center; gap:12px; margin-bottom:22px;
  padding:14px 16px; background:#f7f6f3; border:1px dashed #eceae5; border-radius:10px;
}
.post-comment-signin-btn{
  display:inline-flex; align-items:center; gap:8px;
  background:#181818; color:#fff; text-decoration:none;
  font-size:13px; font-weight:700; padding:9px 16px; border-radius:7px;
}
.post-comment-signin-btn svg{width:16px; height:16px; flex-shrink:0;}
.post-comment-signin-btn:hover{background:#2c2c2c;}
.post-comment-signin-btn-sm{padding:7px 12px; font-size:12px;}

.post-comment-replies{
  margin-top:14px;
  padding-left:18px;
  border-left:2px solid #f2f0ea;
}
.post-comment.is-reply{padding:12px 0;}
.post-comment-avatar.is-reply{width:28px; height:28px; font-size:10px;}
.post-comment-author-tag{
  font-size:10.5px;
  font-weight:700;
  color:#e2231a;
  background:#fdeceb;
  padding:1px 7px;
  border-radius:20px;
}

.post-related{
  margin-top:40px;
  padding-top:24px;
  border-top:1px solid #eceae5;
}
.post-related-heading{
  font-size:18px;
  font-weight:800;
  color:#181818;
  margin:0 0 18px;
}

html.dark-mode .post-breadcrumb{color:#7c7b76;}
html.dark-mode .post-breadcrumb a{color:#9a9994;}
html.dark-mode .post-breadcrumb-current{color:#7c7b76;}
html.dark-mode .post-title{color:#f0efea;}
html.dark-mode .post-meta{border-color:#3c3d42;}
html.dark-mode .post-meta-author{color:#f0efea;}
html.dark-mode .post-meta-category{color:#f0897f; background:#3a2220;}
html.dark-mode .post-meta-sub{color:#7c7b76;}
html.dark-mode .post-inline-ad-label{color:#7c7b76;}
html.dark-mode .post-inline-ad-slot{background:#212227; border-color:#3c3d42; color:#7c7b76;}
html.dark-mode .post-thumb-credit{background:#1b1c20; border-color:#3c3d42; color:#9a9994;}
html.dark-mode .post-readmore{background:#1b1c20; border-color:#3c3d42; border-top-color:#e2231a;}
html.dark-mode .post-readmore-item:hover{background:#212227;}
html.dark-mode .post-readmore-item + .post-readmore-item{border-color:#3c3d42;}
html.dark-mode .post-readmore-thumb{background:#2b2c31;}
html.dark-mode .post-readmore-title{color:#f0efea;}
html.dark-mode .post-share-btn{background:#212227; border-color:#3c3d42; color:#9a9994;}
html.dark-mode .post-thumb{background:#2b2c31;}
html.dark-mode .post-body{color:#c7c7cf;}
html.dark-mode .post-body h2{color:#f0efea;}
html.dark-mode .post-share-sep{background:#3c3d42;}
html.dark-mode .post-google-pill{border-color:#3c3d42; color:#e6e5e0;}
html.dark-mode .post-google-pill:hover{border-color:#54555c;}
html.dark-mode .post-navlink{border-color:#3c3d42;}
html.dark-mode .post-navlink:hover{border-color:#e2231a; background:#3a2220;}
html.dark-mode .post-navlink-label{color:#7c7b76;}
html.dark-mode .post-navlink-title{color:#f0efea;}
html.dark-mode .post-author-card{background:#1b1c20;}
html.dark-mode .post-author-card-name{color:#f0efea;}
html.dark-mode .post-author-card-bio{color:#9a9994;}
html.dark-mode .post-helpful{background:#1b1c20;}
html.dark-mode .post-helpful-label{color:#f0efea;}
html.dark-mode .post-helpful-btn{background:#212227; border-color:#3c3d42; color:#c7c7cf;}
html.dark-mode .post-helpful-btn:hover:not(:disabled){border-color:#e2231a; color:#e2231a;}
html.dark-mode .post-helpful-btn.is-selected{background:#e2231a; border-color:#e2231a; color:#fff;}
html.dark-mode .post-helpful-thanks{color:#7c7b76;}
html.dark-mode .post-comments{border-color:#3c3d42;}
html.dark-mode .post-comments-heading{color:#f0efea;}
html.dark-mode .post-comment-form-avatar{background:#2b2c31; color:#c7c7cf;}
html.dark-mode .post-comment-form-input{background:#1b1c20; border-color:#3c3d42; color:#f0efea;}
html.dark-mode .post-comment{border-color:#2c2d31;}
html.dark-mode .post-comment-author{color:#f0efea;}
html.dark-mode .post-comment-text{color:#c7c7cf;}
html.dark-mode .post-comment-flash-ok{background:#16281f; border-color:#1f3d2c; color:#7fd8a0;}
html.dark-mode .post-comment-flash-error{background:#3a2220; border-color:#4a2b28; color:#f0897f;}
html.dark-mode .post-comment-signin{background:#1b1c20; border-color:#3c3d42;}
html.dark-mode .post-comment-signin-btn{background:#f0efea; color:#181818;}
html.dark-mode .post-comment-signin-btn:hover{background:#fff;}
html.dark-mode .post-comment-signout-btn{color:#7c7b76;}
html.dark-mode .post-comment-form-as{color:#7c7b76;}
html.dark-mode .post-quote{background:linear-gradient(180deg, #3a2220 0%, #2c1a19 100%); border-left-color:#e2231a;}
html.dark-mode .post-quote-icon{color:#f0897f;}
html.dark-mode .post-quote p{color:#f0efea;}
html.dark-mode .post-quote cite{color:#f0897f;}
html.dark-mode .post-quote cite::before{background:#f0897f;}
html.dark-mode .post-comment-reply-btn{color:#9a9994;}
html.dark-mode .post-comment-reply-btn:hover{color:#e2231a;}
html.dark-mode .post-comment-replies{border-color:#2c2d31;}
html.dark-mode .post-comment-author-tag{color:#f0897f; background:#3a2220;}
html.dark-mode .post-related{border-color:#3c3d42;}
html.dark-mode .post-related-heading{color:#f0efea;}

@media (max-width:640px){
  .post-title{font-size:22px;}
  .post-thumb{height:220px;}
  .post-meta{flex-wrap:wrap;}
  .post-body{font-size:14.5px;}
  .post-inline-ad{float:none; width:100%; max-width:100%; margin:0 0 16px;}
  .post-readmore-title{font-size:13px;}
  .post-navpair{grid-template-columns:1fr;}
  .post-navlink-next{justify-content:flex-start; text-align:left;}
  .post-quote p{font-size:16px;}
  .post-comment-replyform{flex-direction:column; align-items:stretch;}
  .post-google-pill{order:1; margin-top:6px;}
  .post-share{order:3; width:100%; margin-top:6px;}
}

/* ---- match result card ------------------------------------------------
   Dropped into an article body by the [match id=N] shortcode. Built from
   divs and spans only: post-detail.php places the ad and the "Read more"
   box by counting </p> in the body, so a paragraph in here would move
   both of them. */
.mf-mcard{
  --mcard-line:#e5e3de;
  --mcard-paper:#ffffff;
  --mcard-sand:#faf8f4;
  --mcard-ink:#181818;
  --mcard-meta:#8a887f;
  --mcard-red:#e2231a;
  --mcard-win:#1ba94c;

  /* One type scale, four steps, used by everything below.
     The card had eight hand-picked sizes -- 9.5, 11, 11.5, 12.5, 13, 13.5,
     22 -- none of which agreed with the next. Four steps in a 1.25 ratio
     off a 13px base covers every part of the card, so a change to the base
     moves the whole card together instead of leaving one label behind. */
  --mcard-fs-micro:10px;   /* eyebrow, badge */
  --mcard-fs-small:11.5px; /* overs, footer chips */
  --mcard-fs-base:13px;    /* team name, result line */
  --mcard-fs-score:13px;   /* the number the card exists for */

  clear:both;
  margin:26px 0;
  border:1px solid var(--mcard-line);
  border-radius:12px;
  background:var(--mcard-paper);
  overflow:hidden;
  font-family:'Inter','Helvetica Neue',Arial,sans-serif;
}
html.dark-mode .mf-mcard{
  --mcard-line:rgba(255,255,255,0.12);
  --mcard-paper:#212227;
  --mcard-sand:#1b1c20;
  --mcard-ink:#e7e7ea;
  --mcard-meta:#8c8c94;
}

.mf-mcard-top{
  display:flex; align-items:center; justify-content:space-between; gap:10px;
  padding:10px 16px;
  background:var(--mcard-sand);
  border-bottom:1px solid var(--mcard-line);
}
.mf-mcard-meta{
  font-size:var(--mcard-fs-micro); font-weight:700; letter-spacing:.05em; text-transform:uppercase;
  color:var(--mcard-meta); min-width:0;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.mf-mcard-badge{
  flex-shrink:0;
  font-size:var(--mcard-fs-micro); font-weight:800; letter-spacing:.07em; text-transform:uppercase;
  color:#fff; background:var(--mcard-meta); padding:3px 8px; border-radius:20px;
}
.mf-mcard.is-live .mf-mcard-badge{
  background:var(--mcard-red);
  animation:mfMcardPulse 1.6s ease-in-out infinite;
}
@keyframes mfMcardPulse{0%,100%{opacity:1}50%{opacity:.55}}

/* Two stacked rows, one per side, rather than two columns with a "v" down
   the middle.

   The columns layout put the team name above its own score and the two
   teams beside each other, so reading "who made what" meant four stops:
   across for the names, down, across again for the scores. Stacked, each
   row is one sentence -- France ......... 166/8 (20 ov) -- and because both
   rows share a grid, the two scores land in the same column and can be
   compared straight down. */
.mf-mcard-teams{
  display:flex; flex-direction:column; gap:9px;
  padding:14px 16px;
}
/* The separator has no job between stacked rows -- the layout already says
   these are two sides of one match. Kept in the markup so an article
   rendered before this change still parses. */
.mf-mcard-v{display:none;}

/* The name takes what it needs, the score column is fixed, and the gap
   between them is the flexible part -- so both scores share one right edge
   and sit near the names rather than being flung to the far side of a
   1,160px card. */
.mf-mcard-side{
  display:grid; grid-template-columns:minmax(0,1fr) 118px;
  align-items:baseline; gap:12px; min-width:0;
}
.mf-mcard-name{
  display:flex; align-items:center; gap:8px; min-width:0;
  font-size:var(--mcard-fs-base); font-weight:600; color:var(--mcard-meta);
  line-height:1.35;
}
.mf-mcard-name > span{overflow:hidden; text-overflow:ellipsis; white-space:nowrap; min-width:0;}
.mf-mcard-flag{
  flex:0 0 20px; width:20px; height:14px; border-radius:2px;
  border:1px solid var(--mcard-line); display:inline-block;
  transform:translateY(1px);
}
.mf-mcard-tick{flex:0 0 13px; width:13px; height:13px; color:var(--mcard-win);}

/* The winner is the only row in full ink. Everything on a result card is
   the same two teams, so weight is the cheapest way to say which one it
   went for -- cheaper than a colour, and it still reads in greyscale. */
.mf-mcard-side.is-won .mf-mcard-name{color:var(--mcard-ink); font-weight:700;}
.mf-mcard-side:not(.is-won) .mf-mcard-score strong{color:#5c5b57;}

.mf-mcard-score{
  display:flex; align-items:baseline; gap:6px; justify-content:flex-end;
  font-variant-numeric:tabular-nums; white-space:nowrap;
}
.mf-mcard-score strong{
  font-size:var(--mcard-fs-score); font-weight:800; letter-spacing:-.2px;
  color:var(--mcard-ink); line-height:1;
}
.mf-mcard-score span{font-size:var(--mcard-fs-small); color:var(--mcard-meta); font-weight:600;}
.mf-mcard-score-none strong{color:var(--mcard-meta); font-weight:600;}
html.dark-mode .mf-mcard-side:not(.is-won) .mf-mcard-score strong{color:#b4b4ba;}

.mf-mcard-result{
  padding:11px 16px;
  border-top:1px solid var(--mcard-line);
  font-size:var(--mcard-fs-base); font-weight:600; color:var(--mcard-ink); line-height:1.5;
}
/* Venue, player of the match, stage -- one line of small chips under the
   result, with the scorecard hint pushed to the far end. Whatever the row
   does not have is simply absent; the strip disappears entirely rather than
   printing an empty label. */
.mf-mcard-foot{
  display:flex; align-items:center; gap:6px 14px; flex-wrap:wrap;
  padding:0 16px 13px;
  font-size:var(--mcard-fs-small); color:var(--mcard-meta);
}
.mf-mcard-chip{display:inline-flex; align-items:center; gap:6px; min-width:0;}
.mf-mcard-chip svg{flex:0 0 12px; width:12px; height:12px; opacity:.85;}
.mf-mcard-more{
  display:inline-flex; align-items:center; gap:3px; margin-left:auto;
  font-size:13px; font-weight:800; color:#e2231a; white-space:nowrap;
}
.mf-results-item:hover .mf-mcard-more{gap:6px;}
.mf-mcard-more svg{transition:transform .15s;}

/* The old single-line venue rule, kept because articles rendered before
   this change still have it in cached HTML. */
.mf-mcard-venue{
  display:flex; align-items:center; gap:6px;
  padding:0 16px 13px;
  font-size:11.5px; color:var(--mcard-meta);
}
.mf-mcard-venue svg{flex:0 0 13px; width:13px; height:13px;}

/* No layout switch at 420px any more: the stacked rows were the narrow
   layout, and they are now the only layout. All that is left is to buy the
   long team names a little more room by shrinking the score a step. */
@media (max-width:420px){
  .mf-mcard{--mcard-fs-score:15px;}
  .mf-mcard-teams{padding:13px 14px;}
  .mf-mcard-side{gap:10px;}
}

/* ---- article body: content the editor pasted in -------------------------
   Everything above styles markup this codebase writes. The article body is
   the one place holding markup it does not control -- tables pasted from a
   scorecard, YouTube embeds, images at their original width, long URLs in
   plain text. None of it knows anything about a 360px screen, and any one of
   them pushes the whole page sideways: not just the article, the header and
   footer with it, because the widest element on a page sets the scroll width.

   Rather than hide it with overflow-x:hidden on the body -- which would also
   break position:sticky everywhere and leave the content unreachable rather
   than merely awkward -- each kind of oversized content is given a way to
   cope on its own terms. */

/* Images and video keep their aspect ratio and stop at the column edge. */
.post-body img,
.post-body video{
  max-width:100%;
  height:auto;
}

/* Embeds have a width attribute in the markup, so max-width alone is not
   enough -- the attribute wins on the intrinsic size. */
.post-body iframe,
.post-body embed,
.post-body object{
  max-width:100%;
  border:0;
}

/* A table cannot reflow: its columns have a minimum the content demands. So
   it gets its own horizontal scroll, which keeps the page itself still.
   The table stays fully readable; only the table moves. */
.post-body table{
  display:block;
  width:100%;
  max-width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  border-collapse:collapse;
}
.post-body table th,
.post-body table td{white-space:nowrap;}

/* A long unbroken string -- a URL, a hash, a Bengali compound with no spaces
   -- is a single unbreakable word to the layout engine, and one of them is
   enough to set the width of the page. */
.post-body,
.post-body p,
.post-body li,
.post-body h2,
.post-body h3,
.post-body blockquote{
  overflow-wrap:break-word;
  word-break:break-word;
}
.post-body pre{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  max-width:100%;
}
