/* Quiet single-edge controls. Decorative layers keep focus rings and key hints intact. */
html body :is(#game-container #main-menu, #cb-market-hud, #combat-screen, .viewport-overlay, .modal-overlay, #cb-first-play) button:not(.cb-home-opponent-arrow,.cb-roster-option,.challenge-dot,.cb-stat-shortcut) {
  isolation:isolate;border-color:transparent!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;text-shadow:none!important;
}
html body :is(#game-container #main-menu, #cb-market-hud, .viewport-overlay, .modal-overlay, #cb-first-play) button:not(.cb-home-opponent-arrow,.cb-roster-option,.challenge-dot,.cb-starter-offer) {position:relative}
html body :is(#game-container #main-menu, #cb-market-hud, #combat-screen, .viewport-overlay, .modal-overlay, #cb-first-play) button:not(.cb-home-opponent-arrow,.cb-roster-option,.challenge-dot,.cb-stat-shortcut)::before,
html body :is(#game-container #main-menu, #cb-market-hud, #combat-screen, .viewport-overlay, .modal-overlay, #cb-first-play) button:not(.cb-home-opponent-arrow,.cb-roster-option,.challenge-dot,.cb-stat-shortcut)::after {
  content:"";position:absolute;inset:0;pointer-events:none;
}
html body :is(#game-container #main-menu, #cb-market-hud, #combat-screen, .viewport-overlay, .modal-overlay, #cb-first-play) button:not(.cb-home-opponent-arrow,.cb-roster-option,.challenge-dot,.cb-stat-shortcut)::before {
  z-index:-2;background:currentColor;
  clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%);
  opacity:.5;transition:opacity 120ms cubic-bezier(.23,1,.32,1);
}
html body :is(#game-container #main-menu, #cb-market-hud, #combat-screen, .viewport-overlay, .modal-overlay, #cb-first-play) button:not(.cb-home-opponent-arrow,.cb-roster-option,.challenge-dot,.cb-stat-shortcut)::after {
  z-index:-1;inset:2px;background:#0b1b25;
  clip-path:polygon(0 0,calc(100% - 11px) 0,100% 11px,100% 100%,0 100%);
}
html body #game-container #main-menu :is(.classic-mode,.classic-dock button,.shop-btn,.cb-shell-tabs button,.cb-shop-tabs button){color:#8cf4ff!important}
html body #game-container #main-menu :is(button.active,button[aria-pressed="true"],.arena-quick-fight,.cb-starter-offer,#shop-skin-action-btn){color:#ffe18b!important}
html body #game-container #main-menu #preview-mute[aria-pressed="true"]{color:#ff9eac!important}
html body :is(#game-container #main-menu, #cb-market-hud, #combat-screen, .viewport-overlay, .modal-overlay, #cb-first-play) button:not(.cb-home-opponent-arrow,.cb-roster-option,.challenge-dot,.cb-stat-shortcut):is(:active,:focus-visible,[aria-pressed="true"])::before{opacity:1}
html body :is(#game-container #main-menu, #cb-market-hud, #combat-screen, .viewport-overlay, .modal-overlay, #cb-first-play) button:focus-visible{outline:3px solid #fff!important;outline-offset:3px}
html body #cb-market-hud .cb-market-controls{left:36px;width:648px;gap:7px}
/* Combat feedback is immediate, including keyboard input; repeated hits never move controls. */
html body #cb-market-hud .cb-market-controls button{animation:none!important;transform:none!important}
html body #cb-market-hud .cb-market-controls button::before{transition:none}
html body #cb-market-hud .cb-market-controls button:is(.cb-strike,.cb-queued)::before{opacity:1;background:#fff}
html body #cb-market-hud .cb-market-controls button[aria-pressed="true"]{color:#ffe18b}
html body #cb-market-hud .cb-market-controls button:disabled{opacity:.65}
@media(hover:hover) and (pointer:fine){
  html body :is(#game-container #main-menu,.viewport-overlay,#cb-first-play) button:not(.cb-home-opponent-arrow,.cb-roster-option,.challenge-dot,.cb-stat-shortcut):enabled:hover::before{opacity:1}
}
@media(prefers-reduced-motion:reduce){
  html body :is(#game-container #main-menu,#cb-market-hud,.viewport-overlay,#cb-first-play) button::before{transition:none}
}

/* Light labels are required because filled primary actions now use dark HUD plates. */
html body :is(.viewport-overlay,.modal-overlay,#cb-first-play) button{color:#8cf4ff!important}
html body :is(.viewport-overlay,.modal-overlay,#cb-first-play) :is(.cb-primary,.welcome-play,.dialog-btn.confirm){color:#ffe18b!important}
html body :is(.viewport-overlay,.modal-overlay) .dialog-btn.cancel{color:#ff9eac!important}

/* The two home calls to action have smaller paint without sacrificing phone hit areas. */
html body #game-container #main-menu #console-content-main .cb-home-opponent{width:160px}
/* Eye-catching, active, animated Quick Fight & Starter Pack buttons */
@keyframes quickFightActiveBeacon {
  0% {
    transform: scale(1);
    box-shadow: 0 0 16px rgba(0, 255, 65, 0.75), 0 0 32px rgba(255, 204, 0, 0.4), inset 0 0 16px rgba(0, 255, 65, 0.35);
  }
  50% {
    transform: scale(1.06);
    box-shadow: 0 0 32px rgba(0, 255, 65, 1), 0 0 60px rgba(255, 204, 0, 0.75), inset 0 0 24px rgba(0, 255, 65, 0.6);
  }
  100% {
    transform: scale(1);
    box-shadow: 0 0 16px rgba(0, 255, 65, 0.75), 0 0 32px rgba(255, 204, 0, 0.4), inset 0 0 16px rgba(0, 255, 65, 0.35);
  }
}
@keyframes quickFightAbsoluteBeacon {
  0% {
    transform: translate(-50%, -50%) scale(1);
    box-shadow: 0 0 18px rgba(0, 255, 65, 0.75), 0 0 34px rgba(255, 204, 0, 0.45), inset 0 0 16px rgba(0, 255, 65, 0.35);
  }
  50% {
    transform: translate(-50%, -50%) scale(1.06);
    box-shadow: 0 0 34px rgba(0, 255, 65, 1), 0 0 65px rgba(255, 204, 0, 0.8), inset 0 0 25px rgba(0, 255, 65, 0.6);
  }
  100% {
    transform: translate(-50%, -50%) scale(1);
    box-shadow: 0 0 18px rgba(0, 255, 65, 0.75), 0 0 34px rgba(255, 204, 0, 0.45), inset 0 0 16px rgba(0, 255, 65, 0.35);
  }
}
@keyframes starterOfferFlash {
  0% {
    transform: rotate(45deg) scale(1);
    filter: drop-shadow(0 0 8px rgba(255, 204, 0, 0.7)) drop-shadow(0 0 16px rgba(0, 255, 65, 0.4));
  }
  50% {
    transform: rotate(45deg) scale(1.07);
    filter: drop-shadow(0 0 22px rgba(255, 204, 0, 1)) drop-shadow(0 0 36px rgba(0, 255, 65, 0.8)) brightness(1.25);
  }
  100% {
    transform: rotate(45deg) scale(1);
    filter: drop-shadow(0 0 8px rgba(255, 204, 0, 0.7)) drop-shadow(0 0 16px rgba(0, 255, 65, 0.4));
  }
}
@keyframes flashyTopStarter {
  0% {
    transform: scale(1);
    box-shadow: 0 0 5px #00ff41, 0 0 10px rgba(255, 204, 0, 0.5);
  }
  50% {
    transform: scale(1.1);
    box-shadow: 0 0 18px #00ff41, 0 0 28px #ffcc00;
    border-color: #ffcc00;
    color: #fff;
    text-shadow: 0 0 10px #ffcc00;
    background: rgba(0, 255, 65, 0.45);
  }
  100% {
    transform: scale(1);
    box-shadow: 0 0 5px #00ff41, 0 0 10px rgba(255, 204, 0, 0.5);
  }
}

html body #game-container #main-menu #console-content-main .arena-quick-fight {
  min-height: 94px;
  border-radius: 60px !important;
  border: 2.5px solid #00ff41 !important;
  background: radial-gradient(circle, #083321 0%, #03170e 65%, #010a06 100%) !important;
  color: #00ff41 !important;
  text-shadow: 0 0 12px #00ff41 !important;
  font-weight: 900 !important;
  animation: quickFightAbsoluteBeacon 1.8s ease-in-out infinite !important;
  cursor: pointer;
}
html body #game-container #main-menu #console-content-main .arena-quick-fight span {
  color: #00ff41 !important;
  text-shadow: 0 0 12px #00ff41 !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  letter-spacing: 0.05em !important;
}
html body #game-container #main-menu #console-content-main .arena-quick-fight small {
  color: #ffe18b !important;
  text-shadow: 0 0 10px rgba(255, 225, 139, 0.9) !important;
  font-weight: 700 !important;
  font-size: 13px !important;
}
html body #game-container #main-menu #console-content-main .arena-quick-fight::before {
  inset: -3px;
  border-radius: 64px;
  border: 1px solid rgba(0, 255, 65, 0.4);
  background: transparent;
  opacity: 1;
}
html body #game-container #main-menu #console-content-main .arena-quick-fight::after {
  display: none;
}
html body #game-container #main-menu #console-content-main .cb-home-opponent .arena-quick-fight {
  animation: quickFightActiveBeacon 1.8s ease-in-out infinite !important;
}
html body #game-container #main-menu #console-content-main .cb-starter-offer {
  position:relative;top:auto;right:auto;transform:none;
  width:auto;min-width:260px;min-height:80px!important;height:80px;
  margin:12px auto 4px;padding:8px 24px;
  flex-direction:row;gap:14px;white-space:nowrap;flex-shrink:0;
  font-size:18px;line-height:1.2;border-radius:40px!important;
  color:#ffe18b!important;animation:none!important;text-shadow:none!important;
}
html body #game-container #main-menu #console-content-main .cb-starter-offer::before {
  clip-path:none;border-radius:40px;opacity:.65;background:#a08a42;
}
html body #game-container #main-menu #console-content-main .cb-starter-offer::after {
  clip-path:none;border-radius:38px;background:#151c1f;
}
html body #game-container #main-menu #console-content-main .cb-starter-offer small {
  font-size:18px;color:#ffdc76!important;text-shadow:none!important;
}
#btn-top-starter-pack {
  animation: flashyTopStarter 1.6s ease-in-out infinite !important;
  font-weight: 900 !important;
  letter-spacing: 0.5px !important;
}
/* Utility icons stay still; brief press feedback is enough. */
html body #game-container #main-menu #console-content-main .classic-dock svg{animation:none}
