/* 5mn Original Base Theme v35
   Background polish + Discord Activity sizing only.
   This file deliberately does not alter the original card, player, power-card,
   quick-reply, or results layouts defined inside index.html. */

:root{
  --k-base-bg:#08070d;
  --k-base-violet:142,96,205;
  --k-base-pink:205,74,147;
  --k-base-cyan:61,173,190;
}

html.k-base-theme-ready,
html.k-base-theme-ready body{
  background-color:var(--k-base-bg)!important;
}

/* Keep the original UI; refine only the canvas behind it. */
html.k-base-theme-ready #screen-mode-select,
html.k-base-theme-ready #screen-landing,
html.k-base-theme-ready #screen-landing4,
html.k-base-theme-ready #screen-lobby,
html.k-base-theme-ready #screen-lobby4,
html.k-base-theme-ready #screen-category,
html.k-base-theme-ready #screen-category4,
html.k-base-theme-ready #screen-game,
html.k-base-theme-ready #screen-game4{
  background-color:var(--k-base-bg)!important;
  background-image:
    radial-gradient(circle at 50% 42%,rgba(var(--k-base-violet),.12),transparent 44%),
    radial-gradient(circle at 12% 8%,rgba(var(--k-base-pink),.055),transparent 31%),
    radial-gradient(circle at 90% 88%,rgba(var(--k-base-cyan),.04),transparent 29%),
    linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px),
    linear-gradient(180deg,#0b0911 0%,#08070d 58%,#07060b 100%)!important;
  background-size:auto,auto,auto,54px 54px,54px 54px,auto!important;
  background-position:center!important;
}

/* Do not let decorative or Discord layers intercept the game. */
html.k-base-theme-ready #k-discord-activity-boot.hidden,
html.k-base-theme-ready #k-discord-activity-status[aria-hidden="true"]{
  pointer-events:none!important;
}
html.k-base-theme-ready .km-motion-field,
html.k-base-theme-ready .km-victory-canvas,
html.k-base-theme-ready #khamen-signal-layer{
  display:none!important;
  pointer-events:none!important;
}

/* Discord Activity: retain the original design, only fit it to the embed. */
html.k-discord-activity{
  --k-base-activity-vh:var(--k-da-vh,100dvh);
  background:var(--k-base-bg)!important;
}
html.k-discord-activity body.k-base-game-active{
  min-height:var(--k-base-activity-vh)!important;
  height:var(--k-base-activity-vh)!important;
  overflow:hidden!important;
}
html.k-discord-activity body.k-base-game-active #k-discord-activity-status{
  display:none!important;
}
html.k-discord-activity #screen-game.k-stage6-screen,
html.k-discord-activity #screen-game4.k-stage7-group-screen{
  min-height:var(--k-base-activity-vh)!important;
  height:var(--k-base-activity-vh)!important;
  padding:max(6px,env(safe-area-inset-top)) max(6px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left))!important;
  overflow:hidden!important;
}
html.k-discord-activity .k-s6-shell,
html.k-discord-activity .k-s7-shell{
  width:100%!important;
  max-width:none!important;
  min-height:0!important;
  height:calc(var(--k-base-activity-vh) - max(12px,env(safe-area-inset-top)) - max(12px,env(safe-area-inset-bottom)))!important;
  margin:0!important;
}
html.k-discord-activity #screen-game .k-s6-body,
html.k-discord-activity #screen-game4 .k-s7-body{
  min-height:0!important;
  overflow:hidden!important;
}
html.k-discord-activity #screen-game .k-s6-controls,
html.k-discord-activity #screen-game4 .k-s7-actions,
html.k-discord-activity #screen-game .k-s6-score-panel,
html.k-discord-activity #screen-game4 .k-s7-scoreboard{
  min-height:0!important;
  overflow:auto!important;
  overscroll-behavior:contain;
  scrollbar-width:thin;
}

