/*! Card Battle Lab. Copyright (c) 2026 Dave Skilton. All rights reserved. See /LICENSE. https://cardbattlelab.com/ */
:root {
  --gcg-safe-top: env(safe-area-inset-top, 0px);
  --gcg-safe-right: env(safe-area-inset-right, 0px);
  --gcg-safe-bottom: env(safe-area-inset-bottom, 0px);
  --gcg-safe-left: env(safe-area-inset-left, 0px);
  --gcg-viewport-top: var(--gcg-safe-top);
  --gcg-viewport-left: var(--gcg-safe-left);
  --gcg-viewport-width: calc(100vw - var(--gcg-safe-left) - var(--gcg-safe-right));
  --gcg-viewport-height: calc(100dvh - var(--gcg-safe-top) - var(--gcg-safe-bottom));
  color-scheme: dark;
  --c-hue: 0;
  --c-sat: 0%;
  --c-border-subtle: hsl(var(--c-hue) var(--c-sat) 18.4314%);
  --c-border: hsl(var(--c-hue) var(--c-sat) 17.4%);
  --c-border-strong: hsl(var(--c-hue) var(--c-sat) 25.3%);
  --t-fade-snap: .18s;
  --t-fade-fast: .4s;
  --t-fade-page: .8s;
  --t-fade-reveal: 1.5s;
  --c-app-bg: hsl(var(--c-hue) var(--c-sat) 3.9216%);
  --c-field: hsl(var(--c-hue) var(--c-sat) 5.098%);
  --c-panel: hsl(var(--c-hue) var(--c-sat) 12.6%);
  --c-panel-2: hsl(var(--c-hue) var(--c-sat) 3.9%);
  --c-panel-3: hsl(var(--c-hue) var(--c-sat) 11.7647%);
  --c-ctrl: hsl(var(--c-hue) var(--c-sat) 13.4%);
  --c-ctrl-2: hsl(var(--c-hue) var(--c-sat) 13.3333%);
  --c-ctrl-3: hsl(var(--c-hue) var(--c-sat) 19.7%);
  --c-ctrl-raised: hsl(var(--c-hue) var(--c-sat) 20.0%);
  --c-ctrl-hi: hsl(var(--c-hue) var(--c-sat) 22.7451%);
  --c-faction-white: hsl(var(--c-hue) var(--c-sat) 13.3333%);
  --panel-alpha: 0.19;
  --panel-bg: color-mix(in srgb, var(--c-panel), transparent calc((1 - var(--panel-alpha)) * 100%));
  --panel-bg-2: color-mix(in srgb, var(--c-panel-2), transparent calc((1 - var(--panel-alpha)) * 100%));
  --panel-bg-3: color-mix(in srgb, var(--c-panel-3), transparent calc((1 - var(--panel-alpha)) * 100%));
  --lift-hi: rgba(255,255,255,.06);
  --lift-lo: rgba(0,0,0,.24);
  --ctrl-lift:
    linear-gradient(
      
      180deg,
      var(--lift-hi),
      transparent 42%,
      var(--lift-lo));
  --ctrl-press:
    linear-gradient(
      
      180deg,
      var(--lift-lo),
      transparent 55%);
  --ctrl-face: var(--ctrl-lift), linear-gradient(var(--c-ctrl), var(--c-ctrl));
  --ctrl-face-hover: var(--ctrl-lift), linear-gradient(var(--c-ctrl-3), var(--c-ctrl-3));
  --ctrl-face-active: var(--ctrl-press), linear-gradient(var(--c-ctrl-2), var(--c-ctrl-2));
  --c-text-faint: hsl(var(--c-hue) var(--c-sat) 53.3333%);
  --c-text-subtle: hsl(var(--c-hue) var(--c-sat) 55.0%);
  --c-text-muted: hsl(var(--c-hue) var(--c-sat) 58.0%);
  --c-text-dim: hsl(var(--c-hue) var(--c-sat) 64.7%);
  --c-text: hsl(var(--c-hue) var(--c-sat) 80.0%);
  --c-text-bright: hsl(var(--c-hue) var(--c-sat) 86.6667%);
  --c-text-strong: hsl(var(--c-hue) var(--c-sat) 87.8431%);
  --c-text-hi: hsl(var(--c-hue) var(--c-sat) 93.3333%);
  --c-white: hsl(var(--c-hue) var(--c-sat) 100.0%);
  --c-accent: #d1d1d1;
  --c-danger: #ff6666;
  --c-danger-2: #f87171;
  --c-warn: #e0a94a;
  --c-success: #9dcc9d;
  --c-cloud: #82e6ff;
  --c-season: #82e6ff;
  --c-chroma: #00FF00;
  --c-success-surface: #2a3a2a;
  --c-success-surface-dim: #1a2a1a;
  --c-success-border: #4a6a4a;
  --c-info-surface: #1a2a3a;
  --c-on-accent: #0a1628;
  --c-on-danger: #2c0808;
  --c-on-burst: #1a0f00;
  --c-on-warn: #2a1c04;
  --c-ink-dark: #0a0a0a;
  --c-ink-light: var(--c-white);
  --z-pvp-chat-menu: 11960;
  --z-dialog: 12000;
  --z-menu: 13000;
  --z-menu-dialog: 13500;
  --z-notice: 14000;
  --r-s: 4px;
  --r-m: 6px;
  --r-l: 8px;
  --r-xl: 12px;
  --r-loz: 9px;
  --glass-t: 1;
  --glass-modal-tint: rgba(15, 15, 15, 0.55);
  --glass-modal-bg: var(--glass-modal-tint);
  --glass-modal-blur: blur(14px) saturate(115%);
  --scrim: rgba(0, 0, 0, 0.52);
  --surface-haze-tint: rgba(5, 5, 5, 0.56);
  --surface-haze: var(--surface-haze-tint);
  --slot-empty-border: 1px dotted color-mix(in srgb, var(--c-border) 55%, transparent);
  --c-game-trigger: #64d3d9;
  --c-game-activate: #64b3ec;
  --c-game-burst: #ca8834;
  --c-game-attack: #ff5a5a;
  --c-game-keyword: #f2f2f2;
  --c-game-block: var(--c-game-keyword);
  --c-game-pair: #ff8cba;
  --c-game-link: #fbe651;
  --c-game-damage: #d76cff;
  --c-game-buff: #f2a654;
  --c-game-debuff: #4250ff;
  --c-game-heal: #3adb6a;
  --c-game-unavailable: #9aa0a6;
  --c-game-prevent: #38c6d6;
  --c-game-destroy: #d84040;
  --c-game-rest: #367cfe;
  --c-game-interact: #f2f2f2;
  --c-game-once: #8b2222;
  --c-lz-trigger: var(--c-game-trigger);
  --c-lz-activate: var(--c-game-activate);
  --c-lz-pair: var(--c-game-pair);
  --c-lz-link: var(--c-game-link);
  --c-lz-burst: var(--c-game-burst);
  --c-lz-ability: var(--c-game-keyword);
  --c-lz-once: var(--c-game-once);
  --c-lz-timing: var(--c-game-trigger);
  --c-effect-target: var(--c-game-damage);
  --c-card-blue: #3a82c0;
  --c-card-green: #5fa83c;
  --c-card-red: #c41f54;
  --c-card-white: #f1f1e8;
  --c-card-purple: #9b5cc4;
  --c-card-token: #d6c98a;
  --s-spend: var(--c-game-link);
  --s-threat: var(--c-card-red);
  --s-boss: var(--c-danger);
  --s-boss2: var(--c-danger);
  --s-boss-1: var(--s-boss);
  --s-boss-2: color-mix(in srgb, var(--s-boss) 62%, var(--c-white));
  --s-boss-3: color-mix(in srgb, var(--s-boss) 74%, var(--c-app-bg));
  --s-gas: var(--c-game-trigger);
  --s-wall: var(--c-game-keyword);
  --s-dead: var(--c-game-debuff);
  --s-lvlock: var(--c-card-blue);
  --s-costlock: var(--c-warn);
  --s-otherlock: var(--dim);
  --s-resleft: var(--c-card-token);
  --s-exalive: var(--c-game-trigger);
  --s-kill: var(--c-card-red);
  --s-bar-lv: var(--c-game-trigger);
  --s-bar-cost: var(--c-game-link);
  --s-type-unit: var(--c-game-activate);
  --s-type-pilot: var(--c-game-link);
  --s-type-command: var(--c-game-trigger);
  --s-type-base: var(--c-game-burst);
  --s-legal: var(--c-success);
  --s-illegal: var(--c-danger);
  --s-invalid: var(--c-warn);
  --s-stat-power: var(--c-game-attack);
  --s-stat-ping: var(--c-game-damage);
  --s-stat-buff: var(--c-game-buff);
  --s-stat-base: var(--c-game-once);
  --s-stat-hp: var(--c-card-green);
  --s-stat-block: var(--c-game-keyword);
  --s-stat-heal: var(--c-game-heal);
  --s-stat-rush: var(--c-game-burst);
  --s-stat-haste: var(--c-game-link);
  --s-stat-draw: var(--c-game-trigger);
  --s-stat-tokens: var(--c-card-token);
  --s-stat-rest: var(--c-game-rest);
  --s-stat-bounce: var(--dim);
  --s-stat-debuff: var(--c-game-debuff);
  --s-stat-prevent: var(--c-game-prevent);
  --s-stat-destroy: var(--c-game-destroy);
  --p1: #6699ff;
  --p2: #ff6666;
  --c-edit: #3aa050;
  --c-ctx: #4fd07a;
  --c-commit: #c8c8c8;
  --c-on-commit: #06230f;
  --c-toggle-on: #aeaeae;
  --c-tier-0: var(--c-text-dim);
  --c-tier-1: var(--c-game-activate);
  --c-tier-2: var(--c-game-burst);
  --c-tier-3: #b46cff;
  --c-grade-bronze: #bf7b3c;
  --c-grade-silver: #a9bed6;
  --c-grade-gold: #f0c53f;
  --ink: #eeeeee;
  --dim: #6b6b6b;
  --mute: #949494;
  --mono:
    "Chakra Petch",
    ui-monospace,
    "Cascadia Code",
    Consolas,
    monospace;
  --font-display: "Orbitron", sans-serif;
  --font-body:
    "Chakra Petch",
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  --fs-display: 1.08;
  --fs-body: 1.08;
  --fs-mono: 1;
  --btn-fs: 12.5px;
  --hover-brightness: 1.42;
  --mix-fill-border: 72%;
  --mix-fill-top: 78%;
  --mix-fill-bottom: 82%;
  --mix-fill-hover-border: 55%;
  --mix-fill-hover-top: 52%;
  --mix-fill-hover-mid: 80%;
  --mix-fill-hover-bottom: 96%;
  --mix-fill-active-top: 90%;
  --mix-fill-active-mid: 68%;
  --mix-fill-active-bottom: 58%;
  --modal-pad: 12px;
  --group-pad: 8px;
  --msheet-pad: 14px var(--modal-pad, 16px) var(--modal-pad, 16px);
  --table-w: 1560px;
  --board-min-wide: 760px;
  --table-h: 490px;
  --pa-w: 1270px;
  --pa-gap: 24px;
  --flank-w: 133px;
  --msg-strip-h: 48px;
  --table-scale: 1;
  --wm-opacity: 1;
  --wm-result-opacity: 0.45;
  --glass-tint: rgba(13, 13, 13, 0.62);
  --glass-bg: var(--glass-tint);
  --glass-raised-tint: rgba(34, 34, 34, 0.55);
  --glass-bg-raised: var(--glass-raised-tint);
  --glass-blur: 7px;
  --divider-h: 30px;
  --table-cw: 840px;
  --table-ch: 700px;
  --pa-cw: 542px;
  --pa-c-row-gap: 8px;
  --flank-cw: 104px;
  --sidebar-w: 293px;
  --sidebar-rail-w: 40px;
  --dock-w: 330px;
  --sidebar-density-min: .72;
  --sidebar-density-ref-w: 293;
  --sidebar-density-ref-h: 720;
  --gcg-ui-density: 1;
  --gcg-ui-density-min: .78;
  --gcg-ui-density-ref-w: 440;
  --gcg-ui-density-ref-h: 720;
  --gcg-ui-fs-body: 1.08;
  --gcg-ui-fs-display: 1.08;
  --gcg-ui-fs-mono: 1;
  --gcg-ui-btn-fs: 12.5px;
  --gcg-ui-modal-pad: 16px;
  --gcg-mobile-bar-h: 52px;
  --gcg-disabled-opacity: 0.45;
  --gcg-message-density: 1;
  --gcg-message-density-min: .78;
  --gcg-message-density-ref-w: 440;
  --gcg-message-density-ref-h: 720;
  --gcg-message-x: 50vw;
  --gcg-message-y: 50vh;
  --gcg-message-fs-body: 1.08;
  --gcg-message-fs-display: 1.08;
  --gcg-message-btn-fs: 12.5px;
  --shell-pad: 0px;
  --shell-gap: 0px;
  --panel-radius: 0px;
  --panel-pad: 0px;
  --float-frame-pad: 0px;
  --panel-border-alpha: 0;
  --panel-border-color: color-mix(in srgb, var(--c-border-subtle) calc(var(--panel-border-alpha) * 100%), transparent);
  --float-border-color: color-mix(in srgb, var(--c-border) calc(var(--panel-border-alpha) * 100%), transparent);
  --app-bg-dim: 0.78;
  --screen-tint: rgba(15, 15, 15, 0.55);
  --gcg-count-glow:
    2px 2px 2px #000,
    2px 2px 5px #000,
    2px 2px 2px #000;
}
