/* NETWAR — syndicate card art (docs/SYNDICATE_PLAN.md stage 4; script: syndicate-art.js).
   A syndicate card keeps the usual face — cost, stats and text where they always are — and
   adds a frame in its syndicate's colour, the emblem in a corner, and, on epics, a slow light
   sweep. Selectors are doubled up so they win over the role colours (.card-fighter…). */

.hand-card.syn-card, .board-chip.syn-card { position: relative; }
.hand-card.syn-card.syn-techno_nomads { border-color: #0094d8; border-top-color: #0094d8; background: #10161f; box-shadow: 0 0 12px rgba(0,148,216,0.35); }
.hand-card.syn-card.syn-street_prolets { border-color: #f5a337; border-top-color: #f5a337; background: #19140c; box-shadow: 0 0 12px rgba(245,163,55,0.3); }
.hand-card.syn-card.syn-neo_yakuza { border-color: #c44dff; border-top-color: #c44dff; background: #150e1d; box-shadow: 0 0 12px rgba(196,77,255,0.35); }
.hand-card.syn-card.syn-techno_nomads.syn-epic { border-color: #39c3ff; border-top-color: #39c3ff; box-shadow: 0 0 18px rgba(57,195,255,0.55); }
.hand-card.syn-card.syn-street_prolets.syn-epic { border-color: #ffc46b; border-top-color: #ffc46b; box-shadow: 0 0 18px rgba(255,196,107,0.5); }
.hand-card.syn-card.syn-neo_yakuza.syn-epic { border-color: #e39bff; border-top-color: #e39bff; box-shadow: 0 0 18px rgba(227,155,255,0.55); }
.hand-card.syn-card.syn-techno_nomads .hand-chip-head, .hand-card.syn-card.syn-techno_nomads .hc-name { color: #8fd9ff; }
.hand-card.syn-card.syn-street_prolets .hand-chip-head, .hand-card.syn-card.syn-street_prolets .hc-name { color: #ffd08a; }
.hand-card.syn-card.syn-neo_yakuza .hand-chip-head, .hand-card.syn-card.syn-neo_yakuza .hc-name { color: #e3b3ff; }

/* Epic: a slow light sweep across the face. */
.hand-card.syn-epic { overflow: hidden; }
.hand-card.syn-epic::after {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(105deg, rgba(255,255,255,0) 35%, rgba(255,255,255,0.16) 50%, rgba(255,255,255,0) 65%);
  background-size: 220% 100%; animation: syn-sheen 3.2s ease-in-out infinite;
}
@keyframes syn-sheen { 0% { background-position: -160% 0; } 60%, 100% { background-position: 260% 0; } }

/* The emblem in a face's corner. */
.syn-emblem { position: absolute; right: 5px; bottom: 5px; line-height: 0; pointer-events: none; z-index: 1; }
.syn-emblem-svg { display: block; }

/* On the board: the chip keeps its look, with a syndicate edge and the emblem. */
.board-chip.syn-card.syn-techno_nomads .ssd-front { box-shadow: inset 0 0 0 1px #0094d8, 0 0 10px rgba(0,148,216,0.35); }
.board-chip.syn-card.syn-street_prolets .ssd-front { box-shadow: inset 0 0 0 1px #f5a337, 0 0 10px rgba(245,163,55,0.3); }
.board-chip.syn-card.syn-neo_yakuza .ssd-front { box-shadow: inset 0 0 0 1px #c44dff, 0 0 10px rgba(196,77,255,0.35); }

/* Card backs: the opponent's hidden hand. */
.syn-backs { display: inline-flex; gap: 3px; vertical-align: middle; margin-left: 6px; }
.syn-back {
  width: 14px; height: 20px; box-sizing: border-box; border-radius: 2px;
  border: 1px solid #3a4052; background: #10131b;
  display: inline-flex; align-items: center; justify-content: center;
}
.syn-back .syn-emblem-svg { width: 10px; height: 10px; }
.syn-back-techno_nomads { border-color: #0094d8; background: #06121c; box-shadow: 0 0 6px rgba(0,148,216,0.4); }
.syn-back-street_prolets { border-color: #f5a337; background: #150e04; box-shadow: 0 0 6px rgba(245,163,55,0.35); }
.syn-back-neo_yakuza { border-color: #c44dff; background: #10061a; box-shadow: 0 0 6px rgba(196,77,255,0.4); }

@media (prefers-reduced-motion: reduce) {
  .hand-card.syn-epic::after { animation: none; }
}

/* The cost gem takes the syndicate colour too (hand: .hc-cost; Safehouse: .hand-threads). */
.hand-card.syn-card.syn-techno_nomads .hand-threads, .hand-card.syn-card.syn-techno_nomads .hc-cost { background: #0094d8; color: #03111a; }
.hand-card.syn-card.syn-street_prolets .hand-threads, .hand-card.syn-card.syn-street_prolets .hc-cost { background: #f5a337; color: #1a1004; }
.hand-card.syn-card.syn-neo_yakuza .hand-threads, .hand-card.syn-card.syn-neo_yakuza .hc-cost { background: #c44dff; color: #14061c; }
.hand-card.syn-card.syn-techno_nomads.syn-epic .hand-threads, .hand-card.syn-card.syn-techno_nomads.syn-epic .hc-cost { background: #39c3ff; }
.hand-card.syn-card.syn-street_prolets.syn-epic .hand-threads, .hand-card.syn-card.syn-street_prolets.syn-epic .hc-cost { background: #ffc46b; }
.hand-card.syn-card.syn-neo_yakuza.syn-epic .hand-threads, .hand-card.syn-card.syn-neo_yakuza.syn-epic .hc-cost { background: #e39bff; }

/* Safehouse: its cards use their own frame (a role bar on the left, a clipped corner that
   cuts off any glow), so a syndicate card there gets a full frame in its colour, a tinted
   ground, a thicker left bar and its emblem large as a watermark — readable at a glance. */
#safehouse .hand-card.syn-card { border-width: 1px; border-style: solid; border-left-width: 4px; }
#safehouse .hand-card.syn-card.syn-techno_nomads { border-color: #0094d8; background: linear-gradient(160deg, #0b2a48, #04101c); }
#safehouse .hand-card.syn-card.syn-street_prolets { border-color: #f5a337; background: linear-gradient(160deg, #2e2008, #120c04); }
#safehouse .hand-card.syn-card.syn-neo_yakuza { border-color: #c44dff; background: linear-gradient(160deg, #26103e, #0e0618); }
#safehouse .hand-card.syn-card.syn-techno_nomads.syn-epic { border-color: #39c3ff; }
#safehouse .hand-card.syn-card.syn-street_prolets.syn-epic { border-color: #ffc46b; }
#safehouse .hand-card.syn-card.syn-neo_yakuza.syn-epic { border-color: #e39bff; }
#safehouse .hand-card.syn-card.syn-techno_nomads .hand-chip-head { color: #8fd9ff; }
#safehouse .hand-card.syn-card.syn-street_prolets .hand-chip-head { color: #ffd08a; }
#safehouse .hand-card.syn-card.syn-neo_yakuza .hand-chip-head { color: #e3b3ff; }
#safehouse .hand-card.syn-card.syn-techno_nomads .hand-chip-head .hand-threads { background: #0094d8 !important; color: #03111a !important; }
#safehouse .hand-card.syn-card.syn-street_prolets .hand-chip-head .hand-threads { background: #f5a337 !important; color: #1a1004 !important; }
#safehouse .hand-card.syn-card.syn-neo_yakuza .hand-chip-head .hand-threads { background: #c44dff !important; color: #14061c !important; }
#safehouse .hand-card.syn-card .syn-emblem { right: 10px; bottom: 30px; opacity: 0.3; z-index: 0; }
#safehouse .hand-card.syn-card .syn-emblem-svg { width: 58px; height: 58px; }
#safehouse .hand-card.syn-card.syn-epic .syn-emblem { opacity: 0.42; }
#safehouse .hand-card.syn-card > *:not(.syn-emblem) { position: relative; z-index: 1; }
