/* AIFC Gallery tracker — hologram style, reuses pdb-* tokens/cards. window.renderGallery(container) */
.gal-root{
  --pdb-t1:#c6f7ff;--pdb-t2:#8fd7e9;--pdb-t3:#6cc6db;--pdb-acc:#7fe9ff;
  --pdb-line:rgba(127,233,255,.35);--pdb-dim:rgba(127,233,255,.12);--pdb-glow:0 0 8px rgba(127,233,255,.55);
  --gal-gold:#ffd97a;--gal-grn:#57ffb0;
  color:var(--pdb-t2);font-family:var(--body,system-ui,sans-serif);font-size:14px;line-height:1.35;
  background:transparent;color-scheme:dark;min-width:0;max-width:100%;-webkit-tap-highlight-color:transparent}
.gal-root *,.gal-root *::before,.gal-root *::after{box-sizing:border-box}
.gal-root [hidden]{display:none!important}

/* header */
.gal-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding:0 2px 2px}
.gal-title{font-family:var(--display,inherit);font-size:15px;letter-spacing:.14em;text-transform:uppercase;color:var(--pdb-t1)}
.gal-title b{color:var(--gal-gold)}
.gal-upd{font-size:10.5px;color:var(--pdb-t3);letter-spacing:.04em}

/* account mini-cards */
.gal-accs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:8px 0 6px}
.gal-acc{text-align:left;background:rgba(6,22,32,.6);border:1px solid var(--pdb-dim);border-radius:12px;padding:9px 11px;
  cursor:pointer;color:inherit;font:inherit;transition:border-color .15s,box-shadow .15s;min-width:0}
.gal-acc:hover{border-color:var(--pdb-line)}
.gal-acc.on{border-color:var(--pdb-acc);box-shadow:inset 0 0 12px rgba(127,233,255,.1),0 0 10px rgba(127,233,255,.12)}
.gal-acc .an{display:flex;align-items:center;gap:6px;font-family:var(--display,inherit);font-size:11.5px;letter-spacing:.06em;color:var(--pdb-t1)}
.gal-acc .dot{width:6px;height:6px;border-radius:50%;background:var(--gal-grn);box-shadow:0 0 6px var(--gal-grn);flex:none}
.gal-acc .dot.play{background:var(--pdb-acc);box-shadow:0 0 6px var(--pdb-acc)}
.gal-acc .av{font-family:var(--display,inherit);font-size:20px;font-weight:700;color:var(--gal-gold);margin-top:2px;line-height:1}
.gal-acc .av i{font-style:normal;font-size:11px;color:var(--pdb-t3);font-weight:400}
.gal-acc .as{font-size:10px;color:var(--pdb-t3);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gal-acc .abar{height:3px;background:rgba(0,0,0,.4);border-radius:3px;margin-top:6px;overflow:hidden}
.gal-acc .abar i{display:block;height:100%;background:linear-gradient(90deg,var(--gal-grn),var(--pdb-acc));transition:width .6s ease}

/* set (club) tiles */
.gal-sets{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.gal-set{display:flex;align-items:center;gap:10px;text-align:left;background:rgba(6,22,32,.5);border:1px solid var(--pdb-dim);
  border-radius:12px;padding:9px 11px;cursor:pointer;color:inherit;font:inherit;transition:border-color .15s,background .15s;min-width:0}
.gal-set:hover{border-color:var(--pdb-line);background:rgba(127,233,255,.05)}
.gal-set.done{border-color:rgba(87,255,176,.5)}
.gal-set.prog{border-color:rgba(255,217,122,.45)}
.gal-crest{width:34px;height:34px;flex:none;object-fit:contain;filter:drop-shadow(0 2px 5px rgba(0,0,0,.5))}
.gal-crest.gl{display:grid;place-items:center;color:var(--gal-gold);opacity:.6}
.gal-sc{min-width:0;flex:1 1 auto}
.gal-sn{font-size:12.5px;color:var(--pdb-t1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gal-sm{display:flex;align-items:center;gap:7px;font-size:10.5px;color:var(--pdb-t3);margin-top:3px}
.gal-sm .cost{color:var(--gal-gold);opacity:.85}
.gal-bar{height:3px;background:rgba(0,0,0,.4);border-radius:3px;margin-top:5px;overflow:hidden}
.gal-bar i{display:block;height:100%;border-radius:3px}
.gal-bar i.p{background:var(--gal-gold)}.gal-bar i.d{background:var(--gal-grn)}
.gal-ck{color:var(--gal-grn);font-size:13px;flex:none}

/* category group header: reuse pdb-group/pdb-gh; add league logos */
.gal-logos{display:flex;gap:6px;align-items:center;margin-left:auto;flex:none}
.gal-logos img{height:20px;width:auto;filter:drop-shadow(0 1px 3px rgba(0,0,0,.6))}

/* set detail */
.gal-dhead{display:flex;align-items:center;gap:12px;padding:6px 2px 12px;border-bottom:1px solid var(--pdb-dim);margin-bottom:12px}
.gal-dhead img.gal-dcrest{width:48px;height:48px;object-fit:contain;flex:none;filter:drop-shadow(0 2px 6px rgba(0,0,0,.5))}
.gal-dt{min-width:0}
.gal-dt h3{margin:0;font-family:var(--display,inherit);font-size:17px;letter-spacing:.06em;color:var(--pdb-t1);text-shadow:var(--pdb-glow)}
.gal-dt .dm{font-size:11.5px;color:var(--pdb-t3);margin-top:3px}
.gal-dt .dm b{color:var(--gal-gold);font-weight:600}
.gal-note{font-size:11px;color:var(--pdb-t3);padding:0 2px 10px;line-height:1.5}
.gal-note b{color:var(--gal-grn)}
.gal-pts{position:absolute;top:2px;left:2px;font-family:var(--display,inherit);font-size:10px;color:var(--gal-gold);
  background:rgba(4,18,27,.8);padding:1px 5px;border-radius:7px;letter-spacing:.04em}
.gal-buy{position:absolute;top:2px;right:2px;font-size:9px;font-weight:700;color:#04121f;background:var(--gal-grn);
  padding:1px 5px;border-radius:7px;letter-spacing:.04em}
.gal-cardwrap{position:relative}
