:root{
  --pb-bg-1:#0b1a2a;
  --pb-bg-2:#071321;
  --pb-bg-3:#040a12;
  --pb-text:#e6eef8;
  --pb-muted:#9fb3c8;
  --pb-surface:#0a1524;
  --pb-surface-2:#0e1e33;
  --pb-border:rgba(255,255,255,0.14);

  --pb-accent:#0065BD;        /* Saltire blue */
  --pb-accent-2:#0a4e8a;      /* deeper hover */
  --pb-accent-soft:rgba(0,101,189,0.18);
  --pb-focus:rgba(0,101,189,0.30);

  --pb-accent-thistle:#7a3e9d;
  --pb-focus-thistle:rgba(122,62,157,0.28);
}

/* Theme hooks (keeps Core stable) */
body{
  background:
    radial-gradient(circle at 12% 10%, rgba(0,101,189,0.28), transparent 42%),
    radial-gradient(circle at 88% 18%, rgba(122,62,157,0.22), transparent 46%),
    radial-gradient(circle at top, var(--pb-bg-1) 0, var(--pb-bg-2) 48%, var(--pb-bg-3) 100%);
  color: var(--pb-text);
}
.subtitle,.muted{ color: var(--pb-muted); }

/* Accent-y bits (override if Core has hardcoded colors) */
.btn-primary, .primary-btn, #random-all-btn, .tab-btn.active{
  border-color: var(--pb-accent);
}
.btn-primary, .primary-btn, #random-all-btn{
  background: linear-gradient(180deg, rgba(0,101,189,0.95), rgba(10,78,138,0.95));
}
.btn-primary:hover, .primary-btn:hover, #random-all-btn:hover{
  filter: brightness(1.08);
}
.tag-chip.selected, .tag.selected{
  border-color: var(--pb-accent);
  box-shadow: 0 0 0 2px var(--pb-focus);
}

/* Subtle thistle accent for headers */
.holo-suffix{
  color: var(--pb-accent-thistle);
}
