/* G9 Rumble Auction v2.1 - THE RUMBLE theme (maroon torn-paper over green, Zahira colours).
   Mobile-first (default = 320-430px). */
.g9auc { background: #14261a; color: #f3efe9; min-height: 100vh; padding-bottom: 96px; overflow-x: hidden;
  background-image: radial-gradient(ellipse at 20% 0%, rgba(122,22,38,0.28), transparent 55%), radial-gradient(ellipse at 90% 100%, rgba(30,86,49,0.5), transparent 60%); }
.g9auc *, .g9auc *::before, .g9auc *::after { box-sizing: border-box; }
/* Theme-bleed hardening: the zahirag9 theme sets dark heading colours - force ours */
.g9auc h1, .g9auc h2, .g9auc h3, .g9auc h4, .g9auc p { color: inherit; }
.g9auc .g9auc-hero__title, .g9auc .g9auc-spot__name, .g9auc .g9auc-pcard__name,
.g9auc .g9auc-trow__name, .g9auc .g9auc-modal__name { color: #fff !important; }
.g9auc .g9auc-spot--idle h2 { color: #fff !important; }
.g9auc img { max-width: 100%; }

.g9auc-adminbar { background: #7a1626; color: #fff; text-align: center; padding: 10px 16px; font-size: 0.9rem; font-weight: 700; }

/* Holding screen */
.g9auc-hold { min-height: 70vh; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; padding: 40px 20px; }
.g9auc-hold__badge { border: 2px solid #b3243b; color: #ff9daa; letter-spacing: 4px; font-weight: 900; padding: 8px 20px; border-radius: 999px; margin-bottom: 20px; font-size: 0.9rem; }
.g9auc-hold h1 { font-size: 1.8rem; margin: 0 0 12px; font-weight: 900; }
.g9auc-hold p { color: #c9c2b8; font-size: 1rem; }

/* Hero - torn Rumble artwork */
.g9auc-hero { position: relative; text-align: center; padding: 56px 20px 30px; background-size: cover; background-position: center; }
.g9auc-hero::before { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10,14,11,0.55) 0%, rgba(16,24,18,0.82) 100%); }
.g9auc-hero > * { position: relative; }
.g9auc-hero__logo { display: block; margin: 10px auto 4px; width: min(340px, 82vw); height: auto; filter: drop-shadow(0 4px 14px rgba(0,0,0,0.6)); background: rgba(255,255,255,0.94); padding: 10px 16px; border-radius: 12px; }
.g9auc-hero__title { font-size: clamp(1.5rem, 5.5vw, 2.6rem); margin: 12px 0 6px; font-weight: 900; text-transform: uppercase; letter-spacing: 1px; text-shadow: 0 2px 10px rgba(0,0,0,0.7); }
.g9auc-hero__sub { color: #e8d9b0; font-size: 0.95rem; margin: 0; font-weight: 600; letter-spacing: 1px; }

/* LIVE pill - hard blink */
.g9auc-live-pill { display: inline-flex; align-items: center; gap: 8px; background: #a01c31; border: 1px solid #ff5468; color: #fff; font-weight: 900; font-size: 0.85rem; letter-spacing: 3px; padding: 7px 18px; border-radius: 999px; box-shadow: 0 0 18px rgba(214,54,56,0.55); animation: g9auc-live-glow 1.6s infinite; }
.g9auc-live-dot { width: 10px; height: 10px; border-radius: 50%; background: #fff; animation: g9auc-blink 1s steps(1) infinite; }
@keyframes g9auc-blink { 0%, 55% { opacity: 1; } 56%, 100% { opacity: 0.15; } }
@keyframes g9auc-live-glow { 0%,100% { box-shadow: 0 0 10px rgba(214,54,56,0.35); } 50% { box-shadow: 0 0 26px rgba(255,84,104,0.85); } }

/* Sections */
.g9auc-section { padding: 30px 16px 8px; max-width: 1200px; margin: 0 auto; }
.g9auc-section__title { display: inline-block; font-size: 1.15rem; font-weight: 900; color: #fff; letter-spacing: 2px; text-transform: uppercase; margin: 0 0 18px; background: #7a1626; padding: 7px 18px; border-radius: 4px; transform: skewX(-8deg); box-shadow: 4px 4px 0 rgba(0,0,0,0.35); }

/* Spotlight */
.g9auc-spotlight { max-width: 1200px; margin: 0 auto; padding: 22px 16px 0; }
.g9auc-spot { position: relative; background: linear-gradient(145deg, #22150f 0%, #341118 45%, #14261a 100%); border: 1px solid #7a1626; border-radius: 18px; padding: 22px 18px 20px; display: flex; flex-direction: column; gap: 20px; box-shadow: 0 10px 44px rgba(0,0,0,0.5), 0 0 0 1px rgba(255,84,104,0.15); }
.g9auc-spot::before { content: ''; position: absolute; inset: -2px; border-radius: 20px; padding: 2px; background: linear-gradient(120deg, #b3243b, #2d6a4f, #b3243b); background-size: 300% 300%; animation: g9auc-border 5s linear infinite; -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0); -webkit-mask-composite: xor; mask-composite: exclude; pointer-events: none; }
@keyframes g9auc-border { 0% { background-position: 0% 50%; } 100% { background-position: 300% 50%; } }
.g9auc-spot--idle { align-items: center; text-align: center; padding: 36px 20px; }
.g9auc-spot--idle::before { animation-duration: 12s; opacity: 0.4; }
.g9auc-spot--idle h2 { margin: 10px 0 6px; font-size: 1.3rem; font-weight: 900; }
.g9auc-spot--idle p { color: #c9c2b8; margin: 0; font-size: 0.95rem; }
.g9auc-spot__idle-icon { font-size: 2rem; }

/* BIDDING NOW blinking chip */
.g9auc-spot__live-chip { position: absolute; top: -13px; left: 16px; display: inline-flex; align-items: center; gap: 7px; background: #ffb703; color: #241304; font-size: 0.78rem; font-weight: 900; letter-spacing: 1.5px; padding: 5px 14px; border-radius: 999px; box-shadow: 0 4px 14px rgba(255,183,3,0.45); z-index: 2; }
.g9auc-spot__live-chip::before { content: ''; width: 8px; height: 8px; border-radius: 50%; background: #a01c31; animation: g9auc-blink 0.9s steps(1) infinite; }
.g9auc-spot__live-chip span { animation: g9auc-chip-fade 1.8s ease-in-out infinite; }
@keyframes g9auc-chip-fade { 0%,100% { opacity: 1; } 50% { opacity: 0.45; } }

.g9auc-spot__player { display: flex; gap: 16px; align-items: center; }
.g9auc-spot__photo { width: 112px; height: 112px; border-radius: 16px; object-fit: cover; object-position: top; border: 3px solid #b3243b; box-shadow: 0 6px 20px rgba(0,0,0,0.55); flex-shrink: 0; }
.g9auc-spot__onblock { color: #ffb703; font-weight: 900; font-size: 0.75rem; letter-spacing: 2.5px; }
.g9auc-spot__name { font-size: clamp(1.5rem, 6vw, 2.4rem); margin: 4px 0; font-weight: 900; text-transform: capitalize; text-shadow: 0 2px 8px rgba(0,0,0,0.5); }
.g9auc-spot__role { display: inline-block; background: #1e5631; color: #c9f2d8; font-size: 0.8rem; font-weight: 800; padding: 3px 12px; border-radius: 999px; margin-bottom: 6px; letter-spacing: 0.5px; }
.g9auc-spot__base { display: block; color: #d8cfc2; font-size: 0.92rem; }
.g9auc-spot__current { background: rgba(8,12,9,0.72); border: 1px solid #b3243b; border-radius: 14px; padding: 16px; text-align: center; margin-bottom: 16px; }
.g9auc-spot__cur-label { display: block; color: #ff9daa; font-size: 0.8rem; letter-spacing: 2.5px; text-transform: uppercase; font-weight: 800; animation: g9auc-chip-fade 1.8s ease-in-out infinite; }
.g9auc-spot__cur-amount { display: block; font-size: clamp(2rem, 9vw, 3rem); font-weight: 900; color: #ffd166; margin: 4px 0; text-shadow: 0 0 22px rgba(255,209,102,0.4); }
.g9auc-spot__leader { color: #7fe0a7; font-weight: 800; font-size: 1rem; }
.g9auc-flash { animation: g9auc-flash 0.9s ease; }
@keyframes g9auc-flash { 0% { transform: scale(1.18); color: #fff; text-shadow: 0 0 30px rgba(255,209,102,0.9); } 100% { transform: scale(1); } }
.g9auc-spot__hist-title { font-size: 0.85rem; color: #c9c2b8; text-transform: uppercase; letter-spacing: 1.5px; margin: 0 0 8px; font-weight: 800; }
.g9auc-bids { list-style: none; margin: 0; padding: 0; max-height: 260px; overflow-y: auto; -webkit-overflow-scrolling: touch; }
.g9auc-bid { display: flex; align-items: center; gap: 10px; padding: 9px 10px; border-bottom: 1px solid rgba(255,255,255,0.07); font-size: 0.92rem; }
.g9auc-bid--top { background: linear-gradient(90deg, rgba(179,36,59,0.35), rgba(30,86,49,0.25)); border-radius: 10px; border-bottom-color: transparent; animation: g9auc-slidein 0.35s ease; }
@keyframes g9auc-slidein { from { transform: translateY(-8px); opacity: 0; } to { transform: none; opacity: 1; } }
.g9auc-bid--none { color: #c9c2b8; justify-content: center; }
.g9auc-bid__logo { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; background: #fff; flex-shrink: 0; }
.g9auc-bid__team { font-weight: 800; flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.g9auc-bid__amount { font-weight: 900; color: #ffd166; }
.g9auc-bid__time { color: #9a938a; font-size: 0.8rem; }

/* Teams */
.g9auc-teams { display: grid; grid-template-columns: 1fr; gap: 14px; }
.g9auc-team { position: relative; background: linear-gradient(160deg, #1a3323 0%, #14261a 70%); border: 1px solid #2d6a4f; border-radius: 16px; padding: 16px; }
.g9auc-team--leading { border-color: #ffb703; box-shadow: 0 0 0 1px #ffb703, 0 0 24px rgba(255,183,3,0.25); }
.g9auc-team__leadtag { position: absolute; top: -10px; right: 12px; background: #ffb703; color: #241304; font-size: 0.68rem; font-weight: 900; letter-spacing: 1px; padding: 3px 10px; border-radius: 999px; animation: g9auc-chip-fade 1.8s ease-in-out infinite; }
.g9auc-team__head { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; }
.g9auc-team__logo { width: 56px; height: 56px; border-radius: 12px; object-fit: contain; background: #fff; padding: 4px; flex-shrink: 0; box-shadow: 0 4px 12px rgba(0,0,0,0.4); }
.g9auc-team__name { font-size: 1.08rem; font-weight: 900; margin: 0 0 4px; text-transform: uppercase; letter-spacing: 0.5px; }
.g9auc-team__mgr { display: flex; align-items: center; gap: 6px; color: #c9c2b8; font-size: 0.85rem; }
.g9auc-team__mgr-photo { width: 22px; height: 22px; border-radius: 50%; object-fit: cover; }
.g9auc-team__budget-row { display: flex; justify-content: space-between; font-size: 0.9rem; color: #c9c2b8; }
.g9auc-team__budget-row strong { color: #ffd166; font-size: 1.02rem; }
.g9auc-team__bar { height: 8px; background: rgba(0,0,0,0.45); border-radius: 999px; overflow: hidden; margin: 6px 0 4px; }
.g9auc-team__bar span { display: block; height: 100%; background: linear-gradient(90deg, #7a1626, #b3243b 40%, #ffb703); border-radius: 999px; transition: width 0.5s ease; }
.g9auc-team__budget-sub { color: #9a938a; font-size: 0.85rem; }
.g9auc-roster { list-style: none; margin: 12px 0 0; padding: 10px 0 0; border-top: 1px solid rgba(255,255,255,0.08); max-height: 190px; overflow-y: auto; -webkit-overflow-scrolling: touch; }
.g9auc-roster li { display: flex; align-items: center; gap: 8px; padding: 5px 0; font-size: 0.9rem; }
.g9auc-roster__photo { width: 26px; height: 26px; border-radius: 50%; object-fit: cover; object-position: top; flex-shrink: 0; }
.g9auc-roster__name { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.g9auc-roster__price { color: #c9c2b8; font-size: 0.85rem; }
.g9auc-roster__empty { color: #7d8a7f; font-style: italic; }
.g9auc-rtm-tag { display: inline-block; background: #ffb703; color: #241304; font-size: 0.62rem; font-weight: 900; padding: 1px 6px; border-radius: 999px; vertical-align: 1px; letter-spacing: 0.5px; }

/* Avatar placeholder */
.g9auc-avatar--ph { display: inline-flex; align-items: center; justify-content: center; background: #7a1626; color: #ffd6dc; font-weight: 900; }

/* Filters */
.g9auc-filters { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 16px; }
.g9auc-filter { min-height: 44px; padding: 8px 18px; border-radius: 999px; border: 1px solid #b3243b; background: transparent; color: #e0d8cd; font-weight: 800; font-size: 0.9rem; cursor: pointer; transition: all 0.15s; }
.g9auc-filter.is-active { background: #b3243b; border-color: #b3243b; color: #fff; box-shadow: 0 4px 14px rgba(179,36,59,0.4); }

/* Player grid */
.g9auc-players { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.g9auc-pcard { position: relative; background: linear-gradient(160deg, #232f26 0%, #17251b 80%); border: 1px solid #35473a; border-radius: 14px; padding: 16px 10px 14px; text-align: center; transition: transform 0.15s; }
.g9auc-pcard--live { border-color: #ffb703; box-shadow: 0 0 18px rgba(255,183,3,0.3); animation: g9auc-card-pulse 1.8s ease-in-out infinite; }
@keyframes g9auc-card-pulse { 0%,100% { box-shadow: 0 0 8px rgba(255,183,3,0.2); } 50% { box-shadow: 0 0 24px rgba(255,183,3,0.5); } }
.g9auc-pcard--sold { opacity: 0.88; border-color: #2d6a4f; }
.g9auc-pcard--unsold { opacity: 0.6; }
.g9auc-pcard__badge { position: absolute; top: 8px; left: 8px; font-size: 0.66rem; font-weight: 900; letter-spacing: 1px; padding: 3px 8px; border-radius: 999px; z-index: 1; }
.g9auc-pcard__badge--live { background: #ffb703; color: #241304; animation: g9auc-chip-fade 1.2s ease-in-out infinite; }
.g9auc-pcard__badge--sold { background: #1e5631; color: #fff; }
.g9auc-pcard__badge--unsold { background: #55302f; color: #ffb1b1; }
.g9auc-pcard__photo { width: 76px; height: 76px; border-radius: 50%; object-fit: cover; object-position: top; margin: 4px auto 8px; display: block; border: 2px solid #b3243b; }
.g9auc-pcard--sold .g9auc-pcard__photo { border-color: #2d6a4f; }
span.g9auc-pcard__photo { margin: 4px auto 8px; font-size: 1.2rem; }
.g9auc-pcard__name { font-size: 0.94rem; font-weight: 800; margin: 0 0 3px; text-transform: capitalize; }
.g9auc-pcard__role { display: block; color: #8fd8ab; font-size: 0.8rem; margin-bottom: 3px; }
.g9auc-pcard__base, .g9auc-pcard__sold { display: block; color: #c9c2b8; font-size: 0.8rem; }
.g9auc-pcard__sold { color: #ffd166; font-weight: 800; }
.g9auc-empty { color: #9a938a; text-align: center; padding: 24px; }

/* Sticky current-bid bar */
.g9auc-sticky { position: fixed; left: 0; right: 0; bottom: 0; z-index: 9990;
  display: flex; align-items: center; gap: 10px; padding: 10px 14px;
  padding-bottom: calc(10px + env(safe-area-inset-bottom));
  background: rgba(38, 12, 18, 0.97); backdrop-filter: blur(8px);
  border-top: 2px solid #b3243b; box-shadow: 0 -6px 24px rgba(0,0,0,0.6);
  transform: translateY(110%); transition: transform 0.25s ease; cursor: pointer; }
.g9auc-sticky.is-show { transform: translateY(0); }
.g9auc-sticky__photo { width: 40px; height: 40px; border-radius: 10px; object-fit: cover; object-position: top; flex-shrink: 0; border: 2px solid #b3243b; }
.g9auc-sticky__info { flex: 1; min-width: 0; }
.g9auc-sticky__name { display: block; font-weight: 900; font-size: 0.95rem; color: #f3efe9; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-transform: capitalize; }
.g9auc-sticky__leader { display: block; color: #ffb703; font-size: 0.8rem; font-weight: 700; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.g9auc-sticky__bid { font-size: 1.15rem; font-weight: 900; color: #ffd166; white-space: nowrap; }
.g9auc-sticky__up { color: #c9c2b8; font-size: 1.1rem; flex-shrink: 0; }

/* Reduced motion: keep information, calm the blinking */
@media (prefers-reduced-motion: reduce) {
  .g9auc *, .g9auc *::before, .g9auc *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; }
}

/* Tablet / desktop enhancements */
@media (min-width: 700px) {
  .g9auc-spot { flex-direction: row; padding: 26px; }
  .g9auc-spot__player { flex: 1; align-items: flex-start; }
  .g9auc-spot__photo { width: 190px; height: 190px; }
  .g9auc-spot__bidside { flex: 1; }
  .g9auc-teams { grid-template-columns: repeat(2, 1fr); }
  .g9auc-players { grid-template-columns: repeat(4, 1fr); }
}
@media (min-width: 1024px) {
  .g9auc-teams { grid-template-columns: repeat(3, 1fr); }
  .g9auc-players { grid-template-columns: repeat(6, 1fr); }
}

/* Dashboard link */
.g9auc-hero__dashlink { display: inline-block; margin-top: 14px; color: #ffd166 !important; font-weight: 800; font-size: 0.9rem; letter-spacing: 1px; text-decoration: none; border: 1px solid rgba(255,209,102,0.5); padding: 8px 18px; border-radius: 999px; min-height: 44px; line-height: 26px; }

/* Team rows (accordion leaderboard) */
.g9auc-teams { display: flex; flex-direction: column; gap: 10px; }
.g9auc-trow { position: relative; background: linear-gradient(160deg, #1a3323 0%, #14261a 70%); border: 1px solid #2d6a4f; border-radius: 14px; }
.g9auc-trow--leading { border-color: #ffb703; box-shadow: 0 0 0 1px #ffb703, 0 0 20px rgba(255,183,3,0.22); }
.g9auc-trow__leadtag { position: absolute; top: -10px; right: 12px; background: #ffb703; color: #241304; font-size: 0.66rem; font-weight: 900; letter-spacing: 1px; padding: 3px 10px; border-radius: 999px; animation: g9auc-chip-fade 1.8s ease-in-out infinite; z-index: 1; }
.g9auc-trow__head { display: flex; align-items: center; gap: 10px; width: 100%; background: none; border: 0; color: inherit; padding: 12px 14px; min-height: 64px; cursor: pointer; text-align: left; font: inherit; }
.g9auc-trow__logo { width: 44px; height: 44px; border-radius: 10px; object-fit: contain; background: #fff; padding: 3px; flex-shrink: 0; }
.g9auc-trow__id { flex: 1; min-width: 0; }
.g9auc-trow__name { display: block; font-weight: 900; font-size: 0.98rem; text-transform: uppercase; letter-spacing: 0.5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.g9auc-trow__mgr { display: flex; align-items: center; gap: 6px; color: #c9c2b8; font-size: 0.82rem; margin-top: 2px; }
.g9auc-trow__mgr-photo { width: 20px; height: 20px; border-radius: 50%; object-fit: cover; font-size: 0.6rem; }
.g9auc-trow__cap { position: relative; flex-shrink: 0; width: 40px; text-align: center; }
.g9auc-trow__cap-photo { width: 36px; height: 36px; border-radius: 50%; object-fit: cover; object-position: top; border: 2px solid #ffd166; font-size: 0.7rem; }
.g9auc-trow__cap em { position: absolute; bottom: -4px; right: -2px; background: #ffd166; color: #241304; font-style: normal; font-weight: 900; font-size: 0.6rem; width: 15px; height: 15px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; }
.g9auc-trow__cap-none { color: #5f7263; }
.g9auc-trow__nums { text-align: right; flex-shrink: 0; }
.g9auc-trow__nums strong { display: block; color: #ffd166; font-size: 0.98rem; font-weight: 900; }
.g9auc-trow__nums em { color: #c9c2b8; font-size: 0.8rem; font-style: normal; }
.g9auc-trow__chev { color: #8fa896; font-size: 0.72rem; flex-shrink: 0; }
.g9auc-trow__body { padding: 0 14px 14px; }
.g9auc-trow.is-open .g9auc-trow__body { animation: g9auc-slidein 0.25s ease; }

/* Category filter chips */
.g9auc-filters--cats { margin-bottom: 10px; }
.g9auc-filter--cat { border-color: #2d6a4f; font-size: 0.82rem; }
.g9auc-filter--cat.is-active { background: #1e5631; border-color: #1e5631; box-shadow: 0 4px 14px rgba(30,86,49,0.5); }

/* Sold-player bid history modal */
.g9auc-pcard--haslog { cursor: pointer; }
.g9auc-pcard__loghint { display: block; color: #8fa896; font-size: 0.72rem; margin-top: 2px; }
.g9auc-modal { position: fixed; inset: 0; z-index: 99990; background: rgba(5,10,7,0.8); backdrop-filter: blur(4px); display: flex; align-items: center; justify-content: center; padding: 20px; }
.g9auc-modal__card { position: relative; background: linear-gradient(160deg, #22150f, #14261a); border: 1px solid #b3243b; border-radius: 18px; padding: 26px 20px; width: min(440px, 94vw); max-height: 84vh; overflow-y: auto; text-align: center; box-shadow: 0 20px 60px rgba(0,0,0,0.6); animation: g9auc-slidein 0.25s ease; }
.g9auc-modal__close { position: absolute; top: 8px; right: 12px; background: none; border: 0; color: #c9c2b8; font-size: 1.9rem; cursor: pointer; min-width: 44px; min-height: 44px; }
.g9auc-modal__photo { width: 84px; height: 84px; border-radius: 50%; object-fit: cover; object-position: top; margin: 0 auto 10px; display: block; border: 3px solid #b3243b; font-size: 1.4rem; }
.g9auc-modal__name { margin: 0 0 4px; font-size: 1.3rem; font-weight: 900; }
.g9auc-modal__sold { color: #ffd166; font-weight: 800; margin: 0 0 14px; }
.g9auc-modal__card .g9auc-bids { text-align: left; }

/* Desktop: rows stay single-column so all 10 teams read as one standings list */
@media (min-width: 1024px) {
  .g9auc-teams { max-width: 860px; margin: 0 auto; }
}

/* ---- Managers' dashboard ---- */
.g9auc-kpis { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.g9auc-kpi { background: linear-gradient(160deg, #1a3323, #14261a); border: 1px solid #2d6a4f; border-radius: 12px; padding: 12px 10px; text-align: center; }
.g9auc-kpi__label { display: block; color: #c9c2b8; font-size: 0.72rem; text-transform: uppercase; letter-spacing: 1px; font-weight: 700; }
.g9auc-kpi__val { display: block; color: #ffd166; font-size: 1.15rem; font-weight: 900; margin-top: 3px; overflow: hidden; text-overflow: ellipsis; }
.g9auc-standings-wrap, .g9auc-recent-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; border-radius: 12px; border: 1px solid #2d6a4f; }
.g9auc-standings { width: 100%; border-collapse: collapse; background: #14261a; font-size: 0.82rem; min-width: 760px; }
.g9auc-recent { min-width: 520px; }
.g9auc-standings th { background: #0d1c12; color: #8fd8ab; text-transform: uppercase; letter-spacing: 0.5px; font-size: 0.7rem; padding: 9px 8px; text-align: left; white-space: nowrap; position: sticky; top: 0; }
.g9auc-standings td { padding: 8px; border-top: 1px solid rgba(255,255,255,0.06); white-space: nowrap; color: #e0d8cd; }
.g9auc-standings .g9auc-st-team { position: sticky; left: 0; background: #14261a; }
.g9auc-standings .g9auc-st-team span { color: #9a938a; font-size: 0.74rem; }
.g9auc-standings .is-money { color: #ffd166; font-weight: 900; }
.g9auc-standings .is-ok { color: #7fe0a7; font-weight: 800; }
.g9auc-standings .is-need { color: #ff8a95; font-weight: 800; }
.g9auc-standings .is-warn { color: #ffb703; font-weight: 800; }
@media (min-width: 700px) { .g9auc-kpis { grid-template-columns: repeat(5, 1fr); } }
@media (min-width: 1024px) { .g9auc-kpis { grid-template-columns: repeat(9, 1fr); } }

/* ---- v2.5 additions ---- */
/* Modal text visibility (mounted inside .g9auc now; explicit colours as belt & braces) */
.g9auc-modal { color: #f3efe9; }
.g9auc-modal .g9auc-bid__team { color: #f3efe9; }
.g9auc-modal__name { color: #fff; }
.g9auc-modal__sold { display: flex; flex-direction: column; align-items: center; gap: 6px; margin: 0 0 14px; }
.g9auc-modal__soldlabel { color: #ff9daa; font-size: 0.72rem; font-weight: 900; letter-spacing: 2.5px; }
.g9auc-modal__team { display: inline-flex; align-items: center; gap: 8px; color: #fff; font-size: 1.05rem; }
.g9auc-modal__team-logo { width: 34px; height: 34px; border-radius: 8px; object-fit: contain; background: #fff; padding: 2px; font-size: 0.7rem; }
.g9auc-modal__price { color: #ffd166; font-weight: 900; font-size: 1.2rem; }

/* Roster rows: cat column + clickable history */
.g9auc-roster__cat { flex-shrink: 0; width: 26px; height: 20px; border-radius: 5px; background: #1e5631; color: #c9f2d8; font-size: 0.68rem; font-weight: 900; display: inline-flex; align-items: center; justify-content: center; }
.g9auc-rosterlink { cursor: pointer; border-radius: 8px; }
.g9auc-rosterlink:active { background: rgba(255,255,255,0.06); }
.g9auc-roster__hist { color: #8fa896; font-size: 0.78rem; }

/* Category filter: chips on desktop, dropdown on mobile */
.g9auc-catselect-wrap { display: none; }
@media (max-width: 699px) {
  .g9auc-catchips { display: none; }
  .g9auc-catselect-wrap { display: flex; align-items: center; gap: 10px; color: #c9c2b8; font-weight: 700; font-size: 0.9rem; margin-bottom: 4px; }
  .g9auc-catselect { flex: 1; min-height: 44px; background: #10251a; color: #f3efe9; border: 1px solid #2d6a4f; border-radius: 10px; padding: 8px 12px; font-size: 0.95rem; font-weight: 700; }
}
.g9auc-catchips { display: flex; gap: 8px; flex-wrap: wrap; }

/* Desktop team cards (mockup: logo left, manager right, roster table) */
.g9auc-teams--cards { display: grid !important; grid-template-columns: repeat(2, 1fr); gap: 16px; max-width: none !important; }
@media (min-width: 1400px) { .g9auc-teams--cards { grid-template-columns: repeat(3, 1fr); } }
.g9auc-tcard { position: relative; background: linear-gradient(160deg, #1a3323 0%, #14261a 70%); border: 1px solid #2d6a4f; border-radius: 16px; padding: 18px; }
.g9auc-tcard--leading { border-color: #ffb703; box-shadow: 0 0 0 1px #ffb703, 0 0 20px rgba(255,183,3,0.22); }
.g9auc-tcard__top { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; margin-bottom: 12px; }
.g9auc-tcard__brand { display: flex; align-items: center; gap: 12px; min-width: 0; }
.g9auc-tcard__logo { width: 64px; height: 64px; border-radius: 12px; object-fit: contain; background: #fff; padding: 5px; flex-shrink: 0; box-shadow: 0 4px 12px rgba(0,0,0,0.4); font-size: 1rem; }
.g9auc-tcard__brand h3 { margin: 0; font-size: 1.12rem; font-weight: 900; text-transform: uppercase; letter-spacing: 0.5px; }
.g9auc-tcard__mgr { display: flex; flex-direction: column; align-items: center; gap: 5px; flex-shrink: 0; text-align: center; }
.g9auc-tcard__mgr-photo { width: 58px; height: 58px; border-radius: 12px; object-fit: cover; object-position: top; border: 2px solid #b3243b; font-size: 0.9rem; }
.g9auc-tcard__mgr span { color: #c9c2b8; font-size: 0.78rem; font-weight: 700; max-width: 130px; }
.g9auc-roster__cols { display: flex; gap: 8px; color: #8fa896; font-size: 0.72rem; font-weight: 900; text-transform: uppercase; letter-spacing: 1px; border-bottom: 1px solid rgba(255,255,255,0.1); padding: 10px 0 6px; margin-top: 8px; }
.g9auc-roster__cols span:nth-child(1) { width: 26px; }
.g9auc-roster__cols span:nth-child(2) { flex: 1; margin-left: 34px; }
.g9auc-roster--table { border-top: 0; margin-top: 2px; max-height: 300px; }

/* Dashboard: logo + mini player cells + tooltip affordance */
.g9auc-st-team__row { display: flex; align-items: center; gap: 8px; }
.g9auc-st-logo { width: 34px; height: 34px; border-radius: 8px; object-fit: contain; background: #fff; padding: 2px; flex-shrink: 0; font-size: 0.7rem; }
.g9auc-standings th.has-tip { cursor: help; text-decoration: underline dotted rgba(143,216,171,0.6); text-underline-offset: 3px; }
.g9auc-st-cat { min-width: 110px; }
.g9auc-st-p { display: flex; align-items: center; gap: 6px; }
.g9auc-st-p__photo { width: 24px; height: 24px; border-radius: 50%; object-fit: cover; object-position: top; flex-shrink: 0; font-size: 0.58rem; }
.g9auc-st-p__name { overflow: hidden; text-overflow: ellipsis; max-width: 110px; }
.g9auc-st-p__price { display: block; color: #ffd166; font-size: 0.74rem; font-weight: 800; font-style: normal; margin-top: 2px; margin-left: 30px; }
.g9auc-standings { min-width: 1080px; }

/* Team names (v2.7): wrap only at spaces, never mid-word; JS shrinks to fit */
.g9auc-tcard .g9auc-trow__name { white-space: normal; overflow: visible; text-overflow: clip; line-height: 1.15; word-break: normal; overflow-wrap: normal; hyphens: none; }
.g9auc-tcard__brand { min-width: 0; flex: 1; }
.g9auc-tcard__brand h3.g9auc-trow__name { font-size: 1.02rem; letter-spacing: 0; }
.g9auc-trow__id .g9auc-trow__name { letter-spacing: 0; }

/* Auction complete mode (v3.0) */
.g9auc-live-pill--done { background: #1e5631; border-color: #4ade80; color: #eafff2; animation: none; box-shadow: 0 0 18px rgba(74,222,128,0.35); }
.g9auc-live-pill--done .g9auc-live-dot { display: none; }
.g9auc-spot--done { border-color: #2d6a4f; }
.g9auc-spot--done::before { opacity: 0.35; animation-duration: 14s; }
.g9auc-spot--done h2 { color: #ffd166 !important; }

/* At-a-glance standings cards (v3.2) - no horizontal scroll anywhere */
.g9auc-stgrid { display: grid; grid-template-columns: 1fr; gap: 12px; }
@media (min-width: 860px) { .g9auc-stgrid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1500px) { .g9auc-stgrid { grid-template-columns: repeat(3, 1fr); } }
.g9auc-stcard { background: linear-gradient(160deg, #1a3323 0%, #14261a 70%); border: 1px solid #2d6a4f; border-radius: 14px; padding: 14px; }
.g9auc-stcard__head { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.g9auc-stcard__id { flex: 1; min-width: 0; }
.g9auc-stcard__id strong { display: block; font-weight: 900; text-transform: uppercase; font-size: 0.95rem; }
.g9auc-stcard__id em { color: #9a938a; font-style: normal; font-size: 0.78rem; }
.g9auc-stchip { display: inline-flex; align-items: center; background: rgba(255,255,255,0.08); color: #c9c2b8; font-size: 0.68rem; font-weight: 900; letter-spacing: 0.5px; padding: 3px 10px; border-radius: 999px; }
.g9auc-stchip--ok { background: rgba(30,86,49,0.6); color: #7fe0a7; }
.g9auc-stchip--warn { background: rgba(180,83,9,0.4); color: #ffb703; }
.g9auc-stchip--need { background: rgba(122,22,38,0.55); color: #ff9daa; }
.g9auc-stcard__nums { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; margin-bottom: 10px; }
.g9auc-stcard__nums span { background: rgba(0,0,0,0.28); border-radius: 8px; padding: 6px 4px; text-align: center; min-width: 0; }
.g9auc-stcard__nums em { display: block; color: #9a938a; font-size: 0.62rem; font-style: normal; text-transform: uppercase; letter-spacing: 0.5px; }
.g9auc-stcard__nums b { display: block; font-size: 0.78rem; font-weight: 900; color: #e0d8cd; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.g9auc-stcard__nums b.is-gold { color: #ffd166; }
.g9auc-stcard__slots { display: grid; grid-template-columns: repeat(7, 1fr); gap: 5px; margin-bottom: 10px; }
.g9auc-slot { display: flex; flex-direction: column; align-items: center; gap: 2px; background: rgba(0,0,0,0.28); border: 1px solid rgba(255,255,255,0.08); border-radius: 8px; padding: 5px 2px; min-width: 0; }
.g9auc-slot em { color: #8fa896; font-size: 0.56rem; font-weight: 900; font-style: normal; }
.g9auc-slot__photo { width: 26px; height: 26px; border-radius: 50%; object-fit: cover; object-position: top; font-size: 0.5rem; }
.g9auc-slot b { font-size: 0.58rem; font-weight: 800; color: #e0d8cd; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.g9auc-slot i { font-style: normal; font-size: 0.54rem; color: #ffd166; font-weight: 800; white-space: nowrap; }
.g9auc-slot--need { border-style: dashed; border-color: rgba(255,157,170,0.4); justify-content: center; color: #ff9daa; font-size: 0.6rem; font-weight: 900; min-height: 58px; }
.g9auc-stcard__foot { display: flex; gap: 6px; flex-wrap: wrap; }
@media (max-width: 420px) {
  .g9auc-stcard__nums { grid-template-columns: repeat(2, 1fr); }
  .g9auc-stcard__nums b { font-size: 0.82rem; }
  .g9auc-slot b { display: none; } /* tiny screens: photo + price only */
}

/* v3.3: desktop analytical standings table - fits without scroll */
.g9auc-sttable { display: none; }
@media (min-width: 1024px) {
  .g9auc-sttable { display: table; width: 100%; table-layout: fixed; border-collapse: collapse; background: #14261a; border: 1px solid #2d6a4f; border-radius: 12px; overflow: hidden; font-size: 0.74rem; }
  .g9auc-stgrid { display: none !important; }
}
.g9auc-sttable th { background: #0d1c12; color: #8fd8ab; text-transform: uppercase; letter-spacing: 0.4px; font-size: 0.64rem; padding: 8px 4px; text-align: center; white-space: nowrap; overflow: hidden; }
.g9auc-sttable th.c-team { width: 15%; text-align: left; padding-left: 10px; }
.g9auc-sttable th.c-cat { width: 6%; }
.g9auc-sttable th.has-tip { cursor: help; text-decoration: underline dotted rgba(143,216,171,0.6); text-underline-offset: 3px; }
.g9auc-sttable td { padding: 6px 4px; border-top: 1px solid rgba(255,255,255,0.06); color: #e0d8cd; text-align: center; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.g9auc-sttable td.c-team { text-align: left; padding-left: 10px; }
.g9auc-sttable td.c-team strong { font-size: 0.76rem; }
.g9auc-sttable td.c-team span span { color: #9a938a; font-size: 0.66rem; }
.g9auc-sttable .is-money { color: #ffd166; font-weight: 900; }
.g9auc-sttable .is-ok { color: #7fe0a7; font-weight: 800; }
.g9auc-sttable .is-warn { color: #ffb703; font-weight: 800; }
.g9auc-sttable .is-need { color: #ff8a95; font-weight: 800; }
.g9auc-sttable td.c-cat { padding: 5px 2px; }
.g9auc-sttable td.c-cat.is-void { color: #5f7263; }
.g9auc-tcell__photo { display: block; width: 26px; height: 26px; border-radius: 50%; object-fit: cover; object-position: top; margin: 0 auto 2px; font-size: 0.52rem; }
span.g9auc-tcell__photo { display: flex; align-items: center; justify-content: center; }
.g9auc-tcell__price { display: block; color: #ffd166; font-size: 0.6rem; font-weight: 800; }
.g9auc-sttable .g9auc-st-logo { width: 28px; height: 28px; }

/* completed-mode neutral empty slot (pool exhausted, team still complete) */
.g9auc-slot--void { border-style: dashed; border-color: rgba(255,255,255,0.15); color: #5f7263; justify-content: center; min-height: 58px; font-weight: 900; }

/* captain tag on rosters */
.g9auc-cap-tag { display: inline-block; background: #ffd166; color: #241304; font-size: 0.6rem; font-weight: 900; padding: 1px 6px; border-radius: 999px; vertical-align: 1px; letter-spacing: 0.5px; }

/* most expensive buy card (completed mode) */
.g9auc-topbuy { margin-top: 18px; background: rgba(8,12,9,0.7); border: 1px solid #ffd166; border-radius: 14px; padding: 14px 16px; max-width: 560px; width: 100%; }
.g9auc-topbuy[role="button"] { cursor: pointer; }
.g9auc-topbuy__label { display: block; color: #ffd166; font-size: 0.72rem; font-weight: 900; letter-spacing: 2px; margin-bottom: 10px; }
.g9auc-topbuy__row { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.g9auc-topbuy__photo { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; object-position: top; border: 2px solid #ffd166; font-size: 0.9rem; flex-shrink: 0; }
.g9auc-topbuy__meta { flex: 1; min-width: 120px; text-align: left; }
.g9auc-topbuy__meta strong { display: block; font-size: 1.05rem; font-weight: 900; color: #fff; }
.g9auc-topbuy__meta em { color: #8fd8ab; font-style: normal; font-size: 0.78rem; }
.g9auc-topbuy__price { color: #ffd166; font-size: 1.25rem; font-weight: 900; white-space: nowrap; }
.g9auc-topbuy__team { display: inline-flex; align-items: center; gap: 7px; font-weight: 800; font-size: 0.9rem; }
.g9auc-topbuy__logo { width: 30px; height: 30px; border-radius: 7px; object-fit: contain; background: #fff; padding: 2px; font-size: 0.6rem; }

/* Configurable category / captain badges (v3.4) */
.g9auc-badge { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; font-size: 0.62rem; font-weight: 900; letter-spacing: 0.3px; line-height: 1; vertical-align: 1px; }
.g9auc-badge--circle { width: 22px; height: 22px; border-radius: 50%; padding: 0; }
.g9auc-badge--box { min-width: 26px; height: 20px; border-radius: 5px; padding: 0 6px; }
li > .g9auc-badge { margin-right: 0; }

/* ============================================================
 * v3.5 additions — highlights grid, share, chips, ratings, logos
 * ============================================================ */

/* Completed-mode highlights grid */
.g9auc-highlights { display: grid; grid-template-columns: 1fr; gap: 12px; width: 100%; max-width: 680px; margin: 4px auto 0; }
@media (min-width: 720px) { .g9auc-highlights { grid-template-columns: 1fr 1fr; } }
.g9auc-hcard { display: flex; flex-direction: column; gap: 10px; text-align: left; background: rgba(8,12,9,0.7); border: 1px solid #ffd166; border-radius: 14px; padding: 14px 16px; width: 100%; color: inherit; font: inherit; cursor: pointer; -webkit-tap-highlight-color: transparent; }
.g9auc-hcard--team { cursor: default; }
.g9auc-hcard__label { display: block; color: #ffd166; font-size: 0.72rem; font-weight: 900; letter-spacing: 1.5px; }
.g9auc-hcard__row { display: flex; align-items: center; gap: 12px; }
.g9auc-hcard__photo { width: 54px; height: 54px; border-radius: 50%; object-fit: cover; object-position: top; border: 2px solid #ffd166; font-size: 0.9rem; flex-shrink: 0; background: #fff; }
.g9auc-hcard--team .g9auc-hcard__photo { border-radius: 10px; object-fit: contain; padding: 3px; }
.g9auc-hcard__meta { flex: 1; min-width: 0; }
.g9auc-hcard__meta strong { display: block; font-size: 1.02rem; font-weight: 900; color: #fff; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.g9auc-hcard__meta em { color: #8fd8ab; font-style: normal; font-size: 0.78rem; }
.g9auc-hcard__foot { display: flex; align-items: center; justify-content: space-between; gap: 8px; flex-wrap: wrap; }
.g9auc-hcard__price { color: #ffd166; font-size: 1.05rem; font-weight: 900; }
.g9auc-hcard__team { display: inline-flex; align-items: center; gap: 7px; font-weight: 800; font-size: 0.85rem; color: #fff; }
.g9auc-hcard__logo { width: 26px; height: 26px; border-radius: 6px; object-fit: contain; background: #fff; padding: 2px; font-size: 0.55rem; }

/* Manager caption — tiny uppercase label above the name */
.g9auc-mgrcap { display: block; }
.g9auc-mgrcap em { display: block; font-style: normal; font-size: 0.6rem; font-weight: 900; letter-spacing: 1.5px; color: #ffd166; line-height: 1.2; text-transform: uppercase; }
.g9auc-mgrcap--inline { font-weight: 700; color: #cfe9d8; }

/* Roster chips */
.g9auc-bb-tag { display: inline-block; background: #2dd4bf; color: #04231f; font-size: 0.62rem; font-weight: 900; padding: 1px 6px; border-radius: 999px; vertical-align: 1px; letter-spacing: 0.4px; white-space: nowrap; }
.g9auc-wk-tag { display: inline-block; background: #cbd5e1; color: #1e293b; font-size: 0.62rem; font-weight: 900; padding: 1px 6px; border-radius: 999px; vertical-align: 1px; letter-spacing: 0.4px; }
.g9auc-chip { display: inline-block; background: rgba(255,255,255,0.12); color: #fff; font-size: 0.64rem; font-weight: 900; padding: 2px 8px; border-radius: 999px; letter-spacing: 1px; }
.g9auc-chip--mgr { background: #ffd166; color: #241304; }

/* Share button — ghost pill, 44px touch target */
.g9auc-sharebtn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; width: 100%; min-height: 44px; margin-top: 12px; padding: 0 14px; background: transparent; border: 1px solid rgba(255,209,102,0.55); border-radius: 999px; color: #ffd166; font-size: 0.85rem; font-weight: 800; letter-spacing: 0.3px; cursor: pointer; -webkit-tap-highlight-color: transparent; }
.g9auc-sharebtn:hover { background: rgba(255,209,102,0.12); }

/* Pool sold-card small logo */
.g9auc-pcard__soldlogo { width: 18px; height: 18px; border-radius: 4px; object-fit: contain; background: #fff; padding: 1px; vertical-align: -3px; margin-right: 5px; display: inline-block; font-size: 0.5rem; }
.g9auc-pcard { cursor: pointer; }

/* Modal additions */
.g9auc-modal__cat { display: block; color: #8fd8ab; font-size: 0.82rem; font-weight: 700; margin: 2px 0 10px; }
.g9auc-modal__chips { display: flex; flex-wrap: wrap; gap: 6px; justify-content: center; margin: 0 0 12px; }
.g9auc-modal__ratings { display: flex; gap: 10px; justify-content: center; margin: 0 0 14px; }
.g9auc-rat { display: inline-flex; flex-direction: column; align-items: center; background: rgba(255,255,255,0.08); border-radius: 10px; padding: 6px 14px; min-width: 62px; }
.g9auc-rat em { font-style: normal; font-size: 0.62rem; letter-spacing: 1px; color: #ff9daa; font-weight: 800; text-transform: uppercase; }
.g9auc-rat b { font-size: 1.15rem; color: #fff; }
.g9auc-modal__sold--none .g9auc-modal__soldlabel { color: #cbd5e1; }
.g9auc-modal__share { max-width: 260px; margin-left: auto; margin-right: auto; }

/* Toast (clipboard fallback confirmation) */
.g9auc-toast { position: fixed; left: 50%; bottom: 26px; transform: translate(-50%, 12px); background: #0f2417; color: #eafff2; border: 1px solid #2dd4bf; border-radius: 999px; padding: 10px 18px; font-size: 0.85rem; font-weight: 700; opacity: 0; transition: opacity 0.25s ease, transform 0.25s ease; z-index: 100000; pointer-events: none; }
.g9auc-toast.is-show { opacity: 1; transform: translate(-50%, 0); }

/* Dashboard: clickable standings cells */
.g9auc-cellclick { cursor: pointer; }

/* v3.6: desktop team cards show the full squad — no inner scrollbar */
.g9auc-roster--table { max-height: none; overflow-y: visible; }

/* v3.7: share button on highlight cards */
.g9auc-hcard { position: relative; }
.g9auc-hcard-share { position: absolute; top: 10px; right: 10px; width: 40px; height: 40px; border-radius: 50%; border: 1px solid rgba(255,209,102,0.5); background: rgba(8,12,9,0.65); color: #ffd166; font-size: 1rem; line-height: 1; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; -webkit-tap-highlight-color: transparent; }
.g9auc-hcard-share:hover { background: rgba(255,209,102,0.15); }
.g9auc-hcard__label { padding-right: 44px; }

/* v3.8: manager photo + name under the team on highlight cards */
.g9auc-hcard__team { flex-direction: column; align-items: flex-end; gap: 3px; }
.g9auc-hcard__teamline, .g9auc-hcard__mgrline { display: inline-flex; align-items: center; gap: 7px; }
.g9auc-hcard__mgrline { font-size: 0.74rem; font-weight: 600; color: #cfe9d8; }
.g9auc-hcard__mgrpic { width: 20px; height: 20px; border-radius: 50%; object-fit: cover; object-position: top; font-size: 0.5rem; flex-shrink: 0; }
.g9auc-hcard__mgr { display: inline-flex; align-items: center; gap: 6px; font-style: normal; }
.g9auc-hcard__mgr .g9auc-hcard__mgrpic { width: 18px; height: 18px; }

/* v3.9: highlight team block — left-align logo & manager pic to a shared start,
   and keep the block on the right even when there's no stat text (Best Bargain) */
.g9auc-hcard__team { align-items: flex-start; margin-left: auto; text-align: left; }
.g9auc-hcard__logo, .g9auc-hcard__mgrpic { flex-shrink: 0; }

/* v4.0: highlight attribution = one team logo + stacked text (team name over manager) */
.g9auc-hcard__team { flex-direction: row; align-items: center; gap: 9px; margin-left: auto; text-align: left; }
.g9auc-hcard__logo { width: 38px; height: 38px; border-radius: 9px; }
.g9auc-hcard__teaminfo { display: inline-flex; flex-direction: column; align-items: flex-start; gap: 2px; min-width: 0; }
.g9auc-hcard__teamname { font-weight: 800; font-size: 0.9rem; color: #fff; line-height: 1.1; white-space: nowrap; }
.g9auc-hcard__mgrline { font-size: 0.72rem; font-weight: 600; color: #cfe9d8; }
.g9auc-hcard__mgrpic { width: 18px; height: 18px; }

/* ============================================================
 * v4.1 — Match fixtures (schedule) + squad-on-tap
 * ============================================================ */
#g9auc-fixtures { max-width: 720px; margin: 0 auto; }

/* team chips strip */
.g9auc-fxchips { display: flex; gap: 8px; overflow-x: auto; -webkit-overflow-scrolling: touch; padding: 2px 2px 10px; scrollbar-width: thin; }
.g9auc-fxchip { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 7px; padding: 6px 12px; min-height: 40px; border-radius: 999px; border: 1px solid rgba(255,255,255,0.16); background: rgba(8,12,9,0.55); color: #eafff2; font-size: 0.82rem; font-weight: 700; cursor: pointer; white-space: nowrap; -webkit-tap-highlight-color: transparent; }
.g9auc-fxchip.is-active { border-color: #ffd166; background: rgba(255,209,102,0.16); color: #fff; }
.g9auc-fxchip__logo { width: 24px; height: 24px; border-radius: 6px; object-fit: contain; background: #fff; padding: 1px; font-size: 0.5rem; flex-shrink: 0; }

/* selected-team header */
.g9auc-fxhead { display: flex; align-items: center; gap: 10px; margin: 4px 0 2px; }
.g9auc-fxhead__logo { width: 40px; height: 40px; border-radius: 9px; object-fit: contain; background: #fff; padding: 3px; font-size: 0.6rem; flex-shrink: 0; }
.g9auc-fxhead strong { font-size: 1.05rem; color: #fff; flex: 1; min-width: 0; }
.g9auc-fxhead .g9auc-sharebtn { width: auto; margin: 0; padding: 0 16px; min-height: 40px; }

.g9auc-fx-hint { font-size: 0.78rem; color: #9fbfab; margin: 6px 0 10px; }

/* match rows */
.g9auc-fxlist { display: flex; flex-direction: column; gap: 8px; }
.g9auc-fxrow { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; background: rgba(8,12,9,0.5); border: 1px solid rgba(255,255,255,0.08); border-radius: 12px; padding: 10px 12px; }
.g9auc-fxrow__meta { display: inline-flex; align-items: center; gap: 8px; flex: 0 0 auto; }
.g9auc-fxrow__meta b { font-size: 0.9rem; color: #ffd166; font-weight: 900; min-width: 46px; }
.g9auc-fxrow__vs, .g9auc-fxrow__x { color: #8fd8ab; font-weight: 800; font-size: 0.8rem; }
.g9auc-fxrow__match { display: inline-flex; align-items: center; gap: 8px; flex: 1; min-width: 0; flex-wrap: wrap; }

/* pitch pill */
.g9auc-pitch { display: inline-block; font-size: 0.68rem; font-weight: 900; letter-spacing: 0.4px; padding: 3px 9px; border-radius: 999px; white-space: nowrap; }
.g9auc-pitch--1 { background: #bcd4ee; color: #0d2540; }
.g9auc-pitch--2 { background: #f6d3b3; color: #3d2410; }

/* tappable team inside a match */
.g9auc-fx-team { display: inline-flex; align-items: center; gap: 6px; font-weight: 800; font-size: 0.9rem; color: #fff; cursor: pointer; padding: 3px 6px; border-radius: 8px; -webkit-tap-highlight-color: transparent; }
.g9auc-fx-team:hover { background: rgba(255,255,255,0.06); }
.g9auc-fx-team.is-plain { cursor: default; color: #cfe9d8; }
.g9auc-fx-logo { width: 26px; height: 26px; border-radius: 6px; object-fit: contain; background: #fff; padding: 1px; font-size: 0.5rem; flex-shrink: 0; }
.g9auc-fx-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 40vw; }

/* squad modal reuse */
.g9auc-modal__photo--logo { border-radius: 14px !important; object-fit: contain !important; padding: 8px; }
.g9auc-modal__roster { max-height: 46vh; overflow-y: auto; text-align: left; margin-top: 12px; }

@media (min-width: 700px) {
  .g9auc-fx-name { max-width: 220px; }
  .g9auc-fxrow__match { flex: 0 0 auto; margin-left: auto; }
}

/* ============================================================
 * v4.2 — Fixtures on its own page: team picker as a wrapping grid
 * (no horizontal slider on desktop or mobile)
 * ============================================================ */
#g9auc-fixtures { max-width: 900px; }
.g9auc-fxchips { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; overflow: visible; padding: 2px 0 14px; }
@media (min-width: 560px) { .g9auc-fxchips { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (min-width: 860px) { .g9auc-fxchips { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); } }
.g9auc-fxchip { justify-content: flex-start; width: 100%; }
.g9auc-fxchip span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* v4.4 — CricHeroes live-score link + embed (fixtures page) */
.g9auc-cric { max-width: 900px; margin: 0 auto; }
.g9auc-cric__embed { position: relative; width: 100%; }
.g9auc-cric__embed iframe { width: 100% !important; min-height: 520px; border: 0; border-radius: 12px; background: #0b1510; }
.g9auc-cric__linkwrap { max-width: 900px; margin: 4px auto 18px; text-align: center; }
.g9auc-cric__link { display: inline-flex; align-items: center; gap: 8px; min-height: 48px; padding: 0 24px; border-radius: 999px; background: #b3243b; color: #fff; font-weight: 800; font-size: 0.95rem; text-decoration: none; -webkit-tap-highlight-color: transparent; }
.g9auc-cric__link:hover { background: #8f1c30; color: #fff; }

/* v4.5 — match results (winner/status/note) + points table */
.g9auc-fx-team.is-lose { opacity: 0.5; }
.g9auc-fx-won { background: #2dd4bf; color: #04231f; font-size: 0.56rem; font-weight: 900; padding: 1px 6px; border-radius: 999px; margin-left: 5px; letter-spacing: 0.5px; }
.g9auc-mstat { display: inline-block; font-size: 0.62rem; font-weight: 900; letter-spacing: 0.5px; padding: 2px 8px; border-radius: 999px; }
.g9auc-mstat--live { background: #b3243b; color: #fff; animation: g9auc-mblink 1.2s steps(1) infinite; }
.g9auc-mstat--off { background: rgba(255,255,255,0.14); color: #cbd5e1; }
.g9auc-mstat--res { background: #ffd166; color: #241304; }
.g9auc-fxrow.is-live { border-color: #b3243b; box-shadow: inset 0 0 0 1px rgba(179,36,59,0.45); }
.g9auc-fxrow.is-off { opacity: 0.68; }
.g9auc-fxrow__note { flex-basis: 100%; font-size: 0.78rem; color: #9fbfab; font-style: italic; }
.g9auc-fxres { font-size: 0.66rem; font-weight: 900; padding: 2px 8px; border-radius: 999px; background: rgba(255,255,255,0.12); color: #fff; }
.g9auc-fxres--win { background: #1e7e34; color: #eafff2; }
.g9auc-fxres--lose { background: #7a2530; color: #ffdfe4; }
@keyframes g9auc-mblink { 50% { opacity: 0.35; } }

.g9auc-ptwrap { max-width: 720px; margin: 0 auto 18px; }
.g9auc-pt__title { font-size: 1rem; color: #ffd166; margin: 0 0 8px; letter-spacing: 0.5px; }
.g9auc-pt { width: 100%; border-collapse: collapse; background: rgba(8,12,9,0.5); border: 1px solid rgba(255,255,255,0.08); border-radius: 12px; overflow: hidden; font-size: 0.86rem; }
.g9auc-pt th { background: #0d1c12; color: #8fd8ab; font-size: 0.64rem; text-transform: uppercase; letter-spacing: 0.5px; padding: 8px 5px; text-align: center; }
.g9auc-pt td { padding: 8px 5px; text-align: center; border-top: 1px solid rgba(255,255,255,0.06); color: #e0d8cd; }
.g9auc-pt__team { text-align: left; cursor: pointer; font-weight: 800; color: #fff; }
.g9auc-pt__team { display: flex; align-items: center; gap: 8px; }
.g9auc-pt__team span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.g9auc-pt__logo { width: 24px; height: 24px; border-radius: 6px; object-fit: contain; background: #fff; padding: 1px; font-size: 0.5rem; flex-shrink: 0; }
.g9auc-pt__pts { color: #ffd166; font-weight: 900; }
.g9auc-pt tr.is-mine td { background: rgba(255,209,102,0.10); }

/* v4.7 — per-match stats link */
.g9auc-fxlink { flex-basis: 100%; display: inline-flex; align-items: center; gap: 6px; margin-top: 4px; align-self: flex-start; padding: 5px 12px; min-height: 34px; border-radius: 999px; border: 1px solid rgba(255,209,102,0.5); background: transparent; color: #ffd166; font-size: 0.78rem; font-weight: 800; text-decoration: none; width: fit-content; }
.g9auc-fxlink:hover { background: rgba(255,209,102,0.12); color: #ffd166; }

/* v4.8 — points table: full-width align + Manager/Captain (desktop) */
.g9auc-ptwrap { max-width: none; }
.g9auc-pt__scroll { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.g9auc-pt--desk { display: none; }
.g9auc-pt__info { text-align: left; }
.g9auc-pt__mini { width: 22px; height: 22px; border-radius: 50%; object-fit: cover; object-position: top; font-size: 0.5rem; vertical-align: middle; margin-right: 6px; display: inline-block; }
.g9auc-pt__mininame { font-size: 0.82rem; color: #e0d8cd; }
@media (min-width: 760px) { .g9auc-pt--desk { display: table-cell; } }

/* v4.9 — manager/captain in team header + opponent rows; tournament info strip */
.g9auc-fxhead__id { display: flex; flex-direction: column; gap: 2px; flex: 1; min-width: 0; }
.g9auc-fxpeople { display: flex; flex-wrap: wrap; gap: 6px 14px; flex-basis: 100%; margin-top: 4px; }
.g9auc-fxp { display: inline-flex; align-items: center; gap: 5px; font-size: 0.76rem; color: #cfe9d8; }
.g9auc-fxp em { font-style: normal; text-transform: uppercase; font-size: 0.6rem; letter-spacing: 0.5px; color: #8fd8ab; }
.g9auc-fxp__pic { width: 18px; height: 18px; border-radius: 50%; object-fit: cover; object-position: top; font-size: 0.45rem; }
.g9auc-fxp b { font-weight: 700; color: #fff; }
.g9auc-tourinfo { max-width: 900px; margin: 0 auto 14px; display: flex; flex-wrap: wrap; gap: 10px 18px; align-items: center; justify-content: center; color: #e0d8cd; font-size: 0.92rem; }
.g9auc-tourinfo__item { font-weight: 600; }
.g9auc-tourinfo__link { display: inline-flex; align-items: center; gap: 6px; padding: 4px 14px; min-height: 36px; border-radius: 999px; border: 1px solid rgba(255,209,102,0.5); color: #ffd166; font-weight: 800; text-decoration: none; font-size: 0.85rem; }
.g9auc-tourinfo__link:hover { background: rgba(255,209,102,0.12); color: #ffd166; }

/* v4.10 — compact M/C badges, right-grouped opponent, points-table left align */
.g9auc-fxp__role { display: inline-flex; align-items: center; justify-content: center; width: 16px; height: 16px; border-radius: 50%; background: #ffd166; color: #241304; font-size: 0.6rem; font-weight: 900; font-style: normal; flex-shrink: 0; }
.g9auc-fxp__role--c { background: #2dd4bf; color: #04231f; }
.g9auc-fxopp { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; margin-left: auto; min-width: 0; text-align: right; }
.g9auc-fxopp .g9auc-fxpeople { justify-content: flex-end; flex-basis: auto; margin-top: 0; }
.g9auc-fxrow--team { flex-wrap: wrap; }
/* points table: left-align Manager/Captain columns for order */
.g9auc-pt td.g9auc-pt__info, .g9auc-pt th.g9auc-pt--desk { text-align: left; padding-left: 12px; }
.g9auc-pt__info .g9auc-pt__mininame { white-space: nowrap; }

/* v4.11 — team schedule rows: on mobile stack the opponent left (kills the right-float gap); desktop keeps it right */
.g9auc-fxrow--team { align-items: flex-start; }
.g9auc-fxopp { align-items: flex-start; margin-left: 0; width: 100%; text-align: left; }
.g9auc-fxopp .g9auc-fxpeople { justify-content: flex-start; }
@media (min-width: 700px) {
  .g9auc-fxrow--team { align-items: center; }
  .g9auc-fxopp { align-items: flex-end; margin-left: auto; width: auto; text-align: right; }
  .g9auc-fxopp .g9auc-fxpeople { justify-content: flex-end; }
}

/* v4.12 — mobile team-schedule rows: fully centred stack
   time·pitch / vs / team / manager+captain, each on its own line */
@media (max-width: 699px) {
  .g9auc-fxrow--team { flex-direction: column; align-items: center; gap: 6px; text-align: center; }
  .g9auc-fxrow--team .g9auc-fxrow__meta { justify-content: center; flex-wrap: wrap; }
  .g9auc-fxrow--team .g9auc-fxrow__vs { margin: 0; }
  .g9auc-fxrow--team .g9auc-fxopp { align-items: center; text-align: center; width: 100%; }
  .g9auc-fxrow--team .g9auc-fxopp .g9auc-fxpeople { justify-content: center; }
  .g9auc-fxrow--team .g9auc-fxrow__note { text-align: center; }
  .g9auc-fxrow--team .g9auc-fxlink { align-self: center; }
}
