:root{
  --bg:#080014;--bg2:#12002b;--panel:#180537;--panel2:#22064b;
  --purple:#7d2cff;--gold:#f5c95e;--green:#49e38f;--red:#ff637c;
  --text:#f8f4ff;--muted:#bba9d2;--line:rgba(255,255,255,.09);
  --shadow:0 24px 70px rgba(0,0,0,.38)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;color:var(--text);font-family:Manrope,system-ui,sans-serif;background:
radial-gradient(circle at 80% -10%,rgba(125,44,255,.28),transparent 30%),
linear-gradient(180deg,#080014,#100022 55%,#070010);min-height:100vh}
a{color:inherit;text-decoration:none}button,input,select{font:inherit}
.portal-header{position:sticky;top:0;z-index:50;height:76px;padding:0 28px;display:flex;align-items:center;gap:24px;border-bottom:1px solid rgba(245,201,94,.16);background:rgba(8,0,20,.94);backdrop-filter:blur(16px)}
.portal-brand{display:flex;align-items:center;gap:10px;min-width:max-content}.portal-brand img{width:52px;height:52px;border-radius:50%}.portal-brand strong{font-family:"Space Grotesk",sans-serif;font-size:23px}.portal-brand strong span{color:var(--gold)}.portal-brand small{display:block;color:var(--muted);font-size:8px;letter-spacing:.13em}
.portal-nav{margin-left:auto;display:flex;align-items:center;gap:20px}.portal-nav a{color:#d7c9e8;font-size:12px;font-weight:800}.portal-nav a:hover,.portal-nav a.active{color:var(--gold)}
.portal-menu{display:none;margin-left:auto;width:44px;height:44px;border:1px solid var(--line);border-radius:12px;color:#fff;background:#16052e;font-size:22px}
.portal-main{width:min(1440px,calc(100% - 32px));margin:0 auto;padding:34px 0 60px}
.portal-hero{padding:28px 30px;border:1px solid rgba(125,44,255,.28);border-radius:22px;background:
radial-gradient(circle at 90% 0,rgba(245,201,94,.10),transparent 30%),
linear-gradient(140deg,rgba(49,8,94,.94),rgba(16,1,39,.96));box-shadow:var(--shadow)}
.eyebrow{color:var(--gold);font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.portal-hero h1{margin:8px 0 10px;font-family:"Space Grotesk",sans-serif;font-size:clamp(34px,5vw,64px);line-height:1}.portal-hero p{max-width:820px;margin:0;color:#d9cce9;font-size:14px;line-height:1.7}
.portal-toolbar{margin:16px 0;display:grid;grid-template-columns:160px minmax(180px,1fr) minmax(170px,1fr) minmax(180px,1.2fr) auto;gap:10px;align-items:end}
.portal-toolbar label{display:grid;gap:6px}.portal-toolbar label span{color:var(--muted);font-size:9px;font-weight:900;text-transform:uppercase}.portal-toolbar input,.portal-toolbar select{min-height:44px;width:100%;padding:0 12px;border:1px solid rgba(125,44,255,.24);border-radius:11px;color:#fff;background:#16052f;outline:none}.portal-toolbar option{background:#16052f}.portal-toolbar button,.gold-action{min-height:44px;padding:0 16px;border:1px solid rgba(245,201,94,.36);border-radius:11px;color:#1d0e00;background:linear-gradient(135deg,#ffe28c,#dfa72e);font-weight:900;cursor:pointer}
.status-strip{margin-top:14px;padding:12px 14px;display:flex;justify-content:space-between;gap:16px;border:1px solid rgba(73,227,143,.18);border-radius:13px;background:rgba(73,227,143,.045);color:#aef7ca;font-size:11px}
.metric-row{margin:16px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.metric{padding:15px;border:1px solid var(--line);border-radius:15px;background:rgba(26,5,58,.84)}.metric span{display:block;color:var(--muted);font-size:9px;text-transform:uppercase}.metric strong{display:block;margin-top:5px;font-family:"Space Grotesk",sans-serif;font-size:26px}
.portal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pick-card{padding:16px;display:grid;gap:12px;border:1px solid rgba(125,44,255,.22);border-radius:17px;background:linear-gradient(145deg,rgba(34,6,75,.91),rgba(15,1,37,.97));text-align:left;cursor:pointer;transition:.2s}.pick-card:hover{transform:translateY(-2px);border-color:rgba(245,201,94,.42)}.pick-meta{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:10px}.pick-teams{display:grid;gap:8px}.pick-team{display:flex;align-items:center;gap:9px;font-weight:800}.pick-team img,.team-fallback{width:34px;height:34px;border-radius:10px;background:#5720b4;object-fit:contain}.team-fallback{display:grid;place-items:center;font-size:10px}.pick-badge{width:max-content;padding:5px 8px;border-radius:999px;color:#ffdc76;border:1px solid rgba(245,201,94,.28);background:rgba(245,201,94,.07);font-size:8px;font-weight:900;text-transform:uppercase}.pick-selection{font-family:"Space Grotesk",sans-serif;font-size:17px}.pick-bottom{display:flex;justify-content:space-between;gap:10px;color:var(--green);font-size:11px}.pick-bottom b{color:var(--gold)}
.section-title{margin:28px 0 12px;display:flex;align-items:end;justify-content:space-between;gap:12px}.section-title h2{margin:0;font-family:"Space Grotesk";font-size:24px}.section-title p{margin:0;color:var(--muted);font-size:11px}
.engine-block{margin-bottom:20px;padding:18px;border:1px solid rgba(125,44,255,.20);border-radius:19px;background:rgba(21,3,48,.76)}.engine-block-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.engine-block-head h2{margin:0;font-family:"Space Grotesk";font-size:22px}.engine-block-head span{color:var(--gold);font-size:10px}
.empty-card{grid-column:1/-1;padding:40px 20px;border:1px dashed rgba(245,201,94,.25);border-radius:16px;color:var(--muted);text-align:center}
.results-table-wrap,.diagnostic-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:15px}.portal-table{width:100%;min-width:820px;border-collapse:collapse;background:rgba(18,2,43,.74)}.portal-table th,.portal-table td{padding:12px;border-bottom:1px solid rgba(255,255,255,.055);text-align:left;font-size:11px}.portal-table th{color:#ae97ca;font-size:9px;text-transform:uppercase}.outcome{font-weight:900}.outcome.WIN{color:var(--green)}.outcome.LOSS{color:var(--red)}.outcome.VOID{color:var(--gold)}
.admin-login{max-width:520px;margin:28px auto;padding:22px;border:1px solid rgba(245,201,94,.22);border-radius:18px;background:rgba(26,5,58,.86)}.admin-login h2{font-family:"Space Grotesk"}.admin-login label{display:grid;gap:7px;margin:12px 0}.admin-login input{min-height:46px;padding:0 12px;border:1px solid rgba(125,44,255,.25);border-radius:11px;color:#fff;background:#120229}.diagnostic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.diagnostic-card{padding:16px;border:1px solid var(--line);border-radius:15px;background:#170435}.diagnostic-card span{color:var(--muted);font-size:9px;text-transform:uppercase}.diagnostic-card strong{display:block;margin-top:6px;font-size:25px}.issue-list{display:grid;gap:8px}.issue{padding:12px;border:1px solid rgba(255,99,124,.18);border-radius:12px;background:rgba(255,99,124,.05);font-size:11px}.issue.clear{border-color:rgba(73,227,143,.18);background:rgba(73,227,143,.05);color:#aef7ca}
.portal-dialog{width:min(900px,calc(100vw - 28px));max-height:calc(100dvh - 28px);padding:0;border:1px solid rgba(245,201,94,.28);border-radius:20px;color:#fff;background:#0b001e}.portal-dialog::backdrop{background:rgba(4,0,13,.82);backdrop-filter:blur(8px)}.dialog-shell{position:relative;padding:22px;max-height:calc(100dvh - 28px);overflow:auto}.dialog-close{position:sticky;float:right;top:0;width:42px;height:42px;z-index:2;border:1px solid var(--line);border-radius:11px;color:#fff;background:#15042f;font-size:24px}.dialog-title{padding-right:55px}.dialog-title h2{margin:7px 0;font-family:"Space Grotesk";font-size:28px}.explanation-box{margin-top:14px;padding:15px;border-left:4px solid var(--gold);border-radius:0 12px 12px 0;background:rgba(245,201,94,.055)}.explanation-box p{margin:5px 0 0;line-height:1.7;font-size:13px}.reason-columns{margin-top:12px;display:grid;grid-template-columns:1.2fr 1fr;gap:10px}.reason-columns section{padding:13px;border:1px solid var(--line);border-radius:13px}.reason-columns h3{margin:0 0 8px}.reason-columns ul{margin:0;padding-left:18px;color:#d5c8e6;font-size:11px;line-height:1.6}
.portal-footer{margin-top:42px;padding:18px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:14px;color:var(--muted);font-size:10px}
@media(max-width:1050px){.portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-row,.diagnostic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-toolbar button{width:100%}}
@media(max-width:800px){.portal-header{padding:0 16px}.portal-nav{position:fixed;inset:76px 12px auto;display:none;padding:14px;flex-direction:column;align-items:stretch;border:1px solid var(--line);border-radius:15px;background:#100025}.portal-nav.open{display:flex}.portal-menu{display:block}.portal-main{width:min(100% - 20px,1440px);padding-top:18px}.portal-grid{grid-template-columns:1fr}.metric-row,.diagnostic-grid,.portal-toolbar,.reason-columns{grid-template-columns:1fr}.status-strip,.section-title,.portal-footer{align-items:flex-start;flex-direction:column}.portal-hero{padding:22px 20px}.portal-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0}.dialog-shell{max-height:100dvh;padding:18px 16px 90px}}

body[data-engine="primary"]{--engine-accent:#f5c95e;--engine-glow:rgba(245,201,94,.14)}
body[data-engine="aggressive"]{--engine-accent:#ff7d63;--engine-glow:rgba(255,125,99,.15)}
body[data-engine="safer"]{--engine-accent:#49e38f;--engine-glow:rgba(73,227,143,.14)}
body[data-engine="venue"]{--engine-accent:#65a7ff;--engine-glow:rgba(101,167,255,.15)}
body[data-engine="form"]{--engine-accent:#ff8fb8;--engine-glow:rgba(255,143,184,.16)}
body[data-engine] .portal-hero{border-color:color-mix(in srgb,var(--engine-accent) 38%,transparent);background:
radial-gradient(circle at 90% 0,var(--engine-glow),transparent 34%),
linear-gradient(140deg,rgba(49,8,94,.94),rgba(16,1,39,.96))}
body[data-engine] .pick-card:hover{border-color:color-mix(in srgb,var(--engine-accent) 52%,transparent)}
body[data-engine] .pick-badge,body[data-engine] .pick-bottom b{color:var(--engine-accent)}


/* ================================================================
   BETSPAPA v1.10.1 — READABILITY, ACCESSIBILITY AND MOBILE NAV
   ================================================================ */

body {
  font-size: 16px;
  line-height: 1.55;
}

.portal-brand strong { font-size: 25px; }
.portal-brand small { font-size: 10px; line-height: 1.3; }
.portal-nav a { font-size: 14px; }
.eyebrow { font-size: 12px; }
.portal-hero p { font-size: 17px; line-height: 1.7; }
.portal-toolbar label span { font-size: 12px; }
.portal-toolbar input,
.portal-toolbar select,
.portal-toolbar button,
.gold-action {
  min-height: 50px;
  font-size: 15px;
}
.status-strip {
  min-height: 48px;
  align-items: center;
  font-size: 14px;
  line-height: 1.45;
}
.status-strip small { font-size: 12px; color: #cdbde0; }
.metric { min-height: 126px; padding: 18px; }
.metric span { font-size: 12px; line-height: 1.35; }
.metric strong { font-size: 32px; }
.metric small {
  display: block;
  margin-top: 5px;
  color: #cdbde0;
  font-size: 12px;
  line-height: 1.4;
}
.pick-card { min-height: 226px; padding: 19px; }
.pick-meta { font-size: 12px; line-height: 1.45; }
.pick-team { font-size: 16px; line-height: 1.4; }
.pick-team img,
.team-fallback { width: 40px; height: 40px; }
.pick-badge { padding: 6px 9px; font-size: 11px; }
.pick-selection { font-size: 21px; line-height: 1.35; }
.pick-bottom { font-size: 14px; line-height: 1.4; }
.section-title h2 { font-size: 29px; }
.section-title p { font-size: 14px; line-height: 1.5; }
.engine-block-head h2 { font-size: 25px; }
.engine-block-head span { font-size: 13px; }
.empty-card {
  padding: 44px 24px;
  font-size: 15px;
  line-height: 1.6;
}
.portal-table th { font-size: 12px; }
.portal-table td { font-size: 14px; line-height: 1.5; }
.portal-table th,
.portal-table td { padding: 14px; }
.admin-login p,
.admin-login label,
.issue { font-size: 14px; line-height: 1.6; }
.admin-login label span { font-size: 12px; }
.diagnostic-card span { font-size: 12px; }
.diagnostic-card strong { font-size: 30px; }
.dialog-title h2 { font-size: 34px; line-height: 1.18; }
.dialog-title p { color: #d4c6e5; font-size: 14px; }
.explanation-box h3 { font-size: 20px; }
.explanation-box p { font-size: 16px; line-height: 1.75; }
.reason-columns h3 { font-size: 17px; }
.reason-columns ul { font-size: 14px; line-height: 1.7; }
.dialog-close {
  cursor: pointer;
  touch-action: manipulation;
}
.portal-footer {
  align-items: center;
  font-size: 13px;
  line-height: 1.5;
}
.portal-footer div {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
}
.portal-footer a:hover { color: var(--gold); }

.admin-page .portal-header {
  justify-content: space-between;
}
.admin-back {
  margin-left: auto;
  padding: 10px 13px;
  border: 1px solid rgba(245,201,94,.25);
  border-radius: 11px;
  color: var(--gold);
  font-size: 13px;
  font-weight: 800;
}
.admin-path-note {
  margin-top: 10px;
  color: #cdbde0;
  font-size: 13px;
}
.admin-path-note code {
  color: var(--gold);
}

body.portal-dialog-open {
  overflow: hidden;
}

@media (max-width: 1050px) {
  .portal-nav { gap: 14px; }
}

@media (max-width: 800px) {
  .portal-main {
    padding-bottom: 110px;
  }

  .portal-header {
    height: 72px;
  }

  .portal-nav {
    inset: 72px 10px auto;
    padding: 16px;
    max-height: calc(100dvh - 164px);
    overflow: auto;
  }

  .portal-nav a {
    min-height: 46px;
    padding: 0 12px;
    display: flex;
    align-items: center;
    border-radius: 10px;
    font-size: 15px;
  }

  .portal-nav a.active {
    background: rgba(245,201,94,.08);
  }

  .portal-hero h1 {
    font-size: clamp(34px, 10vw, 48px);
    line-height: 1.08;
  }

  .portal-hero p { font-size: 16px; }
  .portal-toolbar label span { font-size: 12px; }
  .portal-toolbar input,
  .portal-toolbar select,
  .portal-toolbar button {
    min-height: 52px;
    font-size: 16px;
  }

  .metric-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .metric {
    min-height: 118px;
  }

  .metric strong { font-size: 29px; }
  .pick-card { min-height: 0; }
  .pick-meta { font-size: 13px; }
  .pick-team { font-size: 17px; }
  .pick-selection { font-size: 22px; }
  .pick-bottom { font-size: 14px; }

  .section-title h2 { font-size: 25px; }
  .section-title p { font-size: 13px; }

  .dialog-shell {
    padding: 18px 16px 112px;
  }

  .dialog-title h2 { font-size: 29px; }
  .explanation-box p { font-size: 15px; }
  .reason-columns ul { font-size: 14px; }

  .portal-footer {
    padding-bottom: 16px;
  }
}

@media (max-width: 520px) {
  .portal-brand img { width: 46px; height: 46px; }
  .portal-brand strong { font-size: 22px; }
  .portal-brand small { display: none; }

  .portal-main {
    width: min(100% - 16px, 1440px);
  }

  .portal-hero { padding: 22px 18px; }
  .metric-row { grid-template-columns: 1fr; }
  .metric { min-height: 104px; }
  .metric strong { font-size: 31px; }

  .pick-card { padding: 18px; }
  .pick-team img,
  .team-fallback { width: 42px; height: 42px; }
  .pick-team { font-size: 17px; }
  .pick-selection { font-size: 22px; }

  .portal-table {
    min-width: 760px;
  }

  .admin-back {
    padding: 9px 10px;
    font-size: 12px;
  }
}


/* ================================================================
   BETSPAPA v1.10.2 — MATCH CARD CONTRAST HOTFIX
   ================================================================ */

/*
  Fixture cards are buttons. Some browsers apply a default black button
  text color unless it is explicitly reset. Keep the card fully readable
  on the dark BetsPapa background.
*/
.pick-card {
  width: 100%;
  color: var(--text);
  -webkit-appearance: none;
  appearance: none;
}

.pick-card .pick-meta {
  color: #d7c9e9;
}

.pick-card .pick-team,
.pick-card .pick-team > span,
.pick-card .pick-selection {
  color: #ffffff;
  -webkit-text-fill-color: currentColor;
}

.pick-card .pick-team > span {
  text-shadow: 0 1px 0 rgba(0, 0, 0, .32);
}

.pick-card .pick-selection {
  letter-spacing: -.01em;
  text-shadow: 0 1px 0 rgba(0, 0, 0, .4);
}

.pick-card .pick-bottom > span {
  color: #55eea0;
}

.pick-card .pick-bottom > b {
  color: #ffe07a;
}

.pick-card .pick-badge {
  color: #ffe07a;
}

.pick-card:hover,
.pick-card:focus-visible {
  color: var(--text);
}

.pick-card:focus-visible {
  outline: 3px solid rgba(245, 201, 94, .55);
  outline-offset: 3px;
}

.engine-block,
.engine-block-head h2,
.section-title h2,
.metric strong,
.portal-hero h1,
.dialog-title h2,
.explanation-box h3,
.reason-columns h3 {
  color: #ffffff;
}

.engine-block-head span,
.section-title p,
.metric small,
.pick-meta {
  opacity: 1;
}

@media (max-width: 800px) {
  .pick-card .pick-team,
  .pick-card .pick-team > span {
    font-size: 17px;
    line-height: 1.45;
  }

  .pick-card .pick-selection {
    font-size: 22px;
    line-height: 1.35;
  }

  .pick-card .pick-meta,
  .pick-card .pick-bottom {
    font-size: 13px;
  }
}


/* BetsPapa v1.18.6 — Athena transition board */
.boss-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
.boss-card {
  min-height: 330px;
  border-color: rgba(245,201,94,.30);
  background:
    radial-gradient(circle at 100% 0, rgba(245,201,94,.10), transparent 36%),
    linear-gradient(145deg, rgba(34,7,72,.98), rgba(13,1,34,.99));
}
.boss-card.prime {
  border-color: rgba(245,201,94,.62);
  box-shadow: inset 0 0 0 1px rgba(245,201,94,.10), 0 18px 42px rgba(0,0,0,.30);
}
.boss-grade-row { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.boss-grade { color:#201000; background:linear-gradient(135deg,#ffe89f,#dfa82f); }
.boss-total-score { color:#ffe17a; font-size:12px; font-weight:900; }
.boss-score-grid {
  margin-top:14px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:7px;
}
.boss-score-grid > div {
  min-height:65px;
  padding:9px;
  display:grid;
  align-content:center;
  gap:3px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:11px;
  background:rgba(255,255,255,.025);
}
.boss-score-grid span { color:#c8b8da; font-size:9px; font-weight:800; text-transform:uppercase; }
.boss-score-grid strong { color:#fff; font-size:17px; }
.boss-score-grid small { color:#9f8bb7; font-size:9px; }
.boss-method {
  margin:18px 0 0;
  padding:18px;
  border:1px solid rgba(245,201,94,.18);
  border-radius:16px;
  background:rgba(245,201,94,.035);
}
.boss-method strong { color:#f5c95e; }
.boss-method p { margin:6px 0 0; color:#cdbde0; line-height:1.65; }
.boss-rejection-panel {
  margin-top:18px;
  padding:20px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:rgba(255,255,255,.018);
}
.boss-rejection-panel h2 { margin:0 0 12px; color:#fff; font-size:21px; }
.boss-rejection-panel > div {
  min-height:44px;
  padding:9px 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  border-bottom:1px solid rgba(255,255,255,.06);
  color:#cdbde0;
}
.boss-rejection-panel > div:last-child { border-bottom:0; }
.boss-rejection-panel strong { color:#f5c95e; }
.boss-empty { display:grid; gap:9px; }
.boss-empty strong { color:#f5c95e; font:700 32px/1.1 "Space Grotesk",sans-serif; }
.boss-empty span { color:#fff; font-size:17px; }
.boss-empty small { color:#cdbde0; }
.boss-verdict h3 { color:#fff; font-size:28px; }
.boss-sample-grid { margin-top:15px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.boss-sample-grid > div { padding:14px; border:1px solid rgba(255,255,255,.08); border-radius:13px; background:rgba(255,255,255,.02); }
.boss-sample-grid span,.boss-sample-grid small { display:block; color:#bfaed3; font-size:11px; }
.boss-sample-grid strong { display:block; margin:4px 0; color:#fff; font-size:16px; }
.boss-alternatives { margin-top:15px; display:grid; gap:7px; }
.boss-alternatives h3 { margin:0 0 4px; color:#fff; }
.boss-alternatives span { padding:11px 12px; border-radius:10px; color:#cdbde0; background:rgba(255,255,255,.025); }
@media (max-width:980px) { .boss-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:650px) {
  .boss-grid { grid-template-columns:1fr; }
  .boss-card { min-height:0; }
  .boss-score-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .boss-sample-grid { grid-template-columns:1fr; }
  .boss-verdict h3 { font-size:23px; }
}

/* BetsPapa v1.14 live, pending and settlement states */
.match-state-row{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:28px}
.match-state{display:inline-flex;align-items:center;min-height:26px;padding:0 9px;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;border:1px solid rgba(255,255,255,.12)}
.match-state.pending{color:#ffe08a;background:rgba(245,201,94,.09);border-color:rgba(245,201,94,.28)}
.match-state.live{color:#fff;background:rgba(255,69,96,.2);border-color:rgba(255,69,96,.58);animation:livePulse 1.45s ease-in-out infinite}
.match-state.finished{color:#d9c8ed;background:rgba(255,255,255,.055)}
.match-state.settled{color:#0b2517;background:#55eea0;border-color:#55eea0}
.match-state.delayed{color:#ffcb7b;background:rgba(255,163,55,.12);border-color:rgba(255,163,55,.35)}
.match-state.cancelled{color:#ffd2d8;background:rgba(255,90,112,.1);border-color:rgba(255,90,112,.35)}
.match-score{color:#fff;font:800 18px/1 "Space Grotesk",sans-serif}
.pick-card:has(.match-state.live){border-color:rgba(255,69,96,.52);box-shadow:0 0 0 1px rgba(255,69,96,.12),0 14px 32px rgba(0,0,0,.28)}
.pick-card:has(.match-state.settled){border-color:rgba(85,238,160,.28)}
@keyframes livePulse{0%,100%{box-shadow:0 0 0 0 rgba(255,69,96,.28)}50%{box-shadow:0 0 0 5px rgba(255,69,96,0)}}
@media(max-width:800px){.match-state{font-size:9px}.match-score{font-size:17px}}
.match-state-legend{margin-top:10px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:#cdbde0;font-size:11px;font-weight:800}
.match-state-legend span{display:inline-flex;align-items:center;gap:6px}
.match-state-legend i{width:9px;height:9px;border-radius:50%;display:inline-block;background:#777}
.match-state-legend i.pending{background:#f5c95e}
.match-state-legend i.live{background:#ff4560;box-shadow:0 0 0 4px rgba(255,69,96,.12)}
.match-state-legend i.finished{background:#b9a5cf}
.match-state-legend i.settled{background:#55eea0}


/* BetsPapa v1.17.2 — automatic engine preparation states */
.processing-card {
  cursor: default;
  border-style: dashed;
  border-color: rgba(172, 139, 228, .34);
  background:
    linear-gradient(145deg, rgba(28, 18, 53, .92), rgba(13, 16, 31, .98));
}
.processing-card:hover {
  transform: none;
  border-color: rgba(172, 139, 228, .45);
}
.processing-card .pick-badge.processing {
  color: #d8c4ff;
  border-color: rgba(172, 139, 228, .34);
  background: rgba(125, 81, 194, .12);
}
.processing-card .pick-selection {
  color: #f3edff;
}
.processing-card .pick-bottom {
  align-items: flex-start;
  color: #a9b4c9;
}
.processing-card .pick-bottom span {
  max-width: 72%;
  line-height: 1.45;
}
.processing-card .pick-bottom b {
  color: #d8c4ff;
}

/* BetsPapa v1.17.4 — audited overhaul across all four engines */

/* v1.17.5 flag alignment */
.pick-meta > span:first-child { display: inline-flex; align-items: center; gap: .25rem; }

/* BetsPapa v1.18.1 — HT/FT firing-rule visibility */
.engine-strength-label {
  display: inline-block;
  margin-top: 4px;
  color: #f3c94e;
  font-size: 13px;
  font-weight: 800;
}
.htft-firing-box {
  margin-top: 12px;
  padding: 16px;
  border: 1px solid rgba(153, 93, 255, .3);
  border-radius: 14px;
  background: rgba(71, 28, 133, .12);
}
.htft-firing-box.passed { border-color: rgba(57, 226, 137, .35); }
.htft-firing-box.failed { border-color: rgba(255, 93, 120, .35); }
.htft-firing-box > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}
.htft-firing-box strong { color: #fff; font-size: 14px; }
.htft-firing-box p { margin: 9px 0; color: #d7cbea; line-height: 1.55; }
.htft-firing-box ul { margin: 8px 0 0 18px; color: #ffcf74; }
.htft-trigger-chips { display: flex; flex-wrap: wrap; gap: 7px; }
.htft-trigger-chips span {
  padding: 5px 8px;
  border-radius: 999px;
  background: rgba(145, 83, 255, .15);
  color: #d8c4ff;
  font-size: 11px;
  font-weight: 800;
}

/* BetsPapa v1.18.1 — No Draw decision diagnostics */
.no-draw-policy-box {
  margin-top: 12px;
  padding: 14px;
  border: 1px solid rgba(155, 76, 255, .22);
  border-radius: 14px;
  background: rgba(255, 255, 255, .025);
}
.no-draw-policy-box > div:first-child {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.no-draw-policy-box strong {
  color: #fff;
  font-size: 12px;
}
.no-draw-policy-box.diverted {
  border-color: rgba(242, 196, 79, .35);
  background: rgba(242, 196, 79, .055);
}
.no-draw-policy-box.retained {
  border-color: rgba(55, 233, 137, .28);
  background: rgba(55, 233, 137, .045);
}
.no-draw-policy-grid {
  margin-top: 10px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.no-draw-policy-grid span {
  padding: 8px;
  border-radius: 9px;
  color: var(--muted, #b7a8ca);
  background: rgba(0, 0, 0, .12);
  font-size: 10px;
}
.no-draw-policy-grid b {
  display: block;
  margin-top: 3px;
  color: #fff;
  font-size: 12px;
}
@media (max-width: 620px) {
  .no-draw-policy-box > div:first-child {
    align-items: flex-start;
    flex-direction: column;
  }
  .no-draw-policy-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}


/* BetsPapa v1.18.2 — instant prepared-board loading */
.portal-status small { overflow-wrap: anywhere; }
.pick-card.processing .pick-selection { opacity: .78; }


/* BetsPapa v1.18.3 — Papa-first shell, Samsung Z Fold and tablet maximisation */
.portal-main{
  width:min(1680px,calc(100% - 36px));
  padding-bottom:calc(54px + env(safe-area-inset-bottom));
}
.portal-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));
  align-items:stretch;
}
.pick-card{min-width:0;height:100%;content-visibility:auto;contain-intrinsic-size:290px}
.metric-row,.diagnostic-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));
}
.portal-toolbar{
  grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));
}
.portal-toolbar button{width:100%}
.portal-hero h1{font-size:clamp(32px,5vw,58px)}
.portal-hero p{max-width:980px}
.portal-dialog{width:min(980px,calc(100vw - 24px))}

/* Long desktop navigation becomes a touch-friendly menu on tablets and Fold inner screens. */
@media(max-width:1080px){
  .portal-header{height:68px;padding:0 max(14px,env(safe-area-inset-left)) 0 max(14px,env(safe-area-inset-right));gap:12px}
  .portal-brand img{width:46px;height:46px}
  .portal-brand strong{font-size:21px}
  .portal-nav{
    position:fixed;
    inset:76px 12px auto;
    max-height:calc(100dvh - 166px);
    margin:0;
    padding:14px;
    display:none;
    overflow:auto;
    flex-direction:column;
    align-items:stretch;
    gap:5px;
    border:1px solid var(--line);
    border-radius:17px;
    background:rgba(16,0,37,.985);
    box-shadow:0 24px 70px rgba(0,0,0,.55);
  }
  .portal-nav.open{display:flex}
  .portal-nav a{min-height:46px;padding:0 14px;display:flex;align-items:center;border-radius:11px;font-size:13px}
  .portal-nav a.active{background:rgba(245,201,94,.09)}
  .portal-menu{display:block;flex:0 0 44px}
  .portal-main{width:calc(100% - 20px);padding-top:16px}
  .portal-hero{padding:22px 24px}
  .section-title{margin-top:22px}
}

/* Fold inner display and compact tablets: use the open screen rather than collapsing to one card. */
@media(min-width:520px) and (max-width:1080px){
  .portal-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
  .metric-row,.diagnostic-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
  .portal-toolbar{grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:9px}
  .pick-card{padding:15px}
  .portal-hero{display:grid;align-content:center;min-height:150px}
  .reason-columns{grid-template-columns:repeat(2,minmax(0,1fr))}
  .status-strip,.section-title,.portal-footer{flex-direction:row;align-items:center}
}

/* Narrow cover screen and ordinary phones remain a readable single-column layout. */
@media(max-width:519px){
  .portal-main{width:calc(100% - 14px);padding-top:10px}
  .portal-header{padding-left:max(9px,env(safe-area-inset-left));padding-right:max(9px,env(safe-area-inset-right))}
  .portal-brand{gap:7px}
  .portal-brand img{width:42px;height:42px}
  .portal-brand strong{font-size:19px}
  .portal-brand small{font-size:7px}
  .portal-hero{padding:18px 16px;border-radius:17px}
  .portal-hero h1{font-size:34px}
  .portal-hero p{font-size:13px;line-height:1.55}
  .portal-grid,.metric-row,.diagnostic-grid,.portal-toolbar,.reason-columns{grid-template-columns:1fr}
  .pick-card{padding:14px;border-radius:15px}
  .pick-selection{font-size:16px}
  .status-strip,.section-title,.portal-footer{align-items:flex-start;flex-direction:column}
  .match-state-legend{gap:8px;font-size:10px}
}

/* Tablet landscape can fit three useful cards without tiny text. */
@media(min-width:900px) and (max-width:1260px) and (orientation:landscape){
  .portal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .portal-toolbar{grid-template-columns:repeat(4,minmax(0,1fr))}
}

/* Fold posture changes and split-screen resizing should not retain an overflowing menu. */
@media(max-height:520px) and (orientation:landscape){
  .portal-hero{padding:16px 20px;min-height:0}
  .portal-hero h1{margin:4px 0 7px;font-size:31px}
  .portal-header{height:62px}
  .portal-nav{inset:68px 10px auto;max-height:calc(100dvh - 80px)}
  .portal-main{padding-top:10px}
}

/* v1.18.4 Athena transition board */
.athena-card { border-color:rgba(123,97,255,.34); }
.athena-card.prime { box-shadow:0 18px 48px rgba(92,62,205,.24); }
.athena-top-route {
  display:block;
  margin-top:10px;
  color:#c9bdf2;
  font-size:11px;
  line-height:1.45;
}
.athena-classification-panel {
  display:grid;
  gap:5px;
  margin:14px 0;
  padding:14px 16px;
  border:1px solid rgba(172,147,255,.22);
  border-radius:14px;
  background:linear-gradient(135deg,rgba(88,54,175,.18),rgba(255,255,255,.025));
}
.athena-classification-panel span,
.athena-classification-panel small { color:#bfaed3; font-size:11px; }
.athena-classification-panel strong { color:#fff; font-size:18px; }
.athena-route-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.athena-route-grid > div { min-height:94px; }
.athena-route-grid span { line-height:1.35; }
@media (max-width:760px) {
  .athena-route-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:390px) {
  .athena-route-grid { grid-template-columns:1fr; }
}

/* BetsPapa v1.21.0 — Athena v3 swing, half-goals and plain-English detail UI */
.athena-arbitration-switch {
  display: block;
  margin-top: .72rem;
  padding: .58rem .7rem;
  border: 1px solid rgba(250, 204, 21, .26);
  border-radius: 10px;
  background: rgba(250, 204, 21, .07);
  color: #f6d77d;
  line-height: 1.45;
}

.athena-arbitration-grid {
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  margin-top: 1rem;
}

.athena-arbitration-grid > div strong {
  font-size: .92rem;
  line-height: 1.35;
}

.athena-switch-panel {
  display: grid;
  gap: .3rem;
  margin-top: 1rem;
  padding: 1rem;
  border: 1px solid rgba(139, 92, 246, .35);
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(91, 33, 182, .18), rgba(17, 24, 39, .7));
}

.athena-switch-panel strong {
  color: #d8b4fe;
}

.athena-switch-panel span {
  font-weight: 800;
  color: #fff;
}

.athena-switch-panel small {
  color: #aab5cd;
  line-height: 1.5;
}

.boss-alternatives span b {
  color: #c4b5fd;
  font-size: .72rem;
  letter-spacing: .04em;
}

@media (max-width: 560px) {
  .athena-arbitration-grid {
    grid-template-columns: 1fr;
  }
}

/* Athena Separation Engine v2 */
.athena-separation-badge{display:inline-flex;gap:.35rem;align-items:center;padding:.35rem .6rem;border:1px solid rgba(168,85,247,.4);border-radius:999px;background:rgba(88,28,135,.2);font-size:.75rem;font-weight:800}


/* BetsPapa v1.21.0 — Athena v3 filters and half-goal display */
.athena-toolbar select { cursor:pointer; }
.athena-toolbar select:focus { border-color:rgba(245,201,94,.62); box-shadow:0 0 0 3px rgba(245,201,94,.10); }
#athenaFilterSummary { overflow-wrap:anywhere; }

/* BetsPapa v1.21.0 — Athena v3 half-goal explanation layer */
.athena-card-story{margin:.75rem 0 0;color:var(--muted,#aeb8cc);font-size:.86rem;line-height:1.45;text-align:left}
.athena-half-picture{margin-top:1rem;padding:1rem;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:rgba(255,255,255,.03)}
.athena-half-picture h3{margin:0 0 .8rem;font-size:1rem}
.athena-half-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.athena-half-grid>div{display:grid;gap:.42rem;padding:.85rem;border-radius:14px;background:rgba(7,11,22,.55)}
.athena-half-grid strong{font-size:.94rem}
.athena-half-grid span{display:flex;justify-content:space-between;gap:.75rem;color:var(--muted,#aeb8cc);font-size:.78rem}
.athena-half-grid b{color:#fff;white-space:nowrap}
.athena-plain-reasons li{line-height:1.5}
@media (max-width:680px){.athena-half-grid{grid-template-columns:1fr}.athena-half-picture{padding:.8rem}.athena-half-grid>div{padding:.75rem}}

/* BetsPapa v1.21.0 — PapaSense v2 four-engine resolution */
.no-pick-card{cursor:default;border-style:dashed;border-color:rgba(248,113,113,.34);background:linear-gradient(180deg,rgba(127,29,29,.12),rgba(10,15,27,.92))}
.no-pick-card:hover{transform:none;box-shadow:none}
.pick-badge.no-pick{background:rgba(248,113,113,.14);border:1px solid rgba(248,113,113,.34);color:#fecaca}
.no-pick-reason{margin:.75rem 0 0;color:var(--muted,#aeb8cc);font-size:.84rem;line-height:1.5;text-align:left}
.pick-card.no-pick-card .pick-bottom b{color:#fecaca}


/* BetsPapa v1.22.0 — Papa's Pick all-engine main board */
.papa-hub-toolbar{grid-template-columns:repeat(4,minmax(0,1fr))}
.hub-engine-tabs{display:flex;gap:.55rem;margin:1rem 0 1.2rem;padding:.45rem;overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:rgba(14,2,34,.72);scrollbar-width:thin}
.hub-engine-tabs button{flex:0 0 auto;min-height:42px;padding:.65rem .9rem;border:1px solid transparent;border-radius:11px;background:transparent;color:#cbbdde;font-size:.82rem;font-weight:800;cursor:pointer}
.hub-engine-tabs button:hover,.hub-engine-tabs button.active{border-color:rgba(245,201,94,.35);background:rgba(245,201,94,.10);color:#ffe58d}
.papa-hub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(430px,1fr));gap:1rem}
.papa-hub-card{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,rgba(35,7,69,.9),rgba(8,1,22,.95));box-shadow:0 14px 36px rgba(0,0,0,.2)}
.hub-match-head{padding:1.05rem 1.05rem .9rem;border-bottom:1px solid rgba(255,255,255,.07)}
.hub-match-head .match-state-row{margin-top:.65rem}
.hub-match-teams{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.75rem;margin-top:.9rem}
.hub-match-teams .pick-team{min-width:0}
.hub-match-teams .pick-team.away{justify-content:flex-end;text-align:right}
.hub-versus{color:#8f7ea8;font-size:.7rem;font-weight:900;letter-spacing:.12em}
.hub-summary-chips{display:flex;gap:.45rem;flex-wrap:wrap;margin-top:.85rem}
.hub-summary-chips span{padding:.32rem .55rem;border:1px solid rgba(255,255,255,.09);border-radius:999px;background:rgba(255,255,255,.04);color:#d8cbe8;font-size:.69rem;font-weight:800}
.hub-summary-chips .withheld{border-color:rgba(248,113,113,.25);color:#fecaca;background:rgba(127,29,29,.13)}
.hub-summary-chips .agreement{border-color:rgba(73,227,143,.25);color:#8ff0b9;background:rgba(20,83,45,.13)}
.hub-engine-list{display:grid;padding:.55rem}
.hub-engine-row{display:grid;grid-template-columns:minmax(116px,.72fr) minmax(0,1.6fr) auto;align-items:center;gap:.7rem;width:100%;min-height:76px;padding:.72rem .78rem;border:1px solid transparent;border-radius:13px;background:transparent;color:#fff;text-align:left;cursor:pointer}
.hub-engine-row+ .hub-engine-row{border-top-color:rgba(255,255,255,.055);border-top-left-radius:0;border-top-right-radius:0}
.hub-engine-row:hover:not(:disabled),.hub-engine-row:focus-visible{border-color:color-mix(in srgb,var(--row-accent,#f5c95e) 42%,transparent);background:color-mix(in srgb,var(--row-accent,#f5c95e) 8%,transparent);outline:none}
.hub-engine-row:disabled{cursor:default;opacity:.68}
.hub-engine-name{display:grid;grid-template-columns:9px minmax(0,1fr);gap:.12rem .48rem;align-items:center;min-width:0}
.hub-engine-name i{grid-row:1/3;width:8px;height:32px;border-radius:999px;background:var(--row-accent,#f5c95e);box-shadow:0 0 14px color-mix(in srgb,var(--row-accent,#f5c95e) 45%,transparent)}
.hub-engine-name b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem}
.hub-engine-name small{color:#a99aba;font-size:.61rem;font-weight:900;letter-spacing:.06em}
.hub-engine-pick{display:grid;gap:.2rem;min-width:0}
.hub-engine-pick strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;line-height:1.25}
.hub-engine-pick small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#aa9bbd;font-size:.68rem;line-height:1.35}
.hub-engine-score{min-width:64px;color:var(--row-accent,#f5c95e);font-size:.78rem;font-weight:900;text-align:right}
.hub-engine-row.engine-primary{--row-accent:#f5c95e}
.hub-engine-row.engine-safer{--row-accent:#49e38f}
.hub-engine-row.engine-aggressive{--row-accent:#ff7d63}
.hub-engine-row.engine-venue{--row-accent:#65a7ff}
.hub-engine-row.engine-athena{--row-accent:#b48cff}
.hub-engine-row.engine-form{--row-accent:#ff8fb8}
.hub-engine-row.withheld .hub-engine-score{color:#fecaca}
.hub-engine-row.preparing .hub-engine-score{color:#b9abc9}
.hub-engine-row.settled .hub-engine-name small{color:#f5d471}
@media(max-width:1050px){.papa-hub-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.papa-hub-grid{grid-template-columns:1fr}}
@media(max-width:680px){.papa-hub-toolbar{grid-template-columns:1fr}.papa-hub-grid{grid-template-columns:1fr}.hub-match-head{padding:.9rem}.hub-engine-row{grid-template-columns:minmax(100px,.8fr) minmax(0,1.55fr);min-height:82px;padding:.72rem .62rem}.hub-engine-score{grid-column:2;text-align:left;font-size:.7rem}.hub-engine-pick strong,.hub-engine-pick small{white-space:normal}.hub-engine-name b{white-space:normal}.hub-match-teams{gap:.45rem}.hub-match-teams .pick-team{font-size:.94rem}.hub-match-teams .pick-team img,.hub-match-teams .team-fallback{width:36px;height:36px}}
@media(max-width:390px){.hub-engine-row{grid-template-columns:1fr}.hub-engine-score{grid-column:1}.hub-engine-name{grid-template-columns:8px 1fr}.hub-engine-tabs{margin-inline:-2px}.hub-match-teams{grid-template-columns:1fr}.hub-versus{display:none}.hub-match-teams .pick-team.away{justify-content:flex-start;text-align:left}}

.early-season-flag{
  display:inline-flex;align-items:center;gap:.28rem;width:max-content;
  padding:.32rem .58rem;border:1px solid rgba(255,90,110,.55);border-radius:999px;
  background:rgba(160,12,36,.28);color:#ffc1c7;font-size:.68rem;font-weight:900;
  letter-spacing:.07em;text-transform:uppercase
}
.early-season-flag.chip{margin:0}
.pick-card.early-season,.papa-hub-card.early-season{
  border-color:rgba(255,86,104,.48);
  box-shadow:0 0 0 1px rgba(255,70,90,.22),0 16px 34px rgba(70,0,12,.28)
}
.papa-hub-card.early-season .hub-match-head{background:linear-gradient(180deg,rgba(120,8,24,.22),transparent 78%)}
.hub-summary-chips .early-season-flag{border-color:rgba(255,90,110,.45);color:#ffc1c7;background:rgba(127,29,29,.22)}
.league-climate-chip{
  display:inline-flex;align-items:center;width:max-content;padding:.32rem .58rem;
  border-radius:999px;font-size:.68rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase
}
.league-climate-chip.high{border:1px solid rgba(255,146,82,.5);background:rgba(154,58,12,.22);color:#ffd0b5}
.league-climate-chip.low{border:1px solid rgba(96,165,250,.45);background:rgba(23,62,120,.28);color:#bfdbfe}
.league-climate-chip.rising::after{content:" ↑"; }
.league-climate-chip.falling::after{content:" ↓"; }
.hub-engine-row.flagged .hub-engine-pick{gap:.35rem}
.hub-engine-row.flagged .early-season-flag{margin-top:.15rem}
.hub-engine-pick .early-season-flag{font-size:.58rem;padding:.22rem .45rem}



