@import url('/styles-base.css');
@import url('/logo-ux.css');
@import url('/transfer-demo-layout.css');
@import url('/admin-tablet.css');
@import url('/tablet-readable.css');
@import url('/ipad-landscape-fixes.css');
@import url('/styles-overrides.css?v=20260906-beta2-final-qa-r6-3');
@import url('/table-rank-r6-4.css?v=20260906-r6-4');
@import url('/final-visual-polish-r6-5.css?v=20260907-r6-5');
@import url('/final-visual-polish-r6-6.css?v=20260907-r6-6');
@import url('/final-ui-ai-r6-8.css?v=20260907-r6-14');

/* DASM Beta R6.15 — consolidated final QA overrides.
   Keep this file deliberately small: imports hold the historical styling,
   this block is the authoritative Beta correction layer. */

/* Match Centre substitutions: colour in the glyph/type only. */
.mc-player .mc-sub-event{
  all:unset!important;
  display:inline-flex!important;
  align-items:baseline!important;
  gap:2px!important;
  margin:0 4px!important;
  white-space:nowrap!important;
  line-height:1!important;
  font-family:inherit!important;
  vertical-align:baseline!important;
}
.mc-player .mc-sub-event .mc-sub-arrow,
.mc-player .mc-sub-event small{
  all:unset!important;
  display:inline!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  filter:none!important;
  font-family:inherit!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.mc-player .mc-sub-event .mc-sub-arrow{font-size:0!important}
.mc-player .mc-sub-event .mc-sub-arrow::before{
  all:unset!important;
  display:inline!important;
  font-family:inherit!important;
  font-size:14px!important;
  line-height:1!important;
  font-weight:700!important;
}
.mc-player .mc-sub-event small{font-size:9px!important;line-height:1!important;font-weight:400!important;letter-spacing:0!important}
.mc-player .mc-sub-event.on,.mc-player .mc-sub-event.on .mc-sub-arrow,.mc-player .mc-sub-event.on small{color:#078a5f!important}
.mc-player .mc-sub-event.off,.mc-player .mc-sub-event.off .mc-sub-arrow,.mc-player .mc-sub-event.off small{color:#d24c46!important}
.mc-player .mc-sub-event.on .mc-sub-arrow::before{content:'↑'!important;color:#078a5f!important}
.mc-player .mc-sub-event.off .mc-sub-arrow::before{content:'↓'!important;color:#d24c46!important}
.mc-events{display:inline-flex!important;align-items:center!important;gap:4px!important;overflow:visible!important}
.mc-events>.mc-event{order:0!important}
.mc-player.home .mc-sub-event{order:-20!important;flex-direction:row!important}
.mc-player.away .mc-sub-event{order:20!important;flex-direction:row-reverse!important}

/* Match Centre: readable, only marginally smaller than the original.
   Use native crests first; show the Beta fallback badge only where the native mapping is absent. */
html body #view-live .fixture-card .fixture-teams b{font-size:15px!important;line-height:1.15!important}
html body #view-live .fixture-card .fixture-teams b>img.beta-club-badge{display:inline-block!important;width:24px!important;height:24px!important;object-fit:contain!important;vertical-align:middle!important;margin-right:7px!important}
html body #view-live .fixture-card .fixture-teams b:has(.fixture-club-crest)>img.beta-club-badge{display:none!important}
html body #view-live .fixture-card .fixture-club-label:not(:has(.fixture-club-crest)){display:inline-flex!important;align-items:center!important;gap:7px!important}
html body #view-live .fixture-card b:not(:has(.fixture-club-crest)):not(:has(.beta-club-badge)) .fixture-club-label::before{
  content:''!important;display:inline-block!important;width:22px!important;height:22px!important;flex:0 0 22px!important;
  background:url('/assets/dasm-ball.png') center/contain no-repeat!important;opacity:.72!important
}
@media(max-width:760px){html body #view-live .fixture-card .fixture-teams b{font-size:13.5px!important}}

/* DASM AI: restore the dark family and bring the DASM football back into Pulse + Baller.
   Crowd Control and Path to the Cups keep their dedicated line art. */
html body #view-grades .ai-feature.pulse,
html body #view-grades .ai-feature.baller,
html body #view-grades .ai-feature.crowd,
html body #view-grades .ai-feature.stands,
html body #view-grades .ai-feature.cups{
  min-height:184px!important;
  border:1px solid rgba(163,255,103,.34)!important;
  background:radial-gradient(circle at 84% 50%,rgba(145,239,0,.22),transparent 24%),radial-gradient(circle at 66% 52%,rgba(45,255,113,.10),transparent 31%),linear-gradient(145deg,#020806 0%,#06130e 52%,#010504 100%)!important;
  background-image:radial-gradient(circle at 84% 50%,rgba(145,239,0,.22),transparent 24%),radial-gradient(circle at 66% 52%,rgba(45,255,113,.10),transparent 31%),linear-gradient(145deg,#020806 0%,#06130e 52%,#010504 100%)!important;
  color:#fff!important;
  box-shadow:inset 0 0 0 1px rgba(220,255,174,.07),inset -55px 0 90px rgba(81,255,86,.07),0 12px 30px rgba(0,30,18,.22)!important;
}
html body #view-grades .ai-feature-head>div:first-child b{color:#fff!important;text-shadow:none!important}
html body #view-grades .ai-feature-head>div:first-child em{color:#91ef00!important;text-shadow:none!important}
html body #view-grades .ai-feature>small{color:#9adcb7!important;text-shadow:none!important}
html body #view-grades .ai-feature>p{color:#f1f6f4!important;text-shadow:none!important;opacity:1!important}
html body #view-grades .ai-feature.pulse .ai-ball-wrap,
html body #view-grades .ai-feature.baller .ai-ball-wrap{
  display:grid!important;visibility:visible!important;place-items:center!important;background:none!important;
}
html body #view-grades .ai-feature.pulse .ai-ball-wrap{
  position:absolute!important;right:4px!important;top:50%!important;width:86px!important;height:92px!important;
  transform:translateY(-50%)!important;z-index:5!important
}
html body #view-grades .ai-feature.pulse .ai-ball{display:block!important;visibility:visible!important;width:84px!important;height:90px!important;object-fit:contain!important;opacity:1!important;filter:drop-shadow(0 3px 4px rgba(0,0,0,.3)) drop-shadow(0 0 9px rgba(145,239,0,.42))!important}
html body #view-grades .ai-feature.pulse .ai-pulse-line{display:block!important;visibility:visible!important;right:82px!important;top:50%!important;width:152px!important;height:52px!important;transform:translateY(-50%)!important;color:#91ef00!important;opacity:.82!important;filter:drop-shadow(0 0 5px rgba(145,239,0,.34))!important}
html body #view-grades .ai-feature.baller .ai-baller-art{display:flex!important;visibility:visible!important;position:absolute!important;right:4px!important;top:50%!important;width:198px!important;height:96px!important;transform:translateY(-50%)!important;align-items:center!important;justify-content:flex-end!important;gap:2px!important;opacity:1!important}
html body #view-grades .ai-feature.baller .ai-baller-art .ai-ball-wrap{position:relative!important;right:auto!important;top:auto!important;width:82px!important;height:88px!important;transform:none!important;flex:0 0 82px!important}
html body #view-grades .ai-feature.baller .ai-ball{display:block!important;visibility:visible!important;width:82px!important;height:88px!important;object-fit:contain!important;opacity:1!important;filter:drop-shadow(0 3px 4px rgba(0,0,0,.3)) drop-shadow(0 0 8px rgba(145,239,0,.36))!important}
html body #view-grades .ai-feature.baller .ai-crown{display:block!important;visibility:visible!important;width:100px!important;height:66px!important;color:#f5d94f!important;opacity:.92!important;filter:drop-shadow(0 0 7px rgba(255,222,80,.42))!important}
html body #view-grades .ai-feature.crowd .ai-side-art,
html body #view-grades .ai-feature.stands .ai-side-art,
html body #view-grades .ai-feature.cups .ai-side-art{display:flex!important;visibility:visible!important;opacity:1!important}
html body #view-grades .ai-feature.crowd .ai-side-art .ai-decor,
html body #view-grades .ai-feature.stands .ai-side-art .ai-decor,
html body #view-grades .ai-feature.cups .ai-side-art .ai-decor{display:block!important;visibility:visible!important;color:#91ef00!important;opacity:.82!important;filter:drop-shadow(0 0 6px rgba(145,239,0,.32))!important}

/* Hero strings: animate the actual SVG connection with asynchronous prime-length cycles.
   Animated custom properties keep the motion alive even though legacy rules use !important. */
@property --dasm-wire-o{syntax:'<number>';inherits:false;initial-value:0}
@property --dasm-wire-y{syntax:'<length>';inherits:false;initial-value:0px}
@property --dasm-wire-x{syntax:'<number>';inherits:false;initial-value:.12}
@property --dasm-wire-b{syntax:'<number>';inherits:false;initial-value:.7}
@property --dasm-wire-g{syntax:'<number>';inherits:false;initial-value:0}
html body .brand-banner .brand-energy.beta-randomized .brand-energy-wave path{
  opacity:var(--dasm-wire-o)!important;
  transform:translateY(var(--dasm-wire-y)) scaleX(var(--dasm-wire-x))!important;
  filter:brightness(var(--dasm-wire-b)) drop-shadow(0 0 calc(var(--dasm-wire-g)*1px) rgba(145,239,0,.88))!important;
  transform-box:fill-box!important;transform-origin:100% 50%!important;
  stroke-dasharray:92 428!important;will-change:stroke-dashoffset,filter,transform,opacity!important
}
html body .brand-banner .brand-energy.beta-randomized .brand-energy-wave path:nth-child(1){animation:dasmAliveA 4.7s linear -1.1s infinite!important}
html body .brand-banner .brand-energy.beta-randomized .brand-energy-wave path:nth-child(2){animation:dasmAliveB 6.1s linear -3.7s infinite!important}
html body .brand-banner .brand-energy.beta-randomized .brand-energy-wave path:nth-child(3){animation:dasmAliveC 7.9s linear -5.2s infinite!important}
html body .brand-banner .brand-energy.beta-randomized .brand-energy-line{
  opacity:var(--dasm-wire-o)!important;transform:translateY(var(--dasm-wire-y)) scaleX(var(--dasm-wire-x))!important;
  filter:brightness(var(--dasm-wire-b)) drop-shadow(0 0 calc(var(--dasm-wire-g)*1px) rgba(145,239,0,.82))!important;
  transform-origin:100% 50%!important;animation:dasmAliveD 9.3s linear -6.4s infinite!important
}
@keyframes dasmAliveA{
  0%,12%,74%,100%{--dasm-wire-o:0;--dasm-wire-y:-9px;--dasm-wire-x:.08;--dasm-wire-b:.6;--dasm-wire-g:0;stroke-dashoffset:520}
  24%{--dasm-wire-o:.32;--dasm-wire-y:-5px;--dasm-wire-x:.42;--dasm-wire-b:1;--dasm-wire-g:2;stroke-dashoffset:370}
  39%{--dasm-wire-o:1;--dasm-wire-y:-1px;--dasm-wire-x:1;--dasm-wire-b:1.7;--dasm-wire-g:10;stroke-dashoffset:175}
  55%{--dasm-wire-o:.22;--dasm-wire-y:5px;--dasm-wire-x:.56;--dasm-wire-b:.9;--dasm-wire-g:3;stroke-dashoffset:25}
}
@keyframes dasmAliveB{
  0%,27%,86%,100%{--dasm-wire-o:0;--dasm-wire-y:10px;--dasm-wire-x:.10;--dasm-wire-b:.62;--dasm-wire-g:0;stroke-dashoffset:-95}
  38%{--dasm-wire-o:.28;--dasm-wire-y:6px;--dasm-wire-x:.48;--dasm-wire-b:1;--dasm-wire-g:2;stroke-dashoffset:80}
  51%{--dasm-wire-o:.86;--dasm-wire-y:2px;--dasm-wire-x:.94;--dasm-wire-b:1.45;--dasm-wire-g:8;stroke-dashoffset:245}
  67%{--dasm-wire-o:.12;--dasm-wire-y:-7px;--dasm-wire-x:.32;--dasm-wire-b:.78;--dasm-wire-g:1;stroke-dashoffset:430}
}
@keyframes dasmAliveC{
  0%,7%,59%,100%{--dasm-wire-o:0;--dasm-wire-y:3px;--dasm-wire-x:.08;--dasm-wire-b:.65;--dasm-wire-g:0;stroke-dashoffset:470}
  18%{--dasm-wire-o:.24;--dasm-wire-y:-7px;--dasm-wire-x:.38;--dasm-wire-b:.96;--dasm-wire-g:2;stroke-dashoffset:335}
  32%{--dasm-wire-o:.68;--dasm-wire-y:-4px;--dasm-wire-x:.74;--dasm-wire-b:1.28;--dasm-wire-g:6;stroke-dashoffset:220}
  44%{--dasm-wire-o:.96;--dasm-wire-y:0px;--dasm-wire-x:1;--dasm-wire-b:1.62;--dasm-wire-g:9;stroke-dashoffset:85}
  53%{--dasm-wire-o:.10;--dasm-wire-y:7px;--dasm-wire-x:.26;--dasm-wire-b:.75;--dasm-wire-g:1;stroke-dashoffset:-55}
  82%{--dasm-wire-o:.34;--dasm-wire-y:2px;--dasm-wire-x:.52;--dasm-wire-b:1.08;--dasm-wire-g:4;stroke-dashoffset:260}
}
@keyframes dasmAliveD{
  0%,34%,82%,100%{--dasm-wire-o:0;--dasm-wire-y:-8px;--dasm-wire-x:.05;--dasm-wire-b:.62;--dasm-wire-g:0}
  46%{--dasm-wire-o:.34;--dasm-wire-y:4px;--dasm-wire-x:.46;--dasm-wire-b:1.05;--dasm-wire-g:3}
  58%{--dasm-wire-o:.76;--dasm-wire-y:-1px;--dasm-wire-x:1;--dasm-wire-b:1.5;--dasm-wire-g:8}
  70%{--dasm-wire-o:.12;--dasm-wire-y:6px;--dasm-wire-x:.42;--dasm-wire-b:.82;--dasm-wire-g:1}
}
html body .brand-banner::before{opacity:.035!important;animation:none!important;filter:none!important}

/* Tablet: rings and ball now share the exact same parent box. */
@media (min-width:761px) and (max-width:1366px) and (hover:none) and (pointer:coarse){
  html body .brand-banner{position:relative!important}
  html body .brand-banner::after{display:none!important}
  html body .brand-banner .brand-orbit{
    position:absolute!important;right:0!important;left:auto!important;top:50%!important;width:160px!important;height:160px!important;
    margin:0!important;transform:translateY(-50%)!important;z-index:6!important;overflow:visible!important
  }
  html body .brand-banner .brand-orbit::before,
  html body .brand-banner .brand-orbit::after{
    content:''!important;display:block!important;position:absolute!important;inset:0!important;border-radius:50%!important;pointer-events:none!important
  }
  html body .brand-banner .brand-orbit::before{
    background:radial-gradient(circle,transparent 0 49%,rgba(223,255,164,.62) 50% 51.5%,transparent 53% 62%,rgba(145,239,0,.30) 63% 64%,transparent 65%)!important;
    box-shadow:0 0 12px rgba(230,255,183,.66),0 0 30px rgba(145,239,0,.56),0 0 62px rgba(55,255,103,.30),inset 0 0 26px rgba(145,239,0,.14)!important;
    animation:dasmOrbitBreath 2.6s ease-in-out infinite!important
  }
  html body .brand-banner .brand-orbit::after{inset:12px!important;border:1px solid rgba(145,239,0,.34)!important;box-shadow:0 0 18px rgba(145,239,0,.24)!important}
  html body .brand-banner .brand-orbit .brand-ball,
  html body .brand-banner .brand-ball{
    position:absolute!important;left:50%!important;top:50%!important;right:auto!important;bottom:auto!important;width:132px!important;height:132px!important;
    margin:0!important;transform:translate(-50%,-50%)!important;object-fit:contain!important;object-position:center!important;justify-self:auto!important;align-self:auto!important;z-index:7!important
  }
}
@keyframes dasmOrbitBreath{0%,100%{opacity:.78;transform:scale(.97)}50%{opacity:1;transform:scale(1.035)}}

/* Teams: the player-name button is the mobile/desktop ownership target. */
html body #view-teams .squad-row{pointer-events:auto!important}
html body #view-teams .team-player-owner-link{
  pointer-events:auto!important;touch-action:manipulation!important;-webkit-tap-highlight-color:rgba(9,119,82,.12)!important;
  position:relative!important;z-index:3!important;min-height:28px!important;display:flex!important;align-items:center!important
}
@media(max-width:760px){
  html body #view-teams .team-player-owner-link{min-height:34px!important;padding:2px 0!important}
  .mc-player .mc-sub-event{gap:2px!important;margin:0 3px!important}
  .mc-player .mc-sub-event .mc-sub-arrow::before{font-size:13px!important}
  .mc-player .mc-sub-event small{font-size:8.5px!important;font-weight:400!important}
}

/* Ownership modal hierarchy. */
html body #teamModalBody .owner-list button.beta-owner-is-mine{border-color:#25b56f!important;background:linear-gradient(90deg,rgba(39,190,112,.14),rgba(124,255,166,.06))!important;box-shadow:0 0 0 2px rgba(37,181,111,.20),0 0 20px rgba(37,181,111,.30),inset 0 0 18px rgba(84,255,151,.06)!important}
html body #teamModalBody .owner-list .beta-owner-rank{display:block!important;font-size:10px!important;font-weight:900!important;color:#0b5d4b!important}

/* Visible release marker. */
html body #adminModal .admin-version-strip>div:nth-child(2)>strong{font-size:0!important;line-height:1!important}
html body #adminModal .admin-version-strip>div:nth-child(2)>strong::after{content:'2026-09-07.beta2-r6.25-portrait-team-widths'!important;font-size:18px!important;font-weight:950!important;line-height:1.1!important;color:inherit!important}
html body #adminModal .modal-head::after{content:'BETA RELEASE · 2026-09-07 · R6.25'!important;display:inline-flex!important;align-items:center!important;margin-left:auto!important;margin-right:8px!important;padding:7px 13px!important;border:1px solid #e2bd52!important;border-radius:999px!important;background:#fff6d8!important;color:#7b5b0d!important;font-size:9px!important;font-weight:950!important;letter-spacing:.05em!important;white-space:nowrap!important}

/* DASM_R6_20_TABLET_NAV_AND_TEAMS_POPUP
   Tablet Live keeps only the primary tab row. Other tablet views retain tier two and its minimiser.
   Teams player names remain visibly interactive on every platform. */
.team-player-owner-link{appearance:none;border:0;background:transparent;padding:0;margin:0;min-width:0;color:inherit;font:inherit;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}
.team-player-owner-link:hover{text-decoration:underline;text-underline-offset:2px}
.team-player-owner-link:focus-visible{outline:2px solid #0b8a63;outline-offset:2px;border-radius:3px}
@media (min-width:641px) and (max-width:1366px) and (any-pointer:coarse){
  body:has(#view-live) #secondaryNav,
  body:has(#view-live) #secondaryNavMinimise{display:none!important}
  body:not(:has(#view-live)) #secondaryNavMinimise{display:inline-flex!important;align-items:center!important;justify-content:center!important}
}

/* DASM_R6_21_TABLET_MINIMISER_AND_TEAM_DENSITY
   Keep the secondary-nav control inside the tablet viewport and tighten Teams rows without changing type size. */
@media (min-width:761px) and (max-width:1366px){
  body:has(#view-live) #secondaryNav,
  body:has(#view-live) #secondaryNavMinimise{display:none!important}
  body:not(:has(#view-live)) .tabs{grid-template-columns:minmax(0,1fr) 40px!important;column-gap:8px!important}
  body:not(:has(#view-live)) .primary-wrap{grid-column:1/-1!important}
  body:not(:has(#view-live)) #secondaryNav{grid-column:1!important;grid-row:2!important}
  body:not(:has(#view-live)) #secondaryNavMinimise{display:grid!important;place-items:center!important;position:static!important;right:auto!important;bottom:auto!important;grid-column:2!important;grid-row:2!important;align-self:center!important;justify-self:stretch!important;width:40px!important;height:38px!important;min-width:40px!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;z-index:20!important}
  body:not(:has(#view-live)) .tabs.secondary-collapsed #secondaryNav{display:none!important}
  #view-teams .squad-list{gap:2px!important}
  #view-teams .squad-row{padding-top:3px!important;padding-bottom:3px!important;min-height:30px!important}
  html body #view-teams .team-player-owner-link{min-height:24px!important;padding-top:0!important;padding-bottom:0!important}
  #view-teams .team-card-head{margin-bottom:7px!important}
  #view-teams .team-value{margin-top:6px!important;padding-top:6px!important}
}

/* DASM_R6_22_TRUE_TABLET_COLLAPSE_AND_COMPACT_TEAMS
   Collapsed tier two must reclaim its full row. Team rows lose box chrome/padding, not font size. */
@media (min-width:761px) and (max-width:1366px){
  body:not(:has(#view-live)) .tabs.secondary-collapsed{grid-template-columns:minmax(0,1fr) 36px!important;grid-template-rows:auto!important;column-gap:6px!important;row-gap:0!important}
  body:not(:has(#view-live)) .tabs.secondary-collapsed .primary-wrap{grid-column:1!important;grid-row:1!important}
  body:not(:has(#view-live)) .tabs.secondary-collapsed #secondaryNav{display:none!important}
  body:not(:has(#view-live)) .tabs.secondary-collapsed #secondaryNavMinimise{grid-column:2!important;grid-row:1!important;align-self:center!important;justify-self:stretch!important;width:36px!important;min-width:36px!important;height:38px!important;margin:0!important;position:static!important}
  html body #view-teams .team-card{padding-top:10px!important;padding-bottom:9px!important}
  html body #view-teams .team-card-head{margin-bottom:5px!important;padding-bottom:3px!important}
  html body #view-teams .squad-head{margin:1px 0 2px!important;min-height:14px!important}
  html body #view-teams .squad-list{gap:1px!important}
  html body #view-teams .squad-row{height:auto!important;min-height:27px!important;padding-top:1px!important;padding-bottom:1px!important;border-radius:7px!important;line-height:1.1!important}
  html body #view-teams .team-player-owner-link{min-height:22px!important;padding-top:0!important;padding-bottom:0!important;line-height:1.1!important}
  html body #view-teams .team-value{margin-top:4px!important;padding-top:4px!important}
}

/* DASM_R6_23_TABLET_PORTRAIT_POLISH */

@media (min-width:761px) and (max-width:1100px) and (orientation:portrait){
  html body .brand-banner .brand-orbit{
    position:absolute!important;right:10px!important;left:auto!important;top:50%!important;
    width:124px!important;height:124px!important;margin:0!important;
    transform:translateY(-50%)!important;
  }
  html body .brand-banner .brand-orbit .brand-ball,
  html body .brand-banner .brand-ball{
    position:absolute!important;left:50%!important;top:50%!important;right:auto!important;
    width:108px!important;height:108px!important;margin:0!important;
    transform:translate(-50%,-50%)!important;object-fit:contain!important;
  }
}



/* R8.125 — admin usage trend weekend emphasis. */
#adminModal .analytics-list>div.analytics-weekend b,
#adminModal .analytics-list>div.analytics-weekend span{
  color:#1769aa!important;
}
