/* ============================================
   BADGE + FILTER BUTTON COLORS
   Loaded last so these win over .dg-filter-btn.active in deck-gallery.css.
   Each rule covers both the badge chip and its matching filter button.
   ============================================ */

/* ── Dark mode (default) ── */
.badge-L,       .dg-side-btn-L.active,      .db-setup-side-L.active { background: rgba(106,176,255,0.15); color: var(--light-side);   border: 1px solid rgba(106,176,255,0.30); }
.badge-D,       .dg-side-btn-D.active,      .db-setup-side-D.active { background: rgba(201, 64, 64,0.15); color: var(--dark-side);    border: 1px solid rgba(201, 64, 64,0.30); }
.badge-N,       .dg-side-btn-N.active,      .db-setup-side-N.active { background: rgba(196,168,112,0.15); color: var(--neutral);      border: 1px solid rgba(196,168,112,0.30); }
.badge-Y,       .dg-side-btn-Y.active,      .db-setup-side-Y.active { background: rgba( 58,153, 85,0.15); color: var(--yuuzhan-vong); border: 1px solid rgba( 58,153, 85,0.30); }
.badge-starter, .dg-format-btn-starter.active                       { background: rgba( 34,197, 94,0.15); color: #22c55e;             border: 1px solid rgba( 34,197, 94,0.30); }
.badge-format-galaxy,   .dg-format-btn-galaxy.active,   .db-setup-fmt-galaxy.active   { background: rgba( 20,184,166,0.15); color: #14b8a6;        border: 1px solid rgba( 20,184,166,0.30); }
.badge-format-standard, .dg-format-btn-standard.active, .db-setup-fmt-standard.active { background: rgba(245,158, 11,0.15); color: var(--warning); border: 1px solid rgba(245,158, 11,0.30); }
.badge-format-vintage,  .dg-format-btn-vintage.active,  .db-setup-fmt-vintage.active  { background: rgba(185, 28, 28,0.15); color: #b91c1c;        border: 1px solid rgba(185, 28, 28,0.30); }
.badge-format-wotc,     .dg-format-btn-wotc.active,     .db-setup-fmt-wotc.active     { background: rgba( 66,105,225,0.15); color: #6b8de3;        border: 1px solid rgba( 66,105,225,0.30); }
.badge-private { background: rgba(255,255,255,0.05); color: var(--text-muted); border: 1px solid var(--border); }
.badge-tournament-1st, .dg-badge-btn-tournament-1st.active { background: rgba(196,150, 62,0.15); color: #f0c040; border: 1px solid rgba(196,150, 62,0.50); }
.badge-tournament-2nd, .dg-badge-btn-tournament-2nd.active { background: rgba(148,163,184,0.15); color: #cbd5e1; border: 1px solid rgba(148,163,184,0.50); }
.badge-tournament-3rd, .dg-badge-btn-tournament-3rd.active { background: rgba(180,100, 40,0.15); color: #cd8050; border: 1px solid rgba(180,100, 40,0.50); }
.badge-tournament-1st, .badge-tournament-2nd, .badge-tournament-3rd { font-weight: 700; }

/* ── Light mode overrides ── */

/* Elements that always sit on a dark overlay/gradient — force white regardless of theme */
[data-theme="light"] .dg-tile-cover .dg-tile-name,
[data-theme="light"] .dg-tile-cover .dg-tile-meta,
[data-theme="light"] .sv-tile-name-strip { color: #ffffff; }

[data-theme="light"] .badge-L,       [data-theme="light"] .dg-side-btn-L.active,      [data-theme="light"] .db-setup-side-L.active { color: #1a5ca8; background: rgba(106,176,255,0.30); border-color: rgba(106,176,255,0.70); }
[data-theme="light"] .badge-D,       [data-theme="light"] .dg-side-btn-D.active,      [data-theme="light"] .db-setup-side-D.active { color: var(--dark-side);  background: rgba(201, 64, 64,0.28); border-color: rgba(201, 64, 64,0.65); }
[data-theme="light"] .badge-N,       [data-theme="light"] .dg-side-btn-N.active,      [data-theme="light"] .db-setup-side-N.active { color: #7a5c10; background: rgba(196,168,112,0.30); border-color: rgba(196,168,112,0.70); }
[data-theme="light"] .badge-Y,       [data-theme="light"] .dg-side-btn-Y.active,      [data-theme="light"] .db-setup-side-Y.active { color: #1a6b38; background: rgba( 58,153, 85,0.28); border-color: rgba( 58,153, 85,0.65); }
[data-theme="light"] .badge-starter, [data-theme="light"] .dg-format-btn-starter.active                                             { color: #15803d; background: rgba( 34,197, 94,0.28); border-color: rgba( 34,197, 94,0.65); }
[data-theme="light"] .badge-format-galaxy,   [data-theme="light"] .dg-format-btn-galaxy.active,   [data-theme="light"] .db-setup-fmt-galaxy.active   { color: #0a7a6e; background: rgba( 20,184,166,0.28); border-color: rgba( 20,184,166,0.65); }
[data-theme="light"] .badge-format-standard, [data-theme="light"] .dg-format-btn-standard.active, [data-theme="light"] .db-setup-fmt-standard.active { color: #92580a; background: rgba(245,158, 11,0.28); border-color: rgba(245,158, 11,0.65); }
[data-theme="light"] .badge-format-vintage,  [data-theme="light"] .dg-format-btn-vintage.active,  [data-theme="light"] .db-setup-fmt-vintage.active  { color: #b91c1c;  background: rgba(185, 28, 28,0.28); border-color: rgba(185, 28, 28,0.65); }
[data-theme="light"] .badge-format-wotc,     [data-theme="light"] .dg-format-btn-wotc.active,     [data-theme="light"] .db-setup-fmt-wotc.active     { color: #2d4faa; background: rgba( 66,105,225,0.28); border-color: rgba( 66,105,225,0.65); }
[data-theme="light"] .badge-private { background: var(--surface2); border-color: var(--border); }

/* Type filter buttons — bump opacity and darken light-hued text colors */
[data-theme="light"] .dg-type-btn-space.active     {                  background: rgba( 37, 99,235,0.18); border-color: rgba( 37, 99,235,0.55); }
[data-theme="light"] .dg-type-btn-ground.active    {                  background: rgba( 21,128, 61,0.18); border-color: rgba( 21,128, 61,0.55); }
[data-theme="light"] .dg-type-btn-character.active { color: #6d28d9; background: rgba( 91, 33,182,0.18); border-color: rgba( 91, 33,182,0.55); }
[data-theme="light"] .dg-type-btn-resource.active  { color: #c2410c; background: rgba(249,115, 22,0.18); border-color: rgba(249,115, 22,0.55); }
[data-theme="light"] .dg-type-btn-battle.active    {                  background: rgba(220, 38, 38,0.18); border-color: rgba(220, 38, 38,0.55); }
[data-theme="light"] .dg-type-btn-mission.active   { color: #92600a; background: rgba(234,179,  8,0.18); border-color: rgba(234,179,  8,0.60); }
[data-theme="light"] .dg-type-btn-equipment.active { color: #475569; background: rgba(148,163,184,0.45); border-color: rgba(148,163,184,0.75); }
[data-theme="light"] .dg-type-btn-event.active     { color: #9d174d; background: rgba(224, 53,122,0.18); border-color: rgba(224, 53,122,0.55); }
[data-theme="light"] .dg-type-btn-skill.active     { color: #8a5c10; background: rgba(196,150, 62,0.18); border-color: rgba(196,150, 62,0.55); }
[data-theme="light"] .dg-type-btn-trait.active     { color: #92400e; background: rgba(180, 83,  9,0.18); border-color: rgba(180, 83,  9,0.55); }
[data-theme="light"] .dg-type-btn-mission-campaign.active { color: #4d7c0f; background: rgba(132,204, 22,0.18); border-color: rgba(132,204, 22,0.55); }
[data-theme="light"] .dg-type-btn-mission-trap.active     { color: #0f766e; background: rgba( 20,184,166,0.18); border-color: rgba( 20,184,166,0.55); }
[data-theme="light"] .dg-type-btn-location.active,
[data-theme="light"] .dg-type-btn-subordinate.active {
    background: linear-gradient(-45deg,
        rgba(146,64, 14,0.25) 25%,
        rgba(91, 33,182,0.25) 25% 50%,
        rgba(21,128, 61,0.25) 50% 75%,
        rgba(37, 99,235,0.25) 75%
    );
}
[data-theme="light"] .badge-tournament-1st, [data-theme="light"] .dg-badge-btn-tournament-1st.active { color: #b8860b; background: rgba(184,134, 11,0.18); border-color: rgba(184,134, 11,0.60); }
[data-theme="light"] .badge-tournament-2nd, [data-theme="light"] .dg-badge-btn-tournament-2nd.active { color: #4e6070; background: rgba( 78, 96,112,0.12); border-color: rgba( 78, 96,112,0.45); }
[data-theme="light"] .badge-tournament-3rd, [data-theme="light"] .dg-badge-btn-tournament-3rd.active { color: #a0522d; background: rgba(160, 82, 45,0.18); border-color: rgba(160, 82, 45,0.55); }

/* ============================================
   HOVER STATES — preview the type color
   Only color + border-color; background reserved for active state.
   ============================================ */

/* ── Dark mode ── */
.dg-side-btn-L:hover,     .db-setup-side-L:hover     { color: var(--light-side);   border-color: rgba(106,176,255,0.50); }
.dg-side-btn-D:hover,     .db-setup-side-D:hover     { color: var(--dark-side);    border-color: rgba(201, 64, 64,0.50); }
.dg-side-btn-N:hover,     .db-setup-side-N:hover     { color: var(--neutral);      border-color: rgba(196,168,112,0.50); }
.dg-side-btn-Y:hover,     .db-setup-side-Y:hover     { color: var(--yuuzhan-vong); border-color: rgba( 58,153, 85,0.50); }
.dg-format-btn-galaxy:hover,   .db-setup-fmt-galaxy:hover   { color: #14b8a6;        border-color: rgba( 20,184,166,0.50); }
.dg-format-btn-standard:hover, .db-setup-fmt-standard:hover { color: var(--warning); border-color: rgba(245,158, 11,0.50); }
.dg-format-btn-vintage:hover,  .db-setup-fmt-vintage:hover  { color: #b91c1c;        border-color: rgba(185, 28, 28,0.50); }
.dg-format-btn-wotc:hover,     .db-setup-fmt-wotc:hover     { color: #6b8de3;        border-color: rgba( 66,105,225,0.50); }
.dg-format-btn-starter:hover                               { color: #22c55e;        border-color: rgba( 34,197, 94,0.50); }
.dg-type-btn-space:hover     { color: #2563eb; border-color: rgba( 37, 99,235,0.50); }
.dg-type-btn-ground:hover    { color: #15803d; border-color: rgba( 21,128, 61,0.50); }
.dg-type-btn-character:hover { color: #a78bfa; border-color: rgba( 91, 33,182,0.50); }
.dg-type-btn-resource:hover  { color: #f97316; border-color: rgba(249,115, 22,0.50); }
.dg-type-btn-battle:hover    { color: #dc2626; border-color: rgba(220, 38, 38,0.50); }
.dg-type-btn-mission:hover   { color: #eab308; border-color: rgba(234,179,  8,0.50); }
.dg-type-btn-equipment:hover { color: #94a3b8; border-color: rgba(148,163,184,0.50); }
.dg-type-btn-event:hover     { color: #e0357a; border-color: rgba(224, 53,122,0.50); }
.dg-type-btn-skill:hover     { color: #c4963e; border-color: rgba(196,150, 62,0.50); }
.dg-type-btn-trait:hover     { color: #d97706; border-color: rgba(180, 83,  9,0.50); }
.dg-type-btn-mission-campaign:hover { color: #84cc16; border-color: rgba(132,204, 22,0.50); }
.dg-type-btn-mission-trap:hover     { color: #14b8a6; border-color: rgba( 20,184,166,0.50); }
.dg-badge-btn-tournament-1st:hover { color: #f0c040; border-color: rgba(196,150, 62,0.50); }
.dg-badge-btn-tournament-2nd:hover { color: #cbd5e1; border-color: rgba(148,163,184,0.50); }
.dg-badge-btn-tournament-3rd:hover { color: #cd8050; border-color: rgba(180,100, 40,0.50); }

/* ── Light mode ── */
[data-theme="light"] .dg-side-btn-L:hover,     [data-theme="light"] .db-setup-side-L:hover     { color: #1a5ca8; border-color: rgba(106,176,255,0.55); }
[data-theme="light"] .dg-side-btn-D:hover,     [data-theme="light"] .db-setup-side-D:hover     { color: var(--dark-side); border-color: rgba(201, 64, 64,0.55); }
[data-theme="light"] .dg-side-btn-N:hover,     [data-theme="light"] .db-setup-side-N:hover     { color: #7a5c10; border-color: rgba(196,168,112,0.55); }
[data-theme="light"] .dg-side-btn-Y:hover,     [data-theme="light"] .db-setup-side-Y:hover     { color: #1a6b38; border-color: rgba( 58,153, 85,0.55); }
[data-theme="light"] .dg-format-btn-galaxy:hover,   [data-theme="light"] .db-setup-fmt-galaxy:hover   { color: #0a7a6e; border-color: rgba( 20,184,166,0.55); }
[data-theme="light"] .dg-format-btn-standard:hover, [data-theme="light"] .db-setup-fmt-standard:hover { color: #92580a; border-color: rgba(245,158, 11,0.55); }
[data-theme="light"] .dg-format-btn-vintage:hover,  [data-theme="light"] .db-setup-fmt-vintage:hover  { color: #b91c1c; border-color: rgba(185, 28, 28,0.55); }
[data-theme="light"] .dg-format-btn-wotc:hover,     [data-theme="light"] .db-setup-fmt-wotc:hover     { color: #2d4faa; border-color: rgba( 66,105,225,0.55); }
[data-theme="light"] .dg-format-btn-starter:hover                                                     { color: #15803d; border-color: rgba( 34,197, 94,0.55); }
[data-theme="light"] .dg-type-btn-space:hover     {                  border-color: rgba( 37, 99,235,0.55); }
[data-theme="light"] .dg-type-btn-ground:hover    {                  border-color: rgba( 21,128, 61,0.55); }
[data-theme="light"] .dg-type-btn-character:hover { color: #6d28d9; border-color: rgba( 91, 33,182,0.55); }
[data-theme="light"] .dg-type-btn-resource:hover  { color: #c2410c; border-color: rgba(249,115, 22,0.55); }
[data-theme="light"] .dg-type-btn-battle:hover    {                  border-color: rgba(220, 38, 38,0.55); }
[data-theme="light"] .dg-type-btn-mission:hover   { color: #92600a; border-color: rgba(234,179,  8,0.55); }
[data-theme="light"] .dg-type-btn-equipment:hover { color: #475569; border-color: rgba(148,163,184,0.65); }
[data-theme="light"] .dg-type-btn-event:hover     { color: #9d174d; border-color: rgba(224, 53,122,0.55); }
[data-theme="light"] .dg-type-btn-skill:hover     { color: #8a5c10; border-color: rgba(196,150, 62,0.55); }
[data-theme="light"] .dg-type-btn-trait:hover     { color: #92400e; border-color: rgba(180, 83,  9,0.55); }
[data-theme="light"] .dg-type-btn-mission-campaign:hover { color: #4d7c0f; border-color: rgba(132,204, 22,0.55); }
[data-theme="light"] .dg-type-btn-mission-trap:hover     { color: #0f766e; border-color: rgba( 20,184,166,0.55); }
[data-theme="light"] .dg-badge-btn-tournament-1st:hover { color: #b8860b; border-color: rgba(184,134, 11,0.55); }
[data-theme="light"] .dg-badge-btn-tournament-2nd:hover { color: #4e6070; border-color: rgba( 78, 96,112,0.40); }
[data-theme="light"] .dg-badge-btn-tournament-3rd:hover { color: #a0522d; border-color: rgba(160, 82, 45,0.55); }