/* Compact Discord desktop panes: change dimensions only, not visual style. */
html.k-discord-activity.k-da-compact.k-da-landscape #screen-game .k-s6-body{
  grid-template-columns:220px minmax(0,1fr) 270px!important;
  gap:10px!important;
  padding:10px!important;
}
html.k-discord-activity.k-da-compact.k-da-landscape #screen-game4 .k-s7-body{
  grid-template-columns:220px minmax(0,1fr) 270px!important;
  gap:10px!important;
  padding:10px!important;
}
html.k-discord-activity.k-da-compact .k-s6-topbar,
html.k-discord-activity.k-da-compact .k-s7-topbar{
  min-height:56px!important;
  height:56px!important;
  flex-basis:56px!important;
  padding-inline:14px!important;
}
html.k-discord-activity.k-da-short .k-s6-turn-wrap,
html.k-discord-activity.k-da-short .k-s7-turn-wrap{
  min-height:78px!important;
  height:78px!important;
}
html.k-discord-activity.k-da-short .k-s6-card,
html.k-discord-activity.k-da-short .k-s7-card{
  min-height:226px!important;
}
html.k-discord-activity.k-da-short .k-s6-card-media,
html.k-discord-activity.k-da-short .k-s7-card-media{
  min-height:146px!important;
}
html.k-discord-activity.k-da-very-short.k-da-landscape #screen-game .k-s6-body,
html.k-discord-activity.k-da-very-short.k-da-landscape #screen-game4 .k-s7-body{
  grid-template-columns:190px minmax(0,1fr) 232px!important;
  gap:7px!important;
  padding:7px!important;
}
html.k-discord-activity.k-da-very-short .k-s6-topbar,
html.k-discord-activity.k-da-very-short .k-s7-topbar{
  min-height:48px!important;
  height:48px!important;
  flex-basis:48px!important;
}

/* Short Discord desktop windows: scale the complete arena as one unit.
   Discord uses Chromium, so CSS zoom keeps pointer coordinates and overlays aligned. */
html.k-discord-activity.k-da-scaled body.k-base-game-active{
  height:var(--k-base-activity-vh)!important;
  min-height:var(--k-base-activity-vh)!important;
  overflow:hidden!important;
}
html.k-discord-activity.k-da-scaled #screen-game.k-stage6-screen,
html.k-discord-activity.k-da-scaled #screen-game4.k-stage7-group-screen{
  width:100%!important;
  height:var(--k-base-activity-vh)!important;
  min-height:var(--k-base-activity-vh)!important;
  padding:8px!important;
  overflow:hidden!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
}
html.k-discord-activity.k-da-scaled .k-s6-shell,
html.k-discord-activity.k-da-scaled .k-s7-shell{
  zoom:var(--k-da-scale,1);
  width:var(--k-da-unscaled-width,100%)!important;
  max-width:none!important;
  margin:0!important;
  overflow:hidden!important;
}
html.k-discord-activity.k-da-scaled .k-s6-shell{
  height:720px!important;
  min-height:720px!important;
}
html.k-discord-activity.k-da-scaled .k-s7-shell{
  height:735px!important;
  min-height:735px!important;
}
html.k-discord-activity.k-da-scaled #screen-game .k-s6-body,
html.k-discord-activity.k-da-scaled #screen-game4 .k-s7-body{
  overflow:hidden!important;
}

/* Safe fallback: never let an Activity crop controls when scaling is unavailable. */
@supports not (zoom:1){
  html.k-discord-activity body.k-base-game-active{height:auto!important;overflow:auto!important}
  html.k-discord-activity #screen-game.k-stage6-screen,
  html.k-discord-activity #screen-game4.k-stage7-group-screen{height:auto!important;overflow:auto!important}
  html.k-discord-activity .k-s6-shell,
  html.k-discord-activity .k-s7-shell{height:auto!important;min-height:var(--k-base-activity-vh)!important;overflow:visible!important}
}

/* Stacked/narrow Discord windows use the original responsive layout with safe scrolling. */
@media(max-width:900px){
  html.k-discord-activity body.k-base-game-active{height:auto!important;min-height:var(--k-base-activity-vh)!important;overflow:auto!important}
  html.k-discord-activity #screen-game.k-stage6-screen,
  html.k-discord-activity #screen-game4.k-stage7-group-screen{height:auto!important;min-height:var(--k-base-activity-vh)!important;overflow:auto!important}
  html.k-discord-activity .k-s6-shell,
  html.k-discord-activity .k-s7-shell{height:auto!important;min-height:calc(var(--k-base-activity-vh) - 12px)!important}
  html.k-discord-activity #screen-game .k-s6-body,
  html.k-discord-activity #screen-game4 .k-s7-body{height:auto!important;overflow:visible!important}
  html.k-discord-activity #screen-game .k-s6-controls,
  html.k-discord-activity #screen-game4 .k-s7-actions{overflow:visible!important}
}

@media(prefers-reduced-motion:reduce){
  html.k-base-theme-ready *{scroll-behavior:auto!important}
}
