:root{--ws-border:#273746;--ws-text:#eef6fb;--ws-muted:#93a6b8;--ws-cyan:#37e7ff;--ws-green:#42e59a;--ws-violet:#8a7bff;--ws-amber:#ffd166}
#workspace-nav{max-width:1380px;margin:0 auto 20px;padding:0 20px}
.ws-nav{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:11px 13px;border:1px solid #263746;border-radius:18px;background:linear-gradient(115deg,#0d1722f5,#0a1019f5 62%,#121129f5);box-shadow:0 14px 38px #0004}
.ws-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ws-text);min-width:190px}.ws-brand-mark{width:38px;height:38px;display:grid;place-items:center;border:1px solid #37e7ff55;border-radius:12px;background:#0c1d28;color:var(--ws-cyan)}.ws-brand strong{display:block;font-size:12px;letter-spacing:.12em}.ws-brand small{display:block;color:var(--ws-muted);font-size:10px;margin-top:1px}
.ws-nav-right{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;min-width:0}.ws-nav-links{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ws-nav-link{display:inline-flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid transparent;border-radius:10px;text-decoration:none;color:#b9c9d7;font-size:11px;font-weight:800;white-space:nowrap}.ws-nav-link:hover,.ws-nav-link.active{border-color:#37e7ff55;background:#37e7ff12;color:#fff}.ws-nav-link.active{box-shadow:inset 0 -2px var(--ws-cyan)}.ws-nav-link .ws-private{font-size:8px;letter-spacing:.06em;padding:2px 4px;border-radius:4px;background:#8a7bff20;color:#bdb4ff}.ws-nav-status{display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid #42e59a38;border-radius:999px;color:#8feec4;background:#42e59a0d;font-size:9px;font-weight:900;letter-spacing:.06em;white-space:nowrap}.ws-nav-status i{width:6px;height:6px;display:inline-block;border-radius:50%;background:var(--ws-green)}
.ws-research-overview{margin:0 0 20px;padding:20px;border:1px solid #37e7ff33;border-radius:20px;background:linear-gradient(135deg,#0e1c28f5,#0a111bf5 65%,#14112af5);box-shadow:0 18px 48px #0005}.ws-overview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.ws-overview-eyebrow{font-size:9px;font-weight:900;letter-spacing:.14em;color:var(--ws-cyan);text-transform:uppercase}.ws-overview-head h3{font-size:clamp(22px,3vw,32px);line-height:1.05;letter-spacing:-.04em;margin:5px 0 7px;color:var(--ws-text)}.ws-overview-head p{margin:0;max-width:720px;color:var(--ws-muted);font-size:12px}.ws-overview-actions{display:flex;gap:7px;flex-wrap:wrap}.ws-action{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #37e7ff4d;border-radius:10px;background:#37e7ff12;color:var(--ws-text);text-decoration:none;font-size:11px;font-weight:850;padding:9px 11px;cursor:pointer}
.ws-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ws-metric-card{min-width:0;padding:12px;border:1px solid var(--ws-border);border-radius:13px;background:linear-gradient(145deg,#111e2a,#0b131c)}.ws-metric-card small{display:block;color:var(--ws-muted);font-size:9px;text-transform:uppercase;letter-spacing:.07em}.ws-metric-card strong{display:block;font-size:clamp(18px,2.4vw,26px);letter-spacing:-.04em;line-height:1.15;margin:7px 0 4px;color:var(--ws-text);overflow-wrap:anywhere}.ws-metric-card p{margin:0;color:var(--ws-muted);font-size:10px}.ws-section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:19px 0 9px}.ws-section-title h4{margin:0;color:var(--ws-text);font-size:12px}.ws-section-title span{color:var(--ws-muted);font-size:10px}
.ws-market-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.ws-market-card{padding:12px;border:1px solid var(--ws-border);border-radius:12px;background:#09121b}.ws-market-card h5{margin:0 0 8px;font-size:11px;color:var(--ws-text)}.ws-market-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.ws-market-stats small{display:block;color:var(--ws-muted);font-size:9px}.ws-market-stats strong{display:block;margin-top:3px;font-size:14px;color:var(--ws-text)}.ws-status-badge{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--ws-border);border-radius:999px;padding:5px 8px;color:var(--ws-muted);font-size:9px;font-weight:900;letter-spacing:.06em;white-space:nowrap}.ws-status-badge.good{color:#91ecc2;border-color:#42e59a44;background:#42e59a0c}.ws-status-badge.warn{color:#ffd98d;border-color:#ffd16655;background:#ffd1660c}.ws-overview-note{margin:13px 0 0;padding:10px 12px;border-left:3px solid var(--ws-amber);border-radius:0 8px 8px 0;background:#ffd1660a;color:var(--ws-muted);font-size:10px}.ws-overview-note strong{color:var(--ws-text)}
.ws-fixture-sides{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center;margin-top:8px}.ws-fixture-team{display:flex;align-items:center;gap:8px;min-width:0;font-weight:850}.ws-fixture-team:last-child{justify-content:flex-end;text-align:right}.ws-fixture-vs{font-size:9px;letter-spacing:.08em;color:var(--ws-muted);font-weight:900}.ws-entity-label{display:inline-flex;align-items:center;gap:7px;min-width:0;vertical-align:middle}.ws-entity-name{min-width:0;overflow-wrap:anywhere}.ws-media-slot{width:32px;height:32px;flex:0 0 32px;display:inline-grid;place-items:center;position:relative;overflow:hidden;border:1px solid #37e7ff42;border-radius:10px;background:linear-gradient(145deg,#152433,#091019);color:#a8eeff;font-size:10px;font-weight:900;text-decoration:none;cursor:default}.ws-fixture-team .ws-media-slot{width:36px;height:36px;flex-basis:36px}.ws-media-slot[data-ws-media-kind="player"]{border-radius:50%;background:linear-gradient(145deg,#1b2334,#10121e);border-color:#8a7bff50;color:#d5ccff}.ws-media-slot.has-media{background:#fff;border-color:#ffffff22;font-size:0;color:transparent}.ws-media-image{width:100%;height:100%;display:block;object-fit:contain;background:#fff}.ws-media-slot[data-ws-media-kind="player"] .ws-media-image{object-fit:cover}.ms-up-match .ws-media-slot{width:26px;height:26px;flex-basis:26px}
.ws-media-slot.has-media{cursor:pointer}.ws-media-slot:focus-visible{outline:2px solid var(--ws-cyan);outline-offset:2px}
@media(max-width:960px){.ws-nav{align-items:flex-start}.ws-nav-right{justify-content:flex-start;width:100%}.ws-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){#workspace-nav{padding:0 12px}.ws-nav{padding:10px;border-radius:14px}.ws-brand{min-width:0}.ws-nav-link{font-size:10px;padding:7px 8px}.ws-research-overview{padding:14px;border-radius:15px}.ws-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ws-market-grid{grid-template-columns:1fr}.ws-fixture-team{gap:5px;font-size:12px}.ws-fixture-team .ws-media-slot{width:28px;height:28px;flex-basis:28px}}


/* Research & Intelligence redesign — shared by Reports, Virtual Lab and private Analyst. */
.ws-nav{position:relative;isolation:isolate;background:radial-gradient(420px 120px at 0% 0%,rgba(55,231,255,.08),transparent 72%),linear-gradient(115deg,#0d1722f7,#0a1019f7 62%,#15132af7);border-color:#2a4052;box-shadow:0 18px 44px #0005}
.ws-nav:after{content:"";position:absolute;inset:0;border-radius:inherit;border-top:1px solid rgba(255,255,255,.045);pointer-events:none}
.ws-brand-mark{box-shadow:inset 0 0 18px rgba(55,231,255,.08),0 0 24px rgba(55,231,255,.04)}
.ws-nav-link{transition:transform .16s ease,border-color .16s ease,background .16s ease}.ws-nav-link:hover{transform:translateY(-1px)}
.ws-research-overview{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(650px 200px at 0% 0%,rgba(55,231,255,.075),transparent 70%),radial-gradient(420px 180px at 100% 0%,rgba(124,108,255,.08),transparent 70%),linear-gradient(140deg,#0d1721,#0a111a 70%);border-color:#2a4052;box-shadow:0 20px 54px rgba(0,0,0,.2)}
.ws-overview-head h3{font-size:clamp(20px,2.5vw,30px);letter-spacing:-.035em;line-height:1.08}.ws-overview-eyebrow{letter-spacing:.18em}
.ws-metric-card,.ws-market-card,.ws-role-card{transition:transform .18s ease,border-color .18s ease,background .18s ease;box-shadow:inset 0 1px 0 rgba(255,255,255,.025)}
.ws-metric-card:hover,.ws-market-card:hover,.ws-role-card:hover{transform:translateY(-2px);border-color:#3a6073;background:linear-gradient(145deg,#111f2c,#0c141e)}
.ws-role-card{min-height:170px;padding:18px}.ws-role-card>small{text-transform:uppercase;letter-spacing:.12em;color:var(--ws-cyan);font-weight:850}.ws-role-card>strong{font-size:19px;letter-spacing:-.025em}
.ws-role-card>a{display:inline-flex;align-items:center;gap:7px;width:max-content;max-width:100%;border:1px solid #37e7ff35;border-radius:999px;padding:7px 10px;background:#37e7ff08}
.ws-analyst-intro .ws-metric-card{min-height:140px}.ws-media-slot{box-shadow:0 5px 15px rgba(0,0,0,.18);transition:border-color .18s ease,transform .18s ease}.ws-media-slot.has-media{background:#fff}
.ws-media-slot[data-ws-media-kind="player"]{box-shadow:0 0 0 2px rgba(138,123,255,.08),0 5px 15px rgba(0,0,0,.2)}
.ws-media-credit{max-width:1380px;margin:10px auto 16px;padding:8px 6px;color:var(--ws-muted);font-size:9px;line-height:1.5;opacity:.82}
@media(max-width:600px){.ws-role-card{min-height:155px;padding:13px}.ws-role-card>strong{font-size:16px}.ws-overview-head h3{font-size:23px}}
@media(prefers-reduced-motion:reduce){.ws-nav-link,.ws-metric-card,.ws-market-card,.ws-role-card,.ws-media-slot{transition:none}}

/* UI release marker: Research & Intelligence redesign v2, 2026-10-11. */


/* Fixture imagery — verified exact-name club crests and player portraits, with initials fallback. */
.ws-fixture-match{display:flex;align-items:center;gap:9px;flex-wrap:wrap;min-width:0}
.ws-fixture-match .ws-fixture-team{display:inline-flex;align-items:center;gap:7px;min-width:0;font-weight:850}
.ws-fixture-match .ws-entity-name{min-width:0;overflow-wrap:anywhere;color:var(--ws-text);font-weight:850}
.ws-fixture-match .ws-fixture-vs{font-size:9px;letter-spacing:.12em;color:var(--ws-muted);font-weight:900}
.ws-live-fixture-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:9px;margin:5px 0 9px}
.ws-live-fixture-row .ws-fixture-team{display:flex;align-items:center;gap:7px;min-width:0;line-height:1.25}
.ws-live-fixture-row .ws-fixture-team:last-child{flex-direction:row-reverse;justify-content:flex-start;text-align:right}
.ws-live-fixture-row .ws-entity-name{min-width:0;overflow-wrap:anywhere;color:var(--ws-text);font-size:12px;font-weight:850}
.ws-live-fixture-row .ws-media-slot{width:38px;height:38px;flex-basis:38px;flex-shrink:0;border-radius:11px}
.ws-live-fixture-row .ws-fixture-vs{font-size:9px;letter-spacing:.1em;color:var(--ws-muted);font-weight:900}
.ws-live-fixture-row .ws-media-slot.has-media{background:#fff}
@media(max-width:600px){.ws-fixture-match{gap:5px}.ws-fixture-match .ws-media-slot{width:28px;height:28px;flex-basis:28px}.ws-live-fixture-row{gap:5px}.ws-live-fixture-row .ws-media-slot{width:30px;height:30px;flex-basis:30px}.ws-live-fixture-row .ws-entity-name{font-size:10px}}


/* Shared fixture and result-card treatment across the desk, league pages, Live and Virtual Lab. */
.ms-up-row.ms-fixture-card,
.ms-pred,
.ms-live .grid > .card,
.liveCard,
.predictionCard {
  position:relative;
  border:1px solid rgba(55,231,255,.17) !important;
  border-radius:16px !important;
  background:linear-gradient(145deg,rgba(17,29,42,.98),rgba(8,14,21,.98)) !important;
  box-shadow:0 12px 30px rgba(0,0,0,.2);
  transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.ms-up-row.ms-fixture-card:hover,
.ms-pred:hover,
.ms-live .grid > .card:hover,
.liveCard:hover,
.predictionCard:hover {
  border-color:rgba(55,231,255,.34) !important;
  box-shadow:0 16px 34px rgba(0,0,0,.25);
}
.ms-pred .ms-match,
.ms-up-match,
.ms-live .ws-fixture-sides,
.liveCard .ws-fixture-sides {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
}
.ms-pred .ws-entity-label,
.ms-up-match .ws-entity-label,
.ms-live .ws-fixture-team,
.liveCard .ws-fixture-team {
  min-width:0;
  align-items:center;
}
.ms-fixture-foot .ms-settled-win,
.ms-fixture-foot .ms-settled-loss {
  display:inline-flex;
  align-items:center;
  padding:4px 9px;
  border-radius:999px;
  font-size:10px;
  letter-spacing:.02em;
  border:1px solid transparent;
}
.ms-fixture-foot .ms-settled-win {
  color:#42e59a !important;
  border-color:rgba(66,229,154,.24);
  background:rgba(66,229,154,.08);
}
.ms-fixture-foot .ms-settled-loss {
  color:#ff7585 !important;
  border-color:rgba(255,93,115,.24);
  background:rgba(255,93,115,.08);
}
.ws-media-credit {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px 10px;
}
.ws-media-coverage {
  display:inline-flex;
  align-items:center;
  padding:4px 8px;
  border:1px solid rgba(130,149,168,.2);
  border-radius:999px;
  background:rgba(255,255,255,.025);
  color:var(--ws-text);
  font-variant-numeric:tabular-nums;
  font-size:10px;
  font-weight:800;
}
.ws-media-slot { isolation:isolate; }
.ws-media-slot .ws-media-image {
  position:absolute;
  inset:0;
  z-index:1;
  opacity:0;
  transition:opacity .16s ease;
}
.ws-media-slot.has-media .ws-media-image { opacity:1; }
@media(max-width:640px) {
  .ms-pred,
  .ms-live .grid > .card,
  .liveCard,
  .predictionCard { border-radius:13px !important; }
  .ms-pred .ms-match,
  .ms-up-match,
  .ms-live .ws-fixture-sides,
  .liveCard .ws-fixture-sides { gap:5px; }
  .ws-media-coverage { font-size:9px; }
}


/* Match Signal readability + responsive-card repair, 2026-10-11.
   Preserve all existing content/gates; improve legibility and stop wide market rows
   from forcing fixture cards off-screen on smaller displays. */
.ms-panel-head h2 { font-size:13px !important; line-height:1.4; letter-spacing:.055em; }
.ms-up-summary,.ms-qualified-best-summary { font-size:12px !important; line-height:1.55; }
.ms-qualified-best-head p { font-size:12px !important; line-height:1.55; }
.ms-up-time b { font-size:13px !important; line-height:1.35; }
.ms-up-time span,.ms-up-day-head span { font-size:11px !important; line-height:1.4; }
.ms-up-day-head h3 { font-size:13px !important; line-height:1.4; }
.ms-up-meta,.ms-up-details,.ms-fixture-band-note { font-size:11px !important; line-height:1.5; }
.ms-up-status-badge,.ms-up-qual,.ms-qualified-best-pill,.ms-qualified-gate-badge {
  font-size:10px !important; line-height:1.4; letter-spacing:.025em;
  white-space:normal; overflow-wrap:anywhere; padding:5px 8px;
}
.ms-fixture-foot { font-size:11px !important; line-height:1.5; }
.ms-market-stack { min-width:0; max-width:100%; display:grid; gap:8px; }
.ms-market-row {
  min-width:0 !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:7px !important;
  padding:9px !important;
  font-size:11px !important;
  line-height:1.45;
}
.ms-market-row>span { min-width:0; overflow-wrap:anywhere; }
.ms-market-row b { font-size:12px !important; line-height:1.4; }
.ms-market-row .ms-market-name { font-size:12px !important; }
.ms-fixture-card,.ms-up-row,.ms-up-event,.ms-up-status,.ms-pred,.ms-league,.liveCard,.predictionCard {
  min-width:0; box-sizing:border-box;
}
.ms-up-row.ms-fixture-card { grid-template-columns:minmax(105px, .72fr) minmax(0,2.3fr) minmax(140px, .95fr); }
.ms-pred-meta,.ms-market span,.ms-prob small,.ms-market small,.ms-note,.ms-status,.ms-league p,
.liveTop,.liveChip,.predictionMeta,.liveNote,.liveCardMeta,.control label,.panelHead span,.metric small,
.ws-media-credit,footer .ws-media-credit,.ws-media-coverage {
  font-size:11px !important; line-height:1.5;
}
.ws-media-credit,footer .ws-media-credit { opacity:.98; }
.ws-media-coverage { font-weight:850; }
.ms-empty,.empty,.liveEmpty,.empty-state,.ms-qualified-best-empty {
  font-size:14px !important; line-height:1.6 !important; min-height:96px;
  padding:24px !important; overflow-wrap:anywhere;
}
.ws-entity-name,.ws-fixture-match .ws-entity-name,.ws-live-fixture-row .ws-entity-name {
  min-width:0; overflow-wrap:anywhere; line-height:1.45;
}
.ws-media-slot { font-size:11px; }
.ws-role-card p { font-size:12px !important; line-height:1.55; }
.ws-role-card a { font-size:11px !important; }
.ms-league h3 { font-size:17px; line-height:1.35; }
.ms-league a { font-size:13px; }
.ms-prob small,.ms-market small { font-size:10px !important; }
.ms-panel-head,.ms-pred-meta,.ms-up-meta { min-width:0; }
.teams .ws-entity-label { font-size:14px !important; line-height:1.45; }
@media(max-width:1080px) {
  .ms-up-row.ms-fixture-card { grid-template-columns:minmax(90px,.65fr) minmax(0,2fr) minmax(125px,.9fr); }
  .ms-market-row { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
}
@media(max-width:840px) {
  .ms-up-row.ms-fixture-card,.ms-up-row {
    grid-template-columns:minmax(0,1fr) !important;
    gap:8px;
  }
  .ms-up-status { grid-column:auto !important; display:flex; flex-wrap:wrap; align-items:center; }
  .ms-market-row { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  .ms-up-match { line-height:1.5; }
  .ms-qualified-best-head { flex-direction:column; }
}
@media(max-width:640px) {
  .ms-wrap { padding-left:12px; padding-right:12px; }
  .ms-panel { padding:12px; }
  .ms-hero { padding:18px; }
  .ms-hero p { font-size:14px; line-height:1.55; }
  .ms-up-row.ms-fixture-card { padding:12px; }
  .ms-market-row { gap:6px !important; padding:8px !important; }
  .ms-up-meta,.ms-up-details { gap:6px; }
  .ms-fixture-match { align-items:flex-start; gap:6px; }
  .ws-fixture-match .ws-media-slot { width:30px; height:30px; flex-basis:30px; }
  .ws-media-credit { align-items:flex-start; }
  .ws-nav-link { font-size:11px !important; }
  .ms-empty,.empty,.liveEmpty,.empty-state,.ms-qualified-best-empty { padding:18px !important; }
}


/* Virtual Lab and research-workspace mobile overflow repair. */
@media(max-width:640px) {
  .shell { width:100%; max-width:100vw; padding:20px 12px 50px !important; }
  .shell > *, .shell .panel, .shell .panelHead, .shell .panelHead h2,
  .shell .panelHead span, .shell .owner, .shell .controls, .shell .control,
  .shell .actions, .shell .strategyCard, .shell .strategyResult {
    min-width:0; max-width:100%; box-sizing:border-box;
  }
  .shell .panelHead { flex-wrap:wrap; align-items:flex-start; gap:8px; }
  .shell .panelHead h2, .shell .panelHead span {
    white-space:normal; overflow-wrap:anywhere;
  }
  .shell .panelHead span { flex:0 1 auto; }
  .shell .tableWrap { width:100%; max-width:100%; min-width:0; overflow-x:auto; }
  .shell .tableWrap table { min-width:560px; }
  .shell .metrics { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .shell .metric { min-width:0; padding:11px; }
  .shell .metric small { font-size:11px !important; }
  .shell .metric strong { font-size:21px; overflow-wrap:anywhere; }
  .shell .controls { display:flex; flex-wrap:wrap; width:100%; }
  .shell .control { min-width:0; flex:1 1 140px; }
  .shell .actions { margin-left:0; width:100%; flex-wrap:wrap; }
  .shell .resultGrid,.shell .guideGrid,.shell .modelGrid,
  .shell .grid2,.shell .strategy { grid-template-columns:minmax(0,1fr); }
  .shell .empty,.shell .gate,.shell .tableWrap.empty {
    width:auto; min-width:0; max-width:100%; overflow-wrap:anywhere;
  }
  .shell .empty { min-height:96px; padding:18px !important; font-size:14px !important; }
  .shell .badge { white-space:normal; max-width:100%; overflow-wrap:anywhere; }
}


/* Keep evidence tables scrollable inside their panel on narrow phones. */
@media(max-width:640px) {
  .shell table { width:100%; max-width:100%; table-layout:fixed; }
  .shell #participantLab table,
  .shell #modelLab table {
    display:block; width:100%; max-width:100%; overflow-x:auto; table-layout:auto;
  }
  .shell #participantLab th,.shell #participantLab td,
  .shell #modelLab th,.shell #modelLab td {
    overflow-wrap:anywhere; word-break:normal;
  }
  .shell .tableWrap table { display:table; width:auto; min-width:560px; max-width:none; table-layout:auto; }
}
